ngx-histaff-alpha 5.9.4 → 5.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 (47) hide show
  1. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-DcRIHRd_.mjs → ngx-histaff-alpha-ai-hint-for-table.component-DOvkOvSB.mjs} +3 -3
  2. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-DcRIHRd_.mjs.map → ngx-histaff-alpha-ai-hint-for-table.component-DOvkOvSB.mjs.map} +1 -1
  3. package/fesm2022/{ngx-histaff-alpha-core-form-design.component-CNOV3O1a.mjs → ngx-histaff-alpha-core-form-design.component-BIrPbPQF.mjs} +17 -8
  4. package/fesm2022/ngx-histaff-alpha-core-form-design.component-BIrPbPQF.mjs.map +1 -0
  5. package/fesm2022/{ngx-histaff-alpha-core-sticker-collection.component-5ZXOkgXE.mjs → ngx-histaff-alpha-core-sticker-collection.component-DfskWirC.mjs} +3 -3
  6. package/fesm2022/{ngx-histaff-alpha-core-sticker-collection.component-5ZXOkgXE.mjs.map → ngx-histaff-alpha-core-sticker-collection.component-DfskWirC.mjs.map} +1 -1
  7. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-B3Z272Dz.mjs → ngx-histaff-alpha-core-toast-loading.component-B6n-lZG9.mjs} +2 -2
  8. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-B3Z272Dz.mjs.map → ngx-histaff-alpha-core-toast-loading.component-B6n-lZG9.mjs.map} +1 -1
  9. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-Coq4i7hp.mjs → ngx-histaff-alpha-core-workflow-consume.component-NK_FfweJ.mjs} +2 -2
  10. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-Coq4i7hp.mjs.map → ngx-histaff-alpha-core-workflow-consume.component-NK_FfweJ.mjs.map} +1 -1
  11. package/fesm2022/{ngx-histaff-alpha-db-settings.component-B4Lm-0DP.mjs → ngx-histaff-alpha-db-settings.component-DMtYWfQY.mjs} +5 -5
  12. package/fesm2022/{ngx-histaff-alpha-db-settings.component-B4Lm-0DP.mjs.map → ngx-histaff-alpha-db-settings.component-DMtYWfQY.mjs.map} +1 -1
  13. package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-B1xJZncW.mjs → ngx-histaff-alpha-design-wrapper.component-IgC3g3rR.mjs} +5 -5
  14. package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-B1xJZncW.mjs.map → ngx-histaff-alpha-design-wrapper.component-IgC3g3rR.mjs.map} +1 -1
  15. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-BX6XCtkc.mjs → ngx-histaff-alpha-design-wrapper.route-Cr_ieZ6t.mjs} +5 -5
  16. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-BX6XCtkc.mjs.map → ngx-histaff-alpha-design-wrapper.route-Cr_ieZ6t.mjs.map} +1 -1
  17. package/fesm2022/{ngx-histaff-alpha-form-array-props.component-B43tGS0w.mjs → ngx-histaff-alpha-form-array-props.component-P1kCoYWs.mjs} +3 -3
  18. package/fesm2022/{ngx-histaff-alpha-form-array-props.component-B43tGS0w.mjs.map → ngx-histaff-alpha-form-array-props.component-P1kCoYWs.mjs.map} +1 -1
  19. package/fesm2022/{ngx-histaff-alpha-live-form.component-BMA8yHBZ.mjs → ngx-histaff-alpha-live-form.component-C--SL_F1.mjs} +2 -2
  20. package/fesm2022/{ngx-histaff-alpha-live-form.component-BMA8yHBZ.mjs.map → ngx-histaff-alpha-live-form.component-C--SL_F1.mjs.map} +1 -1
  21. package/fesm2022/{ngx-histaff-alpha-ngx-histaff-alpha-DblZXsAj.mjs → ngx-histaff-alpha-ngx-histaff-alpha-C4gLEqgw.mjs} +215 -189
  22. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-C4gLEqgw.mjs.map +1 -0
  23. package/fesm2022/ngx-histaff-alpha-simple-chat.component-D_cC6c6Y.mjs +58 -0
  24. package/fesm2022/ngx-histaff-alpha-simple-chat.component-D_cC6c6Y.mjs.map +1 -0
  25. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-BrvANynv.mjs → ngx-histaff-alpha-tracker-studio.component-BeyQ1E4V.mjs} +2 -2
  26. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-BrvANynv.mjs.map → ngx-histaff-alpha-tracker-studio.component-BeyQ1E4V.mjs.map} +1 -1
  27. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-BccHrJ7B.mjs → ngx-histaff-alpha-wf-form-assign.component-tEzWKFsE.mjs} +2 -2
  28. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-BccHrJ7B.mjs.map → ngx-histaff-alpha-wf-form-assign.component-tEzWKFsE.mjs.map} +1 -1
  29. package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-DfglF5PD.mjs → ngx-histaff-alpha-wf-instance-status.component-Dc9ESH0Q.mjs} +2 -2
  30. package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-DfglF5PD.mjs.map → ngx-histaff-alpha-wf-instance-status.component-Dc9ESH0Q.mjs.map} +1 -1
  31. package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-BxlV-j5x.mjs → ngx-histaff-alpha-wf-instance-step-react.component-BxdkDzS2.mjs} +3 -3
  32. package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-BxlV-j5x.mjs.map → ngx-histaff-alpha-wf-instance-step-react.component-BxdkDzS2.mjs.map} +1 -1
  33. package/fesm2022/ngx-histaff-alpha.mjs +1 -1
  34. package/lib/app/enum/EnumSignalRType.d.ts +2 -1
  35. package/lib/app/libraries/core-form-design/core-form-design.service.d.ts +1 -0
  36. package/lib/app/libraries/core-form-design/core-form-group-editor.component.d.ts +2 -1
  37. package/lib/app/libraries/core-form-design/interfaces.d.ts +2 -0
  38. package/lib/app/libraries/core-page-list/core-page-list.component.d.ts +1 -0
  39. package/lib/app/libraries/core-page-list/core-page-list.service.d.ts +1 -0
  40. package/lib/app/root/simple-chat/simple-chat.component.d.ts +22 -0
  41. package/lib/app/root/simple-chat/simple-chat.routes.d.ts +2 -0
  42. package/lib/app/services/chat.service.d.ts +10 -0
  43. package/lib/app/services/socket.service.d.ts +3 -1
  44. package/package.json +1 -1
  45. package/public-api.d.ts +2 -0
  46. package/fesm2022/ngx-histaff-alpha-core-form-design.component-CNOV3O1a.mjs.map +0 -1
  47. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-DblZXsAj.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, Injectable, Pipe, Directive, ViewChild, forwardRef, HostListener, inject, Input, isDevMode, Inject, InjectionToken, signal, computed, effect, EventEmitter, Output, ViewEncapsulation, ChangeDetectorRef, input, ChangeDetectionStrategy, ViewChildren, ViewContainerRef, viewChild, viewChildren, TemplateRef, NgModule, output, DestroyRef, ElementRef, Renderer2 } from '@angular/core';
2
+ import { Component, Injectable, Pipe, Directive, ViewChild, forwardRef, HostListener, inject, Input, isDevMode, Inject, signal, InjectionToken, computed, effect, EventEmitter, Output, ViewEncapsulation, ChangeDetectorRef, input, ChangeDetectionStrategy, ViewChildren, ViewContainerRef, viewChild, viewChildren, TemplateRef, NgModule, output, DestroyRef, ElementRef, Renderer2 } from '@angular/core';
3
3
  import * as i1 from '@angular/platform-browser';
4
4
  import { BehaviorSubject, Subject, filter, of, Observable, zip, catchError, tap as tap$1, throwError, take, switchMap, finalize as finalize$1, map as map$1, interval, concat, buffer, debounceTime, fromEvent, skip, distinctUntilChanged, Subscription, takeUntil } from 'rxjs';
5
5
  import { api, EnumTranslateKey } from 'alpha-global-constants';
@@ -1739,6 +1739,7 @@ var EnumSignalRType;
1739
1739
  EnumSignalRType["TASK_PROGRESS_NO_BAR"] = "TASK_PROGRESS_NO_BAR";
1740
1740
  EnumSignalRType["NEWLY_CREATED_TOKEN_CONTEXT"] = "NEWLY_CREATED_TOKEN_CONTEXT";
1741
1741
  EnumSignalRType["WORKFLOW_STATE_CHANGE"] = "WORKFLOW_STATE_CHANGE";
1742
+ EnumSignalRType["CHAT"] = "CHAT";
1742
1743
  })(EnumSignalRType || (EnumSignalRType = {}));
1743
1744
 
1744
1745
  var EnumSortDirection;
@@ -4987,6 +4988,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
4987
4988
  }]
4988
4989
  }], ctorParameters: () => [] });
4989
4990
 
4991
+ class ChatService {
4992
+ constructor() {
4993
+ this.$simpleChat = signal(null);
4994
+ }
4995
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ChatService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4996
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ChatService, providedIn: 'root' }); }
4997
+ }
4998
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: ChatService, decorators: [{
4999
+ type: Injectable,
5000
+ args: [{
5001
+ providedIn: 'root'
5002
+ }]
5003
+ }], ctorParameters: () => [] });
5004
+
4990
5005
  var EnumSwUpdateVersionUpdatesEventType;
4991
5006
  (function (EnumSwUpdateVersionUpdatesEventType) {
4992
5007
  EnumSwUpdateVersionUpdatesEventType["VERSION_DETECTED"] = "VERSION_DETECTED";
@@ -6401,6 +6416,12 @@ const EmptyAfInstance = {
6401
6416
  crudUpdate: ''
6402
6417
  };
6403
6418
 
6419
+ const PLAIN_CELL_KEYS = ['runtimeId', 'selected', 'flexSize'];
6420
+ const PLAIN_CONTROL_KEYS = [
6421
+ 'flexSize', 'controlType', 'field', 'label', 'value', // ICoreControlMandatory
6422
+ 'readonly', 'hidden', 'disabled', 'type', 'height', 'popupHeight', 'placeholder', 'headless', 'pipe', 'tooltip', 'hint', 'validators' //ICoreControlOptional
6423
+ ];
6424
+
6404
6425
  const URL_PATTERN = '^(https?:\\/\\/[^\\s]+|\\/api(\\/[-\\w._]+)+)$';
6405
6426
  const READONLY_WORKFLOW_FIELDS = [
6406
6427
  'name',
@@ -6455,7 +6476,6 @@ class CoreFormDesignService {
6455
6476
  }
6456
6477
  return result;
6457
6478
  }
6458
- //$nestedDesignSections: WritableSignal<ICoreFormSection[] | null> = signal(null);
6459
6479
  buildFormArrayFromLayout(layout, repeatCount = 1) {
6460
6480
  const createGroupFromLayout = () => {
6461
6481
  const group = {};
@@ -6581,56 +6601,6 @@ class CoreFormDesignService {
6581
6601
  });
6582
6602
  this.$nestedControlJson = computed(() => JSON.stringify(this.stripRuntimeProps(this.$nestedControl()), null, 2).trim());
6583
6603
  this.$isInWorkflowDesign = signal(false);
6584
- /*
6585
- removeSignalKeysDeep = (
6586
- obj: any,
6587
- ignoredKeys: string[] = []
6588
- ): { obj: any; ignoredKeys: string[] } => {
6589
- const cleaned = (() => {
6590
- if (Array.isArray(obj)) {
6591
- return obj.map(item => this.removeSignalKeysDeep(item, ignoredKeys).obj);
6592
- }
6593
-
6594
- if (obj && typeof obj === 'object') {
6595
- return Object.entries(obj)
6596
- .filter(([key]) => {
6597
- return !key.endsWith('$') && !ignoredKeys.includes(key);
6598
- })
6599
- .reduce((acc, [key, value]) => {
6600
- acc[key] = this.removeSignalKeysDeep(value, ignoredKeys).obj;
6601
- return acc;
6602
- }, {} as any);
6603
- }
6604
-
6605
- return obj;
6606
- })();
6607
-
6608
- return { obj: cleaned, ignoredKeys };
6609
- };
6610
- */
6611
- /*
6612
- copyNestedSectionsIntoSelectedCell(): void {
6613
- const selectedCell = this.$selectedCell(); // outer parent
6614
- const nested = this.$nestedPlaceholderSections();
6615
-
6616
- if (!selectedCell?.control || !Array.isArray(nested)) return;
6617
-
6618
- this.$placeholderSections.update(sections => {
6619
- for (const section of sections) {
6620
- for (const row of section.rows) {
6621
- if (!!row) {
6622
- for (const cell of row.cells) {
6623
- if (cell === selectedCell) {
6624
- cell.childrenSections = JSON.parse(JSON.stringify(nested));
6625
- }
6626
- }
6627
- }
6628
- }
6629
- }
6630
- return sections;
6631
- });
6632
- }
6633
- */
6634
6604
  this.$saveLiveJson = computed(() => {
6635
6605
  const instance = this.$afInstance();
6636
6606
  //const cleanedInstance = this.removeSignalKeysDeep(instance).obj; // Remove signals or $ fields
@@ -6655,7 +6625,8 @@ class CoreFormDesignService {
6655
6625
  const template = this.$controlTemplate();
6656
6626
  const base = cell?.control;
6657
6627
  //const base = this.$control();
6658
- return base ? { ...template, ...base, formArraySections: template?.formArraySections ?? [] } : null;
6628
+ //return base ? ({ ...template, ...base, formArraySections: template?.formArraySections ?? [] } as IFormBaseControl) : null;
6629
+ return base ? { ...template, ...base, formArraySections: cell?.control?.formArraySections ?? [] } : null;
6659
6630
  });
6660
6631
  // 📋 Flattened control context
6661
6632
  this.$formContext = computed(() => this.$placeholderSections()
@@ -6774,7 +6745,24 @@ class CoreFormDesignService {
6774
6745
  });
6775
6746
  effect(() => {
6776
6747
  console.log("🔴 $nestedPlaceholderSections effect");
6777
- const _ = this.$nestedPlaceholderSections();
6748
+ const nphs = this.$nestedPlaceholderSections();
6749
+ const phs = this.$placeholderSections();
6750
+ const si = this.$sectionIndex();
6751
+ const ri = this.$rowIndex();
6752
+ const ci = this.$colIndex();
6753
+ if (!!si && !!ri && !!ci && phs[si].rows[ri]) {
6754
+ phs[si].rows[ri].cells[ci].childrenSections = nphs;
6755
+ this.$placeholderSections.set(phs);
6756
+ if (phs[si].rows[ri].cells[ci].control) {
6757
+ phs[si].rows[ri].cells[ci].control.formArraySections = this.toCoreFormSections(nphs);
6758
+ this.$placeholderSections.set(phs);
6759
+ }
6760
+ const c = this.$control();
6761
+ if (!!c) {
6762
+ c.formArraySections = this.toCoreFormSections(nphs);
6763
+ this.$control.set(c);
6764
+ }
6765
+ }
6778
6766
  this.syncNestedFormDesignWithSections();
6779
6767
  });
6780
6768
  /*
@@ -6806,37 +6794,11 @@ class CoreFormDesignService {
6806
6794
  if (!this.shallowEqual(merged, current)) {
6807
6795
  console.log("🔴⚡ updating control...");
6808
6796
  this.$control.set(merged);
6797
+ if (merged?.controlType === EnumFormBaseContolType.FORM_ARRAY) {
6798
+ this.$nestedPlaceholderSections.set(this.toFormDesignSections(merged.formArraySections ?? []));
6799
+ }
6809
6800
  }
6810
6801
  });
6811
- // TO DO: Split this into two separate, isolated computations
6812
- /*
6813
- effect(() => {
6814
- console.log("🔴🔴🔴 $selectedCell, $controlTemplate and $placeholderSections effect")
6815
- const cell = this.$selectedCell();
6816
- if (!!cell) {
6817
- const base = cell?.control as IFormBaseControl | undefined;
6818
- const template = this.$controlTemplate();
6819
-
6820
- if (base) {
6821
- const merged = { ...base, ...template };
6822
- this.$control.set(merged as IFormBaseControl);
6823
- } else {
6824
- this.$control.set(null);
6825
- }
6826
-
6827
- const placeholderSections = this.$placeholderSections();
6828
-
6829
- // 🔥 DO NOT READ this.$afInstance()
6830
- console.log("[CoreFormDesignService][effect]: $afInstance is being updated inside an effect of $selectedCell, $currentControlTemplate and $placeholderSections");
6831
- this.$afInstance.update(instance => instance ? ({
6832
- ...instance,
6833
- formDesignSections: placeholderSections,
6834
- sections: this.toCoreFormSections(placeholderSections)
6835
- }) : instance);
6836
-
6837
- }
6838
- });
6839
- */
6840
6802
  effect(() => {
6841
6803
  console.log("🔴🔴 $nestedSelectedCell and $nestedControlTemplate effect");
6842
6804
  const cell = this.$nestedSelectedCell(); // signal 1
@@ -7007,30 +6969,125 @@ class CoreFormDesignService {
7007
6969
  if (isNested) {
7008
6970
  const nestedRawControl = this.nestedFormDesign?.get(control.field);
7009
6971
  if (nestedRawControl && Array.isArray(value)) {
7010
- nestedRawControl.setValidators(value.map(v => v.validator));
7011
- nestedRawControl.updateValueAndValidity();
6972
+ // value: Array<{ name: string; validator?: ValidatorFn | null; asyncValidator?: AsyncValidatorFn | null }>
6973
+ const syncs = value
6974
+ .map(v => v?.validator)
6975
+ .filter((fn) => typeof fn === 'function');
6976
+ const asyncs = value
6977
+ .map(v => v?.asyncValidator)
6978
+ .filter((fn) => typeof fn === 'function');
6979
+ if (syncs.length)
6980
+ nestedRawControl.setValidators(syncs);
6981
+ else
6982
+ nestedRawControl.clearValidators();
6983
+ if (asyncs.length)
6984
+ nestedRawControl.setAsyncValidators(asyncs);
6985
+ else
6986
+ nestedRawControl.clearAsyncValidators?.();
6987
+ // avoid cascading emissions if you're updating during render/effects
6988
+ nestedRawControl.updateValueAndValidity({ onlySelf: true, emitEvent: false });
7012
6989
  }
7013
6990
  }
7014
6991
  else {
7015
6992
  const rawControl = this.formDesign?.get(control.field);
7016
6993
  if (rawControl && Array.isArray(value)) {
7017
- rawControl.setValidators(value.map(v => v.validator));
7018
- rawControl.updateValueAndValidity();
6994
+ // value: Array<{ name: string; validator?: ValidatorFn | null; asyncValidator?: AsyncValidatorFn | null }>
6995
+ const syncs = value
6996
+ .map(v => v?.validator)
6997
+ .filter((fn) => typeof fn === 'function');
6998
+ const asyncs = value
6999
+ .map(v => v?.asyncValidator)
7000
+ .filter((fn) => typeof fn === 'function');
7001
+ if (syncs.length)
7002
+ rawControl.setValidators(syncs);
7003
+ else
7004
+ rawControl.clearValidators();
7005
+ if (asyncs.length)
7006
+ rawControl.setAsyncValidators(asyncs);
7007
+ else
7008
+ rawControl.clearAsyncValidators?.();
7009
+ // avoid cascading emissions if you're updating during render/effects
7010
+ rawControl.updateValueAndValidity({ onlySelf: true, emitEvent: false });
7011
+ }
7012
+ }
7013
+ }
7014
+ if (PLAIN_CONTROL_KEYS.includes(key)) {
7015
+ if (!isNested) {
7016
+ const selectedCell = this.$selectedCell();
7017
+ if (selectedCell) {
7018
+ this.$selectedCell.set({ ...selectedCell });
7019
+ if (PLAIN_CELL_KEYS.includes(key)) {
7020
+ selectedCell[key] = value;
7021
+ }
7022
+ if (selectedCell.control) {
7023
+ selectedCell.control[key] = value;
7024
+ }
7025
+ const phs = this.$placeholderSections();
7026
+ const si = this.$sectionIndex();
7027
+ const ri = this.$rowIndex();
7028
+ const ci = this.$colIndex();
7029
+ if (si !== null && ri !== null && ci !== null && !!phs[si].rows[ri]?.cells[ci]) {
7030
+ const cell = phs[si].rows[ri].cells[ci];
7031
+ if (PLAIN_CELL_KEYS.includes(key)) {
7032
+ cell[key] = value;
7033
+ }
7034
+ const control = phs[si].rows[ri].cells[ci].control;
7035
+ if (!!control) {
7036
+ if (PLAIN_CONTROL_KEYS.includes(key)) {
7037
+ control[key] = value;
7038
+ }
7039
+ }
7040
+ this.$placeholderSections.set([...phs]);
7041
+ }
7042
+ else {
7043
+ if (isDevMode()) {
7044
+ this.alertService.error("Could not index placeholderSections", noneAutoClosedAlertOptions);
7045
+ }
7046
+ }
7019
7047
  }
7020
7048
  }
7021
- }
7022
- // Update flexSize and propagate cell change
7023
- if (key === 'flexSize') {
7024
- const currentCell = isNested ? this.$nestedSelectedCell() : this.$selectedCell();
7025
- if (currentCell) {
7026
- currentCell.flexSize = value;
7027
- if (isNested) {
7028
- this.$nestedSelectedCell.set({ ...currentCell });
7029
- }
7030
- else {
7031
- this.$selectedCell.set({ ...currentCell });
7049
+ else {
7050
+ const nestedSelectedCell = this.$nestedSelectedCell();
7051
+ if (!!nestedSelectedCell) {
7052
+ this.$nestedSelectedCell.set({ ...nestedSelectedCell });
7053
+ if (PLAIN_CELL_KEYS.includes(key)) {
7054
+ nestedSelectedCell[key] = value;
7055
+ }
7056
+ if (nestedSelectedCell.control) {
7057
+ nestedSelectedCell.control[key] = value;
7058
+ }
7059
+ const phs = this.$placeholderSections();
7060
+ const si = this.$sectionIndex();
7061
+ const ri = this.$rowIndex();
7062
+ const ci = this.$colIndex();
7063
+ const nphs = this.$nestedPlaceholderSections();
7064
+ const nsi = this.$nestedSectionIndex();
7065
+ const nri = this.$nestedRowIndex();
7066
+ const nci = this.$nestedColIndex();
7067
+ if (si !== null && ri !== null && ci !== null &&
7068
+ !!phs[si].rows[ri]?.cells[ci] &&
7069
+ nsi !== null && nri !== null && nci !== null &&
7070
+ !!nphs[nsi].rows[nri]?.cells[nci] &&
7071
+ !!phs[si].rows[ri].cells[ci].childrenSections &&
7072
+ !!phs[si].rows[ri].cells[ci].childrenSections[nsi].rows[nri]?.cells[nci]) {
7073
+ const cell = phs[si].rows[ri].cells[ci].childrenSections[nsi].rows[nri].cells[nci];
7074
+ if (PLAIN_CELL_KEYS.includes(key)) {
7075
+ cell[key] = value;
7076
+ }
7077
+ const control = phs[si].rows[ri].cells[ci].childrenSections[nsi].rows[nri].cells[nci].control;
7078
+ if (!!control) {
7079
+ if (PLAIN_CONTROL_KEYS.includes(key)) {
7080
+ control[key] = value;
7081
+ }
7082
+ }
7083
+ this.$placeholderSections.set([...phs]);
7084
+ }
7085
+ else {
7086
+ if (isDevMode()) {
7087
+ this.alertService.error("Could not index nested placeholderSections", noneAutoClosedAlertOptions);
7088
+ }
7089
+ }
7032
7090
  }
7033
- this.updateCellAt({ flexSize: value }, isNested);
7034
7091
  }
7035
7092
  }
7036
7093
  }
@@ -7091,12 +7148,6 @@ class CoreFormDesignService {
7091
7148
  // 🔁 Patch control
7092
7149
  patchControl(updated, isNested) {
7093
7150
  console.log("🔴 patchControl called: this triggers $placeholderSections update");
7094
- // const $placeholderSections = isNested
7095
- // ? this.$nestedPlaceholderSections
7096
- // : this.$placeholderSections;
7097
- // const $selectedCell = isNested
7098
- // ? this.$nestedSelectedCell
7099
- // : this.$selectedCell;
7100
7151
  // MAIN BOARD
7101
7152
  if (!isNested) {
7102
7153
  this.$placeholderSections.update(sections => {
@@ -7132,67 +7183,6 @@ class CoreFormDesignService {
7132
7183
  }
7133
7184
  return sections;
7134
7185
  });
7135
- // THEN UPDATE THE MAIN BOARD
7136
- /*
7137
- this.$placeholderSections.update(sections => {
7138
- const sectionIndex = this.$sectionIndex();
7139
- const rowIndex = this.$rowIndex();
7140
- const colIndex = this.$colIndex();
7141
-
7142
- if (sectionIndex !== null && rowIndex !== null && colIndex !== null) {
7143
- let control = sections[sectionIndex].rows[rowIndex]?.cells[colIndex].control;
7144
- if (!!control) {
7145
- control = { ...updated }
7146
- }
7147
- }
7148
-
7149
- return sections;
7150
- })
7151
- */
7152
- /*
7153
- this.$nestedPlaceholderSections.update(sections => {
7154
- for (const section of sections) {
7155
- for (const row of section.rows ?? []) {
7156
- if (!row) continue;
7157
-
7158
- for (const cell of row.cells ?? []) {
7159
- // ✅ TOP-LEVEL control
7160
- if (!isNested && cell.control?.field === updated.field) {
7161
- cell.control = { ...updated };
7162
- $selectedCell.set({ ...cell });
7163
- }
7164
-
7165
- // ✅ NESTED: assuming ICoreFormSection structure with rows: IFormBaseControl[][]
7166
- if (
7167
- isNested &&
7168
- cell.control?.controlType === 'FORM_ARRAY' &&
7169
- Array.isArray(cell.childrenSections)
7170
- ) {
7171
- for (const childSection of cell.childrenSections) {
7172
- for (const childRow of childSection.rows ?? []) {
7173
- if (childRow) {
7174
- for (let i = 0; i < childRow.cells.length; i++) {
7175
- const ctrl = childRow[i];
7176
- if (ctrl?.field === updated.field) {
7177
- childRow[i] = { ...updated }; // ✅ Replace directly in array
7178
- $selectedCell.set({
7179
- control: updated,
7180
- flexSize: 12,
7181
- runtimeId: crypto.randomUUID()
7182
- });
7183
- }
7184
- }
7185
- }
7186
- }
7187
- }
7188
- }
7189
- }
7190
- }
7191
- }
7192
-
7193
- return sections;
7194
- });
7195
- */
7196
7186
  }
7197
7187
  }
7198
7188
  // 🧩 Drag logic
@@ -7595,6 +7585,23 @@ class CoreFormDesignService {
7595
7585
  return v; // fallback in case of unknown validator
7596
7586
  }
7597
7587
  }
7588
+ toFormDesignSections(coreSections) {
7589
+ return coreSections.map((coreSection) => {
7590
+ const designRows = coreSection.rows.map((controlRow) => {
7591
+ const designCells = controlRow.map((control) => ({
7592
+ runtimeId: crypto.randomUUID(),
7593
+ flexSize: control.flexSize ?? 0,
7594
+ control: { ...control }, // shallow clone
7595
+ }));
7596
+ return { cells: designCells };
7597
+ });
7598
+ return {
7599
+ caption: coreSection.caption,
7600
+ forCalculatedFields: coreSection.forCalculatedFields,
7601
+ rows: designRows,
7602
+ };
7603
+ });
7604
+ }
7598
7605
  toCoreFormSections(placeholderSections, injectSystemField = true) {
7599
7606
  const transformed = placeholderSections.map(p => ({
7600
7607
  caption: p.caption,
@@ -8087,6 +8094,7 @@ class CoreFormDesignService {
8087
8094
  : row)
8088
8095
  }
8089
8096
  : section);
8097
+ console.log("updateCellAt updated", updated);
8090
8098
  if (isNested) {
8091
8099
  this.$nestedPlaceholderSections.set(updated);
8092
8100
  }
@@ -8762,7 +8770,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
8762
8770
  }], ctorParameters: () => [{ type: AppService }, { type: AlertService }, { type: CoreFormDesignService }] });
8763
8771
 
8764
8772
  class SocketService {
8765
- constructor(authService, userActivityService, hubConnectionService, appConfigService, alertService, router, longTaskService, appService, newlyCreatedTokenService, wfs) {
8773
+ constructor(authService, userActivityService, hubConnectionService, appConfigService, alertService, router, longTaskService, appService, newlyCreatedTokenService, wfs, chatService) {
8766
8774
  this.authService = authService;
8767
8775
  this.userActivityService = userActivityService;
8768
8776
  this.hubConnectionService = hubConnectionService;
@@ -8773,6 +8781,7 @@ class SocketService {
8773
8781
  this.appService = appService;
8774
8782
  this.newlyCreatedTokenService = newlyCreatedTokenService;
8775
8783
  this.wfs = wfs;
8784
+ this.chatService = chatService;
8776
8785
  this.$workflowTicket = signal(null);
8777
8786
  }
8778
8787
  createHubConnection() {
@@ -8813,6 +8822,15 @@ class SocketService {
8813
8822
  this.longTaskService.error$.next(activity.error);
8814
8823
  this.longTaskService.hideProgressBar$.next(true);
8815
8824
  break;
8825
+ case EnumSignalRType.CHAT:
8826
+ this.chatService.$simpleChat.set({
8827
+ sender: activity.data.outerMessage,
8828
+ message: activity.data.innerMessage,
8829
+ });
8830
+ this.longTaskService.data$.next(activity.data);
8831
+ this.longTaskService.error$.next(activity.error);
8832
+ this.longTaskService.hideProgressBar$.next(false);
8833
+ break;
8816
8834
  case EnumSignalRType.LOG_IN:
8817
8835
  if (isDevMode())
8818
8836
  this.alertService.info(activity.message, alertOptions);
@@ -8917,7 +8935,7 @@ class SocketService {
8917
8935
  // Start the connection.
8918
8936
  start();
8919
8937
  }
8920
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: SocketService, deps: [{ token: AuthService }, { token: UserActivityService }, { token: HubConnectionService }, { token: AppConfigService }, { token: AlertService }, { token: i1$2.Router }, { token: LongTaskService }, { token: AppService }, { token: NewlyCreatedTokenService }, { token: CoreWorkflowService }], target: i0.ɵɵFactoryTarget.Injectable }); }
8938
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: SocketService, deps: [{ token: AuthService }, { token: UserActivityService }, { token: HubConnectionService }, { token: AppConfigService }, { token: AlertService }, { token: i1$2.Router }, { token: LongTaskService }, { token: AppService }, { token: NewlyCreatedTokenService }, { token: CoreWorkflowService }, { token: ChatService }], target: i0.ɵɵFactoryTarget.Injectable }); }
8921
8939
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: SocketService, providedIn: 'root' }); }
8922
8940
  }
