ngx-histaff-alpha 6.9.4 → 6.9.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 (65) hide show
  1. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-Dj3Pj6v7.mjs → ngx-histaff-alpha-ai-hint-for-table.component-C9Si0NIJ.mjs} +2 -2
  2. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-Dj3Pj6v7.mjs.map → ngx-histaff-alpha-ai-hint-for-table.component-C9Si0NIJ.mjs.map} +1 -1
  3. package/fesm2022/{ngx-histaff-alpha-core-form-design.component-CfGdP-n6.mjs → ngx-histaff-alpha-core-form-design.component-Fyu8eatJ.mjs} +9 -9
  4. package/fesm2022/{ngx-histaff-alpha-core-form-design.component-CfGdP-n6.mjs.map → ngx-histaff-alpha-core-form-design.component-Fyu8eatJ.mjs.map} +1 -1
  5. package/fesm2022/{ngx-histaff-alpha-core-sys-action.component-DfjHi-Kw.mjs → ngx-histaff-alpha-core-sys-action.component-BaHW5XGx.mjs} +3 -3
  6. package/fesm2022/{ngx-histaff-alpha-core-sys-action.component-DfjHi-Kw.mjs.map → ngx-histaff-alpha-core-sys-action.component-BaHW5XGx.mjs.map} +1 -1
  7. package/fesm2022/{ngx-histaff-alpha-core-template-editor.component-C97pByfs.mjs → ngx-histaff-alpha-core-template-editor.component-BfbamH5H.mjs} +2 -2
  8. package/fesm2022/{ngx-histaff-alpha-core-template-editor.component-C97pByfs.mjs.map → ngx-histaff-alpha-core-template-editor.component-BfbamH5H.mjs.map} +1 -1
  9. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-Dbluw-H5.mjs → ngx-histaff-alpha-core-toast-loading.component-UyPKutDs.mjs} +2 -2
  10. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-Dbluw-H5.mjs.map → ngx-histaff-alpha-core-toast-loading.component-UyPKutDs.mjs.map} +1 -1
  11. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-q-i4y4-A.mjs → ngx-histaff-alpha-core-workflow-consume.component-KhuYPVOK.mjs} +3 -3
  12. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-q-i4y4-A.mjs.map → ngx-histaff-alpha-core-workflow-consume.component-KhuYPVOK.mjs.map} +1 -1
  13. package/fesm2022/{ngx-histaff-alpha-db-settings.component-BO8C_-GR.mjs → ngx-histaff-alpha-db-settings.component-D4dYVZ_i.mjs} +5 -5
  14. package/fesm2022/{ngx-histaff-alpha-db-settings.component-BO8C_-GR.mjs.map → ngx-histaff-alpha-db-settings.component-D4dYVZ_i.mjs.map} +1 -1
  15. package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-R7Modyr0.mjs → ngx-histaff-alpha-design-wrapper.component-BH9PqerQ.mjs} +5 -5
  16. package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-R7Modyr0.mjs.map → ngx-histaff-alpha-design-wrapper.component-BH9PqerQ.mjs.map} +1 -1
  17. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-BI6LXb9t.mjs → ngx-histaff-alpha-design-wrapper.route-B-9FL-bB.mjs} +5 -5
  18. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-BI6LXb9t.mjs.map → ngx-histaff-alpha-design-wrapper.route-B-9FL-bB.mjs.map} +1 -1
  19. package/fesm2022/{ngx-histaff-alpha-hrm-schema.component-BsJp9lbg.mjs → ngx-histaff-alpha-hrm-schema.component-DcckYHBs.mjs} +2 -2
  20. package/fesm2022/{ngx-histaff-alpha-hrm-schema.component-BsJp9lbg.mjs.map → ngx-histaff-alpha-hrm-schema.component-DcckYHBs.mjs.map} +1 -1
  21. package/fesm2022/{ngx-histaff-alpha-live-form.component-PfwIOWvv.mjs → ngx-histaff-alpha-live-form.component-D16CS1r5.mjs} +3 -3
  22. package/fesm2022/{ngx-histaff-alpha-live-form.component-PfwIOWvv.mjs.map → ngx-histaff-alpha-live-form.component-D16CS1r5.mjs.map} +1 -1
  23. package/fesm2022/{ngx-histaff-alpha-ngx-histaff-alpha-Dg7xlYcQ.mjs → ngx-histaff-alpha-ngx-histaff-alpha-B9u7RkdS.mjs} +509 -386
  24. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-B9u7RkdS.mjs.map +1 -0
  25. package/fesm2022/{ngx-histaff-alpha-simple-chat.component-Cg5Y16qX.mjs → ngx-histaff-alpha-simple-chat.component-c77fdviT.mjs} +2 -2
  26. package/fesm2022/{ngx-histaff-alpha-simple-chat.component-Cg5Y16qX.mjs.map → ngx-histaff-alpha-simple-chat.component-c77fdviT.mjs.map} +1 -1
  27. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client-edit.component-CnK7kGKy.mjs → ngx-histaff-alpha-sys-smtp-client-edit.component-BmsH3xgC.mjs} +2 -2
  28. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client-edit.component-CnK7kGKy.mjs.map → ngx-histaff-alpha-sys-smtp-client-edit.component-BmsH3xgC.mjs.map} +1 -1
  29. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client.component-CRylHcOt.mjs → ngx-histaff-alpha-sys-smtp-client.component-C7zJWpku.mjs} +2 -2
  30. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client.component-CRylHcOt.mjs.map → ngx-histaff-alpha-sys-smtp-client.component-C7zJWpku.mjs.map} +1 -1
  31. package/fesm2022/{ngx-histaff-alpha-template-list.component-C9yX3wb7.mjs → ngx-histaff-alpha-template-list.component-IpcRrg0m.mjs} +2 -2
  32. package/fesm2022/{ngx-histaff-alpha-template-list.component-C9yX3wb7.mjs.map → ngx-histaff-alpha-template-list.component-IpcRrg0m.mjs.map} +1 -1
  33. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-Ca_r_Q8s.mjs → ngx-histaff-alpha-tracker-studio.component-wYxFx4Ec.mjs} +3 -3
  34. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-Ca_r_Q8s.mjs.map → ngx-histaff-alpha-tracker-studio.component-wYxFx4Ec.mjs.map} +1 -1
  35. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-Br2PNFDp.mjs → ngx-histaff-alpha-wf-form-assign.component-rLnaR0wq.mjs} +2 -2
  36. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-Br2PNFDp.mjs.map → ngx-histaff-alpha-wf-form-assign.component-rLnaR0wq.mjs.map} +1 -1
  37. package/fesm2022/{ngx-histaff-alpha-wf-global-config.component-babw8N1z.mjs → ngx-histaff-alpha-wf-global-config.component-CYIrLKBH.mjs} +2 -2
  38. package/fesm2022/{ngx-histaff-alpha-wf-global-config.component-babw8N1z.mjs.map → ngx-histaff-alpha-wf-global-config.component-CYIrLKBH.mjs.map} +1 -1
  39. package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-4_JRODP1.mjs → ngx-histaff-alpha-wf-instance-status.component-BXN1001S.mjs} +3 -3
  40. package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-4_JRODP1.mjs.map → ngx-histaff-alpha-wf-instance-status.component-BXN1001S.mjs.map} +1 -1
  41. package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-b47kjJ_A.mjs → ngx-histaff-alpha-wf-instance-step-react.component-ljMXQRcl.mjs} +3 -3
  42. package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-b47kjJ_A.mjs.map → ngx-histaff-alpha-wf-instance-step-react.component-ljMXQRcl.mjs.map} +1 -1
  43. package/fesm2022/{ngx-histaff-alpha-wf-lab.component-Bdof-l3W.mjs → ngx-histaff-alpha-wf-lab.component-CrB0q5EI.mjs} +2 -2
  44. package/fesm2022/{ngx-histaff-alpha-wf-lab.component-Bdof-l3W.mjs.map → ngx-histaff-alpha-wf-lab.component-CrB0q5EI.mjs.map} +1 -1
  45. package/fesm2022/ngx-histaff-alpha.mjs +1 -1
  46. package/lib/app/libraries/core-dom-decision-editor/dom-api.service.d.ts +8 -0
  47. package/lib/app/libraries/core-dom-decision-editor/dom-decision-context.service.d.ts +1 -2
  48. package/lib/app/libraries/core-dom-decision-editor/dom-o-viewer/dom-o-viewer.component.d.ts +36 -0
  49. package/lib/app/libraries/core-dom-decision-editor/dom-oid-factory/dom-oid-factory.component.d.ts +8 -2
  50. package/lib/app/libraries/core-dom-decision-editor/enum-interfaces/get-tree-reference-request.d.ts +1 -1
  51. package/lib/app/libraries/core-dom-decision-editor/enum-interfaces/intent-descriptor.model.d.ts +2 -2
  52. package/lib/app/libraries/core-dom-decision-editor/intent-composer/input-groups/_base/intent-input-behavior.base.d.ts +0 -1
  53. package/lib/app/libraries/core-dom-decision-editor/intent-composer/input-groups/base-intent-inputs/base-intent-inputs.component.d.ts +2 -0
  54. package/lib/app/libraries/core-dom-decision-editor/intent-composer/input-groups/create-o-inputs/create-o-inputs.component.d.ts +1 -1
  55. package/lib/app/libraries/core-dom-decision-editor/intent-composer/input-groups/shorten-o-o-inputs/shorten-o-o-inputs.component.d.ts +17 -0
  56. package/lib/app/libraries/core-dom-decision-editor/intent-composer/intent-composer.component.d.ts +4 -11
  57. package/lib/app/libraries/core-dropdown/core-dropdown/core-dropdown.component.d.ts +2 -2
  58. package/lib/app/libraries/core-page-header/core-page-header/core-page-header.component.d.ts +2 -1
  59. package/lib/app/libraries/core-table/EnumCoreTablePipeType.d.ts +1 -0
  60. package/lib/app/libraries/core-text-input/core-text-input.component.d.ts +11 -0
  61. package/lib/app/libraries/core-tree-reference/core-tree-reference.component.d.ts +2 -0
  62. package/lib/app/libraries/pipes/table-cell.pipe.d.ts +1 -1
  63. package/package.json +2 -2
  64. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-Dg7xlYcQ.mjs.map +0 -1
  65. package/lib/app/libraries/core-tree-reference/moke.data.d.ts +0 -2
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
2
2
  import { input, signal, inject, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import * as i1 from '@angular/forms';
4
4
  import { FormControl, ReactiveFormsModule } from '@angular/forms';
5
- import { B as BaseComponent, q as DbService, n as CoreWorkflowService, e as TranslatePipe, T as TooltipDirective } from './ngx-histaff-alpha-ngx-histaff-alpha-Dg7xlYcQ.mjs';
5
+ import { B as BaseComponent, q as DbService, n as CoreWorkflowService, e as TranslatePipe, T as TooltipDirective } from './ngx-histaff-alpha-ngx-histaff-alpha-B9u7RkdS.mjs';
6
6
  import { take } from 'rxjs';
7
7
 
8
8
  class AiHintForTableComponent extends BaseComponent {
@@ -50,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
50
50
  }] });
51
51
 
52
52
  export { AiHintForTableComponent };
