@oxyhq/bloom 0.54.1 → 0.55.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 (56) hide show
  1. package/lib/commonjs/toast/ToastRow.js +35 -10
  2. package/lib/commonjs/toast/ToastRow.js.map +1 -1
  3. package/lib/commonjs/toast/ToastSwipeHandler.js +15 -5
  4. package/lib/commonjs/toast/ToastSwipeHandler.js.map +1 -1
  5. package/lib/commonjs/toast/constants.js +18 -1
  6. package/lib/commonjs/toast/constants.js.map +1 -1
  7. package/lib/commonjs/toast/toast-store.js +39 -1
  8. package/lib/commonjs/toast/toast-store.js.map +1 -1
  9. package/lib/commonjs/toast/use-stack-hover.js +175 -0
  10. package/lib/commonjs/toast/use-stack-hover.js.map +1 -0
  11. package/lib/commonjs/toast/use-stack-hover.native.js +42 -0
  12. package/lib/commonjs/toast/use-stack-hover.native.js.map +1 -0
  13. package/lib/module/toast/ToastRow.js +35 -10
  14. package/lib/module/toast/ToastRow.js.map +1 -1
  15. package/lib/module/toast/ToastSwipeHandler.js +16 -4
  16. package/lib/module/toast/ToastSwipeHandler.js.map +1 -1
  17. package/lib/module/toast/constants.js +18 -1
  18. package/lib/module/toast/constants.js.map +1 -1
  19. package/lib/module/toast/toast-store.js +39 -1
  20. package/lib/module/toast/toast-store.js.map +1 -1
  21. package/lib/module/toast/use-stack-hover.js +168 -0
  22. package/lib/module/toast/use-stack-hover.js.map +1 -0
  23. package/lib/module/toast/use-stack-hover.native.js +35 -0
  24. package/lib/module/toast/use-stack-hover.native.js.map +1 -0
  25. package/lib/typescript/commonjs/toast/ToastRow.d.ts.map +1 -1
  26. package/lib/typescript/commonjs/toast/ToastSwipeHandler.d.ts +4 -0
  27. package/lib/typescript/commonjs/toast/ToastSwipeHandler.d.ts.map +1 -1
  28. package/lib/typescript/commonjs/toast/constants.d.ts.map +1 -1
  29. package/lib/typescript/commonjs/toast/toast-store.d.ts +15 -0
  30. package/lib/typescript/commonjs/toast/toast-store.d.ts.map +1 -1
  31. package/lib/typescript/commonjs/toast/use-stack-hover.d.ts +55 -0
  32. package/lib/typescript/commonjs/toast/use-stack-hover.d.ts.map +1 -0
  33. package/lib/typescript/commonjs/toast/use-stack-hover.native.d.ts +26 -0
  34. package/lib/typescript/commonjs/toast/use-stack-hover.native.d.ts.map +1 -0
  35. package/lib/typescript/module/toast/ToastRow.d.ts.map +1 -1
  36. package/lib/typescript/module/toast/ToastSwipeHandler.d.ts +4 -0
  37. package/lib/typescript/module/toast/ToastSwipeHandler.d.ts.map +1 -1
  38. package/lib/typescript/module/toast/constants.d.ts.map +1 -1
  39. package/lib/typescript/module/toast/toast-store.d.ts +15 -0
  40. package/lib/typescript/module/toast/toast-store.d.ts.map +1 -1
  41. package/lib/typescript/module/toast/use-stack-hover.d.ts +55 -0
  42. package/lib/typescript/module/toast/use-stack-hover.d.ts.map +1 -0
  43. package/lib/typescript/module/toast/use-stack-hover.native.d.ts +26 -0
  44. package/lib/typescript/module/toast/use-stack-hover.native.d.ts.map +1 -0
  45. package/package.json +1 -1
  46. package/src/__tests__/Toaster.test.tsx +554 -0
  47. package/src/__tests__/toast-position-utils.test.ts +28 -0
  48. package/src/__tests__/toast-stack-hover.test.ts +92 -0
  49. package/src/__tests__/toast-store.test.ts +72 -0
  50. package/src/toast/Toast.stories.tsx +10 -0
  51. package/src/toast/ToastRow.tsx +33 -10
  52. package/src/toast/ToastSwipeHandler.tsx +14 -2
  53. package/src/toast/constants.ts +18 -1
  54. package/src/toast/toast-store.ts +39 -1
  55. package/src/toast/use-stack-hover.native.ts +34 -0
  56. package/src/toast/use-stack-hover.ts +182 -0
@@ -11,6 +11,7 @@ var _animations = require("./animations.js");
11
11
  var _constants = require("./constants.js");
12
12
  var _context = require("./context.js");
13
13
  var _positionUtils = require("./position-utils.js");
14
+ var _useStackHover = require("./use-stack-hover");
14
15
  var _useAnimatedTarget = require("./use-animated-target.js");
15
16
  var _ToastContent = require("./ToastContent.js");
16
17
  var _ToastSwipeHandler = require("./ToastSwipeHandler.js");
@@ -305,24 +306,48 @@ const ToastRow = exports.ToastRow = /*#__PURE__*/React.forwardRef(function Toast
305
306
  _toastStore.toastStore.resumeTimer(id);
306
307
  }
307
308
  }, [id, isExpanded]);
309
+
310
+ /**
311
+ * INVARIANT: NO TAP ON A STACKED ROW IS INERT. Every one of them dismisses,
312
+ * expands or collapses.
313
+ *
314
+ * The close-button strip dismisses only when a ✕ is actually THERE to aim at,
315
+ * which is exactly `closeButton && dismissible` — the same condition
316
+ * `ToastContent` renders it under, and nothing to do with expansion. Anything
317
+ * else in the strip falls through to the row's own behaviour rather than being
318
+ * swallowed: on a collapsed stack it expands, on an expanded one it collapses.
319
+ *
320
+ * Guarding the strip on `isExpanded` (as this did until now) made two taps do
321
+ * nothing at all — the whole strip at default config, where `closeButton` is
322
+ * `false` so the dismiss branch is unreachable, and the VISIBLE ✕ on a
323
+ * collapsed stack's front row. On Android that second one has no fallback:
324
+ * the RNGH tap wins the race against `ToastContent`'s nested close Pressable,
325
+ * so the ✕ never got its own press either.
326
+ *
327
+ * `x` is relative to the row, which is CAPPED at `TOAST_MAX_ROW_WIDTH`.
328
+ * Measuring the strip from the window edge would put it outside the row
329
+ * entirely on a wide viewport — do not "simplify" this back to `screenWidth`.
330
+ *
331
+ * W13 — the expansion TOGGLE stands down while a mouse is hovering the stack,
332
+ * because hover already owns expansion there (`use-stack-hover`). Without this
333
+ * a desktop click would collapse the stack under the cursor and resume the
334
+ * timers hover had just paused. Dismissing is unaffected, `onPress` always
335
+ * runs, and `isStackHovered()` is always false on native and on any touch web
336
+ * device — so press remains the only trigger wherever there is no pointer.
337
+ */
308
338
  const onSwipePress = React.useCallback(({
309
339
  x
310
340
  }) => {
311
341
  if (enableStacking && numberOfToasts > 1 && position !== 'center') {
312
- // On Android the RNGH tap wins the race against the nested Pressable,
313
- // so a press in the close-button strip has to dismiss explicitly.
314
- // `x` is relative to the row, which is capped — measuring the strip
315
- // from the window edge would put it outside the row on a wide viewport.
316
- if (x > rowWidth - _constants.CLOSE_BUTTON_HIT_AREA) {
317
- if (isExpanded && closeButton && dismissible) {
318
- onDismiss(id);
319
- }
320
- } else {
342
+ const inCloseStrip = x > rowWidth - _constants.CLOSE_BUTTON_HIT_AREA;
343
+ if (inCloseStrip && closeButton && dismissible) {
344
+ onDismiss(id);
345
+ } else if (!(0, _useStackHover.isStackHovered)()) {
321
346
  toggleExpand();
322
347
  }
323
348
  }
324
349
  onPress?.();
325
- }, [enableStacking, numberOfToasts, position, rowWidth, isExpanded, closeButton, dismissible, onDismiss, id, toggleExpand, onPress]);
350
+ }, [enableStacking, numberOfToasts, position, rowWidth, closeButton, dismissible, onDismiss, id, toggleExpand, onPress]);
326
351
 
327
352
  // Front row on top: later rows in the stack sit progressively behind.
