@ukic/canary-web-components 2.0.0-canary.36 → 2.0.0-canary.37

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 (287) hide show
  1. package/dist/cjs/ic-card.cjs.entry.js +1 -1
  2. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ic-checkbox.cjs.entry.js +1 -1
  4. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-data-table.cjs.entry.js +5 -5
  8. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-date-input.cjs.entry.js +6 -0
  10. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-dialog.cjs.entry.js +20 -5
  12. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-empty-state_2.cjs.entry.js +17 -7
  14. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-menu.cjs.entry.js +1 -1
  18. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-pagination_4.cjs.entry.js +1 -1
  20. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  22. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-radio-group.cjs.entry.js +2 -1
  24. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-tree-item.cjs.entry.js +8 -0
  26. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-tree-view.cjs.entry.js +15 -8
  28. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  29. package/dist/collection/components/ic-data-table/ic-data-table.css +19 -2
  30. package/dist/collection/components/ic-data-table/ic-data-table.js +4 -4
  31. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  32. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  33. package/dist/collection/components/ic-data-table/story-data.js +35 -0
  34. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  35. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.css +6 -6
  36. package/dist/collection/components/ic-date-input/ic-date-input.js +6 -0
  37. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  38. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +17 -7
  39. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  40. package/dist/collection/components/ic-tree-item/ic-tree-item.js +8 -0
  41. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  42. package/dist/collection/components/ic-tree-view/ic-tree-view.css +4 -0
  43. package/dist/collection/components/ic-tree-view/ic-tree-view.js +14 -7
  44. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  45. package/dist/components/helpers.js +1 -1
  46. package/dist/components/ic-card.js +1 -1
  47. package/dist/components/ic-card.js.map +1 -1
  48. package/dist/components/ic-checkbox.js +1 -1
  49. package/dist/components/ic-checkbox.js.map +1 -1
  50. package/dist/components/ic-data-table-title-bar.js +1 -1
  51. package/dist/components/ic-data-table-title-bar.js.map +1 -1
  52. package/dist/components/ic-data-table.js +5 -5
  53. package/dist/components/ic-data-table.js.map +1 -1
  54. package/dist/components/ic-date-input2.js +6 -0
  55. package/dist/components/ic-date-input2.js.map +1 -1
  56. package/dist/components/ic-dialog.js +21 -6
  57. package/dist/components/ic-dialog.js.map +1 -1
  58. package/dist/components/ic-footer.js +1 -1
  59. package/dist/components/ic-horizontal-scroll2.js +1 -1
  60. package/dist/components/ic-link2.js +1 -1
  61. package/dist/components/ic-link2.js.map +1 -1
  62. package/dist/components/ic-menu2.js +1 -1
  63. package/dist/components/ic-menu2.js.map +1 -1
  64. package/dist/components/ic-pagination-bar2.js +17 -7
  65. package/dist/components/ic-pagination-bar2.js.map +1 -1
  66. package/dist/components/ic-popover-menu.js +2 -2
  67. package/dist/components/ic-popover-menu.js.map +1 -1
  68. package/dist/components/ic-radio-group.js +2 -1
  69. package/dist/components/ic-radio-group.js.map +1 -1
  70. package/dist/components/ic-select2.js +1 -1
  71. package/dist/components/ic-select2.js.map +1 -1
  72. package/dist/components/ic-side-navigation.js +1 -1
  73. package/dist/components/ic-tree-item.js +8 -0
  74. package/dist/components/ic-tree-item.js.map +1 -1
  75. package/dist/components/ic-tree-view.js +15 -8
  76. package/dist/components/ic-tree-view.js.map +1 -1
  77. package/dist/core/core.esm.js +1 -1
  78. package/dist/core/{p-20241d58.entry.js → p-074e64d0.entry.js} +2 -2
  79. package/dist/core/{p-26aeefc3.entry.js → p-0f1706e8.entry.js} +2 -2
  80. package/dist/core/{p-d1e0479c.entry.js → p-11877d23.entry.js} +2 -2
  81. package/dist/core/{p-ba353ac3.entry.js → p-1e450833.entry.js} +2 -2
  82. package/dist/core/{p-f4b76daa.entry.js → p-23408776.entry.js} +2 -2
  83. package/dist/core/{p-758f03e8.entry.js → p-2d44b81a.entry.js} +2 -2
  84. package/dist/core/{p-a3d903e4.entry.js → p-2ea7af8b.entry.js} +2 -2
  85. package/dist/core/{p-f2bb3c93.entry.js → p-38f329ab.entry.js} +2 -2
  86. package/dist/core/{p-844fb240.entry.js → p-3cd2056f.entry.js} +2 -2
  87. package/dist/core/p-3d00ad9e.entry.js +2 -0
  88. package/dist/core/p-3d00ad9e.entry.js.map +1 -0
  89. package/dist/core/{p-c0242c21.entry.js → p-44680720.entry.js} +2 -2
  90. package/dist/core/{p-3169d95e.entry.js → p-487fd924.entry.js} +2 -2
  91. package/dist/core/p-56db5123.entry.js +2 -0
  92. package/dist/core/p-56db5123.entry.js.map +1 -0
  93. package/dist/core/{p-9c80c37d.entry.js → p-58331a86.entry.js} +2 -2
  94. package/dist/core/p-5a90eaa8.entry.js +2 -0
  95. package/dist/core/p-5a90eaa8.entry.js.map +1 -0
  96. package/dist/core/{p-a4088bd7.entry.js → p-656378ba.entry.js} +2 -2
  97. package/dist/core/{p-d171c71d.entry.js → p-6cdf5de2.entry.js} +2 -2
  98. package/dist/core/{p-dd550e9b.entry.js → p-70ad364c.entry.js} +2 -2
  99. package/dist/core/{p-c1b268fd.entry.js → p-70c659ec.entry.js} +2 -2
  100. package/dist/core/{p-124279fa.entry.js → p-71bbb583.entry.js} +2 -2
  101. package/dist/core/p-74b42302.entry.js +2 -0
  102. package/dist/core/p-74b42302.entry.js.map +1 -0
  103. package/dist/core/p-75bd12f8.entry.js +2 -0
  104. package/dist/core/p-75bd12f8.entry.js.map +1 -0
  105. package/dist/core/{p-03d83d2c.entry.js → p-780294b8.entry.js} +2 -2
  106. package/dist/core/{p-382b88b2.entry.js → p-7edc19be.entry.js} +2 -2
  107. package/dist/core/{p-9c9147fa.entry.js → p-89112e37.entry.js} +2 -2
  108. package/dist/core/p-89112e37.entry.js.map +1 -0
  109. package/dist/core/p-8ced1495.entry.js +2 -0
  110. package/dist/core/p-8ced1495.entry.js.map +1 -0
  111. package/dist/core/{p-8c2c86b5.entry.js → p-95545b4c.entry.js} +2 -2
  112. package/dist/core/{p-b02ad2c4.entry.js → p-95d057b8.entry.js} +2 -2
  113. package/dist/core/{p-9adb2a49.entry.js → p-987cd821.entry.js} +2 -2
  114. package/dist/core/p-987cd821.entry.js.map +1 -0
  115. package/dist/core/{p-29a040ef.entry.js → p-9b386822.entry.js} +2 -2
  116. package/dist/core/{p-a6fb5fe3.entry.js → p-9bbe221f.entry.js} +2 -2
  117. package/dist/core/{p-deedc7d3.entry.js → p-9f58998d.entry.js} +2 -2
  118. package/dist/core/p-ab311c2e.entry.js +2 -0
  119. package/dist/core/p-ab311c2e.entry.js.map +1 -0
  120. package/dist/core/{p-72a584f4.entry.js → p-ac8090a5.entry.js} +2 -2
  121. package/dist/core/p-b4f824a6.entry.js +2 -0
  122. package/dist/core/p-b4f824a6.entry.js.map +1 -0
  123. package/dist/core/{p-95871655.entry.js → p-bc350ec5.entry.js} +2 -2
  124. package/dist/core/{p-5f71f24c.entry.js → p-bede1b52.entry.js} +2 -2
  125. package/dist/core/{p-da506987.js → p-bf06977d.js} +2 -2
  126. package/dist/core/{p-ff35dcea.entry.js → p-c0a2a040.entry.js} +2 -2
  127. package/dist/core/{p-ff35dcea.entry.js.map → p-c0a2a040.entry.js.map} +1 -1
  128. package/dist/core/{p-3a2523df.entry.js → p-c41d12e6.entry.js} +2 -2
  129. package/dist/core/p-c41d12e6.entry.js.map +1 -0
  130. package/dist/core/{p-3b1c88ad.entry.js → p-c7261d64.entry.js} +2 -2
  131. package/dist/core/{p-3e7b08c7.entry.js → p-c97463bc.entry.js} +2 -2
  132. package/dist/core/{p-aabb04c8.entry.js → p-ccc37027.entry.js} +2 -2
  133. package/dist/core/{p-12a5b481.entry.js → p-d0020f6f.entry.js} +2 -2
  134. package/dist/core/{p-e85505ec.entry.js → p-d1045cd5.entry.js} +2 -2
  135. package/dist/core/{p-9cd73369.entry.js → p-d921dc2c.entry.js} +2 -2
  136. package/dist/core/{p-34de5ffb.entry.js → p-da398a5d.entry.js} +2 -2
  137. package/dist/core/{p-8ef60479.entry.js → p-db5af9f7.entry.js} +2 -2
  138. package/dist/core/p-dd4c83ad.entry.js +2 -0
  139. package/dist/core/p-dd4c83ad.entry.js.map +1 -0
  140. package/dist/core/{p-0c7d30f5.entry.js → p-e218db1e.entry.js} +2 -2
  141. package/dist/core/p-e362b5f3.entry.js +2 -0
  142. package/dist/core/p-e362b5f3.entry.js.map +1 -0
  143. package/dist/core/{p-bc24c004.entry.js → p-e89c2feb.entry.js} +2 -2
  144. package/dist/core/{p-e7b913e5.entry.js → p-eaeaa096.entry.js} +2 -2
  145. package/dist/core/{p-d2260763.entry.js → p-f5dfcf4f.entry.js} +2 -2
  146. package/dist/core/{p-1c0bbd2a.entry.js → p-fe105ed0.entry.js} +2 -2
  147. package/dist/esm/{helpers-031e266e.js → helpers-cd64688a.js} +2 -2
  148. package/dist/esm/{helpers-031e266e.js.map → helpers-cd64688a.js.map} +1 -1
  149. package/dist/esm/ic-accordion-group.entry.js +1 -1
  150. package/dist/esm/ic-accordion.entry.js +1 -1
  151. package/dist/esm/ic-alert.entry.js +1 -1
  152. package/dist/esm/ic-back-to-top.entry.js +1 -1
  153. package/dist/esm/ic-badge.entry.js +1 -1
  154. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  155. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  156. package/dist/esm/ic-button_3.entry.js +1 -1
  157. package/dist/esm/ic-card.entry.js +2 -2
  158. package/dist/esm/ic-card.entry.js.map +1 -1
  159. package/dist/esm/ic-checkbox-group.entry.js +1 -1
  160. package/dist/esm/ic-checkbox.entry.js +2 -2
  161. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  162. package/dist/esm/ic-chip.entry.js +1 -1
  163. package/dist/esm/ic-data-row.entry.js +1 -1
  164. package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
  165. package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -1
  166. package/dist/esm/ic-data-table.entry.js +5 -5
  167. package/dist/esm/ic-data-table.entry.js.map +1 -1
  168. package/dist/esm/ic-date-input.entry.js +6 -0
  169. package/dist/esm/ic-date-input.entry.js.map +1 -1
  170. package/dist/esm/ic-dialog.entry.js +21 -6
  171. package/dist/esm/ic-dialog.entry.js.map +1 -1
  172. package/dist/esm/ic-divider.entry.js +1 -1
  173. package/dist/esm/ic-empty-state_2.entry.js +18 -8
  174. package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
  175. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  176. package/dist/esm/ic-footer-link.entry.js +1 -1
  177. package/dist/esm/ic-footer.entry.js +1 -1
  178. package/dist/esm/ic-hero.entry.js +1 -1
  179. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  180. package/dist/esm/ic-input-component-container_4.entry.js +1 -1
  181. package/dist/esm/ic-link.entry.js +2 -2
  182. package/dist/esm/ic-link.entry.js.map +1 -1
  183. package/dist/esm/ic-menu-group.entry.js +1 -1
  184. package/dist/esm/ic-menu-item.entry.js +1 -1
  185. package/dist/esm/ic-menu.entry.js +2 -2
  186. package/dist/esm/ic-menu.entry.js.map +1 -1
  187. package/dist/esm/ic-navigation-button.entry.js +1 -1
  188. package/dist/esm/ic-navigation-group.entry.js +1 -1
  189. package/dist/esm/ic-navigation-item.entry.js +1 -1
  190. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  191. package/dist/esm/ic-page-header.entry.js +1 -1
  192. package/dist/esm/ic-pagination_4.entry.js +2 -2
  193. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  194. package/dist/esm/ic-popover-menu.entry.js +2 -2
  195. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  196. package/dist/esm/ic-radio-group.entry.js +3 -2
  197. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  198. package/dist/esm/ic-radio-option.entry.js +1 -1
  199. package/dist/esm/ic-search-bar.entry.js +1 -1
  200. package/dist/esm/ic-side-navigation.entry.js +1 -1
  201. package/dist/esm/ic-status-tag.entry.js +1 -1
  202. package/dist/esm/ic-step.entry.js +1 -1
  203. package/dist/esm/ic-stepper.entry.js +1 -1
  204. package/dist/esm/ic-switch.entry.js +1 -1
  205. package/dist/esm/ic-tab-group.entry.js +1 -1
  206. package/dist/esm/ic-tab.entry.js +1 -1
  207. package/dist/esm/ic-theme.entry.js +1 -1
  208. package/dist/esm/ic-toast.entry.js +1 -1
  209. package/dist/esm/ic-toggle-button-group.entry.js +1 -1
  210. package/dist/esm/ic-toggle-button.entry.js +1 -1
  211. package/dist/esm/ic-top-navigation.entry.js +1 -1
  212. package/dist/esm/ic-tree-item.entry.js +8 -0
  213. package/dist/esm/ic-tree-item.entry.js.map +1 -1
  214. package/dist/esm/ic-tree-view.entry.js +15 -8
  215. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  216. package/dist/esm/ic-typography.entry.js +1 -1
  217. package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +1 -0
  218. package/dist/types/components/ic-data-table/story-data.d.ts +2 -0
  219. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +1 -0
  220. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +1 -0
  221. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +3 -0
  222. package/hydrate/index.js +80 -33
  223. package/package.json +3 -3
  224. package/dist/core/p-03a99326.entry.js +0 -2
  225. package/dist/core/p-03a99326.entry.js.map +0 -1
  226. package/dist/core/p-080ebc66.entry.js +0 -2
  227. package/dist/core/p-080ebc66.entry.js.map +0 -1
  228. package/dist/core/p-3a2523df.entry.js.map +0 -1
  229. package/dist/core/p-4476d3b0.entry.js +0 -2
  230. package/dist/core/p-4476d3b0.entry.js.map +0 -1
  231. package/dist/core/p-48618a18.entry.js +0 -2
  232. package/dist/core/p-48618a18.entry.js.map +0 -1
  233. package/dist/core/p-4960c603.entry.js +0 -2
  234. package/dist/core/p-4960c603.entry.js.map +0 -1
  235. package/dist/core/p-7565b23c.entry.js +0 -2
  236. package/dist/core/p-7565b23c.entry.js.map +0 -1
  237. package/dist/core/p-7bba4c47.entry.js +0 -2
  238. package/dist/core/p-7bba4c47.entry.js.map +0 -1
  239. package/dist/core/p-7e909871.entry.js +0 -2
  240. package/dist/core/p-7e909871.entry.js.map +0 -1
  241. package/dist/core/p-9adb2a49.entry.js.map +0 -1
  242. package/dist/core/p-9c9147fa.entry.js.map +0 -1
  243. package/dist/core/p-b68d6867.entry.js +0 -2
  244. package/dist/core/p-b68d6867.entry.js.map +0 -1
  245. package/dist/core/p-e447ed5c.entry.js +0 -2
  246. package/dist/core/p-e447ed5c.entry.js.map +0 -1
  247. /package/dist/core/{p-20241d58.entry.js.map → p-074e64d0.entry.js.map} +0 -0
  248. /package/dist/core/{p-26aeefc3.entry.js.map → p-0f1706e8.entry.js.map} +0 -0
  249. /package/dist/core/{p-d1e0479c.entry.js.map → p-11877d23.entry.js.map} +0 -0
  250. /package/dist/core/{p-ba353ac3.entry.js.map → p-1e450833.entry.js.map} +0 -0
  251. /package/dist/core/{p-f4b76daa.entry.js.map → p-23408776.entry.js.map} +0 -0
  252. /package/dist/core/{p-758f03e8.entry.js.map → p-2d44b81a.entry.js.map} +0 -0
  253. /package/dist/core/{p-a3d903e4.entry.js.map → p-2ea7af8b.entry.js.map} +0 -0
  254. /package/dist/core/{p-f2bb3c93.entry.js.map → p-38f329ab.entry.js.map} +0 -0
  255. /package/dist/core/{p-844fb240.entry.js.map → p-3cd2056f.entry.js.map} +0 -0
  256. /package/dist/core/{p-c0242c21.entry.js.map → p-44680720.entry.js.map} +0 -0
  257. /package/dist/core/{p-3169d95e.entry.js.map → p-487fd924.entry.js.map} +0 -0
  258. /package/dist/core/{p-9c80c37d.entry.js.map → p-58331a86.entry.js.map} +0 -0
  259. /package/dist/core/{p-a4088bd7.entry.js.map → p-656378ba.entry.js.map} +0 -0
  260. /package/dist/core/{p-d171c71d.entry.js.map → p-6cdf5de2.entry.js.map} +0 -0
  261. /package/dist/core/{p-dd550e9b.entry.js.map → p-70ad364c.entry.js.map} +0 -0
  262. /package/dist/core/{p-c1b268fd.entry.js.map → p-70c659ec.entry.js.map} +0 -0
  263. /package/dist/core/{p-124279fa.entry.js.map → p-71bbb583.entry.js.map} +0 -0
  264. /package/dist/core/{p-03d83d2c.entry.js.map → p-780294b8.entry.js.map} +0 -0
  265. /package/dist/core/{p-382b88b2.entry.js.map → p-7edc19be.entry.js.map} +0 -0
  266. /package/dist/core/{p-8c2c86b5.entry.js.map → p-95545b4c.entry.js.map} +0 -0
  267. /package/dist/core/{p-b02ad2c4.entry.js.map → p-95d057b8.entry.js.map} +0 -0
  268. /package/dist/core/{p-29a040ef.entry.js.map → p-9b386822.entry.js.map} +0 -0
  269. /package/dist/core/{p-a6fb5fe3.entry.js.map → p-9bbe221f.entry.js.map} +0 -0
  270. /package/dist/core/{p-deedc7d3.entry.js.map → p-9f58998d.entry.js.map} +0 -0
  271. /package/dist/core/{p-72a584f4.entry.js.map → p-ac8090a5.entry.js.map} +0 -0
  272. /package/dist/core/{p-95871655.entry.js.map → p-bc350ec5.entry.js.map} +0 -0
  273. /package/dist/core/{p-5f71f24c.entry.js.map → p-bede1b52.entry.js.map} +0 -0
  274. /package/dist/core/{p-da506987.js.map → p-bf06977d.js.map} +0 -0
  275. /package/dist/core/{p-3b1c88ad.entry.js.map → p-c7261d64.entry.js.map} +0 -0
  276. /package/dist/core/{p-3e7b08c7.entry.js.map → p-c97463bc.entry.js.map} +0 -0
  277. /package/dist/core/{p-aabb04c8.entry.js.map → p-ccc37027.entry.js.map} +0 -0
  278. /package/dist/core/{p-12a5b481.entry.js.map → p-d0020f6f.entry.js.map} +0 -0
  279. /package/dist/core/{p-e85505ec.entry.js.map → p-d1045cd5.entry.js.map} +0 -0
  280. /package/dist/core/{p-9cd73369.entry.js.map → p-d921dc2c.entry.js.map} +0 -0
  281. /package/dist/core/{p-34de5ffb.entry.js.map → p-da398a5d.entry.js.map} +0 -0
  282. /package/dist/core/{p-8ef60479.entry.js.map → p-db5af9f7.entry.js.map} +0 -0
  283. /package/dist/core/{p-0c7d30f5.entry.js.map → p-e218db1e.entry.js.map} +0 -0
  284. /package/dist/core/{p-bc24c004.entry.js.map → p-e89c2feb.entry.js.map} +0 -0
  285. /package/dist/core/{p-e7b913e5.entry.js.map → p-eaeaa096.entry.js.map} +0 -0
  286. /package/dist/core/{p-d2260763.entry.js.map → p-f5dfcf4f.entry.js.map} +0 -0
  287. /package/dist/core/{p-1c0bbd2a.entry.js.map → p-fe105ed0.entry.js.map} +0 -0
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-4cf27b16.js');
6
6
  const helpers = require('./helpers-951fb33a.js');
