From 579e2c98a8302cc7c39bc6f952eafc853588c293 Mon Sep 17 00:00:00 2001 From: jfetterolf Date: Thu, 16 Jan 2025 16:52:27 -0500 Subject: [PATCH 1/4] fix all eslint console warnings --- src/components/Common/CommonStandardButton.js | 45 ++++++++++--------- .../DisplayTable/MeasureTableRow.js | 1 + src/components/FilterMenu/FilterDrawerItem.js | 28 ++++++------ src/components/Summary/TrendDisplay.js | 2 +- 4 files changed, 42 insertions(+), 34 deletions(-) diff --git a/src/components/Common/CommonStandardButton.js b/src/components/Common/CommonStandardButton.js index ac01fb82..4f943732 100644 --- a/src/components/Common/CommonStandardButton.js +++ b/src/components/Common/CommonStandardButton.js @@ -9,16 +9,17 @@ import PropTypes from 'prop-types'; // variant - Options of contained, outlined, or text // onClick - onClick property for button -export const StandardButton = ({ +export function StandardButton({ children, leftIcon, rightIcon, - props, variant, onClick, -}) => { +}) { // Instantiate variables for colors set in "variant" switch statement - let backgroundColor, hoverColor, textColor; + let backgroundColor; + let hoverColor; + let textColor; switch (variant) { case 'contained': [backgroundColor, hoverColor] = ['#005EA2', '#0075CA']; @@ -39,11 +40,11 @@ export const StandardButton = ({ return ( ); -}; +} StandardButton.propTypes = { children: PropTypes.node, - leftIcon: PropTypes.object, - rightIcon: PropTypes.object, - props: PropTypes.object, + leftIcon: PropTypes.element, + rightIcon: PropTypes.element, variant: PropTypes.string, onClick: PropTypes.func, -} \ No newline at end of file +}; + +StandardButton.defaultProps = { + children: null, + leftIcon: null, + rightIcon: null, + variant: null, + onClick: () => {}, +}; diff --git a/src/components/DisplayTable/MeasureTableRow.js b/src/components/DisplayTable/MeasureTableRow.js index 666908b3..c953e294 100644 --- a/src/components/DisplayTable/MeasureTableRow.js +++ b/src/components/DisplayTable/MeasureTableRow.js @@ -8,6 +8,7 @@ import Tooltip from '@mui/material/Tooltip'; import { useTheme } from '@mui/material/styles'; import CheckBoxCell from './CheckBoxCell'; import Alert from '../Utilities/Alert' + function MeasureTableRow({ rowDataItem, headerInfo, useCheckBox, handleCheckBoxEvent, rowSelected, color, measureInfo, }) { diff --git a/src/components/FilterMenu/FilterDrawerItem.js b/src/components/FilterMenu/FilterDrawerItem.js index 437a67b6..ce56b60d 100644 --- a/src/components/FilterMenu/FilterDrawerItem.js +++ b/src/components/FilterMenu/FilterDrawerItem.js @@ -13,34 +13,36 @@ import PropTypes from 'prop-types'; function FilterDrawerItem({ filterItem, currentFilter, filterAction }) { const [defaultCheck] = useState(Array.from(currentFilter)); return ( - - - - - {filterItem.name}:{' '} + + + + + {filterItem.name} + : + {' '} - + - + - + {filterItem.options.map((option, index) => ( - } + )} label={option} /> ))} @@ -54,12 +56,12 @@ FilterDrawerItem.propTypes = { name: PropTypes.string, tip: PropTypes.string, values: PropTypes.arrayOf( - PropTypes.oneOfType([PropTypes.string, PropTypes.number]) + PropTypes.oneOfType([PropTypes.string, PropTypes.number]), ), options: PropTypes.arrayOf(PropTypes.string), }), currentFilter: PropTypes.arrayOf( - PropTypes.oneOfType([PropTypes.string, PropTypes.number]) + PropTypes.oneOfType([PropTypes.string, PropTypes.number]), ), filterAction: PropTypes.func, }; diff --git a/src/components/Summary/TrendDisplay.js b/src/components/Summary/TrendDisplay.js index 0494867a..83a14ab8 100644 --- a/src/components/Summary/TrendDisplay.js +++ b/src/components/Summary/TrendDisplay.js @@ -23,7 +23,7 @@ function TrendDisplay({ trend, percentWidth }) { return ( - + {`${trend.measure} Score % Change`} From d0328f12320e3a63368bef4818c5fc46ff20963f Mon Sep 17 00:00:00 2001 From: jfetterolf Date: Fri, 17 Jan 2025 11:33:10 -0500 Subject: [PATCH 2/4] fix filter route --- src/components/Common/Controller.js | 2 +- src/components/FilterMenu/FilterDrawer.js | 11 ----------- 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/src/components/Common/Controller.js b/src/components/Common/Controller.js index 344ff174..de0f1f94 100644 --- a/src/components/Common/Controller.js +++ b/src/components/Common/Controller.js @@ -44,7 +44,7 @@ export async function filterSearch(searchMeasure, searchArray, isComposite) { filters: searchArray, isComposite, } - const filterSearchURL = new URL(`${env.REACT_APP_HEDIS_MEASURE_API_URL}/filter`) + const filterSearchURL = new URL(`${env.REACT_APP_HEDIS_MEASURE_API_URL}filter`) const filterResults = await axios.post(filterSearchURL, searchObject).then((res) => res.data) if (filterResults.status === 'Success') { const { members, dailyMeasureResults } = filterResults diff --git a/src/components/FilterMenu/FilterDrawer.js b/src/components/FilterMenu/FilterDrawer.js index cc675dc3..ca04bd6c 100644 --- a/src/components/FilterMenu/FilterDrawer.js +++ b/src/components/FilterMenu/FilterDrawer.js @@ -235,17 +235,6 @@ function FilterDrawer({ // className="filter-drawer__reset-button" variant='outlined' onClick={handleResetFilter} - rightIcon={ - - } > Reset Filters From 72b2c5fcb7e02dea08db672f23f0fe7e605811a8 Mon Sep 17 00:00:00 2001 From: jfetterolf Date: Fri, 17 Jan 2025 11:51:39 -0500 Subject: [PATCH 3/4] linting etc --- src/components/ChartContainer/ChartHeader.js | 10 +- src/components/Common/Navbar.js | 8 +- src/components/FilterMenu/FilterDrawer.js | 70 ++--- src/components/Reports/ReportBuilder.js | 4 +- src/components/Summary/RatingTrends.js | 44 ++-- src/index.js | 2 +- src/layouts/Dashboard.js | 139 +++++----- src/layouts/Reports.js | 2 +- .../FilterMenu/FilterDrawer.test.js | 7 +- .../MemberReport/MemberReportDisplay.test.js | 28 +- src/test/data/datastore.js | 244 ++++++++++++------ src/views/auth/Login.js | 4 +- 12 files changed, 315 insertions(+), 247 deletions(-) diff --git a/src/components/ChartContainer/ChartHeader.js b/src/components/ChartContainer/ChartHeader.js index 17e113d5..721c8037 100644 --- a/src/components/ChartContainer/ChartHeader.js +++ b/src/components/ChartContainer/ChartHeader.js @@ -12,11 +12,7 @@ function ChartHeader({ }) { const allMeasureText = ( - - All Measures - + All Measures ); const allMeasureTextWithLinks = ( @@ -34,8 +30,8 @@ function ChartHeader({ {labelGenerator( currentResults.find( - (result) => result.measure === activeMeasure.measure - ) + (result) => result.measure === activeMeasure.measure, + ), )} )} diff --git a/src/components/Common/Navbar.js b/src/components/Common/Navbar.js index 1bed0548..28b6cdc1 100644 --- a/src/components/Common/Navbar.js +++ b/src/components/Common/Navbar.js @@ -1,13 +1,13 @@ import { Link } from 'react-router-dom'; -import { StandardButton } from './CommonStandardButton'; import { styled } from '@mui/material/styles'; import AccountCircleOutlinedIcon from '@mui/icons-material/AccountCircleOutlined'; import AppBar from '@mui/material/AppBar'; import Box from '@mui/material/Box'; import Menu from '@mui/material/Menu'; import MenuItem from '@mui/material/MenuItem'; -import React, { useState } from 'react'; +import { useState } from 'react'; import Toolbar from '@mui/material/Toolbar'; +import { StandardButton } from './CommonStandardButton'; export default function Navbar() { // Remove the auth token @@ -73,12 +73,12 @@ export default function Navbar() { {/* Menu (pop-over) */} { + onClick={() => { handleLogout(); }} > - Logout + Logout diff --git a/src/components/FilterMenu/FilterDrawer.js b/src/components/FilterMenu/FilterDrawer.js index ca04bd6c..ce7213e8 100644 --- a/src/components/FilterMenu/FilterDrawer.js +++ b/src/components/FilterMenu/FilterDrawer.js @@ -1,3 +1,11 @@ +import { Box, Drawer, Grid, Slider, Typography } from '@mui/material'; +import { useState } from 'react'; +import CloseIcon from '@mui/icons-material/Close'; +import HelpIcon from '@mui/icons-material/Help'; +import ToolTip from '@mui/material/Tooltip'; +import { StandardButton } from '../Common/CommonStandardButton'; +import FilterDrawerItem from './FilterDrawerItem'; +import filterDrawerItemData from './FilterDrawerItemData'; import { additionalFilterOptionsProps, currentFiltersProps, @@ -12,15 +20,6 @@ import { setTableFilterProps, toggleFilterDrawerProps, } from '../ChartContainer/D3Props'; -import { Box, Drawer, Grid, Slider, Typography } from '@mui/material'; -import { StandardButton } from 'components/Common/CommonStandardButton'; -import { useState } from 'react'; -import CancelIcon from '@mui/icons-material/Cancel'; -import CloseIcon from '@mui/icons-material/Close'; -import FilterDrawerItem from './FilterDrawerItem'; -import filterDrawerItemData from './FilterDrawerItemData'; -import HelpIcon from '@mui/icons-material/Help'; -import ToolTip from '@mui/material/Tooltip'; const sliderTip = 'Selects the range of compliance.'; @@ -39,25 +38,26 @@ function FilterDrawer({ toggleFilterDrawer, }) { const [percentSliderValue, setPercentSliderValue] = useState( - Array.from(currentFilters.percentRange) + Array.from(currentFilters.percentRange), ); const [starChoices, setStarChoices] = useState( - Array.from(currentFilters.stars) + Array.from(currentFilters.stars), ); const [domainOfCareChoices, setDomainOfCareChoices] = useState( - Array.from(currentFilters.domainsOfCare) + Array.from(currentFilters.domainsOfCare), ); const [payorChoices, setPayorChoices] = useState( - Array.from(currentFilters.payors) + Array.from(currentFilters.payors), ); const [healthcareProviderChoices, setHealthcareProviderChoices] = useState( - Array.from(currentFilters.healthcareProviders) + Array.from(currentFilters.healthcareProviders), ); const [healthcareCoverageChoices, setHealthcareCoverageChoices] = useState( - Array.from(currentFilters.healthcareCoverages) + Array.from(currentFilters.healthcareCoverages), ); const [healthcarePractitionersChoices, setHealthcarePractitionersChoices] = useState(Array.from(currentFilters.healthcarePractitioners)); + const toggleDrawer = (open) => (event) => { if ( event.type === 'keydown' && @@ -85,46 +85,46 @@ function FilterDrawer({ setPayorChoices(payorChoices.concat(event.target.value)); } else { setPayorChoices( - payorChoices.filter((payer) => payer !== event.target.value) + payorChoices.filter((payer) => payer !== event.target.value), ); } }; const handleHealthcareProviderChange = (event) => { if (event.target.checked) { setHealthcareProviderChoices( - healthcareProviderChoices.concat(event.target.value) + healthcareProviderChoices.concat(event.target.value), ); } else { setHealthcareProviderChoices( healthcareProviderChoices.filter( - (provider) => provider !== event.target.value - ) + (provider) => provider !== event.target.value, + ), ); } }; const handleHealthcareCoverageChange = (event) => { if (event.target.checked) { setHealthcareCoverageChoices( - healthcareCoverageChoices.concat(event.target.value) + healthcareCoverageChoices.concat(event.target.value), ); } else { setHealthcareCoverageChoices( healthcareCoverageChoices.filter( - (coverage) => coverage !== event.target.value - ) + (coverage) => coverage !== event.target.value, + ), ); } }; const handlePractitionerChange = (event) => { if (event.target.checked) { setHealthcarePractitionersChoices( - healthcarePractitionersChoices.concat(event.target.value) + healthcarePractitionersChoices.concat(event.target.value), ); } else { setHealthcarePractitionersChoices( healthcarePractitionersChoices.filter( - (practitioner) => practitioner !== event.target.value - ) + (practitioner) => practitioner !== event.target.value, + ), ); } }; @@ -133,7 +133,7 @@ function FilterDrawer({ setStarChoices(starChoices.concat(parseInt(event.target.value, 10))); } else { setStarChoices( - starChoices.filter((star) => star !== parseInt(event.target.value, 10)) + starChoices.filter((star) => star !== parseInt(event.target.value, 10)), ); } }; @@ -142,7 +142,7 @@ function FilterDrawer({ setDomainOfCareChoices(domainOfCareChoices.concat(event.target.value)); } else { setDomainOfCareChoices( - domainOfCareChoices.filter((doc) => doc !== event.target.value) + domainOfCareChoices.filter((doc) => doc !== event.target.value), ); } }; @@ -157,13 +157,13 @@ function FilterDrawer({ setDomainOfCareChoices(Array.from(currentFilters.domainsOfCare)); setPayorChoices(Array.from(currentFilters.payors)); setHealthcareProviderChoices( - Array.from(currentFilters.healthcareProviders) + Array.from(currentFilters.healthcareProviders), ); setHealthcareCoverageChoices( - Array.from(currentFilters.healthcareCoverages) + Array.from(currentFilters.healthcareCoverages), ); setHealthcarePractitionersChoices( - Array.from(currentFilters.healthcarePractitioners) + Array.from(currentFilters.healthcarePractitioners), ); toggleFilterDrawer(false); setFilterActivated(false); @@ -187,7 +187,7 @@ function FilterDrawer({ }; filterOptions.sum = filterDrawerItemData.sumCalculator( filterOptions, - additionalFilterOptions + additionalFilterOptions, ); handleFilterChange(filterOptions); toggleFilterDrawer(false); @@ -281,28 +281,28 @@ function FilterDrawer({ /> trend.measure === activeMeasure.measure + (trend) => trend.measure === activeMeasure.measure, ); const mainTrend = mainTrendCreator(activeMeasure, info, measureTrend); const sortedTrends = sortedTrendsCreator(activeMeasure, trends, measureTrend); if (sortedTrends.length > 1) { let { measure } = sortedTrends[0]; - biggestGain.measure = - info[measure] !== undefined ? info[measure].displayLabel : measure; + biggestGain.measure = info[measure] !== undefined ? info[measure].displayLabel : measure; biggestGain.percentChange = sortedTrends[0].percentChange; measure = sortedTrends[sortedTrends.length - 1].measure; biggestLoss.measure = info[measure]?.displayLabel; - biggestLoss.percentChange = - sortedTrends[sortedTrends.length - 1].percentChange; + biggestLoss.percentChange = sortedTrends[sortedTrends.length - 1].percentChange; return renderUI(activeMeasure, mainTrend, { displayAll: true, @@ -59,10 +55,10 @@ function RatingTrends({ activeMeasure, trends, info }) { } const renderUI = (activeMeasure, mainTrend, renderOptions) => ( - - + + Ratings & Trends @@ -70,37 +66,37 @@ const renderUI = (activeMeasure, mainTrend, renderOptions) => ( - - + + - - + + Star Rating - + {showStars(activeMeasure) ? ( ) : ( - + N/A )} - + {activeMeasure.shortLabel && `(${activeMeasure.shortLabel})`} @@ -133,7 +129,7 @@ RatingTrends.propTypes = { trends: PropTypes.arrayOf( PropTypes.shape({ measure: PropTypes.string, - }) + }), ), }; diff --git a/src/index.js b/src/index.js index 539f376c..4523dd30 100644 --- a/src/index.js +++ b/src/index.js @@ -1,5 +1,5 @@ -import App from './App'; import ReactDOM from 'react-dom'; +import App from './App'; import './assets/styles/App.scss'; import './index.css'; import '@fortawesome/fontawesome-free/css/all.min.css'; diff --git a/src/layouts/Dashboard.js b/src/layouts/Dashboard.js index d5a6788d..bfe7ebad 100644 --- a/src/layouts/Dashboard.js +++ b/src/layouts/Dashboard.js @@ -1,3 +1,9 @@ +import { Snackbar } from '@mui/material'; +import { useContext, useEffect, useState } from 'react'; +import { useParams, useHistory } from 'react-router-dom'; +import Box from '@mui/material/Box'; +import Grid from '@mui/material/Grid'; +import Skeleton from '@mui/material/Skeleton'; import { calcMemberResults, expandSubMeasureResults, @@ -14,20 +20,14 @@ import { filterSearch, infoDataFetch, } from '../components/Common/Controller'; -import { Snackbar } from '@mui/material'; -import { useContext, useEffect, useState } from 'react'; -import { useParams, useHistory } from 'react-router-dom'; import Alert from '../components/Utilities/Alert'; import Banner from '../components/Common/Banner'; -import Box from '@mui/material/Box'; import ColorMapping from '../components/Utilities/ColorMapping'; import D3Container from '../components/ChartContainer'; import DisplayTableContainer from '../components/DisplayTable/DisplayTableContainer'; -import Grid from '@mui/material/Grid'; import MeasureTable from '../components/Utilities/MeasureTable'; import MemberTable from '../components/Utilities/MemberTable'; import RatingTrends from '../components/Summary/RatingTrends'; -import Skeleton from '@mui/material/Skeleton'; import styles from './Dashboard.module.css'; const chartColorArray = [ @@ -60,7 +60,7 @@ export default function Dashboard() { const [activeMeasure, setActiveMeasure] = useState(defaultActiveMeasure); const history = useHistory(); const [displayData, setDisplayData] = useState( - datastore.results.map((result) => ({ ...result })) + datastore.results.map((result) => ({ ...result })), ); const [isComposite, setComposite] = useState(true); const [currentResults, setCurrentResults] = useState([]); @@ -69,7 +69,7 @@ export default function Dashboard() { const [currentFilters, setCurrentFilters] = useState([]); const [additionalFilterOptions, setAdditionalFilterOptions] = useState([]); const [currentTimeline, setCurrentTimeline] = useState( - datastore.defaultTimelineState + datastore.defaultTimelineState, ); const [graphWidth, setGraphWidth] = useState(window.innerWidth); const [filterDisabled, setFilterDisabled] = useState(true); @@ -96,7 +96,7 @@ export default function Dashboard() { isComposite, datastore, activeMeasure, - baseColorMap + baseColorMap, ) { // Initialize filter information setFilterInfo(initializeFilterInfo()); @@ -144,15 +144,14 @@ export default function Dashboard() { setAdditionalFilterOptions(datastore.filterOptions); // Determines if the active measure is composite or not - const isCompositeMeasure = - activeMeasure.measure === 'composite' || activeMeasure.measure === ''; + const isCompositeMeasure = activeMeasure.measure === 'composite' || activeMeasure.measure === ''; - //Reset state for isCompositeMeasure, datastore, activeMeasure, & baseColorMap + // Reset state for isCompositeMeasure, datastore, activeMeasure, & baseColorMap resetStatesForMeasure( isCompositeMeasure, datastore, activeMeasure, - baseColorMap + baseColorMap, ); // Changes filterActivated to false setFilterActivated(false); @@ -162,13 +161,13 @@ export default function Dashboard() { setIsLoading(false); } else if (router === 'ALL MEASURES') { const otherMeasureFinder = filterInfo.results.filter( - (res) => !res.measure.includes(measure) + (res) => !res.measure.includes(measure), ); if (otherMeasureFinder.length > 0) { if (filterInfo.members.length !== memberResults.length) { setCurrentResults(filterInfo.currentResults); setSelectedMeasures( - filterInfo.currentResults.map((result) => result.measure) + filterInfo.currentResults.map((result) => result.measure), ); setDisplayData(filterInfo.results.map((result) => ({ ...result }))); } @@ -190,7 +189,7 @@ export default function Dashboard() { handleFilteredDataUpdate( currentFilters, filterInfo.timeline, - 'GO BACK' + 'GO BACK', ); history.push('/'); } @@ -203,8 +202,8 @@ export default function Dashboard() { const currentMeasure = measure || 'composite'; setActiveMeasure( datastore.currentResults.find( - (result) => result.measure === currentMeasure - ) || defaultActiveMeasure + (result) => result.measure === currentMeasure, + ) || defaultActiveMeasure, ); setIsLoading(datastore.datastoreLoading); } else { @@ -234,16 +233,15 @@ export default function Dashboard() { setCurrentFilters(datastore.defaultFilterState); setAdditionalFilterOptions(datastore.filterOptions); -// Determines if the active measure is composite or not - const isCompositeMeasure = - activeMeasure.measure === 'composite' || activeMeasure.measure === ''; + // Determines if the active measure is composite or not + const isCompositeMeasure = activeMeasure.measure === 'composite' || activeMeasure.measure === ''; - //Reset state for isCompositeMeasure, datastore, activeMeasure, & baseColorMap + // Reset state for isCompositeMeasure, datastore, activeMeasure, & baseColorMap resetStatesForMeasure( isCompositeMeasure, datastore, activeMeasure, - baseColorMap + baseColorMap, ); } }, [ @@ -265,13 +263,12 @@ export default function Dashboard() { setCurrentTimeline(filterInfo.timeline); setCurrentFilters(filterInfo.filters); setAdditionalFilterOptions(datastore.filterOptions); - const ActiveMeasureTest = - activeMeasure.measure === 'composite' || activeMeasure.measure === ''; + const ActiveMeasureTest = activeMeasure.measure === 'composite' || activeMeasure.measure === ''; if (ActiveMeasureTest) { if (filterInfo.members.length !== memberResults.length) { setCurrentResults(filterInfo.currentResults); setSelectedMeasures( - filterInfo.currentResults.map((result) => result.measure) + filterInfo.currentResults.map((result) => result.measure), ); setDisplayData(filterInfo.results.map((result) => ({ ...result }))); } @@ -285,21 +282,21 @@ export default function Dashboard() { setComposite(false); const subMeasureCurrentResults = getSubMeasureCurrentResults( activeMeasure, - filterInfo.currentResults + filterInfo.currentResults, ); setDisplayData( - expandSubMeasureResults(activeMeasure, filterInfo.results) + expandSubMeasureResults(activeMeasure, filterInfo.results), ); setCurrentResults(subMeasureCurrentResults); setSelectedMeasures( - subMeasureCurrentResults.map((result) => result.measure) + subMeasureCurrentResults.map((result) => result.measure), ); setColorMap( ColorMapping( baseColorMap, datastore.chartColorArray, - subMeasureCurrentResults - ) + subMeasureCurrentResults, + ), ); setFilterDisabled(false); setTableFilter([]); @@ -327,9 +324,7 @@ export default function Dashboard() { // FILTERS EXIST if (filterInfo.members.length > 0) { // 120 IS THE TOTAL AND 15 IS THE EXPECTED AMOUNT - const selectMemberResults = filterInfo.members.filter((result) => - activeMeasure.measure.includes(result.measurementType) - ); + const selectMemberResults = filterInfo.members.filter((result) => activeMeasure.measure.includes(result.measurementType)); setMemberResults(selectMemberResults); } else { @@ -345,8 +340,8 @@ export default function Dashboard() { filterInfo.members.length > 0 ? filterInfo.members : memberResults, activeMeasure.measure, datastore.info, - tableFilter - ) + tableFilter, + ), ); }, [ tableFilter, @@ -360,15 +355,14 @@ export default function Dashboard() { const path = window.location.pathname; if (path.includes('members')) { setHeaderInfo(MemberTable.headerData(selectedMeasures, datastore.info)); - const wantedMembers = - filterInfo.members.length > 0 ? filterInfo.members : memberResults; + const wantedMembers = filterInfo.members.length > 0 ? filterInfo.members : memberResults; setRowEntries( MemberTable.formatData( wantedMembers, activeMeasure.measure, datastore.info, - tableFilter - ) + tableFilter, + ), ); setComposite(false); setTabValue('members'); @@ -406,58 +400,57 @@ export default function Dashboard() { searchResults = await filterSearch(currentMeasureResolver, filters); } cloneDailyMeasureResults = structuredClone( - searchResults.dailyMeasureResults + searchResults.dailyMeasureResults, ); cloneMembers = structuredClone(searchResults.members); if (filters.domainsOfCare.length > 0) { cloneDailyMeasureResults = filterByDOC( cloneDailyMeasureResults, filters, - info + info, ); } if (filters.stars.length > 0) { cloneDailyMeasureResults = filterByStars( cloneDailyMeasureResults, filters, - cloneDailyMeasureResults + cloneDailyMeasureResults, ); } if (filters.percentRange[0] > 0 || filters.percentRange[1] < 100) { cloneDailyMeasureResults = filterByPercentage( cloneDailyMeasureResults, filters, - cloneDailyMeasureResults + cloneDailyMeasureResults, ); } cloneDailyMeasureResults = filterByTimeline( cloneDailyMeasureResults, - timeline + timeline, ); if (cloneDailyMeasureResults.length > 0) { const calcResults = calcMemberResults(cloneDailyMeasureResults, info); - const resultsByState = - isComposite || direction === 'GO BACK' - ? calcResults.results - : expandSubMeasureResults(activeMeasure, calcResults.results); + const resultsByState = isComposite || direction === 'GO BACK' + ? calcResults.results + : expandSubMeasureResults(activeMeasure, calcResults.results); const newFilterInfo = { members: cloneMembers, currentResults: - activeMeasure.measure === 'composite' || - activeMeasure.measure === '' || - direction === 'GO BACK' + activeMeasure.measure === 'composite' + || activeMeasure.measure === '' + || direction === 'GO BACK' ? calcResults.currentResults : getSubMeasureCurrentResults( - activeMeasure, - calcResults.currentResults - ), + activeMeasure, + calcResults.currentResults, + ), results: resultsByState, filters, timeline, }; setCurrentResults(newFilterInfo.currentResults); setSelectedMeasures( - newFilterInfo.currentResults.map((result) => result.measure) + newFilterInfo.currentResults.map((result) => result.measure), ); setDisplayData(newFilterInfo.results.map((result) => ({ ...result }))); setCurrentFilters(newFilterInfo.filters); @@ -478,22 +471,20 @@ export default function Dashboard() { setTableFilter([]); let newSelectedMeasures; if (event.target.checked) { - newSelectedMeasures = - event.target.value === 'all' - ? currentResults.map((result) => result.measure) - : selectedMeasures.concat(event.target.value); + newSelectedMeasures = event.target.value === 'all' + ? currentResults.map((result) => result.measure) + : selectedMeasures.concat(event.target.value); setSelectedMeasures(newSelectedMeasures); } else { - newSelectedMeasures = - event.target.value === 'all' - ? [] - : selectedMeasures.filter((result) => result !== event.target.value); + newSelectedMeasures = event.target.value === 'all' + ? [] + : selectedMeasures.filter((result) => result !== event.target.value); setSelectedMeasures(newSelectedMeasures); } const MeasureSelectorCheck = event.target.name === 'Select Measure'; if (MeasureSelectorCheck) { history.push( - `/${event.target.value === 'composite' ? '' : event.target.value}` + `/${event.target.value === 'composite' ? '' : event.target.value}`, ); } }; @@ -523,8 +514,8 @@ export default function Dashboard() { filterInfo.members.length > 0 ? filterInfo.members : memberResults, activeMeasure.measure, datastore.info, - tableFilter - ) + tableFilter, + ), ); } else { history.push(`/${activeMeasure.measure}`); @@ -537,9 +528,9 @@ export default function Dashboard() { {/* HEDIS Dashboard Banner */}
- + @@ -547,7 +538,7 @@ export default function Dashboard() { {/* Ratings & Trends */} {isLoading ? ( - + ) : ( @@ -595,7 +586,7 @@ export default function Dashboard() { {/* All Measures Graph */} {isLoading || noResultsFound ? ( - + ) : ( {isLoading ? ( - + ) : ( -
+
{ // TO DO: Write test for the slider. https://stackoverflow.com/questions/58856094/testing-a-material-ui-slider-with-testing-library-react describe('FilterDrawer', () => { - test('MUI slider values renders default values and can be adjusted', () => { render( { expect(sliderPoints.length).toBe(2) const startPoint = sliderPoints[0] const endPoint = sliderPoints[1] - + // values of slider points -- aria-valuetext OR aria-valuenow -- to match given filter percentageRange value expect(startPoint.getAttribute('aria-valuenow')).toBe('5') expect(endPoint.getAttribute('aria-valuenow')).toBe('95') - + expect(startPoint.getAttribute('max')).toBe('100') expect(startPoint.getAttribute('min')).toBe('0') @@ -78,7 +77,7 @@ describe('FilterDrawer', () => { // move pointers to new values fireEvent.change(startPoint, { target: { value: 25 } }); fireEvent.change(endPoint, { target: { value: 75 } }); - + expect(startPoint.getAttribute('aria-valuenow')).toBe('25') expect(endPoint.getAttribute('aria-valuenow')).toBe('75') }) diff --git a/src/test/components/MemberReport/MemberReportDisplay.test.js b/src/test/components/MemberReport/MemberReportDisplay.test.js index 4c007c4a..e18f6c4d 100644 --- a/src/test/components/MemberReport/MemberReportDisplay.test.js +++ b/src/test/components/MemberReport/MemberReportDisplay.test.js @@ -1,9 +1,9 @@ +import { render, screen, within, fireEvent } from '@testing-library/react'; +import moment from 'moment'; import { default as datastore } from '../../data/datastore'; import { exportUrl, memberId, memberInfo, rowData } from '../../data/DemoData'; import { getAge } from '../../../components/Utilities/GeneralUtil'; -import { render, screen, within, fireEvent } from '@testing-library/react'; import MemberReportDisplay from '../../../components/MemberReport/MemberReportDisplay'; -import moment from 'moment'; describe('Member view page', () => { beforeEach(async () => { @@ -17,7 +17,7 @@ describe('Member view page', () => { coverageStatus='active' rowData={rowData} description={datastore.info.aab.description} - /> + />, ); // Please keep this for when we move the loading state to the Display // await waitFor(() => container.getByRole('heading', { name: "Reporting - Member's Data" })) @@ -28,15 +28,15 @@ describe('Member view page', () => { expect(screen.getAllByRole('heading').length).toBe(3); expect(screen.getByText("Reporting - Member's Data")).toBeTruthy(); expect( - screen.getByRole('heading', { name: 'General Information' }) + screen.getByRole('heading', { name: 'General Information' }), ).toBeTruthy(); expect( - screen.getByRole('heading', { name: 'Measure Analysis' }) + screen.getByRole('heading', { name: 'Measure Analysis' }), ).toBeTruthy(); expect( screen.getByRole('heading', { name: 'AAB - Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', - }) + }), ).toBeTruthy(); }); @@ -46,7 +46,7 @@ describe('Member view page', () => { expect( screen.getByRole('button', { name: 'AAB - Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', - }) + }), ).toBeTruthy(); }); @@ -86,7 +86,7 @@ describe('Member view page', () => { 'Participation Period:', ]; memberInfoLabels.forEach((label, i) => - expect(within(renderedMemberInfo[i]).getByText(label)).toBeTruthy() + expect(within(renderedMemberInfo[i]).getByText(label)).toBeTruthy(), ); }); @@ -101,9 +101,9 @@ describe('Member view page', () => { memberInfo.gender, 'ACTIVE', `${moment(memberInfo.coverage[0].period.start.value).format( - 'MM/DD/YYYY' + 'MM/DD/YYYY', )} - ${moment(memberInfo.coverage[0].period.end.value).format( - 'MM/DD/YYYY' + 'MM/DD/YYYY', )}`, insurance.id.value, insurance.payor[0].reference.value, @@ -112,13 +112,13 @@ describe('Member view page', () => { insurance.relationship.coding[0].code.value, `${insurance.type?.coding[0].code.value} - ${insurance.type?.coding[0]?.display.value}`, `${moment(memberInfo.coverage[0].period.start.value).format( - 'MM/DD/YYYY' + 'MM/DD/YYYY', )} - ${moment(memberInfo.coverage[0].period.end.value).format( - 'MM/DD/YYYY' + 'MM/DD/YYYY', )}`, ]; memberInfoData.forEach((label, i) => - expect(within(renderedMemberInfo[i]).getByText(label)).toBeTruthy() + expect(within(renderedMemberInfo[i]).getByText(label)).toBeTruthy(), ); }); @@ -153,7 +153,7 @@ describe('Member view page', () => { 'Recommendations', ]; analysisLabels.forEach((label) => - expect(within(memberReportTable).getByText(label)).toBeTruthy() + expect(within(memberReportTable).getByText(label)).toBeTruthy(), ); const analysisData = rowData[0]; diff --git a/src/test/data/datastore.js b/src/test/data/datastore.js index 27049f94..e02c1d0a 100644 --- a/src/test/data/datastore.js +++ b/src/test/data/datastore.js @@ -61114,9 +61114,11 @@ export default { numerator: 458, initialPopulation: 796, exclusions: 141, - label: 'AAB - Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', + label: + 'AAB - Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', shortLabel: 'AAB', - title: 'Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', + title: + 'Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', }, { measure: 'aise', @@ -61226,7 +61228,8 @@ export default { numerator: 353, initialPopulation: 533, exclusions: 279, - label: 'APM-E - Blood Glucose Monitoring for Children and Adolescents on Antipsychotics', + label: + 'APM-E - Blood Glucose Monitoring for Children and Adolescents on Antipsychotics', }, { measure: 'apme-2', @@ -61236,7 +61239,8 @@ export default { numerator: 365, initialPopulation: 533, exclusions: 279, - label: 'APM-E - Cholesterol Monitoring for Children and Adolescents on Antipsychotics', + label: + 'APM-E - Cholesterol Monitoring for Children and Adolescents on Antipsychotics', }, { measure: 'apme-3', @@ -61246,12 +61250,15 @@ export default { numerator: 287, initialPopulation: 533, exclusions: 279, - label: 'APM-E - Blood Glucose and Cholesterol Monitoring for Children and Adolescents on Antipsychotics', + label: + 'APM-E - Blood Glucose and Cholesterol Monitoring for Children and Adolescents on Antipsychotics', }, ], - label: 'APM-E - Metabolic Monitoring for Children and Adolescents on Antipsychotics', + label: + 'APM-E - Metabolic Monitoring for Children and Adolescents on Antipsychotics', shortLabel: 'APM-E', - title: 'Metabolic Monitoring for Children and Adolescents on Antipsychotics', + title: + 'Metabolic Monitoring for Children and Adolescents on Antipsychotics', }, { measure: 'asfe', @@ -61281,7 +61288,8 @@ export default { numerator: 201, initialPopulation: 814, exclusions: 429, - label: 'ASF-E - Counseling or Other Follow-Up on Positive Screen for Unhealthy Alcohol Use', + label: + 'ASF-E - Counseling or Other Follow-Up on Positive Screen for Unhealthy Alcohol Use', }, ], label: 'ASF-E - Unhealthy Alcohol Use Screening and Follow-Up', @@ -61392,7 +61400,8 @@ export default { numerator: 176, initialPopulation: 344, exclusions: 85, - label: 'CIS-E - Childhood Immunization Status: Pneumococcal Conjugate', + label: + 'CIS-E - Childhood Immunization Status: Pneumococcal Conjugate', }, { measure: 'cise-8', @@ -61490,7 +61499,8 @@ export default { numerator: 314, initialPopulation: 663, exclusions: 349, - label: 'COU-1 - 15 or More Days of Opioid Medications in 30 Day Period', + label: + 'COU-1 - 15 or More Days of Opioid Medications in 30 Day Period', }, { measure: 'cou-2', @@ -61500,7 +61510,8 @@ export default { numerator: 199, initialPopulation: 663, exclusions: 349, - label: 'COU-2 - 31 or More Days of Opioid Medications in 62 Day Period', + label: + 'COU-2 - 31 or More Days of Opioid Medications in 62 Day Period', }, ], label: 'COU - Risk of Continued Opioid Use', @@ -61606,7 +61617,8 @@ export default { label: 'DRR-E - Depression Response for Adolescents and Adults', }, ], - label: 'DRR-E - Depression Remission or Response for Adolescents and Adults', + label: + 'DRR-E - Depression Remission or Response for Adolescents and Adults', shortLabel: 'DRR-E', title: 'Depression Remission or Response for Adolescents and Adults', }, @@ -61638,10 +61650,12 @@ export default { numerator: 332, initialPopulation: 1412, exclusions: 720, - label: 'DSF-E - Follow-Up on Positive Depression Screen for Adolescents and Adults', + label: + 'DSF-E - Follow-Up on Positive Depression Screen for Adolescents and Adults', }, ], - label: 'DSF-E - Depression Screening and Follow-Up for Adolescents and Adults', + label: + 'DSF-E - Depression Screening and Follow-Up for Adolescents and Adults', shortLabel: 'DSF-E', title: 'Depression Screening and Follow-Up for Adolescents and Adults', }, @@ -61663,7 +61677,8 @@ export default { numerator: 268, initialPopulation: 425, exclusions: 79, - label: 'FUM-1 - Follow-Up Within 7 Days of Emergancy Department Visit', + label: + 'FUM-1 - Follow-Up Within 7 Days of Emergancy Department Visit', }, { measure: 'fum-2', @@ -61673,10 +61688,12 @@ export default { numerator: 208, initialPopulation: 425, exclusions: 79, - label: 'FUM-2 - Follow-Up Within 30 Days of Emergancy Department Visit', + label: + 'FUM-2 - Follow-Up Within 30 Days of Emergancy Department Visit', }, ], - label: 'FUM - Follow-Up After Emergency Department Visit for Mental Illness', + label: + 'FUM - Follow-Up After Emergency Department Visit for Mental Illness', shortLabel: 'FUM', title: 'Follow-Up After Emergency Department Visit for Mental Illness', }, @@ -61911,7 +61928,8 @@ export default { numerator: 364, initialPopulation: 621, exclusions: 281, - label: 'UOP-3 - Use of Opioids from Multiple Prescribers and Pharmacies', + label: + 'UOP-3 - Use of Opioids from Multiple Prescribers and Pharmacies', }, ], label: 'UOP - Use of Opioids from Multiple Providers', @@ -61927,9 +61945,11 @@ export default { numerator: 123, initialPopulation: 167, exclusions: 41, - label: 'URI - Appropriate Treatment for Children With Upper Respiratory Infection', + label: + 'URI - Appropriate Treatment for Children With Upper Respiratory Infection', shortLabel: 'URI', - title: 'Appropriate Treatment for Children With Upper Respiratory Infection', + title: + 'Appropriate Treatment for Children With Upper Respiratory Infection', }, { measure: 'composite', @@ -62304,9 +62324,11 @@ export default { numerator: 458, initialPopulation: 796, exclusions: 141, - label: 'AAB - Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', + label: + 'AAB - Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', shortLabel: 'AAB', - title: 'Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', + title: + 'Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', }, { measure: 'adde', @@ -62416,7 +62438,8 @@ export default { numerator: 353, initialPopulation: 533, exclusions: 279, - label: 'APM-E - Blood Glucose Monitoring for Children and Adolescents on Antipsychotics', + label: + 'APM-E - Blood Glucose Monitoring for Children and Adolescents on Antipsychotics', }, { measure: 'apme-2', @@ -62426,7 +62449,8 @@ export default { numerator: 365, initialPopulation: 533, exclusions: 279, - label: 'APM-E - Cholesterol Monitoring for Children and Adolescents on Antipsychotics', + label: + 'APM-E - Cholesterol Monitoring for Children and Adolescents on Antipsychotics', }, { measure: 'apme-3', @@ -62436,12 +62460,15 @@ export default { numerator: 287, initialPopulation: 533, exclusions: 279, - label: 'APM-E - Blood Glucose and Cholesterol Monitoring for Children and Adolescents on Antipsychotics', + label: + 'APM-E - Blood Glucose and Cholesterol Monitoring for Children and Adolescents on Antipsychotics', }, ], - label: 'APM-E - Metabolic Monitoring for Children and Adolescents on Antipsychotics', + label: + 'APM-E - Metabolic Monitoring for Children and Adolescents on Antipsychotics', shortLabel: 'APM-E', - title: 'Metabolic Monitoring for Children and Adolescents on Antipsychotics', + title: + 'Metabolic Monitoring for Children and Adolescents on Antipsychotics', }, { measure: 'asfe', @@ -62471,7 +62498,8 @@ export default { numerator: 201, initialPopulation: 814, exclusions: 429, - label: 'ASF-E - Counseling or Other Follow-Up on Positive Screen for Unhealthy Alcohol Use', + label: + 'ASF-E - Counseling or Other Follow-Up on Positive Screen for Unhealthy Alcohol Use', }, ], label: 'ASF-E - Unhealthy Alcohol Use Screening and Follow-Up', @@ -62582,7 +62610,8 @@ export default { numerator: 176, initialPopulation: 344, exclusions: 85, - label: 'CIS-E - Childhood Immunization Status: Pneumococcal Conjugate', + label: + 'CIS-E - Childhood Immunization Status: Pneumococcal Conjugate', }, { measure: 'cise-8', @@ -62680,7 +62709,8 @@ export default { numerator: 314, initialPopulation: 663, exclusions: 349, - label: 'COU-1 - 15 or More Days of Opioid Medications in 30 Day Period', + label: + 'COU-1 - 15 or More Days of Opioid Medications in 30 Day Period', }, { measure: 'cou-2', @@ -62690,7 +62720,8 @@ export default { numerator: 199, initialPopulation: 663, exclusions: 349, - label: 'COU-2 - 31 or More Days of Opioid Medications in 62 Day Period', + label: + 'COU-2 - 31 or More Days of Opioid Medications in 62 Day Period', }, ], label: 'COU - Risk of Continued Opioid Use', @@ -62796,7 +62827,8 @@ export default { label: 'DRR-E - Depression Response for Adolescents and Adults', }, ], - label: 'DRR-E - Depression Remission or Response for Adolescents and Adults', + label: + 'DRR-E - Depression Remission or Response for Adolescents and Adults', shortLabel: 'DRR-E', title: 'Depression Remission or Response for Adolescents and Adults', }, @@ -62828,10 +62860,12 @@ export default { numerator: 332, initialPopulation: 1412, exclusions: 720, - label: 'DSF-E - Follow-Up on Positive Depression Screen for Adolescents and Adults', + label: + 'DSF-E - Follow-Up on Positive Depression Screen for Adolescents and Adults', }, ], - label: 'DSF-E - Depression Screening and Follow-Up for Adolescents and Adults', + label: + 'DSF-E - Depression Screening and Follow-Up for Adolescents and Adults', shortLabel: 'DSF-E', title: 'Depression Screening and Follow-Up for Adolescents and Adults', }, @@ -62853,7 +62887,8 @@ export default { numerator: 268, initialPopulation: 425, exclusions: 79, - label: 'FUM-1 - Follow-Up Within 7 Days of Emergancy Department Visit', + label: + 'FUM-1 - Follow-Up Within 7 Days of Emergancy Department Visit', }, { measure: 'fum-2', @@ -62863,10 +62898,12 @@ export default { numerator: 208, initialPopulation: 425, exclusions: 79, - label: 'FUM-2 - Follow-Up Within 30 Days of Emergancy Department Visit', + label: + 'FUM-2 - Follow-Up Within 30 Days of Emergancy Department Visit', }, ], - label: 'FUM - Follow-Up After Emergency Department Visit for Mental Illness', + label: + 'FUM - Follow-Up After Emergency Department Visit for Mental Illness', shortLabel: 'FUM', title: 'Follow-Up After Emergency Department Visit for Mental Illness', }, @@ -63101,7 +63138,8 @@ export default { numerator: 364, initialPopulation: 621, exclusions: 281, - label: 'UOP-3 - Use of Opioids from Multiple Prescribers and Pharmacies', + label: + 'UOP-3 - Use of Opioids from Multiple Prescribers and Pharmacies', }, ], label: 'UOP - Use of Opioids from Multiple Providers', @@ -63117,9 +63155,11 @@ export default { numerator: 123, initialPopulation: 167, exclusions: 41, - label: 'URI - Appropriate Treatment for Children With Upper Respiratory Infection', + label: + 'URI - Appropriate Treatment for Children With Upper Respiratory Infection', shortLabel: 'URI', - title: 'Appropriate Treatment for Children With Upper Respiratory Infection', + title: + 'Appropriate Treatment for Children With Upper Respiratory Infection', }, ], info: { @@ -63130,9 +63170,12 @@ export default { }, aab: { domainOfCare: 'EOC', - title: 'Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', + title: + 'Avoidance of Antibiotic Treatment in Adults with Acute Bronchitis', displayLabel: 'AAB', - description: ['AAB assesses the percentage of episodes for members 3 months of age and older with a diagnosis of acute bronchitis/bronchiolitis that did not result in an antibiotic dispensing event.'], + description: [ + 'AAB assesses the percentage of episodes for members 3 months of age and older with a diagnosis of acute bronchitis/bronchiolitis that did not result in an antibiotic dispensing event.', + ], measureType: 'process', weight: 1, hasSubMeasures: false, @@ -63143,7 +63186,9 @@ export default { domainOfCare: 'ECDS', title: 'Follow-Up Care for Children Prescribed ADHD Medication', displayLabel: 'ADD-E', - description: ['ADD-E assesses follow-up care for children prescribed an ADHD medication in the Initiation and Continuation & Maintenance phases.'], + description: [ + 'ADD-E assesses follow-up care for children prescribed an ADHD medication in the Initiation and Continuation & Maintenance phases.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63172,9 +63217,12 @@ export default { }, apme: { domainOfCare: 'ECDS', - title: 'Metabolic Monitoring for Children and Adolescents on Antipsychotics', + title: + 'Metabolic Monitoring for Children and Adolescents on Antipsychotics', displayLabel: 'APM-E', - description:[ 'APM-E assesses the percentage of children and adolescents with ongoing antipsychotic medication use who had metabolic testing during the year.'], + description: [ + 'APM-E assesses the percentage of children and adolescents with ongoing antipsychotic medication use who had metabolic testing during the year.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63183,7 +63231,8 @@ export default { }, 'apme-1': { domainOfCare: 'ECDS', - title: 'Blood Glucose Monitoring for Children and Adolescents on Antipsychotics', + title: + 'Blood Glucose Monitoring for Children and Adolescents on Antipsychotics', displayLabel: 'APM-E: Blood Glucose Monitoring', measureType: 'process', weight: 1, @@ -63193,7 +63242,8 @@ export default { }, 'apme-2': { domainOfCare: 'ECDS', - title: 'Cholesterol Monitoring for Children and Adolescents on Antipsychotics', + title: + 'Cholesterol Monitoring for Children and Adolescents on Antipsychotics', displayLabel: 'APM-E: Cholesterol Monitoring', measureType: 'process', weight: 1, @@ -63203,7 +63253,8 @@ export default { }, 'apme-3': { domainOfCare: 'ECDS', - title: 'Blood Glucose and Cholesterol Monitoring for Children and Adolescents on Antipsychotics', + title: + 'Blood Glucose and Cholesterol Monitoring for Children and Adolescents on Antipsychotics', displayLabel: 'APM-E: Blood Glucose and Cholesterol Monitoring', measureType: 'process', weight: 1, @@ -63215,7 +63266,9 @@ export default { domainOfCare: 'ECDS', title: 'Unhealthy Alcohol Use Screening and Follow-Up', displayLabel: 'ASF-E', - description:[ 'ASF-E assesses the percentage of members 18 years and older who were screened for unhealthy alcohol use and received appropriate follow-up care if they screened positive.'], + description: [ + 'ASF-E assesses the percentage of members 18 years and older who were screened for unhealthy alcohol use and received appropriate follow-up care if they screened positive.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63234,7 +63287,8 @@ export default { }, 'asfe-2': { domainOfCare: 'ECDS', - title: 'Counseling or Other Follow-Up on Positive Screen for Unhealthy Alcohol Use', + title: + 'Counseling or Other Follow-Up on Positive Screen for Unhealthy Alcohol Use', displayLabel: 'ASF-E: Follow-Up', measureType: 'process', weight: 1, @@ -63246,7 +63300,9 @@ export default { domainOfCare: 'ECDS', title: 'Adult Immunization Status', displayLabel: 'AIS-E', - description:[ 'AIS-E assesses the percentage of members 19 years and older who are up-to-date on vaccines for influenza, TD or tetanus, TDaP, zoster and pneumococcal.'], + description: [ + 'AIS-E assesses the percentage of members 19 years and older who are up-to-date on vaccines for influenza, TD or tetanus, TDaP, zoster and pneumococcal.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63297,7 +63353,9 @@ export default { domainOfCare: 'ECDS', title: 'Breast Cancer Screening Rate', displayLabel: 'BCS-E', - description:[ 'BCS-E assesses women 50–74 years of age who had at least one mammogram to screen for breast cancer in the past two years.'], + description: [ + 'BCS-E assesses women 50–74 years of age who had at least one mammogram to screen for breast cancer in the past two years.', + ], measureType: 'process', weight: 1, hasSubMeasures: false, @@ -63308,7 +63366,9 @@ export default { domainOfCare: 'EOF', title: 'Cervical Cancer Screening Rate', displayLabel: 'CCS', - description:[ 'CCS assesses women who were screened for cervical cancer with certain conditions applied to the following age brackets: 21–64 years and 30–64 years.'], + description: [ + 'CCS assesses women who were screened for cervical cancer with certain conditions applied to the following age brackets: 21–64 years and 30–64 years.', + ], measureType: 'process', weight: 1, hasSubMeasures: false, @@ -63319,7 +63379,9 @@ export default { domainOfCare: 'ECDS', title: 'Childhood Immunization Status', displayLabel: 'CIS-E', - description:[ 'CIS-E assesses the percentage of children 2 years of age who had four DTaP, three IPV, 1 MMR, three HiB, three HepB, one VZV, four PCV, one HepA, two or three RV and two flu vaccines by their second birthday.'], + description: [ + 'CIS-E assesses the percentage of children 2 years of age who had four DTaP, three IPV, 1 MMR, three HiB, three HepB, one VZV, four PCV, one HepA, two or three RV and two flu vaccines by their second birthday.', + ], measureType: 'process', weight: 3, hasSubMeasures: true, @@ -63460,7 +63522,9 @@ export default { domainOfCare: 'ECDS', title: 'Colorectal Cancer Screening Rate', displayLabel: 'CCS', - description:[ 'COL assesses adults 50–75 who had appropriate screening for colorectal cancer with the appropriate designated tests.'], + description: [ + 'COL assesses adults 50–75 who had appropriate screening for colorectal cancer with the appropriate designated tests.', + ], measureType: 'process', weight: 1, hasSubMeasures: false, @@ -63471,7 +63535,9 @@ export default { domainOfCare: 'EOC', title: 'Risk of Continued Opioid Use', displayLabel: 'COU', - description:[ 'COU assesses potentially high-risk opioid analgesic prescribing practices with members 18 years and older who have a new episode of opioid use that puts them at risk for continued opioid use.'], + description: [ + 'COU assesses potentially high-risk opioid analgesic prescribing practices with members 18 years and older who have a new episode of opioid use that puts them at risk for continued opioid use.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63502,7 +63568,9 @@ export default { domainOfCare: 'EOC', title: 'Appropriate Testing for Children with Pharyngitis', displayLabel: 'CWP', - description:[ 'CWP assesses the percentage of episodes for members 3 years and older with a diagnosis of pharyngitis, dispensed an antibiotic and received a group A streptococcus test for the episode.'], + description: [ + 'CWP assesses the percentage of episodes for members 3 years and older with a diagnosis of pharyngitis, dispensed an antibiotic and received a group A streptococcus test for the episode.', + ], measureType: 'process', weight: 1, hasSubMeasures: false, @@ -63513,7 +63581,9 @@ export default { domainOfCare: 'ECDS', title: 'Monitor Depression Symptoms for Adolescents and Adults', displayLabel: 'DMS-E', - description:[ 'DMS-E assesses the percentage of members 12 years and older diagnosed with major depression or dysthymia and an outpatient encounter with a PHQ-9 score in their record at the same time as the encounter.'], + description: [ + 'DMS-E assesses the percentage of members 12 years and older diagnosed with major depression or dysthymia and an outpatient encounter with a PHQ-9 score in their record at the same time as the encounter.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63554,7 +63624,9 @@ export default { domainOfCare: 'ECDS', title: 'Depression Remission or Response for Adolescents and Adults', displayLabel: 'DRR-E', - description:[ 'DRR-E assesses the percentage of members 12 years and older with a diagnosis of depression and an elevated PHQ-9 score, who had evidence of response or remission within 4–8 months of the elevated score.'], + description: [ + 'DRR-E assesses the percentage of members 12 years and older with a diagnosis of depression and an elevated PHQ-9 score, who had evidence of response or remission within 4–8 months of the elevated score.', + ], measureType: 'outcome', weight: 1, hasSubMeasures: true, @@ -63595,7 +63667,9 @@ export default { domainOfCare: 'ECDS', title: 'Depression Screening and Follow-Up for Adolescents and Adults', displayLabel: 'DSF-E', - description:[ 'DSF-E assesses the percentage of members 12 years and older who were screened for clinical depression using a standardized instrument and, if screened positive, received follow-up care.'], + description: [ + 'DSF-E assesses the percentage of members 12 years and older who were screened for clinical depression using a standardized instrument and, if screened positive, received follow-up care.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63614,7 +63688,8 @@ export default { }, 'dsfe-2': { domainOfCare: 'ECDS', - title: 'Follow-Up on Positive Depression Screen for Adolescents and Adults', + title: + 'Follow-Up on Positive Depression Screen for Adolescents and Adults', displayLabel: 'DSF-E: Follow-Up on Positive Screen', measureType: 'process', weight: 1, @@ -63626,7 +63701,9 @@ export default { domainOfCare: 'EOC', title: 'Follow-Up After Emergency Department Visit for Mental Illness', displayLabel: 'FUM', - description:[ 'FUM assesses ED visits for adults and children 6 years and older with a diagnosis of mental illness or intentional self-harm and who received a follow-up visit for mental illness within 7 - 30 days.'], + description: [ + 'FUM assesses ED visits for adults and children 6 years and older with a diagnosis of mental illness or intentional self-harm and who received a follow-up visit for mental illness within 7 - 30 days.', + ], measureType: 'process', weight: 3, hasSubMeasures: true, @@ -63657,7 +63734,9 @@ export default { domainOfCare: 'ECDS', title: 'Immunizations for Adolescents', displayLabel: 'IMA-E', - description:[ 'IMA-E assesses adolescents 13 years of age who had one dose of meningococcal vaccine, one Tdap vaccine and the complete human papillomavirus vaccine series by their 13th birthday.'], + description: [ + 'IMA-E assesses adolescents 13 years of age who had one dose of meningococcal vaccine, one Tdap vaccine and the complete human papillomavirus vaccine series by their 13th birthday.', + ], measureType: 'outcome', weight: 3, hasSubMeasures: true, @@ -63718,7 +63797,9 @@ export default { domainOfCare: 'ECDS', title: 'Postpartum Depression Screening and Follow-up', displayLabel: 'PDS-E', - description:[ 'PDS-E assesses the percentage of deliveries in which members were screened for clinical depression during the postpartum period, and if screened positive, received follow-up care.'], + description: [ + 'PDS-E assesses the percentage of deliveries in which members were screened for clinical depression during the postpartum period, and if screened positive, received follow-up care.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63749,7 +63830,9 @@ export default { domainOfCare: 'ECDS', title: 'Prenatal Depression Screening and Follow-up', displayLabel: 'PND-E', - description:[ 'PND-E assesses the percentage of deliveries in which members were screened for clinical depression while pregnant and, if screened positive, received follow-up care.'], + description: [ + 'PND-E assesses the percentage of deliveries in which members were screened for clinical depression while pregnant and, if screened positive, received follow-up care.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63780,7 +63863,9 @@ export default { domainOfCare: 'ECDS', title: 'Prenatal Immunization Status', displayLabel: 'PRS-E', - description:[ 'PRS-E assesses the percentage of deliveries in the measurement period in which women received influenza and tetanus, diphtheria toxoids and acellular pertussis (Tdap) vaccinations.'], + description: [ + 'PRS-E assesses the percentage of deliveries in the measurement period in which women received influenza and tetanus, diphtheria toxoids and acellular pertussis (Tdap) vaccinations.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63821,7 +63906,9 @@ export default { domainOfCare: 'EOC', title: 'Non-Recommended PSA-Based Screening in Older Men', displayLabel: 'PSA', - description:[ 'PSA assesses whether men 70 years and older were screened unnecessarily for prostate cancer using prostate-specific antigen (PSA)-based screening.'], + description: [ + 'PSA assesses whether men 70 years and older were screened unnecessarily for prostate cancer using prostate-specific antigen (PSA)-based screening.', + ], measureType: 'process', weight: 1, hasSubMeasures: false, @@ -63832,7 +63919,9 @@ export default { domainOfCare: 'EOC', title: 'Use of Opioids from Multiple Providers', displayLabel: 'UOP', - description:[ 'UOP assesses potentially high-risk opioid analgesic prescribing practices via the proportion of members 18 years and older, receiving prescription opioids for more than 15 days during the year from multiple providers.'], + description: [ + 'UOP assesses potentially high-risk opioid analgesic prescribing practices via the proportion of members 18 years and older, receiving prescription opioids for more than 15 days during the year from multiple providers.', + ], measureType: 'process', weight: 1, hasSubMeasures: true, @@ -63871,9 +63960,12 @@ export default { }, uri: { domainOfCare: 'EOC', - title: 'Appropriate Treatment for Children With Upper Respiratory Infection', + title: + 'Appropriate Treatment for Children With Upper Respiratory Infection', displayLabel: 'URI', - description:[ 'URI assesses the percentage of episodes for members 3 months and older diagnosed with an URI that did not result in an antibiotic dispensing event.'], + description: [ + 'URI assesses the percentage of episodes for members 3 months and older diagnosed with an URI that did not result in an antibiotic dispensing event.', + ], measureType: 'process', weight: 1, hasSubMeasures: false, @@ -63998,10 +64090,7 @@ export default { defaultFilterState: { domainsOfCare: [], stars: [], - percentRange: [ - 0, - 100, - ], + percentRange: [0, 100], sum: 0, payors: [], healthcareProviders: [], @@ -64010,9 +64099,6 @@ export default { }, defaultTimelineState: { choice: 'all', - range: [ - null, - null, - ], + range: [null, null], }, -} +}; diff --git a/src/views/auth/Login.js b/src/views/auth/Login.js index 85bcbd18..233098f0 100644 --- a/src/views/auth/Login.js +++ b/src/views/auth/Login.js @@ -8,10 +8,10 @@ import { TextField, Typography, } from '@mui/material'; -import { ReactComponent as GoogleSvg } from '../../assets/img/google.svg'; -import env from '../../env'; import LockIcon from '@mui/icons-material/Lock'; import PersonRoundedIcon from '@mui/icons-material/PersonRounded'; +import { ReactComponent as GoogleSvg } from '../../assets/img/google.svg'; +import env from '../../env'; export default function Login() { return ( From a348255e40319da114744047b49ffa44cc29f643 Mon Sep 17 00:00:00 2001 From: jfetterolf Date: Fri, 17 Jan 2025 13:25:48 -0500 Subject: [PATCH 4/4] lint --- src/components/Common/CommonStandardButton.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/Common/CommonStandardButton.js b/src/components/Common/CommonStandardButton.js index 4f943732..84320dbe 100644 --- a/src/components/Common/CommonStandardButton.js +++ b/src/components/Common/CommonStandardButton.js @@ -58,7 +58,7 @@ export function StandardButton({ {/* If there is a leftIcon prop passed, render it */} {leftIcon ? {leftIcon} : null} @@ -69,7 +69,7 @@ export function StandardButton({ {children}