@acorex-platform/module-risk-management-client 0.0.38 → 0.0.48

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 (56) hide show
  1. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-likelihood-scale.mjs +361 -0
  2. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-likelihood-scale.mjs.map +1 -0
  3. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-matrix.mjs +364 -0
  4. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-matrix.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-rating-scale.mjs +388 -0
  6. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-rating-scale.mjs.map +1 -0
  7. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-severity-scale.mjs +361 -0
  8. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-severity-scale.mjs.map +1 -0
  9. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-acorex-platform-module-risk-management-client-contracts-entity-catalog-D6WaBLYS.mjs +72 -0
  10. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-acorex-platform-module-risk-management-client-contracts-entity-catalog-D6WaBLYS.mjs.map +1 -0
  11. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-likelihood-scale.entity-CVdw2sfd.mjs +311 -0
  12. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-likelihood-scale.entity-CVdw2sfd.mjs.map +1 -0
  13. package/fesm2022/{acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-matrix-cell.entity-b97tbRDA.mjs → acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-matrix.entity-Chp-843O.mjs} +131 -115
  14. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-matrix.entity-Chp-843O.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-rating-scale.entity-Cjg7aGMl.mjs +338 -0
  16. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-rating-scale.entity-Cjg7aGMl.mjs.map +1 -0
  17. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-severity-scale.entity-Cgti6Xeo.mjs +311 -0
  18. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-severity-scale.entity-Cgti6Xeo.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog.mjs +1 -1
  20. package/fesm2022/acorex-platform-module-risk-management-client-contracts.mjs +233 -49
  21. package/fesm2022/acorex-platform-module-risk-management-client-contracts.mjs.map +1 -1
  22. package/fesm2022/acorex-platform-module-risk-management-client-local-entities.mjs +4 -4
  23. package/fesm2022/acorex-platform-module-risk-management-client-local-entities.mjs.map +1 -1
  24. package/fesm2022/{acorex-platform-module-risk-management-client-preview-risk-matrix-cell.command-CTGIFUIa.mjs → acorex-platform-module-risk-management-client-preview-risk-matrix.command-gVKnE3c0.mjs} +14 -12
  25. package/fesm2022/acorex-platform-module-risk-management-client-preview-risk-matrix.command-gVKnE3c0.mjs.map +1 -0
  26. package/fesm2022/acorex-platform-module-risk-management-client.mjs +439 -230
  27. package/fesm2022/acorex-platform-module-risk-management-client.mjs.map +1 -1
  28. package/package.json +13 -13
  29. package/types/acorex-platform-module-risk-management-client-contracts-entities-risk-likelihood-scale.d.ts +5 -0
  30. package/types/acorex-platform-module-risk-management-client-contracts-entities-risk-matrix.d.ts +5 -0
  31. package/types/acorex-platform-module-risk-management-client-contracts-entities-risk-rating-scale.d.ts +5 -0
  32. package/types/acorex-platform-module-risk-management-client-contracts-entities-risk-severity-scale.d.ts +5 -0
  33. package/types/acorex-platform-module-risk-management-client-contracts.d.ts +157 -65
  34. package/types/acorex-platform-module-risk-management-client.d.ts +77 -31
  35. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-likelihood.mjs +0 -222
  36. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-likelihood.mjs.map +0 -1
  37. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-matrix-cell.mjs +0 -348
  38. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-matrix-cell.mjs.map +0 -1
  39. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-rating.mjs +0 -227
  40. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-rating.mjs.map +0 -1
  41. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-severity.mjs +0 -222
  42. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entities-risk-severity.mjs.map +0 -1
  43. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-acorex-platform-module-risk-management-client-contracts-entity-catalog-Dc6Me3H6.mjs +0 -72
  44. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-acorex-platform-module-risk-management-client-contracts-entity-catalog-Dc6Me3H6.mjs.map +0 -1
  45. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-likelihood.entity-DzwLi3Ga.mjs +0 -172
  46. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-likelihood.entity-DzwLi3Ga.mjs.map +0 -1
  47. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-matrix-cell.entity-b97tbRDA.mjs.map +0 -1
  48. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-rating.entity-CreMsiCu.mjs +0 -177
  49. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-rating.entity-CreMsiCu.mjs.map +0 -1
  50. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-severity.entity-bEyLH8dE.mjs +0 -172
  51. package/fesm2022/acorex-platform-module-risk-management-client-contracts-entity-catalog-risk-severity.entity-bEyLH8dE.mjs.map +0 -1
  52. package/fesm2022/acorex-platform-module-risk-management-client-preview-risk-matrix-cell.command-CTGIFUIa.mjs.map +0 -1
  53. package/types/acorex-platform-module-risk-management-client-contracts-entities-risk-likelihood.d.ts +0 -5
  54. package/types/acorex-platform-module-risk-management-client-contracts-entities-risk-matrix-cell.d.ts +0 -5
  55. package/types/acorex-platform-module-risk-management-client-contracts-entities-risk-rating.d.ts +0 -5
  56. package/types/acorex-platform-module-risk-management-client-contracts-entities-risk-severity.d.ts +0 -5
