@infineon/infineon-design-system-stencil 30.16.0--canary.1678.3b3f300a86308b7fca3d588253409a4a1695353c.0 → 31.0.0--canary.1697.75ba6c50a31eb82e52e6adb3444c01768f83dc24.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 (530) hide show
  1. package/dist/cjs/ifx-accordion_2.cjs.entry.js +1 -1
  2. package/dist/cjs/ifx-alert.cjs.entry.js +1 -1
  3. package/dist/cjs/ifx-badge.cjs.entry.js +1 -1
  4. package/dist/cjs/ifx-basic-table.cjs.entry.js +2 -2
  5. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +1 -1
  6. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js +1 -1
  7. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +1 -1
  8. package/dist/cjs/ifx-button.cjs.entry.js +1 -1
  9. package/dist/cjs/ifx-card-headline.cjs.entry.js +1 -1
  10. package/dist/cjs/ifx-card-image.cjs.entry.js +1 -1
  11. package/dist/cjs/ifx-card-links.cjs.entry.js +1 -1
  12. package/dist/cjs/ifx-card-overline.cjs.entry.js +1 -1
  13. package/dist/cjs/ifx-card-text.cjs.entry.js +1 -1
  14. package/dist/cjs/ifx-card.cjs.entry.js +1 -1
  15. package/dist/cjs/ifx-checkbox.cjs.entry.js +1 -1
  16. package/dist/cjs/ifx-chip_3.cjs.entry.js +8 -8
  17. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js +1 -1
  19. package/dist/cjs/ifx-content-switcher.cjs.entry.js +1 -1
  20. package/dist/cjs/ifx-date-picker.cjs.entry.js +1 -1
  21. package/dist/cjs/ifx-dropdown-header.cjs.entry.js +1 -1
  22. package/dist/cjs/ifx-dropdown-item.cjs.entry.js +1 -1
  23. package/dist/cjs/ifx-dropdown-menu.cjs.entry.js +1 -1
  24. package/dist/cjs/ifx-dropdown-separator.cjs.entry.js +1 -1
  25. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js +1 -1
  26. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js +1 -1
  27. package/dist/cjs/ifx-dropdown.cjs.entry.js +1 -1
  28. package/dist/cjs/ifx-faq.cjs.entry.js +2 -2
  29. package/dist/cjs/ifx-filter-accordion.cjs.entry.js +3 -3
  30. package/dist/cjs/ifx-filter-bar.cjs.entry.js +2 -2
  31. package/dist/cjs/ifx-filter-search.cjs.entry.js +2 -2
  32. package/dist/cjs/ifx-filter-type-group.cjs.entry.js +2 -2
  33. package/dist/cjs/ifx-footer-column.cjs.entry.js +1 -1
  34. package/dist/cjs/ifx-footer.cjs.entry.js +1 -1
  35. package/dist/cjs/ifx-icon-button.cjs.entry.js +1 -1
  36. package/dist/cjs/ifx-icon.cjs.entry.js +1 -1
  37. package/dist/cjs/ifx-icons-preview.cjs.entry.js +3 -3
  38. package/dist/cjs/ifx-icons-preview.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ifx-link.cjs.entry.js +3 -3
  40. package/dist/cjs/ifx-link.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ifx-list-entry.cjs.entry.js +2 -2
  42. package/dist/cjs/ifx-list.cjs.entry.js +1 -1
  43. package/dist/cjs/ifx-modal.cjs.entry.js +3 -3
  44. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +7 -20
  45. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ifx-navbar-item.cjs.entry.js +3 -3
  47. package/dist/cjs/ifx-navbar-profile.cjs.entry.js +4 -4
  48. package/dist/cjs/ifx-navbar.cjs.entry.js +4 -4
  49. package/dist/cjs/ifx-notification.cjs.entry.js +3 -3
  50. package/dist/cjs/ifx-number-indicator.cjs.entry.js +2 -2
  51. package/dist/cjs/ifx-overview-table.cjs.entry.js +2 -2
  52. package/dist/cjs/ifx-overview-table.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ifx-progress-bar.cjs.entry.js +2 -2
  54. package/dist/cjs/ifx-radio-button.cjs.entry.js +34 -71
  55. package/dist/cjs/ifx-radio-button.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ifx-search-bar.cjs.entry.js +2 -2
  57. package/dist/cjs/ifx-search-field.cjs.entry.js +2 -2
  58. package/dist/cjs/ifx-segment.cjs.entry.js +2 -2
  59. package/dist/cjs/ifx-segmented-control.cjs.entry.js +3 -3
  60. package/dist/cjs/ifx-select.cjs.entry.js +3 -3
  61. package/dist/cjs/ifx-set-filter.cjs.entry.js +1 -1
  62. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +7 -6
  63. package/dist/cjs/ifx-sidebar-item.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ifx-sidebar-title.cjs.entry.js +2 -2
  65. package/dist/cjs/ifx-sidebar.cjs.entry.js +6 -6
  66. package/dist/cjs/ifx-slider.cjs.entry.js +3 -3
  67. package/dist/cjs/ifx-spinner.cjs.entry.js +3 -3
  68. package/dist/cjs/ifx-status.cjs.entry.js +5 -7
  69. package/dist/cjs/ifx-status.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ifx-step.cjs.entry.js +5 -5
  71. package/dist/cjs/ifx-stepper.cjs.entry.js +3 -3
  72. package/dist/cjs/ifx-switch.cjs.entry.js +2 -2
  73. package/dist/cjs/ifx-tab.cjs.entry.js +2 -2
  74. package/dist/cjs/ifx-table.cjs.entry.js +3 -3
  75. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ifx-tabs.cjs.entry.js +3 -3
  77. package/dist/cjs/ifx-tag.cjs.entry.js +2 -2
  78. package/dist/cjs/ifx-textarea.cjs.entry.js +3 -3
  79. package/dist/cjs/ifx-tooltip.cjs.entry.js +5 -5
  80. package/dist/cjs/{index-68ed35ac.js → index-e489135e.js} +58 -65
  81. package/dist/cjs/index-e489135e.js.map +1 -0
  82. package/dist/cjs/infineon-design-system-stencil.cjs.js +3 -3
  83. package/dist/cjs/infineon-design-system-stencil.cjs.js.map +1 -1
  84. package/dist/cjs/loader.cjs.js +2 -2
  85. package/dist/collection/collection-manifest.json +1 -1
  86. package/dist/collection/components/icons-preview/icons-preview.css +0 -4
  87. package/dist/collection/components/icons-preview/icons-preview.js +1 -1
  88. package/dist/collection/components/icons-preview/icons-preview.js.map +1 -1
  89. package/dist/collection/components/link/link.css +0 -3
  90. package/dist/collection/components/link/link.js +1 -1
  91. package/dist/collection/components/modal/modal.js +2 -2
  92. package/dist/collection/components/navigation/navbar/navbar-item.js +2 -2
  93. package/dist/collection/components/navigation/navbar/navbar-profile.js +3 -3
  94. package/dist/collection/components/navigation/navbar/navbar.js +3 -3
  95. package/dist/collection/components/navigation/sidebar/sidebar-item.js +9 -8
  96. package/dist/collection/components/navigation/sidebar/sidebar-item.js.map +1 -1
  97. package/dist/collection/components/navigation/sidebar/sidebar-title.js +1 -1
  98. package/dist/collection/components/navigation/sidebar/sidebar.js +5 -5
  99. package/dist/collection/components/notification/notification.js +2 -2
  100. package/dist/collection/components/number-indicator/number-indicator.js +1 -1
  101. package/dist/collection/components/overview-table/overview-table.js +1 -1
  102. package/dist/collection/components/overview-table/overview-table.js.map +1 -1
  103. package/dist/collection/components/pagination/pagination.js +27 -8
  104. package/dist/collection/components/pagination/pagination.js.map +1 -1
  105. package/dist/collection/components/pagination/pagination.stories.js +2 -0
  106. package/dist/collection/components/pagination/pagination.stories.js.map +1 -1
  107. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  108. package/dist/collection/components/radio-button/radio-button.css +0 -13
  109. package/dist/collection/components/radio-button/radio-button.js +63 -87
  110. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  111. package/dist/collection/components/search-bar/search-bar.js +1 -1
  112. package/dist/collection/components/search-field/search-field.js +1 -1
  113. package/dist/collection/components/segmented-control/segment/segment.js +1 -1
  114. package/dist/collection/components/segmented-control/segmented-control.js +2 -2
  115. package/dist/collection/components/select/multi-select/multiselect.js +2 -15
  116. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  117. package/dist/collection/components/select/single-select/select.js +2 -2
  118. package/dist/collection/components/slider/slider.js +2 -2
  119. package/dist/collection/components/spinner/spinner.js +2 -2
  120. package/dist/collection/components/status/status.css +20 -140
  121. package/dist/collection/components/status/status.js +6 -8
  122. package/dist/collection/components/status/status.js.map +1 -1
  123. package/dist/collection/components/status/status.stories.js +3 -3
  124. package/dist/collection/components/status/status.stories.js.map +1 -1
  125. package/dist/collection/components/stepper/step/step.js +4 -4
  126. package/dist/collection/components/stepper/stepper.js +2 -2
  127. package/dist/collection/components/switch/switch.js +1 -1
  128. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js +1 -1
  129. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js +2 -2
  130. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js +1 -1
  131. package/dist/collection/components/table-advanced-version/filter-type-group/filter-type-group.js +1 -1
  132. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js +1 -1
  133. package/dist/collection/components/table-advanced-version/table.js +2 -2
  134. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  135. package/dist/collection/components/table-basic-version/table.js +1 -1
  136. package/dist/collection/components/tabs/tab.js +1 -1
  137. package/dist/collection/components/tabs/tabs.js +2 -2
  138. package/dist/collection/components/tag/tag.js +1 -1
  139. package/dist/collection/components/text-field/text-field.js +4 -4
  140. package/dist/collection/components/textarea/textarea.js +2 -2
  141. package/dist/collection/components/tooltip/tooltip.js +4 -4
  142. package/dist/collection/stories/setup-and-installation/faq/faq.js +1 -1
  143. package/dist/components/ifx-accordion-item.js +1 -1
  144. package/dist/components/ifx-accordion.js +1 -1
  145. package/dist/components/ifx-alert.js +2 -2
  146. package/dist/components/ifx-badge.js +1 -1
  147. package/dist/components/ifx-basic-table.js +2 -2
  148. package/dist/components/ifx-breadcrumb-item-label.js +2 -2
  149. package/dist/components/ifx-breadcrumb-item.js +1 -1
  150. package/dist/components/ifx-breadcrumb.js +1 -1
  151. package/dist/components/ifx-button.js +1 -1
  152. package/dist/components/ifx-card-headline.js +1 -1
  153. package/dist/components/ifx-card-image.js +1 -1
  154. package/dist/components/ifx-card-links.js +1 -1
  155. package/dist/components/ifx-card-overline.js +1 -1
  156. package/dist/components/ifx-card-text.js +1 -1
  157. package/dist/components/ifx-card.js +1 -1
  158. package/dist/components/ifx-checkbox.js +1 -1
  159. package/dist/components/ifx-chip-item.js +1 -1
  160. package/dist/components/ifx-chip.js +1 -1
  161. package/dist/components/ifx-content-switcher-item.js +1 -1
  162. package/dist/components/ifx-content-switcher.js +1 -1
  163. package/dist/components/ifx-date-picker.js +2 -2
  164. package/dist/components/ifx-dropdown-header.js +1 -1
  165. package/dist/components/ifx-dropdown-item.js +2 -2
  166. package/dist/components/ifx-dropdown-menu.js +1 -1
  167. package/dist/components/ifx-dropdown-separator.js +1 -1
  168. package/dist/components/ifx-dropdown-trigger-button.js +3 -3
  169. package/dist/components/ifx-dropdown-trigger.js +1 -1
  170. package/dist/components/ifx-dropdown.js +1 -1
  171. package/dist/components/ifx-faq.js +5 -5
  172. package/dist/components/ifx-filter-accordion.js +5 -5
  173. package/dist/components/ifx-filter-bar.js +4 -4
  174. package/dist/components/ifx-filter-search.js +4 -4
  175. package/dist/components/ifx-filter-type-group.js +2 -2
  176. package/dist/components/ifx-footer-column.js +1 -1
  177. package/dist/components/ifx-footer.js +1 -1
  178. package/dist/components/ifx-icon-button.js +1 -1
  179. package/dist/components/ifx-icon.js +1 -1
  180. package/dist/components/ifx-icons-preview.js +5 -17
  181. package/dist/components/ifx-icons-preview.js.map +1 -1
  182. package/dist/components/ifx-link.js +1 -1
  183. package/dist/components/ifx-list-entry.js +5 -5
  184. package/dist/components/ifx-list.js +3 -3
  185. package/dist/components/ifx-modal.js +5 -5
  186. package/dist/components/ifx-multiselect.js +1 -1
  187. package/dist/components/ifx-navbar-item.js +4 -4
  188. package/dist/components/ifx-navbar-profile.js +4 -4
  189. package/dist/components/ifx-navbar.js +5 -5
  190. package/dist/components/ifx-notification.js +62 -1
  191. package/dist/components/ifx-notification.js.map +1 -1
  192. package/dist/components/ifx-number-indicator.js +1 -1
  193. package/dist/components/ifx-overview-table.js +5 -5
  194. package/dist/components/ifx-overview-table.js.map +1 -1
  195. package/dist/components/ifx-pagination.js +1 -1
  196. package/dist/components/ifx-progress-bar.js +2 -2
  197. package/dist/components/ifx-radio-button.js +1 -1
  198. package/dist/components/ifx-search-bar.js +4 -4
  199. package/dist/components/ifx-search-field.js +1 -1
  200. package/dist/components/ifx-segment.js +3 -3
  201. package/dist/components/ifx-segmented-control.js +4 -4
  202. package/dist/components/ifx-select.js +1 -1
  203. package/dist/components/ifx-set-filter.js +7 -7
  204. package/dist/components/ifx-sidebar-item.js +10 -9
  205. package/dist/components/ifx-sidebar-item.js.map +1 -1
  206. package/dist/components/ifx-sidebar-title.js +2 -2
  207. package/dist/components/ifx-sidebar.js +6 -6
  208. package/dist/components/ifx-slider.js +4 -4
  209. package/dist/components/ifx-spinner.js +3 -3
  210. package/dist/components/ifx-status.js +5 -7
  211. package/dist/components/ifx-status.js.map +1 -1
  212. package/dist/components/ifx-step.js +6 -6
  213. package/dist/components/ifx-stepper.js +3 -3
  214. package/dist/components/ifx-switch.js +2 -2
  215. package/dist/components/ifx-tab.js +2 -2
  216. package/dist/components/ifx-table.js +12 -12
  217. package/dist/components/ifx-table.js.map +1 -1
  218. package/dist/components/ifx-tabs.js +4 -4
  219. package/dist/components/ifx-tag.js +3 -3
  220. package/dist/components/ifx-text-field.js +1 -1
  221. package/dist/components/ifx-textarea.js +3 -3
  222. package/dist/components/ifx-tooltip.js +6 -6
  223. package/dist/components/index.js +1 -1
  224. package/dist/components/{p-e8836259.js → p-17926343.js} +4 -4
  225. package/dist/components/p-17926343.js.map +1 -0
  226. package/dist/components/{p-ff48962a.js → p-1ab9570f.js} +3 -3
  227. package/dist/components/{p-ff48962a.js.map → p-1ab9570f.js.map} +1 -1
  228. package/dist/components/{p-0fce434b.js → p-280ced72.js} +4 -4
  229. package/dist/components/{p-0fce434b.js.map → p-280ced72.js.map} +1 -1
  230. package/dist/components/{p-ec9d64bf.js → p-28238f7f.js} +3 -3
  231. package/dist/components/{p-ec9d64bf.js.map → p-28238f7f.js.map} +1 -1
  232. package/dist/components/{p-3ee20ed5.js → p-35713bcf.js} +28 -35
  233. package/dist/components/p-35713bcf.js.map +1 -0
  234. package/dist/components/{p-f4d50678.js → p-3cbe9ffe.js} +7 -7
  235. package/dist/components/{p-f4d50678.js.map → p-3cbe9ffe.js.map} +1 -1
  236. package/dist/components/{p-e74c8dfd.js → p-3eb62a9b.js} +3 -3
  237. package/dist/components/{p-e74c8dfd.js.map → p-3eb62a9b.js.map} +1 -1
  238. package/dist/components/{p-e57d6c00.js → p-529e994b.js} +4 -4
  239. package/dist/components/{p-e57d6c00.js.map → p-529e994b.js.map} +1 -1
  240. package/dist/components/{p-1bb86196.js → p-77dbb05d.js} +5 -5
  241. package/dist/components/{p-1bb86196.js.map → p-77dbb05d.js.map} +1 -1
  242. package/dist/components/{p-73a1df17.js → p-920ceb71.js} +2 -2
  243. package/dist/components/{p-73a1df17.js.map → p-920ceb71.js.map} +1 -1
  244. package/dist/components/{p-5bc6d67d.js → p-af1f8464.js} +2 -2
  245. package/dist/components/{p-5bc6d67d.js.map → p-af1f8464.js.map} +1 -1
  246. package/dist/components/{p-9c024a54.js → p-b2de2441.js} +4 -4
  247. package/dist/components/{p-9c024a54.js.map → p-b2de2441.js.map} +1 -1
  248. package/dist/components/{p-d3904b2f.js → p-b901072e.js} +7 -20
  249. package/dist/components/p-b901072e.js.map +1 -0
  250. package/dist/components/{p-654ff7d8.js → p-c194f64d.js} +2 -2
  251. package/dist/components/{p-654ff7d8.js.map → p-c194f64d.js.map} +1 -1
  252. package/dist/components/{p-6fd6d1a9.js → p-eab00c46.js} +3 -3
  253. package/dist/components/{p-6fd6d1a9.js.map → p-eab00c46.js.map} +1 -1
  254. package/dist/components/{p-af26dfa2.js → p-eea28614.js} +14 -13
  255. package/dist/components/p-eea28614.js.map +1 -0
  256. package/dist/components/{p-828bbb25.js → p-eee401ca.js} +2 -2
  257. package/dist/components/{p-828bbb25.js.map → p-eee401ca.js.map} +1 -1
  258. package/dist/components/p-ff4327c2.js +95 -0
  259. package/dist/components/p-ff4327c2.js.map +1 -0
  260. package/dist/esm/ifx-accordion_2.entry.js +1 -1
  261. package/dist/esm/ifx-alert.entry.js +1 -1
  262. package/dist/esm/ifx-badge.entry.js +1 -1
  263. package/dist/esm/ifx-basic-table.entry.js +2 -2
  264. package/dist/esm/ifx-breadcrumb-item-label.entry.js +1 -1
  265. package/dist/esm/ifx-breadcrumb-item.entry.js +1 -1
  266. package/dist/esm/ifx-breadcrumb.entry.js +1 -1
  267. package/dist/esm/ifx-button.entry.js +1 -1
  268. package/dist/esm/ifx-card-headline.entry.js +1 -1
  269. package/dist/esm/ifx-card-image.entry.js +1 -1
  270. package/dist/esm/ifx-card-links.entry.js +1 -1
  271. package/dist/esm/ifx-card-overline.entry.js +1 -1
  272. package/dist/esm/ifx-card-text.entry.js +1 -1
  273. package/dist/esm/ifx-card.entry.js +1 -1
  274. package/dist/esm/ifx-checkbox.entry.js +1 -1
  275. package/dist/esm/ifx-chip_3.entry.js +8 -8
  276. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  277. package/dist/esm/ifx-content-switcher-item.entry.js +1 -1
  278. package/dist/esm/ifx-content-switcher.entry.js +1 -1
  279. package/dist/esm/ifx-date-picker.entry.js +1 -1
  280. package/dist/esm/ifx-dropdown-header.entry.js +1 -1
  281. package/dist/esm/ifx-dropdown-item.entry.js +1 -1
  282. package/dist/esm/ifx-dropdown-menu.entry.js +1 -1
  283. package/dist/esm/ifx-dropdown-separator.entry.js +1 -1
  284. package/dist/esm/ifx-dropdown-trigger-button.entry.js +1 -1
  285. package/dist/esm/ifx-dropdown-trigger.entry.js +1 -1
  286. package/dist/esm/ifx-dropdown.entry.js +1 -1
  287. package/dist/esm/ifx-faq.entry.js +2 -2
  288. package/dist/esm/ifx-filter-accordion.entry.js +3 -3
  289. package/dist/esm/ifx-filter-bar.entry.js +2 -2
  290. package/dist/esm/ifx-filter-search.entry.js +2 -2
  291. package/dist/esm/ifx-filter-type-group.entry.js +2 -2
  292. package/dist/esm/ifx-footer-column.entry.js +1 -1
  293. package/dist/esm/ifx-footer.entry.js +1 -1
  294. package/dist/esm/ifx-icon-button.entry.js +1 -1
  295. package/dist/esm/ifx-icon.entry.js +1 -1
  296. package/dist/esm/ifx-icons-preview.entry.js +3 -3
  297. package/dist/esm/ifx-icons-preview.entry.js.map +1 -1
  298. package/dist/esm/ifx-link.entry.js +3 -3
  299. package/dist/esm/ifx-link.entry.js.map +1 -1
  300. package/dist/esm/ifx-list-entry.entry.js +2 -2
  301. package/dist/esm/ifx-list.entry.js +1 -1
  302. package/dist/esm/ifx-modal.entry.js +3 -3
  303. package/dist/esm/ifx-multiselect_2.entry.js +7 -20
  304. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -1
  305. package/dist/esm/ifx-navbar-item.entry.js +3 -3
  306. package/dist/esm/ifx-navbar-profile.entry.js +4 -4
  307. package/dist/esm/ifx-navbar.entry.js +4 -4
  308. package/dist/esm/ifx-notification.entry.js +3 -3
  309. package/dist/esm/ifx-number-indicator.entry.js +2 -2
  310. package/dist/esm/ifx-overview-table.entry.js +2 -2
  311. package/dist/esm/ifx-overview-table.entry.js.map +1 -1
  312. package/dist/esm/ifx-progress-bar.entry.js +2 -2
  313. package/dist/esm/ifx-radio-button.entry.js +34 -71
  314. package/dist/esm/ifx-radio-button.entry.js.map +1 -1
  315. package/dist/esm/ifx-search-bar.entry.js +2 -2
  316. package/dist/esm/ifx-search-field.entry.js +2 -2
  317. package/dist/esm/ifx-segment.entry.js +2 -2
  318. package/dist/esm/ifx-segmented-control.entry.js +3 -3
  319. package/dist/esm/ifx-select.entry.js +3 -3
  320. package/dist/esm/ifx-set-filter.entry.js +1 -1
  321. package/dist/esm/ifx-sidebar-item.entry.js +7 -6
  322. package/dist/esm/ifx-sidebar-item.entry.js.map +1 -1
  323. package/dist/esm/ifx-sidebar-title.entry.js +2 -2
  324. package/dist/esm/ifx-sidebar.entry.js +6 -6
  325. package/dist/esm/ifx-slider.entry.js +3 -3
  326. package/dist/esm/ifx-spinner.entry.js +3 -3
  327. package/dist/esm/ifx-status.entry.js +5 -7
  328. package/dist/esm/ifx-status.entry.js.map +1 -1
  329. package/dist/esm/ifx-step.entry.js +5 -5
  330. package/dist/esm/ifx-stepper.entry.js +3 -3
  331. package/dist/esm/ifx-switch.entry.js +2 -2
  332. package/dist/esm/ifx-tab.entry.js +2 -2
  333. package/dist/esm/ifx-table.entry.js +3 -3
  334. package/dist/esm/ifx-table.entry.js.map +1 -1
  335. package/dist/esm/ifx-tabs.entry.js +3 -3
  336. package/dist/esm/ifx-tag.entry.js +2 -2
  337. package/dist/esm/ifx-textarea.entry.js +3 -3
  338. package/dist/esm/ifx-tooltip.entry.js +5 -5
  339. package/dist/esm/{index-f6e95f3d.js → index-12dad3f6.js} +58 -65
  340. package/dist/esm/index-12dad3f6.js.map +1 -0
  341. package/dist/esm/infineon-design-system-stencil.js +4 -4
  342. package/dist/esm/infineon-design-system-stencil.js.map +1 -1
  343. package/dist/esm/loader.js +3 -3
  344. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  345. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js.map +1 -1
  346. package/dist/infineon-design-system-stencil/{p-3f5c3424.entry.js → p-0179cb3c.entry.js} +2 -2
  347. package/dist/infineon-design-system-stencil/{p-0b79cb38.entry.js → p-0238f780.entry.js} +2 -2
  348. package/dist/infineon-design-system-stencil/p-04cb8ce1.entry.js +2 -0
  349. package/dist/infineon-design-system-stencil/{p-03f5d7d6.entry.js → p-095df841.entry.js} +2 -2
  350. package/dist/infineon-design-system-stencil/p-0acaa8e4.entry.js +2 -0
  351. package/dist/infineon-design-system-stencil/p-0acaa8e4.entry.js.map +1 -0
  352. package/dist/infineon-design-system-stencil/{p-6c18926e.entry.js → p-0b58a27a.entry.js} +2 -2
  353. package/dist/infineon-design-system-stencil/p-0d620279.entry.js +2 -0
  354. package/dist/infineon-design-system-stencil/p-0d620279.entry.js.map +1 -0
  355. package/dist/infineon-design-system-stencil/{p-62c705f1.entry.js → p-11580775.entry.js} +2 -2
  356. package/dist/infineon-design-system-stencil/{p-01a1f6d0.entry.js → p-14ef505d.entry.js} +2 -2
  357. package/dist/infineon-design-system-stencil/p-1548797e.entry.js +2 -0
  358. package/dist/infineon-design-system-stencil/{p-33f5c7b8.entry.js → p-16390b05.entry.js} +2 -2
  359. package/dist/infineon-design-system-stencil/p-18490394.entry.js +2 -0
  360. package/dist/infineon-design-system-stencil/p-18490394.entry.js.map +1 -0
  361. package/dist/infineon-design-system-stencil/{p-6f3d22bb.entry.js → p-1a4d8854.entry.js} +2 -2
  362. package/dist/infineon-design-system-stencil/p-1a4d8854.entry.js.map +1 -0
  363. package/dist/infineon-design-system-stencil/{p-234d0bed.entry.js → p-1ce3acf6.entry.js} +2 -2
  364. package/dist/infineon-design-system-stencil/{p-5a3c5cce.entry.js → p-1cf0cd6c.entry.js} +2 -2
  365. package/dist/infineon-design-system-stencil/{p-cb3a70ad.entry.js → p-1d2f0317.entry.js} +2 -2
  366. package/dist/infineon-design-system-stencil/{p-598ec153.entry.js → p-23c0b40c.entry.js} +2 -2
  367. package/dist/infineon-design-system-stencil/p-26dfd238.entry.js +2 -0
  368. package/dist/infineon-design-system-stencil/{p-814da9fd.entry.js → p-2bae45cd.entry.js} +2 -2
  369. package/dist/infineon-design-system-stencil/{p-1f0bc888.entry.js → p-385a8dea.entry.js} +2 -2
  370. package/dist/infineon-design-system-stencil/{p-392f1655.entry.js → p-3ddd67ce.entry.js} +2 -2
  371. package/dist/infineon-design-system-stencil/{p-3b02b076.entry.js → p-452b2e42.entry.js} +2 -2
  372. package/dist/infineon-design-system-stencil/{p-1fad8ea5.entry.js → p-45cd79e4.entry.js} +2 -2
  373. package/dist/infineon-design-system-stencil/{p-1f004047.entry.js → p-49939261.entry.js} +2 -2
  374. package/dist/infineon-design-system-stencil/{p-a2f7459e.entry.js → p-4baf201d.entry.js} +2 -2
  375. package/dist/infineon-design-system-stencil/p-4cfae291.entry.js +2 -0
  376. package/dist/infineon-design-system-stencil/p-4cfae291.entry.js.map +1 -0
  377. package/dist/infineon-design-system-stencil/{p-4bf95d5b.entry.js → p-4fdb13ec.entry.js} +2 -2
  378. package/dist/infineon-design-system-stencil/{p-c85d7577.entry.js → p-52b61a69.entry.js} +2 -2
  379. package/dist/infineon-design-system-stencil/{p-347a1e85.entry.js → p-5729d495.entry.js} +3 -3
  380. package/dist/infineon-design-system-stencil/{p-2f12adbc.entry.js → p-58a4d36f.entry.js} +2 -2
  381. package/dist/infineon-design-system-stencil/{p-3af201db.entry.js → p-5916cb5c.entry.js} +2 -2
  382. package/dist/infineon-design-system-stencil/p-5f5ccef2.entry.js +2 -0
  383. package/dist/infineon-design-system-stencil/{p-b3882dc0.entry.js → p-618c5232.entry.js} +2 -2
  384. package/dist/infineon-design-system-stencil/{p-c6ff49d7.entry.js → p-63f09820.entry.js} +2 -2
  385. package/dist/infineon-design-system-stencil/{p-0fdd8cca.entry.js → p-6777690c.entry.js} +2 -2
  386. package/dist/infineon-design-system-stencil/{p-c7607cbd.entry.js → p-6bbc85ef.entry.js} +2 -2
  387. package/dist/infineon-design-system-stencil/{p-e2ad853d.entry.js → p-6d55468a.entry.js} +2 -2
  388. package/dist/infineon-design-system-stencil/{p-b120a552.entry.js → p-77fbff19.entry.js} +2 -2
  389. package/dist/infineon-design-system-stencil/p-7a85d6bb.entry.js +2 -0
  390. package/dist/infineon-design-system-stencil/p-7a85d6bb.entry.js.map +1 -0
  391. package/dist/infineon-design-system-stencil/{p-4faad7d7.entry.js → p-7dbec7ce.entry.js} +2 -2
  392. package/dist/infineon-design-system-stencil/{p-4349f994.entry.js → p-82992baa.entry.js} +2 -2
  393. package/dist/infineon-design-system-stencil/{p-3384179d.entry.js → p-83d10d57.entry.js} +2 -2
  394. package/dist/infineon-design-system-stencil/{p-f20951d0.entry.js → p-83ef99a2.entry.js} +2 -2
  395. package/dist/infineon-design-system-stencil/{p-934704d9.entry.js → p-85b61d98.entry.js} +2 -2
  396. package/dist/infineon-design-system-stencil/{p-7a0b2fd1.entry.js → p-892ef42f.entry.js} +2 -2
  397. package/dist/infineon-design-system-stencil/{p-d61ab729.entry.js → p-89651a48.entry.js} +2 -2
  398. package/dist/infineon-design-system-stencil/p-89651a48.entry.js.map +1 -0
  399. package/dist/infineon-design-system-stencil/{p-f63ce1bc.entry.js → p-9a76c9c5.entry.js} +2 -2
  400. package/dist/infineon-design-system-stencil/{p-82f9da03.entry.js → p-9adea907.entry.js} +2 -2
  401. package/dist/infineon-design-system-stencil/p-9b61ae4f.entry.js +2 -0
  402. package/dist/infineon-design-system-stencil/{p-d57b5e31.entry.js.map → p-9b61ae4f.entry.js.map} +1 -1
  403. package/dist/infineon-design-system-stencil/{p-258c4e35.entry.js → p-9d99d0f2.entry.js} +2 -2
  404. package/dist/infineon-design-system-stencil/{p-f9bf9346.entry.js → p-a3c2cbe0.entry.js} +2 -2
  405. package/dist/infineon-design-system-stencil/{p-e7b63ab1.entry.js → p-a7e94e8b.entry.js} +2 -2
  406. package/dist/infineon-design-system-stencil/{p-e7b63ab1.entry.js.map → p-a7e94e8b.entry.js.map} +1 -1
  407. package/dist/infineon-design-system-stencil/p-a9c13b65.entry.js +2 -0
  408. package/dist/infineon-design-system-stencil/{p-fb455026.entry.js.map → p-a9c13b65.entry.js.map} +1 -1
  409. package/dist/infineon-design-system-stencil/{p-d8cc865a.entry.js → p-abb7c842.entry.js} +2 -2
  410. package/dist/infineon-design-system-stencil/{p-d2630254.entry.js → p-accaa79e.entry.js} +2 -2
  411. package/dist/infineon-design-system-stencil/{p-c2ff66ea.entry.js → p-b27a47fe.entry.js} +2 -2
  412. package/dist/infineon-design-system-stencil/{p-98c50956.entry.js → p-c5a54d87.entry.js} +2 -2
  413. package/dist/infineon-design-system-stencil/p-c63974da.js +3 -0
  414. package/dist/infineon-design-system-stencil/p-c63974da.js.map +1 -0
  415. package/dist/infineon-design-system-stencil/{p-aa5f89b6.entry.js → p-cb2bfd10.entry.js} +2 -2
  416. package/dist/infineon-design-system-stencil/{p-1ad03102.entry.js → p-cb5f03cc.entry.js} +2 -2
  417. package/dist/infineon-design-system-stencil/{p-12db6350.entry.js → p-cde478c3.entry.js} +2 -2
  418. package/dist/infineon-design-system-stencil/p-d93f128c.entry.js +2 -0
  419. package/dist/infineon-design-system-stencil/{p-22496889.entry.js.map → p-d93f128c.entry.js.map} +1 -1
  420. package/dist/infineon-design-system-stencil/{p-c646ffcc.entry.js → p-d9553320.entry.js} +2 -2
  421. package/dist/infineon-design-system-stencil/{p-500bc0ed.entry.js → p-da6efe6b.entry.js} +2 -2
  422. package/dist/infineon-design-system-stencil/p-dd5b5ec5.entry.js +2 -0
  423. package/dist/infineon-design-system-stencil/{p-672bcd0b.entry.js.map → p-dd5b5ec5.entry.js.map} +1 -1
  424. package/dist/infineon-design-system-stencil/{p-85468723.entry.js → p-e52d0b1a.entry.js} +2 -2
  425. package/dist/infineon-design-system-stencil/p-e7e87a4a.entry.js +2 -0
  426. package/dist/infineon-design-system-stencil/p-f36ba7ae.entry.js +2 -0
  427. package/dist/infineon-design-system-stencil/{p-eeccb158.entry.js → p-f4d00e57.entry.js} +2 -2
  428. package/dist/infineon-design-system-stencil/p-fdbb53b3.entry.js +2 -0
  429. package/dist/infineon-design-system-stencil/p-fdbb53b3.entry.js.map +1 -0
  430. package/dist/infineon-design-system-stencil/{p-88bd6a1e.entry.js → p-ff6f111d.entry.js} +2 -2
  431. package/dist/types/components/navigation/sidebar/sidebar-item.d.ts +1 -1
  432. package/dist/types/components/pagination/pagination.d.ts +2 -1
  433. package/dist/types/components/pagination/pagination.stories.d.ts +1 -0
  434. package/dist/types/components/radio-button/radio-button.d.ts +19 -9
  435. package/dist/types/components/status/status.d.ts +1 -1
  436. package/dist/types/components.d.ts +10 -4
  437. package/package.json +1 -1
  438. package/dist/cjs/index-68ed35ac.js.map +0 -1
  439. package/dist/components/p-232d5fcd.js +0 -66
  440. package/dist/components/p-232d5fcd.js.map +0 -1
  441. package/dist/components/p-3ee20ed5.js.map +0 -1
  442. package/dist/components/p-a0ee8035.js +0 -134
  443. package/dist/components/p-a0ee8035.js.map +0 -1
  444. package/dist/components/p-af26dfa2.js.map +0 -1
  445. package/dist/components/p-d3904b2f.js.map +0 -1
  446. package/dist/components/p-e8836259.js.map +0 -1
  447. package/dist/esm/index-f6e95f3d.js.map +0 -1
  448. package/dist/infineon-design-system-stencil/p-0f04de55.entry.js +0 -2
  449. package/dist/infineon-design-system-stencil/p-0f04de55.entry.js.map +0 -1
  450. package/dist/infineon-design-system-stencil/p-22496889.entry.js +0 -2
  451. package/dist/infineon-design-system-stencil/p-39fb5fb9.entry.js +0 -2
  452. package/dist/infineon-design-system-stencil/p-39fb5fb9.entry.js.map +0 -1
  453. package/dist/infineon-design-system-stencil/p-407c4329.entry.js +0 -2
  454. package/dist/infineon-design-system-stencil/p-407c4329.entry.js.map +0 -1
  455. package/dist/infineon-design-system-stencil/p-53e75622.entry.js +0 -2
  456. package/dist/infineon-design-system-stencil/p-5acdecf6.entry.js +0 -2
  457. package/dist/infineon-design-system-stencil/p-5acdecf6.entry.js.map +0 -1
  458. package/dist/infineon-design-system-stencil/p-672bcd0b.entry.js +0 -2
  459. package/dist/infineon-design-system-stencil/p-6c89883f.entry.js +0 -2
  460. package/dist/infineon-design-system-stencil/p-6f3d22bb.entry.js.map +0 -1
  461. package/dist/infineon-design-system-stencil/p-8df0dd12.entry.js +0 -2
  462. package/dist/infineon-design-system-stencil/p-8df0dd12.entry.js.map +0 -1
  463. package/dist/infineon-design-system-stencil/p-96e3c31e.entry.js +0 -2
  464. package/dist/infineon-design-system-stencil/p-96e3c31e.entry.js.map +0 -1
  465. package/dist/infineon-design-system-stencil/p-abba423a.entry.js +0 -2
  466. package/dist/infineon-design-system-stencil/p-b37f692b.entry.js +0 -2
  467. package/dist/infineon-design-system-stencil/p-d57b5e31.entry.js +0 -2
  468. package/dist/infineon-design-system-stencil/p-d61ab729.entry.js.map +0 -1
  469. package/dist/infineon-design-system-stencil/p-e07ca773.entry.js +0 -2
  470. package/dist/infineon-design-system-stencil/p-e244bae4.js +0 -3
  471. package/dist/infineon-design-system-stencil/p-e244bae4.js.map +0 -1
  472. package/dist/infineon-design-system-stencil/p-f42bc9c8.entry.js +0 -2
  473. package/dist/infineon-design-system-stencil/p-fb455026.entry.js +0 -2
  474. /package/dist/infineon-design-system-stencil/{p-3f5c3424.entry.js.map → p-0179cb3c.entry.js.map} +0 -0
  475. /package/dist/infineon-design-system-stencil/{p-0b79cb38.entry.js.map → p-0238f780.entry.js.map} +0 -0
  476. /package/dist/infineon-design-system-stencil/{p-e07ca773.entry.js.map → p-04cb8ce1.entry.js.map} +0 -0
  477. /package/dist/infineon-design-system-stencil/{p-03f5d7d6.entry.js.map → p-095df841.entry.js.map} +0 -0
  478. /package/dist/infineon-design-system-stencil/{p-6c18926e.entry.js.map → p-0b58a27a.entry.js.map} +0 -0
  479. /package/dist/infineon-design-system-stencil/{p-62c705f1.entry.js.map → p-11580775.entry.js.map} +0 -0
  480. /package/dist/infineon-design-system-stencil/{p-01a1f6d0.entry.js.map → p-14ef505d.entry.js.map} +0 -0
  481. /package/dist/infineon-design-system-stencil/{p-53e75622.entry.js.map → p-1548797e.entry.js.map} +0 -0
  482. /package/dist/infineon-design-system-stencil/{p-33f5c7b8.entry.js.map → p-16390b05.entry.js.map} +0 -0
  483. /package/dist/infineon-design-system-stencil/{p-234d0bed.entry.js.map → p-1ce3acf6.entry.js.map} +0 -0
  484. /package/dist/infineon-design-system-stencil/{p-5a3c5cce.entry.js.map → p-1cf0cd6c.entry.js.map} +0 -0
  485. /package/dist/infineon-design-system-stencil/{p-cb3a70ad.entry.js.map → p-1d2f0317.entry.js.map} +0 -0
  486. /package/dist/infineon-design-system-stencil/{p-598ec153.entry.js.map → p-23c0b40c.entry.js.map} +0 -0
  487. /package/dist/infineon-design-system-stencil/{p-f42bc9c8.entry.js.map → p-26dfd238.entry.js.map} +0 -0
  488. /package/dist/infineon-design-system-stencil/{p-814da9fd.entry.js.map → p-2bae45cd.entry.js.map} +0 -0
  489. /package/dist/infineon-design-system-stencil/{p-1f0bc888.entry.js.map → p-385a8dea.entry.js.map} +0 -0
  490. /package/dist/infineon-design-system-stencil/{p-392f1655.entry.js.map → p-3ddd67ce.entry.js.map} +0 -0
  491. /package/dist/infineon-design-system-stencil/{p-3b02b076.entry.js.map → p-452b2e42.entry.js.map} +0 -0
  492. /package/dist/infineon-design-system-stencil/{p-1fad8ea5.entry.js.map → p-45cd79e4.entry.js.map} +0 -0
  493. /package/dist/infineon-design-system-stencil/{p-1f004047.entry.js.map → p-49939261.entry.js.map} +0 -0
  494. /package/dist/infineon-design-system-stencil/{p-a2f7459e.entry.js.map → p-4baf201d.entry.js.map} +0 -0
  495. /package/dist/infineon-design-system-stencil/{p-4bf95d5b.entry.js.map → p-4fdb13ec.entry.js.map} +0 -0
  496. /package/dist/infineon-design-system-stencil/{p-c85d7577.entry.js.map → p-52b61a69.entry.js.map} +0 -0
  497. /package/dist/infineon-design-system-stencil/{p-347a1e85.entry.js.map → p-5729d495.entry.js.map} +0 -0
  498. /package/dist/infineon-design-system-stencil/{p-2f12adbc.entry.js.map → p-58a4d36f.entry.js.map} +0 -0
  499. /package/dist/infineon-design-system-stencil/{p-3af201db.entry.js.map → p-5916cb5c.entry.js.map} +0 -0
  500. /package/dist/infineon-design-system-stencil/{p-6c89883f.entry.js.map → p-5f5ccef2.entry.js.map} +0 -0
  501. /package/dist/infineon-design-system-stencil/{p-b3882dc0.entry.js.map → p-618c5232.entry.js.map} +0 -0
  502. /package/dist/infineon-design-system-stencil/{p-c6ff49d7.entry.js.map → p-63f09820.entry.js.map} +0 -0
  503. /package/dist/infineon-design-system-stencil/{p-0fdd8cca.entry.js.map → p-6777690c.entry.js.map} +0 -0
  504. /package/dist/infineon-design-system-stencil/{p-c7607cbd.entry.js.map → p-6bbc85ef.entry.js.map} +0 -0
  505. /package/dist/infineon-design-system-stencil/{p-e2ad853d.entry.js.map → p-6d55468a.entry.js.map} +0 -0
  506. /package/dist/infineon-design-system-stencil/{p-b120a552.entry.js.map → p-77fbff19.entry.js.map} +0 -0
  507. /package/dist/infineon-design-system-stencil/{p-4faad7d7.entry.js.map → p-7dbec7ce.entry.js.map} +0 -0
  508. /package/dist/infineon-design-system-stencil/{p-4349f994.entry.js.map → p-82992baa.entry.js.map} +0 -0
  509. /package/dist/infineon-design-system-stencil/{p-3384179d.entry.js.map → p-83d10d57.entry.js.map} +0 -0
  510. /package/dist/infineon-design-system-stencil/{p-f20951d0.entry.js.map → p-83ef99a2.entry.js.map} +0 -0
  511. /package/dist/infineon-design-system-stencil/{p-934704d9.entry.js.map → p-85b61d98.entry.js.map} +0 -0
  512. /package/dist/infineon-design-system-stencil/{p-7a0b2fd1.entry.js.map → p-892ef42f.entry.js.map} +0 -0
  513. /package/dist/infineon-design-system-stencil/{p-f63ce1bc.entry.js.map → p-9a76c9c5.entry.js.map} +0 -0
  514. /package/dist/infineon-design-system-stencil/{p-82f9da03.entry.js.map → p-9adea907.entry.js.map} +0 -0
  515. /package/dist/infineon-design-system-stencil/{p-258c4e35.entry.js.map → p-9d99d0f2.entry.js.map} +0 -0
  516. /package/dist/infineon-design-system-stencil/{p-f9bf9346.entry.js.map → p-a3c2cbe0.entry.js.map} +0 -0
  517. /package/dist/infineon-design-system-stencil/{p-d8cc865a.entry.js.map → p-abb7c842.entry.js.map} +0 -0
  518. /package/dist/infineon-design-system-stencil/{p-d2630254.entry.js.map → p-accaa79e.entry.js.map} +0 -0
  519. /package/dist/infineon-design-system-stencil/{p-c2ff66ea.entry.js.map → p-b27a47fe.entry.js.map} +0 -0
  520. /package/dist/infineon-design-system-stencil/{p-98c50956.entry.js.map → p-c5a54d87.entry.js.map} +0 -0
  521. /package/dist/infineon-design-system-stencil/{p-aa5f89b6.entry.js.map → p-cb2bfd10.entry.js.map} +0 -0
  522. /package/dist/infineon-design-system-stencil/{p-1ad03102.entry.js.map → p-cb5f03cc.entry.js.map} +0 -0
  523. /package/dist/infineon-design-system-stencil/{p-12db6350.entry.js.map → p-cde478c3.entry.js.map} +0 -0
  524. /package/dist/infineon-design-system-stencil/{p-c646ffcc.entry.js.map → p-d9553320.entry.js.map} +0 -0
  525. /package/dist/infineon-design-system-stencil/{p-500bc0ed.entry.js.map → p-da6efe6b.entry.js.map} +0 -0
  526. /package/dist/infineon-design-system-stencil/{p-85468723.entry.js.map → p-e52d0b1a.entry.js.map} +0 -0
  527. /package/dist/infineon-design-system-stencil/{p-b37f692b.entry.js.map → p-e7e87a4a.entry.js.map} +0 -0
  528. /package/dist/infineon-design-system-stencil/{p-abba423a.entry.js.map → p-f36ba7ae.entry.js.map} +0 -0
  529. /package/dist/infineon-design-system-stencil/{p-eeccb158.entry.js.map → p-f4d00e57.entry.js.map} +0 -0
  530. /package/dist/infineon-design-system-stencil/{p-88bd6a1e.entry.js.map → p-ff6f111d.entry.js.map} +0 -0
