@ukic/canary-web-components 2.0.0-canary.36 → 2.0.0-canary.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (287) hide show
  1. package/dist/cjs/ic-card.cjs.entry.js +1 -1
  2. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ic-checkbox.cjs.entry.js +1 -1
  4. package/dist/cjs/ic-checkbox.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js +1 -1
  6. package/dist/cjs/ic-data-table-title-bar.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-data-table.cjs.entry.js +5 -5
  8. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-date-input.cjs.entry.js +6 -0
  10. package/dist/cjs/ic-date-input.cjs.entry.js.map +1 -1
  11. package/dist/cjs/ic-dialog.cjs.entry.js +20 -5
  12. package/dist/cjs/ic-dialog.cjs.entry.js.map +1 -1
  13. package/dist/cjs/ic-empty-state_2.cjs.entry.js +17 -7
  14. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
  15. package/dist/cjs/ic-link.cjs.entry.js +1 -1
  16. package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
  17. package/dist/cjs/ic-menu.cjs.entry.js +1 -1
  18. package/dist/cjs/ic-menu.cjs.entry.js.map +1 -1
  19. package/dist/cjs/ic-pagination_4.cjs.entry.js +1 -1
  20. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  21. package/dist/cjs/ic-popover-menu.cjs.entry.js +1 -1
  22. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  23. package/dist/cjs/ic-radio-group.cjs.entry.js +2 -1
  24. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ic-tree-item.cjs.entry.js +8 -0
  26. package/dist/cjs/ic-tree-item.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ic-tree-view.cjs.entry.js +15 -8
  28. package/dist/cjs/ic-tree-view.cjs.entry.js.map +1 -1
  29. package/dist/collection/components/ic-data-table/ic-data-table.css +19 -2
  30. package/dist/collection/components/ic-data-table/ic-data-table.js +4 -4
  31. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  32. package/dist/collection/components/ic-data-table/ic-data-table.types.js.map +1 -1
  33. package/dist/collection/components/ic-data-table/story-data.js +35 -0
  34. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  35. package/dist/collection/components/ic-data-table-title-bar/ic-data-table-title-bar.css +6 -6
  36. package/dist/collection/components/ic-date-input/ic-date-input.js +6 -0
  37. package/dist/collection/components/ic-date-input/ic-date-input.js.map +1 -1
  38. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +17 -7
  39. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  40. package/dist/collection/components/ic-tree-item/ic-tree-item.js +8 -0
  41. package/dist/collection/components/ic-tree-item/ic-tree-item.js.map +1 -1
  42. package/dist/collection/components/ic-tree-view/ic-tree-view.css +4 -0
  43. package/dist/collection/components/ic-tree-view/ic-tree-view.js +14 -7
  44. package/dist/collection/components/ic-tree-view/ic-tree-view.js.map +1 -1
  45. package/dist/components/helpers.js +1 -1
  46. package/dist/components/ic-card.js +1 -1
  47. package/dist/components/ic-card.js.map +1 -1
  48. package/dist/components/ic-checkbox.js +1 -1
  49. package/dist/components/ic-checkbox.js.map +1 -1
  50. package/dist/components/ic-data-table-title-bar.js +1 -1
  51. package/dist/components/ic-data-table-title-bar.js.map +1 -1
  52. package/dist/components/ic-data-table.js +5 -5
  53. package/dist/components/ic-data-table.js.map +1 -1
  54. package/dist/components/ic-date-input2.js +6 -0
  55. package/dist/components/ic-date-input2.js.map +1 -1
  56. package/dist/components/ic-dialog.js +21 -6
  57. package/dist/components/ic-dialog.js.map +1 -1
  58. package/dist/components/ic-footer.js +1 -1
  59. package/dist/components/ic-horizontal-scroll2.js +1 -1
  60. package/dist/components/ic-link2.js +1 -1
  61. package/dist/components/ic-link2.js.map +1 -1
  62. package/dist/components/ic-menu2.js +1 -1
  63. package/dist/components/ic-menu2.js.map +1 -1
  64. package/dist/components/ic-pagination-bar2.js +17 -7
  65. package/dist/components/ic-pagination-bar2.js.map +1 -1
  66. package/dist/components/ic-popover-menu.js +2 -2
  67. package/dist/components/ic-popover-menu.js.map +1 -1
  68. package/dist/components/ic-radio-group.js +2 -1
  69. package/dist/components/ic-radio-group.js.map +1 -1
  70. package/dist/components/ic-select2.js +1 -1
  71. package/dist/components/ic-select2.js.map +1 -1
  72. package/dist/components/ic-side-navigation.js +1 -1
  73. package/dist/components/ic-tree-item.js +8 -0
  74. package/dist/components/ic-tree-item.js.map +1 -1
  75. package/dist/components/ic-tree-view.js +15 -8
  76. package/dist/components/ic-tree-view.js.map +1 -1
  77. package/dist/core/core.esm.js +1 -1
  78. package/dist/core/{p-20241d58.entry.js → p-074e64d0.entry.js} +2 -2
  79. package/dist/core/{p-26aeefc3.entry.js → p-0f1706e8.entry.js} +2 -2
  80. package/dist/core/{p-d1e0479c.entry.js → p-11877d23.entry.js} +2 -2
  81. package/dist/core/{p-ba353ac3.entry.js → p-1e450833.entry.js} +2 -2
  82. package/dist/core/{p-f4b76daa.entry.js → p-23408776.entry.js} +2 -2
  83. package/dist/core/{p-758f03e8.entry.js → p-2d44b81a.entry.js} +2 -2
  84. package/dist/core/{p-a3d903e4.entry.js → p-2ea7af8b.entry.js} +2 -2
  85. package/dist/core/{p-f2bb3c93.entry.js → p-38f329ab.entry.js} +2 -2
  86. package/dist/core/{p-844fb240.entry.js → p-3cd2056f.entry.js} +2 -2
  87. package/dist/core/p-3d00ad9e.entry.js +2 -0
  88. package/dist/core/p-3d00ad9e.entry.js.map +1 -0
  89. package/dist/core/{p-c0242c21.entry.js → p-44680720.entry.js} +2 -2
  90. package/dist/core/{p-3169d95e.entry.js → p-487fd924.entry.js} +2 -2
  91. package/dist/core/p-56db5123.entry.js +2 -0
  92. package/dist/core/p-56db5123.entry.js.map +1 -0
  93. package/dist/core/{p-9c80c37d.entry.js → p-58331a86.entry.js} +2 -2
  94. package/dist/core/p-5a90eaa8.entry.js +2 -0
  95. package/dist/core/p-5a90eaa8.entry.js.map +1 -0
  96. package/dist/core/{p-a4088bd7.entry.js → p-656378ba.entry.js} +2 -2
  97. package/dist/core/{p-d171c71d.entry.js → p-6cdf5de2.entry.js} +2 -2
  98. package/dist/core/{p-dd550e9b.entry.js → p-70ad364c.entry.js} +2 -2
  99. package/dist/core/{p-c1b268fd.entry.js → p-70c659ec.entry.js} +2 -2
  100. package/dist/core/{p-124279fa.entry.js → p-71bbb583.entry.js} +2 -2
  101. package/dist/core/p-74b42302.entry.js +2 -0
  102. package/dist/core/p-74b42302.entry.js.map +1 -0
  103. package/dist/core/p-75bd12f8.entry.js +2 -0
  104. package/dist/core/p-75bd12f8.entry.js.map +1 -0
  105. package/dist/core/{p-03d83d2c.entry.js → p-780294b8.entry.js} +2 -2
  106. package/dist/core/{p-382b88b2.entry.js → p-7edc19be.entry.js} +2 -2
  107. package/dist/core/{p-9c9147fa.entry.js → p-89112e37.entry.js} +2 -2
  108. package/dist/core/p-89112e37.entry.js.map +1 -0
  109. package/dist/core/p-8ced1495.entry.js +2 -0
  110. package/dist/core/p-8ced1495.entry.js.map +1 -0
  111. package/dist/core/{p-8c2c86b5.entry.js → p-95545b4c.entry.js} +2 -2
  112. package/dist/core/{p-b02ad2c4.entry.js → p-95d057b8.entry.js} +2 -2
  113. package/dist/core/{p-9adb2a49.entry.js → p-987cd821.entry.js} +2 -2
  114. package/dist/core/p-987cd821.entry.js.map +1 -0
  115. package/dist/core/{p-29a040ef.entry.js → p-9b386822.entry.js} +2 -2
  116. package/dist/core/{p-a6fb5fe3.entry.js → p-9bbe221f.entry.js} +2 -2
  117. package/dist/core/{p-deedc7d3.entry.js → p-9f58998d.entry.js} +2 -2
  118. package/dist/core/p-ab311c2e.entry.js +2 -0
  119. package/dist/core/p-ab311c2e.entry.js.map +1 -0
  120. package/dist/core/{p-72a584f4.entry.js → p-ac8090a5.entry.js} +2 -2
  121. package/dist/core/p-b4f824a6.entry.js +2 -0
  122. package/dist/core/p-b4f824a6.entry.js.map +1 -0
  123. package/dist/core/{p-95871655.entry.js → p-bc350ec5.entry.js} +2 -2
  124. package/dist/core/{p-5f71f24c.entry.js → p-bede1b52.entry.js} +2 -2
  125. package/dist/core/{p-da506987.js → p-bf06977d.js} +2 -2
  126. package/dist/core/{p-ff35dcea.entry.js → p-c0a2a040.entry.js} +2 -2
  127. package/dist/core/{p-ff35dcea.entry.js.map → p-c0a2a040.entry.js.map} +1 -1
  128. package/dist/core/{p-3a2523df.entry.js → p-c41d12e6.entry.js} +2 -2
  129. package/dist/core/p-c41d12e6.entry.js.map +1 -0
  130. package/dist/core/{p-3b1c88ad.entry.js → p-c7261d64.entry.js} +2 -2
  131. package/dist/core/{p-3e7b08c7.entry.js → p-c97463bc.entry.js} +2 -2
  132. package/dist/core/{p-aabb04c8.entry.js → p-ccc37027.entry.js} +2 -2
  133. package/dist/core/{p-12a5b481.entry.js → p-d0020f6f.entry.js} +2 -2
  134. package/dist/core/{p-e85505ec.entry.js → p-d1045cd5.entry.js} +2 -2
  135. package/dist/core/{p-9cd73369.entry.js → p-d921dc2c.entry.js} +2 -2
  136. package/dist/core/{p-34de5ffb.entry.js → p-da398a5d.entry.js} +2 -2
  137. package/dist/core/{p-8ef60479.entry.js → p-db5af9f7.entry.js} +2 -2
  138. package/dist/core/p-dd4c83ad.entry.js +2 -0
  139. package/dist/core/p-dd4c83ad.entry.js.map +1 -0
  140. package/dist/core/{p-0c7d30f5.entry.js → p-e218db1e.entry.js} +2 -2
  141. package/dist/core/p-e362b5f3.entry.js +2 -0
  142. package/dist/core/p-e362b5f3.entry.js.map +1 -0
  143. package/dist/core/{p-bc24c004.entry.js → p-e89c2feb.entry.js} +2 -2
  144. package/dist/core/{p-e7b913e5.entry.js → p-eaeaa096.entry.js} +2 -2
  145. package/dist/core/{p-d2260763.entry.js → p-f5dfcf4f.entry.js} +2 -2
  146. package/dist/core/{p-1c0bbd2a.entry.js → p-fe105ed0.entry.js} +2 -2
  147. package/dist/esm/{helpers-031e266e.js → helpers-cd64688a.js} +2 -2
  148. package/dist/esm/{helpers-031e266e.js.map → helpers-cd64688a.js.map} +1 -1
  149. package/dist/esm/ic-accordion-group.entry.js +1 -1
  150. package/dist/esm/ic-accordion.entry.js +1 -1
  151. package/dist/esm/ic-alert.entry.js +1 -1
  152. package/dist/esm/ic-back-to-top.entry.js +1 -1
  153. package/dist/esm/ic-badge.entry.js +1 -1
  154. package/dist/esm/ic-breadcrumb-group.entry.js +1 -1
  155. package/dist/esm/ic-breadcrumb.entry.js +1 -1
  156. package/dist/esm/ic-button_3.entry.js +1 -1
  157. package/dist/esm/ic-card.entry.js +2 -2
  158. package/dist/esm/ic-card.entry.js.map +1 -1
  159. package/dist/esm/ic-checkbox-group.entry.js +1 -1
  160. package/dist/esm/ic-checkbox.entry.js +2 -2
  161. package/dist/esm/ic-checkbox.entry.js.map +1 -1
  162. package/dist/esm/ic-chip.entry.js +1 -1
  163. package/dist/esm/ic-data-row.entry.js +1 -1
  164. package/dist/esm/ic-data-table-title-bar.entry.js +1 -1
  165. package/dist/esm/ic-data-table-title-bar.entry.js.map +1 -1
  166. package/dist/esm/ic-data-table.entry.js +5 -5
  167. package/dist/esm/ic-data-table.entry.js.map +1 -1
  168. package/dist/esm/ic-date-input.entry.js +6 -0
  169. package/dist/esm/ic-date-input.entry.js.map +1 -1
  170. package/dist/esm/ic-dialog.entry.js +21 -6
  171. package/dist/esm/ic-dialog.entry.js.map +1 -1
  172. package/dist/esm/ic-divider.entry.js +1 -1
  173. package/dist/esm/ic-empty-state_2.entry.js +18 -8
  174. package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
  175. package/dist/esm/ic-footer-link-group.entry.js +1 -1
  176. package/dist/esm/ic-footer-link.entry.js +1 -1
  177. package/dist/esm/ic-footer.entry.js +1 -1
  178. package/dist/esm/ic-hero.entry.js +1 -1
  179. package/dist/esm/ic-horizontal-scroll.entry.js +1 -1
  180. package/dist/esm/ic-input-component-container_4.entry.js +1 -1
  181. package/dist/esm/ic-link.entry.js +2 -2
  182. package/dist/esm/ic-link.entry.js.map +1 -1
  183. package/dist/esm/ic-menu-group.entry.js +1 -1
  184. package/dist/esm/ic-menu-item.entry.js +1 -1
  185. package/dist/esm/ic-menu.entry.js +2 -2
  186. package/dist/esm/ic-menu.entry.js.map +1 -1
  187. package/dist/esm/ic-navigation-button.entry.js +1 -1
  188. package/dist/esm/ic-navigation-group.entry.js +1 -1
  189. package/dist/esm/ic-navigation-item.entry.js +1 -1
  190. package/dist/esm/ic-navigation-menu.entry.js +1 -1
  191. package/dist/esm/ic-page-header.entry.js +1 -1
  192. package/dist/esm/ic-pagination_4.entry.js +2 -2
  193. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  194. package/dist/esm/ic-popover-menu.entry.js +2 -2
  195. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  196. package/dist/esm/ic-radio-group.entry.js +3 -2
  197. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  198. package/dist/esm/ic-radio-option.entry.js +1 -1
  199. package/dist/esm/ic-search-bar.entry.js +1 -1
  200. package/dist/esm/ic-side-navigation.entry.js +1 -1
  201. package/dist/esm/ic-status-tag.entry.js +1 -1
  202. package/dist/esm/ic-step.entry.js +1 -1
  203. package/dist/esm/ic-stepper.entry.js +1 -1
  204. package/dist/esm/ic-switch.entry.js +1 -1
  205. package/dist/esm/ic-tab-group.entry.js +1 -1
  206. package/dist/esm/ic-tab.entry.js +1 -1
  207. package/dist/esm/ic-theme.entry.js +1 -1
  208. package/dist/esm/ic-toast.entry.js +1 -1
  209. package/dist/esm/ic-toggle-button-group.entry.js +1 -1
  210. package/dist/esm/ic-toggle-button.entry.js +1 -1
  211. package/dist/esm/ic-top-navigation.entry.js +1 -1
  212. package/dist/esm/ic-tree-item.entry.js +8 -0
  213. package/dist/esm/ic-tree-item.entry.js.map +1 -1
  214. package/dist/esm/ic-tree-view.entry.js +15 -8
  215. package/dist/esm/ic-tree-view.entry.js.map +1 -1
  216. package/dist/esm/ic-typography.entry.js +1 -1
  217. package/dist/types/components/ic-data-table/ic-data-table.types.d.ts +1 -0
  218. package/dist/types/components/ic-data-table/story-data.d.ts +2 -0
  219. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +1 -0
  220. package/dist/types/components/ic-tree-item/ic-tree-item.d.ts +1 -0
  221. package/dist/types/components/ic-tree-view/ic-tree-view.d.ts +3 -0
  222. package/hydrate/index.js +80 -33
  223. package/package.json +3 -3
  224. package/dist/core/p-03a99326.entry.js +0 -2
  225. package/dist/core/p-03a99326.entry.js.map +0 -1
  226. package/dist/core/p-080ebc66.entry.js +0 -2
  227. package/dist/core/p-080ebc66.entry.js.map +0 -1
  228. package/dist/core/p-3a2523df.entry.js.map +0 -1
  229. package/dist/core/p-4476d3b0.entry.js +0 -2
  230. package/dist/core/p-4476d3b0.entry.js.map +0 -1
  231. package/dist/core/p-48618a18.entry.js +0 -2
  232. package/dist/core/p-48618a18.entry.js.map +0 -1
  233. package/dist/core/p-4960c603.entry.js +0 -2
  234. package/dist/core/p-4960c603.entry.js.map +0 -1
  235. package/dist/core/p-7565b23c.entry.js +0 -2
  236. package/dist/core/p-7565b23c.entry.js.map +0 -1
  237. package/dist/core/p-7bba4c47.entry.js +0 -2
  238. package/dist/core/p-7bba4c47.entry.js.map +0 -1
  239. package/dist/core/p-7e909871.entry.js +0 -2
  240. package/dist/core/p-7e909871.entry.js.map +0 -1
  241. package/dist/core/p-9adb2a49.entry.js.map +0 -1
  242. package/dist/core/p-9c9147fa.entry.js.map +0 -1
  243. package/dist/core/p-b68d6867.entry.js +0 -2
  244. package/dist/core/p-b68d6867.entry.js.map +0 -1
  245. package/dist/core/p-e447ed5c.entry.js +0 -2
  246. package/dist/core/p-e447ed5c.entry.js.map +0 -1
  247. /package/dist/core/{p-20241d58.entry.js.map → p-074e64d0.entry.js.map} +0 -0
  248. /package/dist/core/{p-26aeefc3.entry.js.map → p-0f1706e8.entry.js.map} +0 -0
  249. /package/dist/core/{p-d1e0479c.entry.js.map → p-11877d23.entry.js.map} +0 -0
  250. /package/dist/core/{p-ba353ac3.entry.js.map → p-1e450833.entry.js.map} +0 -0
  251. /package/dist/core/{p-f4b76daa.entry.js.map → p-23408776.entry.js.map} +0 -0
  252. /package/dist/core/{p-758f03e8.entry.js.map → p-2d44b81a.entry.js.map} +0 -0
  253. /package/dist/core/{p-a3d903e4.entry.js.map → p-2ea7af8b.entry.js.map} +0 -0
  254. /package/dist/core/{p-f2bb3c93.entry.js.map → p-38f329ab.entry.js.map} +0 -0
  255. /package/dist/core/{p-844fb240.entry.js.map → p-3cd2056f.entry.js.map} +0 -0
  256. /package/dist/core/{p-c0242c21.entry.js.map → p-44680720.entry.js.map} +0 -0
  257. /package/dist/core/{p-3169d95e.entry.js.map → p-487fd924.entry.js.map} +0 -0
  258. /package/dist/core/{p-9c80c37d.entry.js.map → p-58331a86.entry.js.map} +0 -0
  259. /package/dist/core/{p-a4088bd7.entry.js.map → p-656378ba.entry.js.map} +0 -0
  260. /package/dist/core/{p-d171c71d.entry.js.map → p-6cdf5de2.entry.js.map} +0 -0
  261. /package/dist/core/{p-dd550e9b.entry.js.map → p-70ad364c.entry.js.map} +0 -0
  262. /package/dist/core/{p-c1b268fd.entry.js.map → p-70c659ec.entry.js.map} +0 -0
  263. /package/dist/core/{p-124279fa.entry.js.map → p-71bbb583.entry.js.map} +0 -0
  264. /package/dist/core/{p-03d83d2c.entry.js.map → p-780294b8.entry.js.map} +0 -0
  265. /package/dist/core/{p-382b88b2.entry.js.map → p-7edc19be.entry.js.map} +0 -0
  266. /package/dist/core/{p-8c2c86b5.entry.js.map → p-95545b4c.entry.js.map} +0 -0
  267. /package/dist/core/{p-b02ad2c4.entry.js.map → p-95d057b8.entry.js.map} +0 -0
  268. /package/dist/core/{p-29a040ef.entry.js.map → p-9b386822.entry.js.map} +0 -0
  269. /package/dist/core/{p-a6fb5fe3.entry.js.map → p-9bbe221f.entry.js.map} +0 -0
  270. /package/dist/core/{p-deedc7d3.entry.js.map → p-9f58998d.entry.js.map} +0 -0
  271. /package/dist/core/{p-72a584f4.entry.js.map → p-ac8090a5.entry.js.map} +0 -0
  272. /package/dist/core/{p-95871655.entry.js.map → p-bc350ec5.entry.js.map} +0 -0
  273. /package/dist/core/{p-5f71f24c.entry.js.map → p-bede1b52.entry.js.map} +0 -0
  274. /package/dist/core/{p-da506987.js.map → p-bf06977d.js.map} +0 -0
  275. /package/dist/core/{p-3b1c88ad.entry.js.map → p-c7261d64.entry.js.map} +0 -0
  276. /package/dist/core/{p-3e7b08c7.entry.js.map → p-c97463bc.entry.js.map} +0 -0
  277. /package/dist/core/{p-aabb04c8.entry.js.map → p-ccc37027.entry.js.map} +0 -0
  278. /package/dist/core/{p-12a5b481.entry.js.map → p-d0020f6f.entry.js.map} +0 -0
  279. /package/dist/core/{p-e85505ec.entry.js.map → p-d1045cd5.entry.js.map} +0 -0
  280. /package/dist/core/{p-9cd73369.entry.js.map → p-d921dc2c.entry.js.map} +0 -0
  281. /package/dist/core/{p-34de5ffb.entry.js.map → p-da398a5d.entry.js.map} +0 -0
  282. /package/dist/core/{p-8ef60479.entry.js.map → p-db5af9f7.entry.js.map} +0 -0
  283. /package/dist/core/{p-0c7d30f5.entry.js.map → p-e218db1e.entry.js.map} +0 -0
  284. /package/dist/core/{p-bc24c004.entry.js.map → p-e89c2feb.entry.js.map} +0 -0
  285. /package/dist/core/{p-e7b913e5.entry.js.map → p-eaeaa096.entry.js.map} +0 -0
  286. /package/dist/core/{p-d2260763.entry.js.map → p-f5dfcf4f.entry.js.map} +0 -0
  287. /package/dist/core/{p-1c0bbd2a.entry.js.map → p-fe105ed0.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{r as a,c as t,h as i,g as e}from"./p-8455d1bb.js";import{i as s}from"./p-8ab58daa.js";const c='.title-bar-wrapper,.header-container,.description-actions,.action-area,.custom-actions-wrapper{display:flex}.title-bar-wrapper,.action-area,.custom-actions-wrapper{gap:var(--ic-space-xs)}.title-bar-wrapper{flex-direction:column;padding:var(--ic-space-sm) var(--ic-space-xs);border-bottom:var(--ic-space-1px) solid var(--ic-architectural-300)}.full-width{padding:var(--ic-space-sm) 0;border-bottom:none}ic-typography.heading h3{margin:0}ic-typography.ic-typography-subtitle-small{color:var(--ic-color-tertiary-text)}ic-typography.ic-typography-h3,::slotted([slot="header"]){max-width:50rem}ic-typography.ic-typography-body,::slotted([slot="description"]){color:var(--ic-color-secondary-text)}ic-typography.ic-typography-body,ic-typography.ic-typography-subtitle-small,::slotted([slot="description"]){max-width:40rem}.density-input{--input-width:7.625rem}@media screen and (max-width: 1200px){.header-container{flex-direction:column}}@media screen and (min-width: 1201px){.header-container{gap:var(--ic-space-xs);align-items:baseline}}@media screen and (min-width: 769px){.description-actions{justify-content:space-between}}@media screen and (max-width: 768px){.description-actions{flex-direction:column;align-items:flex-start;gap:var(--ic-space-xs)}}@media screen and (min-width: 577px){.action-area{align-items:center}}@media screen and (max-width: 576px){.action-area{flex-direction:column}}';const r="Title Bar";const n=class{constructor(i){a(this,i);this.icTableDensityUpdate=t(this,"icTableDensityUpdate",7);this.initialDensitySelectOption="default";this.isEmbedded=false;this.changeDensity=a=>{this.icTableDensityUpdate.emit({value:a.detail.value})};this.description=undefined;this.heading=r;this.hideDensitySelect=false;this.metadata=undefined}componentWillLoad(){const a=this.el.parentElement;if(a.tagName==="IC-DATA-TABLE"){const t=a;this.initialDensitySelectOption=t.density;this.isEmbedded=t.embedded;if(this.heading===r){this.heading=t.caption}}}render(){const{changeDensity:a,description:t,el:e,heading:c,hideDensitySelect:r,initialDensitySelectOption:n,isEmbedded:o,metadata:l}=this;const p=s(e,"primary-action")||s(e,"custom-actions")||!r;const d=s(e,"description")||t;return i("div",{class:{"title-bar-wrapper":true,"full-width":o}},i("div",{class:"header-container"},i("slot",{name:"heading"},i("ic-typography",{variant:"h3",className:"heading"},i("h3",null,c))),l&&i("ic-typography",{variant:"subtitle-small"},l)),(p||d)&&i("div",{class:"description-actions"},i("slot",{name:"description"},t&&i("ic-typography",{variant:"body"},t)),p&&i("div",{class:"action-area"},s(e,"custom-actions")&&i("div",{class:"custom-actions-wrapper"},i("slot",{name:"custom-actions"})),!r&&i("ic-select",{small:true,label:"Change density",class:"density-input",hideLabel:true,options:[{label:"Default",value:"default"},{label:"Dense",value:"dense"},{label:"Spacious",value:"spacious"}],value:n,onIcChange:a}),s(e,"primary-action")&&i("slot",{name:"primary-action"}))))}get el(){return e(this)}};n.style=c;export{n as ic_data_table_title_bar};
2
- //# sourceMappingURL=p-7565b23c.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icDataTableTitleBarCss","DEFAULT_TITLE_BAR_HEADING","DataTableTitleBar","this","initialDensitySelectOption","isEmbedded","changeDensity","ev","icTableDensityUpdate","emit","value","detail","componentWillLoad","parentEl","el","parentElement","tagName","dataTable","density","embedded","heading","caption","render","description","hideDensitySelect","metadata","showActionArea","isSlotUsed","hasDescription","h","class","name","variant","className","small","label","hideLabel","options","onIcChange"],"sources":["src/components/ic-data-table-title-bar/ic-data-table-title-bar.css?tag=ic-data-table-title-bar&encapsulation=shadow","src/components/ic-data-table-title-bar/ic-data-table-title-bar.tsx"],"sourcesContent":[".title-bar-wrapper,\n.header-container,\n.description-actions,\n.action-area,\n.custom-actions-wrapper {\n display: flex;\n}\n\n.title-bar-wrapper,\n.action-area,\n.custom-actions-wrapper {\n gap: var(--ic-space-xs);\n}\n\n.title-bar-wrapper {\n flex-direction: column;\n padding: var(--ic-space-sm) var(--ic-space-xs);\n border-bottom: var(--ic-space-1px) solid var(--ic-architectural-300);\n}\n\n.full-width {\n padding: var(--ic-space-sm) 0;\n border-bottom: none;\n}\n\nic-typography.heading h3 {\n margin: 0;\n}\n\nic-typography.ic-typography-subtitle-small {\n color: var(--ic-color-tertiary-text);\n}\n\nic-typography.ic-typography-h3,\n::slotted([slot=\"header\"]) {\n max-width: 50rem;\n}\n\nic-typography.ic-typography-body,\n::slotted([slot=\"description\"]) {\n color: var(--ic-color-secondary-text);\n}\n\nic-typography.ic-typography-body,\nic-typography.ic-typography-subtitle-small,\n::slotted([slot=\"description\"]) {\n max-width: 40rem;\n}\n\n.density-input {\n --input-width: 7.625rem;\n}\n\n@media screen and (max-width: 1200px) {\n .header-container {\n flex-direction: column;\n }\n}\n\n@media screen and (min-width: 1201px) {\n .header-container {\n gap: var(--ic-space-xs);\n align-items: baseline;\n }\n}\n\n@media screen and (min-width: 769px) {\n .description-actions {\n justify-content: space-between;\n }\n}\n\n@media screen and (max-width: 768px) {\n .description-actions {\n flex-direction: column;\n align-items: flex-start;\n gap: var(--ic-space-xs);\n }\n}\n\n@media screen and (min-width: 577px) {\n .action-area {\n align-items: center;\n }\n}\n\n@media screen and (max-width: 576px) {\n .action-area {\n flex-direction: column;\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Prop,\n h,\n} from \"@stencil/core\";\nimport { IcSelectCustomEvent } from \"@ukic/web-components/dist/types/interface\";\nimport {\n IcDataTableDensityOptions,\n IcDensityUpdateEventDetail,\n} from \"../ic-data-table/ic-data-table.types\";\nimport { isSlotUsed } from \"../../utils/helpers\";\n\nconst DEFAULT_TITLE_BAR_HEADING = \"Title Bar\";\n\n/**\n * @slot primary-action - Render an interactive element that will perform a primary action. Renders to the right of the density select.\n * @slot custom-actions - Render additional custom actions to the left of the density select.\n * @slot heading - The heading to render on the data table title bar.\n * @slot description - Render an alternative description in the description section.\n */\n@Component({\n tag: \"ic-data-table-title-bar\",\n styleUrl: \"ic-data-table-title-bar.css\",\n shadow: true,\n})\nexport class DataTableTitleBar {\n private initialDensitySelectOption: IcDataTableDensityOptions = \"default\";\n private isEmbedded: boolean = false;\n\n @Element() el: HTMLIcDataTableTitleBarElement;\n\n /**\n * The description that is displayed below the `heading` and `metadata`. Can be overridden with the `description` slot.\n */\n @Prop() description?: string;\n\n /**\n * The heading of the title bar. Can be overridden with the `heading` slot. If used with an `ic-data-table` it will default to the table's `caption` unless overridden.\n */\n @Prop() heading?: string = DEFAULT_TITLE_BAR_HEADING;\n\n /**\n * When `true`, the density select will not be rendered.\n */\n @Prop() hideDensitySelect?: boolean = false;\n\n /**\n * The metadata displayed next to the `heading`.\n */\n @Prop() metadata?: string;\n\n /**\n * Emitted when the table density select value is changed.\n */\n @Event() icTableDensityUpdate: EventEmitter<IcDensityUpdateEventDetail>;\n\n componentWillLoad(): void {\n const parentEl = this.el.parentElement;\n if (parentEl.tagName === \"IC-DATA-TABLE\") {\n const dataTable = parentEl as HTMLIcDataTableElement;\n this.initialDensitySelectOption = dataTable.density;\n this.isEmbedded = dataTable.embedded;\n if (this.heading === DEFAULT_TITLE_BAR_HEADING) {\n this.heading = dataTable.caption;\n }\n }\n }\n\n private changeDensity = (\n ev: IcSelectCustomEvent<IcDensityUpdateEventDetail>\n ) => {\n this.icTableDensityUpdate.emit({ value: ev.detail.value });\n };\n\n render() {\n const {\n changeDensity,\n description,\n el,\n heading,\n hideDensitySelect,\n initialDensitySelectOption,\n isEmbedded,\n metadata,\n } = this;\n const showActionArea =\n isSlotUsed(el, \"primary-action\") ||\n isSlotUsed(el, \"custom-actions\") ||\n !hideDensitySelect;\n\n const hasDescription = isSlotUsed(el, \"description\") || description;\n return (\n <div\n class={{\n \"title-bar-wrapper\": true,\n \"full-width\": isEmbedded,\n }}\n >\n <div class=\"header-container\">\n <slot name=\"heading\">\n <ic-typography variant=\"h3\" className=\"heading\">\n <h3>{heading}</h3>\n </ic-typography>\n </slot>\n {metadata && (\n <ic-typography variant=\"subtitle-small\">{metadata}</ic-typography>\n )}\n </div>\n {(showActionArea || hasDescription) && (\n <div class=\"description-actions\">\n <slot name=\"description\">\n {description && (\n <ic-typography variant=\"body\">{description}</ic-typography>\n )}\n </slot>\n {showActionArea && (\n <div class=\"action-area\">\n {isSlotUsed(el, \"custom-actions\") && (\n <div class=\"custom-actions-wrapper\">\n <slot name=\"custom-actions\" />\n </div>\n )}\n {!hideDensitySelect && (\n <ic-select\n small\n label=\"Change density\"\n class=\"density-input\"\n hideLabel\n options={[\n { label: \"Default\", value: \"default\" },\n { label: \"Dense\", value: \"dense\" },\n { label: \"Spacious\", value: \"spacious\" },\n ]}\n value={initialDensitySelectOption}\n onIcChange={changeDensity}\n ></ic-select>\n )}\n {isSlotUsed(el, \"primary-action\") && (\n <slot name=\"primary-action\" />\n )}\n </div>\n )}\n </div>\n )}\n </div>\n );\n }\n}\n"],"mappings":"6FAAA,MAAMA,EAAyB,m3CCe/B,MAAMC,EAA4B,Y,MAarBC,EAAiB,M,oFACpBC,KAAAC,2BAAwD,UACxDD,KAAAE,WAAsB,MAyCtBF,KAAAG,cACNC,IAEAJ,KAAKK,qBAAqBC,KAAK,CAAEC,MAAOH,EAAGI,OAAOD,OAAQ,E,wCAhCjCT,E,uBAKW,M,wBAYtC,iBAAAW,GACE,MAAMC,EAAWV,KAAKW,GAAGC,cACzB,GAAIF,EAASG,UAAY,gBAAiB,CACxC,MAAMC,EAAYJ,EAClBV,KAAKC,2BAA6Ba,EAAUC,QAC5Cf,KAAKE,WAAaY,EAAUE,SAC5B,GAAIhB,KAAKiB,UAAYnB,EAA2B,CAC9CE,KAAKiB,QAAUH,EAAUI,O,GAW/B,MAAAC,GACE,MAAMhB,cACJA,EAAaiB,YACbA,EAAWT,GACXA,EAAEM,QACFA,EAAOI,kBACPA,EAAiBpB,2BACjBA,EAA0BC,WAC1BA,EAAUoB,SACVA,GACEtB,KACJ,MAAMuB,EACJC,EAAWb,EAAI,mBACfa,EAAWb,EAAI,oBACdU,EAEH,MAAMI,EAAiBD,EAAWb,EAAI,gBAAkBS,EACxD,OACEM,EAAA,OACEC,MAAO,CACL,oBAAqB,KACrB,aAAczB,IAGhBwB,EAAA,OAAKC,MAAM,oBACTD,EAAA,QAAME,KAAK,WACTF,EAAA,iBAAeG,QAAQ,KAAKC,UAAU,WACpCJ,EAAA,UAAKT,KAGRK,GACCI,EAAA,iBAAeG,QAAQ,kBAAkBP,KAG3CC,GAAkBE,IAClBC,EAAA,OAAKC,MAAM,uBACTD,EAAA,QAAME,KAAK,eACRR,GACCM,EAAA,iBAAeG,QAAQ,QAAQT,IAGlCG,GACCG,EAAA,OAAKC,MAAM,eACRH,EAAWb,EAAI,mBACde,EAAA,OAAKC,MAAM,0BACTD,EAAA,QAAME,KAAK,qBAGbP,GACAK,EAAA,aACEK,MAAK,KACLC,MAAM,iBACNL,MAAM,gBACNM,UAAS,KACTC,QAAS,CACP,CAAEF,MAAO,UAAWzB,MAAO,WAC3B,CAAEyB,MAAO,QAASzB,MAAO,SACzB,CAAEyB,MAAO,WAAYzB,MAAO,aAE9BA,MAAON,EACPkC,WAAYhC,IAGfqB,EAAWb,EAAI,mBACde,EAAA,QAAME,KAAK,qB"}
@@ -1,2 +0,0 @@
1
- import{r as t,f as i,h as e,H as n,g as o}from"./p-8455d1bb.js";import{O as r}from"./p-ea1ea1b9.js";import{y as l,x as s,l as a}from"./p-da506987.js";import{I as c}from"./p-fd186591.js";const d='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host(.link) .ic-link,:host(.link) ::slotted(a){color:var(--ic-hyperlink);text-decoration:underline;font-weight:var(--ic-font-weight-bold);transition:var(--ic-easing-transition-fast)}:host(.link.dark) .ic-link.dark,:host(.link.dark) ::slotted(a){color:var(--ic-color-primary-text)}:host(.link.light) .ic-link.light,:host(.link.light) ::slotted(a){color:var(--ic-color-white-text)}:host(.link) .ic-link:visited,:host(.link) ::slotted(a:visited){color:var(--ic-hyperlink-visited)}:host(.link) .ic-link:hover,:host(.link) .ic-link:focus,:host(.link) ::slotted(a:hover),:host(.link) ::slotted(a:focus){outline:none;border-bottom:0.25rem solid !important;margin-bottom:-0.25rem !important;text-decoration:none}@supports (text-underline-offset: 10%){:host(.link) .ic-link:hover,:host(.link) .ic-link:focus,:host(.link) ::slotted(a:hover),:host(.link) ::slotted(a:focus){text-decoration-line:underline;text-decoration-thickness:25%;text-underline-offset:10%;border-bottom:0 !important;margin-bottom:0 !important}}:host(.link) .ic-link:active,:host(.link) .ic-link:focus:active,:host(.link) .ic-link:visited:active,:host(.link) ::slotted(a:active),:host(.link) ::slotted(a:focus:active),:host(.link) ::slotted(a:visited:active){text-decoration:none}.ic-link-open-in-new-icon{vertical-align:middle;margin-left:var(--ic-space-xxs)}.ic-link>.ic-link-open-in-new-icon{fill:var(--ic-hyperlink)}.ic-link.dark>.ic-link-open-in-new-icon{fill:var(--ic-color-primary-text)}.ic-link.light>.ic-link-open-in-new-icon{fill:var(--ic-color-white-text)}.ic-link-open-in-new-icon>svg{width:var(--ic-space-md);height:var(--ic-space-md);fill:currentcolor}.ic-link:visited>.ic-link-open-in-new-icon{fill:var(--ic-hyperlink-visited)}.ic-link.light:visited>.ic-link-open-in-new-icon{fill:var(--ic-hyperlink-contrast-visited)}:host(.breadcrumb-link) .ic-link{display:var(--breadcrumb-link-display);align-items:var(--breadcrumb-link-align-items);gap:var(--breadcrumb-link-gap)}:host(.breadcrumb-link) .ic-link ::slotted(.back-icon){height:var(--ic-space-lg);width:var(--ic-space-lg)}:host(.breadcrumb-link.current-page) a,:host(.breadcrumb-link.current-page) ::slotted(a){font-weight:normal;color:inherit;text-decoration:none;display:flex;align-items:center}:host(.breadcrumb-link.current-page) .ic-link,:host(.breadcrumb-link.current-page) ::slotted(a:focus){outline:var(--ic-hc-focus-outline);text-decoration:none}:host(.breadcrumb-link.current-page) .ic-link:visited{color:var(--ic-color-primary-text)}';const h=class{constructor(e){t(this,e);this.inheritedAttributes={};this.hostMutationObserver=null;this.hostMutationCallback=t=>{let e=false;t.forEach((({attributeName:t})=>{if(l.includes(t)){this.inheritedAttributes[t]=this.el.getAttribute(t);e=true}}));if(e){i(this)}};this.appearance="default";this.download=false;this.href=null;this.hreflang=undefined;this.referrerpolicy=undefined;this.rel=undefined;this.showIcon=undefined;this.target=undefined}componentWillLoad(){this.inheritedAttributes=s(this.el,l);this.updateTheme()}componentDidLoad(){this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{attributes:true})}disconnectedCallback(){var t;(t=this.hostMutationObserver)===null||t===void 0?void 0:t.disconnect()}themeChangeHandler({detail:t}){this.updateTheme(t.mode)}async setFocus(){var t;(t=this.el.shadowRoot.querySelector("a"))===null||t===void 0?void 0:t.focus()}updateTheme(t=null){const i=a(this.el,t);if(i!==c.Default){this.appearance=i}}hasRouterSlot(){this.routerSlot=this.el.querySelector('[slot="router-item"]');if(this.routerSlot){this.routerSlot.ariaLabel=this.routerSlot.textContent}return!!this.routerSlot}render(){const{download:t,href:i,hreflang:o,referrerpolicy:l,rel:s,target:a,showIcon:c,appearance:d}=this;return e(n,{class:{["link"]:true,[`${d}`]:true}},this.hasRouterSlot()?e("slot",{name:"router-item"}):e("a",Object.assign({class:{["ic-link"]:i!==null,[`${d}`]:i!==null},download:t!==false?t:null,href:i,hrefLang:o,referrerPolicy:l,rel:s,target:a,tabindex:i!==null?"0":"-1"},this.inheritedAttributes),e("slot",null),(c||a==="_blank")&&e("span",{class:"ic-link-open-in-new-icon",innerHTML:r})))}static get delegatesFocus(){return true}get el(){return o(this)}};h.style=d;export{h as ic_link};
2
- //# sourceMappingURL=p-7bba4c47.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icLinkCss","Link","constructor","hostRef","this","inheritedAttributes","hostMutationObserver","hostMutationCallback","mutationList","forceComponentUpdate","forEach","attributeName","IC_INHERITED_ARIA","includes","el","getAttribute","forceUpdate","appearance","download","href","hreflang","undefined","referrerpolicy","rel","showIcon","target","componentWillLoad","inheritAttributes","updateTheme","componentDidLoad","MutationObserver","observe","attributes","disconnectedCallback","_a","disconnect","themeChangeHandler","detail","mode","setFocus","shadowRoot","querySelector","focus","newTheme","theme","getThemeFromContext","IcThemeForegroundEnum","Default","hasRouterSlot","routerSlot","ariaLabel","textContent","render","h","Host","class","name","Object","assign","hrefLang","referrerPolicy","tabindex","innerHTML","OpenInNew","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-link/ic-link.css?tag=ic-link&encapsulation=shadow","../web-components/dist/collection/components/ic-link/ic-link.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:host(.link) .ic-link,\n:host(.link) ::slotted(a) {\n color: var(--ic-hyperlink);\n text-decoration: underline;\n font-weight: var(--ic-font-weight-bold);\n transition: var(--ic-easing-transition-fast);\n}\n\n:host(.link.dark) .ic-link.dark,\n:host(.link.dark) ::slotted(a) {\n color: var(--ic-color-primary-text);\n}\n\n:host(.link.light) .ic-link.light,\n:host(.link.light) ::slotted(a) {\n color: var(--ic-color-white-text);\n}\n\n:host(.link) .ic-link:visited,\n:host(.link) ::slotted(a:visited) {\n color: var(--ic-hyperlink-visited);\n}\n\n:host(.link) .ic-link:hover,\n:host(.link) .ic-link:focus,\n:host(.link) ::slotted(a:hover),\n:host(.link) ::slotted(a:focus) {\n outline: none;\n border-bottom: 0.25rem solid !important;\n margin-bottom: -0.25rem !important;\n text-decoration: none;\n}\n\n@supports (text-underline-offset: 10%) {\n :host(.link) .ic-link:hover,\n :host(.link) .ic-link:focus,\n :host(.link) ::slotted(a:hover),\n :host(.link) ::slotted(a:focus) {\n text-decoration-line: underline;\n text-decoration-thickness: 25%;\n text-underline-offset: 10%;\n border-bottom: 0 !important;\n margin-bottom: 0 !important;\n }\n}\n\n:host(.link) .ic-link:active,\n:host(.link) .ic-link:focus:active,\n:host(.link) .ic-link:visited:active,\n:host(.link) ::slotted(a:active),\n:host(.link) ::slotted(a:focus:active),\n:host(.link) ::slotted(a:visited:active) {\n text-decoration: none;\n}\n\n.ic-link-open-in-new-icon {\n vertical-align: middle;\n margin-left: var(--ic-space-xxs);\n}\n\n.ic-link > .ic-link-open-in-new-icon {\n fill: var(--ic-hyperlink);\n}\n\n.ic-link.dark > .ic-link-open-in-new-icon {\n fill: var(--ic-color-primary-text);\n}\n\n.ic-link.light > .ic-link-open-in-new-icon {\n fill: var(--ic-color-white-text);\n}\n\n.ic-link-open-in-new-icon > svg {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n fill: currentcolor;\n}\n\n.ic-link:visited > .ic-link-open-in-new-icon {\n fill: var(--ic-hyperlink-visited);\n}\n\n.ic-link.light:visited > .ic-link-open-in-new-icon {\n fill: var(--ic-hyperlink-contrast-visited);\n}\n\n:host(.breadcrumb-link) .ic-link {\n display: var(--breadcrumb-link-display);\n align-items: var(--breadcrumb-link-align-items);\n gap: var(--breadcrumb-link-gap);\n}\n\n:host(.breadcrumb-link) .ic-link ::slotted(.back-icon) {\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n}\n\n:host(.breadcrumb-link.current-page) a,\n:host(.breadcrumb-link.current-page) ::slotted(a) {\n font-weight: normal;\n color: inherit;\n text-decoration: none;\n display: flex;\n align-items: center;\n}\n\n:host(.breadcrumb-link.current-page) .ic-link,\n:host(.breadcrumb-link.current-page) ::slotted(a:focus) {\n outline: var(--ic-hc-focus-outline);\n text-decoration: none;\n}\n\n:host(.breadcrumb-link.current-page) .ic-link:visited {\n color: var(--ic-color-primary-text);\n}\n","import { h, Host, forceUpdate, } from \"@stencil/core\";\nimport OpenInNew from \"../../assets/OpenInNew.svg\";\nimport { getThemeFromContext, inheritAttributes } from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport { IcThemeForegroundEnum, } from \"../../utils/types\";\n/**\n * @slot router-item - Handle routing by nesting your routes in this slot.\n */\nexport class Link {\n constructor() {\n this.inheritedAttributes = {};\n this.hostMutationObserver = null;\n // triggered when attributes of host element change\n this.hostMutationCallback = (mutationList) => {\n let forceComponentUpdate = false;\n mutationList.forEach(({ attributeName }) => {\n if (IC_INHERITED_ARIA.includes(attributeName)) {\n this.inheritedAttributes[attributeName] =\n this.el.getAttribute(attributeName);\n forceComponentUpdate = true;\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n this.appearance = \"default\";\n this.download = false;\n this.href = null;\n this.hreflang = undefined;\n this.referrerpolicy = undefined;\n this.rel = undefined;\n this.showIcon = undefined;\n this.target = undefined;\n }\n componentWillLoad() {\n this.inheritedAttributes = inheritAttributes(this.el, IC_INHERITED_ARIA);\n this.updateTheme();\n }\n componentDidLoad() {\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n }\n disconnectedCallback() {\n var _a;\n (_a = this.hostMutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n }\n themeChangeHandler({ detail }) {\n this.updateTheme(detail.mode);\n }\n /**\n * Sets focus on the link.\n */\n async setFocus() {\n var _a;\n (_a = this.el.shadowRoot.querySelector(\"a\")) === null || _a === void 0 ? void 0 : _a.focus();\n }\n updateTheme(newTheme = null) {\n const theme = getThemeFromContext(this.el, newTheme);\n if (theme !== IcThemeForegroundEnum.Default) {\n this.appearance = theme;\n }\n }\n hasRouterSlot() {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n if (this.routerSlot) {\n this.routerSlot.ariaLabel = this.routerSlot.textContent;\n }\n return !!this.routerSlot;\n }\n render() {\n const { download, href, hreflang, referrerpolicy, rel, target, showIcon, appearance, } = this;\n return (h(Host, { class: { [\"link\"]: true, [`${appearance}`]: true } }, this.hasRouterSlot() ? (h(\"slot\", { name: \"router-item\" })) : (h(\"a\", Object.assign({ class: {\n [\"ic-link\"]: href !== null,\n [`${appearance}`]: href !== null,\n }, download: download !== false ? download : null, href: href, hrefLang: hreflang, referrerPolicy: referrerpolicy, rel: rel, target: target, tabindex: href !== null ? \"0\" : \"-1\" }, this.inheritedAttributes), h(\"slot\", null), (showIcon || target === \"_blank\") && (h(\"span\", { class: \"ic-link-open-in-new-icon\", innerHTML: OpenInNew }))))));\n }\n static get is() { return \"ic-link\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-link.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-link.css\"]\n };\n }\n static get properties() {\n return {\n \"appearance\": {\n \"type\": \"string\",\n \"mutable\": true,\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 link, e.g. dark, light, or default.\"\n },\n \"attribute\": \"appearance\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"download\": {\n \"type\": \"any\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string | boolean\",\n \"resolved\": \"boolean | string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the user can save the linked URL instead of navigating to it.\"\n },\n \"attribute\": \"download\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"href\": {\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 URL that the link points to.\"\n },\n \"attribute\": \"href\",\n \"reflect\": false,\n \"defaultValue\": \"null\"\n },\n \"hreflang\": {\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 human language of the linked URL.\"\n },\n \"attribute\": \"hreflang\",\n \"reflect\": false\n },\n \"referrerpolicy\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"ReferrerPolicy\",\n \"resolved\": \"\\\"\\\" | \\\"no-referrer\\\" | \\\"no-referrer-when-downgrade\\\" | \\\"origin\\\" | \\\"origin-when-cross-origin\\\" | \\\"same-origin\\\" | \\\"strict-origin\\\" | \\\"strict-origin-when-cross-origin\\\" | \\\"unsafe-url\\\"\",\n \"references\": {\n \"ReferrerPolicy\": {\n \"location\": \"global\",\n \"id\": \"global::ReferrerPolicy\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"How much of the referrer to send when following the link.\"\n },\n \"attribute\": \"referrerpolicy\",\n \"reflect\": false\n },\n \"rel\": {\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 relationship of the linked URL as space-separated link types.\"\n },\n \"attribute\": \"rel\",\n \"reflect\": false\n },\n \"showIcon\": {\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 \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. The 'open in new tab/window' icon will display automatically if target=\\\"_blank\\\".\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"show-icon\",\n \"reflect\": false\n },\n \"target\": {\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 place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\"\n },\n \"attribute\": \"target\",\n \"reflect\": false\n }\n };\n }\n static get methods() {\n return {\n \"setFocus\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"Sets focus on the link.\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get listeners() {\n return [{\n \"name\": \"themeChange\",\n \"method\": \"themeChangeHandler\",\n \"target\": \"document\",\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-link.js.map\n"],"mappings":"0LAAA,MAAMA,EAAY,4wJ,MCQLC,EAAI,MACb,WAAAC,CAAAC,G,UACIC,KAAKC,oBAAsB,GAC3BD,KAAKE,qBAAuB,KAE5BF,KAAKG,qBAAwBC,IACzB,IAAIC,EAAuB,MAC3BD,EAAaE,SAAQ,EAAGC,oBACpB,GAAIC,EAAkBC,SAASF,GAAgB,CAC3CP,KAAKC,oBAAoBM,GACrBP,KAAKU,GAAGC,aAAaJ,GACzBF,EAAuB,I,KAG/B,GAAIA,EAAsB,CACtBO,EAAYZ,K,GAGpBA,KAAKa,WAAa,UAClBb,KAAKc,SAAW,MAChBd,KAAKe,KAAO,KACZf,KAAKgB,SAAWC,UAChBjB,KAAKkB,eAAiBD,UACtBjB,KAAKmB,IAAMF,UACXjB,KAAKoB,SAAWH,UAChBjB,KAAKqB,OAASJ,S,CAElB,iBAAAK,GACItB,KAAKC,oBAAsBsB,EAAkBvB,KAAKU,GAAIF,GACtDR,KAAKwB,a,CAET,gBAAAC,GACIzB,KAAKE,qBAAuB,IAAIwB,iBAAiB1B,KAAKG,sBACtDH,KAAKE,qBAAqByB,QAAQ3B,KAAKU,GAAI,CACvCkB,WAAY,M,CAGpB,oBAAAC,GACI,IAAIC,GACHA,EAAK9B,KAAKE,wBAA0B,MAAQ4B,SAAY,OAAS,EAAIA,EAAGC,Y,CAE7E,kBAAAC,EAAmBC,OAAEA,IACjBjC,KAAKwB,YAAYS,EAAOC,K,CAK5B,cAAMC,GACF,IAAIL,GACHA,EAAK9B,KAAKU,GAAG0B,WAAWC,cAAc,QAAU,MAAQP,SAAY,OAAS,EAAIA,EAAGQ,O,CAEzF,WAAAd,CAAYe,EAAW,MACnB,MAAMC,EAAQC,EAAoBzC,KAAKU,GAAI6B,GAC3C,GAAIC,IAAUE,EAAsBC,QAAS,CACzC3C,KAAKa,WAAa2B,C,EAG1B,aAAAI,GACI5C,KAAK6C,WAAa7C,KAAKU,GAAG2B,cAAc,wBACxC,GAAIrC,KAAK6C,WAAY,CACjB7C,KAAK6C,WAAWC,UAAY9C,KAAK6C,WAAWE,W,CAEhD,QAAS/C,KAAK6C,U,CAElB,MAAAG,GACI,MAAMlC,SAAEA,EAAQC,KAAEA,EAAIC,SAAEA,EAAQE,eAAEA,EAAcC,IAAEA,EAAGE,OAAEA,EAAMD,SAAEA,EAAQP,WAAEA,GAAgBb,KACzF,OAAQiD,EAAEC,EAAM,CAAEC,MAAO,CAAE,CAAC,QAAS,KAAM,CAAC,GAAGtC,KAAe,OAAUb,KAAK4C,gBAAmBK,EAAE,OAAQ,CAAEG,KAAM,gBAAqBH,EAAE,IAAKI,OAAOC,OAAO,CAAEH,MAAO,CAC7J,CAAC,WAAYpC,IAAS,KACtB,CAAC,GAAGF,KAAeE,IAAS,MAC7BD,SAAUA,IAAa,MAAQA,EAAW,KAAMC,KAAMA,EAAMwC,SAAUvC,EAAUwC,eAAgBtC,EAAgBC,IAAKA,EAAKE,OAAQA,EAAQoC,SAAU1C,IAAS,KAAO,IAAM,MAAQf,KAAKC,qBAAsBgD,EAAE,OAAQ,OAAQ7B,GAAYC,IAAW,WAAc4B,EAAE,OAAQ,CAAEE,MAAO,2BAA4BO,UAAWC,K,CAIzU,yBAAWC,GAAmB,OAAO,IAAK,C"}
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as e,H as s,g as a}from"./p-8455d1bb.js";import{c as n}from"./p-e081702e.js";import{j as o,e as r,i as h,a as l}from"./p-da506987.js";import"./p-fd186591.js";const d='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;min-height:100% !important;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);opacity:0}:host(.fade-in){opacity:1}:host(.disable-height-constraint){background:none;justify-content:unset;align-items:unset}.dialog.disable-height-constraint{max-height:none;position:relative}.dialog.disable-height-constraint .content-area{overflow-y:visible}@media (prefers-reduced-motion: no-preference){:host{transition:opacity var(--ic-easing-transition-slow)}.dialog{transform:translateY(-3rem);transition:transform 1000s}:host(.fade-in) .dialog{transform:translateY(0);transition:transform var(--ic-easing-transition-slow)}}:host(.hidden){display:none}.dialog{background-color:var(--ic-architectural-white);color:var(--ic-architectural-black);border:var(--ic-border-default);border-radius:var(--ic-border-radius);padding:var(--ic-space-xs) 0 var(--ic-space-md);display:flex;flex-direction:column;box-sizing:border-box;overflow-x:visible}.small{width:50%;max-width:25rem;min-height:11rem;max-height:70vh}.medium{width:70vw;max-width:44rem;min-height:12.5rem;max-height:70vh}.large{width:90vw;max-width:62.5rem;min-height:12.5rem;max-height:90vh}.heading-area{display:flex;margin-bottom:var(--ic-space-xs);padding:0 var(--ic-space-md)}.heading{overflow-wrap:break-word}.close-icon{margin-left:auto}.content-area{-ms-overflow-style:none;scrollbar-width:none;padding:0 var(--ic-space-md);margin:0;overflow-y:auto}.content-area::-webkit-scrollbar{display:none}#dialog-content{margin-bottom:var(--ic-space-sm)}#dialog-content ::slotted(ic-typography){overflow-wrap:break-word}#dialog-content ::slotted(*){position:relative}.status-alert{margin-bottom:var(--ic-space-xs)}.dialog-controls{margin-top:auto;padding:var(--ic-space-xs) var(--ic-space-md) 0;display:flex;justify-content:flex-end;gap:var(--ic-space-md)}.dialog-control-button{width:-moz-fit-content;width:fit-content}.backdrop{overflow-y:auto;position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgb(0 0 0 / 60%);z-index:var(--ic-z-index-dialog);padding-top:16px;padding-bottom:16px}@media (min-width: 800px){:host([size="large"]) .dialog:not(.disable-width-constraint)>.content-area{width:75%}}@media (max-width: 576px){.dialog{width:100vw;height:100vh;transform:translateY(-5rem);max-width:none;max-height:none;box-sizing:border-box}.backdrop{padding:0}.dialog.disable-height-constraint{height:auto;min-height:100vh}}@media (max-width: 364px){.triple-button{flex-direction:column;gap:var(--ic-space-xs)}.dialog-control-button{width:unset}}';const c=class{constructor(s){t(this,s);this.icDialogCancelled=i(this,"icDialogCancelled",7);this.icDialogClosed=i(this,"icDialogClosed",7);this.icDialogConfirmed=i(this,"icDialogConfirmed",7);this.icDialogOpened=i(this,"icDialogOpened",7);this.DATA_GETS_FOCUS="data-gets-focus";this.DATA_GETS_FOCUS_SELECTOR="[data-gets-focus]";this.DIALOG_CONTROLS="dialog-controls";this.dialogHeight=0;this.focusedElementIndex=0;this.IC_TEXT_FIELD="IC-TEXT-FIELD";this.IC_ACCORDION="IC-ACCORDION";this.IC_ACCORDION_GROUP="IC-ACCORDION-GROUP";this.IC_SEARCH_BAR="IC-SEARCH-BAR";this.resizeObserver=null;this.dialogOpened=()=>{var t;this.dialogRendered=true;if(this.disableHeightConstraint){this.dialogEl.show()}else{(t=this.dialogEl)===null||t===void 0?void 0:t.showModal()}setTimeout((()=>{this.fadeIn=true;if(this.disableHeightConstraint&&this.backdropEl.scrollTop!==0){this.backdropEl.scrollTop=0}}),10);setTimeout((()=>{this.setInitialFocus();o(this.runResizeObserver)}),75);setTimeout((()=>{this.getFocusedElementIndex();this.icDialogOpened.emit()}),80)};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{clearTimeout(this.resizeTimeout);this.resizeTimeout=window.setTimeout(this.resizeObserverCallback,80)}));this.resizeObserver.observe(this.dialogEl)};this.resizeObserverCallback=()=>{if(this.dialogEl.clientHeight!==this.dialogHeight){this.dialogHeight=this.dialogEl.clientHeight}};this.refreshInteractiveElementsOnSlotChange=()=>{this.contentArea=this.el.shadowRoot.querySelector("#dialog-content slot");this.contentArea.addEventListener("slotchange",this.getInteractiveElements)};this.removeSlotChangeListener=()=>{if(this.contentArea){this.contentArea.removeEventListener("slotchange",this.getInteractiveElements)}};this.setInitialFocus=()=>{this.sourceElement=document.activeElement;let t;if(this.el.querySelector(this.DATA_GETS_FOCUS_SELECTOR)!==null){t=this.el.querySelector(this.DATA_GETS_FOCUS_SELECTOR)}else{t=this.el.shadowRoot.querySelector(this.DATA_GETS_FOCUS_SELECTOR)}if(t.tagName===this.IC_TEXT_FIELD){t.setFocus()}else if(t.tagName===this.IC_ACCORDION_GROUP){t.setFocus()}else if(t.tagName===this.IC_ACCORDION){t.setFocus()}else if(t.tagName===this.IC_SEARCH_BAR){t.setFocus()}else{t.focus({preventScroll:this.disableHeightConstraint?true:false})}};this.getFocusedElementIndex=()=>{for(let t=0;t<this.interactiveElementList.length;t++){if(this.interactiveElementList[t]===(this.el.shadowRoot.activeElement||document.activeElement)){this.focusedElementIndex=t}}};this.setAlertVariant=()=>{if(r(this.status)&&this.status!==null){const t=this.el.shadowRoot.querySelector("ic-alert");t.setAttribute("variant",this.status)}};this.closeIconClick=()=>{this.open=false};this.getInteractiveElements=()=>{this.interactiveElementList=Array.from(this.el.shadowRoot.querySelectorAll("ic-button"));const t=Array.from(this.el.querySelectorAll(`a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex="-1"]), \n ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-group, ic-radio-group, \n ic-back-to-top, ic-breadcrumb, ic-chip[dismissible="true"], ic-footer-link, ic-link, ic-navigation-button, \n ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion, ic-date-input, ic-date-picker`));if(t.length>0){if(t[0].slot!==this.DIALOG_CONTROLS){t[0].setAttribute(this.DATA_GETS_FOCUS,"")}else if(!this.destructive){t[t.length-1].setAttribute(this.DATA_GETS_FOCUS,"")}}for(let i=0;i<t.length;i++){this.interactiveElementList.splice(1+i,0,t[i])}};this.getNextFocusEl=t=>this.interactiveElementList[t];this.focusNextInteractiveElement=t=>{this.getFocusedElementIndex();if(this.interactiveElementList[this.focusedElementIndex].tagName==="IC-SEARCH-BAR"){return false}this.setFocusIndexBasedOnShiftKey(t);this.loopNextFocusIndexIfLastElement();let i=this.getNextFocusEl(this.focusedElementIndex);const e=getComputedStyle(i).visibility==="hidden"||i.tagName===this.IC_ACCORDION_GROUP&&i.hasAttribute("single-expansion");if(i.tagName===this.IC_TEXT_FIELD){i.setFocus()}else{if(e){this.setFocusIndexBasedOnShiftKey(t);this.loopNextFocusIndexIfLastElement();i=this.getNextFocusEl(this.focusedElementIndex)}if(i.tagName===this.IC_ACCORDION_GROUP){i.setFocus()}else if(i.tagName===this.IC_ACCORDION){i.setFocus()}else if(i.tagName===this.IC_SEARCH_BAR){i.setFocus()}else{i.focus()}}return true};this.setButtonOnClick=()=>{var t,i,e;if(this.buttons){this.buttonOnclick0=new Function((t=this.buttonProps[0])===null||t===void 0?void 0:t.onclick);this.buttonOnclick1=new Function((i=this.buttonProps[1])===null||i===void 0?void 0:i.onclick);this.buttonOnclick2=new Function((e=this.buttonProps[2])===null||e===void 0?void 0:e.onclick)}};this.getButtonOnclick=t=>{if(t===0){return this.buttonOnclick0()}else if(t===1){return this.buttonOnclick1()}else{return this.buttonOnclick2()}};this.getButtonVariant=t=>{const i=this.destructive?"destructive":"primary";if(this.buttonProps.length===1){return i}else if(this.buttonProps.length===2){if(t===0){return"tertiary"}else{return i}}else{if(t===2){return i}else{return"secondary"}}};this.renderDialog=()=>{const{alertHeading:t,alertMessage:i,buttons:s,buttonProps:a,size:o,heading:r,label:l,status:d,destructive:c,dismissLabel:u,hideCloseButton:m}=this;return e("dialog",{class:{["dialog"]:true,[`${o}`]:true,["disable-height-constraint"]:this.disableHeightConstraint,["disable-width-constraint"]:this.disableWidthConstraint},"aria-labelledby":"dialog-label dialog-heading","aria-describedby":"dialog-alert dialog-content",ref:t=>this.dialogEl=t},e("div",{class:"heading-area"},e("div",{class:"heading-content"},e("div",{class:"label"},e("slot",{name:"label"},e("ic-typography",{variant:"label",id:"dialog-label"},l))),e("div",{class:"heading"},e("slot",{name:"heading"},e("ic-typography",{variant:"h4",id:"dialog-heading"},r)))),!m&&e("ic-button",{class:"close-icon",variant:"icon",innerHTML:n,"aria-label":u,onClick:this.closeIconClick,"data-gets-focus":c||!s?"":null})),e("div",{class:"content-area"},h(this.el,"alert")?e("slot",{name:"alert"}):d&&e("ic-alert",{variant:d,heading:t,message:i,"title-above":true,class:"status-alert",id:"dialog-alert"}),e("div",{id:"dialog-content"},e("slot",null))),(s||h(this.el,this.DIALOG_CONTROLS))&&e("div",{class:{[this.DIALOG_CONTROLS]:true,["triple-button"]:a.length===3}},e("slot",{name:this.DIALOG_CONTROLS},!h(this.el,this.DIALOG_CONTROLS)&&a.map(((t,i)=>{if(i>2){return}else{return e("ic-button",{variant:this.getButtonVariant(i),onClick:()=>this.getButtonOnclick(i),class:"dialog-control-button","full-width":a.length===3,"data-gets-focus":this.getButtonVariant(i)==="primary"?"":null},t.label)}})))))};this.dialogRendered=false;this.fadeIn=false;this.alertHeading=undefined;this.alertMessage=undefined;this.buttons=true;this.closeOnBackdropClick=true;this.destructive=false;this.dismissLabel="Dismiss";this.disableHeightConstraint=false;this.disableWidthConstraint=false;this.hideCloseButton=false;this.heading=undefined;this.label=undefined;this.open=undefined;this.size="small";this.status=undefined;this.buttonProps=[{label:"Cancel",onclick:"this.cancelDialog();"},{label:"Confirm",onclick:"this.confirmDialog();"}]}watchOpenHandler(){if(this.open){this.dialogOpened()}else{this.fadeIn=false;if(this.resizeObserver!==null){this.resizeObserver.disconnect()}setTimeout((()=>{var t;this.dialogRendered=false;this.dialogEl.close();(t=this.sourceElement)===null||t===void 0?void 0:t.focus();this.dialogHeight=0;this.icDialogClosed.emit()}),80)}}watchPropHandler(){this.setButtonOnClick()}disconnectedCallback(){this.removeSlotChangeListener()}componentWillLoad(){if(this.buttonProps.length){this.setButtonOnClick()}}componentDidLoad(){this.getInteractiveElements();this.setAlertVariant();this.refreshInteractiveElementsOnSlotChange();if(this.open){this.dialogOpened()}!h(this.el,"heading")&&l([{prop:this.heading,propName:"heading"}],"Dialog")}componentDidRender(){if(getComputedStyle(this.el).display!=="none"&&this.disableHeightConstraint){document.body.style.overflow="hidden"}else{document.body.style.overflow="auto"}}handleKeyboard(t){if(this.dialogRendered){switch(t.key){case"Tab":if(this.focusNextInteractiveElement(t.shiftKey)){t.preventDefault()}break;case"Escape":if(!t.repeat){this.open=false}t.stopImmediatePropagation();break}}}handleClick(t){const i=this.el.shadowRoot.querySelector("dialog");if(this.closeOnBackdropClick&&t.composedPath().indexOf(i)<=0){const i=this.dialogEl.getBoundingClientRect();const e=i.top<=t.clientY&&t.clientY<=i.top+i.height&&i.left<=t.clientX&&t.clientX<=i.left+i.width;if(!e){this.open=false}}}async showDialog(){this.open=true}async hideDialog(){this.open=false}async cancelDialog(){this.icDialogCancelled.emit();this.open=false}async confirmDialog(){this.icDialogConfirmed.emit()}loopNextFocusIndexIfLastElement(){if(this.focusedElementIndex>this.interactiveElementList.length-1)this.focusedElementIndex=0;else if(this.focusedElementIndex<0){this.focusedElementIndex=this.interactiveElementList.length-1}}setFocusIndexBasedOnShiftKey(t){if(t){this.focusedElementIndex-=1}else{this.focusedElementIndex+=1}}render(){return e(s,{class:{["hidden"]:!this.dialogRendered,["fade-in"]:this.fadeIn,["disable-height-constraint"]:this.disableHeightConstraint}},this.disableHeightConstraint?e("div",{class:"backdrop",ref:t=>this.backdropEl=t},this.renderDialog()):this.renderDialog())}get el(){return a(this)}static get watchers(){return{open:["watchOpenHandler"],buttonProps:["watchPropHandler"]}}};c.style=d;export{c as ic_dialog};
2
- //# sourceMappingURL=p-7e909871.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["icDialogCss","Dialog","constructor","hostRef","this","DATA_GETS_FOCUS","DATA_GETS_FOCUS_SELECTOR","DIALOG_CONTROLS","dialogHeight","focusedElementIndex","IC_TEXT_FIELD","IC_ACCORDION","IC_ACCORDION_GROUP","IC_SEARCH_BAR","resizeObserver","dialogOpened","_a","dialogRendered","disableHeightConstraint","dialogEl","show","showModal","setTimeout","fadeIn","backdropEl","scrollTop","setInitialFocus","checkResizeObserver","runResizeObserver","getFocusedElementIndex","icDialogOpened","emit","ResizeObserver","clearTimeout","resizeTimeout","window","resizeObserverCallback","observe","clientHeight","refreshInteractiveElementsOnSlotChange","contentArea","el","shadowRoot","querySelector","addEventListener","getInteractiveElements","removeSlotChangeListener","removeEventListener","sourceElement","document","activeElement","focusedElement","tagName","setFocus","focus","preventScroll","i","interactiveElementList","length","setAlertVariant","isPropDefined","status","alert","setAttribute","closeIconClick","open","Array","from","querySelectorAll","slottedInteractiveElements","slot","destructive","splice","getNextFocusEl","focusNextInteractiveElement","shiftKey","setFocusIndexBasedOnShiftKey","loopNextFocusIndexIfLastElement","nextFocusEl","isHidden","getComputedStyle","visibility","hasAttribute","setButtonOnClick","_b","_c","buttons","buttonOnclick0","Function","buttonProps","onclick","buttonOnclick1","buttonOnclick2","getButtonOnclick","index","getButtonVariant","mainVariant","renderDialog","alertHeading","alertMessage","size","heading","label","dismissLabel","hideCloseButton","h","class","disableWidthConstraint","ref","name","variant","id","innerHTML","closeIcon","onClick","isSlotUsed","message","map","props","undefined","closeOnBackdropClick","watchOpenHandler","disconnect","close","icDialogClosed","watchPropHandler","disconnectedCallback","componentWillLoad","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","componentDidRender","display","body","style","overflow","handleKeyboard","ev","key","preventDefault","repeat","stopImmediatePropagation","handleClick","dialogElement","composedPath","indexOf","rect","getBoundingClientRect","isInDialog","top","clientY","height","left","clientX","width","showDialog","hideDialog","cancelDialog","icDialogCancelled","confirmDialog","icDialogConfirmed","render","Host"],"sources":["../web-components/dist/collection/components/ic-dialog/ic-dialog.css?tag=ic-dialog&encapsulation=shadow","../web-components/dist/collection/components/ic-dialog/ic-dialog.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/**\n * @prop --ic-z-index-dialog: z-index of dialog \n */\n\n:host {\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100% !important;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n opacity: 0;\n}\n\n:host(.fade-in) {\n opacity: 1;\n}\n\n:host(.disable-height-constraint) {\n background: none;\n justify-content: unset;\n align-items: unset;\n}\n\n.dialog.disable-height-constraint {\n max-height: none;\n position: relative;\n}\n\n.dialog.disable-height-constraint .content-area {\n overflow-y: visible;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :host {\n transition: opacity var(--ic-easing-transition-slow);\n }\n\n .dialog {\n transform: translateY(-3rem);\n transition: transform 1000s;\n }\n\n :host(.fade-in) .dialog {\n transform: translateY(0);\n transition: transform var(--ic-easing-transition-slow);\n }\n}\n\n:host(.hidden) {\n display: none;\n}\n\n.dialog {\n background-color: var(--ic-architectural-white);\n color: var(--ic-architectural-black);\n border: var(--ic-border-default);\n border-radius: var(--ic-border-radius);\n padding: var(--ic-space-xs) 0 var(--ic-space-md);\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n overflow-x: visible;\n}\n\n.small {\n width: 50%;\n max-width: 25rem;\n min-height: 11rem;\n max-height: 70vh;\n}\n\n.medium {\n width: 70vw;\n max-width: 44rem;\n min-height: 12.5rem;\n max-height: 70vh;\n}\n\n.large {\n width: 90vw;\n max-width: 62.5rem;\n min-height: 12.5rem;\n max-height: 90vh;\n}\n\n.heading-area {\n display: flex;\n margin-bottom: var(--ic-space-xs);\n padding: 0 var(--ic-space-md);\n}\n\n.heading {\n overflow-wrap: break-word;\n}\n\n.close-icon {\n margin-left: auto;\n}\n\n.content-area {\n -ms-overflow-style: none;\n scrollbar-width: none;\n padding: 0 var(--ic-space-md);\n margin: 0;\n overflow-y: auto;\n}\n\n.content-area::-webkit-scrollbar {\n display: none;\n}\n\n#dialog-content {\n margin-bottom: var(--ic-space-sm);\n}\n\n#dialog-content ::slotted(ic-typography) {\n overflow-wrap: break-word;\n}\n\n#dialog-content ::slotted(*) {\n position: relative;\n}\n\n.status-alert {\n margin-bottom: var(--ic-space-xs);\n}\n\n.dialog-controls {\n margin-top: auto;\n padding: var(--ic-space-xs) var(--ic-space-md) 0;\n display: flex;\n justify-content: flex-end;\n gap: var(--ic-space-md);\n}\n\n.dialog-control-button {\n width: -moz-fit-content;\n width: fit-content;\n}\n\n.backdrop {\n overflow-y: auto;\n position: fixed;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgb(0 0 0 / 60%);\n z-index: var(--ic-z-index-dialog);\n padding-top: 16px;\n padding-bottom: 16px;\n}\n\n@media (min-width: 800px) {\n :host([size=\"large\"]) .dialog:not(.disable-width-constraint) > .content-area {\n width: 75%;\n }\n}\n\n@media (max-width: 576px) {\n .dialog {\n width: 100vw;\n height: 100vh;\n transform: translateY(-5rem);\n max-width: none;\n max-height: none;\n box-sizing: border-box;\n }\n\n .backdrop {\n padding: 0;\n }\n\n .dialog.disable-height-constraint {\n height: auto;\n min-height: 100vh;\n }\n}\n\n@media (max-width: 364px) {\n .triple-button {\n flex-direction: column;\n gap: var(--ic-space-xs);\n }\n\n .dialog-control-button {\n width: unset;\n }\n}\n","import { Host, h, } from \"@stencil/core\";\nimport closeIcon from \"../../assets/close-icon.svg\";\nimport { isSlotUsed, checkResizeObserver, isPropDefined, onComponentRequiredPropUndefined, } from \"../../utils/helpers\";\n/**\n * @slot dialog-controls - Content will be place at the bottom of the dialog.\n * @slot heading - Content will be placed at the top of the dialog.\n * @slot label - Content will be placed above the dialog heading.\n * @slot alert - Content will be placed at the top of the content area of the dialog.\n */\nexport class Dialog {\n constructor() {\n this.DATA_GETS_FOCUS = \"data-gets-focus\";\n this.DATA_GETS_FOCUS_SELECTOR = \"[data-gets-focus]\";\n this.DIALOG_CONTROLS = \"dialog-controls\";\n this.dialogHeight = 0;\n this.focusedElementIndex = 0;\n this.IC_TEXT_FIELD = \"IC-TEXT-FIELD\";\n this.IC_ACCORDION = \"IC-ACCORDION\";\n this.IC_ACCORDION_GROUP = \"IC-ACCORDION-GROUP\";\n this.IC_SEARCH_BAR = \"IC-SEARCH-BAR\";\n this.resizeObserver = null;\n this.dialogOpened = () => {\n var _a;\n this.dialogRendered = true;\n if (this.disableHeightConstraint) {\n this.dialogEl.show();\n }\n else {\n (_a = this.dialogEl) === null || _a === void 0 ? void 0 : _a.showModal();\n }\n setTimeout(() => {\n this.fadeIn = true;\n /**\n * This is required to set scroll back to top if:\n * - dialog content goes below the fold\n * - is closed using cancel or confirm and reopened.\n *\n * Without this, the scroll bar will start from the dialog's last scroll-x coordinate.\n */\n if (this.disableHeightConstraint && this.backdropEl.scrollTop !== 0) {\n this.backdropEl.scrollTop = 0;\n }\n }, 10);\n setTimeout(() => {\n this.setInitialFocus();\n checkResizeObserver(this.runResizeObserver);\n }, 75);\n setTimeout(() => {\n this.getFocusedElementIndex();\n this.icDialogOpened.emit();\n }, 80);\n };\n this.runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = window.setTimeout(this.resizeObserverCallback, 80);\n });\n this.resizeObserver.observe(this.dialogEl);\n };\n this.resizeObserverCallback = () => {\n if (this.dialogEl.clientHeight !== this.dialogHeight) {\n this.dialogHeight = this.dialogEl.clientHeight;\n }\n };\n this.refreshInteractiveElementsOnSlotChange = () => {\n this.contentArea = this.el.shadowRoot.querySelector(\"#dialog-content slot\");\n this.contentArea.addEventListener(\"slotchange\", this.getInteractiveElements);\n };\n this.removeSlotChangeListener = () => {\n if (this.contentArea) {\n this.contentArea.removeEventListener(\"slotchange\", this.getInteractiveElements);\n }\n };\n this.setInitialFocus = () => {\n this.sourceElement = document.activeElement;\n let focusedElement;\n if (this.el.querySelector(this.DATA_GETS_FOCUS_SELECTOR) !== null) {\n focusedElement = this.el.querySelector(this.DATA_GETS_FOCUS_SELECTOR);\n }\n else {\n focusedElement = this.el.shadowRoot.querySelector(this.DATA_GETS_FOCUS_SELECTOR);\n }\n if (focusedElement.tagName === this.IC_TEXT_FIELD) {\n focusedElement.setFocus();\n }\n else if (focusedElement.tagName === this.IC_ACCORDION_GROUP) {\n focusedElement.setFocus();\n }\n else if (focusedElement.tagName === this.IC_ACCORDION) {\n focusedElement.setFocus();\n }\n else if (focusedElement.tagName === this.IC_SEARCH_BAR) {\n focusedElement.setFocus();\n }\n else {\n focusedElement.focus({\n preventScroll: this.disableHeightConstraint ? true : false,\n });\n }\n };\n this.getFocusedElementIndex = () => {\n for (let i = 0; i < this.interactiveElementList.length; i++) {\n if (this.interactiveElementList[i] ===\n (this.el.shadowRoot.activeElement || document.activeElement)) {\n this.focusedElementIndex = i;\n }\n }\n };\n this.setAlertVariant = () => {\n if (isPropDefined(this.status) && this.status !== null) {\n const alert = this.el.shadowRoot.querySelector(\"ic-alert\");\n alert.setAttribute(\"variant\", this.status);\n }\n };\n this.closeIconClick = () => {\n this.open = false;\n };\n this.getInteractiveElements = () => {\n this.interactiveElementList = Array.from(this.el.shadowRoot.querySelectorAll(\"ic-button\"));\n const slottedInteractiveElements = Array.from(this.el.querySelectorAll(`a[href], button, input:not(.ic-input), textarea, select, details, [tabindex]:not([tabindex=\"-1\"]), \n ic-button, ic-checkbox, ic-select, ic-search-bar, ic-tab-group, ic-radio-group, \n ic-back-to-top, ic-breadcrumb, ic-chip[dismissible=\"true\"], ic-footer-link, ic-link, ic-navigation-button, \n ic-navigation-item, ic-switch, ic-text-field, ic-accordion-group, ic-accordion, ic-date-input, ic-date-picker`));\n if (slottedInteractiveElements.length > 0) {\n if (slottedInteractiveElements[0].slot !== this.DIALOG_CONTROLS) {\n slottedInteractiveElements[0].setAttribute(this.DATA_GETS_FOCUS, \"\");\n }\n else if (!this.destructive) {\n slottedInteractiveElements[slottedInteractiveElements.length - 1].setAttribute(this.DATA_GETS_FOCUS, \"\");\n }\n }\n for (let i = 0; i < slottedInteractiveElements.length; i++) {\n this.interactiveElementList.splice(1 + i, 0, slottedInteractiveElements[i]);\n }\n };\n this.getNextFocusEl = (focusedElementIndex) => this.interactiveElementList[focusedElementIndex];\n this.focusNextInteractiveElement = (shiftKey) => {\n this.getFocusedElementIndex();\n if (this.interactiveElementList[this.focusedElementIndex].tagName ===\n \"IC-SEARCH-BAR\") {\n return false;\n }\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n let nextFocusEl = this.getNextFocusEl(this.focusedElementIndex);\n const isHidden = getComputedStyle(nextFocusEl).visibility === \"hidden\" ||\n (nextFocusEl.tagName === this.IC_ACCORDION_GROUP &&\n nextFocusEl.hasAttribute(\"single-expansion\"));\n if (nextFocusEl.tagName === this.IC_TEXT_FIELD) {\n nextFocusEl.setFocus();\n }\n else {\n if (isHidden) {\n this.setFocusIndexBasedOnShiftKey(shiftKey);\n this.loopNextFocusIndexIfLastElement();\n nextFocusEl = this.getNextFocusEl(this.focusedElementIndex);\n }\n if (nextFocusEl.tagName === this.IC_ACCORDION_GROUP) {\n nextFocusEl.setFocus();\n }\n else if (nextFocusEl.tagName === this.IC_ACCORDION) {\n nextFocusEl.setFocus();\n }\n else if (nextFocusEl.tagName === this.IC_SEARCH_BAR) {\n nextFocusEl.setFocus();\n }\n else {\n nextFocusEl.focus();\n }\n }\n return true;\n };\n this.setButtonOnClick = () => {\n var _a, _b, _c;\n if (this.buttons) {\n this.buttonOnclick0 = new Function((_a = this.buttonProps[0]) === null || _a === void 0 ? void 0 : _a.onclick);\n this.buttonOnclick1 = new Function((_b = this.buttonProps[1]) === null || _b === void 0 ? void 0 : _b.onclick);\n this.buttonOnclick2 = new Function((_c = this.buttonProps[2]) === null || _c === void 0 ? void 0 : _c.onclick);\n }\n };\n this.getButtonOnclick = (index) => {\n if (index === 0) {\n return this.buttonOnclick0();\n }\n else if (index === 1) {\n return this.buttonOnclick1();\n }\n else {\n return this.buttonOnclick2();\n }\n };\n this.getButtonVariant = (index) => {\n const mainVariant = this.destructive ? \"destructive\" : \"primary\";\n if (this.buttonProps.length === 1) {\n return mainVariant;\n }\n else if (this.buttonProps.length === 2) {\n if (index === 0) {\n return \"tertiary\";\n }\n else {\n return mainVariant;\n }\n }\n else {\n if (index === 2) {\n return mainVariant;\n }\n else {\n return \"secondary\";\n }\n }\n };\n this.renderDialog = () => {\n const { alertHeading, alertMessage, buttons, buttonProps, size, heading, label, status, destructive, dismissLabel, hideCloseButton, } = this;\n return (h(\"dialog\", { class: {\n [\"dialog\"]: true,\n [`${size}`]: true,\n [\"disable-height-constraint\"]: this.disableHeightConstraint,\n [\"disable-width-constraint\"]: this.disableWidthConstraint,\n }, \"aria-labelledby\": \"dialog-label dialog-heading\", \"aria-describedby\": \"dialog-alert dialog-content\", ref: (el) => (this.dialogEl = el) }, h(\"div\", { class: \"heading-area\" }, h(\"div\", { class: \"heading-content\" }, h(\"div\", { class: \"label\" }, h(\"slot\", { name: \"label\" }, h(\"ic-typography\", { variant: \"label\", id: \"dialog-label\" }, label))), h(\"div\", { class: \"heading\" }, h(\"slot\", { name: \"heading\" }, h(\"ic-typography\", { variant: \"h4\", id: \"dialog-heading\" }, heading)))), !hideCloseButton && (h(\"ic-button\", { class: \"close-icon\", variant: \"icon\", innerHTML: closeIcon, \"aria-label\": dismissLabel, onClick: this.closeIconClick, \"data-gets-focus\": destructive || !buttons ? \"\" : null }))), h(\"div\", { class: \"content-area\" }, isSlotUsed(this.el, \"alert\") ? (h(\"slot\", { name: \"alert\" })) : (status && (h(\"ic-alert\", { variant: status, heading: alertHeading, message: alertMessage, \"title-above\": true, class: \"status-alert\", id: \"dialog-alert\" }))), h(\"div\", { id: \"dialog-content\" }, h(\"slot\", null))), (buttons || isSlotUsed(this.el, this.DIALOG_CONTROLS)) && (h(\"div\", { class: {\n [this.DIALOG_CONTROLS]: true,\n [\"triple-button\"]: buttonProps.length === 3,\n } }, h(\"slot\", { name: this.DIALOG_CONTROLS }, !isSlotUsed(this.el, this.DIALOG_CONTROLS) &&\n buttonProps.map((props, index) => {\n if (index > 2) {\n return;\n }\n else {\n return (h(\"ic-button\", { variant: this.getButtonVariant(index), onClick: () => this.getButtonOnclick(index), class: \"dialog-control-button\", \"full-width\": buttonProps.length === 3, \"data-gets-focus\": this.getButtonVariant(index) === \"primary\" ? \"\" : null }, props.label));\n }\n }))))));\n };\n this.dialogRendered = false;\n this.fadeIn = false;\n this.alertHeading = undefined;\n this.alertMessage = undefined;\n this.buttons = true;\n this.closeOnBackdropClick = true;\n this.destructive = false;\n this.dismissLabel = \"Dismiss\";\n this.disableHeightConstraint = false;\n this.disableWidthConstraint = false;\n this.hideCloseButton = false;\n this.heading = undefined;\n this.label = undefined;\n this.open = undefined;\n this.size = \"small\";\n this.status = undefined;\n this.buttonProps = [\n {\n label: \"Cancel\",\n onclick: \"this.cancelDialog();\",\n },\n { label: \"Confirm\", onclick: \"this.confirmDialog();\" },\n ];\n }\n watchOpenHandler() {\n if (this.open) {\n this.dialogOpened();\n }\n else {\n this.fadeIn = false;\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n }\n setTimeout(() => {\n var _a;\n this.dialogRendered = false;\n this.dialogEl.close();\n (_a = this.sourceElement) === null || _a === void 0 ? void 0 : _a.focus();\n this.dialogHeight = 0;\n this.icDialogClosed.emit();\n }, 80);\n }\n }\n watchPropHandler() {\n this.setButtonOnClick();\n }\n disconnectedCallback() {\n this.removeSlotChangeListener();\n }\n componentWillLoad() {\n if (this.buttonProps.length) {\n this.setButtonOnClick();\n }\n }\n componentDidLoad() {\n this.getInteractiveElements();\n this.setAlertVariant();\n this.refreshInteractiveElementsOnSlotChange();\n if (this.open) {\n this.dialogOpened();\n }\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined([{ prop: this.heading, propName: \"heading\" }], \"Dialog\");\n }\n componentDidRender() {\n if (getComputedStyle(this.el).display !== \"none\" &&\n this.disableHeightConstraint) {\n document.body.style.overflow = \"hidden\";\n }\n else {\n document.body.style.overflow = \"auto\";\n }\n }\n handleKeyboard(ev) {\n if (this.dialogRendered) {\n switch (ev.key) {\n case \"Tab\":\n if (this.focusNextInteractiveElement(ev.shiftKey)) {\n ev.preventDefault();\n }\n break;\n case \"Escape\":\n if (!ev.repeat) {\n this.open = false;\n }\n ev.stopImmediatePropagation();\n break;\n }\n }\n }\n handleClick(ev) {\n const dialogElement = this.el.shadowRoot.querySelector(\"dialog\");\n if (this.closeOnBackdropClick &&\n ev.composedPath().indexOf(dialogElement) <= 0) {\n const rect = this.dialogEl.getBoundingClientRect();\n const isInDialog = rect.top <= ev.clientY &&\n ev.clientY <= rect.top + rect.height &&\n rect.left <= ev.clientX &&\n ev.clientX <= rect.left + rect.width;\n if (!isInDialog) {\n this.open = false;\n }\n }\n }\n /**\n * @deprecated This method should not be used anymore. Use open prop to set dialog visibility.\n */\n async showDialog() {\n this.open = true;\n }\n /**\n * @deprecated This method should not be used anymore. Use open prop to set dialog visibility.\n */\n async hideDialog() {\n this.open = false;\n }\n /**\n * Cancels the dialog. Used by the default 'Cancel' button or can be called manually to trigger cancelling of dialog.\n */\n async cancelDialog() {\n this.icDialogCancelled.emit();\n this.open = false;\n }\n /**\n * Confirms the dialog. Used by the default 'Confirm' button or can be called manually to trigger confirming of dialog.\n */\n async confirmDialog() {\n this.icDialogConfirmed.emit();\n }\n loopNextFocusIndexIfLastElement() {\n if (this.focusedElementIndex > this.interactiveElementList.length - 1)\n this.focusedElementIndex = 0;\n else if (this.focusedElementIndex < 0) {\n this.focusedElementIndex = this.interactiveElementList.length - 1;\n }\n }\n setFocusIndexBasedOnShiftKey(shiftKey) {\n if (shiftKey) {\n this.focusedElementIndex -= 1;\n }\n else {\n this.focusedElementIndex += 1;\n }\n }\n render() {\n return (h(Host, { class: {\n [\"hidden\"]: !this.dialogRendered,\n [\"fade-in\"]: this.fadeIn,\n [\"disable-height-constraint\"]: this.disableHeightConstraint,\n } }, this.disableHeightConstraint ? (h(\"div\", { class: \"backdrop\", ref: (el) => (this.backdropEl = el) }, this.renderDialog())) : (this.renderDialog())));\n }\n static get is() { return \"ic-dialog\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-dialog.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-dialog.css\"]\n };\n }\n static get properties() {\n return {\n \"alertHeading\": {\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 \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. Use an ic-alert/IcAlert component within an alert slot with a heading instead.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"alert-heading\",\n \"reflect\": false\n },\n \"alertMessage\": {\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 \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. Use an ic-alert/IcAlert component within an alert slot with a message instead.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"alert-message\",\n \"reflect\": false\n },\n \"buttons\": {\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 set to `false`, dialog controls will not be displayed overriding buttonProps or slotted dialog controls.\"\n },\n \"attribute\": \"buttons\",\n \"reflect\": false,\n \"defaultValue\": \"true\"\n },\n \"closeOnBackdropClick\": {\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 set to `false`, the dialog will not close when the backdrop is clicked.\"\n },\n \"attribute\": \"close-on-backdrop-click\",\n \"reflect\": false,\n \"defaultValue\": \"true\"\n },\n \"destructive\": {\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 default buttons are displayed, sets the 'primary' or rightmost button to the destructive variant. Stops initial focus being set on the 'primary' or rightmost default or slotted button.\"\n },\n \"attribute\": \"destructive\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"dismissLabel\": {\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\": \"Sets the dismiss label tooltip and aria label.\"\n },\n \"attribute\": \"dismiss-label\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"Dismiss\\\"\"\n },\n \"disableHeightConstraint\": {\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 set to `true`, the content area max height and overflow properties are removed allowing the dialog to stretch below the fold.\\nThis prop also prevents popover elements from being cut off within the content area.\"\n },\n \"attribute\": \"disable-height-constraint\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"disableWidthConstraint\": {\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 set to `true`, the content area width property is removed, allowing content to take the full width of the dialog when using the large variant.\"\n },\n \"attribute\": \"disable-width-constraint\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"hideCloseButton\": {\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 close button will not be displayed.\"\n },\n \"attribute\": \"hide-close-button\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"heading\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the heading for the dialog.\"\n },\n \"attribute\": \"heading\",\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\": \"Sets the optional label for the dialog which appears above the heading.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"open\": {\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 dialog will be displayed.\"\n },\n \"attribute\": \"open\",\n \"reflect\": true,\n \"defaultValue\": \"undefined\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"small\\\" | \\\"medium\\\" | \\\"large\\\"\",\n \"resolved\": \"\\\"large\\\" | \\\"medium\\\" | \\\"small\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the maximum and minimum height and width for the dialog.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"small\\\"\"\n },\n \"status\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"\\\"neutral\\\" | \\\"info\\\" | \\\"warning\\\" | \\\"error\\\" | \\\"success\\\"\",\n \"resolved\": \"\\\"error\\\" | \\\"info\\\" | \\\"neutral\\\" | \\\"success\\\" | \\\"warning\\\"\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. Use an ic-alert/IcAlert component within an alert slot with a variant instead.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"status\",\n \"reflect\": false\n },\n \"buttonProps\": {\n \"type\": \"unknown\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"{ label: string; onclick: string }[]\",\n \"resolved\": \"{ label: string; onclick: string; }[]\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Sets the label and onclick functions for default buttons.\"\n },\n \"defaultValue\": \"[\\n {\\n label: \\\"Cancel\\\",\\n onclick: \\\"this.cancelDialog();\\\",\\n },\\n { label: \\\"Confirm\\\", onclick: \\\"this.confirmDialog();\\\" },\\n ]\"\n }\n };\n }\n static get states() {\n return {\n \"dialogRendered\": {},\n \"fadeIn\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icDialogCancelled\",\n \"name\": \"icDialogCancelled\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Cancelation event emitted when default 'Cancel' button clicked or 'cancelDialog' method is called.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icDialogClosed\",\n \"name\": \"icDialogClosed\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when dialog has closed.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icDialogConfirmed\",\n \"name\": \"icDialogConfirmed\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Confirmation event emitted when default 'Confirm' primary button clicked or 'confirmDialog' method is called.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icDialogOpened\",\n \"name\": \"icDialogOpened\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when dialog has opened.\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }];\n }\n static get methods() {\n return {\n \"showDialog\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"\",\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This method should not be used anymore. Use open prop to set dialog visibility.\"\n }]\n }\n },\n \"hideDialog\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"\",\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This method should not be used anymore. Use open prop to set dialog visibility.\"\n }]\n }\n },\n \"cancelDialog\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"Cancels the dialog. Used by the default 'Cancel' button or can be called manually to trigger cancelling of dialog.\",\n \"tags\": []\n }\n },\n \"confirmDialog\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"Confirms the dialog. Used by the default 'Confirm' button or can be called manually to trigger confirming of dialog.\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"open\",\n \"methodName\": \"watchOpenHandler\"\n }, {\n \"propName\": \"buttonProps\",\n \"methodName\": \"watchPropHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"keydown\",\n \"method\": \"handleKeyboard\",\n \"target\": \"document\",\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"click\",\n \"method\": \"handleClick\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-dialog.js.map\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["icCardCss","Card","constructor","hostRef","this","hostMutationObserver","parentFocussed","isFocussed","parentBlurred","toggleExpanded","areaExpanded","appearance","parentEl","parentIsAnchorTag","clickable","disabled","expandable","fullWidth","heading","undefined","href","hreflang","message","referrerpolicy","rel","subheading","target","watchDisabledHandler","removeDisabledFalse","el","disconnectedCallback","_a","removeEventListener","disconnect","componentWillLoad","parentElement","tagName","classList","add","addEventListener","componentDidLoad","isSlotUsed","onComponentRequiredPropUndefined","prop","propName","updateTheme","MutationObserver","mutationList","renderDynamicChildSlots","observe","childList","handleHostClick","event","stopImmediatePropagation","themeChangeHandler","ev","theme","detail","mode","setFocus","shadowRoot","querySelector","focus","newTheme","foregroundColor","getThemeFromContext","IcThemeForegroundEnum","Default","render","Component","attrs","hrefLang","referrerPolicy","h","Object","assign","class","Dark","tabindex","name","variant","id","label","silent","onClick","innerHTML","chevronIcon"],"sources":["../web-components/dist/collection/components/ic-card/ic-card.css?tag=ic-card&encapsulation=shadow","../web-components/dist/collection/components/ic-card/ic-card.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:host {\n display: flex;\n}\n\na {\n text-decoration: none !important;\n color: var(--ic-architechtural-black) !important;\n}\n\nbutton {\n border: none;\n background-color: transparent;\n outline: var(--ic-hc-focus-outline);\n}\n\n.card,\n.card.clickable {\n display: flex;\n flex-direction: column;\n border: var(--ic-border-default);\n border-radius: var(--ic-border-radius);\n box-sizing: border-box;\n padding: var(--ic-space-md);\n text-align: left;\n color: var(--ic-architechtural-black);\n transition: var(--ic-easing-transition-fast);\n position: relative;\n width: inherit;\n min-width: -moz-fit-content;\n min-width: fit-content;\n height: -moz-fit-content;\n height: fit-content;\n min-height: 100%;\n}\n\n.dark.card,\n.dark.card.clickable {\n border: var(--ic-border-width) solid var(--ic-architectural-700);\n}\n\n.card.clickable:hover {\n background-color: var(--ic-action-default-bg-hover);\n border: var(--ic-border-hover);\n cursor: pointer;\n}\n\n.card.clickable:focus,\n.card.clickable.focussed {\n background-color: var(--ic-action-default-bg-hover);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n border: var(--ic-border-pressed);\n}\n\n.card.clickable:active {\n background-color: var(--ic-action-default-bg-active);\n box-shadow: var(--ic-border-focus);\n}\n\n.card.disabled {\n border: var(--ic-border-disabled);\n}\n\n.card.fullwidth {\n width: 100%;\n}\n\n.card-header {\n display: flex;\n align-items: center;\n}\n\n.icon {\n display: flex;\n align-items: center;\n padding-right: var(--ic-space-xs);\n}\n\n.card.disabled ::slotted(svg) {\n fill: var(--ic-color-tertiary-text);\n}\n\n.card.clickable .card-title {\n color: var(--ic-hyperlink);\n text-decoration: underline;\n text-decoration-thickness: var(--ic-space-1px);\n}\n\n.card.clickable:hover .card-title,\n.card.clickable:focus .card-title,\n.card.clickable.focussed .card-title {\n display: inline-block;\n border-bottom: 0.25rem solid !important;\n margin-bottom: -0.25rem !important;\n text-decoration: none;\n}\n\n@supports (text-underline-offset: 25%) {\n .card.clickable:hover .card-title,\n .card.clickable:focus .card-title,\n .card.clickable.focussed .card-title {\n text-decoration-line: underline;\n text-decoration-thickness: 25%;\n text-underline-offset: 25%;\n border-bottom: 0 !important;\n margin-bottom: 0 !important;\n }\n}\n\n.card.clickable:active .card-title {\n text-decoration: none;\n}\n\n.card.disabled .card-title {\n text-decoration: underline;\n text-decoration-thickness: var(--ic-space-1px);\n text-decoration-color: var(--ic-color-tertiary-text);\n color: var(--ic-color-tertiary-text);\n}\n\n.subheading {\n margin-top: var(--ic-space-xxs);\n}\n\n.adornment {\n margin-top: var(--ic-space-xxs);\n}\n\n.card-message {\n margin-top: var(--ic-space-md);\n align-items: left;\n}\n\n.card.disabled .card-message,\n.card.disabled .subheading {\n color: var(--ic-color-tertiary-text);\n}\n\n.interaction-button {\n margin-left: auto;\n}\n\n.image-top {\n margin-bottom: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.image-mid {\n margin-top: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.interaction-area {\n display: flex;\n flex-grow: 1;\n gap: var(--ic-space-md);\n margin-top: var(--ic-space-md);\n align-items: flex-end;\n}\n\n.interaction-controls {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: var(--ic-space-sm);\n}\n\n.toggle-button {\n color: var(--ic-action-default);\n width: 2.5rem;\n height: 2.5rem;\n padding: var(--ic-space-xs);\n margin: var(--ic-space-1px) 0;\n min-width: 0;\n cursor: pointer;\n transition: var(--ic-easing-transition-fast);\n border-radius: var(--ic-border-radius);\n display: inline-flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n background: none;\n border: none;\n box-sizing: border-box;\n white-space: nowrap;\n vertical-align: middle;\n}\n\n#ic-tooltip-expand-button {\n margin-left: auto;\n position: relative;\n}\n\n.toggle-button:hover,\n.toggle-button:hover:focus {\n background-color: var(--ic-action-default-bg-hover);\n color: var(--ic-action-default-hover);\n}\n\n.toggle-button:focus {\n box-shadow: var(--ic-border-focus);\n}\n\n.toggle-button:active:not(:focus) {\n background-color: var(--ic-action-default-bg-active);\n color: var(--ic-action-default-active);\n}\n\n.toggle-button svg {\n pointer-events: none;\n width: 100% !important;\n height: 100% !important;\n fill: currentcolor !important;\n}\n\n.toggle-button-closed svg {\n transform: rotate(90deg);\n}\n\n.toggle-button-expanded svg {\n transform: rotate(-90deg);\n}\n\n.expanded-content {\n margin-top: var(--ic-space-md);\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n .card ::slotted(svg) {\n fill: currentcolor;\n }\n\n .card.disabled ::slotted(svg) {\n fill: GrayText !important;\n }\n\n .card.disabled {\n border-color: GrayText !important;\n }\n\n .card.disabled .card-message,\n .card.disabled .subheading,\n .card.disabled .card-title {\n color: GrayText;\n }\n}\n\n/* Add back in after storybook has the `color-scheme: light dark` code */\n\n/* @media (prefers-color-scheme: dark) and (not (forced-colors: active)) {\n ::slotted([slot=\"icon\"]) {\n fill: var(--ic-architectural-white);\n }\n} */\n","import { h, } from \"@stencil/core\";\nimport { onComponentRequiredPropUndefined, isSlotUsed, getThemeFromContext, removeDisabledFalse, renderDynamicChildSlots, } from \"../../utils/helpers\";\nimport { IcThemeForegroundEnum, } from \"../../utils/types\";\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\n/**\n * @slot heading - Content will be placed at the top of the card to the right of the icon.\n * @slot message - Content will be placed in the main body of the card.\n * @slot subheading - Content will be placed below the card heading.\n * @slot adornment - Content will be placed below the card subheading.\n * @slot image-top - Content will be placed at the top of the card above all other content.\n * @slot image-mid - Content will be placed below the card heading section.\n * @slot icon - Content will be placed to the left of the card heading.\n * @slot interaction-button - Content will be placed in the top right corner of the heading section.\n * @slot interaction-controls - Content will be placed below the card message.\n * @slot expanded-content - Content will be placed below the interaction controls but will not initially be rendered.\n * @slot badge - Badge component overlaying the top right of the card.\n */\nexport class Card {\n constructor() {\n this.hostMutationObserver = null;\n this.parentFocussed = () => {\n this.isFocussed = true;\n };\n this.parentBlurred = () => {\n this.isFocussed = false;\n };\n this.toggleExpanded = () => {\n this.areaExpanded = !this.areaExpanded;\n };\n this.appearance = \"default\";\n this.areaExpanded = false;\n this.isFocussed = false;\n this.parentEl = null;\n this.parentIsAnchorTag = false;\n this.clickable = false;\n this.disabled = false;\n this.expandable = false;\n this.fullWidth = false;\n this.heading = undefined;\n this.href = undefined;\n this.hreflang = \"\";\n this.message = \"\";\n this.referrerpolicy = undefined;\n this.rel = undefined;\n this.subheading = undefined;\n this.target = undefined;\n }\n watchDisabledHandler() {\n removeDisabledFalse(this.disabled, this.el);\n }\n disconnectedCallback() {\n var _a;\n if (this.parentIsAnchorTag) {\n this.parentEl.removeEventListener(\"focus\", this.parentFocussed);\n this.parentEl.removeEventListener(\"blur\", this.parentBlurred);\n }\n (_a = this.hostMutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n }\n componentWillLoad() {\n this.parentEl = this.el.parentElement;\n if (this.parentEl.tagName === \"A\") {\n this.clickable = true;\n this.parentIsAnchorTag = true;\n this.parentEl.classList.add(\"ic-card-wrapper-link\");\n this.parentEl.addEventListener(\"focus\", this.parentFocussed);\n this.parentEl.addEventListener(\"blur\", this.parentBlurred);\n }\n removeDisabledFalse(this.disabled, this.el);\n }\n componentDidLoad() {\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined([{ prop: this.heading, propName: \"heading\" }], \"Card\");\n this.updateTheme();\n this.hostMutationObserver = new MutationObserver((mutationList) => renderDynamicChildSlots(mutationList, [\n \"message\",\n \"adornment\",\n \"expanded-content\",\n \"image-top\",\n \"image-mid\",\n \"icon\",\n \"interaction-button\",\n \"badge\",\n \"interaction-controls\",\n ], this));\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n handleHostClick(event) {\n if (this.disabled) {\n event.stopImmediatePropagation();\n }\n }\n themeChangeHandler(ev) {\n const theme = ev.detail;\n this.updateTheme(theme.mode);\n }\n /**\n * Sets focus on the card.\n */\n async setFocus() {\n if (this.el.shadowRoot.querySelector(\"a\")) {\n this.el.shadowRoot.querySelector(\"a\").focus();\n }\n else if (this.el.shadowRoot.querySelector(\"button\")) {\n this.el.shadowRoot.querySelector(\"button\").focus();\n }\n }\n updateTheme(newTheme = null) {\n const foregroundColor = getThemeFromContext(this.el, newTheme || null);\n if (foregroundColor !== IcThemeForegroundEnum.Default) {\n this.appearance = foregroundColor;\n }\n }\n render() {\n const { clickable, disabled, expandable, heading, message, href, hreflang, referrerpolicy, rel, subheading, target, fullWidth, parentIsAnchorTag, isFocussed, } = this;\n const Component = parentIsAnchorTag\n ? \"div\"\n : clickable\n ? this.href === undefined\n ? \"button\"\n : \"a\"\n : \"div\";\n const attrs = Component == \"a\" && {\n href: href,\n hrefLang: hreflang,\n referrerPolicy: referrerpolicy,\n rel: rel,\n target: target,\n };\n return (h(Component, Object.assign({ class: {\n [\"card\"]: true,\n [\"clickable\"]: clickable && !disabled,\n [\"disabled\"]: disabled,\n [\"fullwidth\"]: fullWidth,\n [\"focussed\"]: isFocussed,\n [\"dark\"]: this.appearance === IcThemeForegroundEnum.Dark,\n }, tabindex: clickable && !parentIsAnchorTag ? 0 : null, \"aria-disabled\": disabled ? \"true\" : null, disabled: disabled ? true : null }, attrs), isSlotUsed(this.el, \"image-top\") && (h(\"div\", { class: \"image-top\" }, h(\"slot\", { name: \"image-top\" }))), h(\"div\", { class: \"card-header\" }, isSlotUsed(this.el, \"icon\") && (h(\"div\", { class: \"icon\" }, h(\"slot\", { name: \"icon\" }))), h(\"div\", { class: \"card-title\" }, h(\"slot\", { name: \"heading\" }, h(\"ic-typography\", { variant: \"h4\" }, h(\"p\", null, heading)))), isSlotUsed(this.el, \"interaction-button\") && (h(\"div\", { class: \"interaction-button\" }, h(\"slot\", { name: \"interaction-button\" })))), (subheading || isSlotUsed(this.el, \"subheading\")) && (h(\"div\", { class: \"subheading\" }, h(\"slot\", { name: \"subheading\" }, h(\"ic-typography\", { variant: \"subtitle-small\" }, subheading)))), isSlotUsed(this.el, \"adornment\") && (h(\"div\", { class: \"adornment\" }, h(\"slot\", { name: \"adornment\" }))), isSlotUsed(this.el, \"image-mid\") && (h(\"div\", { class: \"image-mid\" }, h(\"slot\", { name: \"image-mid\" }))), (message || isSlotUsed(this.el, \"message\")) && (h(\"div\", { class: {\n [\"card-message\"]: true,\n } }, message && h(\"ic-typography\", { variant: \"body\" }, message), isSlotUsed(this.el, \"message\") && h(\"slot\", { name: \"message\" }))), (isSlotUsed(this.el, \"interaction-controls\") || expandable) && (h(\"div\", { class: \"interaction-area\" }, h(\"div\", { class: \"interaction-controls\" }, h(\"slot\", { name: \"interaction-controls\" })), expandable && (h(\"ic-tooltip\", { id: \"ic-tooltip-expand-button\", label: \"Toggle expandable area\", silent: true }, h(\"button\", { class: {\n [\"toggle-button\"]: true,\n [`toggle-button-${this.areaExpanded ? \"expanded\" : \"closed\"}`]: true,\n }, \"aria-label\": \"Toggle expandable area\", \"aria-expanded\": `${this.areaExpanded}`, \"aria-controls\": this.areaExpanded ? \"expanded-content-area\" : null, onClick: this.toggleExpanded, innerHTML: chevronIcon }))))), isSlotUsed(this.el, \"expanded-content\") && this.areaExpanded && (h(\"div\", { class: \"expanded-content\", id: \"expanded-content-area\" }, h(\"slot\", { name: \"expanded-content\" }))), isSlotUsed(this.el, \"badge\") && h(\"slot\", { name: \"badge\" })));\n }\n static get is() { return \"ic-card\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-card.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-card.css\"]\n };\n }\n static get properties() {\n return {\n \"clickable\": {\n \"type\": \"boolean\",\n \"mutable\": true,\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 card will be a clickable variant, instead of static.\"\n },\n \"attribute\": \"clickable\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\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 card will be disabled if it is clickable.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"expandable\": {\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 card will have an expandable area and expansion toggle button.\"\n },\n \"attribute\": \"expandable\",\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 card will fill the width of the container.\"\n },\n \"attribute\": \"full-width\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"heading\": {\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 heading for the card. This is required, unless a slotted heading is used.\"\n },\n \"attribute\": \"heading\",\n \"reflect\": false\n },\n \"href\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string | undefined\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The URL that the clickable card link points to. If set, the clickable card will render as an \\\"a\\\" tag, otherwise it will render as a button.\"\n },\n \"attribute\": \"href\",\n \"reflect\": false\n },\n \"hreflang\": {\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 human language of the linked URL.\"\n },\n \"attribute\": \"hreflang\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"message\": {\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 main body message of the card.\"\n },\n \"attribute\": \"message\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"referrerpolicy\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"ReferrerPolicy\",\n \"resolved\": \"\\\"\\\" | \\\"no-referrer\\\" | \\\"no-referrer-when-downgrade\\\" | \\\"origin\\\" | \\\"origin-when-cross-origin\\\" | \\\"same-origin\\\" | \\\"strict-origin\\\" | \\\"strict-origin-when-cross-origin\\\" | \\\"unsafe-url\\\"\",\n \"references\": {\n \"ReferrerPolicy\": {\n \"location\": \"global\",\n \"id\": \"global::ReferrerPolicy\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"How much of the referrer to send when following the link.\"\n },\n \"attribute\": \"referrerpolicy\",\n \"reflect\": false\n },\n \"rel\": {\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 relationship of the linked URL as space-separated link types.\"\n },\n \"attribute\": \"rel\",\n \"reflect\": false\n },\n \"subheading\": {\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 subheading for the card.\"\n },\n \"attribute\": \"subheading\",\n \"reflect\": false\n },\n \"target\": {\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 place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\"\n },\n \"attribute\": \"target\",\n \"reflect\": false\n }\n };\n }\n static get states() {\n return {\n \"appearance\": {},\n \"areaExpanded\": {},\n \"isFocussed\": {},\n \"parentEl\": {},\n \"parentIsAnchorTag\": {}\n };\n }\n static get methods() {\n return {\n \"setFocus\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"Sets focus on the card.\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"disabled\",\n \"methodName\": \"watchDisabledHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"click\",\n \"method\": \"handleHostClick\",\n \"target\": undefined,\n \"capture\": true,\n \"passive\": false\n }, {\n \"name\": \"themeChange\",\n \"method\": \"themeChangeHandler\",\n \"target\": \"document\",\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-card.js.map\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["icTreeItemCss","treeItemIds","TreeItem","this","treeItemId","treeItemTag","hostMutationObserver","TOOLTIP","handleTreeItemClicked","isParent","expanded","hasParentExpanded","updateAriaLabel","selected","watchSelectedHandler","setTreeItemPadding","level","parentElement","el","treeItemContent","shadowRoot","querySelector","isSiblingOfParent","Array","from","children","map","sibling","length","includes","isChild","tagName","isRouterItem","hasRouterSlot","routerSlot","classList","add","style","paddingLeft","truncateTreeItemLabel","treeItem","typographyEl","tooltip","closest","treeContent","scrollHeight","clientHeight","tooltipEl","document","createElement","setAttribute","id","textContent","appendChild","handleDisplayTooltip","display","displayTooltip","watchDisabledHandler","removeDisabledFalse","disabled","icTreeItemSelected","emit","disconnectedCallback","_a","disconnect","componentWillLoad","componentDidLoad","childTreeItems","filter","child","setTimeout","truncateTreeItem","isSlotUsed","onComponentRequiredPropUndefined","prop","label","propName","MutationObserver","mutationList","renderDynamicChildSlots","observe","childList","componentDidUpdate","forEach","handleKeyDown","ev","key","stopImmediatePropagation","setFocus","focus","_b","treeItemElement","ariaLabel","treeItems","index","indexOf","parentChildren","render","appearance","size","Component","href","attrs","hrefLang","hreflang","referrerPolicy","referrerpolicy","rel","target","h","Host","class","name","Object","assign","tabIndex","onClick","ref","onFocus","onBlur","innerHTML","arrowDropdown"],"sources":["src/components/ic-tree-item/ic-tree-item.css?tag=ic-tree-item&encapsulation=shadow","src/components/ic-tree-item/ic-tree-item.tsx"],"sourcesContent":[":host {\n display: block;\n border: none;\n position: relative;\n}\n\n:host .tree-item-content {\n display: flex;\n align-items: center;\n min-height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n padding: 0 var(--ic-space-xs);\n text-decoration: none;\n color: var(--ic-primary-text);\n}\n\n::slotted([slot=\"router-item\"]) {\n display: flex;\n align-items: center;\n min-height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n text-decoration: none;\n font-family: var(--ic-font-body-family);\n color: var(--ic-primary-text);\n padding: 0 var(--ic-space-xs) !important;\n}\n\n:host(.ic-tree-item-truncate) .tree-item-content,\n:host(.ic-tree-item-truncate) ::slotted([slot=\"router-item\"]) {\n height: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n::slotted([slot=\"router-item\"].ic-tree-item-single) {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs)) !important;\n}\n\n:host .tree-item-content:focus,\n::slotted([slot=\"router-item\"]:focus) {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n outline: none;\n}\n\n:host .tree-item-content:hover,\n::slotted([slot=\"router-item\"]:hover) {\n background-color: var(--ic-action-dark-bg-hover) !important;\n cursor: pointer;\n}\n\n:host .tree-item-content:active,\n::slotted([slot=\"router-item\"]:active) {\n background-color: var(--ic-action-dark-bg-active) !important;\n}\n\n:host(.ic-tree-item-selected) .tree-item-content,\n:host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n background-color: var(--ic-action-default-bg-hover) !important;\n}\n\n:host(.ic-tree-item-small) .tree-item-content,\n:host(.ic-tree-item-small) ::slotted([slot=\"router-item\"]) {\n min-height: var(--ic-space-xl);\n}\n\n:host(.ic-tree-item-large) .tree-item-content,\n:host(.ic-tree-item-large) ::slotted([slot=\"router-item\"]) {\n min-height: var(--ic-space-xxl);\n}\n\n:host(.ic-tree-item-truncate.ic-tree-item-small) .tree-item-content,\n:host(.ic-tree-item-truncate.ic-tree-item-small)\n ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xl);\n}\n\n:host(.ic-tree-item-truncate.ic-tree-item-large) .tree-item-content,\n:host(.ic-tree-item-truncate.ic-tree-item-large)\n ::slotted([slot=\"router-item\"]) {\n height: var(--ic-space-xxl);\n}\n\n:host(.ic-tree-item-disabled) {\n pointer-events: none;\n}\n\n:host(.ic-tree-item-disabled) .tree-item-content,\n:host(.ic-tree-item-disabled) .arrow-dropdown,\n:host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n:host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: var(--ic-architectural-200) !important;\n fill: var(--ic-architectural-200);\n pointer-events: none;\n}\n\n:host(.ic-tree-item-light) .tree-item-content,\n:host(.ic-tree-item-light) .arrow-dropdown,\n:host(.ic-tree-item-light) ::slotted([slot=\"icon\"]),\n:host(.ic-tree-item-light) ::slotted([slot=\"router-item\"]) {\n color: var(--ic-architectural-white);\n fill: var(--ic-architectural-white);\n}\n\n:host .arrow-dropdown {\n color: var(--ic-action-default);\n margin-right: var(--ic-space-xs);\n}\n\n:host(.ic-tree-item-small) .arrow-dropdown {\n margin-right: var(--ic-space-xxs);\n}\n\n:host .tree-item-expanded {\n transform: rotate(180deg);\n margin-top: calc(-1 * var(--ic-space-xxs));\n}\n\n:host .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xs));\n}\n\n:host(.ic-tree-item-small) .ic-tree-item-single {\n padding-left: calc(var(--ic-space-xl) + var(--ic-space-xxs));\n}\n\n.icon-container {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n margin: 0 var(--ic-space-xs) 0 0;\n}\n\n:host(.ic-tree-item-small) .icon-container {\n margin: 0 var(--ic-space-xxs) 0 0;\n}\n\n.ic-text-overflow {\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n\n.ic-tooltip-overflow {\n overflow: hidden;\n}\n\n/** High Contrast **/\n@media (forced-colors: active) {\n ::slotted([slot=\"icon\"]) {\n fill: currentcolor;\n }\n\n :host(.ic-tree-item-disabled) .tree-item-content,\n :host(.ic-tree-item-disabled) .arrow-dropdown,\n :host(.ic-tree-item-disabled) ::slotted([slot=\"icon\"]),\n :host(.ic-tree-item-disabled) ::slotted([slot=\"router-item\"]) {\n color: GrayText !important;\n fill: GrayText !important;\n }\n\n :host .tree-item-content:focus,\n ::slotted([slot=\"router-item\"]:focus) {\n border: var(--ic-hc-border) !important;\n }\n\n :host(.ic-tree-item-selected) .tree-item-content,\n :host(.ic-tree-item-selected) ::slotted([slot=\"router-item\"]) {\n color: Highlight !important;\n }\n}\n","import {\n Component,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Host,\n Watch,\n State,\n Listen,\n Method,\n} from \"@stencil/core\";\nimport { IcSizes, IcThemeForegroundNoDefault } from \"../../utils/types\";\nimport {\n isSlotUsed,\n onComponentRequiredPropUndefined,\n removeDisabledFalse,\n renderDynamicChildSlots,\n} from \"../../utils/helpers\";\nimport arrowDropdown from \"../../assets/arrow-dropdown.svg\";\n\nlet treeItemIds = 0;\n\n/**\n * @slot label - Content is set as the tree item label.\n * @slot icon - Content is placed to the left of the label.\n * @slot router-item - Handle routing by nesting your routes in this slot.\n */\n@Component({\n tag: \"ic-tree-item\",\n styleUrl: \"ic-tree-item.css\",\n shadow: true,\n})\nexport class TreeItem {\n private treeItemId = `ic-tree-item-${treeItemIds++}`;\n private treeItemElement: HTMLElement;\n private treeItemTag = \"IC-TREE-ITEM\";\n private routerSlot: HTMLElement;\n private hostMutationObserver: MutationObserver = null;\n private TOOLTIP = \"ic-tooltip\";\n\n @Element() el: HTMLIcTreeItemElement;\n\n @State() childTreeItems: HTMLIcTreeItemElement[];\n\n /**\n * @internal Determines whether the light or dark variant of the tree item should be displayed.\n */\n @Prop() appearance?: IcThemeForegroundNoDefault = \"dark\";\n\n /**\n * If `true`, the tree item appears in the disabled state.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the tree item appears in the expanded state.\n */\n @Prop({ mutable: true }) expanded: boolean = false;\n\n /**\n * @internal Determines if the parent tree item has been expanded.\n */\n @Prop({ mutable: true }) hasParentExpanded: boolean = false;\n\n /**\n * The URL that the tree item link points to. If set, the tree item will render as an \"a\" tag, otherwise it will render as a div.\n */\n @Prop() href?: string | undefined;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n\n /**\n * @internal If `true`, the tree item is a parent of other tree items.\n */\n @Prop({ mutable: true }) isParent: boolean = false;\n\n /**\n * The label of the tree item.\n */\n @Prop() label: string = \"\";\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * If `true`, the tree item appears in the selected state.\n */\n @Prop({ mutable: true }) selected: boolean = false;\n @Watch(\"selected\")\n watchSelectedHandler() {\n if (this.selected) {\n this.icTreeItemSelected.emit({ id: this.el.id });\n }\n this.updateAriaLabel();\n }\n\n /**\n * @internal Determines the size of the tree item.\n */\n @Prop() size?: IcSizes = \"default\";\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n /**\n * If `true`, the tree item label will be truncated instead of text wrapping.\n */\n @Prop() truncateTreeItem?: boolean;\n\n /**\n * Emitted when tree item is selected.\n */\n @Event() icTreeItemSelected: EventEmitter<{ id: string }>;\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n componentDidLoad(): void {\n this.childTreeItems = Array.from((this.el as HTMLElement).children).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n if (this.childTreeItems.length > 0) {\n this.isParent = true;\n }\n\n this.setTreeItemPadding();\n\n this.updateAriaLabel();\n\n setTimeout(() => {\n this.truncateTreeItem && this.truncateTreeItemLabel(this.el);\n }, 100);\n\n !isSlotUsed(this.el, \"label\") &&\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Tree item\"\n );\n\n this.hostMutationObserver = new MutationObserver((mutationList) =>\n renderDynamicChildSlots(mutationList, \"icon\", this)\n );\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n\n componentDidUpdate(): void {\n if (this.hasParentExpanded) {\n this.childTreeItems.forEach((child: HTMLIcTreeItemElement) => {\n child.truncateTreeItem && this.truncateTreeItemLabel(child);\n });\n this.hasParentExpanded = false;\n }\n }\n\n @Listen(\"keydown\", {})\n handleKeyDown(ev: KeyboardEvent): void {\n if (ev.key === \"Enter\" || ev.key === \" \") {\n ev.stopImmediatePropagation();\n this.handleTreeItemClicked();\n }\n }\n\n /**\n * Sets focus on the native `input`.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.hasRouterSlot()) {\n this.routerSlot?.focus();\n } else {\n this.treeItemElement?.focus();\n }\n }\n\n private handleTreeItemClicked = (): void => {\n if (this.isParent) {\n this.expanded = !this.expanded;\n this.hasParentExpanded = true;\n }\n\n this.updateAriaLabel();\n this.selected = true;\n this.watchSelectedHandler();\n };\n\n /**\n * @internal Updates the aria-label of the tree item.\n */\n @Method()\n async updateAriaLabel(): Promise<void> {\n let ariaLabel;\n\n if (this.hasRouterSlot()) {\n ariaLabel = this.routerSlot.textContent;\n } else if (isSlotUsed(this.el, \"label\")) {\n ariaLabel = this.el.querySelector('[slot=\"label\"]').textContent;\n } else {\n ariaLabel = this.label;\n }\n\n if (this.isParent) {\n ariaLabel = `${ariaLabel}, triggers submenu, ${\n this.expanded ? \"expanded\" : \"collapsed\"\n }`;\n }\n\n if (this.el.parentElement) {\n const treeItems = Array.from(\n (this.el.parentElement as HTMLElement).children\n ).filter(\n (child) => child.tagName === this.treeItemTag\n ) as HTMLIcTreeItemElement[];\n\n const index = treeItems.indexOf(this.el) + 1;\n const parentChildren = treeItems.length;\n\n ariaLabel = `${ariaLabel}, ${index} of ${parentChildren}`;\n }\n\n if (this.selected) {\n ariaLabel = `${ariaLabel}, active`;\n }\n\n if (this.disabled) {\n ariaLabel = `${ariaLabel}, dimmed`;\n }\n\n if (this.hasRouterSlot()) {\n this.routerSlot.ariaLabel = ariaLabel;\n } else {\n this.treeItemElement.ariaLabel = ariaLabel;\n }\n }\n\n private setTreeItemPadding = () => {\n let level = 1;\n let parentElement = this.el.parentElement;\n const treeItemContent = this.el.shadowRoot.querySelector(\n \".tree-item-content\"\n ) as HTMLElement;\n\n const isSiblingOfParent = Array.from(parentElement.children)\n .map((sibling) => {\n if (\n sibling !== this.el &&\n !sibling.querySelector('[slot=\"router-item\"]') &&\n !sibling.querySelector('[slot=\"label\"]')\n ) {\n return sibling.children.length > 0;\n } else {\n return false;\n }\n })\n .includes(true);\n\n const isChild = parentElement.tagName === this.treeItemTag;\n\n const isRouterItem = this.hasRouterSlot();\n\n if (\n (isSiblingOfParent && !this.el.isParent) ||\n (isChild && !this.el.isParent)\n ) {\n if (isRouterItem) {\n this.routerSlot.classList.add(\"ic-tree-item-single\");\n } else {\n treeItemContent.classList.add(\"ic-tree-item-single\");\n }\n }\n\n while (parentElement) {\n if (parentElement.tagName === this.treeItemTag) {\n level++;\n if (!this.el.isParent && isSiblingOfParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xl) + ${\n level * 16\n }px)`;\n } else if (!this.el.isParent) {\n treeItemContent.style.paddingLeft = `calc(var(--ic-space-xs) + ${\n level * 24\n }px`;\n } else {\n treeItemContent.style.paddingLeft = `${level * 16}px`;\n }\n }\n parentElement = parentElement.parentElement;\n }\n };\n\n private truncateTreeItemLabel = (treeItem: HTMLIcTreeItemElement) => {\n const typographyEl: HTMLIcTypographyElement =\n treeItem.shadowRoot.querySelector(\".tree-item-label\");\n const tooltip = typographyEl?.closest(this.TOOLTIP);\n const treeContent: HTMLElement =\n treeItem.shadowRoot.querySelector(\".tree-item-content\");\n\n if (typographyEl?.scrollHeight > treeContent?.clientHeight) {\n typographyEl.classList.add(\"ic-text-overflow\");\n\n if (!tooltip) {\n const tooltipEl = document.createElement(\"ic-tooltip\");\n tooltipEl.setAttribute(\"target\", this.el.id);\n tooltipEl.setAttribute(\"label\", typographyEl.textContent);\n tooltipEl.classList.add(\"ic-tooltip-overflow\");\n tooltipEl.setAttribute(\"placement\", \"right\");\n treeContent.appendChild(tooltipEl);\n tooltipEl.appendChild(typographyEl);\n }\n }\n };\n\n private hasRouterSlot(): boolean {\n this.routerSlot = this.el.querySelector('[slot=\"router-item\"]');\n return !!this.routerSlot;\n }\n\n private handleDisplayTooltip = (display: boolean) => {\n const typographyEl: HTMLIcTypographyElement =\n this.el.shadowRoot.querySelector(\".tree-item-label\");\n const tooltip: HTMLIcTooltipElement = typographyEl?.closest(this.TOOLTIP);\n\n tooltip?.displayTooltip(display);\n };\n\n render() {\n const { appearance, disabled, label, selected, size, expanded } = this;\n\n const Component = this.href && !this.disabled ? \"a\" : \"div\";\n\n const attrs = Component == \"a\" && {\n href: this.href,\n hrefLang: this.hreflang,\n referrerPolicy: this.referrerpolicy,\n rel: this.rel,\n target: this.target,\n };\n\n return (\n <Host\n class={{\n [`ic-tree-item-${appearance}`]: true,\n \"ic-tree-item-disabled\": disabled,\n \"ic-tree-item-selected\": !disabled && selected,\n [`ic-tree-item-${size}`]: size !== \"default\",\n \"ic-tree-item-truncate\": this.truncateTreeItem,\n }}\n id={this.treeItemId}\n >\n {this.hasRouterSlot() ? (\n <slot name=\"router-item\" />\n ) : (\n <Component\n class={{\n \"tree-item-content\": true,\n }}\n tabIndex={disabled ? -1 : 0}\n onClick={this.handleTreeItemClicked}\n ref={(el) => (this.treeItemElement = el)}\n aria-disabled={disabled ? \"true\" : \"false\"}\n aria-live=\"polite\"\n {...attrs}\n onFocus={() => this.handleDisplayTooltip(true)}\n onBlur={() => this.handleDisplayTooltip(false)}\n >\n {this.isParent && (\n <span\n class={{\n [\"arrow-dropdown\"]: true,\n [\"tree-item-expanded\"]: expanded,\n }}\n aria-hidden=\"true\"\n innerHTML={arrowDropdown}\n />\n )}\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography class=\"tree-item-label\">\n {isSlotUsed(this.el, \"label\") ? <slot name=\"label\" /> : label}\n </ic-typography>\n </Component>\n )}\n {expanded && (\n <div aria-hidden={`${!expanded}`}>\n <slot />\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as t,h as i,H as e,g as a,c as s}from"./p-8455d1bb.js";import{i as n,a as h,k as l}from"./p-da506987.js";import{G as r,h as o}from"./p-8ab58daa.js";import"./p-fd186591.js";const c=":host{gap:var(--ic-space-xs);padding:var(--ic-space-xs)}:host,.action-area{display:flex;flex-direction:column}.action-area{gap:var(--ic-space-md)}:host ::slotted(svg),:host ::slotted(img){border-radius:var(--ic-space-xxs)}:host(.right),:host(.right) .action-area{align-items:flex-end;text-align:right}:host(.center),:host(.center) .action-area{align-items:center;text-align:center}:host(.image-default) ::slotted(svg),:host(.image-default) ::slotted(img){height:calc(3 * var(--ic-space-lg)) !important;width:calc(3 * var(--ic-space-lg)) !important}:host(.image-small) ::slotted(svg),:host(.image-small) ::slotted(img){height:var(--ic-space-xxl) !important;width:var(--ic-space-xxl) !important}:host(.image-large) ::slotted(svg),:host(.image-large) ::slotted(img){height:calc(4 * var(--ic-space-xl)) !important;width:calc(4 * var(--ic-space-xl)) !important}";const g=class{constructor(i){t(this,i);this.hostMutationObserver=null;this.aligned="left";this.body=undefined;this.bodyMaxLines=undefined;this.heading=undefined;this.imageSize="default";this.subheading=undefined}disconnectedCallback(){var t;(t=this.hostMutationObserver)===null||t===void 0?void 0:t.disconnect()}componentDidLoad(){!n(this.el,"heading")&&h([{prop:this.heading,propName:"heading"}],"Empty State");this.hostMutationObserver=new MutationObserver((t=>l(t,["image","actions"],this)));this.hostMutationObserver.observe(this.el,{childList:true})}render(){const{aligned:t,body:a,bodyMaxLines:s,heading:h,imageSize:l,subheading:r}=this;return i(e,{class:{[`${t}`]:true,[`image-${l}`]:n(this.el,"image")}},n(this.el,"image")&&i("slot",{name:"image"}),i("div",null,i("slot",{name:"heading"},i("ic-typography",{variant:"h4"},h)),i("slot",{name:"subheading"},i("ic-typography",{variant:"subtitle-small"},r)),i("slot",{name:"body"},i("ic-typography",{maxLines:s},a))),n(this.el,"actions")&&i("div",{class:"action-area"},i("slot",{name:"actions"})))}get el(){return a(this)}};g.style=c;const p=":host(){display:block}.pagination-bar{height:3.5rem;display:flex;align-items:center;justify-content:flex-end;gap:var(--ic-space-xl);padding:var(--ic-space-xs) var(--ic-space-md);box-sizing:border-box}.pagination-bar-left{justify-content:flex-start}.item-controls{display:flex;align-items:center;gap:var(--ic-space-xl)}.pagination-bar-space-between .item-controls{margin-right:auto}.items-per-page-holder{display:flex;align-items:center;gap:var(--ic-space-xs)}.items-per-page-input{--input-width:5rem}.pagination-controls{display:flex;align-items:center;gap:var(--ic-space-xl)}.pagination-controls-wrap{flex-direction:column;align-items:flex-end;gap:var(--ic-space-xs)}.pagination-bar-space-between .pagination-controls{margin-left:auto}.go-to-page-holder{display:flex;align-items:center;gap:var(--ic-space-xs)}.go-to-page-input{--input-width:var(--ic-space-xl)}.go-to-page-button{--min-width:var(--ic-space-xl)}.pagination-text-default,.pagination-text-dark,.pagination-text-light{white-space:nowrap}.pagination-text-light{color:var(--ic-color-white-text)}@media screen and (max-width: 768px){.pagination-bar{flex-direction:column;align-items:flex-end;height:-moz-fit-content;height:fit-content;gap:var(--ic-space-xs)}.pagination-bar-left{align-items:flex-start}}@media screen and (max-width: 320px){.item-controls,.pagination-controls{flex-direction:column;align-items:flex-end;gap:var(--ic-space-xs)}.pagination-bar-left .item-controls,.pagination-bar-left .pagination-controls,.pagination-bar-space-between .item-controls,.pagination-bar-space-between .pagination-controls{align-items:flex-start}}";const d=class{constructor(i){t(this,i);this.icPageChange=s(this,"icPageChange",7);this.icItemsPerPageChange=s(this,"icItemsPerPageChange",7);this.PAGE_INPUT_FIELD_ID="go-to-page-input";this.INVALID_PAGE_ERROR="Please enter a valid page";this.resizeObserver=null;this.changeItemsPerPage=()=>{this.setItemsPerPage(Number(this.pageDropdownEl.value))};this.changePage=t=>{this.activePage=t;this.lowerBound=t!==1?(t-1)*this.itemsPerPage+1:t;this.setUpperBound()};this.focusElFromLabel=t=>{var i;(i=this.paginationBarEl.querySelector(t))===null||i===void 0?void 0:i.setFocus()};this.goToPage=()=>{var t;const i=this.pageInputEl;const e=Number(i.value);if(e<=this.totalPages&&e>0){this.changePage(e);(t=this.paginationEl)===null||t===void 0?void 0:t.setCurrentPage(e);this.activePage=e;i.value="";this.icPageChange.emit({value:e});this.pageInputTooltipEl.displayTooltip(false,false);i.validationStatus=""}else{this.setInputError(i,this.INVALID_PAGE_ERROR)}};this.goToPageLabelClickHandler=()=>{this.focusElFromLabel("ic-text-field")};this.handleBlur=()=>{const t=this.pageInputEl;if(Number(t.value)<=this.totalPages&&Number(t.value)>0||t.value===""){t.validationStatus=""}this.pageInputTooltipEl.displayTooltip(false,false)};this.handleFocus=()=>{if(this.pageInputEl.validationStatus==="error"){this.pageInputTooltipEl.displayTooltip(true,true)}};this.handleInputChange=()=>{const t=parseInt(this.pageInputEl.value);if(t>this.totalPages||t<=0){this.setInputError(this.pageInputEl,this.INVALID_PAGE_ERROR);this.pageInputTooltipEl.displayTooltip(true,true)}};this.handleKeydown=t=>{if(t.key==="Enter"){if(this.pageInputEl.validationStatus==="error"){this.pageInputTooltipEl.displayTooltip(true,true)}else{this.goToPage()}}else{this.pageInputTooltipEl.displayTooltip(false,false);this.pageInputEl.validationStatus=""}};this.handleKeyUp=t=>{if(Number.isNaN(parseInt(this.pageInputEl.value))&&t.key!=="Backspace"&&t.key!=="Enter"&&t.key!=="Tab"&&t.key!=="Shift"){this.setInputError(this.pageInputEl,"Please enter a number",false);this.pageInputTooltipEl.displayTooltip(true,false)}};this.itemsPerPageLabelClickHandler=()=>{this.focusElFromLabel("ic-select")};this.paginationShouldWrap=()=>{if(this.type==="simple"){this.paginationWrapped=this.paginationEl.clientHeight>63}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{const{clientWidth:t}=this.paginationBarEl;if(t-this.paginationWidth>50||t-this.paginationWidth<-50){this.paginationWidth=t;this.paginationShouldWrap()}}));this.resizeObserver.observe(this.paginationBarEl)};this.setInputError=(t,i,e=true)=>{this.inputError=i;t.validationStatus="error";if(e)t.setFocus()};this.setToFirstPage=()=>{var t;const i=1;this.changePage(i);(t=this.paginationEl)===null||t===void 0?void 0:t.setCurrentPage(i);this.activePage=i;this.icPageChange.emit({value:i})};this.setItemsPerPage=t=>{var i;if(this.itemsPerPage!==t){this.itemsPerPage=t;this.itemsPerPageString=t.toString();this.icItemsPerPageChange.emit({value:this.itemsPerPage});if(this.setToFirstPageOnPaginationChange){this.setToFirstPage()}}this.totalPages=this.totalItems>this.itemsPerPage?Math.ceil(this.totalItems/this.itemsPerPage):1;this.setUpperBound();if(this.activePage>this.totalPages){(i=this.paginationEl)===null||i===void 0?void 0:i.setCurrentPage(this.totalPages);this.activePage=this.totalPages}this.icPageChange.emit({value:this.activePage,fromItemsPerPage:true})};this.setItemsPerPageOptions=()=>{const t=this.itemsPerPageOptions?JSON.parse(JSON.stringify(this.itemsPerPageOptions)):null;const i=t||(this.totalItems<=100?[{label:"10",value:"10"},{label:"25",value:"25"},{label:"50",value:"50"}]:[{label:"25",value:"25"},{label:"100",value:"100"},{label:"1000",value:"1000"}]);this.displayedItemsPerPageOptions=i.filter((({value:t})=>this.totalItems>=Number(t)));const e=this.displayedItemsPerPageOptions.length;const a=()=>this.displayedItemsPerPageOptions.push({label:"All",value:String(this.totalItems)});const s=()=>Number(this.displayedItemsPerPageOptions[e-1].value)===this.totalItems;const n=()=>this.displayedItemsPerPageOptions[e-1].label="All";if(e===0){a()}else if(s()){n()}else if(!this.hideAllFromItemsPerPage){a()}};this.setPaginationBarContent=()=>{this.setItemsPerPageOptions();let t=0;const i=this.displayedItemsPerPageOptions.some((({value:i})=>{t=Number(i);return this.itemsPerPage<=t}));this.setItemsPerPage(i||!i&&this.itemsPerPage>t?t:this.itemsPerPage)};this.setUpperBound=()=>{this.upperBound=Math.min(this.lowerBound+this.itemsPerPage-1,this.totalItems)};this.capitalizedItemLabel=undefined;this.capitalizedPageLabel=undefined;this.activePage=1;this.displayedItemsPerPageOptions=undefined;this.inputError="Please enter a valid page";this.itemsPerPage=10;this.itemsPerPageString="10";this.lowerBound=1;this.lowerCaseItemLabel=undefined;this.lowerCasePageLabel=undefined;this.paginationWidth=undefined;this.paginationWrapped=false;this.totalPages=undefined;this.upperBound=undefined;this.alignment="right";this.appearance="default";this.currentPage=1;this.selectedItemsPerPage=undefined;this.hideAllFromItemsPerPage=false;this.itemLabel="Item";this.itemsPerPageOptions=undefined;this.type="simple";this.rangeLabelType="page";this.pageLabel="Page";this.showGoToPageControl=false;this.hideRangeLabel=false;this.showItemsPerPageControl=false;this.totalItems=undefined;this.setToFirstPageOnPaginationChange=false}watchPageNumberHandler(){this.setPaginationBarContent();if(typeof this.currentPage==="number"&&this.currentPage){if(this.currentPage<1||this.totalPages&&this.currentPage>this.totalPages){console.error(`The current page (${this.currentPage}) must be a number greater than zero but less than or equal to the total number of pages (${this.totalPages})`)}else{this.activePage=this.currentPage}}}watchSelectedItemsPerPageHandler(){var t;if(this.selectedItemsPerPage!==null&&this.selectedItemsPerPage!==undefined){if((t=this.displayedItemsPerPageOptions)===null||t===void 0?void 0:t.filter((t=>t.value===`${this.selectedItemsPerPage}`)).length){this.setItemsPerPage(this.selectedItemsPerPage)}else{console.error(`The selected items per page option "${this.selectedItemsPerPage}" does not exist`)}}}watchHideAllFromItemsPerPageHandler(){this.setPaginationBarContent()}watchItemLabelHandler(){this.capitalizedItemLabel=r(this.itemLabel);this.lowerCaseItemLabel=this.itemLabel.toLowerCase()}watchItemsPerPageOptionsHandler(t,i){if(JSON.stringify(t)===JSON.stringify(i))return;this.setPaginationBarContent()}watchPageLabelHandler(){this.capitalizedPageLabel=r(this.pageLabel);this.lowerCasePageLabel=this.pageLabel.toLowerCase()}watchTotalItemsHandler(){this.setPaginationBarContent()}watchSetToFirstPageOnPaginationChange(){this.setPaginationBarContent()}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){this.watchPageNumberHandler();this.watchPageLabelHandler();this.watchItemLabelHandler();this.setPaginationBarContent();this.watchSelectedItemsPerPageHandler()}componentDidLoad(){var t,i;this.paginationWidth=this.paginationBarEl.clientWidth;o(this.runResizeObserver);const e=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector(`.${this.PAGE_INPUT_FIELD_ID}`);if(e){const t=(i=e===null||e===void 0?void 0:e.shadowRoot)===null||i===void 0?void 0:i.querySelector("input");if(t){t.style.textAlign="center";t.style.padding="0"}}this.paginationShouldWrap()}pageChangeHandler(t){const i=t.detail.value;this.changePage(i)}render(){const{appearance:t,alignment:e,displayedItemsPerPageOptions:a,PAGE_INPUT_FIELD_ID:s,type:n,rangeLabelType:h,hideRangeLabel:l,showItemsPerPageControl:r,showGoToPageControl:o,pageLabel:c,capitalizedPageLabel:g,lowerCasePageLabel:p,capitalizedItemLabel:d,lowerCaseItemLabel:m,totalPages:u,activePage:f,itemsPerPageString:v}=this;return i("div",{class:{["pagination-bar"]:true,[`pagination-bar-${e}`]:true},ref:t=>this.paginationBarEl=t},(!l||r)&&i("div",{class:"item-controls"},r&&i("div",{class:"items-per-page-holder"},i("ic-typography",{class:{[`pagination-text-${t}`]:true,["items-per-page-control-label"]:true},variant:"label",onClick:this.itemsPerPageLabelClickHandler},d,"s per ",p),i("ic-select",{small:true,label:"items-per-page-input",class:"items-per-page-input",hideLabel:true,options:a,value:v,onIcChange:this.changeItemsPerPage,ref:t=>this.pageDropdownEl=t})),!l&&(h==="data"?i("ic-typography",{class:{[`pagination-text-${t}`]:true,["item-pagination-label"]:true},variant:"label","aria-live":"polite"},this.upperBound===0&&`0 ${m}s`,this.upperBound>0&&`${this.lowerBound} - ${this.upperBound} of ${this.totalItems} ${m}${this.totalItems>1?"s":""}`):i("ic-typography",{class:{[`pagination-text-${t}`]:true,["page-pagination-label"]:true},variant:"label","aria-live":"polite"},g," ",f," of ",u))),i("div",{class:{["pagination-controls"]:true,["pagination-controls-wrap"]:this.paginationWrapped}},i("div",{class:"pagination-holder"},i("ic-pagination",{appearance:t,type:n,pages:u,label:c,ref:t=>this.paginationEl=t,currentPage:f})),o&&i("div",{class:"go-to-page-holder"},i("ic-typography",{class:{[`pagination-text-${t}`]:true},variant:"label",onClick:this.goToPageLabelClickHandler},"Go to ",p),i("ic-tooltip",{label:this.inputError,target:`#${s}`,disableHover:true,disableClick:true,ref:t=>this.pageInputTooltipEl=t},i("ic-text-field",{type:"number",size:"small",label:s,class:s,id:s,hideLabel:true,onKeyDown:this.handleKeydown,onKeyUp:this.handleKeyUp,onInput:this.handleInputChange,max:u,min:"1",validationInlineInternal:true,onBlur:this.handleBlur,onFocus:this.handleFocus,ref:t=>this.pageInputEl=t})),i("ic-button",{appearance:t,variant:"secondary",onClick:this.goToPage,size:"small",class:"go-to-page-button"},"Go"))))}get el(){return a(this)}static get watchers(){return{currentPage:["watchPageNumberHandler"],selectedItemsPerPage:["watchSelectedItemsPerPageHandler"],hideAllFromItemsPerPage:["watchHideAllFromItemsPerPageHandler"],itemLabel:["watchItemLabelHandler"],itemsPerPageOptions:["watchItemsPerPageOptionsHandler"],pageLabel:["watchPageLabelHandler"],totalItems:["watchTotalItemsHandler"],setToFirstPageOnPaginationChange:["watchSetToFirstPageOnPaginationChange"]}}};d.style=p;export{g as ic_empty_state,d as ic_pagination_bar};
2
- //# sourceMappingURL=p-b68d6867.entry.js.map