53
- //# sourceMappingURL=ngx-histaff-alpha-ai-hint-for-table.component-Dj3Pj6v7.mjs.map
53
+ //# sourceMappingURL=ngx-histaff-alpha-ai-hint-for-table.component-C9Si0NIJ.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-histaff-alpha-ai-hint-for-table.component-Dj3Pj6v7.mjs","sources":["../../../projects/ngx-histaff-alpha/src/lib/app/libraries/core-workflow-builder/db-settings/ai-hint-for-table/ai-hint-for-table.component.ts","../../../projects/ngx-histaff-alpha/src/lib/app/libraries/core-workflow-builder/db-settings/ai-hint-for-table/ai-hint-for-table.component.html"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject, input, signal } from '@angular/core';\r\nimport { IWorkflowSchemaTable } from '../../interfaces/IWorkflowSchema';\r\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\r\nimport { TranslatePipe } from '../../../../app-pipes/translate.pipe';\r\nimport { TooltipDirective } from '../../../tooltip/tooltip.directive';\r\nimport { BaseComponent } from '../../../base-component/base/base.component';\r\nimport { DbService } from '../../../../services/db.service';\r\nimport { CoreWorkflowService } from '../../core-workflow.service';\r\nimport { take } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'ai-hint-for-table',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [\r\n TranslatePipe,\r\n TooltipDirective,\r\n ReactiveFormsModule,\r\n ],\r\n templateUrl: './ai-hint-for-table.component.html',\r\n styleUrl: './ai-hint-for-table.component.scss'\r\n})\r\nexport class AiHintForTableComponent extends BaseComponent {\r\n $table = input.required<IWorkflowSchemaTable>()\r\n\r\n $editing = signal(false);\r\n hintControl = new FormControl('');\r\n\r\n dbs = inject(DbService);\r\n wfs = inject(CoreWorkflowService);\r\n\r\n override ngOnInit() {\r\n this.subscriptions.push(\r\n this.mls.lang$.subscribe(x => this.lang = x)\r\n )\r\n this.hintControl.setValue(this.$table().hintForAi || '');\r\n }\r\n\r\n startEditing(): void {\r\n this.$editing.set(true);\r\n }\r\n\r\n save(): void {\r\n this.$editing.set(false);\r\n this.wfs.$workflowDbSchema.update(current => {\r\n const founds = current.filter(x => x.id === this.$table().id);\r\n if (founds) {\r\n founds[0].hintForAi = this.hintControl.getRawValue() ?? ''\r\n }\r\n return [...current];\r\n })\r\n this.dbs.updateTableHint(this.$table().table, this.hintControl.getRawValue() ?? '')\r\n .pipe(take(1))\r\n .subscribe({\r\n next: () => console.log('Hint saved'),\r\n error: err => console.error('Failed to save hint', err)\r\n });\r\n }\r\n}\r\n","<span class=\"ai-table-hint-wrapper\">\r\n @if (!$editing()) {\r\n <i\r\n class=\"feather feather-more-vertical ai-table-icon\"\r\n [appTooltip]=\"'Edit Hint for AI' | translate : lang\" [showAnyway]=\"true\"\r\n (click)=\"startEditing()\">\r\n </i>\r\n } @else {\r\n <input\r\n type=\"text\"\r\n class=\"form-control form-control-sm ai-table-hint-input\"\r\n [formControl]=\"hintControl\"\r\n (blur)=\"save()\"\r\n (keydown.enter)=\"save()\" />\r\n }\r\n</span>\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-histaff-alpha-ai-hint-for-table.component-C9Si0NIJ.mjs","sources":["../../../projects/ngx-histaff-alpha/src/lib/app/libraries/core-workflow-builder/db-settings/ai-hint-for-table/ai-hint-for-table.component.ts","../../../projects/ngx-histaff-alpha/src/lib/app/libraries/core-workflow-builder/db-settings/ai-hint-for-table/ai-hint-for-table.component.html"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject, input, signal } from '@angular/core';\r\nimport { IWorkflowSchemaTable } from '../../interfaces/IWorkflowSchema';\r\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\r\nimport { TranslatePipe } from '../../../../app-pipes/translate.pipe';\r\nimport { TooltipDirective } from '../../../tooltip/tooltip.directive';\r\nimport { BaseComponent } from '../../../base-component/base/base.component';\r\nimport { DbService } from '../../../../services/db.service';\r\nimport { CoreWorkflowService } from '../../core-workflow.service';\r\nimport { take } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'ai-hint-for-table',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [\r\n TranslatePipe,\r\n TooltipDirective,\r\n ReactiveFormsModule,\r\n ],\r\n templateUrl: './ai-hint-for-table.component.html',\r\n styleUrl: './ai-hint-for-table.component.scss'\r\n})\r\nexport class AiHintForTableComponent extends BaseComponent {\r\n $table = input.required<IWorkflowSchemaTable>()\r\n\r\n $editing = signal(false);\r\n hintControl = new FormControl('');\r\n\r\n dbs = inject(DbService);\r\n wfs = inject(CoreWorkflowService);\r\n\r\n override ngOnInit() {\r\n this.subscriptions.push(\r\n this.mls.lang$.subscribe(x => this.lang = x)\r\n )\r\n this.hintControl.setValue(this.$table().hintForAi || '');\r\n }\r\n\r\n startEditing(): void {\r\n this.$editing.set(true);\r\n }\r\n\r\n save(): void {\r\n this.$editing.set(false);\r\n this.wfs.$workflowDbSchema.update(current => {\r\n const founds = current.filter(x => x.id === this.$table().id);\r\n if (founds) {\r\n founds[0].hintForAi = this.hintControl.getRawValue() ?? ''\r\n }\r\n return [...current];\r\n })\r\n this.dbs.updateTableHint(this.$table().table, this.hintControl.getRawValue() ?? '')\r\n .pipe(take(1))\r\n .subscribe({\r\n next: () => console.log('Hint saved'),\r\n error: err => console.error('Failed to save hint', err)\r\n });\r\n }\r\n}\r\n","<span class=\"ai-table-hint-wrapper\">\r\n @if (!$editing()) {\r\n <i\r\n class=\"feather feather-more-vertical ai-table-icon\"\r\n [appTooltip]=\"'Edit Hint for AI' | translate : lang\" [showAnyway]=\"true\"\r\n (click)=\"startEditing()\">\r\n </i>\r\n } @else {\r\n <input\r\n type=\"text\"\r\n class=\"form-control form-control-sm ai-table-hint-input\"\r\n [formControl]=\"hintControl\"\r\n (blur)=\"save()\"\r\n (keydown.enter)=\"save()\" />\r\n }\r\n</span>\r\n"],"names":[],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { inject, ChangeDetectorRef, Component, signal, effect, HostListener, ChangeDetectionStrategy, Injectable, computed, Input, viewChild, EventEmitter, Output, ViewContainerRef, input, Renderer2, isDevMode } from '@angular/core';
3
3
  import { trigger, state, transition, style, animate } from '@angular/animations';
4
- import { y as CoreFormDesignService, n as CoreWorkflowService, h as BaseEditComponent, b as AlertService, a as AppConfigService, W as EnumCorePageEditMode, _ as EnumCoreButtonVNSCode, $ as READONLY_WORKFLOW_FIELDS, a0 as noneAutoClosedAlertOptions, i as DialogService, M as MultiLanguageService, d as CorePageHeaderComponent, X as CoreFormComponent, a1 as CoreButtonGroupVnsComponent, e as TranslatePipe, E as EnumFormBaseContolType, B as BaseComponent, w as alertOptions, k as EnumCoreTablePipeType, l as CoreCheckboxComponent, a2 as CoreDropdownComponent, o as EnumCoreFormControlSeekerSourceType, a3 as EnumFilterOperator, L as CoreRadioGroupComponent, q as DbService, N as GptService, Q as CoreStickerCollectionComponent, a4 as CoreDomDecisionEditorComponent, T as TooltipDirective, H as HtmlTooltipDirective, a5 as CoreControlNoFormArrayComponent, a6 as EnumFormDesignMode, G as DomService, Z as JsonService, R as ApplicationHelpService, a7 as CoreControlComponent, a8 as JsonSafePipe, v as TableCellPipe, U as HotKeysDirective, a9 as CoreChecklistComponent, aa as CoreFormControlSeekerComponent, ab as CoreAttachmentComponent, ac as CoreDatePickerComponent, ad as CoreMonthSelectorComponent, ae as CoreCurrencyInputComponent } from './ngx-histaff-alpha-ngx-histaff-alpha-Dg7xlYcQ.mjs';
4
+ import { y as CoreFormDesignService, n as CoreWorkflowService, h as BaseEditComponent, b as AlertService, a as AppConfigService, W as EnumCorePageEditMode, _ as EnumCoreButtonVNSCode, $ as READONLY_WORKFLOW_FIELDS, a0 as noneAutoClosedAlertOptions, i as DialogService, M as MultiLanguageService, d as CorePageHeaderComponent, X as CoreFormComponent, a1 as CoreButtonGroupVnsComponent, e as TranslatePipe, E as EnumFormBaseContolType, B as BaseComponent, w as alertOptions, k as EnumCoreTablePipeType, l as CoreCheckboxComponent, a2 as CoreDropdownComponent, o as EnumCoreFormControlSeekerSourceType, a3 as EnumFilterOperator, L as CoreRadioGroupComponent, q as DbService, N as GptService, Q as CoreStickerCollectionComponent, a4 as CoreDomDecisionEditorComponent, T as TooltipDirective, H as HtmlTooltipDirective, a5 as CoreControlNoFormArrayComponent, a6 as EnumFormDesignMode, G as DomService, Z as JsonService, R as ApplicationHelpService, a7 as CoreControlComponent, a8 as JsonSafePipe, v as TableCellPipe, U as HotKeysDirective, a9 as CoreChecklistComponent, aa as CoreFormControlSeekerComponent, ab as CoreAttachmentComponent, ac as CoreDatePickerComponent, ad as CoreMonthSelectorComponent, ae as CoreCurrencyInputComponent } from './ngx-histaff-alpha-ngx-histaff-alpha-B9u7RkdS.mjs';
5
5
  import * as i1 from '@angular/forms';
6
6
  import { FormsModule, FormGroup, FormControl, ReactiveFormsModule, FormArray, Validators } from '@angular/forms';
7
7
  import { NgStyle, JsonPipe, AsyncPipe, NgTemplateOutlet } from '@angular/common';
8
8
  import { BehaviorSubject, catchError, of, filter, distinctUntilChanged, tap, switchMap } from 'rxjs';
9
9
  import { Router, ActivatedRoute } from '@angular/router';
10
10
  import { EnumTranslateKey } from 'alpha-global-constants';
11
- import { L as LiveFormComponent } from './ngx-histaff-alpha-live-form.component-PfwIOWvv.mjs';
12
- import { C as CoreToastLoadingComponent } from './ngx-histaff-alpha-core-toast-loading.component-Dbluw-H5.mjs';
11
+ import { L as LiveFormComponent } from './ngx-histaff-alpha-live-form.component-D16CS1r5.mjs';
12
+ import { C as CoreToastLoadingComponent } from './ngx-histaff-alpha-core-toast-loading.component-UyPKutDs.mjs';
13
13
 
14
14
  const slideFromTopFadeIn = trigger('slideFromTopFadeIn', [
15
15
  state('in', style({ opacity: 1, transform: 'translateY(0)' })),
@@ -235,7 +235,7 @@ class FormMetadataComponent extends BaseEditComponent {
235
235
  });
236
236
  }
