@infineon/infineon-design-system-stencil 30.3.0 → 30.3.1--canary.1643.22ecceb5508f420fbf963d3bce563a9f213b640d.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 (563) hide show
  1. package/dist/cjs/ifx-accordion_2.cjs.entry.js +1 -1
  2. package/dist/cjs/ifx-alert.cjs.entry.js +1 -1
  3. package/dist/cjs/ifx-badge.cjs.entry.js +1 -1
  4. package/dist/cjs/ifx-basic-table.cjs.entry.js +1 -1
  5. package/dist/cjs/ifx-breadcrumb-item-label.cjs.entry.js +1 -1
  6. package/dist/cjs/ifx-breadcrumb-item.cjs.entry.js +1 -1
  7. package/dist/cjs/ifx-breadcrumb.cjs.entry.js +1 -1
  8. package/dist/cjs/ifx-button.cjs.entry.js +1 -1
  9. package/dist/cjs/ifx-card-headline.cjs.entry.js +1 -1
  10. package/dist/cjs/ifx-card-image.cjs.entry.js +1 -1
  11. package/dist/cjs/ifx-card-links.cjs.entry.js +1 -1
  12. package/dist/cjs/ifx-card-overline.cjs.entry.js +1 -1
  13. package/dist/cjs/ifx-card-text.cjs.entry.js +1 -1
  14. package/dist/cjs/ifx-card.cjs.entry.js +1 -1
  15. package/dist/cjs/ifx-checkbox.cjs.entry.js +1 -1
  16. package/dist/cjs/ifx-chip_3.cjs.entry.js +1 -1
  17. package/dist/cjs/ifx-content-switcher-item.cjs.entry.js +1 -1
  18. package/dist/cjs/ifx-content-switcher.cjs.entry.js +1 -1
  19. package/dist/cjs/ifx-date-picker.cjs.entry.js +1 -1
  20. package/dist/cjs/ifx-dropdown-header.cjs.entry.js +1 -1
  21. package/dist/cjs/ifx-dropdown-item.cjs.entry.js +1 -1
  22. package/dist/cjs/ifx-dropdown-menu.cjs.entry.js +1 -1
  23. package/dist/cjs/ifx-dropdown-separator.cjs.entry.js +1 -1
  24. package/dist/cjs/ifx-dropdown-trigger-button.cjs.entry.js +1 -1
  25. package/dist/cjs/ifx-dropdown-trigger.cjs.entry.js +1 -1
  26. package/dist/cjs/ifx-dropdown.cjs.entry.js +1 -1
  27. package/dist/cjs/ifx-faq.cjs.entry.js +1 -1
  28. package/dist/cjs/ifx-filter-accordion.cjs.entry.js +1 -1
  29. package/dist/cjs/ifx-filter-bar.cjs.entry.js +1 -1
  30. package/dist/cjs/ifx-filter-search.cjs.entry.js +1 -1
  31. package/dist/cjs/ifx-filter-type-group.cjs.entry.js +1 -1
  32. package/dist/cjs/ifx-footer-column.cjs.entry.js +1 -1
  33. package/dist/cjs/ifx-footer.cjs.entry.js +1 -1
  34. package/dist/cjs/ifx-icon-button.cjs.entry.js +1 -1
  35. package/dist/cjs/ifx-icon.cjs.entry.js +1 -1
  36. package/dist/cjs/ifx-icons-preview.cjs.entry.js +1 -1
  37. package/dist/cjs/ifx-link.cjs.entry.js +1 -1
  38. package/dist/cjs/ifx-list-entry.cjs.entry.js +1 -1
  39. package/dist/cjs/ifx-list-group.cjs.entry.js +1 -1
  40. package/dist/cjs/ifx-list-item.cjs.entry.js +1 -1
  41. package/dist/cjs/ifx-list-notification.cjs.entry.js +1 -1
  42. package/dist/cjs/ifx-list.cjs.entry.js +1 -1
  43. package/dist/cjs/ifx-modal.cjs.entry.js +1 -1
  44. package/dist/cjs/ifx-multiselect_2.cjs.entry.js +1 -1
  45. package/dist/cjs/ifx-navbar-item.cjs.entry.js +1 -1
  46. package/dist/cjs/ifx-navbar-profile.cjs.entry.js +1 -1
  47. package/dist/cjs/ifx-navbar.cjs.entry.js +1 -1
  48. package/dist/cjs/ifx-notification.cjs.entry.js +1 -1
  49. package/dist/cjs/ifx-number-indicator.cjs.entry.js +1 -1
  50. package/dist/cjs/ifx-overview-table.cjs.entry.js +1 -1
  51. package/dist/cjs/ifx-progress-bar.cjs.entry.js +1 -1
  52. package/dist/cjs/ifx-radio-button.cjs.entry.js +1 -1
  53. package/dist/cjs/ifx-search-bar.cjs.entry.js +1 -1
  54. package/dist/cjs/ifx-search-field.cjs.entry.js +1 -1
  55. package/dist/cjs/ifx-segment.cjs.entry.js +1 -1
  56. package/dist/cjs/ifx-segmented-control.cjs.entry.js +1 -1
  57. package/dist/cjs/ifx-select.cjs.entry.js +1 -1
  58. package/dist/cjs/ifx-set-filter.cjs.entry.js +1 -1
  59. package/dist/cjs/ifx-sidebar-item.cjs.entry.js +1 -1
  60. package/dist/cjs/ifx-sidebar-title.cjs.entry.js +1 -1
  61. package/dist/cjs/ifx-sidebar.cjs.entry.js +1 -1
  62. package/dist/cjs/ifx-slider.cjs.entry.js +1 -1
  63. package/dist/cjs/ifx-spinner.cjs.entry.js +1 -1
  64. package/dist/cjs/ifx-status.cjs.entry.js +1 -1
  65. package/dist/cjs/ifx-step.cjs.entry.js +1 -1
  66. package/dist/cjs/ifx-stepper.cjs.entry.js +1 -1
  67. package/dist/cjs/ifx-switch.cjs.entry.js +1 -1
  68. package/dist/cjs/ifx-tab.cjs.entry.js +6 -2
  69. package/dist/cjs/ifx-tab.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ifx-table.cjs.entry.js +1 -1
  71. package/dist/cjs/ifx-tabs.cjs.entry.js +11 -5
  72. package/dist/cjs/ifx-tabs.cjs.entry.js.map +1 -1
  73. package/dist/cjs/ifx-tag.cjs.entry.js +1 -1
  74. package/dist/cjs/ifx-textarea.cjs.entry.js +1 -1
  75. package/dist/cjs/ifx-tooltip.cjs.entry.js +1 -1
  76. package/dist/cjs/{index-f6c58643.js → index-af3b4f6c.js} +254 -200
  77. package/dist/cjs/index-af3b4f6c.js.map +1 -0
  78. package/dist/cjs/infineon-design-system-stencil.cjs.js +3 -3
  79. package/dist/cjs/infineon-design-system-stencil.cjs.js.map +1 -1
  80. package/dist/cjs/loader.cjs.js +2 -2
  81. package/dist/collection/collection-manifest.json +1 -1
  82. package/dist/collection/components/accordion/accordion.js +2 -0
  83. package/dist/collection/components/accordion/accordion.js.map +1 -1
  84. package/dist/collection/components/accordion/accordionItem.js +6 -0
  85. package/dist/collection/components/accordion/accordionItem.js.map +1 -1
  86. package/dist/collection/components/alert/alert.js +8 -0
  87. package/dist/collection/components/alert/alert.js.map +1 -1
  88. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js +6 -0
  89. package/dist/collection/components/breadcrumb/breadcrumb-item-label.js.map +1 -1
  90. package/dist/collection/components/button/button.js +18 -0
  91. package/dist/collection/components/button/button.js.map +1 -1
  92. package/dist/collection/components/card/card-image/card-image.js +6 -0
  93. package/dist/collection/components/card/card-image/card-image.js.map +1 -1
  94. package/dist/collection/components/card/card.js +8 -0
  95. package/dist/collection/components/card/card.js.map +1 -1
  96. package/dist/collection/components/checkbox/checkbox.js +12 -0
  97. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  98. package/dist/collection/components/chip/chip-item/chip-item.js +6 -0
  99. package/dist/collection/components/chip/chip-item/chip-item.js.map +1 -1
  100. package/dist/collection/components/chip/chip.js +12 -0
  101. package/dist/collection/components/chip/chip.js.map +1 -1
  102. package/dist/collection/components/content-switcher/content-switcher-item.js +4 -0
  103. package/dist/collection/components/content-switcher/content-switcher-item.js.map +1 -1
  104. package/dist/collection/components/date-picker/date-picker.js +22 -0
  105. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  106. package/dist/collection/components/dropdown/dropdown-item/dropdown-item.js +8 -0
  107. package/dist/collection/components/dropdown/dropdown-item/dropdown-item.js.map +1 -1
  108. package/dist/collection/components/dropdown/dropdown-menu/dropdown-menu.js +4 -0
  109. package/dist/collection/components/dropdown/dropdown-menu/dropdown-menu.js.map +1 -1
  110. package/dist/collection/components/dropdown/dropdown-trigger/dropdown-trigger.js +2 -0
  111. package/dist/collection/components/dropdown/dropdown-trigger/dropdown-trigger.js.map +1 -1
  112. package/dist/collection/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.js +12 -0
  113. package/dist/collection/components/dropdown/dropdown-trigger-button/dropdown-trigger-button.js.map +1 -1
  114. package/dist/collection/components/dropdown/dropdown.js +12 -0
  115. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  116. package/dist/collection/components/footer/footer.js +2 -0
  117. package/dist/collection/components/footer/footer.js.map +1 -1
  118. package/dist/collection/components/icon/infineonIconStencil.js +4 -0
  119. package/dist/collection/components/icon/infineonIconStencil.js.map +1 -1
  120. package/dist/collection/components/icon-button/icon-button.js +14 -0
  121. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  122. package/dist/collection/components/link/link.js +10 -0
  123. package/dist/collection/components/link/link.js.map +1 -1
  124. package/dist/collection/components/list-group/list-group-item.js +6 -0
  125. package/dist/collection/components/list-group/list-group-item.js.map +1 -1
  126. package/dist/collection/components/list-group/list-group-notification.js +6 -0
  127. package/dist/collection/components/list-group/list-group-notification.js.map +1 -1
  128. package/dist/collection/components/list-group/list-group.js +6 -0
  129. package/dist/collection/components/list-group/list-group.js.map +1 -1
  130. package/dist/collection/components/modal/modal.js +18 -0
  131. package/dist/collection/components/modal/modal.js.map +1 -1
  132. package/dist/collection/components/navigation/navbar/navbar-item.js +10 -0
  133. package/dist/collection/components/navigation/navbar/navbar-item.js.map +1 -1
  134. package/dist/collection/components/navigation/navbar/navbar-profile.js +12 -0
  135. package/dist/collection/components/navigation/navbar/navbar-profile.js.map +1 -1
  136. package/dist/collection/components/navigation/navbar/navbar.js +10 -0
  137. package/dist/collection/components/navigation/navbar/navbar.js.map +1 -1
  138. package/dist/collection/components/navigation/sidebar/sidebar-item.js +17 -1
  139. package/dist/collection/components/navigation/sidebar/sidebar-item.js.map +1 -1
  140. package/dist/collection/components/navigation/sidebar/sidebar.js +18 -0
  141. package/dist/collection/components/navigation/sidebar/sidebar.js.map +1 -1
  142. package/dist/collection/components/notification/notification.js +10 -0
  143. package/dist/collection/components/notification/notification.js.map +1 -1
  144. package/dist/collection/components/number-indicator/number-indicator.js +2 -0
  145. package/dist/collection/components/number-indicator/number-indicator.js.map +1 -1
  146. package/dist/collection/components/pagination/pagination.js +4 -0
  147. package/dist/collection/components/pagination/pagination.js.map +1 -1
  148. package/dist/collection/components/progress-bar/progress-bar.js +6 -0
  149. package/dist/collection/components/progress-bar/progress-bar.js.map +1 -1
  150. package/dist/collection/components/radio-button/radio-button.js +12 -0
  151. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  152. package/dist/collection/components/search-bar/search-bar.js +8 -0
  153. package/dist/collection/components/search-bar/search-bar.js.map +1 -1
  154. package/dist/collection/components/search-field/search-field.js +12 -0
  155. package/dist/collection/components/search-field/search-field.js.map +1 -1
  156. package/dist/collection/components/segmented-control/segment/segment.js +8 -0
  157. package/dist/collection/components/segmented-control/segment/segment.js.map +1 -1
  158. package/dist/collection/components/segmented-control/segmented-control.js +6 -0
  159. package/dist/collection/components/segmented-control/segmented-control.js.map +1 -1
  160. package/dist/collection/components/select/multi-select/multiselect.js +24 -0
  161. package/dist/collection/components/select/multi-select/multiselect.js.map +1 -1
  162. package/dist/collection/components/select/single-select/select.js +105 -7
  163. package/dist/collection/components/select/single-select/select.js.map +1 -1
  164. package/dist/collection/components/slider/slider.js +26 -0
  165. package/dist/collection/components/slider/slider.js.map +1 -1
  166. package/dist/collection/components/spinner/spinner.js +6 -0
  167. package/dist/collection/components/spinner/spinner.js.map +1 -1
  168. package/dist/collection/components/status/status.js +6 -0
  169. package/dist/collection/components/status/status.js.map +1 -1
  170. package/dist/collection/components/stepper/step/step.js +12 -0
  171. package/dist/collection/components/stepper/step/step.js.map +1 -1
  172. package/dist/collection/components/stepper/stepper.js +8 -0
  173. package/dist/collection/components/stepper/stepper.js.map +1 -1
  174. package/dist/collection/components/switch/switch.js +8 -0
  175. package/dist/collection/components/switch/switch.js.map +1 -1
  176. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js +4 -0
  177. package/dist/collection/components/table-advanced-version/filter-bar/filter-bar.js.map +1 -1
  178. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js +4 -0
  179. package/dist/collection/components/table-advanced-version/filter-type-group/filter-accordion/filter-accordion.js.map +1 -1
  180. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js +12 -0
  181. package/dist/collection/components/table-advanced-version/filter-type-group/filter-search/filter-search.js.map +1 -1
  182. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js +6 -0
  183. package/dist/collection/components/table-advanced-version/list/list-entry/list-entry.js.map +1 -1
  184. package/dist/collection/components/table-advanced-version/list/list.js +8 -0
  185. package/dist/collection/components/table-advanced-version/list/list.js.map +1 -1
  186. package/dist/collection/components/table-advanced-version/set-filter/setFilter.js +10 -0
  187. package/dist/collection/components/table-advanced-version/set-filter/setFilter.js.map +1 -1
  188. package/dist/collection/components/table-advanced-version/table.js +16 -0
  189. package/dist/collection/components/table-advanced-version/table.js.map +1 -1
  190. package/dist/collection/components/table-basic-version/table.js +8 -0
  191. package/dist/collection/components/table-basic-version/table.js.map +1 -1
  192. package/dist/collection/components/tabs/tab.js +30 -1
  193. package/dist/collection/components/tabs/tab.js.map +1 -1
  194. package/dist/collection/components/tabs/tabs.css +5 -0
  195. package/dist/collection/components/tabs/tabs.js +39 -3
  196. package/dist/collection/components/tabs/tabs.js.map +1 -1
  197. package/dist/collection/components/tag/tag.js +2 -0
  198. package/dist/collection/components/tag/tag.js.map +1 -1
  199. package/dist/collection/components/text-field/text-field.js +26 -0
  200. package/dist/collection/components/text-field/text-field.js.map +1 -1
  201. package/dist/collection/components/textarea/textarea.js +26 -0
  202. package/dist/collection/components/textarea/textarea.js.map +1 -1
  203. package/dist/collection/components/tooltip/tooltip.js +10 -0
  204. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  205. package/dist/components/ifx-accordion-item.js +1 -1
  206. package/dist/components/ifx-accordion.js +1 -1
  207. package/dist/components/ifx-alert.js +2 -2
  208. package/dist/components/ifx-badge.js +1 -1
  209. package/dist/components/ifx-basic-table.js +1 -1
  210. package/dist/components/ifx-breadcrumb-item-label.js +2 -2
  211. package/dist/components/ifx-breadcrumb-item.js +1 -1
  212. package/dist/components/ifx-breadcrumb.js +1 -1
  213. package/dist/components/ifx-button.js +1 -1
  214. package/dist/components/ifx-card-headline.js +1 -1
  215. package/dist/components/ifx-card-image.js +1 -1
  216. package/dist/components/ifx-card-links.js +1 -1
  217. package/dist/components/ifx-card-overline.js +1 -1
  218. package/dist/components/ifx-card-text.js +1 -1
  219. package/dist/components/ifx-card.js +1 -1
  220. package/dist/components/ifx-checkbox.js +1 -1
  221. package/dist/components/ifx-chip-item.js +1 -1
  222. package/dist/components/ifx-chip.js +1 -1
  223. package/dist/components/ifx-content-switcher-item.js +1 -1
  224. package/dist/components/ifx-content-switcher.js +1 -1
  225. package/dist/components/ifx-date-picker.js +2 -2
  226. package/dist/components/ifx-dropdown-header.js +1 -1
  227. package/dist/components/ifx-dropdown-item.js +2 -2
  228. package/dist/components/ifx-dropdown-menu.js +1 -1
  229. package/dist/components/ifx-dropdown-separator.js +1 -1
  230. package/dist/components/ifx-dropdown-trigger-button.js +3 -3
  231. package/dist/components/ifx-dropdown-trigger.js +1 -1
  232. package/dist/components/ifx-dropdown.js +1 -1
  233. package/dist/components/ifx-faq.js +4 -4
  234. package/dist/components/ifx-filter-accordion.js +3 -3
  235. package/dist/components/ifx-filter-bar.js +3 -3
  236. package/dist/components/ifx-filter-search.js +3 -3
  237. package/dist/components/ifx-filter-type-group.js +1 -1
  238. package/dist/components/ifx-footer-column.js +1 -1
  239. package/dist/components/ifx-footer.js +1 -1
  240. package/dist/components/ifx-icon-button.js +1 -1
  241. package/dist/components/ifx-icon.js +1 -1
  242. package/dist/components/ifx-icons-preview.js +2 -2
  243. package/dist/components/ifx-link.js +1 -1
  244. package/dist/components/ifx-list-entry.js +4 -4
  245. package/dist/components/ifx-list-group.js +1 -1
  246. package/dist/components/ifx-list-item.js +2 -2
  247. package/dist/components/ifx-list-notification.js +1 -1
  248. package/dist/components/ifx-list.js +3 -3
  249. package/dist/components/ifx-modal.js +3 -3
  250. package/dist/components/ifx-multiselect.js +1 -1
  251. package/dist/components/ifx-navbar-item.js +2 -2
  252. package/dist/components/ifx-navbar-profile.js +1 -1
  253. package/dist/components/ifx-navbar.js +2 -2
  254. package/dist/components/ifx-notification.js +3 -3
  255. package/dist/components/ifx-number-indicator.js +1 -1
  256. package/dist/components/ifx-overview-table.js +4 -4
  257. package/dist/components/ifx-pagination.js +1 -1
  258. package/dist/components/ifx-progress-bar.js +1 -1
  259. package/dist/components/ifx-radio-button.js +1 -1
  260. package/dist/components/ifx-search-bar.js +3 -3
  261. package/dist/components/ifx-search-field.js +1 -1
  262. package/dist/components/ifx-segment.js +2 -2
  263. package/dist/components/ifx-segmented-control.js +2 -2
  264. package/dist/components/ifx-select.js +1 -1
  265. package/dist/components/ifx-set-filter.js +7 -7
  266. package/dist/components/ifx-sidebar-item.js +3 -3
  267. package/dist/components/ifx-sidebar-title.js +1 -1
  268. package/dist/components/ifx-sidebar.js +1 -1
  269. package/dist/components/ifx-slider.js +2 -2
  270. package/dist/components/ifx-spinner.js +1 -1
  271. package/dist/components/ifx-status.js +1 -1
  272. package/dist/components/ifx-step.js +2 -2
  273. package/dist/components/ifx-stepper.js +1 -1
  274. package/dist/components/ifx-switch.js +1 -1
  275. package/dist/components/ifx-tab.js +6 -2
  276. package/dist/components/ifx-tab.js.map +1 -1
  277. package/dist/components/ifx-table.js +10 -10
  278. package/dist/components/ifx-tabs.js +14 -7
  279. package/dist/components/ifx-tabs.js.map +1 -1
  280. package/dist/components/ifx-tag.js +2 -2
  281. package/dist/components/ifx-text-field.js +1 -1
  282. package/dist/components/ifx-textarea.js +1 -1
  283. package/dist/components/ifx-tooltip.js +2 -2
  284. package/dist/components/index.js +1 -1
  285. package/dist/components/{p-96fbc3db.js → p-04b73e62.js} +5 -5
  286. package/dist/components/{p-96fbc3db.js.map → p-04b73e62.js.map} +1 -1
  287. package/dist/components/{p-2bad5baa.js → p-094bb435.js} +2 -2
  288. package/dist/components/{p-2bad5baa.js.map → p-094bb435.js.map} +1 -1
  289. package/dist/components/{p-995ac9ca.js → p-147fa378.js} +4 -4
  290. package/dist/components/{p-995ac9ca.js.map → p-147fa378.js.map} +1 -1
  291. package/dist/components/{p-77b40c27.js → p-23cdd5a7.js} +4 -4
  292. package/dist/components/{p-77b40c27.js.map → p-23cdd5a7.js.map} +1 -1
  293. package/dist/components/{p-d0f74c7f.js → p-3f591754.js} +2 -2
  294. package/dist/components/{p-d0f74c7f.js.map → p-3f591754.js.map} +1 -1
  295. package/dist/components/{p-f64f5f8d.js → p-3fe9ad26.js} +3 -3
  296. package/dist/components/{p-f64f5f8d.js.map → p-3fe9ad26.js.map} +1 -1
  297. package/dist/components/{p-0d986658.js → p-4b3befbf.js} +2 -2
  298. package/dist/components/{p-0d986658.js.map → p-4b3befbf.js.map} +1 -1
  299. package/dist/components/{p-4c09147f.js → p-68d90201.js} +238 -196
  300. package/dist/components/p-68d90201.js.map +1 -0
  301. package/dist/components/{p-a2411b44.js → p-7e430b83.js} +2 -2
  302. package/dist/components/{p-a2411b44.js.map → p-7e430b83.js.map} +1 -1
  303. package/dist/components/{p-6a771687.js → p-8eed2f39.js} +3 -3
  304. package/dist/components/{p-6a771687.js.map → p-8eed2f39.js.map} +1 -1
  305. package/dist/components/{p-652fc14d.js → p-99f7a394.js} +5 -5
  306. package/dist/components/{p-652fc14d.js.map → p-99f7a394.js.map} +1 -1
  307. package/dist/components/{p-56db9d3e.js → p-aecf447b.js} +2 -2
  308. package/dist/components/{p-56db9d3e.js.map → p-aecf447b.js.map} +1 -1
  309. package/dist/components/{p-0a68c458.js → p-b2439194.js} +3 -3
  310. package/dist/components/{p-0a68c458.js.map → p-b2439194.js.map} +1 -1
  311. package/dist/components/{p-1d98a3a6.js → p-cfb87c4d.js} +2 -2
  312. package/dist/components/{p-1d98a3a6.js.map → p-cfb87c4d.js.map} +1 -1
  313. package/dist/components/{p-995af7ca.js → p-d0a26bd5.js} +2 -2
  314. package/dist/components/{p-995af7ca.js.map → p-d0a26bd5.js.map} +1 -1
  315. package/dist/components/{p-7826add7.js → p-d78c7e13.js} +3 -3
  316. package/dist/components/{p-7826add7.js.map → p-d78c7e13.js.map} +1 -1
  317. package/dist/components/{p-a6736b21.js → p-ecf8c880.js} +3 -3
  318. package/dist/components/{p-a6736b21.js.map → p-ecf8c880.js.map} +1 -1
  319. package/dist/components/{p-cc820c25.js → p-f0f583d5.js} +3 -3
  320. package/dist/components/{p-cc820c25.js.map → p-f0f583d5.js.map} +1 -1
  321. package/dist/esm/ifx-accordion_2.entry.js +1 -1
  322. package/dist/esm/ifx-alert.entry.js +1 -1
  323. package/dist/esm/ifx-badge.entry.js +1 -1
  324. package/dist/esm/ifx-basic-table.entry.js +1 -1
  325. package/dist/esm/ifx-breadcrumb-item-label.entry.js +1 -1
  326. package/dist/esm/ifx-breadcrumb-item.entry.js +1 -1
  327. package/dist/esm/ifx-breadcrumb.entry.js +1 -1
  328. package/dist/esm/ifx-button.entry.js +1 -1
  329. package/dist/esm/ifx-card-headline.entry.js +1 -1
  330. package/dist/esm/ifx-card-image.entry.js +1 -1
  331. package/dist/esm/ifx-card-links.entry.js +1 -1
  332. package/dist/esm/ifx-card-overline.entry.js +1 -1
  333. package/dist/esm/ifx-card-text.entry.js +1 -1
  334. package/dist/esm/ifx-card.entry.js +1 -1
  335. package/dist/esm/ifx-checkbox.entry.js +1 -1
  336. package/dist/esm/ifx-chip_3.entry.js +1 -1
  337. package/dist/esm/ifx-content-switcher-item.entry.js +1 -1
  338. package/dist/esm/ifx-content-switcher.entry.js +1 -1
  339. package/dist/esm/ifx-date-picker.entry.js +1 -1
  340. package/dist/esm/ifx-dropdown-header.entry.js +1 -1
  341. package/dist/esm/ifx-dropdown-item.entry.js +1 -1
  342. package/dist/esm/ifx-dropdown-menu.entry.js +1 -1
  343. package/dist/esm/ifx-dropdown-separator.entry.js +1 -1
  344. package/dist/esm/ifx-dropdown-trigger-button.entry.js +1 -1
  345. package/dist/esm/ifx-dropdown-trigger.entry.js +1 -1
  346. package/dist/esm/ifx-dropdown.entry.js +1 -1
  347. package/dist/esm/ifx-faq.entry.js +1 -1
  348. package/dist/esm/ifx-filter-accordion.entry.js +1 -1
  349. package/dist/esm/ifx-filter-bar.entry.js +1 -1
  350. package/dist/esm/ifx-filter-search.entry.js +1 -1
  351. package/dist/esm/ifx-filter-type-group.entry.js +1 -1
  352. package/dist/esm/ifx-footer-column.entry.js +1 -1
  353. package/dist/esm/ifx-footer.entry.js +1 -1
  354. package/dist/esm/ifx-icon-button.entry.js +1 -1
  355. package/dist/esm/ifx-icon.entry.js +1 -1
  356. package/dist/esm/ifx-icons-preview.entry.js +1 -1
  357. package/dist/esm/ifx-link.entry.js +1 -1
  358. package/dist/esm/ifx-list-entry.entry.js +1 -1
  359. package/dist/esm/ifx-list-group.entry.js +1 -1
  360. package/dist/esm/ifx-list-item.entry.js +1 -1
  361. package/dist/esm/ifx-list-notification.entry.js +1 -1
  362. package/dist/esm/ifx-list.entry.js +1 -1
  363. package/dist/esm/ifx-modal.entry.js +1 -1
  364. package/dist/esm/ifx-multiselect_2.entry.js +1 -1
  365. package/dist/esm/ifx-navbar-item.entry.js +1 -1
  366. package/dist/esm/ifx-navbar-profile.entry.js +1 -1
  367. package/dist/esm/ifx-navbar.entry.js +1 -1
  368. package/dist/esm/ifx-notification.entry.js +1 -1
  369. package/dist/esm/ifx-number-indicator.entry.js +1 -1
  370. package/dist/esm/ifx-overview-table.entry.js +1 -1
  371. package/dist/esm/ifx-progress-bar.entry.js +1 -1
  372. package/dist/esm/ifx-radio-button.entry.js +1 -1
  373. package/dist/esm/ifx-search-bar.entry.js +1 -1
  374. package/dist/esm/ifx-search-field.entry.js +1 -1
  375. package/dist/esm/ifx-segment.entry.js +1 -1
  376. package/dist/esm/ifx-segmented-control.entry.js +1 -1
  377. package/dist/esm/ifx-select.entry.js +1 -1
  378. package/dist/esm/ifx-set-filter.entry.js +1 -1
  379. package/dist/esm/ifx-sidebar-item.entry.js +1 -1
  380. package/dist/esm/ifx-sidebar-title.entry.js +1 -1
  381. package/dist/esm/ifx-sidebar.entry.js +1 -1
  382. package/dist/esm/ifx-slider.entry.js +1 -1
  383. package/dist/esm/ifx-spinner.entry.js +1 -1
  384. package/dist/esm/ifx-status.entry.js +1 -1
  385. package/dist/esm/ifx-step.entry.js +1 -1
  386. package/dist/esm/ifx-stepper.entry.js +1 -1
  387. package/dist/esm/ifx-switch.entry.js +1 -1
  388. package/dist/esm/ifx-tab.entry.js +6 -2
  389. package/dist/esm/ifx-tab.entry.js.map +1 -1
  390. package/dist/esm/ifx-table.entry.js +1 -1
  391. package/dist/esm/ifx-tabs.entry.js +11 -5
  392. package/dist/esm/ifx-tabs.entry.js.map +1 -1
  393. package/dist/esm/ifx-tag.entry.js +1 -1
  394. package/dist/esm/ifx-textarea.entry.js +1 -1
  395. package/dist/esm/ifx-tooltip.entry.js +1 -1
  396. package/dist/esm/{index-fc6a5751.js → index-dc4139fb.js} +254 -200
  397. package/dist/esm/index-dc4139fb.js.map +1 -0
  398. package/dist/esm/infineon-design-system-stencil.js +4 -4
  399. package/dist/esm/infineon-design-system-stencil.js.map +1 -1
  400. package/dist/esm/loader.js +3 -3
  401. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
  402. package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js.map +1 -1
  403. package/dist/infineon-design-system-stencil/{p-1f329979.entry.js → p-08b6d9c1.entry.js} +2 -2
  404. package/dist/infineon-design-system-stencil/{p-5cc523fb.entry.js → p-0c4276df.entry.js} +2 -2
  405. package/dist/infineon-design-system-stencil/{p-336778c3.entry.js → p-0d774a43.entry.js} +2 -2
  406. package/dist/infineon-design-system-stencil/{p-598324f5.entry.js → p-10b773f0.entry.js} +2 -2
  407. package/dist/infineon-design-system-stencil/{p-e6427f2e.entry.js → p-10f15012.entry.js} +2 -2
  408. package/dist/infineon-design-system-stencil/{p-ec0c6eb5.entry.js → p-135e10f0.entry.js} +2 -2
  409. package/dist/infineon-design-system-stencil/{p-88fb3c49.entry.js → p-15704add.entry.js} +2 -2
  410. package/dist/infineon-design-system-stencil/{p-1d9e400c.entry.js → p-189c89c3.entry.js} +2 -2
  411. package/dist/infineon-design-system-stencil/{p-c9aca4b7.entry.js → p-1aed7d45.entry.js} +2 -2
  412. package/dist/infineon-design-system-stencil/{p-666e0ea0.entry.js → p-1cffc36f.entry.js} +2 -2
  413. package/dist/infineon-design-system-stencil/{p-b8f31dc3.entry.js → p-1de1bf3c.entry.js} +2 -2
  414. package/dist/infineon-design-system-stencil/{p-e954b757.entry.js → p-1e62f8ef.entry.js} +2 -2
  415. package/dist/infineon-design-system-stencil/{p-79b4d359.entry.js → p-222c1af9.entry.js} +2 -2
  416. package/dist/infineon-design-system-stencil/{p-47476fcb.entry.js → p-27a52d0b.entry.js} +2 -2
  417. package/dist/infineon-design-system-stencil/{p-7131a2b3.entry.js → p-27fde7a5.entry.js} +2 -2
  418. package/dist/infineon-design-system-stencil/{p-6ad287cf.entry.js → p-28fb795b.entry.js} +2 -2
  419. package/dist/infineon-design-system-stencil/{p-208b28b1.entry.js → p-2f8767b1.entry.js} +2 -2
  420. package/dist/infineon-design-system-stencil/{p-db4a364b.entry.js → p-3058194d.entry.js} +2 -2
  421. package/dist/infineon-design-system-stencil/{p-a29b6247.entry.js → p-322d20bc.entry.js} +2 -2
  422. package/dist/infineon-design-system-stencil/{p-492a9ab7.entry.js → p-32fc3ce3.entry.js} +2 -2
  423. package/dist/infineon-design-system-stencil/{p-c61a9185.entry.js → p-34fb9dca.entry.js} +2 -2
  424. package/dist/infineon-design-system-stencil/{p-8c9887e3.entry.js → p-379a2090.entry.js} +2 -2
  425. package/dist/infineon-design-system-stencil/{p-37654645.entry.js → p-466fea81.entry.js} +2 -2
  426. package/dist/infineon-design-system-stencil/{p-1175d112.entry.js → p-4b21c0e6.entry.js} +2 -2
  427. package/dist/infineon-design-system-stencil/{p-951cf503.entry.js → p-51980b19.entry.js} +2 -2
  428. package/dist/infineon-design-system-stencil/{p-a3c03169.entry.js → p-51c4e760.entry.js} +2 -2
  429. package/dist/infineon-design-system-stencil/{p-b3fb648f.entry.js → p-584149bd.entry.js} +2 -2
  430. package/dist/infineon-design-system-stencil/{p-cb0ddc9b.entry.js → p-58966086.entry.js} +2 -2
  431. package/dist/infineon-design-system-stencil/{p-a1c9b6fc.entry.js → p-5c1596a7.entry.js} +2 -2
  432. package/dist/infineon-design-system-stencil/{p-41b0849d.entry.js → p-60a18a26.entry.js} +2 -2
  433. package/dist/infineon-design-system-stencil/{p-5992e272.entry.js → p-6389a7b8.entry.js} +2 -2
  434. package/dist/infineon-design-system-stencil/{p-4111bbdc.entry.js → p-680f8e2c.entry.js} +2 -2
  435. package/dist/infineon-design-system-stencil/{p-cdad5d2c.entry.js → p-68eb8e5a.entry.js} +2 -2
  436. package/dist/infineon-design-system-stencil/{p-d31a6167.entry.js → p-6ae18c50.entry.js} +2 -2
  437. package/dist/infineon-design-system-stencil/p-6b122987.js +3 -0
  438. package/dist/infineon-design-system-stencil/p-6b122987.js.map +1 -0
  439. package/dist/infineon-design-system-stencil/{p-462946bf.entry.js → p-74b1b50f.entry.js} +2 -2
  440. package/dist/infineon-design-system-stencil/{p-24b38292.entry.js → p-777317e4.entry.js} +2 -2
  441. package/dist/infineon-design-system-stencil/{p-d323e4ed.entry.js → p-7bef9272.entry.js} +2 -2
  442. package/dist/infineon-design-system-stencil/{p-0c570fa2.entry.js → p-7f3ca443.entry.js} +2 -2
  443. package/dist/infineon-design-system-stencil/p-83007eb9.entry.js +2 -0
  444. package/dist/infineon-design-system-stencil/p-83007eb9.entry.js.map +1 -0
  445. package/dist/infineon-design-system-stencil/{p-f121e197.entry.js → p-874482ee.entry.js} +2 -2
  446. package/dist/infineon-design-system-stencil/{p-9c50bc3e.entry.js → p-8969f1e4.entry.js} +2 -2
  447. package/dist/infineon-design-system-stencil/p-8f6b0df4.entry.js +2 -0
  448. package/dist/infineon-design-system-stencil/p-8f6b0df4.entry.js.map +1 -0
  449. package/dist/infineon-design-system-stencil/{p-32c617c6.entry.js → p-a2147bb7.entry.js} +2 -2
  450. package/dist/infineon-design-system-stencil/{p-4af08129.entry.js → p-a351a04d.entry.js} +2 -2
  451. package/dist/infineon-design-system-stencil/{p-f3383274.entry.js → p-a8ccf376.entry.js} +2 -2
  452. package/dist/infineon-design-system-stencil/{p-44e64146.entry.js → p-a8d45ca9.entry.js} +2 -2
  453. package/dist/infineon-design-system-stencil/{p-16348b9d.entry.js → p-abff59ea.entry.js} +2 -2
  454. package/dist/infineon-design-system-stencil/{p-874f2bf6.entry.js → p-b25e5ad7.entry.js} +2 -2
  455. package/dist/infineon-design-system-stencil/{p-ce9e5451.entry.js → p-b9d2484b.entry.js} +2 -2
  456. package/dist/infineon-design-system-stencil/{p-6e61295f.entry.js → p-bddc382a.entry.js} +2 -2
  457. package/dist/infineon-design-system-stencil/{p-3be58aa2.entry.js → p-c1b1b593.entry.js} +2 -2
  458. package/dist/infineon-design-system-stencil/{p-7f510d1c.entry.js → p-c456c22b.entry.js} +2 -2
  459. package/dist/infineon-design-system-stencil/{p-6e2eec34.entry.js → p-c813e1f9.entry.js} +2 -2
  460. package/dist/infineon-design-system-stencil/{p-2fbad873.entry.js → p-c82d6a95.entry.js} +2 -2
  461. package/dist/infineon-design-system-stencil/{p-2d17e5b2.entry.js → p-ce413596.entry.js} +2 -2
  462. package/dist/infineon-design-system-stencil/{p-6902ee06.entry.js → p-d0afd39c.entry.js} +2 -2
  463. package/dist/infineon-design-system-stencil/{p-985c7bdc.entry.js → p-d2a39f3c.entry.js} +2 -2
  464. package/dist/infineon-design-system-stencil/{p-c68be6d9.entry.js → p-d3b4b20b.entry.js} +2 -2
  465. package/dist/infineon-design-system-stencil/{p-4349aa3a.entry.js → p-d52e5250.entry.js} +2 -2
  466. package/dist/infineon-design-system-stencil/{p-4aab4af4.entry.js → p-db09429f.entry.js} +2 -2
  467. package/dist/infineon-design-system-stencil/{p-1b9317bd.entry.js → p-dd339d82.entry.js} +2 -2
  468. package/dist/infineon-design-system-stencil/{p-e8cde48d.entry.js → p-ddd9ece3.entry.js} +2 -2
  469. package/dist/infineon-design-system-stencil/{p-2ae0a0d0.entry.js → p-e5e130b7.entry.js} +2 -2
  470. package/dist/infineon-design-system-stencil/{p-31889cb2.entry.js → p-e66c33ea.entry.js} +2 -2
  471. package/dist/infineon-design-system-stencil/{p-fcf71895.entry.js → p-eb8ba37f.entry.js} +2 -2
  472. package/dist/infineon-design-system-stencil/{p-2e2ab749.entry.js → p-ee055108.entry.js} +2 -2
  473. package/dist/infineon-design-system-stencil/{p-0b5ad497.entry.js → p-ee39e4ce.entry.js} +2 -2
  474. package/dist/infineon-design-system-stencil/{p-90687777.entry.js → p-ef63774d.entry.js} +2 -2
  475. package/dist/infineon-design-system-stencil/{p-c22f8c81.entry.js → p-f0052c72.entry.js} +2 -2
  476. package/dist/infineon-design-system-stencil/{p-ee68427e.entry.js → p-f5e3fe85.entry.js} +2 -2
  477. package/dist/infineon-design-system-stencil/{p-dba5e033.entry.js → p-fbd9e58e.entry.js} +2 -2
  478. package/dist/infineon-design-system-stencil/{p-190ebb90.entry.js → p-fc081136.entry.js} +2 -2
  479. package/dist/infineon-design-system-stencil/{p-db956276.entry.js → p-fea52bc2.entry.js} +2 -2
  480. package/dist/types/components/tabs/tab.d.ts +3 -0
  481. package/dist/types/components/tabs/tabs.d.ts +2 -0
  482. package/dist/types/components.d.ts +18 -0
  483. package/package.json +1 -1
  484. package/dist/cjs/index-f6c58643.js.map +0 -1
  485. package/dist/components/p-4c09147f.js.map +0 -1
  486. package/dist/esm/index-fc6a5751.js.map +0 -1
  487. package/dist/infineon-design-system-stencil/p-4a6e75a4.entry.js +0 -2
  488. package/dist/infineon-design-system-stencil/p-4a6e75a4.entry.js.map +0 -1
  489. package/dist/infineon-design-system-stencil/p-80bb0959.js +0 -3
  490. package/dist/infineon-design-system-stencil/p-80bb0959.js.map +0 -1
  491. package/dist/infineon-design-system-stencil/p-a24039e5.entry.js +0 -2
  492. package/dist/infineon-design-system-stencil/p-a24039e5.entry.js.map +0 -1
  493. /package/dist/infineon-design-system-stencil/{p-1f329979.entry.js.map → p-08b6d9c1.entry.js.map} +0 -0
  494. /package/dist/infineon-design-system-stencil/{p-5cc523fb.entry.js.map → p-0c4276df.entry.js.map} +0 -0
  495. /package/dist/infineon-design-system-stencil/{p-336778c3.entry.js.map → p-0d774a43.entry.js.map} +0 -0
  496. /package/dist/infineon-design-system-stencil/{p-598324f5.entry.js.map → p-10b773f0.entry.js.map} +0 -0
  497. /package/dist/infineon-design-system-stencil/{p-e6427f2e.entry.js.map → p-10f15012.entry.js.map} +0 -0
  498. /package/dist/infineon-design-system-stencil/{p-ec0c6eb5.entry.js.map → p-135e10f0.entry.js.map} +0 -0
  499. /package/dist/infineon-design-system-stencil/{p-88fb3c49.entry.js.map → p-15704add.entry.js.map} +0 -0
  500. /package/dist/infineon-design-system-stencil/{p-1d9e400c.entry.js.map → p-189c89c3.entry.js.map} +0 -0
  501. /package/dist/infineon-design-system-stencil/{p-c9aca4b7.entry.js.map → p-1aed7d45.entry.js.map} +0 -0
  502. /package/dist/infineon-design-system-stencil/{p-666e0ea0.entry.js.map → p-1cffc36f.entry.js.map} +0 -0
  503. /package/dist/infineon-design-system-stencil/{p-b8f31dc3.entry.js.map → p-1de1bf3c.entry.js.map} +0 -0
  504. /package/dist/infineon-design-system-stencil/{p-e954b757.entry.js.map → p-1e62f8ef.entry.js.map} +0 -0
  505. /package/dist/infineon-design-system-stencil/{p-79b4d359.entry.js.map → p-222c1af9.entry.js.map} +0 -0
  506. /package/dist/infineon-design-system-stencil/{p-47476fcb.entry.js.map → p-27a52d0b.entry.js.map} +0 -0
  507. /package/dist/infineon-design-system-stencil/{p-7131a2b3.entry.js.map → p-27fde7a5.entry.js.map} +0 -0
  508. /package/dist/infineon-design-system-stencil/{p-6ad287cf.entry.js.map → p-28fb795b.entry.js.map} +0 -0
  509. /package/dist/infineon-design-system-stencil/{p-208b28b1.entry.js.map → p-2f8767b1.entry.js.map} +0 -0
  510. /package/dist/infineon-design-system-stencil/{p-db4a364b.entry.js.map → p-3058194d.entry.js.map} +0 -0
  511. /package/dist/infineon-design-system-stencil/{p-a29b6247.entry.js.map → p-322d20bc.entry.js.map} +0 -0
  512. /package/dist/infineon-design-system-stencil/{p-492a9ab7.entry.js.map → p-32fc3ce3.entry.js.map} +0 -0
  513. /package/dist/infineon-design-system-stencil/{p-c61a9185.entry.js.map → p-34fb9dca.entry.js.map} +0 -0
  514. /package/dist/infineon-design-system-stencil/{p-8c9887e3.entry.js.map → p-379a2090.entry.js.map} +0 -0
  515. /package/dist/infineon-design-system-stencil/{p-37654645.entry.js.map → p-466fea81.entry.js.map} +0 -0
  516. /package/dist/infineon-design-system-stencil/{p-1175d112.entry.js.map → p-4b21c0e6.entry.js.map} +0 -0
  517. /package/dist/infineon-design-system-stencil/{p-951cf503.entry.js.map → p-51980b19.entry.js.map} +0 -0
  518. /package/dist/infineon-design-system-stencil/{p-a3c03169.entry.js.map → p-51c4e760.entry.js.map} +0 -0
  519. /package/dist/infineon-design-system-stencil/{p-b3fb648f.entry.js.map → p-584149bd.entry.js.map} +0 -0
  520. /package/dist/infineon-design-system-stencil/{p-cb0ddc9b.entry.js.map → p-58966086.entry.js.map} +0 -0
  521. /package/dist/infineon-design-system-stencil/{p-a1c9b6fc.entry.js.map → p-5c1596a7.entry.js.map} +0 -0
  522. /package/dist/infineon-design-system-stencil/{p-41b0849d.entry.js.map → p-60a18a26.entry.js.map} +0 -0
  523. /package/dist/infineon-design-system-stencil/{p-5992e272.entry.js.map → p-6389a7b8.entry.js.map} +0 -0
  524. /package/dist/infineon-design-system-stencil/{p-4111bbdc.entry.js.map → p-680f8e2c.entry.js.map} +0 -0
  525. /package/dist/infineon-design-system-stencil/{p-cdad5d2c.entry.js.map → p-68eb8e5a.entry.js.map} +0 -0
  526. /package/dist/infineon-design-system-stencil/{p-d31a6167.entry.js.map → p-6ae18c50.entry.js.map} +0 -0
  527. /package/dist/infineon-design-system-stencil/{p-462946bf.entry.js.map → p-74b1b50f.entry.js.map} +0 -0
  528. /package/dist/infineon-design-system-stencil/{p-24b38292.entry.js.map → p-777317e4.entry.js.map} +0 -0
  529. /package/dist/infineon-design-system-stencil/{p-d323e4ed.entry.js.map → p-7bef9272.entry.js.map} +0 -0
  530. /package/dist/infineon-design-system-stencil/{p-0c570fa2.entry.js.map → p-7f3ca443.entry.js.map} +0 -0
  531. /package/dist/infineon-design-system-stencil/{p-f121e197.entry.js.map → p-874482ee.entry.js.map} +0 -0
  532. /package/dist/infineon-design-system-stencil/{p-9c50bc3e.entry.js.map → p-8969f1e4.entry.js.map} +0 -0
  533. /package/dist/infineon-design-system-stencil/{p-32c617c6.entry.js.map → p-a2147bb7.entry.js.map} +0 -0
  534. /package/dist/infineon-design-system-stencil/{p-4af08129.entry.js.map → p-a351a04d.entry.js.map} +0 -0
  535. /package/dist/infineon-design-system-stencil/{p-f3383274.entry.js.map → p-a8ccf376.entry.js.map} +0 -0
  536. /package/dist/infineon-design-system-stencil/{p-44e64146.entry.js.map → p-a8d45ca9.entry.js.map} +0 -0
  537. /package/dist/infineon-design-system-stencil/{p-16348b9d.entry.js.map → p-abff59ea.entry.js.map} +0 -0
  538. /package/dist/infineon-design-system-stencil/{p-874f2bf6.entry.js.map → p-b25e5ad7.entry.js.map} +0 -0
  539. /package/dist/infineon-design-system-stencil/{p-ce9e5451.entry.js.map → p-b9d2484b.entry.js.map} +0 -0
  540. /package/dist/infineon-design-system-stencil/{p-6e61295f.entry.js.map → p-bddc382a.entry.js.map} +0 -0
  541. /package/dist/infineon-design-system-stencil/{p-3be58aa2.entry.js.map → p-c1b1b593.entry.js.map} +0 -0
  542. /package/dist/infineon-design-system-stencil/{p-7f510d1c.entry.js.map → p-c456c22b.entry.js.map} +0 -0
  543. /package/dist/infineon-design-system-stencil/{p-6e2eec34.entry.js.map → p-c813e1f9.entry.js.map} +0 -0
  544. /package/dist/infineon-design-system-stencil/{p-2fbad873.entry.js.map → p-c82d6a95.entry.js.map} +0 -0
  545. /package/dist/infineon-design-system-stencil/{p-2d17e5b2.entry.js.map → p-ce413596.entry.js.map} +0 -0
  546. /package/dist/infineon-design-system-stencil/{p-6902ee06.entry.js.map → p-d0afd39c.entry.js.map} +0 -0
  547. /package/dist/infineon-design-system-stencil/{p-985c7bdc.entry.js.map → p-d2a39f3c.entry.js.map} +0 -0
  548. /package/dist/infineon-design-system-stencil/{p-c68be6d9.entry.js.map → p-d3b4b20b.entry.js.map} +0 -0
  549. /package/dist/infineon-design-system-stencil/{p-4349aa3a.entry.js.map → p-d52e5250.entry.js.map} +0 -0
  550. /package/dist/infineon-design-system-stencil/{p-4aab4af4.entry.js.map → p-db09429f.entry.js.map} +0 -0
  551. /package/dist/infineon-design-system-stencil/{p-1b9317bd.entry.js.map → p-dd339d82.entry.js.map} +0 -0
  552. /package/dist/infineon-design-system-stencil/{p-e8cde48d.entry.js.map → p-ddd9ece3.entry.js.map} +0 -0
  553. /package/dist/infineon-design-system-stencil/{p-2ae0a0d0.entry.js.map → p-e5e130b7.entry.js.map} +0 -0
  554. /package/dist/infineon-design-system-stencil/{p-31889cb2.entry.js.map → p-e66c33ea.entry.js.map} +0 -0
  555. /package/dist/infineon-design-system-stencil/{p-fcf71895.entry.js.map → p-eb8ba37f.entry.js.map} +0 -0
  556. /package/dist/infineon-design-system-stencil/{p-2e2ab749.entry.js.map → p-ee055108.entry.js.map} +0 -0
  557. /package/dist/infineon-design-system-stencil/{p-0b5ad497.entry.js.map → p-ee39e4ce.entry.js.map} +0 -0
  558. /package/dist/infineon-design-system-stencil/{p-90687777.entry.js.map → p-ef63774d.entry.js.map} +0 -0
  559. /package/dist/infineon-design-system-stencil/{p-c22f8c81.entry.js.map → p-f0052c72.entry.js.map} +0 -0
  560. /package/dist/infineon-design-system-stencil/{p-ee68427e.entry.js.map → p-f5e3fe85.entry.js.map} +0 -0
  561. /package/dist/infineon-design-system-stencil/{p-dba5e033.entry.js.map → p-fbd9e58e.entry.js.map} +0 -0
  562. /package/dist/infineon-design-system-stencil/{p-190ebb90.entry.js.map → p-fc081136.entry.js.map} +0 -0
  563. /package/dist/infineon-design-system-stencil/{p-db956276.entry.js.map → p-fea52bc2.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/components/table-basic-version/table.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Element, Host, Prop, State } from '@stencil/core';\nimport { createGrid, FirstDataRenderedEvent, GridApi, GridOptions } from 'ag-grid-community';\nimport { CustomNoRowsOverlay } from './customNoRowsOverlay';\nimport { CustomLoadingOverlay } from './customLoadingOverlay';\nimport classNames from 'classnames';\n\n@Component({\n tag: 'ifx-basic-table',\n styleUrl: 'table.scss',\n shadow: false // only works with shadowdom off because we are using an external library\n})\nexport class Table {\n @State() gridOptions: GridOptions;\n @Prop() cols: any[] | string;\n @Prop() rows: any[] | string;\n @State() columnDefs: any[] = [];\n @State() rowData: any[] = [];\n @Prop() rowHeight: string = 'default';\n @Prop() tableHeight: string = 'auto';\n @State() uniqueKey: string;\n @Element() host: HTMLElement;\n \n private container: HTMLDivElement;\n private gridApi: GridApi; \n private gridInitialized = false;\n\n componentWillLoad() {\n this.uniqueKey = `unique-${Math.floor(Math.random() * 1000000)}`;\n this.setColsAndRows();\n this.setGridOptions();\n }\n\n setGridOptions() {\n this.gridOptions = {\n rowHeight: this.rowHeight === 'default' ? 40 : 32,\n headerHeight: 40,\n defaultColDef: {\n resizable: true,\n },\n suppressCellFocus: true,\n suppressDragLeaveHidesColumns: true,\n suppressRowHoverHighlight: true,\n onFirstDataRendered: this.onFirstDataRendered,\n columnDefs: this.columnDefs,\n rowData: this.rowData,\n loadingOverlayComponent: CustomLoadingOverlay,\n noRowsOverlayComponent: CustomNoRowsOverlay,\n noRowsOverlayComponentParams: {\n noRowsMessageFunc: () =>\n 'No rows found at: ' + new Date().toLocaleTimeString(),\n },\n icons: {\n sortAscending: '<ifx-icon icon=\"arrowtriangleup16\"></ifx-icon>',\n sortDescending: '<ifx-icon icon=\"arrowtriangledown16\"></ifx-icon>',\n sortUnSort: '<a class=\"unsort-icon-custom-color\"><ifx-icon icon=\"arrowtrianglevertikal16\"></ifx-icon></a>',\n },\n rowDragManaged: this.columnDefs.some((col) => col.dndSource === true) ? true : false,\n animateRows: this.columnDefs.some((col) => col.dndSource === true) ? true : false,\n };\n }\n\n setColsAndRows() {\n if (typeof this.rows === 'string' && typeof this.cols === 'string') {\n try {\n this.columnDefs = JSON.parse(this.cols);\n this.rowData = JSON.parse(this.rows);\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if ((Array.isArray(this.rows) || typeof this.rows === 'object') && (Array.isArray(this.cols) || typeof this.cols === 'object')) {\n this.columnDefs = this.cols;\n this.rowData = this.rows;\n } else {\n console.error('Unexpected value for cols and rows:', this.rows, this.cols);\n }\n }\n\n getRowData() {\n let rows: any[] = [];\n if (typeof this.rows === 'string') {\n try {\n rows = JSON.parse(this.rows);\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if (Array.isArray(this.rows) || typeof this.rows === 'object') {\n rows = this.rows;\n } else {\n console.error('Unexpected value for rows: ', this.rows);\n }\n\n return rows;\n }\n\n getColData() {\n let cols: any[] = [];\n\n if (typeof this.cols === 'string') {\n try {\n cols = JSON.parse(this.cols);\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if (Array.isArray(this.cols) || typeof this.cols === 'object') {\n cols = this.cols;\n } else {\n console.error('Unexpected value for cols: ', this.cols);\n }\n return cols;\n }\n\n onFirstDataRendered(params: FirstDataRenderedEvent) {\n params.api.sizeColumnsToFit();\n }\n\n componentWillUpdate() {\n this.setColsAndRows();\n this.gridOptions.columnDefs = this.columnDefs;\n this.gridOptions.rowData = this.rowData;\n if (this.gridApi) {\n this.gridApi.setGridOption('rowData', this.rowData);\n this.gridApi.setGridOption('columnDefs', this.columnDefs);\n }\n }\n\n componentDidLoad() {\n if (this.container && !this.gridInitialized) {\n this.gridApi = createGrid(this.container, this.gridOptions);\n if (this.gridApi) {\n this.gridApi.sizeColumnsToFit({\n defaultMinWidth: 100,\n });\n this.gridApi.setGridOption('columnDefs', this.getColData());\n this.gridApi.setGridOption('rowData', this.getRowData());\n this.gridInitialized = true; \n }\n }\n }\n\n getClassNames() {\n return classNames(\n this.tableHeight === 'auto' && 'table-wrapper ag-root-wrapper-body',\n 'table-wrapper',\n );\n }\n\n getTableStyle() {\n if (this.tableHeight !== 'auto') {\n return {\n height: this.tableHeight,\n };\n }\n return {};\n }\n\n render() {\n return (\n <Host>\n <div id=\"table-wrapper\" class={this.getClassNames()}>\n <div id={`ifxTable-${this.uniqueKey}`} class=\"ifx-ag-grid\" style={this.getTableStyle()} ref={(el) => (this.container = el)}></div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../src/components/table-basic-version/table.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Element, Host, Prop, State } from '@stencil/core';\nimport { createGrid, FirstDataRenderedEvent, GridApi, GridOptions } from 'ag-grid-community';\nimport { CustomNoRowsOverlay } from './customNoRowsOverlay';\nimport { CustomLoadingOverlay } from './customLoadingOverlay';\nimport classNames from 'classnames';\n\n@Component({\n tag: 'ifx-basic-table',\n styleUrl: 'table.scss',\n shadow: false // only works with shadowdom off because we are using an external library\n})\nexport class Table {\n @State() gridOptions: GridOptions;\n @Prop() cols: any[] | string;\n @Prop() rows: any[] | string;\n @State() columnDefs: any[] = [];\n @State() rowData: any[] = [];\n @Prop() rowHeight: string = 'default';\n @Prop() tableHeight: string = 'auto';\n @State() uniqueKey: string;\n @Element() host: HTMLElement;\n \n private container: HTMLDivElement;\n private gridApi: GridApi; \n private gridInitialized = false;\n\n componentWillLoad() {\n this.uniqueKey = `unique-${Math.floor(Math.random() * 1000000)}`;\n this.setColsAndRows();\n this.setGridOptions();\n }\n\n setGridOptions() {\n this.gridOptions = {\n rowHeight: this.rowHeight === 'default' ? 40 : 32,\n headerHeight: 40,\n defaultColDef: {\n resizable: true,\n },\n suppressCellFocus: true,\n suppressDragLeaveHidesColumns: true,\n suppressRowHoverHighlight: true,\n onFirstDataRendered: this.onFirstDataRendered,\n columnDefs: this.columnDefs,\n rowData: this.rowData,\n loadingOverlayComponent: CustomLoadingOverlay,\n noRowsOverlayComponent: CustomNoRowsOverlay,\n noRowsOverlayComponentParams: {\n noRowsMessageFunc: () =>\n 'No rows found at: ' + new Date().toLocaleTimeString(),\n },\n icons: {\n sortAscending: '<ifx-icon icon=\"arrowtriangleup16\"></ifx-icon>',\n sortDescending: '<ifx-icon icon=\"arrowtriangledown16\"></ifx-icon>',\n sortUnSort: '<a class=\"unsort-icon-custom-color\"><ifx-icon icon=\"arrowtrianglevertikal16\"></ifx-icon></a>',\n },\n rowDragManaged: this.columnDefs.some((col) => col.dndSource === true) ? true : false,\n animateRows: this.columnDefs.some((col) => col.dndSource === true) ? true : false,\n };\n }\n\n setColsAndRows() {\n if (typeof this.rows === 'string' && typeof this.cols === 'string') {\n try {\n this.columnDefs = JSON.parse(this.cols);\n this.rowData = JSON.parse(this.rows);\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if ((Array.isArray(this.rows) || typeof this.rows === 'object') && (Array.isArray(this.cols) || typeof this.cols === 'object')) {\n this.columnDefs = this.cols;\n this.rowData = this.rows;\n } else {\n console.error('Unexpected value for cols and rows:', this.rows, this.cols);\n }\n }\n\n getRowData() {\n let rows: any[] = [];\n if (typeof this.rows === 'string') {\n try {\n rows = JSON.parse(this.rows);\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if (Array.isArray(this.rows) || typeof this.rows === 'object') {\n rows = this.rows;\n } else {\n console.error('Unexpected value for rows: ', this.rows);\n }\n\n return rows;\n }\n\n getColData() {\n let cols: any[] = [];\n\n if (typeof this.cols === 'string') {\n try {\n cols = JSON.parse(this.cols);\n } catch (err) {\n console.error('Failed to parse input:', err);\n }\n } else if (Array.isArray(this.cols) || typeof this.cols === 'object') {\n cols = this.cols;\n } else {\n console.error('Unexpected value for cols: ', this.cols);\n }\n return cols;\n }\n\n onFirstDataRendered(params: FirstDataRenderedEvent) {\n params.api.sizeColumnsToFit();\n }\n\n componentWillUpdate() {\n this.setColsAndRows();\n this.gridOptions.columnDefs = this.columnDefs;\n this.gridOptions.rowData = this.rowData;\n if (this.gridApi) {\n this.gridApi.setGridOption('rowData', this.rowData);\n this.gridApi.setGridOption('columnDefs', this.columnDefs);\n }\n }\n\n componentDidLoad() {\n if (this.container && !this.gridInitialized) {\n this.gridApi = createGrid(this.container, this.gridOptions);\n if (this.gridApi) {\n this.gridApi.sizeColumnsToFit({\n defaultMinWidth: 100,\n });\n this.gridApi.setGridOption('columnDefs', this.getColData());\n this.gridApi.setGridOption('rowData', this.getRowData());\n this.gridInitialized = true; \n }\n }\n }\n\n getClassNames() {\n return classNames(\n this.tableHeight === 'auto' && 'table-wrapper ag-root-wrapper-body',\n 'table-wrapper',\n );\n }\n\n getTableStyle() {\n if (this.tableHeight !== 'auto') {\n return {\n height: this.tableHeight,\n };\n }\n return {};\n }\n\n render() {\n return (\n <Host>\n <div id=\"table-wrapper\" class={this.getClassNames()}>\n <div id={`ifxTable-${this.uniqueKey}`} class=\"ifx-ag-grid\" style={this.getTableStyle()} ref={(el) => (this.container = el)}></div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -6,8 +6,11 @@ export class IfxTab {
6
6
  this.icon = '';
7
7
  this.iconPosition = 'left';
8
8
  }
9
+ componentWillUpdate() {
10
+ this.tabHeaderChange.emit(this.header);
11
+ }
9
12
  render() {
10
- return h("slot", { key: '50d70fc706a5bd0a69f11e6e6a63ff447236d0d6' });
13
+ return h("slot", { key: '32b2746133a9943640f4c6171d368a2be9b0fe1e' });
11
14
  }
12
15
  static get is() { return "ifx-tab"; }
13
16
  static get originalStyleUrls() {
@@ -36,6 +39,8 @@ export class IfxTab {
36
39
  "tags": [],
37
40
  "text": ""
38
41
  },
42
+ "getter": false,
43
+ "setter": false,
39
44
  "attribute": "header",
40
45
  "reflect": false
41
46
  },
@@ -53,6 +58,8 @@ export class IfxTab {
53
58
  "tags": [],
54
59
  "text": ""
55
60
  },
61
+ "getter": false,
62
+ "setter": false,
56
63
  "attribute": "disabled",
57
64
  "reflect": false
58
65
  },
