eiam-user-preference 0.0.84 → 0.0.86
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/dist/cjs/eiam-user-preference.cjs.entry.js +34 -15
- package/dist/cjs/eiam-user-preference.cjs.js +1 -1
- package/dist/cjs/eiam-user-preference.entry.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/my-component.cjs.entry.js +1 -1
- package/dist/collection/components/eiam-user-preference/eiam-user-preference.js +34 -16
- package/dist/collection/components/eiam-user-preference/eiam-user-preference.js.map +1 -1
- package/dist/collection/components/my-component/my-component.js +1 -1
- package/dist/components/eiam-user-preference.js +34 -16
- package/dist/components/eiam-user-preference.js.map +1 -1
- package/dist/components/my-component.js +1 -1
- package/dist/eiam-user-preference/eiam-user-preference.entry.esm.js.map +1 -1
- package/dist/eiam-user-preference/eiam-user-preference.esm.js +1 -1
- package/dist/eiam-user-preference/{p-0390770c.entry.js → p-711eca4f.entry.js} +2 -2
- package/dist/eiam-user-preference/p-711eca4f.entry.js.map +1 -0
- package/dist/eiam-user-preference/p-f8571c93.entry.js +2 -0
- package/dist/esm/eiam-user-preference.entry.js +34 -15
- package/dist/esm/eiam-user-preference.entry.js.map +1 -1
- package/dist/esm/eiam-user-preference.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/my-component.entry.js +1 -1
- package/dist/types/components/eiam-user-preference/eiam-user-preference.d.ts +1 -1
- package/package.json +1 -1
- package/dist/eiam-user-preference/p-0390770c.entry.js.map +0 -1
- package/dist/eiam-user-preference/p-240b44d5.entry.js +0 -2
- /package/dist/eiam-user-preference/{p-240b44d5.entry.js.map → p-f8571c93.entry.js.map} +0 -0
|
@@ -25,7 +25,7 @@ const MyComponent = class {
|
|
|
25
25
|
return index$1.format(this.first, this.middle, this.last);
|
|
26
26
|
}
|
|
27
27
|
render() {
|
|
28
|
-
return index.h("div", { key: '
|
|
28
|
+
return index.h("div", { key: '9ba74718fd3048e26b15a288d6736ac911c739de' }, "Hello, World! I'm ", this.getText());
|
|
29
29
|
}
|
|
30
30
|
};
|
|
31
31
|
MyComponent.style = myComponentCss;
|
|
@@ -44,7 +44,6 @@ export class EiamUserPreference {
|
|
|
44
44
|
apiUrl;
|
|
45
45
|
tempSelectedPage = { pageId: null, name: '' };
|
|
46
46
|
tempApplicationId = null;
|
|
47
|
-
isEditingPage = false;
|
|
48
47
|
async watchChanges() {
|
|
49
48
|
await this.fetchInitiateValue();
|
|
50
49
|
}
|
|
@@ -196,21 +195,43 @@ export class EiamUserPreference {
|
|
|
196
195
|
const query = this.pageSearchQuery.toLowerCase();
|
|
197
196
|
return this.pages.filter(page => page.name.toLowerCase().includes(query));
|
|
198
197
|
}
|
|
198
|
+
// changeApplication(e: Event) {
|
|
199
|
+
// const selectedId = (e.target as HTMLSelectElement).value;
|
|
200
|
+
// this.pageSearchQuery = ''; // ✅ reset search
|
|
201
|
+
// this.isPageDropdownOpen = false;
|
|
202
|
+
// this.selectedPage = { pageId: null, name: '' };
|
|
203
|
+
// if (selectedId) {
|
|
204
|
+
// this.applicationId = selectedId;
|
|
205
|
+
// // console.log(this.applicationId, 'this.applicationId on change');
|
|
206
|
+
// this.getPagesSApplications();
|
|
207
|
+
// } else {
|
|
208
|
+
// this.applicationId = null;
|
|
209
|
+
// }
|
|
210
|
+
// }
|
|
199
211
|
changeApplication(e) {
|
|
200
212
|
const selectedId = e.target.value;
|
|
201
|
-
this.pageSearchQuery = '';
|
|
213
|
+
this.pageSearchQuery = '';
|
|
202
214
|
this.isPageDropdownOpen = false;
|
|
203
|
-
this.selectedPage = { pageId: null, name: '' };
|
|
204
215
|
this.pages = [];
|
|
216
|
+
// reset only temp selection, not the saved one
|
|
217
|
+
this.tempSelectedPage = { pageId: null, name: '' };
|
|
205
218
|
if (selectedId) {
|
|
206
219
|
this.applicationId = selectedId;
|
|
207
|
-
// console.log(this.applicationId, 'this.applicationId on change');
|
|
208
220
|
this.getPagesSApplications();
|
|
209
221
|
}
|
|
210
222
|
else {
|
|
211
223
|
this.applicationId = null;
|
|
212
224
|
}
|
|
213
225
|
}
|
|
226
|
+
confirmPageSelection() {
|
|
227
|
+
// Apply temp to actual
|
|
228
|
+
this.selectedPage = { ...this.tempSelectedPage };
|
|
229
|
+
this.userPreferences.defaultLandingPageId = this.tempSelectedPage.pageId?.toString();
|
|
230
|
+
this.pageSearchQuery = this.tempSelectedPage.name || '';
|
|
231
|
+
this.pages = [];
|
|
232
|
+
this.isPageDropdownOpen = false;
|
|
233
|
+
this.isPageModalOpen = false;
|
|
234
|
+
}
|
|
214
235
|
async getPagesSApplications() {
|
|
215
236
|
try {
|
|
216
237
|
const response = await fetch(`${this.apiUrl}/api/Pages/GetPages`, {
|
|
@@ -308,22 +329,21 @@ export class EiamUserPreference {
|
|
|
308
329
|
// }
|
|
309
330
|
togglePageModal() {
|
|
310
331
|
if (!this.isPageModalOpen) {
|
|
311
|
-
// Opening
|
|
332
|
+
// Opening - save current values to temp
|
|
312
333
|
this.tempSelectedPage = { ...this.selectedPage };
|
|
313
334
|
this.tempApplicationId = this.applicationId;
|
|
314
335
|
this.pageSearchQuery = this.selectedPage?.name || '';
|
|
315
|
-
this.isPageDropdownOpen = false;
|
|
316
|
-
// Load pages for current application
|
|
317
336
|
if (this.applicationId) {
|
|
318
|
-
this.getPagesSApplications();
|
|
337
|
+
this.getPagesSApplications(); // load pages for current app
|
|
319
338
|
}
|
|
320
339
|
}
|
|
321
340
|
else {
|
|
322
|
-
// Closing
|
|
341
|
+
// Closing WITHOUT saving - restore previous values
|
|
323
342
|
this.applicationId = this.tempApplicationId;
|
|
324
343
|
this.selectedPage = { ...this.tempSelectedPage };
|
|
325
344
|
this.pageSearchQuery = this.tempSelectedPage?.name || '';
|
|
326
345
|
this.pages = [];
|
|
346
|
+
this.isPageDropdownOpen = false;
|
|
327
347
|
}
|
|
328
348
|
this.isPageModalOpen = !this.isPageModalOpen;
|
|
329
349
|
}
|
|
@@ -333,11 +353,10 @@ export class EiamUserPreference {
|
|
|
333
353
|
// this.togglePageModal(); // Close the page selection modal
|
|
334
354
|
// }
|
|
335
355
|
selectPage(page) {
|
|
336
|
-
|
|
337
|
-
this.
|
|
356
|
+
// Only update temp, not actual yet
|
|
357
|
+
this.tempSelectedPage = { pageId: page.pageId, name: page.name };
|
|
338
358
|
this.pageSearchQuery = page.name;
|
|
339
359
|
this.isPageDropdownOpen = false;
|
|
340
|
-
this.isPageModalOpen = false; // close modal
|
|
341
360
|
}
|
|
342
361
|
get pagedPages() {
|
|
343
362
|
const start = (this.currentPage - 1) * this.pageSize;
|
|
@@ -348,17 +367,17 @@ export class EiamUserPreference {
|
|
|
348
367
|
return Math.ceil(this.pages.length / this.pageSize);
|
|
349
368
|
}
|
|
350
369
|
render() {
|
|
351
|
-
return (h(Host, { key: '06102fdd3abedc9c67454cf1a8d8f5cf40e4d376' }, h("div", { key: 'f6e50d631e8389d8b5fb6fac3d4444ae72107496', class: "container" }, h("svg", { key: 'd82bc407c5a594e121aac87a91e63fda6d9f73a9', onClick: () => this.toggleModal(), xmlns: "http://www.w3.org/2000/svg", width: "28px", height: "28px", viewBox: "0 0 24 24", style: { cursor: 'pointer' } }, h("g", { key: '3ed40738cadd77d5e9a59cf67cde7ba8e3c1b9f7', stroke: "none", fill: "none" }, h("rect", { key: '5601199e58375b4d926f2192bee24eb9f378b760', x: "0", y: "0", width: "24", height: "24" }), h("rect", { key: '464a32d486e68649ccd8a5cad67f529d4c1bde99', fill: "#008fc7", x: "4", y: "4", width: "7", height: "7", rx: "1.5" }), h("path", { key: 'b252ef0f83ba598b11b37d595d5d34c35742534e', d: "M5.5,13 L9.5,13 C10.3284271,13 11,13.6715729 11,14.5 L11,18.5 C11,19.3284271 10.3284271,20 9.5,20 L5.5,20 C4.67157288,20 4,19.3284271 4,18.5 L4,14.5 C4,13.6715729 4.67157288,13 5.5,13 Z M14.5,4 L18.5,4 C19.3284271,4 20,4.67157288 20,5.5 L20,9.5 C20,10.3284271 19.3284271,11 18.5,11 L14.5,11 C13.6715729,11 13,10.3284271 13,9.5 L13,5.5 C13,4.67157288 13.6715729,4 14.5,4 Z M14.5,13 L18.5,13 C19.3284271,13 20,13.6715729 20,14.5 L20,18.5 C20,19.3284271 19.3284271,20 18.5,20 L14.5,20 C13.6715729,20 13,19.3284271 13,18.5 L13,14.5 C13,13.6715729 13.6715729,13 14.5,13 Z", fill: "#008fc7", opacity: "0.3" }))), this.isModalOpen && (h("div", { key: '092a28c1e436ee34abbf169192acf9e37e1466b4', class: "kt-quick-panel kt-quick-panel--on" }, h("a", { key: 'a766bf55ae711d926f153f1193200f7758beb150', onClick: () => this.toggleModal(), id: "kt_quick_panel_close_btn", class: "kt-quick-panel__close" }, h("svg", { key: '268ddc45bebd5a4532f9e8ef94861af96d583646', xmlns: "http://www.w3.org/2000/svg", width: "25px", height: "25px", viewBox: "0 0 24 24", fill: "none" }, h("g", { key: '70f62bbe184f933cc1d2ce52a3457d852ba904c4', id: "Menu / Close_SM" }, h("path", { key: '26d20eb08bab8a27e7387d47d62a3ec7800294c0', id: "Vector", d: "M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16", stroke: "#000000", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })))), h("div", { key: '3686774ba8af9110bfa3a603939b385837dbb68e', class: "kt-quick-panel__nav" }, h("ul", { key: '3bee1312dfb156bb12de7e0e0a4ff327940d5628', role: "tablist", class: "nav nav-tabs nav-tabs-line nav-tabs-bold nav-tabs-line-3x nav-tabs-line-brand kt-notification-item-padding-x" }, h("li", { key: '26ef23a047057aaf14fdfd4df20b67e88e787416', class: "nav-item active" }, h("a", { key: 'e9e50116fff6ea180145a46a8453ab84d89c04f3', "data-toggle": "tab", role: "tab", class: "nav-link active" }, "User Preference")))), h("div", { key: '933de2ee49f99869585fe880534b62b6d379ece2', class: "kt-quick-panel__content" }, h("div", { key: 'ea03168a8ed10af2a75c7b2f818dbbf075cae102', class: "tab-content" }, h("div", { key: 'b1d278fd9d0853da1f534092d4d27121e8fcf8ac', id: "kt_quick_panel_tab_notifications", role: "tabpanel", class: "tab-pane fade show kt-scroll active ps ps--active-y" }, h("div", { key: '5a29228322031517f61e6f8226d471425ab1a1de', class: "kt-notification" }, h("div", { key: '0ebd410c1f3dfab680e1da3bb6299f615d4228d8', class: "kt-portlet__body" }, h("div", { key: '04d9805408ea3aef6121e8c701b3dd9a35e2b02b', class: "form-group" }, h("label", { key: 'd48340ca2cfac1e9166525ec1fa8aaf1a867c896' }, "Date Format"), h("select", { key: 'fa629a5006f5fadfb4f07498abb1e1c2fef729d3', onInput: e => (this.userPreferences.dateFormat = e.target.value) }, this.dateFormates.map(format => (h("option", { value: format, selected: this.userPreferences.dateFormat == format }, format))))), h("div", { key: '8e7b3c72b90e5be3838710bd32d64eabd51f15f7', class: "form-group" }, h("label", { key: '39724fa7f46098e581e823bdf4938a419079fb6a' }, "Time Format"), h("select", { key: 'ac6c4542db5227f5b344c4dd87ab7feabdddfaa2', onInput: e => (this.userPreferences.timeFormat = e.target.value) }, this.timeFormats.map(format => (h("option", { value: format, selected: this.userPreferences.timeFormat == format }, format))))), h("div", { key: 'a9f4257dcc26dc420c5572ce5f996463050cf5ac', class: "form-group" }, h("label", { key: '60f47d8157ed00bb34b38379388873b3a774d15f' }, "Font Size"), h("select", { key: '056748d994b54654a7015c5815e2420bbf0af577', onInput: e => (this.userPreferences.fontSize = e.target.value) }, this.fontSizes.map(size => (h("option", { value: size.value, selected: this.userPreferences.fontSize == size.value }, size.label))))), h("div", { key: '03106ec2bd3be766a9a851c7d778e4801d9dac0a', class: "form-group" }, h("label", { key: 'b65575291d3d799b5ea3aa95e495ee55d3051522' }, "User Display Format"), h("select", { key: 'e9ce3da27d2489c806b0c8dd362dbefc8ae69453', onInput: e => (this.userPreferences.displayFormat = parseInt(e.target.value)) }, this.displayFormats.map(format => (h("option", { value: format.value, selected: this.userPreferences.displayFormat == format.value }, format.label))))), h("div", { key: 'f68d4c821cb8f05175135b0a48eab4a6cba9eb02', class: "form-group" }, h("label", { key: '2002d8bcca364f1370cfb4c3d0e223ef003733cc' }, "Default Landing Page"), h("div", { key: '9fcff8907e3fa9af874dba08c561e6abde4f33a8', class: "input-group", onClick: () => this.togglePageModal() }, h("div", { key: 'f0eb2381a74d331c4961567101c375449d329bc5', class: "input-group-prepend" }, h("span", { key: '23487f5540c642dd22289244326eeb3534335fc3', class: "input-group-text" }, h("svg", { key: '45d92ce849f1bc423371521874594195a9f467a2', xmlns: "http://www.w3.org/2000/svg", fill: "#000000", height: "18px", width: "18px", version: "1.1", id: "Layer_1", viewBox: "0 0 64 64", "enable-background": "new 0 0 64 64" }, h("g", { key: 'f26c0b380dda1cac5f2904908211b0dec9cf29cd', id: "Link-chains" }, h("path", { key: '367ba34b49fe8a94c67d9496aabaf2aea5c69845', d: "M56.1697006,10.5212574C55.7126999,8.8132582,54.618,7.3864579,53.0876999,6.5036578l-9.7275009-5.6162 c-1.5303001-0.8838-3.3144989-1.1180999-5.0205994-0.6611c-1.7070007,0.458-3.1347008,1.5527-4.0185013,3.0840001 L21.9655991,24.7107582c-0.8838005,1.5301991-1.1191006,3.3134003-0.6611004,5.0205002 c0.4580002,1.7069988,1.5527,3.1338005,3.0839996,4.017498l7.5703011,4.3721008 c0.157198,0.0908012,0.3290997,0.1338005,0.4989986,0.1338005c0.3456993,0,0.6817017-0.1786995,0.8671989-0.5 c0.2764015-0.4785004,0.1123009-1.0898018-0.3661995-1.3661995l-7.5702991-4.3721008 c-1.0683994-0.6161995-1.8330002-1.612299-2.1523991-2.8027c-0.3192997-1.1903992-0.155201-2.4345989,0.4618988-3.5028992 L36.0534973,4.3103576c0.6172028-1.0683999,1.6123009-1.8329999,2.8037033-2.1523998 c1.1894989-0.3183,2.4355965-0.1552,3.5029984,0.4619l9.7275009,5.6162996 c1.0673981,0.6162004,1.8311005,1.6113005,2.1503983,2.8027c0.3193016,1.1914005,0.1553001,2.4355001-0.4618988,3.5039005 l-6.3652992,11.0243998c-0.2763023,0.4785004-0.1123009,1.0897999,0.3661995,1.3661995 c0.4755974,0.2754002,1.0888977,0.1123009,1.3662987-0.3661995l6.3652-11.0243998 C56.3923988,14.0124578,56.627697,12.2292576,56.1697006,10.5212574z" }), h("path", { key: '0f309ce3464624e424845ac574a0fd87991b944c', d: "M39.6082001,30.2507572l-8.8691006-5.1201c-0.4786015-0.2763996-1.089901-0.112299-1.3662014,0.3662014 c-0.2763996,0.4784985-0.1124001,1.0897999,0.3662014,1.3661995l8.8691006,5.1201 c2.2040977,1.2734985,2.9618988,4.1026001,1.6884995,6.3066978L27.9411983,59.690258 c-0.6161995,1.0682983-1.6112995,1.8320007-2.8027,2.1512985c-1.1894989,0.3184013-2.4335995,0.1562996-3.5019989-0.4608994 l-9.7275009-5.6161995c-2.2040997-1.2734985-2.9629002-4.1026001-1.6904001-6.3067017l6.365201-11.0243988 c0.2763996-0.4785004,0.112299-1.089798-0.3662014-1.3661995c-0.4775991-0.2764015-1.0898991-0.1133003-1.3661995,0.3661995 L8.4860983,48.457756c-1.8231997,3.1592026-0.7362995,7.2139015,2.4229002,9.0391006l9.7275009,5.6161995 c1.0195999,0.5879021,2.1504002,0.8886986,3.2958984,0.8886986c0.575201,0,1.1543007-0.0751953,1.7246017-0.2284966 c1.7070999-0.4570999,3.1337986-1.5527992,4.0165997-3.0830002L42.0290985,39.289856 C43.8532982,36.1316566,42.7673988,32.0769577,39.6082001,30.2507572z" }))))), h("input", { key: '1a046bdb7f4a0dd8b4e6f4f4106a945b2642d139', type: "text", class: "form-control", readonly: true, value: this.selectedPage.name || 'Select page', placeholder: "Select page" })))), h("div", { key: '7c11ce60a62a578769622ab0c6ce73f2041dac3b', class: "kt-portlet__foot" }, h("div", { key: '2f0b96fc02cd100377707045f5b718e2da0a9b43', class: "kt-form__actions" }, h("button", { key: '0d32fc858cfb313d699a5d12d5ceab4c467f8f51', class: "btn btn-primary", onClick: () => this.submitPreferences() }, "Save"), h("button", { key: '17119dd3ff2672824b0a8dbafc7243d3feb82b6d', class: "btn btn-secondary", onClick: () => this.resetPreferences() }, "Reset"))))))))), this.showToastFlag && h("div", { key: '84204d2d731f8c35ff7e39ac9f58fb0194b3d288', class: `toast ${this.toastType}` }, this.toastMessage), this.isPageModalOpen && (h("div", { key: '53b8b5b9da5834048d5a4eb82aa764c37ccac841', class: "modal-overlay" }, h("div", { key: '50e82bce8f88f0c0da26890b27526198fe326244', class: "modal-dialog modal-md landing-modal" }, h("div", { key: '197d31275b174869710f9e7b6156ef3d529e7755', class: "modal-content landing-page" }, h("div", { key: '735f79cf48e68be2d9e420af0da1212b22bf0eaf', class: "modal-header" }, h("h4", { key: '4a8f4ee6ad231fc0f470752f083073907c4c9bfa', class: "modal-title pull-left" }, " Customize your default landing page "), h("button", { key: '5e18d6e08f3b8b89443b512743e541db75e869c2', onClick: () => this.togglePageModal(), type: "button", "aria-label": "Close", class: "close pull-right" }, h("span", { key: 'c49531503720e0b4f00a0f56f50f47ff62fc0a2f' }, h("svg", { key: 'df88215dafe0df590a434295db26c1ae5033e06a', xmlns: "http://www.w3.org/2000/svg", width: "15px", height: "15px", viewBox: "0 0 24 24", fill: "none" }, h("g", { key: 'f71fa86b49c4ba37fa1214a57e800b27a9980ebd', id: "Menu / Close_SM" }, h("path", { key: 'a31752fb86e36a366ab03553e3e02c90de31c1cd', id: "Vector", d: "M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16", stroke: "#000000", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })))))), h("div", { key: '3cd5e679c54e07d1ec6d6f01ede496bf90a8d6a9', class: "modal-body" }, h("div", { key: '5a817afbee216aba07d6ac48484f1d807bf6b5bd', class: "row" }, h("div", { key: '47b407dc91af5b17126bc3e6be73c6c02a4231a0', class: "col-12" }, h("div", { key: '47177092b31b42f37de3843188b8831c649d9346', class: "row" }, h("div", { key: 'b7c7b6645e378333879d3110dc9efc8b0b64772e', class: "form-group" }, h("label", { key: 'e9ad6fbd28cdbceb8b2275cb5e3db0235ebdc420', htmlFor: "" }, " Default Landing Page "), h("select", { key: '8378ca6fe581d68cccb2cc30166d38c94128e843', class: "ng", onInput: e => this.changeApplication(e) }, h("option", { key: 'd4438313c959a3310b8cff3e4beecf4167563af2', value: "", selected: this.applicationId === null }, "-- Select Application --"), this.userApplications.map(application => (h("option", { value: application.applicationId, selected: this.applicationId === application.applicationId }, application.applicationName)))))), this.applicationId && (h("div", { key: '0543807ed8b050c36de175e5e57f374c58aa77b8', class: "form-group", style: { marginTop: '12px' } }, h("label", { key: '59f48afc651af7de2738d6416abe3c6053ae2f6b', htmlFor: "pageSearch" }, "Select Page"), h("div", { key: '61fa5b378748185902e2df79e14457622b6f0b95', class: "search-select-wrapper" }, h("input", { key: '3d2625b72ad65f6e35d7e2034e3fca3cdcbe3e69', type: "text", class: "search-input", placeholder: "Search Pages...", value: this.pageSearchQuery, onInput: e => {
|
|
370
|
+
return (h(Host, { key: '8ea23eb7dedd6c2d3b9946c6dc2820d539428b78' }, h("div", { key: '4f2294df5b8847e8ef16f8cb3fa048b12a82d4eb', class: "container" }, h("svg", { key: 'd8771fcd8351ef687212cc5c60530153528f73ba', onClick: () => this.toggleModal(), xmlns: "http://www.w3.org/2000/svg", width: "28px", height: "28px", viewBox: "0 0 24 24", style: { cursor: 'pointer' } }, h("g", { key: '21729a737f592e268962c86bb4015631f51408f8', stroke: "none", fill: "none" }, h("rect", { key: 'f40f8e32a6ac2772d4e68acc545a9230803c260a', x: "0", y: "0", width: "24", height: "24" }), h("rect", { key: '4af4bae2975d33bb32433532d88c900f95dd78a6', fill: "#008fc7", x: "4", y: "4", width: "7", height: "7", rx: "1.5" }), h("path", { key: 'defec4a67669ef3baab730887d532a579f7284ef', d: "M5.5,13 L9.5,13 C10.3284271,13 11,13.6715729 11,14.5 L11,18.5 C11,19.3284271 10.3284271,20 9.5,20 L5.5,20 C4.67157288,20 4,19.3284271 4,18.5 L4,14.5 C4,13.6715729 4.67157288,13 5.5,13 Z M14.5,4 L18.5,4 C19.3284271,4 20,4.67157288 20,5.5 L20,9.5 C20,10.3284271 19.3284271,11 18.5,11 L14.5,11 C13.6715729,11 13,10.3284271 13,9.5 L13,5.5 C13,4.67157288 13.6715729,4 14.5,4 Z M14.5,13 L18.5,13 C19.3284271,13 20,13.6715729 20,14.5 L20,18.5 C20,19.3284271 19.3284271,20 18.5,20 L14.5,20 C13.6715729,20 13,19.3284271 13,18.5 L13,14.5 C13,13.6715729 13.6715729,13 14.5,13 Z", fill: "#008fc7", opacity: "0.3" }))), this.isModalOpen && (h("div", { key: 'd9287302ce3f70c6499933e846ff99547a3e3163', class: "kt-quick-panel kt-quick-panel--on" }, h("a", { key: 'c4d9baa3a43a8ec342ce258752b1b3bc9b3e31cb', onClick: () => this.toggleModal(), id: "kt_quick_panel_close_btn", class: "kt-quick-panel__close" }, h("svg", { key: '0673c95e8c6676f0f1d6cdb2c3e9a9a9bc375a43', xmlns: "http://www.w3.org/2000/svg", width: "25px", height: "25px", viewBox: "0 0 24 24", fill: "none" }, h("g", { key: '7a79888fcfec39d48df5bd1f96daa6166b07bd8c', id: "Menu / Close_SM" }, h("path", { key: 'c7298e580b3347af671fc0117c9fbc9a9e180d16', id: "Vector", d: "M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16", stroke: "#000000", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })))), h("div", { key: '846c74b489d508ae1aca06e6b652b163ff84a744', class: "kt-quick-panel__nav" }, h("ul", { key: 'ab1d7e695d7c2735dda036b70d6bae406e79ef6d', role: "tablist", class: "nav nav-tabs nav-tabs-line nav-tabs-bold nav-tabs-line-3x nav-tabs-line-brand kt-notification-item-padding-x" }, h("li", { key: 'de72304338e3e1d26d1733ff1928159b0d0bae86', class: "nav-item active" }, h("a", { key: 'bfb2547ffd22a2f687882a8ac1b65c9667806c51', "data-toggle": "tab", role: "tab", class: "nav-link active" }, "User Preference")))), h("div", { key: 'da12d4a71c303dde253b2369b262c6af35aea3bc', class: "kt-quick-panel__content" }, h("div", { key: 'fe84865f231a74c2228723ae2c46ac30a4849bcd', class: "tab-content" }, h("div", { key: '16ca693713734d2f123833633f48cbc4a0707c62', id: "kt_quick_panel_tab_notifications", role: "tabpanel", class: "tab-pane fade show kt-scroll active ps ps--active-y" }, h("div", { key: 'e890e15454b8ee3b0337cd6f11ace2f32cab3397', class: "kt-notification" }, h("div", { key: '86f8c663f26176457add034ec35327c15fd5b75b', class: "kt-portlet__body" }, h("div", { key: 'd584358c864bb0e68a3ccc50fd20ebe5416d4df3', class: "form-group" }, h("label", { key: 'c419282b80d2819ef8e1b975b303f4b9045fe422' }, "Date Format"), h("select", { key: '0007edd5e963577ef396b49c9eaaf5c0698a8e6c', onInput: e => (this.userPreferences.dateFormat = e.target.value) }, this.dateFormates.map(format => (h("option", { value: format, selected: this.userPreferences.dateFormat == format }, format))))), h("div", { key: '638a6ee74c548625279ae2a0ff6ebfdaea69eabc', class: "form-group" }, h("label", { key: '9a90b1b02d47b4247da655c849bb44d8cda71400' }, "Time Format"), h("select", { key: 'ee500361083148855b273bd040e5e051925f3054', onInput: e => (this.userPreferences.timeFormat = e.target.value) }, this.timeFormats.map(format => (h("option", { value: format, selected: this.userPreferences.timeFormat == format }, format))))), h("div", { key: '959424c5384abfe4e0b8fb036916b1d818bb676a', class: "form-group" }, h("label", { key: 'e2d7f109dadd13a90225051da86ded77d67f24a0' }, "Font Size"), h("select", { key: 'a494fcd73ea52151ab85a7e1ef93a287b559ae33', onInput: e => (this.userPreferences.fontSize = e.target.value) }, this.fontSizes.map(size => (h("option", { value: size.value, selected: this.userPreferences.fontSize == size.value }, size.label))))), h("div", { key: '1f77e28149fc697550736c463d56b43ca0fcdf5e', class: "form-group" }, h("label", { key: 'adc17c941d37b18b4af9198831088c79aaf92d08' }, "User Display Format"), h("select", { key: '25827778b86a4c2b412330630ca6046361724510', onInput: e => (this.userPreferences.displayFormat = parseInt(e.target.value)) }, this.displayFormats.map(format => (h("option", { value: format.value, selected: this.userPreferences.displayFormat == format.value }, format.label))))), h("div", { key: 'e0d8f96e3f89f99d690fe8d9f77c60a6e6a19765', class: "form-group" }, h("label", { key: '4bfb02001402890cd2fc165e83b59ae77fbf3033' }, "Default Landing Page"), h("div", { key: '9955ce875ca851138922c1416b1b205501dbc4fa', class: "input-group", onClick: () => this.togglePageModal() }, h("div", { key: 'f0d029fc9e0d867377cfffd7ebe2123d149fc638', class: "input-group-prepend" }, h("span", { key: '0083a0bdea15af7112944b547e0dcb5c00d17d37', class: "input-group-text" }, h("svg", { key: '4e532505163097dfb44ef2886f37bc7d7a8d0848', xmlns: "http://www.w3.org/2000/svg", fill: "#000000", height: "18px", width: "18px", version: "1.1", id: "Layer_1", viewBox: "0 0 64 64", "enable-background": "new 0 0 64 64" }, h("g", { key: '0143723c29215c27d909a22715accd82de8298c3', id: "Link-chains" }, h("path", { key: '076009ac8abe7c4ba7fa4c8eebefe50594d7201e', d: "M56.1697006,10.5212574C55.7126999,8.8132582,54.618,7.3864579,53.0876999,6.5036578l-9.7275009-5.6162 c-1.5303001-0.8838-3.3144989-1.1180999-5.0205994-0.6611c-1.7070007,0.458-3.1347008,1.5527-4.0185013,3.0840001 L21.9655991,24.7107582c-0.8838005,1.5301991-1.1191006,3.3134003-0.6611004,5.0205002 c0.4580002,1.7069988,1.5527,3.1338005,3.0839996,4.017498l7.5703011,4.3721008 c0.157198,0.0908012,0.3290997,0.1338005,0.4989986,0.1338005c0.3456993,0,0.6817017-0.1786995,0.8671989-0.5 c0.2764015-0.4785004,0.1123009-1.0898018-0.3661995-1.3661995l-7.5702991-4.3721008 c-1.0683994-0.6161995-1.8330002-1.612299-2.1523991-2.8027c-0.3192997-1.1903992-0.155201-2.4345989,0.4618988-3.5028992 L36.0534973,4.3103576c0.6172028-1.0683999,1.6123009-1.8329999,2.8037033-2.1523998 c1.1894989-0.3183,2.4355965-0.1552,3.5029984,0.4619l9.7275009,5.6162996 c1.0673981,0.6162004,1.8311005,1.6113005,2.1503983,2.8027c0.3193016,1.1914005,0.1553001,2.4355001-0.4618988,3.5039005 l-6.3652992,11.0243998c-0.2763023,0.4785004-0.1123009,1.0897999,0.3661995,1.3661995 c0.4755974,0.2754002,1.0888977,0.1123009,1.3662987-0.3661995l6.3652-11.0243998 C56.3923988,14.0124578,56.627697,12.2292576,56.1697006,10.5212574z" }), h("path", { key: 'fb44582eea71dffd697446668b6a5dfb6c972bc8', d: "M39.6082001,30.2507572l-8.8691006-5.1201c-0.4786015-0.2763996-1.089901-0.112299-1.3662014,0.3662014 c-0.2763996,0.4784985-0.1124001,1.0897999,0.3662014,1.3661995l8.8691006,5.1201 c2.2040977,1.2734985,2.9618988,4.1026001,1.6884995,6.3066978L27.9411983,59.690258 c-0.6161995,1.0682983-1.6112995,1.8320007-2.8027,2.1512985c-1.1894989,0.3184013-2.4335995,0.1562996-3.5019989-0.4608994 l-9.7275009-5.6161995c-2.2040997-1.2734985-2.9629002-4.1026001-1.6904001-6.3067017l6.365201-11.0243988 c0.2763996-0.4785004,0.112299-1.089798-0.3662014-1.3661995c-0.4775991-0.2764015-1.0898991-0.1133003-1.3661995,0.3661995 L8.4860983,48.457756c-1.8231997,3.1592026-0.7362995,7.2139015,2.4229002,9.0391006l9.7275009,5.6161995 c1.0195999,0.5879021,2.1504002,0.8886986,3.2958984,0.8886986c0.575201,0,1.1543007-0.0751953,1.7246017-0.2284966 c1.7070999-0.4570999,3.1337986-1.5527992,4.0165997-3.0830002L42.0290985,39.289856 C43.8532982,36.1316566,42.7673988,32.0769577,39.6082001,30.2507572z" }))))), h("input", { key: 'f8fdec07a80477aba33b9f723e6ff94a995eb2f9', type: "text", class: "form-control", readonly: true, value: this.selectedPage.name || 'Select page', placeholder: "Select page" })))), h("div", { key: 'b85f5defe97b678d93721fcd267773a99b2b94ac', class: "kt-portlet__foot" }, h("div", { key: '945368410fc9a2065fe984f538fe899e8ca7fcba', class: "kt-form__actions" }, h("button", { key: '95b71a242062b8f56cec97afb27ddaed1dd06fcd', class: "btn btn-primary", onClick: () => this.submitPreferences() }, "Save"), h("button", { key: '2c139b934b92761cdc2b020c2c7bb4e3aaa073f3', class: "btn btn-secondary", onClick: () => this.resetPreferences() }, "Reset"))))))))), this.showToastFlag && h("div", { key: '5a3da47cc441101482faafdfb77ab29b75652ed8', class: `toast ${this.toastType}` }, this.toastMessage), this.isPageModalOpen && (h("div", { key: '9d70b5d3d230272e242d2a65929bef5913703c5d', class: "modal-overlay" }, h("div", { key: '1baca1c7015fcb728785ed5f31091f57b709c37c', class: "modal-dialog modal-md landing-modal" }, h("div", { key: 'b707a0f44230e3ecf8dfd7e18982476bbbb1928e', class: "modal-content landing-page" }, h("div", { key: 'b0644d8fd2a52e5a639894e828044b1c5b214d15', class: "modal-header" }, h("h4", { key: 'a7593beda51181a62e341d69fe06960f92b71869', class: "modal-title pull-left" }, " Customize your default landing page "), h("button", { key: '212181c059e545b929de935358b235764df1aa04', onClick: () => this.togglePageModal(), type: "button", "aria-label": "Close", class: "close pull-right" }, h("span", { key: '5d2233a5b5e8940ff15bf4a85fdd8c3a9c234d9b' }, h("svg", { key: '5f31a70458301500de97c9cd95842d51c520eeab', xmlns: "http://www.w3.org/2000/svg", width: "15px", height: "15px", viewBox: "0 0 24 24", fill: "none" }, h("g", { key: 'b0313258efc1915e3da1c8a47cd2d0e7364c0dfe', id: "Menu / Close_SM" }, h("path", { key: '2919b316764a521a828a2b596a2e751edd811044', id: "Vector", d: "M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16", stroke: "#000000", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" })))))), h("div", { key: '124b318a0dc15c0e4ffe5c22bd155be1ac2abde8', class: "modal-body" }, h("div", { key: '1dc6ccfc8809d55d7b78958fde58cc80929697a9', class: "row" }, h("div", { key: 'ebceda730dc293a14b11296b14939e0fffc78b35', class: "col-12" }, h("div", { key: '8c9e85c64c637a8bf3d747df129e2beee238bbba', class: "row" }, h("div", { key: 'c9c37f2f7fd416fd15a0841a65bf3c48bcaca176', class: "form-group" }, h("label", { key: '399452562493935e22b08bb07b719e3db27ce867', htmlFor: "" }, " Default Landing Page "), h("select", { key: 'ef2a56d47c76fee6e5bc7f440b5ffc3c3d552e6b', class: "ng", onInput: e => this.changeApplication(e) }, h("option", { key: 'f8dd93f7ba7e82746bcf0a1074c481271ed956bd', value: "", selected: this.applicationId === null }, "-- Select Application --"), this.userApplications.map(application => (h("option", { value: application.applicationId, selected: this.applicationId === application.applicationId }, application.applicationName)))))), this.applicationId && (h("div", { key: '9b19a2d1ab46be3aa20191ffbe27fd13db716026', class: "form-group", style: { marginTop: '12px' } }, h("label", { key: '08d8cb0a289dcaec5e9ecc010e6264986a286e1e', htmlFor: "pageSearch" }, "Select Page"), h("div", { key: '11937df107fc776c1e7b06a519288a769bb3b89a', class: "search-select-wrapper" }, h("input", { key: '11974ecfcd264bc0cfd4f9fb3dc1fa8c217076a3', type: "text", class: "search-input", placeholder: "Search Pages...", value: this.pageSearchQuery, onInput: e => {
|
|
352
371
|
this.pageSearchQuery = e.target.value;
|
|
353
372
|
this.isPageDropdownOpen = true;
|
|
354
|
-
}, onFocus: () => this.isPageDropdownOpen = true }), this.isPageDropdownOpen && (h("div", { key: '
|
|
373
|
+
}, onFocus: () => this.isPageDropdownOpen = true }), this.isPageDropdownOpen && (h("div", { key: '934728e0bec1fa9be3cd7168b368bd63327af941', class: "search-dropdown" }, this.filteredPages.length === 0 ? (h("div", { class: "search-no-result" }, "No pages found")) : (this.filteredPages.map(page => (h("div", { class: `search-option ${this.selectedPage?.pageId === page.pageId ? 'selected' : ''}`, onClick: () => {
|
|
355
374
|
this.selectPage(page);
|
|
356
375
|
this.pageSearchQuery = page.name;
|
|
357
376
|
this.isPageDropdownOpen = false;
|
|
358
377
|
} }, h("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", style: { flexShrink: '0' } }, h("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z", stroke: "currentColor", "stroke-width": "2" }), h("path", { d: "M14 2v6h6", stroke: "currentColor", "stroke-width": "2" })), h("span", null, page.name), h("small", { class: {
|
|
359
378
|
'culture-unpublished': page.pageCultureStatus == 1,
|
|
360
379
|
'culture-published': page.pageCultureStatus == 2,
|
|
361
|
-
} }, page.cultureCode))))))))))))))))))));
|
|
380
|
+
} }, page.cultureCode))))))))))))), h("div", { key: 'bbdab2028991401bcd05652b0871ea67e5491b74', class: "modal-footer" }, h("button", { key: 'd4749caaba172a93bfd91c21a0755ac02900621a', class: "btn btn-primary", onClick: () => this.confirmPageSelection() }, "Confirm"), h("button", { key: '92ec1642bf3491961dea0bbc3855988e5ff7645b', class: "btn btn-secondary", onClick: () => this.togglePageModal() }, "Cancel")))))))));
|
|
362
381
|
}
|
|
363
382
|
static get is() { return "eiam-user-preference"; }
|
|
364
383
|
static get encapsulation() { return "shadow"; }
|
|
@@ -473,7 +492,6 @@ export class EiamUserPreference {
|
|
|
473
492
|
"toastMessage": {},
|
|
474
493
|
"tempSelectedPage": {},
|
|
475
494
|
"tempApplicationId": {},
|
|
476
|
-
"isEditingPage": {},
|
|
477
495
|
"pageSearchQuery": {},
|
|
478
496
|
"isPageDropdownOpen": {}
|
|
479
497
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eiam-user-preference.js","sourceRoot":"","sources":["../../../src/components/eiam-user-preference/eiam-user-preference.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, Prop, State, Watch, h, Element, EventEmitter, Event } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'eiam-user-preference',\r\n styleUrl: 'eiam-user-preference.css',\r\n shadow: true,\r\n})\r\nexport class EiamUserPreference {\r\n @Element() host: HTMLElement;\r\n @State() currentRouteSlug: string;\r\n @State() payload = {\r\n pagination: {\r\n pageIndex: 0,\r\n pageSize: 1000,\r\n },\r\n search: {\r\n pageName: '',\r\n },\r\n };\r\n @Event() preferencesChanged: EventEmitter<any>;\r\n @State() userPreferences = {\r\n dateFormat: 'dd/MM/yyyy',\r\n timeFormat: '',\r\n fontSize: null,\r\n displayFormat: 4,\r\n defaultLandingPageId: '',\r\n pageName: '',\r\n };\r\n\r\n @State() dateFormates: string[] = ['dd/MM/yyyy', 'MM/dd/yyyy', 'yyyy-MM-dd'];\r\n @State() timeFormats: string[] = ['h:mm a'];\r\n @State() fontSizes = [\r\n { label: 'Small', value: '14' },\r\n { label: 'Medium', value: '16' },\r\n { label: 'Large', value: '18' },\r\n ];\r\n @State() displayFormats: any[] = [];\r\n @State() userApplications: any[] = [];\r\n @State() pages: any[] = [];\r\n @State() isModalOpen = false;\r\n @State() currentPage: number = 1;\r\n @State() pageSize: number = 10;\r\n @State() isPageModalOpen: boolean = false; // Controls the visibility of the secondary modal\r\n @State() selectedPage: { pageId: number; name: string } = { pageId: null, name: '' }; // To store selected page\r\n @State() showToastFlag: any;\r\n @State() toastType: any;\r\n @State() toastMessage: any;\r\n @Prop() pageId: any;\r\n @Prop() cultureCode: string;\r\n @Prop() applicationId: string;\r\n @Prop() apiUrl: string;\r\n\r\n@State() tempSelectedPage: { pageId: number; name: string } = { pageId: null, name: '' };\r\n@State() tempApplicationId: string = null;\r\n@State() isEditingPage: boolean = false;\r\n\r\n @Watch('cultureCode')\r\n @Watch('applicationId')\r\n @Watch('pageId')\r\n @Watch('apiUrl')\r\nasync watchChanges() {\r\n await this.fetchInitiateValue();\r\n}\r\n\r\nasync componentWillLoad() {\r\n await this.fetchInitiateValue();\r\n}\r\n\r\nprivate isFetching = false;\r\nasync fetchInitiateValue() {\r\n if (!this.cultureCode || !this.applicationId || !this.apiUrl) {\r\n return; // wait until all props are ready\r\n }\r\n\r\n if (this.isFetching) return; // prevent duplicate calls\r\n this.isFetching = true;\r\n\r\n await this.getDisplayFormats();\r\n await this.getUserPreferences();\r\n await this.getUserApplications();\r\n\r\n this.isFetching = false;\r\n}\r\n\r\nprivate isFetchingDisplayFormats = false;\r\nprivate isFetchingUserPreferences = false;\r\nprivate isFetchingApplications = false;\r\n\r\n async getDisplayFormats() {\r\n if (this.isFetchingDisplayFormats) return;\r\n this.isFetchingDisplayFormats = true;\r\n try {\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n };\r\n\r\n const response = await fetch(`${this.apiUrl}/api/UserPreferences/DisplayFormats`, {\r\n method: 'GET', // Specify GET method\r\n headers: headers,\r\n credentials: 'include', // Include credentials (cookies) in the request\r\n });\r\n\r\n const data = await response.json();\r\n\r\n if (Array.isArray(data.content)) {\r\n this.displayFormats = data.content;\r\n } else {\r\n // console.error('Invalid response structure:', data);\r\n this.showToast('Something went wrong', 'error');\r\n }\r\n } catch (error) {\r\n // console.error('Error fetching display formats:', error);\r\n this.showToast('Something went wrong', 'error');\r\n }finally {\r\n this.isFetchingDisplayFormats = false;\r\n }\r\n }\r\n\r\n async getUserPreferences() {\r\n if (this.isFetchingUserPreferences) return;\r\n this.isFetchingUserPreferences = true;\r\n try {\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n };\r\n\r\n const response = await fetch(`${this.apiUrl}/api/UserPreferences/GetUserPreferences`, {\r\n method: 'GET',\r\n headers: headers,\r\n credentials: 'include',\r\n });\r\n\r\n let data = await response.json();\r\n if (data && typeof data !== 'string' && data.code == \"0000\") {\r\n console.log(data, ' data of user preferances');\r\n const fontSizeValue = parseInt(data.content.fontSize);\r\n console.log(fontSizeValue, ' fontSizeValue of user preferances');\r\n\r\n this.userPreferences = {\r\n ...this.userPreferences,\r\n dateFormat: data.content?.dateFormat || 'dd/MM/yyyy',\r\n timeFormat: data.content?.timeFormat || this.timeFormats[0], // fallback!\r\n fontSize: !isNaN(fontSizeValue) ? fontSizeValue : parseInt(this.fontSizes[0]?.value),\r\n displayFormat: data.content?.displayFormat || 1,\r\n defaultLandingPageId: data?.content?.defaultLandingPageId,\r\n pageName: data?.content?.defaultLandingPageDetails?.name || '',\r\n };\r\n // this.selectedPage.name = data.content?.defaultLandingPageDetails?.name;\r\n this.selectedPage = {\r\n ...this.selectedPage,\r\n name: data.content?.defaultLandingPageDetails?.name || '',\r\n pageId: data.content?.defaultLandingPageId, \r\n};\r\n\r\n\r\nthis.pageSearchQuery = data.content?.defaultLandingPageDetails?.name || '';\r\n }\r\n \r\n this.preferencesChanged.emit(data);\r\n } catch (error) {\r\n // console.error('Error fetching user preferences:', error);\r\n this.showToast('Something went wrong', 'error');\r\n }finally {\r\n this.isFetchingUserPreferences = false;\r\n }\r\n }\r\n private showToast(message: string, type: 'success' | 'error' = 'success') {\r\n this.toastMessage = message;\r\n this.toastType = type;\r\n this.showToastFlag = true;\r\n\r\n setTimeout(() => {\r\n this.showToastFlag = false;\r\n }, 3000);\r\n }\r\n\r\n async getUserApplications() {\r\n if (this.isFetchingApplications) return;\r\n this.isFetchingApplications = true;\r\n try {\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'IntegrationPermission': '0f5d983d203189bbffc5f686d01f6680bc6a83718a515fe42639347efc92478e',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n };\r\n\r\n const response = await fetch(`${this.apiUrl}/api/OrganizationApplicationsApi/GetAssigndApplicationForUser`, {\r\n method: 'GET',\r\n headers: headers,\r\n credentials: 'include',\r\n });\r\n\r\n const data = await response.json();\r\n\r\n if (data && Array.isArray(data.content)) {\r\n this.userApplications = data.content.filter(el => el.applicationId !== 1);\r\n } else {\r\n // console.error('Invalid response structure:', data);\r\n this.showToast('Something went wrong', 'error');\r\n }\r\n } catch (error) {\r\n // console.error('Error fetching applications:', error);\r\n this.showToast('Something went wrong', 'error');\r\n }finally{\r\n this.isFetchingApplications = false;\r\n }\r\n }\r\n @State() pageSearchQuery: string = '';\r\n@State() isPageDropdownOpen: boolean = false;\r\n\r\nget filteredPages() {\r\n const query = this.pageSearchQuery.toLowerCase();\r\n return this.pages.filter(page =>\r\n page.name.toLowerCase().includes(query)\r\n );\r\n}\r\n changeApplication(e: Event) {\r\n const selectedId = (e.target as HTMLSelectElement).value;\r\n this.pageSearchQuery = ''; // ✅ reset search\r\n this.isPageDropdownOpen = false;\r\n this.selectedPage = { pageId: null, name: '' };\r\n this.pages = [];\r\n if (selectedId) {\r\n this.applicationId = selectedId;\r\n // console.log(this.applicationId, 'this.applicationId on change');\r\n this.getPagesSApplications();\r\n } else {\r\n this.applicationId = null;\r\n }\r\n }\r\n\r\n async getPagesSApplications() {\r\n try {\r\n const response = await fetch(`${this.apiUrl}/api/Pages/GetPages`, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n },\r\n credentials: 'include',\r\n body: JSON.stringify(this.payload),\r\n });\r\n\r\n if (!response.ok) {\r\n // console.error('Failed to fetch pages');\r\n this.showToast('Something went wrong', 'error');\r\n return;\r\n }\r\n\r\n const data = await response.json();\r\n this.pages = data?.content?.data;\r\n // console.log(data, 'data of all pages ');\r\n } catch (error) {\r\n // console.error('Error fetching pages:', error);\r\n this.showToast('Something went wrong', 'error');\r\n }\r\n }\r\n\r\n async submitPreferences() {\r\n const fontSizeValue = parseFloat(this.userPreferences.fontSize);\r\n const fontSize = !isNaN(fontSizeValue) ? `${fontSizeValue}px` : null;\r\n let pageName = this.selectedPage.name;\r\n let defaultLandingPageId = this.selectedPage.pageId;\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n };\r\n // console.log(this.userPreferences, 'user preferancesss ');\r\n\r\n try {\r\n const response = await fetch(`${this.apiUrl}/api/UserPreferences/SaveUserPreferences`, {\r\n method: 'POST',\r\n headers,\r\n body: JSON.stringify({ ...this.userPreferences, fontSize, pageName: pageName, defaultLandingPageId: defaultLandingPageId }),\r\n credentials: 'include',\r\n });\r\n\r\n if (!response.ok) {\r\n // console.error('Failed to save preferences:', response.statusText);\r\n this.showToast('Something went wrong', 'error');\r\n\r\n return;\r\n }\r\n if (response.ok) {\r\n // Fetch updated preferences\r\n this.showToast('Preferences updated successfully!', 'success');\r\n\r\n const newPrefs: any = await this.getUserPreferences();\r\n if (!newPrefs || typeof newPrefs === 'string') return;\r\n }\r\n } catch (error) {\r\n this.showToast('Something went wrong', 'error');\r\n // console.error('Error submitting preferences:', error);\r\n }\r\n }\r\n\r\n async resetPreferences() {\r\n try {\r\n let res = await fetch(`${this.apiUrl}/api/UserPreferences/Delete`, {\r\n method: 'DELETE',\r\n credentials: 'include',\r\n });\r\n\r\n this.userPreferences = {\r\n dateFormat: 'dd/MM/yyyy',\r\n timeFormat: '',\r\n fontSize: '',\r\n displayFormat: 4,\r\n defaultLandingPageId: '',\r\n pageName: '',\r\n };\r\n if (res.ok) {\r\n // Fetch updated preferences\r\n this.showToast('Preferences updated successfully!', 'success');\r\n\r\n location.reload(); // If you want to refresh the UI\r\n }\r\n } catch (error) {\r\n // console.error('Failed to reset preferences', error);\r\n this.showToast('Something went wrong', 'error');\r\n }\r\n }\r\n toggleModal() {\r\n this.isModalOpen = !this.isModalOpen;\r\n }\r\n // togglePageModal() {\r\n // this.isPageModalOpen = !this.isPageModalOpen;\r\n // }\r\n togglePageModal() {\r\n if (!this.isPageModalOpen) {\r\n // Opening modal - copy current values to temp\r\n this.tempSelectedPage = { ...this.selectedPage };\r\n this.tempApplicationId = this.applicationId;\r\n this.pageSearchQuery = this.selectedPage?.name || '';\r\n this.isPageDropdownOpen = false;\r\n // Load pages for current application\r\n if (this.applicationId) {\r\n this.getPagesSApplications();\r\n }\r\n } else {\r\n // Closing without saving - restore previous values\r\n this.applicationId = this.tempApplicationId;\r\n this.selectedPage = { ...this.tempSelectedPage };\r\n this.pageSearchQuery = this.tempSelectedPage?.name || '';\r\n this.pages = [];\r\n }\r\n this.isPageModalOpen = !this.isPageModalOpen;\r\n}\r\n\r\n // selectPage(page) {\r\n // this.selectedPage = page;\r\n // this.userPreferences.defaultLandingPageId = page.pageId; // Update default landing page\r\n // this.togglePageModal(); // Close the page selection modal\r\n // }\r\nselectPage(page) {\r\n this.selectedPage = { pageId: page.pageId, name: page.name };\r\n this.userPreferences.defaultLandingPageId = page.pageId;\r\n this.pageSearchQuery = page.name;\r\n this.isPageDropdownOpen = false;\r\n this.isPageModalOpen = false; // close modal\r\n}\r\n get pagedPages() {\r\n const start = (this.currentPage - 1) * this.pageSize;\r\n const end = start + this.pageSize;\r\n return this.pages.slice(start, end);\r\n }\r\n\r\n get totalPages() {\r\n return Math.ceil(this.pages.length / this.pageSize);\r\n }\r\n\r\n render() {\r\n return (\r\n <Host>\r\n <div class=\"container\">\r\n <svg onClick={() => this.toggleModal()} xmlns=\"http://www.w3.org/2000/svg\" width=\"28px\" height=\"28px\" viewBox=\"0 0 24 24\" style={{ cursor: 'pointer' }}>\r\n <g stroke=\"none\" fill=\"none\">\r\n <rect x=\"0\" y=\"0\" width=\"24\" height=\"24\" />\r\n <rect fill=\"#008fc7\" x=\"4\" y=\"4\" width=\"7\" height=\"7\" rx=\"1.5\" />\r\n <path\r\n d=\"M5.5,13 L9.5,13 C10.3284271,13 11,13.6715729 11,14.5 L11,18.5 C11,19.3284271 10.3284271,20 9.5,20 L5.5,20 C4.67157288,20 4,19.3284271 4,18.5 L4,14.5 C4,13.6715729 4.67157288,13 5.5,13 Z M14.5,4 L18.5,4 C19.3284271,4 20,4.67157288 20,5.5 L20,9.5 C20,10.3284271 19.3284271,11 18.5,11 L14.5,11 C13.6715729,11 13,10.3284271 13,9.5 L13,5.5 C13,4.67157288 13.6715729,4 14.5,4 Z M14.5,13 L18.5,13 C19.3284271,13 20,13.6715729 20,14.5 L20,18.5 C20,19.3284271 19.3284271,20 18.5,20 L14.5,20 C13.6715729,20 13,19.3284271 13,18.5 L13,14.5 C13,13.6715729 13.6715729,13 14.5,13 Z\"\r\n fill=\"#008fc7\"\r\n opacity=\"0.3\"\r\n />\r\n </g>\r\n </svg>\r\n\r\n {/* Main Modal */}\r\n {this.isModalOpen && (\r\n <div class=\"kt-quick-panel kt-quick-panel--on\">\r\n <a onClick={() => this.toggleModal()} id=\"kt_quick_panel_close_btn\" class=\"kt-quick-panel__close\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"25px\" height=\"25px\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <g id=\"Menu / Close_SM\">\r\n <path id=\"Vector\" d=\"M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16\" stroke=\"#000000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </a>\r\n <div class=\"kt-quick-panel__nav\">\r\n <ul role=\"tablist\" class=\"nav nav-tabs nav-tabs-line nav-tabs-bold nav-tabs-line-3x nav-tabs-line-brand kt-notification-item-padding-x\">\r\n <li class=\"nav-item active\">\r\n <a data-toggle=\"tab\" role=\"tab\" class=\"nav-link active\">\r\n User Preference\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n <div class=\"kt-quick-panel__content\">\r\n <div class=\"tab-content\">\r\n <div id=\"kt_quick_panel_tab_notifications\" role=\"tabpanel\" class=\"tab-pane fade show kt-scroll active ps ps--active-y\">\r\n <div class=\"kt-notification\">\r\n <div class=\"kt-portlet__body\">\r\n <div class=\"form-group\">\r\n <label>Date Format</label>\r\n <select onInput={e => (this.userPreferences.dateFormat = (e.target as HTMLSelectElement).value)}>\r\n {this.dateFormates.map(format => (\r\n <option value={format} selected={this.userPreferences.dateFormat == format}>\r\n {format}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <label>Time Format</label>\r\n <select onInput={e => (this.userPreferences.timeFormat = (e.target as HTMLSelectElement).value)}>\r\n {this.timeFormats.map(format => (\r\n <option value={format} selected={this.userPreferences.timeFormat == format}>\r\n {format}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <label>Font Size</label>\r\n <select onInput={e => (this.userPreferences.fontSize = (e.target as HTMLSelectElement).value)}>\r\n {this.fontSizes.map(size => (\r\n <option value={size.value} selected={this.userPreferences.fontSize == size.value}>\r\n {size.label}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <label>User Display Format</label>\r\n <select onInput={e => (this.userPreferences.displayFormat = parseInt((e.target as HTMLSelectElement).value))}>\r\n {this.displayFormats.map(format => (\r\n <option value={format.value} selected={this.userPreferences.displayFormat == format.value}>\r\n {format.label}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <label>Default Landing Page</label>\r\n <div class=\"input-group\" onClick={() => this.togglePageModal()}>\r\n <div class=\"input-group-prepend\">\r\n <span class=\"input-group-text\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"#000000\"\r\n height=\"18px\"\r\n width=\"18px\"\r\n version=\"1.1\"\r\n id=\"Layer_1\"\r\n viewBox=\"0 0 64 64\"\r\n enable-background=\"new 0 0 64 64\"\r\n >\r\n <g id=\"Link-chains\">\r\n <path d=\"M56.1697006,10.5212574C55.7126999,8.8132582,54.618,7.3864579,53.0876999,6.5036578l-9.7275009-5.6162 c-1.5303001-0.8838-3.3144989-1.1180999-5.0205994-0.6611c-1.7070007,0.458-3.1347008,1.5527-4.0185013,3.0840001 L21.9655991,24.7107582c-0.8838005,1.5301991-1.1191006,3.3134003-0.6611004,5.0205002 c0.4580002,1.7069988,1.5527,3.1338005,3.0839996,4.017498l7.5703011,4.3721008 c0.157198,0.0908012,0.3290997,0.1338005,0.4989986,0.1338005c0.3456993,0,0.6817017-0.1786995,0.8671989-0.5 c0.2764015-0.4785004,0.1123009-1.0898018-0.3661995-1.3661995l-7.5702991-4.3721008 c-1.0683994-0.6161995-1.8330002-1.612299-2.1523991-2.8027c-0.3192997-1.1903992-0.155201-2.4345989,0.4618988-3.5028992 L36.0534973,4.3103576c0.6172028-1.0683999,1.6123009-1.8329999,2.8037033-2.1523998 c1.1894989-0.3183,2.4355965-0.1552,3.5029984,0.4619l9.7275009,5.6162996 c1.0673981,0.6162004,1.8311005,1.6113005,2.1503983,2.8027c0.3193016,1.1914005,0.1553001,2.4355001-0.4618988,3.5039005 l-6.3652992,11.0243998c-0.2763023,0.4785004-0.1123009,1.0897999,0.3661995,1.3661995 c0.4755974,0.2754002,1.0888977,0.1123009,1.3662987-0.3661995l6.3652-11.0243998 C56.3923988,14.0124578,56.627697,12.2292576,56.1697006,10.5212574z\" />\r\n <path d=\"M39.6082001,30.2507572l-8.8691006-5.1201c-0.4786015-0.2763996-1.089901-0.112299-1.3662014,0.3662014 c-0.2763996,0.4784985-0.1124001,1.0897999,0.3662014,1.3661995l8.8691006,5.1201 c2.2040977,1.2734985,2.9618988,4.1026001,1.6884995,6.3066978L27.9411983,59.690258 c-0.6161995,1.0682983-1.6112995,1.8320007-2.8027,2.1512985c-1.1894989,0.3184013-2.4335995,0.1562996-3.5019989-0.4608994 l-9.7275009-5.6161995c-2.2040997-1.2734985-2.9629002-4.1026001-1.6904001-6.3067017l6.365201-11.0243988 c0.2763996-0.4785004,0.112299-1.089798-0.3662014-1.3661995c-0.4775991-0.2764015-1.0898991-0.1133003-1.3661995,0.3661995 L8.4860983,48.457756c-1.8231997,3.1592026-0.7362995,7.2139015,2.4229002,9.0391006l9.7275009,5.6161995 c1.0195999,0.5879021,2.1504002,0.8886986,3.2958984,0.8886986c0.575201,0,1.1543007-0.0751953,1.7246017-0.2284966 c1.7070999-0.4570999,3.1337986-1.5527992,4.0165997-3.0830002L42.0290985,39.289856 C43.8532982,36.1316566,42.7673988,32.0769577,39.6082001,30.2507572z\" />\r\n </g>\r\n </svg>\r\n </span>\r\n </div>\r\n <input type=\"text\" class=\"form-control\" readonly value={this.selectedPage.name || 'Select page'} placeholder=\"Select page\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"kt-portlet__foot\">\r\n <div class=\"kt-form__actions\">\r\n <button class=\"btn btn-primary\" onClick={() => this.submitPreferences()}>\r\n Save\r\n </button>\r\n <button class=\"btn btn-secondary\" onClick={() => this.resetPreferences()}>\r\n Reset\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n\r\n {this.showToastFlag && <div class={`toast ${this.toastType}`}>{this.toastMessage}</div>}\r\n\r\n {/* Page Selection Modal */}\r\n\r\n {this.isPageModalOpen && (\r\n <div class=\"modal-overlay\">\r\n <div class=\"modal-dialog modal-md landing-modal\">\r\n <div class=\"modal-content landing-page\">\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\"> Customize your default landing page </h4>\r\n <button onClick={() => this.togglePageModal()} type=\"button\" aria-label=\"Close\" class=\"close pull-right\">\r\n <span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15px\" height=\"15px\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <g id=\"Menu / Close_SM\">\r\n <path id=\"Vector\" d=\"M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16\" stroke=\"#000000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n </button>\r\n </div>\r\n\r\n {/* \r\n <div class=\"modal-body\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"row\">\r\n <div class=\"form-group\">\r\n <label htmlFor=\"\"> Default Landing Page </label>\r\n <select class=\"ng\" onInput={e => this.changeApplication(e)}>\r\n <option value=\"\" selected={this.applicationId === null}>\r\n -- Select Application --\r\n </option>\r\n {this.userApplications.map(application => (\r\n <option value={application.applicationId} selected={this.applicationId === application.applicationId}>\r\n {application.applicationName}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n </div>\r\n\r\n <label>Select Page</label>\r\n <div style={{ maxHeight: '300px', overflowY: 'auto', overflowX: 'hidden' }}>\r\n {this.pagedPages.map(page => (\r\n <div class=\"slug-item\" onClick={() => this.selectPage(page)}>\r\n <div class=\"row\">\r\n <span class=\"text-brand\" style={{ fontWeight: '600', lineHeight: '1' }}>\r\n {page.name}\r\n </span>\r\n <small\r\n class={{\r\n 'culture-unpublished': page.pageCultureStatus == 1,\r\n 'culture-published': page.pageCultureStatus == 2,\r\n }}\r\n >\r\n {page.cultureCode}\r\n </small>\r\n </div>\r\n </div>\r\n ))}\r\n </div>\r\n\r\n {this.totalPages > 1 && (\r\n <div class=\"pagination-controls\">\r\n <button class=\"arrow-button\" disabled={this.currentPage === 1} onClick={() => this.currentPage--}>\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M15 18L9 12L15 6\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </button>\r\n <span>\r\n {this.currentPage} of {this.totalPages}\r\n </span>\r\n <button class=\"arrow-button\" disabled={this.currentPage === this.totalPages} onClick={() => this.currentPage++}>\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M9 6L15 12L9 18\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div> */}\r\n\r\n <div class=\"modal-body\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"row\">\r\n <div class=\"form-group\">\r\n <label htmlFor=\"\"> Default Landing Page </label>\r\n <select class=\"ng\" onInput={e => this.changeApplication(e)}>\r\n <option value=\"\" selected={this.applicationId === null}>\r\n -- Select Application --\r\n </option>\r\n {this.userApplications.map(application => (\r\n <option value={application.applicationId} selected={this.applicationId === application.applicationId}>\r\n {application.applicationName}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n </div>\r\n\r\n {/* ===== Page Searchable Dropdown (only shows after app is selected) ===== */}\r\n {this.applicationId && (\r\n <div class=\"form-group\" style={{ marginTop: '12px' }}>\r\n <label htmlFor=\"pageSearch\">Select Page</label>\r\n\r\n {/* Search input */}\r\n <div class=\"search-select-wrapper\">\r\n <input\r\n type=\"text\"\r\n class=\"search-input\"\r\n placeholder=\"Search Pages...\"\r\n value={this.pageSearchQuery}\r\n onInput={e => {\r\n this.pageSearchQuery = (e.target as HTMLInputElement).value;\r\n this.isPageDropdownOpen = true;\r\n }}\r\n onFocus={() => this.isPageDropdownOpen = true}\r\n />\r\n\r\n {/* Dropdown list */}\r\n {this.isPageDropdownOpen && (\r\n <div class=\"search-dropdown\">\r\n {this.filteredPages.length === 0 ? (\r\n <div class=\"search-no-result\">No pages found</div>\r\n ) : (\r\n this.filteredPages.map(page => (\r\n <div\r\n class={`search-option ${this.selectedPage?.pageId === page.pageId ? 'selected' : ''}`}\r\n onClick={() => {\r\n this.selectPage(page);\r\n this.pageSearchQuery = page.name;\r\n this.isPageDropdownOpen = false;\r\n }}>\r\n {/* Page icon */}\r\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" style={{ flexShrink: '0' }}>\r\n <path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"\r\n stroke=\"currentColor\" stroke-width=\"2\"/>\r\n <path d=\"M14 2v6h6\" stroke=\"currentColor\" stroke-width=\"2\"/>\r\n </svg>\r\n\r\n <span>{page.name}</span>\r\n\r\n {/* Culture badge */}\r\n <small class={{\r\n 'culture-unpublished': page.pageCultureStatus == 1,\r\n 'culture-published': page.pageCultureStatus == 2,\r\n }}>\r\n {page.cultureCode}\r\n </small>\r\n </div>\r\n ))\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n\r\n </div>\r\n )}\r\n {/* { <label>Select Page</label>\r\n <div style={{ maxHeight: '250px', overflowY: 'auto', overflowX: 'hidden' }}>\r\n {this.pagedPages.map(page => (\r\n <div class=\"slug-item\" onClick={() => this.selectPage(page)}>\r\n <div class=\"row\">\r\n <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" >\r\n <path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\" stroke=\"currentColor\" ></path>\r\n <path d=\"M14 2v6h6\" stroke=\"currentColor\" ></path>\r\n</svg>\r\n <span class=\"text-brand\" style={{ fontWeight: '600', lineHeight: '1', padding: '5px' }}>\r\n {page.name}\r\n </span>\r\n <small\r\n class={{\r\n 'culture-unpublished': page.pageCultureStatus == 1,\r\n 'culture-published': page.pageCultureStatus == 2,\r\n }}\r\n >\r\n {page.cultureCode}\r\n </small>\r\n </div>\r\n </div>\r\n ))}\r\n </div>\r\n\r\n {this.totalPages > 1 && (\r\n <div class=\"pagination-controls\">\r\n <button class=\"arrow-button\" disabled={this.currentPage === 1} onClick={() => this.currentPage--}>\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M15 18L9 12L15 6\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </button>\r\n <span>\r\n {this.currentPage} of {this.totalPages}\r\n </span>\r\n <button class=\"arrow-button\" disabled={this.currentPage === this.totalPages} onClick={() => this.currentPage++}>\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M9 6L15 12L9 18\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </button>\r\n </div>\r\n )}} */}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"eiam-user-preference.js","sourceRoot":"","sources":["../../../src/components/eiam-user-preference/eiam-user-preference.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAgB,KAAK,EAAE,MAAM,eAAe,CAAC;AAOrG,MAAM,OAAO,kBAAkB;IAClB,IAAI,CAAc;IACpB,gBAAgB,CAAS;IACzB,OAAO,GAAG;QACjB,UAAU,EAAE;YACV,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,IAAI;SACf;QACD,MAAM,EAAE;YACN,QAAQ,EAAE,EAAE;SACb;KACF,CAAC;IACO,kBAAkB,CAAoB;IACtC,eAAe,GAAG;QACzB,UAAU,EAAE,YAAY;QACxB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,CAAC;QAChB,oBAAoB,EAAE,EAAE;QACxB,QAAQ,EAAE,EAAE;KACb,CAAC;IAEO,YAAY,GAAa,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IACpE,WAAW,GAAa,CAAC,QAAQ,CAAC,CAAC;IACnC,SAAS,GAAG;QACnB,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE;QAC/B,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;QAChC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE;KAChC,CAAC;IACO,cAAc,GAAU,EAAE,CAAC;IAC3B,gBAAgB,GAAU,EAAE,CAAC;IAC7B,KAAK,GAAU,EAAE,CAAC;IAClB,WAAW,GAAG,KAAK,CAAC;IACpB,WAAW,GAAW,CAAC,CAAC;IACxB,QAAQ,GAAW,EAAE,CAAC;IACtB,eAAe,GAAY,KAAK,CAAC,CAAC,iDAAiD;IACnF,YAAY,GAAqC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,yBAAyB;IACtG,aAAa,CAAM;IACnB,SAAS,CAAM;IACf,YAAY,CAAM;IACnB,MAAM,CAAM;IACZ,WAAW,CAAS;IACpB,aAAa,CAAS;IACtB,MAAM,CAAS;IACd,gBAAgB,GAAqC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAClF,iBAAiB,GAAW,IAAI,CAAC;IAO1C,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAClC,CAAC;IAEO,UAAU,GAAG,KAAK,CAAC;IAC3B,KAAK,CAAC,kBAAkB;QACtB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC7D,OAAO,CAAC,iCAAiC;QAC3C,CAAC;QAED,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,CAAC,0BAA0B;QACvD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEjC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAEO,wBAAwB,GAAG,KAAK,CAAC;IACjC,yBAAyB,GAAG,KAAK,CAAC;IAClC,sBAAsB,GAAG,KAAK,CAAC;IAErC,KAAK,CAAC,iBAAiB;QACpB,IAAI,IAAI,CAAC,wBAAwB;YAAE,OAAO;QAC7C,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG;gBACd,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,QAAQ,EAAE,GAAG;gBACb,eAAe,EAAE,IAAI,CAAC,aAAa;aACpC,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,qCAAqC,EAAE;gBAChF,MAAM,EAAE,KAAK,EAAE,qBAAqB;gBACpC,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,SAAS,EAAE,+CAA+C;aACxE,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAEnC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,sDAAsD;gBACtD,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,2DAA2D;YAC3D,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;gBAAQ,CAAC;YACV,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC;QACxC,CAAC;IACD,CAAC;IAED,KAAK,CAAC,kBAAkB;QACpB,IAAI,IAAI,CAAC,yBAAyB;YAAE,OAAO;QAC/C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG;gBACd,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,QAAQ,EAAE,GAAG;gBACb,eAAe,EAAE,IAAI,CAAC,aAAa;aACpC,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,yCAAyC,EAAE;gBACpF,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YAEH,IAAI,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC;gBAC/C,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACtD,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,oCAAoC,CAAC,CAAC;gBAEjE,IAAI,CAAC,eAAe,GAAG;oBACrB,GAAG,IAAI,CAAC,eAAe;oBACvB,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,IAAI,YAAY;oBACpD,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY;oBACzE,QAAQ,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;oBACpF,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC;oBAC/C,oBAAoB,EAAE,IAAI,EAAE,OAAO,EAAE,oBAAoB;oBACzD,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,yBAAyB,EAAE,IAAI,IAAI,EAAE;iBAC/D,CAAC;gBACF,0EAA0E;gBAC1E,IAAI,CAAC,YAAY,GAAG;oBAC1B,GAAG,IAAI,CAAC,YAAY;oBACpB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,yBAAyB,EAAE,IAAI,IAAI,EAAE;oBACzD,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,oBAAoB;iBAC3C,CAAC;gBAGF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,yBAAyB,EAAE,IAAI,IAAI,EAAE,CAAC;YACrE,CAAC;YAED,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,4DAA4D;YAC5D,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;gBAAQ,CAAC;YACV,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;QACvC,CAAC;IACH,CAAC;IACO,SAAS,CAAC,OAAe,EAAE,OAA4B,SAAS;QACtE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAE1B,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC7B,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CAAC,mBAAmB;QACjB,IAAI,IAAI,CAAC,sBAAsB;YAAE,OAAO;QAChD,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG;gBACd,cAAc,EAAE,kBAAkB;gBAClC,uBAAuB,EAAE,kEAAkE;gBAC3F,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,QAAQ,EAAE,GAAG;gBACb,eAAe,EAAE,IAAI,CAAC,aAAa;aACpC,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,+DAA+D,EAAE;gBAC1G,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAEnC,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACN,sDAAsD;gBACtD,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,wDAAwD;YACxD,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;gBAAO,CAAC;YACP,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;QACtC,CAAC;IACH,CAAC;IACQ,eAAe,GAAW,EAAE,CAAC;IAC/B,kBAAkB,GAAY,KAAK,CAAC;IAE7C,IAAI,aAAa;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;QACjD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAC9B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CACxC,CAAC;IACJ,CAAC;IACD,kCAAkC;IAClC,gEAAgE;IAChE,wDAAwD;IACxD,qCAAqC;IACrC,uDAAuD;IACvD,wBAAwB;IACxB,yCAAyC;IACzC,4EAA4E;IAC5E,sCAAsC;IACtC,eAAe;IACf,mCAAmC;IACnC,QAAQ;IACR,MAAM;IACN,iBAAiB,CAAC,CAAQ;QACxB,MAAM,UAAU,GAAI,CAAC,CAAC,MAA4B,CAAC,KAAK,CAAC;QACzD,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,+CAA+C;QAC/C,IAAI,CAAC,gBAAgB,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QAEnD,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;YAChC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,oBAAoB;QAClB,uBAAuB;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACnD,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;QACnF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,EAAE,CAAC;QACxD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IAC/B,CAAC;IACC,KAAK,CAAC,qBAAqB;QACzB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,qBAAqB,EAAE;gBAChE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,IAAI,CAAC,WAAW;oBAC/B,QAAQ,EAAE,GAAG;oBACb,eAAe,EAAE,IAAI,CAAC,aAAa;iBACpC;gBACD,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;aACnC,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,0CAA0C;gBAC1C,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;gBAChD,OAAO;YACT,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC;YACjC,2CAA2C;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iDAAiD;YACjD,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChE,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,IAAI,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QACtC,IAAI,oBAAoB,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;QACpD,MAAM,OAAO,GAAG;YACd,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,IAAI,CAAC,WAAW;YAC/B,QAAQ,EAAE,GAAG;YACb,eAAe,EAAE,IAAI,CAAC,aAAa;SACpC,CAAC;QACF,4DAA4D;QAE5D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,0CAA0C,EAAE;gBACrF,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,CAAC;gBAC3H,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,qEAAqE;gBACrE,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;gBAEhD,OAAO;YACT,CAAC;YACD,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,4BAA4B;gBAC5B,IAAI,CAAC,SAAS,CAAC,mCAAmC,EAAE,SAAS,CAAC,CAAC;gBAE/D,MAAM,QAAQ,GAAQ,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACtD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;oBAAE,OAAO;YACxD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;YAChD,yDAAyD;QAC3D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC;YACH,IAAI,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,6BAA6B,EAAE;gBACjE,MAAM,EAAE,QAAQ;gBAChB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YAEH,IAAI,CAAC,eAAe,GAAG;gBACrB,UAAU,EAAE,YAAY;gBACxB,UAAU,EAAE,EAAE;gBACd,QAAQ,EAAE,EAAE;gBACZ,aAAa,EAAE,CAAC;gBAChB,oBAAoB,EAAE,EAAE;gBACxB,QAAQ,EAAE,EAAE;aACb,CAAC;YACF,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,4BAA4B;gBAC5B,IAAI,CAAC,SAAS,CAAC,mCAAmC,EAAE,SAAS,CAAC,CAAC;gBAE/D,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,gCAAgC;YACrD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uDAAuD;YACvD,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IACD,WAAW;QACT,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;IACvC,CAAC;IACD,sBAAsB;IACtB,kDAAkD;IAClD,IAAI;IACJ,eAAe;QACf,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,wCAAwC;YACxC,IAAI,CAAC,gBAAgB,GAAG,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACjD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC;YAC5C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC;YACrD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,6BAA6B;YAC7D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,mDAAmD;YACnD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC;YAC5C,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACjD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,EAAE,IAAI,IAAI,EAAE,CAAC;YACzD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC;IAC/C,CAAC;IACC,qBAAqB;IACrB,8BAA8B;IAC9B,4FAA4F;IAC5F,8DAA8D;IAC9D,IAAI;IAEJ,UAAU,CAAC,IAAI;QACf,mCAAmC;QACnC,IAAI,CAAC,gBAAgB,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACjE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAClC,CAAC;IACC,IAAI,UAAU;QACZ,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QACrD,MAAM,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;QAClC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI;YACH,4DAAK,KAAK,EAAC,WAAW;gBACpB,4DAAK,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE;oBACpJ,0DAAG,MAAM,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM;wBAC1B,6DAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,GAAG;wBAC3C,6DAAM,IAAI,EAAC,SAAS,EAAC,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,GAAG,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,KAAK,GAAG;wBACjE,6DACE,CAAC,EAAC,wjBAAwjB,EAC1jB,IAAI,EAAC,SAAS,EACd,OAAO,EAAC,KAAK,GACb,CACA,CACA;gBAGL,IAAI,CAAC,WAAW,IAAI,CACnB,4DAAK,KAAK,EAAC,mCAAmC;oBAC5C,0DAAG,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE,EAAC,0BAA0B,EAAC,KAAK,EAAC,uBAAuB;wBAC/F,4DAAK,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM;4BAChG,0DAAG,EAAE,EAAC,iBAAiB;gCACrB,6DAAM,EAAE,EAAC,QAAQ,EAAC,CAAC,EAAC,8CAA8C,EAAC,MAAM,EAAC,SAAS,kBAAc,GAAG,oBAAgB,OAAO,qBAAiB,OAAO,GAAG,CACpJ,CACA,CACJ;oBACJ,4DAAK,KAAK,EAAC,qBAAqB;wBAC9B,2DAAI,IAAI,EAAC,SAAS,EAAC,KAAK,EAAC,8GAA8G;4BACrI,2DAAI,KAAK,EAAC,iBAAiB;gCACzB,yEAAe,KAAK,EAAC,IAAI,EAAC,KAAK,EAAC,KAAK,EAAC,iBAAiB,sBAEnD,CACD,CACF,CACD;oBAEN,4DAAK,KAAK,EAAC,yBAAyB;wBAClC,4DAAK,KAAK,EAAC,aAAa;4BACtB,4DAAK,EAAE,EAAC,kCAAkC,EAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,qDAAqD;gCACpH,4DAAK,KAAK,EAAC,iBAAiB;oCAC1B,4DAAK,KAAK,EAAC,kBAAkB;wCAC3B,4DAAK,KAAK,EAAC,YAAY;4CACrB,8EAA0B;4CAC1B,+DAAQ,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,GAAI,CAAC,CAAC,MAA4B,CAAC,KAAK,CAAC,IAC5F,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAC/B,cAAQ,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,UAAU,IAAI,MAAM,IACvE,MAAM,CACA,CACV,CAAC,CACK,CACL;wCAEN,4DAAK,KAAK,EAAC,YAAY;4CACrB,8EAA0B;4CAC1B,+DAAQ,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,GAAI,CAAC,CAAC,MAA4B,CAAC,KAAK,CAAC,IAC5F,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAC9B,cAAQ,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,UAAU,IAAI,MAAM,IACvE,MAAM,CACA,CACV,CAAC,CACK,CACL;wCAEN,4DAAK,KAAK,EAAC,YAAY;4CACrB,4EAAwB;4CACxB,+DAAQ,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAI,CAAC,CAAC,MAA4B,CAAC,KAAK,CAAC,IAC1F,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAC1B,cAAQ,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,IAC7E,IAAI,CAAC,KAAK,CACJ,CACV,CAAC,CACK,CACL;wCAEN,4DAAK,KAAK,EAAC,YAAY;4CACrB,sFAAkC;4CAClC,+DAAQ,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,GAAG,QAAQ,CAAE,CAAC,CAAC,MAA4B,CAAC,KAAK,CAAC,CAAC,IACzG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CACjC,cAAQ,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,aAAa,IAAI,MAAM,CAAC,KAAK,IACtF,MAAM,CAAC,KAAK,CACN,CACV,CAAC,CACK,CACL;wCAEN,4DAAK,KAAK,EAAC,YAAY;4CACrB,uFAAmC;4CACnC,4DAAK,KAAK,EAAC,aAAa,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE;gDAC5D,4DAAK,KAAK,EAAC,qBAAqB;oDAC9B,6DAAM,KAAK,EAAC,kBAAkB;wDAC5B,4DACE,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,SAAS,EACd,MAAM,EAAC,MAAM,EACb,KAAK,EAAC,MAAM,EACZ,OAAO,EAAC,KAAK,EACb,EAAE,EAAC,SAAS,EACZ,OAAO,EAAC,WAAW,uBACD,eAAe;4DAEjC,0DAAG,EAAE,EAAC,aAAa;gEACjB,6DAAM,CAAC,EAAC,orCAAorC,GAAG;gEAC/rC,6DAAM,CAAC,EAAC,29BAA29B,GAAG,CACp+B,CACA,CACD,CACH;gDACN,8DAAO,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,cAAc,EAAC,QAAQ,QAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,aAAa,EAAE,WAAW,EAAC,aAAa,GAAG,CACzH,CACF,CACF;oCACN,4DAAK,KAAK,EAAC,kBAAkB;wCAC3B,4DAAK,KAAK,EAAC,kBAAkB;4CAC3B,+DAAQ,KAAK,EAAC,iBAAiB,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,WAE9D;4CACT,+DAAQ,KAAK,EAAC,mBAAmB,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,YAE/D,CACL,CACF,CACF,CACF,CACF,CACF,CACF,CACP;gBAEA,IAAI,CAAC,aAAa,IAAI,4DAAK,KAAK,EAAE,SAAS,IAAI,CAAC,SAAS,EAAE,IAAG,IAAI,CAAC,YAAY,CAAO;gBAItF,IAAI,CAAC,eAAe,IAAI,CACvB,4DAAK,KAAK,EAAC,eAAe;oBACxB,4DAAK,KAAK,EAAC,qCAAqC;wBAC9C,4DAAK,KAAK,EAAC,4BAA4B;4BACrC,4DAAK,KAAK,EAAC,cAAc;gCACvB,2DAAI,KAAK,EAAC,uBAAuB,4CAA2C;gCAC5E,+DAAQ,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,EAAC,QAAQ,gBAAY,OAAO,EAAC,KAAK,EAAC,kBAAkB;oCACtG;wCACE,4DAAK,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM;4CAChG,0DAAG,EAAE,EAAC,iBAAiB;gDACrB,6DAAM,EAAE,EAAC,QAAQ,EAAC,CAAC,EAAC,8CAA8C,EAAC,MAAM,EAAC,SAAS,kBAAc,GAAG,oBAAgB,OAAO,qBAAiB,OAAO,GAAG,CACpJ,CACA,CACD,CACA,CACL;4BAIN,4DAAK,KAAK,EAAC,YAAY;gCACrB,4DAAK,KAAK,EAAC,KAAK;oCACd,4DAAK,KAAK,EAAC,QAAQ;wCACjB,4DAAK,KAAK,EAAC,KAAK;4CACd,4DAAK,KAAK,EAAC,YAAY;gDACrB,8DAAO,OAAO,EAAC,EAAE,6BAA+B;gDAChD,+DAAQ,KAAK,EAAC,IAAI,EAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;oDACxD,+DAAQ,KAAK,EAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,KAAK,IAAI,+BAE7C;oDACR,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CACxC,cAAQ,KAAK,EAAE,WAAW,CAAC,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,KAAK,WAAW,CAAC,aAAa,IACjG,WAAW,CAAC,eAAe,CACrB,CACV,CAAC,CACK,CACL,CACF;wCAGvB,IAAI,CAAC,aAAa,IAAI,CACrB,4DAAK,KAAK,EAAC,YAAY,EAAC,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;4CAClD,8DAAO,OAAO,EAAC,YAAY,kBAAoB;4CAG/C,4DAAK,KAAK,EAAC,uBAAuB;gDAChC,8DACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,cAAc,EACpB,WAAW,EAAC,iBAAiB,EAC7B,KAAK,EAAE,IAAI,CAAC,eAAe,EAC3B,OAAO,EAAE,CAAC,CAAC,EAAE;wDACX,IAAI,CAAC,eAAe,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK,CAAC;wDAC5D,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;oDACjC,CAAC,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAC7C;gDAGD,IAAI,CAAC,kBAAkB,IAAI,CAC1B,4DAAK,KAAK,EAAC,iBAAiB,IACzB,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACjC,WAAK,KAAK,EAAC,kBAAkB,qBAAqB,CACnD,CAAC,CAAC,CAAC,CACF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAC7B,WACE,KAAK,EAAE,iBAAiB,IAAI,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,EACrF,OAAO,EAAE,GAAG,EAAE;wDACZ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;wDACtB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC;wDACjC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;oDAClC,CAAC;oDAED,WAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE;wDACpF,YAAM,CAAC,EAAC,4DAA4D,EAClE,MAAM,EAAC,cAAc,kBAAc,GAAG,GAAE;wDAC1C,YAAM,CAAC,EAAC,WAAW,EAAC,MAAM,EAAC,cAAc,kBAAc,GAAG,GAAE,CACxD;oDAEN,gBAAO,IAAI,CAAC,IAAI,CAAQ;oDAGxB,aAAO,KAAK,EAAE;4DACZ,qBAAqB,EAAE,IAAI,CAAC,iBAAiB,IAAI,CAAC;4DAClD,mBAAmB,EAAE,IAAI,CAAC,iBAAiB,IAAI,CAAC;yDACjD,IACE,IAAI,CAAC,WAAW,CACX,CACJ,CACP,CAAC,CACH,CACG,CACP,CACG,CAEF,CACP,CA2CqB,CACF,CACF;4BAEL,4DAAK,KAAK,EAAC,cAAc;gCACxC,+DAAQ,KAAK,EAAC,iBAAiB,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,cAEjE;gCACT,+DAAQ,KAAK,EAAC,mBAAmB,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,aAE9D,CACL,CAEc,CACF,CACF,CACP,CACG,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, Prop, State, Watch, h, Element, EventEmitter, Event } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'eiam-user-preference',\r\n styleUrl: 'eiam-user-preference.css',\r\n shadow: true,\r\n})\r\nexport class EiamUserPreference {\r\n @Element() host: HTMLElement;\r\n @State() currentRouteSlug: string;\r\n @State() payload = {\r\n pagination: {\r\n pageIndex: 0,\r\n pageSize: 1000,\r\n },\r\n search: {\r\n pageName: '',\r\n },\r\n };\r\n @Event() preferencesChanged: EventEmitter<any>;\r\n @State() userPreferences = {\r\n dateFormat: 'dd/MM/yyyy',\r\n timeFormat: '',\r\n fontSize: null,\r\n displayFormat: 4,\r\n defaultLandingPageId: '',\r\n pageName: '',\r\n };\r\n\r\n @State() dateFormates: string[] = ['dd/MM/yyyy', 'MM/dd/yyyy', 'yyyy-MM-dd'];\r\n @State() timeFormats: string[] = ['h:mm a'];\r\n @State() fontSizes = [\r\n { label: 'Small', value: '14' },\r\n { label: 'Medium', value: '16' },\r\n { label: 'Large', value: '18' },\r\n ];\r\n @State() displayFormats: any[] = [];\r\n @State() userApplications: any[] = [];\r\n @State() pages: any[] = [];\r\n @State() isModalOpen = false;\r\n @State() currentPage: number = 1;\r\n @State() pageSize: number = 10;\r\n @State() isPageModalOpen: boolean = false; // Controls the visibility of the secondary modal\r\n @State() selectedPage: { pageId: number; name: string } = { pageId: null, name: '' }; // To store selected page\r\n @State() showToastFlag: any;\r\n @State() toastType: any;\r\n @State() toastMessage: any;\r\n @Prop() pageId: any;\r\n @Prop() cultureCode: string;\r\n @Prop() applicationId: string;\r\n @Prop() apiUrl: string;\r\n @State() tempSelectedPage: { pageId: number; name: string } = { pageId: null, name: '' };\r\n@State() tempApplicationId: string = null;\r\n @Watch('cultureCode')\r\n @Watch('applicationId')\r\n @Watch('pageId')\r\n @Watch('apiUrl')\r\n\r\n\r\nasync watchChanges() {\r\n await this.fetchInitiateValue();\r\n}\r\n\r\nasync componentWillLoad() {\r\n await this.fetchInitiateValue();\r\n}\r\n\r\nprivate isFetching = false;\r\nasync fetchInitiateValue() {\r\n if (!this.cultureCode || !this.applicationId || !this.apiUrl) {\r\n return; // wait until all props are ready\r\n }\r\n\r\n if (this.isFetching) return; // prevent duplicate calls\r\n this.isFetching = true;\r\n\r\n await this.getDisplayFormats();\r\n await this.getUserPreferences();\r\n await this.getUserApplications();\r\n\r\n this.isFetching = false;\r\n}\r\n\r\nprivate isFetchingDisplayFormats = false;\r\nprivate isFetchingUserPreferences = false;\r\nprivate isFetchingApplications = false;\r\n\r\n async getDisplayFormats() {\r\n if (this.isFetchingDisplayFormats) return;\r\n this.isFetchingDisplayFormats = true;\r\n try {\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n };\r\n\r\n const response = await fetch(`${this.apiUrl}/api/UserPreferences/DisplayFormats`, {\r\n method: 'GET', // Specify GET method\r\n headers: headers,\r\n credentials: 'include', // Include credentials (cookies) in the request\r\n });\r\n\r\n const data = await response.json();\r\n\r\n if (Array.isArray(data.content)) {\r\n this.displayFormats = data.content;\r\n } else {\r\n // console.error('Invalid response structure:', data);\r\n this.showToast('Something went wrong', 'error');\r\n }\r\n } catch (error) {\r\n // console.error('Error fetching display formats:', error);\r\n this.showToast('Something went wrong', 'error');\r\n }finally {\r\n this.isFetchingDisplayFormats = false;\r\n }\r\n }\r\n\r\n async getUserPreferences() {\r\n if (this.isFetchingUserPreferences) return;\r\n this.isFetchingUserPreferences = true;\r\n try {\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n };\r\n\r\n const response = await fetch(`${this.apiUrl}/api/UserPreferences/GetUserPreferences`, {\r\n method: 'GET',\r\n headers: headers,\r\n credentials: 'include',\r\n });\r\n\r\n let data = await response.json();\r\n if (data && typeof data !== 'string' && data.code == \"0000\") {\r\n console.log(data, ' data of user preferances');\r\n const fontSizeValue = parseInt(data.content.fontSize);\r\n console.log(fontSizeValue, ' fontSizeValue of user preferances');\r\n\r\n this.userPreferences = {\r\n ...this.userPreferences,\r\n dateFormat: data.content?.dateFormat || 'dd/MM/yyyy',\r\n timeFormat: data.content?.timeFormat || this.timeFormats[0], // fallback!\r\n fontSize: !isNaN(fontSizeValue) ? fontSizeValue : parseInt(this.fontSizes[0]?.value),\r\n displayFormat: data.content?.displayFormat || 1,\r\n defaultLandingPageId: data?.content?.defaultLandingPageId,\r\n pageName: data?.content?.defaultLandingPageDetails?.name || '',\r\n };\r\n // this.selectedPage.name = data.content?.defaultLandingPageDetails?.name;\r\n this.selectedPage = {\r\n ...this.selectedPage,\r\n name: data.content?.defaultLandingPageDetails?.name || '',\r\n pageId: data.content?.defaultLandingPageId, \r\n};\r\n\r\n\r\nthis.pageSearchQuery = data.content?.defaultLandingPageDetails?.name || '';\r\n }\r\n \r\n this.preferencesChanged.emit(data);\r\n } catch (error) {\r\n // console.error('Error fetching user preferences:', error);\r\n this.showToast('Something went wrong', 'error');\r\n }finally {\r\n this.isFetchingUserPreferences = false;\r\n }\r\n }\r\n private showToast(message: string, type: 'success' | 'error' = 'success') {\r\n this.toastMessage = message;\r\n this.toastType = type;\r\n this.showToastFlag = true;\r\n\r\n setTimeout(() => {\r\n this.showToastFlag = false;\r\n }, 3000);\r\n }\r\n\r\n async getUserApplications() {\r\n if (this.isFetchingApplications) return;\r\n this.isFetchingApplications = true;\r\n try {\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'IntegrationPermission': '0f5d983d203189bbffc5f686d01f6680bc6a83718a515fe42639347efc92478e',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n };\r\n\r\n const response = await fetch(`${this.apiUrl}/api/OrganizationApplicationsApi/GetAssigndApplicationForUser`, {\r\n method: 'GET',\r\n headers: headers,\r\n credentials: 'include',\r\n });\r\n\r\n const data = await response.json();\r\n\r\n if (data && Array.isArray(data.content)) {\r\n this.userApplications = data.content.filter(el => el.applicationId !== 1);\r\n } else {\r\n // console.error('Invalid response structure:', data);\r\n this.showToast('Something went wrong', 'error');\r\n }\r\n } catch (error) {\r\n // console.error('Error fetching applications:', error);\r\n this.showToast('Something went wrong', 'error');\r\n }finally{\r\n this.isFetchingApplications = false;\r\n }\r\n }\r\n @State() pageSearchQuery: string = '';\r\n@State() isPageDropdownOpen: boolean = false;\r\n\r\nget filteredPages() {\r\n const query = this.pageSearchQuery.toLowerCase();\r\n return this.pages.filter(page =>\r\n page.name.toLowerCase().includes(query)\r\n );\r\n}\r\n// changeApplication(e: Event) {\r\n// const selectedId = (e.target as HTMLSelectElement).value;\r\n// this.pageSearchQuery = ''; // ✅ reset search\r\n// this.isPageDropdownOpen = false;\r\n// this.selectedPage = { pageId: null, name: '' }; \r\n// if (selectedId) {\r\n// this.applicationId = selectedId;\r\n// // console.log(this.applicationId, 'this.applicationId on change');\r\n// this.getPagesSApplications();\r\n// } else {\r\n// this.applicationId = null;\r\n// }\r\n// }\r\nchangeApplication(e: Event) {\r\n const selectedId = (e.target as HTMLSelectElement).value;\r\n this.pageSearchQuery = '';\r\n this.isPageDropdownOpen = false;\r\n this.pages = [];\r\n // reset only temp selection, not the saved one\r\n this.tempSelectedPage = { pageId: null, name: '' };\r\n\r\n if (selectedId) {\r\n this.applicationId = selectedId;\r\n this.getPagesSApplications();\r\n } else {\r\n this.applicationId = null;\r\n }\r\n}\r\nconfirmPageSelection() {\r\n // Apply temp to actual\r\n this.selectedPage = { ...this.tempSelectedPage };\r\nthis.userPreferences.defaultLandingPageId = this.tempSelectedPage.pageId?.toString();\r\n this.pageSearchQuery = this.tempSelectedPage.name || '';\r\n this.pages = [];\r\n this.isPageDropdownOpen = false;\r\n this.isPageModalOpen = false;\r\n}\r\n async getPagesSApplications() {\r\n try {\r\n const response = await fetch(`${this.apiUrl}/api/Pages/GetPages`, {\r\n method: 'POST',\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n },\r\n credentials: 'include',\r\n body: JSON.stringify(this.payload),\r\n });\r\n\r\n if (!response.ok) {\r\n // console.error('Failed to fetch pages');\r\n this.showToast('Something went wrong', 'error');\r\n return;\r\n }\r\n\r\n const data = await response.json();\r\n this.pages = data?.content?.data;\r\n // console.log(data, 'data of all pages ');\r\n } catch (error) {\r\n // console.error('Error fetching pages:', error);\r\n this.showToast('Something went wrong', 'error');\r\n }\r\n }\r\n\r\n async submitPreferences() {\r\n const fontSizeValue = parseFloat(this.userPreferences.fontSize);\r\n const fontSize = !isNaN(fontSizeValue) ? `${fontSizeValue}px` : null;\r\n let pageName = this.selectedPage.name;\r\n let defaultLandingPageId = this.selectedPage.pageId;\r\n const headers = {\r\n 'Content-Type': 'application/json',\r\n 'CultureCode': this.cultureCode,\r\n 'Source': '2',\r\n 'applicationId': this.applicationId,\r\n };\r\n // console.log(this.userPreferences, 'user preferancesss ');\r\n\r\n try {\r\n const response = await fetch(`${this.apiUrl}/api/UserPreferences/SaveUserPreferences`, {\r\n method: 'POST',\r\n headers,\r\n body: JSON.stringify({ ...this.userPreferences, fontSize, pageName: pageName, defaultLandingPageId: defaultLandingPageId }),\r\n credentials: 'include',\r\n });\r\n\r\n if (!response.ok) {\r\n // console.error('Failed to save preferences:', response.statusText);\r\n this.showToast('Something went wrong', 'error');\r\n\r\n return;\r\n }\r\n if (response.ok) {\r\n // Fetch updated preferences\r\n this.showToast('Preferences updated successfully!', 'success');\r\n\r\n const newPrefs: any = await this.getUserPreferences();\r\n if (!newPrefs || typeof newPrefs === 'string') return;\r\n }\r\n } catch (error) {\r\n this.showToast('Something went wrong', 'error');\r\n // console.error('Error submitting preferences:', error);\r\n }\r\n }\r\n\r\n async resetPreferences() {\r\n try {\r\n let res = await fetch(`${this.apiUrl}/api/UserPreferences/Delete`, {\r\n method: 'DELETE',\r\n credentials: 'include',\r\n });\r\n\r\n this.userPreferences = {\r\n dateFormat: 'dd/MM/yyyy',\r\n timeFormat: '',\r\n fontSize: '',\r\n displayFormat: 4,\r\n defaultLandingPageId: '',\r\n pageName: '',\r\n };\r\n if (res.ok) {\r\n // Fetch updated preferences\r\n this.showToast('Preferences updated successfully!', 'success');\r\n\r\n location.reload(); // If you want to refresh the UI\r\n }\r\n } catch (error) {\r\n // console.error('Failed to reset preferences', error);\r\n this.showToast('Something went wrong', 'error');\r\n }\r\n }\r\n toggleModal() {\r\n this.isModalOpen = !this.isModalOpen;\r\n }\r\n // togglePageModal() {\r\n // this.isPageModalOpen = !this.isPageModalOpen;\r\n // }\r\n togglePageModal() {\r\n if (!this.isPageModalOpen) {\r\n // Opening - save current values to temp\r\n this.tempSelectedPage = { ...this.selectedPage };\r\n this.tempApplicationId = this.applicationId;\r\n this.pageSearchQuery = this.selectedPage?.name || '';\r\n if (this.applicationId) {\r\n this.getPagesSApplications(); // load pages for current app\r\n }\r\n } else {\r\n // Closing WITHOUT saving - restore previous values\r\n this.applicationId = this.tempApplicationId;\r\n this.selectedPage = { ...this.tempSelectedPage };\r\n this.pageSearchQuery = this.tempSelectedPage?.name || '';\r\n this.pages = [];\r\n this.isPageDropdownOpen = false;\r\n }\r\n this.isPageModalOpen = !this.isPageModalOpen;\r\n}\r\n // selectPage(page) {\r\n // this.selectedPage = page;\r\n // this.userPreferences.defaultLandingPageId = page.pageId; // Update default landing page\r\n // this.togglePageModal(); // Close the page selection modal\r\n // }\r\n\r\n selectPage(page) {\r\n // Only update temp, not actual yet\r\n this.tempSelectedPage = { pageId: page.pageId, name: page.name };\r\n this.pageSearchQuery = page.name;\r\n this.isPageDropdownOpen = false;\r\n}\r\n get pagedPages() {\r\n const start = (this.currentPage - 1) * this.pageSize;\r\n const end = start + this.pageSize;\r\n return this.pages.slice(start, end);\r\n }\r\n\r\n get totalPages() {\r\n return Math.ceil(this.pages.length / this.pageSize);\r\n }\r\n\r\n render() {\r\n return (\r\n <Host>\r\n <div class=\"container\">\r\n <svg onClick={() => this.toggleModal()} xmlns=\"http://www.w3.org/2000/svg\" width=\"28px\" height=\"28px\" viewBox=\"0 0 24 24\" style={{ cursor: 'pointer' }}>\r\n <g stroke=\"none\" fill=\"none\">\r\n <rect x=\"0\" y=\"0\" width=\"24\" height=\"24\" />\r\n <rect fill=\"#008fc7\" x=\"4\" y=\"4\" width=\"7\" height=\"7\" rx=\"1.5\" />\r\n <path\r\n d=\"M5.5,13 L9.5,13 C10.3284271,13 11,13.6715729 11,14.5 L11,18.5 C11,19.3284271 10.3284271,20 9.5,20 L5.5,20 C4.67157288,20 4,19.3284271 4,18.5 L4,14.5 C4,13.6715729 4.67157288,13 5.5,13 Z M14.5,4 L18.5,4 C19.3284271,4 20,4.67157288 20,5.5 L20,9.5 C20,10.3284271 19.3284271,11 18.5,11 L14.5,11 C13.6715729,11 13,10.3284271 13,9.5 L13,5.5 C13,4.67157288 13.6715729,4 14.5,4 Z M14.5,13 L18.5,13 C19.3284271,13 20,13.6715729 20,14.5 L20,18.5 C20,19.3284271 19.3284271,20 18.5,20 L14.5,20 C13.6715729,20 13,19.3284271 13,18.5 L13,14.5 C13,13.6715729 13.6715729,13 14.5,13 Z\"\r\n fill=\"#008fc7\"\r\n opacity=\"0.3\"\r\n />\r\n </g>\r\n </svg>\r\n\r\n {/* Main Modal */}\r\n {this.isModalOpen && (\r\n <div class=\"kt-quick-panel kt-quick-panel--on\">\r\n <a onClick={() => this.toggleModal()} id=\"kt_quick_panel_close_btn\" class=\"kt-quick-panel__close\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"25px\" height=\"25px\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <g id=\"Menu / Close_SM\">\r\n <path id=\"Vector\" d=\"M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16\" stroke=\"#000000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </a>\r\n <div class=\"kt-quick-panel__nav\">\r\n <ul role=\"tablist\" class=\"nav nav-tabs nav-tabs-line nav-tabs-bold nav-tabs-line-3x nav-tabs-line-brand kt-notification-item-padding-x\">\r\n <li class=\"nav-item active\">\r\n <a data-toggle=\"tab\" role=\"tab\" class=\"nav-link active\">\r\n User Preference\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n <div class=\"kt-quick-panel__content\">\r\n <div class=\"tab-content\">\r\n <div id=\"kt_quick_panel_tab_notifications\" role=\"tabpanel\" class=\"tab-pane fade show kt-scroll active ps ps--active-y\">\r\n <div class=\"kt-notification\">\r\n <div class=\"kt-portlet__body\">\r\n <div class=\"form-group\">\r\n <label>Date Format</label>\r\n <select onInput={e => (this.userPreferences.dateFormat = (e.target as HTMLSelectElement).value)}>\r\n {this.dateFormates.map(format => (\r\n <option value={format} selected={this.userPreferences.dateFormat == format}>\r\n {format}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <label>Time Format</label>\r\n <select onInput={e => (this.userPreferences.timeFormat = (e.target as HTMLSelectElement).value)}>\r\n {this.timeFormats.map(format => (\r\n <option value={format} selected={this.userPreferences.timeFormat == format}>\r\n {format}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <label>Font Size</label>\r\n <select onInput={e => (this.userPreferences.fontSize = (e.target as HTMLSelectElement).value)}>\r\n {this.fontSizes.map(size => (\r\n <option value={size.value} selected={this.userPreferences.fontSize == size.value}>\r\n {size.label}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <label>User Display Format</label>\r\n <select onInput={e => (this.userPreferences.displayFormat = parseInt((e.target as HTMLSelectElement).value))}>\r\n {this.displayFormats.map(format => (\r\n <option value={format.value} selected={this.userPreferences.displayFormat == format.value}>\r\n {format.label}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <label>Default Landing Page</label>\r\n <div class=\"input-group\" onClick={() => this.togglePageModal()}>\r\n <div class=\"input-group-prepend\">\r\n <span class=\"input-group-text\">\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"#000000\"\r\n height=\"18px\"\r\n width=\"18px\"\r\n version=\"1.1\"\r\n id=\"Layer_1\"\r\n viewBox=\"0 0 64 64\"\r\n enable-background=\"new 0 0 64 64\"\r\n >\r\n <g id=\"Link-chains\">\r\n <path d=\"M56.1697006,10.5212574C55.7126999,8.8132582,54.618,7.3864579,53.0876999,6.5036578l-9.7275009-5.6162 c-1.5303001-0.8838-3.3144989-1.1180999-5.0205994-0.6611c-1.7070007,0.458-3.1347008,1.5527-4.0185013,3.0840001 L21.9655991,24.7107582c-0.8838005,1.5301991-1.1191006,3.3134003-0.6611004,5.0205002 c0.4580002,1.7069988,1.5527,3.1338005,3.0839996,4.017498l7.5703011,4.3721008 c0.157198,0.0908012,0.3290997,0.1338005,0.4989986,0.1338005c0.3456993,0,0.6817017-0.1786995,0.8671989-0.5 c0.2764015-0.4785004,0.1123009-1.0898018-0.3661995-1.3661995l-7.5702991-4.3721008 c-1.0683994-0.6161995-1.8330002-1.612299-2.1523991-2.8027c-0.3192997-1.1903992-0.155201-2.4345989,0.4618988-3.5028992 L36.0534973,4.3103576c0.6172028-1.0683999,1.6123009-1.8329999,2.8037033-2.1523998 c1.1894989-0.3183,2.4355965-0.1552,3.5029984,0.4619l9.7275009,5.6162996 c1.0673981,0.6162004,1.8311005,1.6113005,2.1503983,2.8027c0.3193016,1.1914005,0.1553001,2.4355001-0.4618988,3.5039005 l-6.3652992,11.0243998c-0.2763023,0.4785004-0.1123009,1.0897999,0.3661995,1.3661995 c0.4755974,0.2754002,1.0888977,0.1123009,1.3662987-0.3661995l6.3652-11.0243998 C56.3923988,14.0124578,56.627697,12.2292576,56.1697006,10.5212574z\" />\r\n <path d=\"M39.6082001,30.2507572l-8.8691006-5.1201c-0.4786015-0.2763996-1.089901-0.112299-1.3662014,0.3662014 c-0.2763996,0.4784985-0.1124001,1.0897999,0.3662014,1.3661995l8.8691006,5.1201 c2.2040977,1.2734985,2.9618988,4.1026001,1.6884995,6.3066978L27.9411983,59.690258 c-0.6161995,1.0682983-1.6112995,1.8320007-2.8027,2.1512985c-1.1894989,0.3184013-2.4335995,0.1562996-3.5019989-0.4608994 l-9.7275009-5.6161995c-2.2040997-1.2734985-2.9629002-4.1026001-1.6904001-6.3067017l6.365201-11.0243988 c0.2763996-0.4785004,0.112299-1.089798-0.3662014-1.3661995c-0.4775991-0.2764015-1.0898991-0.1133003-1.3661995,0.3661995 L8.4860983,48.457756c-1.8231997,3.1592026-0.7362995,7.2139015,2.4229002,9.0391006l9.7275009,5.6161995 c1.0195999,0.5879021,2.1504002,0.8886986,3.2958984,0.8886986c0.575201,0,1.1543007-0.0751953,1.7246017-0.2284966 c1.7070999-0.4570999,3.1337986-1.5527992,4.0165997-3.0830002L42.0290985,39.289856 C43.8532982,36.1316566,42.7673988,32.0769577,39.6082001,30.2507572z\" />\r\n </g>\r\n </svg>\r\n </span>\r\n </div>\r\n <input type=\"text\" class=\"form-control\" readonly value={this.selectedPage.name || 'Select page'} placeholder=\"Select page\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"kt-portlet__foot\">\r\n <div class=\"kt-form__actions\">\r\n <button class=\"btn btn-primary\" onClick={() => this.submitPreferences()}>\r\n Save\r\n </button>\r\n <button class=\"btn btn-secondary\" onClick={() => this.resetPreferences()}>\r\n Reset\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n\r\n {this.showToastFlag && <div class={`toast ${this.toastType}`}>{this.toastMessage}</div>}\r\n\r\n {/* Page Selection Modal */}\r\n\r\n {this.isPageModalOpen && (\r\n <div class=\"modal-overlay\">\r\n <div class=\"modal-dialog modal-md landing-modal\">\r\n <div class=\"modal-content landing-page\">\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title pull-left\"> Customize your default landing page </h4>\r\n <button onClick={() => this.togglePageModal()} type=\"button\" aria-label=\"Close\" class=\"close pull-right\">\r\n <span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15px\" height=\"15px\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <g id=\"Menu / Close_SM\">\r\n <path id=\"Vector\" d=\"M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16\" stroke=\"#000000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n </svg>\r\n </span>\r\n </button>\r\n </div>\r\n\r\n \r\n\r\n <div class=\"modal-body\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"row\">\r\n <div class=\"form-group\">\r\n <label htmlFor=\"\"> Default Landing Page </label>\r\n <select class=\"ng\" onInput={e => this.changeApplication(e)}>\r\n <option value=\"\" selected={this.applicationId === null}>\r\n -- Select Application --\r\n </option>\r\n {this.userApplications.map(application => (\r\n <option value={application.applicationId} selected={this.applicationId === application.applicationId}>\r\n {application.applicationName}\r\n </option>\r\n ))}\r\n </select>\r\n </div>\r\n </div>\r\n\r\n {/* ===== Page Searchable Dropdown (only shows after app is selected) ===== */}\r\n {this.applicationId && (\r\n <div class=\"form-group\" style={{ marginTop: '12px' }}>\r\n <label htmlFor=\"pageSearch\">Select Page</label>\r\n\r\n {/* Search input */}\r\n <div class=\"search-select-wrapper\">\r\n <input\r\n type=\"text\"\r\n class=\"search-input\"\r\n placeholder=\"Search Pages...\"\r\n value={this.pageSearchQuery}\r\n onInput={e => {\r\n this.pageSearchQuery = (e.target as HTMLInputElement).value;\r\n this.isPageDropdownOpen = true;\r\n }}\r\n onFocus={() => this.isPageDropdownOpen = true}\r\n />\r\n\r\n {/* Dropdown list */}\r\n {this.isPageDropdownOpen && (\r\n <div class=\"search-dropdown\">\r\n {this.filteredPages.length === 0 ? (\r\n <div class=\"search-no-result\">No pages found</div>\r\n ) : (\r\n this.filteredPages.map(page => (\r\n <div\r\n class={`search-option ${this.selectedPage?.pageId === page.pageId ? 'selected' : ''}`}\r\n onClick={() => {\r\n this.selectPage(page);\r\n this.pageSearchQuery = page.name;\r\n this.isPageDropdownOpen = false;\r\n }}>\r\n {/* Page icon */}\r\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" style={{ flexShrink: '0' }}>\r\n <path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"\r\n stroke=\"currentColor\" stroke-width=\"2\"/>\r\n <path d=\"M14 2v6h6\" stroke=\"currentColor\" stroke-width=\"2\"/>\r\n </svg>\r\n\r\n <span>{page.name}</span>\r\n\r\n {/* Culture badge */}\r\n <small class={{\r\n 'culture-unpublished': page.pageCultureStatus == 1,\r\n 'culture-published': page.pageCultureStatus == 2,\r\n }}>\r\n {page.cultureCode}\r\n </small>\r\n </div>\r\n ))\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n\r\n </div>\r\n )}\r\n {/* { <label>Select Page</label>\r\n <div style={{ maxHeight: '250px', overflowY: 'auto', overflowX: 'hidden' }}>\r\n {this.pagedPages.map(page => (\r\n <div class=\"slug-item\" onClick={() => this.selectPage(page)}>\r\n <div class=\"row\">\r\n <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" >\r\n <path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\" stroke=\"currentColor\" ></path>\r\n <path d=\"M14 2v6h6\" stroke=\"currentColor\" ></path>\r\n</svg>\r\n <span class=\"text-brand\" style={{ fontWeight: '600', lineHeight: '1', padding: '5px' }}>\r\n {page.name}\r\n </span>\r\n <small\r\n class={{\r\n 'culture-unpublished': page.pageCultureStatus == 1,\r\n 'culture-published': page.pageCultureStatus == 2,\r\n }}\r\n >\r\n {page.cultureCode}\r\n </small>\r\n </div>\r\n </div>\r\n ))}\r\n </div>\r\n\r\n {this.totalPages > 1 && (\r\n <div class=\"pagination-controls\">\r\n <button class=\"arrow-button\" disabled={this.currentPage === 1} onClick={() => this.currentPage--}>\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M15 18L9 12L15 6\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </button>\r\n <span>\r\n {this.currentPage} of {this.totalPages}\r\n </span>\r\n <button class=\"arrow-button\" disabled={this.currentPage === this.totalPages} onClick={() => this.currentPage++}>\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path d=\"M9 6L15 12L9 18\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </button>\r\n </div>\r\n )}} */}\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"modal-footer\">\r\n <button class=\"btn btn-primary\" onClick={() => this.confirmPageSelection()}>\r\n Confirm\r\n </button>\r\n <button class=\"btn btn-secondary\" onClick={() => this.togglePageModal()}>\r\n Cancel\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -17,7 +17,7 @@ export class MyComponent {
|
|
|
17
17
|
return format(this.first, this.middle, this.last);
|
|
18
18
|
}
|
|
19
19
|
render() {
|
|
20
|
-
return h("div", { key: '
|
|
20
|
+
return h("div", { key: '9ba74718fd3048e26b15a288d6736ac911c739de' }, "Hello, World! I'm ", this.getText());
|
|
21
21
|
}
|
|
22
22
|
static get is() { return "my-component"; }
|
|
23
23
|
static get encapsulation() { return "shadow"; }
|