328
353
  const stackZIndex = position === 'top-center' ? -(index + 1) : -(numberOfToasts - index);
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_animations","_constants","_context","_positionUtils","_useAnimatedTarget","_ToastContent","_ToastSwipeHandler","_toastStore","_useToastPosition","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","WIGGLE_SCALE","WIGGLE_DURATION","WIGGLE_REPEATS","mergeToastStyles","toastOptions","perToast","variantStyle","toastContainer","toastContainerStyle","toast","style","toastContent","toastContentStyle","textContainer","textContainerStyle","title","titleStyle","description","descriptionStyle","buttons","buttonsStyle","closeButton","closeButtonStyle","closeButtonIcon","closeButtonIconStyle","ToastRow","exports","forwardRef","id","jsx","icon","duration","variant","action","cancel","close","onDismiss","dismissible","toastDefaults","closeButtonProp","actionButtonStyle","actionButtonTextStyle","cancelButtonStyle","cancelButtonTextStyle","styles","styleOverrides","promiseOptions","position","positionProp","animation","unstyled","unstyledProp","important","richColors","richColorsProp","onPress","allowFontScaling","allowFontScalingProp","maxFontSizeMultiplier","maxFontSizeMultiplierProp","backgroundComponent","backgroundComponentProp","numberOfToasts","index","orderedToastIds","ref","closeButtonCtx","icons","richColorsCtx","allowFontScalingCtx","maxFontSizeMultiplierCtx","enableStacking","gap","positionCtx","visibleToasts","unstyledCtx","useToastContext","toastHeights","isExpanded","toggleExpand","useDynamicToastContext","stackGap","mergedStyles","useMemo","undefined","distanceFromFront","isHiddenByLimit","entering","exiting","enterTranslateY","useToastLayoutAnimations","yPosition","useToastPosition","allToastHeights","width","screenWidth","useWindowDimensions","rowWidth","Math","min","TOAST_MAX_ROW_WIDTH","stackScaleX","useAnimatedTarget","calculateStackScaleX","STACKING_ANIMATION_DURATION","easing","easeOutQuartFn","stackTransformStyle","useAnimatedStyle","transform","translateY","value","scaleX","enterProgress","ENTERING_ANIMATION_DURATION","from","enterDistance","wiggleScale","useSharedValue","rowStyle","opacity","scale","wiggle","useCallback","withRepeat","withTiming","handleWiggle","Infinity","useImperativeHandle","measuredRef","useRef","useLayoutEffect","node","current","getBoundingClientRect","toastStore","setToastHeight","height","stale","measureInWindow","_x","_y","_width","handleLayout","nativeEvent","layout","onRemove","onSwipeBegin","pauseTimer","onSwipeFinalize","resumeTimer","onSwipePress","x","CLOSE_BUTTON_HIT_AREA","stackZIndex","View","anchor","anchorFor","zIndex","children","ToastSwipeHandler","onBegin","onFinalize","enabled","onLayout","ToastContent","StyleSheet","create","anchorTop","top","anchorBottom","bottom","anchorCenter"],"sourceRoot":"../../../src","sources":["toast/ToastRow.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_animations","_constants","_context","_positionUtils","_useStackHover","_useAnimatedTarget","_ToastContent","_ToastSwipeHandler","_toastStore","_useToastPosition","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","WIGGLE_SCALE","WIGGLE_DURATION","WIGGLE_REPEATS","mergeToastStyles","toastOptions","perToast","variantStyle","toastContainer","toastContainerStyle","toast","style","toastContent","toastContentStyle","textContainer","textContainerStyle","title","titleStyle","description","descriptionStyle","buttons","buttonsStyle","closeButton","closeButtonStyle","closeButtonIcon","closeButtonIconStyle","ToastRow","exports","forwardRef","id","jsx","icon","duration","variant","action","cancel","close","onDismiss","dismissible","toastDefaults","closeButtonProp","actionButtonStyle","actionButtonTextStyle","cancelButtonStyle","cancelButtonTextStyle","styles","styleOverrides","promiseOptions","position","positionProp","animation","unstyled","unstyledProp","important","richColors","richColorsProp","onPress","allowFontScaling","allowFontScalingProp","maxFontSizeMultiplier","maxFontSizeMultiplierProp","backgroundComponent","backgroundComponentProp","numberOfToasts","index","orderedToastIds","ref","closeButtonCtx","icons","richColorsCtx","allowFontScalingCtx","maxFontSizeMultiplierCtx","enableStacking","gap","positionCtx","visibleToasts","unstyledCtx","useToastContext","toastHeights","isExpanded","toggleExpand","useDynamicToastContext","stackGap","mergedStyles","useMemo","undefined","distanceFromFront","isHiddenByLimit","entering","exiting","enterTranslateY","useToastLayoutAnimations","yPosition","useToastPosition","allToastHeights","width","screenWidth","useWindowDimensions","rowWidth","Math","min","TOAST_MAX_ROW_WIDTH","stackScaleX","useAnimatedTarget","calculateStackScaleX","STACKING_ANIMATION_DURATION","easing","easeOutQuartFn","stackTransformStyle","useAnimatedStyle","transform","translateY","value","scaleX","enterProgress","ENTERING_ANIMATION_DURATION","from","enterDistance","wiggleScale","useSharedValue","rowStyle","opacity","scale","wiggle","useCallback","withRepeat","withTiming","handleWiggle","Infinity","useImperativeHandle","measuredRef","useRef","useLayoutEffect","node","current","getBoundingClientRect","toastStore","setToastHeight","height","stale","measureInWindow","_x","_y","_width","handleLayout","nativeEvent","layout","onRemove","onSwipeBegin","pauseTimer","onSwipeFinalize","resumeTimer","onSwipePress","x","inCloseStrip","CLOSE_BUTTON_HIT_AREA","isStackHovered","stackZIndex","View","anchor","anchorFor","zIndex","children","ToastSwipeHandler","onBegin","onFinalize","enabled","onLayout","ToastContent","StyleSheet","create","anchorTop","top","anchorBottom","bottom","anchorCenter"],"sourceRoot":"../../../src","sources":["toast/ToastRow.tsx"],"mappings":"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","ignoreList":[]}
@@ -11,6 +11,7 @@ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reani
11
11
  var _animations = require("./animations.js");
12
12
  var _constants = require("./constants.js");
13
13
  var _context = require("./context.js");
14
+ var _useStackHover = require("./use-stack-hover");
14
15
  var _jsxRuntime = require("react/jsx-runtime");
15
16
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
17
  /**
@@ -29,10 +30,13 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
29
30
  * covers `toast.custom` JSX and `unstyled` rows too, which never reach that
30
31
  * card. Every distance the gesture measures is a fraction of the capped
31
32
  * `rowWidth`, not of the window — see the constant.
33
+ *
34
+ * W13 — being THE row box also makes it the hover target: `useStackHover`'s
35
+ * handlers go here so a pointer over ANY row counts as a pointer over the stack.
36
+ * The handlers are empty on native.
32
37
  */
33
38
 
34
- /** Fraction of the row a horizontal swipe must cross to dismiss. */
35
- const HORIZONTAL_DISMISS_FRACTION = 0.25;
39
+ /** Fraction of the row a horizontal swipe must cross to dismiss. */const HORIZONTAL_DISMISS_FRACTION = 0.25;
36
40
  /** Below this the gesture reads as a tap, so the row springs back. */
37
41
  const TAP_SLOP = 16;
38
42
  /** Vertical travel that fades a row fully out. */