@@ -70,6 +77,8 @@ export class IfxTab {
70
77
  "tags": [],
71
78
  "text": ""
72
79
  },
80
+ "getter": false,
81
+ "setter": false,
73
82
  "attribute": "icon",
74
83
  "reflect": false,
75
84
  "defaultValue": "''"
@@ -88,12 +97,32 @@ export class IfxTab {
88
97
  "tags": [],
89
98
  "text": ""
90
99
  },
100
+ "getter": false,
101
+ "setter": false,
91
102
  "attribute": "icon-position",
92
103
  "reflect": false,
93
104
  "defaultValue": "'left'"
94
105
  }
95
106
  };
96
107
  }
108
+ static get events() {
109
+ return [{
110
+ "method": "tabHeaderChange",
111
+ "name": "tabHeaderChange",
112
+ "bubbles": true,
113
+ "cancelable": true,
114
+ "composed": true,
115
+ "docs": {
116
+ "tags": [],
117
+ "text": ""
118
+ },
119
+ "complexType": {
120
+ "original": "any",
121
+ "resolved": "any",
122
+ "references": {}
123
+ }
124
+ }];
125
+ }
97
126
  static get elementRef() { return "el"; }
98
127
  }
99
128
  //# sourceMappingURL=tab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../../src/components/tabs/tab.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAO5D,MAAM,OAAO,MAAM;;;;oBAIM,EAAE;4BACgB,MAAM;;IAE/C,MAAM;QACJ,OAAO,8DAAQ,CAAC;IAClB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Element, Prop } from '@stencil/core';\n\n@Component({\n tag: 'ifx-tab',\n styleUrl: 'tab.scss',\n shadow: false\n})\nexport class IfxTab {\n @Element() el: HTMLElement;\n @Prop() header: string;\n @Prop() disabled: boolean;\n @Prop() icon: string = '';\n @Prop() iconPosition: 'left' | 'right' = 'left';\n\n render() {\n return <slot />;\n }\n}"]}
