eiam-user-preference 0.0.83 → 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.
Files changed (26) hide show
  1. package/dist/cjs/eiam-user-preference.cjs.entry.js +60 -9
  2. package/dist/cjs/eiam-user-preference.cjs.js +1 -1
  3. package/dist/cjs/eiam-user-preference.entry.cjs.js.map +1 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/my-component.cjs.entry.js +1 -1
  6. package/dist/collection/components/eiam-user-preference/eiam-user-preference.js +62 -9
  7. package/dist/collection/components/eiam-user-preference/eiam-user-preference.js.map +1 -1
  8. package/dist/collection/components/my-component/my-component.js +1 -1
  9. package/dist/components/eiam-user-preference.js +62 -9
  10. package/dist/components/eiam-user-preference.js.map +1 -1
  11. package/dist/components/my-component.js +1 -1
  12. package/dist/eiam-user-preference/eiam-user-preference.entry.esm.js.map +1 -1
  13. package/dist/eiam-user-preference/eiam-user-preference.esm.js +1 -1
  14. package/dist/eiam-user-preference/{p-be2deed9.entry.js → p-711eca4f.entry.js} +2 -2
  15. package/dist/eiam-user-preference/p-711eca4f.entry.js.map +1 -0
  16. package/dist/eiam-user-preference/p-f8571c93.entry.js +2 -0
  17. package/dist/esm/eiam-user-preference.entry.js +60 -9
  18. package/dist/esm/eiam-user-preference.entry.js.map +1 -1
  19. package/dist/esm/eiam-user-preference.js +1 -1
  20. package/dist/esm/loader.js +1 -1
  21. package/dist/esm/my-component.entry.js +1 -1
  22. package/dist/types/components/eiam-user-preference/eiam-user-preference.d.ts +6 -0
  23. package/package.json +1 -1
  24. package/dist/eiam-user-preference/p-240b44d5.entry.js +0 -2
  25. package/dist/eiam-user-preference/p-be2deed9.entry.js.map +0 -1
  26. /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: '864ca04664ee789c54a060b6875fb7fd8a7ef2ec' }, "Hello, World! I'm ", this.getText());
28
+ return index.h("div", { key: '9ba74718fd3048e26b15a288d6736ac911c739de' }, "Hello, World! I'm ", this.getText());
29
29
  }
30
30
  };
31
31
  MyComponent.style = myComponentCss;
