ngx-histaff-alpha 5.9.5 → 5.9.7
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.
- package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-DLAzu91v.mjs → ngx-histaff-alpha-ai-hint-for-table.component-98XdRVOo.mjs} +3 -3
- package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-DLAzu91v.mjs.map → ngx-histaff-alpha-ai-hint-for-table.component-98XdRVOo.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-core-form-design.component-XnxFJVMG.mjs → ngx-histaff-alpha-core-form-design.component-DdKhEOxl.mjs} +15 -6
- package/fesm2022/ngx-histaff-alpha-core-form-design.component-DdKhEOxl.mjs.map +1 -0
- package/fesm2022/{ngx-histaff-alpha-core-sticker-collection.component-CZkBMdmR.mjs → ngx-histaff-alpha-core-sticker-collection.component-g8yVJ890.mjs} +3 -3
- package/fesm2022/{ngx-histaff-alpha-core-sticker-collection.component-CZkBMdmR.mjs.map → ngx-histaff-alpha-core-sticker-collection.component-g8yVJ890.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-D4TOLB1x.mjs → ngx-histaff-alpha-core-toast-loading.component-Bn5zSGbf.mjs} +2 -2
- package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-D4TOLB1x.mjs.map → ngx-histaff-alpha-core-toast-loading.component-Bn5zSGbf.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-gfl1QYVw.mjs → ngx-histaff-alpha-core-workflow-consume.component-2abUPaGQ.mjs} +2 -2
- package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-gfl1QYVw.mjs.map → ngx-histaff-alpha-core-workflow-consume.component-2abUPaGQ.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-db-settings.component-Ctk7HaEI.mjs → ngx-histaff-alpha-db-settings.component-Bs5Y-dKb.mjs} +5 -5
- package/fesm2022/{ngx-histaff-alpha-db-settings.component-Ctk7HaEI.mjs.map → ngx-histaff-alpha-db-settings.component-Bs5Y-dKb.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-CxD9dq2U.mjs → ngx-histaff-alpha-design-wrapper.component-BeNUR6gK.mjs} +5 -5
- package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-CxD9dq2U.mjs.map → ngx-histaff-alpha-design-wrapper.component-BeNUR6gK.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-BpNyW39l.mjs → ngx-histaff-alpha-design-wrapper.route-DpjX7k37.mjs} +5 -5
- package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-BpNyW39l.mjs.map → ngx-histaff-alpha-design-wrapper.route-DpjX7k37.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-form-array-props.component-2LAdaUGH.mjs → ngx-histaff-alpha-form-array-props.component-BSa0awrW.mjs} +3 -3
- package/fesm2022/{ngx-histaff-alpha-form-array-props.component-2LAdaUGH.mjs.map → ngx-histaff-alpha-form-array-props.component-BSa0awrW.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-live-form.component-D5QmNGTt.mjs → ngx-histaff-alpha-live-form.component-tNHO021s.mjs} +2 -2
- package/fesm2022/{ngx-histaff-alpha-live-form.component-D5QmNGTt.mjs.map → ngx-histaff-alpha-live-form.component-tNHO021s.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-ngx-histaff-alpha-CNgfQzS2.mjs → ngx-histaff-alpha-ngx-histaff-alpha-B4jY1IDY.mjs} +161 -188
- package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-B4jY1IDY.mjs.map +1 -0
- package/fesm2022/{ngx-histaff-alpha-simple-chat.component-B9DuVF_F.mjs → ngx-histaff-alpha-simple-chat.component-4gnuNHNQ.mjs} +2 -2
- package/fesm2022/{ngx-histaff-alpha-simple-chat.component-B9DuVF_F.mjs.map → ngx-histaff-alpha-simple-chat.component-4gnuNHNQ.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-DTHqwNht.mjs → ngx-histaff-alpha-tracker-studio.component-BXMxPjuc.mjs} +2 -2
- package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-DTHqwNht.mjs.map → ngx-histaff-alpha-tracker-studio.component-BXMxPjuc.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-DEe0Yo2C.mjs → ngx-histaff-alpha-wf-form-assign.component-Q4uvQoJO.mjs} +2 -2
- package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-DEe0Yo2C.mjs.map → ngx-histaff-alpha-wf-form-assign.component-Q4uvQoJO.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-ru70eRA8.mjs → ngx-histaff-alpha-wf-instance-status.component-D9RhPDwJ.mjs} +2 -2
- package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-ru70eRA8.mjs.map → ngx-histaff-alpha-wf-instance-status.component-D9RhPDwJ.mjs.map} +1 -1
- package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-CWWhTLxl.mjs → ngx-histaff-alpha-wf-instance-step-react.component-BLXwhETi.mjs} +3 -3
- package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-CWWhTLxl.mjs.map → ngx-histaff-alpha-wf-instance-step-react.component-BLXwhETi.mjs.map} +1 -1
- package/fesm2022/ngx-histaff-alpha.mjs +1 -1
- package/lib/app/libraries/core-form-design/core-form-group-editor.component.d.ts +2 -1
- package/lib/app/libraries/core-form-design/interfaces.d.ts +2 -0
- package/lib/app/libraries/core-page-list/core-page-list.component.d.ts +1 -0
- package/lib/app/libraries/core-page-list/core-page-list.service.d.ts +1 -0
- package/package.json +1 -1
- package/fesm2022/ngx-histaff-alpha-core-form-design.component-XnxFJVMG.mjs.map +0 -1
- package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-CNgfQzS2.mjs.map +0 -1
|
@@ -6416,6 +6416,12 @@ const EmptyAfInstance = {
|
|
|
6416
6416
|
crudUpdate: ''
|
|
6417
6417
|
};
|
|
6418
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
|
+
|
|
6419
6425
|
const URL_PATTERN = '^(https?:\\/\\/[^\\s]+|\\/api(\\/[-\\w._]+)+)$';
|
|
6420
6426
|
const READONLY_WORKFLOW_FIELDS = [
|
|
6421
6427
|
'name',
|
|
@@ -6470,7 +6476,6 @@ class CoreFormDesignService {
|
|
|
6470
6476
|
}
|
|
6471
6477
|
return result;
|
|
6472
6478
|
}
|
|
6473
|
-
//$nestedDesignSections: WritableSignal<ICoreFormSection[] | null> = signal(null);
|
|
6474
6479
|
buildFormArrayFromLayout(layout, repeatCount = 1) {
|
|
6475
6480
|
const createGroupFromLayout = () => {
|
|
6476
6481
|
const group = {};
|
|
@@ -6596,56 +6601,6 @@ class CoreFormDesignService {
|
|
|
6596
6601
|
});
|
|
6597
6602
|
this.$nestedControlJson = computed(() => JSON.stringify(this.stripRuntimeProps(this.$nestedControl()), null, 2).trim());
|
|
6598
6603
|
this.$isInWorkflowDesign = signal(false);
|
|
6599
|
-
/*
|
|
6600
|
-
removeSignalKeysDeep = (
|
|
6601
|
-
obj: any,
|
|
6602
|
-
ignoredKeys: string[] = []
|
|
6603
|
-
): { obj: any; ignoredKeys: string[] } => {
|
|
6604
|
-
const cleaned = (() => {
|
|
6605
|
-
if (Array.isArray(obj)) {
|
|
6606
|
-
return obj.map(item => this.removeSignalKeysDeep(item, ignoredKeys).obj);
|
|
6607
|
-
}
|
|
6608
|
-
|
|
6609
|
-
if (obj && typeof obj === 'object') {
|
|
6610
|
-
return Object.entries(obj)
|
|
6611
|
-
.filter(([key]) => {
|
|
6612
|
-
return !key.endsWith('$') && !ignoredKeys.includes(key);
|
|
6613
|
-
})
|
|
6614
|
-
.reduce((acc, [key, value]) => {
|
|
6615
|
-
acc[key] = this.removeSignalKeysDeep(value, ignoredKeys).obj;
|
|
6616
|
-
return acc;
|
|
6617
|
-
}, {} as any);
|
|
6618
|
-
}
|
|
6619
|
-
|
|
6620
|
-
return obj;
|
|
6621
|
-
})();
|
|
6622
|
-
|
|
6623
|
-
return { obj: cleaned, ignoredKeys };
|
|
6624
|
-
};
|
|
6625
|
-
*/
|
|
6626
|
-
/*
|
|
6627
|
-
copyNestedSectionsIntoSelectedCell(): void {
|
|
6628
|
-
const selectedCell = this.$selectedCell(); // outer parent
|
|
6629
|
-
const nested = this.$nestedPlaceholderSections();
|
|
6630
|
-
|
|
6631
|
-
if (!selectedCell?.control || !Array.isArray(nested)) return;
|
|
6632
|
-
|
|
6633
|
-
this.$placeholderSections.update(sections => {
|
|
6634
|
-
for (const section of sections) {
|
|
6635
|
-
for (const row of section.rows) {
|
|
6636
|
-
if (!!row) {
|
|
6637
|
-
for (const cell of row.cells) {
|
|
6638
|
-
if (cell === selectedCell) {
|
|
6639
|
-
cell.childrenSections = JSON.parse(JSON.stringify(nested));
|
|
6640
|
-
}
|
|
6641
|
-
}
|
|
6642
|
-
}
|
|
6643
|
-
}
|
|
6644
|
-
}
|
|
6645
|
-
return sections;
|
|
6646
|
-
});
|
|
6647
|
-
}
|
|
6648
|
-
*/
|
|
6649
6604
|
this.$saveLiveJson = computed(() => {
|
|
6650
6605
|
const instance = this.$afInstance();
|
|
6651
6606
|
//const cleanedInstance = this.removeSignalKeysDeep(instance).obj; // Remove signals or $ fields
|
|
@@ -6790,7 +6745,24 @@ class CoreFormDesignService {
|
|
|
6790
6745
|
});
|
|
6791
6746
|
effect(() => {
|
|
6792
6747
|
console.log("🔴 $nestedPlaceholderSections effect");
|
|
6793
|
-
const
|
|
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
|
+
}
|
|
6794
6766
|
this.syncNestedFormDesignWithSections();
|
|
6795
6767
|
});
|
|
6796
6768
|
/*
|
|
@@ -6827,35 +6799,6 @@ class CoreFormDesignService {
|
|
|
6827
6799
|
}
|
|
6828
6800
|
}
|
|
6829
6801
|
});
|
|
6830
|
-
// TO DO: Split this into two separate, isolated computations
|
|
6831
|
-
/*
|
|
6832
|
-
effect(() => {
|
|
6833
|
-
console.log("🔴🔴🔴 $selectedCell, $controlTemplate and $placeholderSections effect")
|
|
6834
|
-
const cell = this.$selectedCell();
|
|
6835
|
-
if (!!cell) {
|
|
6836
|
-
const base = cell?.control as IFormBaseControl | undefined;
|
|
6837
|
-
const template = this.$controlTemplate();
|
|
6838
|
-
|
|
6839
|
-
if (base) {
|
|
6840
|
-
const merged = { ...base, ...template };
|
|
6841
|
-
this.$control.set(merged as IFormBaseControl);
|
|
6842
|
-
} else {
|
|
6843
|
-
this.$control.set(null);
|
|
6844
|
-
}
|
|
6845
|
-
|
|
6846
|
-
const placeholderSections = this.$placeholderSections();
|
|
6847
|
-
|
|
6848
|
-
// 🔥 DO NOT READ this.$afInstance()
|
|
6849
|
-
console.log("[CoreFormDesignService][effect]: $afInstance is being updated inside an effect of $selectedCell, $currentControlTemplate and $placeholderSections");
|
|
6850
|
-
this.$afInstance.update(instance => instance ? ({
|
|
6851
|
-
...instance,
|
|
6852
|
-
formDesignSections: placeholderSections,
|
|
6853
|
-
sections: this.toCoreFormSections(placeholderSections)
|
|
6854
|
-
}) : instance);
|
|
6855
|
-
|
|
6856
|
-
}
|
|
6857
|
-
});
|
|
6858
|
-
*/
|
|
6859
6802
|
effect(() => {
|
|
6860
6803
|
console.log("🔴🔴 $nestedSelectedCell and $nestedControlTemplate effect");
|
|
6861
6804
|
const cell = this.$nestedSelectedCell(); // signal 1
|
|
@@ -7026,30 +6969,125 @@ class CoreFormDesignService {
|
|
|
7026
6969
|
if (isNested) {
|
|
7027
6970
|
const nestedRawControl = this.nestedFormDesign?.get(control.field);
|
|
7028
6971
|
if (nestedRawControl && Array.isArray(value)) {
|
|
7029
|
-
|
|
7030
|
-
|
|
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 });
|
|
7031
6989
|
}
|
|
7032
6990
|
}
|
|
7033
6991
|
else {
|
|
7034
6992
|
const rawControl = this.formDesign?.get(control.field);
|
|
7035
6993
|
if (rawControl && Array.isArray(value)) {
|
|
7036
|
-
|
|
7037
|
-
|
|
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
|
+
}
|
|
7038
7047
|
}
|
|
7039
7048
|
}
|
|
7040
|
-
|
|
7041
|
-
|
|
7042
|
-
|
|
7043
|
-
|
|
7044
|
-
|
|
7045
|
-
|
|
7046
|
-
|
|
7047
|
-
|
|
7048
|
-
|
|
7049
|
-
|
|
7050
|
-
this.$
|
|
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
|
+
}
|
|
7051
7090
|
}
|
|
7052
|
-
this.updateCellAt({ flexSize: value }, isNested);
|
|
7053
7091
|
}
|
|
7054
7092
|
}
|
|
7055
7093
|
}
|
|
@@ -7110,12 +7148,6 @@ class CoreFormDesignService {
|
|
|
7110
7148
|
// 🔁 Patch control
|
|
7111
7149
|
patchControl(updated, isNested) {
|
|
7112
7150
|
console.log("🔴 patchControl called: this triggers $placeholderSections update");
|
|
7113
|
-
// const $placeholderSections = isNested
|
|
7114
|
-
// ? this.$nestedPlaceholderSections
|
|
7115
|
-
// : this.$placeholderSections;
|
|
7116
|
-
// const $selectedCell = isNested
|
|
7117
|
-
// ? this.$nestedSelectedCell
|
|
7118
|
-
// : this.$selectedCell;
|
|
7119
7151
|
// MAIN BOARD
|
|
7120
7152
|
if (!isNested) {
|
|
7121
7153
|
this.$placeholderSections.update(sections => {
|
|
@@ -7151,67 +7183,6 @@ class CoreFormDesignService {
|
|
|
7151
7183
|
}
|
|
7152
7184
|
return sections;
|
|
7153
7185
|
});
|
|
7154
|
-
// THEN UPDATE THE MAIN BOARD
|
|
7155
|
-
/*
|
|
7156
|
-
this.$placeholderSections.update(sections => {
|
|
7157
|
-
const sectionIndex = this.$sectionIndex();
|
|
7158
|
-
const rowIndex = this.$rowIndex();
|
|
7159
|
-
const colIndex = this.$colIndex();
|
|
7160
|
-
|
|
7161
|
-
if (sectionIndex !== null && rowIndex !== null && colIndex !== null) {
|
|
7162
|
-
let control = sections[sectionIndex].rows[rowIndex]?.cells[colIndex].control;
|
|
7163
|
-
if (!!control) {
|
|
7164
|
-
control = { ...updated }
|
|
7165
|
-
}
|
|
7166
|
-
}
|
|
7167
|
-
|
|
7168
|
-
return sections;
|
|
7169
|
-
})
|
|
7170
|
-
*/
|
|
7171
|
-
/*
|
|
7172
|
-
this.$nestedPlaceholderSections.update(sections => {
|
|
7173
|
-
for (const section of sections) {
|
|
7174
|
-
for (const row of section.rows ?? []) {
|
|
7175
|
-
if (!row) continue;
|
|
7176
|
-
|
|
7177
|
-
for (const cell of row.cells ?? []) {
|
|
7178
|
-
// ✅ TOP-LEVEL control
|
|
7179
|
-
if (!isNested && cell.control?.field === updated.field) {
|
|
7180
|
-
cell.control = { ...updated };
|
|
7181
|
-
$selectedCell.set({ ...cell });
|
|
7182
|
-
}
|
|
7183
|
-
|
|
7184
|
-
// ✅ NESTED: assuming ICoreFormSection structure with rows: IFormBaseControl[][]
|
|
7185
|
-
if (
|
|
7186
|
-
isNested &&
|
|
7187
|
-
cell.control?.controlType === 'FORM_ARRAY' &&
|
|
7188
|
-
Array.isArray(cell.childrenSections)
|
|
7189
|
-
) {
|
|
7190
|
-
for (const childSection of cell.childrenSections) {
|
|
7191
|
-
for (const childRow of childSection.rows ?? []) {
|
|
7192
|
-
if (childRow) {
|
|
7193
|
-
for (let i = 0; i < childRow.cells.length; i++) {
|
|
7194
|
-
const ctrl = childRow[i];
|
|
7195
|
-
if (ctrl?.field === updated.field) {
|
|
7196
|
-
childRow[i] = { ...updated }; // ✅ Replace directly in array
|
|
7197
|
-
$selectedCell.set({
|
|
7198
|
-
control: updated,
|
|
7199
|
-
flexSize: 12,
|
|
7200
|
-
runtimeId: crypto.randomUUID()
|
|
7201
|
-
});
|
|
7202
|
-
}
|
|
7203
|
-
}
|
|
7204
|
-
}
|
|
7205
|
-
}
|
|
7206
|
-
}
|
|
7207
|
-
}
|
|
7208
|
-
}
|
|
7209
|
-
}
|
|
7210
|
-
}
|
|
7211
|
-
|
|
7212
|
-
return sections;
|
|
7213
|
-
});
|
|
7214
|
-
*/
|
|
7215
7186
|
}
|
|
7216
7187
|
}
|
|
7217
7188
|
// 🧩 Drag logic
|
|
@@ -8123,6 +8094,7 @@ class CoreFormDesignService {
|
|
|
8123
8094
|
: row)
|
|
8124
8095
|
}
|
|
8125
8096
|
: section);
|
|
8097
|
+
console.log("updateCellAt updated", updated);
|
|
8126
8098
|
if (isNested) {
|
|
8127
8099
|
this.$nestedPlaceholderSections.set(updated);
|
|
8128
8100
|
}
|
|
@@ -14288,10 +14260,12 @@ class CorePageListComponent extends CoreFormControlBaseComponent {
|
|
|
14288
14260
|
// Nếu tham số generateTemplateRequest được truyền vào
|
|
14289
14261
|
// Import sẽ thực thi theo quy trình Core
|
|
14290
14262
|
if (this.generateTemplateRequest) {
|
|
14263
|
+
this.session = new Date().getTime();
|
|
14291
14264
|
const importXlsxToDbRequest = {
|
|
14292
14265
|
fileName,
|
|
14293
14266
|
exCode: this.generateTemplateRequest.exCode,
|
|
14294
|
-
base64String: base64
|
|
14267
|
+
base64String: base64,
|
|
14268
|
+
session: this.session
|
|
14295
14269
|
};
|
|
14296
14270
|
this.longApiRunning = true;
|
|
14297
14271
|
this.subscriptions.push(this.corePageListService.importXlsxToDb(importXlsxToDbRequest).pipe(finalize$1(() => {
|
|
@@ -14299,7 +14273,6 @@ class CorePageListComponent extends CoreFormControlBaseComponent {
|
|
|
14299
14273
|
this.cdr.markForCheck();
|
|
14300
14274
|
}))
|
|
14301
14275
|
.subscribe(x => {
|
|
14302
|
-
const session = Number(this.longTaskService.data$.value?.outerMessage) ?? new Date().getTime();
|
|
14303
14276
|
this.longApiRunning = false;
|
|
14304
14277
|
if (x.ok && x.status === 200) {
|
|
14305
14278
|
let downloadLink = document.createElement("a");
|
|
@@ -14311,7 +14284,7 @@ class CorePageListComponent extends CoreFormControlBaseComponent {
|
|
|
14311
14284
|
const importPreviewOuterParam = {
|
|
14312
14285
|
xlsxSid: this.authService.data$.value?.id,
|
|
14313
14286
|
xlsxExCode: this.generateTemplateRequest.exCode,
|
|
14314
|
-
xlsxSession: session
|
|
14287
|
+
xlsxSession: this.session
|
|
14315
14288
|
};
|
|
14316
14289
|
if (!!!this.importPreviewPath) {
|
|
14317
14290
|
if (isDevMode()) {
|
|
@@ -14330,7 +14303,7 @@ class CorePageListComponent extends CoreFormControlBaseComponent {
|
|
|
14330
14303
|
},
|
|
14331
14304
|
], {
|
|
14332
14305
|
relativeTo: this.route, state: {
|
|
14333
|
-
session,
|
|
14306
|
+
session: this.session,
|
|
14334
14307
|
importPreviewOuterParam
|
|
14335
14308
|
}
|
|
14336
14309
|
});
|
|
@@ -22529,7 +22502,7 @@ class CoreFormControlSeekerComponent extends CoreFormControlBaseComponent {
|
|
|
22529
22502
|
CorePositionConcurrentSeekerComponent,
|
|
22530
22503
|
CoreFormSeekerComponent,
|
|
22531
22504
|
CoreTableComponent
|
|
22532
|
-
], 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"] }] }); }
|
|
22533
22506
|
}
|
|
22534
22507
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreFormControlSeekerComponent, decorators: [{
|
|
22535
22508
|
type: Component,
|
|
@@ -22570,7 +22543,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
|
|
|
22570
22543
|
CorePositionConcurrentSeekerComponent,
|
|
22571
22544
|
CoreFormSeekerComponent,
|
|
22572
22545
|
CoreTableComponent
|
|
22573
|
-
], 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"] }]
|
|
22574
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: [{
|
|
22575
22548
|
type: ViewChild,
|
|
22576
22549
|
args: ['avatar']
|
|
@@ -24947,7 +24920,7 @@ class CoreControlNoFormArrayComponent extends BaseComponent {
|
|
|
24947
24920
|
}
|
|
24948
24921
|
}
|
|
24949
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 }); }
|
|
24950
|
-
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 {{ ' ' }}\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 {{ ' ' }}\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$"] }] }); }
|
|
24951
24924
|
}
|
|
24952
24925
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreControlNoFormArrayComponent, decorators: [{
|
|
24953
24926
|
type: Component,
|
|
@@ -24978,7 +24951,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
|
|
|
24978
24951
|
CoreTopicPickerComponent,
|
|
24979
24952
|
CoreIosSwitcherComponent,
|
|
24980
24953
|
HtmlTooltipDirective
|
|
24981
|
-
], 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 {{ ' ' }}\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 {{ ' ' }}\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"] }]
|
|
24982
24955
|
}], ctorParameters: () => [{ type: MultiLanguageService }, { type: AlertService }], propDecorators: { control: [{
|
|
24983
24956
|
type: Input
|
|
24984
24957
|
}], form: [{
|
|
@@ -25051,7 +25024,7 @@ class CoreFormArrayComponent {
|
|
|
25051
25024
|
multi: true,
|
|
25052
25025
|
useExisting: CoreFormArrayComponent
|
|
25053
25026
|
}
|
|
25054
|
-
], usesOnChanges: true, ngImport: i0, template: "<div class=\"core-form-array-container\">\r\n\r\n\r\n @for (group of controlGroups(); track $index; let i = $index) {\r\n <div class=\"form-array-item\">\r\n\r\n <div class=\"form-array-content\">\r\n @for (section of config; track $index) {\r\n @if (!section.hidden) {\r\n <div class=\"section\">\r\n <!-- @if (section.caption) {\r\n <div class=\"section-caption\">{{ section.caption }}</div>\r\n } -->\r\n\r\n @for (row of section.rows; track $index) {\r\n <div class=\"row mb15\">\r\n @for (col of row; track $index) {\r\n <div [class]=\"'col-md-' + col.flexSize\">\r\n <core-control-no-form-array [control]=\"col\" [form]=\"group\"\r\n [checkError$]=\"checkError$\"></core-control-no-form-array>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"form-array-toolbar\">\r\n <button type=\"button\" class=\"btn btn-danger btn-sm feather-trash-2\" (click)=\"removeItem(i)\"\r\n [appTooltip]=\"'Remove group'\" [showAnyway]=\"true\"></button>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"form-array-footer\">\r\n <button type=\"button\" class=\"btn btn-success btn-sm feather-file-plus\" (click)=\"addItem()\"\r\n [appTooltip]=\"'Add group'\" [showAnyway]=\"true\"></button>\r\n </div>\r\n</div>", styles: [".core-form-array-container{padding:15px;border:2px dashed #848484}.core-form-array-container .form-array-item{display:flex;align-items:
|
|
25027
|
+
], usesOnChanges: true, ngImport: i0, template: "<div class=\"core-form-array-container\">\r\n\r\n\r\n @for (group of controlGroups(); track $index; let i = $index) {\r\n <div class=\"form-array-item\">\r\n\r\n <div class=\"form-array-content\">\r\n @for (section of config; track $index) {\r\n @if (!section.hidden) {\r\n <div class=\"section\">\r\n <!-- @if (section.caption) {\r\n <div class=\"section-caption\">{{ section.caption }}</div>\r\n } -->\r\n\r\n @for (row of section.rows; track $index) {\r\n <div class=\"row mb15\">\r\n @for (col of row; track $index) {\r\n <div [class]=\"'col-md-' + col.flexSize\">\r\n <core-control-no-form-array [control]=\"col\" [form]=\"group\"\r\n [checkError$]=\"checkError$\"></core-control-no-form-array>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"form-array-toolbar\">\r\n <button type=\"button\" class=\"btn btn-danger btn-sm feather-trash-2\" (click)=\"removeItem(i)\"\r\n [appTooltip]=\"'Remove group'\" [showAnyway]=\"true\"></button>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"form-array-footer\">\r\n <button type=\"button\" class=\"btn btn-success btn-sm feather-file-plus\" (click)=\"addItem()\"\r\n [appTooltip]=\"'Add group'\" [showAnyway]=\"true\"></button>\r\n </div>\r\n</div>", styles: [".core-form-array-container{padding:15px;border:2px dashed #848484}.core-form-array-container .form-array-item{display:flex;align-items:flex-start}.core-form-array-container .form-array-item>*{display:inline-block!important}.core-form-array-container .form-array-item .form-array-content{width:calc(100% - 46px)}.core-form-array-container .form-array-item .form-array-toolbar{width:14px;padding-left:12px;transform:translateY(25px)}\n"], dependencies: [{ kind: "directive", type: TooltipDirective, selector: "[appTooltip]", inputs: ["color", "backgroundColor", "appTooltip", "showAnyway", "position"] }, { kind: "component", type: CoreControlNoFormArrayComponent, selector: "core-control-no-form-array", inputs: ["control", "form", "checkError$", "rangeLimit"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
25055
25028
|
}
|
|
25056
25029
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreFormArrayComponent, decorators: [{
|
|
25057
25030
|
type: Component,
|
|
@@ -25066,7 +25039,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
|
|
|
25066
25039
|
JsonSafePipe,
|
|
25067
25040
|
TooltipDirective,
|
|
25068
25041
|
CoreControlNoFormArrayComponent
|
|
25069
|
-
], template: "<div class=\"core-form-array-container\">\r\n\r\n\r\n @for (group of controlGroups(); track $index; let i = $index) {\r\n <div class=\"form-array-item\">\r\n\r\n <div class=\"form-array-content\">\r\n @for (section of config; track $index) {\r\n @if (!section.hidden) {\r\n <div class=\"section\">\r\n <!-- @if (section.caption) {\r\n <div class=\"section-caption\">{{ section.caption }}</div>\r\n } -->\r\n\r\n @for (row of section.rows; track $index) {\r\n <div class=\"row mb15\">\r\n @for (col of row; track $index) {\r\n <div [class]=\"'col-md-' + col.flexSize\">\r\n <core-control-no-form-array [control]=\"col\" [form]=\"group\"\r\n [checkError$]=\"checkError$\"></core-control-no-form-array>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"form-array-toolbar\">\r\n <button type=\"button\" class=\"btn btn-danger btn-sm feather-trash-2\" (click)=\"removeItem(i)\"\r\n [appTooltip]=\"'Remove group'\" [showAnyway]=\"true\"></button>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"form-array-footer\">\r\n <button type=\"button\" class=\"btn btn-success btn-sm feather-file-plus\" (click)=\"addItem()\"\r\n [appTooltip]=\"'Add group'\" [showAnyway]=\"true\"></button>\r\n </div>\r\n</div>", styles: [".core-form-array-container{padding:15px;border:2px dashed #848484}.core-form-array-container .form-array-item{display:flex;align-items:
|
|
25042
|
+
], template: "<div class=\"core-form-array-container\">\r\n\r\n\r\n @for (group of controlGroups(); track $index; let i = $index) {\r\n <div class=\"form-array-item\">\r\n\r\n <div class=\"form-array-content\">\r\n @for (section of config; track $index) {\r\n @if (!section.hidden) {\r\n <div class=\"section\">\r\n <!-- @if (section.caption) {\r\n <div class=\"section-caption\">{{ section.caption }}</div>\r\n } -->\r\n\r\n @for (row of section.rows; track $index) {\r\n <div class=\"row mb15\">\r\n @for (col of row; track $index) {\r\n <div [class]=\"'col-md-' + col.flexSize\">\r\n <core-control-no-form-array [control]=\"col\" [form]=\"group\"\r\n [checkError$]=\"checkError$\"></core-control-no-form-array>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"form-array-toolbar\">\r\n <button type=\"button\" class=\"btn btn-danger btn-sm feather-trash-2\" (click)=\"removeItem(i)\"\r\n [appTooltip]=\"'Remove group'\" [showAnyway]=\"true\"></button>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"form-array-footer\">\r\n <button type=\"button\" class=\"btn btn-success btn-sm feather-file-plus\" (click)=\"addItem()\"\r\n [appTooltip]=\"'Add group'\" [showAnyway]=\"true\"></button>\r\n </div>\r\n</div>", styles: [".core-form-array-container{padding:15px;border:2px dashed #848484}.core-form-array-container .form-array-item{display:flex;align-items:flex-start}.core-form-array-container .form-array-item>*{display:inline-block!important}.core-form-array-container .form-array-item .form-array-content{width:calc(100% - 46px)}.core-form-array-container .form-array-item .form-array-toolbar{width:14px;padding-left:12px;transform:translateY(25px)}\n"] }]
|
|
25070
25043
|
}], ctorParameters: () => [], propDecorators: { formArray: [{
|
|
25071
25044
|
type: Input,
|
|
25072
25045
|
args: [{ required: true }]
|
|
@@ -31477,7 +31450,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
|
|
|
31477
31450
|
const simpleChatRoutes = [
|
|
31478
31451
|
{
|
|
31479
31452
|
path: '',
|
|
31480
|
-
loadComponent: () => import('./ngx-histaff-alpha-simple-chat.component-
|
|
31453
|
+
loadComponent: () => import('./ngx-histaff-alpha-simple-chat.component-4gnuNHNQ.mjs').then(m => m.SimpleChatComponent)
|
|
31481
31454
|
}
|
|
31482
31455
|
];
|
|
31483
31456
|
|
|
@@ -34824,7 +34797,7 @@ const coreFormDesignRoutes = [
|
|
|
34824
34797
|
},
|
|
34825
34798
|
{
|
|
34826
34799
|
path: ':id',
|
|
34827
|
-
loadComponent: () => import('./ngx-histaff-alpha-core-form-design.component-
|
|
34800
|
+
loadComponent: () => import('./ngx-histaff-alpha-core-form-design.component-DdKhEOxl.mjs').then(function (n) { return n.c; }).then(m => m.CoreFormDesignComponent)
|
|
34828
34801
|
}
|
|
34829
34802
|
];
|
|
34830
34803
|
|
|
@@ -35718,7 +35691,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
|
|
|
35718
35691
|
const coreNavigationTrackerRoutes = [
|
|
35719
35692
|
{
|
|
35720
35693
|
path: '',
|
|
35721
|
-
loadComponent: () => import('./ngx-histaff-alpha-tracker-studio.component-
|
|
35694
|
+
loadComponent: () => import('./ngx-histaff-alpha-tracker-studio.component-BXMxPjuc.mjs').then(m => m.TrackerStudioComponent)
|
|
35722
35695
|
}
|
|
35723
35696
|
];
|
|
35724
35697
|
|
|
@@ -38354,29 +38327,29 @@ const coreWorkflowRoutes = [
|
|
|
38354
38327
|
{
|
|
38355
38328
|
path: 'form-assign/:id',
|
|
38356
38329
|
outlet: "formAssignAux",
|
|
38357
|
-
loadComponent: () => import('./ngx-histaff-alpha-wf-form-assign.component-
|
|
38330
|
+
loadComponent: () => import('./ngx-histaff-alpha-wf-form-assign.component-Q4uvQoJO.mjs').then(m => m.WfFormAssignComponent),
|
|
38358
38331
|
canDeactivate: [CanDeactivateGuard]
|
|
38359
38332
|
}
|
|
38360
38333
|
]
|
|
38361
38334
|
},
|
|
38362
38335
|
{
|
|
38363
38336
|
path: 'db-settings',
|
|
38364
|
-
loadComponent: () => import('./ngx-histaff-alpha-db-settings.component-
|
|
38337
|
+
loadComponent: () => import('./ngx-histaff-alpha-db-settings.component-Bs5Y-dKb.mjs').then(m => m.DbSettingsComponent)
|
|
38365
38338
|
},
|
|
38366
38339
|
{
|
|
38367
38340
|
path: 'workflow-consume',
|
|
38368
|
-
loadComponent: () => import('./ngx-histaff-alpha-core-workflow-consume.component-
|
|
38341
|
+
loadComponent: () => import('./ngx-histaff-alpha-core-workflow-consume.component-2abUPaGQ.mjs').then(m => m.CoreWorkflowConsumeComponent),
|
|
38369
38342
|
children: [
|
|
38370
38343
|
{
|
|
38371
38344
|
path: ':id',
|
|
38372
38345
|
outlet: "workflowConsume",
|
|
38373
|
-
loadComponent: () => import('./ngx-histaff-alpha-live-form.component-
|
|
38346
|
+
loadComponent: () => import('./ngx-histaff-alpha-live-form.component-tNHO021s.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
|
|
38374
38347
|
}
|
|
38375
38348
|
]
|
|
38376
38349
|
},
|
|
38377
38350
|
{
|
|
38378
38351
|
path: 'workflow-consume/:id',
|
|
38379
|
-
loadComponent: () => import('./ngx-histaff-alpha-live-form.component-
|
|
38352
|
+
loadComponent: () => import('./ngx-histaff-alpha-live-form.component-tNHO021s.mjs').then(function (n) { return n.l; }).then(m => m.LiveFormComponent),
|
|
38380
38353
|
},
|
|
38381
38354
|
{
|
|
38382
38355
|
path: 'workflow-group-edit/:id',
|
|
@@ -38386,17 +38359,17 @@ const coreWorkflowRoutes = [
|
|
|
38386
38359
|
},
|
|
38387
38360
|
{
|
|
38388
38361
|
path: 'design/:id',
|
|
38389
|
-
loadChildren: () => import('./ngx-histaff-alpha-design-wrapper.route-
|
|
38362
|
+
loadChildren: () => import('./ngx-histaff-alpha-design-wrapper.route-DpjX7k37.mjs').then(m => m.wfDesignWrapperRoutes),
|
|
38390
38363
|
},
|
|
38391
38364
|
]
|
|
38392
38365
|
},
|
|
38393
38366
|
{
|
|
38394
38367
|
path: 'react/:id',
|
|
38395
|
-
loadComponent: () => import('./ngx-histaff-alpha-wf-instance-step-react.component-
|
|
38368
|
+
loadComponent: () => import('./ngx-histaff-alpha-wf-instance-step-react.component-BLXwhETi.mjs').then(m => m.WfInstanceStepReactComponent)
|
|
38396
38369
|
},
|
|
38397
38370
|
{
|
|
38398
38371
|
path: 'status/:id',
|
|
38399
|
-
loadComponent: () => import('./ngx-histaff-alpha-wf-instance-status.component-
|
|
38372
|
+
loadComponent: () => import('./ngx-histaff-alpha-wf-instance-status.component-D9RhPDwJ.mjs').then(m => m.WfInstanceStatusComponent)
|
|
38400
38373
|
}
|
|
38401
38374
|
];
|
|
38402
38375
|
|
|
@@ -38740,7 +38713,7 @@ class CoreWorkflowListComponent extends BaseComponent {
|
|
|
38740
38713
|
this.doublePointDown.unsubscribe();
|
|
38741
38714
|
}
|
|
38742
38715
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreWorkflowListComponent, deps: [{ token: i1$2.Router }, { token: i1$2.ActivatedRoute }, { token: CoreWorkflowService }, { token: CoreFormDesignService }, { token: AppService }, { token: AlertService }, { token: MultiLanguageService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38743
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: CoreWorkflowListComponent, isStandalone: true, selector: "core-workflow-list", usesInheritance: true, ngImport: i0, template: "<div class=\"core-workflow-list-container\">\r\n\r\n <core-page-header title=\"Workflow List\" [hideButtonGroup]=\"true\"></core-page-header>\r\n\r\n <div class=\"container-fluid\">\r\n\r\n <div class=\"row gx-5 gy-5\" [class.sort-mode]=\"$sortMode()\">\r\n\r\n <div class=\"col-md-12 no-padding\">\r\n <core-tabs [headers]=\"['Drafts', 'Published']\" (onHeaderClick)=\"onTabClick($event)\" />\r\n </div>\r\n\r\n <div class=\"col-md-12 no-padding\">\r\n @if ($loading()) {\r\n <core-terminal-spinner />\r\n }\r\n <div class=\"WorkflowList_operations d-flex d-flex-between\">\r\n <div class=\"WorkflowList_operationsLeft\">\r\n <input type=\"text\" placeholder=\"Search\" class=\"form-control\" [class.d-none]=\"$sortMode()\"\r\n (input)=\"onSearchChange($event)\">\r\n </div>\r\n <div class=\"WorkflowList_operationsRight\">\r\n <button class=\"btn btn-secondary\" (click)=\"dbSchemaSettings()\" [class.d-none]=\"$sortMode()\">Db\r\n Settings</button>\r\n <button class=\"btn btn-secondary\" (click)=\"createWorkflowGroup()\"\r\n [class.d-none]=\"$sortMode()\">Create Group</button>\r\n <button class=\"btn btn-secondary\" (click)=\"togglerSortMode()\">{{ $sortMode() ? 'Expand' : 'Sort'\r\n }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"group-list p-relative\">\r\n\r\n @for (group of coreWorkflowService.$allGroups(); track group.id) {\r\n\r\n @if ($sortMode()) {\r\n\r\n <div class=\"WorkflowGroup card sort-mode\" [attr.data-id]=\"group.id\" dragReorder\r\n (updateList)=\"onListReorderUpdate($event)\">\r\n\r\n <div class=\"WorkflowGroup_header d-flex d-flex-between\">\r\n <div class=\"WorkflowGroup_headerTitle\">\r\n {{ group?.name }}\r\n </div>\r\n\r\n <div class=\"WorkflowGroup_nameOperations for-dragging d-flex d-flex-end\">\r\n\r\n <div class=\"WorkflowGroup_itemEdit pointer\">\r\n <i class=\"feather-move\"></i>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n } @else {\r\n\r\n <div class=\"WorkflowGroup card\">\r\n\r\n <div class=\"WorkflowGroup_header d-flex d-flex-between\">\r\n\r\n <div class=\"WorkflowGroup_headerTitle\">\r\n {{ group?.name }}\r\n </div>\r\n\r\n <div class=\"WorkflowGroup_nameOperations d-flex d-flex-end\">\r\n\r\n <div class=\"WorkflowGroup_itemEdit pointer\">\r\n <i class=\"feather-edit\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_itemEditI18n pointer\">\r\n <i class=\"feather-globe\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_deleteButton pointer\">\r\n <i class=\"feather-trash-2\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_creatWorkflowButton pointer\">\r\n <i class=\"feather-plus\" (click)=\"createWorkflow(group.id)\"></i>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"Workflows\">\r\n @for (flow of group.wfWorkflows; track $index) {\r\n <div class=\"Workflow pointer\" (pointerdown)=\"onPointerdown(flow, group)\">\r\n <div class=\"Workflow_code\">\r\n <span [appTooltip]=\"flow.description\" [position]=\"'right'\" [appTooltip]=\"flow.name\" [showAnyway]=\"true\">\r\n {{ flow.name }}\r\n </span>\r\n </div>\r\n @if (isDevMode) {\r\n <!-- <div class=\"workflow-id\">\r\n {{ flow.id }}\r\n </div> -->\r\n }\r\n <div class=\"Workflow_operationsRight\">\r\n <div class=\"Workflow_processDesignLocker pointer\" (click)=\"toggleLock(flow, group)\"\r\n [appTooltip]=\"'Process Design'\">\r\n @if (flow.locked) {\r\n <i class=\"feather-lock\"></i>\r\n } @else {\r\n <i class=\"feather-unlock\"></i>\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"Workflow_processDesignEdit pointer\" (click)=\"designWorkflow(flow, group)\"\r\n [appTooltip]=\"'Process Design'\">\r\n <i class=\"feather-git-pull-request\"></i>\r\n </div>\r\n <div class=\"Workflow_processDesignDelete pointer\" (click)=\"deleteWorkflow(flow)\"\r\n [appTooltip]=\"'Delete'\">\r\n <i class=\"feather-trash\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n\r\n </div>\r\n\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <router-outlet name=\"formAssignAux\"></router-outlet>\r\n\r\n</div>", styles: [".core-workflow-list-container .container-fluid{max-width:1000px}.core-workflow-list-container .row>*{padding:0}.core-workflow-list-container .row.sort-mode{--bs-gutter-y: 1rem}.core-workflow-list-container .WorkflowList_operations .WorkflowList_operationsLeft{width:50%}.core-workflow-list-container .WorkflowList_operations .WorkflowList_operationsLeft input{width:100%}.core-workflow-list-container .WorkflowList_operations .WorkflowList_operationsRight button{margin-left:12px;border-radius:0}.core-workflow-list-container .WorkflowGroup{padding-left:0!important;padding-right:0!important;border-radius:0;margin-bottom:15px}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header{height:50px;color:#fff;background-color:gray}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_headerTitle{padding-left:15px}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_nameOperations>div{width:25px;height:25px;margin-left:8px}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_nameOperations>div>i{font-size:18px;color:#fff}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_nameOperations.for-dragging>div>i{color:gray}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow{display:flex;align-items:center;justify-content:space-between;height:50px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow:hover{background-color:#d3d3d3}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_code{display:flex;align-items:center;justify-content:flex-start;padding-left:15px;height:35px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_code i{display:inline-block;color:gray;font-size:18px;margin-right:8px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_code i.af-form-assigned{color:#dd5f2a}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .workflow-id{width:300px;font-size:13px;display:flex;align-items:center;justify-content:flex-start;font-family:Fira Code,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 5px;height:35px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_operationsRight{display:flex;align-items:center;justify-content:flex-end;color:gray}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_operationsRight>div{width:25px;height:25px;margin-left:8px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_operationsRight>div>i{font-size:18px}.core-workflow-list-container .WorkflowGroup.sort-mode{height:50px;cursor:grab}.core-workflow-list-container .WorkflowGroup.sort-mode .WorkflowGroup_header{background-color:#fff;color:gray}.core-workflow-list-container .pointer-none{pointer-events:none}.core-workflow-list-container .p-relative{position:relative}\n"], dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { 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: DragReorderDirective, selector: "[dragReorder]", inputs: ["item"], outputs: ["updateList"] }, { kind: "component", type: CoreTabsComponent, selector: "core-tabs", inputs: ["headers", "contents", "headerTools", "height", "headerLineHeight"], outputs: ["onHeaderClick", "onToolItemClick"] }, { kind: "component", type: CoreTerminalSpinnerComponent, selector: "core-terminal-spinner" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
38716
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.5", type: CoreWorkflowListComponent, isStandalone: true, selector: "core-workflow-list", usesInheritance: true, ngImport: i0, template: "<div class=\"core-workflow-list-container\">\r\n\r\n <core-page-header title=\"Workflow List\" [hideButtonGroup]=\"true\"></core-page-header>\r\n\r\n <div class=\"container-fluid\">\r\n\r\n <div class=\"row gx-5 gy-5\" [class.sort-mode]=\"$sortMode()\">\r\n\r\n <div class=\"col-md-12 no-padding\">\r\n <core-tabs [headers]=\"['Drafts', 'Published']\" (onHeaderClick)=\"onTabClick($event)\" />\r\n </div>\r\n\r\n <div class=\"col-md-12 no-padding\">\r\n @if ($loading()) {\r\n <core-terminal-spinner />\r\n }\r\n <div class=\"WorkflowList_operations d-flex d-flex-between\">\r\n <div class=\"WorkflowList_operationsLeft\">\r\n <input type=\"text\" placeholder=\"Search\" class=\"form-control\" [class.d-none]=\"$sortMode()\"\r\n (input)=\"onSearchChange($event)\">\r\n </div>\r\n <div class=\"WorkflowList_operationsRight\">\r\n <button class=\"btn btn-secondary\" (click)=\"dbSchemaSettings()\" [class.d-none]=\"$sortMode()\">Db\r\n Settings</button>\r\n <button class=\"btn btn-secondary\" (click)=\"createWorkflowGroup()\"\r\n [class.d-none]=\"$sortMode()\">Create Group</button>\r\n <button class=\"btn btn-secondary\" (click)=\"togglerSortMode()\">{{ $sortMode() ? 'Expand' : 'Sort'\r\n }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"group-list p-relative\">\r\n\r\n @for (group of coreWorkflowService.$allGroups(); track group.id) {\r\n\r\n @if ($sortMode()) {\r\n\r\n <div class=\"WorkflowGroup card sort-mode\" [attr.data-id]=\"group.id\" dragReorder\r\n (updateList)=\"onListReorderUpdate($event)\">\r\n\r\n <div class=\"WorkflowGroup_header d-flex d-flex-between\">\r\n <div class=\"WorkflowGroup_headerTitle\">\r\n {{ group?.name }}\r\n </div>\r\n\r\n <div class=\"WorkflowGroup_nameOperations for-dragging d-flex d-flex-end\">\r\n\r\n <div class=\"WorkflowGroup_itemEdit pointer\">\r\n <i class=\"feather-move\"></i>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n } @else {\r\n\r\n <div class=\"WorkflowGroup card\">\r\n\r\n <div class=\"WorkflowGroup_header d-flex d-flex-between\">\r\n\r\n <div class=\"WorkflowGroup_headerTitle\">\r\n {{ group?.name }}\r\n </div>\r\n\r\n <div class=\"WorkflowGroup_nameOperations d-flex d-flex-end\">\r\n\r\n <div class=\"WorkflowGroup_itemEdit pointer\" [appTooltip]=\"'Edit'\" [showAnyway]=\"true\">\r\n <i class=\"feather-edit\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_itemEditI18n pointer\" [appTooltip]=\"'Multi-language integration'\" [showAnyway]=\"true\">\r\n <i class=\"feather-globe\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_deleteButton pointer\" [appTooltip]=\"'Delete'\" [showAnyway]=\"true\">\r\n <i class=\"feather-trash-2\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_creatWorkflowButton pointer\" [appTooltip]=\"'Create'\" [showAnyway]=\"true\">\r\n <i class=\"feather-plus\" (click)=\"createWorkflow(group.id)\"></i>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"Workflows\">\r\n @for (flow of group.wfWorkflows; track $index) {\r\n <div class=\"Workflow pointer\" (pointerdown)=\"onPointerdown(flow, group)\">\r\n <div class=\"Workflow_code\">\r\n <span [appTooltip]=\"flow.description\" [position]=\"'right'\" [appTooltip]=\"flow.name\" [showAnyway]=\"true\">\r\n {{ flow.name }}\r\n </span>\r\n </div>\r\n @if (isDevMode) {\r\n <!-- <div class=\"workflow-id\">\r\n {{ flow.id }}\r\n </div> -->\r\n }\r\n <div class=\"Workflow_operationsRight\">\r\n <div class=\"Workflow_processDesignLocker pointer\" (click)=\"toggleLock(flow, group)\">\r\n @if (flow.locked) {\r\n <i class=\"feather-lock\" [appTooltip]=\"'Lock'\" [showAnyway]=\"true\"></i>\r\n } @else {\r\n <i class=\"feather-unlock\" [appTooltip]=\"'Unlock'\" [showAnyway]=\"true\"></i>\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"Workflow_processDesignEdit pointer\" (click)=\"designWorkflow(flow, group)\"\r\n [appTooltip]=\"'Process Design'\">\r\n <i class=\"feather-git-pull-request\"></i>\r\n </div>\r\n <div class=\"Workflow_processDesignDelete pointer\" (click)=\"deleteWorkflow(flow)\"\r\n [appTooltip]=\"'Delete'\">\r\n <i class=\"feather-trash\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n\r\n </div>\r\n\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <router-outlet name=\"formAssignAux\"></router-outlet>\r\n\r\n</div>", styles: [".core-workflow-list-container .container-fluid{max-width:1000px}.core-workflow-list-container .row>*{padding:0}.core-workflow-list-container .row.sort-mode{--bs-gutter-y: 1rem}.core-workflow-list-container .WorkflowList_operations .WorkflowList_operationsLeft{width:50%}.core-workflow-list-container .WorkflowList_operations .WorkflowList_operationsLeft input{width:100%}.core-workflow-list-container .WorkflowList_operations .WorkflowList_operationsRight button{margin-left:12px;border-radius:0}.core-workflow-list-container .WorkflowGroup{padding-left:0!important;padding-right:0!important;border-radius:0;margin-bottom:15px}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header{height:50px;color:#fff;background-color:gray}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_headerTitle{padding-left:15px}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_nameOperations>div{width:25px;height:25px;margin-left:8px}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_nameOperations>div>i{font-size:18px;color:#fff}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_nameOperations.for-dragging>div>i{color:gray}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow{display:flex;align-items:center;justify-content:space-between;height:50px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow:hover{background-color:#d3d3d3}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_code{display:flex;align-items:center;justify-content:flex-start;padding-left:15px;height:35px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_code i{display:inline-block;color:gray;font-size:18px;margin-right:8px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_code i.af-form-assigned{color:#dd5f2a}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .workflow-id{width:300px;font-size:13px;display:flex;align-items:center;justify-content:flex-start;font-family:Fira Code,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 5px;height:35px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_operationsRight{display:flex;align-items:center;justify-content:flex-end;color:gray}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_operationsRight>div{width:25px;height:25px;margin-left:8px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_operationsRight>div>i{font-size:18px}.core-workflow-list-container .WorkflowGroup.sort-mode{height:50px;cursor:grab}.core-workflow-list-container .WorkflowGroup.sort-mode .WorkflowGroup_header{background-color:#fff;color:gray}.core-workflow-list-container .pointer-none{pointer-events:none}.core-workflow-list-container .p-relative{position:relative}\n"], dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { 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: DragReorderDirective, selector: "[dragReorder]", inputs: ["item"], outputs: ["updateList"] }, { kind: "component", type: CoreTabsComponent, selector: "core-tabs", inputs: ["headers", "contents", "headerTools", "height", "headerLineHeight"], outputs: ["onHeaderClick", "onToolItemClick"] }, { kind: "component", type: CoreTerminalSpinnerComponent, selector: "core-terminal-spinner" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
38744
38717
|
}
|
|
38745
38718
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImport: i0, type: CoreWorkflowListComponent, decorators: [{
|
|
38746
38719
|
type: Component,
|
|
@@ -38751,7 +38724,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
|
|
|
38751
38724
|
DragReorderDirective,
|
|
38752
38725
|
CoreTabsComponent,
|
|
38753
38726
|
CoreTerminalSpinnerComponent
|
|
38754
|
-
], template: "<div class=\"core-workflow-list-container\">\r\n\r\n <core-page-header title=\"Workflow List\" [hideButtonGroup]=\"true\"></core-page-header>\r\n\r\n <div class=\"container-fluid\">\r\n\r\n <div class=\"row gx-5 gy-5\" [class.sort-mode]=\"$sortMode()\">\r\n\r\n <div class=\"col-md-12 no-padding\">\r\n <core-tabs [headers]=\"['Drafts', 'Published']\" (onHeaderClick)=\"onTabClick($event)\" />\r\n </div>\r\n\r\n <div class=\"col-md-12 no-padding\">\r\n @if ($loading()) {\r\n <core-terminal-spinner />\r\n }\r\n <div class=\"WorkflowList_operations d-flex d-flex-between\">\r\n <div class=\"WorkflowList_operationsLeft\">\r\n <input type=\"text\" placeholder=\"Search\" class=\"form-control\" [class.d-none]=\"$sortMode()\"\r\n (input)=\"onSearchChange($event)\">\r\n </div>\r\n <div class=\"WorkflowList_operationsRight\">\r\n <button class=\"btn btn-secondary\" (click)=\"dbSchemaSettings()\" [class.d-none]=\"$sortMode()\">Db\r\n Settings</button>\r\n <button class=\"btn btn-secondary\" (click)=\"createWorkflowGroup()\"\r\n [class.d-none]=\"$sortMode()\">Create Group</button>\r\n <button class=\"btn btn-secondary\" (click)=\"togglerSortMode()\">{{ $sortMode() ? 'Expand' : 'Sort'\r\n }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"group-list p-relative\">\r\n\r\n @for (group of coreWorkflowService.$allGroups(); track group.id) {\r\n\r\n @if ($sortMode()) {\r\n\r\n <div class=\"WorkflowGroup card sort-mode\" [attr.data-id]=\"group.id\" dragReorder\r\n (updateList)=\"onListReorderUpdate($event)\">\r\n\r\n <div class=\"WorkflowGroup_header d-flex d-flex-between\">\r\n <div class=\"WorkflowGroup_headerTitle\">\r\n {{ group?.name }}\r\n </div>\r\n\r\n <div class=\"WorkflowGroup_nameOperations for-dragging d-flex d-flex-end\">\r\n\r\n <div class=\"WorkflowGroup_itemEdit pointer\">\r\n <i class=\"feather-move\"></i>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n } @else {\r\n\r\n <div class=\"WorkflowGroup card\">\r\n\r\n <div class=\"WorkflowGroup_header d-flex d-flex-between\">\r\n\r\n <div class=\"WorkflowGroup_headerTitle\">\r\n {{ group?.name }}\r\n </div>\r\n\r\n <div class=\"WorkflowGroup_nameOperations d-flex d-flex-end\">\r\n\r\n <div class=\"WorkflowGroup_itemEdit pointer\">\r\n <i class=\"feather-edit\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_itemEditI18n pointer\">\r\n <i class=\"feather-globe\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_deleteButton pointer\">\r\n <i class=\"feather-trash-2\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_creatWorkflowButton pointer\">\r\n <i class=\"feather-plus\" (click)=\"createWorkflow(group.id)\"></i>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"Workflows\">\r\n @for (flow of group.wfWorkflows; track $index) {\r\n <div class=\"Workflow pointer\" (pointerdown)=\"onPointerdown(flow, group)\">\r\n <div class=\"Workflow_code\">\r\n <span [appTooltip]=\"flow.description\" [position]=\"'right'\" [appTooltip]=\"flow.name\" [showAnyway]=\"true\">\r\n {{ flow.name }}\r\n </span>\r\n </div>\r\n @if (isDevMode) {\r\n <!-- <div class=\"workflow-id\">\r\n {{ flow.id }}\r\n </div> -->\r\n }\r\n <div class=\"Workflow_operationsRight\">\r\n <div class=\"Workflow_processDesignLocker pointer\" (click)=\"toggleLock(flow, group)\"
|
|
38727
|
+
], template: "<div class=\"core-workflow-list-container\">\r\n\r\n <core-page-header title=\"Workflow List\" [hideButtonGroup]=\"true\"></core-page-header>\r\n\r\n <div class=\"container-fluid\">\r\n\r\n <div class=\"row gx-5 gy-5\" [class.sort-mode]=\"$sortMode()\">\r\n\r\n <div class=\"col-md-12 no-padding\">\r\n <core-tabs [headers]=\"['Drafts', 'Published']\" (onHeaderClick)=\"onTabClick($event)\" />\r\n </div>\r\n\r\n <div class=\"col-md-12 no-padding\">\r\n @if ($loading()) {\r\n <core-terminal-spinner />\r\n }\r\n <div class=\"WorkflowList_operations d-flex d-flex-between\">\r\n <div class=\"WorkflowList_operationsLeft\">\r\n <input type=\"text\" placeholder=\"Search\" class=\"form-control\" [class.d-none]=\"$sortMode()\"\r\n (input)=\"onSearchChange($event)\">\r\n </div>\r\n <div class=\"WorkflowList_operationsRight\">\r\n <button class=\"btn btn-secondary\" (click)=\"dbSchemaSettings()\" [class.d-none]=\"$sortMode()\">Db\r\n Settings</button>\r\n <button class=\"btn btn-secondary\" (click)=\"createWorkflowGroup()\"\r\n [class.d-none]=\"$sortMode()\">Create Group</button>\r\n <button class=\"btn btn-secondary\" (click)=\"togglerSortMode()\">{{ $sortMode() ? 'Expand' : 'Sort'\r\n }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"group-list p-relative\">\r\n\r\n @for (group of coreWorkflowService.$allGroups(); track group.id) {\r\n\r\n @if ($sortMode()) {\r\n\r\n <div class=\"WorkflowGroup card sort-mode\" [attr.data-id]=\"group.id\" dragReorder\r\n (updateList)=\"onListReorderUpdate($event)\">\r\n\r\n <div class=\"WorkflowGroup_header d-flex d-flex-between\">\r\n <div class=\"WorkflowGroup_headerTitle\">\r\n {{ group?.name }}\r\n </div>\r\n\r\n <div class=\"WorkflowGroup_nameOperations for-dragging d-flex d-flex-end\">\r\n\r\n <div class=\"WorkflowGroup_itemEdit pointer\">\r\n <i class=\"feather-move\"></i>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n } @else {\r\n\r\n <div class=\"WorkflowGroup card\">\r\n\r\n <div class=\"WorkflowGroup_header d-flex d-flex-between\">\r\n\r\n <div class=\"WorkflowGroup_headerTitle\">\r\n {{ group?.name }}\r\n </div>\r\n\r\n <div class=\"WorkflowGroup_nameOperations d-flex d-flex-end\">\r\n\r\n <div class=\"WorkflowGroup_itemEdit pointer\" [appTooltip]=\"'Edit'\" [showAnyway]=\"true\">\r\n <i class=\"feather-edit\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_itemEditI18n pointer\" [appTooltip]=\"'Multi-language integration'\" [showAnyway]=\"true\">\r\n <i class=\"feather-globe\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_deleteButton pointer\" [appTooltip]=\"'Delete'\" [showAnyway]=\"true\">\r\n <i class=\"feather-trash-2\"></i>\r\n </div>\r\n <div class=\"WorkflowGroup_creatWorkflowButton pointer\" [appTooltip]=\"'Create'\" [showAnyway]=\"true\">\r\n <i class=\"feather-plus\" (click)=\"createWorkflow(group.id)\"></i>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"Workflows\">\r\n @for (flow of group.wfWorkflows; track $index) {\r\n <div class=\"Workflow pointer\" (pointerdown)=\"onPointerdown(flow, group)\">\r\n <div class=\"Workflow_code\">\r\n <span [appTooltip]=\"flow.description\" [position]=\"'right'\" [appTooltip]=\"flow.name\" [showAnyway]=\"true\">\r\n {{ flow.name }}\r\n </span>\r\n </div>\r\n @if (isDevMode) {\r\n <!-- <div class=\"workflow-id\">\r\n {{ flow.id }}\r\n </div> -->\r\n }\r\n <div class=\"Workflow_operationsRight\">\r\n <div class=\"Workflow_processDesignLocker pointer\" (click)=\"toggleLock(flow, group)\">\r\n @if (flow.locked) {\r\n <i class=\"feather-lock\" [appTooltip]=\"'Lock'\" [showAnyway]=\"true\"></i>\r\n } @else {\r\n <i class=\"feather-unlock\" [appTooltip]=\"'Unlock'\" [showAnyway]=\"true\"></i>\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"Workflow_processDesignEdit pointer\" (click)=\"designWorkflow(flow, group)\"\r\n [appTooltip]=\"'Process Design'\">\r\n <i class=\"feather-git-pull-request\"></i>\r\n </div>\r\n <div class=\"Workflow_processDesignDelete pointer\" (click)=\"deleteWorkflow(flow)\"\r\n [appTooltip]=\"'Delete'\">\r\n <i class=\"feather-trash\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n\r\n </div>\r\n\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <router-outlet name=\"formAssignAux\"></router-outlet>\r\n\r\n</div>", styles: [".core-workflow-list-container .container-fluid{max-width:1000px}.core-workflow-list-container .row>*{padding:0}.core-workflow-list-container .row.sort-mode{--bs-gutter-y: 1rem}.core-workflow-list-container .WorkflowList_operations .WorkflowList_operationsLeft{width:50%}.core-workflow-list-container .WorkflowList_operations .WorkflowList_operationsLeft input{width:100%}.core-workflow-list-container .WorkflowList_operations .WorkflowList_operationsRight button{margin-left:12px;border-radius:0}.core-workflow-list-container .WorkflowGroup{padding-left:0!important;padding-right:0!important;border-radius:0;margin-bottom:15px}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header{height:50px;color:#fff;background-color:gray}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_headerTitle{padding-left:15px}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_nameOperations>div{width:25px;height:25px;margin-left:8px}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_nameOperations>div>i{font-size:18px;color:#fff}.core-workflow-list-container .WorkflowGroup .WorkflowGroup_header .WorkflowGroup_nameOperations.for-dragging>div>i{color:gray}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow{display:flex;align-items:center;justify-content:space-between;height:50px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow:hover{background-color:#d3d3d3}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_code{display:flex;align-items:center;justify-content:flex-start;padding-left:15px;height:35px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_code i{display:inline-block;color:gray;font-size:18px;margin-right:8px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_code i.af-form-assigned{color:#dd5f2a}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .workflow-id{width:300px;font-size:13px;display:flex;align-items:center;justify-content:flex-start;font-family:Fira Code,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 5px;height:35px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_operationsRight{display:flex;align-items:center;justify-content:flex-end;color:gray}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_operationsRight>div{width:25px;height:25px;margin-left:8px}.core-workflow-list-container .WorkflowGroup .Workflows .Workflow .Workflow_operationsRight>div>i{font-size:18px}.core-workflow-list-container .WorkflowGroup.sort-mode{height:50px;cursor:grab}.core-workflow-list-container .WorkflowGroup.sort-mode .WorkflowGroup_header{background-color:#fff;color:gray}.core-workflow-list-container .pointer-none{pointer-events:none}.core-workflow-list-container .p-relative{position:relative}\n"] }]
|
|
38755
38728
|
}], ctorParameters: () => [{ type: i1$2.Router }, { type: i1$2.ActivatedRoute }, { type: CoreWorkflowService }, { type: CoreFormDesignService }, { type: AppService }, { type: AlertService }, { type: MultiLanguageService }] });
|
|
38756
38729
|
|
|
38757
38730
|
var coreWorkflowList_component = /*#__PURE__*/Object.freeze({
|
|
@@ -40925,4 +40898,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
|
|
|
40925
40898
|
*/
|
|
40926
40899
|
|
|
40927
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 };
|
|
40928
|
-
//# sourceMappingURL=ngx-histaff-alpha-ngx-histaff-alpha-
|
|
40901
|
+
//# sourceMappingURL=ngx-histaff-alpha-ngx-histaff-alpha-B4jY1IDY.mjs.map
|