237
237
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: FormMetadataComponent, deps: [{ token: DialogService }, { token: MultiLanguageService }], target: i0.ɵɵFactoryTarget.Component }); }
238
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: FormMetadataComponent, isStandalone: true, selector: "form-metadata", host: { listeners: { "document:keydown.escape": "onEscape($event)", "window:click": "onWindowClick($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"form-metadata-container\">\r\n\r\n <div class=\"metadata-body\">\r\n\r\n <div class=\"header-n-form\">\r\n\r\n @if (!$isInWorkflowDesign()) {\r\n\r\n <div class=\"h15\"></div>\r\n\r\n <div class=\"d-flex d-flex-start w-100 pr1rem\">\r\n <core-button-group-vns [showCaption]=\"true\" [forHeader]=\"false\" (buttonClick)=\"onButtonClick($event)\"\r\n [shownItems]=\"customButtons\" class=\"buttonGroupCustom\"></core-button-group-vns>\r\n </div>\r\n <div class=\"h15\"></div>\r\n\r\n <div class=\"header-wrapper\">\r\n <core-page-header [title]=\"'FORM OVERVIEW'\" [hideButtonGroup]=\"true\"></core-page-header>\r\n <div class=\"close-wrapper\" (click)=\"onClose()\">\r\n <i class=\"feather-x\"></i>\r\n </div>\r\n </div>\r\n\r\n } \r\n\r\n\r\n\r\n <div class=\"af-instance\">\r\n\r\n <div class=\"af-instance-left\">\r\n <core-form \r\n [inputSections]=\"$sections()\" \r\n [width]=\"800\" \r\n [mode$]=\"mode$\" \r\n [checkError$]=\"coreFormDesignService.formMetadataCheckError$\"\r\n [hideButtons]=\"true\" \r\n [forceCreateNewForm]=\"true\"\r\n [hideDevSector]=\"!!$isInWorkflowDesign()\"\r\n (onFormCreated)=\"onFormCreated($event)\" />\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n @if (!$isInWorkflowDesign()) {\r\n <div class=\"af-instance-right\">\r\n <save-live-json></save-live-json>\r\n </div>\r\n }\r\n\r\n\r\n </div>\r\n\r\n</div>", styles: [".form-metadata-container .header-wrapper{padding:0 15px}.form-metadata-container .header-wrapper .close-wrapper{display:flex;position:absolute;right:7px;top:8px;width:24px;height:24px;color:#848484;cursor:pointer}.form-metadata-container .header-wrapper .close-wrapper i{font-size:24px}.form-metadata-container .af-instance{display:flex}.form-metadata-container .h15{height:15px!important}.form-metadata-container .pr1rem{padding-right:1rem}.form-metadata-container .metadata-body{display:flex;align-items:flex-start;justify-content:space-between}.form-metadata-container .af-instance-right{margin-top:45px;margin-right:15px}\n"], dependencies: [{ kind: "component", type: CorePageHeaderComponent, selector: "core-page-header", inputs: ["instanceNumber", "shownItems", "title", "hideButtonGroup", "htmlTooltipRef"], outputs: ["buttonClick"] }, { kind: "component", type: CoreFormComponent, selector: "core-form", inputs: ["formName", "width", "submitText", "leftInputSections", "leftInputSectionsFlexSize", "inputSections", "mode$", "bottomTemplateRef", "customFormButtonItems", "showCaptionButton", "disableSaveButton", "disableCancelButton", "checkError$", "hideButtons", "forceCreateNewForm", "secondBottomTemplateRef", "hideDevSector", "hideCalculatedSection", "buttonGroupTemplateRef", "wrapEachSectionInAccordion", "gridMode"], outputs: ["onFormCreated", "onFormRefCreated", "onSubmit", "onSave", "onCancal", "buttonClick"] }, { kind: "component", type: SaveLiveJsonComponent, selector: "save-live-json" }, { kind: "component", type: CoreButtonGroupVnsComponent, selector: "core-button-group-vns", inputs: ["height", "instanceNumber", "forHeader", "fixedShow", "shownItems", "showCaption", "lastChildEffectOff"], outputs: ["buttonClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
238
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: FormMetadataComponent, isStandalone: true, selector: "form-metadata", host: { listeners: { "document:keydown.escape": "onEscape($event)", "window:click": "onWindowClick($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"form-metadata-container\">\r\n\r\n <div class=\"metadata-body\">\r\n\r\n <div class=\"header-n-form\">\r\n\r\n @if (!$isInWorkflowDesign()) {\r\n\r\n <div class=\"h15\"></div>\r\n\r\n <div class=\"d-flex d-flex-start w-100 pr1rem\">\r\n <core-button-group-vns [showCaption]=\"true\" [forHeader]=\"false\" (buttonClick)=\"onButtonClick($event)\"\r\n [shownItems]=\"customButtons\" class=\"buttonGroupCustom\"></core-button-group-vns>\r\n </div>\r\n <div class=\"h15\"></div>\r\n\r\n <div class=\"header-wrapper\">\r\n <core-page-header [title]=\"'FORM OVERVIEW'\" [hideButtonGroup]=\"true\"></core-page-header>\r\n <div class=\"close-wrapper\" (click)=\"onClose()\">\r\n <i class=\"feather-x\"></i>\r\n </div>\r\n </div>\r\n\r\n } \r\n\r\n\r\n\r\n <div class=\"af-instance\">\r\n\r\n <div class=\"af-instance-left\">\r\n <core-form \r\n [inputSections]=\"$sections()\" \r\n [width]=\"800\" \r\n [mode$]=\"mode$\" \r\n [checkError$]=\"coreFormDesignService.formMetadataCheckError$\"\r\n [hideButtons]=\"true\" \r\n [forceCreateNewForm]=\"true\"\r\n [hideDevSector]=\"!!$isInWorkflowDesign()\"\r\n (onFormCreated)=\"onFormCreated($event)\" />\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n @if (!$isInWorkflowDesign()) {\r\n <div class=\"af-instance-right\">\r\n <save-live-json></save-live-json>\r\n </div>\r\n }\r\n\r\n\r\n </div>\r\n\r\n</div>", styles: [".form-metadata-container .header-wrapper{padding:0 15px}.form-metadata-container .header-wrapper .close-wrapper{display:flex;position:absolute;right:7px;top:8px;width:24px;height:24px;color:#848484;cursor:pointer}.form-metadata-container .header-wrapper .close-wrapper i{font-size:24px}.form-metadata-container .af-instance{display:flex}.form-metadata-container .h15{height:15px!important}.form-metadata-container .pr1rem{padding-right:1rem}.form-metadata-container .metadata-body{display:flex;align-items:flex-start;justify-content:space-between}.form-metadata-container .af-instance-right{margin-top:45px;margin-right:15px}\n"], dependencies: [{ kind: "component", type: CorePageHeaderComponent, selector: "core-page-header", inputs: ["instanceNumber", "shownItems", "title", "hideButtonGroup", "htmlTooltipRef", "$loading"], outputs: ["buttonClick"] }, { kind: "component", type: CoreFormComponent, selector: "core-form", inputs: ["formName", "width", "submitText", "leftInputSections", "leftInputSectionsFlexSize", "inputSections", "mode$", "bottomTemplateRef", "customFormButtonItems", "showCaptionButton", "disableSaveButton", "disableCancelButton", "checkError$", "hideButtons", "forceCreateNewForm", "secondBottomTemplateRef", "hideDevSector", "hideCalculatedSection", "buttonGroupTemplateRef", "wrapEachSectionInAccordion", "gridMode"], outputs: ["onFormCreated", "onFormRefCreated", "onSubmit", "onSave", "onCancal", "buttonClick"] }, { kind: "component", type: SaveLiveJsonComponent, selector: "save-live-json" }, { kind: "component", type: CoreButtonGroupVnsComponent, selector: "core-button-group-vns", inputs: ["height", "instanceNumber", "forHeader", "fixedShow", "shownItems", "showCaption", "lastChildEffectOff"], outputs: ["buttonClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
239
239
  }
240
240
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: FormMetadataComponent, decorators: [{
241
241
  type: Component,
@@ -444,7 +444,7 @@ class OptionalPropsComponent extends BasePropsComponent {
444
444
  this.pipeOptions$ = new BehaviorSubject(Object.values(EnumCoreTablePipeType).map(x => ({ value: x, text: x })));
445
445
  }
446
446
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: OptionalPropsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
447
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: OptionalPropsComponent, isStandalone: true, selector: "optional-props", usesInheritance: true, ngImport: i0, template: "<div class=\"setting-group optional-group\" [ngStyle]=\"{ padding: '15px' }\">\r\n\r\n <div class=\"setting-row optional-bool\">\r\n <label>Readonly</label>\r\n <core-checkbox ngModel ngDefaultControl [ngModel]=\"$control().readonly\" (ngModelChange)=\"setControlProp('readonly', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row optional-bool\">\r\n <label>Hidden</label>\r\n <core-checkbox [ngModel]=\"$control().hidden\" (ngModelChange)=\"setControlProp('hidden', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row optional-bool\">\r\n <label>Disabled</label>\r\n <core-checkbox [ngModel]=\"$control().disabled\" (ngModelChange)=\"setControlProp('disabled', $event)\" /> \r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Hint</label>\r\n <input class=\"form-control\" type=\"text\" [ngModel]=\"$control().hint\" (ngModelChange)=\"setControlProp('hint', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Pipe</label>\r\n <div class=\"control-wrapper\">\r\n <core-dropdown [ngModel]=\"$control().pipe\" (ngModelChange)=\"setControlProp('pipe', $event)\"\r\n [paramMode]=\"true\"\r\n [options$]=\"pipeOptions$\"\r\n >\r\n </core-dropdown>\r\n </div>\r\n </div>\r\n\r\n</div>", styles: [".setting-group{display:flex;flex-direction:column}.setting-row{display:flex;justify-content:flex-start;align-items:center;height:50px}.setting-row label{width:30%}.setting-row .control-wrapper,.setting-row input,.setting-row .readonly-field{width:65%}.setting-row .readonly-field{font-style:italic;color:#666}.setting-row input.validator-value{text-align:right}.setting-row input.validator-value.pattern{text-align:left}.setting-row .control-wrapper{display:flex;align-items:center;justify-content:flex-start}.validator-group .setting-row{justify-content:flex-start}.validator-group .setting-row input{margin-left:15px;width:100%}.tiny-lock{margin-left:6px;font-size:12px;color:#888}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.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.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { 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"] }] }); }
447
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.5", type: OptionalPropsComponent, isStandalone: true, selector: "optional-props", usesInheritance: true, ngImport: i0, template: "<div class=\"setting-group optional-group\" [ngStyle]=\"{ padding: '15px' }\">\r\n\r\n <div class=\"setting-row optional-bool\">\r\n <label>Readonly</label>\r\n <core-checkbox ngModel ngDefaultControl [ngModel]=\"$control().readonly\" (ngModelChange)=\"setControlProp('readonly', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row optional-bool\">\r\n <label>Hidden</label>\r\n <core-checkbox [ngModel]=\"$control().hidden\" (ngModelChange)=\"setControlProp('hidden', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row optional-bool\">\r\n <label>Disabled</label>\r\n <core-checkbox [ngModel]=\"$control().disabled\" (ngModelChange)=\"setControlProp('disabled', $event)\" /> \r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Hint</label>\r\n <input class=\"form-control\" type=\"text\" [ngModel]=\"$control().hint\" (ngModelChange)=\"setControlProp('hint', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Pipe</label>\r\n <div class=\"control-wrapper\">\r\n <core-dropdown [ngModel]=\"$control().pipe\" (ngModelChange)=\"setControlProp('pipe', $event)\"\r\n [paramMode]=\"true\"\r\n [options$]=\"pipeOptions$\"\r\n >\r\n </core-dropdown>\r\n </div>\r\n </div>\r\n\r\n</div>", styles: [".setting-group{display:flex;flex-direction:column}.setting-row{display:flex;justify-content:flex-start;align-items:center;height:50px}.setting-row label{width:30%}.setting-row .control-wrapper,.setting-row input,.setting-row .readonly-field{width:65%}.setting-row .readonly-field{font-style:italic;color:#666}.setting-row input.validator-value{text-align:right}.setting-row input.validator-value.pattern{text-align:left}.setting-row .control-wrapper{display:flex;align-items:center;justify-content:flex-start}.validator-group .setting-row{justify-content:flex-start}.validator-group .setting-row input{margin-left:15px;width:100%}.tiny-lock{margin-left:6px;font-size:12px;color:#888}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.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.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { 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"] }] }); }
448
448
  }
