@arc-ui/components 11.8.0 → 11.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (456) hide show
  1. package/dist/Alert/Alert.cjs.js +15 -15
  2. package/dist/Alert/Alert.esm.js +15 -15
  3. package/dist/Alert/package.json +1 -1
  4. package/dist/Align/Align.cjs.js +3 -3
  5. package/dist/Align/Align.esm.js +3 -3
  6. package/dist/Align/package.json +1 -1
  7. package/dist/Badge/Badge.cjs.js +8 -8
  8. package/dist/Badge/Badge.esm.js +8 -8
  9. package/dist/Badge/package.json +1 -1
  10. package/dist/Base/Base.cjs.js +2 -2
  11. package/dist/Base/Base.esm.js +2 -2
  12. package/dist/Base/package.json +1 -1
  13. package/dist/Box/Box.cjs.js +3 -3
  14. package/dist/Box/Box.esm.js +3 -3
  15. package/dist/Box/package.json +1 -1
  16. package/dist/BrandLogo/BrandLogo.cjs.js +5 -5
  17. package/dist/BrandLogo/BrandLogo.esm.js +5 -5
  18. package/dist/BrandLogo/package.json +1 -1
  19. package/dist/Breadcrumbs/Breadcrumbs.cjs.js +8 -8
  20. package/dist/Breadcrumbs/Breadcrumbs.esm.js +8 -8
  21. package/dist/Breadcrumbs/package.json +1 -1
  22. package/dist/Button/Button.cjs.js +8 -8
  23. package/dist/Button/Button.esm.js +8 -8
  24. package/dist/Button/package.json +1 -1
  25. package/dist/Card/Card.cjs.js +9 -9
  26. package/dist/Card/Card.esm.js +9 -9
  27. package/dist/Card/package.json +1 -1
  28. package/dist/Checkbox/Checkbox.cjs.js +11 -11
  29. package/dist/Checkbox/Checkbox.esm.js +11 -11
  30. package/dist/Checkbox/package.json +1 -1
  31. package/dist/Clock/Clock.cjs.js +1 -1
  32. package/dist/Clock/Clock.esm.js +1 -1
  33. package/dist/Clock/package.json +1 -1
  34. package/dist/Columns/Columns.cjs.js +4 -4
  35. package/dist/Columns/Columns.esm.js +4 -4
  36. package/dist/Columns/package.json +1 -1
  37. package/dist/Curve/Curve.cjs.js +4 -4
  38. package/dist/Curve/Curve.esm.js +4 -4
  39. package/dist/Curve/package.json +1 -1
  40. package/dist/Disclosure/Disclosure.cjs.js +7 -7
  41. package/dist/Disclosure/Disclosure.esm.js +7 -7
  42. package/dist/Disclosure/package.json +1 -1
  43. package/dist/DisclosureMini/DisclosureMini.cjs.js +7 -7
  44. package/dist/DisclosureMini/DisclosureMini.esm.js +7 -7
  45. package/dist/DisclosureMini/package.json +1 -1
  46. package/dist/Elevation/Elevation.cjs.js +2 -2
  47. package/dist/Elevation/Elevation.esm.js +2 -2
  48. package/dist/Elevation/package.json +1 -1
  49. package/dist/Filter/Filter.cjs.js +4 -4
  50. package/dist/Filter/Filter.esm.js +4 -4
  51. package/dist/Filter/package.json +1 -1
  52. package/dist/FormControl/FormControl.cjs.js +9 -9
  53. package/dist/FormControl/FormControl.esm.js +9 -9
  54. package/dist/FormControl/package.json +1 -1
  55. package/dist/Group/Group.cjs.js +4 -4
  56. package/dist/Group/Group.esm.js +4 -4
  57. package/dist/Group/package.json +1 -1
  58. package/dist/Heading/Heading.cjs.js +5 -5
  59. package/dist/Heading/Heading.esm.js +5 -5
  60. package/dist/Heading/package.json +1 -1
  61. package/dist/Icon/Icon.cjs.js +5 -5
  62. package/dist/Icon/Icon.esm.js +5 -5
  63. package/dist/Icon/package.json +1 -1
  64. package/dist/Image/Image.cjs.js +4 -4
  65. package/dist/Image/Image.esm.js +4 -4
  66. package/dist/Image/package.json +1 -1
  67. package/dist/Markup/Markup.cjs.js +3 -3
  68. package/dist/Markup/Markup.esm.js +3 -3
  69. package/dist/Markup/package.json +1 -1
  70. package/dist/Modal/Modal.cjs.js +21 -97
  71. package/dist/Modal/Modal.esm.js +21 -97
  72. package/dist/Modal/package.json +1 -1
  73. package/dist/Pagination/Pagination.cjs.js +9 -9
  74. package/dist/Pagination/Pagination.esm.js +9 -9
  75. package/dist/Pagination/package.json +1 -1
  76. package/dist/PaginationSimple/PaginationSimple.cjs.js +9 -9
  77. package/dist/PaginationSimple/PaginationSimple.esm.js +9 -9
  78. package/dist/PaginationSimple/package.json +1 -1
  79. package/dist/Poster/Poster.cjs.js +6 -6
  80. package/dist/Poster/Poster.esm.js +6 -6
  81. package/dist/Poster/package.json +1 -1
  82. package/dist/ProgressBar/ProgressBar.cjs.js +20 -22
  83. package/dist/ProgressBar/ProgressBar.esm.js +17 -19
  84. package/dist/ProgressBar/package.json +1 -1
  85. package/dist/ProgressStepper/ProgressStepper.cjs.js +11 -145
  86. package/dist/ProgressStepper/ProgressStepper.esm.js +10 -144
  87. package/dist/ProgressStepper/package.json +1 -1
  88. package/dist/RadioGroup/RadioGroup.cjs.js +10 -10
  89. package/dist/RadioGroup/RadioGroup.esm.js +10 -10
  90. package/dist/RadioGroup/package.json +1 -1
  91. package/dist/Rule/Rule.cjs.js +3 -3
  92. package/dist/Rule/Rule.esm.js +3 -3
  93. package/dist/Rule/package.json +1 -1
  94. package/dist/ScrollToTop/ScrollToTop.cjs.js +14 -16
  95. package/dist/ScrollToTop/ScrollToTop.esm.js +10 -12
  96. package/dist/ScrollToTop/package.json +1 -1
  97. package/dist/Section/Section.cjs.js +3 -3
  98. package/dist/Section/Section.esm.js +3 -3
  99. package/dist/Section/package.json +1 -1
  100. package/dist/Select/Select.cjs.js +192 -572
  101. package/dist/Select/Select.esm.js +55 -435
  102. package/dist/Select/package.json +1 -1
  103. package/dist/SiteFooter/SiteFooter.cjs.js +9 -9
  104. package/dist/SiteFooter/SiteFooter.esm.js +10 -10
  105. package/dist/SiteFooter/package.json +1 -1
  106. package/dist/SiteHeader/SiteHeader.cjs.js +13 -13
  107. package/dist/SiteHeader/SiteHeader.esm.js +13 -13
  108. package/dist/SiteHeader/package.json +1 -1
  109. package/dist/Surface/Surface.cjs.js +3 -3
  110. package/dist/Surface/Surface.esm.js +3 -3
  111. package/dist/Surface/package.json +1 -1
  112. package/dist/Switch/Switch.cjs.js +21 -244
  113. package/dist/Switch/Switch.esm.js +16 -239
  114. package/dist/Switch/package.json +1 -1
  115. package/dist/Tabs/Tabs.cjs.js +12 -506
  116. package/dist/Tabs/Tabs.esm.js +11 -505
  117. package/dist/Tabs/package.json +1 -1
  118. package/dist/Tag/Tag.cjs.js +18 -22
  119. package/dist/Tag/Tag.esm.js +14 -18
  120. package/dist/Tag/package.json +1 -1
  121. package/dist/Text/Text.cjs.js +5 -5
  122. package/dist/Text/Text.esm.js +5 -5
  123. package/dist/Text/package.json +1 -1
  124. package/dist/TextArea/TextArea.cjs.js +47 -35
  125. package/dist/TextArea/TextArea.esm.js +47 -35
  126. package/dist/TextArea/package.json +1 -1
  127. package/dist/TextInput/TextInput.cjs.js +10 -10
  128. package/dist/TextInput/TextInput.esm.js +10 -10
  129. package/dist/TextInput/package.json +1 -1
  130. package/dist/Toast/Toast.cjs.js +19 -739
  131. package/dist/Toast/Toast.esm.js +15 -735
  132. package/dist/Toast/package.json +1 -1
  133. package/dist/Truncate/Truncate.cjs.js +1 -1
  134. package/dist/Truncate/Truncate.esm.js +1 -1
  135. package/dist/Truncate/package.json +1 -1
  136. package/dist/UniversalHeader/UniversalHeader.cjs.js +4 -4
  137. package/dist/UniversalHeader/UniversalHeader.esm.js +4 -4
  138. package/dist/UniversalHeader/package.json +1 -1
  139. package/dist/VerticalSpace/VerticalSpace.cjs.js +3 -3
  140. package/dist/VerticalSpace/VerticalSpace.esm.js +3 -3
  141. package/dist/VerticalSpace/package.json +1 -1
  142. package/dist/VisuallyHidden/package.json +1 -1
  143. package/dist/_shared/cjs/{Base-569e4334.js → Base-f5a86eed.js} +1 -1
  144. package/dist/_shared/cjs/{BrandLogo-8107d59f.js → BrandLogo-f001e0c0.js} +4 -4
  145. package/dist/_shared/cjs/{Breadcrumbs-0906dd10.js → Breadcrumbs-9aa1d18b.js} +7 -9
  146. package/dist/_shared/cjs/{BtIconAlert-637db790.js → BtIconAlert.esm-e62a75b7.js} +8 -10
  147. package/dist/_shared/cjs/{BtIconChevronDown2Px-8fb4e2eb.js → BtIconChevronDown2Px.esm-c6f8ced2.js} +6 -8
  148. package/dist/_shared/cjs/{BtIconChevronLeftMid-df952a3e.js → BtIconChevronLeftMid.esm-7c2fc822.js} +5 -7
  149. package/dist/_shared/cjs/{BtIconChevronRight2Px-a8e40136.js → BtIconChevronRight2Px.esm-3c438341.js} +10 -14
  150. package/dist/_shared/cjs/{BtIconChevronRightMid-5a38d855.js → BtIconChevronRightMid.esm-cce080c8.js} +5 -7
  151. package/dist/_shared/cjs/{BtIconCrossAlt2Px-30dc2688.js → BtIconCrossAlt2Px.esm-c002bf55.js} +6 -8
  152. package/dist/_shared/cjs/{BtIconTick-42fcc5ec.js → BtIconTick.esm-613dfd8a.js} +18 -24
  153. package/dist/_shared/cjs/{BtIconTickAlt2Px-bdf06f8c.js → BtIconTickAlt2Px.esm-4862184c.js} +6 -8
  154. package/dist/_shared/cjs/{Button-5aaa6776.js → Button-c22c9787.js} +8 -8
  155. package/dist/_shared/cjs/{Card-fd189ba8.js → Card-55a1c129.js} +9 -11
  156. package/dist/_shared/cjs/{Checkbox-02c546ca.js → Checkbox-7ce718e7.js} +8 -8
  157. package/dist/_shared/cjs/{Columns-e90798f8.js → Columns-ae4f8cef.js} +3 -4
  158. package/dist/_shared/cjs/{Curve-781ef633.js → Curve-d038052b.js} +3 -3
  159. package/dist/_shared/cjs/{DisclosureMini-52706ee6.js → DisclosureMini-c666cc4d.js} +6 -6
  160. package/dist/_shared/cjs/{Filter-a7574fe7.js → Filter-22b8b171.js} +3 -7
  161. package/dist/_shared/cjs/{FormControl-1e1bf2bf.js → FormControl-5541ac3a.js} +6 -6
  162. package/dist/_shared/cjs/{Group-f85dd4c0.js → Group-143a4578.js} +4 -5
  163. package/dist/_shared/cjs/{Heading-e3332dcf.js → Heading-ba2f74ad.js} +4 -5
  164. package/dist/_shared/cjs/{Icon-e1dd45eb.js → Icon-cf30e736.js} +10 -12
  165. package/dist/_shared/cjs/{Image-0e393cbf.js → Image-e873b8fc.js} +3 -4
  166. package/dist/_shared/cjs/{Poster-faea1ad3.js → Poster-62e2ba67.js} +5 -9
  167. package/dist/_shared/cjs/ProgressStepper-92668367.js +144 -0
  168. package/dist/_shared/cjs/{RadioGroup-d7664b0c.js → RadioGroup-66c1e882.js} +4 -5
  169. package/dist/_shared/cjs/{Section-48aca5f5.js → Section-59804166.js} +2 -2
  170. package/dist/_shared/cjs/{SiteFooter-5da774e1.js → SiteFooter-d3babe07.js} +7 -9
  171. package/dist/_shared/cjs/{SiteHeader.rehydrator-acc9d8c4.js → SiteHeader.rehydrator-b7284004.js} +16 -24
  172. package/dist/_shared/cjs/{Surface-b7c51b2b.js → Surface-80c0909a.js} +2 -2
  173. package/dist/_shared/cjs/Tabs-65e7af8a.js +503 -0
  174. package/dist/_shared/cjs/{Text-fa447e2d.js → Text-76b7fea1.js} +4 -4
  175. package/dist/_shared/cjs/{TextInput-f4549637.js → TextInput-5bee337d.js} +4 -4
  176. package/dist/_shared/cjs/Toast-874d9be4.js +730 -0
  177. package/dist/_shared/cjs/{UniversalHeader-da622e1a.js → UniversalHeader-f5a225b6.js} +2 -3
  178. package/dist/_shared/cjs/{VerticalSpace-86f697e7.js → VerticalSpace-dc53bb70.js} +2 -2
  179. package/dist/_shared/cjs/{extends-bb8ffacd.js → extends-8c5e4b48.js} +1 -4
  180. package/dist/_shared/cjs/filter-data-attrs-1c9a530c.js +227 -0
  181. package/dist/_shared/cjs/{index-ec260f5e.js → index-43458549.js} +13 -96
  182. package/dist/_shared/cjs/{index-96c4d581.js → index-6b2a9ac3.js} +2 -2
  183. package/dist/_shared/cjs/{index-45bfb67b.js → index-9947ac13.js} +11 -10
  184. package/dist/_shared/cjs/{index-fb4b8fda.js → index-adbb63da.js} +2 -9
  185. package/dist/_shared/cjs/{index-27b53d49.js → index-b2fd6338.js} +3 -80
  186. package/dist/_shared/cjs/{index-952918c9.js → index-c575a255.js} +11 -10
  187. package/dist/_shared/cjs/index.module-dd1d7d0b.js +382 -0
  188. package/dist/_shared/cjs/{suffix-modifier-1ee2da04.js → suffix-modifier-64dcd338.js} +1 -1
  189. package/dist/_shared/esm/{Base-6c01e0ec.js → Base-f200653c.js} +1 -1
  190. package/dist/_shared/esm/{BrandLogo-9ec620e8.js → BrandLogo-51fc6f15.js} +4 -4
  191. package/dist/_shared/esm/{Breadcrumbs-dafa8dde.js → Breadcrumbs-50d0f406.js} +7 -9
  192. package/dist/_shared/esm/{BtIconAlert-55a6ed5c.js → BtIconAlert.esm-09346130.js} +6 -8
  193. package/dist/_shared/esm/{BtIconChevronDown2Px-782876e2.js → BtIconChevronDown2Px.esm-345d78fe.js} +4 -6
  194. package/dist/_shared/esm/{BtIconChevronLeftMid-9f4f3a3d.js → BtIconChevronLeftMid.esm-e69276cb.js} +3 -5
  195. package/dist/_shared/esm/{BtIconChevronRight2Px-b8e7b4ad.js → BtIconChevronRight2Px.esm-2c693ef3.js} +7 -11
  196. package/dist/_shared/esm/{BtIconChevronRightMid-d9b11761.js → BtIconChevronRightMid.esm-24809a93.js} +3 -5
  197. package/dist/_shared/esm/{BtIconCrossAlt2Px-a6a9f431.js → BtIconCrossAlt2Px.esm-425a6beb.js} +4 -6
  198. package/dist/_shared/esm/{BtIconTick-5fe50cc7.js → BtIconTick.esm-673282f5.js} +14 -20
  199. package/dist/_shared/esm/{BtIconTickAlt2Px-da97e9ae.js → BtIconTickAlt2Px.esm-ce22224b.js} +4 -6
  200. package/dist/_shared/esm/{Button-d1dbcf79.js → Button-67f68b14.js} +8 -8
  201. package/dist/_shared/esm/{Card-e62c3ff6.js → Card-bf0c3b0b.js} +9 -11
  202. package/dist/_shared/esm/{Checkbox-d8891198.js → Checkbox-50e2d4ab.js} +8 -8
  203. package/dist/_shared/esm/{Columns-8704515b.js → Columns-d96b7425.js} +3 -4
  204. package/dist/_shared/esm/{Curve-bbc5589c.js → Curve-d8679dde.js} +3 -3
  205. package/dist/_shared/esm/{DisclosureMini-9b819941.js → DisclosureMini-376c013c.js} +6 -6
  206. package/dist/_shared/esm/{Filter-a01aed11.js → Filter-f7ac126b.js} +3 -7
  207. package/dist/_shared/esm/{FormControl-f18e2f59.js → FormControl-aad4288c.js} +6 -6
  208. package/dist/_shared/esm/{Group-fb26fd32.js → Group-0129c979.js} +4 -5
  209. package/dist/_shared/esm/{Heading-0f629151.js → Heading-8bb7b7c0.js} +4 -5
  210. package/dist/_shared/esm/{Icon-c1af47bc.js → Icon-3bfabb14.js} +7 -9
  211. package/dist/_shared/esm/{Image-3ed3863c.js → Image-12fbd327.js} +3 -4
  212. package/dist/_shared/esm/{Poster-a83ae770.js → Poster-046b0f77.js} +5 -9
  213. package/dist/_shared/esm/ProgressStepper-3ffbdb73.js +138 -0
  214. package/dist/_shared/esm/{RadioGroup-be16d5d3.js → RadioGroup-1273a716.js} +4 -5
  215. package/dist/_shared/esm/{Section-b8038d66.js → Section-73781b56.js} +2 -2
  216. package/dist/_shared/esm/{SiteFooter-a182cb18.js → SiteFooter-60d1b216.js} +7 -9
  217. package/dist/_shared/esm/{SiteHeader.rehydrator-023b7b76.js → SiteHeader.rehydrator-029f568e.js} +16 -24
  218. package/dist/_shared/esm/{Surface-dde51789.js → Surface-c6e817cd.js} +2 -2
  219. package/dist/_shared/esm/Tabs-ec960828.js +497 -0
  220. package/dist/_shared/esm/{Text-40457811.js → Text-a3720712.js} +4 -4
  221. package/dist/_shared/esm/{TextInput-4424c195.js → TextInput-732f0b51.js} +4 -4
  222. package/dist/_shared/esm/Toast-b81384a4.js +724 -0
  223. package/dist/_shared/esm/{UniversalHeader-1c5a886d.js → UniversalHeader-354a1867.js} +2 -3
  224. package/dist/_shared/esm/{VerticalSpace-93980c9c.js → VerticalSpace-43cd9138.js} +2 -2
  225. package/dist/_shared/esm/{extends-4575346e.js → extends-8cc61aad.js} +1 -4
  226. package/dist/_shared/esm/filter-data-attrs-ea8f4ed4.js +220 -0
  227. package/dist/_shared/esm/{index-22aad354.js → index-13d575cc.js} +11 -11
  228. package/dist/_shared/esm/{index-2ae58626.js → index-2e73c2e9.js} +11 -10
  229. package/dist/_shared/esm/{index-94ecc5f8.js → index-3797d77e.js} +2 -2
  230. package/dist/_shared/esm/{index-369dce7f.js → index-41d7af2b.js} +9 -92
  231. package/dist/_shared/esm/{index-8000d9e3.js → index-a1d2d9b3.js} +2 -79
  232. package/dist/_shared/esm/{index-bed18a88.js → index-efd9ef1c.js} +1 -9
  233. package/dist/_shared/esm/index.module-44714d3f.js +371 -0
  234. package/dist/_shared/esm/{suffix-modifier-7e640670.js → suffix-modifier-3d548e45.js} +1 -1
  235. package/dist/index.es.js +2541 -1304
  236. package/dist/index.es.js.map +1 -1
  237. package/dist/index.js +2865 -1617
  238. package/dist/index.js.map +1 -1
  239. package/dist/styles.css +11 -1
  240. package/dist/types/components/Badge/Badge.d.ts +4 -0
  241. package/dist/types/components/Button/Button.d.ts +2 -2
  242. package/dist/types/components/Card/Card.d.ts +1 -1
  243. package/dist/types/components/Checkbox/Checkbox.d.ts +1 -1
  244. package/dist/types/components/Clock/Clock.d.ts +1 -1
  245. package/dist/types/components/Columns/Columns.d.ts +2 -2
  246. package/dist/types/components/FormControl/FormControl.d.ts +1 -1
  247. package/dist/types/components/Group/GroupItem/GroupItem.d.ts +17 -0
  248. package/dist/types/components/Heading/Heading.d.ts +4 -4
  249. package/dist/types/components/MediaCard/MediaCard.stories-wip.d.ts +15 -0
  250. package/dist/types/components/ProgressBar/types/progress-bar-icons.d.ts +1 -1
  251. package/dist/types/components/ProgressBar/types/progress-bar-state.d.ts +1 -1
  252. package/dist/types/components/ProgressStepper/progressStatus.d.ts +1 -1
  253. package/dist/types/components/RadioGroup/RadioGroup.d.ts +1 -1
  254. package/dist/types/components/RadioGroup/context.d.ts +2 -2
  255. package/dist/types/components/Surface/Surface.d.ts +3 -3
  256. package/dist/types/components/Text/Text.d.ts +2 -2
  257. package/dist/types/components/TextArea/TextArea.d.ts +1 -1
  258. package/dist/types/components/TextInput/TextInput.d.ts +1 -1
  259. package/dist/types/components/Toast/Toast.d.ts +5 -2
  260. package/dist/types/components/Toast/ToastNotification.d.ts +2 -2
  261. package/dist/types/components/VerticalSpace/VerticalSpace.d.ts +1 -1
  262. package/dist/types/components/index.d.ts +17 -6
  263. package/dist/types/types/arc-icon.d.ts +1 -1
  264. package/package.json +44 -15
  265. package/dist/Alert/Alert.cjs.d.ts +0 -57
  266. package/dist/Alert/Alert.esm.d.ts +0 -57
  267. package/dist/Align/Align.cjs.d.ts +0 -25
  268. package/dist/Align/Align.esm.d.ts +0 -25
  269. package/dist/Badge/Badge.cjs.d.ts +0 -26
  270. package/dist/Badge/Badge.esm.d.ts +0 -26
  271. package/dist/Base/Base.cjs.d.ts +0 -1
  272. package/dist/Base/Base.esm.d.ts +0 -1
  273. package/dist/Box/Box.cjs.d.ts +0 -40
  274. package/dist/Box/Box.esm.d.ts +0 -40
  275. package/dist/BrandLogo/BrandLogo.cjs.d.ts +0 -1
  276. package/dist/BrandLogo/BrandLogo.esm.d.ts +0 -1
  277. package/dist/Breadcrumbs/Breadcrumbs.cjs.d.ts +0 -1
  278. package/dist/Breadcrumbs/Breadcrumbs.esm.d.ts +0 -1
  279. package/dist/Button/Button.cjs.d.ts +0 -1
  280. package/dist/Button/Button.esm.d.ts +0 -1
  281. package/dist/Card/Card.cjs.d.ts +0 -1
  282. package/dist/Card/Card.esm.d.ts +0 -1
  283. package/dist/Checkbox/Checkbox.cjs.d.ts +0 -1
  284. package/dist/Checkbox/Checkbox.esm.d.ts +0 -1
  285. package/dist/Clock/Clock.cjs.d.ts +0 -15
  286. package/dist/Clock/Clock.esm.d.ts +0 -15
  287. package/dist/Columns/Columns.cjs.d.ts +0 -1
  288. package/dist/Columns/Columns.esm.d.ts +0 -1
  289. package/dist/Curve/Curve.cjs.d.ts +0 -1
  290. package/dist/Curve/Curve.esm.d.ts +0 -1
  291. package/dist/Disclosure/Disclosure.cjs.d.ts +0 -31
  292. package/dist/Disclosure/Disclosure.esm.d.ts +0 -31
  293. package/dist/DisclosureMini/DisclosureMini.cjs.d.ts +0 -1
  294. package/dist/DisclosureMini/DisclosureMini.esm.d.ts +0 -1
  295. package/dist/Elevation/Elevation.cjs.d.ts +0 -20
  296. package/dist/Elevation/Elevation.esm.d.ts +0 -20
  297. package/dist/Filter/Filter.cjs.d.ts +0 -1
  298. package/dist/Filter/Filter.esm.d.ts +0 -1
  299. package/dist/FormControl/FormControl.cjs.d.ts +0 -1
  300. package/dist/FormControl/FormControl.esm.d.ts +0 -1
  301. package/dist/Group/Group.cjs.d.ts +0 -1
  302. package/dist/Group/Group.esm.d.ts +0 -1
  303. package/dist/Heading/Heading.cjs.d.ts +0 -1
  304. package/dist/Heading/Heading.esm.d.ts +0 -1
  305. package/dist/Icon/Icon.cjs.d.ts +0 -1
  306. package/dist/Icon/Icon.esm.d.ts +0 -1
  307. package/dist/Image/Image.cjs.d.ts +0 -1
  308. package/dist/Image/Image.esm.d.ts +0 -1
  309. package/dist/Markup/Markup.cjs.d.ts +0 -16
  310. package/dist/Markup/Markup.esm.d.ts +0 -16
  311. package/dist/Modal/Modal.cjs.d.ts +0 -53
  312. package/dist/Modal/Modal.esm.d.ts +0 -53
  313. package/dist/Pagination/Pagination.cjs.d.ts +0 -20
  314. package/dist/Pagination/Pagination.esm.d.ts +0 -20
  315. package/dist/PaginationSimple/PaginationSimple.cjs.d.ts +0 -28
  316. package/dist/PaginationSimple/PaginationSimple.esm.d.ts +0 -28
  317. package/dist/Poster/Poster.cjs.d.ts +0 -1
  318. package/dist/Poster/Poster.esm.d.ts +0 -1
  319. package/dist/ProgressBar/ProgressBar.cjs.d.ts +0 -47
  320. package/dist/ProgressBar/ProgressBar.esm.d.ts +0 -47
  321. package/dist/ProgressStepper/ProgressStepper.cjs.d.ts +0 -89
  322. package/dist/ProgressStepper/ProgressStepper.esm.d.ts +0 -89
  323. package/dist/RadioGroup/RadioGroup.cjs.d.ts +0 -1
  324. package/dist/RadioGroup/RadioGroup.esm.d.ts +0 -1
  325. package/dist/Rule/Rule.cjs.d.ts +0 -8
  326. package/dist/Rule/Rule.esm.d.ts +0 -8
  327. package/dist/ScrollToTop/ScrollToTop.cjs.d.ts +0 -25
  328. package/dist/ScrollToTop/ScrollToTop.esm.d.ts +0 -25
  329. package/dist/Section/Section.cjs.d.ts +0 -1
  330. package/dist/Section/Section.esm.d.ts +0 -1
  331. package/dist/Select/Select.cjs.d.ts +0 -25
  332. package/dist/Select/Select.esm.d.ts +0 -25
  333. package/dist/SiteFooter/SiteFooter.cjs.d.ts +0 -4
  334. package/dist/SiteFooter/SiteFooter.esm.d.ts +0 -4
  335. package/dist/SiteHeader/SiteHeader.cjs.d.ts +0 -2
  336. package/dist/SiteHeader/SiteHeader.esm.d.ts +0 -2
  337. package/dist/Surface/Surface.cjs.d.ts +0 -1
  338. package/dist/Surface/Surface.esm.d.ts +0 -1
  339. package/dist/Switch/Switch.cjs.d.ts +0 -40
  340. package/dist/Switch/Switch.esm.d.ts +0 -40
  341. package/dist/Tabs/Tabs.cjs.d.ts +0 -75
  342. package/dist/Tabs/Tabs.esm.d.ts +0 -75
  343. package/dist/Tag/Tag.cjs.d.ts +0 -33
  344. package/dist/Tag/Tag.esm.d.ts +0 -33
  345. package/dist/Text/Text.cjs.d.ts +0 -1
  346. package/dist/Text/Text.esm.d.ts +0 -1
  347. package/dist/TextArea/TextArea.cjs.d.ts +0 -64
  348. package/dist/TextArea/TextArea.esm.d.ts +0 -64
  349. package/dist/TextInput/TextInput.cjs.d.ts +0 -1
  350. package/dist/TextInput/TextInput.esm.d.ts +0 -1
  351. package/dist/Toast/Toast.cjs.d.ts +0 -52
  352. package/dist/Toast/Toast.esm.d.ts +0 -52
  353. package/dist/Truncate/Truncate.cjs.d.ts +0 -18
  354. package/dist/Truncate/Truncate.esm.d.ts +0 -18
  355. package/dist/UniversalHeader/UniversalHeader.cjs.d.ts +0 -1
  356. package/dist/UniversalHeader/UniversalHeader.esm.d.ts +0 -1
  357. package/dist/VerticalSpace/VerticalSpace.cjs.d.ts +0 -1
  358. package/dist/VerticalSpace/VerticalSpace.esm.d.ts +0 -1
  359. package/dist/VisuallyHidden/VisuallyHidden.cjs.d.ts +0 -1
  360. package/dist/VisuallyHidden/VisuallyHidden.esm.d.ts +0 -1
  361. package/dist/_shared/cjs/Base-569e4334.d.ts +0 -19
  362. package/dist/_shared/cjs/BrandLogo-8107d59f.d.ts +0 -26
  363. package/dist/_shared/cjs/Breadcrumbs-0906dd10.d.ts +0 -61
  364. package/dist/_shared/cjs/Button-5aaa6776.d.ts +0 -102
  365. package/dist/_shared/cjs/Card-fd189ba8.d.ts +0 -136
  366. package/dist/_shared/cjs/Checkbox-02c546ca.d.ts +0 -64
  367. package/dist/_shared/cjs/Columns-e90798f8.d.ts +0 -76
  368. package/dist/_shared/cjs/Curve-781ef633.d.ts +0 -35
  369. package/dist/_shared/cjs/DisclosureMini-52706ee6.d.ts +0 -37
  370. package/dist/_shared/cjs/Filter-a7574fe7.d.ts +0 -83
  371. package/dist/_shared/cjs/FormControl-1e1bf2bf.d.ts +0 -99
  372. package/dist/_shared/cjs/Group-f85dd4c0.d.ts +0 -46
  373. package/dist/_shared/cjs/Heading-e3332dcf.d.ts +0 -50
  374. package/dist/_shared/cjs/Icon-e1dd45eb.d.ts +0 -34
  375. package/dist/_shared/cjs/Image-0e393cbf.d.ts +0 -94
  376. package/dist/_shared/cjs/ItemGroup-5af4d600.d.ts +0 -27
  377. package/dist/_shared/cjs/NavItem-df20237c.d.ts +0 -43
  378. package/dist/_shared/cjs/NavItemWithSubNav-65f21828.d.ts +0 -49
  379. package/dist/_shared/cjs/Poster-faea1ad3.d.ts +0 -81
  380. package/dist/_shared/cjs/RadioGroup-d7664b0c.d.ts +0 -97
  381. package/dist/_shared/cjs/Section-48aca5f5.d.ts +0 -21
  382. package/dist/_shared/cjs/SiteFooter-5da774e1.d.ts +0 -62
  383. package/dist/_shared/cjs/SiteHeader-c25ee36e.d.ts +0 -78
  384. package/dist/_shared/cjs/SiteHeader.rehydrator-acc9d8c4.d.ts +0 -78
  385. package/dist/_shared/cjs/SubNavItem-a84d1bf4.d.ts +0 -48
  386. package/dist/_shared/cjs/Surface-b7c51b2b.d.ts +0 -51
  387. package/dist/_shared/cjs/Text-fa447e2d.d.ts +0 -38
  388. package/dist/_shared/cjs/TextInput-13050538.d.ts +0 -77
  389. package/dist/_shared/cjs/TextInput-f4549637.d.ts +0 -10
  390. package/dist/_shared/cjs/UniversalHeader-da622e1a.d.ts +0 -26
  391. package/dist/_shared/cjs/VerticalSpace-86f697e7.d.ts +0 -34
  392. package/dist/_shared/cjs/VisuallyHidden-e2c8b291.d.ts +0 -12
  393. package/dist/_shared/cjs/arc-icon-17594b2f.d.ts +0 -4
  394. package/dist/_shared/cjs/filter-data-attrs-a30dcf5f.d.ts +0 -2
  395. package/dist/_shared/cjs/filter-data-attrs-a30dcf5f.js +0 -215
  396. package/dist/_shared/cjs/handle-link-click-17a44cf4.d.ts +0 -7
  397. package/dist/_shared/cjs/index-699086a7.d.ts +0 -2
  398. package/dist/_shared/cjs/index-74488a9f.d.ts +0 -2
  399. package/dist/_shared/cjs/index-9483ad5f.d.ts +0 -14
  400. package/dist/_shared/cjs/index-c81c9401.d.ts +0 -4
  401. package/dist/_shared/cjs/index-e340924e.d.ts +0 -2
  402. package/dist/_shared/cjs/index-e6d20018.d.ts +0 -3
  403. package/dist/_shared/cjs/index-eb06f640.d.ts +0 -2
  404. package/dist/_shared/cjs/index-f419cf04.d.ts +0 -2
  405. package/dist/_shared/cjs/index.es-77def0c9.d.ts +0 -19
  406. package/dist/_shared/cjs/index.module-bbcc4e18.js +0 -126
  407. package/dist/_shared/cjs/suffix-modifier-1ee2da04.d.ts +0 -10
  408. package/dist/_shared/esm/Base-6c01e0ec.d.ts +0 -19
  409. package/dist/_shared/esm/BrandLogo-9ec620e8.d.ts +0 -26
  410. package/dist/_shared/esm/Breadcrumbs-dafa8dde.d.ts +0 -61
  411. package/dist/_shared/esm/Button-d1dbcf79.d.ts +0 -102
  412. package/dist/_shared/esm/Card-e62c3ff6.d.ts +0 -136
  413. package/dist/_shared/esm/Checkbox-d8891198.d.ts +0 -64
  414. package/dist/_shared/esm/Columns-8704515b.d.ts +0 -76
  415. package/dist/_shared/esm/Curve-bbc5589c.d.ts +0 -35
  416. package/dist/_shared/esm/DisclosureMini-9b819941.d.ts +0 -37
  417. package/dist/_shared/esm/Filter-a01aed11.d.ts +0 -83
  418. package/dist/_shared/esm/FormControl-f18e2f59.d.ts +0 -99
  419. package/dist/_shared/esm/Group-fb26fd32.d.ts +0 -46
  420. package/dist/_shared/esm/Heading-0f629151.d.ts +0 -50
  421. package/dist/_shared/esm/Icon-c1af47bc.d.ts +0 -34
  422. package/dist/_shared/esm/Image-3ed3863c.d.ts +0 -94
  423. package/dist/_shared/esm/ItemGroup-5af4d600.d.ts +0 -27
  424. package/dist/_shared/esm/NavItem-df20237c.d.ts +0 -43
  425. package/dist/_shared/esm/NavItemWithSubNav-65f21828.d.ts +0 -49
  426. package/dist/_shared/esm/Poster-a83ae770.d.ts +0 -81
  427. package/dist/_shared/esm/RadioGroup-be16d5d3.d.ts +0 -97
  428. package/dist/_shared/esm/Section-b8038d66.d.ts +0 -21
  429. package/dist/_shared/esm/SiteFooter-a182cb18.d.ts +0 -62
  430. package/dist/_shared/esm/SiteHeader-c25ee36e.d.ts +0 -78
  431. package/dist/_shared/esm/SiteHeader.rehydrator-023b7b76.d.ts +0 -78
  432. package/dist/_shared/esm/SubNavItem-a84d1bf4.d.ts +0 -48
  433. package/dist/_shared/esm/Surface-dde51789.d.ts +0 -51
  434. package/dist/_shared/esm/Text-40457811.d.ts +0 -38
  435. package/dist/_shared/esm/TextInput-13050538.d.ts +0 -77
  436. package/dist/_shared/esm/TextInput-4424c195.d.ts +0 -10
  437. package/dist/_shared/esm/UniversalHeader-1c5a886d.d.ts +0 -26
  438. package/dist/_shared/esm/VerticalSpace-93980c9c.d.ts +0 -34
  439. package/dist/_shared/esm/VisuallyHidden-b9eebf71.d.ts +0 -12
  440. package/dist/_shared/esm/arc-icon-17594b2f.d.ts +0 -4
  441. package/dist/_shared/esm/filter-data-attrs-afdb7d32.d.ts +0 -2
  442. package/dist/_shared/esm/filter-data-attrs-afdb7d32.js +0 -208
  443. package/dist/_shared/esm/handle-link-click-f64f55a2.d.ts +0 -7
  444. package/dist/_shared/esm/index-699086a7.d.ts +0 -2
  445. package/dist/_shared/esm/index-74488a9f.d.ts +0 -2
  446. package/dist/_shared/esm/index-9483ad5f.d.ts +0 -14
  447. package/dist/_shared/esm/index-c81c9401.d.ts +0 -4
  448. package/dist/_shared/esm/index-e340924e.d.ts +0 -2
  449. package/dist/_shared/esm/index-e6d20018.d.ts +0 -3
  450. package/dist/_shared/esm/index-eb06f640.d.ts +0 -2
  451. package/dist/_shared/esm/index-f419cf04.d.ts +0 -2
  452. package/dist/_shared/esm/index.es-00cb3bcb.d.ts +0 -19
  453. package/dist/_shared/esm/index.module-5ed90b21.js +0 -122
  454. package/dist/_shared/esm/suffix-modifier-7e640670.d.ts +0 -10
  455. /package/dist/_shared/cjs/{debounce-506538c5.js → debounce-123468fb.js} +0 -0
  456. /package/dist/_shared/esm/{debounce-e228705f.js → debounce-6fed6b84.js} +0 -0
