@infineon/infineon-design-system-stencil 37.14.1--canary.2005.99ac1d98777d6916e7e421ca72db2a9a0f407149.0 → 37.14.1--canary.2009.a1675c98d08311581a1733f9e5d2d89304b688e7.0

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 (147) hide show
  1. package/dist/cjs/ifx-checkbox.cjs.entry.js +17 -6
  2. package/dist/cjs/ifx-checkbox.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ifx-checkbox.entry.cjs.js.map +1 -1
  4. package/dist/cjs/ifx-date-picker.cjs.entry.js +7 -7
  5. package/dist/cjs/ifx-date-picker.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ifx-date-picker.entry.cjs.js.map +1 -1
  7. package/dist/cjs/ifx-multiselect.ifx-multiselect-option.entry.cjs.js.map +1 -1
  8. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +1 -1
  9. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ifx-radio-button.cjs.entry.js +15 -5
  11. package/dist/cjs/ifx-radio-button.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ifx-radio-button.entry.cjs.js.map +1 -1
  13. package/dist/cjs/ifx-spinner.ifx-text-field.entry.cjs.js.map +1 -1
  14. package/dist/cjs/ifx-spinner_2.cjs.entry.js +9 -9
  15. package/dist/cjs/ifx-spinner_2.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ifx-switch.cjs.entry.js +15 -4
  17. package/dist/cjs/ifx-switch.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ifx-switch.entry.cjs.js.map +1 -1
  19. package/dist/cjs/ifx-table.cjs.entry.js +54 -16
  20. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ifx-table.entry.cjs.js.map +1 -1
  22. package/dist/cjs/ifx-textarea.cjs.entry.js +9 -9
  23. package/dist/cjs/ifx-textarea.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ifx-textarea.entry.cjs.js.map +1 -1
  25. package/dist/cjs/infineon-design-system-stencil.cjs.js +1 -1
  26. package/dist/cjs/loader.cjs.js +1 -1
  27. package/dist/collection/components/checkbox/checkbox.js +9 -9
  28. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  29. package/dist/collection/components/date-picker/date-picker.js +7 -7
  30. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  31. package/dist/collection/components/radio-button/radio-button.js +7 -6
  32. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  33. package/dist/collection/components/select/multi-select/multiselect.js +1 -1
  34. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  35. package/dist/collection/components/switch/switch.js +7 -7
  36. package/dist/collection/components/switch/switch.js.map +1 -1
  37. package/dist/collection/components/table-advanced-version/table.js +97 -16
  38. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  39. package/dist/collection/components/text-field/text-field.js +9 -9
  40. package/dist/collection/components/text-field/text-field.js.map +1 -1
  41. package/dist/collection/components/textarea/textarea.js +9 -9
  42. package/dist/collection/components/textarea/textarea.js.map +1 -1
  43. package/dist/collection/test-setup.js +2 -2
  44. package/dist/collection/test-setup.js.map +1 -1
  45. package/dist/components/ifx-checkbox.js +1 -1
  46. package/dist/components/ifx-chip-item.js +1 -1
  47. package/dist/components/ifx-date-picker.js +7 -7
  48. package/dist/components/ifx-date-picker.js.map +1 -1
  49. package/dist/components/ifx-list-entry.js +2 -2
  50. package/dist/components/ifx-multiselect-option.js +1 -1
  51. package/dist/components/ifx-multiselect.js +1 -1
  52. package/dist/components/ifx-radio-button.js +1 -1
  53. package/dist/components/ifx-set-filter.js +4 -4
  54. package/dist/components/ifx-switch.js +15 -4
  55. package/dist/components/ifx-switch.js.map +1 -1
  56. package/dist/components/ifx-table.js +58 -18
  57. package/dist/components/ifx-table.js.map +1 -1
  58. package/dist/components/ifx-template.js +1 -1
  59. package/dist/components/ifx-templates-ui.js +2 -2
  60. package/dist/components/ifx-text-field.js +1 -1
  61. package/dist/components/ifx-textarea.js +9 -9
  62. package/dist/components/ifx-textarea.js.map +1 -1
  63. package/dist/components/ifx-tree-view-item.js +1 -1
  64. package/dist/components/{p-jpHS2EcW.js → p-BdjtCY5d.js} +11 -11
  65. package/dist/components/p-BdjtCY5d.js.map +1 -0
  66. package/dist/components/{p-dFnoI9Z9.js → p-Bsg4XNJ8.js} +3 -3
  67. package/dist/components/{p-dFnoI9Z9.js.map → p-Bsg4XNJ8.js.map} +1 -1
  68. package/dist/components/{p-D0FTDBJi.js → p-CStEOh5u.js} +17 -7
  69. package/dist/components/p-CStEOh5u.js.map +1 -0
  70. package/dist/components/{p-B1lfea8R.js → p-CkOHJ_UX.js} +3 -3
  71. package/dist/components/{p-B1lfea8R.js.map → p-CkOHJ_UX.js.map} +1 -1
  72. package/dist/components/{p-BdxNbvkX.js → p-DL0DaOdR.js} +19 -8
  73. package/dist/components/p-DL0DaOdR.js.map +1 -0
  74. package/dist/components/{p-wf80ST1n.js → p-DyWw4V2x.js} +4 -4
  75. package/dist/components/p-DyWw4V2x.js.map +1 -0
  76. package/dist/components/{p-DVfM92xI.js → p-FczSL6gb.js} +3 -3
  77. package/dist/components/{p-DVfM92xI.js.map → p-FczSL6gb.js.map} +1 -1
  78. package/dist/esm/ifx-checkbox.entry.js +17 -6
  79. package/dist/esm/ifx-checkbox.entry.js.map +1 -1
  80. package/dist/esm/ifx-date-picker.entry.js +7 -7
  81. package/dist/esm/ifx-date-picker.entry.js.map +1 -1
  82. package/dist/esm/ifx-multiselect.ifx-multiselect-option.entry.js.map +1 -1
  83. package/dist/esm/ifx-multiselect_2.entry.js +1 -1
  84. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -1
  85. package/dist/esm/ifx-radio-button.entry.js +15 -5
  86. package/dist/esm/ifx-radio-button.entry.js.map +1 -1
  87. package/dist/esm/ifx-spinner.ifx-text-field.entry.js.map +1 -1
  88. package/dist/esm/ifx-spinner_2.entry.js +9 -9
  89. package/dist/esm/ifx-spinner_2.entry.js.map +1 -1
  90. package/dist/esm/ifx-switch.entry.js +15 -4
  91. package/dist/esm/ifx-switch.entry.js.map +1 -1
  92. package/dist/esm/ifx-table.entry.js +54 -16
  93. package/dist/esm/ifx-table.entry.js.map +1 -1
  94. package/dist/esm/ifx-textarea.entry.js +9 -9
  95. package/dist/esm/ifx-textarea.entry.js.map +1 -1
  96. package/dist/esm/infineon-design-system-stencil.js +1 -1
  97. package/dist/esm/loader.js +1 -1
  98. package/dist/infineon-design-system-stencil/ifx-checkbox.entry.esm.js.map +1 -1
  99. package/dist/infineon-design-system-stencil/ifx-date-picker.entry.esm.js.map +1 -1
  100. package/dist/infineon-design-system-stencil/ifx-multiselect.ifx-multiselect-option.entry.esm.js.map +1 -1
  101. package/dist/infineon-design-system-stencil/ifx-radio-button.entry.esm.js.map +1 -1
  102. package/dist/infineon-design-system-stencil/ifx-spinner.ifx-text-field.entry.esm.js.map +1 -1
  103. package/dist/infineon-design-system-stencil/ifx-switch.entry.esm.js.map +1 -1
  104. package/dist/infineon-design-system-stencil/ifx-table.entry.esm.js.map +1 -1
  105. package/dist/infineon-design-system-stencil/ifx-textarea.entry.esm.js.map +1 -1
  106. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  107. package/dist/infineon-design-system-stencil/p-11c13738.entry.js +2 -0
  108. package/dist/infineon-design-system-stencil/p-11c13738.entry.js.map +1 -0
  109. package/dist/infineon-design-system-stencil/p-61acd0a3.entry.js +2 -0
  110. package/dist/infineon-design-system-stencil/p-61acd0a3.entry.js.map +1 -0
  111. package/dist/infineon-design-system-stencil/p-72bc047a.entry.js +2 -0
  112. package/dist/infineon-design-system-stencil/p-72bc047a.entry.js.map +1 -0
  113. package/dist/infineon-design-system-stencil/{p-e1b6894c.entry.js → p-7424e1be.entry.js} +2 -2
  114. package/dist/infineon-design-system-stencil/p-7424e1be.entry.js.map +1 -0
  115. package/dist/infineon-design-system-stencil/p-a2885d0f.entry.js +2 -0
  116. package/dist/infineon-design-system-stencil/p-a2885d0f.entry.js.map +1 -0
  117. package/dist/infineon-design-system-stencil/{p-e54f95d9.entry.js → p-bb927fbf.entry.js} +2 -2
  118. package/dist/infineon-design-system-stencil/p-bb927fbf.entry.js.map +1 -0
  119. package/dist/infineon-design-system-stencil/{p-d094dc8e.entry.js → p-bf51fc38.entry.js} +2 -2
  120. package/dist/infineon-design-system-stencil/p-bf51fc38.entry.js.map +1 -0
  121. package/dist/infineon-design-system-stencil/{p-262afd53.entry.js → p-f6ec1d41.entry.js} +2 -2
  122. package/dist/infineon-design-system-stencil/p-f6ec1d41.entry.js.map +1 -0
  123. package/dist/types/components/checkbox/checkbox.d.ts +1 -0
  124. package/dist/types/components/date-picker/date-picker.d.ts +1 -0
  125. package/dist/types/components/radio-button/radio-button.d.ts +1 -0
  126. package/dist/types/components/switch/switch.d.ts +1 -0
  127. package/dist/types/components/table-advanced-version/table.d.ts +10 -2
  128. package/dist/types/components/text-field/text-field.d.ts +1 -0
  129. package/dist/types/components/textarea/textarea.d.ts +1 -0
  130. package/dist/types/components.d.ts +10 -0
  131. package/package.json +1 -1
  132. package/dist/components/p-BdxNbvkX.js.map +0 -1
  133. package/dist/components/p-D0FTDBJi.js.map +0 -1
  134. package/dist/components/p-jpHS2EcW.js.map +0 -1
  135. package/dist/components/p-wf80ST1n.js.map +0 -1
  136. package/dist/infineon-design-system-stencil/p-262afd53.entry.js.map +0 -1
  137. package/dist/infineon-design-system-stencil/p-a5b15118.entry.js +0 -2
  138. package/dist/infineon-design-system-stencil/p-a5b15118.entry.js.map +0 -1
  139. package/dist/infineon-design-system-stencil/p-acc5ae62.entry.js +0 -2
  140. package/dist/infineon-design-system-stencil/p-acc5ae62.entry.js.map +0 -1
  141. package/dist/infineon-design-system-stencil/p-b4d19492.entry.js +0 -2
  142. package/dist/infineon-design-system-stencil/p-b4d19492.entry.js.map +0 -1
  143. package/dist/infineon-design-system-stencil/p-be04a034.entry.js +0 -2
  144. package/dist/infineon-design-system-stencil/p-be04a034.entry.js.map +0 -1
  145. package/dist/infineon-design-system-stencil/p-d094dc8e.entry.js.map +0 -1
  146. package/dist/infineon-design-system-stencil/p-e1b6894c.entry.js.map +0 -1
  147. package/dist/infineon-design-system-stencil/p-e54f95d9.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"test-setup.js","sourceRoot":"","sources":["../src/test-setup.ts"],"names":[],"mappings":"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","sourcesContent":["let defineCustomElements;\nprocess.env.NODE_ENV = 'test'; \n\ntry {\n // Attempt to import defineCustomElements\n const loader = await import('../types/loader');\n defineCustomElements = loader.defineCustomElements;\n console.log('defineCustomElements imported successfully');\n} catch (error) {\n // If the import fails, provide a mock implementation\n console.warn('Failed to import defineCustomElements. Using mock implementation.');\n defineCustomElements = async () => {\n console.warn('Mock defineCustomElements called. No components will be registered.');\n };\n}\n\n// Create a more robust ElementInternals mock\nif (!('ElementInternals' in window)) {\n class MockElementInternals {\n // Required basic properties\n form = null;\n labels = [];\n validationMessage = '';\n validity = {\n valid: true,\n badInput: false,\n customError: false,\n patternMismatch: false,\n rangeOverflow: false,\n rangeUnderflow: false,\n stepMismatch: false,\n tooLong: false,\n tooShort: false,\n typeMismatch: false,\n valueMissing: false\n };\n \n // Required methods with full implementation\n //setFormValue = jest.fn();\n //setValidity = jest.fn();\n checkValidity = jest.fn().mockReturnValue(true);\n reportValidity = jest.fn().mockReturnValue(true);\n \n // Additional properties to satisfy TypeScript\n shadowRoot = null;\n states = new Set();\n willValidate = true;\n \n // ARIA properties (add as needed)\n ariaAtomic = null;\n ariaAutoComplete = null;\n ariaBusy = null;\n ariaChecked = null;\n ariaColCount = null;\n // ... other aria properties\n }\n \n // Assign the class to window\n (window as any).ElementInternals = MockElementInternals;\n \n // Mock attachInternals - use type assertion to avoid TypeScript errors\n if (!HTMLElement.prototype.attachInternals) {\n HTMLElement.prototype.attachInternals = jest.fn(() => \n new MockElementInternals()\n ) as unknown as () => ElementInternals;\n }\n}\n\n// Fix for multiselect tests - ensure FormData exists\nif (!window.FormData) {\n window.FormData = class FormData {\n private data = new Map();\n append(key, value) { this.data.set(key, value); }\n delete(key) { this.data.delete(key); }\n get(key) { return this.data.get(key); }\n getAll(key) { return [this.data.get(key)]; }\n has(key) { return this.data.has(key); }\n set(key, value) { this.data.set(key, value); }\n entries() { return this.data.entries(); }\n keys() { return this.data.keys(); }\n values() { return this.data.values(); }\n forEach(callback) { this.data.forEach((value, key) => callback(value, key)); }\n } as any;\n}\n\nasync function setup() {\n try {\n console.log('Registering custom elements');\n await defineCustomElements(window); \n console.log('Custom elements registered');\n } catch (error) {\n console.error('Error during component registration:', error);\n }\n}\n\nsetup();\n\n// Fix for Sidebar test - mock expandActiveItems globally\nsetTimeout(() => {\n try {\n // We use setTimeout to ensure this runs after module loading\n const { Sidebar } = require('./components/navigation/sidebar/sidebar');\n console.log('Found Sidebar component, mocking expandActiveItems');\n if (Sidebar && Sidebar.prototype) {\n Sidebar.prototype.expandActiveItems = jest.fn();\n }\n } catch (e) {\n console.warn('Could not mock Sidebar.expandActiveItems:', e);\n }\n}, 0);\n\nexport {};"]}
