@acorex-platform/module-application-management-client 0.0.18 → 0.0.20

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 (33) hide show
  1. package/fesm2022/{acorex-platform-module-application-management-client-application-status.provider-DqPlbWuW.mjs → acorex-platform-module-application-management-client-application-status.provider-Bz6cknzi.mjs} +4 -4
  2. package/fesm2022/{acorex-platform-module-application-management-client-application-status.provider-DqPlbWuW.mjs.map → acorex-platform-module-application-management-client-application-status.provider-Bz6cknzi.mjs.map} +1 -1
  3. package/fesm2022/{acorex-platform-module-application-management-client-assign-features.command-R7y4QKhC.mjs → acorex-platform-module-application-management-client-assign-features.command-BG986HtP.mjs} +23 -21
  4. package/fesm2022/acorex-platform-module-application-management-client-assign-features.command-BG986HtP.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-module-application-management-client-contracts.mjs +79 -1930
  6. package/fesm2022/acorex-platform-module-application-management-client-contracts.mjs.map +1 -1
  7. package/fesm2022/{acorex-platform-module-application-management-client-feature-definition.provider-Depetn50.mjs → acorex-platform-module-application-management-client-feature-definition.provider-V-wfUEZf.mjs} +4 -4
  8. package/fesm2022/{acorex-platform-module-application-management-client-feature-definition.provider-Depetn50.mjs.map → acorex-platform-module-application-management-client-feature-definition.provider-V-wfUEZf.mjs.map} +1 -1
  9. package/fesm2022/acorex-platform-module-application-management-client-features-editor.component-B5yrn7eX.mjs +584 -0
  10. package/fesm2022/acorex-platform-module-application-management-client-features-editor.component-B5yrn7eX.mjs.map +1 -0
  11. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-column.component-CiBGmw6I.mjs → acorex-platform-module-application-management-client-features-widget-column.component-C2OEG0LL.mjs} +7 -8
  12. package/fesm2022/acorex-platform-module-application-management-client-features-widget-column.component-C2OEG0LL.mjs.map +1 -0
  13. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-designer.component-nStj9BAw.mjs → acorex-platform-module-application-management-client-features-widget-designer.component-CMJwcY5f.mjs} +4 -4
  14. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-designer.component-nStj9BAw.mjs.map → acorex-platform-module-application-management-client-features-widget-designer.component-CMJwcY5f.mjs.map} +1 -1
  15. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-edit.component-BdHYm0Yr.mjs → acorex-platform-module-application-management-client-features-widget-edit.component-D_IBCjfM.mjs} +5 -5
  16. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-edit.component-BdHYm0Yr.mjs.map → acorex-platform-module-application-management-client-features-widget-edit.component-D_IBCjfM.mjs.map} +1 -1
  17. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-print.component-C6Z9uzRr.mjs → acorex-platform-module-application-management-client-features-widget-print.component-CkTEfzcY.mjs} +4 -4
  18. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-print.component-C6Z9uzRr.mjs.map → acorex-platform-module-application-management-client-features-widget-print.component-CkTEfzcY.mjs.map} +1 -1
  19. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-view.component-ysM1jD08.mjs → acorex-platform-module-application-management-client-features-widget-view.component-yKbBTqym.mjs} +12 -8
  20. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-view.component-ysM1jD08.mjs.map → acorex-platform-module-application-management-client-features-widget-view.component-yKbBTqym.mjs.map} +1 -1
  21. package/fesm2022/acorex-platform-module-application-management-client-permission-definition.provider-MTs9VAE_.mjs +44 -0
  22. package/fesm2022/acorex-platform-module-application-management-client-permission-definition.provider-MTs9VAE_.mjs.map +1 -0
  23. package/fesm2022/acorex-platform-module-application-management-client.mjs +256 -217
  24. package/fesm2022/acorex-platform-module-application-management-client.mjs.map +1 -1
  25. package/package.json +1 -1
  26. package/types/acorex-platform-module-application-management-client-contracts.d.ts +166 -51
  27. package/types/acorex-platform-module-application-management-client.d.ts +9 -17
  28. package/fesm2022/acorex-platform-module-application-management-client-assign-features.command-R7y4QKhC.mjs.map +0 -1
  29. package/fesm2022/acorex-platform-module-application-management-client-features-editor.component-BiYXAqYJ.mjs +0 -548
  30. package/fesm2022/acorex-platform-module-application-management-client-features-editor.component-BiYXAqYJ.mjs.map +0 -1
  31. package/fesm2022/acorex-platform-module-application-management-client-features-widget-column.component-CiBGmw6I.mjs.map +0 -1
  32. package/fesm2022/acorex-platform-module-application-management-client-permission-definition.provider-Dn5WiubC.mjs +0 -32
  33. package/fesm2022/acorex-platform-module-application-management-client-permission-definition.provider-Dn5WiubC.mjs.map +0 -1
@@ -1,5 +1,14 @@
1
- import { AXPWidgetsList, AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';
2
- import { createAllQueryView, AXPEntityCommandScope, entityMasterCrudActions, entityMasterRecordActions, entityDetailsCrudActions } from '@acorex-platform/framework-shared/entity';
1
+ //#region ---- Application context definitions ----
2
+ const AXM_APPLICATION_CONTEXT_DEFINITIONS = [
3
+ {
4
+ name: 'applicationTitle',
5
+ title: 'Application title',
6
+ description: 'Display name of the active application from the session (title or name).',
7
+ order: 31,
8
+ capabilities: ['ai'],
9
+ },
10
+ ];
11
+ //#endregion
3
12
 
4
13
  // Management feature removed - module name is used directly as feature key
5
14
  const AXMApplicationManagementFeatureKeys = {};
@@ -14,12 +23,32 @@ const AXPApplicationManagementMenuKeys = {
14
23
  HelpTerms: 'ApplicationManagement:Menu:Help.Terms',
15
24
  };
16
25
 
26
+ /**
27
+ * Applications & Platform capabilities used by this module.
28
+ * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).
29
+ */
30
+ const AXPApplicationsPlatformPermissionKeys = {
31
+ Access: 'ApplicationsPlatform:Permission:Access',
32
+ MaintainApplications: 'ApplicationsPlatform:Permission:MaintainApplications',
33
+ MaintainTenants: 'ApplicationsPlatform:Permission:MaintainTenants',
34
+ MaintainPlatformShell: 'ApplicationsPlatform:Permission:MaintainPlatformShell',
35
+ MaintainLandingPages: 'ApplicationsPlatform:Permission:MaintainLandingPages',
36
+ MaintainIdentifiers: 'ApplicationsPlatform:Permission:MaintainIdentifiers',
37
+ MaintainTenantSettings: 'ApplicationsPlatform:Permission:MaintainTenantSettings',
38
+ MaintainPlatformSettings: 'ApplicationsPlatform:Permission:MaintainPlatformSettings',
39
+ MaintainLocales: 'ApplicationsPlatform:Permission:MaintainLocales',
40
+ UseDevTools: 'ApplicationsPlatform:Permission:UseDevTools',
41
+ };
42
+ /**
43
+ * @deprecated Prefer {@link AXPApplicationsPlatformPermissionKeys}.
44
+ * Legacy nested shape kept so existing imports compile during migration.
45
+ */
17
46
  const AXMPermissionsKeys = {
18
47
  ApplicationManagement: {
19
- Root: 'ApplicationManagement:Permission:Applications.Management',
20
- Applications: 'ApplicationManagement:Permission:Applications.Management',
21
- ReleaseNotes: 'ApplicationManagement:Permission:ReleaseNotes.Management',
22
- AppTerms: 'ApplicationManagement:Permission:AppTerms.Management',
48
+ Root: AXPApplicationsPlatformPermissionKeys.MaintainApplications,
49
+ Applications: AXPApplicationsPlatformPermissionKeys.MaintainApplications,
50
+ ReleaseNotes: AXPApplicationsPlatformPermissionKeys.MaintainApplications,
51
+ AppTerms: AXPApplicationsPlatformPermissionKeys.MaintainApplications,
23
52
  },
24
53
  };
25
54
 
@@ -34,6 +63,8 @@ var AXPApplicationInfoSettings;
34
63
  AXPApplicationInfoSettings["InitVersion"] = "ApplicationManagement:Setting:AppVersion.InitVersion";
35
64
  // Release Notes
36
65
  AXPApplicationInfoSettings["ReleaseNotes"] = "ApplicationManagement:Setting:Startup.ReleaseNotes";
66
+ /** Last selected edition modules checklist view mode (`type` | `domain`). */
67
+ AXPApplicationInfoSettings["EditionModulesViewMode"] = "ApplicationManagement:Setting:EditionModules.ViewMode";
37
68
  })(AXPApplicationInfoSettings || (AXPApplicationInfoSettings = {}));