7
7
 
8
- const icTreeViewCss = ":host{display:block;width:var(--tree-view-width, 100%)}:host .heading-area-container{border-bottom:var(--ic-border-default);display:flex;align-items:center;min-height:calc(\n var(--ic-space-xl) + var(--ic-space-xs) - var(--ic-space-1px)\n );padding:0 var(--ic-space-xs)}:host(.ic-tree-view-small) .heading-area-container{min-height:calc(var(--ic-space-xl) - var(--ic-space-1px))}:host(.ic-tree-view-large) .heading-area-container{min-height:calc(var(--ic-space-xxl) - var(--ic-space-1px))}:host(.ic-tree-view-truncate) .heading-area-container{height:calc(var(--ic-space-xl) + var(--ic-space-xs) - var(--ic-space-1px))}:host(.ic-tree-view-truncate.ic-tree-view-small) .heading-area-container{height:calc(var(--ic-space-xl) - var(--ic-space-1px))}:host(.ic-tree-view-truncate.ic-tree-view-large) .heading-area-container{height:calc(var(--ic-space-xxl) - var(--ic-space-1px))}:host(.ic-tree-view-light) .heading-area-container{color:var(--ic-architectural-white);fill:var(--ic-architectural-white)}.icon-container{width:var(--ic-space-lg);height:var(--ic-space-lg);margin:0 var(--ic-space-xs) 0 0}:host(.ic-tree-view-small) .icon-container{margin:0 var(--ic-space-xxs) 0 0}.ic-text-overflow{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ic-tooltip-overflow{overflow:hidden}@media (forced-colors: active){::slotted([slot=\"icon\"]){fill:currentcolor}}";
8
+ const icTreeViewCss = ":host{display:block;width:var(--tree-view-width, 100%)}:host .heading-area-container{border-bottom:var(--ic-border-default);display:flex;align-items:center;min-height:calc(\n var(--ic-space-xl) + var(--ic-space-xs) - var(--ic-space-1px)\n );padding:0 var(--ic-space-xs)}:host(.ic-tree-view-small) .heading-area-container{min-height:calc(var(--ic-space-xl) - var(--ic-space-1px))}:host(.ic-tree-view-large) .heading-area-container{min-height:calc(var(--ic-space-xxl) - var(--ic-space-1px))}:host(.ic-tree-view-truncate) .heading-area-container{height:calc(var(--ic-space-xl) + var(--ic-space-xs) - var(--ic-space-1px))}:host(.ic-tree-view-truncate.ic-tree-view-small) .heading-area-container{height:calc(var(--ic-space-xl) - var(--ic-space-1px))}:host(.ic-tree-view-truncate.ic-tree-view-large) .heading-area-container{height:calc(var(--ic-space-xxl) - var(--ic-space-1px))}:host(.ic-tree-view-light) .heading-area-container{color:var(--ic-architectural-white);fill:var(--ic-architectural-white)}.icon-container{width:var(--ic-space-lg);height:var(--ic-space-lg);margin:0 var(--ic-space-xs) 0 0}:host(.ic-tree-view-small) .icon-container{margin:0 var(--ic-space-xxs) 0 0}.ic-text-overflow{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ic-tooltip-overflow{overflow:hidden}.tree-view-header.with-padding{padding-right:var(--ic-space-xs)}@media (forced-colors: active){::slotted([slot=\"icon\"]){fill:currentcolor}}";
9
9
 
