@ukic/web-components 2.25.1 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (887) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-4af10d35.js → helpers-94b33ab0.js} +3 -1
  3. package/dist/cjs/helpers-94b33ab0.js.map +1 -0
  4. package/dist/cjs/ic-accordion-group.cjs.entry.js +8 -8
  5. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-accordion.cjs.entry.js +4 -4
  7. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-alert.cjs.entry.js +1 -3
  9. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-back-to-top.cjs.entry.js +12 -15
  11. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-badge.cjs.entry.js +15 -27
  13. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +4 -4
  15. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-breadcrumb.cjs.entry.js +3 -3
  17. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-button_3.cjs.entry.js +27 -22
  19. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  20. package/dist/cjs/{ic-card.cjs.entry.js → ic-card-vertical.cjs.entry.js} +6 -6
  21. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -0
  22. package/dist/cjs/ic-checkbox-group.cjs.entry.js +6 -5
  23. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  24. package/dist/cjs/ic-checkbox.cjs.entry.js +6 -15
  25. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  26. package/dist/cjs/ic-chip.cjs.entry.js +9 -10
  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 +28 -0
  31. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -0
  32. package/dist/cjs/ic-data-row.cjs.entry.js +9 -10
  33. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-dialog.cjs.entry.js +12 -97
  35. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  36. package/dist/cjs/ic-divider.cjs.entry.js +1 -1
  37. package/dist/cjs/ic-empty-state.cjs.entry.js +6 -6
  38. package/dist/cjs/ic-empty-state.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ic-footer-link-group.cjs.entry.js +9 -9
  40. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ic-footer-link.cjs.entry.js +6 -7
  42. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ic-footer.cjs.entry.js +8 -8
  44. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ic-hero.cjs.entry.js +8 -9
  46. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +5 -5
  48. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  49. package/dist/cjs/ic-input-component-container_3.cjs.entry.js +18 -23
  50. package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ic-input-label_2.cjs.entry.js +11 -12
  52. package/dist/cjs/ic-input-label_2.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ic-link.cjs.entry.js +6 -7
  54. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  55. package/dist/cjs/ic-menu-group.cjs.entry.js +1 -1
  56. package/dist/cjs/ic-menu-item.cjs.entry.js +3 -3
  57. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-navigation-button.cjs.entry.js +1 -1
  59. package/dist/cjs/ic-navigation-group.cjs.entry.js +9 -9
  60. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ic-navigation-item.cjs.entry.js +5 -5
  62. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ic-navigation-menu.cjs.entry.js +2 -2
  64. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ic-page-header.cjs.entry.js +7 -8
  66. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ic-pagination-item.cjs.entry.js +1 -1
  68. package/dist/cjs/ic-pagination.cjs.entry.js +35 -33
  69. package/dist/cjs/ic-pagination.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-popover-menu.cjs.entry.js +3 -3
  71. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-radio-group.cjs.entry.js +40 -25
  73. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-radio-option.cjs.entry.js +5 -18
  75. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-search-bar.cjs.entry.js +18 -24
  77. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-select.cjs.entry.js +13 -21
  79. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-side-navigation.cjs.entry.js +7 -7
  81. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-skeleton.cjs.entry.js +4 -5
  83. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-status-tag.cjs.entry.js +2 -11
  85. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-step.cjs.entry.js +40 -43
  87. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-stepper.cjs.entry.js +16 -16
  89. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-switch.cjs.entry.js +5 -6
  91. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-tab-context.cjs.entry.js +0 -11
  93. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-tab-group.cjs.entry.js +4 -5
  95. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-tab-panel.cjs.entry.js +1 -8
  97. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-tab.cjs.entry.js +4 -4
  99. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-text-field.cjs.entry.js +49 -49
  101. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-theme.cjs.entry.js +1 -1
  103. package/dist/cjs/ic-toast-region.cjs.entry.js +0 -7
  104. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  105. package/dist/cjs/ic-toast.cjs.entry.js +83 -35
  106. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  107. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +16 -16
  108. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  109. package/dist/cjs/ic-toggle-button.cjs.entry.js +13 -13
  110. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ic-top-navigation.cjs.entry.js +4 -4
  112. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  113. package/dist/cjs/ic-typography.cjs.entry.js +51 -16
  114. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  115. package/dist/cjs/index-f982899d.js +12 -12
  116. package/dist/cjs/loader.cjs.js +1 -1
  117. package/dist/cjs/types-dc22e301.js.map +1 -1
  118. package/dist/collection/collection-manifest.json +3 -3
  119. package/dist/collection/components/ic-accordion/ic-accordion.css +7 -7
  120. package/dist/collection/components/ic-accordion/ic-accordion.js +2 -2
  121. package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
  122. package/dist/collection/components/ic-accordion-group/ic-accordion-group.css +5 -5
  123. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js +9 -9
  124. package/dist/collection/components/ic-accordion-group/ic-accordion-group.js.map +1 -1
  125. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js +7 -7
  126. package/dist/collection/components/ic-accordion-group/test/basic/ic-accordion-group.spec.js.map +1 -1
  127. package/dist/collection/components/ic-alert/ic-alert.js +0 -19
  128. package/dist/collection/components/ic-alert/ic-alert.js.map +1 -1
  129. package/dist/collection/components/ic-back-to-top/ic-back-to-top.css +21 -61
  130. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js +10 -13
  131. package/dist/collection/components/ic-back-to-top/ic-back-to-top.js.map +1 -1
  132. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js +9 -10
  133. package/dist/collection/components/ic-back-to-top/test/basic/ic-back-to-top.spec.js.map +1 -1
  134. package/dist/collection/components/ic-badge/ic-badge.css +33 -33
  135. package/dist/collection/components/ic-badge/ic-badge.js +18 -74
  136. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  137. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +41 -43
  138. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +1 -1
  139. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.css +2 -2
  140. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js +1 -1
  141. package/dist/collection/components/ic-breadcrumb/ic-breadcrumb.js.map +1 -1
  142. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.css +7 -5
  143. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js +2 -2
  144. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.js.map +1 -1
  145. package/dist/collection/components/ic-button/ic-button.css +240 -214
  146. package/dist/collection/components/ic-button/ic-button.js +8 -9
  147. package/dist/collection/components/ic-button/ic-button.js.map +1 -1
  148. package/dist/collection/components/{ic-card/ic-card.js → ic-card-vertical/ic-card-vertical.js} +5 -5
  149. package/dist/collection/components/ic-card-vertical/ic-card-vertical.js.map +1 -0
  150. package/dist/collection/components/{ic-card/test/basic/ic-card.spec.js → ic-card-vertical/test/basic/ic-card-vertical.spec.js} +41 -41
  151. package/dist/collection/components/ic-card-vertical/test/basic/ic-card-vertical.spec.js.map +1 -0
  152. package/dist/collection/components/ic-checkbox/ic-checkbox.css +10 -10
  153. package/dist/collection/components/ic-checkbox/ic-checkbox.js +4 -136
  154. package/dist/collection/components/ic-checkbox/ic-checkbox.js.map +1 -1
  155. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.css +3 -3
  156. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js +4 -24
  157. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.js.map +1 -1
  158. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js +2 -2
  159. package/dist/collection/components/ic-checkbox-group/test/basic/ic-checkbox-group.spec.js.map +1 -1
  160. package/dist/collection/components/ic-chip/ic-chip.css +1 -5
  161. package/dist/collection/components/ic-chip/ic-chip.js +8 -52
  162. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  163. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js +15 -0
  164. package/dist/collection/components/ic-chip/test/basic/ic-chip.spec.js.map +1 -1
  165. package/dist/collection/components/ic-classification-banner/ic-classification-banner.css +1 -1
  166. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js +1 -1
  167. package/dist/collection/components/ic-classification-banner/ic-classification-banner.js.map +1 -1
  168. package/dist/collection/components/{ic-data-entity/ic-data-entity.css → ic-data-list/ic-data-list.css} +2 -2
  169. package/dist/collection/components/{ic-data-entity/ic-data-entity.js → ic-data-list/ic-data-list.js} +11 -33
  170. package/dist/collection/components/ic-data-list/ic-data-list.js.map +1 -0
  171. 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
  172. package/dist/collection/components/ic-data-list/test/basic/ic-data-list.spec.js.map +1 -0
  173. package/dist/collection/components/ic-data-row/ic-data-row.css +1 -1
  174. package/dist/collection/components/ic-data-row/ic-data-row.js +8 -30
  175. package/dist/collection/components/ic-data-row/ic-data-row.js.map +1 -1
  176. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js +4 -4
  177. package/dist/collection/components/ic-data-row/test/basic/ic-data-row.spec.js.map +1 -1
  178. package/dist/collection/components/ic-dialog/ic-dialog.css +3 -12
  179. package/dist/collection/components/ic-dialog/ic-dialog.js +11 -214
  180. package/dist/collection/components/ic-dialog/ic-dialog.js.map +1 -1
  181. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js +3 -226
  182. package/dist/collection/components/ic-dialog/test/basic/ic-dialog.spec.js.map +1 -1
  183. package/dist/collection/components/ic-empty-state/ic-empty-state.css +4 -4
  184. package/dist/collection/components/ic-empty-state/ic-empty-state.js +6 -6
  185. package/dist/collection/components/ic-empty-state/ic-empty-state.js.map +1 -1
  186. package/dist/collection/components/ic-footer/ic-footer.css +6 -6
  187. package/dist/collection/components/ic-footer/ic-footer.js +6 -6
  188. package/dist/collection/components/ic-footer/ic-footer.js.map +1 -1
  189. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js +1 -1
  190. package/dist/collection/components/ic-footer/test/basic/ic-footer.spec.js.map +1 -1
  191. package/dist/collection/components/ic-footer-link/ic-footer-link.css +33 -107
  192. package/dist/collection/components/ic-footer-link/ic-footer-link.js +4 -5
  193. package/dist/collection/components/ic-footer-link/ic-footer-link.js.map +1 -1
  194. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.css +7 -7
  195. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js +9 -9
  196. package/dist/collection/components/ic-footer-link-group/ic-footer-link-group.js.map +1 -1
  197. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js +7 -7
  198. package/dist/collection/components/ic-footer-link-group/test/basic/ic-footer-link-group.spec.js.map +1 -1
  199. package/dist/collection/components/ic-hero/ic-hero.css +13 -13
  200. package/dist/collection/components/ic-hero/ic-hero.js +8 -30
  201. package/dist/collection/components/ic-hero/ic-hero.js.map +1 -1
  202. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js +6 -6
  203. package/dist/collection/components/ic-hero/test/basic/ic-hero.spec.js.map +1 -1
  204. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.css +5 -5
  205. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js +3 -3
  206. package/dist/collection/components/ic-horizontal-scroll/ic-horizontal-scroll.js.map +1 -1
  207. package/dist/collection/components/ic-input-component-container/ic-input-component-container.css +31 -26
  208. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js +9 -54
  209. package/dist/collection/components/ic-input-component-container/ic-input-component-container.js.map +1 -1
  210. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js +9 -9
  211. package/dist/collection/components/ic-input-component-container/test/basic/ic-input-component-container.spec.js.map +1 -1
  212. package/dist/collection/components/ic-input-label/ic-input-label.css +1 -1
  213. package/dist/collection/components/ic-input-label/ic-input-label.js +24 -46
  214. package/dist/collection/components/ic-input-label/ic-input-label.js.map +1 -1
  215. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js +4 -4
  216. package/dist/collection/components/ic-input-label/test/basic/ic-input-label.spec.js.map +1 -1
  217. package/dist/collection/components/ic-input-validation/ic-input-validation.css +1 -1
  218. package/dist/collection/components/ic-input-validation/ic-input-validation.js +2 -2
  219. package/dist/collection/components/ic-input-validation/ic-input-validation.js.map +1 -1
  220. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js +4 -4
  221. package/dist/collection/components/ic-input-validation/test/basic/ic-input-validation.spec.js.map +1 -1
  222. package/dist/collection/components/ic-link/ic-link.css +31 -31
  223. package/dist/collection/components/ic-link/ic-link.js +4 -25
  224. package/dist/collection/components/ic-link/ic-link.js.map +1 -1
  225. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js +18 -16
  226. package/dist/collection/components/ic-link/test/basic/ic-link.spec.js.map +1 -1
  227. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.css +5 -4
  228. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js +7 -7
  229. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.js.map +1 -1
  230. package/dist/collection/components/ic-menu/ic-menu.css +8 -8
  231. package/dist/collection/components/ic-menu/ic-menu.js +6 -29
  232. package/dist/collection/components/ic-menu/ic-menu.js.map +1 -1
  233. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js +1 -1
  234. package/dist/collection/components/ic-menu/test/basic/ic-menu.spec.js.map +1 -1
  235. package/dist/collection/components/ic-menu-item/ic-menu-item.css +21 -21
  236. package/dist/collection/components/ic-menu-item/ic-menu-item.js +1 -1
  237. package/dist/collection/components/ic-menu-item/ic-menu-item.js.map +1 -1
  238. package/dist/collection/components/ic-navigation-group/ic-navigation-group.css +10 -10
  239. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +7 -7
  240. package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
  241. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js +4 -4
  242. package/dist/collection/components/ic-navigation-item/ic-navigation-item.js.map +1 -1
  243. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js +1 -1
  244. package/dist/collection/components/ic-navigation-menu/ic-navigation-menu.js.map +1 -1
  245. package/dist/collection/components/ic-page-header/ic-page-header.css +2 -2
  246. package/dist/collection/components/ic-page-header/ic-page-header.js +5 -27
  247. package/dist/collection/components/ic-page-header/ic-page-header.js.map +1 -1
  248. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js +15 -15
  249. package/dist/collection/components/ic-page-header/test/basic/ic-page-header.spec.js.map +1 -1
  250. package/dist/collection/components/ic-pagination/ic-pagination.css +5 -0
  251. package/dist/collection/components/ic-pagination/ic-pagination.js +39 -37
  252. package/dist/collection/components/ic-pagination/ic-pagination.js.map +1 -1
  253. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js +26 -26
  254. package/dist/collection/components/ic-pagination/test/basic/ic-pagination.spec.js.map +1 -1
  255. package/dist/collection/components/ic-popover-menu/ic-popover-menu.css +2 -2
  256. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +1 -1
  257. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  258. package/dist/collection/components/ic-radio-group/ic-radio-group.css +4 -4
  259. package/dist/collection/components/ic-radio-group/ic-radio-group.js +41 -45
  260. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  261. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +14 -18
  262. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +1 -1
  263. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js +11 -2
  264. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.spec.js.map +1 -1
  265. package/dist/collection/components/ic-radio-option/ic-radio-option.css +4 -4
  266. package/dist/collection/components/ic-radio-option/ic-radio-option.js +4 -126
  267. package/dist/collection/components/ic-radio-option/ic-radio-option.js.map +1 -1
  268. package/dist/collection/components/ic-search-bar/ic-search-bar.css +6 -6
  269. package/dist/collection/components/ic-search-bar/ic-search-bar.js +29 -96
  270. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  271. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +6 -6
  272. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +1 -1
  273. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js +15 -15
  274. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.spec.js.map +1 -1
  275. package/dist/collection/components/ic-select/ic-select.css +14 -12
  276. package/dist/collection/components/ic-select/ic-select.js +13 -148
  277. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  278. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js +6 -6
  279. package/dist/collection/components/ic-select/test/basic/ic-select.spec.js.map +1 -1
  280. package/dist/collection/components/ic-side-navigation/ic-side-navigation.css +8 -8
  281. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js +6 -6
  282. package/dist/collection/components/ic-side-navigation/ic-side-navigation.js.map +1 -1
  283. package/dist/collection/components/ic-skeleton/ic-skeleton.css +2 -2
  284. package/dist/collection/components/ic-skeleton/ic-skeleton.js +3 -25
  285. package/dist/collection/components/ic-skeleton/ic-skeleton.js.map +1 -1
  286. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js +1 -1
  287. package/dist/collection/components/ic-skeleton/test/basic/ic-skeleton.spec.js.map +1 -1
  288. package/dist/collection/components/ic-status-tag/ic-status-tag.js +1 -57
  289. package/dist/collection/components/ic-status-tag/ic-status-tag.js.map +1 -1
  290. package/dist/collection/components/ic-status-tag/ic-status-tag.types.js.map +1 -1
  291. package/dist/collection/components/ic-step/ic-step.css +52 -52
  292. package/dist/collection/components/ic-step/ic-step.js +49 -52
  293. package/dist/collection/components/ic-step/ic-step.js.map +1 -1
  294. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js +30 -30
  295. package/dist/collection/components/ic-step/test/basic/ic-step.spec.js.map +1 -1
  296. package/dist/collection/components/ic-stepper/ic-stepper.css +4 -4
  297. package/dist/collection/components/ic-stepper/ic-stepper.js +14 -14
  298. package/dist/collection/components/ic-stepper/ic-stepper.js.map +1 -1
  299. package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js +37 -37
  300. package/dist/collection/components/ic-stepper/test/basic/ic-stepper-test-examples.js.map +1 -1
  301. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js +234 -234
  302. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.spec.js.map +1 -1
  303. package/dist/collection/components/ic-switch/ic-switch.js +4 -26
  304. package/dist/collection/components/ic-switch/ic-switch.js.map +1 -1
  305. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js +1 -1
  306. package/dist/collection/components/ic-switch/test/basic/ic-switch.spec.js.map +1 -1
  307. package/dist/collection/components/ic-tab/ic-tab.css +5 -5
  308. package/dist/collection/components/ic-tab/ic-tab.js +2 -2
  309. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  310. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js +2 -2
  311. package/dist/collection/components/ic-tab/test/basic/ic-tab.spec.js.map +1 -1
  312. package/dist/collection/components/ic-tab-context/ic-tab-context.js +0 -34
  313. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  314. package/dist/collection/components/ic-tab-group/ic-tab-group.css +2 -2
  315. package/dist/collection/components/ic-tab-group/ic-tab-group.js +2 -24
  316. package/dist/collection/components/ic-tab-group/ic-tab-group.js.map +1 -1
  317. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +0 -28
  318. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  319. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +3 -18
  320. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +1 -1
  321. package/dist/collection/components/ic-text-field/ic-text-field.css +8 -3
  322. package/dist/collection/components/ic-text-field/ic-text-field.js +67 -89
  323. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  324. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js +26 -11
  325. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.input.spec.js.map +1 -1
  326. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js +70 -39
  327. package/dist/collection/components/ic-text-field/test/basic/ic-text-field.textarea.spec.js.map +1 -1
  328. package/dist/collection/components/ic-toast/ic-toast.css +10 -3
  329. package/dist/collection/components/ic-toast/ic-toast.js +83 -32
  330. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  331. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +43 -7
  332. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
  333. package/dist/collection/components/ic-toast-region/ic-toast-region.js +1 -43
  334. package/dist/collection/components/ic-toast-region/ic-toast-region.js.map +1 -1
  335. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js +0 -20
  336. package/dist/collection/components/ic-toast-region/test/basic/ic-toast-region.spec.js.map +1 -1
  337. package/dist/collection/components/ic-toggle-button/ic-toggle-button.css +50 -43
  338. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js +13 -13
  339. package/dist/collection/components/ic-toggle-button/ic-toggle-button.js.map +1 -1
  340. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js +4 -4
  341. package/dist/collection/components/ic-toggle-button/test/basic/ic-toggle-button.spec.js.map +1 -1
  342. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.css +11 -8
  343. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js +15 -15
  344. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.js.map +1 -1
  345. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.types.js.map +1 -1
  346. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js +19 -19
  347. package/dist/collection/components/ic-toggle-button-group/test/ic-toggle-button-group.spec.js.map +1 -1
  348. package/dist/collection/components/ic-tooltip/ic-tooltip.js +56 -6
  349. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  350. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js +4 -4
  351. package/dist/collection/components/ic-top-navigation/ic-top-navigation.js.map +1 -1
  352. package/dist/collection/components/ic-typography/ic-typography.css +13 -5
  353. package/dist/collection/components/ic-typography/ic-typography.js +152 -17
  354. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  355. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js +55 -0
  356. package/dist/collection/components/ic-typography/test/basic/ic-typography.spec.js.map +1 -1
  357. package/dist/collection/utils/helpers.js +1 -0
  358. package/dist/collection/utils/helpers.js.map +1 -1
  359. package/dist/collection/utils/types.js.map +1 -1
  360. package/dist/components/helpers.js +2 -1
  361. package/dist/components/helpers.js.map +1 -1
  362. package/dist/components/ic-accordion-group.js +8 -8
  363. package/dist/components/ic-accordion-group.js.map +1 -1
  364. package/dist/components/ic-accordion.js +3 -3
  365. package/dist/components/ic-accordion.js.map +1 -1
  366. package/dist/components/ic-alert.js +127 -1
  367. package/dist/components/ic-alert.js.map +1 -1
  368. package/dist/components/ic-back-to-top.js +25 -16
  369. package/dist/components/ic-back-to-top.js.map +1 -1
  370. package/dist/components/ic-badge.js +17 -31
  371. package/dist/components/ic-badge.js.map +1 -1
  372. package/dist/components/ic-breadcrumb-group.js +4 -4
  373. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  374. package/dist/components/ic-breadcrumb2.js +3 -3
  375. package/dist/components/ic-breadcrumb2.js.map +1 -1
  376. package/dist/components/ic-button2.js +10 -10
  377. package/dist/components/ic-button2.js.map +1 -1
  378. package/dist/components/{ic-data-entity.d.ts → ic-card-vertical.d.ts} +4 -4
  379. package/dist/components/{ic-card.js → ic-card-vertical.js} +11 -11
  380. package/dist/components/ic-card-vertical.js.map +1 -0
  381. package/dist/components/ic-checkbox-group.js +6 -6
  382. package/dist/components/ic-checkbox-group.js.map +1 -1
  383. package/dist/components/ic-checkbox.js +6 -21
  384. package/dist/components/ic-checkbox.js.map +1 -1
  385. package/dist/components/ic-chip.js +9 -11
  386. package/dist/components/ic-chip.js.map +1 -1
  387. package/dist/components/ic-classification-banner.js +2 -2
  388. package/dist/components/ic-classification-banner.js.map +1 -1
  389. package/dist/components/{ic-card.d.ts → ic-data-list.d.ts} +4 -4
  390. package/dist/components/ic-data-list.js +51 -0
  391. package/dist/components/ic-data-list.js.map +1 -0
  392. package/dist/components/ic-data-row.js +10 -12
  393. package/dist/components/ic-data-row.js.map +1 -1
  394. package/dist/components/ic-dialog.js +14 -112
  395. package/dist/components/ic-dialog.js.map +1 -1
  396. package/dist/components/ic-divider2.js +1 -1
  397. package/dist/components/ic-empty-state.js +7 -7
  398. package/dist/components/ic-empty-state.js.map +1 -1
  399. package/dist/components/ic-footer-link-group.js +10 -10
  400. package/dist/components/ic-footer-link-group.js.map +1 -1
  401. package/dist/components/ic-footer-link.js +13 -8
  402. package/dist/components/ic-footer-link.js.map +1 -1
  403. package/dist/components/ic-footer.js +8 -8
  404. package/dist/components/ic-footer.js.map +1 -1
  405. package/dist/components/ic-hero.js +8 -10
  406. package/dist/components/ic-hero.js.map +1 -1
  407. package/dist/components/ic-horizontal-scroll2.js +5 -5
  408. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  409. package/dist/components/ic-input-component-container2.js +11 -16
  410. package/dist/components/ic-input-component-container2.js.map +1 -1
  411. package/dist/components/ic-input-label2.js +10 -12
  412. package/dist/components/ic-input-label2.js.map +1 -1
  413. package/dist/components/ic-input-validation2.js +4 -4
  414. package/dist/components/ic-input-validation2.js.map +1 -1
  415. package/dist/components/ic-link2.js +6 -8
  416. package/dist/components/ic-link2.js.map +1 -1
  417. package/dist/components/ic-loading-indicator2.js +9 -9
  418. package/dist/components/ic-loading-indicator2.js.map +1 -1
  419. package/dist/components/ic-menu-group.js +1 -1
  420. package/dist/components/ic-menu-item2.js +3 -3
  421. package/dist/components/ic-menu-item2.js.map +1 -1
  422. package/dist/components/ic-menu2.js +7 -10
  423. package/dist/components/ic-menu2.js.map +1 -1
  424. package/dist/components/ic-navigation-button.js +1 -1
  425. package/dist/components/ic-navigation-group.js +9 -9
  426. package/dist/components/ic-navigation-group.js.map +1 -1
  427. package/dist/components/ic-navigation-item.js +5 -5
  428. package/dist/components/ic-navigation-item.js.map +1 -1
  429. package/dist/components/ic-navigation-menu2.js +2 -2
  430. package/dist/components/ic-navigation-menu2.js.map +1 -1
  431. package/dist/components/ic-page-header.js +7 -9
  432. package/dist/components/ic-page-header.js.map +1 -1
  433. package/dist/components/ic-pagination-item2.js +1 -1
  434. package/dist/components/ic-pagination.js +38 -36
  435. package/dist/components/ic-pagination.js.map +1 -1
  436. package/dist/components/ic-popover-menu.js +3 -3
  437. package/dist/components/ic-popover-menu.js.map +1 -1
  438. package/dist/components/ic-radio-group.js +41 -26
  439. package/dist/components/ic-radio-group.js.map +1 -1
  440. package/dist/components/ic-radio-option.js +6 -25
  441. package/dist/components/ic-radio-option.js.map +1 -1
  442. package/dist/components/ic-search-bar.js +20 -27
  443. package/dist/components/ic-search-bar.js.map +1 -1
  444. package/dist/components/ic-select.js +14 -29
  445. package/dist/components/ic-select.js.map +1 -1
  446. package/dist/components/ic-side-navigation.js +7 -7
  447. package/dist/components/ic-side-navigation.js.map +1 -1
  448. package/dist/components/ic-skeleton.js +4 -6
  449. package/dist/components/ic-skeleton.js.map +1 -1
  450. package/dist/components/ic-status-tag.js +1 -12
  451. package/dist/components/ic-status-tag.js.map +1 -1
  452. package/dist/components/ic-step.js +46 -49
  453. package/dist/components/ic-step.js.map +1 -1
  454. package/dist/components/ic-stepper.js +16 -16
  455. package/dist/components/ic-stepper.js.map +1 -1
  456. package/dist/components/ic-switch.js +5 -7
  457. package/dist/components/ic-switch.js.map +1 -1
  458. package/dist/components/ic-tab-context.js +0 -11
  459. package/dist/components/ic-tab-context.js.map +1 -1
  460. package/dist/components/ic-tab-group.js +3 -5
  461. package/dist/components/ic-tab-group.js.map +1 -1
  462. package/dist/components/ic-tab-panel.js +1 -9
  463. package/dist/components/ic-tab-panel.js.map +1 -1
  464. package/dist/components/ic-tab.js +3 -3
  465. package/dist/components/ic-tab.js.map +1 -1
  466. package/dist/components/ic-text-field2.js +51 -53
  467. package/dist/components/ic-text-field2.js.map +1 -1
  468. package/dist/components/ic-theme.js +1 -1
  469. package/dist/components/ic-toast-region.js +1 -9
  470. package/dist/components/ic-toast-region.js.map +1 -1
  471. package/dist/components/ic-toast.js +86 -36
  472. package/dist/components/ic-toast.js.map +1 -1
  473. package/dist/components/ic-toggle-button-group.js +16 -16
  474. package/dist/components/ic-toggle-button-group.js.map +1 -1
  475. package/dist/components/ic-toggle-button.js +13 -13
  476. package/dist/components/ic-toggle-button.js.map +1 -1
  477. package/dist/components/ic-tooltip2.js +12 -5
  478. package/dist/components/ic-tooltip2.js.map +1 -1
  479. package/dist/components/ic-top-navigation.js +4 -4
  480. package/dist/components/ic-top-navigation.js.map +1 -1
  481. package/dist/components/ic-typography2.js +57 -19
  482. package/dist/components/ic-typography2.js.map +1 -1
  483. package/dist/components/types.js.map +1 -1
  484. package/dist/core/core.css +1 -1
  485. package/dist/core/core.esm.js +1 -1
  486. package/dist/core/core.esm.js.map +1 -1
  487. package/dist/core/{p-014342a2.entry.js → p-05d32a4f.entry.js} +2 -2
  488. package/dist/core/{p-1d9fceb1.entry.js → p-086a6d4f.entry.js} +2 -2
  489. package/dist/core/p-0a00a786.entry.js +2 -0
  490. package/dist/core/p-0a00a786.entry.js.map +1 -0
  491. package/dist/core/p-145fcef3.entry.js +2 -0
  492. package/dist/core/p-145fcef3.entry.js.map +1 -0
  493. package/dist/core/{p-eb1d00a7.entry.js → p-15367990.entry.js} +2 -2
  494. package/dist/core/p-15367990.entry.js.map +1 -0
  495. package/dist/core/p-1737bf2c.entry.js +2 -0
  496. package/dist/core/p-1737bf2c.entry.js.map +1 -0
  497. package/dist/core/p-1ace2b02.entry.js +2 -0
  498. package/dist/core/p-1ace2b02.entry.js.map +1 -0
  499. package/dist/core/p-1e371012.entry.js +2 -0
  500. package/dist/core/p-1e371012.entry.js.map +1 -0
  501. package/dist/core/p-1f227289.entry.js +2 -0
  502. package/dist/core/p-1f227289.entry.js.map +1 -0
  503. package/dist/core/p-24275b92.entry.js +2 -0
  504. package/dist/core/p-24275b92.entry.js.map +1 -0
  505. package/dist/core/p-26b7b18f.js.map +1 -1
  506. package/dist/core/p-29e6c33f.entry.js +2 -0
  507. package/dist/core/p-29e6c33f.entry.js.map +1 -0
  508. package/dist/core/{p-5bba7e31.entry.js → p-2a6f01ad.entry.js} +2 -2
  509. package/dist/core/{p-8ce2dfd4.entry.js → p-2f86c53b.entry.js} +2 -2
  510. package/dist/core/p-2f86c53b.entry.js.map +1 -0
  511. package/dist/core/p-319e40c0.entry.js +2 -0
  512. package/dist/core/p-319e40c0.entry.js.map +1 -0
  513. package/dist/core/p-346c6920.entry.js +2 -0
  514. package/dist/core/p-346c6920.entry.js.map +1 -0
  515. package/dist/core/p-4b1445b3.entry.js +2 -0
  516. package/dist/core/p-4b1445b3.entry.js.map +1 -0
  517. package/dist/core/p-4b621c67.entry.js +2 -0
  518. package/dist/core/p-4b621c67.entry.js.map +1 -0
  519. package/dist/core/p-4ca2b177.entry.js +2 -0
  520. package/dist/core/p-4ca2b177.entry.js.map +1 -0
  521. package/dist/core/{p-3eda4e14.entry.js → p-54238d16.entry.js} +2 -2
  522. package/dist/core/p-54238d16.entry.js.map +1 -0
  523. package/dist/core/{p-c1db024d.entry.js → p-5515ad19.entry.js} +2 -2
  524. package/dist/core/p-5515ad19.entry.js.map +1 -0
  525. package/dist/core/p-5c8081d6.entry.js +2 -0
  526. package/dist/core/p-5c8081d6.entry.js.map +1 -0
  527. package/dist/core/{p-a8aea311.entry.js → p-5f941f3a.entry.js} +2 -2
  528. package/dist/core/{p-a8aea311.entry.js.map → p-5f941f3a.entry.js.map} +1 -1
  529. package/dist/core/p-5fd293b3.entry.js +2 -0
  530. package/dist/core/p-5fd293b3.entry.js.map +1 -0
  531. package/dist/core/p-60721d95.entry.js +2 -0
  532. package/dist/core/p-60721d95.entry.js.map +1 -0
  533. package/dist/core/{p-d69f353b.entry.js → p-64a5a1d8.entry.js} +2 -2
  534. package/dist/core/p-64a5a1d8.entry.js.map +1 -0
  535. package/dist/core/p-65e36461.entry.js +2 -0
  536. package/dist/core/p-65e36461.entry.js.map +1 -0
  537. package/dist/core/{p-a9a2987c.entry.js → p-66363c7d.entry.js} +2 -2
  538. package/dist/core/p-66363c7d.entry.js.map +1 -0
  539. package/dist/core/p-69728d76.entry.js +2 -0
  540. package/dist/core/p-69728d76.entry.js.map +1 -0
  541. package/dist/core/p-6b328c76.entry.js +2 -0
  542. package/dist/core/p-6b328c76.entry.js.map +1 -0
  543. package/dist/core/p-6b5ddacd.entry.js +2 -0
  544. package/dist/core/p-6b5ddacd.entry.js.map +1 -0
  545. package/dist/core/{p-92b9b56a.entry.js → p-7b3d6577.entry.js} +2 -2
  546. package/dist/core/p-7b3d6577.entry.js.map +1 -0
  547. package/dist/core/p-7d45828d.entry.js +2 -0
  548. package/dist/core/p-7d45828d.entry.js.map +1 -0
  549. package/dist/core/p-893eca54.entry.js +2 -0
  550. package/dist/core/p-893eca54.entry.js.map +1 -0
  551. package/dist/core/p-8ee262a4.entry.js +2 -0
  552. package/dist/core/p-8ee262a4.entry.js.map +1 -0
  553. package/dist/core/p-8f93d92b.entry.js +2 -0
  554. package/dist/core/p-8f93d92b.entry.js.map +1 -0
  555. package/dist/core/p-90bb13d2.entry.js +2 -0
  556. package/dist/core/p-90bb13d2.entry.js.map +1 -0
  557. package/dist/core/p-9189a82d.entry.js +2 -0
  558. package/dist/core/p-9189a82d.entry.js.map +1 -0
  559. package/dist/core/p-9190a84d.entry.js +2 -0
  560. package/dist/core/p-9190a84d.entry.js.map +1 -0
  561. package/dist/core/{p-08781606.entry.js → p-93f50a1a.entry.js} +2 -2
  562. package/dist/core/p-93f50a1a.entry.js.map +1 -0
  563. package/dist/core/p-9474baf3.entry.js +2 -0
  564. package/dist/core/p-9474baf3.entry.js.map +1 -0
  565. package/dist/core/{p-967d5546.entry.js → p-9857f6b0.entry.js} +2 -2
  566. package/dist/core/{p-7438ab1f.entry.js → p-a0e4d6bd.entry.js} +2 -2
  567. package/dist/core/p-a0e4d6bd.entry.js.map +1 -0
  568. package/dist/core/p-a1b9a808.entry.js +2 -0
  569. package/dist/core/p-a1b9a808.entry.js.map +1 -0
  570. package/dist/core/p-a79bec03.entry.js +2 -0
  571. package/dist/core/p-a79bec03.entry.js.map +1 -0
  572. package/dist/core/p-a84a4675.entry.js +2 -0
  573. package/dist/core/p-a84a4675.entry.js.map +1 -0
  574. package/dist/core/p-a928c7b3.entry.js +2 -0
  575. package/dist/core/p-a928c7b3.entry.js.map +1 -0
  576. package/dist/core/{p-6fae7e1f.entry.js → p-bf89c86d.entry.js} +2 -2
  577. package/dist/core/p-bf89c86d.entry.js.map +1 -0
  578. package/dist/core/{p-36cd5d32.js → p-d0524c73.js} +2 -2
  579. package/dist/core/p-d0524c73.js.map +1 -0
  580. package/dist/core/p-d24410ca.entry.js +2 -0
  581. package/dist/core/p-d24410ca.entry.js.map +1 -0
  582. package/dist/core/p-d52ca420.entry.js +2 -0
  583. package/dist/core/p-d52ca420.entry.js.map +1 -0
  584. package/dist/core/p-d67a30ca.entry.js +2 -0
  585. package/dist/core/p-d67a30ca.entry.js.map +1 -0
  586. package/dist/core/{p-1ef00a47.entry.js → p-de27c59e.entry.js} +2 -2
  587. package/dist/core/p-de27c59e.entry.js.map +1 -0
  588. package/dist/core/p-dec339ba.entry.js +2 -0
  589. package/dist/core/p-dec339ba.entry.js.map +1 -0
  590. package/dist/core/p-e4335135.entry.js +2 -0
  591. package/dist/core/p-e4335135.entry.js.map +1 -0
  592. package/dist/core/p-e56a2a06.entry.js +2 -0
  593. package/dist/core/p-e56a2a06.entry.js.map +1 -0
  594. package/dist/core/p-e696dc2a.entry.js +2 -0
  595. package/dist/core/p-e696dc2a.entry.js.map +1 -0
  596. package/dist/core/{p-f13195ab.entry.js → p-f0501be1.entry.js} +2 -2
  597. package/dist/core/p-f0501be1.entry.js.map +1 -0
  598. package/dist/core/{p-3b41756e.entry.js → p-f50462df.entry.js} +2 -2
  599. package/dist/core/p-feb80f37.entry.js +2 -0
  600. package/dist/core/p-feb80f37.entry.js.map +1 -0
  601. package/dist/esm/core.js +1 -1
  602. package/dist/esm/{helpers-354dbb8d.js → helpers-35ac5e03.js} +3 -2
  603. package/dist/esm/helpers-35ac5e03.js.map +1 -0
  604. package/dist/esm/ic-accordion-group.entry.js +8 -8
  605. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  606. package/dist/esm/ic-accordion.entry.js +4 -4
  607. package/dist/esm/ic-accordion.entry.js.map +1 -1
  608. package/dist/esm/ic-alert.entry.js +1 -3
  609. package/dist/esm/ic-alert.entry.js.map +1 -1
  610. package/dist/esm/ic-back-to-top.entry.js +12 -15
  611. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  612. package/dist/esm/ic-badge.entry.js +15 -27
  613. package/dist/esm/ic-badge.entry.js.map +1 -1
  614. package/dist/esm/ic-breadcrumb-group.entry.js +4 -4
  615. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  616. package/dist/esm/ic-breadcrumb.entry.js +3 -3
  617. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  618. package/dist/esm/ic-button_3.entry.js +27 -22
  619. package/dist/esm/ic-button_3.entry.js.map +1 -1
  620. package/dist/esm/{ic-card.entry.js → ic-card-vertical.entry.js} +6 -6
  621. package/dist/esm/ic-card-vertical.entry.js.map +1 -0
  622. package/dist/esm/ic-checkbox-group.entry.js +6 -5
  623. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  624. package/dist/esm/ic-checkbox.entry.js +6 -15
  625. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  626. package/dist/esm/ic-chip.entry.js +9 -10
  627. package/dist/esm/ic-chip.entry.js.map +1 -1
  628. package/dist/esm/ic-classification-banner.entry.js +2 -2
  629. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  630. package/dist/esm/ic-data-list.entry.js +24 -0
  631. package/dist/esm/ic-data-list.entry.js.map +1 -0
  632. package/dist/esm/ic-data-row.entry.js +9 -10
  633. package/dist/esm/ic-data-row.entry.js.map +1 -1
  634. package/dist/esm/ic-dialog.entry.js +12 -97
  635. package/dist/esm/ic-dialog.entry.js.map +1 -1
  636. package/dist/esm/ic-divider.entry.js +1 -1
  637. package/dist/esm/ic-empty-state.entry.js +6 -6
  638. package/dist/esm/ic-empty-state.entry.js.map +1 -1
  639. package/dist/esm/ic-footer-link-group.entry.js +9 -9
  640. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  641. package/dist/esm/ic-footer-link.entry.js +6 -7
  642. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  643. package/dist/esm/ic-footer.entry.js +8 -8
  644. package/dist/esm/ic-footer.entry.js.map +1 -1
  645. package/dist/esm/ic-hero.entry.js +8 -9
  646. package/dist/esm/ic-hero.entry.js.map +1 -1
  647. package/dist/esm/ic-horizontal-scroll.entry.js +5 -5
  648. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  649. package/dist/esm/ic-input-component-container_3.entry.js +18 -23
  650. package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
  651. package/dist/esm/ic-input-label_2.entry.js +11 -12
  652. package/dist/esm/ic-input-label_2.entry.js.map +1 -1
  653. package/dist/esm/ic-link.entry.js +6 -7
  654. package/dist/esm/ic-link.entry.js.map +1 -1
  655. package/dist/esm/ic-menu-group.entry.js +1 -1
  656. package/dist/esm/ic-menu-item.entry.js +3 -3
  657. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  658. package/dist/esm/ic-navigation-button.entry.js +1 -1
  659. package/dist/esm/ic-navigation-group.entry.js +9 -9
  660. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  661. package/dist/esm/ic-navigation-item.entry.js +5 -5
  662. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  663. package/dist/esm/ic-navigation-menu.entry.js +2 -2
  664. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  665. package/dist/esm/ic-page-header.entry.js +7 -8
  666. package/dist/esm/ic-page-header.entry.js.map +1 -1
  667. package/dist/esm/ic-pagination-item.entry.js +1 -1
  668. package/dist/esm/ic-pagination.entry.js +35 -33
  669. package/dist/esm/ic-pagination.entry.js.map +1 -1
  670. package/dist/esm/ic-popover-menu.entry.js +3 -3
  671. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  672. package/dist/esm/ic-radio-group.entry.js +40 -25
  673. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  674. package/dist/esm/ic-radio-option.entry.js +5 -18
  675. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  676. package/dist/esm/ic-search-bar.entry.js +18 -24
  677. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  678. package/dist/esm/ic-select.entry.js +13 -21
  679. package/dist/esm/ic-select.entry.js.map +1 -1
  680. package/dist/esm/ic-side-navigation.entry.js +7 -7
  681. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  682. package/dist/esm/ic-skeleton.entry.js +4 -5
  683. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  684. package/dist/esm/ic-status-tag.entry.js +2 -11
  685. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  686. package/dist/esm/ic-step.entry.js +40 -43
  687. package/dist/esm/ic-step.entry.js.map +1 -1
  688. package/dist/esm/ic-stepper.entry.js +16 -16
  689. package/dist/esm/ic-stepper.entry.js.map +1 -1
  690. package/dist/esm/ic-switch.entry.js +5 -6
  691. package/dist/esm/ic-switch.entry.js.map +1 -1
  692. package/dist/esm/ic-tab-context.entry.js +0 -11
  693. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  694. package/dist/esm/ic-tab-group.entry.js +4 -5
  695. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  696. package/dist/esm/ic-tab-panel.entry.js +1 -8
  697. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  698. package/dist/esm/ic-tab.entry.js +4 -4
  699. package/dist/esm/ic-tab.entry.js.map +1 -1
  700. package/dist/esm/ic-text-field.entry.js +49 -49
  701. package/dist/esm/ic-text-field.entry.js.map +1 -1
  702. package/dist/esm/ic-theme.entry.js +1 -1
  703. package/dist/esm/ic-toast-region.entry.js +0 -7
  704. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  705. package/dist/esm/ic-toast.entry.js +83 -35
  706. package/dist/esm/ic-toast.entry.js.map +1 -1
  707. package/dist/esm/ic-toggle-button-group.entry.js +16 -16
  708. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  709. package/dist/esm/ic-toggle-button.entry.js +13 -13
  710. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  711. package/dist/esm/ic-top-navigation.entry.js +4 -4
  712. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  713. package/dist/esm/ic-typography.entry.js +52 -17
  714. package/dist/esm/ic-typography.entry.js.map +1 -1
  715. package/dist/esm/index-d1d2c456.js +12 -12
  716. package/dist/esm/loader.js +1 -1
  717. package/dist/esm/types-6f6b41a5.js.map +1 -1
  718. package/dist/types/components/ic-accordion-group/ic-accordion-group.d.ts +2 -2
  719. package/dist/types/components/ic-alert/ic-alert.d.ts +0 -4
  720. package/dist/types/components/ic-back-to-top/ic-back-to-top.d.ts +0 -1
  721. package/dist/types/components/ic-badge/ic-badge.d.ts +3 -11
  722. package/dist/types/components/ic-button/ic-button.d.ts +0 -1
  723. package/dist/types/components/{ic-card/ic-card.d.ts → ic-card-vertical/ic-card-vertical.d.ts} +2 -2
  724. package/dist/types/components/ic-checkbox/ic-checkbox.d.ts +0 -28
  725. package/dist/types/components/ic-checkbox-group/ic-checkbox-group.d.ts +0 -4
  726. package/dist/types/components/ic-chip/ic-chip.d.ts +2 -9
  727. package/dist/types/components/ic-data-list/ic-data-list.d.ts +16 -0
  728. package/dist/types/components/ic-data-row/ic-data-row.d.ts +1 -5
  729. package/dist/types/components/ic-dialog/ic-dialog.d.ts +1 -37
  730. package/dist/types/components/ic-empty-state/ic-empty-state.d.ts +1 -1
  731. package/dist/types/components/ic-footer-link-group/ic-footer-link-group.d.ts +1 -1
  732. package/dist/types/components/ic-hero/ic-hero.d.ts +2 -6
  733. package/dist/types/components/ic-input-component-container/ic-input-component-container.d.ts +0 -8
  734. package/dist/types/components/ic-input-label/ic-input-label.d.ts +4 -8
  735. package/dist/types/components/ic-link/ic-link.d.ts +0 -4
  736. package/dist/types/components/ic-loading-indicator/ic-loading-indicator.d.ts +1 -1
  737. package/dist/types/components/ic-menu/ic-menu.d.ts +0 -4
  738. package/dist/types/components/ic-page-header/ic-page-header.d.ts +0 -4
  739. package/dist/types/components/ic-pagination/ic-pagination.d.ts +4 -4
  740. package/dist/types/components/ic-radio-group/ic-radio-group.d.ts +4 -4
  741. package/dist/types/components/ic-radio-option/ic-radio-option.d.ts +0 -24
  742. package/dist/types/components/ic-search-bar/ic-search-bar.d.ts +3 -15
  743. package/dist/types/components/ic-select/ic-select.d.ts +1 -31
  744. package/dist/types/components/ic-side-navigation/ic-side-navigation.d.ts +1 -1
  745. package/dist/types/components/ic-skeleton/ic-skeleton.d.ts +0 -4
  746. package/dist/types/components/ic-status-tag/ic-status-tag.d.ts +1 -10
  747. package/dist/types/components/ic-status-tag/ic-status-tag.types.d.ts +0 -1
  748. package/dist/types/components/ic-step/ic-step.d.ts +6 -6
  749. package/dist/types/components/ic-stepper/test/basic/ic-stepper-test-examples.d.ts +4 -4
  750. package/dist/types/components/ic-switch/ic-switch.d.ts +0 -4
  751. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +0 -4
  752. package/dist/types/components/ic-tab-group/ic-tab-group.d.ts +0 -5
  753. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +0 -6
  754. package/dist/types/components/ic-text-field/ic-text-field.d.ts +7 -12
  755. package/dist/types/components/ic-toast/ic-toast.d.ts +8 -1
  756. package/dist/types/components/ic-toast-region/ic-toast-region.d.ts +0 -5
  757. package/dist/types/components/ic-toggle-button/ic-toggle-button.d.ts +1 -1
  758. package/dist/types/components/ic-toggle-button-group/ic-toggle-button-group.types.d.ts +1 -1
  759. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +7 -0
  760. package/dist/types/components/ic-top-navigation/ic-top-navigation.d.ts +1 -1
  761. package/dist/types/components/ic-typography/ic-typography.d.ts +23 -1
  762. package/dist/types/components.d.ts +144 -508
  763. package/dist/types/utils/helpers.d.ts +1 -0
  764. package/dist/types/utils/types.d.ts +1 -1
  765. package/hydrate/index.js +642 -768
  766. package/package.json +2 -2
  767. package/vscode-data.json +52 -245
  768. package/dist/cjs/helpers-4af10d35.js.map +0 -1
  769. package/dist/cjs/ic-card.cjs.entry.js.map +0 -1
  770. package/dist/cjs/ic-data-entity.cjs.entry.js +0 -29
  771. package/dist/cjs/ic-data-entity.cjs.entry.js.map +0 -1
  772. package/dist/collection/components/ic-card/ic-card.js.map +0 -1
  773. package/dist/collection/components/ic-card/test/basic/ic-card.spec.js.map +0 -1
  774. package/dist/collection/components/ic-chip/ic-chip.types.js +0 -2
  775. package/dist/collection/components/ic-chip/ic-chip.types.js.map +0 -1
  776. package/dist/collection/components/ic-data-entity/ic-data-entity.js.map +0 -1
  777. package/dist/collection/components/ic-data-entity/test/basic/ic-data-entity.spec.js.map +0 -1
  778. package/dist/components/ic-alert2.js +0 -133
  779. package/dist/components/ic-alert2.js.map +0 -1
  780. package/dist/components/ic-card.js.map +0 -1
  781. package/dist/components/ic-data-entity.js +0 -53
  782. package/dist/components/ic-data-entity.js.map +0 -1
  783. package/dist/core/p-03434b02.entry.js +0 -2
  784. package/dist/core/p-03434b02.entry.js.map +0 -1
  785. package/dist/core/p-038a2ea1.entry.js +0 -2
  786. package/dist/core/p-038a2ea1.entry.js.map +0 -1
  787. package/dist/core/p-08781606.entry.js.map +0 -1
  788. package/dist/core/p-0a2cdf34.entry.js +0 -2
  789. package/dist/core/p-0a2cdf34.entry.js.map +0 -1
  790. package/dist/core/p-1145e33c.entry.js +0 -2
  791. package/dist/core/p-1145e33c.entry.js.map +0 -1
  792. package/dist/core/p-13f2c9dc.entry.js +0 -2
  793. package/dist/core/p-13f2c9dc.entry.js.map +0 -1
  794. package/dist/core/p-14c47aed.entry.js +0 -2
  795. package/dist/core/p-14c47aed.entry.js.map +0 -1
  796. package/dist/core/p-15138df1.entry.js +0 -2
  797. package/dist/core/p-15138df1.entry.js.map +0 -1
  798. package/dist/core/p-191d2571.entry.js +0 -2
  799. package/dist/core/p-191d2571.entry.js.map +0 -1
  800. package/dist/core/p-1e33ac04.entry.js +0 -2
  801. package/dist/core/p-1e33ac04.entry.js.map +0 -1
  802. package/dist/core/p-1eb6fc19.entry.js +0 -2
  803. package/dist/core/p-1eb6fc19.entry.js.map +0 -1
  804. package/dist/core/p-1ef00a47.entry.js.map +0 -1
  805. package/dist/core/p-1f4698e7.entry.js +0 -2
  806. package/dist/core/p-1f4698e7.entry.js.map +0 -1
  807. package/dist/core/p-24e6c926.entry.js +0 -2
  808. package/dist/core/p-24e6c926.entry.js.map +0 -1
  809. package/dist/core/p-261debaf.entry.js +0 -2
  810. package/dist/core/p-261debaf.entry.js.map +0 -1
  811. package/dist/core/p-277c3199.entry.js +0 -2
  812. package/dist/core/p-277c3199.entry.js.map +0 -1
  813. package/dist/core/p-2bc8a51d.entry.js +0 -2
  814. package/dist/core/p-2bc8a51d.entry.js.map +0 -1
  815. package/dist/core/p-36cd5d32.js.map +0 -1
  816. package/dist/core/p-37d152b9.entry.js +0 -2
  817. package/dist/core/p-37d152b9.entry.js.map +0 -1
  818. package/dist/core/p-3eda4e14.entry.js.map +0 -1
  819. package/dist/core/p-41b93fc2.entry.js +0 -2
  820. package/dist/core/p-41b93fc2.entry.js.map +0 -1
  821. package/dist/core/p-4a64ec92.entry.js +0 -2
  822. package/dist/core/p-4a64ec92.entry.js.map +0 -1
  823. package/dist/core/p-4a9eecd7.entry.js +0 -2
  824. package/dist/core/p-4a9eecd7.entry.js.map +0 -1
  825. package/dist/core/p-4ad38ad7.entry.js +0 -2
  826. package/dist/core/p-4ad38ad7.entry.js.map +0 -1
  827. package/dist/core/p-4ecf210f.entry.js +0 -2
  828. package/dist/core/p-4ecf210f.entry.js.map +0 -1
  829. package/dist/core/p-5128fc04.entry.js +0 -2
  830. package/dist/core/p-5128fc04.entry.js.map +0 -1
  831. package/dist/core/p-59732bc5.entry.js +0 -2
  832. package/dist/core/p-59732bc5.entry.js.map +0 -1
  833. package/dist/core/p-6a4a0752.entry.js +0 -2
  834. package/dist/core/p-6a4a0752.entry.js.map +0 -1
  835. package/dist/core/p-6e36ff34.entry.js +0 -2
  836. package/dist/core/p-6e36ff34.entry.js.map +0 -1
  837. package/dist/core/p-6fae7e1f.entry.js.map +0 -1
  838. package/dist/core/p-70a7cfa5.entry.js +0 -2
  839. package/dist/core/p-70a7cfa5.entry.js.map +0 -1
  840. package/dist/core/p-7438ab1f.entry.js.map +0 -1
  841. package/dist/core/p-7e5936a3.entry.js +0 -2
  842. package/dist/core/p-7e5936a3.entry.js.map +0 -1
  843. package/dist/core/p-80b87940.entry.js +0 -2
  844. package/dist/core/p-80b87940.entry.js.map +0 -1
  845. package/dist/core/p-85f6a2ef.entry.js +0 -2
  846. package/dist/core/p-85f6a2ef.entry.js.map +0 -1
  847. package/dist/core/p-8ce2dfd4.entry.js.map +0 -1
  848. package/dist/core/p-92b9b56a.entry.js.map +0 -1
  849. package/dist/core/p-98708868.entry.js +0 -2
  850. package/dist/core/p-98708868.entry.js.map +0 -1
  851. package/dist/core/p-a332f7d8.entry.js +0 -2
  852. package/dist/core/p-a332f7d8.entry.js.map +0 -1
  853. package/dist/core/p-a646c117.entry.js +0 -2
  854. package/dist/core/p-a646c117.entry.js.map +0 -1
  855. package/dist/core/p-a9a2987c.entry.js.map +0 -1
  856. package/dist/core/p-b47021d8.entry.js +0 -2
  857. package/dist/core/p-b47021d8.entry.js.map +0 -1
  858. package/dist/core/p-bb2f2048.entry.js +0 -2
  859. package/dist/core/p-bb2f2048.entry.js.map +0 -1
  860. package/dist/core/p-c1db024d.entry.js.map +0 -1
  861. package/dist/core/p-cf3a721c.entry.js +0 -2
  862. package/dist/core/p-cf3a721c.entry.js.map +0 -1
  863. package/dist/core/p-d19d50b6.entry.js +0 -2
  864. package/dist/core/p-d19d50b6.entry.js.map +0 -1
  865. package/dist/core/p-d69f353b.entry.js.map +0 -1
  866. package/dist/core/p-e735d773.entry.js +0 -2
  867. package/dist/core/p-e735d773.entry.js.map +0 -1
  868. package/dist/core/p-e928928a.entry.js +0 -2
  869. package/dist/core/p-e928928a.entry.js.map +0 -1
  870. package/dist/core/p-ea61b524.entry.js +0 -2
  871. package/dist/core/p-ea61b524.entry.js.map +0 -1
  872. package/dist/core/p-eb1d00a7.entry.js.map +0 -1
  873. package/dist/core/p-f13195ab.entry.js.map +0 -1
  874. package/dist/core/p-f861a72a.entry.js +0 -2
  875. package/dist/core/p-f861a72a.entry.js.map +0 -1
  876. package/dist/esm/helpers-354dbb8d.js.map +0 -1
  877. package/dist/esm/ic-card.entry.js.map +0 -1
  878. package/dist/esm/ic-data-entity.entry.js +0 -25
  879. package/dist/esm/ic-data-entity.entry.js.map +0 -1
  880. package/dist/types/components/ic-chip/ic-chip.types.d.ts +0 -1
  881. package/dist/types/components/ic-data-entity/ic-data-entity.d.ts +0 -20
  882. /package/dist/collection/components/{ic-card/ic-card.css → ic-card-vertical/ic-card-vertical.css} +0 -0
  883. /package/dist/core/{p-014342a2.entry.js.map → p-05d32a4f.entry.js.map} +0 -0
  884. /package/dist/core/{p-1d9fceb1.entry.js.map → p-086a6d4f.entry.js.map} +0 -0
  885. /package/dist/core/{p-5bba7e31.entry.js.map → p-2a6f01ad.entry.js.map} +0 -0
  886. /package/dist/core/{p-967d5546.entry.js.map → p-9857f6b0.entry.js.map} +0 -0
  887. /package/dist/core/{p-3b41756e.entry.js.map → p-f50462df.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ic-dialog.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-dialog/test/basic/ic-dialog.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { SpecPage, newSpecPage } from \"@stencil/core/testing\";\nimport { Dialog } from \"../../ic-dialog\";\nimport {\n waitForTimeout,\n testKeyboardEvent as keyboardEvent,\n} from \"../../../../testspec.setup\";\nimport { Button } from \"../../../ic-button/ic-button\";\nimport { TextField } from \"../../../ic-text-field/ic-text-field\";\nimport { AccordionGroup } from \"../../../ic-accordion-group/ic-accordion-group\";\nimport { Accordion } from \"../../../ic-accordion/ic-accordion\";\n\nconst DIALOG_DELAY_MS = 100;\n\nconst setupDialogMethods = (page: SpecPage) => {\n page.rootInstance.dialogEl.showModal = jest.fn(function mock(\n this: HTMLDialogElement\n ) {\n this.open = true;\n });\n\n page.rootInstance.dialogEl.show = jest.fn(function mock(\n this: HTMLDialogElement\n ) {\n this.open = true;\n });\n\n page.rootInstance.dialogEl.close = jest.fn(function mock(\n this: HTMLDialogElement\n ) {\n this.open = false;\n });\n};\n\ndescribe(\"ic-dialog component\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a label\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" label=\"Dialog label\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with no buttons\", async () => {\n const page = await newSpecPage({\n components: [Dialog],\n html: `<ic-dialog heading=\"Dialog heading\" buttons=\"false\">Dialog content</ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with slotted content\", async () => {\n const page = await newSpecPage({\n components: [Dialog, TextField, Button],\n html: `<ic-dialog heading=\"Dialog heading\">\n <ic-text-field label=\"What is your favourite coffee?\">\n </ic-text-field>\n <ic-button>Click Me</ic-button>\n </ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as medium size\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" size=\"medium\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as large size\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" size=\"large\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a single default button\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.buttonProps = [\n { label: \"Confirm\", onclick: \"this.icDialogConfirm()\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with two default buttons\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with three default buttons\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.buttonProps = [\n { label: \"Cancel\", onclick: \"this.hideDialog()\" },\n { label: \"Options\", onclick: \"alert('Options...')\" },\n { label: \"Confirm\", onclick: \"this.icDialogConfirm()\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with no more than three default buttons\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.buttonProps = [\n { label: \"Cancel\", onclick: \"this.hideDialog()\" },\n { label: \"Options\", onclick: \"alert('Options...')\" },\n { label: \"Confirm\", onclick: \"this.icDialogConfirm()\" },\n { label: \"Extra\", onclick: \"alert('Extra button')\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a destructive default button\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading test\" destructive=\"true\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.buttonProps = [\n { label: \"Confirm\", onclick: \"this.icDialogConfirm()\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with an alert\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" status=\"neutral\" alert-heading=\"Alert heading\" alert-message=\"Alert message\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should display with the open prop\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogOpened\", eventSpy);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n });\n\n it(\"should hide with the open prop\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogClosed\", eventSpy);\n\n dialog.open = false;\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should display with the showDialog method\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogOpened\", eventSpy);\n\n await dialog.showDialog();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n });\n\n it(\"should hide with the hideDialog method\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogClosed\", eventSpy);\n\n await dialog.hideDialog();\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should test icDialogCancelled event emitted\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogCancelled\", eventSpy);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[1].click();\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n });\n\n it(\"should test icDialogConfirmed event emitted\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogConfirmed\", eventSpy);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[2].click();\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n });\n\n it(\"should test cancelDialog method\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogCancelled\", eventSpy);\n\n await dialog.cancelDialog();\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should test confirmDialog method\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogConfirmed\", eventSpy);\n\n await dialog.confirmDialog();\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n });\n\n it(\"should render with slotted controls\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"><ic-button variant=\"primary\" onclick=\"alert('Confirmed!')\" slot=\"dialog-controls\">Confirm</ic-button></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should hide when the escape key is pressed\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.win.document.dispatchEvent(\n new KeyboardEvent(\"keydown\", keyboardEvent(\"Escape\"))\n );\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should hide when something besides the dialog is clicked\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.dispatchEvent(\n new window.window.MouseEvent(\"click\", {\n bubbles: true,\n cancelable: true,\n clientX: 10,\n clientY: 10,\n })\n );\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should not hide when close-on-backdrop-click false\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" close-on-backdrop-click=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.dispatchEvent(\n new window.window.MouseEvent(\"click\", {\n bubbles: true,\n cancelable: true,\n clientX: 10,\n clientY: 10,\n })\n );\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n });\n\n it(\"should hide when the close button is clicked\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.shadowRoot.querySelector(\"ic-button\").click();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should correctly pass onclick functions to a single default button\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.buttonProps = [{ label: \"Confirm\", onclick: \"this.hideDialog()\" }];\n\n await page.waitForChanges();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[1].click();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should trigger private focusNextInteractiveElement method when tab pressed\", async () => {\n const page = await newSpecPage({\n components: [Dialog, TextField, Button],\n html: `<ic-dialog heading=\"Dialog heading\">\n <ic-text-field label=\"What is your favourite coffee?\">\n </ic-text-field>\n <ic-button>Click Me</ic-button>\n </ic-dialog>`,\n });\n\n setupDialogMethods(page);\n const dialog = document.querySelector(\"ic-dialog\");\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n page.win.document.dispatchEvent(\n new KeyboardEvent(\"keydown\", keyboardEvent(\"Tab\"))\n );\n await page.waitForChanges();\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n });\n\n it(\"should render with an accordion group as first focussable element\", async () => {\n const page = await newSpecPage({\n components: [Dialog, AccordionGroup, Accordion, Button],\n html: `<ic-dialog heading=\"Dialog heading\">\n <ic-accordion-group group-title=\"Test heading\">\n <ic-accordion>\n <ic-typography variant=\"body\" >\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>\n <ic-button>Click Me</ic-button>\n </ic-dialog>`,\n });\n\n setupDialogMethods(page);\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.interactiveElementList[1].nodeName).toBe(\n \"IC-ACCORDION-GROUP\"\n );\n\n page.win.document.dispatchEvent(\n new KeyboardEvent(\"keydown\", keyboardEvent(\"Tab\"))\n );\n await page.waitForChanges();\n\n expect(page.rootInstance.focusedElementIndex).toBe(1);\n });\n\n it(\"should render with an accordion as first focussable element\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Accordion, Button],\n html: `<ic-dialog heading=\"Dialog heading\">\n <ic-accordion>\n <ic-typography variant=\"body\" >\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n <ic-button>Click Me</ic-button>\n </ic-dialog>`,\n });\n\n setupDialogMethods(page);\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.interactiveElementList[1].nodeName).toBe(\n \"IC-ACCORDION\"\n );\n\n page.win.document.dispatchEvent(\n new KeyboardEvent(\"keydown\", keyboardEvent(\"Tab\"))\n );\n await page.waitForChanges();\n\n expect(page.rootInstance.focusedElementIndex).toBe(1);\n });\n\n it(\"should correctly pass onclick functions to two default buttons\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.buttonProps = [\n { label: \"Close\", onclick: \"this.hideDialog()\" },\n { label: \"Confirm\", onclick: \"this.hideDialog()\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[1].click();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[2].click();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should correctly pass onclick functions to three default buttons\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.buttonProps = [\n { label: \"Cancel\", onclick: \"this.hideDialog()\" },\n { label: \"Options\", onclick: \"this.hideDialog()\" },\n { label: \"Confirm\", onclick: \"this.hideDialog()\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[1].click();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[2].click();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[3].click();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should render with the close button\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog with close button test\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render without the close button\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog hide close button test\" hide-close-button=\"true\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should call this.getInteractiveElements() when slot content changes\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\" disable-height-constraint=\"true\"></ic-dialog>',\n });\n\n const contentAreaSlot = document\n .querySelector(\"ic-dialog\")\n .shadowRoot.querySelector(\".content-area slot\");\n\n jest\n .spyOn(page.rootInstance, \"getInteractiveElements\")\n .mockImplementation();\n\n await page.rootInstance.refreshInteractiveElementsOnSlotChange();\n\n contentAreaSlot.dispatchEvent(new Event(\"slotchange\"));\n\n expect(page.rootInstance.getInteractiveElements).toBeCalledTimes(1);\n });\n\n it(\"should call dialog.show() disableHeightConstraint is set and showDialog is called\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\" disable-height-constraint=\"true\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.buttonProps = [\n { label: \"Cancel\", onclick: \"this.hideDialog()\" },\n { label: \"Options\", onclick: \"this.hideDialog()\" },\n { label: \"Confirm\", onclick: \"this.hideDialog()\" },\n ];\n\n await page.waitForChanges();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n await dialog.showDialog();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogEl.show).toBeCalled();\n });\n});\n\nit(\"should render as large size and disableWidthConstraint is set\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" size=\"large\" disable-width-constraint=\"true\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n});\n"]}
1
+ {"version":3,"file":"ic-dialog.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-dialog/test/basic/ic-dialog.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { SpecPage, newSpecPage } from \"@stencil/core/testing\";\nimport { Dialog } from \"../../ic-dialog\";\nimport {\n waitForTimeout,\n testKeyboardEvent as keyboardEvent,\n} from \"../../../../testspec.setup\";\nimport { Button } from \"../../../ic-button/ic-button\";\nimport { TextField } from \"../../../ic-text-field/ic-text-field\";\nimport { AccordionGroup } from \"../../../ic-accordion-group/ic-accordion-group\";\nimport { Accordion } from \"../../../ic-accordion/ic-accordion\";\n\nconst DIALOG_DELAY_MS = 100;\n\nconst setupDialogMethods = (page: SpecPage) => {\n page.rootInstance.dialogEl.showModal = jest.fn(function mock(\n this: HTMLDialogElement\n ) {\n this.open = true;\n });\n\n page.rootInstance.dialogEl.show = jest.fn(function mock(\n this: HTMLDialogElement\n ) {\n this.open = true;\n });\n\n page.rootInstance.dialogEl.close = jest.fn(function mock(\n this: HTMLDialogElement\n ) {\n this.open = false;\n });\n};\n\ndescribe(\"ic-dialog component\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a label\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" label=\"Dialog label\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with no buttons\", async () => {\n const page = await newSpecPage({\n components: [Dialog],\n html: `<ic-dialog heading=\"Dialog heading\" buttons=\"false\">Dialog content</ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with slotted content\", async () => {\n const page = await newSpecPage({\n components: [Dialog, TextField, Button],\n html: `<ic-dialog heading=\"Dialog heading\">\n <ic-text-field label=\"What is your favourite coffee?\">\n </ic-text-field>\n <ic-button>Click Me</ic-button>\n </ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as medium size\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" size=\"medium\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render as large size\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" size=\"large\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with two default buttons\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should display with the open prop\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogOpened\", eventSpy);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n });\n\n it(\"should hide with the open prop\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogClosed\", eventSpy);\n\n dialog.open = false;\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should test icDialogCancelled event emitted\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogCancelled\", eventSpy);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[1].click();\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n });\n\n it(\"should test icDialogConfirmed event emitted\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogConfirmed\", eventSpy);\n\n page.root.shadowRoot.querySelectorAll(\"ic-button\")[2].click();\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n });\n\n it(\"should test cancelDialog method\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogCancelled\", eventSpy);\n\n await dialog.cancelDialog();\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should test confirmDialog method\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n const eventSpy = jest.fn();\n page.win.addEventListener(\"icDialogConfirmed\", eventSpy);\n\n await dialog.confirmDialog();\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(eventSpy).toHaveBeenCalled();\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n });\n\n it(\"should render with slotted controls\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"><ic-button variant=\"primary\" onclick=\"alert('Confirmed!')\" slot=\"dialog-controls\">Confirm</ic-button></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should hide when the escape key is pressed\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.win.document.dispatchEvent(\n new KeyboardEvent(\"keydown\", keyboardEvent(\"Escape\"))\n );\n\n await page.waitForChanges();\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should hide when something besides the dialog is clicked\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.dispatchEvent(\n new window.window.MouseEvent(\"click\", {\n bubbles: true,\n cancelable: true,\n clientX: 10,\n clientY: 10,\n })\n );\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should not hide when close-on-backdrop-click false\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" close-on-backdrop-click=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.dispatchEvent(\n new window.window.MouseEvent(\"click\", {\n bubbles: true,\n cancelable: true,\n clientX: 10,\n clientY: 10,\n })\n );\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n });\n\n it(\"should hide when the close button is clicked\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n\n page.root.shadowRoot.querySelector(\"ic-button\").click();\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n });\n\n it(\"should trigger private focusNextInteractiveElement method when tab pressed\", async () => {\n const page = await newSpecPage({\n components: [Dialog, TextField, Button],\n html: `<ic-dialog heading=\"Dialog heading\">\n <ic-text-field label=\"What is your favourite coffee?\">\n </ic-text-field>\n <ic-button>Click Me</ic-button>\n </ic-dialog>`,\n });\n\n setupDialogMethods(page);\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n page.win.document.dispatchEvent(\n new KeyboardEvent(\"keydown\", keyboardEvent(\"Tab\"))\n );\n await page.waitForChanges();\n\n expect(page.rootInstance.dialogRendered).toBe(true);\n });\n\n it(\"should render with an accordion group as first focussable element\", async () => {\n const page = await newSpecPage({\n components: [Dialog, AccordionGroup, Accordion, Button],\n html: `<ic-dialog heading=\"Dialog heading\">\n <ic-accordion-group label=\"Test heading\">\n <ic-accordion>\n <ic-typography variant=\"body\" >\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n </ic-accordion-group>\n <ic-button>Click Me</ic-button>\n </ic-dialog>`,\n });\n\n setupDialogMethods(page);\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.interactiveElementList[1].nodeName).toBe(\n \"IC-ACCORDION-GROUP\"\n );\n\n page.win.document.dispatchEvent(\n new KeyboardEvent(\"keydown\", keyboardEvent(\"Tab\"))\n );\n await page.waitForChanges();\n\n expect(page.rootInstance.focusedElementIndex).toBe(1);\n });\n\n it(\"should render with an accordion as first focussable element\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Accordion, Button],\n html: `<ic-dialog heading=\"Dialog heading\">\n <ic-accordion>\n <ic-typography variant=\"body\" >\n This is an example of the main body text.\n </ic-typography>\n </ic-accordion>\n <ic-button>Click Me</ic-button>\n </ic-dialog>`,\n });\n\n setupDialogMethods(page);\n const dialog = document.querySelector(\"ic-dialog\");\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.interactiveElementList[1].nodeName).toBe(\n \"IC-ACCORDION\"\n );\n\n page.win.document.dispatchEvent(\n new KeyboardEvent(\"keydown\", keyboardEvent(\"Tab\"))\n );\n await page.waitForChanges();\n\n expect(page.rootInstance.focusedElementIndex).toBe(1);\n });\n\n it(\"should render with the close button\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog with close button test\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render without the close button\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog hide close button test\" hide-close-button=\"true\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should call this.getInteractiveElements() when slot content changes\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\" disable-height-constraint=\"true\"></ic-dialog>',\n });\n\n const contentAreaSlot = document\n .querySelector(\"ic-dialog\")\n .shadowRoot.querySelector(\".content-area slot\");\n\n jest\n .spyOn(page.rootInstance, \"getInteractiveElements\")\n .mockImplementation();\n\n await page.rootInstance.refreshInteractiveElementsOnSlotChange();\n\n contentAreaSlot.dispatchEvent(new Event(\"slotchange\"));\n\n expect(page.rootInstance.getInteractiveElements).toBeCalledTimes(1);\n });\n\n it(\"should call dialog.show() disableHeightConstraint is set and open is true\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: '<ic-dialog heading=\"Dialog heading\" disable-height-constraint=\"true\"></ic-dialog>',\n });\n\n setupDialogMethods(page);\n\n const dialog = document.querySelector(\"ic-dialog\");\n\n await page.waitForChanges();\n\n expect(page.rootInstance.dialogRendered).toBe(false);\n\n dialog.open = true;\n\n await page.waitForChanges();\n\n //delay for setTimeout in code\n await waitForTimeout(DIALOG_DELAY_MS);\n\n expect(page.rootInstance.dialogEl.show).toBeCalled();\n });\n});\n\nit(\"should render as large size and disableWidthConstraint is set\", async () => {\n const page = await newSpecPage({\n components: [Dialog, Button],\n html: `<ic-dialog heading=\"Dialog heading\" size=\"large\" disable-width-constraint=\"true\" buttons=\"false\"></ic-dialog>`,\n });\n\n setupDialogMethods(page);\n\n expect(page.root).toMatchSnapshot();\n});\n"]}
@@ -18,14 +18,14 @@
18
18
  border-radius: var(--ic-space-xxs);
19
19
  }
20
20
 
21
- :host(.right),
22
- :host(.right) .action-area {
21
+ :host(.ic-empty-state-right),
22
+ :host(.ic-empty-state-right) .action-area {
23
23
  align-items: flex-end;
24
24
  text-align: right;
25
25
  }
26
26
 
27
- :host(.center),
28
- :host(.center) .action-area {
27
+ :host(.ic-empty-state-center),
28
+ :host(.ic-empty-state-center) .action-area {
29
29
  align-items: center;
30
30
  text-align: center;
31
31
  }
@@ -22,7 +22,7 @@ export class EmptyState {
22
22
  };
23
23
  this.aligned = "left";
24
24
  this.body = undefined;
25
- this.bodyMaxLines = undefined;
25
+ this.maxLines = undefined;
26
26
  this.heading = undefined;
27
27
  this.imageSize = "default";
28
28
  this.subheading = undefined;
@@ -40,11 +40,11 @@ export class EmptyState {
40
40
  });
41
41
  }
42
42
  render() {
43
- const { aligned, body, bodyMaxLines, heading, imageSize, subheading } = this;
43
+ const { aligned, body, maxLines, heading, imageSize, subheading } = this;
44
44
  return (h(Host, { class: {
45
- [`${aligned}`]: true,
45
+ [`ic-empty-state-${aligned}`]: true,
46
46
  [`image-${imageSize}`]: isSlotUsed(this.el, "image"),
47
- } }, isSlotUsed(this.el, "image") && h("slot", { name: "image" }), h("div", null, h("slot", { name: "heading" }, h("ic-typography", { variant: "h4" }, heading)), h("slot", { name: "subheading" }, h("ic-typography", { variant: "subtitle-small" }, subheading)), h("slot", { name: "body" }, h("ic-typography", { maxLines: bodyMaxLines }, body))), isSlotUsed(this.el, "actions") && (h("div", { class: "action-area" }, h("slot", { name: "actions" })))));
47
+ } }, isSlotUsed(this.el, "image") && h("slot", { name: "image" }), h("div", null, h("slot", { name: "heading" }, h("ic-typography", { variant: "h4" }, heading)), h("slot", { name: "subheading" }, h("ic-typography", { variant: "subtitle-small" }, subheading)), h("slot", { name: "body" }, h("ic-typography", { maxLines: maxLines }, body))), isSlotUsed(this.el, "actions") && (h("div", { class: "action-area" }, h("slot", { name: "actions" })))));
48
48
  }
