@openmrs/esm-patient-tests-app 12.3.5-pre.12668 → 13.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,4 +6,4 @@
6
6
  │ 3538.css (318.441 KiB)
7
7
  
8
8
 
9
- Rspack compiled with 1 warning in 28.14 s
9
+ Rspack compiled with 1 warning in 36.39 s
File without changes
@@ -0,0 +1,144 @@
1
+
2
+  RUN  v4.1.6 /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app
3
+
4
+ ✓ src/test-results/loadPatientTestData/helpers.test.ts (35 tests) 95ms
5
+ ✓ src/test-results/filter/filter-context.test.tsx (24 tests) 1433ms
6
+ ✓ src/test-results/filter/filter-reducer.test.ts (25 tests) 74ms
7
+ ✓ src/test-results/filter/filter-set.test.tsx (17 tests) 3437ms
8
+ ✓ should render all configured test panels with their tests  421ms
9
+ ✓ should toggle individual test checkbox when clicked  310ms
10
+ ✓ should show parent checkbox in indeterminate state when some children are checked  354ms
11
+ ✓ should check parent checkbox when all children are checked  564ms
12
+ ✓ should toggle all children when parent checkbox is clicked  433ms
13
+ ✓ src/test-results/grouped-timeline/useObstreeData.test.ts (15 tests) 731ms
14
+ ✓ src/test-results/grouped-timeline/grouped-timeline.test.tsx (9 tests) 827ms
15
+ stderr | src/test-orders/add-test-order/add-test-order.test.tsx > AddLabOrder > happy path fill and submit form
16
+ Warning: `value` prop on `input` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.
17
+ at input
18
+ at div
19
+ at div
20
+ at div
21
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/TextInput/TextInput.js:29:3
22
+ at Controller (file:///home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/react-hook-form/dist/index.esm.mjs:560:37)
23
+ at div
24
+ at div
25
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Layer/index.js:32:5
26
+ at InputWrapper (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-orders/add-test-order/test-order-form.component.tsx:516:25)
27
+ at div
28
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/Column.js:144:7
29
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/Column.js:41:3
30
+ at div
31
+ at GridSettings (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/GridContext.js:22:3)
32
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/CSSGrid.js:19:3
33
+ at Grid (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/Grid.js:17:31)
34
+ at div
35
+ at form
36
+ at Form (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Form/Form.js:19:3)
37
+ at LabOrderForm (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-orders/add-test-order/test-order-form.component.tsx:30:25)
38
+ at div
39
+ at div
40
+ at Mock (file:///home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@vitest/spy/dist/index.js:332:34)
41
+ at AddLabOrder (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-orders/add-test-order/add-test-order.component.tsx:21:24)
42
+ at AddTestOrderWorkspace (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-orders/add-test-order/add-test-order.workspace.tsx:15:46)
43
+
44
+ stderr | src/test-orders/add-test-order/add-test-order.test.tsx > AddLabOrder > happy path fill and submit form
45
+ Warning: A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://reactjs.org/link/controlled-components
46
+ at input
47
+ at div
48
+ at div
49
+ at div
50
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/TextInput/TextInput.js:29:3
51
+ at Controller (file:///home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/react-hook-form/dist/index.esm.mjs:560:37)
52
+ at div
53
+ at div
54
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Layer/index.js:32:5
55
+ at InputWrapper (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-orders/add-test-order/test-order-form.component.tsx:516:25)
56
+ at div
57
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/Column.js:144:7
58
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/Column.js:41:3
59
+ at div
60
+ at GridSettings (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/GridContext.js:22:3)
61
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/CSSGrid.js:19:3
62
+ at Grid (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Grid/Grid.js:17:31)
63
+ at div
64
+ at form
65
+ at Form (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Form/Form.js:19:3)
66
+ at LabOrderForm (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-orders/add-test-order/test-order-form.component.tsx:30:25)
67
+ at div
68
+ at div
69
+ at Mock (file:///home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@vitest/spy/dist/index.js:332:34)
70
+ at AddLabOrder (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-orders/add-test-order/add-test-order.component.tsx:21:24)
71
+ at AddTestOrderWorkspace (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-orders/add-test-order/add-test-order.workspace.tsx:15:46)
72
+
73
+ ✓ src/test-orders/add-test-order/add-test-order.test.tsx (10 tests) 3658ms
74
+ ✓ happy path fill and submit form  1872ms
75
+ ✓ discarding a new order returns to test type search  379ms
76
+ ✓ preserves search term when navigating back from order form  421ms
77
+ stderr | src/test-results/tree-view/tree-view.test.tsx > TreeView > renders the tree view when test data is successfully fetched
78
+ Warning: Failed prop type: Invalid prop `children` supplied to `DataTable`, expected a ReactNode.
79
+ at DataTable (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/DataTable/DataTable.js:93:5)
80
+ at IndividualResultsTable (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/individual-results-table/individual-results-table.component.tsx:31:35)
81
+ at div
82
+ at div
83
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/Layer/index.js:32:5
84
+ at GroupedPanelsTables (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/tree-view/tree-view.component.tsx:25:32)
85
+ at div
86
+ at div
87
+ at TreeView (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/tree-view/tree-view.component.tsx:87:21)
88
+ at FilterProvider (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/filter/filter-context.tsx:82:27)
89
+
90
+ ✓ src/test-results/grouped-timeline/reference-range-helpers.test.ts (33 tests) 52ms
91
+ stderr | src/test-results/trendline/trendline.test.tsx > Trendline > renders chart and table toggle buttons when data is available
92
+ Warning: Failed prop type: Invalid prop `children` supplied to `DataTable`, expected a ReactNode.
93
+ at DataTable (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/DataTable/DataTable.js:93:5)
94
+ at CommonDataTable (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/overview/common-datatable.component.tsx:14:28)
95
+ at /home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/trendline/trendline.component.tsx:428:57
96
+ at div
97
+ at div
98
+ at Trendline (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/trendline/trendline.component.tsx:122:22)
99
+
100
+ ✓ src/test-results/trendline/trendline.test.tsx (6 tests) 1594ms
101
+ ✓ renders chart and table toggle buttons when data is available  839ms
102
+ ✓ toggles the results table visibility when the show results table button is clicked  312ms
103
+ ✓ src/test-results/tree-view/tree-view.test.tsx (9 tests) 9133ms
104
+ ✓ renders the tree view when test data is successfully fetched  1215ms
105
+ ✓ should show reset tree button in tablet overlay when tree is opened  1223ms
106
+ ✓ should show both reset and view buttons in overlay  1284ms
107
+ ✓ should reset filters when reset tree button is clicked  1695ms
108
+ ✓ should show filtered results count in view button  2233ms
109
+ ✓ should close overlay when view results button is clicked  967ms
110
+ ✓ src/test-results/results-viewer/results-viewer.extension.test.tsx (3 tests) 2291ms
111
+ ✓ should render the Tree wrapper component component  2054ms
112
+ stderr | src/test-results/individual-results-table-tablet/individual-results-table-tablet.test.tsx > PanelView > renders the panel view when data is loaded
113
+ Warning: Failed prop type: Invalid prop `children` supplied to `DataTable`, expected a ReactNode.
114
+ at DataTable (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/DataTable/DataTable.js:93:5)
115
+ at LabSetPanel (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/individual-results-table-tablet/lab-set-panel.component.tsx:21:24)
116
+ at div
117
+ at IndividualResultsTableTablet (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/individual-results-table-tablet/individual-results-table-tablet.component.tsx:27:41)
118
+ at FilterProvider (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/filter/filter-context.tsx:82:27)
119
+
120
+ ✓ src/test-results/individual-results-table-tablet/individual-results-table-tablet.test.tsx (6 tests) 2051ms
121
+ ✓ filters the panel view when searching for a test  671ms
122
+ ✓ selecting a test opens the timeline view on tablet  622ms
123
+ stderr | src/test-results/individual-results-table-tablet/lab-set-panel.test.tsx > LabSetPanel > renders the panel header, columns, and observations when provided
124
+ Warning: Failed prop type: Invalid prop `children` supplied to `DataTable`, expected a ReactNode.
125
+ at DataTable (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/DataTable/DataTable.js:93:5)
126
+ at LabSetPanel (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/individual-results-table-tablet/lab-set-panel.component.tsx:21:24)
127
+
128
+ ✓ src/test-results/individual-results-table-tablet/lab-set-panel.test.tsx (4 tests) 1091ms
129
+ ✓ renders the panel header, columns, and observations when provided  484ms
130
+ ✓ src/test-orders/lab-order-basket-panel/lab-order-basket-panel.test.tsx (2 tests) 326ms
131
+ stderr | src/test-results/individual-results-table/individual-results-table.test.tsx > IndividualResultsTable > renders a tabular overview of the available test result data
132
+ Warning: Failed prop type: Invalid prop `children` supplied to `DataTable`, expected a ReactNode.
133
+ at DataTable (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/node_modules/@carbon/react/lib/components/DataTable/DataTable.js:93:5)
134
+ at IndividualResultsTable (/home/runner/work/openmrs-esm-patient-chart/openmrs-esm-patient-chart/packages/esm-patient-tests-app/src/test-results/individual-results-table/individual-results-table.component.tsx:31:35)
135
+
136
+ ✓ src/test-results/individual-results-table/individual-results-table.test.tsx (3 tests) 463ms
137
+ ✓ src/test-results/trendline/trendline-resource.test.tsx (3 tests) 16ms
138
+ ✓ src/test-results/trendline/range-selector.test.tsx (8 tests) 849ms
139
+
140
+  Test Files  17 passed (17)
141
+  Tests  212 passed (212)
142
+  Start at  09:15:30
143
+  Duration  77.02s (transform 18.16s, setup 6.00s, import 149.02s, tests 28.12s, environment 26.01s)
144
+
File without changes
package/dist/5390.js CHANGED
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_openmrs_esm_patient_tests_app=globalThis.webpackChunk_openmrs_esm_patient_tests_app||[]).push([["5390"],{8447(e,t,r){r.d(t,{Lr:()=>o,Sq:()=>i}),r(5399),r(1619);var a=r(3660),n=r.n(a),s=r(3040),l=r(2664);function o(e){let{data:t,error:r,isLoading:a}=n()(e&&e.length>0?[`${l.restBaseUrl}/conceptreferences?v=custom:(uuid,display)`,e]:null,([e,t])=>(0,l.openmrsFetch)(e,{headers:{"Content-Type":"application/json"},body:{references:t},method:"POST"})),s=Object.values(t?.data??{}).map(e=>({uuid:e.uuid,display:e.display}));return r&&(0,l.showSnackbar)({title:r.name,subtitle:r.message,kind:"error"}),{orderReasons:s,isLoading:a}}let i=(e,t,r,a)=>{if("NEW"===e.action||"RENEW"===e.action)return{action:"NEW",type:"testorder",patient:t,careSetting:s.careSettingUuid,orderer:a,encounter:r,concept:e.testType.conceptUuid,instructions:e.instructions,orderReason:e.orderReason,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};if("REVISE"===e.action)return{action:"REVISE",type:"testorder",patient:t,careSetting:s.careSettingUuid,orderer:a,encounter:r,concept:e.testType.conceptUuid,instructions:e.instructions,orderReason:e.orderReason,previousOrder:e.previousOrder,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};if("DISCONTINUE"===e.action)return{action:"DISCONTINUE",type:"testorder",patient:t,careSetting:s.careSettingUuid,orderer:a,encounter:r,concept:e.testType.conceptUuid,orderReason:e.orderReason,previousOrder:e.previousOrder,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};throw Error(`Unknown order action: ${e.action}.`)}},6845(e,t,r){r.r(t),r.d(t,{LabOrderBasketPanelExtension:()=>E,default:()=>h});var a=r(5399),n=r.n(a),s=r(3373),l=r.n(s),o=r(7807),i=r(324),c=r(2664),m=r(3040);let d="-esm-patient-tests__lab-order-basket-item-tile__label01___Dfmuh";function _({orderBasketItem:e,onItemClick:t,onRemoveClick:r}){let{t:s}=(0,o.useTranslation)(),m="tablet"===(0,c.useLayoutType)(),p=(0,a.useRef)(!0),b=(0,a.useMemo)(()=>({orderItemUuid:e.testType.conceptUuid}),[e]),E=n().createElement("div",null,n().createElement("div",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderBasketItemTile___8jOXV"},n().createElement("div",null,n().createElement(u,{orderBasketItem:e}),n().createElement("br",null),n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__name___9MUlC"},e.testType?.label),n().createElement("span",{className:d},!!e.orderError&&n().createElement(n().Fragment,null,n().createElement("br",null),n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderErrorText___YbRGu"},n().createElement(c.WarningIcon,{size:16}),"\xa0",n().createElement("span",{className:d},s("error","Error").toUpperCase())," \xa0",e.orderError.responseBody?.error?.message??e.orderError.message)))),n().createElement(i.IconButton,{size:m?"lg":"sm",kind:"ghost",label:s("removeFromBasket","Remove from basket"),onClick:()=>{p.current=!1,r()},align:"left"},n().createElement(c.TrashCanIcon,{size:16,className:"-esm-patient-tests__lab-order-basket-item-tile__removeButton___kTqlj"}))),n().createElement(c.ExtensionSlot,{name:"order-item-additional-info-slot",state:b,className:"-esm-patient-tests__lab-order-basket-item-tile__additionalInfoContainer___9X+7R"}));return"DISCONTINUE"===e.action?n().createElement(i.Tile,null,E):n().createElement(i.ClickableTile,{role:"listitem",className:l()({"-esm-patient-tests__lab-order-basket-item-tile__clickableTileTablet___o1Hrc":m,"-esm-patient-tests__lab-order-basket-item-tile__clickableTileDesktop___8QnNb":!m}),onClick:()=>p.current&&t()},E)}function u({orderBasketItem:e}){let{t}=(0,o.useTranslation)();if(e.isOrderIncomplete)return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionIncompleteLabel___6LXS7",role:"status","aria-atomic":!0,"aria-label":t("orderActionIncomplete","Incomplete")},t("orderActionIncomplete","Incomplete"));switch(e.action){case"NEW":return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionNewLabel___vK+Gt",role:"status","aria-atomic":!0,"aria-label":t("orderActionNew","New")},t("orderActionNew","New"));case"RENEW":return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionRenewLabel___qdKEx",role:"status","aria-atomic":!0,"aria-label":t("orderActionRenew","Renew")},t("orderActionRenew","Renew"));case"REVISE":return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionReviseLabel___gWQzy",role:"status","aria-atomic":!0,"aria-label":t("orderActionRevise","Modify")},t("orderActionRevise","Modify"));case"DISCONTINUE":return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionDiscontinueLabel___CZQOK",role:"status","aria-atomic":!0,"aria-label":t("orderActionDiscontinue","Discontinue")},t("orderActionDiscontinue","Discontinue"));default:return n().createElement(n().Fragment,null)}}var p=r(8447);let b=function({isTablet:e}){let t=e?40:24;return n().createElement("svg",{width:t,height:t,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n().createElement("g",{clipPath:"url(#clip0_lab_icon)"},n().createElement("path",{d:"M24 0H0V24H24V0Z",fill:"#E8DAFF"}),n().createElement("path",{d:"M17.6157 15.8091L14 10.8374V6H15V5H9V6H10V10.8374L6.3843 15.8091C5.9398 16.4203 5.87585 17.2292 6.2188 17.9026C6.56175 18.576 7.25358 19 8.0093 19H15.9907C16.7464 19 17.4383 18.576 17.7812 17.9026C18.1242 17.2292 18.0602 16.4203 17.6157 15.8091ZM11 11.1626V6H13V11.1626L14.3364 13H9.6636L11 11.1626ZM15.9907 18H8.0093C7.62971 17.9999 7.28226 17.7868 7.10998 17.4486C6.93771 17.1103 6.96973 16.704 7.19285 16.3969L8.9363 14H15.0637L16.8072 16.3969C17.0303 16.704 17.0623 17.1103 16.89 17.4486C16.7178 17.7868 16.3703 17.9999 15.9907 18Z",fill:"#6929C4"})),n().createElement("defs",null,n().createElement("clipPath",{id:"clip0_lab_icon"},n().createElement("rect",{width:t,height:t,fill:"white"}))))};function E({patient:e,launchLabOrderForm:t}){let{orders:r,additionalTestOrderTypes:s,orderTypeUuid:l}=(0,c.useConfig)(),{t:i}=(0,o.useTranslation)(),m=[{label:i("labOrders","Lab orders"),orderTypeUuid:r.labOrderTypeUuid,orderableConceptSets:r.labOrderableConcepts,icon:"omrs-icon-lab-order"},...s];return(0,a.useEffect)(()=>{l!==r.labOrderTypeUuid&&console.warn("orderTypeUuid does not match orders.labOrderTypeUuid — order basket filtering may not work as expected")},[l,r.labOrderTypeUuid]),n().createElement(n().Fragment,null,m.map(r=>n().createElement(k,{key:r.orderTypeUuid,patient:e,...r,launchLabOrderForm:t})))}function k({orderTypeUuid:e,label:t,icon:r,patient:s,launchLabOrderForm:d}){let{t:u}=(0,o.useTranslation)(),E="tablet"===(0,c.useLayoutType)(),h=E?"md":"sm",g="omrs-icon-lab-order"===r,{orderType:N,isLoadingOrderType:I}=(0,m.useOrderType)(e),{orders:y,setOrders:C}=(0,m.useOrderBasket)(s,e,p.Sq),[T,f]=(0,a.useState)(y.length>0),{incompleteOrderBasketItems:v,newOrderBasketItems:O,renewedOrderBasketItems:R,revisedOrderBasketItems:w,discontinuedOrderBasketItems:D}=(0,a.useMemo)(()=>{let e=[],t=[],r=[],a=[],n=[];return y.forEach(s=>{s?.isOrderIncomplete?e.push(s):"NEW"===s.action?t.push(s):"RENEW"===s.action?r.push(s):"REVISE"===s.action?a.push(s):"DISCONTINUE"===s.action&&n.push(s)}),{incompleteOrderBasketItems:e,newOrderBasketItems:t,renewedOrderBasketItems:r,revisedOrderBasketItems:a,discontinuedOrderBasketItems:n}},[y]),S=(0,a.useCallback)(e=>{let t=[...y];t.splice(y.indexOf(e),1),C(t)},[y,C]);return((0,a.useEffect)(()=>{f(y.length>0)},[y]),I||N?.javaClassName!=="org.openmrs.TestOrder")?null:n().createElement(i.Tile,{className:l()("-esm-patient-tests__lab-order-basket-panel__tile___0vitU",E?"-esm-patient-tests__lab-order-basket-panel__tabletTile___mpruy":"-esm-patient-tests__lab-order-basket-panel__desktopTile___fOKyp",{"-esm-patient-tests__lab-order-basket-panel__collapsedTile___BtOnK":!T})},n().createElement("div",{className:l()(E?"-esm-patient-tests__lab-order-basket-panel__tabletContainer___NRpfV":"-esm-patient-tests__lab-order-basket-panel__desktopContainer___wfZni")},n().createElement("div",{className:"-esm-patient-tests__lab-order-basket-panel__iconAndLabel___-uoiF"},g?n().createElement(b,{isTablet:E}):n().createElement(c.MaybeIcon,{icon:r||"omrs-icon-generic-order-type",size:E?40:24}),n().createElement("h4",{className:"-esm-patient-tests__lab-order-basket-panel__heading___PdI8R"},`${t?u(t):N?.display} (${y.length})`)),n().createElement("div",{className:"-esm-patient-tests__lab-order-basket-panel__buttonContainer___vD3Cn"},n().createElement(i.Button,{className:"-esm-patient-tests__lab-order-basket-panel__addButton___KX4YN",iconDescription:"Add lab order",kind:"ghost",onClick:()=>d(e),renderIcon:e=>n().createElement(c.AddIcon,{size:16,...e}),size:h},u("add","Add")),n().createElement(i.Button,{className:"-esm-patient-tests__lab-order-basket-panel__chevron___xlnaA",disabled:0===y.length,hasIconOnly:!0,iconDescription:"View",kind:"ghost",onClick:()=>f(!T),renderIcon:e=>T?n().createElement(c.ChevronUpIcon,{size:16,...e}):n().createElement(c.ChevronDownIcon,{size:16,...e}),size:h},u("add","Add")))),T&&n().createElement(n().Fragment,null,y.length>0&&n().createElement(n().Fragment,null,v.length>0&&n().createElement(n().Fragment,null,v.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))),O.length>0&&n().createElement(n().Fragment,null,O.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))),R.length>0&&n().createElement(n().Fragment,null,R.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))),w.length>0&&n().createElement(n().Fragment,null,w.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))),D.length>0&&n().createElement(n().Fragment,null,D.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))))))}let h=E}}]);
1
+ "use strict";(globalThis.webpackChunk_openmrs_esm_patient_tests_app=globalThis.webpackChunk_openmrs_esm_patient_tests_app||[]).push([["5390"],{8447(e,t,r){r.d(t,{Lr:()=>o,Sq:()=>i}),r(5399),r(1619);var a=r(3660),n=r.n(a),s=r(6717),l=r(2664);function o(e){let{data:t,error:r,isLoading:a}=n()(e&&e.length>0?[`${l.restBaseUrl}/conceptreferences?v=custom:(uuid,display)`,e]:null,([e,t])=>(0,l.openmrsFetch)(e,{headers:{"Content-Type":"application/json"},body:{references:t},method:"POST"})),s=Object.values(t?.data??{}).map(e=>({uuid:e.uuid,display:e.display}));return r&&(0,l.showSnackbar)({title:r.name,subtitle:r.message,kind:"error"}),{orderReasons:s,isLoading:a}}let i=(e,t,r,a)=>{if("NEW"===e.action||"RENEW"===e.action)return{action:"NEW",type:"testorder",patient:t,careSetting:s.careSettingUuid,orderer:a,encounter:r,concept:e.testType.conceptUuid,instructions:e.instructions,orderReason:e.orderReason,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};if("REVISE"===e.action)return{action:"REVISE",type:"testorder",patient:t,careSetting:s.careSettingUuid,orderer:a,encounter:r,concept:e.testType.conceptUuid,instructions:e.instructions,orderReason:e.orderReason,previousOrder:e.previousOrder,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};if("DISCONTINUE"===e.action)return{action:"DISCONTINUE",type:"testorder",patient:t,careSetting:s.careSettingUuid,orderer:a,encounter:r,concept:e.testType.conceptUuid,orderReason:e.orderReason,previousOrder:e.previousOrder,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};throw Error(`Unknown order action: ${e.action}.`)}},6845(e,t,r){r.r(t),r.d(t,{LabOrderBasketPanelExtension:()=>E,default:()=>h});var a=r(5399),n=r.n(a),s=r(3373),l=r.n(s),o=r(7807),i=r(324),c=r(2664),m=r(6717);let d="-esm-patient-tests__lab-order-basket-item-tile__label01___Dfmuh";function _({orderBasketItem:e,onItemClick:t,onRemoveClick:r}){let{t:s}=(0,o.useTranslation)(),m="tablet"===(0,c.useLayoutType)(),p=(0,a.useRef)(!0),b=(0,a.useMemo)(()=>({orderItemUuid:e.testType.conceptUuid}),[e]),E=n().createElement("div",null,n().createElement("div",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderBasketItemTile___8jOXV"},n().createElement("div",null,n().createElement(u,{orderBasketItem:e}),n().createElement("br",null),n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__name___9MUlC"},e.testType?.label),n().createElement("span",{className:d},!!e.orderError&&n().createElement(n().Fragment,null,n().createElement("br",null),n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderErrorText___YbRGu"},n().createElement(c.WarningIcon,{size:16}),"\xa0",n().createElement("span",{className:d},s("error","Error").toUpperCase())," \xa0",e.orderError.responseBody?.error?.message??e.orderError.message)))),n().createElement(i.IconButton,{size:m?"lg":"sm",kind:"ghost",label:s("removeFromBasket","Remove from basket"),onClick:()=>{p.current=!1,r()},align:"left"},n().createElement(c.TrashCanIcon,{size:16,className:"-esm-patient-tests__lab-order-basket-item-tile__removeButton___kTqlj"}))),n().createElement(c.ExtensionSlot,{name:"order-item-additional-info-slot",state:b,className:"-esm-patient-tests__lab-order-basket-item-tile__additionalInfoContainer___9X+7R"}));return"DISCONTINUE"===e.action?n().createElement(i.Tile,null,E):n().createElement(i.ClickableTile,{role:"listitem",className:l()({"-esm-patient-tests__lab-order-basket-item-tile__clickableTileTablet___o1Hrc":m,"-esm-patient-tests__lab-order-basket-item-tile__clickableTileDesktop___8QnNb":!m}),onClick:()=>p.current&&t()},E)}function u({orderBasketItem:e}){let{t}=(0,o.useTranslation)();if(e.isOrderIncomplete)return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionIncompleteLabel___6LXS7",role:"status","aria-atomic":!0,"aria-label":t("orderActionIncomplete","Incomplete")},t("orderActionIncomplete","Incomplete"));switch(e.action){case"NEW":return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionNewLabel___vK+Gt",role:"status","aria-atomic":!0,"aria-label":t("orderActionNew","New")},t("orderActionNew","New"));case"RENEW":return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionRenewLabel___qdKEx",role:"status","aria-atomic":!0,"aria-label":t("orderActionRenew","Renew")},t("orderActionRenew","Renew"));case"REVISE":return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionReviseLabel___gWQzy",role:"status","aria-atomic":!0,"aria-label":t("orderActionRevise","Modify")},t("orderActionRevise","Modify"));case"DISCONTINUE":return n().createElement("span",{className:"-esm-patient-tests__lab-order-basket-item-tile__orderActionDiscontinueLabel___CZQOK",role:"status","aria-atomic":!0,"aria-label":t("orderActionDiscontinue","Discontinue")},t("orderActionDiscontinue","Discontinue"));default:return n().createElement(n().Fragment,null)}}var p=r(8447);let b=function({isTablet:e}){let t=e?40:24;return n().createElement("svg",{width:t,height:t,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n().createElement("g",{clipPath:"url(#clip0_lab_icon)"},n().createElement("path",{d:"M24 0H0V24H24V0Z",fill:"#E8DAFF"}),n().createElement("path",{d:"M17.6157 15.8091L14 10.8374V6H15V5H9V6H10V10.8374L6.3843 15.8091C5.9398 16.4203 5.87585 17.2292 6.2188 17.9026C6.56175 18.576 7.25358 19 8.0093 19H15.9907C16.7464 19 17.4383 18.576 17.7812 17.9026C18.1242 17.2292 18.0602 16.4203 17.6157 15.8091ZM11 11.1626V6H13V11.1626L14.3364 13H9.6636L11 11.1626ZM15.9907 18H8.0093C7.62971 17.9999 7.28226 17.7868 7.10998 17.4486C6.93771 17.1103 6.96973 16.704 7.19285 16.3969L8.9363 14H15.0637L16.8072 16.3969C17.0303 16.704 17.0623 17.1103 16.89 17.4486C16.7178 17.7868 16.3703 17.9999 15.9907 18Z",fill:"#6929C4"})),n().createElement("defs",null,n().createElement("clipPath",{id:"clip0_lab_icon"},n().createElement("rect",{width:t,height:t,fill:"white"}))))};function E({patient:e,launchLabOrderForm:t}){let{orders:r,additionalTestOrderTypes:s,orderTypeUuid:l}=(0,c.useConfig)(),{t:i}=(0,o.useTranslation)(),m=[{label:i("labOrders","Lab orders"),orderTypeUuid:r.labOrderTypeUuid,orderableConceptSets:r.labOrderableConcepts,icon:"omrs-icon-lab-order"},...s];return(0,a.useEffect)(()=>{l!==r.labOrderTypeUuid&&console.warn("orderTypeUuid does not match orders.labOrderTypeUuid — order basket filtering may not work as expected")},[l,r.labOrderTypeUuid]),n().createElement(n().Fragment,null,m.map(r=>n().createElement(k,{key:r.orderTypeUuid,patient:e,...r,launchLabOrderForm:t})))}function k({orderTypeUuid:e,label:t,icon:r,patient:s,launchLabOrderForm:d}){let{t:u}=(0,o.useTranslation)(),E="tablet"===(0,c.useLayoutType)(),h=E?"md":"sm",g="omrs-icon-lab-order"===r,{orderType:N,isLoadingOrderType:I}=(0,m.useOrderType)(e),{orders:y,setOrders:C}=(0,m.useOrderBasket)(s,e,p.Sq),[T,f]=(0,a.useState)(y.length>0),{incompleteOrderBasketItems:v,newOrderBasketItems:O,renewedOrderBasketItems:R,revisedOrderBasketItems:w,discontinuedOrderBasketItems:D}=(0,a.useMemo)(()=>{let e=[],t=[],r=[],a=[],n=[];return y.forEach(s=>{s?.isOrderIncomplete?e.push(s):"NEW"===s.action?t.push(s):"RENEW"===s.action?r.push(s):"REVISE"===s.action?a.push(s):"DISCONTINUE"===s.action&&n.push(s)}),{incompleteOrderBasketItems:e,newOrderBasketItems:t,renewedOrderBasketItems:r,revisedOrderBasketItems:a,discontinuedOrderBasketItems:n}},[y]),S=(0,a.useCallback)(e=>{let t=[...y];t.splice(y.indexOf(e),1),C(t)},[y,C]);return((0,a.useEffect)(()=>{f(y.length>0)},[y]),I||N?.javaClassName!=="org.openmrs.TestOrder")?null:n().createElement(i.Tile,{className:l()("-esm-patient-tests__lab-order-basket-panel__tile___0vitU",E?"-esm-patient-tests__lab-order-basket-panel__tabletTile___mpruy":"-esm-patient-tests__lab-order-basket-panel__desktopTile___fOKyp",{"-esm-patient-tests__lab-order-basket-panel__collapsedTile___BtOnK":!T})},n().createElement("div",{className:l()(E?"-esm-patient-tests__lab-order-basket-panel__tabletContainer___NRpfV":"-esm-patient-tests__lab-order-basket-panel__desktopContainer___wfZni")},n().createElement("div",{className:"-esm-patient-tests__lab-order-basket-panel__iconAndLabel___-uoiF"},g?n().createElement(b,{isTablet:E}):n().createElement(c.MaybeIcon,{icon:r||"omrs-icon-generic-order-type",size:E?40:24}),n().createElement("h4",{className:"-esm-patient-tests__lab-order-basket-panel__heading___PdI8R"},`${t?u(t):N?.display} (${y.length})`)),n().createElement("div",{className:"-esm-patient-tests__lab-order-basket-panel__buttonContainer___vD3Cn"},n().createElement(i.Button,{className:"-esm-patient-tests__lab-order-basket-panel__addButton___KX4YN",iconDescription:"Add lab order",kind:"ghost",onClick:()=>d(e),renderIcon:e=>n().createElement(c.AddIcon,{size:16,...e}),size:h},u("add","Add")),n().createElement(i.Button,{className:"-esm-patient-tests__lab-order-basket-panel__chevron___xlnaA",disabled:0===y.length,hasIconOnly:!0,iconDescription:"View",kind:"ghost",onClick:()=>f(!T),renderIcon:e=>T?n().createElement(c.ChevronUpIcon,{size:16,...e}):n().createElement(c.ChevronDownIcon,{size:16,...e}),size:h},u("add","Add")))),T&&n().createElement(n().Fragment,null,y.length>0&&n().createElement(n().Fragment,null,v.length>0&&n().createElement(n().Fragment,null,v.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))),O.length>0&&n().createElement(n().Fragment,null,O.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))),R.length>0&&n().createElement(n().Fragment,null,R.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))),w.length>0&&n().createElement(n().Fragment,null,w.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))),D.length>0&&n().createElement(n().Fragment,null,D.map(t=>n().createElement(_,{key:t.uuid,onItemClick:()=>d(e,t),onRemoveClick:()=>S(t),orderBasketItem:t}))))))}let h=E}}]);
package/dist/58.js CHANGED
@@ -1 +1 @@
1
- "use strict";(globalThis.webpackChunk_openmrs_esm_patient_tests_app=globalThis.webpackChunk_openmrs_esm_patient_tests_app||[]).push([["58"],{4593(e,t,r){r.d(t,{A:()=>f});var s=r(5399),a=r.n(s),n=r(3373),l=r.n(n),o=r(4388),i=r(7807),c=r(2664),d=r(3040),u=r(324),m=r(824),p=r(4049),_=r(6195),h=r(8447);let y={orderForm:"-esm-patient-tests__test-order-form__orderForm___ggdix",form:"-esm-patient-tests__test-order-form__form___Wcdea",gridRow:"-esm-patient-tests__test-order-form__gridRow___gSHy3",field:"-esm-patient-tests__test-order-form__field___pe59B",buttonSet:"-esm-patient-tests__test-order-form__buttonSet___XhC4T",testTypeLabel:"-esm-patient-tests__test-order-form__testTypeLabel___VjLRX",testType:"-esm-patient-tests__test-order-form__testType___rxTdd"};function E({initialOrder:e,orderToEditOrdererUuid:t,closeWorkspace:r,onCancel:n,orderTypeUuid:o,setHasUnsavedChanges:b,patient:g}){let{t:S}=(0,i.useTranslation)(),C="tablet"===(0,c.useLayoutType)(),{orders:k,setOrders:R,clearOrders:v}=(0,d.useOrderBasket)(g,o,h.Sq),f=(0,c.useConfig)(),{orderType:N}=(0,d.useOrderType)(o),{mutate:O}=(0,d.useMutatePatientOrders)(g.id),D=(0,s.useMemo)(()=>(f.labTestsWithOrderReasons?.find(t=>t.labTestUuid===e?.testType?.conceptUuid)||{}).required,[f.labTestsWithOrderReasons,e?.testType?.conceptUuid]),U=(0,s.useMemo)(()=>_.z.object({instructions:_.z.string().nullish(),urgency:_.z.string().refine(e=>""!==e,{message:S("priorityRequired","Priority is required")}),accessionNumber:_.z.string().nullish(),testType:_.z.object({label:_.z.string(),conceptUuid:_.z.string()},{required_error:S("testTypeRequired","Test type is required"),invalid_type_error:S("testTypeRequired","Test type is required")}),orderReason:D?_.z.string({required_error:S("orderReasonRequired","Order reason is required")}).refine(e=>!!e,S("orderReasonRequired","Order reason is required")):_.z.string().optional(),scheduledDate:_.z.date({}).nullish()}).refine(e=>"ON_SCHEDULED_DATE"!==e.urgency||!!e.scheduledDate,{message:S("scheduledDateRequired","Scheduled date is required"),path:["scheduledDate"]}),[D,S]),{control:x,handleSubmit:I,formState:{errors:L,defaultValues:B,isDirty:w,isSubmitting:F},setValue:q,watch:z}=(0,m.mN)({mode:"all",resolver:(0,p.u)(U),defaultValues:{accessionNumber:null,...e}}),A="ON_SCHEDULED_DATE"===z("urgency"),W=(f.labTestsWithOrderReasons?.find(e=>e.labTestUuid===B?.testType?.conceptUuid)||{}).orderReasons||[],{orderReasons:H}=(0,h.Lr)(W),P=(0,s.useCallback)(e=>{let t=e?.inputValue?.toLowerCase(),r=e?.item?.display?.toLowerCase();return!t||r?.includes(t)},[]),M=(0,s.useCallback)(t=>{let s={...e,...t},a=[...k],n=k.find(e=>e.testType.conceptUuid===s.testType.conceptUuid&&e.action===s.action);n?a[k.indexOf(n)]={...s,isOrderIncomplete:!1}:a.push(s),R(a),r({discardUnsavedChanges:!0})},[k,R,r,e]),V=(0,s.useCallback)(s=>{let a={...e,...s};return(0,d.postOrder)((0,h.Sq)(a,g.id,a?.encounterUuid,t)).then(()=>{v(),O(),(0,d.showOrderSuccessToast)("@openmrs/esm-patient-tests-app",[a]),r({discardUnsavedChanges:!0})}).catch(e=>{(0,c.showSnackbar)({isLowContrast:!1,kind:"error",title:S("errorSavingLabOrder","Error saving lab order"),subtitle:e.message})})},[v,r,e,O,g.id,t,S]),G=(0,s.useCallback)(e=>t=>{"ON_SCHEDULED_DATE"!==t.target.value&&q("scheduledDate",null),e(t)},[q]);(0,s.useEffect)(()=>{b(w)},[w,b]);let j=C?"lg":"sm";return a().createElement(u.Form,{className:y.orderForm,onSubmit:I(e?.action==="REVISE"?V:M,e=>{console.error("Error in lab order form",e)}),id:"labOrderForm"},a().createElement("div",{className:y.form},a().createElement(c.ExtensionSlot,{name:"top-of-lab-order-form-slot",state:{order:e}}),a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:16,md:8,sm:4},a().createElement(T,null,a().createElement("label",{className:y.testTypeLabel},S("testType","Test type")),a().createElement("p",{className:y.testType},e?.testType?.label)))),f.showReferenceNumberField?a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:16,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"accessionNumber",control:x,render:({field:{onChange:e,onBlur:t,value:r}})=>a().createElement(u.TextInput,{id:"labReferenceNumberInput",invalid:!!L.accessionNumber,invalidText:L.accessionNumber?.message,labelText:S("referenceNumber","Reference number",{orderType:N?.display}),maxLength:150,onBlur:t,onChange:e,size:j,value:r})})))):null,a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:8,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"urgency",control:x,render:({field:e,fieldState:t})=>a().createElement(u.Select,{id:"priorityInput",...e,onChange:G(e.onChange),invalid:!!t?.error?.message,invalidText:t?.error?.message,labelText:S("priority","Priority")},d.priorityOptions.map(e=>a().createElement(u.SelectItem,{key:e.value,value:e.value,text:e.label})))})))),A&&a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:8,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"scheduledDate",control:x,render:({field:e,fieldState:t})=>a().createElement(c.OpenmrsDatePicker,{labelText:S("scheduledDate","Scheduled date"),id:"scheduledDate",...e,invalid:!!t?.error?.message,invalidText:t?.error?.message,minDate:new Date,size:j})})))),H.length>0&&a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:16,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"orderReason",control:x,render:({field:{onBlur:e,onChange:t}})=>a().createElement(u.ComboBox,{id:"orderReasonInput",invalid:!!L.orderReason,invalidText:L.orderReason?.message,items:H,itemToString:e=>e?.display,onBlur:e,onChange:({selectedItem:e})=>t(e?.uuid||""),selectedItem:null,shouldFilterItem:P,size:j,titleText:S("orderReason","Order reason")})})))),a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:16,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"instructions",control:x,render:({field:{onChange:e,onBlur:t,value:r}})=>a().createElement(u.TextArea,{enableCounter:!0,id:"additionalInstructionsInput",invalid:!!L.instructions,invalidText:L.instructions?.message,labelText:S("additionalInstructions","Additional instructions"),maxCount:500,onBlur:t,onChange:e,value:r})}))))),a().createElement(u.ButtonSet,{className:l()(y.buttonSet,C?y.tabletButtonSet:y.desktopButtonSet)},a().createElement(u.Button,{className:y.button,kind:"secondary",onClick:n,size:"xl"},S("discard","Discard")),a().createElement(u.Button,{className:y.button,kind:"primary",size:"xl",type:"submit",disabled:F},S("saveOrder","Save order"))))}function T({children:e}){let t="tablet"===(0,c.useLayoutType)();return a().createElement(u.Layer,{level:+!!t},a().createElement("div",{className:y.field},e))}var b=r(6924);let g={container:"-esm-patient-tests__test-type-search__container___qEWXK",separator:"-esm-patient-tests__test-type-search__separator___rxLYf",separatorContainer:"-esm-patient-tests__test-type-search__separatorContainer___El350",searchResultsCount:"-esm-patient-tests__test-type-search__searchResultsCount___RgJpA",orderBasketSearchResultsHeader:"-esm-patient-tests__test-type-search__orderBasketSearchResultsHeader___PAjEL",searchResultTile:"-esm-patient-tests__test-type-search__searchResultTile___kLiu-",tabletSearchResultTile:"-esm-patient-tests__test-type-search__tabletSearchResultTile___IxW+0",searchResultTileContent:"-esm-patient-tests__test-type-search__searchResultTileContent___x9oy6",searchResultActions:"-esm-patient-tests__test-type-search__searchResultActions___SJtmL",searchResultSkeletonWrapper:"-esm-patient-tests__test-type-search__searchResultSkeletonWrapper___VQ45x",searchResultCntSkeleton:"-esm-patient-tests__test-type-search__searchResultCntSkeleton___IO9dy",skeletonTile:"-esm-patient-tests__test-type-search__skeletonTile___P2qXr",emptyState:"-esm-patient-tests__test-type-search__emptyState___1FmSn",link:"-esm-patient-tests__test-type-search__link___rgQt8",resultsContainer:"-esm-patient-tests__test-type-search__resultsContainer___cSlon",heading:"-esm-patient-tests__test-type-search__heading___Eue0O",bodyShort01:"-esm-patient-tests__test-type-search__bodyShort01___64X2J",text02:"-esm-patient-tests__test-type-search__text02___Tx-0h"};function S({patient:e,visit:t,openLabForm:r,orderTypeUuid:n,orderableConceptSets:l,closeWorkspace:o,searchTerm:d,onSearchTermChange:m}){let{t:p}=(0,i.useTranslation)(),_=(0,c.useDebounce)(d),h=(0,s.useRef)(null),y=(0,s.useCallback)(()=>{m(""),h.current?.focus()},[m]),E=(0,s.useCallback)(e=>{m(e.target.value??"")},[m]);return a().createElement(a().Fragment,null,a().createElement(c.ResponsiveWrapper,null,a().createElement(u.Search,{autoFocus:!0,labelText:p("searchFieldPlaceholder","Search for a test type"),onChange:E,placeholder:p("searchFieldPlaceholder","Search for a test type"),ref:h,size:"lg",value:d})),a().createElement(C,{closeWorkspace:o,orderTypeUuid:n,orderableConceptSets:l,focusAndClearSearchInput:y,openLabForm:r,searchTerm:_,patient:e,visit:t}))}function C({closeWorkspace:e,searchTerm:t,orderTypeUuid:r,orderableConceptSets:n,openLabForm:l,focusAndClearSearchInput:o,patient:m,visit:p}){let{t:_}=(0,i.useTranslation)(),h="tablet"===(0,c.useLayoutType)(),{testTypes:y,isLoading:E,error:T}=function(e,t){let{concepts:r,isLoading:a,error:n}=(0,d.useOrderableConceptSets)(e,t),l=(0,s.useMemo)(()=>r?.map(({display:e,uuid:t,synonyms:r})=>({label:e,conceptUuid:t,synonyms:r}))||[],[r]);return(0,s.useMemo)(()=>({testTypes:l,isLoading:a,error:n}),[a,l,n])}(t,n);return E?a().createElement(R,null):T?a().createElement(u.Tile,{className:g.emptyState},a().createElement("div",null,a().createElement("h4",{className:g.heading},_("errorFetchingTestTypes",'Error fetching results for "{{searchTerm}}"',{searchTerm:t})),a().createElement("p",{className:g.bodyShort01},a().createElement("span",null,_("trySearchingAgain","Please try searching again"))))):y?.length?a().createElement(a().Fragment,null,a().createElement("div",{className:g.container},t&&a().createElement("div",{className:g.orderBasketSearchResultsHeader},a().createElement("span",{className:g.searchResultsCount},_("searchResultsMatchesForTerm",'{{count}} results for "{{searchTerm}}"',{count:y?.length,searchTerm:t})),a().createElement(u.Button,{kind:"ghost",onClick:o,size:h?"md":"sm"},_("clearSearchResults","Clear results"))),a().createElement("div",{className:g.resultsContainer},y.map(t=>a().createElement(k,{key:t.conceptUuid,orderTypeUuid:r,openOrderForm:l,testType:t,closeWorkspace:e,patient:m,visit:p})))),h&&a().createElement("div",{className:g.separatorContainer},a().createElement("p",{className:g.separator},_("or","or")),a().createElement(u.Button,{iconDescription:_("returnToOrderBasket","Return to order basket"),kind:"ghost",onClick:()=>e({discardUnsavedChanges:!0})},_("returnToOrderBasket","Return to order basket")))):a().createElement(u.Tile,{className:g.emptyState},a().createElement("div",null,a().createElement("h4",{className:g.heading},_("noResultsForTestTypeSearch",'No results to display for "{{searchTerm}}"',{searchTerm:t})),a().createElement("p",{className:g.bodyShort01},a().createElement("span",null,_("tryTo","Try to"))," ",a().createElement("span",{className:g.link,role:"link",tabIndex:0,onClick:o},_("searchAgain","search again"))," ",a().createElement("span",null,_("usingADifferentTerm","using a different term")))))}let k=({testType:e,openOrderForm:t,orderTypeUuid:r,closeWorkspace:n,patient:o,visit:m})=>{let{t:p}=(0,i.useTranslation)(),_="tablet"===(0,c.useLayoutType)(),y=(0,c.useSession)(),{orders:E,setOrders:T}=(0,d.useOrderBasket)(o,r,h.Sq),S=(0,s.useMemo)(()=>E?.some(t=>t.testType.conceptUuid===e.conceptUuid),[E,e]),C=(0,s.useCallback)(e=>(y.currentProvider?.uuid,{action:"NEW",urgency:d.priorityOptions["0"].value,display:e.label,testType:e,visit:m}),[y.currentProvider.uuid,m]),k=(0,s.useCallback)(()=>{let t=C(e);t.isOrderIncomplete=!0,T([...E,t]),n({discardUnsavedChanges:!0})},[E,T,C,e,n]),R=(0,s.useCallback)(()=>{T(E.filter(t=>t.testType.conceptUuid!==e.conceptUuid))},[E,T,e.conceptUuid]);return a().createElement(u.Tile,{className:l()(g.searchResultTile,{[g.tabletSearchResultTile]:_}),role:"listitem"},a().createElement("div",{className:l()(g.searchResultTileContent,g.text02)},a().createElement("p",null,a().createElement("span",{className:g.heading},e.label)," ")),a().createElement("div",{className:g.searchResultActions},S?a().createElement(u.Button,{kind:"danger--ghost",renderIcon:e=>a().createElement(b.fH,{size:16,...e}),onClick:R},p("removeFromBasket","Remove from basket")):a().createElement(u.Button,{kind:"ghost",renderIcon:e=>a().createElement(c.ShoppingCartArrowDownIcon,{size:16,...e}),onClick:k},p("directlyAddToBasket","Add to basket")),a().createElement(u.Button,{kind:"ghost",renderIcon:e=>a().createElement(c.ArrowRightIcon,{size:16,...e}),onClick:()=>t(C(e))},p("goToDrugOrderForm","Order form"))))},R=()=>{let e="tablet"===(0,c.useLayoutType)(),t=l()({[g.tabletSearchResultTile]:e,[g.desktopSearchResultTile]:!e,[g.skeletonTile]:!0});return a().createElement("div",{className:g.searchResultSkeletonWrapper},a().createElement("div",{className:g.orderBasketSearchResultsHeader},a().createElement(u.SkeletonText,{className:g.searchResultCntSkeleton}),a().createElement(u.ButtonSkeleton,{size:e?"md":"sm"})),[void 0,void 0,void 0,void 0].map((e,r)=>a().createElement(u.Tile,{key:r,className:t},a().createElement(u.SkeletonText,null))))},v={container:"-esm-patient-tests__add-test-order__container___+bHqO",patientHeader:"-esm-patient-tests__add-test-order__patientHeader___D0g6G",text02:"-esm-patient-tests__add-test-order__text02___Qors9",bodyShort02:"-esm-patient-tests__add-test-order__bodyShort02___T1gIU"},f=({patient:e,orderToEditOrdererUuid:t,visitContext:r,initialOrder:n,orderTypeUuid:u,closeWorkspace:m})=>{let{t:p}=(0,i.useTranslation)(),_="tablet"===(0,c.useLayoutType)(),[h,y]=(0,s.useState)(n),[T,b]=(0,s.useState)(""),{additionalTestOrderTypes:g,orders:C}=(0,c.useConfig)(),k=u??C.labOrderTypeUuid,{orderType:R}=(0,d.useOrderType)(k),[f,N]=(0,s.useState)(!1),O=h?.action==="REVISE"||null!=n,D=(0,s.useMemo)(()=>R?n?.action==="REVISE"?p("editOrderableForOrderType","Edit {{orderTypeDisplay}}",{orderTypeDisplay:R.display.toLocaleLowerCase()}):p("addOrderableForOrderType","Add {{orderTypeDisplay}}",{orderTypeDisplay:R.display.toLocaleLowerCase()}):"",[R,p,n?.action]),U=(0,s.useMemo)(()=>{let e=[{label:p("labOrders","Lab orders"),orderTypeUuid:C.labOrderTypeUuid,orderableConceptSets:C.labOrderableConcepts},...g];return e.find(e=>e.orderTypeUuid===k)?.orderableConceptSets??[]},[g,k,C.labOrderTypeUuid,C.labOrderableConcepts,p]),x=e?(0,c.getPatientName)(e):"";return a().createElement(c.Workspace2,{title:D,hasUnsavedChanges:f},a().createElement("div",{className:v.container},_&&a().createElement("div",{className:v.patientHeader},a().createElement("span",{className:v.bodyShort02},x),a().createElement("span",{className:l()(v.text02,v.bodyShort01)},(0,o.A)(e?.gender)," \xb7 ",(0,c.age)(e?.birthDate)," \xb7"," ",a().createElement("span",null,(0,c.formatDate)((0,c.parseDate)(e?.birthDate),{mode:"wide",time:!1})))),!_&&a().createElement(d.WorkspaceBackButton,{label:p("backToOrderBasket","Back to order basket"),onClick:()=>m()}),h?a().createElement(E,{initialOrder:h,orderToEditOrdererUuid:t,closeWorkspace:m,onCancel:O?m:()=>{y(void 0),N(!1)},setHasUnsavedChanges:N,orderTypeUuid:k,orderableConceptSets:U,patient:e}):a().createElement(S,{orderTypeUuid:k,orderableConceptSets:U,openLabForm:y,closeWorkspace:m,patient:e,visit:r,searchTerm:T,onSearchTermChange:b})))}},8447(e,t,r){r.d(t,{Lr:()=>o,Sq:()=>i}),r(5399),r(1619);var s=r(3660),a=r.n(s),n=r(3040),l=r(2664);function o(e){let{data:t,error:r,isLoading:s}=a()(e&&e.length>0?[`${l.restBaseUrl}/conceptreferences?v=custom:(uuid,display)`,e]:null,([e,t])=>(0,l.openmrsFetch)(e,{headers:{"Content-Type":"application/json"},body:{references:t},method:"POST"})),n=Object.values(t?.data??{}).map(e=>({uuid:e.uuid,display:e.display}));return r&&(0,l.showSnackbar)({title:r.name,subtitle:r.message,kind:"error"}),{orderReasons:n,isLoading:s}}let i=(e,t,r,s)=>{if("NEW"===e.action||"RENEW"===e.action)return{action:"NEW",type:"testorder",patient:t,careSetting:n.careSettingUuid,orderer:s,encounter:r,concept:e.testType.conceptUuid,instructions:e.instructions,orderReason:e.orderReason,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};if("REVISE"===e.action)return{action:"REVISE",type:"testorder",patient:t,careSetting:n.careSettingUuid,orderer:s,encounter:r,concept:e.testType.conceptUuid,instructions:e.instructions,orderReason:e.orderReason,previousOrder:e.previousOrder,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};if("DISCONTINUE"===e.action)return{action:"DISCONTINUE",type:"testorder",patient:t,careSetting:n.careSettingUuid,orderer:s,encounter:r,concept:e.testType.conceptUuid,orderReason:e.orderReason,previousOrder:e.previousOrder,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};throw Error(`Unknown order action: ${e.action}.`)}}}]);
1
+ "use strict";(globalThis.webpackChunk_openmrs_esm_patient_tests_app=globalThis.webpackChunk_openmrs_esm_patient_tests_app||[]).push([["58"],{4593(e,t,r){r.d(t,{A:()=>f});var s=r(5399),a=r.n(s),n=r(3373),l=r.n(n),o=r(4388),i=r(7807),c=r(2664),d=r(6717),u=r(324),m=r(824),p=r(4049),_=r(6195),h=r(8447);let y={orderForm:"-esm-patient-tests__test-order-form__orderForm___ggdix",form:"-esm-patient-tests__test-order-form__form___Wcdea",gridRow:"-esm-patient-tests__test-order-form__gridRow___gSHy3",field:"-esm-patient-tests__test-order-form__field___pe59B",buttonSet:"-esm-patient-tests__test-order-form__buttonSet___XhC4T",testTypeLabel:"-esm-patient-tests__test-order-form__testTypeLabel___VjLRX",testType:"-esm-patient-tests__test-order-form__testType___rxTdd"};function E({initialOrder:e,orderToEditOrdererUuid:t,closeWorkspace:r,onCancel:n,orderTypeUuid:o,setHasUnsavedChanges:b,patient:g}){let{t:S}=(0,i.useTranslation)(),C="tablet"===(0,c.useLayoutType)(),{orders:k,setOrders:R,clearOrders:v}=(0,d.useOrderBasket)(g,o,h.Sq),f=(0,c.useConfig)(),{orderType:N}=(0,d.useOrderType)(o),{mutate:O}=(0,d.useMutatePatientOrders)(g.id),D=(0,s.useMemo)(()=>(f.labTestsWithOrderReasons?.find(t=>t.labTestUuid===e?.testType?.conceptUuid)||{}).required,[f.labTestsWithOrderReasons,e?.testType?.conceptUuid]),U=(0,s.useMemo)(()=>_.z.object({instructions:_.z.string().nullish(),urgency:_.z.string().refine(e=>""!==e,{message:S("priorityRequired","Priority is required")}),accessionNumber:_.z.string().nullish(),testType:_.z.object({label:_.z.string(),conceptUuid:_.z.string()},{required_error:S("testTypeRequired","Test type is required"),invalid_type_error:S("testTypeRequired","Test type is required")}),orderReason:D?_.z.string({required_error:S("orderReasonRequired","Order reason is required")}).refine(e=>!!e,S("orderReasonRequired","Order reason is required")):_.z.string().optional(),scheduledDate:_.z.date({}).nullish()}).refine(e=>"ON_SCHEDULED_DATE"!==e.urgency||!!e.scheduledDate,{message:S("scheduledDateRequired","Scheduled date is required"),path:["scheduledDate"]}),[D,S]),{control:x,handleSubmit:I,formState:{errors:L,defaultValues:B,isDirty:w,isSubmitting:F},setValue:q,watch:z}=(0,m.mN)({mode:"all",resolver:(0,p.u)(U),defaultValues:{accessionNumber:null,...e}}),A="ON_SCHEDULED_DATE"===z("urgency"),W=(f.labTestsWithOrderReasons?.find(e=>e.labTestUuid===B?.testType?.conceptUuid)||{}).orderReasons||[],{orderReasons:H}=(0,h.Lr)(W),P=(0,s.useCallback)(e=>{let t=e?.inputValue?.toLowerCase(),r=e?.item?.display?.toLowerCase();return!t||r?.includes(t)},[]),M=(0,s.useCallback)(t=>{let s={...e,...t},a=[...k],n=k.find(e=>e.testType.conceptUuid===s.testType.conceptUuid&&e.action===s.action);n?a[k.indexOf(n)]={...s,isOrderIncomplete:!1}:a.push(s),R(a),r({discardUnsavedChanges:!0})},[k,R,r,e]),V=(0,s.useCallback)(s=>{let a={...e,...s};return(0,d.postOrder)((0,h.Sq)(a,g.id,a?.encounterUuid,t)).then(()=>{v(),O(),(0,d.showOrderSuccessToast)("@openmrs/esm-patient-tests-app",[a]),r({discardUnsavedChanges:!0})}).catch(e=>{(0,c.showSnackbar)({isLowContrast:!1,kind:"error",title:S("errorSavingLabOrder","Error saving lab order"),subtitle:e.message})})},[v,r,e,O,g.id,t,S]),G=(0,s.useCallback)(e=>t=>{"ON_SCHEDULED_DATE"!==t.target.value&&q("scheduledDate",null),e(t)},[q]);(0,s.useEffect)(()=>{b(w)},[w,b]);let j=C?"lg":"sm";return a().createElement(u.Form,{className:y.orderForm,onSubmit:I(e?.action==="REVISE"?V:M,e=>{console.error("Error in lab order form",e)}),id:"labOrderForm"},a().createElement("div",{className:y.form},a().createElement(c.ExtensionSlot,{name:"top-of-lab-order-form-slot",state:{order:e}}),a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:16,md:8,sm:4},a().createElement(T,null,a().createElement("label",{className:y.testTypeLabel},S("testType","Test type")),a().createElement("p",{className:y.testType},e?.testType?.label)))),f.showReferenceNumberField?a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:16,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"accessionNumber",control:x,render:({field:{onChange:e,onBlur:t,value:r}})=>a().createElement(u.TextInput,{id:"labReferenceNumberInput",invalid:!!L.accessionNumber,invalidText:L.accessionNumber?.message,labelText:S("referenceNumber","Reference number",{orderType:N?.display}),maxLength:150,onBlur:t,onChange:e,size:j,value:r})})))):null,a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:8,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"urgency",control:x,render:({field:e,fieldState:t})=>a().createElement(u.Select,{id:"priorityInput",...e,onChange:G(e.onChange),invalid:!!t?.error?.message,invalidText:t?.error?.message,labelText:S("priority","Priority")},d.priorityOptions.map(e=>a().createElement(u.SelectItem,{key:e.value,value:e.value,text:e.label})))})))),A&&a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:8,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"scheduledDate",control:x,render:({field:e,fieldState:t})=>a().createElement(c.OpenmrsDatePicker,{labelText:S("scheduledDate","Scheduled date"),id:"scheduledDate",...e,invalid:!!t?.error?.message,invalidText:t?.error?.message,minDate:new Date,size:j})})))),H.length>0&&a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:16,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"orderReason",control:x,render:({field:{onBlur:e,onChange:t}})=>a().createElement(u.ComboBox,{id:"orderReasonInput",invalid:!!L.orderReason,invalidText:L.orderReason?.message,items:H,itemToString:e=>e?.display,onBlur:e,onChange:({selectedItem:e})=>t(e?.uuid||""),selectedItem:null,shouldFilterItem:P,size:j,titleText:S("orderReason","Order reason")})})))),a().createElement(u.Grid,{className:y.gridRow},a().createElement(u.Column,{lg:16,md:8,sm:4},a().createElement(T,null,a().createElement(m.xI,{name:"instructions",control:x,render:({field:{onChange:e,onBlur:t,value:r}})=>a().createElement(u.TextArea,{enableCounter:!0,id:"additionalInstructionsInput",invalid:!!L.instructions,invalidText:L.instructions?.message,labelText:S("additionalInstructions","Additional instructions"),maxCount:500,onBlur:t,onChange:e,value:r})}))))),a().createElement(u.ButtonSet,{className:l()(y.buttonSet,C?y.tabletButtonSet:y.desktopButtonSet)},a().createElement(u.Button,{className:y.button,kind:"secondary",onClick:n,size:"xl"},S("discard","Discard")),a().createElement(u.Button,{className:y.button,kind:"primary",size:"xl",type:"submit",disabled:F},S("saveOrder","Save order"))))}function T({children:e}){let t="tablet"===(0,c.useLayoutType)();return a().createElement(u.Layer,{level:+!!t},a().createElement("div",{className:y.field},e))}var b=r(6924);let g={container:"-esm-patient-tests__test-type-search__container___qEWXK",separator:"-esm-patient-tests__test-type-search__separator___rxLYf",separatorContainer:"-esm-patient-tests__test-type-search__separatorContainer___El350",searchResultsCount:"-esm-patient-tests__test-type-search__searchResultsCount___RgJpA",orderBasketSearchResultsHeader:"-esm-patient-tests__test-type-search__orderBasketSearchResultsHeader___PAjEL",searchResultTile:"-esm-patient-tests__test-type-search__searchResultTile___kLiu-",tabletSearchResultTile:"-esm-patient-tests__test-type-search__tabletSearchResultTile___IxW+0",searchResultTileContent:"-esm-patient-tests__test-type-search__searchResultTileContent___x9oy6",searchResultActions:"-esm-patient-tests__test-type-search__searchResultActions___SJtmL",searchResultSkeletonWrapper:"-esm-patient-tests__test-type-search__searchResultSkeletonWrapper___VQ45x",searchResultCntSkeleton:"-esm-patient-tests__test-type-search__searchResultCntSkeleton___IO9dy",skeletonTile:"-esm-patient-tests__test-type-search__skeletonTile___P2qXr",emptyState:"-esm-patient-tests__test-type-search__emptyState___1FmSn",link:"-esm-patient-tests__test-type-search__link___rgQt8",resultsContainer:"-esm-patient-tests__test-type-search__resultsContainer___cSlon",heading:"-esm-patient-tests__test-type-search__heading___Eue0O",bodyShort01:"-esm-patient-tests__test-type-search__bodyShort01___64X2J",text02:"-esm-patient-tests__test-type-search__text02___Tx-0h"};function S({patient:e,visit:t,openLabForm:r,orderTypeUuid:n,orderableConceptSets:l,closeWorkspace:o,searchTerm:d,onSearchTermChange:m}){let{t:p}=(0,i.useTranslation)(),_=(0,c.useDebounce)(d),h=(0,s.useRef)(null),y=(0,s.useCallback)(()=>{m(""),h.current?.focus()},[m]),E=(0,s.useCallback)(e=>{m(e.target.value??"")},[m]);return a().createElement(a().Fragment,null,a().createElement(c.ResponsiveWrapper,null,a().createElement(u.Search,{autoFocus:!0,labelText:p("searchFieldPlaceholder","Search for a test type"),onChange:E,placeholder:p("searchFieldPlaceholder","Search for a test type"),ref:h,size:"lg",value:d})),a().createElement(C,{closeWorkspace:o,orderTypeUuid:n,orderableConceptSets:l,focusAndClearSearchInput:y,openLabForm:r,searchTerm:_,patient:e,visit:t}))}function C({closeWorkspace:e,searchTerm:t,orderTypeUuid:r,orderableConceptSets:n,openLabForm:l,focusAndClearSearchInput:o,patient:m,visit:p}){let{t:_}=(0,i.useTranslation)(),h="tablet"===(0,c.useLayoutType)(),{testTypes:y,isLoading:E,error:T}=function(e,t){let{concepts:r,isLoading:a,error:n}=(0,d.useOrderableConceptSets)(e,t),l=(0,s.useMemo)(()=>r?.map(({display:e,uuid:t,synonyms:r})=>({label:e,conceptUuid:t,synonyms:r}))||[],[r]);return(0,s.useMemo)(()=>({testTypes:l,isLoading:a,error:n}),[a,l,n])}(t,n);return E?a().createElement(R,null):T?a().createElement(u.Tile,{className:g.emptyState},a().createElement("div",null,a().createElement("h4",{className:g.heading},_("errorFetchingTestTypes",'Error fetching results for "{{searchTerm}}"',{searchTerm:t})),a().createElement("p",{className:g.bodyShort01},a().createElement("span",null,_("trySearchingAgain","Please try searching again"))))):y?.length?a().createElement(a().Fragment,null,a().createElement("div",{className:g.container},t&&a().createElement("div",{className:g.orderBasketSearchResultsHeader},a().createElement("span",{className:g.searchResultsCount},_("searchResultsMatchesForTerm",'{{count}} results for "{{searchTerm}}"',{count:y?.length,searchTerm:t})),a().createElement(u.Button,{kind:"ghost",onClick:o,size:h?"md":"sm"},_("clearSearchResults","Clear results"))),a().createElement("div",{className:g.resultsContainer},y.map(t=>a().createElement(k,{key:t.conceptUuid,orderTypeUuid:r,openOrderForm:l,testType:t,closeWorkspace:e,patient:m,visit:p})))),h&&a().createElement("div",{className:g.separatorContainer},a().createElement("p",{className:g.separator},_("or","or")),a().createElement(u.Button,{iconDescription:_("returnToOrderBasket","Return to order basket"),kind:"ghost",onClick:()=>e({discardUnsavedChanges:!0})},_("returnToOrderBasket","Return to order basket")))):a().createElement(u.Tile,{className:g.emptyState},a().createElement("div",null,a().createElement("h4",{className:g.heading},_("noResultsForTestTypeSearch",'No results to display for "{{searchTerm}}"',{searchTerm:t})),a().createElement("p",{className:g.bodyShort01},a().createElement("span",null,_("tryTo","Try to"))," ",a().createElement("span",{className:g.link,role:"link",tabIndex:0,onClick:o},_("searchAgain","search again"))," ",a().createElement("span",null,_("usingADifferentTerm","using a different term")))))}let k=({testType:e,openOrderForm:t,orderTypeUuid:r,closeWorkspace:n,patient:o,visit:m})=>{let{t:p}=(0,i.useTranslation)(),_="tablet"===(0,c.useLayoutType)(),y=(0,c.useSession)(),{orders:E,setOrders:T}=(0,d.useOrderBasket)(o,r,h.Sq),S=(0,s.useMemo)(()=>E?.some(t=>t.testType.conceptUuid===e.conceptUuid),[E,e]),C=(0,s.useCallback)(e=>(y.currentProvider?.uuid,{action:"NEW",urgency:d.priorityOptions["0"].value,display:e.label,testType:e,visit:m}),[y.currentProvider.uuid,m]),k=(0,s.useCallback)(()=>{let t=C(e);t.isOrderIncomplete=!0,T([...E,t]),n({discardUnsavedChanges:!0})},[E,T,C,e,n]),R=(0,s.useCallback)(()=>{T(E.filter(t=>t.testType.conceptUuid!==e.conceptUuid))},[E,T,e.conceptUuid]);return a().createElement(u.Tile,{className:l()(g.searchResultTile,{[g.tabletSearchResultTile]:_}),role:"listitem"},a().createElement("div",{className:l()(g.searchResultTileContent,g.text02)},a().createElement("p",null,a().createElement("span",{className:g.heading},e.label)," ")),a().createElement("div",{className:g.searchResultActions},S?a().createElement(u.Button,{kind:"danger--ghost",renderIcon:e=>a().createElement(b.fH,{size:16,...e}),onClick:R},p("removeFromBasket","Remove from basket")):a().createElement(u.Button,{kind:"ghost",renderIcon:e=>a().createElement(c.ShoppingCartArrowDownIcon,{size:16,...e}),onClick:k},p("directlyAddToBasket","Add to basket")),a().createElement(u.Button,{kind:"ghost",renderIcon:e=>a().createElement(c.ArrowRightIcon,{size:16,...e}),onClick:()=>t(C(e))},p("goToDrugOrderForm","Order form"))))},R=()=>{let e="tablet"===(0,c.useLayoutType)(),t=l()({[g.tabletSearchResultTile]:e,[g.desktopSearchResultTile]:!e,[g.skeletonTile]:!0});return a().createElement("div",{className:g.searchResultSkeletonWrapper},a().createElement("div",{className:g.orderBasketSearchResultsHeader},a().createElement(u.SkeletonText,{className:g.searchResultCntSkeleton}),a().createElement(u.ButtonSkeleton,{size:e?"md":"sm"})),[void 0,void 0,void 0,void 0].map((e,r)=>a().createElement(u.Tile,{key:r,className:t},a().createElement(u.SkeletonText,null))))},v={container:"-esm-patient-tests__add-test-order__container___+bHqO",patientHeader:"-esm-patient-tests__add-test-order__patientHeader___D0g6G",text02:"-esm-patient-tests__add-test-order__text02___Qors9",bodyShort02:"-esm-patient-tests__add-test-order__bodyShort02___T1gIU"},f=({patient:e,orderToEditOrdererUuid:t,visitContext:r,initialOrder:n,orderTypeUuid:u,closeWorkspace:m})=>{let{t:p}=(0,i.useTranslation)(),_="tablet"===(0,c.useLayoutType)(),[h,y]=(0,s.useState)(n),[T,b]=(0,s.useState)(""),{additionalTestOrderTypes:g,orders:C}=(0,c.useConfig)(),k=u??C.labOrderTypeUuid,{orderType:R}=(0,d.useOrderType)(k),[f,N]=(0,s.useState)(!1),O=h?.action==="REVISE"||null!=n,D=(0,s.useMemo)(()=>R?n?.action==="REVISE"?p("editOrderableForOrderType","Edit {{orderTypeDisplay}}",{orderTypeDisplay:R.display.toLocaleLowerCase()}):p("addOrderableForOrderType","Add {{orderTypeDisplay}}",{orderTypeDisplay:R.display.toLocaleLowerCase()}):"",[R,p,n?.action]),U=(0,s.useMemo)(()=>{let e=[{label:p("labOrders","Lab orders"),orderTypeUuid:C.labOrderTypeUuid,orderableConceptSets:C.labOrderableConcepts},...g];return e.find(e=>e.orderTypeUuid===k)?.orderableConceptSets??[]},[g,k,C.labOrderTypeUuid,C.labOrderableConcepts,p]),x=e?(0,c.getPatientName)(e):"";return a().createElement(c.Workspace2,{title:D,hasUnsavedChanges:f},a().createElement("div",{className:v.container},_&&a().createElement("div",{className:v.patientHeader},a().createElement("span",{className:v.bodyShort02},x),a().createElement("span",{className:l()(v.text02,v.bodyShort01)},(0,o.A)(e?.gender)," \xb7 ",(0,c.age)(e?.birthDate)," \xb7"," ",a().createElement("span",null,(0,c.formatDate)((0,c.parseDate)(e?.birthDate),{mode:"wide",time:!1})))),!_&&a().createElement(d.WorkspaceBackButton,{label:p("backToOrderBasket","Back to order basket"),onClick:()=>m()}),h?a().createElement(E,{initialOrder:h,orderToEditOrdererUuid:t,closeWorkspace:m,onCancel:O?m:()=>{y(void 0),N(!1)},setHasUnsavedChanges:N,orderTypeUuid:k,orderableConceptSets:U,patient:e}):a().createElement(S,{orderTypeUuid:k,orderableConceptSets:U,openLabForm:y,closeWorkspace:m,patient:e,visit:r,searchTerm:T,onSearchTermChange:b})))}},8447(e,t,r){r.d(t,{Lr:()=>o,Sq:()=>i}),r(5399),r(1619);var s=r(3660),a=r.n(s),n=r(6717),l=r(2664);function o(e){let{data:t,error:r,isLoading:s}=a()(e&&e.length>0?[`${l.restBaseUrl}/conceptreferences?v=custom:(uuid,display)`,e]:null,([e,t])=>(0,l.openmrsFetch)(e,{headers:{"Content-Type":"application/json"},body:{references:t},method:"POST"})),n=Object.values(t?.data??{}).map(e=>({uuid:e.uuid,display:e.display}));return r&&(0,l.showSnackbar)({title:r.name,subtitle:r.message,kind:"error"}),{orderReasons:n,isLoading:s}}let i=(e,t,r,s)=>{if("NEW"===e.action||"RENEW"===e.action)return{action:"NEW",type:"testorder",patient:t,careSetting:n.careSettingUuid,orderer:s,encounter:r,concept:e.testType.conceptUuid,instructions:e.instructions,orderReason:e.orderReason,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};if("REVISE"===e.action)return{action:"REVISE",type:"testorder",patient:t,careSetting:n.careSettingUuid,orderer:s,encounter:r,concept:e.testType.conceptUuid,instructions:e.instructions,orderReason:e.orderReason,previousOrder:e.previousOrder,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};if("DISCONTINUE"===e.action)return{action:"DISCONTINUE",type:"testorder",patient:t,careSetting:n.careSettingUuid,orderer:s,encounter:r,concept:e.testType.conceptUuid,orderReason:e.orderReason,previousOrder:e.previousOrder,accessionNumber:e.accessionNumber,urgency:e.urgency,scheduledDate:e.scheduledDate?(0,l.toOmrsIsoString)(e.scheduledDate):null};throw Error(`Unknown order action: ${e.action}.`)}}}]);
package/dist/8152.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";(globalThis.webpackChunk_openmrs_esm_patient_tests_app=globalThis.webpackChunk_openmrs_esm_patient_tests_app||[]).push([["8152"],{5115(e,t,a){a.r(t),a.d(t,{default:()=>D});var l=a(5399),n=a.n(l),i=a(324),s=a(7807),o=a(1890),r=a(2664),d=a(3040),m=a(5365),c=a(1619),u=a.n(c),_=a(6955),p=a(3886),h=a(7774);let b="-esm-patient-tests__trendline__container___tEEsg",g="-esm-patient-tests__trendline__show-hide-table___Fqld0",w=n().memo(({setLowerRange:e,upperRange:t})=>{let{t:a}=(0,s.useTranslation)(),l=[[a("trendlineRangeSelector1Day","1 day"),()=>e(new Date(Date.parse(t.toString())-864e5))],[a("trendlineRangeSelector5Days","5 days"),()=>e(new Date(Date.parse(t.toString())-432e6))],[a("trendlineRangeSelector1Month","1 month"),()=>e(new Date(Date.parse(t.toString())-2592e6))],[a("trendlineRangeSelectorMonths","6 months"),()=>e(new Date(Date.parse(t.toString())-157248e5))],[a("trendlineRangeSelector1Year","1 year"),()=>e(new Date(Date.parse(t.toString())-31536e6))],[a("trendlineRangeSelector5Years","5 years"),()=>e(new Date(Date.parse(t.toString())-15768e7))],[a("trendlineRangeSelectorAll","All"),()=>e(new Date(0))]];return n().createElement("div",{className:"-esm-patient-tests__trendline__range-tabs___SCo4d"},n().createElement(i.Tabs,{selectedIndex:6},n().createElement(i.TabList,{"aria-label":"Trendline range tabs",className:"-esm-patient-tests__trendline__tabPanel___08sTK"},l.map(([e,t],a)=>n().createElement(i.Tab,{onClick:t,key:a},e)))))}),E=({...e})=>n().createElement("div",{...e,className:"-esm-patient-tests__trendline__background___M0HZa"}),v=({patientUuid:e,title:t,isValidating:a,showBackToTimelineButton:l})=>{let{t:o}=(0,s.useTranslation)();return n().createElement("div",{className:"-esm-patient-tests__trendline__header___LivtG"},n().createElement("div",{className:"-esm-patient-tests__trendline__backButton___XH4pm"},l&&n().createElement(r.ConfigurableLink,{to:(0,m.VL)(`/patient/${e}/chart`)},n().createElement(i.Button,{iconDescription:o("returnToTimeline","Return to timeline"),kind:"ghost",renderIcon:e=>n().createElement(r.ArrowLeftIcon,{size:24,...e})},n().createElement("span",null,o("backToTimeline","Back to timeline"))))),n().createElement("div",{className:"-esm-patient-tests__trendline__content___-f9SU"},n().createElement("span",{className:"-esm-patient-tests__trendline__title___6wP8L"},t)),n().createElement("div",null,a&&n().createElement(i.InlineLoading,{className:"-esm-patient-tests__trendline__inlineLoader___zLdDi"})))},T=n().memo(({tableData:e,tableHeaderData:t})=>n().createElement(h.A,{data:e,tableHeaders:t}));T.displayName="DrawTable";let N=({patientUuid:e,conceptUuid:t,hideTrendlineHeader:a=!1,showBackToTimelineButton:m=!1})=>{let{t:c}=(0,s.useTranslation)(),{trendlineData:h,isLoading:N,isValidating:D}=function(e,t){let{data:a,error:n,isLoading:i,isValidating:s}=u()(`${r.restBaseUrl}/obstree?patient=${e}&concept=${t}`,r.openmrsFetch);return n&&(0,r.showSnackbar)({title:n.name,subtitle:n.message,kind:"error",isLowContrast:!1}),(0,l.useMemo)(()=>({isLoading:i,trendlineData:function e(t){let a=[];return t&&t?.subSets.forEach(t=>{if(t?.obs){let e={hiAbsolute:t.hiAbsolute,hiCritical:t.hiCritical,hiNormal:t.hiNormal,lowAbsolute:t.lowAbsolute,lowCritical:t.lowCritical,lowNormal:t.lowNormal,units:t.units},l=t.obs.map(t=>{let a=void 0!==t.lowNormal||void 0!==t.hiNormal||void 0!==t.lowCritical||void 0!==t.hiCritical||void 0!==t.lowAbsolute||void 0!==t.hiAbsolute?{hiAbsolute:t.hiAbsolute,hiCritical:t.hiCritical,hiNormal:t.hiNormal,lowAbsolute:t.lowAbsolute,lowCritical:t.lowCritical,lowNormal:t.lowNormal}:void 0,l=(0,p.Tq)(a,e)??e,n=(0,_.EF)(l),i=t.interpretation??n(t.value);return{...t,interpretation:i,lowNormal:l?.lowNormal,hiNormal:l?.hiNormal,lowCritical:l?.lowCritical,hiCritical:l?.hiCritical,lowAbsolute:l?.lowAbsolute,hiAbsolute:l?.hiAbsolute}});a.push({...t,obs:l})}else if(t?.subSets){let l=e(t);a.push(...l)}}),a}(a?.data)?.[0]??{obs:[],display:"",hiNormal:0,lowNormal:0,units:""},isValidating:s}),[a?.data,i,s])}(e,t),{obs:y,display:S,hiNormal:k,lowNormal:C,units:f}=h,A=c("date","Date"),[R,M]=(0,l.useState)(),[L,B]=(0,l.useState)(!1),[$,x]=(0,l.useMemo)(()=>0===y.length?[new Date,new Date]:[new Date,new Date(Date.parse(y[y.length-1].obsDatetime))],[y]),F=(0,l.useCallback)(e=>{M([e>x?e:x,$])},[M,$,x]);(0,l.useLayoutEffect)(()=>{let e=document.querySelector("g.cds--cc--area")?.parentElement;y&&y.length&&e&&e.insertBefore(e.children[3],e.childNodes[2])},[y]),(0,l.useEffect)(()=>{M(void 0)},[t]);let{data:H,tableData:I}=(0,l.useMemo)(()=>{let e=[],t=[];return y.forEach((a,l)=>{let n=a.lowNormal??C,i=a.hiNormal??k,s=void 0!==n&&void 0!==i,o=s?{max:i,min:n}:{},r=(0,p.ys)(s?{lowNormal:n,hiNormal:i,units:f}:null,f);e.push({date:new Date(Date.parse(a.obsDatetime)),value:parseFloat(a.value),group:S,...o,rangeLabel:r}),t.push({id:`${l}`,dateTime:a.obsDatetime,range:r,value:{value:parseFloat(a.value),interpretation:a.interpretation}})}),{data:e,tableData:t}},[y,S,k,f,C]),V=(0,l.useMemo)(()=>({bounds:{lowerBoundMapsTo:"min",upperBoundMapsTo:"max"},axes:{bottom:{title:A,mapsTo:"date",scaleType:o.Wh.TIME,ticks:{rotation:o.Vh.ALWAYS},domain:R},left:{mapsTo:"value",title:f,scaleType:o.Wh.LINEAR,includeZero:!1}},height:"400px",color:{scale:{[S]:"#6929c4"}},points:{radius:4,enabled:!0},legend:{enabled:!1},tooltip:{customHTML:([{date:e,value:t,rangeLabel:a}])=>{let l=c("trendlineTooltipValue","Value"),n=c("trendlineTooltipDate","Date"),i=c("trendlineTooltipRange","Range");return`<div class="cds--tooltip cds--tooltip--shown" style="min-width: max-content; font-weight:600">
1
+ "use strict";(globalThis.webpackChunk_openmrs_esm_patient_tests_app=globalThis.webpackChunk_openmrs_esm_patient_tests_app||[]).push([["8152"],{5115(e,t,a){a.r(t),a.d(t,{default:()=>D});var l=a(5399),n=a.n(l),i=a(324),s=a(7807),o=a(1890),r=a(2664),d=a(6717),m=a(5365),c=a(1619),u=a.n(c),_=a(6955),p=a(3886),h=a(7774);let b="-esm-patient-tests__trendline__container___tEEsg",g="-esm-patient-tests__trendline__show-hide-table___Fqld0",w=n().memo(({setLowerRange:e,upperRange:t})=>{let{t:a}=(0,s.useTranslation)(),l=[[a("trendlineRangeSelector1Day","1 day"),()=>e(new Date(Date.parse(t.toString())-864e5))],[a("trendlineRangeSelector5Days","5 days"),()=>e(new Date(Date.parse(t.toString())-432e6))],[a("trendlineRangeSelector1Month","1 month"),()=>e(new Date(Date.parse(t.toString())-2592e6))],[a("trendlineRangeSelectorMonths","6 months"),()=>e(new Date(Date.parse(t.toString())-157248e5))],[a("trendlineRangeSelector1Year","1 year"),()=>e(new Date(Date.parse(t.toString())-31536e6))],[a("trendlineRangeSelector5Years","5 years"),()=>e(new Date(Date.parse(t.toString())-15768e7))],[a("trendlineRangeSelectorAll","All"),()=>e(new Date(0))]];return n().createElement("div",{className:"-esm-patient-tests__trendline__range-tabs___SCo4d"},n().createElement(i.Tabs,{selectedIndex:6},n().createElement(i.TabList,{"aria-label":"Trendline range tabs",className:"-esm-patient-tests__trendline__tabPanel___08sTK"},l.map(([e,t],a)=>n().createElement(i.Tab,{onClick:t,key:a},e)))))}),E=({...e})=>n().createElement("div",{...e,className:"-esm-patient-tests__trendline__background___M0HZa"}),v=({patientUuid:e,title:t,isValidating:a,showBackToTimelineButton:l})=>{let{t:o}=(0,s.useTranslation)();return n().createElement("div",{className:"-esm-patient-tests__trendline__header___LivtG"},n().createElement("div",{className:"-esm-patient-tests__trendline__backButton___XH4pm"},l&&n().createElement(r.ConfigurableLink,{to:(0,m.VL)(`/patient/${e}/chart`)},n().createElement(i.Button,{iconDescription:o("returnToTimeline","Return to timeline"),kind:"ghost",renderIcon:e=>n().createElement(r.ArrowLeftIcon,{size:24,...e})},n().createElement("span",null,o("backToTimeline","Back to timeline"))))),n().createElement("div",{className:"-esm-patient-tests__trendline__content___-f9SU"},n().createElement("span",{className:"-esm-patient-tests__trendline__title___6wP8L"},t)),n().createElement("div",null,a&&n().createElement(i.InlineLoading,{className:"-esm-patient-tests__trendline__inlineLoader___zLdDi"})))},T=n().memo(({tableData:e,tableHeaderData:t})=>n().createElement(h.A,{data:e,tableHeaders:t}));T.displayName="DrawTable";let N=({patientUuid:e,conceptUuid:t,hideTrendlineHeader:a=!1,showBackToTimelineButton:m=!1})=>{let{t:c}=(0,s.useTranslation)(),{trendlineData:h,isLoading:N,isValidating:D}=function(e,t){let{data:a,error:n,isLoading:i,isValidating:s}=u()(`${r.restBaseUrl}/obstree?patient=${e}&concept=${t}`,r.openmrsFetch);return n&&(0,r.showSnackbar)({title:n.name,subtitle:n.message,kind:"error",isLowContrast:!1}),(0,l.useMemo)(()=>({isLoading:i,trendlineData:function e(t){let a=[];return t&&t?.subSets.forEach(t=>{if(t?.obs){let e={hiAbsolute:t.hiAbsolute,hiCritical:t.hiCritical,hiNormal:t.hiNormal,lowAbsolute:t.lowAbsolute,lowCritical:t.lowCritical,lowNormal:t.lowNormal,units:t.units},l=t.obs.map(t=>{let a=void 0!==t.lowNormal||void 0!==t.hiNormal||void 0!==t.lowCritical||void 0!==t.hiCritical||void 0!==t.lowAbsolute||void 0!==t.hiAbsolute?{hiAbsolute:t.hiAbsolute,hiCritical:t.hiCritical,hiNormal:t.hiNormal,lowAbsolute:t.lowAbsolute,lowCritical:t.lowCritical,lowNormal:t.lowNormal}:void 0,l=(0,p.Tq)(a,e)??e,n=(0,_.EF)(l),i=t.interpretation??n(t.value);return{...t,interpretation:i,lowNormal:l?.lowNormal,hiNormal:l?.hiNormal,lowCritical:l?.lowCritical,hiCritical:l?.hiCritical,lowAbsolute:l?.lowAbsolute,hiAbsolute:l?.hiAbsolute}});a.push({...t,obs:l})}else if(t?.subSets){let l=e(t);a.push(...l)}}),a}(a?.data)?.[0]??{obs:[],display:"",hiNormal:0,lowNormal:0,units:""},isValidating:s}),[a?.data,i,s])}(e,t),{obs:y,display:S,hiNormal:k,lowNormal:C,units:f}=h,A=c("date","Date"),[R,M]=(0,l.useState)(),[L,B]=(0,l.useState)(!1),[$,x]=(0,l.useMemo)(()=>0===y.length?[new Date,new Date]:[new Date,new Date(Date.parse(y[y.length-1].obsDatetime))],[y]),F=(0,l.useCallback)(e=>{M([e>x?e:x,$])},[M,$,x]);(0,l.useLayoutEffect)(()=>{let e=document.querySelector("g.cds--cc--area")?.parentElement;y&&y.length&&e&&e.insertBefore(e.children[3],e.childNodes[2])},[y]),(0,l.useEffect)(()=>{M(void 0)},[t]);let{data:H,tableData:I}=(0,l.useMemo)(()=>{let e=[],t=[];return y.forEach((a,l)=>{let n=a.lowNormal??C,i=a.hiNormal??k,s=void 0!==n&&void 0!==i,o=s?{max:i,min:n}:{},r=(0,p.ys)(s?{lowNormal:n,hiNormal:i,units:f}:null,f);e.push({date:new Date(Date.parse(a.obsDatetime)),value:parseFloat(a.value),group:S,...o,rangeLabel:r}),t.push({id:`${l}`,dateTime:a.obsDatetime,range:r,value:{value:parseFloat(a.value),interpretation:a.interpretation}})}),{data:e,tableData:t}},[y,S,k,f,C]),V=(0,l.useMemo)(()=>({bounds:{lowerBoundMapsTo:"min",upperBoundMapsTo:"max"},axes:{bottom:{title:A,mapsTo:"date",scaleType:o.Wh.TIME,ticks:{rotation:o.Vh.ALWAYS},domain:R},left:{mapsTo:"value",title:f,scaleType:o.Wh.LINEAR,includeZero:!1}},height:"400px",color:{scale:{[S]:"#6929c4"}},points:{radius:4,enabled:!0},legend:{enabled:!1},tooltip:{customHTML:([{date:e,value:t,rangeLabel:a}])=>{let l=c("trendlineTooltipValue","Value"),n=c("trendlineTooltipDate","Date"),i=c("trendlineTooltipRange","Range");return`<div class="cds--tooltip cds--tooltip--shown" style="min-width: max-content; font-weight:600">
2
2
  <div style="font-size:1rem; line-height:1.4">${l}: <span>${t} ${f}</span></div>
3
3
  <div style="font-size:0.875rem; font-weight:500; margin-top:0.125rem">${i}: ${a||"--"}</div>
4
4
  <div style="color:#6F6F6F; font-size:0.875rem; font-weight:500; margin-top:0.125rem">${n}: ${(0,r.formatDate)(e)}</div>