@ukic/canary-web-components 2.0.0-canary.9 → 3.0.0-canary.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (821) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/{helpers-7a069459.js → helpers-33b42cd6.js} +95 -101
  3. package/dist/cjs/helpers-33b42cd6.js.map +1 -0
  4. package/dist/cjs/{helpers-f75cf7cf.js → helpers-6817cfbb.js} +116 -1
  5. package/dist/cjs/helpers-6817cfbb.js.map +1 -0
  6. package/dist/cjs/ic-accordion-group.cjs.entry.js +31 -9
  7. package/dist/cjs/ic-accordion-group.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-accordion.cjs.entry.js +7 -8
  9. package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-alert.cjs.entry.js +28 -10
  11. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-back-to-top.cjs.entry.js +17 -8
  13. package/dist/cjs/ic-back-to-top.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-badge.cjs.entry.js +67 -117
  15. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js +37 -11
  17. package/dist/cjs/ic-breadcrumb-group.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-breadcrumb.cjs.entry.js +8 -7
  19. package/dist/cjs/ic-breadcrumb.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-button_3.cjs.entry.js +122 -134
  21. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  22. package/dist/cjs/ic-card-horizontal.cjs.entry.js +131 -0
  23. package/dist/cjs/ic-card-horizontal.cjs.entry.js.map +1 -0
  24. package/dist/cjs/ic-card-vertical.cjs.entry.js +149 -0
  25. package/dist/cjs/ic-card-vertical.cjs.entry.js.map +1 -0
  26. package/dist/cjs/ic-checkbox-group.cjs.entry.js +27 -20
  27. package/dist/cjs/ic-checkbox-group.cjs.entry.js.map +1 -1
  28. package/dist/cjs/ic-checkbox.cjs.entry.js +45 -40
  29. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  30. package/dist/cjs/ic-chip.cjs.entry.js +48 -30
  31. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  32. package/dist/cjs/ic-classification-banner.cjs.entry.js +14 -5
  33. package/dist/cjs/ic-classification-banner.cjs.entry.js.map +1 -1
  34. package/dist/cjs/ic-data-list.cjs.entry.js +32 -0
  35. package/dist/cjs/ic-data-list.cjs.entry.js.map +1 -0
  36. package/dist/cjs/ic-data-row.cjs.entry.js +12 -12
  37. package/dist/cjs/ic-data-row.cjs.entry.js.map +1 -1
  38. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +57 -0
  39. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -0
  40. package/dist/cjs/ic-data-table.cjs.entry.js +807 -65
  41. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  42. package/dist/cjs/ic-date-input.cjs.entry.js +70 -33
  43. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  44. package/dist/cjs/ic-date-picker.cjs.entry.js +81 -55
  45. package/dist/cjs/ic-date-picker.cjs.entry.js.map +1 -1
  46. package/dist/cjs/ic-dialog.cjs.entry.js +27 -101
  47. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  48. package/dist/cjs/ic-divider.cjs.entry.js +3 -4
  49. package/dist/cjs/ic-divider.cjs.entry.js.map +1 -1
  50. package/dist/cjs/ic-empty-state_2.cjs.entry.js +323 -0
  51. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -0
  52. package/dist/cjs/ic-footer-link-group.cjs.entry.js +9 -10
  53. package/dist/cjs/ic-footer-link-group.cjs.entry.js.map +1 -1
  54. package/dist/cjs/ic-footer-link.cjs.entry.js +6 -8
  55. package/dist/cjs/ic-footer-link.cjs.entry.js.map +1 -1
  56. package/dist/cjs/ic-footer.cjs.entry.js +9 -10
  57. package/dist/cjs/ic-footer.cjs.entry.js.map +1 -1
  58. package/dist/cjs/ic-hero.cjs.entry.js +27 -12
  59. package/dist/cjs/ic-hero.cjs.entry.js.map +1 -1
  60. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js +6 -8
  61. package/dist/cjs/ic-horizontal-scroll.cjs.entry.js.map +1 -1
  62. package/dist/cjs/ic-input-component-container_4.cjs.entry.js +38 -32
  63. package/dist/cjs/ic-input-component-container_4.cjs.entry.js.map +1 -1
  64. package/dist/cjs/ic-link.cjs.entry.js +51 -24
  65. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  66. package/dist/cjs/ic-menu-group.cjs.entry.js +2 -3
  67. package/dist/cjs/ic-menu-group.cjs.entry.js.map +1 -1
  68. package/dist/cjs/ic-menu-item.cjs.entry.js +6 -13
  69. package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
  70. package/dist/cjs/ic-menu-with-multi.cjs.entry.js +186 -47
  71. package/dist/cjs/ic-menu-with-multi.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ic-menu.cjs.entry.js +16 -21
  73. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ic-navigation-button.cjs.entry.js +28 -8
  75. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  76. package/dist/cjs/ic-navigation-group.cjs.entry.js +23 -21
  77. package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
  78. package/dist/cjs/ic-navigation-item.cjs.entry.js +33 -38
  79. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  80. package/dist/cjs/ic-navigation-menu.cjs.entry.js +3 -4
  81. package/dist/cjs/ic-navigation-menu.cjs.entry.js.map +1 -1
  82. package/dist/cjs/ic-page-header.cjs.entry.js +10 -12
  83. package/dist/cjs/ic-page-header.cjs.entry.js.map +1 -1
  84. package/dist/cjs/ic-pagination_4.cjs.entry.js +227 -186
  85. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  86. package/dist/cjs/ic-popover-menu.cjs.entry.js +33 -33
  87. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  88. package/dist/cjs/ic-radio-group.cjs.entry.js +87 -53
  89. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  90. package/dist/cjs/ic-radio-option.cjs.entry.js +44 -53
  91. package/dist/cjs/ic-radio-option.cjs.entry.js.map +1 -1
  92. package/dist/cjs/ic-search-bar.cjs.entry.js +33 -53
  93. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  94. package/dist/cjs/ic-section-container.cjs.entry.js +1 -1
  95. package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
  96. package/dist/cjs/ic-select-with-multi.cjs.entry.js +15 -51
  97. package/dist/cjs/ic-select-with-multi.cjs.entry.js.map +1 -1
  98. package/dist/cjs/ic-side-navigation.cjs.entry.js +8 -9
  99. package/dist/cjs/ic-side-navigation.cjs.entry.js.map +1 -1
  100. package/dist/cjs/ic-skeleton.cjs.entry.js +18 -38
  101. package/dist/cjs/ic-skeleton.cjs.entry.js.map +1 -1
  102. package/dist/cjs/ic-status-tag.cjs.entry.js +7 -15
  103. package/dist/cjs/ic-status-tag.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ic-step.cjs.entry.js +41 -43
  105. package/dist/cjs/ic-step.cjs.entry.js.map +1 -1
  106. package/dist/cjs/ic-stepper.cjs.entry.js +55 -24
  107. package/dist/cjs/ic-stepper.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ic-switch.cjs.entry.js +7 -9
  109. package/dist/cjs/ic-switch.cjs.entry.js.map +1 -1
  110. package/dist/cjs/ic-tab-context.cjs.entry.js +90 -137
  111. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ic-tab-group.cjs.entry.js +25 -11
  113. package/dist/cjs/ic-tab-group.cjs.entry.js.map +1 -1
  114. package/dist/cjs/ic-tab-panel.cjs.entry.js +6 -13
  115. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ic-tab.cjs.entry.js +14 -14
  117. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  118. package/dist/cjs/ic-theme.cjs.entry.js +39 -25
  119. package/dist/cjs/ic-theme.cjs.entry.js.map +1 -1
  120. package/dist/cjs/ic-toast-region.cjs.entry.js +6 -7
  121. package/dist/cjs/ic-toast-region.cjs.entry.js.map +1 -1
  122. package/dist/cjs/ic-toast.cjs.entry.js +88 -35
  123. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  124. package/dist/cjs/ic-toggle-button-group.cjs.entry.js +17 -17
  125. package/dist/cjs/ic-toggle-button-group.cjs.entry.js.map +1 -1
  126. package/dist/cjs/ic-toggle-button.cjs.entry.js +15 -14
  127. package/dist/cjs/ic-toggle-button.cjs.entry.js.map +1 -1
  128. package/dist/cjs/ic-top-navigation.cjs.entry.js +62 -86
  129. package/dist/cjs/ic-top-navigation.cjs.entry.js.map +1 -1
  130. package/dist/cjs/ic-tree-item.cjs.entry.js +241 -0
  131. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -0
  132. package/dist/cjs/ic-tree-view.cjs.entry.js +203 -0
  133. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -0
  134. package/dist/cjs/ic-typography.cjs.entry.js +58 -20
  135. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  136. package/dist/cjs/index-4cf27b16.js +26 -14
  137. package/dist/cjs/loader.cjs.js +1 -1
  138. package/dist/collection/assets/arrow-dropdown.svg +3 -0
  139. package/dist/collection/collection-manifest.json +7 -3
  140. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.css +661 -0
  141. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js +373 -0
  142. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.js.map +1 -0
  143. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.types.js +2 -0
  144. package/dist/collection/components/ic-card-horizontal/ic-card-horizontal.types.js.map +1 -0
  145. package/dist/collection/components/ic-card-horizontal/test/basic/ic-card-horizontal.spec.js +130 -0
  146. package/dist/collection/components/ic-card-horizontal/test/basic/ic-card-horizontal.spec.js.map +1 -0
  147. package/dist/collection/components/ic-data-table/ic-data-table.css +174 -13
  148. package/dist/collection/components/ic-data-table/ic-data-table.js +1176 -90
  149. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  150. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  151. package/dist/collection/components/ic-data-table/story-data.js +798 -39
  152. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  153. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js +339 -3
  154. package/dist/collection/components/ic-data-table/test/basic/ic-data-table.spec.js.map +1 -1
  155. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.css +93 -0
  156. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js +160 -0
  157. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.js.map +1 -0
  158. package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js +11 -0
  159. package/dist/collection/components/ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.js.map +1 -0
  160. package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js +70 -0
  161. package/dist/collection/components/ic-data-table-title-bar/test/basic/ic-data-table-title-bar.spec.js.map +1 -0
  162. package/dist/collection/components/ic-date-input/ic-date-input.css +5 -5
  163. package/dist/collection/components/ic-date-input/ic-date-input.js +140 -33
  164. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  165. package/dist/collection/components/ic-date-input/test/basic/ic-date-input.spec.js +23 -21
  166. package/dist/collection/components/ic-date-input/test/basic/ic-date-input.spec.js.map +1 -1
  167. package/dist/collection/components/ic-date-picker/ic-date-picker.css +34 -32
  168. package/dist/collection/components/ic-date-picker/ic-date-picker.js +123 -56
  169. package/dist/collection/components/ic-date-picker/ic-date-picker.js.map +1 -1
  170. package/dist/collection/components/ic-date-picker/story-data.js +6 -1
  171. package/dist/collection/components/ic-date-picker/story-data.js.map +1 -1
  172. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker.spec.js +73 -5
  173. package/dist/collection/components/ic-date-picker/test/basic/ic-date-picker.spec.js.map +1 -1
  174. package/dist/collection/components/ic-menu-with-multi/ic-menu.css +30 -19
  175. package/dist/collection/components/ic-menu-with-multi/ic-menu.js +187 -69
  176. package/dist/collection/components/ic-menu-with-multi/ic-menu.js.map +1 -1
  177. package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js +229 -52
  178. package/dist/collection/components/ic-menu-with-multi/test/basic/ic-menu.spec.js.map +1 -1
  179. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.css +1 -1
  180. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +213 -166
  181. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  182. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js +2 -0
  183. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js.map +1 -0
  184. package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js +75 -12
  185. package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js.map +1 -1
  186. package/dist/collection/components/ic-select-with-multi/ic-select.css +21 -19
  187. package/dist/collection/components/ic-select-with-multi/ic-select.js +16 -145
  188. package/dist/collection/components/ic-select-with-multi/ic-select.js.map +1 -1
  189. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js +7 -7
  190. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.spec.js.map +1 -1
  191. package/dist/collection/components/ic-tree-item/ic-tree-item.css +172 -0
  192. package/dist/collection/components/ic-tree-item/ic-tree-item.js +592 -0
  193. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -0
  194. package/dist/collection/components/ic-tree-item/test/basic/ic-tree-item.spec.js +114 -0
  195. package/dist/collection/components/ic-tree-item/test/basic/ic-tree-item.spec.js.map +1 -0
  196. package/dist/collection/components/ic-tree-view/ic-tree-view.css +59 -0
  197. package/dist/collection/components/ic-tree-view/ic-tree-view.js +296 -0
  198. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -0
  199. package/dist/collection/components/ic-tree-view/test/basic/ic-tree-view.spec.js +85 -0
  200. package/dist/collection/components/ic-tree-view/test/basic/ic-tree-view.spec.js.map +1 -0
  201. package/dist/collection/utils/helpers.js +44 -1
  202. package/dist/collection/utils/helpers.js.map +1 -1
  203. package/dist/collection/utils/types.js.map +1 -1
  204. package/dist/components/helpers.js +84 -90
  205. package/dist/components/helpers.js.map +1 -1
  206. package/dist/components/helpers2.js +107 -1
  207. package/dist/components/helpers2.js.map +1 -1
  208. package/dist/components/ic-accordion-group.js +39 -13
  209. package/dist/components/ic-accordion-group.js.map +1 -1
  210. package/dist/components/ic-accordion.js +6 -6
  211. package/dist/components/ic-accordion.js.map +1 -1
  212. package/dist/components/ic-alert.js +132 -1
  213. package/dist/components/ic-alert.js.map +1 -1
  214. package/dist/components/ic-back-to-top.js +37 -8
  215. package/dist/components/ic-back-to-top.js.map +1 -1
  216. package/dist/components/ic-badge.js +75 -121
  217. package/dist/components/ic-badge.js.map +1 -1
  218. package/dist/components/ic-breadcrumb-group.js +42 -10
  219. package/dist/components/ic-breadcrumb-group.js.map +1 -1
  220. package/dist/components/ic-breadcrumb2.js +10 -7
  221. package/dist/components/ic-breadcrumb2.js.map +1 -1
  222. package/dist/components/ic-button2.js +69 -106
  223. package/dist/components/ic-button2.js.map +1 -1
  224. package/dist/components/ic-card-horizontal.d.ts +11 -0
  225. package/dist/components/ic-card-horizontal.js +167 -0
  226. package/dist/components/ic-card-horizontal.js.map +1 -0
  227. package/dist/components/ic-card-vertical.js +194 -0
  228. package/dist/components/ic-card-vertical.js.map +1 -0
  229. package/dist/components/ic-checkbox-group.js +31 -21
  230. package/dist/components/ic-checkbox-group.js.map +1 -1
  231. package/dist/components/ic-checkbox.js +52 -47
  232. package/dist/components/ic-checkbox.js.map +1 -1
  233. package/dist/components/ic-chip.js +56 -33
  234. package/dist/components/ic-chip.js.map +1 -1
  235. package/dist/components/ic-classification-banner.js +14 -5
  236. package/dist/components/ic-classification-banner.js.map +1 -1
  237. package/dist/components/ic-data-list.js +56 -0
  238. package/dist/components/ic-data-list.js.map +1 -0
  239. package/dist/components/ic-data-row.js +14 -13
  240. package/dist/components/ic-data-row.js.map +1 -1
  241. package/dist/components/ic-data-table-title-bar.d.ts +11 -0
  242. package/dist/components/ic-data-table-title-bar.js +136 -0
  243. package/dist/components/ic-data-table-title-bar.js.map +1 -0
  244. package/dist/components/ic-data-table.js +843 -72
  245. package/dist/components/ic-data-table.js.map +1 -1
  246. package/dist/components/ic-date-input2.js +79 -36
  247. package/dist/components/ic-date-input2.js.map +1 -1
  248. package/dist/components/ic-date-picker.js +87 -57
  249. package/dist/components/ic-date-picker.js.map +1 -1
  250. package/dist/components/ic-dialog.js +29 -115
  251. package/dist/components/ic-dialog.js.map +1 -1
  252. package/dist/components/ic-divider2.js +2 -3
  253. package/dist/components/ic-divider2.js.map +1 -1
  254. package/dist/components/ic-empty-state.js +1 -57
  255. package/dist/components/ic-empty-state.js.map +1 -1
  256. package/dist/components/ic-empty-state2.js +80 -0
  257. package/dist/components/ic-empty-state2.js.map +1 -0
  258. package/dist/components/ic-footer-link-group.js +10 -10
  259. package/dist/components/ic-footer-link-group.js.map +1 -1
  260. package/dist/components/ic-footer-link.js +13 -8
  261. package/dist/components/ic-footer-link.js.map +1 -1
  262. package/dist/components/ic-footer.js +9 -10
  263. package/dist/components/ic-footer.js.map +1 -1
  264. package/dist/components/ic-hero.js +28 -14
  265. package/dist/components/ic-hero.js.map +1 -1
  266. package/dist/components/ic-horizontal-scroll2.js +6 -8
  267. package/dist/components/ic-horizontal-scroll2.js.map +1 -1
  268. package/dist/components/ic-input-component-container2.js +25 -20
  269. package/dist/components/ic-input-component-container2.js.map +1 -1
  270. package/dist/components/ic-input-label2.js +9 -11
  271. package/dist/components/ic-input-label2.js.map +1 -1
  272. package/dist/components/ic-input-validation2.js +4 -5
  273. package/dist/components/ic-input-validation2.js.map +1 -1
  274. package/dist/components/ic-link2.js +54 -27
  275. package/dist/components/ic-link2.js.map +1 -1
  276. package/dist/components/ic-loading-indicator2.js +29 -23
  277. package/dist/components/ic-loading-indicator2.js.map +1 -1
  278. package/dist/components/ic-menu-group.js +2 -2
  279. package/dist/components/ic-menu-group.js.map +1 -1
  280. package/dist/components/ic-menu-item2.js +6 -12
  281. package/dist/components/ic-menu-item2.js.map +1 -1
  282. package/dist/components/ic-menu2.js +15 -20
  283. package/dist/components/ic-menu2.js.map +1 -1
  284. package/dist/components/ic-menu3.js +187 -49
  285. package/dist/components/ic-menu3.js.map +1 -1
  286. package/dist/components/ic-navigation-button.js +28 -8
  287. package/dist/components/ic-navigation-button.js.map +1 -1
  288. package/dist/components/ic-navigation-group.js +23 -20
  289. package/dist/components/ic-navigation-group.js.map +1 -1
  290. package/dist/components/ic-navigation-item.js +33 -37
  291. package/dist/components/ic-navigation-item.js.map +1 -1
  292. package/dist/components/ic-navigation-menu2.js +3 -3
  293. package/dist/components/ic-navigation-menu2.js.map +1 -1
  294. package/dist/components/ic-page-header.js +9 -11
  295. package/dist/components/ic-page-header.js.map +1 -1
  296. package/dist/components/ic-pagination-bar2.js +166 -147
  297. package/dist/components/ic-pagination-bar2.js.map +1 -1
  298. package/dist/components/ic-pagination-item2.js +22 -12
  299. package/dist/components/ic-pagination-item2.js.map +1 -1
  300. package/dist/components/ic-pagination2.js +50 -33
  301. package/dist/components/ic-pagination2.js.map +1 -1
  302. package/dist/components/ic-popover-menu.js +35 -33
  303. package/dist/components/ic-popover-menu.js.map +1 -1
  304. package/dist/components/ic-radio-group.js +88 -53
  305. package/dist/components/ic-radio-group.js.map +1 -1
  306. package/dist/components/ic-radio-option.js +47 -60
  307. package/dist/components/ic-radio-option.js.map +1 -1
  308. package/dist/components/ic-search-bar.js +31 -52
  309. package/dist/components/ic-search-bar.js.map +1 -1
  310. package/dist/components/ic-section-container2.js +1 -1
  311. package/dist/components/ic-section-container2.js.map +1 -1
  312. package/dist/components/ic-select-with-multi.js +15 -58
  313. package/dist/components/ic-select-with-multi.js.map +1 -1
  314. package/dist/components/ic-select2.js +60 -43
  315. package/dist/components/ic-select2.js.map +1 -1
  316. package/dist/components/ic-side-navigation.js +8 -9
  317. package/dist/components/ic-side-navigation.js.map +1 -1
  318. package/dist/components/ic-skeleton.js +20 -45
  319. package/dist/components/ic-skeleton.js.map +1 -1
  320. package/dist/components/ic-status-tag.js +7 -15
  321. package/dist/components/ic-status-tag.js.map +1 -1
  322. package/dist/components/ic-step.js +48 -48
  323. package/dist/components/ic-step.js.map +1 -1
  324. package/dist/components/ic-stepper.js +60 -23
  325. package/dist/components/ic-stepper.js.map +1 -1
  326. package/dist/components/ic-switch.js +7 -9
  327. package/dist/components/ic-switch.js.map +1 -1
  328. package/dist/components/ic-tab-context.js +95 -139
  329. package/dist/components/ic-tab-context.js.map +1 -1
  330. package/dist/components/ic-tab-group.js +27 -13
  331. package/dist/components/ic-tab-group.js.map +1 -1
  332. package/dist/components/ic-tab-panel.js +9 -16
  333. package/dist/components/ic-tab-panel.js.map +1 -1
  334. package/dist/components/ic-tab.js +16 -15
  335. package/dist/components/ic-tab.js.map +1 -1
  336. package/dist/components/ic-text-field2.js +105 -114
  337. package/dist/components/ic-text-field2.js.map +1 -1
  338. package/dist/components/ic-theme.js +45 -28
  339. package/dist/components/ic-theme.js.map +1 -1
  340. package/dist/components/ic-toast-region.js +7 -9
  341. package/dist/components/ic-toast-region.js.map +1 -1
  342. package/dist/components/ic-toast.js +93 -36
  343. package/dist/components/ic-toast.js.map +1 -1
  344. package/dist/components/ic-toggle-button-group.js +17 -17
  345. package/dist/components/ic-toggle-button-group.js.map +1 -1
  346. package/dist/components/ic-toggle-button.js +16 -14
  347. package/dist/components/ic-toggle-button.js.map +1 -1
  348. package/dist/components/ic-tooltip2.js +31 -9
  349. package/dist/components/ic-tooltip2.js.map +1 -1
  350. package/dist/components/ic-top-navigation.js +63 -87
  351. package/dist/components/ic-top-navigation.js.map +1 -1
  352. package/dist/components/ic-tree-item.d.ts +11 -0
  353. package/dist/components/ic-tree-item.js +286 -0
  354. package/dist/components/ic-tree-item.js.map +1 -0
  355. package/dist/components/ic-tree-view.d.ts +11 -0
  356. package/dist/components/ic-tree-view.js +237 -0
  357. package/dist/components/ic-tree-view.js.map +1 -0
  358. package/dist/components/ic-typography2.js +65 -22
  359. package/dist/components/ic-typography2.js.map +1 -1
  360. package/dist/core/core.css +101 -29
  361. package/dist/core/core.esm.js +1 -1
  362. package/dist/core/core.esm.js.map +1 -1
  363. package/dist/core/p-0894cab1.entry.js +2 -0
  364. package/dist/core/p-0894cab1.entry.js.map +1 -0
  365. package/dist/core/p-0ab10600.entry.js +2 -0
  366. package/dist/core/p-0ab10600.entry.js.map +1 -0
  367. package/dist/core/p-1109636a.entry.js +2 -0
  368. package/dist/core/p-1109636a.entry.js.map +1 -0
  369. package/dist/core/p-130a05cf.entry.js +2 -0
  370. package/dist/core/p-130a05cf.entry.js.map +1 -0
  371. package/dist/core/p-1e2aa8a6.entry.js +2 -0
  372. package/dist/core/p-1e2aa8a6.entry.js.map +1 -0
  373. package/dist/core/p-1fe35de1.entry.js +2 -0
  374. package/dist/core/p-1fe35de1.entry.js.map +1 -0
  375. package/dist/core/p-202bc922.entry.js +2 -0
  376. package/dist/core/p-202bc922.entry.js.map +1 -0
  377. package/dist/core/p-28323849.entry.js +2 -0
  378. package/dist/core/p-28323849.entry.js.map +1 -0
  379. package/dist/core/p-297e99cf.js +2 -0
  380. package/dist/core/p-297e99cf.js.map +1 -0
  381. package/dist/core/p-2e49fb22.entry.js +2 -0
  382. package/dist/core/p-2e49fb22.entry.js.map +1 -0
  383. package/dist/core/p-2ff4e283.entry.js +2 -0
  384. package/dist/core/p-2ff4e283.entry.js.map +1 -0
  385. package/dist/core/p-30b046b2.entry.js +2 -0
  386. package/dist/core/p-30b046b2.entry.js.map +1 -0
  387. package/dist/core/{p-f8cf2978.js → p-33dd24eb.js} +2 -2
  388. package/dist/core/p-3db785f0.entry.js +2 -0
  389. package/dist/core/p-3db785f0.entry.js.map +1 -0
  390. package/dist/core/p-3ef28704.entry.js +2 -0
  391. package/dist/core/p-3ef28704.entry.js.map +1 -0
  392. package/dist/core/p-42883e4c.entry.js +2 -0
  393. package/dist/core/p-42883e4c.entry.js.map +1 -0
  394. package/dist/core/p-42e0f3bd.entry.js +2 -0
  395. package/dist/core/p-42e0f3bd.entry.js.map +1 -0
  396. package/dist/core/p-44ee5375.entry.js +2 -0
  397. package/dist/core/p-44ee5375.entry.js.map +1 -0
  398. package/dist/core/p-486d8d43.entry.js +2 -0
  399. package/dist/core/p-486d8d43.entry.js.map +1 -0
  400. package/dist/core/p-4dcc37e7.entry.js +2 -0
  401. package/dist/core/p-4dcc37e7.entry.js.map +1 -0
  402. package/dist/core/p-4e28ef60.entry.js +2 -0
  403. package/dist/core/{p-b306cbc8.entry.js.map → p-4e28ef60.entry.js.map} +1 -1
  404. package/dist/core/p-50019ede.entry.js +2 -0
  405. package/dist/core/p-50019ede.entry.js.map +1 -0
  406. package/dist/core/p-505250cf.entry.js +2 -0
  407. package/dist/core/p-505250cf.entry.js.map +1 -0
  408. package/dist/core/p-53e00a8a.entry.js +2 -0
  409. package/dist/core/p-53e00a8a.entry.js.map +1 -0
  410. package/dist/core/p-59028160.entry.js +2 -0
  411. package/dist/core/p-59028160.entry.js.map +1 -0
  412. package/dist/core/p-5accf0bb.entry.js +2 -0
  413. package/dist/core/p-5accf0bb.entry.js.map +1 -0
  414. package/dist/core/p-5b7dfe57.entry.js +2 -0
  415. package/dist/core/p-5b7dfe57.entry.js.map +1 -0
  416. package/dist/core/p-5cfb5821.entry.js +2 -0
  417. package/dist/core/p-5cfb5821.entry.js.map +1 -0
  418. package/dist/core/p-603fea14.entry.js +2 -0
  419. package/dist/core/p-603fea14.entry.js.map +1 -0
  420. package/dist/core/p-64933069.entry.js +2 -0
  421. package/dist/core/p-64933069.entry.js.map +1 -0
  422. package/dist/core/p-6beffd0e.entry.js +2 -0
  423. package/dist/core/p-6beffd0e.entry.js.map +1 -0
  424. package/dist/core/p-77a32de5.entry.js +2 -0
  425. package/dist/core/p-77a32de5.entry.js.map +1 -0
  426. package/dist/core/p-7c268030.entry.js +2 -0
  427. package/dist/core/p-7c268030.entry.js.map +1 -0
  428. package/dist/core/p-7c78f6c6.entry.js +2 -0
  429. package/dist/core/p-7c78f6c6.entry.js.map +1 -0
  430. package/dist/core/p-7c80d79c.entry.js +2 -0
  431. package/dist/core/p-7c80d79c.entry.js.map +1 -0
  432. package/dist/core/{p-c2b5e7b1.entry.js → p-7e1603cc.entry.js} +2 -2
  433. package/dist/core/p-7e1603cc.entry.js.map +1 -0
  434. package/dist/core/p-897b8d16.entry.js +2 -0
  435. package/dist/core/p-897b8d16.entry.js.map +1 -0
  436. package/dist/core/p-8ca2e329.entry.js +2 -0
  437. package/dist/core/p-8ca2e329.entry.js.map +1 -0
  438. package/dist/core/p-8df49808.entry.js +2 -0
  439. package/dist/core/p-8df49808.entry.js.map +1 -0
  440. package/dist/core/p-8f12659d.entry.js +2 -0
  441. package/dist/core/p-8f12659d.entry.js.map +1 -0
  442. package/dist/core/p-903ee57e.entry.js +2 -0
  443. package/dist/core/p-903ee57e.entry.js.map +1 -0
  444. package/dist/core/p-92e3ccb9.entry.js +2 -0
  445. package/dist/core/p-92e3ccb9.entry.js.map +1 -0
  446. package/dist/core/p-9397b15b.js +2 -0
  447. package/dist/core/p-9397b15b.js.map +1 -0
  448. package/dist/core/p-9b54feca.entry.js +2 -0
  449. package/dist/core/p-9b54feca.entry.js.map +1 -0
  450. package/dist/core/{p-356b8a4c.entry.js → p-9f3cf053.entry.js} +2 -2
  451. package/dist/core/{p-356b8a4c.entry.js.map → p-9f3cf053.entry.js.map} +1 -1
  452. package/dist/core/p-a78cf2cb.entry.js +2 -0
  453. package/dist/core/p-a78cf2cb.entry.js.map +1 -0
  454. package/dist/core/p-a9151d0b.entry.js +2 -0
  455. package/dist/core/p-a9151d0b.entry.js.map +1 -0
  456. package/dist/core/p-acc76b80.entry.js +2 -0
  457. package/dist/core/p-acc76b80.entry.js.map +1 -0
  458. package/dist/core/p-aeb6016c.entry.js +2 -0
  459. package/dist/core/p-aeb6016c.entry.js.map +1 -0
  460. package/dist/core/p-b0751bd9.entry.js +2 -0
  461. package/dist/core/p-b0751bd9.entry.js.map +1 -0
  462. package/dist/core/{p-452985d9.entry.js → p-b40ecaef.entry.js} +2 -2
  463. package/dist/core/p-b40ecaef.entry.js.map +1 -0
  464. package/dist/core/p-bb1252fa.entry.js +2 -0
  465. package/dist/core/p-bb1252fa.entry.js.map +1 -0
  466. package/dist/core/p-c033e7d6.entry.js +2 -0
  467. package/dist/core/p-c033e7d6.entry.js.map +1 -0
  468. package/dist/core/p-c1698936.entry.js +2 -0
  469. package/dist/core/p-c1698936.entry.js.map +1 -0
  470. package/dist/core/p-c1e90c85.entry.js +2 -0
  471. package/dist/core/p-c1e90c85.entry.js.map +1 -0
  472. package/dist/core/p-cb63e656.entry.js +2 -0
  473. package/dist/core/p-cb63e656.entry.js.map +1 -0
  474. package/dist/core/p-d03374fc.entry.js +2 -0
  475. package/dist/core/p-d03374fc.entry.js.map +1 -0
  476. package/dist/core/p-d2e7a256.entry.js +2 -0
  477. package/dist/core/p-d2e7a256.entry.js.map +1 -0
  478. package/dist/core/p-d3c0bffb.entry.js +2 -0
  479. package/dist/core/p-d3c0bffb.entry.js.map +1 -0
  480. package/dist/core/p-d5ca3bcb.entry.js +2 -0
  481. package/dist/core/p-d5ca3bcb.entry.js.map +1 -0
  482. package/dist/core/p-da3e8c54.entry.js +2 -0
  483. package/dist/core/p-da3e8c54.entry.js.map +1 -0
  484. package/dist/core/p-e5d99316.entry.js +2 -0
  485. package/dist/core/p-e5d99316.entry.js.map +1 -0
  486. package/dist/core/p-eb65e556.entry.js +2 -0
  487. package/dist/core/p-eb65e556.entry.js.map +1 -0
  488. package/dist/core/p-ec53b435.entry.js +2 -0
  489. package/dist/core/p-ec53b435.entry.js.map +1 -0
  490. package/dist/core/p-ed4cde5a.entry.js +2 -0
  491. package/dist/core/p-ed4cde5a.entry.js.map +1 -0
  492. package/dist/core/{p-baf81f30.entry.js → p-f64abdff.entry.js} +2 -2
  493. package/dist/core/p-f64abdff.entry.js.map +1 -0
  494. package/dist/core/p-f9810621.entry.js +2 -0
  495. package/dist/core/p-f9810621.entry.js.map +1 -0
  496. package/dist/core/p-fb7b99dd.entry.js +2 -0
  497. package/dist/core/p-fb7b99dd.entry.js.map +1 -0
  498. package/dist/esm/core.js +1 -1
  499. package/dist/esm/{date-helpers-4f432e92.js → date-helpers-0e5e32a7.js} +2 -2
  500. package/dist/esm/{date-helpers-4f432e92.js.map → date-helpers-0e5e32a7.js.map} +1 -1
  501. package/dist/esm/{helpers-f328a7b6.js → helpers-5bd2012a.js} +108 -2
  502. package/dist/esm/helpers-5bd2012a.js.map +1 -0
  503. package/dist/esm/{helpers-7aa21b0a.js → helpers-dab8ddfe.js} +85 -91
  504. package/dist/esm/helpers-dab8ddfe.js.map +1 -0
  505. package/dist/esm/ic-accordion-group.entry.js +31 -9
  506. package/dist/esm/ic-accordion-group.entry.js.map +1 -1
  507. package/dist/esm/ic-accordion.entry.js +7 -8
  508. package/dist/esm/ic-accordion.entry.js.map +1 -1
  509. package/dist/esm/ic-alert.entry.js +27 -9
  510. package/dist/esm/ic-alert.entry.js.map +1 -1
  511. package/dist/esm/ic-back-to-top.entry.js +17 -8
  512. package/dist/esm/ic-back-to-top.entry.js.map +1 -1
  513. package/dist/esm/ic-badge.entry.js +67 -117
  514. package/dist/esm/ic-badge.entry.js.map +1 -1
  515. package/dist/esm/ic-breadcrumb-group.entry.js +37 -11
  516. package/dist/esm/ic-breadcrumb-group.entry.js.map +1 -1
  517. package/dist/esm/ic-breadcrumb.entry.js +8 -7
  518. package/dist/esm/ic-breadcrumb.entry.js.map +1 -1
  519. package/dist/esm/ic-button_3.entry.js +121 -133
  520. package/dist/esm/ic-button_3.entry.js.map +1 -1
  521. package/dist/esm/ic-card-horizontal.entry.js +127 -0
  522. package/dist/esm/ic-card-horizontal.entry.js.map +1 -0
  523. package/dist/esm/ic-card-vertical.entry.js +145 -0
  524. package/dist/esm/ic-card-vertical.entry.js.map +1 -0
  525. package/dist/esm/ic-checkbox-group.entry.js +27 -20
  526. package/dist/esm/ic-checkbox-group.entry.js.map +1 -1
  527. package/dist/esm/ic-checkbox.entry.js +45 -40
  528. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  529. package/dist/esm/ic-chip.entry.js +49 -31
  530. package/dist/esm/ic-chip.entry.js.map +1 -1
  531. package/dist/esm/ic-classification-banner.entry.js +14 -5
  532. package/dist/esm/ic-classification-banner.entry.js.map +1 -1
  533. package/dist/esm/ic-data-list.entry.js +28 -0
  534. package/dist/esm/ic-data-list.entry.js.map +1 -0
  535. package/dist/esm/ic-data-row.entry.js +12 -12
  536. package/dist/esm/ic-data-row.entry.js.map +1 -1
  537. package/dist/esm/ic-data-table-title-bar.entry.js +53 -0
  538. package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -0
  539. package/dist/esm/ic-data-table.entry.js +808 -66
  540. package/dist/esm/ic-data-table.entry.js.map +1 -1
  541. package/dist/esm/ic-date-input.entry.js +71 -34
  542. package/dist/esm/ic-date-input.entry.js.map +1 -1
  543. package/dist/esm/ic-date-picker.entry.js +82 -56
  544. package/dist/esm/ic-date-picker.entry.js.map +1 -1
  545. package/dist/esm/ic-dialog.entry.js +27 -101
  546. package/dist/esm/ic-dialog.entry.js.map +1 -1
  547. package/dist/esm/ic-divider.entry.js +2 -3
  548. package/dist/esm/ic-divider.entry.js.map +1 -1
  549. package/dist/esm/ic-empty-state_2.entry.js +318 -0
  550. package/dist/esm/ic-empty-state_2.entry.js.map +1 -0
  551. package/dist/esm/ic-footer-link-group.entry.js +9 -10
  552. package/dist/esm/ic-footer-link-group.entry.js.map +1 -1
  553. package/dist/esm/ic-footer-link.entry.js +6 -8
  554. package/dist/esm/ic-footer-link.entry.js.map +1 -1
  555. package/dist/esm/ic-footer.entry.js +9 -10
  556. package/dist/esm/ic-footer.entry.js.map +1 -1
  557. package/dist/esm/ic-hero.entry.js +28 -13
  558. package/dist/esm/ic-hero.entry.js.map +1 -1
  559. package/dist/esm/ic-horizontal-scroll.entry.js +6 -8
  560. package/dist/esm/ic-horizontal-scroll.entry.js.map +1 -1
  561. package/dist/esm/ic-input-component-container_4.entry.js +35 -29
  562. package/dist/esm/ic-input-component-container_4.entry.js.map +1 -1
  563. package/dist/esm/ic-link.entry.js +52 -25
  564. package/dist/esm/ic-link.entry.js.map +1 -1
  565. package/dist/esm/ic-menu-group.entry.js +2 -3
  566. package/dist/esm/ic-menu-group.entry.js.map +1 -1
  567. package/dist/esm/ic-menu-item.entry.js +6 -13
  568. package/dist/esm/ic-menu-item.entry.js.map +1 -1
  569. package/dist/esm/ic-menu-with-multi.entry.js +186 -47
  570. package/dist/esm/ic-menu-with-multi.entry.js.map +1 -1
  571. package/dist/esm/ic-menu.entry.js +16 -21
  572. package/dist/esm/ic-menu.entry.js.map +1 -1
  573. package/dist/esm/ic-navigation-button.entry.js +28 -8
  574. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  575. package/dist/esm/ic-navigation-group.entry.js +23 -21
  576. package/dist/esm/ic-navigation-group.entry.js.map +1 -1
  577. package/dist/esm/ic-navigation-item.entry.js +33 -38
  578. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  579. package/dist/esm/ic-navigation-menu.entry.js +3 -4
  580. package/dist/esm/ic-navigation-menu.entry.js.map +1 -1
  581. package/dist/esm/ic-page-header.entry.js +10 -12
  582. package/dist/esm/ic-page-header.entry.js.map +1 -1
  583. package/dist/esm/ic-pagination_4.entry.js +221 -180
  584. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  585. package/dist/esm/ic-popover-menu.entry.js +33 -33
  586. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  587. package/dist/esm/ic-radio-group.entry.js +87 -53
  588. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  589. package/dist/esm/ic-radio-option.entry.js +44 -53
  590. package/dist/esm/ic-radio-option.entry.js.map +1 -1
  591. package/dist/esm/ic-search-bar.entry.js +29 -49
  592. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  593. package/dist/esm/ic-section-container.entry.js +1 -1
  594. package/dist/esm/ic-section-container.entry.js.map +1 -1
  595. package/dist/esm/ic-select-with-multi.entry.js +14 -50
  596. package/dist/esm/ic-select-with-multi.entry.js.map +1 -1
  597. package/dist/esm/ic-side-navigation.entry.js +8 -9
  598. package/dist/esm/ic-side-navigation.entry.js.map +1 -1
  599. package/dist/esm/ic-skeleton.entry.js +18 -38
  600. package/dist/esm/ic-skeleton.entry.js.map +1 -1
  601. package/dist/esm/ic-status-tag.entry.js +7 -15
  602. package/dist/esm/ic-status-tag.entry.js.map +1 -1
  603. package/dist/esm/ic-step.entry.js +41 -43
  604. package/dist/esm/ic-step.entry.js.map +1 -1
  605. package/dist/esm/ic-stepper.entry.js +55 -24
  606. package/dist/esm/ic-stepper.entry.js.map +1 -1
  607. package/dist/esm/ic-switch.entry.js +7 -9
  608. package/dist/esm/ic-switch.entry.js.map +1 -1
  609. package/dist/esm/ic-tab-context.entry.js +90 -137
  610. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  611. package/dist/esm/ic-tab-group.entry.js +25 -11
  612. package/dist/esm/ic-tab-group.entry.js.map +1 -1
  613. package/dist/esm/ic-tab-panel.entry.js +6 -13
  614. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  615. package/dist/esm/ic-tab.entry.js +14 -14
  616. package/dist/esm/ic-tab.entry.js.map +1 -1
  617. package/dist/esm/ic-theme.entry.js +39 -25
  618. package/dist/esm/ic-theme.entry.js.map +1 -1
  619. package/dist/esm/ic-toast-region.entry.js +6 -7
  620. package/dist/esm/ic-toast-region.entry.js.map +1 -1
  621. package/dist/esm/ic-toast.entry.js +88 -35
  622. package/dist/esm/ic-toast.entry.js.map +1 -1
  623. package/dist/esm/ic-toggle-button-group.entry.js +17 -17
  624. package/dist/esm/ic-toggle-button-group.entry.js.map +1 -1
  625. package/dist/esm/ic-toggle-button.entry.js +15 -14
  626. package/dist/esm/ic-toggle-button.entry.js.map +1 -1
  627. package/dist/esm/ic-top-navigation.entry.js +62 -86
  628. package/dist/esm/ic-top-navigation.entry.js.map +1 -1
  629. package/dist/esm/ic-tree-item.entry.js +237 -0
  630. package/dist/esm/ic-tree-item.entry.js.map +1 -0
  631. package/dist/esm/ic-tree-view.entry.js +199 -0
  632. package/dist/esm/ic-tree-view.entry.js.map +1 -0
  633. package/dist/esm/ic-typography.entry.js +59 -21
  634. package/dist/esm/ic-typography.entry.js.map +1 -1
  635. package/dist/esm/index-93509377.js +26 -14
  636. package/dist/esm/loader.js +1 -1
  637. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.d.ts +71 -0
  638. package/dist/types/components/ic-card-horizontal/ic-card-horizontal.types.d.ts +1 -0
  639. package/dist/types/components/ic-data-table/ic-data-table.d.ts +178 -19
  640. package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +30 -0
  641. package/dist/types/components/ic-data-table/story-data.d.ts +251 -3
  642. package/dist/types/components/ic-data-table-title-bar/ic-data-table-title-bar.d.ts +36 -0
  643. package/dist/types/components/ic-date-input/ic-date-input.d.ts +17 -0
  644. package/dist/types/components/ic-date-picker/ic-date-picker.d.ts +14 -25
  645. package/dist/types/components/ic-menu-with-multi/ic-menu.d.ts +10 -4
  646. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +46 -22
  647. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.types.d.ts +4 -0
  648. package/dist/types/components/ic-select-with-multi/ic-select.d.ts +1 -31
  649. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +95 -0
  650. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +40 -0
  651. package/dist/types/components.d.ts +560 -117
  652. package/dist/types/interface.d.ts +1 -0
  653. package/dist/types/utils/helpers.d.ts +9 -0
  654. package/dist/types/utils/types.d.ts +24 -8
  655. package/hydrate/index.js +4461 -2588
  656. package/package.json +6 -6
  657. package/dist/cjs/helpers-7a069459.js.map +0 -1
  658. package/dist/cjs/helpers-f75cf7cf.js.map +0 -1
  659. package/dist/cjs/ic-card.cjs.entry.js +0 -126
  660. package/dist/cjs/ic-card.cjs.entry.js.map +0 -1
  661. package/dist/cjs/ic-data-entity.cjs.entry.js +0 -29
  662. package/dist/cjs/ic-data-entity.cjs.entry.js.map +0 -1
  663. package/dist/cjs/ic-empty-state.cjs.entry.js +0 -38
  664. package/dist/cjs/ic-empty-state.cjs.entry.js.map +0 -1
  665. package/dist/cjs/ic-pagination-bar.cjs.entry.js +0 -269
  666. package/dist/cjs/ic-pagination-bar.cjs.entry.js.map +0 -1
  667. package/dist/cjs/types-17dba796.js +0 -16
  668. package/dist/cjs/types-17dba796.js.map +0 -1
  669. package/dist/collection/components/ic-pagination/ic-pagination.types.js +0 -2
  670. package/dist/collection/components/ic-pagination/ic-pagination.types.js.map +0 -1
  671. package/dist/collection/components/ic-select-with-multi/test/a11y/ic-select.test.a11y.js +0 -146
  672. package/dist/collection/components/ic-select-with-multi/test/a11y/ic-select.test.a11y.js.map +0 -1
  673. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.e2e.js +0 -2040
  674. package/dist/collection/components/ic-select-with-multi/test/basic/ic-select.e2e.js.map +0 -1
  675. package/dist/components/ic-alert2.js +0 -117
  676. package/dist/components/ic-alert2.js.map +0 -1
  677. package/dist/components/ic-card.js +0 -171
  678. package/dist/components/ic-card.js.map +0 -1
  679. package/dist/components/ic-data-entity.js +0 -53
  680. package/dist/components/ic-data-entity.js.map +0 -1
  681. package/dist/components/types.js +0 -16
  682. package/dist/components/types.js.map +0 -1
  683. package/dist/core/p-06ae5bec.entry.js +0 -2
  684. package/dist/core/p-06ae5bec.entry.js.map +0 -1
  685. package/dist/core/p-0939ce92.entry.js +0 -2
  686. package/dist/core/p-0939ce92.entry.js.map +0 -1
  687. package/dist/core/p-16f67397.entry.js +0 -2
  688. package/dist/core/p-16f67397.entry.js.map +0 -1
  689. package/dist/core/p-1832f4b5.entry.js +0 -2
  690. package/dist/core/p-1832f4b5.entry.js.map +0 -1
  691. package/dist/core/p-1b7d426b.entry.js +0 -2
  692. package/dist/core/p-1b7d426b.entry.js.map +0 -1
  693. package/dist/core/p-1ce75941.entry.js +0 -2
  694. package/dist/core/p-1ce75941.entry.js.map +0 -1
  695. package/dist/core/p-2e2e0099.entry.js +0 -2
  696. package/dist/core/p-2e2e0099.entry.js.map +0 -1
  697. package/dist/core/p-33679c06.entry.js +0 -2
  698. package/dist/core/p-33679c06.entry.js.map +0 -1
  699. package/dist/core/p-36508aad.entry.js +0 -2
  700. package/dist/core/p-36508aad.entry.js.map +0 -1
  701. package/dist/core/p-3745da83.entry.js +0 -2
  702. package/dist/core/p-3745da83.entry.js.map +0 -1
  703. package/dist/core/p-3f2e77c3.entry.js +0 -2
  704. package/dist/core/p-3f2e77c3.entry.js.map +0 -1
  705. package/dist/core/p-452985d9.entry.js.map +0 -1
  706. package/dist/core/p-47ac6838.entry.js +0 -2
  707. package/dist/core/p-47ac6838.entry.js.map +0 -1
  708. package/dist/core/p-4f1ffa39.entry.js +0 -2
  709. package/dist/core/p-4f1ffa39.entry.js.map +0 -1
  710. package/dist/core/p-5759d771.entry.js +0 -2
  711. package/dist/core/p-5759d771.entry.js.map +0 -1
  712. package/dist/core/p-5e2e6c3b.entry.js +0 -2
  713. package/dist/core/p-5e2e6c3b.entry.js.map +0 -1
  714. package/dist/core/p-5fe96107.entry.js +0 -2
  715. package/dist/core/p-5fe96107.entry.js.map +0 -1
  716. package/dist/core/p-62e22508.entry.js +0 -2
  717. package/dist/core/p-62e22508.entry.js.map +0 -1
  718. package/dist/core/p-6690bc04.entry.js +0 -2
  719. package/dist/core/p-6690bc04.entry.js.map +0 -1
  720. package/dist/core/p-6c0e2ceb.entry.js +0 -2
  721. package/dist/core/p-6c0e2ceb.entry.js.map +0 -1
  722. package/dist/core/p-76915584.entry.js +0 -2
  723. package/dist/core/p-76915584.entry.js.map +0 -1
  724. package/dist/core/p-76d26018.entry.js +0 -2
  725. package/dist/core/p-76d26018.entry.js.map +0 -1
  726. package/dist/core/p-776671cf.entry.js +0 -2
  727. package/dist/core/p-776671cf.entry.js.map +0 -1
  728. package/dist/core/p-7cecf5d5.entry.js +0 -2
  729. package/dist/core/p-7cecf5d5.entry.js.map +0 -1
  730. package/dist/core/p-85609bdd.entry.js +0 -2
  731. package/dist/core/p-85609bdd.entry.js.map +0 -1
  732. package/dist/core/p-86012178.entry.js +0 -2
  733. package/dist/core/p-86012178.entry.js.map +0 -1
  734. package/dist/core/p-8a7e7d23.entry.js +0 -2
  735. package/dist/core/p-8a7e7d23.entry.js.map +0 -1
  736. package/dist/core/p-8c90110a.entry.js +0 -2
  737. package/dist/core/p-8c90110a.entry.js.map +0 -1
  738. package/dist/core/p-8ea47d42.entry.js +0 -2
  739. package/dist/core/p-8ea47d42.entry.js.map +0 -1
  740. package/dist/core/p-9777ebb1.entry.js +0 -2
  741. package/dist/core/p-9777ebb1.entry.js.map +0 -1
  742. package/dist/core/p-982a6e88.entry.js +0 -2
  743. package/dist/core/p-982a6e88.entry.js.map +0 -1
  744. package/dist/core/p-98448bdb.entry.js +0 -2
  745. package/dist/core/p-98448bdb.entry.js.map +0 -1
  746. package/dist/core/p-9d01a7ad.entry.js +0 -2
  747. package/dist/core/p-9d01a7ad.entry.js.map +0 -1
  748. package/dist/core/p-9d540656.entry.js +0 -2
  749. package/dist/core/p-9d540656.entry.js.map +0 -1
  750. package/dist/core/p-9e3178e8.entry.js +0 -2
  751. package/dist/core/p-9e3178e8.entry.js.map +0 -1
  752. package/dist/core/p-a0f9b259.entry.js +0 -2
  753. package/dist/core/p-a0f9b259.entry.js.map +0 -1
  754. package/dist/core/p-a42c2f37.entry.js +0 -2
  755. package/dist/core/p-a42c2f37.entry.js.map +0 -1
  756. package/dist/core/p-a6447b13.entry.js +0 -2
  757. package/dist/core/p-a6447b13.entry.js.map +0 -1
  758. package/dist/core/p-aabab75f.entry.js +0 -2
  759. package/dist/core/p-aabab75f.entry.js.map +0 -1
  760. package/dist/core/p-ae422058.entry.js +0 -2
  761. package/dist/core/p-ae422058.entry.js.map +0 -1
  762. package/dist/core/p-b2aa3d7c.entry.js +0 -2
  763. package/dist/core/p-b2aa3d7c.entry.js.map +0 -1
  764. package/dist/core/p-b306cbc8.entry.js +0 -2
  765. package/dist/core/p-baf81f30.entry.js.map +0 -1
  766. package/dist/core/p-c2b5e7b1.entry.js.map +0 -1
  767. package/dist/core/p-c7590421.entry.js +0 -2
  768. package/dist/core/p-c7590421.entry.js.map +0 -1
  769. package/dist/core/p-c7820c23.entry.js +0 -2
  770. package/dist/core/p-c7820c23.entry.js.map +0 -1
  771. package/dist/core/p-ca8cbd6a.entry.js +0 -2
  772. package/dist/core/p-ca8cbd6a.entry.js.map +0 -1
  773. package/dist/core/p-caf857de.entry.js +0 -2
  774. package/dist/core/p-caf857de.entry.js.map +0 -1
  775. package/dist/core/p-cc7bc438.entry.js +0 -2
  776. package/dist/core/p-cc7bc438.entry.js.map +0 -1
  777. package/dist/core/p-cd799087.js +0 -2
  778. package/dist/core/p-cd799087.js.map +0 -1
  779. package/dist/core/p-d32692e2.entry.js +0 -2
  780. package/dist/core/p-d32692e2.entry.js.map +0 -1
  781. package/dist/core/p-d35c7c18.js +0 -2
  782. package/dist/core/p-d35c7c18.js.map +0 -1
  783. package/dist/core/p-d3856ed3.entry.js +0 -2
  784. package/dist/core/p-d3856ed3.entry.js.map +0 -1
  785. package/dist/core/p-d4fdd8c1.entry.js +0 -2
  786. package/dist/core/p-d4fdd8c1.entry.js.map +0 -1
  787. package/dist/core/p-d5c99ec3.entry.js +0 -2
  788. package/dist/core/p-d5c99ec3.entry.js.map +0 -1
  789. package/dist/core/p-e189f1d0.entry.js +0 -2
  790. package/dist/core/p-e189f1d0.entry.js.map +0 -1
  791. package/dist/core/p-e473bbf8.entry.js +0 -2
  792. package/dist/core/p-e473bbf8.entry.js.map +0 -1
  793. package/dist/core/p-e74f1d09.entry.js +0 -2
  794. package/dist/core/p-e74f1d09.entry.js.map +0 -1
  795. package/dist/core/p-e79e0292.entry.js +0 -2
  796. package/dist/core/p-e79e0292.entry.js.map +0 -1
  797. package/dist/core/p-e84b0310.entry.js +0 -2
  798. package/dist/core/p-e84b0310.entry.js.map +0 -1
  799. package/dist/core/p-f55ad6ae.entry.js +0 -2
  800. package/dist/core/p-f55ad6ae.entry.js.map +0 -1
  801. package/dist/core/p-f91527a0.entry.js +0 -2
  802. package/dist/core/p-f91527a0.entry.js.map +0 -1
  803. package/dist/core/p-fbf4e9b7.entry.js +0 -2
  804. package/dist/core/p-fbf4e9b7.entry.js.map +0 -1
  805. package/dist/core/p-fd186591.js +0 -2
  806. package/dist/core/p-fd186591.js.map +0 -1
  807. package/dist/esm/helpers-7aa21b0a.js.map +0 -1
  808. package/dist/esm/helpers-f328a7b6.js.map +0 -1
  809. package/dist/esm/ic-card.entry.js +0 -122
  810. package/dist/esm/ic-card.entry.js.map +0 -1
  811. package/dist/esm/ic-data-entity.entry.js +0 -25
  812. package/dist/esm/ic-data-entity.entry.js.map +0 -1
  813. package/dist/esm/ic-empty-state.entry.js +0 -34
  814. package/dist/esm/ic-empty-state.entry.js.map +0 -1
  815. package/dist/esm/ic-pagination-bar.entry.js +0 -265
  816. package/dist/esm/ic-pagination-bar.entry.js.map +0 -1
  817. package/dist/esm/types-f605c21c.js +0 -16
  818. package/dist/esm/types-f605c21c.js.map +0 -1
  819. package/dist/types/components/ic-pagination/ic-pagination.types.d.ts +0 -6
  820. /package/dist/core/{p-f8cf2978.js.map → p-33dd24eb.js.map} +0 -0
  821. /package/dist/types/components/{ic-select-with-multi/test/a11y/ic-select.test.a11y.d.ts → ic-data-table-title-bar/test/a11y/ic-data-table-title-bar.test.a11y.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icStatusTagCss","StatusTag","constructor","hostRef","this","announced","label","undefined","size","status","theme","variant","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","render","h","Host","class","role"],"sources":["../web-components/dist/collection/components/ic-status-tag/ic-status-tag.css?tag=ic-status-tag&encapsulation=shadow","../web-components/dist/collection/components/ic-status-tag/ic-status-tag.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n.tag {\n padding: var(--ic-space-xxs) var(--ic-space-sm);\n font-size: 0.875rem;\n border-radius: var(--ic-space-md);\n display: inline-block;\n min-width: 2.5rem;\n text-align: center;\n\n --ic-typography-color: var(--ic-status-tag-text);\n}\n\n.small {\n padding: var(--ic-space-xxxs) var(--ic-space-sm);\n border-radius: calc(var(--ic-space-md) - var(--ic-space-xxxs));\n}\n\n.large {\n padding: var(--ic-space-xs) var(--ic-space-sm);\n border-radius: calc(var(--ic-space-md) + var(--ic-space-xxs));\n}\n\n.filled-neutral {\n background-color: var(--ic-status-tag-neutral);\n}\n\n.filled-success {\n background-color: var(--ic-status-tag-success);\n}\n\n.filled-warning {\n background-color: var(--ic-status-tag-warning);\n --ic-typography-color: var(--ic-status-tag-outlined-text);\n}\n\n.filled-danger {\n background-color: var(--ic-status-tag-error);\n}\n\n.outlined {\n padding: calc(var(--ic-space-xxxs) + var(--ic-space-1px))\n calc(var(--ic-space-sm) - var(--ic-space-1px));\n}\n\n.outlined.small {\n padding: var(--ic-space-1px) calc(var(--ic-space-sm) - var(--ic-space-1px));\n}\n\n.outlined.large {\n padding: calc(var(--ic-space-xs) - var(--ic-space-1px))\n calc(var(--ic-space-sm) - var(--ic-space-1px));\n}\n\n.outlined-neutral {\n background-color: var(--ic-status-tag-outlined-background-neutral);\n border: var(--ic-border-width) solid var(--ic-status-tag-outlined-neutral);\n --ic-typography-color: var(--ic-status-tag-outlined-text);\n}\n\n.outlined-success {\n background-color: var(--ic-status-tag-outlined-background-success);\n border: var(--ic-border-width) solid var(--ic-status-tag-outlined-success);\n --ic-typography-color: var(--ic-status-tag-outlined-text);\n}\n\n.outlined-warning {\n background-color: var(--ic-status-tag-outlined-background-warning);\n border: var(--ic-border-width) solid var(--ic-status-tag-outlined-warning);\n --ic-typography-color: var(--ic-status-tag-outlined-text);\n}\n\n.outlined-danger {\n background-color: var(--ic-status-tag-outlined-background-error);\n border: var(--ic-border-width) solid var(--ic-status-tag-outlined-error);\n --ic-typography-color: var(--ic-status-tag-outlined-text);\n}\n\n@media (forced-colors: active) {\n .tag {\n border: var(--ic-border-hc);\n -ms-high-contrast-adjust: none;\n forced-color-adjust: none;\n }\n}\n","import { Host, h } from \"@stencil/core\";\nimport { onComponentRequiredPropUndefined } from \"../../utils/helpers\";\nexport class StatusTag {\n constructor() {\n this.announced = false;\n this.label = undefined;\n this.size = \"medium\";\n this.status = \"neutral\";\n this.theme = \"inherit\";\n this.variant = \"filled\";\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([{ prop: this.label, propName: \"label\" }], \"Status Tag\");\n }\n render() {\n const { label, status, variant, size, announced, theme } = this;\n return (h(Host, { class: { [`ic-theme-${theme}`]: theme !== \"inherit\" }, role: announced ? \"status\" : null, \"aria-label\": \"Status\" }, h(\"strong\", { class: {\n [\"tag\"]: true,\n [`${variant}-${status}`]: true,\n [\"outlined\"]: variant === \"outlined\",\n [`${size}`]: true,\n } }, h(\"ic-typography\", { variant: \"label-uppercase\", \"apply-vertical-margins\": false }, h(\"span\", null, label)))));\n }\n static get is() { return \"ic-status-tag\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-status-tag.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-status-tag.css\"]\n };\n }\n static get properties() {\n return {\n \"announced\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, role='status' is added to the component and it will act as an 'aria-live' region.\\nScreen readers will announce changes to the `label`, but not the initial value.\"\n },\n \"attribute\": \"announced\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The content rendered within the status tag.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizes\",\n \"resolved\": \"\\\"large\\\" | \\\"medium\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the status tag component.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\n },\n \"status\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcStatusTagStatuses\",\n \"resolved\": \"\\\"danger\\\" | \\\"neutral\\\" | \\\"success\\\" | \\\"warning\\\"\",\n \"references\": {\n \"IcStatusTagStatuses\": {\n \"location\": \"import\",\n \"path\": \"./ic-status-tag.types\",\n \"id\": \"src/components/ic-status-tag/ic-status-tag.types.ts::IcStatusTagStatuses\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The colour of the status tag.\"\n },\n \"attribute\": \"status\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"neutral\\\"\"\n },\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"dark\\\" | \\\"light\\\" | \\\"inherit\\\"\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the theme color to the dark or light theme color. \\\"inherit\\\" will set the color based on the system settings or ic-theme component.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n },\n \"variant\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcEmphasisType\",\n \"resolved\": \"\\\"filled\\\" | \\\"outlined\\\"\",\n \"references\": {\n \"IcEmphasisType\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcEmphasisType\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The emphasis of the status tag.\"\n },\n \"attribute\": \"variant\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"filled\\\"\"\n }\n };\n }\n}\n//# sourceMappingURL=ic-status-tag.js.map\n"],"mappings":"sFAAA,MAAMA,EAAiB,o2I,MCEVC,EAAS,MAClB,WAAAC,CAAAC,G,UACIC,KAAKC,UAAY,MACjBD,KAAKE,MAAQC,UACbH,KAAKI,KAAO,SACZJ,KAAKK,OAAS,UACdL,KAAKM,MAAQ,UACbN,KAAKO,QAAU,Q,CAEnB,gBAAAC,GACIC,EAAiC,CAAC,CAAEC,KAAMV,KAAKE,MAAOS,SAAU,UAAY,a,CAEhF,MAAAC,GACI,MAAMV,MAAEA,EAAKG,OAAEA,EAAME,QAAEA,EAAOH,KAAEA,EAAIH,UAAEA,EAASK,MAAEA,GAAUN,KAC3D,OAAQa,EAAEC,EAAM,CAAEC,MAAO,CAAE,CAAC,YAAYT,KAAUA,IAAU,WAAaU,KAAMf,EAAY,SAAW,KAAM,aAAc,UAAYY,EAAE,SAAU,CAAEE,MAAO,CACnJ,CAAC,OAAQ,KACT,CAAC,GAAGR,KAAWF,KAAW,KAC1B,CAAC,YAAaE,IAAY,WAC1B,CAAC,GAAGH,KAAS,OACZS,EAAE,gBAAiB,CAAEN,QAAS,kBAAmB,yBAA0B,OAASM,EAAE,OAAQ,KAAMX,K"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as i,h as e,F as s,H as n,g as o}from"./p-8455d1bb.js";import{d as a,a as l,p as h,i as r,b as d}from"./p-297e99cf.js";const c=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24">\n <path d="M9 3 5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z"></path>\n</svg>`;const u=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" style="transform: rotate(-90deg);">\n <path d="M16.01 11H4v2h12.01v3L20 12l-3.99-4z"></path>\n</svg>`;const v=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" style="transform: rotate(90deg)">\n <path d="M16.01 11H4v2h12.01v3L20 12l-3.99-4z"></path>\n</svg>`;const g=':host{position:relative;display:inline-flex;max-height:100%;width:var(--table-width, 100%);height:100%;min-width:var(--table-min-width);max-width:var(--table-max-width)}tbody{vertical-align:top}.table-container{position:relative;height:calc(100% - var(--ic-space-xxxs));display:flex;flex-direction:column;width:100%}.cell-container{display:flex;min-height:1.5rem;overflow-y:hidden;height:var(--row-height)}.truncation-show-hide{overflow:visible;display:block}.cell-icon.truncation-show-hide{display:flex}.cell-container:not(.data-type-element,.truncation-show-hide){overflow-x:hidden}ic-loading-indicator{position:sticky;top:20px}ic-loading-indicator.ic-theme-dark{--inner-color:var(--ic-action-default-dark);--outer-color:var(--ic-action-neutral-light);--label-color:var(--ic-color-text-primary-dark)}ic-loading-indicator.ic-theme-dark.ic-loading-indicator-monochrome{--inner-color:var(--ic-action-light);--outer-color:var(--ic-action-neutral-dark);--label-color:var(--ic-color-text-inverse-dark)}.table-row-container{position:relative;height:100%;overflow:auto;transition:var(--ic-easing-transition-fast);overflow-anchor:none}:host([show-pagination="true"]) .table-row-container{height:calc(100% - 3.5625rem)}table{table-layout:var(--table-layout, "fixed");border-spacing:0;width:100%;height:var(--table-height, auto)}.table-row-container:focus{outline:none;box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast);z-index:1}:host([embedded="true"]) .table-row-container{border:var(--ic-border-light)}.column-header-inner-container{padding:var(--ic-space-xs);box-sizing:border-box}.column-header-sticky{position:sticky;top:0;z-index:1}.column-header-overlay{position:sticky;top:0;z-index:1;box-shadow:0 0.375rem var(--ic-space-xs) calc(var(--ic-space-xxs * -1))\n rgb(0 0 0 / 20%)}.row-header-sticky{position:sticky;left:0}.column-header,.table-row{box-sizing:border-box}.table-row-selected{background-color:var(--ic-table-row-selected) !important}.sort-button{margin-left:auto}.sort-button:hover{background-color:var(--ic-action-dark-bg-hover)}.sort-button:active{background-color:var(--ic-action-dark-bg-pressed)}.sort-button svg{color:var(--ic-architectural-black)}.sort-button-unsorted svg{color:var(--ic-color-text-tertiary)}.table-density-dense .column-header-inner-container,td.table-density-dense{padding:var(--ic-space-xxs) var(--ic-space-xs) !important}.text-dense{font-size:var(--ic-font-size-label)}.table-density-spacious .column-header-inner-container,td.table-density-spacious{padding:0.625rem var(--ic-space-xs) !important}.text-spacious{font-size:1.125rem}.column-header-text{font-weight:var(--ic-font-weight-bold)}.row-header,.column-header{text-align:left;padding:var(--ic-space-xs);background-color:var(--ic-architectural-40);border-right:var(--ic-border-light);border-bottom:var(--ic-border-light)}.column-header{padding:0;width:var(--column-width);min-width:var(--column-min-width, 4rem);max-width:var(--column-max-width)}.column-header:last-child{border-right:none}.scrollable .column-header:last-child{border-right:var(--ic-border-light) !important}:host([embedded="true"]) tr:last-child .table-cell,:host([embedded="true"]) tr:last-child .row-header{border-bottom:none}.column-header-alignment-left,.row-header-alignment-left,.cell-alignment-left{text-align:left !important;justify-content:start !important}.column-header-alignment-right,.row-header-alignment-right,.cell-alignment-right{text-align:right !important;justify-content:end !important}.cell-alignment-right.truncation-tooltip ic-tooltip ic-typography{padding-right:calc(var(--ic-space-xxs) + var(--ic-space-xs))}.cell-alignment-right.truncation-show-hide ic-typography{--ellipsis-padding-right:calc(var(--ic-space-xxs) + var(--ic-space-xs))}.column-header-alignment-center,.row-header-alignment-center,.cell-alignment-center{text-align:center !important;justify-content:center !important}.table-row:nth-child(even){background-color:var(--ic-architectural-20)}.table-cell{padding:var(--ic-space-xs);border-bottom:solid var(--ic-architectural-100) var(--ic-space-1px);overflow:hidden;box-sizing:border-box;max-width:var(--column-max-width);min-width:var(--column-min-width)}.table-cell.with-overflow{overflow:visible}.data-type-string,.data-type-address{text-align:left;vertical-align:top}.data-type-number,.data-type-date{text-align:right;justify-content:end;vertical-align:top}.cell-alignment-top{vertical-align:top;align-items:flex-start}.cell-alignment-middle{vertical-align:middle;align-items:center}.cell-alignment-bottom{vertical-align:bottom;align-items:flex-end}.cell-emphasis-low{--ic-typography-color:var(--ic-color-text-secondary)}.cell-emphasis-high{font-weight:var(--ic-font-weight-bold)}.pagination-container{background-color:var(--ic-architectural-40);border-top:var(--ic-border-light)}.screen-reader-sort-text,.table-caption{position:absolute;left:-100rem}.table-cell,.column-header,.row-header{word-wrap:break-word;white-space:pre-wrap}.loading-empty{padding:var(--ic-space-xl) var(--ic-space-xxl);margin-top:var(--ic-space-xl)}.updating-state{padding:0;border-bottom:var(--ic-border-light)}.updating-state-headers{border-bottom:none}.loading{position:absolute;left:calc(50% - 5.9741rem);opacity:0;transition:opacity var(--ic-transition-duration-slow)}.loading.show-background{background-color:var(--ic-architectural-white);border:var(--ic-border-light)}.loading.show{opacity:1}.icon,::slotted(svg){height:var(--ic-space-lg);width:var(--ic-space-lg);margin-right:var(--ic-space-xxs)}.column-header-alignment-right>.icon,.row-header-alignment-right>.icon,.cell-alignment-right>.icon,.column-header-alignment-right>::slotted(svg),.row-header-alignment-right>::slotted(svg),.cell-alignment-right>::slotted(svg){margin-right:auto}.column-header-alignment-center>ic-typography,.row-header-alignment-right>ic-typography,.cell-alignment-center>ic-typography{flex:1}.icon>svg{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block}.truncation-tooltip ic-typography{display:-webkit-box;-webkit-line-clamp:var(--ic-line-clamp, 0);-webkit-box-orient:vertical;overflow:hidden}.truncation-tooltip ic-typography,.truncation-show-hide ic-typography{white-space:normal}.ic-tooltip-overflow{overflow:hidden;width:100%}@media screen and (min-width: 577px){.column-header-inner-container{display:flex;align-items:center}}';const p=class{constructor(n){t(this,n);this.icRowHeightChange=i(this,"icRowHeightChange",7);this.icSortChange=i(this,"icSortChange",7);this.DENSITY_HEIGHT_MULTIPLIER={dense:.8,default:1,spacious:1.2};this.DENSITY_PADDING_HEIGHT_DIFF={dense:8,default:16,spacious:20};this.SORT_ICONS={unsorted:c,ascending:u,descending:v};this.hasLoadedForOneSecond=true;this.resizeObserver=null;this.SHOW_HIDE_STRING="show-hide";this.SHOW_HIDE_CSS_CLASS=`${this.SHOW_HIDE_STRING}-wrap`;this.TOOLTIP_STRING="tooltip";this.TOOLTIP=`ic-${this.TOOLTIP_STRING}`;this.TEXT_WRAP_STRING="text-wrap";this.TEXT_WRAP_CLASS=`.${this.TEXT_WRAP_STRING}`;this.dataUpdated=false;this.rowHeightSet=false;this.initialLoad=false;this.icPageChangeEvent=false;this.itemsPerPageChange=false;this.DATA_ROW_HEIGHT_STRING="data-row-height";this.ROW_HEIGHT_CSS_VARIABLE="--row-height";this.DEFAULT_LINE_HEIGHT=24;this.densityUpdate=false;this.truncationPatternUpdated=false;this.isNewDebounceDelaySet=false;this.updateSetRowHeight=t=>{const i=parseInt(getComputedStyle(document.documentElement).fontSize);if(t){const e=this.getCellContainer(t);const s=i*parseFloat(e.getAttribute(this.DATA_ROW_HEIGHT_STRING));if(t.scrollHeight>s){e.style.removeProperty(this.ROW_HEIGHT_CSS_VARIABLE)}}else{this.getTypographyElements().forEach((t=>{const e=this.getCellContainer(t);const s=i*parseFloat(e.getAttribute(this.DATA_ROW_HEIGHT_STRING));if(t.scrollHeight>s){e.style.removeProperty(this.ROW_HEIGHT_CSS_VARIABLE)}}))}};this.debounceDataTruncation=()=>{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(!i.classList.contains(this.TEXT_WRAP_STRING)){this.resizeObserver=new ResizeObserver(a((()=>{this.dataTruncation(t);if(!this.isNewDebounceDelaySet){this.setNewDebounceDelay(200)}}),(()=>this.debounceDelay)));this.resizeObserver.observe(t)}}))};this.setNewDebounceDelay=t=>{this.debounceDelay=t;this.isNewDebounceDelaySet=true};this.getLines=t=>Math.floor(t/this.DEFAULT_LINE_HEIGHT);this.truncate=(t,i,e)=>{if((t===null||t===void 0?void 0:t.scrollHeight)>(i===null||i===void 0?void 0:i.clientHeight)){if(!t.closest(this.TEXT_WRAP_CLASS)){if(this.truncationPattern===this.TOOLTIP_STRING){this.addTooltipTruncation(t,i,e)}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.addShowHideTruncation(i,t)}}}else{if(this.truncationPattern===this.TOOLTIP_STRING&&e){t.setAttribute("style",`--ic-line-clamp: 0`);i.appendChild(t);e.remove()}if(this.truncationPattern===this.SHOW_HIDE_STRING&&!l(t.getAttribute("max-lines"))){this.resetShowHideTruncation(t)}}};this.dataTruncation=t=>{const i=this.getTooltip(t);const e=this.getCellContainer(t);if((e===null||e===void 0?void 0:e.classList.contains("data-type-element"))||this.dataUpdated){return}if(this.truncationPattern===this.SHOW_HIDE_STRING&&t.shadowRoot.querySelector("button")){const i=t.shadowRoot.querySelector("button");if(i){const i=this.getTruncWrapper(t);if(this.getLines(i.scrollHeight)===+t.getAttribute("max-lines")){this.resetShowHideTruncation(t)}}}if(this.rowHeightSet&&this.truncationPattern===this.SHOW_HIDE_STRING){const i=this.getTruncWrapper(t);if(i&&e.clientHeight-this.DEFAULT_LINE_HEIGHT>i.scrollHeight){this.resetShowHideTruncation(t);return}if(t.scrollHeight>e.clientHeight){this.addShowHideTruncation(e,t);return}}if((t===null||t===void 0?void 0:t.scrollHeight)>0&&(e===null||e===void 0?void 0:e.clientHeight)>0&&(t===null||t===void 0?void 0:t.scrollHeight)===(e===null||e===void 0?void 0:e.clientHeight)){if(i){this.removeTooltip(e,t,i)}return}this.truncate(t,e,i)};this.removeTextWrap=()=>{this.getTypographyElements().forEach((t=>{const i=t.closest("td");if(i.classList.contains(this.TEXT_WRAP_STRING)){i.classList.remove(this.TEXT_WRAP_STRING)}}))};this.getCellContainer=t=>t.closest(".cell-container");this.deleteTextWrapDataKey=t=>Array.isArray(t)&&t.forEach((t=>t.textWrap&&delete t.textWrap));this.startLoadingTimer=()=>{this.hasLoadedForOneSecond=false;this.timerStarted=Date.now();setTimeout((()=>{this.hasLoadedForOneSecond=true;this.timerStarted=null}),this.minimumLoadingDisplayDuration)};this.isObject=t=>typeof t==="object";this.notDefaultDensity=()=>this.density!=="default";this.getCellContent=(t,i)=>{switch(i){case"element":return undefined;case"date":return(t instanceof Date?t:new Date(t)).toLocaleDateString();default:return t}};this.getCellAlignment=(t,i)=>{if(this.isObject(t)&&Object.keys(t).includes("cellAlignment")){return this.getObjectValue(this.getObjectValue(t,"cellAlignment"),i)}};this.getCellOptions=(t,i)=>{if(!(this.isObject(t)&&Object.keys(t).includes(i)))return;return this.getObjectValue(t,i)};this.createUpdatingIndicator=()=>{const{appearance:t,description:i,max:s,min:n,progress:o,monochrome:a}=this.updatingOptions||{};return e("th",{colSpan:this.columns.length,class:"updating-state"},e("ic-loading-indicator",{theme:t,monochrome:a,description:i||"Updating table data",fullWidth:true,max:s,min:n,progress:o,type:"linear",size:"small"}))};this.setRowHeight=t=>h(`${t*this.DENSITY_HEIGHT_MULTIPLIER[this.density]-this.DENSITY_PADDING_HEIGHT_DIFF[this.density]}px`);this.setTruncationClass=()=>{if(this.truncationPattern){return{[`truncation-${this.truncationPattern}`]:true}}return{}};this.getColumnWidth=t=>{let i={};if(t){if(typeof t==="string"){i=Object.assign(Object.assign({},i),{["--column-width"]:t})}if(typeof t==="object"&&!!Object.keys(t)){if(t===null||t===void 0?void 0:t.minWidth){i=Object.assign(Object.assign({},i),{["--column-min-width"]:t===null||t===void 0?void 0:t.minWidth})}if(t===null||t===void 0?void 0:t.maxWidth){i=Object.assign(Object.assign({},i),{["--column-max-width"]:t===null||t===void 0?void 0:t.maxWidth})}}}return i};this.getRowHeight=(t,i,e,s)=>{if((this.truncationPattern||t)&&!(i===null||i===void 0?void 0:i.textWrap)&&!e&&!this.getCellOptions(s,"textWrap")&&(i===null||i===void 0?void 0:i.dataType)!=="element"){return{[this.ROW_HEIGHT_CSS_VARIABLE]:this.setRowHeight(t)}}return{}};this.createCells=(t,i)=>{var n;const o=Object.values(t);const a=Object.keys(t);const l=this.getRowOptions(a,o);let h;let d;const c=a.indexOf("header");if(c>-1){h=this.getObjectValue(o[c],"rowAlignment");d=this.getObjectValue(o[c],"emphasis")}const u=(n=this.variableRowHeight)===null||n===void 0?void 0:n.call(this,Object.assign(Object.assign({},t),{index:i}));const v=u?u!=="auto"&&u:this.globalRowHeight!=="auto"&&this.globalRowHeight;return o.map(((t,n)=>{var o,c,u,g,p,f,m,b,w,y,x,O;const j=this.columns[n];const k=`${j===null||j===void 0?void 0:j.key}-${i}`;const $=this.isObject(t)&&Object.keys(t).includes("icon");const H=i=>this.getObjectValue(t,i);if(a[n]==="header"){return e("th",{scope:"row",colSpan:H("colspan"),class:{["row-header"]:true,[`row-header-alignment-${H("cellAlignment")}`]:!!H("cellAlignment"),["row-header-sticky"]:this.stickyRowHeaders}},H("title"))}if(a[n]!=="rowOptions"){return e("td",{class:{["table-cell"]:true,[`table-density-${this.density}`]:this.notDefaultDensity(),["with-overflow"]:(j===null||j===void 0?void 0:j.dataType)==="element"},style:Object.assign({},this.getColumnWidth(j.columnWidth))},e("div",{innerHTML:(j===null||j===void 0?void 0:j.dataType)==="element"&&!r(this.el,k)?t:null,class:Object.assign({"cell-container":(j===null||j===void 0?void 0:j.dataType)!=="element",[`cell-alignment-${((o=j===null||j===void 0?void 0:j.columnAlignment)===null||o===void 0?void 0:o.vertical)||((c=l===null||l===void 0?void 0:l.rowAlignment)===null||c===void 0?void 0:c.vertical)||h||this.getCellAlignment(t,"vertical")}`]:!!((u=j===null||j===void 0?void 0:j.columnAlignment)===null||u===void 0?void 0:u.vertical)||!!((g=l===null||l===void 0?void 0:l.rowAlignment)===null||g===void 0?void 0:g.vertical)||!!h||!!this.getCellAlignment(t,"vertical"),[`cell-alignment-${((p=j===null||j===void 0?void 0:j.columnAlignment)===null||p===void 0?void 0:p.horizontal)||((f=l===null||l===void 0?void 0:l.rowAlignment)===null||f===void 0?void 0:f.horizontal)||this.getCellAlignment(t,"horizontal")}`]:!!((m=j===null||j===void 0?void 0:j.columnAlignment)===null||m===void 0?void 0:m.horizontal)||!!((b=l===null||l===void 0?void 0:l.rowAlignment)===null||b===void 0?void 0:b.horizontal)||!!this.getCellAlignment(t,"horizontal"),[`data-type-${j===null||j===void 0?void 0:j.dataType}`]:true,[this.TEXT_WRAP_STRING]:(j===null||j===void 0?void 0:j.textWrap)||(l===null||l===void 0?void 0:l.textWrap)||!!this.getCellOptions(t,"textWrap"),["cell-icon"]:$||!!((w=j===null||j===void 0?void 0:j.icon)===null||w===void 0?void 0:w.icon)},this.setTruncationClass()),style:Object.assign(Object.assign({},this.getRowHeight(v,j,l===null||l===void 0?void 0:l.textWrap,t)),this.getColumnWidth(j===null||j===void 0?void 0:j.columnWidth)),"data-row-height":this.truncationPattern||v?this.setRowHeight(v):null},r(this.el,k)?e("slot",{name:k}):e(s,null,r(this.el,`${k}-icon`)?e("slot",{name:`${k}-icon`}):($||((y=j===null||j===void 0?void 0:j.icon)===null||y===void 0?void 0:y.onAllCells))&&(H("icon")||((x=j===null||j===void 0?void 0:j.icon)===null||x===void 0?void 0:x.icon))&&e("span",{class:"icon",innerHTML:H("icon")||((O=j===null||j===void 0?void 0:j.icon)===null||O===void 0?void 0:O.icon)}),(j===null||j===void 0?void 0:j.dataType)!=="element"&&!r(this.el,k)&&e("ic-typography",{variant:"body",class:{[`cell-emphasis-${this.isObject(t)&&H("emphasis")||(j===null||j===void 0?void 0:j.emphasis)||d}`]:this.isObject(t)&&!!H("emphasis")||!!(j===null||j===void 0?void 0:j.emphasis)||!!d,[`text-${this.density}`]:this.notDefaultDensity()}},this.isObject(t)&&(j===null||j===void 0?void 0:j.dataType)!=="date"?Object.keys(t).includes("href")?e("ic-link",{href:H("href")},H("data")):H("data"):this.getCellContent(t,j===null||j===void 0?void 0:j.dataType)))))}}))};this.createColumnHeaders=()=>this.columns.map((({cellAlignment:t,colspan:i,icon:s,key:n,title:o,columnWidth:a})=>e("th",{scope:"col",class:{["column-header"]:true,[`table-density-${this.density}`]:this.notDefaultDensity(),["updating-state-headers"]:this.updating&&!this.loading},style:Object.assign({},this.getColumnWidth(a)),colSpan:i},e("div",{class:{"column-header-inner-container":true,[`column-header-alignment-${t}`]:!!t}},r(this.el,`${n}-column-icon`)?e("slot",{name:`${n}-column-icon`}):s&&!s.hideOnHeader&&e("span",{class:"icon",innerHTML:s.icon}),e("ic-typography",{variant:"body",class:{["column-header-text"]:true,[`text-${this.density}`]:this.notDefaultDensity()}},o),this.sortable&&e("ic-button",{variant:"icon",id:`sort-button-${n}`,"aria-label":this.getSortButtonLabel(n),onClick:()=>this.sortRows(n),innerHTML:this.SORT_ICONS[this.sortedColumn===n?this.sortedColumnOrder:"unsorted"],class:{["sort-button"]:true,["sort-button-unsorted"]:this.sortedColumn!==n||this.sortedColumnOrder==="unsorted"}})))));this.onRowClick=t=>{this.selectedRow=this.selectedRow!==t&&!this.loading&&!this.updating&&t};this.createRows=()=>{const t=this.showPagination?this.data.slice(this.fromRow,this.toRow):this.data.slice();const i=t.map(((t,i)=>{const e=this.columns.map((({key:t},e)=>r(this.el,`${t}-${i}`)&&{key:t,index:e})).filter((t=>!!t));return e.length>0?d(t,e,""):t}));return i.sort(!this.sortable?undefined:this.getSortFunction()).map(((t,i)=>e("tr",{onClick:()=>this.onRowClick(t),class:{["table-row"]:true,["table-row-selected"]:this.selectedRow===t}},this.createCells(t,i))))};this.getObjectValue=(t,i)=>Object.values(t)[Object.keys(t).indexOf(i)];this.getSortButtonLabel=t=>{let i="";const e=t=>{const i=this.sortOptions.sortOrders;return i[(i.indexOf(t)+1)%i.length]};if(this.sortedColumn===t){const t=e(this.sortedColumnOrder);i=t!=="unsorted"?`Sort ${t}`:"Remove sort"}else{i=`Sort ${e("unsorted")}`}return i};this.getComparison=(t,i)=>{const e=t[this.sortedColumn];const s=i[this.sortedColumn];return this.columns.find((t=>t.key===this.sortedColumn)).dataType==="date"?new Date(e).valueOf()-new Date(s).valueOf():String(this.isObject(e)?Object.values(e)[0]:e).localeCompare(String(this.isObject(s)?Object.values(s)[0]:s),undefined,{numeric:true,sensitivity:"base"})};this.getSortFunction=()=>{switch(this.sortedColumnOrder){case"ascending":return(t,i)=>this.getComparison(t,i);case"descending":return(t,i)=>this.getComparison(i,t);default:return undefined}};this.sortRows=t=>{const i=this.el.shadowRoot.querySelector(`#sort-button-${t}`);const e=this.sortOptions.sortOrders;if(t!==this.sortedColumn){if(this.sortedColumn){const i=this.el.shadowRoot.querySelector(`#sort-button-${this.sortedColumn}`);i.setAttribute("aria-label",this.getSortButtonLabel(t))}this.sortedColumn=t;this.sortedColumnOrder="unsorted"}let s=e.indexOf(this.sortedColumnOrder)+1;if(s>e.length-1){s=0}this.sortedColumnOrder=e[s];i.setAttribute("aria-label",this.getSortButtonLabel(t));this.tableSorted=true;this.icSortChange.emit({columnName:t,sorted:this.sortedColumnOrder})};this.getTypographyElements=()=>Array.from(this.el.shadowRoot.querySelectorAll("ic-typography:not(.column-header-text)"));this.getTooltip=t=>t.closest(this.TOOLTIP);this.updateTruncationTooltip=(t=false)=>{this.getTypographyElements().forEach((i=>{const e=this.getTooltip(i);const s=this.getCellContainer(i);if(i.closest(this.TEXT_WRAP_CLASS)){this.removeTooltip(s,i,e);i.setAttribute("style",`--ic-line-clamp: 0`);return}this.regenerateTooltip(s,i,e,t)}))};this.updateScrollOffset=()=>{this.scrollOffset=this.el.shadowRoot.querySelector(".table-row-container").scrollTop};this.setTableDimensions=()=>{let t={};if(this.width){t=Object.assign(Object.assign({},t),{["--table-width"]:this.width})}if(this.height){t=Object.assign(Object.assign({},t),{["--table-height"]:this.height})}if(this.maxWidth){t=Object.assign(Object.assign({},t),{["--table-max-width"]:this.maxWidth})}if(this.minWidth){t=Object.assign(Object.assign({},t),{["--table-min-width"]:this.minWidth})}return t};this.fromRow=0;this.previousRowsPerPage=undefined;this.rowsPerPage=undefined;this.scrollable=false;this.scrollOffset=0;this.selectedRow=undefined;this.sortedColumn=undefined;this.sortedColumnOrder=undefined;this.toRow=undefined;this.currentRowHeight=undefined;this.debounceDelay=0;this.caption=undefined;this.columns=undefined;this.data=undefined;this.density="default";this.embedded=false;this.globalRowHeight="auto";this.height=undefined;this.hideColumnHeaders=false;this.loading=false;this.loadingOptions=undefined;this.maxWidth=undefined;this.minWidth=undefined;this.minimumLoadingDisplayDuration=1e3;this.paginationBarOptions={itemsPerPageOptions:[{label:"10",value:"10"},{label:"25",value:"25"},{label:"50",value:"50"}],rangeLabelType:"page",type:"simple",showItemsPerPageControl:true,showGoToPageControl:true,alignment:"right",appearance:"default",itemLabel:"Item",pageLabel:"Page",hideRangeLabel:false};this.showPagination=false;this.sortable=false;this.sortOptions={sortOrders:["unsorted","ascending","descending"],defaultColumn:""};this.stickyColumnHeaders=false;this.stickyRowHeaders=false;this.tableLayout="fixed";this.truncationPattern=undefined;this.updating=false;this.updatingOptions=undefined;this.variableRowHeight=undefined;this.width=undefined}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){var t;this.rowsPerPage=Number(this.paginationBarOptions.itemsPerPageOptions[0].value);this.previousRowsPerPage=this.rowsPerPage;this.toRow=this.rowsPerPage;this.sortedColumn=this.sortOptions.defaultColumn;this.sortedColumnOrder=this.sortOptions.sortOrders[0];this.loadingOptions=Object.assign(Object.assign({},this.loadingOptions),{showBackground:((t=this.data)===null||t===void 0?void 0:t.length)>0});this.initialLoad=true;this.previousItemsPerPage=this.rowsPerPage}componentDidLoad(){const t=this.el.shadowRoot.querySelector("table");const i=this.el.shadowRoot.querySelector(".table-container");if(this.dataUpdated){this.dataUpdated=false}if((t===null||t===void 0?void 0:t.clientHeight)>(i===null||i===void 0?void 0:i.clientHeight)||(t===null||t===void 0?void 0:t.clientWidth)>(i===null||i===void 0?void 0:i.clientWidth)){this.scrollable=true}if(this.loading){this.startLoadingTimer();this.showLoadingIndicator()}if(this.truncationPattern){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(!i.classList.contains(this.TEXT_WRAP_STRING)){this.dataTruncation(t)}}));this.debounceDataTruncation()}if(this.globalRowHeight!=="auto"){this.updateSetRowHeight()}}componentDidUpdate(){if(this.truncationPattern===this.SHOW_HIDE_STRING||this.truncationPattern===this.TOOLTIP_STRING){this.truncateUpdatedData()}}truncateUpdatedData(){if(this.dataUpdated){if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getTruncWrapper(t);const e=this.getCellContainer(t);if((e===null||e===void 0?void 0:e.clientHeight)-this.DEFAULT_LINE_HEIGHT>=(i===null||i===void 0?void 0:i.scrollHeight)){this.resetShowHideTruncation(t);return}setTimeout((()=>{if((t===null||t===void 0?void 0:t.scrollHeight)>(e===null||e===void 0?void 0:e.clientHeight)){this.addShowHideTruncation(e,t)}}),150)}))}if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}this.dataUpdated=false}if(this.tableSorted){if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(!i.classList.contains(this.TEXT_WRAP_STRING)){this.createShowHideTruncation(t,i)}else{t.resetTruncation().then((()=>{i.removeAttribute("style")}))}}))}this.tableSorted=false}if(this.rowHeightSet){const t=parseInt(getComputedStyle(document.documentElement).fontSize);const i=this.globalRowHeight==="auto";this.getTypographyElements().forEach((e=>{var s;const n=this.getCellContainer(e);const o=this.getTooltip(e);if(i){n.style.height=null;if(this.truncationPattern===this.TOOLTIP_STRING){this.removeTooltip(n,e,o);e.setAttribute("style",`--ic-line-clamp: 0`)}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.resetShowHideTruncation(e)}return}const a=t*parseFloat(n.getAttribute(this.DATA_ROW_HEIGHT_STRING));if(!((s=n===null||n===void 0?void 0:n.style)===null||s===void 0?void 0:s.height)&&a>n.clientHeight&&!n.classList.contains(this.TEXT_WRAP_STRING)){n.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,n.getAttribute(this.DATA_ROW_HEIGHT_STRING))}if(this.truncationPattern){if(this.truncationPattern===this.SHOW_HIDE_STRING){const t=this.getTruncWrapper(e);const i=e.shadowRoot.querySelector("button");if(i&&(t===null||t===void 0?void 0:t.scrollHeight)<=n.clientHeight){this.resetShowHideTruncation(e);return}}this.truncate(e,n,o)}else{this.updateSetRowHeight(e)}}));this.rowHeightSet=false}if(this.itemsPerPageChange){const t=this.el.shadowRoot.querySelectorAll(".table-row");if(this.rowsPerPage>this.previousItemsPerPage){const i=Array.from(t).slice(this.previousItemsPerPage);i.forEach((t=>{t.querySelectorAll("ic-typography").forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);this.truncate(t,i,e)}))}))}this.previousItemsPerPage=this.rowsPerPage;this.itemsPerPageChange=false}if(!this.initialLoad&&this.icPageChangeEvent){if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=t.shadowRoot.querySelector("button");if((t===null||t===void 0?void 0:t.scrollHeight)>i.clientHeight&&!e){this.addShowHideTruncation(i,t)}}))}this.icPageChangeEvent=false}if(this.densityUpdate){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);this.truncate(t,i,e)}));this.densityUpdate=false}if(this.truncationPatternUpdated){if(this.truncationPattern===this.TOOLTIP_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(t.scrollHeight>i.clientHeight){this.addTooltipTruncation(t,i,e)}}))}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getTruncWrapper(t);const e=this.getCellContainer(t);if((e===null||e===void 0?void 0:e.clientHeight)-this.DEFAULT_LINE_HEIGHT>(i===null||i===void 0?void 0:i.scrollHeight)){this.resetShowHideTruncation(t);return}if((t===null||t===void 0?void 0:t.scrollHeight)>(e===null||e===void 0?void 0:e.clientHeight)){this.addShowHideTruncation(e,t)}}))}}}createShowHideTruncation(t,i){t.checkMaxLines(t.scrollHeight);t.setAttribute("max-lines",`${Math.floor((i===null||i===void 0?void 0:i.clientHeight)/this.DEFAULT_LINE_HEIGHT)}`);t.setShowHideExpanded(false);i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null)}addTooltipTruncation(t,i,e){this.addLineClampCSS(t,i);if(!e){this.createTruncationTooltip(t,i)}}addShowHideTruncation(t,i){t.classList.add(this.SHOW_HIDE_CSS_CLASS);this.createShowHideTruncation(i,t)}getTruncWrapper(t){return t.shadowRoot.querySelector(".trunc-wrapper")}handleTypographyTruncationExpandToggle({detail:t}){const{expanded:i,typographyEl:e}=t;const s=this.getCellContainer(e);if(s.style.getPropertyValue(this.ROW_HEIGHT_CSS_VARIABLE)&&i){s.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,"inherit")}}handlePageChange({detail:t,target:i}){if(i.parentElement!==this.el){this.fromRow=(t.value-1)*this.rowsPerPage;this.toRow=this.fromRow+this.rowsPerPage;const i=this.el.shadowRoot.querySelector(".table-row-container");if(this.previousRowsPerPage===this.rowsPerPage){i.scrollTop=0}else if(this.previousRowsPerPage<this.rowsPerPage){i.scrollTop=this.scrollOffset;this.previousRowsPerPage=this.rowsPerPage}else{this.previousRowsPerPage=this.rowsPerPage}}if(!this.initialLoad&&this.previousPaginationPage!==t.value){this.icPageChangeEvent=true}this.previousPaginationPage=t.value;this.initialLoad=false}handleItemsPerPageChange({detail:t,target:i}){if(i.parentElement!==this.el){this.previousRowsPerPage=this.rowsPerPage;this.rowsPerPage=t.value}this.itemsPerPageChange=true}handleDensityChange(t){this.density=t.detail.value}clickListener(t){if(t.target!==this.el)this.selectedRow=undefined}loadingHandler(t){if(t)this.startLoadingTimer();if(this.loading){setTimeout((()=>{this.showLoadingIndicator()}),500)}}truncationPatternHandler(t){if(t===this.TOOLTIP_STRING){this.resetShowHideTruncation();this.updateTruncationTooltip(true);this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);this.truncate(t,i,e)}))}if(t===this.SHOW_HIDE_STRING){this.updateTruncationTooltip(true);this.getTypographyElements().forEach((t=>{const i=this.getTruncWrapper(t);const e=this.getCellContainer(t);if((e===null||e===void 0?void 0:e.clientHeight)-this.DEFAULT_LINE_HEIGHT>(i===null||i===void 0?void 0:i.scrollHeight)){this.resetShowHideTruncation(t);return}setTimeout((()=>{if((t===null||t===void 0?void 0:t.scrollHeight)>(e===null||e===void 0?void 0:e.clientHeight)){this.addShowHideTruncation(e,t)}}),150)}))}this.truncationPatternUpdated=true}async dataHandler(t){this.loadingOptions=Object.assign(Object.assign({},this.loadingOptions),{showBackground:(t===null||t===void 0?void 0:t.length)>0});if(this.loading){!this.hasLoadedForOneSecond?setTimeout((()=>this.loading=false),this.minimumLoadingDisplayDuration-(Date.now()-this.timerStarted)):this.loading=false}if(this.updating)this.updating=false;this.dataUpdated=true}async densityHandler(){this.densityUpdate=true}resetShowHideTruncation(t){if(t){const i=this.getTruncWrapper(t);const e=this.getCellContainer(t);if((i===null||i===void 0?void 0:i.scrollHeight)>(e===null||e===void 0?void 0:e.clientHeight)&&!l(t.getAttribute("max-lines"))&&Math.floor((e===null||e===void 0?void 0:e.clientHeight)/this.DEFAULT_LINE_HEIGHT)!==+t.getAttribute("max-lines")){t.checkMaxLines(i.scrollHeight);t.setAttribute("max-lines",`${Math.floor((e===null||e===void 0?void 0:e.clientHeight)/this.DEFAULT_LINE_HEIGHT)}`);t.setShowHideExpanded(false);e.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null)}else{t.resetTruncation().then((()=>{if(!t.closest(this.TEXT_WRAP_CLASS)){e.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,e.getAttribute(this.DATA_ROW_HEIGHT_STRING))}}))}}else{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);t.resetTruncation().then((()=>{if(!t.closest(this.TEXT_WRAP_CLASS)){i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,i.getAttribute(this.DATA_ROW_HEIGHT_STRING))}}))}))}}rowHeightChangeHandler(t,i){if(+t!==+i){this.deleteTextWrapDataKey(this.data);this.deleteTextWrapDataKey(this.columns);this.removeTextWrap();this.icRowHeightChange.emit();this.rowHeightSet=true}}async resetRowHeights(t){this.globalRowHeight=t||"auto";this.variableRowHeight=null}showLoadingIndicator(){this.loadingIndicator.classList.add("show")}getRowOptions(t,i){const e=t.indexOf("rowOptions");return e>-1&&i[e]}regenerateTooltip(t,i,e,s){if(e){if(this.tableSorted){e.setAttribute("target",i.id);e.setAttribute("label",i.textContent)}else{this.removeTooltip(t,i,e)}if(s){return}}if(!i.getAttribute("style")&&this.dataUpdated){this.addLineClampCSS(i,t)}if((i===null||i===void 0?void 0:i.scrollHeight)>(t===null||t===void 0?void 0:t.clientHeight)&&this.truncationPattern===this.TOOLTIP_STRING){if(!i.getAttribute("style")||i.style.cssText.includes("--ic-line-clamp: 0;")){this.addLineClampCSS(i,t)}this.createTruncationTooltip(i,t)}}removeTooltip(t,i,e){t.appendChild(i);if(e){e.remove()}}addLineClampCSS(t,i){t.setAttribute("style",`--ic-line-clamp: ${this.getLines(i===null||i===void 0?void 0:i.clientHeight)}`)}createTruncationTooltip(t,i){const e=document.createElement("ic-tooltip");e.setAttribute("target",t.id);e.setAttribute("label",t.textContent);e.classList.add("ic-tooltip-overflow");e.setExternalPopperProps({strategy:"fixed"});i.appendChild(e);e.appendChild(t)}render(){const{caption:t,createColumnHeaders:i,createRows:s,createUpdatingIndicator:o,data:a,hideColumnHeaders:l,loading:h,loadingOptions:d,paginationBarOptions:c,scrollable:u,scrollOffset:v,showPagination:g,sortable:p,sortedColumnOrder:f,sortedColumn:m,stickyColumnHeaders:b,updateScrollOffset:w,updating:y}=this;return e(n,{style:Object.assign({},this.setTableDimensions())},e("div",{class:"table-container"},r(this.el,"title-bar")&&e("slot",{name:"title-bar"}),e("div",{class:{["table-row-container"]:true,scrollable:u},tabIndex:u?0:null,onScroll:w},r(this.el,"title-bar")&&e("slot",{name:"title-bar"}),e("table",{style:{["--table-layout"]:this.tableLayout}},e("caption",{class:"table-caption"},t),!l&&e("thead",{class:{["column-header-sticky"]:b,["column-header-overlay"]:b&&v!==0}},e("tr",null,i())),y&&!h&&(l?e("thead",null,o()):o()),(a===null||a===void 0?void 0:a.length)>0&&!h&&e("tbody",null,s())),!(a===null||a===void 0?void 0:a.length)&&!h&&(r(this.el,"empty-state")?e("slot",{name:"empty-state"}):e("ic-empty-state",{aligned:"center",heading:"No Data",class:"loading-empty"}))),h&&e("ic-loading-indicator",{theme:d===null||d===void 0?void 0:d.appearance,monochrome:d===null||d===void 0?void 0:d.monochrome,class:{"loading-empty":h,loading:true,"show-background":d.showBackground},description:d.description||"Loading table data",label:d.label||"Loading...",labelDuration:d===null||d===void 0?void 0:d.labelDuration,max:d===null||d===void 0?void 0:d.max,min:d===null||d===void 0?void 0:d.min,progress:d===null||d===void 0?void 0:d.progress,ref:t=>this.loadingIndicator=t}),(g||r(this.el,"pagination-bar"))&&e("div",{class:"pagination-container"},r(this.el,"pagination-bar")?e("slot",{name:"pagination-bar"}):e("ic-pagination-bar",{totalItems:a.length,type:c.type,rangeLabelType:c.rangeLabelType,showItemsPerPageControl:c.showItemsPerPageControl,showGoToPageControl:c.showGoToPageControl,itemsPerPageOptions:c.itemsPerPageOptions,alignment:c.alignment,appearance:c.appearance,itemLabel:c.itemLabel,pageLabel:c.pageLabel,hideRangeLabel:c.hideRangeLabel})),p&&e("div",{class:"screen-reader-sort-text","aria-live":"polite"},f!=="unsorted"&&m?`${m} sorted ${f}`:"table unsorted")))}get el(){return o(this)}static get watchers(){return{loading:["loadingHandler"],truncationPattern:["truncationPatternHandler"],data:["dataHandler"],density:["densityHandler"],globalRowHeight:["rowHeightChangeHandler"],variableRowHeight:["rowHeightChangeHandler"]}}};p.style=g;export{p as ic_data_table};
