@ukic/web-components 3.20.0 → 3.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/helpers-3a796e7a.js.map +1 -1
  3. package/dist/cjs/ic-accordion.cjs.entry.js +16 -9
  4. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ic-back-to-top.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-button_3.cjs.entry.js +6 -6
  12. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-card-horizontal.cjs.entry.js +174 -0
  14. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -0
  15. package/dist/cjs/ic-card-vertical.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-checkbox-group.cjs.entry.js +2 -2
  18. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-checkbox.cjs.entry.js +5 -5
  20. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-data-list.cjs.entry.js +2 -2
  22. package/dist/cjs/ic-data-row.cjs.entry.js +2 -2
  23. package/dist/cjs/ic-dialog.cjs.entry.js +1 -1
  24. package/dist/cjs/ic-divider.cjs.entry.js +16 -7
  25. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-empty-state.cjs.entry.js +2 -2
  27. package/dist/cjs/ic-footer-link.cjs.entry.js +3 -3
  28. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  29. package/dist/cjs/ic-hero.cjs.entry.js +4 -4
  30. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +6 -6
  31. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +10 -10
  33. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-input-label_2.cjs.entry.js +16 -11
  35. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-layout-grid-item.cjs.entry.js +2 -2
  37. package/dist/cjs/ic-layout-grid.cjs.entry.js +2 -2
  38. package/dist/cjs/ic-link.cjs.entry.js +2 -2
  39. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  41. package/dist/cjs/ic-navigation-group.cjs.entry.js +2 -2
  42. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-navigation-item.cjs.entry.js +6 -4
  44. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-navigation-menu.cjs.entry.js +4 -4
  46. package/dist/cjs/ic-page-header.cjs.entry.js +7 -7
  47. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-pagination-item.cjs.entry.js +2 -2
  49. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-pagination.cjs.entry.js +4 -4
  51. package/dist/cjs/ic-popover-menu.cjs.entry.js +4 -4
  52. package/dist/cjs/ic-radio-group.cjs.entry.js +4 -4
  53. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -5
  54. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-search-bar.cjs.entry.js +10 -10
  56. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ic-section-container.cjs.entry.js +2 -2
  58. package/dist/cjs/ic-select.cjs.entry.js +7 -7
  59. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-side-navigation.cjs.entry.js +16 -10
  61. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-skeleton.cjs.entry.js +2 -2
  63. package/dist/cjs/ic-skip-link.cjs.entry.js +2 -2
  64. package/dist/cjs/ic-status-tag.cjs.entry.js +2 -2
  65. package/dist/cjs/ic-step.cjs.entry.js +13 -13
  66. package/dist/cjs/ic-stepper.cjs.entry.js +2 -2
  67. package/dist/cjs/ic-switch.cjs.entry.js +5 -5
  68. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ic-tab-context.cjs.entry.js +1 -1
  70. package/dist/cjs/ic-tab-group.cjs.entry.js +2 -2
  71. package/dist/cjs/ic-tab-panel.cjs.entry.js +2 -2
  72. package/dist/cjs/ic-tab.cjs.entry.js +1 -1
  73. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-text-field.cjs.entry.js +5 -5
  75. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  76. package/dist/cjs/ic-toast-region.cjs.entry.js +1 -1
  77. package/dist/cjs/ic-toast.cjs.entry.js +5 -5
  78. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +3 -3
  79. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-toggle-button.cjs.entry.js +2 -2
  81. package/dist/cjs/ic-top-navigation.cjs.entry.js +1 -1
  82. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ic-typography.cjs.entry.js +1 -1
  84. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  85. package/dist/cjs/index-d337cd8a.js +4 -0
  86. package/dist/cjs/loader.cjs.js +1 -1
  87. package/dist/collection/collection-manifest.json +1 -0
  88. package/dist/collection/components/ic-accordion/ic-accordion.css +6 -0
  89. package/dist/collection/components/ic-accordion/ic-accordion.js +15 -8
  90. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  91. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +7 -0
  92. package/dist/collection/components/ic-badge/ic-badge.css +6 -0
  93. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.css +8 -0
  94. package/dist/collection/components/ic-button/ic-button.css +7 -0
  95. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +728 -0
  96. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +512 -0
  97. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -0
  98. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.stories.js +876 -0
  99. package/dist/collection/components/ic-card-vertical/ic-card-vertical.css +7 -0
  100. package/dist/collection/components/ic-card-vertical/ic-card-vertical.stories.js +1 -1
  101. package/dist/collection/components/ic-checkbox/ic-checkbox.css +7 -5
  102. package/dist/collection/components/ic-checkbox/ic-checkbox.js +4 -4
  103. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +3 -3
  104. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  105. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +35 -0
  106. package/dist/collection/components/ic-data-list/ic-data-list.js +2 -2
  107. package/dist/collection/components/ic-data-row/ic-data-row.js +2 -2
  108. package/dist/collection/components/ic-dialog/ic-dialog.js +1 -1
  109. package/dist/collection/components/ic-divider/ic-divider.js +16 -7
  110. package/dist/collection/components/ic-divider/ic-divider.js.map +1 -1
  111. package/dist/collection/components/ic-empty-state/ic-empty-state.js +2 -2
  112. package/dist/collection/components/ic-footer-link/ic-footer-link.css +6 -0
  113. package/dist/collection/components/ic-footer-link/ic-footer-link.js +2 -2
  114. package/dist/collection/components/ic-hero/ic-hero.js +4 -4
  115. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +6 -0
  116. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +5 -5
  117. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +7 -0
  118. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +3 -3
  119. package/dist/collection/components/ic-input-container/ic-input-container.js +2 -2
  120. package/dist/collection/components/ic-input-label/ic-input-label.js +16 -8
  121. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  122. package/dist/collection/components/ic-input-validation/ic-input-validation.js +3 -3
  123. package/dist/collection/components/ic-layout-grid/ic-layout-grid.js +2 -2
  124. package/dist/collection/components/ic-layout-grid-item/ic-layout-grid-item.js +2 -2
  125. package/dist/collection/components/ic-link/ic-link.css +7 -0
  126. package/dist/collection/components/ic-link/ic-link.js +1 -1
  127. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +5 -5
  128. package/dist/collection/components/ic-menu/ic-menu.css +6 -0
  129. package/dist/collection/components/ic-menu/ic-menu.js +3 -3
  130. package/dist/collection/components/ic-menu-group/ic-menu-group.js +1 -1
  131. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +9 -0
  132. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +1 -1
  133. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +41 -0
  134. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +5 -3
  135. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  136. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +4 -4
  137. package/dist/collection/components/ic-page-header/ic-page-header.css +1 -2
  138. package/dist/collection/components/ic-page-header/ic-page-header.js +6 -6
  139. package/dist/collection/components/ic-pagination/ic-pagination.js +4 -4
  140. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +6 -0
  141. package/dist/collection/components/ic-pagination-item/ic-pagination-item.js +1 -1
  142. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +4 -4
  143. package/dist/collection/components/ic-radio-group/ic-radio-group.js +4 -4
  144. package/dist/collection/components/ic-radio-option/ic-radio-option.css +6 -0
  145. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -4
  146. package/dist/collection/components/ic-search-bar/ic-search-bar.css +6 -0
  147. package/dist/collection/components/ic-search-bar/ic-search-bar.js +9 -9
  148. package/dist/collection/components/ic-section-container/ic-section-container.js +2 -2
  149. package/dist/collection/components/ic-select/ic-select.css +8 -0
  150. package/dist/collection/components/ic-select/ic-select.js +6 -6
  151. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +46 -21
  152. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +15 -9
  153. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  154. package/dist/collection/components/ic-skeleton/ic-skeleton.js +2 -2
  155. package/dist/collection/components/ic-skip-link/ic-skip-link.js +2 -2
  156. package/dist/collection/components/ic-status-tag/ic-status-tag.js +2 -2
  157. package/dist/collection/components/ic-step/ic-step.js +13 -13
  158. package/dist/collection/components/ic-stepper/ic-stepper.js +2 -2
  159. package/dist/collection/components/ic-switch/ic-switch.css +7 -0
  160. package/dist/collection/components/ic-switch/ic-switch.js +4 -4
  161. package/dist/collection/components/ic-tab/ic-tab.css +6 -0
  162. package/dist/collection/components/ic-tab-context/ic-tab-context.js +1 -1
  163. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -2
  164. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +2 -2
  165. package/dist/collection/components/ic-text-field/ic-text-field.js +5 -5
  166. package/dist/collection/components/ic-theme/ic-theme.js +1 -1
  167. package/dist/collection/components/ic-toast/ic-toast.js +5 -5
  168. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -1
  169. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +2 -2
  170. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +6 -0
  171. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +2 -2
  172. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +8 -4
  173. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +100 -0
  174. package/dist/collection/components/ic-typography/ic-typography.css +6 -0
  175. package/dist/collection/utils/types.js.map +1 -1
  176. package/dist/components/helpers.js.map +1 -1
  177. package/dist/components/ic-accordion.js +16 -9
  178. package/dist/components/ic-accordion.js.map +1 -1
  179. package/dist/components/ic-back-to-top.js +1 -1
  180. package/dist/components/ic-back-to-top.js.map +1 -1
  181. package/dist/components/ic-badge.js +1 -1
  182. package/dist/components/ic-badge.js.map +1 -1
  183. package/dist/components/ic-breadcrumb-group.js +1 -1
  184. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  185. package/dist/components/ic-button2.js +1 -1
  186. package/dist/components/ic-button2.js.map +1 -1
  187. package/dist/components/ic-card-horizontal.d.ts +11 -0
  188. package/dist/components/ic-card-horizontal.js +214 -0
  189. package/dist/components/ic-card-horizontal.js.map +1 -0
  190. package/dist/components/ic-card-vertical.js +1 -1
  191. package/dist/components/ic-card-vertical.js.map +1 -1
  192. package/dist/components/ic-checkbox-group.js +2 -2
  193. package/dist/components/ic-checkbox-group.js.map +1 -1
  194. package/dist/components/ic-checkbox.js +5 -5
  195. package/dist/components/ic-checkbox.js.map +1 -1
  196. package/dist/components/ic-classification-banner.js.map +1 -1
  197. package/dist/components/ic-data-list.js +2 -2
  198. package/dist/components/ic-data-row.js +2 -2
  199. package/dist/components/ic-dialog.js +1 -1
  200. package/dist/components/ic-divider2.js +17 -8
  201. package/dist/components/ic-divider2.js.map +1 -1
  202. package/dist/components/ic-empty-state.js +2 -2
  203. package/dist/components/ic-footer-link.js +3 -3
  204. package/dist/components/ic-footer-link.js.map +1 -1
  205. package/dist/components/ic-hero.js +4 -4
  206. package/dist/components/ic-horizontal-scroll2.js +6 -6
  207. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  208. package/dist/components/ic-input-component-container2.js +4 -4
  209. package/dist/components/ic-input-component-container2.js.map +1 -1
  210. package/dist/components/ic-input-container2.js +2 -2
  211. package/dist/components/ic-input-label2.js +13 -8
  212. package/dist/components/ic-input-label2.js.map +1 -1
  213. package/dist/components/ic-input-validation2.js +3 -3
  214. package/dist/components/ic-layout-grid-item.js +2 -2
  215. package/dist/components/ic-layout-grid.js +2 -2
  216. package/dist/components/ic-link2.js +2 -2
  217. package/dist/components/ic-link2.js.map +1 -1
  218. package/dist/components/ic-loading-indicator2.js +5 -5
  219. package/dist/components/ic-menu-group.js +1 -1
  220. package/dist/components/ic-menu2.js +4 -4
  221. package/dist/components/ic-menu2.js.map +1 -1
  222. package/dist/components/ic-navigation-group.js +2 -2
  223. package/dist/components/ic-navigation-group.js.map +1 -1
  224. package/dist/components/ic-navigation-item.js +6 -4
  225. package/dist/components/ic-navigation-item.js.map +1 -1
  226. package/dist/components/ic-navigation-menu2.js +4 -4
  227. package/dist/components/ic-page-header.js +7 -7
  228. package/dist/components/ic-page-header.js.map +1 -1
  229. package/dist/components/ic-pagination-item2.js +2 -2
  230. package/dist/components/ic-pagination-item2.js.map +1 -1
  231. package/dist/components/ic-pagination.js +4 -4
  232. package/dist/components/ic-pagination.js.map +1 -1
  233. package/dist/components/ic-popover-menu.js +4 -4
  234. package/dist/components/ic-radio-group.js +4 -4
  235. package/dist/components/ic-radio-group.js.map +1 -1
  236. package/dist/components/ic-radio-option.js +5 -5
  237. package/dist/components/ic-radio-option.js.map +1 -1
  238. package/dist/components/ic-search-bar.js +10 -10
  239. package/dist/components/ic-search-bar.js.map +1 -1
  240. package/dist/components/ic-section-container2.js +2 -2
  241. package/dist/components/ic-select.js +7 -7
  242. package/dist/components/ic-select.js.map +1 -1
  243. package/dist/components/ic-side-navigation.js +16 -10
  244. package/dist/components/ic-side-navigation.js.map +1 -1
  245. package/dist/components/ic-skeleton.js +2 -2
  246. package/dist/components/ic-skip-link.js +2 -2
  247. package/dist/components/ic-status-tag.js +2 -2
  248. package/dist/components/ic-step.js +13 -13
  249. package/dist/components/ic-stepper.js +2 -2
  250. package/dist/components/ic-switch.js +5 -5
  251. package/dist/components/ic-switch.js.map +1 -1
  252. package/dist/components/ic-tab-context.js +1 -1
  253. package/dist/components/ic-tab-group.js +2 -2
  254. package/dist/components/ic-tab-panel.js +2 -2
  255. package/dist/components/ic-tab.js +1 -1
  256. package/dist/components/ic-tab.js.map +1 -1
  257. package/dist/components/ic-text-field.js +5 -5
  258. package/dist/components/ic-theme.js +1 -1
  259. package/dist/components/ic-toast-region.js +1 -1
  260. package/dist/components/ic-toast.js +5 -5
  261. package/dist/components/ic-toggle-button-group.js +3 -3
  262. package/dist/components/ic-toggle-button-group.js.map +1 -1
  263. package/dist/components/ic-toggle-button.js +2 -2
  264. package/dist/components/ic-top-navigation.js +1 -1
  265. package/dist/components/ic-top-navigation.js.map +1 -1
  266. package/dist/components/ic-typography2.js +1 -1
  267. package/dist/components/ic-typography2.js.map +1 -1
  268. package/dist/core/core.esm.js +1 -1
  269. package/dist/core/core.esm.js.map +1 -1
  270. package/dist/core/{p-f5fd4a76.entry.js → p-04c77b2d.entry.js} +2 -2
  271. package/dist/core/p-04c77b2d.entry.js.map +1 -0
  272. package/dist/core/{p-0301d1c8.entry.js → p-07075461.entry.js} +2 -2
  273. package/dist/core/p-0a24c536.entry.js +2 -0
  274. package/dist/core/p-0a24c536.entry.js.map +1 -0
  275. package/dist/core/{p-c16e982c.entry.js → p-0aba9e31.entry.js} +2 -2
  276. package/dist/core/{p-45076d7e.entry.js → p-0d7fd892.entry.js} +2 -2
  277. package/dist/core/{p-ebc47282.entry.js → p-0da2caa2.entry.js} +2 -2
  278. package/dist/core/{p-5ac3adb9.entry.js → p-1590fd69.entry.js} +2 -2
  279. package/dist/core/p-1590fd69.entry.js.map +1 -0
  280. package/dist/core/{p-45c553db.entry.js → p-208f470f.entry.js} +2 -2
  281. package/dist/core/p-29b61bb5.entry.js +3 -0
  282. package/dist/core/p-29b61bb5.entry.js.map +1 -0
  283. package/dist/core/{p-cf056074.entry.js → p-2af89564.entry.js} +2 -2
  284. package/dist/core/{p-6740c915.entry.js → p-2ca7f050.entry.js} +2 -2
  285. package/dist/core/{p-86989873.entry.js → p-3021290f.entry.js} +2 -2
  286. package/dist/core/p-3021290f.entry.js.map +1 -0
  287. package/dist/core/{p-90814d32.entry.js → p-387b7bca.entry.js} +2 -2
  288. package/dist/core/p-41a5da12.entry.js +2 -0
  289. package/dist/core/p-41a5da12.entry.js.map +1 -0
  290. package/dist/core/p-43cc0f1d.entry.js +2 -0
  291. package/dist/core/{p-23dc27a8.entry.js.map → p-43cc0f1d.entry.js.map} +1 -1
  292. package/dist/core/{p-c7f8547d.entry.js → p-4aa56990.entry.js} +2 -2
  293. package/dist/core/p-4aa56990.entry.js.map +1 -0
  294. package/dist/core/p-4aadabc8.entry.js +2 -0
  295. package/dist/core/p-4aadabc8.entry.js.map +1 -0
  296. package/dist/core/{p-8c00614c.entry.js → p-707ae6e9.entry.js} +2 -2
  297. package/dist/core/{p-0722d7b6.entry.js → p-716e7eaf.entry.js} +2 -2
  298. package/dist/core/p-716e7eaf.entry.js.map +1 -0
  299. package/dist/core/p-780babc0.entry.js +2 -0
  300. package/dist/core/p-780babc0.entry.js.map +1 -0
  301. package/dist/core/{p-608b4912.entry.js → p-78a54069.entry.js} +2 -2
  302. package/dist/core/{p-0d711c6a.entry.js → p-79949920.entry.js} +2 -2
  303. package/dist/core/{p-09c31ac6.entry.js → p-7f279c8a.entry.js} +2 -2
  304. package/dist/core/{p-656a9127.entry.js → p-808e1ef5.entry.js} +2 -2
  305. package/dist/core/{p-d478d13e.entry.js → p-812c5e61.entry.js} +2 -2
  306. package/dist/core/p-812c5e61.entry.js.map +1 -0
  307. package/dist/core/{p-ba4abeac.entry.js → p-85e15d01.entry.js} +2 -2
  308. package/dist/core/{p-276a6c8f.entry.js → p-8da90b72.entry.js} +2 -2
  309. package/dist/core/p-8fe4e0ad.entry.js +2 -0
  310. package/dist/core/p-8fe4e0ad.entry.js.map +1 -0
  311. package/dist/core/{p-8b1567c9.entry.js → p-9057a186.entry.js} +2 -2
  312. package/dist/core/p-9057a186.entry.js.map +1 -0
  313. package/dist/core/{p-fe0153ec.entry.js → p-94916588.entry.js} +2 -2
  314. package/dist/core/{p-8f45f956.entry.js → p-96bc7d24.entry.js} +2 -2
  315. package/dist/core/p-96bc7d24.entry.js.map +1 -0
  316. package/dist/core/{p-e176881a.entry.js → p-99687bce.entry.js} +2 -2
  317. package/dist/core/{p-3582c7df.entry.js → p-99951365.entry.js} +2 -2
  318. package/dist/core/p-99951365.entry.js.map +1 -0
  319. package/dist/core/p-9a4e067f.entry.js +2 -0
  320. package/dist/core/p-9a4e067f.entry.js.map +1 -0
  321. package/dist/core/{p-4e43b272.entry.js → p-a03bb31c.entry.js} +2 -2
  322. package/dist/core/p-a1b2f483.entry.js +2 -0
  323. package/dist/core/p-a1b2f483.entry.js.map +1 -0
  324. package/dist/core/{p-b5e39585.entry.js → p-a3dea729.entry.js} +2 -2
  325. package/dist/core/p-a674b13b.entry.js +2 -0
  326. package/dist/core/p-a674b13b.entry.js.map +1 -0
  327. package/dist/core/{p-93e1ba0a.entry.js → p-a851eb65.entry.js} +2 -2
  328. package/dist/core/p-b4e322fe.entry.js +2 -0
  329. package/dist/core/p-b4e322fe.entry.js.map +1 -0
  330. package/dist/core/{p-1d8559f0.entry.js → p-c156e6e9.entry.js} +2 -2
  331. package/dist/core/p-c5b9519d.entry.js +2 -0
  332. package/dist/core/p-c5b9519d.entry.js.map +1 -0
  333. package/dist/core/{p-e1814e7e.entry.js → p-cad23b7d.entry.js} +2 -2
  334. package/dist/core/{p-cdbbcef4.entry.js → p-cfd43558.entry.js} +2 -2
  335. package/dist/core/p-cfd43558.entry.js.map +1 -0
  336. package/dist/core/{p-107281c4.entry.js → p-d1730d4d.entry.js} +2 -2
  337. package/dist/core/{p-1fc4b88f.entry.js → p-d25d0aad.entry.js} +2 -2
  338. package/dist/core/p-d25d0aad.entry.js.map +1 -0
  339. package/dist/core/{p-0f998905.entry.js → p-db17a793.entry.js} +2 -2
  340. package/dist/core/p-db17a793.entry.js.map +1 -0
  341. package/dist/core/p-dbc8bf0c.js.map +1 -1
  342. package/dist/core/{p-81f60443.entry.js → p-dce11b9d.entry.js} +2 -2
  343. package/dist/core/p-dce11b9d.entry.js.map +1 -0
  344. package/dist/core/{p-6aa8d3ce.entry.js → p-ded4cd76.entry.js} +2 -2
  345. package/dist/core/p-ded4cd76.entry.js.map +1 -0
  346. package/dist/core/{p-ad5aca6f.entry.js → p-ea890d3d.entry.js} +2 -2
  347. package/dist/core/{p-d2d17d6d.entry.js → p-f0ecb80b.entry.js} +2 -2
  348. package/dist/core/p-f0ecb80b.entry.js.map +1 -0
  349. package/dist/core/{p-df029b1b.entry.js → p-f3406b42.entry.js} +2 -2
  350. package/dist/core/p-f3406b42.entry.js.map +1 -0
  351. package/dist/core/{p-76e8df31.entry.js → p-f6de08fb.entry.js} +2 -2
  352. package/dist/core/{p-889bb8db.entry.js → p-feef7c2c.entry.js} +2 -2
  353. package/dist/esm/core.js +1 -1
  354. package/dist/esm/helpers-0f85537f.js.map +1 -1
  355. package/dist/esm/ic-accordion.entry.js +16 -9
  356. package/dist/esm/ic-accordion.entry.js.map +1 -1
  357. package/dist/esm/ic-back-to-top.entry.js +1 -1
  358. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  359. package/dist/esm/ic-badge.entry.js +1 -1
  360. package/dist/esm/ic-badge.entry.js.map +1 -1
  361. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  362. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  363. package/dist/esm/ic-button_3.entry.js +6 -6
  364. package/dist/esm/ic-button_3.entry.js.map +1 -1
  365. package/dist/esm/ic-card-horizontal.entry.js +170 -0
  366. package/dist/esm/ic-card-horizontal.entry.js.map +1 -0
  367. package/dist/esm/ic-card-vertical.entry.js +1 -1
  368. package/dist/esm/ic-card-vertical.entry.js.map +1 -1
  369. package/dist/esm/ic-checkbox-group.entry.js +2 -2
  370. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  371. package/dist/esm/ic-checkbox.entry.js +5 -5
  372. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  373. package/dist/esm/ic-data-list.entry.js +2 -2
  374. package/dist/esm/ic-data-row.entry.js +2 -2
  375. package/dist/esm/ic-dialog.entry.js +1 -1
  376. package/dist/esm/ic-divider.entry.js +16 -7
  377. package/dist/esm/ic-divider.entry.js.map +1 -1
  378. package/dist/esm/ic-empty-state.entry.js +2 -2
  379. package/dist/esm/ic-footer-link.entry.js +3 -3
  380. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  381. package/dist/esm/ic-hero.entry.js +4 -4
  382. package/dist/esm/ic-horizontal-scroll.entry.js +6 -6
  383. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  384. package/dist/esm/ic-input-component-container_3.entry.js +10 -10
  385. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  386. package/dist/esm/ic-input-label_2.entry.js +16 -11
  387. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  388. package/dist/esm/ic-layout-grid-item.entry.js +2 -2
  389. package/dist/esm/ic-layout-grid.entry.js +2 -2
  390. package/dist/esm/ic-link.entry.js +2 -2
  391. package/dist/esm/ic-link.entry.js.map +1 -1
  392. package/dist/esm/ic-menu-group.entry.js +1 -1
  393. package/dist/esm/ic-navigation-group.entry.js +2 -2
  394. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  395. package/dist/esm/ic-navigation-item.entry.js +6 -4
  396. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  397. package/dist/esm/ic-navigation-menu.entry.js +4 -4
  398. package/dist/esm/ic-page-header.entry.js +7 -7
  399. package/dist/esm/ic-page-header.entry.js.map +1 -1
  400. package/dist/esm/ic-pagination-item.entry.js +2 -2
  401. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  402. package/dist/esm/ic-pagination.entry.js +4 -4
  403. package/dist/esm/ic-popover-menu.entry.js +4 -4
  404. package/dist/esm/ic-radio-group.entry.js +4 -4
  405. package/dist/esm/ic-radio-option.entry.js +5 -5
  406. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  407. package/dist/esm/ic-search-bar.entry.js +10 -10
  408. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  409. package/dist/esm/ic-section-container.entry.js +2 -2
  410. package/dist/esm/ic-select.entry.js +7 -7
  411. package/dist/esm/ic-select.entry.js.map +1 -1
  412. package/dist/esm/ic-side-navigation.entry.js +16 -10
  413. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  414. package/dist/esm/ic-skeleton.entry.js +2 -2
  415. package/dist/esm/ic-skip-link.entry.js +2 -2
  416. package/dist/esm/ic-status-tag.entry.js +2 -2
  417. package/dist/esm/ic-step.entry.js +13 -13
  418. package/dist/esm/ic-stepper.entry.js +2 -2
  419. package/dist/esm/ic-switch.entry.js +5 -5
  420. package/dist/esm/ic-switch.entry.js.map +1 -1
  421. package/dist/esm/ic-tab-context.entry.js +1 -1
  422. package/dist/esm/ic-tab-group.entry.js +2 -2
  423. package/dist/esm/ic-tab-panel.entry.js +2 -2
  424. package/dist/esm/ic-tab.entry.js +1 -1
  425. package/dist/esm/ic-tab.entry.js.map +1 -1
  426. package/dist/esm/ic-text-field.entry.js +5 -5
  427. package/dist/esm/ic-theme.entry.js +1 -1
  428. package/dist/esm/ic-toast-region.entry.js +1 -1
  429. package/dist/esm/ic-toast.entry.js +5 -5
  430. package/dist/esm/ic-toggle-button-group.entry.js +3 -3
  431. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  432. package/dist/esm/ic-toggle-button.entry.js +2 -2
  433. package/dist/esm/ic-top-navigation.entry.js +1 -1
  434. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  435. package/dist/esm/ic-typography.entry.js +1 -1
  436. package/dist/esm/ic-typography.entry.js.map +1 -1
  437. package/dist/esm/index-a7a720e7.js +4 -0
  438. package/dist/esm/loader.js +1 -1
  439. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +89 -0
  440. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +1 -0
  441. package/dist/types/components/ic-divider/ic-divider.d.ts +2 -0
  442. package/dist/types/components/ic-input-label/ic-input-label.d.ts +4 -1
  443. package/dist/types/components.d.ts +123 -2
  444. package/dist/types/utils/types.d.ts +1 -0
  445. package/hydrate/index.js +432 -198
  446. package/hydrate/index.mjs +432 -198
  447. package/package.json +2 -2
  448. package/vscode-data.json +117 -0
  449. package/dist/core/p-0722d7b6.entry.js.map +0 -1
  450. package/dist/core/p-0f6fd5d3.entry.js +0 -2
  451. package/dist/core/p-0f6fd5d3.entry.js.map +0 -1
  452. package/dist/core/p-0f998905.entry.js.map +0 -1
  453. package/dist/core/p-1fc4b88f.entry.js.map +0 -1
  454. package/dist/core/p-23dc27a8.entry.js +0 -2
  455. package/dist/core/p-3582c7df.entry.js.map +0 -1
  456. package/dist/core/p-3c7e90a7.entry.js +0 -2
  457. package/dist/core/p-3c7e90a7.entry.js.map +0 -1
  458. package/dist/core/p-57ce68e5.entry.js +0 -2
  459. package/dist/core/p-57ce68e5.entry.js.map +0 -1
  460. package/dist/core/p-5ac3adb9.entry.js.map +0 -1
  461. package/dist/core/p-6aa8d3ce.entry.js.map +0 -1
  462. package/dist/core/p-72344764.entry.js +0 -2
  463. package/dist/core/p-72344764.entry.js.map +0 -1
  464. package/dist/core/p-7c38dd1f.entry.js +0 -2
  465. package/dist/core/p-7c38dd1f.entry.js.map +0 -1
  466. package/dist/core/p-81f60443.entry.js.map +0 -1
  467. package/dist/core/p-840c647f.entry.js +0 -2
  468. package/dist/core/p-840c647f.entry.js.map +0 -1
  469. package/dist/core/p-86989873.entry.js.map +0 -1
  470. package/dist/core/p-8b1567c9.entry.js.map +0 -1
  471. package/dist/core/p-8f45f956.entry.js.map +0 -1
  472. package/dist/core/p-9b60ca02.entry.js +0 -2
  473. package/dist/core/p-9b60ca02.entry.js.map +0 -1
  474. package/dist/core/p-a16415e4.entry.js +0 -3
  475. package/dist/core/p-a16415e4.entry.js.map +0 -1
  476. package/dist/core/p-b22fc28d.entry.js +0 -2
  477. package/dist/core/p-b22fc28d.entry.js.map +0 -1
  478. package/dist/core/p-c3f5907e.entry.js +0 -2
  479. package/dist/core/p-c3f5907e.entry.js.map +0 -1
  480. package/dist/core/p-c7f8547d.entry.js.map +0 -1
  481. package/dist/core/p-cdbbcef4.entry.js.map +0 -1
  482. package/dist/core/p-d2d17d6d.entry.js.map +0 -1
  483. package/dist/core/p-d478d13e.entry.js.map +0 -1
  484. package/dist/core/p-df029b1b.entry.js.map +0 -1
  485. package/dist/core/p-f5fd4a76.entry.js.map +0 -1
  486. /package/dist/core/{p-0301d1c8.entry.js.map → p-07075461.entry.js.map} +0 -0
  487. /package/dist/core/{p-c16e982c.entry.js.map → p-0aba9e31.entry.js.map} +0 -0
  488. /package/dist/core/{p-45076d7e.entry.js.map → p-0d7fd892.entry.js.map} +0 -0
  489. /package/dist/core/{p-ebc47282.entry.js.map → p-0da2caa2.entry.js.map} +0 -0
  490. /package/dist/core/{p-45c553db.entry.js.map → p-208f470f.entry.js.map} +0 -0
  491. /package/dist/core/{p-cf056074.entry.js.map → p-2af89564.entry.js.map} +0 -0
  492. /package/dist/core/{p-6740c915.entry.js.map → p-2ca7f050.entry.js.map} +0 -0
  493. /package/dist/core/{p-90814d32.entry.js.map → p-387b7bca.entry.js.map} +0 -0
  494. /package/dist/core/{p-8c00614c.entry.js.map → p-707ae6e9.entry.js.map} +0 -0
  495. /package/dist/core/{p-608b4912.entry.js.map → p-78a54069.entry.js.map} +0 -0
  496. /package/dist/core/{p-0d711c6a.entry.js.map → p-79949920.entry.js.map} +0 -0
  497. /package/dist/core/{p-09c31ac6.entry.js.map → p-7f279c8a.entry.js.map} +0 -0
  498. /package/dist/core/{p-656a9127.entry.js.map → p-808e1ef5.entry.js.map} +0 -0
  499. /package/dist/core/{p-ba4abeac.entry.js.map → p-85e15d01.entry.js.map} +0 -0
  500. /package/dist/core/{p-276a6c8f.entry.js.map → p-8da90b72.entry.js.map} +0 -0
  501. /package/dist/core/{p-fe0153ec.entry.js.map → p-94916588.entry.js.map} +0 -0
  502. /package/dist/core/{p-e176881a.entry.js.map → p-99687bce.entry.js.map} +0 -0
  503. /package/dist/core/{p-4e43b272.entry.js.map → p-a03bb31c.entry.js.map} +0 -0
  504. /package/dist/core/{p-b5e39585.entry.js.map → p-a3dea729.entry.js.map} +0 -0
  505. /package/dist/core/{p-93e1ba0a.entry.js.map → p-a851eb65.entry.js.map} +0 -0
  506. /package/dist/core/{p-1d8559f0.entry.js.map → p-c156e6e9.entry.js.map} +0 -0
  507. /package/dist/core/{p-e1814e7e.entry.js.map → p-cad23b7d.entry.js.map} +0 -0
  508. /package/dist/core/{p-107281c4.entry.js.map → p-d1730d4d.entry.js.map} +0 -0
  509. /package/dist/core/{p-ad5aca6f.entry.js.map → p-ea890d3d.entry.js.map} +0 -0
  510. /package/dist/core/{p-76e8df31.entry.js.map → p-f6de08fb.entry.js.map} +0 -0
  511. /package/dist/core/{p-889bb8db.entry.js.map → p-feef7c2c.entry.js.map} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ukic/web-components",
