Skip to content

Commit

Permalink
Arrange lab results on patient summary in descending order (#39)
Browse files Browse the repository at this point in the history
(feat) : Arrange lab results in ascending order
  • Loading branch information
Daphne210 authored Jan 20, 2024
1 parent e14f4c4 commit d7e839b
Show file tree
Hide file tree
Showing 3 changed files with 248 additions and 246 deletions.
244 changes: 122 additions & 122 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,123 +1,123 @@
{
"name": "@openmrs/esm-laboratory-app",
"version": "1.0.0",
"license": "MPL-2.0",
"description": "Laboratory microfrontend for OpenMRS 3.x",
"browser": "dist/openmrs-esm-laboratory-app.js",
"main": "src/index.ts",
"source": true,
"scripts": {
"start": "openmrs develop",
"serve": "webpack serve --mode=development",
"build": "webpack --mode production",
"analyze": "webpack --mode=production --env analyze=true",
"lint": "TIMING=1 eslint src --ext js,jsx,ts,tsx",
"prettier": "prettier --write \"src/**/*.{ts,tsx}\"",
"typescript": "tsc",
"test": "jest --config jest.config.js --passWithNoTests",
"verify": "turbo lint typescript test",
"extract-translations": "i18next 'src/**/*.component.tsx' --config ./i18next-parser.config.js",
"coverage": "yarn test -- --coverage",
"prepare": "husky install"
},
"husky": {
"hooks": {
"pre-commit": "pretty-quick --staged && yarn verify"
}
},
"browserslist": [
"extends browserslist-config-openmrs"
],
"keywords": [
"openmrs",
"microfrontends",
"laboratory"
],
"repository": {
"type": "git",
"url": "git+https://github.com/openmrs/openmrs-esm-laboratory.git"
},
"homepage": "https://github.com/openmrs/openmrs-esm-laboratory#readme",
"publishConfig": {
"access": "public"
},
"bugs": {
"url": "https://github.com/openmrs/openmrs-esm-laboratory/issues"
},
"dependencies": {
"@carbon/react": "^1.14.0",
"@hookform/resolvers": "^3.3.4",
"lodash-es": "^4.17.21",
"react-hook-form": "^7.49.3",
"react-to-print": "^2.14.15",
"zod": "^3.22.4"
},
"peerDependencies": {
"@openmrs/esm-framework": "*",
"dayjs": "1.x",
"react": "18.x",
"react-i18next": "11.x",
"react-router-dom": "6.x",
"rxjs": "6.x"
},
"devDependencies": {
"@ohri/openmrs-esm-ohri-commons-lib": "next",
"@openmrs/esm-extensions": "next",
"@openmrs/esm-framework": "next",
"@openmrs/esm-patient-common-lib": "next",
"@openmrs/esm-react-utils": "next",
"@openmrs/esm-styleguide": "next",
"@swc/cli": "^0.1.62",
"@swc/core": "^1.3.62",
"@swc/jest": "^0.2.26",
"@testing-library/dom": "^8.20.0",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^14.4.3",
"@types/jest": "^28.1.8",
"@types/react": "^18.2.8",
"@types/react-dom": "^18.2.4",
"@types/react-router": "^5.1.20",
"@types/react-router-dom": "^5.3.3",
"@types/webpack-env": "^1.18.1",
"@typescript-eslint/parser": "^5.59.9",
"carbon-components-react": "^8.34.0",
"concurrently": "^7.6.0",
"css-loader": "^6.8.1",
"dayjs": "^1.11.9",
"eslint": "^8.42.0",
"eslint-config-prettier": "^8.8.0",
"eslint-config-ts-react-important-stuff": "^3.0.0",
"eslint-plugin-prettier": "^4.2.1",
"file-saver": "^2.0.5",
"husky": "^8.0.0",
"identity-obj-proxy": "^3.0.0",
"jest": "^28.1.3",
"jest-cli": "^28.1.3",
"jest-environment-jsdom": "^28.1.3",
"lerna": "^5.6.1",
"openmrs": "next",
"plotly.js": "^2.24.3",
"prettier": "^2.8.8",
"pretty-quick": "^3.1.3",
"raw-loader": "^4.0.2",
"react": "^18.2.0",
"react-csv": "^2.2.2",
"react-dom": "^18.2.0",
"react-i18next": "^11.18.6",
"react-pivottable": "^0.11.0",
"react-plotly.js": "^2.0.0",
"react-router-dom": "^6.11.2",
"react-table": "^7.8.0",
"rxjs": "^6.6.7",
"swc-loader": "^0.2.3",
"turbo": "^1.10.12",
"typescript": "^4.9.5",
"webpack": "^5.88.1",
"webpack-cli": "^5.1.3"
},
"resolutions": {
"@carbon/react": "1.14.0"
},
"packageManager": "[email protected]"
}
"name": "@openmrs/esm-laboratory-app",
"version": "1.0.0",
"license": "MPL-2.0",
"description": "Laboratory microfrontend for OpenMRS 3.x",
"browser": "dist/openmrs-esm-laboratory-app.js",
"main": "src/index.ts",
"source": true,
"scripts": {
"start": "openmrs develop",
"serve": "webpack serve --mode=development",
"build": "webpack --mode production",
"analyze": "webpack --mode=production --env analyze=true",
"lint": "TIMING=1 eslint src --ext js,jsx,ts,tsx",
"prettier": "prettier --write \"src/**/*.{ts,tsx}\"",
"typescript": "tsc",
"test": "jest --config jest.config.js --passWithNoTests",
"verify": "turbo lint typescript test",
"extract-translations": "i18next 'src/**/*.component.tsx' --config ./i18next-parser.config.js",
"coverage": "yarn test -- --coverage",
"prepare": "husky install"
},
"husky": {
"hooks": {
"pre-commit": "pretty-quick --staged && yarn verify"
}
},
"browserslist": [
"extends browserslist-config-openmrs"
],
"keywords": [
"openmrs",
"microfrontends",
"laboratory"
],
"repository": {
"type": "git",
"url": "git+https://github.com/openmrs/openmrs-esm-laboratory.git"
},
"homepage": "https://github.com/openmrs/openmrs-esm-laboratory#readme",
"publishConfig": {
"access": "public"
},
"bugs": {
"url": "https://github.com/openmrs/openmrs-esm-laboratory/issues"
},
"dependencies": {
"@carbon/react": "^1.14.0",
"@hookform/resolvers": "^3.3.4",
"lodash-es": "^4.17.21",
"react-hook-form": "^7.49.3",
"react-to-print": "^2.14.15",
"zod": "^3.22.4"
},
"peerDependencies": {
"@openmrs/esm-framework": "*",
"dayjs": "1.x",
"react": "18.x",
"react-i18next": "11.x",
"react-router-dom": "6.x",
"rxjs": "6.x"
},
"devDependencies": {
"@ohri/openmrs-esm-ohri-commons-lib": "next",
"@openmrs/esm-extensions": "next",
"@openmrs/esm-framework": "next",
"@openmrs/esm-patient-common-lib": "next",
"@openmrs/esm-react-utils": "next",
"@openmrs/esm-styleguide": "next",
"@swc/cli": "^0.1.62",
"@swc/core": "^1.3.62",
"@swc/jest": "^0.2.26",
"@testing-library/dom": "^8.20.0",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^14.4.3",
"@types/jest": "^28.1.8",
"@types/react": "^18.2.8",
"@types/react-dom": "^18.2.4",
"@types/react-router": "^5.1.20",
"@types/react-router-dom": "^5.3.3",
"@types/webpack-env": "^1.18.1",
"@typescript-eslint/parser": "^5.59.9",
"carbon-components-react": "^8.34.0",
"concurrently": "^7.6.0",
"css-loader": "^6.8.1",
"dayjs": "^1.11.9",
"eslint": "^8.42.0",
"eslint-config-prettier": "^8.8.0",
"eslint-config-ts-react-important-stuff": "^3.0.0",
"eslint-plugin-prettier": "^4.2.1",
"file-saver": "^2.0.5",
"husky": "^8.0.0",
"identity-obj-proxy": "^3.0.0",
"jest": "^28.1.3",
"jest-cli": "^28.1.3",
"jest-environment-jsdom": "^28.1.3",
"lerna": "^5.6.1",
"openmrs": "next",
"plotly.js": "^2.24.3",
"prettier": "^2.8.8",
"pretty-quick": "^3.1.3",
"raw-loader": "^4.0.2",
"react": "^18.2.0",
"react-csv": "^2.2.2",
"react-dom": "^18.2.0",
"react-i18next": "^11.18.6",
"react-pivottable": "^0.11.0",
"react-plotly.js": "^2.0.0",
"react-router-dom": "^6.11.2",
"react-table": "^7.8.0",
"rxjs": "^6.6.7",
"swc-loader": "^0.2.3",
"turbo": "^1.10.12",
"typescript": "^4.9.5",
"webpack": "^5.88.1",
"webpack-cli": "^5.1.3"
},
"resolutions": {
"@carbon/react": "1.14.0"
},
"packageManager": "[email protected]"
}
21 changes: 13 additions & 8 deletions src/patient-chart/laboratory-order.component.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -87,11 +87,18 @@ const LaboratoryOrder: React.FC<LaboratoryOrderOverviewProps> = ({
const [currentPageSize, setPageSize] = useState(10);
const [nextOffSet, setNextOffSet] = useState(0);

const sortedLabRequests = useMemo(() => {
return [...labRequests].sort((a, b) => {
const dateA = new Date(a.encounterDatetime);
const dateB = new Date(b.encounterDatetime);
return dateB.getTime() - dateA.getTime();
});
}, [labRequests]);
const {
goTo,
results: paginatedLabEntries,
currentPage,
} = usePagination(labRequests, currentPageSize);
} = usePagination(sortedLabRequests, currentPageSize);

let columns = [
{
Expand All @@ -106,8 +113,8 @@ const LaboratoryOrder: React.FC<LaboratoryOrderOverviewProps> = ({
];

const [searchTerm, setSearchTerm] = useState("");
const [items, setItems] = useState(paginatedLabEntries);
const [initialTests] = useState(paginatedLabEntries);
const [items, setItems] = useState(sortedLabRequests);
const [initialTests] = useState(sortedLabRequests);

const handleChange = useCallback(
(val) => {
Expand Down Expand Up @@ -220,7 +227,7 @@ const LaboratoryOrder: React.FC<LaboratoryOrderOverviewProps> = ({
};

const tableRows = useMemo(() => {
return paginatedLabEntries?.map((entry) => ({
return paginatedLabEntries?.map((entry, index) => ({
...entry,
id: entry.uuid,
orderDate: {
Expand Down Expand Up @@ -281,7 +288,7 @@ const LaboratoryOrder: React.FC<LaboratoryOrderOverviewProps> = ({
return <ErrorState error={isError} headerTitle={"Error"} />;
}

if (items?.length >= 0) {
if (paginatedLabEntries?.length >= 0) {
return (
<div>
<DataTable
Expand Down Expand Up @@ -385,9 +392,7 @@ const LaboratoryOrder: React.FC<LaboratoryOrderOverviewProps> = ({
className={styles.expandedActiveVisitRow}
colSpan={headers.length + 2}
>
<TestsResults
obs={paginatedLabEntries[index].obs}
/>
<TestsResults obs={sortedLabRequests[index].obs} />
</TableExpandedRow>
) : (
<TableExpandedRow
Expand Down
Loading

0 comments on commit d7e839b

Please sign in to comment.