eiam-user-preference 0.0.86 → 0.0.87

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 +11 -47
  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 +11 -49
  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 +11 -49
  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-240b44d5.entry.js +2 -0
  15. package/dist/eiam-user-preference/{p-711eca4f.entry.js → p-295dde80.entry.js} +2 -2
  16. package/dist/eiam-user-preference/p-295dde80.entry.js.map +1 -0
  17. package/dist/esm/eiam-user-preference.entry.js +11 -47
  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 +0 -6
  23. package/package.json +1 -1
  24. package/dist/eiam-user-preference/p-711eca4f.entry.js.map +0 -1
  25. package/dist/eiam-user-preference/p-f8571c93.entry.js +0 -2
  26. /package/dist/eiam-user-preference/{p-f8571c93.entry.js.map → p-240b44d5.entry.js.map} +0 -0
@@ -42,8 +42,6 @@ export class EiamUserPreference {
42
42
  cultureCode;
43
43
  applicationId;
44
44
  apiUrl;
45
- tempSelectedPage = { pageId: null, name: '' };
46
- tempApplicationId = null;
47
45
  async watchChanges() {
48
46
  await this.fetchInitiateValue();
49
47
  }
@@ -210,28 +208,20 @@ export class EiamUserPreference {
210
208
  // }
211
209
  changeApplication(e) {
212
210
  const selectedId = e.target.value;
213
- this.pageSearchQuery = '';
211
+ this.pageSearchQuery = ''; // ✅ clear search so all pages show
214
212
  this.isPageDropdownOpen = false;
215
213
  this.pages = [];
216
- // reset only temp selection, not the saved one
217
- this.tempSelectedPage = { pageId: null, name: '' };
218
214
  if (selectedId) {
219
215
  this.applicationId = selectedId;
220
- this.getPagesSApplications();
216
+ this.getPagesSApplications().then(() => {
217
+ // After pages load, open dropdown automatically
218
+ this.isPageDropdownOpen = true;
219
+ });
221
220
  }
222
221
  else {
223
222
  this.applicationId = null;
224
223
  }
225
224
  }
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
- }
235
225
  async getPagesSApplications() {
236
226
  try {
237
227
  const response = await fetch(`${this.apiUrl}/api/Pages/GetPages`, {
@@ -324,39 +314,13 @@ export class EiamUserPreference {
324
314
  toggleModal() {
325
315
  this.isModalOpen = !this.isModalOpen;
326
316
  }
327
- // togglePageModal() {
328
- // this.isPageModalOpen = !this.isPageModalOpen;
329
- // }
330
317
  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
- }
348
318
  this.isPageModalOpen = !this.isPageModalOpen;
349
319
  }
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
- // }
355
320
  selectPage(page) {
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;
321
+ this.selectedPage = page;
322
+ this.userPreferences.defaultLandingPageId = page.pageId; // Update default landing page
323
+ this.togglePageModal(); // Close the page selection modal
360
324
  }
361
325
  get pagedPages() {
362
326
  const start = (this.currentPage - 1) * this.pageSize;
@@ -367,17 +331,17 @@ export class EiamUserPreference {
367
331
  return Math.ceil(this.pages.length / this.pageSize);
368
332
  }
369
333
  render() {
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 => {
334
+ return (h(Host, { key: 'f3ceae491e305b570df2283bede2f8e0c4a9f82a' }, h("div", { key: 'b964d82c868d8ee82244ebc15f1f8d11727f0c1f', class: "container" }, h("svg", { key: '5ee877ae20173f1f57f32fb25fd87e14850d2c0c', 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: 'b4b426a90a134b77e7ebe4384e62d12b11107e83', stroke: "none", fill: "none" }, h("rect", { key: '499444161d3feea64504dabf70068f921a25b532', x: "0", y: "0", width: "24", height: "24" }), h("rect", { key: '6aa098d5dbf7a9ade6622abff5bb9bc909c12237', fill: "#008fc7", x: "4", y: "4", width: "7", height: "7", rx: "1.5" }), h("path", { key: '806ded617c108a2fe4ff99c4d5bbe45311625092', 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: 'c7338042ebddd569a7af61e33c987faee8f3fa6c', class: "kt-quick-panel kt-quick-panel--on" }, h("a", { key: 'ab370b71013cd9118698b986359c90f8e9910fb2', onClick: () => this.toggleModal(), id: "kt_quick_panel_close_btn", class: "kt-quick-panel__close" }, h("svg", { key: '7db61b23e80906e1520c641822775c8f165b186b', xmlns: "http://www.w3.org/2000/svg", width: "25px", height: "25px", viewBox: "0 0 24 24", fill: "none" }, h("g", { key: 'ae8c06df2c6bf181939dd3f898eeef069ed3b28b', id: "Menu / Close_SM" }, h("path", { key: '9756fcd5d7af17daeb04486fc613c1789b181eb9', 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: '77b510c156d893736db63f023928ad5872494772', class: "kt-quick-panel__nav" }, h("ul", { key: 'a3f9cb12b5d2ce80dd8a9a12489bbdf73c2a400a', 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: 'd366f09065b9cfdad8fa58a43fcc847d2079e23f', class: "nav-item active" }, h("a", { key: 'b8de6d4a3c2a996ee1346a483f2e6539f8aeda00', "data-toggle": "tab", role: "tab", class: "nav-link active" }, "User Preference")))), h("div", { key: '093c449010feef7f0049892e25ebbbb7b629ff8a', class: "kt-quick-panel__content" }, h("div", { key: 'bb866688ed8f54ded76bfdff8ca54437322dc73d', class: "tab-content" }, h("div", { key: 'd6c95e930437ae77172539849f456ff3c06c6cf9', id: "kt_quick_panel_tab_notifications", role: "tabpanel", class: "tab-pane fade show kt-scroll active ps ps--active-y" }, h("div", { key: '0761e2ab4c0b8f7374bedc98bec7f86cafa548a3', class: "kt-notification" }, h("div", { key: '18320551db1324886199a90681599d6ba44369fc', class: "kt-portlet__body" }, h("div", { key: '346c1a4355efac10d172dbe8b64ec36e9251e692', class: "form-group" }, h("label", { key: 'f4d9b0c4c52f01ff813ee86c2a9d954b1892eeaf' }, "Date Format"), h("select", { key: 'bf47c05ecf6ecbe76ea96f3bba9e312350e62927', 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: 'd35105263e86026a27cad587f9425fb122b82c0e', class: "form-group" }, h("label", { key: 'e9972abacb4b7be2c71a37a499a869da72f0ba68' }, "Time Format"), h("select", { key: 'dd1c84ed206af39601466501079959e7bbca29b4', 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: '4242b39d1e87c387f37120ce400ab14f439c6057', class: "form-group" }, h("label", { key: 'dfb9064fbeb87302234d23681b8627c4a7b2cba0' }, "Font Size"), h("select", { key: '414f7d94ac449ebc336d813507584247c7b0eedf', 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: 'fbadcba9a51a782d477d5405209ae2f065d87993', class: "form-group" }, h("label", { key: 'dcbf281d317a3a8e62e0f33c65bf7d46b987c58f' }, "User Display Format"), h("select", { key: '644880ed67cbfd081f5df9e5fc00cc705ad025aa', 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: '8b0b95ad31e60b1f116cba964fd8fa2bbb1ebcd6', class: "form-group" }, h("label", { key: '1e44d5a6cd89d30ec2e377d671701181c976baee' }, "Default Landing Page"), h("div", { key: '8696f19a4083b9206ab46f3fe1a9612cf6a756ae', class: "input-group", onClick: () => this.togglePageModal() }, h("div", { key: '484386a9ba0beef52e6b8ab6b682451c6727c9d9', class: "input-group-prepend" }, h("span", { key: '900dac026d56996e2ad462bf782e460180d867c6', class: "input-group-text" }, h("svg", { key: '670aecc63879a15d95aae467b16ded1d15b1996e', 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: 'ed4e98122b410f29a2b0105be7ca185b1e818af8', id: "Link-chains" }, h("path", { key: '4a283bb7fdbd6c2e2548a7ba94d2354c401d4977', 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: '036d7b66720edf891a843cf53178cb20fffa3c63', 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: '690675e7452bb2328b91656bcc513470a5b8544d', type: "text", class: "form-control", readonly: true, value: this.selectedPage.name || 'Select page', placeholder: "Select page" })))), h("div", { key: '402aa2437d8cd798c53b2e5b156ae525b351d46f', class: "kt-portlet__foot" }, h("div", { key: 'ca52eb1479e524c10920d50e62fab8d4728b5d67', class: "kt-form__actions" }, h("button", { key: 'e78178f4dfb65c628d4520b02596f5fd1b0916d2', class: "btn btn-primary", onClick: () => this.submitPreferences() }, "Save"), h("button", { key: '3db5e06d90e6dc9add94b3eeb6515063247fc595', class: "btn btn-secondary", onClick: () => this.resetPreferences() }, "Reset"))))))))), this.showToastFlag && h("div", { key: '0fcb7cdd20ac86ce0f102514e8b0db211efb27c3', class: `toast ${this.toastType}` }, this.toastMessage), this.isPageModalOpen && (h("div", { key: 'd0507c42db04836cec8a6c77d90b9110c013a071', class: "modal-overlay" }, h("div", { key: '23dc1585dbc849459b8b59b0d6b74e163ac976ca', class: "modal-dialog modal-md landing-modal" }, h("div", { key: 'aaeae01cc9a731f4343ba60387b60b74174a03e9', class: "modal-content landing-page" }, h("div", { key: '219cc3bc8796fc546a8f0e5c998bbabb3a613460', class: "modal-header" }, h("h4", { key: 'd141f4d3fec64226572c8e84814ff8204211919f', class: "modal-title pull-left" }, " Customize your default landing page "), h("button", { key: 'e154b9e704f8a296ef889c1f3b390ba3d7cbaed9', onClick: () => this.togglePageModal(), type: "button", "aria-label": "Close", class: "close pull-right" }, h("span", { key: '9314da26828cc12430dc0008afb4c41c85b3a65c' }, h("svg", { key: '897f5e62aeb3d3965008aafc55e42017f0386b27', xmlns: "http://www.w3.org/2000/svg", width: "15px", height: "15px", viewBox: "0 0 24 24", fill: "none" }, h("g", { key: 'aa10c0ed845fcda26c570b927da89f10fc3f41d7', id: "Menu / Close_SM" }, h("path", { key: 'f7916c086a76da07ab1bee87467fba52f395fe69', 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: 'b7bac9be2d04c38edca8b3ef0421181797b44d79', class: "modal-body" }, h("div", { key: 'bfb7faa6d7265b33c90bbd869a8c347795857138', class: "row" }, h("div", { key: '6a0ae1f10df8cc135c28c150ec8a11311d259995', class: "col-12" }, h("div", { key: 'fb9bdcc543738fd8d5120f441f5504716c5ebb71', class: "row" }, h("div", { key: 'cfde28c7dceffa7eea75f779202586a1457089b3', class: "form-group" }, h("label", { key: '00091541edfc6a4dd83ff678d2a90ad69847603a', htmlFor: "" }, " Default Landing Page "), h("select", { key: '4f6625fe558ea6007b2b0c679b1395ba18b781b1', class: "ng", onInput: e => this.changeApplication(e) }, h("option", { key: '46f4713cbfb1cd781a9898bf5eb23f1437e4e488', 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: '7141ee4f3ed2baa426be5344f07be9066dbe4469', class: "form-group", style: { marginTop: '12px' } }, h("label", { key: 'bfe22ceec835387de7e28e6ef8162f4d253eaced', htmlFor: "pageSearch" }, "Select Page"), h("div", { key: '0a44b82f6f9ec0d12133cf94af48be985406203b', class: "search-select-wrapper" }, h("input", { key: '9ad1e36140bc3bde78641b12e21756773df289d5', type: "text", class: "search-input", placeholder: "Search Pages...", value: this.pageSearchQuery, onInput: e => {
371
335
  this.pageSearchQuery = e.target.value;
372
336
  this.isPageDropdownOpen = true;
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: () => {
337
+ }, onFocus: () => this.isPageDropdownOpen = true }), this.isPageDropdownOpen && (h("div", { key: 'b106ca4a91ea44294555defc5659d241add31dff', 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: () => {
374
338
  this.selectPage(page);
375
339
  this.pageSearchQuery = page.name;
376
340
  this.isPageDropdownOpen = false;
377
341
  } }, 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: {
378
342
  'culture-unpublished': page.pageCultureStatus == 1,
379
343
  'culture-published': page.pageCultureStatus == 2,
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")))))))));
344
+ } }, page.cultureCode))))))))))))))))))));
381
345
  }
382
346
  static get is() { return "eiam-user-preference"; }
383
347
  static get encapsulation() { return "shadow"; }
@@ -490,8 +454,6 @@ export class EiamUserPreference {
490
454
  "showToastFlag": {},
491
455
  "toastType": {},
492
456
  "toastMessage": {},
493
- "tempSelectedPage": {},
494
- "tempApplicationId": {},
495
457
  "pageSearchQuery": {},
496
458
  "isPageDropdownOpen": {}
497
459
  };
@@ -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 @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"]}
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 @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 = ''; // ✅ clear search so all pages show\r\n this.isPageDropdownOpen = false;\r\n this.pages = [];\r\n\r\n if (selectedId) {\r\n this.applicationId = selectedId;\r\n this.getPagesSApplications().then(() => {\r\n // After pages load, open dropdown automatically\r\n this.isPageDropdownOpen = true;\r\n });\r\n } else {\r\n this.applicationId = null;\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"]}
@@ -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: '9ba74718fd3048e26b15a288d6736ac911c739de' }, "Hello, World! I'm ", this.getText());
20
+ return h("div", { key: '864ca04664ee789c54a060b6875fb7fd8a7ef2ec' }, "Hello, World! I'm ", this.getText());
21
21
  }
22
22
  static get is() { return "my-component"; }
23
23
  static get encapsulation() { return "shadow"; }