@acorex-platform/module-application-management-client 0.0.30 → 0.0.33

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 (38) hide show
  1. package/fesm2022/{acorex-platform-module-application-management-client-assign-features.command-BG986HtP.mjs → acorex-platform-module-application-management-client-assign-features.command-CcVvmbTe.mjs} +2 -2
  2. package/fesm2022/{acorex-platform-module-application-management-client-assign-features.command-BG986HtP.mjs.map → acorex-platform-module-application-management-client-assign-features.command-CcVvmbTe.mjs.map} +1 -1
  3. package/fesm2022/acorex-platform-module-application-management-client-contracts-entities-app-term.mjs +523 -0
  4. package/fesm2022/acorex-platform-module-application-management-client-contracts-entities-app-term.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-module-application-management-client-contracts-entities-app-version.mjs +378 -0
  6. package/fesm2022/acorex-platform-module-application-management-client-contracts-entities-app-version.mjs.map +1 -0
  7. package/fesm2022/acorex-platform-module-application-management-client-contracts-entities-application.mjs +946 -0
  8. package/fesm2022/acorex-platform-module-application-management-client-contracts-entities-application.mjs.map +1 -0
  9. package/fesm2022/acorex-platform-module-application-management-client-contracts-entities-edition.mjs +365 -0
  10. package/fesm2022/acorex-platform-module-application-management-client-contracts-entities-edition.mjs.map +1 -0
  11. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-acorex-platform-module-application-management-client-contracts-entity-catalog-joJGmPZP.mjs +79 -0
  12. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-acorex-platform-module-application-management-client-contracts-entity-catalog-joJGmPZP.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-app-term.entity-BfVDQrrt.mjs +466 -0
  14. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-app-term.entity-BfVDQrrt.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-app-version.entity-BVuFZBZ0.mjs +321 -0
  16. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-app-version.entity-BVuFZBZ0.mjs.map +1 -0
  17. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-application.entity-BYn6bLjH.mjs +889 -0
  18. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-application.entity-BYn6bLjH.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-edition.entity-DOhvvPnU.mjs +308 -0
  20. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog-edition.entity-DOhvvPnU.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog.mjs +2 -0
  22. package/fesm2022/acorex-platform-module-application-management-client-contracts-entity-catalog.mjs.map +1 -0
  23. package/fesm2022/{acorex-platform-module-application-management-client-features-editor.component-B5yrn7eX.mjs → acorex-platform-module-application-management-client-features-editor.component-D9Tfh0gb.mjs} +3 -2
  24. package/fesm2022/acorex-platform-module-application-management-client-features-editor.component-D9Tfh0gb.mjs.map +1 -0
  25. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-edit.component-D_IBCjfM.mjs → acorex-platform-module-application-management-client-features-widget-edit.component-B9YJsZFp.mjs} +2 -2
  26. package/fesm2022/{acorex-platform-module-application-management-client-features-widget-edit.component-D_IBCjfM.mjs.map → acorex-platform-module-application-management-client-features-widget-edit.component-B9YJsZFp.mjs.map} +1 -1
  27. package/fesm2022/acorex-platform-module-application-management-client-local-entities.mjs +32 -0
  28. package/fesm2022/acorex-platform-module-application-management-client-local-entities.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-module-application-management-client.mjs +3 -24
  30. package/fesm2022/acorex-platform-module-application-management-client.mjs.map +1 -1
  31. package/package.json +25 -1
  32. package/types/acorex-platform-module-application-management-client-contracts-entities-app-term.d.ts +5 -0
  33. package/types/acorex-platform-module-application-management-client-contracts-entities-app-version.d.ts +5 -0
  34. package/types/acorex-platform-module-application-management-client-contracts-entities-application.d.ts +5 -0
  35. package/types/acorex-platform-module-application-management-client-contracts-entities-edition.d.ts +5 -0
  36. package/types/acorex-platform-module-application-management-client-contracts-entity-catalog.d.ts +10 -0
  37. package/types/acorex-platform-module-application-management-client-local-entities.d.ts +12 -0
  38. package/fesm2022/acorex-platform-module-application-management-client-features-editor.component-B5yrn7eX.mjs.map +0 -1
@@ -12,7 +12,7 @@ import { AXButtonModule } from '@acorex/components/button';
12
12
  import * as i3 from '@acorex/components/decorators';
13
13
  import { AXDecoratorModule } from '@acorex/components/decorators';
14
14
  import { AXBasePageComponent } from '@acorex/components/page';