38
69
  /**
39
70
  * Get the setting key for tracking if a specific version has been seen
@@ -45,6 +76,41 @@ function getAppVersionSeenKey(versionNumber) {
45
76
  }
46
77
  //#endregion
47
78
 
79
+ //#region ----- Application management server commands -----
80
+ const AXMApplicationManagementServerCommands = {
81
+ SetupTenant: 'ApplicationManagement:Server:SetupTenant',
82
+ };
83
+ //#endregion
84
+
85
+ //#region ----- Module setup & industry pack providers -----
86
+ const MODULE_SETUP_PROVIDER = Symbol('MODULE_SETUP_PROVIDER');
87
+ const INDUSTRY_PACK_PROVIDER = Symbol('INDUSTRY_PACK_PROVIDER');
88
+ /** Nest `multi: true` registration for a module's tenant setup handler. */
89
+ function provideModuleSetup(provider) {
90
+ return {
91
+ provide: MODULE_SETUP_PROVIDER,
92
+ useValue: provider,
93
+ multi: true,
94
+ };
95
+ }
96
+ /** Nest `multi: true` registration for an industry starter-pack contribution. */
97
+ function provideIndustryPackContribution(provider) {
98
+ return {
99
+ provide: INDUSTRY_PACK_PROVIDER,
100
+ useValue: provider,
101
+ multi: true,
102
+ };
103
+ }
104
+ //#endregion
105
+
106
+ //#region ----- Industry pack codes -----
107
+ /** Coarse industry codes used by starter packs (`BusinessCore.Industry.code`). */
108
+ const AXM_INDUSTRY_PACK_CODES = {
109
+ Construction: 'CONSTR',
110
+ Software: 'SOFTWARE',
111
+ };
112
+ //#endregion
113
+
48
114
  const config = {
49
115
  i18n: 'application-management',
50
116
  module: 'ApplicationManagement',
@@ -85,6 +151,12 @@ const RootConfig = {
85
151
  icon: 'fa-light fa-scale-balanced',
86
152
  },
87
153
  },
154
+ queries: {
155
+ reports: {
156
+ getApplicationVersionsTimeline: `${config.module}:Reports:GetApplicationVersionsTimeline`,
157
+ getApplicationVersionsChartData: `${config.module}:Reports:GetApplicationVersionsChartData`,
158
+ },
159
+ },
88
160
  };
89
161
  // Keep the old export for backward compatibility