1
+ {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../../src/components/tabs/tab.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AAOjF,MAAM,OAAO,MAAM;;;;oBAIM,EAAE;4BACgB,MAAM;;IAG/C,mBAAmB;QACjB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACxC,CAAC;IAED,MAAM;QACJ,OAAO,8DAAQ,CAAC;IAClB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Element, Prop, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'ifx-tab',\n styleUrl: 'tab.scss',\n shadow: false\n})\nexport class IfxTab {\n @Element() el: HTMLElement;\n @Prop() header: string;\n @Prop() disabled: boolean;\n @Prop() icon: string = '';\n @Prop() iconPosition: 'left' | 'right' = 'left';\n @Event() tabHeaderChange: EventEmitter;\n\n componentWillUpdate() { \n this.tabHeaderChange.emit(this.header)\n }\n\n render() {\n return <slot />;\n }\n}"]}
@@ -56,9 +56,14 @@
56
56
  padding-left: 32px;
57
57
  }
58
58
 
59
+ .tabs:not(.vertical) .tab-item.full-width {
60
+ flex: 1;
61
+ }
62
+
59
63
  .tab-item {
60
64
  display: flex;
61
65
  align-items: center;
66
+ justify-content: center;
62
67
  gap: 8px;
63
68
  padding: 8px 16px;
64
69
  cursor: pointer;
@@ -4,6 +4,7 @@ export class IfxTabs {
4
4
  constructor() {
5
5
  this.orientation = "horizontal";
6
6
  this.activeTabIndex = 0;
7
+ this.fullWidth = false;
7
8
  this.internalOrientation = undefined;
8
9
  this.internalActiveTabIndex = 0;
9
10
  this.internalFocusedTabIndex = 0;
@@ -28,6 +29,11 @@ export class IfxTabs {
28
29
  this.internalFocusedTabIndex = index;
29
30
  }
30
31
  }
32
+ handleTabHeaderChange(e) {
33
+ const tabIndex = e.target.getAttribute('slot').replace('tab-', '');
34
+ this.tabObjects[tabIndex].header = e.detail;
35
+ this.tabObjects = [...this.tabObjects];
36
+ }
31
37
  activeTabIndexChanged(newValue, oldValue) {
32
38
  if (newValue !== oldValue) {
33
39
  this.setActiveAndFocusedTab(newValue);
@@ -146,7 +152,7 @@ export class IfxTabs {
146
152
  const isActive = index === this.internalActiveTabIndex && !this.tabObjects[index].disabled;
147
153
  const isDisabled = this.tabObjects[index].disabled;
148
154
  const iconPosition = this.tabObjects[index].iconPosition;
149
- return `tab-item ${isActive ? 'active' : ''} ${isDisabled ? 'disabled' : ''} ${'icon__' + iconPosition}`;
155
+ return `tab-item ${this.fullWidth ? 'full-width' : ""} ${isActive ? 'active' : ''} ${isDisabled ? 'disabled' : ''} ${'icon__' + iconPosition}`;
150
156
  }
151
157
  handleClick(tab, index) {
152
158
  this.ifxTabChange.emit({ previousTab: this.internalActiveTabIndex, currentTab: index });
@@ -188,9 +194,9 @@ export class IfxTabs {
188
194
  }
189
195
  render() {
190
196
  var _a;
191
- return (h("div", { key: '12e79bc540d692a2064ebd15764f4f8edec78321', "aria-label": "navigation tabs", class: `tabs ${this.internalOrientation}` }, h("ul", { key: 'e375c63995b84c3b119d049b9a34e6d6eabb12b7', role: "tablist", class: "tabs-list" }, (_a = this.tabObjects) === null || _a === void 0 ? void 0 :
197
+ return (h("div", { key: '4e34f9530b3e66d56c787cbdd9b7368ef556c3d7', "aria-label": "navigation tabs", class: `tabs ${this.internalOrientation}` }, h("ul", { key: '448ef45d058c166a9cb4230492b1eb4c874818e5', role: "tablist", class: "tabs-list" }, (_a = this.tabObjects) === null || _a === void 0 ? void 0 :
192
198
  _a.map((tab, index) => (h("li", { class: this.getTabItemClass(index), ref: (el) => (this.tabHeaderRefs[index] = el), tabindex: "0", onClick: () => this.handleClick(tab, index), "aria-selected": index === this.internalActiveTabIndex ? 'true' : 'false', "aria-disabled": tab.disabled ? 'true' : 'false', role: "tab" }, (tab === null || tab === void 0 ? void 0 : tab.icon) ? h("ifx-icon", { icon: tab.icon }) : '', tab === null || tab === void 0 ? void 0 :
193
- tab.header))), h("div", { key: 'a070fc27c00156e6e86ccac309e88ae7bb9475cc', class: "active-border" })), h("div", { key: '70e72842081cb81b6acb1866d0d865cab5bca6cd', class: "tab-content" }, Array.from(this.tabObjects).map((_, index) => (h("div", { style: { display: index === this.internalActiveTabIndex ? 'block' : 'none' } }, h("slot", { name: `tab-${index}` })))))));
199
+ tab.header))), h("div", { key: 'a9b807fe27f05abbc4dd51fafb31090fda24d389', class: "active-border" })), h("div", { key: '2098e15a752cff123506daae8484533376eb0cf7', class: "tab-content" }, Array.from(this.tabObjects).map((_, index) => (h("div", { style: { display: index === this.internalActiveTabIndex ? 'block' : 'none' } }, h("slot", { name: `tab-${index}` })))))));
194
200
  }
195
201
  static get is() { return "ifx-tabs"; }
196
202
  static get encapsulation() { return "shadow"; }
@@ -220,6 +226,8 @@ export class IfxTabs {
220
226
  "tags": [],
221
227
  "text": ""
222
228
  },
229
+ "getter": false,
230
+ "setter": false,
223
231
  "attribute": "orientation",
224
232
  "reflect": false,
225
233
  "defaultValue": "\"horizontal\""
@@ -238,9 +246,31 @@ export class IfxTabs {
238
246
  "tags": [],
239
247
  "text": ""
240
248
  },
249
+ "getter": false,
250
+ "setter": false,
241
251
  "attribute": "active-tab-index",
242
252
  "reflect": false,
243
253
  "defaultValue": "0"
254
+ },
255
+ "fullWidth": {
256
+ "type": "boolean",
257
+ "mutable": false,
258
+ "complexType": {
259
+ "original": "boolean",
260
+ "resolved": "boolean",
261
+ "references": {}
262
+ },
263
+ "required": false,
264
+ "optional": false,
265
+ "docs": {
266
+ "tags": [],
267
+ "text": ""
268
+ },
269
+ "getter": false,
270
+ "setter": false,
271
+ "attribute": "full-width",
272
+ "reflect": false,
273
+ "defaultValue": "false"
244
274
  }
245
275
  };
