@acorex-platform/module-health-core-client 0.0.21

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 (25) hide show
  1. package/fesm2022/acorex-platform-module-health-core-client-contracts.mjs +285 -0
  2. package/fesm2022/acorex-platform-module-health-core-client-contracts.mjs.map +1 -0
  3. package/fesm2022/acorex-platform-module-health-core-client-list-alcohol-consumption-options.query-CFQk6mlY.mjs +61 -0
  4. package/fesm2022/acorex-platform-module-health-core-client-list-alcohol-consumption-options.query-CFQk6mlY.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-module-health-core-client-list-allergy-severity-options.query-BmdEP1TK.mjs +53 -0
  6. package/fesm2022/acorex-platform-module-health-core-client-list-allergy-severity-options.query-BmdEP1TK.mjs.map +1 -0
  7. package/fesm2022/acorex-platform-module-health-core-client-list-chronic-condition-status-options.query-QgsQCqLm.mjs +59 -0
  8. package/fesm2022/acorex-platform-module-health-core-client-list-chronic-condition-status-options.query-QgsQCqLm.mjs.map +1 -0
  9. package/fesm2022/acorex-platform-module-health-core-client-list-health-risk-level-options.query-BtJdBZVT.mjs +54 -0
  10. package/fesm2022/acorex-platform-module-health-core-client-list-health-risk-level-options.query-BtJdBZVT.mjs.map +1 -0
  11. package/fesm2022/acorex-platform-module-health-core-client-list-injury-mechanism-options.query-D7Tjl7eC.mjs +57 -0
  12. package/fesm2022/acorex-platform-module-health-core-client-list-injury-mechanism-options.query-D7Tjl7eC.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-module-health-core-client-list-pain-rate-options.query-C9sGCRmk.mjs +53 -0
  14. package/fesm2022/acorex-platform-module-health-core-client-list-pain-rate-options.query-C9sGCRmk.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-module-health-core-client-list-smoking-status-options.query-EUVhlNLW.mjs +54 -0
  16. package/fesm2022/acorex-platform-module-health-core-client-list-smoking-status-options.query-EUVhlNLW.mjs.map +1 -0
  17. package/fesm2022/acorex-platform-module-health-core-client-list-work-capacity-options.query-YQ6BW3kG.mjs +52 -0
  18. package/fesm2022/acorex-platform-module-health-core-client-list-work-capacity-options.query-YQ6BW3kG.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-module-health-core-client-start-health-record-flow.command-BsB-MPmu.mjs +263 -0
  20. package/fesm2022/acorex-platform-module-health-core-client-start-health-record-flow.command-BsB-MPmu.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-module-health-core-client.mjs +522 -0
  22. package/fesm2022/acorex-platform-module-health-core-client.mjs.map +1 -0
  23. package/package.json +28 -0
  24. package/types/acorex-platform-module-health-core-client-contracts.d.ts +342 -0
  25. package/types/acorex-platform-module-health-core-client.d.ts +32 -0
