@infineon/infineon-design-system-stencil 31.0.0--canary.1697.223df0ff1431a5398fd1261ed013c9dd2a89e7a0.0 → 31.0.0--canary.1640.e80c846ce332e4ddd95d97b8ad01c8da2d639e74.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 (630) hide show
  1. package/dist/cjs/ifx-accordion_2.cjs.entry.js +8 -8
  2. package/dist/cjs/ifx-accordion_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ifx-alert.cjs.entry.js +1 -1
  4. package/dist/cjs/ifx-badge.cjs.entry.js +1 -1
  5. package/dist/cjs/ifx-basic-table.cjs.entry.js +1 -1
  6. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +2 -2
  7. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js +1 -1
  9. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +4 -4
  10. package/dist/cjs/ifx-breadcrumb.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ifx-button.cjs.entry.js +1 -1
  12. package/dist/cjs/ifx-card-headline.cjs.entry.js +1 -1
  13. package/dist/cjs/ifx-card-image.cjs.entry.js +1 -1
  14. package/dist/cjs/ifx-card-links.cjs.entry.js +1 -1
  15. package/dist/cjs/ifx-card-overline.cjs.entry.js +1 -1
  16. package/dist/cjs/ifx-card-text.cjs.entry.js +1 -1
  17. package/dist/cjs/ifx-card.cjs.entry.js +1 -1
  18. package/dist/cjs/ifx-checkbox.cjs.entry.js +1 -1
  19. package/dist/cjs/ifx-chip_3.cjs.entry.js +26 -28
  20. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js +1 -1
  22. package/dist/cjs/ifx-content-switcher.cjs.entry.js +1 -1
  23. package/dist/cjs/ifx-date-picker.cjs.entry.js +1 -1
  24. package/dist/cjs/ifx-dropdown-header.cjs.entry.js +1 -1
  25. package/dist/cjs/ifx-dropdown-item.cjs.entry.js +1 -1
  26. package/dist/cjs/ifx-dropdown-menu.cjs.entry.js +1 -1
  27. package/dist/cjs/ifx-dropdown-separator.cjs.entry.js +1 -1
  28. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js +1 -1
  29. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js +1 -1
  30. package/dist/cjs/ifx-dropdown.cjs.entry.js +1 -1
  31. package/dist/cjs/ifx-faq.cjs.entry.js +1 -1
  32. package/dist/cjs/ifx-filter-accordion.cjs.entry.js +1 -1
  33. package/dist/cjs/ifx-filter-bar.cjs.entry.js +1 -1
  34. package/dist/cjs/ifx-filter-search.cjs.entry.js +1 -1
  35. package/dist/cjs/ifx-filter-type-group.cjs.entry.js +1 -1
  36. package/dist/cjs/ifx-footer-column.cjs.entry.js +1 -1
  37. package/dist/cjs/ifx-footer.cjs.entry.js +1 -1
  38. package/dist/cjs/ifx-icon-button.cjs.entry.js +1 -1
  39. package/dist/cjs/ifx-icon.cjs.entry.js +1 -1
  40. package/dist/cjs/ifx-icons-preview.cjs.entry.js +1 -1
  41. package/dist/cjs/ifx-link.cjs.entry.js +1 -1
  42. package/dist/cjs/ifx-list-entry.cjs.entry.js +1 -1
  43. package/dist/cjs/ifx-list.cjs.entry.js +1 -1
  44. package/dist/cjs/ifx-modal.cjs.entry.js +9 -9
  45. package/dist/cjs/ifx-modal.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +5 -5
  47. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ifx-navbar-item.cjs.entry.js +1 -1
  49. package/dist/cjs/ifx-navbar-profile.cjs.entry.js +1 -1
  50. package/dist/cjs/ifx-navbar.cjs.entry.js +4 -4
  51. package/dist/cjs/ifx-navbar.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ifx-notification.cjs.entry.js +1 -1
  53. package/dist/cjs/ifx-number-indicator.cjs.entry.js +1 -1
  54. package/dist/cjs/ifx-overview-table.cjs.entry.js +1 -1
  55. package/dist/cjs/ifx-progress-bar.cjs.entry.js +1 -1
  56. package/dist/cjs/ifx-radio-button.cjs.entry.js +1 -1
  57. package/dist/cjs/ifx-search-bar.cjs.entry.js +6 -6
  58. package/dist/cjs/ifx-search-bar.cjs.entry.js.map +1 -1
  59. package/dist/cjs/ifx-search-field.cjs.entry.js +1 -1
  60. package/dist/cjs/ifx-segment.cjs.entry.js +1 -1
  61. package/dist/cjs/ifx-segmented-control.cjs.entry.js +1 -1
  62. package/dist/cjs/ifx-select.cjs.entry.js +1 -1
  63. package/dist/cjs/ifx-set-filter.cjs.entry.js +1 -1
  64. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +10 -11
  65. package/dist/cjs/ifx-sidebar-item.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ifx-sidebar-title.cjs.entry.js +1 -1
  67. package/dist/cjs/ifx-sidebar.cjs.entry.js +1 -1
  68. package/dist/cjs/ifx-slider.cjs.entry.js +1 -1
  69. package/dist/cjs/ifx-spinner.cjs.entry.js +1 -1
  70. package/dist/cjs/ifx-status.cjs.entry.js +1 -1
  71. package/dist/cjs/ifx-step.cjs.entry.js +1 -1
  72. package/dist/cjs/ifx-stepper.cjs.entry.js +1 -1
  73. package/dist/cjs/ifx-switch.cjs.entry.js +1 -1
  74. package/dist/cjs/ifx-tab.cjs.entry.js +1 -1
  75. package/dist/cjs/ifx-table.cjs.entry.js +23 -21
  76. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  77. package/dist/cjs/ifx-tabs.cjs.entry.js +7 -7
  78. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ifx-tag.cjs.entry.js +1 -1
  80. package/dist/cjs/ifx-textarea.cjs.entry.js +1 -1
  81. package/dist/cjs/ifx-tooltip.cjs.entry.js +1 -1
  82. package/dist/cjs/{index-68ed35ac.js → index-051c2b85.js} +12 -6
  83. package/dist/cjs/index-051c2b85.js.map +1 -0
  84. package/dist/cjs/infineon-design-system-stencil.cjs.js +3 -3
  85. package/dist/cjs/infineon-design-system-stencil.cjs.js.map +1 -1
  86. package/dist/cjs/loader.cjs.js +2 -2
  87. package/dist/collection/collection-manifest.json +1 -1
  88. package/dist/collection/components/accordion/accordion.js +2 -2
  89. package/dist/collection/components/accordion/accordion.js.map +1 -1
  90. package/dist/collection/components/accordion/accordion.stories.js +81 -7
  91. package/dist/collection/components/accordion/accordion.stories.js.map +1 -1
  92. package/dist/collection/components/accordion/accordionItem.js +10 -10
  93. package/dist/collection/components/accordion/accordionItem.js.map +1 -1
  94. package/dist/collection/components/alert/alert.stories.js +45 -12
  95. package/dist/collection/components/alert/alert.stories.js.map +1 -1
  96. package/dist/collection/components/badge/badge.stories.js +28 -7
  97. package/dist/collection/components/badge/badge.stories.js.map +1 -1
  98. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js +3 -3
  99. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js.map +1 -1
  100. package/dist/collection/components/breadcrumb/breadcrumb.js +3 -3
  101. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  102. package/dist/collection/components/breadcrumb/breadcrumb.stories.js +87 -13
  103. package/dist/collection/components/breadcrumb/breadcrumb.stories.js.map +1 -1
  104. package/dist/collection/components/button/button.stories.js +101 -9
  105. package/dist/collection/components/button/button.stories.js.map +1 -1
  106. package/dist/collection/components/card/card.stories.js +85 -4
  107. package/dist/collection/components/card/card.stories.js.map +1 -1
  108. package/dist/collection/components/checkbox/checkbox.stories.js +72 -14
  109. package/dist/collection/components/checkbox/checkbox.stories.js.map +1 -1
  110. package/dist/collection/components/chip/chip-item/chip-item.js +4 -4
  111. package/dist/collection/components/chip/chip-item/chip-item.js.map +1 -1
  112. package/dist/collection/components/chip/chip.js +15 -15
  113. package/dist/collection/components/chip/chip.js.map +1 -1
  114. package/dist/collection/components/chip/chip.stories.js +21 -26
  115. package/dist/collection/components/chip/chip.stories.js.map +1 -1
  116. package/dist/collection/components/chip/interfaces.js.map +1 -1
  117. package/dist/collection/components/content-switcher/content-switcher.stories.js +65 -3
  118. package/dist/collection/components/content-switcher/content-switcher.stories.js.map +1 -1
  119. package/dist/collection/components/date-picker/date-picker.stories.js +97 -7
  120. package/dist/collection/components/date-picker/date-picker.stories.js.map +1 -1
  121. package/dist/collection/components/dropdown/dropdown.stories.js +222 -64
  122. package/dist/collection/components/dropdown/dropdown.stories.js.map +1 -1
  123. package/dist/collection/components/footer/footer.stories.js +31 -1
  124. package/dist/collection/components/footer/footer.stories.js.map +1 -1
  125. package/dist/collection/components/icon/infineonIconStencil.stories.js +7 -2
  126. package/dist/collection/components/icon/infineonIconStencil.stories.js.map +1 -1
  127. package/dist/collection/components/icon-button/icon-button.stories.js +61 -5
  128. package/dist/collection/components/icon-button/icon-button.stories.js.map +1 -1
  129. package/dist/collection/components/link/link.stories.js +53 -4
  130. package/dist/collection/components/link/link.stories.js.map +1 -1
  131. package/dist/collection/components/modal/modal.js +10 -10
  132. package/dist/collection/components/modal/modal.js.map +1 -1
  133. package/dist/collection/components/modal/modal.stories.js +96 -19
  134. package/dist/collection/components/modal/modal.stories.js.map +1 -1
  135. package/dist/collection/components/navigation/navbar/navbar.js +4 -4
  136. package/dist/collection/components/navigation/navbar/navbar.js.map +1 -1
  137. package/dist/collection/components/navigation/navbar/navbar.stories.js +176 -12
  138. package/dist/collection/components/navigation/navbar/navbar.stories.js.map +1 -1
  139. package/dist/collection/components/navigation/sidebar/sidebar-item.js +11 -32
  140. package/dist/collection/components/navigation/sidebar/sidebar-item.js.map +1 -1
  141. package/dist/collection/components/navigation/sidebar/sidebar.stories.js +184 -19
  142. package/dist/collection/components/navigation/sidebar/sidebar.stories.js.map +1 -1
  143. package/dist/collection/components/notification/notification.stories.js +55 -8
  144. package/dist/collection/components/notification/notification.stories.js.map +1 -1
  145. package/dist/collection/components/number-indicator/number-indicator.stories.js +19 -0
  146. package/dist/collection/components/number-indicator/number-indicator.stories.js.map +1 -1
  147. package/dist/collection/components/pagination/pagination.js +8 -57
  148. package/dist/collection/components/pagination/pagination.js.map +1 -1
  149. package/dist/collection/components/pagination/pagination.stories.js +19 -16
  150. package/dist/collection/components/pagination/pagination.stories.js.map +1 -1
  151. package/dist/collection/components/progress-bar/progress-bar.stories.js +31 -8
  152. package/dist/collection/components/progress-bar/progress-bar.stories.js.map +1 -1
  153. package/dist/collection/components/radio-button/radio-button.stories.js +66 -13
  154. package/dist/collection/components/radio-button/radio-button.stories.js.map +1 -1
  155. package/dist/collection/components/search-bar/search-bar.js +6 -6
  156. package/dist/collection/components/search-bar/search-bar.js.map +1 -1
  157. package/dist/collection/components/search-bar/search-bar.stories.js +58 -9
  158. package/dist/collection/components/search-bar/search-bar.stories.js.map +1 -1
  159. package/dist/collection/components/search-field/search-field.stories.js +54 -8
  160. package/dist/collection/components/search-field/search-field.stories.js.map +1 -1
  161. package/dist/collection/components/segmented-control/segmented-control.stories.js +1 -10
  162. package/dist/collection/components/segmented-control/segmented-control.stories.js.map +1 -1
  163. package/dist/collection/components/select/multi-select/multiselect.js +5 -5
  164. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  165. package/dist/collection/components/select/multi-select/multiselect.stories.js +131 -5
  166. package/dist/collection/components/select/multi-select/multiselect.stories.js.map +1 -1
  167. package/dist/collection/components/select/single-select/select.stories.js +83 -26
  168. package/dist/collection/components/select/single-select/select.stories.js.map +1 -1
  169. package/dist/collection/components/slider/slider.stories.js +97 -13
  170. package/dist/collection/components/slider/slider.stories.js.map +1 -1
  171. package/dist/collection/components/spinner/spinner.stories.js +34 -2
  172. package/dist/collection/components/spinner/spinner.stories.js.map +1 -1
  173. package/dist/collection/components/status/status.stories.js +25 -1
  174. package/dist/collection/components/status/status.stories.js.map +1 -1
  175. package/dist/collection/components/stepper/stepper.stories.js +54 -25
  176. package/dist/collection/components/stepper/stepper.stories.js.map +1 -1
  177. package/dist/collection/components/switch/switch.stories.js +51 -4
  178. package/dist/collection/components/switch/switch.stories.js.map +1 -1
  179. package/dist/collection/components/table-advanced-version/table.js +23 -21
  180. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  181. package/dist/collection/components/table-advanced-version/table.stories.js +124 -39
  182. package/dist/collection/components/table-advanced-version/table.stories.js.map +1 -1
  183. package/dist/collection/components/table-basic-version/table.stories.js +31 -4
  184. package/dist/collection/components/table-basic-version/table.stories.js.map +1 -1
  185. package/dist/collection/components/tabs/tabs.js +7 -7
  186. package/dist/collection/components/tabs/tabs.js.map +1 -1
  187. package/dist/collection/components/tabs/tabs.stories.js +104 -29
  188. package/dist/collection/components/tabs/tabs.stories.js.map +1 -1
  189. package/dist/collection/components/tag/tag.stories.js +18 -0
  190. package/dist/collection/components/tag/tag.stories.js.map +1 -1
  191. package/dist/collection/components/text-field/text-field.stories.js +116 -13
  192. package/dist/collection/components/text-field/text-field.stories.js.map +1 -1
  193. package/dist/collection/components/textarea/textarea.stories.js +1 -3
  194. package/dist/collection/components/textarea/textarea.stories.js.map +1 -1
  195. package/dist/collection/components/tooltip/tooltip.stories.js +48 -4
  196. package/dist/collection/components/tooltip/tooltip.stories.js.map +1 -1
  197. package/dist/components/ifx-accordion-item.js +1 -1
  198. package/dist/components/ifx-accordion.js +1 -1
  199. package/dist/components/ifx-alert.js +2 -2
  200. package/dist/components/ifx-badge.js +1 -1
  201. package/dist/components/ifx-basic-table.js +1 -1
  202. package/dist/components/ifx-breadcrumb-item-label.js +4 -4
  203. package/dist/components/ifx-breadcrumb-item-label.js.map +1 -1
  204. package/dist/components/ifx-breadcrumb-item.js +1 -1
  205. package/dist/components/ifx-breadcrumb.js +4 -4
  206. package/dist/components/ifx-breadcrumb.js.map +1 -1
  207. package/dist/components/ifx-button.js +1 -1
  208. package/dist/components/ifx-card-headline.js +1 -1
  209. package/dist/components/ifx-card-image.js +1 -1
  210. package/dist/components/ifx-card-links.js +1 -1
  211. package/dist/components/ifx-card-overline.js +1 -1
  212. package/dist/components/ifx-card-text.js +1 -1
  213. package/dist/components/ifx-card.js +1 -1
  214. package/dist/components/ifx-checkbox.js +1 -1
  215. package/dist/components/ifx-chip-item.js +1 -1
  216. package/dist/components/ifx-chip.js +1 -1
  217. package/dist/components/ifx-content-switcher-item.js +1 -1
  218. package/dist/components/ifx-content-switcher.js +1 -1
  219. package/dist/components/ifx-date-picker.js +2 -2
  220. package/dist/components/ifx-dropdown-header.js +1 -1
  221. package/dist/components/ifx-dropdown-item.js +2 -2
  222. package/dist/components/ifx-dropdown-menu.js +1 -1
  223. package/dist/components/ifx-dropdown-separator.js +1 -1
  224. package/dist/components/ifx-dropdown-trigger-button.js +3 -3
  225. package/dist/components/ifx-dropdown-trigger.js +1 -1
  226. package/dist/components/ifx-dropdown.js +1 -1
  227. package/dist/components/ifx-faq.js +4 -4
  228. package/dist/components/ifx-filter-accordion.js +3 -3
  229. package/dist/components/ifx-filter-bar.js +3 -3
  230. package/dist/components/ifx-filter-search.js +3 -3
  231. package/dist/components/ifx-filter-type-group.js +1 -1
  232. package/dist/components/ifx-footer-column.js +1 -1
  233. package/dist/components/ifx-footer.js +1 -1
  234. package/dist/components/ifx-icon-button.js +1 -1
  235. package/dist/components/ifx-icon.js +1 -1
  236. package/dist/components/ifx-icons-preview.js +4 -4
  237. package/dist/components/ifx-link.js +1 -1
  238. package/dist/components/ifx-list-entry.js +4 -4
  239. package/dist/components/ifx-list.js +3 -3
  240. package/dist/components/ifx-modal.js +11 -11
  241. package/dist/components/ifx-modal.js.map +1 -1
  242. package/dist/components/ifx-multiselect.js +1 -1
  243. package/dist/components/ifx-navbar-item.js +2 -2
  244. package/dist/components/ifx-navbar-profile.js +1 -1
  245. package/dist/components/ifx-navbar.js +6 -6
  246. package/dist/components/ifx-navbar.js.map +1 -1
  247. package/dist/components/ifx-notification.js +1 -1
  248. package/dist/components/ifx-number-indicator.js +1 -1
  249. package/dist/components/ifx-overview-table.js +4 -4
  250. package/dist/components/ifx-pagination.js +1 -1
  251. package/dist/components/ifx-progress-bar.js +1 -1
  252. package/dist/components/ifx-radio-button.js +1 -1
  253. package/dist/components/ifx-search-bar.js +8 -8
  254. package/dist/components/ifx-search-bar.js.map +1 -1
  255. package/dist/components/ifx-search-field.js +1 -1
  256. package/dist/components/ifx-segment.js +2 -2
  257. package/dist/components/ifx-segmented-control.js +2 -2
  258. package/dist/components/ifx-select.js +1 -1
  259. package/dist/components/ifx-set-filter.js +7 -7
  260. package/dist/components/ifx-sidebar-item.js +14 -16
  261. package/dist/components/ifx-sidebar-item.js.map +1 -1
  262. package/dist/components/ifx-sidebar-title.js +1 -1
  263. package/dist/components/ifx-sidebar.js +1 -1
  264. package/dist/components/ifx-slider.js +2 -2
  265. package/dist/components/ifx-spinner.js +1 -1
  266. package/dist/components/ifx-status.js +1 -1
  267. package/dist/components/ifx-step.js +2 -2
  268. package/dist/components/ifx-stepper.js +1 -1
  269. package/dist/components/ifx-switch.js +1 -1
  270. package/dist/components/ifx-tab.js +1 -1
  271. package/dist/components/ifx-table.js +33 -31
  272. package/dist/components/ifx-table.js.map +1 -1
  273. package/dist/components/ifx-tabs.js +8 -8
  274. package/dist/components/ifx-tabs.js.map +1 -1
  275. package/dist/components/ifx-tag.js +2 -2
  276. package/dist/components/ifx-text-field.js +1 -1
  277. package/dist/components/ifx-textarea.js +1 -1
  278. package/dist/components/ifx-tooltip.js +2 -2
  279. package/dist/components/index.js +1 -1
  280. package/dist/components/{p-9c024a54.js → p-0e357e6f.js} +3 -3
  281. package/dist/components/{p-9c024a54.js.map → p-0e357e6f.js.map} +1 -1
  282. package/dist/components/{p-f4d50678.js → p-1704ea58.js} +3 -3
  283. package/dist/components/{p-f4d50678.js.map → p-1704ea58.js.map} +1 -1
  284. package/dist/components/{p-6fd6d1a9.js → p-23308a28.js} +3 -3
  285. package/dist/components/{p-6fd6d1a9.js.map → p-23308a28.js.map} +1 -1
  286. package/dist/components/{p-ec9d64bf.js → p-2e231e98.js} +2 -2
  287. package/dist/components/{p-ec9d64bf.js.map → p-2e231e98.js.map} +1 -1
  288. package/dist/components/{p-1bb86196.js → p-3f813ba7.js} +3 -3
  289. package/dist/components/{p-1bb86196.js.map → p-3f813ba7.js.map} +1 -1
  290. package/dist/components/{p-3ee20ed5.js → p-434f667f.js} +2 -5
  291. package/dist/components/p-434f667f.js.map +1 -0
  292. package/dist/components/{p-232d5fcd.js → p-468371aa.js} +4 -4
  293. package/dist/components/{p-232d5fcd.js.map → p-468371aa.js.map} +1 -1
  294. package/dist/components/{p-e8836259.js → p-4b44b9bb.js} +2 -2
  295. package/dist/components/{p-e8836259.js.map → p-4b44b9bb.js.map} +1 -1
  296. package/dist/components/{p-d3904b2f.js → p-55f0c583.js} +9 -9
  297. package/dist/components/p-55f0c583.js.map +1 -0
  298. package/dist/components/{p-73a1df17.js → p-5e9d239f.js} +2 -2
  299. package/dist/components/{p-73a1df17.js.map → p-5e9d239f.js.map} +1 -1
  300. package/dist/components/{p-ff48962a.js → p-6d09225b.js} +10 -10
  301. package/dist/components/{p-ff48962a.js.map → p-6d09225b.js.map} +1 -1
  302. package/dist/components/{p-a0ee8035.js → p-810b4f96.js} +2 -2
  303. package/dist/components/{p-a0ee8035.js.map → p-810b4f96.js.map} +1 -1
  304. package/dist/components/{p-654ff7d8.js → p-8b04d988.js} +4 -4
  305. package/dist/components/{p-654ff7d8.js.map → p-8b04d988.js.map} +1 -1
  306. package/dist/components/{p-e74c8dfd.js → p-8e6edff2.js} +3 -3
  307. package/dist/components/{p-e74c8dfd.js.map → p-8e6edff2.js.map} +1 -1
  308. package/dist/components/{p-0fce434b.js → p-9c4bd9ce.js} +18 -18
  309. package/dist/components/p-9c4bd9ce.js.map +1 -0
  310. package/dist/components/{p-a7e5035e.js → p-c2dad511.js} +13 -16
  311. package/dist/components/p-c2dad511.js.map +1 -0
  312. package/dist/components/{p-5bc6d67d.js → p-c344fb60.js} +2 -2
  313. package/dist/components/{p-5bc6d67d.js.map → p-c344fb60.js.map} +1 -1
  314. package/dist/components/{p-e57d6c00.js → p-c5056a89.js} +8 -8
  315. package/dist/components/p-c5056a89.js.map +1 -0
  316. package/dist/components/{p-828bbb25.js → p-d2bece93.js} +2 -2
  317. package/dist/components/{p-828bbb25.js.map → p-d2bece93.js.map} +1 -1
  318. package/dist/esm/ifx-accordion_2.entry.js +8 -8
  319. package/dist/esm/ifx-accordion_2.entry.js.map +1 -1
  320. package/dist/esm/ifx-alert.entry.js +1 -1
  321. package/dist/esm/ifx-badge.entry.js +1 -1
  322. package/dist/esm/ifx-basic-table.entry.js +1 -1
  323. package/dist/esm/ifx-breadcrumb-item-label.entry.js +2 -2
  324. package/dist/esm/ifx-breadcrumb-item-label.entry.js.map +1 -1
  325. package/dist/esm/ifx-breadcrumb-item.entry.js +1 -1
  326. package/dist/esm/ifx-breadcrumb.entry.js +4 -4
  327. package/dist/esm/ifx-breadcrumb.entry.js.map +1 -1
  328. package/dist/esm/ifx-button.entry.js +1 -1
  329. package/dist/esm/ifx-card-headline.entry.js +1 -1
  330. package/dist/esm/ifx-card-image.entry.js +1 -1
  331. package/dist/esm/ifx-card-links.entry.js +1 -1
  332. package/dist/esm/ifx-card-overline.entry.js +1 -1
  333. package/dist/esm/ifx-card-text.entry.js +1 -1
  334. package/dist/esm/ifx-card.entry.js +1 -1
  335. package/dist/esm/ifx-checkbox.entry.js +1 -1
  336. package/dist/esm/ifx-chip_3.entry.js +26 -28
  337. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  338. package/dist/esm/ifx-content-switcher-item.entry.js +1 -1
  339. package/dist/esm/ifx-content-switcher.entry.js +1 -1
  340. package/dist/esm/ifx-date-picker.entry.js +1 -1
  341. package/dist/esm/ifx-dropdown-header.entry.js +1 -1
  342. package/dist/esm/ifx-dropdown-item.entry.js +1 -1
  343. package/dist/esm/ifx-dropdown-menu.entry.js +1 -1
  344. package/dist/esm/ifx-dropdown-separator.entry.js +1 -1
  345. package/dist/esm/ifx-dropdown-trigger-button.entry.js +1 -1
  346. package/dist/esm/ifx-dropdown-trigger.entry.js +1 -1
  347. package/dist/esm/ifx-dropdown.entry.js +1 -1
  348. package/dist/esm/ifx-faq.entry.js +1 -1
  349. package/dist/esm/ifx-filter-accordion.entry.js +1 -1
  350. package/dist/esm/ifx-filter-bar.entry.js +1 -1
  351. package/dist/esm/ifx-filter-search.entry.js +1 -1
  352. package/dist/esm/ifx-filter-type-group.entry.js +1 -1
  353. package/dist/esm/ifx-footer-column.entry.js +1 -1
  354. package/dist/esm/ifx-footer.entry.js +1 -1
  355. package/dist/esm/ifx-icon-button.entry.js +1 -1
  356. package/dist/esm/ifx-icon.entry.js +1 -1
  357. package/dist/esm/ifx-icons-preview.entry.js +1 -1
  358. package/dist/esm/ifx-link.entry.js +1 -1
  359. package/dist/esm/ifx-list-entry.entry.js +1 -1
  360. package/dist/esm/ifx-list.entry.js +1 -1
  361. package/dist/esm/ifx-modal.entry.js +9 -9
  362. package/dist/esm/ifx-modal.entry.js.map +1 -1
  363. package/dist/esm/ifx-multiselect_2.entry.js +5 -5
  364. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -1
  365. package/dist/esm/ifx-navbar-item.entry.js +1 -1
  366. package/dist/esm/ifx-navbar-profile.entry.js +1 -1
  367. package/dist/esm/ifx-navbar.entry.js +4 -4
  368. package/dist/esm/ifx-navbar.entry.js.map +1 -1
  369. package/dist/esm/ifx-notification.entry.js +1 -1
  370. package/dist/esm/ifx-number-indicator.entry.js +1 -1
  371. package/dist/esm/ifx-overview-table.entry.js +1 -1
  372. package/dist/esm/ifx-progress-bar.entry.js +1 -1
  373. package/dist/esm/ifx-radio-button.entry.js +1 -1
  374. package/dist/esm/ifx-search-bar.entry.js +6 -6
  375. package/dist/esm/ifx-search-bar.entry.js.map +1 -1
  376. package/dist/esm/ifx-search-field.entry.js +1 -1
  377. package/dist/esm/ifx-segment.entry.js +1 -1
  378. package/dist/esm/ifx-segmented-control.entry.js +1 -1
  379. package/dist/esm/ifx-select.entry.js +1 -1
  380. package/dist/esm/ifx-set-filter.entry.js +1 -1
  381. package/dist/esm/ifx-sidebar-item.entry.js +10 -11
  382. package/dist/esm/ifx-sidebar-item.entry.js.map +1 -1
  383. package/dist/esm/ifx-sidebar-title.entry.js +1 -1
  384. package/dist/esm/ifx-sidebar.entry.js +1 -1
  385. package/dist/esm/ifx-slider.entry.js +1 -1
  386. package/dist/esm/ifx-spinner.entry.js +1 -1
  387. package/dist/esm/ifx-status.entry.js +1 -1
  388. package/dist/esm/ifx-step.entry.js +1 -1
  389. package/dist/esm/ifx-stepper.entry.js +1 -1
  390. package/dist/esm/ifx-switch.entry.js +1 -1
  391. package/dist/esm/ifx-tab.entry.js +1 -1
  392. package/dist/esm/ifx-table.entry.js +23 -21
  393. package/dist/esm/ifx-table.entry.js.map +1 -1
  394. package/dist/esm/ifx-tabs.entry.js +7 -7
  395. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  396. package/dist/esm/ifx-tag.entry.js +1 -1
  397. package/dist/esm/ifx-textarea.entry.js +1 -1
  398. package/dist/esm/ifx-tooltip.entry.js +1 -1
  399. package/dist/esm/{index-f6e95f3d.js → index-835fed6c.js} +12 -6
  400. package/dist/esm/index-835fed6c.js.map +1 -0
  401. package/dist/esm/infineon-design-system-stencil.js +4 -4
  402. package/dist/esm/infineon-design-system-stencil.js.map +1 -1
  403. package/dist/esm/loader.js +3 -3
  404. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  405. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js.map +1 -1
  406. package/dist/infineon-design-system-stencil/p-014d2c5a.js +3 -0
  407. package/dist/infineon-design-system-stencil/p-014d2c5a.js.map +1 -0
  408. package/dist/infineon-design-system-stencil/p-095f26a2.entry.js +2 -0
  409. package/dist/infineon-design-system-stencil/p-095f26a2.entry.js.map +1 -0
  410. package/dist/infineon-design-system-stencil/{p-62c705f1.entry.js → p-0b9c7ab7.entry.js} +2 -2
  411. package/dist/infineon-design-system-stencil/{p-03f5d7d6.entry.js → p-0cbb7404.entry.js} +2 -2
  412. package/dist/infineon-design-system-stencil/p-114f04b4.entry.js +2 -0
  413. package/dist/infineon-design-system-stencil/p-114f04b4.entry.js.map +1 -0
  414. package/dist/infineon-design-system-stencil/{p-258c4e35.entry.js → p-1293841a.entry.js} +2 -2
  415. package/dist/infineon-design-system-stencil/p-1293841a.entry.js.map +1 -0
  416. package/dist/infineon-design-system-stencil/{p-96e3c31e.entry.js → p-13951b60.entry.js} +2 -2
  417. package/dist/infineon-design-system-stencil/{p-4349f994.entry.js → p-16023b8a.entry.js} +2 -2
  418. package/dist/infineon-design-system-stencil/{p-0fdd8cca.entry.js → p-189d4d1f.entry.js} +2 -2
  419. package/dist/infineon-design-system-stencil/{p-12db6350.entry.js → p-1f17cbfe.entry.js} +2 -2
  420. package/dist/infineon-design-system-stencil/{p-f20951d0.entry.js → p-2ab2c5cf.entry.js} +2 -2
  421. package/dist/infineon-design-system-stencil/{p-d8cc865a.entry.js → p-2cd1bc96.entry.js} +2 -2
  422. package/dist/infineon-design-system-stencil/{p-82f9da03.entry.js → p-317304e2.entry.js} +2 -2
  423. package/dist/infineon-design-system-stencil/{p-814da9fd.entry.js → p-332a86b5.entry.js} +2 -2
  424. package/dist/infineon-design-system-stencil/{p-4bf95d5b.entry.js → p-3479b38d.entry.js} +2 -2
  425. package/dist/infineon-design-system-stencil/{p-01a1f6d0.entry.js → p-356db73e.entry.js} +2 -2
  426. package/dist/infineon-design-system-stencil/{p-3384179d.entry.js → p-35ee2105.entry.js} +2 -2
  427. package/dist/infineon-design-system-stencil/{p-c7607cbd.entry.js → p-364bcc43.entry.js} +2 -2
  428. package/dist/infineon-design-system-stencil/{p-7a0b2fd1.entry.js → p-3c0396d6.entry.js} +2 -2
  429. package/dist/infineon-design-system-stencil/{p-3af201db.entry.js → p-3cf45ded.entry.js} +2 -2
  430. package/dist/infineon-design-system-stencil/p-408c049a.entry.js +2 -0
  431. package/dist/infineon-design-system-stencil/p-408c049a.entry.js.map +1 -0
  432. package/dist/infineon-design-system-stencil/{p-4faad7d7.entry.js → p-40f16247.entry.js} +2 -2
  433. package/dist/infineon-design-system-stencil/{p-c85d7577.entry.js → p-480d7667.entry.js} +2 -2
  434. package/dist/infineon-design-system-stencil/{p-8df0dd12.entry.js → p-4c2b5642.entry.js} +2 -2
  435. package/dist/infineon-design-system-stencil/{p-1fad8ea5.entry.js → p-4d315bca.entry.js} +2 -2
  436. package/dist/infineon-design-system-stencil/{p-f42bc9c8.entry.js → p-4e07c00d.entry.js} +2 -2
  437. package/dist/infineon-design-system-stencil/{p-c2ff66ea.entry.js → p-54911d95.entry.js} +2 -2
  438. package/dist/infineon-design-system-stencil/{p-672bcd0b.entry.js → p-56e54271.entry.js} +2 -2
  439. package/dist/infineon-design-system-stencil/{p-1ad03102.entry.js → p-59d0f2d9.entry.js} +2 -2
  440. package/dist/infineon-design-system-stencil/{p-b3882dc0.entry.js → p-5e954f0b.entry.js} +2 -2
  441. package/dist/infineon-design-system-stencil/{p-0b79cb38.entry.js → p-6b61e09e.entry.js} +2 -2
  442. package/dist/infineon-design-system-stencil/{p-eeccb158.entry.js → p-6d9c1cd0.entry.js} +2 -2
  443. package/dist/infineon-design-system-stencil/{p-347a1e85.entry.js → p-7415f5bf.entry.js} +2 -2
  444. package/dist/infineon-design-system-stencil/{p-39fb5fb9.entry.js → p-75556b75.entry.js} +2 -2
  445. package/dist/infineon-design-system-stencil/{p-234d0bed.entry.js → p-8252f9c7.entry.js} +2 -2
  446. package/dist/infineon-design-system-stencil/{p-88bd6a1e.entry.js → p-8640d834.entry.js} +2 -2
  447. package/dist/infineon-design-system-stencil/{p-cb3a70ad.entry.js → p-8a349fb4.entry.js} +2 -2
  448. package/dist/infineon-design-system-stencil/{p-53e75622.entry.js → p-8cf5d054.entry.js} +2 -2
  449. package/dist/infineon-design-system-stencil/{p-934704d9.entry.js → p-8ee88c7e.entry.js} +2 -2
  450. package/dist/infineon-design-system-stencil/{p-3f5c3424.entry.js → p-8f2cc008.entry.js} +2 -2
  451. package/dist/infineon-design-system-stencil/{p-b37f692b.entry.js → p-8fc46f6c.entry.js} +2 -2
  452. package/dist/infineon-design-system-stencil/{p-e2ad853d.entry.js → p-9297efbe.entry.js} +2 -2
  453. package/dist/infineon-design-system-stencil/{p-1f004047.entry.js → p-9435833d.entry.js} +2 -2
  454. package/dist/infineon-design-system-stencil/p-9435833d.entry.js.map +1 -0
  455. package/dist/infineon-design-system-stencil/{p-1f0bc888.entry.js → p-961b12af.entry.js} +2 -2
  456. package/dist/infineon-design-system-stencil/p-97854fec.entry.js +2 -0
  457. package/dist/infineon-design-system-stencil/p-97854fec.entry.js.map +1 -0
  458. package/dist/infineon-design-system-stencil/{p-aa5f89b6.entry.js → p-a4d2a1b0.entry.js} +2 -2
  459. package/dist/infineon-design-system-stencil/{p-407c4329.entry.js → p-a722dd38.entry.js} +2 -2
  460. package/dist/infineon-design-system-stencil/{p-a2f7459e.entry.js → p-a74a35d2.entry.js} +2 -2
  461. package/dist/infineon-design-system-stencil/p-ac4825f2.entry.js +2 -0
  462. package/dist/infineon-design-system-stencil/{p-500bc0ed.entry.js.map → p-ac4825f2.entry.js.map} +1 -1
  463. package/dist/infineon-design-system-stencil/{p-6c18926e.entry.js → p-afeba5e9.entry.js} +2 -2
  464. package/dist/infineon-design-system-stencil/p-afeba5e9.entry.js.map +1 -0
  465. package/dist/infineon-design-system-stencil/p-b09a9f07.entry.js +2 -0
  466. package/dist/infineon-design-system-stencil/p-b09a9f07.entry.js.map +1 -0
  467. package/dist/infineon-design-system-stencil/{p-5a3c5cce.entry.js → p-b372fe7d.entry.js} +2 -2
  468. package/dist/infineon-design-system-stencil/p-b4ed1b8b.entry.js +2 -0
  469. package/dist/infineon-design-system-stencil/{p-fb455026.entry.js.map → p-b4ed1b8b.entry.js.map} +1 -1
  470. package/dist/infineon-design-system-stencil/p-b642a0c9.entry.js +2 -0
  471. package/dist/infineon-design-system-stencil/{p-598ec153.entry.js → p-b78de976.entry.js} +2 -2
  472. package/dist/infineon-design-system-stencil/{p-c646ffcc.entry.js → p-c0698c6a.entry.js} +2 -2
  473. package/dist/infineon-design-system-stencil/{p-2f12adbc.entry.js → p-c2ed0a00.entry.js} +2 -2
  474. package/dist/infineon-design-system-stencil/{p-21c07ef9.entry.js → p-cee407bb.entry.js} +2 -2
  475. package/dist/infineon-design-system-stencil/{p-d2630254.entry.js → p-d0b64bca.entry.js} +2 -2
  476. package/dist/infineon-design-system-stencil/{p-7cc1beed.entry.js → p-d2dbc80b.entry.js} +2 -2
  477. package/dist/infineon-design-system-stencil/p-d2dbc80b.entry.js.map +1 -0
  478. package/dist/infineon-design-system-stencil/p-d3051bbf.entry.js +2 -0
  479. package/dist/infineon-design-system-stencil/p-d3051bbf.entry.js.map +1 -0
  480. package/dist/infineon-design-system-stencil/{p-b120a552.entry.js → p-d630716a.entry.js} +2 -2
  481. package/dist/infineon-design-system-stencil/{p-d57b5e31.entry.js → p-e06dc41b.entry.js} +2 -2
  482. package/dist/infineon-design-system-stencil/{p-33f5c7b8.entry.js → p-e2d80669.entry.js} +2 -2
  483. package/dist/infineon-design-system-stencil/{p-85468723.entry.js → p-e6212e02.entry.js} +2 -2
  484. package/dist/infineon-design-system-stencil/{p-3b02b076.entry.js → p-ea180cce.entry.js} +2 -2
  485. package/dist/infineon-design-system-stencil/p-ef18e376.entry.js +2 -0
  486. package/dist/infineon-design-system-stencil/{p-22496889.entry.js.map → p-ef18e376.entry.js.map} +1 -1
  487. package/dist/infineon-design-system-stencil/p-efde6e57.entry.js +2 -0
  488. package/dist/infineon-design-system-stencil/p-f0067aa9.entry.js +2 -0
  489. package/dist/infineon-design-system-stencil/{p-392f1655.entry.js → p-f86f7020.entry.js} +2 -2
  490. package/dist/infineon-design-system-stencil/{p-f9bf9346.entry.js → p-f9ca49f1.entry.js} +2 -2
  491. package/dist/types/components/accordion/accordion.stories.d.ts +67 -1
  492. package/dist/types/components/accordion/accordionItem.d.ts +3 -3
  493. package/dist/types/components/alert/alert.stories.d.ts +38 -11
  494. package/dist/types/components/badge/badge.stories.d.ts +23 -3
  495. package/dist/types/components/breadcrumb/breadcrumb-item-label.d.ts +1 -1
  496. package/dist/types/components/breadcrumb/breadcrumb.stories.d.ts +83 -1
  497. package/dist/types/components/button/button.stories.d.ts +92 -16
  498. package/dist/types/components/card/card.stories.d.ts +95 -1
  499. package/dist/types/components/checkbox/checkbox.stories.d.ts +65 -10
  500. package/dist/types/components/chip/chip-item/chip-item.d.ts +1 -1
  501. package/dist/types/components/chip/chip.d.ts +1 -1
  502. package/dist/types/components/chip/chip.stories.d.ts +11 -4
  503. package/dist/types/components/chip/interfaces.d.ts +1 -1
  504. package/dist/types/components/content-switcher/content-switcher.stories.d.ts +66 -0
  505. package/dist/types/components/date-picker/date-picker.stories.d.ts +89 -2
  506. package/dist/types/components/dropdown/dropdown.stories.d.ts +90 -33
  507. package/dist/types/components/footer/footer.stories.d.ts +26 -0
  508. package/dist/types/components/icon/infineonIconStencil.stories.d.ts +5 -0
  509. package/dist/types/components/icon-button/icon-button.stories.d.ts +56 -8
  510. package/dist/types/components/link/link.stories.d.ts +49 -6
  511. package/dist/types/components/modal/modal.d.ts +2 -2
  512. package/dist/types/components/modal/modal.stories.d.ts +77 -3
  513. package/dist/types/components/navigation/navbar/navbar.stories.d.ts +222 -6
  514. package/dist/types/components/navigation/sidebar/sidebar-item.d.ts +2 -3
  515. package/dist/types/components/navigation/sidebar/sidebar.stories.d.ts +161 -7
  516. package/dist/types/components/notification/notification.stories.d.ts +46 -2
  517. package/dist/types/components/number-indicator/number-indicator.stories.d.ts +19 -0
  518. package/dist/types/components/pagination/pagination.d.ts +1 -4
  519. package/dist/types/components/pagination/pagination.stories.d.ts +12 -8
  520. package/dist/types/components/progress-bar/progress-bar.stories.d.ts +25 -4
  521. package/dist/types/components/radio-button/radio-button.stories.d.ts +59 -8
  522. package/dist/types/components/search-bar/search-bar.d.ts +1 -1
  523. package/dist/types/components/search-bar/search-bar.stories.d.ts +60 -3
  524. package/dist/types/components/search-field/search-field.stories.d.ts +45 -6
  525. package/dist/types/components/segmented-control/segmented-control.stories.d.ts +0 -3
  526. package/dist/types/components/select/multi-select/multiselect.d.ts +1 -1
  527. package/dist/types/components/select/multi-select/multiselect.stories.d.ts +125 -0
  528. package/dist/types/components/select/single-select/select.stories.d.ts +67 -24
  529. package/dist/types/components/slider/slider.stories.d.ts +110 -0
  530. package/dist/types/components/spinner/spinner.stories.d.ts +32 -0
  531. package/dist/types/components/status/status.stories.d.ts +24 -2
  532. package/dist/types/components/stepper/stepper.stories.d.ts +30 -6
  533. package/dist/types/components/switch/switch.stories.d.ts +47 -1
  534. package/dist/types/components/table-advanced-version/table.stories.d.ts +50 -11
  535. package/dist/types/components/table-basic-version/table.stories.d.ts +21 -1
  536. package/dist/types/components/tabs/tabs.d.ts +1 -1
  537. package/dist/types/components/tabs/tabs.stories.d.ts +88 -9
  538. package/dist/types/components/tag/tag.stories.d.ts +20 -0
  539. package/dist/types/components/text-field/text-field.stories.d.ts +106 -10
  540. package/dist/types/components/tooltip/tooltip.stories.d.ts +41 -6
  541. package/dist/types/components.d.ts +20 -28
  542. package/package.json +3 -2
  543. package/dist/cjs/index-68ed35ac.js.map +0 -1
  544. package/dist/components/p-0fce434b.js.map +0 -1
  545. package/dist/components/p-3ee20ed5.js.map +0 -1
  546. package/dist/components/p-a7e5035e.js.map +0 -1
  547. package/dist/components/p-d3904b2f.js.map +0 -1
  548. package/dist/components/p-e57d6c00.js.map +0 -1
  549. package/dist/esm/index-f6e95f3d.js.map +0 -1
  550. package/dist/infineon-design-system-stencil/p-1f004047.entry.js.map +0 -1
  551. package/dist/infineon-design-system-stencil/p-22496889.entry.js +0 -2
  552. package/dist/infineon-design-system-stencil/p-258c4e35.entry.js.map +0 -1
  553. package/dist/infineon-design-system-stencil/p-500bc0ed.entry.js +0 -2
  554. package/dist/infineon-design-system-stencil/p-5acdecf6.entry.js +0 -2
  555. package/dist/infineon-design-system-stencil/p-5acdecf6.entry.js.map +0 -1
  556. package/dist/infineon-design-system-stencil/p-6c18926e.entry.js.map +0 -1
  557. package/dist/infineon-design-system-stencil/p-6c89883f.entry.js +0 -2
  558. package/dist/infineon-design-system-stencil/p-77a8fc5e.entry.js +0 -2
  559. package/dist/infineon-design-system-stencil/p-77a8fc5e.entry.js.map +0 -1
  560. package/dist/infineon-design-system-stencil/p-7cc1beed.entry.js.map +0 -1
  561. package/dist/infineon-design-system-stencil/p-98c50956.entry.js +0 -2
  562. package/dist/infineon-design-system-stencil/p-98c50956.entry.js.map +0 -1
  563. package/dist/infineon-design-system-stencil/p-abba423a.entry.js +0 -2
  564. package/dist/infineon-design-system-stencil/p-c6ff49d7.entry.js +0 -2
  565. package/dist/infineon-design-system-stencil/p-c6ff49d7.entry.js.map +0 -1
  566. package/dist/infineon-design-system-stencil/p-d61ab729.entry.js +0 -2
  567. package/dist/infineon-design-system-stencil/p-d61ab729.entry.js.map +0 -1
  568. package/dist/infineon-design-system-stencil/p-e07ca773.entry.js +0 -2
  569. package/dist/infineon-design-system-stencil/p-e244bae4.js +0 -3
  570. package/dist/infineon-design-system-stencil/p-e244bae4.js.map +0 -1
  571. package/dist/infineon-design-system-stencil/p-f63ce1bc.entry.js +0 -2
  572. package/dist/infineon-design-system-stencil/p-f63ce1bc.entry.js.map +0 -1
  573. package/dist/infineon-design-system-stencil/p-fb455026.entry.js +0 -2
  574. /package/dist/infineon-design-system-stencil/{p-62c705f1.entry.js.map → p-0b9c7ab7.entry.js.map} +0 -0
  575. /package/dist/infineon-design-system-stencil/{p-03f5d7d6.entry.js.map → p-0cbb7404.entry.js.map} +0 -0
  576. /package/dist/infineon-design-system-stencil/{p-96e3c31e.entry.js.map → p-13951b60.entry.js.map} +0 -0
  577. /package/dist/infineon-design-system-stencil/{p-4349f994.entry.js.map → p-16023b8a.entry.js.map} +0 -0
  578. /package/dist/infineon-design-system-stencil/{p-0fdd8cca.entry.js.map → p-189d4d1f.entry.js.map} +0 -0
  579. /package/dist/infineon-design-system-stencil/{p-12db6350.entry.js.map → p-1f17cbfe.entry.js.map} +0 -0
  580. /package/dist/infineon-design-system-stencil/{p-f20951d0.entry.js.map → p-2ab2c5cf.entry.js.map} +0 -0
  581. /package/dist/infineon-design-system-stencil/{p-d8cc865a.entry.js.map → p-2cd1bc96.entry.js.map} +0 -0
  582. /package/dist/infineon-design-system-stencil/{p-82f9da03.entry.js.map → p-317304e2.entry.js.map} +0 -0
  583. /package/dist/infineon-design-system-stencil/{p-814da9fd.entry.js.map → p-332a86b5.entry.js.map} +0 -0
  584. /package/dist/infineon-design-system-stencil/{p-4bf95d5b.entry.js.map → p-3479b38d.entry.js.map} +0 -0
  585. /package/dist/infineon-design-system-stencil/{p-01a1f6d0.entry.js.map → p-356db73e.entry.js.map} +0 -0
  586. /package/dist/infineon-design-system-stencil/{p-3384179d.entry.js.map → p-35ee2105.entry.js.map} +0 -0
  587. /package/dist/infineon-design-system-stencil/{p-c7607cbd.entry.js.map → p-364bcc43.entry.js.map} +0 -0
  588. /package/dist/infineon-design-system-stencil/{p-7a0b2fd1.entry.js.map → p-3c0396d6.entry.js.map} +0 -0
  589. /package/dist/infineon-design-system-stencil/{p-3af201db.entry.js.map → p-3cf45ded.entry.js.map} +0 -0
  590. /package/dist/infineon-design-system-stencil/{p-4faad7d7.entry.js.map → p-40f16247.entry.js.map} +0 -0
  591. /package/dist/infineon-design-system-stencil/{p-c85d7577.entry.js.map → p-480d7667.entry.js.map} +0 -0
  592. /package/dist/infineon-design-system-stencil/{p-8df0dd12.entry.js.map → p-4c2b5642.entry.js.map} +0 -0
  593. /package/dist/infineon-design-system-stencil/{p-1fad8ea5.entry.js.map → p-4d315bca.entry.js.map} +0 -0
  594. /package/dist/infineon-design-system-stencil/{p-f42bc9c8.entry.js.map → p-4e07c00d.entry.js.map} +0 -0
  595. /package/dist/infineon-design-system-stencil/{p-c2ff66ea.entry.js.map → p-54911d95.entry.js.map} +0 -0
  596. /package/dist/infineon-design-system-stencil/{p-672bcd0b.entry.js.map → p-56e54271.entry.js.map} +0 -0
  597. /package/dist/infineon-design-system-stencil/{p-1ad03102.entry.js.map → p-59d0f2d9.entry.js.map} +0 -0
  598. /package/dist/infineon-design-system-stencil/{p-b3882dc0.entry.js.map → p-5e954f0b.entry.js.map} +0 -0
  599. /package/dist/infineon-design-system-stencil/{p-0b79cb38.entry.js.map → p-6b61e09e.entry.js.map} +0 -0
  600. /package/dist/infineon-design-system-stencil/{p-eeccb158.entry.js.map → p-6d9c1cd0.entry.js.map} +0 -0
  601. /package/dist/infineon-design-system-stencil/{p-347a1e85.entry.js.map → p-7415f5bf.entry.js.map} +0 -0
  602. /package/dist/infineon-design-system-stencil/{p-39fb5fb9.entry.js.map → p-75556b75.entry.js.map} +0 -0
  603. /package/dist/infineon-design-system-stencil/{p-234d0bed.entry.js.map → p-8252f9c7.entry.js.map} +0 -0
  604. /package/dist/infineon-design-system-stencil/{p-88bd6a1e.entry.js.map → p-8640d834.entry.js.map} +0 -0
  605. /package/dist/infineon-design-system-stencil/{p-cb3a70ad.entry.js.map → p-8a349fb4.entry.js.map} +0 -0
  606. /package/dist/infineon-design-system-stencil/{p-53e75622.entry.js.map → p-8cf5d054.entry.js.map} +0 -0
  607. /package/dist/infineon-design-system-stencil/{p-934704d9.entry.js.map → p-8ee88c7e.entry.js.map} +0 -0
  608. /package/dist/infineon-design-system-stencil/{p-3f5c3424.entry.js.map → p-8f2cc008.entry.js.map} +0 -0
  609. /package/dist/infineon-design-system-stencil/{p-b37f692b.entry.js.map → p-8fc46f6c.entry.js.map} +0 -0
  610. /package/dist/infineon-design-system-stencil/{p-e2ad853d.entry.js.map → p-9297efbe.entry.js.map} +0 -0
  611. /package/dist/infineon-design-system-stencil/{p-1f0bc888.entry.js.map → p-961b12af.entry.js.map} +0 -0
  612. /package/dist/infineon-design-system-stencil/{p-aa5f89b6.entry.js.map → p-a4d2a1b0.entry.js.map} +0 -0
  613. /package/dist/infineon-design-system-stencil/{p-407c4329.entry.js.map → p-a722dd38.entry.js.map} +0 -0
  614. /package/dist/infineon-design-system-stencil/{p-a2f7459e.entry.js.map → p-a74a35d2.entry.js.map} +0 -0
  615. /package/dist/infineon-design-system-stencil/{p-5a3c5cce.entry.js.map → p-b372fe7d.entry.js.map} +0 -0
  616. /package/dist/infineon-design-system-stencil/{p-abba423a.entry.js.map → p-b642a0c9.entry.js.map} +0 -0
  617. /package/dist/infineon-design-system-stencil/{p-598ec153.entry.js.map → p-b78de976.entry.js.map} +0 -0
  618. /package/dist/infineon-design-system-stencil/{p-c646ffcc.entry.js.map → p-c0698c6a.entry.js.map} +0 -0
  619. /package/dist/infineon-design-system-stencil/{p-2f12adbc.entry.js.map → p-c2ed0a00.entry.js.map} +0 -0
  620. /package/dist/infineon-design-system-stencil/{p-21c07ef9.entry.js.map → p-cee407bb.entry.js.map} +0 -0
  621. /package/dist/infineon-design-system-stencil/{p-d2630254.entry.js.map → p-d0b64bca.entry.js.map} +0 -0
  622. /package/dist/infineon-design-system-stencil/{p-b120a552.entry.js.map → p-d630716a.entry.js.map} +0 -0
  623. /package/dist/infineon-design-system-stencil/{p-d57b5e31.entry.js.map → p-e06dc41b.entry.js.map} +0 -0
  624. /package/dist/infineon-design-system-stencil/{p-33f5c7b8.entry.js.map → p-e2d80669.entry.js.map} +0 -0
  625. /package/dist/infineon-design-system-stencil/{p-85468723.entry.js.map → p-e6212e02.entry.js.map} +0 -0
  626. /package/dist/infineon-design-system-stencil/{p-3b02b076.entry.js.map → p-ea180cce.entry.js.map} +0 -0
  627. /package/dist/infineon-design-system-stencil/{p-6c89883f.entry.js.map → p-efde6e57.entry.js.map} +0 -0
  628. /package/dist/infineon-design-system-stencil/{p-e07ca773.entry.js.map → p-f0067aa9.entry.js.map} +0 -0
  629. /package/dist/infineon-design-system-stencil/{p-392f1655.entry.js.map → p-f86f7020.entry.js.map} +0 -0
  630. /package/dist/infineon-design-system-stencil/{p-f9bf9346.entry.js.map → p-f9ca49f1.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"switch.stories.js","sourceRoot":"","sources":["../../../src/components/switch/switch.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,eAAe;IACb,KAAK,EAAE,mBAAmB;IAC1B,IAAI,EAAE,CAAC,UAAU,CAAC;IAElB,IAAI,EAAE;QACJ,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,QAAQ;QACf,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;KAChB;IACD,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,WAAW,EAAE,0EAA0E;SACxF;QACD,KAAK,EAAE;YACL,WAAW,EAAE,iEAAiE;SAC/E;QACD,SAAS,EAAE;YACT,WAAW,EAAE,gCAAgC;YAC7C,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,iLAAiL;iBACpL;aACF;YACD,MAAM,EAAE,WAAW;SACpB;KACF;CACF,CAAC;AAEF,MAAM,eAAe,GAAG,IAAI,CAAC,EAAE;IAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAyB,CAAC;IAE7E,qBAAqB;IACrB,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAE1C,yBAAyB;IACzB,8DAA8D;IAC9D,gEAAgE;IAChE,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,KAAY,EAAE,EAAE;QACrD,MAAM,WAAW,GAAG,KAAoB,CAAC;QACzC,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC;QAEpC,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;QAEjC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxD,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAEjC,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC","sourcesContent":["import { action } from '@storybook/addon-actions';\n\nexport default {\n title: 'Components/Switch',\n tags: ['autodocs'],\n\n args: {\n checked: false,\n label: 'Switch',\n name: 'switch',\n value: 'switch',\n },\n argTypes: {\n name: {\n description: 'Name of the element, that is used as reference when a form is submitted.'\n },\n value: {\n description: 'The value that gets submitted, when the radio button is checked'\n },\n ifxChange: {\n description: 'Custom event emitted on change',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxChange={handleChange}\\nVue:@ifxChange=\"handleChange\"\\nAngular:(ifxChange)=\"handleChange()\"\\nVanillaJs:.addEventListener(\"ifxChange\", (event) => {//handle change});',\n },\n },\n action: 'ifxChange',\n },\n },\n};\n\nconst DefaultTemplate = args => {\n const element = document.createElement('ifx-switch') as HTMLIfxSwitchElement;\n\n // Set the attributes\n element.setAttribute('checked', args.checked);\n element.setAttribute('name', args.name);\n element.setAttribute('value', args.value);\n\n // Add the event listener\n // element.addEventListener('ifxChange', action('ifxChange'));\n // Inside your story, add an event listener for the custom event\n element.addEventListener('ifxChange', (event: Event) => {\n const customEvent = event as CustomEvent;\n const newValue = customEvent.detail;\n\n action('ifxChange')(customEvent);\n\n args.value = newValue;\n });\n\n const slotContent = document.createTextNode(args.label);\n element.appendChild(slotContent);\n\n return element;\n};\n\nexport const Default = DefaultTemplate.bind({});\n"]}
1
+ {"version":3,"file":"switch.stories.js","sourceRoot":"","sources":["../../../src/components/switch/switch.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\n\nexport default {\n title: 'Components/Switch',\n tags: ['autodocs'],\n\n args: {\n label: 'Switch',\n checked: false,\n name: 'switch',\n value: 'switch',\n disabled: false,\n },\n argTypes: {\n label: {\n name: 'Label of Switch',\n description: 'Set the label of *<ifx-switch>*.',\n table: {\n category: 'story controls',\n }\n },\n name: {\n description: 'Name of the element, that is used as reference when a form is submitted.',\n table: {\n category: 'ifx-switch props',\n type: {\n summary: 'string'\n }\n }\n },\n checked: {\n name: 'checked',\n description: 'Set the checked state of the switch.',\n table: {\n category: 'ifx-switch props',\n defaultValue: {\n summary: 'false'\n },\n type: {\n summary: 'boolean'\n }\n }\n },\n value: {\n description: 'The value that gets submitted, when the radio button is checked.',\n table: {\n category: 'ifx-switch props',\n type: {\n summary: 'string'\n }\n }\n },\n disabled: {\n description: 'The value that gets submitted, when the radio button is checked.',\n table: {\n category: 'ifx-switch props',\n defaultValue: {\n summary: 'false'\n },\n type: {\n summary: 'boolean'\n }\n }\n },\n ifxChange: {\n description: 'Custom event emitted on change.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxChange={handleChange}\\nVue:@ifxChange=\"handleChange\"\\nAngular:(ifxChange)=\"handleChange()\"\\nVanillaJs:.addEventListener(\"ifxChange\", (event) => {//handle change});',\n },\n },\n action: 'ifxChange',\n },\n },\n\n\n\n}\n\nconst DefaultTemplate = args => {\n const element = document.createElement('ifx-switch') as HTMLIfxSwitchElement;\n\n // Set the attributes\n element.setAttribute('checked', args.checked);\n element.setAttribute('name', args.name);\n element.setAttribute('value', args.value);\n element.setAttribute('disabled', args.disabled);\n\n // Add the event listener\n // element.addEventListener('ifxChange', action('ifxChange'));\n // Inside your story, add an event listener for the custom event\n element.addEventListener('ifxChange', (event: Event) => {\n const customEvent = event as CustomEvent;\n const newValue = customEvent.detail;\n\n action('ifxChange')(customEvent);\n\n args.value = newValue;\n });\n\n const slotContent = document.createTextNode(args.label);\n element.appendChild(slotContent);\n\n return element;\n};\n\nexport const Default = DefaultTemplate.bind({});\n"]}
@@ -23,25 +23,27 @@ export class Table {
23
23
  this.originalRowData = [];
24
24
  }
25
25
  handleChipChange(event) {
26
- const { name, currentSelection } = event.detail;
27
- // Clone the current filters state
28
- const updatedFilters = Object.assign({}, this.currentFilters);
29
- if (currentSelection.length === 0) {
30
- // If there are no selections for this filter, delete the filter
31
- delete updatedFilters[name];
32
- // Emit event with specific filter name
33
- const customEvent = new CustomEvent('ifxUpdateSidebarFilter', { detail: { filterName: name }, bubbles: true, composed: true });
34
- this.host.dispatchEvent(customEvent);
35
- }
36
- else {
37
- // Otherwise, update the filter values with the current selection
38
- updatedFilters[name].filterValues = currentSelection.map(selection => selection.value);
26
+ const { name, currentSelection, previousSelection } = event.detail;
27
+ if (currentSelection && previousSelection) {
28
+ // Clone the current filters state
29
+ const updatedFilters = Object.assign({}, this.currentFilters);
30
+ if (currentSelection.length === 0) {
31
+ // If there are no selections for this filter, delete the filter
32
+ delete updatedFilters[name];
33
+ // Emit event with specific filter name
34
+ const customEvent = new CustomEvent('ifxUpdateSidebarFilter', { detail: { filterName: name }, bubbles: true, composed: true });
35
+ this.host.dispatchEvent(customEvent);
36
+ }
37
+ else {
38
+ // Otherwise, update the filter values with the current selection
39
+ updatedFilters[name].filterValues = currentSelection.map(selection => selection.value);
40
+ }
41
+ // Update the component's filters
42
+ this.currentFilters = updatedFilters;
43
+ // Ensure table data is updated
44
+ this.allRowData = this.applyAllFilters(this.originalRowData, this.currentFilters);
45
+ this.updateTableView();
39
46
  }
40
- // Update the component's filters
41
- this.currentFilters = updatedFilters;
42
- // Ensure table data is updated
43
- this.allRowData = this.applyAllFilters(this.originalRowData, this.currentFilters);
44
- this.updateTableView();
45
47
  }
46
48
  onButtonRendererOptionsChanged() {
47
49
  this.colData = this.getColData(); // Re-fetch column data to apply new renderer options
@@ -352,12 +354,12 @@ export class Table {
352
354
  };
353
355
  }
354
356
  const filterClass = this.filterOrientation === 'topbar' ? 'topbar-layout' : 'sidebar-layout';
355
- return (h(Host, { key: '866933547c48fdc6615cd700a2073adf9dfe1943' }, h("div", { key: 'abdee44dd0cb84dda7163cfbd65c87f240ca7d02', class: "table-container" }, this.filterOrientation === 'sidebar' && (h("div", { key: '6703d9e28ef03cae1199c6c2cc10dc3eacb2926f', class: "sidebar-btn" }, h("ifx-button", { key: 'c40a329d11e030ecd7a038c85439d2fb41ec84e5', type: "button", disabled: false, variant: "secondary", size: "m", target: "_blank", theme: "default", "full-width": "false", onClick: () => this.toggleSidebarFilters() }, h("ifx-icon", { key: '67a84d0bf6605a6daa7874165b60f2169605be01', icon: "cross-12" }), this.showSidebarFilters ? 'Hide Filters' : 'Show Filters'))), h("div", { key: 'a2b9c61d05383120ab07b9be2880d8dc5bdb95d6', class: filterClass }, this.filterOrientation === 'sidebar' && this.showSidebarFilters && (h("div", { key: 'f663fc4946bd3a1f56badd2dbc964604b8d9717e', class: "sidebar-container" }, h("div", { key: '46fa9664961fddf0e7c975ee6e65acab37f15b56', class: "filters-title-container" }, h("span", { key: '76bf128d1f414222f3de6a53ae3b5bd46f6bed0a', class: "filters-title" }, "Filters")), h("div", { key: '9ec606f6559ad54541ea3746e5a5d8e7d9d192c2', class: "set-filter-wrapper-sidebar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (h("slot", { key: 'f0b581357f22bbb680310cc33f8dbf2f7eae184c', name: "sidebar-filter" }))))), this.filterOrientation !== 'none' && this.filterOrientation !== 'sidebar' && (h("div", { key: '962507125d6761b9387d2119022a1d15e075ea1a', class: "set-filter-wrapper-topbar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (h("slot", { key: '06fe1a863f572c50cd6742d0f7ef06a6a230026b', name: "topbar-filter" })))), h("div", { key: 'b8e56580cb0c63e65d001e262515e238db80ff54', class: "table-pagination-wrapper" }, h("div", { key: 'da467380dc91baf8bc3a54080a1b3d0506030995', class: "filter-chips" }, this.filterOrientation !== 'none' && this.filterOrientation !== 'topbar' && this.showSidebarFilters && (Object.keys(this.currentFilters).map(name => {
357
+ return (h(Host, { key: '0f5161792669d260a795fc5b5af0a2d62b25e015' }, h("div", { key: '1b047ffba32d2b1161a9e4827ea0ba35e1039ea2', class: "table-container" }, this.filterOrientation === 'sidebar' && (h("div", { key: '602654f9a4a1d0bf7d085e6cbc73db36ac8a8936', class: "sidebar-btn" }, h("ifx-button", { key: 'ec54a9a7cc3fc375ce3be6ac2331d7a050dc3e77', type: "button", disabled: false, variant: "secondary", size: "m", target: "_blank", theme: "default", "full-width": "false", onClick: () => this.toggleSidebarFilters() }, h("ifx-icon", { key: 'ef1be17736c4f54345172941d4e0c06dacb2d45b', icon: "cross-12" }), this.showSidebarFilters ? 'Hide Filters' : 'Show Filters'))), h("div", { key: '53e2c21c149cfff4df87592d6b3dc63f640767af', class: filterClass }, this.filterOrientation === 'sidebar' && this.showSidebarFilters && (h("div", { key: 'c2fb4c3a9749a5dd3cc480af92595bf38ae44f93', class: "sidebar-container" }, h("div", { key: '991e810f5875347cf3260a9cef1ae643038ed850', class: "filters-title-container" }, h("span", { key: '9043c614276d0b17730a6e844534994df191c274', class: "filters-title" }, "Filters")), h("div", { key: '7cfdb1e15eeb3848da5c9415d966e9eccf45a64a', class: "set-filter-wrapper-sidebar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (h("slot", { key: '19be35ca4d56deff54af054fddd93abf6b093b3c', name: "sidebar-filter" }))))), this.filterOrientation !== 'none' && this.filterOrientation !== 'sidebar' && (h("div", { key: '6c5bb6e23277d966c00961138c4faf93ba04b5a6', class: "set-filter-wrapper-topbar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (h("slot", { key: 'da76a9dc53096223c5b55357da935aaa68a57809', name: "topbar-filter" })))), h("div", { key: '80f2990257cf6e8535ab805d71a3bcd94cf9c0a2', class: "table-pagination-wrapper" }, h("div", { key: '505479d1f73fd6d1b12e74149a8fb7ccaf4138cb', class: "filter-chips" }, this.filterOrientation !== 'none' && this.filterOrientation !== 'topbar' && this.showSidebarFilters && (Object.keys(this.currentFilters).map(name => {
356
358
  const filter = this.currentFilters[name];
357
359
  const filterValues = filter.filterValues;
358
360
  const isMultiSelect = filter.type !== 'text';
359
361
  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;
360
- })), this.filterOrientation !== 'none' && this.filterOrientation === 'sidebar' && this.showSidebarFilters && Object.keys(this.currentFilters).length > 0 && (h("ifx-button", { key: '33fa48eb9f2c7574f7f6f7431622f002dc7e7c1b', type: "button", disabled: false, variant: "tertiary", size: "m", target: "_blank", theme: "default", "full-width": "false", onClick: () => this.handleResetButtonClick() }, h("ifx-icon", { key: 'df595a39cf484121c5ad401ee47590fce8f3e547', icon: "curved-arrow-left-16" }), "Reset all"))), this.filterOrientation !== 'none' && (h("div", { key: '9b9f9e8a0dfcb566518be657b2a3cd8ee885d6d8', class: "matching-results-container" }, h("span", { key: 'f23c6545b1940c7db0aae26a441c233ae690fbec', class: "matching-results-count" }, this.matchingResultsCount), h("span", { key: '360b3e65357a1417bff32e7132564179d3aaef2b', class: "matching-results-text" }, "matching results"))), h("div", { key: '6d4fa38a1245e0fca0d13edb72c2c4c546fe8f5b', id: "table-wrapper", class: this.getTableClassNames() }, h("div", { key: 'cf397c243e22df8adcab8f837cf33aff2ba1b60c', id: `ifxTable-${this.uniqueKey}`, class: 'ifx-ag-grid', style: style, ref: (el) => this.container = el })), this.pagination ? h("ifx-pagination", { total: this.allRowData.length, "current-page": this.currentPage, "items-per-page": '[{"value":"ten","label":"10","selected":true}, {"value":"Twenty","label":"20","selected":false}, {"value":"Thirty","label":"30","selected":false}]' }) : null)))));
362
+ })), this.filterOrientation !== 'none' && this.filterOrientation === 'sidebar' && this.showSidebarFilters && Object.keys(this.currentFilters).length > 0 && (h("ifx-button", { key: 'dd5ddff34324a9862ec266b69dff815088130ab1', type: "button", disabled: false, variant: "tertiary", size: "m", target: "_blank", theme: "default", "full-width": "false", onClick: () => this.handleResetButtonClick() }, h("ifx-icon", { key: 'c94bb876bf336c7fec3b8fe0321c1d1b20f7cf6c', icon: "curved-arrow-left-16" }), "Reset all"))), this.filterOrientation !== 'none' && (h("div", { key: 'ff9fe63f9801b645c92d98c777b2c664be144265', class: "matching-results-container" }, h("span", { key: '1ab39b442e88b8717e60b876d5e590abc49ea015', class: "matching-results-count" }, this.matchingResultsCount), h("span", { key: '5e7dee60f2df77e57966506766464a7cc166f83d', class: "matching-results-text" }, "matching results"))), h("div", { key: '1ea9a03eb36ecbb42bb6f660b984bde302f8e0dd', id: "table-wrapper", class: this.getTableClassNames() }, h("div", { key: 'c3885e21c36be6413ae2b1e87ded9ce6ba2f183c', id: `ifxTable-${this.uniqueKey}`, class: 'ifx-ag-grid', style: style, ref: (el) => this.container = el })), this.pagination ? h("ifx-pagination", { total: this.allRowData.length, "current-page": this.currentPage }) : null)))));
361
363
  }
362
364
  hasButtonCol() {
363
365
  return this.getColData().some(column => column.field === 'button');
@@ -616,7 +618,7 @@ export class Table {
616
618
  }
617
619
  static get listeners() {
618
620
  return [{
619
- "name": "ifxChipChange",
621
+ "name": "ifxChange",
620
622
  "method": "handleChipChange",
621
623
  "target": undefined,
622
624
  "capture": false,
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/components/table-advanced-version/table.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Host, Method, Element, Prop, State, Listen, Watch } from '@stencil/core';\nimport classNames from 'classnames';\n\nimport { createGrid, FirstDataRenderedEvent, GridApi, GridOptions } from 'ag-grid-community';\nimport { ButtonCellRenderer } from './buttonCellRenderer';\nimport { CustomNoRowsOverlay } from './customNoRowsOverlay';\nimport { CustomLoadingOverlay } from './customLoadingOverlay';\n\n\n@Component({\n tag: 'ifx-table',\n styleUrl: 'table.scss',\n shadow: true\n})\nexport class Table {\n gridOptions: GridOptions;\n gridApi: GridApi;\n @State() currentPage: number = 1;\n @Prop() cols: any;\n @Prop() rows: any;\n @Prop() buttonRendererOptions?: { onButtonClick?: (params: any, event: Event) => void;}; \n @State() rowData: any[] = [];\n @State() colData: any[] = [];\n @State() filterOptions: { [key: string]: string[] } = {};\n @State() currentFilters = {};\n @State() uniqueKey: string;\n allRowData: any[] = [];\n @Prop() rowHeight: string = 'default';\n @Prop() tableHeight: string = 'auto';\n @Prop() pagination: boolean = true;\n @Prop() paginationPageSize: number = 10;\n @Prop() filterOrientation: string = 'sidebar'; // topbar / none\n @State() showSidebarFilters: boolean = true;\n @State() matchingResultsCount: number = 0;\n\n @Prop() showLoading: boolean = false;\n private container: HTMLDivElement;\n @Element() host: HTMLElement;\n originalRowData: any[] = [];\n\n @Listen('ifxChipChange')\n handleChipChange(event: CustomEvent<{ previousSelection: Array<any>, currentSelection: Array<any>, name: string }>) {\n const { name, currentSelection } = event.detail;\n\n // Clone the current filters state\n const updatedFilters = { ...this.currentFilters };\n\n if (currentSelection.length === 0) {\n // If there are no selections for this filter, delete the filter\n delete updatedFilters[name];\n\n // Emit event with specific filter name\n const customEvent = new CustomEvent('ifxUpdateSidebarFilter', { detail: { filterName: name }, bubbles: true, composed: true });\n this.host.dispatchEvent(customEvent);\n } else {\n // Otherwise, update the filter values with the current selection\n updatedFilters[name].filterValues = currentSelection.map(selection => selection.value);\n }\n\n // Update the component's filters\n this.currentFilters = updatedFilters;\n\n // Ensure table data is updated\n this.allRowData = this.applyAllFilters(this.originalRowData, this.currentFilters);\n this.updateTableView();\n }\n\n @Watch('buttonRendererOptions')\n onButtonRendererOptionsChanged() {\n this.colData = this.getColData(); // Re-fetch column data to apply new renderer options\n if (this.gridApi) {\n this.gridApi.setColumnDefs(this.colData); // Update column definitions in the grid API\n }\n }\n\n toggleSidebarFilters() {\n this.showSidebarFilters = !this.showSidebarFilters;\n }\n\n updateFilterOptions() {\n const options = {};\n for (let col of this.colData) {\n options[col.field] = [...new Set(this.rowData.map(row => row[col.field]))];\n }\n this.filterOptions = options;\n }\n\n handleSidebarFilterChange(event: CustomEvent) {\n const filterGroups = event.detail;\n const updatedFilters = {};\n\n filterGroups.forEach(filterGroup => {\n const filterName = filterGroup.filterGroupName;\n let filterValues;\n let type;\n\n if (filterGroup.selectedItems && filterGroup.selectedItems.length > 0) {\n filterValues = filterGroup.selectedItems.map(item => item.label);\n type = 'multi-select';\n } else if (filterGroup.value) {\n filterValues = [filterGroup.value];\n type = 'text';\n } else {\n filterValues = [];\n }\n\n if (!(filterValues.length === 0 || (filterValues.length === 1 && type === 'text' && filterValues[0] === ''))) {\n updatedFilters[filterName] = { filterValues, type };\n }\n });\n\n this.allRowData = this.applyAllFilters(this.originalRowData, updatedFilters);\n this.updateTableView();\n this.currentFilters = updatedFilters;\n }\n\n\n handleTopbarFilterChange(event: CustomEvent) {\n const filters = event.detail;\n\n // Start by resetting the filter conditions to a blank object\n this.currentFilters = {};\n\n // Loop through each filter group provided in the event detail\n filters.forEach(filter => {\n const filterName = filter.filterName;\n let filterValues;\n\n let type = filter.type;\n\n if (type === 'text') {\n // Search/Text filter\n filterValues = filter.filterValues\n } else {\n // Multi-select/Single-Select\n filterValues = filter.filterValues.map(item => item.label);\n }\n\n // If there are no filter values, or the filter is a text filter with an empty value, remove the filter\n if (!(filterValues.length === 0 || (filterValues.length === 1 && type === 'text' && filterValues[0] === ''))) {\n // Add or update the filter in the currentFilters object\n this.currentFilters[filterName] = { filterValues, type };\n }\n });\n\n\n // Now that the currentFilters object has been updated, apply all filters to the data\n this.allRowData = this.applyAllFilters(this.originalRowData, this.currentFilters);\n\n // After filtering, update the table view with the new filtered data\n this.updateTableView();\n }\n\n\n applyAllFilters(data, filters) {\n return data.filter(row => {\n for (const filterName in filters) {\n const filterInfo = filters[filterName];\n let selectedValues = (filterInfo.filterValues || []).map(value => {\n if (typeof value === 'string') {\n return value.toLowerCase();\n } else if (typeof value === 'number' || typeof value === 'boolean') {\n return value.toString();\n }\n return '';\n });\n\n // For text filters, check if row values start with any of the selectedValues\n if (filterInfo.type === 'text') {\n let textFilterMatched = false;\n for (let property in row) {\n if (row.hasOwnProperty(property)) {\n let rowValue = row[property] != null ? String(row[property]).toLowerCase() : '';\n if (selectedValues.some(filterValue => rowValue.startsWith(filterValue))) {\n textFilterMatched = true;\n break;\n }\n }\n }\n if (!textFilterMatched) return false;\n }\n // For multi-select filters, this remains unchanged\n else if (filterInfo.type === 'multi-select') {\n let rowValue = row[filterName] != null ? String(row[filterName]).toLowerCase() : '';\n // Check if 'undefined' is a selected value and include rows with empty values in that case\n let includesUndefined = selectedValues.includes('undefined');\n if (!selectedValues.includes(rowValue) && !(includesUndefined && rowValue === '')) {\n return false;\n }\n }\n }\n return true;\n });\n }\n\n\n\n updateTableView() {\n // Calculate the slice of data to display based on pagination\n const startIndex = (this.currentPage - 1) * this.paginationPageSize;\n const endIndex = startIndex + this.paginationPageSize;\n const visibleRowData = this.allRowData.slice(startIndex, endIndex);\n\n // Update the row data in the table\n this.rowData = visibleRowData;\n this.gridApi.setGridOption('rowData', this.rowData);\n\n // Update matching results count\n this.matchingResultsCount = this.allRowData.length;\n }\n\n\n clearAllFilters() {\n this.currentFilters = {};\n this.allRowData = [...this.originalRowData];\n }\n\n\n @Method()\n async onBtShowLoading() {\n this.gridApi.showLoadingOverlay();\n }\n\n componentWillLoad() {\n this.uniqueKey = `unique-${Math.floor(Math.random() * 1000000)}`;\n\n this.rowData = this.getRowData();\n this.colData = this.getColData();\n this.updateFilterOptions();\n\n this.gridOptions = {\n\n rowHeight: this.rowHeight === 'default' ? 40 : 32,\n headerHeight: 40,\n defaultColDef: {\n resizable: true,\n },\n suppressDragLeaveHidesColumns: true,\n enableCellTextSelection: true,\n onFirstDataRendered: this.onFirstDataRendered.bind(this),\n columnDefs: this.colData,\n rowData: this.rowData,\n loadingOverlayComponent: CustomLoadingOverlay,\n noRowsOverlayComponent: CustomNoRowsOverlay,\n noRowsOverlayComponentParams: {\n noRowsMessageFunc: () =>\n 'No rows found' //at: ' + new Date().toLocaleTimeString(),\n },\n icons: {\n sortAscending: '<ifx-icon icon=\"arrowtriangleup16\"></ifx-icon>',\n sortDescending: '<ifx-icon icon=\"arrowtriangledown16\"></ifx-icon>',\n sortUnSort: '<a class=\"unsort-icon-custom-color\"><ifx-icon icon=\"arrowtrianglevertikal16\"></ifx-icon></a>'\n },\n rowDragManaged: this.colData.some(col => col.dndSource === true) ? true : false,\n animateRows: this.colData.some(col => col.dndSource === true) ? true : false,\n };\n\n }\n\n componentDidRender() {\n if (this.gridApi) {\n this.gridApi.setGridOption('columnDefs', this.colData);\n }\n }\n\n\n\n componentDidLoad() {\n if (this.container) {\n this.gridApi = createGrid(this.container, this.gridOptions);\n if (this.gridApi) {\n this.gridApi.sizeColumnsToFit({\n defaultMinWidth: 100,\n });\n this.gridApi.setGridOption('columnDefs', this.colData);\n this.gridApi.setGridOption('rowData', this.rowData);\n\n if (this.pagination) {\n const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');\n if (paginationElement) {\n paginationElement.addEventListener('ifxPageChange', this.handlePageChange.bind(this));\n }\n }\n const sidebarFilterElements = this.host.querySelectorAll('ifx-filter-type-group');\n // Add an event listener to each SetFilter component\n sidebarFilterElements.forEach(sidebarFilterElement => {\n sidebarFilterElement.addEventListener('ifxSidebarFilterChange', this.handleSidebarFilterChange.bind(this));\n });\n const topbarFilterElements = this.host.querySelectorAll('ifx-filter-bar');\n // Add an event listener to each SetFilter component\n topbarFilterElements.forEach(topbarFilterElement => {\n topbarFilterElement.addEventListener('ifxTopbarFilterChange', this.handleTopbarFilterChange.bind(this));\n });\n }\n }\n }\n\n componentWillUnmount() {\n if (this.pagination) {\n const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');\n if (paginationElement) {\n paginationElement.removeEventListener('ifxPageChange', this.handlePageChange.bind(this));\n }\n }\n const sidebarFilters = this.host.shadowRoot.querySelectorAll('ifx-filter-type-group');\n // Remove the event listener from each SetFilter component\n sidebarFilters.forEach(sidebarFilter => {\n sidebarFilter.removeEventListener('ifxSidebarFilterChange', this.handleSidebarFilterChange.bind(this));\n });\n const topbarFilters = this.host.shadowRoot.querySelectorAll('ifx-filter-type-group');\n // Remove the event listener from each SetFilter component\n topbarFilters.forEach(topbarFilter => {\n topbarFilter.removeEventListener('ifxTopbarFilterChange', this.handleTopbarFilterChange.bind(this));\n });\n }\n\n handlePageChange(event) {\n this.currentPage = event.detail.currentPage;\n const startIndex = (this.currentPage - 1) * this.paginationPageSize;\n const endIndex = startIndex + this.paginationPageSize;\n const visibleRowData = this.allRowData.slice(startIndex, endIndex);\n // Update the data in the grid\n if (this.gridApi) {\n this.gridApi.setGridOption('rowData', visibleRowData);\n }\n }\n\n isJSONParseable(str) {\n try {\n JSON.parse(str);\n return true;\n } catch (e) {\n return false;\n }\n }\n\n\n getRowData() {\n let rows: any[] = [];\n if (this.rows === undefined || this.rows === null) {\n return rows;\n }\n \n if (this.isJSONParseable(this.rows)) {\n rows = [...JSON.parse(this.rows)];\n }\n else if (Array.isArray(this.rows) || typeof this.rows === 'object') {\n rows = [...this.rows];\n }\n else {\n console.error('Unexpected value for rows: ', this.rows);\n }\n\n this.allRowData = rows;\n this.originalRowData = [...rows]; // Deep copy the original data\n this.matchingResultsCount = this.allRowData.length;\n\n return rows.slice(0, this.paginationPageSize);\n }\n\n\n getColData() {\n let cols: any[] = [];\n if (this.cols === undefined || this.cols === null) {\n return cols;\n }\n \n if (this.isJSONParseable(this.cols)) {\n cols = [...JSON.parse(this.cols)];\n } else if (Array.isArray(this.cols) || typeof this.cols === 'object') {\n cols = [...this.cols];\n } else {\n console.error('Unexpected value for cols: ', this.cols);\n }\n \n const buttonColumn = cols.find(column => column.field === 'button');\n if (buttonColumn) {\n buttonColumn.cellRenderer = ButtonCellRenderer;\n buttonColumn.valueFormatter = params => params.value.text;\n \n // No JSON.parse needed now\n if (this.buttonRendererOptions && typeof this.buttonRendererOptions === 'object') {\n if (this.buttonRendererOptions.onButtonClick) {\n buttonColumn.cellRendererParams = {\n onButtonClick: this.buttonRendererOptions.onButtonClick\n };\n }\n }\n }\n \n return cols;\n }\n \n\n onFirstDataRendered(params: FirstDataRenderedEvent) {\n params.api.sizeColumnsToFit();\n }\n\n handleResetButtonClick() {\n const resetEvent = new CustomEvent('ifxResetFiltersEvent', { bubbles: true, composed: true });\n window.dispatchEvent(resetEvent); // Dispatch from the window object\n\n this.clearAllFilters();\n this.updateTableView(); // Update table view with the original data\n }\n\n\n disconnectedCallback() {\n if (this.pagination) {\n const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');\n if (paginationElement) {\n paginationElement.removeEventListener('ifxPageChange', this.handlePageChange);\n }\n }\n\n const resetButton = this.host.shadowRoot.querySelector('#reset-filters-button');\n if (resetButton) {\n resetButton.removeEventListener('click', this.handleResetButtonClick.bind(this));\n }\n }\n\n\n\n getTableClassNames() {\n return classNames(\n this.tableHeight === 'auto' && 'table-wrapper ag-root-wrapper-body',\n 'table-wrapper',\n );\n }\n\n\n render() {\n let style = {};\n if (this.tableHeight !== 'auto') {\n style = {\n 'height': this.tableHeight\n };\n }\n const filterClass = this.filterOrientation === 'topbar' ? 'topbar-layout' : 'sidebar-layout';\n return (\n <Host>\n <div class=\"table-container\">\n {this.filterOrientation === 'sidebar' && (\n <div class=\"sidebar-btn\">\n <ifx-button\n type=\"button\"\n disabled={false}\n variant=\"secondary\"\n size=\"m\"\n target=\"_blank\"\n theme=\"default\"\n full-width=\"false\"\n onClick={() => this.toggleSidebarFilters()}\n >\n <ifx-icon icon=\"cross-12\"></ifx-icon>{this.showSidebarFilters ? 'Hide Filters' : 'Show Filters'}\n </ifx-button>\n </div>\n )}\n\n <div class={filterClass}>\n {this.filterOrientation === 'sidebar' && this.showSidebarFilters && (\n <div class=\"sidebar-container\">\n <div class=\"filters-title-container\">\n <span class=\"filters-title\">Filters</span>\n </div>\n <div class=\"set-filter-wrapper-sidebar\">\n {(this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (\n <slot name=\"sidebar-filter\"></slot>\n )}\n </div>\n </div>\n )}\n\n {this.filterOrientation !== 'none' && this.filterOrientation !== 'sidebar' && (\n <div class=\"set-filter-wrapper-topbar\">\n {(this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (\n <slot name=\"topbar-filter\"></slot>\n )}\n </div>\n )}\n\n <div class=\"table-pagination-wrapper\">\n <div class=\"filter-chips\">\n {this.filterOrientation !== 'none' && this.filterOrientation !== 'topbar' && this.showSidebarFilters && (\n Object.keys(this.currentFilters).map(name => {\n const filter = this.currentFilters[name];\n const filterValues = filter.filterValues;\n const isMultiSelect = filter.type !== 'text';\n\n return filterValues.length > 0 ? (\n <ifx-chip\n placeholder={name}\n size=\"large\"\n variant={isMultiSelect ? \"multi\" : \"single\"}\n readOnly={true}\n value={filterValues} // Ensure value prop is set\n key={name}\n >\n {filterValues.map(filterValue => (\n <ifx-chip-item value={filterValue} selected={true} key={filterValue}>\n {filterValue}\n </ifx-chip-item>\n ))}\n </ifx-chip>\n ) : null;\n })\n )}\n\n {this.filterOrientation !== 'none' && this.filterOrientation === 'sidebar' && this.showSidebarFilters && Object.keys(this.currentFilters).length > 0 && (\n <ifx-button type=\"button\" disabled={false} variant=\"tertiary\" size=\"m\" target=\"_blank\" theme=\"default\" full-width=\"false\" onClick={() => this.handleResetButtonClick()}\n >\n <ifx-icon icon=\"curved-arrow-left-16\"></ifx-icon>Reset all\n </ifx-button>\n )}\n </div>\n\n {this.filterOrientation !== 'none' && (\n <div class=\"matching-results-container\">\n <span class=\"matching-results-count\">\n {this.matchingResultsCount}\n </span>\n <span class=\"matching-results-text\">\n matching results\n </span>\n </div>\n )}\n\n <div id=\"table-wrapper\" class={this.getTableClassNames()}>\n <div id={`ifxTable-${this.uniqueKey}`} class='ifx-ag-grid' style={style} ref={(el) => this.container = el}>\n </div>\n </div>\n {this.pagination ? <ifx-pagination total={this.allRowData.length} current-page={this.currentPage} items-per-page='[{\"value\":\"ten\",\"label\":\"10\",\"selected\":true}, {\"value\":\"Twenty\",\"label\":\"20\",\"selected\":false}, {\"value\":\"Thirty\",\"label\":\"30\",\"selected\":false}]'></ifx-pagination> : null}\n </div>\n </div>\n </div>\n </Host>\n );\n }\n\n\n hasButtonCol(): boolean {\n return this.getColData().some(column => column.field === 'button');\n }\n\n onDragOver(event) {\n var dragSupported = event.dataTransfer.length;\n\n if (dragSupported) {\n event.dataTransfer.dropEffect = 'move';\n }\n\n event.preventDefault();\n }\n\n onDrop(event) {\n var jsonData = event.dataTransfer.getData('application/json');\n\n var eJsonRow = document.createElement('div');\n eJsonRow.classList.add('json-row');\n eJsonRow.innerText = jsonData;\n\n var eJsonDisplay = document.querySelector('#eJsonDisplay');\n\n eJsonDisplay.appendChild(eJsonRow);\n event.preventDefault();\n }\n\n}\n"]}
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/components/table-advanced-version/table.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Host, Method, Element, Prop, State, Listen, Watch } from '@stencil/core';\nimport classNames from 'classnames';\n\nimport { createGrid, FirstDataRenderedEvent, GridApi, GridOptions } from 'ag-grid-community';\nimport { ButtonCellRenderer } from './buttonCellRenderer';\nimport { CustomNoRowsOverlay } from './customNoRowsOverlay';\nimport { CustomLoadingOverlay } from './customLoadingOverlay';\n\n\n@Component({\n tag: 'ifx-table',\n styleUrl: 'table.scss',\n shadow: true\n})\nexport class Table {\n gridOptions: GridOptions;\n gridApi: GridApi;\n @State() currentPage: number = 1;\n @Prop() cols: any;\n @Prop() rows: any;\n @Prop() buttonRendererOptions?: { onButtonClick?: (params: any, event: Event) => void;}; \n @State() rowData: any[] = [];\n @State() colData: any[] = [];\n @State() filterOptions: { [key: string]: string[] } = {};\n @State() currentFilters = {};\n @State() uniqueKey: string;\n allRowData: any[] = [];\n @Prop() rowHeight: string = 'default';\n @Prop() tableHeight: string = 'auto';\n @Prop() pagination: boolean = true;\n @Prop() paginationPageSize: number = 10;\n @Prop() filterOrientation: string = 'sidebar'; // topbar / none\n @State() showSidebarFilters: boolean = true;\n @State() matchingResultsCount: number = 0;\n\n @Prop() showLoading: boolean = false;\n private container: HTMLDivElement;\n @Element() host: HTMLElement;\n originalRowData: any[] = [];\n\n @Listen('ifxChange')\n handleChipChange(event: CustomEvent<{ previousSelection: Array<any>, currentSelection: Array<any>, name: string }>) {\n const { name, currentSelection, previousSelection } = event.detail;\n if(currentSelection && previousSelection) { \n // Clone the current filters state\n const updatedFilters = { ...this.currentFilters };\n \n if (currentSelection.length === 0) {\n // If there are no selections for this filter, delete the filter\n delete updatedFilters[name];\n \n // Emit event with specific filter name\n const customEvent = new CustomEvent('ifxUpdateSidebarFilter', { detail: { filterName: name }, bubbles: true, composed: true });\n this.host.dispatchEvent(customEvent);\n } else {\n // Otherwise, update the filter values with the current selection\n updatedFilters[name].filterValues = currentSelection.map(selection => selection.value);\n }\n \n // Update the component's filters\n this.currentFilters = updatedFilters;\n \n // Ensure table data is updated\n this.allRowData = this.applyAllFilters(this.originalRowData, this.currentFilters);\n this.updateTableView();\n }\n }\n\n @Watch('buttonRendererOptions')\n onButtonRendererOptionsChanged() {\n this.colData = this.getColData(); // Re-fetch column data to apply new renderer options\n if (this.gridApi) {\n this.gridApi.setColumnDefs(this.colData); // Update column definitions in the grid API\n }\n }\n\n toggleSidebarFilters() {\n this.showSidebarFilters = !this.showSidebarFilters;\n }\n\n updateFilterOptions() {\n const options = {};\n for (let col of this.colData) {\n options[col.field] = [...new Set(this.rowData.map(row => row[col.field]))];\n }\n this.filterOptions = options;\n }\n\n handleSidebarFilterChange(event: CustomEvent) {\n const filterGroups = event.detail;\n const updatedFilters = {};\n\n filterGroups.forEach(filterGroup => {\n const filterName = filterGroup.filterGroupName;\n let filterValues;\n let type;\n\n if (filterGroup.selectedItems && filterGroup.selectedItems.length > 0) {\n filterValues = filterGroup.selectedItems.map(item => item.label);\n type = 'multi-select';\n } else if (filterGroup.value) {\n filterValues = [filterGroup.value];\n type = 'text';\n } else {\n filterValues = [];\n }\n\n if (!(filterValues.length === 0 || (filterValues.length === 1 && type === 'text' && filterValues[0] === ''))) {\n updatedFilters[filterName] = { filterValues, type };\n }\n });\n\n this.allRowData = this.applyAllFilters(this.originalRowData, updatedFilters);\n this.updateTableView();\n this.currentFilters = updatedFilters;\n }\n\n\n handleTopbarFilterChange(event: CustomEvent) {\n const filters = event.detail;\n\n // Start by resetting the filter conditions to a blank object\n this.currentFilters = {};\n\n // Loop through each filter group provided in the event detail\n filters.forEach(filter => {\n const filterName = filter.filterName;\n let filterValues;\n\n let type = filter.type;\n\n if (type === 'text') {\n // Search/Text filter\n filterValues = filter.filterValues\n } else {\n // Multi-select/Single-Select\n filterValues = filter.filterValues.map(item => item.label);\n }\n\n // If there are no filter values, or the filter is a text filter with an empty value, remove the filter\n if (!(filterValues.length === 0 || (filterValues.length === 1 && type === 'text' && filterValues[0] === ''))) {\n // Add or update the filter in the currentFilters object\n this.currentFilters[filterName] = { filterValues, type };\n }\n });\n\n\n // Now that the currentFilters object has been updated, apply all filters to the data\n this.allRowData = this.applyAllFilters(this.originalRowData, this.currentFilters);\n\n // After filtering, update the table view with the new filtered data\n this.updateTableView();\n }\n\n\n applyAllFilters(data, filters) {\n return data.filter(row => {\n for (const filterName in filters) {\n const filterInfo = filters[filterName];\n let selectedValues = (filterInfo.filterValues || []).map(value => {\n if (typeof value === 'string') {\n return value.toLowerCase();\n } else if (typeof value === 'number' || typeof value === 'boolean') {\n return value.toString();\n }\n return '';\n });\n\n // For text filters, check if row values start with any of the selectedValues\n if (filterInfo.type === 'text') {\n let textFilterMatched = false;\n for (let property in row) {\n if (row.hasOwnProperty(property)) {\n let rowValue = row[property] != null ? String(row[property]).toLowerCase() : '';\n if (selectedValues.some(filterValue => rowValue.startsWith(filterValue))) {\n textFilterMatched = true;\n break;\n }\n }\n }\n if (!textFilterMatched) return false;\n }\n // For multi-select filters, this remains unchanged\n else if (filterInfo.type === 'multi-select') {\n let rowValue = row[filterName] != null ? String(row[filterName]).toLowerCase() : '';\n // Check if 'undefined' is a selected value and include rows with empty values in that case\n let includesUndefined = selectedValues.includes('undefined');\n if (!selectedValues.includes(rowValue) && !(includesUndefined && rowValue === '')) {\n return false;\n }\n }\n }\n return true;\n });\n }\n\n\n\n updateTableView() {\n // Calculate the slice of data to display based on pagination\n const startIndex = (this.currentPage - 1) * this.paginationPageSize;\n const endIndex = startIndex + this.paginationPageSize;\n const visibleRowData = this.allRowData.slice(startIndex, endIndex);\n\n // Update the row data in the table\n this.rowData = visibleRowData;\n this.gridApi.setGridOption('rowData', this.rowData);\n\n // Update matching results count\n this.matchingResultsCount = this.allRowData.length;\n }\n\n\n clearAllFilters() {\n this.currentFilters = {};\n this.allRowData = [...this.originalRowData];\n }\n\n\n @Method()\n async onBtShowLoading() {\n this.gridApi.showLoadingOverlay();\n }\n\n componentWillLoad() {\n this.uniqueKey = `unique-${Math.floor(Math.random() * 1000000)}`;\n\n this.rowData = this.getRowData();\n this.colData = this.getColData();\n this.updateFilterOptions();\n\n this.gridOptions = {\n\n rowHeight: this.rowHeight === 'default' ? 40 : 32,\n headerHeight: 40,\n defaultColDef: {\n resizable: true,\n },\n suppressDragLeaveHidesColumns: true,\n enableCellTextSelection: true,\n onFirstDataRendered: this.onFirstDataRendered.bind(this),\n columnDefs: this.colData,\n rowData: this.rowData,\n loadingOverlayComponent: CustomLoadingOverlay,\n noRowsOverlayComponent: CustomNoRowsOverlay,\n noRowsOverlayComponentParams: {\n noRowsMessageFunc: () =>\n 'No rows found' //at: ' + new Date().toLocaleTimeString(),\n },\n icons: {\n sortAscending: '<ifx-icon icon=\"arrowtriangleup16\"></ifx-icon>',\n sortDescending: '<ifx-icon icon=\"arrowtriangledown16\"></ifx-icon>',\n sortUnSort: '<a class=\"unsort-icon-custom-color\"><ifx-icon icon=\"arrowtrianglevertikal16\"></ifx-icon></a>'\n },\n rowDragManaged: this.colData.some(col => col.dndSource === true) ? true : false,\n animateRows: this.colData.some(col => col.dndSource === true) ? true : false,\n };\n\n }\n\n componentDidRender() {\n if (this.gridApi) {\n this.gridApi.setGridOption('columnDefs', this.colData);\n }\n }\n\n\n\n componentDidLoad() {\n if (this.container) {\n this.gridApi = createGrid(this.container, this.gridOptions);\n if (this.gridApi) {\n this.gridApi.sizeColumnsToFit({\n defaultMinWidth: 100,\n });\n this.gridApi.setGridOption('columnDefs', this.colData);\n this.gridApi.setGridOption('rowData', this.rowData);\n\n if (this.pagination) {\n const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');\n if (paginationElement) {\n paginationElement.addEventListener('ifxPageChange', this.handlePageChange.bind(this));\n }\n }\n const sidebarFilterElements = this.host.querySelectorAll('ifx-filter-type-group');\n // Add an event listener to each SetFilter component\n sidebarFilterElements.forEach(sidebarFilterElement => {\n sidebarFilterElement.addEventListener('ifxSidebarFilterChange', this.handleSidebarFilterChange.bind(this));\n });\n const topbarFilterElements = this.host.querySelectorAll('ifx-filter-bar');\n // Add an event listener to each SetFilter component\n topbarFilterElements.forEach(topbarFilterElement => {\n topbarFilterElement.addEventListener('ifxTopbarFilterChange', this.handleTopbarFilterChange.bind(this));\n });\n }\n }\n }\n\n componentWillUnmount() {\n if (this.pagination) {\n const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');\n if (paginationElement) {\n paginationElement.removeEventListener('ifxPageChange', this.handlePageChange.bind(this));\n }\n }\n const sidebarFilters = this.host.shadowRoot.querySelectorAll('ifx-filter-type-group');\n // Remove the event listener from each SetFilter component\n sidebarFilters.forEach(sidebarFilter => {\n sidebarFilter.removeEventListener('ifxSidebarFilterChange', this.handleSidebarFilterChange.bind(this));\n });\n const topbarFilters = this.host.shadowRoot.querySelectorAll('ifx-filter-type-group');\n // Remove the event listener from each SetFilter component\n topbarFilters.forEach(topbarFilter => {\n topbarFilter.removeEventListener('ifxTopbarFilterChange', this.handleTopbarFilterChange.bind(this));\n });\n }\n\n handlePageChange(event) {\n this.currentPage = event.detail.currentPage;\n const startIndex = (this.currentPage - 1) * this.paginationPageSize;\n const endIndex = startIndex + this.paginationPageSize;\n const visibleRowData = this.allRowData.slice(startIndex, endIndex);\n // Update the data in the grid\n if (this.gridApi) {\n this.gridApi.setGridOption('rowData', visibleRowData);\n }\n }\n\n isJSONParseable(str) {\n try {\n JSON.parse(str);\n return true;\n } catch (e) {\n return false;\n }\n }\n\n\n getRowData() {\n let rows: any[] = [];\n if (this.rows === undefined || this.rows === null) {\n return rows;\n }\n \n if (this.isJSONParseable(this.rows)) {\n rows = [...JSON.parse(this.rows)];\n }\n else if (Array.isArray(this.rows) || typeof this.rows === 'object') {\n rows = [...this.rows];\n }\n else {\n console.error('Unexpected value for rows: ', this.rows);\n }\n\n this.allRowData = rows;\n this.originalRowData = [...rows]; // Deep copy the original data\n this.matchingResultsCount = this.allRowData.length;\n\n return rows.slice(0, this.paginationPageSize);\n }\n\n\n getColData() {\n let cols: any[] = [];\n if (this.cols === undefined || this.cols === null) {\n return cols;\n }\n \n if (this.isJSONParseable(this.cols)) {\n cols = [...JSON.parse(this.cols)];\n } else if (Array.isArray(this.cols) || typeof this.cols === 'object') {\n cols = [...this.cols];\n } else {\n console.error('Unexpected value for cols: ', this.cols);\n }\n \n const buttonColumn = cols.find(column => column.field === 'button');\n if (buttonColumn) {\n buttonColumn.cellRenderer = ButtonCellRenderer;\n buttonColumn.valueFormatter = params => params.value.text;\n \n // No JSON.parse needed now\n if (this.buttonRendererOptions && typeof this.buttonRendererOptions === 'object') {\n if (this.buttonRendererOptions.onButtonClick) {\n buttonColumn.cellRendererParams = {\n onButtonClick: this.buttonRendererOptions.onButtonClick\n };\n }\n }\n }\n \n return cols;\n }\n \n\n onFirstDataRendered(params: FirstDataRenderedEvent) {\n params.api.sizeColumnsToFit();\n }\n\n handleResetButtonClick() {\n const resetEvent = new CustomEvent('ifxResetFiltersEvent', { bubbles: true, composed: true });\n window.dispatchEvent(resetEvent); // Dispatch from the window object\n\n this.clearAllFilters();\n this.updateTableView(); // Update table view with the original data\n }\n\n\n disconnectedCallback() {\n if (this.pagination) {\n const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');\n if (paginationElement) {\n paginationElement.removeEventListener('ifxPageChange', this.handlePageChange);\n }\n }\n\n const resetButton = this.host.shadowRoot.querySelector('#reset-filters-button');\n if (resetButton) {\n resetButton.removeEventListener('click', this.handleResetButtonClick.bind(this));\n }\n }\n\n\n\n getTableClassNames() {\n return classNames(\n this.tableHeight === 'auto' && 'table-wrapper ag-root-wrapper-body',\n 'table-wrapper',\n );\n }\n\n\n render() {\n let style = {};\n if (this.tableHeight !== 'auto') {\n style = {\n 'height': this.tableHeight\n };\n }\n const filterClass = this.filterOrientation === 'topbar' ? 'topbar-layout' : 'sidebar-layout';\n return (\n <Host>\n <div class=\"table-container\">\n {this.filterOrientation === 'sidebar' && (\n <div class=\"sidebar-btn\">\n <ifx-button\n type=\"button\"\n disabled={false}\n variant=\"secondary\"\n size=\"m\"\n target=\"_blank\"\n theme=\"default\"\n full-width=\"false\"\n onClick={() => this.toggleSidebarFilters()}\n >\n <ifx-icon icon=\"cross-12\"></ifx-icon>{this.showSidebarFilters ? 'Hide Filters' : 'Show Filters'}\n </ifx-button>\n </div>\n )}\n\n <div class={filterClass}>\n {this.filterOrientation === 'sidebar' && this.showSidebarFilters && (\n <div class=\"sidebar-container\">\n <div class=\"filters-title-container\">\n <span class=\"filters-title\">Filters</span>\n </div>\n <div class=\"set-filter-wrapper-sidebar\">\n {(this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (\n <slot name=\"sidebar-filter\"></slot>\n )}\n </div>\n </div>\n )}\n\n {this.filterOrientation !== 'none' && this.filterOrientation !== 'sidebar' && (\n <div class=\"set-filter-wrapper-topbar\">\n {(this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && (\n <slot name=\"topbar-filter\"></slot>\n )}\n </div>\n )}\n\n <div class=\"table-pagination-wrapper\">\n <div class=\"filter-chips\">\n {this.filterOrientation !== 'none' && this.filterOrientation !== 'topbar' && this.showSidebarFilters && (\n Object.keys(this.currentFilters).map(name => {\n const filter = this.currentFilters[name];\n const filterValues = filter.filterValues;\n const isMultiSelect = filter.type !== 'text';\n\n return filterValues.length > 0 ? (\n <ifx-chip\n placeholder={name}\n size=\"large\"\n variant={isMultiSelect ? \"multi\" : \"single\"}\n readOnly={true}\n value={filterValues} // Ensure value prop is set\n key={name}\n >\n {filterValues.map(filterValue => (\n <ifx-chip-item value={filterValue} selected={true} key={filterValue}>\n {filterValue}\n </ifx-chip-item>\n ))}\n </ifx-chip>\n ) : null;\n })\n )}\n\n {this.filterOrientation !== 'none' && this.filterOrientation === 'sidebar' && this.showSidebarFilters && Object.keys(this.currentFilters).length > 0 && (\n <ifx-button type=\"button\" disabled={false} variant=\"tertiary\" size=\"m\" target=\"_blank\" theme=\"default\" full-width=\"false\" onClick={() => this.handleResetButtonClick()}\n >\n <ifx-icon icon=\"curved-arrow-left-16\"></ifx-icon>Reset all\n </ifx-button>\n )}\n </div>\n\n {this.filterOrientation !== 'none' && (\n <div class=\"matching-results-container\">\n <span class=\"matching-results-count\">\n {this.matchingResultsCount}\n </span>\n <span class=\"matching-results-text\">\n matching results\n </span>\n </div>\n )}\n\n <div id=\"table-wrapper\" class={this.getTableClassNames()}>\n <div id={`ifxTable-${this.uniqueKey}`} class='ifx-ag-grid' style={style} ref={(el) => this.container = el}>\n </div>\n </div>\n {this.pagination ? <ifx-pagination total={this.allRowData.length} current-page={this.currentPage}></ifx-pagination> : null}\n </div>\n </div>\n </div>\n </Host>\n );\n }\n\n\n hasButtonCol(): boolean {\n return this.getColData().some(column => column.field === 'button');\n }\n\n onDragOver(event) {\n var dragSupported = event.dataTransfer.length;\n\n if (dragSupported) {\n event.dataTransfer.dropEffect = 'move';\n }\n\n event.preventDefault();\n }\n\n onDrop(event) {\n var jsonData = event.dataTransfer.getData('application/json');\n\n var eJsonRow = document.createElement('div');\n eJsonRow.classList.add('json-row');\n eJsonRow.innerText = jsonData;\n\n var eJsonDisplay = document.querySelector('#eJsonDisplay');\n\n eJsonDisplay.appendChild(eJsonRow);\n event.preventDefault();\n }\n\n}\n"]}
@@ -74,42 +74,84 @@ export default {
74
74
  tableHeight: 'auto',
75
75
  pagination: false,
76
76
  paginationPageSize: 10,
77
- currentPage: 1,
78
77
  rowHeight: 40,
79
78
  showLoading: false,
80
- buttonRendererOptions: {
81
- onButtonClick: (params, event) => {
82
- console.log('Button clicked:', params, event);
83
- }
84
- }
85
79
  },
86
80
  argTypes: {
87
81
  tableHeight: {
82
+ description: 'Set the height of the table.',
88
83
  table: {
84
+ category: 'ifx-table props',
89
85
  type: {
90
86
  summary: 'Options',
91
87
  detail: 'Default: "auto"\nExample for fixed height: "400px"',
92
88
  }
93
89
  },
94
90
  },
91
+ pagination: {
92
+ description: 'Show pagination control.',
93
+ control: { type: 'boolean' },
94
+ table: {
95
+ category: 'ifx-table props',
96
+ defaultValue: {
97
+ summary: true
98
+ },
99
+ type: {
100
+ summary: 'Boolean',
101
+ },
102
+ },
103
+ },
95
104
  paginationPageSize: {
96
- description: "Results per page: minimum 10 - maximum 30",
97
- control: { type: 'number', min: 10, max: 30, step: 10 }
105
+ description: "Results per page: minimum 10 - maximum 30.",
106
+ control: { type: 'number', min: 10, max: 30, step: 10 },
107
+ table: {
108
+ category: 'ifx-table props',
109
+ defaultValue: {
110
+ summary: 10
111
+ },
112
+ type: {
113
+ summary: 'Number',
114
+ },
115
+ },
98
116
  },
99
117
  showLoading: {
118
+ description: 'Show loading spinner.',
100
119
  options: [true, false],
101
120
  control: { type: 'radio' },
121
+ table: {
122
+ category: 'ifx-table props',
123
+ defaultValue: {
124
+ summary: false
125
+ },
126
+ },
102
127
  },
103
128
  rowHeight: {
129
+ description: 'Set the height of the rows.',
104
130
  options: ['compact', 'default'],
105
131
  control: { type: 'radio' },
132
+ table: {
133
+ category: 'ifx-table props',
134
+ defaultValue: {
135
+ summary: 'default'
136
+ },
137
+ },
106
138
  },
107
139
  filterOrientation: {
140
+ description: 'Set the filter orientation.',
108
141
  options: ['sidebar', 'topbar', 'none'],
109
142
  control: { type: 'radio' },
143
+ table: {
144
+ category: 'ifx-table props',
145
+ defaultValue: {
146
+ summary: 'none'
147
+ },
148
+ },
110
149
  },
111
150
  columnDefs: {
151
+ description: 'Column header options',
152
+ name: 'cols',
112
153
  table: {
154
+ category: 'ifx-table props',
113
155
  type: {
114
156
  summary: 'Column header options',
115
157
  detail: 'Standard columns:\nheaderName: "Model", \nfield: "model", \nsortable: true (optional),\nsort: "desc" (optional) => descending sort (show icon)\nunSortIcon: true (optional) => unsorted (show icon)\n\nSpecial columns:\nheaderName: "",\nfield: "button"\nheaderName: "",\nfield: "link"',
@@ -117,37 +159,90 @@ export default {
117
159
  },
118
160
  },
119
161
  rowData: {
162
+ description: 'Row data options',
163
+ name: 'rows',
120
164
  table: {
165
+ category: 'ifx-table props',
121
166
  type: {
122
167
  summary: 'Row data options',
123
168
  detail: 'Standard row values:\nmake: "Toyota", \nmodel: "Celica", \nprice: 35000 \n\nSpecial row values (incl buttons):\nmake: "Porsche",\nmodel: "Boxster",\nprice: "72000",\nbutton: { \ndisabled: false (optional),\nvariant: "outline" (optional)\nsize: "s" (optional),\ntext: "Button"\n...other ifx-button properties\n}',
124
169
  },
125
170
  },
126
171
  },
127
- buttonRendererOptions: {
128
- control: 'object',
129
- description: 'Options for button cell renderer, including event handlers.',
130
- table: {
131
- type: {
132
- summary: 'Button Renderer Options',
133
- detail: 'Custom event handlers and other options for the button cell renderer in the table.'
134
- },
135
- },
136
- },
137
172
  }
138
173
  };
139
174
  const DefaultTemplate = (args) => {
140
- const table = `
141
- <ifx-table
142
- row-height="${args.rowHeight}"
143
- cols='${JSON.stringify(args.columnDefs)}'
144
- rows='${JSON.stringify(args.rowData)}'
145
- table-height="${args.tableHeight}"
146
- pagination="${args.pagination}"
147
- pagination-page-size="${args.paginationPageSize}"
148
- filter-orientation="${args.filterOrientation}">
149
- </ifx-table>`;
150
- return table;
175
+ if (args.filterOrientation === 'none') {
176
+ const table = `<ifx-table
177
+ row-height="${args.rowHeight}"
178
+ cols='${JSON.stringify(args.columnDefs)}'
179
+ rows='${JSON.stringify(args.rowData)}'
180
+ table-height="${args.tableHeight}"
181
+ pagination="${args.pagination}"
182
+ pagination-page-size="${args.paginationPageSize}"
183
+ filter-orientation="${args.filterOrientation}">
184
+ </ifx-table>`;
185
+ return table;
186
+ }
187
+ else {
188
+ //sidebar
189
+ const filterAccordions = args.columnDefs.map(column => {
190
+ const uniqueColValues = [...new Set(args.rowData.map(row => row[column.field]))];
191
+ const filterOptions = uniqueColValues.map((option, index) => {
192
+ return `<ifx-list-entry slot="slot${index}" label="${option}" value="false"></ifx-list-entry>`;
193
+ }).join('');
194
+ return `
195
+ <ifx-filter-accordion slot="filter-accordion" filter-group-name="${column.field}">
196
+ <ifx-list slot="list" type="checkbox" name="${column.field}" max-visible-items="6">
197
+ ${filterOptions}
198
+ </ifx-list>
199
+ </ifx-filter-accordion>
200
+ `;
201
+ }).join('');
202
+ //topbar
203
+ const filterComponents = args.columnDefs.map((column, index) => {
204
+ const uniqueColValues = [...new Set(args.rowData.map(row => row[column.field]))];
205
+ const options = uniqueColValues.map(option => ({
206
+ value: option,
207
+ label: option,
208
+ selected: false
209
+ }));
210
+ // Directly use JSON.stringify without replacing quotes
211
+ const optionsString = JSON.stringify(options);
212
+ return `
213
+ <ifx-set-filter slot="filter-component-${index + 1}"
214
+ options='${optionsString}'
215
+ filter-label='${column.headerName}'
216
+ filter-name='${column.field}'
217
+ type='multi-select'
218
+ search-enabled='true'>
219
+ </ifx-set-filter>
220
+ `;
221
+ }).join('\n');
222
+ const filterTypeGroupComponent = args.filterOrientation === 'sidebar'
223
+ ? `<ifx-filter-type-group slot="sidebar-filter">
224
+ <div slot="filter-search">
225
+ <ifx-filter-search filter-orientation="sidebar" filter-name="search"></ifx-filter-search>
226
+ </div>
227
+ ${filterAccordions}
228
+ </ifx-filter-type-group>`
229
+ :
230
+ `<ifx-filter-bar slot="topbar-filter" max-shown-filters="3">
231
+ <ifx-filter-search slot="filter-search" filter-orientation="topbar"></ifx-filter-search>
232
+ ${filterComponents}
233
+ </ifx-filter-bar>`;
234
+ const table = `<ifx-table
235
+ row-height="${args.rowHeight}"
236
+ cols='${JSON.stringify(args.columnDefs)}'
237
+ rows='${JSON.stringify(args.rowData)}'
238
+ table-height="${args.tableHeight}"
239
+ pagination="${args.pagination}"
240
+ pagination-page-size="${args.paginationPageSize}"
241
+ filter-orientation="${args.filterOrientation}">
242
+ ${filterTypeGroupComponent}
243
+ </ifx-table>`;
244
+ return table;
245
+ }
151
246
  };
152
247
  export const Pagination = DefaultTemplate.bind({});
153
248
  Pagination.args = {
@@ -186,11 +281,6 @@ SidebarFilter.args = {
186
281
  columnDefs: columnDefs,
187
282
  rowData: rowData,
188
283
  filterOrientation: 'sidebar',
189
- buttonRendererOptions: {
190
- onButtonClick: (params, event) => {
191
- console.log('Button clicked:', params, event);
192
- }
193
- }
194
284
  };
195
285
  export const TopbarFilter = DefaultTemplate.bind({});
196
286
  TopbarFilter.args = {
@@ -198,10 +288,5 @@ TopbarFilter.args = {
198
288
  columnDefs: columnDefs,
199
289
  rowData: rowData,
200
290
  filterOrientation: 'topbar',
201
- buttonRendererOptions: {
202
- onButtonClick: (params, event) => {
203
- console.log('Button clicked:', params, event);
204
- }
205
- }
206
291
  };
207
292
  //# sourceMappingURL=table.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.stories.js","sourceRoot":"","sources":["../../../src/components/table-advanced-version/table.stories.ts"],"names":[],"mappings":"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","sourcesContent":["const columnDefs = [\n { headerName: 'Make', field: 'make', sortable: true, sort: 'desc', unSortIcon: true },\n { headerName: 'Model', field: 'model', sortable: true, unSortIcon: true },\n { headerName: 'Price', field: 'price' },\n { headerName: 'Age', field: 'age' }\n];\n\nconst rowData = [\n { make: 'Toyota', model: 'Celica', price: 35000, age: 10 },\n { make: 'Ford', model: 'Mondeo', price: 32000, age: 12 },\n { make: 'Porsche', model: 'Boxster', price: 72000 },\n { make: 'Bmw', model: 'x', price: 72000 },\n { make: 'Mercedes', model: 'y', price: 72000 },\n { make: 'Ferrari', model: 'z', price: 72000 },\n { make: 'Chrysler', model: 'a', price: 72000 },\n { make: 'Range rover', model: 'b', price: 72000 },\n { make: 'Tesla', model: 'x', price: 72000 },\n { make: 'Audi', model: '3', price: 72000 },\n { make: 'Landrover', model: 'x', price: 72000 },\n];\n\nconst columnDefsWithButtonCol = [\n { headerName: 'Make', field: 'make', sortable: true, sort: 'desc', unSortIcon: true },\n { headerName: 'Model', field: 'model', sortable: true, unSortIcon: true },\n { headerName: 'Price', field: 'price' },\n { headerName: 'Age', field: 'age' },\n { \n headerName: '', \n field: 'button',\n }\n];\n\n\nconst rowDataWithButtonCol = [\n {\n make: 'Toyota', model: 'Celica', price: 35000, age: 10, button: {\n disabled: false,\n variant: \"secondary\",\n size: \"s\",\n target: \"_blank\",\n href: \"https://www.w3schools.com/\",\n theme: \"default\",\n type: \"button\",\n fullWidth: true,\n text: \"Toyota Button\"\n }\n },\n {\n make: 'Ford', model: 'Mondeo', price: 32000, age: 12, button: {\n disabled: false,\n variant: \"secondary\",\n size: \"s\",\n target: \"_blank\",\n href: \"https://www.w3schools.com/\",\n theme: \"default\",\n type: \"button\",\n fullWidth: true,\n text: \"Ford Button\"\n }\n },\n {\n make: 'Porsche', model: 'Boxster', price: 72000, button: {\n disabled: false,\n variant: \"secondary\",\n size: \"s\",\n target: \"_blank\",\n href: \"https://www.w3schools.com/\",\n theme: \"default\",\n type: \"button\",\n fullWidth: true,\n text: \"Porsche Button\"\n }\n }\n];\n \nexport default {\n title: 'Components/Table (advanced)',\n args: {\n tableHeight: 'auto',\n pagination: false,\n paginationPageSize: 10,\n currentPage: 1,\n rowHeight: 40,\n showLoading: false,\n buttonRendererOptions: {\n onButtonClick: (params, event) => {\n console.log('Button clicked:', params, event);\n }\n }\n },\n argTypes: {\n tableHeight: {\n table: {\n type: {\n summary: 'Options',\n detail: 'Default: \"auto\"\\nExample for fixed height: \"400px\"',\n }\n },\n },\n paginationPageSize: {\n description: \"Results per page: minimum 10 - maximum 30\",\n control: { type: 'number', min: 10, max: 30, step: 10 }\n },\n showLoading: {\n options: [true, false],\n control: { type: 'radio' },\n },\n rowHeight: {\n options: ['compact', 'default'],\n control: { type: 'radio' },\n },\n filterOrientation: {\n options: ['sidebar', 'topbar', 'none'],\n control: { type: 'radio' },\n },\n columnDefs: {\n table: {\n type: {\n summary: 'Column header options',\n detail: 'Standard columns:\\nheaderName: \"Model\", \\nfield: \"model\", \\nsortable: true (optional),\\nsort: \"desc\" (optional) => descending sort (show icon)\\nunSortIcon: true (optional) => unsorted (show icon)\\n\\nSpecial columns:\\nheaderName: \"\",\\nfield: \"button\"\\nheaderName: \"\",\\nfield: \"link\"',\n },\n },\n },\n rowData: {\n table: {\n type: {\n summary: 'Row data options',\n detail: 'Standard row values:\\nmake: \"Toyota\", \\nmodel: \"Celica\", \\nprice: 35000 \\n\\nSpecial row values (incl buttons):\\nmake: \"Porsche\",\\nmodel: \"Boxster\",\\nprice: \"72000\",\\nbutton: { \\ndisabled: false (optional),\\nvariant: \"outline\" (optional)\\nsize: \"s\" (optional),\\ntext: \"Button\"\\n...other ifx-button properties\\n}',\n },\n },\n },\n buttonRendererOptions: {\n control: 'object',\n description: 'Options for button cell renderer, including event handlers.',\n table: {\n type: {\n summary: 'Button Renderer Options',\n detail: 'Custom event handlers and other options for the button cell renderer in the table.'\n },\n },\n },\n }\n};\n\nconst DefaultTemplate = (args) => {\n const table = `\n <ifx-table\n row-height=\"${args.rowHeight}\"\n cols='${JSON.stringify(args.columnDefs)}'\n rows='${JSON.stringify(args.rowData)}'\n table-height=\"${args.tableHeight}\"\n pagination=\"${args.pagination}\"\n pagination-page-size=\"${args.paginationPageSize}\"\n filter-orientation=\"${args.filterOrientation}\">\n </ifx-table>`;\n return table;\n};\n\n\nexport const Pagination = DefaultTemplate.bind({});\nPagination.args = {\n pagination: true,\n paginationPageSize: 10,\n rowHeight: 'default',\n columnDefs: columnDefs,\n rowData: rowData,\n filterOrientation: 'none',\n};\n\n\nconst CustomCellTemplate = (args) => {\n const table = `\n <ifx-table\n row-height=\"${args.rowHeight}\"\n cols='${JSON.stringify(args.columnDefs)}'\n rows='${JSON.stringify(args.rowData)}'\n table-height=\"${args.tableHeight}\"\n pagination=\"${args.pagination}\"\n pagination-page-size=\"${args.paginationPageSize}\"\n filter-orientation=\"${args.filterOrientation}\">\n </ifx-table>`;\n return table;\n};\n\n\n\nexport const IncludesButtons = CustomCellTemplate.bind({});\nIncludesButtons.args = {\n rowHeight: 'default',\n columnDefs: columnDefsWithButtonCol,\n rowData: rowDataWithButtonCol,\n filterOrientation: 'none',\n pagination: false,\n paginationPageSize: 10,\n};\n\nexport const SidebarFilter = DefaultTemplate.bind({});\nSidebarFilter.args = {\n rowHeight: 'default',\n columnDefs: columnDefs,\n rowData: rowData,\n filterOrientation: 'sidebar',\n buttonRendererOptions: {\n onButtonClick: (params, event) => {\n console.log('Button clicked:', params, event);\n }\n }\n};\n\nexport const TopbarFilter = DefaultTemplate.bind({});\nTopbarFilter.args = {\n rowHeight: 'default',\n columnDefs: columnDefs,\n rowData: rowData,\n filterOrientation: 'topbar',\n buttonRendererOptions: {\n onButtonClick: (params, event) => {\n console.log('Button clicked:', params, event);\n }\n }\n};\n"]}
1
+ {"version":3,"file":"table.stories.js","sourceRoot":"","sources":["../../../src/components/table-advanced-version/table.stories.ts"],"names":[],"mappings":"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","sourcesContent":["const columnDefs = [\n { headerName: 'Make', field: 'make', sortable: true, sort: 'desc', unSortIcon: true },\n { headerName: 'Model', field: 'model', sortable: true, unSortIcon: true },\n { headerName: 'Price', field: 'price' },\n { headerName: 'Age', field: 'age' }\n];\n\nconst rowData = [\n { make: 'Toyota', model: 'Celica', price: 35000, age: 10 },\n { make: 'Ford', model: 'Mondeo', price: 32000, age: 12 },\n { make: 'Porsche', model: 'Boxster', price: 72000 },\n { make: 'Bmw', model: 'x', price: 72000 },\n { make: 'Mercedes', model: 'y', price: 72000 },\n { make: 'Ferrari', model: 'z', price: 72000 },\n { make: 'Chrysler', model: 'a', price: 72000 },\n { make: 'Range rover', model: 'b', price: 72000 },\n { make: 'Tesla', model: 'x', price: 72000 },\n { make: 'Audi', model: '3', price: 72000 },\n { make: 'Landrover', model: 'x', price: 72000 },\n];\n\nconst columnDefsWithButtonCol = [\n { headerName: 'Make', field: 'make', sortable: true, sort: 'desc', unSortIcon: true },\n { headerName: 'Model', field: 'model', sortable: true, unSortIcon: true },\n { headerName: 'Price', field: 'price' },\n { headerName: 'Age', field: 'age' },\n {\n headerName: '',\n field: 'button',\n }\n];\n\n\nconst rowDataWithButtonCol = [\n {\n make: 'Toyota', model: 'Celica', price: 35000, age: 10, button: {\n disabled: false,\n variant: \"secondary\",\n size: \"s\",\n target: \"_blank\",\n href: \"https://www.w3schools.com/\",\n theme: \"default\",\n type: \"button\",\n fullWidth: true,\n text: \"Toyota Button\"\n }\n },\n {\n make: 'Ford', model: 'Mondeo', price: 32000, age: 12, button: {\n disabled: false,\n variant: \"secondary\",\n size: \"s\",\n target: \"_blank\",\n href: \"https://www.w3schools.com/\",\n theme: \"default\",\n type: \"button\",\n fullWidth: true,\n text: \"Ford Button\"\n }\n },\n {\n make: 'Porsche', model: 'Boxster', price: 72000, button: {\n disabled: false,\n variant: \"secondary\",\n size: \"s\",\n target: \"_blank\",\n href: \"https://www.w3schools.com/\",\n theme: \"default\",\n type: \"button\",\n fullWidth: true,\n text: \"Porsche Button\"\n }\n }\n];\n\nexport default {\n title: 'Components/Table (advanced)',\n args: {\n tableHeight: 'auto',\n pagination: false,\n paginationPageSize: 10,\n rowHeight: 40,\n showLoading: false,\n },\n argTypes: {\n tableHeight: {\n description: 'Set the height of the table.',\n table: {\n category: 'ifx-table props',\n type: {\n summary: 'Options',\n detail: 'Default: \"auto\"\\nExample for fixed height: \"400px\"',\n }\n },\n },\n pagination: {\n description: 'Show pagination control.',\n control: { type: 'boolean' },\n table: {\n category: 'ifx-table props',\n defaultValue: {\n summary: true\n },\n type: {\n summary: 'Boolean',\n },\n },\n },\n paginationPageSize: {\n description: \"Results per page: minimum 10 - maximum 30.\",\n control: { type: 'number', min: 10, max: 30, step: 10 },\n table: {\n category: 'ifx-table props',\n defaultValue: {\n summary: 10\n },\n type: {\n summary: 'Number',\n },\n },\n },\n showLoading: {\n description: 'Show loading spinner.',\n options: [true, false],\n control: { type: 'radio' },\n table: {\n category: 'ifx-table props',\n defaultValue: {\n summary: false\n },\n },\n },\n rowHeight: {\n description: 'Set the height of the rows.',\n options: ['compact', 'default'],\n control: { type: 'radio' },\n table: {\n category: 'ifx-table props',\n defaultValue: {\n summary: 'default'\n },\n },\n },\n filterOrientation: {\n description: 'Set the filter orientation.',\n options: ['sidebar', 'topbar', 'none'],\n control: { type: 'radio' },\n table: {\n category: 'ifx-table props',\n defaultValue: {\n summary: 'none'\n },\n },\n },\n columnDefs: {\n description: 'Column header options',\n name: 'cols',\n table: {\n category: 'ifx-table props',\n type: {\n summary: 'Column header options',\n detail: 'Standard columns:\\nheaderName: \"Model\", \\nfield: \"model\", \\nsortable: true (optional),\\nsort: \"desc\" (optional) => descending sort (show icon)\\nunSortIcon: true (optional) => unsorted (show icon)\\n\\nSpecial columns:\\nheaderName: \"\",\\nfield: \"button\"\\nheaderName: \"\",\\nfield: \"link\"',\n },\n },\n },\n rowData: {\n description: 'Row data options',\n name: 'rows',\n table: {\n category: 'ifx-table props',\n type: {\n summary: 'Row data options',\n detail: 'Standard row values:\\nmake: \"Toyota\", \\nmodel: \"Celica\", \\nprice: 35000 \\n\\nSpecial row values (incl buttons):\\nmake: \"Porsche\",\\nmodel: \"Boxster\",\\nprice: \"72000\",\\nbutton: { \\ndisabled: false (optional),\\nvariant: \"outline\" (optional)\\nsize: \"s\" (optional),\\ntext: \"Button\"\\n...other ifx-button properties\\n}',\n },\n },\n },\n }\n};\n\n\n\nconst DefaultTemplate = (args) => {\n if (args.filterOrientation === 'none') {\n const table = `<ifx-table\n row-height=\"${args.rowHeight}\"\n cols='${JSON.stringify(args.columnDefs)}'\n rows='${JSON.stringify(args.rowData)}'\n table-height=\"${args.tableHeight}\"\n pagination=\"${args.pagination}\"\n pagination-page-size=\"${args.paginationPageSize}\"\n filter-orientation=\"${args.filterOrientation}\">\n</ifx-table>`;\n return table;\n } else {\n //sidebar\n const filterAccordions = args.columnDefs.map(column => {\n const uniqueColValues = [...new Set(args.rowData.map(row => row[column.field]))];\n const filterOptions = uniqueColValues.map((option, index) => {\n return `<ifx-list-entry slot=\"slot${index}\" label=\"${option}\" value=\"false\"></ifx-list-entry>`;\n }).join('');\n\n return `\n <ifx-filter-accordion slot=\"filter-accordion\" filter-group-name=\"${column.field}\">\n <ifx-list slot=\"list\" type=\"checkbox\" name=\"${column.field}\" max-visible-items=\"6\">\n ${filterOptions}\n </ifx-list>\n </ifx-filter-accordion>\n `;\n }).join('');\n\n //topbar\n const filterComponents = args.columnDefs.map((column, index) => {\n const uniqueColValues = [...new Set(args.rowData.map(row => row[column.field]))];\n const options = uniqueColValues.map(option => ({\n value: option,\n label: option,\n selected: false\n }));\n\n // Directly use JSON.stringify without replacing quotes\n const optionsString = JSON.stringify(options);\n\n return `\n <ifx-set-filter slot=\"filter-component-${index + 1}\"\n options='${optionsString}' \n filter-label='${column.headerName}'\n filter-name='${column.field}'\n type='multi-select'\n search-enabled='true'>\n </ifx-set-filter>\n `;\n }).join('\\n');\n\n\n\n const filterTypeGroupComponent = args.filterOrientation === 'sidebar'\n ? `<ifx-filter-type-group slot=\"sidebar-filter\">\n <div slot=\"filter-search\">\n <ifx-filter-search filter-orientation=\"sidebar\" filter-name=\"search\"></ifx-filter-search>\n </div>\n ${filterAccordions}\n </ifx-filter-type-group>`\n :\n `<ifx-filter-bar slot=\"topbar-filter\" max-shown-filters=\"3\">\n <ifx-filter-search slot=\"filter-search\" filter-orientation=\"topbar\"></ifx-filter-search>\n ${filterComponents}\n </ifx-filter-bar>`;\n\n const table = `<ifx-table\n row-height=\"${args.rowHeight}\"\n cols='${JSON.stringify(args.columnDefs)}'\n rows='${JSON.stringify(args.rowData)}'\n table-height=\"${args.tableHeight}\"\n pagination=\"${args.pagination}\"\n pagination-page-size=\"${args.paginationPageSize}\"\n filter-orientation=\"${args.filterOrientation}\">\n ${filterTypeGroupComponent}\n</ifx-table>`;\n\n return table;\n }\n};\n\n\n\nexport const Pagination = DefaultTemplate.bind({});\nPagination.args = {\n pagination: true,\n paginationPageSize: 10,\n rowHeight: 'default',\n columnDefs: columnDefs,\n rowData: rowData,\n filterOrientation: 'none',\n};\n\n\nconst CustomCellTemplate = (args) => {\n const table = `\n <ifx-table\n row-height=\"${args.rowHeight}\"\n cols='${JSON.stringify(args.columnDefs)}'\n rows='${JSON.stringify(args.rowData)}'\n table-height=\"${args.tableHeight}\"\n pagination=\"${args.pagination}\"\n pagination-page-size=\"${args.paginationPageSize}\"\n filter-orientation=\"${args.filterOrientation}\">\n </ifx-table>`;\n return table;\n};\n\n\n\nexport const IncludesButtons = CustomCellTemplate.bind({});\nIncludesButtons.args = {\n rowHeight: 'default',\n columnDefs: columnDefsWithButtonCol,\n rowData: rowDataWithButtonCol,\n filterOrientation: 'none',\n pagination: false,\n paginationPageSize: 10,\n};\n\nexport const SidebarFilter = DefaultTemplate.bind({});\nSidebarFilter.args = {\n rowHeight: 'default',\n columnDefs: columnDefs,\n rowData: rowData,\n filterOrientation: 'sidebar',\n};\n\nexport const TopbarFilter = DefaultTemplate.bind({});\nTopbarFilter.args = {\n rowHeight: 'default',\n columnDefs: columnDefs,\n rowData: rowData,\n filterOrientation: 'topbar',\n};\n"]}