90
162
  const AXMApplicationManagementModuleConst = {
@@ -93,1929 +165,6 @@ const AXMApplicationManagementModuleConst = {
93
165
  i18n: 'platform-management',
94
166
  };
95
167
 
96
- //#endregion
97
- //#region ---- App Term Entity Factory ----
98
- async function appTermEntityEntityFactory() {
99
- const entityDef = {
100
- module: RootConfig.module.name,
101
- name: RootConfig.entities.appTerm.name,
102
- title: RootConfig.entities.appTerm.title,
103
- icon: RootConfig.entities.appTerm.icon,
104
- formats: {
105
- individual: RootConfig.entities.appTerm.title,
106
- plural: RootConfig.entities.appTerm.titlePlural,
107
- searchResult: {
108
- title: '{{ title }}',
109
- description: RootConfig.module.title,
110
- },
111
- },
112
- relatedEntities: [],
113
- groups: [
114
- {
115
- id: 'section',
116
- title: RootConfig.entities.appTerm.title,
117
- },
118
- ],
119
- properties: [
120
- {
121
- name: 'applicationId',
122
- title: `@${RootConfig.config.i18n}:applications.entities.application.title`,
123
- groupId: 'section',
124
- options: {
125
- filter: {
126
- advance: {
127
- enabled: true,
128
- },
129
- inline: {
130
- enabled: true,
131
- },
132
- },
133
- sort: {
134
- enabled: true,
135
- },
136
- },
137
- schema: {
138
- dataType: 'string',
139
- interface: {
140
- type: AXPWidgetsList.Editors.LookupBox,
141
- options: {
142
- entity: `${RootConfig.module.name}.${RootConfig.entities.application.name}`,
143
- textField: 'title',
144
- valueField: 'id',
145
- look: 'select',
146
- columns: ['title', 'code'],
147
- expose: [
148
- { source: 'id', target: 'application.id' },
149
- { source: 'title', target: 'application.title' },
150
- { source: 'code', target: 'application.code' },
151
- ],
152
- },
153
- },
154
- },
155
- validations: [
156
- {
157
- rule: 'required',
158
- },
159
- ],
160
- },
161
- {
162
- name: 'type',
163
- title: '@general:terms.common.type',
164
- groupId: 'section',
165
- schema: {
166
- dataType: 'string',
167
- interface: {
168
- type: AXPWidgetsCatalog.text,
169
- },
170
- },
171
- validations: [
172
- {
173
- rule: 'required',
174
- },
175
- ],
176
- },
177
- {
178
- name: 'title',
179
- title: '@general:terms.common.title',
180
- groupId: 'section',
181
- schema: {
182
- dataType: 'string',
183
- interface: {
184
- type: AXPWidgetsCatalog.text,
185
- },
186
- },
187
- options: {
188
- filter: {
189
- advance: {
190
- enabled: true,
191
- },
192
- inline: {
193
- enabled: true,
194
- },
195
- },
196
- sort: {
197
- enabled: true,
198
- },
199
- },
200
- validations: [
201
- {
202
- rule: 'required',
203
- },
204
- ],
205
- },
206
- {
207
- name: 'content',
208
- title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.fields.content.title`,
209
- groupId: 'section',
210
- schema: {
211
- dataType: 'string',
212
- interface: {
213
- type: AXPWidgetsCatalog.richText,
214
- options: {
215
- minLineCount: 5,
216
- maxLineCount: 17,
217
- isFitLine: true,
218
- },
219
- },
220
- },
221
- validations: [
222
- {
223
- rule: 'required',
224
- },
225
- ],
226
- },
227
- {
228
- name: 'version',
229
- title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.fields.version.title`,
230
- groupId: 'section',
231
- schema: {
232
- dataType: 'number',
233
- interface: {
234
- type: AXPWidgetsCatalog.number,
235
- },
236
- },
237
- options: {
238
- filter: {
239
- advance: {
240
- enabled: true,
241
- },
242
- },
243
- sort: {
244
- enabled: true,
245
- },
246
- },
247
- validations: [
248
- {
249
- rule: 'required',
250
- },
251
- ],
252
- },
253
- {
254
- name: 'effectiveDate',
255
- title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.fields.effective-date.title`,
256
- groupId: 'section',
257
- schema: {
258
- dataType: 'dateTime',
259
- interface: {
260
- type: AXPWidgetsCatalog.dateTime,
261
- },
262
- },
263
- options: {
264
- filter: {
265
- advance: {
266
- enabled: true,
267
- },
268
- },
269
- sort: {
270
- enabled: true,
271
- },
272
- },
273
- validations: [
274
- {
275
- rule: 'required',
276
- },
277
- ],
278
- },
279
- ],
280
- columns: [
281
- { name: 'title' },
282
- { name: 'applicationId', options: { dataPath: 'application.title' } },
283
- { name: 'content' },
284
- { name: 'version' },
285
- { name: 'effectiveDate' },
286
- ],
287
- interfaces: {
288
- master: {
289
- create: {
290
- sections: [
291
- {
292
- id: 'section',
293
- },
294
- ],
295
- properties: [
296
- {
297
- name: 'applicationId',
298
- layout: {
299
- positions: {
300
- lg: {
301
- colSpan: 12,
302
- order: 1,
303
- },
304
- },
305
- },
306
- },
307
- {
308
- name: 'title',
309
- layout: {
310
- positions: {
311
- lg: {
312
- colSpan: 12,
313
- order: 2,
314
- },
315
- },
316
- },
317
- },
318
- {
319
- name: 'type',
320
- layout: {
321
- positions: {
322
- lg: {
323
- colSpan: 4,
324
- order: 3,
325
- },
326
- },
327
- },
328
- },
329
- {
330
- name: 'version',
331
- layout: {
332
- positions: {
333
- lg: {
334
- colSpan: 4,
335
- order: 4,
336
- },
337
- },
338
- },
339
- },
340
- {
341
- name: 'content',
342
- layout: {
343
- positions: {
344
- lg: {
345
- colSpan: 12,
346
- order: 10,
347
- },
348
- },
349
- },
350
- },
351
- {
352
- name: 'effectiveDate',
353
- layout: {
354
- positions: {
355
- lg: {
356
- colSpan: 4,
357
- order: 5,
358
- },
359
- },
360
- },
361
- },
362
- ],
363
- },
364
- update: {
365
- sections: [
366
- {
367
- id: 'section',
368
- },
369
- ],
370
- properties: [
371
- {
372
- name: 'applicationId',
373
- layout: {
374
- positions: {
375
- lg: {
376
- colSpan: 12,
377
- order: 1,
378
- },
379
- },
380
- },
381
- },
382
- {
383
- name: 'title',
384
- layout: {
385
- positions: {
386
- lg: {
387
- colSpan: 12,
388
- order: 2,
389
- },
390
- },
391
- },
392
- },
393
- {
394
- name: 'type',
395
- layout: {
396
- positions: {
397
- lg: {
398
- colSpan: 4,
399
- order: 3,
400
- },
401
- },
402
- },
403
- },
404
- {
405
- name: 'version',
406
- layout: {
407
- positions: {
408
- lg: {
409
- colSpan: 4,
410
- order: 4,
411
- },
412
- },
413
- },
414
- },
415
- {
416
- name: 'content',
417
- layout: {
418
- positions: {
419
- lg: {
420
- colSpan: 12,
421
- order: 10,
422
- },
423
- },
424
- },
425
- },
426
- {
427
- name: 'effectiveDate',
428
- layout: {
429
- positions: {
430
- lg: {
431
- colSpan: 4,
432
- order: 5,
433
- },
434
- },
435
- },
436
- },
437
- ],
438
- },
439
- single: {
440
- title: '{{title}}',
441
- sections: [
442
- {
443
- id: 'section',
444
- },
445
- ],
446
- properties: [
447
- {
448
- name: 'title',
449
- layout: {
450
- positions: {
451
- lg: {
452
- colSpan: 6,
453
- order: 1,
454
- },
455
- },
456
- },
457
- },
458
- {
459
- name: 'applicationId',
460
- layout: {
461
- positions: {
462
- lg: {
463
- colSpan: 6,
464
- order: 2,
465
- },
466
- },
467
- },
468
- },
469
- {
470
- name: 'type',
471
- layout: {
472
- positions: {
473
- lg: {
474
- colSpan: 6,
475
- order: 3,
476
- },
477
- },
478
- },
479
- },
480
- {
481
- name: 'version',
482
- layout: {
483
- positions: {
484
- lg: {
485
- colSpan: 6,
486
- order: 4,
487
- },
488
- },
489
- },
490
- },
491
- {
492
- name: 'content',
493
- layout: {
494
- positions: {
495
- lg: {
496
- colSpan: 12,
497
- order: 10,
498
- },
499
- },
500
- },
501
- },
502
- {
503
- name: 'effectiveDate',
504
- layout: {
505
- positions: {
506
- lg: {
507
- colSpan: 6,
508
- order: 5,
509
- },
510
- },
511
- },
512
- },
513
- ],
514
- actions: [],
515
- },
516
- list: {
517
- actions: [
518
- {
519
- title: '@general:actions.create.title',
520
- command: 'Entity:Create',
521
- priority: 'primary',
522
- type: 'create',
523
- scope: AXPEntityCommandScope.TypeLevel,
524
- },
525
- {
526
- title: '@general:actions.delete-items.title',
527
- command: 'Entity:Delete',
528
- priority: 'primary',
529
- type: 'delete',
530
- scope: AXPEntityCommandScope.Selected,
531
- },
532
- {
533
- title: '@general:actions.detail.title',
534
- command: 'Entity:OpenDetails',
535
- priority: 'secondary',
536
- type: 'view',
537
- scope: AXPEntityCommandScope.Individual,
538
- },
539
- {
540
- title: '@general:actions.delete.title',
541
- command: 'Entity:Delete',
542
- priority: 'secondary',
543
- type: 'delete',
544
- scope: AXPEntityCommandScope.Individual,
545
- },
546
- ],
547
- views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
548
- },
549
- },
550
- },
551
- };
552
- return entityDef;
553
- }
554
- //#endregion
555
-
556
- async function appVersionEntityEntityFactory() {
557
- const i18n = RootConfig.config.i18n;
558
- const entityDef = {
559
- module: RootConfig.module.name,
560
- name: RootConfig.entities.appVersion.name,
561
- title: RootConfig.entities.appVersion.title,
562
- icon: RootConfig.entities.appVersion.icon,
563
- formats: {
564
- individual: RootConfig.entities.appVersion.title,
565
- plural: RootConfig.entities.appVersion.title,
566
- searchResult: {
567
- title: '{{ versionNumber }}',
568
- description: RootConfig.module.title,
569
- },
570
- },
571
- relatedEntities: [],
572
- groups: [
573
- {
574
- id: 'section',
575
- title: RootConfig.entities.appVersion.title,
576
- },
577
- ],
578
- properties: [
579
- {
580
- name: 'versionNumber',
581
- title: `t("versionNumber", { scope: "${i18n}" })`,
582
- groupId: 'section',
583
- schema: {
584
- dataType: 'string',
585
- interface: {
586
- type: AXPWidgetsCatalog.text,
587
- },
588
- },
589
- options: {
590
- filter: {
591
- advance: {
592
- enabled: true,
593
- },
594
- inline: {
595
- enabled: true,
596
- },
597
- },
598
- sort: {
599
- enabled: true,
600
- },
601
- },
602
- validations: [
603
- {
604
- rule: 'required',
605
- },
606
- ],
607
- },
608
- {
609
- name: 'changeLog',
610
- title: `t("changeLogs", { scope: "${i18n}" })`,
611
- groupId: 'section',
612
- schema: {
613
- dataType: 'string',
614
- interface: {
615
- type: AXPWidgetsCatalog.richText,
616
- options: {
617
- minLineCount: 5,
618
- maxLineCount: 17,
619
- isFitLine: true,
620
- },
621
- },
622
- },
623
- validations: [
624
- {
625
- rule: 'required',
626
- },
627
- ],
628
- },
629
- {
630
- name: 'publishDate',
631
- title: `t("publishDate", { scope: "${i18n}" })`,
632
- groupId: 'section',
633
- schema: {
634
- dataType: 'dateTime',
635
- interface: {
636
- type: AXPWidgetsCatalog.dateTime,
637
- },
638
- },
639
- options: {
640
- filter: {
641
- advance: {
642
- enabled: true,
643
- },
644
- },
645
- sort: {
646
- enabled: true,
647
- },
648
- },
649
- validations: [
650
- {
651
- rule: 'required',
652
- },
653
- ],
654
- },
655
- {
656
- name: 'showFirstTimePopup',
657
- title: `t("notifyUser", { scope: "${i18n}" })`,
658
- groupId: 'section',
659
- schema: {
660
- dataType: 'boolean',
661
- interface: {
662
- type: AXPWidgetsCatalog.checkbox,
663
- },
664
- },
665
- },
666
- ],
667
- columns: [
668
- { name: 'versionNumber' },
669
- { name: 'changeLog' },
670
- { name: 'publishDate' },
671
- { name: 'showFirstTimePopup' },
672
- ],
673
- interfaces: {
674
- master: {
675
- create: {
676
- sections: [
677
- {
678
- id: 'section',
679
- },
680
- ],
681
- properties: [
682
- {
683
- name: 'versionNumber',
684
- layout: {
685
- positions: {
686
- lg: {
687
- order: 1,
688
- colSpan: 4,
689
- },
690
- },
691
- },
692
- },
693
- {
694
- name: 'publishDate',
695
- layout: {
696
- positions: {
697
- lg: {
698
- order: 2,
699
- colSpan: 4,
700
- },
701
- },
702
- },
703
- },
704
- {
705
- name: 'showFirstTimePopup',
706
- layout: {
707
- positions: {
708
- lg: {
709
- colSpan: 4,
710
- order: 3,
711
- },
712
- },
713
- },
714
- },
715
- {
716
- name: 'changeLog',
717
- layout: {
718
- positions: {
719
- lg: {
720
- order: 10,
721
- colSpan: 12,
722
- },
723
- },
724
- },
725
- },
726
- ],
727
- },
728
- update: {
729
- sections: [
730
- {
731
- id: 'section',
732
- },
733
- ],
734
- properties: [
735
- {
736
- name: 'versionNumber',
737
- layout: {
738
- positions: {
739
- lg: {
740
- colSpan: 4,
741
- order: 1,
742
- },
743
- },
744
- },
745
- },
746
- {
747
- name: 'publishDate',
748
- layout: {
749
- positions: {
750
- lg: {
751
- colSpan: 4,
752
- order: 2,
753
- },
754
- },
755
- },
756
- },
757
- {
758
- name: 'showFirstTimePopup',
759
- layout: {
760
- positions: {
761
- lg: {
762
- colSpan: 4,
763
- order: 3,
764
- },
765
- },
766
- },
767
- },
768
- {
769
- name: 'changeLog',
770
- layout: {
771
- positions: {
772
- lg: {
773
- colSpan: 12,
774
- order: 4,
775
- },
776
- },
777
- },
778
- },
779
- ],
780
- },
781
- single: {
782
- title: '{{versionNumber}}',
783
- sections: [
784
- {
785
- id: 'section',
786
- },
787
- ],
788
- properties: [
789
- {
790
- name: 'versionNumber',
791
- layout: {
792
- positions: {
793
- lg: {
794
- colSpan: 4,
795
- },
796
- },
797
- },
798
- },
799
- {
800
- name: 'publishDate',
801
- layout: {
802
- positions: {
803
- lg: {
804
- colSpan: 4,
805
- },
806
- },
807
- },
808
- },
809
- {
810
- name: 'showFirstTimePopup',
811
- layout: {
812
- positions: {
813
- lg: {
814
- colSpan: 4,
815
- },
816
- },
817
- },
818
- },
819
- {
820
- name: 'changeLog',
821
- layout: {
822
- positions: {
823
- lg: {
824
- colSpan: 8,
825
- },
826
- },
827
- },
828
- },
829
- ],
830
- actions: [],
831
- },
832
- list: {
833
- actions: [
834
- {
835
- title: 'Create New',
836
- command: 'Entity:Create',
837
- priority: 'primary',
838
- type: 'create',
839
- scope: AXPEntityCommandScope.TypeLevel,
840
- },
841
- {
842
- title: 'Delete Items',
843
- command: 'Entity:Delete',
844
- priority: 'primary',
845
- type: 'delete',
846
- scope: AXPEntityCommandScope.Selected,
847
- },
848
- {
849
- title: 'Details',
850
- command: 'Entity:OpenDetails',
851
- priority: 'secondary',
852
- type: 'view',
853
- scope: AXPEntityCommandScope.Individual,
854
- },
855
- {
856
- title: 'Delete',
857
- command: 'Entity:Delete',
858
- priority: 'secondary',
859
- type: 'delete',
860
- scope: AXPEntityCommandScope.Individual,
861
- },
862
- ],
863
- views: [createAllQueryView({ sorts: [{ name: 'versionNumber', dir: 'desc' }] })],
864
- },
865
- },
866
- },
867
- };
868
- return entityDef;
869
- }
870
-
871
- //#endregion
872
- //#region ---- Application Entity Factory ----
873
- async function applicationEntityFactory() {
874
- const i18n = RootConfig.config.i18n + ':applications.entities.application';
875
- const entityDef = {
876
- module: RootConfig.module.name,
877
- name: RootConfig.entities.application.name,
878
- icon: RootConfig.entities.application.icon,
879
- title: RootConfig.entities.application.title,
880
- plugins: [
881
- { name: 'history' },
882
- {
883
- name: 'status',
884
- options: {
885
- field: 'statusId',
886
- definition: 'application-management.status.application',
887
- },
888
- },
889
- {
890
- name: 'category',
891
- options: {
892
- appearance: { icon: true, color: true },
893
- },
894
- },
895
- {
896
- name: 'color',
897
- options: {
898
- group: 'branding',
899
- }
900
- },
901
- ],
902
- formats: {
903
- individual: RootConfig.entities.application.title,
904
- plural: RootConfig.entities.application.titlePlural,
905
- searchResult: {
906
- title: '{{ title }}',
907
- description: RootConfig.module.title,
908
- },
909
- },
910
- relatedEntities: [
911
- {
912
- entity: `${RootConfig.module.name}.${RootConfig.entities.edition.name}`,
913
- title: `@${i18n}.groups.editions`,
914
- conditions: [{ name: 'id', operator: { type: 'in' }, value: '{{ context.eval("editionIds") }}' }],
915
- actions: [...entityDetailsCrudActions('editionIds')],
916
- layout: { type: 'page-list', position: 'after', order: 1 },
917
- persistence: {
918
- dataPath: 'editions',
919
- strategy: 'referenced',
920
- idField: 'editionIds',
921
- },
922
- },
923
- {
924
- entity: `${RootConfig.module.name}.${RootConfig.entities.appTerm.name}`,
925
- title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.plural`,
926
- icon: RootConfig.entities.appTerm.icon,
927
- conditions: [{ name: 'applicationId', operator: { type: 'equal' }, value: '{{ context.eval("id") }}' }],
928
- actions: [...entityDetailsCrudActions('applicationId')],
929
- layout: { type: 'page-list', position: 'after', order: 2 },
930
- columns: ['title', 'version', 'effectiveDate'],
931
- },
932
- ],
933
- groups: [
934
- {
935
- id: 'basic-info',
936
- title: `@${i18n}.groups.basic-info`,
937
- },
938
- {
939
- id: 'branding',
940
- title: `@${i18n}.groups.branding`,
941
- },
942
- {
943
- id: 'links',
944
- title: `@${i18n}.groups.links`,
945
- },
946
- {
947
- id: 'metadata',
948
- title: `@${i18n}.groups.metadata`,
949
- },
950
- {
951
- id: 'edition-assignment',
952
- title: `@${i18n}.groups.edition-assignment`,
953
- },
954
- ],
955
- properties: [
956
- {
957
- name: 'code',
958
- title: `@${i18n}.fields.code.title`,
959
- groupId: 'basic-info',
960
- options: {
961
- sort: {
962
- enabled: true,
963
- },
964
- filter: {
965
- advance: {
966
- enabled: true,
967
- },
968
- inline: {
969
- enabled: true,
970
- },
971
- },
972
- },
973
- schema: {
974
- dataType: 'string',
975
- interface: {
976
- type: AXPWidgetsCatalog.text,
977
- },
978
- },
979
- },
980
- {
981
- name: 'title',
982
- title: `@${i18n}.fields.title.title`,
983
- groupId: 'basic-info',
984
- options: {
985
- sort: {
986
- enabled: true,
987
- },
988
- filter: {
989
- advance: {
990
- enabled: true,
991
- },
992
- inline: {
993
- enabled: false,
994
- },
995
- },
996
- },
997
- schema: {
998
- dataType: 'string',
999
- interface: {
1000
- type: AXPWidgetsCatalog.text,
1001
- },
1002
- },
1003
- validations: [
1004
- {
1005
- rule: 'required',
1006
- },
1007
- ],
1008
- },
1009
- {
1010
- name: 'description',
1011
- title: `@${i18n}.fields.description.title`,
1012
- groupId: 'basic-info',
1013
- options: {
1014
- sort: {
1015
- enabled: true,
1016
- },
1017
- filter: {
1018
- advance: {
1019
- enabled: true,
1020
- },
1021
- inline: {
1022
- enabled: false,
1023
- },
1024
- },
1025
- },
1026
- schema: {
1027
- dataType: 'string',
1028
- interface: {
1029
- type: AXPWidgetsCatalog.largeText,
1030
- },
1031
- },
1032
- },
1033
- {
1034
- name: 'version',
1035
- title: `@${i18n}.fields.version.title`,
1036
- groupId: 'basic-info',
1037
- options: {
1038
- sort: {
1039
- enabled: true,
1040
- },
1041
- filter: {
1042
- advance: {
1043
- enabled: true,
1044
- },
1045
- inline: {
1046
- enabled: false,
1047
- },
1048
- },
1049
- },
1050
- schema: {
1051
- dataType: 'string',
1052
- interface: {
1053
- type: AXPWidgetsCatalog.text,
1054
- },
1055
- },
1056
- },
1057
- {
1058
- name: 'tags',
1059
- title: `@${i18n}.fields.tags.title`,
1060
- groupId: 'basic-info',
1061
- options: {
1062
- sort: {
1063
- enabled: false,
1064
- },
1065
- filter: {
1066
- advance: {
1067
- enabled: true,
1068
- },
1069
- inline: {
1070
- enabled: false,
1071
- },
1072
- },
1073
- },
1074
- schema: {
1075
- dataType: 'string',
1076
- interface: {
1077
- type: AXPWidgetsCatalog.text,
1078
- },
1079
- },
1080
- },
1081
- {
1082
- name: 'icon',
1083
- title: `@${i18n}.fields.icon.title`,
1084
- groupId: 'branding',
1085
- options: {
1086
- sort: {
1087
- enabled: false,
1088
- },
1089
- filter: {
1090
- advance: {
1091
- enabled: false,
1092
- },
1093
- inline: {
1094
- enabled: false,
1095
- },
1096
- },
1097
- },
1098
- schema: {
1099
- dataType: 'string',
1100
- interface: {
1101
- type: AXPWidgetsCatalog.iconChooser,
1102
- },
1103
- },
1104
- },
1105
- {
1106
- name: 'logo',
1107
- title: `@${i18n}.fields.logo.title`,
1108
- groupId: 'branding',
1109
- options: {
1110
- sort: {
1111
- enabled: false,
1112
- },
1113
- filter: {
1114
- advance: {
1115
- enabled: false,
1116
- },
1117
- inline: {
1118
- enabled: false,
1119
- },
1120
- },
1121
- },
1122
- schema: {
1123
- dataType: 'string',
1124
- interface: {
1125
- type: AXPWidgetsCatalog.image,
1126
- },
1127
- },
1128
- },
1129
- {
1130
- name: 'url',
1131
- title: `@${i18n}.fields.url.title`,
1132
- groupId: 'links',
1133
- options: {
1134
- sort: {
1135
- enabled: false,
1136
- },
1137
- filter: {
1138
- advance: {
1139
- enabled: true,
1140
- },
1141
- inline: {
1142
- enabled: false,
1143
- },
1144
- },
1145
- },
1146
- schema: {
1147
- dataType: 'string',
1148
- interface: {
1149
- type: AXPWidgetsCatalog.text,
1150
- },
1151
- },
1152
- },
1153
- {
1154
- name: 'documentationUrl',
1155
- title: `@${i18n}.fields.documentation-url.title`,
1156
- groupId: 'links',
1157
- options: {
1158
- sort: {
1159
- enabled: false,
1160
- },
1161
- filter: {
1162
- advance: {
1163
- enabled: false,
1164
- },
1165
- inline: {
1166
- enabled: false,
1167
- },
1168
- },
1169
- },
1170
- schema: {
1171
- dataType: 'string',
1172
- interface: {
1173
- type: AXPWidgetsCatalog.text,
1174
- },
1175
- },
1176
- },
1177
- {
1178
- name: 'supportEmail',
1179
- title: `@${i18n}.fields.support-email.title`,
1180
- groupId: 'links',
1181
- options: {
1182
- sort: {
1183
- enabled: false,
1184
- },
1185
- filter: {
1186
- advance: {
1187
- enabled: true,
1188
- },
1189
- inline: {
1190
- enabled: false,
1191
- },
1192
- },
1193
- },
1194
- schema: {
1195
- dataType: 'string',
1196
- interface: {
1197
- type: AXPWidgetsCatalog.text,
1198
- },
1199
- },
1200
- },
1201
- {
1202
- name: 'releaseDate',
1203
- title: `@${i18n}.fields.release-date.title`,
1204
- groupId: 'metadata',
1205
- options: {
1206
- sort: {
1207
- enabled: true,
1208
- },
1209
- filter: {
1210
- advance: {
1211
- enabled: true,
1212
- },
1213
- inline: {
1214
- enabled: false,
1215
- },
1216
- },
1217
- },
1218
- schema: {
1219
- dataType: 'date',
1220
- interface: {
1221
- type: AXPWidgetsCatalog.dateTime,
1222
- },
1223
- },
1224
- },
1225
- {
1226
- name: 'isPublic',
1227
- title: `@${i18n}.fields.is-public.title`,
1228
- groupId: 'metadata',
1229
- options: {
1230
- sort: {
1231
- enabled: true,
1232
- },
1233
- filter: {
1234
- advance: {
1235
- enabled: true,
1236
- },
1237
- inline: {
1238
- enabled: true,
1239
- },
1240
- },
1241
- },
1242
- schema: {
1243
- dataType: 'boolean',
1244
- interface: {
1245
- type: AXPWidgetsCatalog.toggle,
1246
- },
1247
- },
1248
- },
1249
- ],
1250
- columns: [{ name: 'code' }, { name: 'title' }, { name: 'version' }, { name: 'statusId' }],
1251
- interfaces: {
1252
- master: {
1253
- create: {
1254
- sections: [
1255
- {
1256
- id: 'basic-info',
1257
- },
1258
- {
1259
- id: 'branding',
1260
- },
1261
- {
1262
- id: 'links',
1263
- },
1264
- {
1265
- id: 'metadata',
1266
- },
1267
- ],
1268
- properties: [
1269
- {
1270
- name: 'code',
1271
- layout: {
1272
- positions: {
1273
- lg: {
1274
- colSpan: 6,
1275
- order: 1,
1276
- },
1277
- },
1278
- },
1279
- },
1280
- {
1281
- name: 'title',
1282
- layout: {
1283
- positions: {
1284
- lg: {
1285
- colSpan: 6,
1286
- order: 2,
1287
- },
1288
- },
1289
- },
1290
- },
1291
- {
1292
- name: 'description',
1293
- layout: {
1294
- positions: {
1295
- lg: {
1296
- colSpan: 12,
1297
- order: 3,
1298
- },
1299
- },
1300
- },
1301
- },
1302
- {
1303
- name: 'version',
1304
- layout: {
1305
- positions: {
1306
- lg: {
1307
- colSpan: 4,
1308
- order: 4,
1309
- },
1310
- },
1311
- },
1312
- },
1313
- {
1314
- name: 'tags',
1315
- layout: {
1316
- positions: {
1317
- lg: {
1318
- colSpan: 4,
1319
- order: 5,
1320
- },
1321
- },
1322
- },
1323
- },
1324
- {
1325
- name: 'icon',
1326
- layout: {
1327
- positions: {
1328
- lg: {
1329
- colSpan: 6,
1330
- order: 7,
1331
- },
1332
- },
1333
- },
1334
- },
1335
- {
1336
- name: 'logo',
1337
- layout: {
1338
- positions: {
1339
- lg: {
1340
- colSpan: 6,
1341
- order: 8,
1342
- },
1343
- },
1344
- },
1345
- },
1346
- {
1347
- name: 'url',
1348
- layout: {
1349
- positions: {
1350
- lg: {
1351
- colSpan: 12,
1352
- order: 9,
1353
- },
1354
- },
1355
- },
1356
- },
1357
- {
1358
- name: 'documentationUrl',
1359
- layout: {
1360
- positions: {
1361
- lg: {
1362
- colSpan: 6,
1363
- order: 10,
1364
- },
1365
- },
1366
- },
1367
- },
1368
- {
1369
- name: 'supportEmail',
1370
- layout: {
1371
- positions: {
1372
- lg: {
1373
- colSpan: 6,
1374
- order: 11,
1375
- },
1376
- },
1377
- },
1378
- },
1379
- {
1380
- name: 'releaseDate',
1381
- layout: {
1382
- positions: {
1383
- lg: {
1384
- colSpan: 6,
1385
- order: 12,
1386
- },
1387
- },
1388
- },
1389
- },
1390
- {
1391
- name: 'isPublic',
1392
- layout: {
1393
- positions: {
1394
- lg: {
1395
- colSpan: 6,
1396
- order: 13,
1397
- },
1398
- },
1399
- },
1400
- },
1401
- ],
1402
- },
1403
- update: {
1404
- sections: [
1405
- {
1406
- id: 'basic-info',
1407
- },
1408
- {
1409
- id: 'branding',
1410
- },
1411
- {
1412
- id: 'links',
1413
- },
1414
- {
1415
- id: 'metadata',
1416
- },
1417
- ],
1418
- properties: [
1419
- {
1420
- name: 'code',
1421
- layout: {
1422
- positions: {
1423
- lg: {
1424
- colSpan: 6,
1425
- order: 1,
1426
- },
1427
- },
1428
- },
1429
- },
1430
- {
1431
- name: 'title',
1432
- layout: {
1433
- positions: {
1434
- lg: {
1435
- colSpan: 6,
1436
- order: 2,
1437
- },
1438
- },
1439
- },
1440
- },
1441
- {
1442
- name: 'description',
1443
- layout: {
1444
- positions: {
1445
- lg: {
1446
- colSpan: 12,
1447
- order: 3,
1448
- },
1449
- },
1450
- },
1451
- },
1452
- {
1453
- name: 'version',
1454
- layout: {
1455
- positions: {
1456
- lg: {
1457
- colSpan: 4,
1458
- order: 4,
1459
- },
1460
- },
1461
- },
1462
- },
1463
- {
1464
- name: 'tags',
1465
- layout: {
1466
- positions: {
1467
- lg: {
1468
- colSpan: 4,
1469
- order: 5,
1470
- },
1471
- },
1472
- },
1473
- },
1474
- {
1475
- name: 'icon',
1476
- layout: {
1477
- positions: {
1478
- lg: {
1479
- colSpan: 6,
1480
- order: 7,
1481
- },
1482
- },
1483
- },
1484
- },
1485
- {
1486
- name: 'logo',
1487
- layout: {
1488
- positions: {
1489
- lg: {
1490
- colSpan: 6,
1491
- order: 8,
1492
- },
1493
- },
1494
- },
1495
- },
1496
- {
1497
- name: 'url',
1498
- layout: {
1499
- positions: {
1500
- lg: {
1501
- colSpan: 12,
1502
- order: 9,
1503
- },
1504
- },
1505
- },
1506
- },
1507
- {
1508
- name: 'documentationUrl',
1509
- layout: {
1510
- positions: {
1511
- lg: {
1512
- colSpan: 6,
1513
- order: 10,
1514
- },
1515
- },
1516
- },
1517
- },
1518
- {
1519
- name: 'supportEmail',
1520
- layout: {
1521
- positions: {
1522
- lg: {
1523
- colSpan: 6,
1524
- order: 11,
1525
- },
1526
- },
1527
- },
1528
- },
1529
- {
1530
- name: 'releaseDate',
1531
- layout: {
1532
- positions: {
1533
- lg: {
1534
- colSpan: 6,
1535
- order: 12,
1536
- },
1537
- },
1538
- },
1539
- },
1540
- {
1541
- name: 'isPublic',
1542
- layout: {
1543
- positions: {
1544
- lg: {
1545
- colSpan: 6,
1546
- order: 13,
1547
- },
1548
- },
1549
- },
1550
- },
1551
- ],
1552
- },
1553
- single: {
1554
- title: '{{title}}',
1555
- sections: [
1556
- {
1557
- id: 'basic-info',
1558
- layout: {
1559
- positions: {
1560
- lg: {
1561
- colSpan: 12,
1562
- },
1563
- },
1564
- },
1565
- },
1566
- {
1567
- id: 'branding',
1568
- layout: {
1569
- positions: {
1570
- lg: {
1571
- colSpan: 12,
1572
- },
1573
- },
1574
- },
1575
- },
1576
- {
1577
- id: 'links',
1578
- layout: {
1579
- positions: {
1580
- lg: {
1581
- colSpan: 12,
1582
- },
1583
- },
1584
- },
1585
- },
1586
- {
1587
- id: 'metadata',
1588
- layout: {
1589
- positions: {
1590
- lg: {
1591
- colSpan: 12,
1592
- },
1593
- },
1594
- },
1595
- },
1596
- ],
1597
- properties: [
1598
- {
1599
- name: 'code',
1600
- layout: {
1601
- positions: {
1602
- lg: {
1603
- colSpan: 6,
1604
- order: 1,
1605
- },
1606
- },
1607
- },
1608
- },
1609
- {
1610
- name: 'title',
1611
- layout: {
1612
- positions: {
1613
- lg: {
1614
- colSpan: 6,
1615
- order: 2,
1616
- },
1617
- },
1618
- },
1619
- },
1620
- {
1621
- name: 'description',
1622
- layout: {
1623
- positions: {
1624
- lg: {
1625
- colSpan: 12,
1626
- order: 3,
1627
- },
1628
- },
1629
- },
1630
- },
1631
- {
1632
- name: 'version',
1633
- layout: {
1634
- positions: {
1635
- lg: {
1636
- colSpan: 4,
1637
- order: 4,
1638
- },
1639
- },
1640
- },
1641
- },
1642
- {
1643
- name: 'tags',
1644
- layout: {
1645
- positions: {
1646
- lg: {
1647
- colSpan: 4,
1648
- order: 5,
1649
- },
1650
- },
1651
- },
1652
- },
1653
- {
1654
- name: 'icon',
1655
- layout: {
1656
- positions: {
1657
- lg: {
1658
- colSpan: 6,
1659
- order: 7,
1660
- },
1661
- },
1662
- },
1663
- },
1664
- {
1665
- name: 'logo',
1666
- layout: {
1667
- positions: {
1668
- lg: {
1669
- colSpan: 6,
1670
- order: 8,
1671
- },
1672
- },
1673
- },
1674
- },
1675
- {
1676
- name: 'url',
1677
- layout: {
1678
- positions: {
1679
- lg: {
1680
- colSpan: 12,
1681
- order: 9,
1682
- },
1683
- },
1684
- },
1685
- },
1686
- {
1687
- name: 'documentationUrl',
1688
- layout: {
1689
- positions: {
1690
- lg: {
1691
- colSpan: 6,
1692
- order: 10,
1693
- },
1694
- },
1695
- },
1696
- },
1697
- {
1698
- name: 'supportEmail',
1699
- layout: {
1700
- positions: {
1701
- lg: {
1702
- colSpan: 6,
1703
- order: 11,
1704
- },
1705
- },
1706
- },
1707
- },
1708
- {
1709
- name: 'releaseDate',
1710
- layout: {
1711
- positions: {
1712
- lg: {
1713
- colSpan: 6,
1714
- order: 12,
1715
- },
1716
- },
1717
- },
1718
- },
1719
- {
1720
- name: 'isPublic',
1721
- layout: {
1722
- positions: {
1723
- lg: {
1724
- colSpan: 6,
1725
- order: 13,
1726
- },
1727
- },
1728
- },
1729
- },
1730
- ],
1731
- actions: [...entityMasterRecordActions()],
1732
- },
1733
- list: {
1734
- actions: [...entityMasterCrudActions()],
1735
- views: [
1736
- createAllQueryView({
1737
- sorts: [{ name: 'title', dir: 'asc' }],
1738
- }),
1739
- ],
1740
- },
1741
- },
1742
- },
1743
- };
1744
- return entityDef;
1745
- }
1746
- //#endregion
1747
-
1748
- //#endregion
1749
- //#region ---- Edition Entity Factory ----
1750
- async function editionEntityFactory() {
1751
- const i18n = RootConfig.config.i18n + ':editions.entities.edition';
1752
- const entityDef = {
1753
- module: RootConfig.module.name,
1754
- name: RootConfig.entities.edition.name,
1755
- icon: RootConfig.entities.edition.icon,
1756
- title: RootConfig.entities.edition.title,
1757
- formats: {
1758
- individual: RootConfig.entities.edition.title,
1759
- plural: RootConfig.entities.edition.titlePlural,
1760
- searchResult: {
1761
- title: '{{ title }}',
1762
- description: RootConfig.module.title,
1763
- },
1764
- },
1765
- relatedEntities: [
1766
- {
1767
- entity: `${"SubscriptionManagement"}.${"Subscription"}`,
1768
- title: `@${RootConfig.config.i18n}:editions.entities.related-entities.subscriptions.title`,
1769
- icon: "fa-light fa-credit-card",
1770
- columns: ['planId', 'statusId', 'startDate', 'endDate'],
1771
- conditions: [
1772
- { name: 'subscriberType', operator: { type: 'equal' }, value: 'ApplicationEdition' },
1773
- { name: 'subscriberId', operator: { type: 'equal' }, value: '{{ context.eval("id") }}' },
1774
- ],
1775
- actions: [...entityDetailsCrudActions('subscriberId')],
1776
- layout: { type: 'page-list', position: 'after', order: 1 },
1777
- },
1778
- ],
1779
- groups: [
1780
- {
1781
- id: 'basic-info',
1782
- title: `@${i18n}.groups.basic-info`,
1783
- },
1784
- ],
1785
- properties: [
1786
- {
1787
- name: 'title',
1788
- title: `@${i18n}.fields.title.title`,
1789
- groupId: 'basic-info',
1790
- options: {
1791
- sort: {
1792
- enabled: true,
1793
- },
1794
- filter: {
1795
- advance: {
1796
- enabled: true,
1797
- },
1798
- inline: {
1799
- enabled: false,
1800
- },
1801
- },
1802
- },
1803
- schema: {
1804
- dataType: 'string',
1805
- interface: {
1806
- type: AXPWidgetsCatalog.text,
1807
- },
1808
- },
1809
- validations: [
1810
- {
1811
- rule: 'required',
1812
- },
1813
- ],
1814
- },
1815
- {
1816
- name: 'description',
1817
- title: `@${i18n}.fields.description.title`,
1818
- groupId: 'basic-info',
1819
- options: {
1820
- sort: {
1821
- enabled: true,
1822
- },
1823
- filter: {
1824
- advance: {
1825
- enabled: true,
1826
- },
1827
- inline: {
1828
- enabled: false,
1829
- },
1830
- },
1831
- },
1832
- schema: {
1833
- dataType: 'string',
1834
- interface: {
1835
- type: AXPWidgetsCatalog.largeText,
1836
- },
1837
- },
1838
- },
1839
- {
1840
- name: 'modulesAndFeatures',
1841
- title: `@${i18n}.fields.modules-and-features.title`,
1842
- groupId: 'basic-info',
1843
- schema: {
1844
- dataType: 'object',
1845
- interface: {
1846
- type: 'module-feature-editor',
1847
- },
1848
- },
1849
- },
1850
- ],
1851
- columns: [{ name: 'title' }, { name: 'description' }],
1852
- interfaces: {
1853
- master: {
1854
- create: {
1855
- sections: [
1856
- {
1857
- id: 'basic-info',
1858
- },
1859
- ],
1860
- properties: [
1861
- {
1862
- name: 'title',
1863
- layout: {
1864
- positions: {
1865
- lg: {
1866
- colSpan: 12,
1867
- order: 1,
1868
- },
1869
- },
1870
- },
1871
- },
1872
- {
1873
- name: 'description',
1874
- layout: {
1875
- positions: {
1876
- lg: {
1877
- colSpan: 12,
1878
- order: 2,
1879
- },
1880
- },
1881
- },
1882
- },
1883
- {
1884
- name: 'modulesAndFeatures',
1885
- layout: {
1886
- positions: {
1887
- lg: {
1888
- colSpan: 12,
1889
- order: 3,
1890
- },
1891
- },
1892
- },
1893
- },
1894
- ],
1895
- },
1896
- update: {
1897
- sections: [
1898
- {
1899
- id: 'basic-info',
1900
- },
1901
- ],
1902
- properties: [
1903
- {
1904
- name: 'title',
1905
- layout: {
1906
- positions: {
1907
- lg: {
1908
- colSpan: 12,
1909
- order: 1,
1910
- },
1911
- },
1912
- },
1913
- },
1914
- {
1915
- name: 'description',
1916
- layout: {
1917
- positions: {
1918
- lg: {
1919
- colSpan: 12,
1920
- order: 2,
1921
- },
1922
- },
1923
- },
1924
- },
1925
- {
1926
- name: 'modulesAndFeatures',
1927
- layout: {
1928
- positions: {
1929
- lg: {
1930
- colSpan: 12,
1931
- order: 3,
1932
- },
1933
- },
1934
- },
1935
- },
1936
- ],
1937
- },
1938
- single: {
1939
- title: '{{title}}',
1940
- sections: [
1941
- {
1942
- id: 'basic-info',
1943
- layout: {
1944
- positions: {
1945
- lg: {
1946
- colSpan: 12,
1947
- },
1948
- },
1949
- },
1950
- },
1951
- ],
1952
- properties: [
1953
- {
1954
- name: 'title',
1955
- layout: {
1956
- positions: {
1957
- lg: {
1958
- colSpan: 12,
1959
- order: 1,
1960
- },
1961
- },
1962
- },
1963
- },
1964
- {
1965
- name: 'description',
1966
- layout: {
1967
- positions: {
1968
- lg: {
1969
- colSpan: 12,
1970
- order: 2,
1971
- },
1972
- },
1973
- },
1974
- },
1975
- {
1976
- name: 'modulesAndFeatures',
1977
- layout: {
1978
- positions: {
1979
- lg: {
1980
- colSpan: 12,
1981
- order: 3,
1982
- },
1983
- },
1984
- },
1985
- },
1986
- ],
1987
- actions: [...entityMasterRecordActions()],
1988
- },
1989
- list: {
1990
- actions: [
1991
- ...entityMasterCrudActions(),
1992
- {
1993
- title: '@platform-management:menu-management.actions.customize-menu.title',
1994
- icon: 'fa-light fa-bars',
1995
- command: {
1996
- name: 'customize-menu',
1997
- options: {
1998
- scopePrefix: 'edition',
1999
- },
2000
- },
2001
- priority: 'secondary',
2002
- type: 'view',
2003
- scope: AXPEntityCommandScope.Individual,
2004
- },
2005
- ],
2006
- views: [
2007
- createAllQueryView({
2008
- sorts: [{ name: 'title', dir: 'asc' }],
2009
- }),
2010
- ],
2011
- },
2012
- },
2013
- },
2014
- };
2015
- return entityDef;
2016
- }
2017
- //#endregion
2018
-
2019
168
  //#region ---- Contracts barrel ----
2020
169
  //#endregion
2021
170
 
@@ -2023,5 +172,5 @@ async function editionEntityFactory() {
2023
172
  * Generated bundle index. Do not edit.
2024
173
  */
2025
174
 
2026
- export { AXMApplicationManagementFeatureKeys, AXMApplicationManagementModuleConst, AXMPermissionsKeys, AXPApplicationInfoSettings, AXPApplicationManagementMenuKeys, RootConfig, appTermEntityEntityFactory, appVersionEntityEntityFactory, applicationEntityFactory, editionEntityFactory, getAppVersionSeenKey };
175
+ export { AXMApplicationManagementFeatureKeys, AXMApplicationManagementModuleConst, AXMApplicationManagementServerCommands, AXMPermissionsKeys, AXM_APPLICATION_CONTEXT_DEFINITIONS, AXM_INDUSTRY_PACK_CODES, AXPApplicationInfoSettings, AXPApplicationManagementMenuKeys, AXPApplicationsPlatformPermissionKeys, INDUSTRY_PACK_PROVIDER, MODULE_SETUP_PROVIDER, RootConfig, getAppVersionSeenKey, provideIndustryPackContribution, provideModuleSetup };
2027
176
  //# sourceMappingURL=acorex-platform-module-application-management-client-contracts.mjs.map