@bahmni/appointments-app 0.0.1-dev.191 → 0.0.1-dev.192

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.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { aG as t } from "./index-DtAPMuCM.js";
1
+ import { aG as t } from "./index-BDxHeigY.js";
2
2
  export {
3
3
  t as AppointmentsApp
4
4
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bahmni/appointments-app",
3
- "version": "0.0.1-dev.191",
3
+ "version": "0.0.1-dev.192",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -1,424 +0,0 @@
1
- import { jsx as s, jsxs as p, Fragment as k } from "react/jsx-runtime";
2
- import { u as ee, p as re, y as ae, d as te, a as A, e as oe, b as ne, $ as se, A as q, Y as de, G as me, c as ie, P as le, Z as U, h as ce, m as ue, T as R, f as be, F as pe, q as fe, W as _e, i as $e, w as he, j as ve, k as ge, l as ye } from "./index-DtAPMuCM.js";
3
- import { useState as P, useMemo as g, useCallback as F } from "react";
4
- const Ne = "_formsTableBody_1pd36_1", Ae = "_customAccordianItem_1pd36_6", Fe = "_formContent_1pd36_18", Re = "_formDetailsContainer_1pd36_25", Le = "_observation_1pd36_30", Ce = "_groupContainer_1pd36_39", Oe = "_rowContainer_1pd36_43", Ie = "_groupLabel_1pd36_48", Te = "_rowLabel_1pd36_58", Me = "_rowValue_1pd36_67", Ve = "_groupMembers_1pd36_75", Se = "_memberRow_1pd36_81", we = "_memberLabel_1pd36_86", De = "_memberValue_1pd36_94", Ee = "_abnormalValue_1pd36_102", xe = "_commentSection_1pd36_110", Be = "_commentText_1pd36_116", Ge = "_nestedGroup_1pd36_125", qe = "_nestedGroupLabel_1pd36_132", Ue = "_nestedGroupMembers_1pd36_141", o = {
5
- formsTableBody: Ne,
6
- customAccordianItem: Ae,
7
- formContent: Fe,
8
- formDetailsContainer: Re,
9
- observation: Le,
10
- groupContainer: Ce,
11
- rowContainer: Oe,
12
- groupLabel: Ie,
13
- rowLabel: Te,
14
- rowValue: Me,
15
- groupMembers: Ve,
16
- memberRow: Se,
17
- memberLabel: we,
18
- memberValue: De,
19
- abnormalValue: Ee,
20
- commentSection: xe,
21
- commentText: Be,
22
- nestedGroup: Ge,
23
- nestedGroupLabel: qe,
24
- nestedGroupMembers: Ue
25
- }, H = (e) => {
26
- const r = be(e);
27
- return r === "Image" ? /* @__PURE__ */ s(
28
- pe,
29
- {
30
- imageSrc: e,
31
- alt: e,
32
- id: `${e}-img`
33
- }
34
- ) : r === "Video" ? /* @__PURE__ */ s(fe, { id: `${e}-video`, videoSrc: e }) : r === "PDF" ? /* @__PURE__ */ s(_e, { id: `${e}-pdf`, src: e }) : e;
35
- }, j = (e) => {
36
- const r = e.observationValue?.unit, n = e.observationValue?.referenceRange?.low?.value, a = e.observationValue?.referenceRange?.high?.value, d = n != null, c = a != null, m = d && c ? ` (${n} - ${a})` : d ? ` (>${n})` : c ? ` (<${a})` : "", t = e.observationValue?.isAbnormal === !0;
37
- return { units: r, rangeString: m, isAbnormal: t };
38
- }, K = ({
39
- member: e,
40
- depth: r = 0,
41
- memberIndex: n = 0,
42
- formName: a = "",
43
- comment: d
44
- }) => {
45
- const c = e.members && e.members.length > 0, m = e.display, t = a ? `${a}-` : "";
46
- if (c)
47
- return /* @__PURE__ */ p(
48
- "div",
49
- {
50
- className: o.nestedGroup,
51
- "data-testid": `${t}obs-nested-group-${m}-${n}`,
52
- children: [
53
- /* @__PURE__ */ s(
54
- "div",
55
- {
56
- className: o.nestedGroupLabel,
57
- "data-testid": `${t}obs-nested-group-label-${m}-${n}`,
58
- style: { paddingLeft: `${r * 16}px` },
59
- children: m
60
- }
61
- ),
62
- /* @__PURE__ */ s(
63
- "div",
64
- {
65
- className: o.nestedGroupMembers,
66
- "data-testid": `${t}obs-nested-group-members-${m}-${n}`,
67
- children: e.members?.map((y, N) => /* @__PURE__ */ s(
68
- K,
69
- {
70
- member: y,
71
- depth: r + 1,
72
- memberIndex: N,
73
- formName: a
74
- },
75
- `${y.id}`
76
- ))
77
- }
78
- )
79
- ]
80
- }
81
- );
82
- const { units: b, rangeString: h, isAbnormal: f } = j(e), _ = e.observationValue?.value?.toString(), $ = _ ? H(_) : null;
83
- return /* @__PURE__ */ p(k, { children: [
84
- /* @__PURE__ */ p(
85
- "div",
86
- {
87
- className: o.memberRow,
88
- "data-testid": `${t}obs-member-row-${m}-${n}`,
89
- style: { paddingLeft: `${r * 16}px` },
90
- children: [
91
- /* @__PURE__ */ p(
92
- "p",
93
- {
94
- className: R(
95
- o.memberLabel,
96
- f ? o.abnormalValue : ""
97
- ),
98
- "data-testid": `${t}obs-member-label-${m}-${n}`,
99
- children: [
100
- m,
101
- h
102
- ]
103
- }
104
- ),
105
- /* @__PURE__ */ p(
106
- "div",
107
- {
108
- className: R(
109
- o.memberValue,
110
- f ? o.abnormalValue : ""
111
- ),
112
- "data-testid": `${t}obs-member-value-${m}-${n}`,
113
- children: [
114
- $,
115
- b && ` ${b}`
116
- ]
117
- }
118
- )
119
- ]
120
- }
121
- ),
122
- d && /* @__PURE__ */ s(
123
- "div",
124
- {
125
- className: o.commentSection,
126
- "data-testid": `${t}obs-member-comment-${m}-${n}`,
127
- style: { paddingLeft: `${r * 16}px` },
128
- children: /* @__PURE__ */ p("span", { className: o.commentText, children: [
129
- d,
130
- e.encounter?.provider && ` - by ${e.encounter.provider}`
131
- ] })
132
- }
133
- )
134
- ] });
135
- }, Pe = ({
136
- observation: e,
137
- index: r,
138
- formName: n = "",
139
- comment: a
140
- }) => {
141
- const d = e.members && e.members.length > 0, { units: c, rangeString: m, isAbnormal: t } = j(e), b = n ? `${n}-` : "", h = e.observationValue?.value?.toString(), f = h ? H(h) : null;
142
- return /* @__PURE__ */ p(
143
- "div",
144
- {
145
- className: o.observation,
146
- "data-testid": `${b}observation-item-${e.display}-${r}`,
147
- children: [
148
- /* @__PURE__ */ p(
149
- "div",
150
- {
151
- className: d ? o.groupContainer : o.rowContainer,
152
- "data-testid": `${b}observation-container-${e.display}-${r}`,
153
- children: [
154
- /* @__PURE__ */ p(
155
- "p",
156
- {
157
- className: R(
158
- d ? o.groupLabel : o.rowLabel,
159
- !d && t ? o.abnormalValue : ""
160
- ),
161
- "data-testid": `${b}observation-label-${e.display}-${r}`,
162
- children: [
163
- e.display,
164
- !d && m && /* @__PURE__ */ s("span", { className: o.rangeInfo, children: m })
165
- ]
166
- }
167
- ),
168
- d ? /* @__PURE__ */ s(
169
- "div",
170
- {
171
- className: o.groupMembers,
172
- "data-testid": `${b}observation-group-members-${e.display}-${r}`,
173
- children: e.members?.map((_, $) => /* @__PURE__ */ s(
174
- K,
175
- {
176
- member: _,
177
- depth: 0,
178
- memberIndex: $,
179
- formName: n
180
- },
181
- `${_.id}`
182
- ))
183
- }
184
- ) : /* @__PURE__ */ p(
185
- "div",
186
- {
187
- className: R(
188
- o.rowValue,
189
- t ? o.abnormalValue : ""
190
- ),
191
- "data-testid": `${b}observation-value-${e.display}-${r}`,
192
- children: [
193
- f,
194
- c && ` ${c}`
195
- ]
196
- }
197
- )
198
- ]
199
- }
200
- ),
201
- a && /* @__PURE__ */ s(
202
- "div",
203
- {
204
- className: o.commentSection,
205
- "data-testid": `${b}observation-comment-${e.display}-${r}`,
206
- children: /* @__PURE__ */ p("span", { className: o.commentText, children: [
207
- a,
208
- e.encounter?.provider && ` - by ${e.encounter.provider}`
209
- ] })
210
- }
211
- )
212
- ]
213
- },
214
- `${e.id}-${r}`
215
- );
216
- }, ke = (e) => e ? e.extension?.find(
217
- (r) => r.url === $e
218
- )?.valueString : void 0, He = (e) => {
219
- if (e)
220
- return e.note?.[0]?.text;
221
- }, je = (e, r) => e.entry?.find((n) => n.resource?.id === r)?.resource, I = (e, r) => {
222
- const n = je(e, r);
223
- return n ? {
224
- formFieldPath: ke(n),
225
- comment: He(n)
226
- } : {};
227
- }, Ke = (e, r) => {
228
- if (!e?.entry || !r)
229
- return [];
230
- const n = ce(e);
231
- return [
232
- ...n.observations.map((a) => {
233
- const { formFieldPath: d, comment: c } = I(
234
- e,
235
- a.id
236
- );
237
- return { obs: a, formFieldPath: d, comment: c };
238
- }),
239
- ...n.groupedObservations.flatMap((a) => {
240
- const { formFieldPath: d } = I(e, a.id);
241
- return (a.members ?? []).map((c) => {
242
- const { comment: m } = I(e, c.id);
243
- return { obs: c, formFieldPath: d, comment: m };
244
- });
245
- })
246
- ].filter(
247
- ({ formFieldPath: a }) => !a || a.includes(r)
248
- );
249
- }, We = ({
250
- episodeOfCareUuids: e,
251
- encounterUuids: r,
252
- config: n
253
- }) => {
254
- const { t: a } = ee(), d = re(), [c, m] = P(!1), [t, b] = P(null), h = n?.numberOfVisits, f = ae(
255
- e,
256
- r
257
- ), _ = te(), {
258
- data: $ = [],
259
- isLoading: y,
260
- isError: N,
261
- error: Q,
262
- refetch: Y
263
- } = A({
264
- queryKey: ["forms", d, e],
265
- queryFn: () => he(d, void 0, h),
266
- enabled: !!d && !f
267
- }), T = g(() => !r || r.length === 0 ? $ : $.filter(
268
- (i) => r.includes(i.encounterUuid)
269
- ), [$, r]), { data: M = [] } = A({
270
- queryKey: ["observationForms"],
271
- queryFn: () => ve()
272
- }), V = F(
273
- (i) => M.find((u) => u.name === i)?.uuid,
274
- [M]
275
- ), L = g(() => {
276
- if (t)
277
- return V(t.formName);
278
- }, [t, V]), { isLoading: z, error: S } = A({
279
- queryKey: ["formMetadata", L],
280
- queryFn: () => ge(L),
281
- enabled: !!L && c
282
- }), {
283
- data: C,
284
- isLoading: W,
285
- error: w
286
- } = A({
287
- queryKey: ["formsEncounterFHIR", t?.encounterUuid],
288
- queryFn: () => ye(t.encounterUuid),
289
- enabled: !!t?.encounterUuid && c
290
- });
291
- oe(
292
- (i) => {
293
- i.patientUUID === d && i.updatedConcepts.size > 0 && (Y(), _.invalidateQueries({ queryKey: ["formsEncounterFHIR"] }));
294
- },
295
- [d]
296
- );
297
- const D = g(() => !C || !t?.formName ? [] : Ke(
298
- C,
299
- t.formName
300
- ), [C, t?.formName]), E = g(
301
- () => [
302
- { key: "recordedOn", header: a("FORM_RECORDED_ON") },
303
- { key: "recordedBy", header: a("FORM_RECORDED_BY") }
304
- ],
305
- [a]
306
- ), Z = g(
307
- () => [
308
- { key: "recordedOn", sortable: !0 },
309
- { key: "recordedBy", sortable: !0 }
310
- ],
311
- []
312
- ), x = g(() => {
313
- const i = T.reduce(
314
- (u, l) => {
315
- const v = l.formName;
316
- u[v] ??= [];
317
- const O = l.providers.map((X) => X.providerName).filter(Boolean).join(", ");
318
- return u[v].push({
319
- id: l.encounterUuid,
320
- formName: l.formName,
321
- recordedOn: ne(l.encounterDateTime, a, ue).formattedResult,
322
- recordedBy: O ?? "--",
323
- encounterDateTime: l.encounterDateTime,
324
- encounterUuid: l.encounterUuid
325
- }), u;
326
- },
327
- {}
328
- );
329
- return Object.entries(i).map(
330
- ([u, l]) => ({
331
- formName: u,
332
- records: l.sort(
333
- (v, O) => O.encounterDateTime - v.encounterDateTime
334
- )
335
- })
336
- ).sort((u, l) => u.formName.localeCompare(l.formName));
337
- }, [T, a]), B = F((i) => {
338
- b(i), m(!0);
339
- }, []), J = F(() => {
340
- m(!1), b(null);
341
- }, []), G = F(
342
- (i, u) => {
343
- switch (u) {
344
- case "recordedOn":
345
- return /* @__PURE__ */ s(se, { onClick: () => B(i), children: i.recordedOn });
346
- case "recordedBy":
347
- return i.recordedBy;
348
- default:
349
- return null;
350
- }
351
- },
352
- [B]
353
- );
354
- return /* @__PURE__ */ p(k, { children: [
355
- /* @__PURE__ */ s("div", { "data-testid": "forms-table", children: y || N || x.length === 0 || f ? /* @__PURE__ */ s(
356
- q,
357
- {
358
- headers: E,
359
- ariaLabel: a("FORMS_HEADING"),
360
- rows: [],
361
- loading: y,
362
- errorStateMessage: N ? Q?.message : void 0,
363
- emptyStateMessage: a("FORMS_UNAVAILABLE"),
364
- renderCell: G,
365
- className: o.formsTableBody,
366
- dataTestId: "forms-table"
367
- }
368
- ) : /* @__PURE__ */ s(de, { align: "start", children: x.map((i, u) => {
369
- const { formName: l, records: v } = i;
370
- return /* @__PURE__ */ s(
371
- me,
372
- {
373
- title: l,
374
- className: o.customAccordianItem,
375
- testId: `accordian-title-${l}`,
376
- open: u === 0,
377
- children: /* @__PURE__ */ s(
378
- q,
379
- {
380
- headers: E,
381
- ariaLabel: a("FORMS_HEADING"),
382
- rows: v,
383
- loading: !1,
384
- errorStateMessage: "",
385
- sortable: Z,
386
- emptyStateMessage: a("FORMS_UNAVAILABLE"),
387
- renderCell: G,
388
- className: o.formsTableBody,
389
- dataTestId: `forms-table-${l}`
390
- }
391
- )
392
- },
393
- l
394
- );
395
- }) }) }),
396
- c && t && /* @__PURE__ */ s(
397
- ie,
398
- {
399
- id: "modalIdForActionAreaLayout",
400
- portalId: "main-display-area",
401
- open: c,
402
- onRequestClose: J,
403
- modalHeading: t.formName,
404
- modalLabel: `${t.recordedOn} | ${t.recordedBy}`,
405
- passiveModal: !0,
406
- size: "md",
407
- testId: "form-details-modal",
408
- children: /* @__PURE__ */ s("div", { className: o.formContent, children: z || W ? /* @__PURE__ */ s(le, { width: "100%", lineCount: 3 }) : S ? /* @__PURE__ */ s("div", { children: U(S).message ?? a("ERROR_FETCHING_FORM_METADATA") }) : w ? /* @__PURE__ */ s("div", { children: U(w).message ?? a("ERROR_FETCHING_FORM_DATA") }) : D.length > 0 ? /* @__PURE__ */ s("div", { className: o.formDetailsContainer, children: D.map(({ obs: i, comment: u }, l) => /* @__PURE__ */ s(
409
- Pe,
410
- {
411
- observation: i,
412
- index: l,
413
- formName: t.formName,
414
- comment: u
415
- },
416
- `${i.id}`
417
- )) }) : /* @__PURE__ */ s("div", { children: a("NO_FORM_DATA_AVAILABLE") }) })
418
- }
419
- )
420
- ] });
421
- };
422
- export {
423
- We as default
424
- };