@arc-ui/components 11.15.0 → 11.17.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 (247) hide show
  1. package/dist/Breadcrumbs/Breadcrumbs.cjs.js +1 -1
  2. package/dist/Breadcrumbs/Breadcrumbs.esm.js +1 -1
  3. package/dist/Calendar/Calendar.cjs.js +21 -0
  4. package/dist/Calendar/Calendar.esm.js +13 -0
  5. package/dist/Calendar/package.json +7 -0
  6. package/dist/Checkbox/Checkbox.cjs.js +3 -2
  7. package/dist/Checkbox/Checkbox.esm.js +3 -2
  8. package/dist/DatePicker/DatePicker.cjs.js +565 -0
  9. package/dist/DatePicker/DatePicker.esm.js +552 -0
  10. package/dist/DatePicker/package.json +7 -0
  11. package/dist/FormControl/FormControl.cjs.js +2 -1
  12. package/dist/FormControl/FormControl.esm.js +2 -1
  13. package/dist/InformationCard/InformationCard.cjs.js +31 -48
  14. package/dist/InformationCard/InformationCard.esm.js +29 -46
  15. package/dist/MediaCard/MediaCard.cjs.js +56 -0
  16. package/dist/MediaCard/MediaCard.esm.js +48 -0
  17. package/dist/MediaCard/package.json +7 -0
  18. package/dist/Modal/Modal.cjs.js +16 -313
  19. package/dist/Modal/Modal.esm.js +6 -303
  20. package/dist/PaginationSimple/PaginationSimple.cjs.js +19 -16
  21. package/dist/PaginationSimple/PaginationSimple.esm.js +19 -16
  22. package/dist/RadioGroup/RadioGroup.cjs.js +3 -2
  23. package/dist/RadioGroup/RadioGroup.esm.js +3 -2
  24. package/dist/Select/Select.cjs.js +352 -909
  25. package/dist/Select/Select.esm.js +303 -841
  26. package/dist/SiteFooter/SiteFooter.cjs.js +2 -2
  27. package/dist/SiteFooter/SiteFooter.esm.js +3 -3
  28. package/dist/SiteHeader/SiteHeader.cjs.js +2 -2
  29. package/dist/SiteHeader/SiteHeader.esm.js +2 -2
  30. package/dist/SiteHeaderV2/SiteHeaderV2.cjs.js +23 -0
  31. package/dist/SiteHeaderV2/SiteHeaderV2.esm.js +15 -0
  32. package/dist/SiteHeaderV2/package.json +7 -0
  33. package/dist/Switch/Switch.cjs.js +338 -13
  34. package/dist/Switch/Switch.esm.js +331 -6
  35. package/dist/Tabs/Tabs.cjs.js +7 -4
  36. package/dist/Tabs/Tabs.esm.js +7 -4
  37. package/dist/TextArea/TextArea.cjs.js +23 -18
  38. package/dist/TextArea/TextArea.esm.js +23 -18
  39. package/dist/TextInput/TextInput.cjs.js +3 -2
  40. package/dist/TextInput/TextInput.esm.js +3 -2
  41. package/dist/Toast/Toast.cjs.js +6 -4
  42. package/dist/Toast/Toast.esm.js +6 -4
  43. package/dist/TypographyCard/TypographyCard.cjs.js +36 -0
  44. package/dist/TypographyCard/TypographyCard.esm.js +28 -0
  45. package/dist/TypographyCard/package.json +7 -0
  46. package/dist/_shared/cjs/{Breadcrumbs-ed70e75a.js → Breadcrumbs-ef659d2b.js} +5 -5
  47. package/dist/_shared/cjs/BtIconArrowRightFill.esm-435cf4bd.js +26 -0
  48. package/dist/_shared/cjs/Calendar-18e255f8.js +4106 -0
  49. package/dist/_shared/cjs/CardFooter-43c32239.js +80 -0
  50. package/dist/_shared/cjs/CardLabel-768abf20.js +54 -0
  51. package/dist/_shared/cjs/{Checkbox-b126194e.js → Checkbox-4d4b432f.js} +1 -1
  52. package/dist/_shared/cjs/{index-43458549.js → Combination-9974f2e2.js} +687 -143
  53. package/dist/_shared/cjs/{FormControl-7daf8110.js → FormControl-b26ad353.js} +13 -6
  54. package/dist/_shared/cjs/{RadioGroup-56e3b0e5.js → RadioGroup-23c964ae.js} +1 -1
  55. package/dist/_shared/cjs/{SiteFooter-97c27b29.js → SiteFooter-65b6360c.js} +2 -2
  56. package/dist/_shared/cjs/{SiteHeader.rehydrator-af3dddef.js → SiteHeader.rehydrator-df053a52.js} +8 -8
  57. package/dist/_shared/cjs/SiteHeaderV2-8ce6d4fc.js +610 -0
  58. package/dist/_shared/cjs/{Tabs-2d2a517d.js → Tabs-34db6bc1.js} +17 -37
  59. package/dist/_shared/cjs/TextInput-d0370fa8.js +100 -0
  60. package/dist/_shared/cjs/{Toast-69108261.js → Toast-392b1d60.js} +266 -26
  61. package/dist/_shared/cjs/{index-adbb63da.js → index-6eb396a3.js} +1 -1
  62. package/dist/_shared/cjs/index-74004a9c.js +23 -0
  63. package/dist/_shared/cjs/index-77ab5c6a.js +2180 -0
  64. package/dist/_shared/cjs/{index-b2fd6338.js → index-9f99d686.js} +1 -1
  65. package/dist/_shared/cjs/index-a31e64a9.js +27 -0
  66. package/dist/_shared/cjs/index-d38f1bd0.js +131 -0
  67. package/dist/_shared/cjs/index-dcfdd5da.js +11 -0
  68. package/dist/_shared/cjs/{index.module-dd1d7d0b.js → index-dd1d18ea.js} +26 -43
  69. package/dist/_shared/esm/{Breadcrumbs-87e2bd46.js → Breadcrumbs-36edfb3d.js} +5 -5
  70. package/dist/_shared/esm/BtIconArrowRightFill.esm-99019d1a.js +20 -0
  71. package/dist/_shared/esm/Calendar-4033fa48.js +4093 -0
  72. package/dist/_shared/esm/CardFooter-dd8d4000.js +74 -0
  73. package/dist/_shared/esm/CardLabel-d6d71407.js +46 -0
  74. package/dist/_shared/esm/{Checkbox-d6ec5024.js → Checkbox-720b074d.js} +1 -1
  75. package/dist/_shared/esm/{index-41d7af2b.js → Combination-e9f7e64e.js} +670 -133
  76. package/dist/_shared/esm/{FormControl-351e5f1b.js → FormControl-f0b8fe91.js} +13 -6
  77. package/dist/_shared/esm/{RadioGroup-c838764c.js → RadioGroup-37fdb06b.js} +1 -1
  78. package/dist/_shared/esm/{SiteFooter-94316b8b.js → SiteFooter-38ee1536.js} +1 -1
  79. package/dist/_shared/esm/{SiteHeader.rehydrator-1b507253.js → SiteHeader.rehydrator-32bdcd88.js} +2 -2
  80. package/dist/_shared/esm/SiteHeaderV2-f8377627.js +604 -0
  81. package/dist/_shared/esm/{Tabs-f903187a.js → Tabs-df9965dd.js} +7 -27
  82. package/dist/_shared/esm/TextInput-abbab56b.js +94 -0
  83. package/dist/_shared/esm/{Toast-37549e68.js → Toast-5d66e13f.js} +258 -19
  84. package/dist/_shared/esm/{index-a1d2d9b3.js → index-044da8d0.js} +1 -1
  85. package/dist/_shared/esm/index-25a5b393.js +25 -0
  86. package/dist/_shared/esm/index-2cfab9f2.js +21 -0
  87. package/dist/_shared/esm/{index.module-44714d3f.js → index-7b531fa7.js} +28 -44
  88. package/dist/_shared/esm/index-a624de47.js +9 -0
  89. package/dist/_shared/esm/index-b84a20c6.js +2155 -0
  90. package/dist/_shared/esm/index-ca72c9d5.js +129 -0
  91. package/dist/_shared/esm/{index-efd9ef1c.js → index-efa9be1a.js} +1 -1
  92. package/dist/_shared/esm/{index.es-c552c0ea.js → use-media-query-4c807227.js} +9 -9
  93. package/dist/index.es.js +4072 -1533
  94. package/dist/index.es.js.map +1 -1
  95. package/dist/index.js +4074 -1533
  96. package/dist/index.js.map +1 -1
  97. package/dist/styles.css +5 -5
  98. package/dist/types/components/Calendar/Calendar.d.ts +49 -0
  99. package/dist/types/components/Calendar/Calendar.provider.d.ts +21 -0
  100. package/dist/types/components/Calendar/components/CalendarDateSelect/CalendarDateSelect.d.ts +15 -0
  101. package/dist/types/components/Calendar/components/CalendarDateSelect/index.d.ts +1 -0
  102. package/dist/types/components/Calendar/components/CalendarDayGrid/CalendarDayGrid.d.ts +6 -0
  103. package/dist/types/components/Calendar/components/CalendarDayGrid/index.d.ts +1 -0
  104. package/dist/types/components/Calendar/components/CalendarDayNumber/CalendarDayNumber.d.ts +8 -0
  105. package/dist/types/components/Calendar/components/CalendarDayNumber/index.d.ts +1 -0
  106. package/dist/types/components/Calendar/components/CalendarDoubleMonthView/CalendarDoubleMonthView.d.ts +9 -0
  107. package/dist/types/components/Calendar/components/CalendarDoubleMonthView/index.d.ts +1 -0
  108. package/dist/types/components/Calendar/components/CalendarFooter/CalendarFooter.d.ts +6 -0
  109. package/dist/types/components/Calendar/components/CalendarFooter/index.d.ts +1 -0
  110. package/dist/types/components/Calendar/components/CalendarMonthView/CalendarMonthView.d.ts +9 -0
  111. package/dist/types/components/Calendar/components/CalendarMonthView/index.d.ts +1 -0
  112. package/dist/types/components/Calendar/components/CalendarMonthYearView/CalendarMonthYearView.d.ts +11 -0
  113. package/dist/types/components/Calendar/components/CalendarMonthYearView/index.d.ts +1 -0
  114. package/dist/types/components/Calendar/components/CalendarNavButton/CalendarNavButton.d.ts +10 -0
  115. package/dist/types/components/Calendar/components/CalendarNavButton/index.d.ts +1 -0
  116. package/dist/types/components/Calendar/components/CalendarWrapper/CalendarWrapper.d.ts +5 -0
  117. package/dist/types/components/Calendar/components/CalendarWrapper/index.d.ts +1 -0
  118. package/dist/types/components/Calendar/components/index.d.ts +6 -0
  119. package/dist/types/components/Calendar/constants/day-names.d.ts +5 -0
  120. package/dist/types/components/Calendar/constants/index.d.ts +1 -0
  121. package/dist/types/components/Calendar/helpers/contains-date.d.ts +1 -0
  122. package/dist/types/components/Calendar/helpers/contains-date.test.d.ts +1 -0
  123. package/dist/types/components/Calendar/helpers/date-without-time.d.ts +1 -0
  124. package/dist/types/components/Calendar/helpers/date-without-time.test.d.ts +1 -0
  125. package/dist/types/components/Calendar/helpers/get-calendar-type.d.ts +2 -0
  126. package/dist/types/components/Calendar/helpers/get-calendar-type.test.d.ts +1 -0
  127. package/dist/types/components/Calendar/helpers/get-dates-in-month.d.ts +1 -0
  128. package/dist/types/components/Calendar/helpers/get-dates-in-month.test.d.ts +1 -0
  129. package/dist/types/components/Calendar/helpers/get-double-month-display-range.d.ts +1 -0
  130. package/dist/types/components/Calendar/helpers/get-double-month-display-range.test.d.ts +1 -0
  131. package/dist/types/components/Calendar/helpers/get-focus-date.d.ts +5 -0
  132. package/dist/types/components/Calendar/helpers/get-focus-date.test.d.ts +1 -0
  133. package/dist/types/components/Calendar/helpers/get-highlighted-range.d.ts +6 -0
  134. package/dist/types/components/Calendar/helpers/get-highlighted-range.test.d.ts +1 -0
  135. package/dist/types/components/Calendar/helpers/get-keydown-date.d.ts +6 -0
  136. package/dist/types/components/Calendar/helpers/get-keydown-date.test.d.ts +1 -0
  137. package/dist/types/components/Calendar/helpers/index.d.ts +13 -0
  138. package/dist/types/components/Calendar/helpers/is-day.d.ts +2 -0
  139. package/dist/types/components/Calendar/helpers/is-day.test.d.ts +1 -0
  140. package/dist/types/components/Calendar/helpers/is-disabled-date.d.ts +1 -0
  141. package/dist/types/components/Calendar/helpers/is-disabled-date.test.d.ts +1 -0
  142. package/dist/types/components/Calendar/helpers/is-month-after-max-date.d.ts +1 -0
  143. package/dist/types/components/Calendar/helpers/is-month-after-max-date.test.d.ts +1 -0
  144. package/dist/types/components/Calendar/helpers/is-month-before-min-date.d.ts +1 -0
  145. package/dist/types/components/Calendar/helpers/is-month-before-min-date.test.d.ts +1 -0
  146. package/dist/types/components/Calendar/helpers/process-selected-range.d.ts +9 -0
  147. package/dist/types/components/Calendar/helpers/process-selected-range.test.d.ts +1 -0
  148. package/dist/types/components/Calendar/index.d.ts +2 -0
  149. package/dist/types/components/Calendar/state/handlers/calendar-keydown-handler.d.ts +3 -0
  150. package/dist/types/components/Calendar/state/handlers/day-grid-leave-handler.d.ts +3 -0
  151. package/dist/types/components/Calendar/state/handlers/day-number-select-handler.d.ts +3 -0
  152. package/dist/types/components/Calendar/state/handlers/default-handler.d.ts +2 -0
  153. package/dist/types/components/Calendar/state/handlers/dropdown-change-month-handler.d.ts +3 -0
  154. package/dist/types/components/Calendar/state/handlers/dropdown-change-year-handler.d.ts +3 -0
  155. package/dist/types/components/Calendar/state/handlers/highlight-range-handler.d.ts +3 -0
  156. package/dist/types/components/Calendar/state/handlers/index.d.ts +12 -0
  157. package/dist/types/components/Calendar/state/handlers/range-select-handler.d.ts +3 -0
  158. package/dist/types/components/Calendar/state/handlers/show-next-double-month-handler.d.ts +3 -0
  159. package/dist/types/components/Calendar/state/handlers/show-next-month-handler.d.ts +3 -0
  160. package/dist/types/components/Calendar/state/handlers/show-previous-double-month-handler.d.ts +3 -0
  161. package/dist/types/components/Calendar/state/handlers/show-previous-month-handler.d.ts +3 -0
  162. package/dist/types/components/Calendar/state/index.d.ts +2 -0
  163. package/dist/types/components/Calendar/state/reducer.d.ts +3 -0
  164. package/dist/types/components/Calendar/state/reducer.test.d.ts +1 -0
  165. package/dist/types/components/Calendar/state/types/actions.d.ts +81 -0
  166. package/dist/types/components/Calendar/state/types/state-handler.d.ts +3 -0
  167. package/dist/types/components/Calendar/state/types/state.d.ts +5 -0
  168. package/dist/types/components/Calendar/types/calendar-type.d.ts +1 -0
  169. package/dist/types/components/Calendar/types/date-select-value.d.ts +2 -0
  170. package/dist/types/components/Calendar/types/index.d.ts +6 -0
  171. package/dist/types/components/Calendar/types/key-names.d.ts +13 -0
  172. package/dist/types/components/Calendar/types/range-selection.d.ts +10 -0
  173. package/dist/types/components/Calendar/types/selection-type.d.ts +1 -0
  174. package/dist/types/components/Calendar/types/week-days.d.ts +18 -0
  175. package/dist/types/components/DatePicker/DatePicker.d.ts +17 -0
  176. package/dist/types/components/DatePicker/constants/date-format.d.ts +1 -0
  177. package/dist/types/components/DatePicker/constants/index.d.ts +1 -0
  178. package/dist/types/components/DatePicker/helpers/convert-date-string-to-date.d.ts +1 -0
  179. package/dist/types/components/DatePicker/helpers/convert-date-string-to-date.test.d.ts +1 -0
  180. package/dist/types/components/DatePicker/helpers/convert-range-string-to-dates.d.ts +1 -0
  181. package/dist/types/components/DatePicker/helpers/convert-range-string-to-dates.test.d.ts +1 -0
  182. package/dist/types/components/DatePicker/helpers/format-date.d.ts +1 -0
  183. package/dist/types/components/DatePicker/helpers/format-date.test.d.ts +1 -0
  184. package/dist/types/components/DatePicker/helpers/index.d.ts +8 -0
  185. package/dist/types/components/DatePicker/helpers/is-date-valid.d.ts +1 -0
  186. package/dist/types/components/DatePicker/helpers/is-date-valid.test.d.ts +1 -0
  187. package/dist/types/components/DatePicker/helpers/is-disabled-date.d.ts +1 -0
  188. package/dist/types/components/DatePicker/helpers/is-disabled-date.test.d.ts +1 -0
  189. package/dist/types/components/DatePicker/helpers/is-range-valid.d.ts +1 -0
  190. package/dist/types/components/DatePicker/helpers/is-range-valid.test.d.ts +1 -0
  191. package/dist/types/components/DatePicker/helpers/parse-date-string.d.ts +5 -0
  192. package/dist/types/components/DatePicker/helpers/parse-date-string.test.d.ts +1 -0
  193. package/dist/types/components/DatePicker/helpers/parse-range-string.d.ts +14 -0
  194. package/dist/types/components/DatePicker/helpers/parse-range-string.test.d.ts +1 -0
  195. package/dist/types/components/DatePicker/index.d.ts +6 -0
  196. package/dist/types/components/FormControl/FormControl.d.ts +4 -0
  197. package/dist/types/components/MediaCard/MediaCard.d.ts +24 -30
  198. package/dist/types/components/RadioGroup/RadioGroup.d.ts +1 -1
  199. package/dist/types/components/Select/Select.d.ts +49 -0
  200. package/dist/types/components/SiteHeaderV2/SiteHeaderV2.d.ts +77 -0
  201. package/dist/types/components/SiteHeaderV2/components/BackButton/BackButton.d.ts +5 -0
  202. package/dist/types/components/SiteHeaderV2/components/BackButton/index.d.ts +1 -0
  203. package/dist/types/components/SiteHeaderV2/components/Column/Column.d.ts +8 -0
  204. package/dist/types/components/SiteHeaderV2/components/Column/index.d.ts +1 -0
  205. package/dist/types/components/SiteHeaderV2/components/HorizontalPanel/HorizontalPanel.d.ts +13 -0
  206. package/dist/types/components/SiteHeaderV2/components/HorizontalPanel/index.d.ts +1 -0
  207. package/dist/types/components/SiteHeaderV2/components/Item/Item.d.ts +20 -0
  208. package/dist/types/components/SiteHeaderV2/components/Item/index.d.ts +1 -0
  209. package/dist/types/components/SiteHeaderV2/components/ItemGroup/ItemGroup.d.ts +27 -0
  210. package/dist/types/components/SiteHeaderV2/components/ItemGroup/index.d.ts +1 -0
  211. package/dist/types/components/SiteHeaderV2/components/MenuButton/MenuButton.d.ts +6 -0
  212. package/dist/types/components/SiteHeaderV2/components/MenuButton/index.d.ts +1 -0
  213. package/dist/types/components/SiteHeaderV2/components/NavItem/NavItem.d.ts +40 -0
  214. package/dist/types/components/SiteHeaderV2/components/NavItem/NavItemWithSubNav.d.ts +55 -0
  215. package/dist/types/components/SiteHeaderV2/components/NavItem/index.d.ts +2 -0
  216. package/dist/types/components/SiteHeaderV2/components/NodeItem/NodeItem.d.ts +8 -0
  217. package/dist/types/components/SiteHeaderV2/components/Panel/Panel.d.ts +26 -0
  218. package/dist/types/components/SiteHeaderV2/components/Panel/index.d.ts +1 -0
  219. package/dist/types/components/SiteHeaderV2/components/SubNavItem/SubNavItem.d.ts +45 -0
  220. package/dist/types/components/SiteHeaderV2/components/SubNavItem/index.d.ts +1 -0
  221. package/dist/types/components/SiteHeaderV2/components/VerticalDivider/VerticalDivider.d.ts +1 -0
  222. package/dist/types/components/SiteHeaderV2/components/VerticalDivider/index.d.ts +1 -0
  223. package/dist/types/components/SiteHeaderV2/index.d.ts +1 -0
  224. package/dist/types/components/TextArea/TextArea.d.ts +4 -0
  225. package/dist/types/components/TextInput/TextInput.d.ts +34 -4
  226. package/dist/types/components/TypographyCard/TypographyCard.d.ts +48 -0
  227. package/dist/types/components/TypographyCard/index.d.ts +1 -0
  228. package/dist/types/components/index.d.ts +2 -0
  229. package/dist/types/private-components/CardFooter/CardFooter.d.ts +11 -0
  230. package/dist/types/private-components/CardFooter/index.d.ts +1 -0
  231. package/dist/types/private-components/CardHeading/CardHeading.d.ts +19 -0
  232. package/dist/types/private-components/CardHeading/index.d.ts +1 -0
  233. package/dist/types/private-components/CardLabel/CardLabel.d.ts +10 -0
  234. package/dist/types/private-components/CardLabel/index.d.ts +1 -0
  235. package/dist/types/private-components/ConditionalWrapper/ConditionalWrapper.d.ts +6 -0
  236. package/dist/types/private-components/ConditionalWrapper/index.d.ts +1 -0
  237. package/dist/types/private-components/index.d.ts +4 -0
  238. package/dist/types/styles.d.ts +8 -1
  239. package/package.json +5 -3
  240. package/dist/_shared/cjs/TextInput-bf1fe052.js +0 -81
  241. package/dist/_shared/cjs/index-6b2a9ac3.js +0 -289
  242. package/dist/_shared/cjs/index-c575a255.js +0 -490
  243. package/dist/_shared/esm/TextInput-991804b6.js +0 -75
  244. package/dist/_shared/esm/index-13d575cc.js +0 -479
  245. package/dist/_shared/esm/index-3797d77e.js +0 -280
  246. package/dist/types/components/MediaCard/MediaCard.stories-wip.d.ts +0 -15
  247. package/dist/_shared/cjs/{index.es-26dd8c5d.js → use-media-query-e61881d8.js} +8 -8