1
+ {"version":3,"file":"test-setup.js","sourceRoot":"","sources":["../src/test-setup.ts"],"names":[],"mappings":"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","sourcesContent":["let defineCustomElements;\nprocess.env.NODE_ENV = 'test'; \n\ntry {\n // Attempt to import defineCustomElements\n const loader = await import('../types/loader');\n defineCustomElements = loader.defineCustomElements;\n console.log('defineCustomElements imported successfully');\n} catch (error) {\n // If the import fails, provide a mock implementation\n console.warn('Failed to import defineCustomElements. Using mock implementation.');\n defineCustomElements = async () => {\n console.warn('Mock defineCustomElements called. No components will be registered.');\n };\n}\n\n// Create a more robust ElementInternals mock\nif (!('ElementInternals' in window)) {\n class MockElementInternals {\n // Required basic properties\n form = null;\n labels = [];\n validationMessage = '';\n validity = {\n valid: true,\n badInput: false,\n customError: false,\n patternMismatch: false,\n rangeOverflow: false,\n rangeUnderflow: false,\n stepMismatch: false,\n tooLong: false,\n tooShort: false,\n typeMismatch: false,\n valueMissing: false\n };\n \n // Required methods with full implementation\n setFormValue = jest.fn();\n setValidity = jest.fn();\n checkValidity = jest.fn().mockReturnValue(true);\n reportValidity = jest.fn().mockReturnValue(true);\n \n // Additional properties to satisfy TypeScript\n shadowRoot = null;\n states = new Set();\n willValidate = true;\n \n // ARIA properties (add as needed)\n ariaAtomic = null;\n ariaAutoComplete = null;\n ariaBusy = null;\n ariaChecked = null;\n ariaColCount = null;\n // ... other aria properties\n }\n \n // Assign the class to window\n (window as any).ElementInternals = MockElementInternals;\n \n // Mock attachInternals - use type assertion to avoid TypeScript errors\n if (!HTMLElement.prototype.attachInternals) {\n HTMLElement.prototype.attachInternals = jest.fn(() => \n new MockElementInternals()\n ) as unknown as () => ElementInternals;\n }\n}\n\n// Fix for multiselect tests - ensure FormData exists\nif (!window.FormData) {\n window.FormData = class FormData {\n private data = new Map();\n append(key, value) { this.data.set(key, value); }\n delete(key) { this.data.delete(key); }\n get(key) { return this.data.get(key); }\n getAll(key) { return [this.data.get(key)]; }\n has(key) { return this.data.has(key); }\n set(key, value) { this.data.set(key, value); }\n entries() { return this.data.entries(); }\n keys() { return this.data.keys(); }\n values() { return this.data.values(); }\n forEach(callback) { this.data.forEach((value, key) => callback(value, key)); }\n } as any;\n}\n\nasync function setup() {\n try {\n console.log('Registering custom elements');\n await defineCustomElements(window); \n console.log('Custom elements registered');\n } catch (error) {\n console.error('Error during component registration:', error);\n }\n}\n\nsetup();\n\n// Fix for Sidebar test - mock expandActiveItems globally\nsetTimeout(() => {\n try {\n // We use setTimeout to ensure this runs after module loading\n const { Sidebar } = require('./components/navigation/sidebar/sidebar');\n console.log('Found Sidebar component, mocking expandActiveItems');\n if (Sidebar && Sidebar.prototype) {\n Sidebar.prototype.expandActiveItems = jest.fn();\n }\n } catch (e) {\n console.warn('Could not mock Sidebar.expandActiveItems:', e);\n }\n}, 0);\n\nexport {};"]}
@@ -1,4 +1,4 @@
1
- import { C as Checkbox, d as defineCustomElement$1 } from './p-BdxNbvkX.js';
1
+ import { C as Checkbox, d as defineCustomElement$1 } from './p-DL0DaOdR.js';
2
2
 
3
3
  const IfxCheckbox = Checkbox;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { C as ChipItem, d as defineCustomElement$1 } from './p-dFnoI9Z9.js';
1
+ import { C as ChipItem, d as defineCustomElement$1 } from './p-Bsg4XNJ8.js';
2
2
 
