ngx-histaff-alpha 6.7.5 → 6.7.6

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 (50) hide show
  1. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-DwX6z2zv.mjs → ngx-histaff-alpha-ai-hint-for-table.component-B3g0YA8d.mjs} +2 -2
  2. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-DwX6z2zv.mjs.map → ngx-histaff-alpha-ai-hint-for-table.component-B3g0YA8d.mjs.map} +1 -1
  3. package/fesm2022/{ngx-histaff-alpha-core-form-design.component-B7BWL6WV.mjs → ngx-histaff-alpha-core-form-design.component-DH5sZTvG.mjs} +4 -4
  4. package/fesm2022/{ngx-histaff-alpha-core-form-design.component-B7BWL6WV.mjs.map → ngx-histaff-alpha-core-form-design.component-DH5sZTvG.mjs.map} +1 -1
  5. package/fesm2022/{ngx-histaff-alpha-core-sys-action.component-DxlfFjYx.mjs → ngx-histaff-alpha-core-sys-action.component-DUjIyJ6_.mjs} +2 -2
  6. package/fesm2022/{ngx-histaff-alpha-core-sys-action.component-DxlfFjYx.mjs.map → ngx-histaff-alpha-core-sys-action.component-DUjIyJ6_.mjs.map} +1 -1
  7. package/fesm2022/{ngx-histaff-alpha-core-template-editor.component-o1melxIr.mjs → ngx-histaff-alpha-core-template-editor.component-BEbvo3lg.mjs} +2 -2
  8. package/fesm2022/{ngx-histaff-alpha-core-template-editor.component-o1melxIr.mjs.map → ngx-histaff-alpha-core-template-editor.component-BEbvo3lg.mjs.map} +1 -1
  9. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-C1xF9q5m.mjs → ngx-histaff-alpha-core-toast-loading.component-CaFloHHM.mjs} +2 -2
  10. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-C1xF9q5m.mjs.map → ngx-histaff-alpha-core-toast-loading.component-CaFloHHM.mjs.map} +1 -1
  11. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-D_FTaqQo.mjs → ngx-histaff-alpha-core-workflow-consume.component-C5DVizrr.mjs} +2 -2
  12. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-D_FTaqQo.mjs.map → ngx-histaff-alpha-core-workflow-consume.component-C5DVizrr.mjs.map} +1 -1
  13. package/fesm2022/{ngx-histaff-alpha-db-settings.component-BHuQH58t.mjs → ngx-histaff-alpha-db-settings.component-sVYA-jqy.mjs} +5 -5
  14. package/fesm2022/{ngx-histaff-alpha-db-settings.component-BHuQH58t.mjs.map → ngx-histaff-alpha-db-settings.component-sVYA-jqy.mjs.map} +1 -1
  15. package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-BPqt0OZ5.mjs → ngx-histaff-alpha-design-wrapper.component-vXfR34OB.mjs} +5 -5
  16. package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-BPqt0OZ5.mjs.map → ngx-histaff-alpha-design-wrapper.component-vXfR34OB.mjs.map} +1 -1
  17. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-COuGfx8m.mjs → ngx-histaff-alpha-design-wrapper.route-CHcysARk.mjs} +5 -5
  18. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-COuGfx8m.mjs.map → ngx-histaff-alpha-design-wrapper.route-CHcysARk.mjs.map} +1 -1
  19. package/fesm2022/{ngx-histaff-alpha-hrm-schema.component-D1uTCDQS.mjs → ngx-histaff-alpha-hrm-schema.component-Bi7lnbDv.mjs} +2 -2
  20. package/fesm2022/{ngx-histaff-alpha-hrm-schema.component-D1uTCDQS.mjs.map → ngx-histaff-alpha-hrm-schema.component-Bi7lnbDv.mjs.map} +1 -1
  21. package/fesm2022/{ngx-histaff-alpha-live-form.component-vNa45nJi.mjs → ngx-histaff-alpha-live-form.component-k6sE0ghR.mjs} +2 -2
  22. package/fesm2022/{ngx-histaff-alpha-live-form.component-vNa45nJi.mjs.map → ngx-histaff-alpha-live-form.component-k6sE0ghR.mjs.map} +1 -1
  23. package/fesm2022/{ngx-histaff-alpha-ngx-histaff-alpha-DRWZfDrq.mjs → ngx-histaff-alpha-ngx-histaff-alpha-CcOj03WE.mjs} +134 -24
  24. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-CcOj03WE.mjs.map +1 -0
  25. package/fesm2022/{ngx-histaff-alpha-simple-chat.component-CEVRHmjv.mjs → ngx-histaff-alpha-simple-chat.component-DY0P0t1h.mjs} +2 -2
  26. package/fesm2022/{ngx-histaff-alpha-simple-chat.component-CEVRHmjv.mjs.map → ngx-histaff-alpha-simple-chat.component-DY0P0t1h.mjs.map} +1 -1
  27. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client-edit.component-GnVcOm23.mjs → ngx-histaff-alpha-sys-smtp-client-edit.component-B8kVpHJS.mjs} +2 -2
  28. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client-edit.component-GnVcOm23.mjs.map → ngx-histaff-alpha-sys-smtp-client-edit.component-B8kVpHJS.mjs.map} +1 -1
  29. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client.component-cHZjBAVj.mjs → ngx-histaff-alpha-sys-smtp-client.component-DfX7Ldni.mjs} +2 -2
  30. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client.component-cHZjBAVj.mjs.map → ngx-histaff-alpha-sys-smtp-client.component-DfX7Ldni.mjs.map} +1 -1
  31. package/fesm2022/{ngx-histaff-alpha-template-list.component-Wloctfpt.mjs → ngx-histaff-alpha-template-list.component-BOb3Yg1E.mjs} +2 -2
  32. package/fesm2022/{ngx-histaff-alpha-template-list.component-Wloctfpt.mjs.map → ngx-histaff-alpha-template-list.component-BOb3Yg1E.mjs.map} +1 -1
  33. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-DMujJuQP.mjs → ngx-histaff-alpha-tracker-studio.component-C_cWZlam.mjs} +2 -2
  34. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-DMujJuQP.mjs.map → ngx-histaff-alpha-tracker-studio.component-C_cWZlam.mjs.map} +1 -1
  35. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-COVOPuyc.mjs → ngx-histaff-alpha-wf-form-assign.component-ZF9PfaPn.mjs} +2 -2
  36. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-COVOPuyc.mjs.map → ngx-histaff-alpha-wf-form-assign.component-ZF9PfaPn.mjs.map} +1 -1
  37. package/fesm2022/{ngx-histaff-alpha-wf-global-config.component-CakiKMEP.mjs → ngx-histaff-alpha-wf-global-config.component-Cm0GQj7Z.mjs} +2 -2
  38. package/fesm2022/{ngx-histaff-alpha-wf-global-config.component-CakiKMEP.mjs.map → ngx-histaff-alpha-wf-global-config.component-Cm0GQj7Z.mjs.map} +1 -1
  39. package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-DdzM44wT.mjs → ngx-histaff-alpha-wf-instance-status.component-CM5SqfNa.mjs} +2 -2
  40. package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-DdzM44wT.mjs.map → ngx-histaff-alpha-wf-instance-status.component-CM5SqfNa.mjs.map} +1 -1
  41. package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-DuUxqAnf.mjs → ngx-histaff-alpha-wf-instance-step-react.component-hN4UH2TP.mjs} +3 -3
  42. package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-DuUxqAnf.mjs.map → ngx-histaff-alpha-wf-instance-step-react.component-hN4UH2TP.mjs.map} +1 -1
  43. package/fesm2022/{ngx-histaff-alpha-wf-lab.component-7125SG5f.mjs → ngx-histaff-alpha-wf-lab.component-DyDfYXJG.mjs} +2 -2
  44. package/fesm2022/{ngx-histaff-alpha-wf-lab.component-7125SG5f.mjs.map → ngx-histaff-alpha-wf-lab.component-DyDfYXJG.mjs.map} +1 -1
  45. package/fesm2022/ngx-histaff-alpha.mjs +1 -1
  46. package/lib/app/directives/core-accordion.directive.d.ts +13 -0
  47. package/lib/app/libraries/core-header-params/enum-and-interfaces.d.ts +2 -0
  48. package/lib/app/services/dynamic-style.service.d.ts +1 -0
  49. package/package.json +2 -2
  50. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-DRWZfDrq.mjs.map +0 -1
@@ -3149,6 +3149,52 @@ class DynamicStyleService {
3149
3149
  }
