@argusoft/medplat-core 1.0.28 → 1.0.29

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.
Files changed (91) hide show
  1. package/dist/AccessRights-Zm8Obm4N.js +1284 -0
  2. package/dist/AccessRights-Zm8Obm4N.js.map +1 -0
  3. package/dist/{AddFeatures-C0Z29oSd.js → AddFeatures-v3TmGQee.js} +2 -2
  4. package/dist/{AddFeatures-C0Z29oSd.js.map → AddFeatures-v3TmGQee.js.map} +1 -1
  5. package/dist/AddMenuConfiguration-Ce91MhnU.js +8547 -0
  6. package/dist/AddMenuConfiguration-Ce91MhnU.js.map +1 -0
  7. package/dist/{AddRoleDrawer-CQdzQZLb.js → AddRoleDrawer-0gqAK8N0.js} +62 -63
  8. package/dist/AddRoleDrawer-0gqAK8N0.js.map +1 -0
  9. package/dist/{ChangePasswordModalCore-CDxkeIIM.js → ChangePasswordModalCore-DutQAZOx.js} +2 -2
  10. package/dist/{ChangePasswordModalCore-CDxkeIIM.js.map → ChangePasswordModalCore-DutQAZOx.js.map} +1 -1
  11. package/dist/{ConditionConfig-DSsgGEXS.js → ConditionConfig-B4Ffpgj3.js} +2 -2
  12. package/dist/ConditionConfig-B4Ffpgj3.js.map +1 -0
  13. package/dist/{EntityManagement-GaYsBTvf.js → EntityManagement-CPQL6qBj.js} +2 -2
  14. package/dist/{EntityManagement-GaYsBTvf.js.map → EntityManagement-CPQL6qBj.js.map} +1 -1
  15. package/dist/{EventConfigurations-kNtAj_WM.js → EventConfigurations-BJcURufo.js} +3 -3
  16. package/dist/{EventConfigurations-kNtAj_WM.js.map → EventConfigurations-BJcURufo.js.map} +1 -1
  17. package/dist/{EventsExceptionModal-D4Bf1ilS.js → EventsExceptionModal-BlZtBQoR.js} +2 -2
  18. package/dist/{EventsExceptionModal-D4Bf1ilS.js.map → EventsExceptionModal-BlZtBQoR.js.map} +1 -1
  19. package/dist/{EventsSkeleton-8iiETGcf.js → EventsSkeleton-DK6JDKAK.js} +26 -19
  20. package/dist/EventsSkeleton-DK6JDKAK.js.map +1 -0
  21. package/dist/{FeatureMenu-jl7-Tk6y.js → FeatureMenu-C3503UIX.js} +3 -3
  22. package/dist/{FeatureMenu-jl7-Tk6y.js.map → FeatureMenu-C3503UIX.js.map} +1 -1
  23. package/dist/Features-Dne21RWu.js +14 -0
  24. package/dist/Features-Dne21RWu.js.map +1 -0
  25. package/dist/{ManageNotification-CaBAOhji.js → Google-DQxMfbaL.js} +1725 -2652
  26. package/dist/{ManageNotification-CaBAOhji.js.map → Google-DQxMfbaL.js.map} +1 -1
  27. package/dist/ImmunizationConfigurationBase-DLQVSNnt.js +5895 -0
  28. package/dist/ImmunizationConfigurationBase-DLQVSNnt.js.map +1 -0
  29. package/dist/ImmunizationConfigurationBase.css +1 -1
  30. package/dist/{ManageDynamicFeature-BhONvfC_.js → ManageDynamicFeature-dt096fyj.js} +2 -2
  31. package/dist/{ManageDynamicFeature-BhONvfC_.js.map → ManageDynamicFeature-dt096fyj.js.map} +1 -1
  32. package/dist/{ManageEventConfiguration-DV3I5POA.js → ManageEventConfiguration-BpSJszSX.js} +5 -5
  33. package/dist/{ManageEventConfiguration-DV3I5POA.js.map → ManageEventConfiguration-BpSJszSX.js.map} +1 -1
  34. package/dist/ManageNotification-CfhHlfxA.js +934 -0
  35. package/dist/ManageNotification-CfhHlfxA.js.map +1 -0
  36. package/dist/{ManageRole-CGYfglpo.js → ManageRole-4Y2PP4dQ.js} +32 -30
  37. package/dist/ManageRole-4Y2PP4dQ.js.map +1 -0
  38. package/dist/{ManageUser-AY1EUDLI.js → ManageUser-DDzyd9jm.js} +1728 -1592
  39. package/dist/ManageUser-DDzyd9jm.js.map +1 -0
  40. package/dist/MobileMenuManagement-Cf8IZlla.js +108 -0
  41. package/dist/MobileMenuManagement-Cf8IZlla.js.map +1 -0
  42. package/dist/{MobileTypeEventConfigModal-BxLympIO.js → MobileTypeEventConfigModal-DUkUYACe.js} +2 -2
  43. package/dist/MobileTypeEventConfigModal-DUkUYACe.js.map +1 -0
  44. package/dist/{NotificationList-C3Vb_jKU.js → NotificationList-BMFpNUJG.js} +109 -110
  45. package/dist/NotificationList-BMFpNUJG.js.map +1 -0
  46. package/dist/{OtherTypeEventConfigModal-BeG1GrUi.js → OtherTypeEventConfigModal-CYBfr2XE.js} +570 -478
  47. package/dist/OtherTypeEventConfigModal-CYBfr2XE.js.map +1 -0
  48. package/dist/{RoleManagement-BPl2cE27.js → RoleManagement-DEiBNfT8.js} +100 -101
  49. package/dist/RoleManagement-DEiBNfT8.js.map +1 -0
  50. package/dist/{ServerSyncModal-D_oFpv3C.js → ServerSyncModal-92U3xtqI.js} +84 -85
  51. package/dist/ServerSyncModal-92U3xtqI.js.map +1 -0
  52. package/dist/{SubMenu-DYxAPH2Z.js → SubMenu-B072oEGb.js} +3 -3
  53. package/dist/{SubMenu-DYxAPH2Z.js.map → SubMenu-B072oEGb.js.map} +1 -1
  54. package/dist/{TableDetails-Cf_YfnY2.js → TableDetails-BtafRxXb.js} +1069 -831
  55. package/dist/TableDetails-BtafRxXb.js.map +1 -0
  56. package/dist/{TableList-D6jnIbnz.js → TableList-Dpo6dO7S.js} +2 -2
  57. package/dist/{TableList-D6jnIbnz.js.map → TableList-Dpo6dO7S.js.map} +1 -1
  58. package/dist/{TypeConfiguration-37wp-gsl.js → TypeConfiguration-C3xoP2Nb.js} +2 -2
  59. package/dist/{TypeConfiguration-37wp-gsl.js.map → TypeConfiguration-C3xoP2Nb.js.map} +1 -1
  60. package/dist/{WidgetList-Dw_FmbbE.js → WidgetList-D7YuWfDD.js} +2 -2
  61. package/dist/{WidgetList-Dw_FmbbE.js.map → WidgetList-D7YuWfDD.js.map} +1 -1
  62. package/dist/dashboardLayoutUtils-D1xCAxp3.js +405 -0
  63. package/dist/dashboardLayoutUtils-D1xCAxp3.js.map +1 -0
  64. package/dist/index.js +4 -752
  65. package/dist/index.js.map +1 -1
  66. package/dist/index.lib-C3fwoM3y.js +820 -0
  67. package/dist/index.lib-C3fwoM3y.js.map +1 -0
  68. package/package.json +2 -2
  69. package/dist/AccessRights-CHu27ZOw.js +0 -1262
  70. package/dist/AccessRights-CHu27ZOw.js.map +0 -1
  71. package/dist/AddMenuConfiguration-BSQLl88V.js +0 -6570
  72. package/dist/AddMenuConfiguration-BSQLl88V.js.map +0 -1
  73. package/dist/AddRoleDrawer-CQdzQZLb.js.map +0 -1
  74. package/dist/ConditionConfig-DSsgGEXS.js.map +0 -1
  75. package/dist/EventsSkeleton-8iiETGcf.js.map +0 -1
  76. package/dist/Features-CObdzJp_.js +0 -13
  77. package/dist/Features-CObdzJp_.js.map +0 -1
  78. package/dist/ImmunizationConfigurationBase-DZGqwda2.js +0 -5910
  79. package/dist/ImmunizationConfigurationBase-DZGqwda2.js.map +0 -1
  80. package/dist/ManageRole-CGYfglpo.js.map +0 -1
  81. package/dist/ManageUser-AY1EUDLI.js.map +0 -1
  82. package/dist/MobileMenuManagement-CVAKyKDa.js +0 -112
  83. package/dist/MobileMenuManagement-CVAKyKDa.js.map +0 -1
  84. package/dist/MobileTypeEventConfigModal-BxLympIO.js.map +0 -1
  85. package/dist/NotificationList-C3Vb_jKU.js.map +0 -1
  86. package/dist/OtherTypeEventConfigModal-BeG1GrUi.js.map +0 -1
  87. package/dist/RoleManagement-BPl2cE27.js.map +0 -1
  88. package/dist/ServerSyncModal-D_oFpv3C.js.map +0 -1
  89. package/dist/TableDetails-Cf_YfnY2.js.map +0 -1
  90. package/dist/dashboardLayoutUtils-Bt5HA96J.js +0 -265
  91. package/dist/dashboardLayoutUtils-Bt5HA96J.js.map +0 -1