2
+ //# sourceMappingURL=p-ec53b435.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icDataTableCss","DataTable","this","DENSITY_HEIGHT_MULTIPLIER","dense","default","spacious","DENSITY_PADDING_HEIGHT_DIFF","SORT_ICONS","unsorted","unsortedIcon","ascending","ascendingIcon","descending","descendingIcon","hasLoadedForOneSecond","resizeObserver","SHOW_HIDE_STRING","SHOW_HIDE_CSS_CLASS","TOOLTIP_STRING","TOOLTIP","TEXT_WRAP_STRING","TEXT_WRAP_CLASS","dataUpdated","rowHeightSet","initialLoad","icPageChangeEvent","itemsPerPageChange","DATA_ROW_HEIGHT_STRING","ROW_HEIGHT_CSS_VARIABLE","DEFAULT_LINE_HEIGHT","densityUpdate","truncationPatternUpdated","isNewDebounceDelaySet","updateSetRowHeight","typographyEl","fontSize","parseInt","getComputedStyle","document","documentElement","cellContainer","getCellContainer","rowHeight","parseFloat","getAttribute","scrollHeight","style","removeProperty","getTypographyElements","forEach","debounceDataTruncation","classList","contains","ResizeObserver","dynamicDebounce","dataTruncation","setNewDebounceDelay","debounceDelay","observe","delay","getLines","height","Math","floor","truncate","tooltip","clientHeight","closest","truncationPattern","addTooltipTruncation","addShowHideTruncation","setAttribute","appendChild","remove","isEmptyString","resetShowHideTruncation","getTooltip","shadowRoot","querySelector","showHideBtn","truncWrapper","getTruncWrapper","removeTooltip","removeTextWrap","tableCell","deleteTextWrapDataKey","array","Array","isArray","val","textWrap","startLoadingTimer","timerStarted","Date","now","setTimeout","minimumLoadingDisplayDuration","isObject","value","notDefaultDensity","density","getCellContent","cell","dataType","undefined","toLocaleDateString","getCellAlignment","alignment","Object","keys","includes","getObjectValue","getCellOptions","key","createUpdatingIndicator","appearance","description","max","min","progress","monochrome","updatingOptions","h","colSpan","columns","length","class","theme","fullWidth","type","size","setRowHeight","pxToRem","setTruncationClass","getColumnWidth","columnWidth","columnWidthStyling","assign","minWidth","maxWidth","getRowHeight","currentRowHeight","columnProps","rowTextWrap","createCells","row","rowIndex","rowValues","values","rowKeys","rowOptions","getRowOptions","rowAlignment","rowEmphasis","headerIndex","indexOf","variableRowHeightVal","_a","variableRowHeight","call","index","globalRowHeight","map","cellSlotName","hasIcon","cellValue","scope","stickyRowHeaders","innerHTML","isSlotUsed","el","columnAlignment","vertical","_b","_c","_d","_e","horizontal","_f","_g","_h","_j","icon","name","Fragment","_k","onAllCells","_l","_m","variant","emphasis","href","createColumnHeaders","cellAlignment","colspan","title","updating","loading","hideOnHeader","sortable","id","getSortButtonLabel","onClick","sortRows","sortedColumn","sortedColumnOrder","onRowClick","selectedRow","createRows","data","showPagination","slice","fromRow","toRow","organisedData","slottedColumns","filter","col","addDataToPosition","sort","getSortFunction","label","getNextSortOption","option","sortOrders","sortOptions","sortOption","getComparison","targetRow","comparisonRow","targetRowValue","comparisonRowValue","find","valueOf","String","localeCompare","numeric","sensitivity","a","b","column","sortButton","previousSortedButton","nextSortOrderIndex","tableSorted","icSortChange","emit","columnName","sorted","from","querySelectorAll","updateTruncationTooltip","removeTooltipOnly","regenerateTooltip","updateScrollOffset","scrollOffset","scrollTop","setTableDimensions","tableHostDimensions","width","itemsPerPageOptions","rangeLabelType","showItemsPerPageControl","showGoToPageControl","itemLabel","pageLabel","hideRangeLabel","defaultColumn","disconnectedCallback","disconnect","componentWillLoad","rowsPerPage","Number","paginationBarOptions","previousRowsPerPage","loadingOptions","showBackground","previousItemsPerPage","componentDidLoad","tableElement","tableContainer","clientWidth","scrollable","showLoadingIndicator","componentDidUpdate","truncateUpdatedData","createShowHideTruncation","resetTruncation","then","removeAttribute","hasAutoRowHeight","tooltipEl","setProperty","allRows","newRows","checkMaxLines","setShowHideExpanded","addLineClampCSS","createTruncationTooltip","add","handleTypographyTruncationExpandToggle","detail","expanded","getPropertyValue","handlePageChange","target","parentElement","tableRowsContainer","previousPaginationPage","handleItemsPerPageChange","handleDensityChange","ev","clickListener","loadingHandler","newValue","truncationPatternHandler","dataHandler","newData","densityHandler","rowHeightChangeHandler","oldValue","icRowHeightChange","resetRowHeights","loadingIndicator","rowOptionsIndex","textContent","cssText","createElement","setExternalPopperProps","strategy","render","caption","hideColumnHeaders","stickyColumnHeaders","Host","tabIndex","onScroll","tableLayout","aligned","heading","labelDuration","ref","totalItems"],"sources":["src/components/ic-data-table/ic-data-table.css?tag=ic-data-table&encapsulation=shadow","src/components/ic-data-table/ic-data-table.tsx"],"sourcesContent":[":host {\n position: relative;\n display: inline-flex;\n max-height: 100%;\n width: var(--table-width, 100%);\n height: 100%;\n min-width: var(--table-min-width);\n max-width: var(--table-max-width);\n}\n\ntbody {\n vertical-align: top;\n}\n\n.table-container {\n position: relative;\n height: calc(100% - var(--ic-space-xxxs));\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n.cell-container {\n display: flex;\n min-height: 1.5rem;\n overflow-y: hidden;\n height: var(--row-height);\n}\n\n.truncation-show-hide {\n overflow: visible;\n display: block;\n}\n\n.cell-icon.truncation-show-hide {\n display: flex;\n}\n\n.cell-container:not(.data-type-element, .truncation-show-hide) {\n overflow-x: hidden;\n}\n\nic-loading-indicator {\n position: sticky;\n top: 20px;\n}\n\nic-loading-indicator.ic-theme-dark {\n --inner-color: var(--ic-action-default-dark);\n --outer-color: var(--ic-action-neutral-light);\n --label-color: var(--ic-color-text-primary-dark);\n}\n\nic-loading-indicator.ic-theme-dark.ic-loading-indicator-monochrome {\n --inner-color: var(--ic-action-light);\n --outer-color: var(--ic-action-neutral-dark);\n --label-color: var(--ic-color-text-inverse-dark);\n}\n\n.table-row-container {\n position: relative;\n height: 100%;\n overflow: auto;\n transition: var(--ic-easing-transition-fast);\n overflow-anchor: none;\n}\n\n:host([show-pagination=\"true\"]) .table-row-container {\n height: calc(100% - 3.5625rem);\n}\n\ntable {\n table-layout: var(--table-layout, \"fixed\");\n border-spacing: 0;\n width: 100%;\n height: var(--table-height, auto);\n}\n\n.table-row-container:focus {\n outline: none;\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-easing-transition-fast);\n z-index: 1;\n}\n\n:host([embedded=\"true\"]) .table-row-container {\n border: var(--ic-border-light);\n}\n\n.column-header-inner-container {\n padding: var(--ic-space-xs);\n box-sizing: border-box;\n}\n\n.column-header-sticky {\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.column-header-overlay {\n position: sticky;\n top: 0;\n z-index: 1;\n box-shadow: 0 0.375rem var(--ic-space-xs) calc(var(--ic-space-xxs * -1))\n rgb(0 0 0 / 20%);\n}\n\n.row-header-sticky {\n position: sticky;\n left: 0;\n}\n\n.column-header,\n.table-row {\n box-sizing: border-box;\n}\n\n.table-row-selected {\n background-color: var(--ic-table-row-selected) !important;\n}\n\n.sort-button {\n margin-left: auto;\n}\n\n.sort-button:hover {\n background-color: var(--ic-action-dark-bg-hover);\n}\n\n.sort-button:active {\n background-color: var(--ic-action-dark-bg-pressed);\n}\n\n.sort-button svg {\n color: var(--ic-architectural-black);\n}\n\n.sort-button-unsorted svg {\n color: var(--ic-color-text-tertiary);\n}\n\n.table-density-dense .column-header-inner-container,\ntd.table-density-dense {\n padding: var(--ic-space-xxs) var(--ic-space-xs) !important;\n}\n\n.text-dense {\n font-size: var(--ic-font-size-label);\n}\n\n.table-density-spacious .column-header-inner-container,\ntd.table-density-spacious {\n padding: 0.625rem var(--ic-space-xs) !important;\n}\n\n.text-spacious {\n font-size: 1.125rem;\n}\n\n.column-header-text {\n font-weight: var(--ic-font-weight-bold);\n}\n\n.row-header,\n.column-header {\n text-align: left;\n padding: var(--ic-space-xs);\n background-color: var(--ic-architectural-40);\n border-right: var(--ic-border-light);\n border-bottom: var(--ic-border-light);\n}\n\n.column-header {\n padding: 0;\n width: var(--column-width);\n min-width: var(--column-min-width, 4rem);\n max-width: var(--column-max-width);\n}\n\n.column-header:last-child {\n border-right: none;\n}\n\n.scrollable .column-header:last-child {\n border-right: var(--ic-border-light) !important;\n}\n\n:host([embedded=\"true\"]) tr:last-child .table-cell,\n:host([embedded=\"true\"]) tr:last-child .row-header {\n border-bottom: none;\n}\n\n.column-header-alignment-left,\n.row-header-alignment-left,\n.cell-alignment-left {\n text-align: left !important;\n justify-content: start !important;\n}\n\n.column-header-alignment-right,\n.row-header-alignment-right,\n.cell-alignment-right {\n text-align: right !important;\n justify-content: end !important;\n}\n\n.cell-alignment-right.truncation-tooltip ic-tooltip ic-typography {\n padding-right: calc(var(--ic-space-xxs) + var(--ic-space-xs));\n}\n\n.cell-alignment-right.truncation-show-hide ic-typography {\n --ellipsis-padding-right: calc(var(--ic-space-xxs) + var(--ic-space-xs));\n}\n\n.column-header-alignment-center,\n.row-header-alignment-center,\n.cell-alignment-center {\n text-align: center !important;\n justify-content: center !important;\n}\n\n.table-row:nth-child(even) {\n background-color: var(--ic-architectural-20);\n}\n\n.table-cell {\n padding: var(--ic-space-xs);\n border-bottom: solid var(--ic-architectural-100) var(--ic-space-1px);\n overflow: hidden;\n box-sizing: border-box;\n max-width: var(--column-max-width);\n min-width: var(--column-min-width);\n}\n\n.table-cell.with-overflow {\n overflow: visible;\n}\n\n.data-type-string,\n.data-type-address {\n text-align: left;\n vertical-align: top;\n}\n\n.data-type-number,\n.data-type-date {\n text-align: right;\n justify-content: end;\n vertical-align: top;\n}\n\n.cell-alignment-top {\n vertical-align: top;\n align-items: flex-start;\n}\n\n.cell-alignment-middle {\n vertical-align: middle;\n align-items: center;\n}\n\n.cell-alignment-bottom {\n vertical-align: bottom;\n align-items: flex-end;\n}\n\n.cell-emphasis-low {\n --ic-typography-color: var(--ic-color-text-secondary);\n}\n\n.cell-emphasis-high {\n font-weight: var(--ic-font-weight-bold);\n}\n\n.pagination-container {\n background-color: var(--ic-architectural-40);\n border-top: var(--ic-border-light);\n}\n\n.screen-reader-sort-text,\n.table-caption {\n position: absolute;\n left: -100rem;\n}\n\n.table-cell,\n.column-header,\n.row-header {\n word-wrap: break-word;\n white-space: pre-wrap;\n}\n\n.loading-empty {\n padding: var(--ic-space-xl) var(--ic-space-xxl);\n margin-top: var(--ic-space-xl);\n}\n\n.updating-state {\n padding: 0;\n border-bottom: var(--ic-border-light);\n}\n\n.updating-state-headers {\n border-bottom: none;\n}\n\n.loading {\n position: absolute;\n left: calc(50% - 5.9741rem);\n opacity: 0;\n transition: opacity var(--ic-transition-duration-slow);\n}\n\n.loading.show-background {\n background-color: var(--ic-architectural-white);\n border: var(--ic-border-light);\n}\n\n.loading.show {\n opacity: 1;\n}\n\n.icon,\n::slotted(svg) {\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n margin-right: var(--ic-space-xxs);\n}\n\n.column-header-alignment-right > .icon,\n.row-header-alignment-right > .icon,\n.cell-alignment-right > .icon,\n.column-header-alignment-right > ::slotted(svg),\n.row-header-alignment-right > ::slotted(svg),\n.cell-alignment-right > ::slotted(svg) {\n margin-right: auto;\n}\n\n.column-header-alignment-center > ic-typography,\n.row-header-alignment-right > ic-typography,\n.cell-alignment-center > ic-typography {\n flex: 1;\n}\n\n.icon > svg {\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n display: inline-block;\n}\n\n.truncation-tooltip ic-typography {\n display: -webkit-box;\n -webkit-line-clamp: var(--ic-line-clamp, 0);\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.truncation-tooltip ic-typography,\n.truncation-show-hide ic-typography {\n white-space: normal;\n}\n\n.ic-tooltip-overflow {\n overflow: hidden;\n width: 100%;\n}\n\n@media screen and (min-width: 577px) {\n .column-header-inner-container {\n display: flex;\n align-items: center;\n }\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n Component,\n Element,\n h,\n Prop,\n State,\n Listen,\n Watch,\n Fragment,\n Method,\n Event,\n EventEmitter,\n Host,\n} from \"@stencil/core\";\nimport unsortedIcon from \"./assets/unsorted-icon.svg\";\nimport ascendingIcon from \"./assets/ascending-icon.svg\";\nimport descendingIcon from \"./assets/descending-icon.svg\";\nimport {\n IcDataTableDataType,\n IcDataTableColumnDataTypes,\n IcDataTableColumnObject,\n IcDataTableColumnWidthTypes,\n IcDataTableDensityOptions,\n IcDataTableRowHeights,\n IcDataTableSortOrderOptions,\n IcDataTableTruncationTypes,\n IcDensityUpdateEventDetail,\n IcSortEventDetail,\n} from \"./ic-data-table.types\";\nimport { IcThemeForegroundNoDefault } from \"@ukic/web-components/dist/types/utils/types\";\nimport { IcPaginationBarOptions } from \"../../utils/types\";\n// Unable to import helper functions via @ukic/web-components\nimport {\n isEmptyString,\n isSlotUsed,\n pxToRem,\n addDataToPosition,\n dynamicDebounce,\n} from \"../../utils/helpers\";\n\n/**\n * @slot empty-state - Content is slotted below the table header when there is no data and the table is not loading.\n * @slot {COLUMN_KEY}-{ROW_INDEX}[-icon] - Each cell should have its own slot, named using the column tag and the row index, allowing for custom elements to be displayed. Include `-icon` at the end for that cell's icon slot.\n * @slot {COLUMN_KEY}-column-icon - The icon slot for a column header.\n * @slot title-bar - A custom ic-data-table-title-bar can be slotted above the column headers to display additional information about the table.\n * @slot pagination-bar - A custom ic-pagination-bar can be slotted below the data to provide enhanced control over how the data is interacted with when being fetched externally.\n */\n@Component({\n tag: \"ic-data-table\",\n styleUrl: \"ic-data-table.css\",\n shadow: true,\n})\nexport class DataTable {\n private DENSITY_HEIGHT_MULTIPLIER = {\n dense: 0.8,\n default: 1,\n spacious: 1.2,\n };\n\n private DENSITY_PADDING_HEIGHT_DIFF = {\n dense: 8,\n default: 16,\n spacious: 20,\n };\n\n private SORT_ICONS = {\n unsorted: unsortedIcon,\n ascending: ascendingIcon,\n descending: descendingIcon,\n };\n\n private hasLoadedForOneSecond = true;\n private loadingIndicator: HTMLIcLoadingIndicatorElement;\n private timerStarted: number;\n private resizeObserver: ResizeObserver = null;\n private SHOW_HIDE_STRING = \"show-hide\";\n private SHOW_HIDE_CSS_CLASS = `${this.SHOW_HIDE_STRING}-wrap`;\n private TOOLTIP_STRING = \"tooltip\";\n private TOOLTIP = `ic-${this.TOOLTIP_STRING}`;\n private TEXT_WRAP_STRING = \"text-wrap\";\n private TEXT_WRAP_CLASS = `.${this.TEXT_WRAP_STRING}`;\n private dataUpdated = false;\n private tableSorted: boolean;\n private rowHeightSet = false;\n private initialLoad = false;\n private icPageChangeEvent = false;\n private itemsPerPageChange = false;\n private DATA_ROW_HEIGHT_STRING = \"data-row-height\";\n private ROW_HEIGHT_CSS_VARIABLE = \"--row-height\";\n private previousItemsPerPage: number;\n private DEFAULT_LINE_HEIGHT = 24;\n private densityUpdate = false;\n private previousPaginationPage: number;\n private truncationPatternUpdated: boolean = false;\n private isNewDebounceDelaySet = false;\n\n @Element() el: HTMLIcDataTableElement;\n\n @State() fromRow: number = 0;\n\n @State() previousRowsPerPage: number;\n\n @State() rowsPerPage: number;\n\n @State() scrollable: boolean = false;\n\n @State() scrollOffset: number = 0;\n\n @State() selectedRow: object;\n\n @State() sortedColumn: string;\n\n @State() sortedColumnOrder: IcDataTableSortOrderOptions;\n\n @State() toRow: number;\n\n @State() currentRowHeight: number;\n\n @State() debounceDelay = 0;\n\n /**\n * The title for the table only visible to screen readers.\n */\n @Prop() caption!: string;\n\n /**\n * The column headers for the table.\n */\n @Prop() columns!: IcDataTableColumnObject[];\n\n /**\n * The row content for the table.\n */\n @Prop() data: IcDataTableDataType[];\n\n /**\n * Set the density of the table including font and padding.\n */\n @Prop({ mutable: true }) density?: IcDataTableDensityOptions = \"default\";\n\n /**\n * Applies a border to the table container.\n */\n @Prop() embedded?: boolean = false;\n\n /**\n * Sets the row height on all rows in the table that aren't set using the `variableRowHeight` method.\n */\n @Prop({ mutable: true }) globalRowHeight?: IcDataTableRowHeights = \"auto\";\n\n /**\n * Sets the table height. Can be set to `auto` or a specific value in `px`, `rem`, or `%`.\n */\n @Prop() height?: string;\n\n /**\n * If `true`, column headers will not be visible.\n */\n @Prop() hideColumnHeaders?: boolean = false;\n\n /**\n * When set to `true`, the full table will show a loading state, featuring a radial indicator.\n */\n @Prop({ mutable: true }) loading?: boolean = false;\n\n /**\n * Sets the props for the circular loading indicator used in the loading state.\n */\n @Prop() loadingOptions?: {\n appearance?: IcThemeForegroundNoDefault;\n description?: string;\n label?: string;\n labelDuration?: number;\n max?: number;\n min?: number;\n progress?: number;\n showBackground?: boolean;\n monochrome?: boolean;\n };\n\n /**\n * Sets the maximum width of the data table. Can be set in `px`, `rem`, or `%`.\n */\n @Prop() maxWidth?: string;\n\n /**\n * Sets the minimum width of the data table. Can be set in `px`, `rem`, or `%`.\n */\n @Prop() minWidth?: string;\n\n /**\n * The minimum amount of time the `loading` state displays for before showing the data. Used to prevent flashing in the component.\n */\n @Prop() minimumLoadingDisplayDuration?: number = 1000;\n\n /**\n * Sets the props for the built-in pagination bar. If the `pagination-bar` slot is used then this prop is ignored.\n */\n @Prop() paginationBarOptions?: IcPaginationBarOptions = {\n itemsPerPageOptions: [\n { label: \"10\", value: \"10\" },\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n ],\n rangeLabelType: \"page\",\n type: \"simple\",\n showItemsPerPageControl: true,\n showGoToPageControl: true,\n alignment: \"right\",\n appearance: \"default\",\n itemLabel: \"Item\",\n pageLabel: \"Page\",\n hideRangeLabel: false,\n };\n\n /**\n * If `true`, adds a pagination bar to the bottom of the table.\n */\n @Prop() showPagination?: boolean = false;\n\n /**\n * If `true`, allows table columns to be sorted using applied sort buttons.\n */\n @Prop() sortable?: boolean = false;\n\n /**\n * Sets the order columns will be sorted in and allows for 'default' sorts to be added.\n */\n @Prop() sortOptions?: {\n sortOrders: IcDataTableSortOrderOptions[];\n defaultColumn?: string;\n } = {\n sortOrders: [\"unsorted\", \"ascending\", \"descending\"],\n defaultColumn: \"\",\n };\n\n /**\n * If `true`, column headers will remain at the top of the table when scrolling vertically.\n */\n @Prop() stickyColumnHeaders?: boolean = false;\n\n /**\n * If `true`, row headers will remain to the left when scrolling horizontally.\n */\n @Prop() stickyRowHeaders?: boolean = false;\n /**\n * Sets the layout of the table\n */\n @Prop() tableLayout?: \"fixed\" | \"auto\" = \"fixed\";\n\n /**\n * Sets the method used to truncate long text in cells where textWrap is `false`. The `tooltip` truncation pattern allows the overflowing text to be seen in a tooltip. The `show-hide` truncation pattern allows the overflowing text to be shown and hidden using the ic-typography \"See more\"/\"See less\" buttons.\n */\n @Prop() truncationPattern?: IcDataTableTruncationTypes;\n\n /**\n * If `true`, the table displays a linear loading indicator below the header row to indicate an updating state.\n */\n @Prop() updating?: boolean = false;\n\n /**\n * Sets the props for the linear loading indicator used in the updating state.\n */\n @Prop() updatingOptions?: {\n appearance?: IcThemeForegroundNoDefault;\n description?: string;\n max?: number;\n min?: number;\n progress?: number;\n monochrome?: boolean;\n };\n\n /**\n * Allows for custom setting of row heights on individual rows based on an individual value from the `data` prop and the row index.\n * If the function returns `null`, that row's height will be set to the `globalRowHeight` property.\n */\n @Prop({ mutable: true }) variableRowHeight?: (params: {\n [key: string]: any;\n index: number;\n }) => IcDataTableRowHeights | null;\n\n /**\n * Sets the table width. Can be set to `auto` or a specific value in `px`, `rem`, or `%`.\n */\n @Prop() width?: string;\n\n /**\n * Emitted when the `globalRowHeight` or `variableRowHeight` properties change in the data table.\n */\n @Event() icRowHeightChange: EventEmitter<void>;\n\n /**\n * Emitted when a column sort button is clicked.\n */\n @Event() icSortChange: EventEmitter<IcSortEventDetail>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.rowsPerPage = Number(\n this.paginationBarOptions.itemsPerPageOptions[0].value\n );\n this.previousRowsPerPage = this.rowsPerPage;\n this.toRow = this.rowsPerPage;\n this.sortedColumn = this.sortOptions.defaultColumn;\n this.sortedColumnOrder = this.sortOptions.sortOrders[0];\n this.loadingOptions = {\n ...this.loadingOptions,\n showBackground: this.data?.length > 0,\n };\n this.initialLoad = true;\n this.previousItemsPerPage = this.rowsPerPage;\n }\n\n componentDidLoad(): void {\n const tableElement = this.el.shadowRoot.querySelector(\"table\");\n const tableContainer = this.el.shadowRoot.querySelector(\".table-container\");\n\n if (this.dataUpdated) {\n this.dataUpdated = false;\n }\n\n if (\n tableElement?.clientHeight > tableContainer?.clientHeight ||\n tableElement?.clientWidth > tableContainer?.clientWidth\n ) {\n this.scrollable = true;\n }\n if (this.loading) {\n this.startLoadingTimer();\n this.showLoadingIndicator();\n }\n\n if (this.truncationPattern) {\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const cellContainer = this.getCellContainer(typographyEl);\n if (!cellContainer.classList.contains(this.TEXT_WRAP_STRING)) {\n this.dataTruncation(typographyEl);\n }\n }\n );\n\n this.debounceDataTruncation();\n }\n\n if (this.globalRowHeight !== \"auto\") {\n this.updateSetRowHeight();\n }\n }\n\n componentDidUpdate(): void {\n // truncation updates invoked here once new/updated data has\n // rendered to take into account updated .cell-container/ic-typography box model updates.\n if (\n this.truncationPattern === this.SHOW_HIDE_STRING ||\n this.truncationPattern === this.TOOLTIP_STRING\n ) {\n this.truncateUpdatedData();\n }\n }\n\n private truncateUpdatedData() {\n if (this.dataUpdated) {\n if (this.truncationPattern === this.SHOW_HIDE_STRING) {\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const truncWrapper = this.getTruncWrapper(typographyEl);\n const cellContainer = this.getCellContainer(typographyEl);\n\n if (\n cellContainer?.clientHeight - this.DEFAULT_LINE_HEIGHT >=\n truncWrapper?.scrollHeight\n ) {\n this.resetShowHideTruncation(typographyEl);\n return;\n }\n\n setTimeout(() => {\n // slight delay due to data rendering\n if (typographyEl?.scrollHeight > cellContainer?.clientHeight) {\n this.addShowHideTruncation(cellContainer, typographyEl);\n }\n }, 150);\n }\n );\n }\n\n if (this.truncationPattern === this.TOOLTIP_STRING) {\n this.updateTruncationTooltip();\n }\n\n this.dataUpdated = false;\n }\n\n if (this.tableSorted) {\n if (this.truncationPattern === this.TOOLTIP_STRING) {\n this.updateTruncationTooltip();\n }\n\n if (this.truncationPattern === this.SHOW_HIDE_STRING) {\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const cellContainer = this.getCellContainer(typographyEl);\n\n if (!cellContainer.classList.contains(this.TEXT_WRAP_STRING)) {\n this.createShowHideTruncation(typographyEl, cellContainer);\n } else {\n typographyEl.resetTruncation().then(() => {\n cellContainer.removeAttribute(\"style\");\n });\n }\n }\n );\n }\n\n this.tableSorted = false;\n }\n\n // This function recalculates the tooltip truncation when the rowHeight has been set.\n // This is in componentDidUpdate so a setTimeout is not used to wait for the render to be complete\n if (this.rowHeightSet) {\n const fontSize = parseInt(\n getComputedStyle(document.documentElement).fontSize\n );\n const hasAutoRowHeight = this.globalRowHeight === \"auto\";\n\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const cellContainer = this.getCellContainer(typographyEl);\n const tooltipEl = this.getTooltip(typographyEl);\n\n if (hasAutoRowHeight) {\n cellContainer.style.height = null;\n\n if (this.truncationPattern === this.TOOLTIP_STRING) {\n this.removeTooltip(cellContainer, typographyEl, tooltipEl);\n typographyEl.setAttribute(\"style\", `--ic-line-clamp: 0`);\n } else if (this.truncationPattern === this.SHOW_HIDE_STRING) {\n this.resetShowHideTruncation(typographyEl);\n }\n\n return;\n }\n\n const rowHeight =\n fontSize *\n parseFloat(cellContainer.getAttribute(this.DATA_ROW_HEIGHT_STRING));\n\n // If the set row height is bigger than the cell container even\n // with textWrap, set the row height\n if (\n !cellContainer?.style?.height &&\n rowHeight > cellContainer.clientHeight &&\n !cellContainer.classList.contains(this.TEXT_WRAP_STRING)\n ) {\n cellContainer.style.setProperty(\n this.ROW_HEIGHT_CSS_VARIABLE,\n cellContainer.getAttribute(this.DATA_ROW_HEIGHT_STRING)\n );\n }\n\n if (this.truncationPattern) {\n // If the set row height is bigger than the typography truncation wrapper\n // scroll height, remove see more / see less button\n if (this.truncationPattern === this.SHOW_HIDE_STRING) {\n const truncWrapper = this.getTruncWrapper(typographyEl);\n const showHideBtn =\n typographyEl.shadowRoot.querySelector(\"button\");\n\n if (\n showHideBtn &&\n truncWrapper?.scrollHeight <= cellContainer.clientHeight\n ) {\n this.resetShowHideTruncation(typographyEl);\n return;\n }\n }\n\n this.truncate(typographyEl, cellContainer, tooltipEl);\n } else {\n this.updateSetRowHeight(typographyEl);\n }\n }\n );\n\n this.rowHeightSet = false;\n }\n\n // Only run truncation on the new rows\n // when the number of items per page has increased\n if (this.itemsPerPageChange) {\n const allRows = this.el.shadowRoot.querySelectorAll(\".table-row\");\n\n if (this.rowsPerPage > this.previousItemsPerPage) {\n const newRows = Array.from(allRows).slice(this.previousItemsPerPage);\n\n newRows.forEach((row) => {\n row\n .querySelectorAll(\"ic-typography\")\n .forEach((typographyEl: HTMLIcTypographyElement) => {\n const cellContainer = this.getCellContainer(typographyEl);\n const tooltipEl = this.getTooltip(typographyEl);\n\n this.truncate(typographyEl, cellContainer, tooltipEl);\n });\n });\n }\n\n this.previousItemsPerPage = this.rowsPerPage;\n this.itemsPerPageChange = false;\n }\n\n if (!this.initialLoad && this.icPageChangeEvent) {\n if (this.truncationPattern === this.TOOLTIP_STRING) {\n this.updateTruncationTooltip();\n }\n\n // set truncation to see more if opened and next/previous page is pressed\n if (this.truncationPattern === this.SHOW_HIDE_STRING) {\n this.getTypographyElements().forEach((typographyEl) => {\n const cellContainer = this.getCellContainer(typographyEl);\n const showHideBtn = typographyEl.shadowRoot.querySelector(\"button\");\n\n if (\n typographyEl?.scrollHeight > cellContainer.clientHeight &&\n !showHideBtn\n ) {\n this.addShowHideTruncation(cellContainer, typographyEl);\n }\n });\n }\n\n this.icPageChangeEvent = false;\n }\n\n if (this.densityUpdate) {\n this.getTypographyElements().forEach((typographyEl) => {\n const cellContainer = this.getCellContainer(typographyEl);\n const tooltipEl = this.getTooltip(typographyEl);\n\n this.truncate(typographyEl, cellContainer, tooltipEl);\n });\n\n this.densityUpdate = false;\n }\n\n if (this.truncationPatternUpdated) {\n if (this.truncationPattern === this.TOOLTIP_STRING) {\n this.getTypographyElements().forEach((typographyEl) => {\n const cellContainer = this.getCellContainer(typographyEl);\n const tooltipEl = this.getTooltip(typographyEl);\n\n if (typographyEl.scrollHeight > cellContainer.clientHeight) {\n this.addTooltipTruncation(typographyEl, cellContainer, tooltipEl);\n }\n });\n } else if (this.truncationPattern === this.SHOW_HIDE_STRING) {\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const truncWrapper = this.getTruncWrapper(typographyEl);\n const cellContainer = this.getCellContainer(typographyEl);\n\n if (\n cellContainer?.clientHeight - this.DEFAULT_LINE_HEIGHT >\n truncWrapper?.scrollHeight\n ) {\n this.resetShowHideTruncation(typographyEl);\n return;\n }\n\n if (typographyEl?.scrollHeight > cellContainer?.clientHeight) {\n this.addShowHideTruncation(cellContainer, typographyEl);\n }\n }\n );\n }\n }\n }\n\n private updateSetRowHeight = (typographyEl?: HTMLIcTypographyElement) => {\n const fontSize = parseInt(\n getComputedStyle(document.documentElement).fontSize\n );\n\n if (typographyEl) {\n const cellContainer = this.getCellContainer(typographyEl);\n\n const rowHeight =\n fontSize *\n parseFloat(cellContainer.getAttribute(this.DATA_ROW_HEIGHT_STRING));\n\n if (typographyEl.scrollHeight > rowHeight) {\n cellContainer.style.removeProperty(this.ROW_HEIGHT_CSS_VARIABLE);\n }\n } else {\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const cellContainer = this.getCellContainer(typographyEl);\n\n const rowHeight =\n fontSize *\n parseFloat(cellContainer.getAttribute(this.DATA_ROW_HEIGHT_STRING));\n\n if (typographyEl.scrollHeight > rowHeight) {\n cellContainer.style.removeProperty(this.ROW_HEIGHT_CSS_VARIABLE);\n }\n }\n );\n }\n };\n\n private createShowHideTruncation(\n typographyEl: HTMLIcTypographyElement,\n cellContainer: HTMLElement\n ) {\n typographyEl.checkMaxLines(typographyEl.scrollHeight);\n typographyEl.setAttribute(\n \"max-lines\",\n `${Math.floor(cellContainer?.clientHeight / this.DEFAULT_LINE_HEIGHT)}`\n );\n typographyEl.setShowHideExpanded(false);\n\n cellContainer.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE, null);\n }\n\n private debounceDataTruncation = () => {\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const cellContainer = this.getCellContainer(typographyEl);\n if (!cellContainer.classList.contains(this.TEXT_WRAP_STRING)) {\n this.resizeObserver = new ResizeObserver(\n // This gets triggered twice due to updated data and see more/see less button\n dynamicDebounce(\n () => {\n this.dataTruncation(typographyEl);\n\n if (!this.isNewDebounceDelaySet) {\n this.setNewDebounceDelay(200);\n }\n },\n () => this.debounceDelay\n ) as ResizeObserverCallback\n );\n\n this.resizeObserver.observe(typographyEl);\n }\n }\n );\n };\n\n private setNewDebounceDelay = (delay: number) => {\n this.debounceDelay = delay;\n\n this.isNewDebounceDelaySet = true;\n };\n\n private getLines = (height: number): number =>\n Math.floor(height / this.DEFAULT_LINE_HEIGHT);\n\n private truncate = (\n typographyEl: HTMLIcTypographyElement,\n cellContainer: HTMLElement,\n tooltip: HTMLIcTooltipElement\n ) => {\n if (typographyEl?.scrollHeight > cellContainer?.clientHeight) {\n //24 is the height of a single line\n if (!typographyEl.closest(this.TEXT_WRAP_CLASS)) {\n if (this.truncationPattern === this.TOOLTIP_STRING) {\n this.addTooltipTruncation(typographyEl, cellContainer, tooltip);\n }\n if (this.truncationPattern === this.SHOW_HIDE_STRING) {\n this.addShowHideTruncation(cellContainer, typographyEl);\n }\n }\n } else {\n if (this.truncationPattern === this.TOOLTIP_STRING && tooltip) {\n typographyEl.setAttribute(\"style\", `--ic-line-clamp: 0`);\n\n cellContainer.appendChild(typographyEl);\n tooltip.remove();\n }\n\n if (\n this.truncationPattern === this.SHOW_HIDE_STRING &&\n !isEmptyString(typographyEl.getAttribute(\"max-lines\"))\n ) {\n this.resetShowHideTruncation(typographyEl);\n }\n }\n };\n\n private addTooltipTruncation(\n typographyEl: HTMLIcTypographyElement,\n cellContainer: HTMLElement,\n tooltip: HTMLIcTooltipElement\n ) {\n this.addLineClampCSS(typographyEl, cellContainer);\n\n if (!tooltip) {\n this.createTruncationTooltip(typographyEl, cellContainer);\n }\n }\n\n private addShowHideTruncation(\n cellContainer: HTMLElement,\n typographyEl: HTMLIcTypographyElement\n ) {\n cellContainer.classList.add(this.SHOW_HIDE_CSS_CLASS);\n this.createShowHideTruncation(typographyEl, cellContainer);\n }\n\n private dataTruncation = (typographyEl: HTMLIcTypographyElement) => {\n // Tooltip truncation mentioned in AC. Will need revisiting\n const tooltip: HTMLIcTooltipElement = this.getTooltip(typographyEl);\n const cellContainer = this.getCellContainer(typographyEl);\n if (\n cellContainer?.classList.contains(\"data-type-element\") ||\n this.dataUpdated\n ) {\n return;\n }\n\n if (\n this.truncationPattern === this.SHOW_HIDE_STRING &&\n typographyEl.shadowRoot.querySelector(\"button\")\n ) {\n const showHideBtn = typographyEl.shadowRoot.querySelector(\"button\");\n // If the see more/see less is present and the max lines is equal to the cell container\n // remove the see more/see less button\n if (showHideBtn) {\n const truncWrapper = this.getTruncWrapper(typographyEl);\n\n if (\n this.getLines(truncWrapper.scrollHeight) ===\n +typographyEl.getAttribute(\"max-lines\")\n ) {\n this.resetShowHideTruncation(typographyEl);\n }\n }\n }\n\n // Deals with setting and resetting row height and re-truncating data\n if (this.rowHeightSet && this.truncationPattern === this.SHOW_HIDE_STRING) {\n const truncWrapper = this.getTruncWrapper(typographyEl);\n // cellContainer.clientHeight - 24 removes the extra line by see more/see less\n if (\n truncWrapper &&\n cellContainer.clientHeight - this.DEFAULT_LINE_HEIGHT >\n truncWrapper.scrollHeight\n ) {\n this.resetShowHideTruncation(typographyEl);\n return;\n }\n\n if (typographyEl.scrollHeight > cellContainer.clientHeight) {\n this.addShowHideTruncation(cellContainer, typographyEl);\n return;\n }\n }\n\n if (\n typographyEl?.scrollHeight > 0 &&\n cellContainer?.clientHeight > 0 &&\n typographyEl?.scrollHeight === cellContainer?.clientHeight\n ) {\n if (tooltip) {\n this.removeTooltip(cellContainer, typographyEl, tooltip);\n }\n return;\n }\n\n this.truncate(typographyEl, cellContainer, tooltip);\n };\n\n private getTruncWrapper(typographyEl: HTMLIcTypographyElement) {\n return typographyEl.shadowRoot.querySelector(\".trunc-wrapper\");\n }\n\n // Set the height to initial if row height is set and the show / hide truncation\n // is clicked\n @Listen(\"typographyTruncationExpandToggle\")\n handleTypographyTruncationExpandToggle({\n detail,\n }: CustomEvent<{\n expanded: boolean;\n typographyEl: HTMLIcTypographyElement;\n }>): void {\n const { expanded, typographyEl } = detail;\n const cellContainer = this.getCellContainer(typographyEl);\n\n if (\n cellContainer.style.getPropertyValue(this.ROW_HEIGHT_CSS_VARIABLE) &&\n expanded\n ) {\n cellContainer.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE, \"inherit\");\n }\n }\n\n @Listen(\"icPageChange\")\n handlePageChange({ detail, target }: CustomEvent<{ value: number }>): void {\n if ((target as HTMLIcPaginationBarElement).parentElement !== this.el) {\n this.fromRow = (detail.value - 1) * this.rowsPerPage;\n this.toRow = this.fromRow + this.rowsPerPage;\n const tableRowsContainer = this.el.shadowRoot.querySelector(\n \".table-row-container\"\n );\n if (this.previousRowsPerPage === this.rowsPerPage) {\n tableRowsContainer.scrollTop = 0;\n } else if (this.previousRowsPerPage < this.rowsPerPage) {\n tableRowsContainer.scrollTop = this.scrollOffset;\n this.previousRowsPerPage = this.rowsPerPage;\n } else {\n this.previousRowsPerPage = this.rowsPerPage;\n }\n }\n\n if (!this.initialLoad && this.previousPaginationPage !== detail.value) {\n // This is to prevent icPageChange from triggering truncation on first load\n this.icPageChangeEvent = true;\n }\n\n this.previousPaginationPage = detail.value;\n this.initialLoad = false;\n }\n\n @Listen(\"icItemsPerPageChange\")\n handleItemsPerPageChange({\n detail,\n target,\n }: CustomEvent<{ value: number }>): void {\n if ((target as HTMLIcPaginationBarElement).parentElement !== this.el) {\n this.previousRowsPerPage = this.rowsPerPage;\n this.rowsPerPage = detail.value;\n }\n\n this.itemsPerPageChange = true;\n }\n\n @Listen(\"icTableDensityUpdate\")\n handleDensityChange(ev: CustomEvent<IcDensityUpdateEventDetail>): void {\n this.density = ev.detail.value;\n }\n\n @Listen(\"click\", { target: \"window\" })\n clickListener(ev: MouseEvent): void {\n if (ev.target !== this.el) this.selectedRow = undefined;\n }\n\n @Watch(\"loading\")\n loadingHandler(newValue: boolean): void {\n if (newValue) this.startLoadingTimer();\n\n if (this.loading) {\n setTimeout(() => {\n this.showLoadingIndicator();\n }, 500);\n }\n }\n\n @Watch(\"truncationPattern\")\n truncationPatternHandler(newValue: IcDataTableTruncationTypes): void {\n if (newValue === this.TOOLTIP_STRING) {\n this.resetShowHideTruncation();\n this.updateTruncationTooltip(true);\n\n // Not using debounceDataTruncation here due to resizeObserver not being triggered\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const cellContainer = this.getCellContainer(typographyEl);\n const tooltip: HTMLIcTooltipElement = this.getTooltip(typographyEl);\n\n this.truncate(typographyEl, cellContainer, tooltip);\n }\n );\n }\n\n if (newValue === this.SHOW_HIDE_STRING) {\n // ResizeObserver is trigger here due to the see more/see less links being removed.\n // The resizeObserver will also apply the tooltip where relevant\n this.updateTruncationTooltip(true);\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const truncWrapper = this.getTruncWrapper(typographyEl);\n const cellContainer = this.getCellContainer(typographyEl);\n\n if (\n cellContainer?.clientHeight - this.DEFAULT_LINE_HEIGHT >\n truncWrapper?.scrollHeight\n ) {\n this.resetShowHideTruncation(typographyEl);\n return;\n }\n\n setTimeout(() => {\n // slight delay due to data rendering\n if (typographyEl?.scrollHeight > cellContainer?.clientHeight) {\n this.addShowHideTruncation(cellContainer, typographyEl);\n }\n }, 150);\n }\n );\n }\n\n this.truncationPatternUpdated = true;\n }\n\n @Watch(\"data\")\n async dataHandler(newData: IcDataTableDataType[]): Promise<void> {\n this.loadingOptions = {\n ...this.loadingOptions,\n showBackground: newData?.length > 0,\n };\n if (this.loading) {\n !this.hasLoadedForOneSecond\n ? setTimeout(\n () => (this.loading = false),\n this.minimumLoadingDisplayDuration -\n (Date.now() - this.timerStarted)\n )\n : (this.loading = false);\n }\n if (this.updating) this.updating = false;\n\n this.dataUpdated = true;\n }\n\n @Watch(\"density\")\n async densityHandler(): Promise<void> {\n this.densityUpdate = true;\n }\n\n private removeTextWrap = (): void => {\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const tableCell = typographyEl.closest(\"td\");\n if (tableCell.classList.contains(this.TEXT_WRAP_STRING)) {\n tableCell.classList.remove(this.TEXT_WRAP_STRING);\n }\n }\n );\n };\n\n private getCellContainer = (\n typographyEl: HTMLIcTypographyElement\n ): HTMLElement => {\n return typographyEl.closest(\".cell-container\");\n };\n\n private deleteTextWrapDataKey = (\n array: IcDataTableColumnObject[] | object[]\n ) =>\n Array.isArray(array) &&\n array.forEach((val) => val.textWrap && delete val.textWrap);\n\n private resetShowHideTruncation(typographyEl?: HTMLIcTypographyElement) {\n if (typographyEl) {\n const truncWrapper = this.getTruncWrapper(typographyEl);\n const cellContainer = this.getCellContainer(typographyEl);\n\n if (\n truncWrapper?.scrollHeight > cellContainer?.clientHeight &&\n !isEmptyString(typographyEl.getAttribute(\"max-lines\")) &&\n Math.floor(cellContainer?.clientHeight / this.DEFAULT_LINE_HEIGHT) !==\n +typographyEl.getAttribute(\"max-lines\")\n ) {\n typographyEl.checkMaxLines(truncWrapper.scrollHeight);\n typographyEl.setAttribute(\n \"max-lines\",\n `${Math.floor(\n cellContainer?.clientHeight / this.DEFAULT_LINE_HEIGHT\n )}`\n );\n typographyEl.setShowHideExpanded(false);\n\n cellContainer.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE, null);\n } else {\n typographyEl.resetTruncation().then(() => {\n if (!typographyEl.closest(this.TEXT_WRAP_CLASS)) {\n cellContainer.style.setProperty(\n this.ROW_HEIGHT_CSS_VARIABLE,\n cellContainer.getAttribute(this.DATA_ROW_HEIGHT_STRING)\n );\n }\n });\n }\n } else {\n this.getTypographyElements().forEach((typographyEl) => {\n const cellContainer = this.getCellContainer(typographyEl);\n\n typographyEl.resetTruncation().then(() => {\n if (!typographyEl.closest(this.TEXT_WRAP_CLASS)) {\n cellContainer.style.setProperty(\n this.ROW_HEIGHT_CSS_VARIABLE,\n cellContainer.getAttribute(this.DATA_ROW_HEIGHT_STRING)\n );\n }\n });\n });\n }\n }\n\n @Watch(\"globalRowHeight\")\n @Watch(\"variableRowHeight\")\n rowHeightChangeHandler(newValue: number, oldValue: number): void {\n if (+newValue !== +oldValue) {\n this.deleteTextWrapDataKey(this.data);\n this.deleteTextWrapDataKey(this.columns);\n this.removeTextWrap();\n\n this.icRowHeightChange.emit();\n\n this.rowHeightSet = true;\n }\n }\n\n /**\n * Resets the `globalRowHeight` prop to number or auto and sets the `variableRowHeight` prop to `null`.\n */\n @Method()\n async resetRowHeights(rowHeight?: number | \"auto\"): Promise<void> {\n this.globalRowHeight = rowHeight || \"auto\";\n this.variableRowHeight = null;\n }\n\n private showLoadingIndicator() {\n this.loadingIndicator.classList.add(\"show\");\n }\n\n private startLoadingTimer = (): void => {\n this.hasLoadedForOneSecond = false;\n this.timerStarted = Date.now();\n setTimeout(() => {\n this.hasLoadedForOneSecond = true;\n this.timerStarted = null;\n }, this.minimumLoadingDisplayDuration);\n };\n\n private isObject = (value: any) => typeof value === \"object\";\n\n private notDefaultDensity = () => this.density !== \"default\";\n\n private getCellContent = (\n cell: any,\n dataType: IcDataTableColumnDataTypes\n ): any => {\n switch (dataType) {\n case \"element\":\n return undefined;\n case \"date\":\n return (\n cell instanceof Date ? cell : new Date(cell)\n ).toLocaleDateString();\n default:\n return cell;\n }\n };\n\n private getCellAlignment = (\n cell: any,\n alignment: \"horizontal\" | \"vertical\"\n ) => {\n if (this.isObject(cell) && Object.keys(cell).includes(\"cellAlignment\")) {\n return this.getObjectValue(\n this.getObjectValue(cell, \"cellAlignment\"),\n alignment\n );\n }\n };\n\n private getCellOptions = (cell: any, key: string) => {\n if (!(this.isObject(cell) && Object.keys(cell).includes(key))) return;\n\n return this.getObjectValue(cell, key);\n };\n\n private createUpdatingIndicator = () => {\n const { appearance, description, max, min, progress, monochrome } =\n this.updatingOptions || {};\n return (\n <th colSpan={this.columns.length} class=\"updating-state\">\n <ic-loading-indicator\n theme={appearance}\n monochrome={monochrome}\n description={description || \"Updating table data\"}\n fullWidth={true}\n max={max}\n min={min}\n progress={progress}\n type=\"linear\"\n size=\"small\"\n ></ic-loading-indicator>\n </th>\n );\n };\n\n private setRowHeight = (height: number) => {\n return pxToRem(\n `${\n height * this.DENSITY_HEIGHT_MULTIPLIER[this.density] -\n this.DENSITY_PADDING_HEIGHT_DIFF[this.density]\n }px`\n );\n };\n\n private setTruncationClass = () => {\n if (this.truncationPattern) {\n return { [`truncation-${this.truncationPattern}`]: true };\n }\n\n return {};\n };\n\n private getColumnWidth = (\n columnWidth?: string | IcDataTableColumnWidthTypes\n ) => {\n // TODO: Setting max width on columns\n let columnWidthStyling = {};\n\n if (columnWidth) {\n if (typeof columnWidth === \"string\") {\n columnWidthStyling = {\n ...columnWidthStyling,\n [\"--column-width\"]: columnWidth,\n };\n }\n\n if (typeof columnWidth === \"object\" && !!Object.keys(columnWidth)) {\n if (columnWidth?.minWidth) {\n columnWidthStyling = {\n ...columnWidthStyling,\n [\"--column-min-width\"]: columnWidth?.minWidth,\n };\n }\n\n if (columnWidth?.maxWidth) {\n columnWidthStyling = {\n ...columnWidthStyling,\n [\"--column-max-width\"]: columnWidth?.maxWidth,\n };\n }\n }\n }\n\n return columnWidthStyling;\n };\n\n private getRowHeight = (\n currentRowHeight: number,\n columnProps: IcDataTableColumnObject,\n rowTextWrap: boolean,\n cell: any\n ) => {\n if (\n (this.truncationPattern || currentRowHeight) &&\n !columnProps?.textWrap &&\n !rowTextWrap &&\n !this.getCellOptions(cell, \"textWrap\") &&\n columnProps?.dataType !== \"element\"\n ) {\n return {\n [this.ROW_HEIGHT_CSS_VARIABLE]: this.setRowHeight(currentRowHeight),\n };\n }\n\n return {};\n };\n\n private createCells = (row: IcDataTableDataType, rowIndex: number) => {\n const rowValues = Object.values(row);\n const rowKeys = Object.keys(row);\n\n const rowOptions = this.getRowOptions(rowKeys, rowValues);\n let rowAlignment: string;\n let rowEmphasis: string;\n\n const headerIndex = rowKeys.indexOf(\"header\");\n if (headerIndex > -1) {\n rowAlignment = this.getObjectValue(\n rowValues[headerIndex],\n \"rowAlignment\"\n );\n rowEmphasis = this.getObjectValue(rowValues[headerIndex], \"emphasis\");\n }\n\n const variableRowHeightVal = this.variableRowHeight?.({\n ...row,\n index: rowIndex,\n });\n const currentRowHeight = variableRowHeightVal\n ? variableRowHeightVal !== \"auto\" && variableRowHeightVal\n : this.globalRowHeight !== \"auto\" && this.globalRowHeight;\n\n return rowValues.map((cell, index) => {\n const columnProps = this.columns[index];\n const cellSlotName = `${columnProps?.key}-${rowIndex}`;\n const hasIcon = this.isObject(cell) && Object.keys(cell).includes(\"icon\");\n const cellValue = (key: string) => this.getObjectValue(cell, key);\n\n if (rowKeys[index] === \"header\") {\n return (\n <th\n scope=\"row\"\n colSpan={cellValue(\"colspan\")}\n class={{\n [\"row-header\"]: true,\n [`row-header-alignment-${cellValue(\"cellAlignment\")}`]:\n !!cellValue(\"cellAlignment\"),\n [\"row-header-sticky\"]: this.stickyRowHeaders,\n }}\n >\n {cellValue(\"title\")}\n </th>\n );\n }\n\n if (rowKeys[index] !== \"rowOptions\") {\n return (\n <td\n class={{\n [\"table-cell\"]: true,\n [`table-density-${this.density}`]: this.notDefaultDensity(),\n [\"with-overflow\"]: columnProps?.dataType === \"element\",\n }}\n style={{ ...this.getColumnWidth(columnProps.columnWidth) }}\n >\n <div\n innerHTML={\n columnProps?.dataType === \"element\" &&\n !isSlotUsed(this.el, cellSlotName)\n ? (cell as string)\n : null\n }\n class={{\n \"cell-container\": columnProps?.dataType !== \"element\",\n [`cell-alignment-${\n columnProps?.columnAlignment?.vertical ||\n rowOptions?.rowAlignment?.vertical ||\n rowAlignment ||\n this.getCellAlignment(cell, \"vertical\")\n }`]:\n !!columnProps?.columnAlignment?.vertical ||\n !!rowOptions?.rowAlignment?.vertical ||\n !!rowAlignment ||\n !!this.getCellAlignment(cell, \"vertical\"),\n [`cell-alignment-${\n columnProps?.columnAlignment?.horizontal ||\n rowOptions?.rowAlignment?.horizontal ||\n this.getCellAlignment(cell, \"horizontal\")\n }`]:\n !!columnProps?.columnAlignment?.horizontal ||\n !!rowOptions?.rowAlignment?.horizontal ||\n !!this.getCellAlignment(cell, \"horizontal\"),\n [`data-type-${columnProps?.dataType}`]: true,\n [this.TEXT_WRAP_STRING]:\n columnProps?.textWrap ||\n rowOptions?.textWrap ||\n !!this.getCellOptions(cell, \"textWrap\"),\n [\"cell-icon\"]: hasIcon || !!columnProps?.icon?.icon,\n ...this.setTruncationClass(),\n }}\n style={{\n ...this.getRowHeight(\n currentRowHeight,\n columnProps,\n rowOptions?.textWrap,\n cell\n ),\n ...this.getColumnWidth(columnProps?.columnWidth),\n }}\n data-row-height={\n this.truncationPattern || currentRowHeight\n ? this.setRowHeight(currentRowHeight)\n : null\n }\n >\n {isSlotUsed(this.el, cellSlotName) ? (\n <slot name={cellSlotName} />\n ) : (\n <Fragment>\n {isSlotUsed(this.el, `${cellSlotName}-icon`) ? (\n <slot name={`${cellSlotName}-icon`} />\n ) : (\n (hasIcon || columnProps?.icon?.onAllCells) &&\n (cellValue(\"icon\") || columnProps?.icon?.icon) && (\n <span\n class=\"icon\"\n innerHTML={cellValue(\"icon\") || columnProps?.icon?.icon}\n ></span>\n )\n )}\n {columnProps?.dataType !== \"element\" &&\n !isSlotUsed(this.el, cellSlotName) && (\n <ic-typography\n variant=\"body\"\n class={{\n [`cell-emphasis-${\n (this.isObject(cell) && cellValue(\"emphasis\")) ||\n columnProps?.emphasis ||\n rowEmphasis\n }`]:\n (this.isObject(cell) && !!cellValue(\"emphasis\")) ||\n !!columnProps?.emphasis ||\n !!rowEmphasis,\n [`text-${this.density}`]: this.notDefaultDensity(),\n }}\n >\n {this.isObject(cell) &&\n columnProps?.dataType !== \"date\" ? (\n Object.keys(cell).includes(\"href\") ? (\n <ic-link href={cellValue(\"href\")}>\n {cellValue(\"data\")}\n </ic-link>\n ) : (\n cellValue(\"data\")\n )\n ) : (\n this.getCellContent(cell, columnProps?.dataType)\n )}\n </ic-typography>\n )}\n </Fragment>\n )}\n </div>\n </td>\n );\n }\n });\n };\n\n private createColumnHeaders = () => {\n return this.columns.map(\n ({ cellAlignment, colspan, icon, key, title, columnWidth }) => (\n <th\n scope=\"col\"\n class={{\n [\"column-header\"]: true,\n [`table-density-${this.density}`]: this.notDefaultDensity(),\n [\"updating-state-headers\"]: this.updating && !this.loading,\n }}\n style={{ ...this.getColumnWidth(columnWidth) }}\n colSpan={colspan}\n >\n <div\n class={{\n \"column-header-inner-container\": true,\n [`column-header-alignment-${cellAlignment}`]: !!cellAlignment,\n }}\n >\n {isSlotUsed(this.el, `${key}-column-icon`) ? (\n <slot name={`${key}-column-icon`} />\n ) : (\n icon &&\n !icon.hideOnHeader && (\n <span class=\"icon\" innerHTML={icon.icon}></span>\n )\n )}\n <ic-typography\n variant=\"body\"\n class={{\n [\"column-header-text\"]: true,\n [`text-${this.density}`]: this.notDefaultDensity(),\n }}\n >\n {title}\n </ic-typography>\n {this.sortable && (\n <ic-button\n variant=\"icon\"\n id={`sort-button-${key}`}\n aria-label={this.getSortButtonLabel(key)}\n // eslint-disable-next-line react/jsx-no-bind\n onClick={() => this.sortRows(key)}\n innerHTML={\n this.SORT_ICONS[\n this.sortedColumn === key\n ? this.sortedColumnOrder\n : \"unsorted\"\n ]\n }\n class={{\n [\"sort-button\"]: true,\n [\"sort-button-unsorted\"]:\n this.sortedColumn !== key ||\n this.sortedColumnOrder === \"unsorted\",\n }}\n ></ic-button>\n )}\n </div>\n </th>\n )\n );\n };\n\n private onRowClick = (row: object) => {\n this.selectedRow =\n this.selectedRow !== row && !this.loading && !this.updating && row;\n };\n\n private createRows = () => {\n const data = this.showPagination\n ? this.data.slice(this.fromRow, this.toRow)\n : this.data.slice();\n\n /**\n * Ensures that createCells has a value in data to map over to actually render the slot.\n * Removes the need for the user to add it multiple times.\n * `addDataToPosition` used to add the element in the correct column order.\n * Adding empty string value in to give `createCells` something to loop over.\n */\n const organisedData = data.map((row, rowIndex) => {\n const slottedColumns = this.columns\n .map(\n ({ key }, index) =>\n isSlotUsed(this.el, `${key}-${rowIndex}`) && { key, index }\n )\n .filter((col) => !!col);\n return slottedColumns.length > 0\n ? addDataToPosition(row, slottedColumns, \"\")\n : row;\n });\n\n return organisedData\n .sort(!this.sortable ? undefined : this.getSortFunction())\n .map((row, index) => {\n return (\n <tr\n // eslint-disable-next-line react/jsx-no-bind\n onClick={() => this.onRowClick(row)}\n class={{\n [\"table-row\"]: true,\n [\"table-row-selected\"]: this.selectedRow === row,\n }}\n >\n {this.createCells(row, index)}\n </tr>\n );\n });\n };\n\n private getObjectValue = (cell: object, key: string) => {\n return Object.values(cell)[Object.keys(cell).indexOf(key)];\n };\n\n private getSortButtonLabel = (key: string) => {\n let label = \"\";\n const getNextSortOption = (option: IcDataTableSortOrderOptions) => {\n const sortOrders = this.sortOptions.sortOrders;\n return sortOrders[(sortOrders.indexOf(option) + 1) % sortOrders.length];\n };\n\n if (this.sortedColumn === key) {\n const sortOption = getNextSortOption(this.sortedColumnOrder);\n label = sortOption !== \"unsorted\" ? `Sort ${sortOption}` : \"Remove sort\";\n } else {\n label = `Sort ${getNextSortOption(\"unsorted\")}`;\n }\n\n return label;\n };\n\n private getComparison = (targetRow: any, comparisonRow: any): number => {\n const targetRowValue = targetRow[this.sortedColumn];\n const comparisonRowValue = comparisonRow[this.sortedColumn];\n return this.columns.find((col) => col.key === this.sortedColumn)\n .dataType === \"date\"\n ? new Date(targetRowValue).valueOf() -\n new Date(comparisonRowValue).valueOf()\n : String(\n this.isObject(targetRowValue)\n ? Object.values(targetRowValue)[0]\n : targetRowValue\n ).localeCompare(\n String(\n this.isObject(comparisonRowValue)\n ? Object.values(comparisonRowValue)[0]\n : comparisonRowValue\n ),\n undefined,\n { numeric: true, sensitivity: \"base\" }\n );\n };\n\n private getSortFunction = () => {\n switch (this.sortedColumnOrder) {\n case \"ascending\":\n return (a: any, b: any) => this.getComparison(a, b);\n case \"descending\":\n return (a: any, b: any) => this.getComparison(b, a);\n default:\n return undefined;\n }\n };\n\n private sortRows = (column: string) => {\n const sortButton = this.el.shadowRoot.querySelector(\n `#sort-button-${column}`\n ) as HTMLIcButtonElement;\n\n const sortOrders = this.sortOptions.sortOrders;\n\n if (column !== this.sortedColumn) {\n if (this.sortedColumn) {\n const previousSortedButton = this.el.shadowRoot.querySelector(\n `#sort-button-${this.sortedColumn}`\n ) as HTMLIcButtonElement;\n previousSortedButton.setAttribute(\n \"aria-label\",\n this.getSortButtonLabel(column)\n ); // Passing through unsorted column returns correct label for newly unsorted column\n }\n this.sortedColumn = column;\n this.sortedColumnOrder = \"unsorted\";\n }\n\n let nextSortOrderIndex = sortOrders.indexOf(this.sortedColumnOrder) + 1;\n\n if (nextSortOrderIndex > sortOrders.length - 1) {\n nextSortOrderIndex = 0;\n }\n\n this.sortedColumnOrder = sortOrders[nextSortOrderIndex];\n\n sortButton.setAttribute(\"aria-label\", this.getSortButtonLabel(column));\n\n this.tableSorted = true;\n\n this.icSortChange.emit({\n columnName: column,\n sorted: this.sortedColumnOrder,\n });\n };\n\n private getTypographyElements = (): HTMLIcTypographyElement[] => {\n return Array.from(\n this.el.shadowRoot.querySelectorAll(\n \"ic-typography:not(.column-header-text)\"\n )\n );\n };\n\n private getTooltip = (\n typographyEl: HTMLIcTypographyElement\n ): HTMLIcTooltipElement => {\n return typographyEl.closest(this.TOOLTIP);\n };\n\n private updateTruncationTooltip = (removeTooltipOnly = false) => {\n this.getTypographyElements().forEach(\n (typographyEl: HTMLIcTypographyElement) => {\n const tooltip = this.getTooltip(typographyEl);\n const cellContainer = this.getCellContainer(typographyEl);\n\n if (typographyEl.closest(this.TEXT_WRAP_CLASS)) {\n this.removeTooltip(cellContainer, typographyEl, tooltip);\n typographyEl.setAttribute(\"style\", `--ic-line-clamp: 0`);\n return;\n }\n\n this.regenerateTooltip(\n cellContainer,\n typographyEl,\n tooltip,\n removeTooltipOnly\n );\n }\n );\n };\n\n private updateScrollOffset = () => {\n this.scrollOffset = this.el.shadowRoot.querySelector(\n \".table-row-container\"\n ).scrollTop;\n };\n\n private getRowOptions(rowKeys: string[], rowValues: any[]) {\n const rowOptionsIndex = rowKeys.indexOf(\"rowOptions\");\n return rowOptionsIndex > -1 && rowValues[rowOptionsIndex];\n }\n\n private regenerateTooltip(\n cellContainer: HTMLElement,\n typographyEl: HTMLIcTypographyElement,\n tooltip: HTMLIcTooltipElement,\n removeTooltipOnly?: boolean\n ) {\n // When sorting the table, instead of regenerating the tooltip,\n // the tooltip details are updated\n\n if (tooltip) {\n if (this.tableSorted) {\n tooltip.setAttribute(\"target\", typographyEl.id);\n tooltip.setAttribute(\"label\", typographyEl.textContent);\n } else {\n this.removeTooltip(cellContainer, typographyEl, tooltip);\n }\n if (removeTooltipOnly) {\n return;\n }\n }\n\n // This add line clamp to data only when\n // the data object has been updated\n if (!typographyEl.getAttribute(\"style\") && this.dataUpdated) {\n this.addLineClampCSS(typographyEl, cellContainer);\n }\n\n if (\n typographyEl?.scrollHeight > cellContainer?.clientHeight &&\n this.truncationPattern === this.TOOLTIP_STRING\n ) {\n if (\n !typographyEl.getAttribute(\"style\") ||\n typographyEl.style.cssText.includes(\"--ic-line-clamp: 0;\")\n ) {\n this.addLineClampCSS(typographyEl, cellContainer);\n }\n this.createTruncationTooltip(typographyEl, cellContainer);\n }\n }\n private setTableDimensions = () => {\n let tableHostDimensions = {};\n\n if (this.width) {\n tableHostDimensions = {\n ...tableHostDimensions,\n [\"--table-width\"]: this.width,\n };\n }\n\n if (this.height) {\n tableHostDimensions = {\n ...tableHostDimensions,\n [\"--table-height\"]: this.height,\n };\n }\n\n if (this.maxWidth) {\n tableHostDimensions = {\n ...tableHostDimensions,\n [\"--table-max-width\"]: this.maxWidth,\n };\n }\n\n if (this.minWidth) {\n tableHostDimensions = {\n ...tableHostDimensions,\n [\"--table-min-width\"]: this.minWidth,\n };\n }\n\n return tableHostDimensions;\n };\n\n private removeTooltip(\n cellContainer: HTMLElement,\n typographyEl: HTMLIcTypographyElement,\n tooltip: HTMLIcTooltipElement\n ) {\n cellContainer.appendChild(typographyEl);\n if (tooltip) {\n tooltip.remove();\n }\n }\n\n private addLineClampCSS(\n typographyEl: HTMLIcTypographyElement,\n cellContainer: HTMLElement\n ) {\n typographyEl.setAttribute(\n \"style\",\n `--ic-line-clamp: ${this.getLines(cellContainer?.clientHeight)}`\n );\n }\n\n private createTruncationTooltip(\n typographyEl: HTMLIcTypographyElement,\n cellContainer: HTMLElement\n ) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", typographyEl.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent);\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n tooltipEl.setExternalPopperProps({\n // This might need reverting back to absolute if the tooltip doesn't dynamically position itself correctly\n strategy: \"fixed\",\n });\n cellContainer.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n\n render() {\n const {\n caption,\n createColumnHeaders,\n createRows,\n createUpdatingIndicator,\n data,\n hideColumnHeaders,\n loading,\n loadingOptions,\n paginationBarOptions,\n scrollable,\n scrollOffset,\n showPagination,\n sortable,\n sortedColumnOrder,\n sortedColumn,\n stickyColumnHeaders,\n updateScrollOffset,\n updating,\n } = this;\n\n return (\n <Host style={{ ...this.setTableDimensions() }}>\n <div class=\"table-container\">\n {isSlotUsed(this.el, \"title-bar\") && <slot name=\"title-bar\" />}\n <div\n class={{\n [\"table-row-container\"]: true,\n scrollable,\n }}\n tabIndex={scrollable ? 0 : null}\n onScroll={updateScrollOffset}\n >\n {isSlotUsed(this.el, \"title-bar\") && <slot name=\"title-bar\" />}\n <table\n style={{\n [\"--table-layout\"]: this.tableLayout,\n }}\n >\n <caption class=\"table-caption\">{caption}</caption>\n {!hideColumnHeaders && (\n <thead\n class={{\n [\"column-header-sticky\"]: stickyColumnHeaders,\n [\"column-header-overlay\"]:\n stickyColumnHeaders && scrollOffset !== 0,\n }}\n >\n <tr>{createColumnHeaders()}</tr>\n </thead>\n )}\n {updating &&\n !loading &&\n (hideColumnHeaders ? (\n <thead>{createUpdatingIndicator()}</thead>\n ) : (\n createUpdatingIndicator()\n ))}\n {data?.length > 0 && !loading && <tbody>{createRows()}</tbody>}\n </table>\n {!data?.length &&\n !loading &&\n (isSlotUsed(this.el, \"empty-state\") ? (\n <slot name=\"empty-state\" />\n ) : (\n <ic-empty-state\n aligned=\"center\"\n heading=\"No Data\"\n class=\"loading-empty\"\n ></ic-empty-state>\n ))}\n </div>\n {loading && (\n <ic-loading-indicator\n theme={loadingOptions?.appearance}\n monochrome={loadingOptions?.monochrome}\n class={{\n \"loading-empty\": loading,\n loading: true,\n \"show-background\": loadingOptions.showBackground,\n }}\n description={loadingOptions.description || \"Loading table data\"}\n label={loadingOptions.label || \"Loading...\"}\n labelDuration={loadingOptions?.labelDuration}\n max={loadingOptions?.max}\n min={loadingOptions?.min}\n progress={loadingOptions?.progress}\n ref={(el: HTMLIcLoadingIndicatorElement) =>\n (this.loadingIndicator = el)\n }\n ></ic-loading-indicator>\n )}\n {(showPagination || isSlotUsed(this.el, \"pagination-bar\")) && (\n <div class=\"pagination-container\">\n {isSlotUsed(this.el, \"pagination-bar\") ? (\n <slot name=\"pagination-bar\" />\n ) : (\n <ic-pagination-bar\n totalItems={data.length}\n type={paginationBarOptions.type}\n rangeLabelType={paginationBarOptions.rangeLabelType}\n showItemsPerPageControl={\n paginationBarOptions.showItemsPerPageControl\n }\n showGoToPageControl={paginationBarOptions.showGoToPageControl}\n itemsPerPageOptions={paginationBarOptions.itemsPerPageOptions}\n alignment={paginationBarOptions.alignment}\n appearance={paginationBarOptions.appearance}\n itemLabel={paginationBarOptions.itemLabel}\n pageLabel={paginationBarOptions.pageLabel}\n hideRangeLabel={paginationBarOptions.hideRangeLabel}\n ></ic-pagination-bar>\n )}\n </div>\n )}\n {sortable && (\n <div class=\"screen-reader-sort-text\" aria-live=\"polite\">\n {sortedColumnOrder !== \"unsorted\" && sortedColumn\n ? `${sortedColumn} sorted ${sortedColumnOrder}`\n : \"table unsorted\"}\n </div>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as o,h as e,H as i,g as c}from"./p-8455d1bb.js";import{r as n,a,i as r}from"./p-9397b15b.js";const s='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{--button-border:var(\n --toggle-button-border,\n var(--ic-border-width) solid var(--ic-action-default)\n )}:host(.ic-toggle-button-dark){--button-border:var(\n --toggle-button-border,\n var(--ic-border-width) solid var(--ic-action-dark)\n )}:host(.ic-toggle-button-light){--button-border:var(\n --toggle-button-border,\n var(--ic-border-width) solid var(--ic-action-light)\n )}:host(.ic-toggle-button-disabled){--button-border:var(--toggle-button-border, var(--ic-border-disabled))}:host(.expand-toggle-group-child) ::part(button){width:100%;min-height:inherit;white-space:inherit;height:inherit}:host ic-button{--icon-width:var(--ic-space-lg);--icon-height:var(--ic-space-lg)}:host(.expand-toggle-group-child) ic-button{min-width:100%;min-height:100%;white-space:normal;height:100%}:host(.expand-toggle-group-child) ::part(button):focus,:host(.expand-toggle-group-child.ic-toggle-button-checked) ::part(button):focus{box-shadow:inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-default),\n var(--ic-border-focus)}:host(.expand-toggle-group-child.ic-toggle-button-light) ::part(button):focus,:host(.expand-toggle-group-child.ic-toggle-button-dark) ::part(button):focus{box-shadow:inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-dark),\n var(--ic-border-focus)}:host(:focus){z-index:1}:host ::part(button){border:var(--button-border)}:host(.ic-toggle-button-checked) ::part(button){background-color:var(--ic-action-default);color:var(--ic-architectural-white);box-shadow:inset 0 0 0 var(--ic-space-xxxs) var(--ic-architectural-white)}:host(.ic-toggle-button-checked) ::part(button):focus{box-shadow:inset 0 0 0 var(--ic-space-xxxs) var(--ic-architectural-white),\n var(--ic-border-focus)}:host(.ic-toggle-button-checked) ::part(button):hover{background-color:var(--button-default-hover)}:host(.ic-toggle-button-checked) ::part(button):active,:host(.ic-toggle-button-icon.ic-toggle-button-checked) ::part(button):active{background-color:var(--ic-action-default-pressed)}:host(.ic-toggle-button-dark.ic-toggle-button-checked) ::part(button){background-color:var(--ic-action-dark)}:host(.ic-toggle-button-dark.ic-toggle-button-checked) ::part(button):hover{background-color:var(--ic-action-dark-hover)}:host(.ic-toggle-button-dark.ic-toggle-button-checked) ::part(button):active,:host(.ic-toggle-button-icon.ic-toggle-button-dark.ic-toggle-button-checked) ::part(button):active{background-color:var(--ic-action-dark-pressed)}:host(.ic-toggle-button-light.ic-toggle-button-checked) ::part(button){background-color:var(--ic-action-light);color:var(--ic-color-text-primary);box-shadow:inset 0 0 0 var(--ic-space-xxxs) var(--ic-architectural-black)}:host(.ic-toggle-button-light.ic-toggle-button-checked) ::part(button):hover{background-color:var(--ic-action-light-hover)}:host(.ic-toggle-button-light.ic-toggle-button-checked) ::part(button):active,:host(.ic-toggle-button-icon.ic-toggle-button-light.ic-toggle-button-checked) ::part(button):active{background-color:var(--ic-action-light-pressed)}:host(.ic-toggle-button-light.ic-toggle-button-checked) ::part(button):focus{box-shadow:inset 0 0 0 var(--ic-space-xxxs) var(--ic-architectural-black),\n var(--ic-border-focus)}:host(.ic-toggle-button-disabled) ::part(button),:host(.ic-toggle-button-icon.ic-toggle-button-disabled) ::part(button){border:var(--button-border)}:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button){background-color:transparent}:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button)::before{background-image:radial-gradient(var(--ic-architectural-400) 95%, white 20%);background-repeat:no-repeat}:host(.ic-toggle-button-icon) ::part(button){border:var(--button-border);height:calc(var(--ic-space-xl) + var(--ic-space-xs));width:calc(var(--ic-space-xl) + var(--ic-space-xs))}:host(.ic-toggle-button-icon) ::part(button):active{background-color:var(--ic-action-default-bg-active)}:host(.ic-toggle-button-icon.ic-toggle-button-dark) ::part(button):active{background-color:var(--ic-action-dark-bg-pressed)}:host(.ic-toggle-button-icon.ic-toggle-button-light) ::part(button):active{background-color:var(--ic-action-light-bg-pressed)}:host(.ic-toggle-button-icon.ic-toggle-button-small) ::part(button){height:var(--ic-space-xl);width:var(--ic-space-xl)}:host(.ic-toggle-button-icon.ic-toggle-button-large) ::part(button){height:var(--ic-space-xxl);width:var(--ic-space-xxl)}:host(.ic-toggle-button-checked.ic-toggle-button-loading) ::part(button){background-color:var(--button-default-active)}:host(.ic-toggle-button-loading) ::part(ic-loading-container){--inner-color:var(--ic-architectural-white)}:host(.ic-toggle-button-checked.ic-toggle-button-loading.ic-toggle-button-light) ::part(button){background-color:var(--ic-action-light-pressed)}:host(.ic-toggle-button-checked.ic-toggle-button-loading.ic-toggle-button-dark) ::part(button){background-color:var(--ic-action-dark-pressed)}@media (forced-colors: active){:host(.ic-toggle-button-checked) ::part(button),:host(.ic-toggle-button-checked) ::part(button):hover{background-color:Highlight}:host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button),:host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button):hover{background-color:Highlight}:host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button),:host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button):hover{background-color:Highlight}:host(.ic-toggle-button-checked.ic-toggle-button-disabled) ::part(button){background-color:GrayText}}';const g=class{constructor(e){t(this,e);this.icToggleChecked=o(this,"icToggleChecked",7);this.handleFocus=t=>{t.stopImmediatePropagation()};this.handleClick=()=>{!this.loading&&!this.disabled&&this.icToggleChecked.emit({checked:this.checked})};this.accessibleLabel=undefined;this.appearance="default";this.disabled=false;this.fullWidth=false;this.iconPlacement=undefined;this.label=undefined;this.loading=false;this.size="medium";this.checked=false;this.variant="default"}componentWillLoad(){n(this.disabled,this.el);const t=this.el.parentElement.iconPlacement;this.iconPosition=this.iconPlacement||t||"left"}componentDidLoad(){a([{prop:this.variant==="icon"?this.accessibleLabel:this.label,propName:this.variant==="icon"?"accessible-label":"label"}],"Toggle button")}handleHostClick(t){if(this.disabled){t.stopImmediatePropagation()}else if(!this.loading){this.checked=!this.checked}}render(){return e(i,{class:{["ic-toggle-button-disabled"]:this.disabled,["ic-toggle-button-checked"]:this.checked,[`ic-toggle-button-${this.appearance}`]:true,["ic-toggle-button-icon"]:this.variant==="icon",[`ic-toggle-button-${this.size}`]:true,["ic-toggle-button-loading"]:this.loading},onFocus:this.handleFocus},e("ic-button",{"aria-pressed":this.checked.toString(),variant:this.variant==="icon"?"icon":"secondary",onClick:this.handleClick,title:this.accessibleLabel,"aria-label":`${this.accessibleLabel?this.accessibleLabel:this.label}, ${this.checked?"ticked":"unticked"}`,disabled:this.disabled,appearance:this.appearance,size:this.size,fullWidth:this.fullWidth,loading:this.loading,"aria-disabled":`${this.disabled}`},this.variant!=="icon"&&this.label,e("slot",null),r(this.el,"icon")&&e("slot",{name:"icon",slot:`${this.iconPosition}-icon`}),r(this.el,"badge")&&e("slot",{name:"badge",slot:"badge"})))}static get delegatesFocus(){return true}get el(){return c(this)}};g.style=s;export{g as ic_toggle_button};
2
+ //# sourceMappingURL=p-ed4cde5a.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icToggleButtonCss","ToggleButton","constructor","hostRef","this","handleFocus","ev","stopImmediatePropagation","handleClick","loading","disabled","icToggleChecked","emit","checked","accessibleLabel","undefined","appearance","fullWidth","iconPlacement","label","size","variant","componentWillLoad","removeDisabledFalse","el","parentIconPlacement","parentElement","iconPosition","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","handleHostClick","e","render","h","Host","class","onFocus","toString","onClick","title","isSlotUsed","name","slot","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-toggle-button/ic-toggle-button.css?tag=ic-toggle-button&encapsulation=shadow","../web-components/dist/collection/components/ic-toggle-button/ic-toggle-button.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n/* VARIABLES FOR IC-TOGGLE-BUTTON-GROUP */\n:host {\n --button-border: var(\n --toggle-button-border,\n var(--ic-border-width) solid var(--ic-action-default)\n );\n}\n\n:host(.ic-toggle-button-dark) {\n --button-border: var(\n --toggle-button-border,\n var(--ic-border-width) solid var(--ic-action-dark)\n );\n}\n\n:host(.ic-toggle-button-light) {\n --button-border: var(\n --toggle-button-border,\n var(--ic-border-width) solid var(--ic-action-light)\n );\n}\n\n:host(.ic-toggle-button-disabled) {\n --button-border: var(--toggle-button-border, var(--ic-border-disabled));\n}\n\n:host(.expand-toggle-group-child) ::part(button) {\n width: 100%;\n min-height: inherit;\n white-space: inherit;\n height: inherit;\n}\n\n:host ic-button {\n --icon-width: var(--ic-space-lg);\n --icon-height: var(--ic-space-lg);\n}\n\n:host(.expand-toggle-group-child) ic-button {\n min-width: 100%;\n min-height: 100%;\n white-space: normal;\n height: 100%;\n}\n\n:host(.expand-toggle-group-child) ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-checked)\n ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-default),\n var(--ic-border-focus);\n}\n\n:host(.expand-toggle-group-child.ic-toggle-button-light) ::part(button):focus,\n:host(.expand-toggle-group-child.ic-toggle-button-dark) ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-action-dark),\n var(--ic-border-focus);\n}\n\n:host(:focus) {\n z-index: 1;\n}\n\n:host ::part(button) {\n border: var(--button-border);\n}\n\n:host(.ic-toggle-button-checked) ::part(button) {\n background-color: var(--ic-action-default);\n color: var(--ic-architectural-white);\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-architectural-white);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-architectural-white),\n var(--ic-border-focus);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):hover {\n background-color: var(--button-default-hover);\n}\n\n:host(.ic-toggle-button-checked) ::part(button):active,\n:host(.ic-toggle-button-icon.ic-toggle-button-checked) ::part(button):active {\n background-color: var(--ic-action-default-pressed);\n}\n\n:host(.ic-toggle-button-dark.ic-toggle-button-checked) ::part(button) {\n background-color: var(--ic-action-dark);\n}\n\n:host(.ic-toggle-button-dark.ic-toggle-button-checked) ::part(button):hover {\n background-color: var(--ic-action-dark-hover);\n}\n\n:host(.ic-toggle-button-dark.ic-toggle-button-checked) ::part(button):active,\n:host(.ic-toggle-button-icon.ic-toggle-button-dark.ic-toggle-button-checked)\n ::part(button):active {\n background-color: var(--ic-action-dark-pressed);\n}\n\n:host(.ic-toggle-button-light.ic-toggle-button-checked) ::part(button) {\n background-color: var(--ic-action-light);\n color: var(--ic-color-text-primary);\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-architectural-black);\n}\n\n:host(.ic-toggle-button-light.ic-toggle-button-checked) ::part(button):hover {\n background-color: var(--ic-action-light-hover);\n}\n\n:host(.ic-toggle-button-light.ic-toggle-button-checked) ::part(button):active,\n:host(.ic-toggle-button-icon.ic-toggle-button-light.ic-toggle-button-checked)\n ::part(button):active {\n background-color: var(--ic-action-light-pressed);\n}\n\n:host(.ic-toggle-button-light.ic-toggle-button-checked) ::part(button):focus {\n box-shadow: inset 0 0 0 var(--ic-space-xxxs) var(--ic-architectural-black),\n var(--ic-border-focus);\n}\n\n:host(.ic-toggle-button-disabled) ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled) ::part(button) {\n border: var(--button-border);\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked)\n ::part(button) {\n background-color: transparent;\n}\n\n:host(.ic-toggle-button-disabled.ic-toggle-button-checked) ::part(button),\n:host(.ic-toggle-button-icon.ic-toggle-button-disabled.ic-toggle-button-checked)\n ::part(button)::before {\n background-image: radial-gradient(var(--ic-architectural-400) 95%, white 20%);\n background-repeat: no-repeat;\n}\n\n:host(.ic-toggle-button-icon) ::part(button) {\n border: var(--button-border);\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n width: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-toggle-button-icon) ::part(button):active {\n background-color: var(--ic-action-default-bg-active);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-dark) ::part(button):active {\n background-color: var(--ic-action-dark-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-light) ::part(button):active {\n background-color: var(--ic-action-light-bg-pressed);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-small) ::part(button) {\n height: var(--ic-space-xl);\n width: var(--ic-space-xl);\n}\n\n:host(.ic-toggle-button-icon.ic-toggle-button-large) ::part(button) {\n height: var(--ic-space-xxl);\n width: var(--ic-space-xxl);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading) ::part(button) {\n background-color: var(--button-default-active);\n}\n\n:host(.ic-toggle-button-loading) ::part(ic-loading-container) {\n --inner-color: var(--ic-architectural-white);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading.ic-toggle-button-light)\n ::part(button) {\n background-color: var(--ic-action-light-pressed);\n}\n\n:host(.ic-toggle-button-checked.ic-toggle-button-loading.ic-toggle-button-dark)\n ::part(button) {\n background-color: var(--ic-action-dark-pressed);\n}\n\n@media (forced-colors: active) {\n :host(.ic-toggle-button-checked) ::part(button),\n :host(.ic-toggle-button-checked) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-light) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button),\n :host(.ic-toggle-button-checked.ic-toggle-button-dark) ::part(button):hover {\n background-color: Highlight;\n }\n\n :host(.ic-toggle-button-checked.ic-toggle-button-disabled) ::part(button) {\n background-color: GrayText;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { isSlotUsed, onComponentRequiredPropUndefined, removeDisabledFalse, } from \"../../utils/helpers\";\n/**\n * @slot icon - Content will be displayed alongside the toggle button label.\n * @slot badge - Badge component overlaying the top right of the toggle button.\n */\nexport class ToggleButton {\n constructor() {\n this.handleFocus = (ev) => {\n ev.stopImmediatePropagation();\n };\n this.handleClick = () => {\n !this.loading &&\n !this.disabled &&\n this.icToggleChecked.emit({\n checked: this.checked,\n });\n };\n this.accessibleLabel = undefined;\n this.appearance = \"default\";\n this.disabled = false;\n this.fullWidth = false;\n this.iconPlacement = undefined;\n this.label = undefined;\n this.loading = false;\n this.size = \"medium\";\n this.checked = false;\n this.variant = \"default\";\n }\n componentWillLoad() {\n removeDisabledFalse(this.disabled, this.el);\n const parentIconPlacement = this.el.parentElement.iconPlacement;\n this.iconPosition = this.iconPlacement || parentIconPlacement || \"left\";\n }\n componentDidLoad() {\n onComponentRequiredPropUndefined([\n {\n prop: this.variant === \"icon\" ? this.accessibleLabel : this.label,\n propName: this.variant === \"icon\" ? \"accessible-label\" : \"label\",\n },\n ], \"Toggle button\");\n }\n handleHostClick(e) {\n if (this.disabled) {\n e.stopImmediatePropagation();\n }\n else if (!this.loading) {\n this.checked = !this.checked;\n }\n }\n render() {\n return (h(Host, { class: {\n [\"ic-toggle-button-disabled\"]: this.disabled,\n [\"ic-toggle-button-checked\"]: this.checked,\n [`ic-toggle-button-${this.appearance}`]: true,\n [\"ic-toggle-button-icon\"]: this.variant === \"icon\",\n [`ic-toggle-button-${this.size}`]: true,\n [\"ic-toggle-button-loading\"]: this.loading,\n }, onFocus: this.handleFocus }, h(\"ic-button\", { \"aria-pressed\": this.checked.toString(), variant: this.variant === \"icon\" ? \"icon\" : \"secondary\", onClick: this.handleClick, title: this.accessibleLabel, \"aria-label\": `${this.accessibleLabel ? this.accessibleLabel : this.label}, ${this.checked ? \"ticked\" : \"unticked\"}`, disabled: this.disabled, appearance: this.appearance, size: this.size, fullWidth: this.fullWidth, loading: this.loading, \"aria-disabled\": `${this.disabled}` }, this.variant !== \"icon\" && this.label, h(\"slot\", null), isSlotUsed(this.el, \"icon\") && (h(\"slot\", { name: \"icon\", slot: `${this.iconPosition}-icon` })), isSlotUsed(this.el, \"badge\") && (h(\"slot\", { name: \"badge\", slot: \"badge\" })))));\n }\n static get is() { return \"ic-toggle-button\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-toggle-button.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-toggle-button.css\"]\n };\n }\n static get properties() {\n return {\n \"accessibleLabel\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The accessible label that will be applied to the toggle button. This is required for the icon variant of toggle buttons.\"\n },\n \"attribute\": \"accessible-label\",\n \"reflect\": false\n },\n \"appearance\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeForeground\",\n \"resolved\": \"\\\"dark\\\" | \\\"default\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeForeground\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeForeground\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The appearance of the toggle button.\"\n },\n \"attribute\": \"appearance\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in disabled state.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"fullWidth\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will fill the width of the container.\"\n },\n \"attribute\": \"full-width\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"iconPlacement\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"left\\\" | \\\"right\\\" | \\\"top\\\"\",\n \"resolved\": \"\\\"left\\\" | \\\"right\\\" | \\\"top\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The placement of the icon in relation to the toggle button label.\"\n },\n \"attribute\": \"icon-placement\",\n \"reflect\": false\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label to display in the toggle button. This is required for the default variant of toggle buttons.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"loading\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in loading state.\"\n },\n \"attribute\": \"loading\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizes\",\n \"resolved\": \"\\\"large\\\" | \\\"medium\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the toggle button to be displayed.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"medium\\\"\"\n },\n \"checked\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the toggle button will be in a checked state.\"\n },\n \"attribute\": \"checked\",\n \"reflect\": true,\n \"defaultValue\": \"false\"\n },\n \"variant\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"default\\\" | \\\"icon\\\"\",\n \"resolved\": \"\\\"default\\\" | \\\"icon\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The variant of the toggle button.\"\n },\n \"attribute\": \"variant\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"default\\\"\"\n }\n };\n }\n static get events() {\n return [{\n \"method\": \"icToggleChecked\",\n \"name\": \"icToggleChecked\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the user clicks a toggle button.\"\n },\n \"complexType\": {\n \"original\": \"{\\n checked: boolean;\\n }\",\n \"resolved\": \"{ checked: boolean; }\",\n \"references\": {}\n }\n }];\n }\n static get elementRef() { return \"el\"; }\n static get listeners() {\n return [{\n \"name\": \"click\",\n \"method\": \"handleHostClick\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-toggle-button.js.map\n"],"mappings":"6GAAA,MAAMA,EAAoB,o8P,MCMbC,EAAY,MACrB,WAAAC,CAAAC,G,2DACIC,KAAKC,YAAeC,IAChBA,EAAGC,0BAA0B,EAEjCH,KAAKI,YAAc,MACdJ,KAAKK,UACDL,KAAKM,UACNN,KAAKO,gBAAgBC,KAAK,CACtBC,QAAST,KAAKS,SAChB,EAEVT,KAAKU,gBAAkBC,UACvBX,KAAKY,WAAa,UAClBZ,KAAKM,SAAW,MAChBN,KAAKa,UAAY,MACjBb,KAAKc,cAAgBH,UACrBX,KAAKe,MAAQJ,UACbX,KAAKK,QAAU,MACfL,KAAKgB,KAAO,SACZhB,KAAKS,QAAU,MACfT,KAAKiB,QAAU,S,CAEnB,iBAAAC,GACIC,EAAoBnB,KAAKM,SAAUN,KAAKoB,IACxC,MAAMC,EAAsBrB,KAAKoB,GAAGE,cAAcR,cAClDd,KAAKuB,aAAevB,KAAKc,eAAiBO,GAAuB,M,CAErE,gBAAAG,GACIC,EAAiC,CAC7B,CACIC,KAAM1B,KAAKiB,UAAY,OAASjB,KAAKU,gBAAkBV,KAAKe,MAC5DY,SAAU3B,KAAKiB,UAAY,OAAS,mBAAqB,UAE9D,gB,CAEP,eAAAW,CAAgBC,GACZ,GAAI7B,KAAKM,SAAU,CACfuB,EAAE1B,0B,MAED,IAAKH,KAAKK,QAAS,CACpBL,KAAKS,SAAWT,KAAKS,O,EAG7B,MAAAqB,GACI,OAAQC,EAAEC,EAAM,CAAEC,MAAO,CACjB,CAAC,6BAA8BjC,KAAKM,SACpC,CAAC,4BAA6BN,KAAKS,QACnC,CAAC,oBAAoBT,KAAKY,cAAe,KACzC,CAAC,yBAA0BZ,KAAKiB,UAAY,OAC5C,CAAC,oBAAoBjB,KAAKgB,QAAS,KACnC,CAAC,4BAA6BhB,KAAKK,SACpC6B,QAASlC,KAAKC,aAAe8B,EAAE,YAAa,CAAE,eAAgB/B,KAAKS,QAAQ0B,WAAYlB,QAASjB,KAAKiB,UAAY,OAAS,OAAS,YAAamB,QAASpC,KAAKI,YAAaiC,MAAOrC,KAAKU,gBAAiB,aAAc,GAAGV,KAAKU,gBAAkBV,KAAKU,gBAAkBV,KAAKe,UAAUf,KAAKS,QAAU,SAAW,aAAcH,SAAUN,KAAKM,SAAUM,WAAYZ,KAAKY,WAAYI,KAAMhB,KAAKgB,KAAMH,UAAWb,KAAKa,UAAWR,QAASL,KAAKK,QAAS,gBAAiB,GAAGL,KAAKM,YAAcN,KAAKiB,UAAY,QAAUjB,KAAKe,MAAOgB,EAAE,OAAQ,MAAOO,EAAWtC,KAAKoB,GAAI,SAAYW,EAAE,OAAQ,CAAEQ,KAAM,OAAQC,KAAM,GAAGxC,KAAKuB,sBAAyBe,EAAWtC,KAAKoB,GAAI,UAAaW,EAAE,OAAQ,CAAEQ,KAAM,QAASC,KAAM,W,CAIpsB,yBAAWC,GAAmB,OAAO,IAAK,C"}
@@ -1,2 +1,2 @@
1
- import{r as e,h as t,H as i,g as o}from"./p-8455d1bb.js";const n='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}@keyframes loading{0%{background-color:var(--ic-architectural-100)}50%{background-color:var(--ic-architectural-200)}100%{background-color:var(--ic-architectural-100)}}@keyframes loading-light{0%{background-color:var(--ic-architectural-600)}50%{background-color:var(--ic-architectural-400)}100%{background-color:var(--ic-architectural-600)}}:host{display:inline-block}:host(.skeleton){background-color:var(--ic-architectural-100);border-radius:var(--ic-border-radius);animation:loading 1200ms infinite;display:inline-block}:host(.skeleton)>*{opacity:0;visibility:hidden}:host(.circle){border-radius:50%}:host(.light){background-color:var(--ic-architectural-600);animation:loading-light 1200ms infinite}@media (forced-colors: active){:host(.skeleton){-ms-high-contrast-adjust:none;forced-color-adjust:none;background:currentcolor}}';const r=class{constructor(t){e(this,t);this.default=undefined;this.hasChild=undefined;this.heightOnly=undefined;this.widthOnly=undefined;this.appearance="default";this.light=false;this.variant="rectangle"}componentWillLoad(){if(this.el.style.height===""&&this.el.style.width===""){this.default=true}else if(!(this.el.style.height==="")&&this.el.style.width===""){this.heightOnly=true}else if(!(this.el.style.width==="")&&this.el.style.height===""){this.widthOnly=true}}render(){const{variant:e,light:o,appearance:n}=this;this.hasChild=!!this.el.firstElementChild;const r={height:e=="text"?"1em":e=="circle"?"25px":"93px",width:e=="circle"?"25px":"260px"};const a={height:this.el.style.height,width:e=="circle"?"25px":"260px"};const s={height:e=="text"?"1em":e=="circle"?"25px":"93px",width:this.el.style.width};return t(i,{class:{["skeleton"]:true,["circle"]:e=="circle",["light"]:o||n==="light"},style:!this.hasChild&&this.default&&r||this.heightOnly&&a||this.widthOnly&&s,"aria-disabled":"true"},t("slot",null))}get el(){return o(this)}};r.style=n;export{r as ic_skeleton};
2
- //# sourceMappingURL=p-baf81f30.entry.js.map
1
+ import{r as e,h as t,H as o,g as i}from"./p-8455d1bb.js";const n='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}@keyframes loading{0%{background-color:var(--ic-skeleton-background)}50%{background-color:var(--ic-skeleton-background-secondary)}100%{background-color:var(--ic-skeleton-background)}}:host(.skeleton){background-color:var(--ic-skeleton-background);border-radius:var(--ic-border-radius);animation:loading 1200ms infinite;display:inline-block}:host(.skeleton)>*{opacity:0;visibility:hidden}:host(.ic-skeleton-circle){border-radius:50%}@media (forced-colors: active){:host(.skeleton){-ms-high-contrast-adjust:none;forced-color-adjust:none;background:currentcolor}}';const r={text:"1em",circle:"25px",rectangle:"93px"};const a=class{constructor(t){e(this,t);this.theme="inherit";this.variant="rectangle"}render(){const{variant:e,theme:i,el:n}=this;const a=!n.firstElementChild?{height:n.style.height||r[e],width:n.style.width||(e==="circle"?"25px":"260px")}:undefined;return t(o,{class:{skeleton:true,"ic-skeleton-circle":e==="circle",[`ic-theme-${i}`]:i!=="inherit"},style:a,"aria-disabled":"true"},t("slot",null))}get el(){return i(this)}};a.style=n;export{a as ic_skeleton};
2
+ //# sourceMappingURL=p-f64abdff.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icSkeletonCss","DEFAULT_HEIGHTS","text","circle","rectangle","Skeleton","constructor","hostRef","this","theme","variant","render","el","style","firstElementChild","height","width","undefined","h","Host","class","skeleton"],"sources":["../web-components/dist/collection/components/ic-skeleton/ic-skeleton.css?tag=ic-skeleton&encapsulation=shadow","../web-components/dist/collection/components/ic-skeleton/ic-skeleton.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n@keyframes loading {\n 0% {\n background-color: var(--ic-skeleton-background);\n }\n\n 50% {\n background-color: var(--ic-skeleton-background-secondary);\n }\n\n 100% {\n background-color: var(--ic-skeleton-background);\n }\n}\n\n:host(.skeleton) {\n background-color: var(--ic-skeleton-background);\n border-radius: var(--ic-border-radius);\n animation: loading 1200ms infinite;\n display: inline-block;\n}\n\n:host(.skeleton) > * {\n opacity: 0;\n visibility: hidden;\n}\n\n:host(.ic-skeleton-circle) {\n border-radius: 50%;\n}\n\n@media (forced-colors: active) {\n :host(.skeleton) {\n -ms-high-contrast-adjust: none;\n forced-color-adjust: none;\n background: currentcolor;\n }\n}\n","import { Host, h } from \"@stencil/core\";\nconst DEFAULT_HEIGHTS = {\n text: \"1em\",\n circle: \"25px\",\n rectangle: \"93px\",\n};\nexport class Skeleton {\n constructor() {\n this.theme = \"inherit\";\n this.variant = \"rectangle\";\n }\n render() {\n const { variant, theme, el } = this;\n const style = !el.firstElementChild\n ? {\n height: el.style.height || DEFAULT_HEIGHTS[variant],\n width: el.style.width || (variant === \"circle\" ? \"25px\" : \"260px\"),\n }\n : undefined;\n return (h(Host, { class: {\n skeleton: true,\n \"ic-skeleton-circle\": variant === \"circle\",\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }, style: style, \"aria-disabled\": \"true\" }, h(\"slot\", null)));\n }\n static get is() { return \"ic-skeleton\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-skeleton.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-skeleton.css\"]\n };\n }\n static get properties() {\n return {\n \"theme\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcThemeMode\",\n \"resolved\": \"\\\"dark\\\" | \\\"inherit\\\" | \\\"light\\\"\",\n \"references\": {\n \"IcThemeMode\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcThemeMode\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the theme color to the dark or light theme color. \\\"inherit\\\" will set the color based on the system settings or ic-theme component.\"\n },\n \"attribute\": \"theme\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"inherit\\\"\"\n },\n \"variant\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSkeletonVariants\",\n \"resolved\": \"\\\"circle\\\" | \\\"rectangle\\\" | \\\"text\\\"\",\n \"references\": {\n \"IcSkeletonVariants\": {\n \"location\": \"import\",\n \"path\": \"./ic-skeleton.types\",\n \"id\": \"src/components/ic-skeleton/ic-skeleton.types.ts::IcSkeletonVariants\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The variant of the skeleton that will be displayed.\"\n },\n \"attribute\": \"variant\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"rectangle\\\"\"\n }\n };\n }\n static get elementRef() { return \"el\"; }\n}\n//# sourceMappingURL=ic-skeleton.js.map\n"],"mappings":"yDAAA,MAAMA,EAAgB,o5FCCtB,MAAMC,EAAkB,CACpBC,KAAM,MACNC,OAAQ,OACRC,UAAW,Q,MAEFC,EAAQ,MACjB,WAAAC,CAAAC,G,UACIC,KAAKC,MAAQ,UACbD,KAAKE,QAAU,W,CAEnB,MAAAC,GACI,MAAMD,QAAEA,EAAOD,MAAEA,EAAKG,GAAEA,GAAOJ,KAC/B,MAAMK,GAASD,EAAGE,kBACZ,CACEC,OAAQH,EAAGC,MAAME,QAAUd,EAAgBS,GAC3CM,MAAOJ,EAAGC,MAAMG,QAAUN,IAAY,SAAW,OAAS,UAE5DO,UACN,OAAQC,EAAEC,EAAM,CAAEC,MAAO,CACjBC,SAAU,KACV,qBAAsBX,IAAY,SAClC,CAAC,YAAYD,KAAUA,IAAU,WAClCI,MAAOA,EAAO,gBAAiB,QAAUK,EAAE,OAAQ,M"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as i,h as s,H as e,g as o}from"./p-8455d1bb.js";import{c as a}from"./p-e081702e.js";import{i as n,V as r,a as c,J as d,I as h,d as l}from"./p-9397b15b.js";const u='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}@media (prefers-reduced-motion: no-preference){:host{animation:fadein var(--ic-transition-duration-slow) ease-in-out}:host(.hidden){animation:fadeout var(--ic-transition-duration-slow) ease-in-out}}:host{--bottom-position:var(--ic-space-xl);position:fixed;bottom:var(--bottom-position);left:50%;transform:translate(-50%);z-index:var(--ic-z-index-toast)}:host(.ic-toast-hidden){display:none}:host(:focus){outline:none}.container{max-width:32.5rem;min-width:18rem;box-shadow:var(--ic-elevation-overlay);min-height:3.5rem;background-color:var(--ic-architectural-800);--ic-typography-color:var(--ic-color-text-primary-dark);display:flex;align-items:center;position:relative;border-radius:var(--ic-border-radius)}.toast-icon-container{height:100%;display:flex;align-items:center}.divider{height:100%;width:var(--ic-space-xs);position:absolute;border-radius:var(--ic-space-xxxs) 0 0 var(--ic-space-xxxs)}.divider-neutral{background-color:var(--ic-status-unknown-default)}.divider-info{background-color:var(--ic-status-info-contrast)}.divider-warning{background-color:var(--ic-status-warning-contrast)}.divider-error{background-color:var(--ic-status-error-contrast)}.divider-success{background-color:var(--ic-status-success-contrast)}.toast-icon,::slotted(svg){height:var(--ic-space-lg);width:var(--ic-space-lg);margin-left:var(--ic-space-md)}:host([variant="neutral"]) .toast-icon svg,::slotted(svg){fill:var(--ic-status-unknown-default)}:host([variant="info"]) .toast-icon svg{fill:var(--ic-status-info-contrast)}:host([variant="warning"]) .toast-icon svg{fill:var(--ic-status-warning-contrast)}:host([variant="error"]) .toast-icon svg{fill:var(--ic-status-error-contrast)}:host([variant="success"]) .toast-icon svg{fill:var(--ic-status-success-contrast)}.toast-content{margin-left:var(--ic-space-xs);width:100%}.no-icon{margin-left:var(--ic-space-md)}.toast-message{padding:var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0}.toast-action-container{padding-bottom:var(--ic-space-md)}ic-button{padding:var(--ic-space-xs)}ic-loading-indicator{--outer-color:transparent;--inner-color:var(--ic-action-light)}.toast-dismiss-timer{padding:var(--ic-space-sm)}@media (max-width: 576px){:host{--bottom-position:var(--ic-space-lg);width:calc(100% - 2 * var(--ic-space-md))}}@media (min-width: 993px){:host{--bottom-position:calc(var(--ic-space-xl) + var(--ic-space-xs))}}@media (forced-colors: active){.container{border:var(--ic-border-hc)}}@keyframes fadein{from{bottom:0;opacity:0}to{bottom:var(--bottom-position);opacity:1}}@keyframes fadeout{from{bottom:var(--bottom-position);opacity:1}to{bottom:0;opacity:0}}';const m=1e3;const p=70;const b=140;const f=class{constructor(s){t(this,s);this.icDismiss=i(this,"icDismiss",7);this.interactiveElements=[];this.dismissAction=()=>{this.icDismiss.emit()};this.handleProgressChange=()=>{this.timerProgress-=m/this.autoDismissTimeout*100};this.onFocus=()=>{if(this.focusInteractiveElement){this.isManual=true}};this.onBlur=()=>{this.handleTimer({type:"mouseleave"})};this.isManual=undefined;this.timerProgress=100;this.visible=false;this.autoDismissTimeout=5e3;this.dismissButtonAriaLabel="dismiss";this.dismissMode="manual";this.heading=undefined;this.message=undefined;this.neutralIconAriaLabel=undefined;this.variant=undefined}dismissModeChangeHandler(t){this.isManual=t==="manual"}disconnectedCallback(){window.clearTimeout(this.dismissTimeout);window.clearInterval(this.timerRefreshInterval)}componentWillLoad(){var t,i;this.handleLongText(this.heading.length>p,((t=this.message)===null||t===void 0?void 0:t.length)>b);if(this.autoDismissTimeout<5e3)this.autoDismissTimeout=5e3;if(n(this.el,"action"))this.dismissMode="manual";this.isManual=this.dismissMode==="manual";if(n(this.el,"neutral-icon"))this.variant="neutral";if(this.variant==="neutral"){this.neutralVariantLabel=(i=this.neutralIconAriaLabel)!==null&&i!==void 0?i:r[this.variant].ariaLabel}if(this.isManual){const t=l(this.message)?`. ${this.message}`:"";this.el.setAttribute("aria-label",this.variant?this.neutralVariantLabel||r[this.variant].ariaLabel:this.heading);(this.variant||this.message)&&this.el.setAttribute("aria-description",this.variant?`${this.heading}${t}`:this.message)}}componentDidLoad(){c([{prop:this.heading,propName:"heading"}],"Toast")}componentDidUpdate(){if(this.focusInteractiveElement&&this.isManual){this.resetAutoDismissTimer();const t=d(this.el,"action");const i=this.el.shadowRoot.querySelector("ic-button");if(t)this.interactiveElements.push(t);if(i)this.interactiveElements.push(i);this.focusInteractiveElement=false;this.findNextInteractiveElement(this.shiftKeyPressed).setFocus();this.shiftKeyPressed=false}}watchVisibleHandler(){if(this.visible){const t=d(this.el,"action");const i=this.el.shadowRoot.querySelector("ic-button");if(t)this.interactiveElements.push(t);if(i)this.interactiveElements.push(i)}else{this.interactiveElements=[]}}handleDismiss(){this.visible=false;this.resetAutoDismissTimer()}handleKeyboard(t){if(this.visible){if(this.isManual){switch(t.key){case"Tab":t.preventDefault();this.findNextInteractiveElement(t.shiftKey).setFocus();break;case"Escape":!t.repeat&&this.dismissAction();t.stopImmediatePropagation();break}}else{if(t.key==="Tab"){this.shiftKeyPressed=t.shiftKey;this.focusInteractiveElement=true}}}}handleTimer(t){switch(t.type){case"mouseenter":if(!this.isManual){this.resetAutoDismissTimer()}this.isManual=true;break;case"mouseleave":if(this.dismissMode==="automatic"){this.isManual=false;this.interactiveElements=[];if(this.visible){this.dismissTimeout=window.setTimeout(this.dismissAction,this.autoDismissTimeout);this.timerRefreshInterval=window.setInterval(this.handleProgressChange,m)}}break}}async setVisible(){if(!this.visible)this.visible=true;if(!this.isManual){this.dismissTimeout=window.setTimeout(this.dismissAction,this.autoDismissTimeout);this.timerRefreshInterval=window.setInterval(this.handleProgressChange,m);return null}else{window.setTimeout((()=>this.interactiveElements[0].setFocus()),200);return document.activeElement}}handleLongText(t,i){if(i||t){console.error(`Too many characters in toast ${t?"heading":""}${t&&i?" and ":""}${i?"message":""}. Refer to character limits specified in the prop description`)}}findNextInteractiveElement(t){const i=this.interactiveElements[0];const s=this.interactiveElements[this.interactiveElements.length-1];if(this.isActive(t?i:s))return t?s:i;let e;return this.interactiveElements.some(((t,i)=>{if(!this.isActive(t))return false;e=i;return true}))?this.interactiveElements[e+(t?-1:1)]:i}resetAutoDismissTimer(){window.clearTimeout(this.dismissTimeout);window.clearInterval(this.timerRefreshInterval);this.timerProgress=100}isActive(t){return t===this.el?!!this.el.shadowRoot.activeElement:document.activeElement===t}render(){const{variant:t,heading:i,message:o,visible:c,isManual:d,dismissButtonAriaLabel:l}=this;return s(e,{class:{["ic-toast-hidden"]:!c},role:d?"dialog":"status",tabindex:"0",onFocus:this.onFocus,onBlur:this.onBlur},s("div",{class:"container"},t&&c&&s("div",{class:"toast-icon-container"},s("div",{class:{["divider"]:true,[`divider-${t}`]:true}}),t==="neutral"?s("slot",{name:"neutral-icon"}):s("span",{class:"toast-icon",innerHTML:r[t].icon})),s("div",{class:{["toast-content"]:true,["no-icon"]:t==="neutral"&&!n(this.el,"neutral-icon")}},s("div",{class:"toast-message"},s("ic-typography",{variant:"subtitle-large"},c&&s("h5",null,i)),o&&s("ic-typography",{variant:"body"},c&&s("p",null,o))),n(this.el,"action")&&s("div",{class:"toast-action-container"},s("slot",{name:"action"}))),!d?s("ic-loading-indicator",{class:"toast-dismiss-timer",theme:"dark",monochrome:true,size:"icon",progress:this.timerProgress,description:""}):s("ic-button",{id:"dismiss-button",innerHTML:a,onClick:this.dismissAction,variant:"icon",appearance:h.Light,"aria-label":l})))}get el(){return o(this)}static get watchers(){return{dismissMode:["dismissModeChangeHandler"],visible:["watchVisibleHandler"]}}};f.style=u;export{f as ic_toast};
2
+ //# sourceMappingURL=p-f9810621.entry.js.map