@@ -0,0 +1,388 @@
1
+ import { AXPWidgetsList, AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';
2
+ import { createAllQueryView, entityMasterCrudActions, entityMasterRecordActions } from '@acorex-platform/framework-shared/entity';
3
+
4
+ //#region ---- Root Configuration ----
5
+ const config = {
6
+ i18n: 'risk-management',
7
+ module: 'RiskManagement',
8
+ route: 'risk-management',
9
+ };
10
+ const RootConfig = {
11
+ config,
12
+ module: {
13
+ route: config.route,
14
+ name: config.module,
15
+ title: '@risk-management:module.title',
16
+ icon: 'fa-light fa-chart-line',
17
+ },
18
+ entities: {
19
+ riskLikelihoodScale: {
20
+ name: 'RiskLikelihoodScale',
21
+ source: `${config.module}.RiskLikelihoodScale`,
22
+ title: '@risk-management:risk-likelihood-scales.entities.risk-likelihood-scale.title',
23
+ titlePlural: '@risk-management:risk-likelihood-scales.entities.risk-likelihood-scale.plural',
24
+ icon: 'fa-light fa-signal',
25
+ },
26
+ riskSeverityScale: {
27
+ name: 'RiskSeverityScale',
28
+ source: `${config.module}.RiskSeverityScale`,
29
+ title: '@risk-management:risk-severity-scales.entities.risk-severity-scale.title',
30
+ titlePlural: '@risk-management:risk-severity-scales.entities.risk-severity-scale.plural',
31
+ icon: 'fa-light fa-gauge-high',
32
+ },
33
+ riskRatingScale: {
34
+ name: 'RiskRatingScale',
35
+ source: `${config.module}.RiskRatingScale`,
36
+ title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.title',
37
+ titlePlural: '@risk-management:risk-rating-scales.entities.risk-rating-scale.plural',
38
+ icon: 'fa-light fa-ranking-star',
39
+ },
40
+ riskMatrix: {
41
+ name: 'RiskMatrix',
42
+ source: `${config.module}.RiskMatrix`,
43
+ title: '@risk-management:risk-matrices.entities.risk-matrix.title',
44
+ titlePlural: '@risk-management:risk-matrices.entities.risk-matrix.plural',
45
+ icon: 'fa-light fa-table-cells',
46
+ },
47
+ },
48
+ };
49
+ //#endregion
50
+
51
+ //#region ---- Imports ----
52
+ //#endregion
53
+ //#region ---- Constants ----
54
+ const listSortAndFilterOptions = {
55
+ sort: { enabled: true },
56
+ filter: { advance: { enabled: true }, inline: { enabled: true } },
57
+ };
58
+ const LEVELS_LAYOUT = {
59
+ name: 'levels',
60
+ layout: { label: { visible: false }, order: 4, positions: { lg: { colSpan: 12 } } },
61
+ };
62
+ const SCORE_UNIQUE_MESSAGE = '@risk-management:risk-rating-scales.entities.risk-rating-scale.validations.score-unique';
63
+ const LEVELS_REPEATER_CHILDREN = [
64
+ {
65
+ type: AXPWidgetsList.Layouts.GridLayout,
66
+ mode: 'edit',
67
+ name: 'levelRow',
68
+ options: {
69
+ grid: {
70
+ default: {
71
+ columns: 12,
72
+ gap: '1rem',
73
+ },
74
+ },
75
+ },
76
+ children: [
77
+ {
78
+ type: AXPWidgetsList.Layouts.GridItemLayout,
79
+ mode: 'edit',
80
+ options: { colSpan: 2 },
81
+ children: [
82
+ {
83
+ type: AXPWidgetsList.Layouts.FormField,
84
+ mode: 'edit',
85
+ options: {
86
+ label: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.code.title',
87
+ showLabel: true,
88
+ },
89
+ children: [
90
+ {
91
+ type: AXPWidgetsList.Editors.TextBox,
92
+ mode: 'edit',
93
+ path: 'code',
94
+ name: 'code',
95
+ options: {
96
+ placeholder: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.code.placeholder',
97
+ },
98
+ },
99
+ ],
100
+ },
101
+ ],
102
+ },
103
+ {
104
+ type: AXPWidgetsList.Layouts.GridItemLayout,
105
+ mode: 'edit',
106
+ options: { colSpan: 5 },
107
+ children: [
108
+ {
109
+ type: AXPWidgetsList.Layouts.FormField,
110
+ mode: 'edit',
111
+ options: {
112
+ label: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.title.title',
113
+ showLabel: true,
114
+ },
115
+ children: [
116
+ {
117
+ type: AXPWidgetsList.Editors.TextBox,
118
+ mode: 'edit',
119
+ path: 'title',
120
+ name: 'title',
121
+ options: {
122
+ placeholder: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.title.placeholder',
123
+ validations: [{ rule: 'required' }],
124
+ },
125
+ },
126
+ ],
127
+ },
128
+ ],
129
+ },
130
+ {
131
+ type: AXPWidgetsList.Layouts.GridItemLayout,
132
+ mode: 'edit',
133
+ options: { colSpan: 2 },
134
+ children: [
135
+ {
136
+ type: AXPWidgetsList.Layouts.FormField,
137
+ mode: 'edit',
138
+ options: {
139
+ label: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.score.title',
140
+ showLabel: true,
141
+ },
142
+ children: [
143
+ {
144
+ type: AXPWidgetsList.Editors.NumberBox,
145
+ mode: 'edit',
146
+ path: 'score',
147
+ name: 'score',
148
+ options: {
149
+ minValue: 0,
150
+ maxValue: 99,
151
+ placeholder: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.score.placeholder',
152
+ validations: [{ rule: 'required' }],
153
+ },
154
+ },
155
+ ],
156
+ },
157
+ ],
158
+ },
159
+ {
160
+ type: AXPWidgetsList.Layouts.GridItemLayout,
161
+ mode: 'edit',
162
+ options: { colSpan: 3 },
163
+ children: [
164
+ {
165
+ type: AXPWidgetsList.Layouts.FormField,
166
+ mode: 'edit',
167
+ options: {
168
+ label: '@general:terms.common.color',
169
+ showLabel: true,
170
+ },
171
+ children: [
172
+ {
173
+ type: AXPWidgetsList.Editors.ColorChooser,
174
+ mode: 'edit',
175
+ path: 'color',
176
+ name: 'color',
177
+ options: {
178
+ palette: ['theme', 'pastel'],
179
+ },
180
+ },
181
+ ],
182
+ },
183
+ ],
184
+ },
185
+ ],
186
+ },
187
+ ];
188
+ //#endregion
189
+ //#region ---- Entity factory ----
190
+ async function factoryRiskRatingScale() {
191
+ const entityDef = {
192
+ module: RootConfig.module.name,
193
+ name: RootConfig.entities.riskRatingScale.name,
194
+ title: RootConfig.entities.riskRatingScale.title,
195
+ icon: RootConfig.entities.riskRatingScale.icon,
196
+ searchTags: [
197
+ 'risk-rating-scale',
198
+ 'rating-scale',
199
+ 'risk-rating',
200
+ 'risk-ratings',
201
+ 'rating-level',
202
+ 'risk-level',
203
+ 'assessment-outcome',
204
+ 'classification',
205
+ 'priority-band',
206
+ 'score',
207
+ 'رتبه ریسک',
208
+ 'مقیاس رتبه',
209
+ 'ریسک',
210
+ 'ارزیابی ریسک',
211
+ ],
212
+ formats: {
213
+ individual: RootConfig.entities.riskRatingScale.title,
214
+ plural: RootConfig.entities.riskRatingScale.titlePlural,
215
+ searchResult: {
216
+ title: '{{ title }}',
217
+ description: '{{ code }}',
218
+ },
219
+ },
220
+ plugins: [
221
+ { name: 'history' },
222
+ { name: 'identifier', options: { field: 'code', rule: 'risk-rating-scale-code' } },
223
+ { name: 'unique-fields', options: { fields: 'code', scope: 'global' } },
224
+ { name: 'archive' },
225
+ ],
226
+ groups: [
227
+ {
228
+ id: 'basic-info',
229
+ title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.groups.basic-info',
230
+ },
231
+ {
232
+ id: 'levels',
233
+ title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.groups.levels',
234
+ },
235
+ ],
236
+ properties: [
237
+ {
238
+ name: 'id',
239
+ title: '@general:terms.common.id',
240
+ groupId: 'basic-info',
241
+ schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },
242
+ },
243
+ {
244
+ name: 'code',
245
+ title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.code.title',
246
+ groupId: 'basic-info',
247
+ options: listSortAndFilterOptions,
248
+ schema: {
249
+ dataType: 'string',
250
+ unique: { enabled: true },
251
+ interface: {
252
+ type: AXPWidgetsCatalog.text,
253
+ options: {
254
+ disabled: true,
255
+ placeholder: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.code.placeholder',
256
+ },
257
+ },
258
+ },
259
+ validations: [{ rule: 'required' }],
260
+ },
261
+ {
262
+ name: 'title',
263
+ title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.title.title',
264
+ groupId: 'basic-info',
265
+ options: listSortAndFilterOptions,
266
+ schema: {
267
+ dataType: 'string',
268
+ interface: {
269
+ type: AXPWidgetsCatalog.text,
270
+ options: {
271
+ placeholder: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.title.placeholder',
272
+ },
273
+ },
274
+ },
275
+ validations: [{ rule: 'required' }],
276
+ },
277
+ {
278
+ name: 'description',
279
+ title: '@general:terms.common.description',
280
+ groupId: 'basic-info',
281
+ options: {
282
+ sort: { enabled: false },
283
+ filter: { advance: { enabled: true }, inline: { enabled: false } },
284
+ },
285
+ schema: {
286
+ dataType: 'string',
287
+ nullable: true,
288
+ interface: {
289
+ type: AXPWidgetsCatalog.largeText,
290
+ options: {
291
+ placeholder: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.description.placeholder',
292
+ },
293
+ },
294
+ },
295
+ },
296
+ {
297
+ name: 'levels',
298
+ title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.title',
299
+ groupId: 'levels',
300
+ schema: {
301
+ defaultValue: [],
302
+ dataType: 'array',
303
+ nullable: false,
304
+ interface: {
305
+ type: AXPWidgetsList.Layouts.RepeaterLayout,
306
+ options: { hasControls: true, allowReorder: true },
307
+ children: [...LEVELS_REPEATER_CHILDREN],
308
+ },
309
+ },
310
+ validations: [
311
+ { rule: 'required' },
312
+ {
313
+ rule: 'callback',
314
+ message: SCORE_UNIQUE_MESSAGE,
315
+ options: {
316
+ validate: `(val) => {
317
+ const levels = Array.isArray(val) ? val : [];
318
+ const values = levels
319
+ .map((level) => level && level.score)
320
+ .filter((value) => value != null && value !== '')
321
+ .map((value) => Number(value));
322
+ const unique = new Set(values);
323
+ return { result: unique.size === values.length };
324
+ }`,
325
+ },
326
+ },
327
+ ],
328
+ },
329
+ ],
330
+ columns: [
331
+ { name: 'code' },
332
+ { name: 'title' },
333
+ ],
334
+ interfaces: {
335
+ master: {
336
+ create: {
337
+ sections: [{ id: 'basic-info' }, { id: 'levels' }],
338
+ properties: [
339
+ { name: 'code', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
340
+ { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },
341
+ { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
342
+ LEVELS_LAYOUT,
343
+ ],
344
+ },
345
+ update: {
346
+ sections: [{ id: 'basic-info' }, { id: 'levels' }],
347
+ properties: [
348
+ { name: 'code', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
349
+ { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },
350
+ { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
351
+ LEVELS_LAYOUT,
352
+ ],
353
+ },
354
+ single: {
355
+ title: '{{ title }}',
356
+ sections: [
357
+ { id: 'basic-info', layout: { positions: { lg: { colSpan: 12 } } } },
358
+ { id: 'levels', layout: { positions: { lg: { colSpan: 12 } } } },
359
+ ],
360
+ properties: [
361
+ { name: 'code', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
362
+ { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },
363
+ { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
364
+ LEVELS_LAYOUT,
365
+ ],
366
+ actions: [...entityMasterRecordActions()],
367
+ },
368
+ list: {
369
+ actions: [...entityMasterCrudActions()],
370
+ views: [
371
+ createAllQueryView({
372
+ sorts: [{ name: 'code', dir: 'asc' }],
373
+ }),
374
+ ],
375
+ },
376
+ },
377
+ },
378
+ };
379
+ return entityDef;
380
+ }
381
+ //#endregion
382
+
383
+ /**
384
+ * Generated bundle index. Do not edit.
385
+ */
386
+
387
+ export { factoryRiskRatingScale };
388
+ //# sourceMappingURL=acorex-platform-module-risk-management-client-contracts-entities-risk-rating-scale.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-risk-management-client-contracts-entities-risk-rating-scale.mjs","sources":["../../../../libs/modules/risk-management/contracts/src/root-config.ts","../../../../libs/modules/risk-management/contracts/src/entities/risk-rating-scale/risk-rating-scale.entity.ts","../../../../libs/modules/risk-management/contracts/src/acorex-platform-module-risk-management-client-contracts-entities-risk-rating-scale.ts"],"sourcesContent":["//#region ---- Root Configuration ----\n\nconst config = {\n i18n: 'risk-management',\n module: 'RiskManagement',\n route: 'risk-management',\n};\n\nexport const RootConfig = {\n config,\n module: {\n route: config.route,\n name: config.module,\n title: '@risk-management:module.title',\n icon: 'fa-light fa-chart-line',\n },\n entities: {\n riskLikelihoodScale: {\n name: 'RiskLikelihoodScale',\n source: `${config.module}.RiskLikelihoodScale`,\n title: '@risk-management:risk-likelihood-scales.entities.risk-likelihood-scale.title',\n titlePlural: '@risk-management:risk-likelihood-scales.entities.risk-likelihood-scale.plural',\n icon: 'fa-light fa-signal',\n },\n riskSeverityScale: {\n name: 'RiskSeverityScale',\n source: `${config.module}.RiskSeverityScale`,\n title: '@risk-management:risk-severity-scales.entities.risk-severity-scale.title',\n titlePlural: '@risk-management:risk-severity-scales.entities.risk-severity-scale.plural',\n icon: 'fa-light fa-gauge-high',\n },\n riskRatingScale: {\n name: 'RiskRatingScale',\n source: `${config.module}.RiskRatingScale`,\n title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.title',\n titlePlural: '@risk-management:risk-rating-scales.entities.risk-rating-scale.plural',\n icon: 'fa-light fa-ranking-star',\n },\n riskMatrix: {\n name: 'RiskMatrix',\n source: `${config.module}.RiskMatrix`,\n title: '@risk-management:risk-matrices.entities.risk-matrix.title',\n titlePlural: '@risk-management:risk-matrices.entities.risk-matrix.plural',\n icon: 'fa-light fa-table-cells',\n },\n },\n};\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPWidgetsCatalog, AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport {\n AXPEntity,\n createAllQueryView,\n entityMasterCrudActions,\n entityMasterRecordActions,\n} from '@acorex-platform/framework-shared/entity';\n\nimport { RootConfig } from '../../root-config';\n\n//#endregion\n\n//#region ---- Constants ----\n\nconst listSortAndFilterOptions = {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n};\n\nconst LEVELS_LAYOUT = {\n name: 'levels',\n layout: { label: { visible: false }, order: 4, positions: { lg: { colSpan: 12 } } },\n};\n\nconst SCORE_UNIQUE_MESSAGE =\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.validations.score-unique';\n\nconst LEVELS_REPEATER_CHILDREN = [\n {\n type: AXPWidgetsList.Layouts.GridLayout,\n mode: 'edit' as const,\n name: 'levelRow',\n options: {\n grid: {\n default: {\n columns: 12,\n gap: '1rem',\n },\n },\n },\n children: [\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit' as const,\n options: { colSpan: 2 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit' as const,\n options: {\n label:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.code.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.TextBox,\n mode: 'edit' as const,\n path: 'code',\n name: 'code',\n options: {\n placeholder:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.code.placeholder',\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit' as const,\n options: { colSpan: 5 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit' as const,\n options: {\n label:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.title.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.TextBox,\n mode: 'edit' as const,\n path: 'title',\n name: 'title',\n options: {\n placeholder:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.title.placeholder',\n validations: [{ rule: 'required' }],\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit' as const,\n options: { colSpan: 2 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit' as const,\n options: {\n label:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.score.title',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.NumberBox,\n mode: 'edit' as const,\n path: 'score',\n name: 'score',\n options: {\n minValue: 0,\n maxValue: 99,\n placeholder:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.fields.score.placeholder',\n validations: [{ rule: 'required' }],\n },\n },\n ],\n },\n ],\n },\n {\n type: AXPWidgetsList.Layouts.GridItemLayout,\n mode: 'edit' as const,\n options: { colSpan: 3 },\n children: [\n {\n type: AXPWidgetsList.Layouts.FormField,\n mode: 'edit' as const,\n options: {\n label: '@general:terms.common.color',\n showLabel: true,\n },\n children: [\n {\n type: AXPWidgetsList.Editors.ColorChooser,\n mode: 'edit' as const,\n path: 'color',\n name: 'color',\n options: {\n palette: ['theme', 'pastel'],\n },\n },\n ],\n },\n ],\n },\n ],\n },\n];\n\n//#endregion\n\n//#region ---- Entity factory ----\n\nexport async function factoryRiskRatingScale(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.riskRatingScale.name,\n title: RootConfig.entities.riskRatingScale.title,\n icon: RootConfig.entities.riskRatingScale.icon,\n searchTags: [\n 'risk-rating-scale',\n 'rating-scale',\n 'risk-rating',\n 'risk-ratings',\n 'rating-level',\n 'risk-level',\n 'assessment-outcome',\n 'classification',\n 'priority-band',\n 'score',\n 'رتبه ریسک',\n 'مقیاس رتبه',\n 'ریسک',\n 'ارزیابی ریسک',\n ],\n formats: {\n individual: RootConfig.entities.riskRatingScale.title,\n plural: RootConfig.entities.riskRatingScale.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ code }}',\n },\n },\n plugins: [\n { name: 'history' },\n { name: 'identifier', options: { field: 'code', rule: 'risk-rating-scale-code' } },\n { name: 'unique-fields', options: { fields: 'code', scope: 'global' } },\n { name: 'archive' },\n ],\n groups: [\n {\n id: 'basic-info',\n title:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.groups.basic-info',\n },\n {\n id: 'levels',\n title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.groups.levels',\n },\n ],\n properties: [\n {\n name: 'id',\n title: '@general:terms.common.id',\n groupId: 'basic-info',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'code',\n title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.code.title',\n groupId: 'basic-info',\n options: listSortAndFilterOptions,\n schema: {\n dataType: 'string',\n unique: { enabled: true },\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n disabled: true,\n placeholder:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.code.placeholder',\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'title',\n title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.title.title',\n groupId: 'basic-info',\n options: listSortAndFilterOptions,\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n options: {\n placeholder:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.title.placeholder',\n },\n },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'description',\n title: '@general:terms.common.description',\n groupId: 'basic-info',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'string',\n nullable: true,\n interface: {\n type: AXPWidgetsCatalog.largeText,\n options: {\n placeholder:\n '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.description.placeholder',\n },\n },\n },\n },\n {\n name: 'levels',\n title: '@risk-management:risk-rating-scales.entities.risk-rating-scale.fields.levels.title',\n groupId: 'levels',\n schema: {\n defaultValue: [],\n dataType: 'array',\n nullable: false,\n interface: {\n type: AXPWidgetsList.Layouts.RepeaterLayout,\n options: { hasControls: true, allowReorder: true },\n children: [...LEVELS_REPEATER_CHILDREN],\n },\n },\n validations: [\n { rule: 'required' },\n {\n rule: 'callback',\n message: SCORE_UNIQUE_MESSAGE,\n options: {\n validate: `(val) => {\n const levels = Array.isArray(val) ? val : [];\n const values = levels\n .map((level) => level && level.score)\n .filter((value) => value != null && value !== '')\n .map((value) => Number(value));\n const unique = new Set(values);\n return { result: unique.size === values.length };\n }`,\n },\n },\n ],\n },\n ],\n columns: [\n { name: 'code' },\n { name: 'title' },\n ],\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-info' }, { id: 'levels' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n LEVELS_LAYOUT,\n ],\n },\n update: {\n sections: [{ id: 'basic-info' }, { id: 'levels' }],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n LEVELS_LAYOUT,\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [\n { id: 'basic-info', layout: { positions: { lg: { colSpan: 12 } } } },\n { id: 'levels', layout: { positions: { lg: { colSpan: 12 } } } },\n ],\n properties: [\n { name: 'code', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n LEVELS_LAYOUT,\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [\n createAllQueryView({\n sorts: [{ name: 'code', dir: 'asc' }],\n }),\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './entity-entry.risk-rating-scale';\n"],"names":[],"mappings":"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"}