449
449
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: OptionalPropsComponent, decorators: [{
450
450
  type: Component,
@@ -509,7 +509,7 @@ class DropdownPropsComponent extends BasePropsComponent {
509
509
  }
510
510
  }
511
511
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DropdownPropsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
512
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: DropdownPropsComponent, isStandalone: true, selector: "dropdown-props", usesInheritance: true, ngImport: i0, template: "<div class=\"setting-group dropdown-group\" [ngStyle]=\"{ padding: '15px' }\">\r\n\r\n <div class=\"setting-row optional-bool\">\r\n <label>Use API</label>\r\n <core-checkbox [ngModel]=\"$control().optionApiDriven\" (ngModelChange)=\"setControlProp('optionApiDriven', $event)\" />\r\n </div>\r\n\r\n @if (!!$control().optionApiDriven) {\r\n <div class=\"setting-row\">\r\n <label>API Endpoint</label>\r\n <input class=\"form-control\" type=\"text\" [ngModel]=\"$control().optionApi\" (ngModelChange)=\"setControlProp('optionApi', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>HTTP Verb</label>\r\n <div class=\"control-wrapper\">\r\n <core-dropdown [ngModel]=\"$control().optionHttpVerb\" (ngModelChange)=\"setControlProp('optionHttpVerb', $event)\" [paramMode]=\"true\"\r\n [options$]=\"httpVerbOptions$\">\r\n </core-dropdown>\r\n </div>\r\n </div>\r\n\r\n @if ($control().optionHttpVerb === 'HttpPost') {\r\n <div class=\"setting-row\">\r\n <label>Payload (JSON)</label>\r\n <div class=\"control-wrapper\">\r\n <textarea class=\"form-control\" rows=\"3\" [(ngModel)]=\"jsonPayload\" (ngModelChange)=\"onPayloadJsonBlur()\"></textarea>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"setting-row\">\r\n <label>Value Field</label>\r\n <input class=\"form-control\" type=\"text\" [ngModel]=\"$control().optionValueFrom\" (ngModelChange)=\"setControlProp('optionValueFrom', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Text Field</label>\r\n <input class=\"form-control\" type=\"text\" [ngModel]=\"$control().optionTextFrom\" (ngModelChange)=\"setControlProp('optionTextFrom', $event)\" />\r\n </div>\r\n }\r\n</div>", styles: [".setting-group{display:flex;flex-direction:column}.setting-row{display:flex;justify-content:flex-start;align-items:center;height:50px}.setting-row label{width:30%}.setting-row .control-wrapper,.setting-row input,.setting-row .readonly-field{width:65%}.setting-row .readonly-field{font-style:italic;color:#666}.setting-row input.validator-value{text-align:right}.setting-row input.validator-value.pattern{text-align:left}.setting-row .control-wrapper{display:flex;align-items:center;justify-content:flex-start}.validator-group .setting-row{justify-content:flex-start}.validator-group .setting-row input{margin-left:15px;width:100%}.tiny-lock{margin-left:6px;font-size:12px;color:#888}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.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.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { 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"] }] }); }
512
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: DropdownPropsComponent, isStandalone: true, selector: "dropdown-props", usesInheritance: true, ngImport: i0, template: "<div class=\"setting-group dropdown-group\" [ngStyle]=\"{ padding: '15px' }\">\r\n\r\n <div class=\"setting-row optional-bool\">\r\n <label>Use API</label>\r\n <core-checkbox [ngModel]=\"$control().optionApiDriven\" (ngModelChange)=\"setControlProp('optionApiDriven', $event)\" />\r\n </div>\r\n\r\n @if (!!$control().optionApiDriven) {\r\n <div class=\"setting-row\">\r\n <label>API Endpoint</label>\r\n <input class=\"form-control\" type=\"text\" [ngModel]=\"$control().optionApi\" (ngModelChange)=\"setControlProp('optionApi', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>HTTP Verb</label>\r\n <div class=\"control-wrapper\">\r\n <core-dropdown [ngModel]=\"$control().optionHttpVerb\" (ngModelChange)=\"setControlProp('optionHttpVerb', $event)\" [paramMode]=\"true\"\r\n [options$]=\"httpVerbOptions$\">\r\n </core-dropdown>\r\n </div>\r\n </div>\r\n\r\n @if ($control().optionHttpVerb === 'HttpPost') {\r\n <div class=\"setting-row\">\r\n <label>Payload (JSON)</label>\r\n <div class=\"control-wrapper\">\r\n <textarea class=\"form-control\" rows=\"3\" [(ngModel)]=\"jsonPayload\" (ngModelChange)=\"onPayloadJsonBlur()\"></textarea>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"setting-row\">\r\n <label>Value Field</label>\r\n <input class=\"form-control\" type=\"text\" [ngModel]=\"$control().optionValueFrom\" (ngModelChange)=\"setControlProp('optionValueFrom', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Text Field</label>\r\n <input class=\"form-control\" type=\"text\" [ngModel]=\"$control().optionTextFrom\" (ngModelChange)=\"setControlProp('optionTextFrom', $event)\" />\r\n </div>\r\n }\r\n</div>", styles: [".setting-group{display:flex;flex-direction:column}.setting-row{display:flex;justify-content:flex-start;align-items:center;height:50px}.setting-row label{width:30%}.setting-row .control-wrapper,.setting-row input,.setting-row .readonly-field{width:65%}.setting-row .readonly-field{font-style:italic;color:#666}.setting-row input.validator-value{text-align:right}.setting-row input.validator-value.pattern{text-align:left}.setting-row .control-wrapper{display:flex;align-items:center;justify-content:flex-start}.validator-group .setting-row{justify-content:flex-start}.validator-group .setting-row input{margin-left:15px;width:100%}.tiny-lock{margin-left:6px;font-size:12px;color:#888}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.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.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { 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"] }] }); }
513
513
  }