3150
3150
  `;
3151
3151
  }
3152
+ ensureCoreAccordionStyles() {
3153
+ let styleEl = document.getElementById('core-accordion-style');
3154
+ if (!styleEl) {
3155
+ styleEl = this.renderer.createElement('style');
3156
+ this.renderer.setAttribute(styleEl, 'id', 'core-accordion-style');
3157
+ this.renderer.appendChild(document.head, styleEl);
3158
+ }
3159
+ styleEl.innerHTML = `
3160
+ /* ================================
3161
+ CORE ACCORDION – LAYOUT MODEL
3162
+ ================================ */
3163
+
3164
+ /* Viewport: animate HERE */
3165
+ .core-accordion-viewport {
3166
+ height: 0;
3167
+ overflow: hidden;
3168
+ opacity: 0;
3169
+ transition: height .3s ease, opacity .25s ease;
3170
+ will-change: height, opacity;
3171
+ }
3172
+
3173
+ /* Body: content thật – KHÔNG ĐƯỢC ĐỘNG VÀO */
3174
+ .core-accordion-body {
3175
+ height: auto;
3176
+ overflow: visible;
3177
+ }
3178
+
3179
+ /* Header */
3180
+ .core-accordion-header {
3181
+ display: flex;
3182
+ align-items: center;
3183
+ justify-content: space-between;
3184
+ cursor: pointer;
3185
+ user-select: none;
3186
+ }
3187
+
3188
+ /* Chevron */
3189
+ .core-accordion-rotate {
3190
+ transition: transform .3s ease;
3191
+ }
3192
+
3193
+ .core-accordion-rotate.rotated {
3194
+ transform: rotate(90deg);
3195
+ }
3196
+ `;
3197
+ }
3152
3198
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DynamicStyleService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); }
3153
3199
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DynamicStyleService, providedIn: 'root' }); }
3154
3200
  }
@@ -28923,6 +28969,69 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
28923
28969
  type: Injectable
28924
28970
  }] });
28925
28971
 
28972
+ class CoreAccordionDirective {
28973
+ constructor() {
28974
+ this.$externalOpen = input(null);
28975
+ this.styleSvc = inject(DynamicStyleService);
28976
+ this.host = inject((ElementRef));
28977
+ /** internal open state */
28978
+ this.$open = signal(false);
28979
+ // 🔒 ensure global styles
28980
+ this.styleSvc.ensureCoreAccordionStyles();
28981
+ /* 🔹 sync external → internal */
28982
+ effect(() => {
28983
+ const externalOpen = this.$externalOpen();
28984
+ if (externalOpen !== null) {
28985
+ this.$open.set(externalOpen);
28986
+ }
28987
+ });
28988
+ /* 🔹 layout effect with ResizeObserver */
28989
+ effect((onCleanup) => {
28990
+ const open = this.$open();
28991
+ const host = this.host.nativeElement;
28992
+ const viewport = host.querySelector('.core-accordion-viewport');
28993
+ const body = host.querySelector('.core-accordion-body');
28994
+ if (!viewport || !body)
28995
+ return;
28996
+ let ro = null;
28997
+ if (open) {
28998
+ // initial expand
28999
+ viewport.style.opacity = '1';
29000
+ viewport.style.height = body.scrollHeight + 'px';
29001
+ // observe body resize
29002
+ ro = new ResizeObserver(() => {
29003
+ viewport.style.height = body.scrollHeight + 'px';
29004
+ });
29005
+ ro.observe(body);
29006
+ }
29007
+ else {
29008
+ viewport.style.height = '0px';
29009
+ viewport.style.opacity = '0';
29010
+ }
29011
+ // 🧹 cleanup đúng chuẩn
29012
+ onCleanup(() => {
29013
+ if (ro) {
29014
+ ro.disconnect();
29015
+ ro = null;
29016
+ }
29017
+ });
29018
+ });
29019
+ }
29020
+ toggle() {
29021
+ this.$open.update(v => !v);
29022
+ }
29023
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreAccordionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
29024
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.5", type: CoreAccordionDirective, isStandalone: true, selector: "[coreAccordion]", inputs: { $externalOpen: { classPropertyName: "$externalOpen", publicName: "$externalOpen", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["coreAccordion"], ngImport: i0 }); }
29025
+ }
29026
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreAccordionDirective, decorators: [{
29027
+ type: Directive,
29028
+ args: [{
29029
+ selector: '[coreAccordion]',
29030
+ exportAs: 'coreAccordion',
29031
+ standalone: true,
29032
+ }]
29033
+ }], ctorParameters: () => [] });
29034
+
28926
29035
  /**
28927
29036
  * DomOIdFactoryComponent
28928
29037
  *
@@ -29076,7 +29185,7 @@ class DomOIdFactoryComponent extends CoreFormControlBaseComponent {
29076
29185
  multi: true,
29077
29186
  useExisting: forwardRef(() => DomOIdFactoryComponent),
29078
29187
  },
29079
- ], usesInheritance: true, ngImport: i0, template: "@if ($loading()) {\r\n<core-rotating-text />\r\n} @else {\r\n\r\n<div class=\"dom-oid-factory-container\" [class.form-control-disabled]=\"disabled\">\r\n\r\n <!-- DISPLAY -->\r\n <div class=\"oid-display-name\" [class.form-control-disabled]=\"disabled\">\r\n <input type=\"text\" class=\"oid-name-input form-control\" [class.form-control-disabled]=\"disabled\" [class.required-highlight]=\"!!required\"\r\n [value]=\"$displayName()\" [disabled]=\"disabled\" />\r\n <div class=\"icon\" (click)=\"onPopupToggle()\">\r\n <i class=\"feather-chevron-down\"></i>\r\n </div>\r\n </div>\r\n\r\n <div class=\"factory-popup\" [class.open]=\"$open()\">\r\n\r\n <div class=\"popup-content\">\r\n\r\n <!-- TYPE / NAME -->\r\n @if ($showSearch()) {\r\n <div class=\"oid-search\">\r\n <input type=\"text\" class=\"oid-search-input\" placeholder=\"T\u00ECm ki\u1EBFm\u2026\" [value]=\"$searchText()\"\r\n (input)=\"onSearchTextChange($any($event.target).value)\" />\r\n </div>\r\n }\r\n\r\n <!-- SYMBOLIC CONTEXT STRIP -->\r\n @if ($currentTokens().length > 0) {\r\n <div class=\"oid-token-strip\">\r\n @for (t of $currentTokens(); track $index) {\r\n <dom-entity-token [$token]=\"t\" [$mode]=\"'compact'\" (click)=\"onTokenPicked(t)\">\r\n </dom-entity-token>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- OPTIONAL TREE (contextual memory only) -->\r\n <div class=\"oid-tree\">\r\n <core-tree-reference [$data]=\"MOCK_DATA\" (selected)=\"onTreeItemSelected($event)\" />\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n</div>\r\n}", styles: [".dom-oid-factory-container{display:flex;flex-direction:column;gap:8px;position:relative}.dom-oid-factory-container .oid-display-name{position:relative}.dom-oid-factory-container .oid-display-name .icon{display:flex;align-items:center;justify-content:center;width:35px;height:35px;cursor:pointer;position:absolute;right:0;top:0;border-left:1px solid #ced4da;z-index:1}.dom-oid-factory-container .oid-display-name input.form-control-disabled{-webkit-user-select:none;user-select:none}.dom-oid-factory-container .factory-popup{height:0;overflow:hidden;position:absolute;background-color:#fff;width:320px;box-shadow:.4rem 0 2rem #4d2e2e2e;z-index:1;top:35px;transition:height .25s ease-out}.dom-oid-factory-container .factory-popup.open{height:400px}.dom-oid-factory-container .factory-popup .popup-content{padding:15px}.oid-search-input{width:100%;padding:6px 10px;border:1px solid #ccc}.oid-tree{max-height:320px;overflow:auto}\n"], dependencies: [{ kind: "component", type: CoreRotatingTextComponent, selector: "core-rotating-text" }, { kind: "component", type: DomEntityTokenComponent, selector: "dom-entity-token", inputs: ["$token", "$mode"] }, { kind: "component", type: CoreTreeReferenceComponent, selector: "core-tree-reference", inputs: ["$data", "$itemTemplateRef"], outputs: ["selected"] }, { kind: "ngmodule", type: FormsModule }] }); }
29188
+ ], usesInheritance: true, ngImport: i0, template: "@if ($loading()) {\r\n<core-rotating-text />\r\n} @else {\r\n\r\n<div class=\"dom-oid-factory-container\" [class.form-control-disabled]=\"disabled\">\r\n\r\n <!-- DISPLAY -->\r\n <div class=\"oid-display-name\" [class.form-control-disabled]=\"disabled\">\r\n <input type=\"text\" class=\"oid-name-input form-control\" [class.form-control-disabled]=\"disabled\"\r\n [class.required-highlight]=\"!!required\" [value]=\"$displayName()\" [disabled]=\"disabled\" />\r\n <div class=\"icon\" (click)=\"onPopupToggle()\">\r\n <i class=\"feather-chevron-down\"></i>\r\n </div>\r\n </div>\r\n\r\n <div class=\"factory-popup\" [class.open]=\"$open()\">\r\n\r\n <div class=\"popup-content\">\r\n\r\n <!-- SEARCH -->\r\n @if ($showSearch()) {\r\n <div class=\"oid-search\">\r\n <input type=\"text\" class=\"oid-search-input\" placeholder=\"T\u00ECm ki\u1EBFm\u2026\" [value]=\"$searchText()\"\r\n (input)=\"onSearchTextChange($any($event.target).value)\" />\r\n </div>\r\n }\r\n\r\n @if ($currentTokens().length > 0) {\r\n <!-- \uD83C\uDD95 ACCORDION 1: C\u00E1c \u0111\u01A1n v\u1ECB v\u1EEBa t\u1EA1o -->\r\n <section class=\"oid-accordion\" coreAccordion #accCreated=\"coreAccordion\">\r\n <header class=\"core-accordion-header highlight\" (click)=\"accCreated.toggle()\">\r\n <span>\uD83C\uDD95 C\u00E1c \u0111\u01A1n v\u1ECB v\u1EEBa t\u1EA1o</span>\r\n <i class=\"feather-chevron-right core-accordion-rotate\" [class.rotated]=\"accCreated.$open()\"></i>\r\n </header>\r\n\r\n <div class=\"core-accordion-viewport\">\r\n <div class=\"core-accordion-body\">\r\n <div #coreAccordionBody>\r\n <div class=\"oid-token-strip\">\r\n @for (t of $currentTokens(); track $index) {\r\n <dom-entity-token [$token]=\"t\" [$mode]=\"'compact'\" (click)=\"onTokenPicked(t)\">\r\n </dom-entity-token>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n }\r\n\r\n <!-- \uD83C\uDF33 ACCORDION 2: C\u00E2y t\u1ED5 ch\u1EE9c -->\r\n <section class=\"oid-accordion\" coreAccordion [$externalOpen]=\"true\" #accTree=\"coreAccordion\">\r\n <header class=\"core-accordion-header\" (click)=\"accTree.toggle()\">\r\n <span>\uD83C\uDF33 C\u00E2y t\u1ED5 ch\u1EE9c</span>\r\n <i class=\"feather-chevron-right core-accordion-rotate\" [class.rotated]=\"accTree.$open()\"></i>\r\n </header>\r\n\r\n <div class=\"core-accordion-viewport\">\r\n <div class=\"core-accordion-body\">\r\n <div #coreAccordionBody>\r\n <div #treeBody>\r\n <core-tree-reference [$data]=\"MOCK_DATA\" (selected)=\"onTreeItemSelected($event)\">\r\n </core-tree-reference>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n <!-- \u25AB\uFE0F ACCORDION 3: Ngo\u00E0i c\u00E2y t\u1ED5 ch\u1EE9c -->\r\n <section class=\"oid-accordion\" coreAccordion #accOutside=\"coreAccordion\">\r\n <header class=\"core-accordion-header\" (click)=\"accOutside.toggle()\">\r\n <span>\u25AB\uFE0F Ngo\u00E0i c\u00E2y t\u1ED5 ch\u1EE9c</span>\r\n <i class=\"feather-chevron-right core-accordion-rotate\" [class.rotated]=\"accOutside.$open()\"></i>\r\n </header>\r\n\r\n <div class=\"core-accordion-viewport\">\r\n <div class=\"core-accordion-body\">\r\n <div #coreAccordionBody></div>\r\n <div #outsideBody>\r\n <em class=\"muted\">Ch\u01B0a c\u00F3 n\u1ED9i dung</em>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n}", styles: [".dom-oid-factory-container{display:flex;flex-direction:column;gap:8px;position:relative}.dom-oid-factory-container .oid-display-name{position:relative}.dom-oid-factory-container .oid-display-name .icon{display:flex;align-items:center;justify-content:center;width:35px;height:35px;cursor:pointer;position:absolute;right:0;top:0;border-left:1px solid #ced4da;z-index:1}.dom-oid-factory-container .oid-display-name input.form-control-disabled{-webkit-user-select:none;user-select:none}.dom-oid-factory-container .factory-popup{height:0;overflow:hidden;position:absolute;background-color:#fff;width:320px;box-shadow:.4rem 0 2rem #4d2e2e2e;z-index:1;top:35px;transition:height .25s ease-out}.dom-oid-factory-container .factory-popup.open{height:400px}.dom-oid-factory-container .factory-popup .popup-content{padding:15px}.dom-oid-factory-container .factory-popup .popup-content .oid-accordion .core-accordion-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;height:35px}.dom-oid-factory-container .oid-search-input{width:100%;padding:6px 10px;border:1px solid #ccc}.dom-oid-factory-container .oid-tree{max-height:320px;overflow:auto}\n"], dependencies: [{ kind: "component", type: CoreRotatingTextComponent, selector: "core-rotating-text" }, { kind: "component", type: DomEntityTokenComponent, selector: "dom-entity-token", inputs: ["$token", "$mode"] }, { kind: "component", type: CoreTreeReferenceComponent, selector: "core-tree-reference", inputs: ["$data", "$itemTemplateRef"], outputs: ["selected"] }, { kind: "directive", type: CoreAccordionDirective, selector: "[coreAccordion]", inputs: ["$externalOpen"], exportAs: ["coreAccordion"] }, { kind: "ngmodule", type: FormsModule }] }); }
29080
29189
  }
29081
29190
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DomOIdFactoryComponent, decorators: [{
29082
29191
  type: Component,
@@ -29084,6 +29193,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
29084
29193
  CoreRotatingTextComponent,
29085
29194
  DomEntityTokenComponent,
29086
29195
  CoreTreeReferenceComponent,
29196
+ CoreAccordionDirective,
29087
29197
  FormsModule
29088
29198
  ], providers: [
29089
29199
  {
@@ -29091,7 +29201,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
29091
29201
  multi: true,
29092
29202
  useExisting: forwardRef(() => DomOIdFactoryComponent),
29093
29203
  },
29094
- ], template: "@if ($loading()) {\r\n<core-rotating-text />\r\n} @else {\r\n\r\n<div class=\"dom-oid-factory-container\" [class.form-control-disabled]=\"disabled\">\r\n\r\n <!-- DISPLAY -->\r\n <div class=\"oid-display-name\" [class.form-control-disabled]=\"disabled\">\r\n <input type=\"text\" class=\"oid-name-input form-control\" [class.form-control-disabled]=\"disabled\" [class.required-highlight]=\"!!required\"\r\n [value]=\"$displayName()\" [disabled]=\"disabled\" />\r\n <div class=\"icon\" (click)=\"onPopupToggle()\">\r\n <i class=\"feather-chevron-down\"></i>\r\n </div>\r\n </div>\r\n\r\n <div class=\"factory-popup\" [class.open]=\"$open()\">\r\n\r\n <div class=\"popup-content\">\r\n\r\n <!-- TYPE / NAME -->\r\n @if ($showSearch()) {\r\n <div class=\"oid-search\">\r\n <input type=\"text\" class=\"oid-search-input\" placeholder=\"T\u00ECm ki\u1EBFm\u2026\" [value]=\"$searchText()\"\r\n (input)=\"onSearchTextChange($any($event.target).value)\" />\r\n </div>\r\n }\r\n\r\n <!-- SYMBOLIC CONTEXT STRIP -->\r\n @if ($currentTokens().length > 0) {\r\n <div class=\"oid-token-strip\">\r\n @for (t of $currentTokens(); track $index) {\r\n <dom-entity-token [$token]=\"t\" [$mode]=\"'compact'\" (click)=\"onTokenPicked(t)\">\r\n </dom-entity-token>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- OPTIONAL TREE (contextual memory only) -->\r\n <div class=\"oid-tree\">\r\n <core-tree-reference [$data]=\"MOCK_DATA\" (selected)=\"onTreeItemSelected($event)\" />\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n</div>\r\n}", styles: [".dom-oid-factory-container{display:flex;flex-direction:column;gap:8px;position:relative}.dom-oid-factory-container .oid-display-name{position:relative}.dom-oid-factory-container .oid-display-name .icon{display:flex;align-items:center;justify-content:center;width:35px;height:35px;cursor:pointer;position:absolute;right:0;top:0;border-left:1px solid #ced4da;z-index:1}.dom-oid-factory-container .oid-display-name input.form-control-disabled{-webkit-user-select:none;user-select:none}.dom-oid-factory-container .factory-popup{height:0;overflow:hidden;position:absolute;background-color:#fff;width:320px;box-shadow:.4rem 0 2rem #4d2e2e2e;z-index:1;top:35px;transition:height .25s ease-out}.dom-oid-factory-container .factory-popup.open{height:400px}.dom-oid-factory-container .factory-popup .popup-content{padding:15px}.oid-search-input{width:100%;padding:6px 10px;border:1px solid #ccc}.oid-tree{max-height:320px;overflow:auto}\n"] }]
29204
+ ], template: "@if ($loading()) {\r\n<core-rotating-text />\r\n} @else {\r\n\r\n<div class=\"dom-oid-factory-container\" [class.form-control-disabled]=\"disabled\">\r\n\r\n <!-- DISPLAY -->\r\n <div class=\"oid-display-name\" [class.form-control-disabled]=\"disabled\">\r\n <input type=\"text\" class=\"oid-name-input form-control\" [class.form-control-disabled]=\"disabled\"\r\n [class.required-highlight]=\"!!required\" [value]=\"$displayName()\" [disabled]=\"disabled\" />\r\n <div class=\"icon\" (click)=\"onPopupToggle()\">\r\n <i class=\"feather-chevron-down\"></i>\r\n </div>\r\n </div>\r\n\r\n <div class=\"factory-popup\" [class.open]=\"$open()\">\r\n\r\n <div class=\"popup-content\">\r\n\r\n <!-- SEARCH -->\r\n @if ($showSearch()) {\r\n <div class=\"oid-search\">\r\n <input type=\"text\" class=\"oid-search-input\" placeholder=\"T\u00ECm ki\u1EBFm\u2026\" [value]=\"$searchText()\"\r\n (input)=\"onSearchTextChange($any($event.target).value)\" />\r\n </div>\r\n }\r\n\r\n @if ($currentTokens().length > 0) {\r\n <!-- \uD83C\uDD95 ACCORDION 1: C\u00E1c \u0111\u01A1n v\u1ECB v\u1EEBa t\u1EA1o -->\r\n <section class=\"oid-accordion\" coreAccordion #accCreated=\"coreAccordion\">\r\n <header class=\"core-accordion-header highlight\" (click)=\"accCreated.toggle()\">\r\n <span>\uD83C\uDD95 C\u00E1c \u0111\u01A1n v\u1ECB v\u1EEBa t\u1EA1o</span>\r\n <i class=\"feather-chevron-right core-accordion-rotate\" [class.rotated]=\"accCreated.$open()\"></i>\r\n </header>\r\n\r\n <div class=\"core-accordion-viewport\">\r\n <div class=\"core-accordion-body\">\r\n <div #coreAccordionBody>\r\n <div class=\"oid-token-strip\">\r\n @for (t of $currentTokens(); track $index) {\r\n <dom-entity-token [$token]=\"t\" [$mode]=\"'compact'\" (click)=\"onTokenPicked(t)\">\r\n </dom-entity-token>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n }\r\n\r\n <!-- \uD83C\uDF33 ACCORDION 2: C\u00E2y t\u1ED5 ch\u1EE9c -->\r\n <section class=\"oid-accordion\" coreAccordion [$externalOpen]=\"true\" #accTree=\"coreAccordion\">\r\n <header class=\"core-accordion-header\" (click)=\"accTree.toggle()\">\r\n <span>\uD83C\uDF33 C\u00E2y t\u1ED5 ch\u1EE9c</span>\r\n <i class=\"feather-chevron-right core-accordion-rotate\" [class.rotated]=\"accTree.$open()\"></i>\r\n </header>\r\n\r\n <div class=\"core-accordion-viewport\">\r\n <div class=\"core-accordion-body\">\r\n <div #coreAccordionBody>\r\n <div #treeBody>\r\n <core-tree-reference [$data]=\"MOCK_DATA\" (selected)=\"onTreeItemSelected($event)\">\r\n </core-tree-reference>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n <!-- \u25AB\uFE0F ACCORDION 3: Ngo\u00E0i c\u00E2y t\u1ED5 ch\u1EE9c -->\r\n <section class=\"oid-accordion\" coreAccordion #accOutside=\"coreAccordion\">\r\n <header class=\"core-accordion-header\" (click)=\"accOutside.toggle()\">\r\n <span>\u25AB\uFE0F Ngo\u00E0i c\u00E2y t\u1ED5 ch\u1EE9c</span>\r\n <i class=\"feather-chevron-right core-accordion-rotate\" [class.rotated]=\"accOutside.$open()\"></i>\r\n </header>\r\n\r\n <div class=\"core-accordion-viewport\">\r\n <div class=\"core-accordion-body\">\r\n <div #coreAccordionBody></div>\r\n <div #outsideBody>\r\n <em class=\"muted\">Ch\u01B0a c\u00F3 n\u1ED9i dung</em>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n}", styles: [".dom-oid-factory-container{display:flex;flex-direction:column;gap:8px;position:relative}.dom-oid-factory-container .oid-display-name{position:relative}.dom-oid-factory-container .oid-display-name .icon{display:flex;align-items:center;justify-content:center;width:35px;height:35px;cursor:pointer;position:absolute;right:0;top:0;border-left:1px solid #ced4da;z-index:1}.dom-oid-factory-container .oid-display-name input.form-control-disabled{-webkit-user-select:none;user-select:none}.dom-oid-factory-container .factory-popup{height:0;overflow:hidden;position:absolute;background-color:#fff;width:320px;box-shadow:.4rem 0 2rem #4d2e2e2e;z-index:1;top:35px;transition:height .25s ease-out}.dom-oid-factory-container .factory-popup.open{height:400px}.dom-oid-factory-container .factory-popup .popup-content{padding:15px}.dom-oid-factory-container .factory-popup .popup-content .oid-accordion .core-accordion-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;height:35px}.dom-oid-factory-container .oid-search-input{width:100%;padding:6px 10px;border:1px solid #ccc}.dom-oid-factory-container .oid-tree{max-height:320px;overflow:auto}\n"] }]
29095
29205
  }], ctorParameters: () => [] });
29096
29206
 
29097
29207
  class IntentComposerComponent extends BaseComponent {
@@ -32814,7 +32924,7 @@ class CoreParamControlComponent extends BaseComponent {
32814
32924
  this.ngModelSubscription?.unsubscribe();
32815
32925
  }
32816
32926
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreParamControlComponent, deps: [{ token: MultiLanguageService }, { token: AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
32817
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: CoreParamControlComponent, isStandalone: true, selector: "core-param-control", inputs: { control: "control", enableTimeZoneConverterForDateTimePeriodParameters: "enableTimeZoneConverterForDateTimePeriodParameters" }, host: { listeners: { "window:click": "onWindowClick()" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"core-param-control-container\">\r\n\r\n <!-- START: LABEL SESSION-->\r\n <label [class]=\"'control-label'\" *ngIf=\"control.controlType==='CHECKBOX'\">\r\n </label>\r\n <!-- ('UI.COMMON_FILTER' | translate: lang) + -->\r\n <label *ngIf=\"control.name==='dateFrom'\">\r\n {{\r\n\r\n (control.label | translate: lang) +\r\n ('UI.COMMON_FROM' | translate: lang)\r\n }}\r\n </label>\r\n\r\n <label *ngIf=\"control.name==='dateTo'\">\r\n {{\r\n 'UI.COMMON_TO' | translate: lang\r\n }}\r\n </label>\r\n <label *ngIf=\"control.controlType=='DATEPICKER' && control.name!=='dateFrom' && control.name!=='dateTo'\">\r\n {{ control.label | translate: lang }}\r\n </label>\r\n\r\n <label *ngIf=\"control.controlType!=='CHECKBOX' && control.controlType!=='DATEPICKER' && control.controlType!=='REPORT_FORMAT'\">\r\n {{ control.label | translate: lang }}\r\n </label>\r\n <!-- START: LABEL SESSION-->\r\n\r\n <!-- START: FORM-CONTROL SESSION-->\r\n @switch (control.controlType) {\r\n\r\n @case ('SEEKER') {\r\n @if (control.seekerSourceType==='ORGANIZATION_UNIT_SEEK') {\r\n <core-org-param [(ngModel)]=\"control.ngModel\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-org-param>\r\n }\r\n @else {\r\n <!-- This code works,\r\n To do: Avoid hard-coding such as 'id', 'contractNo' and 300 etc -->\r\n <core-form-control-seeker \r\n [paramMode]=\"true\"\r\n [boundFrom]=\"control.boundFrom || 'id'\"\r\n [shownFrom]=\"control.shownFrom!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [multiMode]=\"control.multiMode!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [getByIdApi]=\"control.getByIdApi!\"\r\n [excludeExistingList]=\"true\"\r\n [multiModeTableHeight]=\"300\" \r\n [placeholder]=\"control.placeholder!\"\r\n [click$]=\"control.click$!\"\r\n [disabledDoubleClick]=\"control.disabledDoubleClick!\"\r\n [(ngModel)]=\"control.ngModel\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\">\r\n </core-form-control-seeker>\r\n }\r\n }\r\n\r\n @case ('TEXTBOX') {\r\n\r\n @if (control.type==='date') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\" useValueAsDate>\r\n }\r\n\r\n @if (control.type==='number') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\" [step]=\"control.step || '1'\">\r\n }\r\n\r\n @if (control.type!=='date' && control.type!=='number') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\">\r\n }\r\n\r\n }\r\n\r\n @case ('CURRENCY') {\r\n <core-currency-input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [disabled]=\"!!control.disabled!\"></core-currency-input>\r\n }\r\n\r\n @case ('CHECKBOX') {\r\n <core-checkbox [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [text]=\"control.label\" [inputValue]=\"control.value\" [disabled]=\"!!control.disabled!\"></core-checkbox>\r\n }\r\n\r\n @case ('DATEPICKER') {\r\n <core-date-picker [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [rangeLimit]=\"control.rangeLimit!\"\r\n [enableTimeZoneConverter]=\"enableTimeZoneConverterForDateTimePeriodParameters\" [disabled]=\"!!control.disabled!\"\r\n [popupAlign]=\"control.popupAlign!\"\r\n [$rangePoint]=\"control.$rangePoint!\"\r\n ></core-date-picker>\r\n }\r\n\r\n @case ('DROPDOWN') {\r\n @if (!!control.dropdownOptions$) {\r\n <core-dropdown [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [paramMode]=\"true\"\r\n [options$]=\"control.dropdownOptions$!\"></core-dropdown>\r\n }\r\n }\r\n\r\n @case ('CHECKLIST') {\r\n @if (!!control.checklistOptions$) {\r\n <core-checklist [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [paramMode]=\"true\"\r\n [options$]=\"control.checklistOptions$!\"></core-checklist>\r\n }\r\n }\r\n\r\n @case ('ORG_PARAM_DROPDOWN') {\r\n <core-org-param-dropdown [accessorMode]=\"control.accessorMode!\" [(ngModel)]=\"control.ngModel\"\r\n [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-org-param-dropdown>\r\n }\r\n\r\n @case ('MONTHSELECTOR') {\r\n <core-month-selector [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [align]=\"'left'\"></core-month-selector>\r\n }\r\n\r\n @case ('YEARSELECTOR') {\r\n <core-year-selector [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [align]=\"'left'\"></core-year-selector>\r\n }\r\n\r\n @case ('REPORT_FORMAT') {\r\n <core-file-format-picker [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-file-format-picker>\r\n }\r\n\r\n }\r\n\r\n</div>", styles: [".core-param-control-container{padding-left:0;font-size:13px}.core-param-control-container label{color:#848484}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: CoreDropdownComponent, selector: "core-dropdown", inputs: ["getByIdObject$", "paramMode", "shownFrom", "options$", "height", "placeholder", "loading", "warningDisable", "clearDisable", "fitHeightWithItemCount", "itemHeight", "optionApiDriven", "optionApi", "optionHttpVerb", "optionHttpPayload", "optionValueFrom", "optionTextFrom", "$disabled"] }, { kind: "component", type: CoreChecklistComponent, selector: "core-checklist", inputs: ["paramMode", "getByIdObject$", "shownFrom", "options$", "height", "placeholder", "loading", "readonly", "disabled"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { kind: "component", type: CoreDatePickerComponent, selector: "core-date-picker", inputs: ["enableTimeZoneConverter", "showPlaceholder", "popupWidth", "popupXPadding", "popupAlign", "rangeLimit", "placeholder", "readonly", "disabled", "$rangePoint"] }, { kind: "component", type: CoreOrgParamComponent, selector: "core-org-param", inputs: ["accessorMode"] }, { kind: "component", type: CoreOrgParamDropdownComponent, selector: "core-org-param-dropdown", inputs: ["accessorMode", "dropdownHeight"] }, { kind: "component", type: CoreMonthSelectorComponent, selector: "core-month-selector", inputs: ["align", "placeholder"], outputs: ["onYearClick"] }, { kind: "component", type: CoreYearSelectorComponent, selector: "core-year-selector", inputs: ["align"], outputs: ["onYearClick"] }, { kind: "component", type: CoreFormControlSeekerComponent, selector: "core-form-control-seeker", inputs: ["title", "showPageHeader", "preDefinedOuterParam$", "preDefinedOuterFilter$", "click$", "getByIdObject$", "getByIdApi", "paramMode", "multiMode", "objectList$", "useTheseColumns", "hideOrgTree", "excludedColumns", "excludeExistingList", "placeholder", "sourceSpaceHeight", "indirectBinding", "bindGridIdTo", "multiModeExtendedColumns", "multiModeExtendedSections", "editBufferData$", "multiModeTableHeight", "multiModeRowHeight", "seekerSourceType", "boundFrom", "shownFrom", "alsoBindTo", "seekerVerifyIgnore", "disabledDoubleClick", "selfEnrichmentApiDriven", "selfEnrichmentApi", "selfEnrichmentHttpVerb", "selfEnrichmentHttpPayload", "selfEnrichmentShownFrom"], outputs: ["onDoubleClick", "selectedDataChange", "fullValueRowChange"] }, { kind: "component", type: CoreFileFormatPickerComponent, selector: "core-file-format-picker" }, { kind: "component", type: CoreCurrencyInputComponent, selector: "core-currency-input", inputs: ["currencySign", "placeholder"], outputs: ["onLeftFocus"] }] }); }
32927
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: CoreParamControlComponent, isStandalone: true, selector: "core-param-control", inputs: { control: "control", enableTimeZoneConverterForDateTimePeriodParameters: "enableTimeZoneConverterForDateTimePeriodParameters" }, host: { listeners: { "window:click": "onWindowClick()" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"core-param-control-container\">\r\n\r\n <!-- START: LABEL SESSION-->\r\n <label [class]=\"'control-label'\" *ngIf=\"control.controlType==='CHECKBOX'\">\r\n </label>\r\n <!-- ('UI.COMMON_FILTER' | translate: lang) + -->\r\n <label *ngIf=\"control.name==='dateFrom'\">\r\n {{\r\n\r\n (control.label | translate: lang) +\r\n ('UI.COMMON_FROM' | translate: lang)\r\n }}\r\n </label>\r\n\r\n <label *ngIf=\"control.name==='dateTo'\">\r\n {{\r\n 'UI.COMMON_TO' | translate: lang\r\n }}\r\n </label>\r\n <label *ngIf=\"control.controlType=='DATEPICKER' && control.name!=='dateFrom' && control.name!=='dateTo'\">\r\n {{ control.label | translate: lang }}\r\n </label>\r\n\r\n <label *ngIf=\"control.controlType!=='CHECKBOX' && control.controlType!=='DATEPICKER' && control.controlType!=='REPORT_FORMAT'\">\r\n {{ control.label | translate: lang }}\r\n </label>\r\n <!-- START: LABEL SESSION-->\r\n\r\n <!-- START: FORM-CONTROL SESSION-->\r\n @switch (control.controlType) {\r\n\r\n @case ('SEEKER') {\r\n @if (control.seekerSourceType==='ORGANIZATION_UNIT_SEEK') {\r\n <core-org-param [(ngModel)]=\"control.ngModel\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-org-param>\r\n }\r\n @else {\r\n <!-- This code works,\r\n To do: Avoid hard-coding such as 'id', 'contractNo' and 300 etc -->\r\n <core-form-control-seeker \r\n [paramMode]=\"true\"\r\n [boundFrom]=\"control.boundFrom || 'id'\"\r\n [shownFrom]=\"control.shownFrom!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [multiMode]=\"control.multiMode!\"\r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [getByIdApi]=\"control.getByIdApi!\"\r\n [excludeExistingList]=\"true\"\r\n [multiModeTableHeight]=\"300\" \r\n [placeholder]=\"control.placeholder!\"\r\n [click$]=\"control.click$!\"\r\n [disabledDoubleClick]=\"control.disabledDoubleClick!\"\r\n [(ngModel)]=\"control.ngModel\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\">\r\n </core-form-control-seeker>\r\n }\r\n }\r\n\r\n @case ('TEXTBOX') {\r\n\r\n @if (control.type==='date') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\" useValueAsDate>\r\n }\r\n\r\n @if (control.type==='number') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\" [step]=\"control.step || '1'\">\r\n }\r\n\r\n @if (control.type!=='date' && control.type!=='number') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\">\r\n }\r\n\r\n }\r\n\r\n @case ('CURRENCY') {\r\n <core-currency-input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [disabled]=\"!!control.disabled!\"></core-currency-input>\r\n }\r\n\r\n @case ('CHECKBOX') {\r\n <core-checkbox [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [text]=\"control.label\" [inputValue]=\"control.value\" [disabled]=\"!!control.disabled!\"></core-checkbox>\r\n }\r\n\r\n @case ('DATEPICKER') {\r\n <core-date-picker [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [rangeLimit]=\"control.rangeLimit!\"\r\n [enableTimeZoneConverter]=\"enableTimeZoneConverterForDateTimePeriodParameters\" [disabled]=\"!!control.disabled!\"\r\n [popupAlign]=\"control.popupAlign!\"\r\n [$rangePoint]=\"control.$rangePoint!\"\r\n ></core-date-picker>\r\n }\r\n\r\n @case ('DROPDOWN') {\r\n @if (!!control.dropdownOptions$) {\r\n <core-dropdown [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [paramMode]=\"true\"\r\n [options$]=\"control.dropdownOptions$!\"></core-dropdown>\r\n }\r\n }\r\n\r\n @case ('CHECKLIST') {\r\n @if (!!control.checklistOptions$) {\r\n <core-checklist [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [paramMode]=\"true\"\r\n [options$]=\"control.checklistOptions$!\"></core-checklist>\r\n }\r\n }\r\n\r\n @case ('ORG_PARAM_DROPDOWN') {\r\n <core-org-param-dropdown [accessorMode]=\"control.accessorMode!\" [(ngModel)]=\"control.ngModel\"\r\n [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-org-param-dropdown>\r\n }\r\n\r\n @case ('MONTHSELECTOR') {\r\n <core-month-selector [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [align]=\"'left'\"></core-month-selector>\r\n }\r\n\r\n @case ('YEARSELECTOR') {\r\n <core-year-selector [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [align]=\"'left'\"></core-year-selector>\r\n }\r\n\r\n @case ('REPORT_FORMAT') {\r\n <core-file-format-picker [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-file-format-picker>\r\n }\r\n\r\n }\r\n\r\n</div>", styles: [".core-param-control-container{padding-left:0;font-size:13px}.core-param-control-container label{color:#848484}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: CoreDropdownComponent, selector: "core-dropdown", inputs: ["getByIdObject$", "paramMode", "shownFrom", "options$", "height", "placeholder", "loading", "warningDisable", "clearDisable", "fitHeightWithItemCount", "itemHeight", "optionApiDriven", "optionApi", "optionHttpVerb", "optionHttpPayload", "optionValueFrom", "optionTextFrom", "$disabled"] }, { kind: "component", type: CoreChecklistComponent, selector: "core-checklist", inputs: ["paramMode", "getByIdObject$", "shownFrom", "options$", "height", "placeholder", "loading", "readonly", "disabled"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { kind: "component", type: CoreDatePickerComponent, selector: "core-date-picker", inputs: ["enableTimeZoneConverter", "showPlaceholder", "popupWidth", "popupXPadding", "popupAlign", "rangeLimit", "placeholder", "readonly", "disabled", "$rangePoint"] }, { kind: "component", type: CoreOrgParamComponent, selector: "core-org-param", inputs: ["accessorMode"] }, { kind: "component", type: CoreOrgParamDropdownComponent, selector: "core-org-param-dropdown", inputs: ["accessorMode", "dropdownHeight"] }, { kind: "component", type: CoreMonthSelectorComponent, selector: "core-month-selector", inputs: ["align", "placeholder"], outputs: ["onYearClick"] }, { kind: "component", type: CoreYearSelectorComponent, selector: "core-year-selector", inputs: ["align"], outputs: ["onYearClick"] }, { kind: "component", type: CoreFormControlSeekerComponent, selector: "core-form-control-seeker", inputs: ["title", "showPageHeader", "preDefinedOuterParam$", "preDefinedOuterFilter$", "click$", "getByIdObject$", "getByIdApi", "paramMode", "multiMode", "objectList$", "useTheseColumns", "hideOrgTree", "excludedColumns", "excludeExistingList", "placeholder", "sourceSpaceHeight", "indirectBinding", "bindGridIdTo", "multiModeExtendedColumns", "multiModeExtendedSections", "editBufferData$", "multiModeTableHeight", "multiModeRowHeight", "seekerSourceType", "boundFrom", "shownFrom", "alsoBindTo", "seekerVerifyIgnore", "disabledDoubleClick", "selfEnrichmentApiDriven", "selfEnrichmentApi", "selfEnrichmentHttpVerb", "selfEnrichmentHttpPayload", "selfEnrichmentShownFrom"], outputs: ["onDoubleClick", "selectedDataChange", "fullValueRowChange"] }, { kind: "component", type: CoreFileFormatPickerComponent, selector: "core-file-format-picker" }, { kind: "component", type: CoreCurrencyInputComponent, selector: "core-currency-input", inputs: ["currencySign", "placeholder"], outputs: ["onLeftFocus"] }] }); }
32818
32928
  }
32819
32929
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreParamControlComponent, decorators: [{
32820
32930
  type: Component,
@@ -32833,7 +32943,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
32833
32943
  CoreFormControlSeekerComponent,
32834
32944
  CoreFileFormatPickerComponent,
32835
32945
  CoreCurrencyInputComponent
32836
- ], template: "<div class=\"core-param-control-container\">\r\n\r\n <!-- START: LABEL SESSION-->\r\n <label [class]=\"'control-label'\" *ngIf=\"control.controlType==='CHECKBOX'\">\r\n </label>\r\n <!-- ('UI.COMMON_FILTER' | translate: lang) + -->\r\n <label *ngIf=\"control.name==='dateFrom'\">\r\n {{\r\n\r\n (control.label | translate: lang) +\r\n ('UI.COMMON_FROM' | translate: lang)\r\n }}\r\n </label>\r\n\r\n <label *ngIf=\"control.name==='dateTo'\">\r\n {{\r\n 'UI.COMMON_TO' | translate: lang\r\n }}\r\n </label>\r\n <label *ngIf=\"control.controlType=='DATEPICKER' && control.name!=='dateFrom' && control.name!=='dateTo'\">\r\n {{ control.label | translate: lang }}\r\n </label>\r\n\r\n <label *ngIf=\"control.controlType!=='CHECKBOX' && control.controlType!=='DATEPICKER' && control.controlType!=='REPORT_FORMAT'\">\r\n {{ control.label | translate: lang }}\r\n </label>\r\n <!-- START: LABEL SESSION-->\r\n\r\n <!-- START: FORM-CONTROL SESSION-->\r\n @switch (control.controlType) {\r\n\r\n @case ('SEEKER') {\r\n @if (control.seekerSourceType==='ORGANIZATION_UNIT_SEEK') {\r\n <core-org-param [(ngModel)]=\"control.ngModel\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-org-param>\r\n }\r\n @else {\r\n <!-- This code works,\r\n To do: Avoid hard-coding such as 'id', 'contractNo' and 300 etc -->\r\n <core-form-control-seeker \r\n [paramMode]=\"true\"\r\n [boundFrom]=\"control.boundFrom || 'id'\"\r\n [shownFrom]=\"control.shownFrom!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [multiMode]=\"control.multiMode!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [getByIdApi]=\"control.getByIdApi!\"\r\n [excludeExistingList]=\"true\"\r\n [multiModeTableHeight]=\"300\" \r\n [placeholder]=\"control.placeholder!\"\r\n [click$]=\"control.click$!\"\r\n [disabledDoubleClick]=\"control.disabledDoubleClick!\"\r\n [(ngModel)]=\"control.ngModel\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\">\r\n </core-form-control-seeker>\r\n }\r\n }\r\n\r\n @case ('TEXTBOX') {\r\n\r\n @if (control.type==='date') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\" useValueAsDate>\r\n }\r\n\r\n @if (control.type==='number') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\" [step]=\"control.step || '1'\">\r\n }\r\n\r\n @if (control.type!=='date' && control.type!=='number') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\">\r\n }\r\n\r\n }\r\n\r\n @case ('CURRENCY') {\r\n <core-currency-input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [disabled]=\"!!control.disabled!\"></core-currency-input>\r\n }\r\n\r\n @case ('CHECKBOX') {\r\n <core-checkbox [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [text]=\"control.label\" [inputValue]=\"control.value\" [disabled]=\"!!control.disabled!\"></core-checkbox>\r\n }\r\n\r\n @case ('DATEPICKER') {\r\n <core-date-picker [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [rangeLimit]=\"control.rangeLimit!\"\r\n [enableTimeZoneConverter]=\"enableTimeZoneConverterForDateTimePeriodParameters\" [disabled]=\"!!control.disabled!\"\r\n [popupAlign]=\"control.popupAlign!\"\r\n [$rangePoint]=\"control.$rangePoint!\"\r\n ></core-date-picker>\r\n }\r\n\r\n @case ('DROPDOWN') {\r\n @if (!!control.dropdownOptions$) {\r\n <core-dropdown [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [paramMode]=\"true\"\r\n [options$]=\"control.dropdownOptions$!\"></core-dropdown>\r\n }\r\n }\r\n\r\n @case ('CHECKLIST') {\r\n @if (!!control.checklistOptions$) {\r\n <core-checklist [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [paramMode]=\"true\"\r\n [options$]=\"control.checklistOptions$!\"></core-checklist>\r\n }\r\n }\r\n\r\n @case ('ORG_PARAM_DROPDOWN') {\r\n <core-org-param-dropdown [accessorMode]=\"control.accessorMode!\" [(ngModel)]=\"control.ngModel\"\r\n [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-org-param-dropdown>\r\n }\r\n\r\n @case ('MONTHSELECTOR') {\r\n <core-month-selector [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [align]=\"'left'\"></core-month-selector>\r\n }\r\n\r\n @case ('YEARSELECTOR') {\r\n <core-year-selector [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [align]=\"'left'\"></core-year-selector>\r\n }\r\n\r\n @case ('REPORT_FORMAT') {\r\n <core-file-format-picker [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-file-format-picker>\r\n }\r\n\r\n }\r\n\r\n</div>", styles: [".core-param-control-container{padding-left:0;font-size:13px}.core-param-control-container label{color:#848484}\n"] }]
32946
+ ], template: "<div class=\"core-param-control-container\">\r\n\r\n <!-- START: LABEL SESSION-->\r\n <label [class]=\"'control-label'\" *ngIf=\"control.controlType==='CHECKBOX'\">\r\n </label>\r\n <!-- ('UI.COMMON_FILTER' | translate: lang) + -->\r\n <label *ngIf=\"control.name==='dateFrom'\">\r\n {{\r\n\r\n (control.label | translate: lang) +\r\n ('UI.COMMON_FROM' | translate: lang)\r\n }}\r\n </label>\r\n\r\n <label *ngIf=\"control.name==='dateTo'\">\r\n {{\r\n 'UI.COMMON_TO' | translate: lang\r\n }}\r\n </label>\r\n <label *ngIf=\"control.controlType=='DATEPICKER' && control.name!=='dateFrom' && control.name!=='dateTo'\">\r\n {{ control.label | translate: lang }}\r\n </label>\r\n\r\n <label *ngIf=\"control.controlType!=='CHECKBOX' && control.controlType!=='DATEPICKER' && control.controlType!=='REPORT_FORMAT'\">\r\n {{ control.label | translate: lang }}\r\n </label>\r\n <!-- START: LABEL SESSION-->\r\n\r\n <!-- START: FORM-CONTROL SESSION-->\r\n @switch (control.controlType) {\r\n\r\n @case ('SEEKER') {\r\n @if (control.seekerSourceType==='ORGANIZATION_UNIT_SEEK') {\r\n <core-org-param [(ngModel)]=\"control.ngModel\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-org-param>\r\n }\r\n @else {\r\n <!-- This code works,\r\n To do: Avoid hard-coding such as 'id', 'contractNo' and 300 etc -->\r\n <core-form-control-seeker \r\n [paramMode]=\"true\"\r\n [boundFrom]=\"control.boundFrom || 'id'\"\r\n [shownFrom]=\"control.shownFrom!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [multiMode]=\"control.multiMode!\"\r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [getByIdApi]=\"control.getByIdApi!\"\r\n [excludeExistingList]=\"true\"\r\n [multiModeTableHeight]=\"300\" \r\n [placeholder]=\"control.placeholder!\"\r\n [click$]=\"control.click$!\"\r\n [disabledDoubleClick]=\"control.disabledDoubleClick!\"\r\n [(ngModel)]=\"control.ngModel\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\">\r\n </core-form-control-seeker>\r\n }\r\n }\r\n\r\n @case ('TEXTBOX') {\r\n\r\n @if (control.type==='date') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\" useValueAsDate>\r\n }\r\n\r\n @if (control.type==='number') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\" [step]=\"control.step || '1'\">\r\n }\r\n\r\n @if (control.type!=='date' && control.type!=='number') {\r\n <input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [type]=\"control.type\" [disabled]=\"!!control.disabled!\" class=\"form-control\">\r\n }\r\n\r\n }\r\n\r\n @case ('CURRENCY') {\r\n <core-currency-input [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [disabled]=\"!!control.disabled!\"></core-currency-input>\r\n }\r\n\r\n @case ('CHECKBOX') {\r\n <core-checkbox [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [text]=\"control.label\" [inputValue]=\"control.value\" [disabled]=\"!!control.disabled!\"></core-checkbox>\r\n }\r\n\r\n @case ('DATEPICKER') {\r\n <core-date-picker [(ngModel)]=\"control.ngModel\" (ngModelChange)=\"control.ngModelChange(control.name, $event)\"\r\n [rangeLimit]=\"control.rangeLimit!\"\r\n [enableTimeZoneConverter]=\"enableTimeZoneConverterForDateTimePeriodParameters\" [disabled]=\"!!control.disabled!\"\r\n [popupAlign]=\"control.popupAlign!\"\r\n [$rangePoint]=\"control.$rangePoint!\"\r\n ></core-date-picker>\r\n }\r\n\r\n @case ('DROPDOWN') {\r\n @if (!!control.dropdownOptions$) {\r\n <core-dropdown [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [paramMode]=\"true\"\r\n [options$]=\"control.dropdownOptions$!\"></core-dropdown>\r\n }\r\n }\r\n\r\n @case ('CHECKLIST') {\r\n @if (!!control.checklistOptions$) {\r\n <core-checklist [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [paramMode]=\"true\"\r\n [options$]=\"control.checklistOptions$!\"></core-checklist>\r\n }\r\n }\r\n\r\n @case ('ORG_PARAM_DROPDOWN') {\r\n <core-org-param-dropdown [accessorMode]=\"control.accessorMode!\" [(ngModel)]=\"control.ngModel\"\r\n [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-org-param-dropdown>\r\n }\r\n\r\n @case ('MONTHSELECTOR') {\r\n <core-month-selector [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [align]=\"'left'\"></core-month-selector>\r\n }\r\n\r\n @case ('YEARSELECTOR') {\r\n <core-year-selector [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\" [align]=\"'left'\"></core-year-selector>\r\n }\r\n\r\n @case ('REPORT_FORMAT') {\r\n <core-file-format-picker [(ngModel)]=\"control.ngModel\" [disabled]=\"!!control.disabled!\"\r\n (ngModelChange)=\"control.ngModelChange(control.name, $event)\"></core-file-format-picker>\r\n }\r\n\r\n }\r\n\r\n</div>", styles: [".core-param-control-container{padding-left:0;font-size:13px}.core-param-control-container label{color:#848484}\n"] }]
32837
32947
  }], ctorParameters: () => [{ type: MultiLanguageService }, { type: AlertService }], propDecorators: { control: [{
32838
32948
  type: Input
32839
32949
  }], enableTimeZoneConverterForDateTimePeriodParameters: [{
@@ -34954,7 +35064,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
34954
35064
  const hrmSchemaRoutes = [
34955
35065
  {
34956
35066
  path: '',
34957
- loadComponent: () => import('./ngx-histaff-alpha-hrm-schema.component-D1uTCDQS.mjs').then(m => m.HrmSchemaComponent)
35067
+ loadComponent: () => import('./ngx-histaff-alpha-hrm-schema.component-Bi7lnbDv.mjs').then(m => m.HrmSchemaComponent)
34958
35068
  }
34959
35069
  ];
34960
35070
 
@@ -37127,7 +37237,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
37127
37237
  const simpleChatRoutes = [
37128
37238
  {
37129
37239
  path: '',
37130
- loadComponent: () => import('./ngx-histaff-alpha-simple-chat.component-CEVRHmjv.mjs').then(m => m.SimpleChatComponent)
37240
+ loadComponent: () => import('./ngx-histaff-alpha-simple-chat.component-DY0P0t1h.mjs').then(m => m.SimpleChatComponent)
37131
37241
  }
37132
37242
  ];
37133
37243
 
@@ -37793,7 +37903,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
37793
37903
  const coreSysActionRoutes = [
37794
37904
  {
37795
37905
  path: "",
37796
- loadComponent: () => import('./ngx-histaff-alpha-core-sys-action.component-DxlfFjYx.mjs').then(m => m.CoreSysActionComponent),
37906
+ loadComponent: () => import('./ngx-histaff-alpha-core-sys-action.component-DUjIyJ6_.mjs').then(m => m.CoreSysActionComponent),
37797
37907
  children: [
37798
37908
  {
37799
37909
  path: ":id",
@@ -39186,11 +39296,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
39186
39296
  const sysSmtpClientRoutes = [
39187
39297
  {
39188
39298
  path: '',
39189
- loadComponent: () => import('./ngx-histaff-alpha-sys-smtp-client.component-cHZjBAVj.mjs').then(m => m.SysSmtpClientComponent),
39299
+ loadComponent: () => import('./ngx-histaff-alpha-sys-smtp-client.component-DfX7Ldni.mjs').then(m => m.SysSmtpClientComponent),
39190
39300
  children: [
39191
39301
  {
39192
39302
  path: ':id',
39193
- loadComponent: () => import('./ngx-histaff-alpha-sys-smtp-client-edit.component-GnVcOm23.mjs').then(m => m.SysSmtpClientEditComponent),
39303
+ loadComponent: () => import('./ngx-histaff-alpha-sys-smtp-client-edit.component-B8kVpHJS.mjs').then(m => m.SysSmtpClientEditComponent),
39194
39304
  outlet: 'corePageListAux'
39195
39305
  }
39196
39306
  ]
@@ -40376,11 +40486,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
40376
40486
  const coreDocGenRoutes = [
40377
40487
  {
40378
40488
  path: 'template-list',
40379
- loadComponent: () => import('./ngx-histaff-alpha-template-list.component-Wloctfpt.mjs').then(m => m.TemplateListComponent),
40489
+ loadComponent: () => import('./ngx-histaff-alpha-template-list.component-BOb3Yg1E.mjs').then(m => m.TemplateListComponent),
40380
40490
  },
40381
40491
  {
40382
40492
  path: ":id",
40383
- loadComponent: () => import('./ngx-histaff-alpha-core-template-editor.component-o1melxIr.mjs').then(m => m.CoreTemplateEditorComponent),
40493
+ loadComponent: () => import('./ngx-histaff-alpha-core-template-editor.component-BEbvo3lg.mjs').then(m => m.CoreTemplateEditorComponent),
40384
40494
  canDeactivate: [CanDeactivateGuard]
40385
40495
  },
40386
40496
  {
@@ -40409,7 +40519,7 @@ const coreFormDesignRoutes = [
40409
40519
  },
40410
40520
  {
40411
40521
  path: ':id',
40412
- loadComponent: () => import('./ngx-histaff-alpha-core-form-design.component-B7BWL6WV.mjs').then(m => m.CoreFormDesignComponent)
40522
+ loadComponent: () => import('./ngx-histaff-alpha-core-form-design.component-DH5sZTvG.mjs').then(m => m.CoreFormDesignComponent)
40413
40523
  }
40414
40524
  ];
40415
40525
 
@@ -41320,7 +41430,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
41320
41430
  const coreNavigationTrackerRoutes = [
41321
41431
  {
41322
41432
  path: '',
41323
- loadComponent: () => import('./ngx-histaff-alpha-tracker-studio.component-DMujJuQP.mjs').then(m => m.TrackerStudioComponent)
41433
+ loadComponent: () => import('./ngx-histaff-alpha-tracker-studio.component-C_cWZlam.mjs').then(m => m.TrackerStudioComponent)
41324
41434
  }
41325
41435
  ];
41326
41436
 
@@ -44423,33 +44533,33 @@ const coreWorkflowRoutes = [
44423
44533
  {
44424
44534
  path: 'form-assign/:id',
44425
44535
  outlet: "formAssignAux",
44426
- loadComponent: () => import('./ngx-histaff-alpha-wf-form-assign.component-COVOPuyc.mjs').then(m => m.WfFormAssignComponent),
44536
+ loadComponent: () => import('./ngx-histaff-alpha-wf-form-assign.component-ZF9PfaPn.mjs').then(m => m.WfFormAssignComponent),
44427
44537
  canDeactivate: [CanDeactivateGuard]
44428
44538
  }
44429
44539
  ]
44430
44540
  },
44431
44541
  {
44432
44542
  path: 'global-config',
44433
- loadComponent: () => import('./ngx-histaff-alpha-wf-global-config.component-CakiKMEP.mjs').then(m => m.WfGlobalConfigComponent)
44543
+ loadComponent: () => import('./ngx-histaff-alpha-wf-global-config.component-Cm0GQj7Z.mjs').then(m => m.WfGlobalConfigComponent)
44434
44544
  },
44435
44545
  {
44436
44546
  path: 'db-settings',
44437
- loadComponent: () => import('./ngx-histaff-alpha-db-settings.component-BHuQH58t.mjs').then(m => m.DbSettingsComponent)
44547
+ loadComponent: () => import('./ngx-histaff-alpha-db-settings.component-sVYA-jqy.mjs').then(m => m.DbSettingsComponent)
44438
44548
  },
44439
44549
  {
44440
44550
  path: 'workflow-consume',
44441
- loadComponent: () => import('./ngx-histaff-alpha-core-workflow-consume.component-D_FTaqQo.mjs').then(m => m.CoreWorkflowConsumeComponent),
44551
+ loadComponent: () => import('./ngx-histaff-alpha-core-workflow-consume.component-C5DVizrr.mjs').then(m => m.CoreWorkflowConsumeComponent),
44442
44552
  children: [
44443
44553
  {
44444
44554
  path: ':id',
44445
44555
  outlet: "workflowConsume",
44446
- loadComponent: () => import('./ngx-histaff-alpha-live-form.component-vNa45nJi.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
44556
+ loadComponent: () => import('./ngx-histaff-alpha-live-form.component-k6sE0ghR.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
44447
44557
  }
44448
44558
  ]
44449
44559
  },
44450
44560
  {
44451
44561
  path: 'workflow-consume/:id',
44452
- loadComponent: () => import('./ngx-histaff-alpha-live-form.component-vNa45nJi.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
44562
+ loadComponent: () => import('./ngx-histaff-alpha-live-form.component-k6sE0ghR.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
44453
44563
  },
44454
44564
  {
44455
44565
  path: 'workflow-group-edit/:id',
@@ -44459,21 +44569,21 @@ const coreWorkflowRoutes = [
44459
44569
  },
44460
44570
  {
44461
44571
  path: 'design/:id',
44462
- loadChildren: () => import('./ngx-histaff-alpha-design-wrapper.route-COuGfx8m.mjs').then(m => m.wfDesignWrapperRoutes),
44572
+ loadChildren: () => import('./ngx-histaff-alpha-design-wrapper.route-CHcysARk.mjs').then(m => m.wfDesignWrapperRoutes),
44463
44573
  },
44464
44574
  ]
44465
44575
  },
44466
44576
  {
44467
44577
  path: 'react/:id',
44468
- loadComponent: () => import('./ngx-histaff-alpha-wf-instance-step-react.component-DuUxqAnf.mjs').then(m => m.WfInstanceStepReactComponent)
44578
+ loadComponent: () => import('./ngx-histaff-alpha-wf-instance-step-react.component-hN4UH2TP.mjs').then(m => m.WfInstanceStepReactComponent)
44469
44579
  },
44470
44580
  {
44471
44581
  path: 'status/:id',
44472
- loadComponent: () => import('./ngx-histaff-alpha-wf-instance-status.component-DdzM44wT.mjs').then(m => m.WfInstanceStatusComponent)
44582
+ loadComponent: () => import('./ngx-histaff-alpha-wf-instance-status.component-CM5SqfNa.mjs').then(m => m.WfInstanceStatusComponent)
44473
44583
  },
44474
44584
  {
44475
44585
  path: 'lab',
44476
- loadComponent: () => import('./ngx-histaff-alpha-wf-lab.component-7125SG5f.mjs').then(m => m.WfLabComponent)
44586
+ loadComponent: () => import('./ngx-histaff-alpha-wf-lab.component-DyDfYXJG.mjs').then(m => m.WfLabComponent)
44477
44587
  }
44478
44588
  ];
44479
44589
 
@@ -47082,4 +47192,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
47082
47192
  */
47083
47193
 
47084
47194
  export { READONLY_WORKFLOW_FIELDS as $, AppService as A, BaseComponent as B, ChatService as C, DragReorderDirective as D, EnumFormBaseContolType as E, FullscreenModalLoaderComponent as F, DomService as G, HtmlTooltipDirective as H, ImageErrorResolverDirective as I, EnumActorSourceType as J, CoreParamControlComponent as K, CoreRadioGroupComponent as L, MultiLanguageService as M, GptService as N, CoreRuleTreeService as O, CoreRuleTreeComponent as P, CoreStickerCollectionComponent as Q, ApplicationHelpService as R, StringHtmlPipe as S, TooltipDirective as T, HotKeysDirective as U, CoreDatetimeService as V, EnumCorePageEditMode as W, CoreFormComponent as X, NavigatorService as Y, JsonService as Z, EnumCoreButtonVNSCode as _, AppConfigService as a, CheckForUpdateService as a$, noneAutoClosedAlertOptions as a0, CoreButtonGroupVnsComponent as a1, CoreDropdownComponent as a2, EnumFilterOperator as a3, CoreDomDecisionEditorComponent as a4, CoreControlNoFormArrayComponent as a5, EnumFormDesignMode as a6, CoreControlComponent as a7, JsonSafePipe as a8, CoreChecklistComponent as a9, EnumDragType as aA, EnumErrorType as aB, EnumIconClass as aC, EnumProfileInfoSector as aD, EnumSignalRType as aE, EnumSortDirection as aF, EnumStyleButtonClass as aG, CanActivateFunctionUrlMapperGuard as aH, InitializationCanActivateFn as aI, InitializationCanMatchFn as aJ, httpInterceptorProviders as aK, InterceptorSkipHeader as aL, appTypeInterceptor as aM, baseUrlInterceptor as aN, authInterceptor as aO, graphInterceptor as aP, tokenInterceptor as aQ, responseInterceptor as aR, timeZoneInterceptor as aS, cachingInterceptor as aT, langInterceptor as aU, OnlineUsersComponent as aV, ActionService as aW, AppInitializationService as aX, AuthService as aY, CacheService as aZ, EnumSwUpdateVersionUpdatesEventType as a_, CoreFormControlSeekerComponent as aa, CoreAttachmentComponent as ab, CoreDatePickerComponent as ac, CoreMonthSelectorComponent as ad, CoreCurrencyInputComponent as ae, EnumImageResolverType as af, NormalizeHumanNamePipe as ag, CoreIosSwitcherComponent as ah, SunnyRotatingComponent as ai, MapAppdemoToServerPipePipe as aj, MapAttachmentToServerPipe as ak, MapNewsfeedMediaToServerPipe as al, UploadedFilenameCutoffPipe as am, DialogStateComponent as an, FooterComponent as ao, RightchatComponent as ap, WaittingScreenComponent as aq, longAlertOptions as ar, attachmentOptions as as, CORE_VNS_BUTTONS as at, defaultPaging as au, DESKTOP_SCREEN_HEDER_HEIGHT as av, MOBILE_SCREEN_HEDER_HEIGHT as aw, themeBlue as ax, DATE_VALUE_ACCESSOR as ay, DateValueAccessor as az, AlertService as b, InMemoryComponent as b$, EnumDeviceType as b0, EnumBrowserType as b1, EnumOsType as b2, ClientService as b3, CommonHttpRequestService as b4, TLA_CONFIG as b5, ConfigService as b6, CoreLocalStorageService as b7, CoreTableService as b8, DndService as b9, EnumSsrsExpressExportFormat as bA, SsrsExpressService as bB, StatisticService as bC, StatisticAuthService as bD, SysMenuService as bE, TimeSheetService as bF, TopicPermissionService as bG, TopicTreeService as bH, UploadedFileService as bI, UrlService as bJ, UserActivityService as bK, EvaluateDialogService as bL, EnumWorkScheduleViewMode as bM, WorkShiftDndService as bN, AtShiftPatternComponent as bO, AtShiftPatternApplyComponent as bP, AtShiftPatternEditComponent as bQ, AtWorksignComponent as bR, AtWorksignService as bS, FunctionComponent as bT, IndividualScheduleApplyComponent as bU, FunctionEditComponent as bV, FunctionIgnoreComponent as bW, FunctionIgnoreEditComponent as bX, GroupFunctionComponent as bY, GroupFunctionEditComponent as bZ, hrmSchemaRoutes as b_, DocxMergeService as ba, FilterKitService as bb, GrpcService as bc, HeaderService as bd, HistoryService as be, HttpErrorHandler as bf, HubConnectionService as bg, IpServiceService as bh, LayoutService as bi, LiquidJsService as bj, MapService as bk, MenuService as bl, MessageService as bm, ModalService as bn, OrganizationService as bo, PkceService as bp, PositionTransferService as bq, EnumNotificationDir as br, NotificationActionType as bs, PushNotificationService as bt, RandomAvatarService as bu, RequestCache as bv, RequestCacheWithMap as bw, ResponseService as bx, RoutingService as by, EnumSsrsExpressFileExtension as bz, CoreTerminalSpinnerComponent as c, CoreTableComponent as c$, LanguageComponent as c0, LanguageEditComponent as c1, MenuComponent as c2, MenuEditComponent as c3, MutationLogComponent as c4, MutationViewComponent as c5, PaSalaryPolicyComponent as c6, PaSalaryPolicyEditComponent as c7, PortalRouteComponent as c8, ScheduleOverviewComponent as c9, ButtonGroupModule as cA, ButtonGroupService as cB, ButtonGroupComponent as cC, EnumButtonCaptionCode as cD, CoreButtonComponent as cE, CoreAccordionComponent as cF, CoreAccordionService as cG, CoreActiveUserCountComponent as cH, NewlyCreatedTokenService as cI, CoreApiProgressComponent as cJ, CoreButtonGroupComponent as cK, EnumCoreButtonCode as cL, ActionSvgEditComponent as cM, CoreButtonGroupService as cN, CoreButtonVnsComponent as cO, CoreCommonParamKitComponent as cP, CoreCompareDbPipelineComponent as cQ, CoreCompositionState as cR, CoreCompositionService as cS, CoreCompositionComponent as cT, CoreConfirmDialogComponent as cU, ConfirmDialogStateComponent as cV, CoreLazyMountComponent as cW, CoreRootMenuItemPickerComponent as cX, CoreRootMenuItemPickerService as cY, ECoreTableToolCode as cZ, ECoreTableToolClass as c_, simpleChatRoutes as ca, PortalRouteEditComponent as cb, SysOtherListComponent as cc, SysOtherListEditComponent as cd, SysOtherListTypeComponent as ce, SysOtherListTypeEditComponent as cf, coreSysActionRoutes as cg, SysActionComponent as ch, SysActionEditComponent as ci, SysFunctionActionComponent as cj, SysFunctionActionEditComponent as ck, SysFunctionActionMapperComponent as cl, SysFunctionUrlMapperComponent as cm, FunctionEditService as cn, SysModuleComponent as co, SysModuleEditComponent as cp, SysRouteAccessComponent as cq, sysSmtpClientRoutes as cr, liner_to_nested_array_script as cs, blob_to_base64_script as ct, AlertComponent as cu, EnumAlertType as cv, IAlertOptions as cw, AnimatedTextService as cx, AnimatedTextComponent as cy, BaseDropdownComponent as cz, CorePageHeaderComponent as d, CorePageListContentComponent as d$, CoreContractSeekerComponent as d0, CoreControlNoGridBufferComponent as d1, CoreControlNoSeekerComponent as d2, coreDocGenRoutes as d3, CoreDocgenToolbarComponent as d4, CoreEmployeeScheduleComponent as d5, CoreEmployeeSeekerComponent as d6, EnumCoreFileUploaderType as d7, CoreFileUploaderComponent as d8, CoreFilterHubComponent as d9, CoreListLazyComponent as dA, CoreLoadingSurfaceComponent as dB, CoreMccComponent as dC, CoreMonthPickerComponent as dD, CoreNavigationTrackerComponent as dE, coreNavigationTrackerRoutes as dF, CoreOauthCallbackComponent as dG, CoreOauthCallbackOffice365Component as dH, EnumCoreOrgTreeaAccessorMode as dI, EnumCoreOrgTreeaSearchMode as dJ, CoreOrgTreeComponent as dK, CoreOrgTreeState as dL, CoreOrgTreeService as dM, CoreOrgUnitSeekerComponent as dN, CoreOrgchartflexComponent as dO, CARD_COLORS as dP, CoreOrgchartflexWrapperComponent as dQ, coreOrgchartflexRoutes as dR, CoreOrgParamComponent as dS, EnumCorePageEditBootstrapClass as dT, EnumCorePageEditFieldType as dU, CorePageEditService as dV, CorePageEditLiteComponent as dW, CorePageEditTabComponent as dX, EnumExType as dY, CorePageListService as dZ, CorePageListState as d_, CoreFilterHubService as da, ControlBase as db, Textbox as dc, CoreControlService as dd, CustomValidators as de, URL_PATTERN as df, coreFormDesignRoutes as dg, CoreFormTabComponent as dh, CoreFormLiteComponent as di, CoreFormControlBaseComponent as dj, EnumCoreSeekerColumnJob as dk, EnumCoreSeekerColumnStaffProfile as dl, EnumCoreSeekerColumnContract as dm, EnumCoreSeekerColumnWorking as dn, EnumCoreSeekerColumnWage as dp, EnumCoreSeekerColumnPosition as dq, EnumCoreSeekerColumnPositionConcurrent as dr, EnumCoreSeekerColumnAutoForm as ds, SeekerService as dt, CoreGridBufferComponent as du, CoreHeaderParamsComponent as dv, CoreHelperComponent as dw, CoreLineComponent as dx, CoreLiquidWysiwygComponent as dy, CoreListComponent as dz, TranslatePipe as e, PageTitleComponent as e$, EnumCoreViewItemType as e0, CorePageViewComponent as e1, CorePaginationComponent as e2, CorePaginationFullComponent as e3, CorePaginationFullService as e4, CoreFileFormatPickerComponent as e5, CorePermissionService as e6, EnumPermissionObjectType as e7, CorePermissionComponent as e8, CorePermissionActionsComponent as e9, EnumCoreTreeGridEditMode as eA, CoreTreeGridComponent as eB, CoreTreeReferenceComponent as eC, CoreWageSeekerComponent as eD, CoreWorkingSeekerComponent as eE, coreWorkflowRoutes as eF, CoreWorkflowBuilderComponent as eG, CoreWorkflowGroupEditComponent as eH, CoreYearPickerComponent as eI, CoreYearSelectorComponent as eJ, EnumCoreD3ScaleType as eK, CoreD3Service as eL, CorePieComponent as eM, CoreScatterPlotComponent as eN, EnumHrComparisonCode as eO, EnumICoreStatisticWidgetDataType as eP, CoreStatisticWidgetComponent as eQ, DecisionComponent as eR, EvaluateDialogComponent as eS, HuconcurrentlyComponent as eT, JobComponent as eU, LanguageChangerComponent as eV, DEFAULT_SVG as eW, ItemComponent as eX, NavigatorComponent as eY, OtpInputComponent as eZ, OtpInputService as e_, CorePositionConcurrentSeekerComponent as ea, CorePositionSeekerComponent as eb, CoreQrcodeComponent as ec, EnumOparator as ed, CoreQueryBuilderComponent as ee, CoreReducerIconComponent as ef, CoreRotatingTextComponent as eg, CoreRouteAccumulatorComponent as eh, CoreRoutingHistoryComponent as ei, CoreSalaryPolicyPickerComponent as ej, CoreScrollComponent as ek, CoreScrollLazyComponent as el, CoreSeenByComponent as em, CoreShiftCardComponent as en, CoreShiftCellComponent as eo, CoreShiftCollectionComponent as ep, CoreShiftStickerComponent as eq, STICKER_COLOR_SCHEMA as er, CoreSubFormGroupComponent as es, CoreTabListComponent as et, CoreTagsComponent as eu, CoreTopicPickerComponent as ev, EnumCoreArticleCategoryTreeaAccessorMode as ew, CoreTopicTreeComponent as ex, CoreTimezoneComponent as ey, CoreTreeComponent as ez, CorePageListComponent as f, PaginationComponent as f0, FilterPipe as f1, normalizeHumanName as f2, PositionComponent as f3, PositionEditService as f4, FileService as f5, LongTaskService as f6, EnumRecursiveFields as f7, RecursiveService as f8, StringService as f9, UnicodeService as fa, StaffProfileComponent as fb, ThreedotsComponent as fc, TooltipComponent as fd, UserActivityComponent as fe, WageComponent as ff, tooltip_directive as fg, coreStickerCollection_component as fh, dragReorder_directive as fi, CoreStatusStickerComponent as g, BaseEditComponent as h, DialogService as i, CorePageEditComponent as j, EnumCoreTablePipeType as k, CoreCheckboxComponent as l, CoreTabsComponent as m, CoreWorkflowService as n, EnumCoreFormControlSeekerSourceType as o, CoreFormService as p, DbService as q, AiHintForColumnComponent as r, CoreWorkflowListComponent as s, CanDeactivateGuard as t, MapAvatarToServerPipe as u, TableCellPipe as v, alertOptions as w, SocketService as x, CoreFormDesignService as y, EnumWorkflowStepType as z };
47085
- //# sourceMappingURL=ngx-histaff-alpha-ngx-histaff-alpha-DRWZfDrq.mjs.map
47195
+ //# sourceMappingURL=ngx-histaff-alpha-ngx-histaff-alpha-CcOj03WE.mjs.map