@acorex/modules 19.0.1 → 19.1.0

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 (92) hide show
  1. package/application-management/lib/layouts/module-entity-detail-view/module-entity-detail-view.component.d.ts +1 -0
  2. package/auth/lib/menu.provider.d.ts +1 -0
  3. package/auth/lib/setting.provider.d.ts +4 -0
  4. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CtWwcZOU.mjs → acorex-modules-auth-acorex-modules-auth-D8WcF6Jp.mjs} +80 -9
  5. package/fesm2022/acorex-modules-auth-acorex-modules-auth-D8WcF6Jp.mjs.map +1 -0
  6. package/fesm2022/{acorex-modules-auth-app-chooser.component-BK4Hs5OP.mjs → acorex-modules-auth-app-chooser.component-0TpgRa-v.mjs} +2 -2
  7. package/fesm2022/{acorex-modules-auth-app-chooser.component-BK4Hs5OP.mjs.map → acorex-modules-auth-app-chooser.component-0TpgRa-v.mjs.map} +1 -1
  8. package/fesm2022/{acorex-modules-auth-login.module-Cvr3l9wl.mjs → acorex-modules-auth-login.module-CziF_sE7.mjs} +4 -4
  9. package/fesm2022/{acorex-modules-auth-login.module-Cvr3l9wl.mjs.map → acorex-modules-auth-login.module-CziF_sE7.mjs.map} +1 -1
  10. package/fesm2022/{acorex-modules-auth-master.layout-4jTF1Xhx.mjs → acorex-modules-auth-master.layout-Ds4LxKSf.mjs} +2 -2
  11. package/fesm2022/{acorex-modules-auth-master.layout-4jTF1Xhx.mjs.map → acorex-modules-auth-master.layout-Ds4LxKSf.mjs.map} +1 -1
  12. package/fesm2022/{acorex-modules-auth-password.component-DeCK_glZ.mjs → acorex-modules-auth-password.component-9TFb-AHn.mjs} +2 -2
  13. package/fesm2022/{acorex-modules-auth-password.component-DeCK_glZ.mjs.map → acorex-modules-auth-password.component-9TFb-AHn.mjs.map} +1 -1
  14. package/fesm2022/{acorex-modules-auth-password.component-C5soTmv9.mjs → acorex-modules-auth-password.component-BVVvl8So.mjs} +2 -2
  15. package/fesm2022/{acorex-modules-auth-password.component-C5soTmv9.mjs.map → acorex-modules-auth-password.component-BVVvl8So.mjs.map} +1 -1
  16. package/fesm2022/{acorex-modules-auth-routes-DqgtVe9G.mjs → acorex-modules-auth-routes-TdAn72Pa.mjs} +2 -2
  17. package/fesm2022/{acorex-modules-auth-routes-DqgtVe9G.mjs.map → acorex-modules-auth-routes-TdAn72Pa.mjs.map} +1 -1
  18. package/fesm2022/{acorex-modules-auth-two-factor.module-C99NYq3o.mjs → acorex-modules-auth-two-factor.module-BE2uEne7.mjs} +2 -2
  19. package/fesm2022/{acorex-modules-auth-two-factor.module-C99NYq3o.mjs.map → acorex-modules-auth-two-factor.module-BE2uEne7.mjs.map} +1 -1
  20. package/fesm2022/acorex-modules-auth.mjs +1 -1
  21. package/fesm2022/acorex-modules-conversation.mjs +1 -1
  22. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  23. package/fesm2022/{acorex-modules-form-template-management-template-picker.component-D_FkgF0W.mjs → acorex-modules-form-template-management-template-picker.component-BXOyKuAt.mjs} +3 -3
  24. package/fesm2022/acorex-modules-form-template-management-template-picker.component-BXOyKuAt.mjs.map +1 -0
  25. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-Bgx5YRBc.mjs → acorex-modules-form-template-management-template-widget-edit.component-DQw5qvib.mjs} +2 -2
  26. package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-Bgx5YRBc.mjs.map → acorex-modules-form-template-management-template-widget-edit.component-DQw5qvib.mjs.map} +1 -1
  27. package/fesm2022/acorex-modules-form-template-management.mjs +76 -11
  28. package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -1
  29. package/fesm2022/acorex-modules-notification-management.mjs +1 -0
  30. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  31. package/fesm2022/acorex-modules-platform-management-countries-CuJVdPLt.mjs +19 -0
  32. package/fesm2022/acorex-modules-platform-management-countries-CuJVdPLt.mjs.map +1 -0
  33. package/fesm2022/acorex-modules-platform-management-currencies-vgPg4Hj3.mjs +13 -0
  34. package/fesm2022/acorex-modules-platform-management-currencies-vgPg4Hj3.mjs.map +1 -0
  35. package/fesm2022/acorex-modules-platform-management-regional-formats-BSMV12dQ.mjs +14 -0
  36. package/fesm2022/acorex-modules-platform-management-regional-formats-BSMV12dQ.mjs.map +1 -0
  37. package/fesm2022/acorex-modules-platform-management.mjs +355 -1456
  38. package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
  39. package/fesm2022/acorex-modules-text-template-management.mjs +3 -305
  40. package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
  41. package/form-template-management/lib/components/widgets/template/template-widget-designer.component.d.ts +2 -2
  42. package/form-template-management/lib/menu.provider.d.ts +1 -1
  43. package/form-template-management/lib/setting.provider.d.ts +4 -0
  44. package/package.json +6 -10
  45. package/platform-management/lib/common/common.module.d.ts +5 -1
  46. package/platform-management/lib/common/index.d.ts +0 -2
  47. package/platform-management/lib/common/regional/data/countries.d.ts +2 -0
  48. package/platform-management/lib/common/regional/data/currencies.d.ts +2 -0
  49. package/platform-management/lib/common/regional/data/regional-formats.d.ts +2 -0
  50. package/platform-management/lib/common/regional/data/timezones.d.ts +2 -0
  51. package/{localization-management/lib/language → platform-management/lib/common/regional}/language-slot/language-slot.component.d.ts +8 -6
  52. package/platform-management/lib/common/regional/regional-store.service.d.ts +14 -0
  53. package/platform-management/lib/common/regional/regional.types.d.ts +37 -0
  54. package/platform-management/lib/common/regional/setting.keys.d.ts +13 -0
  55. package/platform-management/lib/common/regional/setting.provider.d.ts +17 -0
  56. package/fesm2022/acorex-modules-auth-acorex-modules-auth-CtWwcZOU.mjs.map +0 -1
  57. package/fesm2022/acorex-modules-form-template-management-template-picker.component-D_FkgF0W.mjs.map +0 -1
  58. package/fesm2022/acorex-modules-localization-management.mjs +0 -1023
  59. package/fesm2022/acorex-modules-localization-management.mjs.map +0 -1
  60. package/localization-management/README.md +0 -4
  61. package/localization-management/index.d.ts +0 -8
  62. package/localization-management/lib/const.d.ts +0 -8
  63. package/localization-management/lib/culture/culture.entity.d.ts +0 -3
  64. package/localization-management/lib/culture/culture.service.d.ts +0 -10
  65. package/localization-management/lib/culture/culture.types.d.ts +0 -12
  66. package/localization-management/lib/culture/index.d.ts +0 -3
  67. package/localization-management/lib/entity.loader.d.ts +0 -9
  68. package/localization-management/lib/language/index.d.ts +0 -3
  69. package/localization-management/lib/language/language.entity.d.ts +0 -3
  70. package/localization-management/lib/language/language.service.d.ts +0 -10
  71. package/localization-management/lib/language/language.types.d.ts +0 -5
  72. package/localization-management/lib/localization-management.module.d.ts +0 -10
  73. package/localization-management/lib/localization-management.source.d.ts +0 -3
  74. package/localization-management/lib/localization-store.service.d.ts +0 -7
  75. package/localization-management/lib/menu.provider.d.ts +0 -5
  76. package/localization-management/lib/time-zone/index.d.ts +0 -3
  77. package/localization-management/lib/time-zone/time-zone.entity.d.ts +0 -3
  78. package/localization-management/lib/time-zone/time-zone.service.d.ts +0 -10
  79. package/localization-management/lib/time-zone/time-zone.types.d.ts +0 -9
  80. package/platform-management/lib/common/country/country-datasource.provider.d.ts +0 -5
  81. package/platform-management/lib/common/country/country.entity.d.ts +0 -3
  82. package/platform-management/lib/common/country/country.service.d.ts +0 -10
  83. package/platform-management/lib/common/country/country.types.d.ts +0 -18
  84. package/platform-management/lib/common/country/index.d.ts +0 -3
  85. package/platform-management/lib/common/currency/currency.entity.d.ts +0 -3
  86. package/platform-management/lib/common/currency/currency.service.d.ts +0 -10
  87. package/platform-management/lib/common/currency/currency.types.d.ts +0 -6
  88. package/platform-management/lib/common/currency/index.d.ts +0 -3
  89. package/platform-management/lib/common/province/index.d.ts +0 -3
  90. package/platform-management/lib/common/province/province.entity.d.ts +0 -3
  91. package/platform-management/lib/common/province/province.service.d.ts +0 -10
  92. package/platform-management/lib/common/province/province.types.d.ts +0 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-modules-form-template-management-template-picker.component-BXOyKuAt.mjs","sources":["../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-picker/template-picker.component.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-picker/template-picker.component.html"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXCommonModule } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXTabsModule, AXTabStripChangedEvent } from '@acorex/components/tabs';\nimport { AXPSettingValueProviderService, AXPStickyDirective } from '@acorex/platform/common';\nimport { AXPWidgetGroup } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { Component, computed, inject, model, signal, ViewEncapsulation } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { orderBy } from 'lodash-es';\nimport { AXPTemplateWidgetListItem } from '../template.provider';\n\nexport interface AXPDisplayWidgetProvided extends AXPTemplateWidgetListItem {\n pinned: boolean;\n}\n\n@Component({\n imports: [\n CommonModule,\n AXCommonModule,\n FormsModule,\n AXButtonModule,\n AXDecoratorModule,\n AXTabsModule,\n AXSearchBoxModule,\n AXPStickyDirective,\n ],\n templateUrl: './template-picker.component.html',\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./template-picker.component.scss']\n})\nexport class AXPTemplateWidgetPickerComponent extends AXBasePageComponent {\n private settingService = inject(AXPSettingValueProviderService);\n\n private readonly pinnedSettingKey = 'forms:templates:picker:pinned';\n\n protected searchTerm = model('');\n\n // Signals\n private widgets: AXPDisplayWidgetProvided[] = [];\n private displayWidgets = signal<AXPDisplayWidgetProvided[]>([]);\n\n // Signal to track selected widgets\n protected selectedWidgets = signal<AXPDisplayWidgetProvided[]>([]);\n\n // Computed for filtered and ordered widget list\n private orderedList = computed(() => {\n const search = this.searchTerm().toLowerCase();\n const selectedTabName = this.selectedTab().name;\n\n return orderBy(\n this.displayWidgets().filter((w) => {\n const matchesTab = selectedTabName === 'all' || w.group.name === selectedTabName;\n const matchesSearch =\n !search || w.title.toLowerCase().includes(search) || w.description?.toLowerCase().includes(search);\n return matchesTab && matchesSearch;\n }),\n ['pinned', 'title'],\n ['desc', 'asc']\n );\n });\n\n // Pinned and regular lists\n protected pinnedList = computed(() => this.orderedList().filter((c) => c.pinned));\n protected regularList = computed(() => this.orderedList().filter((c) => !c.pinned));\n\n // Tabs for the widget groups\n protected tabs: AXPWidgetGroup[] = orderBy(\n [{ name: 'all', title: 'All', order: 0 }, ...this.widgets.map(c => c.group)],\n (c) => c.order\n );\n protected currentTabIndex = signal(0);\n protected selectedTab = computed(() => this.tabs[this.currentTabIndex()]);\n\n protected override async ngOnInit() {\n super.ngOnInit();\n const pinnedWidgets = (await this.settingService.get<string[]>(this.pinnedSettingKey)) || [];\n this.displayWidgets.set(this.widgets.map((c) => ({ ...c, pinned: pinnedWidgets.includes(c.id), icon: c.icon ?? 'fa-solid fa-file-invoice' })));\n }\n\n protected handleTabChange(event: AXTabStripChangedEvent): void {\n const indx = event.index;\n if (this.currentTabIndex() != indx) {\n this.currentTabIndex.set(indx);\n }\n }\n\n protected handleClick(event: MouseEvent, widget: AXPDisplayWidgetProvided) {\n if (event.ctrlKey) {\n const currentSelection = this.selectedWidgets();\n const isAlreadySelected = currentSelection.some((w) => w === widget);\n\n if (isAlreadySelected) {\n // Deselect widget if already selected\n this.selectedWidgets.set(currentSelection.filter((w) => w !== widget));\n } else {\n // Add widget to selection\n this.selectedWidgets.set([...currentSelection, widget]);\n }\n } else {\n // If CTRL is not pressed, select only the clicked widget\n this.close({ widgets: [widget] });\n }\n }\n\n protected async handlePinClick(e: MouseEvent, widget: AXPDisplayWidgetProvided) {\n e.stopPropagation();\n widget.pinned = !widget.pinned;\n // Get the current list of pinned widgets from settings\n let pinnedWidgets = (await this.settingService.get<string[]>(this.pinnedSettingKey)) || [];\n\n // Update the list of pinned widgets based on the pinned status\n if (widget.pinned) {\n if (!pinnedWidgets.includes(widget.id)) {\n pinnedWidgets.push(widget.id);\n }\n } else {\n pinnedWidgets = pinnedWidgets.filter((name) => name !== widget.id);\n }\n\n // Save the updated list of pinned widgets\n await this.settingService.set(this.pinnedSettingKey, pinnedWidgets);\n\n // Trigger a re-render of the widgets\n this.displayWidgets.set([...this.displayWidgets()]);\n }\n\n // Check if a widget is selected\n protected isWidgetSelected(widget: AXPDisplayWidgetProvided): boolean {\n return this.selectedWidgets().includes(widget);\n }\n\n protected handleConfirmSelection(): void {\n this.close({ widgets: this.selectedWidgets() });\n }\n}\n","<div class=\"ax-flex ax-flex-col lg:ax-h-[75vh]\">\n <div>\n <ax-tabs [look]=\"'with-line'\" (onActiveTabChanged)=\"handleTabChange($event)\">\n @for(w of tabs;track $index)\n {\n <ax-tab-item [text]=\"w.title\" [key]=\"$index.toString()\"\n [active]=\"currentTabIndex() === $index\"></ax-tab-item>\n }\n </ax-tabs>\n </div>\n <div class=\"ax-overflow-auto\" #content>\n <div class=\"ax-p-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all \" #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-shadow-xl'\" [stickyParent]=\"content\" [stickyOffset]=\"10\">\n <ax-search-box look=\"fill\" placeholder=\"e.g. Button, Text, ...\" [(ngModel)]=\"searchTerm\" [delayTime]=\"300\"\n [axAutoFocus]=\"true\">\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n <div class=\"ax-flex ax-flex-col ax-p-4 ax-pt-0\">\n <ng-template #itemTpl let-w>\n <div (click)=\"handleClick($event,w)\"\n class=\"ax-py-2 ax-px-3 ax-rounded-md ax-flex ax-gap-3 ax-items-center ax-group hover:ax-bg-primary-100 dark:hover:ax-bg-primary-800 ax-cursor-pointer\"\n [class.ax-bg-primary-100]=\"isWidgetSelected(w)\">\n <div class=\"ax-w-10 ax-h-10 ax-flex ax-items-center ax-justify-center ax-rounded-md ax-border ax-border-neutral-200 ax-text-neutral-500 ax-bg-on-surface group-hover:ax-bg-primary-200\"\n [class.ax-bg-primary-200]=\"isWidgetSelected(w)\">\n <i [ngClass]=\"w.icon\" class=\"ax-text-lg group-hover:ax-text-primary-700 ax-text-on-surface-fore\"\n [class.ax-text-primary-700]=\"isWidgetSelected(w)\"></i>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1 ax-flex-1\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <div class=\"ax-font-semibold ax-text-sm\">{{w.title}}</div>\n <div (click)=\"handlePinClick($event,w)\">\n @if (w.pinned) {\n <i class=\"fa-solid fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45\"></i>\n }\n @else {\n <i\n class=\"fa-light fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45 ax-invisible group-hover:ax-visible\"></i>\n }\n </div>\n </div>\n <span class=\"ax-text-xs ax-text-neutral-400 ax-truncate\">\n {{w.description}}\n </span>\n </div>\n </div>\n </ng-template>\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of pinnedList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n @if(pinnedList().length)\n {\n <hr class=\"ax-my-4 ax-border-dashed\">\n }\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of regularList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n </div>\n </div>\n</div>\n@if(selectedWidgets().length)\n{\n<ax-footer>\n <ax-suffix>\n <ax-button look=\"solid\" color=\"primary\" text=\"{{ selectedWidgets().length }} Selected\"\n (onClick)=\"handleConfirmSelection()\"></ax-button>\n </ax-suffix>\n</ax-footer>\n}"],"names":[],"mappings":"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"}