@@ -0,0 +1,730 @@
1
+ 'use strict';
2
+
3
+ var filterDataAttrs = require('./filter-data-attrs-1c9a530c.js');
4
+ var React = require('react');
5
+ var _extends = require('./extends-8c5e4b48.js');
6
+ var $7SXl2$reactdom = require('react-dom');
7
+ var index = require('./index-c575a255.js');
8
+ var index$1 = require('./index-b2fd6338.js');
9
+ var index$2 = require('./index-6b2a9ac3.js');
10
+ var index$3 = require('./index-9947ac13.js');
11
+ var BtIconCrossAlt2Px_esm = require('./BtIconCrossAlt2Px.esm-c002bf55.js');
12
+ var BtIconTick_esm = require('./BtIconTick.esm-613dfd8a.js');
13
+ var BtIconAlert_esm = require('./BtIconAlert.esm-e62a75b7.js');
14
+ var Icon = require('./Icon-cf30e736.js');
15
+
16
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
+
18
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
19
+
20
+ const $ea1ef594cf570d83$export$439d29a4e110a164 = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>{
21
+ return /*#__PURE__*/ React.createElement(index.$8927f6f2acc4f386$export$250ffa63cdc0d034.span, _extends._extends({}, props, {
22
+ ref: forwardedRef,
23
+ style: {
24
+ // See: https://github.com/twbs/bootstrap/blob/master/scss/mixins/_screen-reader.scss
25
+ position: 'absolute',
26
+ border: 0,
27
+ width: 1,
28
+ height: 1,
29
+ padding: 0,
30
+ margin: -1,
31
+ overflow: 'hidden',
32
+ clip: 'rect(0, 0, 0, 0)',
33
+ whiteSpace: 'nowrap',
34
+ wordWrap: 'normal',
35
+ ...props.style
36
+ }
37
+ }));
38
+ });
39
+
40
+ /* -------------------------------------------------------------------------------------------------
41
+ * ToastProvider
42
+ * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$PROVIDER_NAME = 'ToastProvider';
43
+ const [$054eb8030ebde76e$var$Collection, $054eb8030ebde76e$var$useCollection, $054eb8030ebde76e$var$createCollectionScope] = index$1.$e02a7d9cb1dc128c$export$c74125a8e3af6bb2('Toast');
44
+ const [$054eb8030ebde76e$var$createToastContext, $054eb8030ebde76e$export$8a359da18fbc9073] = index.$c512c27ab02ef895$export$50c7b4e9d9f19c1('Toast', [
45
+ $054eb8030ebde76e$var$createCollectionScope
46
+ ]);
47
+ const [$054eb8030ebde76e$var$ToastProviderProvider, $054eb8030ebde76e$var$useToastProviderContext] = $054eb8030ebde76e$var$createToastContext($054eb8030ebde76e$var$PROVIDER_NAME);
48
+ const $054eb8030ebde76e$export$f5d03d415824e0e = (props)=>{
49
+ const { __scopeToast: __scopeToast , label: label = 'Notification' , duration: duration = 5000 , swipeDirection: swipeDirection = 'right' , swipeThreshold: swipeThreshold = 50 , children: children } = props;
50
+ const [viewport, setViewport] = React.useState(null);
51
+ const [toastCount, setToastCount] = React.useState(0);
52
+ const isFocusedToastEscapeKeyDownRef = React.useRef(false);
53
+ const isClosePausedRef = React.useRef(false);
54
+ return /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$Collection.Provider, {
55
+ scope: __scopeToast
56
+ }, /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$ToastProviderProvider, {
57
+ scope: __scopeToast,
58
+ label: label,
59
+ duration: duration,
60
+ swipeDirection: swipeDirection,
61
+ swipeThreshold: swipeThreshold,
62
+ toastCount: toastCount,
63
+ viewport: viewport,
64
+ onViewportChange: setViewport,
65
+ onToastAdd: React.useCallback(()=>setToastCount((prevCount)=>prevCount + 1
66
+ )
67
+ , []),
68
+ onToastRemove: React.useCallback(()=>setToastCount((prevCount)=>prevCount - 1
69
+ )
70
+ , []),
71
+ isFocusedToastEscapeKeyDownRef: isFocusedToastEscapeKeyDownRef,
72
+ isClosePausedRef: isClosePausedRef
73
+ }, children));
74
+ };
75
+ $054eb8030ebde76e$export$f5d03d415824e0e.propTypes = {
76
+ label (props) {
77
+ if (props.label && typeof props.label === 'string' && !props.label.trim()) {
78
+ const error = `Invalid prop \`label\` supplied to \`${$054eb8030ebde76e$var$PROVIDER_NAME}\`. Expected non-empty \`string\`.`;
79
+ return new Error(error);
80
+ }
81
+ return null;
82
+ }
83
+ };
84
+ /* -------------------------------------------------------------------------------------------------
85
+ * ToastViewport
86
+ * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$VIEWPORT_NAME = 'ToastViewport';
87
+ const $054eb8030ebde76e$var$VIEWPORT_DEFAULT_HOTKEY = [
88
+ 'F8'
89
+ ];
90
+ const $054eb8030ebde76e$var$VIEWPORT_PAUSE = 'toast.viewportPause';
91
+ const $054eb8030ebde76e$var$VIEWPORT_RESUME = 'toast.viewportResume';
92
+ const $054eb8030ebde76e$export$6192c2425ecfd989 = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>{
93
+ const { __scopeToast: __scopeToast , hotkey: hotkey = $054eb8030ebde76e$var$VIEWPORT_DEFAULT_HOTKEY , label: label = 'Notifications ({hotkey})' , ...viewportProps } = props;
94
+ const context = $054eb8030ebde76e$var$useToastProviderContext($054eb8030ebde76e$var$VIEWPORT_NAME, __scopeToast);
95
+ const getItems = $054eb8030ebde76e$var$useCollection(__scopeToast);
96
+ const wrapperRef = React.useRef(null);
97
+ const headFocusProxyRef = React.useRef(null);
98
+ const tailFocusProxyRef = React.useRef(null);
99
+ const ref = React.useRef(null);
100
+ const composedRefs = index.$6ed0406888f73fc4$export$c7b2cbe3552a0d05(forwardedRef, ref, context.onViewportChange);
101
+ const hotkeyLabel = hotkey.join('+').replace(/Key/g, '').replace(/Digit/g, '');
102
+ const hasToasts = context.toastCount > 0;
103
+ React.useEffect(()=>{
104
+ const handleKeyDown = (event)=>{
105
+ var _ref$current;
106
+ // we use `event.code` as it is consistent regardless of meta keys that were pressed.
107
+ // for example, `event.key` for `Control+Alt+t` is `†` and `t !== †`
108
+ const isHotkeyPressed = hotkey.every((key)=>event[key] || event.code === key
109
+ );
110
+ if (isHotkeyPressed) (_ref$current = ref.current) === null || _ref$current === void 0 || _ref$current.focus();
111
+ };
112
+ document.addEventListener('keydown', handleKeyDown);
113
+ return ()=>document.removeEventListener('keydown', handleKeyDown)
114
+ ;
115
+ }, [
116
+ hotkey
117
+ ]);
118
+ React.useEffect(()=>{
119
+ const wrapper = wrapperRef.current;
120
+ const viewport = ref.current;
121
+ if (hasToasts && wrapper && viewport) {
122
+ const handlePause = ()=>{
123
+ if (!context.isClosePausedRef.current) {
124
+ const pauseEvent = new CustomEvent($054eb8030ebde76e$var$VIEWPORT_PAUSE);
125
+ viewport.dispatchEvent(pauseEvent);
126
+ context.isClosePausedRef.current = true;
127
+ }
128
+ };
129
+ const handleResume = ()=>{
130
+ if (context.isClosePausedRef.current) {
131
+ const resumeEvent = new CustomEvent($054eb8030ebde76e$var$VIEWPORT_RESUME);
132
+ viewport.dispatchEvent(resumeEvent);
133
+ context.isClosePausedRef.current = false;
134
+ }
135
+ };
136
+ const handleFocusOutResume = (event)=>{
137
+ const isFocusMovingOutside = !wrapper.contains(event.relatedTarget);
138
+ if (isFocusMovingOutside) handleResume();
139
+ };
140
+ const handlePointerLeaveResume = ()=>{
141
+ const isFocusInside = wrapper.contains(document.activeElement);
142
+ if (!isFocusInside) handleResume();
143
+ }; // Toasts are not in the viewport React tree so we need to bind DOM events
144
+ wrapper.addEventListener('focusin', handlePause);
145
+ wrapper.addEventListener('focusout', handleFocusOutResume);
146
+ wrapper.addEventListener('pointermove', handlePause);
147
+ wrapper.addEventListener('pointerleave', handlePointerLeaveResume);
148
+ window.addEventListener('blur', handlePause);
149
+ window.addEventListener('focus', handleResume);
150
+ return ()=>{
151
+ wrapper.removeEventListener('focusin', handlePause);
152
+ wrapper.removeEventListener('focusout', handleFocusOutResume);
153
+ wrapper.removeEventListener('pointermove', handlePause);
154
+ wrapper.removeEventListener('pointerleave', handlePointerLeaveResume);
155
+ window.removeEventListener('blur', handlePause);
156
+ window.removeEventListener('focus', handleResume);
157
+ };
158
+ }
159
+ }, [
160
+ hasToasts,
161
+ context.isClosePausedRef
162
+ ]);
163
+ const getSortedTabbableCandidates = React.useCallback(({ tabbingDirection: tabbingDirection })=>{
164
+ const toastItems = getItems();
165
+ const tabbableCandidates = toastItems.map((toastItem)=>{
166
+ const toastNode = toastItem.ref.current;
167
+ const toastTabbableCandidates = [
168
+ toastNode,
169
+ ...$054eb8030ebde76e$var$getTabbableCandidates(toastNode)
170
+ ];
171
+ return tabbingDirection === 'forwards' ? toastTabbableCandidates : toastTabbableCandidates.reverse();
172
+ });
173
+ return (tabbingDirection === 'forwards' ? tabbableCandidates.reverse() : tabbableCandidates).flat();
174
+ }, [
175
+ getItems
176
+ ]);
177
+ React.useEffect(()=>{
178
+ const viewport = ref.current; // We programmatically manage tabbing as we are unable to influence
179
+ // the source order with portals, this allows us to reverse the
180
+ // tab order so that it runs from most recent toast to least
181
+ if (viewport) {
182
+ const handleKeyDown = (event)=>{
183
+ const isMetaKey = event.altKey || event.ctrlKey || event.metaKey;
184
+ const isTabKey = event.key === 'Tab' && !isMetaKey;
185
+ if (isTabKey) {
186
+ const focusedElement = document.activeElement;
187
+ const isTabbingBackwards = event.shiftKey;
188
+ const targetIsViewport = event.target === viewport; // If we're back tabbing after jumping to the viewport then we simply
189
+ // proxy focus out to the preceding document
190
+ if (targetIsViewport && isTabbingBackwards) {
191
+ var _headFocusProxyRef$cu;
192
+ (_headFocusProxyRef$cu = headFocusProxyRef.current) === null || _headFocusProxyRef$cu === void 0 || _headFocusProxyRef$cu.focus();
193
+ return;
194
+ }
195
+ const tabbingDirection = isTabbingBackwards ? 'backwards' : 'forwards';
196
+ const sortedCandidates = getSortedTabbableCandidates({
197
+ tabbingDirection: tabbingDirection
198
+ });
199
+ const index = sortedCandidates.findIndex((candidate)=>candidate === focusedElement
200
+ );
201
+ if ($054eb8030ebde76e$var$focusFirst(sortedCandidates.slice(index + 1))) event.preventDefault();
202
+ else {
203
+ var _headFocusProxyRef$cu2, _tailFocusProxyRef$cu;
204
+ // If we can't focus that means we're at the edges so we
205
+ // proxy to the corresponding exit point and let the browser handle
206
+ // tab/shift+tab keypress and implicitly pass focus to the next valid element in the document
207
+ isTabbingBackwards ? (_headFocusProxyRef$cu2 = headFocusProxyRef.current) === null || _headFocusProxyRef$cu2 === void 0 || _headFocusProxyRef$cu2.focus() : (_tailFocusProxyRef$cu = tailFocusProxyRef.current) === null || _tailFocusProxyRef$cu === void 0 || _tailFocusProxyRef$cu.focus();
208
+ }
209
+ }
210
+ }; // Toasts are not in the viewport React tree so we need to bind DOM events
211
+ viewport.addEventListener('keydown', handleKeyDown);
212
+ return ()=>viewport.removeEventListener('keydown', handleKeyDown)
213
+ ;
214
+ }
215
+ }, [
216
+ getItems,
217
+ getSortedTabbableCandidates
218
+ ]);
219
+ return /*#__PURE__*/ React.createElement(index$2.$5cb92bef7577960e$export$aecb2ddcb55c95be, {
220
+ ref: wrapperRef,
221
+ role: "region",
222
+ "aria-label": label.replace('{hotkey}', hotkeyLabel) // Ensure virtual cursor from landmarks menus triggers focus/blur for pause/resume
223
+ ,
224
+ tabIndex: -1 // incase list has size when empty (e.g. padding), we remove pointer events so
225
+ ,
226
+ style: {
227
+ pointerEvents: hasToasts ? undefined : 'none'
228
+ }
229
+ }, hasToasts && /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$FocusProxy, {
230
+ ref: headFocusProxyRef,
231
+ onFocusFromOutsideViewport: ()=>{
232
+ const tabbableCandidates = getSortedTabbableCandidates({
233
+ tabbingDirection: 'forwards'
234
+ });
235
+ $054eb8030ebde76e$var$focusFirst(tabbableCandidates);
236
+ }
237
+ }), /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$Collection.Slot, {
238
+ scope: __scopeToast
239
+ }, /*#__PURE__*/ React.createElement(index.$8927f6f2acc4f386$export$250ffa63cdc0d034.ol, _extends._extends({
240
+ tabIndex: -1
241
+ }, viewportProps, {
242
+ ref: composedRefs
243
+ }))), hasToasts && /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$FocusProxy, {
244
+ ref: tailFocusProxyRef,
245
+ onFocusFromOutsideViewport: ()=>{
246
+ const tabbableCandidates = getSortedTabbableCandidates({
247
+ tabbingDirection: 'backwards'
248
+ });
249
+ $054eb8030ebde76e$var$focusFirst(tabbableCandidates);
250
+ }
251
+ }));
252
+ });
253
+ /* -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$FOCUS_PROXY_NAME = 'ToastFocusProxy';
254
+ const $054eb8030ebde76e$var$FocusProxy = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>{
255
+ const { __scopeToast: __scopeToast , onFocusFromOutsideViewport: onFocusFromOutsideViewport , ...proxyProps } = props;
256
+ const context = $054eb8030ebde76e$var$useToastProviderContext($054eb8030ebde76e$var$FOCUS_PROXY_NAME, __scopeToast);
257
+ return /*#__PURE__*/ React.createElement($ea1ef594cf570d83$export$439d29a4e110a164, _extends._extends({
258
+ "aria-hidden": true,
259
+ tabIndex: 0
260
+ }, proxyProps, {
261
+ ref: forwardedRef // Avoid page scrolling when focus is on the focus proxy
262
+ ,
263
+ style: {
264
+ position: 'fixed'
265
+ },
266
+ onFocus: (event)=>{
267
+ var _context$viewport;
268
+ const prevFocusedElement = event.relatedTarget;
269
+ const isFocusFromOutsideViewport = !((_context$viewport = context.viewport) !== null && _context$viewport !== void 0 && _context$viewport.contains(prevFocusedElement));
270
+ if (isFocusFromOutsideViewport) onFocusFromOutsideViewport();
271
+ }
272
+ }));
273
+ });
274
+ /* -------------------------------------------------------------------------------------------------
275
+ * Toast
276
+ * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$TOAST_NAME = 'Toast';
277
+ const $054eb8030ebde76e$var$TOAST_SWIPE_START = 'toast.swipeStart';
278
+ const $054eb8030ebde76e$var$TOAST_SWIPE_MOVE = 'toast.swipeMove';
279
+ const $054eb8030ebde76e$var$TOAST_SWIPE_CANCEL = 'toast.swipeCancel';
280
+ const $054eb8030ebde76e$var$TOAST_SWIPE_END = 'toast.swipeEnd';
281
+ const $054eb8030ebde76e$export$8d8dc7d5f743331b = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>{
282
+ const { forceMount: forceMount , open: openProp , defaultOpen: defaultOpen , onOpenChange: onOpenChange , ...toastProps } = props;
283
+ const [open = true, setOpen] = index.$71cd76cc60e0454e$export$6f32135080cb4c3({
284
+ prop: openProp,
285
+ defaultProp: defaultOpen,
286
+ onChange: onOpenChange
287
+ });
288
+ return /*#__PURE__*/ React.createElement(index.$921a889cee6df7e8$export$99c2b779aa4e8b8b, {
289
+ present: forceMount || open
290
+ }, /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$ToastImpl, _extends._extends({
291
+ open: open
292
+ }, toastProps, {
293
+ ref: forwardedRef,
294
+ onClose: ()=>setOpen(false)
295
+ ,
296
+ onPause: index.$b1b2314f5f9a1d84$export$25bec8c6f54ee79a(props.onPause),
297
+ onResume: index.$b1b2314f5f9a1d84$export$25bec8c6f54ee79a(props.onResume),
298
+ onSwipeStart: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onSwipeStart, (event)=>{
299
+ event.currentTarget.setAttribute('data-swipe', 'start');
300
+ }),
301
+ onSwipeMove: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onSwipeMove, (event)=>{
302
+ const { x: x , y: y } = event.detail.delta;
303
+ event.currentTarget.setAttribute('data-swipe', 'move');
304
+ event.currentTarget.style.setProperty('--radix-toast-swipe-move-x', `${x}px`);
305
+ event.currentTarget.style.setProperty('--radix-toast-swipe-move-y', `${y}px`);
306
+ }),
307
+ onSwipeCancel: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onSwipeCancel, (event)=>{
308
+ event.currentTarget.setAttribute('data-swipe', 'cancel');
309
+ event.currentTarget.style.removeProperty('--radix-toast-swipe-move-x');
310
+ event.currentTarget.style.removeProperty('--radix-toast-swipe-move-y');
311
+ event.currentTarget.style.removeProperty('--radix-toast-swipe-end-x');
312
+ event.currentTarget.style.removeProperty('--radix-toast-swipe-end-y');
313
+ }),
314
+ onSwipeEnd: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onSwipeEnd, (event)=>{
315
+ const { x: x , y: y } = event.detail.delta;
316
+ event.currentTarget.setAttribute('data-swipe', 'end');
317
+ event.currentTarget.style.removeProperty('--radix-toast-swipe-move-x');
318
+ event.currentTarget.style.removeProperty('--radix-toast-swipe-move-y');
319
+ event.currentTarget.style.setProperty('--radix-toast-swipe-end-x', `${x}px`);
320
+ event.currentTarget.style.setProperty('--radix-toast-swipe-end-y', `${y}px`);
321
+ setOpen(false);
322
+ })
323
+ })));
324
+ });
325
+ /* -----------------------------------------------------------------------------------------------*/ const [$054eb8030ebde76e$var$ToastInteractiveProvider, $054eb8030ebde76e$var$useToastInteractiveContext] = $054eb8030ebde76e$var$createToastContext($054eb8030ebde76e$var$TOAST_NAME, {
326
+ onClose () {}
327
+ });
328
+ const $054eb8030ebde76e$var$ToastImpl = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>{
329
+ const { __scopeToast: __scopeToast , type: type = 'foreground' , duration: durationProp , open: open , onClose: onClose , onEscapeKeyDown: onEscapeKeyDown , onPause: onPause , onResume: onResume , onSwipeStart: onSwipeStart , onSwipeMove: onSwipeMove , onSwipeCancel: onSwipeCancel , onSwipeEnd: onSwipeEnd , ...toastProps } = props;
330
+ const context = $054eb8030ebde76e$var$useToastProviderContext($054eb8030ebde76e$var$TOAST_NAME, __scopeToast);
331
+ const [node1, setNode] = React.useState(null);
332
+ const composedRefs = index.$6ed0406888f73fc4$export$c7b2cbe3552a0d05(forwardedRef, (node)=>setNode(node)
333
+ );
334
+ const pointerStartRef = React.useRef(null);
335
+ const swipeDeltaRef = React.useRef(null);
336
+ const duration1 = durationProp || context.duration;
337
+ const closeTimerStartTimeRef = React.useRef(0);
338
+ const closeTimerRemainingTimeRef = React.useRef(duration1);
339
+ const closeTimerRef = React.useRef(0);
340
+ const { onToastAdd: onToastAdd , onToastRemove: onToastRemove } = context;
341
+ const handleClose = index.$b1b2314f5f9a1d84$export$25bec8c6f54ee79a(()=>{
342
+ var _context$viewport2;
343
+ // focus viewport if focus is within toast to read the remaining toast
344
+ // count to SR users and ensure focus isn't lost
345
+ const isFocusInToast = node1 === null || node1 === void 0 ? void 0 : node1.contains(document.activeElement);
346
+ if (isFocusInToast) (_context$viewport2 = context.viewport) === null || _context$viewport2 === void 0 || _context$viewport2.focus();
347
+ onClose();
348
+ });
349
+ const startTimer = React.useCallback((duration)=>{
350
+ if (!duration || duration === Infinity) return;
351
+ window.clearTimeout(closeTimerRef.current);
352
+ closeTimerStartTimeRef.current = new Date().getTime();
353
+ closeTimerRef.current = window.setTimeout(handleClose, duration);
354
+ }, [
355
+ handleClose
356
+ ]);
357
+ React.useEffect(()=>{
358
+ const viewport = context.viewport;
359
+ if (viewport) {
360
+ const handleResume = ()=>{
361
+ startTimer(closeTimerRemainingTimeRef.current);
362
+ onResume === null || onResume === void 0 || onResume();
363
+ };
364
+ const handlePause = ()=>{
365
+ const elapsedTime = new Date().getTime() - closeTimerStartTimeRef.current;
366
+ closeTimerRemainingTimeRef.current = closeTimerRemainingTimeRef.current - elapsedTime;
367
+ window.clearTimeout(closeTimerRef.current);
368
+ onPause === null || onPause === void 0 || onPause();
369
+ };
370
+ viewport.addEventListener($054eb8030ebde76e$var$VIEWPORT_PAUSE, handlePause);
371
+ viewport.addEventListener($054eb8030ebde76e$var$VIEWPORT_RESUME, handleResume);
372
+ return ()=>{
373
+ viewport.removeEventListener($054eb8030ebde76e$var$VIEWPORT_PAUSE, handlePause);
374
+ viewport.removeEventListener($054eb8030ebde76e$var$VIEWPORT_RESUME, handleResume);
375
+ };
376
+ }
377
+ }, [
378
+ context.viewport,
379
+ duration1,
380
+ onPause,
381
+ onResume,
382
+ startTimer
383
+ ]); // start timer when toast opens or duration changes.
384
+ // we include `open` in deps because closed !== unmounted when animating
385
+ // so it could reopen before being completely unmounted
386
+ React.useEffect(()=>{
387
+ if (open && !context.isClosePausedRef.current) startTimer(duration1);
388
+ }, [
389
+ open,
390
+ duration1,
391
+ context.isClosePausedRef,
392
+ startTimer
393
+ ]);
394
+ React.useEffect(()=>{
395
+ onToastAdd();
396
+ return ()=>onToastRemove()
397
+ ;
398
+ }, [
399
+ onToastAdd,
400
+ onToastRemove
401
+ ]);
402
+ const announceTextContent = React.useMemo(()=>{
403
+ return node1 ? $054eb8030ebde76e$var$getAnnounceTextContent(node1) : null;
404
+ }, [
405
+ node1
406
+ ]);
407
+ if (!context.viewport) return null;
408
+ return /*#__PURE__*/ React.createElement(React.Fragment, null, announceTextContent && /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$ToastAnnounce, {
409
+ __scopeToast: __scopeToast // Toasts are always role=status to avoid stuttering issues with role=alert in SRs.
410
+ ,
411
+ role: "status",
412
+ "aria-live": type === 'foreground' ? 'assertive' : 'polite',
413
+ "aria-atomic": true
414
+ }, announceTextContent), /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$ToastInteractiveProvider, {
415
+ scope: __scopeToast,
416
+ onClose: handleClose
417
+ }, /*#__PURE__*/ $7SXl2$reactdom.createPortal(/*#__PURE__*/ React.createElement($054eb8030ebde76e$var$Collection.ItemSlot, {
418
+ scope: __scopeToast
419
+ }, /*#__PURE__*/ React.createElement(index$2.$5cb92bef7577960e$export$be92b6f5f03c0fe9, {
420
+ asChild: true,
421
+ onEscapeKeyDown: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(onEscapeKeyDown, ()=>{
422
+ if (!context.isFocusedToastEscapeKeyDownRef.current) handleClose();
423
+ context.isFocusedToastEscapeKeyDownRef.current = false;
424
+ })
425
+ }, /*#__PURE__*/ React.createElement(index.$8927f6f2acc4f386$export$250ffa63cdc0d034.li, _extends._extends({
426
+ // Ensure toasts are announced as status list or status when focused
427
+ role: "status",
428
+ "aria-live": "off",
429
+ "aria-atomic": true,
430
+ tabIndex: 0,
431
+ "data-state": open ? 'open' : 'closed',
432
+ "data-swipe-direction": context.swipeDirection
433
+ }, toastProps, {
434
+ ref: composedRefs,
435
+ style: {
436
+ userSelect: 'none',
437
+ touchAction: 'none',
438
+ ...props.style
439
+ },
440
+ onKeyDown: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onKeyDown, (event)=>{
441
+ if (event.key !== 'Escape') return;
442
+ onEscapeKeyDown === null || onEscapeKeyDown === void 0 || onEscapeKeyDown(event.nativeEvent);
443
+ if (!event.nativeEvent.defaultPrevented) {
444
+ context.isFocusedToastEscapeKeyDownRef.current = true;
445
+ handleClose();
446
+ }
447
+ }),
448
+ onPointerDown: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onPointerDown, (event)=>{
449
+ if (event.button !== 0) return;
450
+ pointerStartRef.current = {
451
+ x: event.clientX,
452
+ y: event.clientY
453
+ };
454
+ }),
455
+ onPointerMove: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onPointerMove, (event)=>{
456
+ if (!pointerStartRef.current) return;
457
+ const x = event.clientX - pointerStartRef.current.x;
458
+ const y = event.clientY - pointerStartRef.current.y;
459
+ const hasSwipeMoveStarted = Boolean(swipeDeltaRef.current);
460
+ const isHorizontalSwipe = [
461
+ 'left',
462
+ 'right'
463
+ ].includes(context.swipeDirection);
464
+ const clamp = [
465
+ 'left',
466
+ 'up'
467
+ ].includes(context.swipeDirection) ? Math.min : Math.max;
468
+ const clampedX = isHorizontalSwipe ? clamp(0, x) : 0;
469
+ const clampedY = !isHorizontalSwipe ? clamp(0, y) : 0;
470
+ const moveStartBuffer = event.pointerType === 'touch' ? 10 : 2;
471
+ const delta = {
472
+ x: clampedX,
473
+ y: clampedY
474
+ };
475
+ const eventDetail = {
476
+ originalEvent: event,
477
+ delta: delta
478
+ };
479
+ if (hasSwipeMoveStarted) {
480
+ swipeDeltaRef.current = delta;
481
+ $054eb8030ebde76e$var$handleAndDispatchCustomEvent($054eb8030ebde76e$var$TOAST_SWIPE_MOVE, onSwipeMove, eventDetail, {
482
+ discrete: false
483
+ });
484
+ } else if ($054eb8030ebde76e$var$isDeltaInDirection(delta, context.swipeDirection, moveStartBuffer)) {
485
+ swipeDeltaRef.current = delta;
486
+ $054eb8030ebde76e$var$handleAndDispatchCustomEvent($054eb8030ebde76e$var$TOAST_SWIPE_START, onSwipeStart, eventDetail, {
487
+ discrete: false
488
+ });
489
+ event.target.setPointerCapture(event.pointerId);
490
+ } else if (Math.abs(x) > moveStartBuffer || Math.abs(y) > moveStartBuffer) // User is swiping in wrong direction so we disable swipe gesture
491
+ // for the current pointer down interaction
492
+ pointerStartRef.current = null;
493
+ }),
494
+ onPointerUp: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onPointerUp, (event1)=>{
495
+ const delta = swipeDeltaRef.current;
496
+ const target = event1.target;
497
+ if (target.hasPointerCapture(event1.pointerId)) target.releasePointerCapture(event1.pointerId);
498
+ swipeDeltaRef.current = null;
499
+ pointerStartRef.current = null;
500
+ if (delta) {
501
+ const toast = event1.currentTarget;
502
+ const eventDetail = {
503
+ originalEvent: event1,
504
+ delta: delta
505
+ };
506
+ if ($054eb8030ebde76e$var$isDeltaInDirection(delta, context.swipeDirection, context.swipeThreshold)) $054eb8030ebde76e$var$handleAndDispatchCustomEvent($054eb8030ebde76e$var$TOAST_SWIPE_END, onSwipeEnd, eventDetail, {
507
+ discrete: true
508
+ });
509
+ else $054eb8030ebde76e$var$handleAndDispatchCustomEvent($054eb8030ebde76e$var$TOAST_SWIPE_CANCEL, onSwipeCancel, eventDetail, {
510
+ discrete: true
511
+ });
512
+ // Prevent click event from triggering on items within the toast when
513
+ // pointer up is part of a swipe gesture
514
+ toast.addEventListener('click', (event)=>event.preventDefault()
515
+ , {
516
+ once: true
517
+ });
518
+ }
519
+ })
520
+ })))), context.viewport)));
521
+ });
522
+ $054eb8030ebde76e$var$ToastImpl.propTypes = {
523
+ type (props) {
524
+ if (props.type && ![
525
+ 'foreground',
526
+ 'background'
527
+ ].includes(props.type)) {
528
+ const error = `Invalid prop \`type\` supplied to \`${$054eb8030ebde76e$var$TOAST_NAME}\`. Expected \`foreground | background\`.`;
529
+ return new Error(error);
530
+ }
531
+ return null;
532
+ }
533
+ };
534
+ /* -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$ToastAnnounce = (props)=>{
535
+ const { __scopeToast: __scopeToast , children: children , ...announceProps } = props;
536
+ const context = $054eb8030ebde76e$var$useToastProviderContext($054eb8030ebde76e$var$TOAST_NAME, __scopeToast);
537
+ const [renderAnnounceText, setRenderAnnounceText] = React.useState(false);
538
+ const [isAnnounced, setIsAnnounced] = React.useState(false); // render text content in the next frame to ensure toast is announced in NVDA
539
+ $054eb8030ebde76e$var$useNextFrame(()=>setRenderAnnounceText(true)
540
+ ); // cleanup after announcing
541
+ React.useEffect(()=>{
542
+ const timer = window.setTimeout(()=>setIsAnnounced(true)
543
+ , 1000);
544
+ return ()=>window.clearTimeout(timer)
545
+ ;
546
+ }, []);
547
+ return isAnnounced ? null : /*#__PURE__*/ React.createElement(index$2.$f1701beae083dbae$export$602eac185826482c, {
548
+ asChild: true
549
+ }, /*#__PURE__*/ React.createElement($ea1ef594cf570d83$export$439d29a4e110a164, announceProps, renderAnnounceText && /*#__PURE__*/ React.createElement(React.Fragment, null, context.label, " ", children)));
550
+ };
551
+ const $054eb8030ebde76e$export$16d42d7c29b95a4 = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>{
552
+ const { __scopeToast: __scopeToast , ...titleProps } = props;
553
+ return /*#__PURE__*/ React.createElement(index.$8927f6f2acc4f386$export$250ffa63cdc0d034.div, _extends._extends({}, titleProps, {
554
+ ref: forwardedRef
555
+ }));
556
+ });
557
+ /* -------------------------------------------------------------------------------------------------
558
+ * ToastAction
559
+ * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$ACTION_NAME = 'ToastAction';
560
+ const $054eb8030ebde76e$export$3019feecfda683d2 = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>{
561
+ const { altText: altText , ...actionProps } = props;
562
+ if (!altText) return null;
563
+ return /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$ToastAnnounceExclude, {
564
+ altText: altText,
565
+ asChild: true
566
+ }, /*#__PURE__*/ React.createElement($054eb8030ebde76e$export$811e70f61c205839, _extends._extends({}, actionProps, {
567
+ ref: forwardedRef
568
+ })));
569
+ });
570
+ $054eb8030ebde76e$export$3019feecfda683d2.propTypes = {
571
+ altText (props) {
572
+ if (!props.altText) return new Error(`Missing prop \`altText\` expected on \`${$054eb8030ebde76e$var$ACTION_NAME}\``);
573
+ return null;
574
+ }
575
+ };
576
+ /* -------------------------------------------------------------------------------------------------
577
+ * ToastClose
578
+ * -----------------------------------------------------------------------------------------------*/ const $054eb8030ebde76e$var$CLOSE_NAME = 'ToastClose';
579
+ const $054eb8030ebde76e$export$811e70f61c205839 = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>{
580
+ const { __scopeToast: __scopeToast , ...closeProps } = props;
581
+ const interactiveContext = $054eb8030ebde76e$var$useToastInteractiveContext($054eb8030ebde76e$var$CLOSE_NAME, __scopeToast);
582
+ return /*#__PURE__*/ React.createElement($054eb8030ebde76e$var$ToastAnnounceExclude, {
583
+ asChild: true
584
+ }, /*#__PURE__*/ React.createElement(index.$8927f6f2acc4f386$export$250ffa63cdc0d034.button, _extends._extends({
585
+ type: "button"
586
+ }, closeProps, {
587
+ ref: forwardedRef,
588
+ onClick: index.$e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onClick, interactiveContext.onClose)
589
+ })));
590
+ });
591
+ /* ---------------------------------------------------------------------------------------------- */ const $054eb8030ebde76e$var$ToastAnnounceExclude = /*#__PURE__*/ React.forwardRef((props, forwardedRef)=>{
592
+ const { __scopeToast: __scopeToast , altText: altText , ...announceExcludeProps } = props;
593
+ return /*#__PURE__*/ React.createElement(index.$8927f6f2acc4f386$export$250ffa63cdc0d034.div, _extends._extends({
594
+ "data-radix-toast-announce-exclude": "",
595
+ "data-radix-toast-announce-alt": altText || undefined
596
+ }, announceExcludeProps, {
597
+ ref: forwardedRef
598
+ }));
599
+ });
600
+ function $054eb8030ebde76e$var$getAnnounceTextContent(container) {
601
+ const textContent = [];
602
+ const childNodes = Array.from(container.childNodes);
603
+ childNodes.forEach((node)=>{
604
+ if (node.nodeType === node.TEXT_NODE && node.textContent) textContent.push(node.textContent);
605
+ if ($054eb8030ebde76e$var$isHTMLElement(node)) {
606
+ const isHidden = node.ariaHidden || node.hidden || node.style.display === 'none';
607
+ const isExcluded = node.dataset.radixToastAnnounceExclude === '';
608
+ if (!isHidden) {
609
+ if (isExcluded) {
610
+ const altText = node.dataset.radixToastAnnounceAlt;
611
+ if (altText) textContent.push(altText);
612
+ } else textContent.push(...$054eb8030ebde76e$var$getAnnounceTextContent(node));
613
+ }
614
+ }
615
+ }); // We return a collection of text rather than a single concatenated string.
616
+ // This allows SR VO to naturally pause break between nodes while announcing.
617
+ return textContent;
618
+ }
619
+ /* ---------------------------------------------------------------------------------------------- */ function $054eb8030ebde76e$var$handleAndDispatchCustomEvent(name, handler, detail, { discrete: discrete }) {
620
+ const currentTarget = detail.originalEvent.currentTarget;
621
+ const event = new CustomEvent(name, {
622
+ bubbles: true,
623
+ cancelable: true,
624
+ detail: detail
625
+ });
626
+ if (handler) currentTarget.addEventListener(name, handler, {
627
+ once: true
628
+ });
629
+ if (discrete) index.$8927f6f2acc4f386$export$6d1a0317bde7de7f(currentTarget, event);
630
+ else currentTarget.dispatchEvent(event);
631
+ }
632
+ const $054eb8030ebde76e$var$isDeltaInDirection = (delta, direction, threshold = 0)=>{
633
+ const deltaX = Math.abs(delta.x);
634
+ const deltaY = Math.abs(delta.y);
635
+ const isDeltaX = deltaX > deltaY;
636
+ if (direction === 'left' || direction === 'right') return isDeltaX && deltaX > threshold;
637
+ else return !isDeltaX && deltaY > threshold;
638
+ };
639
+ function $054eb8030ebde76e$var$useNextFrame(callback = ()=>{}) {
640
+ const fn = index.$b1b2314f5f9a1d84$export$25bec8c6f54ee79a(callback);
641
+ index.$9f79659886946c16$export$e5c5a5f917a5871c(()=>{
642
+ let raf1 = 0;
643
+ let raf2 = 0;
644
+ raf1 = window.requestAnimationFrame(()=>raf2 = window.requestAnimationFrame(fn)
645
+ );
646
+ return ()=>{
647
+ window.cancelAnimationFrame(raf1);
648
+ window.cancelAnimationFrame(raf2);
649
+ };
650
+ }, [
651
+ fn
652
+ ]);
653
+ }
654
+ function $054eb8030ebde76e$var$isHTMLElement(node) {
655
+ return node.nodeType === node.ELEMENT_NODE;
656
+ }
657
+ /**
658
+ * Returns a list of potential tabbable candidates.
659
+ *
660
+ * NOTE: This is only a close approximation. For example it doesn't take into account cases like when
661
+ * elements are not visible. This cannot be worked out easily by just reading a property, but rather
662
+ * necessitate runtime knowledge (computed styles, etc). We deal with these cases separately.
663
+ *
664
+ * See: https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker
665
+ * Credit: https://github.com/discord/focus-layers/blob/master/src/util/wrapFocus.tsx#L1
666
+ */ function $054eb8030ebde76e$var$getTabbableCandidates(container) {
667
+ const nodes = [];
668
+ const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {
669
+ acceptNode: (node)=>{
670
+ const isHiddenInput = node.tagName === 'INPUT' && node.type === 'hidden';
671
+ if (node.disabled || node.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP; // `.tabIndex` is not the same as the `tabindex` attribute. It works on the
672
+ // runtime's understanding of tabbability, so this automatically accounts
673
+ // for any kind of element that could be tabbed to.
674
+ return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
675
+ }
676
+ });
677
+ while(walker.nextNode())nodes.push(walker.currentNode); // we do not take into account the order of nodes with positive `tabIndex` as it
678
+ // hinders accessibility to have tab order different from visual order.
679
+ return nodes;
680
+ }
681
+ function $054eb8030ebde76e$var$focusFirst(candidates) {
682
+ const previouslyFocusedElement = document.activeElement;
683
+ return candidates.some((candidate)=>{
684
+ // if focus is already where we want to go, we don't want to keep going through the candidates
685
+ if (candidate === previouslyFocusedElement) return true;
686
+ candidate.focus();
687
+ return document.activeElement !== previouslyFocusedElement;
688
+ });
689
+ }
690
+ const $054eb8030ebde76e$export$2881499e37b75b9a = $054eb8030ebde76e$export$f5d03d415824e0e;
691
+ const $054eb8030ebde76e$export$d5c6c08dc2d3ca7 = $054eb8030ebde76e$export$6192c2425ecfd989;
692
+ const $054eb8030ebde76e$export$be92b6f5f03c0fe9 = $054eb8030ebde76e$export$8d8dc7d5f743331b;
693
+ const $054eb8030ebde76e$export$f99233281efd08a0 = $054eb8030ebde76e$export$16d42d7c29b95a4;
694
+ const $054eb8030ebde76e$export$e19cd5f9376f8cee = $054eb8030ebde76e$export$3019feecfda683d2;
695
+ const $054eb8030ebde76e$export$f39c2d165cd861fe = $054eb8030ebde76e$export$811e70f61c205839;
696
+
697
+ var ToastNotification = function (_a) {
698
+ var link = _a.link, title = _a.title, isOpen = _a.isOpen, onOpenChange = _a.onOpenChange, _b = _a.isStatusIconVisible, isStatusIconVisible = _b === void 0 ? true : _b, _c = _a.isCloseButtonVisible, isCloseButtonVisible = _c === void 0 ? true : _c, _d = _a.status, status = _d === void 0 ? "general" : _d, props = filterDataAttrs.__rest(_a, ["link", "title", "isOpen", "onOpenChange", "isStatusIconVisible", "isCloseButtonVisible", "status"]);
699
+ var statusIcons = {
700
+ general: BtIconTick_esm.BtIconNotification,
701
+ error: BtIconTick_esm.BtIconAlertTriangle,
702
+ warning: BtIconAlert_esm.BtIconAlert,
703
+ success: BtIconTick_esm.BtIconTick
704
+ };
705
+ var handleLinkClick = function (handler) { return function (event) {
706
+ event.preventDefault();
707
+ handler();
708
+ }; };
709
+ return (React__default["default"].createElement($054eb8030ebde76e$export$be92b6f5f03c0fe9, filterDataAttrs.__assign({ className: "arc-Toast-root", open: isOpen, onOpenChange: onOpenChange }, filterDataAttrs.filterDataAttrs(props)),
710
+ React__default["default"].createElement("div", { "data-testid": "toast-notification-wrapper", className: index$3.classNames("arc-Toast", "arc-Toast-status--".concat(status)) },
711
+ isStatusIconVisible && (React__default["default"].createElement("div", { "data-testid": "status-icon", className: "arc-Toast-icon" },
712
+ React__default["default"].createElement(Icon.Icon, { size: 24, icon: statusIcons[status] }))),
713
+ React__default["default"].createElement($054eb8030ebde76e$export$f99233281efd08a0, { className: "arc-Toast-title" },
714
+ React__default["default"].createElement("span", null, title)),
715
+ link && (React__default["default"].createElement($054eb8030ebde76e$export$e19cd5f9376f8cee, { className: "arc-Toast-action", asChild: true, altText: link.text },
716
+ React__default["default"].createElement("a", filterDataAttrs.__assign({ className: "arc-Toast-link", href: link.href, "aria-label": link.ariaLabel }, (link.onClick && { onClick: handleLinkClick(link.onClick) })), link.text))),
717
+ isCloseButtonVisible && !link && (React__default["default"].createElement($054eb8030ebde76e$export$f39c2d165cd861fe, { className: "arc-Toast-dismiss", "aria-label": "Close" },
718
+ React__default["default"].createElement(Icon.Icon, { icon: BtIconCrossAlt2Px_esm.BtIconCrossAlt2Px, size: 24 }))))));
719
+ };
720
+
721
+ /** Use `Toast` to display temporary messages at the bottom of the viewport. */
722
+ var Toast = function (_a) {
723
+ var children = _a.children, _b = _a.colorScheme, colorScheme = _b === void 0 ? "default" : _b, props = filterDataAttrs.__rest(_a, ["children", "colorScheme"]);
724
+ return (React__default["default"].createElement($054eb8030ebde76e$export$2881499e37b75b9a, { swipeDirection: "right", duration: 6000 },
725
+ React__default["default"].createElement($054eb8030ebde76e$export$d5c6c08dc2d3ca7, { asChild: true, className: "arc-Toast-viewport" },
726
+ React__default["default"].createElement("div", filterDataAttrs.__assign({ className: "arc-Toast-pathway--".concat(colorScheme) }, filterDataAttrs.filterDataAttrs(props)), children))));
727
+ };
728
+ Toast.Notification = ToastNotification;
729
+
730
+ exports.Toast = Toast;