ngx-histaff-alpha 5.9.8 → 5.9.9

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 (49) hide show
  1. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-LwKSHyKk.mjs → ngx-histaff-alpha-ai-hint-for-table.component-DJou-dbD.mjs} +3 -3
  2. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-LwKSHyKk.mjs.map → ngx-histaff-alpha-ai-hint-for-table.component-DJou-dbD.mjs.map} +1 -1
  3. package/fesm2022/{ngx-histaff-alpha-core-form-design.component-CLP9z8SX.mjs → ngx-histaff-alpha-core-form-design.component-XvkMxYKX.mjs} +6 -6
  4. package/fesm2022/{ngx-histaff-alpha-core-form-design.component-CLP9z8SX.mjs.map → ngx-histaff-alpha-core-form-design.component-XvkMxYKX.mjs.map} +1 -1
  5. package/fesm2022/{ngx-histaff-alpha-core-sticker-collection.component-DspubYpO.mjs → ngx-histaff-alpha-core-sticker-collection.component-B8YmSEoB.mjs} +3 -3
  6. package/fesm2022/{ngx-histaff-alpha-core-sticker-collection.component-DspubYpO.mjs.map → ngx-histaff-alpha-core-sticker-collection.component-B8YmSEoB.mjs.map} +1 -1
  7. package/fesm2022/ngx-histaff-alpha-core-template-editor.component-_BGMfd0v.mjs +165 -0
  8. package/fesm2022/ngx-histaff-alpha-core-template-editor.component-_BGMfd0v.mjs.map +1 -0
  9. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-CZ76vY5V.mjs → ngx-histaff-alpha-core-toast-loading.component-vDd15vTt.mjs} +2 -2
  10. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-CZ76vY5V.mjs.map → ngx-histaff-alpha-core-toast-loading.component-vDd15vTt.mjs.map} +1 -1
  11. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-DO3Nzaoi.mjs → ngx-histaff-alpha-core-workflow-consume.component-DOC0gxvF.mjs} +2 -2
  12. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-DO3Nzaoi.mjs.map → ngx-histaff-alpha-core-workflow-consume.component-DOC0gxvF.mjs.map} +1 -1
  13. package/fesm2022/{ngx-histaff-alpha-db-settings.component-DgK0rSP7.mjs → ngx-histaff-alpha-db-settings.component-osYYD2VZ.mjs} +5 -5
  14. package/fesm2022/{ngx-histaff-alpha-db-settings.component-DgK0rSP7.mjs.map → ngx-histaff-alpha-db-settings.component-osYYD2VZ.mjs.map} +1 -1
  15. package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-D024hCoP.mjs → ngx-histaff-alpha-design-wrapper.component-Doqa5ktj.mjs} +5 -5
  16. package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-D024hCoP.mjs.map → ngx-histaff-alpha-design-wrapper.component-Doqa5ktj.mjs.map} +1 -1
  17. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-DsVoPNPs.mjs → ngx-histaff-alpha-design-wrapper.route-FELy6p-G.mjs} +5 -5
  18. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-DsVoPNPs.mjs.map → ngx-histaff-alpha-design-wrapper.route-FELy6p-G.mjs.map} +1 -1
  19. package/fesm2022/{ngx-histaff-alpha-form-array-props.component-DqAm4dkR.mjs → ngx-histaff-alpha-form-array-props.component-CfQR3S5b.mjs} +3 -3
  20. package/fesm2022/{ngx-histaff-alpha-form-array-props.component-DqAm4dkR.mjs.map → ngx-histaff-alpha-form-array-props.component-CfQR3S5b.mjs.map} +1 -1
  21. package/fesm2022/{ngx-histaff-alpha-live-form.component-R7pHFYgi.mjs → ngx-histaff-alpha-live-form.component-CxHOd02D.mjs} +2 -2
  22. package/fesm2022/{ngx-histaff-alpha-live-form.component-R7pHFYgi.mjs.map → ngx-histaff-alpha-live-form.component-CxHOd02D.mjs.map} +1 -1
  23. package/fesm2022/{ngx-histaff-alpha-ngx-histaff-alpha-5kn-eYSE.mjs → ngx-histaff-alpha-ngx-histaff-alpha-CgCAObWj.mjs} +693 -40
  24. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-CgCAObWj.mjs.map +1 -0
  25. package/fesm2022/{ngx-histaff-alpha-simple-chat.component-sotxt4dM.mjs → ngx-histaff-alpha-simple-chat.component-CDCKBrkZ.mjs} +2 -2
  26. package/fesm2022/{ngx-histaff-alpha-simple-chat.component-sotxt4dM.mjs.map → ngx-histaff-alpha-simple-chat.component-CDCKBrkZ.mjs.map} +1 -1
  27. package/fesm2022/ngx-histaff-alpha-template-list.component-BFTwxU2H.mjs +96 -0
  28. package/fesm2022/ngx-histaff-alpha-template-list.component-BFTwxU2H.mjs.map +1 -0
  29. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-CGOfOF7w.mjs → ngx-histaff-alpha-tracker-studio.component-DnkbQFFW.mjs} +2 -2
  30. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-CGOfOF7w.mjs.map → ngx-histaff-alpha-tracker-studio.component-DnkbQFFW.mjs.map} +1 -1
  31. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-Br1oyTKL.mjs → ngx-histaff-alpha-wf-form-assign.component-Do8vO6MV.mjs} +2 -2
  32. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-Br1oyTKL.mjs.map → ngx-histaff-alpha-wf-form-assign.component-Do8vO6MV.mjs.map} +1 -1
  33. package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-Cni9RLzU.mjs → ngx-histaff-alpha-wf-instance-status.component-BqWwA5pQ.mjs} +2 -2
  34. package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-Cni9RLzU.mjs.map → ngx-histaff-alpha-wf-instance-status.component-BqWwA5pQ.mjs.map} +1 -1
  35. package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-DdBuf8x6.mjs → ngx-histaff-alpha-wf-instance-step-react.component-3XR3zc8T.mjs} +3 -3
  36. package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-DdBuf8x6.mjs.map → ngx-histaff-alpha-wf-instance-step-react.component-3XR3zc8T.mjs.map} +1 -1
  37. package/fesm2022/ngx-histaff-alpha.mjs +1 -1
  38. package/lib/app/enum/EnumFormBaseContolType.d.ts +2 -1
  39. package/lib/app/libraries/core-doc-gen/core-template-editor/core-template-editor.component.d.ts +24 -0
  40. package/lib/app/libraries/core-doc-gen/doc-gen.routes.d.ts +2 -0
  41. package/lib/app/libraries/core-doc-gen/template-list/template-list.component.d.ts +13 -0
  42. package/lib/app/libraries/core-docgen-toolbar/core-docgen-toolbar.component.d.ts +45 -0
  43. package/lib/app/libraries/core-form/core-form/enum-interfaces.d.ts +5 -1
  44. package/lib/app/libraries/core-form-design/core-form-design.component.d.ts +1 -1
  45. package/lib/app/libraries/core-form-design/core-form-group-editor.component.d.ts +1 -1
  46. package/lib/app/libraries/core-liquid-wysiwyg/core-liquid-wysiwyg.component.d.ts +57 -0
  47. package/package.json +1 -1
  48. package/public-api.d.ts +3 -0
  49. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-5kn-eYSE.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-histaff-alpha-db-settings.component-DgK0rSP7.mjs","sources":["../../../projects/ngx-histaff-alpha/src/lib/app/libraries/core-workflow-builder/db-settings/db-settings.component.ts","../../../projects/ngx-histaff-alpha/src/lib/app/libraries/core-workflow-builder/db-settings/db-settings.component.html"],"sourcesContent":["import { AfterViewInit, ChangeDetectionStrategy, Component, runInInjectionContext, Injector, inject, signal, WritableSignal, effect, computed } from '@angular/core';\r\nimport { CoreStickerCollectionComponent } from '../../core-sticker-collection/core-sticker-collection.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CorePageHeaderComponent } from '../../core-page-header/core-page-header/core-page-header.component';\r\nimport { IColumnWithHint, IWorkflowSchemaTable } from '../interfaces/IWorkflowSchema'\r\nimport { CoreWorkflowService } from '../core-workflow.service';\r\nimport { BaseComponent } from '../../base-component/base/base.component';\r\nimport { BehaviorSubject, catchError, debounceTime, distinctUntilChanged, filter, finalize, of, Subject, switchMap, tap } from 'rxjs';\r\nimport { DbService, IGetWorkflowSchemaRequest } from '../../../services/db.service';\r\nimport { IPagination } from '../../../interfaces/IQueryListRequest';\r\nimport { DragReorderDirective } from '../../../directives/drag-reorder.directive';\r\nimport { TooltipDirective } from '../../tooltip/tooltip.directive';\r\nimport { TranslatePipe } from '../../../app-pipes/translate.pipe';\r\nimport { AiHintForTableComponent } from './ai-hint-for-table/ai-hint-for-table.component';\r\nimport { AiHintForColumnComponent } from './ai-hint-for-column/ai-hint-for-column.component';\r\nimport { CoreToastLoadingComponent } from '../../core-toast-loading/core-toast-loading.component';\r\n\r\n@Component({\r\n selector: 'db-settings',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [\r\n FormsModule,\r\n CorePageHeaderComponent,\r\n CoreStickerCollectionComponent,\r\n CoreToastLoadingComponent,\r\n DragReorderDirective,\r\n TranslatePipe,\r\n TooltipDirective,\r\n AiHintForTableComponent,\r\n AiHintForColumnComponent,\r\n ],\r\n templateUrl: './db-settings.component.html',\r\n styleUrl: './db-settings.component.scss'\r\n})\r\nexport class DbSettingsComponent extends BaseComponent implements AfterViewInit {\r\n\r\n public wfs = inject(CoreWorkflowService);\r\n dbs = inject(DbService);\r\n injector = inject(Injector);\r\n // $schema = this.wfs.$workflowDbSchema;\r\n $loading = signal(false);\r\n $sortMode = signal<boolean>(false);\r\n\r\n $activeHintEditor = signal<{\r\n table: IWorkflowSchemaTable;\r\n column: string;\r\n top: number;\r\n left: number;\r\n } | null>(null);\r\n\r\n orderChanges$ = new Subject<IWorkflowSchemaTable[]>();\r\n activeColumnsChanges$ = new Subject<{ table: string; activeColumns: string[] }>();\r\n\r\n $totalItems = signal(0);\r\n\r\n searchTerm: string = '';\r\n search$ = new BehaviorSubject<string>('');\r\n\r\n getListStream$ = new BehaviorSubject<IGetWorkflowSchemaRequest | null>(null);\r\n\r\n onFieldToggle(table: IWorkflowSchemaTable, e: string[]): void {\r\n this.updateTableStatus(table, !!e.length);\r\n this.activeColumnsChanges$.next({ table: table.table, activeColumns: e });\r\n }\r\n\r\n openHintEditor(table: IWorkflowSchemaTable, e: any): void {\r\n const { column } = e.item;\r\n this.$activeHintEditor.set({\r\n table,\r\n column,\r\n top: e.e.clientY,\r\n left: e.e.clientX,\r\n });\r\n }\r\n\r\n closeHintEditor(): void {\r\n this.$activeHintEditor.set(null);\r\n }\r\n\r\n onSearchChange(e: string): void {\r\n this.search$.next(e);\r\n }\r\n\r\n getActiveColumnNameArray(table: string): string[] {\r\n return this.wfs.$workflowDbSchema().filter(x => x.table === table)[0].columns.filter(x => !!x.isActive).map(x => x.column);\r\n }\r\n\r\n updateTableStatus(table: IWorkflowSchemaTable, isActive: boolean): void {\r\n\r\n if (table.isActive === isActive) return;\r\n\r\n const updated = this.wfs.$workflowDbSchema().map(t =>\r\n t.table === table.table\r\n ? {\r\n ...t,\r\n isActive,\r\n columns: t.columns.map(c => ({ ...c, isActive }))\r\n }\r\n : t\r\n );\r\n this.wfs.$workflowDbSchema.set([...updated]);\r\n\r\n\r\n }\r\n\r\n togglerSortMode(): void {\r\n this.$sortMode.set(!this.$sortMode())\r\n }\r\n\r\n updateColumnStatus(table: IWorkflowSchemaTable, selectedColumns: string[]): void {\r\n const updated = this.wfs.$workflowDbSchema().map(t =>\r\n t.table === table.table\r\n ? {\r\n ...t,\r\n columns: t.columns.map(c => ({\r\n ...c,\r\n isActive: selectedColumns.includes(c.column)\r\n })),\r\n isActive: selectedColumns.length > 0\r\n }\r\n : t\r\n );\r\n this.wfs.$workflowDbSchema.set(updated);\r\n }\r\n\r\n save(): void {\r\n const payload = this.wfs.$workflowDbSchema().map(table => ({\r\n table: table.table,\r\n isActive: table.isActive,\r\n columns: table.columns.map(c => ({\r\n column: c.column,\r\n isActive: c.isActive,\r\n hintForAi: c.hintForAi\r\n }))\r\n }));\r\n\r\n console.log('Saving schema payload:', payload);\r\n // Optional: Call API to save\r\n // this.http.post('/api/.../UpdateWorkflowSchema', payload).subscribe(...)\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n\r\n this.subscriptions.push(\r\n this.orderChanges$\r\n .pipe(\r\n tap(_ => {\r\n console.log(\"this.orderChanges$ changed\")\r\n }),\r\n debounceTime(800), // wait 800ms after last change\r\n distinctUntilChanged((a, b) =>\r\n JSON.stringify(a.map(x => ({ id: x.id, orderNum: x.orderNum }))) ===\r\n JSON.stringify(b.map(x => ({ id: x.id, orderNum: x.orderNum })))\r\n ),\r\n switchMap(newOrder => this.wfs.updateTableOrder(newOrder)),\r\n catchError(err => {\r\n console.error('🚨 Backend update failed:', err);\r\n return of({ ok: false, status: 500, body: { statusCode: 500 } });\r\n })\r\n )\r\n .subscribe(x => {\r\n if (x.ok && x.status === 200 && x.body?.statusCode === 200) {\r\n // no need to send any UI alert \r\n }\r\n })\r\n )\r\n\r\n this.subscriptions.push(\r\n this.activeColumnsChanges$\r\n .pipe(\r\n tap(_ => {\r\n console.log(\"this.activeColumnsChanges$ changed\")\r\n }),\r\n debounceTime(800), // wait 800ms after last change\r\n distinctUntilChanged((a, b) =>\r\n JSON.stringify(a) === JSON.stringify(b)\r\n ),\r\n switchMap(newState => this.dbs.updateColumnStatus(newState.table, newState.activeColumns)),\r\n catchError(err => {\r\n console.error('🚨 Backend update failed:', err);\r\n return of({ ok: false, status: 500, body: { statusCode: 500 } });\r\n })\r\n )\r\n .subscribe(x => {\r\n if (x.ok && x.status === 200 && x.body?.statusCode === 200) {\r\n // no need to send any UI alert \r\n }\r\n })\r\n )\r\n\r\n this.subscriptions.push(\r\n this.search$.pipe(\r\n debounceTime(500),\r\n distinctUntilChanged()\r\n ).subscribe(s => {\r\n this.getListStream$.next({\r\n ...this.getListStream$.value,\r\n searchTerm: s\r\n });\r\n })\r\n );\r\n\r\n this.subscriptions.push(\r\n this.getListStream$.pipe(\r\n filter(Boolean),\r\n distinctUntilChanged((prev, curr) =>\r\n JSON.stringify(prev) === JSON.stringify(curr)\r\n ),\r\n tap(() => this.$loading.set(true)),\r\n switchMap(request =>\r\n this.dbs.syncAndGetWorkflowSchemaMetadata(request).pipe(\r\n catchError(() => of({ ok: false, status: 500 })),\r\n finalize(() => this.$loading.set(false))\r\n )\r\n )\r\n ).subscribe((res: any) => {\r\n if (res.ok && res.status === 200 && res.body?.statusCode === 200) {\r\n this.wfs.$workflowDbSchema.set(res.body.innerBody.items);\r\n this.$totalItems.set(res.body.innerBody.totalItems)\r\n }\r\n })\r\n );\r\n\r\n\r\n setTimeout(() => {\r\n // Some more code...\r\n })\r\n }\r\n\r\n onTableShowMoreClicked(table: string, e: any) {\r\n\r\n }\r\n\r\n onListReorderUpdate(orderSet: { id: string; orderNum: number }[]): void {\r\n // Normalize ID to numbers\r\n const orderMap = new Map<number, number>(\r\n orderSet.map(x => [Number(x.id), x.orderNum])\r\n );\r\n\r\n // Get current state\r\n const currentTables = this.wfs.$workflowDbSchema();\r\n\r\n // Rebuild reordered state\r\n const reordered = currentTables\r\n .map(table => ({\r\n ...table,\r\n orderNum: orderMap.get(table.id) ?? table.orderNum\r\n }))\r\n .sort((a, b) => (a.orderNum ?? 0) - (b.orderNum ?? 0));\r\n\r\n // Debug output\r\n console.log(\"🌀 Reordered Groups:\", reordered);\r\n\r\n // Commit to signal/store\r\n this.wfs.$workflowDbSchema.set(reordered);\r\n\r\n // Optional: Trigger backend sync\r\n this.orderChanges$.next(reordered);\r\n }\r\n\r\n}\r\n","<core-page-header\r\n title=\"DB Settings For Workflow Builder\"\r\n [hideButtonGroup]=\"true\"\r\n [htmlTooltipRef]=\"htmlTooltipRef\"\r\n >\r\n</core-page-header>\r\n\r\n<!-- <pre>{{ $activeHintEditorJson() }}</pre> -->\r\n\r\n<div class=\"container-fluid\">\r\n <!-- 🔍 Search + Sort Toolbar -->\r\n <div class=\"db-toolbar d-flex flex-wrap justify-content-between align-items-center mb-3 gap-3\">\r\n <div class=\"search-box flex-grow-1\">\r\n <input\r\n type=\"text\"\r\n class=\"form-control search-input\"\r\n placeholder=\"Search tables or columns...\"\r\n [(ngModel)]=\"searchTerm\"\r\n (ngModelChange)=\"onSearchChange($event)\" />\r\n </div>\r\n\r\n <div>\r\n <button class=\"btn btn-outline-secondary btn-sm sort-toggle-btn\" (click)=\"togglerSortMode()\">\r\n {{ $sortMode() ? 'Expand' : 'Sort' }}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <!-- 📦 Workflow Schema Table List -->\r\n <div class=\"group-list p-relative mt-4\">\r\n @for (table of wfs.$workflowDbSchema(); track table.id) {\r\n\r\n @defer(on viewport; on timer(5s)) {\r\n\r\n @if ($sortMode()) {\r\n <!-- Sort Mode: Draggable Card -->\r\n <div\r\n class=\"drag-item\"\r\n [attr.data-id]=\"table.table\"\r\n dragReorder\r\n (updateList)=\"onListReorderUpdate($event)\">\r\n <div class=\"col-md-12\">\r\n <div class=\"table-wrapper\" [class.active]=\"!!table.isActive\">\r\n <div class=\"item-header\">\r\n <div class=\"table-name pointer\" [appTooltip]=\"table.hintForAi ?? ''\" [showAnyway]=\"true\">{{ table.table }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n } @else {\r\n <!-- Expanded Mode: Table with Columns -->\r\n <div class=\"row gx-5 gy-4\">\r\n <div class=\"col-md-12\">\r\n <div class=\"table-wrapper\" [class.active]=\"!!table.isActive\">\r\n <div class=\"item-header\">\r\n <div class=\"table-name pointer\" [appTooltip]=\"table.hintForAi ?? ''\" [showAnyway]=\"true\" [class.has-hint]=\"!!table.hintForAi && !!table.hintForAi!.length\">{{ table.table }}</div>\r\n <ai-hint-for-table [$table]=\"table\" />\r\n </div>\r\n\r\n <div class=\"item-columns\">\r\n <core-sticker-collection\r\n [$items]=\"table.columns\"\r\n [$initialChecked]=\"getActiveColumnNameArray(table.table)\"\r\n [$shownFrom]=\"'column'\"\r\n [$tooltipFrom]=\"'hintForAi'\"\r\n [$showMore]=\"true\"\r\n [$showMoreTooltip]=\"'Set Hint for AI'\"\r\n [$hideShowMoreIfNotSelected]=\"true\"\r\n ($checkedChange)=\"onFieldToggle(table, $event)\"\r\n ($onShowMore)=\"openHintEditor(table, $event)\">\r\n </core-sticker-collection>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n\r\n } @placeholder() {\r\n <p>{{ 'LOADING' | translate: lang }}</p>\r\n }\r\n }\r\n </div>\r\n</div>\r\n\r\n<!-- 🌀 Fullscreen Loader -->\r\n@if ($loading()) {\r\n <core-toast-loading />\r\n}\r\n\r\n@if (!!$activeHintEditor()) {\r\n <ai-hint-for-column\r\n [$table]=\"$activeHintEditor()?.table!\"\r\n [$column]=\"$activeHintEditor()?.column!\"\r\n [$top]=\"$activeHintEditor()?.top!\"\r\n [$left]=\"$activeHintEditor()?.left!\"\r\n ($closed)=\"closeHintEditor()\" />\r\n}\r\n\r\n<ng-template #htmlTooltipRef>\r\n\r\n @if (lang==='en') {\r\n <div class=\"db-settings-description\">\r\n <h2>Database Schema Reference</h2>\r\n <p>\r\n This panel displays all available <strong>tables</strong> and their <strong>columns</strong> for use in your Workflow Builder.\r\n Select relevant fields to build <em>dynamic conditions</em>, <em>actor resolvers</em>, or <em>calculated expressions</em>.\r\n </p>\r\n <p>\r\n It's also used to power <strong>AI-assisted suggestions</strong>, giving intelligent autocompletion and validation based on your actual database structure.\r\n </p>\r\n <p class=\"note\">Tip: Hover over any column to see usage examples in your workflow.</p>\r\n </div>\r\n } @else {\r\n <div class=\"db-settings-description\">\r\n <h2>Tham chiếu Cấu trúc Dữ liệu</h2>\r\n <p>\r\n Bảng dưới đây hiển thị tất cả <strong>bảng dữ liệu</strong> và các <strong>cột</strong> tương ứng trong hệ thống. \r\n Bạn có thể chọn các cột này để xây dựng <em>điều kiện động</em>, <em>trình phân giải người duyệt</em>, hoặc <em>biểu thức tính toán</em>.\r\n </p>\r\n <p>\r\n Giao diện này cũng hỗ trợ <strong>AI gợi ý thông minh</strong>, giúp tự động điền và kiểm tra các biểu thức dựa trên cấu trúc cơ sở dữ liệu thực tế.\r\n </p>\r\n <p class=\"note\">Mẹo: Di chuột vào tên cột để xem ví dụ sử dụng trong luồng phê duyệt.</p>\r\n </div>\r\n\r\n }\r\n\r\n</ng-template>"],"names":[],"mappings":";;;;;;;;AAkCM,MAAO,mBAAoB,SAAQ,aAAa,CAAA;AAjBtD,IAAA,WAAA,GAAA;;AAmBS,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,mBAAmB,CAAC;AACxC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;AACvB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;;AAE3B,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC;AACxB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAU,KAAK,CAAC;AAElC,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAKhB,IAAI,CAAC;AAEf,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAA0B;AACrD,QAAA,IAAA,CAAA,qBAAqB,GAAG,IAAI,OAAO,EAA8C;AAEjF,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC;QAEvB,IAAU,CAAA,UAAA,GAAW,EAAE;AACvB,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,eAAe,CAAS,EAAE,CAAC;AAEzC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,eAAe,CAAmC,IAAI,CAAC;AA0M7E;IAxMC,aAAa,CAAC,KAA2B,EAAE,CAAW,EAAA;QACpD,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AACzC,QAAA,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;;IAG3E,cAAc,CAAC,KAA2B,EAAE,CAAM,EAAA;AAChD,QAAA,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI;AACzB,QAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC;YACzB,KAAK;YACL,MAAM;AACN,YAAA,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;AAChB,YAAA,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;AAClB,SAAA,CAAC;;IAGJ,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;;AAGlC,IAAA,cAAc,CAAC,CAAS,EAAA;AACtB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;;AAGtB,IAAA,wBAAwB,CAAC,KAAa,EAAA;QACpC,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;;IAG5H,iBAAiB,CAAC,KAA2B,EAAE,QAAiB,EAAA;AAE9D,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ;YAAE;QAEjC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,IAChD,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC;AAChB,cAAE;AACA,gBAAA,GAAG,CAAC;gBACJ,QAAQ;AACR,gBAAA,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC;AACjD;cACC,CAAC,CACN;AACD,QAAA,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;;IAK9C,eAAe,GAAA;QACb,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;;IAGvC,kBAAkB,CAAC,KAA2B,EAAE,eAAyB,EAAA;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,IAChD,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC;AAChB,cAAE;AACA,gBAAA,GAAG,CAAC;gBACJ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK;AAC3B,oBAAA,GAAG,CAAC;oBACJ,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;AAC5C,iBAAA,CAAC,CAAC;AACH,gBAAA,QAAQ,EAAE,eAAe,CAAC,MAAM,GAAG;AACpC;cACC,CAAC,CACN;QACD,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC;;IAGzC,IAAI,GAAA;AACF,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK;YACzD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK;gBAC/B,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,SAAS,EAAE,CAAC,CAAC;AACd,aAAA,CAAC;AACH,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,OAAO,CAAC;;;;IAKhD,eAAe,GAAA;AAEb,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,IAAI,CAAC;AACF,aAAA,IAAI,CACH,GAAG,CAAC,CAAC,IAAG;AACN,YAAA,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;AAC3C,SAAC,CAAC,EACF,YAAY,CAAC,GAAG,CAAC;AACjB,QAAA,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,KACxB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAChE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CACjE,EACD,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,EAC1D,UAAU,CAAC,GAAG,IAAG;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC;YAC/C,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC;AAClE,SAAC,CAAC;aAEH,SAAS,CAAC,CAAC,IAAG;AACb,YAAA,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,KAAK,GAAG,EAAE;;;SAG7D,CAAC,CACL;AAED,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,IAAI,CAAC;AACF,aAAA,IAAI,CACH,GAAG,CAAC,CAAC,IAAG;AACN,YAAA,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC;AACnD,SAAC,CAAC,EACF,YAAY,CAAC,GAAG,CAAC;QACjB,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,KACxB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CACxC,EACD,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,EAC1F,UAAU,CAAC,GAAG,IAAG;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC;YAC/C,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC;AAClE,SAAC,CAAC;aAEH,SAAS,CAAC,CAAC,IAAG;AACb,YAAA,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,KAAK,GAAG,EAAE;;;SAG7D,CAAC,CACL;QAED,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,YAAY,CAAC,GAAG,CAAC,EACjB,oBAAoB,EAAE,CACvB,CAAC,SAAS,CAAC,CAAC,IAAG;AACd,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;AACvB,gBAAA,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK;AAC5B,gBAAA,UAAU,EAAE;AACb,aAAA,CAAC;SACH,CAAC,CACH;QAED,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,MAAM,CAAC,OAAO,CAAC,EACf,oBAAoB,CAAC,CAAC,IAAI,EAAE,IAAI,KAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAC9C,EACD,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAClC,SAAS,CAAC,OAAO,IACf,IAAI,CAAC,GAAG,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,IAAI,CACrD,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAChD,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CACzC,CACF,CACF,CAAC,SAAS,CAAC,CAAC,GAAQ,KAAI;AACvB,YAAA,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,UAAU,KAAK,GAAG,EAAE;AAChE,gBAAA,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AACxD,gBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;;SAEtD,CAAC,CACH;QAGD,UAAU,CAAC,MAAK;;AAEhB,SAAC,CAAC;;IAGJ,sBAAsB,CAAC,KAAa,EAAE,CAAM,EAAA;;AAI5C,IAAA,mBAAmB,CAAC,QAA4C,EAAA;;QAE9D,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAC9C;;QAGD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE;;QAGlD,MAAM,SAAS,GAAG;AACf,aAAA,GAAG,CAAC,KAAK,KAAK;AACb,YAAA,GAAG,KAAK;AACR,YAAA,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC;AAC3C,SAAA,CAAC;aACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;;AAGxD,QAAA,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,SAAS,CAAC;;QAG9C,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC;;AAGzC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC;;8GA/NzB,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EClChC,88KA+Hc,EAAA,MAAA,EAAA,CAAA,qpDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED1GV,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACX,uBAAuB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,YAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAEvB,yBAAyB,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAEzB,aAAa,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAGb,wBAAwB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,sBAAA,EAAA,CAAA,MAAA,CAAA,OAAA,oEAAA,CAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,8BAAA,CAAA,EAAA,OAAA,oDAAA,qCAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,oBAAA,CAAA,EAAA,OAAA,oDAAA,qCAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,gBAAA,CAAA,EAAA,OAAA,8DAAA,CAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,uBAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;;gGAKf,mBAAmB,EAAA,mBAAA,EAAA,MAAA,CAAA,OAAA,oEAAA,CAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,8BAAA,CAAA,EAAA,OAAA,oDAAA,qCAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,oBAAA,CAAA,EAAA,OAAA,oDAAA,qCAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,gBAAA,CAAA,EAAA,OAAA,8DAAA,CAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,uBAAA,CAAA,CAAA,EAAA,eAAA,EAAA,CAAA,8BAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,uBAAA,MAAA,EAAA,UAAA,EAAA,CAAA;sBAjB/B,SAAS;AACE,gBAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,EACN,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACtC,OAAA,EAAA;4BACP,WAAW;4BACX,uBAAuB;4BACvB,8BAA8B;4BAC9B,yBAAyB;4BACzB,oBAAoB;4BACpB,aAAa;4BACb,gBAAgB;4BAChB,uBAAuB;4BACvB,wBAAwB;AACzB,yBAAA,EAAA,QAAA,EAAA,88KAAA,EAAA,MAAA,EAAA,CAAA,qpDAAA,CAAA,EAAA;;;;;"}