8923
8941
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: SocketService, decorators: [{
@@ -8925,7 +8943,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
8925
8943
  args: [{
8926
8944
  providedIn: 'root'
8927
8945
  }]
8928
- }], ctorParameters: () => [{ type: AuthService }, { type: UserActivityService }, { type: HubConnectionService }, { type: AppConfigService }, { type: AlertService }, { type: i1$2.Router }, { type: LongTaskService }, { type: AppService }, { type: NewlyCreatedTokenService }, { type: CoreWorkflowService }] });
8946
+ }], ctorParameters: () => [{ type: AuthService }, { type: UserActivityService }, { type: HubConnectionService }, { type: AppConfigService }, { type: AlertService }, { type: i1$2.Router }, { type: LongTaskService }, { type: AppService }, { type: NewlyCreatedTokenService }, { type: CoreWorkflowService }, { type: ChatService }] });
8929
8947
 
8930
8948
  const WEEKDAYS_SHORT = {
8931
8949
  vi: ['T2', 'T3', 'T4', 'T5', 'T6', 'T7', 'CN'],
@@ -14242,10 +14260,12 @@ class CorePageListComponent extends CoreFormControlBaseComponent {
14242
14260
  // Nếu tham số generateTemplateRequest được truyền vào
14243
14261
  // Import sẽ thực thi theo quy trình Core
14244
14262
  if (this.generateTemplateRequest) {
14263
+ this.session = new Date().getTime();
14245
14264
  const importXlsxToDbRequest = {
14246
14265
  fileName,
14247
14266
  exCode: this.generateTemplateRequest.exCode,
14248
- base64String: base64
14267
+ base64String: base64,
14268
+ session: this.session
14249
14269
  };
14250
14270
  this.longApiRunning = true;
14251
14271
  this.subscriptions.push(this.corePageListService.importXlsxToDb(importXlsxToDbRequest).pipe(finalize$1(() => {
@@ -14253,7 +14273,6 @@ class CorePageListComponent extends CoreFormControlBaseComponent {
14253
14273
  this.cdr.markForCheck();
14254
14274
  }))
14255
14275
  .subscribe(x => {
14256
- const session = Number(this.longTaskService.data$.value?.outerMessage);
14257
14276
  this.longApiRunning = false;
14258
14277
  if (x.ok && x.status === 200) {
14259
14278
  let downloadLink = document.createElement("a");
@@ -14265,7 +14284,7 @@ class CorePageListComponent extends CoreFormControlBaseComponent {
14265
14284
  const importPreviewOuterParam = {
14266
14285
  xlsxSid: this.authService.data$.value?.id,
14267
14286
  xlsxExCode: this.generateTemplateRequest.exCode,
14268
- xlsxSession: session
14287
+ xlsxSession: this.session
14269
14288
  };
14270
14289
  if (!!!this.importPreviewPath) {
14271
14290
  if (isDevMode()) {
@@ -14284,7 +14303,7 @@ class CorePageListComponent extends CoreFormControlBaseComponent {
14284
14303
  },
14285
14304
  ], {
14286
14305
  relativeTo: this.route, state: {
14287
- session,
14306
+ session: this.session,
14288
14307
  importPreviewOuterParam
14289
14308
  }
14290
14309
  });
@@ -22483,7 +22502,7 @@ class CoreFormControlSeekerComponent extends CoreFormControlBaseComponent {
22483
22502
  CorePositionConcurrentSeekerComponent,
22484
22503
  CoreFormSeekerComponent,
22485
22504
  CoreTableComponent
22486
- ], viewQueries: [{ propertyName: "avatar", first: true, predicate: ["avatar"], descendants: true }, { propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }, { propertyName: "idCard", first: true, predicate: ["idCard"], descendants: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #container class=\"core-form-control-seeker-container\" [hotKeys]=\"['Escapce']\">\r\n <div class=\"input-wrapper\" [class.d-none]=\"!!multiMode\">\r\n <label #shownText type=\"text\" class=\"text form-control pointer\" [class.form-control-disabled]=\"disabled\"\r\n (click)=\"onClickSeek()\">\r\n <input\r\n type=\"text\"\r\n [readonly]=\"true\"\r\n [value]=\"valueToShow || ''\"\r\n [appTooltip]=\"valueToShow\"\r\n [placeholder]=\"placeholder || ''\"\r\n />\r\n </label>\r\n @if (!multiMode) {\r\n <div class=\"clear-icon-wrapper\" [class.d-none]=\"!!disabled || !!!value\" (click)=\"onClickClear()\">\r\n <div class=\"flex-wrapper\" [appTooltip]=\"'UI.CORE_CONTOL_COMMON_CLEAR' | translate: lang\">\r\n <i class=\"feather-x\"></i>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"seeker-icon-wrapper\" [class.form-control-disabled]=\"disabled\" [class.multi-mode]=\"!!multiMode\"\r\n (click)=\"onClickSeek()\">\r\n <div class=\"flex-wrapper\" [class.form-control-disabled]=\"disabled\">\r\n <i class=\"feather-search\"></i>\r\n </div>\r\n </div>\r\n <input type=\"text\" readonly [placeholder]=\"placeholder || ''\" class=\"multimode-placeholder\" [class.d-none]=\"!multiMode\">\r\n @if (!!multiMode) {\r\n <div class=\"core-tabbe-wrapper\">\r\n <core-table [height]=\"multiModeTableHeight\" [columns]=\"multiModeColumns\" [data]=\"selectedData\"\r\n [showTools]=\"!!!disabled\" [tools]=\"tools\" [lazyLoading]=\"true\"\r\n [rowHeight]=\"(multiModeRowHeight || 46) + 'px'\" [searchSwitchDisabled]=\"true\" [disableSorting]=\"true\"\r\n (onToolClick)=\"onToolClick($event)\" (onRowDoubleClick)=\"onSelectedDataRowDoubleClick($event)\"></core-table>\r\n </div>\r\n }\r\n\r\n @if (!!sourceOpen) {\r\n <div class=\"modal-container\">\r\n <div class=\"modal-content-root\" [ngStyle]=\"{ padding: '0px' }\">\r\n\r\n <div class=\"source-space\" [ngStyle]=\"{\r\n height: sourceSpaceHeight + 'px',\r\n overflow: 'hidden',\r\n boxSizing: 'border-box',\r\n }\">\r\n @if (showPageHeader) {\r\n <div class=\"modal-header-panel\">\r\n <core-page-header [title]=\"title\" [hideButtonGroup]=\"true\"></core-page-header>\r\n </div>\r\n }\r\n <div class=\"source-container\" [ngStyle]=\"{\r\n height: sourceContainerHeight + 'px',\r\n paddingTop: '0px',\r\n paddingBottom: '0px'\r\n }\">\r\n <i class=\"close-icon feather-x\" (click)=\"onCancel()\"\r\n [class.d-block]=\"seekerSourceType==='ORGANIZATION_UNIT_SEEK'\"></i>\r\n\r\n @switch (seekerSourceType) {\r\n @case ('JOB_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"jobSeek\">\r\n </ng-container>\r\n }\r\n @case ('EMPLOYEE_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"employeeSeek\">\r\n </ng-container>\r\n }\r\n @case ('CONTRACT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"contractSeek\">\r\n </ng-container>\r\n }\r\n @case ('WORKING_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"workingSeek\">\r\n </ng-container>\r\n }\r\n @case ('WAGE_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"wageSeek\">\r\n </ng-container>\r\n }\r\n @case ('ORGANIZATION_UNIT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"organizationUnitSeek\">\r\n </ng-container>\r\n }\r\n @case ('POSITION_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"positionSeek\">\r\n </ng-container>\r\n }\r\n @case ('POSITION_CONCURRENT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"positionConcurrentSeek\">\r\n </ng-container>\r\n }\r\n @case ('FORM_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"formSeek\">\r\n </ng-container>\r\n }\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"d-flex-end\">\r\n <button class=\"btn-for-form btn btn-secondary\" type=\"button\" (click)=\"onCancel()\" [appTooltip]=\"'(ESC)'\">{{'UI_CORE_CONFIRM_DIALOG_BUTTON_CANCEL' | translate: lang }}</button>\r\n\r\n @if ((seekerSourceType === 'ORGANIZATION_UNIT_SEEK' && !!clickedItem) || (!!multiMode && !!pendingSelectedData?.length) || (!multiMode && !!clickedItemIsInTheList())) {\r\n <button class=\"btn-for-form last-child btn btn-secondary\" type=\"button\" (click)=\"onSelect()\">{{\r\n 'UI_CORE_CONFIRM_DIALOG_BUTTON_SELECT' | translate: lang }}</button>\r\n }\r\n <!-- <button type=\"button\" (click)=\"close()\" class=\"btn-for-form btn btn-secondary\">{{ cancelButtonText | translate: lang}}</button>\r\n <button type=\"button\" (click)=\"onConfirm()\" class=\"btn-for-form last-child btn btn-secondary\">{{ okButtonText | translate: lang}}</button> -->\r\n\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n </div>\r\n }\r\n\r\n</div>\r\n\r\n<ng-template #jobSeek>\r\n <core-job-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsJob\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-job-seeker>\r\n</ng-template>\r\n\r\n<ng-template #employeeSeek>\r\n <core-employee-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsEmployee\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-employee-seeker>\r\n</ng-template>\r\n\r\n<ng-template #contractSeek>\r\n <core-contract-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsContract\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-contract-seeker>\r\n</ng-template>\r\n\r\n<ng-template #workingSeek>\r\n <core-working-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsWorking\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-working-seeker>\r\n</ng-template>\r\n\r\n<ng-template #wageSeek>\r\n <core-wage-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsWage\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-wage-seeker>\r\n</ng-template>\r\n\r\n<ng-template #positionSeek>\r\n <core-position-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsPosition\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n [seekerVerifyIgnore]=\"seekerVerifyIgnore\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-position-seeker>\r\n</ng-template>\r\n\r\n<ng-template #positionConcurrentSeek>\r\n <core-position-concurrent-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsPositionConcurrent\"\r\n [preDefinedOuterParam$]=\"preDefinedOuterParam$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-position-concurrent-seeker>\r\n</ng-template>\r\n\r\n<ng-template #formSeek>\r\n <core-form-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"true\" [excludedColumns]=\"excludedColumnsAutoForm\"\r\n [preDefinedOuterParam$]=\"preDefinedOuterParam$\" [multiMode]=\"false\" [excludedIds$]=\"excludedIds$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-form-seeker>\r\n</ng-template>\r\n\r\n<ng-template #organizationUnitSeek>\r\n <core-org-unit-seeker [excludedIds$]=\"excludedIds$\"\r\n (itemDoubleClick)=\"onItemDoubleClick($event)\"\r\n (itemClick)=\"onRowClick($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-org-unit-seeker>\r\n</ng-template>\r\n\r\n<ng-template #avatar let-avatar=\"context.avatar\" let-isFemale=\"context.isFemale\">\r\n\r\n\r\n @if (avatar != null) {\r\n <img [src]=\"avatar | mapAvatarToServer\" class=\"in-table-avatar\" appImageErrorResolver [type]=\"avatarResolverType\" [isFemale]=\"isFemale\">\r\n } @else {\r\n <img [src]=\"acs.BASE_URL + '/' + acs.STATIC_FOLDER + '/' + acs.APP_DEMO_FOLDER + '/' + (ras.getDemoAvatar$(isFemale) | async)\" class=\"in-table-avatar\" appImageErrorResolver>\r\n }\r\n \r\n\r\n\r\n <!-- <img *ngIf=\"avatar != null\" [src]=\"avatar | mapAvatarToServer\" class=\"in-table-avatar\" appImageErrorResolver>\r\n <img *ngIf=\"avatar == null\" [src]=\"defaultAvatar\" class=\"in-table-avatar\" appImageErrorResolver> -->\r\n\r\n\r\n\r\n</ng-template>\r\n\r\n\r\n<ng-template #sticker let-code=\"context.actflg\">\r\n <core-status-sticker [code]=\"code\" [isTrueCode]=\"true\"></core-status-sticker>\r\n</ng-template>\r\n<ng-template #idCard let-id=\"context.id\">\r\n <div class=\"af-instance-id-card\">\r\n <span>{{ id }}</span>\r\n </div>\r\n</ng-template>\r\n\r\n<div [class.d-none]=\"!showEditBuffer\">\r\n <core-page-edit-lite [sections]=\"multiModeExtendedSections\" (onFormCreated)=\"onEditBufferFormCreated($event)\"\r\n (submitLogic)=\"onEditBufferSubmit($event)\" (cancelLogic)=\"onEditBufferCancel($event)\"></core-page-edit-lite>\r\n</div>", styles: [".core-form-control-seeker-container{display:block;position:relative;background-color:#fff}.core-form-control-seeker-container input.multimode-placeholder{display:block;position:absolute;top:0;left:40px;border:none;height:33px;width:200px}.core-form-control-seeker-container>.seeker-icon-wrapper{display:block;position:absolute;border:1px solid #ced4da;right:0;top:0;width:35px;height:35px;font-size:14px;color:#848484;cursor:pointer;overflow:hidden}.core-form-control-seeker-container>.seeker-icon-wrapper>.flex-wrapper{width:35px;height:35px;display:flex;align-items:center;justify-content:center}.core-form-control-seeker-container>.seeker-icon-wrapper>.flex-wrapper>i.close-icon{color:#848484;font-size:20px}.core-form-control-seeker-container .input-wrapper{height:var(--size-form-control-height)}.core-form-control-seeker-container .input-wrapper label.text input{display:block;border:none;height:calc(var(--size-form-control-height) - 12px);line-height:calc(var(--size-form-control-height) - 12px);width:calc(100% - var(--size-form-control-height));overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:inherit}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper{display:none;position:absolute;background-color:transparent;right:28px;top:3px;width:29px;height:29px;cursor:pointer}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper>.flex-wrapper{width:29px;height:29px;display:flex;align-items:center;justify-content:center}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper>.flex-wrapper>i{color:#848484;font-size:20px}.core-form-control-seeker-container .input-wrapper:hover>.clear-icon-wrapper{display:block}.core-form-control-seeker-container>.seeker-icon-wrapper.multi-mode{position:relative;display:flex;align-items:center;justify-content:flex-start;height:33px}.core-form-control-seeker-container>.seeker-icon-wrapper.multi-mode>.flex-wrapper{width:33px;height:33px}.core-form-control-seeker-container .source-container{display:block;background-color:#fff;padding:var(--size-layout-block-cell-spacing);max-width:1200px;border-radius:10px}.core-form-control-seeker-container .source-container i.close-icon{font-size:20px;cursor:pointer;position:absolute;right:15px;top:15px}.core-form-control-seeker-container .source-container.d-none{display:none}.core-form-control-seeker-container .source-container>caption{display:block;width:100%}.core-form-control-seeker-container .source-container:has(~.footer){border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.core-form-control-seeker-container .footer{background-color:var(--color-bg-main);border-bottom-left-radius:10px;border-bottom-right-radius:10px;padding:var(--size-layout-block-cell-spacing);position:absolute;bottom:0;left:0;width:100%}.core-form-control-seeker-container .footer button:first-child{margin-right:var(--size-layout-block-cell-spacing)}.core-form-control-seeker-container .core-tabbe-wrapper{margin-top:5px}.core-form-control-seeker-container .btn-for-form{border:none;border-radius:0;background-color:transparent;color:#000;min-width:120px}.core-form-control-seeker-container button.last-child{background-color:#000;color:#fff}.core-form-control-seeker-container .form-control-disabled input{background-color:#e9ecef}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: MapAvatarToServerPipe, name: "mapAvatarToServer" }, { kind: "component", type: CoreJobSeekerComponent, selector: "core-job-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CorePageEditLiteComponent, selector: "core-page-edit-lite", inputs: ["width", "captionCode", "sections", "submitText", "checkError$"], outputs: ["onFormCreated", "submitLogic", "cancelLogic"] }, { kind: "component", type: CoreTableComponent, selector: "core-table", inputs: ["id", "width", "height", "showCheckbox", "checkboxSize", "outerButtons", "showTools", "tools", "checkingResetFlag", "borderRadius", "headerColor", "headerBackgroundColor", "headerWrap", "headerFirstRowHeight", "headerSecondRowHeight", "wrap", "allowCellScrollY", "loading", "rowHeight", "frozen", "footer", "columns", "data", "selectedIds", "corePageListInstanceNumber", "disableHighlightOnClick", "freeMode", "searchSwitchDisabled", "disableSorting", "inlineToolItems", "columnSearchDefaultOpen", "lazyLoading", "primaryKey", "rowHoverBgColor", "noPaddingCell", "autoColumnFitAvailableSpace", "checkboxExplicity", "liteMode"], outputs: ["onSearching", "onToolClick", "onRowClick", "onRowDoubleClick", "onSelectedIdsChange", "onSelectedDataChange", "onColumnCaptionClick"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code", "caption", "width", "isTrueCode"] }, { kind: "component", type: CoreEmployeeSeekerComponent, selector: "core-employee-seeker", inputs: ["preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreContractSeekerComponent, selector: "core-contract-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreWorkingSeekerComponent, selector: "core-working-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreWageSeekerComponent, selector: "core-wage-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$", "employeeId"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreOrgUnitSeekerComponent, selector: "core-org-unit-seeker", inputs: ["accessorMode", "height", "excludedIds$"], outputs: ["itemDoubleClick", "itemClick", "idsChange"] }, { kind: "component", type: CorePositionSeekerComponent, selector: "core-position-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$", "seekerVerifyIgnore"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CorePositionConcurrentSeekerComponent, selector: "core-position-concurrent-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreFormSeekerComponent, selector: "core-form-seeker", inputs: ["preDefinedOuterFilter$", "outerFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CorePageHeaderComponent, selector: "core-page-header", inputs: ["instanceNumber", "shownItems", "title", "hideButtonGroup", "htmlTooltipRef"], outputs: ["buttonClick"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["color", "backgroundColor", "appTooltip", "showAnyway", "position"] }, { kind: "directive", type: ImageErrorResolverDirective, selector: "[appImageErrorResolver]", inputs: ["type", "isFemale"] }, { kind: "directive", type: HotKeysDirective, selector: "[hotKeys]", inputs: ["hotKeys"] }] }); }
22505
+ ], viewQueries: [{ propertyName: "avatar", first: true, predicate: ["avatar"], descendants: true }, { propertyName: "sticker", first: true, predicate: ["sticker"], descendants: true }, { propertyName: "idCard", first: true, predicate: ["idCard"], descendants: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #container class=\"core-form-control-seeker-container\" [hotKeys]=\"['Escapce']\">\r\n <div class=\"input-wrapper\" [class.d-none]=\"!!multiMode\">\r\n <label #shownText type=\"text\" class=\"text form-control pointer\" [class.form-control-disabled]=\"disabled\"\r\n (click)=\"onClickSeek()\">\r\n <input\r\n type=\"text\"\r\n [readonly]=\"true\"\r\n [value]=\"valueToShow || ''\"\r\n [appTooltip]=\"valueToShow\"\r\n [placeholder]=\"placeholder || ''\"\r\n />\r\n </label>\r\n @if (!multiMode) {\r\n <div class=\"clear-icon-wrapper\" [class.d-none]=\"!!disabled || !!!value\" (click)=\"onClickClear()\">\r\n <div class=\"flex-wrapper\" [appTooltip]=\"'UI.CORE_CONTOL_COMMON_CLEAR' | translate: lang\">\r\n <i class=\"feather-x\"></i>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"seeker-icon-wrapper\" [class.form-control-disabled]=\"disabled\" [class.multi-mode]=\"!!multiMode\"\r\n (click)=\"onClickSeek()\">\r\n <div class=\"flex-wrapper\" [class.form-control-disabled]=\"disabled\">\r\n <i class=\"feather-search\"></i>\r\n </div>\r\n </div>\r\n <input type=\"text\" readonly [placeholder]=\"placeholder || ''\" class=\"multimode-placeholder\" [class.d-none]=\"!multiMode\" [appTooltip]=\"placeholder\">\r\n @if (!!multiMode) {\r\n <div class=\"core-tabbe-wrapper\">\r\n <core-table [height]=\"multiModeTableHeight\" [columns]=\"multiModeColumns\" [data]=\"selectedData\"\r\n [showTools]=\"!!!disabled\" [tools]=\"tools\" [lazyLoading]=\"true\"\r\n [rowHeight]=\"(multiModeRowHeight || 46) + 'px'\" [searchSwitchDisabled]=\"true\" [disableSorting]=\"true\"\r\n (onToolClick)=\"onToolClick($event)\" (onRowDoubleClick)=\"onSelectedDataRowDoubleClick($event)\"></core-table>\r\n </div>\r\n }\r\n\r\n @if (!!sourceOpen) {\r\n <div class=\"modal-container\">\r\n <div class=\"modal-content-root\" [ngStyle]=\"{ padding: '0px' }\">\r\n\r\n <div class=\"source-space\" [ngStyle]=\"{\r\n height: sourceSpaceHeight + 'px',\r\n overflow: 'hidden',\r\n boxSizing: 'border-box',\r\n }\">\r\n @if (showPageHeader) {\r\n <div class=\"modal-header-panel\">\r\n <core-page-header [title]=\"title\" [hideButtonGroup]=\"true\"></core-page-header>\r\n </div>\r\n }\r\n <div class=\"source-container\" [ngStyle]=\"{\r\n height: sourceContainerHeight + 'px',\r\n paddingTop: '0px',\r\n paddingBottom: '0px'\r\n }\">\r\n <i class=\"close-icon feather-x\" (click)=\"onCancel()\"\r\n [class.d-block]=\"seekerSourceType==='ORGANIZATION_UNIT_SEEK'\"></i>\r\n\r\n @switch (seekerSourceType) {\r\n @case ('JOB_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"jobSeek\">\r\n </ng-container>\r\n }\r\n @case ('EMPLOYEE_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"employeeSeek\">\r\n </ng-container>\r\n }\r\n @case ('CONTRACT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"contractSeek\">\r\n </ng-container>\r\n }\r\n @case ('WORKING_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"workingSeek\">\r\n </ng-container>\r\n }\r\n @case ('WAGE_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"wageSeek\">\r\n </ng-container>\r\n }\r\n @case ('ORGANIZATION_UNIT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"organizationUnitSeek\">\r\n </ng-container>\r\n }\r\n @case ('POSITION_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"positionSeek\">\r\n </ng-container>\r\n }\r\n @case ('POSITION_CONCURRENT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"positionConcurrentSeek\">\r\n </ng-container>\r\n }\r\n @case ('FORM_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"formSeek\">\r\n </ng-container>\r\n }\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"d-flex-end\">\r\n <button class=\"btn-for-form btn btn-secondary\" type=\"button\" (click)=\"onCancel()\" [appTooltip]=\"'(ESC)'\">{{'UI_CORE_CONFIRM_DIALOG_BUTTON_CANCEL' | translate: lang }}</button>\r\n\r\n @if ((seekerSourceType === 'ORGANIZATION_UNIT_SEEK' && !!clickedItem) || (!!multiMode && !!pendingSelectedData?.length) || (!multiMode && !!clickedItemIsInTheList())) {\r\n <button class=\"btn-for-form last-child btn btn-secondary\" type=\"button\" (click)=\"onSelect()\">{{\r\n 'UI_CORE_CONFIRM_DIALOG_BUTTON_SELECT' | translate: lang }}</button>\r\n }\r\n <!-- <button type=\"button\" (click)=\"close()\" class=\"btn-for-form btn btn-secondary\">{{ cancelButtonText | translate: lang}}</button>\r\n <button type=\"button\" (click)=\"onConfirm()\" class=\"btn-for-form last-child btn btn-secondary\">{{ okButtonText | translate: lang}}</button> -->\r\n\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n </div>\r\n }\r\n\r\n</div>\r\n\r\n<ng-template #jobSeek>\r\n <core-job-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsJob\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-job-seeker>\r\n</ng-template>\r\n\r\n<ng-template #employeeSeek>\r\n <core-employee-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsEmployee\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-employee-seeker>\r\n</ng-template>\r\n\r\n<ng-template #contractSeek>\r\n <core-contract-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsContract\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-contract-seeker>\r\n</ng-template>\r\n\r\n<ng-template #workingSeek>\r\n <core-working-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsWorking\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-working-seeker>\r\n</ng-template>\r\n\r\n<ng-template #wageSeek>\r\n <core-wage-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsWage\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-wage-seeker>\r\n</ng-template>\r\n\r\n<ng-template #positionSeek>\r\n <core-position-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsPosition\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n [seekerVerifyIgnore]=\"seekerVerifyIgnore\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-position-seeker>\r\n</ng-template>\r\n\r\n<ng-template #positionConcurrentSeek>\r\n <core-position-concurrent-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsPositionConcurrent\"\r\n [preDefinedOuterParam$]=\"preDefinedOuterParam$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-position-concurrent-seeker>\r\n</ng-template>\r\n\r\n<ng-template #formSeek>\r\n <core-form-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"true\" [excludedColumns]=\"excludedColumnsAutoForm\"\r\n [preDefinedOuterParam$]=\"preDefinedOuterParam$\" [multiMode]=\"false\" [excludedIds$]=\"excludedIds$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-form-seeker>\r\n</ng-template>\r\n\r\n<ng-template #organizationUnitSeek>\r\n <core-org-unit-seeker [excludedIds$]=\"excludedIds$\"\r\n (itemDoubleClick)=\"onItemDoubleClick($event)\"\r\n (itemClick)=\"onRowClick($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-org-unit-seeker>\r\n</ng-template>\r\n\r\n<ng-template #avatar let-avatar=\"context.avatar\" let-isFemale=\"context.isFemale\">\r\n\r\n\r\n @if (avatar != null) {\r\n <img [src]=\"avatar | mapAvatarToServer\" class=\"in-table-avatar\" appImageErrorResolver [type]=\"avatarResolverType\" [isFemale]=\"isFemale\">\r\n } @else {\r\n <img [src]=\"acs.BASE_URL + '/' + acs.STATIC_FOLDER + '/' + acs.APP_DEMO_FOLDER + '/' + (ras.getDemoAvatar$(isFemale) | async)\" class=\"in-table-avatar\" appImageErrorResolver>\r\n }\r\n \r\n\r\n\r\n <!-- <img *ngIf=\"avatar != null\" [src]=\"avatar | mapAvatarToServer\" class=\"in-table-avatar\" appImageErrorResolver>\r\n <img *ngIf=\"avatar == null\" [src]=\"defaultAvatar\" class=\"in-table-avatar\" appImageErrorResolver> -->\r\n\r\n\r\n\r\n</ng-template>\r\n\r\n\r\n<ng-template #sticker let-code=\"context.actflg\">\r\n <core-status-sticker [code]=\"code\" [isTrueCode]=\"true\"></core-status-sticker>\r\n</ng-template>\r\n<ng-template #idCard let-id=\"context.id\">\r\n <div class=\"af-instance-id-card\">\r\n <span>{{ id }}</span>\r\n </div>\r\n</ng-template>\r\n\r\n<div [class.d-none]=\"!showEditBuffer\">\r\n <core-page-edit-lite [sections]=\"multiModeExtendedSections\" (onFormCreated)=\"onEditBufferFormCreated($event)\"\r\n (submitLogic)=\"onEditBufferSubmit($event)\" (cancelLogic)=\"onEditBufferCancel($event)\"></core-page-edit-lite>\r\n</div>", styles: [".core-form-control-seeker-container{display:block;position:relative;background-color:#fff}.core-form-control-seeker-container input.multimode-placeholder{display:block;position:absolute;top:0;left:40px;border:none;height:33px;max-width:100%}.core-form-control-seeker-container>.seeker-icon-wrapper{display:block;position:absolute;border:1px solid #ced4da;right:0;top:0;width:35px;height:35px;font-size:14px;color:#848484;cursor:pointer;overflow:hidden}.core-form-control-seeker-container>.seeker-icon-wrapper>.flex-wrapper{width:35px;height:35px;display:flex;align-items:center;justify-content:center}.core-form-control-seeker-container>.seeker-icon-wrapper>.flex-wrapper>i.close-icon{color:#848484;font-size:20px}.core-form-control-seeker-container .input-wrapper{height:var(--size-form-control-height)}.core-form-control-seeker-container .input-wrapper label.text input{display:block;border:none;height:calc(var(--size-form-control-height) - 12px);line-height:calc(var(--size-form-control-height) - 12px);width:calc(100% - var(--size-form-control-height));overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:inherit}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper{display:none;position:absolute;background-color:transparent;right:28px;top:3px;width:29px;height:29px;cursor:pointer}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper>.flex-wrapper{width:29px;height:29px;display:flex;align-items:center;justify-content:center}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper>.flex-wrapper>i{color:#848484;font-size:20px}.core-form-control-seeker-container .input-wrapper:hover>.clear-icon-wrapper{display:block}.core-form-control-seeker-container>.seeker-icon-wrapper.multi-mode{position:relative;display:flex;align-items:center;justify-content:flex-start;height:33px}.core-form-control-seeker-container>.seeker-icon-wrapper.multi-mode>.flex-wrapper{width:33px;height:33px}.core-form-control-seeker-container .source-container{display:block;background-color:#fff;padding:var(--size-layout-block-cell-spacing);max-width:1200px;border-radius:10px}.core-form-control-seeker-container .source-container i.close-icon{font-size:20px;cursor:pointer;position:absolute;right:15px;top:15px}.core-form-control-seeker-container .source-container.d-none{display:none}.core-form-control-seeker-container .source-container>caption{display:block;width:100%}.core-form-control-seeker-container .source-container:has(~.footer){border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.core-form-control-seeker-container .footer{background-color:var(--color-bg-main);border-bottom-left-radius:10px;border-bottom-right-radius:10px;padding:var(--size-layout-block-cell-spacing);position:absolute;bottom:0;left:0;width:100%}.core-form-control-seeker-container .footer button:first-child{margin-right:var(--size-layout-block-cell-spacing)}.core-form-control-seeker-container .core-tabbe-wrapper{margin-top:5px}.core-form-control-seeker-container .btn-for-form{border:none;border-radius:0;background-color:transparent;color:#000;min-width:120px}.core-form-control-seeker-container button.last-child{background-color:#000;color:#fff}.core-form-control-seeker-container .form-control-disabled input{background-color:#e9ecef}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: MapAvatarToServerPipe, name: "mapAvatarToServer" }, { kind: "component", type: CoreJobSeekerComponent, selector: "core-job-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowClick", "rowDoubleClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CorePageEditLiteComponent, selector: "core-page-edit-lite", inputs: ["width", "captionCode", "sections", "submitText", "checkError$"], outputs: ["onFormCreated", "submitLogic", "cancelLogic"] }, { kind: "component", type: CoreTableComponent, selector: "core-table", inputs: ["id", "width", "height", "showCheckbox", "checkboxSize", "outerButtons", "showTools", "tools", "checkingResetFlag", "borderRadius", "headerColor", "headerBackgroundColor", "headerWrap", "headerFirstRowHeight", "headerSecondRowHeight", "wrap", "allowCellScrollY", "loading", "rowHeight", "frozen", "footer", "columns", "data", "selectedIds", "corePageListInstanceNumber", "disableHighlightOnClick", "freeMode", "searchSwitchDisabled", "disableSorting", "inlineToolItems", "columnSearchDefaultOpen", "lazyLoading", "primaryKey", "rowHoverBgColor", "noPaddingCell", "autoColumnFitAvailableSpace", "checkboxExplicity", "liteMode"], outputs: ["onSearching", "onToolClick", "onRowClick", "onRowDoubleClick", "onSelectedIdsChange", "onSelectedDataChange", "onColumnCaptionClick"] }, { kind: "component", type: CoreStatusStickerComponent, selector: "core-status-sticker", inputs: ["code", "caption", "width", "isTrueCode"] }, { kind: "component", type: CoreEmployeeSeekerComponent, selector: "core-employee-seeker", inputs: ["preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreContractSeekerComponent, selector: "core-contract-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreWorkingSeekerComponent, selector: "core-working-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreWageSeekerComponent, selector: "core-wage-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$", "employeeId"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreOrgUnitSeekerComponent, selector: "core-org-unit-seeker", inputs: ["accessorMode", "height", "excludedIds$"], outputs: ["itemDoubleClick", "itemClick", "idsChange"] }, { kind: "component", type: CorePositionSeekerComponent, selector: "core-position-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$", "seekerVerifyIgnore"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CorePositionConcurrentSeekerComponent, selector: "core-position-concurrent-seeker", inputs: ["height", "preDefinedOuterFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CoreFormSeekerComponent, selector: "core-form-seeker", inputs: ["preDefinedOuterFilter$", "outerFilter$", "useTheseColumns", "hideOrgTree", "excludedColumns", "multiMode", "preDefinedOuterParam$", "excludedIds$"], outputs: ["rowDoubleClick", "rowClick", "selectedIdsChange", "selectedDataChange", "columnsInit", "listChange"] }, { kind: "component", type: CorePageHeaderComponent, selector: "core-page-header", inputs: ["instanceNumber", "shownItems", "title", "hideButtonGroup", "htmlTooltipRef"], outputs: ["buttonClick"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["color", "backgroundColor", "appTooltip", "showAnyway", "position"] }, { kind: "directive", type: ImageErrorResolverDirective, selector: "[appImageErrorResolver]", inputs: ["type", "isFemale"] }, { kind: "directive", type: HotKeysDirective, selector: "[hotKeys]", inputs: ["hotKeys"] }] }); }
22487
22506
  }
22488
22507
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreFormControlSeekerComponent, decorators: [{
22489
22508
  type: Component,
@@ -22524,7 +22543,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
22524
22543
  CorePositionConcurrentSeekerComponent,
22525
22544
  CoreFormSeekerComponent,
22526
22545
  CoreTableComponent
22527
- ], template: "<div #container class=\"core-form-control-seeker-container\" [hotKeys]=\"['Escapce']\">\r\n <div class=\"input-wrapper\" [class.d-none]=\"!!multiMode\">\r\n <label #shownText type=\"text\" class=\"text form-control pointer\" [class.form-control-disabled]=\"disabled\"\r\n (click)=\"onClickSeek()\">\r\n <input\r\n type=\"text\"\r\n [readonly]=\"true\"\r\n [value]=\"valueToShow || ''\"\r\n [appTooltip]=\"valueToShow\"\r\n [placeholder]=\"placeholder || ''\"\r\n />\r\n </label>\r\n @if (!multiMode) {\r\n <div class=\"clear-icon-wrapper\" [class.d-none]=\"!!disabled || !!!value\" (click)=\"onClickClear()\">\r\n <div class=\"flex-wrapper\" [appTooltip]=\"'UI.CORE_CONTOL_COMMON_CLEAR' | translate: lang\">\r\n <i class=\"feather-x\"></i>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"seeker-icon-wrapper\" [class.form-control-disabled]=\"disabled\" [class.multi-mode]=\"!!multiMode\"\r\n (click)=\"onClickSeek()\">\r\n <div class=\"flex-wrapper\" [class.form-control-disabled]=\"disabled\">\r\n <i class=\"feather-search\"></i>\r\n </div>\r\n </div>\r\n <input type=\"text\" readonly [placeholder]=\"placeholder || ''\" class=\"multimode-placeholder\" [class.d-none]=\"!multiMode\">\r\n @if (!!multiMode) {\r\n <div class=\"core-tabbe-wrapper\">\r\n <core-table [height]=\"multiModeTableHeight\" [columns]=\"multiModeColumns\" [data]=\"selectedData\"\r\n [showTools]=\"!!!disabled\" [tools]=\"tools\" [lazyLoading]=\"true\"\r\n [rowHeight]=\"(multiModeRowHeight || 46) + 'px'\" [searchSwitchDisabled]=\"true\" [disableSorting]=\"true\"\r\n (onToolClick)=\"onToolClick($event)\" (onRowDoubleClick)=\"onSelectedDataRowDoubleClick($event)\"></core-table>\r\n </div>\r\n }\r\n\r\n @if (!!sourceOpen) {\r\n <div class=\"modal-container\">\r\n <div class=\"modal-content-root\" [ngStyle]=\"{ padding: '0px' }\">\r\n\r\n <div class=\"source-space\" [ngStyle]=\"{\r\n height: sourceSpaceHeight + 'px',\r\n overflow: 'hidden',\r\n boxSizing: 'border-box',\r\n }\">\r\n @if (showPageHeader) {\r\n <div class=\"modal-header-panel\">\r\n <core-page-header [title]=\"title\" [hideButtonGroup]=\"true\"></core-page-header>\r\n </div>\r\n }\r\n <div class=\"source-container\" [ngStyle]=\"{\r\n height: sourceContainerHeight + 'px',\r\n paddingTop: '0px',\r\n paddingBottom: '0px'\r\n }\">\r\n <i class=\"close-icon feather-x\" (click)=\"onCancel()\"\r\n [class.d-block]=\"seekerSourceType==='ORGANIZATION_UNIT_SEEK'\"></i>\r\n\r\n @switch (seekerSourceType) {\r\n @case ('JOB_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"jobSeek\">\r\n </ng-container>\r\n }\r\n @case ('EMPLOYEE_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"employeeSeek\">\r\n </ng-container>\r\n }\r\n @case ('CONTRACT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"contractSeek\">\r\n </ng-container>\r\n }\r\n @case ('WORKING_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"workingSeek\">\r\n </ng-container>\r\n }\r\n @case ('WAGE_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"wageSeek\">\r\n </ng-container>\r\n }\r\n @case ('ORGANIZATION_UNIT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"organizationUnitSeek\">\r\n </ng-container>\r\n }\r\n @case ('POSITION_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"positionSeek\">\r\n </ng-container>\r\n }\r\n @case ('POSITION_CONCURRENT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"positionConcurrentSeek\">\r\n </ng-container>\r\n }\r\n @case ('FORM_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"formSeek\">\r\n </ng-container>\r\n }\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"d-flex-end\">\r\n <button class=\"btn-for-form btn btn-secondary\" type=\"button\" (click)=\"onCancel()\" [appTooltip]=\"'(ESC)'\">{{'UI_CORE_CONFIRM_DIALOG_BUTTON_CANCEL' | translate: lang }}</button>\r\n\r\n @if ((seekerSourceType === 'ORGANIZATION_UNIT_SEEK' && !!clickedItem) || (!!multiMode && !!pendingSelectedData?.length) || (!multiMode && !!clickedItemIsInTheList())) {\r\n <button class=\"btn-for-form last-child btn btn-secondary\" type=\"button\" (click)=\"onSelect()\">{{\r\n 'UI_CORE_CONFIRM_DIALOG_BUTTON_SELECT' | translate: lang }}</button>\r\n }\r\n <!-- <button type=\"button\" (click)=\"close()\" class=\"btn-for-form btn btn-secondary\">{{ cancelButtonText | translate: lang}}</button>\r\n <button type=\"button\" (click)=\"onConfirm()\" class=\"btn-for-form last-child btn btn-secondary\">{{ okButtonText | translate: lang}}</button> -->\r\n\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n </div>\r\n }\r\n\r\n</div>\r\n\r\n<ng-template #jobSeek>\r\n <core-job-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsJob\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-job-seeker>\r\n</ng-template>\r\n\r\n<ng-template #employeeSeek>\r\n <core-employee-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsEmployee\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-employee-seeker>\r\n</ng-template>\r\n\r\n<ng-template #contractSeek>\r\n <core-contract-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsContract\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-contract-seeker>\r\n</ng-template>\r\n\r\n<ng-template #workingSeek>\r\n <core-working-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsWorking\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-working-seeker>\r\n</ng-template>\r\n\r\n<ng-template #wageSeek>\r\n <core-wage-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsWage\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-wage-seeker>\r\n</ng-template>\r\n\r\n<ng-template #positionSeek>\r\n <core-position-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsPosition\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n [seekerVerifyIgnore]=\"seekerVerifyIgnore\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-position-seeker>\r\n</ng-template>\r\n\r\n<ng-template #positionConcurrentSeek>\r\n <core-position-concurrent-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsPositionConcurrent\"\r\n [preDefinedOuterParam$]=\"preDefinedOuterParam$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-position-concurrent-seeker>\r\n</ng-template>\r\n\r\n<ng-template #formSeek>\r\n <core-form-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"true\" [excludedColumns]=\"excludedColumnsAutoForm\"\r\n [preDefinedOuterParam$]=\"preDefinedOuterParam$\" [multiMode]=\"false\" [excludedIds$]=\"excludedIds$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-form-seeker>\r\n</ng-template>\r\n\r\n<ng-template #organizationUnitSeek>\r\n <core-org-unit-seeker [excludedIds$]=\"excludedIds$\"\r\n (itemDoubleClick)=\"onItemDoubleClick($event)\"\r\n (itemClick)=\"onRowClick($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-org-unit-seeker>\r\n</ng-template>\r\n\r\n<ng-template #avatar let-avatar=\"context.avatar\" let-isFemale=\"context.isFemale\">\r\n\r\n\r\n @if (avatar != null) {\r\n <img [src]=\"avatar | mapAvatarToServer\" class=\"in-table-avatar\" appImageErrorResolver [type]=\"avatarResolverType\" [isFemale]=\"isFemale\">\r\n } @else {\r\n <img [src]=\"acs.BASE_URL + '/' + acs.STATIC_FOLDER + '/' + acs.APP_DEMO_FOLDER + '/' + (ras.getDemoAvatar$(isFemale) | async)\" class=\"in-table-avatar\" appImageErrorResolver>\r\n }\r\n \r\n\r\n\r\n <!-- <img *ngIf=\"avatar != null\" [src]=\"avatar | mapAvatarToServer\" class=\"in-table-avatar\" appImageErrorResolver>\r\n <img *ngIf=\"avatar == null\" [src]=\"defaultAvatar\" class=\"in-table-avatar\" appImageErrorResolver> -->\r\n\r\n\r\n\r\n</ng-template>\r\n\r\n\r\n<ng-template #sticker let-code=\"context.actflg\">\r\n <core-status-sticker [code]=\"code\" [isTrueCode]=\"true\"></core-status-sticker>\r\n</ng-template>\r\n<ng-template #idCard let-id=\"context.id\">\r\n <div class=\"af-instance-id-card\">\r\n <span>{{ id }}</span>\r\n </div>\r\n</ng-template>\r\n\r\n<div [class.d-none]=\"!showEditBuffer\">\r\n <core-page-edit-lite [sections]=\"multiModeExtendedSections\" (onFormCreated)=\"onEditBufferFormCreated($event)\"\r\n (submitLogic)=\"onEditBufferSubmit($event)\" (cancelLogic)=\"onEditBufferCancel($event)\"></core-page-edit-lite>\r\n</div>", styles: [".core-form-control-seeker-container{display:block;position:relative;background-color:#fff}.core-form-control-seeker-container input.multimode-placeholder{display:block;position:absolute;top:0;left:40px;border:none;height:33px;width:200px}.core-form-control-seeker-container>.seeker-icon-wrapper{display:block;position:absolute;border:1px solid #ced4da;right:0;top:0;width:35px;height:35px;font-size:14px;color:#848484;cursor:pointer;overflow:hidden}.core-form-control-seeker-container>.seeker-icon-wrapper>.flex-wrapper{width:35px;height:35px;display:flex;align-items:center;justify-content:center}.core-form-control-seeker-container>.seeker-icon-wrapper>.flex-wrapper>i.close-icon{color:#848484;font-size:20px}.core-form-control-seeker-container .input-wrapper{height:var(--size-form-control-height)}.core-form-control-seeker-container .input-wrapper label.text input{display:block;border:none;height:calc(var(--size-form-control-height) - 12px);line-height:calc(var(--size-form-control-height) - 12px);width:calc(100% - var(--size-form-control-height));overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:inherit}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper{display:none;position:absolute;background-color:transparent;right:28px;top:3px;width:29px;height:29px;cursor:pointer}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper>.flex-wrapper{width:29px;height:29px;display:flex;align-items:center;justify-content:center}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper>.flex-wrapper>i{color:#848484;font-size:20px}.core-form-control-seeker-container .input-wrapper:hover>.clear-icon-wrapper{display:block}.core-form-control-seeker-container>.seeker-icon-wrapper.multi-mode{position:relative;display:flex;align-items:center;justify-content:flex-start;height:33px}.core-form-control-seeker-container>.seeker-icon-wrapper.multi-mode>.flex-wrapper{width:33px;height:33px}.core-form-control-seeker-container .source-container{display:block;background-color:#fff;padding:var(--size-layout-block-cell-spacing);max-width:1200px;border-radius:10px}.core-form-control-seeker-container .source-container i.close-icon{font-size:20px;cursor:pointer;position:absolute;right:15px;top:15px}.core-form-control-seeker-container .source-container.d-none{display:none}.core-form-control-seeker-container .source-container>caption{display:block;width:100%}.core-form-control-seeker-container .source-container:has(~.footer){border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.core-form-control-seeker-container .footer{background-color:var(--color-bg-main);border-bottom-left-radius:10px;border-bottom-right-radius:10px;padding:var(--size-layout-block-cell-spacing);position:absolute;bottom:0;left:0;width:100%}.core-form-control-seeker-container .footer button:first-child{margin-right:var(--size-layout-block-cell-spacing)}.core-form-control-seeker-container .core-tabbe-wrapper{margin-top:5px}.core-form-control-seeker-container .btn-for-form{border:none;border-radius:0;background-color:transparent;color:#000;min-width:120px}.core-form-control-seeker-container button.last-child{background-color:#000;color:#fff}.core-form-control-seeker-container .form-control-disabled input{background-color:#e9ecef}\n"] }]
22546
+ ], template: "<div #container class=\"core-form-control-seeker-container\" [hotKeys]=\"['Escapce']\">\r\n <div class=\"input-wrapper\" [class.d-none]=\"!!multiMode\">\r\n <label #shownText type=\"text\" class=\"text form-control pointer\" [class.form-control-disabled]=\"disabled\"\r\n (click)=\"onClickSeek()\">\r\n <input\r\n type=\"text\"\r\n [readonly]=\"true\"\r\n [value]=\"valueToShow || ''\"\r\n [appTooltip]=\"valueToShow\"\r\n [placeholder]=\"placeholder || ''\"\r\n />\r\n </label>\r\n @if (!multiMode) {\r\n <div class=\"clear-icon-wrapper\" [class.d-none]=\"!!disabled || !!!value\" (click)=\"onClickClear()\">\r\n <div class=\"flex-wrapper\" [appTooltip]=\"'UI.CORE_CONTOL_COMMON_CLEAR' | translate: lang\">\r\n <i class=\"feather-x\"></i>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"seeker-icon-wrapper\" [class.form-control-disabled]=\"disabled\" [class.multi-mode]=\"!!multiMode\"\r\n (click)=\"onClickSeek()\">\r\n <div class=\"flex-wrapper\" [class.form-control-disabled]=\"disabled\">\r\n <i class=\"feather-search\"></i>\r\n </div>\r\n </div>\r\n <input type=\"text\" readonly [placeholder]=\"placeholder || ''\" class=\"multimode-placeholder\" [class.d-none]=\"!multiMode\" [appTooltip]=\"placeholder\">\r\n @if (!!multiMode) {\r\n <div class=\"core-tabbe-wrapper\">\r\n <core-table [height]=\"multiModeTableHeight\" [columns]=\"multiModeColumns\" [data]=\"selectedData\"\r\n [showTools]=\"!!!disabled\" [tools]=\"tools\" [lazyLoading]=\"true\"\r\n [rowHeight]=\"(multiModeRowHeight || 46) + 'px'\" [searchSwitchDisabled]=\"true\" [disableSorting]=\"true\"\r\n (onToolClick)=\"onToolClick($event)\" (onRowDoubleClick)=\"onSelectedDataRowDoubleClick($event)\"></core-table>\r\n </div>\r\n }\r\n\r\n @if (!!sourceOpen) {\r\n <div class=\"modal-container\">\r\n <div class=\"modal-content-root\" [ngStyle]=\"{ padding: '0px' }\">\r\n\r\n <div class=\"source-space\" [ngStyle]=\"{\r\n height: sourceSpaceHeight + 'px',\r\n overflow: 'hidden',\r\n boxSizing: 'border-box',\r\n }\">\r\n @if (showPageHeader) {\r\n <div class=\"modal-header-panel\">\r\n <core-page-header [title]=\"title\" [hideButtonGroup]=\"true\"></core-page-header>\r\n </div>\r\n }\r\n <div class=\"source-container\" [ngStyle]=\"{\r\n height: sourceContainerHeight + 'px',\r\n paddingTop: '0px',\r\n paddingBottom: '0px'\r\n }\">\r\n <i class=\"close-icon feather-x\" (click)=\"onCancel()\"\r\n [class.d-block]=\"seekerSourceType==='ORGANIZATION_UNIT_SEEK'\"></i>\r\n\r\n @switch (seekerSourceType) {\r\n @case ('JOB_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"jobSeek\">\r\n </ng-container>\r\n }\r\n @case ('EMPLOYEE_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"employeeSeek\">\r\n </ng-container>\r\n }\r\n @case ('CONTRACT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"contractSeek\">\r\n </ng-container>\r\n }\r\n @case ('WORKING_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"workingSeek\">\r\n </ng-container>\r\n }\r\n @case ('WAGE_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"wageSeek\">\r\n </ng-container>\r\n }\r\n @case ('ORGANIZATION_UNIT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"organizationUnitSeek\">\r\n </ng-container>\r\n }\r\n @case ('POSITION_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"positionSeek\">\r\n </ng-container>\r\n }\r\n @case ('POSITION_CONCURRENT_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"positionConcurrentSeek\">\r\n </ng-container>\r\n }\r\n @case ('FORM_SEEK') {\r\n <ng-container *ngTemplateOutlet=\"formSeek\">\r\n </ng-container>\r\n }\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"d-flex-end\">\r\n <button class=\"btn-for-form btn btn-secondary\" type=\"button\" (click)=\"onCancel()\" [appTooltip]=\"'(ESC)'\">{{'UI_CORE_CONFIRM_DIALOG_BUTTON_CANCEL' | translate: lang }}</button>\r\n\r\n @if ((seekerSourceType === 'ORGANIZATION_UNIT_SEEK' && !!clickedItem) || (!!multiMode && !!pendingSelectedData?.length) || (!multiMode && !!clickedItemIsInTheList())) {\r\n <button class=\"btn-for-form last-child btn btn-secondary\" type=\"button\" (click)=\"onSelect()\">{{\r\n 'UI_CORE_CONFIRM_DIALOG_BUTTON_SELECT' | translate: lang }}</button>\r\n }\r\n <!-- <button type=\"button\" (click)=\"close()\" class=\"btn-for-form btn btn-secondary\">{{ cancelButtonText | translate: lang}}</button>\r\n <button type=\"button\" (click)=\"onConfirm()\" class=\"btn-for-form last-child btn btn-secondary\">{{ okButtonText | translate: lang}}</button> -->\r\n\r\n\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n </div>\r\n }\r\n\r\n</div>\r\n\r\n<ng-template #jobSeek>\r\n <core-job-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsJob\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-job-seeker>\r\n</ng-template>\r\n\r\n<ng-template #employeeSeek>\r\n <core-employee-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsEmployee\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-employee-seeker>\r\n</ng-template>\r\n\r\n<ng-template #contractSeek>\r\n <core-contract-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsContract\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-contract-seeker>\r\n</ng-template>\r\n\r\n<ng-template #workingSeek>\r\n <core-working-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsWorking\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-working-seeker>\r\n</ng-template>\r\n\r\n<ng-template #wageSeek>\r\n <core-wage-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsWage\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n (rowDoubleClick)=\"onRowDoubleClick($event)\" (columnsInit)=\"onColumnsInit($event)\"\r\n (selectedDataChange)=\"onSelectedDataChange($event)\" \r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-wage-seeker>\r\n</ng-template>\r\n\r\n<ng-template #positionSeek>\r\n <core-position-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsPosition\" [preDefinedOuterParam$]=\"preDefinedOuterParam$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n [seekerVerifyIgnore]=\"seekerVerifyIgnore\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-position-seeker>\r\n</ng-template>\r\n\r\n<ng-template #positionConcurrentSeek>\r\n <core-position-concurrent-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"hideOrgTree\" [excludedColumns]=\"excludedColumnsPositionConcurrent\"\r\n [preDefinedOuterParam$]=\"preDefinedOuterParam$\" [multiMode]=\"multiMode\" [excludedIds$]=\"excludedIds$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-position-concurrent-seeker>\r\n</ng-template>\r\n\r\n<ng-template #formSeek>\r\n <core-form-seeker [useTheseColumns]=\"useTheseColumns\" [hideOrgTree]=\"true\" [excludedColumns]=\"excludedColumnsAutoForm\"\r\n [preDefinedOuterParam$]=\"preDefinedOuterParam$\" [multiMode]=\"false\" [excludedIds$]=\"excludedIds$\"\r\n [preDefinedOuterFilter$]=\"preDefinedOuterFilter$\" (rowDoubleClick)=\"onRowDoubleClick($event)\"\r\n (columnsInit)=\"onColumnsInit($event)\" (selectedDataChange)=\"onSelectedDataChange($event)\"\r\n (rowClick)=\"onRowClick($event)\"\r\n (listChange)=\"onListChange($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-form-seeker>\r\n</ng-template>\r\n\r\n<ng-template #organizationUnitSeek>\r\n <core-org-unit-seeker [excludedIds$]=\"excludedIds$\"\r\n (itemDoubleClick)=\"onItemDoubleClick($event)\"\r\n (itemClick)=\"onRowClick($event)\"\r\n [height]=\"childComponentHeight\"\r\n ></core-org-unit-seeker>\r\n</ng-template>\r\n\r\n<ng-template #avatar let-avatar=\"context.avatar\" let-isFemale=\"context.isFemale\">\r\n\r\n\r\n @if (avatar != null) {\r\n <img [src]=\"avatar | mapAvatarToServer\" class=\"in-table-avatar\" appImageErrorResolver [type]=\"avatarResolverType\" [isFemale]=\"isFemale\">\r\n } @else {\r\n <img [src]=\"acs.BASE_URL + '/' + acs.STATIC_FOLDER + '/' + acs.APP_DEMO_FOLDER + '/' + (ras.getDemoAvatar$(isFemale) | async)\" class=\"in-table-avatar\" appImageErrorResolver>\r\n }\r\n \r\n\r\n\r\n <!-- <img *ngIf=\"avatar != null\" [src]=\"avatar | mapAvatarToServer\" class=\"in-table-avatar\" appImageErrorResolver>\r\n <img *ngIf=\"avatar == null\" [src]=\"defaultAvatar\" class=\"in-table-avatar\" appImageErrorResolver> -->\r\n\r\n\r\n\r\n</ng-template>\r\n\r\n\r\n<ng-template #sticker let-code=\"context.actflg\">\r\n <core-status-sticker [code]=\"code\" [isTrueCode]=\"true\"></core-status-sticker>\r\n</ng-template>\r\n<ng-template #idCard let-id=\"context.id\">\r\n <div class=\"af-instance-id-card\">\r\n <span>{{ id }}</span>\r\n </div>\r\n</ng-template>\r\n\r\n<div [class.d-none]=\"!showEditBuffer\">\r\n <core-page-edit-lite [sections]=\"multiModeExtendedSections\" (onFormCreated)=\"onEditBufferFormCreated($event)\"\r\n (submitLogic)=\"onEditBufferSubmit($event)\" (cancelLogic)=\"onEditBufferCancel($event)\"></core-page-edit-lite>\r\n</div>", styles: [".core-form-control-seeker-container{display:block;position:relative;background-color:#fff}.core-form-control-seeker-container input.multimode-placeholder{display:block;position:absolute;top:0;left:40px;border:none;height:33px;max-width:100%}.core-form-control-seeker-container>.seeker-icon-wrapper{display:block;position:absolute;border:1px solid #ced4da;right:0;top:0;width:35px;height:35px;font-size:14px;color:#848484;cursor:pointer;overflow:hidden}.core-form-control-seeker-container>.seeker-icon-wrapper>.flex-wrapper{width:35px;height:35px;display:flex;align-items:center;justify-content:center}.core-form-control-seeker-container>.seeker-icon-wrapper>.flex-wrapper>i.close-icon{color:#848484;font-size:20px}.core-form-control-seeker-container .input-wrapper{height:var(--size-form-control-height)}.core-form-control-seeker-container .input-wrapper label.text input{display:block;border:none;height:calc(var(--size-form-control-height) - 12px);line-height:calc(var(--size-form-control-height) - 12px);width:calc(100% - var(--size-form-control-height));overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:inherit}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper{display:none;position:absolute;background-color:transparent;right:28px;top:3px;width:29px;height:29px;cursor:pointer}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper>.flex-wrapper{width:29px;height:29px;display:flex;align-items:center;justify-content:center}.core-form-control-seeker-container .input-wrapper .clear-icon-wrapper>.flex-wrapper>i{color:#848484;font-size:20px}.core-form-control-seeker-container .input-wrapper:hover>.clear-icon-wrapper{display:block}.core-form-control-seeker-container>.seeker-icon-wrapper.multi-mode{position:relative;display:flex;align-items:center;justify-content:flex-start;height:33px}.core-form-control-seeker-container>.seeker-icon-wrapper.multi-mode>.flex-wrapper{width:33px;height:33px}.core-form-control-seeker-container .source-container{display:block;background-color:#fff;padding:var(--size-layout-block-cell-spacing);max-width:1200px;border-radius:10px}.core-form-control-seeker-container .source-container i.close-icon{font-size:20px;cursor:pointer;position:absolute;right:15px;top:15px}.core-form-control-seeker-container .source-container.d-none{display:none}.core-form-control-seeker-container .source-container>caption{display:block;width:100%}.core-form-control-seeker-container .source-container:has(~.footer){border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.core-form-control-seeker-container .footer{background-color:var(--color-bg-main);border-bottom-left-radius:10px;border-bottom-right-radius:10px;padding:var(--size-layout-block-cell-spacing);position:absolute;bottom:0;left:0;width:100%}.core-form-control-seeker-container .footer button:first-child{margin-right:var(--size-layout-block-cell-spacing)}.core-form-control-seeker-container .core-tabbe-wrapper{margin-top:5px}.core-form-control-seeker-container .btn-for-form{border:none;border-radius:0;background-color:transparent;color:#000;min-width:120px}.core-form-control-seeker-container button.last-child{background-color:#000;color:#fff}.core-form-control-seeker-container .form-control-disabled input{background-color:#e9ecef}\n"] }]
22528
22547
  }], ctorParameters: () => [{ type: AlertService }, { type: i0.Injector }, { type: MultiLanguageService }, { type: CoreTableComponent }, { type: CoreJobSeekerComponent }, { type: CoreEmployeeSeekerComponent }, { type: CoreContractSeekerComponent }, { type: CoreWorkingSeekerComponent }, { type: CoreWageSeekerComponent }, { type: CorePositionSeekerComponent }, { type: CorePositionConcurrentSeekerComponent }, { type: CoreFormSeekerComponent }, { type: RandomAvatarService }, { type: SeekerService }, { type: LayoutService }, { type: AppService }], propDecorators: { avatar: [{
22529
22548
  type: ViewChild,
22530
22549
  args: ['avatar']
@@ -24901,7 +24920,7 @@ class CoreControlNoFormArrayComponent extends BaseComponent {
24901
24920
  }
24902
24921
  }
24903
24922
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreControlNoFormArrayComponent, deps: [{ token: MultiLanguageService }, { token: AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
24904
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: CoreControlNoFormArrayComponent, isStandalone: true, selector: "core-control-no-form-array", inputs: { control: "control", form: "form", checkError$: "checkError$", rangeLimit: "rangeLimit" }, host: { listeners: { "window:click": "onWindowClick()" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"core-control-container\">\r\n\r\n <div [formGroup]=\"form\" [class.hidden]=\"!!control.hidden\">\r\n\r\n @if (!control.headless!) {\r\n <label [class]=\"'control-label' + (required ? ' required' : '')\" [attr.for]=\"control.field\"\r\n [class.d-none]=\"!!control.hidden\"\r\n [class.avatar-label]=\"control.uploadFileType==='IMAGE_AVATAR'\" [appTooltip]=\"control.tooltip! | translate: lang\" \r\n [htmlTooltip]=\"control.htmlTooltip!\"\r\n [backgroundColor]=\"'white'\"\r\n [ngStyle]=\"{\r\n display: 'inline-block'\r\n }\">\r\n {{(control.controlType!=='CHECKBOX' && control.controlType!=='BUTTON') ? (control.label | translate: lang) : ''}}\r\n </label>\r\n\r\n @if (!!control.hint! && control.controlType !== 'CHECKBOX') {\r\n <i class=\"feather-help-circle\" [appTooltip]=\"control.hint!\" [showAnyway]=\"true\" [ngStyle]=\"{\r\n display: 'inline-block',\r\n marginLeft: '2px'\r\n }\" [class.d-none]=\"!!control.hidden\"></i>\r\n }\r\n }\r\n\r\n <!-- START: FORM-CONTROL SESSION-->\r\n\r\n <ng-container>\r\n @switch (control.controlType) {\r\n @case (\"CALCULATED\") {\r\n <div class=\"calculated-view\" [htmlTooltip]=\"calculatedControlInfo\" [tooltipContext]=\"{control: control}\" [backgroundColor]=\"'#fff'\">\r\n <i class=\"feather-box\"></i><span>{{ control.field! }}</span>\r\n </div>\r\n }\r\n @case (\"TEXTBOX\") {\r\n\r\n <input *ngIf=\"control.type === 'date'\"\r\n [formControlName]=\"control.field\"\r\n type=\"date\"\r\n useValueAsDate\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"control.type === 'time'\"\r\n [formControlName]=\"control.field\"\r\n type=\"time\"\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"control.type === 'number'\"\r\n [formControlName]=\"control.field\"\r\n type=\"number\"\r\n step=\"{{ control.step || 1 }}\"\r\n class=\"form-control\"\r\n style=\"text-align: right;\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"['string', 'text', 'email', 'url', 'password'].includes(control.type || 'text')\"\r\n [formControlName]=\"control.field\"\r\n [type]=\"control.type\"\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [value]=\"form.get(control.field)?.value | tableCell: control.pipe : lang\"\r\n [attr.pattern]=\"getPattern(control) || null\"\r\n [appTooltip]=\"form.get(control.field)?.value\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n\r\n <!-- <input *ngIf=\"control.type==='calculated'\"\r\n [formControlName]=\"control.field\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [readonly]=\"true\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [value]=\"form.get(control.field)?.value | tableCell: control.pipe : lang\"\r\n [attr.pattern]=\"getPattern(control) || null\"\r\n [appTooltip]=\"form.get(control.field)?.value\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n [class.form-control-disabled]=\"true\" /> -->\r\n\r\n }\r\n @case (\"CURRENCY\") {\r\n <core-currency-input [formControlName]=\"control.field\" [placeholder]=\"control.placeholder! || ''\"></core-currency-input>\r\n }\r\n @case (\"TEXTAREA\") {\r\n <textarea [rows]=\"control.textareaRows?.toString() || '3'\" [ngStyle]=\"{ height: 'unset' }\"\r\n [formControlName]=\"control.field\" class=\"form-control\" [readonly]=\"control.readonly\" [placeholder]=\"control.placeholder! || ''\"></textarea>\r\n }\r\n @case (\"CHECKBOX\") {\r\n <core-checkbox [formControlName]=\"control.field\" [text]=\"control.label\"\r\n [inputValue]=\"control.value\" [tooltip]=\"control.hint!\"></core-checkbox>\r\n }\r\n @case (\"IOS_SWITCHER\") {\r\n <div class=\"gap-for-ios-switcher\"></div>\r\n <core-ios-switcher [formControlName]=\"control.field\" />\r\n }\r\n @case (\"MCC\") {\r\n <core-mcc [formControlName]=\"control.field\" [columns]=\"control.columns!\" [shownFrom]=\"control.shownFrom!\" \r\n [apiDefinition]=\"control.apiDefinition!\" [getByIdApi]=\"control.getByIdApi!\" [selectedRow$]=\"control.selectedRow$!\"\r\n [outerParam$]=\"control.outerParam$!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n ></core-mcc>\r\n }\r\n @case (\"DATEPICKER\") {\r\n <core-date-picker [formControlName]=\"control.field\" [showPlaceholder]=\"control.showPlaceholder!\" [rangeLimit]=\"control.rangeLimit!\" [popupAlign]=\"control.popupAlign!\" [placeholder]=\"control.placeholder! || ''\"></core-date-picker>\r\n }\r\n\r\n @case (\"DROPDOWN\") {\r\n @if (!!control.dropdownOptions$) {\r\n <core-dropdown \r\n [formControlName]=\"control.field\" \r\n [options$]=\"control.dropdownOptions$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\" \r\n [shownFrom]=\"control.shownFrom!\" \r\n [placeholder]=\"control.placeholder! || ''\"\r\n\r\n [optionApiDriven]=\"control.optionApiDriven!\"\r\n [optionApi]=\"control.optionApi!\"\r\n [optionHttpVerb]=\"control.optionHttpVerb!\"\r\n [optionHttpPayload]=\"control.optionHttpPayload!\"\r\n [optionValueFrom]=\"control.optionValueFrom!\"\r\n [optionTextFrom]=\"control.optionTextFrom!\"\r\n ></core-dropdown>\r\n } @else {\r\n No dropdownOptions$ detected\r\n }\r\n }\r\n @case (\"LIST\") {\r\n <core-list [formControlName]=\"control.field\" [options]=\"control.listOptions!\" [placeholder]=\"control.placeholder! || ''\"></core-list>\r\n }\r\n @case (\"CHECKLIST\") {\r\n @if (!!control.checklistOptions$) {\r\n <core-checklist [formControlName]=\"control.field\" [options$]=\"control.checklistOptions$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\" [shownFrom]=\"control.shownFrom!\" [placeholder]=\"control.placeholder! || ''\"></core-checklist>\r\n }\r\n }\r\n @case (\"FILEUPLOADER\") {\r\n @if (!!control.uploadFileType) {\r\n <core-file-uploader [formControlName]=\"control.field\" [uploadFileType]=\"control.uploadFileType\"\r\n [fileDataControlName]=\"control.fileDataControlName!\"\r\n [fileNameControlName]=\"control.fileNameControlName!\"\r\n [fileTypeControlName]=\"control.fileTypeControlName!\"\r\n [verticalMode]=\"control.verticalMode!\"></core-file-uploader>\r\n }\r\n }\r\n @case (\"ATTACHMENT\") {\r\n <core-attachment ngDefaultControl [formControlName]=\"control.field\" [assignTo]=\"control.assignTo!\"\r\n [valueToShow]=\"control.valueToShow!\" [placeholder]=\"control.placeholder! || ''\"></core-attachment>\r\n }\r\n @case (\"GRIDBUFFER\") {\r\n @if (!!control.gridBufferFormSections && !!control.gridBufferTableColumns) {\r\n <core-grid-buffer [formControlName]=\"control.field\" [formSections]=\"control.gridBufferFormSections\"\r\n [gridColumns]=\"control.gridBufferTableColumns\"\r\n (onBufferFormCreated)=\"!!control.onBufferFormCreated ? control.onBufferFormCreated($event) : null\"></core-grid-buffer>\r\n }\r\n }\r\n @case (\"ORGTREECHECK\") {\r\n <core-org-tree [formControlName]=\"control.field\"\r\n [accessorMode]=\"coreOrgTreeDefaultAccessorMode\" [height]=\"control.height!\"></core-org-tree>\r\n }\r\n @case (\"RADIOGROUP\") {\r\n <core-radio-group [formControlName]=\"control.field\"\r\n [options$]=\"control.radioGroupOptions$!\"\r\n [vertical]=\"control.verticalMode!\"\r\n ></core-radio-group>\r\n }\r\n @case (\"MONTHSELECTOR\") {\r\n <core-month-selector [formControlName]=\"control.field\" [placeholder]=\"control.placeholder! || ''\"></core-month-selector>\r\n }\r\n @case (\"SHIFTCELL\") {\r\n <core-shift-cell [formControlName]=\"control.field\"></core-shift-cell>\r\n }\r\n @case (\"SHIFTCOLLECTION\") {\r\n <core-shift-collection [relativeMode]=\"true\" [height]=\"control.height || 800\"></core-shift-collection>\r\n }\r\n @case(\"TOPICPICKER\") {\r\n <core-topic-picker [formControlName]=\"control.field\" [popupHeight]=\"control.popupHeight!\" [getByIdApi]=\"control.getByIdApi!\"></core-topic-picker>\r\n }\r\n @case (\"SEEKER\") {\r\n @switch(control.seekerSourceType) {\r\n @case(\"JOB_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [editBufferData$]=\"control.editBufferData$!\"\r\n [indirectBinding]=\"control.indirectBinding!\"\r\n [bindGridIdTo]=\"control.bindGridIdTo!\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"EMPLOYEE_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [editBufferData$]=\"control.editBufferData$!\"\r\n [indirectBinding]=\"control.indirectBinding!\"\r\n [bindGridIdTo]=\"control.bindGridIdTo!\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"CONTRACT_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" [boundFrom]=\"control.boundFrom!\"\r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\" \r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [shownFrom]=\"control.shownFrom!\"\r\n [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"WORKING_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"WAGE_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [formControlName]=\"control.field\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"POSITION_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [seekerVerifyIgnore]=\"control.seekerVerifyIgnore!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"POSITION_CONCURRENT_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [multiModeTableHeight]=\"control.multiModeTableHeight!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"FORM_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [multiModeTableHeight]=\"control.multiModeTableHeight!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"ORGANIZATION_UNIT_SEEK\") {\r\n <core-form-control-seeker\r\n [formControlName]=\"control.field\" [seekerSourceType]=\"control.seekerSourceType!\"\r\n [boundFrom]=\"control.boundFrom!\" [alsoBindTo]=\"control.alsoBindTo!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n ></core-form-control-seeker>\r\n }\r\n }\r\n }\r\n }\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"control.controlType==='BUTTON'\">\r\n <button type=\"button\" class=\"btn btn-secondary text\" (click)=\"oHandleClick($event)\">{{control.label| translate: lang}}</button>\r\n </ng-container>\r\n <!-- END: FORM-CONTROL SESSION-->\r\n\r\n <!-- START: ERROR SESSION-->\r\n <div *ngIf=\"!!errors!.length\">\r\n <div class=\"form-control-error\" *ngFor=\"let error of errors\">\r\n {{ error.errorMessage | translate: lang }}\r\n </div>\r\n </div>\r\n <div *ngIf=\"!!!errors!.length && !!checkError$.value\">\r\n <div>\r\n {{ '&nbsp;' }}\r\n </div>\r\n </div>\r\n <!-- END: ERROR SESSION-->\r\n\r\n </div>\r\n\r\n\r\n</div>\r\n\r\n<ng-template #calculatedControlInfo let-control=\"control\">\r\n <div class=\"calculated-tooltip-container\">\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Name:</span>\r\n <span class=\"value\">{{ control?.field || 'N/A' }}</span>\r\n </div> \r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Evaluation Mode:</span>\r\n <span class=\"value\">{{ control?.evaluationMode || 'N/A' }}</span>\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Return Type:</span>\r\n <span class=\"value\">{{ control?.returnType || 'N/A' }}</span>\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Depends On:</span>\r\n <span class=\"value\" *ngIf=\"control?.dependsOn?.length > 0; else noDepends\">\r\n <code *ngFor=\"let dep of control?.dependsOn; let last = last\">{{ dep }}<span *ngIf=\"!last\">, </span></code>\r\n </span>\r\n <ng-template #noDepends><em class=\"no-depends\">None</em></ng-template>\r\n </div>\r\n <div *ngIf=\"!!control?.isUnsafe\" class=\"warning\">\r\n \u26A0\uFE0F This script is marked as <strong>unsafe</strong> and will not be executed.\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Script:</span>\r\n <pre class=\"code-block\">{{ control?.script || 'No script provided.' }}</pre>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [".core-control-container{font-size:var(--typo-basic-font-size)!important}.core-control-container .control-label{color:#848484}.core-control-container>div.hidden{display:none}.core-control-container label{color:#464646}.core-control-container label.required:after{content:\"*\";color:#ff040b}.core-control-container label.avatar-label{width:var(--size-file-uploader);display:flex;align-items:center;justify-content:center}.core-control-container input[type=number]{padding-right:12px;position:relative}.core-control-container input[type=number]::-webkit-inner-spin-button{position:absolute;right:.3em;margin-left:.5em}.core-control-container input[type=number]{-moz-appearance:textfield}.core-control-container i.feather-help-circle{color:#848484}.core-control-container .gap-for-ios-switcher{height:5px}.core-control-container .calculated-view{-webkit-user-select:none;user-select:none;cursor:pointer;height:35px;width:160px;background-color:#d8f3dc;color:#1b4332;border:1px solid #95d5b2;border-radius:50px;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:flex-start;font-family:Segoe UI,sans-serif;letter-spacing:.5px;padding:8px}.core-control-container .calculated-view i{font-size:18px;width:18px;height:18px;margin-right:8px}.core-control-container .calculated-view span{width:calc(100% - 26px);overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.calculated-tooltip-container{background-color:#fff;border:1px solid #ddd;padding:1rem;border-radius:6px;font-size:14px;color:#333;box-shadow:0 4px 10px #0000000d;max-width:360px}.calculated-tooltip-container .calculated-field-row{margin-bottom:.75rem}.calculated-tooltip-container .label{font-weight:500;color:#555!important;display:inline-block;min-width:140px}.calculated-tooltip-container .value{color:#222!important}.calculated-tooltip-container .warning{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5;padding:.5rem;border-radius:4px;margin-bottom:1rem;font-size:13px}.calculated-tooltip-container .code-block{background:#f8f9fa;border:1px solid #ddd;padding:.75rem;font-family:monospace;font-size:12px;white-space:pre-wrap;color:#111!important;border-radius:4px;overflow-x:auto}.calculated-tooltip-container .no-depends{color:#888;font-style:italic}.calculated-tooltip-container pre{overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: TableCellPipe, name: "tableCell" }, { 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"] }, { kind: "component", type: CoreListComponent, selector: "core-list", inputs: ["title", "height", "options", "placeholder"] }, { kind: "component", type: CoreChecklistComponent, selector: "core-checklist", inputs: ["paramMode", "getByIdObject$", "shownFrom", "options$", "height", "placeholder", "loading", "readonly", "disabled"] }, { kind: "component", type: CoreFormControlSeekerComponent, selector: "core-form-control-seeker", inputs: ["title", "showPageHeader", "preDefinedOuterParam$", "preDefinedOuterFilter$", "click$", "getByIdObject$", "getByIdApi", "paramMode", "multiMode", "objectList$", "useTheseColumns", "hideOrgTree", "excludedColumns", "excludeExistingList", "placeholder", "sourceSpaceHeight", "indirectBinding", "bindGridIdTo", "multiModeExtendedColumns", "multiModeExtendedSections", "editBufferData$", "multiModeTableHeight", "multiModeRowHeight", "seekerSourceType", "boundFrom", "shownFrom", "alsoBindTo", "seekerVerifyIgnore", "disabledDoubleClick"], outputs: ["onDoubleClick", "selectedDataChange", "fullValueRowChange"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { kind: "component", type: CoreFileUploaderComponent, selector: "core-file-uploader", inputs: ["uploadFileType", "fileDataControlName", "fileNameControlName", "fileTypeControlName", "avatarSize", "defaultAvatar", "hidePreview", "verticalMode"] }, { kind: "component", type: CoreAttachmentComponent, selector: "core-attachment", inputs: ["assignTo", "readonly", "valueToShow", "placeholder", "upFlag$", "downFlag$"] }, { kind: "component", type: CoreGridBufferComponent, selector: "core-grid-buffer", inputs: ["padding", "placeholder", "tableHeight", "liteMode", "formSections", "gridColumns"], outputs: ["onBufferFormCreated"] }, { kind: "component", type: CoreDatePickerComponent, selector: "core-date-picker", inputs: ["enableTimeZoneConverter", "showPlaceholder", "popupWidth", "popupXPadding", "popupAlign", "rangeLimit", "placeholder", "readonly", "disabled"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "searchMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance", "excludedIds$", "stateIsolated$"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CoreRadioGroupComponent, selector: "core-radio-group", inputs: ["options$", "vertical", "columnCount", "gapY", "defaultValue"] }, { kind: "component", type: CoreMccComponent, selector: "core-mcc", inputs: ["height", "columns", "shownFrom", "apiDefinition", "getByIdApi", "outerParam$", "selectedRow$", "outerFilterOperators", "outerInOperators", "placeholder"] }, { kind: "component", type: CoreMonthSelectorComponent, selector: "core-month-selector", inputs: ["align", "placeholder"], outputs: ["onYearClick"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["color", "backgroundColor", "appTooltip", "showAnyway", "position"] }, { kind: "component", type: CoreCurrencyInputComponent, selector: "core-currency-input", inputs: ["currencySign", "placeholder"], outputs: ["onLeftFocus"] }, { kind: "component", type: CoreShiftCellComponent, selector: "core-shift-cell", inputs: ["$readOnly", "$hideStarterPlusSign", "$hideStickersWhileDragover", "$backgroundColor"] }, { kind: "component", type: CoreShiftCollectionComponent, selector: "core-shift-collection", inputs: ["height", "relativeMode"] }, { kind: "component", type: CoreTopicPickerComponent, selector: "core-topic-picker", inputs: ["popupHeight", "getByIdApi"] }, { kind: "component", type: CoreIosSwitcherComponent, selector: "core-ios-switcher", inputs: ["bgColor", "showOnOffText", "width", "height", "readonly"] }, { kind: "directive", type: HtmlTooltipDirective, selector: "[htmlTooltip]", inputs: ["htmlTooltip", "tooltipContext", "maxWidthUnset", "backgroundColor", "hold$"] }] }); }
24923
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: CoreControlNoFormArrayComponent, isStandalone: true, selector: "core-control-no-form-array", inputs: { control: "control", form: "form", checkError$: "checkError$", rangeLimit: "rangeLimit" }, host: { listeners: { "window:click": "onWindowClick()" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"core-control-container\">\r\n\r\n <div [formGroup]=\"form\" [class.hidden]=\"!!control.hidden\">\r\n\r\n @if (!control.headless!) {\r\n <label [class]=\"'control-label' + (required ? ' required' : '')\" [attr.for]=\"control.field\"\r\n [class.d-none]=\"!!control.hidden\"\r\n [class.avatar-label]=\"control.uploadFileType==='IMAGE_AVATAR'\" [appTooltip]=\"control.tooltip! | translate: lang\" \r\n [htmlTooltip]=\"control.htmlTooltip!\"\r\n [backgroundColor]=\"'white'\"\r\n [ngStyle]=\"{\r\n display: 'inline-block'\r\n }\">\r\n {{(control.controlType!=='CHECKBOX' && control.controlType!=='BUTTON') ? (control.label | translate: lang) : ''}}\r\n </label>\r\n\r\n @if (!!control.hint! && control.controlType !== 'CHECKBOX') {\r\n <i class=\"feather-help-circle\" [appTooltip]=\"control.hint!\" [showAnyway]=\"true\" [ngStyle]=\"{\r\n display: 'inline-block',\r\n marginLeft: '2px'\r\n }\" [class.d-none]=\"!!control.hidden\"></i>\r\n }\r\n }\r\n\r\n <!-- START: FORM-CONTROL SESSION-->\r\n\r\n <ng-container>\r\n @switch (control.controlType) {\r\n @case (\"CALCULATED\") {\r\n <div class=\"calculated-view\" [htmlTooltip]=\"calculatedControlInfo\" [tooltipContext]=\"{control: control}\" [backgroundColor]=\"'#fff'\">\r\n <i class=\"feather-box\"></i><span>{{ control.field! }}</span>\r\n </div>\r\n }\r\n @case (\"TEXTBOX\") {\r\n\r\n <input *ngIf=\"control.type === 'date'\"\r\n [formControlName]=\"control.field\"\r\n type=\"date\"\r\n useValueAsDate\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"control.type === 'time'\"\r\n [formControlName]=\"control.field\"\r\n type=\"time\"\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"control.type === 'number'\"\r\n [formControlName]=\"control.field\"\r\n type=\"number\"\r\n step=\"{{ control.step || 1 }}\"\r\n class=\"form-control\"\r\n style=\"text-align: right;\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"['string', 'text', 'email', 'url', 'password'].includes(control.type || 'text')\"\r\n [formControlName]=\"control.field\"\r\n [type]=\"control.type\"\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [value]=\"form.get(control.field)?.value | tableCell: control.pipe : lang\"\r\n [attr.pattern]=\"getPattern(control) || null\"\r\n [appTooltip]=\"form.get(control.field)?.value\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n\r\n <!-- <input *ngIf=\"control.type==='calculated'\"\r\n [formControlName]=\"control.field\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [readonly]=\"true\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [value]=\"form.get(control.field)?.value | tableCell: control.pipe : lang\"\r\n [attr.pattern]=\"getPattern(control) || null\"\r\n [appTooltip]=\"form.get(control.field)?.value\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n [class.form-control-disabled]=\"true\" /> -->\r\n\r\n }\r\n @case (\"CURRENCY\") {\r\n <core-currency-input [formControlName]=\"control.field\" [placeholder]=\"control.placeholder! || ''\"></core-currency-input>\r\n }\r\n @case (\"TEXTAREA\") {\r\n <textarea [rows]=\"control.textareaRows?.toString() || '3'\" [ngStyle]=\"{ height: 'unset' }\"\r\n [formControlName]=\"control.field\" class=\"form-control\" [readonly]=\"control.readonly\" [placeholder]=\"control.placeholder! || ''\"></textarea>\r\n }\r\n @case (\"CHECKBOX\") {\r\n <core-checkbox [formControlName]=\"control.field\" [text]=\"control.label\"\r\n [inputValue]=\"control.value\" [tooltip]=\"control.hint!\"></core-checkbox>\r\n }\r\n @case (\"IOS_SWITCHER\") {\r\n <div class=\"gap-for-ios-switcher\"></div>\r\n <core-ios-switcher [formControlName]=\"control.field\" />\r\n }\r\n @case (\"MCC\") {\r\n <core-mcc [formControlName]=\"control.field\" [columns]=\"control.columns!\" [shownFrom]=\"control.shownFrom!\" \r\n [apiDefinition]=\"control.apiDefinition!\" [getByIdApi]=\"control.getByIdApi!\" [selectedRow$]=\"control.selectedRow$!\"\r\n [outerParam$]=\"control.outerParam$!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n ></core-mcc>\r\n }\r\n @case (\"DATEPICKER\") {\r\n <core-date-picker [formControlName]=\"control.field\" [showPlaceholder]=\"control.showPlaceholder!\" [rangeLimit]=\"control.rangeLimit!\" [popupAlign]=\"control.popupAlign!\" [placeholder]=\"control.placeholder! || ''\"></core-date-picker>\r\n }\r\n\r\n @case (\"DROPDOWN\") {\r\n @if (!!control.dropdownOptions$) {\r\n <core-dropdown \r\n [formControlName]=\"control.field\" \r\n [options$]=\"control.dropdownOptions$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\" \r\n [shownFrom]=\"control.shownFrom!\" \r\n [placeholder]=\"control.placeholder! || ''\"\r\n\r\n [optionApiDriven]=\"control.optionApiDriven!\"\r\n [optionApi]=\"control.optionApi!\"\r\n [optionHttpVerb]=\"control.optionHttpVerb!\"\r\n [optionHttpPayload]=\"control.optionHttpPayload!\"\r\n [optionValueFrom]=\"control.optionValueFrom!\"\r\n [optionTextFrom]=\"control.optionTextFrom!\"\r\n ></core-dropdown>\r\n } @else {\r\n No dropdownOptions$ detected\r\n }\r\n }\r\n @case (\"LIST\") {\r\n <core-list [formControlName]=\"control.field\" [options]=\"control.listOptions!\" [placeholder]=\"control.placeholder! || ''\"></core-list>\r\n }\r\n @case (\"CHECKLIST\") {\r\n @if (!!control.checklistOptions$) {\r\n <core-checklist [formControlName]=\"control.field\" [options$]=\"control.checklistOptions$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\" [shownFrom]=\"control.shownFrom!\" [placeholder]=\"control.placeholder! || ''\"></core-checklist>\r\n }\r\n }\r\n @case (\"FILEUPLOADER\") {\r\n @if (!!control.uploadFileType) {\r\n <core-file-uploader [formControlName]=\"control.field\" [uploadFileType]=\"control.uploadFileType\"\r\n [fileDataControlName]=\"control.fileDataControlName!\"\r\n [fileNameControlName]=\"control.fileNameControlName!\"\r\n [fileTypeControlName]=\"control.fileTypeControlName!\"\r\n [verticalMode]=\"control.verticalMode!\"></core-file-uploader>\r\n }\r\n }\r\n @case (\"ATTACHMENT\") {\r\n <core-attachment ngDefaultControl [formControlName]=\"control.field\" [assignTo]=\"control.assignTo!\"\r\n [valueToShow]=\"control.valueToShow!\" [placeholder]=\"control.placeholder! || ''\"></core-attachment>\r\n }\r\n @case (\"GRIDBUFFER\") {\r\n @if (!!control.gridBufferFormSections && !!control.gridBufferTableColumns) {\r\n <core-grid-buffer [formControlName]=\"control.field\" [formSections]=\"control.gridBufferFormSections\"\r\n [gridColumns]=\"control.gridBufferTableColumns\"\r\n (onBufferFormCreated)=\"!!control.onBufferFormCreated ? control.onBufferFormCreated($event) : null\"></core-grid-buffer>\r\n }\r\n }\r\n @case (\"ORGTREECHECK\") {\r\n <core-org-tree [formControlName]=\"control.field\"\r\n [accessorMode]=\"coreOrgTreeDefaultAccessorMode\" [height]=\"control.height!\"></core-org-tree>\r\n }\r\n @case (\"RADIOGROUP\") {\r\n <core-radio-group [formControlName]=\"control.field\"\r\n [options$]=\"control.radioGroupOptions$!\"\r\n [vertical]=\"control.verticalMode!\"\r\n ></core-radio-group>\r\n }\r\n @case (\"MONTHSELECTOR\") {\r\n <core-month-selector [formControlName]=\"control.field\" [placeholder]=\"control.placeholder! || ''\"></core-month-selector>\r\n }\r\n @case (\"SHIFTCELL\") {\r\n <core-shift-cell [formControlName]=\"control.field\"></core-shift-cell>\r\n }\r\n @case (\"SHIFTCOLLECTION\") {\r\n <core-shift-collection [relativeMode]=\"true\" [height]=\"control.height || 800\"></core-shift-collection>\r\n }\r\n @case(\"TOPICPICKER\") {\r\n <core-topic-picker [formControlName]=\"control.field\" [popupHeight]=\"control.popupHeight!\" [getByIdApi]=\"control.getByIdApi!\"></core-topic-picker>\r\n }\r\n @case (\"SEEKER\") {\r\n @switch(control.seekerSourceType) {\r\n @case(\"JOB_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [editBufferData$]=\"control.editBufferData$!\"\r\n [indirectBinding]=\"control.indirectBinding!\"\r\n [bindGridIdTo]=\"control.bindGridIdTo!\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"EMPLOYEE_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [editBufferData$]=\"control.editBufferData$!\"\r\n [indirectBinding]=\"control.indirectBinding!\"\r\n [bindGridIdTo]=\"control.bindGridIdTo!\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"CONTRACT_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" [boundFrom]=\"control.boundFrom!\"\r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\" \r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [shownFrom]=\"control.shownFrom!\"\r\n [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"WORKING_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"WAGE_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [formControlName]=\"control.field\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"POSITION_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [seekerVerifyIgnore]=\"control.seekerVerifyIgnore!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"POSITION_CONCURRENT_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [multiModeTableHeight]=\"control.multiModeTableHeight!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"FORM_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [multiModeTableHeight]=\"control.multiModeTableHeight!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"ORGANIZATION_UNIT_SEEK\") {\r\n <core-form-control-seeker\r\n [formControlName]=\"control.field\" [seekerSourceType]=\"control.seekerSourceType!\"\r\n [boundFrom]=\"control.boundFrom!\" [alsoBindTo]=\"control.alsoBindTo!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n ></core-form-control-seeker>\r\n }\r\n }\r\n }\r\n }\r\n </ng-container>\r\n\r\n @if (control.controlType==='BUTTON') {\r\n <ng-container>\r\n <button type=\"button\" class=\"btn btn-secondary text\" (click)=\"oHandleClick($event)\">{{control.label| translate: lang}}</button>\r\n </ng-container>\r\n }\r\n <!-- END: FORM-CONTROL SESSION-->\r\n\r\n <!-- START: ERROR SESSION-->\r\n @if (!!errors!.length) {\r\n <div>\r\n @for (error of errors; track $index) {\r\n <div class=\"form-control-error\">\r\n {{ error.errorMessage | translate: lang }}\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n @if (!errors!.length && !!checkError$.value) {\r\n <div>\r\n <div>\r\n {{ '&nbsp;' }}\r\n </div>\r\n </div>\r\n }\r\n <!-- END: ERROR SESSION-->\r\n\r\n </div>\r\n\r\n\r\n</div>\r\n\r\n<ng-template #calculatedControlInfo let-control=\"control\">\r\n <div class=\"calculated-tooltip-container\">\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Name:</span>\r\n <span class=\"value\">{{ control?.field || 'N/A' }}</span>\r\n </div> \r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Evaluation Mode:</span>\r\n <span class=\"value\">{{ control?.evaluationMode || 'N/A' }}</span>\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Return Type:</span>\r\n <span class=\"value\">{{ control?.returnType || 'N/A' }}</span>\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Depends On:</span>\r\n <span class=\"value\" *ngIf=\"control?.dependsOn?.length > 0; else noDepends\">\r\n <code *ngFor=\"let dep of control?.dependsOn; let last = last\">{{ dep }}<span *ngIf=\"!last\">, </span></code>\r\n </span>\r\n <ng-template #noDepends><em class=\"no-depends\">None</em></ng-template>\r\n </div>\r\n <div *ngIf=\"!!control?.isUnsafe\" class=\"warning\">\r\n \u26A0\uFE0F This script is marked as <strong>unsafe</strong> and will not be executed.\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Script:</span>\r\n <pre class=\"code-block\">{{ control?.script || 'No script provided.' }}</pre>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [".core-control-container{font-size:var(--typo-basic-font-size)!important}.core-control-container .control-label{color:#848484}.core-control-container>div.hidden{display:none}.core-control-container label{color:#464646}.core-control-container label.required:after{content:\"*\";color:#ff040b}.core-control-container label.avatar-label{width:var(--size-file-uploader);display:flex;align-items:center;justify-content:center}.core-control-container input[type=number]{padding-right:12px;position:relative}.core-control-container input[type=number]::-webkit-inner-spin-button{position:absolute;right:.3em;margin-left:.5em}.core-control-container input[type=number]{-moz-appearance:textfield}.core-control-container i.feather-help-circle{color:#848484}.core-control-container .gap-for-ios-switcher{height:5px}.core-control-container .calculated-view{-webkit-user-select:none;user-select:none;cursor:pointer;height:35px;width:160px;background-color:#d8f3dc;color:#1b4332;border:1px solid #95d5b2;border-radius:50px;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:flex-start;font-family:Segoe UI,sans-serif;letter-spacing:.5px;padding:8px}.core-control-container .calculated-view i{font-size:18px;width:18px;height:18px;margin-right:8px}.core-control-container .calculated-view span{width:calc(100% - 26px);overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.calculated-tooltip-container{background-color:#fff;border:1px solid #ddd;padding:1rem;border-radius:6px;font-size:14px;color:#333;box-shadow:0 4px 10px #0000000d;max-width:360px}.calculated-tooltip-container .calculated-field-row{margin-bottom:.75rem}.calculated-tooltip-container .label{font-weight:500;color:#555!important;display:inline-block;min-width:140px}.calculated-tooltip-container .value{color:#222!important}.calculated-tooltip-container .warning{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5;padding:.5rem;border-radius:4px;margin-bottom:1rem;font-size:13px}.calculated-tooltip-container .code-block{background:#f8f9fa;border:1px solid #ddd;padding:.75rem;font-family:monospace;font-size:12px;white-space:pre-wrap;color:#111!important;border-radius:4px;overflow-x:auto}.calculated-tooltip-container .no-depends{color:#888;font-style:italic}.calculated-tooltip-container pre{overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: TableCellPipe, name: "tableCell" }, { 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"] }, { kind: "component", type: CoreListComponent, selector: "core-list", inputs: ["title", "height", "options", "placeholder"] }, { kind: "component", type: CoreChecklistComponent, selector: "core-checklist", inputs: ["paramMode", "getByIdObject$", "shownFrom", "options$", "height", "placeholder", "loading", "readonly", "disabled"] }, { kind: "component", type: CoreFormControlSeekerComponent, selector: "core-form-control-seeker", inputs: ["title", "showPageHeader", "preDefinedOuterParam$", "preDefinedOuterFilter$", "click$", "getByIdObject$", "getByIdApi", "paramMode", "multiMode", "objectList$", "useTheseColumns", "hideOrgTree", "excludedColumns", "excludeExistingList", "placeholder", "sourceSpaceHeight", "indirectBinding", "bindGridIdTo", "multiModeExtendedColumns", "multiModeExtendedSections", "editBufferData$", "multiModeTableHeight", "multiModeRowHeight", "seekerSourceType", "boundFrom", "shownFrom", "alsoBindTo", "seekerVerifyIgnore", "disabledDoubleClick"], outputs: ["onDoubleClick", "selectedDataChange", "fullValueRowChange"] }, { kind: "component", type: CoreCheckboxComponent, selector: "core-checkbox", inputs: ["text", "tooltipPosition", "tooltip", "inputValue", "disabled"], outputs: ["onClick"] }, { kind: "component", type: CoreFileUploaderComponent, selector: "core-file-uploader", inputs: ["uploadFileType", "fileDataControlName", "fileNameControlName", "fileTypeControlName", "avatarSize", "defaultAvatar", "hidePreview", "verticalMode"] }, { kind: "component", type: CoreAttachmentComponent, selector: "core-attachment", inputs: ["assignTo", "readonly", "valueToShow", "placeholder", "upFlag$", "downFlag$"] }, { kind: "component", type: CoreGridBufferComponent, selector: "core-grid-buffer", inputs: ["padding", "placeholder", "tableHeight", "liteMode", "formSections", "gridColumns"], outputs: ["onBufferFormCreated"] }, { kind: "component", type: CoreDatePickerComponent, selector: "core-date-picker", inputs: ["enableTimeZoneConverter", "showPlaceholder", "popupWidth", "popupXPadding", "popupAlign", "rangeLimit", "placeholder", "readonly", "disabled"] }, { kind: "component", type: CoreOrgTreeComponent, selector: "core-org-tree", inputs: ["lineColor", "fullWidthMode", "accessorMode", "searchMode", "fullRendering", "height", "disabledLoopExpand", "showCheckInheritance", "excludedIds$", "stateIsolated$"], outputs: ["itemDoubleClick", "itemClick"] }, { kind: "component", type: CoreRadioGroupComponent, selector: "core-radio-group", inputs: ["options$", "vertical", "columnCount", "gapY", "defaultValue"] }, { kind: "component", type: CoreMccComponent, selector: "core-mcc", inputs: ["height", "columns", "shownFrom", "apiDefinition", "getByIdApi", "outerParam$", "selectedRow$", "outerFilterOperators", "outerInOperators", "placeholder"] }, { kind: "component", type: CoreMonthSelectorComponent, selector: "core-month-selector", inputs: ["align", "placeholder"], outputs: ["onYearClick"] }, { kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["color", "backgroundColor", "appTooltip", "showAnyway", "position"] }, { kind: "component", type: CoreCurrencyInputComponent, selector: "core-currency-input", inputs: ["currencySign", "placeholder"], outputs: ["onLeftFocus"] }, { kind: "component", type: CoreShiftCellComponent, selector: "core-shift-cell", inputs: ["$readOnly", "$hideStarterPlusSign", "$hideStickersWhileDragover", "$backgroundColor"] }, { kind: "component", type: CoreShiftCollectionComponent, selector: "core-shift-collection", inputs: ["height", "relativeMode"] }, { kind: "component", type: CoreTopicPickerComponent, selector: "core-topic-picker", inputs: ["popupHeight", "getByIdApi"] }, { kind: "component", type: CoreIosSwitcherComponent, selector: "core-ios-switcher", inputs: ["bgColor", "showOnOffText", "width", "height", "readonly"] }, { kind: "directive", type: HtmlTooltipDirective, selector: "[htmlTooltip]", inputs: ["htmlTooltip", "tooltipContext", "maxWidthUnset", "backgroundColor", "hold$"] }] }); }
24905
24924
  }
24906
24925
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreControlNoFormArrayComponent, decorators: [{
24907
24926
  type: Component,
@@ -24932,7 +24951,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
24932
24951
  CoreTopicPickerComponent,
24933
24952
  CoreIosSwitcherComponent,
24934
24953
  HtmlTooltipDirective
24935
- ], template: "<div class=\"core-control-container\">\r\n\r\n <div [formGroup]=\"form\" [class.hidden]=\"!!control.hidden\">\r\n\r\n @if (!control.headless!) {\r\n <label [class]=\"'control-label' + (required ? ' required' : '')\" [attr.for]=\"control.field\"\r\n [class.d-none]=\"!!control.hidden\"\r\n [class.avatar-label]=\"control.uploadFileType==='IMAGE_AVATAR'\" [appTooltip]=\"control.tooltip! | translate: lang\" \r\n [htmlTooltip]=\"control.htmlTooltip!\"\r\n [backgroundColor]=\"'white'\"\r\n [ngStyle]=\"{\r\n display: 'inline-block'\r\n }\">\r\n {{(control.controlType!=='CHECKBOX' && control.controlType!=='BUTTON') ? (control.label | translate: lang) : ''}}\r\n </label>\r\n\r\n @if (!!control.hint! && control.controlType !== 'CHECKBOX') {\r\n <i class=\"feather-help-circle\" [appTooltip]=\"control.hint!\" [showAnyway]=\"true\" [ngStyle]=\"{\r\n display: 'inline-block',\r\n marginLeft: '2px'\r\n }\" [class.d-none]=\"!!control.hidden\"></i>\r\n }\r\n }\r\n\r\n <!-- START: FORM-CONTROL SESSION-->\r\n\r\n <ng-container>\r\n @switch (control.controlType) {\r\n @case (\"CALCULATED\") {\r\n <div class=\"calculated-view\" [htmlTooltip]=\"calculatedControlInfo\" [tooltipContext]=\"{control: control}\" [backgroundColor]=\"'#fff'\">\r\n <i class=\"feather-box\"></i><span>{{ control.field! }}</span>\r\n </div>\r\n }\r\n @case (\"TEXTBOX\") {\r\n\r\n <input *ngIf=\"control.type === 'date'\"\r\n [formControlName]=\"control.field\"\r\n type=\"date\"\r\n useValueAsDate\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"control.type === 'time'\"\r\n [formControlName]=\"control.field\"\r\n type=\"time\"\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"control.type === 'number'\"\r\n [formControlName]=\"control.field\"\r\n type=\"number\"\r\n step=\"{{ control.step || 1 }}\"\r\n class=\"form-control\"\r\n style=\"text-align: right;\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"['string', 'text', 'email', 'url', 'password'].includes(control.type || 'text')\"\r\n [formControlName]=\"control.field\"\r\n [type]=\"control.type\"\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [value]=\"form.get(control.field)?.value | tableCell: control.pipe : lang\"\r\n [attr.pattern]=\"getPattern(control) || null\"\r\n [appTooltip]=\"form.get(control.field)?.value\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n\r\n <!-- <input *ngIf=\"control.type==='calculated'\"\r\n [formControlName]=\"control.field\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [readonly]=\"true\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [value]=\"form.get(control.field)?.value | tableCell: control.pipe : lang\"\r\n [attr.pattern]=\"getPattern(control) || null\"\r\n [appTooltip]=\"form.get(control.field)?.value\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n [class.form-control-disabled]=\"true\" /> -->\r\n\r\n }\r\n @case (\"CURRENCY\") {\r\n <core-currency-input [formControlName]=\"control.field\" [placeholder]=\"control.placeholder! || ''\"></core-currency-input>\r\n }\r\n @case (\"TEXTAREA\") {\r\n <textarea [rows]=\"control.textareaRows?.toString() || '3'\" [ngStyle]=\"{ height: 'unset' }\"\r\n [formControlName]=\"control.field\" class=\"form-control\" [readonly]=\"control.readonly\" [placeholder]=\"control.placeholder! || ''\"></textarea>\r\n }\r\n @case (\"CHECKBOX\") {\r\n <core-checkbox [formControlName]=\"control.field\" [text]=\"control.label\"\r\n [inputValue]=\"control.value\" [tooltip]=\"control.hint!\"></core-checkbox>\r\n }\r\n @case (\"IOS_SWITCHER\") {\r\n <div class=\"gap-for-ios-switcher\"></div>\r\n <core-ios-switcher [formControlName]=\"control.field\" />\r\n }\r\n @case (\"MCC\") {\r\n <core-mcc [formControlName]=\"control.field\" [columns]=\"control.columns!\" [shownFrom]=\"control.shownFrom!\" \r\n [apiDefinition]=\"control.apiDefinition!\" [getByIdApi]=\"control.getByIdApi!\" [selectedRow$]=\"control.selectedRow$!\"\r\n [outerParam$]=\"control.outerParam$!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n ></core-mcc>\r\n }\r\n @case (\"DATEPICKER\") {\r\n <core-date-picker [formControlName]=\"control.field\" [showPlaceholder]=\"control.showPlaceholder!\" [rangeLimit]=\"control.rangeLimit!\" [popupAlign]=\"control.popupAlign!\" [placeholder]=\"control.placeholder! || ''\"></core-date-picker>\r\n }\r\n\r\n @case (\"DROPDOWN\") {\r\n @if (!!control.dropdownOptions$) {\r\n <core-dropdown \r\n [formControlName]=\"control.field\" \r\n [options$]=\"control.dropdownOptions$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\" \r\n [shownFrom]=\"control.shownFrom!\" \r\n [placeholder]=\"control.placeholder! || ''\"\r\n\r\n [optionApiDriven]=\"control.optionApiDriven!\"\r\n [optionApi]=\"control.optionApi!\"\r\n [optionHttpVerb]=\"control.optionHttpVerb!\"\r\n [optionHttpPayload]=\"control.optionHttpPayload!\"\r\n [optionValueFrom]=\"control.optionValueFrom!\"\r\n [optionTextFrom]=\"control.optionTextFrom!\"\r\n ></core-dropdown>\r\n } @else {\r\n No dropdownOptions$ detected\r\n }\r\n }\r\n @case (\"LIST\") {\r\n <core-list [formControlName]=\"control.field\" [options]=\"control.listOptions!\" [placeholder]=\"control.placeholder! || ''\"></core-list>\r\n }\r\n @case (\"CHECKLIST\") {\r\n @if (!!control.checklistOptions$) {\r\n <core-checklist [formControlName]=\"control.field\" [options$]=\"control.checklistOptions$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\" [shownFrom]=\"control.shownFrom!\" [placeholder]=\"control.placeholder! || ''\"></core-checklist>\r\n }\r\n }\r\n @case (\"FILEUPLOADER\") {\r\n @if (!!control.uploadFileType) {\r\n <core-file-uploader [formControlName]=\"control.field\" [uploadFileType]=\"control.uploadFileType\"\r\n [fileDataControlName]=\"control.fileDataControlName!\"\r\n [fileNameControlName]=\"control.fileNameControlName!\"\r\n [fileTypeControlName]=\"control.fileTypeControlName!\"\r\n [verticalMode]=\"control.verticalMode!\"></core-file-uploader>\r\n }\r\n }\r\n @case (\"ATTACHMENT\") {\r\n <core-attachment ngDefaultControl [formControlName]=\"control.field\" [assignTo]=\"control.assignTo!\"\r\n [valueToShow]=\"control.valueToShow!\" [placeholder]=\"control.placeholder! || ''\"></core-attachment>\r\n }\r\n @case (\"GRIDBUFFER\") {\r\n @if (!!control.gridBufferFormSections && !!control.gridBufferTableColumns) {\r\n <core-grid-buffer [formControlName]=\"control.field\" [formSections]=\"control.gridBufferFormSections\"\r\n [gridColumns]=\"control.gridBufferTableColumns\"\r\n (onBufferFormCreated)=\"!!control.onBufferFormCreated ? control.onBufferFormCreated($event) : null\"></core-grid-buffer>\r\n }\r\n }\r\n @case (\"ORGTREECHECK\") {\r\n <core-org-tree [formControlName]=\"control.field\"\r\n [accessorMode]=\"coreOrgTreeDefaultAccessorMode\" [height]=\"control.height!\"></core-org-tree>\r\n }\r\n @case (\"RADIOGROUP\") {\r\n <core-radio-group [formControlName]=\"control.field\"\r\n [options$]=\"control.radioGroupOptions$!\"\r\n [vertical]=\"control.verticalMode!\"\r\n ></core-radio-group>\r\n }\r\n @case (\"MONTHSELECTOR\") {\r\n <core-month-selector [formControlName]=\"control.field\" [placeholder]=\"control.placeholder! || ''\"></core-month-selector>\r\n }\r\n @case (\"SHIFTCELL\") {\r\n <core-shift-cell [formControlName]=\"control.field\"></core-shift-cell>\r\n }\r\n @case (\"SHIFTCOLLECTION\") {\r\n <core-shift-collection [relativeMode]=\"true\" [height]=\"control.height || 800\"></core-shift-collection>\r\n }\r\n @case(\"TOPICPICKER\") {\r\n <core-topic-picker [formControlName]=\"control.field\" [popupHeight]=\"control.popupHeight!\" [getByIdApi]=\"control.getByIdApi!\"></core-topic-picker>\r\n }\r\n @case (\"SEEKER\") {\r\n @switch(control.seekerSourceType) {\r\n @case(\"JOB_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [editBufferData$]=\"control.editBufferData$!\"\r\n [indirectBinding]=\"control.indirectBinding!\"\r\n [bindGridIdTo]=\"control.bindGridIdTo!\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"EMPLOYEE_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [editBufferData$]=\"control.editBufferData$!\"\r\n [indirectBinding]=\"control.indirectBinding!\"\r\n [bindGridIdTo]=\"control.bindGridIdTo!\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"CONTRACT_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" [boundFrom]=\"control.boundFrom!\"\r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\" \r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [shownFrom]=\"control.shownFrom!\"\r\n [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"WORKING_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"WAGE_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [formControlName]=\"control.field\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"POSITION_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [seekerVerifyIgnore]=\"control.seekerVerifyIgnore!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"POSITION_CONCURRENT_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [multiModeTableHeight]=\"control.multiModeTableHeight!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"FORM_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [multiModeTableHeight]=\"control.multiModeTableHeight!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"ORGANIZATION_UNIT_SEEK\") {\r\n <core-form-control-seeker\r\n [formControlName]=\"control.field\" [seekerSourceType]=\"control.seekerSourceType!\"\r\n [boundFrom]=\"control.boundFrom!\" [alsoBindTo]=\"control.alsoBindTo!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n ></core-form-control-seeker>\r\n }\r\n }\r\n }\r\n }\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"control.controlType==='BUTTON'\">\r\n <button type=\"button\" class=\"btn btn-secondary text\" (click)=\"oHandleClick($event)\">{{control.label| translate: lang}}</button>\r\n </ng-container>\r\n <!-- END: FORM-CONTROL SESSION-->\r\n\r\n <!-- START: ERROR SESSION-->\r\n <div *ngIf=\"!!errors!.length\">\r\n <div class=\"form-control-error\" *ngFor=\"let error of errors\">\r\n {{ error.errorMessage | translate: lang }}\r\n </div>\r\n </div>\r\n <div *ngIf=\"!!!errors!.length && !!checkError$.value\">\r\n <div>\r\n {{ '&nbsp;' }}\r\n </div>\r\n </div>\r\n <!-- END: ERROR SESSION-->\r\n\r\n </div>\r\n\r\n\r\n</div>\r\n\r\n<ng-template #calculatedControlInfo let-control=\"control\">\r\n <div class=\"calculated-tooltip-container\">\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Name:</span>\r\n <span class=\"value\">{{ control?.field || 'N/A' }}</span>\r\n </div> \r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Evaluation Mode:</span>\r\n <span class=\"value\">{{ control?.evaluationMode || 'N/A' }}</span>\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Return Type:</span>\r\n <span class=\"value\">{{ control?.returnType || 'N/A' }}</span>\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Depends On:</span>\r\n <span class=\"value\" *ngIf=\"control?.dependsOn?.length > 0; else noDepends\">\r\n <code *ngFor=\"let dep of control?.dependsOn; let last = last\">{{ dep }}<span *ngIf=\"!last\">, </span></code>\r\n </span>\r\n <ng-template #noDepends><em class=\"no-depends\">None</em></ng-template>\r\n </div>\r\n <div *ngIf=\"!!control?.isUnsafe\" class=\"warning\">\r\n \u26A0\uFE0F This script is marked as <strong>unsafe</strong> and will not be executed.\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Script:</span>\r\n <pre class=\"code-block\">{{ control?.script || 'No script provided.' }}</pre>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [".core-control-container{font-size:var(--typo-basic-font-size)!important}.core-control-container .control-label{color:#848484}.core-control-container>div.hidden{display:none}.core-control-container label{color:#464646}.core-control-container label.required:after{content:\"*\";color:#ff040b}.core-control-container label.avatar-label{width:var(--size-file-uploader);display:flex;align-items:center;justify-content:center}.core-control-container input[type=number]{padding-right:12px;position:relative}.core-control-container input[type=number]::-webkit-inner-spin-button{position:absolute;right:.3em;margin-left:.5em}.core-control-container input[type=number]{-moz-appearance:textfield}.core-control-container i.feather-help-circle{color:#848484}.core-control-container .gap-for-ios-switcher{height:5px}.core-control-container .calculated-view{-webkit-user-select:none;user-select:none;cursor:pointer;height:35px;width:160px;background-color:#d8f3dc;color:#1b4332;border:1px solid #95d5b2;border-radius:50px;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:flex-start;font-family:Segoe UI,sans-serif;letter-spacing:.5px;padding:8px}.core-control-container .calculated-view i{font-size:18px;width:18px;height:18px;margin-right:8px}.core-control-container .calculated-view span{width:calc(100% - 26px);overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.calculated-tooltip-container{background-color:#fff;border:1px solid #ddd;padding:1rem;border-radius:6px;font-size:14px;color:#333;box-shadow:0 4px 10px #0000000d;max-width:360px}.calculated-tooltip-container .calculated-field-row{margin-bottom:.75rem}.calculated-tooltip-container .label{font-weight:500;color:#555!important;display:inline-block;min-width:140px}.calculated-tooltip-container .value{color:#222!important}.calculated-tooltip-container .warning{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5;padding:.5rem;border-radius:4px;margin-bottom:1rem;font-size:13px}.calculated-tooltip-container .code-block{background:#f8f9fa;border:1px solid #ddd;padding:.75rem;font-family:monospace;font-size:12px;white-space:pre-wrap;color:#111!important;border-radius:4px;overflow-x:auto}.calculated-tooltip-container .no-depends{color:#888;font-style:italic}.calculated-tooltip-container pre{overflow:hidden}\n"] }]
24954
+ ], template: "<div class=\"core-control-container\">\r\n\r\n <div [formGroup]=\"form\" [class.hidden]=\"!!control.hidden\">\r\n\r\n @if (!control.headless!) {\r\n <label [class]=\"'control-label' + (required ? ' required' : '')\" [attr.for]=\"control.field\"\r\n [class.d-none]=\"!!control.hidden\"\r\n [class.avatar-label]=\"control.uploadFileType==='IMAGE_AVATAR'\" [appTooltip]=\"control.tooltip! | translate: lang\" \r\n [htmlTooltip]=\"control.htmlTooltip!\"\r\n [backgroundColor]=\"'white'\"\r\n [ngStyle]=\"{\r\n display: 'inline-block'\r\n }\">\r\n {{(control.controlType!=='CHECKBOX' && control.controlType!=='BUTTON') ? (control.label | translate: lang) : ''}}\r\n </label>\r\n\r\n @if (!!control.hint! && control.controlType !== 'CHECKBOX') {\r\n <i class=\"feather-help-circle\" [appTooltip]=\"control.hint!\" [showAnyway]=\"true\" [ngStyle]=\"{\r\n display: 'inline-block',\r\n marginLeft: '2px'\r\n }\" [class.d-none]=\"!!control.hidden\"></i>\r\n }\r\n }\r\n\r\n <!-- START: FORM-CONTROL SESSION-->\r\n\r\n <ng-container>\r\n @switch (control.controlType) {\r\n @case (\"CALCULATED\") {\r\n <div class=\"calculated-view\" [htmlTooltip]=\"calculatedControlInfo\" [tooltipContext]=\"{control: control}\" [backgroundColor]=\"'#fff'\">\r\n <i class=\"feather-box\"></i><span>{{ control.field! }}</span>\r\n </div>\r\n }\r\n @case (\"TEXTBOX\") {\r\n\r\n <input *ngIf=\"control.type === 'date'\"\r\n [formControlName]=\"control.field\"\r\n type=\"date\"\r\n useValueAsDate\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"control.type === 'time'\"\r\n [formControlName]=\"control.field\"\r\n type=\"time\"\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"control.type === 'number'\"\r\n [formControlName]=\"control.field\"\r\n type=\"number\"\r\n step=\"{{ control.step || 1 }}\"\r\n class=\"form-control\"\r\n style=\"text-align: right;\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n \r\n <input *ngIf=\"['string', 'text', 'email', 'url', 'password'].includes(control.type || 'text')\"\r\n [formControlName]=\"control.field\"\r\n [type]=\"control.type\"\r\n class=\"form-control\"\r\n [readonly]=\"control.readonly\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [value]=\"form.get(control.field)?.value | tableCell: control.pipe : lang\"\r\n [attr.pattern]=\"getPattern(control) || null\"\r\n [appTooltip]=\"form.get(control.field)?.value\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n [class.form-control-disabled]=\"!!control.disabled\" />\r\n\r\n <!-- <input *ngIf=\"control.type==='calculated'\"\r\n [formControlName]=\"control.field\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [readonly]=\"true\"\r\n [placeholder]=\"control.placeholder || ''\"\r\n [value]=\"form.get(control.field)?.value | tableCell: control.pipe : lang\"\r\n [attr.pattern]=\"getPattern(control) || null\"\r\n [appTooltip]=\"form.get(control.field)?.value\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n [class.form-control-disabled]=\"true\" /> -->\r\n\r\n }\r\n @case (\"CURRENCY\") {\r\n <core-currency-input [formControlName]=\"control.field\" [placeholder]=\"control.placeholder! || ''\"></core-currency-input>\r\n }\r\n @case (\"TEXTAREA\") {\r\n <textarea [rows]=\"control.textareaRows?.toString() || '3'\" [ngStyle]=\"{ height: 'unset' }\"\r\n [formControlName]=\"control.field\" class=\"form-control\" [readonly]=\"control.readonly\" [placeholder]=\"control.placeholder! || ''\"></textarea>\r\n }\r\n @case (\"CHECKBOX\") {\r\n <core-checkbox [formControlName]=\"control.field\" [text]=\"control.label\"\r\n [inputValue]=\"control.value\" [tooltip]=\"control.hint!\"></core-checkbox>\r\n }\r\n @case (\"IOS_SWITCHER\") {\r\n <div class=\"gap-for-ios-switcher\"></div>\r\n <core-ios-switcher [formControlName]=\"control.field\" />\r\n }\r\n @case (\"MCC\") {\r\n <core-mcc [formControlName]=\"control.field\" [columns]=\"control.columns!\" [shownFrom]=\"control.shownFrom!\" \r\n [apiDefinition]=\"control.apiDefinition!\" [getByIdApi]=\"control.getByIdApi!\" [selectedRow$]=\"control.selectedRow$!\"\r\n [outerParam$]=\"control.outerParam$!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n ></core-mcc>\r\n }\r\n @case (\"DATEPICKER\") {\r\n <core-date-picker [formControlName]=\"control.field\" [showPlaceholder]=\"control.showPlaceholder!\" [rangeLimit]=\"control.rangeLimit!\" [popupAlign]=\"control.popupAlign!\" [placeholder]=\"control.placeholder! || ''\"></core-date-picker>\r\n }\r\n\r\n @case (\"DROPDOWN\") {\r\n @if (!!control.dropdownOptions$) {\r\n <core-dropdown \r\n [formControlName]=\"control.field\" \r\n [options$]=\"control.dropdownOptions$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\" \r\n [shownFrom]=\"control.shownFrom!\" \r\n [placeholder]=\"control.placeholder! || ''\"\r\n\r\n [optionApiDriven]=\"control.optionApiDriven!\"\r\n [optionApi]=\"control.optionApi!\"\r\n [optionHttpVerb]=\"control.optionHttpVerb!\"\r\n [optionHttpPayload]=\"control.optionHttpPayload!\"\r\n [optionValueFrom]=\"control.optionValueFrom!\"\r\n [optionTextFrom]=\"control.optionTextFrom!\"\r\n ></core-dropdown>\r\n } @else {\r\n No dropdownOptions$ detected\r\n }\r\n }\r\n @case (\"LIST\") {\r\n <core-list [formControlName]=\"control.field\" [options]=\"control.listOptions!\" [placeholder]=\"control.placeholder! || ''\"></core-list>\r\n }\r\n @case (\"CHECKLIST\") {\r\n @if (!!control.checklistOptions$) {\r\n <core-checklist [formControlName]=\"control.field\" [options$]=\"control.checklistOptions$!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\" [shownFrom]=\"control.shownFrom!\" [placeholder]=\"control.placeholder! || ''\"></core-checklist>\r\n }\r\n }\r\n @case (\"FILEUPLOADER\") {\r\n @if (!!control.uploadFileType) {\r\n <core-file-uploader [formControlName]=\"control.field\" [uploadFileType]=\"control.uploadFileType\"\r\n [fileDataControlName]=\"control.fileDataControlName!\"\r\n [fileNameControlName]=\"control.fileNameControlName!\"\r\n [fileTypeControlName]=\"control.fileTypeControlName!\"\r\n [verticalMode]=\"control.verticalMode!\"></core-file-uploader>\r\n }\r\n }\r\n @case (\"ATTACHMENT\") {\r\n <core-attachment ngDefaultControl [formControlName]=\"control.field\" [assignTo]=\"control.assignTo!\"\r\n [valueToShow]=\"control.valueToShow!\" [placeholder]=\"control.placeholder! || ''\"></core-attachment>\r\n }\r\n @case (\"GRIDBUFFER\") {\r\n @if (!!control.gridBufferFormSections && !!control.gridBufferTableColumns) {\r\n <core-grid-buffer [formControlName]=\"control.field\" [formSections]=\"control.gridBufferFormSections\"\r\n [gridColumns]=\"control.gridBufferTableColumns\"\r\n (onBufferFormCreated)=\"!!control.onBufferFormCreated ? control.onBufferFormCreated($event) : null\"></core-grid-buffer>\r\n }\r\n }\r\n @case (\"ORGTREECHECK\") {\r\n <core-org-tree [formControlName]=\"control.field\"\r\n [accessorMode]=\"coreOrgTreeDefaultAccessorMode\" [height]=\"control.height!\"></core-org-tree>\r\n }\r\n @case (\"RADIOGROUP\") {\r\n <core-radio-group [formControlName]=\"control.field\"\r\n [options$]=\"control.radioGroupOptions$!\"\r\n [vertical]=\"control.verticalMode!\"\r\n ></core-radio-group>\r\n }\r\n @case (\"MONTHSELECTOR\") {\r\n <core-month-selector [formControlName]=\"control.field\" [placeholder]=\"control.placeholder! || ''\"></core-month-selector>\r\n }\r\n @case (\"SHIFTCELL\") {\r\n <core-shift-cell [formControlName]=\"control.field\"></core-shift-cell>\r\n }\r\n @case (\"SHIFTCOLLECTION\") {\r\n <core-shift-collection [relativeMode]=\"true\" [height]=\"control.height || 800\"></core-shift-collection>\r\n }\r\n @case(\"TOPICPICKER\") {\r\n <core-topic-picker [formControlName]=\"control.field\" [popupHeight]=\"control.popupHeight!\" [getByIdApi]=\"control.getByIdApi!\"></core-topic-picker>\r\n }\r\n @case (\"SEEKER\") {\r\n @switch(control.seekerSourceType) {\r\n @case(\"JOB_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [editBufferData$]=\"control.editBufferData$!\"\r\n [indirectBinding]=\"control.indirectBinding!\"\r\n [bindGridIdTo]=\"control.bindGridIdTo!\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"EMPLOYEE_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [editBufferData$]=\"control.editBufferData$!\"\r\n [indirectBinding]=\"control.indirectBinding!\"\r\n [bindGridIdTo]=\"control.bindGridIdTo!\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"CONTRACT_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" [boundFrom]=\"control.boundFrom!\"\r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\" \r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [shownFrom]=\"control.shownFrom!\"\r\n [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"WORKING_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\" [formControlName]=\"control.field\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"WAGE_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [formControlName]=\"control.field\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"POSITION_SEEK\") {\r\n <core-form-control-seeker \r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [objectList$]=\"control.objectList$!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [seekerVerifyIgnore]=\"control.seekerVerifyIgnore!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"POSITION_CONCURRENT_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [multiModeTableHeight]=\"control.multiModeTableHeight!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"FORM_SEEK\") {\r\n <core-form-control-seeker\r\n [excludeExistingList]=\"control.excludeExistingList!\"\r\n [multiMode]=\"control.multiMode!\" [multiModeTableHeight]=\"control.multiModeTableHeight!\" [multiModeRowHeight]=\"control.multiModeRowHeight!\"\r\n [formControlName]=\"control.field\" [alsoBindTo]=\"control.alsoBindTo!\"\r\n [seekerSourceType]=\"control.seekerSourceType!\" \r\n [preDefinedOuterParam$]=\"control.preDefinedOuterParam$!\"\r\n [preDefinedOuterFilter$]=\"control.preDefinedOuterFilter$!\"\r\n [boundFrom]=\"control.boundFrom!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [multiModeExtendedColumns]=\"control.multiModeExtendedColumns!\"\r\n [multiModeExtendedSections]=\"control.multiModeExtendedSections!\"\r\n [multiModeTableHeight]=\"control.multiModeTableHeight!\"\r\n [click$]=\"control.click$\"\r\n [useTheseColumns]=\"control.useTheseColumns!\"\r\n [hideOrgTree]=\"control.hideOrgTree!\"\r\n [sourceSpaceHeight]=\"control.sourceSpaceHeight!\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n (selectedDataChange)=\"selectedDataChange($event)\"\r\n (fullValueRowChange)=\"fullValueRowChange($event)\"\r\n ></core-form-control-seeker>\r\n }\r\n @case(\"ORGANIZATION_UNIT_SEEK\") {\r\n <core-form-control-seeker\r\n [formControlName]=\"control.field\" [seekerSourceType]=\"control.seekerSourceType!\"\r\n [boundFrom]=\"control.boundFrom!\" [alsoBindTo]=\"control.alsoBindTo!\" [shownFrom]=\"control.shownFrom!\"\r\n [getByIdObject$]=\"control.getByIdObject$!\"\r\n [click$]=\"control.click$\"\r\n [placeholder]=\"control.placeholder! || ''\"\r\n ></core-form-control-seeker>\r\n }\r\n }\r\n }\r\n }\r\n </ng-container>\r\n\r\n @if (control.controlType==='BUTTON') {\r\n <ng-container>\r\n <button type=\"button\" class=\"btn btn-secondary text\" (click)=\"oHandleClick($event)\">{{control.label| translate: lang}}</button>\r\n </ng-container>\r\n }\r\n <!-- END: FORM-CONTROL SESSION-->\r\n\r\n <!-- START: ERROR SESSION-->\r\n @if (!!errors!.length) {\r\n <div>\r\n @for (error of errors; track $index) {\r\n <div class=\"form-control-error\">\r\n {{ error.errorMessage | translate: lang }}\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n @if (!errors!.length && !!checkError$.value) {\r\n <div>\r\n <div>\r\n {{ '&nbsp;' }}\r\n </div>\r\n </div>\r\n }\r\n <!-- END: ERROR SESSION-->\r\n\r\n </div>\r\n\r\n\r\n</div>\r\n\r\n<ng-template #calculatedControlInfo let-control=\"control\">\r\n <div class=\"calculated-tooltip-container\">\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Name:</span>\r\n <span class=\"value\">{{ control?.field || 'N/A' }}</span>\r\n </div> \r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Evaluation Mode:</span>\r\n <span class=\"value\">{{ control?.evaluationMode || 'N/A' }}</span>\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Return Type:</span>\r\n <span class=\"value\">{{ control?.returnType || 'N/A' }}</span>\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Depends On:</span>\r\n <span class=\"value\" *ngIf=\"control?.dependsOn?.length > 0; else noDepends\">\r\n <code *ngFor=\"let dep of control?.dependsOn; let last = last\">{{ dep }}<span *ngIf=\"!last\">, </span></code>\r\n </span>\r\n <ng-template #noDepends><em class=\"no-depends\">None</em></ng-template>\r\n </div>\r\n <div *ngIf=\"!!control?.isUnsafe\" class=\"warning\">\r\n \u26A0\uFE0F This script is marked as <strong>unsafe</strong> and will not be executed.\r\n </div>\r\n <div class=\"calculated-field-row\">\r\n <span class=\"label\">Script:</span>\r\n <pre class=\"code-block\">{{ control?.script || 'No script provided.' }}</pre>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [".core-control-container{font-size:var(--typo-basic-font-size)!important}.core-control-container .control-label{color:#848484}.core-control-container>div.hidden{display:none}.core-control-container label{color:#464646}.core-control-container label.required:after{content:\"*\";color:#ff040b}.core-control-container label.avatar-label{width:var(--size-file-uploader);display:flex;align-items:center;justify-content:center}.core-control-container input[type=number]{padding-right:12px;position:relative}.core-control-container input[type=number]::-webkit-inner-spin-button{position:absolute;right:.3em;margin-left:.5em}.core-control-container input[type=number]{-moz-appearance:textfield}.core-control-container i.feather-help-circle{color:#848484}.core-control-container .gap-for-ios-switcher{height:5px}.core-control-container .calculated-view{-webkit-user-select:none;user-select:none;cursor:pointer;height:35px;width:160px;background-color:#d8f3dc;color:#1b4332;border:1px solid #95d5b2;border-radius:50px;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:flex-start;font-family:Segoe UI,sans-serif;letter-spacing:.5px;padding:8px}.core-control-container .calculated-view i{font-size:18px;width:18px;height:18px;margin-right:8px}.core-control-container .calculated-view span{width:calc(100% - 26px);overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.calculated-tooltip-container{background-color:#fff;border:1px solid #ddd;padding:1rem;border-radius:6px;font-size:14px;color:#333;box-shadow:0 4px 10px #0000000d;max-width:360px}.calculated-tooltip-container .calculated-field-row{margin-bottom:.75rem}.calculated-tooltip-container .label{font-weight:500;color:#555!important;display:inline-block;min-width:140px}.calculated-tooltip-container .value{color:#222!important}.calculated-tooltip-container .warning{color:#b91c1c;background:#fef2f2;border:1px solid #fca5a5;padding:.5rem;border-radius:4px;margin-bottom:1rem;font-size:13px}.calculated-tooltip-container .code-block{background:#f8f9fa;border:1px solid #ddd;padding:.75rem;font-family:monospace;font-size:12px;white-space:pre-wrap;color:#111!important;border-radius:4px;overflow-x:auto}.calculated-tooltip-container .no-depends{color:#888;font-style:italic}.calculated-tooltip-container pre{overflow:hidden}\n"] }]
24936
24955
  }], ctorParameters: () => [{ type: MultiLanguageService }, { type: AlertService }], propDecorators: { control: [{
24937
24956
  type: Input
24938
24957
  }], form: [{
@@ -31428,6 +31447,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
31428
31447
  ], template: "<div class=\"app-schedule-overview-container\">\r\n <core-page-header [title]=\"title\" ></core-page-header>\r\n @if (model) {\r\n <core-employee-schedule [$model]=\"model\"></core-employee-schedule>\r\n }\r\n</div>\r\n" }]
31429
31448
  }], ctorParameters: () => [{ type: i1$2.Router }] });
31430
31449
 
31450
+ const simpleChatRoutes = [
31451
+ {
31452
+ path: '',
31453
+ loadComponent: () => import('./ngx-histaff-alpha-simple-chat.component-D_cC6c6Y.mjs').then(m => m.SimpleChatComponent)
31454
+ }
31455
+ ];
31456
+
31431
31457
  class PortalRouteEditComponent extends BaseEditComponent {
31432
31458
  constructor(dialogService) {
31433
31459
  super(dialogService);
@@ -34771,7 +34797,7 @@ const coreFormDesignRoutes = [
34771
34797
  },
34772
34798
  {
34773
34799
  path: ':id',
34774
- loadComponent: () => import('./ngx-histaff-alpha-core-form-design.component-CNOV3O1a.mjs').then(function (n) { return n.c; }).then(m => m.CoreFormDesignComponent)
34800
+ loadComponent: () => import('./ngx-histaff-alpha-core-form-design.component-BIrPbPQF.mjs').then(function (n) { return n.c; }).then(m => m.CoreFormDesignComponent)
34775
34801
  }
34776
34802
  ];
34777
34803
 
@@ -35665,7 +35691,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
35665
35691
  const coreNavigationTrackerRoutes = [
35666
35692
  {
35667
35693
  path: '',
35668
- loadComponent: () => import('./ngx-histaff-alpha-tracker-studio.component-BrvANynv.mjs').then(m => m.TrackerStudioComponent)
35694
+ loadComponent: () => import('./ngx-histaff-alpha-tracker-studio.component-BeyQ1E4V.mjs').then(m => m.TrackerStudioComponent)
35669
35695
  }
35670
35696
  ];
35671
35697
 
@@ -38301,29 +38327,29 @@ const coreWorkflowRoutes = [
38301
38327
  {
38302
38328
  path: 'form-assign/:id',
38303
38329
  outlet: "formAssignAux",
38304
- loadComponent: () => import('./ngx-histaff-alpha-wf-form-assign.component-BccHrJ7B.mjs').then(m => m.WfFormAssignComponent),
38330
+ loadComponent: () => import('./ngx-histaff-alpha-wf-form-assign.component-tEzWKFsE.mjs').then(m => m.WfFormAssignComponent),
38305
38331
  canDeactivate: [CanDeactivateGuard]
38306
38332
  }
38307
38333
  ]
38308
38334
  },
38309
38335
  {
38310
38336
  path: 'db-settings',
38311
- loadComponent: () => import('./ngx-histaff-alpha-db-settings.component-B4Lm-0DP.mjs').then(m => m.DbSettingsComponent)
38337
+ loadComponent: () => import('./ngx-histaff-alpha-db-settings.component-DMtYWfQY.mjs').then(m => m.DbSettingsComponent)
38312
38338
  },
38313
38339
  {
38314
38340
  path: 'workflow-consume',
38315
- loadComponent: () => import('./ngx-histaff-alpha-core-workflow-consume.component-Coq4i7hp.mjs').then(m => m.CoreWorkflowConsumeComponent),
38341
+ loadComponent: () => import('./ngx-histaff-alpha-core-workflow-consume.component-NK_FfweJ.mjs').then(m => m.CoreWorkflowConsumeComponent),
38316
38342
  children: [
38317
38343
  {
38318
38344
  path: ':id',
38319
38345
  outlet: "workflowConsume",
38320
- loadComponent: () => import('./ngx-histaff-alpha-live-form.component-BMA8yHBZ.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
38346
+ loadComponent: () => import('./ngx-histaff-alpha-live-form.component-C--SL_F1.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
38321
38347
  }
38322
38348
  ]
38323
38349
  },
38324
38350
  {
38325
38351
  path: 'workflow-consume/:id',
38326
- loadComponent: () => import('./ngx-histaff-alpha-live-form.component-BMA8yHBZ.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
38352
+ loadComponent: () => import('./ngx-histaff-alpha-live-form.component-C--SL_F1.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
38327
38353
  },
38328
38354
  {
38329
38355
  path: 'workflow-group-edit/:id',
@@ -38333,17 +38359,17 @@ const coreWorkflowRoutes = [
38333
38359
  },
38334
38360
  {
38335
38361
  path: 'design/:id',
38336
- loadChildren: () => import('./ngx-histaff-alpha-design-wrapper.route-BX6XCtkc.mjs').then(m => m.wfDesignWrapperRoutes),
38362
+ loadChildren: () => import('./ngx-histaff-alpha-design-wrapper.route-Cr_ieZ6t.mjs').then(m => m.wfDesignWrapperRoutes),
38337
38363
  },
38338
38364
  ]
38339
38365
  },
38340
38366
  {
38341
38367
  path: 'react/:id',
38342
- loadComponent: () => import('./ngx-histaff-alpha-wf-instance-step-react.component-BxlV-j5x.mjs').then(m => m.WfInstanceStepReactComponent)
38368
+ loadComponent: () => import('./ngx-histaff-alpha-wf-instance-step-react.component-BxdkDzS2.mjs').then(m => m.WfInstanceStepReactComponent)
38343
38369
  },
38344
38370
  {
38345
38371
  path: 'status/:id',
38346
- loadComponent: () => import('./ngx-histaff-alpha-wf-instance-status.component-DfglF5PD.mjs').then(m => m.WfInstanceStatusComponent)
38372
+ loadComponent: () => import('./ngx-histaff-alpha-wf-instance-status.component-Dc9ESH0Q.mjs').then(m => m.WfInstanceStatusComponent)
38347
38373
  }
38348
38374
  ];
38349
38375
 
@@ -40871,5 +40897,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
40871
40897
  * Generated bundle index. Do not edit.
40872
40898
  */
40873
40899
 
40874
- export { JsonSafePipe as $, AppService as A, BaseEditComponent as B, CorePageHeaderComponent as C, DragReorderDirective as D, EnumFormBaseContolType as E, FullscreenModalLoaderComponent as F, GptService as G, HotKeysDirective as H, ImageErrorResolverDirective as I, CoreCheckboxComponent as J, JsonService as K, AppConfigService as L, MultiLanguageService as M, NavigatorService as N, EnumCorePageEditMode as O, EnumCoreButtonVNSCode as P, noneAutoClosedAlertOptions as Q, READONLY_WORKFLOW_FIELDS as R, SocketService as S, TranslatePipe as T, CoreFormComponent as U, CoreButtonGroupVnsComponent as V, EnumCoreTablePipeType as W, HtmlTooltipDirective as X, CoreControlNoFormArrayComponent as Y, EnumFormDesignMode as Z, CoreControlComponent as _, CoreTabsComponent as a, FilterKitService as a$, CoreAttachmentComponent as a0, CoreMonthSelectorComponent as a1, EnumImageResolverType as a2, NormalizeHumanNamePipe as a3, CoreIosSwitcherComponent as a4, CoreFormService as a5, SunnyRotatingComponent as a6, MapAppdemoToServerPipePipe as a7, MapAttachmentToServerPipe as a8, MapNewsfeedMediaToServerPipe as a9, InterceptorSkipHeader as aA, appTypeInterceptor as aB, baseUrlInterceptor as aC, authInterceptor as aD, graphInterceptor as aE, tokenInterceptor as aF, responseInterceptor as aG, timeZoneInterceptor as aH, cachingInterceptor as aI, langInterceptor as aJ, EnumFilterOperator as aK, OnlineUsersComponent as aL, ActionService as aM, AppInitializationService as aN, AuthService as aO, CacheService as aP, EnumSwUpdateVersionUpdatesEventType as aQ, CheckForUpdateService as aR, EnumDeviceType as aS, EnumBrowserType as aT, EnumOsType as aU, ClientService as aV, CommonHttpRequestService as aW, TLA_CONFIG as aX, ConfigService as aY, CoreTableService as aZ, DndService as a_, StringHtmlPipe as aa, UploadedFilenameCutoffPipe as ab, DialogStateComponent as ac, FooterComponent as ad, RightchatComponent as ae, WaittingScreenComponent as af, longAlertOptions as ag, attachmentOptions as ah, CORE_VNS_BUTTONS as ai, defaultPaging as aj, DESKTOP_SCREEN_HEDER_HEIGHT as ak, MOBILE_SCREEN_HEDER_HEIGHT as al, themeBlue as am, DATE_VALUE_ACCESSOR as an, DateValueAccessor as ao, EnumDragType as ap, EnumErrorType as aq, EnumIconClass as ar, EnumProfileInfoSector as as, EnumSignalRType as at, EnumSortDirection as au, EnumStyleButtonClass as av, CanActivateFunctionUrlMapperGuard as aw, InitializationCanActivateFn as ax, InitializationCanMatchFn as ay, httpInterceptorProviders as az, CoreWorkflowService as b, SysOtherListTypeComponent as b$, GrpcService as b0, HeaderService as b1, HistoryService as b2, HttpErrorHandler as b3, HubConnectionService as b4, IpServiceService as b5, LayoutService as b6, MapService as b7, MenuService as b8, MessageService as b9, WorkShiftDndService as bA, AtShiftPatternComponent as bB, AtShiftPatternApplyComponent as bC, AtShiftPatternEditComponent as bD, AtWorksignComponent as bE, AtWorksignService as bF, FunctionComponent as bG, IndividualScheduleApplyComponent as bH, FunctionEditComponent as bI, FunctionIgnoreComponent as bJ, FunctionIgnoreEditComponent as bK, GroupFunctionComponent as bL, GroupFunctionEditComponent as bM, InMemoryComponent as bN, LanguageComponent as bO, LanguageEditComponent as bP, MenuComponent as bQ, MenuEditComponent as bR, MutationLogComponent as bS, MutationViewComponent as bT, PaSalaryPolicyComponent as bU, PaSalaryPolicyEditComponent as bV, PortalRouteComponent as bW, ScheduleOverviewComponent as bX, PortalRouteEditComponent as bY, SysOtherListComponent as bZ, SysOtherListEditComponent as b_, ModalService as ba, OrganizationService as bb, PkceService as bc, PositionTransferService as bd, EnumNotificationDir as be, NotificationActionType as bf, PushNotificationService as bg, RandomAvatarService as bh, RequestCache as bi, RequestCacheWithMap as bj, ResponseService as bk, RoutingService as bl, EnumSsrsExpressFileExtension as bm, EnumSsrsExpressExportFormat as bn, SsrsExpressService as bo, StatisticService as bp, StatisticAuthService as bq, SysMenuService as br, TimeSheetService as bs, TopicPermissionService as bt, TopicTreeService as bu, UploadedFileService as bv, UrlService as bw, UserActivityService as bx, EvaluateDialogService as by, EnumWorkScheduleViewMode as bz, EnumCoreFormControlSeekerSourceType as c, CoreFormLiteComponent as c$, SysOtherListTypeEditComponent as c0, SysActionComponent as c1, SysActionEditComponent as c2, SysFunctionActionComponent as c3, SysFunctionActionEditComponent as c4, SysFunctionActionMapperComponent as c5, SysFunctionUrlMapperComponent as c6, FunctionEditService as c7, SysModuleComponent as c8, SysModuleEditComponent as c9, CoreCompositionState as cA, CoreCompositionService as cB, CoreCompositionComponent as cC, CoreConfirmDialogComponent as cD, ConfirmDialogStateComponent as cE, CoreLazyMountComponent as cF, CoreRootMenuItemPickerComponent as cG, CoreRootMenuItemPickerService as cH, ECoreTableToolCode as cI, ECoreTableToolClass as cJ, CoreTableComponent as cK, CoreContractSeekerComponent as cL, CoreControlNoGridBufferComponent as cM, CoreControlNoSeekerComponent as cN, CoreEmployeeScheduleComponent as cO, CoreEmployeeSeekerComponent as cP, EnumCoreFileUploaderType as cQ, CoreFileUploaderComponent as cR, CoreFilterHubComponent as cS, CoreFilterHubService as cT, ControlBase as cU, Textbox as cV, CoreControlService as cW, CustomValidators as cX, URL_PATTERN as cY, coreFormDesignRoutes as cZ, CoreFormTabComponent as c_, SysRouteAccessComponent as ca, liner_to_nested_array_script as cb, blob_to_base64_script as cc, AlertComponent as cd, EnumAlertType as ce, IAlertOptions as cf, AnimatedTextService as cg, AnimatedTextComponent as ch, BaseDropdownComponent as ci, ButtonGroupModule as cj, ButtonGroupService as ck, ButtonGroupComponent as cl, EnumButtonCaptionCode as cm, CoreButtonComponent as cn, CoreAccordionComponent as co, CoreAccordionService as cp, CoreActiveUserCountComponent as cq, NewlyCreatedTokenService as cr, CoreApiProgressComponent as cs, CoreButtonGroupComponent as ct, EnumCoreButtonCode as cu, ActionSvgEditComponent as cv, CoreButtonGroupService as cw, CoreButtonVnsComponent as cx, CoreCommonParamKitComponent as cy, CoreCompareDbPipelineComponent as cz, CorePageEditComponent as d, CoreScrollLazyComponent as d$, CoreFormControlBaseComponent as d0, EnumCoreSeekerColumnJob as d1, EnumCoreSeekerColumnStaffProfile as d2, EnumCoreSeekerColumnContract as d3, EnumCoreSeekerColumnWorking as d4, EnumCoreSeekerColumnWage as d5, EnumCoreSeekerColumnPosition as d6, EnumCoreSeekerColumnPositionConcurrent as d7, EnumCoreSeekerColumnAutoForm as d8, SeekerService as d9, CorePageEditTabComponent as dA, CorePageListComponent as dB, EnumExType as dC, CorePageListService as dD, CorePageListState as dE, CorePageListContentComponent as dF, EnumCoreViewItemType as dG, CorePageViewComponent as dH, CorePaginationComponent as dI, CorePaginationFullComponent as dJ, CorePaginationFullService as dK, CoreFileFormatPickerComponent as dL, CorePermissionService as dM, EnumPermissionObjectType as dN, CorePermissionComponent as dO, CorePermissionActionsComponent as dP, CorePositionConcurrentSeekerComponent as dQ, CorePositionSeekerComponent as dR, CoreQrcodeComponent as dS, EnumOparator as dT, CoreQueryBuilderComponent as dU, CoreReducerIconComponent as dV, CoreRotatingTextComponent as dW, CoreRouteAccumulatorComponent as dX, CoreRoutingHistoryComponent as dY, CoreSalaryPolicyPickerComponent as dZ, CoreScrollComponent as d_, CoreGridBufferComponent as da, CoreHeaderParamsComponent as db, CoreHelperComponent as dc, CoreLineComponent as dd, CoreListComponent as de, CoreListLazyComponent as df, CoreLoadingSurfaceComponent as dg, CoreMccComponent as dh, CoreMonthPickerComponent as di, CoreNavigationTrackerComponent as dj, coreNavigationTrackerRoutes as dk, CoreOauthCallbackComponent as dl, CoreOauthCallbackOffice365Component as dm, EnumCoreOrgTreeaAccessorMode as dn, EnumCoreOrgTreeaSearchMode as dp, CoreOrgTreeComponent as dq, CoreOrgTreeState as dr, CoreOrgTreeService as ds, CoreOrgUnitSeekerComponent as dt, CoreOrgchartflexComponent as du, CoreOrgParamComponent as dv, EnumCorePageEditBootstrapClass as dw, EnumCorePageEditFieldType as dx, CorePageEditService as dy, CorePageEditLiteComponent as dz, BaseComponent as e, CoreSeenByComponent as e0, CoreShiftCardComponent as e1, CoreShiftCellComponent as e2, CoreShiftCollectionComponent as e3, CoreShiftStickerComponent as e4, STICKER_COLOR_SCHEMA as e5, CoreStatusStickerComponent as e6, CoreSubFormGroupComponent as e7, CoreTabListComponent as e8, CoreTagsComponent as e9, ItemComponent as eA, NavigatorComponent as eB, OtpInputComponent as eC, OtpInputService as eD, PageTitleComponent as eE, PaginationComponent as eF, FilterPipe as eG, normalizeHumanName as eH, PositionComponent as eI, PositionEditService as eJ, CoreDatetimeService as eK, FileService as eL, LongTaskService as eM, EnumRecursiveFields as eN, RecursiveService as eO, StringService as eP, UnicodeService as eQ, StaffProfileComponent as eR, ThreedotsComponent as eS, TooltipComponent as eT, UserActivityComponent as eU, WageComponent as eV, tooltip_directive as eW, dragReorder_directive as eX, CoreTopicPickerComponent as ea, EnumCoreArticleCategoryTreeaAccessorMode as eb, CoreTopicTreeComponent as ec, CoreTreeComponent as ed, EnumCoreTreeGridEditMode as ee, CoreTreeGridComponent as ef, CoreWageSeekerComponent as eg, CoreWorkingSeekerComponent as eh, coreWorkflowRoutes as ei, CoreWorkflowBuilderComponent as ej, CoreWorkflowGroupEditComponent as ek, CoreYearPickerComponent as el, CoreYearSelectorComponent as em, EnumCoreD3ScaleType as en, CoreD3Service as eo, CorePieComponent as ep, CoreScatterPlotComponent as eq, EnumHrComparisonCode as er, EnumICoreStatisticWidgetDataType as es, CoreStatisticWidgetComponent as et, DecisionComponent as eu, EvaluateDialogComponent as ev, HuconcurrentlyComponent as ew, JobComponent as ex, LanguageChangerComponent as ey, DEFAULT_SVG as ez, CoreWorkflowListComponent as f, TooltipDirective as g, CanDeactivateGuard as h, AlertService as i, TableCellPipe as j, MapAvatarToServerPipe as k, alertOptions as l, CoreTerminalSpinnerComponent as m, CoreFormDesignService as n, EnumWorkflowStepType as o, DialogService as p, DomService as q, CoreDropdownComponent as r, CoreChecklistComponent as s, CoreDatePickerComponent as t, CoreFormControlSeekerComponent as u, CoreCurrencyInputComponent as v, EnumActorSourceType as w, CoreParamControlComponent as x, CoreRadioGroupComponent as y, ApplicationHelpService as z };
40875
- //# sourceMappingURL=ngx-histaff-alpha-ngx-histaff-alpha-DblZXsAj.mjs.map
40900
+ export { CoreControlComponent as $, AppService as A, BaseEditComponent as B, ChatService as C, DragReorderDirective as D, EnumFormBaseContolType as E, FullscreenModalLoaderComponent as F, GptService as G, ApplicationHelpService as H, ImageErrorResolverDirective as I, HotKeysDirective as J, CoreCheckboxComponent as K, JsonService as L, MultiLanguageService as M, NavigatorService as N, AppConfigService as O, EnumCorePageEditMode as P, EnumCoreButtonVNSCode as Q, READONLY_WORKFLOW_FIELDS as R, SocketService as S, TranslatePipe as T, noneAutoClosedAlertOptions as U, CoreFormComponent as V, CoreButtonGroupVnsComponent as W, EnumCoreTablePipeType as X, HtmlTooltipDirective as Y, CoreControlNoFormArrayComponent as Z, EnumFormDesignMode as _, CorePageHeaderComponent as a, DndService as a$, JsonSafePipe as a0, CoreAttachmentComponent as a1, CoreMonthSelectorComponent as a2, EnumImageResolverType as a3, NormalizeHumanNamePipe as a4, CoreIosSwitcherComponent as a5, CoreFormService as a6, SunnyRotatingComponent as a7, MapAppdemoToServerPipePipe as a8, MapAttachmentToServerPipe as a9, httpInterceptorProviders as aA, InterceptorSkipHeader as aB, appTypeInterceptor as aC, baseUrlInterceptor as aD, authInterceptor as aE, graphInterceptor as aF, tokenInterceptor as aG, responseInterceptor as aH, timeZoneInterceptor as aI, cachingInterceptor as aJ, langInterceptor as aK, EnumFilterOperator as aL, OnlineUsersComponent as aM, ActionService as aN, AppInitializationService as aO, AuthService as aP, CacheService as aQ, EnumSwUpdateVersionUpdatesEventType as aR, CheckForUpdateService as aS, EnumDeviceType as aT, EnumBrowserType as aU, EnumOsType as aV, ClientService as aW, CommonHttpRequestService as aX, TLA_CONFIG as aY, ConfigService as aZ, CoreTableService as a_, MapNewsfeedMediaToServerPipe as aa, StringHtmlPipe as ab, UploadedFilenameCutoffPipe as ac, DialogStateComponent as ad, FooterComponent as ae, RightchatComponent as af, WaittingScreenComponent as ag, longAlertOptions as ah, attachmentOptions as ai, CORE_VNS_BUTTONS as aj, defaultPaging as ak, DESKTOP_SCREEN_HEDER_HEIGHT as al, MOBILE_SCREEN_HEDER_HEIGHT as am, themeBlue as an, DATE_VALUE_ACCESSOR as ao, DateValueAccessor as ap, EnumDragType as aq, EnumErrorType as ar, EnumIconClass as as, EnumProfileInfoSector as at, EnumSignalRType as au, EnumSortDirection as av, EnumStyleButtonClass as aw, CanActivateFunctionUrlMapperGuard as ax, InitializationCanActivateFn as ay, InitializationCanMatchFn as az, CoreTabsComponent as b, SysOtherListComponent as b$, FilterKitService as b0, GrpcService as b1, HeaderService as b2, HistoryService as b3, HttpErrorHandler as b4, HubConnectionService as b5, IpServiceService as b6, LayoutService as b7, MapService as b8, MenuService as b9, EnumWorkScheduleViewMode as bA, WorkShiftDndService as bB, AtShiftPatternComponent as bC, AtShiftPatternApplyComponent as bD, AtShiftPatternEditComponent as bE, AtWorksignComponent as bF, AtWorksignService as bG, FunctionComponent as bH, IndividualScheduleApplyComponent as bI, FunctionEditComponent as bJ, FunctionIgnoreComponent as bK, FunctionIgnoreEditComponent as bL, GroupFunctionComponent as bM, GroupFunctionEditComponent as bN, InMemoryComponent as bO, LanguageComponent as bP, LanguageEditComponent as bQ, MenuComponent as bR, MenuEditComponent as bS, MutationLogComponent as bT, MutationViewComponent as bU, PaSalaryPolicyComponent as bV, PaSalaryPolicyEditComponent as bW, PortalRouteComponent as bX, ScheduleOverviewComponent as bY, simpleChatRoutes as bZ, PortalRouteEditComponent as b_, MessageService as ba, ModalService as bb, OrganizationService as bc, PkceService as bd, PositionTransferService as be, EnumNotificationDir as bf, NotificationActionType as bg, PushNotificationService as bh, RandomAvatarService as bi, RequestCache as bj, RequestCacheWithMap as bk, ResponseService as bl, RoutingService as bm, EnumSsrsExpressFileExtension as bn, EnumSsrsExpressExportFormat as bo, SsrsExpressService as bp, StatisticService as bq, StatisticAuthService as br, SysMenuService as bs, TimeSheetService as bt, TopicPermissionService as bu, TopicTreeService as bv, UploadedFileService as bw, UrlService as bx, UserActivityService as by, EvaluateDialogService as bz, CoreWorkflowService as c, coreFormDesignRoutes as c$, SysOtherListEditComponent as c0, SysOtherListTypeComponent as c1, SysOtherListTypeEditComponent as c2, SysActionComponent as c3, SysActionEditComponent as c4, SysFunctionActionComponent as c5, SysFunctionActionEditComponent as c6, SysFunctionActionMapperComponent as c7, SysFunctionUrlMapperComponent as c8, FunctionEditService as c9, CoreCommonParamKitComponent as cA, CoreCompareDbPipelineComponent as cB, CoreCompositionState as cC, CoreCompositionService as cD, CoreCompositionComponent as cE, CoreConfirmDialogComponent as cF, ConfirmDialogStateComponent as cG, CoreLazyMountComponent as cH, CoreRootMenuItemPickerComponent as cI, CoreRootMenuItemPickerService as cJ, ECoreTableToolCode as cK, ECoreTableToolClass as cL, CoreTableComponent as cM, CoreContractSeekerComponent as cN, CoreControlNoGridBufferComponent as cO, CoreControlNoSeekerComponent as cP, CoreEmployeeScheduleComponent as cQ, CoreEmployeeSeekerComponent as cR, EnumCoreFileUploaderType as cS, CoreFileUploaderComponent as cT, CoreFilterHubComponent as cU, CoreFilterHubService as cV, ControlBase as cW, Textbox as cX, CoreControlService as cY, CustomValidators as cZ, URL_PATTERN as c_, SysModuleComponent as ca, SysModuleEditComponent as cb, SysRouteAccessComponent as cc, liner_to_nested_array_script as cd, blob_to_base64_script as ce, AlertComponent as cf, EnumAlertType as cg, IAlertOptions as ch, AnimatedTextService as ci, AnimatedTextComponent as cj, BaseDropdownComponent as ck, ButtonGroupModule as cl, ButtonGroupService as cm, ButtonGroupComponent as cn, EnumButtonCaptionCode as co, CoreButtonComponent as cp, CoreAccordionComponent as cq, CoreAccordionService as cr, CoreActiveUserCountComponent as cs, NewlyCreatedTokenService as ct, CoreApiProgressComponent as cu, CoreButtonGroupComponent as cv, EnumCoreButtonCode as cw, ActionSvgEditComponent as cx, CoreButtonGroupService as cy, CoreButtonVnsComponent as cz, EnumCoreFormControlSeekerSourceType as d, CoreSalaryPolicyPickerComponent as d$, CoreFormTabComponent as d0, CoreFormLiteComponent as d1, CoreFormControlBaseComponent as d2, EnumCoreSeekerColumnJob as d3, EnumCoreSeekerColumnStaffProfile as d4, EnumCoreSeekerColumnContract as d5, EnumCoreSeekerColumnWorking as d6, EnumCoreSeekerColumnWage as d7, EnumCoreSeekerColumnPosition as d8, EnumCoreSeekerColumnPositionConcurrent as d9, CorePageEditService as dA, CorePageEditLiteComponent as dB, CorePageEditTabComponent as dC, CorePageListComponent as dD, EnumExType as dE, CorePageListService as dF, CorePageListState as dG, CorePageListContentComponent as dH, EnumCoreViewItemType as dI, CorePageViewComponent as dJ, CorePaginationComponent as dK, CorePaginationFullComponent as dL, CorePaginationFullService as dM, CoreFileFormatPickerComponent as dN, CorePermissionService as dO, EnumPermissionObjectType as dP, CorePermissionComponent as dQ, CorePermissionActionsComponent as dR, CorePositionConcurrentSeekerComponent as dS, CorePositionSeekerComponent as dT, CoreQrcodeComponent as dU, EnumOparator as dV, CoreQueryBuilderComponent as dW, CoreReducerIconComponent as dX, CoreRotatingTextComponent as dY, CoreRouteAccumulatorComponent as dZ, CoreRoutingHistoryComponent as d_, EnumCoreSeekerColumnAutoForm as da, SeekerService as db, CoreGridBufferComponent as dc, CoreHeaderParamsComponent as dd, CoreHelperComponent as de, CoreLineComponent as df, CoreListComponent as dg, CoreListLazyComponent as dh, CoreLoadingSurfaceComponent as di, CoreMccComponent as dj, CoreMonthPickerComponent as dk, CoreNavigationTrackerComponent as dl, coreNavigationTrackerRoutes as dm, CoreOauthCallbackComponent as dn, CoreOauthCallbackOffice365Component as dp, EnumCoreOrgTreeaAccessorMode as dq, EnumCoreOrgTreeaSearchMode as dr, CoreOrgTreeComponent as ds, CoreOrgTreeState as dt, CoreOrgTreeService as du, CoreOrgUnitSeekerComponent as dv, CoreOrgchartflexComponent as dw, CoreOrgParamComponent as dx, EnumCorePageEditBootstrapClass as dy, EnumCorePageEditFieldType as dz, CorePageEditComponent as e, CoreScrollComponent as e0, CoreScrollLazyComponent as e1, CoreSeenByComponent as e2, CoreShiftCardComponent as e3, CoreShiftCellComponent as e4, CoreShiftCollectionComponent as e5, CoreShiftStickerComponent as e6, STICKER_COLOR_SCHEMA as e7, CoreStatusStickerComponent as e8, CoreSubFormGroupComponent as e9, LanguageChangerComponent as eA, DEFAULT_SVG as eB, ItemComponent as eC, NavigatorComponent as eD, OtpInputComponent as eE, OtpInputService as eF, PageTitleComponent as eG, PaginationComponent as eH, FilterPipe as eI, normalizeHumanName as eJ, PositionComponent as eK, PositionEditService as eL, CoreDatetimeService as eM, FileService as eN, LongTaskService as eO, EnumRecursiveFields as eP, RecursiveService as eQ, StringService as eR, UnicodeService as eS, StaffProfileComponent as eT, ThreedotsComponent as eU, TooltipComponent as eV, UserActivityComponent as eW, WageComponent as eX, tooltip_directive as eY, dragReorder_directive as eZ, CoreTabListComponent as ea, CoreTagsComponent as eb, CoreTopicPickerComponent as ec, EnumCoreArticleCategoryTreeaAccessorMode as ed, CoreTopicTreeComponent as ee, CoreTreeComponent as ef, EnumCoreTreeGridEditMode as eg, CoreTreeGridComponent as eh, CoreWageSeekerComponent as ei, CoreWorkingSeekerComponent as ej, coreWorkflowRoutes as ek, CoreWorkflowBuilderComponent as el, CoreWorkflowGroupEditComponent as em, CoreYearPickerComponent as en, CoreYearSelectorComponent as eo, EnumCoreD3ScaleType as ep, CoreD3Service as eq, CorePieComponent as er, CoreScatterPlotComponent as es, EnumHrComparisonCode as et, EnumICoreStatisticWidgetDataType as eu, CoreStatisticWidgetComponent as ev, DecisionComponent as ew, EvaluateDialogComponent as ex, HuconcurrentlyComponent as ey, JobComponent as ez, BaseComponent as f, CoreWorkflowListComponent as g, TooltipDirective as h, CanDeactivateGuard as i, AlertService as j, TableCellPipe as k, MapAvatarToServerPipe as l, alertOptions as m, CoreTerminalSpinnerComponent as n, CoreFormDesignService as o, EnumWorkflowStepType as p, DialogService as q, DomService as r, CoreDropdownComponent as s, CoreChecklistComponent as t, CoreDatePickerComponent as u, CoreFormControlSeekerComponent as v, CoreCurrencyInputComponent as w, EnumActorSourceType as x, CoreParamControlComponent as y, CoreRadioGroupComponent as z };
40901
+ //# sourceMappingURL=ngx-histaff-alpha-ngx-histaff-alpha-C4gLEqgw.mjs.map