@ukic/canary-web-components 3.0.0-canary.33 → 3.0.0-canary.35

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 (946) hide show
  1. package/dist/cjs/{OpenInNew-7bac24f7.js → OpenInNew-add95b7b.js} +1 -1
  2. package/dist/cjs/OpenInNew-add95b7b.js.map +1 -0
  3. package/dist/{esm/purify-6eaa9893.js → cjs/common-helpers-577fc5b0.js} +22 -2
  4. package/dist/cjs/common-helpers-577fc5b0.js.map +1 -0
  5. package/dist/cjs/core.cjs.js +1 -1
  6. package/dist/cjs/{helpers-2cc5f6db.js → helpers-cb472df9.js} +1 -128
  7. package/dist/cjs/helpers-cb472df9.js.map +1 -0
  8. package/dist/cjs/helpers-f81fed28.js.map +1 -1
  9. package/dist/cjs/ic-badge-27f26087.js +184 -0
  10. package/dist/cjs/ic-badge-27f26087.js.map +1 -0
  11. package/dist/cjs/ic-badge.cjs.entry.js +4 -177
  12. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-button-4c329a7d.js +435 -0
  14. package/dist/cjs/ic-button-4c329a7d.js.map +1 -0
  15. package/dist/cjs/ic-button_3.cjs.entry.js +9 -875
  16. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-calendar_2.cjs.entry.js +22 -13
  18. package/dist/cjs/ic-calendar_2.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-card-horizontal.cjs.entry.js +10 -5
  20. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-checkbox-ac44e0a2.js +204 -0
  22. package/dist/cjs/ic-checkbox-ac44e0a2.js.map +1 -0
  23. package/dist/cjs/ic-checkbox_3.cjs.entry.js +22 -208
  24. package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-chip-1ff0950a.js +133 -0
  26. package/dist/cjs/ic-chip-1ff0950a.js.map +1 -0
  27. package/dist/cjs/ic-chip.cjs.entry.js +4 -119
  28. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +19 -4
  30. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -1
  31. package/dist/cjs/ic-data-table.cjs.entry.js +18 -10
  32. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  33. package/dist/cjs/ic-date-picker.cjs.entry.js +2 -2
  34. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +7 -229
  35. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-input-validation-bf7afa43.js +259 -0
  37. package/dist/cjs/ic-input-validation-bf7afa43.js.map +1 -0
  38. package/dist/cjs/ic-link-c77848ab.js +111 -0
  39. package/dist/cjs/ic-link-c77848ab.js.map +1 -0
  40. package/dist/cjs/ic-link.cjs.entry.js +5 -104
  41. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-loading-indicator-bbd1572c.js +233 -0
  43. package/dist/cjs/ic-loading-indicator-bbd1572c.js.map +1 -0
  44. package/dist/cjs/ic-menu-e9a1a0d3.js +987 -0
  45. package/dist/cjs/ic-menu-e9a1a0d3.js.map +1 -0
  46. package/dist/cjs/ic-menu.cjs.entry.js +6 -991
  47. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-navigation-item-59bd8957.js +243 -0
  49. package/dist/cjs/ic-navigation-item-59bd8957.js.map +1 -0
  50. package/dist/cjs/ic-navigation-item.cjs.entry.js +5 -232
  51. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-page-header-3d8b3a59.js +131 -0
  53. package/dist/cjs/ic-page-header-3d8b3a59.js.map +1 -0
  54. package/dist/cjs/ic-page-header.cjs.entry.js +4 -124
  55. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-pagination_3.cjs.entry.js +16 -0
  57. package/dist/cjs/ic-pagination_3.cjs.entry.js.map +1 -0
  58. package/dist/cjs/ic-section-container-128e2db0.js +34 -0
  59. package/dist/cjs/ic-section-container-128e2db0.js.map +1 -0
  60. package/dist/cjs/ic-section-container.cjs.entry.js +3 -27
  61. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-select-bc8ca251.js +876 -0
  63. package/dist/cjs/ic-select-bc8ca251.js.map +1 -0
  64. package/dist/cjs/ic-skip-link-43203eea.js +60 -0
  65. package/dist/cjs/ic-skip-link-43203eea.js.map +1 -0
  66. package/dist/cjs/ic-skip-link.cjs.entry.js +3 -53
  67. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-status-tag-a4377a6b.js +55 -0
  69. package/dist/cjs/ic-status-tag-a4377a6b.js.map +1 -0
  70. package/dist/cjs/ic-status-tag.cjs.entry.js +4 -48
  71. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-table-of-contents.cjs.entry.js +14 -3
  73. package/dist/cjs/ic-table-of-contents.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-text-field-5d7ae957.js +732 -0
  75. package/dist/cjs/ic-text-field-5d7ae957.js.map +1 -0
  76. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  77. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-time-input.cjs.entry.js +17 -7
  79. package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-time-selector.cjs.entry.js +53 -170
  81. package/dist/cjs/ic-time-selector.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-toggle-button-ce67a1ec.js +452 -0
  83. package/dist/cjs/ic-toggle-button-ce67a1ec.js.map +1 -0
  84. package/dist/cjs/ic-toggle-button_2.cjs.entry.js +5 -445
  85. package/dist/cjs/ic-toggle-button_2.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-tooltip-3cc80832.js +239 -0
  87. package/dist/cjs/ic-tooltip-3cc80832.js.map +1 -0
  88. package/dist/cjs/ic-top-navigation-a6c4be7b.js +237 -0
  89. package/dist/cjs/ic-top-navigation-a6c4be7b.js.map +1 -0
  90. package/dist/cjs/ic-top-navigation.cjs.entry.js +4 -227
  91. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-tree-item.cjs.entry.js +5 -4
  93. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-tree-view.cjs.entry.js +7 -5
  95. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-typography-a199c128.js +198 -0
  97. package/dist/cjs/ic-typography-a199c128.js.map +1 -0
  98. package/dist/cjs/ic-typography.cjs.entry.js +4 -191
  99. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  100. package/dist/cjs/index-d337cd8a.js +6 -170
  101. package/dist/cjs/loader.cjs.js +1 -1
  102. package/dist/collection/collection-manifest.json +28 -76
  103. package/dist/collection/components/ic-calendar/ic-calendar.js +12 -10
  104. package/dist/collection/components/ic-calendar/ic-calendar.js.map +1 -1
  105. package/dist/collection/components/ic-calendar/ic-day-button.js +1 -0
  106. package/dist/collection/components/ic-calendar/ic-day-button.js.map +1 -1
  107. package/dist/collection/components/ic-calendar/ic-month-picker.js +1 -0
  108. package/dist/collection/components/ic-calendar/ic-month-picker.js.map +1 -1
  109. package/dist/collection/components/ic-calendar/ic-year-picker.js +1 -0
  110. package/dist/collection/components/ic-calendar/ic-year-picker.js.map +1 -1
  111. package/dist/collection/components/ic-calendar/test/a11y/ic-calendar.test.a11y.js +1 -1
  112. package/dist/collection/components/ic-calendar/test/a11y/ic-calendar.test.a11y.js.map +1 -1
  113. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +9 -5
  114. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -1
  115. package/dist/collection/components/ic-data-table/ic-data-table.js +15 -8
  116. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  117. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +18 -4
  118. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -1
  119. package/dist/collection/components/ic-date-input/ic-date-input.js +13 -3
  120. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  121. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js +1 -1
  122. package/dist/collection/components/ic-date-input/test/helpers/ic-date-input.js.map +1 -1
  123. package/dist/collection/components/ic-date-picker/ic-date-picker.js +2 -2
  124. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +19 -12
  125. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  126. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js +1 -0
  127. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js.map +1 -1
  128. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js +12 -3
  129. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js.map +1 -1
  130. package/dist/collection/components/ic-time-input/ic-time-input.js +20 -8
  131. package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -1
  132. package/dist/collection/components/ic-time-input/ic-time-input.stories.js +4 -4
  133. package/dist/collection/components/ic-time-input/ic-time-input.stories.js.map +1 -1
  134. package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js +1 -1
  135. package/dist/collection/components/ic-time-input/test/helpers/ic-time-input.js.map +1 -1
  136. package/dist/collection/components/ic-time-selector/ic-time-selector.js +55 -200
  137. package/dist/collection/components/ic-time-selector/ic-time-selector.js.map +1 -1
  138. package/dist/collection/components/ic-time-selector/ic-time-selector.stories.js +50 -24
  139. package/dist/collection/components/ic-time-selector/ic-time-selector.stories.js.map +1 -1
  140. package/dist/collection/components/ic-tree-item/ic-tree-item.js +4 -4
  141. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  142. package/dist/collection/components/ic-tree-view/ic-tree-view.js +5 -3
  143. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  144. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js +32 -2
  145. package/dist/collection/components/ic-tree-view/ic-tree-view.stories.js.map +1 -1
  146. package/dist/collection/utils/types.js.map +1 -1
  147. package/dist/components/common-helpers.js +1364 -3
  148. package/dist/components/common-helpers.js.map +1 -1
  149. package/dist/components/helpers.js +1 -116
  150. package/dist/components/helpers.js.map +1 -1
  151. package/dist/components/helpers2.js.map +1 -1
  152. package/dist/components/ic-badge.d.ts +11 -0
  153. package/dist/components/ic-badge.js +3 -3
  154. package/dist/components/ic-badge.js.map +1 -1
  155. package/dist/components/ic-button.d.ts +11 -0
  156. package/dist/components/ic-button2.js +5 -5
  157. package/dist/components/ic-button2.js.map +1 -1
  158. package/dist/components/ic-calendar2.js +12 -11
  159. package/dist/components/ic-calendar2.js.map +1 -1
  160. package/dist/components/ic-card-horizontal.js +6 -5
  161. package/dist/components/ic-card-horizontal.js.map +1 -1
  162. package/dist/components/ic-checkbox.d.ts +11 -0
  163. package/dist/components/ic-checkbox2.js +5 -5
  164. package/dist/components/ic-checkbox2.js.map +1 -1
  165. package/dist/components/ic-chip.d.ts +11 -0
  166. package/dist/components/ic-chip.js +14 -6
  167. package/dist/components/ic-chip.js.map +1 -1
  168. package/dist/components/ic-data-table-title-bar.js +18 -7
  169. package/dist/components/ic-data-table-title-bar.js.map +1 -1
  170. package/dist/components/ic-data-table.js +34 -40
  171. package/dist/components/ic-data-table.js.map +1 -1
  172. package/dist/components/ic-date-input2.js +10 -6
  173. package/dist/components/ic-date-input2.js.map +1 -1
  174. package/dist/components/ic-date-picker.js +2 -2
  175. package/dist/components/ic-empty-state.d.ts +11 -0
  176. package/dist/components/ic-empty-state2.js +3 -3
  177. package/dist/components/ic-empty-state2.js.map +1 -1
  178. package/dist/components/ic-input-component-container.d.ts +11 -0
  179. package/dist/components/ic-input-component-container2.js +5 -4
  180. package/dist/components/ic-input-component-container2.js.map +1 -1
  181. package/dist/components/ic-input-container.d.ts +11 -0
  182. package/dist/components/ic-input-container2.js +2 -2
  183. package/dist/components/ic-input-container2.js.map +1 -1
  184. package/dist/components/ic-input-label.d.ts +11 -0
  185. package/dist/components/ic-input-label2.js +3 -3
  186. package/dist/components/ic-input-label2.js.map +1 -1
  187. package/dist/components/ic-input-validation.d.ts +11 -0
  188. package/dist/components/ic-input-validation2.js +21 -5
  189. package/dist/components/ic-input-validation2.js.map +1 -1
  190. package/dist/components/ic-link.d.ts +11 -0
  191. package/dist/components/ic-link2.js +2 -2
  192. package/dist/components/ic-link2.js.map +1 -1
  193. package/dist/components/ic-loading-indicator.d.ts +11 -0
  194. package/dist/components/ic-loading-indicator2.js +27 -13
  195. package/dist/components/ic-loading-indicator2.js.map +1 -1
  196. package/dist/components/ic-menu.d.ts +11 -0
  197. package/dist/components/ic-menu2.js +11 -22
  198. package/dist/components/ic-menu2.js.map +1 -1
  199. package/dist/components/ic-navigation-item.d.ts +11 -0
  200. package/dist/components/ic-navigation-item.js +8 -4
  201. package/dist/components/ic-navigation-item.js.map +1 -1
  202. package/dist/components/ic-page-header.d.ts +11 -0
  203. package/dist/components/ic-page-header.js +9 -33
  204. package/dist/components/ic-page-header.js.map +1 -1
  205. package/dist/components/ic-pagination-bar2.js +23 -29
  206. package/dist/components/ic-pagination-bar2.js.map +1 -1
  207. package/dist/components/ic-pagination.d.ts +11 -0
  208. package/dist/components/ic-pagination2.js +34 -15
  209. package/dist/components/ic-pagination2.js.map +1 -1
  210. package/dist/components/ic-section-container.d.ts +11 -0
  211. package/dist/components/ic-section-container2.js +2 -2
  212. package/dist/components/ic-section-container2.js.map +1 -1
  213. package/dist/components/ic-select.d.ts +11 -0
  214. package/dist/components/ic-select2.js +7 -7
  215. package/dist/components/ic-select2.js.map +1 -1
  216. package/dist/components/ic-skip-link.d.ts +11 -0
  217. package/dist/components/ic-skip-link.js +2 -2
  218. package/dist/components/ic-skip-link.js.map +1 -1
  219. package/dist/components/ic-status-tag.d.ts +11 -0
  220. package/dist/components/ic-status-tag.js +2 -2
  221. package/dist/components/ic-status-tag.js.map +1 -1
  222. package/dist/components/ic-table-of-contents.js +5 -4
  223. package/dist/components/ic-table-of-contents.js.map +1 -1
  224. package/dist/components/ic-text-field.d.ts +11 -0
  225. package/dist/components/ic-text-field2.js +6 -6
  226. package/dist/components/ic-text-field2.js.map +1 -1
  227. package/dist/components/ic-theme.d.ts +11 -0
  228. package/dist/components/ic-theme.js +2 -2
  229. package/dist/components/ic-theme.js.map +1 -1
  230. package/dist/components/ic-time-input.js +16 -12
  231. package/dist/components/ic-time-input.js.map +1 -1
  232. package/dist/components/ic-time-selector.js +51 -173
  233. package/dist/components/ic-time-selector.js.map +1 -1
  234. package/dist/components/ic-toggle-button-group.d.ts +11 -0
  235. package/dist/components/ic-toggle-button-group2.js +2 -2
  236. package/dist/components/ic-toggle-button-group2.js.map +1 -1
  237. package/dist/components/ic-toggle-button.d.ts +11 -0
  238. package/dist/components/ic-toggle-button2.js +3 -3
  239. package/dist/components/ic-toggle-button2.js.map +1 -1
  240. package/dist/components/ic-tooltip.d.ts +11 -0
  241. package/dist/components/ic-tooltip2.js +3 -3
  242. package/dist/components/ic-tooltip2.js.map +1 -1
  243. package/dist/components/ic-top-navigation.d.ts +11 -0
  244. package/dist/components/ic-top-navigation.js +12 -21
  245. package/dist/components/ic-top-navigation.js.map +1 -1
  246. package/dist/components/ic-tree-item.js +4 -5
  247. package/dist/components/ic-tree-item.js.map +1 -1
  248. package/dist/components/ic-tree-view.js +5 -4
  249. package/dist/components/ic-tree-view.js.map +1 -1
  250. package/dist/components/ic-typography.d.ts +11 -0
  251. package/dist/components/ic-typography2.js +3 -3
  252. package/dist/components/ic-typography2.js.map +1 -1
  253. package/dist/components/success-icon.js +11 -0
  254. package/dist/components/success-icon.js.map +1 -0
  255. package/dist/core/core.css +1 -1
  256. package/dist/core/core.esm.js +1 -1
  257. package/dist/core/core.esm.js.map +1 -1
  258. package/dist/core/p-01b04775.js +2 -0
  259. package/dist/core/p-01b04775.js.map +1 -0
  260. package/dist/core/p-02d0a238.entry.js +2 -0
  261. package/dist/core/{p-c4b2774d.entry.js → p-0592277b.js} +2 -2
  262. package/dist/core/p-0592277b.js.map +1 -0
  263. package/dist/core/p-0664935b.js +2 -0
  264. package/dist/core/p-0664935b.js.map +1 -0
  265. package/dist/core/p-0aa06309.entry.js +2 -0
  266. package/dist/core/p-0aa06309.entry.js.map +1 -0
  267. package/dist/core/p-0c02b16c.entry.js +2 -0
  268. package/dist/core/p-1836fef6.entry.js +2 -0
  269. package/dist/core/p-1836fef6.entry.js.map +1 -0
  270. package/dist/core/{p-79ead0e7.entry.js → p-18d5e467.js} +2 -2
  271. package/dist/core/p-18d5e467.js.map +1 -0
  272. package/dist/core/p-1ddc08d0.js +2 -0
  273. package/dist/core/p-1ddc08d0.js.map +1 -0
  274. package/dist/core/{p-201b41c7.entry.js → p-22267c01.entry.js} +2 -2
  275. package/dist/core/p-27962d4d.entry.js +2 -0
  276. package/dist/core/p-384a7f60.entry.js +2 -0
  277. package/dist/core/p-3ed17bfc.entry.js +2 -0
  278. package/dist/core/p-3ed17bfc.entry.js.map +1 -0
  279. package/dist/core/p-42bacb0d.entry.js +2 -0
  280. package/dist/core/p-42bacb0d.entry.js.map +1 -0
  281. package/dist/core/p-4385552a.entry.js +2 -0
  282. package/dist/core/p-4385552a.entry.js.map +1 -0
  283. package/dist/core/{p-551a0fc1.entry.js → p-510f8257.entry.js} +2 -2
  284. package/dist/core/p-510f8257.entry.js.map +1 -0
  285. package/dist/core/{p-939025af.entry.js → p-5585895d.js} +2 -2
  286. package/dist/core/p-5585895d.js.map +1 -0
  287. package/dist/core/p-56ef5c79.js +2 -0
  288. package/dist/core/p-56ef5c79.js.map +1 -0
  289. package/dist/core/{p-7efdbab8.entry.js → p-5d5b1aa8.js} +2 -2
  290. package/dist/core/p-5d5b1aa8.js.map +1 -0
  291. package/dist/core/p-5e14ec1e.entry.js +2 -0
  292. package/dist/core/p-5e14ec1e.entry.js.map +1 -0
  293. package/dist/core/p-67a25154.entry.js +2 -0
  294. package/dist/core/p-67a25154.entry.js.map +1 -0
  295. package/dist/core/{p-ea1ea1b9.js → p-67a4f674.js} +1 -1
  296. package/dist/core/p-67a4f674.js.map +1 -0
  297. package/dist/core/p-6f45df7a.entry.js +2 -0
  298. package/dist/core/p-6f45df7a.entry.js.map +1 -0
  299. package/dist/core/{p-33509a89.entry.js → p-7843f9be.js} +2 -2
  300. package/dist/core/p-7843f9be.js.map +1 -0
  301. package/dist/core/p-7bbd1881.js +2 -0
  302. package/dist/core/p-7bbd1881.js.map +1 -0
  303. package/dist/core/{p-349d91dc.js → p-7d378ee6.js} +3 -3
  304. package/dist/core/p-7d378ee6.js.map +1 -0
  305. package/dist/core/p-7e4404fc.entry.js +2 -0
  306. package/dist/core/p-7e4404fc.entry.js.map +1 -0
  307. package/dist/core/p-829b34f9.js.map +1 -1
  308. package/dist/core/p-84129c7e.entry.js +2 -0
  309. package/dist/core/p-84129c7e.entry.js.map +1 -0
  310. package/dist/core/p-857362bd.entry.js +2 -0
  311. package/dist/core/p-857362bd.entry.js.map +1 -0
  312. package/dist/core/p-883e677d.entry.js +2 -0
  313. package/dist/core/p-883e677d.entry.js.map +1 -0
  314. package/dist/core/p-9148bd35.js +2 -0
  315. package/dist/core/p-9148bd35.js.map +1 -0
  316. package/dist/core/p-92e447e1.entry.js +2 -0
  317. package/dist/core/p-92e447e1.entry.js.map +1 -0
  318. package/dist/core/p-964d0e32.js +2 -0
  319. package/dist/core/p-964d0e32.js.map +1 -0
  320. package/dist/core/{p-9ca147f3.entry.js → p-9b218099.js} +2 -2
  321. package/dist/core/p-9b218099.js.map +1 -0
  322. package/dist/core/p-a4cb3520.js +2 -0
  323. package/dist/core/p-a4cb3520.js.map +1 -0
  324. package/dist/core/p-a50e4bdf.entry.js +2 -0
  325. package/dist/core/p-a50e4bdf.entry.js.map +1 -0
  326. package/dist/core/p-b8325ec4.js +2 -0
  327. package/dist/core/p-b8325ec4.js.map +1 -0
  328. package/dist/core/p-c1337dbc.entry.js +2 -0
  329. package/dist/core/p-c1337dbc.entry.js.map +1 -0
  330. package/dist/core/p-c2669ec9.js +2 -0
  331. package/dist/core/p-c2669ec9.js.map +1 -0
  332. package/dist/core/p-c5ac4fcc.entry.js +2 -0
  333. package/dist/core/p-c5ac4fcc.entry.js.map +1 -0
  334. package/dist/core/{p-879c180d.entry.js → p-c5d680be.js} +2 -2
  335. package/dist/core/p-c5d680be.js.map +1 -0
  336. package/dist/core/p-cd454ff0.entry.js +2 -0
  337. package/dist/core/p-cd454ff0.entry.js.map +1 -0
  338. package/dist/core/{p-319e3d5b.entry.js → p-d107dfa8.js} +2 -2
  339. package/dist/core/p-d107dfa8.js.map +1 -0
  340. package/dist/core/p-da2a9ddc.js +2 -0
  341. package/dist/core/p-da2a9ddc.js.map +1 -0
  342. package/dist/core/p-dc3a13d5.entry.js +2 -0
  343. package/dist/core/p-dc3a13d5.entry.js.map +1 -0
  344. package/dist/core/p-f3267773.entry.js +2 -0
  345. package/dist/core/p-f3267773.entry.js.map +1 -0
  346. package/dist/core/p-f65f0065.js +2 -0
  347. package/dist/core/p-f65f0065.js.map +1 -0
  348. package/dist/core/p-fc239961.entry.js +2 -0
  349. package/dist/core/p-fc239961.entry.js.map +1 -0
  350. package/dist/core/p-fd4fd86a.entry.js +2 -0
  351. package/dist/core/p-fd4fd86a.entry.js.map +1 -0
  352. package/dist/esm/{OpenInNew-52210a9d.js → OpenInNew-6f820c13.js} +1 -1
  353. package/dist/esm/OpenInNew-6f820c13.js.map +1 -0
  354. package/dist/{cjs/purify-039f565a.js → esm/common-helpers-f2174548.js} +18 -3
  355. package/dist/esm/common-helpers-f2174548.js.map +1 -0
  356. package/dist/esm/core.js +1 -1
  357. package/dist/esm/{helpers-063369f4.js → helpers-15fb9b13.js} +2 -117
  358. package/dist/esm/helpers-15fb9b13.js.map +1 -0
  359. package/dist/esm/helpers-a08b3f32.js.map +1 -1
  360. package/dist/esm/ic-badge-5c2b4bc7.js +182 -0
  361. package/dist/esm/ic-badge-5c2b4bc7.js.map +1 -0
  362. package/dist/esm/ic-badge.entry.js +3 -180
  363. package/dist/esm/ic-badge.entry.js.map +1 -1
  364. package/dist/esm/ic-button-2f9b4e8a.js +433 -0
  365. package/dist/esm/ic-button-2f9b4e8a.js.map +1 -0
  366. package/dist/esm/ic-button_3.entry.js +6 -876
  367. package/dist/esm/ic-button_3.entry.js.map +1 -1
  368. package/dist/esm/ic-calendar_2.entry.js +22 -13
  369. package/dist/esm/ic-calendar_2.entry.js.map +1 -1
  370. package/dist/esm/ic-card-horizontal.entry.js +10 -5
  371. package/dist/esm/ic-card-horizontal.entry.js.map +1 -1
  372. package/dist/esm/ic-checkbox-f21a3f00.js +201 -0
  373. package/dist/esm/ic-checkbox-f21a3f00.js.map +1 -0
  374. package/dist/esm/ic-checkbox_3.entry.js +17 -203
  375. package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
  376. package/dist/esm/ic-chip-b44cea5b.js +131 -0
  377. package/dist/esm/ic-chip-b44cea5b.js.map +1 -0
  378. package/dist/esm/ic-chip.entry.js +3 -122
  379. package/dist/esm/ic-chip.entry.js.map +1 -1
  380. package/dist/esm/ic-data-table-title-bar.entry.js +19 -4
  381. package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -1
  382. package/dist/esm/ic-data-table.entry.js +18 -10
  383. package/dist/esm/ic-data-table.entry.js.map +1 -1
  384. package/dist/esm/ic-date-picker.entry.js +2 -2
  385. package/dist/esm/ic-input-component-container_4.entry.js +3 -229
  386. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
  387. package/dist/esm/ic-input-validation-cce3bb05.js +254 -0
  388. package/dist/esm/ic-input-validation-cce3bb05.js.map +1 -0
  389. package/dist/esm/ic-link-0f6ba1b0.js +109 -0
  390. package/dist/esm/ic-link-0f6ba1b0.js.map +1 -0
  391. package/dist/esm/ic-link.entry.js +4 -107
  392. package/dist/esm/ic-link.entry.js.map +1 -1
  393. package/dist/esm/ic-loading-indicator-7ec7c6c9.js +231 -0
  394. package/dist/esm/ic-loading-indicator-7ec7c6c9.js.map +1 -0
  395. package/dist/esm/ic-menu-c29dda8d.js +985 -0
  396. package/dist/esm/ic-menu-c29dda8d.js.map +1 -0
  397. package/dist/esm/ic-menu.entry.js +5 -994
  398. package/dist/esm/ic-menu.entry.js.map +1 -1
  399. package/dist/esm/ic-navigation-item-e775ce8c.js +241 -0
  400. package/dist/esm/ic-navigation-item-e775ce8c.js.map +1 -0
  401. package/dist/esm/ic-navigation-item.entry.js +4 -235
  402. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  403. package/dist/esm/ic-page-header-a4a552fe.js +129 -0
  404. package/dist/esm/ic-page-header-a4a552fe.js.map +1 -0
  405. package/dist/esm/ic-page-header.entry.js +3 -127
  406. package/dist/esm/ic-page-header.entry.js.map +1 -1
  407. package/dist/esm/ic-pagination_3.entry.js +6 -0
  408. package/dist/esm/ic-pagination_3.entry.js.map +1 -0
  409. package/dist/esm/ic-section-container-3b887eb7.js +32 -0
  410. package/dist/esm/ic-section-container-3b887eb7.js.map +1 -0
  411. package/dist/esm/ic-section-container.entry.js +2 -30
  412. package/dist/esm/ic-section-container.entry.js.map +1 -1
  413. package/dist/esm/ic-select-cb04ab16.js +874 -0
  414. package/dist/esm/ic-select-cb04ab16.js.map +1 -0
  415. package/dist/esm/ic-skip-link-7c9b8269.js +58 -0
  416. package/dist/esm/ic-skip-link-7c9b8269.js.map +1 -0
  417. package/dist/esm/ic-skip-link.entry.js +2 -56
  418. package/dist/esm/ic-skip-link.entry.js.map +1 -1
  419. package/dist/esm/ic-status-tag-7395532c.js +53 -0
  420. package/dist/esm/ic-status-tag-7395532c.js.map +1 -0
  421. package/dist/esm/ic-status-tag.entry.js +3 -51
  422. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  423. package/dist/esm/ic-table-of-contents.entry.js +14 -3
  424. package/dist/esm/ic-table-of-contents.entry.js.map +1 -1
  425. package/dist/esm/ic-text-field-73754fc7.js +729 -0
  426. package/dist/esm/ic-text-field-73754fc7.js.map +1 -0
  427. package/dist/esm/ic-theme.entry.js +2 -2
  428. package/dist/esm/ic-theme.entry.js.map +1 -1
  429. package/dist/esm/ic-time-input.entry.js +17 -7
  430. package/dist/esm/ic-time-input.entry.js.map +1 -1
  431. package/dist/esm/ic-time-selector.entry.js +53 -170
  432. package/dist/esm/ic-time-selector.entry.js.map +1 -1
  433. package/dist/esm/ic-toggle-button-c58aaaec.js +449 -0
  434. package/dist/esm/ic-toggle-button-c58aaaec.js.map +1 -0
  435. package/dist/esm/ic-toggle-button_2.entry.js +3 -447
  436. package/dist/esm/ic-toggle-button_2.entry.js.map +1 -1
  437. package/dist/esm/ic-tooltip-3c856fa7.js +237 -0
  438. package/dist/esm/ic-tooltip-3c856fa7.js.map +1 -0
  439. package/dist/esm/ic-top-navigation-ba78648a.js +235 -0
  440. package/dist/esm/ic-top-navigation-ba78648a.js.map +1 -0
  441. package/dist/esm/ic-top-navigation.entry.js +3 -230
  442. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  443. package/dist/esm/ic-tree-item.entry.js +5 -4
  444. package/dist/esm/ic-tree-item.entry.js.map +1 -1
  445. package/dist/esm/ic-tree-view.entry.js +7 -5
  446. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  447. package/dist/esm/ic-typography-9e3efc99.js +196 -0
  448. package/dist/esm/ic-typography-9e3efc99.js.map +1 -0
  449. package/dist/esm/ic-typography.entry.js +3 -194
  450. package/dist/esm/ic-typography.entry.js.map +1 -1
  451. package/dist/esm/index-a7a720e7.js +6 -170
  452. package/dist/esm/loader.js +1 -1
  453. package/dist/types/components/ic-calendar/ic-calendar.d.ts +2 -0
  454. package/dist/types/components/ic-calendar/ic-day-button.d.ts +1 -0
  455. package/dist/types/components/ic-calendar/ic-month-picker.d.ts +1 -0
  456. package/dist/types/components/ic-calendar/ic-year-picker.d.ts +1 -0
  457. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +4 -0
  458. package/dist/types/components/ic-data-table/ic-data-table.d.ts +7 -0
  459. package/dist/types/components/ic-data-table-title-bar/ic-data-table-title-bar.d.ts +4 -0
  460. package/dist/types/components/ic-date-input/ic-date-input.d.ts +7 -0
  461. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +8 -1
  462. package/dist/types/components/ic-table-of-contents/ic-table-of-contents-item.d.ts +1 -0
  463. package/dist/types/components/ic-table-of-contents/ic-table-of-contents.d.ts +9 -0
  464. package/dist/types/components/ic-time-input/ic-time-input.d.ts +10 -1
  465. package/dist/types/components/ic-time-selector/ic-time-selector.d.ts +4 -10
  466. package/dist/types/components/ic-time-selector/ic-time-selector.stories.d.ts +48 -13
  467. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +1 -0
  468. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +2 -0
  469. package/dist/types/components/ic-tree-view/ic-tree-view.stories.d.ts +27 -21
  470. package/dist/types/components.d.ts +3918 -786
  471. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-badge/ic-badge.d.ts +74 -0
  472. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-badge/ic-badge.types.d.ts +4 -0
  473. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-button/ic-button.d.ts +210 -0
  474. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-button/ic-button.types.d.ts +2 -0
  475. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-checkbox/ic-checkbox.d.ts +90 -0
  476. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-chip/ic-chip.d.ts +75 -0
  477. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-empty-state/ic-empty-state.d.ts +44 -0
  478. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-empty-state/ic-empty-state.types.d.ts +1 -0
  479. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-input-component-container/ic-input-component-container.d.ts +40 -0
  480. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-input-container/ic-input-container.d.ts +11 -0
  481. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-input-label/ic-input-label.d.ts +42 -0
  482. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-input-validation/ic-input-validation.d.ts +32 -0
  483. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-link/ic-link.d.ts +55 -0
  484. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-loading-indicator/ic-loading-indicator.d.ts +83 -0
  485. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +9 -0
  486. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-menu/ic-menu.d.ts +235 -0
  487. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-menu/ic-menu.types.d.ts +12 -0
  488. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-navigation-item/ic-navigation-item.d.ts +102 -0
  489. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-page-header/ic-page-header.d.ts +61 -0
  490. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-pagination/ic-pagination.d.ts +102 -0
  491. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-pagination/ic-pagination.types.d.ts +6 -0
  492. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-search-bar/ic-search-bar.types.d.ts +5 -0
  493. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-section-container/ic-section-container.d.ts +12 -0
  494. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-select/ic-select.d.ts +282 -0
  495. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-side-navigation/ic-side-navigation.types.d.ts +13 -0
  496. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-skip-link/ic-skip-link.d.ts +38 -0
  497. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-status-tag/ic-status-tag.d.ts +35 -0
  498. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-status-tag/ic-status-tag.types.d.ts +1 -0
  499. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-text-field/ic-text-field.d.ts +262 -0
  500. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-text-field/ic-text-field.types.d.ts +8 -0
  501. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-theme/ic-theme.d.ts +28 -0
  502. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-toggle-button/ic-toggle-button.d.ts +75 -0
  503. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-toggle-button-group/ic-toggle-button-group.d.ts +92 -0
  504. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-toggle-button-group/ic-toggle-button-group.types.d.ts +7 -0
  505. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-tooltip/ic-tooltip.d.ts +82 -0
  506. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-tooltip/ic-tooltip.types.d.ts +1 -0
  507. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-top-navigation/ic-top-navigation.d.ts +102 -0
  508. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/components/ic-typography/ic-typography.d.ts +83 -0
  509. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/helpers.d.ts +167 -0
  510. package/dist/types/home/runner/work/ic-ui-kit/ic-ui-kit/packages/canary-web-components/.stencil/web-components/src/utils/types.d.ts +98 -0
  511. package/dist/types/utils/types.d.ts +1 -2
  512. package/hydrate/index.js +12979 -20485
  513. package/hydrate/index.mjs +12979 -20485
  514. package/package.json +14 -20
  515. package/dist/cjs/OpenInNew-7bac24f7.js.map +0 -1
  516. package/dist/cjs/check-icon-dd563898.js +0 -10
  517. package/dist/cjs/check-icon-dd563898.js.map +0 -1
  518. package/dist/cjs/chevron-icon-3dedd973.js +0 -10
  519. package/dist/cjs/chevron-icon-3dedd973.js.map +0 -1
  520. package/dist/cjs/close-icon-d62b369d.js +0 -12
  521. package/dist/cjs/close-icon-d62b369d.js.map +0 -1
  522. package/dist/cjs/common-helpers-944cb54d.js +0 -21
  523. package/dist/cjs/common-helpers-944cb54d.js.map +0 -1
  524. package/dist/cjs/helpers-2cc5f6db.js.map +0 -1
  525. package/dist/cjs/ic-accordion-group.cjs.entry.js +0 -137
  526. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +0 -1
  527. package/dist/cjs/ic-accordion.cjs.entry.js +0 -150
  528. package/dist/cjs/ic-accordion.cjs.entry.js.map +0 -1
  529. package/dist/cjs/ic-action-chip.cjs.entry.js +0 -116
  530. package/dist/cjs/ic-action-chip.cjs.entry.js.map +0 -1
  531. package/dist/cjs/ic-alert.cjs.entry.js +0 -136
  532. package/dist/cjs/ic-alert.cjs.entry.js.map +0 -1
  533. package/dist/cjs/ic-back-to-top.cjs.entry.js +0 -168
  534. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +0 -1
  535. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +0 -241
  536. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +0 -1
  537. package/dist/cjs/ic-breadcrumb.cjs.entry.js +0 -118
  538. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +0 -1
  539. package/dist/cjs/ic-card-vertical.cjs.entry.js +0 -171
  540. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +0 -1
  541. package/dist/cjs/ic-checkbox-group.cjs.entry.js +0 -127
  542. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +0 -1
  543. package/dist/cjs/ic-classification-banner.cjs.entry.js +0 -67
  544. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +0 -1
  545. package/dist/cjs/ic-data-list.cjs.entry.js +0 -38
  546. package/dist/cjs/ic-data-list.cjs.entry.js.map +0 -1
  547. package/dist/cjs/ic-data-row.cjs.entry.js +0 -88
  548. package/dist/cjs/ic-data-row.cjs.entry.js.map +0 -1
  549. package/dist/cjs/ic-dialog.cjs.entry.js +0 -388
  550. package/dist/cjs/ic-dialog.cjs.entry.js.map +0 -1
  551. package/dist/cjs/ic-divider.cjs.entry.js +0 -114
  552. package/dist/cjs/ic-divider.cjs.entry.js.map +0 -1
  553. package/dist/cjs/ic-footer-link-group.cjs.entry.js +0 -69
  554. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +0 -1
  555. package/dist/cjs/ic-footer-link.cjs.entry.js +0 -65
  556. package/dist/cjs/ic-footer-link.cjs.entry.js.map +0 -1
  557. package/dist/cjs/ic-footer.cjs.entry.js +0 -119
  558. package/dist/cjs/ic-footer.cjs.entry.js.map +0 -1
  559. package/dist/cjs/ic-hero.cjs.entry.js +0 -104
  560. package/dist/cjs/ic-hero.cjs.entry.js.map +0 -1
  561. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +0 -196
  562. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +0 -1
  563. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +0 -70
  564. package/dist/cjs/ic-layout-grid-item.cjs.entry.js.map +0 -1
  565. package/dist/cjs/ic-layout-grid.cjs.entry.js +0 -156
  566. package/dist/cjs/ic-layout-grid.cjs.entry.js.map +0 -1
  567. package/dist/cjs/ic-menu-group.cjs.entry.js +0 -25
  568. package/dist/cjs/ic-menu-group.cjs.entry.js.map +0 -1
  569. package/dist/cjs/ic-menu-item.cjs.entry.js +0 -121
  570. package/dist/cjs/ic-menu-item.cjs.entry.js.map +0 -1
  571. package/dist/cjs/ic-navigation-button.cjs.entry.js +0 -124
  572. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +0 -1
  573. package/dist/cjs/ic-navigation-group.cjs.entry.js +0 -293
  574. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +0 -1
  575. package/dist/cjs/ic-navigation-menu.cjs.entry.js +0 -149
  576. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +0 -1
  577. package/dist/cjs/ic-pagination_4.cjs.entry.js +0 -1647
  578. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +0 -1
  579. package/dist/cjs/ic-popover-menu.cjs.entry.js +0 -308
  580. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +0 -1
  581. package/dist/cjs/ic-radio-group.cjs.entry.js +0 -264
  582. package/dist/cjs/ic-radio-group.cjs.entry.js.map +0 -1
  583. package/dist/cjs/ic-radio-option.cjs.entry.js +0 -173
  584. package/dist/cjs/ic-radio-option.cjs.entry.js.map +0 -1
  585. package/dist/cjs/ic-search-bar.cjs.entry.js +0 -606
  586. package/dist/cjs/ic-search-bar.cjs.entry.js.map +0 -1
  587. package/dist/cjs/ic-side-navigation.cjs.entry.js +0 -488
  588. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +0 -1
  589. package/dist/cjs/ic-skeleton.cjs.entry.js +0 -47
  590. package/dist/cjs/ic-skeleton.cjs.entry.js.map +0 -1
  591. package/dist/cjs/ic-step.cjs.entry.js +0 -155
  592. package/dist/cjs/ic-step.cjs.entry.js.map +0 -1
  593. package/dist/cjs/ic-stepper.cjs.entry.js +0 -288
  594. package/dist/cjs/ic-stepper.cjs.entry.js.map +0 -1
  595. package/dist/cjs/ic-switch.cjs.entry.js +0 -124
  596. package/dist/cjs/ic-switch.cjs.entry.js.map +0 -1
  597. package/dist/cjs/ic-tab-context.cjs.entry.js +0 -250
  598. package/dist/cjs/ic-tab-context.cjs.entry.js.map +0 -1
  599. package/dist/cjs/ic-tab-group.cjs.entry.js +0 -40
  600. package/dist/cjs/ic-tab-group.cjs.entry.js.map +0 -1
  601. package/dist/cjs/ic-tab-panel.cjs.entry.js +0 -42
  602. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +0 -1
  603. package/dist/cjs/ic-tab.cjs.entry.js +0 -112
  604. package/dist/cjs/ic-tab.cjs.entry.js.map +0 -1
  605. package/dist/cjs/ic-toast-region.cjs.entry.js +0 -59
  606. package/dist/cjs/ic-toast-region.cjs.entry.js.map +0 -1
  607. package/dist/cjs/ic-toast.cjs.entry.js +0 -239
  608. package/dist/cjs/ic-toast.cjs.entry.js.map +0 -1
  609. package/dist/cjs/purify-039f565a.js.map +0 -1
  610. package/dist/components/check-icon.js +0 -8
  611. package/dist/components/check-icon.js.map +0 -1
  612. package/dist/components/chevron-icon.js +0 -8
  613. package/dist/components/chevron-icon.js.map +0 -1
  614. package/dist/components/close-icon.js +0 -10
  615. package/dist/components/close-icon.js.map +0 -1
  616. package/dist/components/ic-accordion-group.js +0 -188
  617. package/dist/components/ic-accordion-group.js.map +0 -1
  618. package/dist/components/ic-accordion.js +0 -181
  619. package/dist/components/ic-accordion.js.map +0 -1
  620. package/dist/components/ic-action-chip.js +0 -160
  621. package/dist/components/ic-action-chip.js.map +0 -1
  622. package/dist/components/ic-alert.js +0 -187
  623. package/dist/components/ic-alert.js.map +0 -1
  624. package/dist/components/ic-back-to-top.js +0 -216
  625. package/dist/components/ic-back-to-top.js.map +0 -1
  626. package/dist/components/ic-breadcrumb-group.js +0 -278
  627. package/dist/components/ic-breadcrumb-group.js.map +0 -1
  628. package/dist/components/ic-breadcrumb.js +0 -8
  629. package/dist/components/ic-breadcrumb.js.map +0 -1
  630. package/dist/components/ic-breadcrumb2.js +0 -145
  631. package/dist/components/ic-breadcrumb2.js.map +0 -1
  632. package/dist/components/ic-card-vertical.js +0 -219
  633. package/dist/components/ic-card-vertical.js.map +0 -1
  634. package/dist/components/ic-checkbox-group.js +0 -176
  635. package/dist/components/ic-checkbox-group.js.map +0 -1
  636. package/dist/components/ic-classification-banner.js +0 -93
  637. package/dist/components/ic-classification-banner.js.map +0 -1
  638. package/dist/components/ic-data-list.js +0 -62
  639. package/dist/components/ic-data-list.js.map +0 -1
  640. package/dist/components/ic-data-row.js +0 -115
  641. package/dist/components/ic-data-row.js.map +0 -1
  642. package/dist/components/ic-dialog.js +0 -445
  643. package/dist/components/ic-dialog.js.map +0 -1
  644. package/dist/components/ic-divider.js +0 -8
  645. package/dist/components/ic-divider.js.map +0 -1
  646. package/dist/components/ic-divider2.js +0 -139
  647. package/dist/components/ic-divider2.js.map +0 -1
  648. package/dist/components/ic-footer-link-group.js +0 -101
  649. package/dist/components/ic-footer-link-group.js.map +0 -1
  650. package/dist/components/ic-footer-link.js +0 -95
  651. package/dist/components/ic-footer-link.js.map +0 -1
  652. package/dist/components/ic-footer.js +0 -155
  653. package/dist/components/ic-footer.js.map +0 -1
  654. package/dist/components/ic-hero.js +0 -145
  655. package/dist/components/ic-hero.js.map +0 -1
  656. package/dist/components/ic-horizontal-scroll.js +0 -8
  657. package/dist/components/ic-horizontal-scroll.js.map +0 -1
  658. package/dist/components/ic-horizontal-scroll2.js +0 -240
  659. package/dist/components/ic-horizontal-scroll2.js.map +0 -1
  660. package/dist/components/ic-layout-grid-item.js +0 -95
  661. package/dist/components/ic-layout-grid-item.js.map +0 -1
  662. package/dist/components/ic-layout-grid.js +0 -188
  663. package/dist/components/ic-layout-grid.js.map +0 -1
  664. package/dist/components/ic-menu-group.js +0 -47
  665. package/dist/components/ic-menu-group.js.map +0 -1
  666. package/dist/components/ic-menu-item.js +0 -8
  667. package/dist/components/ic-menu-item.js.map +0 -1
  668. package/dist/components/ic-menu-item2.js +0 -171
  669. package/dist/components/ic-menu-item2.js.map +0 -1
  670. package/dist/components/ic-navigation-button.js +0 -174
  671. package/dist/components/ic-navigation-button.js.map +0 -1
  672. package/dist/components/ic-navigation-group.js +0 -326
  673. package/dist/components/ic-navigation-group.js.map +0 -1
  674. package/dist/components/ic-navigation-menu.js +0 -8
  675. package/dist/components/ic-navigation-menu.js.map +0 -1
  676. package/dist/components/ic-navigation-menu2.js +0 -188
  677. package/dist/components/ic-navigation-menu2.js.map +0 -1
  678. package/dist/components/ic-pagination-item.js +0 -8
  679. package/dist/components/ic-pagination-item.js.map +0 -1
  680. package/dist/components/ic-pagination-item2.js +0 -107
  681. package/dist/components/ic-pagination-item2.js.map +0 -1
  682. package/dist/components/ic-popover-menu.js +0 -369
  683. package/dist/components/ic-popover-menu.js.map +0 -1
  684. package/dist/components/ic-radio-group.js +0 -317
  685. package/dist/components/ic-radio-group.js.map +0 -1
  686. package/dist/components/ic-radio-option.js +0 -209
  687. package/dist/components/ic-radio-option.js.map +0 -1
  688. package/dist/components/ic-search-bar.js +0 -719
  689. package/dist/components/ic-search-bar.js.map +0 -1
  690. package/dist/components/ic-side-navigation.js +0 -553
  691. package/dist/components/ic-side-navigation.js.map +0 -1
  692. package/dist/components/ic-skeleton.js +0 -64
  693. package/dist/components/ic-skeleton.js.map +0 -1
  694. package/dist/components/ic-step.js +0 -198
  695. package/dist/components/ic-step.js.map +0 -1
  696. package/dist/components/ic-stepper.js +0 -320
  697. package/dist/components/ic-stepper.js.map +0 -1
  698. package/dist/components/ic-switch.js +0 -166
  699. package/dist/components/ic-switch.js.map +0 -1
  700. package/dist/components/ic-tab-context.js +0 -276
  701. package/dist/components/ic-tab-context.js.map +0 -1
  702. package/dist/components/ic-tab-group.js +0 -89
  703. package/dist/components/ic-tab-group.js.map +0 -1
  704. package/dist/components/ic-tab-panel.js +0 -63
  705. package/dist/components/ic-tab-panel.js.map +0 -1
  706. package/dist/components/ic-tab.js +0 -143
  707. package/dist/components/ic-tab.js.map +0 -1
  708. package/dist/components/ic-toast-region.js +0 -76
  709. package/dist/components/ic-toast-region.js.map +0 -1
  710. package/dist/components/ic-toast.js +0 -293
  711. package/dist/components/ic-toast.js.map +0 -1
  712. package/dist/components/purify.js +0 -1363
  713. package/dist/components/purify.js.map +0 -1
  714. package/dist/core/p-04cb17d7.entry.js +0 -2
  715. package/dist/core/p-04cb17d7.entry.js.map +0 -1
  716. package/dist/core/p-08f24329.entry.js +0 -2
  717. package/dist/core/p-08f24329.entry.js.map +0 -1
  718. package/dist/core/p-0aa9ce8b.js +0 -2
  719. package/dist/core/p-14b8bf37.entry.js +0 -2
  720. package/dist/core/p-14b8bf37.entry.js.map +0 -1
  721. package/dist/core/p-169ad948.entry.js +0 -2
  722. package/dist/core/p-169ad948.entry.js.map +0 -1
  723. package/dist/core/p-170ddfc2.js +0 -2
  724. package/dist/core/p-1cc402b8.entry.js +0 -2
  725. package/dist/core/p-1cc402b8.entry.js.map +0 -1
  726. package/dist/core/p-1d166343.entry.js +0 -2
  727. package/dist/core/p-1d166343.entry.js.map +0 -1
  728. package/dist/core/p-319e3d5b.entry.js.map +0 -1
  729. package/dist/core/p-33509a89.entry.js.map +0 -1
  730. package/dist/core/p-3389625c.entry.js +0 -2
  731. package/dist/core/p-3389625c.entry.js.map +0 -1
  732. package/dist/core/p-344752cb.entry.js +0 -2
  733. package/dist/core/p-344752cb.entry.js.map +0 -1
  734. package/dist/core/p-348d7080.entry.js +0 -2
  735. package/dist/core/p-348d7080.entry.js.map +0 -1
  736. package/dist/core/p-349d91dc.js.map +0 -1
  737. package/dist/core/p-39cdf5db.entry.js +0 -2
  738. package/dist/core/p-39cdf5db.entry.js.map +0 -1
  739. package/dist/core/p-496b314f.entry.js +0 -2
  740. package/dist/core/p-496b314f.entry.js.map +0 -1
  741. package/dist/core/p-508b6da3.entry.js +0 -2
  742. package/dist/core/p-508b6da3.entry.js.map +0 -1
  743. package/dist/core/p-5254a078.entry.js +0 -2
  744. package/dist/core/p-5254a078.entry.js.map +0 -1
  745. package/dist/core/p-53740194.entry.js +0 -2
  746. package/dist/core/p-53740194.entry.js.map +0 -1
  747. package/dist/core/p-551a0fc1.entry.js.map +0 -1
  748. package/dist/core/p-5e6687a8.entry.js +0 -2
  749. package/dist/core/p-5e6687a8.entry.js.map +0 -1
  750. package/dist/core/p-60f4fe3a.entry.js +0 -2
  751. package/dist/core/p-60f4fe3a.entry.js.map +0 -1
  752. package/dist/core/p-61c92598.entry.js +0 -2
  753. package/dist/core/p-61c92598.entry.js.map +0 -1
  754. package/dist/core/p-6323da7a.entry.js +0 -2
  755. package/dist/core/p-6323da7a.entry.js.map +0 -1
  756. package/dist/core/p-67c3985d.entry.js +0 -2
  757. package/dist/core/p-67c3985d.entry.js.map +0 -1
  758. package/dist/core/p-691dd972.entry.js +0 -2
  759. package/dist/core/p-691dd972.entry.js.map +0 -1
  760. package/dist/core/p-6dfe0922.entry.js +0 -2
  761. package/dist/core/p-6dfe0922.entry.js.map +0 -1
  762. package/dist/core/p-71cc5909.entry.js +0 -2
  763. package/dist/core/p-71cc5909.entry.js.map +0 -1
  764. package/dist/core/p-770e92cd.entry.js +0 -2
  765. package/dist/core/p-770e92cd.entry.js.map +0 -1
  766. package/dist/core/p-79ead0e7.entry.js.map +0 -1
  767. package/dist/core/p-7b4b45cf.entry.js +0 -2
  768. package/dist/core/p-7b4b45cf.entry.js.map +0 -1
  769. package/dist/core/p-7efdbab8.entry.js.map +0 -1
  770. package/dist/core/p-802a4bd3.entry.js +0 -2
  771. package/dist/core/p-802a4bd3.entry.js.map +0 -1
  772. package/dist/core/p-879c180d.entry.js.map +0 -1
  773. package/dist/core/p-8830011c.entry.js +0 -2
  774. package/dist/core/p-8830011c.entry.js.map +0 -1
  775. package/dist/core/p-8ab37b4d.entry.js +0 -2
  776. package/dist/core/p-8ab37b4d.entry.js.map +0 -1
  777. package/dist/core/p-939025af.entry.js.map +0 -1
  778. package/dist/core/p-939b168a.entry.js +0 -2
  779. package/dist/core/p-939b168a.entry.js.map +0 -1
  780. package/dist/core/p-9674b63f.entry.js +0 -2
  781. package/dist/core/p-9674b63f.entry.js.map +0 -1
  782. package/dist/core/p-9ca147f3.entry.js.map +0 -1
  783. package/dist/core/p-9dea5764.entry.js +0 -2
  784. package/dist/core/p-9dea5764.entry.js.map +0 -1
  785. package/dist/core/p-a422b778.js +0 -2
  786. package/dist/core/p-a422b778.js.map +0 -1
  787. package/dist/core/p-a88e61b2.entry.js +0 -2
  788. package/dist/core/p-a88e61b2.entry.js.map +0 -1
  789. package/dist/core/p-a8a92e54.entry.js +0 -2
  790. package/dist/core/p-a8a92e54.entry.js.map +0 -1
  791. package/dist/core/p-a94a7b71.entry.js +0 -2
  792. package/dist/core/p-a94a7b71.entry.js.map +0 -1
  793. package/dist/core/p-ad551a0c.entry.js +0 -2
  794. package/dist/core/p-ad551a0c.entry.js.map +0 -1
  795. package/dist/core/p-adde6c66.entry.js +0 -2
  796. package/dist/core/p-adde6c66.entry.js.map +0 -1
  797. package/dist/core/p-b434bd7c.entry.js +0 -2
  798. package/dist/core/p-b434bd7c.entry.js.map +0 -1
  799. package/dist/core/p-b4a2f6fa.entry.js +0 -2
  800. package/dist/core/p-b4a2f6fa.entry.js.map +0 -1
  801. package/dist/core/p-c0a7eed7.entry.js +0 -2
  802. package/dist/core/p-c0a7eed7.entry.js.map +0 -1
  803. package/dist/core/p-c0b227d2.entry.js +0 -2
  804. package/dist/core/p-c0b227d2.entry.js.map +0 -1
  805. package/dist/core/p-c32f043e.entry.js +0 -2
  806. package/dist/core/p-c32f043e.entry.js.map +0 -1
  807. package/dist/core/p-c4b2774d.entry.js.map +0 -1
  808. package/dist/core/p-c9525aac.entry.js +0 -2
  809. package/dist/core/p-c9525aac.entry.js.map +0 -1
  810. package/dist/core/p-ca05573a.entry.js +0 -2
  811. package/dist/core/p-ca05573a.entry.js.map +0 -1
  812. package/dist/core/p-d0607a70.entry.js +0 -2
  813. package/dist/core/p-d0607a70.entry.js.map +0 -1
  814. package/dist/core/p-d528d856.entry.js +0 -2
  815. package/dist/core/p-d528d856.entry.js.map +0 -1
  816. package/dist/core/p-da1c2883.entry.js +0 -2
  817. package/dist/core/p-da1c2883.entry.js.map +0 -1
  818. package/dist/core/p-e081702e.js +0 -2
  819. package/dist/core/p-e2e556ec.entry.js +0 -2
  820. package/dist/core/p-e2e556ec.entry.js.map +0 -1
  821. package/dist/core/p-e519f607.js +0 -2
  822. package/dist/core/p-e519f607.js.map +0 -1
  823. package/dist/core/p-e5c6d01a.entry.js +0 -2
  824. package/dist/core/p-e5c6d01a.entry.js.map +0 -1
  825. package/dist/core/p-e8db8772.entry.js +0 -2
  826. package/dist/core/p-e8db8772.entry.js.map +0 -1
  827. package/dist/core/p-ea04103e.entry.js +0 -2
  828. package/dist/core/p-ea04103e.entry.js.map +0 -1
  829. package/dist/core/p-eaeb473e.entry.js +0 -2
  830. package/dist/core/p-eaeb473e.entry.js.map +0 -1
  831. package/dist/core/p-ecc7fd71.entry.js +0 -2
  832. package/dist/core/p-ecc7fd71.entry.js.map +0 -1
  833. package/dist/core/p-efe260f0.entry.js +0 -2
  834. package/dist/core/p-efe260f0.entry.js.map +0 -1
  835. package/dist/core/p-f1b57f91.entry.js +0 -2
  836. package/dist/core/p-f1b57f91.entry.js.map +0 -1
  837. package/dist/core/p-f5dc04f7.entry.js +0 -2
  838. package/dist/core/p-f5dc04f7.entry.js.map +0 -1
  839. package/dist/core/p-fb07921b.entry.js +0 -2
  840. package/dist/core/p-fb07921b.entry.js.map +0 -1
  841. package/dist/core/p-fd08156a.entry.js +0 -2
  842. package/dist/core/p-fd08156a.entry.js.map +0 -1
  843. package/dist/core/p-fe5b51bb.entry.js +0 -2
  844. package/dist/core/p-fe5b51bb.entry.js.map +0 -1
  845. package/dist/core/p-ff618439.entry.js +0 -2
  846. package/dist/core/p-ff618439.entry.js.map +0 -1
  847. package/dist/esm/OpenInNew-52210a9d.js.map +0 -1
  848. package/dist/esm/check-icon-f2346e76.js +0 -8
  849. package/dist/esm/check-icon-f2346e76.js.map +0 -1
  850. package/dist/esm/chevron-icon-875b7af2.js +0 -8
  851. package/dist/esm/chevron-icon-875b7af2.js.map +0 -1
  852. package/dist/esm/close-icon-c9e09475.js +0 -10
  853. package/dist/esm/close-icon-c9e09475.js.map +0 -1
  854. package/dist/esm/common-helpers-86c07ff1.js +0 -19
  855. package/dist/esm/common-helpers-86c07ff1.js.map +0 -1
  856. package/dist/esm/helpers-063369f4.js.map +0 -1
  857. package/dist/esm/ic-accordion-group.entry.js +0 -133
  858. package/dist/esm/ic-accordion-group.entry.js.map +0 -1
  859. package/dist/esm/ic-accordion.entry.js +0 -146
  860. package/dist/esm/ic-accordion.entry.js.map +0 -1
  861. package/dist/esm/ic-action-chip.entry.js +0 -112
  862. package/dist/esm/ic-action-chip.entry.js.map +0 -1
  863. package/dist/esm/ic-alert.entry.js +0 -132
  864. package/dist/esm/ic-alert.entry.js.map +0 -1
  865. package/dist/esm/ic-back-to-top.entry.js +0 -164
  866. package/dist/esm/ic-back-to-top.entry.js.map +0 -1
  867. package/dist/esm/ic-breadcrumb-group.entry.js +0 -237
  868. package/dist/esm/ic-breadcrumb-group.entry.js.map +0 -1
  869. package/dist/esm/ic-breadcrumb.entry.js +0 -114
  870. package/dist/esm/ic-breadcrumb.entry.js.map +0 -1
  871. package/dist/esm/ic-card-vertical.entry.js +0 -167
  872. package/dist/esm/ic-card-vertical.entry.js.map +0 -1
  873. package/dist/esm/ic-checkbox-group.entry.js +0 -123
  874. package/dist/esm/ic-checkbox-group.entry.js.map +0 -1
  875. package/dist/esm/ic-classification-banner.entry.js +0 -63
  876. package/dist/esm/ic-classification-banner.entry.js.map +0 -1
  877. package/dist/esm/ic-data-list.entry.js +0 -34
  878. package/dist/esm/ic-data-list.entry.js.map +0 -1
  879. package/dist/esm/ic-data-row.entry.js +0 -84
  880. package/dist/esm/ic-data-row.entry.js.map +0 -1
  881. package/dist/esm/ic-dialog.entry.js +0 -384
  882. package/dist/esm/ic-dialog.entry.js.map +0 -1
  883. package/dist/esm/ic-divider.entry.js +0 -110
  884. package/dist/esm/ic-divider.entry.js.map +0 -1
  885. package/dist/esm/ic-footer-link-group.entry.js +0 -65
  886. package/dist/esm/ic-footer-link-group.entry.js.map +0 -1
  887. package/dist/esm/ic-footer-link.entry.js +0 -61
  888. package/dist/esm/ic-footer-link.entry.js.map +0 -1
  889. package/dist/esm/ic-footer.entry.js +0 -115
  890. package/dist/esm/ic-footer.entry.js.map +0 -1
  891. package/dist/esm/ic-hero.entry.js +0 -100
  892. package/dist/esm/ic-hero.entry.js.map +0 -1
  893. package/dist/esm/ic-horizontal-scroll.entry.js +0 -192
  894. package/dist/esm/ic-horizontal-scroll.entry.js.map +0 -1
  895. package/dist/esm/ic-layout-grid-item.entry.js +0 -66
  896. package/dist/esm/ic-layout-grid-item.entry.js.map +0 -1
  897. package/dist/esm/ic-layout-grid.entry.js +0 -152
  898. package/dist/esm/ic-layout-grid.entry.js.map +0 -1
  899. package/dist/esm/ic-menu-group.entry.js +0 -21
  900. package/dist/esm/ic-menu-group.entry.js.map +0 -1
  901. package/dist/esm/ic-menu-item.entry.js +0 -117
  902. package/dist/esm/ic-menu-item.entry.js.map +0 -1
  903. package/dist/esm/ic-navigation-button.entry.js +0 -120
  904. package/dist/esm/ic-navigation-button.entry.js.map +0 -1
  905. package/dist/esm/ic-navigation-group.entry.js +0 -289
  906. package/dist/esm/ic-navigation-group.entry.js.map +0 -1
  907. package/dist/esm/ic-navigation-menu.entry.js +0 -145
  908. package/dist/esm/ic-navigation-menu.entry.js.map +0 -1
  909. package/dist/esm/ic-pagination_4.entry.js +0 -1640
  910. package/dist/esm/ic-pagination_4.entry.js.map +0 -1
  911. package/dist/esm/ic-popover-menu.entry.js +0 -304
  912. package/dist/esm/ic-popover-menu.entry.js.map +0 -1
  913. package/dist/esm/ic-radio-group.entry.js +0 -260
  914. package/dist/esm/ic-radio-group.entry.js.map +0 -1
  915. package/dist/esm/ic-radio-option.entry.js +0 -169
  916. package/dist/esm/ic-radio-option.entry.js.map +0 -1
  917. package/dist/esm/ic-search-bar.entry.js +0 -602
  918. package/dist/esm/ic-search-bar.entry.js.map +0 -1
  919. package/dist/esm/ic-side-navigation.entry.js +0 -484
  920. package/dist/esm/ic-side-navigation.entry.js.map +0 -1
  921. package/dist/esm/ic-skeleton.entry.js +0 -43
  922. package/dist/esm/ic-skeleton.entry.js.map +0 -1
  923. package/dist/esm/ic-step.entry.js +0 -151
  924. package/dist/esm/ic-step.entry.js.map +0 -1
  925. package/dist/esm/ic-stepper.entry.js +0 -284
  926. package/dist/esm/ic-stepper.entry.js.map +0 -1
  927. package/dist/esm/ic-switch.entry.js +0 -120
  928. package/dist/esm/ic-switch.entry.js.map +0 -1
  929. package/dist/esm/ic-tab-context.entry.js +0 -246
  930. package/dist/esm/ic-tab-context.entry.js.map +0 -1
  931. package/dist/esm/ic-tab-group.entry.js +0 -36
  932. package/dist/esm/ic-tab-group.entry.js.map +0 -1
  933. package/dist/esm/ic-tab-panel.entry.js +0 -38
  934. package/dist/esm/ic-tab-panel.entry.js.map +0 -1
  935. package/dist/esm/ic-tab.entry.js +0 -108
  936. package/dist/esm/ic-tab.entry.js.map +0 -1
  937. package/dist/esm/ic-toast-region.entry.js +0 -55
  938. package/dist/esm/ic-toast-region.entry.js.map +0 -1
  939. package/dist/esm/ic-toast.entry.js +0 -235
  940. package/dist/esm/ic-toast.entry.js.map +0 -1
  941. package/dist/esm/purify-6eaa9893.js.map +0 -1
  942. /package/dist/core/{p-0aa9ce8b.js.map → p-02d0a238.entry.js.map} +0 -0
  943. /package/dist/core/{p-170ddfc2.js.map → p-0c02b16c.entry.js.map} +0 -0
  944. /package/dist/core/{p-201b41c7.entry.js.map → p-22267c01.entry.js.map} +0 -0
  945. /package/dist/core/{p-e081702e.js.map → p-27962d4d.entry.js.map} +0 -0
  946. /package/dist/core/{p-ea1ea1b9.js.map → p-384a7f60.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ic-tree-item.js","sourceRoot":"","sources":["../../../../../src/components/ic-tree-item/ic-tree-item.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Host,\n Watch,\n State,\n Listen,\n Method,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet treeItemIds = 0;\n\n/**\n * @slot label - Content is set as the tree item label.\n * @slot icon - Content is placed to the left of the label.\n * @slot router-item - Handle routing by nesting your routes in this slot.\n */\n@Component({\n tag: \"ic-tree-item\",\n styleUrl: \"ic-tree-item.css\",\n shadow: true,\n})\nexport class TreeItem {\n private treeItemElement: HTMLElement | undefined;\n private treeItemTag = \"IC-TREE-ITEM\";\n private routerSlot: HTMLElement | null;\n private hostMutationObserver: MutationObserver | null = null;\n private TOOLTIP = \"ic-tooltip\";\n private TREE_ITEM_LABEL_CLASS_SELECTOR = \".tree-item-label\";\n private TREE_ITEM_CONTENT_CLASS_SELECTOR = \".tree-item-content\";\n\n @Element() el: HTMLIcTreeItemElement;\n\n @State() childTreeItems: HTMLIcTreeItemElement[];\n\n /**\n * If `true`, the tree item appears in the disabled state.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the tree item appears in the expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n @Watch(\"expanded\")\n watchExpandedHandler(): void {\n this.icTreeItemExpanded.emit({ isExpanded: this.expanded, id: this.el.id });\n }\n\n /**\n * @internal Determines if the parent tree item has been expanded.\n */\n @Prop({ mutable: true }) hasParentExpanded: boolean = false;\n\n /**\n * The URL that the tree item link points to. If set, the tree item will render as an \"a\" tag, otherwise it will render as a div.\n */\n @Prop() href?: string | undefined;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n\n /**\n * @internal If `true`, the tree item is a parent of other tree items.\n */\n @Prop({ mutable: true }) isParent: boolean = false;\n\n /**\n * The label of the tree item.\n */\n @Prop() label: string = \"\";\n\n /**\n * @internal Holds the previous truncation state before the screen switches to a small viewport, so it can be reset when screen size changes again.\n */\n @Prop() previousTruncateTreeItem?: boolean;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * If `true`, the tree item appears in the selected state.\n */\n @Prop({ mutable: true }) selected: boolean = false;\n @Watch(\"selected\")\n watchSelectedHandler(): void {\n if (this.selected) {\n this.icTreeItemSelected.emit({ id: this.el.id });\n }\n this.updateAriaLabel();\n }\n\n /**\n * @internal Determines the size of the tree item.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Sets the tree item id. Must be unique.\n */\n @Prop() treeItemId?: string;\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\n /**\n * If `true`, the tree item label will be truncated instead of text wrapping.\n */\n @Prop() truncateTreeItem?: boolean;\n\n /**\n * Emitted when tree item is selected.\n */\n @Event() icTreeItemSelected: EventEmitter<{ id: string }>;\n\n /**\n * Emitted when tree item is expanded.\n */\n @Event() icTreeItemExpanded: EventEmitter<{\n isExpanded: boolean;\n id: string;\n }>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n this.setChildTreeItems();\n }\n\n componentDidLoad(): void {\n this.setTreeItemPadding();\n\n this.updateAriaLabel();\n\n !isSlotUsed(this.el, \"label\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tree item\"\n );\n\n this.hostMutationObserver = new MutationObserver((mutationList) => {\n this.hostMutationCallback(mutationList);\n });\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n componentDidRender(): void {\n this.truncateTreeItem\n ? this.truncateTreeItemLabel(this.el)\n : this.removeTreeItemTruncation(this.el);\n if (this.expanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem\n ? this.truncateTreeItemLabel(child)\n : this.removeTreeItemTruncation(child);\n });\n }\n }\n\n componentDidUpdate(): void {\n if (this.hasParentExpanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem\n ? this.truncateTreeItemLabel(child)\n : this.removeTreeItemTruncation(child);\n });\n this.hasParentExpanded = false;\n }\n }\n\n @Listen(\"keydown\", {})\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Enter\" || ev.key === \" \") {\n ev.stopImmediatePropagation();\n this.handleTreeItemClicked();\n }\n }\n\n /**\n * Sets focus on the native `input`.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.hasRouterSlot()) {\n this.routerSlot?.focus();\n } else {\n this.treeItemElement?.focus();\n }\n }\n\n private handleTreeItemClicked = (): void => {\n if (this.isParent) {\n this.expanded = !this.expanded;\n this.hasParentExpanded = true;\n }\n\n this.updateAriaLabel();\n this.selected = true;\n };\n\n /**\n * @internal Updates the aria-label of the tree item.\n */\n @Method()\n async updateAriaLabel(): Promise<void> {\n let ariaLabel;\n\n if (this.hasRouterSlot()) {\n ariaLabel = this.routerSlot!.textContent;\n } else if (isSlotUsed(this.el, \"label\")) {\n ariaLabel = this.el.querySelector('[slot=\"label\"]')!.textContent;\n } else {\n ariaLabel = this.label;\n }\n\n if (this.isParent) {\n ariaLabel = `${ariaLabel}, triggers submenu, ${\n this.expanded ? \"expanded\" : \"collapsed\"\n }`;\n }\n\n if (this.el.parentElement) {\n const treeItems = Array.from(\n (this.el.parentElement as HTMLElement).children\n ).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n const index = treeItems.indexOf(this.el) + 1;\n const parentChildren = treeItems.length;\n\n ariaLabel = `${ariaLabel}, ${index} of ${parentChildren}`;\n }\n\n if (this.selected) {\n ariaLabel = `${ariaLabel}, active`;\n }\n\n if (this.disabled) {\n ariaLabel = `${ariaLabel}, dimmed`;\n }\n\n if (this.hasRouterSlot()) {\n this.routerSlot!.ariaLabel = ariaLabel;\n } else {\n this.treeItemElement!.ariaLabel = ariaLabel;\n }\n }\n\n private setTreeItemPadding = () => {\n let level = 1;\n let parentElement = this.el.parentElement;\n const treeItemContent = this.el.shadowRoot?.querySelector(\n this.TREE_ITEM_CONTENT_CLASS_SELECTOR\n ) as HTMLElement;\n\n if (!parentElement) {\n return;\n }\n\n const isSiblingOfParent = Array.from(parentElement.children).some(\n (sibling) =>\n sibling !== this.el &&\n !sibling.querySelector('[slot=\"router-item\"]') &&\n !sibling.querySelector('[slot=\"label\"]') &&\n sibling.children.length > 0\n );\n\n if (\n (isSiblingOfParent && !this.el.isParent) ||\n (parentElement.tagName === this.treeItemTag && !this.el.isParent)\n ) {\n if (this.hasRouterSlot()) {\n this.routerSlot!.classList.add(\"ic-tree-item-single\");\n } else {\n treeItemContent.classList.add(\"ic-tree-item-single\");\n }\n }\n\n while (parentElement) {\n if (parentElement.tagName === this.treeItemTag) {\n level++;\n treeItemContent.style.paddingLeft = !this.el.isParent\n ? `calc(var(--ic-space-${isSiblingOfParent ? \"xl\" : \"xs\"}) + ${\n level * (isSiblingOfParent ? 16 : 24)\n }px)`\n : `${level * 16}px`;\n }\n parentElement = parentElement.parentElement;\n }\n };\n\n private truncateTreeItemLabel = (treeItem: HTMLIcTreeItemElement) => {\n let typographyEl =\n treeItem.shadowRoot?.querySelector<HTMLIcTypographyElement>(\n this.TREE_ITEM_LABEL_CLASS_SELECTOR\n );\n const slottedContent = treeItem.querySelector(\"[slot='router-item']\");\n let contentHeight = slottedContent?.scrollHeight;\n\n if (!typographyEl && slottedContent) {\n const newTypographyEl = document.createElement(\"ic-typography\");\n newTypographyEl.innerHTML = slottedContent.textContent!;\n newTypographyEl.classList.add(\"tree-item-label\");\n slottedContent.replaceChild(newTypographyEl, slottedContent.firstChild!);\n typographyEl = newTypographyEl;\n } else if (typographyEl) {\n contentHeight = typographyEl.scrollHeight;\n }\n\n const tooltipAlreadyExists = !!typographyEl?.closest(this.TOOLTIP);\n const treeContent =\n treeItem.shadowRoot?.querySelector(\n this.TREE_ITEM_CONTENT_CLASS_SELECTOR\n ) || slottedContent;\n\n if (treeContent) {\n const computedHeight = parseFloat(getComputedStyle(treeContent).height);\n if (\n contentHeight &&\n computedHeight &&\n contentHeight > computedHeight &&\n !tooltipAlreadyExists &&\n typographyEl\n ) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", this.el.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent!);\n tooltipEl.setAttribute(\"placement\", \"right\");\n\n if (treeContent === slottedContent) {\n treeContent.addEventListener(\"focus\", () =>\n this.handleDisplayTooltip(true)\n );\n treeContent.addEventListener(\"blur\", () =>\n this.handleDisplayTooltip(false)\n );\n tooltipEl.setAttribute(\"style\", \"overflow:hidden;\");\n typographyEl.setAttribute(\n \"style\",\n \"overflow:hidden;text-overflow:ellipsis;white-space:nowrap;\"\n );\n } else {\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n typographyEl.classList.add(\"ic-text-overflow\");\n }\n\n treeContent.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n }\n };\n\n private removeTreeItemTruncation = (treeItem: HTMLIcTreeItemElement) => {\n const slottedContent = treeItem.querySelector(\"[slot='router-item']\");\n const typographyEl: HTMLIcTypographyElement =\n treeItem.shadowRoot?.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR) ||\n slottedContent!.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR)!;\n const tooltipEl = typographyEl?.closest<HTMLIcTooltipElement>(this.TOOLTIP);\n const treeContent =\n treeItem.shadowRoot?.querySelector(\n this.TREE_ITEM_CONTENT_CLASS_SELECTOR\n ) || slottedContent!;\n\n if (tooltipEl) {\n typographyEl.classList.remove(\"ic-text-overflow\");\n treeContent.replaceChild(\n treeContent === slottedContent\n ? typographyEl.firstChild!\n : typographyEl,\n tooltipEl\n );\n }\n };\n\n private hasRouterSlot(): boolean {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n return !!this.routerSlot;\n }\n\n private handleDisplayTooltip = (display: boolean) => {\n const typographyEl =\n this.el.shadowRoot?.querySelector<HTMLIcTypographyElement>(\n this.TREE_ITEM_LABEL_CLASS_SELECTOR\n ) || this.el.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);\n const tooltip = typographyEl?.closest<HTMLIcTooltipElement>(this.TOOLTIP);\n\n tooltip?.displayTooltip(display);\n };\n\n private setChildTreeItems = () => {\n this.childTreeItems = Array.from((this.el as HTMLElement).children).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n this.isParent = this.childTreeItems.length > 0;\n };\n\n private hostMutationCallback = (mutationList: MutationRecord[]) => {\n this.setChildTreeItems();\n renderDynamicChildSlots(mutationList, \"icon\", this);\n };\n\n render() {\n const { disabled, label, selected, size, expanded, theme } = this;\n\n const Component = this.href && !this.disabled ? \"a\" : \"div\";\n\n const attrs = Component == \"a\" && {\n href: this.href,\n hrefLang: this.hreflang,\n referrerPolicy: this.referrerpolicy,\n rel: this.rel,\n target: this.target,\n };\n\n return (\n <Host\n class={{\n \"ic-tree-item-disabled\": disabled,\n \"ic-tree-item-selected\": !disabled && selected,\n [`ic-tree-item-${size}`]: size !== \"medium\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-tree-item-truncate\": !!this.truncateTreeItem,\n }}\n id={this.treeItemId ?? `ic-tree-item-${treeItemIds++}`}\n >\n {this.hasRouterSlot() ? (\n <slot name=\"router-item\" />\n ) : (\n <Component\n class={{\n \"tree-item-content\": true,\n }}\n tabIndex={disabled ? -1 : 0}\n onClick={this.handleTreeItemClicked}\n ref={(el) => (this.treeItemElement = el)}\n aria-disabled={disabled ? \"true\" : \"false\"}\n aria-live=\"polite\"\n {...attrs}\n onFocus={() => this.handleDisplayTooltip(true)}\n onBlur={() => this.handleDisplayTooltip(false)}\n >\n {this.isParent && (\n <span\n class={{\n [\"arrow-dropdown\"]: true,\n [\"tree-item-expanded\"]: expanded,\n }}\n aria-hidden=\"true\"\n innerHTML={arrowDropdown}\n />\n )}\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography class=\"tree-item-label\">\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </ic-typography>\n </Component>\n )}\n {expanded && (\n <div aria-hidden={`${!expanded}`}>\n <slot />\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-tree-item.js","sourceRoot":"","sources":["../../../../../src/components/ic-tree-item/ic-tree-item.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Host,\n Watch,\n State,\n Listen,\n Method,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\nimport \"../../../../web-components/src/components/ic-typography/ic-typography\";\n\nlet treeItemIds = 0;\n\n/**\n * @slot label - Content is set as the tree item label.\n * @slot icon - Content is placed to the left of the label.\n * @slot router-item - Handle routing by nesting your routes in this slot.\n */\n@Component({\n tag: \"ic-tree-item\",\n styleUrl: \"ic-tree-item.css\",\n shadow: true,\n})\nexport class TreeItem {\n private treeItemElement: HTMLElement | undefined;\n private treeItemTag = \"IC-TREE-ITEM\";\n private routerSlot: HTMLElement | null;\n private hostMutationObserver: MutationObserver | null = null;\n private TOOLTIP = \"ic-tooltip\";\n private TREE_ITEM_LABEL_CLASS_SELECTOR = \".tree-item-label\";\n private TREE_ITEM_CONTENT_CLASS_SELECTOR = \".tree-item-content\";\n\n @Element() el: HTMLIcTreeItemElement;\n\n @State() childTreeItems: HTMLIcTreeItemElement[];\n\n /**\n * If `true`, the tree item appears in the disabled state.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the tree item appears in the expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n @Watch(\"expanded\")\n watchExpandedHandler(): void {\n this.icTreeItemExpanded.emit({ isExpanded: this.expanded, id: this.el.id });\n }\n\n /**\n * @internal Determines if the parent tree item has been expanded.\n */\n @Prop({ mutable: true }) hasParentExpanded: boolean = false;\n\n /**\n * The URL that the tree item link points to. If set, the tree item will render as an \"a\" tag, otherwise it will render as a div.\n */\n @Prop() href?: string | undefined;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n\n /**\n * @internal If `true`, the tree item is a parent of other tree items.\n */\n @Prop({ mutable: true }) isParent: boolean = false;\n\n /**\n * The label of the tree item.\n */\n @Prop() label: string = \"\";\n\n /**\n * @internal Holds the previous truncation state before the screen switches to a small viewport, so it can be reset when screen size changes again.\n */\n @Prop() previousTruncateTreeItem?: boolean;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * If `true`, the tree item appears in the selected state.\n */\n @Prop({ mutable: true }) selected: boolean = false;\n @Watch(\"selected\")\n watchSelectedHandler(): void {\n if (this.selected) {\n this.icTreeItemSelected.emit({ id: this.el.id });\n }\n this.updateAriaLabel();\n }\n\n /**\n * @internal Determines the size of the tree item.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * Sets the tree item id. Must be unique.\n */\n @Prop() treeItemId?: string;\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\n /**\n * If `true`, the tree item label will be truncated instead of text wrapping.\n */\n @Prop() truncateTreeItem?: boolean;\n\n /**\n * Emitted when tree item is selected.\n */\n @Event() icTreeItemSelected: EventEmitter<{ id: string }>;\n\n /**\n * Emitted when tree item is expanded.\n */\n @Event() icTreeItemExpanded: EventEmitter<{\n isExpanded: boolean;\n id: string;\n }>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n this.setChildTreeItems();\n }\n\n componentDidLoad(): void {\n this.setTreeItemPadding();\n\n this.updateAriaLabel();\n\n !isSlotUsed(this.el, \"label\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tree item\"\n );\n\n this.hostMutationObserver = new MutationObserver((mutationList) => {\n this.hostMutationCallback(mutationList);\n });\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n componentDidRender(): void {\n this.truncateTreeItem\n ? this.truncateTreeItemLabel(this.el)\n : this.removeTreeItemTruncation(this.el);\n if (this.expanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem\n ? this.truncateTreeItemLabel(child)\n : this.removeTreeItemTruncation(child);\n });\n }\n }\n\n componentDidUpdate(): void {\n if (this.hasParentExpanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem\n ? this.truncateTreeItemLabel(child)\n : this.removeTreeItemTruncation(child);\n });\n this.hasParentExpanded = false;\n }\n }\n\n @Listen(\"keydown\", {})\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Enter\" || ev.key === \" \") {\n ev.stopImmediatePropagation();\n this.handleTreeItemClicked();\n }\n }\n\n /**\n * Sets focus on the native `input`.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.hasRouterSlot()) {\n this.routerSlot?.focus();\n } else {\n this.treeItemElement?.focus();\n }\n }\n\n private handleTreeItemClicked = (): void => {\n if (this.isParent) {\n this.expanded = !this.expanded;\n this.hasParentExpanded = true;\n }\n\n this.updateAriaLabel();\n this.selected = true;\n };\n\n /**\n * @internal Updates the aria-label of the tree item.\n */\n @Method()\n async updateAriaLabel(): Promise<void> {\n let ariaLabel;\n\n if (this.hasRouterSlot()) {\n ariaLabel = this.routerSlot!.textContent;\n } else if (isSlotUsed(this.el, \"label\")) {\n ariaLabel = this.el.querySelector('[slot=\"label\"]')!.textContent;\n } else {\n ariaLabel = this.label;\n }\n\n if (this.isParent) {\n ariaLabel = `${ariaLabel}, triggers submenu, ${\n this.expanded ? \"expanded\" : \"collapsed\"\n }`;\n }\n\n if (this.el.parentElement) {\n const treeItems = Array.from(\n (this.el.parentElement as HTMLElement).children\n ).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n const index = treeItems.indexOf(this.el) + 1;\n const parentChildren = treeItems.length;\n\n ariaLabel = `${ariaLabel}, ${index} of ${parentChildren}`;\n }\n\n if (this.selected) {\n ariaLabel = `${ariaLabel}, active`;\n }\n\n if (this.disabled) {\n ariaLabel = `${ariaLabel}, dimmed`;\n }\n\n if (this.hasRouterSlot()) {\n this.routerSlot!.ariaLabel = ariaLabel;\n } else {\n this.treeItemElement!.ariaLabel = ariaLabel;\n }\n }\n\n private setTreeItemPadding = () => {\n let level = 1;\n let parentElement = this.el.parentElement;\n const treeItemContent = this.el.shadowRoot?.querySelector(\n this.TREE_ITEM_CONTENT_CLASS_SELECTOR\n ) as HTMLElement;\n\n if (!parentElement) {\n return;\n }\n\n const isSiblingOfParent = Array.from(parentElement.children).some(\n (sibling) =>\n sibling !== this.el &&\n !sibling.querySelector('[slot=\"router-item\"]') &&\n !sibling.querySelector('[slot=\"label\"]') &&\n sibling.children.length > 0\n );\n\n if (\n (isSiblingOfParent && !this.el.isParent) ||\n (parentElement.tagName === this.treeItemTag && !this.el.isParent)\n ) {\n if (this.hasRouterSlot()) {\n this.routerSlot!.classList.add(\"ic-tree-item-single\");\n } else {\n treeItemContent.classList.add(\"ic-tree-item-single\");\n }\n }\n\n while (parentElement) {\n if (parentElement.tagName === this.treeItemTag) {\n level++;\n treeItemContent.style.paddingLeft = !this.el.isParent\n ? `calc(var(--ic-space-${isSiblingOfParent ? \"xl\" : \"xs\"}) + ${\n level * (isSiblingOfParent ? 16 : 24)\n }px)`\n : `${level * 16}px`;\n }\n parentElement = parentElement.parentElement;\n }\n };\n\n private truncateTreeItemLabel = (treeItem: HTMLIcTreeItemElement) => {\n let typographyEl =\n treeItem.shadowRoot?.querySelector<HTMLIcTypographyElement>(\n this.TREE_ITEM_LABEL_CLASS_SELECTOR\n );\n const slottedContent = treeItem.querySelector(\"[slot='router-item']\");\n let contentHeight = slottedContent?.scrollHeight;\n\n if (!typographyEl && slottedContent) {\n const newTypographyEl = document.createElement(\"ic-typography\");\n newTypographyEl.innerHTML = slottedContent.textContent!;\n newTypographyEl.classList.add(\"tree-item-label\");\n slottedContent.replaceChild(newTypographyEl, slottedContent.firstChild!);\n typographyEl = newTypographyEl;\n } else if (typographyEl) {\n contentHeight = typographyEl.scrollHeight;\n }\n\n const tooltipAlreadyExists = !!typographyEl?.closest(this.TOOLTIP);\n const treeContent =\n treeItem.shadowRoot?.querySelector(\n this.TREE_ITEM_CONTENT_CLASS_SELECTOR\n ) || slottedContent;\n\n if (treeContent) {\n const computedHeight = parseFloat(getComputedStyle(treeContent).height);\n if (\n contentHeight &&\n computedHeight &&\n contentHeight > computedHeight &&\n !tooltipAlreadyExists &&\n typographyEl\n ) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", this.el.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent!);\n tooltipEl.setAttribute(\"placement\", \"right\");\n\n if (treeContent === slottedContent) {\n treeContent.addEventListener(\"focus\", () =>\n this.handleDisplayTooltip(true)\n );\n treeContent.addEventListener(\"blur\", () =>\n this.handleDisplayTooltip(false)\n );\n tooltipEl.setAttribute(\"style\", \"overflow:hidden;\");\n typographyEl.setAttribute(\n \"style\",\n \"overflow:hidden;text-overflow:ellipsis;white-space:nowrap;\"\n );\n } else {\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n typographyEl.classList.add(\"ic-text-overflow\");\n }\n\n treeContent.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n }\n };\n\n private removeTreeItemTruncation = (treeItem: HTMLIcTreeItemElement) => {\n const slottedContent = treeItem.querySelector(\"[slot='router-item']\");\n const typographyEl: HTMLIcTypographyElement =\n treeItem.shadowRoot?.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR) ||\n slottedContent!.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR)!;\n const tooltipEl = typographyEl?.closest<HTMLIcTooltipElement>(this.TOOLTIP);\n const treeContent =\n treeItem.shadowRoot?.querySelector(\n this.TREE_ITEM_CONTENT_CLASS_SELECTOR\n ) || slottedContent!;\n\n if (tooltipEl) {\n typographyEl.classList.remove(\"ic-text-overflow\");\n treeContent.replaceChild(\n treeContent === slottedContent\n ? typographyEl.firstChild!\n : typographyEl,\n tooltipEl\n );\n }\n };\n\n private hasRouterSlot(): boolean {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n return !!this.routerSlot;\n }\n\n private handleDisplayTooltip = (display: boolean) => {\n const typographyEl =\n this.el.shadowRoot?.querySelector<HTMLIcTypographyElement>(\n this.TREE_ITEM_LABEL_CLASS_SELECTOR\n ) || this.el.querySelector(this.TREE_ITEM_LABEL_CLASS_SELECTOR);\n const tooltip = typographyEl?.closest<HTMLIcTooltipElement>(this.TOOLTIP);\n\n tooltip?.displayTooltip(display);\n };\n\n private setChildTreeItems = () => {\n this.childTreeItems = Array.from((this.el as HTMLElement).children).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n this.isParent = this.childTreeItems.length > 0;\n };\n\n private hostMutationCallback = (mutationList: MutationRecord[]) => {\n this.setChildTreeItems();\n renderDynamicChildSlots(mutationList, \"icon\", this);\n };\n\n render() {\n const { disabled, label, selected, size, expanded, theme } = this;\n\n const Component = this.href && !this.disabled ? \"a\" : \"div\";\n\n const attrs = Component == \"a\" && {\n href: this.href,\n hrefLang: this.hreflang,\n referrerPolicy: this.referrerpolicy,\n rel: this.rel,\n target: this.target,\n };\n\n return (\n <Host\n class={{\n \"ic-tree-item-disabled\": disabled,\n \"ic-tree-item-selected\": !disabled && selected,\n [`ic-tree-item-${size}`]: size !== \"medium\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n \"ic-tree-item-truncate\": !!this.truncateTreeItem,\n }}\n id={this.el.id || this.treeItemId || `ic-tree-item-${treeItemIds++}`}\n >\n {this.hasRouterSlot() ? (\n <slot name=\"router-item\" />\n ) : (\n <Component\n class={{\n \"tree-item-content\": true,\n }}\n tabIndex={disabled ? -1 : 0}\n onClick={this.handleTreeItemClicked}\n ref={(el) => (this.treeItemElement = el)}\n aria-disabled={disabled ? \"true\" : \"false\"}\n aria-live=\"polite\"\n {...attrs}\n onFocus={() => this.handleDisplayTooltip(true)}\n onBlur={() => this.handleDisplayTooltip(false)}\n >\n {this.isParent && (\n <span\n class={{\n [\"arrow-dropdown\"]: true,\n [\"tree-item-expanded\"]: expanded,\n }}\n aria-hidden=\"true\"\n innerHTML={arrowDropdown}\n />\n )}\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography class=\"tree-item-label\">\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </ic-typography>\n </Component>\n )}\n {expanded && (\n <div aria-hidden={`${!expanded}`}>\n <slot />\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -13,6 +13,8 @@ var __rest = (this && this.__rest) || function (s, e) {
13
13
  import { h, Host, } from "@stencil/core";
14
14
  import { checkResizeObserver, DEVICE_SIZES, getCurrentDeviceSize, isPropDefined, isSlotUsed, renderDynamicChildSlots, } from "../../utils/helpers";
15
15
  import { sanitizeHTMLIconString } from "../../../../web-components/src/utils/common-helpers";
16
+ import "../../../../web-components/src/components/ic-typography/ic-typography";
17
+ import "../../../../web-components/src/components/ic-skip-link/ic-skip-link";
16
18
  let treeViewIds = 0;
17
19
  /**
18
20
  * @slot heading - Content is set as the tree view heading.
@@ -315,14 +317,14 @@ export class TreeView {
315
317
  }
316
318
  render() {
317
319
  const { heading, isLoaded, size, theme, truncateHeading } = this;
318
- return (h(Host, { key: 'b64c96601e14f028d70d42596ab73c3adcc5c50c', "context-id": this.treeViewId, class: {
320
+ return (h(Host, { key: '8eb6b4a2b6572b986549e5a997bc5a9df0a8052f', "context-id": this.treeViewId, class: {
319
321
  [`ic-tree-view-${size}`]: size !== "medium",
320
322
  [`ic-theme-${theme}`]: theme !== "inherit",
321
323
  "ic-tree-view-truncate": truncateHeading,
322
- }, onKeyDown: this.handleKeyDown, "aria-label": this.isHeadingDefined() ? heading : null }, this.hasHeadingAreaContent() && (h("div", { key: '2147d52cb5d094a6b2030707832e7986452ec793', class: "heading-area-container" }, isSlotUsed(this.el, "icon") && (h("div", { key: '884b18baa7bf9a6530578e14e554e7da405184e4', class: "icon-container" }, h("slot", { key: 'a7b165ab9a5851dd0006a0ed2d58299c6cce8008', name: "icon" }))), h("ic-typography", { key: 'b851dc0c5d16d8127ba3e3e0c0efdbbb2675bdd4', variant: "subtitle-large", class: {
324
+ }, onKeyDown: this.handleKeyDown, "aria-label": this.isHeadingDefined() ? heading : null }, this.hasHeadingAreaContent() && (h("div", { key: '0e4d5516ffe8df51a3e1d23355a6798502fd2afb', class: "heading-area-container" }, isSlotUsed(this.el, "icon") && (h("div", { key: 'b6a6f6ab4a6de241301d8bc2ccd776795cf11444', class: "icon-container" }, h("slot", { key: 'c92eff87acaea0ecc5008dd46347ab4f3676e999', name: "icon" }))), h("ic-typography", { key: 'e250086864a60f85befcc622635a9054dce8ba74', variant: "subtitle-large", class: {
323
325
  "tree-view-header": true,
324
326
  "with-padding": this.truncateHeading && !isLoaded,
325
- } }, isSlotUsed(this.el, "heading") ? (h("slot", { name: "heading" })) : (heading)))), h("slot", { key: '1e2577f386a2121c89644f395358fb746eb63cd1' })));
327
+ } }, isSlotUsed(this.el, "heading") ? (h("slot", { name: "heading" })) : (heading)))), h("slot", { key: '0c6e6ceb5017d2c0380af31e7c652a422d0cf2d8' })));
326
328
  }
327
329
  static get is() { return "ic-tree-view"; }
328
330
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"ic-tree-view.js","sourceRoot":"","sources":["../../../../../src/components/ic-tree-view/ic-tree-view.tsx"],"names":[],"mappings":"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","sourcesContent":["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"]}
1
+ {"version":3,"file":"ic-tree-view.js","sourceRoot":"","sources":["../../../../../src/components/ic-tree-view/ic-tree-view.tsx"],"names":[],"mappings":"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","sourcesContent":["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\nimport \"../../../../web-components/src/components/ic-typography/ic-typography\";\nimport \"../../../../web-components/src/components/ic-skip-link/ic-skip-link\";\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"]}
@@ -112,14 +112,44 @@ export const SlottedCustomIds = {
112
112
  <ic-tree-view heading="Menu">
113
113
  <ic-tree-item label="Coffee" tree-item-id="coffee-1">
114
114
  <ic-tree-item label="Americano">
115
- <ic-tree-item label="With milk" tree-item-id="with-milk-1"></ic-tree-item>
115
+ <ic-tree-item
116
+ label="With milk"
117
+ tree-item-id="with-milk-1"
118
+ ></ic-tree-item>
116
119
  </ic-tree-item>
117
120
  </ic-tree-item>
118
- <ic-tree-item label="Tea" tree-item-id="tea-1"></ic-tree-view>
121
+ <ic-tree-item label="Tea" tree-item-id="tea-1"></ic-tree-item>
122
+ </ic-tree-view>
119
123
  </div>
120
124
  `,
121
125
  name: "Custom IDs with Slotted",
122
126
  };
127
+ export const CustomID = {
128
+ render: () => html `
129
+ <div style="width:250px">
130
+ <ic-tree-view heading="Menu">
131
+ <ic-tree-item label="Coffee" id="coffee-1"></ic-tree-item>
132
+ <ic-tree-item label="Tea" id="tea-1"></ic-tree-item>
133
+ <ic-tree-item label="Hot chocolate" id="hot-chocolate-1"></ic-tree-item>
134
+ </ic-tree-view>
135
+ </div>
136
+ <script>
137
+ const coffee = document.querySelector("#coffee-1");
138
+ coffee.addEventListener("icTreeItemSelected", function (event) {
139
+ console.log(event.detail.id);
140
+ });
141
+ const tea = document.querySelector("#tea-1");
142
+ tea.addEventListener("icTreeItemSelected", function (event) {
143
+ console.log(event.detail.id);
144
+ });
145
+ const hotChocolate = document.querySelector("#hot-chocolate-1");
146
+ hotChocolate.addEventListener("icTreeItemSelected", function (event) {
147
+ console.log(event.detail.id);
148
+ });
149
+ </script>
150
+ `,
151
+ name: "Custom IDs using ID",
152
+ };
123
153
  export const WithIcons = {
124
154
  render: () => html `
125
155
  <div style="width:250px">
@@ -1 +1 @@
1
- {"version":3,"file":"ic-tree-view.stories.js","sourceRoot":"","sources":["../../../../../src/components/ic-tree-view/ic-tree-view.stories.js"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\nimport { html } from \"lit-html\";\nimport readme from \"./readme.md\";\nimport treeItemReadme from \"../ic-tree-item/readme.md\";\n\nexport default {\n title: \"Web Components/Tree view\",\n component: \"ic-tree-view\",\n parameters: {\n componentAPI: {\n data: readme + treeItemReadme,\n },\n },\n};\n\n/**\n * Use the tree view component to display hierarchical data in a tree structure. The tree view component is useful for displaying nested data, such as a file system or a category hierarchy.\n *\n * Click the 'Component API' tab to view all the available attributes, events and slots for tree view.\n *\n * To use the tree view component, import `@ukic/canary-web-components` into your application.\n */\nexport const Basic = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"basic-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#basic-tree-view\").treeItemData = [\n { label: \"Coffee\" },\n { label: \"Tea\" },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"Basic\",\n};\n\nexport const BasicSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\"></ic-tree-item>\n <ic-tree-item label=\"Tea\"></ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Basic - slotted\",\n};\n\nexport const Nested = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"nested-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#nested-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n children: [\n { label: \"Americano\", children: [{ label: \"With milk\" }] },\n { label: \"Latte\" },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"Nested\",\n};\n\nexport const NestedSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\">\n <ic-tree-item label=\"Americano\">\n <ic-tree-item label=\"With milk\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Latte\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Nested - slotted\",\n};\n\nexport const CustomIDs = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"nested-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#nested-tree-view\").treeItemData = [\n { label: \"Coffee\", treeItemId: \"coffee-1\" },\n { label: \"Tea\", treeItemId: \"tea-1\" },\n { label: \"Hot chocolate\", treeItemId: \"hot-chocolate-1\" },\n ];\n </script>\n `,\n name: \"Custom IDs with Tree Item Data\",\n};\n\nexport const SlottedCustomIds = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\" tree-item-id=\"coffee-1\">\n <ic-tree-item label=\"Americano\">\n <ic-tree-item label=\"With milk\" tree-item-id=\"with-milk-1\"></ic-tree-item>\n </ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\" tree-item-id=\"tea-1\"></ic-tree-view>\n </div>\n `,\n name: \"Custom IDs with Slotted\",\n};\n\nexport const WithIcons = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"icon-tree-view\" heading=\"Menu\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#icon-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n {\n label: \"Latte\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"With icons\",\n};\n\nexport const WithIconsSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n </ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"With icons - slotted\",\n};\n\n/**\n * Small and large styling will be passed down from tree view to tree items and nested tree items.\n */\nexport const Small = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"small-tree-view\" heading=\"Menu\" size=\"small\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#small-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n {\n label: \"Latte\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"Small\",\n};\n\nexport const SmallSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\" size=\"small\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n </ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Small - slotted\",\n};\n\nexport const Large = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"large-tree-view\" heading=\"Menu\" size=\"large\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#large-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n {\n label: \"Latte\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"Large\",\n};\n\nexport const LargeSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\" size=\"large\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n </ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Large - slotted\",\n};\n\n/**\n * Individual tree-items can be disabled using the `disabled` prop.\n */\nexport const DisabledTreeItems = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"disabled-tree-view\" heading=\"Menu\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#disabled-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n {\n label: \"Latte\",\n disabled: true,\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\", disabled: true }],\n },\n { label: \"Hot chocolate\", disabled: true },\n ];\n </script>\n `,\n name: \"Disabled tree items\",\n};\n\nexport const DisabledTreeItemsSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte\" disabled=\"true\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n </ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\" disabled=\"true\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\" disabled=\"true\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Disabled tree items - slotted\",\n};\n\n/**\n * Custom links and router-items can be passed in using the `router-item` slot.\n */\nexport const RouterItem = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\" truncate-tree-items=\"true\">\n <ic-tree-item>\n <a slot=\"router-item\" href=\"/\"\n >Hot chocolate with marshmallows and whipped cream</a\n >\n </ic-tree-item>\n <ic-tree-item>\n <a slot=\"router-item\" href=\"/tea\">Tea</a>\n </ic-tree-item>\n <ic-tree-item label=\"Coffee\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Router item\",\n};\n\n/**\n * Custom content can be passed to both the tree view (using the `heading` slot) and the tree-item (using the `label` slot).\n */\nexport const SlottedContent = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view>\n <ic-typography variant=\"subtitle-large\" slot=\"heading\">Menu</ic-typography>\n <ic-tree-item>\n <ic-typography slot=\"label\">Coffee<ic-typography>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\"></ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Slotted content\",\n};\n\n/**\n * When the heading/label exceeds the width of the container, the text will wrap unless `truncate-tree-item` is set to `true`.\n */\nexport const MaxContent = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view\n id=\"max-content-tree-view\"\n heading=\"Menu with nested options\"\n >\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#max-content-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n { label: \"Latte with extra milk and sugar\" },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate with marshmallows\" },\n ];\n </script>\n `,\n name: \"Max content\",\n};\n\nexport const MaxContentSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu with nested options\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte with extra milk and sugar\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate with marshmallows\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Max content - slotted\",\n};\n\n/**\n * When `truncate-tree-items` or `truncate-heading` are set to `true`, and the heading/label exceeds the width of the container, they will be truncated with an ellipsis.\n */\nexport const TruncationBehaviour = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view\n id=\"truncated-tree-view\"\n heading=\"Menu with nested options\"\n truncate-tree-items=\"true\"\n truncate-heading=\"true\"\n >\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#truncated-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n { label: \"Latte with extra milk and sugar\" },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [\n { label: \"Earl grey\" },\n {\n label: \"Earl Grey with truncation false\",\n truncateTreeItem: false,\n },\n { label: \"Chai\" },\n ],\n },\n { label: \"Hot chocolate with marshmallows\" },\n ];\n </script>\n `,\n name: \"Truncation behaviour\",\n};\n\nexport const TruncationBehaviourSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view\n heading=\"Menu with nested options\"\n truncate-tree-items=\"true\"\n truncate-heading=\"true\"\n >\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\" expanded=\"true\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte with extra milk and sugar\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\" expanded=\"true\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item\n label=\"Earl Grey with truncation false\"\n truncate-tree-item=\"false\"\n ></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate with marshmallows\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Truncation behaviour - slotted\",\n};\n\n/**\n * Utilising the `selected` attribute on `ic-tree-item` will turn it into a controlled component, displaying the selected state when set to `true`.\n */\nexport const SelectedTreeItem = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"selected-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#selected-tree-view\").treeItemData = [\n { label: \"Coffee\" },\n { label: \"Tea\" },\n { label: \"Hot chocolate\", selected: true },\n ];\n </script>\n `,\n name: \"Selected tree item\",\n};\n\nexport const SelectedTreeItemSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\"></ic-tree-item>\n <ic-tree-item label=\"Tea\"></ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\" selected=\"true\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Selected tree item - slotted\",\n};\n\n/**\n * When setting the `href` attribute, the tree-item will function as a link.\n */\nexport const Link = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"link-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#link-tree-view\").treeItemData = [\n { label: \"Coffee\", href: \"#\" },\n { label: \"Tea\", href: \"#\", selected: true },\n { label: \"Hot chocolate\", disabled: true, href: \"#\" },\n ];\n </script>\n `,\n name: \"Link\",\n};\n\nexport const LinkSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\" href=\"#\"></ic-tree-item>\n <ic-tree-item label=\"Tea\" selected=\"true\" href=\"#\"></ic-tree-item>\n <ic-tree-item\n label=\"Hot chocolate\"\n disabled=\"true\"\n href=\"#\"\n ></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Link - slotted\",\n};\n\n/**\n * An example with the `expanded` prop set to `true` on a parent tree item.\n */\nexport const Expanded = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"expanded-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#expanded-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n expanded: true,\n children: [\n {\n label: \"Americano\",\n expanded: true,\n children: [{ label: \"With milk\" }],\n },\n { label: \"Latte\" },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n const expandElement = document.querySelector(\"#expanded-tree-view\");\n expandElement.addEventListener(\"icTreeItemExpanded\", function (event) {\n console.log(\"icTreeItemExpanded\", event.detail);\n });\n </script>\n `,\n name: \"Expanded\",\n};\n\nexport const ExpandedSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\" id=\"expanded-slotted-tree-view\">\n <ic-tree-item label=\"Coffee\" expanded=\"true\">\n <ic-tree-item label=\"Americano\" expanded=\"true\">\n <ic-tree-item label=\"With milk\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Latte\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n <script>\n const expandElement = document.querySelector(\n \"#expanded-slotted-tree-view\"\n );\n expandElement.addEventListener(\"icTreeItemExpanded\", function (event) {\n console.log(\"icTreeItemExpanded - Slotted\", event.detail);\n });\n </script>\n </div>\n `,\n name: \"Expanded - slotted\",\n};\n\nexport const WithNestedSkipLink = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-skip-link target=\"next-content\" inline=\"true\"></ic-skip-link>\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\">\n <ic-tree-item label=\"Americano\">\n <ic-tree-item label=\"With milk\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Latte\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Nested skip link\",\n};\n"]}
1
+ {"version":3,"file":"ic-tree-view.stories.js","sourceRoot":"","sources":["../../../../../src/components/ic-tree-view/ic-tree-view.stories.js"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\nimport { html } from \"lit-html\";\nimport readme from \"./readme.md\";\nimport treeItemReadme from \"../ic-tree-item/readme.md\";\n\nexport default {\n title: \"Web Components/Tree view\",\n component: \"ic-tree-view\",\n parameters: {\n componentAPI: {\n data: readme + treeItemReadme,\n },\n },\n};\n\n/**\n * Use the tree view component to display hierarchical data in a tree structure. The tree view component is useful for displaying nested data, such as a file system or a category hierarchy.\n *\n * Click the 'Component API' tab to view all the available attributes, events and slots for tree view.\n *\n * To use the tree view component, import `@ukic/canary-web-components` into your application.\n */\nexport const Basic = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"basic-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#basic-tree-view\").treeItemData = [\n { label: \"Coffee\" },\n { label: \"Tea\" },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"Basic\",\n};\n\nexport const BasicSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\"></ic-tree-item>\n <ic-tree-item label=\"Tea\"></ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Basic - slotted\",\n};\n\nexport const Nested = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"nested-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#nested-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n children: [\n { label: \"Americano\", children: [{ label: \"With milk\" }] },\n { label: \"Latte\" },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"Nested\",\n};\n\nexport const NestedSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\">\n <ic-tree-item label=\"Americano\">\n <ic-tree-item label=\"With milk\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Latte\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Nested - slotted\",\n};\n\nexport const CustomIDs = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"nested-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#nested-tree-view\").treeItemData = [\n { label: \"Coffee\", treeItemId: \"coffee-1\" },\n { label: \"Tea\", treeItemId: \"tea-1\" },\n { label: \"Hot chocolate\", treeItemId: \"hot-chocolate-1\" },\n ];\n </script>\n `,\n name: \"Custom IDs with Tree Item Data\",\n};\n\nexport const SlottedCustomIds = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\" tree-item-id=\"coffee-1\">\n <ic-tree-item label=\"Americano\">\n <ic-tree-item\n label=\"With milk\"\n tree-item-id=\"with-milk-1\"\n ></ic-tree-item>\n </ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\" tree-item-id=\"tea-1\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Custom IDs with Slotted\",\n};\n\nexport const CustomID = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\" id=\"coffee-1\"></ic-tree-item>\n <ic-tree-item label=\"Tea\" id=\"tea-1\"></ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\" id=\"hot-chocolate-1\"></ic-tree-item>\n </ic-tree-view>\n </div>\n <script>\n const coffee = document.querySelector(\"#coffee-1\");\n coffee.addEventListener(\"icTreeItemSelected\", function (event) {\n console.log(event.detail.id);\n });\n const tea = document.querySelector(\"#tea-1\");\n tea.addEventListener(\"icTreeItemSelected\", function (event) {\n console.log(event.detail.id);\n });\n const hotChocolate = document.querySelector(\"#hot-chocolate-1\");\n hotChocolate.addEventListener(\"icTreeItemSelected\", function (event) {\n console.log(event.detail.id);\n });\n </script>\n `,\n name: \"Custom IDs using ID\",\n};\n\nexport const WithIcons = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"icon-tree-view\" heading=\"Menu\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#icon-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n {\n label: \"Latte\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"With icons\",\n};\n\nexport const WithIconsSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n </ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"With icons - slotted\",\n};\n\n/**\n * Small and large styling will be passed down from tree view to tree items and nested tree items.\n */\nexport const Small = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"small-tree-view\" heading=\"Menu\" size=\"small\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#small-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n {\n label: \"Latte\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"Small\",\n};\n\nexport const SmallSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\" size=\"small\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n </ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Small - slotted\",\n};\n\nexport const Large = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"large-tree-view\" heading=\"Menu\" size=\"large\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#large-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n {\n label: \"Latte\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n </script>\n `,\n name: \"Large\",\n};\n\nexport const LargeSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\" size=\"large\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n </ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Large - slotted\",\n};\n\n/**\n * Individual tree-items can be disabled using the `disabled` prop.\n */\nexport const DisabledTreeItems = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"disabled-tree-view\" heading=\"Menu\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#disabled-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n {\n label: \"Latte\",\n disabled: true,\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\", disabled: true }],\n },\n { label: \"Hot chocolate\", disabled: true },\n ];\n </script>\n `,\n name: \"Disabled tree items\",\n};\n\nexport const DisabledTreeItemsSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte\" disabled=\"true\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n </ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\" disabled=\"true\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\" disabled=\"true\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Disabled tree items - slotted\",\n};\n\n/**\n * Custom links and router-items can be passed in using the `router-item` slot.\n */\nexport const RouterItem = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\" truncate-tree-items=\"true\">\n <ic-tree-item>\n <a slot=\"router-item\" href=\"/\"\n >Hot chocolate with marshmallows and whipped cream</a\n >\n </ic-tree-item>\n <ic-tree-item>\n <a slot=\"router-item\" href=\"/tea\">Tea</a>\n </ic-tree-item>\n <ic-tree-item label=\"Coffee\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Router item\",\n};\n\n/**\n * Custom content can be passed to both the tree view (using the `heading` slot) and the tree-item (using the `label` slot).\n */\nexport const SlottedContent = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view>\n <ic-typography variant=\"subtitle-large\" slot=\"heading\">Menu</ic-typography>\n <ic-tree-item>\n <ic-typography slot=\"label\">Coffee<ic-typography>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\"></ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Slotted content\",\n};\n\n/**\n * When the heading/label exceeds the width of the container, the text will wrap unless `truncate-tree-item` is set to `true`.\n */\nexport const MaxContent = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view\n id=\"max-content-tree-view\"\n heading=\"Menu with nested options\"\n >\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#max-content-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n { label: \"Latte with extra milk and sugar\" },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate with marshmallows\" },\n ];\n </script>\n `,\n name: \"Max content\",\n};\n\nexport const MaxContentSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu with nested options\">\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte with extra milk and sugar\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate with marshmallows\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Max content - slotted\",\n};\n\n/**\n * When `truncate-tree-items` or `truncate-heading` are set to `true`, and the heading/label exceeds the width of the container, they will be truncated with an ellipsis.\n */\nexport const TruncationBehaviour = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view\n id=\"truncated-tree-view\"\n heading=\"Menu with nested options\"\n truncate-tree-items=\"true\"\n truncate-heading=\"true\"\n >\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#truncated-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n icon: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\" /></svg>',\n children: [\n { label: \"Americano\" },\n { label: \"Latte with extra milk and sugar\" },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [\n { label: \"Earl grey\" },\n {\n label: \"Earl Grey with truncation false\",\n truncateTreeItem: false,\n },\n { label: \"Chai\" },\n ],\n },\n { label: \"Hot chocolate with marshmallows\" },\n ];\n </script>\n `,\n name: \"Truncation behaviour\",\n};\n\nexport const TruncationBehaviourSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view\n heading=\"Menu with nested options\"\n truncate-tree-items=\"true\"\n truncate-heading=\"true\"\n >\n <svg slot=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z\"\n />\n </svg>\n <ic-tree-item label=\"Coffee\" expanded=\"true\">\n <svg\n slot=\"icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"\n />\n </svg>\n <ic-tree-item label=\"Americano\"></ic-tree-item>\n <ic-tree-item label=\"Latte with extra milk and sugar\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\" expanded=\"true\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item\n label=\"Earl Grey with truncation false\"\n truncate-tree-item=\"false\"\n ></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate with marshmallows\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Truncation behaviour - slotted\",\n};\n\n/**\n * Utilising the `selected` attribute on `ic-tree-item` will turn it into a controlled component, displaying the selected state when set to `true`.\n */\nexport const SelectedTreeItem = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"selected-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#selected-tree-view\").treeItemData = [\n { label: \"Coffee\" },\n { label: \"Tea\" },\n { label: \"Hot chocolate\", selected: true },\n ];\n </script>\n `,\n name: \"Selected tree item\",\n};\n\nexport const SelectedTreeItemSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\"></ic-tree-item>\n <ic-tree-item label=\"Tea\"></ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\" selected=\"true\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Selected tree item - slotted\",\n};\n\n/**\n * When setting the `href` attribute, the tree-item will function as a link.\n */\nexport const Link = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"link-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#link-tree-view\").treeItemData = [\n { label: \"Coffee\", href: \"#\" },\n { label: \"Tea\", href: \"#\", selected: true },\n { label: \"Hot chocolate\", disabled: true, href: \"#\" },\n ];\n </script>\n `,\n name: \"Link\",\n};\n\nexport const LinkSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\" href=\"#\"></ic-tree-item>\n <ic-tree-item label=\"Tea\" selected=\"true\" href=\"#\"></ic-tree-item>\n <ic-tree-item\n label=\"Hot chocolate\"\n disabled=\"true\"\n href=\"#\"\n ></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Link - slotted\",\n};\n\n/**\n * An example with the `expanded` prop set to `true` on a parent tree item.\n */\nexport const Expanded = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view id=\"expanded-tree-view\" heading=\"Menu\"> </ic-tree-view>\n </div>\n <script>\n document.querySelector(\"#expanded-tree-view\").treeItemData = [\n {\n label: \"Coffee\",\n expanded: true,\n children: [\n {\n label: \"Americano\",\n expanded: true,\n children: [{ label: \"With milk\" }],\n },\n { label: \"Latte\" },\n { label: \"Espresso\" },\n ],\n },\n {\n label: \"Tea\",\n children: [{ label: \"Earl grey\" }, { label: \"Chai\" }],\n },\n { label: \"Hot chocolate\" },\n ];\n const expandElement = document.querySelector(\"#expanded-tree-view\");\n expandElement.addEventListener(\"icTreeItemExpanded\", function (event) {\n console.log(\"icTreeItemExpanded\", event.detail);\n });\n </script>\n `,\n name: \"Expanded\",\n};\n\nexport const ExpandedSlotted = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-tree-view heading=\"Menu\" id=\"expanded-slotted-tree-view\">\n <ic-tree-item label=\"Coffee\" expanded=\"true\">\n <ic-tree-item label=\"Americano\" expanded=\"true\">\n <ic-tree-item label=\"With milk\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Latte\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n <script>\n const expandElement = document.querySelector(\n \"#expanded-slotted-tree-view\"\n );\n expandElement.addEventListener(\"icTreeItemExpanded\", function (event) {\n console.log(\"icTreeItemExpanded - Slotted\", event.detail);\n });\n </script>\n </div>\n `,\n name: \"Expanded - slotted\",\n};\n\nexport const WithNestedSkipLink = {\n render: () => html`\n <div style=\"width:250px\">\n <ic-skip-link target=\"next-content\" inline=\"true\"></ic-skip-link>\n <ic-tree-view heading=\"Menu\">\n <ic-tree-item label=\"Coffee\">\n <ic-tree-item label=\"Americano\">\n <ic-tree-item label=\"With milk\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Latte\"></ic-tree-item>\n <ic-tree-item label=\"Espresso\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Tea\">\n <ic-tree-item label=\"Earl Grey\"></ic-tree-item>\n <ic-tree-item label=\"Chai\"></ic-tree-item>\n </ic-tree-item>\n <ic-tree-item label=\"Hot chocolate\"></ic-tree-item>\n </ic-tree-view>\n </div>\n `,\n name: \"Nested skip link\",\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/utils/types.ts"],"names":[],"mappings":"AA8BA,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,sCAAe,CAAA;IACf,0CAAmB,CAAA;AACrB,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAsED,MAAM,CAAN,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,sCAAa,CAAA;IACb,wCAAe,CAAA;AACjB,CAAC,EAJW,qBAAqB,KAArB,qBAAqB,QAIhC;AAgKD,MAAM,CAAN,IAAY,iBAaX;AAbD,WAAY,iBAAiB;IAC3B,+DAAS,CAAA;IACT,iEAAU,CAAA;IACV,2DAAO,CAAA;IACP,2DAAO,CAAA;IACP,uDAAK,CAAA;IACL,yDAAM,CAAA;IACN,yDAAM,CAAA;IACN,6DAAQ,CAAA;IACR,mEAAW,CAAA;IACX,+DAAS,CAAA;IACT,kEAAU,CAAA;IACV,kEAAU,CAAA;AACZ,CAAC,EAbW,iBAAiB,KAAjB,iBAAiB,QAa5B;AAED,MAAM,CAAN,IAAY,eAQX;AARD,WAAY,eAAe;IACzB,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;AACP,CAAC,EARW,eAAe,KAAf,eAAe,QAQ1B;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,+CAAQ,CAAA;IACR,+CAAQ,CAAA;IACR,iDAAS,CAAA;IACT,qDAAW,CAAA;IACX,mDAAU,CAAA;IACV,+CAAQ,CAAA;IACR,mDAAU,CAAA;AACZ,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,+CAAU,CAAA;IACV,+CAAU,CAAA;IACV,iDAAW,CAAA;IACX,qDAAa,CAAA;IACb,mDAAY,CAAA;IACZ,+CAAU,CAAA;IACV,mDAAY,CAAA;AACd,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB","sourcesContent":["import {\n IcPaginationLabelTypes,\n IcPaginationTypes,\n IcPaginationAlignmentOptions,\n} from \"../components\";\n\nexport type IcFocusableComponents =\n | HTMLIcBreadcrumbElement\n | HTMLIcButtonElement\n | HTMLIcCardVerticalElement\n | HTMLIcCheckboxElement\n | HTMLIcChipElement\n | HTMLIcLinkElement\n | HTMLIcNavigationButtonElement\n | HTMLIcNavigationGroupElement\n | HTMLIcNavigationItemElement\n | HTMLIcRadioOptionElement\n | HTMLIcSearchBarElement\n | HTMLIcSelectElement\n | HTMLIcSwitchElement\n | HTMLIcTabElement\n | HTMLIcTextFieldElement;\n\nexport type IcStatusVariants =\n | \"neutral\"\n | \"info\"\n | \"warning\"\n | \"error\"\n | \"success\";\n\nexport enum IcInformationStatus {\n Warning = \"warning\",\n Error = \"error\",\n Success = \"success\",\n}\n\nexport type IcSizes = \"medium\" | \"large\" | \"small\";\n\nexport type IcSizesNoLarge = \"medium\" | \"small\";\n\nexport type IcInformationStatusOrEmpty = \"warning\" | \"error\" | \"success\" | \"\";\n\nexport type IcNavType = \"side\" | \"top\" | \"page-header\";\n\n// From: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete\nexport type IcAutocompleteTypes =\n | \"on\"\n | \"off\"\n | \"name\"\n | \"honorific-prefix\"\n | \"given-name\"\n | \"additional-name\"\n | \"family-name\"\n | \"honorific-suffix\"\n | \"nickname\"\n | \"email\"\n | \"username\"\n | \"new-password\"\n | \"current-password\"\n | \"one-time-code\"\n | \"organization-title\"\n | \"organization\"\n | \"street-address\"\n | \"address-line1\"\n | \"address-line2\"\n | \"address-line3\"\n | \"address-level4\"\n | \"address-level3\"\n | \"address-level2\"\n | \"address-level1\"\n | \"country\"\n | \"country-name\"\n | \"postal-code\"\n | \"cc-name\"\n | \"cc-given-name\"\n | \"cc-additional-name\"\n | \"cc-family-name\"\n | \"cc-family-name\"\n | \"cc-number\"\n | \"cc-exp\"\n | \"cc-exp-month\"\n | \"cc-exp-year\"\n | \"cc-csc\"\n | \"cc-type\"\n | \"transaction-currency\"\n | \"transaction-amount\"\n | \"language\"\n | \"bday\"\n | \"bday-day\"\n | \"bday-month\"\n | \"bday-year\"\n | \"sex\"\n | \"tel\"\n | \"tel-country-code\"\n | \"tel-national\"\n | \"tel-area-code\"\n | \"tel-local\"\n | \"tel-extension\"\n | \"impp\"\n | \"url\"\n | \"photo\";\n\nexport type IcAlignment = \"left\" | \"center\" | \"full-width\";\n\nexport enum IcBrandForegroundEnum {\n Default = \"default\",\n Dark = \"dark\",\n Light = \"light\",\n}\n\nexport type IcThemeMode = \"dark\" | \"light\" | \"inherit\";\n\nexport type IcBrandForeground = \"default\" | \"dark\" | \"light\";\n\nexport type IcBrandForegroundNoDefault = \"dark\" | \"light\";\n\nexport type IcBrand = {\n mode: IcBrandForeground;\n color: IcColorRGB;\n};\n\nexport type IcAdditionalFieldTypes = \"static\" | \"dynamic\";\n\nexport type IcColorRGB = {\n r: number;\n g: number;\n b: number;\n};\n\nexport type IcColorRGBA = IcColorRGB & {\n a: number;\n};\n\nexport type IcActivationTypes = \"automatic\" | \"manual\";\n\nexport type IcAutocorrectStates = \"on\" | \"off\";\n\nexport type IcNavParentDetails = {\n navType: IcNavType | \"\";\n parent: HTMLElement | null;\n};\n\nexport type IcTypographyVariants =\n | \"h1\"\n | \"h2\"\n | \"h3\"\n | \"h4\"\n | \"subtitle-large\"\n | \"subtitle-small\"\n | \"body\"\n | \"label\"\n | \"label-uppercase\"\n | \"caption\"\n | \"caption-uppercase\"\n | \"code-large\"\n | \"code-small\"\n | \"code-extra-small\"\n | \"badge\"\n | \"badge-small\";\n\n/**\n * @interface IcMenuOption\n * Set \"label\" and \"value\" props to use as the option's label and value.\n * Alternatively, custom names for these props can be used e.g. by setting the \"labelField\" and \"valueField\" props on the relevant component.\n *\n * Any props supplied to the \"htmlProps\" object will be spread onto the option's underlying <li> element.\n */\nexport interface IcMenuOption {\n description?: string;\n disabled?: boolean;\n recommended?: boolean;\n children?: IcMenuOption[];\n loading?: boolean;\n timedOut?: boolean;\n [key: string]: any;\n element?: {\n component: any;\n ariaLabel: string;\n };\n icon?: any;\n htmlProps?: Record<string, any>;\n}\n\nexport type IcSearchMatchPositions = \"start\" | \"anywhere\";\n\nexport type IcCallbackFunctionNoReturn = (...args: unknown[]) => void;\n\nexport type IcRequiredPropsTypes =\n | string\n | boolean\n | number\n | HTMLElement\n | IcMenuOption[]\n | undefined;\n\nexport type IcPropObject = { prop: IcRequiredPropsTypes; propName: string };\n\nexport type IcRelatedTarget = EventTarget | undefined;\n\nexport type IcOrientation = \"horizontal\" | \"vertical\";\n\nexport type IcEmphasisType = \"filled\" | \"outlined\";\n\nexport interface IcValueEventDetail {\n value: string;\n keyPressed?: string;\n}\n\nexport interface IcMultiValueEventDetail {\n value: string | string[] | null;\n keyPressed?: string;\n}\n\nexport interface IcBlurEventDetail {\n relatedTarget: IcRelatedTarget | null;\n}\n\nexport type IcSelectTypes = \"single\" | \"multi\";\n\nexport type IcSelectMethodTypes = \"auto\" | \"manual\";\n\nexport type IcDeviceSizes = 0 | 576 | 768 | 992 | 1200;\n\ntype RGB = `rgb(${string})`;\ntype RGBA = `rgba(${string})`;\ntype HEX = `#${string}`;\n\nexport type IcColor = RGB | RGBA | HEX;\n\nexport type IcIconPlacementOptions = \"left\" | \"right\" | \"top\";\n\nexport type IcButtonTooltipPlacement = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nexport type IcThemeSettings = \"dark\" | \"light\" | \"system\";\n\nexport interface IcPaginationBarOptions {\n alignment?: IcPaginationAlignmentOptions;\n hideAllFromItemsPerPage?: boolean;\n hideCurrentPage?: boolean;\n hideFirstAndLastPageButton?: boolean;\n hideRangeLabel?: boolean;\n itemLabel?: string;\n itemsPerPageOptions?: { label: string; value: string }[];\n monochrome?: boolean;\n pageLabel?: string;\n rangeLabelType?: IcPaginationLabelTypes;\n selectedItemsPerPage?: number;\n selectItemsPerPageOnEnter?: boolean;\n setToFirstPageOnPaginationChange?: boolean;\n showGoToPageControl?: boolean;\n showItemsPerPageControl?: boolean;\n theme?: IcThemeMode;\n type?: IcPaginationTypes;\n}\n\nexport type IcDateFormat = \"DD/MM/YYYY\" | \"MM/DD/YYYY\" | \"YYYY/MM/DD\";\n\nexport type IcDateValueFormat = string | Date | null | undefined;\n\nexport type IcTimeFormat = \"HH:MM\" | \"HH:MM:SS\" | \"HH:MM:SS.SSS\";\n\nexport type IcTimeFormatSelector = \"HH:MM\" | \"HH:MM:SS\";\n\nexport type IcDisableTimeSelection =\n | string\n | Date\n | { start: string | Date; end: string | Date };\n\nexport enum IcDateInputMonths {\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n}\n\nexport enum IcShortDayNames {\n \"Sun\",\n \"Mon\",\n \"Tue\",\n \"Wed\",\n \"Thu\",\n \"Fri\",\n \"Sat\",\n}\n\nexport enum IcDayNames {\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n}\n\nexport enum IcWeekDays {\n Sunday = 0,\n Monday = 1,\n Tuesday = 2,\n Wednesday = 3,\n Thursday = 4,\n Friday = 5,\n Saturday = 6,\n}\n\nexport type IcPositionTopOrRight = \"top\" | \"right\";\n\n// Matches HTML aria-live attribute options\nexport type IcAriaLive = \"polite\" | \"assertive\" | \"off\";\n\nexport type IcCardDensity = \"default\" | \"spacious\";\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/utils/types.ts"],"names":[],"mappings":"AA8BA,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,sCAAe,CAAA;IACf,0CAAmB,CAAA;AACrB,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAsED,MAAM,CAAN,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,sCAAa,CAAA;IACb,wCAAe,CAAA;AACjB,CAAC,EAJW,qBAAqB,KAArB,qBAAqB,QAIhC;AA8JD,MAAM,CAAN,IAAY,iBAaX;AAbD,WAAY,iBAAiB;IAC3B,+DAAS,CAAA;IACT,iEAAU,CAAA;IACV,2DAAO,CAAA;IACP,2DAAO,CAAA;IACP,uDAAK,CAAA;IACL,yDAAM,CAAA;IACN,yDAAM,CAAA;IACN,6DAAQ,CAAA;IACR,mEAAW,CAAA;IACX,+DAAS,CAAA;IACT,kEAAU,CAAA;IACV,kEAAU,CAAA;AACZ,CAAC,EAbW,iBAAiB,KAAjB,iBAAiB,QAa5B;AAED,MAAM,CAAN,IAAY,eAQX;AARD,WAAY,eAAe;IACzB,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;IACL,mDAAK,CAAA;AACP,CAAC,EARW,eAAe,KAAf,eAAe,QAQ1B;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,+CAAQ,CAAA;IACR,+CAAQ,CAAA;IACR,iDAAS,CAAA;IACT,qDAAW,CAAA;IACX,mDAAU,CAAA;IACV,+CAAQ,CAAA;IACR,mDAAU,CAAA;AACZ,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,+CAAU,CAAA;IACV,+CAAU,CAAA;IACV,iDAAW,CAAA;IACX,qDAAa,CAAA;IACb,mDAAY,CAAA;IACZ,+CAAU,CAAA;IACV,mDAAY,CAAA;AACd,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB","sourcesContent":["import {\n IcPaginationLabelTypes,\n IcPaginationTypes,\n IcPaginationAlignmentOptions,\n} from \"../components\";\n\nexport type IcFocusableComponents =\n | HTMLIcBreadcrumbElement\n | HTMLIcButtonElement\n | HTMLIcCardVerticalElement\n | HTMLIcCheckboxElement\n | HTMLIcChipElement\n | HTMLIcLinkElement\n | HTMLIcNavigationButtonElement\n | HTMLIcNavigationGroupElement\n | HTMLIcNavigationItemElement\n | HTMLIcRadioOptionElement\n | HTMLIcSearchBarElement\n | HTMLIcSelectElement\n | HTMLIcSwitchElement\n | HTMLIcTabElement\n | HTMLIcTextFieldElement;\n\nexport type IcStatusVariants =\n | \"neutral\"\n | \"info\"\n | \"warning\"\n | \"error\"\n | \"success\";\n\nexport enum IcInformationStatus {\n Warning = \"warning\",\n Error = \"error\",\n Success = \"success\",\n}\n\nexport type IcSizes = \"medium\" | \"large\" | \"small\";\n\nexport type IcSizesNoLarge = \"medium\" | \"small\";\n\nexport type IcInformationStatusOrEmpty = \"warning\" | \"error\" | \"success\" | \"\";\n\nexport type IcNavType = \"side\" | \"top\" | \"page-header\";\n\n// From: https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete\nexport type IcAutocompleteTypes =\n | \"on\"\n | \"off\"\n | \"name\"\n | \"honorific-prefix\"\n | \"given-name\"\n | \"additional-name\"\n | \"family-name\"\n | \"honorific-suffix\"\n | \"nickname\"\n | \"email\"\n | \"username\"\n | \"new-password\"\n | \"current-password\"\n | \"one-time-code\"\n | \"organization-title\"\n | \"organization\"\n | \"street-address\"\n | \"address-line1\"\n | \"address-line2\"\n | \"address-line3\"\n | \"address-level4\"\n | \"address-level3\"\n | \"address-level2\"\n | \"address-level1\"\n | \"country\"\n | \"country-name\"\n | \"postal-code\"\n | \"cc-name\"\n | \"cc-given-name\"\n | \"cc-additional-name\"\n | \"cc-family-name\"\n | \"cc-family-name\"\n | \"cc-number\"\n | \"cc-exp\"\n | \"cc-exp-month\"\n | \"cc-exp-year\"\n | \"cc-csc\"\n | \"cc-type\"\n | \"transaction-currency\"\n | \"transaction-amount\"\n | \"language\"\n | \"bday\"\n | \"bday-day\"\n | \"bday-month\"\n | \"bday-year\"\n | \"sex\"\n | \"tel\"\n | \"tel-country-code\"\n | \"tel-national\"\n | \"tel-area-code\"\n | \"tel-local\"\n | \"tel-extension\"\n | \"impp\"\n | \"url\"\n | \"photo\";\n\nexport type IcAlignment = \"left\" | \"center\" | \"full-width\";\n\nexport enum IcBrandForegroundEnum {\n Default = \"default\",\n Dark = \"dark\",\n Light = \"light\",\n}\n\nexport type IcThemeMode = \"dark\" | \"light\" | \"inherit\";\n\nexport type IcBrandForeground = \"default\" | \"dark\" | \"light\";\n\nexport type IcBrandForegroundNoDefault = \"dark\" | \"light\";\n\nexport type IcBrand = {\n mode: IcBrandForeground;\n color: IcColorRGB;\n};\n\nexport type IcAdditionalFieldTypes = \"static\" | \"dynamic\";\n\nexport type IcColorRGB = {\n r: number;\n g: number;\n b: number;\n};\n\nexport type IcColorRGBA = IcColorRGB & {\n a: number;\n};\n\nexport type IcActivationTypes = \"automatic\" | \"manual\";\n\nexport type IcAutocorrectStates = \"on\" | \"off\";\n\nexport type IcNavParentDetails = {\n navType: IcNavType | \"\";\n parent: HTMLElement | null;\n};\n\nexport type IcTypographyVariants =\n | \"h1\"\n | \"h2\"\n | \"h3\"\n | \"h4\"\n | \"subtitle-large\"\n | \"subtitle-small\"\n | \"body\"\n | \"label\"\n | \"label-uppercase\"\n | \"caption\"\n | \"caption-uppercase\"\n | \"code-large\"\n | \"code-small\"\n | \"code-extra-small\"\n | \"badge\"\n | \"badge-small\";\n\n/**\n * @interface IcMenuOption\n * Set \"label\" and \"value\" props to use as the option's label and value.\n * Alternatively, custom names for these props can be used e.g. by setting the \"labelField\" and \"valueField\" props on the relevant component.\n *\n * Any props supplied to the \"htmlProps\" object will be spread onto the option's underlying <li> element.\n */\nexport interface IcMenuOption {\n description?: string;\n disabled?: boolean;\n recommended?: boolean;\n children?: IcMenuOption[];\n loading?: boolean;\n timedOut?: boolean;\n [key: string]: any;\n element?: {\n component: any;\n ariaLabel: string;\n };\n icon?: any;\n htmlProps?: Record<string, any>;\n}\n\nexport type IcSearchMatchPositions = \"start\" | \"anywhere\";\n\nexport type IcCallbackFunctionNoReturn = (...args: unknown[]) => void;\n\nexport type IcRequiredPropsTypes =\n | string\n | boolean\n | number\n | HTMLElement\n | IcMenuOption[]\n | undefined;\n\nexport type IcPropObject = { prop: IcRequiredPropsTypes; propName: string };\n\nexport type IcRelatedTarget = EventTarget | undefined;\n\nexport type IcOrientation = \"horizontal\" | \"vertical\";\n\nexport type IcEmphasisType = \"filled\" | \"outlined\";\n\nexport interface IcValueEventDetail {\n value: string;\n keyPressed?: string;\n}\n\nexport interface IcMultiValueEventDetail {\n value: string | string[] | null;\n keyPressed?: string;\n}\n\nexport interface IcBlurEventDetail {\n relatedTarget: IcRelatedTarget | null;\n}\n\nexport type IcSelectTypes = \"single\" | \"multi\";\n\nexport type IcSelectMethodTypes = \"auto\" | \"manual\";\n\nexport type IcDeviceSizes = 0 | 576 | 768 | 992 | 1200;\n\ntype RGB = `rgb(${string})`;\ntype RGBA = `rgba(${string})`;\ntype HEX = `#${string}`;\n\nexport type IcColor = RGB | RGBA | HEX;\n\nexport type IcIconPlacementOptions = \"left\" | \"right\" | \"top\";\n\nexport type IcButtonTooltipPlacement = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nexport type IcThemeSettings = \"dark\" | \"light\" | \"system\";\n\nexport interface IcPaginationBarOptions {\n alignment?: IcPaginationAlignmentOptions;\n hideAllFromItemsPerPage?: boolean;\n hideCurrentPage?: boolean;\n hideFirstAndLastPageButton?: boolean;\n hideRangeLabel?: boolean;\n itemLabel?: string;\n itemsPerPageOptions?: { label: string; value: string }[];\n monochrome?: boolean;\n pageLabel?: string;\n rangeLabelType?: IcPaginationLabelTypes;\n selectedItemsPerPage?: number;\n selectItemsPerPageOnEnter?: boolean;\n setToFirstPageOnPaginationChange?: boolean;\n showGoToPageControl?: boolean;\n showItemsPerPageControl?: boolean;\n theme?: IcThemeMode;\n type?: IcPaginationTypes;\n}\n\nexport type IcDateFormat = \"DD/MM/YYYY\" | \"MM/DD/YYYY\" | \"YYYY/MM/DD\";\n\nexport type IcDateValueFormat = string | Date | null | undefined;\n\nexport type IcTimeFormat = \"HH:MM\" | \"HH:MM:SS\" | \"HH:MM:SS.SSS\";\n\nexport type IcDisableTimeSelection = {\n start: string | Date;\n end: string | Date;\n};\n\nexport enum IcDateInputMonths {\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n}\n\nexport enum IcShortDayNames {\n \"Sun\",\n \"Mon\",\n \"Tue\",\n \"Wed\",\n \"Thu\",\n \"Fri\",\n \"Sat\",\n}\n\nexport enum IcDayNames {\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n}\n\nexport enum IcWeekDays {\n Sunday = 0,\n Monday = 1,\n Tuesday = 2,\n Wednesday = 3,\n Thursday = 4,\n Friday = 5,\n Saturday = 6,\n}\n\nexport type IcPositionTopOrRight = \"top\" | \"right\";\n\n// Matches HTML aria-live attribute options\nexport type IcAriaLive = \"polite\" | \"assertive\" | \"off\";\n\nexport type IcCardDensity = \"default\" | \"spacious\";\n"]}