246
276
  }
@@ -287,6 +317,12 @@ export class IfxTabs {
287
317
  "target": "window",
288
318
  "capture": false,
289
319
  "passive": true
320
+ }, {
321
+ "name": "tabHeaderChange",
322
+ "method": "handleTabHeaderChange",
323
+ "target": undefined,
324
+ "capture": false,
325
+ "passive": false
290
326
  }, {
291
327
  "name": "slotchange",
292
328
  "method": "onSlotChange",
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["//ifxTabs.tsx\nimport { Component, h, Prop, State, Element, Listen, Event, EventEmitter, Watch } from '@stencil/core';\n \n\n\n@Component({\n tag: 'ifx-tabs',\n styleUrl: 'tabs.scss',\n shadow: true\n})\nexport class IfxTabs {\n @Element() el: HTMLElement;\n\n @Prop() orientation: string = \"horizontal\";\n @Prop({ mutable: true }) activeTabIndex: number = 0;\n\n @State() internalOrientation: string;\n @State() internalActiveTabIndex: number = 0;\n @State() internalFocusedTabIndex: number = 0;\n @State() tabRefs: HTMLElement[] = [];\n @State() tabHeaderRefs: HTMLElement[] = [];\n @State() disabledTabs: string[] = [];\n @State() tabObjects: any[] = [];\n\n @Event() ifxTabChange: EventEmitter;\n\n @Listen('resize', {target: 'window'})\n updateBorderOnWindowResize() {\n this.updateBorderAndFocus();\n }\n\n setActiveAndFocusedTab(index: number) {\n if (index >= this.tabObjects.length) {\n index = this.tabObjects.length - 1;\n }\n if (index < 0) {\n index = 0;\n }\n if (!this.tabObjects[index]?.disabled) {\n this.internalActiveTabIndex = index;\n this.internalFocusedTabIndex = index;\n }\n }\n \n\n @Watch('activeTabIndex')\n activeTabIndexChanged(newValue: number, oldValue: number) {\n if (newValue !== oldValue) {\n this.setActiveAndFocusedTab(newValue);\n }\n }\n\n\n\n componentWillLoad() {\n this.internalOrientation = this.orientation.toLowerCase() === 'vertical' ? 'vertical' : 'horizontal';\n if (this.internalActiveTabIndex !== this.activeTabIndex) {\n this.ifxTabChange.emit({ previousTab: this.internalActiveTabIndex, currentTab: this.activeTabIndex });\n };\n this.onSlotChange();\n this.setActiveAndFocusedTab(this.activeTabIndex);\n this.updateTabStyles();\n }\n\n updateTabStyles() {\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.classList.toggle('active', index === this.internalActiveTabIndex);\n tab.setAttribute('aria-selected', index === this.internalActiveTabIndex ? 'true' : 'false')\n });\n }\n\n\n // needed for smooth border transition\n reRenderBorder() {\n const borderElement = this.el.shadowRoot.querySelector('.active-border') as HTMLElement;\n if (borderElement && this.tabHeaderRefs[this.internalActiveTabIndex]) {\n if (this.orientation === 'horizontal') {\n\n borderElement.style.left = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetLeft}px`;\n borderElement.style.width = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetWidth}px`;\n borderElement.style.top = '';\n borderElement.style.height = '';\n } else {\n borderElement.style.top = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetTop}px`;\n borderElement.style.height = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetHeight}px`;\n borderElement.style.left = '';\n borderElement.style.width = '';\n }\n }\n }\n\n\n // when a slot is removed / added\n @Listen('slotchange')\n onSlotChange() {\n const tabs = this.el.querySelectorAll('ifx-tab');\n this.tabObjects = Array.from(tabs).map((tab) => {\n return {\n header: tab?.header,\n disabled: tab?.disabled === true,\n icon: tab?.icon,\n iconPosition: tab?.iconPosition\n }\n });\n\n this.tabRefs = Array.from(tabs);\n this.tabRefs.forEach((tab, index) => {\n tab.setAttribute('slot', `tab-${index}`);\n });\n }\n\n setDefaultOrientation() {\n const validOrientations = ['horizontal', 'vertical'];\n const lowercaseOrientation = this.orientation.toLowerCase();\n\n if (!validOrientations.includes(lowercaseOrientation)) {\n this.internalOrientation = 'horizontal';\n } else this.internalOrientation = this.orientation;\n }\n\n componentDidLoad() {\n this.updateBorderAndFocus();\n // Add keyboard event listeners for each tab header\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.addEventListener('focus', this.onTabFocus(index));\n });\n\n }\n\n onTabFocus(index) {\n return () => {\n this.internalFocusedTabIndex = index;\n };\n }\n\n disconnectedCallback() {\n // Remove keyboard event listeners when component is unmounted\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.removeEventListener('focus', this.onTabFocus(index));\n });\n }\n componentDidUpdate() {\n this.updateBorderAndFocus();\n }\n\n private updateBorderAndFocus() {\n this.reRenderBorder()\n this.updateTabFocusability();\n }\n\n private updateTabFocusability() {\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.tabIndex = index === this.internalActiveTabIndex ? 0 : -1;\n })\n }\n\n\n private focusNextTab() {\n let nextIndex = this.internalFocusedTabIndex + 1;\n while (nextIndex < this.tabHeaderRefs.length && this.tabObjects[nextIndex].disabled) {\n nextIndex++;\n }\n if (nextIndex >= 0 && nextIndex < this.tabHeaderRefs.length) {\n this.internalFocusedTabIndex = nextIndex;\n this.tabHeaderRefs[nextIndex].focus();\n }\n }\n\n private focusPreviousTab() {\n let prevIndex = this.internalFocusedTabIndex - 1;\n while ((prevIndex >= 0) && (this.tabObjects[prevIndex].disabled)) {\n prevIndex--;\n }\n if ((prevIndex >= 0) && (prevIndex < this.tabHeaderRefs.length)) {\n this.internalFocusedTabIndex = prevIndex;\n this.tabHeaderRefs[prevIndex].focus();\n }\n }\n\n\n private getTabItemClass(index: number) {\n const isActive = index === this.internalActiveTabIndex && !this.tabObjects[index].disabled;\n const isDisabled = this.tabObjects[index].disabled;\n const iconPosition = this.tabObjects[index].iconPosition\n return `tab-item ${isActive ? 'active' : ''} ${isDisabled ? 'disabled' : ''} ${'icon__'+iconPosition}`;\n }\n\n private handleClick(tab, index) {\n this.ifxTabChange.emit({ previousTab: this.internalActiveTabIndex, currentTab: index })\n if (!tab.disabled) this.internalActiveTabIndex = index;\n\n }\n\n\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Tab') {\n\n if (ev.shiftKey) {\n // Shift + Tab\n if (this.internalFocusedTabIndex === 0) {\n // Allow default behavior to move focus out of component\n return;\n } else {\n ev.preventDefault();\n this.focusPreviousTab();\n }\n } else {\n // Tab\n if (this.internalFocusedTabIndex === this.tabHeaderRefs.length - 1) {\n // Allow default behavior to move focus out of component\n return;\n } else {\n ev.preventDefault();\n this.focusNextTab();\n }\n }\n } else if (ev.key === 'Enter') {\n if (this.internalFocusedTabIndex !== -1 && !this.tabObjects[this.internalFocusedTabIndex].disabled) {\n const previouslyActiveTabIndex = this.internalActiveTabIndex;\n this.internalActiveTabIndex = this.internalFocusedTabIndex;\n this.ifxTabChange.emit({ previousTab: previouslyActiveTabIndex, currentTab: this.internalFocusedTabIndex })\n }\n }\n }\n\n\n render() {\n return (\n <div aria-label=\"navigation tabs\" class={`tabs ${this.internalOrientation}`}>\n <ul role=\"tablist\" class=\"tabs-list\">\n {this.tabObjects?.map((tab, index) => (\n <li\n class={this.getTabItemClass(index)}\n ref={(el) => (this.tabHeaderRefs[index] = el)}\n tabindex=\"0\"\n onClick={() => this.handleClick(tab, index)}\n aria-selected={index === this.internalActiveTabIndex ? 'true' : 'false'}\n aria-disabled={tab.disabled ? 'true' : 'false'}\n role=\"tab\"\n > \n {tab?.icon ? <ifx-icon icon = {tab.icon}></ifx-icon> : ''}\n {tab?.header}\n </li>\n ))}\n <div class=\"active-border\"></div>\n </ul>\n <div class=\"tab-content\">\n {Array.from(this.tabObjects).map((_, index) => (\n <div style={{ display: index === this.internalActiveTabIndex ? 'block' : 'none' }}>\n <slot name={`tab-${index}`} />\n </div>\n ))}\n </div>\n </div>\n );\n }\n\n}"]}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["//ifxTabs.tsx\nimport { Component, h, Prop, State, Element, Listen, Event, EventEmitter, Watch } from '@stencil/core';\n \n\n\n@Component({\n tag: 'ifx-tabs',\n styleUrl: 'tabs.scss',\n shadow: true\n})\nexport class IfxTabs {\n @Element() el: HTMLElement;\n\n @Prop() orientation: string = \"horizontal\";\n @Prop({ mutable: true }) activeTabIndex: number = 0;\n @Prop() fullWidth: boolean = false;\n\n @State() internalOrientation: string;\n @State() internalActiveTabIndex: number = 0;\n @State() internalFocusedTabIndex: number = 0;\n @State() tabRefs: HTMLElement[] = [];\n @State() tabHeaderRefs: HTMLElement[] = [];\n @State() disabledTabs: string[] = [];\n @State() tabObjects: any[] = [];\n\n @Event() ifxTabChange: EventEmitter;\n\n @Listen('resize', {target: 'window'})\n updateBorderOnWindowResize() {\n this.updateBorderAndFocus();\n }\n\n setActiveAndFocusedTab(index: number) {\n if (index >= this.tabObjects.length) {\n index = this.tabObjects.length - 1;\n }\n if (index < 0) {\n index = 0;\n }\n if (!this.tabObjects[index]?.disabled) {\n this.internalActiveTabIndex = index;\n this.internalFocusedTabIndex = index;\n }\n }\n\n @Listen('tabHeaderChange')\n handleTabHeaderChange(e) { \n const tabIndex = e.target.getAttribute('slot').replace('tab-', '');\n this.tabObjects[tabIndex].header = e.detail;\n this.tabObjects = [...this.tabObjects]; \n }\n \n\n @Watch('activeTabIndex')\n activeTabIndexChanged(newValue: number, oldValue: number) {\n if (newValue !== oldValue) {\n this.setActiveAndFocusedTab(newValue);\n }\n }\n\n\n\n componentWillLoad() {\n this.internalOrientation = this.orientation.toLowerCase() === 'vertical' ? 'vertical' : 'horizontal';\n if (this.internalActiveTabIndex !== this.activeTabIndex) {\n this.ifxTabChange.emit({ previousTab: this.internalActiveTabIndex, currentTab: this.activeTabIndex });\n };\n this.onSlotChange();\n this.setActiveAndFocusedTab(this.activeTabIndex);\n this.updateTabStyles();\n }\n\n updateTabStyles() {\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.classList.toggle('active', index === this.internalActiveTabIndex);\n tab.setAttribute('aria-selected', index === this.internalActiveTabIndex ? 'true' : 'false')\n });\n }\n\n\n // needed for smooth border transition\n reRenderBorder() {\n const borderElement = this.el.shadowRoot.querySelector('.active-border') as HTMLElement;\n if (borderElement && this.tabHeaderRefs[this.internalActiveTabIndex]) {\n if (this.orientation === 'horizontal') {\n\n borderElement.style.left = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetLeft}px`;\n borderElement.style.width = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetWidth}px`;\n borderElement.style.top = '';\n borderElement.style.height = '';\n } else {\n borderElement.style.top = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetTop}px`;\n borderElement.style.height = `${this.tabHeaderRefs[this.internalActiveTabIndex].offsetHeight}px`;\n borderElement.style.left = '';\n borderElement.style.width = '';\n }\n }\n }\n\n\n // when a slot is removed / added\n @Listen('slotchange')\n onSlotChange() {\n const tabs = this.el.querySelectorAll('ifx-tab');\n this.tabObjects = Array.from(tabs).map((tab) => {\n return {\n header: tab?.header,\n disabled: tab?.disabled === true,\n icon: tab?.icon,\n iconPosition: tab?.iconPosition\n }\n });\n\n this.tabRefs = Array.from(tabs);\n this.tabRefs.forEach((tab, index) => {\n tab.setAttribute('slot', `tab-${index}`);\n });\n }\n\n setDefaultOrientation() {\n const validOrientations = ['horizontal', 'vertical'];\n const lowercaseOrientation = this.orientation.toLowerCase();\n\n if (!validOrientations.includes(lowercaseOrientation)) {\n this.internalOrientation = 'horizontal';\n } else this.internalOrientation = this.orientation;\n }\n\n componentDidLoad() {\n this.updateBorderAndFocus();\n // Add keyboard event listeners for each tab header\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.addEventListener('focus', this.onTabFocus(index));\n });\n\n }\n\n onTabFocus(index) {\n return () => {\n this.internalFocusedTabIndex = index;\n };\n }\n\n disconnectedCallback() {\n // Remove keyboard event listeners when component is unmounted\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.removeEventListener('focus', this.onTabFocus(index));\n });\n }\n componentDidUpdate() {\n this.updateBorderAndFocus();\n }\n\n private updateBorderAndFocus() {\n this.reRenderBorder()\n this.updateTabFocusability();\n }\n\n private updateTabFocusability() {\n this.tabHeaderRefs.forEach((tab, index) => {\n tab.tabIndex = index === this.internalActiveTabIndex ? 0 : -1;\n })\n }\n\n\n private focusNextTab() {\n let nextIndex = this.internalFocusedTabIndex + 1;\n while (nextIndex < this.tabHeaderRefs.length && this.tabObjects[nextIndex].disabled) {\n nextIndex++;\n }\n if (nextIndex >= 0 && nextIndex < this.tabHeaderRefs.length) {\n this.internalFocusedTabIndex = nextIndex;\n this.tabHeaderRefs[nextIndex].focus();\n }\n }\n\n private focusPreviousTab() {\n let prevIndex = this.internalFocusedTabIndex - 1;\n while ((prevIndex >= 0) && (this.tabObjects[prevIndex].disabled)) {\n prevIndex--;\n }\n if ((prevIndex >= 0) && (prevIndex < this.tabHeaderRefs.length)) {\n this.internalFocusedTabIndex = prevIndex;\n this.tabHeaderRefs[prevIndex].focus();\n }\n }\n\n\n private getTabItemClass(index: number) {\n const isActive = index === this.internalActiveTabIndex && !this.tabObjects[index].disabled;\n const isDisabled = this.tabObjects[index].disabled;\n const iconPosition = this.tabObjects[index].iconPosition\n return `tab-item ${this.fullWidth ? 'full-width' : \"\"} ${isActive ? 'active' : ''} ${isDisabled ? 'disabled' : ''} ${'icon__'+iconPosition}`;\n }\n\n private handleClick(tab, index) {\n this.ifxTabChange.emit({ previousTab: this.internalActiveTabIndex, currentTab: index })\n if (!tab.disabled) this.internalActiveTabIndex = index;\n\n }\n\n\n\n @Listen('keydown')\n handleKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Tab') {\n\n if (ev.shiftKey) {\n // Shift + Tab\n if (this.internalFocusedTabIndex === 0) {\n // Allow default behavior to move focus out of component\n return;\n } else {\n ev.preventDefault();\n this.focusPreviousTab();\n }\n } else {\n // Tab\n if (this.internalFocusedTabIndex === this.tabHeaderRefs.length - 1) {\n // Allow default behavior to move focus out of component\n return;\n } else {\n ev.preventDefault();\n this.focusNextTab();\n }\n }\n } else if (ev.key === 'Enter') {\n if (this.internalFocusedTabIndex !== -1 && !this.tabObjects[this.internalFocusedTabIndex].disabled) {\n const previouslyActiveTabIndex = this.internalActiveTabIndex;\n this.internalActiveTabIndex = this.internalFocusedTabIndex;\n this.ifxTabChange.emit({ previousTab: previouslyActiveTabIndex, currentTab: this.internalFocusedTabIndex })\n }\n }\n }\n\n\n render() {\n return (\n <div aria-label=\"navigation tabs\" class={`tabs ${this.internalOrientation}`}>\n <ul role=\"tablist\" class=\"tabs-list\">\n {this.tabObjects?.map((tab, index) => (\n <li\n class={this.getTabItemClass(index)}\n ref={(el) => (this.tabHeaderRefs[index] = el)}\n tabindex=\"0\"\n onClick={() => this.handleClick(tab, index)}\n aria-selected={index === this.internalActiveTabIndex ? 'true' : 'false'}\n aria-disabled={tab.disabled ? 'true' : 'false'}\n role=\"tab\"\n > \n {tab?.icon ? <ifx-icon icon = {tab.icon}></ifx-icon> : ''}\n {tab?.header}\n </li>\n ))}\n <div class=\"active-border\"></div>\n </ul>\n <div class=\"tab-content\">\n {Array.from(this.tabObjects).map((_, index) => (\n <div style={{ display: index === this.internalActiveTabIndex ? 'block' : 'none' }}>\n <slot name={`tab-${index}`} />\n </div>\n ))}\n </div>\n </div>\n );\n }\n\n}"]}
@@ -34,6 +34,8 @@ export class Tag {
34
34
  "tags": [],
35
35
  "text": ""
36
36
  },
