@hanzogui/toast 7.0.0 → 7.3.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 (268) hide show
  1. package/dist/cjs/Toast.cjs +178 -0
  2. package/dist/cjs/Toast.native.js +181 -0
  3. package/dist/cjs/Toast.native.js.map +1 -0
  4. package/dist/cjs/ToastAnnounce.cjs +103 -0
  5. package/dist/cjs/ToastAnnounce.native.js +111 -0
  6. package/dist/cjs/ToastAnnounce.native.js.map +1 -0
  7. package/dist/cjs/ToastComposable.cjs +933 -0
  8. package/dist/cjs/ToastComposable.native.js +1025 -0
  9. package/dist/cjs/ToastComposable.native.js.map +1 -0
  10. package/dist/cjs/ToastImperative.cjs +119 -0
  11. package/dist/cjs/ToastImperative.native.js +130 -0
  12. package/dist/cjs/ToastImperative.native.js.map +1 -0
  13. package/dist/cjs/ToastImpl.cjs +354 -0
  14. package/dist/cjs/ToastImpl.native.js +364 -0
  15. package/dist/cjs/ToastImpl.native.js.map +1 -0
  16. package/dist/cjs/ToastItemFrame.cjs +143 -0
  17. package/dist/cjs/ToastItemFrame.native.js +148 -0
  18. package/dist/cjs/ToastItemFrame.native.js.map +1 -0
  19. package/dist/cjs/ToastPortal.cjs +49 -0
  20. package/dist/cjs/ToastPortal.native.js +52 -0
  21. package/dist/cjs/ToastPortal.native.js.map +1 -0
  22. package/dist/cjs/ToastProvider.cjs +150 -0
  23. package/dist/cjs/ToastProvider.native.js +161 -0
  24. package/dist/cjs/ToastProvider.native.js.map +1 -0
  25. package/dist/cjs/ToastState.cjs +311 -0
  26. package/dist/cjs/ToastState.native.js +324 -0
  27. package/dist/cjs/ToastState.native.js.map +1 -0
  28. package/dist/cjs/ToastViewport.cjs +319 -0
  29. package/dist/cjs/ToastViewport.native.js +343 -0
  30. package/dist/cjs/ToastViewport.native.js.map +1 -0
  31. package/dist/cjs/Toaster.cjs +87 -0
  32. package/dist/cjs/Toaster.native.js +91 -0
  33. package/dist/cjs/Toaster.native.js.map +1 -0
  34. package/dist/cjs/constants.cjs +30 -0
  35. package/dist/cjs/constants.native.js +33 -0
  36. package/dist/cjs/constants.native.js.map +1 -0
  37. package/dist/cjs/createNativeToast.cjs +59 -0
  38. package/dist/cjs/createNativeToast.native.js +60 -0
  39. package/dist/cjs/createNativeToast.native.js.map +1 -0
  40. package/dist/cjs/dispatchNativeToast.cjs +47 -0
  41. package/dist/cjs/dispatchNativeToast.native.js +52 -0
  42. package/dist/cjs/dispatchNativeToast.native.js.map +1 -0
  43. package/dist/cjs/index.cjs +20 -0
  44. package/dist/cjs/index.native.js +23 -0
  45. package/dist/cjs/index.native.js.map +1 -0
  46. package/dist/cjs/types.cjs +18 -0
  47. package/dist/cjs/types.native.js +21 -0
  48. package/dist/cjs/types.native.js.map +1 -0
  49. package/dist/cjs/useAnimatedDragGesture.cjs +214 -0
  50. package/dist/cjs/useAnimatedDragGesture.native.js +224 -0
  51. package/dist/cjs/useAnimatedDragGesture.native.js.map +1 -0
  52. package/dist/cjs/useReducedMotion.cjs +74 -0
  53. package/dist/cjs/useReducedMotion.native.js +83 -0
  54. package/dist/cjs/useReducedMotion.native.js.map +1 -0
  55. package/dist/cjs/useToastAnimations.cjs +294 -0
  56. package/dist/cjs/useToastAnimations.native.js +304 -0
  57. package/dist/cjs/useToastAnimations.native.js.map +1 -0
  58. package/dist/cjs/v2.cjs +36 -0
  59. package/dist/cjs/v2.native.js +39 -0
  60. package/dist/cjs/v2.native.js.map +1 -0
  61. package/dist/esm/Toast.mjs +137 -0
  62. package/dist/esm/Toast.mjs.map +1 -0
  63. package/dist/esm/Toast.native.js +137 -0
  64. package/dist/esm/Toast.native.js.map +1 -0
  65. package/dist/esm/ToastAnnounce.mjs +66 -0
  66. package/dist/esm/ToastAnnounce.mjs.map +1 -0
  67. package/dist/esm/ToastAnnounce.native.js +71 -0
  68. package/dist/esm/ToastAnnounce.native.js.map +1 -0
  69. package/dist/esm/ToastComposable.mjs +895 -0
  70. package/dist/esm/ToastComposable.mjs.map +1 -0
  71. package/dist/esm/ToastComposable.native.js +984 -0
  72. package/dist/esm/ToastComposable.native.js.map +1 -0
  73. package/dist/esm/ToastImperative.mjs +80 -0
  74. package/dist/esm/ToastImperative.mjs.map +1 -0
  75. package/dist/esm/ToastImperative.native.js +88 -0
  76. package/dist/esm/ToastImperative.native.js.map +1 -0
  77. package/dist/esm/ToastImpl.mjs +316 -0
  78. package/dist/esm/ToastImpl.mjs.map +1 -0
  79. package/dist/esm/ToastImpl.native.js +323 -0
  80. package/dist/esm/ToastImpl.native.js.map +1 -0
  81. package/dist/esm/ToastItemFrame.mjs +114 -0
  82. package/dist/esm/ToastItemFrame.mjs.map +1 -0
  83. package/dist/esm/ToastItemFrame.native.js +116 -0
  84. package/dist/esm/ToastItemFrame.native.js.map +1 -0
  85. package/dist/esm/ToastPortal.mjs +24 -0
  86. package/dist/esm/ToastPortal.mjs.map +1 -0
  87. package/dist/esm/ToastPortal.native.js +24 -0
  88. package/dist/esm/ToastPortal.native.js.map +1 -0
  89. package/dist/esm/ToastProvider.mjs +110 -0
  90. package/dist/esm/ToastProvider.mjs.map +1 -0
  91. package/dist/esm/ToastProvider.native.js +118 -0
  92. package/dist/esm/ToastProvider.native.js.map +1 -0
  93. package/dist/esm/ToastState.mjs +285 -0
  94. package/dist/esm/ToastState.mjs.map +1 -0
  95. package/dist/esm/ToastState.native.js +295 -0
  96. package/dist/esm/ToastState.native.js.map +1 -0
  97. package/dist/esm/ToastViewport.mjs +280 -0
  98. package/dist/esm/ToastViewport.mjs.map +1 -0
  99. package/dist/esm/ToastViewport.native.js +301 -0
  100. package/dist/esm/ToastViewport.native.js.map +1 -0
  101. package/dist/esm/Toaster.mjs +51 -0
  102. package/dist/esm/Toaster.mjs.map +1 -0
  103. package/dist/esm/Toaster.native.js +52 -0
  104. package/dist/esm/Toaster.native.js.map +1 -0
  105. package/dist/esm/constants.mjs +4 -0
  106. package/dist/esm/constants.mjs.map +1 -0
  107. package/dist/esm/constants.native.js +4 -0
  108. package/dist/esm/constants.native.js.map +1 -0
  109. package/dist/esm/createNativeToast.mjs +32 -0
  110. package/dist/esm/createNativeToast.mjs.map +1 -0
  111. package/dist/esm/createNativeToast.native.js +30 -0
  112. package/dist/esm/createNativeToast.native.js.map +1 -0
  113. package/dist/esm/dispatchNativeToast.mjs +22 -0
  114. package/dist/esm/dispatchNativeToast.mjs.map +1 -0
  115. package/dist/esm/dispatchNativeToast.native.js +24 -0
  116. package/dist/esm/dispatchNativeToast.native.js.map +1 -0
  117. package/dist/esm/index.js +2 -0
  118. package/dist/esm/index.js.map +1 -0
  119. package/dist/esm/index.mjs +2 -0
  120. package/dist/esm/index.mjs.map +1 -0
  121. package/dist/esm/index.native.js +2 -0
  122. package/dist/esm/index.native.js.map +1 -0
  123. package/dist/esm/types.mjs +2 -0
  124. package/dist/esm/types.mjs.map +1 -0
  125. package/dist/esm/types.native.js +2 -0
  126. package/dist/esm/types.native.js.map +1 -0
  127. package/dist/esm/useAnimatedDragGesture.mjs +178 -0
  128. package/dist/esm/useAnimatedDragGesture.mjs.map +1 -0
  129. package/dist/esm/useAnimatedDragGesture.native.js +185 -0
  130. package/dist/esm/useAnimatedDragGesture.native.js.map +1 -0
  131. package/dist/esm/useReducedMotion.mjs +38 -0
  132. package/dist/esm/useReducedMotion.mjs.map +1 -0
  133. package/dist/esm/useReducedMotion.native.js +44 -0
  134. package/dist/esm/useReducedMotion.native.js.map +1 -0
  135. package/dist/esm/useToastAnimations.mjs +258 -0
  136. package/dist/esm/useToastAnimations.mjs.map +1 -0
  137. package/dist/esm/useToastAnimations.native.js +265 -0
  138. package/dist/esm/useToastAnimations.native.js.map +1 -0
  139. package/dist/esm/v2.mjs +6 -0
  140. package/dist/esm/v2.mjs.map +1 -0
  141. package/dist/esm/v2.native.js +6 -0
  142. package/dist/esm/v2.native.js.map +1 -0
  143. package/dist/jsx/Toast.mjs +137 -0
  144. package/dist/jsx/Toast.mjs.map +1 -0
  145. package/dist/jsx/Toast.native.js +181 -0
  146. package/dist/jsx/Toast.native.js.map +1 -0
  147. package/dist/jsx/ToastAnnounce.mjs +66 -0
  148. package/dist/jsx/ToastAnnounce.mjs.map +1 -0
  149. package/dist/jsx/ToastAnnounce.native.js +111 -0
  150. package/dist/jsx/ToastAnnounce.native.js.map +1 -0
  151. package/dist/jsx/ToastComposable.mjs +895 -0
  152. package/dist/jsx/ToastComposable.mjs.map +1 -0
  153. package/dist/jsx/ToastComposable.native.js +1025 -0
  154. package/dist/jsx/ToastComposable.native.js.map +1 -0
  155. package/dist/jsx/ToastImperative.mjs +80 -0
  156. package/dist/jsx/ToastImperative.mjs.map +1 -0
  157. package/dist/jsx/ToastImperative.native.js +130 -0
  158. package/dist/jsx/ToastImperative.native.js.map +1 -0
  159. package/dist/jsx/ToastImpl.mjs +316 -0
  160. package/dist/jsx/ToastImpl.mjs.map +1 -0
  161. package/dist/jsx/ToastImpl.native.js +364 -0
  162. package/dist/jsx/ToastImpl.native.js.map +1 -0
  163. package/dist/jsx/ToastItemFrame.mjs +114 -0
  164. package/dist/jsx/ToastItemFrame.mjs.map +1 -0
  165. package/dist/jsx/ToastItemFrame.native.js +148 -0
  166. package/dist/jsx/ToastItemFrame.native.js.map +1 -0
  167. package/dist/jsx/ToastPortal.mjs +24 -0
  168. package/dist/jsx/ToastPortal.mjs.map +1 -0
  169. package/dist/jsx/ToastPortal.native.js +52 -0
  170. package/dist/jsx/ToastPortal.native.js.map +1 -0
  171. package/dist/jsx/ToastProvider.mjs +110 -0
  172. package/dist/jsx/ToastProvider.mjs.map +1 -0
  173. package/dist/jsx/ToastProvider.native.js +161 -0
  174. package/dist/jsx/ToastProvider.native.js.map +1 -0
  175. package/dist/jsx/ToastState.mjs +285 -0
  176. package/dist/jsx/ToastState.mjs.map +1 -0
  177. package/dist/jsx/ToastState.native.js +324 -0
  178. package/dist/jsx/ToastState.native.js.map +1 -0
  179. package/dist/jsx/ToastViewport.mjs +280 -0
  180. package/dist/jsx/ToastViewport.mjs.map +1 -0
  181. package/dist/jsx/ToastViewport.native.js +343 -0
  182. package/dist/jsx/ToastViewport.native.js.map +1 -0
  183. package/dist/jsx/Toaster.mjs +51 -0
  184. package/dist/jsx/Toaster.mjs.map +1 -0
  185. package/dist/jsx/Toaster.native.js +91 -0
  186. package/dist/jsx/Toaster.native.js.map +1 -0
  187. package/dist/jsx/constants.mjs +4 -0
  188. package/dist/jsx/constants.mjs.map +1 -0
  189. package/dist/jsx/constants.native.js +33 -0
  190. package/dist/jsx/constants.native.js.map +1 -0
  191. package/dist/jsx/createNativeToast.mjs +32 -0
  192. package/dist/jsx/createNativeToast.mjs.map +1 -0
  193. package/dist/jsx/createNativeToast.native.js +60 -0
  194. package/dist/jsx/createNativeToast.native.js.map +1 -0
  195. package/dist/jsx/dispatchNativeToast.mjs +22 -0
  196. package/dist/jsx/dispatchNativeToast.mjs.map +1 -0
  197. package/dist/jsx/dispatchNativeToast.native.js +52 -0
  198. package/dist/jsx/dispatchNativeToast.native.js.map +1 -0
  199. package/dist/jsx/index.js +2 -0
  200. package/dist/jsx/index.js.map +1 -0
  201. package/dist/jsx/index.mjs +2 -0
  202. package/dist/jsx/index.mjs.map +1 -0
  203. package/dist/jsx/index.native.js +23 -0
  204. package/dist/jsx/index.native.js.map +1 -0
  205. package/dist/jsx/types.mjs +2 -0
  206. package/dist/jsx/types.mjs.map +1 -0
  207. package/dist/jsx/types.native.js +21 -0
  208. package/dist/jsx/types.native.js.map +1 -0
  209. package/dist/jsx/useAnimatedDragGesture.mjs +178 -0
  210. package/dist/jsx/useAnimatedDragGesture.mjs.map +1 -0
  211. package/dist/jsx/useAnimatedDragGesture.native.js +224 -0
  212. package/dist/jsx/useAnimatedDragGesture.native.js.map +1 -0
  213. package/dist/jsx/useReducedMotion.mjs +38 -0
  214. package/dist/jsx/useReducedMotion.mjs.map +1 -0
  215. package/dist/jsx/useReducedMotion.native.js +83 -0
  216. package/dist/jsx/useReducedMotion.native.js.map +1 -0
  217. package/dist/jsx/useToastAnimations.mjs +258 -0
  218. package/dist/jsx/useToastAnimations.mjs.map +1 -0
  219. package/dist/jsx/useToastAnimations.native.js +304 -0
  220. package/dist/jsx/useToastAnimations.native.js.map +1 -0
  221. package/dist/jsx/v2.mjs +6 -0
  222. package/dist/jsx/v2.mjs.map +1 -0
  223. package/dist/jsx/v2.native.js +39 -0
  224. package/dist/jsx/v2.native.js.map +1 -0
  225. package/package.json +26 -24
  226. package/src/Toast.tsx +5 -5
  227. package/src/ToastAnnounce.tsx +2 -2
  228. package/src/ToastComposable.tsx +8 -8
  229. package/src/ToastImpl.tsx +6 -6
  230. package/src/ToastItemFrame.tsx +4 -4
  231. package/src/ToastProvider.tsx +5 -5
  232. package/src/ToastViewport.tsx +7 -7
  233. package/src/Toaster.tsx +2 -2
  234. package/src/useToastAnimations.ts +3 -3
  235. package/types/Toast.d.ts +14 -14
  236. package/types/Toast.d.ts.map +1 -0
  237. package/types/ToastAnnounce.d.ts +3 -3
  238. package/types/ToastAnnounce.d.ts.map +1 -0
  239. package/types/ToastComposable.d.ts +15 -15
  240. package/types/ToastComposable.d.ts.map +1 -0
  241. package/types/ToastImperative.d.ts +1 -1
  242. package/types/ToastImperative.d.ts.map +1 -0
  243. package/types/ToastImpl.d.ts +4 -4
  244. package/types/ToastImpl.d.ts.map +1 -0
  245. package/types/ToastItemFrame.d.ts +5 -5
  246. package/types/ToastItemFrame.d.ts.map +1 -0
  247. package/types/ToastPortal.d.ts +1 -1
  248. package/types/ToastPortal.d.ts.map +1 -0
  249. package/types/ToastProvider.d.ts +7 -7
  250. package/types/ToastProvider.d.ts.map +1 -0
  251. package/types/ToastState.d.ts.map +1 -0
  252. package/types/ToastViewport.d.ts +5 -5
  253. package/types/ToastViewport.d.ts.map +1 -0
  254. package/types/Toaster.d.ts +2 -2
  255. package/types/Toaster.d.ts.map +1 -0
  256. package/types/constants.d.ts.map +1 -0
  257. package/types/createNativeToast.d.ts.map +1 -0
  258. package/types/createNativeToast.native.d.ts.map +1 -0
  259. package/types/dispatchNativeToast.d.ts.map +1 -0
  260. package/types/index.d.ts.map +1 -0
  261. package/types/types.d.ts.map +1 -0
  262. package/types/useAnimatedDragGesture.d.ts.map +1 -0
  263. package/types/useAnimatedDragGesture.native.d.ts.map +1 -0
  264. package/types/useReducedMotion.d.ts.map +1 -0
  265. package/types/useToastAnimations.d.ts.map +1 -0
  266. package/types/v2.d.ts.map +1 -0
  267. package/v2/index.cjs +1 -1
  268. package/v2/index.native.cjs +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","ToastComposable_exports","Toast","useToastItem","useToasts","module","exports","import_jsx_runtime","require","import_animate_presence","import_constants","import_native","import_core","import_helpers","import_portal","import_stacks","import_text","React","import_ToastState","import_dispatchNativeToast","import_useAnimatedDragGesture","import_useToastAnimations","import_useReducedMotion","import_ToastItemFrame","_type_of","obj","Symbol","constructor","VISIBLE_TOASTS_AMOUNT","VIEWPORT_OFFSET","TOAST_GAP","TOAST_LIFETIME","FIXED_TOAST_HEIGHT","TIME_BEFORE_UNMOUNT","DEFAULT_HOTKEY","ToastContext","createStyledContext","useToastContext","useStyledContext","ToastItemContext","createContext","useToastItemContext","ctx","useContext","Error","resolveSwipeDirection","direction","position","yPosition","xPosition","split","isWeb","ToastRoot","forwardRef","ToastRoot2","props","_ref","children","duration","gap","visibleToasts","swipeDirection","swipeDirectionProp","swipeThreshold","toastHeight","closeButton","expand","theme","themeProp","reducedMotion","reducedMotionProp","native","burntOptions","notificationOptions","icons","useReducedMotion","toasts","setToasts","useState","heights","setHeights","localExpanded","setExpanded","expanded","interacting","setInteracting","heightsLockedRef","useRef","prevExpandedRef","useLayoutEffect","current","timer","setTimeout","clearTimeout","setToastHeight","useCallback","toastId","height","rounded","Math","round","prev","existing","abs","removeToastHeight","next","dismissCooldownRef","dismissCooldownTimerRef","triggerDismissCooldown","isInDismissCooldown","burntOptionsRef","notificationOptionsRef","useEffect","ToastState","subscribe","toast","dismiss","toasts2","map","t","id","delete","handled","dispatchNativeToast","idx","findIndex","slice","prevToastCountRef","length","prevCount","removeToast","toastToRemove","_toasts_find","find","filter","param","currentTheme","useThemeName","resolvedTheme","includes","contextValue","jsx","Provider","Theme","ToastViewportFrame","styled","View","variants","unstyled","false","zIndex","pointerEvents","maxWidth","width","minHeight","defaultVariants","process","env","GUI_HEADLESS","ToastViewport","styleable","ToastViewport2","ref","offset","hotkey","label","portalToRoot","portalZIndex","Number","MAX_SAFE_INTEGER","rest","listRef","hoverTimeoutRef","hoverCooldownRef","deferredCollapseRef","mouseInsideRef","insets","safeInsets","useConfiguration","offsetStyles","useMemo","styles","defaultOffset","offsetObj","top","right","bottom","left","_safeInsets_top","safeTop","_safeInsets_bottom","safeBottom","_offsetObj_top","topOffset","_offsetObj_bottom","bottomOffset","_offsetObj_left","_offsetObj_right","transform","_offsetObj_left1","_offsetObj_right1","handleKeyDown","event","isHotkeyPressed","every","code","_listRef_current","focus","document","addEventListener","removeEventListener","hotkeyLabel","join","replace","content","tabIndex","style","onMouseEnter","onMouseLeave","onPointerDown","onPointerUp","onPointerCancel","onPress","onFocus","currentTarget","contains","relatedTarget","onBlur","Portal","ToastList","renderItem","maxRender","AnimatePresence","index","handleClose","_toast_onDismiss","dismissible","onDismiss","itemContextValue","ToastItemInner","DefaultToastContent","_toast_type","toastType","type","title","description","jsxs","XStack","alignItems","ToastIcon","YStack","flex","ToastTitle","ToastDescription","action","cancel","marginTop","ToastActionFrame","backgroundColor","e","_toast_cancel_onClick","_toast_cancel","onClick","SizableText","size","color","hoverStyle","pressStyle","_toast_action_onClick","_toast_action","defaultPrevented","fontWeight","ToastClose","DragWrapper","animatedStyle","gestureHandlers","gesture","AnimatedView","dragRef","display","flexDirection","userSelect","WebkitUserSelect","touchAction","cursor","gh","getGestureHandler","GestureDetector","state","collapsable","ToastItemFrame","ToastItem","mounted","setMounted","removed","setRemoved","swipeOut","setSwipeOut","offsetBeforeRemove","setOffsetBeforeRemove","swipeExitYRef","closeTimerRef","closeTimerStartRef","lastPauseTimeRef","_toast_duration","remainingTimeRef","isFront","isVisible","_toast_duration1","isTop","expandedOffset","totalHeight","activeCount","i","_ctx_toasts_i","h2","expandedOffsetRef","isExpandedRef","startTimer","POSITIVE_INFINITY","Date","now","_toast_onAutoClose","onAutoClose","pauseTimer","useEvent","elapsed","max","resumeTimer","setDragOffset","springBack","animateOut","useToastAnimations","swipeAxis","isDragging","useAnimatedDragGesture","threshold","disabled","onDragStart","onDragMove","exitDirection","velocity","onCancel","handleLayout","nativeEvent","layout","frontToastHeight","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","done","h","err","return"],"sources":["../../src/ToastComposable.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,80 @@