@@ -59,10 +63,16 @@ const ToastSwipeHandler = ({
59
63
  const translate = (0, _reactNativeReanimated.useSharedValue)(0);
60
64
  const {
61
65
  swipeToDismissDirection: direction,
62
- position: positionCtx
66
+ position: positionCtx,
67
+ enableStacking
63
68
  } = (0, _context.useToastContext)();
64
69
  const position = positionProps ?? positionCtx;
65
70
  const isAndroid = _reactNative.Platform.OS === 'android';
71
+ // W13 — hover lives on THE ROW BOX, so hovering any row counts as hovering the
72
+ // stack. Empty on native; see `use-stack-hover.native.ts`.
73
+ const hoverProps = (0, _useStackHover.useStackHover)({
74
+ enableStacking
75
+ });
66
76
  const pan = _reactNativeGestureHandler.Gesture.Pan().onBegin(() => {
67
77
  'worklet';
68
78
 
@@ -161,11 +171,11 @@ const ToastSwipeHandler = ({
161
171
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.GestureDetector, {
162
172
  gesture: _reactNativeGestureHandler.Gesture.Race(tap, pan),
163
173
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
164
- style: [animatedStyle, unstyled ? undefined : styles.centered, styles.rowBox, style]
174
+ style: [animatedStyle, unstyled ? undefined : styles.centered, styles.rowBox, style],
175
+ ...hoverProps,
165
176
  // W9 — on web `LinearTransition`'s easing degrades to CSS `ease` because
166
177
  // a `bezierFn` result carries no easing-name symbol for the CSS mapper.
167
178
  // Accepted: the transition still runs, only its curve differs.
168
- ,
169
179
  layout: _reactNativeReanimated.LinearTransition.easing(_animations.easeInOutCircFn)
170
180
  // https://reactnative.dev/docs/accessibility#aria-live-android
171
181
  ,
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_animations","_constants","_context","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","HORIZONTAL_DISMISS_FRACTION","TAP_SLOP","VERTICAL_FADE_DISTANCE","SPRING_BACK_EASING_BOUNCINESS","WRONG_DIRECTION_SPRING_DURATION","ToastSwipeHandler","children","onRemove","style","onBegin","onFinalize","enabled","unstyled","important","position","positionProps","onPress","width","windowWidth","useWindowDimensions","rowWidth","Math","min","TOAST_MAX_ROW_WIDTH","translate","useSharedValue","swipeToDismissDirection","direction","positionCtx","useToastContext","isAndroid","Platform","OS","pan","Gesture","Pan","runOnJS","onChange","event","translationX","value","isBottomPosition","rawTranslation","translationY","elasticResistance","springBack","duration","withTiming","easing","Easing","elastic","dismiss","inOut","ease","isDone","abs","tap","Tap","onEnd","x","y","animatedStyle","useAnimatedStyle","transform","translateX","translateY","opacity","interpolate","jsx","GestureDetector","gesture","Race","View","undefined","styles","centered","rowBox","layout","LinearTransition","easeInOutCircFn","exports","StyleSheet","create","justifyContent","maxWidth","alignSelf","distance","BASE_RESISTANCE","PROGRESSIVE_DAMPENING"],"sourceRoot":"../../../src","sources":["toast/ToastSwipeHandler.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_animations","_constants","_context","_useStackHover","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","HORIZONTAL_DISMISS_FRACTION","TAP_SLOP","VERTICAL_FADE_DISTANCE","SPRING_BACK_EASING_BOUNCINESS","WRONG_DIRECTION_SPRING_DURATION","ToastSwipeHandler","children","onRemove","style","onBegin","onFinalize","enabled","unstyled","important","position","positionProps","onPress","width","windowWidth","useWindowDimensions","rowWidth","Math","min","TOAST_MAX_ROW_WIDTH","translate","useSharedValue","swipeToDismissDirection","direction","positionCtx","enableStacking","useToastContext","isAndroid","Platform","OS","hoverProps","useStackHover","pan","Gesture","Pan","runOnJS","onChange","event","translationX","value","isBottomPosition","rawTranslation","translationY","elasticResistance","springBack","duration","withTiming","easing","Easing","elastic","dismiss","inOut","ease","isDone","abs","tap","Tap","onEnd","x","y","animatedStyle","useAnimatedStyle","transform","translateX","translateY","opacity","interpolate","jsx","GestureDetector","gesture","Race","View","undefined","styles","centered","rowBox","layout","LinearTransition","easeInOutCircFn","exports","StyleSheet","create","justifyContent","maxWidth","alignSelf","distance","BASE_RESISTANCE","PROGRESSIVE_DAMPENING"],"sourceRoot":"../../../src","sources":["toast/ToastSwipeHandler.tsx"],"mappings":"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","ignoreList":[]}
@@ -77,7 +77,24 @@ const toastDefaults = exports.toastDefaults = {
77
77
  theme: 'system',
78
78
  autoWiggleOnUpdate: 'never',
79
79
  richColors: false,
80
- enableStacking: false,
80
+ /**
81
+ * ON, unlike upstream — the same class of correction as `TOAST_MAX_ROW_WIDTH`.
82
+ *
83
+ * sonner-NATIVE defaults this off; sonner (web) has no switch at all, because a
84
+ * collapsed stack — front row full size, the ones behind scaled and offset,
85
+ * expanding on interaction — IS its default presentation. The port inherited the
86
+ * mobile default onto every desktop consumer, where an unstacked run of toasts
87
+ * is a column of full cards rather than a stack.
88
+ *
89
+ * Bloom already deviates deliberately elsewhere (`position: 'bottom-center'` vs
90
+ * upstream's `top-center`, `duration: 3000` vs 4000, `gap: 8` vs 14), so this is
91
+ * in keeping rather than a break with the port.
92
+ *
93
+ * Turning it OFF (`<ToastOutlet enableStacking={false} />`) restores the flat
94
+ * column, which is still the right choice for a surface that must show several
95
+ * toasts at once without an interaction.
96
+ */
97
+ enableStacking: true,
81
98
  stackGap: 8,
82
99
  allowFontScaling: true
83
100
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_tokens","require","ESTIMATED_TOAST_HEIGHT","exports","CLOSE_BUTTON_HIT_AREA","OUTSIDE_PRESS_PADDING","MIN_STACK_SCALE_X","TOAST_MAX_ROW_WIDTH","space","lg","ENTERING_ANIMATION_DURATION","STACKING_ANIMATION_DURATION","toastDefaults","duration","position","offset","swipeToDismissDirection","variant","undefined","visibleToasts","closeButton","dismissible","unstyled","invert","pauseWhenPageIsHidden","gap","theme","autoWiggleOnUpdate","richColors","enableStacking","stackGap","allowFontScaling"],"sourceRoot":"../../../src","sources":["toast/constants.ts"],"mappings":";;;;;;AAQA,IAAAA,OAAA,GAAAC,OAAA;AARA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAUA;AACO,MAAMC,sBAAsB,GAAAC,OAAA,CAAAD,sBAAA,GAAG,EAAE;AACjC,MAAME,qBAAqB,GAAAD,OAAA,CAAAC,qBAAA,GAAG,EAAE;AAChC,MAAMC,qBAAqB,GAAAF,OAAA,CAAAE,qBAAA,GAAG,EAAE;AACvC;AACO,MAAMC,iBAAiB,GAAAH,OAAA,CAAAG,iBAAA,GAAG,GAAG;;AAEpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,mBAAmB,GAAAJ,OAAA,CAAAI,mBAAA,GAAG,GAAG,GAAGC,aAAK,CAACC,EAAE,GAAG,CAAC;;AAErD;AACO,MAAMC,2BAA2B,GAAAP,OAAA,CAAAO,2BAAA,GAAG,GAAG;AACvC,MAAMC,2BAA2B,GAAAR,OAAA,CAAAQ,2BAAA,GAAG,GAAG;AAEvC,MAAMC,aAmBZ,GAAAT,OAAA,CAAAS,aAAA,GAAG;EACFC,QAAQ,EAAE,IAAI;EACdC,QAAQ,EAAE,eAAe;EACzB;AACF;AACA;AACA;AACA;EACEC,MAAM,EAAE,CAAC;EACTC,uBAAuB,EAAE,MAAM;EAC/B;AACF;AACA;AACA;AACA;EACEC,OAAO,EAAEC,SAAS;EAClBC,aAAa,EAAE,CAAC;EAChBC,WAAW,EAAE,KAAK;EAClBC,WAAW,EAAE,IAAI;EACjBC,QAAQ,EAAE,KAAK;EACfC,MAAM,EAAE,KAAK;EACbC,qBAAqB,EAAE,IAAI;EAC3BC,GAAG,EAAE,CAAC;EACNC,KAAK,EAAE,QAAQ;EACfC,kBAAkB,EAAE,OAAO;EAC3BC,UAAU,EAAE,KAAK;EACjBC,cAAc,EAAE,KAAK;EACrBC,QAAQ,EAAE,CAAC;EACXC,gBAAgB,EAAE;AACpB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_tokens","require","ESTIMATED_TOAST_HEIGHT","exports","CLOSE_BUTTON_HIT_AREA","OUTSIDE_PRESS_PADDING","MIN_STACK_SCALE_X","TOAST_MAX_ROW_WIDTH","space","lg","ENTERING_ANIMATION_DURATION","STACKING_ANIMATION_DURATION","toastDefaults","duration","position","offset","swipeToDismissDirection","variant","undefined","visibleToasts","closeButton","dismissible","unstyled","invert","pauseWhenPageIsHidden","gap","theme","autoWiggleOnUpdate","richColors","enableStacking","stackGap","allowFontScaling"],"sourceRoot":"../../../src","sources":["toast/constants.ts"],"mappings":";;;;;;AAQA,IAAAA,OAAA,GAAAC,OAAA;AARA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAUA;AACO,MAAMC,sBAAsB,GAAAC,OAAA,CAAAD,sBAAA,GAAG,EAAE;AACjC,MAAME,qBAAqB,GAAAD,OAAA,CAAAC,qBAAA,GAAG,EAAE;AAChC,MAAMC,qBAAqB,GAAAF,OAAA,CAAAE,qBAAA,GAAG,EAAE;AACvC;AACO,MAAMC,iBAAiB,GAAAH,OAAA,CAAAG,iBAAA,GAAG,GAAG;;AAEpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,mBAAmB,GAAAJ,OAAA,CAAAI,mBAAA,GAAG,GAAG,GAAGC,aAAK,CAACC,EAAE,GAAG,CAAC;;AAErD;AACO,MAAMC,2BAA2B,GAAAP,OAAA,CAAAO,2BAAA,GAAG,GAAG;AACvC,MAAMC,2BAA2B,GAAAR,OAAA,CAAAQ,2BAAA,GAAG,GAAG;AAEvC,MAAMC,aAmBZ,GAAAT,OAAA,CAAAS,aAAA,GAAG;EACFC,QAAQ,EAAE,IAAI;EACdC,QAAQ,EAAE,eAAe;EACzB;AACF;AACA;AACA;AACA;EACEC,MAAM,EAAE,CAAC;EACTC,uBAAuB,EAAE,MAAM;EAC/B;AACF;AACA;AACA;AACA;EACEC,OAAO,EAAEC,SAAS;EAClBC,aAAa,EAAE,CAAC;EAChBC,WAAW,EAAE,KAAK;EAClBC,WAAW,EAAE,IAAI;EACjBC,QAAQ,EAAE,KAAK;EACfC,MAAM,EAAE,KAAK;EACbC,qBAAqB,EAAE,IAAI;EAC3BC,GAAG,EAAE,CAAC;EACNC,KAAK,EAAE,QAAQ;EACfC,kBAAkB,EAAE,OAAO;EAC3BC,UAAU,EAAE,KAAK;EACjB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,cAAc,EAAE,IAAI;EACpBC,QAAQ,EAAE,CAAC;EACXC,gBAAgB,EAAE;AACpB,CAAC","ignoreList":[]}
@@ -39,6 +39,7 @@ class ToastStore {
39
39
  pendingPromises = new Set();
40
40
  collapseCooldown = false;
41
41
  collapseCooldownTimeout = null;
42
+ expansionHold = null;
42
43
  subscribe = callback => {
43
44
  this.subscribers.add(callback);
44
45
  return () => {
@@ -53,6 +54,23 @@ class ToastStore {
53
54
  setConfig = config => {
54
55
  this.config = config;
55
56
  };
57
+
58
+ /**
59
+ * Something outside the store can HOLD an expanded stack open — on web, a pointer
60
+ * resting on it. Registered by the platform trigger (`use-stack-hover`) so this
61
+ * module stays pure JS with no DOM and no platform branch; native registers
62
+ * nothing and the predicate stays `null`.
63
+ *
64
+ * It is asked at DECISION time rather than tracked as state on purpose: a row can
65
+ * stop being under the pointer with no event at all — rows unmount under the
66
+ * cursor and move under a stationary one, and neither fires `pointerleave` —
67
+ * so any cached boolean goes stale. Nothing renders from this, so it is
68
+ * deliberately not part of the snapshot.
69
+ */
70
+ setExpansionHold = hold => {
71
+ this.expansionHold = hold;
72
+ };
73
+ isHeldOpen = () => this.expansionHold?.() === true;
56
74
  notify = () => {
57
75
  this.subscribers.forEach(callback => callback());
58
76
  };
@@ -245,7 +263,27 @@ class ToastStore {
245
263
  ...this.state.toastRefs
246
264
  };
247
265
  delete updatedRefs[id];
248
- const shouldAutoCollapse = filteredToasts.length <= 1 && this.state.isExpanded;
266
+
267
+ /**
268
+ * An expanded stack collapses itself once a single row is left, because
269
+ * "expanded" then means nothing visually — a lone row resolves to the SAME
270
+ * offset and scale either way (`toast-position-utils.test.ts` pins that) — while
271
+ * `isExpanded` keeps every timer paused, so staying expanded would leave that
272
+ * last toast on screen forever with no visible reason. Inherited from
273
+ * sonner-native and kept deliberately: on native it is invisible and it is the
274
+ * only thing that stops the last row hanging.
275
+ *
276
+ * UNLESS something is holding the stack open. On web that is a pointer resting
277
+ * on it, and collapsing under the cursor would resume the timers hover had just
278
+ * paused — the toast would then expire while the user is reading it, which is
279
+ * exactly what hover exists to prevent.
280
+ *
281
+ * An EMPTY stack always resets, hold or no hold: it no longer exists to be held,
282
+ * and once the rows unmount no `pointerleave` will ever arrive to release it.
283
+ */
284
+ const isEmpty = filteredToasts.length === 0;
285
+ const heldOpen = !isEmpty && this.isHeldOpen();
286
+ const shouldAutoCollapse = filteredToasts.length <= 1 && this.state.isExpanded && !heldOpen;
249
287
  const updatedIndex = this.cloneIndex();
250
288
  updatedIndex.delete(id);
251
289
  this.state = {
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_constants","_toastComparator","_toastTimers","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","COLLAPSE_COOLDOWN","ToastStore","state","toasts","toastsById","Map","toastsCounter","toastRefs","shouldShowOverlay","toastHeights","isExpanded","subscribers","Set","config","timers","ToastTimerRegistry","hideOverlayTimeout","pendingPromises","collapseCooldown","collapseCooldownTimeout","subscribe","callback","add","delete","getSnapshot","setConfig","notify","forEach","cloneIndex","resolveDuration","duration","toastDefaults","scheduleAutoClose","id","start","onComplete","dismissToast","pauseTimer","pause","resumeTimer","resume","pauseAllTimers","pauseAll","resumeAllTimers","resumeAll","handlePromise","toast","promiseOptions","title","promise","addToast","variant","undefined","styles","success","error","options","providedId","length","nextCounter","newToast","numberOfToasts","index","orderedToastIds","existingToast","shouldWiggle","autoWiggleOnUpdate","areToastsEqual","wiggleToast","updatedToasts","map","currentToast","updatedIndex","updatedEntry","find","newToasts","newToastRefs","createRef","visibleToasts","newIndex","updatedHeights","heightsChanged","removedToast","shift","clear","clearTimeout","origin","clearAll","onDismiss","onAutoClose","scheduleHideOverlay","toastForCallback","filteredToasts","filter","updatedRefs","shouldAutoCollapse","setTimeout","ENTERING_ANIMATION_DURATION","current","wiggle","getToastRef","setToastHeight","height","expand","collapse","toggleExpand","toastStore","exports"],"sourceRoot":"../../../src","sources":["toast/toast-store.ts"],"mappings":";;;;;;AAUA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAAoD,SAAAD,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,CAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAbpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAcA;AACA,MAAMkB,iBAAiB,GAAG,GAAG;AAE7B,MAAMC,UAAU,CAAC;EACPC,KAAK,GAAoB;IAC/BC,MAAM,EAAE,EAAE;IACVC,UAAU,EAAE,IAAIC,GAAG,CAAC,CAAC;IACrBC,aAAa,EAAE,CAAC;IAChBC,SAAS,EAAE,CAAC,CAAC;IACbC,iBAAiB,EAAE,KAAK;IACxBC,YAAY,EAAE,CAAC,CAAC;IAChBC,UAAU,EAAE;EACd,CAAC;EAEOC,WAAW,GAAG,IAAIC,GAAG,CAAa,CAAC;EACnCC,MAAM,GAAqB,CAAC,CAAC;EAC7BC,MAAM,GAAG,IAAIC,+BAAkB,CAAC,CAAC;EACjCC,kBAAkB,GAAyC,IAAI;EAC/DC,eAAe,GAAG,IAAIL,GAAG,CAAkB,CAAC;EAC5CM,gBAAgB,GAAG,KAAK;EACxBC,uBAAuB,GAAyC,IAAI;EAE5EC,SAAS,GAAIC,QAAoB,IAAK;IACpC,IAAI,CAACV,WAAW,CAACW,GAAG,CAACD,QAAQ,CAAC;IAC9B,OAAO,MAAM;MACX,IAAI,CAACV,WAAW,CAACY,MAAM,CAACF,QAAQ,CAAC;IACnC,CAAC;EACH,CAAC;;EAED;EACAG,WAAW,GAAGA,CAAA,KAAuB;IACnC,OAAO,IAAI,CAACtB,KAAK;EACnB,CAAC;EAEDuB,SAAS,GAAIZ,MAAwB,IAAK;IACxC,IAAI,CAACA,MAAM,GAAGA,MAAM;EACtB,CAAC;EAEOa,MAAM,GAAGA,CAAA,KAAM;IACrB,IAAI,CAACf,WAAW,CAACgB,OAAO,CAAEN,QAAQ,IAAKA,QAAQ,CAAC,CAAC,CAAC;EACpD,CAAC;EAEOO,UAAU,GAAGA,CAAA,KAAwC;IAC3D,OAAO,IAAIvB,GAAG,CAAC,IAAI,CAACH,KAAK,CAACE,UAAU,CAAC;EACvC,CAAC;EAEOyB,eAAe,GAAIC,QAA4B,IAAa;IAClE,OAAOA,QAAQ,IAAI,IAAI,CAACjB,MAAM,CAACiB,QAAQ,IAAIC,wBAAa,CAACD,QAAQ;EACnE,CAAC;EAEOE,iBAAiB,GAAGA,CAACC,EAAmB,EAAEH,QAAgB,KAAK;IACrE,IAAI,CAAChB,MAAM,CAACoB,KAAK,CAAC;MAChBD,EAAE;MACFH,QAAQ;MACRK,UAAU,EAAEA,CAAA,KAAM;QAChB,IAAI,CAACC,YAAY,CAACH,EAAE,EAAE,aAAa,CAAC;MACtC;IACF,CAAC,CAAC;EACJ,CAAC;EAEDI,UAAU,GAAIJ,EAAmB,IAAK;IACpC,IAAI,CAACnB,MAAM,CAACwB,KAAK,CAACL,EAAE,CAAC;EACvB,CAAC;EAEDM,WAAW,GAAIN,EAAmB,IAAK;IACrC,IAAI,CAACnB,MAAM,CAAC0B,MAAM,CAACP,EAAE,CAAC;EACxB,CAAC;EAEDQ,cAAc,GAAGA,CAAA,KAAM;IACrB,IAAI,CAAC3B,MAAM,CAAC4B,QAAQ,CAAC,CAAC;EACxB,CAAC;EAEDC,eAAe,GAAGA,CAAA,KAAM;IACtB,IAAI,CAAC7B,MAAM,CAAC8B,SAAS,CAAC,CAAC;EACzB,CAAC;EAEOC,aAAa,GAAG,MAAOC,KAAiB,IAAK;IACnD,MAAM;MAAEb,EAAE;MAAEc;IAAe,CAAC,GAAGD,KAAK;IAEpC,IAAI,CAACC,cAAc,IAAI,IAAI,CAAC9B,eAAe,CAACzB,GAAG,CAACyC,EAAE,CAAC,EAAE;MACnD;IACF;IAEA,IAAI,CAAChB,eAAe,CAACK,GAAG,CAACW,EAAE,CAAC;IAE5B,IAAI;MACF;MACA,MAAMe,KAAK,GAAG,MAAMD,cAAc,CAACE,OAAO;MAE1C,IAAI,CAAC,IAAI,CAAC/C,KAAK,CAACE,UAAU,CAACZ,GAAG,CAACyC,EAAE,CAAC,EAAE;MAEpC,IAAI,CAACiB,QAAQ,CAAC;QACZF,KAAK;QACLf,EAAE;QACFkB,OAAO,EAAE,SAAS;QAClBJ,cAAc,EAAEK,SAAS;QACzBtB,QAAQ,EAAEgB,KAAK,CAAChB,QAAQ;QACxBuB,MAAM,EAAEN,cAAc,CAACM,MAAM,EAAEC;MACjC,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOC,KAAK,EAAE;MACd,IAAI,CAAC,IAAI,CAACrD,KAAK,CAACE,UAAU,CAACZ,GAAG,CAACyC,EAAE,CAAC,EAAE;MAEpC,IAAI,CAACiB,QAAQ,CAAC;QACZF,KAAK,EACH,OAAOD,cAAc,CAACQ,KAAK,KAAK,UAAU,GACtCR,cAAc,CAACQ,KAAK,CAACA,KAAK,CAAC,GAC3BR,cAAc,CAACQ,KAAK;QAC1BtB,EAAE;QACFkB,OAAO,EAAE,OAAO;QAChBJ,cAAc,EAAEK,SAAS;QACzBtB,QAAQ,EAAEgB,KAAK,CAAChB,QAAQ;QACxBuB,MAAM,EAAEN,cAAc,CAACM,MAAM,EAAEE;MACjC,CAAC,CAAC;IACJ,CAAC,SAAS;MACR,IAAI,CAACtC,eAAe,CAACM,MAAM,CAACU,EAAE,CAAC;IACjC;EACF,CAAC;EAEDiB,QAAQ,GACNM,OAKC,IACmB;IACpB,MAAMC,UAAU,GACd,OAAOD,OAAO,CAACvB,EAAE,KAAK,QAAQ,IAC7B,OAAOuB,OAAO,CAACvB,EAAE,KAAK,QAAQ,IAAIuB,OAAO,CAACvB,EAAE,CAACyB,MAAM,GAAG,CAAE,GACrDF,OAAO,CAACvB,EAAE,GACVmB,SAAS;IAEf,MAAMnB,EAAmB,GAAGwB,UAAU,IAAI,IAAI,CAACvD,KAAK,CAACI,aAAa;IAClE,MAAMqD,WAAW,GACfF,UAAU,KAAKL,SAAS,GACpB,IAAI,CAAClD,KAAK,CAACI,aAAa,GAAG,CAAC,GAC5B,IAAI,CAACJ,KAAK,CAACI,aAAa;IAE9B,MAAMwB,QAAQ,GAAG,IAAI,CAACD,eAAe,CAAC2B,OAAO,CAAC1B,QAAQ,CAAC;IAEvD,MAAM8B,QAAoB,GAAG;MAC3B,GAAGJ,OAAO;MACVvB,EAAE;MACFkB,OAAO,EAAEK,OAAO,CAACL,OAAO,IAAIpB,wBAAa,CAACoB,OAAO;MACjDrB,QAAQ;MACR;MACA+B,cAAc,EAAE,CAAC;MACjBC,KAAK,EAAE,CAAC;MACRC,eAAe,EAAE;IACnB,CAAC;IAED,MAAMC,aAAa,GAAG,IAAI,CAAC9D,KAAK,CAACE,UAAU,CAACX,GAAG,CAACwC,EAAE,CAAC;IAEnD,IAAI+B,aAAa,IAAIP,UAAU,KAAKL,SAAS,EAAE;MAC7C,MAAMa,YAAY,GAChB,IAAI,CAACpD,MAAM,CAACqD,kBAAkB,KAAK,QAAQ,IAC1C,IAAI,CAACrD,MAAM,CAACqD,kBAAkB,KAAK,cAAc,IAChD,CAAC,IAAAC,+BAAc,EAACP,QAAQ,EAAEI,aAAa,CAAE;MAE7C,IAAIC,YAAY,EAAE;QAChB,IAAI,CAACG,WAAW,CAACX,UAAU,CAAC;MAC9B;MAEA,MAAMY,aAAa,GAAG,IAAI,CAACnE,KAAK,CAACC,MAAM,CAACmE,GAAG,CAAEC,YAAY,IACvDA,YAAY,CAACtC,EAAE,KAAKwB,UAAU,GAC1B;QAAE,GAAGc,YAAY;QAAE,GAAGX;MAAS,CAAC,GAChCW,YACN,CAAC;;MAED;MACA,IAAI,CAACX,QAAQ,CAACb,cAAc,EAAE;QAC5B,IAAI,CAACf,iBAAiB,CAACC,EAAE,EAAEH,QAAQ,CAAC;MACtC;MAEA,MAAM0C,YAAY,GAAG,IAAI,CAAC5C,UAAU,CAAC,CAAC;MACtC,MAAM6C,YAAY,GAAGJ,aAAa,CAACK,IAAI,CAAE5F,CAAC,IAAKA,CAAC,CAACmD,EAAE,KAAKwB,UAAU,CAAC;MACnE,IAAIgB,YAAY,EAAE;QAChBD,YAAY,CAAC9E,GAAG,CAAC+D,UAAU,EAAEgB,YAAY,CAAC;MAC5C;MAEA,IAAI,CAACvE,KAAK,GAAG;QACX,GAAG,IAAI,CAACA,KAAK;QACbC,MAAM,EAAEkE,aAAa;QACrBjE,UAAU,EAAEoE,YAAY;QACxBhE,iBAAiB,EAAE;MACrB,CAAC;IACH,CAAC,MAAM;MACL,MAAMmE,SAAuB,GAAG,CAAC,GAAG,IAAI,CAACzE,KAAK,CAACC,MAAM,EAAEyD,QAAQ,CAAC;MAEhE,MAAMgB,YAAY,GAAG;QAAE,GAAG,IAAI,CAAC1E,KAAK,CAACK;MAAU,CAAC;MAChD,IAAI,EAAE0B,EAAE,IAAI2C,YAAY,CAAC,EAAE;QACzBA,YAAY,CAAC3C,EAAE,CAAC,gBAAG1D,KAAK,CAACsG,SAAS,CAAW,CAAC;MAChD;MAEA,MAAMC,aAAa,GACjB,IAAI,CAACjE,MAAM,CAACiE,aAAa,IAAI/C,wBAAa,CAAC+C,aAAa;MAC1D,MAAMC,QAAQ,GAAG,IAAI,CAACnD,UAAU,CAAC,CAAC;MAClCmD,QAAQ,CAACrF,GAAG,CAACuC,EAAE,EAAE2B,QAAQ,CAAC;MAC1B,MAAMoB,cAAc,GAAG;QAAE,GAAG,IAAI,CAAC9E,KAAK,CAACO;MAAa,CAAC;MACrD,IAAIwE,cAAc,GAAG,KAAK;MAE1B,IAAIN,SAAS,CAACjB,MAAM,GAAGoB,aAAa,EAAE;QACpC,MAAMI,YAAY,GAAGP,SAAS,CAACQ,KAAK,CAAC,CAAC;QACtC,IAAID,YAAY,EAAE;UAChB,IAAI,CAACpE,MAAM,CAACsE,KAAK,CAACF,YAAY,CAACjD,EAAE,CAAC;UAClC8C,QAAQ,CAACxD,MAAM,CAAC2D,YAAY,CAACjD,EAAE,CAAC;UAChC,OAAO2C,YAAY,CAACM,YAAY,CAACjD,EAAE,CAAC;UACpC,IAAIiD,YAAY,CAACjD,EAAE,IAAI+C,cAAc,EAAE;YACrC,OAAOA,cAAc,CAACE,YAAY,CAACjD,EAAE,CAAC;YACtCgD,cAAc,GAAG,IAAI;UACvB;QACF;MACF;MAEA,IAAI,CAAC/E,KAAK,GAAG;QACX,GAAG,IAAI,CAACA,KAAK;QACbC,MAAM,EAAEwE,SAAS;QACjBvE,UAAU,EAAE2E,QAAQ;QACpBxE,SAAS,EAAEqE,YAAY;QACvBnE,YAAY,EAAEwE,cAAc,GAAGD,cAAc,GAAG,IAAI,CAAC9E,KAAK,CAACO,YAAY;QACvEH,aAAa,EAAEqD,WAAW;QAC1BnD,iBAAiB,EAAE;MACrB,CAAC;MAED,IAAIoD,QAAQ,CAACb,cAAc,EAAE;QAC3B;QACA,KAAK,IAAI,CAACF,aAAa,CAACe,QAAQ,CAAC;MACnC,CAAC,MAAM;QACL,IAAI,CAAC5B,iBAAiB,CAACC,EAAE,EAAEH,QAAQ,CAAC;MACtC;IACF;IAEA,IAAI,IAAI,CAACd,kBAAkB,EAAE;MAC3BqE,YAAY,CAAC,IAAI,CAACrE,kBAAkB,CAAC;MACrC,IAAI,CAACA,kBAAkB,GAAG,IAAI;IAChC;IAEA,IAAI,CAACU,MAAM,CAAC,CAAC;IACb,OAAOO,EAAE;EACX,CAAC;;EAED;EACAG,YAAY,GAAGA,CACbH,EAA+B,EAC/BqD,MAAoC,KACJ;IAChC,IAAIrD,EAAE,IAAI,IAAI,EAAE;MACd,IAAI,CAACnB,MAAM,CAACyE,QAAQ,CAAC,CAAC;MACtB,IAAI,CAACrF,KAAK,CAACC,MAAM,CAACwB,OAAO,CAAE4C,YAAY,IAAK;QAC1C,IAAIe,MAAM,KAAK,WAAW,EAAE;UAC1Bf,YAAY,CAACiB,SAAS,GAAGjB,YAAY,CAACtC,EAAE,CAAC;QAC3C,CAAC,MAAM;UACLsC,YAAY,CAACkB,WAAW,GAAGlB,YAAY,CAACtC,EAAE,CAAC;QAC7C;MACF,CAAC,CAAC;MAEF,IAAI,CAAC/B,KAAK,GAAG;QACX,GAAG,IAAI,CAACA,KAAK;QACbC,MAAM,EAAE,EAAE;QACVC,UAAU,EAAE,IAAIC,GAAG,CAAC,CAAC;QACrBC,aAAa,EAAE,CAAC;QAChBC,SAAS,EAAE,CAAC,CAAC;QACbE,YAAY,EAAE,CAAC,CAAC;QAChBC,UAAU,EAAE;MACd,CAAC;MACD,IAAI,CAACgF,mBAAmB,CAAC,CAAC;MAC1B,IAAI,CAAChE,MAAM,CAAC,CAAC;MACb,OAAO0B,SAAS;IAClB;IAEA,IAAI,CAACtC,MAAM,CAACsE,KAAK,CAACnD,EAAE,CAAC;IAErB,MAAM0D,gBAAgB,GAAG,IAAI,CAACzF,KAAK,CAACE,UAAU,CAACX,GAAG,CAACwC,EAAE,CAAC;IAEtD,MAAM2D,cAAc,GAAG,IAAI,CAAC1F,KAAK,CAACC,MAAM,CAAC0F,MAAM,CAC5CtB,YAAY,IAAKA,YAAY,CAACtC,EAAE,KAAKA,EACxC,CAAC;IAED,MAAM+C,cAAc,GAAG;MAAE,GAAG,IAAI,CAAC9E,KAAK,CAACO;IAAa,CAAC;IACrD,OAAOuE,cAAc,CAAC/C,EAAE,CAAC;IAEzB,MAAM6D,WAAW,GAAG;MAAE,GAAG,IAAI,CAAC5F,KAAK,CAACK;IAAU,CAAC;IAC/C,OAAOuF,WAAW,CAAC7D,EAAE,CAAC;IAEtB,MAAM8D,kBAAkB,GACtBH,cAAc,CAAClC,MAAM,IAAI,CAAC,IAAI,IAAI,CAACxD,KAAK,CAACQ,UAAU;IAErD,MAAM8D,YAAY,GAAG,IAAI,CAAC5C,UAAU,CAAC,CAAC;IACtC4C,YAAY,CAACjD,MAAM,CAACU,EAAE,CAAC;IAEvB,IAAI,CAAC/B,KAAK,GAAG;MACX,GAAG,IAAI,CAACA,KAAK;MACbC,MAAM,EAAEyF,cAAc;MACtBxF,UAAU,EAAEoE,YAAY;MACxBjE,SAAS,EAAEuF,WAAW;MACtBrF,YAAY,EAAEuE,cAAc;MAC5BtE,UAAU,EAAEqF,kBAAkB,GAAG,KAAK,GAAG,IAAI,CAAC7F,KAAK,CAACQ;IACtD,CAAC;IAED,IAAIqF,kBAAkB,EAAE;MACtB,IAAI,CAACjF,MAAM,CAAC8B,SAAS,CAAC,CAAC;IACzB;IAEA,IAAI0C,MAAM,KAAK,WAAW,EAAE;MAC1BK,gBAAgB,EAAEH,SAAS,GAAGvD,EAAE,CAAC;IACnC,CAAC,MAAM;MACL0D,gBAAgB,EAAEF,WAAW,GAAGxD,EAAE,CAAC;IACrC;IAEA,IAAI2D,cAAc,CAAClC,MAAM,KAAK,CAAC,EAAE;MAC/B,IAAI,CAACgC,mBAAmB,CAAC,CAAC;IAC5B;IAEA,IAAI,CAAChE,MAAM,CAAC,CAAC;IACb,OAAOO,EAAE;EACX,CAAC;;EAED;EACQyD,mBAAmB,GAAGA,CAAA,KAAM;IAClC,IAAI,IAAI,CAAC1E,kBAAkB,EAAE;MAC3BqE,YAAY,CAAC,IAAI,CAACrE,kBAAkB,CAAC;IACvC;IAEA,IAAI,CAACA,kBAAkB,GAAGgF,UAAU,CAAC,MAAM;MACzC,IAAI,CAAC9F,KAAK,GAAG;QACX,GAAG,IAAI,CAACA,KAAK;QACbM,iBAAiB,EAAE;MACrB,CAAC;MACD,IAAI,CAACQ,kBAAkB,GAAG,IAAI;MAC9B,IAAI,CAACU,MAAM,CAAC,CAAC;IACf,CAAC,EAAEuE,sCAA2B,CAAC;EACjC,CAAC;EAED7B,WAAW,GAAInC,EAAmB,IAAK;IACrC,MAAMa,KAAK,GAAG,IAAI,CAAC5C,KAAK,CAACE,UAAU,CAACX,GAAG,CAACwC,EAAE,CAAC;IAC3C,IAAI,CAACa,KAAK,EAAE;MACV;IACF;IAEA,IAAI,CAAC5C,KAAK,CAACK,SAAS,CAAC0B,EAAE,CAAC,EAAEiE,OAAO,EAAEC,MAAM,CAAC,CAAC;;IAE3C;IACA;IACA,IAAI,CAACrD,KAAK,CAACC,cAAc,EAAE;MACzB,IAAI,CAACf,iBAAiB,CAACC,EAAE,EAAE,IAAI,CAACJ,eAAe,CAACiB,KAAK,CAAChB,QAAQ,CAAC,CAAC;IAClE;EACF,CAAC;EAEDsE,WAAW,GACTnE,EAAmB,IAC8B;IACjD,OAAO,IAAI,CAAC/B,KAAK,CAACK,SAAS,CAAC0B,EAAE,CAAC;EACjC,CAAC;EAEDoE,cAAc,GAAGA,CAACpE,EAAmB,EAAEqE,MAAc,KAAK;IACxD,IAAI,IAAI,CAACpG,KAAK,CAACO,YAAY,CAACwB,EAAE,CAAC,KAAKqE,MAAM,EAAE;IAC5C;IACA,IAAI,CAACpG,KAAK,GAAG;MACX,GAAG,IAAI,CAACA,KAAK;MACbO,YAAY,EAAE;QACZ,GAAG,IAAI,CAACP,KAAK,CAACO,YAAY;QAC1B,CAACwB,EAAE,GAAGqE;MACR;IACF,CAAC;IACD,IAAI,CAAC5E,MAAM,CAAC,CAAC;EACf,CAAC;EAED6E,MAAM,GAAGA,CAAA,KAAM;IACb,IAAI,CAACrG,KAAK,GAAG;MACX,GAAG,IAAI,CAACA,KAAK;MACbQ,UAAU,EAAE;IACd,CAAC;IACD,IAAI,CAACI,MAAM,CAAC4B,QAAQ,CAAC,CAAC;IACtB,IAAI,CAAChB,MAAM,CAAC,CAAC;EACf,CAAC;EAED8E,QAAQ,GAAGA,CAAA,KAAM;IACf,IAAI,CAACtG,KAAK,GAAG;MACX,GAAG,IAAI,CAACA,KAAK;MACbQ,UAAU,EAAE;IACd,CAAC;IAED,IAAI,CAACQ,gBAAgB,GAAG,IAAI;IAC5B,IAAI,IAAI,CAACC,uBAAuB,EAAE;MAChCkE,YAAY,CAAC,IAAI,CAAClE,uBAAuB,CAAC;IAC5C;IACA,IAAI,CAACA,uBAAuB,GAAG6E,UAAU,CAAC,MAAM;MAC9C,IAAI,CAAC9E,gBAAgB,GAAG,KAAK;MAC7B,IAAI,CAACC,uBAAuB,GAAG,IAAI;IACrC,CAAC,EAAEnB,iBAAiB,CAAC;IAErB,IAAI,CAACc,MAAM,CAAC8B,SAAS,CAAC,CAAC;IACvB,IAAI,CAAClB,MAAM,CAAC,CAAC;EACf,CAAC;EAED+E,YAAY,GAAGA,CAAA,KAAM;IACnB,IAAI,CAAC,IAAI,CAACvG,KAAK,CAACQ,UAAU,IAAI,IAAI,CAACQ,gBAAgB,EAAE;MACnD;IACF;IAEA,IAAI,IAAI,CAAChB,KAAK,CAACQ,UAAU,EAAE;MACzB,IAAI,CAAC8F,QAAQ,CAAC,CAAC;IACjB,CAAC,MAAM;MACL,IAAI,CAACD,MAAM,CAAC,CAAC;IACf;EACF,CAAC;AACH;AAEO,MAAMG,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG,IAAIzG,UAAU,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_constants","_toastComparator","_toastTimers","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","COLLAPSE_COOLDOWN","ToastStore","state","toasts","toastsById","Map","toastsCounter","toastRefs","shouldShowOverlay","toastHeights","isExpanded","subscribers","Set","config","timers","ToastTimerRegistry","hideOverlayTimeout","pendingPromises","collapseCooldown","collapseCooldownTimeout","expansionHold","subscribe","callback","add","delete","getSnapshot","setConfig","setExpansionHold","hold","isHeldOpen","notify","forEach","cloneIndex","resolveDuration","duration","toastDefaults","scheduleAutoClose","id","start","onComplete","dismissToast","pauseTimer","pause","resumeTimer","resume","pauseAllTimers","pauseAll","resumeAllTimers","resumeAll","handlePromise","toast","promiseOptions","title","promise","addToast","variant","undefined","styles","success","error","options","providedId","length","nextCounter","newToast","numberOfToasts","index","orderedToastIds","existingToast","shouldWiggle","autoWiggleOnUpdate","areToastsEqual","wiggleToast","updatedToasts","map","currentToast","updatedIndex","updatedEntry","find","newToasts","newToastRefs","createRef","visibleToasts","newIndex","updatedHeights","heightsChanged","removedToast","shift","clear","clearTimeout","origin","clearAll","onDismiss","onAutoClose","scheduleHideOverlay","toastForCallback","filteredToasts","filter","updatedRefs","isEmpty","heldOpen","shouldAutoCollapse","setTimeout","ENTERING_ANIMATION_DURATION","current","wiggle","getToastRef","setToastHeight","height","expand","collapse","toggleExpand","toastStore","exports"],"sourceRoot":"../../../src","sources":["toast/toast-store.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.HOVER_LEAVE_GRACE = void 0;
7
+ exports.isStackHovered = isStackHovered;
8
+ exports.resetStackHoverForTests = resetStackHoverForTests;
9
+ exports.useStackHover = useStackHover;
10
+ var _react = require("react");
11
+ var _toastStore = require("./toast-store.js");
12
+ /**
13
+ * Bloom-original — WEB/default. `use-stack-hover.native.ts` is the native no-op,
14
+ * filename-resolved by Metro exactly as `ToastHost.native.tsx` is, so `toast/`
15
+ * stays one universal engine with no `index.web` fork.
16
+ *
17
+ * sonner expands its stack on HOVER; sonner-native only has press, because a phone
18
+ * has no pointer. Bloom needs both: press is the touch and native affordance, hover
19
+ * is what a desktop user expects, and a touch-capable web device must not get a
20
+ * phantom hover from its own taps.
21
+ *
22
+ * THIS IS A TRIGGER, NOT A SECOND MECHANISM. It drives the store's existing
23
+ * `expand`/`collapse`, which already pause and resume the auto-close timers
24
+ * (`ToastStore.expand` calls `timers.pauseAll()`, `collapse` calls `resumeAll()`),
25
+ * so hovering to read a toast cannot let it expire under the cursor — no new
26
+ * pausing path, no new store state. With stacking OFF there is nothing to expand,
27
+ * so the pointer pauses the timers directly instead: the reason sonner pauses is
28
+ * that the pointer is over the toast, which has nothing to do with stacking.
29
+ *
30
+ * TWO THINGS ARE LOAD-BEARING:
31
+ *
32
+ * - `pointerType === 'mouse'`. Touch fires `pointerenter` before `pointerdown`
33
+ * and `pointerleave` after `pointerup` (the pointer ceases to exist), so
34
+ * without this guard every TAP on a touch-capable web device would expand then
35
+ * collapse the stack while the press toggle fired too — three handlers fighting
36
+ * over one tap. Hover is additive: pens and touch fall through to press.
37
+ * - THE LEAVE IS DEFERRED BY A FRAME-ISH GRACE PERIOD, and any enter cancels it.
38
+ * Rows are separate absolutely-positioned boxes with `gap` between them once
39
+ * expanded, so moving the pointer from one row to the next leaves the first
40
+ * before entering the second. Collapsing on that would snap the stack shut and
41
+ * reopen it on whatever row ends up under the pointer — a jitter loop, plus a
42
+ * resume/pause pair per crossing that re-banks each timer's remaining time.
43
+ *
44
+ * The state is module-level on purpose: there is ONE stack per document, the same
45
+ * reason `toastStore` is a module singleton. It is written and read only inside
46
+ * event handlers — never in render — so the React Compiler has nothing to freeze.
47
+ */
48
+
49
+ /**
50
+ * How long a leave waits for a neighbouring row to claim the pointer. One frame is
51
+ * enough for the same-tick leave/enter pair a row crossing produces; this is a
52
+ * little more so a slow frame cannot flash the stack shut. Exported so the suite
53
+ * asserts against the real value rather than a copy of it.
54
+ */
55
+ const HOVER_LEAVE_GRACE = exports.HOVER_LEAVE_GRACE = 80;
56
+
57
+ /** The portal root every toast row lives under — see `portal/index.web.tsx`. */
58
+ const PORTAL_ROOT_ID = 'bloom-portal-root';
59
+ let hovered = false;
60
+ let leaveTimeout = null;
61
+ const isMouse = event => event.nativeEvent.pointerType === 'mouse';
62
+ const cancelPendingLeave = () => {
63
+ if (leaveTimeout !== null) {
64
+ clearTimeout(leaveTimeout);
65
+ leaveTimeout = null;
66
+ }
67
+ };
68
+
69
+ /**
70
+ * Whether the pointer is over the stack RIGHT NOW.
71
+ *
72
+ * Two sources, and both are load-bearing:
73
+ *
74
+ * - the `hovered` latch answers "a mouse entered and has not left", which is the
75
+ * only thing available where there is no DOM (jest runs on `testEnvironment:
76
+ * 'node'`), and is a cheap early-out.
77
+ * - the live `:hover` query answers "a row is under the pointer", which the latch
78
+ * CANNOT: a row can stop being hovered with no event whatsoever. Measured — a row
79
+ * culled by `visibleToasts` under a stationary cursor fires no `pointerleave`,
80
+ * `pointerout` or `mouseleave` at all, and the restack then slides the remaining
81
+ * rows out from under the pointer. A latch alone therefore sticks TRUE, which
82
+ * would disable the press toggle for the rest of the session and suppress every
83
+ * later auto-collapse.
84
+ *
85
+ * Requiring both means a stale latch is corrected by the DOM and a stray DOM match
86
+ * (a pen, a touch) is rejected by the latch.
87
+ *
88
+ * COVERAGE, stated plainly: jest cannot see the DOM half at all
89
+ * (`testEnvironment: 'node'`), and a browser cannot isolate it either — its two
90
+ * consequences are a press toggle standing down (unreachable with a mouse, which
91
+ * always hovers what it presses) and a suppressed auto-collapse (which the deferred
92
+ * leave below independently corrects the moment any boundary event fires). Both
93
+ * halves are kept because each is measurably more accurate than the other alone, not
94
+ * because a test proves the composite.
95
+ *
96
+ * `ToastRow` asks so a press does not TOGGLE what hover already opened, and
97
+ * `toastStore` asks before auto-collapsing a stack down to its last row. The press
98
+ * still runs the toast's own `onPress`; only the expansion toggle steps aside.
99
+ */
100
+ function isStackHovered() {
101
+ return hovered && rowUnderPointer() !== false;
102
+ }
103
+
104
+ /**
105
+ * The live DOM answer, or `undefined` where there is no DOM to ask (jest runs on
106
+ * `testEnvironment: 'node'`). Deliberately tri-state: "unknowable" and "no" must not
107
+ * collapse into the same value, because the two callers want opposite defaults —
108
+ * `isStackHovered` trusts the latch when it cannot check, while the deferred leave
109
+ * only stands down on a positive "yes, still hovered".
110
+ */
111
+ function rowUnderPointer() {
112
+ if (typeof document === 'undefined') {
113
+ return undefined;
114
+ }
115
+ return document.querySelector(`#${PORTAL_ROOT_ID} [aria-live]:hover`) !== null;
116
+ }
117
+
118
+ /**
119
+ * A pointer resting on the stack HOLDS it open, so the store must not auto-collapse
120
+ * it out from under the cursor. Registered here rather than passed in because this
121
+ * file is the one that knows what hovering means; the store only knows that
122
+ * something says "not yet". Native's fork registers nothing.
123
+ */
124
+ _toastStore.toastStore.setExpansionHold(isStackHovered);
125
+ function useStackHover({
126
+ enableStacking
127
+ }) {
128
+ // Stable per outlet configuration: these land on the row box as props, and every
129
+ // row re-renders on each stack change.
130
+ return (0, _react.useMemo)(() => ({
131
+ onPointerEnter: event => {
132
+ if (!isMouse(event)) {
133
+ return;
134
+ }
135
+ cancelPendingLeave();
136
+ hovered = true;
137
+ if (enableStacking) {
138
+ // Pauses the timers as part of expanding.
139
+ _toastStore.toastStore.expand();
140
+ } else {
141
+ _toastStore.toastStore.pauseAllTimers();
142
+ }
143
+ },
144
+ onPointerLeave: event => {
145
+ if (!isMouse(event) || !hovered) {
146
+ return;
147
+ }
148
+ cancelPendingLeave();
149
+ leaveTimeout = setTimeout(() => {
150
+ leaveTimeout = null;
151
+ // The rows may have moved rather than the pointer: an expand, a collapse
152
+ // or a restack slides them under a stationary cursor without firing a
153
+ // single pointer event, so re-ask the DOM before acting on a leave that
154
+ // fired 80ms ago. Only a positive "still hovered" stands the collapse down.
155
+ if (rowUnderPointer() === true) {
156
+ return;
157
+ }
158
+ hovered = false;
159
+ if (enableStacking) {
160
+ // Resumes the timers as part of collapsing.
161
+ _toastStore.toastStore.collapse();
162
+ } else {
163
+ _toastStore.toastStore.resumeAllTimers();
164
+ }
165
+ }, HOVER_LEAVE_GRACE);
166
+ }
167
+ }), [enableStacking]);
168
+ }
169
+
170
+ /** Test-only reset: the module state outlives a render tree, so a suite must clear it. */
171
+ function resetStackHoverForTests() {
172
+ cancelPendingLeave();
173
+ hovered = false;
174
+ }
175
+ //# sourceMappingURL=use-stack-hover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_toastStore","HOVER_LEAVE_GRACE","exports","PORTAL_ROOT_ID","hovered","leaveTimeout","isMouse","event","nativeEvent","pointerType","cancelPendingLeave","clearTimeout","isStackHovered","rowUnderPointer","document","undefined","querySelector","toastStore","setExpansionHold","useStackHover","enableStacking","useMemo","onPointerEnter","expand","pauseAllTimers","onPointerLeave","setTimeout","collapse","resumeAllTimers","resetStackHoverForTests"],"sourceRoot":"../../../src","sources":["toast/use-stack-hover.ts"],"mappings":";;;;;;;;;AAoCA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA;AACA;AACA;AACA;AACA;AACA;AACO,MAAME,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,EAAE;;AAEnC;AACA,MAAME,cAAc,GAAG,mBAAmB;AAI1C,IAAIC,OAAO,GAAG,KAAK;AACnB,IAAIC,YAAkD,GAAG,IAAI;AAE7D,MAAMC,OAAO,GAAIC,KAAiB,IAAKA,KAAK,CAACC,WAAW,CAACC,WAAW,KAAK,OAAO;AAEhF,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;EAC/B,IAAIL,YAAY,KAAK,IAAI,EAAE;IACzBM,YAAY,CAACN,YAAY,CAAC;IAC1BA,YAAY,GAAG,IAAI;EACrB;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASO,cAAcA,CAAA,EAAY;EACxC,OAAOR,OAAO,IAAIS,eAAe,CAAC,CAAC,KAAK,KAAK;AAC/C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,eAAeA,CAAA,EAAwB;EAC9C,IAAI,OAAOC,QAAQ,KAAK,WAAW,EAAE;IACnC,OAAOC,SAAS;EAClB;EACA,OAAOD,QAAQ,CAACE,aAAa,CAAC,IAAIb,cAAc,oBAAoB,CAAC,KAAK,IAAI;AAChF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACAc,sBAAU,CAACC,gBAAgB,CAACN,cAAc,CAAC;AAOpC,SAASO,aAAaA,CAAC;EAC5BC;AAGF,CAAC,EAAmB;EAClB;EACA;EACA,OAAO,IAAAC,cAAO,EACZ,OAAO;IACLC,cAAc,EAAGf,KAAiB,IAAK;MACrC,IAAI,CAACD,OAAO,CAACC,KAAK,CAAC,EAAE;QACnB;MACF;MACAG,kBAAkB,CAAC,CAAC;MACpBN,OAAO,GAAG,IAAI;MACd,IAAIgB,cAAc,EAAE;QAClB;QACAH,sBAAU,CAACM,MAAM,CAAC,CAAC;MACrB,CAAC,MAAM;QACLN,sBAAU,CAACO,cAAc,CAAC,CAAC;MAC7B;IACF,CAAC;IACDC,cAAc,EAAGlB,KAAiB,IAAK;MACrC,IAAI,CAACD,OAAO,CAACC,KAAK,CAAC,IAAI,CAACH,OAAO,EAAE;QAC/B;MACF;MACAM,kBAAkB,CAAC,CAAC;MACpBL,YAAY,GAAGqB,UAAU,CAAC,MAAM;QAC9BrB,YAAY,GAAG,IAAI;QACnB;QACA;QACA;QACA;QACA,IAAIQ,eAAe,CAAC,CAAC,KAAK,IAAI,EAAE;UAC9B;QACF;QACAT,OAAO,GAAG,KAAK;QACf,IAAIgB,cAAc,EAAE;UAClB;UACAH,sBAAU,CAACU,QAAQ,CAAC,CAAC;QACvB,CAAC,MAAM;UACLV,sBAAU,CAACW,eAAe,CAAC,CAAC;QAC9B;MACF,CAAC,EAAE3B,iBAAiB,CAAC;IACvB;EACF,CAAC,CAAC,EACF,CAACmB,cAAc,CACjB,CAAC;AACH;;AAEA;AACO,SAASS,uBAAuBA,CAAA,EAAS;EAC9CnB,kBAAkB,CAAC,CAAC;EACpBN,OAAO,GAAG,KAAK;AACjB","ignoreList":[]}