@ukic/web-components 2.29.1 → 3.0.0-alpha.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (955) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-94b33ab0.js → helpers-f1cf5156.js} +20 -11
  3. package/dist/cjs/helpers-f1cf5156.js.map +1 -0
  4. package/dist/cjs/ic-accordion-group.cjs.entry.js +9 -10
  5. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-accordion.cjs.entry.js +5 -6
  7. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-alert.cjs.entry.js +4 -7
  9. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js +12 -16
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-badge.cjs.entry.js +22 -51
  13. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +26 -14
  15. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-breadcrumb.cjs.entry.js +8 -7
  17. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-button_3.cjs.entry.js +50 -41
  19. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-card-vertical.cjs.entry.js +149 -0
  21. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -0
  22. package/dist/cjs/ic-checkbox-group.cjs.entry.js +7 -7
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-checkbox.cjs.entry.js +6 -16
  25. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-chip.cjs.entry.js +22 -23
  27. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-classification-banner.cjs.entry.js +2 -2
  29. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-data-list.cjs.entry.js +32 -0
  31. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -0
  32. package/dist/cjs/ic-data-row.cjs.entry.js +12 -12
  33. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-dialog.cjs.entry.js +12 -98
  35. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-divider.cjs.entry.js +3 -4
  37. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-empty-state.cjs.entry.js +7 -8
  39. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  40. package/dist/cjs/ic-footer-link-group.cjs.entry.js +9 -10
  41. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-footer-link.cjs.entry.js +6 -8
  43. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-footer.cjs.entry.js +8 -9
  45. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-hero.cjs.entry.js +9 -11
  47. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +5 -6
  49. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +21 -27
  51. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  52. package/dist/cjs/ic-input-label_2.cjs.entry.js +14 -16
  53. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-link.cjs.entry.js +21 -12
  55. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -3
  57. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-menu-item.cjs.entry.js +3 -4
  59. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-navigation-button.cjs.entry.js +3 -4
  61. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-navigation-group.cjs.entry.js +9 -10
  63. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-navigation-item.cjs.entry.js +6 -7
  65. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-navigation-menu.cjs.entry.js +3 -4
  67. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-page-header.cjs.entry.js +8 -10
  69. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-pagination-item.cjs.entry.js +2 -3
  71. package/dist/cjs/ic-pagination-item.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-pagination.cjs.entry.js +33 -32
  73. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-popover-menu.cjs.entry.js +3 -4
  75. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-radio-group.cjs.entry.js +11 -13
  77. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -19
  79. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-search-bar.cjs.entry.js +23 -30
  81. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-select.cjs.entry.js +19 -28
  83. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-side-navigation.cjs.entry.js +7 -8
  85. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-skeleton.cjs.entry.js +5 -6
  87. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-status-tag.cjs.entry.js +6 -15
  89. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-step.cjs.entry.js +41 -46
  91. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-stepper.cjs.entry.js +27 -18
  93. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-switch.cjs.entry.js +7 -9
  95. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-tab-context.cjs.entry.js +34 -28
  97. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-tab-group.cjs.entry.js +25 -11
  99. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-tab-panel.cjs.entry.js +12 -11
  101. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-tab.cjs.entry.js +10 -9
  103. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ic-text-field.cjs.entry.js +55 -57
  105. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  106. package/dist/cjs/ic-theme.cjs.entry.js +27 -4
  107. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ic-toast-region.cjs.entry.js +0 -7
  109. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ic-toast.cjs.entry.js +83 -36
  111. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +17 -17
  113. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ic-toggle-button.cjs.entry.js +14 -15
  115. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ic-top-navigation.cjs.entry.js +8 -9
  117. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  118. package/dist/cjs/ic-typography.cjs.entry.js +9 -8
  119. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  120. package/dist/cjs/index-f982899d.js +12 -12
  121. package/dist/cjs/loader.cjs.js +1 -1
  122. package/dist/collection/collection-manifest.json +3 -3
  123. package/dist/collection/components/ic-accordion/ic-accordion.css +13 -11
  124. package/dist/collection/components/ic-accordion/ic-accordion.js +5 -5
  125. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  126. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +9 -5
  127. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +12 -12
  128. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  129. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +7 -7
  130. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +1 -1
  131. package/dist/collection/components/ic-alert/ic-alert.css +16 -11
  132. package/dist/collection/components/ic-alert/ic-alert.js +0 -19
  133. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  134. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +21 -61
  135. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +10 -13
  136. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  137. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +9 -10
  138. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -1
  139. package/dist/collection/components/ic-badge/ic-badge.css +65 -41
  140. package/dist/collection/components/ic-badge/ic-badge.js +52 -100
  141. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  142. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +40 -50
  143. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +1 -1
  144. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +16 -11
  145. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +54 -31
  146. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  147. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js +3 -3
  148. package/dist/collection/components/ic-breadcrumb/test/basic/ic-breadcrumb.spec.js.map +1 -1
  149. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.css +7 -5
  150. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +66 -33
  151. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  152. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js +3 -3
  153. package/dist/collection/components/ic-breadcrumb-group/test/basic/ic-breadcrumb-group.spec.js.map +1 -1
  154. package/dist/collection/components/ic-button/ic-button.css +263 -238
  155. package/dist/collection/components/ic-button/ic-button.js +16 -18
  156. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  157. package/dist/collection/components/{ic-card/ic-card.css → ic-card-vertical/ic-card-vertical.css} +13 -7
  158. package/dist/collection/components/{ic-card/ic-card.js → ic-card-vertical/ic-card-vertical.js} +5 -5
  159. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -0
  160. package/dist/collection/components/{ic-card/test/basic/ic-card.spec.js → ic-card-vertical/test/basic/ic-card-vertical.spec.js} +41 -41
  161. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +1 -0
  162. package/dist/collection/components/ic-checkbox/ic-checkbox.css +20 -14
  163. package/dist/collection/components/ic-checkbox/ic-checkbox.js +5 -137
  164. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  165. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +6 -4
  166. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +7 -27
  167. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  168. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +2 -2
  169. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -1
  170. package/dist/collection/components/ic-chip/ic-chip.css +66 -53
  171. package/dist/collection/components/ic-chip/ic-chip.js +44 -68
  172. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  173. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +16 -0
  174. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -1
  175. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +28 -10
  176. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +1 -1
  177. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -1
  178. package/dist/collection/components/{ic-data-entity/ic-data-entity.css → ic-data-list/ic-data-list.css} +7 -3
  179. package/dist/collection/components/{ic-data-entity/ic-data-entity.js → ic-data-list/ic-data-list.js} +33 -27
  180. package/dist/collection/components/ic-data-list/ic-data-list.js.map +1 -0
  181. package/dist/collection/components/{ic-data-entity/test/basic/ic-data-entity.spec.js → ic-data-list/test/basic/ic-data-list.spec.js} +32 -32
  182. package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js.map +1 -0
  183. package/dist/collection/components/ic-data-row/ic-data-row.css +6 -3
  184. package/dist/collection/components/ic-data-row/ic-data-row.js +28 -24
  185. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  186. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +4 -4
  187. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +1 -1
  188. package/dist/collection/components/ic-dialog/ic-dialog.css +3 -12
  189. package/dist/collection/components/ic-dialog/ic-dialog.js +11 -214
  190. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  191. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +3 -226
  192. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -1
  193. package/dist/collection/components/ic-divider/ic-divider.css +2 -2
  194. package/dist/collection/components/ic-empty-state/ic-empty-state.css +6 -6
  195. package/dist/collection/components/ic-empty-state/ic-empty-state.js +9 -9
  196. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
  197. package/dist/collection/components/ic-footer/ic-footer.css +16 -9
  198. package/dist/collection/components/ic-footer/ic-footer.js +6 -6
  199. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  200. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +1 -1
  201. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -1
  202. package/dist/collection/components/ic-footer-link/ic-footer-link.css +36 -105
  203. package/dist/collection/components/ic-footer-link/ic-footer-link.js +4 -5
  204. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  205. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +15 -11
  206. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +9 -9
  207. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  208. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +7 -7
  209. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -1
  210. package/dist/collection/components/ic-hero/ic-hero.css +14 -14
  211. package/dist/collection/components/ic-hero/ic-hero.js +11 -33
  212. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  213. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +6 -6
  214. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -1
  215. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +8 -8
  216. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +3 -3
  217. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  218. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +40 -35
  219. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +12 -57
  220. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  221. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +9 -9
  222. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -1
  223. package/dist/collection/components/ic-input-label/ic-input-label.css +7 -7
  224. package/dist/collection/components/ic-input-label/ic-input-label.js +24 -46
  225. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  226. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +4 -4
  227. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -1
  228. package/dist/collection/components/ic-input-validation/ic-input-validation.css +4 -4
  229. package/dist/collection/components/ic-input-validation/ic-input-validation.js +2 -2
  230. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  231. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +4 -4
  232. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +1 -1
  233. package/dist/collection/components/ic-link/ic-link.css +101 -45
  234. package/dist/collection/components/ic-link/ic-link.js +57 -49
  235. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  236. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +16 -111
  237. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -1
  238. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +23 -16
  239. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +73 -50
  240. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  241. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.types.js.map +1 -1
  242. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js +3 -2
  243. package/dist/collection/components/ic-loading-indicator/test/basic/ic-loading-indicator.spec.js.map +1 -1
  244. package/dist/collection/components/ic-menu/ic-menu.css +27 -16
  245. package/dist/collection/components/ic-menu/ic-menu.js +9 -32
  246. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  247. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +1 -1
  248. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -1
  249. package/dist/collection/components/ic-menu-group/ic-menu-group.css +2 -1
  250. package/dist/collection/components/ic-menu-item/ic-menu-item.css +51 -36
  251. package/dist/collection/components/ic-menu-item/ic-menu-item.js +1 -1
  252. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  253. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +1 -1
  254. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  255. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +14 -12
  256. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +7 -7
  257. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  258. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +10 -7
  259. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +4 -4
  260. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  261. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.css +7 -2
  262. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +1 -1
  263. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  264. package/dist/collection/components/ic-page-header/ic-page-header.css +2 -2
  265. package/dist/collection/components/ic-page-header/ic-page-header.js +8 -30
  266. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  267. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +15 -15
  268. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +1 -1
  269. package/dist/collection/components/ic-pagination/ic-pagination.js +38 -36
  270. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  271. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +26 -26
  272. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -1
  273. package/dist/collection/components/ic-pagination-item/ic-pagination-item.css +13 -10
  274. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +8 -4
  275. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +1 -1
  276. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  277. package/dist/collection/components/ic-radio-group/ic-radio-group.css +5 -5
  278. package/dist/collection/components/ic-radio-group/ic-radio-group.js +12 -34
  279. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  280. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +1 -1
  281. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -1
  282. package/dist/collection/components/ic-radio-option/ic-radio-option.css +11 -8
  283. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -126
  284. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  285. package/dist/collection/components/ic-search-bar/ic-search-bar.css +11 -11
  286. package/dist/collection/components/ic-search-bar/ic-search-bar.js +32 -99
  287. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  288. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +15 -15
  289. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -1
  290. package/dist/collection/components/ic-select/ic-select.css +23 -21
  291. package/dist/collection/components/ic-select/ic-select.js +16 -151
  292. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  293. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +6 -6
  294. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -1
  295. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +18 -17
  296. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +6 -6
  297. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  298. package/dist/collection/components/ic-skeleton/ic-skeleton.css +5 -28
  299. package/dist/collection/components/ic-skeleton/ic-skeleton.js +17 -33
  300. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  301. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +1 -1
  302. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +1 -1
  303. package/dist/collection/components/ic-status-tag/ic-status-tag.css +20 -17
  304. package/dist/collection/components/ic-status-tag/ic-status-tag.js +24 -61
  305. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  306. package/dist/collection/components/ic-status-tag/ic-status-tag.types.js.map +1 -1
  307. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js +2 -2
  308. package/dist/collection/components/ic-status-tag/test/basic/ic-status-tag.spec.js.map +1 -1
  309. package/dist/collection/components/ic-step/ic-step.css +97 -128
  310. package/dist/collection/components/ic-step/ic-step.js +77 -54
  311. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  312. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +30 -30
  313. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +1 -1
  314. package/dist/collection/components/ic-stepper/ic-stepper.css +4 -4
  315. package/dist/collection/components/ic-stepper/ic-stepper.js +51 -33
  316. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  317. package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js +37 -37
  318. package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js.map +1 -1
  319. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +237 -237
  320. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -1
  321. package/dist/collection/components/ic-switch/ic-switch.css +2 -2
  322. package/dist/collection/components/ic-switch/ic-switch.js +7 -29
  323. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  324. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +1 -1
  325. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -1
  326. package/dist/collection/components/ic-tab/ic-tab.css +47 -21
  327. package/dist/collection/components/ic-tab/ic-tab.js +56 -34
  328. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  329. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +2 -2
  330. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -1
  331. package/dist/collection/components/ic-tab-context/ic-tab-context.js +79 -76
  332. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  333. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +3 -3
  334. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -1
  335. package/dist/collection/components/ic-tab-group/ic-tab-group.css +7 -8
  336. package/dist/collection/components/ic-tab-group/ic-tab-group.js +68 -54
  337. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  338. package/dist/collection/components/ic-tab-panel/ic-tab-panel.css +2 -2
  339. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +91 -30
  340. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  341. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +50 -0
  342. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +1 -0
  343. package/dist/collection/components/ic-text-field/ic-text-field.css +15 -9
  344. package/dist/collection/components/ic-text-field/ic-text-field.js +70 -111
  345. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  346. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +36 -14
  347. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -1
  348. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +57 -56
  349. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -1
  350. package/dist/collection/components/ic-theme/ic-theme.js +50 -2
  351. package/dist/collection/components/ic-theme/ic-theme.js.map +1 -1
  352. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js +13 -11
  353. package/dist/collection/components/ic-theme/test/basic/ic-theme.spec.js.map +1 -1
  354. package/dist/collection/components/ic-toast/ic-toast.css +21 -7
  355. package/dist/collection/components/ic-toast/ic-toast.js +83 -32
  356. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  357. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +43 -7
  358. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
  359. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -43
  360. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
  361. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +0 -20
  362. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +1 -1
  363. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +58 -51
  364. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +16 -16
  365. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  366. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +4 -4
  367. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +1 -1
  368. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +11 -8
  369. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +18 -18
  370. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  371. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.types.js.map +1 -1
  372. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +19 -19
  373. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
  374. package/dist/collection/components/ic-tooltip/ic-tooltip.css +14 -5
  375. package/dist/collection/components/ic-tooltip/ic-tooltip.js +30 -2
  376. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  377. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js +14 -0
  378. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.spec.js.map +1 -1
  379. package/dist/collection/components/ic-top-navigation/ic-top-navigation.css +9 -7
  380. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +6 -6
  381. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  382. package/dist/collection/components/ic-typography/ic-typography.css +12 -6
  383. package/dist/collection/components/ic-typography/ic-typography.js +31 -5
  384. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  385. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +14 -0
  386. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +1 -1
  387. package/dist/collection/utils/types.js.map +1 -1
  388. package/dist/components/helpers.js +13 -2
  389. package/dist/components/helpers.js.map +1 -1
  390. package/dist/components/ic-accordion-group.js +9 -9
  391. package/dist/components/ic-accordion-group.js.map +1 -1
  392. package/dist/components/ic-accordion.js +4 -4
  393. package/dist/components/ic-accordion.js.map +1 -1
  394. package/dist/components/ic-alert.js +132 -1
  395. package/dist/components/ic-alert.js.map +1 -1
  396. package/dist/components/ic-back-to-top.js +24 -15
  397. package/dist/components/ic-back-to-top.js.map +1 -1
  398. package/dist/components/ic-badge.js +25 -54
  399. package/dist/components/ic-badge.js.map +1 -1
  400. package/dist/components/ic-breadcrumb-group.js +31 -16
  401. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  402. package/dist/components/ic-breadcrumb2.js +10 -7
  403. package/dist/components/ic-breadcrumb2.js.map +1 -1
  404. package/dist/components/ic-button2.js +16 -18
  405. package/dist/components/ic-button2.js.map +1 -1
  406. package/dist/components/{ic-data-entity.d.ts → ic-card-vertical.d.ts} +4 -4
  407. package/dist/components/{ic-card.js → ic-card-vertical.js} +11 -12
  408. package/dist/components/ic-card-vertical.js.map +1 -0
  409. package/dist/components/ic-checkbox-group.js +7 -7
  410. package/dist/components/ic-checkbox-group.js.map +1 -1
  411. package/dist/components/ic-checkbox.js +6 -21
  412. package/dist/components/ic-checkbox.js.map +1 -1
  413. package/dist/components/ic-chip.js +24 -23
  414. package/dist/components/ic-chip.js.map +1 -1
  415. package/dist/components/ic-classification-banner.js +2 -2
  416. package/dist/components/ic-classification-banner.js.map +1 -1
  417. package/dist/components/{ic-card.d.ts → ic-data-list.d.ts} +4 -4
  418. package/dist/components/ic-data-list.js +56 -0
  419. package/dist/components/ic-data-list.js.map +1 -0
  420. package/dist/components/ic-data-row.js +14 -13
  421. package/dist/components/ic-data-row.js.map +1 -1
  422. package/dist/components/ic-dialog.js +14 -112
  423. package/dist/components/ic-dialog.js.map +1 -1
  424. package/dist/components/ic-divider2.js +2 -3
  425. package/dist/components/ic-divider2.js.map +1 -1
  426. package/dist/components/ic-empty-state.js +7 -7
  427. package/dist/components/ic-empty-state.js.map +1 -1
  428. package/dist/components/ic-footer-link-group.js +10 -10
  429. package/dist/components/ic-footer-link-group.js.map +1 -1
  430. package/dist/components/ic-footer-link.js +13 -8
  431. package/dist/components/ic-footer-link.js.map +1 -1
  432. package/dist/components/ic-footer.js +8 -9
  433. package/dist/components/ic-footer.js.map +1 -1
  434. package/dist/components/ic-hero.js +9 -12
  435. package/dist/components/ic-hero.js.map +1 -1
  436. package/dist/components/ic-horizontal-scroll2.js +5 -6
  437. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  438. package/dist/components/ic-input-component-container2.js +12 -18
  439. package/dist/components/ic-input-component-container2.js.map +1 -1
  440. package/dist/components/ic-input-label2.js +10 -12
  441. package/dist/components/ic-input-label2.js.map +1 -1
  442. package/dist/components/ic-input-validation2.js +4 -5
  443. package/dist/components/ic-input-validation2.js.map +1 -1
  444. package/dist/components/ic-link2.js +22 -13
  445. package/dist/components/ic-link2.js.map +1 -1
  446. package/dist/components/ic-loading-indicator2.js +29 -23
  447. package/dist/components/ic-loading-indicator2.js.map +1 -1
  448. package/dist/components/ic-menu-group.js +2 -2
  449. package/dist/components/ic-menu-group.js.map +1 -1
  450. package/dist/components/ic-menu-item2.js +3 -3
  451. package/dist/components/ic-menu-item2.js.map +1 -1
  452. package/dist/components/ic-menu2.js +8 -11
  453. package/dist/components/ic-menu2.js.map +1 -1
  454. package/dist/components/ic-navigation-button.js +2 -3
  455. package/dist/components/ic-navigation-button.js.map +1 -1
  456. package/dist/components/ic-navigation-group.js +9 -9
  457. package/dist/components/ic-navigation-group.js.map +1 -1
  458. package/dist/components/ic-navigation-item.js +6 -6
  459. package/dist/components/ic-navigation-item.js.map +1 -1
  460. package/dist/components/ic-navigation-menu2.js +3 -3
  461. package/dist/components/ic-navigation-menu2.js.map +1 -1
  462. package/dist/components/ic-page-header.js +8 -10
  463. package/dist/components/ic-page-header.js.map +1 -1
  464. package/dist/components/ic-pagination-item2.js +2 -2
  465. package/dist/components/ic-pagination-item2.js.map +1 -1
  466. package/dist/components/ic-pagination.js +36 -34
  467. package/dist/components/ic-pagination.js.map +1 -1
  468. package/dist/components/ic-popover-menu.js +3 -3
  469. package/dist/components/ic-popover-menu.js.map +1 -1
  470. package/dist/components/ic-radio-group.js +11 -13
  471. package/dist/components/ic-radio-group.js.map +1 -1
  472. package/dist/components/ic-radio-option.js +6 -25
  473. package/dist/components/ic-radio-option.js.map +1 -1
  474. package/dist/components/ic-search-bar.js +21 -29
  475. package/dist/components/ic-search-bar.js.map +1 -1
  476. package/dist/components/ic-select.js +15 -31
  477. package/dist/components/ic-select.js.map +1 -1
  478. package/dist/components/ic-side-navigation.js +7 -8
  479. package/dist/components/ic-side-navigation.js.map +1 -1
  480. package/dist/components/ic-skeleton.js +6 -8
  481. package/dist/components/ic-skeleton.js.map +1 -1
  482. package/dist/components/ic-status-tag.js +6 -15
  483. package/dist/components/ic-status-tag.js.map +1 -1
  484. package/dist/components/ic-step.js +48 -51
  485. package/dist/components/ic-step.js.map +1 -1
  486. package/dist/components/ic-stepper.js +28 -17
  487. package/dist/components/ic-stepper.js.map +1 -1
  488. package/dist/components/ic-switch.js +7 -9
  489. package/dist/components/ic-switch.js.map +1 -1
  490. package/dist/components/ic-tab-context.js +39 -31
  491. package/dist/components/ic-tab-context.js.map +1 -1
  492. package/dist/components/ic-tab-group.js +27 -13
  493. package/dist/components/ic-tab-group.js.map +1 -1
  494. package/dist/components/ic-tab-panel.js +17 -13
  495. package/dist/components/ic-tab-panel.js.map +1 -1
  496. package/dist/components/ic-tab.js +11 -9
  497. package/dist/components/ic-tab.js.map +1 -1
  498. package/dist/components/ic-text-field2.js +52 -57
  499. package/dist/components/ic-text-field2.js.map +1 -1
  500. package/dist/components/ic-theme.js +33 -7
  501. package/dist/components/ic-theme.js.map +1 -1
  502. package/dist/components/ic-toast-region.js +1 -9
  503. package/dist/components/ic-toast-region.js.map +1 -1
  504. package/dist/components/ic-toast.js +86 -37
  505. package/dist/components/ic-toast.js.map +1 -1
  506. package/dist/components/ic-toggle-button-group.js +17 -17
  507. package/dist/components/ic-toggle-button-group.js.map +1 -1
  508. package/dist/components/ic-toggle-button.js +14 -14
  509. package/dist/components/ic-toggle-button.js.map +1 -1
  510. package/dist/components/ic-tooltip2.js +8 -3
  511. package/dist/components/ic-tooltip2.js.map +1 -1
  512. package/dist/components/ic-top-navigation.js +7 -8
  513. package/dist/components/ic-top-navigation.js.map +1 -1
  514. package/dist/components/ic-typography2.js +9 -6
  515. package/dist/components/ic-typography2.js.map +1 -1
  516. package/dist/core/core.css +101 -29
  517. package/dist/core/core.esm.js +1 -1
  518. package/dist/core/core.esm.js.map +1 -1
  519. package/dist/core/p-0a808ec3.entry.js +2 -0
  520. package/dist/core/p-0a808ec3.entry.js.map +1 -0
  521. package/dist/core/p-0c872824.entry.js +2 -0
  522. package/dist/core/p-0c872824.entry.js.map +1 -0
  523. package/dist/core/p-0d30ffab.entry.js +2 -0
  524. package/dist/core/p-0d30ffab.entry.js.map +1 -0
  525. package/dist/core/p-0fb047e7.entry.js +2 -0
  526. package/dist/core/p-0fb047e7.entry.js.map +1 -0
  527. package/dist/core/p-1684c8d4.entry.js +2 -0
  528. package/dist/core/p-1684c8d4.entry.js.map +1 -0
  529. package/dist/core/p-1b573920.entry.js +2 -0
  530. package/dist/core/p-1b573920.entry.js.map +1 -0
  531. package/dist/core/p-1f1758a9.entry.js +2 -0
  532. package/dist/core/p-1f1758a9.entry.js.map +1 -0
  533. package/dist/core/p-21e5dd29.entry.js +2 -0
  534. package/dist/core/p-21e5dd29.entry.js.map +1 -0
  535. package/dist/core/p-244d6dba.entry.js +2 -0
  536. package/dist/core/p-244d6dba.entry.js.map +1 -0
  537. package/dist/core/{p-7438ab1f.entry.js → p-26bc7c62.entry.js} +2 -2
  538. package/dist/core/p-26bc7c62.entry.js.map +1 -0
  539. package/dist/core/{p-3eda4e14.entry.js → p-27274ca8.entry.js} +2 -2
  540. package/dist/core/p-27274ca8.entry.js.map +1 -0
  541. package/dist/core/p-312cacae.js +2 -0
  542. package/dist/core/p-312cacae.js.map +1 -0
  543. package/dist/core/p-31fc8756.entry.js +2 -0
  544. package/dist/core/p-31fc8756.entry.js.map +1 -0
  545. package/dist/core/p-322edabc.entry.js +2 -0
  546. package/dist/core/p-322edabc.entry.js.map +1 -0
  547. package/dist/core/p-34db8aaf.entry.js +2 -0
  548. package/dist/core/p-34db8aaf.entry.js.map +1 -0
  549. package/dist/core/p-355acffa.entry.js +2 -0
  550. package/dist/core/p-355acffa.entry.js.map +1 -0
  551. package/dist/core/p-363d6e88.entry.js +2 -0
  552. package/dist/core/p-363d6e88.entry.js.map +1 -0
  553. package/dist/core/{p-3969d3c0.entry.js → p-3ea4a005.entry.js} +2 -2
  554. package/dist/core/p-3ea4a005.entry.js.map +1 -0
  555. package/dist/core/p-4055f22c.entry.js +2 -0
  556. package/dist/core/p-4055f22c.entry.js.map +1 -0
  557. package/dist/core/p-408344d3.entry.js +2 -0
  558. package/dist/core/p-408344d3.entry.js.map +1 -0
  559. package/dist/core/p-40e9e76a.entry.js +2 -0
  560. package/dist/core/p-40e9e76a.entry.js.map +1 -0
  561. package/dist/core/p-43f9a711.entry.js +2 -0
  562. package/dist/core/p-43f9a711.entry.js.map +1 -0
  563. package/dist/core/p-4502d3c1.entry.js +2 -0
  564. package/dist/core/p-4502d3c1.entry.js.map +1 -0
  565. package/dist/core/p-49525194.entry.js +2 -0
  566. package/dist/core/p-49525194.entry.js.map +1 -0
  567. package/dist/core/p-4ff6d16f.entry.js +2 -0
  568. package/dist/core/p-4ff6d16f.entry.js.map +1 -0
  569. package/dist/core/p-50ead56c.entry.js +2 -0
  570. package/dist/core/p-50ead56c.entry.js.map +1 -0
  571. package/dist/core/p-5deb9730.entry.js +2 -0
  572. package/dist/core/p-5deb9730.entry.js.map +1 -0
  573. package/dist/core/p-60efd7fa.entry.js +2 -0
  574. package/dist/core/{p-223889da.entry.js.map → p-60efd7fa.entry.js.map} +1 -1
  575. package/dist/core/p-6bd2e938.entry.js +2 -0
  576. package/dist/core/p-6bd2e938.entry.js.map +1 -0
  577. package/dist/core/p-6d40baa9.entry.js +2 -0
  578. package/dist/core/p-6d40baa9.entry.js.map +1 -0
  579. package/dist/core/p-7c89fc86.entry.js +2 -0
  580. package/dist/core/p-7c89fc86.entry.js.map +1 -0
  581. package/dist/core/p-82375dca.entry.js +2 -0
  582. package/dist/core/p-82375dca.entry.js.map +1 -0
  583. package/dist/core/p-84526c3e.entry.js +2 -0
  584. package/dist/core/p-84526c3e.entry.js.map +1 -0
  585. package/dist/core/p-93c23a35.entry.js +2 -0
  586. package/dist/core/p-93c23a35.entry.js.map +1 -0
  587. package/dist/core/p-9dba6823.entry.js +2 -0
  588. package/dist/core/p-9dba6823.entry.js.map +1 -0
  589. package/dist/core/p-aa0619ce.entry.js +2 -0
  590. package/dist/core/p-aa0619ce.entry.js.map +1 -0
  591. package/dist/core/p-aab2c7aa.entry.js +2 -0
  592. package/dist/core/p-aab2c7aa.entry.js.map +1 -0
  593. package/dist/core/p-af20322c.entry.js +2 -0
  594. package/dist/core/p-af20322c.entry.js.map +1 -0
  595. package/dist/core/{p-6fae7e1f.entry.js → p-b01ffa55.entry.js} +2 -2
  596. package/dist/core/p-b01ffa55.entry.js.map +1 -0
  597. package/dist/core/p-bf1f0ac7.entry.js +2 -0
  598. package/dist/core/p-bf1f0ac7.entry.js.map +1 -0
  599. package/dist/core/{p-9df32798.entry.js → p-c06a3b97.entry.js} +2 -2
  600. package/dist/core/p-c06a3b97.entry.js.map +1 -0
  601. package/dist/core/p-c86d48b6.entry.js +2 -0
  602. package/dist/core/p-c86d48b6.entry.js.map +1 -0
  603. package/dist/core/p-cbcd4427.entry.js +2 -0
  604. package/dist/core/p-cbcd4427.entry.js.map +1 -0
  605. package/dist/core/p-d1c9c32b.entry.js +2 -0
  606. package/dist/core/p-d1c9c32b.entry.js.map +1 -0
  607. package/dist/core/p-d2f89cb5.entry.js +2 -0
  608. package/dist/core/p-d2f89cb5.entry.js.map +1 -0
  609. package/dist/core/p-d2f8e03f.entry.js +2 -0
  610. package/dist/core/p-d2f8e03f.entry.js.map +1 -0
  611. package/dist/core/p-d58a10ec.entry.js +2 -0
  612. package/dist/core/p-d58a10ec.entry.js.map +1 -0
  613. package/dist/core/p-d8870804.entry.js +2 -0
  614. package/dist/core/p-d8870804.entry.js.map +1 -0
  615. package/dist/core/p-da14cd3c.entry.js +2 -0
  616. package/dist/core/p-da14cd3c.entry.js.map +1 -0
  617. package/dist/core/p-dc83a0e9.entry.js +2 -0
  618. package/dist/core/p-dc83a0e9.entry.js.map +1 -0
  619. package/dist/core/p-de3a5423.entry.js +2 -0
  620. package/dist/core/p-de3a5423.entry.js.map +1 -0
  621. package/dist/core/p-e3ed9110.entry.js +2 -0
  622. package/dist/core/p-e3ed9110.entry.js.map +1 -0
  623. package/dist/core/p-e4b276b5.entry.js +2 -0
  624. package/dist/core/p-e4b276b5.entry.js.map +1 -0
  625. package/dist/core/p-e53309b0.entry.js +2 -0
  626. package/dist/core/p-e53309b0.entry.js.map +1 -0
  627. package/dist/core/p-f30f3a3e.entry.js +2 -0
  628. package/dist/core/p-f30f3a3e.entry.js.map +1 -0
  629. package/dist/core/p-f38bce8d.entry.js +2 -0
  630. package/dist/core/p-f38bce8d.entry.js.map +1 -0
  631. package/dist/core/p-f828a6e1.entry.js +2 -0
  632. package/dist/core/p-f828a6e1.entry.js.map +1 -0
  633. package/dist/core/p-fa1b7a80.entry.js +2 -0
  634. package/dist/core/p-fa1b7a80.entry.js.map +1 -0
  635. package/dist/core/p-fa587e6d.entry.js +2 -0
  636. package/dist/core/p-fa587e6d.entry.js.map +1 -0
  637. package/dist/esm/core.js +1 -1
  638. package/dist/esm/{helpers-3905ccc4.js → helpers-1c9151ef.js} +14 -3
  639. package/dist/esm/helpers-1c9151ef.js.map +1 -0
  640. package/dist/esm/ic-accordion-group.entry.js +9 -10
  641. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  642. package/dist/esm/ic-accordion.entry.js +5 -6
  643. package/dist/esm/ic-accordion.entry.js.map +1 -1
  644. package/dist/esm/ic-alert.entry.js +2 -5
  645. package/dist/esm/ic-alert.entry.js.map +1 -1
  646. package/dist/esm/ic-back-to-top.entry.js +12 -16
  647. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  648. package/dist/esm/ic-badge.entry.js +22 -51
  649. package/dist/esm/ic-badge.entry.js.map +1 -1
  650. package/dist/esm/ic-breadcrumb-group.entry.js +26 -14
  651. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  652. package/dist/esm/ic-breadcrumb.entry.js +8 -7
  653. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  654. package/dist/esm/ic-button_3.entry.js +49 -40
  655. package/dist/esm/ic-button_3.entry.js.map +1 -1
  656. package/dist/esm/ic-card-vertical.entry.js +145 -0
  657. package/dist/esm/ic-card-vertical.entry.js.map +1 -0
  658. package/dist/esm/ic-checkbox-group.entry.js +7 -7
  659. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  660. package/dist/esm/ic-checkbox.entry.js +6 -16
  661. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  662. package/dist/esm/ic-chip.entry.js +23 -24
  663. package/dist/esm/ic-chip.entry.js.map +1 -1
  664. package/dist/esm/ic-classification-banner.entry.js +2 -2
  665. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  666. package/dist/esm/ic-data-list.entry.js +28 -0
  667. package/dist/esm/ic-data-list.entry.js.map +1 -0
  668. package/dist/esm/ic-data-row.entry.js +12 -12
  669. package/dist/esm/ic-data-row.entry.js.map +1 -1
  670. package/dist/esm/ic-dialog.entry.js +12 -98
  671. package/dist/esm/ic-dialog.entry.js.map +1 -1
  672. package/dist/esm/ic-divider.entry.js +2 -3
  673. package/dist/esm/ic-divider.entry.js.map +1 -1
  674. package/dist/esm/ic-empty-state.entry.js +7 -8
  675. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  676. package/dist/esm/ic-footer-link-group.entry.js +9 -10
  677. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  678. package/dist/esm/ic-footer-link.entry.js +6 -8
  679. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  680. package/dist/esm/ic-footer.entry.js +8 -9
  681. package/dist/esm/ic-footer.entry.js.map +1 -1
  682. package/dist/esm/ic-hero.entry.js +9 -11
  683. package/dist/esm/ic-hero.entry.js.map +1 -1
  684. package/dist/esm/ic-horizontal-scroll.entry.js +5 -6
  685. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  686. package/dist/esm/ic-input-component-container_3.entry.js +20 -26
  687. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  688. package/dist/esm/ic-input-label_2.entry.js +11 -13
  689. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  690. package/dist/esm/ic-link.entry.js +20 -11
  691. package/dist/esm/ic-link.entry.js.map +1 -1
  692. package/dist/esm/ic-menu-group.entry.js +2 -3
  693. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  694. package/dist/esm/ic-menu-item.entry.js +3 -4
  695. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  696. package/dist/esm/ic-navigation-button.entry.js +2 -3
  697. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  698. package/dist/esm/ic-navigation-group.entry.js +9 -10
  699. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  700. package/dist/esm/ic-navigation-item.entry.js +6 -7
  701. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  702. package/dist/esm/ic-navigation-menu.entry.js +3 -4
  703. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  704. package/dist/esm/ic-page-header.entry.js +8 -10
  705. package/dist/esm/ic-page-header.entry.js.map +1 -1
  706. package/dist/esm/ic-pagination-item.entry.js +2 -3
  707. package/dist/esm/ic-pagination-item.entry.js.map +1 -1
  708. package/dist/esm/ic-pagination.entry.js +33 -32
  709. package/dist/esm/ic-pagination.entry.js.map +1 -1
  710. package/dist/esm/ic-popover-menu.entry.js +3 -4
  711. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  712. package/dist/esm/ic-radio-group.entry.js +11 -13
  713. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  714. package/dist/esm/ic-radio-option.entry.js +5 -19
  715. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  716. package/dist/esm/ic-search-bar.entry.js +19 -26
  717. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  718. package/dist/esm/ic-select.entry.js +14 -23
  719. package/dist/esm/ic-select.entry.js.map +1 -1
  720. package/dist/esm/ic-side-navigation.entry.js +7 -8
  721. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  722. package/dist/esm/ic-skeleton.entry.js +5 -6
  723. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  724. package/dist/esm/ic-status-tag.entry.js +6 -15
  725. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  726. package/dist/esm/ic-step.entry.js +41 -46
  727. package/dist/esm/ic-step.entry.js.map +1 -1
  728. package/dist/esm/ic-stepper.entry.js +27 -18
  729. package/dist/esm/ic-stepper.entry.js.map +1 -1
  730. package/dist/esm/ic-switch.entry.js +7 -9
  731. package/dist/esm/ic-switch.entry.js.map +1 -1
  732. package/dist/esm/ic-tab-context.entry.js +34 -28
  733. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  734. package/dist/esm/ic-tab-group.entry.js +25 -11
  735. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  736. package/dist/esm/ic-tab-panel.entry.js +12 -11
  737. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  738. package/dist/esm/ic-tab.entry.js +10 -9
  739. package/dist/esm/ic-tab.entry.js.map +1 -1
  740. package/dist/esm/ic-text-field.entry.js +50 -52
  741. package/dist/esm/ic-text-field.entry.js.map +1 -1
  742. package/dist/esm/ic-theme.entry.js +27 -4
  743. package/dist/esm/ic-theme.entry.js.map +1 -1
  744. package/dist/esm/ic-toast-region.entry.js +0 -7
  745. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  746. package/dist/esm/ic-toast.entry.js +83 -36
  747. package/dist/esm/ic-toast.entry.js.map +1 -1
  748. package/dist/esm/ic-toggle-button-group.entry.js +17 -17
  749. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  750. package/dist/esm/ic-toggle-button.entry.js +14 -15
  751. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  752. package/dist/esm/ic-top-navigation.entry.js +7 -8
  753. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  754. package/dist/esm/ic-typography.entry.js +9 -8
  755. package/dist/esm/ic-typography.entry.js.map +1 -1
  756. package/dist/esm/index-d1d2c456.js +12 -12
  757. package/dist/esm/loader.js +1 -1
  758. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +2 -2
  759. package/dist/types/components/ic-alert/ic-alert.d.ts +0 -4
  760. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +0 -1
  761. package/dist/types/components/ic-badge/ic-badge.d.ts +8 -15
  762. package/dist/types/components/ic-breadcrumb/ic-breadcrumb.d.ts +9 -5
  763. package/dist/types/components/ic-breadcrumb-group/ic-breadcrumb-group.d.ts +13 -7
  764. package/dist/types/components/ic-button/ic-button.d.ts +0 -1
  765. package/dist/types/components/{ic-card/ic-card.d.ts → ic-card-vertical/ic-card-vertical.d.ts} +2 -2
  766. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +0 -28
  767. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +0 -4
  768. package/dist/types/components/ic-chip/ic-chip.d.ts +8 -11
  769. package/dist/types/components/ic-data-list/ic-data-list.d.ts +20 -0
  770. package/dist/types/components/ic-data-row/ic-data-row.d.ts +4 -4
  771. package/dist/types/components/ic-dialog/ic-dialog.d.ts +1 -37
  772. package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +1 -1
  773. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +1 -1
  774. package/dist/types/components/ic-hero/ic-hero.d.ts +2 -6
  775. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +0 -8
  776. package/dist/types/components/ic-input-label/ic-input-label.d.ts +4 -8
  777. package/dist/types/components/ic-link/ic-link.d.ts +9 -9
  778. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +12 -8
  779. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.types.d.ts +1 -1
  780. package/dist/types/components/ic-menu/ic-menu.d.ts +0 -4
  781. package/dist/types/components/ic-page-header/ic-page-header.d.ts +0 -4
  782. package/dist/types/components/ic-pagination/ic-pagination.d.ts +4 -4
  783. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +0 -4
  784. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +0 -24
  785. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +3 -15
  786. package/dist/types/components/ic-select/ic-select.d.ts +1 -31
  787. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +1 -1
  788. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +3 -6
  789. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +5 -10
  790. package/dist/types/components/ic-status-tag/ic-status-tag.types.d.ts +0 -1
  791. package/dist/types/components/ic-step/ic-step.d.ts +11 -6
  792. package/dist/types/components/ic-stepper/ic-stepper.d.ts +6 -4
  793. package/dist/types/components/ic-stepper/test/basic/ic-stepper-test-examples.d.ts +4 -4
  794. package/dist/types/components/ic-switch/ic-switch.d.ts +0 -4
  795. package/dist/types/components/ic-tab/ic-tab.d.ts +5 -3
  796. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +11 -11
  797. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +9 -10
  798. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +13 -7
  799. package/dist/types/components/ic-text-field/ic-text-field.d.ts +7 -16
  800. package/dist/types/components/ic-theme/ic-theme.d.ts +7 -0
  801. package/dist/types/components/ic-toast/ic-toast.d.ts +8 -1
  802. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +0 -5
  803. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +1 -1
  804. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.types.d.ts +1 -1
  805. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +5 -0
  806. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +1 -1
  807. package/dist/types/components/ic-typography/ic-typography.d.ts +5 -1
  808. package/dist/types/components.d.ts +264 -562
  809. package/dist/types/utils/types.d.ts +4 -3
  810. package/hydrate/index.js +826 -887
  811. package/package.json +2 -2
  812. package/vscode-data.json +298 -347
  813. package/dist/cjs/helpers-94b33ab0.js.map +0 -1
  814. package/dist/cjs/ic-card.cjs.entry.js +0 -150
  815. package/dist/cjs/ic-card.cjs.entry.js.map +0 -1
  816. package/dist/cjs/ic-data-entity.cjs.entry.js +0 -29
  817. package/dist/cjs/ic-data-entity.cjs.entry.js.map +0 -1
  818. package/dist/cjs/types-dc22e301.js +0 -16
  819. package/dist/cjs/types-dc22e301.js.map +0 -1
  820. package/dist/collection/components/ic-card/ic-card.js.map +0 -1
  821. package/dist/collection/components/ic-card/test/basic/ic-card.spec.js.map +0 -1
  822. package/dist/collection/components/ic-chip/ic-chip.types.js +0 -2
  823. package/dist/collection/components/ic-chip/ic-chip.types.js.map +0 -1
  824. package/dist/collection/components/ic-data-entity/ic-data-entity.js.map +0 -1
  825. package/dist/collection/components/ic-data-entity/test/basic/ic-data-entity.spec.js.map +0 -1
  826. package/dist/components/ic-alert2.js +0 -139
  827. package/dist/components/ic-alert2.js.map +0 -1
  828. package/dist/components/ic-card.js.map +0 -1
  829. package/dist/components/ic-data-entity.js +0 -53
  830. package/dist/components/ic-data-entity.js.map +0 -1
  831. package/dist/components/types.js +0 -16
  832. package/dist/components/types.js.map +0 -1
  833. package/dist/core/p-02262e76.entry.js +0 -2
  834. package/dist/core/p-02262e76.entry.js.map +0 -1
  835. package/dist/core/p-03f23a55.entry.js +0 -2
  836. package/dist/core/p-03f23a55.entry.js.map +0 -1
  837. package/dist/core/p-0432d31a.entry.js +0 -2
  838. package/dist/core/p-0432d31a.entry.js.map +0 -1
  839. package/dist/core/p-093600a2.entry.js +0 -2
  840. package/dist/core/p-093600a2.entry.js.map +0 -1
  841. package/dist/core/p-13a6e7ea.entry.js +0 -2
  842. package/dist/core/p-13a6e7ea.entry.js.map +0 -1
  843. package/dist/core/p-13ec2a00.entry.js +0 -2
  844. package/dist/core/p-13ec2a00.entry.js.map +0 -1
  845. package/dist/core/p-1ae6aadb.entry.js +0 -2
  846. package/dist/core/p-1ae6aadb.entry.js.map +0 -1
  847. package/dist/core/p-1d648b98.entry.js +0 -2
  848. package/dist/core/p-1d648b98.entry.js.map +0 -1
  849. package/dist/core/p-1d6e6ebe.entry.js +0 -2
  850. package/dist/core/p-1d6e6ebe.entry.js.map +0 -1
  851. package/dist/core/p-223889da.entry.js +0 -2
  852. package/dist/core/p-230187a8.entry.js +0 -2
  853. package/dist/core/p-230187a8.entry.js.map +0 -1
  854. package/dist/core/p-26b7b18f.js +0 -2
  855. package/dist/core/p-26b7b18f.js.map +0 -1
  856. package/dist/core/p-2889cc17.entry.js +0 -2
  857. package/dist/core/p-2889cc17.entry.js.map +0 -1
  858. package/dist/core/p-2d930c9c.entry.js +0 -2
  859. package/dist/core/p-2d930c9c.entry.js.map +0 -1
  860. package/dist/core/p-3969d3c0.entry.js.map +0 -1
  861. package/dist/core/p-3af60dee.entry.js +0 -2
  862. package/dist/core/p-3af60dee.entry.js.map +0 -1
  863. package/dist/core/p-3b4c9571.entry.js +0 -2
  864. package/dist/core/p-3b4c9571.entry.js.map +0 -1
  865. package/dist/core/p-3eda4e14.entry.js.map +0 -1
  866. package/dist/core/p-3f2d4108.entry.js +0 -2
  867. package/dist/core/p-3f2d4108.entry.js.map +0 -1
  868. package/dist/core/p-457a4c63.entry.js +0 -2
  869. package/dist/core/p-457a4c63.entry.js.map +0 -1
  870. package/dist/core/p-4b89890b.entry.js +0 -2
  871. package/dist/core/p-4b89890b.entry.js.map +0 -1
  872. package/dist/core/p-4f0e9434.entry.js +0 -2
  873. package/dist/core/p-4f0e9434.entry.js.map +0 -1
  874. package/dist/core/p-55b11f6f.entry.js +0 -2
  875. package/dist/core/p-55b11f6f.entry.js.map +0 -1
  876. package/dist/core/p-5ccd3703.entry.js +0 -2
  877. package/dist/core/p-5ccd3703.entry.js.map +0 -1
  878. package/dist/core/p-604e72ac.entry.js +0 -2
  879. package/dist/core/p-604e72ac.entry.js.map +0 -1
  880. package/dist/core/p-60f7f555.entry.js +0 -2
  881. package/dist/core/p-60f7f555.entry.js.map +0 -1
  882. package/dist/core/p-69576aa0.entry.js +0 -2
  883. package/dist/core/p-69576aa0.entry.js.map +0 -1
  884. package/dist/core/p-6fae7e1f.entry.js.map +0 -1
  885. package/dist/core/p-72b0a5be.entry.js +0 -2
  886. package/dist/core/p-72b0a5be.entry.js.map +0 -1
  887. package/dist/core/p-72b350bc.entry.js +0 -2
  888. package/dist/core/p-72b350bc.entry.js.map +0 -1
  889. package/dist/core/p-7438ab1f.entry.js.map +0 -1
  890. package/dist/core/p-78605899.entry.js +0 -2
  891. package/dist/core/p-78605899.entry.js.map +0 -1
  892. package/dist/core/p-7c2b59fe.entry.js +0 -2
  893. package/dist/core/p-7c2b59fe.entry.js.map +0 -1
  894. package/dist/core/p-836e71de.entry.js +0 -2
  895. package/dist/core/p-836e71de.entry.js.map +0 -1
  896. package/dist/core/p-843ed766.entry.js +0 -2
  897. package/dist/core/p-843ed766.entry.js.map +0 -1
  898. package/dist/core/p-8a8bf98c.entry.js +0 -2
  899. package/dist/core/p-8a8bf98c.entry.js.map +0 -1
  900. package/dist/core/p-8c325d9b.entry.js +0 -2
  901. package/dist/core/p-8c325d9b.entry.js.map +0 -1
  902. package/dist/core/p-936ab032.entry.js +0 -2
  903. package/dist/core/p-936ab032.entry.js.map +0 -1
  904. package/dist/core/p-96505636.entry.js +0 -2
  905. package/dist/core/p-96505636.entry.js.map +0 -1
  906. package/dist/core/p-9c9ba3cd.entry.js +0 -2
  907. package/dist/core/p-9c9ba3cd.entry.js.map +0 -1
  908. package/dist/core/p-9df32798.entry.js.map +0 -1
  909. package/dist/core/p-a6ff78aa.entry.js +0 -2
  910. package/dist/core/p-a6ff78aa.entry.js.map +0 -1
  911. package/dist/core/p-a75f3c4d.entry.js +0 -2
  912. package/dist/core/p-a75f3c4d.entry.js.map +0 -1
  913. package/dist/core/p-aeb001d7.entry.js +0 -2
  914. package/dist/core/p-aeb001d7.entry.js.map +0 -1
  915. package/dist/core/p-b1879a44.entry.js +0 -2
  916. package/dist/core/p-b1879a44.entry.js.map +0 -1
  917. package/dist/core/p-b47021d8.entry.js +0 -2
  918. package/dist/core/p-b47021d8.entry.js.map +0 -1
  919. package/dist/core/p-bb4b7dcb.entry.js +0 -2
  920. package/dist/core/p-bb4b7dcb.entry.js.map +0 -1
  921. package/dist/core/p-bb963aa4.entry.js +0 -2
  922. package/dist/core/p-bb963aa4.entry.js.map +0 -1
  923. package/dist/core/p-be5d5f93.entry.js +0 -2
  924. package/dist/core/p-be5d5f93.entry.js.map +0 -1
  925. package/dist/core/p-c1d5e7f2.entry.js +0 -2
  926. package/dist/core/p-c1d5e7f2.entry.js.map +0 -1
  927. package/dist/core/p-d3750771.entry.js +0 -2
  928. package/dist/core/p-d3750771.entry.js.map +0 -1
  929. package/dist/core/p-dbc0f5da.entry.js +0 -2
  930. package/dist/core/p-dbc0f5da.entry.js.map +0 -1
  931. package/dist/core/p-dd4ef67f.entry.js +0 -2
  932. package/dist/core/p-dd4ef67f.entry.js.map +0 -1
  933. package/dist/core/p-dd9d8e68.entry.js +0 -2
  934. package/dist/core/p-dd9d8e68.entry.js.map +0 -1
  935. package/dist/core/p-def5ba6b.entry.js +0 -2
  936. package/dist/core/p-def5ba6b.entry.js.map +0 -1
  937. package/dist/core/p-e6bad80b.entry.js +0 -2
  938. package/dist/core/p-e6bad80b.entry.js.map +0 -1
  939. package/dist/core/p-e7fa6804.entry.js +0 -2
  940. package/dist/core/p-e7fa6804.entry.js.map +0 -1
  941. package/dist/core/p-e8fa0095.entry.js +0 -2
  942. package/dist/core/p-e8fa0095.entry.js.map +0 -1
  943. package/dist/core/p-ee1c9f20.entry.js +0 -2
  944. package/dist/core/p-ee1c9f20.entry.js.map +0 -1
  945. package/dist/core/p-fef9e8c9.js +0 -2
  946. package/dist/core/p-fef9e8c9.js.map +0 -1
  947. package/dist/esm/helpers-3905ccc4.js.map +0 -1
  948. package/dist/esm/ic-card.entry.js +0 -146
  949. package/dist/esm/ic-card.entry.js.map +0 -1
  950. package/dist/esm/ic-data-entity.entry.js +0 -25
  951. package/dist/esm/ic-data-entity.entry.js.map +0 -1
  952. package/dist/esm/types-6f6b41a5.js +0 -16
  953. package/dist/esm/types-6f6b41a5.js.map +0 -1
  954. package/dist/types/components/ic-chip/ic-chip.types.d.ts +0 -1
  955. package/dist/types/components/ic-data-entity/ic-data-entity.d.ts +0 -20