37
+ "getter": false,
38
+ "setter": false,
37
39
  "attribute": "icon",
38
40
  "reflect": false
39
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../../src/components/tag/tag.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAQnD,MAAM,OAAO,GAAG;;;;IAKd,MAAM;QACJ,OAAO,CACL,0EAAgB,OAAO,EAAC,KAAK,EAAC,WAAW;YACtC,IAAI,CAAC,IAAI,IAAI,CACZ,iEAAU,IAAI,EAAE,IAAI,CAAC,IAAI,GAAa,CAAC;YACzC,0DAAG,IAAI,EAAC,wBAAwB,EAAC,KAAK,EAAC,eAAe;gBACpD,0DAAG,KAAK,EAAC,OAAO;oBACd,8DAAQ,CACN,CACF,CACA,CAEP,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-tag',\n styleUrl: 'tag.scss',\n shadow: true\n})\nexport class Tag {\n @Prop() icon: string;\n\n\n\n render() {\n return (\n <div aria-label=\"a tag\" class=\"container\">\n {this.icon && (\n <ifx-icon icon={this.icon}></ifx-icon>)}\n <a href=\"javascript:void(null);\" class=\"label-wrapper\" >\n <p class=\"label\">\n <slot />\n </p>\n </a>\n </div>\n\n );\n }\n}"]}
1
+ {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../../src/components/tag/tag.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAQnD,MAAM,OAAO,GAAG;;;;IAKd,MAAM;QACJ,OAAO,CACL,0EAAgB,OAAO,EAAC,KAAK,EAAC,WAAW;YACtC,IAAI,CAAC,IAAI,IAAI,CACZ,iEAAU,IAAI,EAAE,IAAI,CAAC,IAAI,GAAa,CAAC;YACzC,0DAAG,IAAI,EAAC,wBAAwB,EAAC,KAAK,EAAC,eAAe;gBACpD,0DAAG,KAAK,EAAC,OAAO;oBACd,8DAAQ,CACN,CACF,CACA,CAEP,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, h } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-tag',\n styleUrl: 'tag.scss',\n shadow: true\n})\nexport class Tag {\n @Prop() icon: string;\n\n\n\n render() {\n return (\n <div aria-label=\"a tag\" class=\"container\">\n {this.icon && (\n <ifx-icon icon={this.icon}></ifx-icon>)}\n <a href=\"javascript:void(null);\" class=\"label-wrapper\" >\n <p class=\"label\">\n <slot />\n </p>\n </a>\n </div>\n\n );\n }\n}"]}
@@ -75,6 +75,8 @@ export class TextField {
75
75
  "tags": [],
76
76
  "text": ""
77
77
  },
