@cdx-ui/components 0.0.1-beta.79 → 0.0.1-beta.80

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 (214) hide show
  1. package/lib/commonjs/animation/hooks/index.js +17 -0
  2. package/lib/commonjs/animation/hooks/index.js.map +1 -0
  3. package/lib/commonjs/animation/hooks/useCombinedAnimationDisabledState.js +50 -0
  4. package/lib/commonjs/animation/hooks/useCombinedAnimationDisabledState.js.map +1 -0
  5. package/lib/commonjs/animation/index.js +39 -0
  6. package/lib/commonjs/animation/index.js.map +1 -0
  7. package/lib/commonjs/animation/types.js +6 -0
  8. package/lib/commonjs/animation/types.js.map +1 -0
  9. package/lib/commonjs/animation/utils.js +223 -0
  10. package/lib/commonjs/animation/utils.js.map +1 -0
  11. package/lib/commonjs/components/CLAUDE.md +1 -1
  12. package/lib/commonjs/components/Card/index.js +45 -17
  13. package/lib/commonjs/components/Card/index.js.map +1 -1
  14. package/lib/commonjs/components/Toast/animation.js +329 -0
  15. package/lib/commonjs/components/Toast/animation.js.map +1 -0
  16. package/lib/commonjs/components/Toast/hooks.js +66 -0
  17. package/lib/commonjs/components/Toast/hooks.js.map +1 -0
  18. package/lib/commonjs/components/Toast/index.js +493 -0
  19. package/lib/commonjs/components/Toast/index.js.map +1 -0
  20. package/lib/commonjs/components/Toast/styles.js +141 -0
  21. package/lib/commonjs/components/Toast/styles.js.map +1 -0
  22. package/lib/commonjs/components/Toast/types.js +6 -0
  23. package/lib/commonjs/components/Toast/types.js.map +1 -0
  24. package/lib/commonjs/components/index.js +12 -0
  25. package/lib/commonjs/components/index.js.map +1 -1
  26. package/lib/commonjs/index.js +15 -0
  27. package/lib/commonjs/index.js.map +1 -1
  28. package/lib/commonjs/providers/animation-settings/index.js +31 -0
  29. package/lib/commonjs/providers/animation-settings/index.js.map +1 -0
  30. package/lib/commonjs/providers/animation-settings/provider.js +59 -0
  31. package/lib/commonjs/providers/animation-settings/provider.js.map +1 -0
  32. package/lib/commonjs/providers/animation-settings/types.js +6 -0
  33. package/lib/commonjs/providers/animation-settings/types.js.map +1 -0
  34. package/lib/commonjs/providers/forge-design/index.js +29 -0
  35. package/lib/commonjs/providers/forge-design/index.js.map +1 -0
  36. package/lib/commonjs/providers/forge-design/provider.js +71 -0
  37. package/lib/commonjs/providers/forge-design/provider.js.map +1 -0
  38. package/lib/commonjs/providers/forge-design/types.js +6 -0
  39. package/lib/commonjs/providers/forge-design/types.js.map +1 -0
  40. package/lib/commonjs/providers/text-component/index.js +28 -0
  41. package/lib/commonjs/providers/text-component/index.js.map +1 -0
  42. package/lib/commonjs/providers/text-component/provider.js +11 -0
  43. package/lib/commonjs/providers/text-component/provider.js.map +1 -0
  44. package/lib/commonjs/providers/text-component/types.js +6 -0
  45. package/lib/commonjs/providers/text-component/types.js.map +1 -0
  46. package/lib/commonjs/providers/toast/index.js +33 -0
  47. package/lib/commonjs/providers/toast/index.js.map +1 -0
  48. package/lib/commonjs/providers/toast/insets-container.js +160 -0
  49. package/lib/commonjs/providers/toast/insets-container.js.map +1 -0
  50. package/lib/commonjs/providers/toast/lifecycle.context.js +36 -0
  51. package/lib/commonjs/providers/toast/lifecycle.context.js.map +1 -0
  52. package/lib/commonjs/providers/toast/provider.js +508 -0
  53. package/lib/commonjs/providers/toast/provider.js.map +1 -0
  54. package/lib/commonjs/providers/toast/reducer.js +46 -0
  55. package/lib/commonjs/providers/toast/reducer.js.map +1 -0
  56. package/lib/commonjs/providers/toast/toast-config.context.js +29 -0
  57. package/lib/commonjs/providers/toast/toast-config.context.js.map +1 -0
  58. package/lib/commonjs/providers/toast/toast-item-renderer.js +43 -0
  59. package/lib/commonjs/providers/toast/toast-item-renderer.js.map +1 -0
  60. package/lib/commonjs/providers/toast/types.js +6 -0
  61. package/lib/commonjs/providers/toast/types.js.map +1 -0
  62. package/lib/module/animation/hooks/index.js +4 -0
  63. package/lib/module/animation/hooks/index.js.map +1 -0
  64. package/lib/module/animation/hooks/useCombinedAnimationDisabledState.js +47 -0
  65. package/lib/module/animation/hooks/useCombinedAnimationDisabledState.js.map +1 -0
  66. package/lib/module/animation/index.js +6 -0
  67. package/lib/module/animation/index.js.map +1 -0
  68. package/lib/module/animation/types.js +4 -0
  69. package/lib/module/animation/types.js.map +1 -0
  70. package/lib/module/animation/utils.js +212 -0
  71. package/lib/module/animation/utils.js.map +1 -0
  72. package/lib/module/components/CLAUDE.md +1 -1
  73. package/lib/module/components/Card/index.js +47 -19
  74. package/lib/module/components/Card/index.js.map +1 -1
  75. package/lib/module/components/Toast/animation.js +324 -0
  76. package/lib/module/components/Toast/animation.js.map +1 -0
  77. package/lib/module/components/Toast/hooks.js +61 -0
  78. package/lib/module/components/Toast/hooks.js.map +1 -0
  79. package/lib/module/components/Toast/index.js +487 -0
  80. package/lib/module/components/Toast/index.js.map +1 -0
  81. package/lib/module/components/Toast/styles.js +138 -0
  82. package/lib/module/components/Toast/styles.js.map +1 -0
  83. package/lib/module/components/Toast/types.js +4 -0
  84. package/lib/module/components/Toast/types.js.map +1 -0
  85. package/lib/module/components/index.js +1 -0
  86. package/lib/module/components/index.js.map +1 -1
  87. package/lib/module/index.js +1 -0
  88. package/lib/module/index.js.map +1 -1
  89. package/lib/module/providers/animation-settings/index.js +4 -0
  90. package/lib/module/providers/animation-settings/index.js.map +1 -0
  91. package/lib/module/providers/animation-settings/provider.js +52 -0
  92. package/lib/module/providers/animation-settings/provider.js.map +1 -0
  93. package/lib/module/providers/animation-settings/types.js +4 -0
  94. package/lib/module/providers/animation-settings/types.js.map +1 -0
  95. package/lib/module/providers/forge-design/index.js +5 -0
  96. package/lib/module/providers/forge-design/index.js.map +1 -0
  97. package/lib/module/providers/forge-design/provider.js +66 -0
  98. package/lib/module/providers/forge-design/provider.js.map +1 -0
  99. package/lib/module/providers/forge-design/types.js +4 -0
  100. package/lib/module/providers/forge-design/types.js.map +1 -0
  101. package/lib/module/providers/text-component/index.js +5 -0
  102. package/lib/module/providers/text-component/index.js.map +1 -0
  103. package/lib/module/providers/text-component/provider.js +6 -0
  104. package/lib/module/providers/text-component/provider.js.map +1 -0
  105. package/lib/module/providers/text-component/types.js +4 -0
  106. package/lib/module/providers/text-component/types.js.map +1 -0
  107. package/lib/module/providers/toast/index.js +6 -0
  108. package/lib/module/providers/toast/index.js.map +1 -0
  109. package/lib/module/providers/toast/insets-container.js +156 -0
  110. package/lib/module/providers/toast/insets-container.js.map +1 -0
  111. package/lib/module/providers/toast/lifecycle.context.js +32 -0
  112. package/lib/module/providers/toast/lifecycle.context.js.map +1 -0
  113. package/lib/module/providers/toast/provider.js +503 -0
  114. package/lib/module/providers/toast/provider.js.map +1 -0
  115. package/lib/module/providers/toast/reducer.js +42 -0
  116. package/lib/module/providers/toast/reducer.js.map +1 -0
  117. package/lib/module/providers/toast/toast-config.context.js +25 -0
  118. package/lib/module/providers/toast/toast-config.context.js.map +1 -0
  119. package/lib/module/providers/toast/toast-item-renderer.js +39 -0
  120. package/lib/module/providers/toast/toast-item-renderer.js.map +1 -0
  121. package/lib/module/providers/toast/types.js +4 -0
  122. package/lib/module/providers/toast/types.js.map +1 -0
  123. package/lib/typescript/animation/hooks/index.d.ts +2 -0
  124. package/lib/typescript/animation/hooks/index.d.ts.map +1 -0
  125. package/lib/typescript/animation/hooks/useCombinedAnimationDisabledState.d.ts +22 -0
  126. package/lib/typescript/animation/hooks/useCombinedAnimationDisabledState.d.ts.map +1 -0
  127. package/lib/typescript/animation/index.d.ts +4 -0
  128. package/lib/typescript/animation/index.d.ts.map +1 -0
  129. package/lib/typescript/animation/types.d.ts +105 -0
  130. package/lib/typescript/animation/types.d.ts.map +1 -0
  131. package/lib/typescript/animation/utils.d.ts +120 -0
  132. package/lib/typescript/animation/utils.d.ts.map +1 -0
  133. package/lib/typescript/components/Card/index.d.ts +4 -0
  134. package/lib/typescript/components/Card/index.d.ts.map +1 -1
  135. package/lib/typescript/components/Toast/animation.d.ts +21 -0
  136. package/lib/typescript/components/Toast/animation.d.ts.map +1 -0
  137. package/lib/typescript/components/Toast/hooks.d.ts +17 -0
  138. package/lib/typescript/components/Toast/hooks.d.ts.map +1 -0
  139. package/lib/typescript/components/Toast/index.d.ts +28 -0
  140. package/lib/typescript/components/Toast/index.d.ts.map +1 -0
  141. package/lib/typescript/components/Toast/styles.d.ts +73 -0
  142. package/lib/typescript/components/Toast/styles.d.ts.map +1 -0
  143. package/lib/typescript/components/Toast/types.d.ts +303 -0
  144. package/lib/typescript/components/Toast/types.d.ts.map +1 -0
  145. package/lib/typescript/components/index.d.ts +1 -0
  146. package/lib/typescript/components/index.d.ts.map +1 -1
  147. package/lib/typescript/index.d.ts +2 -0
  148. package/lib/typescript/index.d.ts.map +1 -1
  149. package/lib/typescript/providers/animation-settings/index.d.ts +3 -0
  150. package/lib/typescript/providers/animation-settings/index.d.ts.map +1 -0
  151. package/lib/typescript/providers/animation-settings/provider.d.ts +28 -0
  152. package/lib/typescript/providers/animation-settings/provider.d.ts.map +1 -0
  153. package/lib/typescript/providers/animation-settings/types.d.ts +35 -0
  154. package/lib/typescript/providers/animation-settings/types.d.ts.map +1 -0
  155. package/lib/typescript/providers/forge-design/index.d.ts +3 -0
  156. package/lib/typescript/providers/forge-design/index.d.ts.map +1 -0
  157. package/lib/typescript/providers/forge-design/provider.d.ts +24 -0
  158. package/lib/typescript/providers/forge-design/provider.d.ts.map +1 -0
  159. package/lib/typescript/providers/forge-design/types.d.ts +82 -0
  160. package/lib/typescript/providers/forge-design/types.d.ts.map +1 -0
  161. package/lib/typescript/providers/text-component/index.d.ts +3 -0
  162. package/lib/typescript/providers/text-component/index.d.ts.map +1 -0
  163. package/lib/typescript/providers/text-component/provider.d.ts +7 -0
  164. package/lib/typescript/providers/text-component/provider.d.ts.map +1 -0
  165. package/lib/typescript/providers/text-component/types.d.ts +51 -0
  166. package/lib/typescript/providers/text-component/types.d.ts.map +1 -0
  167. package/lib/typescript/providers/toast/index.d.ts +5 -0
  168. package/lib/typescript/providers/toast/index.d.ts.map +1 -0
  169. package/lib/typescript/providers/toast/insets-container.d.ts +72 -0
  170. package/lib/typescript/providers/toast/insets-container.d.ts.map +1 -0
  171. package/lib/typescript/providers/toast/lifecycle.context.d.ts +32 -0
  172. package/lib/typescript/providers/toast/lifecycle.context.d.ts.map +1 -0
  173. package/lib/typescript/providers/toast/provider.d.ts +32 -0
  174. package/lib/typescript/providers/toast/provider.d.ts.map +1 -0
  175. package/lib/typescript/providers/toast/reducer.d.ts +14 -0
  176. package/lib/typescript/providers/toast/reducer.d.ts.map +1 -0
  177. package/lib/typescript/providers/toast/toast-config.context.d.ts +20 -0
  178. package/lib/typescript/providers/toast/toast-config.context.d.ts.map +1 -0
  179. package/lib/typescript/providers/toast/toast-item-renderer.d.ts +7 -0
  180. package/lib/typescript/providers/toast/toast-item-renderer.d.ts.map +1 -0
  181. package/lib/typescript/providers/toast/types.d.ts +422 -0
  182. package/lib/typescript/providers/toast/types.d.ts.map +1 -0
  183. package/package.json +4 -4
  184. package/src/animation/hooks/index.ts +1 -0
  185. package/src/animation/hooks/useCombinedAnimationDisabledState.ts +46 -0
  186. package/src/animation/index.ts +3 -0
  187. package/src/animation/types.ts +128 -0
  188. package/src/animation/utils.ts +249 -0
  189. package/src/components/CLAUDE.md +1 -1
  190. package/src/components/Card/index.tsx +58 -28
  191. package/src/components/Toast/animation.ts +387 -0
  192. package/src/components/Toast/hooks.ts +92 -0
  193. package/src/components/Toast/index.tsx +520 -0
  194. package/src/components/Toast/styles.ts +186 -0
  195. package/src/components/Toast/types.ts +332 -0
  196. package/src/components/index.ts +1 -0
  197. package/src/index.ts +2 -0
  198. package/src/providers/animation-settings/index.ts +11 -0
  199. package/src/providers/animation-settings/provider.tsx +54 -0
  200. package/src/providers/animation-settings/types.ts +37 -0
  201. package/src/providers/forge-design/index.ts +2 -0
  202. package/src/providers/forge-design/provider.tsx +61 -0
  203. package/src/providers/forge-design/types.ts +84 -0
  204. package/src/providers/text-component/index.ts +2 -0
  205. package/src/providers/text-component/provider.tsx +7 -0
  206. package/src/providers/text-component/types.ts +52 -0
  207. package/src/providers/toast/index.ts +4 -0
  208. package/src/providers/toast/insets-container.tsx +230 -0
  209. package/src/providers/toast/lifecycle.context.tsx +37 -0
  210. package/src/providers/toast/provider.tsx +567 -0
  211. package/src/providers/toast/reducer.ts +40 -0
  212. package/src/providers/toast/toast-config.context.ts +25 -0
  213. package/src/providers/toast/toast-item-renderer.tsx +40 -0
  214. package/src/providers/toast/types.ts +431 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_reactNativeSafeAreaContext","_primitives","_jsxRuntime","InsetsContainer","insets","announceLabel","contentWrapper","children","disableFullWindowOverlay","unstable_accessibilityContainerViewIsModal","pauseAll","resumeAll","hide","safeAreaInsets","useSafeAreaInsets","finalInsets","useMemo","top","Platform","OS","bottom","left","right","pauseSourcesRef","useRef","Set","pauseAllRef","resumeAllRef","current","addPauseSource","useCallback","source","wasEmpty","size","add","removePauseSource","delete","containerRef","hideRef","useEffect","node","sources","handleVisibilityChange","document","hidden","isInsideToast","el","HTMLElement","closest","handlePointerOver","e","target","handlePointerOut","relatedTarget","handleFocusIn","handleFocusOut","handleKeyDown","event","key","stopPropagation","addEventListener","removeEventListener","clear","content","jsx","View","ref","className","role","style","paddingTop","paddingBottom","paddingLeft","paddingRight","FullWindowOverlay"],"sourceRoot":"../../../../src","sources":["providers/toast/insets-container.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ToastLifecycleContext = void 0;
