diff --git a/frontend/spa-build-config.json b/frontend/spa-build-config.json index 52b5d9405..b0855ea8d 100644 --- a/frontend/spa-build-config.json +++ b/frontend/spa-build-config.json @@ -1,48 +1,47 @@ { "frontendModules": { - "@ohri/openmrs-esm-ohri-core-app": "next", - "@ohri/openmrs-esm-ohri-form-render-app": "next", - "@ohri/openmrs-esm-ohri-hiv-app": "next", - "@ohri/openmrs-esm-ohri-covid-app": "next", - "@ohri/openmrs-esm-ohri-pmtct": "next", - "@ohri/openmrs-esm-ohri-tb-app": "next", - "@ohri/openmrs-esm-ohri-cervical-cancer-app": "next", - "@openmrs/esm-appointments-app": "next", - "@openmrs/esm-dispensing-app": "next", - "@openmrs/esm-form-builder-app": "next", - "@openmrs/esm-home-app": "next", + "@openmrs/esm-devtools-app": "next", "@openmrs/esm-implementer-tools-app": "next", "@openmrs/esm-login-app": "next", - "@openmrs/esm-outpatient-app": "next", + "@openmrs/esm-primary-navigation-app": "next", + "@openmrs/esm-home-app": "next", + "@openmrs/esm-form-engine-app": "next", + "@openmrs/esm-generic-patient-widgets-app": "next", "@openmrs/esm-patient-allergies-app": "next", - "@openmrs/esm-patient-appointments-app": "next", "@openmrs/esm-patient-attachments-app": "next", "@openmrs/esm-patient-banner-app": "next", - "@openmrs/esm-patient-chart-app": "next", + "@ohri/esm-patient-chart-app": "next", "@openmrs/esm-patient-conditions-app": "next", "@openmrs/esm-patient-forms-app": "next", - "@openmrs/esm-patient-immunizations-app": "next", - "@openmrs/esm-patient-list-app": "next", + "@openmrs/esm-patient-flags-app": "next", + "@openmrs/esm-patient-labs-app": "next", + "@openmrs/esm-patient-lists-app": "next", "@openmrs/esm-patient-medications-app": "next", "@openmrs/esm-patient-notes-app": "next", + "@openmrs/esm-patient-orders-app": "next", "@openmrs/esm-patient-programs-app": "next", - "@openmrs/esm-patient-search-app": "next", - "@openmrs/esm-patient-test-results-app": "next", "@openmrs/esm-patient-vitals-app": "next", - "@openmrs/esm-primary-navigation-app": "next", + "@openmrs/esm-active-visits-app": "next", + "@openmrs/esm-appointments-app": "next", + "@openmrs/esm-service-queues-app": "next", + "@openmrs/esm-patient-list-management-app": "next", "@openmrs/esm-patient-registration-app": "next", - "@openmrs/esm-devtools-app": "next", + "@openmrs/esm-patient-search-app": "next", "@openmrs/esm-openconceptlab-app": "next", - "@openmrs/esm-generic-patient-widgets-app": "next", - "@openmrs/esm-patient-lists-app": "next", - "@openmrs/esm-cohort-builder-app": "next", - "@openmrs/esm-patient-list-management-app": "next", - "@openmrs/esm-service-queues-app": "next", - "@openmrs/esm-form-entry-app": "next", - "@openmrs/esm-patient-labs-app": "next", + "@openmrs/esm-system-admin-app": "next", + "@openmrs/esm-dispensing-app": "next", "@openmrs/esm-fast-data-entry-app": "next", - "@openmrs/esm-patient-orders-app": "next", - "@openmrs/esm-system-admin-app": "next" + "@openmrs/esm-cohort-builder-app": "next", + "@ohri/openmrs-esm-ohri-core-app": "next", + "@ohri/openmrs-esm-ohri-hiv-app": "next", + "@ohri/openmrs-esm-ohri-covid-app": "next", + "@ohri/openmrs-esm-ohri-pmtct": "next", + "@ohri/openmrs-esm-ohri-tb-app": "next", + "@ohri/openmrs-esm-ohri-cervical-cancer-app": "next", + "@ohri/openmrs-esm-ohri-form-render-app": "next", + "@openmrs/esm-stock-management-app": "next", + "@openmrs/esm-billing-app": "next", + "@ohri/openmrs-esm-ohri-opd-app": "next" }, "spaPath": "$SPA_PATH", "apiUrl": "$API_URL", diff --git a/package.json b/package.json index e42e8c7fb..f375ef569 100644 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "start:pmtct": "openmrs develop --backend https://ohri-namibia-dev.globalhealthapp.net --sources 'packages/esm-ohri-pmtct-app/'", "start:form-render": "openmrs develop --backend https://ohri-dev.globalhealthapp.net --sources packages/esm-form-render-app", "start:tb": "openmrs develop --backend https://ohri-dev.globalhealthapp.net --sources packages/esm-tb-app", + "start:opd": "openmrs develop --backend https://ohri-dev.globalhealthapp.net --sources packages/esm-opd-app", "prettier": "prettier --fix --config prettier.config.js --write \"packages/**/*.{ts,tsx}\"", "prepare": "husky install", "test": "jest --config jest.config.js --verbose false --passWithNoTests", diff --git a/packages/esm-commons-lib/package.json b/packages/esm-commons-lib/package.json index 5fba32ac2..d798b6b0d 100644 --- a/packages/esm-commons-lib/package.json +++ b/packages/esm-commons-lib/package.json @@ -32,7 +32,7 @@ }, "dependencies": { "@carbon/react": "^1.13.0", - "@openmrs/openmrs-form-engine-lib": "next", + "@openmrs/openmrs-form-engine-lib": "1.1.0-pre.723", "fuzzy": "^0.1.3", "lodash-es": "^4.17.15", "systemjs-webpack-interop": "^2.3.7", diff --git a/packages/esm-commons-lib/src/components/encounter-list/encounter-list.component.tsx b/packages/esm-commons-lib/src/components/encounter-list/encounter-list.component.tsx index fd765afc3..a849aa717 100644 --- a/packages/esm-commons-lib/src/components/encounter-list/encounter-list.component.tsx +++ b/packages/esm-commons-lib/src/components/encounter-list/encounter-list.component.tsx @@ -2,12 +2,12 @@ import { navigate, showModal, showSnackbar } from '@openmrs/esm-framework'; import React, { useCallback, useEffect, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { EmptyState } from '../empty-state/empty-state.component'; -import { OHRIFormLauncherWithIntent } from '../ohri-form-launcher/ohri-form-launcher.component'; +import { FormLauncherWithIntent } from '../ohri-form-launcher/ohri-form-launcher.component'; import styles from './encounter-list.scss'; import { OTable } from '../data-table/o-table.component'; import { Button, Link, OverflowMenu, OverflowMenuItem, Pagination, DataTableSkeleton } from '@carbon/react'; import { Add } from '@carbon/react/icons'; -import { OHRIFormSchema } from '@openmrs/openmrs-form-engine-lib'; +import { FormSchema } from '@openmrs/openmrs-form-engine-lib'; import { deleteEncounter, launchEncounterForm } from './helpers'; import { useEncounterRows } from '../../hooks/useEncounterRows'; import { OpenmrsEncounter } from '../../api/types'; @@ -56,7 +56,7 @@ export const EncounterList: React.FC = ({ }) => { const { t } = useTranslation(); const [paginatedRows, setPaginatedRows] = useState([]); - const [forms, setForms] = useState([]); + const [forms, setForms] = useState([]); const [currentPage, setCurrentPage] = useState(1); const [pageSize, setPageSize] = useState(10); const [isLoadingForms, setIsLoadingForms] = useState(true); @@ -265,7 +265,7 @@ export const EncounterList: React.FC = ({ if (forms.length == 1 && !forms[0]['availableIntents']?.length) { // we only have one form with no intents // just return the "Add" button - return ( + return ( ); } else if (forms.length && !(hideFormLauncher ?? isDead)) { - return () => ( - launchEncounterForm( diff --git a/packages/esm-commons-lib/src/components/encounter-list/encounter-list.test.tsx b/packages/esm-commons-lib/src/components/encounter-list/encounter-list.test.tsx index c94efe220..6c776c1c7 100644 --- a/packages/esm-commons-lib/src/components/encounter-list/encounter-list.test.tsx +++ b/packages/esm-commons-lib/src/components/encounter-list/encounter-list.test.tsx @@ -48,7 +48,7 @@ jest.mock('@openmrs/esm-patient-common-lib', () => ({ })); jest.mock('@openmrs/openmrs-form-engine-lib', () => ({ - OHRIForm: jest + FormEngine: jest .fn() .mockImplementation(() => React.createElement('div', { 'data-testid': 'openmrs form' }, 'FORM ENGINE LIB')), })); diff --git a/packages/esm-commons-lib/src/components/encounter-list/helpers.ts b/packages/esm-commons-lib/src/components/encounter-list/helpers.ts index d351c3ed0..9fa7aafc1 100644 --- a/packages/esm-commons-lib/src/components/encounter-list/helpers.ts +++ b/packages/esm-commons-lib/src/components/encounter-list/helpers.ts @@ -1,11 +1,11 @@ import { openmrsFetch, restBaseUrl } from '@openmrs/esm-framework'; import { launchPatientWorkspace } from '@openmrs/esm-patient-common-lib'; -import { OHRIFormSchema } from '@openmrs/openmrs-form-engine-lib'; +import { FormSchema } from '@openmrs/openmrs-form-engine-lib'; type LaunchAction = 'add' | 'view' | 'edit' | 'embedded-view'; export function launchEncounterForm( - form: OHRIFormSchema, + form: FormSchema, moduleName: string, action: LaunchAction = 'add', onFormSave: () => void, @@ -21,7 +21,7 @@ export function launchEncounterForm( mutateform: mutateform, formInfo: { encounterUuid, - formUuid: form.uuid, + formUuid: form.name, patientUuid: patientUuid, visitTypeUuid: '', visitUuid: '', diff --git a/packages/esm-commons-lib/src/components/ohri-form-launcher/ohri-form-empty-launcher.component.tsx b/packages/esm-commons-lib/src/components/ohri-form-launcher/ohri-form-empty-launcher.component.tsx index 185f5def3..1ac693f2c 100644 --- a/packages/esm-commons-lib/src/components/ohri-form-launcher/ohri-form-empty-launcher.component.tsx +++ b/packages/esm-commons-lib/src/components/ohri-form-launcher/ohri-form-empty-launcher.component.tsx @@ -3,7 +3,7 @@ import { Button } from '@carbon/react'; import { Add } from '@carbon/react/icons'; import { useTranslation } from 'react-i18next'; -export const OHRIFormLauncherEmpty: React.FC<{ +export const FormLauncherEmpty: React.FC<{ launchForm: (formJson?: any) => void; }> = ({ launchForm }) => { const { t } = useTranslation(); diff --git a/packages/esm-commons-lib/src/components/ohri-form-launcher/ohri-form-launcher.component.tsx b/packages/esm-commons-lib/src/components/ohri-form-launcher/ohri-form-launcher.component.tsx index 29208a2f0..0bb844250 100644 --- a/packages/esm-commons-lib/src/components/ohri-form-launcher/ohri-form-launcher.component.tsx +++ b/packages/esm-commons-lib/src/components/ohri-form-launcher/ohri-form-launcher.component.tsx @@ -4,7 +4,7 @@ import styles from './launcher-with-intent.scss'; import { useTranslation } from 'react-i18next'; import { OHRIOverflowMenu } from '../overflow-menu-button/ohri-overflow-menu.component'; -export const OHRIFormLauncherWithIntent: React.FC<{ +export const FormLauncherWithIntent: React.FC<{ launchForm: (formJson?: any, intent?: string) => void; title?: string; formJsonList?: Array; diff --git a/packages/esm-commons-lib/src/utils/ohri-forms-commons.ts b/packages/esm-commons-lib/src/utils/ohri-forms-commons.ts index 33efde274..c407722c0 100644 --- a/packages/esm-commons-lib/src/utils/ohri-forms-commons.ts +++ b/packages/esm-commons-lib/src/utils/ohri-forms-commons.ts @@ -1,8 +1,8 @@ -import { OHRIFormSchema, SessionMode } from '@openmrs/openmrs-form-engine-lib'; +import { FormSchema, SessionMode } from '@openmrs/openmrs-form-engine-lib'; import { launchOHRIWorkSpace } from '../workspace/ohri-workspace-utils'; export const launchForm = ( - form: OHRIFormSchema, + form: FormSchema, mode: SessionMode = 'enter', moduleName: string, title?: string, diff --git a/packages/esm-commons-lib/src/workspace/ohri-workspace-utils.ts b/packages/esm-commons-lib/src/workspace/ohri-workspace-utils.ts index 826eb323a..53bd3f150 100644 --- a/packages/esm-commons-lib/src/workspace/ohri-workspace-utils.ts +++ b/packages/esm-commons-lib/src/workspace/ohri-workspace-utils.ts @@ -1,7 +1,7 @@ import { getSyncLifecycle } from '@openmrs/esm-framework'; import { BehaviorSubject } from 'rxjs'; import { closeWorkspace, launchPatientWorkspace, registerWorkspace } from '@openmrs/esm-patient-common-lib'; -import { OHRIForm, SessionMode } from '@openmrs/openmrs-form-engine-lib'; +import { FormEngine, SessionMode } from '@openmrs/openmrs-form-engine-lib'; export interface WorkspaceContextProps { title: string; encounterUuid?: string; @@ -30,7 +30,7 @@ export const launchOHRIWorkSpace = (props: WorkspaceContextProps) => { name: workspaceName, title: props.title, preferredWindowSize: props.screenSize, - load: getSyncLifecycle(OHRIForm, { + load: getSyncLifecycle(FormEngine, { featureName: 'ohri-forms-workspace-item', moduleName: props.moduleName, }), diff --git a/packages/esm-form-render-app/package.json b/packages/esm-form-render-app/package.json index e9db3380f..1b2ba25f5 100644 --- a/packages/esm-form-render-app/package.json +++ b/packages/esm-form-render-app/package.json @@ -39,7 +39,7 @@ }, "dependencies": { "@carbon/react": "^1.13.0", - "@openmrs/openmrs-form-engine-lib": "next", + "@openmrs/openmrs-form-engine-lib": "1.1.0-pre.723", "ace-builds": "^1.4.12", "react-ace": "^9.4.4" }, diff --git a/packages/esm-form-render-app/src/render/forms-render-test.component.tsx b/packages/esm-form-render-app/src/render/forms-render-test.component.tsx index bd35e63a9..1fc3442ba 100644 --- a/packages/esm-form-render-app/src/render/forms-render-test.component.tsx +++ b/packages/esm-form-render-app/src/render/forms-render-test.component.tsx @@ -4,7 +4,7 @@ import styles from './form-render.scss'; import { Run, Maximize, UserData } from '@carbon/react/icons'; import AceEditor from 'react-ace'; import 'ace-builds/webpack-resolver'; -import { applyFormIntent, loadSubforms, OHRIForm, OHRIFormSchema } from '@openmrs/openmrs-form-engine-lib'; +import { applyFormIntent, loadSubforms, FormEngine, FormSchema } from '@openmrs/openmrs-form-engine-lib'; import { useTranslation } from 'react-i18next'; import { ConfigObject, useConfig, openmrsFetch } from '@openmrs/esm-framework'; import { handleFormValidation } from '../form-validator'; @@ -13,7 +13,7 @@ function FormRenderTest() { const { t } = useTranslation(); const headerTitle = t('formRenderTestTitle', 'Form Render Test'); const { patientUuid, dataTypeToRenderingMap } = useConfig() as ConfigObject; - const [formInput, setFormInput] = useState(); + const [formInput, setFormInput] = useState(); const [formIntents, setFormIntents] = useState([]); const [isIntentsDropdownDisabled, setIsIntentsDropdownDisabled] = useState(true); const [selectedFormIntent, setSelectedFormIntent] = useState(''); @@ -267,7 +267,7 @@ function FormRenderTest() { {isSchemaLoaded ? (
- a { + background-color: #cecece !important; + color: #161616 !important; + border-left-color: var(--brand-01) !important; + font: bolder; +} + +.hide { + display: none; +} diff --git a/packages/esm-opd-app/src/declarations.d.tsx b/packages/esm-opd-app/src/declarations.d.tsx new file mode 100644 index 000000000..875203d56 --- /dev/null +++ b/packages/esm-opd-app/src/declarations.d.tsx @@ -0,0 +1,2 @@ +declare module '*.css'; +declare module '*.scss'; diff --git a/packages/esm-opd-app/src/index.ts b/packages/esm-opd-app/src/index.ts new file mode 100644 index 000000000..14733e5e2 --- /dev/null +++ b/packages/esm-opd-app/src/index.ts @@ -0,0 +1,29 @@ +import { defineConfigSchema, getAsyncLifecycle, getSyncLifecycle, registerFeatureFlag } from '@openmrs/esm-framework'; +import { opdFolderMeta, activeVisitDashboardMeta } from './dashboard.meta'; +import { createDashboardGroup, createDashboardLink } from '@openmrs/esm-patient-common-lib'; +import { configSchema } from './config-schema'; + +export const importTranslation = require.context('../translations', false, /.json$/, 'lazy'); + +require('./root.scss'); + +export const moduleName = '@ohri/openmrs-esm-ohri-opd-app'; + +const options = { + featureName: 'ohri-opd', + moduleName, +}; + +export function startupApp() { + defineConfigSchema(moduleName, configSchema); +} + +export const opdPatientChartDashboard = getSyncLifecycle(createDashboardGroup(opdFolderMeta), options); + +export const activeVisitDashboardLink = getSyncLifecycle( + createDashboardLink({ + ...activeVisitDashboardMeta, + moduleName, + }), + { featureName: 'active-visit', moduleName }, +); diff --git a/packages/esm-opd-app/src/root.scss b/packages/esm-opd-app/src/root.scss new file mode 100644 index 000000000..c504fa3d9 --- /dev/null +++ b/packages/esm-opd-app/src/root.scss @@ -0,0 +1,116 @@ +@use '@carbon/styles/scss/spacing'; +@use '@carbon/styles/scss/type'; +@import '~@openmrs/esm-styleguide/src/vars'; + +$ui-01: #f4f4f4; +$ui-02: #ffffff; +$ui-03: #e0e0e0; +$ui-05: #161616; +$ui-background: #ffffff; +$color-gray-70: #525252; +$color-blue-60-2: #0f62fe; +$color-yellow-50: #feecae; +$inverse-support-03: #f1c21b; +$warning-background: #fff8e1; +$openmrs-background-grey: #f4f4f4; +$danger: #da1e28; +$interactive-01: #0f62fe; +$brand-teal-01: #3197D9; +$ohri-input-width: 22.313rem; +$ohri-home-background: #ededed; +$button-primary: #0078A6; + +.productiveHeading01 { + @include type.type-style("heading-compact-01"); +} + +.productiveHeading02 { + @include type.type-style("heading-compact-02"); +} + +.productiveHeading03 { + @include type.type-style("heading-03"); +} + +.productiveHeading04 { + @include type.type-style("heading-04"); +} + +.productiveHeading05 { + @include type.type-style("heading-05"); +} + +.productiveHeading06 { + @include type.type-style("heading-06"); +} + +.bodyShort01 { + @include type.type-style("body-compact-01"); +} + +.helperText01 { + @include type.type-style("helper-text-01"); +} + +.bodyShort02 { + @include type.type-style("body-compact-02"); +} + +.bodyLong01 { + @include type.type-style("body-01"); +} + +.bodyLong02 { + @include type.type-style("body-02"); +} + +.label01 { + @include type.type-style("label-01"); +} + +.text02 { + color: $text-02; +} + +aside { + background-color: $ui-02 !important; +} + +// Login Overrides + +div[class*='-esm-login__styles__center'] > img { + width: 140px; // design has 120px +} + +:global(.tab-12rem) > button { + width: 12rem !important; +} + +:global(.tab-14rem) > button { + width: 14rem !important; +} + +:global(.tab-16rem) > button { + width: 16rem !important; +} + +:global(.cds--overflow-menu) > div { + width: 15rem !important; +} + +nav :global(.cds--accordion__title) { + color: #525252; + font-weight: 600 !important; +} + +nav :global(.cds--accordion__content) { + padding-bottom: 0 !important; + padding-top: 0 !important; +} + +nav :global(.cds--accordion__content) > a { + background-color: #cecece !important; + color: #161616 !important; + border-left-color: var(--brand-01) !important; + font: bolder; +} diff --git a/packages/esm-opd-app/src/routes.json b/packages/esm-opd-app/src/routes.json new file mode 100644 index 000000000..a2c331b41 --- /dev/null +++ b/packages/esm-opd-app/src/routes.json @@ -0,0 +1,38 @@ +{ + "$schema": "https://json.openmrs.org/routes.schema.json", + "backendDependencies": { + "webservices.rest": "^2.24.0" + }, + "pages": [ + ], + "extensions": [ + { + "name": "opd", + "slot": "patient-chart-dashboard-slot", + "component": "opdPatientChartDashboard", + "order": 25, + "meta": { + "path": "OPD", + "slot": "opd-slot", + "isExpanded": false + } + }, + { + "name": "active-visit-summary-dashboard", + "component": "activeVisitDashboardLink", + "slot": "opd-slot", + "meta": { + "slot": "patient-chart-active-visit-dashboard-slot", + "columns": 1, + "path": "Active Visits" + } + }, + { + "name": "opd-summary-ext", + "slot": "opd-summary-slot", + "component": "opdSummaryDashboard" + } + + + ] +} diff --git a/packages/esm-opd-app/src/setupTests.ts b/packages/esm-opd-app/src/setupTests.ts new file mode 100644 index 000000000..3abed9870 --- /dev/null +++ b/packages/esm-opd-app/src/setupTests.ts @@ -0,0 +1,15 @@ +import '@testing-library/jest-dom'; + +declare global { + interface Window { + openmrsBase: string; + spaBase: string; + } +} + +const { getComputedStyle } = window; +window.getComputedStyle = (element) => getComputedStyle(element); +window.openmrsBase = '/openmrs'; +window.spaBase = '/spa'; +window.getOpenmrsSpaBase = () => '/openmrs/spa/'; +window.HTMLElement.prototype.scrollIntoView = jest.fn(); diff --git a/packages/esm-opd-app/translations/en.json b/packages/esm-opd-app/translations/en.json new file mode 100644 index 000000000..0967ef424 --- /dev/null +++ b/packages/esm-opd-app/translations/en.json @@ -0,0 +1 @@ +{} diff --git a/packages/esm-opd-app/tsconfig.json b/packages/esm-opd-app/tsconfig.json new file mode 100644 index 000000000..db240ff83 --- /dev/null +++ b/packages/esm-opd-app/tsconfig.json @@ -0,0 +1,28 @@ +{ + "compilerOptions": { + "esModuleInterop": true, + "module": "esnext", + "allowSyntheticDefaultImports": true, + "jsx": "react", + "skipLibCheck": true, + "moduleResolution": "node", + "lib": [ + "dom", + "es5", + "scripthost", + "es2015", + "es2015.promise", + "es2016.array.include", + "es2018", + "es2020" + ], + "resolveJsonModule": true, + "noEmit": true, + "target": "esnext", + "paths": { + "@openmrs/*": [ + "./node_modules/@openmrs/*" + ] + } + } +} diff --git a/packages/esm-opd-app/webpack.config.js b/packages/esm-opd-app/webpack.config.js new file mode 100644 index 000000000..b15408968 --- /dev/null +++ b/packages/esm-opd-app/webpack.config.js @@ -0,0 +1,17 @@ +const path = require('path'); +const config = (module.exports = require('openmrs/default-webpack-config')); +config.scriptRuleConfig.exclude = + path.sep == '/' + ? /(node_modules[^\/@openmrs\/esm\-patient\-common\-lib])/ + : /(node_modules[^\\@openmrs\/esm\-patient\-common\-lib])/; + +// Temporary fix to resolve webpack issues with imports from the commons library +config.overrides.resolve = { + extensions: ['.tsx', '.ts', '.jsx', '.js', '.scss'], + alias: { + '@openmrs/esm-framework': '@openmrs/esm-framework/src/internal', + '@ohri/openmrs-esm-ohri-commons-lib': path.resolve(__dirname, '../esm-commons-lib/src/index'), + '@openmrs/openmrs-form-engine-lib': '@openmrs/openmrs-form-engine-lib/src/index', + }, +}; +module.exports = config; diff --git a/yarn.lock b/yarn.lock index a539ba384..6c60ef592 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2721,6 +2721,29 @@ __metadata: languageName: node linkType: hard +"@ohri/esm-patient-chart-app@npm:7.1.0-5": + version: 7.1.0-5 + resolution: "@ohri/esm-patient-chart-app@npm:7.1.0-5" + dependencies: + lodash-es: "npm:^4.17.21" + uuid: "npm:^8.3.2" + peerDependencies: + "@carbon/react": 1.x + "@openmrs/esm-framework": 5.x + "@openmrs/esm-patient-common-lib": "*" + dayjs: 1.x + lodash-es: 4.x + react: 18.x + react-i18next: 11.x + react-router-dom: 6.x + rxjs: 6.x + single-spa: 6.x + single-spa-react: 6.x + swr: 2.x + checksum: 1b62aeb212cb53b210be0420ddc6682b2d1e0910ab555e4347e00655c8df1bc04f1b2e0b72a58405ad2a82547b3e5f868de3fa92f2ab395c82da2d02367990a6 + languageName: node + linkType: hard + "@ohri/openmrs-esm-ohri-cervical-cancer-app@workspace:packages/esm-cervical-cancer-app": version: 0.0.0-use.local resolution: "@ohri/openmrs-esm-ohri-cervical-cancer-app@workspace:packages/esm-cervical-cancer-app" @@ -2742,7 +2765,7 @@ __metadata: resolution: "@ohri/openmrs-esm-ohri-commons-lib@workspace:packages/esm-commons-lib" dependencies: "@carbon/react": "npm:^1.13.0" - "@openmrs/openmrs-form-engine-lib": "npm:next" + "@openmrs/openmrs-form-engine-lib": "npm:1.1.0-pre.723" enzyme: "npm:^3.11.0" enzyme-adapter-react-16: "npm:^1.15.6" fuzzy: "npm:^0.1.3" @@ -2799,7 +2822,7 @@ __metadata: resolution: "@ohri/openmrs-esm-ohri-form-render-app@workspace:packages/esm-form-render-app" dependencies: "@carbon/react": "npm:^1.13.0" - "@openmrs/openmrs-form-engine-lib": "npm:next" + "@openmrs/openmrs-form-engine-lib": "npm:1.1.0-pre.723" ace-builds: "npm:^1.4.12" react-ace: "npm:^9.4.4" webpack: "npm:^5.88.2" @@ -2828,12 +2851,29 @@ __metadata: languageName: unknown linkType: soft +"@ohri/openmrs-esm-ohri-opd-app@workspace:packages/esm-opd-app": + version: 0.0.0-use.local + resolution: "@ohri/openmrs-esm-ohri-opd-app@workspace:packages/esm-opd-app" + dependencies: + "@carbon/react": "npm:^1.13.0" + "@ohri/esm-patient-chart-app": "npm:7.1.0-5" + webpack: "npm:^5.88.2" + peerDependencies: + "@ohri/esm-patient-chart-app": 7.1.0-5 + "@openmrs/esm-framework": 5.x + "@openmrs/esm-patient-common-lib": 6.x + dayjs: 1.x + react: 18.x + react-i18next: 11.x + swr: 2.x + languageName: unknown + linkType: soft + "@ohri/openmrs-esm-ohri-pmtct@workspace:packages/esm-ohri-pmtct-app": version: 0.0.0-use.local resolution: "@ohri/openmrs-esm-ohri-pmtct@workspace:packages/esm-ohri-pmtct-app" dependencies: "@carbon/react": "npm:^1.13.0" - "@openmrs/openmrs-form-engine-lib": "npm:next" webpack: "npm:^5.88.2" peerDependencies: "@openmrs/esm-framework": 5.x @@ -3208,32 +3248,31 @@ __metadata: languageName: node linkType: hard -"@openmrs/openmrs-form-engine-lib@npm:next": - version: 1.0.0-pre.544 - resolution: "@openmrs/openmrs-form-engine-lib@npm:1.0.0-pre.544" +"@openmrs/openmrs-form-engine-lib@npm:1.1.0-pre.723": + version: 1.1.0-pre.723 + resolution: "@openmrs/openmrs-form-engine-lib@npm:1.1.0-pre.723" dependencies: ace-builds: "npm:^1.4.12" - enzyme: "npm:^3.11.0" - enzyme-adapter-react-16: "npm:^1.15.6" + classnames: "npm:^2.5.1" + dayjs: "npm:1.x" formik: "npm:^2.2.6" - jest-coverage-badges: "npm:^1.0.0" lodash-es: "npm:^4.17.15" - react-anchor-link-smooth-scroll: "npm:^1.0.12" react-error-boundary: "npm:^4.0.11" react-markdown: "npm:^7.1.0" - react-scroll: "npm:^1.8.2" - react-test-renderer: "npm:^16.9.0" react-waypoint: "npm:^10.3.0" react-webcam: "npm:^7.1.1" - semver: "npm:^7.3.5" yup: "npm:^0.29.1" peerDependencies: "@carbon/react": 1.x "@openmrs/esm-framework": 5.x + "@openmrs/esm-patient-common-lib": 7.x + dayjs: 1.x + i18next: 23.x react: 18.x react-i18next: 11.x rxjs: 6.x - checksum: 47b0c8579c345e5b85ab2e5ca1d6f91cf94f861c023fd1f3fc967dd2865353c0745cb99e1c0256a606a2b83a85ba5905e305ca2772f9c1850513beb0367d6e11 + swr: 2.x + checksum: 015d04dd06626191a084f9fefad0113f2ecbf16f0a8b46fadc4301458785978264c49350ecd9faa4bcfe78c9f723d5241a76b708d3943c53bbea3a5cf1c4cf78 languageName: node linkType: hard @@ -6764,6 +6803,13 @@ __metadata: languageName: node linkType: hard +"classnames@npm:^2.5.1": + version: 2.5.1 + resolution: "classnames@npm:2.5.1" + checksum: 58eb394e8817021b153bb6e7d782cfb667e4ab390cb2e9dac2fc7c6b979d1cc2b2a733093955fc5c94aa79ef5c8c89f11ab77780894509be6afbb91dddd79d15 + languageName: node + linkType: hard + "clean-css@npm:^5.2.2": version: 5.3.1 resolution: "clean-css@npm:5.3.1" @@ -7970,6 +8016,13 @@ __metadata: languageName: node linkType: hard +"dayjs@npm:1.x, dayjs@npm:^1.11.10": + version: 1.11.10 + resolution: "dayjs@npm:1.11.10" + checksum: 27e8f5bc01c0a76f36c656e62ab7f08c2e7b040b09e613cd4844abf03fb258e0350f0a83b02c887b84d771c1f11e092deda0beef8c6df2a1afbc3f6c1fade279 + languageName: node + linkType: hard + "dayjs@npm:^1.10.4, dayjs@npm:^1.10.7": version: 1.11.6 resolution: "dayjs@npm:1.11.6" @@ -7977,13 +8030,6 @@ __metadata: languageName: node linkType: hard -"dayjs@npm:^1.11.10": - version: 1.11.10 - resolution: "dayjs@npm:1.11.10" - checksum: 27e8f5bc01c0a76f36c656e62ab7f08c2e7b040b09e613cd4844abf03fb258e0350f0a83b02c887b84d771c1f11e092deda0beef8c6df2a1afbc3f6c1fade279 - languageName: node - linkType: hard - "de-indent@npm:^1.0.2": version: 1.0.2 resolution: "de-indent@npm:1.0.2" @@ -11296,7 +11342,7 @@ __metadata: languageName: node linkType: hard -"jest-coverage-badges@npm:1.1.2, jest-coverage-badges@npm:^1.0.0": +"jest-coverage-badges@npm:1.1.2": version: 1.1.2 resolution: "jest-coverage-badges@npm:1.1.2" dependencies: @@ -14766,13 +14812,6 @@ __metadata: languageName: node linkType: hard -"react-anchor-link-smooth-scroll@npm:^1.0.12": - version: 1.0.12 - resolution: "react-anchor-link-smooth-scroll@npm:1.0.12" - checksum: ca4f4a12eca0d657b5d1a96980b7b27fd94b8a896dc426d425364069f001d92c4c596936ba7b526aa26535623216e823792dee86470d5e798ef54110d5a0e0b8 - languageName: node - linkType: hard - "react-dom@npm:^18.1.0, react-dom@npm:^18.2.0": version: 18.2.0 resolution: "react-dom@npm:18.2.0" @@ -14891,20 +14930,7 @@ __metadata: languageName: node linkType: hard -"react-scroll@npm:^1.8.2": - version: 1.8.8 - resolution: "react-scroll@npm:1.8.8" - dependencies: - lodash.throttle: "npm:^4.1.1" - prop-types: "npm:^15.7.2" - peerDependencies: - react: ^15.5.4 || ^16.0.0 || ^17.0.0 || ^18.0.0 - react-dom: ^15.5.4 || ^16.0.0 || ^17.0.0 || ^18.0.0 - checksum: e15900dfaef77aa186e58a427e8128167c6293a06e2fe2fc06d230f6767c8e4b463d72211773de14fde91ae1402aa457e2b80fb4b4dd915330fb2bbc7d14ddb6 - languageName: node - linkType: hard - -"react-test-renderer@npm:^16.0.0-0, react-test-renderer@npm:^16.9.0": +"react-test-renderer@npm:^16.0.0-0": version: 16.14.0 resolution: "react-test-renderer@npm:16.14.0" dependencies: