@infineon/infineon-design-system-stencil 30.9.3--canary.1640.cca6b3e0f7f750f15c51f9cb6eb2c66789549fb3.0 → 30.10.0--canary.1680.b02f564c5f337ff8a25aa9828cd8b9791079dd97.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 (952) hide show
  1. package/dist/cjs/ifx-accordion_2.cjs.entry.js +9 -8
  2. package/dist/cjs/ifx-accordion_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ifx-alert.cjs.entry.js +6 -4
  4. package/dist/cjs/ifx-alert.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ifx-badge.cjs.entry.js +1 -1
  6. package/dist/cjs/ifx-basic-table.cjs.entry.js +6 -2
  7. package/dist/cjs/ifx-basic-table.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +4 -2
  9. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js +2 -1
  11. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +4 -4
  13. package/dist/cjs/ifx-breadcrumb.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ifx-button.cjs.entry.js +11 -8
  15. package/dist/cjs/ifx-button.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ifx-card-headline.cjs.entry.js +3 -1
  17. package/dist/cjs/ifx-card-headline.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ifx-card-image.cjs.entry.js +4 -1
  19. package/dist/cjs/ifx-card-image.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ifx-card-links.cjs.entry.js +1 -1
  21. package/dist/cjs/ifx-card-overline.cjs.entry.js +1 -1
  22. package/dist/cjs/ifx-card-text.cjs.entry.js +2 -1
  23. package/dist/cjs/ifx-card-text.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ifx-card.cjs.entry.js +5 -1
  25. package/dist/cjs/ifx-card.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ifx-checkbox.cjs.entry.js +4 -1
  27. package/dist/cjs/ifx-checkbox.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ifx-chip_3.cjs.entry.js +27 -24
  29. package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js +2 -1
  31. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ifx-content-switcher.cjs.entry.js +3 -2
  33. package/dist/cjs/ifx-content-switcher.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ifx-date-picker.cjs.entry.js +7 -1
  35. package/dist/cjs/ifx-date-picker.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ifx-dropdown-header.cjs.entry.js +1 -1
  37. package/dist/cjs/ifx-dropdown-item.cjs.entry.js +2 -1
  38. package/dist/cjs/ifx-dropdown-item.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ifx-dropdown-menu.cjs.entry.js +1 -1
  40. package/dist/cjs/ifx-dropdown-menu.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ifx-dropdown-separator.cjs.entry.js +1 -1
  42. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js +3 -1
  43. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js +1 -1
  45. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ifx-dropdown.cjs.entry.js +4 -4
  47. package/dist/cjs/ifx-dropdown.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ifx-faq.cjs.entry.js +1 -1
  49. package/dist/cjs/ifx-filter-accordion.cjs.entry.js +6 -5
  50. package/dist/cjs/ifx-filter-accordion.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ifx-filter-bar.cjs.entry.js +6 -5
  52. package/dist/cjs/ifx-filter-bar.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ifx-filter-search.cjs.entry.js +6 -2
  54. package/dist/cjs/ifx-filter-search.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ifx-filter-type-group.cjs.entry.js +2 -2
  56. package/dist/cjs/ifx-filter-type-group.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ifx-footer-column.cjs.entry.js +1 -1
  58. package/dist/cjs/ifx-footer.cjs.entry.js +3 -3
  59. package/dist/cjs/ifx-footer.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ifx-icon-button.cjs.entry.js +6 -1
  61. package/dist/cjs/ifx-icon-button.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ifx-icon.cjs.entry.js +2 -1
  63. package/dist/cjs/ifx-icon.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ifx-icons-preview.cjs.entry.js +2 -1
  65. package/dist/cjs/ifx-icons-preview.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ifx-link.cjs.entry.js +2 -1
  67. package/dist/cjs/ifx-link.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ifx-list-entry.cjs.entry.js +4 -1
  69. package/dist/cjs/ifx-list-entry.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ifx-list.cjs.entry.js +10 -9
  71. package/dist/cjs/ifx-list.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ifx-modal.cjs.entry.js +20 -20
  73. package/dist/cjs/ifx-modal.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +34 -25
  75. package/dist/cjs/ifx-multiselect_2.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ifx-navbar-item.cjs.entry.js +2 -1
  77. package/dist/cjs/ifx-navbar-item.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ifx-navbar-profile.cjs.entry.js +5 -5
  79. package/dist/cjs/ifx-navbar-profile.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ifx-navbar.cjs.entry.js +5 -4
  81. package/dist/cjs/ifx-navbar.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ifx-notification.cjs.entry.js +4 -1
  83. package/dist/cjs/ifx-notification.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ifx-number-indicator.cjs.entry.js +1 -1
  85. package/dist/cjs/ifx-number-indicator.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ifx-overview-table.cjs.entry.js +1 -1
  87. package/dist/cjs/ifx-progress-bar.cjs.entry.js +3 -1
  88. package/dist/cjs/ifx-progress-bar.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ifx-radio-button.cjs.entry.js +5 -1
  90. package/dist/cjs/ifx-radio-button.cjs.entry.js.map +1 -1
  91. package/dist/cjs/ifx-search-bar.cjs.entry.js +11 -8
  92. package/dist/cjs/ifx-search-bar.cjs.entry.js.map +1 -1
  93. package/dist/cjs/ifx-search-field.cjs.entry.js +10 -10
  94. package/dist/cjs/ifx-search-field.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ifx-segment.cjs.entry.js +4 -1
  96. package/dist/cjs/ifx-segment.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ifx-segmented-control.cjs.entry.js +2 -2
  98. package/dist/cjs/ifx-segmented-control.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ifx-select.cjs.entry.js +45 -3
  100. package/dist/cjs/ifx-select.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ifx-set-filter.cjs.entry.js +5 -1
  102. package/dist/cjs/ifx-set-filter.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +15 -12
  104. package/dist/cjs/ifx-sidebar-item.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ifx-sidebar-title.cjs.entry.js +1 -1
  106. package/dist/cjs/ifx-sidebar.cjs.entry.js +1 -1
  107. package/dist/cjs/ifx-sidebar.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ifx-slider.cjs.entry.js +8 -1
  109. package/dist/cjs/ifx-slider.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ifx-spinner.cjs.entry.js +3 -1
  111. package/dist/cjs/ifx-spinner.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ifx-status.cjs.entry.js +2 -1
  113. package/dist/cjs/ifx-status.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ifx-step.cjs.entry.js +2 -1
  115. package/dist/cjs/ifx-step.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ifx-stepper.cjs.entry.js +2 -1
  117. package/dist/cjs/ifx-stepper.cjs.entry.js.map +1 -1
  118. package/dist/cjs/ifx-switch.cjs.entry.js +2 -1
  119. package/dist/cjs/ifx-switch.cjs.entry.js.map +1 -1
  120. package/dist/cjs/ifx-tab.cjs.entry.js +3 -1
  121. package/dist/cjs/ifx-tab.cjs.entry.js.map +1 -1
  122. package/dist/cjs/ifx-table.cjs.entry.js +28 -26
  123. package/dist/cjs/ifx-table.cjs.entry.js.map +1 -1
  124. package/dist/cjs/ifx-tabs.cjs.entry.js +8 -7
  125. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  126. package/dist/cjs/ifx-tag.cjs.entry.js +2 -1
  127. package/dist/cjs/ifx-tag.cjs.entry.js.map +1 -1
  128. package/dist/cjs/ifx-textarea.cjs.entry.js +9 -1
  129. package/dist/cjs/ifx-textarea.cjs.entry.js.map +1 -1
  130. package/dist/cjs/ifx-tooltip.cjs.entry.js +8 -7
  131. package/dist/cjs/ifx-tooltip.cjs.entry.js.map +1 -1
  132. package/dist/cjs/{index-a6167356.js → index-af3b4f6c.js} +99 -125
  133. package/dist/cjs/index-af3b4f6c.js.map +1 -0
  134. package/dist/cjs/infineon-design-system-stencil.cjs.js +3 -3
  135. package/dist/cjs/infineon-design-system-stencil.cjs.js.map +1 -1
  136. package/dist/cjs/loader.cjs.js +2 -2
  137. package/dist/collection/collection-manifest.json +1 -1
  138. package/dist/collection/components/accordion/accordion.js +2 -2
  139. package/dist/collection/components/accordion/accordion.js.map +1 -1
  140. package/dist/collection/components/accordion/accordion.stories.js +7 -81
  141. package/dist/collection/components/accordion/accordion.stories.js.map +1 -1
  142. package/dist/collection/components/accordion/accordionItem.js +11 -10
  143. package/dist/collection/components/accordion/accordionItem.js.map +1 -1
  144. package/dist/collection/components/alert/alert.js +5 -3
  145. package/dist/collection/components/alert/alert.js.map +1 -1
  146. package/dist/collection/components/alert/alert.stories.js +12 -45
  147. package/dist/collection/components/alert/alert.stories.js.map +1 -1
  148. package/dist/collection/components/badge/badge.stories.js +7 -28
  149. package/dist/collection/components/badge/badge.stories.js.map +1 -1
  150. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js +5 -3
  151. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js.map +1 -1
  152. package/dist/collection/components/breadcrumb/breadcrumb-item.js +1 -0
  153. package/dist/collection/components/breadcrumb/breadcrumb-item.js.map +1 -1
  154. package/dist/collection/components/breadcrumb/breadcrumb.js +3 -3
  155. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  156. package/dist/collection/components/breadcrumb/breadcrumb.stories.js +13 -87
  157. package/dist/collection/components/breadcrumb/breadcrumb.stories.js.map +1 -1
  158. package/dist/collection/components/button/button.js +10 -7
  159. package/dist/collection/components/button/button.js.map +1 -1
  160. package/dist/collection/components/button/button.stories.js +9 -101
  161. package/dist/collection/components/button/button.stories.js.map +1 -1
  162. package/dist/collection/components/card/card-headline/card-headline.js +4 -0
  163. package/dist/collection/components/card/card-headline/card-headline.js.map +1 -1
  164. package/dist/collection/components/card/card-image/card-image.js +5 -0
  165. package/dist/collection/components/card/card-image/card-image.js.map +1 -1
  166. package/dist/collection/components/card/card-text/card-text.js +3 -0
  167. package/dist/collection/components/card/card-text/card-text.js.map +1 -1
  168. package/dist/collection/components/card/card.js +4 -0
  169. package/dist/collection/components/card/card.js.map +1 -1
  170. package/dist/collection/components/card/card.stories.js +4 -85
  171. package/dist/collection/components/card/card.stories.js.map +1 -1
  172. package/dist/collection/components/checkbox/checkbox.js +3 -0
  173. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  174. package/dist/collection/components/checkbox/checkbox.stories.js +14 -72
  175. package/dist/collection/components/checkbox/checkbox.stories.js.map +1 -1
  176. package/dist/collection/components/chip/chip-item/chip-item.js +4 -4
  177. package/dist/collection/components/chip/chip-item/chip-item.js.map +1 -1
  178. package/dist/collection/components/chip/chip.js +16 -15
  179. package/dist/collection/components/chip/chip.js.map +1 -1
  180. package/dist/collection/components/chip/chip.stories.js +26 -21
  181. package/dist/collection/components/chip/chip.stories.js.map +1 -1
  182. package/dist/collection/components/chip/interfaces.js.map +1 -1
  183. package/dist/collection/components/content-switcher/content-switcher-item.js +1 -0
  184. package/dist/collection/components/content-switcher/content-switcher-item.js.map +1 -1
  185. package/dist/collection/components/content-switcher/content-switcher.js +2 -1
  186. package/dist/collection/components/content-switcher/content-switcher.js.map +1 -1
  187. package/dist/collection/components/content-switcher/content-switcher.stories.js +3 -65
  188. package/dist/collection/components/content-switcher/content-switcher.stories.js.map +1 -1
  189. package/dist/collection/components/date-picker/date-picker.js +6 -0
  190. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  191. package/dist/collection/components/date-picker/date-picker.stories.js +7 -97
  192. package/dist/collection/components/date-picker/date-picker.stories.js.map +1 -1
  193. package/dist/collection/components/dropdown/dropdown-item/dropdown-item.js +1 -0
  194. package/dist/collection/components/dropdown/dropdown-item/dropdown-item.js.map +1 -1
  195. package/dist/collection/components/dropdown/dropdown-menu/dropdown-menu.js.map +1 -1
  196. package/dist/collection/components/dropdown/dropdown-trigger/dropdown-trigger.js.map +1 -1
  197. package/dist/collection/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.js +2 -0
  198. package/dist/collection/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.js.map +1 -1
  199. package/dist/collection/components/dropdown/dropdown.js +3 -3
  200. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  201. package/dist/collection/components/dropdown/dropdown.stories.js +64 -222
  202. package/dist/collection/components/dropdown/dropdown.stories.js.map +1 -1
  203. package/dist/collection/components/footer/footer.js +2 -2
  204. package/dist/collection/components/footer/footer.js.map +1 -1
  205. package/dist/collection/components/footer/footer.stories.js +1 -31
  206. package/dist/collection/components/footer/footer.stories.js.map +1 -1
  207. package/dist/collection/components/icon/infineonIconStencil.js +1 -0
  208. package/dist/collection/components/icon/infineonIconStencil.js.map +1 -1
  209. package/dist/collection/components/icon/infineonIconStencil.stories.js +2 -7
  210. package/dist/collection/components/icon/infineonIconStencil.stories.js.map +1 -1
  211. package/dist/collection/components/icon-button/icon-button.js +5 -0
  212. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  213. package/dist/collection/components/icon-button/icon-button.stories.js +5 -61
  214. package/dist/collection/components/icon-button/icon-button.stories.js.map +1 -1
  215. package/dist/collection/components/icons-preview/icons-preview.js +1 -0
  216. package/dist/collection/components/icons-preview/icons-preview.js.map +1 -1
  217. package/dist/collection/components/link/link.js +1 -0
  218. package/dist/collection/components/link/link.js.map +1 -1
  219. package/dist/collection/components/link/link.stories.js +4 -53
  220. package/dist/collection/components/link/link.stories.js.map +1 -1
  221. package/dist/collection/components/modal/modal.js +21 -21
  222. package/dist/collection/components/modal/modal.js.map +1 -1
  223. package/dist/collection/components/modal/modal.stories.js +19 -96
  224. package/dist/collection/components/modal/modal.stories.js.map +1 -1
  225. package/dist/collection/components/navigation/navbar/navbar-item.js +1 -0
  226. package/dist/collection/components/navigation/navbar/navbar-item.js.map +1 -1
  227. package/dist/collection/components/navigation/navbar/navbar-profile.js +4 -4
  228. package/dist/collection/components/navigation/navbar/navbar-profile.js.map +1 -1
  229. package/dist/collection/components/navigation/navbar/navbar.js +5 -4
  230. package/dist/collection/components/navigation/navbar/navbar.js.map +1 -1
  231. package/dist/collection/components/navigation/navbar/navbar.stories.js +12 -176
  232. package/dist/collection/components/navigation/navbar/navbar.stories.js.map +1 -1
  233. package/dist/collection/components/navigation/sidebar/sidebar-item.js +36 -13
  234. package/dist/collection/components/navigation/sidebar/sidebar-item.js.map +1 -1
  235. package/dist/collection/components/navigation/sidebar/sidebar.js.map +1 -1
  236. package/dist/collection/components/navigation/sidebar/sidebar.stories.js +19 -184
  237. package/dist/collection/components/navigation/sidebar/sidebar.stories.js.map +1 -1
  238. package/dist/collection/components/notification/notification.js +3 -0
  239. package/dist/collection/components/notification/notification.js.map +1 -1
  240. package/dist/collection/components/notification/notification.stories.js +8 -55
  241. package/dist/collection/components/notification/notification.stories.js.map +1 -1
  242. package/dist/collection/components/number-indicator/number-indicator.js.map +1 -1
  243. package/dist/collection/components/number-indicator/number-indicator.stories.js +0 -19
  244. package/dist/collection/components/number-indicator/number-indicator.stories.js.map +1 -1
  245. package/dist/collection/components/pagination/pagination.js +35 -5
  246. package/dist/collection/components/pagination/pagination.js.map +1 -1
  247. package/dist/collection/components/pagination/pagination.stories.js +14 -19
  248. package/dist/collection/components/pagination/pagination.stories.js.map +1 -1
  249. package/dist/collection/components/progress-bar/progress-bar.js +2 -0
  250. package/dist/collection/components/progress-bar/progress-bar.js.map +1 -1
  251. package/dist/collection/components/progress-bar/progress-bar.stories.js +8 -31
  252. package/dist/collection/components/progress-bar/progress-bar.stories.js.map +1 -1
  253. package/dist/collection/components/radio-button/radio-button.js +4 -0
  254. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  255. package/dist/collection/components/radio-button/radio-button.stories.js +13 -66
  256. package/dist/collection/components/radio-button/radio-button.stories.js.map +1 -1
  257. package/dist/collection/components/search-bar/search-bar.js +11 -8
  258. package/dist/collection/components/search-bar/search-bar.js.map +1 -1
  259. package/dist/collection/components/search-bar/search-bar.stories.js +9 -58
  260. package/dist/collection/components/search-bar/search-bar.stories.js.map +1 -1
  261. package/dist/collection/components/search-field/search-field.js +9 -9
  262. package/dist/collection/components/search-field/search-field.js.map +1 -1
  263. package/dist/collection/components/search-field/search-field.stories.js +8 -54
  264. package/dist/collection/components/search-field/search-field.stories.js.map +1 -1
  265. package/dist/collection/components/segmented-control/segment/segment.js +3 -0
  266. package/dist/collection/components/segmented-control/segment/segment.js.map +1 -1
  267. package/dist/collection/components/segmented-control/segmented-control.js +1 -1
  268. package/dist/collection/components/segmented-control/segmented-control.js.map +1 -1
  269. package/dist/collection/components/segmented-control/segmented-control.stories.js +10 -1
  270. package/dist/collection/components/segmented-control/segmented-control.stories.js.map +1 -1
  271. package/dist/collection/components/select/multi-select/multiselect.js +33 -25
  272. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  273. package/dist/collection/components/select/multi-select/multiselect.stories.js +5 -131
  274. package/dist/collection/components/select/multi-select/multiselect.stories.js.map +1 -1
  275. package/dist/collection/components/select/single-select/select.js +44 -2
  276. package/dist/collection/components/select/single-select/select.js.map +1 -1
  277. package/dist/collection/components/select/single-select/select.stories.js +26 -83
  278. package/dist/collection/components/select/single-select/select.stories.js.map +1 -1
  279. package/dist/collection/components/slider/slider.js +7 -0
  280. package/dist/collection/components/slider/slider.js.map +1 -1
  281. package/dist/collection/components/slider/slider.stories.js +13 -97
  282. package/dist/collection/components/slider/slider.stories.js.map +1 -1
  283. package/dist/collection/components/spinner/spinner.js +2 -0
  284. package/dist/collection/components/spinner/spinner.js.map +1 -1
  285. package/dist/collection/components/spinner/spinner.stories.js +2 -34
  286. package/dist/collection/components/spinner/spinner.stories.js.map +1 -1
  287. package/dist/collection/components/status/status.js +1 -0
  288. package/dist/collection/components/status/status.js.map +1 -1
  289. package/dist/collection/components/status/status.stories.js +1 -25
  290. package/dist/collection/components/status/status.stories.js.map +1 -1
  291. package/dist/collection/components/stepper/step/step.js +1 -0
  292. package/dist/collection/components/stepper/step/step.js.map +1 -1
  293. package/dist/collection/components/stepper/stepper.js +1 -0
  294. package/dist/collection/components/stepper/stepper.js.map +1 -1
  295. package/dist/collection/components/stepper/stepper.stories.js +25 -54
  296. package/dist/collection/components/stepper/stepper.stories.js.map +1 -1
  297. package/dist/collection/components/switch/switch.js +1 -0
  298. package/dist/collection/components/switch/switch.js.map +1 -1
  299. package/dist/collection/components/switch/switch.stories.js +4 -51
  300. package/dist/collection/components/switch/switch.stories.js.map +1 -1
  301. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js +5 -4
  302. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js.map +1 -1
  303. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js +5 -4
  304. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js.map +1 -1
  305. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js +5 -1
  306. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js.map +1 -1
  307. package/dist/collection/components/table-advanced-version/filter-type-group/filter-type-group.js +1 -1
  308. package/dist/collection/components/table-advanced-version/filter-type-group/filter-type-group.js.map +1 -1
  309. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js +5 -0
  310. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js.map +1 -1
  311. package/dist/collection/components/table-advanced-version/list/list.js +9 -8
  312. package/dist/collection/components/table-advanced-version/list/list.js.map +1 -1
  313. package/dist/collection/components/table-advanced-version/set-filter/setFilter.js +4 -0
  314. package/dist/collection/components/table-advanced-version/set-filter/setFilter.js.map +1 -1
  315. package/dist/collection/components/table-advanced-version/table.js +28 -26
  316. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  317. package/dist/collection/components/table-advanced-version/table.stories.js +39 -124
  318. package/dist/collection/components/table-advanced-version/table.stories.js.map +1 -1
  319. package/dist/collection/components/table-basic-version/table.js +5 -1
  320. package/dist/collection/components/table-basic-version/table.js.map +1 -1
  321. package/dist/collection/components/table-basic-version/table.stories.js +4 -31
  322. package/dist/collection/components/table-basic-version/table.stories.js.map +1 -1
  323. package/dist/collection/components/tabs/tab.js +2 -0
  324. package/dist/collection/components/tabs/tab.js.map +1 -1
  325. package/dist/collection/components/tabs/tabs.js +8 -7
  326. package/dist/collection/components/tabs/tabs.js.map +1 -1
  327. package/dist/collection/components/tabs/tabs.stories.js +29 -104
  328. package/dist/collection/components/tabs/tabs.stories.js.map +1 -1
  329. package/dist/collection/components/tag/tag.js +3 -0
  330. package/dist/collection/components/tag/tag.js.map +1 -1
  331. package/dist/collection/components/tag/tag.stories.js +0 -18
  332. package/dist/collection/components/tag/tag.stories.js.map +1 -1
  333. package/dist/collection/components/text-field/text-field.js +1 -0
  334. package/dist/collection/components/text-field/text-field.js.map +1 -1
  335. package/dist/collection/components/text-field/text-field.stories.js +13 -116
  336. package/dist/collection/components/text-field/text-field.stories.js.map +1 -1
  337. package/dist/collection/components/textarea/textarea.js +8 -0
  338. package/dist/collection/components/textarea/textarea.js.map +1 -1
  339. package/dist/collection/components/textarea/textarea.stories.js +3 -1
  340. package/dist/collection/components/textarea/textarea.stories.js.map +1 -1
  341. package/dist/collection/components/tooltip/tooltip.js +7 -6
  342. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  343. package/dist/collection/components/tooltip/tooltip.stories.js +4 -48
  344. package/dist/collection/components/tooltip/tooltip.stories.js.map +1 -1
  345. package/dist/components/ifx-accordion-item.js +1 -1
  346. package/dist/components/ifx-accordion.js +1 -1
  347. package/dist/components/ifx-alert.js +7 -5
  348. package/dist/components/ifx-alert.js.map +1 -1
  349. package/dist/components/ifx-badge.js +1 -1
  350. package/dist/components/ifx-basic-table.js +6 -2
  351. package/dist/components/ifx-basic-table.js.map +1 -1
  352. package/dist/components/ifx-breadcrumb-item-label.js +6 -4
  353. package/dist/components/ifx-breadcrumb-item-label.js.map +1 -1
  354. package/dist/components/ifx-breadcrumb-item.js +2 -1
  355. package/dist/components/ifx-breadcrumb-item.js.map +1 -1
  356. package/dist/components/ifx-breadcrumb.js +4 -4
  357. package/dist/components/ifx-breadcrumb.js.map +1 -1
  358. package/dist/components/ifx-button.js +1 -1
  359. package/dist/components/ifx-card-headline.js +3 -1
  360. package/dist/components/ifx-card-headline.js.map +1 -1
  361. package/dist/components/ifx-card-image.js +4 -1
  362. package/dist/components/ifx-card-image.js.map +1 -1
  363. package/dist/components/ifx-card-links.js +1 -1
  364. package/dist/components/ifx-card-overline.js +1 -1
  365. package/dist/components/ifx-card-text.js +2 -1
  366. package/dist/components/ifx-card-text.js.map +1 -1
  367. package/dist/components/ifx-card.js +5 -1
  368. package/dist/components/ifx-card.js.map +1 -1
  369. package/dist/components/ifx-checkbox.js +1 -1
  370. package/dist/components/ifx-chip-item.js +1 -1
  371. package/dist/components/ifx-chip.js +1 -1
  372. package/dist/components/ifx-content-switcher-item.js +2 -1
  373. package/dist/components/ifx-content-switcher-item.js.map +1 -1
  374. package/dist/components/ifx-content-switcher.js +3 -2
  375. package/dist/components/ifx-content-switcher.js.map +1 -1
  376. package/dist/components/ifx-date-picker.js +8 -2
  377. package/dist/components/ifx-date-picker.js.map +1 -1
  378. package/dist/components/ifx-dropdown-header.js +1 -1
  379. package/dist/components/ifx-dropdown-item.js +3 -2
  380. package/dist/components/ifx-dropdown-item.js.map +1 -1
  381. package/dist/components/ifx-dropdown-menu.js +1 -1
  382. package/dist/components/ifx-dropdown-menu.js.map +1 -1
  383. package/dist/components/ifx-dropdown-separator.js +1 -1
  384. package/dist/components/ifx-dropdown-trigger-button.js +5 -3
  385. package/dist/components/ifx-dropdown-trigger-button.js.map +1 -1
  386. package/dist/components/ifx-dropdown-trigger.js +1 -1
  387. package/dist/components/ifx-dropdown-trigger.js.map +1 -1
  388. package/dist/components/ifx-dropdown.js +4 -4
  389. package/dist/components/ifx-dropdown.js.map +1 -1
  390. package/dist/components/ifx-faq.js +4 -4
  391. package/dist/components/ifx-filter-accordion.js +8 -7
  392. package/dist/components/ifx-filter-accordion.js.map +1 -1
  393. package/dist/components/ifx-filter-bar.js +8 -7
  394. package/dist/components/ifx-filter-bar.js.map +1 -1
  395. package/dist/components/ifx-filter-search.js +8 -4
  396. package/dist/components/ifx-filter-search.js.map +1 -1
  397. package/dist/components/ifx-filter-type-group.js +2 -2
  398. package/dist/components/ifx-filter-type-group.js.map +1 -1
  399. package/dist/components/ifx-footer-column.js +1 -1
  400. package/dist/components/ifx-footer.js +3 -3
  401. package/dist/components/ifx-footer.js.map +1 -1
  402. package/dist/components/ifx-icon-button.js +1 -1
  403. package/dist/components/ifx-icon.js +1 -1
  404. package/dist/components/ifx-icons-preview.js +3 -2
  405. package/dist/components/ifx-icons-preview.js.map +1 -1
  406. package/dist/components/ifx-link.js +1 -1
  407. package/dist/components/ifx-list-entry.js +7 -4
  408. package/dist/components/ifx-list-entry.js.map +1 -1
  409. package/dist/components/ifx-list.js +12 -11
  410. package/dist/components/ifx-list.js.map +1 -1
  411. package/dist/components/ifx-modal.js +22 -22
  412. package/dist/components/ifx-modal.js.map +1 -1
  413. package/dist/components/ifx-multiselect.js +1 -1
  414. package/dist/components/ifx-navbar-item.js +3 -2
  415. package/dist/components/ifx-navbar-item.js.map +1 -1
  416. package/dist/components/ifx-navbar-profile.js +5 -5
  417. package/dist/components/ifx-navbar-profile.js.map +1 -1
  418. package/dist/components/ifx-navbar.js +7 -6
  419. package/dist/components/ifx-navbar.js.map +1 -1
  420. package/dist/components/ifx-notification.js +6 -3
  421. package/dist/components/ifx-notification.js.map +1 -1
  422. package/dist/components/ifx-number-indicator.js +1 -1
  423. package/dist/components/ifx-overview-table.js +4 -4
  424. package/dist/components/ifx-pagination.js +1 -1
  425. package/dist/components/ifx-progress-bar.js +3 -1
  426. package/dist/components/ifx-progress-bar.js.map +1 -1
  427. package/dist/components/ifx-radio-button.js +1 -1
  428. package/dist/components/ifx-search-bar.js +13 -10
  429. package/dist/components/ifx-search-bar.js.map +1 -1
  430. package/dist/components/ifx-search-field.js +1 -1
  431. package/dist/components/ifx-segment.js +5 -2
  432. package/dist/components/ifx-segment.js.map +1 -1
  433. package/dist/components/ifx-segmented-control.js +3 -3
  434. package/dist/components/ifx-segmented-control.js.map +1 -1
  435. package/dist/components/ifx-select.js +1 -1
  436. package/dist/components/ifx-set-filter.js +11 -7
  437. package/dist/components/ifx-set-filter.js.map +1 -1
  438. package/dist/components/ifx-sidebar-item.js +20 -16
  439. package/dist/components/ifx-sidebar-item.js.map +1 -1
  440. package/dist/components/ifx-sidebar-title.js +1 -1
  441. package/dist/components/ifx-sidebar.js +1 -1
  442. package/dist/components/ifx-sidebar.js.map +1 -1
  443. package/dist/components/ifx-slider.js +9 -2
  444. package/dist/components/ifx-slider.js.map +1 -1
  445. package/dist/components/ifx-spinner.js +3 -1
  446. package/dist/components/ifx-spinner.js.map +1 -1
  447. package/dist/components/ifx-status.js +2 -1
  448. package/dist/components/ifx-status.js.map +1 -1
  449. package/dist/components/ifx-step.js +3 -2
  450. package/dist/components/ifx-step.js.map +1 -1
  451. package/dist/components/ifx-stepper.js +2 -1
  452. package/dist/components/ifx-stepper.js.map +1 -1
  453. package/dist/components/ifx-switch.js +2 -1
  454. package/dist/components/ifx-switch.js.map +1 -1
  455. package/dist/components/ifx-tab.js +3 -1
  456. package/dist/components/ifx-tab.js.map +1 -1
  457. package/dist/components/ifx-table.js +38 -36
  458. package/dist/components/ifx-table.js.map +1 -1
  459. package/dist/components/ifx-tabs.js +9 -8
  460. package/dist/components/ifx-tabs.js.map +1 -1
  461. package/dist/components/ifx-tag.js +3 -2
  462. package/dist/components/ifx-tag.js.map +1 -1
  463. package/dist/components/ifx-text-field.js +1 -1
  464. package/dist/components/ifx-textarea.js +9 -1
  465. package/dist/components/ifx-textarea.js.map +1 -1
  466. package/dist/components/ifx-tooltip.js +9 -8
  467. package/dist/components/ifx-tooltip.js.map +1 -1
  468. package/dist/components/index.js +1 -1
  469. package/dist/components/{p-a6310ccf.js → p-094bb435.js} +4 -4
  470. package/dist/components/p-094bb435.js.map +1 -0
  471. package/dist/components/{p-0c4e0d19.js → p-11922b8b.js} +47 -5
  472. package/dist/components/p-11922b8b.js.map +1 -0
  473. package/dist/components/{p-9ddd1223.js → p-12e02e47.js} +4 -3
  474. package/dist/components/p-12e02e47.js.map +1 -0
  475. package/dist/components/{p-dd91260d.js → p-23cdd5a7.js} +8 -8
  476. package/dist/components/p-23cdd5a7.js.map +1 -0
  477. package/dist/components/{p-28a8736e.js → p-2f1e7628.js} +12 -10
  478. package/dist/components/p-2f1e7628.js.map +1 -0
  479. package/dist/components/{p-b62da6f0.js → p-4b3befbf.js} +2 -2
  480. package/dist/components/{p-b62da6f0.js.map → p-4b3befbf.js.map} +1 -1
  481. package/dist/components/{p-a99edff1.js → p-68d90201.js} +98 -126
  482. package/dist/components/p-68d90201.js.map +1 -0
  483. package/dist/components/{p-0d19a0d8.js → p-7bbdeac1.js} +6 -2
  484. package/dist/components/p-7bbdeac1.js.map +1 -0
  485. package/dist/components/{p-06410557.js → p-7e430b83.js} +3 -2
  486. package/dist/components/p-7e430b83.js.map +1 -0
  487. package/dist/components/{p-d454dd1b.js → p-8eed2f39.js} +8 -3
  488. package/dist/components/p-8eed2f39.js.map +1 -0
  489. package/dist/components/{p-90fa0583.js → p-9ee4ea24.js} +2 -2
  490. package/dist/components/p-9ee4ea24.js.map +1 -0
  491. package/dist/components/{p-62eff23e.js → p-b2439194.js} +11 -10
  492. package/dist/components/p-b2439194.js.map +1 -0
  493. package/dist/components/{p-61ecfa9a.js → p-c1f3a68c.js} +19 -18
  494. package/dist/components/p-c1f3a68c.js.map +1 -0
  495. package/dist/components/{p-8b176518.js → p-cfb87c4d.js} +3 -2
  496. package/dist/components/p-cfb87c4d.js.map +1 -0
  497. package/dist/components/{p-d2197368.js → p-d0a26bd5.js} +12 -9
  498. package/dist/components/p-d0a26bd5.js.map +1 -0
  499. package/dist/components/{p-0b837c89.js → p-d57db1c4.js} +12 -12
  500. package/dist/components/p-d57db1c4.js.map +1 -0
  501. package/dist/components/{p-fce5491f.js → p-ecc9c95c.js} +37 -29
  502. package/dist/components/p-ecc9c95c.js.map +1 -0
  503. package/dist/components/{p-b4ee6732.js → p-f0f583d5.js} +6 -3
  504. package/dist/components/p-f0f583d5.js.map +1 -0
  505. package/dist/esm/ifx-accordion_2.entry.js +9 -8
  506. package/dist/esm/ifx-accordion_2.entry.js.map +1 -1
  507. package/dist/esm/ifx-alert.entry.js +6 -4
  508. package/dist/esm/ifx-alert.entry.js.map +1 -1
  509. package/dist/esm/ifx-badge.entry.js +1 -1
  510. package/dist/esm/ifx-basic-table.entry.js +6 -2
  511. package/dist/esm/ifx-basic-table.entry.js.map +1 -1
  512. package/dist/esm/ifx-breadcrumb-item-label.entry.js +4 -2
  513. package/dist/esm/ifx-breadcrumb-item-label.entry.js.map +1 -1
  514. package/dist/esm/ifx-breadcrumb-item.entry.js +2 -1
  515. package/dist/esm/ifx-breadcrumb-item.entry.js.map +1 -1
  516. package/dist/esm/ifx-breadcrumb.entry.js +4 -4
  517. package/dist/esm/ifx-breadcrumb.entry.js.map +1 -1
  518. package/dist/esm/ifx-button.entry.js +11 -8
  519. package/dist/esm/ifx-button.entry.js.map +1 -1
  520. package/dist/esm/ifx-card-headline.entry.js +3 -1
  521. package/dist/esm/ifx-card-headline.entry.js.map +1 -1
  522. package/dist/esm/ifx-card-image.entry.js +4 -1
  523. package/dist/esm/ifx-card-image.entry.js.map +1 -1
  524. package/dist/esm/ifx-card-links.entry.js +1 -1
  525. package/dist/esm/ifx-card-overline.entry.js +1 -1
  526. package/dist/esm/ifx-card-text.entry.js +2 -1
  527. package/dist/esm/ifx-card-text.entry.js.map +1 -1
  528. package/dist/esm/ifx-card.entry.js +5 -1
  529. package/dist/esm/ifx-card.entry.js.map +1 -1
  530. package/dist/esm/ifx-checkbox.entry.js +4 -1
  531. package/dist/esm/ifx-checkbox.entry.js.map +1 -1
  532. package/dist/esm/ifx-chip_3.entry.js +27 -24
  533. package/dist/esm/ifx-chip_3.entry.js.map +1 -1
  534. package/dist/esm/ifx-content-switcher-item.entry.js +2 -1
  535. package/dist/esm/ifx-content-switcher-item.entry.js.map +1 -1
  536. package/dist/esm/ifx-content-switcher.entry.js +3 -2
  537. package/dist/esm/ifx-content-switcher.entry.js.map +1 -1
  538. package/dist/esm/ifx-date-picker.entry.js +7 -1
  539. package/dist/esm/ifx-date-picker.entry.js.map +1 -1
  540. package/dist/esm/ifx-dropdown-header.entry.js +1 -1
  541. package/dist/esm/ifx-dropdown-item.entry.js +2 -1
  542. package/dist/esm/ifx-dropdown-item.entry.js.map +1 -1
  543. package/dist/esm/ifx-dropdown-menu.entry.js +1 -1
  544. package/dist/esm/ifx-dropdown-menu.entry.js.map +1 -1
  545. package/dist/esm/ifx-dropdown-separator.entry.js +1 -1
  546. package/dist/esm/ifx-dropdown-trigger-button.entry.js +3 -1
  547. package/dist/esm/ifx-dropdown-trigger-button.entry.js.map +1 -1
  548. package/dist/esm/ifx-dropdown-trigger.entry.js +1 -1
  549. package/dist/esm/ifx-dropdown-trigger.entry.js.map +1 -1
  550. package/dist/esm/ifx-dropdown.entry.js +4 -4
  551. package/dist/esm/ifx-dropdown.entry.js.map +1 -1
  552. package/dist/esm/ifx-faq.entry.js +1 -1
  553. package/dist/esm/ifx-filter-accordion.entry.js +6 -5
  554. package/dist/esm/ifx-filter-accordion.entry.js.map +1 -1
  555. package/dist/esm/ifx-filter-bar.entry.js +6 -5
  556. package/dist/esm/ifx-filter-bar.entry.js.map +1 -1
  557. package/dist/esm/ifx-filter-search.entry.js +6 -2
  558. package/dist/esm/ifx-filter-search.entry.js.map +1 -1
  559. package/dist/esm/ifx-filter-type-group.entry.js +2 -2
  560. package/dist/esm/ifx-filter-type-group.entry.js.map +1 -1
  561. package/dist/esm/ifx-footer-column.entry.js +1 -1
  562. package/dist/esm/ifx-footer.entry.js +3 -3
  563. package/dist/esm/ifx-footer.entry.js.map +1 -1
  564. package/dist/esm/ifx-icon-button.entry.js +6 -1
  565. package/dist/esm/ifx-icon-button.entry.js.map +1 -1
  566. package/dist/esm/ifx-icon.entry.js +2 -1
  567. package/dist/esm/ifx-icon.entry.js.map +1 -1
  568. package/dist/esm/ifx-icons-preview.entry.js +2 -1
  569. package/dist/esm/ifx-icons-preview.entry.js.map +1 -1
  570. package/dist/esm/ifx-link.entry.js +2 -1
  571. package/dist/esm/ifx-link.entry.js.map +1 -1
  572. package/dist/esm/ifx-list-entry.entry.js +4 -1
  573. package/dist/esm/ifx-list-entry.entry.js.map +1 -1
  574. package/dist/esm/ifx-list.entry.js +10 -9
  575. package/dist/esm/ifx-list.entry.js.map +1 -1
  576. package/dist/esm/ifx-modal.entry.js +20 -20
  577. package/dist/esm/ifx-modal.entry.js.map +1 -1
  578. package/dist/esm/ifx-multiselect_2.entry.js +34 -25
  579. package/dist/esm/ifx-multiselect_2.entry.js.map +1 -1
  580. package/dist/esm/ifx-navbar-item.entry.js +2 -1
  581. package/dist/esm/ifx-navbar-item.entry.js.map +1 -1
  582. package/dist/esm/ifx-navbar-profile.entry.js +5 -5
  583. package/dist/esm/ifx-navbar-profile.entry.js.map +1 -1
  584. package/dist/esm/ifx-navbar.entry.js +5 -4
  585. package/dist/esm/ifx-navbar.entry.js.map +1 -1
  586. package/dist/esm/ifx-notification.entry.js +4 -1
  587. package/dist/esm/ifx-notification.entry.js.map +1 -1
  588. package/dist/esm/ifx-number-indicator.entry.js +1 -1
  589. package/dist/esm/ifx-number-indicator.entry.js.map +1 -1
  590. package/dist/esm/ifx-overview-table.entry.js +1 -1
  591. package/dist/esm/ifx-progress-bar.entry.js +3 -1
  592. package/dist/esm/ifx-progress-bar.entry.js.map +1 -1
  593. package/dist/esm/ifx-radio-button.entry.js +5 -1
  594. package/dist/esm/ifx-radio-button.entry.js.map +1 -1
  595. package/dist/esm/ifx-search-bar.entry.js +11 -8
  596. package/dist/esm/ifx-search-bar.entry.js.map +1 -1
  597. package/dist/esm/ifx-search-field.entry.js +10 -10
  598. package/dist/esm/ifx-search-field.entry.js.map +1 -1
  599. package/dist/esm/ifx-segment.entry.js +4 -1
  600. package/dist/esm/ifx-segment.entry.js.map +1 -1
  601. package/dist/esm/ifx-segmented-control.entry.js +2 -2
  602. package/dist/esm/ifx-segmented-control.entry.js.map +1 -1
  603. package/dist/esm/ifx-select.entry.js +45 -3
  604. package/dist/esm/ifx-select.entry.js.map +1 -1
  605. package/dist/esm/ifx-set-filter.entry.js +5 -1
  606. package/dist/esm/ifx-set-filter.entry.js.map +1 -1
  607. package/dist/esm/ifx-sidebar-item.entry.js +15 -12
  608. package/dist/esm/ifx-sidebar-item.entry.js.map +1 -1
  609. package/dist/esm/ifx-sidebar-title.entry.js +1 -1
  610. package/dist/esm/ifx-sidebar.entry.js +1 -1
  611. package/dist/esm/ifx-sidebar.entry.js.map +1 -1
  612. package/dist/esm/ifx-slider.entry.js +8 -1
  613. package/dist/esm/ifx-slider.entry.js.map +1 -1
  614. package/dist/esm/ifx-spinner.entry.js +3 -1
  615. package/dist/esm/ifx-spinner.entry.js.map +1 -1
  616. package/dist/esm/ifx-status.entry.js +2 -1
  617. package/dist/esm/ifx-status.entry.js.map +1 -1
  618. package/dist/esm/ifx-step.entry.js +2 -1
  619. package/dist/esm/ifx-step.entry.js.map +1 -1
  620. package/dist/esm/ifx-stepper.entry.js +2 -1
  621. package/dist/esm/ifx-stepper.entry.js.map +1 -1
  622. package/dist/esm/ifx-switch.entry.js +2 -1
  623. package/dist/esm/ifx-switch.entry.js.map +1 -1
  624. package/dist/esm/ifx-tab.entry.js +3 -1
  625. package/dist/esm/ifx-tab.entry.js.map +1 -1
  626. package/dist/esm/ifx-table.entry.js +28 -26
  627. package/dist/esm/ifx-table.entry.js.map +1 -1
  628. package/dist/esm/ifx-tabs.entry.js +8 -7
  629. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  630. package/dist/esm/ifx-tag.entry.js +2 -1
  631. package/dist/esm/ifx-tag.entry.js.map +1 -1
  632. package/dist/esm/ifx-textarea.entry.js +9 -1
  633. package/dist/esm/ifx-textarea.entry.js.map +1 -1
  634. package/dist/esm/ifx-tooltip.entry.js +8 -7
  635. package/dist/esm/ifx-tooltip.entry.js.map +1 -1
  636. package/dist/esm/{index-689aa2d0.js → index-dc4139fb.js} +99 -125
  637. package/dist/esm/index-dc4139fb.js.map +1 -0
  638. package/dist/esm/infineon-design-system-stencil.js +4 -4
  639. package/dist/esm/infineon-design-system-stencil.js.map +1 -1
  640. package/dist/esm/loader.js +3 -3
  641. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  642. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js.map +1 -1
  643. package/dist/infineon-design-system-stencil/{p-8e416f0e.entry.js → p-00d6e46e.entry.js} +2 -2
  644. package/dist/infineon-design-system-stencil/p-00d6e46e.entry.js.map +1 -0
  645. package/dist/infineon-design-system-stencil/p-030a5b46.entry.js +2 -0
  646. package/dist/infineon-design-system-stencil/p-030a5b46.entry.js.map +1 -0
  647. package/dist/infineon-design-system-stencil/p-0a011c63.entry.js +2 -0
  648. package/dist/infineon-design-system-stencil/p-0a011c63.entry.js.map +1 -0
  649. package/dist/infineon-design-system-stencil/p-0c4276df.entry.js +2 -0
  650. package/dist/infineon-design-system-stencil/p-0c4276df.entry.js.map +1 -0
  651. package/dist/infineon-design-system-stencil/p-189c89c3.entry.js +2 -0
  652. package/dist/infineon-design-system-stencil/p-189c89c3.entry.js.map +1 -0
  653. package/dist/infineon-design-system-stencil/{p-ade79e19.entry.js → p-18f5a5e3.entry.js} +2 -2
  654. package/dist/infineon-design-system-stencil/p-1aed7d45.entry.js +2 -0
  655. package/dist/infineon-design-system-stencil/p-1aed7d45.entry.js.map +1 -0
  656. package/dist/infineon-design-system-stencil/p-222c1af9.entry.js +2 -0
  657. package/dist/infineon-design-system-stencil/p-222c1af9.entry.js.map +1 -0
  658. package/dist/infineon-design-system-stencil/p-27a52d0b.entry.js +2 -0
  659. package/dist/infineon-design-system-stencil/p-27a52d0b.entry.js.map +1 -0
  660. package/dist/infineon-design-system-stencil/p-28fb795b.entry.js +2 -0
  661. package/dist/infineon-design-system-stencil/{p-73505b17.entry.js.map → p-28fb795b.entry.js.map} +1 -1
  662. package/dist/infineon-design-system-stencil/p-32510d11.entry.js +2 -0
  663. package/dist/infineon-design-system-stencil/p-32510d11.entry.js.map +1 -0
  664. package/dist/infineon-design-system-stencil/{p-473fefdf.entry.js → p-32fc3ce3.entry.js} +2 -2
  665. package/dist/infineon-design-system-stencil/{p-6e338857.entry.js → p-34fb9dca.entry.js} +2 -2
  666. package/dist/infineon-design-system-stencil/p-35d0daa5.entry.js +2 -0
  667. package/dist/infineon-design-system-stencil/p-35d0daa5.entry.js.map +1 -0
  668. package/dist/infineon-design-system-stencil/{p-5250dd94.entry.js → p-366148e2.entry.js} +2 -2
  669. package/dist/infineon-design-system-stencil/p-366148e2.entry.js.map +1 -0
  670. package/dist/infineon-design-system-stencil/p-379a2090.entry.js +2 -0
  671. package/dist/infineon-design-system-stencil/p-379a2090.entry.js.map +1 -0
  672. package/dist/infineon-design-system-stencil/{p-6754fac0.entry.js → p-3b99fb06.entry.js} +2 -2
  673. package/dist/infineon-design-system-stencil/p-3b99fb06.entry.js.map +1 -0
  674. package/dist/infineon-design-system-stencil/{p-e5b49030.entry.js → p-3c5a8615.entry.js} +2 -2
  675. package/dist/infineon-design-system-stencil/p-3c5a8615.entry.js.map +1 -0
  676. package/dist/infineon-design-system-stencil/p-436babb8.entry.js +2 -0
  677. package/dist/infineon-design-system-stencil/p-436babb8.entry.js.map +1 -0
  678. package/dist/infineon-design-system-stencil/p-44b2cbe1.entry.js +2 -0
  679. package/dist/infineon-design-system-stencil/p-44b2cbe1.entry.js.map +1 -0
  680. package/dist/infineon-design-system-stencil/p-466fea81.entry.js +2 -0
  681. package/dist/infineon-design-system-stencil/p-466fea81.entry.js.map +1 -0
  682. package/dist/infineon-design-system-stencil/{p-c27f4f95.entry.js → p-499dba27.entry.js} +2 -2
  683. package/dist/infineon-design-system-stencil/p-499dba27.entry.js.map +1 -0
  684. package/dist/infineon-design-system-stencil/{p-0b83f13d.entry.js → p-4b21c0e6.entry.js} +2 -2
  685. package/dist/infineon-design-system-stencil/p-4b21c0e6.entry.js.map +1 -0
  686. package/dist/infineon-design-system-stencil/p-4fab3a1e.entry.js +2 -0
  687. package/dist/infineon-design-system-stencil/p-4fab3a1e.entry.js.map +1 -0
  688. package/dist/infineon-design-system-stencil/{p-7c044fc5.entry.js → p-51980b19.entry.js} +2 -2
  689. package/dist/infineon-design-system-stencil/p-51c4e760.entry.js +2 -0
  690. package/dist/infineon-design-system-stencil/{p-4f959419.entry.js.map → p-51c4e760.entry.js.map} +1 -1
  691. package/dist/infineon-design-system-stencil/p-53f2ab7f.entry.js +2 -0
  692. package/dist/infineon-design-system-stencil/{p-58e10312.entry.js.map → p-53f2ab7f.entry.js.map} +1 -1
  693. package/dist/infineon-design-system-stencil/{p-d6609bb0.entry.js → p-584149bd.entry.js} +2 -2
  694. package/dist/infineon-design-system-stencil/p-584149bd.entry.js.map +1 -0
  695. package/dist/infineon-design-system-stencil/p-58966086.entry.js +2 -0
  696. package/dist/infineon-design-system-stencil/{p-b28aa111.entry.js.map → p-58966086.entry.js.map} +1 -1
  697. package/dist/infineon-design-system-stencil/{p-ba299e63.entry.js → p-5c6d5571.entry.js} +2 -2
  698. package/dist/infineon-design-system-stencil/p-5c6d5571.entry.js.map +1 -0
  699. package/dist/infineon-design-system-stencil/p-6389a7b8.entry.js +2 -0
  700. package/dist/infineon-design-system-stencil/p-6389a7b8.entry.js.map +1 -0
  701. package/dist/infineon-design-system-stencil/{p-0c47c14b.entry.js → p-680f8e2c.entry.js} +2 -2
  702. package/dist/infineon-design-system-stencil/{p-7d40e310.entry.js → p-6ae18c50.entry.js} +2 -2
  703. package/dist/infineon-design-system-stencil/p-6ae18c50.entry.js.map +1 -0
  704. package/dist/infineon-design-system-stencil/p-6b122987.js +3 -0
  705. package/dist/infineon-design-system-stencil/p-6b122987.js.map +1 -0
  706. package/dist/infineon-design-system-stencil/p-6c5f0f7b.entry.js +2 -0
  707. package/dist/infineon-design-system-stencil/{p-60703b6b.entry.js.map → p-6c5f0f7b.entry.js.map} +1 -1
  708. package/dist/infineon-design-system-stencil/{p-1ae3dfe5.entry.js → p-6fdc1a34.entry.js} +2 -2
  709. package/dist/infineon-design-system-stencil/p-6fdc1a34.entry.js.map +1 -0
  710. package/dist/infineon-design-system-stencil/p-775d187b.entry.js +2 -0
  711. package/dist/infineon-design-system-stencil/p-775d187b.entry.js.map +1 -0
  712. package/dist/infineon-design-system-stencil/p-7bef9272.entry.js +2 -0
  713. package/dist/infineon-design-system-stencil/p-7bef9272.entry.js.map +1 -0
  714. package/dist/infineon-design-system-stencil/p-7f59e05a.entry.js +2 -0
  715. package/dist/infineon-design-system-stencil/p-7f59e05a.entry.js.map +1 -0
  716. package/dist/infineon-design-system-stencil/p-7fa8ccd3.entry.js +2 -0
  717. package/dist/infineon-design-system-stencil/p-7fa8ccd3.entry.js.map +1 -0
  718. package/dist/infineon-design-system-stencil/{p-17600a99.entry.js → p-85f4399b.entry.js} +3 -3
  719. package/dist/infineon-design-system-stencil/p-85f4399b.entry.js.map +1 -0
  720. package/dist/infineon-design-system-stencil/{p-36ccc908.entry.js → p-8969f1e4.entry.js} +2 -2
  721. package/dist/infineon-design-system-stencil/p-8969f1e4.entry.js.map +1 -0
  722. package/dist/infineon-design-system-stencil/p-89c7209f.entry.js +2 -0
  723. package/dist/infineon-design-system-stencil/p-89c7209f.entry.js.map +1 -0
  724. package/dist/infineon-design-system-stencil/{p-266d0369.entry.js → p-8a497a15.entry.js} +2 -2
  725. package/dist/infineon-design-system-stencil/{p-520ddc60.entry.js → p-91f91586.entry.js} +2 -2
  726. package/dist/infineon-design-system-stencil/p-91f91586.entry.js.map +1 -0
  727. package/dist/infineon-design-system-stencil/p-9481adc8.entry.js +2 -0
  728. package/dist/infineon-design-system-stencil/p-9481adc8.entry.js.map +1 -0
  729. package/dist/infineon-design-system-stencil/p-9ee328a5.entry.js +2 -0
  730. package/dist/infineon-design-system-stencil/p-9ee328a5.entry.js.map +1 -0
  731. package/dist/infineon-design-system-stencil/{p-9b33867d.entry.js → p-a116e0d2.entry.js} +2 -2
  732. package/dist/infineon-design-system-stencil/p-a116e0d2.entry.js.map +1 -0
  733. package/dist/infineon-design-system-stencil/p-a2d7c880.entry.js +2 -0
  734. package/dist/infineon-design-system-stencil/p-a2d7c880.entry.js.map +1 -0
  735. package/dist/infineon-design-system-stencil/{p-0bf1f167.entry.js → p-a8ccf376.entry.js} +2 -2
  736. package/dist/infineon-design-system-stencil/p-ad3db607.entry.js +2 -0
  737. package/dist/infineon-design-system-stencil/p-ad3db607.entry.js.map +1 -0
  738. package/dist/infineon-design-system-stencil/{p-f969a975.entry.js → p-b5a3fad1.entry.js} +2 -2
  739. package/dist/infineon-design-system-stencil/{p-ae1791a8.entry.js → p-bc8a4226.entry.js} +2 -2
  740. package/dist/infineon-design-system-stencil/p-bc8a4226.entry.js.map +1 -0
  741. package/dist/infineon-design-system-stencil/p-bddc382a.entry.js +2 -0
  742. package/dist/infineon-design-system-stencil/p-bddc382a.entry.js.map +1 -0
  743. package/dist/infineon-design-system-stencil/{p-16de8d40.entry.js → p-c1b1b593.entry.js} +2 -2
  744. package/dist/infineon-design-system-stencil/p-c1b1b593.entry.js.map +1 -0
  745. package/dist/infineon-design-system-stencil/p-c34f5517.entry.js +2 -0
  746. package/dist/infineon-design-system-stencil/p-c34f5517.entry.js.map +1 -0
  747. package/dist/infineon-design-system-stencil/{p-b245e0a2.entry.js → p-c5daebfa.entry.js} +2 -2
  748. package/dist/infineon-design-system-stencil/p-c5daebfa.entry.js.map +1 -0
  749. package/dist/infineon-design-system-stencil/p-c80f9282.entry.js +2 -0
  750. package/dist/infineon-design-system-stencil/p-c80f9282.entry.js.map +1 -0
  751. package/dist/infineon-design-system-stencil/{p-2b5f7cab.entry.js → p-c82d6a95.entry.js} +2 -2
  752. package/dist/infineon-design-system-stencil/p-c82d6a95.entry.js.map +1 -0
  753. package/dist/infineon-design-system-stencil/p-caff080b.entry.js +2 -0
  754. package/dist/infineon-design-system-stencil/p-caff080b.entry.js.map +1 -0
  755. package/dist/infineon-design-system-stencil/{p-a7884dc2.entry.js → p-ce413596.entry.js} +2 -2
  756. package/dist/infineon-design-system-stencil/p-ce413596.entry.js.map +1 -0
  757. package/dist/infineon-design-system-stencil/p-d101e5a0.entry.js +2 -0
  758. package/dist/infineon-design-system-stencil/p-d101e5a0.entry.js.map +1 -0
  759. package/dist/infineon-design-system-stencil/p-d52e5250.entry.js +2 -0
  760. package/dist/infineon-design-system-stencil/p-d52e5250.entry.js.map +1 -0
  761. package/dist/infineon-design-system-stencil/{p-4e3106ec.entry.js → p-db09429f.entry.js} +2 -2
  762. package/dist/infineon-design-system-stencil/p-db09429f.entry.js.map +1 -0
  763. package/dist/infineon-design-system-stencil/p-e66c33ea.entry.js +2 -0
  764. package/dist/infineon-design-system-stencil/p-e66c33ea.entry.js.map +1 -0
  765. package/dist/infineon-design-system-stencil/p-eb8ba37f.entry.js +2 -0
  766. package/dist/infineon-design-system-stencil/p-eb8ba37f.entry.js.map +1 -0
  767. package/dist/infineon-design-system-stencil/{p-580b88e4.entry.js → p-ee39e4ce.entry.js} +2 -2
  768. package/dist/infineon-design-system-stencil/p-f0052c72.entry.js +2 -0
  769. package/dist/infineon-design-system-stencil/{p-5c33ace7.entry.js.map → p-f0052c72.entry.js.map} +1 -1
  770. package/dist/infineon-design-system-stencil/{p-e3f2d25b.entry.js → p-f8d7bbe2.entry.js} +2 -2
  771. package/dist/infineon-design-system-stencil/p-f8d7bbe2.entry.js.map +1 -0
  772. package/dist/infineon-design-system-stencil/p-fbd9e58e.entry.js +2 -0
  773. package/dist/infineon-design-system-stencil/p-fbd9e58e.entry.js.map +1 -0
  774. package/dist/infineon-design-system-stencil/p-ff8e1bd0.entry.js +2 -0
  775. package/dist/infineon-design-system-stencil/p-ff8e1bd0.entry.js.map +1 -0
  776. package/dist/types/components/accordion/accordion.stories.d.ts +1 -67
  777. package/dist/types/components/accordion/accordionItem.d.ts +3 -3
  778. package/dist/types/components/alert/alert.stories.d.ts +11 -38
  779. package/dist/types/components/badge/badge.stories.d.ts +3 -23
  780. package/dist/types/components/breadcrumb/breadcrumb-item-label.d.ts +1 -1
  781. package/dist/types/components/breadcrumb/breadcrumb.stories.d.ts +1 -83
  782. package/dist/types/components/button/button.stories.d.ts +16 -92
  783. package/dist/types/components/card/card.stories.d.ts +1 -95
  784. package/dist/types/components/checkbox/checkbox.stories.d.ts +10 -65
  785. package/dist/types/components/chip/chip-item/chip-item.d.ts +1 -1
  786. package/dist/types/components/chip/chip.d.ts +1 -1
  787. package/dist/types/components/chip/chip.stories.d.ts +4 -11
  788. package/dist/types/components/chip/interfaces.d.ts +1 -1
  789. package/dist/types/components/content-switcher/content-switcher.stories.d.ts +0 -66
  790. package/dist/types/components/date-picker/date-picker.stories.d.ts +2 -89
  791. package/dist/types/components/dropdown/dropdown.stories.d.ts +33 -90
  792. package/dist/types/components/footer/footer.stories.d.ts +0 -26
  793. package/dist/types/components/icon/infineonIconStencil.stories.d.ts +0 -5
  794. package/dist/types/components/icon-button/icon-button.stories.d.ts +8 -56
  795. package/dist/types/components/link/link.stories.d.ts +6 -49
  796. package/dist/types/components/modal/modal.d.ts +2 -2
  797. package/dist/types/components/modal/modal.stories.d.ts +3 -77
  798. package/dist/types/components/navigation/navbar/navbar.stories.d.ts +6 -222
  799. package/dist/types/components/navigation/sidebar/sidebar-item.d.ts +3 -2
  800. package/dist/types/components/navigation/sidebar/sidebar.stories.d.ts +7 -161
  801. package/dist/types/components/notification/notification.stories.d.ts +2 -46
  802. package/dist/types/components/number-indicator/number-indicator.stories.d.ts +0 -19
  803. package/dist/types/components/pagination/pagination.d.ts +2 -0
  804. package/dist/types/components/pagination/pagination.stories.d.ts +7 -12
  805. package/dist/types/components/progress-bar/progress-bar.stories.d.ts +4 -25
  806. package/dist/types/components/radio-button/radio-button.stories.d.ts +8 -59
  807. package/dist/types/components/search-bar/search-bar.d.ts +1 -1
  808. package/dist/types/components/search-bar/search-bar.stories.d.ts +3 -60
  809. package/dist/types/components/search-field/search-field.stories.d.ts +6 -45
  810. package/dist/types/components/segmented-control/segmented-control.stories.d.ts +3 -0
  811. package/dist/types/components/select/multi-select/multiselect.d.ts +1 -1
  812. package/dist/types/components/select/multi-select/multiselect.stories.d.ts +0 -125
  813. package/dist/types/components/select/single-select/select.stories.d.ts +24 -67
  814. package/dist/types/components/slider/slider.stories.d.ts +0 -110
  815. package/dist/types/components/spinner/spinner.stories.d.ts +0 -32
  816. package/dist/types/components/status/status.stories.d.ts +2 -24
  817. package/dist/types/components/stepper/stepper.stories.d.ts +6 -30
  818. package/dist/types/components/switch/switch.stories.d.ts +1 -47
  819. package/dist/types/components/table-advanced-version/table.stories.d.ts +11 -50
  820. package/dist/types/components/table-basic-version/table.stories.d.ts +1 -21
  821. package/dist/types/components/tabs/tabs.d.ts +1 -1
  822. package/dist/types/components/tabs/tabs.stories.d.ts +9 -88
  823. package/dist/types/components/tag/tag.stories.d.ts +0 -20
  824. package/dist/types/components/text-field/text-field.stories.d.ts +10 -106
  825. package/dist/types/components/tooltip/tooltip.stories.d.ts +6 -41
  826. package/dist/types/components.d.ts +26 -20
  827. package/package.json +2 -3
  828. package/dist/cjs/index-a6167356.js.map +0 -1
  829. package/dist/components/p-06410557.js.map +0 -1
  830. package/dist/components/p-0b837c89.js.map +0 -1
  831. package/dist/components/p-0c4e0d19.js.map +0 -1
  832. package/dist/components/p-0d19a0d8.js.map +0 -1
  833. package/dist/components/p-28a8736e.js.map +0 -1
  834. package/dist/components/p-61ecfa9a.js.map +0 -1
  835. package/dist/components/p-62eff23e.js.map +0 -1
  836. package/dist/components/p-8b176518.js.map +0 -1
  837. package/dist/components/p-90fa0583.js.map +0 -1
  838. package/dist/components/p-9ddd1223.js.map +0 -1
  839. package/dist/components/p-a6310ccf.js.map +0 -1
  840. package/dist/components/p-a99edff1.js.map +0 -1
  841. package/dist/components/p-b4ee6732.js.map +0 -1
  842. package/dist/components/p-d2197368.js.map +0 -1
  843. package/dist/components/p-d454dd1b.js.map +0 -1
  844. package/dist/components/p-dd91260d.js.map +0 -1
  845. package/dist/components/p-fce5491f.js.map +0 -1
  846. package/dist/esm/index-689aa2d0.js.map +0 -1
  847. package/dist/infineon-design-system-stencil/p-0b83f13d.entry.js.map +0 -1
  848. package/dist/infineon-design-system-stencil/p-11618b47.entry.js +0 -2
  849. package/dist/infineon-design-system-stencil/p-11618b47.entry.js.map +0 -1
  850. package/dist/infineon-design-system-stencil/p-134d043c.entry.js +0 -2
  851. package/dist/infineon-design-system-stencil/p-134d043c.entry.js.map +0 -1
  852. package/dist/infineon-design-system-stencil/p-16de8d40.entry.js.map +0 -1
  853. package/dist/infineon-design-system-stencil/p-17600a99.entry.js.map +0 -1
  854. package/dist/infineon-design-system-stencil/p-1ae3dfe5.entry.js.map +0 -1
  855. package/dist/infineon-design-system-stencil/p-1cbb2790.entry.js +0 -2
  856. package/dist/infineon-design-system-stencil/p-1cbb2790.entry.js.map +0 -1
  857. package/dist/infineon-design-system-stencil/p-22e9c825.entry.js +0 -2
  858. package/dist/infineon-design-system-stencil/p-22e9c825.entry.js.map +0 -1
  859. package/dist/infineon-design-system-stencil/p-23978a74.entry.js +0 -2
  860. package/dist/infineon-design-system-stencil/p-23978a74.entry.js.map +0 -1
  861. package/dist/infineon-design-system-stencil/p-28e3abe5.entry.js +0 -2
  862. package/dist/infineon-design-system-stencil/p-28e3abe5.entry.js.map +0 -1
  863. package/dist/infineon-design-system-stencil/p-29604514.entry.js +0 -2
  864. package/dist/infineon-design-system-stencil/p-29604514.entry.js.map +0 -1
  865. package/dist/infineon-design-system-stencil/p-2b5f7cab.entry.js.map +0 -1
  866. package/dist/infineon-design-system-stencil/p-33842e51.entry.js +0 -2
  867. package/dist/infineon-design-system-stencil/p-33842e51.entry.js.map +0 -1
  868. package/dist/infineon-design-system-stencil/p-3688ea33.entry.js +0 -2
  869. package/dist/infineon-design-system-stencil/p-3688ea33.entry.js.map +0 -1
  870. package/dist/infineon-design-system-stencil/p-36ccc908.entry.js.map +0 -1
  871. package/dist/infineon-design-system-stencil/p-3d8b9fab.entry.js +0 -2
  872. package/dist/infineon-design-system-stencil/p-3d8b9fab.entry.js.map +0 -1
  873. package/dist/infineon-design-system-stencil/p-45e42392.entry.js +0 -2
  874. package/dist/infineon-design-system-stencil/p-45e42392.entry.js.map +0 -1
  875. package/dist/infineon-design-system-stencil/p-4aedcac0.entry.js +0 -2
  876. package/dist/infineon-design-system-stencil/p-4aedcac0.entry.js.map +0 -1
  877. package/dist/infineon-design-system-stencil/p-4af8a181.entry.js +0 -2
  878. package/dist/infineon-design-system-stencil/p-4af8a181.entry.js.map +0 -1
  879. package/dist/infineon-design-system-stencil/p-4e3106ec.entry.js.map +0 -1
  880. package/dist/infineon-design-system-stencil/p-4f959419.entry.js +0 -2
  881. package/dist/infineon-design-system-stencil/p-520ddc60.entry.js.map +0 -1
  882. package/dist/infineon-design-system-stencil/p-5250dd94.entry.js.map +0 -1
  883. package/dist/infineon-design-system-stencil/p-54210533.entry.js +0 -2
  884. package/dist/infineon-design-system-stencil/p-54210533.entry.js.map +0 -1
  885. package/dist/infineon-design-system-stencil/p-56e92d85.entry.js +0 -2
  886. package/dist/infineon-design-system-stencil/p-56e92d85.entry.js.map +0 -1
  887. package/dist/infineon-design-system-stencil/p-57bf766f.entry.js +0 -2
  888. package/dist/infineon-design-system-stencil/p-57bf766f.entry.js.map +0 -1
  889. package/dist/infineon-design-system-stencil/p-58e10312.entry.js +0 -2
  890. package/dist/infineon-design-system-stencil/p-5c33ace7.entry.js +0 -2
  891. package/dist/infineon-design-system-stencil/p-60703b6b.entry.js +0 -2
  892. package/dist/infineon-design-system-stencil/p-6754fac0.entry.js.map +0 -1
  893. package/dist/infineon-design-system-stencil/p-6a602709.entry.js +0 -2
  894. package/dist/infineon-design-system-stencil/p-6a602709.entry.js.map +0 -1
  895. package/dist/infineon-design-system-stencil/p-6ca92b82.entry.js +0 -2
  896. package/dist/infineon-design-system-stencil/p-6ca92b82.entry.js.map +0 -1
  897. package/dist/infineon-design-system-stencil/p-73505b17.entry.js +0 -2
  898. package/dist/infineon-design-system-stencil/p-758d455a.entry.js +0 -2
  899. package/dist/infineon-design-system-stencil/p-758d455a.entry.js.map +0 -1
  900. package/dist/infineon-design-system-stencil/p-7908baed.entry.js +0 -2
  901. package/dist/infineon-design-system-stencil/p-7908baed.entry.js.map +0 -1
  902. package/dist/infineon-design-system-stencil/p-7d40e310.entry.js.map +0 -1
  903. package/dist/infineon-design-system-stencil/p-7fbfd8a9.entry.js +0 -2
  904. package/dist/infineon-design-system-stencil/p-7fbfd8a9.entry.js.map +0 -1
  905. package/dist/infineon-design-system-stencil/p-84cb159f.entry.js +0 -2
  906. package/dist/infineon-design-system-stencil/p-84cb159f.entry.js.map +0 -1
  907. package/dist/infineon-design-system-stencil/p-878db58b.entry.js +0 -2
  908. package/dist/infineon-design-system-stencil/p-878db58b.entry.js.map +0 -1
  909. package/dist/infineon-design-system-stencil/p-8e416f0e.entry.js.map +0 -1
  910. package/dist/infineon-design-system-stencil/p-9b33867d.entry.js.map +0 -1
  911. package/dist/infineon-design-system-stencil/p-a593c3dc.entry.js +0 -2
  912. package/dist/infineon-design-system-stencil/p-a593c3dc.entry.js.map +0 -1
  913. package/dist/infineon-design-system-stencil/p-a7884dc2.entry.js.map +0 -1
  914. package/dist/infineon-design-system-stencil/p-adfb7e64.entry.js +0 -2
  915. package/dist/infineon-design-system-stencil/p-adfb7e64.entry.js.map +0 -1
  916. package/dist/infineon-design-system-stencil/p-ae1791a8.entry.js.map +0 -1
  917. package/dist/infineon-design-system-stencil/p-b245e0a2.entry.js.map +0 -1
  918. package/dist/infineon-design-system-stencil/p-b28aa111.entry.js +0 -2
  919. package/dist/infineon-design-system-stencil/p-b4cd7a6f.entry.js +0 -2
  920. package/dist/infineon-design-system-stencil/p-b4cd7a6f.entry.js.map +0 -1
  921. package/dist/infineon-design-system-stencil/p-ba299e63.entry.js.map +0 -1
  922. package/dist/infineon-design-system-stencil/p-c1f57ae4.entry.js +0 -2
  923. package/dist/infineon-design-system-stencil/p-c1f57ae4.entry.js.map +0 -1
  924. package/dist/infineon-design-system-stencil/p-c27f4f95.entry.js.map +0 -1
  925. package/dist/infineon-design-system-stencil/p-cc36307e.entry.js +0 -2
  926. package/dist/infineon-design-system-stencil/p-cc36307e.entry.js.map +0 -1
  927. package/dist/infineon-design-system-stencil/p-d6609bb0.entry.js.map +0 -1
  928. package/dist/infineon-design-system-stencil/p-d8353cbd.entry.js +0 -2
  929. package/dist/infineon-design-system-stencil/p-d8353cbd.entry.js.map +0 -1
  930. package/dist/infineon-design-system-stencil/p-e3f2d25b.entry.js.map +0 -1
  931. package/dist/infineon-design-system-stencil/p-e5b49030.entry.js.map +0 -1
  932. package/dist/infineon-design-system-stencil/p-efee6a82.entry.js +0 -2
  933. package/dist/infineon-design-system-stencil/p-efee6a82.entry.js.map +0 -1
  934. package/dist/infineon-design-system-stencil/p-f253df75.entry.js +0 -2
  935. package/dist/infineon-design-system-stencil/p-f253df75.entry.js.map +0 -1
  936. package/dist/infineon-design-system-stencil/p-f619bff3.js +0 -3
  937. package/dist/infineon-design-system-stencil/p-f619bff3.js.map +0 -1
  938. package/dist/infineon-design-system-stencil/p-f6a9f419.entry.js +0 -2
  939. package/dist/infineon-design-system-stencil/p-f6a9f419.entry.js.map +0 -1
  940. package/dist/infineon-design-system-stencil/p-fd400517.entry.js +0 -2
  941. package/dist/infineon-design-system-stencil/p-fd400517.entry.js.map +0 -1
  942. package/dist/infineon-design-system-stencil/p-feef3db3.entry.js +0 -2
  943. package/dist/infineon-design-system-stencil/p-feef3db3.entry.js.map +0 -1
  944. /package/dist/infineon-design-system-stencil/{p-ade79e19.entry.js.map → p-18f5a5e3.entry.js.map} +0 -0
  945. /package/dist/infineon-design-system-stencil/{p-473fefdf.entry.js.map → p-32fc3ce3.entry.js.map} +0 -0
  946. /package/dist/infineon-design-system-stencil/{p-6e338857.entry.js.map → p-34fb9dca.entry.js.map} +0 -0
  947. /package/dist/infineon-design-system-stencil/{p-7c044fc5.entry.js.map → p-51980b19.entry.js.map} +0 -0
  948. /package/dist/infineon-design-system-stencil/{p-0c47c14b.entry.js.map → p-680f8e2c.entry.js.map} +0 -0
  949. /package/dist/infineon-design-system-stencil/{p-266d0369.entry.js.map → p-8a497a15.entry.js.map} +0 -0
  950. /package/dist/infineon-design-system-stencil/{p-0bf1f167.entry.js.map → p-a8ccf376.entry.js.map} +0 -0
  951. /package/dist/infineon-design-system-stencil/{p-f969a975.entry.js.map → p-b5a3fad1.entry.js.map} +0 -0
  952. /package/dist/infineon-design-system-stencil/{p-580b88e4.entry.js.map → p-ee39e4ce.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"content-switcher.js","sourceRoot":"","sources":["../../../src/components/content-switcher/content-switcher.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Element, Event, EventEmitter, Host, State } from '@stencil/core';\n\nexport type ChangeEvent = { oldValue: string; newValue: string };\n\n@Component({\n tag: 'ifx-content-switcher',\n styleUrl: './content-switcher.scss',\n shadow: true,\n})\nexport class ContentSwitcher {\n @Element() el: HTMLElement;\n\n @State() items: Element[];\n @State() activeIndex = -1;\n @State() hoverIndex: number = -1;\n @State() focusIndex: number = -1;\n\n @State() dividers: Element[] = Array();\n\n @Event() ifxChange: EventEmitter<ChangeEvent>;\n\n private eventHandlers: Map<Element, { [key: string]: EventListener }> = new Map();\n\n componentWillLoad() {\n this.items = Array.from(this.el.children);\n this.initializeDividers();\n this.addEventListeners();\n this.ensureSingleSelectedItem();\n }\n\n disconnectedCallback() {\n this.removeEventListeners();\n }\n\n /**\n * Initialize the dividers between items.\n */\n initializeDividers() {\n this.items.forEach((item, index) => {\n if (index < this.items.length - 1) {\n const divider = document.createElement('div');\n divider.classList.add('ifx-content-switcher-divider');\n item.after(divider);\n this.dividers.push(divider);\n }\n });\n }\n\n /**\n * Add event listeners for each item.\n */\n addEventListeners() {\n this.items.forEach((item, index) => {\n const handlers = {\n click: () => this.selectItem(index),\n mouseenter: () => this.handleHover(index, true),\n mouseleave: () => this.handleHover(index, false),\n focus: () => this.handleFocus(index, true),\n blur: () => this.handleFocus(index, false),\n };\n\n Object.keys(handlers).forEach(event => {\n item.addEventListener(event, handlers[event]);\n });\n\n this.eventHandlers.set(item, handlers);\n });\n }\n\n /**\n * Remove all event listeners.\n */\n removeEventListeners() {\n this.eventHandlers.forEach((handlers, item) => {\n Object.keys(handlers).forEach(event => {\n item.removeEventListener(event, handlers[event]);\n });\n });\n this.eventHandlers.clear();\n }\n\n /**\n * Ensure that only one item is selected at a time.\n */\n ensureSingleSelectedItem() {\n this.items.forEach((item, index) => {\n if (item.hasAttribute('selected')) {\n if (this.activeIndex < 0) {\n this.selectItem(index);\n } else {\n item.removeAttribute('selected');\n }\n }\n });\n }\n\n /**\n * Handle hover events on an item.\n * @param index - Index of the item.\n * @param isActive - Whether the item is hovered.\n */\n handleHover(index: number, isActive: boolean) {\n this.hoverIndex = isActive ? index : -1;\n this.updateDividersOfItem(index);\n }\n\n /**\n * Handle hover events on an item.\n * @param index - Index of the item.\n * @param isActive - Whether the item is focused.\n */\n handleFocus(index: number, isActive: boolean) {\n this.focusIndex = isActive ? index : -1;\n this.updateDividersOfItem(index);\n }\n\n /**\n * Update visibility of dividers adjacent to a specific item.\n * @param itemIndex - Index of the item.\n */\n updateDividersOfItem(itemIndex: number) {\n if (itemIndex < this.items.length - 1) {\n this.updateDividerVisibility(itemIndex);\n }\n if (itemIndex > 0) {\n this.updateDividerVisibility(itemIndex - 1);\n }\n }\n\n /**\n * Update visibility of a specific divider.\n * @param dividerIndex - Index of the divider.\n */\n updateDividerVisibility(dividerIndex: number) {\n const hiddenDividers = new Set([this.activeIndex, this.activeIndex - 1, this.hoverIndex, this.hoverIndex - 1, this.focusIndex, this.focusIndex - 1]);\n this.setDividerVisibility(dividerIndex, hiddenDividers.has(dividerIndex));\n }\n\n /**\n * Set the visibility of a specific divider.\n * @param dividerIndex - Index of the divider.\n * @param hidden - Whether the divider should be hidden.\n */\n setDividerVisibility(dividerIndex: number, hidden: boolean) {\n if (this.dividers[dividerIndex]) {\n this.dividers[dividerIndex].classList.toggle('hidden', hidden);\n }\n }\n\n /**\n * Select a specific item.\n * @param itemIndex - Index of the item to be selected.\n */\n selectItem(itemIndex: number) {\n if (itemIndex === this.activeIndex) return;\n const oldIndex = this.activeIndex;\n if (oldIndex >= 0) {\n this.items[oldIndex].removeAttribute('selected');\n }\n\n this.activeIndex = itemIndex;\n this.items[itemIndex].setAttribute('selected', 'true');\n\n this.ifxChange.emit({ oldValue: this.getValueOfItem(oldIndex), newValue: this.getValueOfItem(itemIndex) });\n this.updateDividersOfItem(oldIndex);\n this.updateDividersOfItem(itemIndex);\n }\n\n /**\n * Get the value property of the item at a specific index.\n * Falls back to the index if no value is set.\n * \n * @param index - Index of the item. \n * @returns The value of the item.\n */\n getValueOfItem(index: number): string {\n if (this.items[index] == null) return index.toLocaleString();\n return this.items[index].getAttribute('value') || index.toLocaleString();\n }\n\n render() {\n return (\n <Host>\n <div class=\"ifx-content-switcher\" role=\"group\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"content-switcher.js","sourceRoot":"","sources":["../../../src/components/content-switcher/content-switcher.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Element, Event, EventEmitter, Host, State } from '@stencil/core';\n\nexport type ChangeEvent = { oldValue: string; newValue: string };\n\n@Component({\n tag: 'ifx-content-switcher',\n styleUrl: './content-switcher.scss',\n shadow: true,\n})\nexport class ContentSwitcher {\n @Element() el: HTMLElement;\n\n @State() items: Element[];\n @State() activeIndex = -1;\n @State() hoverIndex: number = -1;\n @State() focusIndex: number = -1;\n\n @State() dividers: Element[] = Array();\n\n @Event() ifxChange: EventEmitter<ChangeEvent>;\n\n private eventHandlers: Map<Element, { [key: string]: EventListener }> = new Map();\n\n componentWillLoad() {\n this.items = Array.from(this.el.children);\n this.initializeDividers();\n this.addEventListeners();\n this.ensureSingleSelectedItem();\n }\n\n disconnectedCallback() {\n this.removeEventListeners();\n }\n\n /**\n * Initialize the dividers between items.\n */\n initializeDividers() {\n this.items.forEach((item, index) => {\n if (index < this.items.length - 1) {\n const divider = document.createElement('div');\n divider.classList.add('ifx-content-switcher-divider');\n item.after(divider);\n this.dividers.push(divider);\n }\n });\n }\n\n /**\n * Add event listeners for each item.\n */\n addEventListeners() {\n this.items.forEach((item, index) => {\n const handlers = {\n click: () => this.selectItem(index),\n mouseenter: () => this.handleHover(index, true),\n mouseleave: () => this.handleHover(index, false),\n focus: () => this.handleFocus(index, true),\n blur: () => this.handleFocus(index, false),\n };\n\n Object.keys(handlers).forEach(event => {\n item.addEventListener(event, handlers[event]);\n });\n\n this.eventHandlers.set(item, handlers);\n });\n }\n\n /**\n * Remove all event listeners.\n */\n removeEventListeners() {\n this.eventHandlers.forEach((handlers, item) => {\n Object.keys(handlers).forEach(event => {\n item.removeEventListener(event, handlers[event]);\n });\n });\n this.eventHandlers.clear();\n }\n\n /**\n * Ensure that only one item is selected at a time.\n */\n ensureSingleSelectedItem() {\n this.items.forEach((item, index) => {\n if (item.hasAttribute('selected')) {\n if (this.activeIndex < 0) {\n this.selectItem(index);\n } else {\n item.removeAttribute('selected');\n }\n }\n });\n }\n\n /**\n * Handle hover events on an item.\n * @param index - Index of the item.\n * @param isActive - Whether the item is hovered.\n */\n handleHover(index: number, isActive: boolean) {\n this.hoverIndex = isActive ? index : -1;\n this.updateDividersOfItem(index);\n }\n\n /**\n * Handle hover events on an item.\n * @param index - Index of the item.\n * @param isActive - Whether the item is focused.\n */\n handleFocus(index: number, isActive: boolean) {\n this.focusIndex = isActive ? index : -1;\n this.updateDividersOfItem(index);\n }\n\n /**\n * Update visibility of dividers adjacent to a specific item.\n * @param itemIndex - Index of the item.\n */\n updateDividersOfItem(itemIndex: number) {\n if (itemIndex < this.items.length - 1) {\n this.updateDividerVisibility(itemIndex);\n }\n if (itemIndex > 0) {\n this.updateDividerVisibility(itemIndex - 1);\n }\n }\n\n /**\n * Update visibility of a specific divider.\n * @param dividerIndex - Index of the divider.\n */\n updateDividerVisibility(dividerIndex: number) {\n const hiddenDividers = new Set([this.activeIndex, this.activeIndex - 1, this.hoverIndex, this.hoverIndex - 1, this.focusIndex, this.focusIndex - 1]);\n this.setDividerVisibility(dividerIndex, hiddenDividers.has(dividerIndex));\n }\n\n /**\n * Set the visibility of a specific divider.\n * @param dividerIndex - Index of the divider.\n * @param hidden - Whether the divider should be hidden.\n */\n setDividerVisibility(dividerIndex: number, hidden: boolean) {\n if (this.dividers[dividerIndex]) {\n this.dividers[dividerIndex].classList.toggle('hidden', hidden);\n }\n }\n\n /**\n * Select a specific item.\n * @param itemIndex - Index of the item to be selected.\n */\n selectItem(itemIndex: number) {\n if (itemIndex === this.activeIndex) return;\n const oldIndex = this.activeIndex;\n if (oldIndex >= 0) {\n this.items[oldIndex].removeAttribute('selected');\n }\n\n this.activeIndex = itemIndex;\n this.items[itemIndex].setAttribute('selected', 'true');\n\n this.ifxChange.emit({ oldValue: this.getValueOfItem(oldIndex), newValue: this.getValueOfItem(itemIndex) });\n this.updateDividersOfItem(oldIndex);\n this.updateDividersOfItem(itemIndex);\n }\n\n /**\n * Get the value property of the item at a specific index.\n * Falls back to the index if no value is set.\n * \n * @param index - Index of the item. \n * @returns The value of the item.\n */\n getValueOfItem(index: number): string {\n if (this.items[index] == null) return index.toLocaleString();\n return this.items[index].getAttribute('value') || index.toLocaleString();\n }\n\n render() {\n return (\n <Host>\n <div class=\"ifx-content-switcher\" role=\"group\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1,77 +1,18 @@
1
1
  import { action } from "@storybook/addon-actions";
2
- import { icons } from "@infineon/infineon-icons";
3
2
  export default {
4
3
  title: 'Components/Content Switcher',
5
4
  tags: ['autodocs'],
6
5
  args: {
7
6
  amountOfItems: 4,
8
- label: 'Item',
9
- value: 'item',
10
- selected: false,
11
- icon: 'applications-16'
12
7
  },
13
8
  argTypes: {
14
9
  amountOfItems: {
15
- name: 'Amount of Items',
16
10
  control: { type: 'number' },
17
- description: 'Set the number of content-switcher-items to be rendered.',
18
- table: {
19
- category: 'story controls',
20
- type: {
21
- summary: 'number'
22
- }
23
- }
24
- },
25
- label: {
26
- name: 'Label of Content Switcher Item',
27
- control: { type: 'text' },
28
- description: 'Set the label of the *<ifx-content-switcher-item>*.',
29
- table: {
30
- category: 'story controls',
31
- type: {
32
- summary: 'string'
33
- }
34
- }
35
- },
36
- value: {
37
- control: { type: 'text' },
38
- description: 'Set the value of the content-switcher-item.',
39
- table: {
40
- category: 'content-switcher-item props',
41
- type: {
42
- summary: 'string'
43
- }
44
- }
45
- },
46
- selected: {
47
- control: { type: 'boolean' },
48
- description: 'Set the selected state of the content-switcher-item. Only one item can be selected at the time. If there initially exists more than one selected item, then only the first item will be selected.',
49
- table: {
50
- category: 'content-switcher-item props',
51
- defaultValue: {
52
- summary: 'false'
53
- },
54
- type: {
55
- summary: 'boolean'
56
- }
57
- }
58
- },
59
- icon: {
60
- description: 'The icon of the content-switcher-item.',
61
- options: Object.values(icons).map(i => i['name']),
62
- control: { type: 'select' },
63
- table: {
64
- category: 'ifx-icon props',
65
- type: {
66
- summary: 'string'
67
- }
68
- }
69
11
  },
70
12
  ifxChange: {
71
13
  action: 'ifxChange',
72
14
  description: 'Custom event emitted when a different content-switcher-item gets selected. Contains the value of the previous and the new selected item.',
73
15
  table: {
74
- category: 'custom events',
75
16
  type: {
76
17
  summary: 'Framework integration',
77
18
  detail: 'React: onIfxChange={handleChange}\nVue:@ifxChange="handleChange"\nAngular:(ifxChange)="handleChange()"\nVanillaJs:.addEventListener("ifxChange", (event) => {//handle change});',
@@ -80,17 +21,14 @@ export default {
80
21
  }
81
22
  },
82
23
  };
83
- const DefaultTemplate = ({ amountOfItems, label, value, icon, selected }) => {
24
+ const DefaultTemplate = ({ amountOfItems }) => {
84
25
  const element = document.createElement('ifx-content-switcher');
85
26
  for (let i = 0; i < amountOfItems; i++) {
86
27
  const item = document.createElement('ifx-content-switcher-item');
87
- item.setAttribute('value', `${value} ${i + 1}`);
28
+ item.setAttribute('value', `item-${i + 1}`);
88
29
  item.innerHTML = `
89
- <ifx-icon icon="${icon}"></ifx-icon> ${label} ${i + 1}
30
+ <ifx-icon icon="applications-16"></ifx-icon>Item ${i + 1}
90
31
  `;
91
- if (i === 1 && selected) {
92
- item.setAttribute('selected', 'true');
93
- }
94
32
  element.appendChild(item);
95
33
  }
96
34
  element.addEventListener('ifxChange', action('ifxChange'));
@@ -1 +1 @@
1
- {"version":3,"file":"content-switcher.stories.js","sourceRoot":"","sources":["../../../src/components/content-switcher/content-switcher.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { action } from '@storybook/addon-actions';\nimport { icons } from '@infineon/infineon-icons';\n\nexport default {\n title: 'Components/Content Switcher',\n tags: ['autodocs'],\n\n args: {\n amountOfItems: 4,\n label: 'Item',\n value: 'item',\n selected: false,\n icon: 'applications-16'\n\n },\n argTypes: {\n amountOfItems: {\n name: 'Amount of Items',\n control: { type: 'number' },\n description: 'Set the number of content-switcher-items to be rendered.',\n table: {\n category: 'story controls',\n type: {\n summary: 'number'\n }\n }\n },\n label: {\n name: 'Label of Content Switcher Item',\n control: { type: 'text' },\n description: 'Set the label of the *<ifx-content-switcher-item>*.',\n table: {\n category: 'story controls',\n type: {\n summary: 'string'\n }\n }\n },\n value: {\n control: { type: 'text' },\n description: 'Set the value of the content-switcher-item.',\n table: {\n category: 'content-switcher-item props',\n type: {\n summary: 'string'\n }\n }\n },\n selected: {\n control: { type: 'boolean' },\n description: 'Set the selected state of the content-switcher-item. Only one item can be selected at the time. If there initially exists more than one selected item, then only the first item will be selected.',\n table: {\n category: 'content-switcher-item props',\n defaultValue: {\n summary: 'false'\n },\n type: {\n summary: 'boolean'\n }\n }\n },\n icon: {\n description: 'The icon of the content-switcher-item.',\n options: Object.values(icons).map(i => i['name']),\n control: { type: 'select' },\n table: {\n category: 'ifx-icon props',\n type: {\n summary: 'string'\n }\n }\n },\n ifxChange: {\n action: 'ifxChange',\n description: 'Custom event emitted when a different content-switcher-item gets selected. Contains the value of the previous and the new selected item.',\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 }\n },\n};\n\nconst DefaultTemplate = ({ amountOfItems, label, value, icon, selected }) => {\n const element = document.createElement('ifx-content-switcher');\n\n for (let i = 0; i < amountOfItems; i++) {\n const item = document.createElement('ifx-content-switcher-item');\n item.setAttribute('value', `${value} ${i + 1}`);\n item.innerHTML = `\n <ifx-icon icon=\"${icon}\"></ifx-icon> ${label} ${i + 1}\n `;\n if (i === 1 && selected) {\n item.setAttribute('selected', 'true');\n }\n\n element.appendChild(item);\n }\n element.addEventListener('ifxChange', action('ifxChange'));\n\n return element;\n};\n\nexport const Default = DefaultTemplate.bind({});"]}
1
+ {"version":3,"file":"content-switcher.stories.js","sourceRoot":"","sources":["../../../src/components/content-switcher/content-switcher.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,eAAe;IACb,KAAK,EAAE,6BAA6B;IACpC,IAAI,EAAE,CAAC,UAAU,CAAC;IAElB,IAAI,EAAE;QACJ,aAAa,EAAE,CAAC;KAEjB;IACD,QAAQ,EAAE;QACR,aAAa,EAAE;YACb,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC5B;QACD,SAAS,EAAE;YACT,MAAM,EAAE,WAAW;YACnB,WAAW,EAAE,0IAA0I;YACvJ,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,iLAAiL;iBACpL;aACF;SACF;KACF;CACF,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE;IAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;IAE/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC;QACjE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG;yDACoC,CAAC,GAAG,CAAC;KACzD,CAAC;QAEF,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAE3D,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/Content Switcher',\n tags: ['autodocs'],\n\n args: {\n amountOfItems: 4,\n\n },\n argTypes: {\n amountOfItems: {\n control: { type: 'number' },\n }, \n ifxChange: {\n action: 'ifxChange',\n description: 'Custom event emitted when a different content-switcher-item gets selected. Contains the value of the previous and the new selected item.', \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 }\n },\n};\n\nconst DefaultTemplate = ({ amountOfItems }) => {\n const element = document.createElement('ifx-content-switcher');\n\n for (let i = 0; i < amountOfItems; i++) {\n const item = document.createElement('ifx-content-switcher-item');\n item.setAttribute('value', `item-${i + 1}`);\n item.innerHTML = `\n <ifx-icon icon=\"applications-16\"></ifx-icon>Item ${i + 1}\n `;\n\n element.appendChild(item);\n }\n\n element.addEventListener('ifxChange', action('ifxChange'));\n\n return element;\n};\n\nexport const Default = DefaultTemplate.bind({});"]}
@@ -6,7 +6,13 @@ export class DatePicker {
6
6
  this.error = false;
7
7
  this.success = false;
8
8
  this.disabled = false;
9
+ this.AriaLabel = undefined;
10
+ this.value = undefined;
11
+ this.max = undefined;
12
+ this.min = undefined;
9
13
  this.required = false;
14
+ this.label = undefined;
15
+ this.caption = undefined;
10
16
  }
11
17
  getDate(e) {
12
18
  const inputValue = e.target.value;
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.js","sourceRoot":"","sources":["../../../src/components/date-picker/date-picker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals } from '@stencil/core';\nimport { Component, Prop, h, Element, Event, EventEmitter } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-date-picker',\n styleUrl: 'date-picker.scss',\n shadow: true,\n formAssociated: true,\n})\n\nexport class DatePicker {\n private inputId: string = `ifx-date-picker-${++datePickerId}`;\n\n @Element() el: HTMLElement;\n @Prop() size: string = 's';\n @Prop() error: boolean = false;\n @Prop() success: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() AriaLabel: string;\n @Prop() value: string;\n @Prop() max: string;\n @Prop() min: string;\n @Prop() required: boolean = false;\n @Prop() label: string;\n @Prop() caption: string;\n\n @AttachInternals() internals: ElementInternals;\n\n @Event() ifxDate: EventEmitter;\n\n getDate(e) { \n const inputValue = e.target.value;\n const selectedDate = new Date(inputValue);\n const day = selectedDate.getDate();\n const month = selectedDate.getMonth() + 1; \n const year = selectedDate.getFullYear();\n \n if (!inputValue) {\n this.internals.setFormValue(null);\n this.ifxDate.emit({day, month, year});\n return;\n }\n\n const input = this.el.shadowRoot.querySelector('.date__picker-input') as HTMLInputElement;\n input.classList.add('has-value');\n\n this.internals.setFormValue(selectedDate.toISOString().substring(0,10))\n this.ifxDate.emit({day, month, year})\n }\n\n handleInputFocusOnIconClick() { \n const input = this.el.shadowRoot.querySelector('.date__picker-input') as HTMLInputElement;\n if(input) { \n input.focus()\n }\n }\n\n getBrowser() {\n if( navigator.userAgent.indexOf(\"Chrome\") != -1 ) {\n return \"Chrome\";\n } else if( navigator.userAgent.indexOf(\"Opera\") != -1 ) {\n return \"Opera\";\n } else if( navigator.userAgent.indexOf(\"MSIE\") != -1 ) {\n return \"IE\";\n } else if( navigator.userAgent.indexOf(\"Firefox\") != -1 ) {\n return \"Firefox\";\n } else {\n return \"unknown\";\n }\n }\n\n setFireFoxClasses() { \n const browser = this.getBrowser()\n const input = this.el.shadowRoot.querySelector('.date__picker-input');\n\n if(browser === 'Firefox') { \n input.classList.add('firefox__classes')\n } else if(input.classList.contains('firefox__classes')) { \n input.classList.remove('firefox__classes')\n }\n }\n\n componentDidLoad() { \n this.setFireFoxClasses()\n if (this.value) {\n this.getDate({ target: { value: this.value } });\n }\n }\n\n formResetCallback() {\n this.internals.setFormValue(null);\n }\n\n render() {\n return (\n <div class={`date__picker-container ${this.error ? 'error' : ''} ${this.disabled ? 'disabled': ''}`}>\n\n <label class='label__wrapper' htmlFor={ this.inputId }>\n { this.label?.trim() }\n </label>\n\n <div class={`input__wrapper ${this.size === 'l' ? 'large' : 'small'} ${this.disabled ? 'disabled' : ''}`}>\n <input\n type=\"date\"\n class={`date__picker-input ${this.error ? 'error' : \"\"} ${this.success ? \"success\" : \"\"}`}\n disabled={this.disabled ? true : undefined}\n aria-invalid={this.error ? true : undefined}\n aria-label={this.AriaLabel}\n max={this.max}\n min={this.min}\n value={this.value}\n required={this.required}\n onChange={(e) => this.getDate(e)} />\n <div class=\"icon__wrapper\" role=\"button\" onClick={() => this.handleInputFocusOnIconClick()}>\n <ifx-icon icon='calendar16' aria-hidden=\"true\"></ifx-icon>\n </div>\n </div>\n\n { this.caption?.trim() && (\n <div class='caption__wrapper'>\n { this.caption.trim() }\n </div> \n )}\n </div>\n )\n }\n}\n\nlet datePickerId = 0;"]}
1
+ {"version":3,"file":"date-picker.js","sourceRoot":"","sources":["../../../src/components/date-picker/date-picker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals } from '@stencil/core';\nimport { Component, Prop, h, Element, Event, EventEmitter } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-date-picker',\n styleUrl: 'date-picker.scss',\n shadow: true,\n formAssociated: true,\n})\n\nexport class DatePicker {\n private inputId: string = `ifx-date-picker-${++datePickerId}`;\n\n @Element() el: HTMLElement;\n @Prop() size: string = 's';\n @Prop() error: boolean = false;\n @Prop() success: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() AriaLabel: string;\n @Prop() value: string;\n @Prop() max: string;\n @Prop() min: string;\n @Prop() required: boolean = false;\n @Prop() label: string;\n @Prop() caption: string;\n\n @AttachInternals() internals: ElementInternals;\n\n @Event() ifxDate: EventEmitter;\n\n getDate(e) { \n const inputValue = e.target.value;\n const selectedDate = new Date(inputValue);\n const day = selectedDate.getDate();\n const month = selectedDate.getMonth() + 1; \n const year = selectedDate.getFullYear();\n \n if (!inputValue) {\n this.internals.setFormValue(null);\n this.ifxDate.emit({day, month, year});\n return;\n }\n\n const input = this.el.shadowRoot.querySelector('.date__picker-input') as HTMLInputElement;\n input.classList.add('has-value');\n\n this.internals.setFormValue(selectedDate.toISOString().substring(0,10))\n this.ifxDate.emit({day, month, year})\n }\n\n handleInputFocusOnIconClick() { \n const input = this.el.shadowRoot.querySelector('.date__picker-input') as HTMLInputElement;\n if(input) { \n input.focus()\n }\n }\n\n getBrowser() {\n if( navigator.userAgent.indexOf(\"Chrome\") != -1 ) {\n return \"Chrome\";\n } else if( navigator.userAgent.indexOf(\"Opera\") != -1 ) {\n return \"Opera\";\n } else if( navigator.userAgent.indexOf(\"MSIE\") != -1 ) {\n return \"IE\";\n } else if( navigator.userAgent.indexOf(\"Firefox\") != -1 ) {\n return \"Firefox\";\n } else {\n return \"unknown\";\n }\n }\n\n setFireFoxClasses() { \n const browser = this.getBrowser()\n const input = this.el.shadowRoot.querySelector('.date__picker-input');\n\n if(browser === 'Firefox') { \n input.classList.add('firefox__classes')\n } else if(input.classList.contains('firefox__classes')) { \n input.classList.remove('firefox__classes')\n }\n }\n\n componentDidLoad() { \n this.setFireFoxClasses()\n if (this.value) {\n this.getDate({ target: { value: this.value } });\n }\n }\n\n formResetCallback() {\n this.internals.setFormValue(null);\n }\n\n render() {\n return (\n <div class={`date__picker-container ${this.error ? 'error' : ''} ${this.disabled ? 'disabled': ''}`}>\n\n <label class='label__wrapper' htmlFor={ this.inputId }>\n { this.label?.trim() }\n </label>\n\n <div class={`input__wrapper ${this.size === 'l' ? 'large' : 'small'} ${this.disabled ? 'disabled' : ''}`}>\n <input\n type=\"date\"\n class={`date__picker-input ${this.error ? 'error' : \"\"} ${this.success ? \"success\" : \"\"}`}\n disabled={this.disabled ? true : undefined}\n aria-invalid={this.error ? true : undefined}\n aria-label={this.AriaLabel}\n max={this.max}\n min={this.min}\n value={this.value}\n required={this.required}\n onChange={(e) => this.getDate(e)} />\n <div class=\"icon__wrapper\" role=\"button\" onClick={() => this.handleInputFocusOnIconClick()}>\n <ifx-icon icon='calendar16' aria-hidden=\"true\"></ifx-icon>\n </div>\n </div>\n\n { this.caption?.trim() && (\n <div class='caption__wrapper'>\n { this.caption.trim() }\n </div> \n )}\n </div>\n )\n }\n}\n\nlet datePickerId = 0;"]}
@@ -12,111 +12,24 @@ export default {
12
12
  max: '',
13
13
  min: '',
14
14
  label: "Label Text",
15
- caption: "Caption text, description, error notification.",
16
- AriaLabel: 'Date Picker',
17
- required: false,
15
+ caption: "Caption text, description, error notification",
18
16
  },
19
17
  argTypes: {
20
- label: {
21
- description: 'Label of Date Picker.',
22
- table: {
23
- category: 'ifx-date-picker props',
24
- }
25
- },
26
- caption: {
27
- description: 'Caption text, description, error notification.',
28
- table: {
29
- category: 'ifx-date-picker props',
30
- }
31
- },
32
- min: {
33
- description: 'Minimum date that can be selected. The parsed value is always formatted as yyyy-mm-dd.',
34
- table: {
35
- category: 'ifx-date-picker props',
36
- }
37
- },
38
- max: {
39
- description: 'The latest date that can be selected. The parsed value is always formatted as yyyy-mm-dd.',
40
- table: {
41
- category: 'ifx-date-picker props',
42
- }
43
- },
44
- disabled: {
45
- description: 'Disables the date picker',
46
- control: 'boolean',
47
- table: {
48
- category: 'ifx-date-picker props',
49
- defaultValue: {
50
- summary: false
51
- }
52
- }
53
- },
54
- success: {
55
- description: 'Indicates success in the date picker.',
56
- control: 'boolean',
57
- table: {
58
- category: 'ifx-date-picker props',
59
- defaultValue: {
60
- summary: false
61
- }
62
- }
63
- },
64
- error: {
65
- description: 'Indicates error in the date picker.',
66
- control: 'boolean',
67
- table: {
68
- category: 'ifx-date-picker props',
69
- defaultValue: {
70
- summary: false
71
- }
72
- }
73
- },
74
18
  size: {
75
- description: 'Sets the size of the date picker. Options: Height small (36px) and Height large (40px).S',
76
- control: 'radio',
19
+ description: 'Size options: Height small (36px) and Height large (40px) - default: small',
77
20
  options: ['s', 'l'],
78
- table: {
79
- category: 'ifx-date-picker props',
80
- defaultValue: {
81
- summary: 's'
82
- }
83
- }
21
+ control: { type: 'radio' },
84
22
  },
85
23
  name: {
86
- description: 'Name of the element, that is used as reference when a form is submitted.',
87
- control: 'text',
88
- table: {
89
- category: 'ifx-date-picker props'
90
- }
24
+ description: 'Name of the element, that is used as reference when a form is submitted.'
91
25
  },
92
26
  value: {
93
- description: 'Displayed date is formatted based on the locale of the user`s browser, but the parsed value is always formatted as yyyy-mm-dd.',
94
- table: {
95
- category: 'ifx-date-picker props'
96
- }
97
- },
98
- AriaLabel: {
99
- control: { type: 'text' },
100
- description: 'Set the aria label of the date picker. Enhances accessibility.',
101
- table: {
102
- category: 'ifx-date-picker props'
103
- }
104
- },
105
- required: {
106
- description: 'Set the required attribute to true to make the date picker mandatory.',
107
- control: 'boolean',
108
- table: {
109
- category: 'ifx-date-picker props',
110
- defaultValue: {
111
- summary: false
112
- }
113
- }
27
+ description: 'Displayed date is formatted based on the locale of the user`s browser, but the parsed value is always formatted yyyy-mm-dd'
114
28
  },
115
29
  ifxDate: {
116
30
  action: 'ifxDate',
117
- description: 'A custom event emitted when a date in the calendar is being selected.',
31
+ description: 'Custom event',
118
32
  table: {
119
- category: 'custom events',
120
33
  type: {
121
34
  summary: 'Framework integration',
122
35
  detail: 'React: onIfxDate={handleInput}\nVue:@ifxDate="handleInput"\nAngular:(ifxDate)="handleInput()"\nVanillaJs:.addEventListener("ifxDate", (event) => {//handle input});',
@@ -125,9 +38,8 @@ export default {
125
38
  },
126
39
  },
127
40
  };
128
- const DefaultTemplate = ({ error, disabled, success, size, value, max, min, caption, label, AriaLabel, required, name }) => {
41
+ const DefaultTemplate = ({ error, disabled, success, size, value, max, min, caption, label }) => {
129
42
  const element = document.createElement('ifx-date-picker');
130
- element.setAttribute('name', name);
131
43
  element.setAttribute('error', error);
132
44
  element.setAttribute('disabled', disabled);
133
45
  element.setAttribute('size', size);
@@ -137,8 +49,6 @@ const DefaultTemplate = ({ error, disabled, success, size, value, max, min, capt
137
49
  element.setAttribute('min', min);
138
50
  element.setAttribute('label', label);
139
51
  element.setAttribute('caption', caption);
140
- element.setAttribute('AriaLabel', AriaLabel);
141
- element.setAttribute('required', required);
142
52
  element.addEventListener('ifxDate', action('ifxDate'));
143
53
  return element;
144
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.stories.js","sourceRoot":"","sources":["../../../src/components/date-picker/date-picker.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,eAAe;IACb,KAAK,EAAE,wBAAwB;IAC/B,IAAI,EAAE,CAAC,UAAU,CAAC;IAElB,IAAI,EAAE;QACJ,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,EAAE;QACP,GAAG,EAAE,EAAE;QACP,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,gDAAgD;QACzD,SAAS,EAAE,aAAa;QACxB,QAAQ,EAAE,KAAK;KAChB;IACD,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,WAAW,EAAE,uBAAuB;YACpC,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;aAClC;SACF;QACD,OAAO,EAAE;YACP,WAAW,EAAE,gDAAgD;YAC7D,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;aAClC;SACF;QACD,GAAG,EAAE;YACH,WAAW,EAAE,wFAAwF;YACrG,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;aAClC;SACF;QACD,GAAG,EAAE;YACH,WAAW,EAAE,2FAA2F;YACxG,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;aAClC;SACF;QACD,QAAQ,EAAE;YACR,WAAW,EAAE,0BAA0B;YACvC,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;gBACjC,YAAY,EAAE;oBACZ,OAAO,EAAE,KAAK;iBACf;aACF;SACF;QACD,OAAO,EAAE;YACP,WAAW,EAAE,uCAAuC;YACpD,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;gBACjC,YAAY,EAAE;oBACZ,OAAO,EAAE,KAAK;iBACf;aACF;SACF;QACD,KAAK,EAAE;YACL,WAAW,EAAE,qCAAqC;YAClD,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;gBACjC,YAAY,EAAE;oBACZ,OAAO,EAAE,KAAK;iBACf;aACF;SACF;QACD,IAAI,EAAE;YACJ,WAAW,EAAE,2FAA2F;YACxG,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;YACnB,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;gBACjC,YAAY,EAAE;oBACZ,OAAO,EAAE,GAAG;iBACb;aACF;SACF;QACD,IAAI,EAAE;YACJ,WAAW,EAAE,0EAA0E;YACvF,OAAO,EAAE,MAAM;YACf,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;aAClC;SACF;QACD,KAAK,EAAE;YACL,WAAW,EAAE,gIAAgI;YAC7I,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;aAClC;SACF;QACD,SAAS,EAAE;YACT,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACzB,WAAW,EAAE,gEAAgE;YAC7E,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;aAClC;SACF;QACD,QAAQ,EAAE;YACR,WAAW,EAAE,uEAAuE;YACpF,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE;gBACL,QAAQ,EAAE,uBAAuB;gBACjC,YAAY,EAAE;oBACZ,OAAO,EAAE,KAAK;iBACf;aACF;SACF;QACD,OAAO,EAAE;YACP,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,uEAAuE;YACpF,KAAK,EAAE;gBACL,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,qKAAqK;iBACxK;aACF;SACF;KACF;CACF,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE;IACzH,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC1D,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC3C,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnC,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzC,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC7C,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC3C,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACvD,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/Date Picker',\n tags: ['autodocs'],\n\n args: {\n disabled: false,\n size: 's',\n success: false,\n error: false,\n name: 'date-picker',\n value: '',\n max: '',\n min: '',\n label: \"Label Text\",\n caption: \"Caption text, description, error notification.\",\n AriaLabel: 'Date Picker',\n required: false,\n },\n argTypes: {\n label: {\n description: 'Label of Date Picker.',\n table: {\n category: 'ifx-date-picker props',\n }\n },\n caption: {\n description: 'Caption text, description, error notification.',\n table: {\n category: 'ifx-date-picker props',\n }\n },\n min: {\n description: 'Minimum date that can be selected. The parsed value is always formatted as yyyy-mm-dd.',\n table: {\n category: 'ifx-date-picker props',\n }\n },\n max: {\n description: 'The latest date that can be selected. The parsed value is always formatted as yyyy-mm-dd.',\n table: {\n category: 'ifx-date-picker props',\n }\n },\n disabled: {\n description: 'Disables the date picker',\n control: 'boolean',\n table: {\n category: 'ifx-date-picker props',\n defaultValue: {\n summary: false\n }\n }\n },\n success: {\n description: 'Indicates success in the date picker.',\n control: 'boolean',\n table: {\n category: 'ifx-date-picker props',\n defaultValue: {\n summary: false\n }\n }\n },\n error: {\n description: 'Indicates error in the date picker.',\n control: 'boolean',\n table: {\n category: 'ifx-date-picker props',\n defaultValue: {\n summary: false\n }\n }\n },\n size: {\n description: 'Sets the size of the date picker. Options: Height small (36px) and Height large (40px).S',\n control: 'radio',\n options: ['s', 'l'],\n table: {\n category: 'ifx-date-picker props',\n defaultValue: {\n summary: 's'\n }\n }\n },\n name: {\n description: 'Name of the element, that is used as reference when a form is submitted.',\n control: 'text',\n table: {\n category: 'ifx-date-picker props'\n }\n },\n value: {\n description: 'Displayed date is formatted based on the locale of the user`s browser, but the parsed value is always formatted as yyyy-mm-dd.',\n table: {\n category: 'ifx-date-picker props'\n }\n },\n AriaLabel: {\n control: { type: 'text' },\n description: 'Set the aria label of the date picker. Enhances accessibility.',\n table: {\n category: 'ifx-date-picker props'\n }\n },\n required: {\n description: 'Set the required attribute to true to make the date picker mandatory.',\n control: 'boolean',\n table: {\n category: 'ifx-date-picker props',\n defaultValue: {\n summary: false\n }\n }\n },\n ifxDate: {\n action: 'ifxDate',\n description: 'A custom event emitted when a date in the calendar is being selected.',\n table: {\n category: 'custom events',\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxDate={handleInput}\\nVue:@ifxDate=\"handleInput\"\\nAngular:(ifxDate)=\"handleInput()\"\\nVanillaJs:.addEventListener(\"ifxDate\", (event) => {//handle input});',\n },\n },\n },\n },\n};\n\nconst DefaultTemplate = ({ error, disabled, success, size, value, max, min, caption, label, AriaLabel, required, name }) => {\n const element = document.createElement('ifx-date-picker');\n element.setAttribute('name', name);\n element.setAttribute('error', error);\n element.setAttribute('disabled', disabled);\n element.setAttribute('size', size);\n element.setAttribute('success', success);\n element.setAttribute('value', value);\n element.setAttribute('max', max);\n element.setAttribute('min', min);\n element.setAttribute('label', label);\n element.setAttribute('caption', caption);\n element.setAttribute('AriaLabel', AriaLabel);\n element.setAttribute('required', required);\n element.addEventListener('ifxDate', action('ifxDate'));\n return element;\n};\n\nexport const Default = DefaultTemplate.bind({});"]}
1
+ {"version":3,"file":"date-picker.stories.js","sourceRoot":"","sources":["../../../src/components/date-picker/date-picker.stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,eAAe;IACb,KAAK,EAAE,wBAAwB;IAC/B,IAAI,EAAE,CAAC,UAAU,CAAC;IAElB,IAAI,EAAE;QACJ,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,EAAE;QACP,GAAG,EAAE,EAAE;QACP,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,+CAA+C;KACzD;IACD,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,WAAW,EAAE,6EAA6E;YAC1F,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;YACnB,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;SAC3B;QACD,IAAI,EAAE;YACJ,WAAW,EAAE,0EAA0E;SACxF;QACD,KAAK,EAAE;YACL,WAAW,EAAE,4HAA4H;SAC1I;QACD,OAAO,EAAE;YACP,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,cAAc;YAC3B,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,uBAAuB;oBAChC,MAAM,EACJ,qKAAqK;iBACxK;aACF;SACF;KACF;CACF,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;IAC9F,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC1D,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC3C,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnC,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzC,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACvD,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/Date Picker',\n tags: ['autodocs'],\n\n args: {\n disabled: false,\n size: 's',\n success: false,\n error: false,\n name: 'date-picker',\n value: '',\n max: '',\n min: '',\n label: \"Label Text\",\n caption: \"Caption text, description, error notification\",\n },\n argTypes: {\n size: {\n description: 'Size options: Height small (36px) and Height large (40px) - default: small',\n options: ['s', 'l'],\n control: { type: 'radio' },\n },\n name: {\n description: 'Name of the element, that is used as reference when a form is submitted.'\n },\n value: { \n description: 'Displayed date is formatted based on the locale of the user`s browser, but the parsed value is always formatted yyyy-mm-dd'\n },\n ifxDate: {\n action: 'ifxDate',\n description: 'Custom event',\n table: {\n type: {\n summary: 'Framework integration',\n detail:\n 'React: onIfxDate={handleInput}\\nVue:@ifxDate=\"handleInput\"\\nAngular:(ifxDate)=\"handleInput()\"\\nVanillaJs:.addEventListener(\"ifxDate\", (event) => {//handle input});',\n },\n },\n },\n },\n};\n\nconst DefaultTemplate = ({ error, disabled, success, size, value, max, min, caption, label }) => {\n const element = document.createElement('ifx-date-picker');\n element.setAttribute('error', error);\n element.setAttribute('disabled', disabled);\n element.setAttribute('size', size);\n element.setAttribute('success', success);\n element.setAttribute('value', value);\n element.setAttribute('max', max);\n element.setAttribute('min', min);\n element.setAttribute('label', label);\n element.setAttribute('caption', caption);\n element.addEventListener('ifxDate', action('ifxDate'));\n return element;\n};\n\nexport const Default = DefaultTemplate.bind({});"]}
@@ -2,6 +2,7 @@
2
2
  import { h } from "@stencil/core";
3
3
  export class DropdownItem {
4
4
  constructor() {
5
+ this.icon = undefined;
5
6
  this.href = "";
6
7
  this.target = "_self";
7
8
  this.hide = false;
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../../src/components/dropdown/dropdown-item/dropdown-item.tsx"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAgB,OAAO,EAAE,MAAM,eAAe,CAAC;AAQhG,MAAM,OAAO,YAAY;IANzB;QAQU,SAAI,GAAW,EAAE,CAAA;QACjB,WAAM,GAAW,OAAO,CAAA;QACxB,SAAI,GAAY,KAAK,CAAC;QACrB,SAAI,GAAW,GAAG,CAAA;KAwB5B;IAnBC,cAAc,CAAC,KAAkB;QAC/B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;IAChD,CAAC;IAED,MAAM;QACJ,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,CACL,0EAAO,QAAQ,IAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,iBAAiB,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9I,IAAI,CAAC,IAAI,IAAI,iEAAU,KAAK,EAAC,MAAM,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAa;YACjE;gBACE,8DAAQ,CACH,CACL,CACL,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["// dropdown-item.tsx\nimport { Component, Prop, h, Listen, State, Event, EventEmitter, Element } from \"@stencil/core\";\n\n@Component({\n tag: 'ifx-dropdown-item',\n styleUrl: 'dropdown-item.scss',\n shadow: true\n})\n\nexport class DropdownItem {\n @Prop() icon: string;\n @Prop() href: string = \"\"\n @Prop() target: string = \"_self\"\n @Prop() hide: boolean = false;\n @State() size: string = 'l'\n @Event() ifxDropdownItem: EventEmitter;\n @Element() el;\n\n @Listen('menuSize', { target: 'body' })\n handleMenuSize(event: CustomEvent) {\n this.size = event.detail;\n }\n\n handleEventEmission() {\n this.ifxDropdownItem.emit(this.el.textContent)\n }\n\n render() {\n let hrefAttr = this.href ? { href: this.href, target: this.target } : {};\n return (\n <a {...hrefAttr} onClick={() => this.handleEventEmission()} class={`dropdown-item ${this.size === 's' ? 'small' : \"\"} ${this.hide ? 'hide' : \"\"}`}>\n {this.icon && <ifx-icon class=\"icon\" icon={this.icon}></ifx-icon>}\n <span>\n <slot />\n </span>\n </a>\n );\n }\n}"]}
1
+ {"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../../src/components/dropdown/dropdown-item/dropdown-item.tsx"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAgB,OAAO,EAAE,MAAM,eAAe,CAAC;AAQhG,MAAM,OAAO,YAAY;;;oBAEA,EAAE;sBACA,OAAO;oBACR,KAAK;oBACL,GAAG;;IAK3B,cAAc,CAAC,KAAkB;QAC/B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;IAChD,CAAC;IAED,MAAM;QACJ,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,CACL,0EAAO,QAAQ,IAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,iBAAiB,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9I,IAAI,CAAC,IAAI,IAAI,iEAAU,KAAK,EAAC,MAAM,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAa;YACjE;gBACE,8DAAQ,CACH,CACL,CACL,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["// dropdown-item.tsx\nimport { Component, Prop, h, Listen, State, Event, EventEmitter, Element } from \"@stencil/core\";\n\n@Component({\n tag: 'ifx-dropdown-item',\n styleUrl: 'dropdown-item.scss',\n shadow: true\n})\n\nexport class DropdownItem {\n @Prop() icon: string;\n @Prop() href: string = \"\"\n @Prop() target: string = \"_self\"\n @Prop() hide: boolean = false;\n @State() size: string = 'l'\n @Event() ifxDropdownItem: EventEmitter;\n @Element() el;\n\n @Listen('menuSize', { target: 'body' })\n handleMenuSize(event: CustomEvent) {\n this.size = event.detail;\n }\n\n handleEventEmission() {\n this.ifxDropdownItem.emit(this.el.textContent)\n }\n\n render() {\n let hrefAttr = this.href ? { href: this.href, target: this.target } : {};\n return (\n <a {...hrefAttr} onClick={() => this.handleEventEmission()} class={`dropdown-item ${this.size === 's' ? 'small' : \"\"} ${this.hide ? 'hide' : \"\"}`}>\n {this.icon && <ifx-icon class=\"icon\" icon={this.icon}></ifx-icon>}\n <span>\n <slot />\n </span>\n </a>\n );\n }\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.js","sourceRoot":"","sources":["../../../../src/components/dropdown/dropdown-menu/dropdown-menu.tsx"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAgB,MAAM,EAAE,MAAM,eAAe,CAAC;AAQhG,MAAM,OAAO,YAAY;IANzB;QAOU,WAAM,GAAY,KAAK,CAAC;QACxB,SAAI,GAAW,GAAG,CAAA;QACjB,mBAAc,GAAY,KAAK,CAAC;QAIhC,kBAAa,GAAiC,EAAE,CAAC;KAyD3D;IArDC,gBAAgB,CAAC,KAAkB;QACjC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;QACjC,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAA;IACvC,CAAC;IAGD,+BAA+B,CAAC,KAAkB;QAChD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED,mBAAmB,CAAC,WAAmB;QACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC3E,IAAI,YAAY,EAAE,QAAQ,CAAC;QAC3B,IAAI,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,CAAA;QAErC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC3B,QAAQ,GAAG,YAAY,CAAC,WAAW,IAAI,YAAY,CAAC,SAAS,CAAC;YAE9D,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC/C,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;YAC1C,CAAC;iBAAM,CAAC;gBACN,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YACzC,CAAC;QACH,CAAC;IACH,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAiC,CAAC;QAC/G,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAA;QAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAA;QAEnE,IAAI,WAAW,IAAI,cAAc,EAAE,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;;YAAM,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IACrC,CAAC;IAGD,MAAM;QACJ,OAAO,CACL,4DAAK,KAAK,EAAE;QACV,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QACzB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE;QAC3C,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAElC,8DAAQ,CACH,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["// dropdown-menu.tsx\nimport { Component, h, Prop, Element, State, Event, EventEmitter, Listen } from \"@stencil/core\";\n\n@Component({\n tag: 'ifx-dropdown-menu',\n styleUrl: 'dropdown-menu.scss',\n shadow: true\n})\n\nexport class DropdownMenu {\n @Prop() isOpen: boolean = false;\n @Prop() size: string = 'l'\n @State() hideTopPadding: boolean = false;\n @Element() el;\n\n @Event() menuSize: EventEmitter;\n @State() filteredItems: HTMLIfxDropdownItemElement[] = [];\n @Event() ifxDropdownMenuItem: EventEmitter<CustomEvent>;\n\n @Listen('ifxInput')\n handleMenuFilter(event: CustomEvent) {\n const searchValue = event.detail;\n this.filterDropdownItems(searchValue)\n }\n\n @Listen('ifxDropdownItem')\n handleDropdownItemValueEmission(event: CustomEvent) {\n this.ifxDropdownMenuItem.emit(event.detail)\n }\n\n filterDropdownItems(searchValue: string) {\n const allItems = Array.from(this.el.querySelectorAll('ifx-dropdown-item'));\n let dropdownItem, txtValue;\n let query = searchValue.toUpperCase()\n\n for (let i = 0; i < allItems.length; i++) {\n dropdownItem = allItems[i];\n txtValue = dropdownItem.textContent || dropdownItem.innerText;\n\n if (txtValue.toUpperCase().indexOf(query) > -1) {\n dropdownItem.setAttribute('hide', false)\n } else {\n dropdownItem.setAttribute('hide', true)\n }\n }\n }\n\n componentWillUpdate() {\n this.menuSize.emit(this.size)\n }\n\n componentWillLoad() {\n this.filteredItems = Array.from(this.el.querySelectorAll('ifx-dropdown-item')) as HTMLIfxDropdownItemElement[];\n const searchField = this.el.querySelector('ifx-search-field')\n const dropdownHeader = this.el.querySelector('ifx-dropdown-header')\n\n if (searchField || dropdownHeader) {\n this.hideTopPadding = true;\n } else this.hideTopPadding = false;\n }\n\n\n render() {\n return (\n <div class={`dropdown-menu \n ${this.isOpen ? 'show' : ''} \n ${this.hideTopPadding ? 'hideTopPadding' : \"\"}\n ${this.size === 's' ? 'small' : \"\"}`\n } >\n <slot />\n </div >\n );\n }\n}"]}
1
+ {"version":3,"file":"dropdown-menu.js","sourceRoot":"","sources":["../../../../src/components/dropdown/dropdown-menu/dropdown-menu.tsx"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAgB,MAAM,EAAE,MAAM,eAAe,CAAC;AAQhG,MAAM,OAAO,YAAY;;sBACG,KAAK;oBACR,GAAG;8BACS,KAAK;6BAIe,EAAE;;IAIzD,gBAAgB,CAAC,KAAkB;QACjC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;QACjC,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAA;IACvC,CAAC;IAGD,+BAA+B,CAAC,KAAkB;QAChD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED,mBAAmB,CAAC,WAAmB;QACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC3E,IAAI,YAAY,EAAE,QAAQ,CAAC;QAC3B,IAAI,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,CAAA;QAErC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC3B,QAAQ,GAAG,YAAY,CAAC,WAAW,IAAI,YAAY,CAAC,SAAS,CAAC;YAE9D,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC/C,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;YAC1C,CAAC;iBAAM,CAAC;gBACN,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YACzC,CAAC;QACH,CAAC;IACH,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAiC,CAAC;QAC/G,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAA;QAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAA;QAEnE,IAAI,WAAW,IAAI,cAAc,EAAE,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;;YAAM,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IACrC,CAAC;IAGD,MAAM;QACJ,OAAO,CACL,4DAAK,KAAK,EAAE;QACV,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QACzB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE;QAC3C,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAElC,8DAAQ,CACH,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["// dropdown-menu.tsx\nimport { Component, h, Prop, Element, State, Event, EventEmitter, Listen } from \"@stencil/core\";\n\n@Component({\n tag: 'ifx-dropdown-menu',\n styleUrl: 'dropdown-menu.scss',\n shadow: true\n})\n\nexport class DropdownMenu {\n @Prop() isOpen: boolean = false;\n @Prop() size: string = 'l'\n @State() hideTopPadding: boolean = false;\n @Element() el;\n\n @Event() menuSize: EventEmitter;\n @State() filteredItems: HTMLIfxDropdownItemElement[] = [];\n @Event() ifxDropdownMenuItem: EventEmitter<CustomEvent>;\n\n @Listen('ifxInput')\n handleMenuFilter(event: CustomEvent) {\n const searchValue = event.detail;\n this.filterDropdownItems(searchValue)\n }\n\n @Listen('ifxDropdownItem')\n handleDropdownItemValueEmission(event: CustomEvent) {\n this.ifxDropdownMenuItem.emit(event.detail)\n }\n\n filterDropdownItems(searchValue: string) {\n const allItems = Array.from(this.el.querySelectorAll('ifx-dropdown-item'));\n let dropdownItem, txtValue;\n let query = searchValue.toUpperCase()\n\n for (let i = 0; i < allItems.length; i++) {\n dropdownItem = allItems[i];\n txtValue = dropdownItem.textContent || dropdownItem.innerText;\n\n if (txtValue.toUpperCase().indexOf(query) > -1) {\n dropdownItem.setAttribute('hide', false)\n } else {\n dropdownItem.setAttribute('hide', true)\n }\n }\n }\n\n componentWillUpdate() {\n this.menuSize.emit(this.size)\n }\n\n componentWillLoad() {\n this.filteredItems = Array.from(this.el.querySelectorAll('ifx-dropdown-item')) as HTMLIfxDropdownItemElement[];\n const searchField = this.el.querySelector('ifx-search-field')\n const dropdownHeader = this.el.querySelector('ifx-dropdown-header')\n\n if (searchField || dropdownHeader) {\n this.hideTopPadding = true;\n } else this.hideTopPadding = false;\n }\n\n\n render() {\n return (\n <div class={`dropdown-menu \n ${this.isOpen ? 'show' : ''} \n ${this.hideTopPadding ? 'hideTopPadding' : \"\"}\n ${this.size === 's' ? 'small' : \"\"}`\n } >\n <slot />\n </div >\n );\n }\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-trigger.js","sourceRoot":"","sources":["../../../../src/components/dropdown/dropdown-trigger/dropdown-trigger.tsx"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AASnD,MAAM,OAAO,YAAY;IANzB;QAOU,WAAM,GAAY,KAAK,CAAC;KAOjC;IALC,MAAM;QACJ,OAAO,CACL,8DAAQ,CACT,CAAA;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["// dropdown-trigger-button.tsx\nimport { Component, Prop, h } from \"@stencil/core\";\nimport { IOpenable } from '../IOpenable';\n\n@Component({\n tag: 'ifx-dropdown-trigger',\n styleUrl: 'dropdown-trigger.scss',\n shadow: true\n})\n\nexport class DropdownItem implements IOpenable {\n @Prop() isOpen: boolean = false;\n\n render() {\n return (\n <slot />\n )\n }\n}"]}
1
+ {"version":3,"file":"dropdown-trigger.js","sourceRoot":"","sources":["../../../../src/components/dropdown/dropdown-trigger/dropdown-trigger.tsx"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AASnD,MAAM,OAAO,YAAY;;sBACG,KAAK;;IAE/B,MAAM;QACJ,OAAO,CACL,8DAAQ,CACT,CAAA;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["// dropdown-trigger-button.tsx\nimport { Component, Prop, h } from \"@stencil/core\";\nimport { IOpenable } from '../IOpenable';\n\n@Component({\n tag: 'ifx-dropdown-trigger',\n styleUrl: 'dropdown-trigger.scss',\n shadow: true\n})\n\nexport class DropdownItem implements IOpenable {\n @Prop() isOpen: boolean = false;\n\n render() {\n return (\n <slot />\n )\n }\n}"]}
@@ -4,7 +4,9 @@ export class DropdownItem {
4
4
  constructor() {
5
5
  this.isOpen = false;
6
6
  this.theme = 'default';
7
+ this.variant = undefined;
7
8
  this.size = 'm';
9
+ this.disabled = undefined;
8
10
  this.hideArrow = false;
9
11
  }
10
12
  render() {
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-trigger-button.js","sourceRoot":"","sources":["../../../../src/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.tsx"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AASnD,MAAM,OAAO,YAAY;IANzB;QAOU,WAAM,GAAY,KAAK,CAAC;QAExB,UAAK,GAAqC,SAAS,CAAC;QAEpD,SAAI,GAAc,GAAG,CAAC;QAEtB,cAAS,GAAY,KAAK,CAAC;KAkBpC;IAhBC,MAAM;QACJ,OAAO,CACL,mEACE,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAC,yBAAyB;YAE/B,8DAAQ;YACP,CAAC,IAAI,CAAC,SAAS;gBACd,iEAAU,IAAI,EAAC,iBAAiB,EAAC,KAAK,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,GAAI,CAExE,CACd,CAAA;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["// dropdown-trigger-button.tsx\nimport { Component, Prop, h } from \"@stencil/core\";\nimport { IOpenable } from '../IOpenable';\n\n@Component({\n tag: 'ifx-dropdown-trigger-button',\n styleUrl: 'dropdown-trigger-button.scss',\n shadow: true\n})\n\nexport class DropdownItem implements IOpenable {\n @Prop() isOpen: boolean = false;\n\n @Prop() theme: 'default' | 'danger' | 'inverse' = 'default';\n @Prop() variant: 'primary';\n @Prop() size: 's' | 'm' = 'm';\n @Prop() disabled: boolean;\n @Prop() hideArrow: boolean = false;\n\n render() {\n return (\n <ifx-button\n variant={this.variant}\n theme={this.theme}\n size={this.size}\n disabled={this.disabled}\n class=\"dropdown-trigger-button\"\n >\n <slot />\n {!this.hideArrow &&\n <ifx-icon icon=\"chevron-down-12\" class={`icon${this.isOpen ? ' rotate' : ''}`} />\n }\n </ifx-button>\n )\n }\n}"]}
1
+ {"version":3,"file":"dropdown-trigger-button.js","sourceRoot":"","sources":["../../../../src/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.tsx"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AASnD,MAAM,OAAO,YAAY;;sBACG,KAAK;qBAEmB,SAAS;;oBAEjC,GAAG;;yBAEA,KAAK;;IAElC,MAAM;QACJ,OAAO,CACL,mEACE,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAC,yBAAyB;YAE/B,8DAAQ;YACP,CAAC,IAAI,CAAC,SAAS;gBACd,iEAAU,IAAI,EAAC,iBAAiB,EAAC,KAAK,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,GAAI,CAExE,CACd,CAAA;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["// dropdown-trigger-button.tsx\nimport { Component, Prop, h } from \"@stencil/core\";\nimport { IOpenable } from '../IOpenable';\n\n@Component({\n tag: 'ifx-dropdown-trigger-button',\n styleUrl: 'dropdown-trigger-button.scss',\n shadow: true\n})\n\nexport class DropdownItem implements IOpenable {\n @Prop() isOpen: boolean = false;\n\n @Prop() theme: 'default' | 'danger' | 'inverse' = 'default';\n @Prop() variant: 'primary';\n @Prop() size: 's' | 'm' = 'm';\n @Prop() disabled: boolean;\n @Prop() hideArrow: boolean = false;\n\n render() {\n return (\n <ifx-button\n variant={this.variant}\n theme={this.theme}\n size={this.size}\n disabled={this.disabled}\n class=\"dropdown-trigger-button\"\n >\n <slot />\n {!this.hideArrow &&\n <ifx-icon icon=\"chevron-down-12\" class={`icon${this.isOpen ? ' rotate' : ''}`} />\n }\n </ifx-button>\n )\n }\n}"]}
@@ -4,14 +4,14 @@ import { createPopper } from "@popperjs/core";
4
4
  export class Dropdown {
5
5
  constructor() {
6
6
  this.placement = 'bottom-start';
7
- // isOpen prop
8
7
  this.defaultOpen = false;
9
- // internal state for isOpen prop
10
8
  this.internalIsOpen = false;
11
- // isOpen prop
12
9
  this.noAppendToBody = false;
10
+ this.disabled = undefined;
13
11
  this.noCloseOnOutsideClick = false;
14
12
  this.noCloseOnMenuClick = false;
13
+ this.trigger = undefined;
14
+ this.menu = undefined;
15
15
  }
16
16
  componentWillLoad() {
17
17
  //maybe not needed
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.tsx"],"names":[],"mappings":"AAAA,cAAc;AACd,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAgB,KAAK,EAAE,MAAM,eAAe,CAAC;AAC/G,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AA4B9C,MAAM,OAAO,QAAQ;IANrB;QAOU,cAAS,GAAc,cAAc,CAAC;QAE9C,cAAc;QACN,gBAAW,GAAY,KAAK,CAAC;QACrC,iCAAiC;QACxB,mBAAc,GAAY,KAAK,CAAC;QAEzC,cAAc;QACN,mBAAc,GAAY,KAAK,CAAC;QAUhC,0BAAqB,GAAY,KAAK,CAAC;QACvC,uBAAkB,GAAY,KAAK,CAAC;KAkK7C;IAtJC,iBAAiB;QACf,kBAAkB;QAClB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACjE,CAAC;IAKD,kBAAkB,CAAC,QAAiB,EAAE,QAAiB;QACrD,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9D,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAGD,oBAAoB,CAAC,QAAiB;QACpC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,OAA4D,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzF,CAAC;IACH,CAAC;IAID,gBAAgB;QACd,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAID,0CAA0C;IAC1C,iBAAiB;QACf,oEAAoE;QACpE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,mDAAmD,CAAC,CAAC;QAC1F,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,OAA4D,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC5F,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9E,CAAC;QACD,kCAAkC;QAClC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACrB,CAAC;YACD,+BAA+B;YAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;YAEvD,mDAAmD;YACnD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAEzD,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAExE,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,oBAAoB;QAClB,oCAAoC;QACpC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,wBAAwB;QACxB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,MAAM;QACV,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAGD,KAAK,CAAC,aAAa;QACjB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;YAC5B,uCAAuC;YACtC,IAAI,CAAC,OAAgC,CAAC,MAAM,GAAG,KAAK,CAAC;YACrD,IAAI,CAAC,IAA6B,CAAC,MAAM,GAAG,KAAK,CAAC;YACnD,mBAAmB;YACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC;QACD,oCAAoC;QACpC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC3C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,uCAAuC;YACtC,IAAI,CAAC,OAAgC,CAAC,MAAM,GAAG,IAAI,CAAC;YACpD,IAAI,CAAC,IAA6B,CAAC,MAAM,GAAG,IAAI,CAAC;YAClD,yCAAyC;YACzC,IAAI,CAAC,cAAc,GAAG,YAAY,CAChC,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,IAAI,EACT,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;YAEjC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,6BAA6B;IAC7B,iDAAiD;IACjD,wCAAwC;IACxC,mEAAmE;IACnE,IAAI;IAGJ,kBAAkB,CAAC,KAAiB;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;QAC3C,kCAAkC;QAClC,IAAI,CAAC,IAAI,CAAC,qBAAqB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5F,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO,CACL,0EAAgB,eAAe,EAAC,KAAK,EAAC,UAAU;YAC9C,8DAAQ,CACJ,CACP,CAAA;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["//dropdown.tsx\nimport { Component, Prop, h, Element, Listen, Method, Watch, State, EventEmitter, Event } from \"@stencil/core\";\nimport { createPopper } from '@popperjs/core';\n \n\nimport { IOpenable } from './IOpenable';\n\nexport type Placement =\n | 'auto'\n | 'auto-start'\n | 'auto-end'\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'left'\n | 'left-start'\n | 'left-end';\n\n@Component({\n tag: 'ifx-dropdown',\n styleUrl: 'dropdown.scss',\n shadow: true\n})\n\nexport class Dropdown {\n @Prop() placement: Placement = 'bottom-start';\n\n // isOpen prop\n @Prop() defaultOpen: boolean = false;\n // internal state for isOpen prop\n @State() internalIsOpen: boolean = false;\n\n // isOpen prop\n @Prop() noAppendToBody: boolean = false;\n\n // Custom events for opening and closing dropdown\n @Event() ifxOpen: EventEmitter;\n @Event() ifxClose: EventEmitter;\n @Event() ifxDropdown: EventEmitter;\n\n // determine if dropdown is disabled\n @Prop() disabled: boolean;\n\n @Prop() noCloseOnOutsideClick: boolean = false;\n @Prop() noCloseOnMenuClick: boolean = false;\n\n // Reference to host element\n @Element() el;\n // Dropdown trigger and menu\n @State() trigger: HTMLElement;\n @State() menu: HTMLElement\n // Popper instance for positioning\n popperInstance: any;\n\n\n\n componentWillLoad() {\n //maybe not needed\n this.updateSlotContent();\n this.watchHandlerIsOpen(this.defaultOpen, this.internalIsOpen);\n }\n\n\n\n @Watch('defaultOpen')\n watchHandlerIsOpen(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue && newValue !== this.internalIsOpen) {\n if (newValue) {\n this.openDropdown();\n } else {\n this.closeDropdown();\n }\n }\n }\n\n @Watch('disabled')\n watchHandlerDisabled(newValue: boolean) {\n if (this.trigger) {\n (this.trigger as undefined as HTMLIfxDropdownTriggerButtonElement).disabled = newValue;\n }\n }\n\n\n @Listen('slotchange')\n watchHandlerSlot() {\n this.updateSlotContent();\n }\n\n\n\n // handling assignment of trigger and menu\n updateSlotContent() {\n // Get dropdown trigger. name has to start with ifx-dropdown-trigger\n this.trigger = this.el.querySelector('ifx-dropdown-trigger-button, ifx-dropdown-trigger');\n if (this.trigger) {\n (this.trigger as undefined as HTMLIfxDropdownTriggerButtonElement).disabled = this.disabled;\n this.trigger.removeEventListener('click', this.triggerClickHandler.bind(this));\n this.trigger.addEventListener('click', this.triggerClickHandler.bind(this));\n }\n // Remove menu if exists from body\n if (!this.noAppendToBody) {\n if (this.menu) {\n this.menu.remove();\n }\n // Get new menu and add to body\n this.menu = this.el.querySelector('ifx-dropdown-menu');\n\n // event handler for closing dropdown on menu click\n document.body.append(this.menu);\n } else {\n this.menu = this.el.querySelector('ifx-dropdown-menu');\n\n }\n this.menu.removeEventListener('click', this.menuClickHandler.bind(this));\n this.menu.addEventListener('click', this.menuClickHandler.bind(this));\n\n }\n\n menuClickHandler() {\n if (!this.noCloseOnMenuClick) {\n this.closeDropdown();\n }\n }\n\n triggerClickHandler() {\n if (!this.internalIsOpen) {\n this.openDropdown();\n } else {\n this.closeDropdown();\n }\n }\n\n disconnectedCallback() {\n // Destroy popper instance if exists\n if (this.popperInstance) {\n this.popperInstance.destroy();\n this.popperInstance = null;\n }\n // Remove menu if exists\n if (this.menu) {\n this.menu.remove();\n }\n }\n\n @Method()\n async isOpen() {\n return this.internalIsOpen;\n }\n\n @Method()\n async closeDropdown() {\n if (this.internalIsOpen) {\n this.internalIsOpen = false;\n // sets isOpen prop on trigger and menu\n (this.trigger as unknown as IOpenable).isOpen = false;\n (this.menu as unknown as IOpenable).isOpen = false;\n // Emit close event\n this.ifxClose.emit();\n }\n // Destroy popper instance if exists\n if (this.popperInstance) {\n this.popperInstance.destroy();\n this.popperInstance = null;\n }\n }\n\n @Method()\n async openDropdown() {\n if (!this.internalIsOpen && !this.disabled) {\n this.internalIsOpen = true;\n // sets isOpen prop on trigger and menu\n (this.trigger as unknown as IOpenable).isOpen = true;\n (this.menu as unknown as IOpenable).isOpen = true;\n // Create popper instance for positioning\n this.popperInstance = createPopper(\n this.el,\n this.menu,\n { placement: this.placement });\n\n this.ifxOpen.emit();\n }\n }\n\n //emitted by and listening to it from the dropdown menu right now\n // @Listen('ifxDropdownMenu')\n // handleDropdownMenuEvents(event: CustomEvent) {\n // this.ifxDropdown.emit(event.detail)\n // console.log('Selected item received in higher-level parent:');\n // }\n\n @Listen('mousedown', { target: 'document' })\n handleOutsideClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n // Close dropdown if outside click\n if (!this.noCloseOnOutsideClick && !this.el.contains(target) && !this.menu.contains(target)) {\n this.closeDropdown();\n }\n }\n\n render() {\n return (\n <div aria-label='dropdown menu' class='dropdown'>\n <slot />\n </div>\n )\n }\n}"]}
1
+ {"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.tsx"],"names":[],"mappings":"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","sourcesContent":["//dropdown.tsx\nimport { Component, Prop, h, Element, Listen, Method, Watch, State, EventEmitter, Event } from \"@stencil/core\";\nimport { createPopper } from '@popperjs/core';\n \n\nimport { IOpenable } from './IOpenable';\n\nexport type Placement =\n | 'auto'\n | 'auto-start'\n | 'auto-end'\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'left'\n | 'left-start'\n | 'left-end';\n\n@Component({\n tag: 'ifx-dropdown',\n styleUrl: 'dropdown.scss',\n shadow: true\n})\n\nexport class Dropdown {\n @Prop() placement: Placement = 'bottom-start';\n\n // isOpen prop\n @Prop() defaultOpen: boolean = false;\n // internal state for isOpen prop\n @State() internalIsOpen: boolean = false;\n\n // isOpen prop\n @Prop() noAppendToBody: boolean = false;\n\n // Custom events for opening and closing dropdown\n @Event() ifxOpen: EventEmitter;\n @Event() ifxClose: EventEmitter;\n @Event() ifxDropdown: EventEmitter;\n\n // determine if dropdown is disabled\n @Prop() disabled: boolean;\n\n @Prop() noCloseOnOutsideClick: boolean = false;\n @Prop() noCloseOnMenuClick: boolean = false;\n\n // Reference to host element\n @Element() el;\n // Dropdown trigger and menu\n @State() trigger: HTMLElement;\n @State() menu: HTMLElement\n // Popper instance for positioning\n popperInstance: any;\n\n\n\n componentWillLoad() {\n //maybe not needed\n this.updateSlotContent();\n this.watchHandlerIsOpen(this.defaultOpen, this.internalIsOpen);\n }\n\n\n\n @Watch('defaultOpen')\n watchHandlerIsOpen(newValue: boolean, oldValue: boolean) {\n if (newValue !== oldValue && newValue !== this.internalIsOpen) {\n if (newValue) {\n this.openDropdown();\n } else {\n this.closeDropdown();\n }\n }\n }\n\n @Watch('disabled')\n watchHandlerDisabled(newValue: boolean) {\n if (this.trigger) {\n (this.trigger as undefined as HTMLIfxDropdownTriggerButtonElement).disabled = newValue;\n }\n }\n\n\n @Listen('slotchange')\n watchHandlerSlot() {\n this.updateSlotContent();\n }\n\n\n\n // handling assignment of trigger and menu\n updateSlotContent() {\n // Get dropdown trigger. name has to start with ifx-dropdown-trigger\n this.trigger = this.el.querySelector('ifx-dropdown-trigger-button, ifx-dropdown-trigger');\n if (this.trigger) {\n (this.trigger as undefined as HTMLIfxDropdownTriggerButtonElement).disabled = this.disabled;\n this.trigger.removeEventListener('click', this.triggerClickHandler.bind(this));\n this.trigger.addEventListener('click', this.triggerClickHandler.bind(this));\n }\n // Remove menu if exists from body\n if (!this.noAppendToBody) {\n if (this.menu) {\n this.menu.remove();\n }\n // Get new menu and add to body\n this.menu = this.el.querySelector('ifx-dropdown-menu');\n\n // event handler for closing dropdown on menu click\n document.body.append(this.menu);\n } else {\n this.menu = this.el.querySelector('ifx-dropdown-menu');\n\n }\n this.menu.removeEventListener('click', this.menuClickHandler.bind(this));\n this.menu.addEventListener('click', this.menuClickHandler.bind(this));\n\n }\n\n menuClickHandler() {\n if (!this.noCloseOnMenuClick) {\n this.closeDropdown();\n }\n }\n\n triggerClickHandler() {\n if (!this.internalIsOpen) {\n this.openDropdown();\n } else {\n this.closeDropdown();\n }\n }\n\n disconnectedCallback() {\n // Destroy popper instance if exists\n if (this.popperInstance) {\n this.popperInstance.destroy();\n this.popperInstance = null;\n }\n // Remove menu if exists\n if (this.menu) {\n this.menu.remove();\n }\n }\n\n @Method()\n async isOpen() {\n return this.internalIsOpen;\n }\n\n @Method()\n async closeDropdown() {\n if (this.internalIsOpen) {\n this.internalIsOpen = false;\n // sets isOpen prop on trigger and menu\n (this.trigger as unknown as IOpenable).isOpen = false;\n (this.menu as unknown as IOpenable).isOpen = false;\n // Emit close event\n this.ifxClose.emit();\n }\n // Destroy popper instance if exists\n if (this.popperInstance) {\n this.popperInstance.destroy();\n this.popperInstance = null;\n }\n }\n\n @Method()\n async openDropdown() {\n if (!this.internalIsOpen && !this.disabled) {\n this.internalIsOpen = true;\n // sets isOpen prop on trigger and menu\n (this.trigger as unknown as IOpenable).isOpen = true;\n (this.menu as unknown as IOpenable).isOpen = true;\n // Create popper instance for positioning\n this.popperInstance = createPopper(\n this.el,\n this.menu,\n { placement: this.placement });\n\n this.ifxOpen.emit();\n }\n }\n\n //emitted by and listening to it from the dropdown menu right now\n // @Listen('ifxDropdownMenu')\n // handleDropdownMenuEvents(event: CustomEvent) {\n // this.ifxDropdown.emit(event.detail)\n // console.log('Selected item received in higher-level parent:');\n // }\n\n @Listen('mousedown', { target: 'document' })\n handleOutsideClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n // Close dropdown if outside click\n if (!this.noCloseOnOutsideClick && !this.el.contains(target) && !this.menu.contains(target)) {\n this.closeDropdown();\n }\n }\n\n render() {\n return (\n <div aria-label='dropdown menu' class='dropdown'>\n <slot />\n </div>\n )\n }\n}"]}