@tamagui/toast 1.70.0 → 1.72.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.
- package/dist/cjs/Toast.js +4 -4
- package/dist/cjs/Toast.js.map +1 -1
- package/dist/cjs/Toast.native.js +4 -4
- package/dist/cjs/Toast.native.js.map +1 -1
- package/dist/cjs/ToastAnnounce.js +14 -16
- package/dist/cjs/ToastAnnounce.js.map +1 -1
- package/dist/cjs/ToastAnnounce.native.js +14 -16
- package/dist/cjs/ToastAnnounce.native.js.map +1 -1
- package/dist/cjs/ToastImpl.js +9 -9
- package/dist/cjs/ToastImpl.js.map +1 -1
- package/dist/cjs/ToastImpl.native.js +9 -9
- package/dist/cjs/ToastImpl.native.js.map +1 -1
- package/dist/cjs/ToastProvider.js +3 -9
- package/dist/cjs/ToastProvider.js.map +1 -1
- package/dist/cjs/ToastProvider.native.js +3 -9
- package/dist/cjs/ToastProvider.native.js.map +1 -1
- package/dist/cjs/ToastViewport.js +6 -4
- package/dist/cjs/ToastViewport.js.map +1 -1
- package/dist/cjs/ToastViewport.native.js +6 -4
- package/dist/cjs/ToastViewport.native.js.map +1 -1
- package/dist/esm/Toast.js +4 -7
- package/dist/esm/Toast.js.map +1 -1
- package/dist/esm/ToastAnnounce.js +13 -16
- package/dist/esm/ToastAnnounce.js.map +1 -1
- package/dist/esm/ToastImpl.js +10 -9
- package/dist/esm/ToastImpl.js.map +1 -1
- package/dist/esm/ToastProvider.js +4 -7
- package/dist/esm/ToastProvider.js.map +1 -1
- package/dist/esm/ToastViewport.js +6 -3
- package/dist/esm/ToastViewport.js.map +1 -1
- package/dist/jsx/Toast.js +4 -7
- package/dist/jsx/Toast.js.map +1 -1
- package/dist/jsx/Toast.native.js +4 -7
- package/dist/jsx/Toast.native.js.map +1 -1
- package/dist/jsx/ToastAnnounce.js +10 -13
- package/dist/jsx/ToastAnnounce.js.map +1 -1
- package/dist/jsx/ToastAnnounce.native.js +10 -13
- package/dist/jsx/ToastAnnounce.native.js.map +1 -1
- package/dist/jsx/ToastImpl.js +10 -9
- package/dist/jsx/ToastImpl.js.map +1 -1
- package/dist/jsx/ToastImpl.native.js +10 -9
- package/dist/jsx/ToastImpl.native.js.map +1 -1
- package/dist/jsx/ToastProvider.js +4 -7
- package/dist/jsx/ToastProvider.js.map +1 -1
- package/dist/jsx/ToastProvider.native.js +4 -7
- package/dist/jsx/ToastProvider.native.js.map +1 -1
- package/dist/jsx/ToastViewport.js +6 -3
- package/dist/jsx/ToastViewport.js.map +1 -1
- package/dist/jsx/ToastViewport.native.js +6 -3
- package/dist/jsx/ToastViewport.native.js.map +1 -1
- package/package.json +13 -13
- package/src/Toast.tsx +5 -10
- package/src/ToastAnnounce.tsx +16 -16
- package/src/ToastImpl.tsx +10 -9
- package/src/ToastProvider.tsx +13 -20
- package/src/ToastViewport.tsx +8 -5
- package/types/Toast.d.ts +10 -3
- package/types/Toast.d.ts.map +1 -1
- package/types/ToastAnnounce.d.ts +5 -1
- package/types/ToastAnnounce.d.ts.map +1 -1
- package/types/ToastImpl.d.ts +1 -8
- package/types/ToastImpl.d.ts.map +1 -1
- package/types/ToastProvider.d.ts +10 -21
- package/types/ToastProvider.d.ts.map +1 -1
- package/types/ToastViewport.d.ts +2 -0
- package/types/ToastViewport.d.ts.map +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ToastAnnounce.tsx"],
|
|
4
|
-
"mappings": "AAAA;AAAA,EAEE;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,cAAc;AACvB,SAAS,sBAAsB;AAC/B,YAAY,WAAW;AAEvB,
|
|
4
|
+
"mappings": "AAAA;AAAA,EAEE;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,cAAc;AACvB,SAAS,sBAAsB;AAC/B,YAAY,WAAW;AAEvB,SAAsB,+BAA+B;AAErD,MAAM,4BAA4B,OAAO,OAAO;AAAA,EAC9C,MAAM;AACR,CAAC,GAMK,uBAAuB,MAAM,WAGjC,CAAC,OAA+C,iBAAiB;AACjE,QAAM,EAAE,SAAS,GAAG,qBAAqB,IAAI;AAE7C,SACE,CAAC;AAAA,IACC,4BAA4B;AAAA,IAC5B,yBAAyB,WAAW;AAAA,QAChC;AAAA,IACJ,KAAK;AAAA,EACP;AAEJ,CAAC,GAQK,gBAA2D,CAC/D,UACG;AACH,QAAM,EAAE,cAAc,UAAU,GAAG,cAAc,IAAI,OAC/C,UAAU,wBAAwB,YAAY,GAC9C,CAAC,oBAAoB,qBAAqB,IAAI,MAAM,SAAS,EAAK,GAClE,CAAC,aAAa,cAAc,IAAI,MAAM,SAAS,EAAK;AAG1D,sBAAa,MAAM,sBAAsB,EAAI,CAAC,GAG9C,MAAM,UAAU,MAAM;AACpB,UAAM,QAAQ,WAAW,MAAM,eAAe,EAAI,GAAG,GAAI;AACzD,WAAO,MAAM,aAAa,KAAK;AAAA,EACjC,GAAG,CAAC,CAAC,GAEE,cAAc,OACnB,CAAC,OAAO,QACN,CAAC,mBAAmB,gBACjB,sBACC,CAAC;AAAA,KACE,QAAQ;AAAA,KAAM;AAAA,KAAE;AAAA,EACnB,EAFC,MAIL,EANC,eAOH,EARC;AAUL;AAIA,SAAS,aAAa,WAAW,MAAM;AAAC,GAAG;AACzC,QAAM,KAAK,SAAS,QAAQ;AAC5B,4BAA0B,MAAM;AAC9B,QAAI,OAAO,GACP,OAAO;AACX,kBAAO,sBAAsB,MAAM;AACjC,aAAO,sBAAsB,EAAE;AAAA,IACjC,CAAC,GACM,MAAM;AACX,2BAAqB,IAAI,GACzB,qBAAqB,IAAI;AAAA,IAC3B;AAAA,EACF,GAAG,CAAC,EAAE,CAAC;AACT;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/jsx/ToastImpl.js
CHANGED
|
@@ -3,6 +3,7 @@ import { useComposedRefs } from "@tamagui/compose-refs";
|
|
|
3
3
|
import {
|
|
4
4
|
Theme,
|
|
5
5
|
composeEventHandlers,
|
|
6
|
+
createStyledContext,
|
|
6
7
|
isWeb,
|
|
7
8
|
styled,
|
|
8
9
|
useAnimationDriver,
|
|
@@ -17,10 +18,10 @@ import {
|
|
|
17
18
|
PanResponder
|
|
18
19
|
} from "react-native";
|
|
19
20
|
import { TOAST_NAME } from "./constants";
|
|
21
|
+
import { TOAST_CONTEXT } from "./Toast";
|
|
20
22
|
import { ToastAnnounce } from "./ToastAnnounce";
|
|
21
23
|
import {
|
|
22
24
|
Collection,
|
|
23
|
-
createToastContext,
|
|
24
25
|
useToastProviderContext
|
|
25
26
|
} from "./ToastProvider";
|
|
26
27
|
import { VIEWPORT_PAUSE, VIEWPORT_RESUME } from "./ToastViewport";
|
|
@@ -47,13 +48,13 @@ const ToastImplFrame = styled(ThemeableStack, {
|
|
|
47
48
|
defaultVariants: {
|
|
48
49
|
unstyled: !1
|
|
49
50
|
}
|
|
50
|
-
}),
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
51
|
+
}), {
|
|
52
|
+
Provider: ToastInteractiveProvider,
|
|
53
|
+
useStyledContext: useToastInteractiveContext
|
|
54
|
+
} = createStyledContext({
|
|
55
|
+
onClose() {
|
|
55
56
|
}
|
|
56
|
-
), ToastImpl = React.forwardRef(
|
|
57
|
+
}), ToastImpl = React.forwardRef(
|
|
57
58
|
(props, forwardedRef) => {
|
|
58
59
|
const {
|
|
59
60
|
__scopeToast,
|
|
@@ -70,7 +71,7 @@ const ToastImplFrame = styled(ThemeableStack, {
|
|
|
70
71
|
onSwipeEnd,
|
|
71
72
|
viewportName = "default",
|
|
72
73
|
...toastProps
|
|
73
|
-
} = props, isPresent = useIsPresent(), context = useToastProviderContext(
|
|
74
|
+
} = props, isPresent = useIsPresent(), context = useToastProviderContext(__scopeToast), [node, setNode] = React.useState(null), composedRefs = useComposedRefs(forwardedRef, (node2) => setNode(node2)), duration = durationProp || context.duration, closeTimerStartTimeRef = React.useRef(0), closeTimerRemainingTimeRef = React.useRef(duration), closeTimerRef = React.useRef(0), { onToastAdd, onToastRemove } = context, viewport = React.useMemo(() => context.viewports[viewportName], [context.viewports, viewportName]), handleClose = useEvent(() => {
|
|
74
75
|
isPresent && (isWeb && node?.contains(document.activeElement) && viewport?.focus(), onClose());
|
|
75
76
|
}), startTimer = React.useCallback(
|
|
76
77
|
(duration2) => {
|
|
@@ -138,7 +139,7 @@ const ToastImplFrame = styled(ThemeableStack, {
|
|
|
138
139
|
><Theme forceClassName name={themeName}><AnimatedView
|
|
139
140
|
{...panResponder?.panHandlers}
|
|
140
141
|
style={[{ margin: "auto" }, animatedStyles]}
|
|
141
|
-
><Collection.ItemSlot
|
|
142
|
+
><Collection.ItemSlot __scopeCollection={__scopeToast || TOAST_CONTEXT}><ToastImplFrame
|
|
142
143
|
role="status"
|
|
143
144
|
aria-live="off"
|
|
144
145
|
aria-atomic
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ToastImpl.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,oBAAoB;AAC7B,SAAS,uBAAuB;AAChC;AAAA,EAGE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,mBAAqC;AAC9C,SAAS,kBAAkB;AAC3B,SAAS,sBAAsB;AAC/B,YAAY,WAAW;AACvB;AAAA,EAGE;AAAA,OAEK;AAEP,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B;AAAA,EACE;AAAA,EAGA;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["node", "duration"]
|
|
6
6
|
}
|
|
@@ -3,6 +3,7 @@ import { useComposedRefs } from "@tamagui/compose-refs";
|
|
|
3
3
|
import {
|
|
4
4
|
Theme,
|
|
5
5
|
composeEventHandlers,
|
|
6
|
+
createStyledContext,
|
|
6
7
|
isWeb,
|
|
7
8
|
styled,
|
|
8
9
|
useAnimationDriver,
|
|
@@ -17,10 +18,10 @@ import {
|
|
|
17
18
|
PanResponder
|
|
18
19
|
} from "react-native";
|
|
19
20
|
import { TOAST_NAME } from "./constants";
|
|
21
|
+
import { TOAST_CONTEXT } from "./Toast";
|
|
20
22
|
import { ToastAnnounce } from "./ToastAnnounce";
|
|
21
23
|
import {
|
|
22
24
|
Collection,
|
|
23
|
-
createToastContext,
|
|
24
25
|
useToastProviderContext
|
|
25
26
|
} from "./ToastProvider";
|
|
26
27
|
import { VIEWPORT_PAUSE, VIEWPORT_RESUME } from "./ToastViewport";
|
|
@@ -47,13 +48,13 @@ const ToastImplFrame = styled(ThemeableStack, {
|
|
|
47
48
|
defaultVariants: {
|
|
48
49
|
unstyled: !1
|
|
49
50
|
}
|
|
50
|
-
}),
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
51
|
+
}), {
|
|
52
|
+
Provider: ToastInteractiveProvider,
|
|
53
|
+
useStyledContext: useToastInteractiveContext
|
|
54
|
+
} = createStyledContext({
|
|
55
|
+
onClose() {
|
|
55
56
|
}
|
|
56
|
-
), ToastImpl = React.forwardRef(
|
|
57
|
+
}), ToastImpl = React.forwardRef(
|
|
57
58
|
(props, forwardedRef) => {
|
|
58
59
|
const {
|
|
59
60
|
__scopeToast,
|
|
@@ -70,7 +71,7 @@ const ToastImplFrame = styled(ThemeableStack, {
|
|
|
70
71
|
onSwipeEnd,
|
|
71
72
|
viewportName = "default",
|
|
72
73
|
...toastProps
|
|
73
|
-
} = props, isPresent = useIsPresent(), context = useToastProviderContext(
|
|
74
|
+
} = props, isPresent = useIsPresent(), context = useToastProviderContext(__scopeToast), [node, setNode] = React.useState(null), composedRefs = useComposedRefs(forwardedRef, (node2) => setNode(node2)), duration = durationProp || context.duration, closeTimerStartTimeRef = React.useRef(0), closeTimerRemainingTimeRef = React.useRef(duration), closeTimerRef = React.useRef(0), { onToastAdd, onToastRemove } = context, viewport = React.useMemo(() => context.viewports[viewportName], [context.viewports, viewportName]), handleClose = useEvent(() => {
|
|
74
75
|
isPresent && (isWeb && (node != null && node.contains(document.activeElement)) && (viewport == null || viewport.focus()), onClose());
|
|
75
76
|
}), startTimer = React.useCallback(
|
|
76
77
|
(duration2) => {
|
|
@@ -138,7 +139,7 @@ const ToastImplFrame = styled(ThemeableStack, {
|
|
|
138
139
|
><Theme forceClassName name={themeName}><AnimatedView
|
|
139
140
|
{...panResponder == null ? void 0 : panResponder.panHandlers}
|
|
140
141
|
style={[{ margin: "auto" }, animatedStyles]}
|
|
141
|
-
><Collection.ItemSlot
|
|
142
|
+
><Collection.ItemSlot __scopeCollection={__scopeToast || TOAST_CONTEXT}><ToastImplFrame
|
|
142
143
|
role="status"
|
|
143
144
|
aria-live="off"
|
|
144
145
|
aria-atomic
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ToastImpl.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,oBAAoB;AAC7B,SAAS,uBAAuB;AAChC;AAAA,EAGE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,mBAAqC;AAC9C,SAAS,kBAAkB;AAC3B,SAAS,sBAAsB;AAC/B,YAAY,WAAW;AACvB;AAAA,EAGE;AAAA,OAEK;AAEP,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B;AAAA,EACE;AAAA,EAGA;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["node", "duration"]
|
|
6
6
|
}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { createCollection } from "@tamagui/collection";
|
|
2
|
-
import {
|
|
2
|
+
import { createStyledContext } from "@tamagui/core";
|
|
3
3
|
import * as React from "react";
|
|
4
|
+
import { TOAST_CONTEXT } from "./Toast";
|
|
4
5
|
import { ToastImperativeProvider } from "./ToastImperative";
|
|
5
|
-
const PROVIDER_NAME = "ToastProvider", [Collection, useCollection
|
|
6
|
-
createCollectionScope
|
|
7
|
-
]), [ToastProviderProvider, useToastProviderContext] = createToastContext(PROVIDER_NAME), ToastProvider = (props) => {
|
|
6
|
+
const PROVIDER_NAME = "ToastProvider", [Collection, useCollection] = createCollection("Toast"), { Provider: ToastProviderProvider, useStyledContext: useToastProviderContext } = createStyledContext(), ToastProvider = (props) => {
|
|
8
7
|
const {
|
|
9
8
|
__scopeToast,
|
|
10
9
|
id: providedId,
|
|
@@ -27,7 +26,7 @@ const PROVIDER_NAME = "ToastProvider", [Collection, useCollection, createCollect
|
|
|
27
26
|
native,
|
|
28
27
|
notificationOptions
|
|
29
28
|
}), [JSON.stringify([duration, burntOptions, native, notificationOptions])]);
|
|
30
|
-
return <Collection.Provider
|
|
29
|
+
return <Collection.Provider __scopeCollection={__scopeToast || TOAST_CONTEXT}><ToastProviderProvider
|
|
31
30
|
scope={__scopeToast}
|
|
32
31
|
id={id}
|
|
33
32
|
label={label}
|
|
@@ -60,8 +59,6 @@ ToastProvider.displayName = PROVIDER_NAME;
|
|
|
60
59
|
export {
|
|
61
60
|
Collection,
|
|
62
61
|
ToastProvider,
|
|
63
|
-
createToastContext,
|
|
64
|
-
createToastScope,
|
|
65
62
|
useCollection,
|
|
66
63
|
useToastProviderContext
|
|
67
64
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ToastProvider.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,wBAAwB;
|
|
4
|
+
"mappings": "AAAA,SAAS,wBAAwB;AACjC,SAAsC,2BAA2B;AACjE,YAAY,WAAW;AAEvB,SAAS,qBAAqB;AAC9B,SAAS,+BAA+B;AAOxC,MAAM,gBAAgB,iBAEhB,CAAC,YAAY,aAAa,IAAI,iBAAiC,OAAO,GA0BtE,EAAE,UAAU,uBAAuB,kBAAkB,wBAAwB,IACjF,oBAA+C,GA2C3C,gBAA8C,CAClD,UACG;AACH,QAAM;AAAA,IACJ;AAAA,IACA,IAAI;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB;AAAA,EACF,IAAI,OACE,KAAK,cAAc,MAAM,MAAM,GAC/B,CAAC,WAAW,YAAY,IAAI,MAAM,SAEtC,CAAC,CAAC,GACE,CAAC,YAAY,aAAa,IAAI,MAAM,SAAS,CAAC,GAC9C,iCAAiC,MAAM,OAAO,EAAK,GACnD,mBAAmB,MAAM,OAAO,EAAK,GAErC,uBAAuB,MAAM;AAAA,IACjC,CAAC,MAAc,aAAoC;AACjD,mBAAa,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,EAAE;AAAA,IACxD;AAAA,IACA,CAAC;AAAA,EACH,GAGM,UAAU,MAAM,QAAQ,OACrB;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAEC,CAAC,KAAK,UAAU,CAAC,UAAU,cAAc,QAAQ,mBAAmB,CAAC,CAAC,CAAC;AAE1E,SACE,CAAC,WAAW,SAAS,mBAAmB,gBAAgB,eACtD,CAAC;AAAA,IACC,OAAO;AAAA,IACP,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB,gBAAgB;AAAA,IAChB,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,kBAAkB;AAAA,IAClB,YAAY,MAAM,YAAY,MAAM;AAClC,oBAAc,CAAC,cAAc,YAAY,CAAC;AAAA,IAC5C,GAAG,CAAC,CAAC;AAAA,IACL,eAAe,MAAM,YAAY,MAAM;AACrC,oBAAc,CAAC,cAAc,YAAY,CAAC;AAAA,IAC5C,GAAG,CAAC,CAAC;AAAA,IACL,gCAAgC;AAAA,IAChC,kBAAkB;AAAA,GAElB,CAAC,wBAAwB,SAAS,UAAU,SAAS,EAApD,wBACH,EApBC,sBAqBH,EAtBC,WAAW;AAwBhB;AAEA,cAAc,YAAY;AAAA,EACxB,MAAM,OAAO;AACX,QAAI,MAAM,SAAS,OAAO,MAAM,SAAU,YAAY,CAAC,MAAM,MAAM,KAAK,GAAG;AACzE,YAAM,QAAQ,wCAAwC,aAAa;AACnE,aAAO,IAAI,MAAM,KAAK;AAAA,IACxB;AACA,WAAO;AAAA,EACT;AACF;AAEA,cAAc,cAAc;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { createCollection } from "@tamagui/collection";
|
|
2
|
-
import {
|
|
2
|
+
import { createStyledContext } from "@tamagui/core";
|
|
3
3
|
import * as React from "react";
|
|
4
|
+
import { TOAST_CONTEXT } from "./Toast";
|
|
4
5
|
import { ToastImperativeProvider } from "./ToastImperative";
|
|
5
|
-
const PROVIDER_NAME = "ToastProvider", [Collection, useCollection
|
|
6
|
-
createCollectionScope
|
|
7
|
-
]), [ToastProviderProvider, useToastProviderContext] = createToastContext(PROVIDER_NAME), ToastProvider = (props) => {
|
|
6
|
+
const PROVIDER_NAME = "ToastProvider", [Collection, useCollection] = createCollection("Toast"), { Provider: ToastProviderProvider, useStyledContext: useToastProviderContext } = createStyledContext(), ToastProvider = (props) => {
|
|
8
7
|
const {
|
|
9
8
|
__scopeToast,
|
|
10
9
|
id: providedId,
|
|
@@ -27,7 +26,7 @@ const PROVIDER_NAME = "ToastProvider", [Collection, useCollection, createCollect
|
|
|
27
26
|
native,
|
|
28
27
|
notificationOptions
|
|
29
28
|
}), [JSON.stringify([duration, burntOptions, native, notificationOptions])]);
|
|
30
|
-
return <Collection.Provider
|
|
29
|
+
return <Collection.Provider __scopeCollection={__scopeToast || TOAST_CONTEXT}><ToastProviderProvider
|
|
31
30
|
scope={__scopeToast}
|
|
32
31
|
id={id}
|
|
33
32
|
label={label}
|
|
@@ -60,8 +59,6 @@ ToastProvider.displayName = PROVIDER_NAME;
|
|
|
60
59
|
export {
|
|
61
60
|
Collection,
|
|
62
61
|
ToastProvider,
|
|
63
|
-
createToastContext,
|
|
64
|
-
createToastScope,
|
|
65
62
|
useCollection,
|
|
66
63
|
useToastProviderContext
|
|
67
64
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ToastProvider.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,wBAAwB;
|
|
4
|
+
"mappings": "AAAA,SAAS,wBAAwB;AACjC,SAAsC,2BAA2B;AACjE,YAAY,WAAW;AAEvB,SAAS,qBAAqB;AAC9B,SAAS,+BAA+B;AAOxC,MAAM,gBAAgB,iBAEhB,CAAC,YAAY,aAAa,IAAI,iBAAiC,OAAO,GA0BtE,EAAE,UAAU,uBAAuB,kBAAkB,wBAAwB,IACjF,oBAA+C,GA2C3C,gBAA8C,CAClD,UACG;AACH,QAAM;AAAA,IACJ;AAAA,IACA,IAAI;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB;AAAA,EACF,IAAI,OACE,KAAK,cAAc,MAAM,MAAM,GAC/B,CAAC,WAAW,YAAY,IAAI,MAAM,SAEtC,CAAC,CAAC,GACE,CAAC,YAAY,aAAa,IAAI,MAAM,SAAS,CAAC,GAC9C,iCAAiC,MAAM,OAAO,EAAK,GACnD,mBAAmB,MAAM,OAAO,EAAK,GAErC,uBAAuB,MAAM;AAAA,IACjC,CAAC,MAAc,aAAoC;AACjD,mBAAa,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,EAAE;AAAA,IACxD;AAAA,IACA,CAAC;AAAA,EACH,GAGM,UAAU,MAAM,QAAQ,OACrB;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAEC,CAAC,KAAK,UAAU,CAAC,UAAU,cAAc,QAAQ,mBAAmB,CAAC,CAAC,CAAC;AAE1E,SACE,CAAC,WAAW,SAAS,mBAAmB,gBAAgB,eACtD,CAAC;AAAA,IACC,OAAO;AAAA,IACP,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,UAAU;AAAA,IACV,gBAAgB;AAAA,IAChB,gBAAgB;AAAA,IAChB,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,kBAAkB;AAAA,IAClB,YAAY,MAAM,YAAY,MAAM;AAClC,oBAAc,CAAC,cAAc,YAAY,CAAC;AAAA,IAC5C,GAAG,CAAC,CAAC;AAAA,IACL,eAAe,MAAM,YAAY,MAAM;AACrC,oBAAc,CAAC,cAAc,YAAY,CAAC;AAAA,IAC5C,GAAG,CAAC,CAAC;AAAA,IACL,gCAAgC;AAAA,IAChC,kBAAkB;AAAA,GAElB,CAAC,wBAAwB,SAAS,UAAU,SAAS,EAApD,wBACH,EApBC,sBAqBH,EAtBC,WAAW;AAwBhB;AAEA,cAAc,YAAY;AAAA,EACxB,MAAM,OAAO;AACX,QAAI,MAAM,SAAS,OAAO,MAAM,SAAU,YAAY,CAAC,MAAM,MAAM,KAAK,GAAG;AACzE,YAAM,QAAQ,wCAAwC,aAAa;AACnE,aAAO,IAAI,MAAM,KAAK;AAAA,IACxB;AACA,WAAO;AAAA,EACT;AACF;AAEA,cAAc,cAAc;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -5,6 +5,7 @@ import { PortalHost } from "@tamagui/portal";
|
|
|
5
5
|
import { YStack } from "@tamagui/stacks";
|
|
6
6
|
import { VisuallyHidden } from "@tamagui/visually-hidden";
|
|
7
7
|
import * as React from "react";
|
|
8
|
+
import { TOAST_CONTEXT } from "./Toast";
|
|
8
9
|
import {
|
|
9
10
|
Collection,
|
|
10
11
|
useCollection,
|
|
@@ -53,7 +54,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
53
54
|
name = "default",
|
|
54
55
|
multipleToasts,
|
|
55
56
|
...viewportProps
|
|
56
|
-
} = props, context = useToastProviderContext(
|
|
57
|
+
} = props, context = useToastProviderContext(__scopeToast), getItems = useCollection(__scopeToast || TOAST_CONTEXT), headFocusProxyRef = React.useRef(null), tailFocusProxyRef = React.useRef(null), wrapperRef = React.useRef(null), ref = React.useRef(null), onViewportChange = React.useCallback(
|
|
57
58
|
(el) => {
|
|
58
59
|
context.viewports[name] !== el && context.onViewportChange(name, el);
|
|
59
60
|
},
|
|
@@ -141,6 +142,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
141
142
|
tabIndex={-1}
|
|
142
143
|
>
|
|
143
144
|
{hasToasts && <FocusProxy
|
|
145
|
+
__scopeToast={__scopeToast}
|
|
144
146
|
viewportName={name}
|
|
145
147
|
ref={headFocusProxyRef}
|
|
146
148
|
onFocusFromOutsideViewport={() => {
|
|
@@ -156,7 +158,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
156
158
|
* the list instead of the viewport so it announces number of items remaining.
|
|
157
159
|
*/
|
|
158
160
|
}
|
|
159
|
-
<Collection.Slot
|
|
161
|
+
<Collection.Slot __scopeCollection={__scopeToast || TOAST_CONTEXT}><ToastViewportFrame
|
|
160
162
|
focusable={context.toastCount > 0}
|
|
161
163
|
ref={composedRefs}
|
|
162
164
|
{...viewportProps}
|
|
@@ -165,6 +167,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
165
167
|
name={name ?? "default"}
|
|
166
168
|
/></ToastViewportFrame></Collection.Slot>
|
|
167
169
|
{hasToasts && <FocusProxy
|
|
170
|
+
__scopeToast={__scopeToast}
|
|
168
171
|
viewportName={name}
|
|
169
172
|
ref={tailFocusProxyRef}
|
|
170
173
|
onFocusFromOutsideViewport={() => {
|
|
@@ -180,7 +183,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
180
183
|
ToastViewport.displayName = VIEWPORT_NAME;
|
|
181
184
|
const FOCUS_PROXY_NAME = "ToastFocusProxy", FocusProxy = React.forwardRef(
|
|
182
185
|
(props, forwardedRef) => {
|
|
183
|
-
const { __scopeToast, onFocusFromOutsideViewport, viewportName, ...proxyProps } = props, viewport = useToastProviderContext(
|
|
186
|
+
const { __scopeToast, onFocusFromOutsideViewport, viewportName, ...proxyProps } = props, viewport = useToastProviderContext(__scopeToast).viewports[viewportName];
|
|
184
187
|
return <VisuallyHidden
|
|
185
188
|
aria-hidden
|
|
186
189
|
tabIndex={0}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ToastViewport.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,uBAAuB;AAChC,SAAS,uBAAuB;AAChC,SAAmC,OAAO,cAAc;AACxD,SAAS,kBAAkB;AAC3B,SAAS,cAAc;AACvB,SAAS,sBAAsB;AAC/B,YAAY,WAAW;AAEvB;AAAA,EACE;AAAA,EAEA;AAAA,EACA;AAAA,OACK;AAEP,MAAM,gBAAgB,iBAChB,0BAA0B,CAAC,IAAI,GAC/B,iBAAiB,uBACjB,kBAAkB,wBAElB,4BAA4B,OAAO,QAAQ;AAAA,EAC/C,MAAM;AAAA,EAEN,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,eAAe;AAAA,QACf,KAAK;AAAA,QACL,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,OAAO;AAAA,QACP,UAAU,QAAS,UAAkB;AAAA,QACrC,UAAU;AAAA,QACV,UAAU;AAAA,QACV,QAAQ;AAAA,MACV;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC,GAEK,qBAAqB,OAAO,QAAQ;AAAA,EACxC,MAAM;AAAA,EAEN,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,eAAe;AAAA,QACf,UAAU,QAAS,UAAkB;AAAA,QACrC,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC,GAyBK,gBAAgB,MAAM;AAAA,EAC1B,CAAC,OAAwC,iBAAiB;AACxD,UAAM;AAAA,MACJ;AAAA,MACA,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,OAAO;AAAA,MACP;AAAA,MACA,GAAG;AAAA,IACL,IAAI,OACE,UAAU,wBAAwB,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -5,6 +5,7 @@ import { PortalHost } from "@tamagui/portal";
|
|
|
5
5
|
import { YStack } from "@tamagui/stacks";
|
|
6
6
|
import { VisuallyHidden } from "@tamagui/visually-hidden";
|
|
7
7
|
import * as React from "react";
|
|
8
|
+
import { TOAST_CONTEXT } from "./Toast";
|
|
8
9
|
import {
|
|
9
10
|
Collection,
|
|
10
11
|
useCollection,
|
|
@@ -53,7 +54,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
53
54
|
name = "default",
|
|
54
55
|
multipleToasts,
|
|
55
56
|
...viewportProps
|
|
56
|
-
} = props, context = useToastProviderContext(
|
|
57
|
+
} = props, context = useToastProviderContext(__scopeToast), getItems = useCollection(__scopeToast || TOAST_CONTEXT), headFocusProxyRef = React.useRef(null), tailFocusProxyRef = React.useRef(null), wrapperRef = React.useRef(null), ref = React.useRef(null), onViewportChange = React.useCallback(
|
|
57
58
|
(el) => {
|
|
58
59
|
context.viewports[name] !== el && context.onViewportChange(name, el);
|
|
59
60
|
},
|
|
@@ -143,6 +144,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
143
144
|
tabIndex={-1}
|
|
144
145
|
>
|
|
145
146
|
{hasToasts && <FocusProxy
|
|
147
|
+
__scopeToast={__scopeToast}
|
|
146
148
|
viewportName={name}
|
|
147
149
|
ref={headFocusProxyRef}
|
|
148
150
|
onFocusFromOutsideViewport={() => {
|
|
@@ -158,7 +160,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
158
160
|
* the list instead of the viewport so it announces number of items remaining.
|
|
159
161
|
*/
|
|
160
162
|
}
|
|
161
|
-
<Collection.Slot
|
|
163
|
+
<Collection.Slot __scopeCollection={__scopeToast || TOAST_CONTEXT}><ToastViewportFrame
|
|
162
164
|
focusable={context.toastCount > 0}
|
|
163
165
|
ref={composedRefs}
|
|
164
166
|
{...viewportProps}
|
|
@@ -167,6 +169,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
167
169
|
name={name ?? "default"}
|
|
168
170
|
/></ToastViewportFrame></Collection.Slot>
|
|
169
171
|
{hasToasts && <FocusProxy
|
|
172
|
+
__scopeToast={__scopeToast}
|
|
170
173
|
viewportName={name}
|
|
171
174
|
ref={tailFocusProxyRef}
|
|
172
175
|
onFocusFromOutsideViewport={() => {
|
|
@@ -182,7 +185,7 @@ const VIEWPORT_NAME = "ToastViewport", VIEWPORT_DEFAULT_HOTKEY = ["F8"], VIEWPOR
|
|
|
182
185
|
ToastViewport.displayName = VIEWPORT_NAME;
|
|
183
186
|
const FOCUS_PROXY_NAME = "ToastFocusProxy", FocusProxy = React.forwardRef(
|
|
184
187
|
(props, forwardedRef) => {
|
|
185
|
-
const { __scopeToast, onFocusFromOutsideViewport, viewportName, ...proxyProps } = props, viewport = useToastProviderContext(
|
|
188
|
+
const { __scopeToast, onFocusFromOutsideViewport, viewportName, ...proxyProps } = props, viewport = useToastProviderContext(__scopeToast).viewports[viewportName];
|
|
186
189
|
return <VisuallyHidden
|
|
187
190
|
aria-hidden
|
|
188
191
|
tabIndex={0}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/ToastViewport.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,uBAAuB;AAChC,SAAS,uBAAuB;AAChC,SAAmC,OAAO,cAAc;AACxD,SAAS,kBAAkB;AAC3B,SAAS,cAAc;AACvB,SAAS,sBAAsB;AAC/B,YAAY,WAAW;AAEvB;AAAA,EACE;AAAA,EAEA;AAAA,EACA;AAAA,OACK;AAEP,MAAM,gBAAgB,iBAChB,0BAA0B,CAAC,IAAI,GAC/B,iBAAiB,uBACjB,kBAAkB,wBAElB,4BAA4B,OAAO,QAAQ;AAAA,EAC/C,MAAM;AAAA,EAEN,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,eAAe;AAAA,QACf,KAAK;AAAA,QACL,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,OAAO;AAAA,QACP,UAAU,QAAS,UAAkB;AAAA,QACrC,UAAU;AAAA,QACV,UAAU;AAAA,QACV,QAAQ;AAAA,MACV;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC,GAEK,qBAAqB,OAAO,QAAQ;AAAA,EACxC,MAAM;AAAA,EAEN,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,eAAe;AAAA,QACf,UAAU,QAAS,UAAkB;AAAA,QACrC,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC,GAyBK,gBAAgB,MAAM;AAAA,EAC1B,CAAC,OAAwC,iBAAiB;AACxD,UAAM;AAAA,MACJ;AAAA,MACA,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,OAAO;AAAA,MACP;AAAA,MACA,GAAG;AAAA,IACL,IAAI,OACE,UAAU,wBAAwB,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/toast",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.72.0",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"types": "./types/index.d.ts",
|
|
6
6
|
"main": "dist/cjs",
|
|
@@ -31,24 +31,24 @@
|
|
|
31
31
|
}
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@tamagui/animate-presence": "1.
|
|
35
|
-
"@tamagui/compose-refs": "1.
|
|
36
|
-
"@tamagui/core": "1.
|
|
37
|
-
"@tamagui/create-context": "1.
|
|
38
|
-
"@tamagui/dismissable": "1.
|
|
39
|
-
"@tamagui/polyfill-dev": "1.
|
|
40
|
-
"@tamagui/portal": "1.
|
|
41
|
-
"@tamagui/stacks": "1.
|
|
42
|
-
"@tamagui/text": "1.
|
|
43
|
-
"@tamagui/use-controllable-state": "1.
|
|
44
|
-
"@tamagui/visually-hidden": "1.
|
|
34
|
+
"@tamagui/animate-presence": "1.72.0",
|
|
35
|
+
"@tamagui/compose-refs": "1.72.0",
|
|
36
|
+
"@tamagui/core": "1.72.0",
|
|
37
|
+
"@tamagui/create-context": "1.72.0",
|
|
38
|
+
"@tamagui/dismissable": "1.72.0",
|
|
39
|
+
"@tamagui/polyfill-dev": "1.72.0",
|
|
40
|
+
"@tamagui/portal": "1.72.0",
|
|
41
|
+
"@tamagui/stacks": "1.72.0",
|
|
42
|
+
"@tamagui/text": "1.72.0",
|
|
43
|
+
"@tamagui/use-controllable-state": "1.72.0",
|
|
44
|
+
"@tamagui/visually-hidden": "1.72.0"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"react": "*",
|
|
48
48
|
"react-native": "*"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
|
-
"@tamagui/build": "1.
|
|
51
|
+
"@tamagui/build": "1.72.0",
|
|
52
52
|
"burnt": "^0.11.0",
|
|
53
53
|
"react": "^18.2.0",
|
|
54
54
|
"react-native": "^0.72.1"
|
package/src/Toast.tsx
CHANGED
|
@@ -28,14 +28,10 @@ import {
|
|
|
28
28
|
ToastProps,
|
|
29
29
|
useToastInteractiveContext,
|
|
30
30
|
} from './ToastImpl'
|
|
31
|
-
import {
|
|
32
|
-
ScopedProps,
|
|
33
|
-
ToastProvider,
|
|
34
|
-
ToastProviderProps,
|
|
35
|
-
createToastScope,
|
|
36
|
-
} from './ToastProvider'
|
|
31
|
+
import { ScopedProps, ToastProvider, ToastProviderProps } from './ToastProvider'
|
|
37
32
|
import { ToastViewport, ToastViewportProps } from './ToastViewport'
|
|
38
33
|
|
|
34
|
+
export const TOAST_CONTEXT = 'Toast'
|
|
39
35
|
/* -------------------------------------------------------------------------------------------------
|
|
40
36
|
* ToastTitle
|
|
41
37
|
* -----------------------------------------------------------------------------------------------*/
|
|
@@ -104,7 +100,7 @@ type ToastActionProps = ToastCloseProps & {
|
|
|
104
100
|
altText: string
|
|
105
101
|
}
|
|
106
102
|
|
|
107
|
-
const ToastAction = React.forwardRef<TamaguiElement, ToastActionProps
|
|
103
|
+
const ToastAction = React.forwardRef<TamaguiElement, ScopedProps<ToastActionProps>>(
|
|
108
104
|
(props: ScopedProps<ToastActionProps>, forwardedRef) => {
|
|
109
105
|
const { altText, ...actionProps } = props
|
|
110
106
|
if (!altText) return null
|
|
@@ -143,7 +139,7 @@ type ToastCloseProps = ToastCloseFrameProps & {}
|
|
|
143
139
|
const ToastClose = React.forwardRef<TamaguiElement, ToastCloseProps>(
|
|
144
140
|
(props: ScopedProps<ToastCloseProps>, forwardedRef) => {
|
|
145
141
|
const { __scopeToast, ...closeProps } = props
|
|
146
|
-
const interactiveContext = useToastInteractiveContext(
|
|
142
|
+
const interactiveContext = useToastInteractiveContext(__scopeToast)
|
|
147
143
|
|
|
148
144
|
return (
|
|
149
145
|
<ToastAnnounceExclude asChild>
|
|
@@ -164,7 +160,7 @@ ToastClose.displayName = CLOSE_NAME
|
|
|
164
160
|
* Toast
|
|
165
161
|
* -----------------------------------------------------------------------------------------------*/
|
|
166
162
|
|
|
167
|
-
const ToastComponent = React.forwardRef<TamaguiElement, ToastProps
|
|
163
|
+
const ToastComponent = React.forwardRef<TamaguiElement, ScopedProps<ToastProps>>(
|
|
168
164
|
ToastImplFrame.extractable((props: ScopedProps<ToastProps>, forwardedRef) => {
|
|
169
165
|
const { forceMount, open: openProp, defaultOpen, onOpenChange, ...toastProps } = props
|
|
170
166
|
const [open, setOpen] = useControllableState({
|
|
@@ -217,7 +213,6 @@ export {
|
|
|
217
213
|
ToastProvider,
|
|
218
214
|
ToastViewport,
|
|
219
215
|
//
|
|
220
|
-
createToastScope,
|
|
221
216
|
// imperative
|
|
222
217
|
useToast,
|
|
223
218
|
useToastController,
|
package/src/ToastAnnounce.tsx
CHANGED
|
@@ -11,7 +11,6 @@ import { Portal } from '@tamagui/portal'
|
|
|
11
11
|
import { VisuallyHidden } from '@tamagui/visually-hidden'
|
|
12
12
|
import * as React from 'react'
|
|
13
13
|
|
|
14
|
-
import { TOAST_NAME } from './constants'
|
|
15
14
|
import { ScopedProps, useToastProviderContext } from './ToastProvider'
|
|
16
15
|
|
|
17
16
|
const ToastAnnounceExcludeFrame = styled(Stack, {
|
|
@@ -22,20 +21,21 @@ type ToastAnnounceExcludeProps = ToastAnnounceExcludeFrameProps & {
|
|
|
22
21
|
altText?: string
|
|
23
22
|
}
|
|
24
23
|
|
|
25
|
-
const ToastAnnounceExclude = React.forwardRef<
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
const ToastAnnounceExclude = React.forwardRef<
|
|
25
|
+
TamaguiElement,
|
|
26
|
+
ScopedProps<ToastAnnounceExcludeProps>
|
|
27
|
+
>((props: ScopedProps<ToastAnnounceExcludeProps>, forwardedRef) => {
|
|
28
|
+
const { altText, ...announceExcludeProps } = props
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
)
|
|
30
|
+
return (
|
|
31
|
+
<ToastAnnounceExcludeFrame
|
|
32
|
+
data-toast-announce-exclude=""
|
|
33
|
+
data-toast-announce-alt={altText || undefined}
|
|
34
|
+
{...announceExcludeProps}
|
|
35
|
+
ref={forwardedRef}
|
|
36
|
+
/>
|
|
37
|
+
)
|
|
38
|
+
})
|
|
39
39
|
|
|
40
40
|
/* -----------------------------------------------------------------------------------------------*/
|
|
41
41
|
|
|
@@ -43,11 +43,11 @@ interface ToastAnnounceProps
|
|
|
43
43
|
extends Omit<GetProps<typeof VisuallyHidden>, 'children'>,
|
|
44
44
|
ScopedProps<{ children: string[] }> {}
|
|
45
45
|
|
|
46
|
-
const ToastAnnounce: React.FC<ToastAnnounceProps
|
|
46
|
+
const ToastAnnounce: React.FC<ScopedProps<ToastAnnounceProps>> = (
|
|
47
47
|
props: ScopedProps<ToastAnnounceProps>
|
|
48
48
|
) => {
|
|
49
49
|
const { __scopeToast, children, ...announceProps } = props
|
|
50
|
-
const context = useToastProviderContext(
|
|
50
|
+
const context = useToastProviderContext(__scopeToast)
|
|
51
51
|
const [renderAnnounceText, setRenderAnnounceText] = React.useState(false)
|
|
52
52
|
const [isAnnounced, setIsAnnounced] = React.useState(false)
|
|
53
53
|
|