@@ -42,6 +42,8 @@ export class EiamUserPreference {
42
42
  cultureCode;
43
43
  applicationId;
44
44
  apiUrl;
45
+ tempSelectedPage = { pageId: null, name: '' };
46
+ tempApplicationId = null;
45
47
  async watchChanges() {
46
48
  await this.fetchInitiateValue();
47
49
  }
@@ -193,20 +195,43 @@ export class EiamUserPreference {
193
195
  const query = this.pageSearchQuery.toLowerCase();
194
196
  return this.pages.filter(page => page.name.toLowerCase().includes(query));
195
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
+ // }
196
211
  changeApplication(e) {
197
212
  const selectedId = e.target.value;
198
- this.pageSearchQuery = ''; // ✅ reset search
213
+ this.pageSearchQuery = '';
199
214
  this.isPageDropdownOpen = false;
200
- this.selectedPage = { pageId: null, name: '' };
215
+ this.pages = [];
216
+ // reset only temp selection, not the saved one
217
+ this.tempSelectedPage = { pageId: null, name: '' };
201
218
  if (selectedId) {
202
219
  this.applicationId = selectedId;
203
- // console.log(this.applicationId, 'this.applicationId on change');
204
220
  this.getPagesSApplications();
205
221
  }
206
222
  else {
207
223
  this.applicationId = null;
208
224
  }
209
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
+ }
210
235
  async getPagesSApplications() {
211
236
  try {
212
237
  const response = await fetch(`${this.apiUrl}/api/Pages/GetPages`, {
@@ -299,13 +324,39 @@ export class EiamUserPreference {
299
324
  toggleModal() {
300
325
  this.isModalOpen = !this.isModalOpen;
301
326
  }
327
+ // togglePageModal() {
328
+ // this.isPageModalOpen = !this.isPageModalOpen;
329
+ // }
302
330
  togglePageModal() {
331
+ if (!this.isPageModalOpen) {
332
+ // Opening - save current values to temp
333
+ this.tempSelectedPage = { ...this.selectedPage };
334
+ this.tempApplicationId = this.applicationId;
335
+ this.pageSearchQuery = this.selectedPage?.name || '';
336
+ if (this.applicationId) {
337
+ this.getPagesSApplications(); // load pages for current app
338
+ }
339
+ }
340
+ else {
341
+ // Closing WITHOUT saving - restore previous values
342
+ this.applicationId = this.tempApplicationId;
343
+ this.selectedPage = { ...this.tempSelectedPage };
344
+ this.pageSearchQuery = this.tempSelectedPage?.name || '';
345
+ this.pages = [];
346
+ this.isPageDropdownOpen = false;
347
+ }
303
348
  this.isPageModalOpen = !this.isPageModalOpen;
304
349
  }
350
+ // selectPage(page) {
351
+ // this.selectedPage = page;
352
+ // this.userPreferences.defaultLandingPageId = page.pageId; // Update default landing page
353
+ // this.togglePageModal(); // Close the page selection modal
354
+ // }
305
355
  selectPage(page) {
306
- this.selectedPage = page;
307
- this.userPreferences.defaultLandingPageId = page.pageId; // Update default landing page
308
- this.togglePageModal(); // Close the page selection modal
356
+ // Only update temp, not actual yet
357
+ this.tempSelectedPage = { pageId: page.pageId, name: page.name };
358
+ this.pageSearchQuery = page.name;
359
+ this.isPageDropdownOpen = false;
309
360
  }
310
361
  get pagedPages() {
311
362
  const start = (this.currentPage - 1) * this.pageSize;
@@ -316,17 +367,17 @@ export class EiamUserPreference {
316
367
  return Math.ceil(this.pages.length / this.pageSize);
317
368
  }
318
369
  render() {
319
- return (h(Host, { key: 'f91970ee8cb44f1bbbd275c034afc2f92e11a691' }, h("div", { key: 'd69249461cb44c8cd719a9e98456be0e7cfad862', class: "container" }, h("svg", { key: '72351bf7406769a6ccab6d0c9d82dd2360261f52', 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: '997788a4575a4959c1a30df8e9e3c9b531d1d4f9', stroke: "none", fill: "none" }, h("rect", { key: 'c3f4ca6814bc1bba308eb155e87188457cf78e0d', x: "0", y: "0", width: "24", height: "24" }), h("rect", { key: 'f9052cecc17c8bdebf99dfaad362bf86153e3c2f', fill: "#008fc7", x: "4", y: "4", width: "7", height: "7", rx: "1.5" }), h("path", { key: '0ec765649b222dd98f7e6755baf863ca4005b90e', 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: '036a181940bfb9b2d66632d2cef34c4f86074d32', class: "kt-quick-panel kt-quick-panel--on" }, h("a", { key: '704e03f3d53ce6fe8c45be282b535f54b5dd8d4b', onClick: () => this.toggleModal(), id: "kt_quick_panel_close_btn", class: "kt-quick-panel__close" }, h("svg", { key: '0b3b185c7d8879fae1c73b7c6db9ab6b6aec52a5', xmlns: "http://www.w3.org/2000/svg", width: "25px", height: "25px", viewBox: "0 0 24 24", fill: "none" }, h("g", { key: '198188df09d8998e7dc80005790c86eca22c9d1a', id: "Menu / Close_SM" }, h("path", { key: '9cce34425f6afd8aab94d53933be246ec68e718a', 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: 'bb3791483119e79a2832138a29d92953bb2a7558', class: "kt-quick-panel__nav" }, h("ul", { key: '6a40a392bb1787fe03a14ecda87b24b0ce206c57', 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: 'fb567c2e7fadfcdf7d3aa799dc75a97df83aa774', class: "nav-item active" }, h("a", { key: '6a3891513bd43cf475aa7c7d707d6609b9023af7', "data-toggle": "tab", role: "tab", class: "nav-link active" }, "User Preference")))), h("div", { key: 'c101a2408c0ed54544f71508bd3d926adf80be85', class: "kt-quick-panel__content" }, h("div", { key: 'feb26ad643c3618565c0ba656fab438642689917', class: "tab-content" }, h("div", { key: '77e47b1233f38c4e4c3524b8bbe3422d5cd5c569', id: "kt_quick_panel_tab_notifications", role: "tabpanel", class: "tab-pane fade show kt-scroll active ps ps--active-y" }, h("div", { key: 'a40799c09e17c2b2b5e3272282197a30a449645b', class: "kt-notification" }, h("div", { key: '7cc91ba754caa23c64056e17634069e6be1d20d4', class: "kt-portlet__body" }, h("div", { key: '223c2ccb3c5c6fcbb04bcdaf79fee8e96fcaced3', class: "form-group" }, h("label", { key: 'b37e116978a264886c3974748070462a1c5579a1' }, "Date Format"), h("select", { key: 'eec0f16ed239dd8b5135f4c5de09c723773f5796', 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: '07f386065a97d79ba4c2affcd571c958428cf56f', class: "form-group" }, h("label", { key: 'ab3b72bbe39ad44aafb7d6ac79d37e3cc47e0252' }, "Time Format"), h("select", { key: 'ede8582e7d202f51a1b0e536e1eb86598131147e', 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: '412f201f26af930b808e73b66aa02aa7078406da', class: "form-group" }, h("label", { key: '23104b6033966fa2979bef55bb0ab9861dca7e21' }, "Font Size"), h("select", { key: 'f6f6cb182bc7e59404bab9942c3219ef7eef808f', 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: 'b5cff7b2cc472f61e20e668cff82c9066997a266', class: "form-group" }, h("label", { key: 'be081786fb14d65ddd28e002d61fec6052d121a6' }, "User Display Format"), h("select", { key: 'ab4da990853ae25270115287b0c97e1024ef98b4', 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: 'f8d98a8ba4d06dd7acb810d8e0a93b256abf982e', class: "form-group" }, h("label", { key: 'd02e8d475bd41bbb39474a934eef7036b41f49be' }, "Default Landing Page"), h("div", { key: 'fde7e81ec8b52a9f7dd14c04a2c20bdc49753076', class: "input-group", onClick: () => this.togglePageModal() }, h("div", { key: '4f8a27121aa573969b9864844bdf199623233943', class: "input-group-prepend" }, h("span", { key: '951717fda681e5941468fa07db6aec2be80eba8e', class: "input-group-text" }, h("svg", { key: '2f79d8eb6c05d8c9e99ac95e6cc8c83f782d4566', 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: '41a4aae946f5d0317a8d555b479648b45572ad0a', id: "Link-chains" }, h("path", { key: '7e86163599f0a3e91d52e801281c6eaf5986acb9', 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: '148b0dd408cc6a316cb077fe0e04c657b393d599', 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: 'ff204c44b27680812998026ee761a3c2ad8df8b1', type: "text", class: "form-control", readonly: true, value: this.selectedPage.name || 'Select page', placeholder: "Select page" })))), h("div", { key: 'f0a723c6a9345f619fe522f333697ebc3c038a0e', class: "kt-portlet__foot" }, h("div", { key: 'fe42768760f376291ee2e487ad6c046e0c028ec8', class: "kt-form__actions" }, h("button", { key: '648fa800df9bf91b806dc1228661e0795071973e', class: "btn btn-primary", onClick: () => this.submitPreferences() }, "Save"), h("button", { key: 'c7482fa90238309ae8f679844281c17709a35e2d', class: "btn btn-secondary", onClick: () => this.resetPreferences() }, "Reset"))))))))), this.showToastFlag && h("div", { key: 'e3444d7a6f2ad7411fde36f8f144e236f2838712', class: `toast ${this.toastType}` }, this.toastMessage), this.isPageModalOpen && (h("div", { key: '0a5c84fa18b2969239e8ff7b8baddaca0d7a18d4', class: "modal-overlay" }, h("div", { key: 'b7899e9814b398fb4f26367d4161a3f3e60bb680', class: "modal-dialog modal-md landing-modal" }, h("div", { key: 'd8373d056ffe1b09f65375b4b108b5bc58dc6cdd', class: "modal-content landing-page" }, h("div", { key: '4a2b2c871e9b2bc518d47f665cfbb4c71273c583', class: "modal-header" }, h("h4", { key: '9777c1bb9d1372a1bb35708b1f8fc5b8fd3ae970', class: "modal-title pull-left" }, " Customize your default landing page "), h("button", { key: 'b056b17451205c54989784766bf75d65f39b4bf0', onClick: () => this.togglePageModal(), type: "button", "aria-label": "Close", class: "close pull-right" }, h("span", { key: 'fb62b376b91d1c80df33710218d30dcbffac922d' }, h("svg", { key: 'd36aa63361d7f695deba2d942f2e37b178bbda75', xmlns: "http://www.w3.org/2000/svg", width: "15px", height: "15px", viewBox: "0 0 24 24", fill: "none" }, h("g", { key: '9589397049dce4e2d4bc24d1a4b0272b26bdf4bc', id: "Menu / Close_SM" }, h("path", { key: '9de29390bd5d7ab3175ccb678ca74f94c3e76b9a', 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: '0f0ff8f2e221f21b26c1ba0d6fa71115e0f4a51b', class: "modal-body" }, h("div", { key: '958baec42107aba2e257d9a5cef4f02b0fed343a', class: "row" }, h("div", { key: 'bc2dc9b80ebb664885a73eb4c25d6e6d95f822cc', class: "col-12" }, h("div", { key: 'bd7daca964404f05416b4793ab31e73eeb94739c', class: "row" }, h("div", { key: 'a1b9cecca0e5312e23e4ca4041612ce5c2617458', class: "form-group" }, h("label", { key: '8c5af54c38754182c7274032f1b1bc384ed7fd7d', htmlFor: "" }, " Default Landing Page "), h("select", { key: '9179a5246227ca2f3f2942ad8c2ac8bb98e2535c', class: "ng", onInput: e => this.changeApplication(e) }, h("option", { key: '43453107dab300f16344c71ced47e5d72ef1c827', 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: '52c2f64fcecbfc88365557284916d9a067b40fb0', class: "form-group", style: { marginTop: '12px' } }, h("label", { key: '818c13e9ce8e2e5d372f5859a116fa7e6509715f', htmlFor: "pageSearch" }, "Select Page"), h("div", { key: '613c7965eba36b1df24b208673eeb8f309edb911', class: "search-select-wrapper" }, h("input", { key: '8908a6ef6a43a9d4b05fe4d0c2abb924b658fb09', 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 => {
320
371
  this.pageSearchQuery = e.target.value;
321
372
  this.isPageDropdownOpen = true;
322
- }, onFocus: () => this.isPageDropdownOpen = true }), this.isPageDropdownOpen && (h("div", { key: 'c500c37cc1ffa9b6f13bb01bb7ddc802076ca45c', 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: () => {
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: () => {
323
374
  this.selectPage(page);
324
375
  this.pageSearchQuery = page.name;
325
376
  this.isPageDropdownOpen = false;
326
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: {
327
378
  'culture-unpublished': page.pageCultureStatus == 1,
328
379
  'culture-published': page.pageCultureStatus == 2,
329
- } }, 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")))))))));
330
381
  }
331
382
  static get is() { return "eiam-user-preference"; }
332
383
  static get encapsulation() { return "shadow"; }
@@ -439,6 +490,8 @@ export class EiamUserPreference {
439
490
  "showToastFlag": {},
440
491
  "toastType": {},
441
492
  "toastMessage": {},
493
+ "tempSelectedPage": {},
494
+ "tempApplicationId": {},
442
495
  "pageSearchQuery": {},
443
496
  "isPageDropdownOpen": {}
444
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 @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\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 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 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":"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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 @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: '864ca04664ee789c54a060b6875fb7fd8a7ef2ec' }, "Hello, World! I'm ", this.getText());
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"; }