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

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 (528) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-56717660.js → helpers-b55826ba.js} +22 -22
  3. package/dist/cjs/{helpers-56717660.js.map → helpers-b55826ba.js.map} +1 -1
  4. package/dist/cjs/helpers-da852478.js.map +1 -1
  5. package/dist/cjs/ic-accordion-group.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-accordion.cjs.entry.js +1 -1
  7. package/dist/cjs/ic-action-chip.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-alert.cjs.entry.js +2 -2
  9. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  11. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  12. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  13. package/dist/cjs/ic-breadcrumb.cjs.entry.js +1 -1
  14. package/dist/cjs/ic-button_3.cjs.entry.js +24 -18
  15. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
  17. package/dist/cjs/ic-checkbox-group.cjs.entry.js +3 -3
  18. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-checkbox_3.cjs.entry.js +6 -6
  20. package/dist/cjs/ic-checkbox_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-chip.cjs.entry.js +1 -1
  22. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  23. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-data-row.cjs.entry.js +3 -3
  25. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-date-input.cjs.entry.js +6 -6
  27. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-dialog.cjs.entry.js +6 -4
  29. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  31. package/dist/cjs/ic-footer-link-group.cjs.entry.js +1 -1
  32. package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
  33. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-footer.cjs.entry.js +1 -1
  35. package/dist/cjs/ic-hero.cjs.entry.js +5 -5
  36. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +7 -7
  38. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +27 -14
  40. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  42. package/dist/cjs/ic-layout-grid-item.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  44. package/dist/cjs/ic-layout-grid.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-link.cjs.entry.js +2 -2
  46. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -2
  48. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
  50. package/dist/cjs/ic-menu.cjs.entry.js +6 -6
  51. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  53. package/dist/cjs/ic-navigation-group.cjs.entry.js +2 -2
  54. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-navigation-menu.cjs.entry.js +5 -5
  57. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-page-header.cjs.entry.js +7 -7
  59. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-pagination_4.cjs.entry.js +44 -35
  61. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-popover-menu.cjs.entry.js +5 -5
  63. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-radio-group.cjs.entry.js +5 -5
  65. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -5
  67. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-search-bar.cjs.entry.js +10 -10
  69. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  71. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-side-navigation.cjs.entry.js +5 -5
  73. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  75. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  77. package/dist/cjs/ic-skip-link.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-status-tag.cjs.entry.js +3 -3
  79. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-step.cjs.entry.js +14 -14
  81. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-stepper.cjs.entry.js +3 -3
  83. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-switch.cjs.entry.js +5 -5
  85. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-tab-context.cjs.entry.js +10 -2
  87. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-tab-group.cjs.entry.js +3 -3
  89. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  91. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  93. package/dist/cjs/ic-table-of-contents.cjs.entry.js +363 -0
  94. package/dist/cjs/ic-table-of-contents.cjs.entry.js.map +1 -0
  95. package/dist/cjs/ic-theme.cjs.entry.js +2 -2
  96. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  97. package/dist/cjs/ic-time-input.cjs.entry.js +7 -7
  98. package/dist/cjs/ic-time-input.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  100. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  101. package/dist/cjs/ic-toast.cjs.entry.js +4 -4
  102. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  103. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +3 -3
  104. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-toggle-button.cjs.entry.js +3 -3
  106. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
  108. package/dist/cjs/ic-tree-item.cjs.entry.js +2 -2
  109. package/dist/cjs/ic-tree-view.cjs.entry.js +3 -3
  110. package/dist/cjs/ic-typography.cjs.entry.js +3 -3
  111. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  112. package/dist/cjs/index-d337cd8a.js +4 -0
  113. package/dist/cjs/loader.cjs.js +1 -1
  114. package/dist/collection/assets/error-icon.svg +4 -4
  115. package/dist/collection/assets/info-icon.svg +4 -4
  116. package/dist/collection/assets/neutral-icon.svg +4 -4
  117. package/dist/collection/assets/success-icon.svg +4 -4
  118. package/dist/collection/assets/warning-icon.svg +4 -4
  119. package/dist/collection/collection-manifest.json +1 -0
  120. package/dist/collection/components/ic-data-table/ic-data-table.stories.js +1 -1
  121. package/dist/collection/components/ic-data-table/ic-data-table.stories.js.map +1 -1
  122. package/dist/collection/components/ic-data-table/story-data.js +82 -54
  123. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  124. package/dist/collection/components/ic-date-input/ic-date-input.js +6 -6
  125. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  126. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js +28 -0
  127. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents-item.js.map +1 -0
  128. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.css +145 -0
  129. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js +526 -0
  130. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.js.map +1 -0
  131. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.stories.js +291 -0
  132. package/dist/collection/components/ic-table-of-contents/ic-table-of-contents.stories.js.map +1 -0
  133. package/dist/collection/components/ic-table-of-contents/test/a11y/ic-table-of-contents.test.a11y.js +13 -0
  134. package/dist/collection/components/ic-table-of-contents/test/a11y/ic-table-of-contents.test.a11y.js.map +1 -0
  135. package/dist/collection/components/ic-time-input/ic-time-input.js +7 -7
  136. package/dist/collection/components/ic-time-input/ic-time-input.js.map +1 -1
  137. package/dist/collection/components/ic-tree-item/ic-tree-item.js +2 -2
  138. package/dist/collection/components/ic-tree-view/ic-tree-view.js +3 -3
  139. package/dist/collection/utils/types.js.map +1 -1
  140. package/dist/components/helpers.js +22 -22
  141. package/dist/components/helpers2.js.map +1 -1
  142. package/dist/components/ic-alert.js +1 -1
  143. package/dist/components/ic-alert.js.map +1 -1
  144. package/dist/components/ic-button2.js +15 -10
  145. package/dist/components/ic-button2.js.map +1 -1
  146. package/dist/components/ic-checkbox-group.js +2 -2
  147. package/dist/components/ic-checkbox-group.js.map +1 -1
  148. package/dist/components/ic-checkbox2.js +3 -3
  149. package/dist/components/ic-checkbox2.js.map +1 -1
  150. package/dist/components/ic-data-list.js +2 -2
  151. package/dist/components/ic-data-list.js.map +1 -1
  152. package/dist/components/ic-data-row.js +2 -2
  153. package/dist/components/ic-data-row.js.map +1 -1
  154. package/dist/components/ic-date-input2.js +6 -6
  155. package/dist/components/ic-date-input2.js.map +1 -1
  156. package/dist/components/ic-dialog.js +5 -3
  157. package/dist/components/ic-dialog.js.map +1 -1
  158. package/dist/components/ic-empty-state2.js +2 -2
  159. package/dist/components/ic-empty-state2.js.map +1 -1
  160. package/dist/components/ic-footer-link.js +2 -2
  161. package/dist/components/ic-footer-link.js.map +1 -1
  162. package/dist/components/ic-hero.js +4 -4
  163. package/dist/components/ic-hero.js.map +1 -1
  164. package/dist/components/ic-horizontal-scroll2.js +6 -6
  165. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  166. package/dist/components/ic-input-component-container2.js +3 -3
  167. package/dist/components/ic-input-component-container2.js.map +1 -1
  168. package/dist/components/ic-input-container2.js +2 -2
  169. package/dist/components/ic-input-container2.js.map +1 -1
  170. package/dist/components/ic-input-label2.js +2 -2
  171. package/dist/components/ic-input-label2.js.map +1 -1
  172. package/dist/components/ic-input-validation2.js +21 -6
  173. package/dist/components/ic-input-validation2.js.map +1 -1
  174. package/dist/components/ic-layout-grid-item.js +2 -2
  175. package/dist/components/ic-layout-grid-item.js.map +1 -1
  176. package/dist/components/ic-layout-grid.js +2 -2
  177. package/dist/components/ic-layout-grid.js.map +1 -1
  178. package/dist/components/ic-link2.js +1 -1
  179. package/dist/components/ic-link2.js.map +1 -1
  180. package/dist/components/ic-loading-indicator2.js +5 -5
  181. package/dist/components/ic-loading-indicator2.js.map +1 -1
  182. package/dist/components/ic-menu-group.js +1 -1
  183. package/dist/components/ic-menu-group.js.map +1 -1
  184. package/dist/components/ic-menu2.js +5 -5
  185. package/dist/components/ic-menu2.js.map +1 -1
  186. package/dist/components/ic-navigation-group.js +1 -1
  187. package/dist/components/ic-navigation-group.js.map +1 -1
  188. package/dist/components/ic-navigation-menu2.js +4 -4
  189. package/dist/components/ic-navigation-menu2.js.map +1 -1
  190. package/dist/components/ic-page-header.js +6 -6
  191. package/dist/components/ic-page-header.js.map +1 -1
  192. package/dist/components/ic-pagination-item2.js +1 -1
  193. package/dist/components/ic-pagination-item2.js.map +1 -1
  194. package/dist/components/ic-pagination2.js +4 -4
  195. package/dist/components/ic-pagination2.js.map +1 -1
  196. package/dist/components/ic-popover-menu.js +4 -4
  197. package/dist/components/ic-popover-menu.js.map +1 -1
  198. package/dist/components/ic-radio-group.js +4 -4
  199. package/dist/components/ic-radio-group.js.map +1 -1
  200. package/dist/components/ic-radio-option.js +4 -4
  201. package/dist/components/ic-radio-option.js.map +1 -1
  202. package/dist/components/ic-search-bar.js +10 -10
  203. package/dist/components/ic-search-bar.js.map +1 -1
  204. package/dist/components/ic-section-container2.js +2 -2
  205. package/dist/components/ic-section-container2.js.map +1 -1
  206. package/dist/components/ic-select2.js +10 -9
  207. package/dist/components/ic-select2.js.map +1 -1
  208. package/dist/components/ic-side-navigation.js +5 -5
  209. package/dist/components/ic-side-navigation.js.map +1 -1
  210. package/dist/components/ic-skeleton.js +2 -2
  211. package/dist/components/ic-skeleton.js.map +1 -1
  212. package/dist/components/ic-skip-link.js +2 -2
  213. package/dist/components/ic-skip-link.js.map +1 -1
  214. package/dist/components/ic-status-tag.js +2 -2
  215. package/dist/components/ic-status-tag.js.map +1 -1
  216. package/dist/components/ic-step.js +13 -13
  217. package/dist/components/ic-step.js.map +1 -1
  218. package/dist/components/ic-stepper.js +2 -2
  219. package/dist/components/ic-stepper.js.map +1 -1
  220. package/dist/components/ic-switch.js +4 -4
  221. package/dist/components/ic-switch.js.map +1 -1
  222. package/dist/components/ic-tab-context.js +11 -2
  223. package/dist/components/ic-tab-context.js.map +1 -1
  224. package/dist/components/ic-tab-group.js +2 -2
  225. package/dist/components/ic-tab-group.js.map +1 -1
  226. package/dist/components/ic-tab-panel.js +2 -2
  227. package/dist/components/ic-tab-panel.js.map +1 -1
  228. package/dist/components/ic-table-of-contents.d.ts +11 -0
  229. package/dist/components/ic-table-of-contents.js +408 -0
  230. package/dist/components/ic-table-of-contents.js.map +1 -0
  231. package/dist/components/ic-text-field2.js +30 -21
  232. package/dist/components/ic-text-field2.js.map +1 -1
  233. package/dist/components/ic-theme.js +1 -1
  234. package/dist/components/ic-theme.js.map +1 -1
  235. package/dist/components/ic-time-input.js +7 -7
  236. package/dist/components/ic-time-input.js.map +1 -1
  237. package/dist/components/ic-toast-region.js +1 -1
  238. package/dist/components/ic-toast-region.js.map +1 -1
  239. package/dist/components/ic-toast.js +3 -3
  240. package/dist/components/ic-toast.js.map +1 -1
  241. package/dist/components/ic-toggle-button-group.js +2 -2
  242. package/dist/components/ic-toggle-button-group.js.map +1 -1
  243. package/dist/components/ic-toggle-button.js +2 -2
  244. package/dist/components/ic-toggle-button.js.map +1 -1
  245. package/dist/components/ic-tooltip2.js +6 -4
  246. package/dist/components/ic-tooltip2.js.map +1 -1
  247. package/dist/components/ic-top-navigation.js +1 -1
  248. package/dist/components/ic-tree-item.js +2 -2
  249. package/dist/components/ic-tree-view.js +3 -3
  250. package/dist/components/ic-typography2.js +2 -2
  251. package/dist/components/ic-typography2.js.map +1 -1
  252. package/dist/core/core.css +32 -4
  253. package/dist/core/core.esm.js +1 -1
  254. package/dist/core/core.esm.js.map +1 -1
  255. package/dist/core/{p-3f241d71.entry.js → p-09c0961a.entry.js} +2 -2
  256. package/dist/core/{p-3f241d71.entry.js.map → p-09c0961a.entry.js.map} +1 -1
  257. package/dist/core/p-0f22f41e.js.map +1 -1
  258. package/dist/core/{p-d13a066e.entry.js → p-0fffe635.entry.js} +2 -2
  259. package/dist/core/{p-d13a066e.entry.js.map → p-0fffe635.entry.js.map} +1 -1
  260. package/dist/core/{p-aa94c4b0.entry.js → p-17423822.entry.js} +2 -2
  261. package/dist/core/{p-aa94c4b0.entry.js.map → p-17423822.entry.js.map} +1 -1
  262. package/dist/core/{p-d47e200c.entry.js → p-20f248be.entry.js} +2 -2
  263. package/dist/core/{p-be5df6a9.entry.js → p-25d21dbd.entry.js} +2 -2
  264. package/dist/core/{p-be5df6a9.entry.js.map → p-25d21dbd.entry.js.map} +1 -1
  265. package/dist/core/{p-9fe5e2eb.entry.js → p-30a2abe9.entry.js} +2 -2
  266. package/dist/core/{p-c067e62c.entry.js → p-318c6a4c.entry.js} +2 -2
  267. package/dist/core/{p-364cc350.entry.js → p-3414247d.entry.js} +2 -2
  268. package/dist/core/{p-287e5c17.entry.js → p-37d217b5.entry.js} +2 -2
  269. package/dist/core/{p-287e5c17.entry.js.map → p-37d217b5.entry.js.map} +1 -1
  270. package/dist/core/{p-df88ff5b.entry.js → p-37daa8fe.entry.js} +2 -2
  271. package/dist/core/{p-df88ff5b.entry.js.map → p-37daa8fe.entry.js.map} +1 -1
  272. package/dist/core/p-3bb4ea35.entry.js +2 -0
  273. package/dist/core/p-3bb4ea35.entry.js.map +1 -0
  274. package/dist/core/{p-d41b0da0.entry.js → p-3bee8f39.entry.js} +2 -2
  275. package/dist/core/{p-d41b0da0.entry.js.map → p-3bee8f39.entry.js.map} +1 -1
  276. package/dist/core/{p-fb8c47ce.entry.js → p-4479c7e7.entry.js} +2 -2
  277. package/dist/core/{p-fb8c47ce.entry.js.map → p-4479c7e7.entry.js.map} +1 -1
  278. package/dist/core/{p-45dd12ee.entry.js → p-4747c39f.entry.js} +2 -2
  279. package/dist/core/p-4747c39f.entry.js.map +1 -0
  280. package/dist/core/{p-ffac41d6.entry.js → p-492fcb51.entry.js} +2 -2
  281. package/dist/core/{p-ffac41d6.entry.js.map → p-492fcb51.entry.js.map} +1 -1
  282. package/dist/core/{p-17acca45.entry.js → p-4eb74281.entry.js} +2 -2
  283. package/dist/core/p-4eb74281.entry.js.map +1 -0
  284. package/dist/core/{p-9863a070.entry.js → p-4fa1a80f.entry.js} +2 -2
  285. package/dist/core/{p-6796acff.entry.js → p-514c4401.entry.js} +2 -2
  286. package/dist/core/{p-b93e8ecb.entry.js → p-5534bb37.entry.js} +2 -2
  287. package/dist/core/p-55934942.entry.js +2 -0
  288. package/dist/core/p-55934942.entry.js.map +1 -0
  289. package/dist/core/{p-43285eeb.entry.js → p-570ff466.entry.js} +2 -2
  290. package/dist/core/{p-43285eeb.entry.js.map → p-570ff466.entry.js.map} +1 -1
  291. package/dist/core/{p-6e8ef73c.entry.js → p-57721431.entry.js} +2 -2
  292. package/dist/core/{p-6e8ef73c.entry.js.map → p-57721431.entry.js.map} +1 -1
  293. package/dist/core/{p-bc7d730d.entry.js → p-587d704d.entry.js} +2 -2
  294. package/dist/core/p-587d704d.entry.js.map +1 -0
  295. package/dist/core/{p-5fbc8e62.entry.js → p-5fcfcfb6.entry.js} +2 -2
  296. package/dist/core/{p-5fbc8e62.entry.js.map → p-5fcfcfb6.entry.js.map} +1 -1
  297. package/dist/core/{p-4bddb866.entry.js → p-6a884eef.entry.js} +2 -2
  298. package/dist/core/{p-4bddb866.entry.js.map → p-6a884eef.entry.js.map} +1 -1
  299. package/dist/core/p-6d2fa004.entry.js +2 -0
  300. package/dist/core/p-6d2fa004.entry.js.map +1 -0
  301. package/dist/core/{p-9fffb01e.entry.js → p-7821c7dc.entry.js} +2 -2
  302. package/dist/core/{p-608a8a4d.entry.js → p-8bb49790.entry.js} +2 -2
  303. package/dist/core/{p-5c7c7205.entry.js → p-92f199b0.entry.js} +2 -2
  304. package/dist/core/p-9810080e.entry.js +2 -0
  305. package/dist/core/p-9810080e.entry.js.map +1 -0
  306. package/dist/core/{p-518a8e87.entry.js → p-98286c35.entry.js} +2 -2
  307. package/dist/core/{p-518a8e87.entry.js.map → p-98286c35.entry.js.map} +1 -1
  308. package/dist/core/{p-ea061ccf.entry.js → p-9a8bcb78.entry.js} +2 -2
  309. package/dist/core/{p-ea061ccf.entry.js.map → p-9a8bcb78.entry.js.map} +1 -1
  310. package/dist/core/{p-812a0246.entry.js → p-9ad64b6f.entry.js} +2 -2
  311. package/dist/core/{p-b87e4485.entry.js → p-9c491db1.entry.js} +2 -2
  312. package/dist/core/{p-1a5efa3e.entry.js → p-9c8070a1.entry.js} +2 -2
  313. package/dist/core/{p-8b5022bc.entry.js → p-9cf6ccfd.entry.js} +2 -2
  314. package/dist/core/{p-8b5022bc.entry.js.map → p-9cf6ccfd.entry.js.map} +1 -1
  315. package/dist/core/p-9f5a1473.entry.js +2 -0
  316. package/dist/core/p-9f5a1473.entry.js.map +1 -0
  317. package/dist/core/{p-59048c2a.entry.js → p-a0c361ec.entry.js} +2 -2
  318. package/dist/core/p-a0c361ec.entry.js.map +1 -0
  319. package/dist/core/{p-51e2de77.entry.js → p-a7bc9a19.entry.js} +2 -2
  320. package/dist/core/{p-51e2de77.entry.js.map → p-a7bc9a19.entry.js.map} +1 -1
  321. package/dist/core/{p-588a331f.entry.js → p-a8d934fe.entry.js} +2 -2
  322. package/dist/core/{p-588a331f.entry.js.map → p-a8d934fe.entry.js.map} +1 -1
  323. package/dist/core/{p-145c0245.entry.js → p-aaa6d8e1.entry.js} +2 -2
  324. package/dist/core/{p-145c0245.entry.js.map → p-aaa6d8e1.entry.js.map} +1 -1
  325. package/dist/core/{p-f7d746d7.entry.js → p-b12c4643.entry.js} +2 -2
  326. package/dist/core/{p-f7d746d7.entry.js.map → p-b12c4643.entry.js.map} +1 -1
  327. package/dist/core/{p-31d6d587.entry.js → p-b2c49dfd.entry.js} +2 -2
  328. package/dist/core/p-b2c49dfd.entry.js.map +1 -0
  329. package/dist/core/{p-999f0a5d.entry.js → p-b4a2f6fa.entry.js} +2 -2
  330. package/dist/core/{p-999f0a5d.entry.js.map → p-b4a2f6fa.entry.js.map} +1 -1
  331. package/dist/core/p-b5dd226f.entry.js +2 -0
  332. package/dist/core/{p-20374e30.entry.js.map → p-b5dd226f.entry.js.map} +1 -1
  333. package/dist/core/{p-8051e61b.entry.js → p-b8cb867c.entry.js} +2 -2
  334. package/dist/core/{p-f517f412.entry.js → p-b95d99c7.entry.js} +2 -2
  335. package/dist/core/p-c039a175.entry.js +2 -0
  336. package/dist/core/{p-ad48c77c.entry.js.map → p-c039a175.entry.js.map} +1 -1
  337. package/dist/core/p-c08ea34d.entry.js +2 -0
  338. package/dist/core/p-c08ea34d.entry.js.map +1 -0
  339. package/dist/core/{p-fecef807.entry.js → p-c7a97221.entry.js} +2 -2
  340. package/dist/core/{p-91646e38.entry.js → p-c95be271.entry.js} +2 -2
  341. package/dist/core/p-c95be271.entry.js.map +1 -0
  342. package/dist/core/p-cd3f12ad.entry.js +2 -0
  343. package/dist/core/p-cd3f12ad.entry.js.map +1 -0
  344. package/dist/core/{p-40743d97.entry.js → p-d143aa70.entry.js} +2 -2
  345. package/dist/core/{p-40743d97.entry.js.map → p-d143aa70.entry.js.map} +1 -1
  346. package/dist/core/{p-c3fe54ab.entry.js → p-d3b9c04b.entry.js} +2 -2
  347. package/dist/core/{p-c3fe54ab.entry.js.map → p-d3b9c04b.entry.js.map} +1 -1
  348. package/dist/core/{p-cb4522ed.entry.js → p-d3eb3356.entry.js} +2 -2
  349. package/dist/core/{p-66ae9eb3.entry.js → p-d6a1b39c.entry.js} +2 -2
  350. package/dist/core/{p-66ae9eb3.entry.js.map → p-d6a1b39c.entry.js.map} +1 -1
  351. package/dist/core/{p-efe2fbd7.entry.js → p-d7c44cce.entry.js} +2 -2
  352. package/dist/core/p-d7c44cce.entry.js.map +1 -0
  353. package/dist/core/{p-e543f2e7.entry.js → p-e435052b.entry.js} +2 -2
  354. package/dist/core/{p-e543f2e7.entry.js.map → p-e435052b.entry.js.map} +1 -1
  355. package/dist/core/{p-b8938f93.entry.js → p-e4f1d72b.entry.js} +2 -2
  356. package/dist/core/p-ee95905f.js +2 -0
  357. package/dist/core/{p-efa95979.js.map → p-ee95905f.js.map} +1 -1
  358. package/dist/core/{p-2fe31f66.entry.js → p-f4b08cdb.entry.js} +2 -2
  359. package/dist/core/{p-2fe31f66.entry.js.map → p-f4b08cdb.entry.js.map} +1 -1
  360. package/dist/core/{p-5976d13e.entry.js → p-f5cc4e94.entry.js} +2 -2
  361. package/dist/core/{p-5976d13e.entry.js.map → p-f5cc4e94.entry.js.map} +1 -1
  362. package/dist/core/{p-558936fb.entry.js → p-f6772530.entry.js} +2 -2
  363. package/dist/core/{p-0fad83d8.entry.js → p-fc125ca6.entry.js} +2 -2
  364. package/dist/core/{p-0fad83d8.entry.js.map → p-fc125ca6.entry.js.map} +1 -1
  365. package/dist/esm/core.js +1 -1
  366. package/dist/esm/helpers-89cb996d.js.map +1 -1
  367. package/dist/esm/{helpers-f3928d01.js → helpers-fee7d348.js} +22 -22
  368. package/dist/esm/{helpers-f3928d01.js.map → helpers-fee7d348.js.map} +1 -1
  369. package/dist/esm/ic-accordion-group.entry.js +1 -1
  370. package/dist/esm/ic-accordion.entry.js +1 -1
  371. package/dist/esm/ic-action-chip.entry.js +1 -1
  372. package/dist/esm/ic-alert.entry.js +2 -2
  373. package/dist/esm/ic-alert.entry.js.map +1 -1
  374. package/dist/esm/ic-back-to-top.entry.js +1 -1
  375. package/dist/esm/ic-badge.entry.js +1 -1
  376. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  377. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  378. package/dist/esm/ic-button_3.entry.js +24 -18
  379. package/dist/esm/ic-button_3.entry.js.map +1 -1
  380. package/dist/esm/ic-card-vertical.entry.js +1 -1
  381. package/dist/esm/ic-checkbox-group.entry.js +3 -3
  382. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  383. package/dist/esm/ic-checkbox_3.entry.js +6 -6
  384. package/dist/esm/ic-checkbox_3.entry.js.map +1 -1
  385. package/dist/esm/ic-chip.entry.js +1 -1
  386. package/dist/esm/ic-data-list.entry.js +2 -2
  387. package/dist/esm/ic-data-list.entry.js.map +1 -1
  388. package/dist/esm/ic-data-row.entry.js +3 -3
  389. package/dist/esm/ic-data-row.entry.js.map +1 -1
  390. package/dist/esm/ic-date-input.entry.js +6 -6
  391. package/dist/esm/ic-date-input.entry.js.map +1 -1
  392. package/dist/esm/ic-dialog.entry.js +6 -4
  393. package/dist/esm/ic-dialog.entry.js.map +1 -1
  394. package/dist/esm/ic-divider.entry.js +1 -1
  395. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  396. package/dist/esm/ic-footer-link.entry.js +3 -3
  397. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  398. package/dist/esm/ic-footer.entry.js +1 -1
  399. package/dist/esm/ic-hero.entry.js +5 -5
  400. package/dist/esm/ic-hero.entry.js.map +1 -1
  401. package/dist/esm/ic-horizontal-scroll.entry.js +7 -7
  402. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  403. package/dist/esm/ic-input-component-container_4.entry.js +27 -14
  404. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
  405. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  406. package/dist/esm/ic-layout-grid-item.entry.js.map +1 -1
  407. package/dist/esm/ic-layout-grid.entry.js +2 -2
  408. package/dist/esm/ic-layout-grid.entry.js.map +1 -1
  409. package/dist/esm/ic-link.entry.js +2 -2
  410. package/dist/esm/ic-link.entry.js.map +1 -1
  411. package/dist/esm/ic-menu-group.entry.js +2 -2
  412. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  413. package/dist/esm/ic-menu-item.entry.js +1 -1
  414. package/dist/esm/ic-menu.entry.js +6 -6
  415. package/dist/esm/ic-menu.entry.js.map +1 -1
  416. package/dist/esm/ic-navigation-button.entry.js +1 -1
  417. package/dist/esm/ic-navigation-group.entry.js +2 -2
  418. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  419. package/dist/esm/ic-navigation-item.entry.js +1 -1
  420. package/dist/esm/ic-navigation-menu.entry.js +5 -5
  421. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  422. package/dist/esm/ic-page-header.entry.js +7 -7
  423. package/dist/esm/ic-page-header.entry.js.map +1 -1
  424. package/dist/esm/ic-pagination_4.entry.js +44 -35
  425. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  426. package/dist/esm/ic-popover-menu.entry.js +5 -5
  427. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  428. package/dist/esm/ic-radio-group.entry.js +5 -5
  429. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  430. package/dist/esm/ic-radio-option.entry.js +5 -5
  431. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  432. package/dist/esm/ic-search-bar.entry.js +10 -10
  433. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  434. package/dist/esm/ic-section-container.entry.js +2 -2
  435. package/dist/esm/ic-section-container.entry.js.map +1 -1
  436. package/dist/esm/ic-side-navigation.entry.js +5 -5
  437. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  438. package/dist/esm/ic-skeleton.entry.js +2 -2
  439. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  440. package/dist/esm/ic-skip-link.entry.js +2 -2
  441. package/dist/esm/ic-skip-link.entry.js.map +1 -1
  442. package/dist/esm/ic-status-tag.entry.js +3 -3
  443. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  444. package/dist/esm/ic-step.entry.js +14 -14
  445. package/dist/esm/ic-step.entry.js.map +1 -1
  446. package/dist/esm/ic-stepper.entry.js +3 -3
  447. package/dist/esm/ic-stepper.entry.js.map +1 -1
  448. package/dist/esm/ic-switch.entry.js +5 -5
  449. package/dist/esm/ic-switch.entry.js.map +1 -1
  450. package/dist/esm/ic-tab-context.entry.js +10 -2
  451. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  452. package/dist/esm/ic-tab-group.entry.js +3 -3
  453. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  454. package/dist/esm/ic-tab-panel.entry.js +2 -2
  455. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  456. package/dist/esm/ic-tab.entry.js +1 -1
  457. package/dist/esm/ic-table-of-contents.entry.js +359 -0
  458. package/dist/esm/ic-table-of-contents.entry.js.map +1 -0
  459. package/dist/esm/ic-theme.entry.js +2 -2
  460. package/dist/esm/ic-theme.entry.js.map +1 -1
  461. package/dist/esm/ic-time-input.entry.js +7 -7
  462. package/dist/esm/ic-time-input.entry.js.map +1 -1
  463. package/dist/esm/ic-toast-region.entry.js +1 -1
  464. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  465. package/dist/esm/ic-toast.entry.js +4 -4
  466. package/dist/esm/ic-toast.entry.js.map +1 -1
  467. package/dist/esm/ic-toggle-button-group.entry.js +3 -3
  468. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  469. package/dist/esm/ic-toggle-button.entry.js +3 -3
  470. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  471. package/dist/esm/ic-top-navigation.entry.js +1 -1
  472. package/dist/esm/ic-tree-item.entry.js +2 -2
  473. package/dist/esm/ic-tree-view.entry.js +3 -3
  474. package/dist/esm/ic-typography.entry.js +3 -3
  475. package/dist/esm/ic-typography.entry.js.map +1 -1
  476. package/dist/esm/index-a7a720e7.js +4 -0
  477. package/dist/esm/loader.js +1 -1
  478. package/dist/types/components/ic-data-table/story-data.d.ts +2 -2
  479. package/dist/types/components/ic-table-of-contents/ic-table-of-contents-item.d.ts +14 -0
  480. package/dist/types/components/ic-table-of-contents/ic-table-of-contents.d.ts +83 -0
  481. package/dist/types/components/ic-table-of-contents/ic-table-of-contents.stories.d.ts +90 -0
  482. package/dist/types/components/ic-table-of-contents/test/a11y/ic-table-of-contents.test.a11y.d.ts +1 -0
  483. package/dist/types/components.d.ts +79 -2
  484. package/dist/types/utils/types.d.ts +1 -0
  485. package/hydrate/index.js +635 -222
  486. package/hydrate/index.mjs +635 -222
  487. package/package.json +4 -4
  488. package/dist/core/p-17acca45.entry.js.map +0 -1
  489. package/dist/core/p-20374e30.entry.js +0 -2
  490. package/dist/core/p-2f4f4aea.entry.js +0 -2
  491. package/dist/core/p-2f4f4aea.entry.js.map +0 -1
  492. package/dist/core/p-31d6d587.entry.js.map +0 -1
  493. package/dist/core/p-45dd12ee.entry.js.map +0 -1
  494. package/dist/core/p-59048c2a.entry.js.map +0 -1
  495. package/dist/core/p-5ac30e1f.entry.js +0 -2
  496. package/dist/core/p-5ac30e1f.entry.js.map +0 -1
  497. package/dist/core/p-7d2d067f.entry.js +0 -2
  498. package/dist/core/p-7d2d067f.entry.js.map +0 -1
  499. package/dist/core/p-91646e38.entry.js.map +0 -1
  500. package/dist/core/p-ad48c77c.entry.js +0 -2
  501. package/dist/core/p-afece95e.entry.js +0 -2
  502. package/dist/core/p-afece95e.entry.js.map +0 -1
  503. package/dist/core/p-bc7d730d.entry.js.map +0 -1
  504. package/dist/core/p-e7f22a19.entry.js +0 -2
  505. package/dist/core/p-e7f22a19.entry.js.map +0 -1
  506. package/dist/core/p-efa95979.js +0 -2
  507. package/dist/core/p-efe2fbd7.entry.js.map +0 -1
  508. package/dist/core/p-f3201a0b.entry.js +0 -2
  509. package/dist/core/p-f3201a0b.entry.js.map +0 -1
  510. /package/dist/core/{p-d47e200c.entry.js.map → p-20f248be.entry.js.map} +0 -0
  511. /package/dist/core/{p-9fe5e2eb.entry.js.map → p-30a2abe9.entry.js.map} +0 -0
  512. /package/dist/core/{p-c067e62c.entry.js.map → p-318c6a4c.entry.js.map} +0 -0
  513. /package/dist/core/{p-364cc350.entry.js.map → p-3414247d.entry.js.map} +0 -0
  514. /package/dist/core/{p-9863a070.entry.js.map → p-4fa1a80f.entry.js.map} +0 -0
  515. /package/dist/core/{p-6796acff.entry.js.map → p-514c4401.entry.js.map} +0 -0
  516. /package/dist/core/{p-b93e8ecb.entry.js.map → p-5534bb37.entry.js.map} +0 -0
  517. /package/dist/core/{p-9fffb01e.entry.js.map → p-7821c7dc.entry.js.map} +0 -0
  518. /package/dist/core/{p-608a8a4d.entry.js.map → p-8bb49790.entry.js.map} +0 -0
  519. /package/dist/core/{p-5c7c7205.entry.js.map → p-92f199b0.entry.js.map} +0 -0
  520. /package/dist/core/{p-812a0246.entry.js.map → p-9ad64b6f.entry.js.map} +0 -0
  521. /package/dist/core/{p-b87e4485.entry.js.map → p-9c491db1.entry.js.map} +0 -0
  522. /package/dist/core/{p-1a5efa3e.entry.js.map → p-9c8070a1.entry.js.map} +0 -0
  523. /package/dist/core/{p-8051e61b.entry.js.map → p-b8cb867c.entry.js.map} +0 -0
  524. /package/dist/core/{p-f517f412.entry.js.map → p-b95d99c7.entry.js.map} +0 -0
  525. /package/dist/core/{p-fecef807.entry.js.map → p-c7a97221.entry.js.map} +0 -0
  526. /package/dist/core/{p-cb4522ed.entry.js.map → p-d3eb3356.entry.js.map} +0 -0
  527. /package/dist/core/{p-b8938f93.entry.js.map → p-e4f1d72b.entry.js.map} +0 -0
  528. /package/dist/core/{p-558936fb.entry.js.map → p-f6772530.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"file":"ic-table-of-contents.js","mappings":"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","names":[],"sources":["src/components/ic-table-of-contents/ic-table-of-contents-item.tsx","src/components/ic-table-of-contents/ic-table-of-contents.css?tag=ic-table-of-contents&encapsulation=shadow","src/components/ic-table-of-contents/ic-table-of-contents.tsx"],"sourcesContent":["import { FunctionalComponent, h } from \"@stencil/core\";\n\ninterface IcTableOfContentsItemElement {\n id: string;\n className: string;\n label: string;\n target: string;\n variant: string;\n selected: number;\n position: number;\n size?: string;\n truncate?: boolean;\n updateSelected: (position: number) => void;\n setItemLevelOffset: (variant: string) => string;\n}\n\ninterface TOCItemProps {\n id: string;\n className: string;\n variant: string;\n label: string;\n target: string;\n selected: number;\n position: number;\n size?: string;\n truncate?: boolean;\n updateSelected: (position: number) => void;\n}\n\nconst ItemHook = () => {\n // adds offset to the item based on its variant\n // e.g. h2 = 4 + (8*(2-2)) = 4px\n // h3 = 4 + (8*(3-2)) = 12px\n const setItemLevelOffset = (variant: string): string => {\n return `${4 + 8 * (parseInt(variant.split(\"\")[1]) - 2)}px`;\n };\n\n return { setItemLevelOffset };\n};\n\nconst ItemComponent: FunctionalComponent<IcTableOfContentsItemElement> = (\n itemProps\n) => {\n const {\n id,\n className,\n label,\n target,\n selected,\n truncate,\n variant,\n position,\n size,\n updateSelected,\n setItemLevelOffset,\n } = itemProps;\n\n return (\n <a\n id={id}\n onClick={() => updateSelected(position)}\n class={`${selected && \"table-of-contents-item-content-selected\"}\n ${\n size === \"large\"\n ? `table-of-contents-item-content-large`\n : `table-of-contents-item-content-default`\n }\n ${className}\n `}\n href={`#${target}`}\n >\n <ic-typography\n id={`${id}-label`}\n bold={selected === position}\n class={`${truncate && \"truncated-item-text\"} ${\n size && `table-of-contents-item-content-${size}`\n }\n table-of-contents-item-label\n `}\n style={{\n paddingLeft: setItemLevelOffset(variant),\n }}\n >\n {label}\n </ic-typography>\n </a>\n );\n};\n\nexport const TableOfContentsItem = (props: TOCItemProps) => {\n const innerProps = ItemHook();\n return <ItemComponent {...props} {...innerProps} />;\n};\n",":host {\n display: block;\n border: none;\n max-height: 100vh;\n}\n\n.table-of-contents-section-container {\n display: flex;\n}\n\n.table-of-contents-content {\n top: 0;\n left: 0;\n padding: 0 var(--ic-space-md);\n font: var(--ic-color-text-primary);\n max-height: 100vh;\n z-index: 1;\n}\n\n:host .table-of-contents-position-top {\n min-width: 10rem;\n max-width: 50rem;\n}\n\n:host .table-of-contents-position-side {\n min-width: 8rem;\n max-width: 20rem;\n width: 20rem;\n position: sticky;\n}\n\n.table-of-contents-list {\n display: flex;\n flex-direction: row;\n max-width: inherit;\n}\n\n:host ol {\n list-style: none;\n margin-block-start: 0;\n padding-inline-start: 0;\n}\n\n.table-of-contents-list-items {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n.table-of-contents-sidebar {\n background-color: var(--ic-table-of-contents-banner);\n height: 1.75rem;\n min-width: 0.25rem;\n}\n\n.table-of-contents-sidebar-monochrome {\n background-color: var(--ic-table-of-contents-banner-monochrome);\n}\n\n.table-of-contents-item {\n min-height: 1.5rem;\n line-height: 1.5rem;\n}\n\n.table-of-contents-item-content:hover {\n background-color: var(--ic-table-of-contents-hover);\n}\n\n.table-of-contents-item-monochrome-content:hover {\n background-color: var(--ic-table-of-contents-hover-monochrome);\n}\n\n.table-of-contents-item-content {\n border: none;\n max-width: inherit;\n display: flex;\n align-items: center;\n text-decoration: none;\n position: relative;\n color: var(--ic-table-of-contents-text);\n min-height: 1.5rem;\n\n --ic-typography-color: var(--ic-table-of-contents-text);\n}\n\n.table-of-contents-item-content-default {\n padding-top: var(--ic-space-xxxs);\n padding-bottom: var(--ic-space-xxxs);\n}\n\n.table-of-contents-item-content:focus {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n outline: none;\n background-color: var(--ic-table-of-contents-hover);\n}\n\n.table-of-contents-item-content:active {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n outline: none;\n background-color: var(--ic-table-of-contents-pressed);\n}\n\n.truncated-item-text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* Large styles */\n\n.table-of-contents-item-content-large {\n padding-top: var(--ic-space-xxs);\n padding-bottom: var(--ic-space-xxs);\n}\n\n.table-of-contents-sidebar.large {\n height: 2.5rem;\n}\n\n.table-of-contents-heading.large {\n padding-bottom: var(--ic-space-xs);\n}\n\n@media (prefers-reduced-motion: no-preference) {\n .table-of-contents-sidebar {\n transition: all 0.3s ease;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n /* limit sidebar scroll animation */\n .table-of-contents-sidebar {\n transition: none;\n }\n}\n\n@media (forced-colors: active) {\n .table-of-contents-sidebar {\n background-color: Highlight;\n }\n}\n","import { Component, Element, h, Host, Prop, State, Watch } from \"@stencil/core\";\nimport { IcPositionTopOrRight, IcSizes, IcThemeMode } from \"../../utils/types\";\nimport { TableOfContentsItem } from \"./ic-table-of-contents-item\";\nimport { DEVICE_SIZES } from \"../../utils/helpers\";\n\nconst TOC_CONTENT_CLASS = \"table-of-contents-content\";\nconst TOC_LIST_ITEMS_CLASS = \"table-of-contents-list-items\";\nconst TOC_ITEM_CLASS = \"table-of-contents-item-content\";\nconst TOC_CONTAINER_CLASS = \"table-of-contents-section-container\";\n\ninterface RankedElement extends Element {\n rank: string;\n textLabel: string;\n treeChildren: RankedElement[];\n trueIndex: number;\n}\n\n@Component({\n tag: \"ic-table-of-contents\",\n styleUrl: \"ic-table-of-contents.css\",\n shadow: true,\n})\nexport class TableOfContents {\n @Element() el: HTMLIcTableOfContentsElement;\n\n /**\n * Heading text of the table of contents.\n */\n @Prop() heading: string = \"Contents\";\n\n /**\n * Maximum heading level of child content that will generate an item in the table of contents. E.g. when set to '3', headings of <h4> and <h5> will not appear.\n */\n @Prop() maximumHeadingLevel: number = 3;\n\n /**\n * If `true`, the table of contents will display as black in the light theme, and white in dark theme.\n */\n @Prop() monochrome?: boolean = false;\n\n /**\n * Whether the table of contents will appear on the right of or above child content on large viewport widths.\n */\n @Prop({ mutable: true }) position: IcPositionTopOrRight = \"right\";\n\n /**\n * Vertical offset to page scroll (in percent) when table of contents item is selected, to account for other page components like headers.\n */\n @Prop() setScrollHeight: number = 50;\n\n /**\n * The size of the table of contents items.\n */\n @Prop() size: IcSizes = \"medium\";\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 table of contents item label will be truncated.\n */\n @Prop() truncate: boolean = true;\n\n @State() focusedElement: number = 0;\n\n // heading items\n private referenceElements: HTMLElement[] = [];\n\n // heights of heading items\n private currentTargetHeights: number[] = [];\n\n private resizeObserver: ResizeObserver;\n // header height if present\n private headerHeight: number = 0;\n // holds initial position to allow for responsive changes\n private initialPosition: IcPositionTopOrRight = this.position;\n\n // suppress scroll listener to allow for click selection without scroll listener firing\n @State() suppressListener: boolean = false;\n\n @Watch(\"suppressListener\")\n suppressListenerHandler(): void {\n window.scrollTo(0, window.scrollY - this.headerHeight - 50);\n }\n\n /**\n * Generate a TOC Item.\n * These items are wrapped in empty tooltips that will be populated by addTooltip()\n * @param tocHeading heading element to refer item information from\n * @param children\n * @returns TocItem ready to be rendered, with nested children if applicable\n */\n private createTocItem = (\n tocHeading: RankedElement,\n children?: HTMLElement[]\n ): HTMLElement => {\n const tocId = `toc_${tocHeading.id}`;\n\n const tocItem = (\n <TableOfContentsItem\n id={tocId}\n className={TOC_ITEM_CLASS}\n variant={tocHeading.tagName.toLowerCase()}\n label={tocHeading.textLabel}\n target={tocHeading.id}\n truncate={this.truncate}\n selected={this.focusedElement}\n updateSelected={this.updateOnSelection}\n position={tocHeading.trueIndex}\n size={this.size}\n />\n );\n\n const wrappedToc = this.truncate ? (\n <ic-tooltip target={tocId} label={tocHeading.innerHTML}>\n {tocItem}\n </ic-tooltip>\n ) : (\n tocItem\n );\n return (\n <li\n class={`table-of-contents-item ${\n this.monochrome && \"table-of-contents-item-monochrome\"\n }`}\n >\n {wrappedToc}\n {children ? <ol>{children}</ol> : null}\n </li>\n );\n };\n\n /**\n * Render TocItems and recursively render children items if they exist\n * @param listItem\n * @returns HTML Element array to be rendered\n */\n private renderTocTree = (listItem: RankedElement): HTMLElement => {\n let results;\n if (listItem.treeChildren.length > 0) {\n const children = listItem.treeChildren.map((i) => this.renderTocTree(i));\n results = this.createTocItem(listItem, children);\n } else {\n results = this.createTocItem(listItem);\n }\n return results;\n };\n\n /**\n * Scrape for heading elements on the page content within TOC, down to the maximumHeadingLevel.\n * From this, generate an array of Elements with lower rank headings inserted as treeChildren on top level headings.\n * @returns RankedElement[] array of HTML elements with additional props for rank, trueIndex and treeChildren array\n */\n private generateHeadingTree(): RankedElement[] {\n const resultArray: RankedElement[] = [];\n\n const headingDepth =\n this.maximumHeadingLevel < 5\n ? [\"h2\", \"h3\", \"h4\", \"h5\"]\n .slice(\n 0,\n (this.maximumHeadingLevel < 2 ? 2 : this.maximumHeadingLevel) - 1\n )\n .join(\",\")\n : \"h2, h3, h4, h5\";\n const headingList = this.el.querySelectorAll(headingDepth);\n\n if (headingList) {\n const headingArray = Array.from(headingList) as RankedElement[];\n headingArray.forEach((item, index) => {\n this.referenceElements.push(item as unknown as HTMLElement);\n item.trueIndex = index;\n item.rank = item.tagName.toLowerCase().slice(1, 2);\n item.textLabel = item.textContent\n ? item.textContent.trimStart().split(\"\\n\")[0]\n : `${item.rank}-${index}`;\n item.treeChildren = [];\n });\n\n let currentRank = headingArray[0]?.rank || 2;\n\n headingArray.reverse().forEach((h, i) => {\n if (!h.id) {\n h.setAttribute(\"id\", h.textLabel.replace(/\\s+/g, \"-\").toLowerCase());\n }\n if (h.rank > currentRank && h.trueIndex > 0) {\n if (headingArray[i] && headingArray[i].rank < h.rank) {\n headingArray[i].treeChildren.unshift(h);\n } else {\n resultArray.push(h);\n }\n } else {\n currentRank = h.rank;\n resultArray.push(h);\n }\n });\n }\n return resultArray.reverse();\n }\n\n //container orientation logic\n private containerPosition(): void {\n if (this.position) {\n const container = this.el.shadowRoot?.querySelector(\n `.${TOC_CONTAINER_CLASS}`\n ) as HTMLIcSectionContainerElement;\n switch (this.position) {\n case \"right\":\n container.style.flexDirection = \"row-reverse\";\n break;\n case \"top\":\n container.style.flexDirection = \"column\";\n break;\n }\n }\n }\n\n /**\n * Move the sidebar to the provided position on the page.\n * Also, resize the sidebar to stretch the height of the selected heading.\n * @param newPosition\n */\n private sidebarTranslation(newPosition: number): void {\n const sidebar = this.el.shadowRoot?.querySelector(\n \".table-of-contents-sidebar\"\n ) as HTMLIcSectionContainerElement;\n\n const itemHeights: number[] = [];\n let previousItemsHeight = 0;\n this.el.shadowRoot\n ?.querySelectorAll(`.${TOC_ITEM_CLASS}`)\n ?.forEach((item: any) => {\n if (item !== null) itemHeights.push(item.offsetHeight);\n });\n itemHeights\n .slice(0, newPosition)\n .forEach((i) => (previousItemsHeight += i));\n\n sidebar.style.transform = `translateY(${previousItemsHeight}px)`;\n sidebar.style.height = `${itemHeights[newPosition]}px`;\n }\n\n // list item clicked logic\n private updateOnSelection = (position: number) => {\n this.suppressListener = true;\n this.focusedElement = position;\n this.sidebarTranslation(this.focusedElement);\n };\n\n // find element heights to be used to determine focused item from scroll position\n private findElementsHeights() {\n const contentBounds: number[] = [];\n this.referenceElements.forEach((element) => {\n contentBounds.push(element.getBoundingClientRect().top);\n });\n this.currentTargetHeights = contentBounds;\n }\n\n //resize window logic\n private handleResizeBounds() {\n if (window.innerWidth < DEVICE_SIZES.XL && this.initialPosition !== \"top\") {\n this.position = \"top\";\n this.containerPosition();\n } else if (\n window.innerWidth > DEVICE_SIZES.XL &&\n this.position === \"top\" &&\n this.initialPosition === \"right\"\n ) {\n this.position = \"right\";\n this.containerPosition();\n }\n this.findElementsHeights();\n this.truncateText();\n }\n\n // scroll logic\n private updateSelectedItemFromScroll() {\n const targetHeight =\n window.scrollY + window.innerHeight * (this.setScrollHeight / 100);\n if (window.scrollY === 0) {\n this.focusedElement = 0;\n this.sidebarTranslation(this.focusedElement);\n } else if (targetHeight < this.currentTargetHeights[this.focusedElement]) {\n const previousItems = this.currentTargetHeights.slice(\n 0,\n this.focusedElement\n );\n const closestItem = previousItems.reduce((newValue, curr, index) => {\n if (\n Math.abs(curr - targetHeight) <\n Math.abs(previousItems[newValue] - targetHeight)\n )\n return index;\n return newValue;\n }, 0);\n this.focusedElement = closestItem;\n this.sidebarTranslation(this.focusedElement);\n } else if (\n targetHeight > this.currentTargetHeights[this.focusedElement] &&\n this.focusedElement !== this.currentTargetHeights.length\n ) {\n const relevantItems = this.currentTargetHeights.slice(\n this.focusedElement\n );\n\n const closestItem = relevantItems.reduce((newValue, curr, index) => {\n if (\n Math.abs(curr - targetHeight) <\n Math.abs(relevantItems[newValue] - targetHeight) &&\n curr < targetHeight\n )\n return index;\n return newValue;\n }, 0);\n if (closestItem + this.focusedElement !== this.focusedElement) {\n this.focusedElement += closestItem;\n this.sidebarTranslation(this.focusedElement);\n }\n }\n }\n\n // find header element height\n private findHeaderElement(): number {\n const element = document.querySelector(\"ic-page-header\");\n if (element) {\n return element.clientHeight;\n }\n const header = document.querySelector(\"header\");\n if (header) {\n return header.clientHeight;\n }\n return 0;\n }\n\n // add margin to the list based off the header element height\n private addListMargin(): void {\n const content = this.el.shadowRoot?.querySelector(\n `.${TOC_CONTENT_CLASS}`\n ) as HTMLDivElement;\n content?.style.setProperty(\"top\", `${this.headerHeight}px`);\n }\n\n // add tooltip to the item if it is too wide\n private addTooltip(item: any, widthBreakpoint: number) {\n const itemLabel = item.querySelector(\".table-of-contents-item-label\");\n if (item.parentNode?.tagName == \"IC-TOOLTIP\") {\n const tooltip = item.parentNode;\n if (itemLabel?.offsetWidth < itemLabel?.scrollWidth) {\n const tooltipPosition =\n window.innerWidth < widthBreakpoint\n ? \"bottom\"\n : this.position === \"right\"\n ? \"left\"\n : \"right\";\n //Modify the ic-tooltip wrapped around the list item\n tooltip.setAttribute(\"disable-click\", false);\n tooltip.setAttribute(\"disable-hover\", false);\n tooltip.setAttribute(\"placement\", tooltipPosition);\n tooltip.setAttribute(\"target\", item.id);\n tooltip.setAttribute(\"style\", \"overflow:hidden\");\n } else {\n //disable the tooltip if the item does not need to truncate\n tooltip.setAttribute(\"disable-click\", true);\n tooltip.setAttribute(\"disable-hover\", true);\n }\n }\n }\n\n // truncate text if it goes out of bounds of the container\n private truncateText = () => {\n const links = this.el.shadowRoot?.querySelectorAll(`.${TOC_ITEM_CLASS}`);\n const contentList = this.el.shadowRoot?.querySelector(\n `.${TOC_LIST_ITEMS_CLASS}`\n );\n if (contentList)\n links?.forEach((item) => {\n this.addTooltip(item, DEVICE_SIZES.S);\n });\n };\n\n // initialise resize observer\n componentWillLoad(): void {\n this.resizeObserver = new ResizeObserver(() => this.handleResizeBounds());\n this.resizeObserver.observe(this.el);\n }\n\n // initialise scroll listener\n componentDidRender(): void {\n document.addEventListener(\"scroll\", () => {\n if (!this.suppressListener) this.updateSelectedItemFromScroll();\n else this.suppressListener = false;\n });\n this.containerPosition();\n this.findElementsHeights();\n this.sidebarTranslation(this.focusedElement);\n }\n\n // after component has loaded modify the list based of position, size and surrounding elements\n async componentDidLoad(): Promise<void> {\n this.focusedElement = 0;\n this.headerHeight = this.findHeaderElement();\n this.addListMargin();\n this.truncateText();\n this.findElementsHeights();\n this.sidebarTranslation(this.focusedElement);\n }\n\n // Component is a wrapper for page contents, and will build list from heading items\n render() {\n const { heading, monochrome, position, size, theme } = this;\n return (\n <Host class={{ [`ic-theme-${theme}`]: theme !== \"inherit\" }}>\n <ic-section-container class={TOC_CONTAINER_CLASS} aligned=\"full-width\">\n <div\n role=\"navigation\"\n class={`${TOC_CONTENT_CLASS} ${\n position === \"top\" && \"table-of-contents-position-top\"\n }\n ${position === \"right\" && \"table-of-contents-position-side\"}`}\n >\n <ic-typography\n class={`table-of-contents-heading ${size}`}\n variant=\"subtitle-large\"\n >\n {heading}\n </ic-typography>\n <div class=\"table-of-contents-list\">\n <div\n class={`table-of-contents-sidebar ${\n monochrome && `table-of-contents-sidebar-monochrome`\n }\n ${size}\n `}\n />\n <ol class={TOC_LIST_ITEMS_CLASS}>\n {this.generateHeadingTree().map((item) =>\n this.renderTocTree(item)\n )}\n </ol>\n </div>\n </div>\n <slot></slot>\n </ic-section-container>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,12 +1,12 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, forceUpdate, h, Host } from '@stencil/core/internal/client';
2
- import { K as checkSlotInChildMutations, r as removeDisabledFalse, O as debounceEvent, t as removeFormResetListener, b as inheritAttributes, s as addFormResetListener, o as onComponentRequiredPropUndefined, P as IGNORED_KEYBOARD_CHARACTERS, A as IcInformationStatus, w as getInputDescribedByText, u as renderHiddenInput, v as removeHiddenInput, i as isSlotUsed, Q as isEmptyString, I as IC_INHERITED_ARIA } from './helpers.js';
2
+ import { O as isEmptyString, K as checkSlotInChildMutations, r as removeDisabledFalse, P as debounceEvent, t as removeFormResetListener, b as inheritAttributes, s as addFormResetListener, o as onComponentRequiredPropUndefined, Q as IGNORED_KEYBOARD_CHARACTERS, A as IcInformationStatus, w as getInputDescribedByText, u as renderHiddenInput, v as removeHiddenInput, i as isSlotUsed, I as IC_INHERITED_ARIA } from './helpers.js';
3
3
  import { d as defineCustomElement$5 } from './ic-input-component-container2.js';
4
4
  import { d as defineCustomElement$4 } from './ic-input-container2.js';
5
5
  import { d as defineCustomElement$3 } from './ic-input-label2.js';
6
6
  import { d as defineCustomElement$2 } from './ic-input-validation2.js';
7
7
  import { d as defineCustomElement$1 } from './ic-typography2.js';
8
8
 
9
- const icTextFieldCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--ic-input-label-helpertext-padding:var(--ic-space-xs);--border-color:var(--ic-text-field-border-neutral);--border-color-hover:var(--ic-text-field-border-neutral-hover);--border-color-pressed:var(--ic-text-field-border-neutral-pressed);--border-color-disabled:var(--ic-text-field-border-disabled);--border-color-error:var(--ic-text-field-border-error);--border-color-error-hover:var(--ic-text-field-border-error-hover);--border-color-error-pressed:var(--ic-text-field-border-error-pressed);--border-color-success:var(--ic-text-field-border-success);--border-color-success-hover:var(--ic-text-field-border-success-hover);--border-color-success-pressed:var(--ic-text-field-border-success-pressed);--border-color-warning:var(--ic-text-field-border-warning);--border-color-warning-hover:var(--ic-text-field-border-warning-hover);--border-color-warning-pressed:var(--ic-text-field-border-warning-pressed);--ic-input-label-text-color:var(--ic-text-field-label);--ic-input-label-helper-text-color:var(--ic-text-field-subtitle);--ic-input-validation-status-text-color:var(--ic-text-field-state-text);--ic-input-validation-error:var(--ic-text-field-state-icon-error);--ic-input-validation-warning-icon-color:var(\n --ic-text-field-state-icon-warning\n );--ic-input-validation-success-icon-color:var(\n --ic-text-field-state-icon-success\n );--ic-input-component-container-success-icon-inline-color:var(\n --ic-text-field-state-icon-success\n )}:host(.ic-text-field-disabled){--ic-input-label-text-color:var(--ic-text-field-label-disabled);--ic-input-label-helper-text-color:var(--ic-text-field-subtitle-disabled);--text-field-placeholder-color:var(\n --ic-text-field-text-area-placeholder-text-disabled\n )}:host(.ic-text-field-full-width){width:100%}::-moz-placeholder{color:var(\n --text-field-placeholder-color,\n var(--ic-text-field-placeholder-text)\n );opacity:1}::placeholder{color:var(\n --text-field-placeholder-color,\n var(--ic-text-field-placeholder-text)\n );opacity:1}input,textarea{border:0;border-radius:var(--ic-border-radius);color:var(--text-field-text-color, var(--ic-text-field-text));background-color:var(--input-bg-color, var(--ic-text-field-background));line-height:1.5rem;letter-spacing:0.005rem;width:100%;padding-right:var(--ic-space-xs);padding-left:var(--ic-space-xs);caret-color:var(\n --text-field-typing-cursor,\n var(--ic-text-field-typing-cursor)\n )}textarea{min-height:var(--ic-space-lg);resize:vertical;padding-top:0.375rem}input:focus,textarea:focus{border:0;outline:0}input:disabled,textarea:disabled{color:var(\n --text-field-disabled-text-color,\n var(--ic-text-field-text-disabled)\n )}input.readonly,textarea.readonly{color:var(--ic-text-field-read-only-input-text-internal);background:transparent}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=\"number\"]{-moz-appearance:textfield}textarea.no-resize{resize:none}.char-count-text{--ic-typography-color:var(--ic-text-field-character-limit);padding-right:var(--ic-space-xxxs)}:host(.ic-text-field-disabled) .char-count-text{--ic-typography-color:var(--ic-text-field-character-limit-disabled)}.no-left-pad{padding-left:0}::slotted([slot=\"icon\"]){fill:var(--ic-text-field-text-disabled)}.has-value ::slotted([slot=\"icon\"]){fill:var(--ic-text-field-input-internal-icon)}.char-count{margin-right:calc(-1 * var(--ic-space-xxxs))}.remaining-char-count-desc{position:absolute;left:-9999px}input[type=\"search\"]::-webkit-search-cancel-button,input[type=\"search\"]::-webkit-search-decoration,input[type=\"search\"]::-webkit-search-results-button,input[type=\"search\"]::-webkit-search-results-decoration{display:none}input[type=\"search\"].truncate-value{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}@media (forced-colors: active){input.readonly,textarea.readonly{color:canvastext}.has-value ::slotted([slot=\"icon\"]){fill:currentcolor}}";
9
+ const icTextFieldCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--ic-input-label-helpertext-padding:var(--ic-space-xs);--border-color:var(--ic-text-field-border-neutral);--border-color-hover:var(--ic-text-field-border-neutral-hover);--border-color-pressed:var(--ic-text-field-border-neutral-pressed);--border-color-disabled:var(--ic-text-field-border-disabled);--border-color-error:var(--ic-text-field-border-error);--border-color-error-hover:var(--ic-text-field-border-error-hover);--border-color-error-pressed:var(--ic-text-field-border-error-pressed);--border-color-success:var(--ic-text-field-border-success);--border-color-success-hover:var(--ic-text-field-border-success-hover);--border-color-success-pressed:var(--ic-text-field-border-success-pressed);--border-color-warning:var(--ic-text-field-border-warning);--border-color-warning-hover:var(--ic-text-field-border-warning-hover);--border-color-warning-pressed:var(--ic-text-field-border-warning-pressed);--ic-input-label-text-color:var(--ic-text-field-label);--ic-input-label-helper-text-color:var(--ic-text-field-subtitle);--ic-input-validation-status-text-color:var(--ic-text-field-state-text);--ic-input-validation-error:var(--ic-text-field-state-icon-error);--ic-input-validation-warning-icon-color:var(\n --ic-text-field-state-icon-warning\n );--ic-input-validation-success-icon-color:var(\n --ic-text-field-state-icon-success\n );--ic-input-component-container-success-icon-inline-color:var(\n --ic-text-field-state-icon-success\n )}:host(.ic-text-field-disabled){--ic-input-label-text-color:var(--ic-text-field-label-disabled);--ic-input-label-helper-text-color:var(--ic-text-field-subtitle-disabled);--text-field-placeholder-color:var(\n --ic-text-field-text-area-placeholder-text-disabled\n )}:host(.ic-text-field-full-width){width:100%}::-moz-placeholder{color:var(\n --text-field-placeholder-color,\n var(--ic-text-field-placeholder-text)\n );opacity:1}::placeholder{color:var(\n --text-field-placeholder-color,\n var(--ic-text-field-placeholder-text)\n );opacity:1}input,textarea{border:0;border-radius:var(--ic-border-radius);color:var(--text-field-text-color, var(--ic-text-field-text));background-color:var(--input-bg-color, var(--ic-text-field-background));line-height:1.5rem;letter-spacing:0.005rem;width:100%;padding-right:var(--ic-space-xs);padding-left:var(--ic-space-xs);caret-color:var(\n --text-field-typing-cursor,\n var(--ic-text-field-typing-cursor)\n )}textarea{min-height:var(--ic-space-lg);resize:vertical;padding-top:0.375rem}input:focus,textarea:focus{border:0;outline:0}input:disabled,textarea:disabled{color:var(\n --text-field-disabled-text-color,\n var(--ic-text-field-text-disabled)\n )}input.readonly,textarea.readonly{color:var(--ic-text-field-read-only-input-text-internal);background:transparent}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=\"number\"]{-moz-appearance:textfield}textarea.no-resize{resize:none}.char-count-text{--ic-typography-color:var(--ic-text-field-character-limit);padding-right:var(--ic-space-xxxs)}:host(.ic-text-field-disabled) .char-count-text{--ic-typography-color:var(--ic-text-field-character-limit-disabled)}.no-left-pad{padding-left:0}::slotted([slot=\"icon\"]){fill:var(--ic-text-field-text-disabled)}.has-value ::slotted([slot=\"icon\"]){fill:var(--ic-text-field-input-internal-icon)}.char-count{margin-right:calc(-1 * var(--ic-space-xxxs))}.remaining-char-count-desc{position:absolute;left:-9999px}.hidden-validation{margin:0}input[type=\"search\"]::-webkit-search-cancel-button,input[type=\"search\"]::-webkit-search-decoration,input[type=\"search\"]::-webkit-search-results-button,input[type=\"search\"]::-webkit-search-results-decoration{display:none}input[type=\"search\"].truncate-value{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}@media (forced-colors: active){input.readonly,textarea.readonly{color:canvastext}.has-value ::slotted([slot=\"icon\"]){fill:currentcolor}}";
10
10
  const IcTextFieldStyle0 = icTextFieldCss;