@@ -0,0 +1,820 @@
1
+ import { jsx as s } from "react/jsx-runtime";
2
+ import { lazy as m } from "react";
3
+ import { createSlice as j } from "@reduxjs/toolkit";
4
+ import { execute as p, executeAll as k } from "@/common/services/GlobalApis";
5
+ import { api as B } from "@/common/interceptors/AxiosInterceptor";
6
+ import './index.css';const d = m(
7
+ () => import("@/views/feature-components/VerifyRoute.jsx")
8
+ ), Z = m(() => import("./RoleManagement-DEiBNfT8.js").then((e) => e.R)), Q = m(
9
+ () => import("./QueryBuilder-z7eqfd7D.js").then((e) => e.Q)
10
+ ), W = m(() => import("./UserList-Bc8gYxRL.js")), V = m(() => import("./ManageUser-DDzyd9jm.js").then((e) => e.M)), J = m(
11
+ () => import("./QueryManagement-BIhEDKuA.js")
12
+ ), Y = m(() => import("./FeatureMenu-C3503UIX.js").then((e) => e.F)), K = m(() => import("./index-D9YNFPn9.js")), ee = m(
13
+ () => import("./NewServerManagement-Cxe0dV0O.js")
14
+ ), O = m(
15
+ () => import("./ManageDynamicFeature-dt096fyj.js")
16
+ ), te = m(
17
+ () => import("./SecurityAuditLogList-Dod711KT.js")
18
+ ), ae = m(
19
+ () => import("./EventConfigurations-BJcURufo.js")
20
+ ), U = m(
21
+ () => import("./ManageEventConfiguration-BpSJszSX.js")
22
+ ), ie = m(
23
+ () => import("./EntityManagement-CPQL6qBj.js")
24
+ ), ne = m(
25
+ () => import("./MobileMenuManagement-Cf8IZlla.js")
26
+ ), re = m(
27
+ () => import("./AddMenuConfiguration-Ce91MhnU.js")
28
+ ), oe = m(
29
+ () => import("./ManageTranslation-B4C9-lWD.js").then((e) => e.M)
30
+ ), se = m(
31
+ () => import("./WidgetList-D7YuWfDD.js")
32
+ ), le = m(
33
+ () => import("./NotificationList-BMFpNUJG.js").then((e) => e.N)
34
+ ), de = m(
35
+ () => import("./ImmunizationConfigurationsList-DdSZicTP.js")
36
+ ), G = m(
37
+ () => import("./manageImmunization-B4swS745.js")
38
+ ), me = m(
39
+ () => import("./ImmunizationConfigurationBase-DLQVSNnt.js")
40
+ ), ce = m(
41
+ () => import("./FhirServerList-Dkq7Kbes.js")
42
+ ), ue = m(
43
+ () => import("./FhirServerWizard-Db6Hm4bQ.js")
44
+ ), pe = m(
45
+ () => import("./FhirServerProfile-CUOwC6Wb.js")
46
+ ), ge = m(
47
+ () => import("./FhirRawResourceList-ZZFd7gTX.js")
48
+ ), Ze = [
49
+ {
50
+ path: "medplat/manage/role",
51
+ element: /* @__PURE__ */ s(
52
+ d,
53
+ {
54
+ headerTitle: "Roles",
55
+ pageTitle: "General",
56
+ url: "medplat/manage/role",
57
+ component: Z
58
+ }
59
+ )
60
+ },
61
+ {
62
+ path: "medplat/manage/query",
63
+ element: /* @__PURE__ */ s(
64
+ d,
65
+ {
66
+ headerTitle: "Query Master",
67
+ pageTitle: "General",
68
+ url: "medplat/manage/query",
69
+ component: Q
70
+ }
71
+ )
72
+ },
73
+ {
74
+ path: "medplat/manage/users",
75
+ element: /* @__PURE__ */ s(
76
+ d,
77
+ {
78
+ headerTitle: "Users",
79
+ pageTitle: "UserList",
80
+ url: "medplat/manage/users",
81
+ component: W
82
+ }
83
+ )
84
+ },
85
+ {
86
+ path: "medplat/manage/user",
87
+ element: /* @__PURE__ */ s(
88
+ d,
89
+ {
90
+ headerTitle: "Users",
91
+ pageTitle: "ManageUser",
92
+ url: "medplat/manage/users",
93
+ component: V
94
+ }
95
+ )
96
+ },
97
+ {
98
+ path: "medplat/manage/user/:id",
99
+ element: /* @__PURE__ */ s(
100
+ d,
101
+ {
102
+ headerTitle: "Users",
103
+ pageTitle: "General",
104
+ url: "medplat/manage/users",
105
+ component: V
106
+ }
107
+ )
108
+ },
109
+ {
110
+ path: "medplat/querymanagement",
111
+ element: /* @__PURE__ */ s(
112
+ d,
113
+ {
114
+ headerTitle: "Query Management",
115
+ pageTitle: "General",
116
+ url: "medplat/querymanagement",
117
+ component: J
118
+ }
119
+ )
120
+ },
121
+ {
122
+ path: "medplat/manage/menu",
123
+ element: /* @__PURE__ */ s(
124
+ d,
125
+ {
126
+ headerTitle: "Features",
127
+ pageTitle: "General",
128
+ url: "medplat/manage/menu",
129
+ component: Y
130
+ }
131
+ )
132
+ },
133
+ {
134
+ path: "medplat/manage/menu/addfeature",
135
+ element: /* @__PURE__ */ s(
136
+ d,
137
+ {
138
+ headerTitle: "Features",
139
+ pageTitle: "General",
140
+ url: "medplat/manage/menu",
141
+ component: O
142
+ }
143
+ )
144
+ },
145
+ {
146
+ path: "medplat/manage/menu/addDynamicFeature",
147
+ element: /* @__PURE__ */ s(
148
+ d,
149
+ {
150
+ headerTitle: "Features",
151
+ pageTitle: "General",
152
+ url: "medplat/manage/menu",
153
+ component: O
154
+ }
155
+ )
156
+ },
157
+ {
158
+ path: "medplat/notification/all",
159
+ element: /* @__PURE__ */ s(
160
+ d,
161
+ {
162
+ headerTitle: "Event Configuration",
163
+ pageTitle: "General",
164
+ url: "medplat/notification/all",
165
+ component: ae
166
+ }
167
+ )
168
+ },
169
+ {
170
+ path: "medplat/views/config",
171
+ element: /* @__PURE__ */ s(
172
+ d,
173
+ {
174
+ headerTitle: "Event Configuration",
175
+ pageTitle: "General",
176
+ url: "medplat/notification",
177
+ component: U
178
+ }
179
+ )
180
+ },
181
+ {
182
+ path: "medplat/views/config/:id",
183
+ element: /* @__PURE__ */ s(
184
+ d,
185
+ {
186
+ headerTitle: "Event Configuration",
187
+ pageTitle: "General",
188
+ url: "medplat/notification",
189
+ component: U
190
+ }
191
+ )
192
+ },
193
+ {
194
+ path: "medplat/admin/newServerManagement",
195
+ element: /* @__PURE__ */ s(
196
+ d,
197
+ {
198
+ headerTitle: "Server Management",
199
+ url: "medplat/admin/newServerManagement",
200
+ component: ee
201
+ }
202
+ )
203
+ },
204
+ {
205
+ path: "medplat/admin/mobileEntityManagement",
206
+ element: /* @__PURE__ */ s(
207
+ d,
208
+ {
209
+ pageTitle: "General",
210
+ url: "medplat/admin/mobileEntityManagement",
211
+ component: ie,
212
+ headerTitle: "Mobile Database Management"
213
+ }
214
+ )
215
+ },
216
+ {
217
+ path: "medplat/admin/mobileMenuManagement",
218
+ element: /* @__PURE__ */ s(
219
+ d,
220
+ {
221
+ url: "medplat/admin/mobileMenuManagement",
222
+ component: /* @__PURE__ */ s(ne, {}),
223
+ headerTitle: "Mobile Menu Management"
224
+ }
225
+ )
226
+ },
227
+ {
228
+ path: "medplat/admin/mobileMenuManagement/addMenuConfiguration",
229
+ element: /* @__PURE__ */ s(re, {})
230
+ },
231
+ {
232
+ path: "medplat/manage/manageTranslation",
233
+ element: /* @__PURE__ */ s(
234
+ d,
235
+ {
236
+ headerTitle: "Manage Translation",
237
+ pageTitle: "General",
238
+ url: "medplat/manage/manageTranslation",
239
+ component: oe
240
+ }
241
+ )
242
+ },
243
+ {
244
+ path: "medplat/manage/managewidgets",
245
+ element: /* @__PURE__ */ s(
246
+ d,
247
+ {
248
+ headerTitle: "Widgets",
249
+ pageTitle: "General",
250
+ url: "medplat/manage/manage-widgets",
251
+ component: se
252
+ }
253
+ )
254
+ },
255
+ {
256
+ path: "medplat/manage/notification",
257
+ element: /* @__PURE__ */ s(
258
+ d,
259
+ {
260
+ headerTitle: "Notification Configuration",
261
+ pageTitle: "General",
262
+ url: "medplat/manage/notification",
263
+ component: le
264
+ }
265
+ )
266
+ },
267
+ {
268
+ path: "medplat/manage/immunizationConfiguratorList",
269
+ element: /* @__PURE__ */ s(
270
+ d,
271
+ {
272
+ headerTitle: "Immunizations",
273
+ pageTitle: "General",
274
+ url: "medplat/manage/manageTranslation",
275
+ component: de
276
+ }
277
+ )
278
+ },
279
+ {
280
+ path: "medplat/manage/manageImmunization",
281
+ element: /* @__PURE__ */ s(
282
+ d,
283
+ {
284
+ headerTitle: "Immunizations",
285
+ pageTitle: "General",
286
+ url: "medplat/training/question",
287
+ component: G
288
+ }
289
+ )
290
+ },
291
+ {
292
+ path: "medplat/manage/manageImmunization/:id",
293
+ element: /* @__PURE__ */ s(
294
+ d,
295
+ {
296
+ headerTitle: "Immunizations",
297
+ pageTitle: "General",
298
+ url: "medplat/training/question",
299
+ component: G
300
+ }
301
+ )
302
+ },
303
+ {
304
+ path: "medplat/manage/immunizationConfiguration",
305
+ element: /* @__PURE__ */ s(
306
+ d,
307
+ {
308
+ headerTitle: "Immunization Configuration",
309
+ pageTitle: "General",
310
+ url: "medplat/manage/immunizationConfiguration",
311
+ component: me
312
+ }
313
+ )
314
+ },
315
+ {
316
+ path: "medplat/manage/securityAuditLogs",
317
+ element: /* @__PURE__ */ s(
318
+ d,
319
+ {
320
+ headerTitle: "Security Audit Logs",
321
+ pageTitle: "Security Audit Logs",
322
+ url: "medplat/manage/securityAuditLogs",
323
+ component: te
324
+ }
325
+ )
326
+ },
327
+ {
328
+ path: "medplat/manage/activityAnalytics",
329
+ element: /* @__PURE__ */ s(
330
+ d,
331
+ {
332
+ headerTitle: "Activity Analytics",
333
+ url: "medplat/manage/activityAnalytics",
334
+ component: K
335
+ }
336
+ )
337
+ },
338
+ {
339
+ path: "medplat/admin/fhirResource",
340
+ element: /* @__PURE__ */ s(
341
+ d,
342
+ {
343
+ headerTitle: "FHIR Sync",
344
+ pageTitle: "General",
345
+ url: "medplat/admin/fhirResource",
346
+ component: ce
347
+ }
348
+ )
349
+ },
350
+ {
351
+ path: "medplat/admin/fhirResource/new",
352
+ element: /* @__PURE__ */ s(
353
+ d,
354
+ {
355
+ headerTitle: "Connect FHIR Server",
356
+ pageTitle: "General",
357
+ url: "medplat/admin/fhirResource",
358
+ component: ue
359
+ }
360
+ )
361
+ },
362
+ {
363
+ path: "medplat/admin/fhirResource/:serverId",
364
+ element: /* @__PURE__ */ s(
365
+ d,
366
+ {
367
+ headerTitle: "FHIR Server",
368
+ pageTitle: "General",
369
+ url: "medplat/admin/fhirResource",
370
+ component: pe
371
+ }
372
+ )
373
+ },
374
+ {
375
+ path: "medplat/admin/fhirResource/:serverId/staging",
376
+ element: /* @__PURE__ */ s(
377
+ d,
378
+ {
379
+ headerTitle: "FHIR Staging Inbox",
380
+ pageTitle: "General",
381
+ url: "medplat/admin/fhirResource",
382
+ component: ge
383
+ }
384
+ )
385
+ }
386
+ ], w = () => ({
387
+ vaccines: [],
388
+ selectedVaccineIds: [],
389
+ views: [
390
+ {
391
+ id: "landing",
392
+ name: "Dashboard"
393
+ },
394
+ {
395
+ id: "schedule-config",
396
+ name: "Schedule Config"
397
+ },
398
+ {
399
+ id: "summary",
400
+ name: "Configuration Summary"
401
+ }
402
+ ],
403
+ currentViewId: "summary",
404
+ scheduledVaccines: [],
405
+ baseDateMaster: [],
406
+ recipientMaster: [],
407
+ dbTablesMaster: [],
408
+ filtersMaster: [],
409
+ featureRights: {},
410
+ isConfigLoaded: !1,
411
+ validationErrors: {}
412
+ }), Ie = w(), L = (e = [], t = {}) => {
413
+ const i = e.findIndex(
414
+ (a) => t.id !== void 0 && (a == null ? void 0 : a.id) === t.id || t.code && (a == null ? void 0 : a.code) === t.code
415
+ );
416
+ return i === -1 ? [...e, t] : e.map(
417
+ (a, r) => r === i ? {
418
+ ...a,
419
+ ...t
420
+ } : a
421
+ );
422
+ }, x = j({
423
+ name: "immunization",
424
+ initialState: Ie,
425
+ reducers: {
426
+ toggleVaccine: (e, t) => {
427
+ const i = t.payload;
428
+ Array.isArray(e.selectedVaccineIds) || (e.selectedVaccineIds = []);
429
+ const a = e.selectedVaccineIds.indexOf(i);
430
+ a > -1 ? e.selectedVaccineIds.splice(a, 1) : e.selectedVaccineIds.push(i);
431
+ },
432
+ setVaccines: (e, t) => {
433
+ const i = Array.isArray(t.payload) ? t.payload : [];
434
+ e.vaccines = i, e.selectedVaccineIds.length === 0 && (e.selectedVaccineIds = i.filter((a) => a.isActive).map((a) => a.id));
435
+ },
436
+ setSelectedVaccineIds: (e, t) => {
437
+ e.selectedVaccineIds = t.payload;
438
+ },
439
+ addCustomVaccine: (e, t) => {
440
+ const i = t.payload || {}, {
441
+ name: a,
442
+ vaccine_name: r,
443
+ disease: o,
444
+ target_prevention: c,
445
+ id: u,
446
+ baseDateCode: f,
447
+ base_date_code: l,
448
+ recipientType: T,
449
+ recipient_type: n
450
+ } = i, y = a || r || "Unnamed Vaccine", I = o || c || "General", g = (Array.isArray(e.vaccines) ? e.vaccines : []).map((h) => Number(h == null ? void 0 : h.id)).filter((h) => !Number.isNaN(h)), M = g.length > 0 ? Math.max(...g) + 1 : 1, _ = {
451
+ id: u || M,
452
+ name: y,
453
+ category: I,
454
+ doses: 0,
455
+ doseType: "FIXED",
456
+ scheduleType: "ROUTINE",
457
+ doseDetails: {},
458
+ regions: [],
459
+ dependencies: [],
460
+ isActive: i.isActive !== void 0 ? i.isActive : !1,
461
+ baseDateCode: f || l || null,
462
+ recipientType: T || n || ""
463
+ };
464
+ Array.isArray(e.vaccines) || (e.vaccines = []), e.vaccines.push(_);
465
+ },
466
+ setCurrentView: (e, t) => {
467
+ e.currentViewId = t.payload;
468
+ },
469
+ updateScheduledVaccine: (e, t) => {
470
+ const i = t.payload, a = e.scheduledVaccines.findIndex((r) => r.id === i.id);
471
+ a !== -1 ? e.scheduledVaccines[a] = {
472
+ ...e.scheduledVaccines[a],
473
+ ...i
474
+ } : e.scheduledVaccines.push(i);
475
+ },
476
+ setBaseDatesMaster: (e, t) => {
477
+ e.baseDateMaster = t.payload;
478
+ },
479
+ setRecipientMaster: (e, t) => {
480
+ e.recipientMaster = t.payload;
481
+ },
482
+ setDbTablesMaster: (e, t) => {
483
+ e.dbTablesMaster = t.payload;
484
+ },
485
+ setFiltersMaster: (e, t) => {
486
+ e.filtersMaster = t.payload;
487
+ },
488
+ upsertBaseDateMasterItem: (e, t) => {
489
+ e.baseDateMaster = L(e.baseDateMaster, t.payload);
490
+ },
491
+ upsertRecipientMasterItem: (e, t) => {
492
+ e.recipientMaster = L(e.recipientMaster, t.payload);
493
+ },
494
+ updateBaseDateMasterStatus: (e, t) => {
495
+ const { code: i, is_active: a } = t.payload;
496
+ e.baseDateMaster = e.baseDateMaster.map(
497
+ (r) => r.code === i ? { ...r, is_active: a } : r
498
+ );
499
+ },
500
+ upsertFilterMasterItem: (e, t) => {
501
+ e.filtersMaster = L(e.filtersMaster, t.payload);
502
+ },
503
+ updateFilterMasterStatus: (e, t) => {
504
+ const { code: i, is_active: a } = t.payload;
505
+ e.filtersMaster = e.filtersMaster.map(
506
+ (r) => r.code === i ? { ...r, is_active: a } : r
507
+ );
508
+ },
509
+ setFeatureRights: (e, t) => {
510
+ e.featureRights = t.payload || {};
511
+ },
512
+ setImmunizationConfigLoaded: (e, t) => {
513
+ e.isConfigLoaded = t.payload;
514
+ },
515
+ resetImmunizationState: () => w(),
516
+ activateSelectedVaccines: (e) => {
517
+ e.vaccines = e.vaccines.map((t) => ({
518
+ ...t,
519
+ isActive: e.selectedVaccineIds.includes(t.id)
520
+ }));
521
+ },
522
+ setVaccineStatus: (e, t) => {
523
+ const { vaccineId: i, status: a } = t.payload, r = e.vaccines.findIndex((c) => c.id === i);
524
+ r !== -1 && (e.vaccines[r].isActive = a), Array.isArray(e.selectedVaccineIds) || (e.selectedVaccineIds = []);
525
+ const o = e.selectedVaccineIds.indexOf(i);
526
+ a && o === -1 ? e.selectedVaccineIds.push(i) : !a && o !== -1 && e.selectedVaccineIds.splice(o, 1);
527
+ },
528
+ setValidationErrors: (e, t) => {
529
+ const { vaccineId: i, errors: a } = t.payload;
530
+ e.validationErrors[i] = a;
531
+ },
532
+ clearValidationErrors: (e, t) => {
533
+ const i = t.payload;
534
+ i ? delete e.validationErrors[i] : e.validationErrors = {};
535
+ }
536
+ }
537
+ }), {
538
+ toggleVaccine: Qe,
539
+ setVaccines: We,
540
+ addCustomVaccine: Je,
541
+ setCurrentView: Ye,
542
+ updateScheduledVaccine: Ke,
543
+ setBaseDatesMaster: et,
544
+ setRecipientMaster: tt,
545
+ setDbTablesMaster: at,
546
+ setFiltersMaster: it,
547
+ upsertBaseDateMasterItem: nt,
548
+ upsertRecipientMasterItem: rt,
549
+ updateBaseDateMasterStatus: ot,
550
+ upsertFilterMasterItem: st,
551
+ updateFilterMasterStatus: lt,
552
+ setFeatureRights: dt,
553
+ setImmunizationConfigLoaded: mt,
554
+ resetImmunizationState: ct,
555
+ activateSelectedVaccines: ut,
556
+ setSelectedVaccineIds: pt,
557
+ setValidationErrors: gt,
558
+ clearValidationErrors: It,
559
+ setVaccineStatus: ft
560
+ } = x.actions, Tt = x.reducer, D = (e) => !e || typeof e == "string" && e.toLowerCase() === "birth" ? 0 : Number.parseInt(e) || 0, b = (e, t) => {
561
+ if (!e || typeof e == "string" && e.toLowerCase() === "birth") return 0;
562
+ const i = Number.parseInt(e) || 0;
563
+ return t === "weeks" ? i * 7 : t === "months" ? i * 30 : t === "years" ? i * 365 : i;
564
+ }, C = (e) => e == null || String(e).trim() === "", yt = "lifelong", z = (e) => e === null, fe = "LIFELONG", Te = (e, t = {}, i) => {
565
+ const a = {}, r = !C(e.overdueFrom), o = !C(e.overdueTill);
566
+ if (!r)
567
+ return o && (a.overdueTill = "Set Overdue From first"), a;
568
+ const c = b(e.overdueFrom, t.overdueFrom || "days"), u = b(e.overdueTill, t.overdueTill || "days");
569
+ return c <= 0 ? a.overdueFrom = "Must be greater than 0" : i > 0 && c >= i && (a.overdueFrom = "Must be within the eligibility window"), o ? u <= c ? a.overdueTill = "Must be greater than Overdue From" : i > 0 && u > i && (a.overdueTill = "Must be within the eligibility window") : a.overdueTill = "Overdue Till is required", a;
570
+ }, ye = (e, t, i, a = {}) => {
571
+ if (i === 0) return null;
572
+ const r = [], o = Array.isArray(e) ? e : [e], c = a.eligibleFrom || "days", u = a.eligibleTo || "days", f = a.interval || "days";
573
+ return o.forEach((l, T) => {
574
+ const n = l.units || {}, y = n.eligibleFrom || c, I = n.eligibleTo || u, R = n.interval || f, g = {}, M = b(l.eligibleFrom, y), N = b(l.eligibleTo, I), _ = z(l.eligibleTo);
575
+ (l.eligibleFrom === void 0 || l.eligibleFrom === null || l.eligibleFrom === "") && T !== 0 && (g.eligibleFrom = "Eligible From is required"), !_ && (l.eligibleTo === void 0 || l.eligibleTo === "" || b(l.eligibleTo, I) === 0) && (g.eligibleTo = "Eligible To is required");
576
+ const h = t === "FLEXIBLE" && T === o.length - 1;
577
+ if (_ && t === "FLEXIBLE" && !h && (g.eligibleTo = "Only the last dose can be lifelong"), t === "FIXED" && i > 1 || !h && t === "FLEXIBLE") {
578
+ const A = Number.parseInt(l.interval) || 0, F = b(l.interval, R);
579
+ l.interval === void 0 || l.interval === null || l.interval === "" || A === 0 || l.interval === "0 days" ? g.interval = "Interval is required" : t === "FIXED" && i > 1 && // An open-ended window always has room for every dose.
580
+ !_ && (i - 1) * F > N - M && (g.interval = `Number of doses not possible in the window. Total interval exceeds available window (${N - M} days).`);
581
+ }
582
+ if (!_ && N <= M && l.eligibleFrom && l.eligibleTo && (g.eligibleTo = "Must be strictly greater than ELIGIBLE FROM"), t === "FLEXIBLE" && Object.assign(g, Te(l, n, _ ? null : N - M)), T > 0 && t === "FLEXIBLE") {
583
+ const A = o[T - 1], F = A.units || {}, $ = F.eligibleFrom || c, P = F.interval || f, X = b(A.eligibleFrom, $), H = b(A.interval, P);
584
+ M < X + H && (g.eligibleFrom = "Must be greater than previous ELIGIBLE FROM and INTERVAL"), A.isBooster && !l.isBooster && (g.isBooster = "A regular dose cannot follow a booster dose");
585
+ }
586
+ Object.keys(g).length > 0 && (r[T] = g);
587
+ }), r.length > 0 ? r : null;
588
+ }, he = (e) => {
589
+ const t = [], i = /* @__PURE__ */ new Set();
590
+ return e.forEach((a, r) => {
591
+ const o = {};
592
+ a.vaccine ? (i.has(a.vaccine) && (o.vaccine = "This vaccine is already added as a dependency"), i.add(a.vaccine)) : o.vaccine = "Vaccine selection is required";
593
+ const c = a.minGap === "" || a.minGap === null || a.minGap === void 0, u = a.maxGap === "" || a.maxGap === null || a.maxGap === void 0, f = D(a.minGap), l = D(a.maxGap);
594
+ a.requirement === "Should be given" || a.requirement === "Optional" ? (c ? o.minGap = "Gap cannot be empty" : f <= 0 && (o.minGap = "Must be greater than 0"), !c && !u && f > 0 && l > 0 && l <= f && (o.maxGap = "Max gap must be greater than Min Gap")) : (!c && f < 0 && (o.minGap = "Gap cannot be negative"), !u && l < 0 && (o.maxGap = "Gap cannot be negative")), Object.keys(o).length > 0 && (t[r] = o);
595
+ }), t.some((a) => a && Object.keys(a).length > 0) ? t : null;
596
+ }, be = (e) => {
597
+ const t = [], i = /* @__PURE__ */ new Set();
598
+ return (e || []).forEach((a, r) => {
599
+ const o = {};
600
+ a.type ? (i.has(a.type) && (o.type = "This type is already added"), i.add(a.type)) : o.type = "Type is required", (!a.value || a.value.trim() === "") && (o.value = "Value is required"), Object.keys(o).length > 0 && (t[r] = o);
601
+ }), t.some((a) => a && Object.keys(a).length > 0) ? t : null;
602
+ }, ht = (e) => {
603
+ const t = {};
604
+ (!e.name || e.name.trim() === "") && (t.name = "Vaccine Name is required"), e.recipientType || (t.recipientType = "Recipient Type is required"), e.baseDateCode || (t.baseDateCode = "Base Date is required"), (!e.doses || e.doses === 0) && (t.doses = "At least one dose is required"), e.scheduleType === "NON_ROUTINE" && e.doseType === "FLEXIBLE" && (t.doseType = "Non-routine vaccines support the FIXED dose type only");
605
+ const i = ye(e.doseDetails, e.doseType, e.doses, e.durationUnits);
606
+ i && (t.doseDetails = i);
607
+ const a = he(e.dependencies || []);
608
+ a && (t.dependencies = a);
609
+ const r = be(e.codeSets || []);
610
+ return r && (t.codeSets = r), Object.keys(t).length > 0 ? t : null;
611
+ }, E = (e, t) => {
612
+ if (e == null)
613
+ return t;
614
+ if (typeof e != "string")
615
+ return e;
616
+ try {
617
+ return JSON.parse(e);
618
+ } catch {
619
+ return t;
620
+ }
621
+ }, v = (...e) => e.filter(Boolean).join("_"), S = (e) => z(e) ? fe : e === void 0 || e === "" || e === "N.A." || e === "null days" ? "N.A." : e, q = (e, t = "FLEXIBLE", i = 1) => {
622
+ if (i === 0 || !e)
623
+ return "N.A.";
624
+ if (t === "FIXED") {
625
+ const o = Array.isArray(e) ? e[0] : e;
626
+ if (!o)
627
+ return "N.A.";
628
+ const c = S(o.eligibleFrom), u = S(o.eligibleTo);
629
+ return c === "N.A." && u === "N.A." ? "N.A." : `${c} to ${u}`;
630
+ }
631
+ if (!Array.isArray(e) || e.length === 0)
632
+ return "N.A.";
633
+ const a = S(e[0].eligibleFrom), r = S(
634
+ e[e.length - 1].eligibleTo
635
+ );
636
+ return a === "N.A." && r === "N.A." ? "N.A." : `${a} to ${r}`;
637
+ }, Me = (e) => {
638
+ const t = String(e.dose_type || "").toLowerCase(), i = t === "fixed" || t === "na" || !e.dose_type, a = E(e.duration_units, {
639
+ eligibleFrom: "days",
640
+ eligibleTo: "days",
641
+ interval: "days"
642
+ }), r = i ? [
643
+ {
644
+ id: v("fixed", e.id),
645
+ eligibleFrom: e.dose_eligible_from !== void 0 ? `${e.dose_eligible_from} ${a.eligibleFrom || "days"}` : "",
646
+ // NULL is the stored form of a lifelong window — see the FLEXIBLE branch below.
647
+ eligibleTo: e.dose_eligible_to === null ? null : e.dose_eligible_to !== void 0 ? `${e.dose_eligible_to} ${a.eligibleTo || "days"}` : "",
648
+ interval: e.min_gap || 0
649
+ }
650
+ ] : E(e.dose, []).map((n, y) => {
651
+ const I = {
652
+ eligibleFrom: n.eligible_from_unit || a.eligibleFrom || "days",
653
+ eligibleTo: n.eligible_to_unit || a.eligibleTo || "days",
654
+ interval: n.interval_unit || a.interval || "days",
655
+ overdueFrom: n.overdue_from_unit || "days",
656
+ overdueTill: n.overdue_till_unit || "days"
657
+ };
658
+ return {
659
+ id: n.id || v("dose", e.id, y),
660
+ isBooster: n.isBooster === !0 || n.is_booster === !0 || typeof n.dose == "string" && n.dose.toUpperCase().startsWith("B"),
661
+ alias: n.alias || n.booster_alias || "",
662
+ eligibleFrom: n.eligible_from !== void 0 ? `${n.eligible_from} ${I.eligibleFrom}` : "",
663
+ // NULL is the stored form of a lifelong window; it must survive as null rather
664
+ // than becoming the string "null days".
665
+ eligibleTo: n.eligible_to === null ? null : n.eligible_to !== void 0 ? `${n.eligible_to} ${I.eligibleTo}` : "",
666
+ overdueFrom: n.overdue_from !== void 0 && n.overdue_from !== null ? `${n.overdue_from} ${I.overdueFrom}` : "",
667
+ overdueTill: n.overdue_till !== void 0 && n.overdue_till !== null ? `${n.overdue_till} ${I.overdueTill}` : "",
668
+ interval: n.min_gap || 0,
669
+ units: I
670
+ };
671
+ }), o = E(e.location, []).filter((n) => n && typeof n == "object").map((n, y) => {
672
+ var I;
673
+ return {
674
+ id: v("region", e.id, y),
675
+ locationId: n.locationId,
676
+ locationIdArr: n.locationIdArr,
677
+ locationList: n.locationList,
678
+ fullPath: (I = n.locationList) == null ? void 0 : I.replaceAll(" => ", " → ")
679
+ };
680
+ }), c = E(e.validations, []).map(
681
+ (n, y) => ({
682
+ id: v("dep", e.id, y),
683
+ vaccine: n.vaccine || "",
684
+ requirement: n.requirement || "Should be given",
685
+ minGap: Number.parseInt(n.minGap, 10) || 0,
686
+ maxGap: Number.parseInt(n.maxGap, 10) || 0,
687
+ message: n.message || ""
688
+ })
689
+ ), u = E(e.filters, []), f = Array.isArray(u) ? u : (u == null ? void 0 : u.codes) || [], l = E(e.code_sets, []), T = Array.isArray(l) ? l : [];
690
+ return {
691
+ ...e,
692
+ name: e.vaccine_name || e.name || "N.A.",
693
+ category: e.target_prevention || e.disease || e.category || "N.A.",
694
+ doses: e.no_of_doses || 0,
695
+ doseType: e.dose_type && e.dose_type !== "NA" ? e.dose_type : "FIXED",
696
+ doseDetails: r,
697
+ eligibility: q(
698
+ r,
699
+ e.dose_type,
700
+ e.no_of_doses || 0
701
+ ),
702
+ isActive: e.is_active !== void 0 ? e.is_active : !0,
703
+ regions: o,
704
+ dependencies: c,
705
+ filters: f,
706
+ codeSets: T,
707
+ durationUnits: a,
708
+ baseDateCode: e.base_date_code,
709
+ recipientType: e.recipient_type || "",
710
+ scheduleType: e.schedule_type === "NON_ROUTINE" ? "NON_ROUTINE" : "ROUTINE"
711
+ };
712
+ }, _e = () => p({
713
+ code: "FETCH_IMMUNISATION_MASTER",
714
+ parameters: {}
715
+ }), Ae = () => p({
716
+ code: "FETCH_IMMUNISATION_BASE_DATE",
717
+ parameters: {}
718
+ }), Ee = () => p({
719
+ code: "FETCH_IMMUNISATION_RECEPIENT_MASTER",
720
+ parameters: {}
721
+ }), Ne = () => k([
722
+ {
723
+ code: "FETCH_IMMUNISATION_BASE_DATE",
724
+ parameters: {},
725
+ sequence: 1
726
+ },
727
+ {
728
+ code: "GET_ALL_IMMUNISATION_FILTERS",
729
+ parameters: {},
730
+ sequence: 2
731
+ },
732
+ {
733
+ code: "FETCH_IMMUNISATION_MASTER",
734
+ parameters: {},
735
+ sequence: 3
736
+ },
737
+ {
738
+ code: "FETCH_IMMUNISATION_RECEPIENT_MASTER",
739
+ parameters: {},
740
+ sequence: 4
741
+ }
742
+ ]), Fe = (e) => p({
743
+ code: "INSERT_IMMUNIZATION_MASTER",
744
+ parameters: e
745
+ }), ve = (e) => p({
746
+ code: "UPDATE_IMMUNIZATION_DOSE",
747
+ ...e
748
+ }), Se = (e) => p({
749
+ code: "CHECK_IMMUNIZATION_CONFIGURATION_INITIATION",
750
+ ...e
751
+ }), Le = (e) => p({
752
+ code: "UPDATE_IMMUNIZATION_STATUS",
753
+ ...e
754
+ }), Re = (e) => p({
755
+ code: "UPDATE_IMMUNIZATION_STATUS_FOR_ARRAY",
756
+ ...e
757
+ }), Ve = (e) => p({
758
+ code: "UPDATE_IMMUNIZATION_CONFIGURATION_INITIATION",
759
+ ...e
760
+ }), Oe = (e) => p({
761
+ code: "SAVE_IMMUNISATION_BASE_DATE",
762
+ parameters: e
763
+ }), Ue = (e) => p({
764
+ code: "SAVE_IMMUNISATION_RECEPIENT_MASTER",
765
+ parameters: e
766
+ }), Ge = (e) => p({
767
+ code: "UPDATE_IMMUNISATION_RECEPIENT_MASTER",
768
+ parameters: e
769
+ }), De = (e) => p({
770
+ code: "UPDATE_IMMUNISATION_BASE_DATE",
771
+ parameters: e
772
+ }), Ce = () => p({
773
+ code: "retrieve_all_tables_and_columns",
774
+ parameters: {}
775
+ }), Be = () => p({
776
+ code: "GET_ALL_IMMUNISATION_FILTERS",
777
+ parameters: {}
778
+ }), we = (e) => p({
779
+ code: "ADD_IMMUNISATION_FILTER",
780
+ parameters: e
781
+ }), xe = (e) => p({
782
+ code: "UPDATE_IMMUNISATION_FILTER",
783
+ parameters: e
784
+ }), ze = (e) => B.post("/medplatform/v2/immunisation/list", e), qe = (e) => B.post("/medplatform/v2/immunisation/revalidate", e), bt = {
785
+ calculateOverallEligibility: q,
786
+ mapImmunizationVaccineConfig: Me,
787
+ getVaccines: _e,
788
+ getBaseDates: Ae,
789
+ getRecipients: Ee,
790
+ getImmunizationReferenceData: Ne,
791
+ addImmunization: Fe,
792
+ updateImmunization: ve,
793
+ checkImmunizationConfigurationInitiation: Se,
794
+ updateVaccineStatus: Le,
795
+ updateVaccineStatusFromArray: Re,
796
+ updateImmunizationConfigurationInitiation: Ve,
797
+ saveBaseDate: Oe,
798
+ saveRecipient: Ue,
799
+ updateRecipient: Ge,
800
+ updateBaseDate: De,
801
+ getAllTablesAndColumns: Ce,
802
+ getFilters: Be,
803
+ addFilter: we,
804
+ updateFilter: xe,
805
+ getImmunisationV2List: ze,
806
+ revalidateImmunisationV2List: qe
807
+ };
808
+ export {
809
+ bt as I,
810
+ yt as L,
811
+ C as a,
812
+ fe as b,
813
+ ht as c,
814
+ Tt as d,
815
+ Ze as e,
816
+ b as g,
817
+ z as i,
818
+ Te as v
819
+ };
820
+ //# sourceMappingURL=index.lib-C3fwoM3y.js.map