78
+ "getter": false,
79
+ "setter": false,
78
80
  "attribute": "placeholder",
79
81
  "reflect": false,
80
82
  "defaultValue": "\"Placeholder\""
@@ -93,6 +95,8 @@ export class TextField {
93
95
  "tags": [],
94
96
  "text": ""
95
97
  },
98
+ "getter": false,
99
+ "setter": false,
96
100
  "attribute": "value",
97
101
  "reflect": false,
98
102
  "defaultValue": "''"
@@ -111,6 +115,8 @@ export class TextField {
111
115
  "tags": [],
112
116
  "text": ""
113
117
  },
118
+ "getter": false,
119
+ "setter": false,
114
120
  "attribute": "error",
115
121
  "reflect": false,
116
122
  "defaultValue": "false"
@@ -129,6 +135,8 @@ export class TextField {
129
135
  "tags": [],
130
136
  "text": ""
131
137
  },
138
+ "getter": false,
139
+ "setter": false,
132
140
  "attribute": "label",
133
141
  "reflect": false,
134
142
  "defaultValue": "\"\""
@@ -147,6 +155,8 @@ export class TextField {
147
155
  "tags": [],
148
156
  "text": ""
149
157
  },
158
+ "getter": false,
159
+ "setter": false,
150
160
  "attribute": "icon",