11
11
 
12
12
  let inputIds = 0;
@@ -32,6 +32,10 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
32
32
  this.maxValueExceeded = false;
33
33
  this.minValueUnattained = false;
34
34
  this.isFocussed = false;
35
+ /**
36
+ * The value of the `aria-live` attribute on the validation message. When set to "default", the `aria-live` value will be handled automatically, e.g. "assertive" for `validation-status="error"`.
37
+ */
38
+ this.validationAriaLive = "default";
35
39
  /**
36
40
  * The automatic capitalisation of the text value as it is entered/edited by the user.
37
41
  * Available options: "off", "none", "on", "sentences", "words", "characters".
@@ -239,6 +243,15 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
239
243
  this.handleFormReset = () => {
240
244
  this.value = this.initialValue;
241
245
  };
246
+ this.showValidationMargin = () => {
247
+ const maxNumChars = this.readonly ? 0 : this.maxCharacters;
248
+ const emptyString = isEmptyString(this.validationStatus) ||
249
+ isEmptyString(this.validationText);
250
+ const valueOutsideRange = this.minValueUnattained || this.maxValueExceeded;
251
+ const charsOutsideRange = maxNumChars > 0 || this.minCharactersUnattained;
252
+ return ((!emptyString || valueOutsideRange || charsOutsideRange) &&
253
+ !this.validationInlineInternal);
254
+ };
242
255
  // triggered when attributes of host element change
243
256
  this.hostMutationCallback = (mutationList) => {
244
257
  let forceComponentUpdate = false;
@@ -337,7 +350,7 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
337
350
  (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.focus();
338
351
  }
339
352
  render() {
340
- const { inputId, name, label, required, size, placeholder, helperText, hideCharCount, rows, resize, disabled, value, min, max, numChars, readonly, maxCharacters, maxCharactersMessage, maxCharactersWarning, maxCharactersReached, maxMessage, minCharacters, minCharactersMessage, minCharactersUnattained, minMessage, minValueUnattained, maxValueExceeded, validationStatus, validationText, validationInline, validationInlineInternal, spellcheck, inputmode, fullWidth, truncateValue, hiddenInput, theme, hideLabel, type, autocapitalize, ariaActiveDescendant, inheritedAttributes, ariaExpanded, ariaOwns, autocomplete, role, isFocussed, } = this;
353
+ const { inputId, name, label, required, size, placeholder, helperText, hideCharCount, rows, resize, disabled, value, min, max, numChars, readonly, maxCharacters, maxCharactersMessage, maxCharactersWarning, maxCharactersReached, maxMessage, minCharacters, minCharactersMessage, minCharactersUnattained, minMessage, minValueUnattained, maxValueExceeded, validationAriaLive, validationStatus, validationText, validationInline, validationInlineInternal, spellcheck, inputmode, fullWidth, truncateValue, hiddenInput, theme, hideLabel, type, autocapitalize, ariaActiveDescendant, inheritedAttributes, ariaExpanded, ariaOwns, autocomplete, role, isFocussed, } = this;
341
354
  const el = this.el;
342
355
  const disabledMode = readonly || disabled;
343
356
  const currentStatus = maxValueExceeded ||
@@ -358,12 +371,14 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
358
371
  ? minCharactersMessage
359
372
  : validationText;
360
373
  const maxNumChars = readonly ? 0 : maxCharacters;
361
- const messageAriaLive = maxCharactersWarning ||
362
- maxValueExceeded ||
363
- minValueUnattained ||
364
- currentStatus === IcInformationStatus.Error
365
- ? "assertive"
366
- : "polite";
374
+ const messageAriaLive = validationAriaLive === "default"
375
+ ? maxCharactersWarning ||
376
+ maxValueExceeded ||
377
+ minValueUnattained ||
378
+ currentStatus === IcInformationStatus.Error
379
+ ? "assertive"
380
+ : "polite"
381
+ : validationAriaLive;
367
382
  const showStatusText = this.hasStatus(currentStatus) &&
368
383
  !(currentStatus == IcInformationStatus.Success && validationInline) &&
369
384
  !validationInlineInternal;
@@ -379,14 +394,14 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
379
394
  hiddenInput
380
395
  ? renderHiddenInput(this.el, value, name, disabledMode)
381
396
  : removeHiddenInput(this.el);
382
- return (h(Host, { key: 'af9f4dab9e78765b8e1e578d57783e5487d83f6b', class: {
397
+ return (h(Host, { key: '985b46adc3cee088de75766a4230042e4af8c9c3', class: {
383
398
  "ic-text-field-full-width": fullWidth,
384
399
  "ic-text-field-disabled": disabledMode,
385
400
  [`ic-theme-${theme}`]: theme !== "inherit",
386
- } }, h("ic-input-container", { key: '7417dcc2f53f877899b713093e81a4db38c394c7', readonly: readonly, disabled: disabledMode }, !hideLabel && (h("ic-input-label", { key: '36ae0e2a6a99024c0b8fbd141519dcd4d5390e6d', for: inputId, label: label, helperText: helperText, required: required, disabled: disabledText, readonly: readonly }, h("slot", { key: '9392299204d1bc2ef1b0bb464984b8f8bc148834', name: "helper-text", slot: "helper-text" }))), h("ic-input-component-container", { key: 'd6819ae02cab210950e11d74c1dac6dd3c5505ed', size: size, validationStatus: currentStatus, multiLine: multiline, disabled: disabledMode, readonly: readonly, validationInline: validationInline, fullWidth: fullWidth }, showLeftIcon && (h("span", { key: '660f12ab2717dfd7b75bd19a60c92c167fb06db3', class: {
401
+ } }, h("ic-input-container", { key: '4b9794b880ab440c1c2e6cf2072c13d9d88cc1fa', readonly: readonly, disabled: disabledMode }, !hideLabel && (h("ic-input-label", { key: '6ccf8091d697ddce0dade9a81d38e7bc17315da9', for: inputId, label: label, helperText: helperText, required: required, disabled: disabledText, readonly: readonly }, h("slot", { key: '0ecf6a100c43efdca46f3b7c03ac6a5a8f7cc972', name: "helper-text", slot: "helper-text" }))), h("ic-input-component-container", { key: 'a1d649e733cab8590b92db3c0ecda49ea021103f', size: size, validationStatus: currentStatus, multiLine: multiline, disabled: disabledMode, readonly: readonly, validationInline: validationInline, fullWidth: fullWidth }, showLeftIcon && (h("span", { key: 'd3228d1ab97951891316b60608ce8a9fbe6295bb', class: {
387
402
  readonly,
388
403
  "has-value": this.getNumberOfCharacters(value) > 0,
389
- }, slot: "left-icon" }, h("slot", { key: '8631fc623d4f5b422921add6d01992b736acdf22', name: "icon" }))), !multiline ? (h("input", Object.assign({ id: inputId, name: name, ref: (el) => (this.inputEl = el), type: type, min: min, max: max, value: value, class: {
404
+ }, slot: "left-icon" }, h("slot", { key: 'ea62e21d7abc5048da1a8e9a15f5a5a535c963b3', name: "icon" }))), !multiline ? (h("input", Object.assign({ id: inputId, name: name, ref: (el) => (this.inputEl = el), type: type, min: min, max: max, value: value, class: {
390
405
  "no-left-pad": !showLeftIcon && readonly,
391
406
  readonly,
392
407
  "truncate-value": truncateValue,
@@ -394,19 +409,12 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
394
409
  "no-resize": resize === false || !!readonly,
395
410
  "no-left-pad": !showLeftIcon && !!readonly,
396
411
  readonly: !!readonly,
397
- }, name: name, ref: (el) => (this.inputEl = el), value: value, rows: rows, required: required, disabled: disabledMode, placeholder: placeholder, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, onScroll: this.onTextAreaScroll, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, autocapitalize: autocapitalize, spellcheck: spellcheck, inputmode: inputmode, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, inheritedAttributes))), isSlotUsed(el, "clear-button") && (h("slot", { key: 'c92ce219c83dccaec610f5caeb2a71b4753cbe2f', name: "clear-button" })), isSlotUsed(el, "search-submit-button") && (h("slot", { key: '4ee50a7855e3a2c3fb5ab4ad655b278bb7a2190d', name: "search-submit-button" }))), isSlotUsed(el, "menu") && h("slot", { key: '9ab8449f815482c7cd689d3d22b918de4c72c27b', name: "menu" }), (!isEmptyString(validationStatus) ||
398
- !isEmptyString(validationText) ||
399
- maxNumChars > 0 ||
400
- maxValueExceeded ||
401
- maxCharactersWarning ||
402
- minCharactersUnattained ||
403
- minValueUnattained) &&
404
- !validationInlineInternal && (h("ic-input-validation", { key: 'b87afc1859b8a33d5767b5b0c61056936b760de7', status: this.hasStatus(currentStatus) === false ||
412
+ }, name: name, ref: (el) => (this.inputEl = el), value: value, rows: rows, required: required, disabled: disabledMode, placeholder: placeholder, readonly: readonly, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, onScroll: this.onTextAreaScroll, "aria-label": label, "aria-describedby": describedBy, "aria-invalid": invalid, autocomplete: autocomplete, autocapitalize: autocapitalize, spellcheck: spellcheck, inputmode: inputmode, maxlength: maxCharactersReached ? maxCharacters : undefined, minlength: minCharactersUnattained ? minCharacters : undefined }, inheritedAttributes))), isSlotUsed(el, "clear-button") && (h("slot", { key: 'e02f69a6fd4c654b7f3b5f1593f7a29c7412d10f', name: "clear-button" })), isSlotUsed(el, "search-submit-button") && (h("slot", { key: '2e32b1afd58a382a804a356537489efa523009ce', name: "search-submit-button" }))), isSlotUsed(el, "menu") && h("slot", { key: '1cbac8ded359309907e51f16033b03d266eb8828', name: "menu" }), h("ic-input-validation", { key: 'd5c1c75305e3bebe54a48b1a2a99429f4f64019a', class: { "hidden-validation": !this.showValidationMargin() }, status: this.hasStatus(currentStatus) === false ||
405
413
  (currentStatus === IcInformationStatus.Success &&
406
414
  validationInline) ||
407
415
  validationInlineInternal
408
416
  ? ""
409
- : currentStatus, message: showStatusText ? currentValidationText : "", ariaLiveMode: messageAriaLive, for: inputId, fullWidth: fullWidth }, !readonly && maxNumChars > 0 && (h("div", { key: 'b0f41b53066d1c7b6fa4442796ec5122198575bf', slot: "validation-message-adornment" }, !hideCharCount && (h("ic-typography", { key: 'acc961a28e30293d1031a8469327e3f70c179936', variant: "caption", class: "char-count-text" }, h("span", { key: '94e2d9e62a04beccd7abc4309a70f6a0908f4d34', class: "char-count" }, numChars, "/", maxNumChars))), h("span", { key: 'caf33b69417c2a5d956b7a88ea3855212c7e3e19', class: "remaining-char-count-desc", "aria-live": "polite", hidden: !isFocussed, id: remainingCharCountDescId }, remainingCharCountDesc), h("span", { key: 'f69c682178137ae9da47c05c15b81de48e06189a', hidden: true, id: hiddenCharCountDescId }, "Field can contain a maximum of ", maxNumChars, " characters."))))))));
417
+ : currentStatus, message: showStatusText ? currentValidationText : "", ariaLiveMode: messageAriaLive, for: inputId, fullWidth: fullWidth }, !readonly && maxNumChars > 0 && (h("div", { key: '8f44917b384aea5179dd8ec7ecb76c4deac324f4', slot: "validation-message-adornment" }, !hideCharCount && (h("ic-typography", { key: '82c4343bc57ca67df98685ef351032e411010c82', variant: "caption", class: "char-count-text" }, h("span", { key: 'c89807bfa34112d29f906cf540a97639846970fb', class: "char-count" }, numChars, "/", maxNumChars))), h("span", { key: '24fef83685d9b7ac8c706c8776485b38fea74973', class: "remaining-char-count-desc", "aria-live": "polite", hidden: !isFocussed, id: remainingCharCountDescId }, remainingCharCountDesc), h("span", { key: '98d23cac7439da80ea0d72a355cce23b57e5bea4', hidden: true, id: hiddenCharCountDescId }, "Field can contain a maximum of ", maxNumChars, " characters.")))))));
410
418
  }
411
419
  get el() { return this; }
412
420
  static get watchers() { return {
@@ -420,6 +428,7 @@ const TextField = /*@__PURE__*/ proxyCustomElement(class TextField extends HTMLE
420
428
  "ariaAutocomplete": [1, "aria-autocomplete"],
421
429
  "ariaExpanded": [1, "aria-expanded"],
422
430
  "ariaOwns": [1, "aria-owns"],
431
+ "validationAriaLive": [1, "validation-aria-live"],
423
432
  "autocapitalize": [1],
424
433
  "autocomplete": [1],
425
434
  "autocorrect": [1],