@acorex/modules 19.1.6 → 19.1.8
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.
- package/fesm2022/{acorex-modules-form-template-management-template.entity-CGhbmYel.mjs → acorex-modules-form-template-management-template.entity-CrFYszl6.mjs} +2 -2
- package/fesm2022/acorex-modules-form-template-management-template.entity-CrFYszl6.mjs.map +1 -0
- package/fesm2022/acorex-modules-form-template-management.mjs +647 -594
- package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +52 -28
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-platform-management.mjs +23 -1
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-text-template-management.mjs +32 -1
- package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
- package/form-template-management/lib/entity.provider.d.ts +3 -2
- package/form-template-management/lib/search.provider.d.ts +4 -0
- package/notification-management/lib/entity.loader.d.ts +3 -2
- package/package.json +4 -8
- package/platform-management/index.d.ts +1 -0
- package/platform-management/lib/const.d.ts +1 -0
- package/platform-management/lib/text-search/index.d.ts +2 -0
- package/platform-management/lib/text-search/text-search.service.d.ts +10 -0
- package/platform-management/lib/text-search/text-search.types.d.ts +9 -0
- package/text-template-management/lib/entity.provider.d.ts +3 -2
- package/text-template-management/lib/search-definition.provider.d.ts +4 -0
- package/backend/README.md +0 -4
- package/backend/index.d.ts +0 -4
- package/backend/lib/auth/oidc/application.loader.d.ts +0 -16
- package/backend/lib/auth/oidc/configuration.service.d.ts +0 -60
- package/backend/lib/auth/oidc/feature.loader.d.ts +0 -6
- package/backend/lib/auth/oidc/index.d.ts +0 -6
- package/backend/lib/auth/oidc/oidc.strategy.d.ts +0 -50
- package/backend/lib/auth/oidc/permission.loader.d.ts +0 -14
- package/backend/lib/auth/oidc/signincallback.component.d.ts +0 -12
- package/backend/lib/auth/oidc/tenant.loader.d.ts +0 -16
- package/backend/lib/backend.configs.d.ts +0 -94
- package/backend/lib/backend.module.d.ts +0 -9
- package/backend/lib/data/api/comment.service.d.ts +0 -16
- package/backend/lib/data/api/data-provider.d.ts +0 -26
- package/backend/lib/data/api/file.service.d.ts +0 -16
- package/backend/lib/data/api/module-designer.service.d.ts +0 -43
- package/backend/lib/data/index.d.ts +0 -4
- package/fesm2022/acorex-modules-backend.mjs +0 -943
- package/fesm2022/acorex-modules-backend.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-template.entity-CGhbmYel.mjs.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-modules-form-template-management.mjs","sources":["../../../../libs/modules/form-template-management/src/lib/const.ts","../../../../libs/modules/form-template-management/src/lib/entities/category/category.service.ts","../../../../libs/modules/form-template-management/src/lib/entities/category/category.module.ts","../../../../libs/modules/form-template-management/src/lib/entities/template/template.service.ts","../../../../libs/modules/form-template-management/src/lib/entities/template/template.module.ts","../../../../libs/modules/form-template-management/src/lib/entities/template/template.types.ts","../../../../libs/modules/form-template-management/src/lib/entity.provider.ts","../../../../libs/modules/form-template-management/src/lib/menu.provider.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template-designer/template-designer-widget-view.component.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template-designer/template-designer-widget.config.ts","../../../../libs/modules/form-template-management/src/lib/workflows/create-template.workflow.ts","../../../../libs/modules/form-template-management/src/lib/services/designer-connector.service.ts","../../../../libs/modules/form-template-management/src/lib/workflows/design-template.workflow.ts","../../../../libs/modules/form-template-management/src/lib/services/template.provider.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template-picker/template.provider.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-widget-view.component.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-widget-designer.component.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-widget.config.ts","../../../../libs/modules/form-template-management/src/lib/setting.provider.ts","../../../../libs/modules/form-template-management/src/lib/form-template-management.module.ts","../../../../libs/modules/form-template-management/src/acorex-modules-form-template-management.ts"],"sourcesContent":["export const AXMFormTemplateManagementModuleConst = {\n moduleName: 'FormTemplateManagement',\n moduleRoute: 'form-template-management',\n i18n: 'form-template-management',\n categoryEntity: 'Category',\n templateEntity: 'Template',\n};\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { AXMFormTemplateManagementModuleConst } from '../../const';\nimport { AXMFormTemplateManagementCategoryEntityModel } from './category.types';\n\nexport abstract class AXMFormTemplateManagementCategoryEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMFormTemplateManagementCategoryEntityModel\n> {}\n\n@Injectable()\nexport class AXMFormTemplateManagementCategoryEntityServiceImpl extends AXMFormTemplateManagementCategoryEntityService {\n constructor() {\n super(`${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.categoryEntity}`);\n }\n}\n","import { NgModule } from \"@angular/core\";\nimport { AXMFormTemplateManagementCategoryEntityService, AXMFormTemplateManagementCategoryEntityServiceImpl } from './category.service';\n\n@NgModule({\nimports: [],\nexports: [],\ndeclarations: [],\n providers: [\n {\n provide: AXMFormTemplateManagementCategoryEntityService,\n useClass: AXMFormTemplateManagementCategoryEntityServiceImpl,\n },\n ],\n})\nexport class AXMFormTemplateManagementCategoryEntityModule {\n}\n ","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { AXMFormTemplateManagementModuleConst } from '../../const';\nimport { AXMFormTemplateManagementTemplateEntityModel } from './template.types';\n\nexport abstract class AXMFormTemplateManagementTemplateEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMFormTemplateManagementTemplateEntityModel\n> { }\n\n@Injectable()\nexport class AXMFormTemplateManagementTemplateEntityServiceImpl extends AXMFormTemplateManagementTemplateEntityService {\n constructor() {\n super(`${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.templateEntity}`);\n }\n}\n","import { NgModule } from \"@angular/core\";\nimport { AXMFormTemplateManagementTemplateEntityService, AXMFormTemplateManagementTemplateEntityServiceImpl } from './template.service';\n\n@NgModule({\nimports: [],\nexports: [],\ndeclarations: [],\n providers: [\n {\n provide: AXMFormTemplateManagementTemplateEntityService,\n useClass: AXMFormTemplateManagementTemplateEntityServiceImpl,\n },\n ],\n})\nexport class AXMFormTemplateManagementTemplateEntityModule {\n}\n ","import { AXPEntityModel } from '@acorex/platform/common';\n\nexport interface AXMFormTemplateManagementTemplateEntityModel extends AXPEntityModel<string> {\n name: string;\n title: string;\n template: string;\n description?: string;\n type: number,\n categoryId: string\n}\n\n\nexport const AXMFormTemplateTypes = {\n Form: { id: 10, title: 'Form Template' },\n Widget: { id: 20, title: 'Widget Template' },\n} ","import { AXPEntity } from '@acorex/platform/common';\nimport { AXPEntityDefinitionLoader } from '@acorex/platform/layout/entity';\nimport { Injectable, Injector, inject } from '@angular/core';\nimport { AXMFormTemplateManagementModuleConst } from './const';\n\n@Injectable()\nexport class AXMFormTemplateManagementModuleEntityProvider implements AXPEntityDefinitionLoader {\n private injector = inject(Injector);\n\n async get(moduleName: string, entityName: string): Promise<AXPEntity | null> {\n if (moduleName == AXMFormTemplateManagementModuleConst.moduleName) {\n switch (entityName) {\n case AXMFormTemplateManagementModuleConst.categoryEntity:\n return (await import('./entities/category/category.entity')).factory(this.injector);\n case AXMFormTemplateManagementModuleConst.templateEntity:\n return (await import('./entities/template/template.entity')).factory(this.injector);\n }\n }\n return null;\n }\n}\n","import { AXPMenuProvider, AXPMenuProviderContext } from '@acorex/platform/common';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { AXMFormTemplateManagementModuleConst } from './const';\n\nexport class AXMMenuProvider implements AXPMenuProvider {\n private entityService = inject(AXPEntityService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const scope = AXMFormTemplateManagementModuleConst.i18n;\n const moduleName = AXMFormTemplateManagementModuleConst.moduleName;\n\n context.addItems([\n {\n priority: 9001,\n text: `t('module-name', {scope:\"${scope}\"})`,\n icon: 'fa-solid fa-file-invoice',\n children: [\n {\n text: `t(\"categories\", { scope: \"common\" })`,\n path: this.entityService.createPath(moduleName, AXMFormTemplateManagementModuleConst.categoryEntity),\n priority: 1,\n },\n {\n text: `t('templates', {scope:\"${scope}\"})`,\n path: this.entityService.createPath(moduleName, AXMFormTemplateManagementModuleConst.templateEntity),\n priority: 2,\n },\n ],\n },\n ]);\n }\n}\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n\n@Component({\n template: `\n <span\n class=\"ax-underline ax-decoration-dotted ax-underline-offset-8 hover:ax-text-primary-500 ax-cursor-pointer\"\n (click)=\"handleClick()\"\n >\n {{ 't(\"edit-template\",{ scope:\"form-template-management\" })' | translate | async }}\n </span>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXTranslationModule]\n})\nexport class AXPTemplateDesignerWidgetViewComponent extends AXPWidgetComponent<any> {\n private workflow = inject(AXPWorkflowService);\n\n protected async handleClick() {\n await this.workflow.execute('design-form-template', { data: { id: this.extractValue('id') } });\n }\n}\n","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig } from '@acorex/platform/layout/builder';\nimport { AXP_DATA_PATH_PROPERTY, AXP_NAME_PROPERTY } from '@acorex/platform/widgets';\n\nexport const AXPTemplateDesignerWidget: AXPWidgetConfig = {\n name: \"template-designer\",\n title: \"Template Designer\",\n icon: \"fa-solid fa-square\",\n type: 'editor',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n visible: false,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./template-designer-widget-view.component').then((c) => c.AXPTemplateDesignerWidgetViewComponent),\n },\n edit: {\n component: () => import('./template-designer-widget-view.component').then((c) => c.AXPTemplateDesignerWidgetViewComponent),\n }\n }\n}\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n templateDesigner: 'template-designer';\n }\n}","import { AXPWorkflow } from \"@acorex/platform/workflow\";\nimport { AXMFormTemplateManagementModuleConst } from \"../const\";\n\n\nexport const AXMCreateFormTemplateWorkflow: AXPWorkflow = {\n startStepId: 'create-form-template',\n steps: {\n \"create-form-template\": {\n action: 'start-workflow',\n input: {\n workflow: \"create-entity\",\n context: {\n redirect: true,\n entity: `${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.templateEntity}`,\n }\n },\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"result\") == true' }],\n nextStepId: 'get-template-confirmaton',\n },\n ],\n },\n \"get-template-confirmaton\": {\n action: 'show-prompt-dialog',\n input: {\n title: 'Confirm Action',\n message: `Would you like to proceed with starting template design?`,\n type: 'primary',\n },\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"result\") == true' }],\n nextStepId: 'template-design',\n },\n ],\n },\n \"template-design\": {\n action: 'open-form-template-designer',\n },\n },\n};\n\n\n","import { AXPDesignerConnector, AXPDesignerContent } from '@acorex/platform/layout/designer';\nimport { inject, Injectable } from '@angular/core';\nimport { AXMFormTemplateManagementTemplateEntityService, AXMFormTemplateTypes } from '../entities/template';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\nimport { AXMFormTemplateManagementModuleConst } from '../const';\nimport { AXPDataGenerator } from '@acorex/platform/common';\nimport { AXMFormTemplateManagementCategoryEntityService } from '../entities/category';\n@Injectable() //avoid DEPRECATED: DI is instantiating a token \"AXPDesignerConnectorImpl\" that inherits its @Injectable decorator but does not provide one itself. This will become an error in a future version of Angular. Please add @Injectable() to the \"AXPDesignerConnectorImpl\" class.\n\nexport class AXPDesignerConnectorImpl extends AXPDesignerConnector {\n\n\n\n private workflow = inject(AXPWorkflowService);\n private templateEntityService = inject(AXMFormTemplateManagementTemplateEntityService)\n private categoryEntityService = inject(AXMFormTemplateManagementCategoryEntityService)\n\n //#region Save and load Widgets\n\n public override async save(id: string, content: AXPDesignerContent): Promise<boolean> {\n const item = await this.templateEntityService.getOne(id)\n if (item) {\n await this.templateEntityService.updateOne(id, { template: content.json })\n return true;\n }\n else {\n throw Error(\"Invalid Id\");\n }\n }\n\n public override async saveAs(content: AXPDesignerContent): Promise<boolean> {\n const result = await this.workflow.execute('create-entity', {\n redirect: false,\n entity: `${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.templateEntity}`,\n canCreateNewOne: false,\n data: {\n name: AXPDataGenerator.alphanumeric(10),\n type: AXMFormTemplateTypes.Widget,\n template: content.json,\n categoryId: (await this.categoryEntityService.query()).items[0]?.id\n }\n });\n return result.getOutput('result');\n }\n\n public override async load(id: string): Promise<string | null> {\n const item = await this.templateEntityService.getOne(id)\n if (item) {\n return item.template;\n }\n else {\n throw Error(\"Invalid Id\");\n }\n }\n\n //#endregion\n}\n","import { AXPWorkflowNavigateAction } from \"@acorex/platform/common\";\nimport { AXPWorkflow, AXPWorkflowAction, AXPWorkflowContext } from \"@acorex/platform/workflow\";\nimport { inject, Injectable } from \"@angular/core\";\n\n@Injectable()\nexport class AXMOpenFormTemplateDesignerAction extends AXPWorkflowAction {\n\n private navigation = inject(AXPWorkflowNavigateAction);\n\n async execute(context: AXPWorkflowContext): Promise<void> {\n const { id } = context.getVariable('data');\n context.setVariable('payload', {\n commands: `forms/designer?id=${id}`,\n target: 'blank'\n });\n await this.navigation.execute(context);\n }\n}\n\nexport const AXMDesignFormTemplateWorkflow: AXPWorkflow = {\n startStepId: 'open-design-designer',\n steps: {\n \"open-design-designer\": {\n action: 'open-form-template-designer',\n },\n },\n};\n\n\n","import { AXPQueryRequest } from '@acorex/platform/common';\nimport { AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport { AXMFormTemplateManagementTemplateEntityService } from '../entities/template';\nimport { inject } from '@angular/core';\nimport { AXPTemplateWidgetItem, AXPTemplateWidgetListItem, AXPTemplateWidgetProvider } from '../components/widgets/template';\nimport { get } from 'lodash-es';\n\nexport class AXPTemplateWidgetProviderImpl implements AXPTemplateWidgetProvider {\n private service = inject(AXMFormTemplateManagementTemplateEntityService)\n\n async items(query?: AXPQueryRequest): Promise<AXPTemplateWidgetListItem[]> {\n const result = ((await this.service.query(query)).items).map(c => ({\n id: c.id,\n title: c.title,\n group: {\n name: c.categoryId,\n order: 2,\n title: get(c, 'category.title') ?? 'Custom'\n },\n description: c.description\n } as AXPTemplateWidgetListItem))\n return result;\n }\n\n async get(id: string): Promise<AXPTemplateWidgetItem | null> {\n const item = await this.service.getOne(id)\n if (item) {\n const document = JSON.parse(item.template) as AXPWidgetNode;\n const page = document?.children?.[0];\n\n return {\n id: item.id as string,\n nodes: page?.children ?? [],\n title: item.title,\n }\n }\n else {\n throw Error(\"Invalid Id\");\n }\n }\n}\n","import { AXPopupService } from '@acorex/components/popup';\nimport { AXPQueryRequest } from '@acorex/platform/common';\nimport { AXPWidgetGroup, AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport { inject, Injectable, InjectionToken } from '@angular/core';\nimport { sortBy } from 'lodash-es';\n\n\nexport interface AXPTemplateWidgetListItem {\n id: string,\n title: string,\n description?: string,\n icon?: string,\n group: AXPWidgetGroup,\n}\n\nexport interface AXPTemplateWidgetItem {\n id: string,\n title: string,\n nodes: AXPWidgetNode[],\n}\n\n\n\nexport interface AXPTemplateWidgetProvider {\n items(query?: AXPQueryRequest): Promise<AXPTemplateWidgetListItem[]>;\n get(id: string): Promise<AXPTemplateWidgetItem | null>;\n}\n\nexport const AXP_TEMPLATE_WIDGET_PROVIDER = new InjectionToken<AXPTemplateWidgetProvider[]>('AXP_TEMPLATE_WIDGET_PROVIDER');\n\n\n@Injectable({ providedIn: 'root' })\nexport class AXPTemplateWidgetProviderService implements AXPTemplateWidgetProvider {\n\n private popupService = inject(AXPopupService);\n\n private providers = inject(AXP_TEMPLATE_WIDGET_PROVIDER, { optional: true });\n\n async items(query?: AXPQueryRequest): Promise<AXPTemplateWidgetListItem[]> {\n if (Array.isArray(this.providers)) {\n const result: AXPTemplateWidgetListItem[] = []\n for (const provider of this.providers) {\n const items = await provider.items(query);\n if (items) {\n result.push(...items);\n }\n }\n return result;\n }\n else {\n return [];\n }\n }\n\n async get(id: string): Promise<AXPTemplateWidgetItem | null> {\n if (Array.isArray(this.providers)) {\n for (const provider of this.providers) {\n const node = await provider.get(id);\n if (node) {\n return node;\n }\n }\n }\n return null;\n }\n\n async chooseTemplate(): Promise<AXPTemplateWidgetListItem | null> {\n const com = await import('./template-picker.component').then(\n (c) => c.AXPTemplateWidgetPickerComponent\n );\n const widgets = await this.items({\n skip: 0,\n take: 100,\n filter: {\n field: 'type.id',\n value: 20,\n operator: {\n type: 'equal',\n }\n }\n });\n const result = await this.popupService.open(com, {\n title: 'Widget Template Gallery',\n size: 'md',\n closeButton: true,\n data: {\n widgets: sortBy(widgets, (c) => c.title),\n },\n });\n if (result.data) {\n const selected = result.data?.widgets as AXPTemplateWidgetListItem[];\n return selected[0];\n }\n return null\n }\n}\n","import { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPLayoutBuilderModule, AXPWidgetComponent, AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, signal } from '@angular/core';\nimport { get } from 'lodash-es';\nimport { AXPTemplateWidgetProviderService } from '../template-picker/template.provider';\n\n@Component({\n selector: 'axp-template-widget-view',\n template: `\n @for (node of nodes(); track $index) {\n <ng-container axp-widget-renderer\n [node]=\"node\"\n [parentNode]=\"this\"\n [mode]=\"this.mode\"\n >\n </ng-container>\n }\n @empty {\n <span class=\"ax-underline ax-decoration-dotted ax-underline-offset-8 ax-text-gray-400\">\n {{ 'empty-template' | translate : { scope: 'form-template-management' } | async }}\n </span>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule, AXTranslationModule]\n})\nexport class AXPTemplateWidgetViewComponent extends AXPWidgetComponent<any> {\n private metaKey = '__meta__';\n private templateProvider = inject(AXPTemplateWidgetProviderService);\n protected templateId = computed<string>(() => this.options()['templateId'] as string);\n protected nodes = signal<AXPWidgetNode[]>([]);\n\n constructor() {\n super();\n //\n effect(\n async () => {\n this.nodes.set([]);\n const value = this.getValue();\n const templateId = get(value, `${this.metaKey}.templateId`) ?? this.templateId();\n if (templateId) {\n const item = await this.templateProvider.get(templateId);\n if (item) {\n this.nodes.set(item.nodes);\n }\n }\n }\n );\n }\n}\n","import { AXPWidgetComponent, AXPLayoutBuilderModule, AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport {\n AXPDesignerAddWidgetMiniButtonComponent,\n AXPDesignerService,\n AXPDesignerWidgetComponent,\n AXPWidgetDesignerRendererDirective,\n} from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, HostBinding, inject, signal } from '@angular/core';\nimport { AXPTemplateWidgetProviderService } from '../template-picker/template.provider';\nimport { AXMenuItem } from '@acorex/components/menu';\n\nexport const AXP_DESIGNER_TEMPLATE_WIDGET_CHOOSE_MENU: AXMenuItem = {\n text: 'Choose Template',\n name: 'choose',\n icon: 'fa-solid fa-folder-open',\n};\n\n\n@Component({\n selector: 'axp-template-widget-designer',\n template: `\n @if(nodes().length) {\n <div class=\"ax-relative ax-block ax-w-full ax-pointer-events-none\">\n @for (node of nodes(); track $index) {\n <ng-container axp-widget-designer-renderer [locked]=\"true\" [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n <div\n class=\"ax-absolute ax-top-0 ax-bottom-0 ax-left-0 ax-right-0 ax-bg-blue-400 ax-opacity-30 ax-flex ax-justify-center ax-items-center ax-z-[400]\"\n >\n <span class=\"ax-capitalize ax-font-semibold ax-text-primary-700\"> {{ title() }}</span>\n </div>\n </div>\n } @else {\n <axp-designer-add-widget-mini-button\n class=\"ax-flex-1 ax-self-center ax-place-self-end\"\n (onClick)=\"handleChooseWidget()\"\n >\n </axp-designer-add-widget-mini-button>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXPLayoutBuilderModule,\n AXPWidgetDesignerRendererDirective,\n AXPDesignerAddWidgetMiniButtonComponent,\n ],\n providers: [\n {\n provide: AXPTemplateWidgetDesignerComponent,\n useExisting: AXPWidgetComponent,\n },\n ]\n})\nexport class AXPTemplateWidgetDesignerComponent extends AXPWidgetComponent<any> implements AXPDesignerWidgetComponent {\n private templateProvider = inject(AXPTemplateWidgetProviderService);\n private designerService = inject(AXPDesignerService);\n\n protected templateId = computed<string>(() => this.options()['templateId'] as string);\n protected nodes = signal<AXPWidgetNode[]>([]);\n protected title = signal<string | null>(null);\n\n constructor() {\n super();\n //\n effect(\n async () => {\n this.nodes.set([]);\n if (this.templateId()) {\n const item = await this.templateProvider.get(this.templateId());\n if (item && item.nodes?.length > 0) {\n this.title.set(item.title);\n this.nodes.set(item.nodes);\n }\n }\n }\n );\n }\n\n\n // override async ngOnInit() {\n // super.ngOnInit();\n // if (!this.templateId()) {\n // this.handleChooseWidget();\n // }\n // }\n\n\n async handleChooseWidget() {\n const result = await this.templateProvider.chooseTemplate();\n if (result) {\n this.designerService.update({\n mode: 'update',\n values: { options: { templateId: result.id } },\n widget: this.node,\n });\n }\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-w-full`] = true;\n cls[`ax-widget-outline`] = true;\n //\n cls[`ax-block`] = true;\n return cls;\n }\n\n onContextMenu(context: { items: AXMenuItem[]; }): void {\n const items: AXMenuItem[] = [\n AXP_DESIGNER_TEMPLATE_WIDGET_CHOOSE_MENU\n ]\n items[items.length - 1].break = true;\n context.items.unshift(...items)\n }\n\n async executeCommand(command: { name: string; data?: any; handled: boolean; }): Promise<void> {\n switch (command.name) {\n case AXP_DESIGNER_TEMPLATE_WIDGET_CHOOSE_MENU.name:\n await this.handleChooseWidget();\n break;\n }\n return Promise.resolve();\n }\n}\n","import { AXP_WIDGETS_ADVANCE_GROUP, AXPWidgetConfig, createStringProperty } from '@acorex/platform/layout/builder';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_DATA_PATH_PROPERTY, AXP_NAME_PROPERTY } from '@acorex/platform/widgets';\n\nexport const AXPTemplateWidget: AXPWidgetConfig<AXPBlockWidgetConfigType> = {\n name: 'template',\n title: 'Template',\n type: 'container',\n icon: 'fa-solid fa-file-invoice',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n visible: true,\n options: {\n canInsert: false,\n },\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n createStringProperty({\n name: 'options.templateId',\n title: 'Template',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n visible: false,\n }),\n ],\n components: {\n view: {\n component: () => import('./template-widget-view.component').then((c) => c.AXPTemplateWidgetViewComponent),\n },\n edit: {\n component: () => import('./template-widget-edit.component').then((c) => c.AXPTemplateWidgetEditComponent),\n },\n print: {\n component: () => import('./template-widget-view.component').then((c) => c.AXPTemplateWidgetViewComponent),\n },\n designer: {\n component: () => import('./template-widget-designer.component').then((c) => c.AXPTemplateWidgetDesignerComponent),\n },\n },\n};\n\nexport type AXPBlockWidgetConfigType = {\n type: 'container';\n};\n\n","import { AXPSettingDefinitionProvider, AXPSettingDefinitionProviderContext } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\n\nexport class AXMSettingProvider implements AXPSettingDefinitionProvider {\n async provide(context: AXPSettingDefinitionProviderContext): Promise<void> {\n context\n // Add Form Template Group\n .addGroup('form-template', 'Form Template', 'Settings related to form templates.', 'fa-solid fa-file-invoice')\n\n // Start Interface Section\n .addSection('interface', 'UI Interface', 'Customize the user interface for forms.')\n .addSetting({\n key: 'history-panel',\n title: 'Show History Panel',\n scope: 'U',\n isInherited: true,\n defaultValue: false,\n widget: {\n type: AXPWidgetsCatalog.toggle,\n },\n description: 'Enable or disable the history panel for forms.',\n validationRules: [\n {\n rule: 'required',\n },\n ],\n })\n .endSection()\n\n // Start Saving Section\n .addSection('saving', 'Saving', 'Settings related to saving form data.')\n .addSetting({\n key: 'auto-save',\n title: 'Auto Save',\n scope: 'U',\n isInherited: true,\n defaultValue: false,\n widget: {\n type: AXPWidgetsCatalog.toggle,\n },\n description: 'Automatically save form data at regular intervals.',\n })\n .addSetting({\n key: 'auto-save-interval',\n title: 'Auto Save Interval',\n scope: 'U',\n isInherited: true,\n defaultValue: 1,\n widget: {\n type: AXPWidgetsCatalog.number,\n options: {\n visibility: `{{ context.eval('auto-save') }}`,\n hasClearButton: false,\n minValue: 1,\n maxValue: 60,\n }\n },\n\n description: 'Set the time interval (in minites) for auto-saving form data.',\n })\n .endSection()\n\n // End Form Template Group\n .endGroup();\n }\n}\n","import { AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER, AXP_SETTING_VALUE_PROVIDER } from '@acorex/platform/common';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\nimport { NgModule } from '@angular/core';\nimport { ROUTES, Routes } from '@angular/router';\nimport { AXMFormTemplateManagementCategoryEntityModule } from './entities/category';\nimport { AXMFormTemplateManagementTemplateEntityModule } from './entities/template';\nimport { AXMFormTemplateManagementModuleEntityProvider } from './entity.provider';\nimport { AXMMenuProvider } from './menu.provider';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPTemplateDesignerWidget } from './components/widgets/template-designer';\nimport { AXPWorkflowModule } from '@acorex/platform/workflow';\nimport { AXMCreateFormTemplateWorkflow } from './workflows/create-template.workflow';\nimport { AXPDesignerConnector } from '@acorex/platform/layout/designer';\nimport { AXPDesignerConnectorImpl } from './services/designer-connector.service';\nimport { AXMOpenFormTemplateDesignerAction, AXMDesignFormTemplateWorkflow } from './workflows/design-template.workflow';\nimport { AXPTemplateWidgetProviderImpl } from './services/template.provider';\nimport { AXP_TEMPLATE_WIDGET_PROVIDER, AXPTemplateWidget } from './components/widgets/template';\nimport { AXMSettingProvider } from './setting.provider';\n\n\n\nfunction routesFacory() {\n const routes: Routes = [\n {\n path: 'forms',\n children: [\n {\n path: 'designer',\n loadComponent: () =>\n import('./pages/designer/designer.page').then((c) => c.AXMFormTemplateManagementModuleDesignerPage),\n },\n {\n path: 'preview',\n loadComponent: () =>\n import('@acorex/platform/layout/designer').then((c) => c.AXPLayoutDesignerPreviewComponent),\n },\n {\n path: 'viewer',\n loadComponent: () =>\n import('@acorex/platform/layout/designer').then((c) => c.AXPLayoutDesignerPreviewViewerComponent),\n },\n ],\n },\n ]\n return routes;\n}\n\n@NgModule({\n imports: [\n AXPWidgetsModule,\n AXMFormTemplateManagementCategoryEntityModule,\n AXMFormTemplateManagementTemplateEntityModule,\n AXPLayoutBuilderModule.forChild({\n widgets: [\n AXPTemplateDesignerWidget,\n AXPTemplateWidget\n ]\n }),\n AXPWorkflowModule.forChild({\n actions: {\n 'open-form-template-designer': AXMOpenFormTemplateDesignerAction\n },\n workflows: {\n 'create-form-template': AXMCreateFormTemplateWorkflow,\n 'design-form-template': AXMDesignFormTemplateWorkflow\n }\n })\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFacory,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMFormTemplateManagementModuleEntityProvider,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXPDesignerConnector,\n useClass: AXPDesignerConnectorImpl\n },\n {\n provide: AXP_TEMPLATE_WIDGET_PROVIDER,\n useClass: AXPTemplateWidgetProviderImpl,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXMSettingProvider,\n multi: true,\n }\n ],\n})\nexport class AXMFormTemplateManagementModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-modules-form-template-management.mjs","sources":["../../../../libs/modules/form-template-management/src/lib/components/widgets/template-picker/template.provider.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-widget-view.component.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-widget-designer.component.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-widget.config.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template-designer/template-designer-widget-view.component.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template-designer/template-designer-widget.config.ts","../../../../libs/modules/form-template-management/src/lib/const.ts","../../../../libs/modules/form-template-management/src/lib/entities/category/category.service.ts","../../../../libs/modules/form-template-management/src/lib/entities/category/category.module.ts","../../../../libs/modules/form-template-management/src/lib/entities/template/template.service.ts","../../../../libs/modules/form-template-management/src/lib/entities/template/template.module.ts","../../../../libs/modules/form-template-management/src/lib/entities/template/template.types.ts","../../../../libs/modules/form-template-management/src/lib/entity.provider.ts","../../../../libs/modules/form-template-management/src/lib/menu.provider.ts","../../../../libs/modules/form-template-management/src/lib/search.provider.ts","../../../../libs/modules/form-template-management/src/lib/services/designer-connector.service.ts","../../../../libs/modules/form-template-management/src/lib/services/template.provider.ts","../../../../libs/modules/form-template-management/src/lib/setting.provider.ts","../../../../libs/modules/form-template-management/src/lib/workflows/create-template.workflow.ts","../../../../libs/modules/form-template-management/src/lib/workflows/design-template.workflow.ts","../../../../libs/modules/form-template-management/src/lib/form-template-management.module.ts","../../../../libs/modules/form-template-management/src/acorex-modules-form-template-management.ts"],"sourcesContent":["import { AXPopupService } from '@acorex/components/popup';\nimport { AXPQueryRequest } from '@acorex/platform/common';\nimport { AXPWidgetGroup, AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport { inject, Injectable, InjectionToken } from '@angular/core';\nimport { sortBy } from 'lodash-es';\n\n\nexport interface AXPTemplateWidgetListItem {\n id: string,\n title: string,\n description?: string,\n icon?: string,\n group: AXPWidgetGroup,\n}\n\nexport interface AXPTemplateWidgetItem {\n id: string,\n title: string,\n nodes: AXPWidgetNode[],\n}\n\n\n\nexport interface AXPTemplateWidgetProvider {\n items(query?: AXPQueryRequest): Promise<AXPTemplateWidgetListItem[]>;\n get(id: string): Promise<AXPTemplateWidgetItem | null>;\n}\n\nexport const AXP_TEMPLATE_WIDGET_PROVIDER = new InjectionToken<AXPTemplateWidgetProvider[]>('AXP_TEMPLATE_WIDGET_PROVIDER');\n\n\n@Injectable({ providedIn: 'root' })\nexport class AXPTemplateWidgetProviderService implements AXPTemplateWidgetProvider {\n\n private popupService = inject(AXPopupService);\n\n private providers = inject(AXP_TEMPLATE_WIDGET_PROVIDER, { optional: true });\n\n async items(query?: AXPQueryRequest): Promise<AXPTemplateWidgetListItem[]> {\n if (Array.isArray(this.providers)) {\n const result: AXPTemplateWidgetListItem[] = []\n for (const provider of this.providers) {\n const items = await provider.items(query);\n if (items) {\n result.push(...items);\n }\n }\n return result;\n }\n else {\n return [];\n }\n }\n\n async get(id: string): Promise<AXPTemplateWidgetItem | null> {\n if (Array.isArray(this.providers)) {\n for (const provider of this.providers) {\n const node = await provider.get(id);\n if (node) {\n return node;\n }\n }\n }\n return null;\n }\n\n async chooseTemplate(): Promise<AXPTemplateWidgetListItem | null> {\n const com = await import('./template-picker.component').then(\n (c) => c.AXPTemplateWidgetPickerComponent\n );\n const widgets = await this.items({\n skip: 0,\n take: 100,\n filter: {\n field: 'type.id',\n value: 20,\n operator: {\n type: 'equal',\n }\n }\n });\n const result = await this.popupService.open(com, {\n title: 'Widget Template Gallery',\n size: 'md',\n closeButton: true,\n data: {\n widgets: sortBy(widgets, (c) => c.title),\n },\n });\n if (result.data) {\n const selected = result.data?.widgets as AXPTemplateWidgetListItem[];\n return selected[0];\n }\n return null\n }\n}\n","import { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPLayoutBuilderModule, AXPWidgetComponent, AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, signal } from '@angular/core';\nimport { get } from 'lodash-es';\nimport { AXPTemplateWidgetProviderService } from '../template-picker/template.provider';\n\n@Component({\n selector: 'axp-template-widget-view',\n template: `\n @for (node of nodes(); track $index) {\n <ng-container axp-widget-renderer\n [node]=\"node\"\n [parentNode]=\"this\"\n [mode]=\"this.mode\"\n >\n </ng-container>\n }\n @empty {\n <span class=\"ax-underline ax-decoration-dotted ax-underline-offset-8 ax-text-gray-400\">\n {{ 'empty-template' | translate : { scope: 'form-template-management' } | async }}\n </span>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule, AXTranslationModule]\n})\nexport class AXPTemplateWidgetViewComponent extends AXPWidgetComponent<any> {\n private metaKey = '__meta__';\n private templateProvider = inject(AXPTemplateWidgetProviderService);\n protected templateId = computed<string>(() => this.options()['templateId'] as string);\n protected nodes = signal<AXPWidgetNode[]>([]);\n\n constructor() {\n super();\n //\n effect(\n async () => {\n this.nodes.set([]);\n const value = this.getValue();\n const templateId = get(value, `${this.metaKey}.templateId`) ?? this.templateId();\n if (templateId) {\n const item = await this.templateProvider.get(templateId);\n if (item) {\n this.nodes.set(item.nodes);\n }\n }\n }\n );\n }\n}\n","import { AXPWidgetComponent, AXPLayoutBuilderModule, AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport {\n AXPDesignerAddWidgetMiniButtonComponent,\n AXPDesignerService,\n AXPDesignerWidgetComponent,\n AXPWidgetDesignerRendererDirective,\n} from '@acorex/platform/layout/designer';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, HostBinding, inject, signal } from '@angular/core';\nimport { AXPTemplateWidgetProviderService } from '../template-picker/template.provider';\nimport { AXMenuItem } from '@acorex/components/menu';\n\nexport const AXP_DESIGNER_TEMPLATE_WIDGET_CHOOSE_MENU: AXMenuItem = {\n text: 'Choose Template',\n name: 'choose',\n icon: 'fa-solid fa-folder-open',\n};\n\n\n@Component({\n selector: 'axp-template-widget-designer',\n template: `\n @if(nodes().length) {\n <div class=\"ax-relative ax-block ax-w-full ax-pointer-events-none\">\n @for (node of nodes(); track $index) {\n <ng-container axp-widget-designer-renderer [locked]=\"true\" [node]=\"node\" [parentNode]=\"this\" [mode]=\"this.mode\"> </ng-container>\n }\n <div\n class=\"ax-absolute ax-top-0 ax-bottom-0 ax-left-0 ax-right-0 ax-bg-blue-400 ax-opacity-30 ax-flex ax-justify-center ax-items-center ax-z-[400]\"\n >\n <span class=\"ax-capitalize ax-font-semibold ax-text-primary-700\"> {{ title() }}</span>\n </div>\n </div>\n } @else {\n <axp-designer-add-widget-mini-button\n class=\"ax-flex-1 ax-self-center ax-place-self-end\"\n (onClick)=\"handleChooseWidget()\"\n >\n </axp-designer-add-widget-mini-button>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n AXPLayoutBuilderModule,\n AXPWidgetDesignerRendererDirective,\n AXPDesignerAddWidgetMiniButtonComponent,\n ],\n providers: [\n {\n provide: AXPTemplateWidgetDesignerComponent,\n useExisting: AXPWidgetComponent,\n },\n ]\n})\nexport class AXPTemplateWidgetDesignerComponent extends AXPWidgetComponent<any> implements AXPDesignerWidgetComponent {\n private templateProvider = inject(AXPTemplateWidgetProviderService);\n private designerService = inject(AXPDesignerService);\n\n protected templateId = computed<string>(() => this.options()['templateId'] as string);\n protected nodes = signal<AXPWidgetNode[]>([]);\n protected title = signal<string | null>(null);\n\n constructor() {\n super();\n //\n effect(\n async () => {\n this.nodes.set([]);\n if (this.templateId()) {\n const item = await this.templateProvider.get(this.templateId());\n if (item && item.nodes?.length > 0) {\n this.title.set(item.title);\n this.nodes.set(item.nodes);\n }\n }\n }\n );\n }\n\n\n // override async ngOnInit() {\n // super.ngOnInit();\n // if (!this.templateId()) {\n // this.handleChooseWidget();\n // }\n // }\n\n\n async handleChooseWidget() {\n const result = await this.templateProvider.chooseTemplate();\n if (result) {\n this.designerService.update({\n mode: 'update',\n values: { options: { templateId: result.id } },\n widget: this.node,\n });\n }\n }\n\n @HostBinding('class')\n private get __class(): string {\n const cls: any = {};\n //\n cls[`ax-w-full`] = true;\n cls[`ax-widget-outline`] = true;\n //\n cls[`ax-block`] = true;\n return cls;\n }\n\n onContextMenu(context: { items: AXMenuItem[]; }): void {\n const items: AXMenuItem[] = [\n AXP_DESIGNER_TEMPLATE_WIDGET_CHOOSE_MENU\n ]\n items[items.length - 1].break = true;\n context.items.unshift(...items)\n }\n\n async executeCommand(command: { name: string; data?: any; handled: boolean; }): Promise<void> {\n switch (command.name) {\n case AXP_DESIGNER_TEMPLATE_WIDGET_CHOOSE_MENU.name:\n await this.handleChooseWidget();\n break;\n }\n return Promise.resolve();\n }\n}\n","import { AXP_WIDGETS_ADVANCE_GROUP, AXPWidgetConfig, createStringProperty } from '@acorex/platform/layout/builder';\nimport { AXP_BEHAVIOR_PROPERTY_GROUP, AXP_DATA_PATH_PROPERTY, AXP_NAME_PROPERTY } from '@acorex/platform/widgets';\n\nexport const AXPTemplateWidget: AXPWidgetConfig<AXPBlockWidgetConfigType> = {\n name: 'template',\n title: 'Template',\n type: 'container',\n icon: 'fa-solid fa-file-invoice',\n group: AXP_WIDGETS_ADVANCE_GROUP,\n visible: true,\n options: {\n canInsert: false,\n },\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n createStringProperty({\n name: 'options.templateId',\n title: 'Template',\n group: AXP_BEHAVIOR_PROPERTY_GROUP,\n visible: false,\n }),\n ],\n components: {\n view: {\n component: () => import('./template-widget-view.component').then((c) => c.AXPTemplateWidgetViewComponent),\n },\n edit: {\n component: () => import('./template-widget-edit.component').then((c) => c.AXPTemplateWidgetEditComponent),\n },\n print: {\n component: () => import('./template-widget-view.component').then((c) => c.AXPTemplateWidgetViewComponent),\n },\n designer: {\n component: () => import('./template-widget-designer.component').then((c) => c.AXPTemplateWidgetDesignerComponent),\n },\n },\n};\n\nexport type AXPBlockWidgetConfigType = {\n type: 'container';\n};\n\n","import { AXButtonModule } from '@acorex/components/button';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\n\n@Component({\n template: `\n <span\n class=\"ax-underline ax-decoration-dotted ax-underline-offset-8 hover:ax-text-primary-500 ax-cursor-pointer\"\n (click)=\"handleClick()\"\n >\n {{ 't(\"edit-template\",{ scope:\"form-template-management\" })' | translate | async }}\n </span>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, AXTranslationModule]\n})\nexport class AXPTemplateDesignerWidgetViewComponent extends AXPWidgetComponent<any> {\n private workflow = inject(AXPWorkflowService);\n\n protected async handleClick() {\n await this.workflow.execute('design-form-template', { data: { id: this.extractValue('id') } });\n }\n}\n","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig } from '@acorex/platform/layout/builder';\nimport { AXP_DATA_PATH_PROPERTY, AXP_NAME_PROPERTY } from '@acorex/platform/widgets';\n\nexport const AXPTemplateDesignerWidget: AXPWidgetConfig = {\n name: \"template-designer\",\n title: \"Template Designer\",\n icon: \"fa-solid fa-square\",\n type: 'editor',\n group: AXP_WIDGETS_LAYOUT_GROUP,\n visible: false,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n ],\n components: {\n view: {\n component: () => import('./template-designer-widget-view.component').then((c) => c.AXPTemplateDesignerWidgetViewComponent),\n },\n edit: {\n component: () => import('./template-designer-widget-view.component').then((c) => c.AXPTemplateDesignerWidgetViewComponent),\n }\n }\n}\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n templateDesigner: 'template-designer';\n }\n}","export const AXMFormTemplateManagementModuleConst = {\n moduleName: 'FormTemplateManagement',\n moduleRoute: 'form-template-management',\n i18n: 'form-template-management',\n categoryEntity: 'Category',\n templateEntity: 'Template',\n};\n","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { AXMFormTemplateManagementModuleConst } from '../../const';\nimport { AXMFormTemplateManagementCategoryEntityModel } from './category.types';\n\nexport abstract class AXMFormTemplateManagementCategoryEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMFormTemplateManagementCategoryEntityModel\n> {}\n\n@Injectable()\nexport class AXMFormTemplateManagementCategoryEntityServiceImpl extends AXMFormTemplateManagementCategoryEntityService {\n constructor() {\n super(`${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.categoryEntity}`);\n }\n}\n","import { NgModule } from \"@angular/core\";\nimport { AXMFormTemplateManagementCategoryEntityService, AXMFormTemplateManagementCategoryEntityServiceImpl } from './category.service';\n\n@NgModule({\nimports: [],\nexports: [],\ndeclarations: [],\n providers: [\n {\n provide: AXMFormTemplateManagementCategoryEntityService,\n useClass: AXMFormTemplateManagementCategoryEntityServiceImpl,\n },\n ],\n})\nexport class AXMFormTemplateManagementCategoryEntityModule {\n}\n ","import { AXMEntityCrudServiceImpl } from '@acorex/platform/common';\nimport { Injectable } from '@angular/core';\nimport { AXMFormTemplateManagementModuleConst } from '../../const';\nimport { AXMFormTemplateManagementTemplateEntityModel } from './template.types';\n\nexport abstract class AXMFormTemplateManagementTemplateEntityService extends AXMEntityCrudServiceImpl<\n string,\n AXMFormTemplateManagementTemplateEntityModel\n> { }\n\n@Injectable()\nexport class AXMFormTemplateManagementTemplateEntityServiceImpl extends AXMFormTemplateManagementTemplateEntityService {\n constructor() {\n super(`${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.templateEntity}`);\n }\n}\n","import { NgModule } from \"@angular/core\";\nimport { AXMFormTemplateManagementTemplateEntityService, AXMFormTemplateManagementTemplateEntityServiceImpl } from './template.service';\n\n@NgModule({\nimports: [],\nexports: [],\ndeclarations: [],\n providers: [\n {\n provide: AXMFormTemplateManagementTemplateEntityService,\n useClass: AXMFormTemplateManagementTemplateEntityServiceImpl,\n },\n ],\n})\nexport class AXMFormTemplateManagementTemplateEntityModule {\n}\n ","import { AXPEntityModel } from '@acorex/platform/common';\n\nexport interface AXMFormTemplateManagementTemplateEntityModel extends AXPEntityModel<string> {\n name: string;\n title: string;\n template: string;\n description?: string;\n type: number,\n categoryId: string\n}\n\n\nexport const AXMFormTemplateTypes = {\n Form: { id: 10, title: 'Form Template' },\n Widget: { id: 20, title: 'Widget Template' },\n} ","import { AXPEntity } from '@acorex/platform/common';\nimport {\n AXPEntityDefinitionLoader,\n AXPEntityDefinitionPreloader,\n AXPEntityPreloadEntity,\n} from '@acorex/platform/layout/entity';\nimport { Injectable, Injector, inject } from '@angular/core';\nimport { AXMFormTemplateManagementModuleConst } from './const';\n\n@Injectable()\nexport class AXMFormTemplateManagementModuleEntityProvider\n implements AXPEntityDefinitionLoader, AXPEntityDefinitionPreloader\n{\n public preload(): AXPEntityPreloadEntity[] {\n const { categoryEntity, templateEntity } = AXMFormTemplateManagementModuleConst;\n const module = AXMFormTemplateManagementModuleConst.moduleName;\n return [categoryEntity, templateEntity].map((entity) => ({ module, entity }));\n }\n\n private injector = inject(Injector);\n\n async get(moduleName: string, entityName: string): Promise<AXPEntity | null> {\n if (moduleName == AXMFormTemplateManagementModuleConst.moduleName) {\n switch (entityName) {\n case AXMFormTemplateManagementModuleConst.categoryEntity:\n return (await import('./entities/category/category.entity')).factory(this.injector);\n case AXMFormTemplateManagementModuleConst.templateEntity:\n return (await import('./entities/template/template.entity')).factory(this.injector);\n }\n }\n return null;\n }\n}\n","import { AXPMenuProvider, AXPMenuProviderContext } from '@acorex/platform/common';\nimport { AXPEntityService } from '@acorex/platform/layout/entity';\nimport { inject } from '@angular/core';\nimport { AXMFormTemplateManagementModuleConst } from './const';\n\nexport class AXMMenuProvider implements AXPMenuProvider {\n private entityService = inject(AXPEntityService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const scope = AXMFormTemplateManagementModuleConst.i18n;\n const moduleName = AXMFormTemplateManagementModuleConst.moduleName;\n\n context.addItems([\n {\n priority: 9001,\n text: `t('module-name', {scope:\"${scope}\"})`,\n icon: 'fa-solid fa-file-invoice',\n children: [\n {\n text: `t(\"categories\", { scope: \"common\" })`,\n path: this.entityService.createPath(moduleName, AXMFormTemplateManagementModuleConst.categoryEntity),\n priority: 1,\n },\n {\n text: `t('templates', {scope:\"${scope}\"})`,\n path: this.entityService.createPath(moduleName, AXMFormTemplateManagementModuleConst.templateEntity),\n priority: 2,\n },\n ],\n },\n ]);\n }\n}\n","import { AXPCommandSearchProvider, AXPSearchResult } from '@acorex/platform/common';\nimport { AXMFormTemplateManagementModuleConst } from './const';\n\nexport class AXMFormTemplateManagementSearchProvider extends AXPCommandSearchProvider {\n commands: AXPSearchResult[] = [\n {\n name: 'command',\n title: 'Create New Form Template',\n icon: 'fa-solid fa-plus',\n data: {\n command: {\n name: 'create-entity',\n options: {\n entity: `${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.templateEntity}`,\n },\n },\n },\n },\n {\n name: 'command',\n title: 'Create form template category',\n icon: 'fa-solid fa-plus',\n data: {\n command: {\n name: 'create-entity',\n options: {\n entity: `${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.categoryEntity}`,\n },\n },\n },\n },\n ];\n}\n","import { AXPDesignerConnector, AXPDesignerContent } from '@acorex/platform/layout/designer';\nimport { inject, Injectable } from '@angular/core';\nimport { AXMFormTemplateManagementTemplateEntityService, AXMFormTemplateTypes } from '../entities/template';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\nimport { AXMFormTemplateManagementModuleConst } from '../const';\nimport { AXPDataGenerator } from '@acorex/platform/common';\nimport { AXMFormTemplateManagementCategoryEntityService } from '../entities/category';\n@Injectable() //avoid DEPRECATED: DI is instantiating a token \"AXPDesignerConnectorImpl\" that inherits its @Injectable decorator but does not provide one itself. This will become an error in a future version of Angular. Please add @Injectable() to the \"AXPDesignerConnectorImpl\" class.\n\nexport class AXPDesignerConnectorImpl extends AXPDesignerConnector {\n\n\n\n private workflow = inject(AXPWorkflowService);\n private templateEntityService = inject(AXMFormTemplateManagementTemplateEntityService)\n private categoryEntityService = inject(AXMFormTemplateManagementCategoryEntityService)\n\n //#region Save and load Widgets\n\n public override async save(id: string, content: AXPDesignerContent): Promise<boolean> {\n const item = await this.templateEntityService.getOne(id)\n if (item) {\n await this.templateEntityService.updateOne(id, { template: content.json })\n return true;\n }\n else {\n throw Error(\"Invalid Id\");\n }\n }\n\n public override async saveAs(content: AXPDesignerContent): Promise<boolean> {\n const result = await this.workflow.execute('create-entity', {\n redirect: false,\n entity: `${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.templateEntity}`,\n canCreateNewOne: false,\n data: {\n name: AXPDataGenerator.alphanumeric(10),\n type: AXMFormTemplateTypes.Widget,\n template: content.json,\n categoryId: (await this.categoryEntityService.query()).items[0]?.id\n }\n });\n return result.getOutput('result');\n }\n\n public override async load(id: string): Promise<string | null> {\n const item = await this.templateEntityService.getOne(id)\n if (item) {\n return item.template;\n }\n else {\n throw Error(\"Invalid Id\");\n }\n }\n\n //#endregion\n}\n","import { AXPQueryRequest } from '@acorex/platform/common';\nimport { AXPWidgetNode } from '@acorex/platform/layout/builder';\nimport { AXMFormTemplateManagementTemplateEntityService } from '../entities/template';\nimport { inject } from '@angular/core';\nimport { AXPTemplateWidgetItem, AXPTemplateWidgetListItem, AXPTemplateWidgetProvider } from '../components/widgets/template';\nimport { get } from 'lodash-es';\n\nexport class AXPTemplateWidgetProviderImpl implements AXPTemplateWidgetProvider {\n private service = inject(AXMFormTemplateManagementTemplateEntityService)\n\n async items(query?: AXPQueryRequest): Promise<AXPTemplateWidgetListItem[]> {\n const result = ((await this.service.query(query)).items).map(c => ({\n id: c.id,\n title: c.title,\n group: {\n name: c.categoryId,\n order: 2,\n title: get(c, 'category.title') ?? 'Custom'\n },\n description: c.description\n } as AXPTemplateWidgetListItem))\n return result;\n }\n\n async get(id: string): Promise<AXPTemplateWidgetItem | null> {\n const item = await this.service.getOne(id)\n if (item) {\n const document = JSON.parse(item.template) as AXPWidgetNode;\n const page = document?.children?.[0];\n\n return {\n id: item.id as string,\n nodes: page?.children ?? [],\n title: item.title,\n }\n }\n else {\n throw Error(\"Invalid Id\");\n }\n }\n}\n","import { AXPSettingDefinitionProvider, AXPSettingDefinitionProviderContext } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\n\nexport class AXMSettingProvider implements AXPSettingDefinitionProvider {\n async provide(context: AXPSettingDefinitionProviderContext): Promise<void> {\n context\n // Add Form Template Group\n .addGroup('form-template', 'Form Template', 'Settings related to form templates.', 'fa-solid fa-file-invoice')\n\n // Start Interface Section\n .addSection('interface', 'UI Interface', 'Customize the user interface for forms.')\n .addSetting({\n key: 'history-panel',\n title: 'Show History Panel',\n scope: 'U',\n isInherited: true,\n defaultValue: false,\n widget: {\n type: AXPWidgetsCatalog.toggle,\n },\n description: 'Enable or disable the history panel for forms.',\n validationRules: [\n {\n rule: 'required',\n },\n ],\n })\n .endSection()\n\n // Start Saving Section\n .addSection('saving', 'Saving', 'Settings related to saving form data.')\n .addSetting({\n key: 'auto-save',\n title: 'Auto Save',\n scope: 'U',\n isInherited: true,\n defaultValue: false,\n widget: {\n type: AXPWidgetsCatalog.toggle,\n },\n description: 'Automatically save form data at regular intervals.',\n })\n .addSetting({\n key: 'auto-save-interval',\n title: 'Auto Save Interval',\n scope: 'U',\n isInherited: true,\n defaultValue: 1,\n widget: {\n type: AXPWidgetsCatalog.number,\n options: {\n visibility: `{{ context.eval('auto-save') }}`,\n hasClearButton: false,\n minValue: 1,\n maxValue: 60,\n }\n },\n\n description: 'Set the time interval (in minites) for auto-saving form data.',\n })\n .endSection()\n\n // End Form Template Group\n .endGroup();\n }\n}\n","import { AXPWorkflow } from \"@acorex/platform/workflow\";\nimport { AXMFormTemplateManagementModuleConst } from \"../const\";\n\n\nexport const AXMCreateFormTemplateWorkflow: AXPWorkflow = {\n startStepId: 'create-form-template',\n steps: {\n \"create-form-template\": {\n action: 'start-workflow',\n input: {\n workflow: \"create-entity\",\n context: {\n redirect: true,\n entity: `${AXMFormTemplateManagementModuleConst.moduleName}.${AXMFormTemplateManagementModuleConst.templateEntity}`,\n }\n },\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"result\") == true' }],\n nextStepId: 'get-template-confirmaton',\n },\n ],\n },\n \"get-template-confirmaton\": {\n action: 'show-prompt-dialog',\n input: {\n title: 'Confirm Action',\n message: `Would you like to proceed with starting template design?`,\n type: 'primary',\n },\n nextSteps: [\n {\n conditions: [{ type: 'SINGLE', expression: 'context.getOutput(\"result\") == true' }],\n nextStepId: 'template-design',\n },\n ],\n },\n \"template-design\": {\n action: 'open-form-template-designer',\n },\n },\n};\n\n\n","import { AXPWorkflowNavigateAction } from \"@acorex/platform/common\";\nimport { AXPWorkflow, AXPWorkflowAction, AXPWorkflowContext } from \"@acorex/platform/workflow\";\nimport { inject, Injectable } from \"@angular/core\";\n\n@Injectable()\nexport class AXMOpenFormTemplateDesignerAction extends AXPWorkflowAction {\n\n private navigation = inject(AXPWorkflowNavigateAction);\n\n async execute(context: AXPWorkflowContext): Promise<void> {\n const { id } = context.getVariable('data');\n context.setVariable('payload', {\n commands: `forms/designer?id=${id}`,\n target: 'blank'\n });\n await this.navigation.execute(context);\n }\n}\n\nexport const AXMDesignFormTemplateWorkflow: AXPWorkflow = {\n startStepId: 'open-design-designer',\n steps: {\n \"open-design-designer\": {\n action: 'open-form-template-designer',\n },\n },\n};\n\n\n","import { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPDesignerConnector } from '@acorex/platform/layout/designer';\nimport { AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\nimport { AXPWorkflowModule } from '@acorex/platform/workflow';\nimport { NgModule } from '@angular/core';\nimport { ROUTES, Routes } from '@angular/router';\nimport { AXP_TEMPLATE_WIDGET_PROVIDER, AXPTemplateWidget } from './components/widgets/template';\nimport { AXPTemplateDesignerWidget } from './components/widgets/template-designer';\nimport { AXMFormTemplateManagementCategoryEntityModule } from './entities/category';\nimport { AXMFormTemplateManagementTemplateEntityModule } from './entities/template';\nimport { AXMFormTemplateManagementModuleEntityProvider } from './entity.provider';\nimport { AXMMenuProvider } from './menu.provider';\nimport { AXMFormTemplateManagementSearchProvider } from './search.provider';\nimport { AXPDesignerConnectorImpl } from './services/designer-connector.service';\nimport { AXPTemplateWidgetProviderImpl } from './services/template.provider';\nimport { AXMSettingProvider } from './setting.provider';\nimport { AXMCreateFormTemplateWorkflow } from './workflows/create-template.workflow';\nimport { AXMDesignFormTemplateWorkflow, AXMOpenFormTemplateDesignerAction } from './workflows/design-template.workflow';\n\nfunction routesFacory() {\n const routes: Routes = [\n {\n path: 'forms',\n children: [\n {\n path: 'designer',\n loadComponent: () =>\n import('./pages/designer/designer.page').then((c) => c.AXMFormTemplateManagementModuleDesignerPage),\n },\n {\n path: 'preview',\n loadComponent: () =>\n import('@acorex/platform/layout/designer').then((c) => c.AXPLayoutDesignerPreviewComponent),\n },\n {\n path: 'viewer',\n loadComponent: () =>\n import('@acorex/platform/layout/designer').then((c) => c.AXPLayoutDesignerPreviewViewerComponent),\n },\n ],\n },\n ];\n return routes;\n}\n\n@NgModule({\n imports: [\n AXPWidgetsModule,\n AXMFormTemplateManagementCategoryEntityModule,\n AXMFormTemplateManagementTemplateEntityModule,\n AXPLayoutBuilderModule.forChild({\n widgets: [AXPTemplateDesignerWidget, AXPTemplateWidget],\n }),\n AXPWorkflowModule.forChild({\n actions: {\n 'open-form-template-designer': AXMOpenFormTemplateDesignerAction,\n },\n workflows: {\n 'create-form-template': AXMCreateFormTemplateWorkflow,\n 'design-form-template': AXMDesignFormTemplateWorkflow,\n },\n }),\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFacory,\n },\n {\n provide: AXP_ENTITY_DEFINITION_LOADER,\n useClass: AXMFormTemplateManagementModuleEntityProvider,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n {\n provide: AXPDesignerConnector,\n useClass: AXPDesignerConnectorImpl,\n },\n {\n provide: AXP_TEMPLATE_WIDGET_PROVIDER,\n useClass: AXPTemplateWidgetProviderImpl,\n multi: true,\n },\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXMSettingProvider,\n multi: true,\n },\n {\n provide: AXP_SEARCH_PROVIDER,\n useClass: AXMFormTemplateManagementSearchProvider,\n multi: true,\n },\n // {\n // provide: AXP_SEARCH_DEFINITION_PROVIDER,\n // useClass: AXMFormTemplateManagementModuleSearchProvider,\n // multi: true,\n // },\n ],\n})\nexport class AXMFormTemplateManagementModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1"],"mappings":"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"}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import * as i1$2 from '@acorex/platform/common';
|
2
|
-
import { AXP_MENU_PROVIDER, AXPComponentSlotModule,
|
2
|
+
import { AXMEntityCrudServiceImpl, AXP_MENU_PROVIDER, AXPComponentSlotModule, AXPDataGenerator, AXPEntityQueryType, AXPEntityCommandScope, AXPEntityStorageService, AXPEntityDataProviderImpl } from '@acorex/platform/common';
|
3
3
|
import { AXPEntityService, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';
|
4
4
|
import * as i0 from '@angular/core';
|
5
|
-
import { input, output, computed, Component, ChangeDetectionStrategy, inject, signal, effect,
|
5
|
+
import { input, output, computed, Component, ChangeDetectionStrategy, inject, signal, effect, Injectable, Injector, NgModule } from '@angular/core';
|
6
6
|
import * as i4$1 from '@acorex/components/badge';
|
7
7
|
import { AXBadgeModule } from '@acorex/components/badge';
|
8
8
|
import * as i1$1 from '@acorex/components/button';
|
@@ -223,10 +223,44 @@ const AXMNotificationManagementModuleConst = {
|
|
223
223
|
notificationEntity: 'Notifications',
|
224
224
|
};
|
225
225
|
|
226
|
+
class AXMNotificationManagementChannelEntityService extends AXMEntityCrudServiceImpl {
|
227
|
+
}
|
228
|
+
class AXMNotificationManagementChannelEntityServiceImpl extends AXMNotificationManagementChannelEntityService {
|
229
|
+
constructor() {
|
230
|
+
super(`${AXMNotificationManagementModuleConst.moduleName}.${AXMNotificationManagementModuleConst.notificationChannelEntity}`);
|
231
|
+
}
|
232
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
233
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl }); }
|
234
|
+
}
|
235
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl, decorators: [{
|
236
|
+
type: Injectable
|
237
|
+
}], ctorParameters: () => [] });
|
238
|
+
|
239
|
+
class AXMNotificationManagementTemplateEntityService extends AXMEntityCrudServiceImpl {
|
240
|
+
}
|
241
|
+
class AXMNotificationManagementTemplateEntityServiceImpl extends AXMNotificationManagementTemplateEntityService {
|
242
|
+
constructor() {
|
243
|
+
super(`${AXMNotificationManagementModuleConst.moduleName}.${AXMNotificationManagementModuleConst.notificationTemplateEntity}`);
|
244
|
+
}
|
245
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
246
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl }); }
|
247
|
+
}
|
248
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl, decorators: [{
|
249
|
+
type: Injectable
|
250
|
+
}], ctorParameters: () => [] });
|
251
|
+
|
226
252
|
class AXMNotificationModuleEntityLoader {
|
227
253
|
constructor() {
|
228
254
|
this.injector = inject(Injector);
|
229
255
|
}
|
256
|
+
preload() {
|
257
|
+
const { notificationEntity, notificationTemplateEntity, notificationChannelEntity } = AXMNotificationManagementModuleConst;
|
258
|
+
const module = AXMNotificationManagementModuleConst.moduleName;
|
259
|
+
return [notificationEntity, notificationTemplateEntity, notificationChannelEntity].map((entity) => ({
|
260
|
+
module,
|
261
|
+
entity,
|
262
|
+
}));
|
263
|
+
}
|
230
264
|
async get(moduleName, entityName) {
|
231
265
|
return new Promise(async (resolve) => {
|
232
266
|
switch (entityName) {
|
@@ -318,6 +352,14 @@ class AXMNotificationManagementModule {
|
|
318
352
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
319
353
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementModule, imports: [i1$2.AXPComponentSlotModule] }); }
|
320
354
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementModule, providers: [
|
355
|
+
{
|
356
|
+
provide: AXMNotificationManagementTemplateEntityService,
|
357
|
+
useClass: AXMNotificationManagementTemplateEntityServiceImpl,
|
358
|
+
},
|
359
|
+
{
|
360
|
+
provide: AXMNotificationManagementChannelEntityService,
|
361
|
+
useClass: AXMNotificationManagementChannelEntityServiceImpl,
|
362
|
+
},
|
321
363
|
{
|
322
364
|
provide: AXP_ENTITY_DEFINITION_LOADER,
|
323
365
|
useClass: AXMNotificationModuleEntityLoader,
|
@@ -353,6 +395,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
353
395
|
exports: [],
|
354
396
|
declarations: [],
|
355
397
|
providers: [
|
398
|
+
{
|
399
|
+
provide: AXMNotificationManagementTemplateEntityService,
|
400
|
+
useClass: AXMNotificationManagementTemplateEntityServiceImpl,
|
401
|
+
},
|
402
|
+
{
|
403
|
+
provide: AXMNotificationManagementChannelEntityService,
|
404
|
+
useClass: AXMNotificationManagementChannelEntityServiceImpl,
|
405
|
+
},
|
356
406
|
{
|
357
407
|
provide: AXP_ENTITY_DEFINITION_LOADER,
|
358
408
|
useClass: AXMNotificationModuleEntityLoader,
|
@@ -367,19 +417,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
367
417
|
}]
|
368
418
|
}] });
|
369
419
|
|
370
|
-
class AXMNotificationManagementChannelEntityService extends AXMEntityCrudServiceImpl {
|
371
|
-
}
|
372
|
-
class AXMNotificationManagementChannelEntityServiceImpl extends AXMNotificationManagementChannelEntityService {
|
373
|
-
constructor() {
|
374
|
-
super(`${AXMNotificationManagementModuleConst.moduleName}.${AXMNotificationManagementModuleConst.notificationChannelEntity}`);
|
375
|
-
}
|
376
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
377
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl }); }
|
378
|
-
}
|
379
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementChannelEntityServiceImpl, decorators: [{
|
380
|
-
type: Injectable
|
381
|
-
}], ctorParameters: () => [] });
|
382
|
-
|
383
420
|
async function notificationChannelEntityFactory(injector) {
|
384
421
|
const dataService = injector.get(AXMNotificationManagementChannelEntityService);
|
385
422
|
const entityDef = {
|
@@ -1345,19 +1382,6 @@ var notification_entity = /*#__PURE__*/Object.freeze({
|
|
1345
1382
|
notificationEntityFactory: notificationEntityFactory
|
1346
1383
|
});
|
1347
1384
|
|
1348
|
-
class AXMNotificationManagementTemplateEntityService extends AXMEntityCrudServiceImpl {
|
1349
|
-
}
|
1350
|
-
class AXMNotificationManagementTemplateEntityServiceImpl extends AXMNotificationManagementTemplateEntityService {
|
1351
|
-
constructor() {
|
1352
|
-
super(`${AXMNotificationManagementModuleConst.moduleName}.${AXMNotificationManagementModuleConst.notificationTemplateEntity}`);
|
1353
|
-
}
|
1354
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
1355
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl }); }
|
1356
|
-
}
|
1357
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMNotificationManagementTemplateEntityServiceImpl, decorators: [{
|
1358
|
-
type: Injectable
|
1359
|
-
}], ctorParameters: () => [] });
|
1360
|
-
|
1361
1385
|
async function notificationTemplateEntityFactory(injector) {
|
1362
1386
|
const dataService = injector.get(AXMNotificationManagementTemplateEntityService);
|
1363
1387
|
const entityDef = {
|