7
+ exports.useToastLifecycle = useToastLifecycle;
8
+ var _react = require("react");
9
+ /**
10
+ * Internal context that exposes the pending-removal lifecycle for web toasts.
11
+ *
12
+ * Web toasts stay mounted after `hide()` is dispatched so the CSS exit
13
+ * transition can play. The toast component reads `pendingRemovalIds` to
14
+ * flip its `data-state="closed"` attribute and calls `remove(id)` when
15
+ * the CSS transition completes (or a safety timeout fires).
16
+ *
17
+ * On native this context is provided but effectively unused — Reanimated's
18
+ * `exiting` layout animation plays before unmount, so nothing lingers.
19
+ *
20
+ * @internal
21
+ */
22
+
23
+ const ToastLifecycleContext = exports.ToastLifecycleContext = /*#__PURE__*/(0, _react.createContext)(null);
24
+
25
+ /**
26
+ * Access the toast lifecycle context.
27
+ *
28
+ * Returns `null` when the styled Toast is rendered outside a `ToastProvider`
29
+ * (e.g. in isolated unit tests) so callers must handle the null case.
30
+ *
31
+ * @internal
32
+ */
33
+ function useToastLifecycle() {
34
+ return (0, _react.useContext)(ToastLifecycleContext);
35
+ }
36
+ //# sourceMappingURL=lifecycle.context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","ToastLifecycleContext","exports","createContext","useToastLifecycle","useContext"],"sourceRoot":"../../../../src","sources":["providers/toast/lifecycle.context.tsx"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAUO,MAAMC,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,gBAAG,IAAAE,oBAAa,EAAoC,IAAI,CAAC;;AAE3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,iBAAiBA,CAAA,EAAsC;EACrE,OAAO,IAAAC,iBAAU,EAACJ,qBAAqB,CAAC;AAC1C","ignoreList":[]}
@@ -0,0 +1,508 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ToastProvider = ToastProvider;
7
+ exports.useToast = useToast;
8
+ var _react = require("react");
9
+ var _reactNative = require("react-native");
10
+ var _reactNativeReanimated = require("react-native-reanimated");
11
+ var _Toast = require("../../components/Toast");
12
+ var _insetsContainer = require("./insets-container");
13
+ var _lifecycle = require("./lifecycle.context");
14
+ var _reducer = require("./reducer");
15
+ var _toastConfig = require("./toast-config.context");
16
+ var _toastItemRenderer = require("./toast-item-renderer");
17
+ var _jsxRuntime = require("react/jsx-runtime");
18
+ const DEFAULT_DURATION = 4000;
19
+
20
+ /**
21
+ * Context for toast manager
22
+ */
23
+ const ToasterContext = /*#__PURE__*/(0, _react.createContext)(null);
24
+
25
+ /**
26
+ * Merges global config with local config, ensuring local config takes precedence
27
+ * Only includes defined values from localConfig to avoid overriding global config with undefined
28
+ */
29
+ function mergeToastConfig(globalConfig, localConfig) {
30
+ const result = {
31
+ ...globalConfig
32
+ };
33
+
34
+ // Only override with defined values from localConfig
35
+ if (localConfig.color !== undefined) {
36
+ result.color = localConfig.color;
37
+ }
38
+ if (localConfig.placement !== undefined) {
39
+ result.placement = localConfig.placement;
40
+ }
41
+ if (localConfig.isSwipeable !== undefined) {
42
+ result.isSwipeable = localConfig.isSwipeable;
43
+ }
44
+ if (localConfig.animation !== undefined) {
45
+ result.animation = localConfig.animation;
46
+ }
47
+ return result;
48
+ }
49
+
50
+ /**
51
+ * Creates a component function for simple string toast
52
+ */
53
+ function createStringToastComponent(label, globalConfig) {
54
+ return props => {
55
+ const mergedConfig = mergeToastConfig(globalConfig, {
56
+ color: 'default'
57
+ });
58
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Toast.DefaultToast, {
59
+ ...props,
60
+ label: label,
61
+ color: mergedConfig.color,
62
+ placement: mergedConfig.placement,
63
+ isSwipeable: mergedConfig.isSwipeable,
64
+ animation: mergedConfig.animation
65
+ });
66
+ };
67
+ }
68
+
69
+ /**
70
+ * Creates a component function for config-based toast
71
+ */
72
+ function createConfigToastComponent(config, globalConfig) {
73
+ return props => {
74
+ const mergedConfig = mergeToastConfig(globalConfig, {
75
+ color: config.color,
76
+ placement: config.placement,
77
+ isSwipeable: config.isSwipeable,
78
+ animation: config.animation
79
+ });
80
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Toast.DefaultToast, {
81
+ ...props,
82
+ color: mergedConfig.color,
83
+ placement: mergedConfig.placement,
84
+ isSwipeable: mergedConfig.isSwipeable,
85
+ animation: mergedConfig.animation,
86
+ label: config.label,
87
+ description: config.description,
88
+ actionLabel: config.actionLabel,
89
+ onActionPress: config.onActionPress,
90
+ icon: config.icon
91
+ });
92
+ };
93
+ }
94
+
95
+ /**
96
+ * Toast provider component
97
+ * Wraps your app to enable toast functionality
98
+ */
99
+ function ToastProvider({
100
+ defaultProps,
101
+ insets,
102
+ maxVisibleToasts = 3,
103
+ contentWrapper,
104
+ children,
105
+ disableFullWindowOverlay = false,
106
+ unstable_accessibilityContainerViewIsModal,
107
+ announceLabel
108
+ }) {
109
+ const [toasts, dispatch] = (0, _react.useReducer)(_reducer.toastReducer, []);
110
+
111
+ /**
112
+ * Memoize global config to prevent unnecessary re-renders
113
+ */
114
+ const globalConfig = (0, _react.useMemo)(() => defaultProps, [defaultProps]);
115
+ const isToastVisible = toasts.length > 0;
116
+ const heights = (0, _reactNativeReanimated.useSharedValue)({});
117
+ const total = (0, _reactNativeReanimated.useSharedValue)(0);
118
+
119
+ /**
120
+ * Derive total from toasts.length so the animated opacity/scale/translateY
121
+ * interpolations always use the real count. Manual increment/decrement
122
+ * was prone to drift when hide + show ran in the same tick or when
123
+ * auto-dismiss raced with a manual hide (stale-closure mismatch).
124
+ */
125
+ (0, _react.useEffect)(() => {
126
+ total.set(toasts.length);
127
+ }, [toasts.length, total]);
128
+ const idCounter = (0, _react.useRef)(0);
129
+
130
+ /**
131
+ * Timer state per toast — tracks remaining time so pause/resume can
132
+ * restart with only the leftover duration (WCAG 2.2.1).
133
+ */
134
+ const timersRef = (0, _react.useRef)(new Map());
135
+ const pausedRef = (0, _react.useRef)(false);
136
+ const hideRef = (0, _react.useRef)(null);
137
+
138
+ /**
139
+ * Safety reset: when all toasts are gone the InsetsContainer unmounts and
140
+ * no resume event can fire. Clear the paused flag and any orphaned timer
141
+ * entries so the next toast's timer starts normally.
142
+ */
143
+ (0, _react.useEffect)(() => {
144
+ if (toasts.length === 0) {
145
+ pausedRef.current = false;
146
+ timersRef.current.forEach(entry => {
147
+ if (entry.timer) clearTimeout(entry.timer);
148
+ });
149
+ timersRef.current.clear();
150
+ }
151
+ }, [toasts.length]);
152
+
153
+ /**
154
+ * Remove one or more toasts from the array. On web this is the second half
155
+ * of the two-phase hide flow — the toast component calls it from
156
+ * `onTransitionEnd` (or a safety timeout) after the exit transition plays.
157
+ * Also cleans up per-id height state.
158
+ */
159
+ const remove = (0, _react.useCallback)(ids => {
160
+ const idsArray = Array.isArray(ids) ? ids : [ids];
161
+ if (idsArray.length === 0) return;
162
+ dispatch({
163
+ type: 'REMOVE',
164
+ payload: {
165
+ ids: idsArray
166
+ }
167
+ });
168
+ heights.modify(value => {
169
+ 'worklet';
170
+
171
+ const result = {
172
+ ...value
173
+ };
174
+ for (const id of idsArray) {
175
+ // eslint-disable-next-line @typescript-eslint/no-dynamic-delete
176
+ delete result[id];
177
+ }
178
+ return result;
179
+ });
180
+ }, [heights]);
181
+
182
+ /**
183
+ * Hide one or more toasts
184
+ * - No argument: hides the last toast in the array
185
+ * - "all": hides all toasts
186
+ * - Single ID: hides that toast
187
+ * - Array of IDs: hides those toasts
188
+ *
189
+ * On web this only marks toasts as `pendingRemoval` so their CSS exit
190
+ * transition can play; the actual removal happens when the toast
191
+ * component calls `remove(id)` on transition end.
192
+ * On native this dispatches removal directly — Reanimated's `exiting`
193
+ * layout animation plays before unmount.
194
+ */
195
+ const hide = (0, _react.useCallback)(ids => {
196
+ const isWeb = _reactNative.Platform.OS === 'web';
197
+ if (ids === undefined) {
198
+ if (toasts.length === 0) return;
199
+ // Hide the last non-pending toast in the array. Using the last
200
+ // pending toast would be a no-op on web.
201
+ let lastToast = null;
202
+ for (let i = toasts.length - 1; i >= 0; i--) {
203
+ const candidate = toasts[i];
204
+ if (!candidate.pendingRemoval) {
205
+ lastToast = candidate;
206
+ break;
207
+ }
208
+ }
209
+ if (!lastToast) return;
210
+ const timerEntry = timersRef.current.get(lastToast.id);
211
+ if (timerEntry?.timer) {
212
+ clearTimeout(timerEntry.timer);
213
+ }
214
+ timersRef.current.delete(lastToast.id);
215
+ if (lastToast.onHide) {
216
+ lastToast.onHide();
217
+ }
218
+ if (isWeb) {
219
+ dispatch({
220
+ type: 'MARK_CLOSED',
221
+ payload: {
222
+ ids: [lastToast.id]
223
+ }
224
+ });
225
+ } else {
226
+ remove([lastToast.id]);
227
+ }
228
+ } else if (ids === 'all') {
229
+ timersRef.current.forEach(entry => {
230
+ if (entry.timer) clearTimeout(entry.timer);
231
+ });
232
+ timersRef.current.clear();
233
+ const targetIds = [];
234
+ toasts.forEach(toast => {
235
+ if (toast.pendingRemoval) return;
236
+ targetIds.push(toast.id);
237
+ if (toast.onHide) {
238
+ toast.onHide();
239
+ }
240
+ });
241
+ if (targetIds.length === 0) return;
242
+ if (isWeb) {
243
+ dispatch({
244
+ type: 'MARK_CLOSED',
245
+ payload: {
246
+ ids: targetIds
247
+ }
248
+ });
249
+ } else {
250
+ remove(targetIds);
251
+ }
252
+ } else {
253
+ const idsArray = Array.isArray(ids) ? ids : [ids];
254
+ const targetIds = [];
255
+ idsArray.forEach(id => {
256
+ const toast = toasts.find(t => t.id === id);
257
+ if (!toast || toast.pendingRemoval) return;
258
+ const timerEntry = timersRef.current.get(id);
259
+ if (timerEntry?.timer) {
260
+ clearTimeout(timerEntry.timer);
261
+ }
262
+ timersRef.current.delete(id);
263
+ targetIds.push(id);
264
+ if (toast.onHide) {
265
+ toast.onHide();
266
+ }
267
+ });
268
+ if (targetIds.length === 0) return;
269
+ if (isWeb) {
270
+ dispatch({
271
+ type: 'MARK_CLOSED',
272
+ payload: {
273
+ ids: targetIds
274
+ }
275
+ });
276
+ } else {
277
+ remove(targetIds);
278
+ }
279
+ }
280
+ }, [remove, toasts]);
281
+
282
+ // Keep hide ref up to date
283
+ hideRef.current = hide;
284
+
285
+ /**
286
+ * Pause all running auto-dismiss timers (WCAG 2.2.1).
287
+ * Stores elapsed time so resumeAll can restart with the remainder.
288
+ */
289
+ const pauseAll = (0, _react.useCallback)(() => {
290
+ if (pausedRef.current) return;
291
+ pausedRef.current = true;
292
+ const now = Date.now();
293
+ timersRef.current.forEach(entry => {
294
+ if (entry.timer) {
295
+ clearTimeout(entry.timer);
296
+ entry.timer = null;
297
+ }
298
+ const elapsed = now - entry.startedAt;
299
+ entry.remaining = Math.max(0, entry.remaining - elapsed);
300
+ });
301
+ }, []);
302
+
303
+ /**
304
+ * Resume all paused auto-dismiss timers with their remaining duration.
305
+ */
306
+ const resumeAll = (0, _react.useCallback)(() => {
307
+ pausedRef.current = false;
308
+ const now = Date.now();
309
+ timersRef.current.forEach((entry, id) => {
310
+ if (entry.timer) return;
311
+ if (entry.remaining <= 0) {
312
+ if (hideRef.current) hideRef.current(id);
313
+ timersRef.current.delete(id);
314
+ return;
315
+ }
316
+ entry.startedAt = now;
317
+ entry.timer = setTimeout(() => {
318
+ if (hideRef.current) hideRef.current(id);
319
+ timersRef.current.delete(id);
320
+ }, entry.remaining);
321
+ });
322
+ }, []);
323
+ const lifecycleContextValue = (0, _react.useMemo)(() => {
324
+ const pending = new Set();
325
+ let frontmostId = null;
326
+ for (const toast of toasts) {
327
+ if (toast.pendingRemoval) {
328
+ pending.add(toast.id);
329
+ } else {
330
+ frontmostId = toast.id;
331
+ }
332
+ }
333
+ return {
334
+ remove: id => remove([id]),
335
+ pendingRemovalIds: pending,
336
+ frontmostId
337
+ };
338
+ }, [remove, toasts]);
339
+
340
+ /**
341
+ * Show a toast
342
+ * Supports three usage patterns:
343
+ * 1. Simple string: toast.show('This is toast')
344
+ * 2. Config object: toast.show({ label, color, ... })
345
+ * 3. Custom component: toast.show({ component: (props) => <Toast>...</Toast> })
346
+ */
347
+ const show = (0, _react.useCallback)(options => {
348
+ let normalizedOptions;
349
+ let duration = DEFAULT_DURATION; // Default duration
350
+ let explicitId;
351
+
352
+ // Case 1: Simple string
353
+ if (typeof options === 'string') {
354
+ normalizedOptions = {
355
+ id: undefined,
356
+ component: createStringToastComponent(options, globalConfig),
357
+ duration: DEFAULT_DURATION
358
+ };
359
+ duration = DEFAULT_DURATION;
360
+ explicitId = undefined;
361
+ }
362
+ // Case 2: Config object without component
363
+ else if (!('component' in options) || options.component === undefined) {
364
+ const config = options;
365
+ duration = config.duration ?? DEFAULT_DURATION;
366
+ explicitId = config.id;
367
+ normalizedOptions = {
368
+ id: config.id,
369
+ component: createConfigToastComponent(config, globalConfig),
370
+ duration,
371
+ onShow: config.onShow,
372
+ onHide: config.onHide
373
+ };
374
+ }
375
+ // Case 3: Config object with component (existing behavior)
376
+ else {
377
+ normalizedOptions = options;
378
+ duration = normalizedOptions.duration ?? DEFAULT_DURATION;
379
+ explicitId = normalizedOptions.id;
380
+ }
381
+ const id = normalizedOptions.id ?? `toast-${String(Date.now())}-${String(idCounter.current++)}`;
382
+
383
+ // If an explicit ID was provided, check if a toast with that ID already exists
384
+ // If it exists, skip adding a new toast and return the existing ID
385
+ if (explicitId !== undefined) {
386
+ const existingToast = toasts.find(toast => toast.id === explicitId);
387
+ if (existingToast) {
388
+ return existingToast.id;
389
+ }
390
+ }
391
+ dispatch({
392
+ type: 'SHOW',
393
+ payload: {
394
+ id,
395
+ component: normalizedOptions.component,
396
+ duration,
397
+ onShow: normalizedOptions.onShow,
398
+ onHide: normalizedOptions.onHide
399
+ }
400
+ });
401
+ if (normalizedOptions.onShow) {
402
+ normalizedOptions.onShow();
403
+ }
404
+
405
+ // Set up auto-dismiss timeout synchronously
406
+ if (duration !== 'persistent' && typeof duration === 'number' && !Number.isNaN(duration) && duration >= 0 && duration !== Infinity) {
407
+ // Handle immediate dismissal
408
+ if (duration === 0) {
409
+ if (hideRef.current) {
410
+ hideRef.current(id);
411
+ }
412
+ } else {
413
+ const now = Date.now();
414
+ const timer = setTimeout(() => {
415
+ if (hideRef.current) {
416
+ hideRef.current(id);
417
+ }
418
+ timersRef.current.delete(id);
419
+ }, duration);
420
+ const entry = {
421
+ startedAt: now,
422
+ remaining: duration,
423
+ timer: timer,
424
+ duration
425
+ };
426
+ timersRef.current.set(id, entry);
427
+ if (pausedRef.current) {
428
+ clearTimeout(timer);
429
+ entry.timer = null;
430
+ }
431
+ }
432
+ }
433
+ return id;
434
+ }, [toasts, globalConfig]);
435
+ const contextValue = (0, _react.useMemo)(() => ({
436
+ toast: {
437
+ show,
438
+ hide,
439
+ pauseAll,
440
+ resumeAll
441
+ },
442
+ isToastVisible
443
+ }), [show, hide, pauseAll, resumeAll, isToastVisible]);
444
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_toastConfig.ToastConfigContext.Provider, {
445
+ value: globalConfig,
446
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ToasterContext.Provider, {
447
+ value: contextValue,
448
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_lifecycle.ToastLifecycleContext.Provider, {
449
+ value: lifecycleContextValue,
450
+ children: [children, toasts.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_insetsContainer.InsetsContainer, {
451
+ insets: insets,
452
+ announceLabel: announceLabel,
453
+ contentWrapper: contentWrapper,
454
+ disableFullWindowOverlay: disableFullWindowOverlay,
455
+ unstable_accessibilityContainerViewIsModal: unstable_accessibilityContainerViewIsModal,
456
+ pauseAll: pauseAll,
457
+ resumeAll: resumeAll,
458
+ hide: hide,
459
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
460
+ className: "flex-1",
461
+ children: toasts.map((toastItem, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_toastItemRenderer.ToastItemRenderer, {
462
+ toastItem: toastItem,
463
+ show: show,
464
+ hide: hide,
465
+ index: index,
466
+ total: total,
467
+ heights: heights,
468
+ maxVisibleToasts: maxVisibleToasts
469
+ }, toastItem.id))
470
+ })
471
+ })]
472
+ })
473
+ })
474
+ });
475
+ }
476
+
477
+ /**
478
+ * Hook to access toast functionality
479
+ *
480
+ * @returns Object containing toast manager and visibility state
481
+ *
482
+ * @example
483
+ * ```tsx
484
+ * const { toast, isToastVisible } = useToast();
485
+ *
486
+ * // Show a toast
487
+ * toast.show({ component: <Toast>Hello</Toast> });
488
+ *
489
+ * // Hide a toast
490
+ * toast.hide('my-toast');
491
+ *
492
+ * // Check if any toast is visible
493
+ * if (isToastVisible) {
494
+ * console.log('A toast is currently displayed');
495
+ * }
496
+ * ```
497
+ */
498
+ function useToast() {
499
+ const context = (0, _react.useContext)(ToasterContext);
500
+ if (!context) {
501
+ throw new Error('useToast must be used within a ToastProvider provider');
502
+ }
503
+ return {
504
+ toast: context.toast,
505
+ isToastVisible: context.isToastVisible
506
+ };
507
+ }
508
+ //# sourceMappingURL=provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_reactNativeReanimated","_Toast","_insetsContainer","_lifecycle","_reducer","_toastConfig","_toastItemRenderer","_jsxRuntime","DEFAULT_DURATION","ToasterContext","createContext","mergeToastConfig","globalConfig","localConfig","result","color","undefined","placement","isSwipeable","animation","createStringToastComponent","label","props","mergedConfig","jsx","DefaultToast","createConfigToastComponent","config","description","actionLabel","onActionPress","icon","ToastProvider","defaultProps","insets","maxVisibleToasts","contentWrapper","children","disableFullWindowOverlay","unstable_accessibilityContainerViewIsModal","announceLabel","toasts","dispatch","useReducer","toastReducer","useMemo","isToastVisible","length","heights","useSharedValue","total","useEffect","set","idCounter","useRef","timersRef","Map","pausedRef","hideRef","current","forEach","entry","timer","clearTimeout","clear","remove","useCallback","ids","idsArray","Array","isArray","type","payload","modify","value","id","hide","isWeb","Platform","OS","lastToast","i","candidate","pendingRemoval","timerEntry","get","delete","onHide","targetIds","toast","push","find","t","pauseAll","now","Date","elapsed","startedAt","remaining","Math","max","resumeAll","setTimeout","lifecycleContextValue","pending","Set","frontmostId","add","pendingRemovalIds","show","options","normalizedOptions","duration","explicitId","component","onShow","String","existingToast","Number","isNaN","Infinity","contextValue","ToastConfigContext","Provider","jsxs","ToastLifecycleContext","InsetsContainer","View","className","map","toastItem","index","ToastItemRenderer","useToast","context","useContext","Error"],"sourceRoot":"../../../../src","sources":["providers/toast/provider.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.toastReducer = toastReducer;
7
+ /**
8
+ * Reducer for managing toast state
9
+ *
10
+ * Removal is a two-phase flow so web can play its CSS exit transition
11
+ * before the DOM node is unmounted:
12
+ * `MARK_CLOSED` → flips `pendingRemoval: true` (node stays mounted).
13
+ * `REMOVE` → filters the toast out of the array (node unmounts).
14
+ *
15
+ * Native dispatches `REMOVE` directly since Reanimated's `exiting`
16
+ * layout animation plays before unmount without a lingering state.
17
+ */
18
+ function toastReducer(state, action) {
19
+ switch (action.type) {
20
+ case 'SHOW':
21
+ {
22
+ const filtered = state.filter(toast => toast.id !== action.payload.id);
23
+ return [...filtered, action.payload];
24
+ }
25
+ case 'MARK_CLOSED':
26
+ {
27
+ const idsSet = new Set(action.payload.ids);
28
+ // Early out preserves the array reference when nothing would change,
29
+ // which keeps `useMemo(..., [toasts])` consumers stable.
30
+ const hasChange = state.some(toast => idsSet.has(toast.id) && !toast.pendingRemoval);
31
+ if (!hasChange) return state;
32
+ return state.map(toast => idsSet.has(toast.id) && !toast.pendingRemoval ? {
33
+ ...toast,
34
+ pendingRemoval: true
35
+ } : toast);
36
+ }
37
+ case 'REMOVE':
38
+ {
39
+ const idsSet = new Set(action.payload.ids);
40
+ return state.filter(toast => !idsSet.has(toast.id));
41
+ }
42
+ default:
43
+ return state;
44
+ }
45
+ }
46
+ //# sourceMappingURL=reducer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["toastReducer","state","action","type","filtered","filter","toast","id","payload","idsSet","Set","ids","hasChange","some","has","pendingRemoval","map"],"sourceRoot":"../../../../src","sources":["providers/toast/reducer.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,YAAYA,CAACC,KAAkB,EAAEC,MAAmB,EAAe;EACjF,QAAQA,MAAM,CAACC,IAAI;IACjB,KAAK,MAAM;MAAE;QACX,MAAMC,QAAQ,GAAGH,KAAK,CAACI,MAAM,CAAEC,KAAK,IAAKA,KAAK,CAACC,EAAE,KAAKL,MAAM,CAACM,OAAO,CAACD,EAAE,CAAC;QACxE,OAAO,CAAC,GAAGH,QAAQ,EAAEF,MAAM,CAACM,OAAO,CAAC;MACtC;IAEA,KAAK,aAAa;MAAE;QAClB,MAAMC,MAAM,GAAG,IAAIC,GAAG,CAACR,MAAM,CAACM,OAAO,CAACG,GAAG,CAAC;QAC1C;QACA;QACA,MAAMC,SAAS,GAAGX,KAAK,CAACY,IAAI,CAAEP,KAAK,IAAKG,MAAM,CAACK,GAAG,CAACR,KAAK,CAACC,EAAE,CAAC,IAAI,CAACD,KAAK,CAACS,cAAc,CAAC;QACtF,IAAI,CAACH,SAAS,EAAE,OAAOX,KAAK;QAC5B,OAAOA,KAAK,CAACe,GAAG,CAAEV,KAAK,IACrBG,MAAM,CAACK,GAAG,CAACR,KAAK,CAACC,EAAE,CAAC,IAAI,CAACD,KAAK,CAACS,cAAc,GAAG;UAAE,GAAGT,KAAK;UAAES,cAAc,EAAE;QAAK,CAAC,GAAGT,KACvF,CAAC;MACH;IAEA,KAAK,QAAQ;MAAE;QACb,MAAMG,MAAM,GAAG,IAAIC,GAAG,CAACR,MAAM,CAACM,OAAO,CAACG,GAAG,CAAC;QAC1C,OAAOV,KAAK,CAACI,MAAM,CAAEC,KAAK,IAAK,CAACG,MAAM,CAACK,GAAG,CAACR,KAAK,CAACC,EAAE,CAAC,CAAC;MACvD;IAEA;MACE,OAAON,KAAK;EAChB;AACF","ignoreList":[]}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ToastConfigContext = void 0;
7
+ exports.useToastConfig = useToastConfig;
8
+ var _react = require("react");
9
+ /**
10
+ * Context for global toast configuration
11
+ * Extracted to separate file to avoid circular dependencies with toast component
12
+ */
13
+ const ToastConfigContext = exports.ToastConfigContext = /*#__PURE__*/(0, _react.createContext)(undefined);
14
+
15
+ /**
16
+ * Hook to access global toast configuration
17
+ *
18
+ * @returns Global toast configuration or undefined if not set
19
+ *
20
+ * @example
21
+ * ```tsx
22
+ * const globalConfig = useToastConfig();
23
+ * // Use globalConfig.color, globalConfig.placement, etc.
24
+ * ```
25
+ */
26
+ function useToastConfig() {
27
+ return (0, _react.useContext)(ToastConfigContext);
28
+ }
29
+ //# sourceMappingURL=toast-config.context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","ToastConfigContext","exports","createContext","undefined","useToastConfig","useContext"],"sourceRoot":"../../../../src","sources":["providers/toast/toast-config.context.ts"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGA;AACA;AACA;AACA;AACA,MAAMC,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,gBAAG,IAAAE,oBAAa,EAAgCC,SAAS,CAAC;;AAElF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,cAAcA,CAAA,EAAkC;EAC9D,OAAO,IAAAC,iBAAU,EAACL,kBAAkB,CAAC;AACvC","ignoreList":[]}