10
10
  let treeViewIds = 0;
11
11
  const TreeView = class {
@@ -14,6 +14,7 @@ const TreeView = class {
14
14
  this.treeViewId = `ic-tree-view-${treeViewIds++}`;
15
15
  this.treeItemTag = "IC-TREE-ITEM";
16
16
  this.hostMutationObserver = null;
17
+ this.isLoaded = false;
17
18
  this.handleKeyDown = (event) => {
18
19
  var _a;
19
20
  const focussedChild = this.treeItems.indexOf(this.treeItems.filter((el) => el === document.activeElement)[0]);
@@ -152,19 +153,22 @@ const TreeView = class {
152
153
  (_a = this.el) === null || _a === void 0 ? void 0 : _a.removeEventListener("slotchange", this.setTreeItems);
153
154
  (_b = this.hostMutationObserver) === null || _b === void 0 ? void 0 : _b.disconnect();
154
155
  }
155
- componentDidLoad() {
156
+ componentWillLoad() {
156
157
  this.setTreeItems();
157
158
  this.watchAppearanceHandler();
158
159
  this.watchSizeHandler();
159
160
  this.watchTruncateTreeItemsHandler();
160
- setTimeout(() => {
161
- this.truncateHeading && this.truncateTreeViewHeading();
162
- }, 100);
161
+ }
162
+ componentDidRender() {
163
+ this.truncateHeading && this.truncateTreeViewHeading();
164
+ }
165
+ componentDidLoad() {
163
166
  this.addSlotChangeListener();
164
167
  this.hostMutationObserver = new MutationObserver((mutationList) => helpers.renderDynamicChildSlots(mutationList, "icon", this));
165
168
  this.hostMutationObserver.observe(this.el, {
166
169
  childList: true,
167
170
  });
171
+ this.isLoaded = true;
168
172
  }
169
173
  handleTreeItemSelected(event) {
170
174
  this.treeItems.forEach((treeItem) => {
@@ -187,12 +191,15 @@ const TreeView = class {
187
191
  return treeItems;
188
192
  }
189
193
  render() {
190
- const { appearance, heading, size } = this;
194
+ const { appearance, isLoaded, heading, size, truncateHeading } = this;
191
195
  return (index.h(index.Host, { "context-id": this.treeViewId, class: {
192
196
  [`ic-tree-view-${appearance}`]: true,
193
197
  [`ic-tree-view-${size}`]: size !== "default",
194
- "ic-tree-view-truncate": this.truncateHeading,
195
- }, onKeyDown: this.handleKeyDown, "aria-label": this.isHeadingDefined() ? heading : null }, this.hasHeadingAreaContent() && (index.h("div", { class: "heading-area-container" }, helpers.isSlotUsed(this.el, "icon") && (index.h("div", { class: "icon-container" }, index.h("slot", { name: "icon" }))), index.h("ic-typography", { variant: "subtitle-large", class: "tree-view-header" }, helpers.isSlotUsed(this.el, "heading") ? (index.h("slot", { name: "heading" })) : (heading)))), index.h("slot", null)));
198
+ "ic-tree-view-truncate": truncateHeading,
199
+ }, onKeyDown: this.handleKeyDown, "aria-label": this.isHeadingDefined() ? heading : null }, this.hasHeadingAreaContent() && (index.h("div", { class: "heading-area-container" }, helpers.isSlotUsed(this.el, "icon") && (index.h("div", { class: "icon-container" }, index.h("slot", { name: "icon" }))), index.h("ic-typography", { variant: "subtitle-large", class: {
200
+ "tree-view-header": true,
201
+ "with-padding": truncateHeading && !isLoaded,
202
+ } }, helpers.isSlotUsed(this.el, "heading") ? (index.h("slot", { name: "heading" })) : (heading)))), index.h("slot", null)));
196
203
  }
197
204
  get el() { return index.getElement(this); }
198
205
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"ic-tree-view.entry.cjs.js","mappings":"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","names":["isPropDefined","isSlotUsed","renderDynamicChildSlots","h","Host"],"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}\n\n:host .heading-area-container {\n border-bottom: var(--ic-border-default);\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\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:host(.ic-tree-view-light) .heading-area-container {\n color: var(--ic-architectural-white);\n fill: var(--ic-architectural-white);\n}\n\n.icon-container {\n 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/** 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, IcThemeForegroundNoDefault } from \"../../utils/types\";\nimport {\n isPropDefined,\n isSlotUsed,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\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;\n\n @Element() el: HTMLIcTreeViewElement;\n\n @State() treeItems: HTMLIcTreeItemElement[];\n\n /**\n * The appearance of the tree view, e.g. dark, or light.\n */\n @Prop() appearance?: IcThemeForegroundNoDefault = \"dark\";\n @Watch(\"appearance\")\n watchAppearanceHandler() {\n this.treeItems.forEach((treeItem) => {\n treeItem.appearance = this.appearance;\n });\n }\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 = \"default\";\n @Watch(\"size\")\n watchSizeHandler() {\n this.treeItems.forEach((treeItem) => {\n treeItem.size = this.size;\n });\n }\n\n /**\n * If `true`, the tree view heading will be truncated instead of text wrapping.\n */\n @Prop() truncateHeading?: boolean = false;\n\n /**\n * If `true`, tree items will be truncated, unless they are individually overridden.\n */\n @Prop() truncateTreeItems?: boolean = false;\n @Watch(\"truncateTreeItems\")\n watchTruncateTreeItemsHandler() {\n this.treeItems.forEach((treeItem) => {\n if (treeItem.truncateTreeItem === undefined) {\n treeItem.truncateTreeItem = this.truncateTreeItems;\n }\n });\n }\n\n disconnectedCallback(): void {\n this.el?.removeEventListener(\"slotchange\", this.setTreeItems);\n\n this.hostMutationObserver?.disconnect();\n }\n\n componentDidLoad(): void {\n this.setTreeItems();\n\n this.watchAppearanceHandler();\n this.watchSizeHandler();\n this.watchTruncateTreeItemsHandler();\n setTimeout(() => {\n this.truncateHeading && this.truncateTreeViewHeading();\n }, 100);\n\n this.addSlotChangeListener();\n\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"icon\", this)\n );\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\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 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].disabled &&\n (this.treeItems[nextItem].parentElement.tagName !== this.treeItemTag ||\n (this.treeItems[nextItem].parentElement as HTMLIcTreeItemElement)\n .expanded)\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 collectTreeItems = (el: HTMLElement) => {\n Array.from(el.children).forEach((child) => {\n if (child.tagName === this.treeItemTag) {\n treeItems.push(child as HTMLIcTreeItemElement);\n }\n\n collectTreeItems(child as HTMLElement);\n });\n };\n\n collectTreeItems(element);\n return treeItems;\n }\n\n private addSlotChangeListener = () => {\n this.el.addEventListener(\"slotchange\", this.setTreeItems);\n };\n\n private truncateTreeViewHeading = () => {\n const typographyEl: HTMLIcTypographyElement =\n this.el.shadowRoot.querySelector(\".tree-view-header\");\n const tooltip = typographyEl?.closest(\"ic-tooltip\");\n const headingContainer: HTMLElement = this.el.shadowRoot.querySelector(\n \".heading-area-container\"\n );\n\n if (typographyEl?.scrollHeight > headingContainer?.clientHeight) {\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 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 { appearance, heading, size } = this;\n\n return (\n <Host\n context-id={this.treeViewId}\n class={{\n [`ic-tree-view-${appearance}`]: true,\n [`ic-tree-view-${size}`]: size !== \"default\",\n \"ic-tree-view-truncate\": this.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 variant=\"subtitle-large\" class=\"tree-view-header\">\n {isSlotUsed(this.el, \"heading\") ? (\n <slot name=\"heading\" />\n ) : (\n heading\n )}\n </ic-typography>\n </div>\n )}\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-tree-view.entry.cjs.js","mappings":"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","names":["isPropDefined","isSlotUsed","renderDynamicChildSlots","h","Host"],"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}\n\n:host .heading-area-container {\n border-bottom: var(--ic-border-default);\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\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:host(.ic-tree-view-light) .heading-area-container {\n color: var(--ic-architectural-white);\n fill: var(--ic-architectural-white);\n}\n\n.icon-container {\n 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.tree-view-header.with-padding {\n padding-right: var(--ic-space-xs);\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, IcThemeForegroundNoDefault } from \"../../utils/types\";\nimport {\n isPropDefined,\n isSlotUsed,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\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;\n private isLoaded = false;\n\n @Element() el: HTMLIcTreeViewElement;\n\n @State() treeItems: HTMLIcTreeItemElement[];\n\n /**\n * The appearance of the tree view, e.g. dark, or light.\n */\n @Prop() appearance?: IcThemeForegroundNoDefault = \"dark\";\n @Watch(\"appearance\")\n watchAppearanceHandler() {\n this.treeItems.forEach((treeItem) => {\n treeItem.appearance = this.appearance;\n });\n }\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 = \"default\";\n @Watch(\"size\")\n watchSizeHandler() {\n this.treeItems.forEach((treeItem) => {\n treeItem.size = this.size;\n });\n }\n\n /**\n * If `true`, the tree view heading will be truncated instead of text wrapping.\n */\n @Prop() truncateHeading?: boolean = false;\n\n /**\n * If `true`, tree items will be truncated, unless they are individually overridden.\n */\n @Prop() truncateTreeItems?: boolean = false;\n @Watch(\"truncateTreeItems\")\n watchTruncateTreeItemsHandler() {\n this.treeItems.forEach((treeItem) => {\n if (treeItem.truncateTreeItem === undefined) {\n treeItem.truncateTreeItem = this.truncateTreeItems;\n }\n });\n }\n\n disconnectedCallback(): void {\n this.el?.removeEventListener(\"slotchange\", this.setTreeItems);\n\n this.hostMutationObserver?.disconnect();\n }\n componentWillLoad(): void {\n this.setTreeItems();\n\n this.watchAppearanceHandler();\n this.watchSizeHandler();\n this.watchTruncateTreeItemsHandler();\n }\n\n componentDidRender(): void {\n this.truncateHeading && this.truncateTreeViewHeading();\n }\n\n componentDidLoad(): void {\n this.addSlotChangeListener();\n\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"icon\", this)\n );\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\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 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].disabled &&\n (this.treeItems[nextItem].parentElement.tagName !== this.treeItemTag ||\n (this.treeItems[nextItem].parentElement as HTMLIcTreeItemElement)\n .expanded)\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 collectTreeItems = (el: HTMLElement) => {\n Array.from(el.children).forEach((child) => {\n if (child.tagName === this.treeItemTag) {\n treeItems.push(child as HTMLIcTreeItemElement);\n }\n\n collectTreeItems(child as HTMLElement);\n });\n };\n\n collectTreeItems(element);\n return treeItems;\n }\n\n private addSlotChangeListener = () => {\n this.el.addEventListener(\"slotchange\", this.setTreeItems);\n };\n\n private truncateTreeViewHeading = () => {\n const typographyEl: HTMLIcTypographyElement =\n this.el.shadowRoot.querySelector(\".tree-view-header\");\n const tooltip = typographyEl?.closest(\"ic-tooltip\");\n const headingContainer: HTMLElement = this.el.shadowRoot.querySelector(\n \".heading-area-container\"\n );\n\n if (typographyEl?.scrollHeight > headingContainer?.clientHeight) {\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 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 { appearance, isLoaded, heading, size, truncateHeading } = this;\n\n return (\n <Host\n context-id={this.treeViewId}\n class={{\n [`ic-tree-view-${appearance}`]: true,\n [`ic-tree-view-${size}`]: size !== \"default\",\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\": truncateHeading && !isLoaded,\n }}\n >\n {isSlotUsed(this.el, \"heading\") ? (\n <slot name=\"heading\" />\n ) : (\n heading\n )}\n </ic-typography>\n </div>\n )}\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -455,14 +455,14 @@ td.table-density-spacious {
455
455
  display: flex;
456
456
  }
457
457
 
458
- @media screen and (min-width: 577px) {
458
+ @media (min-width: 577px) {
459
459
  .column-header-inner-container {
460
460
  display: flex;
461
461
  align-items: center;
462
462
  }
463
463
  }
464
464
 
465
- @media screen and (max-width: 577px) {
465
+ @media (max-width: 577px) {
466
466
  .cell-icon {
467
467
  flex-wrap: wrap;
468
468
  }
@@ -471,3 +471,20 @@ td.table-density-spacious {
471
471
  padding-right: 0;
472
472
  }
473
473
  }
474
+
475
+ /** High Contrast **/
476
+ @media (forced-colors: active) {
477
+ .icon,
478
+ ::slotted(svg),
479
+ .cell-description-icon > svg {
480
+ fill: currentcolor;
481
+ }
482
+
483
+ .sort-button svg {
484
+ color: currentcolor;
485
+ }
486
+
487
+ .table-row-selected {
488
+ background-color: Highlight !important;
489
+ }
490
+ }
@@ -368,7 +368,7 @@ export class DataTable {
368
368
  }
369
369
  });
370
370
  };
371
- this.createColumnHeaders = () => (this.columns || []).map(({ cellAlignment, colspan, icon, key, title, columnWidth }, index) => (h("th", { scope: "col", class: {
371
+ this.createColumnHeaders = () => (this.columns || []).map(({ cellAlignment, colspan, icon, key, title, columnWidth, excludeColumnFromSort, }, index) => (h("th", { scope: "col", class: {
372
372
  ["column-header"]: true,
373
373
  [`table-density-${this.density}`]: this.notDefaultDensity(),
374
374
  ["updating-state-headers"]: this.updating && !this.loading,
@@ -383,7 +383,7 @@ export class DataTable {
383
383
  } }, title))) : (h("ic-typography", { variant: "body", class: {
384
384
  ["column-header-text"]: true,
385
385
  [`text-${this.density}`]: this.notDefaultDensity(),
386
- } }, title)), this.sortable && (h("ic-button", { variant: "icon", id: `sort-button-${key}`, "aria-label": this.getSortButtonLabel(key),
386
+ } }, title)), this.sortable && !excludeColumnFromSort && (h("ic-button", { variant: "icon", id: `sort-button-${key}`, "aria-label": this.getSortButtonLabel(key),
387
387
  // eslint-disable-next-line react/jsx-no-bind
388
388
  onClick: () => this.sortRows(key), innerHTML: this.SORT_ICONS[this.sortedColumn === key
389
389
  ? this.sortedColumnOrder
@@ -1218,7 +1218,7 @@ export class DataTable {
1218
1218
  tooltipEl.prepend(typographyEl);
1219
1219
  }
1220
1220
  render() {
1221
- var _a;
1221
+ var _a, _b;
1222
1222
  const { caption, createColumnHeaders, createUpdatingIndicator, data, hideColumnHeaders, loading, loadingOptions, paginationBarOptions, scrollable, scrollOffset, showPagination, sortable, sortedColumn, sortedColumnOrder, stickyColumnHeaders, updateScrollOffset, updating, } = this;
1223
1223
  return (h(Host, { style: Object.assign({}, this.setTableDimensions()) }, h("div", { class: "table-container" }, isSlotUsed(this.el, "title-bar") && h("slot", { name: "title-bar" }), h("div", { class: {
1224
1224
  ["table-row-container"]: true,
@@ -1231,7 +1231,7 @@ export class DataTable {
1231
1231
  } }, h("tr", null, createColumnHeaders()))), updating &&
1232
1232
  !loading &&
1233
1233
  (hideColumnHeaders ? (h("thead", null, createUpdatingIndicator())) : (createUpdatingIndicator())), this.renderTableBody(data, loading, loadingOptions.overlay)), this.renderEmptyState(data, loading, loadingOptions.overlay)), h("div", { "aria-live": "assertive", class: "sr-only" }, this.renderAriaLiveLoading()), this.renderLoadingIndicator(loading, loadingOptions), (showPagination || isSlotUsed(this.el, "pagination-bar")) && (h("div", { class: "pagination-container" }, isSlotUsed(this.el, "pagination-bar") ? (h("slot", { name: "pagination-bar" })) : (h("ic-pagination-bar", { alignment: paginationBarOptions.alignment, appearance: paginationBarOptions.appearance, hideAllFromItemsPerPage: paginationBarOptions.hideAllFromItemsPerPage, hideRangeLabel: paginationBarOptions.hideRangeLabel, itemLabel: paginationBarOptions.itemLabel, itemsPerPageOptions: paginationBarOptions.itemsPerPageOptions, pageLabel: paginationBarOptions.pageLabel, rangeLabelType: paginationBarOptions.rangeLabelType, selectedItemsPerPage: paginationBarOptions.selectedItemsPerPage, setToFirstPageOnPaginationChange: paginationBarOptions.setToFirstPageOnPaginationChange, showGoToPageControl: paginationBarOptions.showGoToPageControl, showItemsPerPageControl: paginationBarOptions.showItemsPerPageControl, totalItems: (_a = data === null || data === void 0 ? void 0 : data.length) !== null && _a !== void 0 ? _a : 0, type: paginationBarOptions.type })))), sortable && (h("div", { class: "screen-reader-sort-text", "aria-live": "polite" }, sortedColumnOrder !== "unsorted" && sortedColumn
1234
- ? `${sortedColumn} sorted ${sortedColumnOrder}`
1234
+ ? `${((_b = this.columns.find((col) => col.key === sortedColumn)) === null || _b === void 0 ? void 0 : _b.title) || sortedColumn} sorted ${sortedColumnOrder}`
1235
1235
  : "table unsorted")))));
1236
1236
  }
1237
1237
  static get is() { return "ic-data-table"; }