@@ -69,7 +69,7 @@ class AXPTemplateWidgetEditComponent extends AXPWidgetComponent {
69
69
  {{ 'choose-template' | translate : { scope: 'form-template-management' } | async }}
70
70
  </span>
71
71
  }
72
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "directive", type: i2.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i3.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
72
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "directive", type: i2.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i3.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
73
73
  }
74
74
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPTemplateWidgetEditComponent, decorators: [{
75
75
  type: Component,
@@ -108,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
108
108
  }], ctorParameters: () => [] });
109
109
 
110
110
  export { AXPTemplateWidgetEditComponent };
111
- //# sourceMappingURL=acorex-modules-form-template-management-template-widget-edit.component-Bgx5YRBc.mjs.map
111
+ //# sourceMappingURL=acorex-modules-form-template-management-template-widget-edit.component-DQw5qvib.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-modules-form-template-management-template-widget-edit.component-Bgx5YRBc.mjs","sources":["../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-widget-edit.component.ts"],"sourcesContent":["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, set } from 'lodash-es';\nimport { AXPTemplateWidgetProviderService } from './template.provider';\n\n@Component({\n selector: 'axp-template-widget-edit',\n template: `\n @if(nodes()) {\n <ng-container>\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 <div\n class=\"ax-text-danger-500 hover:ax-text-danger-800 ax-mt-2 ax-text-xs ax-cursor-pointer\"\n (click)=\"handleRemoveClick()\"\n >\n {{ 'remove-template' | translate : { scope: 'form-template-management' } | async }}\n </div>\n </ng-container>\n } @else {\n <span\n class=\"ax-underline ax-decoration-dotted ax-underline-offset-8 hover:ax-text-primary-500 ax-cursor-pointer\"\n (click)=\"handleSelectClick()\"\n >\n {{ 'choose-template' | translate : { scope: 'form-template-management' } | async }}\n </span>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule, AXTranslationModule]\n})\nexport class AXPTemplateWidgetEditComponent extends AXPWidgetComponent<any> {\n private metaKey = '__meta__';\n\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 protected async handleSelectClick() {\n const result = await this.templateProvider.chooseTemplate();\n if (result) {\n this.setOptions({ templateId: result.id });\n const value = this.getValue() ?? {};\n set(value, this.metaKey, { templateId: result.id });\n this.setValue(value);\n }\n }\n\n protected async handleRemoveClick() {\n this.setOptions({ templateId: null });\n this.setValue(null);\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;AAuCM,MAAO,8BAA+B,SAAQ,kBAAuB,CAAA;AAOzE,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;QAPD,IAAO,CAAA,OAAA,GAAG,UAAU;AAEpB,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,gCAAgC,CAAC;AACzD,QAAA,IAAA,CAAA,UAAU,GAAG,QAAQ,CAAS,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,YAAY,CAAW,CAAC;AAC3E,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAkB,EAAE,CAAC;;QAK3C,MAAM,CACJ,YAAW;AACT,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE;AAC7B,YAAA,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,EAAE,CAAG,EAAA,IAAI,CAAC,OAAO,aAAa,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE;YAChF,IAAI,UAAU,EAAE;gBACd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC;gBACxD,IAAI,IAAI,EAAE;oBACR,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;;;AAGhC,SAAC,CACF;;AAGO,IAAA,MAAM,iBAAiB,GAAA;QAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE;QAC3D,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE;AACnC,YAAA,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;AACnD,YAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;;;AAId,IAAA,MAAM,iBAAiB,GAAA;QAC/B,IAAI,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;AACrC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;;8GArCV,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,EA9B/B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAES,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,sBAAsB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAExD,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAhC1C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,sBAAsB,EAAE,mBAAmB;AACpE,iBAAA;;;;;"}
1
+ {"version":3,"file":"acorex-modules-form-template-management-template-widget-edit.component-DQw5qvib.mjs","sources":["../../../../libs/modules/form-template-management/src/lib/components/widgets/template/template-widget-edit.component.ts"],"sourcesContent":["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, set } from 'lodash-es';\nimport { AXPTemplateWidgetProviderService } from './template.provider';\n\n@Component({\n selector: 'axp-template-widget-edit',\n template: `\n @if(nodes()) {\n <ng-container>\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 <div\n class=\"ax-text-danger-500 hover:ax-text-danger-800 ax-mt-2 ax-text-xs ax-cursor-pointer\"\n (click)=\"handleRemoveClick()\"\n >\n {{ 'remove-template' | translate : { scope: 'form-template-management' } | async }}\n </div>\n </ng-container>\n } @else {\n <span\n class=\"ax-underline ax-decoration-dotted ax-underline-offset-8 hover:ax-text-primary-500 ax-cursor-pointer\"\n (click)=\"handleSelectClick()\"\n >\n {{ 'choose-template' | translate : { scope: 'form-template-management' } | async }}\n </span>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXPLayoutBuilderModule, AXTranslationModule]\n})\nexport class AXPTemplateWidgetEditComponent extends AXPWidgetComponent<any> {\n private metaKey = '__meta__';\n\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 protected async handleSelectClick() {\n const result = await this.templateProvider.chooseTemplate();\n if (result) {\n this.setOptions({ templateId: result.id });\n const value = this.getValue() ?? {};\n set(value, this.metaKey, { templateId: result.id });\n this.setValue(value);\n }\n }\n\n protected async handleRemoveClick() {\n this.setOptions({ templateId: null });\n this.setValue(null);\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { AXMEntityCrudServiceImpl, AXPDataGenerator, AXPWorkflowNavigateAction, AXP_MENU_PROVIDER } from '@acorex/platform/common';
1
+ import { AXMEntityCrudServiceImpl, AXPDataGenerator, AXPWorkflowNavigateAction, AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';
2
2
  import { AXPEntityService, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';
3
3
  import { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_BEHAVIOR_PROPERTY_GROUP, AXPWidgetsModule } from '@acorex/platform/widgets';
4
4
  import * as i0 from '@angular/core';
5
5
  import { Injectable, NgModule, inject, Injector, Component, ChangeDetectionStrategy, InjectionToken, computed, signal, effect, HostBinding } from '@angular/core';
6
6
  import { ROUTES } from '@angular/router';
7
7
  import * as i2 from '@acorex/platform/layout/builder';
8
- import { AXPWidgetComponent, AXP_WIDGETS_LAYOUT_GROUP, AXPLayoutBuilderModule, AXPContainerWidgetComponent, AXP_WIDGETS_ADVANCE_GROUP, createStringProperty } from '@acorex/platform/layout/builder';
8
+ import { AXPWidgetComponent, AXP_WIDGETS_LAYOUT_GROUP, AXPLayoutBuilderModule, AXP_WIDGETS_ADVANCE_GROUP, createStringProperty, AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
9
9
  import { AXButtonModule } from '@acorex/components/button';
10
10
  import * as i3 from '@acorex/core/translation';
11
11
  import { AXTranslationModule } from '@acorex/core/translation';
@@ -128,7 +128,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
128
128
  type: Injectable
129
129
  }] });
130
130
 
131
- class AXMFormTemplateManagementModuleMenuProvider {
131
+ class AXMMenuProvider {
132
132
  constructor() {
133
133
  this.entityService = inject(AXPEntityService);
134
134
  }
@@ -399,7 +399,7 @@ class AXPTemplateWidgetProviderService {
399
399
  return null;
400
400
  }
401
401
  async chooseTemplate() {
402
- const com = await import('./acorex-modules-form-template-management-template-picker.component-D_FkgF0W.mjs').then((c) => c.AXPTemplateWidgetPickerComponent);
402
+ const com = await import('./acorex-modules-form-template-management-template-picker.component-BXOyKuAt.mjs').then((c) => c.AXPTemplateWidgetPickerComponent);
403
403
  const widgets = await this.items({
404
404
  skip: 0,
405
405
  take: 100,
@@ -468,7 +468,7 @@ class AXPTemplateWidgetViewComponent extends AXPWidgetComponent {
468
468
  {{ 'empty-template' | translate : { scope: 'form-template-management' } | async }}
469
469
  </span>
470
470
  }
471
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "directive", type: i2.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i3.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
471
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "directive", type: i2.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i3.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
472
472
  }
473
473
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPTemplateWidgetViewComponent, decorators: [{
474
474
  type: Component,
@@ -504,7 +504,7 @@ const AXP_DESIGNER_TEMPLATE_WIDGET_CHOOSE_MENU = {
504
504
  name: 'choose',
505
505
  icon: 'fa-solid fa-folder-open',
506
506
  };
507
- class AXPTemplateWidgetDesignerComponent extends AXPContainerWidgetComponent {
507
+ class AXPTemplateWidgetDesignerComponent extends AXPWidgetComponent {
508
508
  constructor() {
509
509
  super();
510
510
  this.templateProvider = inject(AXPTemplateWidgetProviderService);
@@ -524,6 +524,12 @@ class AXPTemplateWidgetDesignerComponent extends AXPContainerWidgetComponent {
524
524
  }
525
525
  });
526
526
  }
527
+ // override async ngOnInit() {
528
+ // super.ngOnInit();
529
+ // if (!this.templateId()) {
530
+ // this.handleChooseWidget();
531
+ // }
532
+ // }
527
533
  async handleChooseWidget() {
528
534
  const result = await this.templateProvider.chooseTemplate();
529
535
  if (result) {
@@ -562,7 +568,7 @@ class AXPTemplateWidgetDesignerComponent extends AXPContainerWidgetComponent {
562
568
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPTemplateWidgetDesignerComponent, isStandalone: true, selector: "axp-template-widget-designer", host: { properties: { "class": "this.__class" } }, providers: [
563
569
  {
564
570
  provide: AXPTemplateWidgetDesignerComponent,
565
- useExisting: AXPContainerWidgetComponent,
571
+ useExisting: AXPWidgetComponent,
566
572
  },
567
573
  ], usesInheritance: true, ngImport: i0, template: `
568
574
  @if(nodes().length) {
@@ -619,7 +625,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
619
625
  providers: [
620
626
  {
621
627
  provide: AXPTemplateWidgetDesignerComponent,
622
- useExisting: AXPContainerWidgetComponent,
628
+ useExisting: AXPWidgetComponent,
623
629
  },
624
630
  ]
625
631
  }]
@@ -659,7 +665,7 @@ const AXPTemplateWidget = {
659
665
  component: () => Promise.resolve().then(function () { return templateWidgetView_component; }).then((c) => c.AXPTemplateWidgetViewComponent),
660
666
  },
661
667
  edit: {
662
- component: () => import('./acorex-modules-form-template-management-template-widget-edit.component-Bgx5YRBc.mjs').then((c) => c.AXPTemplateWidgetEditComponent),
668
+ component: () => import('./acorex-modules-form-template-management-template-widget-edit.component-DQw5qvib.mjs').then((c) => c.AXPTemplateWidgetEditComponent),
663
669
  },
664
670
  print: {
665
671
  component: () => Promise.resolve().then(function () { return templateWidgetView_component; }).then((c) => c.AXPTemplateWidgetViewComponent),
@@ -670,6 +676,55 @@ const AXPTemplateWidget = {
670
676
  },
671
677
  };
672
678
 
679
+ class AXMSettingProvider {
680
+ async provide(context) {
681
+ context
682
+ // Add Form Template Group
683
+ .addGroup('form-template', 'Form Template', 'Settings related to form templates.', 'fa-solid fa-file-invoice')
684
+ // Start Interface Section
685
+ .addSection('interface', 'UI Interface', 'Customize the user interface for forms.')
686
+ .addSetting({
687
+ key: 'history-panel',
688
+ title: 'Show History Panel',
689
+ scope: 'U',
690
+ isInherited: true,
691
+ defaultValue: false,
692
+ widget: {
693
+ type: AXPWidgetsCatalog.toggle,
694
+ },
695
+ description: 'Enable or disable the history panel for forms.',
696
+ })
697
+ .endSection()
698
+ // Start Saving Section
699
+ .addSection('saving', 'Saving', 'Settings related to saving form data.')
700
+ .addSetting({
701
+ key: 'auto-save',
702
+ title: 'Auto Save',
703
+ scope: 'U',
704
+ defaultValue: 3000,
705
+ isInherited: true,
706
+ widget: {
707
+ type: AXPWidgetsCatalog.toggle,
708
+ },
709
+ description: 'Automatically save form data at regular intervals.',
710
+ })
711
+ .addSetting({
712
+ key: 'auto-save-interval',
713
+ title: 'Auto Save Interval',
714
+ scope: 'U',
715
+ defaultValue: 3000,
716
+ isInherited: true,
717
+ widget: {
718
+ type: AXPWidgetsCatalog.number,
719
+ },
720
+ description: 'Set the time interval (in seconds) for auto-saving form data.',
721
+ })
722
+ .endSection()
723
+ // End Form Template Group
724
+ .endGroup();
725
+ }
726
+ }
727
+
673
728
  function routesFacory() {
674
729
  const routes = [
675
730
  {
@@ -710,7 +765,7 @@ class AXMFormTemplateManagementModule {
710
765
  },
711
766
  {
712
767
  provide: AXP_MENU_PROVIDER,
713
- useClass: AXMFormTemplateManagementModuleMenuProvider,
768
+ useClass: AXMMenuProvider,
714
769
  multi: true,
715
770
  },
716
771
  {
@@ -721,6 +776,11 @@ class AXMFormTemplateManagementModule {
721
776
  provide: AXP_TEMPLATE_WIDGET_PROVIDER,
722
777
  useClass: AXPTemplateWidgetProviderImpl,
723
778
  multi: true,
779
+ },
780
+ {
781
+ provide: AXP_SETTING_DEFINITION_PROVIDER,
782
+ useClass: AXMSettingProvider,
783
+ multi: true,
724
784
  }
725
785
  ], imports: [AXPWidgetsModule,
726
786
  AXMFormTemplateManagementCategoryEntityModule,
@@ -779,7 +839,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
779
839
  },
780
840
  {
781
841
  provide: AXP_MENU_PROVIDER,
782
- useClass: AXMFormTemplateManagementModuleMenuProvider,
842
+ useClass: AXMMenuProvider,
783
843
  multi: true,
784
844
  },
785
845
  {
@@ -790,6 +850,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
790
850
  provide: AXP_TEMPLATE_WIDGET_PROVIDER,
791
851
  useClass: AXPTemplateWidgetProviderImpl,
792
852
  multi: true,
853
+ },
854
+ {
855
+ provide: AXP_SETTING_DEFINITION_PROVIDER,
856
+ useClass: AXMSettingProvider,
857
+ multi: true,
793
858
  }
794
859
  ],
795
860
  }]
@@ -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/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/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}\n\n\nexport const AXMFormTemplateTypes = {\n Form: { id: 10, title: 'Form Template' },\n Widget: { id: 20, title: 'Widgets 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 AXMFormTemplateManagementModuleMenuProvider 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: 'info',\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';\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: 'other',\n order: 2,\n title: \"Saved\"\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/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.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 { AXPContainerWidgetComponent, 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.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: AXPContainerWidgetComponent,\n },\n ]\n})\nexport class AXPTemplateWidgetDesignerComponent extends AXPContainerWidgetComponent<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 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","import { AXP_MENU_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 { AXMFormTemplateManagementModuleMenuProvider } 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';\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: AXMFormTemplateManagementModuleMenuProvider,\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})\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/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/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}\n\n\nexport const AXMFormTemplateTypes = {\n Form: { id: 10, title: 'Form Template' },\n Widget: { id: 20, title: 'Widgets 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: 'info',\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';\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: 'other',\n order: 2,\n title: \"Saved\"\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/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.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.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","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 })\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 defaultValue: 3000,\n isInherited: true,\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 defaultValue: 3000,\n isInherited: true,\n widget: {\n type: AXPWidgetsCatalog.number,\n },\n description: 'Set the time interval (in seconds) 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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"}
@@ -304,6 +304,7 @@ class AXMNotificationManagmentModuleMenuProvider {
304
304
  {
305
305
  name: 'my-notifications',
306
306
  text: `t('my', {scope: "${scope}"})`,
307
+ icon: 'fa-solid fa-bell',
307
308
  path: this.entityService.createPath(moduleName, AXMNotificationManagementModuleConst.myNotificationEntity),
308
309
  data: {
309
310
  // requiredPermission: '',