@@ -0,0 +1,129 @@
1
+ import { Children, cloneElement, useState, useRef, useEffect, useCallback, useReducer } from 'react';
2
+ import { flushSync } from 'react-dom';
3
+ import { b as $6ed0406888f73fc4$export$c7b2cbe3552a0d05, h as $9f79659886946c16$export$e5c5a5f917a5871c } from './index-7b531fa7.js';
4
+
5
+ function $fe963b355347cc68$export$3e6543de14f8614f(initialState, machine) {
6
+ return useReducer((state, event)=>{
7
+ const nextState = machine[state][event];
8
+ return nextState !== null && nextState !== void 0 ? nextState : state;
9
+ }, initialState);
10
+ }
11
+
12
+
13
+ const $921a889cee6df7e8$export$99c2b779aa4e8b8b = (props)=>{
14
+ const { present: present , children: children } = props;
15
+ const presence = $921a889cee6df7e8$var$usePresence(present);
16
+ const child = typeof children === 'function' ? children({
17
+ present: presence.isPresent
18
+ }) : Children.only(children);
19
+ const ref = $6ed0406888f73fc4$export$c7b2cbe3552a0d05(presence.ref, child.ref);
20
+ const forceMount = typeof children === 'function';
21
+ return forceMount || presence.isPresent ? /*#__PURE__*/ cloneElement(child, {
22
+ ref: ref
23
+ }) : null;
24
+ };
25
+ $921a889cee6df7e8$export$99c2b779aa4e8b8b.displayName = 'Presence';
26
+ /* -------------------------------------------------------------------------------------------------
27
+ * usePresence
28
+ * -----------------------------------------------------------------------------------------------*/ function $921a889cee6df7e8$var$usePresence(present) {
29
+ const [node1, setNode] = useState();
30
+ const stylesRef = useRef({});
31
+ const prevPresentRef = useRef(present);
32
+ const prevAnimationNameRef = useRef('none');
33
+ const initialState = present ? 'mounted' : 'unmounted';
34
+ const [state, send] = $fe963b355347cc68$export$3e6543de14f8614f(initialState, {
35
+ mounted: {
36
+ UNMOUNT: 'unmounted',
37
+ ANIMATION_OUT: 'unmountSuspended'
38
+ },
39
+ unmountSuspended: {
40
+ MOUNT: 'mounted',
41
+ ANIMATION_END: 'unmounted'
42
+ },
43
+ unmounted: {
44
+ MOUNT: 'mounted'
45
+ }
46
+ });
47
+ useEffect(()=>{
48
+ const currentAnimationName = $921a889cee6df7e8$var$getAnimationName(stylesRef.current);
49
+ prevAnimationNameRef.current = state === 'mounted' ? currentAnimationName : 'none';
50
+ }, [
51
+ state
52
+ ]);
53
+ $9f79659886946c16$export$e5c5a5f917a5871c(()=>{
54
+ const styles = stylesRef.current;
55
+ const wasPresent = prevPresentRef.current;
56
+ const hasPresentChanged = wasPresent !== present;
57
+ if (hasPresentChanged) {
58
+ const prevAnimationName = prevAnimationNameRef.current;
59
+ const currentAnimationName = $921a889cee6df7e8$var$getAnimationName(styles);
60
+ if (present) send('MOUNT');
61
+ else if (currentAnimationName === 'none' || (styles === null || styles === void 0 ? void 0 : styles.display) === 'none') // If there is no exit animation or the element is hidden, animations won't run
62
+ // so we unmount instantly
63
+ send('UNMOUNT');
64
+ else {
65
+ /**
66
+ * When `present` changes to `false`, we check changes to animation-name to
67
+ * determine whether an animation has started. We chose this approach (reading
68
+ * computed styles) because there is no `animationrun` event and `animationstart`
69
+ * fires after `animation-delay` has expired which would be too late.
70
+ */ const isAnimating = prevAnimationName !== currentAnimationName;
71
+ if (wasPresent && isAnimating) send('ANIMATION_OUT');
72
+ else send('UNMOUNT');
73
+ }
74
+ prevPresentRef.current = present;
75
+ }
76
+ }, [
77
+ present,
78
+ send
79
+ ]);
80
+ $9f79659886946c16$export$e5c5a5f917a5871c(()=>{
81
+ if (node1) {
82
+ /**
83
+ * Triggering an ANIMATION_OUT during an ANIMATION_IN will fire an `animationcancel`
84
+ * event for ANIMATION_IN after we have entered `unmountSuspended` state. So, we
85
+ * make sure we only trigger ANIMATION_END for the currently active animation.
86
+ */ const handleAnimationEnd = (event)=>{
87
+ const currentAnimationName = $921a889cee6df7e8$var$getAnimationName(stylesRef.current);
88
+ const isCurrentAnimation = currentAnimationName.includes(event.animationName);
89
+ if (event.target === node1 && isCurrentAnimation) // With React 18 concurrency this update is applied
90
+ // a frame after the animation ends, creating a flash of visible content.
91
+ // By manually flushing we ensure they sync within a frame, removing the flash.
92
+ flushSync(()=>send('ANIMATION_END')
93
+ );
94
+ };
95
+ const handleAnimationStart = (event)=>{
96
+ if (event.target === node1) // if animation occurred, store its name as the previous animation.
97
+ prevAnimationNameRef.current = $921a889cee6df7e8$var$getAnimationName(stylesRef.current);
98
+ };
99
+ node1.addEventListener('animationstart', handleAnimationStart);
100
+ node1.addEventListener('animationcancel', handleAnimationEnd);
101
+ node1.addEventListener('animationend', handleAnimationEnd);
102
+ return ()=>{
103
+ node1.removeEventListener('animationstart', handleAnimationStart);
104
+ node1.removeEventListener('animationcancel', handleAnimationEnd);
105
+ node1.removeEventListener('animationend', handleAnimationEnd);
106
+ };
107
+ } else // Transition to the unmounted state if the node is removed prematurely.
108
+ // We avoid doing so during cleanup as the node may change but still exist.
109
+ send('ANIMATION_END');
110
+ }, [
111
+ node1,
112
+ send
113
+ ]);
114
+ return {
115
+ isPresent: [
116
+ 'mounted',
117
+ 'unmountSuspended'
118
+ ].includes(state),
119
+ ref: useCallback((node)=>{
120
+ if (node) stylesRef.current = getComputedStyle(node);
121
+ setNode(node);
122
+ }, [])
123
+ };
124
+ }
125
+ /* -----------------------------------------------------------------------------------------------*/ function $921a889cee6df7e8$var$getAnimationName(styles) {
126
+ return (styles === null || styles === void 0 ? void 0 : styles.animationName) || 'none';
127
+ }
128
+
129
+ export { $921a889cee6df7e8$export$99c2b779aa4e8b8b as $ };
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { h as $9f79659886946c16$export$e5c5a5f917a5871c } from './index-13d575cc.js';
2
+ import { h as $9f79659886946c16$export$e5c5a5f917a5871c } from './index-7b531fa7.js';
3
3
 
4
4
  const $1746a345f3d73bb7$var$useReactId = React['useId'.toString()] || (()=>undefined
5
5
  );
@@ -1,5 +1,13 @@
1
1
  import { useState, useEffect } from 'react';
2
2
 
3
+ /**
4
+ * Do not edit directly
5
+ * Generated file
6
+ */
7
+ var ArcBreakpointS = 636;
8
+ var ArcBreakpointM = 768;
9
+ var ArcBreakpointL = 1024;
10
+
3
11
  /**
4
12
  * @typedef MediaQueryOutputs
5
13
  * @param {boolean} matches - does the document match the media query?
@@ -36,12 +44,4 @@ var useMediaQuery = function (mediaQuery) {
36
44
  return matches;
37
45
  };
38
46
 
39
- /**
40
- * Do not edit directly
41
- * Generated file
42
- */
43
- var ArcBreakpointS = 636;
44
- var ArcBreakpointM = 768;
45
- var ArcBreakpointL = 1024;
46
-
47
- export { ArcBreakpointS as A, ArcBreakpointM as a, ArcBreakpointL as b, useMediaQuery as u };
47
+ export { ArcBreakpointM as A, ArcBreakpointS as a, ArcBreakpointL as b, useMediaQuery as u };