151
161
  "reflect": false,
152
162
  "defaultValue": "\"\""
@@ -165,6 +175,8 @@ export class TextField {
165
175
  "tags": [],
166
176
  "text": ""
167
177
  },
178
+ "getter": false,
179
+ "setter": false,
168
180
  "attribute": "caption",
169
181
  "reflect": false,
170
182
  "defaultValue": "\"\""
@@ -183,6 +195,8 @@ export class TextField {
183
195
  "tags": [],
184
196
  "text": ""
185
197
  },
198
+ "getter": false,
199
+ "setter": false,
186
200
  "attribute": "size",
187
201
  "reflect": false,
188
202
  "defaultValue": "'m'"
@@ -201,6 +215,8 @@ export class TextField {
201
215
  "tags": [],
202
216
  "text": ""
203
217
  },
218
+ "getter": false,
219
+ "setter": false,
204
220
  "attribute": "required",
205
221
  "reflect": false,
206
222
  "defaultValue": "false"
@@ -219,6 +235,8 @@ export class TextField {
219
235
  "tags": [],
220
236
  "text": ""
221
237
  },
238
+ "getter": false,
239
+ "setter": false,
222
240
  "attribute": "optional",
223
241
  "reflect": false,
224
242
  "defaultValue": "false"
@@ -237,6 +255,8 @@ export class TextField {
237
255
  "tags": [],
238
256
  "text": ""
239
257
  },
258
+ "getter": false,
259
+ "setter": false,
240
260
  "attribute": "success",
241
261
  "reflect": false,
242
262
  "defaultValue": "false"
@@ -255,6 +275,8 @@ export class TextField {
255
275
  "tags": [],
256
276
  "text": ""
257
277
  },
278
+ "getter": false,
279
+ "setter": false,
258
280
  "attribute": "disabled",
259
281
  "reflect": false,
260
282
  "defaultValue": "false"
@@ -273,6 +295,8 @@ export class TextField {
273
295
  "tags": [],
274
296
  "text": ""
275
297
  },
298
+ "getter": false,
299
+ "setter": false,
276
300
  "attribute": "maxlength",
277
301
  "reflect": false
278
302
  },
@@ -290,6 +314,8 @@ export class TextField {
290
314
  "tags": [],
291
315
  "text": ""
292
316
  },
317
+ "getter": false,
318
+ "setter": false,
293
319
  "attribute": "show-delete-icon",
294
320
  "reflect": false,
295
321
  "defaultValue": "false"
@@ -1 +1 @@
1
- {"version":3,"file":"text-field.js","sourceRoot":"","sources":["../../../src/components/text-field/text-field.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAgB,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAUjH,MAAM,OAAO,SAAS;;2BAGU,aAAa;qBACF,EAAE;qBAClB,KAAK;qBACN,EAAE;oBACH,EAAE;uBACC,EAAE;oBACL,GAAG;wBACE,KAAK;wBACL,KAAK;uBACN,KAAK;wBACJ,KAAK;;8BAEC,KAAK;;IASvC,YAAY,CAAC,QAAgB;QAC3B,IAAI,QAAQ,KAAK,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;YACzC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,QAAQ,CAAC;QACrC,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,WAAW;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,+CAA+C;QACnE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA,CAAC,oBAAoB;QACvD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,MAAM;QACJ,OAAO,CACL,0EAAgB,6BAA6B,gBAAa,IAAI,CAAC,KAAK,mBAAiB,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,wBAAwB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE;YAClK,4DAAK,KAAK,EAAC,wBAAwB;gBACjC,8DAAO,OAAO,EAAC,YAAY;oBACzB,8DAAa;oBACZ,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAChC,YAAM,KAAK,EAAC,mBAAmB,mBAAoB,CACpD,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAClB,YAAM,KAAK,EAAC,UAAU,iBAAkB,CACzC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAClB,YAAM,KAAK,EAAE,YAAY,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,QAAU,CAC/D,CAAC,CAAC,CAAC,IAAI,CACF,CACJ;YAEN,4DAAK,KAAK,EAAC,2BAA2B;gBACpC,4DAAK,KAAK,EAAC,iBAAiB;oBACzB,IAAI,CAAC,IAAI,IAAI,CACZ,iEAAU,KAAK,EAAC,YAAY,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,CACjD;oBACD,8DACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,EACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,IAAI,EAAC,MAAM,EACX,EAAE,EAAC,YAAY,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EACjC,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,KAAK,EACH,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;kBACxB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC3B,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;gBAClC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,GAAI;oBAEnC,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CACvC,iEAAU,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,GAAa,CACtG,CACC;gBACL,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK;oBAC1B,4DAAK,KAAK,EAAE,qCAAqC,IAAI,CAAC,QAAQ,kBAAkB,IAC7E,IAAI,CAAC,OAAO,CACT;gBACP,IAAI,CAAC,KAAK;oBACT,4DAAK,KAAK,EAAC,yCAAyC,IACjD,IAAI,CAAC,OAAO,CACT,CACJ,CACF,CACP,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, h, Event, Element, Prop, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-text-field',\n styleUrl: 'text-field.scss',\n shadow: true,\n formAssociated: true\n})\n\nexport class TextField {\n private inputElement: HTMLInputElement;\n @Element() el;\n @Prop() placeholder: string = \"Placeholder\"\n @Prop({ mutable: true }) value: string = '';\n @Prop() error: boolean = false;\n @Prop() label: string = \"\";\n @Prop() icon: string = \"\";\n @Prop() caption: string = \"\";\n @Prop() size: string = 'm';\n @Prop() required: boolean = false;\n @Prop() optional: boolean = false;\n @Prop() success: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() maxlength?: number;\n @Prop() showDeleteIcon: boolean = false;\n @Event() ifxInput: EventEmitter<String>;\n // @Prop({ reflect: true })\n // resetOnSubmit: boolean = false;\n\n @AttachInternals() internals: ElementInternals;\n\n\n @Watch('value')\n valueWatcher(newValue: string) {\n if (newValue !== this.inputElement.value) {\n this.inputElement.value = newValue;\n }\n }\n\n @Method()\n async reset() {\n this.value = '';\n this.inputElement.value = '';\n }\n\n handleDeleteContent() {\n this.reset();\n this.ifxInput.emit(this.value);\n }\n\n handleInput() {\n const query = this.inputElement.value;\n this.value = query; // update the value property when input changes\n this.internals.setFormValue(query) // update form value\n this.ifxInput.emit(this.value);\n }\n\n formResetCallback() {\n this.internals.setValidity({});\n this.internals.setFormValue(\"\");\n }\n\n render() {\n return (\n <div aria-label=\"a text field for user input\" aria-value={this.value} aria-disabled={this.disabled} class={`textInput__container ${this.disabled ? 'disabled' : \"\"}`}>\n <div class=\"textInput__top-wrapper\">\n <label htmlFor=\"text-field\">\n <slot></slot>\n {this.optional && this.required ? (\n <span class=\"optional-required\">(optional) *</span>\n ) : this.optional ? (\n <span class=\"optional\">(optional)</span>\n ) : this.required ? (\n <span class={`required ${this.error ? 'error' : \"\"}`}>*</span>\n ) : null}\n </label>\n </div>\n\n <div class=\"textInput__bottom-wrapper\">\n <div class=\"input-container\">\n {this.icon && (\n <ifx-icon class='input-icon' icon={this.icon} />\n )}\n <input\n ref={(el) => (this.inputElement = el)}\n disabled={this.disabled}\n type=\"text\"\n id='text-field'\n value={this.value}\n onInput={() => this.handleInput()}\n placeholder={this.placeholder}\n maxlength={this.maxlength}\n class={\n `${this.icon ? 'icon' : \"\"}\n ${this.error ? 'error' : \"\"} \n ${this.size === \"s\" ? \"input-s\" : \"\"}\n ${this.success ? \"success\" : \"\"}`} />\n\n { (this.showDeleteIcon && this.value) && (\n <ifx-icon class=\"delete-icon\" icon=\"cremove16\" onClick={() => this.handleDeleteContent()}></ifx-icon> \n )}\n </div>\n {this.caption && !this.error &&\n <div class={`textInput__bottom-wrapper-caption ${this.disabled} ? disabled : \"\"`}>\n {this.caption}\n </div>}\n {this.error &&\n <div class=\"textInput__bottom-wrapper-caption error\">\n {this.caption}\n </div>}\n </div>\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"text-field.js","sourceRoot":"","sources":["../../../src/components/text-field/text-field.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Event, Element, Prop, EventEmitter, Watch, Method, AttachInternals } from '@stencil/core';\n \n\n@Component({\n tag: 'ifx-text-field',\n styleUrl: 'text-field.scss',\n shadow: true,\n formAssociated: true\n})\n\nexport class TextField {\n private inputElement: HTMLInputElement;\n @Element() el;\n @Prop() placeholder: string = \"Placeholder\"\n @Prop({ mutable: true }) value: string = '';\n @Prop() error: boolean = false;\n @Prop() label: string = \"\";\n @Prop() icon: string = \"\";\n @Prop() caption: string = \"\";\n @Prop() size: string = 'm';\n @Prop() required: boolean = false;\n @Prop() optional: boolean = false;\n @Prop() success: boolean = false;\n @Prop() disabled: boolean = false;\n @Prop() maxlength?: number;\n @Prop() showDeleteIcon: boolean = false;\n @Event() ifxInput: EventEmitter<String>;\n // @Prop({ reflect: true })\n // resetOnSubmit: boolean = false;\n\n @AttachInternals() internals: ElementInternals;\n\n\n @Watch('value')\n valueWatcher(newValue: string) {\n if (newValue !== this.inputElement.value) {\n this.inputElement.value = newValue;\n }\n }\n\n @Method()\n async reset() {\n this.value = '';\n this.inputElement.value = '';\n }\n\n handleDeleteContent() {\n this.reset();\n this.ifxInput.emit(this.value);\n }\n\n handleInput() {\n const query = this.inputElement.value;\n this.value = query; // update the value property when input changes\n this.internals.setFormValue(query) // update form value\n this.ifxInput.emit(this.value);\n }\n\n formResetCallback() {\n this.internals.setValidity({});\n this.internals.setFormValue(\"\");\n }\n\n render() {\n return (\n <div aria-label=\"a text field for user input\" aria-value={this.value} aria-disabled={this.disabled} class={`textInput__container ${this.disabled ? 'disabled' : \"\"}`}>\n <div class=\"textInput__top-wrapper\">\n <label htmlFor=\"text-field\">\n <slot></slot>\n {this.optional && this.required ? (\n <span class=\"optional-required\">(optional) *</span>\n ) : this.optional ? (\n <span class=\"optional\">(optional)</span>\n ) : this.required ? (\n <span class={`required ${this.error ? 'error' : \"\"}`}>*</span>\n ) : null}\n </label>\n </div>\n\n <div class=\"textInput__bottom-wrapper\">\n <div class=\"input-container\">\n {this.icon && (\n <ifx-icon class='input-icon' icon={this.icon} />\n )}\n <input\n ref={(el) => (this.inputElement = el)}\n disabled={this.disabled}\n type=\"text\"\n id='text-field'\n value={this.value}\n onInput={() => this.handleInput()}\n placeholder={this.placeholder}\n maxlength={this.maxlength}\n class={\n `${this.icon ? 'icon' : \"\"}\n ${this.error ? 'error' : \"\"} \n ${this.size === \"s\" ? \"input-s\" : \"\"}\n ${this.success ? \"success\" : \"\"}`} />\n\n { (this.showDeleteIcon && this.value) && (\n <ifx-icon class=\"delete-icon\" icon=\"cremove16\" onClick={() => this.handleDeleteContent()}></ifx-icon> \n )}\n </div>\n {this.caption && !this.error &&\n <div class={`textInput__bottom-wrapper-caption ${this.disabled} ? disabled : \"\"`}>\n {this.caption}\n </div>}\n {this.error &&\n <div class=\"textInput__bottom-wrapper-caption error\">\n {this.caption}\n </div>}\n </div>\n </div>\n );\n }\n}\n"]}
@@ -71,6 +71,8 @@ export class TextArea {
71
71
  "tags": [],
72
72
  "text": ""
73
73
  },