@@ -3,7 +3,7 @@ export class Pagination {
3
3
  constructor() {
4
4
  this.currentPage = 0;
5
5
  this.internalPage = 1;
6
- this.itemsPerPage = 10;
6
+ this.internalItemsPerPage = 10;
7
7
  this.numberOfPages = [];
8
8
  this.total = 1;
9
9
  this.CLASS_DISABLED = "disabled";
@@ -13,10 +13,10 @@ export class Pagination {
13
13
  }
14
14
  setItemsPerPage(e) {
15
15
  if (e.detail) {
16
- this.itemsPerPage = parseInt(e.detail.label);
16
+ this.internalItemsPerPage = parseInt(e.detail.label);
17
17
  }
18
18
  else {
19
- this.itemsPerPage = 10;
19
+ this.internalItemsPerPage = 10;
20
20
  }
21
21
  }
22
22
  componentDidLoad() {
@@ -29,8 +29,8 @@ export class Pagination {
29
29
  if (isNaN(this.currentPage)) {
30
30
  this.currentPage = 1;
31
31
  }
32
- const total = this.total <= this.itemsPerPage ? this.itemsPerPage : this.total;
33
- const itemsPerPage = this.itemsPerPage;
32
+ const total = this.total <= this.internalItemsPerPage ? this.internalItemsPerPage : this.total;
33
+ const itemsPerPage = this.internalItemsPerPage;
34
34
  const totalPageNumber = Math.ceil(total / itemsPerPage);
35
35
  if (this.currentPage <= 0) {
36
36
  this.internalPage = 1;
@@ -64,7 +64,7 @@ export class Pagination {
64
64
  let totalPages = this.numberOfPages.length;
65
65
  let prevPage = currActive === 0 ? null : currActive;
66
66
  let nextPage = currActive + 2 > totalPages ? null : currActive + 2;
67
- let itemsPerPage = this.itemsPerPage;
67
+ let itemsPerPage = this.internalItemsPerPage;
68
68
  this.ifxPageChange.emit({ currentPage, totalPages, prevPage, nextPage, itemsPerPage });
69
69
  }
70
70
  addEventListenersToPageItems(listItems, paginationContainer) {
@@ -137,7 +137,7 @@ export class Pagination {
137
137
  this.initPagination(paginationElement);
138
138
  }
139
139
  render() {
140
- return (h("div", { key: '7b8554afb4ab1240382530828809745aa609f53e', "aria-label": 'a pagination', "aria-value": this.currentPage, class: "container" }, h("div", { key: '707a3ca32bc632c7320b993eb27d64d229f30a65', class: 'items__per-page-wrapper' }, h("div", { key: 'b0f25e68a5dbccb9cfd4ba1d08ef86ff5c5ecf65', class: 'items__per-page-label' }, "Results per Page"), h("div", { key: '69b061c1e12cf143f74c432fd18b4391ed6f6ddb', class: 'items__per-page-field' }, h("ifx-select", { key: 'c46571c99645614953ae178e021cc61b3bcbfa04', value: 'undefined', size: 's', placeholder: 'false', "show-search": 'false', "search-placeholder-value": 'Search...', disabled: false, error: false, "error-message": 'Error', label: '', "placeholder-value": 'Placeholder', options: '[{"value":"ten","label":"10","selected":true}, {"value":"Twenty","label":"20","selected":false}, {"value":"Thirty","label":"30","selected":false}]' }))), h("div", { key: 'f8434e2d9d299386cf48d810df03ec4243d890e7', class: 'items__total-wrapper' }, h("div", { key: '51bfcecb4be405342dede6fe85b3c155410389be', class: 'page__numbers-wrapper' }, h("div", { key: '57801f51e2dec7266ac238d373b830d400fd13df', class: "pagination" }, h("ifx-icon-button", { key: '19f7d39d7cf8b42e9a2431bf2f41a309d0bcc4b1', variant: 'secondary', class: "prev", color: 'primary', icon: 'arrow-left-24' }), h("ol", { key: 'b75719030d7caaa45134242d6365858cf4f24fab' }, this.numberOfPages.map((item) => h("li", { class: `${this.internalPage === item ? 'active' : ""}` }, h("a", { href: undefined }, item)))), h("ifx-icon-button", { key: 'd3f16fc3a2f132ec036f8baabd0e07401e281fb6', class: "next", variant: 'secondary', color: 'primary', icon: 'arrow-right-24' }))))));
140
+ return (h("div", { key: '2617ce20d4618504068a3fedfa20c4755d09ca71', "aria-label": 'a pagination', "aria-value": this.currentPage, class: "container" }, h("div", { key: '86eca8147de0600734fd6f688b924e287b6ea3b4', class: 'items__per-page-wrapper' }, h("div", { key: '8c20c3aa9fdaf898eb90617bfd5c2b86304244e5', class: 'items__per-page-label' }, "Results per Page"), h("div", { key: '5ef760e01d63dd1939e3c6510dff408d2671cef9', class: 'items__per-page-field' }, h("ifx-select", { key: '721bc102569c6a90e52e87100e6e69026a94901c', value: 'undefined', size: 's', placeholder: 'false', "show-search": 'false', "search-placeholder-value": 'Search...', disabled: false, error: false, "error-message": 'Error', label: '', "placeholder-value": 'Placeholder', options: this.itemsPerPage }))), h("div", { key: 'c464ee94b87ea2ce72c724227d404df0b76c23c6', class: 'items__total-wrapper' }, h("div", { key: '306d457fc78d4588ca16acd6b0ce8c9054f37a7b', class: 'page__numbers-wrapper' }, h("div", { key: '618a7d42aade781f452de965ce97af751c8a7824', class: "pagination" }, h("ifx-icon-button", { key: '13af5f58c77a3cec09f11c20be1a6a57c7c29a75', variant: 'secondary', class: "prev", color: 'primary', icon: 'arrow-left-24' }), h("ol", { key: '6da6a93063da5d8c3b0c77f72a6943301ecee4dd' }, this.numberOfPages.map((item) => h("li", { class: `${this.internalPage === item ? 'active' : ""}` }, h("a", { href: undefined }, item)))), h("ifx-icon-button", { key: '6a1296a8e112299ec236298a54423d5034364abc', class: "next", variant: 'secondary', color: 'primary', icon: 'arrow-right-24' }))))));
141
141
  }
142
142
  static get is() { return "ifx-pagination"; }
143
143
  static get encapsulation() { return "shadow"; }
@@ -192,13 +192,32 @@ export class Pagination {
192
192
  "attribute": "total",
193
193
  "reflect": false,
194
194
  "defaultValue": "1"
195
+ },
196
+ "itemsPerPage": {
197
+ "type": "string",
198
+ "mutable": false,
199
+ "complexType": {
200
+ "original": "any[] | string",
201
+ "resolved": "any[] | string",
202
+ "references": {}
203
+ },
204
+ "required": false,
205
+ "optional": false,
206
+ "docs": {
207
+ "tags": [],
208
+ "text": ""
209
+ },
210
+ "getter": false,
211
+ "setter": false,
212
+ "attribute": "items-per-page",
213
+ "reflect": false
195
214
  }
196
215
  };
197
216
  }
198
217
  static get states() {
199
218
  return {
200
219
  "internalPage": {},
201
- "itemsPerPage": {},
220
+ "internalItemsPerPage": {},
202
221
  "numberOfPages": {}
203
222
  };
204
223
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../src/components/pagination/pagination.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Element, Event, EventEmitter, Prop, State, Listen } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-pagination',\n styleUrl: 'pagination.scss',\n shadow: true\n})\nexport class Pagination {\n @Element() el;\n @Event() ifxPageChange: EventEmitter;\n @Event() ifxNextPage: EventEmitter;\n @Event() ifxPrevPage: EventEmitter;\n @Prop() currentPage: number = 0;\n @State() internalPage: number = 1;\n @State() itemsPerPage: number = 10;\n @State() numberOfPages: number[] = [];\n @Prop() total: number = 1;\n\n private CLASS_DISABLED = \"disabled\"\n private CLASS_ACTIVE = \"active\"\n private CLASS_SIBLING_ACTIVE = \"active-sibling\"\n private DATA_KEY = \"pagination\";\n\n @Listen('ifxSelect')\n setItemsPerPage(e) {\n if(e.detail) {\n this.itemsPerPage = parseInt(e.detail.label)\n } else { \n this.itemsPerPage = 10;\n }\n }\n\n componentDidLoad() {\n this.calculateVisiblePageIndices()\n var paginationElement = this.el.shadowRoot.querySelector(\".pagination\");\n let leftArrow = paginationElement.querySelector('.prev')\n this.navigateSinglePage(leftArrow, true)\n\n }\n\n calculateNumberOfPages() {\n if (isNaN(this.currentPage)) {\n this.currentPage = 1;\n }\n const total = this.total <= this.itemsPerPage ? this.itemsPerPage : this.total;\n const itemsPerPage = this.itemsPerPage;\n const totalPageNumber = Math.ceil(total / itemsPerPage);\n\n if (this.currentPage <= 0) {\n this.internalPage = 1;\n } else if (this.currentPage > totalPageNumber) {\n this.internalPage = totalPageNumber;\n } else this.internalPage = this.currentPage;\n\n this.numberOfPages = Array.from({ length: totalPageNumber }, (_, index) => index + 1);\n }\n\n componentWillLoad() {\n this.calculateNumberOfPages()\n }\n\n componentDidUpdate() {\n var paginationElement = this.el.shadowRoot.querySelector(\".pagination\");\n var listItems = paginationElement.querySelectorAll(\"li\");\n this.addEventListenersToPageItems(listItems, paginationElement)\n\n if (paginationElement.dataset[this.DATA_KEY] < this.numberOfPages) {\n paginationElement.dataset[this.DATA_KEY] = paginationElement.dataset[this.DATA_KEY];\n } else paginationElement.dataset[this.DATA_KEY] = 0;\n\n this.changePage(paginationElement, false)\n }\n\n componentWillUpdate() {\n this.calculateNumberOfPages()\n }\n\n handleEventEmission(currActive) {\n let currentPage = currActive + 1;\n let totalPages = this.numberOfPages.length;\n let prevPage = currActive === 0 ? null : currActive;\n let nextPage = currActive + 2 > totalPages ? null : currActive + 2;\n let itemsPerPage = this.itemsPerPage\n this.ifxPageChange.emit({ currentPage, totalPages, prevPage, nextPage, itemsPerPage })\n }\n\n addEventListenersToPageItems(listItems, paginationContainer) {\n listItems.forEach((item) => {\n item.addEventListener(\"click\", (e) => {\n var parent = paginationContainer;\n let listItems = parent.querySelectorAll(\"li\");\n parent.dataset[this.DATA_KEY] = Array.from(listItems).indexOf(e.currentTarget)\n this.changePage(parent, false)\n });\n });\n }\n\n initPagination(paginationContainer) {\n var listItems = paginationContainer.querySelectorAll(\"li\");\n\n paginationContainer.dataset[this.DATA_KEY] = Array.from(listItems).indexOf(paginationContainer.querySelector(\".active\"));\n\n paginationContainer.querySelector(\".prev\").addEventListener(\"click\", (e) => this.navigateSinglePage(e, false));\n paginationContainer.querySelector(\".next\").addEventListener(\"click\", (e) => this.navigateSinglePage(e, false));\n\n this.addEventListenersToPageItems(listItems, paginationContainer)\n }\n\n navigateSinglePage(e, initialValue) {\n let el = e;\n if (typeof e.target === 'object') {\n el = e.target\n }\n\n if (!el.classList.contains(this.CLASS_DISABLED)) {\n var parent = el.closest(\".pagination\");\n var currActive = parseInt(parent.dataset[this.DATA_KEY], 10);\n currActive += 1 * (el.classList.contains(\"prev\") ? -1 : 1);\n\n if (currActive === -1) {\n currActive = 0;\n }\n\n parent.dataset[this.DATA_KEY] = currActive;\n this.changePage(parent, initialValue)\n }\n }\n\n changePage(pagination, initialValue) {\n const paginationContainer = pagination;\n var listItems = paginationContainer.querySelectorAll(\"li\");\n var currActive = parseInt(paginationContainer.dataset[this.DATA_KEY], 10);\n\n listItems.forEach((item) => {\n item.classList.remove(this.CLASS_ACTIVE);\n item.classList.remove(this.CLASS_SIBLING_ACTIVE);\n });\n\n if (initialValue && this.internalPage > 1) {\n currActive = Math.floor(this.internalPage - 1);\n paginationContainer.dataset[this.DATA_KEY] = currActive;\n }\n\n this.handleEventEmission(currActive)\n\n listItems[currActive].classList.add(this.CLASS_ACTIVE);\n\n if (currActive === 0) {\n paginationContainer.querySelector(\".prev\").classList.add(this.CLASS_DISABLED);\n paginationContainer.querySelector(\".prev\").disabled = true;\n\n } else {\n listItems[currActive - 1].classList.add(this.CLASS_SIBLING_ACTIVE);\n paginationContainer.querySelector(\".prev\").classList.remove(this.CLASS_DISABLED);\n paginationContainer.querySelector(\".prev\").disabled = false;\n }\n\n if (currActive === (listItems.length - 1)) {\n paginationContainer.querySelector(\".next\").classList.add(this.CLASS_DISABLED);\n paginationContainer.querySelector(\".next\").disabled = true;\n\n } else {\n paginationContainer.querySelector(\".next\").classList.remove(this.CLASS_DISABLED);\n paginationContainer.querySelector(\".next\").disabled = false;\n }\n }\n\n calculateVisiblePageIndices() {\n var paginationElement = this.el.shadowRoot.querySelector(\".pagination\");\n this.initPagination(paginationElement)\n }\n\n render() {\n return (\n <div aria-label='a pagination' aria-value={this.currentPage} class=\"container\">\n <div class='items__per-page-wrapper'>\n <div class='items__per-page-label'>Results per Page</div>\n <div class='items__per-page-field'>\n <ifx-select\n value='undefined'\n size='s'\n placeholder='false'\n show-search='false'\n search-placeholder-value='Search...'\n disabled={false}\n error={false}\n error-message='Error'\n label=''\n placeholder-value='Placeholder'\n options='[{\"value\":\"ten\",\"label\":\"10\",\"selected\":true}, {\"value\":\"Twenty\",\"label\":\"20\",\"selected\":false}, {\"value\":\"Thirty\",\"label\":\"30\",\"selected\":false}]' >\n </ifx-select>\n </div>\n </div>\n <div class='items__total-wrapper'>\n <div class='page__numbers-wrapper'>\n <div class=\"pagination\">\n <ifx-icon-button variant='secondary' class=\"prev\" color='primary' icon='arrow-left-24'></ifx-icon-button>\n <ol>\n {this.numberOfPages.map((item) =>\n <li class={`${this.internalPage === item ? 'active' : \"\"}`}><a href={undefined}>{item}</a></li>)}\n </ol>\n <ifx-icon-button class=\"next\" variant='secondary' color='primary' icon='arrow-right-24'></ifx-icon-button>\n </div>\n </div>\n </div>\n </div>\n );\n }\n}"]}
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../src/components/pagination/pagination.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Element, Event, EventEmitter, Prop, State, Listen } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-pagination',\n styleUrl: 'pagination.scss',\n shadow: true\n})\nexport class Pagination {\n @Element() el;\n @Event() ifxPageChange: EventEmitter;\n @Event() ifxNextPage: EventEmitter;\n @Event() ifxPrevPage: EventEmitter;\n @Prop() currentPage: number = 0;\n @State() internalPage: number = 1;\n @State() internalItemsPerPage: number = 10;\n @State() numberOfPages: number[] = [];\n @Prop() total: number = 1;\n @Prop() itemsPerPage: any[] | string;\n\n private CLASS_DISABLED = \"disabled\"\n private CLASS_ACTIVE = \"active\"\n private CLASS_SIBLING_ACTIVE = \"active-sibling\"\n private DATA_KEY = \"pagination\";\n\n @Listen('ifxSelect')\n setItemsPerPage(e) {\n if(e.detail) {\n this.internalItemsPerPage = parseInt(e.detail.label)\n } else { \n this.internalItemsPerPage = 10;\n }\n }\n\n componentDidLoad() {\n this.calculateVisiblePageIndices()\n var paginationElement = this.el.shadowRoot.querySelector(\".pagination\");\n let leftArrow = paginationElement.querySelector('.prev')\n this.navigateSinglePage(leftArrow, true)\n\n }\n\n calculateNumberOfPages() {\n if (isNaN(this.currentPage)) {\n this.currentPage = 1;\n }\n const total = this.total <= this.internalItemsPerPage ? this.internalItemsPerPage : this.total;\n const itemsPerPage = this.internalItemsPerPage;\n const totalPageNumber = Math.ceil(total / itemsPerPage);\n\n if (this.currentPage <= 0) {\n this.internalPage = 1;\n } else if (this.currentPage > totalPageNumber) {\n this.internalPage = totalPageNumber;\n } else this.internalPage = this.currentPage;\n\n this.numberOfPages = Array.from({ length: totalPageNumber }, (_, index) => index + 1);\n }\n\n componentWillLoad() {\n this.calculateNumberOfPages()\n }\n\n componentDidUpdate() {\n var paginationElement = this.el.shadowRoot.querySelector(\".pagination\");\n var listItems = paginationElement.querySelectorAll(\"li\");\n this.addEventListenersToPageItems(listItems, paginationElement)\n\n if (paginationElement.dataset[this.DATA_KEY] < this.numberOfPages) {\n paginationElement.dataset[this.DATA_KEY] = paginationElement.dataset[this.DATA_KEY];\n } else paginationElement.dataset[this.DATA_KEY] = 0;\n\n this.changePage(paginationElement, false)\n }\n\n componentWillUpdate() {\n this.calculateNumberOfPages()\n }\n\n handleEventEmission(currActive) {\n let currentPage = currActive + 1;\n let totalPages = this.numberOfPages.length;\n let prevPage = currActive === 0 ? null : currActive;\n let nextPage = currActive + 2 > totalPages ? null : currActive + 2;\n let itemsPerPage = this.internalItemsPerPage\n this.ifxPageChange.emit({ currentPage, totalPages, prevPage, nextPage, itemsPerPage })\n }\n\n addEventListenersToPageItems(listItems, paginationContainer) {\n listItems.forEach((item) => {\n item.addEventListener(\"click\", (e) => {\n var parent = paginationContainer;\n let listItems = parent.querySelectorAll(\"li\");\n parent.dataset[this.DATA_KEY] = Array.from(listItems).indexOf(e.currentTarget)\n this.changePage(parent, false)\n });\n });\n }\n\n initPagination(paginationContainer) {\n var listItems = paginationContainer.querySelectorAll(\"li\");\n\n paginationContainer.dataset[this.DATA_KEY] = Array.from(listItems).indexOf(paginationContainer.querySelector(\".active\"));\n\n paginationContainer.querySelector(\".prev\").addEventListener(\"click\", (e) => this.navigateSinglePage(e, false));\n paginationContainer.querySelector(\".next\").addEventListener(\"click\", (e) => this.navigateSinglePage(e, false));\n\n this.addEventListenersToPageItems(listItems, paginationContainer)\n }\n\n navigateSinglePage(e, initialValue) {\n let el = e;\n if (typeof e.target === 'object') {\n el = e.target\n }\n\n if (!el.classList.contains(this.CLASS_DISABLED)) {\n var parent = el.closest(\".pagination\");\n var currActive = parseInt(parent.dataset[this.DATA_KEY], 10);\n currActive += 1 * (el.classList.contains(\"prev\") ? -1 : 1);\n\n if (currActive === -1) {\n currActive = 0;\n }\n\n parent.dataset[this.DATA_KEY] = currActive;\n this.changePage(parent, initialValue)\n }\n }\n\n changePage(pagination, initialValue) {\n const paginationContainer = pagination;\n var listItems = paginationContainer.querySelectorAll(\"li\");\n var currActive = parseInt(paginationContainer.dataset[this.DATA_KEY], 10);\n\n listItems.forEach((item) => {\n item.classList.remove(this.CLASS_ACTIVE);\n item.classList.remove(this.CLASS_SIBLING_ACTIVE);\n });\n\n if (initialValue && this.internalPage > 1) {\n currActive = Math.floor(this.internalPage - 1);\n paginationContainer.dataset[this.DATA_KEY] = currActive;\n }\n\n this.handleEventEmission(currActive)\n\n listItems[currActive].classList.add(this.CLASS_ACTIVE);\n\n if (currActive === 0) {\n paginationContainer.querySelector(\".prev\").classList.add(this.CLASS_DISABLED);\n paginationContainer.querySelector(\".prev\").disabled = true;\n\n } else {\n listItems[currActive - 1].classList.add(this.CLASS_SIBLING_ACTIVE);\n paginationContainer.querySelector(\".prev\").classList.remove(this.CLASS_DISABLED);\n paginationContainer.querySelector(\".prev\").disabled = false;\n }\n\n if (currActive === (listItems.length - 1)) {\n paginationContainer.querySelector(\".next\").classList.add(this.CLASS_DISABLED);\n paginationContainer.querySelector(\".next\").disabled = true;\n\n } else {\n paginationContainer.querySelector(\".next\").classList.remove(this.CLASS_DISABLED);\n paginationContainer.querySelector(\".next\").disabled = false;\n }\n }\n\n calculateVisiblePageIndices() {\n var paginationElement = this.el.shadowRoot.querySelector(\".pagination\");\n this.initPagination(paginationElement)\n }\n\n render() {\n return (\n <div aria-label='a pagination' aria-value={this.currentPage} class=\"container\">\n <div class='items__per-page-wrapper'>\n <div class='items__per-page-label'>Results per Page</div>\n <div class='items__per-page-field'>\n <ifx-select\n value='undefined'\n size='s'\n placeholder='false'\n show-search='false'\n search-placeholder-value='Search...'\n disabled={false}\n error={false}\n error-message='Error'\n label=''\n placeholder-value='Placeholder'\n options={this.itemsPerPage} >\n </ifx-select>\n </div>\n </div>\n <div class='items__total-wrapper'>\n <div class='page__numbers-wrapper'>\n <div class=\"pagination\">\n <ifx-icon-button variant='secondary' class=\"prev\" color='primary' icon='arrow-left-24'></ifx-icon-button>\n <ol>\n {this.numberOfPages.map((item) =>\n <li class={`${this.internalPage === item ? 'active' : \"\"}`}><a href={undefined}>{item}</a></li>)}\n </ol>\n <ifx-icon-button class=\"next\" variant='secondary' color='primary' icon='arrow-right-24'></ifx-icon-button>\n </div>\n </div>\n </div>\n </div>\n );\n }\n}"]}
@@ -5,6 +5,7 @@ export default {
5
5
  args: {
6
6
  total: 50,
7
7
  currentPage: 1,
8
+ itemsPerPage: '[{"value":"ten","label":"10","selected":true}, {"value":"Twenty","label":"20","selected":false}, {"value":"Thirty","label":"30","selected":false}]'
8
9
  },
9
10
  argTypes: {
10
11
  ifxPageChange: {
@@ -43,6 +44,7 @@ const DefaultTemplate = args => {
43
44
  const element = document.createElement('ifx-pagination');
44
45
  element.setAttribute('total', args.total);
45
46
  element.setAttribute('current-page', args.currentPage);
47
+ element.setAttribute('items-per-page', args.itemsPerPage);
46
48
  element.addEventListener('ifxPageChange', action('ifxPageChange'));
47
49
  return element;
48
50
  };
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.stories.js","sourceRoot":"","sources":["../../../src/components/pagination/pagination.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,eAAe;IACb,KAAK,EAAE,uBAAuB;IAC9B,sBAAsB;IAEtB,IAAI,EAAE;QACJ,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,CAAC;KACf;IACD,QAAQ,EAAE;QACR,aAAa,EAAE;YACb,MAAM,EAAE,eAAe;YACvB,WAAW,EAAE,sCAAsC;YACnD,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,kNAAkN;iBACrN;aACF;SACF;QACD,WAAW,EAAE;YACX,MAAM,EAAE,aAAa;YACrB,WAAW,EAAE,oDAAoD;YACjE,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,0MAA0M;iBAC7M;aACF;SACF;QACD,WAAW,EAAE;YACX,MAAM,EAAE,aAAa;YACrB,WAAW,EAAE,wDAAwD;YACrE,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,0MAA0M;iBAC7M;aACF;SACF;KACF;CACF,CAAC;AAEF,MAAM,eAAe,GAAG,IAAI,CAAC,EAAE;IAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACzD,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACvD,OAAO,CAAC,gBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;IACnE,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAChD,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC","sourcesContent":["import { action } from '@storybook/addon-actions';\n\nexport default {\n title: 'Components/Pagination',\n // tags: ['autodocs'],\n\n args: {\n total: 50,\n currentPage: 1,\n },\n argTypes: {\n ifxPageChange: {\n action: 'ifxPageChange',\n description: 'Custom event emitted page is changed',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxPageChange={handlePageChange}\\nVue:@ifxPageChange=\"handlePageChange\"\\nAngular:(ifxPageChange)=\"handlePageChange()\"\\nVanillaJs:.addEventListener(\"ifxPageChange\", (event) => {//handle page change});',\n },\n },\n },\n ifxNextPage: {\n action: 'ifxNextPage',\n description: 'Custom event emitted when next page button clicked',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxNextPage={handlePageChange}\\nVue:@ifxNextPage=\"handlePageChange\"\\nAngular:(ifxNextPage)=\"handlePageChange()\"\\nVanillaJs:.addEventListener(\"ifxNextPage\", (event) => {//handle page change});',\n },\n },\n },\n ifxPrevPage: {\n action: 'ifxPrevPage',\n description: 'Custom event emitted when previous page button clicked',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxPrevPage={handlePageChange}\\nVue:@ifxPrevPage=\"handlePageChange\"\\nAngular:(ifxPrevPage)=\"handlePageChange()\"\\nVanillaJs:.addEventListener(\"ifxPrevPage\", (event) => {//handle page change});',\n },\n },\n },\n },\n};\n\nconst DefaultTemplate = args => {\n const element = document.createElement('ifx-pagination');\n element.setAttribute('total', args.total);\n element.setAttribute('current-page', args.currentPage);\n element.addEventListener('ifxPageChange', action('ifxPageChange'));\n return element;\n};\n\nexport const Default = DefaultTemplate.bind({});\nDefault.argTypes = {};\n"]}
1
+ {"version":3,"file":"pagination.stories.js","sourceRoot":"","sources":["../../../src/components/pagination/pagination.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,eAAe;IACb,KAAK,EAAE,uBAAuB;IAC9B,sBAAsB;IAEtB,IAAI,EAAE;QACJ,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,oJAAoJ;KACnK;IACD,QAAQ,EAAE;QACR,aAAa,EAAE;YACb,MAAM,EAAE,eAAe;YACvB,WAAW,EAAE,sCAAsC;YACnD,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,kNAAkN;iBACrN;aACF;SACF;QACD,WAAW,EAAE;YACX,MAAM,EAAE,aAAa;YACrB,WAAW,EAAE,oDAAoD;YACjE,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,0MAA0M;iBAC7M;aACF;SACF;QACD,WAAW,EAAE;YACX,MAAM,EAAE,aAAa;YACrB,WAAW,EAAE,wDAAwD;YACrE,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,0MAA0M;iBAC7M;aACF;SACF;KACF;CACF,CAAC;AAEF,MAAM,eAAe,GAAG,IAAI,CAAC,EAAE;IAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACzD,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACvD,OAAO,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1D,OAAO,CAAC,gBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;IACnE,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAChD,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC","sourcesContent":["import { action } from '@storybook/addon-actions';\n\nexport default {\n title: 'Components/Pagination',\n // tags: ['autodocs'],\n\n args: {\n total: 50,\n currentPage: 1,\n itemsPerPage: '[{\"value\":\"ten\",\"label\":\"10\",\"selected\":true}, {\"value\":\"Twenty\",\"label\":\"20\",\"selected\":false}, {\"value\":\"Thirty\",\"label\":\"30\",\"selected\":false}]'\n },\n argTypes: {\n ifxPageChange: {\n action: 'ifxPageChange',\n description: 'Custom event emitted page is changed',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxPageChange={handlePageChange}\\nVue:@ifxPageChange=\"handlePageChange\"\\nAngular:(ifxPageChange)=\"handlePageChange()\"\\nVanillaJs:.addEventListener(\"ifxPageChange\", (event) => {//handle page change});',\n },\n },\n },\n ifxNextPage: {\n action: 'ifxNextPage',\n description: 'Custom event emitted when next page button clicked',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxNextPage={handlePageChange}\\nVue:@ifxNextPage=\"handlePageChange\"\\nAngular:(ifxNextPage)=\"handlePageChange()\"\\nVanillaJs:.addEventListener(\"ifxNextPage\", (event) => {//handle page change});',\n },\n },\n },\n ifxPrevPage: {\n action: 'ifxPrevPage',\n description: 'Custom event emitted when previous page button clicked',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxPrevPage={handlePageChange}\\nVue:@ifxPrevPage=\"handlePageChange\"\\nAngular:(ifxPrevPage)=\"handlePageChange()\"\\nVanillaJs:.addEventListener(\"ifxPrevPage\", (event) => {//handle page change});',\n },\n },\n },\n },\n};\n\nconst DefaultTemplate = args => {\n const element = document.createElement('ifx-pagination');\n element.setAttribute('total', args.total);\n element.setAttribute('current-page', args.currentPage);\n element.setAttribute('items-per-page', args.itemsPerPage);\n element.addEventListener('ifxPageChange', action('ifxPageChange'));\n return element;\n};\n\nexport const Default = DefaultTemplate.bind({});\nDefault.argTypes = {};\n"]}
@@ -13,7 +13,7 @@ export class ProgressBar {
13
13
  this.internalValue = this.value;
14
14
  }
15
15
  render() {
16
- return (h("div", { key: 'e4ba3d7984ad1444c1e07edbfb7623a5471c059e', "aria-label": 'a progress bar', "aria-value": this.value, class: `progress-bar ${this.size}` }, h("div", { key: '995d64992f539dae4deae9dfcdc04a93f9c3b255', class: "progress", style: { width: `${this.internalValue}%` } }, this.showLabel && this.size !== "s" && this.internalValue !== 0 && h("span", { key: 'f7cc21c3da249ef83d26d43fac35aa6efe69a425', class: "label" }, `${this.internalValue}%`))));
16
+ return (h("div", { key: '9357496a783f4b3e1b044ab4d706ee83e443dd58', "aria-label": 'a progress bar', "aria-value": this.value, class: `progress-bar ${this.size}` }, h("div", { key: '29fd4c791396b927456b4fc514fdbada0d03bc7f', class: "progress", style: { width: `${this.internalValue}%` } }, this.showLabel && this.size !== "s" && this.internalValue !== 0 && h("span", { key: '945e380d7991c53930f1b3ebc396cfec1bc06d31', class: "label" }, `${this.internalValue}%`))));
17
17
  }
18
18
  static get is() { return "ifx-progress-bar"; }
19
19
  static get encapsulation() { return "shadow"; }
@@ -5,19 +5,6 @@
5
5
 
6
6
  :host {
7
7
  display: inline-flex;
8
- --_ifx-fallback-display: none !important;
9
- }
10
-
11
- ._ifx-radiobutton-fallback {
12
- display: var(--_ifx-fallback-display);
13
- position: absolute !important;
14
- width: 1px !important;
15
- height: 1px !important;
16
- padding: 0 !important;
17
- margin: -1px !important;
18
- overflow: hidden !important;
19
- clip: rect(0, 0, 0, 0) !important;
20
- border: 0 !important;
21
8
  }
22
9
 
23
10
  .radioButton__container {
@@ -5,52 +5,28 @@ export class RadioButton {
5
5
  this.error = false;
6
6
  this.size = "s";
7
7
  this.internalChecked = false;
8
- this.hasSlot = false;
8
+ this.hasSlot = true;
9
9
  }
10
- componentWillLoad() {
11
- // Fallback for form association
12
- this.fallbackInput = document.createElement('input');
13
- this.fallbackInput.type = 'radio';
14
- this.fallbackInput.hidden = true;
15
- this.fallbackInput.className = '_ifx-radiobutton-fallback';
16
- this.fallbackInput.style.cssText = `
17
- display: none !important;
18
- position: absolute !important;
19
- opacity: 0 !important;
20
- pointer-events: none !important;
21
- width: 0 !important;
22
- height: 0 !important;
23
- `;
24
- this.fallbackInput.setAttribute('aria-hidden', 'true');
25
- this.fallbackInput.tabIndex = -1;
26
- this.el.appendChild(this.fallbackInput);
27
- // Initialize ElementInternals if supported
28
- if ('attachInternals' in HTMLElement.prototype) {
29
- try {
30
- this.internals = this.el.attachInternals();
31
- }
32
- catch (e) {
33
- console.warn('ElementInternals not supported');
34
- }
35
- }
36
- // Initial state
37
- this.internalChecked = this.checked || false;
38
- this.hasSlot = !!this.el.querySelector('[slot]') || this.el.innerHTML.trim() !== '';
10
+ /**
11
+ * @returns whether the radio button is checked.
12
+ */
13
+ async isChecked() {
14
+ return this.internalChecked;
39
15
  }
40
- handleCheckedChange(newValue) {
41
- this.internalChecked = newValue;
42
- }
43
- updateFormValue() {
44
- var _a;
45
- // Update both ElementInternals and fallback input
46
- if ((_a = this.internals) === null || _a === void 0 ? void 0 : _a.setFormValue) {
47
- this.internals.setFormValue(this.internalChecked ? this.value : null);
16
+ componentWillLoad() {
17
+ if (this.checked)
18
+ this.internalChecked = this.checked;
19
+ const slot = this.el.innerHTML;
20
+ if (slot) {
21
+ this.hasSlot = true;
48
22
  }
49
- this.fallbackInput.checked = this.internalChecked;
50
- this.fallbackInput.name = this.name;
51
- this.fallbackInput.value = this.value;
52
- this.fallbackInput.disabled = this.disabled;
23
+ else
24
+ this.hasSlot = false;
53
25
  }
26
+ /**
27
+ * Click the hidden input element to let it handle the state
28
+ * and emit ifxChange event.
29
+ */
54
30
  handleRadioButtonClick(event) {
55
31
  if (this.disabled) {
56
32
  event.stopPropagation();
@@ -58,38 +34,28 @@ export class RadioButton {
58
34
  }
59
35
  this.inputElement.click();
60
36
  this.internalChecked = this.inputElement.checked;
61
- this.checked = this.internalChecked;
62
37
  this.ifxChange.emit(this.internalChecked);
63
- const changeEvent = new CustomEvent('change', {
64
- bubbles: true,
65
- composed: true,
66
- detail: { checked: this.internalChecked }
67
- });
68
- this.el.dispatchEvent(changeEvent);
69
38
  }
70
- handleKeyDown(ev) {
71
- if ([' ', 'Enter'].includes(ev.key)) {
72
- ev.preventDefault();
73
- this.handleRadioButtonClick(new PointerEvent('click'));
74
- }
75
- }
76
- handleExternalChange(event) {
39
+ /**
40
+ * Listen to all change events.
41
+ * Needed to get informed when another button of the group gets chcked
42
+ * and this one needs to become unchecked.
43
+ *
44
+ * @param event
45
+ */
46
+ handleChange(event) {
77
47
  const target = event.target;
78
- if (target === this.el || target.tagName.toLowerCase() !== 'ifx-radio-button')
79
- return;
80
- if (target.getAttribute('name') === this.name) {
81
- this.internalChecked = false;
48
+ if (target.name === this.name) {
49
+ this.internalChecked = this.inputElement.checked;
82
50
  }
83
51
  }
84
52
  render() {
85
- return (h("div", { key: 'fae53d7eafb00b6e7a1f58145af14c6eb2ab05df', role: "radio", "aria-checked": String(this.internalChecked), "aria-disabled": String(this.disabled), class: `radioButton__container ${this.size} ${this.disabled ? 'disabled' : ''}`, onClick: (e) => this.handleRadioButtonClick(e), tabindex: this.disabled ? -1 : 0 }, h("div", { key: '74ca30fb71544197ca732c626a9afd04ba6de059', class: `radioButton__wrapper
86
- ${this.internalChecked ? 'checked' : ''}
87
- ${this.disabled ? 'disabled' : ''}
88
- ${this.error ? 'error' : ''}` }, this.internalChecked && h("div", { key: 'cd925eb77b85631c617b809b5d232e54c10009f2', class: "radioButton__wrapper-mark" })), this.hasSlot && (h("div", { key: '2343f841254057810313be262f74076a40398913', class: `label ${this.size === "m" ? "label-m" : ""} ${this.disabled ? 'disabled' : ''}` }, h("slot", { key: '501a334c5b09cc21cc5c528cd1bdf1ff465011d9' }))), h("input", { key: 'e1c0bc279da1c379d552ab5bc25f274654514f62', type: "radio", hidden: true, ref: el => this.inputElement = el, name: this.name, value: this.value, checked: this.internalChecked, disabled: this.disabled, onClick: (e) => e.stopPropagation() })));
53
+ return (h("div", { key: '7b5291f95e3fc00c0ceb9285c57ca440b1a8939f', "aria-label": 'a radio button', "aria-value": this.value, "aria-disabled": this.disabled, class: `radioButton__container ${this.size} ${this.disabled ? 'disabled' : ''}`, onClick: this.handleRadioButtonClick.bind(this) }, h("div", { key: '5efda77550a294da34c4f72c4558e312690f9cd9', class: `radioButton__wrapper
54
+ ${this.internalChecked ? 'checked' : ''}
55
+ ${this.disabled ? 'disabled' : ''}
56
+ ${this.error ? 'error' : ''}`, tabIndex: this.disabled ? -1 : 0 }, this.internalChecked && h("div", { key: '2b1a814830a361021a812016d770d7838dca05fe', class: "radioButton__wrapper-mark" })), this.hasSlot && (h("div", { key: '61911033a487c6396c1c34b35f13f04cf84ea602', class: `label ${this.size === "m" ? "label-m" : ""} ${this.disabled ? 'disabled' : ''}` }, h("slot", { key: '7f1b40289cdd67a4fbc2e4677da03e22cdfa758c' }))), h("input", { key: 'f77c2d84f409e3875798370a06cbc744385e5655', type: "radio", hidden: true, ref: el => this.inputElement = el, name: this.name, value: this.value, checked: this.internalChecked, disabled: this.disabled, onClick: (e) => e.stopPropagation() })));
89
57
  }
90
58
  static get is() { return "ifx-radio-button"; }
91
- static get encapsulation() { return "shadow"; }
92
- static get formAssociated() { return true; }
93
59
  static get originalStyleUrls() {
94
60
  return {
95
61
  "$": ["radio-button.scss"]
@@ -178,7 +144,7 @@ export class RadioButton {
178
144
  "getter": false,
179
145
  "setter": false,
180
146
  "attribute": "size",
181
- "reflect": true,
147
+ "reflect": false,
182
148
  "defaultValue": "\"s\""
183
149
  },
184
150
  "name": {
@@ -198,11 +164,11 @@ export class RadioButton {
198
164
  "getter": false,
199
165
  "setter": false,
200
166
  "attribute": "name",
201
- "reflect": true
167
+ "reflect": false
202
168
  },
203
169
  "checked": {
204
170
  "type": "boolean",
205
- "mutable": true,
171
+ "mutable": false,
206
172
  "complexType": {
207
173
  "original": "boolean",
208
174
  "resolved": "boolean",
@@ -224,7 +190,8 @@ export class RadioButton {
224
190
  static get states() {
225
191
  return {
226
192
  "internalChecked": {},
227
- "hasSlot": {}
193
+ "hasSlot": {},
194
+ "inputElement": {}
228
195
  };
229
196
  }
230
197
  static get events() {
@@ -245,27 +212,36 @@ export class RadioButton {
245
212
  }
246
213
  }];
247
214
  }
248
- static get elementRef() { return "el"; }
249
- static get watchers() {
250
- return [{
251
- "propName": "checked",
252
- "methodName": "handleCheckedChange"
253
- }, {
254
- "propName": "internalChecked",
255
- "methodName": "updateFormValue"
256
- }];
215
+ static get methods() {
216
+ return {
217
+ "isChecked": {
218
+ "complexType": {
219
+ "signature": "() => Promise<boolean>",
220
+ "parameters": [],
221
+ "references": {
222
+ "Promise": {
223
+ "location": "global",
224
+ "id": "global::Promise"
225
+ }
226
+ },
227
+ "return": "Promise<boolean>"
228
+ },
229
+ "docs": {
230
+ "text": "",
231
+ "tags": [{
232
+ "name": "returns",
233
+ "text": "whether the radio button is checked."
234
+ }]
235
+ }
236
+ }
237
+ };
257
238
  }
239
+ static get elementRef() { return "el"; }
258
240
  static get listeners() {
259
241
  return [{
260
- "name": "keydown",
261
- "method": "handleKeyDown",
262
- "target": undefined,
263
- "capture": false,
264
- "passive": false
265
- }, {
266
242
  "name": "change",
267
- "method": "handleExternalChange",
268
- "target": "document",
243
+ "method": "handleChange",
244
+ "target": "window",
269
245
  "capture": false,
270
246
  "passive": false
271
247
  }];
@@ -1 +1 @@
1
- {"version":3,"file":"radio-button.js","sourceRoot":"","sources":["../../../src/components/radio-button/radio-button.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Prop, Element, State, Event, EventEmitter, Listen, Watch } from '@stencil/core';\n\n@Component({\n tag: 'ifx-radio-button',\n styleUrl: 'radio-button.scss',\n shadow: true,\n formAssociated: true\n})\nexport class RadioButton {\n @Element() el: HTMLElement;\n @Prop() disabled: boolean = false;\n @Prop() value: string;\n @Prop() error: boolean = false;\n @Prop({ reflect: true }) size: \"s\" | \"m\" = \"s\";\n @Prop({ reflect: true }) name: string;\n @Prop({ mutable: true }) checked: boolean;\n @State() internalChecked: boolean = false;\n @State() hasSlot: boolean = false;\n\n private inputElement: HTMLInputElement;\n private internals: ElementInternals;\n private fallbackInput: HTMLInputElement;\n\n @Event({ eventName: 'ifxChange' }) ifxChange: EventEmitter;\n\n componentWillLoad() {\n // Fallback for form association\n this.fallbackInput = document.createElement('input');\n this.fallbackInput.type = 'radio';\n this.fallbackInput.hidden = true;\n this.fallbackInput.className = '_ifx-radiobutton-fallback';\n this.fallbackInput.style.cssText = `\n display: none !important;\n position: absolute !important;\n opacity: 0 !important;\n pointer-events: none !important;\n width: 0 !important;\n height: 0 !important;\n `;\n this.fallbackInput.setAttribute('aria-hidden', 'true');\n this.fallbackInput.tabIndex = -1;\n this.el.appendChild(this.fallbackInput);\n\n // Initialize ElementInternals if supported\n if ('attachInternals' in HTMLElement.prototype) {\n try {\n this.internals = this.el.attachInternals();\n } catch (e) {\n console.warn('ElementInternals not supported');\n }\n }\n\n // Initial state\n this.internalChecked = this.checked || false;\n this.hasSlot = !!this.el.querySelector('[slot]') || this.el.innerHTML.trim() !== '';\n }\n\n @Watch('checked')\n handleCheckedChange(newValue: boolean) {\n this.internalChecked = newValue;\n }\n\n @Watch('internalChecked')\n updateFormValue() {\n // Update both ElementInternals and fallback input\n if (this.internals?.setFormValue) {\n this.internals.setFormValue(this.internalChecked ? this.value : null);\n }\n this.fallbackInput.checked = this.internalChecked;\n this.fallbackInput.name = this.name;\n this.fallbackInput.value = this.value;\n this.fallbackInput.disabled = this.disabled;\n }\n\n handleRadioButtonClick(event: Event) {\n if (this.disabled) {\n event.stopPropagation();\n return;\n }\n\n this.inputElement.click();\n this.internalChecked = this.inputElement.checked;\n this.checked = this.internalChecked;\n this.ifxChange.emit(this.internalChecked);\n\n const changeEvent = new CustomEvent('change', {\n bubbles: true,\n composed: true,\n detail: { checked: this.internalChecked }\n });\n this.el.dispatchEvent(changeEvent);\n }\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if ([' ', 'Enter'].includes(ev.key)) {\n ev.preventDefault();\n this.handleRadioButtonClick(new PointerEvent('click'));\n }\n }\n\n @Listen('change', { target: 'document' })\n handleExternalChange(event: Event) {\n const target = event.target as HTMLElement;\n if (target === this.el || target.tagName.toLowerCase() !== 'ifx-radio-button') return;\n \n if (target.getAttribute('name') === this.name) {\n this.internalChecked = false;\n }\n }\n\n render() {\n return (\n <div\n role=\"radio\"\n aria-checked={String(this.internalChecked)}\n aria-disabled={String(this.disabled)}\n class={`radioButton__container ${this.size} ${this.disabled ? 'disabled' : ''}`}\n onClick={(e) => this.handleRadioButtonClick(e)}\n tabindex={this.disabled ? -1 : 0}\n >\n <div\n class={`radioButton__wrapper \n ${this.internalChecked ? 'checked' : ''} \n ${this.disabled ? 'disabled' : ''} \n ${this.error ? 'error' : ''}`}\n >\n {this.internalChecked && <div class=\"radioButton__wrapper-mark\"></div>}\n </div>\n\n {this.hasSlot && (\n <div class={`label ${this.size === \"m\" ? \"label-m\" : \"\"} ${this.disabled ? 'disabled' : ''}`}>\n <slot />\n </div>\n )}\n\n <input\n type=\"radio\"\n hidden\n ref={el => this.inputElement = el}\n name={this.name}\n value={this.value}\n checked={this.internalChecked}\n disabled={this.disabled}\n onClick={(e) => e.stopPropagation()}\n />\n </div>\n );\n }\n}"]}
1
+ {"version":3,"file":"radio-button.js","sourceRoot":"","sources":["../../../src/components/radio-button/radio-button.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Prop, Element, State, Event, EventEmitter, Listen, Method } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-radio-button',\n styleUrl: 'radio-button.scss',\n shadow: false,\n formAssociated: false\n})\nexport class RadioButton {\n @Element() el;\n @Prop() disabled: boolean = false;\n @Prop() value: string;\n @Prop() error: boolean = false;\n @Prop() size: \"s\" | \"m\" = \"s\";\n @Prop() name: string;\n @Prop() checked: boolean;\n @State() internalChecked: boolean = false;\n @State() hasSlot: boolean = true;\n\n @State() inputElement: HTMLInputElement;\n\n @Event({ eventName: 'ifxChange' }) ifxChange: EventEmitter;\n\n /**\n * @returns whether the radio button is checked.\n */\n @Method()\n async isChecked(): Promise<boolean> {\n return this.internalChecked;\n }\n \n componentWillLoad() {\n if (this.checked) this.internalChecked = this.checked;\n const slot = this.el.innerHTML;\n if (slot) {\n this.hasSlot = true;\n } else this.hasSlot = false;\n }\n\n\n /**\n * Click the hidden input element to let it handle the state\n * and emit ifxChange event.\n */\n handleRadioButtonClick(event: PointerEvent) {\n if (this.disabled) {\n event.stopPropagation();\n return;\n }\n\n this.inputElement.click();\n this.internalChecked = this.inputElement.checked;\n this.ifxChange.emit(this.internalChecked);\n }\n\n /**\n * Listen to all change events.\n * Needed to get informed when another button of the group gets chcked \n * and this one needs to become unchecked. \n * \n * @param event \n */\n @Listen('change', { target: 'window' }) \n handleChange(event: Event) {\n const target = event.target as HTMLInputElement;\n if (target.name === this.name) {\n this.internalChecked = this.inputElement.checked;\n }\n }\n\n render() {\n return (\n <div\n aria-label='a radio button' aria-value={this.value} aria-disabled={this.disabled}\n class={`radioButton__container ${this.size} ${this.disabled ? 'disabled' : ''}`}\n onClick={this.handleRadioButtonClick.bind(this)}\n >\n <div\n class={`radioButton__wrapper \n ${this.internalChecked ? 'checked' : ''} \n ${this.disabled ? 'disabled' : ''} \n ${this.error ? 'error' : ''}`}\n tabIndex={this.disabled ? -1 : 0}\n >\n {this.internalChecked && <div class=\"radioButton__wrapper-mark\"></div>}\n </div>\n {this.hasSlot && (\n <div class={`label ${this.size === \"m\" ? \"label-m\" : \"\"} ${this.disabled ? 'disabled' : ''}`}>\n <slot />\n </div>\n )}\n <input\n type=\"radio\" \n hidden \n ref={el => this.inputElement = el as HTMLInputElement} \n name={this.name} \n value={this.value}\n checked={this.internalChecked} \n disabled={this.disabled}\n onClick={(e) => e.stopPropagation()}></input>\n </div>\n );\n }\n}\n"]}
@@ -29,7 +29,7 @@ export class SearchBar {
29
29
  this.value = event.detail;
30
30
  }
31
31
  render() {
32
- return (h("div", { key: '9beeaf23e29792116ade1a8d08a291251a2037e4', "aria-label": 'a search bar', "aria-disabled": this.disabled, class: `search-bar ${this.internalState ? 'open' : 'closed'}` }, this.internalState ? (h("div", { class: "search-bar-wrapper" }, h("ifx-search-field", { disabled: this.disabled, value: this.value, maxlength: this.maxlength, onIfxInput: this.handleInput.bind(this) }, h("ifx-icon", { icon: "search-16", slot: "search-icon" })), h("a", { tabindex: "-1", href: 'javascript:void(0)', onClick: this.handleCloseButton }, "Close"))) : (h("div", { class: "search-bar__icon-wrapper", onClick: this.handleCloseButton }, h("ifx-icon", { icon: "search-16" })))));
32
+ return (h("div", { key: '80312faf68e6b0af2260c977d53f23b42067813f', "aria-label": 'a search bar', "aria-disabled": this.disabled, class: `search-bar ${this.internalState ? 'open' : 'closed'}` }, this.internalState ? (h("div", { class: "search-bar-wrapper" }, h("ifx-search-field", { disabled: this.disabled, value: this.value, maxlength: this.maxlength, onIfxInput: this.handleInput.bind(this) }, h("ifx-icon", { icon: "search-16", slot: "search-icon" })), h("a", { tabindex: "-1", href: 'javascript:void(0)', onClick: this.handleCloseButton }, "Close"))) : (h("div", { class: "search-bar__icon-wrapper", onClick: this.handleCloseButton }, h("ifx-icon", { icon: "search-16" })))));
33
33
  }
34
34
  static get is() { return "ifx-search-bar"; }
35
35
  static get encapsulation() { return "shadow"; }
@@ -45,7 +45,7 @@ export class SearchField {
45
45
  this.showDeleteIconInternalState = false;
46
46
  }
47
47
  render() {
48
- return (h("div", { key: 'dee8f8a10987683421db49a63c7e2f7a66ce1b64', "aria-label": "a search field for user input", "aria-disabled": this.disabled, "aria-value": this.value, class: 'search-field' }, h("div", { key: 'e6cc99edb05791bb80be7c2262088c668d6424b7', class: this.getWrapperClassNames(), tabindex: 1, onFocus: () => this.focusInput(), onClick: () => this.focusInput() }, h("ifx-icon", { key: '50cf96f238932cf46b1f0186bcb3b8a96a207889', icon: "search-16", class: "search-icon" }), h("input", { key: '358c300cc7c03ef61f1725b4c2380180eb7c26f2', ref: (el) => (this.inputElement = el), type: "text", onInput: () => this.handleInput(), placeholder: this.placeholder, disabled: this.disabled, maxlength: this.maxlength, value: this.value }), this.showDeleteIcon && this.showDeleteIconInternalState ? (h("ifx-icon", { icon: "cremove16", class: "delete-icon", onClick: this.handleDelete })) : null)));
48
+ return (h("div", { key: '0eda7329a6ec9ee7f24d5c7765f7611698a1dbae', "aria-label": "a search field for user input", "aria-disabled": this.disabled, "aria-value": this.value, class: 'search-field' }, h("div", { key: 'c1d6f47b987bfb7f0505210fbd64e95db58b688e', class: this.getWrapperClassNames(), tabindex: 1, onFocus: () => this.focusInput(), onClick: () => this.focusInput() }, h("ifx-icon", { key: '7fc1c3cd5ba67ebfe032b0a9bbab6ae7b262d7a2', icon: "search-16", class: "search-icon" }), h("input", { key: '461edc1ee971753ce0ed4fb18db7115b3b74c6b9', ref: (el) => (this.inputElement = el), type: "text", onInput: () => this.handleInput(), placeholder: this.placeholder, disabled: this.disabled, maxlength: this.maxlength, value: this.value }), this.showDeleteIcon && this.showDeleteIconInternalState ? (h("ifx-icon", { icon: "cremove16", class: "delete-icon", onClick: this.handleDelete })) : null)));
49
49
  }
50
50
  getSizeClass() {
51
51
  return `${this.size}` === "s"
@@ -18,7 +18,7 @@ export class Segment {
18
18
  }
19
19
  }
20
20
  render() {
21
- return (h("div", { key: 'ba16c44bcff74ca96370132c7e191ad8659312e0', class: `segment ${this.selected ? 'segment--selected' : ''}`, tabIndex: 0, onClick: () => { this.handleSegmentClick(); }, onKeyDown: (e) => { this.handleSegmentKeyDown(e); } }, h("ifx-icon", { key: '1746bfc0ea5acfcee7e39832613beb3a65ec3b74', icon: this.icon }), " ", h("slot", { key: '978c5dd19baeb0bdc7029a381891bf858c4a7806' })));
21
+ return (h("div", { key: '49c56df2adf407d13685ae7c99b512afa532c6de', class: `segment ${this.selected ? 'segment--selected' : ''}`, tabIndex: 0, onClick: () => { this.handleSegmentClick(); }, onKeyDown: (e) => { this.handleSegmentKeyDown(e); } }, h("ifx-icon", { key: 'c576b2bb7b09ae6ed1946759df7303df36b430dc', icon: this.icon }), " ", h("slot", { key: '61d467f2cda3552d5c90e9995ceccdca76c6825c' })));
22
22
  }
23
23
  static get is() { return "ifx-segment"; }
24
24
  static get encapsulation() { return "shadow"; }
@@ -62,8 +62,8 @@ export class SegmentedControl {
62
62
  this.setActiveSegment();
63
63
  }
64
64
  render() {
65
- return (h("div", { key: '107dc81c1511f43afe458598f531dba52c291e32', "aria-value": this.selectedValue, "aria-label": 'segmented control', class: 'group' }, h("div", { key: '879f0a9e7969f6dee38992352af1c5abb0ff1844', class: 'group__label' }, this.label.trim()), h("div", { key: '114496531e8455b9b109d62d882b943920b8f925', class: 'group__controls' }, h("slot", { key: '2199416c1ffee2e0ca7b6f158da9cc697f1ae290' })), this.caption.trim() &&
66
- h("div", { key: '78c776417c479c9ac008d0a5e249f11300d0f9e8', class: 'group__caption' }, h("ifx-icon", { key: '4e275a5017e078c8eda524151fec0e1a7129e807', icon: 'cinfo16' }), " ", this.caption.trim())));
65
+ return (h("div", { key: '2a980fa0fd18e469c2d92c57c80c62b7dfee30e9', "aria-value": this.selectedValue, "aria-label": 'segmented control', class: 'group' }, h("div", { key: 'bf202bd9f2a4967c5a5c0cd24013242ad4752a80', class: 'group__label' }, this.label.trim()), h("div", { key: '89e974d972a4ad903193459e9a65b47c89114ab8', class: 'group__controls' }, h("slot", { key: '10a57ab800389b4a7ae482c152817486a28ae96f' })), this.caption.trim() &&
66
+ h("div", { key: 'f63a61eabf58e03cc0c4b5bae031965b82cb4f2c', class: 'group__caption' }, h("ifx-icon", { key: 'b758bb66d96d48e795565dbd662f1a2fc3648bfe', icon: 'cinfo16' }), " ", this.caption.trim())));
67
67
  }
68
68
  componentDidRender() {
69
69
  this.setSegmentSize();
@@ -39,16 +39,7 @@ export class Multiselect {
39
39
  this.filteredOptions = this.loadedOptions;
40
40
  }
41
41
  else {
42
- this.filteredOptions = this.loadedOptions.filter(option => {
43
- const matchesSearchTerm = option.label.toLowerCase().includes(searchTerm);
44
- if (option.children) {
45
- const childrenMatch = option.children.some(child => {
46
- return child.label.toLowerCase().includes(searchTerm);
47
- });
48
- return matchesSearchTerm || childrenMatch;
49
- }
50
- return matchesSearchTerm;
51
- });
42
+ this.filteredOptions = this.loadedOptions.filter(option => option.label.toLowerCase().includes(searchTerm));
52
43
  }
53
44
  }, 300);
54
45
  this.handleDocumentClick = (event) => {
@@ -56,7 +47,6 @@ export class Multiselect {
56
47
  if (!path.includes(this.dropdownElement)) {
57
48
  this.dropdownOpen = false;
58
49
  document.removeEventListener('click', this.handleDocumentClick);
59
- this.filteredOptions = this.loadedOptions;
60
50
  // Dispatch the ifxMultiselectIsOpen event
61
51
  this.ifxMultiselectIsOpen.emit(this.dropdownOpen);
62
52
  }
@@ -136,9 +126,7 @@ export class Multiselect {
136
126
  selectedOptions = selectedOptions.concat(this.collectLeafOptions(option.children));
137
127
  }
138
128
  else {
139
- if (!selectedOptions.some(existingOption => existingOption.value === option.value)) {
140
- selectedOptions.push(option);
141
- }
129
+ selectedOptions.push(option);
142
130
  }
143
131
  }
144
132
  else {
@@ -244,7 +232,6 @@ export class Multiselect {
244
232
  if (!this.persistentSelectedOptions.some((some) => some.value === opt.value)) {
245
233
  opt.selected = true;
246
234
  this.persistentSelectedOptions = [...this.persistentSelectedOptions, opt];
247
- this.optionCount = this.countOptions(this.persistentSelectedOptions);
248
235
  }
249
236
  }
250
237
  }