514
514
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: DropdownPropsComponent, decorators: [{
515
515
  type: Component,
@@ -764,7 +764,7 @@ class SeekerPropsComponent extends BasePropsComponent {
764
764
  this.setControlProp('multiModeExtendedSections', next);
765
765
  }
766
766
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: SeekerPropsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
767
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: SeekerPropsComponent, isStandalone: true, selector: "seeker-props", usesInheritance: true, ngImport: i0, template: "<div class=\"setting-group seeker-group\" [style.padding.px]=\"15\">\r\n\r\n <div class=\"setting-row\">\r\n Basic Settings\r\n </div>\r\n \r\n\r\n <div class=\"setting-row\">\r\n <label>Source Type</label>\r\n <core-dropdown\r\n [options$]=\"svc.sourceTypeOptions$\"\r\n [paramMode]=\"true\"\r\n [ngModel]=\"$control().seekerSourceType\"\r\n (ngModelChange)=\"setControlProp('seekerSourceType', $event)\">\r\n </core-dropdown>\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Multi Mode</label>\r\n <core-checkbox\r\n [ngModel]=\"$control().multiMode\"\r\n (ngModelChange)=\"setControlProp('multiMode', $event)\">\r\n </core-checkbox>\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Hide Org Tree</label>\r\n <core-checkbox\r\n [ngModel]=\"$control().hideOrgTree\"\r\n (ngModelChange)=\"setControlProp('hideOrgTree', $event)\">\r\n </core-checkbox>\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Source Space Height</label>\r\n <input class=\"form-control\"\r\n type=\"number\"\r\n [ngModel]=\"$control().sourceSpaceHeight\"\r\n (ngModelChange)=\"setControlProp('sourceSpaceHeight', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Bound From</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"$control().boundFrom\"\r\n (ngModelChange)=\"setControlProp('boundFrom', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Shown From</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"$control().shownFrom\"\r\n (ngModelChange)=\"setControlProp('shownFrom', $event)\" />\r\n </div>\r\n\r\n <!-- <div class=\"setting-row\">\r\n <label>Use These Columns (CSV)</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"$useTheseColumnsCsv()\"\r\n (ngModelChange)=\"onUseColumnsChanged($event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Excluded Columns (CSV)</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"$excludedColumnsCsv()\"\r\n (ngModelChange)=\"onExcludedColumnsChanged($event)\" />\r\n </div> -->\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- ALSO BIND TO -->\r\n <!-- ================================================ -->\r\n <div class=\"setting-row\">\r\n Also Bind To\r\n </div>\r\n \r\n <button class=\"btn-add\" (click)=\"addAlsoBindRow()\">+ Add Mapping</button>\r\n\r\n <table class=\"mini-table\">\r\n <tr>\r\n <th>takeFrom</th>\r\n <th>bindTo</th>\r\n <th></th>\r\n </tr>\r\n\r\n @for (item of $alsoBind(); track $index) {\r\n <tr>\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"item.takeFrom\"\r\n (ngModelChange)=\"updateAlsoBindRow($index, 'takeFrom', $event)\" />\r\n </td>\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"item.bindTo\"\r\n (ngModelChange)=\"updateAlsoBindRow($index, 'bindTo', $event)\" />\r\n </td>\r\n <td>\r\n <button class=\"btn-remove\" (click)=\"removeAlsoBindRow($index)\">x</button>\r\n </td>\r\n </tr>\r\n }\r\n </table>\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- OUTER PARAM -->\r\n <!-- ================================================ -->\r\n <div class=\"setting-row\">\r\n Outer Param JSON\r\n </div>\r\n\r\n <textarea class=\"form-control\"\r\n [style.height.px]=\"140\"\r\n [ngModel]=\"$outerParamJson()\"\r\n (ngModelChange)=\"onOuterParamJsonChange($event)\">\r\n </textarea>\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- OUTER FILTER -->\r\n <!-- ================================================ -->\r\n <div class=\"setting-row\">\r\n Outer Filter (RuleTree Mini)\r\n </div>\r\n\r\n <button class=\"btn-add\" (click)=\"addOuterFilter()\">+ Add Filter</button>\r\n\r\n <table class=\"mini-table\">\r\n <tr>\r\n <th>Field</th>\r\n <th>Operator</th>\r\n <th>Value</th>\r\n <th></th>\r\n </tr>\r\n\r\n @for (f of $outerFilter(); track $index) {\r\n <tr>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"f.field\"\r\n (ngModelChange)=\"updateOuterFilter($index, 'field', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <core-dropdown\r\n [options$]=\"svc.filterOperatorOptions$\"\r\n [ngModel]=\"f.operator\"\r\n [paramMode]=\"true\"\r\n (ngModelChange)=\"updateOuterFilter($index, 'operator', $event)\">\r\n </core-dropdown>\r\n </td>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n type=\"text\"\r\n [ngModel]=\"f.dateTimeValue\"\r\n (ngModelChange)=\"updateOuterFilter($index, 'dateTimeValue', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <button class=\"btn-remove\" (click)=\"removeOuterFilter($index)\">x</button>\r\n </td>\r\n\r\n </tr>\r\n }\r\n </table>\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- EXTENDED COLUMNS -->\r\n <!-- ================================================ -->\r\n <!-- <div class=\"setting-row\">\r\n Extended Columns\r\n </div>\r\n\r\n <button class=\"btn-add\" (click)=\"addExtendedColumn()\">+ Add Column</button>\r\n\r\n <table class=\"mini-table\">\r\n <tr>\r\n <th>Caption</th>\r\n <th>Field</th>\r\n <th>Type</th>\r\n <th>Align</th>\r\n <th>Width</th>\r\n <th>Hidden</th>\r\n <th>Translate</th>\r\n <th></th>\r\n </tr>\r\n\r\n @for (c of $extendedColumns(); track $index) {\r\n <tr>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"c.caption\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'caption', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"c.field\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'field', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"c.type\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'type', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"c.align\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'align', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <input type=\"number\"\r\n class=\"form-control\"\r\n [ngModel]=\"c.width\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'width', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <core-checkbox\r\n [ngModel]=\"c.hidden\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'hidden', $event)\">\r\n </core-checkbox>\r\n </td>\r\n\r\n <td>\r\n <core-checkbox\r\n [ngModel]=\"c.translate\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'translate', $event)\">\r\n </core-checkbox>\r\n </td>\r\n\r\n <td>\r\n <button class=\"btn-remove\" (click)=\"removeExtendedColumn($index)\">x</button>\r\n </td>\r\n\r\n </tr>\r\n }\r\n </table> -->\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- EXTENDED SECTIONS -->\r\n <!-- ================================================ -->\r\n <!-- <div class=\"setting-row\">\r\n Extended Sections\r\n </div>\r\n\r\n <button class=\"btn-add\" (click)=\"addExtendedSection()\">+ Add Section</button>\r\n\r\n @for (s of $extendedSections(); track $index) {\r\n <div class=\"section-box\">\r\n\r\n <div class=\"setting-row\">\r\n <label>Caption</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"s.caption\"\r\n (ngModelChange)=\"updateExtendedSection($index, $event)\" />\r\n </div>\r\n\r\n <button class=\"btn-remove\"\r\n (click)=\"removeExtendedSection($index)\">\r\n Remove\r\n </button>\r\n\r\n </div>\r\n } -->\r\n\r\n</div>\r\n", styles: [".setting-group{display:flex;flex-direction:column}.setting-row{display:flex;justify-content:flex-start;align-items:center;height:50px}.setting-row label{width:30%}.setting-row .control-wrapper,.setting-row input,.setting-row .readonly-field{width:65%}.setting-row .readonly-field{font-style:italic;color:#666}.setting-row input.validator-value{text-align:right}.setting-row input.validator-value.pattern{text-align:left}.setting-row .control-wrapper{display:flex;align-items:center;justify-content:flex-start}.validator-group .setting-row{justify-content:flex-start}.validator-group .setting-row input{margin-left:15px;width:100%}.tiny-lock{margin-left:6px;font-size:12px;color:#888}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
767
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: SeekerPropsComponent, isStandalone: true, selector: "seeker-props", usesInheritance: true, ngImport: i0, template: "<div class=\"setting-group seeker-group\" [style.padding.px]=\"15\">\r\n\r\n <div class=\"setting-row\">\r\n Basic Settings\r\n </div>\r\n \r\n\r\n <div class=\"setting-row\">\r\n <label>Source Type</label>\r\n <core-dropdown\r\n [options$]=\"svc.sourceTypeOptions$\"\r\n [paramMode]=\"true\"\r\n [ngModel]=\"$control().seekerSourceType\"\r\n (ngModelChange)=\"setControlProp('seekerSourceType', $event)\">\r\n </core-dropdown>\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Multi Mode</label>\r\n <core-checkbox\r\n [ngModel]=\"$control().multiMode\"\r\n (ngModelChange)=\"setControlProp('multiMode', $event)\">\r\n </core-checkbox>\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Hide Org Tree</label>\r\n <core-checkbox\r\n [ngModel]=\"$control().hideOrgTree\"\r\n (ngModelChange)=\"setControlProp('hideOrgTree', $event)\">\r\n </core-checkbox>\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Source Space Height</label>\r\n <input class=\"form-control\"\r\n type=\"number\"\r\n [ngModel]=\"$control().sourceSpaceHeight\"\r\n (ngModelChange)=\"setControlProp('sourceSpaceHeight', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Bound From</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"$control().boundFrom\"\r\n (ngModelChange)=\"setControlProp('boundFrom', $event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Shown From</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"$control().shownFrom\"\r\n (ngModelChange)=\"setControlProp('shownFrom', $event)\" />\r\n </div>\r\n\r\n <!-- <div class=\"setting-row\">\r\n <label>Use These Columns (CSV)</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"$useTheseColumnsCsv()\"\r\n (ngModelChange)=\"onUseColumnsChanged($event)\" />\r\n </div>\r\n\r\n <div class=\"setting-row\">\r\n <label>Excluded Columns (CSV)</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"$excludedColumnsCsv()\"\r\n (ngModelChange)=\"onExcludedColumnsChanged($event)\" />\r\n </div> -->\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- ALSO BIND TO -->\r\n <!-- ================================================ -->\r\n <div class=\"setting-row\">\r\n Also Bind To\r\n </div>\r\n \r\n <button class=\"btn-add\" (click)=\"addAlsoBindRow()\">+ Add Mapping</button>\r\n\r\n <table class=\"mini-table\">\r\n <tr>\r\n <th>takeFrom</th>\r\n <th>bindTo</th>\r\n <th></th>\r\n </tr>\r\n\r\n @for (item of $alsoBind(); track $index) {\r\n <tr>\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"item.takeFrom\"\r\n (ngModelChange)=\"updateAlsoBindRow($index, 'takeFrom', $event)\" />\r\n </td>\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"item.bindTo\"\r\n (ngModelChange)=\"updateAlsoBindRow($index, 'bindTo', $event)\" />\r\n </td>\r\n <td>\r\n <button class=\"btn-remove\" (click)=\"removeAlsoBindRow($index)\">x</button>\r\n </td>\r\n </tr>\r\n }\r\n </table>\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- OUTER PARAM -->\r\n <!-- ================================================ -->\r\n <div class=\"setting-row\">\r\n Outer Param JSON\r\n </div>\r\n\r\n <textarea class=\"form-control\"\r\n [style.height.px]=\"140\"\r\n [ngModel]=\"$outerParamJson()\"\r\n (ngModelChange)=\"onOuterParamJsonChange($event)\">\r\n </textarea>\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- OUTER FILTER -->\r\n <!-- ================================================ -->\r\n <div class=\"setting-row\">\r\n Outer Filter (RuleTree Mini)\r\n </div>\r\n\r\n <button class=\"btn-add\" (click)=\"addOuterFilter()\">+ Add Filter</button>\r\n\r\n <table class=\"mini-table\">\r\n <tr>\r\n <th>Field</th>\r\n <th>Operator</th>\r\n <th>Value</th>\r\n <th></th>\r\n </tr>\r\n\r\n @for (f of $outerFilter(); track $index) {\r\n <tr>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"f.field\"\r\n (ngModelChange)=\"updateOuterFilter($index, 'field', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <core-dropdown\r\n [options$]=\"svc.filterOperatorOptions$\"\r\n [ngModel]=\"f.operator\"\r\n [paramMode]=\"true\"\r\n (ngModelChange)=\"updateOuterFilter($index, 'operator', $event)\">\r\n </core-dropdown>\r\n </td>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n type=\"text\"\r\n [ngModel]=\"f.dateTimeValue\"\r\n (ngModelChange)=\"updateOuterFilter($index, 'dateTimeValue', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <button class=\"btn-remove\" (click)=\"removeOuterFilter($index)\">x</button>\r\n </td>\r\n\r\n </tr>\r\n }\r\n </table>\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- EXTENDED COLUMNS -->\r\n <!-- ================================================ -->\r\n <!-- <div class=\"setting-row\">\r\n Extended Columns\r\n </div>\r\n\r\n <button class=\"btn-add\" (click)=\"addExtendedColumn()\">+ Add Column</button>\r\n\r\n <table class=\"mini-table\">\r\n <tr>\r\n <th>Caption</th>\r\n <th>Field</th>\r\n <th>Type</th>\r\n <th>Align</th>\r\n <th>Width</th>\r\n <th>Hidden</th>\r\n <th>Translate</th>\r\n <th></th>\r\n </tr>\r\n\r\n @for (c of $extendedColumns(); track $index) {\r\n <tr>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"c.caption\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'caption', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"c.field\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'field', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"c.type\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'type', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <input class=\"form-control\"\r\n [ngModel]=\"c.align\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'align', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <input type=\"number\"\r\n class=\"form-control\"\r\n [ngModel]=\"c.width\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'width', $event)\" />\r\n </td>\r\n\r\n <td>\r\n <core-checkbox\r\n [ngModel]=\"c.hidden\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'hidden', $event)\">\r\n </core-checkbox>\r\n </td>\r\n\r\n <td>\r\n <core-checkbox\r\n [ngModel]=\"c.translate\"\r\n (ngModelChange)=\"updateExtendedColumn($index, 'translate', $event)\">\r\n </core-checkbox>\r\n </td>\r\n\r\n <td>\r\n <button class=\"btn-remove\" (click)=\"removeExtendedColumn($index)\">x</button>\r\n </td>\r\n\r\n </tr>\r\n }\r\n </table> -->\r\n\r\n\r\n <!-- ================================================ -->\r\n <!-- EXTENDED SECTIONS -->\r\n <!-- ================================================ -->\r\n <!-- <div class=\"setting-row\">\r\n Extended Sections\r\n </div>\r\n\r\n <button class=\"btn-add\" (click)=\"addExtendedSection()\">+ Add Section</button>\r\n\r\n @for (s of $extendedSections(); track $index) {\r\n <div class=\"section-box\">\r\n\r\n <div class=\"setting-row\">\r\n <label>Caption</label>\r\n <input class=\"form-control\"\r\n [ngModel]=\"s.caption\"\r\n (ngModelChange)=\"updateExtendedSection($index, $event)\" />\r\n </div>\r\n\r\n <button class=\"btn-remove\"\r\n (click)=\"removeExtendedSection($index)\">\r\n Remove\r\n </button>\r\n\r\n </div>\r\n } -->\r\n\r\n</div>\r\n", styles: [".setting-group{display:flex;flex-direction:column}.setting-row{display:flex;justify-content:flex-start;align-items:center;height:50px}.setting-row label{width:30%}.setting-row .control-wrapper,.setting-row input,.setting-row .readonly-field{width:65%}.setting-row .readonly-field{font-style:italic;color:#666}.setting-row input.validator-value{text-align:right}.setting-row input.validator-value.pattern{text-align:left}.setting-row .control-wrapper{display:flex;align-items:center;justify-content:flex-start}.validator-group .setting-row{justify-content:flex-start}.validator-group .setting-row input{margin-left:15px;width:100%}.tiny-lock{margin-left:6px;font-size:12px;color:#888}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
768
768
  }
769
769
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: SeekerPropsComponent, decorators: [{
770
770
  type: Component,
@@ -3500,7 +3500,7 @@ class CoreFormDesignComponent extends BaseComponent {
3500
3500
  this.coreFormDesignService.$showFormMetadata.set(true);
3501
3501
  }
3502
3502
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreFormDesignComponent, deps: [{ token: MultiLanguageService }], target: i0.ɵɵFactoryTarget.Component }); }
3503
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: CoreFormDesignComponent, isStandalone: true, selector: "core-form-design", inputs: { $idAsInput: { classPropertyName: "$idAsInput", publicName: "$idAsInput", isSignal: true, isRequired: false, transformFunction: null }, $id: { classPropertyName: "$id", publicName: "$id", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "$settingPanel", first: true, predicate: ["settingPanel"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"core-form-design-container fs-13\" [hotKeys]=\"['F3', 'F6', 'Escape']\">\r\n\r\n <core-page-header title=\"UI.COMPONENT_TITLE.WORKFLOW_FORM_DESIGN\" (buttonClick)=\"onCorePageHeaderButtonClicked($event)\"></core-page-header>\r\n \r\n <ng-template #formMetadata>\r\n <form-metadata></form-metadata>\r\n </ng-template>\r\n\r\n <!-- @if (coreFormDesignService.$showFormArrayDesign()) { -->\r\n <div class=\"form-array-layout-editor-wrapper\" [class.open]=\"coreFormDesignService.$showFormArrayDesign()\">\r\n <core-form-array-layout-editor />\r\n </div>\r\n <!-- } -->\r\n\r\n @if (!coreFormDesignService.$isInWorkflowDesign()) {\r\n <aside class=\"af-metadata-overlay\" [@slideFromTopFadeIn]=\"coreFormDesignService.$showFormMetadata() ? 'in' : 'out'\"\r\n [class.shown]=\"coreFormDesignService.$showFormMetadata()\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"formMetadata\"></ng-container>\r\n </aside>\r\n }\r\n\r\n <div \r\n class=\"field-setting-panel\" \r\n [class.open]=\"coreFormDesignService.$fieldSettingPanelOpen()\" \r\n [class.calculated-type]=\"coreFormDesignService.$selectedCell()?.control?.type==='calculated'\"\r\n [ngStyle]=\"{ zIndex: $zIndex() }\"\r\n #settingPanel\r\n >\r\n @if (!!(this.coreFormDesignService.$selectedCell())) {\r\n <field-setting [$isNested]=\"false\"></field-setting>\r\n }\r\n </div>\r\n\r\n <div class=\"form-design-left\">\r\n\r\n @switch ($leftPanelMode()) {\r\n @case (enumLeftPanelMode.FieldCollection) {\r\n @for (category of controlCategories; track $index) {\r\n <div class=\"category-name\">\r\n {{ category.name }}\r\n </div>\r\n <ul>\r\n @for (control of category.controls; track $index) {\r\n <li draggable=\"true\" (dragstart)=\"onDragStart($event, control, false)\" [class.full-width]=\"control.controlType === 'SEEKER' || control.controlType === 'ATTACHMENT' || control.controlType === 'GRIDBUFFER'\">\r\n @if (control.controlType === 'GRIDBUFFER') {\r\n <div class=\"grid-buffer-wrapper\">\r\n <core-control [control]=\"control\" [form]=\"form\" [checkError$]=\"checkError$\"></core-control>\r\n </div>\r\n } @else {\r\n <core-control [control]=\"control\" [form]=\"form\" [checkError$]=\"checkError$\"></core-control>\r\n }\r\n </li>\r\n <div class=\"space\"></div>\r\n }\r\n </ul>\r\n }\r\n }\r\n @case (enumLeftPanelMode.Json) {\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"switchJson()\">{{ $jsonMode() }}</button>\r\n @if ($jsonMode()==='selectedField') {\r\n <pre class=\"json-preview\">{{ coreFormDesignService.$controlJson() }}</pre>\r\n } @else {\r\n <pre class=\"json-preview\">{{ coreFormDesignService.$saveLiveJson() }}</pre>\r\n }\r\n \r\n }\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"form-design-right\">\r\n <core-form-design-monitor [$mode]=\"'main'\"></core-form-design-monitor>\r\n <div class=\"h10\"></div>\r\n <core-form-group-editor [$idAsInput]=\"true\" />\r\n </div>\r\n @if ($loading()) {\r\n <core-toast-loading></core-toast-loading>\r\n }\r\n\r\n <ng-template #calculatedFieldsTooltip>\r\n <div style=\"max-width: 280px;\">\r\n <strong>Calculated Fields</strong><br />\r\n <p></p>\r\n These fields are hidden from the form and cannot be edited directly.<br /><br />\r\n - They are computed automatically during workflow execution.<br />\r\n - Each field depends on one or more standard input fields.<br />\r\n - The calculation is evaluated using either an SQL query engine (like <strong>Dapper</strong>) or an in-memory expression engine (like <strong>Dynamic Expresso</strong>).<br /><br />\r\n In both cases, the result is a <code>0</code> or <code>1</code>, representing <strong>false</strong> or <strong>true</strong>.<br /><br />\r\n These results can be used to influence workflow logic, rule trees, or approval paths.\r\n </div>\r\n </ng-template>\r\n \r\n</div>", styles: ["@charset \"UTF-8\";.core-form-design-container{position:relative;height:calc(100vh - var(--size-header-height) - var(--size-layout-block-cell-spacing));width:100%;overflow:hidden;background-color:#eff0f1;font-size:13px}.core-form-design-container .form-array-layout-editor-wrapper{position:fixed;top:10vh;right:-1420px;width:1420px;height:80vh;z-index:99;transition:right .25s ease-out;background-color:#ffebcd;overflow:auto;padding:15px;box-shadow:.4rem 0 2rem #0000002e}.core-form-design-container .form-array-layout-editor-wrapper.open{right:calc((100% - 1420px)/2)}.core-form-design-container .core-button-vns-container{margin-right:8px!important}.core-form-design-container .core-button-vns-container:last-child{background-color:#000;color:#fff;margin-right:0}.core-form-design-container .af-metadata-overlay{position:fixed;top:60px;left:66px;background:#fff;box-shadow:.4rem 0 2rem #0000002e;z-index:1000;width:1214px;height:calc(100vh - 75px);overflow-y:auto;pointer-events:none}.core-form-design-container .af-metadata-overlay.shown{pointer-events:auto}.core-form-design-container *{border-radius:0}.core-form-design-container ul,.core-form-design-container li{padding:0}.core-form-design-container li{max-width:200px}.core-form-design-container ul div.space{display:block;height:15px}.core-form-design-container li.full-width{max-width:100%}.core-form-design-container .field-setting-panel{display:block;position:fixed;width:360px;height:100vh;top:0;right:-360px;background-color:#fff;box-shadow:.4rem 0 2rem #0000002e;transition:right .5s ease-out}.core-form-design-container .field-setting-panel .close-wrapper{width:32px;height:32px;position:absolute;top:15px;right:15px;display:flex;background-color:#848484;border-radius:50%}.core-form-design-container .field-setting-panel .close-wrapper i{width:16px;height:16px;font-size:18px;color:#848484}.core-form-design-container .field-setting-panel .panel-caption{margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #ddd;width:100%;overflow:hidden;text-wrap:nowrap;text-overflow:ellipsis}.core-form-design-container .field-setting-panel.calculated-type{width:500px;right:-500px}.core-form-design-container .field-setting-panel.calculated-type textarea{border-radius:8px;height:150px}.core-form-design-container .field-setting-panel.open{right:0}.core-form-design-container .form-design-left{position:absolute;top:var(--size-core-page-header-height);bottom:0;left:0;z-index:1;width:360px;height:calc(100vh - var(--size-header-height) - var(--size-layout-block-cell-spacing));padding:15px;padding-right:calc(15px + var(--size-scrollbar-width));background-color:#87ceeb;overflow-y:hidden}.core-form-design-container .form-design-left .category-name{color:#fff}.core-form-design-container .form-design-left .grid-buffer-wrapper{background-color:#fff;padding:15px}.core-form-design-container .form-design-left ul:last-child{padding-bottom:400px}.core-form-design-container .form-design-left .category-name{margin-bottom:15px}.core-form-design-container .form-design-left .json-preview{background-color:#fff;color:#333;padding:1rem 1.5rem;box-shadow:0 2px 6px #00000014;font-family:Fira Code,monospace;font-size:.85rem;word-break:keep-all;overflow-x:auto;line-height:1.5;width:330px;height:calc(100vh - 205px)}.core-form-design-container .form-design-left button{height:35px;border-radius:0;margin-bottom:15px;color:#fff;border:none;font-size:13px;background-color:transparent}.core-form-design-container .form-design-left:hover{overflow-y:auto;padding-right:15px}.core-form-design-container .form-design-right{width:100%;height:calc(100vh - var(--size-header-height) - var(--size-layout-block-cell-spacing));padding:15px 15px 15px 375px;overflow-y:auto}.core-form-design-container .form-design-right .h10{height:10px}.core-form-design-container .form-design-right .form-wrapper{width:100%;overflow-y:visible;background-color:#fff}.core-form-design-container .form-design-right .form-wrapper button{margin-left:12px;padding:4px 10px;border:1px solid #ccc;cursor:pointer;transition:all .2s;width:110px}.core-form-design-container .form-design-right .form-wrapper button:hover{background-color:#e4f0ff;border-color:#007bff;color:#007bff}.core-form-design-container .form-design-right .form-wrapper .form-tool-bar{display:flex;align-items:center;justify-content:flex-end}.core-form-design-container .form-design-right .form-wrapper .form-tool-bar>button{width:150px;margin:0}.core-form-design-container .form-design-right .form-wrapper .form-cells{display:flex;flex-direction:column;gap:32px;padding:20px 15px 15px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder{padding:12px 15px;border:1px dashed #ccc;background-color:#fff;box-shadow:0 2px 6px #0000000a}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header{display:flex;position:relative;align-items:center;justify-content:flex-start;font-weight:600;margin-bottom:12px;color:#333}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header .section-img{width:34px;height:34px;border-radius:50%;background-color:#d3d3d3;float:left;background-image:url(/assets/images/info.svg);background-repeat:no-repeat;background-position:center;margin-right:8px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header .section-img.calculated{background-image:url(/assets/images/sql-icon.svg);background-color:transparent;border-radius:0}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header .section-tool{position:absolute;right:5px;top:6px;display:none;z-index:2;color:gray}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header .section-tool i{font-size:24px;color:#848484}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header:hover .section-tool{display:block}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .row-tool-bar{display:flex;align-items:center;justify-content:flex-end;margin-bottom:8px;height:24px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-row{display:flex;gap:15px;margin-bottom:15px;min-height:50px;background-color:#d3d3d3;padding:8px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell{flex:1;min-height:90px;background-color:#fcfcfc;border:1px dashed #ccc;position:relative;padding:20px 10px 10px;transition:border .2s ease-in-out}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell:before{content:attr(data-flex);position:absolute;top:2px;left:4px;font-size:10px;color:#999}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell label.required:after{content:\" *\";color:#ff040b}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell .field-toolbar{position:absolute;right:7px;top:6px;display:none;z-index:2;color:gray}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell .field-toolbar ul{display:flex}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell .field-toolbar ul li div{display:flex;width:24px;height:24px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell .field-toolbar ul li div i{font-size:18px;width:18px;height:18px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell.has-control:hover .field-toolbar{display:flex}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell.active-drop{border-color:#007bff;background-color:#eef6ff;transition:.2s}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .placeholder{display:flex;align-items:center;justify-content:center;background-color:#fff;color:#007bff;padding:15px 0;width:100%;cursor:default}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .placeholder.calculated{color:#ff4500}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .icon-wrapper{width:24px;height:24px;border-radius:50%;padding:0;cursor:pointer;display:none;color:gray;border:1px solid gray;margin-left:8px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .icon-wrapper i{font-size:18px;width:18px;height:18px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper:hover .icon-wrapper{display:flex}.core-form-design-container .form-design-right .form-wrapper .form-cell.selected{background-color:#dff6dd}.core-form-design-container .form-design-right .form-wrapper .merge-toolbar{text-align:center;margin-top:4px}.core-form-design-container .form-design-right .form-wrapper.live-form{padding-bottom:15px}.core-form-design-container .form-design-right .form-wrapper.live-form .live-form-header{padding:0 15px}.core-form-design-container .form-design-right .form-wrapper.live-form .live-form-header .preview-close-icon{position:absolute;right:7px;top:6px;z-index:2;color:gray;cursor:pointer}.core-form-design-container .form-design-right .form-wrapper.live-form .live-form-header .preview-close-icon i{font-size:18px}.core-form-design-container .drop-target{min-height:50px;min-width:50px;border:2px dashed transparent;transition:border .2s ease}.core-form-design-container .drop-target.active-drop{border-color:#007bff;background-color:#eaf4ff}.core-form-design-container .no-padding{padding:0!important}.core-form-design-container .modal-content-root{overflow:visible}\n", ".core-form-container{overflow-x:visible}.core-form-container>form .section{margin-top:var(--size-layout-block-cell-spacing)}.core-form-container>form .section.accordion{margin-bottom:0;cursor:pointer}.core-form-container>form .section.accordion .section-header-label{border:1px solid var(--acc-border-color);background-color:var(--acc-back-ground-color);color:var(--acc-font-color);height:50px;display:flex;align-items:center;justify-content:flex-start;position:relative}.core-form-container>form .section.accordion .section-header-label .section-caption{padding-left:0}.core-form-container>form .section.accordion .section-header-label .rotate-icon{transition:transform .3s ease;width:50px;height:50px;display:flex;align-items:center;justify-content:center;position:absolute;top:0;right:0}.core-form-container>form .section.accordion .section-header-label .rotate-icon.rotated90{transform:rotate(90deg)}.core-form-container>form .section.accordion .section-header-label .rotate-icon i{font-size:24px}.core-form-container>form .section.accordion .section-body{transition:all .3s ease;opacity:1}.core-form-container>form .section.accordion:not(.open) .section-body{overflow:hidden;opacity:0}.core-form-container>form .section.accordion .section-img-wrapper{height:50px;width:50px;display:flex;align-items:center;justify-content:center}.core-form-container>form .section:not(:first-child){margin-top:calc(var(--size-layout-block-cell-spacing) * 2)}.core-form-container>form .section .section-header-label{display:block;height:34px;line-height:34px;margin-bottom:15px;margin-left:12px;width:calc(100% - 24px)}.core-form-container>form .section .section-header-label .section-img-wrapper{position:relative}.core-form-container>form .section .section-header-label .section-img-wrapper .section-img{position:absolute;width:34px;height:34px;border-radius:50%;background-color:#d3d3d3;float:left;background-image:url(/assets/images/info.svg);background-repeat:no-repeat;background-position:center}.core-form-container>form .section .section-header-label .section-img-wrapper .section-img-fixed{position:absolute;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;color:#848484;float:left}.core-form-container>form .section .section-header-label .section-img-wrapper .section-img.calculated{background-image:url(/assets/images/sql-icon.svg);border-radius:0;background-color:transparent}.core-form-container>form .section .section-header-label .section-calc-wrapper{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background-color:#d3d3d3;border-radius:50%}.core-form-container>form .section .section-header-label .section-calc-wrapper i{width:24px;height:24px;font-size:24px;color:#1b4332}.core-form-container>form .section .section-header-label .section-caption{padding-left:40px;font-weight:700;color:#696969}.core-form-container>form .section .section-header-label .section-caption.has-icon-svg{font-weight:400;color:currentcolor}.core-form-container>form .section .section-header-label .with-icon-svg{padding-left:28px!important}.core-form-container .row{margin-left:var(--size-layout-block-cell-spacing) 0px;margin-right:var(--size-layout-block-cell-spacing) 0px}.core-form-container .row .grid-buffer{border:dotted 2px darkgray}.core-form-container .row .button-control{display:flex;align-items:flex-end}.core-form-container .form-row{margin:var(--size-layout-block-cell-spacing) 0px;display:flex;align-items:center;justify-content:center}.core-form-container .form-row>button{cursor:pointer;border-radius:0}.core-form-container .form-row>button:not(:first-child){margin-left:var(--size-layout-block-cell-spacing)}.core-form-container .dev-button{cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;padding:8px;width:120px;border-radius:18px;box-shadow:.4rem 0 2rem #0000002e}.core-form-container .dev-button:not(:last-child){margin-right:15px}.core-form-container .dev-button:first-child{background-color:#dff6dd;border:1px #9fdc9d solid}.core-form-container .dev-button:last-child{background-color:#fff4ce;border:1px #ffda6a solid}.core-form-container .payload-preview{display:block;width:calc(100% - 48px);height:200px;white-space:pre-wrap;overflow-x:hidden;overflow-y:auto;background-color:#dff6dd;padding:24px;margin:24px;color:#333!important;font-family:Fira Code,monospace;font-size:.85rem;word-break:keep-all;line-height:1.5}.core-form-container .payload-preview.validator-preview{background-color:#fff4ce}.core-form-container .bottom-template-wrapper{padding-left:12px;padding-right:12px}.core-form-container .w-100{width:100%}.core-form-container .pr18{padding-right:18px}.core-form-container .section-body-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:min-content;gap:1rem}.core-form-container .section-body-grid .field-col{min-width:0}.core-form-container .core-form-body{padding-bottom:var(--footer-height, 95px)}.core-form-container .core-form-body .section:last-child{margin-bottom:var(--footer-height, 95px)}.core-form-container .core-form-footer{--footer-height: 95px;height:var(--footer-height);position:sticky;bottom:0;background:#fff;border-top:1px solid #ddd;padding:12px 18px;display:flex;justify-content:flex-end;z-index:10}.core-form-container .core-form-footer .buttonGroupCustom{gap:8px}\n", ".core-button-vns-container{height:30px;display:flex;align-items:center;justify-content:center;min-width:30px}.core-button-vns-container .action-wrapper{height:30px!important;width:30px!important;display:flex;align-items:center;justify-content:center}.core-button-vns-container .action-wrapper:has(i:hover){background-color:#e7e7e7;border-radius:50%}.core-button-vns-container .btn-for-form{border:none;border-radius:0;background-color:transparent;color:#000;min-width:120px}.core-button-vns-container button.last-child{background-color:#000;color:#fff}.core-button-vns-container .action-wrapper.last-child{background-color:var(--color-basic-orange);color:#fff;border-radius:50%}.core-button-vns-container .action-wrapper.last-child:hover{background-color:var(--color-basic-orange);box-shadow:0 1rem 3rem #0000002e}.core-button-vns-container .temporary-unavailable{user-select:none;-moz-user-select:none;-webkit-user-select:none;cursor:not-allowed!important;opacity:.5}.core-button-vns-container .temporary-unavailable:hover{background-color:transparent!important}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CoreFormDesignMonitorComponent, selector: "core-form-design-monitor", inputs: ["$mode"] }, { kind: "component", type: CoreFormGroupEditorComponent, selector: "core-form-group-editor", inputs: ["$isNested", "$idAsInput", "$id"] }, { kind: "component", type: CoreFormArrayLayoutEditorComponent, selector: "core-form-array-layout-editor" }, { kind: "component", type: CoreToastLoadingComponent, selector: "core-toast-loading" }, { kind: "component", type: CorePageHeaderComponent, selector: "core-page-header", inputs: ["instanceNumber", "shownItems", "title", "hideButtonGroup", "htmlTooltipRef"], outputs: ["buttonClick"] }, { kind: "component", type: FormMetadataComponent, selector: "form-metadata" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: HotKeysDirective, selector: "[hotKeys]", inputs: ["hotKeys"] }, { kind: "component", type: CoreControlComponent, selector: "core-control", inputs: ["control", "form", "checkError$", "rangeLimit"] }, { kind: "component", type: FieldSettingComponent, selector: "field-setting", inputs: ["$isNested"] }], animations: [slideFromTopFadeIn] }); }
3503
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: CoreFormDesignComponent, isStandalone: true, selector: "core-form-design", inputs: { $idAsInput: { classPropertyName: "$idAsInput", publicName: "$idAsInput", isSignal: true, isRequired: false, transformFunction: null }, $id: { classPropertyName: "$id", publicName: "$id", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "$settingPanel", first: true, predicate: ["settingPanel"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"core-form-design-container fs-13\" [hotKeys]=\"['F3', 'F6', 'Escape']\">\r\n\r\n <core-page-header title=\"UI.COMPONENT_TITLE.WORKFLOW_FORM_DESIGN\" (buttonClick)=\"onCorePageHeaderButtonClicked($event)\"></core-page-header>\r\n \r\n <ng-template #formMetadata>\r\n <form-metadata></form-metadata>\r\n </ng-template>\r\n\r\n <!-- @if (coreFormDesignService.$showFormArrayDesign()) { -->\r\n <div class=\"form-array-layout-editor-wrapper\" [class.open]=\"coreFormDesignService.$showFormArrayDesign()\">\r\n <core-form-array-layout-editor />\r\n </div>\r\n <!-- } -->\r\n\r\n @if (!coreFormDesignService.$isInWorkflowDesign()) {\r\n <aside class=\"af-metadata-overlay\" [@slideFromTopFadeIn]=\"coreFormDesignService.$showFormMetadata() ? 'in' : 'out'\"\r\n [class.shown]=\"coreFormDesignService.$showFormMetadata()\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"formMetadata\"></ng-container>\r\n </aside>\r\n }\r\n\r\n <div \r\n class=\"field-setting-panel\" \r\n [class.open]=\"coreFormDesignService.$fieldSettingPanelOpen()\" \r\n [class.calculated-type]=\"coreFormDesignService.$selectedCell()?.control?.type==='calculated'\"\r\n [ngStyle]=\"{ zIndex: $zIndex() }\"\r\n #settingPanel\r\n >\r\n @if (!!(this.coreFormDesignService.$selectedCell())) {\r\n <field-setting [$isNested]=\"false\"></field-setting>\r\n }\r\n </div>\r\n\r\n <div class=\"form-design-left\">\r\n\r\n @switch ($leftPanelMode()) {\r\n @case (enumLeftPanelMode.FieldCollection) {\r\n @for (category of controlCategories; track $index) {\r\n <div class=\"category-name\">\r\n {{ category.name }}\r\n </div>\r\n <ul>\r\n @for (control of category.controls; track $index) {\r\n <li draggable=\"true\" (dragstart)=\"onDragStart($event, control, false)\" [class.full-width]=\"control.controlType === 'SEEKER' || control.controlType === 'ATTACHMENT' || control.controlType === 'GRIDBUFFER'\">\r\n @if (control.controlType === 'GRIDBUFFER') {\r\n <div class=\"grid-buffer-wrapper\">\r\n <core-control [control]=\"control\" [form]=\"form\" [checkError$]=\"checkError$\"></core-control>\r\n </div>\r\n } @else {\r\n <core-control [control]=\"control\" [form]=\"form\" [checkError$]=\"checkError$\"></core-control>\r\n }\r\n </li>\r\n <div class=\"space\"></div>\r\n }\r\n </ul>\r\n }\r\n }\r\n @case (enumLeftPanelMode.Json) {\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"switchJson()\">{{ $jsonMode() }}</button>\r\n @if ($jsonMode()==='selectedField') {\r\n <pre class=\"json-preview\">{{ coreFormDesignService.$controlJson() }}</pre>\r\n } @else {\r\n <pre class=\"json-preview\">{{ coreFormDesignService.$saveLiveJson() }}</pre>\r\n }\r\n \r\n }\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"form-design-right\">\r\n <core-form-design-monitor [$mode]=\"'main'\"></core-form-design-monitor>\r\n <div class=\"h10\"></div>\r\n <core-form-group-editor [$idAsInput]=\"true\" />\r\n </div>\r\n @if ($loading()) {\r\n <core-toast-loading></core-toast-loading>\r\n }\r\n\r\n <ng-template #calculatedFieldsTooltip>\r\n <div style=\"max-width: 280px;\">\r\n <strong>Calculated Fields</strong><br />\r\n <p></p>\r\n These fields are hidden from the form and cannot be edited directly.<br /><br />\r\n - They are computed automatically during workflow execution.<br />\r\n - Each field depends on one or more standard input fields.<br />\r\n - The calculation is evaluated using either an SQL query engine (like <strong>Dapper</strong>) or an in-memory expression engine (like <strong>Dynamic Expresso</strong>).<br /><br />\r\n In both cases, the result is a <code>0</code> or <code>1</code>, representing <strong>false</strong> or <strong>true</strong>.<br /><br />\r\n These results can be used to influence workflow logic, rule trees, or approval paths.\r\n </div>\r\n </ng-template>\r\n \r\n</div>", styles: ["@charset \"UTF-8\";.core-form-design-container{position:relative;height:calc(100vh - var(--size-header-height) - var(--size-layout-block-cell-spacing));width:100%;overflow:hidden;background-color:#eff0f1;font-size:13px}.core-form-design-container .form-array-layout-editor-wrapper{position:fixed;top:10vh;right:-1420px;width:1420px;height:80vh;z-index:99;transition:right .25s ease-out;background-color:#ffebcd;overflow:auto;padding:15px;box-shadow:.4rem 0 2rem #0000002e}.core-form-design-container .form-array-layout-editor-wrapper.open{right:calc((100% - 1420px)/2)}.core-form-design-container .core-button-vns-container{margin-right:8px!important}.core-form-design-container .core-button-vns-container:last-child{background-color:#000;color:#fff;margin-right:0}.core-form-design-container .af-metadata-overlay{position:fixed;top:60px;left:66px;background:#fff;box-shadow:.4rem 0 2rem #0000002e;z-index:1000;width:1214px;height:calc(100vh - 75px);overflow-y:auto;pointer-events:none}.core-form-design-container .af-metadata-overlay.shown{pointer-events:auto}.core-form-design-container *{border-radius:0}.core-form-design-container ul,.core-form-design-container li{padding:0}.core-form-design-container li{max-width:200px}.core-form-design-container ul div.space{display:block;height:15px}.core-form-design-container li.full-width{max-width:100%}.core-form-design-container .field-setting-panel{display:block;position:fixed;width:360px;height:100vh;top:0;right:-360px;background-color:#fff;box-shadow:.4rem 0 2rem #0000002e;transition:right .5s ease-out}.core-form-design-container .field-setting-panel .close-wrapper{width:32px;height:32px;position:absolute;top:15px;right:15px;display:flex;background-color:#848484;border-radius:50%}.core-form-design-container .field-setting-panel .close-wrapper i{width:16px;height:16px;font-size:18px;color:#848484}.core-form-design-container .field-setting-panel .panel-caption{margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #ddd;width:100%;overflow:hidden;text-wrap:nowrap;text-overflow:ellipsis}.core-form-design-container .field-setting-panel.calculated-type{width:500px;right:-500px}.core-form-design-container .field-setting-panel.calculated-type textarea{border-radius:8px;height:150px}.core-form-design-container .field-setting-panel.open{right:0}.core-form-design-container .form-design-left{position:absolute;top:var(--size-core-page-header-height);bottom:0;left:0;z-index:1;width:360px;height:calc(100vh - var(--size-header-height) - var(--size-layout-block-cell-spacing));padding:15px;padding-right:calc(15px + var(--size-scrollbar-width));background-color:#87ceeb;overflow-y:hidden}.core-form-design-container .form-design-left .category-name{color:#fff}.core-form-design-container .form-design-left .grid-buffer-wrapper{background-color:#fff;padding:15px}.core-form-design-container .form-design-left ul:last-child{padding-bottom:400px}.core-form-design-container .form-design-left .category-name{margin-bottom:15px}.core-form-design-container .form-design-left .json-preview{background-color:#fff;color:#333;padding:1rem 1.5rem;box-shadow:0 2px 6px #00000014;font-family:Fira Code,monospace;font-size:.85rem;word-break:keep-all;overflow-x:auto;line-height:1.5;width:330px;height:calc(100vh - 205px)}.core-form-design-container .form-design-left button{height:35px;border-radius:0;margin-bottom:15px;color:#fff;border:none;font-size:13px;background-color:transparent}.core-form-design-container .form-design-left:hover{overflow-y:auto;padding-right:15px}.core-form-design-container .form-design-right{width:100%;height:calc(100vh - var(--size-header-height) - var(--size-layout-block-cell-spacing));padding:15px 15px 15px 375px;overflow-y:auto}.core-form-design-container .form-design-right .h10{height:10px}.core-form-design-container .form-design-right .form-wrapper{width:100%;overflow-y:visible;background-color:#fff}.core-form-design-container .form-design-right .form-wrapper button{margin-left:12px;padding:4px 10px;border:1px solid #ccc;cursor:pointer;transition:all .2s;width:110px}.core-form-design-container .form-design-right .form-wrapper button:hover{background-color:#e4f0ff;border-color:#007bff;color:#007bff}.core-form-design-container .form-design-right .form-wrapper .form-tool-bar{display:flex;align-items:center;justify-content:flex-end}.core-form-design-container .form-design-right .form-wrapper .form-tool-bar>button{width:150px;margin:0}.core-form-design-container .form-design-right .form-wrapper .form-cells{display:flex;flex-direction:column;gap:32px;padding:20px 15px 15px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder{padding:12px 15px;border:1px dashed #ccc;background-color:#fff;box-shadow:0 2px 6px #0000000a}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header{display:flex;position:relative;align-items:center;justify-content:flex-start;font-weight:600;margin-bottom:12px;color:#333}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header .section-img{width:34px;height:34px;border-radius:50%;background-color:#d3d3d3;float:left;background-image:url(/assets/images/info.svg);background-repeat:no-repeat;background-position:center;margin-right:8px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header .section-img.calculated{background-image:url(/assets/images/sql-icon.svg);background-color:transparent;border-radius:0}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header .section-tool{position:absolute;right:5px;top:6px;display:none;z-index:2;color:gray}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header .section-tool i{font-size:24px;color:#848484}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-section-placeholder .section-header:hover .section-tool{display:block}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .row-tool-bar{display:flex;align-items:center;justify-content:flex-end;margin-bottom:8px;height:24px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-row{display:flex;gap:15px;margin-bottom:15px;min-height:50px;background-color:#d3d3d3;padding:8px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell{flex:1;min-height:90px;background-color:#fcfcfc;border:1px dashed #ccc;position:relative;padding:20px 10px 10px;transition:border .2s ease-in-out}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell:before{content:attr(data-flex);position:absolute;top:2px;left:4px;font-size:10px;color:#999}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell label.required:after{content:\" *\";color:#ff040b}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell .field-toolbar{position:absolute;right:7px;top:6px;display:none;z-index:2;color:gray}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell .field-toolbar ul{display:flex}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell .field-toolbar ul li div{display:flex;width:24px;height:24px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell .field-toolbar ul li div i{font-size:18px;width:18px;height:18px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell.has-control:hover .field-toolbar{display:flex}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .form-cell.active-drop{border-color:#007bff;background-color:#eef6ff;transition:.2s}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .placeholder{display:flex;align-items:center;justify-content:center;background-color:#fff;color:#007bff;padding:15px 0;width:100%;cursor:default}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .placeholder.calculated{color:#ff4500}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .icon-wrapper{width:24px;height:24px;border-radius:50%;padding:0;cursor:pointer;display:none;color:gray;border:1px solid gray;margin-left:8px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper .icon-wrapper i{font-size:18px;width:18px;height:18px}.core-form-design-container .form-design-right .form-wrapper .form-cells .form-row-wrapper:hover .icon-wrapper{display:flex}.core-form-design-container .form-design-right .form-wrapper .form-cell.selected{background-color:#dff6dd}.core-form-design-container .form-design-right .form-wrapper .merge-toolbar{text-align:center;margin-top:4px}.core-form-design-container .form-design-right .form-wrapper.live-form{padding-bottom:15px}.core-form-design-container .form-design-right .form-wrapper.live-form .live-form-header{padding:0 15px}.core-form-design-container .form-design-right .form-wrapper.live-form .live-form-header .preview-close-icon{position:absolute;right:7px;top:6px;z-index:2;color:gray;cursor:pointer}.core-form-design-container .form-design-right .form-wrapper.live-form .live-form-header .preview-close-icon i{font-size:18px}.core-form-design-container .drop-target{min-height:50px;min-width:50px;border:2px dashed transparent;transition:border .2s ease}.core-form-design-container .drop-target.active-drop{border-color:#007bff;background-color:#eaf4ff}.core-form-design-container .no-padding{padding:0!important}.core-form-design-container .modal-content-root{overflow:visible}\n", ".core-form-container{overflow-x:visible}.core-form-container>form .section{margin-top:var(--size-layout-block-cell-spacing)}.core-form-container>form .section.accordion{margin-bottom:0;cursor:pointer}.core-form-container>form .section.accordion .section-header-label{border:1px solid var(--acc-border-color);background-color:var(--acc-back-ground-color);color:var(--acc-font-color);height:50px;display:flex;align-items:center;justify-content:flex-start;position:relative}.core-form-container>form .section.accordion .section-header-label .section-caption{padding-left:0}.core-form-container>form .section.accordion .section-header-label .rotate-icon{transition:transform .3s ease;width:50px;height:50px;display:flex;align-items:center;justify-content:center;position:absolute;top:0;right:0}.core-form-container>form .section.accordion .section-header-label .rotate-icon.rotated90{transform:rotate(90deg)}.core-form-container>form .section.accordion .section-header-label .rotate-icon i{font-size:24px}.core-form-container>form .section.accordion .section-body{transition:all .3s ease;opacity:1}.core-form-container>form .section.accordion:not(.open) .section-body{overflow:hidden;opacity:0}.core-form-container>form .section.accordion .section-img-wrapper{height:50px;width:50px;display:flex;align-items:center;justify-content:center}.core-form-container>form .section:not(:first-child){margin-top:calc(var(--size-layout-block-cell-spacing) * 2)}.core-form-container>form .section .section-header-label{display:block;height:34px;line-height:34px;margin-bottom:15px;margin-left:12px;width:calc(100% - 24px)}.core-form-container>form .section .section-header-label .section-img-wrapper{position:relative}.core-form-container>form .section .section-header-label .section-img-wrapper .section-img{position:absolute;width:34px;height:34px;border-radius:50%;background-color:#d3d3d3;float:left;background-image:url(/assets/images/info.svg);background-repeat:no-repeat;background-position:center}.core-form-container>form .section .section-header-label .section-img-wrapper .section-img-fixed{position:absolute;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;color:#848484;float:left}.core-form-container>form .section .section-header-label .section-img-wrapper .section-img.calculated{background-image:url(/assets/images/sql-icon.svg);border-radius:0;background-color:transparent}.core-form-container>form .section .section-header-label .section-calc-wrapper{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background-color:#d3d3d3;border-radius:50%}.core-form-container>form .section .section-header-label .section-calc-wrapper i{width:24px;height:24px;font-size:24px;color:#1b4332}.core-form-container>form .section .section-header-label .section-caption{padding-left:40px;font-weight:700;color:#696969}.core-form-container>form .section .section-header-label .section-caption.has-icon-svg{font-weight:400;color:currentcolor}.core-form-container>form .section .section-header-label .with-icon-svg{padding-left:28px!important}.core-form-container .row{margin-left:var(--size-layout-block-cell-spacing) 0px;margin-right:var(--size-layout-block-cell-spacing) 0px}.core-form-container .row .grid-buffer{border:dotted 2px darkgray}.core-form-container .row .button-control{display:flex;align-items:flex-end}.core-form-container .form-row{margin:var(--size-layout-block-cell-spacing) 0px;display:flex;align-items:center;justify-content:center}.core-form-container .form-row>button{cursor:pointer;border-radius:0}.core-form-container .form-row>button:not(:first-child){margin-left:var(--size-layout-block-cell-spacing)}.core-form-container .dev-button{cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;padding:8px;width:120px;border-radius:18px;box-shadow:.4rem 0 2rem #0000002e}.core-form-container .dev-button:not(:last-child){margin-right:15px}.core-form-container .dev-button:first-child{background-color:#dff6dd;border:1px #9fdc9d solid}.core-form-container .dev-button:last-child{background-color:#fff4ce;border:1px #ffda6a solid}.core-form-container .payload-preview{display:block;width:calc(100% - 48px);height:200px;white-space:pre-wrap;overflow-x:hidden;overflow-y:auto;background-color:#dff6dd;padding:24px;margin:24px;color:#333!important;font-family:Fira Code,monospace;font-size:.85rem;word-break:keep-all;line-height:1.5}.core-form-container .payload-preview.validator-preview{background-color:#fff4ce}.core-form-container .bottom-template-wrapper{padding-left:12px;padding-right:12px}.core-form-container .w-100{width:100%}.core-form-container .pr18{padding-right:18px}.core-form-container .section-body-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:min-content;gap:1rem}.core-form-container .section-body-grid .field-col{min-width:0}.core-form-container .core-form-body{padding-bottom:var(--footer-height, 95px)}.core-form-container .core-form-body .section:last-child{margin-bottom:var(--footer-height, 95px)}.core-form-container .core-form-footer{--footer-height: 95px;height:var(--footer-height);position:sticky;bottom:0;background:#fff;border-top:1px solid #ddd;padding:12px 18px;display:flex;justify-content:flex-end;z-index:10}.core-form-container .core-form-footer .buttonGroupCustom{gap:8px}\n", ".core-button-vns-container{height:30px;display:flex;align-items:center;justify-content:center;min-width:30px}.core-button-vns-container .action-wrapper{height:30px!important;width:30px!important;display:flex;align-items:center;justify-content:center}.core-button-vns-container .action-wrapper:has(i:hover){background-color:#e7e7e7;border-radius:50%}.core-button-vns-container .btn-for-form{border:none;border-radius:0;background-color:transparent;color:#000;min-width:120px}.core-button-vns-container button.last-child{background-color:#000;color:#fff}.core-button-vns-container .action-wrapper.last-child{background-color:var(--color-basic-orange);color:#fff;border-radius:50%}.core-button-vns-container .action-wrapper.last-child:hover{background-color:var(--color-basic-orange);box-shadow:0 1rem 3rem #0000002e}.core-button-vns-container .temporary-unavailable{user-select:none;-moz-user-select:none;-webkit-user-select:none;cursor:not-allowed!important;opacity:.5}.core-button-vns-container .temporary-unavailable:hover{background-color:transparent!important}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CoreFormDesignMonitorComponent, selector: "core-form-design-monitor", inputs: ["$mode"] }, { kind: "component", type: CoreFormGroupEditorComponent, selector: "core-form-group-editor", inputs: ["$isNested", "$idAsInput", "$id"] }, { kind: "component", type: CoreFormArrayLayoutEditorComponent, selector: "core-form-array-layout-editor" }, { kind: "component", type: CoreToastLoadingComponent, selector: "core-toast-loading" }, { kind: "component", type: CorePageHeaderComponent, selector: "core-page-header", inputs: ["instanceNumber", "shownItems", "title", "hideButtonGroup", "htmlTooltipRef", "$loading"], outputs: ["buttonClick"] }, { kind: "component", type: FormMetadataComponent, selector: "form-metadata" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: HotKeysDirective, selector: "[hotKeys]", inputs: ["hotKeys"] }, { kind: "component", type: CoreControlComponent, selector: "core-control", inputs: ["control", "form", "checkError$", "rangeLimit"] }, { kind: "component", type: FieldSettingComponent, selector: "field-setting", inputs: ["$isNested"] }], animations: [slideFromTopFadeIn] }); }
3504
3504
  }
3505
3505
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreFormDesignComponent, decorators: [{
3506
3506
  type: Component,
@@ -3538,4 +3538,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
3538
3538
  }], ctorParameters: () => [{ type: MultiLanguageService }] });
3539
3539
 
3540
3540
  export { CoreFormDesignComponent };
3541
- //# sourceMappingURL=ngx-histaff-alpha-core-form-design.component-CfGdP-n6.mjs.map
3541
+ //# sourceMappingURL=ngx-histaff-alpha-core-form-design.component-Fyu8eatJ.mjs.map