@@ -0,0 +1,522 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable, inject, NgModule } from '@angular/core';
3
+ import { AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER, AXP_MODULE_MANIFEST_PROVIDER, AXP_CATALOG_SCOPE_DEFINITION_PROVIDER, provideLazyProvider } from '@acorex-platform/framework-client/core';
4
+ import { AXP_STATUS_PROVIDERS, AXP_MENU_PROVIDER } from '@acorex-platform/framework-client/common';
5
+ import { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex-platform/framework-client/auth';
6
+ import { AXPRuntimeModule, provideCommandSetups, provideQuerySetups } from '@acorex-platform/framework-client/runtime';
7
+ import { HEALTH_CATALOG_SCOPE, RootConfig, HEALTH_PERSON_SUBJECT_TYPE, AXMHealthCoreCommandKeys, AXPSafetyRiskPermissionKeys, AXMHealthCoreMenuKeys } from '@acorex-platform/module-health-core-client/contracts';
8
+ import { AXPEntityCommandScope } from '@acorex-platform/framework-shared/entity';
9
+ import { AXTranslationService, resolveMultiLanguageString } from '@acorex/core/translation';
10
+ import { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';
11
+ import { get } from 'lodash';
12
+ import { AXPStatusProvider, systemStatusToDefinition, AXPSystemStatusType } from '@acorex-platform/framework-shared/core';
13
+ import { AXPCommonMenuKeys, AXPCommonPermissionGroupKeys } from '@acorex-platform/module-common-client/contracts';
14
+
15
+ //#endregion
16
+ //#region ---- Constants ----
17
+ const QUESTIONNAIRE = 'AssessmentManagement.Questionnaire';
18
+ const QUESTION_BANK_ITEM = 'AssessmentManagement.QuestionBankItem';
19
+ const WORKFLOW_DEFINITION = 'WorkflowManagement.WorkflowDefinition';
20
+ const HEALTH_CATALOG_TARGETS = [QUESTIONNAIRE, QUESTION_BANK_ITEM, WORKFLOW_DEFINITION];
21
+ //#endregion
22
+ //#region ---- Provider ----
23
+ class AXMHealthCoreCatalogScopeDefinitionProvider {
24
+ async items() {
25
+ return [
26
+ {
27
+ name: HEALTH_CATALOG_SCOPE,
28
+ title: '@health-core:catalog-scopes.health.title',
29
+ description: '@health-core:catalog-scopes.health.description',
30
+ targets: [...HEALTH_CATALOG_TARGETS],
31
+ icon: 'fa-light fa-heart-pulse',
32
+ cssClass: 'danger-lighter',
33
+ order: 11,
34
+ },
35
+ ];
36
+ }
37
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreCatalogScopeDefinitionProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
38
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreCatalogScopeDefinitionProvider }); }
39
+ }
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreCatalogScopeDefinitionProvider, decorators: [{
41
+ type: Injectable
42
+ }] });
43
+
44
+ //#region ---- Imports ----
45
+ //#endregion
46
+ //#region ---- Manifest Definition ----
47
+ /**
48
+ * Health Core Module Manifest.
49
+ * Defines module metadata for health-related reference data (blood type, disability status, etc.).
50
+ */
51
+ const HealthCoreManifest = {
52
+ name: RootConfig.module.name,
53
+ version: '1.0.0',
54
+ title: RootConfig.module.title,
55
+ icon: RootConfig.module.icon,
56
+ i18n: RootConfig.config.i18n,
57
+ type: 'domain',
58
+ domain: 'workplace-safety',
59
+ };
60
+ //#endregion
61
+
62
+ //#region ---- Imports ----
63
+ //#endregion
64
+ //#region ---- Icon helpers ----
65
+ function healthEventMenuIconSuffix(icon) {
66
+ const trimmed = icon?.trim();
67
+ if (!trimmed) {
68
+ return 'fa-circle-plus';
69
+ }
70
+ const rest = trimmed.replace(/^(fa-(?:duotone|solid|regular|light|thin|brands))\s+/i, '').trim();
71
+ return rest || 'fa-circle-plus';
72
+ }
73
+ function resolveSubjectTitleExpression(subjectType) {
74
+ if (subjectType === 'HumanCapitalManagement.Employee') {
75
+ return '{{ context.eval("person.fullName") || context.eval("employeeCode") }}';
76
+ }
77
+ if (subjectType === HEALTH_PERSON_SUBJECT_TYPE) {
78
+ return '{{ context.eval("fullName") || context.eval("person.fullName") || (context.eval("firstName") + " " + context.eval("lastName")) || (context.eval("person.firstName") + " " + context.eval("person.lastName")) }}';
79
+ }
80
+ return '{{ context.eval("title", { pipes: ["translate"] }) || context.eval("id") }}';
81
+ }
82
+ function resolveSubjectIdExpression(subjectType) {
83
+ if (subjectType === HEALTH_PERSON_SUBJECT_TYPE) {
84
+ return '{{ context.eval("personId") || context.eval("id") }}';
85
+ }
86
+ return '{{ context.eval("id") }}';
87
+ }
88
+ //#endregion
89
+ /**
90
+ * Expression-evaluator scope for health event guided-start dropdown items.
91
+ */
92
+ class AXMHealthCoreHealthEventExpressionEvaluatorScopeProvider {
93
+ constructor() {
94
+ //#region ---- Services & Dependencies ----
95
+ this.entityService = inject(AXPEntityService);
96
+ this.translation = inject(AXTranslationService);
97
+ //#endregion
98
+ }
99
+ //#endregion
100
+ //#region ---- AXPExpressionEvaluatorScopeProvider ----
101
+ async provide(context) {
102
+ context.addScope(RootConfig.module.name, {
103
+ /**
104
+ * Loads health record types and returns toolbar child actions for guided create.
105
+ * @param subjectType Entity key for the polymorphic subject (e.g. HumanCapitalManagement.Employee).
106
+ */
107
+ HealthEvents: async (subjectType) => {
108
+ const resolvedSubjectType = String(subjectType ?? '').trim();
109
+ if (!resolvedSubjectType) {
110
+ return [];
111
+ }
112
+ try {
113
+ const locale = this.translation.getActiveLang();
114
+ const page = await this.entityService
115
+ .withEntity(RootConfig.module.name, RootConfig.entities.healthRecordType.name)
116
+ .data()
117
+ .query({ skip: 0, take: 500 });
118
+ const rows = (page.items ?? []);
119
+ const sorted = [...rows].sort((a, b) => {
120
+ const ta = resolveMultiLanguageString(a.title, locale).trim() || a.id;
121
+ const tb = resolveMultiLanguageString(b.title, locale).trim() || b.id;
122
+ return ta.localeCompare(tb, locale, { sensitivity: 'base' });
123
+ });
124
+ const subjectTitleExpr = resolveSubjectTitleExpression(resolvedSubjectType);
125
+ const subjectIdExpr = resolveSubjectIdExpression(resolvedSubjectType);
126
+ return sorted.map((row) => {
127
+ const menuTitle = resolveMultiLanguageString(row.title, locale).trim() || row.id;
128
+ const workflowConfig = row.workflowConfig;
129
+ const workflowId = workflowConfig?.workflowName?.trim();
130
+ const defaultInput = workflowConfig?.defaultInput ?? {};
131
+ const questionnaireId = get(defaultInput, 'questionnaireId');
132
+ const requireEmployeeSignature = get(defaultInput, 'requireEmployeeSignature');
133
+ const requireManagerSignature = get(defaultInput, 'requireManagerSignature');
134
+ const guidedFlowCommand = workflowId
135
+ ? {
136
+ name: AXMHealthCoreCommandKeys.HealthEvent.StartFlow,
137
+ options: {
138
+ workflowId,
139
+ input: {
140
+ subjectType: resolvedSubjectType,
141
+ subjectId: subjectIdExpr,
142
+ subjectTitle: subjectTitleExpr,
143
+ recordTypeId: row.id,
144
+ recordTypeTitle: row.title,
145
+ questionnaireId,
146
+ requireEmployeeSignature,
147
+ requireManagerSignature,
148
+ },
149
+ },
150
+ }
151
+ : undefined;
152
+ const notImplementedToastCommand = {
153
+ name: 'workflow-activity:show-toast',
154
+ options: {
155
+ message: '@health-core:health-events.messages.event-not-implemented',
156
+ type: 'warning',
157
+ },
158
+ };
159
+ return {
160
+ name: `start-health-event-${row.id}`,
161
+ title: menuTitle,
162
+ icon: healthEventMenuIconSuffix(row.icon),
163
+ color: 'default',
164
+ command: guidedFlowCommand ?? notImplementedToastCommand,
165
+ priority: 'primary',
166
+ type: 'info',
167
+ scope: AXPEntityCommandScope.TypeLevel,
168
+ };
169
+ });
170
+ }
171
+ catch (error) {
172
+ console.error(`${RootConfig.module.name}.HealthEvents failed:`, error instanceof Error ? error.message : error);
173
+ return [];
174
+ }
175
+ },
176
+ });
177
+ }
178
+ }
179
+
180
+ //#region ---- Imports ----
181
+ //#endregion
182
+ //#region ---- Health event status ----
183
+ /** Status lifecycle for health events: In progress → Waiting sign-off → Completed (or Cancelled). */
184
+ class AXMHealthCoreHealthEventStatusProvider extends AXPStatusProvider {
185
+ constructor() {
186
+ super(...arguments);
187
+ this.key = 'health-core.status.health-event';
188
+ this.statuses = [
189
+ systemStatusToDefinition(AXPSystemStatusType.InProgress, {
190
+ title: '@health-core:health-events.states.in-progress',
191
+ generateView: true,
192
+ }),
193
+ systemStatusToDefinition(AXPSystemStatusType.WaitingSignOff, {
194
+ generateView: true,
195
+ }),
196
+ systemStatusToDefinition(AXPSystemStatusType.Completed, {
197
+ title: '@health-core:health-events.states.completed',
198
+ generateView: true,
199
+ }),
200
+ systemStatusToDefinition(AXPSystemStatusType.Cancelled, {
201
+ title: '@health-core:health-events.states.cancelled',
202
+ generateView: true,
203
+ }),
204
+ ];
205
+ this.transitions = [
206
+ {
207
+ from: AXPSystemStatusType.InProgress,
208
+ to: AXPSystemStatusType.WaitingSignOff,
209
+ title: '@health-core:health-events.transitions.await-sign-off',
210
+ },
211
+ {
212
+ from: AXPSystemStatusType.WaitingSignOff,
213
+ to: AXPSystemStatusType.Completed,
214
+ title: '@health-core:health-events.transitions.complete',
215
+ },
216
+ {
217
+ from: AXPSystemStatusType.WaitingSignOff,
218
+ to: AXPSystemStatusType.Cancelled,
219
+ title: '@general:statuses.transitions.cancel',
220
+ },
221
+ {
222
+ from: AXPSystemStatusType.InProgress,
223
+ to: AXPSystemStatusType.Cancelled,
224
+ title: '@general:statuses.transitions.cancel',
225
+ },
226
+ ];
227
+ this.defaultStatus = AXPSystemStatusType.InProgress;
228
+ }
229
+ }
230
+ //#endregion
231
+
232
+ class AXMHealthCoreHealthEventFeatureModule {
233
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreHealthEventFeatureModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
234
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreHealthEventFeatureModule, imports: [AXPRuntimeModule] }); }
235
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreHealthEventFeatureModule, providers: [
236
+ {
237
+ provide: AXP_STATUS_PROVIDERS,
238
+ useClass: AXMHealthCoreHealthEventStatusProvider,
239
+ multi: true,
240
+ },
241
+ {
242
+ provide: AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER,
243
+ useClass: AXMHealthCoreHealthEventExpressionEvaluatorScopeProvider,
244
+ multi: true,
245
+ },
246
+ provideCommandSetups([
247
+ {
248
+ key: AXMHealthCoreCommandKeys.HealthEvent.StartFlow,
249
+ command: () => import('./acorex-platform-module-health-core-client-start-health-record-flow.command-BsB-MPmu.mjs').then((c) => c.StartHealthEventFlowCommand),
250
+ },
251
+ ]),
252
+ ], imports: [AXPRuntimeModule] }); }
253
+ }
254
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreHealthEventFeatureModule, decorators: [{
255
+ type: NgModule,
256
+ args: [{
257
+ imports: [AXPRuntimeModule],
258
+ providers: [
259
+ {
260
+ provide: AXP_STATUS_PROVIDERS,
261
+ useClass: AXMHealthCoreHealthEventStatusProvider,
262
+ multi: true,
263
+ },
264
+ {
265
+ provide: AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER,
266
+ useClass: AXMHealthCoreHealthEventExpressionEvaluatorScopeProvider,
267
+ multi: true,
268
+ },
269
+ provideCommandSetups([
270
+ {
271
+ key: AXMHealthCoreCommandKeys.HealthEvent.StartFlow,
272
+ command: () => import('./acorex-platform-module-health-core-client-start-health-record-flow.command-BsB-MPmu.mjs').then((c) => c.StartHealthEventFlowCommand),
273
+ },
274
+ ]),
275
+ ],
276
+ }]
277
+ }] });
278
+
279
+ //#region ---- Imports ----
280
+ //#endregion
281
+ //#region ---- Module ----
282
+ class AXMHealthCoreModule {
283
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
284
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreModule, imports: [AXPRuntimeModule, AXMHealthCoreHealthEventFeatureModule] }); }
285
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreModule, providers: [
286
+ {
287
+ provide: AXP_MODULE_MANIFEST_PROVIDER,
288
+ useValue: HealthCoreManifest,
289
+ multi: true,
290
+ },
291
+ {
292
+ provide: AXP_CATALOG_SCOPE_DEFINITION_PROVIDER,
293
+ useClass: AXMHealthCoreCatalogScopeDefinitionProvider,
294
+ multi: true,
295
+ },
296
+ provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () => Promise.resolve().then(function () { return permissionDefinition_provider; }).then((m) => m.AXMHealthCorePermissionDefinitionProvider)),
297
+ provideLazyProvider(AXP_MENU_PROVIDER, () => Promise.resolve().then(function () { return menu_provider; }).then((m) => m.AXMHealthCoreMenuProvider)),
298
+ provideQuerySetups([
299
+ {
300
+ key: 'HealthCore:ListHealthRiskLevelOptions',
301
+ loader: () => import('./acorex-platform-module-health-core-client-list-health-risk-level-options.query-BtJdBZVT.mjs').then((c) => c.AXMListHealthRiskLevelOptionsQuery),
302
+ },
303
+ {
304
+ key: 'HealthCore:ListAlcoholConsumptionOptions',
305
+ loader: () => import('./acorex-platform-module-health-core-client-list-alcohol-consumption-options.query-CFQk6mlY.mjs').then((c) => c.AXMListAlcoholConsumptionOptionsQuery),
306
+ },
307
+ {
308
+ key: 'HealthCore:ListSmokingStatusOptions',
309
+ loader: () => import('./acorex-platform-module-health-core-client-list-smoking-status-options.query-EUVhlNLW.mjs').then((c) => c.AXMListSmokingStatusOptionsQuery),
310
+ },
311
+ {
312
+ key: 'HealthCore:ListAllergySeverityOptions',
313
+ loader: () => import('./acorex-platform-module-health-core-client-list-allergy-severity-options.query-BmdEP1TK.mjs').then((c) => c.AXMListAllergySeverityOptionsQuery),
314
+ },
315
+ {
316
+ key: 'HealthCore:ListChronicConditionStatusOptions',
317
+ loader: () => import('./acorex-platform-module-health-core-client-list-chronic-condition-status-options.query-QgsQCqLm.mjs').then((c) => c.AXMListChronicConditionStatusOptionsQuery),
318
+ },
319
+ {
320
+ key: 'HealthCore:ListInjuryMechanismOptions',
321
+ loader: () => import('./acorex-platform-module-health-core-client-list-injury-mechanism-options.query-D7Tjl7eC.mjs').then((c) => c.AXMListInjuryMechanismOptionsQuery),
322
+ },
323
+ {
324
+ key: 'HealthCore:ListWorkCapacityOptions',
325
+ loader: () => import('./acorex-platform-module-health-core-client-list-work-capacity-options.query-YQ6BW3kG.mjs').then((c) => c.AXMListWorkCapacityOptionsQuery),
326
+ },
327
+ {
328
+ key: 'HealthCore:ListPainRateOptions',
329
+ loader: () => import('./acorex-platform-module-health-core-client-list-pain-rate-options.query-C9sGCRmk.mjs').then((c) => c.AXMListPainRateOptionsQuery),
330
+ },
331
+ ]),
332
+ ], imports: [AXPRuntimeModule, AXMHealthCoreHealthEventFeatureModule] }); }
333
+ }
334
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCoreModule, decorators: [{
335
+ type: NgModule,
336
+ args: [{
337
+ imports: [AXPRuntimeModule, AXMHealthCoreHealthEventFeatureModule],
338
+ providers: [
339
+ {
340
+ provide: AXP_MODULE_MANIFEST_PROVIDER,
341
+ useValue: HealthCoreManifest,
342
+ multi: true,
343
+ },
344
+ {
345
+ provide: AXP_CATALOG_SCOPE_DEFINITION_PROVIDER,
346
+ useClass: AXMHealthCoreCatalogScopeDefinitionProvider,
347
+ multi: true,
348
+ },
349
+ provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () => Promise.resolve().then(function () { return permissionDefinition_provider; }).then((m) => m.AXMHealthCorePermissionDefinitionProvider)),
350
+ provideLazyProvider(AXP_MENU_PROVIDER, () => Promise.resolve().then(function () { return menu_provider; }).then((m) => m.AXMHealthCoreMenuProvider)),
351
+ provideQuerySetups([
352
+ {
353
+ key: 'HealthCore:ListHealthRiskLevelOptions',
354
+ loader: () => import('./acorex-platform-module-health-core-client-list-health-risk-level-options.query-BtJdBZVT.mjs').then((c) => c.AXMListHealthRiskLevelOptionsQuery),
355
+ },
356
+ {
357
+ key: 'HealthCore:ListAlcoholConsumptionOptions',
358
+ loader: () => import('./acorex-platform-module-health-core-client-list-alcohol-consumption-options.query-CFQk6mlY.mjs').then((c) => c.AXMListAlcoholConsumptionOptionsQuery),
359
+ },
360
+ {
361
+ key: 'HealthCore:ListSmokingStatusOptions',
362
+ loader: () => import('./acorex-platform-module-health-core-client-list-smoking-status-options.query-EUVhlNLW.mjs').then((c) => c.AXMListSmokingStatusOptionsQuery),
363
+ },
364
+ {
365
+ key: 'HealthCore:ListAllergySeverityOptions',
366
+ loader: () => import('./acorex-platform-module-health-core-client-list-allergy-severity-options.query-BmdEP1TK.mjs').then((c) => c.AXMListAllergySeverityOptionsQuery),
367
+ },
368
+ {
369
+ key: 'HealthCore:ListChronicConditionStatusOptions',
370
+ loader: () => import('./acorex-platform-module-health-core-client-list-chronic-condition-status-options.query-QgsQCqLm.mjs').then((c) => c.AXMListChronicConditionStatusOptionsQuery),
371
+ },
372
+ {
373
+ key: 'HealthCore:ListInjuryMechanismOptions',
374
+ loader: () => import('./acorex-platform-module-health-core-client-list-injury-mechanism-options.query-D7Tjl7eC.mjs').then((c) => c.AXMListInjuryMechanismOptionsQuery),
375
+ },
376
+ {
377
+ key: 'HealthCore:ListWorkCapacityOptions',
378
+ loader: () => import('./acorex-platform-module-health-core-client-list-work-capacity-options.query-YQ6BW3kG.mjs').then((c) => c.AXMListWorkCapacityOptionsQuery),
379
+ },
380
+ {
381
+ key: 'HealthCore:ListPainRateOptions',
382
+ loader: () => import('./acorex-platform-module-health-core-client-list-pain-rate-options.query-C9sGCRmk.mjs').then((c) => c.AXMListPainRateOptionsQuery),
383
+ },
384
+ ]),
385
+ ],
386
+ }]
387
+ }] });
388
+
389
+ //#region ---- Imports ----
390
+ //#endregion
391
+ //#region ---- Menu Provider ----
392
+ class AXMHealthCoreMenuProvider {
393
+ constructor() {
394
+ this.entityService = inject(AXPEntityService);
395
+ }
396
+ async provide(context) {
397
+ const module = RootConfig.module;
398
+ const keys = AXPSafetyRiskPermissionKeys;
399
+ const healthMenu = context.find(AXPCommonMenuKeys.Health);
400
+ if (!healthMenu.exists) {
401
+ context.find(AXPCommonMenuKeys.Configuration).addItems([
402
+ {
403
+ name: AXPCommonMenuKeys.Health,
404
+ priority: 8445,
405
+ text: '@general:menus.health.title',
406
+ icon: 'fa-light fa-heart-pulse',
407
+ type: 'menu',
408
+ children: [],
409
+ },
410
+ ]);
411
+ }
412
+ context.find(AXPCommonMenuKeys.Health).addItems([
413
+ {
414
+ name: AXMHealthCoreMenuKeys.BloodTypes,
415
+ text: RootConfig.entities.bloodType.titlePlural,
416
+ icon: RootConfig.entities.bloodType.icon,
417
+ priority: 11,
418
+ path: this.entityService.withEntity(module.name, RootConfig.entities.bloodType.name).createPath(),
419
+ policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },
420
+ },
421
+ {
422
+ name: AXMHealthCoreMenuKeys.BodyParts,
423
+ text: RootConfig.entities.bodyPart.titlePlural,
424
+ icon: RootConfig.entities.bodyPart.icon,
425
+ priority: 12,
426
+ path: this.entityService.withEntity(module.name, RootConfig.entities.bodyPart.name).createPath(),
427
+ policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },
428
+ },
429
+ {
430
+ name: AXMHealthCoreMenuKeys.DisabilityStatuses,
431
+ text: RootConfig.entities.disabilityStatus.titlePlural,
432
+ icon: RootConfig.entities.disabilityStatus.icon,
433
+ priority: 14,
434
+ path: this.entityService.withEntity(module.name, RootConfig.entities.disabilityStatus.name).createPath(),
435
+ policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },
436
+ },
437
+ {
438
+ name: AXMHealthCoreMenuKeys.InjuryTypes,
439
+ text: RootConfig.entities.injuryType.titlePlural,
440
+ icon: RootConfig.entities.injuryType.icon,
441
+ priority: 15,
442
+ path: this.entityService.withEntity(module.name, RootConfig.entities.injuryType.name).createPath(),
443
+ policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },
444
+ },
445
+ {
446
+ name: AXMHealthCoreMenuKeys.VaccinationTypes,
447
+ text: RootConfig.entities.vaccinationType.titlePlural,
448
+ icon: RootConfig.entities.vaccinationType.icon,
449
+ priority: 16,
450
+ path: this.entityService.withEntity(module.name, RootConfig.entities.vaccinationType.name).createPath(),
451
+ policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },
452
+ },
453
+ {
454
+ name: AXMHealthCoreMenuKeys.HealthConditionTypes,
455
+ text: RootConfig.entities.healthConditionType.titlePlural,
456
+ icon: RootConfig.entities.healthConditionType.icon,
457
+ priority: 17,
458
+ path: this.entityService.withEntity(module.name, RootConfig.entities.healthConditionType.name).createPath(),
459
+ policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },
460
+ },
461
+ {
462
+ name: AXMHealthCoreMenuKeys.HealthRestrictions,
463
+ text: RootConfig.entities.healthRestriction.titlePlural,
464
+ icon: RootConfig.entities.healthRestriction.icon,
465
+ priority: 18,
466
+ path: this.entityService.withEntity(module.name, RootConfig.entities.healthRestriction.name).createPath(),
467
+ policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },
468
+ },
469
+ {
470
+ name: AXMHealthCoreMenuKeys.HealthRecordTypes,
471
+ text: RootConfig.entities.healthRecordType.titlePlural,
472
+ icon: RootConfig.entities.healthRecordType.icon,
473
+ priority: 19,
474
+ path: this.entityService.withEntity(module.name, RootConfig.entities.healthRecordType.name).createPath(),
475
+ policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },
476
+ },
477
+ ]);
478
+ }
479
+ }
480
+ //#endregion
481
+
482
+ var menu_provider = /*#__PURE__*/Object.freeze({
483
+ __proto__: null,
484
+ AXMHealthCoreMenuProvider: AXMHealthCoreMenuProvider
485
+ });
486
+
487
+ //#endregion
488
+ //#region ---- Permission Definition Provider ----
489
+ /**
490
+ * Registers health capabilities into the shared Safety & Risk group.
491
+ */
492
+ class AXMHealthCorePermissionDefinitionProvider {
493
+ async define(context) {
494
+ const keys = AXPSafetyRiskPermissionKeys;
495
+ const groups = AXPCommonPermissionGroupKeys;
496
+ const P = '@common:safety-risk.permissions';
497
+ const G = '@common:permission-groups';
498
+ context.addGroup(groups.SafetyRisk.Root, `${G}.safety-risk.title`, `${G}.safety-risk.description`, { order: 30 });
499
+ context
500
+ .addGroup(groups.SafetyRisk.Health, `${G}.safety-risk-health.title`, `${G}.safety-risk-health.description`, { parent: groups.SafetyRisk.Root, order: 30 })
501
+ .addPermission(keys.MaintainHealth, `${P}.maintain-health.title`, `${P}.maintain-health.description`)
502
+ .endPermission()
503
+ .endGroup();
504
+ }
505
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCorePermissionDefinitionProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
506
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCorePermissionDefinitionProvider }); }
507
+ }
508
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMHealthCorePermissionDefinitionProvider, decorators: [{
509
+ type: Injectable
510
+ }] });
511
+
512
+ var permissionDefinition_provider = /*#__PURE__*/Object.freeze({
513
+ __proto__: null,
514
+ AXMHealthCorePermissionDefinitionProvider: AXMHealthCorePermissionDefinitionProvider
515
+ });
516
+
517
+ /**
518
+ * Generated bundle index. Do not edit.
519
+ */
520
+
521
+ export { AXMHealthCoreMenuProvider, AXMHealthCoreModule, AXMHealthCorePermissionDefinitionProvider };
522
+ //# sourceMappingURL=acorex-platform-module-health-core-client.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-health-core-client.mjs","sources":["../../../../libs/modules/health-core/client/src/lib/catalog-scope-definition.provider.ts","../../../../libs/modules/health-core/client/src/lib/manifest.ts","../../../../libs/modules/health-core/client/src/lib/features/health-event/health-record-expression-evaluator-scope.provider.ts","../../../../libs/modules/health-core/client/src/lib/features/health-event/health-event-status.provider.ts","../../../../libs/modules/health-core/client/src/lib/features/health-event/health-event.module.ts","../../../../libs/modules/health-core/client/src/lib/health-core.module.ts","../../../../libs/modules/health-core/client/src/lib/menu.provider.ts","../../../../libs/modules/health-core/client/src/lib/permission-definition.provider.ts","../../../../libs/modules/health-core/client/src/acorex-platform-module-health-core-client.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport type {\n AXPCatalogScopeDefinition,\n AXPCatalogScopeDefinitionProvider,\n} from '@acorex-platform/framework-client/core';\nimport { Injectable } from '@angular/core';\n\nimport { HEALTH_CATALOG_SCOPE } from '@acorex-platform/module-health-core-client/contracts';\n\n//#endregion\n\n//#region ---- Constants ----\n\nconst QUESTIONNAIRE = 'AssessmentManagement.Questionnaire';\nconst QUESTION_BANK_ITEM = 'AssessmentManagement.QuestionBankItem';\nconst WORKFLOW_DEFINITION = 'WorkflowManagement.WorkflowDefinition';\n\nconst HEALTH_CATALOG_TARGETS = [QUESTIONNAIRE, QUESTION_BANK_ITEM, WORKFLOW_DEFINITION] as const;\n\n//#endregion\n\n//#region ---- Provider ----\n\n@Injectable()\nexport class AXMHealthCoreCatalogScopeDefinitionProvider implements AXPCatalogScopeDefinitionProvider {\n async items(): Promise<AXPCatalogScopeDefinition[]> {\n return [\n {\n name: HEALTH_CATALOG_SCOPE,\n title: '@health-core:catalog-scopes.health.title',\n description: '@health-core:catalog-scopes.health.description',\n targets: [...HEALTH_CATALOG_TARGETS],\n icon: 'fa-light fa-heart-pulse',\n cssClass: 'danger-lighter',\n order: 11,\n },\n ];\n }\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPModuleManifest } from '@acorex-platform/framework-client/core';\nimport { RootConfig } from '@acorex-platform/module-health-core-client/contracts';\n\n//#endregion\n\n//#region ---- Manifest Definition ----\n\n/**\n * Health Core Module Manifest.\n * Defines module metadata for health-related reference data (blood type, disability status, etc.).\n */\nexport const HealthCoreManifest: AXPModuleManifest = {\n name: RootConfig.module.name,\n version: '1.0.0',\n title: RootConfig.module.title,\n icon: RootConfig.module.icon,\n i18n: RootConfig.config.i18n,\n type: 'domain',\n domain: 'workplace-safety',\n};\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPEntityAction, AXPEntityCommandScope } from '@acorex-platform/framework-shared/entity';\nimport { AXTranslationService, resolveMultiLanguageString } from '@acorex/core/translation';\n\nimport { AXPExpressionEvaluatorScopeProvider, AXPExpressionEvaluatorScopeProviderContext } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { inject } from '@angular/core';\nimport { get } from 'lodash';\n\nimport { HEALTH_PERSON_SUBJECT_TYPE } from '@acorex-platform/module-health-core-client/contracts';\nimport { AXMHealthCoreCommandKeys } from '@acorex-platform/module-health-core-client/contracts';\nimport { RootConfig } from '@acorex-platform/module-health-core-client/contracts';\nimport type { AXMHealthCoreHealthRecordTypeEntityModel } from '@acorex-platform/module-health-core-client/contracts';\n\n//#endregion\n\n//#region ---- Icon helpers ----\n\nfunction healthEventMenuIconSuffix(icon?: string): string {\n const trimmed = icon?.trim();\n if (!trimmed) {\n return 'fa-circle-plus';\n }\n const rest = trimmed.replace(/^(fa-(?:duotone|solid|regular|light|thin|brands))\\s+/i, '').trim();\n return rest || 'fa-circle-plus';\n}\n\nfunction resolveSubjectTitleExpression(subjectType: string): string {\n if (subjectType === 'HumanCapitalManagement.Employee') {\n return '{{ context.eval(\"person.fullName\") || context.eval(\"employeeCode\") }}';\n }\n if (subjectType === HEALTH_PERSON_SUBJECT_TYPE) {\n return '{{ context.eval(\"fullName\") || context.eval(\"person.fullName\") || (context.eval(\"firstName\") + \" \" + context.eval(\"lastName\")) || (context.eval(\"person.firstName\") + \" \" + context.eval(\"person.lastName\")) }}';\n }\n return '{{ context.eval(\"title\", { pipes: [\"translate\"] }) || context.eval(\"id\") }}';\n}\n\nfunction resolveSubjectIdExpression(subjectType: string): string {\n if (subjectType === HEALTH_PERSON_SUBJECT_TYPE) {\n return '{{ context.eval(\"personId\") || context.eval(\"id\") }}';\n }\n return '{{ context.eval(\"id\") }}';\n}\n\n//#endregion\n\n/**\n * Expression-evaluator scope for health event guided-start dropdown items.\n */\nexport class AXMHealthCoreHealthEventExpressionEvaluatorScopeProvider\n implements AXPExpressionEvaluatorScopeProvider {\n //#region ---- Services & Dependencies ----\n\n private readonly entityService = inject(AXPEntityService);\n private readonly translation = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- AXPExpressionEvaluatorScopeProvider ----\n\n async provide(context: AXPExpressionEvaluatorScopeProviderContext): Promise<void> {\n context.addScope(RootConfig.module.name, {\n /**\n * Loads health record types and returns toolbar child actions for guided create.\n * @param subjectType Entity key for the polymorphic subject (e.g. HumanCapitalManagement.Employee).\n */\n HealthEvents: async (subjectType: string): Promise<AXPEntityAction[]> => {\n const resolvedSubjectType = String(subjectType ?? '').trim();\n if (!resolvedSubjectType) {\n return [];\n }\n\n try {\n const locale = this.translation.getActiveLang();\n const page = await this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.healthRecordType.name)\n .data()\n .query({ skip: 0, take: 500 });\n const rows = (page.items ?? []) as Pick<\n AXMHealthCoreHealthRecordTypeEntityModel,\n 'id' | 'title' | 'icon' | 'workflowConfig'\n >[];\n\n const sorted = [...rows].sort((a, b) => {\n const ta = resolveMultiLanguageString(a.title as never, locale).trim() || a.id;\n const tb = resolveMultiLanguageString(b.title as never, locale).trim() || b.id;\n return ta.localeCompare(tb, locale, { sensitivity: 'base' });\n });\n\n const subjectTitleExpr = resolveSubjectTitleExpression(resolvedSubjectType);\n const subjectIdExpr = resolveSubjectIdExpression(resolvedSubjectType);\n\n return sorted.map((row) => {\n const menuTitle =\n resolveMultiLanguageString(row.title as never, locale).trim() || row.id;\n\n const workflowConfig = row.workflowConfig;\n const workflowId = workflowConfig?.workflowName?.trim();\n const defaultInput = workflowConfig?.defaultInput ?? {};\n const questionnaireId = get(defaultInput, 'questionnaireId') as string | undefined;\n const requireEmployeeSignature = get(defaultInput, 'requireEmployeeSignature') as boolean | undefined;\n const requireManagerSignature = get(defaultInput, 'requireManagerSignature') as boolean | undefined;\n\n const guidedFlowCommand =\n workflowId\n ? ({\n name: AXMHealthCoreCommandKeys.HealthEvent.StartFlow,\n options: {\n workflowId,\n input: {\n subjectType: resolvedSubjectType,\n subjectId: subjectIdExpr,\n subjectTitle: subjectTitleExpr,\n recordTypeId: row.id,\n recordTypeTitle: row.title,\n questionnaireId,\n requireEmployeeSignature,\n requireManagerSignature,\n },\n },\n } satisfies AXPEntityAction['command'])\n : undefined;\n\n const notImplementedToastCommand = {\n name: 'workflow-activity:show-toast',\n options: {\n message: '@health-core:health-events.messages.event-not-implemented',\n type: 'warning',\n },\n } satisfies AXPEntityAction['command'];\n\n return {\n name: `start-health-event-${row.id}`,\n title: menuTitle,\n icon: healthEventMenuIconSuffix(row.icon),\n color: 'default',\n command: guidedFlowCommand ?? notImplementedToastCommand,\n priority: 'primary',\n type: 'info',\n scope: AXPEntityCommandScope.TypeLevel,\n } satisfies AXPEntityAction;\n });\n } catch (error: unknown) {\n console.error(\n `${RootConfig.module.name}.HealthEvents failed:`,\n error instanceof Error ? error.message : error,\n );\n return [];\n }\n },\n });\n }\n\n //#endregion\n}\n","//#region ---- Imports ----\n\nimport { AXPStatusProvider, AXPStatusTransition, AXPSystemStatusType, systemStatusToDefinition } from '@acorex-platform/framework-shared/core';\n\n//#endregion\n\n//#region ---- Health event status ----\n\n/** Status lifecycle for health events: In progress → Waiting sign-off → Completed (or Cancelled). */\nexport class AXMHealthCoreHealthEventStatusProvider extends AXPStatusProvider {\n readonly key = 'health-core.status.health-event';\n\n readonly statuses = [\n systemStatusToDefinition(AXPSystemStatusType.InProgress, {\n title: '@health-core:health-events.states.in-progress',\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.WaitingSignOff, {\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.Completed, {\n title: '@health-core:health-events.states.completed',\n generateView: true,\n }),\n systemStatusToDefinition(AXPSystemStatusType.Cancelled, {\n title: '@health-core:health-events.states.cancelled',\n generateView: true,\n }),\n ];\n\n readonly transitions: AXPStatusTransition[] = [\n {\n from: AXPSystemStatusType.InProgress,\n to: AXPSystemStatusType.WaitingSignOff,\n title: '@health-core:health-events.transitions.await-sign-off',\n },\n {\n from: AXPSystemStatusType.WaitingSignOff,\n to: AXPSystemStatusType.Completed,\n title: '@health-core:health-events.transitions.complete',\n },\n {\n from: AXPSystemStatusType.WaitingSignOff,\n to: AXPSystemStatusType.Cancelled,\n title: '@general:statuses.transitions.cancel',\n },\n {\n from: AXPSystemStatusType.InProgress,\n to: AXPSystemStatusType.Cancelled,\n title: '@general:statuses.transitions.cancel',\n },\n ];\n\n readonly defaultStatus = AXPSystemStatusType.InProgress;\n}\n\n//#endregion\n","import { AXP_STATUS_PROVIDERS } from '@acorex-platform/framework-client/common';\nimport { AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER } from '@acorex-platform/framework-client/core';\nimport { AXPRuntimeModule, provideCommandSetups } from '@acorex-platform/framework-client/runtime';\nimport { NgModule } from '@angular/core';\n\nimport { AXMHealthCoreCommandKeys } from '@acorex-platform/module-health-core-client/contracts';\nimport { AXMHealthCoreHealthEventExpressionEvaluatorScopeProvider } from './health-record-expression-evaluator-scope.provider';\nimport { AXMHealthCoreHealthEventStatusProvider } from './health-event-status.provider';\n\n@NgModule({\n imports: [AXPRuntimeModule],\n providers: [\n {\n provide: AXP_STATUS_PROVIDERS,\n useClass: AXMHealthCoreHealthEventStatusProvider,\n multi: true,\n },\n {\n provide: AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER,\n useClass: AXMHealthCoreHealthEventExpressionEvaluatorScopeProvider,\n multi: true,\n },\n provideCommandSetups([\n {\n key: AXMHealthCoreCommandKeys.HealthEvent.StartFlow,\n command: () =>\n import('./commands/start-health-record-flow.command').then((c) => c.StartHealthEventFlowCommand),\n },\n ]),\n ],\n})\nexport class AXMHealthCoreHealthEventFeatureModule {}\n","//#region ---- Imports ----\n\nimport { NgModule } from '@angular/core';\nimport {\n AXP_CATALOG_SCOPE_DEFINITION_PROVIDER,\n AXP_MODULE_MANIFEST_PROVIDER,\n provideLazyProvider,\n} from '@acorex-platform/framework-client/core';\nimport { AXP_MENU_PROVIDER } from '@acorex-platform/framework-client/common';\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex-platform/framework-client/auth';\nimport { AXPRuntimeModule, provideQuerySetups } from '@acorex-platform/framework-client/runtime';\n\nimport { AXMHealthCoreCatalogScopeDefinitionProvider } from './catalog-scope-definition.provider';\nimport { HealthCoreManifest } from './manifest';\nimport { AXMHealthCoreMenuProvider } from './menu.provider';\nimport { AXMHealthCorePermissionDefinitionProvider } from './permission-definition.provider';\nimport { AXMHealthCoreHealthEventFeatureModule } from './features/health-event/health-event.module';\n\n//#endregion\n\n//#region ---- Module ----\n\n@NgModule({\n imports: [AXPRuntimeModule, AXMHealthCoreHealthEventFeatureModule],\n providers: [\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: HealthCoreManifest,\n multi: true,\n },\n {\n provide: AXP_CATALOG_SCOPE_DEFINITION_PROVIDER,\n useClass: AXMHealthCoreCatalogScopeDefinitionProvider,\n multi: true,\n },\n provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () =>\n import('./permission-definition.provider').then((m) => m.AXMHealthCorePermissionDefinitionProvider),\n ),\n provideLazyProvider(AXP_MENU_PROVIDER, () =>\n import('./menu.provider').then((m) => m.AXMHealthCoreMenuProvider),\n ),\n provideQuerySetups([\n {\n key: 'HealthCore:ListHealthRiskLevelOptions',\n loader: () =>\n import('./features/queries/list-health-risk-level-options.query').then(\n (c) => c.AXMListHealthRiskLevelOptionsQuery,\n ),\n },\n {\n key: 'HealthCore:ListAlcoholConsumptionOptions',\n loader: () =>\n import('./features/queries/list-alcohol-consumption-options.query').then(\n (c) => c.AXMListAlcoholConsumptionOptionsQuery,\n ),\n },\n {\n key: 'HealthCore:ListSmokingStatusOptions',\n loader: () =>\n import('./features/queries/list-smoking-status-options.query').then(\n (c) => c.AXMListSmokingStatusOptionsQuery,\n ),\n },\n {\n key: 'HealthCore:ListAllergySeverityOptions',\n loader: () =>\n import('./features/queries/list-allergy-severity-options.query').then(\n (c) => c.AXMListAllergySeverityOptionsQuery,\n ),\n },\n {\n key: 'HealthCore:ListChronicConditionStatusOptions',\n loader: () =>\n import('./features/queries/list-chronic-condition-status-options.query').then(\n (c) => c.AXMListChronicConditionStatusOptionsQuery,\n ),\n },\n {\n key: 'HealthCore:ListInjuryMechanismOptions',\n loader: () =>\n import('./features/queries/list-injury-mechanism-options.query').then(\n (c) => c.AXMListInjuryMechanismOptionsQuery,\n ),\n },\n {\n key: 'HealthCore:ListWorkCapacityOptions',\n loader: () =>\n import('./features/queries/list-work-capacity-options.query').then(\n (c) => c.AXMListWorkCapacityOptionsQuery,\n ),\n },\n {\n key: 'HealthCore:ListPainRateOptions',\n loader: () =>\n import('./features/queries/list-pain-rate-options.query').then(\n (c) => c.AXMListPainRateOptionsQuery,\n ),\n },\n ]),\n ],\n})\nexport class AXMHealthCoreModule {}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport {\n AXPCommonMenuKeys\n} from '@acorex-platform/module-common-client/contracts';\nimport { AXPMenuProvider, AXPMenuProviderContext } from '@acorex-platform/framework-client/common';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { inject } from '@angular/core';\nimport {\n RootConfig,\n AXPSafetyRiskPermissionKeys\n} from '@acorex-platform/module-health-core-client/contracts';\nimport { AXMHealthCoreMenuKeys } from '@acorex-platform/module-health-core-client/contracts';\n\n//#endregion\n\n//#region ---- Menu Provider ----\n\nexport class AXMHealthCoreMenuProvider implements AXPMenuProvider {\n private readonly entityService = inject(AXPEntityService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const module = RootConfig.module;\n const keys = AXPSafetyRiskPermissionKeys;\n\n const healthMenu = context.find(AXPCommonMenuKeys.Health);\n if (!healthMenu.exists) {\n context.find(AXPCommonMenuKeys.Configuration).addItems([\n {\n name: AXPCommonMenuKeys.Health,\n priority: 8445,\n text: '@general:menus.health.title',\n icon: 'fa-light fa-heart-pulse',\n type: 'menu',\n children: [],\n },\n ]);\n }\n\n context.find(AXPCommonMenuKeys.Health).addItems([\n {\n name: AXMHealthCoreMenuKeys.BloodTypes,\n text: RootConfig.entities.bloodType.titlePlural,\n icon: RootConfig.entities.bloodType.icon,\n priority: 11,\n path: this.entityService.withEntity(module.name, RootConfig.entities.bloodType.name).createPath(),\n policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },\n },\n {\n name: AXMHealthCoreMenuKeys.BodyParts,\n text: RootConfig.entities.bodyPart.titlePlural,\n icon: RootConfig.entities.bodyPart.icon,\n priority: 12,\n path: this.entityService.withEntity(module.name, RootConfig.entities.bodyPart.name).createPath(),\n policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },\n },\n {\n name: AXMHealthCoreMenuKeys.DisabilityStatuses,\n text: RootConfig.entities.disabilityStatus.titlePlural,\n icon: RootConfig.entities.disabilityStatus.icon,\n priority: 14,\n path: this.entityService.withEntity(module.name, RootConfig.entities.disabilityStatus.name).createPath(),\n policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },\n },\n {\n name: AXMHealthCoreMenuKeys.InjuryTypes,\n text: RootConfig.entities.injuryType.titlePlural,\n icon: RootConfig.entities.injuryType.icon,\n priority: 15,\n path: this.entityService.withEntity(module.name, RootConfig.entities.injuryType.name).createPath(),\n policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },\n },\n {\n name: AXMHealthCoreMenuKeys.VaccinationTypes,\n text: RootConfig.entities.vaccinationType.titlePlural,\n icon: RootConfig.entities.vaccinationType.icon,\n priority: 16,\n path: this.entityService.withEntity(module.name, RootConfig.entities.vaccinationType.name).createPath(),\n policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },\n },\n {\n name: AXMHealthCoreMenuKeys.HealthConditionTypes,\n text: RootConfig.entities.healthConditionType.titlePlural,\n icon: RootConfig.entities.healthConditionType.icon,\n priority: 17,\n path: this.entityService.withEntity(module.name, RootConfig.entities.healthConditionType.name).createPath(),\n policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },\n },\n {\n name: AXMHealthCoreMenuKeys.HealthRestrictions,\n text: RootConfig.entities.healthRestriction.titlePlural,\n icon: RootConfig.entities.healthRestriction.icon,\n priority: 18,\n path: this.entityService.withEntity(module.name, RootConfig.entities.healthRestriction.name).createPath(),\n policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },\n },\n {\n name: AXMHealthCoreMenuKeys.HealthRecordTypes,\n text: RootConfig.entities.healthRecordType.titlePlural,\n icon: RootConfig.entities.healthRecordType.icon,\n priority: 19,\n path: this.entityService.withEntity(module.name, RootConfig.entities.healthRecordType.name).createPath(),\n policy: { features: [RootConfig.module.name], permissions: [keys.Setup] },\n },\n ]);\n }\n}\n\n//#endregion\n","//#region ---- Imports ----\r\n\r\nimport {\r\n AXPPermissionDefinitionProvider,\r\n AXPPermissionDefinitionProviderContext,\r\n} from '@acorex-platform/framework-client/auth';\r\nimport {\n AXPCommonPermissionGroupKeys\n} from '@acorex-platform/module-common-client/contracts';\nimport {\n AXPSafetyRiskPermissionKeys\n} from '@acorex-platform/module-health-core-client/contracts';\n\r\nimport { Injectable } from '@angular/core';\r\n\r\n//#endregion\r\n\r\n//#region ---- Permission Definition Provider ----\r\n\r\n/**\r\n * Registers health capabilities into the shared Safety & Risk group.\r\n */\r\n@Injectable()\r\nexport class AXMHealthCorePermissionDefinitionProvider implements AXPPermissionDefinitionProvider {\r\n async define(context: AXPPermissionDefinitionProviderContext): Promise<void> {\r\n const keys = AXPSafetyRiskPermissionKeys;\r\n const groups = AXPCommonPermissionGroupKeys;\r\n const P = '@common:safety-risk.permissions';\r\n const G = '@common:permission-groups';\r\n\r\n context.addGroup(groups.SafetyRisk.Root, `${G}.safety-risk.title`, `${G}.safety-risk.description`, { order: 30 });\n\n context\n .addGroup(\n groups.SafetyRisk.Health,\n `${G}.safety-risk-health.title`,\n `${G}.safety-risk-health.description`,\n { parent: groups.SafetyRisk.Root, order: 30 },\n )\n .addPermission(keys.MaintainHealth, `${P}.maintain-health.title`, `${P}.maintain-health.description`)\r\n .endPermission()\r\r\n .endGroup();\r\n }\r\n}\r\n\r\n//#endregion\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "@acorex-platform/module-health-core-client",
3
+ "version": "0.0.21",
4
+ "sideEffects": false,
5
+ "peerDependencies": {
6
+ "@angular/common": "^21.0.0",
7
+ "@angular/core": "^21.0.0"
8
+ },
9
+ "dependencies": {
10
+ "tslib": "^2.3.0"
11
+ },
12
+ "module": "fesm2022/acorex-platform-module-health-core-client.mjs",
13
+ "typings": "types/acorex-platform-module-health-core-client.d.ts",
14
+ "exports": {
15
+ "./package.json": {
16
+ "default": "./package.json"
17
+ },
18
+ ".": {
19
+ "types": "./types/acorex-platform-module-health-core-client.d.ts",
20
+ "default": "./fesm2022/acorex-platform-module-health-core-client.mjs"
21
+ },
22
+ "./contracts": {
23
+ "types": "./types/acorex-platform-module-health-core-client-contracts.d.ts",
24
+ "default": "./fesm2022/acorex-platform-module-health-core-client-contracts.mjs"
25
+ }
26
+ },
27
+ "type": "module"
28
+ }