@@ -0,0 +1,2 @@
1
+ import{r as i,h as t,H as e,g as o}from"./p-6b5e91e2.js";import{D as s,g as n,e as a,x as r}from"./p-312cacae.js";import{C as h}from"./p-3b185c32.js";const d='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--ic-typography-color:currentcolor}:host(.in-side-menu){border-bottom:var(--ic-border-width) solid var(--ic-architectural-200);padding:var(--ic-space-md) 0}:host .navigation-group{height:100%;width:-moz-fit-content;width:fit-content;color:var(--ic-theme-text);display:flex;align-items:center;justify-content:center;padding:0 var(--ic-space-md);transition:var(--ic-easing-transition-slow);position:relative;background:none;border:none;white-space:nowrap}:host(.in-side-menu) .navigation-group{height:2.5rem;width:100%;text-align:left}:host(.in-side-menu) .navigation-group .ic-typography-label{width:11.875rem}:host(.in-side-menu) .navigation-group-side-menu{color:var(--ic-action-default);justify-content:flex-start;padding:0 var(--ic-space-md) 0 var(--ic-space-md)}:host(.in-side-menu) .navigation-group-side-menu-collapsed,:host(.in-side-menu) .navigation-group-side-menu-expanded{color:var(--ic-action-default);justify-content:flex-start;padding-left:var(--ic-space-md)}:host(.in-side-menu) .navigation-group-side-menu-expanded{margin-bottom:var(--ic-space-xs)}:host(.in-side-menu) .navigation-group-side-menu-collapsed::after,:host(.in-side-menu) .navigation-group-side-menu-expanded::after{border-style:solid;border-width:0.125em 0.125em 0 0;content:"";display:inline-block;height:0.45em;left:0.75em;position:relative;top:-0.1em;transform:rotate(135deg);vertical-align:top;width:0.45em}:host(.in-side-menu) .navigation-group-side-menu-expanded::after{top:0.15em;transform:rotate(-45deg)}:host .navigation-group:hover,:host .navigation-group:active,:host .selected{background-color:var(--ic-architectural-20);color:var(--ic-color-text-primary-light);outline:none;cursor:pointer}:host(:not(.in-side-menu)) .navigation-group:focus{box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline);z-index:var(--ic-z-index-navigation-item);transition:box-shadow var(--ic-easing-transition-fast)}:host(.in-side-menu) .navigation-group-side-menu:hover,:host(.in-side-menu) .navigation-group-side-menu:active,:host(.in-side-menu) .navigation-group-side-menu:focus{background-color:var(--ic-architectural-20);color:var(--ic-action-default);cursor:auto;box-shadow:none;outline:none}:host(.in-side-menu) .navigation-group-side-menu:focus{outline:var(--ic-hc-focus-outline)}:host(.in-side-menu) .navigation-group-side-menu-expanded:hover:not(:focus),:host(.in-side-menu) .navigation-group-side-menu-collapsed:hover:not(:focus){background-color:var(--ic-action-dark-bg-hover);color:var(--ic-action-default);cursor:pointer}:host(.in-side-menu) .navigation-group-side-menu-expanded:active:not(:focus),:host(.in-side-menu) .navigation-group-side-menu-collapsed:active:not(:focus){background-color:var(--ic-action-dark-bg-pressed);color:var(--ic-action-default)}:host(.in-side-menu) .navigation-group-side-menu-expanded:focus,:host(.in-side-menu) .navigation-group-side-menu-collapsed:focus{color:var(--ic-action-default);box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);outline:var(--ic-hc-focus-outline)}:host .navigation-group-dropdown{background-color:var(--ic-architectural-20);border-bottom:var(--ic-border-default);position:absolute;left:0;right:0;padding:var(--ic-space-xs) var(--ic-space-md);box-shadow:0 0.375rem 0.5rem -0.375rem rgba(0 0 0 / 20%);z-index:calc(var(--ic-z-index-navigation-item) - 1)}:host .navigation-group-dropdown-items-list{list-style:none;display:flex;flex-flow:column wrap;align-content:flex-start;padding-left:var(--ic-space-md);max-height:16.5rem}:host .chevron-toggle-icon-wrapper{display:flex;align-items:center}:host .chevron-toggle-icon-wrapper svg{transform:rotate(90deg);height:var(--ic-space-lg);width:var(--ic-space-lg)}:host .chevron-toggle-icon-closed svg{transform:rotate(-90deg)}:host(.ic-navigation-group-expanded) .grouped-links-wrapper{height:var(--navigation-child-items-height, auto) !important;transition:var(--ic-easing-transition-slow);overflow:hidden}:host(.ic-navigation-group-side-nav) .link,:host(.ic-navigation-group-side-nav) ::slotted(a){height:var(--navigation-child-items-height, auto)}:host(.ic-navigation-group-collapsed) .grouped-links-wrapper{height:0;transition:var(--ic-easing-transition-slow);overflow:hidden}:host(.ic-navigation-group-side-nav) .navigation-group{height:var(--navigation-group-height);width:var(--navigation-group-width);justify-content:var(--navigation-group-justify-content);padding-right:var(--navigation-group-expand-toggle-padding)}:host(.ic-navigation-group-side-nav) .navigation-group:hover,:host(.ic-navigation-group-side-nav) .navigation-group:active,:host(.ic-navigation-group-side-nav) .selected{background-color:var(--navigation-group-hover);color:var(--navigation-group-text-hover)}:host(.ic-navigation-group-side-nav) .navigation-group:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);background:none}:host(.ic-navigation-group-side-nav) .ic-typography-caption{position:var(--navigation-group-title-position);left:var(--navigation-group-title-position-left);white-space:nowrap}';const c=class{constructor(e){i(this,e);this.allGroupedNavigationItems=[];this.DYNAMIC_GROUPED_LINKS_HEIGHT_MS=100;this.IC_NAVIGATION_ITEM="ic-navigation-item";this.mouseGate=false;this.nodeName="IC-NAVIGATION-GROUP";this.GROUPED_LINKS_WRAPPER_CLASS=".grouped-links-wrapper";this.sideNavExpandHandler=i=>{this.isSideNavExpanded=i.detail.sideNavExpanded;const t=this.el.shadowRoot.querySelector(this.GROUPED_LINKS_WRAPPER_CLASS);if(!t)return;if(this.isSideNavExpanded){if(this.expanded&&this.expandedNavItemsHeight){this.setGroupedLinksElementHeight(t,this.expandedNavItemsHeight)}else if(this.expanded){setTimeout((()=>{this.expandedNavItemsHeight=this.getNavigationChildItemsHeight();this.setGroupedLinksElementHeight(t,this.expandedNavItemsHeight)}),this.DYNAMIC_GROUPED_LINKS_HEIGHT_MS)}}else{if(this.expanded&&this.collapsedNavItemsHeight){this.setGroupedLinksElementHeight(t,this.collapsedNavItemsHeight)}else if(this.expanded){setTimeout((()=>{this.collapsedNavItemsHeight=this.getNavigationChildItemsHeight();this.setGroupedLinksElementHeight(t,this.collapsedNavItemsHeight)}),this.DYNAMIC_GROUPED_LINKS_HEIGHT_MS)}}};this.topNavResizedHandler=({detail:i})=>{var t;const{size:e}=i;if(e!==this.deviceSize){this.deviceSize=e;this.inTopNavSideMenu=e<=(((t=this.parentEl)===null||t===void 0?void 0:t.customMobileBreakpoint)||s.L)}};this.setGroupedNavItemTabIndex=i=>{this.el.querySelectorAll(this.IC_NAVIGATION_ITEM).forEach((t=>{const e=t.shadowRoot.querySelector("a")||t.querySelector("a");if(e){e.setAttribute("tabindex",i)}}))};this.toggleGroupedLinkWrapperHeight=(i,t)=>{if(!i)return;if(t){if(this.isSideNavExpanded){this.setGroupedLinksElementHeight(i,this.expandedNavItemsHeight)}else{this.setGroupedLinksElementHeight(i,this.collapsedNavItemsHeight)}this.setGroupedNavItemTabIndex("0")}else{i.style.setProperty("--navigation-child-items-height","0");this.setGroupedNavItemTabIndex("-1")}};this.toggleExpanded=()=>{this.expanded=!this.expanded;const i=this.el.shadowRoot.querySelector(this.GROUPED_LINKS_WRAPPER_CLASS);this.toggleGroupedLinkWrapperHeight(i,this.expanded)};this.handleClick=i=>{if(this.navigationType==="top"&&i.detail){this.toggleDropdown()}else{this.toggleExpanded()}};this.handleBlur=i=>{const t=i.relatedTarget;if(!this.el.contains(t)){this.hideDropdown()}};this.handleTopNavKeydown=i=>{if(i.key===" "||i.key==="Enter"){this.toggleDropdown()}else if(!this.inTopNavSideMenu&&i.key==="Escape"){this.hideDropdown()}};this.handleKeydown=i=>{if(i.key==="Enter"||i.key===" "||i.key==="Escape"){switch(this.navigationType){case"top":this.handleTopNavKeydown(i);break;case"side":this.toggleExpanded();i.preventDefault();break;default:this.toggleExpanded();break}}};this.handleMouseLeave=i=>{const t=i.relatedTarget;this.mouseGate=false;if(!this.el.contains(t)&&t!==this.dropdown&&document.activeElement!==this.el&&!this.el.contains(document.activeElement)&&(t===null||t===void 0?void 0:t.nodeName)===this.nodeName&&this.dropdownOpen===true){this.mouseGate=true;this.hideDropdown()}else if(!this.el.contains(t)&&t!==this.dropdown&&!this.el.contains(document.activeElement)){this.mouseGate=false;setTimeout((()=>{this.dropdownOpen?this.hideDropdown():null}),500)}};this.handleMouseEnter=i=>{const t=i.relatedTarget;document.addEventListener("keydown",this.handleKeydown);if((t===null||t===void 0?void 0:t.nodeName)===this.nodeName&&this.mouseGate===true){this.showDropdown()}else if(this.dropdownOpen===false&&t!==null&&this.mouseGate===false){this.mouseGate=true;setTimeout((()=>{this.mouseGate&&this.showDropdown()}),500)}};this.renderDropdownGroupedLinks=()=>t("div",{class:{["navigation-group-dropdown"]:!this.inTopNavSideMenu,["navigation-group-dropdown-side-menu"]:this.inTopNavSideMenu,["selected"]:this.dropdownOpen&&!this.inTopNavSideMenu},onMouseLeave:!this.inTopNavSideMenu?this.handleMouseLeave:null,ref:i=>this.dropdown=i},t("nav",{class:{["navigation-group-dropdown-items"]:!this.inTopNavSideMenu}},t("ul",null,t("slot",null))));this.renderGroupedLinks=()=>t("ul",{class:"grouped-links-wrapper"},t("slot",null));this.getNavigationChildItemsHeight=()=>{let i=0;this.allGroupedNavigationItems.forEach((t=>{i+=t.offsetHeight}));return`${i}px`};this.setInitialGroupedLinksWrapperHeight=()=>{const i=this.el.shadowRoot.querySelector(this.GROUPED_LINKS_WRAPPER_CLASS);if(!i)return;if(!this.isSideNavExpanded&&!this.collapsedNavItemsHeight&&this.expanded){this.collapsedNavItemsHeight=this.getNavigationChildItemsHeight();this.setGroupedLinksElementHeight(i,this.collapsedNavItemsHeight)}if(this.isSideNavExpanded&&this.expanded){this.expandedNavItemsHeight=this.getNavigationChildItemsHeight();this.setGroupedLinksElementHeight(i,this.expandedNavItemsHeight)}};this.renderNavigationItems=()=>{if(this.dropdownOpen||this.inTopNavSideMenu&&!this.expandable){return this.renderDropdownGroupedLinks()}if(this.navigationType!=="top"){return this.renderGroupedLinks()}return null};this.deviceSize=s.XL;this.dropdownOpen=false;this.expanded=true;this.focusStyle=n();this.inTopNavSideMenu=false;this.navigationType=undefined;this.parentEl=undefined;this.expandable=false;this.label=undefined}disconnectedCallback(){if(this.navigationType==="side"){this.parentEl.removeEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){this.parentEl.removeEventListener("icTopNavResized",this.topNavResizedHandler)}}componentWillLoad(){this.deviceSize=a();const{navType:i,parent:t}=r(this.el);this.navigationType=i;this.parentEl=t;if(this.navigationType==="side"){this.parentEl.addEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){this.parentEl.addEventListener("icTopNavResized",this.topNavResizedHandler);if(this.deviceSize<=this.parentEl.customMobileBreakpoint)this.inTopNavSideMenu=true}}componentDidLoad(){this.allGroupedNavigationItems=Array.from(this.el.querySelectorAll(this.IC_NAVIGATION_ITEM));setTimeout((()=>this.setInitialGroupedLinksWrapperHeight()),this.DYNAMIC_GROUPED_LINKS_HEIGHT_MS)}childBlurHandler(){this.hideDropdown()}navItemClickHandler(){this.hideDropdown()}themeChangeHandler(i){const t=i.detail;this.focusStyle=t.mode}async setFocus(){if(this.groupEl){this.groupEl.focus()}}toggleDropdown(){this.dropdownOpen=!this.dropdownOpen}showDropdown(){if(!this.dropdownOpen){this.toggleDropdown()}}hideDropdown(){document.removeEventListener("keydown",this.handleKeydown);if(this.dropdownOpen){this.toggleDropdown()}}setGroupedLinksElementHeight(i,t){i.style.setProperty("--navigation-child-items-height",t)}render(){const{label:i,dropdownOpen:o,inTopNavSideMenu:s,expandable:n}=this;return t(e,{class:{["in-side-menu"]:s,"ic-navigation-group-expanded":this.expanded,"ic-navigation-group-collapsed":!this.expanded,["ic-navigation-group-side-nav"]:this.navigationType==="side"},role:"listitem"},t("button",{onMouseEnter:!s&&this.navigationType==="top"&&this.handleMouseEnter,onMouseLeave:this.navigationType==="top"&&this.handleMouseLeave,tabindex:s&&!n?"-1":"0",onBlur:this.handleBlur,onClick:n?this.handleClick:null,onKeyDown:this.handleKeydown,class:{["navigation-group"]:true,[this.focusStyle]:!s,["navigation-group-side-menu"]:s&&!n,["navigation-group-side-menu-collapsed"]:s&&n&&!o,["navigation-group-side-menu-expanded"]:s&&n&&o,["selected"]:o&&!s},ref:i=>this.groupEl=i,"aria-expanded":`${o||this.expanded}`,"aria-haspopup":`${!s&&this.navigationType==="top"}`},t("ic-typography",{variant:this.navigationType==="side"?"caption":"label"},i),this.navigationType==="side"&&n&&t("div",{class:{"chevron-toggle-icon-wrapper":true,"chevron-toggle-icon-closed":this.expanded},innerHTML:h})),this.renderNavigationItems())}static get delegatesFocus(){return true}get el(){return o(this)}};c.style=d;export{c as ic_navigation_group};
2
+ //# sourceMappingURL=p-af20322c.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icNavigationGroupCss","NavigationGroup","this","allGroupedNavigationItems","DYNAMIC_GROUPED_LINKS_HEIGHT_MS","IC_NAVIGATION_ITEM","mouseGate","nodeName","GROUPED_LINKS_WRAPPER_CLASS","sideNavExpandHandler","event","isSideNavExpanded","detail","sideNavExpanded","linkWrapper","el","shadowRoot","querySelector","expanded","expandedNavItemsHeight","setGroupedLinksElementHeight","setTimeout","getNavigationChildItemsHeight","collapsedNavItemsHeight","topNavResizedHandler","size","deviceSize","inTopNavSideMenu","_a","parentEl","customMobileBreakpoint","DEVICE_SIZES","L","setGroupedNavItemTabIndex","tabIndexValue","querySelectorAll","forEach","navigationItem","navItem","setAttribute","toggleGroupedLinkWrapperHeight","wrapper","style","setProperty","toggleExpanded","handleClick","ev","navigationType","toggleDropdown","handleBlur","target","relatedTarget","contains","hideDropdown","handleTopNavKeydown","key","handleKeydown","preventDefault","handleMouseLeave","relTarget","dropdown","document","activeElement","dropdownOpen","handleMouseEnter","addEventListener","showDropdown","renderDropdownGroupedLinks","h","class","onMouseLeave","ref","renderGroupedLinks","navigationChildItemsHeight","offsetHeight","setInitialGroupedLinksWrapperHeight","renderNavigationItems","expandable","XL","getThemeForegroundColor","disconnectedCallback","removeEventListener","componentWillLoad","getCurrentDeviceSize","navType","parent","getNavItemParentDetails","componentDidLoad","Array","from","childBlurHandler","navItemClickHandler","themeChangeHandler","theme","focusStyle","mode","setFocus","groupEl","focus","groupedNavItemWrapper","height","render","label","Host","role","onMouseEnter","tabindex","onBlur","onClick","onKeyDown","variant","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 var(--ic-architectural-200);\n padding: var(--ic-space-md) 0;\n}\n\n:host .navigation-group {\n height: 100%;\n width: fit-content;\n color: var(--ic-theme-text);\n display: flex;\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 white-space: nowrap;\n}\n\n:host(.in-side-menu) .navigation-group {\n height: 2.5rem;\n width: 100%;\n text-align: left;\n}\n\n:host(.in-side-menu) .navigation-group .ic-typography-label {\n width: 11.875rem;\n}\n\n:host(.in-side-menu) .navigation-group-side-menu {\n color: var(--ic-action-default);\n justify-content: flex-start;\n padding: 0 var(--ic-space-md) 0 var(--ic-space-md);\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-collapsed,\n:host(.in-side-menu) .navigation-group-side-menu-expanded {\n color: var(--ic-action-default);\n justify-content: flex-start;\n padding-left: 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 height: 0.45em;\n left: 0.75em;\n position: relative;\n top: -0.1em;\n transform: rotate(135deg);\n vertical-align: top;\n 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 .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(: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:hover,\n:host(.in-side-menu) .navigation-group-side-menu:active,\n:host(.in-side-menu) .navigation-group-side-menu:focus {\n background-color: var(--ic-architectural-20);\n color: var(--ic-action-default);\n cursor: auto;\n box-shadow: none;\n outline: none;\n}\n\n:host(.in-side-menu) .navigation-group-side-menu:focus {\n outline: var(--ic-hc-focus-outline);\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-action-dark-bg-hover);\n color: var(--ic-action-default);\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-action-dark-bg-pressed);\n color: var(--ic-action-default);\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 color: var(--ic-action-default);\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n outline: var(--ic-hc-focus-outline);\n}\n\n:host .navigation-group-dropdown {\n background-color: var(--ic-architectural-20);\n border-bottom: var(--ic-border-default);\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: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 height: var(--navigation-group-height);\n width: var(--navigation-group-width);\n justify-content: var(--navigation-group-justify-content);\n padding-right: var(--navigation-group-expand-toggle-padding);\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) .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 white-space: nowrap;\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n State,\n Listen,\n h,\n Method,\n} from \"@stencil/core\";\n\nimport {\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getThemeForegroundColor,\n getNavItemParentDetails,\n} from \"../../utils/helpers\";\nimport { IcNavType, IcTheme } from \"../../utils/types\";\n\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\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 allGroupedNavigationItems: HTMLIcNavigationItemElement[] = [];\n private collapsedNavItemsHeight: string;\n private dropdown: HTMLElement;\n private DYNAMIC_GROUPED_LINKS_HEIGHT_MS = 100;\n private expandedNavItemsHeight: string;\n private groupEl: HTMLElement;\n private IC_NAVIGATION_ITEM = \"ic-navigation-item\";\n private isSideNavExpanded: boolean;\n private mouseGate: boolean = false;\n private nodeName = \"IC-NAVIGATION-GROUP\";\n private GROUPED_LINKS_WRAPPER_CLASS = \".grouped-links-wrapper\";\n\n @Element() el: HTMLIcNavigationGroupElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() dropdownOpen: boolean = false;\n @State() expanded: boolean = true;\n @State() focusStyle = getThemeForegroundColor();\n @State() inTopNavSideMenu: boolean = false;\n @State() navigationType: IcNavType | \"\";\n @State() parentEl: HTMLElement;\n\n /**\n * If `true`, the group will be expandable in the side menu.\n */\n @Prop() expandable: boolean = false;\n\n /**\n * The label to display on the group.\n */\n @Prop() label: string;\n\n disconnectedCallback(): void {\n if (this.navigationType === \"side\") {\n this.parentEl.removeEventListener(\n \"icSideNavExpanded\",\n this.sideNavExpandHandler\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl.removeEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler\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\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl.addEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler\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.allGroupedNavigationItems = Array.from(\n this.el.querySelectorAll(this.IC_NAVIGATION_ITEM)\n );\n\n /**\n * debounce is required as the incorrect height was retrieved instantly after\n * componentDidLoad is invoked.\n */\n setTimeout(\n () => this.setInitialGroupedLinksWrapperHeight(),\n this.DYNAMIC_GROUPED_LINKS_HEIGHT_MS\n );\n }\n\n @Listen(\"childBlur\")\n childBlurHandler(): void {\n this.hideDropdown();\n }\n\n @Listen(\"navItemClicked\")\n navItemClickHandler(): void {\n this.hideDropdown();\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.focusStyle = theme.mode;\n }\n\n /**\n * Sets focus on the nav item.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.groupEl) {\n this.groupEl.focus();\n }\n }\n\n private sideNavExpandHandler = (event?: CustomEvent): void => {\n this.isSideNavExpanded = event.detail.sideNavExpanded;\n const linkWrapper = this.el.shadowRoot.querySelector(\n this.GROUPED_LINKS_WRAPPER_CLASS\n ) as HTMLElement;\n\n if (!linkWrapper) return;\n\n if (this.isSideNavExpanded) {\n if (this.expanded && this.expandedNavItemsHeight) {\n this.setGroupedLinksElementHeight(\n linkWrapper,\n this.expandedNavItemsHeight\n );\n } else if (this.expanded) {\n setTimeout(() => {\n this.expandedNavItemsHeight = this.getNavigationChildItemsHeight();\n\n this.setGroupedLinksElementHeight(\n linkWrapper,\n this.expandedNavItemsHeight\n );\n }, this.DYNAMIC_GROUPED_LINKS_HEIGHT_MS);\n }\n } else {\n if (this.expanded && this.collapsedNavItemsHeight) {\n this.setGroupedLinksElementHeight(\n linkWrapper,\n this.collapsedNavItemsHeight\n );\n } else if (this.expanded) {\n setTimeout(() => {\n this.collapsedNavItemsHeight = this.getNavigationChildItemsHeight();\n\n this.setGroupedLinksElementHeight(\n linkWrapper,\n this.collapsedNavItemsHeight\n );\n }, this.DYNAMIC_GROUPED_LINKS_HEIGHT_MS);\n }\n }\n };\n\n private topNavResizedHandler = ({\n detail,\n }: CustomEvent<{ size: number }>): void => {\n const { size } = detail;\n if (size !== this.deviceSize) {\n this.deviceSize = size;\n this.inTopNavSideMenu =\n size <=\n ((this.parentEl as HTMLIcTopNavigationElement)\n ?.customMobileBreakpoint || DEVICE_SIZES.L);\n }\n };\n\n private toggleDropdown() {\n this.dropdownOpen = !this.dropdownOpen;\n }\n\n private setGroupedNavItemTabIndex = (tabIndexValue: string) => {\n this.el\n .querySelectorAll(this.IC_NAVIGATION_ITEM)\n .forEach((navigationItem) => {\n const navItem =\n navigationItem.shadowRoot.querySelector(\"a\") ||\n navigationItem.querySelector(\"a\");\n if (navItem) {\n navItem.setAttribute(\"tabindex\", tabIndexValue);\n }\n });\n };\n\n private toggleGroupedLinkWrapperHeight = (\n wrapper: HTMLElement,\n expanded: boolean\n ) => {\n if (!wrapper) return;\n\n if (expanded) {\n if (this.isSideNavExpanded) {\n this.setGroupedLinksElementHeight(wrapper, this.expandedNavItemsHeight);\n } else {\n this.setGroupedLinksElementHeight(\n wrapper,\n this.collapsedNavItemsHeight\n );\n }\n this.setGroupedNavItemTabIndex(\"0\");\n } else {\n wrapper.style.setProperty(\"--navigation-child-items-height\", \"0\");\n this.setGroupedNavItemTabIndex(\"-1\");\n }\n };\n\n private toggleExpanded = () => {\n this.expanded = !this.expanded;\n const linkWrapper = this.el.shadowRoot.querySelector(\n this.GROUPED_LINKS_WRAPPER_CLASS\n ) as HTMLElement;\n this.toggleGroupedLinkWrapperHeight(linkWrapper, this.expanded);\n };\n\n private showDropdown() {\n if (!this.dropdownOpen) {\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 const target = ev.relatedTarget as HTMLElement;\n if (!this.el.contains(target)) {\n this.hideDropdown();\n }\n };\n\n private handleTopNavKeydown = (ev: KeyboardEvent) => {\n if (ev.key === \" \" || ev.key === \"Enter\") {\n this.toggleDropdown();\n } else if (!this.inTopNavSideMenu && ev.key === \"Escape\") {\n this.hideDropdown();\n }\n };\n\n private handleKeydown = (ev: KeyboardEvent) => {\n if (ev.key === \"Enter\" || ev.key === \" \" || ev.key === \"Escape\") {\n switch (this.navigationType) {\n case \"top\":\n this.handleTopNavKeydown(ev as KeyboardEvent);\n break;\n case \"side\":\n this.toggleExpanded();\n ev.preventDefault();\n break;\n default:\n this.toggleExpanded();\n break;\n }\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 document.activeElement !== this.el &&\n !this.el.contains(document.activeElement) &&\n relTarget?.nodeName === this.nodeName &&\n this.dropdownOpen === true\n ) {\n this.mouseGate = true;\n this.hideDropdown();\n } else if (\n !this.el.contains(relTarget) &&\n relTarget !== this.dropdown &&\n !this.el.contains(document.activeElement)\n ) {\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;\n document.addEventListener(\"keydown\", this.handleKeydown);\n\n if (relTarget?.nodeName === this.nodeName && this.mouseGate === true) {\n this.showDropdown();\n } else if (\n this.dropdownOpen === false &&\n relTarget !== null &&\n this.mouseGate === false\n ) {\n this.mouseGate = true;\n setTimeout(() => {\n this.mouseGate && this.showDropdown();\n }, 500);\n }\n };\n\n private renderDropdownGroupedLinks = (): HTMLDivElement => (\n <div\n class={{\n [\"navigation-group-dropdown\"]: !this.inTopNavSideMenu,\n [\"navigation-group-dropdown-side-menu\"]: this.inTopNavSideMenu,\n [\"selected\"]: this.dropdownOpen && !this.inTopNavSideMenu,\n }}\n onMouseLeave={!this.inTopNavSideMenu ? this.handleMouseLeave : null}\n ref={(el) => (this.dropdown = el)}\n >\n <nav\n class={{\n [\"navigation-group-dropdown-items\"]: !this.inTopNavSideMenu,\n }}\n >\n <ul>\n <slot></slot>\n </ul>\n </nav>\n </div>\n );\n\n private renderGroupedLinks = (): HTMLDivElement => (\n <ul class=\"grouped-links-wrapper\">\n <slot></slot>\n </ul>\n );\n\n /**\n * Gets the total height of navigation links to improve\n * smoothness of expand/collapse animations\n */\n private getNavigationChildItemsHeight = (): string => {\n let navigationChildItemsHeight = 0;\n this.allGroupedNavigationItems.forEach((navItem) => {\n navigationChildItemsHeight += navItem.offsetHeight;\n });\n\n return `${navigationChildItemsHeight}px`;\n };\n\n private setInitialGroupedLinksWrapperHeight = () => {\n const linkWrapper = this.el.shadowRoot.querySelector(\n this.GROUPED_LINKS_WRAPPER_CLASS\n ) as HTMLElement;\n\n if (!linkWrapper) return;\n\n if (\n !this.isSideNavExpanded &&\n !this.collapsedNavItemsHeight &&\n this.expanded\n ) {\n this.collapsedNavItemsHeight = this.getNavigationChildItemsHeight();\n this.setGroupedLinksElementHeight(\n linkWrapper,\n this.collapsedNavItemsHeight\n );\n }\n\n if (this.isSideNavExpanded && this.expanded) {\n this.expandedNavItemsHeight = this.getNavigationChildItemsHeight();\n this.setGroupedLinksElementHeight(\n linkWrapper,\n this.expandedNavItemsHeight\n );\n }\n };\n\n private renderNavigationItems = (): HTMLDivElement | null => {\n if (this.dropdownOpen || (this.inTopNavSideMenu && !this.expandable)) {\n return this.renderDropdownGroupedLinks();\n }\n\n if (this.navigationType !== \"top\") {\n return this.renderGroupedLinks();\n }\n\n return null;\n };\n\n private setGroupedLinksElementHeight(\n groupedNavItemWrapper: HTMLElement,\n height: string\n ) {\n groupedNavItemWrapper.style.setProperty(\n \"--navigation-child-items-height\",\n height\n );\n }\n\n render() {\n const { label, dropdownOpen, inTopNavSideMenu, expandable } = this;\n\n return (\n <Host\n class={{\n [\"in-side-menu\"]: inTopNavSideMenu,\n \"ic-navigation-group-expanded\": this.expanded,\n \"ic-navigation-group-collapsed\": !this.expanded,\n [\"ic-navigation-group-side-nav\"]: this.navigationType === \"side\",\n }}\n role=\"listitem\"\n >\n <button\n onMouseEnter={\n !inTopNavSideMenu &&\n this.navigationType === \"top\" &&\n this.handleMouseEnter\n }\n onMouseLeave={this.navigationType === \"top\" && this.handleMouseLeave}\n tabindex={inTopNavSideMenu && !expandable ? \"-1\" : \"0\"}\n onBlur={this.handleBlur}\n onClick={expandable ? this.handleClick : null}\n onKeyDown={this.handleKeydown}\n class={{\n [\"navigation-group\"]: true,\n [this.focusStyle]: !inTopNavSideMenu,\n [\"navigation-group-side-menu\"]: inTopNavSideMenu && !expandable,\n [\"navigation-group-side-menu-collapsed\"]:\n inTopNavSideMenu && expandable && !dropdownOpen,\n [\"navigation-group-side-menu-expanded\"]:\n inTopNavSideMenu && expandable && dropdownOpen,\n [\"selected\"]: dropdownOpen && !inTopNavSideMenu,\n }}\n ref={(el) => (this.groupEl = el)}\n aria-expanded={`${dropdownOpen || this.expanded}`}\n aria-haspopup={`${\n !inTopNavSideMenu && this.navigationType === \"top\"\n }`}\n >\n <ic-typography\n variant={this.navigationType === \"side\" ? \"caption\" : \"label\"}\n >\n {label}\n </ic-typography>\n {this.navigationType === \"side\" && expandable && (\n <div\n class={{\n \"chevron-toggle-icon-wrapper\": true,\n \"chevron-toggle-icon-closed\": this.expanded,\n }}\n innerHTML={chevronIcon}\n ></div>\n )}\n </button>\n {this.renderNavigationItems()}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{r as e,h as t,H as i}from"./p-6b5e91e2.js";const o='/*! 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{position:fixed;left:0;bottom:0;width:100%;height:var(--ic-space-lg);z-index:var(--ic-z-index-classification-banner)}:host(.inline){position:static;left:auto;bottom:auto}.classification-banner{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:var(--ic-space-xxxs) var(--ic-space-md)}.default{background-color:var(--ic-classification-not-set);color:var(--ic-classification-not-set-foreground)}.official,.official-sensitive{background-color:var(--ic-classification-official);color:var(--ic-classification-official-foreground)}.secret{background-color:var(--ic-classification-secret);color:var(--ic-classification-secret-foreground)}.top-secret{background-color:var(--ic-classification-top-secret);color:var(--ic-classification-top-secret-foreground)}.offscreen{position:absolute;left:-9999px;background-color:#fff;color:#000;text-transform:none}@media (forced-colors: active){.classification-banner{border:var(--ic-hc-border)}}';const n={default:"protective marking not set",official:"official","official-sensitive":"official sensitive",secret:"secret","top-secret":"top secret"};const a=class{constructor(t){e(this,t);this.additionalSelectors="";this.classification="default";this.country="uk";this.inline=false;this.upTo=false}render(){const{inline:e,upTo:o}=this;let{country:a,additionalSelectors:s,classification:r}=this;if(!a)a="";if(!s)s="";if(!r||r&&!n[r])r="default";return t(i,{class:{["inline"]:e}},t("banner",{"aria-label":"Protective marking",class:{["classification-banner"]:true,[`${r}`]:r}},r!=="default"?t("span",{class:"offscreen"},"The protective marking of this page is:"," "):null,t("ic-typography",{variant:"caption-uppercase"},r==="default"?n[r]:`${o?"up to":""} \n ${a} \n ${n[r]} \n ${s}`)))}};a.style=o;export{a as ic_classification_banner};
2
- //# sourceMappingURL=p-6fae7e1f.entry.js.map
1
+ import{r as e,h as i,H as o}from"./p-6b5e91e2.js";const t='/*! 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{position:fixed;left:0;bottom:0;width:100%;height:var(--ic-space-lg);z-index:var(--ic-z-index-classification-banner);--ic-typography-color:currentcolor;--ic-color-classification-official:var(--ic-color-classification-blue);--ic-color-classification-official-foreground:#fff;--ic-color-classification-secret:var(--ic-color-classification-yellow);--ic-color-classification-secret-foreground:#000;--ic-color-classification-top-secret:var(--ic-color-classification-red);--ic-color-classification-top-secret-foreground:#fff;--ic-color-classification-not-set:var(--ic-color-classification-grey);--ic-color-classification-not-set-foreground:#fff}:host(.ic-classification-banner-inline){position:static;left:auto;bottom:auto}.classification-banner{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:var(--ic-space-xxxs) var(--ic-space-md)}.default{background-color:var(--ic-color-classification-not-set);color:var(--ic-color-classification-not-set-foreground)}.official,.official-sensitive{background-color:var(--ic-color-classification-official);color:var(--ic-color-classification-official-foreground)}.secret{background-color:var(--ic-color-classification-secret);color:var(--ic-color-classification-secret-foreground)}.top-secret{background-color:var(--ic-color-classification-top-secret);color:var(--ic-color-classification-top-secret-foreground)}.offscreen{position:absolute;left:-9999px;background-color:#fff;color:#000;text-transform:none}@media (forced-colors: active){.classification-banner{border:var(--ic-border-hc)}}';const a={default:"protective marking not set",official:"official","official-sensitive":"official sensitive",secret:"secret","top-secret":"top secret"};const n=class{constructor(i){e(this,i);this.additionalSelectors="";this.classification="default";this.country="uk";this.inline=false;this.upTo=false}render(){const{inline:e,upTo:t}=this;let{country:n,additionalSelectors:c,classification:r}=this;if(!n)n="";if(!c)c="";if(!r||r&&!a[r])r="default";return i(o,{class:{["ic-classification-banner-inline"]:e}},i("banner",{"aria-label":"Protective marking",class:{["classification-banner"]:true,[`${r}`]:r}},r!=="default"?i("span",{class:"offscreen"},"The protective marking of this page is:"," "):null,i("ic-typography",{variant:"caption-uppercase"},r==="default"?a[r]:`${t?"up to":""} \n ${n} \n ${a[r]} \n ${c}`)))}};n.style=t;export{n as ic_classification_banner};
2
+ //# sourceMappingURL=p-b01ffa55.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icClassificationBannerCss","classificationText","default","official","secret","ClassificationBanner","render","inline","upTo","this","country","additionalSelectors","classification","h","Host","class","variant"],"sources":["src/components/ic-classification-banner/ic-classification-banner.css?tag=ic-classification-banner&encapsulation=shadow","src/components/ic-classification-banner/ic-classification-banner.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-classification-banner: z-index of classification banner\n */\n\n:host {\n position: fixed;\n left: 0;\n bottom: 0;\n width: 100%;\n height: var(--ic-space-lg);\n z-index: var(--ic-z-index-classification-banner);\n\n --ic-typography-color: currentcolor;\n\n /* classification official */\n --ic-color-classification-official: var(--ic-color-classification-blue);\n --ic-color-classification-official-foreground: #fff;\n\n /* classification secret */\n --ic-color-classification-secret: var(--ic-color-classification-yellow);\n --ic-color-classification-secret-foreground: #000;\n\n /* classification top secret */\n --ic-color-classification-top-secret: var(--ic-color-classification-red);\n --ic-color-classification-top-secret-foreground: #fff;\n\n /* classification not set */\n --ic-color-classification-not-set: var(--ic-color-classification-grey);\n --ic-color-classification-not-set-foreground: #fff;\n}\n\n:host(.ic-classification-banner-inline) {\n position: static;\n left: auto;\n bottom: auto;\n}\n\n.classification-banner {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: var(--ic-space-xxxs) var(--ic-space-md);\n}\n\n.default {\n background-color: var(--ic-color-classification-not-set);\n color: var(--ic-color-classification-not-set-foreground);\n}\n\n.official,\n.official-sensitive {\n background-color: var(--ic-color-classification-official);\n color: var(--ic-color-classification-official-foreground);\n}\n\n.secret {\n background-color: var(--ic-color-classification-secret);\n color: var(--ic-color-classification-secret-foreground);\n}\n\n.top-secret {\n background-color: var(--ic-color-classification-top-secret);\n color: var(--ic-color-classification-top-secret-foreground);\n}\n\n.offscreen {\n position: absolute;\n left: -9999px;\n background-color: #fff;\n color: #000;\n text-transform: none;\n}\n\n@media (forced-colors: active) {\n .classification-banner {\n border: var(--ic-border-hc);\n }\n}\n","import { Component, Prop, h, Host } from \"@stencil/core\";\nimport { IcProtectiveMarkings } from \"./ic-classification-banner.types\";\n\nconst classificationText = {\n default: \"protective marking not set\",\n official: \"official\",\n \"official-sensitive\": \"official sensitive\",\n secret: \"secret\",\n \"top-secret\": \"top secret\",\n};\n\n@Component({\n tag: \"ic-classification-banner\",\n styleUrl: \"ic-classification-banner.css\",\n shadow: true,\n})\nexport class ClassificationBanner {\n /**\n * The additional information that will be displayed after the classification.\n */\n @Prop() additionalSelectors?: string = \"\";\n /**\n * The classification level to be displayed - also determines the banner and text colour.\n */\n @Prop() classification?: IcProtectiveMarkings = \"default\";\n /**\n * The optional text that will be displayed before classification to specify relevant country/countries.\n */\n @Prop() country?: string = \"uk\";\n /**\n * If `true`, the banner will appear inline with the page, instead of sticking to the bottom of the page.\n */\n @Prop() inline?: boolean = false;\n /**\n * If `true`, \"Up to\" will be displayed before the classification and country.\n */\n @Prop() upTo?: boolean = false;\n\n render() {\n const { inline, upTo } = this;\n\n // In case of unrecognized props, fallback to default\n let { country, additionalSelectors, classification } = this;\n if (!country) country = \"\";\n if (!additionalSelectors) additionalSelectors = \"\";\n if (\n !classification ||\n (classification && !classificationText[classification])\n )\n classification = \"default\";\n\n return (\n <Host class={{ [\"ic-classification-banner-inline\"]: inline }}>\n <banner\n aria-label=\"Protective marking\"\n class={{\n [\"classification-banner\"]: true,\n [`${classification}`]: classification,\n }}\n >\n {classification !== \"default\" ? (\n <span class=\"offscreen\">\n The protective marking of this page is:{\" \"}\n </span>\n ) : null}\n <ic-typography variant=\"caption-uppercase\">\n {classification === \"default\"\n ? classificationText[classification]\n : `${upTo ? \"up to\" : \"\"} \n ${country} \n ${classificationText[classification]} \n ${additionalSelectors}`}\n </ic-typography>\n </banner>\n </Host>\n );\n }\n}\n"],"mappings":"kDAAA,MAAMA,EAA4B,y3HCGlC,MAAMC,EAAqB,CACzBC,QAAS,6BACTC,SAAU,WACV,qBAAsB,qBACtBC,OAAQ,SACR,aAAc,c,MAQHC,EAAoB,M,kDAIQ,G,oBAIS,U,aAIrB,K,YAIA,M,UAIF,K,CAEzB,MAAAC,GACE,MAAMC,OAAEA,EAAMC,KAAEA,GAASC,KAGzB,IAAIC,QAAEA,EAAOC,oBAAEA,EAAmBC,eAAEA,GAAmBH,KACvD,IAAKC,EAASA,EAAU,GACxB,IAAKC,EAAqBA,EAAsB,GAChD,IACGC,GACAA,IAAmBX,EAAmBW,GAEvCA,EAAiB,UAEnB,OACEC,EAACC,EAAI,CAACC,MAAO,CAAE,CAAC,mCAAoCR,IAClDM,EAAA,uBACa,qBACXE,MAAO,CACL,CAAC,yBAA0B,KAC3B,CAAC,GAAGH,KAAmBA,IAGxBA,IAAmB,UAClBC,EAAA,QAAME,MAAM,aAAW,0CACmB,KAExC,KACJF,EAAA,iBAAeG,QAAQ,qBACpBJ,IAAmB,UAChBX,EAAmBW,GACnB,GAAGJ,EAAO,QAAU,uBACnBE,sBACAT,EAAmBW,uBACnBD,M"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as i,h as e,H as s,g as o}from"./p-6b5e91e2.js";import{s as a,r as n,f as r,a as l,p as h}from"./p-312cacae.js";const d='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block}ic-input-label.error{--ic-typography-color:var(--ic-status-error-default)}ic-input-validation{margin-top:var(--ic-space-sm)}:host(.ic-radio-group-small) ic-input-validation{margin-top:calc(var(--ic-space-sm) / 2)}ic-input-label ic-typography{margin-bottom:var(--ic-space-sm)}:host(.ic-radio-group-small) ic-input-label ic-typography{margin-bottom:calc(var(--ic-space-sm) / 2)}:host .radio-buttons-container{display:flex;flex-direction:column;gap:var(--ic-space-xxs)}:host(.ic-radio-group-small) .radio-buttons-container{gap:var(--ic-space-xxxs)}:host .radio-buttons-container.horizontal{display:flex;flex-direction:row;gap:calc(var(--ic-space-xl) + var(--ic-space-xs))}:host(.ic-radio-group-small) .radio-buttons-container.horizontal{gap:var(--ic-space-xl)}';const c=class{constructor(e){t(this,e);this.icChange=i(this,"icChange",7);this.resizeObserver=null;this.ADDITIONAL_FIELD="additional-field";this.RADIO_HORIZONTAL="horizontal";this.RADIO_VERTICAL="vertical";this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{this.checkOrientation()}));this.resizeObserver.observe(this.el)};this.handleKeyDown=t=>{switch(t.key){case"ArrowDown":case"ArrowRight":this.radioOptions[this.getNextItemToSelect(this.selectedChild,true)].click();t.preventDefault();break;case"ArrowUp":case"ArrowLeft":this.radioOptions[this.getNextItemToSelect(this.selectedChild,false)].click();t.preventDefault()}};this.getNextItemToSelect=(t,i)=>{const e=this.radioOptions.length-1;if(t<1){t=0}let s=i?t+1:t-1;if(s<0){s=e}else if(s>e){s=0}if(this.radioOptions[s].disabled){s=this.getNextItemToSelect(s,i)}return s};this.addSlotChangeListener=()=>{this.radioContainer.addEventListener("slotchange",this.setRadioOptions)};this.setFirstRadioOptionTabIndex=t=>{this.radioOptions[0].setTabIndex(t)};this.setRadioOptions=()=>{this.selectedChild=-1;this.checkedValue="";this.radioOptions=Array.from(this.el.querySelectorAll("ic-radio-option"));if(this.radioOptions.length>0){this.radioOptions.forEach(((t,i)=>{if(!t.selected){t.selected=this.checkedValue===t.value}t.name=this.name;t.groupLabel=this.label;if(t.selected){this.selectedChild=i;this.checkedValue=t.value}if(this.disabled){t.disabled=true}}));this.setFirstRadioOptionTabIndex(this.selectedChild>0?-1:0);if(this.initialOrientation===this.RADIO_HORIZONTAL&&this.radioOptions!==undefined&&(this.radioOptions.length>2||this.radioOptions.length===2&&(a(this.radioOptions[0],this.ADDITIONAL_FIELD)||a(this.radioOptions[1],this.ADDITIONAL_FIELD)))){this.currentOrientation=this.RADIO_VERTICAL}}};this.checkedValue="";this.currentOrientation=undefined;this.initialOrientation=undefined;this.selectedChild=-1;this.disabled=false;this.helperText=undefined;this.hideLabel=false;this.label=undefined;this.name=undefined;this.orientation="vertical";this.required=false;this.size="medium";this.validationStatus="";this.validationText=""}watchDisabledHandler(t){this.radioOptions.forEach((i=>i.disabled=t))}orientationChangeHandler(){this.initialOrientation=this.orientation;this.checkOrientation()}disconnectedCallback(){var t,i;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect();(i=this.radioContainer)===null||i===void 0?void 0:i.removeEventListener("slotchange",this.setRadioOptions)}componentWillLoad(){n(this.disabled,this.el);this.orientationChangeHandler();this.currentOrientation=this.initialOrientation}componentDidLoad(){this.setRadioOptions();r(this.runResizeObserver);this.addSlotChangeListener();l([{prop:this.label,propName:"label"},{prop:this.name,propName:"name"}],"Radio Group")}selectHandler({detail:t,target:i}){var e;this.checkedValue=t.value;const s=i;this.icChange.emit({value:this.checkedValue,selectedOption:{radio:s,textFieldValue:(e=s===null||s===void 0?void 0:s.querySelector("ic-text-field"))===null||e===void 0?void 0:e.value}});if(this.radioOptions!==undefined){this.radioOptions.forEach(((t,i)=>{t.selected=this.checkedValue===t.value;if(t.selected){this.selectedChild=i}}));this.setFirstRadioOptionTabIndex(this.selectedChild>0?-1:0)}}changeHandler(){const t=this.radioOptions.findIndex((t=>t.selected));if(t<0){this.setFirstRadioOptionTabIndex(0);this.selectedChild=t}}checkOrientation(){var t,i;if(this.initialOrientation===this.RADIO_HORIZONTAL){let e=0;if(Array.isArray(this.radioOptions)&&this.radioOptions.length>0){this.radioOptions.forEach((({clientWidth:t},i,s)=>{e+=t;if(i<s.length-1)e+=40}))}else{e=0}if(this.initialOrientation==this.RADIO_HORIZONTAL){if(this.radioOptions!==undefined&&(this.radioOptions.length>2||this.radioOptions.length===2&&(a(this.radioOptions[0],this.ADDITIONAL_FIELD)||a(this.radioOptions[1],this.ADDITIONAL_FIELD)))){this.currentOrientation=this.RADIO_VERTICAL}else{if(e>=((t=this.radioContainer)===null||t===void 0?void 0:t.clientWidth)){this.currentOrientation=this.RADIO_VERTICAL}else if(e<((i=this.radioContainer)===null||i===void 0?void 0:i.clientWidth)){this.currentOrientation=this.RADIO_HORIZONTAL}}}}}render(){const{currentOrientation:t,disabled:i,handleKeyDown:o,helperText:a,hideLabel:n,label:r,required:l,size:d,validationStatus:c,validationText:p}=this;return e(s,{onKeyDown:o,class:{"ic-radio-group-small":d==="small"}},e("div",{role:"radiogroup","aria-label":`${r}${l?", required":""}`},!n&&e("ic-input-label",{class:{[`${c}`]:true},label:r,helperText:a,required:l,disabled:i}),e("div",{class:{"radio-buttons-container":true,horizontal:t===this.RADIO_HORIZONTAL},ref:t=>this.radioContainer=t},e("slot",null))),h(c,i)&&e("ic-input-validation",{ariaLiveMode:"polite",status:c,message:p}))}get el(){return o(this)}static get watchers(){return{disabled:["watchDisabledHandler"],orientation:["orientationChangeHandler"]}}};c.style=d;export{c as ic_radio_group};
2
+ //# sourceMappingURL=p-bf1f0ac7.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icRadioGroupCss","RadioGroup","this","resizeObserver","ADDITIONAL_FIELD","RADIO_HORIZONTAL","RADIO_VERTICAL","runResizeObserver","ResizeObserver","checkOrientation","observe","el","handleKeyDown","event","key","radioOptions","getNextItemToSelect","selectedChild","click","preventDefault","currentItem","movingDown","numRadios","length","nextItem","disabled","addSlotChangeListener","radioContainer","addEventListener","setRadioOptions","setFirstRadioOptionTabIndex","value","setTabIndex","checkedValue","Array","from","querySelectorAll","forEach","radioOption","index","selected","name","groupLabel","label","initialOrientation","undefined","slotHasContent","currentOrientation","watchDisabledHandler","newValue","orientationChangeHandler","orientation","disconnectedCallback","_a","disconnect","_b","removeEventListener","componentWillLoad","removeDisabledFalse","componentDidLoad","checkResizeObserver","onComponentRequiredPropUndefined","prop","propName","selectHandler","detail","target","selectedOption","icChange","emit","radio","textFieldValue","querySelector","changeHandler","findIndex","totalWidth","isArray","clientWidth","i","arr","render","helperText","hideLabel","required","size","validationStatus","validationText","h","Host","onKeyDown","class","role","horizontal","ref","hasValidationStatus","ariaLiveMode","status","message"],"sources":["src/components/ic-radio-group/ic-radio-group.css?tag=ic-radio-group&encapsulation=shadow","src/components/ic-radio-group/ic-radio-group.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n}\n\nic-input-label.error {\n --ic-typography-color: var(--ic-status-error-default);\n}\n\nic-input-validation {\n margin-top: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small) ic-input-validation {\n margin-top: calc(var(--ic-space-sm) / 2);\n}\n\nic-input-label ic-typography {\n margin-bottom: var(--ic-space-sm);\n}\n\n:host(.ic-radio-group-small) ic-input-label ic-typography {\n margin-bottom: calc(var(--ic-space-sm) / 2);\n}\n\n:host .radio-buttons-container {\n display: flex;\n flex-direction: column;\n gap: var(--ic-space-xxs);\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container {\n gap: var(--ic-space-xxxs);\n}\n\n:host .radio-buttons-container.horizontal {\n display: flex;\n flex-direction: row;\n gap: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-radio-group-small) .radio-buttons-container.horizontal {\n gap: var(--ic-space-xl);\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Listen,\n Element,\n Event,\n EventEmitter,\n Watch,\n} from \"@stencil/core\";\nimport {\n hasValidationStatus,\n slotHasContent,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n checkResizeObserver,\n} from \"../../utils/helpers\";\nimport {\n IcInformationStatusOrEmpty,\n IcOrientation,\n IcSizesNoLarge,\n IcValueEventDetail,\n} from \"../../utils/types\";\nimport { IcChangeEventDetail } from \"./ic-radio-group.types\";\n\n@Component({\n tag: \"ic-radio-group\",\n styleUrl: \"ic-radio-group.css\",\n shadow: true,\n})\nexport class RadioGroup {\n private radioContainer: HTMLDivElement;\n private radioOptions: HTMLIcRadioOptionElement[];\n private resizeObserver: ResizeObserver = null;\n private ADDITIONAL_FIELD = \"additional-field\";\n private RADIO_HORIZONTAL: IcOrientation = \"horizontal\";\n private RADIO_VERTICAL: IcOrientation = \"vertical\";\n\n @Element() el: HTMLIcRadioGroupElement;\n\n @State() checkedValue: string = \"\";\n @State() currentOrientation: IcOrientation;\n @State() initialOrientation: IcOrientation;\n @State() selectedChild: number = -1;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n\n @Watch(\"disabled\")\n watchDisabledHandler(newValue: boolean): void {\n this.radioOptions.forEach(\n (radioOption) => (radioOption.disabled = newValue)\n );\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 radio group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the radio group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n /**\n * The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical.\n */\n @Prop() orientation: IcOrientation = \"vertical\";\n\n /**\n * If `true`, the radio group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * The size of the radio group component.\n */\n @Prop() size?: IcSizesNoLarge = \"medium\";\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n /**\n * The validation text - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationText: string = \"\";\n\n @Watch(\"orientation\")\n orientationChangeHandler(): void {\n this.initialOrientation = this.orientation;\n this.checkOrientation();\n }\n\n /**\n * Emitted when a user selects a radio.\n */\n @Event() icChange: EventEmitter<IcChangeEventDetail>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n this.radioContainer?.removeEventListener(\n \"slotchange\",\n this.setRadioOptions\n );\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n\n this.orientationChangeHandler();\n this.currentOrientation = this.initialOrientation;\n }\n\n componentDidLoad(): void {\n this.setRadioOptions();\n checkResizeObserver(this.runResizeObserver);\n this.addSlotChangeListener();\n\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Radio Group\"\n );\n }\n\n @Listen(\"icCheck\")\n selectHandler({ detail, target }: CustomEvent<IcValueEventDetail>): void {\n this.checkedValue = detail.value;\n const selectedOption = target as HTMLIcRadioOptionElement;\n this.icChange.emit({\n value: this.checkedValue,\n selectedOption: {\n radio: selectedOption,\n textFieldValue: selectedOption?.querySelector(\"ic-text-field\")?.value,\n },\n });\n\n if (this.radioOptions !== undefined) {\n this.radioOptions.forEach((radioOption, index) => {\n radioOption.selected = this.checkedValue === radioOption.value;\n if (radioOption.selected) {\n this.selectedChild = index;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n }\n }\n\n @Listen(\"icSelectedChange\")\n changeHandler(): void {\n const selectedOption = this.radioOptions.findIndex(\n (radioOption) => radioOption.selected\n );\n if (selectedOption < 0) {\n this.setFirstRadioOptionTabIndex(0);\n this.selectedChild = selectedOption;\n }\n }\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n this.checkOrientation();\n });\n\n this.resizeObserver.observe(this.el);\n };\n\n private checkOrientation() {\n if (this.initialOrientation === this.RADIO_HORIZONTAL) {\n let totalWidth = 0;\n if (Array.isArray(this.radioOptions) && this.radioOptions.length > 0) {\n this.radioOptions.forEach(({ clientWidth }, i, arr) => {\n totalWidth += clientWidth;\n if (i < arr.length - 1) totalWidth += 40;\n });\n } else {\n totalWidth = 0;\n }\n\n if (this.initialOrientation == this.RADIO_HORIZONTAL) {\n if (\n this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))\n ) {\n this.currentOrientation = this.RADIO_VERTICAL;\n } else {\n if (totalWidth >= this.radioContainer?.clientWidth) {\n this.currentOrientation = this.RADIO_VERTICAL;\n } else if (totalWidth < this.radioContainer?.clientWidth) {\n this.currentOrientation = this.RADIO_HORIZONTAL;\n }\n }\n }\n }\n }\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, true)\n ].click();\n event.preventDefault();\n break;\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, false)\n ].click();\n event.preventDefault();\n }\n };\n\n private getNextItemToSelect = (\n currentItem: number,\n movingDown: boolean\n ): number => {\n const numRadios = this.radioOptions.length - 1;\n\n if (currentItem < 1) {\n currentItem = 0;\n }\n\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n\n //check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numRadios;\n } else if (nextItem > numRadios) {\n nextItem = 0;\n }\n\n //if next item is disabled then find next\n if (this.radioOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n\n return nextItem;\n };\n\n private addSlotChangeListener = () => {\n this.radioContainer.addEventListener(\"slotchange\", this.setRadioOptions);\n };\n\n private setFirstRadioOptionTabIndex = (value: number) => {\n this.radioOptions[0].setTabIndex(value);\n };\n\n private setRadioOptions = () => {\n this.selectedChild = -1;\n this.checkedValue = \"\";\n this.radioOptions = Array.from(this.el.querySelectorAll(\"ic-radio-option\"));\n if (this.radioOptions.length > 0) {\n this.radioOptions.forEach((radioOption, index) => {\n if (!radioOption.selected) {\n radioOption.selected = this.checkedValue === radioOption.value;\n }\n radioOption.name = this.name;\n radioOption.groupLabel = this.label;\n if (radioOption.selected) {\n this.selectedChild = index;\n this.checkedValue = radioOption.value;\n }\n if (this.disabled) {\n radioOption.disabled = true;\n }\n });\n this.setFirstRadioOptionTabIndex(this.selectedChild > 0 ? -1 : 0);\n\n if (\n this.initialOrientation === this.RADIO_HORIZONTAL &&\n this.radioOptions !== undefined &&\n (this.radioOptions.length > 2 ||\n (this.radioOptions.length === 2 &&\n (slotHasContent(this.radioOptions[0], this.ADDITIONAL_FIELD) ||\n slotHasContent(this.radioOptions[1], this.ADDITIONAL_FIELD))))\n ) {\n this.currentOrientation = this.RADIO_VERTICAL;\n }\n }\n };\n\n render() {\n const {\n currentOrientation,\n disabled,\n handleKeyDown,\n helperText,\n hideLabel,\n label,\n required,\n size,\n validationStatus,\n validationText,\n } = this;\n\n return (\n <Host\n onKeyDown={handleKeyDown}\n class={{ \"ic-radio-group-small\": size === \"small\" }}\n >\n <div\n role=\"radiogroup\"\n aria-label={`${label}${required ? \", required\" : \"\"}`}\n >\n {!hideLabel && (\n <ic-input-label\n class={{ [`${validationStatus}`]: true }}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n ></ic-input-label>\n )}\n <div\n class={{\n \"radio-buttons-container\": true,\n horizontal: currentOrientation === this.RADIO_HORIZONTAL,\n }}\n ref={(el) => (this.radioContainer = el)}\n >\n <slot></slot>\n </div>\n </div>\n {hasValidationStatus(validationStatus, disabled) && (\n <ic-input-validation\n ariaLiveMode=\"polite\"\n status={validationStatus}\n message={validationText}\n ></ic-input-validation>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{r as e,c as t,h as o,H as i,g as n}from"./p-6b5e91e2.js";import{I as a}from"./p-26b7b18f.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}:host:not[hidden]{display:block}:host(.ic-tab-panel-light){color:white}';const r=class{constructor(o){e(this,o);this.tabPanelCreated=t(this,"tabPanelCreated",7);this.tabPanelRemoved=t(this,"tabPanelRemoved",7);this.appearance="dark";this.contextId="default"}connectedCallback(){this.tabPanelCreated.emit(this.el)}disconnectedCallback(){var e;(e=document.querySelector(`ic-tab-context[context-id=${this.contextId}]`))===null||e===void 0?void 0:e.tabRemovedHandler()}render(){return o(i,{class:{"ic-tab-panel-light":this.appearance===a.Light},role:"tabpanel"},o("div",null,o("slot",null)))}get el(){return n(this)}};r.style=s;export{r as ic_tab_panel};
2
- //# sourceMappingURL=p-9df32798.entry.js.map
1
+ import{r as e,c as t,h as i,H as o,g as n}from"./p-6b5e91e2.js";import{d as a}from"./p-312cacae.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}:host:not[hidden]{display:block}:host{color:var(--ic-color-text-primary)}';const r=class{constructor(i){e(this,i);this.tabPanelCreated=t(this,"tabPanelCreated",7);this.tabPanelRemoved=t(this,"tabPanelRemoved",7);this.monochrome=false;this.panelId=undefined;this.selectedTab=undefined;this.tabPosition=undefined;this.theme="inherit"}connectedCallback(){this.tabPanelCreated.emit(this.el)}render(){const{panelId:e,selectedTab:t,theme:n}=this;return i(o,{class:{[`ic-theme-${n}`]:n!=="inherit"},role:"tabpanel",hidden:a(e)&&a(t)?!(e===t):true},i("div",null,i("slot",null)))}get el(){return n(this)}};r.style=s;export{r as ic_tab_panel};
2
+ //# sourceMappingURL=p-c06a3b97.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icTabPanelCss","TabPanel","connectedCallback","this","tabPanelCreated","emit","el","render","panelId","selectedTab","theme","h","Host","class","role","hidden","isPropDefined"],"sources":["src/components/ic-tab-panel/ic-tab-panel.css?tag=ic-tab-panel&encapsulation=shadow","src/components/ic-tab-panel/ic-tab-panel.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host:not[hidden] {\n display: block;\n}\n\n:host {\n color: var(--ic-color-text-primary);\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Prop,\n h,\n} from \"@stencil/core\";\nimport { IcThemeMode } from \"../../utils/types\";\nimport { isPropDefined } from \"../../utils/helpers\";\n\n@Component({\n tag: \"ic-tab-panel\",\n styleUrl: \"ic-tab-panel.css\",\n shadow: true,\n})\nexport class TabPanel {\n @Element() el: HTMLIcTabPanelElement;\n\n /** @internal Determines whether black variant of the tabs should be displayed. */\n @Prop() monochrome?: boolean = false;\n\n /**\n * @internal The shared ID that links the panel and tab.\n */\n @Prop({ reflect: true }) panelId?: string;\n\n /**\n * @internal The shared ID of the currently selected tab.\n */\n @Prop() selectedTab?: string;\n\n /**\n * @internal The position of the tab panel inside the tabs array in context.\n */\n @Prop({ reflect: true }) tabPosition?: number;\n\n /** @internal Determines whether the light or dark variant of the tabs should be displayed. */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * @internal Emitted when a tab panel is dynamically created.\n */\n @Event() tabPanelCreated: EventEmitter<HTMLIcTabPanelElement>;\n\n /**\n * @internal Emitted when a tab panel is unmounted.\n */\n @Event() tabPanelRemoved: EventEmitter<void>;\n\n connectedCallback(): void {\n this.tabPanelCreated.emit(this.el);\n }\n\n render() {\n const { panelId, selectedTab, theme } = this;\n return (\n <Host\n class={{\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n role=\"tabpanel\"\n hidden={\n isPropDefined(panelId) && isPropDefined(selectedTab)\n ? !(panelId === selectedTab)\n : true\n }\n >\n <div>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"oGAAA,MAAMA,EAAgB,66E,MCiBTC,EAAQ,M,2IAIY,M,wFAkBD,S,CAY9B,iBAAAC,GACEC,KAAKC,gBAAgBC,KAAKF,KAAKG,G,CAGjC,MAAAC,GACE,MAAMC,QAAEA,EAAOC,YAAEA,EAAWC,MAAEA,GAAUP,KACxC,OACEQ,EAACC,EAAI,CACHC,MAAO,CACL,CAAC,YAAYH,KAAUA,IAAU,WAEnCI,KAAK,WACLC,OACEC,EAAcR,IAAYQ,EAAcP,KAClCD,IAAYC,GACd,MAGNE,EAAA,WACEA,EAAA,c"}
@@ -0,0 +1,2 @@
1
+ import{r as t,f as e,h as i,g as a}from"./p-6b5e91e2.js";import{c as o,r,i as n,a as s,h as c,I as d}from"./p-312cacae.js";import{C as l}from"./p-3b185c32.js";const b='/*! 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:flex}a{text-decoration:none !important;color:var(--ic-architechtural-black) !important}button{border:none;background-color:transparent;outline:var(--ic-hc-focus-outline)}.card,.card.clickable{display:flex;flex-direction:column;border:var(--ic-border-default);border-radius:var(--ic-border-radius);box-sizing:border-box;padding:var(--ic-space-md);text-align:left;color:var(--ic-architechtural-black);transition:var(--ic-easing-transition-fast);position:relative;width:inherit;min-width:-moz-fit-content;min-width:fit-content;height:-moz-fit-content;height:fit-content;min-height:100%}.dark.card,.dark.card.clickable{border:var(--ic-border-width) solid var(--ic-architectural-700)}.card.clickable:hover{background-color:var(--ic-action-default-bg-hover);border:var(--ic-border-hover);cursor:pointer}.card.clickable:focus,.card.clickable.focussed{background-color:var(--ic-action-default-bg-hover);box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline);border:var(--ic-border-pressed-default)}.card.clickable:active{background-color:var(--ic-action-default-bg-active);box-shadow:var(--ic-border-focus)}.card.disabled{border:var(--ic-border-disabled)}.card.fullwidth{width:100%}.card-header{display:flex;align-items:center}.icon{display:flex;align-items:center;padding-right:var(--ic-space-xs)}.card.disabled ::slotted(svg){fill:var(--ic-color-text-tertiary)}.card.clickable .card-title{--ic-typography-color:var(--ic-color-hyperlink-default);color:var(--ic-color-hyperlink-default);text-decoration:underline;text-decoration-thickness:var(--ic-space-1px)}.card.clickable:hover .card-title,.card.clickable:focus .card-title,.card.clickable.focussed .card-title{display:inline-block;border-bottom:0.25rem solid !important;margin-bottom:-0.25rem !important;text-decoration:none}@supports (text-underline-offset: 25%){.card.clickable:hover .card-title,.card.clickable:focus .card-title,.card.clickable.focussed .card-title{text-decoration-line:underline;text-decoration-thickness:25%;text-underline-offset:25%;border-bottom:0 !important;margin-bottom:0 !important}}.card.clickable:active .card-title{text-decoration:none}.card.disabled .card-title{text-decoration:underline;text-decoration-thickness:var(--ic-space-1px);text-decoration-color:var(--ic-color-text-tertiary);color:var(--ic-color-text-tertiary);--ic-typography-color:var(--ic-color-text-tertiary)}.subheading{margin-top:var(--ic-space-xxs)}.adornment{margin-top:var(--ic-space-xxs)}.card-message{margin-top:var(--ic-space-md);align-items:left}.card.disabled .card-message,.card.disabled .subheading{--ic-typography-color:var(--ic-color-text-tertiary)}.interaction-button{margin-left:auto}.image-top{margin-bottom:var(--ic-space-md);display:flex;justify-content:center}.image-mid{margin-top:var(--ic-space-md);display:flex;justify-content:center}.interaction-area{display:flex;flex-grow:1;gap:var(--ic-space-md);margin-top:var(--ic-space-md);align-items:flex-end}.interaction-controls{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ic-space-sm)}.toggle-button{color:var(--ic-action-default);width:2.5rem;height:2.5rem;padding:var(--ic-space-xs);margin:var(--ic-space-1px) 0;min-width:0;cursor:pointer;transition:var(--ic-easing-transition-fast);border-radius:var(--ic-border-radius);display:inline-flex;flex-direction:row;justify-content:center;align-items:center;background:none;border:none;box-sizing:border-box;white-space:nowrap;vertical-align:middle}#ic-tooltip-expand-button{margin-left:auto;position:relative}.toggle-button:hover,.toggle-button:hover:focus{background-color:var(--ic-action-default-bg-hover);color:var(--ic-action-default-hover)}.toggle-button:focus{box-shadow:var(--ic-border-focus)}.toggle-button:active:not(:focus){background-color:var(--ic-action-default-bg-active);color:var(--ic-action-default-pressed)}.toggle-button svg{pointer-events:none;width:100% !important;height:100% !important;fill:currentcolor !important}.toggle-button-closed svg{transform:rotate(90deg)}.toggle-button-expanded svg{transform:rotate(-90deg)}.expanded-content{margin-top:var(--ic-space-md)}@media (forced-colors: active){.card ::slotted(svg){fill:currentcolor}.card.disabled ::slotted(svg){fill:GrayText !important}.card.disabled{border-color:GrayText !important}.card.disabled .card-message,.card.disabled .subheading,.card.disabled .card-title{color:GrayText;--ic-typography-color:GrayText}}';const h=class{constructor(i){t(this,i);this.hostMutationObserver=null;this.parentFocussed=()=>{this.isFocussed=true};this.parentBlurred=()=>{this.isFocussed=false};this.toggleExpanded=()=>{this.areaExpanded=!this.areaExpanded};this.hostMutationCallback=t=>{if(t.some((({type:t,addedNodes:e,removedNodes:i})=>t==="childList"?o(e,i,["message","adornment","expanded-content","image-top","image-mid","icon","interaction-button","badge","interaction-controls"]):false))){e(this)}};this.appearance="default";this.areaExpanded=false;this.isFocussed=false;this.parentEl=null;this.parentIsAnchorTag=false;this.clickable=false;this.disabled=false;this.expandable=false;this.fullWidth=false;this.heading=undefined;this.href=undefined;this.hreflang="";this.message="";this.referrerpolicy=undefined;this.rel=undefined;this.subheading=undefined;this.target=undefined}disconnectedCallback(){var t;if(this.parentIsAnchorTag){this.parentEl.removeEventListener("focus",this.parentFocussed);this.parentEl.removeEventListener("blur",this.parentBlurred)}(t=this.hostMutationObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){this.parentEl=this.el.parentElement;if(this.parentEl.tagName==="A"){this.clickable=true;this.parentIsAnchorTag=true;this.parentEl.classList.add("ic-card-wrapper-link");this.parentEl.addEventListener("focus",this.parentFocussed);this.parentEl.addEventListener("blur",this.parentBlurred)}r(this.disabled,this.el)}componentDidLoad(){!n(this.el,"heading")&&s([{prop:this.heading,propName:"heading"}],"Card");this.updateTheme();this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{childList:true})}handleHostClick(t){if(this.disabled){t.stopImmediatePropagation()}}themeChangeHandler(t){const e=t.detail;this.updateTheme(e.mode)}async setFocus(){if(this.el.shadowRoot.querySelector("a")){this.el.shadowRoot.querySelector("a").focus()}else if(this.el.shadowRoot.querySelector("button")){this.el.shadowRoot.querySelector("button").focus()}}updateTheme(t=null){const e=c(this.el,t||null);if(e!==d.Default){this.appearance=e}}render(){const{clickable:t,disabled:e,expandable:a,heading:o,message:r,href:s,hreflang:c,referrerpolicy:b,rel:h,subheading:u,target:p,fullWidth:m,parentIsAnchorTag:g,isFocussed:f}=this;const v=g?"div":t?this.href===undefined?"button":"a":"div";const x=v=="a"&&{href:s,hrefLang:c,referrerPolicy:b,rel:h,target:p};return i(v,Object.assign({class:{["card"]:true,["clickable"]:t&&!e,["disabled"]:e,["fullwidth"]:m,["focussed"]:f,["dark"]:this.appearance===d.Dark},tabindex:t&&!g?0:null,"aria-disabled":e?"true":null,disabled:e?true:null},x),n(this.el,"image-top")&&i("div",{class:"image-top"},i("slot",{name:"image-top"})),i("div",{class:"card-header"},n(this.el,"icon")&&i("div",{class:"icon"},i("slot",{name:"icon"})),i("div",{class:"card-title"},i("slot",{name:"heading"},i("ic-typography",{variant:"h4"},i("p",null,o)))),n(this.el,"interaction-button")&&i("div",{class:"interaction-button"},i("slot",{name:"interaction-button"}))),(u||n(this.el,"subheading"))&&i("div",{class:"subheading"},i("slot",{name:"subheading"},i("ic-typography",{variant:"subtitle-small"},u))),n(this.el,"adornment")&&i("div",{class:"adornment"},i("slot",{name:"adornment"})),n(this.el,"image-mid")&&i("div",{class:"image-mid"},i("slot",{name:"image-mid"})),(r||n(this.el,"message"))&&i("div",{class:{["card-message"]:true}},r&&i("ic-typography",{variant:"body"},r),n(this.el,"message")&&i("slot",{name:"message"})),(n(this.el,"interaction-controls")||a)&&i("div",{class:"interaction-area"},i("div",{class:"interaction-controls"},i("slot",{name:"interaction-controls"})),a&&i("ic-tooltip",{id:"ic-tooltip-expand-button",label:"Toggle expandable area",silent:true},i("button",{class:{["toggle-button"]:true,[`toggle-button-${this.areaExpanded?"expanded":"closed"}`]:true},"aria-label":"Toggle expandable area","aria-expanded":`${this.areaExpanded}`,"aria-controls":this.areaExpanded?"expanded-content-area":null,onClick:this.toggleExpanded,innerHTML:l}))),n(this.el,"expanded-content")&&this.areaExpanded&&i("div",{class:"expanded-content",id:"expanded-content-area"},i("slot",{name:"expanded-content"})),n(this.el,"badge")&&i("slot",{name:"badge"}))}get el(){return a(this)}};h.style=b;export{h as ic_card_vertical};
2
+ //# sourceMappingURL=p-c86d48b6.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icCardVerticalCss","CardVertical","this","hostMutationObserver","parentFocussed","isFocussed","parentBlurred","toggleExpanded","areaExpanded","hostMutationCallback","mutationList","some","type","addedNodes","removedNodes","checkSlotInChildMutations","forceUpdate","disconnectedCallback","parentIsAnchorTag","parentEl","removeEventListener","_a","disconnect","componentWillLoad","el","parentElement","tagName","clickable","classList","add","addEventListener","removeDisabledFalse","disabled","componentDidLoad","isSlotUsed","onComponentRequiredPropUndefined","prop","heading","propName","updateTheme","MutationObserver","observe","childList","handleHostClick","event","stopImmediatePropagation","themeChangeHandler","ev","theme","detail","mode","setFocus","shadowRoot","querySelector","focus","newTheme","foregroundColor","getThemeFromContext","IcThemeForegroundEnum","Default","appearance","render","expandable","message","href","hreflang","referrerpolicy","rel","subheading","target","fullWidth","Component","undefined","attrs","hrefLang","referrerPolicy","h","Object","assign","class","Dark","tabindex","name","variant","id","label","silent","onClick","innerHTML","chevronIcon"],"sources":["src/components/ic-card-vertical/ic-card-vertical.css?tag=ic-card-vertical&encapsulation=shadow","src/components/ic-card-vertical/ic-card-vertical.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: flex;\n}\n\na {\n text-decoration: none !important;\n color: var(--ic-architechtural-black) !important;\n}\n\nbutton {\n border: none;\n background-color: transparent;\n outline: var(--ic-hc-focus-outline);\n}\n\n.card,\n.card.clickable {\n display: flex;\n flex-direction: column;\n border: var(--ic-border-default);\n border-radius: var(--ic-border-radius);\n box-sizing: border-box;\n padding: var(--ic-space-md);\n text-align: left;\n color: var(--ic-architechtural-black);\n transition: var(--ic-easing-transition-fast);\n position: relative;\n width: inherit;\n min-width: fit-content;\n height: fit-content;\n min-height: 100%;\n}\n\n.dark.card,\n.dark.card.clickable {\n border: var(--ic-border-width) solid var(--ic-architectural-700);\n}\n\n.card.clickable:hover {\n background-color: var(--ic-action-default-bg-hover);\n border: var(--ic-border-hover);\n cursor: pointer;\n}\n\n.card.clickable:focus,\n.card.clickable.focussed {\n background-color: var(--ic-action-default-bg-hover);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n border: var(--ic-border-pressed-default);\n}\n\n.card.clickable:active {\n background-color: var(--ic-action-default-bg-active);\n box-shadow: var(--ic-border-focus);\n}\n\n.card.disabled {\n border: var(--ic-border-disabled);\n}\n\n.card.fullwidth {\n width: 100%;\n}\n\n.card-header {\n display: flex;\n align-items: center;\n}\n\n.icon {\n display: flex;\n align-items: center;\n padding-right: var(--ic-space-xs);\n}\n\n.card.disabled ::slotted(svg) {\n fill: var(--ic-color-text-tertiary);\n}\n\n.card.clickable .card-title {\n --ic-typography-color: var(--ic-color-hyperlink-default);\n\n color: var(--ic-color-hyperlink-default);\n text-decoration: underline;\n text-decoration-thickness: var(--ic-space-1px);\n}\n\n.card.clickable:hover .card-title,\n.card.clickable:focus .card-title,\n.card.clickable.focussed .card-title {\n display: inline-block;\n border-bottom: 0.25rem solid !important;\n margin-bottom: -0.25rem !important;\n text-decoration: none;\n}\n\n@supports (text-underline-offset: 25%) {\n .card.clickable:hover .card-title,\n .card.clickable:focus .card-title,\n .card.clickable.focussed .card-title {\n text-decoration-line: underline;\n text-decoration-thickness: 25%;\n text-underline-offset: 25%;\n border-bottom: 0 !important;\n margin-bottom: 0 !important;\n }\n}\n\n.card.clickable:active .card-title {\n text-decoration: none;\n}\n\n.card.disabled .card-title {\n text-decoration: underline;\n text-decoration-thickness: var(--ic-space-1px);\n text-decoration-color: var(--ic-color-text-tertiary);\n color: var(--ic-color-text-tertiary);\n\n --ic-typography-color: var(--ic-color-text-tertiary);\n}\n\n.subheading {\n margin-top: var(--ic-space-xxs);\n}\n\n.adornment {\n margin-top: var(--ic-space-xxs);\n}\n\n.card-message {\n margin-top: var(--ic-space-md);\n align-items: left;\n}\n\n.card.disabled .card-message,\n.card.disabled .subheading {\n --ic-typography-color: var(--ic-color-text-tertiary);\n}\n\n.interaction-button {\n margin-left: auto;\n}\n\n.image-top {\n margin-bottom: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.image-mid {\n margin-top: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.interaction-area {\n display: flex;\n flex-grow: 1;\n gap: var(--ic-space-md);\n margin-top: var(--ic-space-md);\n align-items: flex-end;\n}\n\n.interaction-controls {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: var(--ic-space-sm);\n}\n\n.toggle-button {\n color: var(--ic-action-default);\n width: 2.5rem;\n height: 2.5rem;\n padding: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n min-width: 0;\n cursor: pointer;\n transition: var(--ic-easing-transition-fast);\n border-radius: var(--ic-border-radius);\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n background: none;\n border: none;\n box-sizing: border-box;\n white-space: nowrap;\n vertical-align: middle;\n}\n\n#ic-tooltip-expand-button {\n margin-left: auto;\n position: relative;\n}\n\n.toggle-button:hover,\n.toggle-button:hover:focus {\n background-color: var(--ic-action-default-bg-hover);\n color: var(--ic-action-default-hover);\n}\n\n.toggle-button:focus {\n box-shadow: var(--ic-border-focus);\n}\n\n.toggle-button:active:not(:focus) {\n background-color: var(--ic-action-default-bg-active);\n color: var(--ic-action-default-pressed);\n}\n\n.toggle-button svg {\n pointer-events: none;\n width: 100% !important;\n height: 100% !important;\n fill: currentcolor !important;\n}\n\n.toggle-button-closed svg {\n transform: rotate(90deg);\n}\n\n.toggle-button-expanded svg {\n transform: rotate(-90deg);\n}\n\n.expanded-content {\n margin-top: var(--ic-space-md);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n .card ::slotted(svg) {\n fill: currentcolor;\n }\n\n .card.disabled ::slotted(svg) {\n fill: GrayText !important;\n }\n\n .card.disabled {\n border-color: GrayText !important;\n }\n\n .card.disabled .card-message,\n .card.disabled .subheading,\n .card.disabled .card-title {\n color: GrayText;\n\n --ic-typography-color: GrayText;\n }\n}\n\n/* Add back in after storybook has the `color-scheme: light dark` code */\n\n/* @media (prefers-color-scheme: dark) and (not (forced-colors: active)) {\n ::slotted([slot=\"icon\"]) {\n fill: var(--ic-architectural-white);\n }\n} */\n","import {\n Component,\n Element,\n Listen,\n Prop,\n State,\n h,\n Method,\n forceUpdate,\n} from \"@stencil/core\";\nimport {\n onComponentRequiredPropUndefined,\n isSlotUsed,\n getThemeFromContext,\n removeDisabledFalse,\n checkSlotInChildMutations,\n} from \"../../utils/helpers\";\nimport {\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\n\n/**\n * @slot heading - Content will be placed at the top of the card to the right of the icon.\n * @slot message - Content will be placed in the main body of the card.\n * @slot subheading - Content will be placed below the card heading.\n * @slot adornment - Content will be placed below the card subheading.\n * @slot image-top - Content will be placed at the top of the card above all other content.\n * @slot image-mid - Content will be placed below the card heading section.\n * @slot icon - Content will be placed to the left of the card heading.\n * @slot interaction-button - Content will be placed in the top right corner of the heading section.\n * @slot interaction-controls - Content will be placed below the card message.\n * @slot expanded-content - Content will be placed below the interaction controls but will not initially be rendered.\n * @slot badge - Badge component overlaying the top right of the card.\n */\n@Component({\n tag: \"ic-card-vertical\",\n styleUrl: \"ic-card-vertical.css\",\n shadow: true,\n})\nexport class CardVertical {\n private hostMutationObserver: MutationObserver = null;\n\n @Element() el: HTMLIcCardVerticalElement;\n\n @State() appearance?: IcThemeForeground = \"default\";\n @State() areaExpanded: boolean = false;\n @State() isFocussed: boolean = false;\n @State() parentEl: HTMLElement | null = null;\n @State() parentIsAnchorTag: boolean = false;\n\n /**\n * If `true`, the card will be a clickable variant, instead of static.\n */\n @Prop({ mutable: true }) clickable?: boolean = false;\n\n /**\n * If `true`, the card will be disabled if it is clickable.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * If `true`, the card will have an expandable area and expansion toggle button.\n */\n @Prop() expandable?: boolean = false;\n\n /**\n * If `true`, the card will fill the width of the container.\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * The heading for the card. This is required, unless a slotted heading is used.\n */\n @Prop() heading?: string;\n\n /**\n * The URL that the clickable card link points to. If set, the clickable card will render as an \"a\" tag, otherwise it will render as a button.\n */\n @Prop() href?: string | undefined;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n\n /**\n * The main body message of the card.\n */\n @Prop() message?: 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 subheading for the card.\n */\n @Prop() subheading?: 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 disconnectedCallback(): void {\n if (this.parentIsAnchorTag) {\n this.parentEl.removeEventListener(\"focus\", this.parentFocussed);\n this.parentEl.removeEventListener(\"blur\", this.parentBlurred);\n }\n\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.parentEl = this.el.parentElement;\n\n if (this.parentEl.tagName === \"A\") {\n this.clickable = true;\n this.parentIsAnchorTag = true;\n this.parentEl.classList.add(\"ic-card-wrapper-link\");\n this.parentEl.addEventListener(\"focus\", this.parentFocussed);\n this.parentEl.addEventListener(\"blur\", this.parentBlurred);\n }\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Card\"\n );\n this.updateTheme();\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n @Listen(\"click\", { capture: true })\n handleHostClick(event: Event): void {\n if (this.disabled) {\n event.stopImmediatePropagation();\n }\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.updateTheme(theme.mode);\n }\n\n /**\n * Sets focus on the card.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.el.shadowRoot.querySelector(\"a\")) {\n this.el.shadowRoot.querySelector(\"a\").focus();\n } else if (this.el.shadowRoot.querySelector(\"button\")) {\n this.el.shadowRoot.querySelector(\"button\").focus();\n }\n }\n\n private parentFocussed = (): void => {\n this.isFocussed = true;\n };\n\n private parentBlurred = (): void => {\n this.isFocussed = false;\n };\n\n private updateTheme(newTheme: IcThemeForeground = null): void {\n const foregroundColor = getThemeFromContext(this.el, newTheme || null);\n\n if (foregroundColor !== IcThemeForegroundEnum.Default) {\n this.appearance = foregroundColor;\n }\n }\n\n private toggleExpanded = (): void => {\n this.areaExpanded = !this.areaExpanded;\n };\n\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n if (\n mutationList.some(({ type, addedNodes, removedNodes }) =>\n type === \"childList\"\n ? checkSlotInChildMutations(addedNodes, removedNodes, [\n \"message\",\n \"adornment\",\n \"expanded-content\",\n \"image-top\",\n \"image-mid\",\n \"icon\",\n \"interaction-button\",\n \"badge\",\n \"interaction-controls\",\n ])\n : false\n )\n ) {\n forceUpdate(this);\n }\n };\n\n render() {\n const {\n clickable,\n disabled,\n expandable,\n heading,\n message,\n href,\n hreflang,\n referrerpolicy,\n rel,\n subheading,\n target,\n fullWidth,\n parentIsAnchorTag,\n isFocussed,\n } = this;\n\n const Component = parentIsAnchorTag\n ? \"div\"\n : clickable\n ? this.href === undefined\n ? \"button\"\n : \"a\"\n : \"div\";\n\n const attrs = Component == \"a\" && {\n href: href,\n hrefLang: hreflang,\n referrerPolicy: referrerpolicy,\n rel: rel,\n target: target,\n };\n\n return (\n <Component\n class={{\n [\"card\"]: true,\n [\"clickable\"]: clickable && !disabled,\n [\"disabled\"]: disabled,\n [\"fullwidth\"]: fullWidth,\n [\"focussed\"]: isFocussed,\n [\"dark\"]: this.appearance === IcThemeForegroundEnum.Dark,\n }}\n tabindex={clickable && !parentIsAnchorTag ? 0 : null}\n aria-disabled={disabled ? \"true\" : null}\n disabled={disabled ? true : null}\n {...attrs}\n >\n {isSlotUsed(this.el, \"image-top\") && (\n <div class=\"image-top\">\n <slot name=\"image-top\"></slot>\n </div>\n )}\n <div class=\"card-header\">\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon\">\n <slot name=\"icon\" />\n </div>\n )}\n <div class=\"card-title\">\n <slot name=\"heading\">\n <ic-typography variant=\"h4\">\n <p>{heading}</p>\n </ic-typography>\n </slot>\n </div>\n {isSlotUsed(this.el, \"interaction-button\") && (\n <div class=\"interaction-button\">\n <slot name=\"interaction-button\"></slot>\n </div>\n )}\n </div>\n {(subheading || isSlotUsed(this.el, \"subheading\")) && (\n <div class=\"subheading\">\n <slot name=\"subheading\">\n <ic-typography variant=\"subtitle-small\">\n {subheading}\n </ic-typography>\n </slot>\n </div>\n )}\n {isSlotUsed(this.el, \"adornment\") && (\n <div class=\"adornment\">\n <slot name=\"adornment\"></slot>\n </div>\n )}\n {isSlotUsed(this.el, \"image-mid\") && (\n <div class=\"image-mid\">\n <slot name=\"image-mid\"></slot>\n </div>\n )}\n {(message || isSlotUsed(this.el, \"message\")) && (\n <div\n class={{\n [\"card-message\"]: true,\n }}\n >\n {message && <ic-typography variant=\"body\">{message}</ic-typography>}\n {isSlotUsed(this.el, \"message\") && <slot name=\"message\"></slot>}\n </div>\n )}\n {(isSlotUsed(this.el, \"interaction-controls\") || expandable) && (\n <div class=\"interaction-area\">\n <div class=\"interaction-controls\">\n <slot name=\"interaction-controls\"></slot>\n </div>\n {expandable && (\n <ic-tooltip\n id=\"ic-tooltip-expand-button\"\n label=\"Toggle expandable area\"\n silent\n >\n <button\n class={{\n [\"toggle-button\"]: true,\n [`toggle-button-${\n this.areaExpanded ? \"expanded\" : \"closed\"\n }`]: true,\n }}\n aria-label=\"Toggle expandable area\"\n aria-expanded={`${this.areaExpanded}`}\n aria-controls={\n this.areaExpanded ? \"expanded-content-area\" : null\n }\n onClick={this.toggleExpanded}\n innerHTML={chevronIcon}\n ></button>\n </ic-tooltip>\n )}\n </div>\n )}\n {isSlotUsed(this.el, \"expanded-content\") && this.areaExpanded && (\n <div class=\"expanded-content\" id=\"expanded-content-area\">\n <slot name=\"expanded-content\"></slot>\n </div>\n )}\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n </Component>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as t,h as i,g as o}from"./p-6b5e91e2.js";import{N as a,r}from"./p-312cacae.js";const n='/*! 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}a{text-align:center}.item-container{display:flex;justify-content:center;align-items:center;width:calc(var(--ic-space-xl) + var(--ic-space-sm));height:var(--ic-space-xl);margin:var(--ic-space-xxs) var(--ic-space-xxxs);cursor:pointer;text-decoration:none}button{background:none;border:none;outline:inherit;position:relative}.ellipsis{pointer-events:none;--ic-typography-color:var(--ic-color-text-secondary)}.item-container:focus{box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline);border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast)}.page{--ic-typography-color:var(--ic-action-default)}.simple-current{min-width:calc(var(--ic-space-xxl) + var(--ic-space-md));height:var(--ic-space-lg);cursor:default}.item-container.page:hover:not(.selected):not(:focus){border-radius:var(--ic-border-radius);background-color:var(--ic-action-default-bg-hover)}.item-container.page:active:not(.selected):not(:focus){background-color:var(--ic-action-default-bg-active)}.selected{pointer-events:none;outline:none}.selected::after{content:"";height:var(--ic-space-xxs);width:100%;position:absolute;bottom:0;background-color:var(--ic-action-default)}.page-selected{--ic-typography-color:var(--ic-color-text-primary)}.item-container.page.light:hover:not(.selected):not(:focus){background-color:var(--ic-action-light-bg-hover)}.item-container.page.light:active:not(.selected):not(:focus){background-color:var(--ic-action-light-bg-pressed)}ic-typography.light,ic-typography.page-selected.light{--ic-typography-color:var(--ic-architectural-white)}.selected.light::after{content:"";height:var(--ic-space-xxs);width:100%;position:absolute;bottom:0;background-color:var(--ic-action-light)}.item-container.page.dark:hover:not(.selected):not(:focus){background-color:var(--ic-action-dark-bg-hover)}.item-container.page.dark:active:not(.selected):not(:focus){background-color:var(--ic-action-dark-bg-pressed)}ic-typography.dark{--ic-typography-color:var(--ic-color-text-primary)}.selected.dark::after{content:"";height:var(--ic-space-xxs);width:100%;position:absolute;bottom:0;background-color:var(--ic-action-dark)}.disabled{--ic-typography-color:var(--ic-architectural-200);pointer-events:none;cursor:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (forced-colors: active){.selected::after{background-color:Highlight}.selected.light::after{background-color:Highlight}.selected.dark::after{background-color:Highlight}.disabled{--ic-typography-color:GrayText}}';const c=class{constructor(i){e(this,i);this.paginationItemClick=t(this,"paginationItemClick",7);this.handleClick=()=>{this.paginationItemClick.emit({page:this.page})};this.capitalizedLabel=undefined;this.appearance="default";this.disabled=false;this.label="Page";this.page=undefined;this.selected=false;this.type=undefined}watchLabelHandler(){this.capitalizedLabel=a(this.label)}componentWillLoad(){this.watchLabelHandler();r(this.disabled,this.el)}render(){const{page:e,selected:t,type:o,disabled:a,appearance:r,label:n,capitalizedLabel:c}=this;return i("a",null,o==="ellipsis"?i("div",{class:{["item-container"]:true,["ellipsis"]:true,["disabled"]:a}},i("ic-typography",{class:{[`${r}`]:true},variant:"label"},"...")):o==="page"?i("button",{disabled:a,onClick:this.handleClick,tabindex:t?"-1":"0",role:"button","aria-current":t&&"page","aria-label":t?`${n}: ${e}`:`Go to ${n} ${e}`,class:{["selected"]:!a&&t,["disabled"]:a,["item-container"]:true,[`${r}`]:true,["page"]:o==="page"}},i("ic-typography",{variant:"label",class:{["page-selected"]:t,["disabled"]:a,[`${r}`]:true}},e)):i("ic-typography",{"aria-live":"polite",class:{[`simple-current ${r}`]:true,["disabled"]:a},variant:"label"},c," ",e))}get el(){return o(this)}static get watchers(){return{label:["watchLabelHandler"]}}};c.style=n;export{c as ic_pagination_item};
2
+ //# sourceMappingURL=p-cbcd4427.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icPaginationItemCss","PaginationItem","this","handleClick","paginationItemClick","emit","page","watchLabelHandler","capitalizedLabel","capitalize","label","componentWillLoad","removeDisabledFalse","disabled","el","render","selected","type","appearance","h","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-color-text-secondary);\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-action-default);\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-action-default-bg-hover);\n}\n\n.item-container.page:active:not(.selected):not(:focus) {\n background-color: var(--ic-action-default-bg-active);\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-action-default);\n}\n\n.page-selected {\n --ic-typography-color: var(--ic-color-text-primary);\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-light);\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-dark);\n}\n\n.disabled {\n --ic-typography-color: var(--ic-architectural-200);\n\n pointer-events: none;\n cursor: none;\n user-select: none;\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 { IcThemeForeground } 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 * The appearance of the pagination, e.g. dark, light or the default.\n */\n @Prop() appearance: IcThemeForeground = \"default\";\n\n /**\n * If `true`, the pagination item will be disabled.\n */\n @Prop() disabled: boolean = false;\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 * The current page number.\n */\n @Prop() page: number | null;\n\n /**\n * If `true`, the pagination item will be selected.\n */\n @Prop() selected: boolean = false;\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 }>;\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 });\n };\n\n render() {\n const {\n page,\n selected,\n type,\n disabled,\n appearance,\n label,\n capitalizedLabel,\n } = this;\n\n return (\n <a>\n {type === \"ellipsis\" ? (\n <div\n class={{\n [\"item-container\"]: true,\n [\"ellipsis\"]: true,\n [\"disabled\"]: disabled,\n }}\n >\n <ic-typography\n class={{\n [`${appearance}`]: true,\n }}\n variant=\"label\"\n >\n ...\n </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 [`${appearance}`]: true,\n [\"page\"]: type === \"page\",\n }}\n >\n <ic-typography\n variant=\"label\"\n class={{\n [\"page-selected\"]: selected,\n [\"disabled\"]: disabled,\n [`${appearance}`]: true,\n }}\n >\n {page}\n </ic-typography>\n </button>\n ) : (\n <ic-typography\n aria-live=\"polite\"\n class={{\n [`simple-current ${appearance}`]: true,\n [\"disabled\"]: disabled,\n }}\n variant=\"label\"\n >\n {capitalizedLabel} {page}\n </ic-typography>\n )}\n </a>\n );\n }\n}\n"],"mappings":"+FAAA,MAAMA,EAAsB,yyJ,MCmBfC,EAAc,M,kFAkDjBC,KAAAC,YAAc,KACpBD,KAAKE,oBAAoBC,KAAK,CAAEC,KAAMJ,KAAKI,MAAO,E,gDA3CZ,U,cAKZ,M,WAKJ,O,kCAeI,M,oBAZ5B,iBAAAC,GACEL,KAAKM,iBAAmBC,EAAWP,KAAKQ,M,CAuB1C,iBAAAC,GACET,KAAKK,oBACLK,EAAoBV,KAAKW,SAAUX,KAAKY,G,CAO1C,MAAAC,GACE,MAAMT,KACJA,EAAIU,SACJA,EAAQC,KACRA,EAAIJ,SACJA,EAAQK,WACRA,EAAUR,MACVA,EAAKF,iBACLA,GACEN,KAEJ,OACEiB,EAAA,SACGF,IAAS,WACRE,EAAA,OACEC,MAAO,CACL,CAAC,kBAAmB,KACpB,CAAC,YAAa,KACd,CAAC,YAAaP,IAGhBM,EAAA,iBACEC,MAAO,CACL,CAAC,GAAGF,KAAe,MAErBG,QAAQ,SAAO,QAKjBJ,IAAS,OACXE,EAAA,UACEN,SAAUA,EACVS,QAASpB,KAAKC,YACdoB,SAAUP,EAAW,KAAO,IAC5BQ,KAAK,SAAQ,eACCR,GAAY,OAAM,aAE9BA,EAAW,GAAGN,MAAUJ,IAAS,SAASI,KAASJ,IAErDc,MAAO,CACL,CAAC,aAAcP,GAAYG,EAC3B,CAAC,YAAaH,EACd,CAAC,kBAAmB,KACpB,CAAC,GAAGK,KAAe,KACnB,CAAC,QAASD,IAAS,SAGrBE,EAAA,iBACEE,QAAQ,QACRD,MAAO,CACL,CAAC,iBAAkBJ,EACnB,CAAC,YAAaH,EACd,CAAC,GAAGK,KAAe,OAGpBZ,IAILa,EAAA,6BACY,SACVC,MAAO,CACL,CAAC,kBAAkBF,KAAe,KAClC,CAAC,YAAaL,GAEhBQ,QAAQ,SAEPb,EAAgB,IAAGF,G"}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as i,h as t,H as a,g as r}from"./p-6b5e91e2.js";import{k as o,i as c,j as n,r as s,a as d,s as l,d as h}from"./p-312cacae.js";const p='/*! 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}ic-radio-option{display:flex;flex-direction:column;width:-moz-fit-content;width:fit-content}.additional-field-wrapper ic-text-field{margin-top:calc(var(--ic-space-sm) / 2);margin-left:var(--ic-space-xl)}ic-radio-option.ic-radio-option-disabled{--ic-typography-color:var(--ic-architectural-200)}.container input:focus+span.checkmark,:host(:focus) .container input:checked+span.checkmark{box-shadow:var(--ic-border-focus)}.container{display:grid;grid-template-columns:min-content auto;position:relative;cursor:pointer;align-items:center;margin:var(--ic-space-xxs) 0 var(--ic-space-xxs) var(--ic-space-xxs)}.container.disabled,.container.disabled input:disabled{cursor:default}.container input{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-block;position:absolute;cursor:pointer;height:var(--ic-space-lg);width:var(--ic-space-lg);border-radius:50%;border:none}.checkmark{display:block;position:relative;top:0;left:0;height:var(--ic-space-lg);width:var(--ic-space-lg);background-color:var(--ic-architectural-white);border:var(--ic-border-default);border-radius:50%;transition:var(--ic-easing-transition-fast);box-sizing:border-box}.container input:checked~.checkmark::after{display:inline-block}.container:hover input~.checkmark{background-color:var(--ic-action-default-bg-hover-no-alpha);box-shadow:0 0 0 0.25rem var(--ic-action-default-bg-hover);border:var(--ic-border-width) solid var(--ic-action-default)}.container:active input~.checkmark{background-color:var(--ic-action-default-bg-active-no-alpha);border:var(--ic-border-width) solid var(--ic-action-default-pressed);box-shadow:0 0 0 0.25rem var(--ic-action-default-bg-active)}.container:active input:checked~.checkmark{background-color:var(--ic-action-default-bg-active);border:0.125rem solid var(--ic-action-default-pressed);box-shadow:0 0 0 0.25rem var(--ic-action-default-bg-active)}.container:active input:checked~.checkmark::after{background-color:var(--ic-action-default-pressed)}.container input:checked~.checkmark{border:0.125rem solid var(--ic-action-default)}.container input:checked:disabled~.checkmark{background-color:var(--ic-architectural-white);border:0.125rem solid var(--ic-architectural-200)}.container input:disabled~.checkmark{border:var(--ic-border-width) dashed var(--ic-architectural-200)}.container input:disabled~.checkmark::after{background:var(--ic-architectural-200)}.container:hover input:disabled~.checkmark{background-color:var(--ic-architectural-white);box-shadow:none;border:0.125rem solid none}.container:active input:disabled~.checkmark::after{background-color:var(--ic-architectural-200)}.container .checkmark::after{content:"";position:absolute;display:none;top:calc(50% - var(--ic-space-xs));left:calc(50% - var(--ic-space-xs));width:var(--ic-space-md);height:var(--ic-space-md);border-radius:50%;background:var(--ic-action-default)}.radio-label{margin-left:var(--ic-space-md)}.additional-field-wrapper{margin-left:var(--ic-space-xs)}.branch-corner{color:var(--ic-action-default);height:var(--ic-space-md);width:var(--ic-space-xl);border-radius:0 0 0 0.188rem;border-bottom:0.125rem solid var(--ic-action-default);border-left:0.125rem solid var(--ic-action-default);margin-left:calc(-1 * var(--ic-space-1px))}.dynamic-container{display:flex;position:relative;margin:var(--ic-space-xxxs) 0 var(--ic-space-xxs) var(--ic-space-md);gap:var(--ic-space-xs)}.dynamic-container.hidden{display:none}.dynamic-text{color:var(--ic-action-default);--ic-typography-color:var(--ic-action-default);margin-top:calc(var(--ic-space-sm) / 2);margin-bottom:var(--ic-space-xs);border-radius:2%}@media (max-width: 576px){ic-text-field{--input-width:100%}}@media (forced-colors: active){.container input:checked~.checkmark,.container:active input:checked~.checkmark{border-color:Highlight}.container input:checked~.checkmark::after,.container:active input:checked~.checkmark::after{background-color:Highlight}.container input:disabled~.checkmark,.container input:checked:disabled~.checkmark{border-color:GrayText}.container input:disabled~.checkmark::after,.container:active input:disabled~.checkmark::after{background-color:GrayText}}';const u="additional-field";const b="ic-text-field";const m=class{constructor(t){e(this,t);this.icCheck=i(this,"icCheck",7);this.icSelectedChange=i(this,"icSelectedChange",7);this.defaultRadioValue="";this.hasAdditionalField=false;this.skipFocus=false;this.handleClick=()=>{if(!this.disabled){if(this.skipFocus===false){this.radioElement.focus()}this.skipFocus=false;if(this.hasAdditionalField){this.value=this.el.querySelector(b).value||this.defaultRadioValue}this.icCheck.emit({value:this.value})}};this.swallowClick=e=>{e.stopPropagation()};this.handleFormReset=()=>{this.skipFocus=true;this.selected=this.initiallySelected};this.additionalFieldDisplay="static";this.disabled=false;this.dynamicText="This selection requires additional answers";this.form=undefined;this.groupLabel=undefined;this.label=undefined;this.name=undefined;this.value=undefined;this.selected=false;this.initiallySelected=this.selected}watchSelectedHandler(){this.icSelectedChange.emit()}disconnectedCallback(){o(this.el,this.handleFormReset)}componentWillLoad(){if(c(this.el,u)){this.hasAdditionalField=true;const e=this.el.querySelector(b);if(e)e.hiddenInput=false}this.defaultRadioValue=this.value;n(this.el,this.handleFormReset);s(this.disabled,this.el)}componentDidLoad(){d([{prop:this.value,propName:"value"}],"Radio Option")}componentWillRender(){const e=l(this.el,u);if(e&&!this.hasAdditionalField){this.hasAdditionalField=true;const e=this.el.querySelector(b);if(e)e.hiddenInput=false}else if(!e&&this.hasAdditionalField){this.hasAdditionalField=false}}componentDidRender(){if(this.additionalFieldDisplay==="static"){const e=this.el.querySelector(b);if(!this.selected||this.disabled){e===null||e===void 0?void 0:e.setAttribute("disabled","")}else{e===null||e===void 0?void 0:e.removeAttribute("disabled")}}}textfieldValueHandler(e){if(this.selected){this.value=e.detail.value||this.defaultRadioValue;this.icCheck.emit({value:this.value})}e.stopImmediatePropagation()}async setFocus(){var e;(e=this.radioElement)===null||e===void 0?void 0:e.focus()}async setTabIndex(e){this.radioElement.tabIndex=e}render(){const{additionalFieldDisplay:e,disabled:i,dynamicText:r,form:o,groupLabel:c,handleClick:n,hasAdditionalField:s,label:d,name:l,selected:p,swallowClick:b,value:m}=this;const f=`ic-radio-option-${h(d)||m}-${c}`;return t(a,{onClick:n,class:{["ic-radio-option-disabled"]:i}},t("div",{class:{container:true,disabled:i}},t("div",null,t("input",{tabindex:p?"0":"-1",type:"radio",name:l,id:f,value:m,disabled:i?true:null,checked:p,ref:e=>this.radioElement=e,form:o}),t("span",{class:"checkmark"})),t("ic-typography",{class:"radio-label",variant:"body"},t("label",{htmlFor:f},d))),s&&t("div",{onClick:b,class:{"dynamic-container":true,hidden:e==="dynamic"&&!p}},e==="dynamic"&&t("div",{class:"branch-corner"}),t("div",null,e==="dynamic"&&t("ic-typography",{variant:"caption"},t("p",{class:"dynamic-text"},r)),t("div",{class:{"additional-field-wrapper":e==="static"}},t("slot",{name:u})))))}get el(){return r(this)}static get watchers(){return{selected:["watchSelectedHandler"]}}};m.style=p;export{m as ic_radio_option};
2
+ //# sourceMappingURL=p-d1c9c32b.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icRadioOptionCss","ADDITIONAL_FIELD","TEXT_FIELD_SELECTOR","RadioOption","this","defaultRadioValue","hasAdditionalField","skipFocus","handleClick","disabled","radioElement","focus","value","el","querySelector","icCheck","emit","swallowClick","event","stopPropagation","handleFormReset","selected","initiallySelected","watchSelectedHandler","icSelectedChange","disconnectedCallback","removeFormResetListener","componentWillLoad","isSlotUsed","textField","hiddenInput","addFormResetListener","removeDisabledFalse","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","componentWillRender","hasSlot","slotHasContent","componentDidRender","additionalFieldDisplay","textfield","setAttribute","removeAttribute","textfieldValueHandler","detail","stopImmediatePropagation","setFocus","_a","setTabIndex","tabIndex","render","dynamicText","form","groupLabel","label","name","id","isPropDefined","h","Host","onClick","class","container","tabindex","type","checked","ref","variant","htmlFor","hidden"],"sources":["src/components/ic-radio-option/ic-radio-option.css?tag=ic-radio-option","src/components/ic-radio-option/ic-radio-option.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\nic-radio-option {\n display: flex;\n flex-direction: column;\n width: fit-content;\n}\n\n.additional-field-wrapper ic-text-field {\n margin-top: calc(var(--ic-space-sm) / 2);\n margin-left: var(--ic-space-xl);\n}\n\n/* The label turns grey when disabled */\nic-radio-option.ic-radio-option-disabled {\n --ic-typography-color: var(--ic-architectural-200);\n}\n\n/* Focus states */\n\n.container input:focus + span.checkmark,\n:host(:focus) .container input:checked + span.checkmark {\n box-shadow: var(--ic-border-focus);\n}\n\n/* The container */\n.container {\n display: grid;\n grid-template-columns: min-content auto;\n position: relative;\n cursor: pointer;\n align-items: center;\n margin: var(--ic-space-xxs) 0 var(--ic-space-xxs) var(--ic-space-xxs);\n}\n\n.container.disabled,\n.container.disabled input:disabled {\n cursor: default;\n}\n\n/* Hide the browser's default radio button */\n.container input {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n display: inline-block;\n position: absolute;\n cursor: pointer;\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n border-radius: 50%;\n border: none;\n}\n\n/* Create a custom radio button */\n.checkmark {\n display: block;\n position: relative;\n top: 0;\n left: 0;\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n background-color: var(--ic-architectural-white);\n border: var(--ic-border-default);\n border-radius: 50%;\n transition: var(--ic-easing-transition-fast);\n box-sizing: border-box;\n}\n\n/* Show the indicator (dot/circle) when checked */\n.container input:checked ~ .checkmark::after {\n display: inline-block;\n}\n\n/* On mouse-over, add a light blue background color */\n.container:hover input ~ .checkmark {\n background-color: var(--ic-action-default-bg-hover-no-alpha);\n box-shadow: 0 0 0 0.25rem var(--ic-action-default-bg-hover);\n border: var(--ic-border-width) solid var(--ic-action-default);\n}\n\n/* When pressed, adds the active colours */\n.container:active input ~ .checkmark {\n background-color: var(--ic-action-default-bg-active-no-alpha);\n border: var(--ic-border-width) solid var(--ic-action-default-pressed);\n box-shadow: 0 0 0 0.25rem var(--ic-action-default-bg-active);\n}\n\n/* When pressed, adds the active colours */\n.container:active input:checked ~ .checkmark {\n background-color: var(--ic-action-default-bg-active);\n border: 0.125rem solid var(--ic-action-default-pressed);\n box-shadow: 0 0 0 0.25rem var(--ic-action-default-bg-active);\n}\n\n/* When pressed and selected, adds the active colours */\n.container:active input:checked ~ .checkmark::after {\n background-color: var(--ic-action-default-pressed);\n}\n\n/* When the radio button is checked */\n.container input:checked ~ .checkmark {\n border: 0.125rem solid var(--ic-action-default);\n}\n\n/* When the radio button is checked and disabled */\n.container input:checked:disabled ~ .checkmark {\n background-color: var(--ic-architectural-white);\n border: 0.125rem solid var(--ic-architectural-200);\n}\n\n/* When the radio button is disabled */\n.container input:disabled ~ .checkmark {\n border: var(--ic-border-width) dashed var(--ic-architectural-200);\n}\n\n/* When the radio button is disabled */\n.container input:disabled ~ .checkmark::after {\n background: var(--ic-architectural-200);\n}\n\n/* On mouse-over inactive */\n.container:hover input:disabled ~ .checkmark {\n background-color: var(--ic-architectural-white);\n box-shadow: none;\n border: 0.125rem solid none;\n}\n\n.container:active input:disabled ~ .checkmark::after {\n background-color: var(--ic-architectural-200);\n}\n\n/* Style the indicator (dot/circle) */\n.container .checkmark::after {\n content: \"\";\n position: absolute;\n display: none;\n top: calc(50% - var(--ic-space-xs));\n left: calc(50% - var(--ic-space-xs));\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n border-radius: 50%;\n background: var(--ic-action-default);\n}\n\n.radio-label {\n margin-left: var(--ic-space-md);\n}\n\n.additional-field-wrapper {\n margin-left: var(--ic-space-xs);\n}\n\n/* The line */\n.branch-corner {\n color: var(--ic-action-default);\n height: var(--ic-space-md);\n width: var(--ic-space-xl);\n border-radius: 0 0 0 0.188rem;\n border-bottom: 0.125rem solid var(--ic-action-default);\n border-left: 0.125rem solid var(--ic-action-default);\n margin-left: calc(-1 * var(--ic-space-1px));\n}\n\n/* The dynamic container */\n.dynamic-container {\n display: flex;\n position: relative;\n margin: var(--ic-space-xxxs) 0 var(--ic-space-xxs) var(--ic-space-md);\n gap: var(--ic-space-xs);\n}\n\n.dynamic-container.hidden {\n display: none;\n}\n\n.dynamic-text {\n color: var(--ic-action-default);\n\n --ic-typography-color: var(--ic-action-default);\n\n margin-top: calc(var(--ic-space-sm) / 2);\n margin-bottom: var(--ic-space-xs);\n border-radius: 2%;\n}\n\n@media (max-width: 576px) {\n ic-text-field {\n --input-width: 100%;\n }\n}\n\n@media (forced-colors: active) {\n /* Styles here only apply to Forced Colors Mode */\n\n .container input:checked ~ .checkmark,\n .container:active input:checked ~ .checkmark {\n border-color: Highlight;\n }\n\n .container input:checked ~ .checkmark::after,\n .container:active input:checked ~ .checkmark::after {\n background-color: Highlight;\n }\n\n .container input:disabled ~ .checkmark,\n .container input:checked:disabled ~ .checkmark {\n border-color: GrayText;\n }\n\n .container input:disabled ~ .checkmark::after,\n .container:active input:disabled ~ .checkmark::after {\n background-color: GrayText;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Listen,\n State,\n Method,\n Watch,\n} from \"@stencil/core\";\nimport { IcAdditionalFieldTypes, IcValueEventDetail } from \"../../utils/types\";\nimport {\n onComponentRequiredPropUndefined,\n addFormResetListener,\n removeFormResetListener,\n removeDisabledFalse,\n isPropDefined,\n isSlotUsed,\n slotHasContent,\n} from \"../../utils/helpers\";\n\nconst ADDITIONAL_FIELD = \"additional-field\";\nconst TEXT_FIELD_SELECTOR = \"ic-text-field\";\n\n/**\n * @slot additional-field - Content to displayed alongside a radio option.\n */\n@Component({\n tag: \"ic-radio-option\",\n styleUrl: \"ic-radio-option.css\",\n})\nexport class RadioOption {\n private defaultRadioValue: string = \"\";\n private hasAdditionalField: boolean = false;\n private radioElement: HTMLInputElement;\n private skipFocus = false;\n\n @Element() el: HTMLIcRadioOptionElement;\n\n /**\n * The style of additionalField that will be displayed if used.\n */\n @Prop({ reflect: true }) additionalFieldDisplay: IcAdditionalFieldTypes =\n \"static\";\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled?: boolean = false;\n\n /**\n * The text to be displayed when dynamic.\n */\n @Prop() dynamicText: string = \"This selection requires additional answers\";\n\n /**\n * The <form> element to associate the radio with.\n */\n @Prop() form?: string;\n\n /**\n * The group label for the radio option.\n */\n @Prop() groupLabel: string;\n\n /**\n * The label for the radio option.\n */\n @Prop() label?: string;\n\n /**\n * The name for the radio option.\n */\n @Prop() name: string;\n\n /**\n * The value for the radio option.\n */\n @Prop({ mutable: true }) value!: string;\n\n /**\n * If `true`, the radio option will be displayed in a selected state.\n */\n @Prop({ reflect: true, mutable: true }) selected?: boolean = false;\n @State() initiallySelected = this.selected;\n\n @Watch(\"selected\")\n watchSelectedHandler(): void {\n this.icSelectedChange.emit();\n }\n\n /**\n * Emitted when the radio option is selected.\n */\n @Event() icCheck: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when the radio option is selected or deselected.\n */\n @Event() icSelectedChange: EventEmitter<void>;\n\n disconnectedCallback(): void {\n removeFormResetListener(this.el, this.handleFormReset);\n }\n\n componentWillLoad(): void {\n if (isSlotUsed(this.el, ADDITIONAL_FIELD)) {\n this.hasAdditionalField = true;\n const textField = this.el.querySelector(TEXT_FIELD_SELECTOR);\n if (textField) textField.hiddenInput = false;\n }\n\n this.defaultRadioValue = this.value;\n\n addFormResetListener(this.el, this.handleFormReset);\n\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.value, propName: \"value\" }],\n \"Radio Option\"\n );\n }\n\n componentWillRender(): void {\n const hasSlot = slotHasContent(this.el, ADDITIONAL_FIELD);\n if (hasSlot && !this.hasAdditionalField) {\n this.hasAdditionalField = true;\n const textField = this.el.querySelector(TEXT_FIELD_SELECTOR);\n if (textField) textField.hiddenInput = false;\n } else if (!hasSlot && this.hasAdditionalField) {\n this.hasAdditionalField = false;\n }\n }\n\n componentDidRender(): void {\n if (this.additionalFieldDisplay === \"static\") {\n const textfield = this.el.querySelector(TEXT_FIELD_SELECTOR);\n if (!this.selected || this.disabled) {\n textfield?.setAttribute(\"disabled\", \"\");\n } else {\n textfield?.removeAttribute(\"disabled\");\n }\n }\n }\n\n @Listen(\"icChange\")\n textfieldValueHandler(event: CustomEvent<{ value: string }>): void {\n if (this.selected) {\n this.value = event.detail.value || this.defaultRadioValue;\n this.icCheck.emit({\n value: this.value,\n });\n }\n\n event.stopImmediatePropagation();\n }\n\n /**\n * Sets focus on the radio option.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.radioElement?.focus();\n }\n\n /**\n * @internal Sets the tabIndex of the radio option.\n */\n @Method()\n async setTabIndex(value: number): Promise<void> {\n this.radioElement.tabIndex = value;\n }\n\n private handleClick = () => {\n if (!this.disabled) {\n if (this.skipFocus === false) {\n this.radioElement.focus();\n }\n this.skipFocus = false;\n\n if (this.hasAdditionalField) {\n this.value =\n this.el.querySelector(TEXT_FIELD_SELECTOR).value ||\n this.defaultRadioValue;\n }\n\n this.icCheck.emit({\n value: this.value,\n });\n }\n };\n\n private swallowClick = (event: MouseEvent) => {\n event.stopPropagation();\n };\n\n private handleFormReset = (): void => {\n this.skipFocus = true;\n this.selected = this.initiallySelected;\n };\n\n render() {\n const {\n additionalFieldDisplay,\n disabled,\n dynamicText,\n form,\n groupLabel,\n handleClick,\n hasAdditionalField,\n label,\n name,\n selected,\n swallowClick,\n value,\n } = this;\n\n const id = `ic-radio-option-${isPropDefined(label) || value}-${groupLabel}`;\n\n return (\n <Host\n onClick={handleClick}\n class={{ [\"ic-radio-option-disabled\"]: disabled }}\n >\n <div class={{ container: true, disabled }}>\n <div>\n <input\n tabindex={selected ? \"0\" : \"-1\"}\n type=\"radio\"\n name={name}\n id={id}\n value={value}\n disabled={disabled ? true : null}\n checked={selected}\n ref={(el) => (this.radioElement = el)}\n form={form}\n ></input>\n <span class=\"checkmark\"></span>\n </div>\n <ic-typography class=\"radio-label\" variant=\"body\">\n <label htmlFor={id}>{label}</label>\n </ic-typography>\n </div>\n\n {hasAdditionalField && (\n <div\n onClick={swallowClick}\n class={{\n \"dynamic-container\": true,\n hidden: additionalFieldDisplay === \"dynamic\" && !selected,\n }}\n >\n {additionalFieldDisplay === \"dynamic\" && (\n <div class=\"branch-corner\"></div>\n )}\n <div>\n {additionalFieldDisplay === \"dynamic\" && (\n <ic-typography variant=\"caption\">\n <p class=\"dynamic-text\">{dynamicText}</p>\n </ic-typography>\n )}\n <div\n class={{\n \"additional-field-wrapper\":\n additionalFieldDisplay === \"static\",\n }}\n >\n <slot name={ADDITIONAL_FIELD}></slot>\n </div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"8IAAA,MAAMA,EAAmB,04MCwBzB,MAAMC,EAAmB,mBACzB,MAAMC,EAAsB,gB,MASfC,EAAW,M,6GACdC,KAAAC,kBAA4B,GAC5BD,KAAAE,mBAA8B,MAE9BF,KAAAG,UAAY,MA6IZH,KAAAI,YAAc,KACpB,IAAKJ,KAAKK,SAAU,CAClB,GAAIL,KAAKG,YAAc,MAAO,CAC5BH,KAAKM,aAAaC,O,CAEpBP,KAAKG,UAAY,MAEjB,GAAIH,KAAKE,mBAAoB,CAC3BF,KAAKQ,MACHR,KAAKS,GAAGC,cAAcZ,GAAqBU,OAC3CR,KAAKC,iB,CAGTD,KAAKW,QAAQC,KAAK,CAChBJ,MAAOR,KAAKQ,O,GAKVR,KAAAa,aAAgBC,IACtBA,EAAMC,iBAAiB,EAGjBf,KAAAgB,gBAAkB,KACxBhB,KAAKG,UAAY,KACjBH,KAAKiB,SAAWjB,KAAKkB,iBAAiB,E,4BA9JtC,S,cAK2B,M,iBAKC,6C,0HA8B+B,M,uBAChClB,KAAKiB,Q,CAGlC,oBAAAE,GACEnB,KAAKoB,iBAAiBR,M,CAaxB,oBAAAS,GACEC,EAAwBtB,KAAKS,GAAIT,KAAKgB,gB,CAGxC,iBAAAO,GACE,GAAIC,EAAWxB,KAAKS,GAAIZ,GAAmB,CACzCG,KAAKE,mBAAqB,KAC1B,MAAMuB,EAAYzB,KAAKS,GAAGC,cAAcZ,GACxC,GAAI2B,EAAWA,EAAUC,YAAc,K,CAGzC1B,KAAKC,kBAAoBD,KAAKQ,MAE9BmB,EAAqB3B,KAAKS,GAAIT,KAAKgB,iBAEnCY,EAAoB5B,KAAKK,SAAUL,KAAKS,G,CAG1C,gBAAAoB,GACEC,EACE,CAAC,CAAEC,KAAM/B,KAAKQ,MAAOwB,SAAU,UAC/B,e,CAIJ,mBAAAC,GACE,MAAMC,EAAUC,EAAenC,KAAKS,GAAIZ,GACxC,GAAIqC,IAAYlC,KAAKE,mBAAoB,CACvCF,KAAKE,mBAAqB,KAC1B,MAAMuB,EAAYzB,KAAKS,GAAGC,cAAcZ,GACxC,GAAI2B,EAAWA,EAAUC,YAAc,K,MAClC,IAAKQ,GAAWlC,KAAKE,mBAAoB,CAC9CF,KAAKE,mBAAqB,K,EAI9B,kBAAAkC,GACE,GAAIpC,KAAKqC,yBAA2B,SAAU,CAC5C,MAAMC,EAAYtC,KAAKS,GAAGC,cAAcZ,GACxC,IAAKE,KAAKiB,UAAYjB,KAAKK,SAAU,CACnCiC,IAAS,MAATA,SAAS,SAATA,EAAWC,aAAa,WAAY,G,KAC/B,CACLD,IAAS,MAATA,SAAS,SAATA,EAAWE,gBAAgB,W,GAMjC,qBAAAC,CAAsB3B,GACpB,GAAId,KAAKiB,SAAU,CACjBjB,KAAKQ,MAAQM,EAAM4B,OAAOlC,OAASR,KAAKC,kBACxCD,KAAKW,QAAQC,KAAK,CAChBJ,MAAOR,KAAKQ,O,CAIhBM,EAAM6B,0B,CAOR,cAAMC,G,OACJC,EAAA7C,KAAKM,gBAAY,MAAAuC,SAAA,SAAAA,EAAEtC,O,CAOrB,iBAAMuC,CAAYtC,GAChBR,KAAKM,aAAayC,SAAWvC,C,CA+B/B,MAAAwC,GACE,MAAMX,uBACJA,EAAsBhC,SACtBA,EAAQ4C,YACRA,EAAWC,KACXA,EAAIC,WACJA,EAAU/C,YACVA,EAAWF,mBACXA,EAAkBkD,MAClBA,EAAKC,KACLA,EAAIpC,SACJA,EAAQJ,aACRA,EAAYL,MACZA,GACER,KAEJ,MAAMsD,EAAK,mBAAmBC,EAAcH,IAAU5C,KAAS2C,IAE/D,OACEK,EAACC,EAAI,CACHC,QAAStD,EACTuD,MAAO,CAAE,CAAC,4BAA6BtD,IAEvCmD,EAAA,OAAKG,MAAO,CAAEC,UAAW,KAAMvD,aAC7BmD,EAAA,WACEA,EAAA,SACEK,SAAU5C,EAAW,IAAM,KAC3B6C,KAAK,QACLT,KAAMA,EACNC,GAAIA,EACJ9C,MAAOA,EACPH,SAAUA,EAAW,KAAO,KAC5B0D,QAAS9C,EACT+C,IAAMvD,GAAQT,KAAKM,aAAeG,EAClCyC,KAAMA,IAERM,EAAA,QAAMG,MAAM,eAEdH,EAAA,iBAAeG,MAAM,cAAcM,QAAQ,QACzCT,EAAA,SAAOU,QAASZ,GAAKF,KAIxBlD,GACCsD,EAAA,OACEE,QAAS7C,EACT8C,MAAO,CACL,oBAAqB,KACrBQ,OAAQ9B,IAA2B,YAAcpB,IAGlDoB,IAA2B,WAC1BmB,EAAA,OAAKG,MAAM,kBAEbH,EAAA,WACGnB,IAA2B,WAC1BmB,EAAA,iBAAeS,QAAQ,WACrBT,EAAA,KAAGG,MAAM,gBAAgBV,IAG7BO,EAAA,OACEG,MAAO,CACL,2BACEtB,IAA2B,WAG/BmB,EAAA,QAAMH,KAAMxD,O"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as i,h as e,H as s,g as a}from"./p-6b5e91e2.js";import{c as o}from"./p-f074ef5b.js";import{f as n,i as r,a as l}from"./p-312cacae.js";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{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;min-height:100% !important;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);opacity:0}:host(.ic-dialog-fade-in){opacity:1}:host(.disable-height-constraint){background:none;justify-content:unset;align-items:unset}.dialog.disable-height-constraint{max-height:none;position:relative}.dialog.disable-height-constraint .content-area{overflow-y:visible}@media (prefers-reduced-motion: no-preference){:host{transition:opacity var(--ic-easing-transition-slow)}.dialog{transform:translateY(-3rem);transition:transform 1000s}:host(.ic-dialog-fade-in) .dialog{transform:translateY(0);transition:transform var(--ic-easing-transition-slow)}}:host(.ic-dialog-hidden){display:none}.dialog{background-color:var(--ic-architectural-white);color:var(--ic-architectural-black);border:var(--ic-border-default);border-radius:var(--ic-border-radius);padding:var(--ic-space-xs) 0 var(--ic-space-md);display:flex;flex-direction:column;box-sizing:border-box;overflow-x:visible}.small{width:50%;max-width:25rem;min-height:11rem;max-height:70vh}.medium{width:70vw;max-width:44rem;min-height:12.5rem;max-height:70vh}.large{width:90vw;max-width:62.5rem;min-height:12.5rem;max-height:90vh}.heading-area{display:flex;margin-bottom:var(--ic-space-xs);padding:0 var(--ic-space-md)}.heading{overflow-wrap:break-word}.close-icon{margin-left:auto}.content-area{-ms-overflow-style:none;scrollbar-width:none;padding:0 var(--ic-space-md);margin:0;overflow-y:auto}.content-area::-webkit-scrollbar{display:none}#dialog-content{margin-bottom:var(--ic-space-sm)}#dialog-content ::slotted(ic-typography){overflow-wrap:break-word}#dialog-content ::slotted(*){position:relative}.dialog-controls{margin-top:auto;padding:var(--ic-space-xs) var(--ic-space-md) 0;display:flex;justify-content:flex-end;gap:var(--ic-space-md)}.dialog-control-button{width:-moz-fit-content;width:fit-content}.backdrop{overflow-y:auto;position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);padding-top:16px;padding-bottom:16px}@media (min-width: 800px){:host([size="large"]) .dialog:not(.disable-width-constraint)>.content-area{width:75%}}@media (max-width: 576px){.dialog{width:100vw;height:100vh;transform:translateY(-5rem);max-width:none;max-height:none;box-sizing:border-box}.backdrop{padding:0}.dialog.disable-height-constraint{height:auto;min-height:100vh}}@media (max-width: 364px){.dialog-control-button{width:unset}}';const d=class{constructor(s){t(this,s);this.icDialogCancelled=i(this,"icDialogCancelled",7);this.icDialogClosed=i(this,"icDialogClosed",7);this.icDialogConfirmed=i(this,"icDialogConfirmed",7);this.icDialogOpened=i(this,"icDialogOpened",7);this.DATA_GETS_FOCUS="data-gets-focus";this.DATA_GETS_FOCUS_SELECTOR="[data-gets-focus]";this.DIALOG_CONTROLS="dialog-controls";this.dialogHeight=0;this.focusedElementIndex=0;this.IC_TEXT_FIELD="IC-TEXT-FIELD";this.IC_ACCORDION="IC-ACCORDION";this.IC_ACCORDION_GROUP="IC-ACCORDION-GROUP";this.resizeObserver=null;this.dialogOpened=()=>{var t;this.dialogRendered=true;if(this.disableHeightConstraint){this.dialogEl.show()}else{(t=this.dialogEl)===null||t===void 0?void 0:t.showModal()}setTimeout((()=>{this.fadeIn=true;if(this.disableHeightConstraint&&this.backdropEl.scrollTop!==0){this.backdropEl.scrollTop=0}}),10);setTimeout((()=>{this.setInitialFocus();n(this.runResizeObserver)}),75);setTimeout((()=>{this.getFocusedElementIndex();this.icDialogOpened.emit()}),80)};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{clearTimeout(this.resizeTimeout);this.resizeTimeout=window.setTimeout(this.resizeObserverCallback,80)}));this.resizeObserver.observe(this.dialogEl)};this.resizeObserverCallback=()=>{if(this.dialogEl.clientHeight!==this.dialogHeight){this.dialogHeight=this.dialogEl.clientHeight}};this.refreshInteractiveElementsOnSlotChange=()=>{this.contentArea=this.el.shadowRoot.querySelector("#dialog-content slot");this.contentArea.addEventListener("slotchange",this.getInteractiveElements)};this.removeSlotChangeListener=()=>{if(this.contentArea){this.contentArea.removeEventListener("slotchange",this.getInteractiveElements)}};this.setInitialFocus=()=>{this.sourceElement=document.activeElement;let t;if(this.el.querySelector(this.DATA_GETS_FOCUS_SELECTOR)!==null){t=this.el.querySelector(this.DATA_GETS_FOCUS_SELECTOR)}else{t=this.el.shadowRoot.querySelector(this.DATA_GETS_FOCUS_SELECTOR)}if(t.tagName===this.IC_TEXT_FIELD){t.setFocus()}else if(t.tagName===this.IC_ACCORDION_GROUP){t.setFocus()}else if(t.tagName===this.IC_ACCORDION){t.setFocus()}else{t.focus({preventScroll:this.disableHeightConstraint?true:false})}};this.getFocusedElementIndex=()=>{for(let t=0;t<this.interactiveElementList.length;t++){if(this.interactiveElementList[t]===(this.el.shadowRoot.activeElement||document.activeElement)){this.focusedElementIndex=t}}};this.closeIconClick=()=>{this.open=false};this.getInteractiveElements=()=>{this.interactiveElementList=Array.from(this.el.shadowRoot.querySelectorAll("ic-button"));const t=Array.from(this.el.querySelectorAll(`a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex="-1"]), \n ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-group, ic-radio-group, \n ic-back-to-top, ic-breadcrumb, ic-chip[dismissible="true"], ic-footer-link, ic-link, ic-navigation-button, \n ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion`));if(t.length>0){if(t[0].slot!==this.DIALOG_CONTROLS){t[0].setAttribute(this.DATA_GETS_FOCUS,"")}else if(!this.destructive){t[t.length-1].setAttribute(this.DATA_GETS_FOCUS,"")}}for(let i=0;i<t.length;i++){this.interactiveElementList.splice(1+i,0,t[i])}};this.getNextFocusEl=t=>this.interactiveElementList[t];this.focusNextInteractiveElement=t=>{this.getFocusedElementIndex();this.setFocusIndexBasedOnShiftKey(t);this.loopNextFocusIndexIfLastElement();let i=this.getNextFocusEl(this.focusedElementIndex);const e=getComputedStyle(i).visibility==="hidden"||i.tagName===this.IC_ACCORDION_GROUP&&i.hasAttribute("single-expansion");if(i.tagName===this.IC_TEXT_FIELD){i.setFocus()}else{if(e){this.setFocusIndexBasedOnShiftKey(t);this.loopNextFocusIndexIfLastElement();i=this.getNextFocusEl(this.focusedElementIndex)}if(i.tagName===this.IC_ACCORDION_GROUP){i.setFocus()}else if(i.tagName===this.IC_ACCORDION){i.setFocus()}else{i.focus()}}};this.renderDialog=()=>{const{buttons:t,size:i,heading:s,label:a,destructive:n,dismissLabel:l,hideCloseButton:h}=this;return e("dialog",{class:{["dialog"]:true,[`${i}`]:true,["disable-height-constraint"]:this.disableHeightConstraint,["disable-width-constraint"]:this.disableWidthConstraint},"aria-labelledby":"dialog-label dialog-heading","aria-describedby":"dialog-alert dialog-content",ref:t=>this.dialogEl=t},e("div",{class:"heading-area"},e("div",{class:"heading-content"},e("div",{class:"label"},e("slot",{name:"label"},e("ic-typography",{variant:"label",id:"dialog-label"},a))),e("div",{class:"heading"},e("slot",{name:"heading"},e("ic-typography",{variant:"h4",id:"dialog-heading"},s)))),!h&&e("ic-button",{class:"close-icon",variant:"icon",innerHTML:o,"aria-label":l,onClick:this.closeIconClick,"data-gets-focus":n||!t?"":null})),e("div",{class:"content-area"},r(this.el,"alert")&&e("slot",{name:"alert"}),e("div",{id:"dialog-content"},e("slot",null))),t&&(r(this.el,this.DIALOG_CONTROLS)?e("div",{class:{[this.DIALOG_CONTROLS]:true}},e("slot",{name:this.DIALOG_CONTROLS})):e("div",{class:{[this.DIALOG_CONTROLS]:true}},e("ic-button",{variant:"tertiary",onClick:()=>this.cancelDialog(),class:"dialog-control-button","data-gets-focus":null},"Cancel"),e("ic-button",{variant:this.destructive?"destructive":"primary",onClick:()=>this.confirmDialog(),class:"dialog-control-button","data-gets-focus":""},"Confirm"))))};this.dialogRendered=false;this.fadeIn=false;this.buttons=true;this.closeOnBackdropClick=true;this.destructive=false;this.dismissLabel="Dismiss";this.disableHeightConstraint=false;this.disableWidthConstraint=false;this.hideCloseButton=false;this.heading=undefined;this.label=undefined;this.open=undefined;this.size="small"}watchOpenHandler(){if(this.open){this.dialogOpened()}else{this.fadeIn=false;if(this.resizeObserver!==null){this.resizeObserver.disconnect()}setTimeout((()=>{var t;this.dialogRendered=false;this.dialogEl.close();(t=this.sourceElement)===null||t===void 0?void 0:t.focus();this.dialogHeight=0;this.icDialogClosed.emit()}),80)}}disconnectedCallback(){this.removeSlotChangeListener()}componentDidLoad(){this.getInteractiveElements();this.refreshInteractiveElementsOnSlotChange();if(this.open){this.dialogOpened()}!r(this.el,"heading")&&l([{prop:this.heading,propName:"heading"}],"Dialog")}componentDidRender(){if(getComputedStyle(this.el).display!=="none"&&this.disableHeightConstraint){document.body.style.overflow="hidden"}else{document.body.style.overflow="auto"}}handleKeyboard(t){if(this.dialogRendered){switch(t.key){case"Tab":t.preventDefault();this.focusNextInteractiveElement(t.shiftKey);break;case"Escape":if(!t.repeat){this.open=false}t.stopImmediatePropagation();break}}}handleClick(t){const i=this.el.shadowRoot.querySelector("dialog");if(this.closeOnBackdropClick&&t.composedPath().indexOf(i)<=0){const i=this.dialogEl.getBoundingClientRect();const e=i.top<=t.clientY&&t.clientY<=i.top+i.height&&i.left<=t.clientX&&t.clientX<=i.left+i.width;if(!e){this.open=false}}}async cancelDialog(){this.icDialogCancelled.emit();this.open=false}async confirmDialog(){this.icDialogConfirmed.emit()}loopNextFocusIndexIfLastElement(){if(this.focusedElementIndex>this.interactiveElementList.length-1)this.focusedElementIndex=0;else if(this.focusedElementIndex<0){this.focusedElementIndex=this.interactiveElementList.length-1}}setFocusIndexBasedOnShiftKey(t){if(t){this.focusedElementIndex-=1}else{this.focusedElementIndex+=1}}render(){return e(s,{class:{["ic-dialog-hidden"]:!this.dialogRendered,["ic-dialog-fade-in"]:this.fadeIn,["disable-height-constraint"]:this.disableHeightConstraint}},this.disableHeightConstraint?e("div",{class:"backdrop",ref:t=>this.backdropEl=t},this.renderDialog()):this.renderDialog())}get el(){return a(this)}static get watchers(){return{open:["watchOpenHandler"]}}};d.style=h;export{d as ic_dialog};
2
+ //# sourceMappingURL=p-d2f89cb5.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icDialogCss","Dialog","this","DATA_GETS_FOCUS","DATA_GETS_FOCUS_SELECTOR","DIALOG_CONTROLS","dialogHeight","focusedElementIndex","IC_TEXT_FIELD","IC_ACCORDION","IC_ACCORDION_GROUP","resizeObserver","dialogOpened","dialogRendered","disableHeightConstraint","dialogEl","show","_a","showModal","setTimeout","fadeIn","backdropEl","scrollTop","setInitialFocus","checkResizeObserver","runResizeObserver","getFocusedElementIndex","icDialogOpened","emit","ResizeObserver","clearTimeout","resizeTimeout","window","resizeObserverCallback","observe","clientHeight","refreshInteractiveElementsOnSlotChange","contentArea","el","shadowRoot","querySelector","addEventListener","getInteractiveElements","removeSlotChangeListener","removeEventListener","sourceElement","document","activeElement","focusedElement","tagName","setFocus","focus","preventScroll","i","interactiveElementList","length","closeIconClick","open","Array","from","querySelectorAll","slottedInteractiveElements","slot","setAttribute","destructive","splice","getNextFocusEl","focusNextInteractiveElement","shiftKey","setFocusIndexBasedOnShiftKey","loopNextFocusIndexIfLastElement","nextFocusEl","isHidden","getComputedStyle","visibility","hasAttribute","renderDialog","buttons","size","heading","label","dismissLabel","hideCloseButton","h","class","disableWidthConstraint","ref","name","variant","id","innerHTML","closeIcon","onClick","isSlotUsed","cancelDialog","confirmDialog","undefined","watchOpenHandler","disconnect","close","icDialogClosed","disconnectedCallback","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","componentDidRender","display","body","style","overflow","handleKeyboard","ev","key","preventDefault","repeat","stopImmediatePropagation","handleClick","dialogElement","closeOnBackdropClick","composedPath","indexOf","rect","getBoundingClientRect","isInDialog","top","clientY","height","left","clientX","width","icDialogCancelled","icDialogConfirmed","render","Host"],"sources":["src/components/ic-dialog/ic-dialog.css?tag=ic-dialog&encapsulation=shadow","src/components/ic-dialog/ic-dialog.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-dialog: z-index of dialog \n */\n\n:host {\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100% !important;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n opacity: 0;\n}\n\n:host(.ic-dialog-fade-in) {\n opacity: 1;\n}\n\n:host(.disable-height-constraint) {\n background: none;\n justify-content: unset;\n align-items: unset;\n}\n\n.dialog.disable-height-constraint {\n max-height: none;\n position: relative;\n}\n\n.dialog.disable-height-constraint .content-area {\n overflow-y: visible;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :host {\n transition: opacity var(--ic-easing-transition-slow);\n }\n\n .dialog {\n transform: translateY(-3rem);\n transition: transform 1000s;\n }\n\n :host(.ic-dialog-fade-in) .dialog {\n transform: translateY(0);\n transition: transform var(--ic-easing-transition-slow);\n }\n}\n\n:host(.ic-dialog-hidden) {\n display: none;\n}\n\n.dialog {\n background-color: var(--ic-architectural-white);\n color: var(--ic-architectural-black);\n border: var(--ic-border-default);\n border-radius: var(--ic-border-radius);\n padding: var(--ic-space-xs) 0 var(--ic-space-md);\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n overflow-x: visible;\n}\n\n.small {\n width: 50%;\n max-width: 25rem;\n min-height: 11rem;\n max-height: 70vh;\n}\n\n.medium {\n width: 70vw;\n max-width: 44rem;\n min-height: 12.5rem;\n max-height: 70vh;\n}\n\n.large {\n width: 90vw;\n max-width: 62.5rem;\n min-height: 12.5rem;\n max-height: 90vh;\n}\n\n.heading-area {\n display: flex;\n margin-bottom: var(--ic-space-xs);\n padding: 0 var(--ic-space-md);\n}\n\n.heading {\n overflow-wrap: break-word;\n}\n\n.close-icon {\n margin-left: auto;\n}\n\n.content-area {\n -ms-overflow-style: none;\n scrollbar-width: none;\n padding: 0 var(--ic-space-md);\n margin: 0;\n overflow-y: auto;\n}\n\n.content-area::-webkit-scrollbar {\n display: none;\n}\n\n#dialog-content {\n margin-bottom: var(--ic-space-sm);\n}\n\n#dialog-content ::slotted(ic-typography) {\n overflow-wrap: break-word;\n}\n\n#dialog-content ::slotted(*) {\n position: relative;\n}\n\n.dialog-controls {\n margin-top: auto;\n padding: var(--ic-space-xs) var(--ic-space-md) 0;\n display: flex;\n justify-content: flex-end;\n gap: var(--ic-space-md);\n}\n\n.dialog-control-button {\n width: fit-content;\n}\n\n.backdrop {\n overflow-y: auto;\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n padding-top: 16px;\n padding-bottom: 16px;\n}\n\n@media (min-width: 800px) {\n :host([size=\"large\"]) .dialog:not(.disable-width-constraint) > .content-area {\n width: 75%;\n }\n}\n\n@media (max-width: 576px) {\n .dialog {\n width: 100vw;\n height: 100vh;\n transform: translateY(-5rem);\n max-width: none;\n max-height: none;\n box-sizing: border-box;\n }\n\n .backdrop {\n padding: 0;\n }\n\n .dialog.disable-height-constraint {\n height: auto;\n min-height: 100vh;\n }\n}\n\n@media (max-width: 364px) {\n .dialog-control-button {\n width: unset;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Prop,\n State,\n Method,\n Listen,\n Watch,\n h,\n} from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport {\n isSlotUsed,\n checkResizeObserver,\n onComponentRequiredPropUndefined,\n} from \"../../utils/helpers\";\n\n/**\n * @slot dialog-controls - Content will be place at the bottom of the dialog.\n * @slot heading - Content will be placed at the top of the dialog.\n * @slot label - Content will be placed above the dialog heading.\n * @slot alert - Content will be placed at the top of the content area of the dialog.\n */\n@Component({\n tag: \"ic-dialog\",\n styleUrl: \"ic-dialog.css\",\n shadow: true,\n})\nexport class Dialog {\n private backdropEl: HTMLDivElement;\n private contentArea: HTMLSlotElement;\n private DATA_GETS_FOCUS: string = \"data-gets-focus\";\n private DATA_GETS_FOCUS_SELECTOR: string = \"[data-gets-focus]\";\n private DIALOG_CONTROLS: string = \"dialog-controls\";\n private dialogEl: HTMLDialogElement;\n private dialogHeight: number = 0;\n private focusedElementIndex = 0;\n private IC_TEXT_FIELD: string = \"IC-TEXT-FIELD\";\n private IC_ACCORDION: string = \"IC-ACCORDION\";\n private IC_ACCORDION_GROUP: string = \"IC-ACCORDION-GROUP\";\n private interactiveElementList: HTMLElement[];\n private resizeObserver: ResizeObserver = null;\n private resizeTimeout: number;\n private sourceElement: HTMLElement;\n\n @Element() el: HTMLIcDialogElement;\n\n @State() dialogRendered: boolean = false;\n @State() fadeIn: boolean = false;\n\n /**\n * If set to `false`, default buttons or slotted dialog controls will not be displayed.\n */\n @Prop() buttons?: boolean = true;\n\n /**\n * If set to `false`, the dialog will not close when the backdrop is clicked.\n */\n @Prop() closeOnBackdropClick?: boolean = true;\n\n /**\n * If default buttons are displayed, sets the 'primary' or rightmost button to the destructive variant. Stops initial focus being set on the 'primary' or rightmost default or slotted button.\n */\n @Prop() destructive?: boolean = false;\n\n /**\n * Sets the dismiss label tooltip and aria label.\n */\n @Prop() dismissLabel?: string = \"Dismiss\";\n\n /**\n * If set to `true`, the content area max height and overflow properties are removed allowing the dialog to stretch below the fold.\n * This prop also prevents popover elements from being cut off within the content area.\n */\n @Prop() disableHeightConstraint?: boolean = false;\n\n /**\n * If set to `true`, the content area width property is removed, allowing content to take the full width of the dialog when using the large variant.\n */\n @Prop() disableWidthConstraint?: boolean = false;\n\n /**\n * If `true`, the close button will not be displayed.\n */\n @Prop() hideCloseButton?: boolean = false;\n\n /**\n * Sets the heading for the dialog.\n */\n @Prop() heading: string;\n\n /**\n * Sets the optional label for the dialog which appears above the heading.\n */\n @Prop() label?: string;\n\n /**\n * If `true`, the dialog will be displayed.\n */\n @Prop({ reflect: true, mutable: true }) open: boolean = undefined;\n\n @Watch(\"open\")\n watchOpenHandler(): void {\n if (this.open) {\n this.dialogOpened();\n } else {\n this.fadeIn = false;\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n setTimeout(() => {\n this.dialogRendered = false;\n this.dialogEl.close();\n this.sourceElement?.focus();\n this.dialogHeight = 0;\n this.icDialogClosed.emit();\n }, 80);\n }\n }\n\n /**\n * Sets the maximum and minimum height and width for the dialog.\n */\n @Prop() size?: \"small\" | \"medium\" | \"large\" = \"small\";\n\n /**\n * Cancelation event emitted when default 'Cancel' button clicked or 'cancelDialog' method is called.\n */\n @Event() icDialogCancelled: EventEmitter<void>;\n\n /**\n * Emitted when dialog has closed.\n */\n @Event() icDialogClosed: EventEmitter<void>;\n\n /**\n * Confirmation event emitted when default 'Confirm' primary button clicked or 'confirmDialog' method is called.\n */\n @Event() icDialogConfirmed: EventEmitter<void>;\n\n /**\n * Emitted when dialog has opened.\n */\n @Event() icDialogOpened: EventEmitter<void>;\n\n disconnectedCallback(): void {\n this.removeSlotChangeListener();\n }\n\n componentDidLoad(): void {\n this.getInteractiveElements();\n\n this.refreshInteractiveElementsOnSlotChange();\n\n if (this.open) {\n this.dialogOpened();\n }\n\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Dialog\"\n );\n }\n\n componentDidRender(): void {\n if (\n getComputedStyle(this.el).display !== \"none\" &&\n this.disableHeightConstraint\n ) {\n document.body.style.overflow = \"hidden\";\n } else {\n document.body.style.overflow = \"auto\";\n }\n }\n\n @Listen(\"keydown\", { target: \"document\" })\n handleKeyboard(ev: KeyboardEvent): void {\n if (this.dialogRendered) {\n switch (ev.key) {\n case \"Tab\":\n ev.preventDefault();\n this.focusNextInteractiveElement(ev.shiftKey);\n break;\n case \"Escape\":\n if (!ev.repeat) {\n this.open = false;\n }\n ev.stopImmediatePropagation();\n break;\n }\n }\n }\n\n @Listen(\"click\", {})\n handleClick(ev: MouseEvent): void {\n const dialogElement = this.el.shadowRoot.querySelector(\"dialog\");\n if (\n this.closeOnBackdropClick &&\n ev.composedPath().indexOf(dialogElement) <= 0\n ) {\n const rect = this.dialogEl.getBoundingClientRect();\n const isInDialog =\n rect.top <= ev.clientY &&\n ev.clientY <= rect.top + rect.height &&\n rect.left <= ev.clientX &&\n ev.clientX <= rect.left + rect.width;\n if (!isInDialog) {\n this.open = false;\n }\n }\n }\n\n /**\n * Cancels the dialog. Used by the default 'Cancel' button or can be called manually to trigger cancelling of dialog.\n */\n @Method()\n async cancelDialog(): Promise<void> {\n this.icDialogCancelled.emit();\n this.open = false;\n }\n\n /**\n * Confirms the dialog. Used by the default 'Confirm' button or can be called manually to trigger confirming of dialog.\n */\n @Method()\n async confirmDialog(): Promise<void> {\n this.icDialogConfirmed.emit();\n }\n\n private dialogOpened = () => {\n this.dialogRendered = true;\n\n if (this.disableHeightConstraint) {\n this.dialogEl.show();\n } else {\n this.dialogEl?.showModal();\n }\n\n setTimeout(() => {\n this.fadeIn = true;\n\n /**\n * This is required to set scroll back to top if:\n * - dialog content goes below the fold\n * - is closed using cancel or confirm and reopened.\n *\n * Without this, the scroll bar will start from the dialog's last scroll-x coordinate.\n */\n if (this.disableHeightConstraint && this.backdropEl.scrollTop !== 0) {\n this.backdropEl.scrollTop = 0;\n }\n }, 10);\n\n setTimeout(() => {\n this.setInitialFocus();\n checkResizeObserver(this.runResizeObserver);\n }, 75);\n\n setTimeout(() => {\n this.getFocusedElementIndex();\n this.icDialogOpened.emit();\n }, 80);\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = window.setTimeout(this.resizeObserverCallback, 80);\n });\n this.resizeObserver.observe(this.dialogEl);\n };\n\n private resizeObserverCallback = () => {\n if (this.dialogEl.clientHeight !== this.dialogHeight) {\n this.dialogHeight = this.dialogEl.clientHeight;\n }\n };\n\n private refreshInteractiveElementsOnSlotChange = () => {\n this.contentArea = this.el.shadowRoot.querySelector(\"#dialog-content slot\");\n\n this.contentArea.addEventListener(\n \"slotchange\",\n this.getInteractiveElements\n );\n };\n\n private removeSlotChangeListener = () => {\n if (this.contentArea) {\n this.contentArea.removeEventListener(\n \"slotchange\",\n this.getInteractiveElements\n );\n }\n };\n\n private setInitialFocus = () => {\n this.sourceElement = document.activeElement as HTMLElement;\n\n let focusedElement;\n\n if (this.el.querySelector(this.DATA_GETS_FOCUS_SELECTOR) !== null) {\n focusedElement = this.el.querySelector(\n this.DATA_GETS_FOCUS_SELECTOR\n ) as HTMLElement;\n } else {\n focusedElement = this.el.shadowRoot.querySelector(\n this.DATA_GETS_FOCUS_SELECTOR\n ) as HTMLElement;\n }\n if (focusedElement.tagName === this.IC_TEXT_FIELD) {\n (focusedElement as HTMLIcTextFieldElement).setFocus();\n } else if (focusedElement.tagName === this.IC_ACCORDION_GROUP) {\n (focusedElement as HTMLIcAccordionGroupElement).setFocus();\n } else if (focusedElement.tagName === this.IC_ACCORDION) {\n (focusedElement as HTMLIcAccordionElement).setFocus();\n } else {\n focusedElement.focus({\n preventScroll: this.disableHeightConstraint ? true : false,\n });\n }\n };\n\n private getFocusedElementIndex = () => {\n for (let i = 0; i < this.interactiveElementList.length; i++) {\n if (\n (this.interactiveElementList[i] as HTMLElement) ===\n (this.el.shadowRoot.activeElement || document.activeElement)\n ) {\n this.focusedElementIndex = i;\n }\n }\n };\n\n private closeIconClick = () => {\n this.open = false;\n };\n\n private getInteractiveElements = () => {\n this.interactiveElementList = Array.from(\n this.el.shadowRoot.querySelectorAll(\"ic-button\")\n );\n const slottedInteractiveElements = Array.from(\n this.el.querySelectorAll(\n `a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex=\"-1\"]), \n ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-group, ic-radio-group, \n ic-back-to-top, ic-breadcrumb, ic-chip[dismissible=\"true\"], ic-footer-link, ic-link, ic-navigation-button, \n ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion`\n )\n );\n if (slottedInteractiveElements.length > 0) {\n if (slottedInteractiveElements[0].slot !== this.DIALOG_CONTROLS) {\n slottedInteractiveElements[0].setAttribute(this.DATA_GETS_FOCUS, \"\");\n } else if (!this.destructive) {\n slottedInteractiveElements[\n slottedInteractiveElements.length - 1\n ].setAttribute(this.DATA_GETS_FOCUS, \"\");\n }\n }\n for (let i = 0; i < slottedInteractiveElements.length; i++) {\n this.interactiveElementList.splice(\n 1 + i,\n 0,\n slottedInteractiveElements[i] as HTMLElement\n );\n }\n };\n\n private getNextFocusEl = (focusedElementIndex: number) =>\n this.interactiveElementList[focusedElementIndex];\n\n private focusNextInteractiveElement = (shiftKey: boolean) => {\n this.getFocusedElementIndex();\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n\n let nextFocusEl = this.getNextFocusEl(this.focusedElementIndex);\n\n const isHidden =\n getComputedStyle(nextFocusEl).visibility === \"hidden\" ||\n (nextFocusEl.tagName === this.IC_ACCORDION_GROUP &&\n nextFocusEl.hasAttribute(\"single-expansion\"));\n\n if (nextFocusEl.tagName === this.IC_TEXT_FIELD) {\n (nextFocusEl as HTMLIcTextFieldElement).setFocus();\n } else {\n if (isHidden) {\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n\n nextFocusEl = this.getNextFocusEl(this.focusedElementIndex);\n }\n if (nextFocusEl.tagName === this.IC_ACCORDION_GROUP) {\n (nextFocusEl as HTMLIcAccordionGroupElement).setFocus();\n } else if (nextFocusEl.tagName === this.IC_ACCORDION) {\n (nextFocusEl as HTMLIcAccordionElement).setFocus();\n } else {\n (nextFocusEl as HTMLElement).focus();\n }\n }\n };\n\n private loopNextFocusIndexIfLastElement() {\n if (this.focusedElementIndex > this.interactiveElementList.length - 1)\n this.focusedElementIndex = 0;\n else if (this.focusedElementIndex < 0) {\n this.focusedElementIndex = this.interactiveElementList.length - 1;\n }\n }\n\n private setFocusIndexBasedOnShiftKey(shiftKey: boolean) {\n if (shiftKey) {\n this.focusedElementIndex -= 1;\n } else {\n this.focusedElementIndex += 1;\n }\n }\n\n private renderDialog = () => {\n const {\n buttons,\n size,\n heading,\n label,\n destructive,\n dismissLabel,\n hideCloseButton,\n } = this;\n\n return (\n <dialog\n class={{\n [\"dialog\"]: true,\n [`${size}`]: true,\n [\"disable-height-constraint\"]: this.disableHeightConstraint,\n [\"disable-width-constraint\"]: this.disableWidthConstraint,\n }}\n aria-labelledby=\"dialog-label dialog-heading\"\n aria-describedby=\"dialog-alert dialog-content\"\n ref={(el) => (this.dialogEl = el)}\n >\n <div class=\"heading-area\">\n <div class=\"heading-content\">\n <div class=\"label\">\n <slot name=\"label\">\n <ic-typography variant=\"label\" id=\"dialog-label\">\n {label}\n </ic-typography>\n </slot>\n </div>\n <div class=\"heading\">\n <slot name=\"heading\">\n <ic-typography variant=\"h4\" id=\"dialog-heading\">\n {heading}\n </ic-typography>\n </slot>\n </div>\n </div>\n {!hideCloseButton && (\n <ic-button\n class=\"close-icon\"\n variant=\"icon\"\n innerHTML={closeIcon}\n aria-label={dismissLabel}\n onClick={this.closeIconClick}\n data-gets-focus={destructive || !buttons ? \"\" : null}\n ></ic-button>\n )}\n </div>\n <div class=\"content-area\">\n {isSlotUsed(this.el, \"alert\") && <slot name=\"alert\"></slot>}\n <div id=\"dialog-content\">\n <slot></slot>\n </div>\n </div>\n {buttons &&\n (isSlotUsed(this.el, this.DIALOG_CONTROLS) ? (\n <div\n class={{\n [this.DIALOG_CONTROLS]: true,\n }}\n >\n <slot name={this.DIALOG_CONTROLS}></slot>\n </div>\n ) : (\n <div\n class={{\n [this.DIALOG_CONTROLS]: true,\n }}\n >\n <ic-button\n variant=\"tertiary\"\n onClick={() => this.cancelDialog()}\n class=\"dialog-control-button\"\n data-gets-focus={null}\n >\n Cancel\n </ic-button>\n <ic-button\n variant={this.destructive ? \"destructive\" : \"primary\"}\n onClick={() => this.confirmDialog()}\n class=\"dialog-control-button\"\n data-gets-focus=\"\"\n >\n Confirm\n </ic-button>\n </div>\n ))}\n </dialog>\n );\n };\n\n render() {\n return (\n <Host\n class={{\n [\"ic-dialog-hidden\"]: !this.dialogRendered,\n [\"ic-dialog-fade-in\"]: this.fadeIn,\n [\"disable-height-constraint\"]: this.disableHeightConstraint,\n }}\n >\n {this.disableHeightConstraint ? (\n <div class=\"backdrop\" ref={(el) => (this.backdropEl = el)}>\n {this.renderDialog()}\n </div>\n ) : (\n this.renderDialog()\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}