15
- import { A as AXPFeaturesEditorComponent } from './acorex-platform-module-application-management-client-features-editor.component-B5yrn7eX.mjs';
15
+ import { A as AXPFeaturesEditorComponent } from './acorex-platform-module-application-management-client-features-editor.component-D9Tfh0gb.mjs';
16
16
 
17
17
  class AXPFeaturesEditorPopupComponent extends AXBasePageComponent {
18
18
  constructor() {
@@ -150,4 +150,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
150
150
  }] });
151
151
 
152
152
  export { AXMAssignFeaturesCommand };
153
- //# sourceMappingURL=acorex-platform-module-application-management-client-assign-features.command-BG986HtP.mjs.map
153
+ //# sourceMappingURL=acorex-platform-module-application-management-client-assign-features.command-CcVvmbTe.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-application-management-client-assign-features.command-BG986HtP.mjs","sources":["../../../../libs/modules/application-management/client/src/lib/features/features-widget/features-editor-popup.component.ts","../../../../libs/modules/application-management/client/src/lib/features/features-widget/commands/assign-features.command.ts"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { Component, input, signal, ChangeDetectionStrategy } from '@angular/core';\n\nimport { AXPFeaturesEditorComponent } from './features-editor.component';\n\n@Component({\n template: `\n <div class=\"flex flex-col h-full\">\n <ax-content class=\"flex-1 overflow-auto p-4\">\n <axm-features-editor\n [initialValue]=\"initialValue()\"\n [readOnly]=\"false\"\n (valueChanged)=\"onValueChanged($event)\"\n />\n </ax-content>\n <ax-footer>\n <ax-suffix>\n <ax-button text=\"Cancel\" (onClick)=\"close()\"></ax-button>\n <ax-button color=\"primary\" text=\"Save\" (onClick)=\"save()\"></ax-button>\n </ax-suffix>\n </ax-footer>\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [AXDecoratorModule, AXButtonModule, AXPFeaturesEditorComponent],\n})\nexport class AXPFeaturesEditorPopupComponent extends AXBasePageComponent {\n initialValue = input<{ modules?: string[]; features?: Record<string, unknown> }>({});\n\n private latestValue = signal<{ modules: string[]; features: Record<string, unknown> }>({\n modules: [],\n features: {},\n });\n\n override ngOnInit(): void {\n super.ngOnInit();\n const initial = this.initialValue();\n this.latestValue.set({\n modules: initial.modules ?? [],\n features: initial.features ?? {},\n });\n }\n\n protected onValueChanged(value: { modules: string[]; features: Record<string, unknown> }): void {\n this.latestValue.set(value);\n }\n\n protected save(): void {\n this.close(this.latestValue());\n }\n}\n","//#region ---- Imports ----\n\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport {\n AXPCommonSettings,\n AXPSettingsService,\n} from '@acorex-platform/framework-client/common';\nimport { AXPEntityDefinitionRegistryService, dispatchEntityModifiedSideEffects } from '@acorex-platform/framework-client/layout/entity';\nimport { AXPEntityBroadcastService } from '@acorex-platform/framework-client/core';\nimport { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { RootConfig } from '@acorex-platform/module-application-management-client/contracts';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPFeaturesEditorPopupComponent } from '../features-editor-popup.component';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface AXMAssignFeaturesCommandInput {\n data?: Record<string, unknown>;\n}\n\n//#endregion\n\n//#region ---- Assign features command ----\n\n@Injectable({ providedIn: 'root' })\nexport class AXMAssignFeaturesCommand implements AXPCommand<AXMAssignFeaturesCommandInput> {\n private readonly popupService = inject(AXPopupService);\n private readonly translationService = inject(AXTranslationService);\n private readonly entityRegistry = inject(AXPEntityDefinitionRegistryService);\n private readonly toastService = inject(AXToastService);\n private readonly settingsService = inject(AXPSettingsService);\n private readonly entityEvents = inject(AXPEntityBroadcastService);\n\n async execute(input: AXMAssignFeaturesCommandInput = {}): AXPCommandExecuteResultPromise {\n const row = input.data;\n const id = row?.['id'];\n if (!id) {\n return { success: false, message: { text: 'Edition data with id is required.' } };\n }\n\n const title = await this.translationService.translateAsync(\n '@application-management:features-widget.terms.features',\n );\n const entityTitle = row['title'] ?? row['name'] ?? id;\n\n const modulesAndFeatures = (row['modulesAndFeatures'] as {\n modules?: string[];\n features?: Record<string, unknown>;\n }) ?? { modules: [], features: {} };\n\n const popupResult = await this.popupService.open(AXPFeaturesEditorPopupComponent, {\n title: `${title} - ${entityTitle}`,\n size: 'lg',\n data: {\n initialValue: modulesAndFeatures,\n },\n });\n\n const nextValue = popupResult?.data as { modules?: string[]; features?: Record<string, unknown> } | undefined;\n if (!nextValue) {\n return { success: true, kind: 'object', data: null };\n }\n\n const entityKey = `${RootConfig.module.name}.${RootConfig.entities.edition.name}`;\n const [moduleName, entityName] = entityKey.split('.');\n const entityRef = await this.entityRegistry.resolve(moduleName, entityName);\n const updatePayload = {\n ...row,\n modulesAndFeatures: nextValue,\n };\n\n const updated = await (entityRef.commands?.update?.execute as (\n data: Record<string, unknown>,\n ) => Promise<Record<string, unknown>>)(updatePayload);\n\n await this.showSuccessToast();\n dispatchEntityModifiedSideEffects(this.entityEvents, entityKey, updated);\n\n return { success: true, kind: 'object', data: nextValue };\n }\n\n private async showSuccessToast(): Promise<void> {\n const enableOperationToasts = await this.settingsService.get<boolean>(AXPCommonSettings.EnableOperationToasts);\n if (!enableOperationToasts) {\n return;\n }\n\n this.toastService.show({\n color: 'success',\n title: await this.translationService.translateAsync('@general:workflow.entity-modified-title'),\n content: await this.translationService.translateAsync('@general:workflow.entity-modified-body'),\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: true,\n });\n }\n}\n\n//#endregion\n"],"names":["i1","i2"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-application-management-client-assign-features.command-CcVvmbTe.mjs","sources":["../../../../libs/modules/application-management/client/src/lib/features/features-widget/features-editor-popup.component.ts","../../../../libs/modules/application-management/client/src/lib/features/features-widget/commands/assign-features.command.ts"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { Component, input, signal, ChangeDetectionStrategy } from '@angular/core';\n\nimport { AXPFeaturesEditorComponent } from './features-editor.component';\n\n@Component({\n template: `\n <div class=\"flex flex-col h-full\">\n <ax-content class=\"flex-1 overflow-auto p-4\">\n <axm-features-editor\n [initialValue]=\"initialValue()\"\n [readOnly]=\"false\"\n (valueChanged)=\"onValueChanged($event)\"\n />\n </ax-content>\n <ax-footer>\n <ax-suffix>\n <ax-button text=\"Cancel\" (onClick)=\"close()\"></ax-button>\n <ax-button color=\"primary\" text=\"Save\" (onClick)=\"save()\"></ax-button>\n </ax-suffix>\n </ax-footer>\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [AXDecoratorModule, AXButtonModule, AXPFeaturesEditorComponent],\n})\nexport class AXPFeaturesEditorPopupComponent extends AXBasePageComponent {\n initialValue = input<{ modules?: string[]; features?: Record<string, unknown> }>({});\n\n private latestValue = signal<{ modules: string[]; features: Record<string, unknown> }>({\n modules: [],\n features: {},\n });\n\n override ngOnInit(): void {\n super.ngOnInit();\n const initial = this.initialValue();\n this.latestValue.set({\n modules: initial.modules ?? [],\n features: initial.features ?? {},\n });\n }\n\n protected onValueChanged(value: { modules: string[]; features: Record<string, unknown> }): void {\n this.latestValue.set(value);\n }\n\n protected save(): void {\n this.close(this.latestValue());\n }\n}\n","//#region ---- Imports ----\n\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport {\n AXPCommonSettings,\n AXPSettingsService,\n} from '@acorex-platform/framework-client/common';\nimport { AXPEntityDefinitionRegistryService, dispatchEntityModifiedSideEffects } from '@acorex-platform/framework-client/layout/entity';\nimport { AXPEntityBroadcastService } from '@acorex-platform/framework-client/core';\nimport { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { RootConfig } from '@acorex-platform/module-application-management-client/contracts';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPFeaturesEditorPopupComponent } from '../features-editor-popup.component';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface AXMAssignFeaturesCommandInput {\n data?: Record<string, unknown>;\n}\n\n//#endregion\n\n//#region ---- Assign features command ----\n\n@Injectable({ providedIn: 'root' })\nexport class AXMAssignFeaturesCommand implements AXPCommand<AXMAssignFeaturesCommandInput> {\n private readonly popupService = inject(AXPopupService);\n private readonly translationService = inject(AXTranslationService);\n private readonly entityRegistry = inject(AXPEntityDefinitionRegistryService);\n private readonly toastService = inject(AXToastService);\n private readonly settingsService = inject(AXPSettingsService);\n private readonly entityEvents = inject(AXPEntityBroadcastService);\n\n async execute(input: AXMAssignFeaturesCommandInput = {}): AXPCommandExecuteResultPromise {\n const row = input.data;\n const id = row?.['id'];\n if (!id) {\n return { success: false, message: { text: 'Edition data with id is required.' } };\n }\n\n const title = await this.translationService.translateAsync(\n '@application-management:features-widget.terms.features',\n );\n const entityTitle = row['title'] ?? row['name'] ?? id;\n\n const modulesAndFeatures = (row['modulesAndFeatures'] as {\n modules?: string[];\n features?: Record<string, unknown>;\n }) ?? { modules: [], features: {} };\n\n const popupResult = await this.popupService.open(AXPFeaturesEditorPopupComponent, {\n title: `${title} - ${entityTitle}`,\n size: 'lg',\n data: {\n initialValue: modulesAndFeatures,\n },\n });\n\n const nextValue = popupResult?.data as { modules?: string[]; features?: Record<string, unknown> } | undefined;\n if (!nextValue) {\n return { success: true, kind: 'object', data: null };\n }\n\n const entityKey = `${RootConfig.module.name}.${RootConfig.entities.edition.name}`;\n const [moduleName, entityName] = entityKey.split('.');\n const entityRef = await this.entityRegistry.resolve(moduleName, entityName);\n const updatePayload = {\n ...row,\n modulesAndFeatures: nextValue,\n };\n\n const updated = await (entityRef.commands?.update?.execute as (\n data: Record<string, unknown>,\n ) => Promise<Record<string, unknown>>)(updatePayload);\n\n await this.showSuccessToast();\n dispatchEntityModifiedSideEffects(this.entityEvents, entityKey, updated);\n\n return { success: true, kind: 'object', data: nextValue };\n }\n\n private async showSuccessToast(): Promise<void> {\n const enableOperationToasts = await this.settingsService.get<boolean>(AXPCommonSettings.EnableOperationToasts);\n if (!enableOperationToasts) {\n return;\n }\n\n this.toastService.show({\n color: 'success',\n title: await this.translationService.translateAsync('@general:workflow.entity-modified-title'),\n content: await this.translationService.translateAsync('@general:workflow.entity-modified-body'),\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: true,\n });\n }\n}\n\n//#endregion\n"],"names":["i1","i2"],"mappings":"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"}
@@ -0,0 +1,523 @@
1
+ import { AXPWidgetsList, AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';
2
+ import { createAllQueryView, AXPEntityCommandScope } from '@acorex-platform/framework-shared/entity';
3
+
4
+ const config = {
5
+ i18n: 'application-management',
6
+ module: 'ApplicationManagement',
7
+ };
8
+ const RootConfig = {
9
+ config,
10
+ module: {
11
+ route: 'application-management',
12
+ name: config.module,
13
+ title: `@${config.i18n}:module.title`,
14
+ icon: 'fa-light fa-cogs',
15
+ },
16
+ entities: {
17
+ application: {
18
+ name: 'Application',
19
+ title: `@${config.i18n}:applications.entities.application.title`,
20
+ titlePlural: `@${config.i18n}:applications.entities.application.plural`,
21
+ icon: 'fa-light fa-cube',
22
+ },
23
+ edition: {
24
+ name: 'Edition',
25
+ title: `@${config.i18n}:editions.entities.edition.title`,
26
+ titlePlural: `@${config.i18n}:editions.entities.edition.plural`,
27
+ icon: 'fa-light fa-layer-group',
28
+ },
29
+ appVersion: {
30
+ name: 'AppVersion',
31
+ title: `@${config.i18n}:app-versions.entities.app-version.title`,
32
+ titlePlural: `@${config.i18n}:app-versions.entities.app-version.plural`,
33
+ icon: 'fa-light fa-code-branch',
34
+ },
35
+ appTerm: {
36
+ name: 'AppTerm',
37
+ title: `@${config.i18n}:app-terms.entities.app-term.title`,
38
+ titlePlural: `@${config.i18n}:app-terms.entities.app-term.plural`,
39
+ pageTitle: `@${config.i18n}:app-terms.pages.terms-page.title`,
40
+ pageDescription: `@${config.i18n}:app-terms.pages.terms-page.description`,
41
+ icon: 'fa-light fa-scale-balanced',
42
+ },
43
+ },
44
+ queries: {
45
+ reports: {
46
+ getApplicationVersionsTimeline: `${config.module}:Reports:GetApplicationVersionsTimeline`,
47
+ getApplicationVersionsChartData: `${config.module}:Reports:GetApplicationVersionsChartData`,
48
+ },
49
+ },
50
+ };
51
+ // Keep the old export for backward compatibility
52
+ const AXMApplicationManagementModuleConst = {
53
+ moduleName: 'ApplicationManagement',
54
+ moduleRoute: 'application-management',
55
+ i18n: 'platform-management',
56
+ };
57
+
58
+ //#endregion
59
+ //#region ---- App Term Entity Factory ----
60
+ async function appTermEntityEntityFactory() {
61
+ const entityDef = {
62
+ module: RootConfig.module.name,
63
+ name: RootConfig.entities.appTerm.name,
64
+ title: RootConfig.entities.appTerm.title,
65
+ icon: RootConfig.entities.appTerm.icon,
66
+ formats: {
67
+ individual: RootConfig.entities.appTerm.title,
68
+ plural: RootConfig.entities.appTerm.titlePlural,
69
+ searchResult: {
70
+ title: '{{ title }}',
71
+ description: RootConfig.module.title,
72
+ },
73
+ },
74
+ relatedEntities: [],
75
+ groups: [
76
+ {
77
+ id: 'section',
78
+ title: RootConfig.entities.appTerm.title,
79
+ },
80
+ ],
81
+ properties: [
82
+ {
83
+ name: 'applicationId',
84
+ title: `@${RootConfig.config.i18n}:applications.entities.application.title`,
85
+ groupId: 'section',
86
+ options: {
87
+ filter: {
88
+ advance: {
89
+ enabled: true,
90
+ },
91
+ inline: {
92
+ enabled: true,
93
+ },
94
+ },
95
+ sort: {
96
+ enabled: true,
97
+ },
98
+ },
99
+ schema: {
100
+ dataType: 'string',
101
+ interface: {
102
+ type: AXPWidgetsList.Editors.LookupBox,
103
+ options: {
104
+ entity: `${RootConfig.module.name}.${RootConfig.entities.application.name}`,
105
+ textField: 'title',
106
+ valueField: 'id',
107
+ look: 'select',
108
+ columns: ['title', 'code'],
109
+ expose: [
110
+ { source: 'id', target: 'application.id' },
111
+ { source: 'title', target: 'application.title' },
112
+ { source: 'code', target: 'application.code' },
113
+ ],
114
+ },
115
+ },
116
+ },
117
+ validations: [
118
+ {
119
+ rule: 'required',
120
+ },
121
+ ],
122
+ },
123
+ {
124
+ name: 'type',
125
+ title: '@general:terms.common.type',
126
+ groupId: 'section',
127
+ schema: {
128
+ dataType: 'string',
129
+ interface: {
130
+ type: AXPWidgetsCatalog.text,
131
+ },
132
+ },
133
+ validations: [
134
+ {
135
+ rule: 'required',
136
+ },
137
+ ],
138
+ },
139
+ {
140
+ name: 'title',
141
+ title: '@general:terms.common.title',
142
+ groupId: 'section',
143
+ schema: {
144
+ dataType: 'string',
145
+ interface: {
146
+ type: AXPWidgetsCatalog.text,
147
+ },
148
+ },
149
+ options: {
150
+ filter: {
151
+ advance: {
152
+ enabled: true,
153
+ },
154
+ inline: {
155
+ enabled: true,
156
+ },
157
+ },
158
+ sort: {
159
+ enabled: true,
160
+ },
161
+ },
162
+ validations: [
163
+ {
164
+ rule: 'required',
165
+ },
166
+ ],
167
+ },
168
+ {
169
+ name: 'content',
170
+ title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.fields.content.title`,
171
+ groupId: 'section',
172
+ schema: {
173
+ dataType: 'string',
174
+ interface: {
175
+ type: AXPWidgetsCatalog.richText,
176
+ options: {
177
+ minLineCount: 5,
178
+ maxLineCount: 17,
179
+ isFitLine: true,
180
+ },
181
+ },
182
+ },
183
+ validations: [
184
+ {
185
+ rule: 'required',
186
+ },
187
+ ],
188
+ },
189
+ {
190
+ name: 'version',
191
+ title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.fields.version.title`,
192
+ groupId: 'section',
193
+ schema: {
194
+ dataType: 'number',
195
+ interface: {
196
+ type: AXPWidgetsCatalog.number,
197
+ },
198
+ },
199
+ options: {
200
+ filter: {
201
+ advance: {
202
+ enabled: true,
203
+ },
204
+ },
205
+ sort: {
206
+ enabled: true,
207
+ },
208
+ },
209
+ validations: [
210
+ {
211
+ rule: 'required',
212
+ },
213
+ ],
214
+ },
215
+ {
216
+ name: 'effectiveDate',
217
+ title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.fields.effective-date.title`,
218
+ groupId: 'section',
219
+ schema: {
220
+ dataType: 'dateTime',
221
+ interface: {
222
+ type: AXPWidgetsCatalog.dateTime,
223
+ },
224
+ },
225
+ options: {
226
+ filter: {
227
+ advance: {
228
+ enabled: true,
229
+ },
230
+ },
231
+ sort: {
232
+ enabled: true,
233
+ },
234
+ },
235
+ validations: [
236
+ {
237
+ rule: 'required',
238
+ },
239
+ ],
240
+ },
241
+ ],
242
+ columns: [
243
+ { name: 'title' },
244
+ { name: 'applicationId', options: { dataPath: 'application.title' } },
245
+ { name: 'content' },
246
+ { name: 'version' },
247
+ { name: 'effectiveDate' },
248
+ ],
249
+ interfaces: {
250
+ master: {
251
+ create: {
252
+ sections: [
253
+ {
254
+ id: 'section',
255
+ },
256
+ ],
257
+ properties: [
258
+ {
259
+ name: 'applicationId',
260
+ layout: {
261
+ positions: {
262
+ lg: {
263
+ colSpan: 12,
264
+ order: 1,
265
+ },
266
+ },
267
+ },
268
+ },
269
+ {
270
+ name: 'title',
271
+ layout: {
272
+ positions: {
273
+ lg: {
274
+ colSpan: 12,
275
+ order: 2,
276
+ },
277
+ },
278
+ },
279
+ },
280
+ {
281
+ name: 'type',
282
+ layout: {
283
+ positions: {
284
+ lg: {
285
+ colSpan: 4,
286
+ order: 3,
287
+ },
288
+ },
289
+ },
290
+ },
291
+ {
292
+ name: 'version',
293
+ layout: {
294
+ positions: {
295
+ lg: {
296
+ colSpan: 4,
297
+ order: 4,
298
+ },
299
+ },
300
+ },
301
+ },
302
+ {
303
+ name: 'content',
304
+ layout: {
305
+ positions: {
306
+ lg: {
307
+ colSpan: 12,
308
+ order: 10,
309
+ },
310
+ },
311
+ },
312
+ },
313
+ {
314
+ name: 'effectiveDate',
315
+ layout: {
316
+ positions: {
317
+ lg: {
318
+ colSpan: 4,
319
+ order: 5,
320
+ },
321
+ },
322
+ },
323
+ },
324
+ ],
325
+ },
326
+ update: {
327
+ sections: [
328
+ {
329
+ id: 'section',
330
+ },
331
+ ],
332
+ properties: [
333
+ {
334
+ name: 'applicationId',
335
+ layout: {
336
+ positions: {
337
+ lg: {
338
+ colSpan: 12,
339
+ order: 1,
340
+ },
341
+ },
342
+ },
343
+ },
344
+ {
345
+ name: 'title',
346
+ layout: {
347
+ positions: {
348
+ lg: {
349
+ colSpan: 12,
350
+ order: 2,
351
+ },
352
+ },
353
+ },
354
+ },
355
+ {
356
+ name: 'type',
357
+ layout: {
358
+ positions: {
359
+ lg: {
360
+ colSpan: 4,
361
+ order: 3,
362
+ },
363
+ },
364
+ },
365
+ },
366
+ {
367
+ name: 'version',
368
+ layout: {
369
+ positions: {
370
+ lg: {
371
+ colSpan: 4,
372
+ order: 4,
373
+ },
374
+ },
375
+ },
376
+ },
377
+ {
378
+ name: 'content',
379
+ layout: {
380
+ positions: {
381
+ lg: {
382
+ colSpan: 12,
383
+ order: 10,
384
+ },
385
+ },
386
+ },
387
+ },
388
+ {
389
+ name: 'effectiveDate',
390
+ layout: {
391
+ positions: {
392
+ lg: {
393
+ colSpan: 4,
394
+ order: 5,
395
+ },
396
+ },
397
+ },
398
+ },
399
+ ],
400
+ },
401
+ single: {
402
+ title: '{{title}}',
403
+ sections: [
404
+ {
405
+ id: 'section',
406
+ },
407
+ ],
408
+ properties: [
409
+ {
410
+ name: 'title',
411
+ layout: {
412
+ positions: {
413
+ lg: {
414
+ colSpan: 6,
415
+ order: 1,
416
+ },
417
+ },
418
+ },
419
+ },
420
+ {
421
+ name: 'applicationId',
422
+ layout: {
423
+ positions: {
424
+ lg: {
425
+ colSpan: 6,
426
+ order: 2,
427
+ },
428
+ },
429
+ },
430
+ },
431
+ {
432
+ name: 'type',
433
+ layout: {
434
+ positions: {
435
+ lg: {
436
+ colSpan: 6,
437
+ order: 3,
438
+ },
439
+ },
440
+ },
441
+ },
442
+ {
443
+ name: 'version',
444
+ layout: {
445
+ positions: {
446
+ lg: {
447
+ colSpan: 6,
448
+ order: 4,
449
+ },
450
+ },
451
+ },
452
+ },
453
+ {
454
+ name: 'content',
455
+ layout: {
456
+ positions: {
457
+ lg: {
458
+ colSpan: 12,
459
+ order: 10,
460
+ },
461
+ },
462
+ },
463
+ },
464
+ {
465
+ name: 'effectiveDate',
466
+ layout: {
467
+ positions: {
468
+ lg: {
469
+ colSpan: 6,
470
+ order: 5,
471
+ },
472
+ },
473
+ },
474
+ },
475
+ ],
476
+ actions: [],
477
+ },
478
+ list: {
479
+ actions: [
480
+ {
481
+ title: '@general:actions.create.title',
482
+ command: 'Entity:Create',
483
+ priority: 'primary',
484
+ type: 'create',
485
+ scope: AXPEntityCommandScope.TypeLevel,
486
+ },
487
+ {
488
+ title: '@general:actions.delete-items.title',
489
+ command: 'Entity:Remove',
490
+ priority: 'primary',
491
+ type: 'delete',
492
+ scope: AXPEntityCommandScope.Selected,
493
+ },
494
+ {
495
+ title: '@general:actions.detail.title',
496
+ command: 'Entity:OpenDetails',
497
+ priority: 'secondary',
498
+ type: 'view',
499
+ scope: AXPEntityCommandScope.Individual,
500
+ },
501
+ {
502
+ title: '@general:actions.delete.title',
503
+ command: 'Entity:Remove',
504
+ priority: 'secondary',
505
+ type: 'delete',
506
+ scope: AXPEntityCommandScope.Individual,
507
+ },
508
+ ],
509
+ views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
510
+ },
511
+ },
512
+ },
513
+ };
514
+ return entityDef;
515
+ }
516
+ //#endregion
517
+
518
+ /**
519
+ * Generated bundle index. Do not edit.
520
+ */
521
+
522
+ export { appTermEntityEntityFactory };
523
+ //# sourceMappingURL=acorex-platform-module-application-management-client-contracts-entities-app-term.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-application-management-client-contracts-entities-app-term.mjs","sources":["../../../../libs/modules/application-management/contracts/src/root-config.ts","../../../../libs/modules/application-management/contracts/src/entities/app-term/app-term.entity.ts","../../../../libs/modules/application-management/contracts/src/acorex-platform-module-application-management-client-contracts-entities-app-term.ts"],"sourcesContent":["const config = {\n i18n: 'application-management',\n module: 'ApplicationManagement',\n};\n\nexport const RootConfig = {\n config,\n module: {\n route: 'application-management',\n name: config.module,\n title: `@${config.i18n}:module.title`,\n icon: 'fa-light fa-cogs',\n },\n entities: {\n application: {\n name: 'Application',\n title: `@${config.i18n}:applications.entities.application.title`,\n titlePlural: `@${config.i18n}:applications.entities.application.plural`,\n icon: 'fa-light fa-cube',\n },\n edition: {\n name: 'Edition',\n title: `@${config.i18n}:editions.entities.edition.title`,\n titlePlural: `@${config.i18n}:editions.entities.edition.plural`,\n icon: 'fa-light fa-layer-group',\n },\n appVersion: {\n name: 'AppVersion',\n title: `@${config.i18n}:app-versions.entities.app-version.title`,\n titlePlural: `@${config.i18n}:app-versions.entities.app-version.plural`,\n icon: 'fa-light fa-code-branch',\n },\n appTerm: {\n name: 'AppTerm',\n title: `@${config.i18n}:app-terms.entities.app-term.title`,\n titlePlural: `@${config.i18n}:app-terms.entities.app-term.plural`,\n pageTitle: `@${config.i18n}:app-terms.pages.terms-page.title`,\n pageDescription: `@${config.i18n}:app-terms.pages.terms-page.description`,\n icon: 'fa-light fa-scale-balanced',\n },\n },\n queries: {\n reports: {\n getApplicationVersionsTimeline: `${config.module}:Reports:GetApplicationVersionsTimeline`,\n getApplicationVersionsChartData: `${config.module}:Reports:GetApplicationVersionsChartData`,\n },\n },\n} as const;\n\n// Keep the old export for backward compatibility\nexport const AXMApplicationManagementModuleConst = {\n moduleName: 'ApplicationManagement',\n moduleRoute: 'application-management',\n i18n: 'platform-management',\n} as const;\n","import { AXPWidgetsCatalog, AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport { AXPEntity, AXPEntityCommandScope, createAllQueryView } from '@acorex-platform/framework-shared/entity';\n//#region ---- Imports ----\nimport { RootConfig } from '../../root-config';\n\n//#endregion\n\n//#region ---- App Term Entity Factory ----\n\nexport async function appTermEntityEntityFactory(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.appTerm.name,\n title: RootConfig.entities.appTerm.title,\n icon: RootConfig.entities.appTerm.icon,\n formats: {\n individual: RootConfig.entities.appTerm.title,\n plural: RootConfig.entities.appTerm.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: RootConfig.entities.appTerm.title,\n },\n ],\n properties: [\n {\n name: 'applicationId',\n title: `@${RootConfig.config.i18n}:applications.entities.application.title`,\n groupId: 'section',\n options: {\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.application.name}`,\n textField: 'title',\n valueField: 'id',\n look: 'select',\n columns: ['title', 'code'],\n expose: [\n { source: 'id', target: 'application.id' },\n { source: 'title', target: 'application.title' },\n { source: 'code', target: 'application.code' },\n ],\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'type',\n title: '@general:terms.common.type',\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n options: {\n filter: {\n advance: {\n enabled: true,\n },\n inline: {\n enabled: true,\n },\n },\n sort: {\n enabled: true,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'content',\n title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.fields.content.title`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.richText,\n options: {\n minLineCount: 5,\n maxLineCount: 17,\n isFitLine: true,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'version',\n title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.fields.version.title`,\n groupId: 'section',\n schema: {\n dataType: 'number',\n interface: {\n type: AXPWidgetsCatalog.number,\n },\n },\n options: {\n filter: {\n advance: {\n enabled: true,\n },\n },\n sort: {\n enabled: true,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'effectiveDate',\n title: `@${RootConfig.config.i18n}:app-terms.entities.app-term.fields.effective-date.title`,\n groupId: 'section',\n schema: {\n dataType: 'dateTime',\n interface: {\n type: AXPWidgetsCatalog.dateTime,\n },\n },\n options: {\n filter: {\n advance: {\n enabled: true,\n },\n },\n sort: {\n enabled: true,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n ],\n columns: [\n { name: 'title' },\n { name: 'applicationId', options: { dataPath: 'application.title' } },\n { name: 'content' },\n { name: 'version' },\n { name: 'effectiveDate' },\n ],\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'applicationId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 1,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 3,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n {\n name: 'content',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'effectiveDate',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 5,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'applicationId',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 1,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 2,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 3,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 4,\n },\n },\n },\n },\n {\n name: 'content',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'effectiveDate',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n order: 5,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 1,\n },\n },\n },\n },\n {\n name: 'applicationId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 2,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 3,\n },\n },\n },\n },\n {\n name: 'version',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 4,\n },\n },\n },\n },\n {\n name: 'content',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n order: 10,\n },\n },\n },\n },\n {\n name: 'effectiveDate',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n order: 5,\n },\n },\n },\n },\n ],\n actions: [],\n },\n list: {\n actions: [\n {\n title: '@general:actions.create.title',\n command: 'Entity:Create',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: '@general:actions.delete-items.title',\n command: 'Entity:Remove',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: '@general:actions.detail.title',\n command: 'Entity:OpenDetails',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: '@general:actions.delete.title',\n command: 'Entity:Remove',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './entity-entry.app-term';\n"],"names":[],"mappings":"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"}