3
3
  const IfxChipItem = ChipItem;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -28,7 +28,7 @@ const DatePicker = /*@__PURE__*/ proxyCustomElement(class DatePicker extends H {
28
28
  const month = selectedDate.getMonth() + 1;
29
29
  const year = selectedDate.getFullYear();
30
30
  if (!inputValue) {
31
- //this.internals.setFormValue(null);
31
+ this.internals.setFormValue(null);
32
32
  if (this.type === 'datetime-local') {
33
33
  const hours = selectedDate.getHours();
34
34
  const minutes = selectedDate.getMinutes();
@@ -41,7 +41,7 @@ const DatePicker = /*@__PURE__*/ proxyCustomElement(class DatePicker extends H {
41
41
  }
42
42
  const input = this.el.shadowRoot.querySelector('.date__picker-input');
43
43
  input.classList.add('has-value');
44
- //this.internals.setFormValue(selectedDate.toISOString().substring(0,10))
44
+ this.internals.setFormValue(selectedDate.toISOString().substring(0, 10));
45
45
  if (this.type === 'datetime-local') {
46
46
  const hours = selectedDate.getHours();
47
47
  const minutes = selectedDate.getMinutes();
@@ -96,13 +96,13 @@ const DatePicker = /*@__PURE__*/ proxyCustomElement(class DatePicker extends H {
96
96
  this.getDate({ target: { value: this.value } });
97
97
  }
98
98
  }
99
- // formResetCallback() {
100
- // this.internals.setFormValue(null);
101
- // }
99
+ formResetCallback() {
100
+ this.internals.setFormValue(null);
101
+ }
102
102
  render() {
103
103
  var _a, _b;
104
- return (h("div", { key: '7d17576703fc18fcaf23152d644ade7c13a24896', class: `date__picker-container ${this.error ? 'error' : ''} ${this.disabled ? 'disabled' : ''}` }, h("label", { key: 'ae9c4c36a6d11bd619b6f45d146b08dd0f8a1d21', class: 'label__wrapper', htmlFor: this.inputId }, (_a = this.label) === null || _a === void 0 ? void 0 :
105
- _a.trim(), h("span", { key: 'fe09bfc685a43064a59f964d021a957b57dc9165', class: `asterisk ${this.required ? 'required' : ""} ${this.error ? 'error' : ""}` }, "*")), h("div", { key: 'ae2897c521f496ec9f13d68e96f57c5034e1174f', class: `input__wrapper ${this.size === 'l' ? 'large' : 'small'} ${this.disabled ? 'disabled' : ''}` }, h("input", { key: 'fcd00c05631aed14e26f843e38fc09307d312dfe', type: this.type, autocomplete: this.autocomplete, class: `date__picker-input ${this.error ? 'error' : ""} ${this.success ? "success" : ""}`, disabled: this.disabled ? true : undefined, "aria-invalid": this.error ? true : undefined, "aria-label": this.ariaLabel, max: this.max, min: this.min, value: this.value, required: this.required, onChange: (e) => this.getDate(e) }), h("div", { key: '03e650aa82186eb8989f9a5da38d3f8ec72b9052', class: "icon__wrapper", role: "button", onClick: () => this.handleInputFocusOnIconClick() }, h("ifx-icon", { key: '33f085aeb96a81fc16fef8fa9aa0dc0bd3d760fe', icon: 'calendar16', "aria-hidden": "true" }))), ((_b = this.caption) === null || _b === void 0 ? void 0 : _b.trim()) && (h("div", { key: 'bc29febf9a6aea7be226b43c0cf46b0e82a35981', class: 'caption__wrapper' }, this.caption.trim()))));
104
+ return (h("div", { key: '54939ec686f17c6f9d5a77d2c578947707254f1e', class: `date__picker-container ${this.error ? 'error' : ''} ${this.disabled ? 'disabled' : ''}` }, h("label", { key: '96190d8cd34abb294455693c106e06e99c44b14d', class: 'label__wrapper', htmlFor: this.inputId }, (_a = this.label) === null || _a === void 0 ? void 0 :
105
+ _a.trim(), h("span", { key: '43b00aab35d90f6022af42a0fffc9f8ef3750a6b', class: `asterisk ${this.required ? 'required' : ""} ${this.error ? 'error' : ""}` }, "*")), h("div", { key: '9077684afde83eadd4ba777a62f30d2b5ba35146', class: `input__wrapper ${this.size === 'l' ? 'large' : 'small'} ${this.disabled ? 'disabled' : ''}` }, h("input", { key: '7e2aa162dad9c942adc3abf52aa684d485bb0015', type: this.type, autocomplete: this.autocomplete, class: `date__picker-input ${this.error ? 'error' : ""} ${this.success ? "success" : ""}`, disabled: this.disabled ? true : undefined, "aria-invalid": this.error ? true : undefined, "aria-label": this.ariaLabel, max: this.max, min: this.min, value: this.value, required: this.required, onChange: (e) => this.getDate(e) }), h("div", { key: 'd2f342fc05ecdf7f8c43fec285b2b2b4c3efc99d', class: "icon__wrapper", role: "button", onClick: () => this.handleInputFocusOnIconClick() }, h("ifx-icon", { key: 'aa7b6906751018c0cad1e43ee0f86aa426dad285', icon: 'calendar16', "aria-hidden": "true" }))), ((_b = this.caption) === null || _b === void 0 ? void 0 : _b.trim()) && (h("div", { key: 'bb91a4936b8db806bf3176e95429e7b434c92c1d', class: 'caption__wrapper' }, this.caption.trim()))));
106
106
  }
107
107
  get el() { return this; }
108
108
  static get style() { return datePickerCss; }
@@ -1 +1 @@
1
- {"file":"ifx-date-picker.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/date-picker/date-picker.scss?tag=ifx-date-picker&encapsulation=shadow","src/components/date-picker/date-picker.tsx"],"sourcesContent":["@use '~@infineon/design-system-tokens/dist/tokens';\n\n.date__picker-container {\n display: flex;\n flex-direction: column;\n\n & .label__wrapper {\n color: tokens.$ifxColorBaseBlack;\n font: tokens.$ifxBodyBody03;\n\n & .asterisk { \n display: none;\n &.required {\n display: inline;\n margin-left: 4px;\n \n &.error {\n color: #CD002F;\n }\n }\n }\n\n }\n\n &.disabled {\n .label__wrapper {\n color: tokens.$ifxColorEngineering500;\n }\n }\n\n &.error {\n .caption__wrapper {\n color: tokens.$ifxColorRed500;\n }\n }\n\n &.disabled {\n .caption__wrapper {\n color: tokens.$ifxColorEngineering500;\n }\n }\n\n & .caption__wrapper {\n margin-top: tokens.$ifxSpace50;\n color: tokens.$ifxColorBaseBlack;\n font: tokens.$ifxBodyBody05;\n }\n}\n\n.date__picker-input {\n font-family: 'Source Sans 3';\n outline: none;\n width: 100%;\n cursor: pointer;\n border-radius: 1px;\n border: 1px solid tokens.$ifxColorEngineering400;\n height: 100%;\n\n &.firefox__classes {\n padding: 8px 16px;\n color: tokens.$ifxColorEngineering400;\n font-size: 16px;\n text-transform: uppercase;\n font-style: normal;\n font-weight: 400;\n line-height: 24px;\n cursor: pointer;\n }\n\n &:focus:not(.error, .success) {\n border-color: tokens.$ifxColorOcean500;\n }\n\n &:hover:not(:disabled, :focus, .error, .success) {\n border-color: tokens.$ifxColorEngineering500;\n }\n\n &:disabled {\n border-color: tokens.$ifxColorEngineering500;\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &.error {\n border-color: tokens.$ifxColorRed500;\n }\n\n &.success:not(.error) {\n border-color: tokens.$ifxColorGreen500;\n }\n\n &::-webkit-datetime-edit-text {\n color: tokens.$ifxColorEngineering400;\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px;\n }\n\n &.has-value::-webkit-datetime-edit-text {\n color: tokens.$ifxColorBaseBlack;\n }\n\n &.has-value::-webkit-datetime-edit {\n color: tokens.$ifxColorBaseBlack;\n }\n}\n\n::-webkit-datetime-edit {\n color: tokens.$ifxColorEngineering400;\n font-size: 16px;\n text-transform: uppercase;\n font-style: normal;\n font-weight: 400;\n line-height: 24px;\n}\n\n::-webkit-datetime-edit-fields-wrapper {\n padding: 8px 16px;\n padding-bottom: 9px;\n transform: translateY(1px);\n}\n\n::-webkit-inner-spin-button {\n display: none;\n}\n\n::-webkit-calendar-picker-indicator {\n position: absolute;\n right: 15px;\n font-size: 19px;\n cursor: pointer;\n border-radius: 1px;\n &:focus-within {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n}\n\n.input__wrapper {\n display: flex;\n justify-content: space-between;\n align-items: center;\n align-self: stretch;\n background: tokens.$ifxColorBaseWhite;\n position: relative;\n &.large {\n height: 40px;\n }\n\n &.small {\n height: 36px;\n }\n\n &.disabled {\n & .icon__wrapper {\n background-color: tokens.$ifxColorEngineering200;\n }\n }\n}\n\n.icon__wrapper {\n position: absolute;\n right: 17px;\n padding: 2px;\n display: flex;\n justify-content: flex-end;\n align-items: center;\n pointer-events: none;\n z-index: 100;\n background-color: tokens.$ifxColorBaseWhite;\n line-height: 16px;\n\n & ifx-icon {\n vertical-align: middle;\n }\n}\n","import { AttachInternals } from '@stencil/core';\nimport { Component, Prop, h, Element, Event, EventEmitter } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n \n@Component({\n tag: 'ifx-date-picker',\n styleUrl: 'date-picker.scss',\n shadow: true,\n // formAssociated: true,\n})\n\nexport class DatePicker {\n private inputId: string = `ifx-date-picker-${++datePickerId}`;\n\n @Element() el: HTMLElement;\n @Prop() size: string = 's';\n @Prop() error: boolean = false;\n @Prop() success: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() ariaLabel: string | null;\n @Prop() value: string;\n @Prop() type: string = 'date'\n @Prop() max: string;\n @Prop() min: string;\n @Prop() required: boolean = false;\n @Prop() label: string;\n @Prop() caption: string;\n @Prop() autocomplete: string = 'on';\n\n @AttachInternals() internals: ElementInternals;\n\n @Event() ifxDate: EventEmitter;\n\n getDate(e) { \n const inputValue = e.target.value;\n const selectedDate = new Date(inputValue);\n const day = selectedDate.getDate();\n const month = selectedDate.getMonth() + 1; \n const year = selectedDate.getFullYear();\n\n \n \n if (!inputValue) {\n //this.internals.setFormValue(null);\n\n if(this.type === 'datetime-local') { \n const hours = selectedDate.getHours();\n const minutes = selectedDate.getMinutes();\n this.ifxDate.emit({day, month, year, hours, minutes});\n } else { \n this.ifxDate.emit({day, month, year});\n }\n return;\n }\n\n const input = this.el.shadowRoot.querySelector('.date__picker-input') as HTMLInputElement;\n input.classList.add('has-value');\n\n //this.internals.setFormValue(selectedDate.toISOString().substring(0,10))\n if(this.type === 'datetime-local') { \n const hours = selectedDate.getHours();\n const minutes = selectedDate.getMinutes();\n this.ifxDate.emit({day, month, year, hours, minutes});\n } else { \n this.ifxDate.emit({day, month, year})\n }\n }\n\n handleInputFocusOnIconClick() { \n const input = this.el.shadowRoot.querySelector('.date__picker-input') as HTMLInputElement;\n if(input) { \n input.focus()\n }\n }\n\n getBrowser() {\n if( navigator.userAgent.indexOf(\"Chrome\") != -1 ) {\n return \"Chrome\";\n } else if( navigator.userAgent.indexOf(\"Opera\") != -1 ) {\n return \"Opera\";\n } else if( navigator.userAgent.indexOf(\"MSIE\") != -1 ) {\n return \"IE\";\n } else if( navigator.userAgent.indexOf(\"Firefox\") != -1 ) {\n return \"Firefox\";\n } else {\n return \"unknown\";\n }\n }\n\n setFireFoxClasses() { \n const browser = this.getBrowser()\n const input = this.el.shadowRoot.querySelector('.date__picker-input');\n\n if(browser === 'Firefox') { \n input.classList.add('firefox__classes')\n } else if(input.classList.contains('firefox__classes')) { \n input.classList.remove('firefox__classes')\n }\n }\n\n async componentDidLoad() { \n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-date-picker', await framework)\n }\n this.setFireFoxClasses()\n }\n\n componentWillUpdate() { \n if (this.value) {\n this.getDate({ target: { value: this.value } });\n }\n }\n\n // formResetCallback() {\n // this.internals.setFormValue(null);\n // }\n\n render() {\n return (\n <div class={`date__picker-container ${this.error ? 'error' : ''} ${this.disabled ? 'disabled': ''}`}>\n\n <label class='label__wrapper' htmlFor={ this.inputId }>\n { this.label?.trim() }\n <span class={`asterisk ${this.required ? 'required' : \"\"} ${this.error ? 'error' : \"\"}`}>*</span>\n </label>\n\n <div class={`input__wrapper ${this.size === 'l' ? 'large' : 'small'} ${this.disabled ? 'disabled' : ''}`}>\n <input\n type={this.type}\n autocomplete={this.autocomplete}\n class={`date__picker-input ${this.error ? 'error' : \"\"} ${this.success ? \"success\" : \"\"}`}\n disabled={this.disabled ? true : undefined}\n aria-invalid={this.error ? true : undefined}\n aria-label={this.ariaLabel}\n max={this.max}\n min={this.min}\n value={this.value}\n required={this.required}\n onChange={(e) => this.getDate(e)} />\n <div class=\"icon__wrapper\" role=\"button\" onClick={() => this.handleInputFocusOnIconClick()}>\n <ifx-icon icon='calendar16' aria-hidden=\"true\"></ifx-icon>\n </div>\n </div>\n\n { this.caption?.trim() && (\n <div class='caption__wrapper'>\n { this.caption.trim() }\n </div> \n )}\n </div>\n )\n }\n}\n\nlet datePickerId = 0;"],"version":3}
1
+ {"file":"ifx-date-picker.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/date-picker/date-picker.scss?tag=ifx-date-picker&encapsulation=shadow","src/components/date-picker/date-picker.tsx"],"sourcesContent":["@use '~@infineon/design-system-tokens/dist/tokens';\n\n.date__picker-container {\n display: flex;\n flex-direction: column;\n\n & .label__wrapper {\n color: tokens.$ifxColorBaseBlack;\n font: tokens.$ifxBodyBody03;\n\n & .asterisk { \n display: none;\n &.required {\n display: inline;\n margin-left: 4px;\n \n &.error {\n color: #CD002F;\n }\n }\n }\n\n }\n\n &.disabled {\n .label__wrapper {\n color: tokens.$ifxColorEngineering500;\n }\n }\n\n &.error {\n .caption__wrapper {\n color: tokens.$ifxColorRed500;\n }\n }\n\n &.disabled {\n .caption__wrapper {\n color: tokens.$ifxColorEngineering500;\n }\n }\n\n & .caption__wrapper {\n margin-top: tokens.$ifxSpace50;\n color: tokens.$ifxColorBaseBlack;\n font: tokens.$ifxBodyBody05;\n }\n}\n\n.date__picker-input {\n font-family: 'Source Sans 3';\n outline: none;\n width: 100%;\n cursor: pointer;\n border-radius: 1px;\n border: 1px solid tokens.$ifxColorEngineering400;\n height: 100%;\n\n &.firefox__classes {\n padding: 8px 16px;\n color: tokens.$ifxColorEngineering400;\n font-size: 16px;\n text-transform: uppercase;\n font-style: normal;\n font-weight: 400;\n line-height: 24px;\n cursor: pointer;\n }\n\n &:focus:not(.error, .success) {\n border-color: tokens.$ifxColorOcean500;\n }\n\n &:hover:not(:disabled, :focus, .error, .success) {\n border-color: tokens.$ifxColorEngineering500;\n }\n\n &:disabled {\n border-color: tokens.$ifxColorEngineering500;\n background-color: tokens.$ifxColorEngineering200;\n }\n\n &.error {\n border-color: tokens.$ifxColorRed500;\n }\n\n &.success:not(.error) {\n border-color: tokens.$ifxColorGreen500;\n }\n\n &::-webkit-datetime-edit-text {\n color: tokens.$ifxColorEngineering400;\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px;\n }\n\n &.has-value::-webkit-datetime-edit-text {\n color: tokens.$ifxColorBaseBlack;\n }\n\n &.has-value::-webkit-datetime-edit {\n color: tokens.$ifxColorBaseBlack;\n }\n}\n\n::-webkit-datetime-edit {\n color: tokens.$ifxColorEngineering400;\n font-size: 16px;\n text-transform: uppercase;\n font-style: normal;\n font-weight: 400;\n line-height: 24px;\n}\n\n::-webkit-datetime-edit-fields-wrapper {\n padding: 8px 16px;\n padding-bottom: 9px;\n transform: translateY(1px);\n}\n\n::-webkit-inner-spin-button {\n display: none;\n}\n\n::-webkit-calendar-picker-indicator {\n position: absolute;\n right: 15px;\n font-size: 19px;\n cursor: pointer;\n border-radius: 1px;\n &:focus-within {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n}\n\n.input__wrapper {\n display: flex;\n justify-content: space-between;\n align-items: center;\n align-self: stretch;\n background: tokens.$ifxColorBaseWhite;\n position: relative;\n &.large {\n height: 40px;\n }\n\n &.small {\n height: 36px;\n }\n\n &.disabled {\n & .icon__wrapper {\n background-color: tokens.$ifxColorEngineering200;\n }\n }\n}\n\n.icon__wrapper {\n position: absolute;\n right: 17px;\n padding: 2px;\n display: flex;\n justify-content: flex-end;\n align-items: center;\n pointer-events: none;\n z-index: 100;\n background-color: tokens.$ifxColorBaseWhite;\n line-height: 16px;\n\n & ifx-icon {\n vertical-align: middle;\n }\n}\n","import { AttachInternals } from '@stencil/core';\nimport { Component, Prop, h, Element, Event, EventEmitter } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking';\nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n \n@Component({\n tag: 'ifx-date-picker',\n styleUrl: 'date-picker.scss',\n shadow: true,\n // formAssociated: true,\n})\n\nexport class DatePicker {\n private inputId: string = `ifx-date-picker-${++datePickerId}`;\n\n @Element() el: HTMLElement;\n @Prop() size: string = 's';\n @Prop() error: boolean = false;\n @Prop() success: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() ariaLabel: string | null;\n @Prop() value: string;\n @Prop() type: string = 'date'\n @Prop() max: string;\n @Prop() min: string;\n @Prop() required: boolean = false;\n @Prop() label: string;\n @Prop() caption: string;\n @Prop() autocomplete: string = 'on';\n\n @AttachInternals() internals: ElementInternals;\n\n @Event() ifxDate: EventEmitter;\n\n getDate(e) { \n const inputValue = e.target.value;\n const selectedDate = new Date(inputValue);\n const day = selectedDate.getDate();\n const month = selectedDate.getMonth() + 1; \n const year = selectedDate.getFullYear();\n\n \n \n if (!inputValue) {\n this.internals.setFormValue(null);\n\n if(this.type === 'datetime-local') { \n const hours = selectedDate.getHours();\n const minutes = selectedDate.getMinutes();\n this.ifxDate.emit({day, month, year, hours, minutes});\n } else { \n this.ifxDate.emit({day, month, year});\n }\n return;\n }\n\n const input = this.el.shadowRoot.querySelector('.date__picker-input') as HTMLInputElement;\n input.classList.add('has-value');\n\n this.internals.setFormValue(selectedDate.toISOString().substring(0,10))\n if(this.type === 'datetime-local') { \n const hours = selectedDate.getHours();\n const minutes = selectedDate.getMinutes();\n this.ifxDate.emit({day, month, year, hours, minutes});\n } else { \n this.ifxDate.emit({day, month, year})\n }\n }\n\n handleInputFocusOnIconClick() { \n const input = this.el.shadowRoot.querySelector('.date__picker-input') as HTMLInputElement;\n if(input) { \n input.focus()\n }\n }\n\n getBrowser() {\n if( navigator.userAgent.indexOf(\"Chrome\") != -1 ) {\n return \"Chrome\";\n } else if( navigator.userAgent.indexOf(\"Opera\") != -1 ) {\n return \"Opera\";\n } else if( navigator.userAgent.indexOf(\"MSIE\") != -1 ) {\n return \"IE\";\n } else if( navigator.userAgent.indexOf(\"Firefox\") != -1 ) {\n return \"Firefox\";\n } else {\n return \"unknown\";\n }\n }\n\n setFireFoxClasses() { \n const browser = this.getBrowser()\n const input = this.el.shadowRoot.querySelector('.date__picker-input');\n\n if(browser === 'Firefox') { \n input.classList.add('firefox__classes')\n } else if(input.classList.contains('firefox__classes')) { \n input.classList.remove('firefox__classes')\n }\n }\n\n async componentDidLoad() { \n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-date-picker', await framework)\n }\n this.setFireFoxClasses()\n }\n\n componentWillUpdate() { \n if (this.value) {\n this.getDate({ target: { value: this.value } });\n }\n }\n\n formResetCallback() {\n this.internals.setFormValue(null);\n }\n\n render() {\n return (\n <div class={`date__picker-container ${this.error ? 'error' : ''} ${this.disabled ? 'disabled': ''}`}>\n\n <label class='label__wrapper' htmlFor={ this.inputId }>\n { this.label?.trim() }\n <span class={`asterisk ${this.required ? 'required' : \"\"} ${this.error ? 'error' : \"\"}`}>*</span>\n </label>\n\n <div class={`input__wrapper ${this.size === 'l' ? 'large' : 'small'} ${this.disabled ? 'disabled' : ''}`}>\n <input\n type={this.type}\n autocomplete={this.autocomplete}\n class={`date__picker-input ${this.error ? 'error' : \"\"} ${this.success ? \"success\" : \"\"}`}\n disabled={this.disabled ? true : undefined}\n aria-invalid={this.error ? true : undefined}\n aria-label={this.ariaLabel}\n max={this.max}\n min={this.min}\n value={this.value}\n required={this.required}\n onChange={(e) => this.getDate(e)} />\n <div class=\"icon__wrapper\" role=\"button\" onClick={() => this.handleInputFocusOnIconClick()}>\n <ifx-icon icon='calendar16' aria-hidden=\"true\"></ifx-icon>\n </div>\n </div>\n\n { this.caption?.trim() && (\n <div class='caption__wrapper'>\n { this.caption.trim() }\n </div> \n )}\n </div>\n )\n }\n}\n\nlet datePickerId = 0;"],"version":3}
@@ -1,7 +1,7 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, h } from './index.js';
2
- import { d as defineCustomElement$4 } from './p-BdxNbvkX.js';
2
+ import { d as defineCustomElement$4 } from './p-DL0DaOdR.js';
3
3
  import { d as defineCustomElement$3 } from './p-Bq-GdSe7.js';
4
- import { d as defineCustomElement$2 } from './p-D0FTDBJi.js';
4
+ import { d as defineCustomElement$2 } from './p-CStEOh5u.js';
5
5
 
6
6
  const listEntryCss = ".list-entry{display:flex;align-items:center;margin-top:8px;align-self:stretch}";
7
7
 
@@ -1,4 +1,4 @@
1
- import { M as MultiselectOption, d as defineCustomElement$1 } from './p-B1lfea8R.js';
1
+ import { M as MultiselectOption, d as defineCustomElement$1 } from './p-CkOHJ_UX.js';
2
2
 
3
3
  const IfxMultiselectOption = MultiselectOption;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { M as Multiselect, d as defineCustomElement$1 } from './p-wf80ST1n.js';
1
+ import { M as Multiselect, d as defineCustomElement$1 } from './p-DyWw4V2x.js';
2
2
 
3
3
  const IfxMultiselect = Multiselect;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { R as RadioButton, d as defineCustomElement$1 } from './p-D0FTDBJi.js';
1
+ import { R as RadioButton, d as defineCustomElement$1 } from './p-CStEOh5u.js';
2
2
 
3
3
  const IfxRadioButton = RadioButton;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,11 +1,11 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, h } from './index.js';
2
- import { d as defineCustomElement$8 } from './p-BdxNbvkX.js';
2
+ import { d as defineCustomElement$8 } from './p-DL0DaOdR.js';
3
3
  import { d as defineCustomElement$7 } from './p-Bq-GdSe7.js';
4
- import { d as defineCustomElement$6 } from './p-wf80ST1n.js';
5
- import { d as defineCustomElement$5 } from './p-B1lfea8R.js';
4
+ import { d as defineCustomElement$6 } from './p-DyWw4V2x.js';
5
+ import { d as defineCustomElement$5 } from './p-CkOHJ_UX.js';
6
6
  import { d as defineCustomElement$4 } from './p-Dt9X9aqI.js';
7
7
  import { d as defineCustomElement$3 } from './p-DBHwLTn9.js';
8
- import { d as defineCustomElement$2 } from './p-jpHS2EcW.js';
8
+ import { d as defineCustomElement$2 } from './p-BdjtCY5d.js';
9
9
 
10
10
  const setFilterCss = "";
11
11
 
@@ -48,6 +48,17 @@ const Switch = /*@__PURE__*/ proxyCustomElement(class Switch extends H {
48
48
  if (this.disabled)
49
49
  return;
50
50
  this.internalChecked = !this.internalChecked;
51
+ if (this.internalChecked) {
52
+ if (this.value !== undefined) {
53
+ this.internals.setFormValue(this.value);
54
+ }
55
+ else {
56
+ this.internals.setFormValue("on");
57
+ }
58
+ }
59
+ else {
60
+ this.internals.setFormValue(null);
61
+ }
51
62
  this.ifxChange.emit(this.internalChecked);
52
63
  }
53
64
  handleKeyDown(event) {
@@ -62,11 +73,11 @@ const Switch = /*@__PURE__*/ proxyCustomElement(class Switch extends H {
62
73
  * Callback for form association.
63
74
  * Called whenever the form is reset.
64
75
  */
65
- // formResetCallback() {
66
- // this.internals.setFormValue(null);
67
- // }
76
+ formResetCallback() {
77
+ this.internals.setFormValue(null);
78
+ }
68
79
  render() {
69
- return (h("div", { key: '305eeaf2fe5904134c21a5abe556303366b65ae6', class: "container", role: "switch", "aria-checked": this.internalChecked ? 'true' : 'false', "aria-label": this.name, onClick: () => this.toggleSwitch(), onKeyDown: (event) => this.handleKeyDown(event) }, h("div", { key: 'bd115571fc983d6c79f05cc4e04956354f6f18f3', class: `switch__checkbox-container ${this.internalChecked ? 'checked' : ''} ${this.disabled ? 'disabled' : ''}`, tabindex: "0" }, h("div", { key: 'cd26894c8d3329d5b3f97460fe25e6dcb9713865', class: "switch__checkbox-wrapper" }, h("input", { key: 'e1785eb1b9d77b4d5043dbf52bd8892b5c8d33a6', type: "checkbox", hidden: true, name: this.name, disabled: this.disabled, checked: this.internalChecked, value: `${this.value}` }), h("div", { key: '212d207114a8c783c2019e962585c7aca3f2a6ab', class: `switch ${this.internalChecked ? 'checked' : ''} ${this.disabled ? 'disabled' : ''}` }))), h("div", { key: '5dc8dde1aa40fe6e889a52bc63866b1c3a753e24', class: `switch__label-wrapper ${this.disabled ? 'disabled' : ''}` }, h("label", { key: '6e61b7f75aeac9db0d497b2c8843e22ca5a0c590', htmlFor: "switch" }, h("slot", { key: '4692e1b1dab2874fc52c6d2828a1daf4962fa549', onSlotchange: () => this.toggleLabelGap() })))));
80
+ return (h("div", { key: '721e94b2ad3eaefd838df483dcb5d71d88232721', class: "container", role: "switch", "aria-checked": this.internalChecked ? 'true' : 'false', "aria-label": this.name, onClick: () => this.toggleSwitch(), onKeyDown: (event) => this.handleKeyDown(event) }, h("div", { key: '8465d7f9484085b1c803e492d3c77ffb2c662116', class: `switch__checkbox-container ${this.internalChecked ? 'checked' : ''} ${this.disabled ? 'disabled' : ''}`, tabindex: "0" }, h("div", { key: 'd09df6b3ef851b26fc8ac6ccb399a980a2582069', class: "switch__checkbox-wrapper" }, h("input", { key: 'af32a99d14cf27fd111e52ab17221a0b6aebe73e', type: "checkbox", hidden: true, name: this.name, disabled: this.disabled, checked: this.internalChecked, value: `${this.value}` }), h("div", { key: '1cd8797abf5515841fb27cc521d9468f5939b51c', class: `switch ${this.internalChecked ? 'checked' : ''} ${this.disabled ? 'disabled' : ''}` }))), h("div", { key: 'cd68516a598fe78f98fef03d43c26956131b4836', class: `switch__label-wrapper ${this.disabled ? 'disabled' : ''}` }, h("label", { key: 'c085aed72ebd61b00188f2377942c8ef70e033d0', htmlFor: "switch" }, h("slot", { key: '021b99c96d0d0eab72e43cfc0bbfad2d6d89b73b', onSlotchange: () => this.toggleLabelGap() })))));
70
81
  }
71
82
  get el() { return this; }
72
83
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ifx-switch.js","mappings":";;;;AAAA,MAAM,SAAS,GAAG,ygDAAygD;;MCY9gD,MAAM,iBAAAA,kBAAA,CAAA,MAAA,MAAA,SAAAC,CAAA,CAAA;AANnB,IAAA,WAAA,GAAA;;;;;;AAOU,QAAA,IAAO,CAAA,OAAA,GAAY,KAAK;AACxB,QAAA,IAAI,CAAA,IAAA,GAAW,EAAE;AACjB,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;AAExB,QAAA,IAAe,CAAA,eAAA,GAAY,KAAK;AA+G1C;AAtGC,IAAA,MAAM,SAAS,GAAA;QACb,OAAO,IAAI,CAAC,eAAe;;IAG7B,iBAAiB,GAAA;AACf,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO;;IAIrC,cAAc,GAAA;AACZ,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC;AACrD,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC;AAChE,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE;AAC/B,YAAA,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;;aACzB;AACL,YAAA,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;;;AAIrC,IAAA,MAAM,gBAAgB,GAAA;QACpB,IAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AACnC,YAAA,MAAM,SAAS,GAAG,eAAe,EAAE;AACnC,YAAA,cAAc,CAAC,YAAY,EAAE,MAAM,SAAS,CAAC;;QAE/C,IAAI,CAAC,cAAc,EAAE;;IAIvB,YAAY,CAAC,QAAiB,EAAE,QAAiB,EAAA;AAC/C,QAAA,IAAI,QAAQ,KAAK,QAAQ,EAAE;AACzB,YAAA,IAAI,CAAC,eAAe,GAAG,QAAQ;;;IAInC,YAAY,GAAA;QACV,IAAI,IAAI,CAAC,QAAQ;YAAE;AACnB,QAAA,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe;QAY5C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;;AAG3C,IAAA,aAAa,CAAC,KAAoB,EAAA;QAChC,IAAI,IAAI,CAAC,QAAQ;YAAE;;AAEnB,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;YAC9C,IAAI,CAAC,YAAY,EAAE;;;AAIvB;;;AAGG;;;;IAKH,MAAM,GAAA;AACJ,QAAA,QACE,4DACE,KAAK,EAAC,WAAW,EACjB,IAAI,EAAC,QAAQ,EACC,cAAA,EAAA,IAAI,CAAC,eAAe,GAAG,MAAM,GAAG,OAAO,EAAA,YAAA,EACzC,IAAI,CAAC,IAAI,EACrB,OAAO,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,EAClC,SAAS,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAA,EAG/C,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE,CAA8B,2BAAA,EAAA,IAAI,CAAC,eAAe,GAAG,SAAS,GAAG,EAAE,CAAA,CAAA,EAAI,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAE,CAAA,EAC/G,QAAQ,EAAC,GAAG,EAAA,EAEZ,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,0BAA0B,EAAA,EACnC,CAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAO,IAAI,EAAC,UAAU,EAAC,MAAM,EAAA,IAAA,EAC3B,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,eAAe,EAC7B,KAAK,EAAE,CAAA,EAAG,IAAI,CAAC,KAAK,CAAA,CAAE,EAAI,CAAA,EAC5B,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,CAAA,OAAA,EAAU,IAAI,CAAC,eAAe,GAAG,SAAS,GAAG,EAAE,CAAI,CAAA,EAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,EAAE,EAAA,CAAI,CAChG,CACD,EAGP,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,yBAAyB,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAA,CAAE,EAAA,EACpE,CAAO,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAC,QAAQ,EAAA,EACrB,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,YAAY,EAAE,MAAM,IAAI,CAAC,cAAc,EAAE,EAAI,CAAA,CAC7C,CACJ,CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/switch/switch.scss?tag=ifx-switch&encapsulation=shadow","src/components/switch/switch.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n/* switch.css */\n:host {\n display: inline-block;\n user-select: none;\n}\n\n.container {\n display: flex;\n flex-direction: row;\n align-items: center;\n\n &.gap {\n gap: tokens.$ifxSpace200;\n }\n}\n\n\n.switch__checkbox-container {\n padding: tokens.$ifxSpace50;\n display: flex;\n align-items: center;\n position: relative;\n // Subtracting padding size from both height and width\n width: (tokens.$ifxSpace500)-8px;\n height: 16px;\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering500;\n border-radius: 20px;\n cursor: pointer;\n transition: background-color 0.3s ease;\n outline: none;\n\n &:focus {\n outline: 4px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n &:focus-visible {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n\n &.disabled {\n cursor: default;\n border-color: tokens.$ifxColorEngineering300;\n }\n\n\n}\n\n\n.switch__label-wrapper {\n\n & label { \n &:hover { \n cursor: pointer;\n }\n }\n\n &.disabled {\n color: tokens.$ifxColorEngineering300;\n }\n}\n\n\n.switch__checkbox-wrapper {\n\n .switch {\n // position: absolute;\n width: tokens.$ifxSpace200;\n height: tokens.$ifxSpace200;\n background-color: tokens.$ifxColorEngineering500;\n border-radius: 50%;\n transition: transform 0.3s ease, background-color 0.3s ease;\n\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n border-color: tokens.$ifxColorEngineering300;\n cursor: default;\n }\n }\n\n .switch.checked {\n transform: translateX(16px);\n background-color: tokens.$ifxColorBaseWhite;\n\n &.disabled {\n cursor: default;\n }\n\n }\n\n}\n\n.switch__checkbox-container:hover .toggle-switch {\n box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);\n}\n\n\n\n.switch__checkbox-container.checked {\n background-color: tokens.$ifxColorOcean500;\n border-color: tokens.$ifxColorOcean500;\n\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n border-color: tokens.$ifxColorEngineering300;\n cursor: default;\n }\n}","import { AttachInternals, Method } from '@stencil/core';\nimport { Component, Prop, State, Watch, h, Event, EventEmitter, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking'; \nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-switch',\n styleUrl: 'switch.scss',\n shadow: true,\n // formAssociated: true\n})\nexport class Switch {\n @Prop() checked: boolean = false;\n @Prop() name: string = '';\n @Prop() disabled: boolean = false;\n @Prop() value: string;\n @State() internalChecked: boolean = false;\n\n @AttachInternals() internals: ElementInternals;\n\n @Element() el: HTMLIfxSwitchElement;\n\n @Event({ eventName: 'ifxChange' }) ifxChange: EventEmitter<boolean>;\n\n @Method()\n async isChecked(): Promise<boolean> {\n return this.internalChecked;\n }\n\n componentWillLoad() {\n this.internalChecked = this.checked;\n }\n \n\n toggleLabelGap() {\n const slot = this.el.shadowRoot.querySelector('slot');\n const container = this.el.shadowRoot.querySelector('.container');\n if (slot.assignedNodes().length) {\n container.classList.add('gap')\n } else { \n container.classList.remove('gap')\n }\n }\n \n async componentDidLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-switch', await framework)\n }\n this.toggleLabelGap();\n }\n \n @Watch('checked')\n valueChanged(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n this.internalChecked = newValue;\n }\n }\n\n toggleSwitch() {\n if (this.disabled) return;\n this.internalChecked = !this.internalChecked;\n\n if (this.internalChecked) {\n if (this.value !== undefined) {\n //this.internals.setFormValue(this.value);\n } else {\n //this.internals.setFormValue(\"on\")\n }\n } else {\n //this.internals.setFormValue(null)\n }\n\n this.ifxChange.emit(this.internalChecked);\n }\n\n handleKeyDown(event: KeyboardEvent) {\n if (this.disabled) return;\n // If the pressed key is either 'Enter' or 'Space' \n if (event.key === 'Enter' || event.key === ' ') {\n this.toggleSwitch();\n }\n }\n\n /**\n * Callback for form association.\n * Called whenever the form is reset.\n */\n // formResetCallback() {\n // this.internals.setFormValue(null);\n // }\n\n render() {\n return (\n <div\n class=\"container\"\n role=\"switch\"\n aria-checked={this.internalChecked ? 'true' : 'false'}\n aria-label={this.name}\n onClick={() => this.toggleSwitch()}\n onKeyDown={(event) => this.handleKeyDown(event)}\n >\n {/* Checkbox */}\n <div \n class={`switch__checkbox-container ${this.internalChecked ? 'checked' : ''} ${this.disabled ? 'disabled' : ''}`}\n tabindex=\"0\"\n >\n <div class=\"switch__checkbox-wrapper\">\n <input type=\"checkbox\" hidden\n name={this.name}\n disabled={this.disabled}\n checked={this.internalChecked}\n value={`${this.value}`} />\n <div class={`switch ${this.internalChecked ? 'checked' : ''} ${this.disabled ? 'disabled' : ''}`} />\n </div>\n </div >\n\n {/* Label */}\n <div class={`switch__label-wrapper ${this.disabled ? 'disabled' : ''}`} >\n <label htmlFor=\"switch\">\n <slot onSlotchange={() => this.toggleLabelGap()} />\n </label>\n </div>\n </div>\n )\n\n }\n}\n"],"version":3}
1
+ {"file":"ifx-switch.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/switch/switch.scss?tag=ifx-switch&encapsulation=shadow","src/components/switch/switch.tsx"],"sourcesContent":["@use \"~@infineon/design-system-tokens/dist/tokens\";\n@use \"../../global/font.scss\";\n\n/* switch.css */\n:host {\n display: inline-block;\n user-select: none;\n}\n\n.container {\n display: flex;\n flex-direction: row;\n align-items: center;\n\n &.gap {\n gap: tokens.$ifxSpace200;\n }\n}\n\n\n.switch__checkbox-container {\n padding: tokens.$ifxSpace50;\n display: flex;\n align-items: center;\n position: relative;\n // Subtracting padding size from both height and width\n width: (tokens.$ifxSpace500)-8px;\n height: 16px;\n background-color: tokens.$ifxColorBaseWhite;\n border: 1px solid tokens.$ifxColorEngineering500;\n border-radius: 20px;\n cursor: pointer;\n transition: background-color 0.3s ease;\n outline: none;\n\n &:focus {\n outline: 4px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n\n &:focus:not(:focus-visible) {\n outline: none;\n }\n\n &:focus-visible {\n outline: 2px solid tokens.$ifxColorOcean500;\n outline-offset: 2px;\n }\n\n &.disabled {\n cursor: default;\n border-color: tokens.$ifxColorEngineering300;\n }\n\n\n}\n\n\n.switch__label-wrapper {\n\n & label { \n &:hover { \n cursor: pointer;\n }\n }\n\n &.disabled {\n color: tokens.$ifxColorEngineering300;\n }\n}\n\n\n.switch__checkbox-wrapper {\n\n .switch {\n // position: absolute;\n width: tokens.$ifxSpace200;\n height: tokens.$ifxSpace200;\n background-color: tokens.$ifxColorEngineering500;\n border-radius: 50%;\n transition: transform 0.3s ease, background-color 0.3s ease;\n\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n border-color: tokens.$ifxColorEngineering300;\n cursor: default;\n }\n }\n\n .switch.checked {\n transform: translateX(16px);\n background-color: tokens.$ifxColorBaseWhite;\n\n &.disabled {\n cursor: default;\n }\n\n }\n\n}\n\n.switch__checkbox-container:hover .toggle-switch {\n box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);\n}\n\n\n\n.switch__checkbox-container.checked {\n background-color: tokens.$ifxColorOcean500;\n border-color: tokens.$ifxColorOcean500;\n\n &.disabled {\n background-color: tokens.$ifxColorEngineering300;\n border-color: tokens.$ifxColorEngineering300;\n cursor: default;\n }\n}","import { AttachInternals, Method } from '@stencil/core';\nimport { Component, Prop, State, Watch, h, Event, EventEmitter, Element } from '@stencil/core';\nimport { trackComponent } from '../../global/utils/tracking'; \nimport { isNestedInIfxComponent } from '../../global/utils/dom-utils';\nimport { detectFramework } from '../../global/utils/framework-detection';\n\n@Component({\n tag: 'ifx-switch',\n styleUrl: 'switch.scss',\n shadow: true,\n // formAssociated: true\n})\nexport class Switch {\n @Prop() checked: boolean = false;\n @Prop() name: string = '';\n @Prop() disabled: boolean = false;\n @Prop() value: string;\n @State() internalChecked: boolean = false;\n\n @AttachInternals() internals: ElementInternals;\n\n @Element() el: HTMLIfxSwitchElement;\n\n @Event({ eventName: 'ifxChange' }) ifxChange: EventEmitter<boolean>;\n\n @Method()\n async isChecked(): Promise<boolean> {\n return this.internalChecked;\n }\n\n componentWillLoad() {\n this.internalChecked = this.checked;\n }\n \n\n toggleLabelGap() {\n const slot = this.el.shadowRoot.querySelector('slot');\n const container = this.el.shadowRoot.querySelector('.container');\n if (slot.assignedNodes().length) {\n container.classList.add('gap')\n } else { \n container.classList.remove('gap')\n }\n }\n \n async componentDidLoad() {\n if(!isNestedInIfxComponent(this.el)) { \n const framework = detectFramework();\n trackComponent('ifx-switch', await framework)\n }\n this.toggleLabelGap();\n }\n \n @Watch('checked')\n valueChanged(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue) {\n this.internalChecked = newValue;\n }\n }\n\n toggleSwitch() {\n if (this.disabled) return;\n this.internalChecked = !this.internalChecked;\n\n if (this.internalChecked) {\n if (this.value !== undefined) {\n this.internals.setFormValue(this.value);\n } else {\n this.internals.setFormValue(\"on\")\n }\n } else {\n this.internals.setFormValue(null)\n }\n\n this.ifxChange.emit(this.internalChecked);\n }\n\n handleKeyDown(event: KeyboardEvent) {\n if (this.disabled) return;\n // If the pressed key is either 'Enter' or 'Space' \n if (event.key === 'Enter' || event.key === ' ') {\n this.toggleSwitch();\n }\n }\n\n /**\n * Callback for form association.\n * Called whenever the form is reset.\n */\n formResetCallback() {\n this.internals.setFormValue(null);\n }\n\n render() {\n return (\n <div\n class=\"container\"\n role=\"switch\"\n aria-checked={this.internalChecked ? 'true' : 'false'}\n aria-label={this.name}\n onClick={() => this.toggleSwitch()}\n onKeyDown={(event) => this.handleKeyDown(event)}\n >\n {/* Checkbox */}\n <div \n class={`switch__checkbox-container ${this.internalChecked ? 'checked' : ''} ${this.disabled ? 'disabled' : ''}`}\n tabindex=\"0\"\n >\n <div class=\"switch__checkbox-wrapper\">\n <input type=\"checkbox\" hidden\n name={this.name}\n disabled={this.disabled}\n checked={this.internalChecked}\n value={`${this.value}`} />\n <div class={`switch ${this.internalChecked ? 'checked' : ''} ${this.disabled ? 'disabled' : ''}`} />\n </div>\n </div >\n\n {/* Label */}\n <div class={`switch__label-wrapper ${this.disabled ? 'disabled' : ''}`} >\n <label htmlFor=\"switch\">\n <slot onSlotchange={() => this.toggleLabelGap()} />\n </label>\n </div>\n </div>\n )\n\n }\n}\n"],"version":3}
@@ -4,9 +4,9 @@ import { d as detectFramework, t as trackComponent } from './p-DcmcuUOA.js';
4
4
  import { i as isNestedInIfxComponent } from './p-Bw2fh5LT.js';
5
5
  import { c as createGrid } from './p-9UDg_bQZ.js';
6
6
  import { d as defineCustomElement$a } from './p-CSFUrFeR.js';
7
- import { d as defineCustomElement$9 } from './p-BdxNbvkX.js';
7
+ import { d as defineCustomElement$9 } from './p-DL0DaOdR.js';
8
8
  import { d as defineCustomElement$8 } from './p-C0tC8p0l.js';
9
- import { d as defineCustomElement$7 } from './p-dFnoI9Z9.js';
9
+ import { d as defineCustomElement$7 } from './p-Bsg4XNJ8.js';
10
10
  import { d as defineCustomElement$6 } from './p-Bq-GdSe7.js';
11
11
  import { d as defineCustomElement$5 } from './p-r7hBylnC.js';
12
12
  import { d as defineCustomElement$4 } from './p-CLgcoxeD.js';
@@ -132,6 +132,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends H {
132
132
  this.showSidebarFilters = true;
133
133
  this.matchingResultsCount = 0;
134
134
  this.variant = 'default';
135
+ this.serverSidePagination = false;
135
136
  this.showLoading = false;
136
137
  this.originalRowData = [];
137
138
  this.internalItemsPerPage = JSON.stringify([
@@ -316,13 +317,33 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends H {
316
317
  return true;
317
318
  });
318
319
  }
319
- updateTableView() {
320
- const startIndex = (this.currentPage - 1) * this.paginationPageSize;
321
- const endIndex = startIndex + this.paginationPageSize;
322
- const visibleRowData = this.allRowData.slice(startIndex, endIndex);
323
- this.rowData = visibleRowData;
324
- this.gridApi.setGridOption('rowData', this.rowData);
325
- this.matchingResultsCount = this.allRowData.length;
320
+ async updateTableView() {
321
+ if (this.serverSidePagination && this.serverPageChangeHandler) {
322
+ const { rows, total } = await this.serverPageChangeHandler({
323
+ page: this.currentPage,
324
+ pageSize: this.paginationPageSize
325
+ });
326
+ this.rowData = rows;
327
+ this.matchingResultsCount = total;
328
+ if (this.gridApi) {
329
+ this.gridApi.setGridOption('rowData', rows);
330
+ }
331
+ // 👇 FIX: update pagination total
332
+ const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');
333
+ if (paginationElement) {
334
+ paginationElement.setAttribute('total', total.toString());
335
+ }
336
+ }
337
+ else {
338
+ const startIndex = (this.currentPage - 1) * this.paginationPageSize;
339
+ const endIndex = startIndex + this.paginationPageSize;
340
+ const visibleRowData = this.allRowData.slice(startIndex, endIndex);
341
+ this.rowData = visibleRowData;
342
+ this.matchingResultsCount = this.allRowData.length;
343
+ if (this.gridApi) {
344
+ this.gridApi.setGridOption('rowData', this.rowData);
345
+ }
346
+ }
326
347
  }
327
348
  clearAllFilters() {
328
349
  this.currentFilters = {};
@@ -412,6 +433,7 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends H {
412
433
  });
413
434
  }
414
435
  }
436
+ this.updateTableView();
415
437
  }
416
438
  componentWillUnmount() {
417
439
  if (this.pagination) {
@@ -431,14 +453,30 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends H {
431
453
  topbarFilter.removeEventListener('ifxTopbarFilterChange', this.handleTopbarFilterChange.bind(this));
432
454
  });
433
455
  }
434
- handlePageChange(event) {
456
+ async handlePageChange(event) {
435
457
  this.currentPage = event.detail.currentPage;
436
- const startIndex = (this.currentPage - 1) * this.paginationPageSize;
437
- const endIndex = startIndex + this.paginationPageSize;
438
- const visibleRowData = this.allRowData.slice(startIndex, endIndex);
439
- // Update the data in the grid
440
- if (this.gridApi) {
441
- this.gridApi.setGridOption('rowData', visibleRowData);
458
+ if (this.serverSidePagination && this.serverPageChangeHandler) {
459
+ const { rows, total } = await this.serverPageChangeHandler({
460
+ page: this.currentPage,
461
+ pageSize: this.paginationPageSize
462
+ });
463
+ this.rowData = rows;
464
+ this.matchingResultsCount = total;
465
+ if (this.gridApi) {
466
+ this.gridApi.setGridOption('rowData', this.rowData);
467
+ }
468
+ const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');
469
+ if (paginationElement) {
470
+ paginationElement.setAttribute('total', total.toString());
471
+ }
472
+ }
473
+ else {
474
+ const startIndex = (this.currentPage - 1) * this.paginationPageSize;
475
+ const endIndex = startIndex + this.paginationPageSize;
476
+ const visibleRowData = this.allRowData.slice(startIndex, endIndex);
477
+ if (this.gridApi) {
478
+ this.gridApi.setGridOption('rowData', visibleRowData);
479
+ }
442
480
  }
443
481
  }
444
482
  isJSONParseable(str) {
@@ -530,12 +568,12 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends H {
530
568
  };
531
569
  }
532
570
  const filterClass = this.filterOrientation === 'topbar' ? 'topbar-layout' : 'sidebar-layout';
533
- return (h(Host, { key: '57d58d8d22bb387b9c43534dd3a401177d93f398' }, h("div", { key: '078da88d6909477b0e9d6f05e5ef43f7f11dccd6', class: "table-container" }, this.filterOrientation === 'sidebar' && (h("div", { key: '3631ac354f20a7f2d8ca37a778fbbdacdaf3a7dc', class: "sidebar-btn" }, h("ifx-button", { key: 'da620be61a292844364371a9d216823a506250df', type: "button", disabled: false, variant: "secondary", size: "m", target: "_blank", theme: "default", "full-width": "false", onClick: () => this.toggleSidebarFilters() }, h("ifx-icon", { key: 'a691538e44adada86749955c3492a74140023973', icon: "cross-16" }), this.showSidebarFilters ? 'Hide Filters' : 'Show Filters'))), h("div", { key: '6f2f19292c24e976d50e2dddbd89e10f37419505', class: filterClass }, this.filterOrientation === 'sidebar' && this.showSidebarFilters && (h("div", { key: '202f8bccf72625c7f82d1a4fb2afebad813d3da5', class: "sidebar-container" }, h("div", { key: '6f86580fea19787e0fa79c8b63a1ff20bb4f7c5f', class: "filters-title-container" }, h("span", { key: '5df891cbef09a691e8a39444d480789cb17eb1cb', class: "filters-title" }, "Filters")), h("div", { key: '72cc704fa2c0b029657958d2e523733cb37e6c7d', class: "set-filter-wrapper-sidebar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (h("slot", { key: '5e81b3b2d8e54add2612b0d4263630740ef43b1f', name: "sidebar-filter" }))))), this.filterOrientation !== 'none' && this.filterOrientation !== 'sidebar' && (h("div", { key: '2ed6b7d3d36dcb79368af9a103595350967779ac', class: "set-filter-wrapper-topbar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (h("slot", { key: '80411817924fe75c67dce87f01fbfdacd7743f51', name: "topbar-filter" })))), h("div", { key: '0989b64e4cc8d5b2ac03b7dabc5bf57647b040f4', class: "table-pagination-wrapper" }, h("div", { key: '7c1b71032d9220d44f55cd83cc9b45ba0957fcf3', class: "filter-chips" }, this.filterOrientation !== 'none' && this.filterOrientation !== 'topbar' && this.showSidebarFilters && (Object.keys(this.currentFilters).map(name => {
571
+ return (h(Host, { key: 'fd0e6b6f5f6f47c5fae1aa8ca27a7360c2360e5e' }, h("div", { key: '6d8e5474ffa038d5be3a79aa79dd12a2561228a0', class: "table-container" }, this.filterOrientation === 'sidebar' && (h("div", { key: 'bfff6a6b57b3033be46fbefcc8ec6283ab8cab17', class: "sidebar-btn" }, h("ifx-button", { key: '6612b1ccf029835417dc462d802e7bbf30dc33c2', type: "button", disabled: false, variant: "secondary", size: "m", target: "_blank", theme: "default", "full-width": "false", onClick: () => this.toggleSidebarFilters() }, h("ifx-icon", { key: '66e96657cecf3cababb110e5c429fe0db5480c9c', icon: "cross-16" }), this.showSidebarFilters ? 'Hide Filters' : 'Show Filters'))), h("div", { key: '69c63f253dea7bbad0572f9f42a487ef42d3abfd', class: filterClass }, this.filterOrientation === 'sidebar' && this.showSidebarFilters && (h("div", { key: '46eb45efbf62473a568b35dae19417cb511471a6', class: "sidebar-container" }, h("div", { key: 'dfa0c061b16633923c9e77078320eaa8cda68c18', class: "filters-title-container" }, h("span", { key: '0cf1e1c054ca2265580efbcd8a20d4b71dedb7f8', class: "filters-title" }, "Filters")), h("div", { key: 'e4ff6f659422e6cb6a25c4f4a89de6a5ea7ee4fc', class: "set-filter-wrapper-sidebar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (h("slot", { key: 'd210e04a9a42eac59ec4c591fe8e81dd1b241ed9', name: "sidebar-filter" }))))), this.filterOrientation !== 'none' && this.filterOrientation !== 'sidebar' && (h("div", { key: 'b2e65adbd90e0c6f2b648d01cd853006856aae82', class: "set-filter-wrapper-topbar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (h("slot", { key: 'e24c8f623b67d67983dfea1a5cb1bc3bfa7ee6a9', name: "topbar-filter" })))), h("div", { key: '212fe485f8d28024ace7ba7531871201734ff77f', class: "table-pagination-wrapper" }, h("div", { key: '29eacc8beb7c4d9392da670b0961497d4923be8f', class: "filter-chips" }, this.filterOrientation !== 'none' && this.filterOrientation !== 'topbar' && this.showSidebarFilters && (Object.keys(this.currentFilters).map(name => {
534
572
  const filter = this.currentFilters[name];
535
573
  const filterValues = filter.filterValues;
536
574
  const isMultiSelect = filter.type !== 'text';
537
575
  return filterValues.length > 0 ? (h("ifx-chip", { placeholder: name, size: "large", variant: isMultiSelect ? "multi" : "single", readOnly: true, value: filterValues, key: name }, filterValues.map(filterValue => (h("ifx-chip-item", { value: filterValue, selected: true, key: filterValue }, filterValue))))) : null;
538
- })), this.filterOrientation !== 'none' && this.filterOrientation === 'sidebar' && this.showSidebarFilters && Object.keys(this.currentFilters).length > 0 && (h("ifx-button", { key: 'f359cc77668bfe2659ab4e957e5f829e37a696e5', type: "button", disabled: false, variant: "tertiary", size: "m", target: "_blank", theme: "default", "full-width": "false", onClick: () => this.handleResetButtonClick() }, h("ifx-icon", { key: 'c4b80ec2a98d8a7fb898964d91c5af0e111b9336', icon: "curved-arrow-left-16" }), "Reset all"))), this.filterOrientation !== 'none' && (h("div", { key: 'aa467b350336adb839975dbdb1e4c74573e420f8', class: "matching-results-container" }, h("span", { key: 'cff3d87ce4d72557d085ee95f4b44392dcc11c74', class: "matching-results-count" }, this.matchingResultsCount), h("span", { key: '608425fb602084d62dca782bc411b5ea499319a1', class: "matching-results-text" }, "matching results"))), h("div", { key: '715e5b6525452071148539e812c54da89cab4cf8', id: "table-wrapper", class: this.getTableClassNames() }, h("div", { key: '998c1175e1dacfa339c86efbec38976d7c367447', id: `ifxTable-${this.uniqueKey}`, class: `ifx-ag-grid ${this.variant === 'zebra' ? 'zebra' : ""}`, style: style, ref: (el) => this.container = el })), this.pagination ? h("ifx-pagination", { total: this.allRowData.length, "current-page": this.currentPage, "items-per-page": this.internalItemsPerPage }) : null)))));
576
+ })), this.filterOrientation !== 'none' && this.filterOrientation === 'sidebar' && this.showSidebarFilters && Object.keys(this.currentFilters).length > 0 && (h("ifx-button", { key: '17b770de28b2e46eb7c93fa5546e8521931099ea', type: "button", disabled: false, variant: "tertiary", size: "m", target: "_blank", theme: "default", "full-width": "false", onClick: () => this.handleResetButtonClick() }, h("ifx-icon", { key: '69c6664f0993ec1680b8c2594cce5b61885da4fe', icon: "curved-arrow-left-16" }), "Reset all"))), this.filterOrientation !== 'none' && (h("div", { key: '5c1a03dbf94b1ff031ef06649d3e42acb714ac1f', class: "matching-results-container" }, h("span", { key: '9cfd13ebfaa6a8eb4fc933101633df6ba91a5fa9', class: "matching-results-count" }, this.matchingResultsCount), h("span", { key: 'c4d436c9a93e49eab0e7a3e536618736bc4e88d6', class: "matching-results-text" }, "matching results"))), h("div", { key: 'f8ea0983a8af677d8d60e24705247cef013b228c', id: "table-wrapper", class: this.getTableClassNames() }, h("div", { key: 'e2a329f4ec35d942db691440bcdb06dc5d0d03b1', id: `ifxTable-${this.uniqueKey}`, class: `ifx-ag-grid ${this.variant === 'zebra' ? 'zebra' : ""}`, style: style, ref: (el) => this.container = el })), this.pagination ? h("ifx-pagination", { total: this.allRowData.length, "current-page": this.currentPage, "items-per-page": this.internalItemsPerPage }) : null)))));
539
577
  }
540
578
  hasButtonCol() {
541
579
  return this.getColData().some(column => column.field === 'button');
@@ -573,6 +611,8 @@ const Table = /*@__PURE__*/ proxyCustomElement(class Table extends H {
573
611
  "paginationItemsPerPage": [1, "pagination-items-per-page"],
574
612
  "filterOrientation": [1, "filter-orientation"],
575
613
  "variant": [1],
614
+ "serverSidePagination": [4, "server-side-pagination"],
615
+ "serverPageChangeHandler": [16, "server-page-change-handler"],
576
616
  "showLoading": [4, "show-loading"],
577
617
  "currentPage": [32],
578
618
  "rowData": [32],