1
+ import { isAndroid, isIos, isWeb } from "@hanzogui/core";
2
+ import React from "react";
3
+ import { createNativeToast } from "./createNativeToast.mjs";
4
+ import { jsx } from "react/jsx-runtime";
5
+ const ToastContext = React.createContext({});
6
+ const ToastCurrentContext = React.createContext(null);
7
+ const useToastController = () => {
8
+ return React.useContext(ToastContext);
9
+ };
10
+ const useToastState = () => {
11
+ return React.useContext(ToastCurrentContext);
12
+ };
13
+ const useToast = () => {
14
+ return {
15
+ ...useToastController(),
16
+ currentToast: useToastState()
17
+ };
18
+ };
19
+ const ToastImperativeProvider = ({
20
+ children,
21
+ options
22
+ }) => {
23
+ const counterRef = React.useRef(0);
24
+ const [toast, setToast] = React.useState(null);
25
+ const [lastNativeToastRef, setLastNativeToastRef] = React.useState(null);
26
+ const show = React.useCallback((title, showOptions) => {
27
+ const native = showOptions?.native ?? options.native;
28
+ const isWebNative = Array.isArray(native) ? native.includes("web") : native === "web";
29
+ const isMobileNative = Array.isArray(native) ? native.includes("mobile") : native === "mobile";
30
+ const isAndroidNative = isMobileNative || (Array.isArray(native) ? native.includes("android") : native === "android");
31
+ const isIosNative = isMobileNative || (Array.isArray(native) ? native.includes("ios") : native === "ios");
32
+ const isHandledNatively = native === true || isWeb && isWebNative || !isWeb && isMobileNative || isAndroid && isAndroidNative || isIos && isIosNative;
33
+ if (isHandledNatively) {
34
+ const nativeToastResult = createNativeToast(title, showOptions ?? {});
35
+ if (typeof nativeToastResult === "object" && nativeToastResult.nativeToastRef) {
36
+ setLastNativeToastRef(nativeToastResult.nativeToastRef);
37
+ }
38
+ }
39
+ counterRef.current++;
40
+ setToast({
41
+ ...showOptions?.customData,
42
+ ...showOptions,
43
+ viewportName: showOptions?.viewportName ?? "default",
44
+ title,
45
+ id: counterRef.current.toString(),
46
+ isHandledNatively
47
+ });
48
+ return true;
49
+ }, [setToast, JSON.stringify(options.native || null)]);
50
+ const hide = React.useCallback(() => {
51
+ lastNativeToastRef?.close();
52
+ setToast(prev => {
53
+ if (!prev) return null;
54
+ return {
55
+ ...prev,
56
+ hide: true
57
+ };
58
+ });
59
+ setTimeout(() => {
60
+ setToast(null);
61
+ }, 100);
62
+ }, [setToast, lastNativeToastRef]);
63
+ const contextValue = React.useMemo(() => {
64
+ return {
65
+ show,
66
+ hide,
67
+ nativeToast: lastNativeToastRef,
68
+ options
69
+ };
70
+ }, [show, hide, lastNativeToastRef, JSON.stringify(options || null)]);
71
+ return /* @__PURE__ */jsx(ToastContext.Provider, {
72
+ value: contextValue,
73
+ children: /* @__PURE__ */jsx(ToastCurrentContext.Provider, {
74
+ value: toast,
75
+ children
76
+ })
77
+ });
78
+ };
79
+ export { ToastImperativeProvider, useToast, useToastController, useToastState };
80
+ //# sourceMappingURL=ToastImperative.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isAndroid","isIos","isWeb","React","createNativeToast","jsx","ToastContext","createContext","ToastCurrentContext","useToastController","useContext","useToastState","useToast","currentToast","ToastImperativeProvider","children","options","counterRef","useRef","toast","setToast","useState","lastNativeToastRef","setLastNativeToastRef","show","useCallback","title","showOptions","native","isWebNative","Array","isArray","includes","isMobileNative","isAndroidNative","isIosNative","isHandledNatively","nativeToastResult","nativeToastRef","current","customData","viewportName","id","toString","JSON","stringify","hide","close","prev","setTimeout","contextValue","useMemo","nativeToast","Provider","value"],"sources":["../../src/ToastImperative.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var ToastImperative_exports = {};
37
+ __export(ToastImperative_exports, {
38
+ ToastImperativeProvider: () => ToastImperativeProvider,
39
+ useToast: () => useToast,
40
+ useToastController: () => useToastController,
41
+ useToastState: () => useToastState
42
+ });
43
+ module.exports = __toCommonJS(ToastImperative_exports);
44
+ var import_jsx_runtime = require("react/jsx-runtime");
45
+ var import_core = require("@hanzogui/core");
46
+ var import_react = __toESM(require("react"), 1);
47
+ var import_createNativeToast = require("./createNativeToast.native.js");
48
+ function _type_of(obj) {
49
+ "@swc/helpers - typeof";
50
+
51
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
52
+ }
53
+ var ToastContext = /* @__PURE__ */import_react.default.createContext({});
54
+ var ToastCurrentContext = /* @__PURE__ */import_react.default.createContext(null);
55
+ var useToastController = function () {
56
+ return import_react.default.useContext(ToastContext);
57
+ };
58
+ var useToastState = function () {
59
+ return import_react.default.useContext(ToastCurrentContext);
60
+ };
61
+ var useToast = function () {
62
+ return {
63
+ ...useToastController(),
64
+ currentToast: useToastState()
65
+ };
66
+ };
67
+ var ToastImperativeProvider = function (param) {
68
+ var {
69
+ children,
70
+ options
71
+ } = param;
72
+ var counterRef = import_react.default.useRef(0);
73
+ var [toast, setToast] = import_react.default.useState(null);
74
+ var [lastNativeToastRef, setLastNativeToastRef] = import_react.default.useState(null);
75
+ var show = import_react.default.useCallback(function (title, showOptions) {
76
+ var _showOptions_native;
77
+ var native = (_showOptions_native = showOptions === null || showOptions === void 0 ? void 0 : showOptions.native) !== null && _showOptions_native !== void 0 ? _showOptions_native : options.native;
78
+ var isWebNative = Array.isArray(native) ? native.includes("web") : native === "web";
79
+ var isMobileNative = Array.isArray(native) ? native.includes("mobile") : native === "mobile";
80
+ var isAndroidNative = isMobileNative || (Array.isArray(native) ? native.includes("android") : native === "android");
81
+ var isIosNative = isMobileNative || (Array.isArray(native) ? native.includes("ios") : native === "ios");
82
+ var isHandledNatively = native === true || import_core.isWeb && isWebNative || !import_core.isWeb && isMobileNative || import_core.isAndroid && isAndroidNative || import_core.isIos && isIosNative;
83
+ if (isHandledNatively) {
84
+ var nativeToastResult = (0, import_createNativeToast.createNativeToast)(title, showOptions !== null && showOptions !== void 0 ? showOptions : {});
85
+ if ((typeof nativeToastResult === "undefined" ? "undefined" : _type_of(nativeToastResult)) === "object" && nativeToastResult.nativeToastRef) {
86
+ setLastNativeToastRef(nativeToastResult.nativeToastRef);
87
+ }
88
+ }
89
+ counterRef.current++;
90
+ var _showOptions_viewportName;
91
+ setToast({
92
+ ...(showOptions === null || showOptions === void 0 ? void 0 : showOptions.customData),
93
+ ...showOptions,
94
+ viewportName: (_showOptions_viewportName = showOptions === null || showOptions === void 0 ? void 0 : showOptions.viewportName) !== null && _showOptions_viewportName !== void 0 ? _showOptions_viewportName : "default",
95
+ title,
96
+ id: counterRef.current.toString(),
97
+ isHandledNatively
98
+ });
99
+ return true;
100
+ }, [setToast, JSON.stringify(options.native || null)]);
101
+ var hide = import_react.default.useCallback(function () {
102
+ lastNativeToastRef === null || lastNativeToastRef === void 0 ? void 0 : lastNativeToastRef.close();
103
+ setToast(function (prev) {
104
+ if (!prev) return null;
105
+ return {
106
+ ...prev,
107
+ hide: true
108
+ };
109
+ });
110
+ setTimeout(function () {
111
+ setToast(null);
112
+ }, 100);
113
+ }, [setToast, lastNativeToastRef]);
114
+ var contextValue = import_react.default.useMemo(function () {
115
+ return {
116
+ show,
117
+ hide,
118
+ nativeToast: lastNativeToastRef,
119
+ options
120
+ };
121
+ }, [show, hide, lastNativeToastRef, JSON.stringify(options || null)]);
122
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToastContext.Provider, {
123
+ value: contextValue,
124
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToastCurrentContext.Provider, {
125
+ value: toast,
126
+ children
127
+ })
128
+ });
129
+ };
130
+ //# sourceMappingURL=ToastImperative.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","ToastImperative_exports","ToastImperativeProvider","useToast","useToastController","useToastState","module","exports","import_jsx_runtime","require","import_core","import_react","import_createNativeToast","_type_of","obj","Symbol","constructor","ToastContext","default","createContext","ToastCurrentContext","useContext","currentToast","param","children","options","counterRef","useRef","toast","setToast","useState","lastNativeToastRef","setLastNativeToastRef","show","useCallback","title","showOptions","_showOptions_native","native","isWebNative","Array","isArray","includes","isMobileNative","isAndroidNative","isIosNative","isHandledNatively","isWeb","isAndroid","isIos","nativeToastResult","createNativeToast","nativeToastRef"],"sources":["../../src/ToastImperative.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,316 @@
1
+ import { useIsPresent } from "@hanzogui/animate-presence";
2
+ import { useComposedRefs } from "@hanzogui/compose-refs";
3
+ import { isWeb } from "@hanzogui/constants";
4
+ import { View, Theme, createStyledContext, styled, useConfiguration, useEvent, useThemeName } from "@hanzogui/core";
5
+ import { Dismissable } from "@hanzogui/dismissable";
6
+ import { composeEventHandlers } from "@hanzogui/helpers";
7
+ import { PortalItem } from "@hanzogui/portal";
8
+ import { YStack } from "@hanzogui/stacks";
9
+ import * as React from "react";
10
+ import { TOAST_NAME } from "./constants.mjs";
11
+ import { ToastAnnounce } from "./ToastAnnounce.mjs";
12
+ import { Collection, useToastProviderContext } from "./ToastProvider.mjs";
13
+ import { VIEWPORT_PAUSE, VIEWPORT_RESUME } from "./ToastViewport.mjs";
14
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
15
+ const getPanResponder = () => {
16
+ return null;
17
+ };
18
+ const ToastImplFrame = styled(YStack, {
19
+ name: "ToastImpl",
20
+ tabIndex: 0,
21
+ variants: {
22
+ unstyled: {
23
+ false: {
24
+ focusStyle: {
25
+ outlineStyle: "solid",
26
+ outlineWidth: 2,
27
+ outlineColor: "$outlineColor"
28
+ },
29
+ backgroundColor: "$color6",
30
+ borderRadius: "$4",
31
+ paddingHorizontal: "$4",
32
+ paddingVertical: "$3",
33
+ marginHorizontal: "auto",
34
+ marginVertical: "$1",
35
+ elevation: "$3"
36
+ }
37
+ }
38
+ },
39
+ defaultVariants: {
40
+ unstyled: process.env.GUI_HEADLESS === "1"
41
+ }
42
+ });
43
+ const {
44
+ Provider: ToastInteractiveProvider,
45
+ useStyledContext: useToastInteractiveContext
46
+ } = createStyledContext({
47
+ onClose() {}
48
+ });
49
+ const ToastImpl = React.forwardRef((props, forwardedRef) => {
50
+ const {
51
+ scope,
52
+ type = "foreground",
53
+ duration: durationProp,
54
+ open,
55
+ onClose,
56
+ onEscapeKeyDown,
57
+ onPause,
58
+ onResume,
59
+ onSwipeStart,
60
+ onSwipeMove,
61
+ onSwipeCancel,
62
+ onSwipeEnd,
63
+ viewportName = "default",
64
+ ...toastProps
65
+ } = props;
66
+ const isPresent = useIsPresent();
67
+ const context = useToastProviderContext(scope);
68
+ const [node, setNode] = React.useState(null);
69
+ const composedRefs = useComposedRefs(forwardedRef, setNode);
70
+ const duration = durationProp || context.duration;
71
+ const closeTimerStartTimeRef = React.useRef(0);
72
+ const closeTimerRemainingTimeRef = React.useRef(duration);
73
+ const closeTimerRef = React.useRef(0);
74
+ const {
75
+ onToastAdd,
76
+ onToastRemove
77
+ } = context;
78
+ const viewport = React.useMemo(() => {
79
+ return context.viewports[viewportName];
80
+ }, [context.viewports, viewportName]);
81
+ const handleClose = useEvent(() => {
82
+ if (!isPresent) return;
83
+ if (isWeb) {
84
+ if (node?.contains(document.activeElement)) viewport?.focus();
85
+ }
86
+ onClose();
87
+ });
88
+ const startTimer = React.useCallback(duration2 => {
89
+ if (!duration2 || duration2 === Number.POSITIVE_INFINITY) return;
90
+ clearTimeout(closeTimerRef.current);
91
+ closeTimerStartTimeRef.current = (/* @__PURE__ */new Date()).getTime();
92
+ closeTimerRef.current = setTimeout(handleClose, duration2);
93
+ }, [handleClose]);
94
+ const handleResume = React.useCallback(() => {
95
+ startTimer(closeTimerRemainingTimeRef.current);
96
+ onResume?.();
97
+ }, [onResume, startTimer]);
98
+ const handlePause = React.useCallback(() => {
99
+ const elapsedTime = (/* @__PURE__ */new Date()).getTime() - closeTimerStartTimeRef.current;
100
+ closeTimerRemainingTimeRef.current = closeTimerRemainingTimeRef.current - elapsedTime;
101
+ window.clearTimeout(closeTimerRef.current);
102
+ onPause?.();
103
+ }, [onPause]);
104
+ React.useEffect(() => {
105
+ if (!isWeb) return;
106
+ if (viewport) {
107
+ viewport.addEventListener(VIEWPORT_PAUSE, handlePause);
108
+ viewport.addEventListener(VIEWPORT_RESUME, handleResume);
109
+ return () => {
110
+ viewport.removeEventListener(VIEWPORT_PAUSE, handlePause);
111
+ viewport.removeEventListener(VIEWPORT_RESUME, handleResume);
112
+ };
113
+ }
114
+ }, [viewport, duration, onPause, onResume, startTimer]);
115
+ React.useEffect(() => {
116
+ if (open && !context.isClosePausedRef.current) startTimer(duration);
117
+ }, [open, duration, context.isClosePausedRef, startTimer]);
118
+ React.useEffect(() => {
119
+ onToastAdd();
120
+ return () => onToastRemove();
121
+ }, [onToastAdd, onToastRemove]);
122
+ const announceTextContent = React.useMemo(() => {
123
+ if (!isWeb) return null;
124
+ return node ? getAnnounceTextContent(node) : null;
125
+ }, [node]);
126
+ const isHorizontalSwipe = ["left", "right", "horizontal"].includes(context.swipeDirection);
127
+ const {
128
+ animationDriver
129
+ } = useConfiguration();
130
+ if (!animationDriver) throw new Error("Must set animations in gui.config.ts");
131
+ const {
132
+ useAnimatedNumber,
133
+ useAnimatedNumberStyle
134
+ } = animationDriver;
135
+ const animatedNumber = useAnimatedNumber(0);
136
+ const AnimatedView = animationDriver["NumberView"] ?? animationDriver.View ?? View;
137
+ const animatedStyles = useAnimatedNumberStyle(animatedNumber, val => {
138
+ "worklet";
139
+
140
+ return {
141
+ transform: [isHorizontalSwipe ? {
142
+ translateX: val
143
+ } : {
144
+ translateY: val
145
+ }]
146
+ };
147
+ });
148
+ const panResponder = React.useMemo(() => {
149
+ const PanResponder = getPanResponder();
150
+ if (!PanResponder) return null;
151
+ return PanResponder.create({
152
+ onMoveShouldSetPanResponder: (e, gesture) => {
153
+ if (shouldGrantGestureMove(context.swipeDirection, gesture)) {
154
+ onSwipeStart?.(e);
155
+ return true;
156
+ }
157
+ return false;
158
+ },
159
+ onPanResponderGrant: e => {
160
+ if (!isWeb) handlePause?.();
161
+ },
162
+ onPanResponderMove: (e, gesture) => {
163
+ const {
164
+ x,
165
+ y
166
+ } = getGestureDistance(context.swipeDirection, gesture);
167
+ const delta = {
168
+ x,
169
+ y
170
+ };
171
+ animatedNumber.setValue(isHorizontalSwipe ? x : y, {
172
+ type: "direct"
173
+ });
174
+ if (isDeltaInDirection(delta, context.swipeDirection, context.swipeThreshold)) onSwipeEnd?.(e);
175
+ onSwipeMove?.(e);
176
+ },
177
+ onPanResponderEnd: (e, {
178
+ dx,
179
+ dy
180
+ }) => {
181
+ if (!isDeltaInDirection({
182
+ x: dx,
183
+ y: dy
184
+ }, context.swipeDirection, context.swipeThreshold)) {
185
+ if (!isWeb) handleResume?.();
186
+ onSwipeCancel?.(e);
187
+ animatedNumber.setValue(0, {
188
+ type: "spring"
189
+ });
190
+ }
191
+ }
192
+ });
193
+ }, [handlePause, handleResume]);
194
+ const themeName = useThemeName();
195
+ return /* @__PURE__ */jsxs(Fragment, {
196
+ children: [announceTextContent && /* @__PURE__ */jsx(ToastAnnounce, {
197
+ scope,
198
+ role: "status",
199
+ "aria-live": type === "foreground" ? "assertive" : "polite",
200
+ "aria-atomic": true,
201
+ children: announceTextContent
202
+ }), /* @__PURE__ */jsx(PortalItem, {
203
+ hostName: viewportName ?? "default",
204
+ children: /* @__PURE__ */jsx(ToastInteractiveProvider, {
205
+ scope,
206
+ onClose: () => {
207
+ handleClose();
208
+ },
209
+ children: /* @__PURE__ */jsx(Dismissable, {
210
+ onEscapeKeyDown: composeEventHandlers(onEscapeKeyDown, () => {
211
+ if (!context.isFocusedToastEscapeKeyDownRef.current) handleClose();
212
+ context.isFocusedToastEscapeKeyDownRef.current = false;
213
+ }),
214
+ children: /* @__PURE__ */jsx(Theme, {
215
+ contain: true,
216
+ forceClassName: true,
217
+ name: themeName,
218
+ children: /* @__PURE__ */jsx(AnimatedView, {
219
+ ...panResponder?.panHandlers,
220
+ style: [{
221
+ margin: "auto"
222
+ }, animatedStyles],
223
+ children: /* @__PURE__ */jsx(Collection.ItemSlot, {
224
+ scope: context.toastScope,
225
+ children: /* @__PURE__ */jsx(ToastImplFrame, {
226
+ role: "status",
227
+ "aria-live": "off",
228
+ "aria-atomic": true,
229
+ "data-state": open ? "open" : "closed",
230
+ "data-swipe-direction": context.swipeDirection,
231
+ pointerEvents: "auto",
232
+ "$platform-web": {
233
+ touchAction: "none",
234
+ userSelect: "none"
235
+ },
236
+ ...toastProps,
237
+ ref: composedRefs,
238
+ ...(isWeb && {
239
+ onKeyDown: composeEventHandlers(props.onKeyDown, event => {
240
+ if (event.key !== "Escape") return;
241
+ onEscapeKeyDown?.(event);
242
+ if (!event.defaultPrevented) {
243
+ context.isFocusedToastEscapeKeyDownRef.current = true;
244
+ handleClose();
245
+ }
246
+ })
247
+ })
248
+ })
249
+ })
250
+ })
251
+ })
252
+ })
253
+ }, props.id)
254
+ })]
255
+ });
256
+ });
257
+ ToastImpl.propTypes = {
258
+ type(props) {
259
+ if (props.type && !["foreground", "background"].includes(props.type)) {
260
+ const error = `Invalid prop \`type\` supplied to \`${TOAST_NAME}\`. Expected \`foreground | background\`.`;
261
+ return new Error(error);
262
+ }
263
+ return null;
264
+ }
265
+ };
266
+ const isDeltaInDirection = (delta, direction, threshold = 0) => {
267
+ const deltaX = Math.abs(delta.x);
268
+ const deltaY = Math.abs(delta.y);
269
+ const isDeltaX = deltaX > deltaY;
270
+ if (direction === "left" || direction === "right" || direction === "horizontal") return isDeltaX && deltaX > threshold;
271
+ return !isDeltaX && deltaY > threshold;
272
+ };
273
+ function getAnnounceTextContent(container) {
274
+ if (!isWeb) return "";
275
+ const textContent = [];
276
+ Array.from(container.childNodes).forEach(node => {
277
+ if (node.nodeType === node.TEXT_NODE && node.textContent) textContent.push(node.textContent);
278
+ if (isHTMLElement(node)) {
279
+ const isHidden = node.ariaHidden || node.hidden || node.style.display === "none";
280
+ const isExcluded = node.dataset.toastAnnounceExclude === "";
281
+ if (!isHidden) if (isExcluded) {
282
+ const altText = node.dataset.toastAnnounceAlt;
283
+ if (altText) textContent.push(altText);
284
+ } else textContent.push(...getAnnounceTextContent(node));
285
+ }
286
+ });
287
+ return textContent;
288
+ }
289
+ function isHTMLElement(node) {
290
+ return node.nodeType === node.ELEMENT_NODE;
291
+ }
292
+ const GESTURE_GRANT_THRESHOLD = 10;
293
+ const shouldGrantGestureMove = (dir, {
294
+ dx,
295
+ dy
296
+ }) => {
297
+ if ((dir === "horizontal" || dir === "left") && dx < -GESTURE_GRANT_THRESHOLD) return true;
298
+ if ((dir === "horizontal" || dir === "right") && dx > GESTURE_GRANT_THRESHOLD) return true;
299
+ if ((dir === "vertical" || dir === "up") && dy > -GESTURE_GRANT_THRESHOLD) return true;
300
+ if ((dir === "vertical" || dir === "down") && dy < GESTURE_GRANT_THRESHOLD) return true;
301
+ return false;
302
+ };
303
+ const getGestureDistance = (dir, {
304
+ dx,
305
+ dy
306
+ }) => {
307
+ let y = 0;
308
+ let x = 0;
309
+ if (dir === "horizontal") x = dx;else if (dir === "left") x = Math.min(0, dx);else if (dir === "right") x = Math.max(0, dx);else if (dir === "vertical") y = dy;else if (dir === "up") y = Math.min(0, dy);else if (dir === "down") y = Math.max(0, dy);
310
+ return {
311
+ x,
312
+ y
313
+ };
314
+ };
315
+ export { ToastImpl, ToastImplFrame, useToastInteractiveContext };
316
+ //# sourceMappingURL=ToastImpl.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useIsPresent","useComposedRefs","isWeb","View","Theme","createStyledContext","styled","useConfiguration","useEvent","useThemeName","Dismissable","composeEventHandlers","PortalItem","YStack","React","TOAST_NAME","ToastAnnounce","Collection","useToastProviderContext","VIEWPORT_PAUSE","VIEWPORT_RESUME","Fragment","jsx","jsxs","getPanResponder","ToastImplFrame","name","tabIndex","variants","unstyled","false","focusStyle","outlineStyle","outlineWidth","outlineColor","backgroundColor","borderRadius","paddingHorizontal","paddingVertical","marginHorizontal","marginVertical","elevation","defaultVariants","process","env","GUI_HEADLESS","Provider","ToastInteractiveProvider","useStyledContext","useToastInteractiveContext","onClose","ToastImpl","forwardRef","props","forwardedRef","scope","type","duration","durationProp","open","onEscapeKeyDown","onPause","onResume","onSwipeStart","onSwipeMove","onSwipeCancel","onSwipeEnd","viewportName","toastProps","isPresent","context","node","setNode","useState","composedRefs","closeTimerStartTimeRef","useRef","closeTimerRemainingTimeRef","closeTimerRef","onToastAdd","onToastRemove","viewport","useMemo","viewports","handleClose","contains","document","activeElement","focus","startTimer","useCallback","duration2","Number","POSITIVE_INFINITY","clearTimeout","current","Date","getTime","setTimeout","handleResume","handlePause","elapsedTime","window","useEffect","addEventListener","removeEventListener","isClosePausedRef","getAnnounceTextContent","isHorizontalSwipe","includes","swipeDirection","animationDriver","Error","useAnimatedNumber","useAnimatedNumberStyle","animatedNumber","AnimatedView","animatedStyles","val","transform","translateX","translateY","panResponder","PanResponder","create","onMoveShouldSetPanResponder","e","gesture","shouldGrantGestureMove","onPanResponderGrant","onPanResponderMove","x","y","getGestureDistance","delta","setValue","isDeltaInDirection","swipeThreshold","onPanResponderEnd","dx","dy","themeName","children","announceTextContent","role","hostName","isFocusedToastEscapeKeyDownRef","contain","forceClassName","panHandlers","style","margin","ItemSlot","toastScope","pointerEvents","touchAction","userSelect","ref","onKeyDown","event","key","defaultPrevented","id","propTypes","error","direction","threshold","deltaX","Math","abs","deltaY","isDeltaX","container","textContent","Array","from","childNodes","forEach","nodeType","TEXT_NODE","push","isHTMLElement","isHidden","ariaHidden","hidden","display","isExcluded","dataset","toastAnnounceExclude","altText","toastAnnounceAlt","ELEMENT_NODE","GESTURE_GRANT_THRESHOLD","dir","min","max"],"sources":["../../src/ToastImpl.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}