@ukic/canary-web-components 3.0.0-canary.26 → 3.0.0-canary.27

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 (401) hide show
  1. package/dist/cjs/common-helpers-944cb54d.js +21 -0
  2. package/dist/cjs/common-helpers-944cb54d.js.map +1 -0
  3. package/dist/cjs/core.cjs.js +1 -1
  4. package/dist/cjs/{helpers-b55826ba.js → helpers-046745ee.js} +3 -1
  5. package/dist/cjs/helpers-046745ee.js.map +1 -0
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  7. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-action-chip.cjs.entry.js +1 -1
  9. package/dist/cjs/ic-alert.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  11. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  12. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  13. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  14. package/dist/cjs/ic-button_3.cjs.entry.js +1 -1
  15. package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-checkbox-group.cjs.entry.js +7 -4
  17. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-checkbox_3.cjs.entry.js +36 -23
  19. package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-chip.cjs.entry.js +6 -5
  21. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-data-row.cjs.entry.js +1 -1
  23. package/dist/cjs/ic-data-table.cjs.entry.js +13 -13
  24. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-date-input.cjs.entry.js +1 -1
  26. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  28. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  29. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  30. package/dist/cjs/ic-footer-link.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-hero.cjs.entry.js +1 -1
  33. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +1 -1
  34. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +7 -6
  35. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  38. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  39. package/dist/cjs/ic-menu.cjs.entry.js +21 -5
  40. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  42. package/dist/cjs/ic-navigation-group.cjs.entry.js +1 -1
  43. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  44. package/dist/cjs/ic-navigation-menu.cjs.entry.js +1 -1
  45. package/dist/cjs/ic-page-header.cjs.entry.js +1 -1
  46. package/dist/cjs/ic-pagination_4.cjs.entry.js +23 -16
  47. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  49. package/dist/cjs/ic-radio-group.cjs.entry.js +14 -7
  50. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-radio-option.cjs.entry.js +2 -2
  52. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-search-bar.cjs.entry.js +1 -1
  54. package/dist/cjs/ic-side-navigation.cjs.entry.js +1 -1
  55. package/dist/cjs/ic-status-tag.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-step.cjs.entry.js +66 -54
  57. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-stepper.cjs.entry.js +20 -3
  59. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-switch.cjs.entry.js +1 -1
  61. package/dist/cjs/ic-tab-group.cjs.entry.js +1 -1
  62. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  63. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  64. package/dist/cjs/ic-time-input.cjs.entry.js +8 -8
  65. package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-toast.cjs.entry.js +1 -1
  67. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +1 -1
  68. package/dist/cjs/ic-toggle-button.cjs.entry.js +1 -1
  69. package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
  70. package/dist/cjs/ic-tree-view.cjs.entry.js +6 -4
  71. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  73. package/dist/cjs/loader.cjs.js +1 -1
  74. package/dist/cjs/purify-039f565a.js +1365 -0
  75. package/dist/cjs/purify-039f565a.js.map +1 -0
  76. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
  77. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js.map +1 -1
  78. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.types.js.map +1 -1
  79. package/dist/collection/components/ic-data-table/ic-data-table.js +12 -13
  80. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  81. package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -1
  82. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  83. package/dist/collection/components/ic-data-table/story-data.js +52 -21
  84. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  85. package/dist/collection/components/ic-data-table/test/a11y/ic-data-table.test.a11y.js.map +1 -1
  86. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -1
  87. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.stories.js.map +1 -1
  88. package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js.map +1 -1
  89. package/dist/collection/components/ic-date-input/ic-date-input.css +6 -0
  90. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  91. package/dist/collection/components/ic-date-input/ic-date-input.stories.js.map +1 -1
  92. package/dist/collection/components/ic-date-input/story-data.js.map +1 -1
  93. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js.map +1 -1
  94. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
  95. package/dist/collection/components/ic-date-picker/ic-date-picker.stories.js.map +1 -1
  96. package/dist/collection/components/ic-date-picker/ic-day-button.js.map +1 -1
  97. package/dist/collection/components/ic-date-picker/ic-month-picker.js.map +1 -1
  98. package/dist/collection/components/ic-date-picker/ic-year-picker.js.map +1 -1
  99. package/dist/collection/components/ic-date-picker/story-data.js.map +1 -1
  100. package/dist/collection/components/ic-date-picker/test/a11y/ic-date-picker.test.a11y.js.map +1 -1
  101. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +44 -25
  102. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  103. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js +1 -1
  104. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.stories.js.map +1 -1
  105. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js.map +1 -1
  106. package/dist/collection/components/ic-pagination-bar/test/a11y/ic-pagination-bar.test.a11y.js.map +1 -1
  107. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js.map +1 -1
  108. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js.map +1 -1
  109. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.stories.js.map +1 -1
  110. package/dist/collection/components/ic-table-of-contents/test/a11y/ic-table-of-contents.test.a11y.js.map +1 -1
  111. package/dist/collection/components/ic-time-input/ic-time-input.css +1 -1
  112. package/dist/collection/components/ic-time-input/ic-time-input.js +7 -7
  113. package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -1
  114. package/dist/collection/components/ic-time-input/ic-time-input.stories.js.map +1 -1
  115. package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js.map +1 -1
  116. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  117. package/dist/collection/components/ic-tree-view/ic-tree-view.js +5 -4
  118. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  119. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -1
  120. package/dist/collection/components/ic-tree-view/ic-tree-view.types.js.map +1 -1
  121. package/dist/collection/index.js.map +1 -1
  122. package/dist/collection/utils/constants.js.map +1 -1
  123. package/dist/collection/utils/date-helpers.js.map +1 -1
  124. package/dist/collection/utils/helpers.js.map +1 -1
  125. package/dist/collection/utils/testa11y.helpers.js.map +1 -1
  126. package/dist/collection/utils/types.js.map +1 -1
  127. package/dist/components/common-helpers.js +19 -0
  128. package/dist/components/common-helpers.js.map +1 -0
  129. package/dist/components/helpers.js +2 -1
  130. package/dist/components/helpers.js.map +1 -1
  131. package/dist/components/ic-checkbox-group.js +6 -3
  132. package/dist/components/ic-checkbox-group.js.map +1 -1
  133. package/dist/components/ic-chip.js +5 -4
  134. package/dist/components/ic-chip.js.map +1 -1
  135. package/dist/components/ic-data-table.js +12 -13
  136. package/dist/components/ic-data-table.js.map +1 -1
  137. package/dist/components/ic-date-input2.js +1 -1
  138. package/dist/components/ic-date-input2.js.map +1 -1
  139. package/dist/components/ic-footer.js +1 -1
  140. package/dist/components/ic-horizontal-scroll2.js +1 -1
  141. package/dist/components/ic-input-validation2.js +6 -5
  142. package/dist/components/ic-input-validation2.js.map +1 -1
  143. package/dist/components/ic-menu2.js +21 -5
  144. package/dist/components/ic-menu2.js.map +1 -1
  145. package/dist/components/ic-navigation-button.js +1 -1
  146. package/dist/components/ic-navigation-group.js +1 -1
  147. package/dist/components/ic-navigation-item.js +1 -1
  148. package/dist/components/ic-navigation-menu2.js +1 -1
  149. package/dist/components/ic-pagination-bar2.js +35 -22
  150. package/dist/components/ic-pagination-bar2.js.map +1 -1
  151. package/dist/components/ic-pagination-item2.js +1 -1
  152. package/dist/components/ic-radio-group.js +14 -6
  153. package/dist/components/ic-radio-group.js.map +1 -1
  154. package/dist/components/ic-radio-option.js +1 -1
  155. package/dist/components/ic-radio-option.js.map +1 -1
  156. package/dist/components/ic-search-bar.js +1 -1
  157. package/dist/components/ic-select2.js +17 -9
  158. package/dist/components/ic-select2.js.map +1 -1
  159. package/dist/components/ic-side-navigation.js +1 -1
  160. package/dist/components/ic-step.js +66 -53
  161. package/dist/components/ic-step.js.map +1 -1
  162. package/dist/components/ic-stepper.js +20 -2
  163. package/dist/components/ic-stepper.js.map +1 -1
  164. package/dist/components/ic-text-field2.js +9 -9
  165. package/dist/components/ic-text-field2.js.map +1 -1
  166. package/dist/components/ic-theme.js +1 -1
  167. package/dist/components/ic-time-input.js +8 -8
  168. package/dist/components/ic-time-input.js.map +1 -1
  169. package/dist/components/ic-toast.js +1 -1
  170. package/dist/components/ic-toggle-button.js +1 -1
  171. package/dist/components/ic-top-navigation.js +1 -1
  172. package/dist/components/ic-tree-view.js +5 -4
  173. package/dist/components/ic-tree-view.js.map +1 -1
  174. package/dist/components/purify.js +1363 -0
  175. package/dist/components/purify.js.map +1 -0
  176. package/dist/core/core.esm.js +1 -1
  177. package/dist/core/core.esm.js.map +1 -1
  178. package/dist/core/{p-20f248be.entry.js → p-05e0cadf.entry.js} +2 -2
  179. package/dist/core/{p-b8cb867c.entry.js → p-07365d6f.entry.js} +2 -2
  180. package/dist/core/{p-a7bc9a19.entry.js → p-0b0cc10d.entry.js} +2 -2
  181. package/dist/core/{p-318c6a4c.entry.js → p-0e882f70.entry.js} +2 -2
  182. package/dist/core/{p-a8d934fe.entry.js → p-0ec0be8d.entry.js} +2 -2
  183. package/dist/core/{p-3bee8f39.entry.js → p-182883cb.entry.js} +2 -2
  184. package/dist/core/{p-3414247d.entry.js → p-18b793e0.entry.js} +2 -2
  185. package/dist/core/p-1d89fcda.entry.js +2 -0
  186. package/dist/core/p-1d89fcda.entry.js.map +1 -0
  187. package/dist/core/{p-fc125ca6.entry.js → p-266d5e13.entry.js} +2 -2
  188. package/dist/core/p-2bba11f8.entry.js +2 -0
  189. package/dist/core/{p-c08ea34d.entry.js.map → p-2bba11f8.entry.js.map} +1 -1
  190. package/dist/core/{p-570ff466.entry.js → p-2f0ab1d0.entry.js} +2 -2
  191. package/dist/core/p-349d91dc.js +3 -0
  192. package/dist/core/p-349d91dc.js.map +1 -0
  193. package/dist/core/p-35bff926.entry.js +2 -0
  194. package/dist/core/p-35bff926.entry.js.map +1 -0
  195. package/dist/core/p-479e5fa2.entry.js +2 -0
  196. package/dist/core/p-479e5fa2.entry.js.map +1 -0
  197. package/dist/core/p-542ac498.js +2 -0
  198. package/dist/core/p-542ac498.js.map +1 -0
  199. package/dist/core/{p-4fa1a80f.entry.js → p-54da2d5f.entry.js} +2 -2
  200. package/dist/core/{p-6a884eef.entry.js → p-553531bf.entry.js} +2 -2
  201. package/dist/core/{p-b12c4643.entry.js → p-5d6290bb.entry.js} +2 -2
  202. package/dist/core/p-5d6290bb.entry.js.map +1 -0
  203. package/dist/core/{p-8bb49790.entry.js → p-656b92d7.entry.js} +2 -2
  204. package/dist/core/{p-a0c361ec.entry.js → p-6addd986.entry.js} +2 -2
  205. package/dist/core/{p-c7a97221.entry.js → p-6d4418e4.entry.js} +2 -2
  206. package/dist/core/{p-9c491db1.entry.js → p-6e5fc63c.entry.js} +2 -2
  207. package/dist/core/{p-d6a1b39c.entry.js → p-70447473.entry.js} +2 -2
  208. package/dist/core/{p-17423822.entry.js → p-77c4d1d2.entry.js} +2 -2
  209. package/dist/core/{p-4479c7e7.entry.js → p-796b9ac5.entry.js} +2 -2
  210. package/dist/core/{p-09c0961a.entry.js → p-7986db4a.entry.js} +2 -2
  211. package/dist/core/p-7bb3531c.entry.js +2 -0
  212. package/dist/core/p-7bb3531c.entry.js.map +1 -0
  213. package/dist/core/{p-cd3f12ad.entry.js → p-8a5ae4ab.entry.js} +2 -2
  214. package/dist/core/{p-f4b08cdb.entry.js → p-8b4a7a78.entry.js} +2 -2
  215. package/dist/core/{p-b95d99c7.entry.js → p-8c841dc8.entry.js} +2 -2
  216. package/dist/core/{p-55934942.entry.js → p-94e5ed81.entry.js} +2 -2
  217. package/dist/core/{p-b5dd226f.entry.js → p-9af5008c.entry.js} +2 -2
  218. package/dist/core/{p-7821c7dc.entry.js → p-9b68bee6.entry.js} +2 -2
  219. package/dist/core/p-9fa329f2.entry.js +2 -0
  220. package/dist/core/p-9fa329f2.entry.js.map +1 -0
  221. package/dist/core/p-a422b778.js +2 -0
  222. package/dist/core/p-a422b778.js.map +1 -0
  223. package/dist/core/{p-30a2abe9.entry.js → p-a7a572d9.entry.js} +2 -2
  224. package/dist/core/{p-3bb4ea35.entry.js → p-a86756fa.entry.js} +2 -2
  225. package/dist/core/{p-aaa6d8e1.entry.js → p-ac2f8cc8.entry.js} +2 -2
  226. package/dist/core/{p-9c8070a1.entry.js → p-b10f5992.entry.js} +2 -2
  227. package/dist/core/p-b2b5d4fa.entry.js +2 -0
  228. package/dist/core/p-b2b5d4fa.entry.js.map +1 -0
  229. package/dist/core/p-b7a726fb.entry.js +2 -0
  230. package/dist/core/p-b7a726fb.entry.js.map +1 -0
  231. package/dist/core/{p-d3eb3356.entry.js → p-ba26a1f0.entry.js} +2 -2
  232. package/dist/core/{p-d3b9c04b.entry.js → p-bad17ba7.entry.js} +2 -2
  233. package/dist/core/{p-9ad64b6f.entry.js → p-bf08d34c.entry.js} +2 -2
  234. package/dist/core/{p-b2c49dfd.entry.js → p-bf5558ac.entry.js} +2 -2
  235. package/dist/core/{p-d143aa70.entry.js → p-c1ae14ad.entry.js} +2 -2
  236. package/dist/core/p-c9953122.entry.js +2 -0
  237. package/dist/core/p-c9953122.entry.js.map +1 -0
  238. package/dist/core/p-d4a1e90d.entry.js +2 -0
  239. package/dist/core/p-d4a1e90d.entry.js.map +1 -0
  240. package/dist/core/{p-92f199b0.entry.js → p-d77981a5.entry.js} +2 -2
  241. package/dist/core/{p-98286c35.entry.js → p-e0abd214.entry.js} +2 -2
  242. package/dist/core/p-e0abd214.entry.js.map +1 -0
  243. package/dist/core/{p-f5cc4e94.entry.js → p-e8cea1d5.entry.js} +2 -2
  244. package/dist/core/{p-5534bb37.entry.js → p-f591abc2.entry.js} +2 -2
  245. package/dist/core/p-f6209622.entry.js +2 -0
  246. package/dist/core/p-f6209622.entry.js.map +1 -0
  247. package/dist/core/{p-9f5a1473.entry.js → p-f7b1d6bf.entry.js} +2 -2
  248. package/dist/core/p-f7b1d6bf.entry.js.map +1 -0
  249. package/dist/core/{p-e435052b.entry.js → p-fba9f5b6.entry.js} +2 -2
  250. package/dist/core/{p-0fffe635.entry.js → p-ff4a873e.entry.js} +2 -2
  251. package/dist/esm/common-helpers-86c07ff1.js +19 -0
  252. package/dist/esm/common-helpers-86c07ff1.js.map +1 -0
  253. package/dist/esm/core.js +1 -1
  254. package/dist/esm/{helpers-fee7d348.js → helpers-1dbd527e.js} +3 -2
  255. package/dist/esm/helpers-1dbd527e.js.map +1 -0
  256. package/dist/esm/ic-accordion-group.entry.js +1 -1
  257. package/dist/esm/ic-accordion.entry.js +1 -1
  258. package/dist/esm/ic-action-chip.entry.js +1 -1
  259. package/dist/esm/ic-alert.entry.js +1 -1
  260. package/dist/esm/ic-back-to-top.entry.js +1 -1
  261. package/dist/esm/ic-badge.entry.js +1 -1
  262. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  263. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  264. package/dist/esm/ic-button_3.entry.js +1 -1
  265. package/dist/esm/ic-card-vertical.entry.js +1 -1
  266. package/dist/esm/ic-checkbox-group.entry.js +7 -4
  267. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  268. package/dist/esm/ic-checkbox_3.entry.js +36 -23
  269. package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
  270. package/dist/esm/ic-chip.entry.js +6 -5
  271. package/dist/esm/ic-chip.entry.js.map +1 -1
  272. package/dist/esm/ic-data-row.entry.js +1 -1
  273. package/dist/esm/ic-data-table.entry.js +13 -13
  274. package/dist/esm/ic-data-table.entry.js.map +1 -1
  275. package/dist/esm/ic-date-input.entry.js +1 -1
  276. package/dist/esm/ic-date-input.entry.js.map +1 -1
  277. package/dist/esm/ic-dialog.entry.js +1 -1
  278. package/dist/esm/ic-divider.entry.js +1 -1
  279. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  280. package/dist/esm/ic-footer-link.entry.js +1 -1
  281. package/dist/esm/ic-footer.entry.js +1 -1
  282. package/dist/esm/ic-hero.entry.js +1 -1
  283. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  284. package/dist/esm/ic-input-component-container_4.entry.js +7 -6
  285. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
  286. package/dist/esm/ic-link.entry.js +1 -1
  287. package/dist/esm/ic-menu-group.entry.js +1 -1
  288. package/dist/esm/ic-menu-item.entry.js +1 -1
  289. package/dist/esm/ic-menu.entry.js +21 -5
  290. package/dist/esm/ic-menu.entry.js.map +1 -1
  291. package/dist/esm/ic-navigation-button.entry.js +1 -1
  292. package/dist/esm/ic-navigation-group.entry.js +1 -1
  293. package/dist/esm/ic-navigation-item.entry.js +1 -1
  294. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  295. package/dist/esm/ic-page-header.entry.js +1 -1
  296. package/dist/esm/ic-pagination_4.entry.js +23 -16
  297. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  298. package/dist/esm/ic-popover-menu.entry.js +1 -1
  299. package/dist/esm/ic-radio-group.entry.js +14 -7
  300. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  301. package/dist/esm/ic-radio-option.entry.js +2 -2
  302. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  303. package/dist/esm/ic-search-bar.entry.js +1 -1
  304. package/dist/esm/ic-side-navigation.entry.js +1 -1
  305. package/dist/esm/ic-status-tag.entry.js +1 -1
  306. package/dist/esm/ic-step.entry.js +66 -54
  307. package/dist/esm/ic-step.entry.js.map +1 -1
  308. package/dist/esm/ic-stepper.entry.js +20 -3
  309. package/dist/esm/ic-stepper.entry.js.map +1 -1
  310. package/dist/esm/ic-switch.entry.js +1 -1
  311. package/dist/esm/ic-tab-group.entry.js +1 -1
  312. package/dist/esm/ic-tab.entry.js +1 -1
  313. package/dist/esm/ic-theme.entry.js +1 -1
  314. package/dist/esm/ic-time-input.entry.js +8 -8
  315. package/dist/esm/ic-time-input.entry.js.map +1 -1
  316. package/dist/esm/ic-toast.entry.js +1 -1
  317. package/dist/esm/ic-toggle-button-group.entry.js +1 -1
  318. package/dist/esm/ic-toggle-button.entry.js +1 -1
  319. package/dist/esm/ic-top-navigation.entry.js +1 -1
  320. package/dist/esm/ic-tree-view.entry.js +6 -4
  321. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  322. package/dist/esm/ic-typography.entry.js +1 -1
  323. package/dist/esm/loader.js +1 -1
  324. package/dist/esm/purify-6eaa9893.js +1363 -0
  325. package/dist/esm/purify-6eaa9893.js.map +1 -0
  326. package/dist/types/components/ic-data-table/story-data.d.ts +0 -9
  327. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +3 -4
  328. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.types.d.ts +4 -0
  329. package/dist/types/components.d.ts +4 -4
  330. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/common-helpers.d.ts +2 -0
  331. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/constants.d.ts +44 -0
  332. package/hydrate/index.js +1595 -142
  333. package/hydrate/index.mjs +1595 -142
  334. package/package.json +3 -3
  335. package/dist/cjs/helpers-b55826ba.js.map +0 -1
  336. package/dist/core/p-25d21dbd.entry.js +0 -2
  337. package/dist/core/p-25d21dbd.entry.js.map +0 -1
  338. package/dist/core/p-4eb74281.entry.js +0 -2
  339. package/dist/core/p-4eb74281.entry.js.map +0 -1
  340. package/dist/core/p-514c4401.entry.js +0 -2
  341. package/dist/core/p-514c4401.entry.js.map +0 -1
  342. package/dist/core/p-587d704d.entry.js +0 -2
  343. package/dist/core/p-587d704d.entry.js.map +0 -1
  344. package/dist/core/p-9810080e.entry.js +0 -2
  345. package/dist/core/p-9810080e.entry.js.map +0 -1
  346. package/dist/core/p-98286c35.entry.js.map +0 -1
  347. package/dist/core/p-9f5a1473.entry.js.map +0 -1
  348. package/dist/core/p-b0462734.entry.js +0 -2
  349. package/dist/core/p-b0462734.entry.js.map +0 -1
  350. package/dist/core/p-b12c4643.entry.js.map +0 -1
  351. package/dist/core/p-c039a175.entry.js +0 -2
  352. package/dist/core/p-c039a175.entry.js.map +0 -1
  353. package/dist/core/p-c08ea34d.entry.js +0 -2
  354. package/dist/core/p-c95be271.entry.js +0 -2
  355. package/dist/core/p-c95be271.entry.js.map +0 -1
  356. package/dist/core/p-d7c44cce.entry.js +0 -2
  357. package/dist/core/p-d7c44cce.entry.js.map +0 -1
  358. package/dist/core/p-ee95905f.js +0 -2
  359. package/dist/core/p-ee95905f.js.map +0 -1
  360. package/dist/core/p-f6772530.entry.js +0 -2
  361. package/dist/core/p-f6772530.entry.js.map +0 -1
  362. package/dist/esm/helpers-fee7d348.js.map +0 -1
  363. /package/dist/core/{p-20f248be.entry.js.map → p-05e0cadf.entry.js.map} +0 -0
  364. /package/dist/core/{p-b8cb867c.entry.js.map → p-07365d6f.entry.js.map} +0 -0
  365. /package/dist/core/{p-a7bc9a19.entry.js.map → p-0b0cc10d.entry.js.map} +0 -0
  366. /package/dist/core/{p-318c6a4c.entry.js.map → p-0e882f70.entry.js.map} +0 -0
  367. /package/dist/core/{p-a8d934fe.entry.js.map → p-0ec0be8d.entry.js.map} +0 -0
  368. /package/dist/core/{p-3bee8f39.entry.js.map → p-182883cb.entry.js.map} +0 -0
  369. /package/dist/core/{p-3414247d.entry.js.map → p-18b793e0.entry.js.map} +0 -0
  370. /package/dist/core/{p-fc125ca6.entry.js.map → p-266d5e13.entry.js.map} +0 -0
  371. /package/dist/core/{p-570ff466.entry.js.map → p-2f0ab1d0.entry.js.map} +0 -0
  372. /package/dist/core/{p-4fa1a80f.entry.js.map → p-54da2d5f.entry.js.map} +0 -0
  373. /package/dist/core/{p-6a884eef.entry.js.map → p-553531bf.entry.js.map} +0 -0
  374. /package/dist/core/{p-8bb49790.entry.js.map → p-656b92d7.entry.js.map} +0 -0
  375. /package/dist/core/{p-a0c361ec.entry.js.map → p-6addd986.entry.js.map} +0 -0
  376. /package/dist/core/{p-c7a97221.entry.js.map → p-6d4418e4.entry.js.map} +0 -0
  377. /package/dist/core/{p-9c491db1.entry.js.map → p-6e5fc63c.entry.js.map} +0 -0
  378. /package/dist/core/{p-d6a1b39c.entry.js.map → p-70447473.entry.js.map} +0 -0
  379. /package/dist/core/{p-17423822.entry.js.map → p-77c4d1d2.entry.js.map} +0 -0
  380. /package/dist/core/{p-4479c7e7.entry.js.map → p-796b9ac5.entry.js.map} +0 -0
  381. /package/dist/core/{p-09c0961a.entry.js.map → p-7986db4a.entry.js.map} +0 -0
  382. /package/dist/core/{p-cd3f12ad.entry.js.map → p-8a5ae4ab.entry.js.map} +0 -0
  383. /package/dist/core/{p-f4b08cdb.entry.js.map → p-8b4a7a78.entry.js.map} +0 -0
  384. /package/dist/core/{p-b95d99c7.entry.js.map → p-8c841dc8.entry.js.map} +0 -0
  385. /package/dist/core/{p-55934942.entry.js.map → p-94e5ed81.entry.js.map} +0 -0
  386. /package/dist/core/{p-b5dd226f.entry.js.map → p-9af5008c.entry.js.map} +0 -0
  387. /package/dist/core/{p-7821c7dc.entry.js.map → p-9b68bee6.entry.js.map} +0 -0
  388. /package/dist/core/{p-30a2abe9.entry.js.map → p-a7a572d9.entry.js.map} +0 -0
  389. /package/dist/core/{p-3bb4ea35.entry.js.map → p-a86756fa.entry.js.map} +0 -0
  390. /package/dist/core/{p-aaa6d8e1.entry.js.map → p-ac2f8cc8.entry.js.map} +0 -0
  391. /package/dist/core/{p-9c8070a1.entry.js.map → p-b10f5992.entry.js.map} +0 -0
  392. /package/dist/core/{p-d3eb3356.entry.js.map → p-ba26a1f0.entry.js.map} +0 -0
  393. /package/dist/core/{p-d3b9c04b.entry.js.map → p-bad17ba7.entry.js.map} +0 -0
  394. /package/dist/core/{p-9ad64b6f.entry.js.map → p-bf08d34c.entry.js.map} +0 -0
  395. /package/dist/core/{p-b2c49dfd.entry.js.map → p-bf5558ac.entry.js.map} +0 -0
  396. /package/dist/core/{p-d143aa70.entry.js.map → p-c1ae14ad.entry.js.map} +0 -0
  397. /package/dist/core/{p-92f199b0.entry.js.map → p-d77981a5.entry.js.map} +0 -0
  398. /package/dist/core/{p-f5cc4e94.entry.js.map → p-e8cea1d5.entry.js.map} +0 -0
  399. /package/dist/core/{p-5534bb37.entry.js.map → p-f591abc2.entry.js.map} +0 -0
  400. /package/dist/core/{p-e435052b.entry.js.map → p-fba9f5b6.entry.js.map} +0 -0
  401. /package/dist/core/{p-0fffe635.entry.js.map → p-ff4a873e.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"ic-tree-view.js","mappings":"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","names":[],"sources":["src/components/ic-tree-view/ic-tree-view.css?tag=ic-tree-view&encapsulation=shadow","src/components/ic-tree-view/ic-tree-view.tsx"],"sourcesContent":["/**\n* @prop --tree-view-width: Width of the tree view\n*/\n\n:host {\n display: block;\n width: var(--tree-view-width, 100%);\n background-color: var(--ic-tree-view-background);\n}\n\n:host .heading-area-container {\n border-bottom: var(--ic-space-1px) solid var(--ic-tree-view-divider);\n display: flex;\n align-items: center;\n min-height: calc(\n var(--ic-space-xl) + var(--ic-space-xs) - var(--ic-space-1px)\n );\n padding: 0 var(--ic-space-xs);\n\n --ic-typography-color: var(--ic-tree-view-text);\n}\n\n:host(.ic-tree-view-small) .heading-area-container {\n min-height: calc(var(--ic-space-xl) - var(--ic-space-1px));\n}\n\n:host(.ic-tree-view-large) .heading-area-container {\n min-height: calc(var(--ic-space-xxl) - var(--ic-space-1px));\n}\n\n:host(.ic-tree-view-truncate) .heading-area-container {\n height: calc(var(--ic-space-xl) + var(--ic-space-xs) - var(--ic-space-1px));\n}\n\n:host(.ic-tree-view-truncate.ic-tree-view-small) .heading-area-container {\n height: calc(var(--ic-space-xl) - var(--ic-space-1px));\n}\n\n:host(.ic-tree-view-truncate.ic-tree-view-large) .heading-area-container {\n height: calc(var(--ic-space-xxl) - var(--ic-space-1px));\n}\n\n.icon-container {\n width: var(--ic-space-lg);\n min-width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n margin: 0 var(--ic-space-xs) 0 0;\n}\n\n:host(.ic-tree-view-small) .icon-container {\n margin: 0 var(--ic-space-xxs) 0 0;\n}\n\n.ic-text-overflow {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.ic-tooltip-overflow {\n overflow: hidden;\n}\n\n/* Ensures truncation works - accounts for text width increase as component hydrates */\n.tree-view-header.with-padding {\n padding-right: var(--ic-space-xs);\n}\n\n.tree-items-container-hidden {\n visibility: hidden;\n}\n\n::slotted([slot=\"icon\"]) {\n fill: var(--ic-tree-view-icon);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n ::slotted([slot=\"icon\"]) {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n h,\n Prop,\n Element,\n Host,\n Watch,\n State,\n Listen,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n isPropDefined,\n isSlotUsed,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport { IcTreeItemOptions } from \"./ic-tree-view.types\";\n\nlet treeViewIds = 0;\n\n/**\n * @slot heading - Content is set as the tree view heading.\n * @slot icon - Content is placed to the left of the heading.\n */\n\n@Component({\n tag: \"ic-tree-view\",\n styleUrl: \"ic-tree-view.css\",\n shadow: true,\n})\nexport class TreeView {\n private treeViewId = `ic-tree-view-${treeViewIds++}`;\n private treeItemTag = \"IC-TREE-ITEM\";\n private hostMutationObserver: MutationObserver | null = null;\n private isLoaded = false;\n private resizeObserver: ResizeObserver | null = null;\n private TOOLTIP = \"ic-tooltip\";\n\n private previousTruncateHeading: boolean = false;\n private previousTruncateTreeItems: boolean = false;\n\n @Element() el: HTMLIcTreeViewElement;\n\n @State() smallDevice: boolean = false;\n @Watch(\"smallDevice\")\n watchSmallDeviceHandler(): void {\n if (this.smallDevice) {\n this.previousTruncateHeading = this.truncateHeading;\n this.previousTruncateTreeItems = this.truncateTreeItems;\n this.removeTruncation();\n } else {\n this.truncateHeading = this.previousTruncateHeading;\n this.truncateTreeItems = this.previousTruncateTreeItems;\n }\n }\n\n @State() treeItems: HTMLIcTreeItemElement[];\n\n /**\n * The heading of the tree view.\n */\n @Prop() heading: string = \"\";\n\n /**\n * The size of the tree view.\n */\n @Prop() size?: IcSizes = \"medium\";\n @Watch(\"size\")\n watchSizeHandler(): void {\n this.treeItems.forEach((treeItem) => {\n treeItem.size = this.size;\n });\n }\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n @Watch(\"theme\")\n watchThemeHandler(): void {\n this.treeItems.forEach((treeItem) => {\n treeItem.theme = this.theme;\n });\n }\n\n /**\n * The content within the tree view tree items. This will take precedence over slotted content.\n * */\n @Prop() treeItemData: IcTreeItemOptions[] = [];\n @Watch(\"treeItemData\")\n watchTreeItemOptionsHandler(): void {\n this.setTreeItems();\n }\n\n /**\n * If `true`, the tree view heading will be truncated instead of text wrapping.\n * When used on small devices, this prop will be overridden and headings will be set to text-wrap.\n */\n @Prop({ mutable: true }) truncateHeading: boolean = false;\n\n /**\n * If `true`, tree items will be truncated, unless they are individually overridden.\n * When used on small devices, this prop will be overridden and tree-items will be set to text-wrap.\n */\n @Prop({ mutable: true }) truncateTreeItems: boolean = false;\n @Watch(\"truncateTreeItems\")\n watchTruncateTreeItemsHandler(): void {\n this.treeItems.forEach((treeItem) => {\n if (this.smallDevice) {\n treeItem.previousTruncateTreeItem = treeItem.truncateTreeItem;\n treeItem.truncateTreeItem = this.truncateTreeItems;\n } else {\n treeItem.truncateTreeItem = treeItem.previousTruncateTreeItem;\n }\n });\n }\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n this.resizeObserver?.disconnect();\n }\n componentWillLoad(): void {\n this.setTreeItems();\n\n this.previousTruncateHeading = this.truncateHeading;\n this.previousTruncateTreeItems = this.truncateTreeItems;\n\n checkResizeObserver(this.runResizeObserver);\n\n this.watchSizeHandler();\n this.watchThemeHandler();\n this.treeItems.forEach((treeItem) => {\n if (treeItem.truncateTreeItem === undefined) {\n treeItem.truncateTreeItem = this.truncateTreeItems;\n }\n });\n }\n\n componentDidRender(): void {\n this.truncateHeading\n ? this.truncateTreeViewHeading()\n : this.removeHeadingTruncation();\n }\n\n componentDidLoad(): void {\n this.createMutationObserver();\n\n this.isLoaded = true;\n }\n\n @Listen(\"icTreeItemSelected\")\n handleTreeItemSelected(event: CustomEvent): void {\n this.treeItems.forEach((treeItem) => {\n if (treeItem.selected && treeItem.id !== event.detail.id) {\n treeItem.selected = false;\n }\n });\n }\n\n private hostMutationCallback = (mutationList: MutationRecord[]) => {\n this.hostMutationObserver?.disconnect();\n renderDynamicChildSlots(mutationList, \"icon\", this);\n this.setTreeItems();\n this.createMutationObserver();\n };\n\n private createMutationObserver = () => {\n this.hostMutationObserver = new MutationObserver((mutationList) => {\n this.hostMutationCallback(mutationList);\n });\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n subtree: true,\n });\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const isSmallDevice = getCurrentDeviceSize() <= DEVICE_SIZES.S;\n if (this.smallDevice !== isSmallDevice) this.smallDevice = isSmallDevice;\n });\n\n this.resizeObserver.observe(document.body);\n };\n\n private removeTruncation = (): void => {\n this.truncateHeading = false;\n this.truncateTreeItems = false;\n };\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n const focussedChild = this.treeItems.indexOf(\n this.treeItems.filter((el) => el === document.activeElement)[0]\n );\n const expanded = this.treeItems[focussedChild]?.expanded;\n switch (event.key) {\n case \"ArrowDown\":\n this.treeItems[\n this.getNextItemToSelect(focussedChild, true)\n ].setFocus();\n if (focussedChild !== this.treeItems.length - 1) {\n event.preventDefault();\n }\n break;\n case \"ArrowUp\":\n this.treeItems[\n this.getNextItemToSelect(focussedChild, false)\n ].setFocus();\n if (focussedChild !== 0) {\n event.preventDefault();\n }\n break;\n case \"ArrowRight\":\n if (this.treeItems[focussedChild].isParent && !expanded) {\n this.treeItems[focussedChild].expanded = true;\n this.treeItems[focussedChild].hasParentExpanded = true;\n this.treeItems[focussedChild].updateAriaLabel();\n } else if (this.treeItems[focussedChild].isParent && expanded) {\n (\n this.treeItems[focussedChild].children[0] as HTMLIcTreeItemElement\n ).setFocus();\n }\n event.preventDefault();\n break;\n case \"ArrowLeft\":\n if (this.treeItems[focussedChild].isParent && expanded) {\n this.treeItems[focussedChild].expanded = false;\n this.treeItems[focussedChild].hasParentExpanded = false;\n this.treeItems[focussedChild].updateAriaLabel();\n } else if (\n this.treeItems[focussedChild].parentElement?.tagName ===\n this.treeItemTag\n ) {\n (\n this.treeItems[focussedChild].parentElement as HTMLIcTreeItemElement\n ).setFocus();\n }\n event.preventDefault();\n break;\n }\n };\n\n private getNextItemToSelect = (\n currentItem: number,\n movingDown: boolean\n ): number => {\n const numItems = this.treeItems.length - 1;\n\n if (currentItem < 1) {\n currentItem = 0;\n }\n\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n if (nextItem < 0) {\n nextItem = 0;\n } else if (nextItem > numItems) {\n nextItem = numItems;\n }\n\n const maxAttempts = numItems + 1;\n let attempts = 0;\n\n while (attempts < maxAttempts) {\n if (nextItem < 0 || nextItem > numItems) {\n return currentItem;\n }\n\n if (\n this.treeItems[nextItem].parentElement?.tagName !== this.treeItemTag ||\n ((this.treeItems[nextItem].parentElement as HTMLIcTreeItemElement)\n .expanded &&\n this.treeItems[nextItem].offsetHeight > 0)\n ) {\n return nextItem;\n }\n\n if (nextItem === numItems && this.treeItems[nextItem].disabled) {\n return currentItem;\n }\n\n nextItem = movingDown ? nextItem + 1 : nextItem - 1;\n attempts++;\n }\n\n return currentItem;\n };\n\n private linkTreeItems = () => {\n this.treeItems.forEach((treeItem) => {\n treeItem.setAttribute(\"context-id\", this.treeViewId);\n });\n };\n\n private setTreeItems = () => {\n this.treeItems = this.getAllTreeItems(this.el as HTMLElement);\n\n this.linkTreeItems();\n };\n\n private getAllTreeItems(element: HTMLElement): HTMLIcTreeItemElement[] {\n const treeItems: HTMLIcTreeItemElement[] = [];\n\n const collectTreeItemsFromSlottedContent = (el: HTMLElement) => {\n Array.from(el.children).forEach((child) => {\n if (child.tagName === this.treeItemTag) {\n treeItems.push(child as HTMLIcTreeItemElement);\n }\n\n collectTreeItemsFromSlottedContent(child as HTMLElement);\n });\n };\n\n const collectTreeItemsFromData = (\n items: IcTreeItemOptions[],\n parentElement: HTMLElement\n ) => {\n Array.from(parentElement.children).forEach((child) => {\n if (child.tagName === this.treeItemTag) {\n parentElement.removeChild(child);\n }\n });\n\n items.forEach((item) => {\n const treeItem = document.createElement(\n this.treeItemTag\n ) as HTMLIcTreeItemElement;\n const { children, icon, ...props } = item;\n Object.assign(treeItem, props);\n\n if (icon) {\n const iconSlot = document.createElement(\"div\");\n iconSlot.setAttribute(\"slot\", \"icon\");\n iconSlot.innerHTML = icon;\n treeItem.appendChild(iconSlot);\n }\n\n parentElement.appendChild(treeItem);\n treeItems.push(treeItem);\n\n if (children && children.length > 0) {\n collectTreeItemsFromData(children, treeItem);\n }\n });\n };\n\n if (this.treeItemData.length > 0) {\n collectTreeItemsFromData(this.treeItemData, element);\n } else {\n collectTreeItemsFromSlottedContent(element);\n }\n\n return treeItems;\n }\n\n private truncateTreeViewHeading = () => {\n const typographyEl =\n this.el.shadowRoot?.querySelector<HTMLIcTypographyElement>(\n \".tree-view-header\"\n );\n const tooltip = typographyEl?.closest(this.TOOLTIP);\n const headingContainer = this.el.shadowRoot?.querySelector<HTMLElement>(\n \".heading-area-container\"\n );\n\n if (\n typographyEl &&\n headingContainer &&\n typographyEl.scrollHeight > headingContainer.clientHeight\n ) {\n typographyEl.classList.add(\"ic-text-overflow\");\n\n if (!tooltip) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", this.el.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent!);\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n tooltipEl.setAttribute(\"placement\", \"right\");\n headingContainer.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n }\n };\n\n private removeHeadingTruncation = () => {\n const typographyEl =\n this.el.shadowRoot?.querySelector<HTMLIcTypographyElement>(\n \".tree-view-header\"\n );\n const tooltipEl = typographyEl?.closest<HTMLIcTooltipElement>(this.TOOLTIP);\n\n if (tooltipEl && typographyEl) {\n typographyEl.classList.remove(\"ic-text-overflow\");\n this.el.shadowRoot\n ?.querySelector(\".heading-area-container\")\n ?.replaceChild(typographyEl, tooltipEl);\n }\n };\n\n private isHeadingDefined = () =>\n isPropDefined(this.heading) && this.heading !== null;\n\n private hasHeadingAreaContent = (): boolean => {\n return (\n isSlotUsed(this.el, \"heading\") ||\n this.isHeadingDefined() ||\n isSlotUsed(this.el, \"icon\")\n );\n };\n\n render() {\n const { heading, isLoaded, size, theme, truncateHeading } = this;\n\n return (\n <Host\n context-id={this.treeViewId}\n class={{\n [`ic-tree-view-${size}`]: size !== \"medium\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-tree-view-truncate\": truncateHeading,\n }}\n onKeyDown={this.handleKeyDown}\n aria-label={this.isHeadingDefined() ? heading : null}\n >\n {this.hasHeadingAreaContent() && (\n <div class=\"heading-area-container\">\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography\n variant=\"subtitle-large\"\n class={{\n \"tree-view-header\": true,\n \"with-padding\": this.truncateHeading && !isLoaded,\n }}\n >\n {isSlotUsed(this.el, \"heading\") ? (\n <slot name=\"heading\" />\n ) : (\n heading\n )}\n </ic-typography>\n </div>\n )}\n\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-tree-view.js","mappings":"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","names":[],"sources":["src/components/ic-tree-view/ic-tree-view.css?tag=ic-tree-view&encapsulation=shadow","src/components/ic-tree-view/ic-tree-view.tsx"],"sourcesContent":["/**\n* @prop --tree-view-width: Width of the tree view\n*/\n\n:host {\n display: block;\n width: var(--tree-view-width, 100%);\n background-color: var(--ic-tree-view-background);\n}\n\n:host .heading-area-container {\n border-bottom: var(--ic-space-1px) solid var(--ic-tree-view-divider);\n display: flex;\n align-items: center;\n min-height: calc(\n var(--ic-space-xl) + var(--ic-space-xs) - var(--ic-space-1px)\n );\n padding: 0 var(--ic-space-xs);\n\n --ic-typography-color: var(--ic-tree-view-text);\n}\n\n:host(.ic-tree-view-small) .heading-area-container {\n min-height: calc(var(--ic-space-xl) - var(--ic-space-1px));\n}\n\n:host(.ic-tree-view-large) .heading-area-container {\n min-height: calc(var(--ic-space-xxl) - var(--ic-space-1px));\n}\n\n:host(.ic-tree-view-truncate) .heading-area-container {\n height: calc(var(--ic-space-xl) + var(--ic-space-xs) - var(--ic-space-1px));\n}\n\n:host(.ic-tree-view-truncate.ic-tree-view-small) .heading-area-container {\n height: calc(var(--ic-space-xl) - var(--ic-space-1px));\n}\n\n:host(.ic-tree-view-truncate.ic-tree-view-large) .heading-area-container {\n height: calc(var(--ic-space-xxl) - var(--ic-space-1px));\n}\n\n.icon-container {\n width: var(--ic-space-lg);\n min-width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n margin: 0 var(--ic-space-xs) 0 0;\n}\n\n:host(.ic-tree-view-small) .icon-container {\n margin: 0 var(--ic-space-xxs) 0 0;\n}\n\n.ic-text-overflow {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.ic-tooltip-overflow {\n overflow: hidden;\n}\n\n/* Ensures truncation works - accounts for text width increase as component hydrates */\n.tree-view-header.with-padding {\n padding-right: var(--ic-space-xs);\n}\n\n.tree-items-container-hidden {\n visibility: hidden;\n}\n\n::slotted([slot=\"icon\"]) {\n fill: var(--ic-tree-view-icon);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n ::slotted([slot=\"icon\"]) {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n h,\n Prop,\n Element,\n Host,\n Watch,\n State,\n Listen,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\nimport {\n checkResizeObserver,\n DEVICE_SIZES,\n getCurrentDeviceSize,\n isPropDefined,\n isSlotUsed,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport { sanitizeHTMLIconString } from \"../../../../web-components/src/utils/common-helpers\";\nimport { IcTreeItemOptions } from \"./ic-tree-view.types\";\n\nlet treeViewIds = 0;\n\n/**\n * @slot heading - Content is set as the tree view heading.\n * @slot icon - Content is placed to the left of the heading.\n */\n\n@Component({\n tag: \"ic-tree-view\",\n styleUrl: \"ic-tree-view.css\",\n shadow: true,\n})\nexport class TreeView {\n private treeViewId = `ic-tree-view-${treeViewIds++}`;\n private treeItemTag = \"IC-TREE-ITEM\";\n private hostMutationObserver: MutationObserver | null = null;\n private isLoaded = false;\n private resizeObserver: ResizeObserver | null = null;\n private TOOLTIP = \"ic-tooltip\";\n\n private previousTruncateHeading: boolean = false;\n private previousTruncateTreeItems: boolean = false;\n\n @Element() el: HTMLIcTreeViewElement;\n\n @State() smallDevice: boolean = false;\n @Watch(\"smallDevice\")\n watchSmallDeviceHandler(): void {\n if (this.smallDevice) {\n this.previousTruncateHeading = this.truncateHeading;\n this.previousTruncateTreeItems = this.truncateTreeItems;\n this.removeTruncation();\n } else {\n this.truncateHeading = this.previousTruncateHeading;\n this.truncateTreeItems = this.previousTruncateTreeItems;\n }\n }\n\n @State() treeItems: HTMLIcTreeItemElement[];\n\n /**\n * The heading of the tree view.\n */\n @Prop() heading: string = \"\";\n\n /**\n * The size of the tree view.\n */\n @Prop() size?: IcSizes = \"medium\";\n @Watch(\"size\")\n watchSizeHandler(): void {\n this.treeItems.forEach((treeItem) => {\n treeItem.size = this.size;\n });\n }\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n @Watch(\"theme\")\n watchThemeHandler(): void {\n this.treeItems.forEach((treeItem) => {\n treeItem.theme = this.theme;\n });\n }\n\n /**\n * The content within the tree view tree items. This will take precedence over slotted content.\n * */\n @Prop() treeItemData: IcTreeItemOptions[] = [];\n @Watch(\"treeItemData\")\n watchTreeItemOptionsHandler(): void {\n this.setTreeItems();\n }\n\n /**\n * If `true`, the tree view heading will be truncated instead of text wrapping.\n * When used on small devices, this prop will be overridden and headings will be set to text-wrap.\n */\n @Prop({ mutable: true }) truncateHeading: boolean = false;\n\n /**\n * If `true`, tree items will be truncated, unless they are individually overridden.\n * When used on small devices, this prop will be overridden and tree-items will be set to text-wrap.\n */\n @Prop({ mutable: true }) truncateTreeItems: boolean = false;\n @Watch(\"truncateTreeItems\")\n watchTruncateTreeItemsHandler(): void {\n this.treeItems.forEach((treeItem) => {\n if (this.smallDevice) {\n treeItem.previousTruncateTreeItem = treeItem.truncateTreeItem;\n treeItem.truncateTreeItem = this.truncateTreeItems;\n } else {\n treeItem.truncateTreeItem = treeItem.previousTruncateTreeItem;\n }\n });\n }\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n this.resizeObserver?.disconnect();\n }\n componentWillLoad(): void {\n this.setTreeItems();\n\n this.previousTruncateHeading = this.truncateHeading;\n this.previousTruncateTreeItems = this.truncateTreeItems;\n\n checkResizeObserver(this.runResizeObserver);\n\n this.watchSizeHandler();\n this.watchThemeHandler();\n this.treeItems.forEach((treeItem) => {\n if (treeItem.truncateTreeItem === undefined) {\n treeItem.truncateTreeItem = this.truncateTreeItems;\n }\n });\n }\n\n componentDidRender(): void {\n this.truncateHeading\n ? this.truncateTreeViewHeading()\n : this.removeHeadingTruncation();\n }\n\n componentDidLoad(): void {\n this.createMutationObserver();\n\n this.isLoaded = true;\n }\n\n @Listen(\"icTreeItemSelected\")\n handleTreeItemSelected(event: CustomEvent): void {\n this.treeItems.forEach((treeItem) => {\n if (treeItem.selected && treeItem.id !== event.detail.id) {\n treeItem.selected = false;\n }\n });\n }\n\n private hostMutationCallback = (mutationList: MutationRecord[]) => {\n this.hostMutationObserver?.disconnect();\n renderDynamicChildSlots(mutationList, \"icon\", this);\n this.setTreeItems();\n this.createMutationObserver();\n };\n\n private createMutationObserver = () => {\n this.hostMutationObserver = new MutationObserver((mutationList) => {\n this.hostMutationCallback(mutationList);\n });\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n subtree: true,\n });\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const isSmallDevice = getCurrentDeviceSize() <= DEVICE_SIZES.S;\n if (this.smallDevice !== isSmallDevice) this.smallDevice = isSmallDevice;\n });\n\n this.resizeObserver.observe(document.body);\n };\n\n private removeTruncation = (): void => {\n this.truncateHeading = false;\n this.truncateTreeItems = false;\n };\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n const focussedChild = this.treeItems.indexOf(\n this.treeItems.filter((el) => el === document.activeElement)[0]\n );\n const expanded = this.treeItems[focussedChild]?.expanded;\n switch (event.key) {\n case \"ArrowDown\":\n this.treeItems[\n this.getNextItemToSelect(focussedChild, true)\n ].setFocus();\n if (focussedChild !== this.treeItems.length - 1) {\n event.preventDefault();\n }\n break;\n case \"ArrowUp\":\n this.treeItems[\n this.getNextItemToSelect(focussedChild, false)\n ].setFocus();\n if (focussedChild !== 0) {\n event.preventDefault();\n }\n break;\n case \"ArrowRight\":\n if (this.treeItems[focussedChild].isParent && !expanded) {\n this.treeItems[focussedChild].expanded = true;\n this.treeItems[focussedChild].hasParentExpanded = true;\n this.treeItems[focussedChild].updateAriaLabel();\n } else if (this.treeItems[focussedChild].isParent && expanded) {\n (\n this.treeItems[focussedChild].children[0] as HTMLIcTreeItemElement\n ).setFocus();\n }\n event.preventDefault();\n break;\n case \"ArrowLeft\":\n if (this.treeItems[focussedChild].isParent && expanded) {\n this.treeItems[focussedChild].expanded = false;\n this.treeItems[focussedChild].hasParentExpanded = false;\n this.treeItems[focussedChild].updateAriaLabel();\n } else if (\n this.treeItems[focussedChild].parentElement?.tagName ===\n this.treeItemTag\n ) {\n (\n this.treeItems[focussedChild].parentElement as HTMLIcTreeItemElement\n ).setFocus();\n }\n event.preventDefault();\n break;\n }\n };\n\n private getNextItemToSelect = (\n currentItem: number,\n movingDown: boolean\n ): number => {\n const numItems = this.treeItems.length - 1;\n\n if (currentItem < 1) {\n currentItem = 0;\n }\n\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n if (nextItem < 0) {\n nextItem = 0;\n } else if (nextItem > numItems) {\n nextItem = numItems;\n }\n\n const maxAttempts = numItems + 1;\n let attempts = 0;\n\n while (attempts < maxAttempts) {\n if (nextItem < 0 || nextItem > numItems) {\n return currentItem;\n }\n\n if (\n this.treeItems[nextItem].parentElement?.tagName !== this.treeItemTag ||\n ((this.treeItems[nextItem].parentElement as HTMLIcTreeItemElement)\n .expanded &&\n this.treeItems[nextItem].offsetHeight > 0)\n ) {\n return nextItem;\n }\n\n if (nextItem === numItems && this.treeItems[nextItem].disabled) {\n return currentItem;\n }\n\n nextItem = movingDown ? nextItem + 1 : nextItem - 1;\n attempts++;\n }\n\n return currentItem;\n };\n\n private linkTreeItems = () => {\n this.treeItems.forEach((treeItem) => {\n treeItem.setAttribute(\"context-id\", this.treeViewId);\n });\n };\n\n private setTreeItems = () => {\n this.treeItems = this.getAllTreeItems(this.el as HTMLElement);\n\n this.linkTreeItems();\n };\n\n private getAllTreeItems(element: HTMLElement): HTMLIcTreeItemElement[] {\n const treeItems: HTMLIcTreeItemElement[] = [];\n\n const collectTreeItemsFromSlottedContent = (el: HTMLElement) => {\n Array.from(el.children).forEach((child) => {\n if (child.tagName === this.treeItemTag) {\n treeItems.push(child as HTMLIcTreeItemElement);\n }\n\n collectTreeItemsFromSlottedContent(child as HTMLElement);\n });\n };\n\n const collectTreeItemsFromData = (\n items: IcTreeItemOptions[],\n parentElement: HTMLElement\n ) => {\n Array.from(parentElement.children).forEach((child) => {\n if (child.tagName === this.treeItemTag) {\n parentElement.removeChild(child);\n }\n });\n\n items.forEach((item) => {\n const treeItem = document.createElement(\n this.treeItemTag\n ) as HTMLIcTreeItemElement;\n const { children, icon, ...props } = item;\n Object.assign(treeItem, props);\n\n if (icon) {\n const iconSlot = document.createElement(\"div\");\n iconSlot.setAttribute(\"slot\", \"icon\");\n iconSlot.innerHTML = sanitizeHTMLIconString(icon);\n treeItem.appendChild(iconSlot);\n }\n\n parentElement.appendChild(treeItem);\n treeItems.push(treeItem);\n\n if (children && children.length > 0) {\n collectTreeItemsFromData(children, treeItem);\n }\n });\n };\n\n if (this.treeItemData.length > 0) {\n collectTreeItemsFromData(this.treeItemData, element);\n } else {\n collectTreeItemsFromSlottedContent(element);\n }\n\n return treeItems;\n }\n\n private truncateTreeViewHeading = () => {\n const typographyEl =\n this.el.shadowRoot?.querySelector<HTMLIcTypographyElement>(\n \".tree-view-header\"\n );\n const tooltip = typographyEl?.closest(this.TOOLTIP);\n const headingContainer = this.el.shadowRoot?.querySelector<HTMLElement>(\n \".heading-area-container\"\n );\n\n if (\n typographyEl &&\n headingContainer &&\n typographyEl.scrollHeight > headingContainer.clientHeight\n ) {\n typographyEl.classList.add(\"ic-text-overflow\");\n\n if (!tooltip) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", this.el.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent!);\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n tooltipEl.setAttribute(\"placement\", \"right\");\n headingContainer.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n }\n };\n\n private removeHeadingTruncation = () => {\n const typographyEl =\n this.el.shadowRoot?.querySelector<HTMLIcTypographyElement>(\n \".tree-view-header\"\n );\n const tooltipEl = typographyEl?.closest<HTMLIcTooltipElement>(this.TOOLTIP);\n\n if (tooltipEl && typographyEl) {\n typographyEl.classList.remove(\"ic-text-overflow\");\n this.el.shadowRoot\n ?.querySelector(\".heading-area-container\")\n ?.replaceChild(typographyEl, tooltipEl);\n }\n };\n\n private isHeadingDefined = () =>\n isPropDefined(this.heading) && this.heading !== null;\n\n private hasHeadingAreaContent = (): boolean => {\n return (\n isSlotUsed(this.el, \"heading\") ||\n this.isHeadingDefined() ||\n isSlotUsed(this.el, \"icon\")\n );\n };\n\n render() {\n const { heading, isLoaded, size, theme, truncateHeading } = this;\n\n return (\n <Host\n context-id={this.treeViewId}\n class={{\n [`ic-tree-view-${size}`]: size !== \"medium\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-tree-view-truncate\": truncateHeading,\n }}\n onKeyDown={this.handleKeyDown}\n aria-label={this.isHeadingDefined() ? heading : null}\n >\n {this.hasHeadingAreaContent() && (\n <div class=\"heading-area-container\">\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography\n variant=\"subtitle-large\"\n class={{\n \"tree-view-header\": true,\n \"with-padding\": this.truncateHeading && !isLoaded,\n }}\n >\n {isSlotUsed(this.el, \"heading\") ? (\n <slot name=\"heading\" />\n ) : (\n heading\n )}\n </ic-typography>\n </div>\n )}\n\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}