3
- "version": "3.20.0",
3
+ "version": "3.21.0",
4
4
  "description": "A web component UI library compiled with StencilJS",
5
5
  "bugs": {
6
6
  "url": "https://github.com/mi6/ic-ui-kit",
@@ -90,5 +90,5 @@
90
90
  "collection:main": "dist/collection/index.js",
91
91
  "es2015": "dist/esm/index.mjs",
92
92
  "es2017": "dist/esm/index.mjs",
93
- "gitHead": "b6107a66306f8f311475bac5418929507fcef344"
93
+ "gitHead": "7cf9b9cc592d4b73b39c8627dc462b9f7bb504a5"
94
94
  }
package/vscode-data.json CHANGED
@@ -805,6 +805,123 @@
805
805
  }
806
806
  ]
807
807
  },
808
+ {
809
+ "name": "ic-card-horizontal",
810
+ "description": {
811
+ "kind": "markdown",
812
+ "value": ""
813
+ },
814
+ "attributes": [
815
+ {
816
+ "name": "clickable",
817
+ "description": "If `true`, the horizontal card will be a clickable variant, instead of static."
818
+ },
819
+ {
820
+ "name": "density",
821
+ "description": "The padding of the horizontal card.",
822
+ "values": [
823
+ {
824
+ "name": "default"
825
+ },
826
+ {
827
+ "name": "spacious"
828
+ }
829
+ ]
830
+ },
831
+ {
832
+ "name": "disabled",
833
+ "description": "If `true`, the horizontal card will be disabled if it is clickable."
834
+ },
835
+ {
836
+ "name": "heading",
837
+ "description": "The heading for the horizontal card. This is required, unless a slotted heading is used."
838
+ },
839
+ {
840
+ "name": "href",
841
+ "description": "The URL that the clickable horizontal card link points to. If set, the clickable horizontal card will render as an \"a\" tag, otherwise it will render as a button."
842
+ },
843
+ {
844
+ "name": "hreflang",
845
+ "description": "The human language of the linked URL."
846
+ },
847
+ {
848
+ "name": "message",
849
+ "description": "The main body message of the horizontal card."
850
+ },
851
+ {
852
+ "name": "referrerpolicy",
853
+ "description": "How much of the referrer to send when following the link.",
854
+ "values": [
855
+ {
856
+ "name": "no-referrer"
857
+ },
858
+ {
859
+ "name": "no-referrer-when-downgrade"
860
+ },
861
+ {
862
+ "name": "origin"
863
+ },
864
+ {
865
+ "name": "origin-when-cross-origin"
866
+ },
867
+ {
868
+ "name": "same-origin"
869
+ },
870
+ {
871
+ "name": "strict-origin"
872
+ },
873
+ {
874
+ "name": "strict-origin-when-cross-origin"
875
+ },
876
+ {
877
+ "name": "unsafe-url"
878
+ }
879
+ ]
880
+ },
881
+ {
882
+ "name": "rel",
883
+ "description": "The relationship of the linked URL as space-separated link types."
884
+ },
885
+ {
886
+ "name": "size",
887
+ "description": "The size of the horizontal card.",
888
+ "values": [
889
+ {
890
+ "name": "large"
891
+ },
892
+ {
893
+ "name": "medium"
894
+ },
895
+ {
896
+ "name": "small"
897
+ }
898
+ ]
899
+ },
900
+ {
901
+ "name": "subheading",
902
+ "description": "The subheading for the card."
903
+ },
904
+ {
905
+ "name": "target",
906
+ "description": "The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe)."
907
+ },
908
+ {
909
+ "name": "theme",
910
+ "description": "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.",
911
+ "values": [
912
+ {
913
+ "name": "dark"
914
+ },
915
+ {
916
+ "name": "inherit"
917
+ },
918
+ {
919
+ "name": "light"
920
+ }
921
+ ]
922
+ }
923
+ ]
924
+ },
808
925
  {
809
926
  "name": "ic-card-vertical",
810
927
  "description": {
@@ -1 +0,0 @@
1
- {"version":3,"names":["icNavigationGroupCss","IcNavigationGroupStyle0","IC_NAVIGATION_ITEM","DYNAMIC_GROUPED_LINKS_HEIGHT_MS","NODE_NAME","NavigationGroup","constructor","hostRef","this","allGroupedNavigationItemHeights","collapsedNavItemsHeight","expandedNavItemsHeight","mouseGate","deviceSize","DEVICE_SIZES","XL","dropdownOpen","focusStyle","getBrandForegroundAppearance","inTopNavSideMenu","isSideNavExpanded","expandable","expanded","theme","sideNavExpandHandler","event","detail","sideNavExpanded","linkWrapper","navItemsHeight","setGroupedLinksElementHeight","setTimeout","topNavResizedHandler","size","_a","parentEl","customMobileBreakpoint","L","toggleExpanded","el","querySelectorAll","forEach","navigationItem","navItem","shadowRoot","querySelector","setAttribute","handleClick","ev","navigationType","toggleDropdown","handleBlur","contains","relatedTarget","hideDropdown","handleKeydown","key","preventDefault","handleMouseLeave","relTarget","dropdown","document","activeElement","nodeName","handleMouseEnter","addEventListener","showDropdown","renderGroupTitleText","h","id","variant","label","renderNavigationItems","class","selected","onMouseLeave","undefined","ref","height","style","setProperty","disconnectedCallback","removeEventListener","_b","componentWillLoad","getCurrentDeviceSize","navType","parent","getNavItemParentDetails","componentDidLoad","Array","from","reduce","childrenHeights","offsetHeight","childBlurHandler","handleNavigationGroupOpened","source","navItemClickHandler","brandChangeHandler","mode","setFocus","groupEl","focus","navigationGroupExpanded","emit","navigationGroupOpened","render","getExpandedClassSuffix","prop","navGroupTitleClassNames","isSideNav","isTopNav","isTopNavDesktop","ariaExpanded","Host","role","onMouseEnter","onBlur","onClick","onKeyDown","innerHTML","chevronIcon"],"sources":["src/components/ic-navigation-group/ic-navigation-group.css?tag=ic-navigation-group&encapsulation=shadow","src/components/ic-navigation-group/ic-navigation-group.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-navigation-item: z-index of navigation group item\n */\n\n:host {\n display: block;\n\n --ic-typography-color: currentcolor;\n}\n\n:host(.in-side-menu) {\n border-bottom: var(--ic-border-width) solid\n var(--ic-divider-background-monochrome);\n padding: var(--ic-space-md) 0;\n}\n\n:host .navigation-group {\n height: 100%;\n width: fit-content;\n color: var(--ic-brand-text-color);\n display: flex;\n gap: var(--ic-space-xxs);\n align-items: center;\n justify-content: center;\n padding: 0 var(--ic-space-md);\n transition: var(--ic-easing-transition-slow);\n position: relative;\n background: none;\n border: none;\n text-align: left;\n box-sizing: border-box;\n}\n\n:host .navigation-group:hover,\n:host .navigation-group:active,\n:host .selected {\n background-color: var(--ic-architectural-20);\n color: var(--ic-color-text-primary-light);\n outline: none;\n cursor: pointer;\n}\n\n:host(.in-side-menu) .navigation-group {\n min-height: 2.5rem;\n width: 100%;\n gap: 1.25rem;\n}\n\n:host(.in-side-menu) .navigation-group .ic-typography-label {\n width: 100%;\n}\n\n:host(.in-side-menu:not(.ic-navigation-group-expandable)) .navigation-group,\n:host(.in-side-menu) .navigation-group-side-menu-collapsed,\n:host(.in-side-menu) .navigation-group-side-menu-expanded {\n color: var(--ic-top-navigation-nav-group-link);\n justify-content: flex-start;\n padding: var(--ic-space-xs) var(--ic-space-md);\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded {\n margin-bottom: var(--ic-space-xs);\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-collapsed::after,\n:host(.in-side-menu) .navigation-group-side-menu-expanded::after {\n border-style: solid;\n border-width: 0.125em 0.125em 0 0;\n content: \"\";\n display: inline-block;\n min-height: 0.45em;\n position: relative;\n top: -0.1em;\n transform: rotate(135deg);\n vertical-align: top;\n min-width: 0.45em;\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded::after {\n top: 0.15em;\n transform: rotate(-45deg);\n}\n\n:host(:not(.in-side-menu)) .navigation-group:focus {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n outline: var(--ic-hc-focus-outline);\n z-index: var(--ic-z-index-navigation-item);\n transition: box-shadow var(--ic-easing-transition-fast);\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded:hover:not(:focus),\n:host(.in-side-menu) .navigation-group-side-menu-collapsed:hover:not(:focus) {\n background-color: var(--ic-top-navigation-nav-group-hover);\n cursor: pointer;\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded:active:not(:focus),\n:host(.in-side-menu) .navigation-group-side-menu-collapsed:active:not(:focus) {\n background-color: var(--ic-top-navigation-nav-group-pressed);\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded:focus,\n:host(.in-side-menu) .navigation-group-side-menu-collapsed:focus {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n outline: var(--ic-hc-focus-outline);\n background: none;\n}\n\n:host .navigation-group-dropdown {\n background-color: var(--ic-top-navigation-menu-background);\n border-bottom: var(--ic-space-1px) solid var(--ic-top-navigation-menu-border);\n position: absolute;\n left: 0;\n right: 0;\n padding: var(--ic-space-xs) var(--ic-space-md);\n box-shadow: 0 0.375rem 0.5rem -0.375rem rgba(0 0 0 / 20%);\n z-index: calc(var(--ic-z-index-navigation-item) - 1);\n}\n\n:host .navigation-group-dropdown-items-list {\n list-style: none;\n display: flex;\n flex-flow: column wrap;\n align-content: flex-start;\n padding-left: var(--ic-space-md);\n max-height: 16.5rem;\n}\n\n:host .chevron-toggle-icon-wrapper {\n display: flex;\n align-items: center;\n}\n\n:host .chevron-toggle-icon-wrapper svg {\n transform: rotate(90deg);\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n}\n\n:host .chevron-toggle-icon-closed svg {\n transform: rotate(-90deg);\n}\n\n#nav-group-title {\n text-wrap: nowrap;\n}\n\n:host(.in-side-menu) #nav-group-title {\n text-wrap: wrap;\n}\n\n:host(.ic-navigation-group-side-nav) #nav-group-title {\n text-wrap: wrap;\n}\n\n:host(.ic-navigation-group-expanded) .grouped-links-wrapper {\n height: var(--navigation-child-items-height, auto) !important;\n transition: var(--ic-easing-transition-slow);\n overflow: hidden;\n}\n\n:host(.ic-navigation-group-side-nav) .link,\n:host(.ic-navigation-group-side-nav) ::slotted(a) {\n height: var(--navigation-child-items-height, auto);\n}\n\n:host(.ic-navigation-group-collapsed) .grouped-links-wrapper {\n height: 0;\n transition: var(--ic-easing-transition-slow);\n overflow: hidden;\n}\n\n:host(.ic-navigation-group-side-nav) .navigation-group {\n min-height: var(--navigation-group-height);\n height: fit-content;\n min-width: 100%;\n width: var(--navigation-group-width, auto);\n justify-content: var(--navigation-group-justify-content);\n padding: var(--ic-space-md) var(--navigation-group-expand-toggle-padding)\n var(--ic-space-xs) var(--ic-space-md);\n}\n\n:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable))\n .navigation-group {\n padding-right: var(--ic-space-md);\n}\n\n:host(.ic-navigation-group-side-nav) .navigation-group:hover,\n:host(.ic-navigation-group-side-nav) .navigation-group:active,\n:host(.ic-navigation-group-side-nav) .selected {\n background-color: var(--navigation-group-hover);\n color: var(--navigation-group-text-hover);\n}\n\n:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable))\n .navigation-group:hover,\n:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable))\n .navigation-group:active,\n:host(.in-side-menu:not(.ic-navigation-group-expandable))\n .navigation-group:hover,\n:host(.in-side-menu:not(.ic-navigation-group-expandable))\n .navigation-group:active {\n background: none;\n cursor: auto;\n}\n\n:host(.ic-navigation-group-side-nav) .navigation-group:focus {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n background: none;\n}\n\n:host(.ic-navigation-group-side-nav) .ic-typography-caption {\n position: var(--navigation-group-title-position);\n left: var(--navigation-group-title-position-left);\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n State,\n Listen,\n h,\n Method,\n Event,\n EventEmitter,\n} from \"@stencil/core\";\n\nimport {\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getBrandForegroundAppearance,\n getNavItemParentDetails,\n} from \"../../utils/helpers\";\nimport {\n IcNavType,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundNoDefault,\n IcThemeMode,\n} from \"../../utils/types\";\n\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\nimport {\n IcNavigationExpandEventDetail,\n IcNavigationOpenEventDetail,\n} from \"./ic-navigation-group.types\";\n\nconst IC_NAVIGATION_ITEM = \"ic-navigation-item\";\nconst DYNAMIC_GROUPED_LINKS_HEIGHT_MS = 100;\nconst NODE_NAME = \"IC-NAVIGATION-GROUP\";\n\n@Component({\n tag: \"ic-navigation-group\",\n styleUrl: \"ic-navigation-group.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class NavigationGroup {\n private allGroupedNavigationItemHeights = \"\";\n private collapsedNavItemsHeight: string | null = null;\n private dropdown?: HTMLElement;\n private expandedNavItemsHeight: string | null = null;\n private groupEl?: HTMLElement;\n private mouseGate = false;\n private linkWrapper?: HTMLUListElement;\n\n @Element() el: HTMLIcNavigationGroupElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() dropdownOpen = false;\n @State() focusStyle: IcBrandForegroundNoDefault | IcBrandForeground =\n getBrandForegroundAppearance();\n @State() inTopNavSideMenu = false;\n @State() navigationType: IcNavType | \"\";\n @State() parentEl: HTMLElement | null;\n @State() isSideNavExpanded = false;\n\n /**\n * If `true`, the group will be expandable when in an ic-side-navigation component, or, when in an ic-top-navigation component, in the side menu displayed at small screen sizes.\n */\n @Prop() expandable = false;\n\n /**\n * If `true`, the expandable group will be expanded by default when in an ic-side-navigation component. To enable this prop, `expandable` must also be set to `true`.\n */\n @Prop({ mutable: true }) expanded = true;\n\n /**\n * The label to display on the group.\n */\n @Prop() label!: 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 * @internal Emitted when a navigation group is opened - when within an ic-top-navigation at large screen sizes.\n */\n @Event() navigationGroupOpened: EventEmitter<IcNavigationOpenEventDetail>;\n\n /**\n * @internal Emitted when a navigation group is expanded - when within an ic-top-navigation at small screen sizes.\n */\n @Event() navigationGroupExpanded: EventEmitter<IcNavigationExpandEventDetail>;\n\n disconnectedCallback(): void {\n if (this.navigationType === \"side\") {\n this.parentEl?.removeEventListener(\n \"icSideNavExpanded\",\n this.sideNavExpandHandler as EventListener\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl?.removeEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler as EventListener\n );\n }\n }\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n const { navType, parent } = getNavItemParentDetails(this.el);\n this.navigationType = navType;\n this.parentEl = parent;\n\n if (this.navigationType === \"side\") {\n this.parentEl?.addEventListener(\n \"icSideNavExpanded\",\n this.sideNavExpandHandler as EventListener\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl?.addEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler as EventListener\n );\n if (\n this.deviceSize <=\n (this.parentEl as HTMLIcTopNavigationElement).customMobileBreakpoint\n )\n this.inTopNavSideMenu = true;\n }\n }\n\n componentDidLoad(): void {\n this.allGroupedNavigationItemHeights = `${Array.from(\n this.el.querySelectorAll(IC_NAVIGATION_ITEM)\n ).reduce(\n (childrenHeights, { offsetHeight }) => childrenHeights + offsetHeight,\n 0\n )}px`;\n\n /**\n * debounce is required as the incorrect height was retrieved instantly after\n * componentDidLoad is invoked.\n */\n setTimeout(() => {\n if (!this.linkWrapper || !this.expanded) return;\n\n if (!this.isSideNavExpanded)\n this.collapsedNavItemsHeight = this.allGroupedNavigationItemHeights;\n else this.expandedNavItemsHeight = this.allGroupedNavigationItemHeights;\n\n this.setGroupedLinksElementHeight(this.allGroupedNavigationItemHeights);\n }, DYNAMIC_GROUPED_LINKS_HEIGHT_MS);\n }\n\n @Listen(\"childBlur\")\n childBlurHandler(): void {\n this.hideDropdown();\n }\n\n @Listen(\"navigationGroupOpened\", { target: \"document\" })\n handleNavigationGroupOpened(event: CustomEvent): void {\n if (event.detail.source !== this.el) {\n this.hideDropdown();\n }\n }\n\n @Listen(\"navItemClicked\")\n navItemClickHandler(): void {\n this.hideDropdown();\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler(ev: CustomEvent<IcBrand>): void {\n this.focusStyle = ev.detail.mode;\n }\n\n /**\n * Sets focus on the nav item.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.groupEl?.focus();\n }\n\n private sideNavExpandHandler = (event: CustomEvent) => {\n this.isSideNavExpanded = event.detail.sideNavExpanded;\n\n if (!this.linkWrapper || !this.expanded) return;\n\n const navItemsHeight = this.isSideNavExpanded\n ? this.expandedNavItemsHeight\n : this.collapsedNavItemsHeight;\n\n if (navItemsHeight) {\n this.setGroupedLinksElementHeight(navItemsHeight);\n } else {\n setTimeout(() => {\n if (this.isSideNavExpanded) {\n this.expandedNavItemsHeight = this.allGroupedNavigationItemHeights;\n } else {\n this.collapsedNavItemsHeight = this.allGroupedNavigationItemHeights;\n }\n\n this.setGroupedLinksElementHeight(this.allGroupedNavigationItemHeights);\n }, DYNAMIC_GROUPED_LINKS_HEIGHT_MS);\n }\n };\n\n private topNavResizedHandler = ({\n detail: { size },\n }: CustomEvent<{ size: number }>) => {\n if (size === this.deviceSize) return;\n\n this.deviceSize = size;\n this.inTopNavSideMenu =\n size <=\n ((this.parentEl as HTMLIcTopNavigationElement)?.customMobileBreakpoint ||\n DEVICE_SIZES.L);\n };\n\n private toggleDropdown() {\n this.dropdownOpen = !this.dropdownOpen;\n if (this.inTopNavSideMenu) {\n this.navigationGroupExpanded.emit({ expanded: this.dropdownOpen });\n }\n }\n\n private toggleExpanded = () => {\n this.expanded = !this.expanded;\n if (!this.linkWrapper) return;\n\n this.setGroupedLinksElementHeight(\n !this.expanded\n ? \"0\"\n : this.isSideNavExpanded\n ? this.expandedNavItemsHeight\n : this.collapsedNavItemsHeight\n );\n\n this.el.querySelectorAll(IC_NAVIGATION_ITEM).forEach((navigationItem) => {\n const navItem =\n navigationItem.shadowRoot?.querySelector(\"a\") ||\n navigationItem.querySelector(\"a\");\n navItem?.setAttribute(\"tabindex\", this.expanded ? \"0\" : \"-1\");\n });\n };\n\n private showDropdown() {\n if (!this.dropdownOpen) {\n this.navigationGroupOpened.emit({\n source: this.el,\n });\n\n this.toggleDropdown();\n }\n }\n\n private hideDropdown() {\n document.removeEventListener(\"keydown\", this.handleKeydown);\n if (this.dropdownOpen) {\n this.toggleDropdown();\n }\n }\n\n private handleClick = (ev: MouseEvent) => {\n if (this.navigationType === \"top\" && ev.detail) {\n this.toggleDropdown();\n } else {\n this.toggleExpanded();\n }\n };\n\n private handleBlur = (ev: FocusEvent) => {\n if (!this.el.contains(ev.relatedTarget as HTMLElement)) {\n this.hideDropdown();\n }\n };\n\n private handleKeydown = (ev: KeyboardEvent) => {\n const { key } = ev;\n if (key !== \"Enter\" && key !== \" \" && key !== \"Escape\") return;\n\n switch (this.navigationType) {\n case \"top\":\n if (key === \" \" || key === \"Enter\") {\n this.toggleDropdown();\n } else if (!this.inTopNavSideMenu) {\n this.hideDropdown();\n }\n break;\n case \"side\":\n this.toggleExpanded();\n ev.preventDefault();\n break;\n default:\n this.toggleExpanded();\n break;\n }\n };\n\n private handleMouseLeave = (ev: MouseEvent) => {\n const relTarget = ev.relatedTarget as HTMLElement;\n\n this.mouseGate = false;\n\n if (\n this.el.contains(relTarget) ||\n relTarget === this.dropdown ||\n this.el.contains(document.activeElement)\n )\n return;\n\n if (\n document.activeElement !== this.el &&\n relTarget?.nodeName === NODE_NAME &&\n this.dropdownOpen\n ) {\n this.mouseGate = true;\n this.hideDropdown();\n } else {\n this.mouseGate = false;\n setTimeout(() => {\n this.dropdownOpen ? this.hideDropdown() : null;\n }, 500);\n }\n };\n\n private handleMouseEnter = (ev: MouseEvent) => {\n const relTarget = ev.relatedTarget as HTMLElement | null;\n document.addEventListener(\"keydown\", this.handleKeydown);\n\n if (relTarget?.nodeName === NODE_NAME && this.mouseGate) {\n this.showDropdown();\n } else if (!this.dropdownOpen && !this.mouseGate) {\n this.mouseGate = true;\n setTimeout(() => {\n if (this.mouseGate) this.showDropdown();\n }, 500);\n }\n };\n\n private renderGroupTitleText = () => (\n <ic-typography\n id=\"nav-group-title\"\n variant={this.navigationType === \"side\" ? \"caption\" : \"label\"}\n >\n {this.label}\n </ic-typography>\n );\n\n private renderNavigationItems = () => {\n if (this.dropdownOpen || (this.inTopNavSideMenu && !this.expandable)) {\n return (\n <div\n class={{\n [this.inTopNavSideMenu\n ? \"navigation-group-dropdown-side-menu\"\n : \"navigation-group-dropdown\"]: true,\n selected: this.dropdownOpen && !this.inTopNavSideMenu,\n }}\n onMouseLeave={\n !this.inTopNavSideMenu ? this.handleMouseLeave : undefined\n }\n ref={(el) => (this.dropdown = el)}\n >\n <nav\n class={{\n \"navigation-group-dropdown-items\": !this.inTopNavSideMenu,\n }}\n aria-labelledby=\"nav-group-title\"\n >\n <ul>\n <slot></slot>\n </ul>\n </nav>\n </div>\n );\n }\n\n if (this.navigationType !== \"top\") {\n return (\n <ul ref={(el) => (this.linkWrapper = el)} class=\"grouped-links-wrapper\">\n <slot></slot>\n </ul>\n );\n }\n\n return null;\n };\n\n private setGroupedLinksElementHeight = (height: string | null) => {\n this.linkWrapper?.style.setProperty(\n \"--navigation-child-items-height\",\n height\n );\n };\n\n render() {\n const {\n dropdownOpen,\n expanded,\n inTopNavSideMenu,\n expandable,\n theme,\n isSideNavExpanded,\n focusStyle,\n } = this;\n\n const getExpandedClassSuffix = (prop: boolean) =>\n prop ? \"expanded\" : \"collapsed\";\n\n const navGroupTitleClassNames = {\n \"navigation-group\": true,\n [focusStyle]: !inTopNavSideMenu,\n [`navigation-group-side-menu-${getExpandedClassSuffix(dropdownOpen)}`]:\n inTopNavSideMenu && expandable,\n selected: dropdownOpen && !inTopNavSideMenu,\n };\n\n const isSideNav = this.navigationType === \"side\";\n const isTopNav = this.navigationType === \"top\";\n const isTopNavDesktop = !inTopNavSideMenu && isTopNav;\n\n const ariaExpanded = (isSideNav && expanded) || (isTopNav && dropdownOpen);\n\n return (\n <Host\n class={{\n \"in-side-menu\": inTopNavSideMenu,\n \"ic-navigation-group-expandable\": expandable,\n \"ic-navigation-group-side-nav\": isSideNav,\n [`ic-navigation-group-${getExpandedClassSuffix(expanded)}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n role=\"listitem\"\n >\n {expandable || isTopNavDesktop ? (\n <button\n onMouseEnter={isTopNavDesktop ? this.handleMouseEnter : undefined}\n onMouseLeave={isTopNav ? this.handleMouseLeave : undefined}\n onBlur={this.handleBlur}\n onClick={this.handleClick}\n onKeyDown={this.handleKeydown}\n class={navGroupTitleClassNames}\n ref={(el) => (this.groupEl = el)}\n aria-expanded={`${ariaExpanded}`}\n aria-haspopup={`${isTopNavDesktop}`}\n >\n {this.renderGroupTitleText()}\n {isSideNav && expandable && (\n <div\n class={{\n \"chevron-toggle-icon-wrapper\": true,\n \"chevron-toggle-icon-closed\": !!expanded,\n }}\n innerHTML={chevronIcon}\n ></div>\n )}\n </button>\n ) : (\n (!isSideNav || isSideNavExpanded) && (\n <div class={navGroupTitleClassNames}>\n {this.renderGroupTitleText()}\n </div>\n )\n )}\n {this.renderNavigationItems()}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,h as i,H as e,g as s}from"./p-8e4e97b4.js";import{V as o,E as r,h as a,I as l}from"./p-dbc8bf0c.js";import"./p-6215e2ae.js";const n=`<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">\n <path d="M13.0875 6.175L11.9125 5L6.91251 10L11.9125 15L13.0875 13.825L9.27084 10L13.0875 6.175Z"/>\n</svg>`;const c=`<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">\n <path d="M8.08748 5L6.91248 6.175L10.7291 10L6.91248 13.825L8.08748 15L13.0875 10L8.08748 5Z"/>\n</svg>`;const h='/*! 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{--border-bottom-color:var(--ic-architectural-300);--splitter-color:var(--ic-architectural-100);display:flex;max-width:100%}:host(.ic-horizontal-scroll-light){--splitter-color:var(--ic-color-keyline-lighten)}:host(.ic-horizontal-scroll-light) ic-button>svg{color:var(--ic-color-text-action-monochrome-dark)}:host(.ic-horizontal-scroll-dark){--splitter-color:var(--ic-color-keyline-darken)}:host(.ic-horizontal-scroll-dark) ic-button>svg{color:var(--ic-color-text-action-monochrome-light)}::slotted(*){overflow-x:scroll;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;margin:calc(var(--ic-space-xs) * -1) !important;padding:var(--ic-space-xs) !important}:host(.ic-horizontal-scroll-visible) ::slotted(*){margin:calc(var(--ic-space-xs) * -1) 0 !important;padding:var(--ic-space-xs) !important}.tabs-container::-webkit-scrollbar{display:none}.scroll-container-left,.scroll-container-right{display:flex}.scroll-container-left{margin-left:var(--ic-space-xxs)}.scroll-container-right{margin-right:var(--ic-space-xxs)}.hidden{display:none}.scroll-arrow{margin:var(--ic-space-xxs) 0}.disabled .ic-tooltip-container{display:none !important}.scroll-splitter-left,.scroll-splitter-right{display:flex;height:var(--ic-space-lg);width:var(--ic-space-1px);margin-top:var(--ic-space-xs);border-radius:var(--ic-space-1px);background-color:var(--splitter-color)}.scroll-splitter-left{margin-left:calc(var(--ic-space-xxs) - var(--ic-space-1px))}.scroll-splitter-right{margin-right:calc(var(--ic-space-xxs) - var(--ic-space-1px))}.disabled .scroll-splitter-left,.disabled .scroll-splitter-right{background-color:transparent}:host(.ic-horizontal-scroll-dark) .disabled ic-button>svg,:host(.ic-horizontal-scroll-light) .disabled ic-button>svg{color:var(--splitter-color) !important}';const d=h;const b=200;const p=class{constructor(i){t(this,i);this.buttonStateSet=false;this.firstItemVisible=true;this.itemOverflow=false;this.lastItemVisible=false;this.appearance="default";this.monochrome=false;this.theme="inherit";this.focusTrigger="focus";this.focusHandler=t=>{this.itemFocusHandler(Array.from(this.items).indexOf(t.target))};this.resizeObserverCallback=()=>{if(this.el.clientWidth>=this.itemsContainerEl.scrollWidth){this.itemOverflow=false}else{this.itemOverflow=o(this.itemsContainerEl)}if(this.itemOverflow){this.lastItemVisible=this.itemsContainerEl.offsetWidth+this.itemsContainerEl.scrollLeft>=this.itemsContainerEl.scrollWidth}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback()}));this.resizeObserver.observe(this.itemsContainerEl)};this.scrollLeft=()=>{this.scrollItemIntoView(this.getCurrentLeftItem()-1)};this.scrollRight=()=>{this.scrollItemIntoView(this.getCurrentLeftItem()+1)};this.longScrollRight=()=>{this.scrollRight();this.scrollDelay=window.setTimeout(this.longScrollRight,b)};this.longScrollLeft=()=>{this.scrollLeft();this.scrollDelay=window.setTimeout(this.longScrollLeft,b)};this.leftArrowMouseDownHandler=t=>{t.preventDefault();this.scrollDelay=window.setTimeout(this.longScrollLeft,b)};this.rightArrowMouseDownHandler=t=>{t.preventDefault();this.scrollDelay=window.setTimeout(this.longScrollRight,b)};this.arrowMouseUpHandler=()=>{window.clearTimeout(this.scrollDelay)};this.getCurrentLeftItem=()=>{const t=this.itemOffsets.findIndex((t=>t>Math.round(this.itemsContainerEl.scrollLeft)));return t<0?0:t};this.scrollHandler=()=>{window.clearTimeout(this.isScrolling);this.isScrolling=window.setTimeout(this.scrollStopped,50)};this.scrollStopped=()=>{const t=Math.round(this.itemsContainerEl.scrollLeft);if(this.buttonStateSet===false){this.firstItemVisible=t===0;this.lastItemVisible=this.itemsContainerEl.offsetWidth+t>=this.itemsContainerEl.scrollWidth}this.buttonStateSet=false}}componentWillLoad(){this.itemsContainerEl=this.el.children[0];this.itemsContainerEl.addEventListener("scroll",this.scrollHandler);this.items=r(this.itemsContainerEl);this.items.forEach((t=>{if(t.addEventListener){t.addEventListener(this.focusTrigger,this.focusHandler)}}))}componentDidLoad(){var t;let i=0;this.itemOffsets=this.items.map((t=>{i+=t.offsetWidth;return i}));a(this.runResizeObserver);const e=Array.from(((t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("div"))||[]);["mouseup","mouseleave"].forEach((t=>{e.forEach((i=>i.addEventListener(t,this.arrowMouseUpHandler)))}))}disconnectedCallback(){var t,i,e;if(this.resizeObserver!==undefined){this.resizeObserver.disconnect()}const s=Array.from(((t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("div"))||[]);["mouseup","mouseleave"].forEach((t=>{s.forEach((i=>i.removeEventListener(t,this.arrowMouseUpHandler)))}));(i=this.items)===null||i===void 0?void 0:i.forEach((t=>{if(t.removeEventListener){t.removeEventListener(this.focusTrigger,this.focusHandler)}}));(e=this.itemsContainerEl)===null||e===void 0?void 0:e.removeEventListener("scroll",this.scrollHandler)}async scrollItemIntoView(t){this.firstItemVisible=t<=0;const i=t<=0?0:this.itemOffsets[t-1];this.lastItemVisible=this.itemsContainerEl.offsetWidth+i>=this.itemsContainerEl.scrollWidth;this.buttonStateSet=true;this.itemsContainerEl.scrollLeft=i}itemFocusHandler(t){if(this.itemOverflow){this.scrollItemIntoView(t)}}render(){const{firstItemVisible:t,lastItemVisible:s,itemOverflow:o}=this;return i(e,{key:"329d00bc4e7ebfab434cb41dd32e919820c5adb5",class:{["ic-horizontal-scroll-visible"]:o,["ic-horizontal-scroll-dark"]:this.appearance===l.Dark,["ic-horizontal-scroll-light"]:this.appearance===l.Light,[`ic-theme-${this.theme}`]:this.theme!=="inherit"}},i("div",{key:"ed231bf1fcd68399e29e790026b377bf8f96a14e","aria-hidden":"true",class:{["scroll-container-left"]:true,["hidden"]:!o,["disabled"]:t},role:"tab"},i("ic-button",{key:"c34f45cb44e242939985f792a21e482a11078fba",class:"scroll-arrow",variant:"icon-tertiary","aria-label":"Scroll left",theme:this.theme==="light"||this.theme==="inherit"?"dark":"light",monochrome:this.monochrome,innerHTML:n,disabled:t,tabindex:"-1",onClick:this.scrollLeft,onMouseDown:this.leftArrowMouseDownHandler}),i("span",{key:"c5b52e4cfa655f8dc499e69da531870f4e4fe216",class:"scroll-splitter-left"})),i("slot",{key:"8478dc63668ed2e842182c47e9a3b27b77ac642f"}),i("div",{key:"b9b0e21e69a40f7afda403db3db8b983257240c0","aria-hidden":"true",class:{["scroll-container-right"]:true,["hidden"]:!o,["disabled"]:s},role:"tab"},i("span",{key:"909936dddf54502bb1bdc3fdfdf36d59b5582238",class:"scroll-splitter-right"}),i("ic-button",{key:"4e9093a9da1b3e387933dfc2495f1279bb7ad180",class:"scroll-arrow",variant:"icon-tertiary","aria-label":"Scroll right",theme:this.theme==="light"||this.theme==="inherit"?"dark":"light",monochrome:this.monochrome,innerHTML:c,disabled:s,tabindex:"-1",onClick:this.scrollRight,onMouseDown:this.rightArrowMouseDownHandler})))}get el(){return s(this)}};p.style=d;export{p as ic_horizontal_scroll};
2
- //# sourceMappingURL=p-0f6fd5d3.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icHorizontalScrollCss","IcHorizontalScrollStyle0","SCROLL_DELAY_MS","HorizontalScroll","constructor","hostRef","this","buttonStateSet","firstItemVisible","itemOverflow","lastItemVisible","appearance","monochrome","theme","focusTrigger","focusHandler","event","itemFocusHandler","Array","from","items","indexOf","target","resizeObserverCallback","el","clientWidth","itemsContainerEl","scrollWidth","elementOverflowsX","offsetWidth","scrollLeft","runResizeObserver","resizeObserver","ResizeObserver","observe","scrollItemIntoView","getCurrentLeftItem","scrollRight","longScrollRight","scrollDelay","window","setTimeout","longScrollLeft","leftArrowMouseDownHandler","e","preventDefault","rightArrowMouseDownHandler","arrowMouseUpHandler","clearTimeout","index","itemOffsets","findIndex","Math","round","scrollHandler","isScrolling","scrollStopped","componentWillLoad","children","addEventListener","getSlotElements","forEach","item","componentDidLoad","runningTotal","map","checkResizeObserver","scrollArrows","_a","shadowRoot","querySelectorAll","arrow","disconnectedCallback","undefined","disconnect","removeEventListener","_b","_c","itemPosition","newScrollPos","render","h","Host","key","class","IcBrandForegroundEnum","Dark","Light","role","variant","innerHTML","LeftArrow","disabled","tabindex","onClick","onMouseDown","RightArrow"],"sources":["src/components/ic-horizontal-scroll/ic-horizontal-scroll.css?tag=ic-horizontal-scroll&encapsulation=shadow","src/components/ic-horizontal-scroll/ic-horizontal-scroll.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n --border-bottom-color: var(--ic-architectural-300);\n --splitter-color: var(--ic-architectural-100);\n\n display: flex;\n max-width: 100%;\n}\n\n:host(.ic-horizontal-scroll-light) {\n --splitter-color: var(--ic-color-keyline-lighten);\n}\n\n:host(.ic-horizontal-scroll-light) ic-button > svg {\n color: var(--ic-color-text-action-monochrome-dark);\n}\n\n:host(.ic-horizontal-scroll-dark) {\n --splitter-color: var(--ic-color-keyline-darken);\n}\n\n:host(.ic-horizontal-scroll-dark) ic-button > svg {\n color: var(--ic-color-text-action-monochrome-light);\n}\n\n/* Slotted items container element */\n::slotted(*) {\n overflow-x: scroll;\n overflow-y: hidden;\n scroll-behavior: smooth;\n scrollbar-width: none;\n -ms-overflow-style: none;\n margin: calc(var(--ic-space-xs) * -1) !important;\n padding: var(--ic-space-xs) !important;\n}\n\n:host(.ic-horizontal-scroll-visible) ::slotted(*) {\n margin: calc(var(--ic-space-xs) * -1) 0 !important;\n padding: var(--ic-space-xs) !important;\n}\n\n.tabs-container::-webkit-scrollbar {\n display: none;\n}\n\n.scroll-container-left,\n.scroll-container-right {\n display: flex;\n}\n\n.scroll-container-left {\n margin-left: var(--ic-space-xxs);\n}\n\n.scroll-container-right {\n margin-right: var(--ic-space-xxs);\n}\n\n.hidden {\n display: none;\n}\n\n.scroll-arrow {\n margin: var(--ic-space-xxs) 0;\n}\n\n.disabled .ic-tooltip-container {\n display: none !important;\n}\n\n.scroll-splitter-left,\n.scroll-splitter-right {\n display: flex;\n height: var(--ic-space-lg);\n width: var(--ic-space-1px);\n margin-top: var(--ic-space-xs);\n border-radius: var(--ic-space-1px);\n background-color: var(--splitter-color);\n}\n\n.scroll-splitter-left {\n margin-left: calc(var(--ic-space-xxs) - var(--ic-space-1px));\n}\n\n.scroll-splitter-right {\n margin-right: calc(var(--ic-space-xxs) - var(--ic-space-1px));\n}\n\n.disabled .scroll-splitter-left,\n.disabled .scroll-splitter-right {\n background-color: transparent;\n}\n\n:host(.ic-horizontal-scroll-dark) .disabled ic-button > svg,\n:host(.ic-horizontal-scroll-light) .disabled ic-button > svg {\n color: var(--splitter-color) !important;\n}\n","import {\n Component,\n Element,\n h,\n Host,\n State,\n Method,\n Prop,\n} from \"@stencil/core\";\n\nimport LeftArrow from \"./assets/left-arrow.svg\";\nimport RightArrow from \"./assets/right-arrow.svg\";\nimport { getSlotElements } from \"../../utils/helpers\";\n\nimport { checkResizeObserver, elementOverflowsX } from \"../../utils/helpers\";\nimport {\n IcBrandForeground,\n IcBrandForegroundEnum,\n IcThemeMode,\n} from \"../../utils/types\";\n\nconst SCROLL_DELAY_MS = 200;\n\n@Component({\n tag: \"ic-horizontal-scroll\",\n styleUrl: \"./ic-horizontal-scroll.css\",\n shadow: true,\n})\nexport class HorizontalScroll {\n private buttonStateSet: boolean = false;\n private isScrolling: number;\n private itemOffsets: number[];\n private items: HTMLElement[];\n private itemsContainerEl: HTMLElement;\n private resizeObserver: ResizeObserver;\n private scrollDelay: number;\n\n @Element() el: HTMLIcHorizontalScrollElement;\n\n @State() firstItemVisible: boolean = true;\n @State() itemOverflow: boolean = false;\n @State() lastItemVisible: boolean = false;\n\n /**\n * The appearance of the horizontal scroll, e.g. dark, light or the default.\n */\n @Prop() appearance?: IcBrandForeground = \"default\";\n\n /** @internal Determines whether black variant of the tabs should be displayed. */\n @Prop() monochrome?: boolean = false;\n\n /**\n * @internal 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 * @internal The name of the event that triggers focus handler logic.\n */\n @Prop() focusTrigger?: string = \"focus\";\n\n componentWillLoad(): void {\n this.itemsContainerEl = this.el.children[0] as HTMLElement;\n this.itemsContainerEl.addEventListener(\"scroll\", this.scrollHandler);\n this.items = getSlotElements(this.itemsContainerEl) as HTMLElement[];\n this.items.forEach((item) => {\n if (item.addEventListener) {\n item.addEventListener(\n this.focusTrigger as keyof HTMLElementEventMap,\n this.focusHandler\n );\n }\n });\n }\n\n componentDidLoad(): void {\n let runningTotal = 0;\n this.itemOffsets = this.items.map((item) => {\n runningTotal += item.offsetWidth;\n return runningTotal;\n });\n\n checkResizeObserver(this.runResizeObserver);\n\n // Add event listener to scroll containers as mouse events are not fired on disabled elements (ic-button's <button>)\n // 'mouseleave' needed in case the user moves their mouse while holding the arrow buttons\n // - 'mouseup' otherwise not detected and scrolling not stopped\n const scrollArrows = Array.from(\n this.el.shadowRoot?.querySelectorAll(\"div\") || []\n ) as HTMLElement[];\n [\"mouseup\", \"mouseleave\"].forEach((event) => {\n scrollArrows.forEach((arrow) =>\n arrow.addEventListener(event, this.arrowMouseUpHandler)\n );\n });\n }\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== undefined) {\n this.resizeObserver.disconnect();\n }\n\n const scrollArrows = Array.from(\n this.el.shadowRoot?.querySelectorAll(\"div\") || []\n ) as HTMLElement[];\n [\"mouseup\", \"mouseleave\"].forEach((event) => {\n scrollArrows.forEach((arrow) =>\n arrow.removeEventListener(event, this.arrowMouseUpHandler)\n );\n });\n\n this.items?.forEach((item) => {\n if (item.removeEventListener) {\n item.removeEventListener(\n this.focusTrigger as keyof HTMLElementEventMap,\n this.focusHandler\n );\n }\n });\n\n this.itemsContainerEl?.removeEventListener(\"scroll\", this.scrollHandler);\n }\n\n /**\n * @internal if side scrolling enabled, scrolls the specified item into view.\n */\n @Method()\n async scrollItemIntoView(itemPosition: number): Promise<void> {\n this.firstItemVisible = itemPosition <= 0;\n const newScrollPos =\n itemPosition <= 0 ? 0 : this.itemOffsets[itemPosition - 1];\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + newScrollPos >=\n this.itemsContainerEl.scrollWidth;\n this.buttonStateSet = true;\n this.itemsContainerEl.scrollLeft = newScrollPos;\n }\n\n private focusHandler = (event: Event) => {\n this.itemFocusHandler(\n Array.from(this.items).indexOf(event.target as HTMLElement)\n );\n };\n\n private itemFocusHandler(itemPosition: number): void {\n if (this.itemOverflow) {\n this.scrollItemIntoView(itemPosition);\n }\n }\n\n private resizeObserverCallback = () => {\n if (this.el.clientWidth >= this.itemsContainerEl.scrollWidth) {\n this.itemOverflow = false;\n } else {\n this.itemOverflow = elementOverflowsX(this.itemsContainerEl);\n }\n\n if (this.itemOverflow) {\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + this.itemsContainerEl.scrollLeft >=\n this.itemsContainerEl.scrollWidth;\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.resizeObserverCallback();\n });\n this.resizeObserver.observe(this.itemsContainerEl);\n };\n\n private scrollLeft = () => {\n this.scrollItemIntoView(this.getCurrentLeftItem() - 1);\n };\n\n private scrollRight = () => {\n this.scrollItemIntoView(this.getCurrentLeftItem() + 1);\n };\n\n private longScrollRight = () => {\n this.scrollRight();\n this.scrollDelay = window.setTimeout(this.longScrollRight, SCROLL_DELAY_MS);\n };\n\n private longScrollLeft = () => {\n this.scrollLeft();\n this.scrollDelay = window.setTimeout(this.longScrollLeft, SCROLL_DELAY_MS);\n };\n\n private leftArrowMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n this.scrollDelay = window.setTimeout(this.longScrollLeft, SCROLL_DELAY_MS);\n };\n\n private rightArrowMouseDownHandler = (e: MouseEvent) => {\n e.preventDefault();\n this.scrollDelay = window.setTimeout(this.longScrollRight, SCROLL_DELAY_MS);\n };\n\n private arrowMouseUpHandler = () => {\n window.clearTimeout(this.scrollDelay);\n };\n\n private getCurrentLeftItem = (): number => {\n const index = this.itemOffsets.findIndex(\n (el) => el > Math.round(this.itemsContainerEl.scrollLeft)\n );\n return index < 0 ? 0 : index;\n };\n\n private scrollHandler = () => {\n window.clearTimeout(this.isScrolling);\n // Set a timeout to run after scrolling ends\n this.isScrolling = window.setTimeout(this.scrollStopped, 50);\n };\n\n private scrollStopped = () => {\n // If scrollItemIntoView has been called, the button states will already be set\n // Can't just handle it here as it causes strange jumping behaviour in positioning\n const scrollLeft = Math.round(this.itemsContainerEl.scrollLeft);\n if (this.buttonStateSet === false) {\n this.firstItemVisible = scrollLeft === 0;\n this.lastItemVisible =\n this.itemsContainerEl.offsetWidth + scrollLeft >=\n this.itemsContainerEl.scrollWidth;\n }\n this.buttonStateSet = false;\n };\n\n render() {\n const { firstItemVisible, lastItemVisible, itemOverflow } = this;\n\n return (\n <Host\n class={{\n [\"ic-horizontal-scroll-visible\"]: itemOverflow,\n [\"ic-horizontal-scroll-dark\"]:\n this.appearance === IcBrandForegroundEnum.Dark,\n [\"ic-horizontal-scroll-light\"]:\n this.appearance === IcBrandForegroundEnum.Light,\n [`ic-theme-${this.theme}`]: this.theme !== \"inherit\",\n }}\n >\n <div\n aria-hidden=\"true\"\n class={{\n [\"scroll-container-left\"]: true,\n [\"hidden\"]: !itemOverflow,\n [\"disabled\"]: firstItemVisible,\n }}\n role=\"tab\"\n >\n <ic-button\n class=\"scroll-arrow\"\n variant=\"icon-tertiary\"\n aria-label=\"Scroll left\"\n theme={\n this.theme === \"light\" || this.theme === \"inherit\"\n ? \"dark\"\n : \"light\"\n }\n monochrome={this.monochrome}\n innerHTML={LeftArrow}\n disabled={firstItemVisible}\n tabindex=\"-1\"\n onClick={this.scrollLeft}\n onMouseDown={this.leftArrowMouseDownHandler}\n ></ic-button>\n <span class=\"scroll-splitter-left\"></span>\n </div>\n <slot></slot>\n <div\n aria-hidden=\"true\"\n class={{\n [\"scroll-container-right\"]: true,\n [\"hidden\"]: !itemOverflow,\n [\"disabled\"]: lastItemVisible,\n }}\n role=\"tab\"\n >\n <span class=\"scroll-splitter-right\"></span>\n <ic-button\n class=\"scroll-arrow\"\n variant=\"icon-tertiary\"\n aria-label=\"Scroll right\"\n theme={\n this.theme === \"light\" || this.theme === \"inherit\"\n ? \"dark\"\n : \"light\"\n }\n monochrome={this.monochrome}\n innerHTML={RightArrow}\n disabled={lastItemVisible}\n tabindex=\"-1\"\n onClick={this.scrollRight}\n onMouseDown={this.rightArrowMouseDownHandler}\n ></ic-button>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["icPaginationItemCss","IcPaginationItemStyle0","PaginationItem","constructor","hostRef","this","disabled","label","monochrome","selected","theme","handleClick","paginationItemClick","emit","page","watchDisabledHandler","removeDisabledFalse","el","watchLabelHandler","capitalizedLabel","capitalize","componentWillLoad","render","type","h","key","class","variant","onClick","tabindex","role"],"sources":["src/components/ic-pagination-item/ic-pagination-item.css?tag=ic-pagination-item&encapsulation=shadow","src/components/ic-pagination-item/ic-pagination-item.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\na {\n text-align: center;\n}\n\n.item-container {\n display: flex;\n justify-content: center;\n align-items: center;\n width: calc(var(--ic-space-xl) + var(--ic-space-sm));\n height: var(--ic-space-xl);\n margin: var(--ic-space-xxs) var(--ic-space-xxxs);\n cursor: pointer;\n text-decoration: none;\n}\n\nbutton {\n background: none;\n border: none;\n outline: inherit;\n position: relative;\n}\n\n.ellipsis {\n pointer-events: none;\n\n --ic-typography-color: var(--ic-pagination-ellipsis);\n}\n\n.monochrome .ellipsis {\n --ic-typography-color: var(--ic-pagination-ellipsis-monochrome);\n}\n\n.item-container:focus {\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-easing-transition-fast);\n}\n\n.page {\n --ic-typography-color: var(--ic-pagination-page-number);\n}\n\n.monochrome .page {\n --ic-typography-color: var(--ic-pagination-page-number-monochrome);\n}\n\n.simple-current {\n min-width: calc(var(--ic-space-xxl) + var(--ic-space-md));\n height: var(--ic-space-lg);\n cursor: default;\n}\n\n/** DEFAULT STATES **/\n.item-container.page:hover:not(.selected):not(:focus) {\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-pagination-hover);\n}\n\n.item-container.page:active:not(.selected):not(:focus) {\n background-color: var(--ic-pagination-pressed);\n}\n\n.monochrome .item-container.page:hover:not(.selected):not(:focus) {\n background-color: var(--ic-pagination-hover-monochrome);\n}\n\n.monochrome .item-container.page:active:not(.selected):not(:focus) {\n background-color: var(--ic-pagination-pressed-monochrome);\n}\n\n.selected {\n pointer-events: none;\n outline: none;\n}\n\n.selected::after {\n content: \"\";\n height: var(--ic-space-xxs);\n width: 100%;\n position: absolute;\n bottom: 0;\n background-color: var(--ic-pagination-selected-banner);\n}\n\n.monochrome .selected::after {\n background-color: var(--ic-pagination-selected-banner-monochrome);\n}\n\n.page-selected {\n --ic-typography-color: var(--ic-pagination-text);\n}\n\n/** LIGHT STATES **/\n.item-container.page.light:hover:not(.selected):not(:focus) {\n background-color: var(--ic-action-light-bg-hover);\n}\n\n.item-container.page.light:active:not(.selected):not(:focus) {\n background-color: var(--ic-action-light-bg-pressed);\n}\n\nic-typography.light,\nic-typography.page-selected.light {\n --ic-typography-color: var(--ic-architectural-white);\n}\n\n.selected.light::after {\n content: \"\";\n height: var(--ic-space-xxs);\n width: 100%;\n position: absolute;\n bottom: 0;\n background-color: var(--ic-action-monochrome);\n}\n\n/** DARK STATES **/\n.item-container.page.dark:hover:not(.selected):not(:focus) {\n background-color: var(--ic-action-dark-bg-hover);\n}\n\n.item-container.page.dark:active:not(.selected):not(:focus) {\n background-color: var(--ic-action-dark-bg-pressed);\n}\n\nic-typography.dark {\n --ic-typography-color: var(--ic-color-text-primary);\n}\n\n.selected.dark::after {\n content: \"\";\n height: var(--ic-space-xxs);\n width: 100%;\n position: absolute;\n bottom: 0;\n background-color: var(--ic-action-monochrome-dark);\n}\n\n.disabled {\n --ic-typography-color: var(--ic-pagination-text-disabled);\n\n pointer-events: none;\n cursor: none;\n user-select: none;\n}\n\n.disabled.page ic-typography {\n --ic-typography-color: var(--ic-pagination-page-number-disabled);\n}\n\n.disabled.ellipsis {\n --ic-typography-color: var(--ic-pagination-ellipsis-disabled);\n}\n\n.monochrome .disabled.page {\n --ic-typography-color: var(--ic-pagination-page-number-monochrome-disabled);\n}\n\n.monochrome .disabled.ellipsis {\n --ic-typography-color: var(--ic-pagination-ellipsis-monochrome-disabled);\n}\n\n@media (forced-colors: active) {\n .selected::after {\n background-color: Highlight;\n }\n\n .selected.light::after {\n background-color: Highlight;\n }\n\n .selected.dark::after {\n background-color: Highlight;\n }\n\n .disabled {\n --ic-typography-color: GrayText;\n }\n}\n","import {\n Component,\n Prop,\n State,\n Element,\n h,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\nimport { IcPaginationItemType } from \"./ic-pagination-item.types\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport { removeDisabledFalse, capitalize } from \"../../utils/helpers\";\n\n@Component({\n tag: \"ic-pagination-item\",\n styleUrl: \"ic-pagination-item.css\",\n shadow: true,\n})\nexport class PaginationItem {\n @Element() el: HTMLIcPaginationItemElement;\n\n @State() capitalizedLabel: string;\n\n /**\n * If `true`, the pagination item will be disabled.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The label for the pagination item (applicable when simple pagination is being used).\n */\n @Prop() label?: string = \"Page\";\n\n @Watch(\"label\")\n watchLabelHandler(): void {\n this.capitalizedLabel = capitalize(this.label!);\n }\n\n /**\n * If `true`, the pagination item will display as black in the light theme, and white in dark theme.\n */\n @Prop() monochrome?: boolean = false;\n\n /**\n * The current page number.\n */\n @Prop() page?: number;\n\n /**\n * If `true`, the pagination item will be selected.\n */\n @Prop() selected: boolean = false;\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 * The type of pagination item - 'page' or 'ellipsis'.\n */\n @Prop() type: IcPaginationItemType;\n\n /**\n * @internal - Emitted when a pagination item is clicked.\n */\n @Event() paginationItemClick: EventEmitter<{ page: number | null }>;\n\n componentWillLoad(): void {\n this.watchLabelHandler();\n removeDisabledFalse(this.disabled, this.el);\n }\n\n private handleClick = () => {\n this.paginationItemClick.emit({ page: this.page || null });\n };\n\n render() {\n const {\n page,\n selected,\n type,\n disabled,\n label,\n capitalizedLabel,\n monochrome,\n } = this;\n\n return (\n <a class={{ [\"monochrome\"]: !!monochrome }}>\n {type === \"ellipsis\" ? (\n <div\n class={{\n [\"item-container\"]: true,\n [\"ellipsis\"]: true,\n [\"disabled\"]: !!disabled,\n }}\n >\n <ic-typography variant=\"label\">...</ic-typography>\n </div>\n ) : type === \"page\" ? (\n <button\n disabled={disabled}\n onClick={this.handleClick}\n tabindex={selected ? \"-1\" : \"0\"}\n role=\"button\"\n aria-current={selected && \"page\"}\n aria-label={\n selected ? `${label}: ${page}` : `Go to ${label} ${page}`\n }\n class={{\n [\"selected\"]: !disabled && selected,\n [\"disabled\"]: !!disabled,\n [\"item-container\"]: true,\n [\"page\"]: type === \"page\",\n }}\n >\n <ic-typography\n variant=\"label\"\n class={{\n [\"page-selected\"]: selected,\n [\"disabled\"]: !!disabled,\n }}\n >\n {page}\n </ic-typography>\n </button>\n ) : (\n <ic-typography\n aria-live=\"polite\"\n class={{\n [`simple-current`]: true,\n [\"disabled\"]: !!disabled,\n }}\n variant=\"label\"\n >\n {capitalizedLabel} {page}\n </ic-typography>\n )}\n </a>\n );\n }\n}\n"],"mappings":"4HAAA,MAAMA,EAAsB,yrLAC5B,MAAAC,EAAeD,E,MCkBFE,EAAc,MAL3B,WAAAC,CAAAC,G,mEAaUC,KAAAC,SAAqB,MASrBD,KAAAE,MAAiB,OAUjBF,KAAAG,WAAuB,MAUvBH,KAAAI,SAAoB,MAKpBJ,KAAAK,MAAsB,UAiBtBL,KAAAM,YAAc,KACpBN,KAAKO,oBAAoBC,KAAK,CAAEC,KAAMT,KAAKS,MAAQ,MAAO,C,CAlD5D,oBAAAC,GACEC,EAAoBX,KAAKC,SAAUD,KAAKY,G,CAS1C,iBAAAC,GACEb,KAAKc,iBAAmBC,EAAWf,KAAKE,M,CAiC1C,iBAAAc,GACEhB,KAAKa,oBACLF,EAAoBX,KAAKC,SAAUD,KAAKY,G,CAO1C,MAAAK,GACE,MAAMR,KACJA,EAAIL,SACJA,EAAQc,KACRA,EAAIjB,SACJA,EAAQC,MACRA,EAAKY,iBACLA,EAAgBX,WAChBA,GACEH,KAEJ,OACEmB,EAAA,KAAAC,IAAA,2CAAGC,MAAO,CAAE,CAAC,gBAAiBlB,IAC3Be,IAAS,WACRC,EAAA,OACEE,MAAO,CACL,CAAC,kBAAmB,KACpB,CAAC,YAAa,KACd,CAAC,cAAepB,IAGlBkB,EAAA,iBAAeG,QAAQ,SAAO,QAE9BJ,IAAS,OACXC,EAAA,UACElB,SAAUA,EACVsB,QAASvB,KAAKM,YACdkB,SAAUpB,EAAW,KAAO,IAC5BqB,KAAK,SAAQ,eACCrB,GAAY,OAAM,aAE9BA,EAAW,GAAGF,MAAUO,IAAS,SAASP,KAASO,IAErDY,MAAO,CACL,CAAC,aAAcpB,GAAYG,EAC3B,CAAC,cAAeH,EAChB,CAAC,kBAAmB,KACpB,CAAC,QAASiB,IAAS,SAGrBC,EAAA,iBACEG,QAAQ,QACRD,MAAO,CACL,CAAC,iBAAkBjB,EACnB,CAAC,cAAeH,IAGjBQ,IAILU,EAAA,6BACY,SACVE,MAAO,CACL,CAAC,kBAAmB,KACpB,CAAC,cAAepB,GAElBqB,QAAQ,SAEPR,EAAgB,IAAGL,G","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["icFooterLinkCss","IcFooterLinkStyle0","FooterLink","constructor","hostRef","this","deviceSize","DEVICE_SIZES","XL","footerConfig","small","grouped","foregroundColor","getBrandForegroundAppearance","download","componentWillLoad","inferConfig","el","footerResizeHandler","footerBrandChangeHandler","ev","detail","mode","e","parentElement","classList","contains","render","href","hreflang","referrerpolicy","rel","target","isLogoLink","closest","h","Host","key","class","role","undefined"],"sources":["src/components/ic-footer-link/ic-footer-link.css?tag=ic-footer-link&encapsulation=shadow","src/components/ic-footer-link/ic-footer-link.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host(.footer-link-ungrouped-sparse) {\n --footer-link-margin-left: 0;\n --footer-link-margin-right: 2.5rem;\n --footer-link-margin-bottom: 0;\n}\n\n:host(.footer-link-ungrouped-small) {\n --footer-link-margin-left: 0;\n --footer-link-margin-right: 0;\n --footer-link-margin-bottom: var(--ic-space-md);\n}\n\n:host(.footer-link-grouped-sparse) {\n --footer-link-margin-left: 0;\n --footer-link-margin-right: 0;\n --footer-link-margin-bottom: var(--ic-space-md);\n}\n\n:host(.footer-link-grouped-small) {\n --footer-link-margin-left: var(--ic-space-md);\n --footer-link-margin-right: 0;\n --footer-link-margin-bottom: var(--ic-space-md);\n}\n\n:host(.footer-link) {\n margin-left: var(--footer-link-margin-left);\n margin-right: var(--footer-link-margin-right);\n margin-bottom: var(--footer-link-margin-bottom);\n}\n\n.ic-link-open-in-new-icon {\n vertical-align: middle;\n margin-left: var(--ic-space-xxs);\n}\n\n.ic-link > .ic-link-open-in-new-icon {\n fill: var(--ic-color-hyperlink-default);\n}\n\n.ic-link-open-in-new-icon > svg {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n fill: currentcolor;\n}\n\n.ic-link:visited > .ic-link-open-in-new-icon {\n fill: var(--ic-color-hyperlink-visited);\n}\n\n.ic-link.light:visited > .ic-link-open-in-new-icon {\n fill: var(--ic-color-hyperlink-contrast-visited);\n}\n\n:host(.breadcrumb-link) .ic-link {\n display: var(--breadcrumb-link-display);\n align-items: var(--breadcrumb-link-align-items);\n gap: var(--breadcrumb-link-gap);\n}\n\n:host(.breadcrumb-link) .ic-link ::slotted(.back-icon) {\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n}\n\n:host(.breadcrumb-link.current-page) a,\n:host(.breadcrumb-link.current-page) ::slotted(a) {\n font-weight: normal;\n color: inherit;\n text-decoration: none;\n display: flex;\n align-items: center;\n}\n\n:host(.breadcrumb-link.current-page) .ic-link,\n:host(.breadcrumb-link.current-page) ::slotted(a:focus) {\n outline: var(--ic-hc-focus-outline);\n text-decoration: none;\n}\n\n:host(.breadcrumb-link.current-page) .ic-link:visited {\n color: var(--ic-color-text-primary);\n}\n\n:host(.footer-link-light) ::part(link),\n:host(.footer-link-dark) ::part(link) {\n color: var(--ic-footer-link);\n}\n\n:host(.footer-link-light) ::slotted(svg),\n:host(.footer-link-dark) ::slotted(svg) {\n fill: var(--ic-footer-logo);\n}\n\n:host(.footer-logo-link) {\n transition: var(--ic-easing-transition-fast);\n}\n\n:host(.footer-logo-link:hover) {\n background-color: var(--ic-footer-hover);\n}\n\n:host(.footer-logo-link:active) {\n background-color: var(--ic-footer-pressed);\n}\n\n:host(.footer-logo-link:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n outline: var(--ic-hc-focus-outline);\n}\n\n@media (forced-colors: active) {\n :host(.footer-link-light) ::slotted(svg),\n :host(.footer-link-dark) ::slotted(svg) {\n fill: currentcolor;\n }\n}\n","import {\n Component,\n Element,\n Host,\n Listen,\n Prop,\n h,\n State,\n} from \"@stencil/core\";\nimport {\n DEVICE_SIZES,\n getBrandForegroundAppearance,\n} from \"../../utils/helpers\";\nimport { IcBrand, IcBrandForeground } from \"../../utils/types\";\n\ntype FooterConfig = { small: boolean; grouped: boolean };\n\n@Component({\n tag: \"ic-footer-link\",\n styleUrl: \"ic-footer-link.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class FooterLink {\n @Element() el: HTMLIcFooterLinkElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() footerConfig: FooterConfig = { small: false, grouped: false };\n @State() foregroundColor: IcBrandForeground = getBrandForegroundAppearance();\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download?: string | boolean = false;\n\n /**\n * The URL that the link points to.\n */\n @Prop() href?: string;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\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 * 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 componentWillLoad(): void {\n this.footerConfig = this.inferConfig(this.el);\n }\n\n @Listen(\"footerResized\", { target: \"document\" })\n footerResizeHandler(): void {\n this.footerConfig = this.inferConfig(this.el);\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n footerBrandChangeHandler(ev: CustomEvent<IcBrand>): void {\n this.foregroundColor = ev.detail.mode;\n }\n\n private inferConfig(e: HTMLElement): FooterConfig {\n if (e.parentElement !== null) {\n if (e.parentElement.classList.contains(\"ic-footer\")) {\n return {\n small: e.parentElement.classList.contains(\"ic-footer-small\"),\n grouped: e.parentElement.classList.contains(\"ic-footer-grouped\"),\n };\n } else {\n return this.inferConfig(e.parentElement);\n }\n } else {\n return { small: false, grouped: false };\n }\n }\n\n render() {\n const {\n footerConfig,\n href,\n hreflang,\n referrerpolicy,\n rel,\n target,\n download,\n } = this;\n const { small, grouped } = footerConfig;\n\n const isLogoLink = !!this.el.closest(\"div[slot='logo']\");\n\n return (\n <Host\n class={{\n \"footer-link\": true,\n [`footer-link-${grouped ? \"grouped\" : \"ungrouped\"}-${\n small ? \"small\" : \"sparse\"\n }`]: true,\n [`footer-link-${this.foregroundColor}`]: true,\n \"footer-logo-link\": isLogoLink,\n }}\n role=\"listitem\"\n >\n <ic-link\n class=\"footer-link\"\n href={href}\n hreflang={hreflang}\n referrerpolicy={referrerpolicy}\n rel={rel}\n download={download !== false ? download : undefined}\n target={target}\n >\n <slot />\n </ic-link>\n </Host>\n );\n }\n}\n"],"mappings":"4HAAA,MAAMA,EAAkB,g0JACxB,MAAAC,EAAeD,E,MCuBFE,EAAU,MAPvB,WAAAC,CAAAC,G,UAUWC,KAAAC,WAAqBC,EAAaC,GAClCH,KAAAI,aAA6B,CAAEC,MAAO,MAAOC,QAAS,OACtDN,KAAAO,gBAAqCC,IAKtCR,KAAAS,SAA8B,K,CA2BtC,iBAAAC,GACEV,KAAKI,aAAeJ,KAAKW,YAAYX,KAAKY,G,CAI5C,mBAAAC,GACEb,KAAKI,aAAeJ,KAAKW,YAAYX,KAAKY,G,CAI5C,wBAAAE,CAAyBC,GACvBf,KAAKO,gBAAkBQ,EAAGC,OAAOC,I,CAG3B,WAAAN,CAAYO,GAClB,GAAIA,EAAEC,gBAAkB,KAAM,CAC5B,GAAID,EAAEC,cAAcC,UAAUC,SAAS,aAAc,CACnD,MAAO,CACLhB,MAAOa,EAAEC,cAAcC,UAAUC,SAAS,mBAC1Cf,QAASY,EAAEC,cAAcC,UAAUC,SAAS,qB,KAEzC,CACL,OAAOrB,KAAKW,YAAYO,EAAEC,c,MAEvB,CACL,MAAO,CAAEd,MAAO,MAAOC,QAAS,M,EAIpC,MAAAgB,GACE,MAAMlB,aACJA,EAAYmB,KACZA,EAAIC,SACJA,EAAQC,eACRA,EAAcC,IACdA,EAAGC,OACHA,EAAMlB,SACNA,GACET,KACJ,MAAMK,MAAEA,EAAKC,QAAEA,GAAYF,EAE3B,MAAMwB,IAAe5B,KAAKY,GAAGiB,QAAQ,oBAErC,OACEC,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACL,cAAe,KACf,CAAC,eAAe3B,EAAU,UAAY,eACpCD,EAAQ,QAAU,YACf,KACL,CAAC,eAAeL,KAAKO,mBAAoB,KACzC,mBAAoBqB,GAEtBM,KAAK,YAELJ,EAAA,WAAAE,IAAA,2CACEC,MAAM,cACNV,KAAMA,EACNC,SAAUA,EACVC,eAAgBA,EAChBC,IAAKA,EACLjB,SAAUA,IAAa,MAAQA,EAAW0B,UAC1CR,OAAQA,GAERG,EAAA,QAAAE,IAAA,8C","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as e,h as t,H as a,g as i}from"./p-8e4e97b4.js";import{D as s,i as n,f as o,h as d}from"./p-dbc8bf0c.js";import"./p-6215e2ae.js";const r='/*! 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;z-index:var(--ic-z-index-page-header)}:host(.ic-page-header-sticky){position:sticky;top:0;box-shadow:var(--ic-elevation-overlay);z-index:var(--ic-z-index-sticky-page-header)}header{background-color:var(--ic-page-header-background)}header.border-bottom{border-bottom:var(--ic-border-default);border-bottom:var(--ic-space-1px) solid var(--ic-page-header-border)}header.tabs{padding-top:var(--ic-space-md)}.breadcrumb-area{margin-bottom:var(--ic-space-md)}::slotted(ic-navigation-item){--navigation-link-colour:var(--ic-color-text-primary)}.main-content{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"title-area action-area"\n "input-area action-area";-moz-column-gap:var(--ic-space-md);column-gap:var(--ic-space-md);justify-content:space-between;width:100%}.title-area{display:flex;flex-direction:column;flex:1;min-width:19rem;grid-area:title-area}.header-content{display:flex;align-items:center;width:100%;flex-wrap:wrap;-moz-column-gap:var(--ic-space-md);column-gap:var(--ic-space-md)}.heading{display:inline-block;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.subheading-content{margin-top:var(--ic-space-xs)}.subheading-content.small{margin-top:var(--ic-space-md)}.action-area{display:flex;gap:var(--ic-space-md);flex-flow:row wrap;justify-self:end;justify-content:flex-end;height:-moz-fit-content;height:fit-content;grid-area:action-area}.input-area,.navigation-area{margin-top:var(--ic-space-md);width:100%}.tabs-slot{display:flex;overflow-x:auto;padding:0.5rem;margin:-0.5rem}.tabs-slot::-webkit-scrollbar{display:none}.input-area{grid-area:input-area}@media screen and (max-width: 576px){::slotted(ic-text-field){--input-width:100%;max-width:20rem}.main-content{grid-template-areas:"title-area"\n "action-area"\n "input-area";justify-content:flex-start}.title-area{min-width:0}.action-area{min-width:100%;margin-top:var(--ic-space-md);justify-content:start}}@media screen and (min-width: 992px){:host(.ic-page-header-sticky-desktop){position:sticky;top:0;box-shadow:var(--ic-elevation-overlay);z-index:var(--ic-z-index-sticky-page-header)}}';const c=r;const l=class{constructor(t){e(this,t);this.resizeObserver=null;this.areButtonsReversed=false;this.deviceSize=s.XL;this.aligned="left";this.border=true;this.reverseOrder=false;this.size="medium";this.sticky=false;this.stickyDesktopOnly=false;this.theme="inherit";this.resizeObserverCallback=()=>{if(this.reverseOrder&&n(this.el,"actions")){this.applyReverseOrder()}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback()}));this.resizeObserver.observe(this.el)};this.applyReverseOrder=()=>{var e;const t=o();if(t!==this.deviceSize){this.deviceSize=t}const a=(e=this.el.shadowRoot)===null||e===void 0?void 0:e.querySelector("div.action-area");const i=[];for(let e=0;e<this.actionContent.length;e++){const t=this.actionContent[e];let a=t.offsetHeight;if(a===undefined){a=0}i.push(a)}const n=Math.max(...i);let d=a.offsetHeight;if(d===undefined){d=0}const r=()=>{this.actionContent=this.actionContent.reverse();this.actionContent.forEach((e=>{this.el.append(e)}));this.areButtonsReversed=!this.areButtonsReversed};if(this.deviceSize>s.S&&d<=n&&!this.areButtonsReversed||(this.deviceSize>s.S&&d>n||this.deviceSize<=s.S)&&this.areButtonsReversed){r()}}}disconnectedCallback(){if(this.resizeObserver!==null){this.resizeObserver.disconnect()}}componentWillLoad(){this.actionContent=Array.from(this.el.querySelectorAll(`[slot="actions"]`))}componentDidLoad(){d(this.runResizeObserver)}render(){var e,i;const{size:s,border:o,heading:d,subheading:r,aligned:c,sticky:l,stickyDesktopOnly:b,theme:p}=this;const h=`${n(this.el,"heading")?(i=(e=this.el.querySelector('[slot="heading"]'))===null||e===void 0?void 0:e.textContent)!==null&&i!==void 0?i:"":d!==null&&d!==void 0?d:""} page sections`;return t(a,{key:"b72fc99f5588d6c9549ba2fe0bacbfb9b0c133be",class:{["ic-page-header-sticky"]:!!l,["ic-page-header-sticky-desktop"]:!l&&!!b,[`ic-theme-${p}`]:p!=="inherit"},"aria-label":this.el.ariaLabel||"page header"},t("header",{key:"0dd8b54fbbc330f0202d8b42075aa2ad7e944690",class:{["border-bottom"]:!!o,["tabs"]:n(this.el,"tabs")},role:"presentation"},t("ic-section-container",{key:"191d13b8e42c92543bbc3c8c85a88eeba47b7462",aligned:c,fullHeight:n(this.el,"tabs")},n(this.el,"breadcrumbs")&&t("div",{key:"ceb08e816c6215199c33363b32c182c06de1c19e",class:"breadcrumb-area"},t("slot",{key:"e7a24051f7c9544eb1c629813b6a414cc2be42ec",name:"breadcrumbs"})),t("div",{key:"ad3ad094ae44d2cd5b12612d47487e9f94cb405b",class:"main-content"},t("div",{key:"0b9da0f1195a8eaa974f985f0268fed78d051f6d",class:"title-area"},t("div",{key:"314147f4f76b8827ee90bb68bad21fe931e55fb5",class:"header-content"},t("slot",{key:"a0d82decef083a02afbb103bcc94e6dfb809c9ab",name:"heading"},t("ic-typography",{key:"bb7ad7d29d53fe971d2298ec25fb377d2c525ed4",variant:s==="small"?"h4":"h2",class:"heading"},t("h2",{key:"10dcebaa154cab7717654db7f8342c8781bbb500"},d))),t("slot",{key:"8933dd41330b29fdd6f534069d54ac1f7b8d956e",name:"heading-adornment"})),t("div",{key:"22d58adbadef2d8f594e08f5d62b24596d4be3bf",class:{["subheading-content"]:!!r||n(this.el,"subheading"),["small"]:s==="small"}},t("slot",{key:"6a0e2482c20cd6e5c6ea74259c4f90ee59f372b8",name:"subheading"},t("ic-typography",{key:"d519ee27c3125320bc6b2a105b285148f791298c",variant:"body"},r)))),n(this.el,"actions")&&t("div",{key:"db7b9b202c23c922149d77e3c378a7f369270022",class:"action-area"},t("slot",{key:"018da769d0d0d85f56e8400270a182846028c8f8",name:"actions"})),n(this.el,"input")&&t("div",{key:"28495ab831e90484f64a731c2ac9589da255f7c9",class:"input-area"},t("slot",{key:"0584473df8a5318ca3a91c81fa42085d98ec03e8",name:"input"}))),(n(this.el,"stepper")||n(this.el,"tabs"))&&t("div",{key:"e9b414dd0c40f9c72c4099119f43b90998b660e3",class:"navigation-area"},n(this.el,"stepper")&&!n(this.el,"tabs")&&t("slot",{key:"6767b004d2c71a4e009a23eb73e9c33c976c3d22",name:"stepper"}),n(this.el,"tabs")&&t("nav",{key:"2966875a2e393299b01907959a925c960a1f5795","aria-label":h},t("ic-horizontal-scroll",{key:"3ab38c0a4933f7b38af7fc9bb039624a5d98f3fd"},t("ul",{key:"ce1c14207346ad570188c1e70f9ca39e0bfd2d68",class:"tabs-slot"},t("slot",{key:"38f22f779dd42b5015faa5604dc5af848a72121b",name:"tabs"}))))))))}get el(){return i(this)}};l.style=c;export{l as ic_page_header};
2
- //# sourceMappingURL=p-23dc27a8.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icCheckboxGroupCss","IcCheckboxGroupStyle0","CHECKBOX_SELECTOR","CheckboxGroup","constructor","hostRef","this","disabled","helperText","hideLabel","required","size","theme","validationAriaLive","validationStatus","validationText","setCheckboxProps","checkboxes","Array","from","el","querySelectorAll","forEach","checkbox","watchDisabledHandler","removeDisabledFalse","labelNameHandler","newValue","oldValue","propName","groupLabel","name","watchSizeHandler","watchThemeHandler","handleChange","ev","target","tagName","stopImmediatePropagation","componentWillLoad","componentDidLoad","onComponentRequiredPropUndefined","prop","label","selectHandler","checkedOptions","filter","checked","icChange","emit","value","map","opt","textFieldValue","_a","querySelector","selectedOption","render","describedBy","getInputDescribedByText","renderSRText","showValidation","hasValidationStatus","h","Host","key","class","id","trim","useLabelTag","slot","for","ariaLiveMode","status","message"],"sources":["src/components/ic-checkbox-group/ic-checkbox-group.css?tag=ic-checkbox-group&encapsulation=shadow","src/components/ic-checkbox-group/ic-checkbox-group.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n\n --ic-input-label-text-color: var(--ic-checkbox-group-label);\n --ic-input-label-helper-text-color: var(--ic-checkbox-group-subtitle);\n --ic-input-validation-error: var(--ic-checkbox-state-icon-error);\n --ic-input-validation-status-text-color: var(--ic-checkbox-state-text);\n}\n\n:host(.ic-checkbox-group-disabled) {\n --ic-input-label-text-color: var(--ic-checkbox-group-label-disabled);\n --ic-input-label-helper-text-color: var(\n --ic-checkbox-group-subtitle-disabled\n );\n}\n\nic-input-label.error {\n color: var(--ic-checkbox-group-label-error);\n\n --ic-typography-color: var(--ic-checkbox-group-label-error);\n --ic-input-label-helper-text-color: var(--ic-checkbox-group-subtitle-error);\n}\n\nic-input-label:not(.with-helper) .ic-typography-label,\nic-input-label .helpertext {\n margin-bottom: var(--ic-space-sm);\n}\n\n:host(.ic-checkbox-group-small)\n ic-input-label:not(.with-helper)\n .ic-typography-label,\n:host(.ic-checkbox-group-small) ic-input-label .helpertext {\n margin-bottom: calc(var(--ic-space-sm) / 2);\n}\n\n:host(.ic-checkbox-group-large)\n ic-input-label:not(.with-helper)\n .ic-typography-label,\n:host(.ic-checkbox-group-large) ic-input-label .helpertext {\n margin-bottom: calc(var(--ic-space-sm) * 1.5);\n}\n\nic-input-label .helpertext {\n display: block;\n}\n\nic-input-validation.show-validation {\n margin-top: var(--ic-space-sm);\n}\n\n:host(.ic-checkbox-group-small) ic-input-validation.show-validation {\n margin-top: calc(var(--ic-space-sm) / 2);\n}\n\n:host(.ic-checkbox-group-large) ic-input-validation.show-validation {\n margin-top: calc(var(--ic-space-sm) * 1.5);\n}\n\n.checkboxes-container {\n margin-bottom: calc(-1 * var(--ic-space-xxs));\n}\n\n:host(.ic-checkbox-group-small) .checkboxes-container {\n margin-bottom: calc(-1 * var(--ic-space-xxxs));\n}\n\n.screen-reader-only-text {\n position: absolute;\n left: -9999px;\n background-color: #fff;\n color: #000;\n text-transform: none;\n}\n\n.screen-reader-only-text:dir(rtl) {\n right: -9999px;\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Listen,\n Element,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\nimport {\n getInputDescribedByText,\n hasValidationStatus,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n} from \"../../utils/helpers\";\nimport {\n IcAriaLive,\n IcInformationStatusOrEmpty,\n IcSizes,\n IcThemeMode,\n} from \"../../utils/types\";\nimport { IcChangeEventDetail } from \"./ic-checkbox-group.types\";\n\nconst CHECKBOX_SELECTOR = \"ic-checkbox\";\n\n/**\n * @slot helper-text - Content is set as the helper text for the checkbox group.\n */\n@Component({\n tag: \"ic-checkbox-group\",\n styleUrl: \"ic-checkbox-group.css\",\n shadow: true,\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class CheckboxGroup {\n private checkboxes: HTMLIcCheckboxElement[];\n\n @Element() el: HTMLIcCheckboxGroupElement;\n\n /**\n * If `true`, the checkbox group will be set to the disabled state.\n */\n @Prop() disabled: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n this.checkboxes.forEach((checkbox) => {\n checkbox.disabled = this.disabled;\n });\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText: string = \"\";\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * The label for the checkbox group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the checkbox group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n @Watch(\"label\")\n @Watch(\"name\")\n labelNameHandler(\n newValue: string,\n oldValue: string,\n propName: \"label\" | \"name\"\n ): void {\n Array.from(this.el.querySelectorAll(CHECKBOX_SELECTOR)).forEach(\n (checkbox) => {\n if (propName === \"label\") checkbox.groupLabel = newValue;\n else if (checkbox.name === oldValue) {\n // If the checkbox name has been set by the parent, then override it\n checkbox.name = newValue;\n }\n }\n );\n }\n\n /**\n * If `true`, the checkbox group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The size of the checkboxes to be displayed. This does not affect the font size of the label.\n */\n @Prop() size: IcSizes = \"medium\";\n @Watch(\"size\")\n watchSizeHandler(): void {\n this.checkboxes.forEach((checkbox) => {\n checkbox.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(newValue: IcThemeMode): void {\n Array.from(this.el.querySelectorAll(CHECKBOX_SELECTOR)).forEach(\n (checkbox) => {\n checkbox.theme = newValue;\n }\n );\n }\n\n /**\n * The value of the `aria-live` attribute on the validation message.\n */\n @Prop() validationAriaLive: IcAriaLive = \"polite\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message.\n */\n @Prop() validationText: string = \"\";\n\n /**\n * Emitted when a checkbox is checked.\n */\n @Event() icChange: EventEmitter<IcChangeEventDetail>;\n\n @Listen(\"icChange\")\n handleChange(ev: CustomEvent): void {\n //don't pass on the event if it has come from slotted text field\n //otherwise any icChange handler bound to the checkbox group will also run\n if ((ev.target as HTMLElement).tagName === \"IC-TEXT-FIELD\") {\n ev.stopImmediatePropagation();\n }\n }\n\n componentWillLoad(): void {\n this.setCheckboxProps();\n removeDisabledFalse(this.disabled, this.el);\n this.watchThemeHandler(this.theme);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Checkbox Group\"\n );\n }\n\n @Listen(\"icCheck\")\n selectHandler({ target }: CustomEvent): void {\n const checkedOptions = Array.from(\n this.el.querySelectorAll(CHECKBOX_SELECTOR)\n ).filter(({ checked, disabled }) => checked && !disabled);\n this.icChange.emit({\n value: checkedOptions.map(({ value }) => value),\n checkedOptions: checkedOptions.map((opt) => ({\n checkbox: opt,\n textFieldValue: opt.querySelector(\"ic-text-field\")?.value,\n })),\n selectedOption: target as HTMLIcCheckboxElement,\n });\n }\n\n private setCheckboxProps = () => {\n this.checkboxes = Array.from(this.el.querySelectorAll(CHECKBOX_SELECTOR));\n\n this.checkboxes.forEach((checkbox) => {\n if (!checkbox.disabled) {\n checkbox.disabled = this.disabled;\n }\n if (!checkbox.size) {\n checkbox.size = this.size;\n }\n });\n };\n\n render() {\n const {\n disabled,\n helperText,\n hideLabel,\n label,\n name,\n required,\n size,\n theme,\n validationAriaLive,\n validationStatus,\n validationText,\n } = this;\n\n const describedBy = getInputDescribedByText(\n this.el,\n name,\n helperText !== \"\",\n validationStatus !== \"\"\n );\n\n const renderSRText = validationStatus === \"error\" || required || hideLabel;\n\n const showValidation = hasValidationStatus(validationStatus, disabled);\n\n return (\n <Host\n class={{\n \"ic-checkbox-group-disabled\": !!disabled,\n [`ic-checkbox-group-${size}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n >\n {renderSRText && (\n <span\n id=\"screenReaderOnlyText\"\n class=\"screen-reader-only-text\"\n aria-hidden=\"true\"\n >\n {label} {validationStatus === \"error\" ? \"invalid data \" : null}{\" \"}\n {required ? \"required\" : null}\n </span>\n )}\n <fieldset\n id={name}\n aria-labelledby={`${\n renderSRText ? \"screenReaderOnlyText\" : \"\"\n } ${describedBy}`.trim()}\n disabled={disabled}\n >\n {!hideLabel && (\n <legend>\n <ic-input-label\n class={{ [`${validationStatus}`]: true }}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n useLabelTag={false}\n >\n <slot name=\"helper-text\" slot=\"helper-text\"></slot>\n </ic-input-label>\n </legend>\n )}\n <div class=\"checkboxes-container\">\n <slot></slot>\n </div>\n </fieldset>\n <ic-input-validation\n class={{\n \"show-validation\": showValidation,\n }}\n for={name}\n ariaLiveMode={validationAriaLive}\n status={showValidation ? validationStatus : \"\"}\n message={showValidation ? validationText : \"\"}\n ></ic-input-validation>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as o,H as i,g as n}from"./p-8e4e97b4.js";import{r}from"./p-dbc8bf0c.js";import"./p-6215e2ae.js";const s='/*! 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}:root{display:block}:host{display:flex;flex-direction:row;width:-moz-fit-content;width:fit-content;min-width:-moz-min-content;min-width:min-content;border:var(--ic-border-width) solid var(--ic-toggle-button-unselected-border);border-radius:var(--ic-border-radius)}:host(.ic-toggle-button-group-full-width){width:100%;max-width:100%}:host(.ic-toggle-button-group-loading){min-width:-moz-max-content;min-width:max-content}:host(:focus){box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);transition:var(--ic-transition-duration-fast);outline:none}::slotted(ic-toggle-button){flex-grow:1;width:-moz-min-content;width:min-content;--toggle-button-border:none !important;--toggle-button-border-hover:none !important;--toggle-button-border-active:none !important}::slotted(ic-toggle-button:not(:last-of-type)){border-right:var(--ic-border-width) solid\n var(--ic-toggle-button-unselected-border)}:host(.ic-toggle-button-group-disabled){border:var(--ic-space-1px) dashed\n var(--ic-toggle-button-unselected-border-disabled);pointer-events:none}:host(.ic-toggle-button-group-disabled) ::slotted(ic-toggle-button:not(:last-of-type)){border-right:var(--ic-space-1px) dashed\n var(--ic-toggle-button-unselected-border-disabled)}:host(.ic-toggle-button-group-monochrome){border:var(--ic-border-width) solid\n var(--ic-toggle-button-unselected-border-monochrome)}:host(.ic-toggle-button-group-monochrome) ::slotted(ic-toggle-button:not(:last-of-type)){border-right:var(--ic-border-width) solid\n var(--ic-toggle-button-unselected-border-monochrome)}:host(.ic-toggle-button-group-disabled.ic-toggle-button-group-monochrome){border:var(--ic-border-width) dashed\n var(--ic-toggle-button-unselected-border-disabled-monochrome)}:host(.ic-toggle-button-group-disabled.ic-toggle-button-group-monochrome) ::slotted(ic-toggle-button:not(:last-of-type)){border-right:var(--ic-border-width) solid\n var(--ic-toggle-button-unselected-border-disabled-monochrome)}:host(.ic-toggle-button-group-hide-outline){--ic-toggle-button-unselected-border:transparent;--ic-toggle-button-unselected-border-disabled:transparent;--ic-toggle-button-unselected-border-monochrome:transparent;--ic-toggle-button-unselected-border-disabled-monochrome:transparent}';const a=s;const l="IC-TOGGLE-BUTTON-GROUP";const d=class{constructor(o){t(this,o);this.icChange=e(this,"icChange",7);this.lastKeyPressed={key:null,shift:false};this.externallySetActiveToggle=null;this.accessibleLabel="Toggle button group";this.disabled=false;this.fullWidth=false;this.loading=false;this.monochrome=false;this.outline=true;this.selectMethod="manual";this.selectType="single";this.size="medium";this.theme="inherit";this.tooltipPlacement="bottom";this.variant="default";this.keyListener=t=>{this.lastKeyPressed={key:t.key,shift:t.shiftKey}};this.handleHostFocus=({target:t,relatedTarget:e})=>{var o;if(this.disabled){t===null||t===void 0?void 0:t.blur();return}if(this.loading)return;const i=t;const n=e;const r=Array.from((i===null||i===void 0?void 0:i.querySelectorAll("ic-toggle-button"))||[]);const s=r.every((t=>!t.checked));const{shift:a}=this.lastKeyPressed;if((s||this.selectType!=="single")&&!a||s&&a&&(n===null||n===void 0?void 0:n.tagName)==l){(o=r[0])===null||o===void 0?void 0:o.focus()}else if(!a||(n===null||n===void 0?void 0:n.tagName)==l){r.filter((t=>t.checked))[0].focus()}};this.handleKeyDown=({key:t})=>{if(t!=="ArrowDown"&&t!=="ArrowRight"&&t!=="ArrowLeft"&&t!=="ArrowUp")return;const e=this.getAllToggleButtons();let o;if(this.externallySetActiveToggle){o=e[this.getNextItemToSelect(e.indexOf(e.filter((t=>t===this.externallySetActiveToggle))[0]),t==="ArrowDown"||t==="ArrowRight")]}else{o=e[this.getNextItemToSelect(e.indexOf(e.filter((t=>t===document.activeElement))[0]),t==="ArrowDown"||t==="ArrowRight")]}if(this.selectMethod==="auto"){o.checked=true;this.selectHandler(new CustomEvent("icToggleChecked",{detail:{checked:o.checked}}),o)}else{o.focus()}};this.getNextItemToSelect=(t,e)=>{const o=this.getAllToggleButtons();const i=o.length-1;if(t<1){t=0}let n=e?t+1:t-1;if(n<0){n=i}else if(n>i){n=0}if(o[n].disabled){n=this.getNextItemToSelect(n,e)}return n};this.getAllToggleButtons=()=>Array.from(this.el.querySelectorAll("ic-toggle-button"))}watchDisabledHandler(){this.getAllToggleButtons().forEach((t=>{t.disabled=this.disabled}));r(this.disabled,this.el)}watchFullWidthHandler(){this.getAllToggleButtons().forEach((t=>{t.fullWidth=this.fullWidth}))}watchLoadingHandler(){this.getAllToggleButtons().forEach((t=>{t.loading=this.loading}))}watchMonochromeHandler(){this.getAllToggleButtons().forEach((t=>{t.monochrome=this.monochrome}))}watchOutlineHandler(){this.getAllToggleButtons().forEach((t=>{t.outline=this.outline}))}watchSizeHandler(){this.getAllToggleButtons().forEach((t=>{t.size=this.size}))}watchThemeHandler(){this.getAllToggleButtons().forEach((t=>{t.theme=this.theme}))}watchTooltipPlacementHandler(){this.getAllToggleButtons().forEach((t=>{t.tooltipPlacement=this.tooltipPlacement}))}watchVariantHandler(){this.getAllToggleButtons().forEach((t=>{t.variant=this.variant}))}selectHandler(t,e){const o=this.getAllToggleButtons();let i=t.target;if(e)e.focus();if(this.selectType==="single"){if(!i&&e){i=e}o.forEach((t=>{if(t.id!==i.id&&t.checked){t.checked=false}}));this.icChange.emit({checked:t.detail.checked,selectedOption:i})}else{const t=o.filter((t=>t.checked&&!t.disabled));this.icChange.emit({checked:t.map((t=>t.checked)),toggledOptions:t.map((t=>({toggleButton:t}))),selectedOption:i})}}async setActiveToggle(t){this.externallySetActiveToggle=t}componentWillLoad(){if(this.selectType==="multi")this.selectMethod="manual";document.addEventListener("keydown",this.keyListener);r(this.disabled,this.el)}componentDidLoad(){this.getAllToggleButtons().forEach(((t,e)=>{var o,i,n;const r=(n=(i=(o=t.shadowRoot)===null||o===void 0?void 0:o.querySelector("ic-button"))===null||i===void 0?void 0:i.shadowRoot)===null||n===void 0?void 0:n.querySelector("button");if(r){const t=r.getAttribute("aria-label");const e=t?`${t}, `:"";r.setAttribute("aria-label",`${e}${this.accessibleLabel}`)}t.id=e.toString();t.tabIndex=-1;t.addEventListener("keydown",(t=>{this.handleKeyDown(t)}));t.classList.add("expand-toggle-group-child")}))}disconnectedCallback(){document===null||document===void 0?void 0:document.removeEventListener("keydown",this.keyListener)}render(){const{accessibleLabel:t,disabled:e,fullWidth:n,loading:r,monochrome:s,outline:a,theme:l}=this;return o(i,{key:"5c8877eaeec66fb0cc9fbcd5ba593fc86bd2b5f2",role:"group","aria-label":t,tabindex:e?-1:0,class:{"ic-toggle-button-group-disabled":e,"ic-toggle-button-group-full-width":n,"ic-toggle-button-group-loading":r,"ic-toggle-button-group-monochrome":s,"ic-toggle-button-group-hide-outline":!a,[`ic-theme-${l}`]:l!=="inherit"},onFocus:this.handleHostFocus},o("slot",{key:"f701ba436d48cd8d33abe55a252b4dd40455b67a"}))}get el(){return n(this)}static get watchers(){return{disabled:["watchDisabledHandler"],fullWidth:["watchFullWidthHandler"],loading:["watchLoadingHandler"],monochrome:["watchMonochromeHandler"],outline:["watchOutlineHandler"],size:["watchSizeHandler"],theme:["watchThemeHandler"],tooltipPlacement:["watchTooltipPlacementHandler"],variant:["watchVariantHandler"]}}};d.style=a;export{d as ic_toggle_button_group};
2
- //# sourceMappingURL=p-3c7e90a7.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icToggleButtonGroupCss","IcToggleButtonGroupStyle0","TOGGLE_GROUP","ToggleButtonGroup","constructor","hostRef","this","lastKeyPressed","key","shift","externallySetActiveToggle","accessibleLabel","disabled","fullWidth","loading","monochrome","outline","selectMethod","selectType","size","theme","tooltipPlacement","variant","keyListener","ev","shiftKey","handleHostFocus","target","relatedTarget","blur","el","relEl","toggleButtons","Array","from","querySelectorAll","noToggleButtonsChecked","every","checked","tagName","_a","focus","filter","handleKeyDown","toggleButtonOptions","getAllToggleButtons","targetToggle","getNextItemToSelect","indexOf","document","activeElement","selectHandler","CustomEvent","detail","currentItem","movingDown","numToggles","length","nextItem","watchDisabledHandler","forEach","removeDisabledFalse","watchFullWidthHandler","watchLoadingHandler","watchMonochromeHandler","watchOutlineHandler","watchSizeHandler","watchThemeHandler","watchTooltipPlacementHandler","watchVariantHandler","tabTarget","allToggles","clickedToggle","id","icChange","emit","selectedOption","toggledOptions","map","opt","toggleButton","setActiveToggle","toggle","componentWillLoad","addEventListener","componentDidLoad","i","btn","_c","_b","shadowRoot","querySelector","btnAriaLabel","getAttribute","aria","setAttribute","toString","tabIndex","classList","add","disconnectedCallback","removeEventListener","render","h","Host","role","tabindex","class","onFocus"],"sources":["src/components/ic-toggle-button-group/ic-toggle-button-group.css?tag=ic-toggle-button-group&encapsulation=shadow","src/components/ic-toggle-button-group/ic-toggle-button-group.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/* PARENT HOST */\n\n:root {\n display: block;\n}\n\n:host {\n display: flex;\n flex-direction: row;\n width: fit-content;\n min-width: min-content;\n border: var(--ic-border-width) solid var(--ic-toggle-button-unselected-border);\n border-radius: var(--ic-border-radius);\n}\n\n:host(.ic-toggle-button-group-full-width) {\n width: 100%;\n max-width: 100%;\n}\n\n:host(.ic-toggle-button-group-loading) {\n min-width: max-content;\n}\n\n:host(: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}\n\n/* CHILDREN SLOTTED */\n\n::slotted(ic-toggle-button) {\n flex-grow: 1;\n width: min-content;\n\n --toggle-button-border: none !important;\n --toggle-button-border-hover: none !important;\n --toggle-button-border-active: none !important;\n}\n\n::slotted(ic-toggle-button:not(:last-of-type)) {\n border-right: var(--ic-border-width) solid\n var(--ic-toggle-button-unselected-border);\n}\n\n/* DISABLED */\n:host(.ic-toggle-button-group-disabled) {\n border: var(--ic-space-1px) dashed\n var(--ic-toggle-button-unselected-border-disabled);\n pointer-events: none;\n}\n\n:host(.ic-toggle-button-group-disabled)\n ::slotted(ic-toggle-button:not(:last-of-type)) {\n border-right: var(--ic-space-1px) dashed\n var(--ic-toggle-button-unselected-border-disabled);\n}\n\n:host(.ic-toggle-button-group-monochrome) {\n border: var(--ic-border-width) solid\n var(--ic-toggle-button-unselected-border-monochrome);\n}\n\n:host(.ic-toggle-button-group-monochrome)\n ::slotted(ic-toggle-button:not(:last-of-type)) {\n border-right: var(--ic-border-width) solid\n var(--ic-toggle-button-unselected-border-monochrome);\n}\n\n:host(.ic-toggle-button-group-disabled.ic-toggle-button-group-monochrome) {\n border: var(--ic-border-width) dashed\n var(--ic-toggle-button-unselected-border-disabled-monochrome);\n}\n\n:host(.ic-toggle-button-group-disabled.ic-toggle-button-group-monochrome)\n ::slotted(ic-toggle-button:not(:last-of-type)) {\n border-right: var(--ic-border-width) solid\n var(--ic-toggle-button-unselected-border-disabled-monochrome);\n}\n\n:host(.ic-toggle-button-group-hide-outline) {\n --ic-toggle-button-unselected-border: transparent;\n --ic-toggle-button-unselected-border-disabled: transparent;\n --ic-toggle-button-unselected-border-monochrome: transparent;\n --ic-toggle-button-unselected-border-disabled-monochrome: transparent;\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Listen,\n Element,\n Event,\n EventEmitter,\n State,\n Watch,\n Method,\n} from \"@stencil/core\";\nimport {\n IcSizes,\n IcSelectTypes,\n IcSelectMethodTypes,\n IcThemeMode,\n IcButtonTooltipPlacement,\n IcIconPlacementOptions,\n} from \"../../utils/types\";\nimport { IcChangeEventDetail } from \"./ic-toggle-button-group.types\";\nimport { removeDisabledFalse } from \"../../utils/helpers\";\n\ninterface lastKey {\n key: string | null;\n shift: boolean;\n}\n\nconst TOGGLE_GROUP = \"IC-TOGGLE-BUTTON-GROUP\";\n\n@Component({\n tag: \"ic-toggle-button-group\",\n styleUrl: \"ic-toggle-button-group.css\",\n shadow: true,\n})\nexport class ToggleButtonGroup {\n @Element() el: HTMLIcToggleButtonGroupElement;\n\n @State() lastKeyPressed: lastKey = {\n key: null,\n shift: false,\n };\n @State() externallySetActiveToggle: HTMLIcToggleButtonElement | null = null;\n\n /**\n * The accessible label of the toggle button group component to provide context for screen reader users.\n */\n @Prop() accessibleLabel = \"Toggle button group\";\n\n /**\n * If `true`, the toggle button group will be set to the disabled state.\n */\n @Prop() disabled = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n this.getAllToggleButtons().forEach((el) => {\n el.disabled = this.disabled;\n });\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the toggle button group will fill the width of the container.\n */\n @Prop() fullWidth = false;\n @Watch(\"fullWidth\")\n watchFullWidthHandler(): void {\n this.getAllToggleButtons().forEach((el) => {\n el.fullWidth = this.fullWidth;\n });\n }\n\n /**\n * The placement of the icons in relation to the toggle button labels.\n */\n @Prop() iconPlacement?: IcIconPlacementOptions;\n\n /**\n * If `true`, the toggle button group will be in loading state.\n */\n @Prop() loading = false;\n @Watch(\"loading\")\n watchLoadingHandler(): void {\n this.getAllToggleButtons().forEach((el) => {\n el.loading = this.loading;\n });\n }\n\n /**\n * If `true`, the toggle button group will display as black in the light theme, and white in dark theme.\n */\n @Prop() monochrome = false;\n @Watch(\"monochrome\")\n watchMonochromeHandler(): void {\n this.getAllToggleButtons().forEach((el) => {\n el.monochrome = this.monochrome;\n });\n }\n\n /**\n * If `true`, the toggle button group will display with an outline.\n */\n @Prop() outline = true;\n @Watch(\"outline\")\n watchOutlineHandler(): void {\n this.getAllToggleButtons().forEach((el) => {\n el.outline = this.outline;\n });\n }\n\n /**\n * If `auto`, controls are toggled automatically when navigated to. If `manual`, the controls must be actioned to change their toggled state. The value of this prop is ignored if `selectType` is set to`multi`.\n */\n @Prop({ mutable: true }) selectMethod: IcSelectMethodTypes = \"manual\";\n\n /**\n * Sets whether single or multiple options can be toggled. If `multi`, then the `selectMethod` is always `manual`.\n */\n @Prop() selectType: IcSelectTypes = \"single\";\n\n /**\n * The size of the toggle buttons to be displayed. This does not affect the font size of the accessible label.\n */\n @Prop() size: IcSizes = \"medium\";\n @Watch(\"size\")\n watchSizeHandler(): void {\n this.getAllToggleButtons().forEach((el) => {\n el.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.getAllToggleButtons().forEach((el) => {\n el.theme = this.theme;\n });\n }\n\n /**\n * The position of the tooltip in relation to the toggle buttons.\n */\n @Prop() tooltipPlacement: IcButtonTooltipPlacement = \"bottom\";\n @Watch(\"tooltipPlacement\")\n watchTooltipPlacementHandler(): void {\n this.getAllToggleButtons().forEach((el) => {\n el.tooltipPlacement = this.tooltipPlacement;\n });\n }\n\n /**\n * The variant of the toggle button.\n */\n @Prop({ reflect: true }) variant: \"default\" | \"icon\" = \"default\";\n @Watch(\"variant\")\n watchVariantHandler(): void {\n this.getAllToggleButtons().forEach((el) => {\n el.variant = this.variant;\n });\n }\n\n /**\n * Emitted when a toggle button is selected.\n */\n @Event() icChange: EventEmitter<IcChangeEventDetail>;\n\n @Listen(\"icToggleChecked\")\n selectHandler(ev: CustomEvent, tabTarget?: HTMLIcToggleButtonElement): void {\n const allToggles = this.getAllToggleButtons();\n let clickedToggle = ev.target as HTMLIcToggleButtonElement;\n\n if (tabTarget) tabTarget.focus(); // tabTarget used in proxySelectHandler\n\n if (this.selectType === \"single\") {\n if (!clickedToggle && tabTarget) {\n clickedToggle = tabTarget;\n }\n allToggles.forEach((el) => {\n if (el.id !== clickedToggle.id && el.checked) {\n el.checked = false;\n }\n });\n\n this.icChange.emit({\n checked: ev.detail.checked,\n selectedOption: clickedToggle,\n });\n } else {\n const toggledOptions = allToggles.filter(\n (el) => el.checked && !el.disabled\n );\n\n this.icChange.emit({\n checked: toggledOptions.map((opt) => opt.checked),\n toggledOptions: toggledOptions.map((opt) => ({\n toggleButton: opt,\n })),\n selectedOption: clickedToggle,\n });\n }\n }\n\n /**\n * @internal Used to enable other components to set the active toggle button when toggle button group is in a shadow dom.\n */\n @Method()\n async setActiveToggle(toggle: HTMLIcToggleButtonElement): Promise<void> {\n this.externallySetActiveToggle = toggle;\n }\n\n componentWillLoad(): void {\n if (this.selectType === \"multi\") this.selectMethod = \"manual\";\n if (this.selectMethod === \"auto\") this.selectType === \"single\";\n document.addEventListener(\"keydown\", this.keyListener);\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n this.getAllToggleButtons().forEach((el, i) => {\n const btn = el.shadowRoot\n ?.querySelector(\"ic-button\")\n ?.shadowRoot?.querySelector(\"button\");\n if (btn) {\n const btnAriaLabel = btn.getAttribute(\"aria-label\");\n const aria = btnAriaLabel ? `${btnAriaLabel}, ` : \"\";\n btn.setAttribute(\"aria-label\", `${aria}${this.accessibleLabel}`);\n }\n\n el.id = i.toString();\n el.tabIndex = -1;\n el.addEventListener(\"keydown\", (ev) => {\n this.handleKeyDown(ev);\n });\n el.classList.add(\"expand-toggle-group-child\");\n });\n }\n\n disconnectedCallback(): void {\n document?.removeEventListener(\"keydown\", this.keyListener);\n }\n\n private keyListener = (ev: KeyboardEvent) => {\n this.lastKeyPressed = {\n key: ev.key,\n shift: ev.shiftKey,\n };\n };\n\n private handleHostFocus = ({ target, relatedTarget }: FocusEvent) => {\n if (this.disabled) {\n (target as HTMLElement)?.blur();\n return;\n }\n if (this.loading) return;\n const el = target as HTMLIcToggleButtonGroupElement | null;\n const relEl = relatedTarget as HTMLIcToggleButtonElement | null;\n const toggleButtons = Array.from(\n el?.querySelectorAll(\"ic-toggle-button\") || []\n );\n const noToggleButtonsChecked = toggleButtons.every((el) => !el.checked);\n const { shift } = this.lastKeyPressed;\n if (\n ((noToggleButtonsChecked || this.selectType !== \"single\") && !shift) ||\n (noToggleButtonsChecked && shift && relEl?.tagName == TOGGLE_GROUP)\n ) {\n toggleButtons[0]?.focus();\n } else if (!shift || relEl?.tagName == TOGGLE_GROUP) {\n // if checked is true and selectMethod is \"single\", focus that toggle\n toggleButtons.filter((el) => el.checked)[0].focus();\n }\n };\n\n private handleKeyDown = ({ key }: KeyboardEvent) => {\n if (\n key !== \"ArrowDown\" &&\n key !== \"ArrowRight\" &&\n key !== \"ArrowLeft\" &&\n key !== \"ArrowUp\"\n )\n return;\n\n const toggleButtonOptions = this.getAllToggleButtons();\n let targetToggle: HTMLIcToggleButtonElement;\n if (this.externallySetActiveToggle) {\n targetToggle =\n toggleButtonOptions[\n this.getNextItemToSelect(\n toggleButtonOptions.indexOf(\n toggleButtonOptions.filter(\n (el) => el === this.externallySetActiveToggle\n )[0]\n ),\n key === \"ArrowDown\" || key === \"ArrowRight\"\n )\n ];\n } else {\n targetToggle =\n toggleButtonOptions[\n this.getNextItemToSelect(\n toggleButtonOptions.indexOf(\n toggleButtonOptions.filter(\n (el) => el === document.activeElement\n )[0]\n ),\n key === \"ArrowDown\" || key === \"ArrowRight\"\n )\n ];\n }\n\n if (this.selectMethod === \"auto\") {\n // trigger selectHandler when unable to add 'target'\n targetToggle.checked = true;\n this.selectHandler(\n new CustomEvent(\"icToggleChecked\", {\n detail: {\n checked: targetToggle.checked,\n },\n }),\n targetToggle\n );\n } else {\n targetToggle.focus();\n }\n };\n\n private getNextItemToSelect = (currentItem: number, movingDown: boolean) => {\n const toggleButtonOptions = this.getAllToggleButtons();\n const numToggles = toggleButtonOptions.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 = numToggles;\n } else if (nextItem > numToggles) {\n nextItem = 0;\n }\n\n if (toggleButtonOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n\n return nextItem;\n };\n\n private getAllToggleButtons = () =>\n Array.from(this.el.querySelectorAll(\"ic-toggle-button\"));\n\n render() {\n const {\n accessibleLabel,\n disabled,\n fullWidth,\n loading,\n monochrome,\n outline,\n theme,\n } = this;\n\n return (\n <Host\n role=\"group\"\n aria-label={accessibleLabel}\n tabindex={disabled ? -1 : 0}\n class={{\n \"ic-toggle-button-group-disabled\": disabled,\n \"ic-toggle-button-group-full-width\": fullWidth,\n \"ic-toggle-button-group-loading\": loading,\n \"ic-toggle-button-group-monochrome\": monochrome,\n \"ic-toggle-button-group-hide-outline\": !outline,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n onFocus={this.handleHostFocus}\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as a,F as i,H as o,g as n}from"./p-8e4e97b4.js";import{D as s,g as r,i as c,R as l,f as d,c as h,h as p,o as b,P as m,I as v,e as u}from"./p-dbc8bf0c.js";import"./p-6215e2ae.js";const g='/*! 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;color:var(--ic-top-navigation-text);width:100%;position:relative;--ic-typography-color:var(--ic-top-navigation-text);--ic-button-secondary-text-monochrome:var(--ic-brand-text-color);--ic-button-secondary-border-monochrome:var(--ic-brand-text-color);--navigation-link-colour:var(--ic-top-navigation-text);--ic-top-navigation-status-tag-text:var(--ic-color-text-primary-light);--ic-top-navigation-status-tag-secondary:var(--ic-state-layer-lighten-20)}:host(.dark){--ic-top-navigation-status-tag-text:var(--ic-color-text-primary-dark);--ic-top-navigation-status-tag-secondary:var(--ic-state-layer-darken-10);--ic-top-navigation-title-hover:var(--ic-action-dark-bg-hover);--ic-top-navigation-title-pressed:var(--ic-action-dark-bg-pressed)}:host(.dark) ::slotted(ic-navigation-button){--ic-button-icon-monochrome:var(--ic-color-text-primary-light)}::slotted(ic-navigation-button){--ic-button-icon-monochrome:white}:host .top-navigation{background-color:var(--ic-top-navigation-background);height:-moz-max-content;height:max-content}:host(.fullwidth-searchbar) slot[name="search"]::slotted(form){width:100%}:host .title-link{display:inline-flex;align-items:center;text-decoration:none;padding:var(--ic-space-xxs);transition:var(--ic-easing-transition-fast)}:host .title-link,:host .title-link:visited,:host .title-link:active,:host .title-link ::slotted(a),:host .title-link:visited ::slotted(a),:host .title-link:active ::slotted(a){color:var(--ic-top-navigation-icon-and-label);text-decoration:none;outline:none;--ic-typography-color:var(--ic-top-navigation-icon-and-label)}:host .title-link:hover:not(:focus){background-color:var(--ic-top-navigation-title-hover)}:host .title-link:active:not(:focus){background-color:var(--ic-top-navigation-title-pressed)}:host .title-link:hover{border-radius:var(--ic-border-radius)}:host .menu-button-container{--ic-button-secondary-text-monochrome:var(--ic-brand-text-color);--ic-button-secondary-border-monochrome:var(--ic-brand-text-color)}:host .title-link:focus,:host .title-link:focus-within{border-radius:var(--ic-border-radius);box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline)}:host .title-link ic-typography{font-weight:600}:host .nav-panel-container{border-top:var(--ic-space-1px) solid var(--ic-top-navigation-keyline);padding:0 var(--ic-space-lg);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin));display:flex}:host(.dark) .nav-panel-container{border-top:var(--ic-border-keyline-darken)}.top-panel-container{display:flex;padding-top:0.5rem;padding-bottom:0.5rem}.navigation-tabs{margin-top:calc(-1 * var(--ic-space-1px))}.app-details-container{display:flex;align-items:center;flex:1 1 auto;margin-right:var(--ic-space-md)}.app-icon-container{display:flex;padding-right:var(--ic-space-xs)}.icon-buttons-container{display:flex;margin-left:var(--ic-space-md)}.icon-buttons-container ::slotted(nav){display:flex}.title-wrap{overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}:host .app-status{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag);color:var(--ic-top-navigation-status-tag-text);--ic-typography-color:var(--ic-top-navigation-status-tag-text);padding:var(--ic-space-xxs) var(--ic-space-lg);margin-left:var(--ic-space-md);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content}:host .app-version{border-radius:var(--ic-space-md);background-color:var(--ic-top-navigation-status-tag-secondary);color:var(--ic-top-navigation-status-tag);padding:var(--ic-space-xxs) var(--ic-space-sm);margin-left:var(--ic-space-xs);flex:1 1 0;max-width:-moz-fit-content;max-width:fit-content;--ic-typography-color:var(--ic-top-navigation-status-tag)}slot[name="app-icon"]::slotted(*){fill:var(--ic-top-navigation-logo);width:2em;height:2em;cursor:pointer}slot[name="toggle-icon"] svg{fill:var(--ic-top-navigation-icon)}.search-menu-container{justify-content:right;display:flex;align-items:center}.menu-button-container{margin-left:var(--ic-space-md)}.menu-button-container .navigation-landmark-button-text{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;color:var(--ic-brand-text-color)}.menu-button-container .navigation-landmark-button-text:dir(rtl){right:-9999px}.search-actions-container{display:flex}.menu-buttons-slot{display:flex;flex-direction:column}.navigation-landmark-text{position:absolute;width:var(--ic-space-1px);height:var(--ic-space-1px);padding:0;margin:calc(-1 * var(--ic-space-1px));overflow:hidden}.navigation-item-list{display:flex;list-style:none;height:2.75rem}.navigation-item-list::-webkit-scrollbar{display:none}:host ic-section-container{padding-bottom:0 !important;padding-top:0 !important}@media screen and (min-width: 993px){.app-details-container{margin-right:var(--ic-space-lg)}}@media screen and (max-width: 1200px){:host .nav-panel-container{padding:0 var(--ic-space-md)}}:host(.mobile-mode) .app-status,:host(.mobile-mode) .app-version{display:none}:host(.mobile-mode) .title-link{margin-right:var(--ic-space-xs)}:host(.mobile-mode) .search-menu-container{max-width:10rem}:host(.mobile-mode) .search-bar-container{display:flex;justify-content:center;align-items:center;border-top:var(--ic-border-keyline-darken);height:4rem;padding-left:var(--ic-space-md);padding-right:var(--ic-space-md);margin-left:calc(-1 * var(--section-container-margin));margin-right:calc(-1 * var(--section-container-margin))}@media screen and (max-width: 576px){:host .title-link{margin-right:var(--ic-space-xxxs);word-break:break-word;-webkit-hyphens:none;hyphens:none}.top-panel-container{min-height:2.5rem}.search-bar-container{margin-top:0;height:3.5rem;padding-left:var(--ic-space-xs);padding-right:var(--ic-space-xs)}.menu-button-container{margin-left:var(--ic-space-sm)}slot[name="app-icon"]::slotted(*){width:1.5em;height:1.5em}slot[name="toggle-icon"] svg{width:1.5em;height:1.5em}}@media (forced-colors: active){:host .top-navigation{border-bottom:var(--ic-border-hc)}.app-status,.app-version{border:var(--ic-border-hc)}slot[name="app-icon"]::slotted(*){fill:currentcolor}slot[name="toggle-icon"] svg{fill:currentcolor}}';const f=g;const y=class{constructor(a){t(this,a);this.icNavigationMenuClosed=e(this,"icNavigationMenuClosed",7);this.icNavigationMenuOpened=e(this,"icNavigationMenuOpened",7);this.icTopNavResized=e(this,"icTopNavResized",7);this.hasAppIcon=false;this.hasAppTitleSlot=false;this.hasIconButtons=false;this.hasNavigation=false;this.hasSearchSlotContent=false;this.resizeObserver=null;this.searchBar=null;this.deviceSize=s.XL;this.foregroundColor=r();this.hasFullWidthSearchBar=false;this.mobileSearchBarVisible=false;this.mobileSearchHiddenOnBlur=false;this.navMenuVisible=false;this.searchButtonClick=false;this.searchValue="";this.contentAligned="full-width";this.customMobileBreakpoint=s.L;this.href="/";this.inline=false;this.shortAppTitle="";this.status="";this.theme="inherit";this.version="";this.checkSlots=()=>{this.hasAppIcon=c(this.el,"app-icon");this.hasAppTitleSlot=c(this.el,"app-title");this.hasNavigation=c(this.el,"navigation");this.hasIconButtons=c(this.el,"buttons");this.hasSearchSlotContent=c(this.el,"search");if(this.hasAppIcon){const t=this.el.querySelector('[slot="app-icon"]');if(t&&t.tagName==="A")t.tabIndex=-1}};this.initialiseSearchBar=()=>{if(!this.hasSearchSlotContent)return;const t=l(this.el,"search");if((t===null||t===void 0?void 0:t.tagName)==="IC-SEARCH-BAR"){this.searchBar=t}else if((t===null||t===void 0?void 0:t.tagName)==="FORM"){this.searchBar=t.querySelector("ic-search-bar")}if(this.searchBar!==null){this.searchBar.hideLabel=true}};this.toggleSearchBar=()=>{var t;this.mobileSearchBarVisible=!this.mobileSearchBarVisible;if(!this.searchBar)return;(t=this.mobileSearchButtonEl)===null||t===void 0?void 0:t.setAttribute("aria-label",`${this.mobileSearchBarVisible?"Hide":"Show"} search`);this.hasFullWidthSearchBar=this.mobileSearchBarVisible;this.searchBar.fullWidth=this.mobileSearchBarVisible;if(this.mobileSearchBarVisible){setTimeout((()=>{var t;(t=this.searchBar)===null||t===void 0?void 0:t.focus()}),100)}};this.menuButtonClick=()=>{this.showNavMenu(true)};this.showNavMenu=t=>{this.navMenuVisible=t;(t?this.icNavigationMenuOpened:this.icNavigationMenuClosed).emit();document.body.style.height=t?"100%":"auto";document.body.style.overflow=t?"hidden":"auto"};this.searchButtonMouseDownHandler=()=>{this.searchButtonClick=true};this.searchButtonClickHandler=()=>{this.toggleSearchBar();this.searchButtonClick=false};this.resizeObserverCallback=t=>{if(t===this.deviceSize)return;this.deviceSize=t;if(t>this.customMobileBreakpoint){this.showNavMenu(false);if(this.mobileSearchBarVisible){this.toggleSearchBar()}}this.icTopNavResized.emit({size:t});if(this.searchBar&&document.activeElement===this.searchBar){this.searchBar.setAttribute("hidden","true");this.searchBar.removeAttribute("hidden");setTimeout((()=>{var t;(t=this.searchBar)===null||t===void 0?void 0:t.focus()}),100)}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.resizeObserverCallback(d())}));this.resizeObserver.observe(this.el)}}watchPropHandler(t,e){h(e,t,this.initialiseSearchBar)}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){this.checkSlots();this.deviceSize=d();this.initialiseSearchBar()}componentDidLoad(){p(this.runResizeObserver);if(!this.hasAppTitleSlot){b([{prop:this.appTitle,propName:"app-title"}],"Top Navigation")}}componentWillRender(){this.checkSlots()}navBarMenuCloseHandler(){var t;this.showNavMenu(false);(t=this.menuButtonEl)===null||t===void 0?void 0:t.setFocus()}searchInputBlurHandler({detail:t}){if(t!==null){if(this.mobileSearchBarVisible&&!this.searchButtonClick){this.toggleSearchBar()}this.searchValue=t.value}}searchValueChangeHandler({detail:t}){this.searchValue=t.value}brandChangeHandler({detail:t}){this.foregroundColor=t.mode}render(){const{appTitle:t,contentAligned:e,customMobileBreakpoint:n,deviceSize:r,el:l,foregroundColor:d,hasAppIcon:h,hasAppTitleSlot:p,hasFullWidthSearchBar:b,hasIconButtons:g,hasNavigation:f,hasSearchSlotContent:y,href:x,inline:k,menuButtonClick:w,mobileSearchBarVisible:z,navMenuVisible:H,searchButtonClickHandler:M,searchButtonMouseDownHandler:C,shortAppTitle:B,status:S,version:T,theme:j}=this;const A=S!=="";const R=T!=="";const $=f||g||A||R;const I=r<=s.S;const N=I?"medium":"large";const V=t!==""&&u(t);const O=r<=n;const D=O?I?"subtitle-small":"h4":"h3";const L=`${z?"Hide":"Show"} search`;const F=I?"small":"medium";const P=c(l,"short-app-title");const W=p?"div":"a";const q=W=="a"&&{href:x};return a(o,{key:"c0c457a694891bb06ad49c6601fb57d83e6ac6c6",class:{"fullwidth-searchbar":b,"mobile-mode":O,[v.Dark]:d===v.Dark,[`ic-theme-${j}`]:j!=="inherit"}},a("div",{key:"fd5f04cfce660e81024b45ebee521d73d42a448d",class:"top-navigation"},a("ic-section-container",{key:"028947110e4a66cccc58659ca164b2938cd7e533",aligned:e,"full-height":true},a("header",{key:"f528842ca7c9fe6a127e53cf7ea0c5af9aeebe79",role:"banner"},a("div",{key:"e23371a5539f686060f624053e8b04a2cef1f860",class:"top-panel-container"},a("div",{key:"25ede4b34cb30ba1d25d3fb06a3f44e48ad4a4c9",class:"app-details-container"},(V||p)&&a(W,Object.assign({key:"666eddef4b8be110a1796083432cd754cda18152",class:"title-link"},q),h&&a("div",{key:"cb7c5cdf6ccc28c5dc5d7699e0332770aa5246f9",class:"app-icon-container"},a("slot",{key:"cd21e969e6fd23594aeb2b31468e81d1d68de7f7",name:"app-icon"})),I&&(!m(B)||P)?a("ic-typography",{variant:"subtitle-small","aria-label":(!p||!P)&&`${t} (${B})`},a("h1",null,P?a("slot",{name:"short-app-title"}):B)):a("ic-typography",{variant:D},a("h1",{class:"title-wrap"},p?a("slot",{name:"app-title"}):t))),A&&a("div",{key:"938a6e6d13bfd92a87baf43934342fb426802d65",class:"app-status"},a("ic-typography",{key:"e3e8e83984ead5be2e4869e67640762af42f5f32","aria-label":"app tag",variant:"label-uppercase",class:"app-status-text"},S)),R&&a("div",{key:"1129e504a1db3af56d2c931e08bd15f992b5721f",class:"app-version"},a("ic-typography",{key:"c6f56458fc5f565055fdb0bde408e6078216d51b",variant:"label",class:"app-version-text","aria-label":"app version"},T))),(y||$)&&a("div",{key:"4523603a02eeb22eca466afc1d2cfa44755b8f17",class:"search-menu-container"},a("div",{key:"77ff191542abaa41c8610418d54922e91268d364",class:"search-actions-container"},!O?a(i,null,a("slot",{name:"search"}),g&&a("div",{class:"icon-buttons-container"},a("slot",{name:"buttons"}))):a(i,null,y&&a("ic-button",{id:"search-toggle-button",ref:t=>this.mobileSearchButtonEl=t,onMouseDown:C,variant:"icon-tertiary",monochrome:true,size:N,"aria-label":L,theme:d,onClick:M},a("slot",{name:"toggle-icon"},a("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"#ffffff"},a("path",{d:"M0 0h24v24H0V0z",fill:"none"}),a("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})))),$&&a("div",{class:"menu-button-container"},a("span",{id:"navigation-landmark-button-text",class:"navigation-landmark-button-text","aria-hidden":"true"},"Main navigation button"),a("nav",{"aria-labelledby":"navigation-landmark-button-text","aria-hidden":`${H}`},a("ic-button",{id:"menu-button",ref:t=>this.menuButtonEl=t,theme:d,variant:"secondary",monochrome:true,"aria-expanded":"false","aria-haspopup":"true","aria-label":`Open ${f?"navigation":"app"} menu`,size:F,onClick:w},"Menu",a("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24px",viewBox:"0 0 24 24",width:"24px",fill:"#ffffff",slot:"left-icon"},a("path",{d:"M0 0h24v24H0V0z",fill:"none"}),a("path",{d:"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"}))))))))),z&&a("div",{key:"e18aab12917ebdfead1c16c9d508c7feaf7797cb",class:"search-bar-container"},a("slot",{key:"4bf9ae342c58629ea76dc7de395128afd695dc8b",name:"search"})),f&&!O&&a("div",{key:"30401c56949e21a33b18166da0ba2b07ad91c3f0",class:"navigation-tabs"},a("span",{key:"72561ee2554f09e0ff33b29fb257e7dde0a99a0f",id:"navigation-landmark-text",class:"navigation-landmark-text","aria-hidden":"true"},"Main pages"),a("nav",{key:"411b215af2ef320d415af6e189a60dce1b730cdf","aria-labelledby":"navigation-landmark-text",class:"nav-panel-container"},a("ic-horizontal-scroll",{key:"fac1019061aeaea2ea8197cc0100a23f0cd1a69d",monochrome:true,appearance:d},a("ul",{key:"b85234906c34f1fa03b56903656d6f18eb20829d",class:"navigation-item-list",tabindex:"-1"},a("slot",{key:"d8ef04882230955d8faba63b13edffeeb969e6e6",name:"navigation"})))))))),H&&a("ic-navigation-menu",{key:"46b00abe99e079c940d24d4e9693c5445ebcbafa",version:T,status:S,class:{inline:k}},g&&a("div",{key:"29a9b4e6ba1733b2e96ad9b886bb879ade662d41",class:"menu-buttons-slot",slot:"buttons"},a("slot",{key:"748b40fd29aedee029a4fa27e999cf9844483613",name:"buttons"})),a("ul",{key:"20b81216ba0c01470673678a14d873fe8cbcaaae",slot:"navigation"},a("slot",{key:"fb9e239a48344888b970e865e103b1ee2f9156ed",name:"navigation"}))))}get el(){return n(this)}static get watchers(){return{appTitle:["watchPropHandler"]}}};y.style=f;export{y as ic_top_navigation};
2
- //# sourceMappingURL=p-57ce68e5.entry.js.map