49
49
  static get is() { return "ic-empty-state"; }
50
50
  static get encapsulation() { return "shadow"; }
@@ -101,7 +101,7 @@ export class EmptyState {
101
101
  "attribute": "body",
102
102
  "reflect": false
103
103
  },
104
- "bodyMaxLines": {
104
+ "maxLines": {
105
105
  "type": "number",
106
106
  "mutable": false,
107
107
  "complexType": {
@@ -115,7 +115,7 @@ export class EmptyState {
115
115
  "tags": [],
116
116
  "text": "The number of lines of body text to display before truncating."
117
117
  },
118
- "attribute": "body-max-lines",
118
+ "attribute": "max-lines",
119
119
  "reflect": false
120
120
  },
121
121
  "heading": {
@@ -1 +1 @@
1
- {"version":3,"file":"ic-empty-state.js","sourceRoot":"","sources":["../../../src/components/ic-empty-state/ic-empty-state.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG/E,OAAO,EACL,UAAU,EACV,gCAAgC,EAChC,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAG7B;;;;;;GAMG;AAMH,MAAM,OAAO,UAAU;;QACb,yBAAoB,GAAqB,IAAI,CAAC;QAmD9C,yBAAoB,GAAG,CAAC,YAA8B,EAAQ,EAAE;YACtE,IACE,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,CACvD,IAAI,KAAK,WAAW;gBAClB,CAAC,CAAC,yBAAyB,CAAC,UAAU,EAAE,YAAY,EAAE;oBAClD,OAAO;oBACP,SAAS;iBACV,CAAC;gBACJ,CAAC,CAAC,KAAK,CACV,EACD,CAAC;gBACD,WAAW,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACH,CAAC,CAAC;uBAzDwC,MAAM;;;;yBAoBlB,SAAS;;;IAOvC,oBAAoB;;QAClB,MAAA,IAAI,CAAC,oBAAoB,0CAAE,UAAU,EAAE,CAAC;IAC1C,CAAC;IAED,gBAAgB;QACd,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC;YAC7B,gCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAC7C,aAAa,CACd,CAAC;QAEJ,IAAI,CAAC,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC5E,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;YACzC,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;IACL,CAAC;IAiBD,MAAM;QACJ,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GACnE,IAAI,CAAC;QACP,OAAO,CACL,EAAC,IAAI,IACH,KAAK,EAAE;gBACL,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,IAAI;gBACpB,CAAC,SAAS,SAAS,EAAE,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC;aACrD;YAEA,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,YAAM,IAAI,EAAC,OAAO,GAAQ;YAC3D;gBACE,YAAM,IAAI,EAAC,SAAS;oBAClB,qBAAe,OAAO,EAAC,IAAI,IAAE,OAAO,CAAiB,CAChD;gBACP,YAAM,IAAI,EAAC,YAAY;oBACrB,qBAAe,OAAO,EAAC,gBAAgB,IAAE,UAAU,CAAiB,CAC/D;gBACP,YAAM,IAAI,EAAC,MAAM;oBACf,qBAAe,QAAQ,EAAE,YAAY,IAAG,IAAI,CAAiB,CACxD,CACH;YACL,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CACjC,WAAK,KAAK,EAAC,aAAa;gBACtB,YAAM,IAAI,EAAC,SAAS,GAAG,CACnB,CACP,CACI,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { h, Component, Host, Prop, Element, forceUpdate } from \"@stencil/core\";\n\nimport { IcEmptyStateAlignment } from \"./ic-empty-state.types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n checkSlotInChildMutations,\n} from \"../../utils/helpers\";\nimport { IcSizes } from \"../../utils/types\";\n\n/**\n * @slot image - Content is placed at the top above all other content.\n * @slot actions - Content is placed at the bottom below all other content.\n * @slot heading - Content will be rendered in place of the heading prop.\n * @slot subheading - Content will be rendered in place of the subheading prop.\n * @slot body - Content will be rendered in place of the body prop.\n */\n@Component({\n tag: \"ic-empty-state\",\n styleUrl: \"ic-empty-state.css\",\n shadow: true,\n})\nexport class EmptyState {\n private hostMutationObserver: MutationObserver = null;\n\n @Element() el: HTMLIcEmptyStateElement;\n\n /**\n * The alignment of the empty state container.\n */\n @Prop() aligned?: IcEmptyStateAlignment = \"left\";\n\n /**\n * The body text rendered in the empty state container.\n */\n @Prop() body?: string;\n\n /**\n * The number of lines of body text to display before truncating.\n */\n @Prop() bodyMaxLines?: number;\n\n /**\n * The title rendered in the empty state container.\n */\n @Prop() heading?: string;\n\n /**\n * The size of the image or icon used in the image slot.\n */\n @Prop() imageSize?: IcSizes = \"default\";\n\n /**\n * The subtitle rendered in the empty state container.\n */\n @Prop() subheading?: string;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentDidLoad(): void {\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Empty State\"\n );\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n if (\n mutationList.some(({ type, addedNodes, removedNodes }) =>\n type === \"childList\"\n ? checkSlotInChildMutations(addedNodes, removedNodes, [\n \"image\",\n \"actions\",\n ])\n : false\n )\n ) {\n forceUpdate(this);\n }\n };\n\n render() {\n const { aligned, body, bodyMaxLines, heading, imageSize, subheading } =\n this;\n return (\n <Host\n class={{\n [`${aligned}`]: true,\n [`image-${imageSize}`]: isSlotUsed(this.el, \"image\"),\n }}\n >\n {isSlotUsed(this.el, \"image\") && <slot name=\"image\"></slot>}\n <div>\n <slot name=\"heading\">\n <ic-typography variant=\"h4\">{heading}</ic-typography>\n </slot>\n <slot name=\"subheading\">\n <ic-typography variant=\"subtitle-small\">{subheading}</ic-typography>\n </slot>\n <slot name=\"body\">\n <ic-typography maxLines={bodyMaxLines}>{body}</ic-typography>\n </slot>\n </div>\n {isSlotUsed(this.el, \"actions\") && (\n <div class=\"action-area\">\n <slot name=\"actions\" />\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-empty-state.js","sourceRoot":"","sources":["../../../src/components/ic-empty-state/ic-empty-state.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG/E,OAAO,EACL,UAAU,EACV,gCAAgC,EAChC,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAG7B;;;;;;GAMG;AAMH,MAAM,OAAO,UAAU;;QACb,yBAAoB,GAAqB,IAAI,CAAC;QAmD9C,yBAAoB,GAAG,CAAC,YAA8B,EAAQ,EAAE;YACtE,IACE,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,CACvD,IAAI,KAAK,WAAW;gBAClB,CAAC,CAAC,yBAAyB,CAAC,UAAU,EAAE,YAAY,EAAE;oBAClD,OAAO;oBACP,SAAS;iBACV,CAAC;gBACJ,CAAC,CAAC,KAAK,CACV,EACD,CAAC;gBACD,WAAW,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACH,CAAC,CAAC;uBAzDwC,MAAM;;;;yBAoBlB,SAAS;;;IAOvC,oBAAoB;;QAClB,MAAA,IAAI,CAAC,oBAAoB,0CAAE,UAAU,EAAE,CAAC;IAC1C,CAAC;IAED,gBAAgB;QACd,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC;YAC7B,gCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAC7C,aAAa,CACd,CAAC;QAEJ,IAAI,CAAC,oBAAoB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC5E,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;YACzC,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;IACL,CAAC;IAiBD,MAAM;QACJ,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QACzE,OAAO,CACL,EAAC,IAAI,IACH,KAAK,EAAE;gBACL,CAAC,kBAAkB,OAAO,EAAE,CAAC,EAAE,IAAI;gBACnC,CAAC,SAAS,SAAS,EAAE,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC;aACrD;YAEA,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,YAAM,IAAI,EAAC,OAAO,GAAQ;YAC3D;gBACE,YAAM,IAAI,EAAC,SAAS;oBAClB,qBAAe,OAAO,EAAC,IAAI,IAAE,OAAO,CAAiB,CAChD;gBACP,YAAM,IAAI,EAAC,YAAY;oBACrB,qBAAe,OAAO,EAAC,gBAAgB,IAAE,UAAU,CAAiB,CAC/D;gBACP,YAAM,IAAI,EAAC,MAAM;oBACf,qBAAe,QAAQ,EAAE,QAAQ,IAAG,IAAI,CAAiB,CACpD,CACH;YACL,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CACjC,WAAK,KAAK,EAAC,aAAa;gBACtB,YAAM,IAAI,EAAC,SAAS,GAAG,CACnB,CACP,CACI,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { h, Component, Host, Prop, Element, forceUpdate } from \"@stencil/core\";\n\nimport { IcEmptyStateAlignment } from \"./ic-empty-state.types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n checkSlotInChildMutations,\n} from \"../../utils/helpers\";\nimport { IcSizes } from \"../../utils/types\";\n\n/**\n * @slot image - Content is placed at the top above all other content.\n * @slot actions - Content is placed at the bottom below all other content.\n * @slot heading - Content will be rendered in place of the heading prop.\n * @slot subheading - Content will be rendered in place of the subheading prop.\n * @slot body - Content will be rendered in place of the body prop.\n */\n@Component({\n tag: \"ic-empty-state\",\n styleUrl: \"ic-empty-state.css\",\n shadow: true,\n})\nexport class EmptyState {\n private hostMutationObserver: MutationObserver = null;\n\n @Element() el: HTMLIcEmptyStateElement;\n\n /**\n * The alignment of the empty state container.\n */\n @Prop() aligned?: IcEmptyStateAlignment = \"left\";\n\n /**\n * The body text rendered in the empty state container.\n */\n @Prop() body?: string;\n\n /**\n * The number of lines of body text to display before truncating.\n */\n @Prop() maxLines?: number;\n\n /**\n * The title rendered in the empty state container.\n */\n @Prop() heading?: string;\n\n /**\n * The size of the image or icon used in the image slot.\n */\n @Prop() imageSize?: IcSizes = \"default\";\n\n /**\n * The subtitle rendered in the empty state container.\n */\n @Prop() subheading?: string;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentDidLoad(): void {\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Empty State\"\n );\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n if (\n mutationList.some(({ type, addedNodes, removedNodes }) =>\n type === \"childList\"\n ? checkSlotInChildMutations(addedNodes, removedNodes, [\n \"image\",\n \"actions\",\n ])\n : false\n )\n ) {\n forceUpdate(this);\n }\n };\n\n render() {\n const { aligned, body, maxLines, heading, imageSize, subheading } = this;\n return (\n <Host\n class={{\n [`ic-empty-state-${aligned}`]: true,\n [`image-${imageSize}`]: isSlotUsed(this.el, \"image\"),\n }}\n >\n {isSlotUsed(this.el, \"image\") && <slot name=\"image\"></slot>}\n <div>\n <slot name=\"heading\">\n <ic-typography variant=\"h4\">{heading}</ic-typography>\n </slot>\n <slot name=\"subheading\">\n <ic-typography variant=\"subtitle-small\">{subheading}</ic-typography>\n </slot>\n <slot name=\"body\">\n <ic-typography maxLines={maxLines}>{body}</ic-typography>\n </slot>\n </div>\n {isSlotUsed(this.el, \"actions\") && (\n <div class=\"action-area\">\n <slot name=\"actions\" />\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -447,31 +447,31 @@ video {
447
447
  --footer-compliance-padding: 1rem 0;
448
448
  }
449
449
 
450
- :host(.footer-sparse) {
450
+ :host(.ic-footer-sparse) {
451
451
  --footer-links-padding: 1.5rem 0;
452
- --footer-logo-margin-bottom: var(--ic-space-lg);
452
+ --footer-logo-margin-bottom: calc(var(--ic-space-md) + var(--ic-space-xxs));
453
453
  --footer-link-inner-flex-direction: row;
454
454
  }
455
455
 
456
- :host(.footer-small) {
456
+ :host(.ic-footer-small) {
457
457
  --footer-links-padding: 0 0;
458
458
  --footer-logo-margin-bottom: var(--ic-space-md);
459
459
  --footer-link-inner-flex-direction: column;
460
460
  }
461
461
 
462
- :host(.footer-light) {
462
+ :host(.ic-footer-foreground-light) {
463
463
  --footer-theme-secondary: var(--ic-theme-secondary);
464
464
  --footer-theme-tertiary: var(--ic-theme-tertiary);
465
465
  --footer-keyline: var(--ic-keyline-lighten);
466
466
  }
467
467
 
468
- :host(.footer-dark) {
468
+ :host(.ic-footer-foreground-dark) {
469
469
  --footer-theme-secondary: var(--ic-theme-secondary-light);
470
470
  --footer-theme-tertiary: var(--ic-theme-tertiary-light);
471
471
  --footer-keyline: var(--ic-keyline-darken);
472
472
  }
473
473
 
474
- :host(.footer-small.footer-ungrouped) {
474
+ :host(.ic-footer-small.ic-footer-ungrouped) {
475
475
  --footer-links-padding: var(--ic-space-md) 0 0 0;
476
476
  }
477
477
 
@@ -66,13 +66,13 @@ export class Footer {
66
66
  const { aligned, caption, copyright, description, groupLinks, foregroundColor, } = this;
67
67
  const small = this.isSmall();
68
68
  return (h(Host, { class: {
69
- footer: true,
70
- [`footer-${small ? "small" : "sparse"}`]: true,
71
- [`footer-${groupLinks ? "grouped" : "ungrouped"}`]: true,
72
- [`footer-${foregroundColor}`]: true,
69
+ ["ic-footer"]: true,
70
+ [`ic-footer-${small ? "small" : "sparse"}`]: true,
71
+ [`ic-footer-${groupLinks ? "grouped" : "ungrouped"}`]: true,
72
+ [`ic-footer-foreground-${foregroundColor}`]: true,
73
73
  // Slots will be able to infer their own color
74
- [IcThemeForegroundEnum.Dark]: foregroundColor === IcThemeForegroundEnum.Dark,
75
- [IcThemeForegroundEnum.Light]: foregroundColor === IcThemeForegroundEnum.Light,
74
+ [`ic-footer-${IcThemeForegroundEnum.Dark}`]: foregroundColor === IcThemeForegroundEnum.Dark,
75
+ [`ic-footer-${IcThemeForegroundEnum.Light}`]: foregroundColor === IcThemeForegroundEnum.Light,
76
76
  } }, h("footer", { ref: (footerEl) => (this.footerEl = footerEl) }, (isSlotUsed(this.el, "description") || description) && (h("div", { class: "footer-description" }, h("ic-section-container", { aligned: aligned, fullHeight: true }, h("div", { class: "footer-description-inner" }, h("ic-typography", { variant: "body" }, h("slot", { name: "description" }, description)))))), isSlotUsed(this.el, "link") && (h("div", { class: "footer-links" }, groupLinks && small ? (h("div", { class: "footer-links-inner", role: "list" }, h("slot", { name: "link" }))) : (h("ic-section-container", { fullHeight: true, aligned: aligned }, h("div", { class: "footer-links-inner", role: "list" }, h("slot", { name: "link" })))))), h("div", { class: "footer-compliance" }, h("ic-section-container", { aligned: aligned, fullHeight: true }, h("div", { class: "footer-compliance-inner" }, isSlotUsed(this.el, "logo") && (h("div", { class: "footer-logo" }, h("slot", { name: "logo" }))), (isSlotUsed(this.el, "caption") || caption) && (h("div", { class: "footer-caption" }, h("ic-typography", { variant: this.deviceSize <= IC_DEVICE_SIZES.M
77
77
  ? "caption"
78
78
  : "body" }, h("slot", { name: "caption" }, caption)))), copyright && (h("div", { class: {
@@ -1 +1 @@
1
- {"version":3,"file":"ic-footer.js","sourceRoot":"","sources":["../../../src/components/ic-footer/ic-footer.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Prop,\n State,\n h,\n Host,\n Listen,\n} from \"@stencil/core\";\nimport { IC_DEVICE_SIZES } from \"../../utils/constants\";\nimport {\n getCurrentDeviceSize,\n getThemeForegroundColor,\n checkResizeObserver,\n hasClassificationBanner,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport {\n IcAlignment,\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport { IcFooterBreakpoints } from \"./ic-footer.types\";\n\n/**\n * @slot description - Content will be rendered at the top of the footer.\n * @slot link - Content will be rendered between description and logos.\n * @slot logo - Content will be rendered underneath footer links.\n * @slot caption - Content will be rendered above Crown Copyright.\n */\n\n@Component({\n tag: \"ic-footer\",\n styleUrl: \"ic-footer.css\",\n shadow: true,\n})\nexport class Footer {\n private footerEl: HTMLElement;\n private resizeObserver: ResizeObserver = null;\n\n @Element() el: HTMLIcFooterElement;\n\n @State() deviceSize: number = IC_DEVICE_SIZES.XL;\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n\n /**\n * The alignment of the section containers used within the footer.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * The screen size breakpoint at which to switch to the small layout.\n */\n @Prop() breakpoint?: IcFooterBreakpoints = \"medium\";\n\n /**\n * The caption displayed at the bottom of the footer.\n */\n @Prop() caption: string;\n\n /**\n * If `true`, the footer will display the crown copyright at the bottom.\n */\n @Prop() copyright: boolean = true;\n\n /**\n * The description displayed at the top of the footer.\n */\n @Prop() description: string;\n\n /**\n * If `true`, the footer will be set up to handle link groups instead of standalone links.\n */\n @Prop() groupLinks?: boolean = false;\n\n /**\n * @internal Triggers on page resize and triggers style changes in footer links and link groups\n */\n @Event() footerResized: EventEmitter<void>;\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n private isSmall() {\n const bp = this.breakpoint;\n\n return bp === \"extra small\"\n ? this.deviceSize < IC_DEVICE_SIZES.XS\n : bp === \"small\"\n ? this.deviceSize < IC_DEVICE_SIZES.S\n : bp === \"medium\"\n ? this.deviceSize < IC_DEVICE_SIZES.M\n : bp === \"large\"\n ? this.deviceSize < IC_DEVICE_SIZES.L\n : bp === \"extra large\"\n ? this.deviceSize < IC_DEVICE_SIZES.XL\n : false;\n }\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n }\n this.footerResized.emit();\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.footerEl);\n };\n\n render() {\n const {\n aligned,\n caption,\n copyright,\n description,\n groupLinks,\n foregroundColor,\n } = this;\n const small = this.isSmall();\n\n return (\n <Host\n class={{\n footer: true,\n [`footer-${small ? \"small\" : \"sparse\"}`]: true,\n [`footer-${groupLinks ? \"grouped\" : \"ungrouped\"}`]: true,\n [`footer-${foregroundColor}`]: true,\n // Slots will be able to infer their own color\n [IcThemeForegroundEnum.Dark]:\n foregroundColor === IcThemeForegroundEnum.Dark,\n [IcThemeForegroundEnum.Light]:\n foregroundColor === IcThemeForegroundEnum.Light,\n }}\n >\n <footer ref={(footerEl) => (this.footerEl = footerEl)}>\n {/* Description */}\n {(isSlotUsed(this.el, \"description\") || description) && (\n <div class=\"footer-description\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-description-inner\">\n <ic-typography variant=\"body\">\n <slot name=\"description\">{description}</slot>\n </ic-typography>\n </div>\n </ic-section-container>\n </div>\n )}\n\n {/* Links */}\n {isSlotUsed(this.el, \"link\") && (\n <div class=\"footer-links\">\n {groupLinks && small ? (\n <div class=\"footer-links-inner\" role=\"list\">\n <slot name=\"link\" />\n </div>\n ) : (\n <ic-section-container fullHeight aligned={aligned}>\n <div class=\"footer-links-inner\" role=\"list\">\n <slot name=\"link\" />\n </div>\n </ic-section-container>\n )}\n </div>\n )}\n\n {/* Compliance (logo, caption, copyright) */}\n <div class=\"footer-compliance\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-compliance-inner\">\n {isSlotUsed(this.el, \"logo\") && (\n <div class=\"footer-logo\">\n {/* Logo */}\n <slot name=\"logo\" />\n </div>\n )}\n {(isSlotUsed(this.el, \"caption\") || caption) && (\n <div class=\"footer-caption\">\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption\"\n : \"body\"\n }\n >\n <slot name=\"caption\">{caption}</slot>\n </ic-typography>\n </div>\n )}\n {copyright && (\n <div\n class={{\n [\"footer-copyright\"]: true,\n [\"classification-spacing\"]: hasClassificationBanner(),\n }}\n >\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption-uppercase\"\n : \"label-uppercase\"\n }\n >\n &copy; Crown Copyright\n </ic-typography>\n </div>\n )}\n </div>\n </ic-section-container>\n </div>\n </footer>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-footer.js","sourceRoot":"","sources":["../../../src/components/ic-footer/ic-footer.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Prop,\n State,\n h,\n Host,\n Listen,\n} from \"@stencil/core\";\nimport { IC_DEVICE_SIZES } from \"../../utils/constants\";\nimport {\n getCurrentDeviceSize,\n getThemeForegroundColor,\n checkResizeObserver,\n hasClassificationBanner,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport {\n IcAlignment,\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport { IcFooterBreakpoints } from \"./ic-footer.types\";\n\n/**\n * @slot description - Content will be rendered at the top of the footer.\n * @slot link - Content will be rendered between description and logos.\n * @slot logo - Content will be rendered underneath footer links.\n * @slot caption - Content will be rendered above Crown Copyright.\n */\n\n@Component({\n tag: \"ic-footer\",\n styleUrl: \"ic-footer.css\",\n shadow: true,\n})\nexport class Footer {\n private footerEl: HTMLElement;\n private resizeObserver: ResizeObserver = null;\n\n @Element() el: HTMLIcFooterElement;\n\n @State() deviceSize: number = IC_DEVICE_SIZES.XL;\n @State() foregroundColor: IcThemeForeground = getThemeForegroundColor();\n\n /**\n * The alignment of the section containers used within the footer.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * The screen size breakpoint at which to switch to the small layout.\n */\n @Prop() breakpoint?: IcFooterBreakpoints = \"medium\";\n\n /**\n * The caption displayed at the bottom of the footer.\n */\n @Prop() caption: string;\n\n /**\n * If `true`, the footer will display the crown copyright at the bottom.\n */\n @Prop() copyright: boolean = true;\n\n /**\n * The description displayed at the top of the footer.\n */\n @Prop() description: string;\n\n /**\n * If `true`, the footer will be set up to handle link groups instead of standalone links.\n */\n @Prop() groupLinks?: boolean = false;\n\n /**\n * @internal Triggers on page resize and triggers style changes in footer links and link groups\n */\n @Event() footerResized: EventEmitter<void>;\n\n disconnectedCallback(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n }\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n }\n\n componentDidLoad(): void {\n checkResizeObserver(this.runResizeObserver);\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.foregroundColor = theme.mode;\n }\n\n private isSmall() {\n const bp = this.breakpoint;\n\n return bp === \"extra small\"\n ? this.deviceSize < IC_DEVICE_SIZES.XS\n : bp === \"small\"\n ? this.deviceSize < IC_DEVICE_SIZES.S\n : bp === \"medium\"\n ? this.deviceSize < IC_DEVICE_SIZES.M\n : bp === \"large\"\n ? this.deviceSize < IC_DEVICE_SIZES.L\n : bp === \"extra large\"\n ? this.deviceSize < IC_DEVICE_SIZES.XL\n : false;\n }\n\n private resizeObserverCallback = (currSize: number) => {\n if (currSize !== this.deviceSize) {\n this.deviceSize = currSize;\n }\n this.footerResized.emit();\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const currSize = getCurrentDeviceSize();\n this.resizeObserverCallback(currSize);\n });\n\n this.resizeObserver.observe(this.footerEl);\n };\n\n render() {\n const {\n aligned,\n caption,\n copyright,\n description,\n groupLinks,\n foregroundColor,\n } = this;\n const small = this.isSmall();\n\n return (\n <Host\n class={{\n [\"ic-footer\"]: true,\n [`ic-footer-${small ? \"small\" : \"sparse\"}`]: true,\n [`ic-footer-${groupLinks ? \"grouped\" : \"ungrouped\"}`]: true,\n [`ic-footer-foreground-${foregroundColor}`]: true,\n // Slots will be able to infer their own color\n [`ic-footer-${IcThemeForegroundEnum.Dark}`]:\n foregroundColor === IcThemeForegroundEnum.Dark,\n [`ic-footer-${IcThemeForegroundEnum.Light}`]:\n foregroundColor === IcThemeForegroundEnum.Light,\n }}\n >\n <footer ref={(footerEl) => (this.footerEl = footerEl)}>\n {/* Description */}\n {(isSlotUsed(this.el, \"description\") || description) && (\n <div class=\"footer-description\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-description-inner\">\n <ic-typography variant=\"body\">\n <slot name=\"description\">{description}</slot>\n </ic-typography>\n </div>\n </ic-section-container>\n </div>\n )}\n\n {/* Links */}\n {isSlotUsed(this.el, \"link\") && (\n <div class=\"footer-links\">\n {groupLinks && small ? (\n <div class=\"footer-links-inner\" role=\"list\">\n <slot name=\"link\" />\n </div>\n ) : (\n <ic-section-container fullHeight aligned={aligned}>\n <div class=\"footer-links-inner\" role=\"list\">\n <slot name=\"link\" />\n </div>\n </ic-section-container>\n )}\n </div>\n )}\n\n {/* Compliance (logo, caption, copyright) */}\n <div class=\"footer-compliance\">\n <ic-section-container aligned={aligned} fullHeight={true}>\n <div class=\"footer-compliance-inner\">\n {isSlotUsed(this.el, \"logo\") && (\n <div class=\"footer-logo\">\n {/* Logo */}\n <slot name=\"logo\" />\n </div>\n )}\n {(isSlotUsed(this.el, \"caption\") || caption) && (\n <div class=\"footer-caption\">\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption\"\n : \"body\"\n }\n >\n <slot name=\"caption\">{caption}</slot>\n </ic-typography>\n </div>\n )}\n {copyright && (\n <div\n class={{\n [\"footer-copyright\"]: true,\n [\"classification-spacing\"]: hasClassificationBanner(),\n }}\n >\n <ic-typography\n variant={\n this.deviceSize <= IC_DEVICE_SIZES.M\n ? \"caption-uppercase\"\n : \"label-uppercase\"\n }\n >\n &copy; Crown Copyright\n </ic-typography>\n </div>\n )}\n </div>\n </ic-section-container>\n </div>\n </footer>\n </Host>\n );\n }\n}\n"]}
@@ -54,7 +54,7 @@ describe("ic-footer", () => {
54
54
  components: [Footer],
55
55
  html: `
56
56
  <ic-footer description="This is a footer" caption="Made by ICDS">
57
- <ic-footer-link-group group-title="Links" slot="link">
57
+ <ic-footer-link-group label="Links" slot="link">
58
58
  <ic-footer-link href="/">Link</ic-footer-link>
59
59
  <ic-footer-link href="/">Link</ic-footer-link>
60
60
  </ic-footer-link-group>
@@ -1 +1 @@
1
- {"version":3,"file":"ic-footer.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-footer/test/basic/ic-footer.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { Typography } from \"../../../ic-typography/ic-typography\";\nimport { Footer } from \"../../ic-footer\";\nimport { DEVICE_SIZES } from \"../../../../utils/helpers\";\n\ndescribe(\"ic-footer\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-footer></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a description via the description slot\", async () => {\n const page = await newSpecPage({\n components: [Footer, Typography],\n html: `<ic-footer><ic-typography slot=\"description\">This is a footer</ic-typography></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a caption via the caption prop\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-footer description=\"This is a footer\" caption=\"Made by ICDS\"></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a caption via the caption slot\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-footer description=\"This is a footer\"><ic-typography slot=\"caption\">Made by ICDS</ic-typography></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render without the copyright text when the copyright prop is false\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-footer description=\"This is a footer\" copyright=false><ic-typography slot=\"caption\">Made by ICDS</ic-typography></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with links\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `\n <ic-footer description=\"This is a footer\" caption=\"Made by ICDS\">\n <ic-footer-link href=\"/\" slot=\"link\">Link</ic-footer-link>\n <ic-footer-link href=\"/\" slot=\"link\">Link</ic-footer-link>\n </ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with link groups\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `\n <ic-footer description=\"This is a footer\" caption=\"Made by ICDS\">\n <ic-footer-link-group group-title=\"Links\" slot=\"link\">\n <ic-footer-link href=\"/\">Link</ic-footer-link>\n <ic-footer-link href=\"/\">Link</ic-footer-link>\n </ic-footer-link-group>\n </ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with classification banner\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-classification-banner></ic-classification-banner><ic-footer></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot(\"footer-classification-banner\");\n });\n\n it(\"should update foreground colour when the theme is updated\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer'></ic-footer></div>\",\n });\n\n await page.rootInstance.themeChangeHandler({ detail: { mode: \"light\" } });\n\n expect(page.rootInstance.foregroundColor).toBe(\"light\");\n });\n\n it(\"should update when resized\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption'></ic-footer></div>\",\n });\n\n await page.rootInstance.runResizeObserver();\n await page.waitForChanges();\n\n await page.rootInstance.resizeObserverCallback(DEVICE_SIZES.XL);\n await page.waitForChanges();\n\n expect(\n page.root.shadowRoot\n .querySelector(\".footer-caption\")\n .firstElementChild.getAttribute(\"variant\")\n ).toBe(\"body\");\n\n await page.rootInstance.resizeObserverCallback(DEVICE_SIZES.XS);\n await page.waitForChanges();\n\n expect(\n page.root.shadowRoot\n .querySelector(\".footer-caption\")\n .firstElementChild.getAttribute(\"variant\")\n ).toBe(\"caption\");\n\n await page.rootInstance.disconnectedCallback();\n });\n\n it(\"should render with the correct small breakpoint at extra small device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='extra small'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-xs-breakpoint\");\n });\n\n it(\"should render with the correct small breakpoint at small device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='small'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-s-breakpoint\");\n });\n\n it(\"should render with the correct small breakpoint at medium device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='medium'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-m-breakpoint\");\n });\n\n it(\"should render with the correct small breakpoint at large device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='large'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-l-breakpoint\");\n });\n\n it(\"should render with the correct small breakpoint at extra large device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='extra large'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-xl-breakpoint\");\n });\n});\n"]}
1
+ {"version":3,"file":"ic-footer.spec.js","sourceRoot":"","sources":["../../../../../src/components/ic-footer/test/basic/ic-footer.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { newSpecPage } from \"@stencil/core/testing\";\nimport { Typography } from \"../../../ic-typography/ic-typography\";\nimport { Footer } from \"../../ic-footer\";\nimport { DEVICE_SIZES } from \"../../../../utils/helpers\";\n\ndescribe(\"ic-footer\", () => {\n it(\"should render\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-footer></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a description via the description slot\", async () => {\n const page = await newSpecPage({\n components: [Footer, Typography],\n html: `<ic-footer><ic-typography slot=\"description\">This is a footer</ic-typography></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a caption via the caption prop\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-footer description=\"This is a footer\" caption=\"Made by ICDS\"></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with a caption via the caption slot\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-footer description=\"This is a footer\"><ic-typography slot=\"caption\">Made by ICDS</ic-typography></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render without the copyright text when the copyright prop is false\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-footer description=\"This is a footer\" copyright=false><ic-typography slot=\"caption\">Made by ICDS</ic-typography></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with links\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `\n <ic-footer description=\"This is a footer\" caption=\"Made by ICDS\">\n <ic-footer-link href=\"/\" slot=\"link\">Link</ic-footer-link>\n <ic-footer-link href=\"/\" slot=\"link\">Link</ic-footer-link>\n </ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with link groups\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `\n <ic-footer description=\"This is a footer\" caption=\"Made by ICDS\">\n <ic-footer-link-group label=\"Links\" slot=\"link\">\n <ic-footer-link href=\"/\">Link</ic-footer-link>\n <ic-footer-link href=\"/\">Link</ic-footer-link>\n </ic-footer-link-group>\n </ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot();\n });\n\n it(\"should render with classification banner\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: `<ic-classification-banner></ic-classification-banner><ic-footer></ic-footer>`,\n });\n\n expect(page.root).toMatchSnapshot(\"footer-classification-banner\");\n });\n\n it(\"should update foreground colour when the theme is updated\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer'></ic-footer></div>\",\n });\n\n await page.rootInstance.themeChangeHandler({ detail: { mode: \"light\" } });\n\n expect(page.rootInstance.foregroundColor).toBe(\"light\");\n });\n\n it(\"should update when resized\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption'></ic-footer></div>\",\n });\n\n await page.rootInstance.runResizeObserver();\n await page.waitForChanges();\n\n await page.rootInstance.resizeObserverCallback(DEVICE_SIZES.XL);\n await page.waitForChanges();\n\n expect(\n page.root.shadowRoot\n .querySelector(\".footer-caption\")\n .firstElementChild.getAttribute(\"variant\")\n ).toBe(\"body\");\n\n await page.rootInstance.resizeObserverCallback(DEVICE_SIZES.XS);\n await page.waitForChanges();\n\n expect(\n page.root.shadowRoot\n .querySelector(\".footer-caption\")\n .firstElementChild.getAttribute(\"variant\")\n ).toBe(\"caption\");\n\n await page.rootInstance.disconnectedCallback();\n });\n\n it(\"should render with the correct small breakpoint at extra small device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='extra small'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-xs-breakpoint\");\n });\n\n it(\"should render with the correct small breakpoint at small device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='small'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-s-breakpoint\");\n });\n\n it(\"should render with the correct small breakpoint at medium device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='medium'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-m-breakpoint\");\n });\n\n it(\"should render with the correct small breakpoint at large device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='large'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-l-breakpoint\");\n });\n\n it(\"should render with the correct small breakpoint at extra large device size\", async () => {\n const page = await newSpecPage({\n components: [Footer],\n html: \"<div><ic-footer id='ic-footer' caption='caption' breakpoint='extra large'></ic-footer></div>\",\n });\n\n expect(page.root).not.toBeNull;\n\n expect(page.root).toMatchSnapshot(\"footer-xl-breakpoint\");\n });\n});\n"]}