74
+ "getter": false,
75
+ "setter": false,
74
76
  "attribute": "caption",
75
77
  "reflect": false
76
78
  },
@@ -88,6 +90,8 @@ export class TextArea {
88
90
  "tags": [],
89
91
  "text": ""
90
92
  },
93
+ "getter": false,
94
+ "setter": false,
91
95
  "attribute": "cols",
92
96
  "reflect": false
93
97
  },
@@ -105,6 +109,8 @@ export class TextArea {
105
109
  "tags": [],
106
110
  "text": ""
107
111
  },
112
+ "getter": false,
113
+ "setter": false,
108
114
  "attribute": "disabled",
109
115
  "reflect": false,
110
116
  "defaultValue": "false"
@@ -123,6 +129,8 @@ export class TextArea {
123
129
  "tags": [],
124
130
  "text": ""
125
131
  },
132
+ "getter": false,
133
+ "setter": false,
126
134
  "attribute": "error",
127
135
  "reflect": false,
128
136
  "defaultValue": "false"
@@ -141,6 +149,8 @@ export class TextArea {
141
149
  "tags": [],
142
150
  "text": ""
143
151
  },
152
+ "getter": false,
153
+ "setter": false,
144
154
  "attribute": "label",
145
155
  "reflect": false
146
156
  },
@@ -158,6 +168,8 @@ export class TextArea {
158
168
  "tags": [],
159
169
  "text": ""
160
170
  },
171
+ "getter": false,
172
+ "setter": false,
161
173
  "attribute": "maxlength",
162
174
  "reflect": false
163
175
  },
@@ -175,6 +187,8 @@ export class TextArea {
175
187
  "tags": [],
176
188
  "text": ""
177
189
  },
190
+ "getter": false,
191
+ "setter": false,
178
192
  "attribute": "name",
179
193
  "reflect": false
180
194
  },
@@ -192,6 +206,8 @@ export class TextArea {
192
206
  "tags": [],
193
207
  "text": ""
194
208
  },
209
+ "getter": false,
210
+ "setter": false,
195
211
  "attribute": "placeholder",
196
212
  "reflect": false
197
213
  },
@@ -209,6 +225,8 @@ export class TextArea {
209
225
  "tags": [],
210
226
  "text": ""
211
227
  },
228
+ "getter": false,
229
+ "setter": false,
212
230
  "attribute": "read-only",
213
231
  "reflect": false,
214
232
  "defaultValue": "false"
@@ -227,6 +245,8 @@ export class TextArea {
227
245
  "tags": [],
228
246
  "text": ""
229
247
  },
248
+ "getter": false,
249
+ "setter": false,
230
250
  "attribute": "resize",
231
251
  "reflect": false,
232
252
  "defaultValue": "'both'"
@@ -245,6 +265,8 @@ export class TextArea {
245
265
  "tags": [],
246
266
  "text": ""
247
267
  },
268
+ "getter": false,
269
+ "setter": false,
248
270
  "attribute": "rows",
249
271
  "reflect": false
250
272
  },
@@ -262,6 +284,8 @@ export class TextArea {
262
284
  "tags": [],
263
285
  "text": ""
264
286
  },
287
+ "getter": false,
288
+ "setter": false,
265
289
  "attribute": "value",
266
290
  "reflect": false
267
291
  },
@@ -279,6 +303,8 @@ export class TextArea {
279
303
  "tags": [],
280
304
  "text": ""
281
305
  },
306
+ "getter": false,
307
+ "setter": false,
282
308
  "attribute": "wrap",
283
309
  "reflect": false,
284
310
  "defaultValue": "'soft'"
@@ -1 +1 @@
1
- {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/components/textarea/textarea.tsx"],"names":[],"mappings":"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","sourcesContent":["import { h, AttachInternals, Component, Event, EventEmitter, Host, Method, Prop } from \"@stencil/core\"\n\n@Component({\n\tformAssociated: true,\n\tshadow: true,\n\tstyleUrl: 'textarea.scss',\n\ttag: 'ifx-textarea'\n})\n\nexport class TextArea {\n\n\tprivate inputId: string = `ifx-textarea-${++textareaId}`;\n\n\t@AttachInternals() internals: ElementInternals;\n\n\t@Event() ifxInput: EventEmitter<String>;\n\n\t@Prop() caption: string;\n\t@Prop() cols: number;\n\t@Prop() disabled: boolean = false;\n\t@Prop() error: boolean = false;\n\t@Prop() label: string;\n\t@Prop() maxlength: number;\n\t@Prop() name: string;\n\t@Prop() placeholder: string;\n\t@Prop() readOnly: boolean = false;\n\t@Prop() resize: 'both' | 'horizontal' | 'vertical' | 'none' = 'both';\n\t@Prop() rows: number;\n\t@Prop({ mutable: true }) value: string;\n\t@Prop() wrap: 'hard' | 'soft' | 'off' = 'soft';\n\n\t@Method()\n\tasync reset() {\n\t\tthis.resetTextarea();\n\t}\n\t\n\tformResetCallback(): void {\n\t\tthis.resetTextarea();\n\t\tthis.internals.setFormValue(\"\");\n\t}\n\t\n\thandleOnInput(e: InputEvent): void {\n\t\tthis.value = (e.target as HTMLTextAreaElement).value;\n\t\tthis.internals.setFormValue(this.value);\n\t\tthis.ifxInput.emit(this.value);\n\t}\n\n\tresetTextarea() {\n\t\tthis.value = '';\n\t\tthis.internals.setValidity({});\n\t\tthis.internals.setFormValue('');\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.internals.setFormValue(this.value);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={`wrapper \n\t\t\t\t\t\twrapper--${this.error ? 'error' : ''}\n\t\t\t\t\t\twrapper--${this.disabled ? 'disabled': ''}`}>\n\t\t\t\t<label class='wrapper__label' htmlFor={ this.inputId }>\n\t\t\t\t\t{ this.label?.trim() }\n\t\t\t\t</label>\n\n\t\t\t\t<div class='wrapper__textarea'>\n\t\t\t\t\t<textarea\n\t\t\t\t\t\taria-label='a textarea'\n\t\t\t\t\t\taria-value={ this.value }\n\t\t\t\t\t\taria-disabled={ this.disabled }\n\t\t\t\t\t\tid={ this.inputId }\n\t\t\t\t\t\tstyle={ {resize: this.resize} }\n\t\t\t\t\t\tname={ this.name ? this.name : this.inputId}\n\t\t\t\t\t\tcols={ this.cols }\n\t\t\t\t\t\trows={ this.rows }\n\t\t\t\t\t\tmaxlength={ this.maxlength }\n\t\t\t\t\t\twrap={ this.wrap }\n\t\t\t\t\t\tdisabled={ this.disabled }\n\t\t\t\t\t\treadonly={ this.readOnly }\n\t\t\t\t\t\tplaceholder={ this.placeholder }\n\t\t\t\t\t\tvalue={ this.value }\n\t\t\t\t\t\tonInput={ (e) => this.handleOnInput(e) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{ this.caption?.trim() && (\n\t\t\t\t\t<div class='wrapper__caption'>\n\t\t\t\t\t\t{ this.caption.trim() }\n\t\t\t\t\t</div> \n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n\nlet textareaId = 0;"]}
1
+ {"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../src/components/textarea/textarea.tsx"],"names":[],"mappings":"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","sourcesContent":["import { h, AttachInternals, Component, Event, EventEmitter, Host, Method, Prop } from \"@stencil/core\"\n\n@Component({\n\tformAssociated: true,\n\tshadow: true,\n\tstyleUrl: 'textarea.scss',\n\ttag: 'ifx-textarea'\n})\n\nexport class TextArea {\n\n\tprivate inputId: string = `ifx-textarea-${++textareaId}`;\n\n\t@AttachInternals() internals: ElementInternals;\n\n\t@Event() ifxInput: EventEmitter<String>;\n\n\t@Prop() caption: string;\n\t@Prop() cols: number;\n\t@Prop() disabled: boolean = false;\n\t@Prop() error: boolean = false;\n\t@Prop() label: string;\n\t@Prop() maxlength: number;\n\t@Prop() name: string;\n\t@Prop() placeholder: string;\n\t@Prop() readOnly: boolean = false;\n\t@Prop() resize: 'both' | 'horizontal' | 'vertical' | 'none' = 'both';\n\t@Prop() rows: number;\n\t@Prop({ mutable: true }) value: string;\n\t@Prop() wrap: 'hard' | 'soft' | 'off' = 'soft';\n\n\t@Method()\n\tasync reset() {\n\t\tthis.resetTextarea();\n\t}\n\t\n\tformResetCallback(): void {\n\t\tthis.resetTextarea();\n\t\tthis.internals.setFormValue(\"\");\n\t}\n\t\n\thandleOnInput(e: InputEvent): void {\n\t\tthis.value = (e.target as HTMLTextAreaElement).value;\n\t\tthis.internals.setFormValue(this.value);\n\t\tthis.ifxInput.emit(this.value);\n\t}\n\n\tresetTextarea() {\n\t\tthis.value = '';\n\t\tthis.internals.setValidity({});\n\t\tthis.internals.setFormValue('');\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.internals.setFormValue(this.value);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={`wrapper \n\t\t\t\t\t\twrapper--${this.error ? 'error' : ''}\n\t\t\t\t\t\twrapper--${this.disabled ? 'disabled': ''}`}>\n\t\t\t\t<label class='wrapper__label' htmlFor={ this.inputId }>\n\t\t\t\t\t{ this.label?.trim() }\n\t\t\t\t</label>\n\n\t\t\t\t<div class='wrapper__textarea'>\n\t\t\t\t\t<textarea\n\t\t\t\t\t\taria-label='a textarea'\n\t\t\t\t\t\taria-value={ this.value }\n\t\t\t\t\t\taria-disabled={ this.disabled }\n\t\t\t\t\t\tid={ this.inputId }\n\t\t\t\t\t\tstyle={ {resize: this.resize} }\n\t\t\t\t\t\tname={ this.name ? this.name : this.inputId}\n\t\t\t\t\t\tcols={ this.cols }\n\t\t\t\t\t\trows={ this.rows }\n\t\t\t\t\t\tmaxlength={ this.maxlength }\n\t\t\t\t\t\twrap={ this.wrap }\n\t\t\t\t\t\tdisabled={ this.disabled }\n\t\t\t\t\t\treadonly={ this.readOnly }\n\t\t\t\t\t\tplaceholder={ this.placeholder }\n\t\t\t\t\t\tvalue={ this.value }\n\t\t\t\t\t\tonInput={ (e) => this.handleOnInput(e) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{ this.caption?.trim() && (\n\t\t\t\t\t<div class='wrapper__caption'>\n\t\t\t\t\t\t{ this.caption.trim() }\n\t\t\t\t\t</div> \n\t\t\t\t)}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n\nlet textareaId = 0;"]}