1
+ {"version":3,"file":"ngx-histaff-alpha-db-settings.component-osYYD2VZ.mjs","sources":["../../../projects/ngx-histaff-alpha/src/lib/app/libraries/core-workflow-builder/db-settings/db-settings.component.ts","../../../projects/ngx-histaff-alpha/src/lib/app/libraries/core-workflow-builder/db-settings/db-settings.component.html"],"sourcesContent":["import { AfterViewInit, ChangeDetectionStrategy, Component, runInInjectionContext, Injector, inject, signal, WritableSignal, effect, computed } from '@angular/core';\r\nimport { CoreStickerCollectionComponent } from '../../core-sticker-collection/core-sticker-collection.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CorePageHeaderComponent } from '../../core-page-header/core-page-header/core-page-header.component';\r\nimport { IColumnWithHint, IWorkflowSchemaTable } from '../interfaces/IWorkflowSchema'\r\nimport { CoreWorkflowService } from '../core-workflow.service';\r\nimport { BaseComponent } from '../../base-component/base/base.component';\r\nimport { BehaviorSubject, catchError, debounceTime, distinctUntilChanged, filter, finalize, of, Subject, switchMap, tap } from 'rxjs';\r\nimport { DbService, IGetWorkflowSchemaRequest } from '../../../services/db.service';\r\nimport { IPagination } from '../../../interfaces/IQueryListRequest';\r\nimport { DragReorderDirective } from '../../../directives/drag-reorder.directive';\r\nimport { TooltipDirective } from '../../tooltip/tooltip.directive';\r\nimport { TranslatePipe } from '../../../app-pipes/translate.pipe';\r\nimport { AiHintForTableComponent } from './ai-hint-for-table/ai-hint-for-table.component';\r\nimport { AiHintForColumnComponent } from './ai-hint-for-column/ai-hint-for-column.component';\r\nimport { CoreToastLoadingComponent } from '../../core-toast-loading/core-toast-loading.component';\r\n\r\n@Component({\r\n selector: 'db-settings',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n imports: [\r\n FormsModule,\r\n CorePageHeaderComponent,\r\n CoreStickerCollectionComponent,\r\n CoreToastLoadingComponent,\r\n DragReorderDirective,\r\n TranslatePipe,\r\n TooltipDirective,\r\n AiHintForTableComponent,\r\n AiHintForColumnComponent,\r\n ],\r\n templateUrl: './db-settings.component.html',\r\n styleUrl: './db-settings.component.scss'\r\n})\r\nexport class DbSettingsComponent extends BaseComponent implements AfterViewInit {\r\n\r\n public wfs = inject(CoreWorkflowService);\r\n dbs = inject(DbService);\r\n injector = inject(Injector);\r\n // $schema = this.wfs.$workflowDbSchema;\r\n $loading = signal(false);\r\n $sortMode = signal<boolean>(false);\r\n\r\n $activeHintEditor = signal<{\r\n table: IWorkflowSchemaTable;\r\n column: string;\r\n top: number;\r\n left: number;\r\n } | null>(null);\r\n\r\n orderChanges$ = new Subject<IWorkflowSchemaTable[]>();\r\n activeColumnsChanges$ = new Subject<{ table: string; activeColumns: string[] }>();\r\n\r\n $totalItems = signal(0);\r\n\r\n searchTerm: string = '';\r\n search$ = new BehaviorSubject<string>('');\r\n\r\n getListStream$ = new BehaviorSubject<IGetWorkflowSchemaRequest | null>(null);\r\n\r\n onFieldToggle(table: IWorkflowSchemaTable, e: string[]): void {\r\n this.updateTableStatus(table, !!e.length);\r\n this.activeColumnsChanges$.next({ table: table.table, activeColumns: e });\r\n }\r\n\r\n openHintEditor(table: IWorkflowSchemaTable, e: any): void {\r\n const { column } = e.item;\r\n this.$activeHintEditor.set({\r\n table,\r\n column,\r\n top: e.e.clientY,\r\n left: e.e.clientX,\r\n });\r\n }\r\n\r\n closeHintEditor(): void {\r\n this.$activeHintEditor.set(null);\r\n }\r\n\r\n onSearchChange(e: string): void {\r\n this.search$.next(e);\r\n }\r\n\r\n getActiveColumnNameArray(table: string): string[] {\r\n return this.wfs.$workflowDbSchema().filter(x => x.table === table)[0].columns.filter(x => !!x.isActive).map(x => x.column);\r\n }\r\n\r\n updateTableStatus(table: IWorkflowSchemaTable, isActive: boolean): void {\r\n\r\n if (table.isActive === isActive) return;\r\n\r\n const updated = this.wfs.$workflowDbSchema().map(t =>\r\n t.table === table.table\r\n ? {\r\n ...t,\r\n isActive,\r\n columns: t.columns.map(c => ({ ...c, isActive }))\r\n }\r\n : t\r\n );\r\n this.wfs.$workflowDbSchema.set([...updated]);\r\n\r\n\r\n }\r\n\r\n togglerSortMode(): void {\r\n this.$sortMode.set(!this.$sortMode())\r\n }\r\n\r\n updateColumnStatus(table: IWorkflowSchemaTable, selectedColumns: string[]): void {\r\n const updated = this.wfs.$workflowDbSchema().map(t =>\r\n t.table === table.table\r\n ? {\r\n ...t,\r\n columns: t.columns.map(c => ({\r\n ...c,\r\n isActive: selectedColumns.includes(c.column)\r\n })),\r\n isActive: selectedColumns.length > 0\r\n }\r\n : t\r\n );\r\n this.wfs.$workflowDbSchema.set(updated);\r\n }\r\n\r\n save(): void {\r\n const payload = this.wfs.$workflowDbSchema().map(table => ({\r\n table: table.table,\r\n isActive: table.isActive,\r\n columns: table.columns.map(c => ({\r\n column: c.column,\r\n isActive: c.isActive,\r\n hintForAi: c.hintForAi\r\n }))\r\n }));\r\n\r\n console.log('Saving schema payload:', payload);\r\n // Optional: Call API to save\r\n // this.http.post('/api/.../UpdateWorkflowSchema', payload).subscribe(...)\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n\r\n this.subscriptions.push(\r\n this.orderChanges$\r\n .pipe(\r\n tap(_ => {\r\n console.log(\"this.orderChanges$ changed\")\r\n }),\r\n debounceTime(800), // wait 800ms after last change\r\n distinctUntilChanged((a, b) =>\r\n JSON.stringify(a.map(x => ({ id: x.id, orderNum: x.orderNum }))) ===\r\n JSON.stringify(b.map(x => ({ id: x.id, orderNum: x.orderNum })))\r\n ),\r\n switchMap(newOrder => this.wfs.updateTableOrder(newOrder)),\r\n catchError(err => {\r\n console.error('🚨 Backend update failed:', err);\r\n return of({ ok: false, status: 500, body: { statusCode: 500 } });\r\n })\r\n )\r\n .subscribe(x => {\r\n if (x.ok && x.status === 200 && x.body?.statusCode === 200) {\r\n // no need to send any UI alert \r\n }\r\n })\r\n )\r\n\r\n this.subscriptions.push(\r\n this.activeColumnsChanges$\r\n .pipe(\r\n tap(_ => {\r\n console.log(\"this.activeColumnsChanges$ changed\")\r\n }),\r\n debounceTime(800), // wait 800ms after last change\r\n distinctUntilChanged((a, b) =>\r\n JSON.stringify(a) === JSON.stringify(b)\r\n ),\r\n switchMap(newState => this.dbs.updateColumnStatus(newState.table, newState.activeColumns)),\r\n catchError(err => {\r\n console.error('🚨 Backend update failed:', err);\r\n return of({ ok: false, status: 500, body: { statusCode: 500 } });\r\n })\r\n )\r\n .subscribe(x => {\r\n if (x.ok && x.status === 200 && x.body?.statusCode === 200) {\r\n // no need to send any UI alert \r\n }\r\n })\r\n )\r\n\r\n this.subscriptions.push(\r\n this.search$.pipe(\r\n debounceTime(500),\r\n distinctUntilChanged()\r\n ).subscribe(s => {\r\n this.getListStream$.next({\r\n ...this.getListStream$.value,\r\n searchTerm: s\r\n });\r\n })\r\n );\r\n\r\n this.subscriptions.push(\r\n this.getListStream$.pipe(\r\n filter(Boolean),\r\n distinctUntilChanged((prev, curr) =>\r\n JSON.stringify(prev) === JSON.stringify(curr)\r\n ),\r\n tap(() => this.$loading.set(true)),\r\n switchMap(request =>\r\n this.dbs.syncAndGetWorkflowSchemaMetadata(request).pipe(\r\n catchError(() => of({ ok: false, status: 500 })),\r\n finalize(() => this.$loading.set(false))\r\n )\r\n )\r\n ).subscribe((res: any) => {\r\n if (res.ok && res.status === 200 && res.body?.statusCode === 200) {\r\n this.wfs.$workflowDbSchema.set(res.body.innerBody.items);\r\n this.$totalItems.set(res.body.innerBody.totalItems)\r\n }\r\n })\r\n );\r\n\r\n\r\n setTimeout(() => {\r\n // Some more code...\r\n })\r\n }\r\n\r\n onTableShowMoreClicked(table: string, e: any) {\r\n\r\n }\r\n\r\n onListReorderUpdate(orderSet: { id: string; orderNum: number }[]): void {\r\n // Normalize ID to numbers\r\n const orderMap = new Map<number, number>(\r\n orderSet.map(x => [Number(x.id), x.orderNum])\r\n );\r\n\r\n // Get current state\r\n const currentTables = this.wfs.$workflowDbSchema();\r\n\r\n // Rebuild reordered state\r\n const reordered = currentTables\r\n .map(table => ({\r\n ...table,\r\n orderNum: orderMap.get(table.id) ?? table.orderNum\r\n }))\r\n .sort((a, b) => (a.orderNum ?? 0) - (b.orderNum ?? 0));\r\n\r\n // Debug output\r\n console.log(\"🌀 Reordered Groups:\", reordered);\r\n\r\n // Commit to signal/store\r\n this.wfs.$workflowDbSchema.set(reordered);\r\n\r\n // Optional: Trigger backend sync\r\n this.orderChanges$.next(reordered);\r\n }\r\n\r\n}\r\n","<core-page-header\r\n title=\"DB Settings For Workflow Builder\"\r\n [hideButtonGroup]=\"true\"\r\n [htmlTooltipRef]=\"htmlTooltipRef\"\r\n >\r\n</core-page-header>\r\n\r\n<!-- <pre>{{ $activeHintEditorJson() }}</pre> -->\r\n\r\n<div class=\"container-fluid\">\r\n <!-- 🔍 Search + Sort Toolbar -->\r\n <div class=\"db-toolbar d-flex flex-wrap justify-content-between align-items-center mb-3 gap-3\">\r\n <div class=\"search-box flex-grow-1\">\r\n <input\r\n type=\"text\"\r\n class=\"form-control search-input\"\r\n placeholder=\"Search tables or columns...\"\r\n [(ngModel)]=\"searchTerm\"\r\n (ngModelChange)=\"onSearchChange($event)\" />\r\n </div>\r\n\r\n <div>\r\n <button class=\"btn btn-outline-secondary btn-sm sort-toggle-btn\" (click)=\"togglerSortMode()\">\r\n {{ $sortMode() ? 'Expand' : 'Sort' }}\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <!-- 📦 Workflow Schema Table List -->\r\n <div class=\"group-list p-relative mt-4\">\r\n @for (table of wfs.$workflowDbSchema(); track table.id) {\r\n\r\n @defer(on viewport; on timer(5s)) {\r\n\r\n @if ($sortMode()) {\r\n <!-- Sort Mode: Draggable Card -->\r\n <div\r\n class=\"drag-item\"\r\n [attr.data-id]=\"table.table\"\r\n dragReorder\r\n (updateList)=\"onListReorderUpdate($event)\">\r\n <div class=\"col-md-12\">\r\n <div class=\"table-wrapper\" [class.active]=\"!!table.isActive\">\r\n <div class=\"item-header\">\r\n <div class=\"table-name pointer\" [appTooltip]=\"table.hintForAi ?? ''\" [showAnyway]=\"true\">{{ table.table }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n } @else {\r\n <!-- Expanded Mode: Table with Columns -->\r\n <div class=\"row gx-5 gy-4\">\r\n <div class=\"col-md-12\">\r\n <div class=\"table-wrapper\" [class.active]=\"!!table.isActive\">\r\n <div class=\"item-header\">\r\n <div class=\"table-name pointer\" [appTooltip]=\"table.hintForAi ?? ''\" [showAnyway]=\"true\" [class.has-hint]=\"!!table.hintForAi && !!table.hintForAi!.length\">{{ table.table }}</div>\r\n <ai-hint-for-table [$table]=\"table\" />\r\n </div>\r\n\r\n <div class=\"item-columns\">\r\n <core-sticker-collection\r\n [$items]=\"table.columns\"\r\n [$initialChecked]=\"getActiveColumnNameArray(table.table)\"\r\n [$shownFrom]=\"'column'\"\r\n [$tooltipFrom]=\"'hintForAi'\"\r\n [$showMore]=\"true\"\r\n [$showMoreTooltip]=\"'Set Hint for AI'\"\r\n [$hideShowMoreIfNotSelected]=\"true\"\r\n ($checkedChange)=\"onFieldToggle(table, $event)\"\r\n ($onShowMore)=\"openHintEditor(table, $event)\">\r\n </core-sticker-collection>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n\r\n } @placeholder() {\r\n <p>{{ 'LOADING' | translate: lang }}</p>\r\n }\r\n }\r\n </div>\r\n</div>\r\n\r\n<!-- 🌀 Fullscreen Loader -->\r\n@if ($loading()) {\r\n <core-toast-loading />\r\n}\r\n\r\n@if (!!$activeHintEditor()) {\r\n <ai-hint-for-column\r\n [$table]=\"$activeHintEditor()?.table!\"\r\n [$column]=\"$activeHintEditor()?.column!\"\r\n [$top]=\"$activeHintEditor()?.top!\"\r\n [$left]=\"$activeHintEditor()?.left!\"\r\n ($closed)=\"closeHintEditor()\" />\r\n}\r\n\r\n<ng-template #htmlTooltipRef>\r\n\r\n @if (lang==='en') {\r\n <div class=\"db-settings-description\">\r\n <h2>Database Schema Reference</h2>\r\n <p>\r\n This panel displays all available <strong>tables</strong> and their <strong>columns</strong> for use in your Workflow Builder.\r\n Select relevant fields to build <em>dynamic conditions</em>, <em>actor resolvers</em>, or <em>calculated expressions</em>.\r\n </p>\r\n <p>\r\n It's also used to power <strong>AI-assisted suggestions</strong>, giving intelligent autocompletion and validation based on your actual database structure.\r\n </p>\r\n <p class=\"note\">Tip: Hover over any column to see usage examples in your workflow.</p>\r\n </div>\r\n } @else {\r\n <div class=\"db-settings-description\">\r\n <h2>Tham chiếu Cấu trúc Dữ liệu</h2>\r\n <p>\r\n Bảng dưới đây hiển thị tất cả <strong>bảng dữ liệu</strong> và các <strong>cột</strong> tương ứng trong hệ thống. \r\n Bạn có thể chọn các cột này để xây dựng <em>điều kiện động</em>, <em>trình phân giải người duyệt</em>, hoặc <em>biểu thức tính toán</em>.\r\n </p>\r\n <p>\r\n Giao diện này cũng hỗ trợ <strong>AI gợi ý thông minh</strong>, giúp tự động điền và kiểm tra các biểu thức dựa trên cấu trúc cơ sở dữ liệu thực tế.\r\n </p>\r\n <p class=\"note\">Mẹo: Di chuột vào tên cột để xem ví dụ sử dụng trong luồng phê duyệt.</p>\r\n </div>\r\n\r\n }\r\n\r\n</ng-template>"],"names":[],"mappings":";;;;;;;;AAkCM,MAAO,mBAAoB,SAAQ,aAAa,CAAA;AAjBtD,IAAA,WAAA,GAAA;;AAmBS,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,mBAAmB,CAAC;AACxC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;AACvB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;;AAE3B,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC;AACxB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAU,KAAK,CAAC;AAElC,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAKhB,IAAI,CAAC;AAEf,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAA0B;AACrD,QAAA,IAAA,CAAA,qBAAqB,GAAG,IAAI,OAAO,EAA8C;AAEjF,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC;QAEvB,IAAU,CAAA,UAAA,GAAW,EAAE;AACvB,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,eAAe,CAAS,EAAE,CAAC;AAEzC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,eAAe,CAAmC,IAAI,CAAC;AA0M7E;IAxMC,aAAa,CAAC,KAA2B,EAAE,CAAW,EAAA;QACpD,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AACzC,QAAA,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;;IAG3E,cAAc,CAAC,KAA2B,EAAE,CAAM,EAAA;AAChD,QAAA,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI;AACzB,QAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC;YACzB,KAAK;YACL,MAAM;AACN,YAAA,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;AAChB,YAAA,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;AAClB,SAAA,CAAC;;IAGJ,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;;AAGlC,IAAA,cAAc,CAAC,CAAS,EAAA;AACtB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;;AAGtB,IAAA,wBAAwB,CAAC,KAAa,EAAA;QACpC,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;;IAG5H,iBAAiB,CAAC,KAA2B,EAAE,QAAiB,EAAA;AAE9D,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ;YAAE;QAEjC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,IAChD,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC;AAChB,cAAE;AACA,gBAAA,GAAG,CAAC;gBACJ,QAAQ;AACR,gBAAA,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC;AACjD;cACC,CAAC,CACN;AACD,QAAA,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;;IAK9C,eAAe,GAAA;QACb,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;;IAGvC,kBAAkB,CAAC,KAA2B,EAAE,eAAyB,EAAA;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,IAChD,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC;AAChB,cAAE;AACA,gBAAA,GAAG,CAAC;gBACJ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK;AAC3B,oBAAA,GAAG,CAAC;oBACJ,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;AAC5C,iBAAA,CAAC,CAAC;AACH,gBAAA,QAAQ,EAAE,eAAe,CAAC,MAAM,GAAG;AACpC;cACC,CAAC,CACN;QACD,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC;;IAGzC,IAAI,GAAA;AACF,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK;YACzD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK;gBAC/B,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,SAAS,EAAE,CAAC,CAAC;AACd,aAAA,CAAC;AACH,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,OAAO,CAAC;;;;IAKhD,eAAe,GAAA;AAEb,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,IAAI,CAAC;AACF,aAAA,IAAI,CACH,GAAG,CAAC,CAAC,IAAG;AACN,YAAA,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;AAC3C,SAAC,CAAC,EACF,YAAY,CAAC,GAAG,CAAC;AACjB,QAAA,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,KACxB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAChE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CACjE,EACD,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,EAC1D,UAAU,CAAC,GAAG,IAAG;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC;YAC/C,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC;AAClE,SAAC,CAAC;aAEH,SAAS,CAAC,CAAC,IAAG;AACb,YAAA,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,KAAK,GAAG,EAAE;;;SAG7D,CAAC,CACL;AAED,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,IAAI,CAAC;AACF,aAAA,IAAI,CACH,GAAG,CAAC,CAAC,IAAG;AACN,YAAA,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC;AACnD,SAAC,CAAC,EACF,YAAY,CAAC,GAAG,CAAC;QACjB,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,KACxB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CACxC,EACD,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,EAC1F,UAAU,CAAC,GAAG,IAAG;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC;YAC/C,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC;AAClE,SAAC,CAAC;aAEH,SAAS,CAAC,CAAC,IAAG;AACb,YAAA,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,KAAK,GAAG,EAAE;;;SAG7D,CAAC,CACL;QAED,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,YAAY,CAAC,GAAG,CAAC,EACjB,oBAAoB,EAAE,CACvB,CAAC,SAAS,CAAC,CAAC,IAAG;AACd,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;AACvB,gBAAA,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK;AAC5B,gBAAA,UAAU,EAAE;AACb,aAAA,CAAC;SACH,CAAC,CACH;QAED,IAAI,CAAC,aAAa,CAAC,IAAI,CACrB,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,MAAM,CAAC,OAAO,CAAC,EACf,oBAAoB,CAAC,CAAC,IAAI,EAAE,IAAI,KAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAC9C,EACD,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAClC,SAAS,CAAC,OAAO,IACf,IAAI,CAAC,GAAG,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,IAAI,CACrD,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAChD,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CACzC,CACF,CACF,CAAC,SAAS,CAAC,CAAC,GAAQ,KAAI;AACvB,YAAA,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,UAAU,KAAK,GAAG,EAAE;AAChE,gBAAA,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AACxD,gBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;;SAEtD,CAAC,CACH;QAGD,UAAU,CAAC,MAAK;;AAEhB,SAAC,CAAC;;IAGJ,sBAAsB,CAAC,KAAa,EAAE,CAAM,EAAA;;AAI5C,IAAA,mBAAmB,CAAC,QAA4C,EAAA;;QAE9D,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAC9C;;QAGD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE;;QAGlD,MAAM,SAAS,GAAG;AACf,aAAA,GAAG,CAAC,KAAK,KAAK;AACb,YAAA,GAAG,KAAK;AACR,YAAA,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC;AAC3C,SAAA,CAAC;aACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;;AAGxD,QAAA,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,SAAS,CAAC;;QAG9C,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC;;AAGzC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC;;8GA/NzB,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EClChC,88KA+Hc,EAAA,MAAA,EAAA,CAAA,qpDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED1GV,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACX,uBAAuB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,YAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAEvB,yBAAyB,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAEzB,aAAa,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAGb,wBAAwB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,sBAAA,EAAA,CAAA,MAAA,CAAA,OAAA,oEAAA,CAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,8BAAA,CAAA,EAAA,OAAA,oDAAA,qCAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,oBAAA,CAAA,EAAA,OAAA,oDAAA,qCAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,gBAAA,CAAA,EAAA,OAAA,8DAAA,CAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,uBAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;;gGAKf,mBAAmB,EAAA,mBAAA,EAAA,MAAA,CAAA,OAAA,oEAAA,CAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,8BAAA,CAAA,EAAA,OAAA,oDAAA,qCAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,oBAAA,CAAA,EAAA,OAAA,oDAAA,qCAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,gBAAA,CAAA,EAAA,OAAA,8DAAA,CAAA,CAAA,IAAA,CAAA,CAAA,IAAA,CAAA,CAAA,uBAAA,CAAA,CAAA,EAAA,eAAA,EAAA,CAAA,8BAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,uBAAA,MAAA,EAAA,UAAA,EAAA,CAAA;sBAjB/B,SAAS;AACE,gBAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,EACN,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACtC,OAAA,EAAA;4BACP,WAAW;4BACX,uBAAuB;4BACvB,8BAA8B;4BAC9B,yBAAyB;4BACzB,oBAAoB;4BACpB,aAAa;4BACb,gBAAgB;4BAChB,uBAAuB;4BACvB,wBAAwB;AACzB,yBAAA,EAAA,QAAA,EAAA,88KAAA,EAAA,MAAA,EAAA,CAAA,qpDAAA,CAAA,EAAA;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { inject, ChangeDetectionStrategy, Component, Injector, runInInjectionContext, effect, Input, EventEmitter, ElementRef, ViewChild, Output, Renderer2, input, isDevMode, signal, computed, Injectable, output, viewChild, ChangeDetectorRef, Directive, Pipe, ViewChildren } from '@angular/core';
3
- import { f as BaseComponent, c as CoreWorkflowService, o as CoreFormDesignService, j as AlertService, p as EnumWorkflowStepType, m as alertOptions, E as EnumFormBaseContolType, M as MultiLanguageService, h as TooltipDirective, T as TranslatePipe, B as BaseEditComponent, q as DialogService, A as AppService, e as CorePageEditComponent, F as FullscreenModalLoaderComponent, r as DomService, s as CoreDropdownComponent, t as CoreChecklistComponent, u as CoreDatePickerComponent, v as CoreFormControlSeekerComponent, w as CoreCurrencyInputComponent, d as EnumCoreFormControlSeekerSourceType, x as EnumActorSourceType, y as CoreParamControlComponent, z as CoreRadioGroupComponent, G as GptService, H as ApplicationHelpService, J as HotKeysDirective, K as CoreCheckboxComponent, N as NavigatorService, L as JsonService } from './ngx-histaff-alpha-ngx-histaff-alpha-5kn-eYSE.mjs';
3
+ import { B as BaseComponent, h as CoreWorkflowService, s as CoreFormDesignService, n as AlertService, t as EnumWorkflowStepType, q as alertOptions, d as EnumFormBaseContolType, M as MultiLanguageService, k as TooltipDirective, T as TranslatePipe, c as BaseEditComponent, D as DialogService, A as AppService, e as CorePageEditComponent, F as FullscreenModalLoaderComponent, u as DomService, v as CoreDropdownComponent, w as CoreChecklistComponent, x as CoreDatePickerComponent, y as CoreFormControlSeekerComponent, z as CoreCurrencyInputComponent, i as EnumCoreFormControlSeekerSourceType, G as EnumActorSourceType, H as CoreParamControlComponent, J as CoreRadioGroupComponent, K as GptService, L as ApplicationHelpService, N as HotKeysDirective, b as CoreCheckboxComponent, O as NavigatorService, P as JsonService } from './ngx-histaff-alpha-ngx-histaff-alpha-CgCAObWj.mjs';
4
4
  import * as i1$1 from '@angular/router';
5
5
  import { Router, ActivatedRoute, RouterOutlet } from '@angular/router';
6
6
  import { catchError, of, BehaviorSubject, distinctUntilChanged } from 'rxjs';
@@ -8,11 +8,11 @@ import { EnumTranslateKey } from 'alpha-global-constants';
8
8
  import { AsyncPipe, NgTemplateOutlet, LowerCasePipe, NgStyle } from '@angular/common';
9
9
  import * as i1 from '@angular/forms';
10
10
  import { Validators, ReactiveFormsModule, FormGroup, FormControl, FormArray, FormsModule } from '@angular/forms';
11
- import { C as CoreFormDesignComponent } from './ngx-histaff-alpha-core-form-design.component-CLP9z8SX.mjs';
11
+ import { C as CoreFormDesignComponent } from './ngx-histaff-alpha-core-form-design.component-XvkMxYKX.mjs';
12
12
  import { trigger, state, transition, style, animate } from '@angular/animations';
13
13
  import { HttpClient } from '@angular/common/http';
14
- import { C as CoreToastLoadingComponent } from './ngx-histaff-alpha-core-toast-loading.component-CZ76vY5V.mjs';
15
- import { R as RoutingPreviewPanelComponent } from './ngx-histaff-alpha-live-form.component-R7pHFYgi.mjs';
14
+ import { C as CoreToastLoadingComponent } from './ngx-histaff-alpha-core-toast-loading.component-vDd15vTt.mjs';
15
+ import { R as RoutingPreviewPanelComponent } from './ngx-histaff-alpha-live-form.component-CxHOd02D.mjs';
16
16
 
17
17
  class CurrentHeaderComponent extends BaseComponent {
18
18
  constructor(mls) {
@@ -2285,4 +2285,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
2285
2285
  }], ctorParameters: () => [] });
2286
2286
 
2287
2287
  export { DesignWrapperComponent };
2288
- //# sourceMappingURL=ngx-histaff-alpha-design-wrapper.component-D024hCoP.mjs.map
2288
+ //# sourceMappingURL=ngx-histaff-alpha-design-wrapper.component-Doqa5ktj.mjs.map