@tamagui/toast 2.0.0-rc.9 → 2.0.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.cjs +149 -141
- package/dist/cjs/Toast.native.js +149 -142
- package/dist/cjs/Toast.native.js.map +1 -1
- package/dist/cjs/ToastAnnounce.cjs +78 -72
- package/dist/cjs/ToastAnnounce.native.js +85 -79
- package/dist/cjs/ToastAnnounce.native.js.map +1 -1
- package/dist/cjs/ToastComposable.cjs +780 -591
- package/dist/cjs/ToastComposable.native.js +863 -706
- package/dist/cjs/ToastComposable.native.js.map +1 -1
- package/dist/cjs/ToastImperative.cjs +99 -80
- package/dist/cjs/ToastImperative.native.js +104 -96
- package/dist/cjs/ToastImperative.native.js.map +1 -1
- package/dist/cjs/ToastImpl.cjs +300 -238
- package/dist/cjs/ToastImpl.native.js +309 -271
- package/dist/cjs/ToastImpl.native.js.map +1 -1
- package/dist/cjs/ToastItemFrame.cjs +143 -0
- package/dist/cjs/ToastItemFrame.native.js +148 -0
- package/dist/cjs/ToastItemFrame.native.js.map +1 -0
- package/dist/cjs/ToastPortal.cjs +23 -18
- package/dist/cjs/ToastPortal.native.js +27 -22
- package/dist/cjs/ToastPortal.native.js.map +1 -1
- package/dist/cjs/ToastProvider.cjs +102 -98
- package/dist/cjs/ToastProvider.native.js +108 -106
- package/dist/cjs/ToastProvider.native.js.map +1 -1
- package/dist/cjs/ToastState.cjs +218 -155
- package/dist/cjs/ToastState.native.js +270 -203
- package/dist/cjs/ToastState.native.js.map +1 -1
- package/dist/cjs/ToastViewport.cjs +274 -233
- package/dist/cjs/ToastViewport.native.js +301 -273
- package/dist/cjs/ToastViewport.native.js.map +1 -1
- package/dist/cjs/Toaster.cjs +71 -233
- package/dist/cjs/Toaster.native.js +72 -289
- package/dist/cjs/Toaster.native.js.map +1 -1
- package/dist/cjs/constants.cjs +14 -12
- package/dist/cjs/constants.native.js +14 -12
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/createNativeToast.cjs +43 -35
- package/dist/cjs/createNativeToast.native.js +42 -30
- package/dist/cjs/createNativeToast.native.js.map +1 -1
- package/dist/cjs/dispatchNativeToast.cjs +47 -0
- package/dist/cjs/dispatchNativeToast.native.js +52 -0
- package/dist/cjs/dispatchNativeToast.native.js.map +1 -0
- package/dist/cjs/index.cjs +7 -5
- package/dist/cjs/index.native.js +7 -5
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/types.cjs +7 -5
- package/dist/cjs/types.native.js +7 -5
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/useAnimatedDragGesture.cjs +184 -83
- package/dist/cjs/useAnimatedDragGesture.native.js +193 -79
- package/dist/cjs/useAnimatedDragGesture.native.js.map +1 -1
- package/dist/cjs/useReducedMotion.cjs +44 -30
- package/dist/cjs/useReducedMotion.native.js +52 -43
- package/dist/cjs/useReducedMotion.native.js.map +1 -1
- package/dist/cjs/useToastAnimations.cjs +233 -155
- package/dist/cjs/useToastAnimations.native.js +246 -170
- package/dist/cjs/useToastAnimations.native.js.map +1 -1
- package/dist/cjs/v2.cjs +36 -0
- package/dist/cjs/v2.native.js +39 -0
- package/dist/cjs/v2.native.js.map +1 -0
- package/dist/esm/Toast.mjs +112 -106
- package/dist/esm/Toast.mjs.map +1 -1
- package/dist/esm/Toast.native.js +112 -107
- package/dist/esm/Toast.native.js.map +1 -1
- package/dist/esm/ToastAnnounce.mjs +46 -42
- package/dist/esm/ToastAnnounce.mjs.map +1 -1
- package/dist/esm/ToastAnnounce.native.js +52 -48
- package/dist/esm/ToastAnnounce.native.js.map +1 -1
- package/dist/esm/ToastComposable.mjs +742 -555
- package/dist/esm/ToastComposable.mjs.map +1 -1
- package/dist/esm/ToastComposable.native.js +825 -670
- package/dist/esm/ToastComposable.native.js.map +1 -1
- package/dist/esm/ToastImperative.mjs +71 -54
- package/dist/esm/ToastImperative.mjs.map +1 -1
- package/dist/esm/ToastImperative.native.js +76 -70
- package/dist/esm/ToastImperative.native.js.map +1 -1
- package/dist/esm/ToastImpl.mjs +261 -201
- package/dist/esm/ToastImpl.mjs.map +1 -1
- package/dist/esm/ToastImpl.native.js +270 -234
- package/dist/esm/ToastImpl.native.js.map +1 -1
- package/dist/esm/ToastItemFrame.mjs +114 -0
- package/dist/esm/ToastItemFrame.mjs.map +1 -0
- package/dist/esm/ToastItemFrame.native.js +116 -0
- package/dist/esm/ToastItemFrame.native.js.map +1 -0
- package/dist/esm/ToastPortal.mjs +8 -5
- package/dist/esm/ToastPortal.mjs.map +1 -1
- package/dist/esm/ToastPortal.native.js +12 -9
- package/dist/esm/ToastPortal.native.js.map +1 -1
- package/dist/esm/ToastProvider.mjs +71 -69
- package/dist/esm/ToastProvider.mjs.map +1 -1
- package/dist/esm/ToastProvider.native.js +77 -77
- package/dist/esm/ToastProvider.native.js.map +1 -1
- package/dist/esm/ToastState.mjs +205 -144
- package/dist/esm/ToastState.mjs.map +1 -1
- package/dist/esm/ToastState.native.js +258 -193
- package/dist/esm/ToastState.native.js.map +1 -1
- package/dist/esm/ToastViewport.mjs +238 -199
- package/dist/esm/ToastViewport.mjs.map +1 -1
- package/dist/esm/ToastViewport.native.js +265 -239
- package/dist/esm/ToastViewport.native.js.map +1 -1
- package/dist/esm/Toaster.mjs +45 -209
- package/dist/esm/Toaster.mjs.map +1 -1
- package/dist/esm/Toaster.native.js +46 -265
- package/dist/esm/Toaster.native.js.map +1 -1
- package/dist/esm/constants.mjs +2 -2
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js +2 -2
- package/dist/esm/constants.native.js.map +1 -1
- package/dist/esm/createNativeToast.mjs +29 -24
- package/dist/esm/createNativeToast.mjs.map +1 -1
- package/dist/esm/createNativeToast.native.js +27 -18
- package/dist/esm/createNativeToast.native.js.map +1 -1
- package/dist/esm/dispatchNativeToast.mjs +22 -0
- package/dist/esm/dispatchNativeToast.mjs.map +1 -0
- package/dist/esm/dispatchNativeToast.native.js +24 -0
- package/dist/esm/dispatchNativeToast.native.js.map +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -6
- package/dist/esm/useAnimatedDragGesture.mjs +160 -61
- package/dist/esm/useAnimatedDragGesture.mjs.map +1 -1
- package/dist/esm/useAnimatedDragGesture.native.js +167 -55
- package/dist/esm/useAnimatedDragGesture.native.js.map +1 -1
- package/dist/esm/useReducedMotion.mjs +18 -6
- package/dist/esm/useReducedMotion.mjs.map +1 -1
- package/dist/esm/useReducedMotion.native.js +25 -18
- package/dist/esm/useReducedMotion.native.js.map +1 -1
- package/dist/esm/useToastAnimations.mjs +206 -130
- package/dist/esm/useToastAnimations.mjs.map +1 -1
- package/dist/esm/useToastAnimations.native.js +218 -144
- package/dist/esm/useToastAnimations.native.js.map +1 -1
- package/dist/esm/v2.mjs +6 -0
- package/dist/esm/v2.mjs.map +1 -0
- package/dist/esm/v2.native.js +6 -0
- package/dist/esm/v2.native.js.map +1 -0
- package/dist/jsx/Toast.mjs +112 -106
- package/dist/jsx/Toast.mjs.map +1 -1
- package/dist/jsx/Toast.native.js +149 -142
- package/dist/jsx/Toast.native.js.map +1 -1
- package/dist/jsx/ToastAnnounce.mjs +46 -42
- package/dist/jsx/ToastAnnounce.mjs.map +1 -1
- package/dist/jsx/ToastAnnounce.native.js +85 -79
- package/dist/jsx/ToastAnnounce.native.js.map +1 -1
- package/dist/jsx/ToastComposable.mjs +742 -555
- package/dist/jsx/ToastComposable.mjs.map +1 -1
- package/dist/jsx/ToastComposable.native.js +863 -706
- package/dist/jsx/ToastComposable.native.js.map +1 -1
- package/dist/jsx/ToastImperative.mjs +71 -54
- package/dist/jsx/ToastImperative.mjs.map +1 -1
- package/dist/jsx/ToastImperative.native.js +104 -96
- package/dist/jsx/ToastImperative.native.js.map +1 -1
- package/dist/jsx/ToastImpl.mjs +261 -201
- package/dist/jsx/ToastImpl.mjs.map +1 -1
- package/dist/jsx/ToastImpl.native.js +309 -271
- package/dist/jsx/ToastImpl.native.js.map +1 -1
- package/dist/jsx/ToastItemFrame.mjs +114 -0
- package/dist/jsx/ToastItemFrame.mjs.map +1 -0
- package/dist/jsx/ToastItemFrame.native.js +148 -0
- package/dist/jsx/ToastItemFrame.native.js.map +1 -0
- package/dist/jsx/ToastPortal.mjs +8 -5
- package/dist/jsx/ToastPortal.mjs.map +1 -1
- package/dist/jsx/ToastPortal.native.js +27 -22
- package/dist/jsx/ToastPortal.native.js.map +1 -1
- package/dist/jsx/ToastProvider.mjs +71 -69
- package/dist/jsx/ToastProvider.mjs.map +1 -1
- package/dist/jsx/ToastProvider.native.js +108 -106
- package/dist/jsx/ToastProvider.native.js.map +1 -1
- package/dist/jsx/ToastState.mjs +205 -144
- package/dist/jsx/ToastState.mjs.map +1 -1
- package/dist/jsx/ToastState.native.js +270 -203
- package/dist/jsx/ToastState.native.js.map +1 -1
- package/dist/jsx/ToastViewport.mjs +238 -199
- package/dist/jsx/ToastViewport.mjs.map +1 -1
- package/dist/jsx/ToastViewport.native.js +301 -273
- package/dist/jsx/ToastViewport.native.js.map +1 -1
- package/dist/jsx/Toaster.mjs +45 -209
- package/dist/jsx/Toaster.mjs.map +1 -1
- package/dist/jsx/Toaster.native.js +72 -289
- package/dist/jsx/Toaster.native.js.map +1 -1
- package/dist/jsx/constants.mjs +2 -2
- package/dist/jsx/constants.mjs.map +1 -1
- package/dist/jsx/constants.native.js +14 -12
- package/dist/jsx/constants.native.js.map +1 -1
- package/dist/jsx/createNativeToast.mjs +29 -24
- package/dist/jsx/createNativeToast.mjs.map +1 -1
- package/dist/jsx/createNativeToast.native.js +42 -30
- package/dist/jsx/createNativeToast.native.js.map +1 -1
- package/dist/jsx/dispatchNativeToast.mjs +22 -0
- package/dist/jsx/dispatchNativeToast.mjs.map +1 -0
- package/dist/jsx/dispatchNativeToast.native.js +52 -0
- package/dist/jsx/dispatchNativeToast.native.js.map +1 -0
- package/dist/jsx/index.js +1 -1
- package/dist/jsx/index.js.map +1 -6
- package/dist/jsx/index.native.js +7 -5
- package/dist/jsx/types.native.js +7 -5
- package/dist/jsx/useAnimatedDragGesture.mjs +160 -61
- package/dist/jsx/useAnimatedDragGesture.mjs.map +1 -1
- package/dist/jsx/useAnimatedDragGesture.native.js +193 -79
- package/dist/jsx/useAnimatedDragGesture.native.js.map +1 -1
- package/dist/jsx/useReducedMotion.mjs +18 -6
- package/dist/jsx/useReducedMotion.mjs.map +1 -1
- package/dist/jsx/useReducedMotion.native.js +52 -43
- package/dist/jsx/useReducedMotion.native.js.map +1 -1
- package/dist/jsx/useToastAnimations.mjs +206 -130
- package/dist/jsx/useToastAnimations.mjs.map +1 -1
- package/dist/jsx/useToastAnimations.native.js +246 -170
- package/dist/jsx/useToastAnimations.native.js.map +1 -1
- package/dist/jsx/v2.mjs +6 -0
- package/dist/jsx/v2.mjs.map +1 -0
- package/dist/jsx/v2.native.js +39 -0
- package/dist/jsx/v2.native.js.map +1 -0
- package/package.json +41 -24
- package/src/ToastComposable.tsx +1380 -0
- package/src/ToastImpl.tsx +14 -2
- package/src/ToastItemFrame.tsx +136 -0
- package/src/ToastPortal.tsx +2 -2
- package/src/ToastProvider.tsx +8 -1
- package/src/ToastState.ts +398 -0
- package/src/ToastViewport.tsx +4 -3
- package/src/Toaster.tsx +181 -0
- package/src/createNativeToast.native.tsx +4 -0
- package/src/createNativeToast.tsx +18 -24
- package/src/dispatchNativeToast.ts +43 -0
- package/src/useAnimatedDragGesture.native.ts +255 -0
- package/src/useAnimatedDragGesture.ts +319 -0
- package/src/useReducedMotion.ts +59 -0
- package/src/useToastAnimations.ts +372 -0
- package/src/v2.ts +31 -0
- package/types/ToastComposable.d.ts +199 -0
- package/types/ToastComposable.d.ts.map +1 -1
- package/types/ToastImpl.d.ts.map +1 -1
- package/types/ToastItemFrame.d.ts +25 -0
- package/types/ToastItemFrame.d.ts.map +1 -0
- package/types/ToastPortal.d.ts.map +1 -1
- package/types/ToastProvider.d.ts +1 -1
- package/types/ToastProvider.d.ts.map +1 -1
- package/types/ToastState.d.ts +179 -0
- package/types/ToastState.d.ts.map +1 -1
- package/types/ToastViewport.d.ts.map +1 -1
- package/types/Toaster.d.ts +112 -0
- package/types/Toaster.d.ts.map +1 -1
- package/types/createNativeToast.d.ts +5 -0
- package/types/createNativeToast.d.ts.map +1 -1
- package/types/createNativeToast.native.d.ts +1 -0
- package/types/createNativeToast.native.d.ts.map +1 -1
- package/types/dispatchNativeToast.d.ts +12 -0
- package/types/dispatchNativeToast.d.ts.map +1 -0
- package/types/useAnimatedDragGesture.d.ts +33 -0
- package/types/useAnimatedDragGesture.d.ts.map +1 -1
- package/types/useAnimatedDragGesture.native.d.ts +33 -0
- package/types/useAnimatedDragGesture.native.d.ts.map +1 -1
- package/types/useReducedMotion.d.ts +6 -0
- package/types/useToastAnimations.d.ts +50 -0
- package/types/useToastAnimations.d.ts.map +1 -1
- package/types/v2.d.ts +10 -0
- package/types/v2.d.ts.map +1 -0
- package/v2/index.cjs +2 -0
- package/v2/index.js +2 -0
- package/v2/index.native.cjs +2 -0
- package/v2/index.native.js +2 -0
- package/LICENSE +0 -21
- package/dist/cjs/Toast.js +0 -119
- package/dist/cjs/Toast.js.map +0 -6
- package/dist/cjs/ToastAnnounce.js +0 -72
- package/dist/cjs/ToastAnnounce.js.map +0 -6
- package/dist/cjs/ToastComposable.js +0 -548
- package/dist/cjs/ToastComposable.js.map +0 -6
- package/dist/cjs/ToastImperative.js +0 -71
- package/dist/cjs/ToastImperative.js.map +0 -6
- package/dist/cjs/ToastImpl.js +0 -227
- package/dist/cjs/ToastImpl.js.map +0 -6
- package/dist/cjs/ToastItem.cjs +0 -526
- package/dist/cjs/ToastItem.js +0 -409
- package/dist/cjs/ToastItem.js.map +0 -6
- package/dist/cjs/ToastItem.native.js +0 -614
- package/dist/cjs/ToastItem.native.js.map +0 -1
- package/dist/cjs/ToastPortal.js +0 -26
- package/dist/cjs/ToastPortal.js.map +0 -6
- package/dist/cjs/ToastProvider.js +0 -105
- package/dist/cjs/ToastProvider.js.map +0 -6
- package/dist/cjs/ToastState.js +0 -160
- package/dist/cjs/ToastState.js.map +0 -6
- package/dist/cjs/ToastViewport.js +0 -263
- package/dist/cjs/ToastViewport.js.map +0 -6
- package/dist/cjs/Toaster.js +0 -204
- package/dist/cjs/Toaster.js.map +0 -6
- package/dist/cjs/constants.js +0 -22
- package/dist/cjs/constants.js.map +0 -6
- package/dist/cjs/createNativeToast.js +0 -44
- package/dist/cjs/createNativeToast.js.map +0 -6
- package/dist/cjs/index.js +0 -15
- package/dist/cjs/index.js.map +0 -6
- package/dist/cjs/types.js +0 -14
- package/dist/cjs/types.js.map +0 -6
- package/dist/cjs/useAnimatedDragGesture.js +0 -97
- package/dist/cjs/useAnimatedDragGesture.js.map +0 -6
- package/dist/cjs/useDragGesture.cjs +0 -129
- package/dist/cjs/useDragGesture.js +0 -100
- package/dist/cjs/useDragGesture.js.map +0 -6
- package/dist/cjs/useDragGesture.native.js +0 -146
- package/dist/cjs/useDragGesture.native.js.map +0 -1
- package/dist/cjs/useReducedMotion.js +0 -53
- package/dist/cjs/useReducedMotion.js.map +0 -6
- package/dist/cjs/useToastAnimations.js +0 -144
- package/dist/cjs/useToastAnimations.js.map +0 -6
- package/dist/cjs/v1.cjs +0 -31
- package/dist/cjs/v1.js +0 -26
- package/dist/cjs/v1.js.map +0 -6
- package/dist/cjs/v1.native.js +0 -34
- package/dist/cjs/v1.native.js.map +0 -1
- package/dist/esm/Toast.js +0 -107
- package/dist/esm/Toast.js.map +0 -6
- package/dist/esm/ToastAnnounce.js +0 -55
- package/dist/esm/ToastAnnounce.js.map +0 -6
- package/dist/esm/ToastComposable.js +0 -543
- package/dist/esm/ToastComposable.js.map +0 -6
- package/dist/esm/ToastImperative.js +0 -50
- package/dist/esm/ToastImperative.js.map +0 -6
- package/dist/esm/ToastImpl.js +0 -225
- package/dist/esm/ToastImpl.js.map +0 -6
- package/dist/esm/ToastItem.js +0 -393
- package/dist/esm/ToastItem.js.map +0 -6
- package/dist/esm/ToastItem.mjs +0 -492
- package/dist/esm/ToastItem.mjs.map +0 -1
- package/dist/esm/ToastItem.native.js +0 -577
- package/dist/esm/ToastItem.native.js.map +0 -1
- package/dist/esm/ToastPortal.js +0 -13
- package/dist/esm/ToastPortal.js.map +0 -6
- package/dist/esm/ToastProvider.js +0 -87
- package/dist/esm/ToastProvider.js.map +0 -6
- package/dist/esm/ToastState.js +0 -144
- package/dist/esm/ToastState.js.map +0 -6
- package/dist/esm/ToastViewport.js +0 -250
- package/dist/esm/ToastViewport.js.map +0 -6
- package/dist/esm/Toaster.js +0 -188
- package/dist/esm/Toaster.js.map +0 -6
- package/dist/esm/constants.js +0 -6
- package/dist/esm/constants.js.map +0 -6
- package/dist/esm/createNativeToast.js +0 -28
- package/dist/esm/createNativeToast.js.map +0 -6
- package/dist/esm/types.js +0 -1
- package/dist/esm/types.js.map +0 -6
- package/dist/esm/useAnimatedDragGesture.js +0 -73
- package/dist/esm/useAnimatedDragGesture.js.map +0 -6
- package/dist/esm/useDragGesture.js +0 -76
- package/dist/esm/useDragGesture.js.map +0 -6
- package/dist/esm/useDragGesture.mjs +0 -95
- package/dist/esm/useDragGesture.mjs.map +0 -1
- package/dist/esm/useDragGesture.native.js +0 -109
- package/dist/esm/useDragGesture.native.js.map +0 -1
- package/dist/esm/useReducedMotion.js +0 -30
- package/dist/esm/useReducedMotion.js.map +0 -6
- package/dist/esm/useToastAnimations.js +0 -122
- package/dist/esm/useToastAnimations.js.map +0 -6
- package/dist/esm/v1.js +0 -17
- package/dist/esm/v1.js.map +0 -6
- package/dist/esm/v1.mjs +0 -3
- package/dist/esm/v1.mjs.map +0 -1
- package/dist/esm/v1.native.js +0 -3
- package/dist/esm/v1.native.js.map +0 -1
- package/dist/jsx/Toast.js +0 -107
- package/dist/jsx/Toast.js.map +0 -6
- package/dist/jsx/ToastAnnounce.js +0 -55
- package/dist/jsx/ToastAnnounce.js.map +0 -6
- package/dist/jsx/ToastComposable.js +0 -543
- package/dist/jsx/ToastComposable.js.map +0 -6
- package/dist/jsx/ToastImperative.js +0 -50
- package/dist/jsx/ToastImperative.js.map +0 -6
- package/dist/jsx/ToastImpl.js +0 -225
- package/dist/jsx/ToastImpl.js.map +0 -6
- package/dist/jsx/ToastItem.js +0 -393
- package/dist/jsx/ToastItem.js.map +0 -6
- package/dist/jsx/ToastItem.mjs +0 -492
- package/dist/jsx/ToastItem.mjs.map +0 -1
- package/dist/jsx/ToastItem.native.js +0 -614
- package/dist/jsx/ToastItem.native.js.map +0 -1
- package/dist/jsx/ToastPortal.js +0 -13
- package/dist/jsx/ToastPortal.js.map +0 -6
- package/dist/jsx/ToastProvider.js +0 -87
- package/dist/jsx/ToastProvider.js.map +0 -6
- package/dist/jsx/ToastState.js +0 -144
- package/dist/jsx/ToastState.js.map +0 -6
- package/dist/jsx/ToastViewport.js +0 -250
- package/dist/jsx/ToastViewport.js.map +0 -6
- package/dist/jsx/Toaster.js +0 -188
- package/dist/jsx/Toaster.js.map +0 -6
- package/dist/jsx/constants.js +0 -6
- package/dist/jsx/constants.js.map +0 -6
- package/dist/jsx/createNativeToast.js +0 -28
- package/dist/jsx/createNativeToast.js.map +0 -6
- package/dist/jsx/types.js +0 -1
- package/dist/jsx/types.js.map +0 -6
- package/dist/jsx/useAnimatedDragGesture.js +0 -73
- package/dist/jsx/useAnimatedDragGesture.js.map +0 -6
- package/dist/jsx/useDragGesture.js +0 -76
- package/dist/jsx/useDragGesture.js.map +0 -6
- package/dist/jsx/useDragGesture.mjs +0 -95
- package/dist/jsx/useDragGesture.mjs.map +0 -1
- package/dist/jsx/useDragGesture.native.js +0 -146
- package/dist/jsx/useDragGesture.native.js.map +0 -1
- package/dist/jsx/useReducedMotion.js +0 -30
- package/dist/jsx/useReducedMotion.js.map +0 -6
- package/dist/jsx/useToastAnimations.js +0 -122
- package/dist/jsx/useToastAnimations.js.map +0 -6
- package/dist/jsx/v1.js +0 -17
- package/dist/jsx/v1.js.map +0 -6
- package/dist/jsx/v1.mjs +0 -3
- package/dist/jsx/v1.mjs.map +0 -1
- package/dist/jsx/v1.native.js +0 -34
- package/dist/jsx/v1.native.js.map +0 -1
- package/types/ToastItem.d.ts.map +0 -1
- package/types/useDragGesture.d.ts.map +0 -1
- package/types/useDragGesture.native.d.ts.map +0 -1
- package/types/v1.d.ts.map +0 -1
|
@@ -1,548 +0,0 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
9
|
-
}, __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
-
return to;
|
|
14
|
-
};
|
|
15
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
16
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
17
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
18
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
19
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
20
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
|
21
|
-
mod
|
|
22
|
-
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
23
|
-
var ToastComposable_exports = {};
|
|
24
|
-
__export(ToastComposable_exports, {
|
|
25
|
-
Toast: () => Toast,
|
|
26
|
-
useToastItem: () => useToastItem,
|
|
27
|
-
useToasts: () => useToasts
|
|
28
|
-
});
|
|
29
|
-
module.exports = __toCommonJS(ToastComposable_exports);
|
|
30
|
-
var import_animate_presence = require("@tamagui/animate-presence"), import_constants = require("@tamagui/constants"), import_core = require("@tamagui/core"), import_helpers = require("@tamagui/helpers"), import_portal = require("@tamagui/portal"), import_stacks = require("@tamagui/stacks"), import_text = require("@tamagui/text"), React = __toESM(require("react"), 1), import_ToastState = require("./ToastState"), import_useAnimatedDragGesture = require("./useAnimatedDragGesture"), import_useToastAnimations = require("./useToastAnimations"), import_useReducedMotion = require("./useReducedMotion"), import_jsx_runtime = require("react/jsx-runtime");
|
|
31
|
-
const VISIBLE_TOASTS_AMOUNT = 4, VIEWPORT_OFFSET = 24, TOAST_GAP = 14, TOAST_LIFETIME = 4e3, TIME_BEFORE_UNMOUNT = 200, ToastContext = (0, import_core.createStyledContext)(
|
|
32
|
-
{},
|
|
33
|
-
"Toast__"
|
|
34
|
-
), useToastContext = ToastContext.useStyledContext, ToastItemContext = React.createContext(null);
|
|
35
|
-
function useToastItemContext() {
|
|
36
|
-
const ctx = React.useContext(ToastItemContext);
|
|
37
|
-
if (!ctx)
|
|
38
|
-
throw new Error("useToastItemContext must be used within Toast.Item or Toast.List");
|
|
39
|
-
return ctx;
|
|
40
|
-
}
|
|
41
|
-
const DefaultSuccessIcon = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, { size: "$5", color: "$green10", children: "\u2713" }), DefaultErrorIcon = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, { size: "$5", color: "$red10", children: "\u2715" }), DefaultWarningIcon = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, { size: "$5", color: "$yellow10", children: "\u26A0" }), DefaultInfoIcon = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, { size: "$5", color: "$blue10", children: "\u2139" }), DefaultLoadingIcon = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, { size: "$5", color: "$color11", children: "\u27F3" }), DefaultCloseIcon = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, { size: "$1", color: "$color11", children: "\u2715" });
|
|
42
|
-
function resolveSwipeDirection(direction, position) {
|
|
43
|
-
if (direction !== "auto") return direction;
|
|
44
|
-
const [yPosition, xPosition] = position.split("-");
|
|
45
|
-
return xPosition === "left" ? "left" : xPosition === "right" ? "right" : yPosition === "top" ? "up" : "down";
|
|
46
|
-
}
|
|
47
|
-
const ToastRoot = React.forwardRef(
|
|
48
|
-
function(props, ref) {
|
|
49
|
-
const {
|
|
50
|
-
children,
|
|
51
|
-
position = "bottom-right",
|
|
52
|
-
duration = TOAST_LIFETIME,
|
|
53
|
-
gap = TOAST_GAP,
|
|
54
|
-
visibleToasts = VISIBLE_TOASTS_AMOUNT,
|
|
55
|
-
swipeDirection: swipeDirectionProp = "auto",
|
|
56
|
-
swipeThreshold = 50,
|
|
57
|
-
closeButton = !1,
|
|
58
|
-
theme: themeProp,
|
|
59
|
-
reducedMotion: reducedMotionProp,
|
|
60
|
-
icons
|
|
61
|
-
} = props, reducedMotion = (0, import_useReducedMotion.useReducedMotion)(reducedMotionProp), [toasts, setToasts] = React.useState([]), [heights, setHeights] = React.useState([]), [expanded, setExpanded] = React.useState(!1), [interacting, setInteracting] = React.useState(!1);
|
|
62
|
-
React.useEffect(() => import_ToastState.ToastState.subscribe((toast) => {
|
|
63
|
-
if (toast.dismiss) {
|
|
64
|
-
setToasts(
|
|
65
|
-
(toasts2) => toasts2.map((t) => t.id === toast.id ? { ...t, delete: !0 } : t)
|
|
66
|
-
);
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
setToasts((toasts2) => {
|
|
70
|
-
const idx = toasts2.findIndex((t) => t.id === toast.id);
|
|
71
|
-
return idx !== -1 ? [
|
|
72
|
-
...toasts2.slice(0, idx),
|
|
73
|
-
{ ...toasts2[idx], ...toast },
|
|
74
|
-
...toasts2.slice(idx + 1)
|
|
75
|
-
] : [toast, ...toasts2];
|
|
76
|
-
});
|
|
77
|
-
}), []), React.useEffect(() => {
|
|
78
|
-
toasts.length <= 1 && setExpanded(!1);
|
|
79
|
-
}, [toasts.length]);
|
|
80
|
-
const removeToast = React.useCallback((toastToRemove) => {
|
|
81
|
-
setToasts((toasts2) => (toasts2.find((t) => t.id === toastToRemove.id)?.delete || import_ToastState.ToastState.dismiss(toastToRemove.id), toasts2.filter(({ id }) => id !== toastToRemove.id)));
|
|
82
|
-
}, []), swipeDirection = resolveSwipeDirection(swipeDirectionProp, position), currentTheme = (0, import_core.useThemeName)(), resolvedTheme = themeProp === "system" || !themeProp ? currentTheme?.includes("dark") ? "dark" : "light" : themeProp, contextValue = {
|
|
83
|
-
toasts,
|
|
84
|
-
heights,
|
|
85
|
-
setHeights,
|
|
86
|
-
expanded,
|
|
87
|
-
setExpanded,
|
|
88
|
-
interacting,
|
|
89
|
-
setInteracting,
|
|
90
|
-
removeToast,
|
|
91
|
-
position,
|
|
92
|
-
duration,
|
|
93
|
-
gap,
|
|
94
|
-
visibleToasts,
|
|
95
|
-
swipeDirection,
|
|
96
|
-
swipeThreshold,
|
|
97
|
-
closeButton,
|
|
98
|
-
reducedMotion,
|
|
99
|
-
icons
|
|
100
|
-
};
|
|
101
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastContext.Provider, { ...contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_core.Theme, { name: resolvedTheme, children }) });
|
|
102
|
-
}
|
|
103
|
-
), ToastViewportFrame = (0, import_core.styled)(import_core.View, {
|
|
104
|
-
name: "ToastViewport",
|
|
105
|
-
variants: {
|
|
106
|
-
unstyled: {
|
|
107
|
-
false: {
|
|
108
|
-
position: import_constants.isWeb ? "fixed" : "absolute",
|
|
109
|
-
zIndex: 1e5,
|
|
110
|
-
pointerEvents: "box-none",
|
|
111
|
-
maxWidth: "100%",
|
|
112
|
-
width: 356,
|
|
113
|
-
minHeight: 1
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
},
|
|
117
|
-
defaultVariants: {
|
|
118
|
-
unstyled: process.env.TAMAGUI_HEADLESS === "1"
|
|
119
|
-
}
|
|
120
|
-
}), ToastViewport = ToastViewportFrame.styleable(
|
|
121
|
-
function(props, ref) {
|
|
122
|
-
const {
|
|
123
|
-
offset = VIEWPORT_OFFSET,
|
|
124
|
-
hotkey = ["altKey", "KeyT"],
|
|
125
|
-
label = "Notifications",
|
|
126
|
-
portalToRoot = !0,
|
|
127
|
-
children,
|
|
128
|
-
...rest
|
|
129
|
-
} = props, ctx = useToastContext(), listRef = React.useRef(null), hoverTimeoutRef = React.useRef(null), hoverCooldownRef = React.useRef(!1), [yPosition, xPosition] = ctx.position.split("-"), offsetStyles = React.useMemo(() => {
|
|
130
|
-
const styles = {}, defaultOffset = typeof offset == "number" ? offset : VIEWPORT_OFFSET, offsetObj = typeof offset == "object" ? offset : {
|
|
131
|
-
top: defaultOffset,
|
|
132
|
-
right: defaultOffset,
|
|
133
|
-
bottom: defaultOffset,
|
|
134
|
-
left: defaultOffset
|
|
135
|
-
};
|
|
136
|
-
return yPosition === "top" ? styles.top = offsetObj.top ?? defaultOffset : styles.bottom = offsetObj.bottom ?? defaultOffset, xPosition === "left" ? styles.left = offsetObj.left ?? defaultOffset : xPosition === "right" ? styles.right = offsetObj.right ?? defaultOffset : (styles.left = "50%", styles.transform = "translateX(-50%)"), styles;
|
|
137
|
-
}, [offset, yPosition, xPosition]);
|
|
138
|
-
if (React.useEffect(() => {
|
|
139
|
-
if (!import_constants.isWeb) return;
|
|
140
|
-
const handleKeyDown = (event) => {
|
|
141
|
-
hotkey.length > 0 && hotkey.every((key) => event[key] || event.code === key) && (ctx.setExpanded(!0), listRef.current?.focus()), event.code === "Escape" && ctx.setExpanded(!1);
|
|
142
|
-
};
|
|
143
|
-
return document.addEventListener("keydown", handleKeyDown), () => document.removeEventListener("keydown", handleKeyDown);
|
|
144
|
-
}, [hotkey]), ctx.toasts.length === 0) return null;
|
|
145
|
-
const hotkeyLabel = hotkey.join("+").replace(/Key/g, "").replace(/Digit/g, ""), content = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
146
|
-
ToastViewportFrame,
|
|
147
|
-
{
|
|
148
|
-
ref: listRef,
|
|
149
|
-
"aria-label": `${label} ${hotkeyLabel}`,
|
|
150
|
-
tabIndex: -1,
|
|
151
|
-
"aria-live": "polite",
|
|
152
|
-
style: offsetStyles,
|
|
153
|
-
"data-y-position": yPosition,
|
|
154
|
-
"data-x-position": xPosition,
|
|
155
|
-
onMouseEnter: () => {
|
|
156
|
-
ctx.toasts.length > 1 && !ctx.interacting && !hoverCooldownRef.current && (hoverTimeoutRef.current = setTimeout(() => ctx.setExpanded(!0), 50));
|
|
157
|
-
},
|
|
158
|
-
onMouseLeave: () => {
|
|
159
|
-
hoverTimeoutRef.current && (clearTimeout(hoverTimeoutRef.current), hoverTimeoutRef.current = null), ctx.interacting || ctx.setExpanded(!1);
|
|
160
|
-
},
|
|
161
|
-
onPointerDown: () => {
|
|
162
|
-
hoverTimeoutRef.current && (clearTimeout(hoverTimeoutRef.current), hoverTimeoutRef.current = null), ctx.setInteracting(!0);
|
|
163
|
-
},
|
|
164
|
-
onPointerUp: () => ctx.setInteracting(!1),
|
|
165
|
-
...rest,
|
|
166
|
-
children
|
|
167
|
-
}
|
|
168
|
-
);
|
|
169
|
-
return portalToRoot && import_constants.isWeb ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_portal.Portal, { children: content }) : content;
|
|
170
|
-
}
|
|
171
|
-
);
|
|
172
|
-
function ToastList({ renderItem }) {
|
|
173
|
-
const ctx = useToastContext(), getHeightBeforeMe = (index) => {
|
|
174
|
-
const heightIndex = ctx.heights.findIndex((h) => h.toastId === ctx.toasts[index]?.id);
|
|
175
|
-
return heightIndex === -1 ? 0 : ctx.heights.reduce((prev, curr, i) => i >= heightIndex ? prev : prev + curr.height, 0);
|
|
176
|
-
};
|
|
177
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_animate_presence.AnimatePresence, { children: ctx.toasts.map((toast, index) => {
|
|
178
|
-
const handleClose = () => {
|
|
179
|
-
toast.dismissible !== !1 && (toast.onDismiss?.(toast), ctx.removeToast(toast));
|
|
180
|
-
}, itemContextValue = {
|
|
181
|
-
toast,
|
|
182
|
-
handleClose
|
|
183
|
-
};
|
|
184
|
-
return renderItem ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastItemContext.Provider, { value: itemContextValue, children: renderItem({ toast, index, handleClose }) }, toast.id) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastItemContext.Provider, { value: itemContextValue, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastItemInner, { toast, index, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DefaultToastContent, { toast }) }) }, toast.id);
|
|
185
|
-
}) });
|
|
186
|
-
}
|
|
187
|
-
function DefaultToastContent({ toast }) {
|
|
188
|
-
const ctx = useToastContext(), { handleClose } = useToastItemContext(), toastType = toast.type ?? "default", title = typeof toast.title == "function" ? toast.title() : toast.title, description = typeof toast.description == "function" ? toast.description() : toast.description;
|
|
189
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_stacks.XStack, { alignItems: "flex-start", gap: "$3", children: [
|
|
190
|
-
toastType !== "default" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastIcon, {}),
|
|
191
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_stacks.YStack, { flex: 1, gap: "$1", children: [
|
|
192
|
-
title && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastTitle, { children: title }),
|
|
193
|
-
description && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastDescription, { children: description }),
|
|
194
|
-
(toast.action || toast.cancel) && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_stacks.XStack, { gap: "$2", marginTop: "$2", children: [
|
|
195
|
-
toast.cancel && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
196
|
-
ToastActionFrame,
|
|
197
|
-
{
|
|
198
|
-
backgroundColor: "transparent",
|
|
199
|
-
onPress: (e) => {
|
|
200
|
-
toast.cancel?.onClick?.(e), handleClose();
|
|
201
|
-
},
|
|
202
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, { size: "$2", color: "$color11", children: toast.cancel.label })
|
|
203
|
-
}
|
|
204
|
-
),
|
|
205
|
-
toast.action && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
206
|
-
ToastActionFrame,
|
|
207
|
-
{
|
|
208
|
-
backgroundColor: "$color12",
|
|
209
|
-
hoverStyle: { backgroundColor: "$color11" },
|
|
210
|
-
pressStyle: { backgroundColor: "$color10" },
|
|
211
|
-
onPress: (e) => {
|
|
212
|
-
toast.action?.onClick?.(e), e.defaultPrevented || handleClose();
|
|
213
|
-
},
|
|
214
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_text.SizableText, { size: "$2", fontWeight: "600", color: "$background", children: toast.action.label })
|
|
215
|
-
}
|
|
216
|
-
)
|
|
217
|
-
] })
|
|
218
|
-
] }),
|
|
219
|
-
ctx.closeButton && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastClose, {})
|
|
220
|
-
] });
|
|
221
|
-
}
|
|
222
|
-
const ToastPositionWrapper = (0, import_core.styled)(import_stacks.YStack, {
|
|
223
|
-
name: "ToastPositionWrapper",
|
|
224
|
-
pointerEvents: "auto",
|
|
225
|
-
position: "absolute",
|
|
226
|
-
left: 0,
|
|
227
|
-
right: 0,
|
|
228
|
-
opacity: 1,
|
|
229
|
-
scale: 1,
|
|
230
|
-
y: 0,
|
|
231
|
-
x: 0
|
|
232
|
-
}), ToastItemFrame = (0, import_core.styled)(import_stacks.YStack, {
|
|
233
|
-
name: "ToastItem",
|
|
234
|
-
userSelect: "none",
|
|
235
|
-
cursor: "grab",
|
|
236
|
-
focusable: !0,
|
|
237
|
-
variants: {
|
|
238
|
-
unstyled: {
|
|
239
|
-
false: {
|
|
240
|
-
backgroundColor: "$background",
|
|
241
|
-
borderRadius: "$4",
|
|
242
|
-
paddingHorizontal: "$4",
|
|
243
|
-
paddingVertical: "$3",
|
|
244
|
-
borderWidth: 1,
|
|
245
|
-
borderColor: "$borderColor",
|
|
246
|
-
shadowColor: "rgba(0, 0, 0, 0.15)",
|
|
247
|
-
shadowOffset: { width: 0, height: 4 },
|
|
248
|
-
shadowRadius: 12,
|
|
249
|
-
focusVisibleStyle: {
|
|
250
|
-
outlineWidth: 2,
|
|
251
|
-
outlineColor: "$color8",
|
|
252
|
-
outlineStyle: "solid"
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
},
|
|
257
|
-
defaultVariants: {
|
|
258
|
-
unstyled: process.env.TAMAGUI_HEADLESS === "1"
|
|
259
|
-
}
|
|
260
|
-
});
|
|
261
|
-
function DragWrapper({
|
|
262
|
-
animatedStyle,
|
|
263
|
-
gestureHandlers,
|
|
264
|
-
AnimatedView,
|
|
265
|
-
dragRef,
|
|
266
|
-
children
|
|
267
|
-
}) {
|
|
268
|
-
return import_constants.isWeb ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
269
|
-
"div",
|
|
270
|
-
{
|
|
271
|
-
ref: dragRef,
|
|
272
|
-
style: {
|
|
273
|
-
flex: 1,
|
|
274
|
-
display: "flex",
|
|
275
|
-
flexDirection: "column",
|
|
276
|
-
userSelect: "none",
|
|
277
|
-
WebkitUserSelect: "none",
|
|
278
|
-
touchAction: "none",
|
|
279
|
-
cursor: "grab"
|
|
280
|
-
},
|
|
281
|
-
...gestureHandlers,
|
|
282
|
-
children
|
|
283
|
-
}
|
|
284
|
-
) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AnimatedView, { style: [{ flex: 1 }, animatedStyle], ...gestureHandlers, children });
|
|
285
|
-
}
|
|
286
|
-
const ToastItemInner = ToastItemFrame.styleable(
|
|
287
|
-
function(props, ref) {
|
|
288
|
-
const { toast, index, children, ...rest } = props, ctx = useToastContext(), [mounted, setMounted] = React.useState(!1), [removed, setRemoved] = React.useState(!1), [swipeOut, setSwipeOut] = React.useState(!1), closeTimerRef = React.useRef(null), closeTimerStartRef = React.useRef(0), lastPauseTimeRef = React.useRef(0), remainingTimeRef = React.useRef(toast.duration ?? ctx.duration), isFront = index === 0, isVisible = index < ctx.visibleToasts, toastType = toast.type ?? "default", dismissible = toast.dismissible !== !1, duration = toast.duration ?? ctx.duration, [yPosition] = ctx.position.split("-"), isTop = yPosition === "top", heightIndex = React.useMemo(
|
|
289
|
-
() => ctx.heights.findIndex((h) => h.toastId === toast.id) || 0,
|
|
290
|
-
[ctx.heights, toast.id]
|
|
291
|
-
), toastsHeightBefore = React.useMemo(() => ctx.heights.reduce((prev, curr, i) => i >= heightIndex ? prev : prev + curr.height, 0), [ctx.heights, heightIndex]), startTimer = React.useCallback(() => {
|
|
292
|
-
duration === Number.POSITIVE_INFINITY || toastType === "loading" || (closeTimerStartRef.current = Date.now(), closeTimerRef.current = setTimeout(() => {
|
|
293
|
-
toast.onAutoClose?.(toast), setRemoved(!0), setTimeout(() => ctx.removeToast(toast), TIME_BEFORE_UNMOUNT);
|
|
294
|
-
}, remainingTimeRef.current));
|
|
295
|
-
}, [duration, toastType, toast, ctx.removeToast]), pauseTimer = (0, import_core.useEvent)(() => {
|
|
296
|
-
if (closeTimerRef.current && clearTimeout(closeTimerRef.current), lastPauseTimeRef.current < closeTimerStartRef.current) {
|
|
297
|
-
const elapsed = Date.now() - closeTimerStartRef.current;
|
|
298
|
-
remainingTimeRef.current = Math.max(0, remainingTimeRef.current - elapsed);
|
|
299
|
-
}
|
|
300
|
-
lastPauseTimeRef.current = Date.now();
|
|
301
|
-
}), resumeTimer = (0, import_core.useEvent)(() => {
|
|
302
|
-
startTimer();
|
|
303
|
-
});
|
|
304
|
-
React.useEffect(() => {
|
|
305
|
-
setMounted(!0);
|
|
306
|
-
}, []), React.useEffect(() => {
|
|
307
|
-
toast.delete && (setRemoved(!0), setTimeout(() => {
|
|
308
|
-
ctx.removeToast(toast);
|
|
309
|
-
}, TIME_BEFORE_UNMOUNT));
|
|
310
|
-
}, [toast.delete, toast, ctx.removeToast]), React.useEffect(() => (ctx.expanded || ctx.interacting ? pauseTimer() : startTimer(), () => {
|
|
311
|
-
closeTimerRef.current && clearTimeout(closeTimerRef.current);
|
|
312
|
-
}), [ctx.expanded, ctx.interacting, startTimer]), React.useEffect(() => {
|
|
313
|
-
remainingTimeRef.current = duration;
|
|
314
|
-
}, [duration]);
|
|
315
|
-
const {
|
|
316
|
-
setDragOffset,
|
|
317
|
-
springBack,
|
|
318
|
-
animateOut,
|
|
319
|
-
animatedStyle,
|
|
320
|
-
AnimatedView,
|
|
321
|
-
dragRef
|
|
322
|
-
} = (0, import_useToastAnimations.useToastAnimations)({ reducedMotion: ctx.reducedMotion }), { isDragging, gestureHandlers } = (0, import_useAnimatedDragGesture.useAnimatedDragGesture)({
|
|
323
|
-
direction: ctx.swipeDirection,
|
|
324
|
-
threshold: ctx.swipeThreshold,
|
|
325
|
-
disabled: !dismissible || toastType === "loading",
|
|
326
|
-
expanded: ctx.expanded,
|
|
327
|
-
onDragStart: pauseTimer,
|
|
328
|
-
onDragMove: setDragOffset,
|
|
329
|
-
onDismiss: (exitDirection, velocity) => {
|
|
330
|
-
setSwipeOut(!0), toast.onDismiss?.(toast), setRemoved(!0), ctx.setHeights((prev) => prev.filter((h) => h.toastId !== toast.id)), animateOut(exitDirection, velocity, () => ctx.removeToast(toast));
|
|
331
|
-
},
|
|
332
|
-
onCancel: () => {
|
|
333
|
-
springBack(() => {
|
|
334
|
-
resumeTimer();
|
|
335
|
-
});
|
|
336
|
-
}
|
|
337
|
-
}), handleLayout = React.useCallback(
|
|
338
|
-
(event) => {
|
|
339
|
-
const { height } = event.nativeEvent.layout;
|
|
340
|
-
ctx.setHeights((prev) => prev.find((h) => h.toastId === toast.id) ? prev.map((h) => h.toastId === toast.id ? { ...h, height } : h) : [{ toastId: toast.id, height }, ...prev]);
|
|
341
|
-
},
|
|
342
|
-
[toast.id]
|
|
343
|
-
);
|
|
344
|
-
React.useEffect(() => () => {
|
|
345
|
-
ctx.setHeights((prev) => prev.filter((h) => h.toastId !== toast.id));
|
|
346
|
-
}, [toast.id]);
|
|
347
|
-
const handleClose = React.useCallback(() => {
|
|
348
|
-
dismissible && (toast.onDismiss?.(toast), setRemoved(!0), setTimeout(() => ctx.removeToast(toast), TIME_BEFORE_UNMOUNT));
|
|
349
|
-
}, [dismissible, toast, ctx.removeToast]), frontToastHeight = ctx.heights.length > 0 ? ctx.heights[0]?.height ?? 55 : 55, stackScale = !ctx.expanded && !isFront ? 1 - index * 0.05 : 1, expandedOffset = toastsHeightBefore + index * ctx.gap, peekVisible = 10, stackY = ctx.expanded ? isTop ? expandedOffset : -expandedOffset : isFront ? 0 : isTop ? peekVisible * index : -peekVisible * index, computedOpacity = index >= ctx.visibleToasts ? 0 : !ctx.expanded && index === ctx.visibleToasts - 1 ? 0.5 : 1, computedZIndex = removed ? 0 : ctx.visibleToasts - index + 1, computedHeight = !ctx.expanded && !isFront ? frontToastHeight : void 0, computedPointerEvents = index >= ctx.visibleToasts ? "none" : "auto", gapFillerHeight = ctx.expanded ? ctx.gap + 1 : 0, dataAttributes = {
|
|
350
|
-
"data-mounted": mounted ? "true" : "false",
|
|
351
|
-
"data-removed": removed ? "true" : "false",
|
|
352
|
-
"data-swipe-out": swipeOut ? "true" : "false",
|
|
353
|
-
"data-visible": isVisible ? "true" : "false",
|
|
354
|
-
"data-front": isFront ? "true" : "false",
|
|
355
|
-
"data-index": String(index),
|
|
356
|
-
"data-type": toastType,
|
|
357
|
-
"data-expanded": ctx.expanded ? "true" : "false"
|
|
358
|
-
};
|
|
359
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
360
|
-
ToastPositionWrapper,
|
|
361
|
-
{
|
|
362
|
-
ref,
|
|
363
|
-
...dataAttributes,
|
|
364
|
-
onLayout: handleLayout,
|
|
365
|
-
transition: isDragging || ctx.reducedMotion ? void 0 : "200ms",
|
|
366
|
-
y: stackY,
|
|
367
|
-
scale: stackScale,
|
|
368
|
-
opacity: computedOpacity,
|
|
369
|
-
zIndex: computedZIndex,
|
|
370
|
-
height: computedHeight,
|
|
371
|
-
overflow: computedHeight ? "hidden" : void 0,
|
|
372
|
-
pointerEvents: computedPointerEvents,
|
|
373
|
-
top: isTop ? 0 : void 0,
|
|
374
|
-
bottom: isTop ? void 0 : 0,
|
|
375
|
-
...import_constants.isWeb && !isFront && !ctx.expanded && {
|
|
376
|
-
style: { transformOrigin: isTop ? "top center" : "bottom center" }
|
|
377
|
-
},
|
|
378
|
-
enterStyle: ctx.reducedMotion ? { opacity: 0 } : { opacity: 0, y: isTop ? -10 : 10, scale: 0.95 },
|
|
379
|
-
exitStyle: ctx.reducedMotion ? { opacity: 0 } : {
|
|
380
|
-
opacity: 0,
|
|
381
|
-
x: 0,
|
|
382
|
-
y: swipeOut ? 0 : isTop ? -10 : 10,
|
|
383
|
-
scale: swipeOut ? 1 : 0.95
|
|
384
|
-
},
|
|
385
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
386
|
-
DragWrapper,
|
|
387
|
-
{
|
|
388
|
-
animatedStyle,
|
|
389
|
-
gestureHandlers,
|
|
390
|
-
AnimatedView,
|
|
391
|
-
dragRef,
|
|
392
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
393
|
-
ToastItemFrame,
|
|
394
|
-
{
|
|
395
|
-
role: "status",
|
|
396
|
-
"aria-live": "polite",
|
|
397
|
-
"aria-atomic": !0,
|
|
398
|
-
tabIndex: 0,
|
|
399
|
-
...import_constants.isWeb && {
|
|
400
|
-
onKeyDown: (event) => {
|
|
401
|
-
event.key === "Escape" && dismissible && handleClose();
|
|
402
|
-
}
|
|
403
|
-
},
|
|
404
|
-
...rest,
|
|
405
|
-
children: [
|
|
406
|
-
ctx.expanded && gapFillerHeight > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
407
|
-
import_core.View,
|
|
408
|
-
{
|
|
409
|
-
position: "absolute",
|
|
410
|
-
left: 0,
|
|
411
|
-
right: 0,
|
|
412
|
-
height: gapFillerHeight,
|
|
413
|
-
pointerEvents: "auto",
|
|
414
|
-
...isTop ? { top: "100%" } : { bottom: "100%" }
|
|
415
|
-
}
|
|
416
|
-
),
|
|
417
|
-
children
|
|
418
|
-
]
|
|
419
|
-
}
|
|
420
|
-
)
|
|
421
|
-
}
|
|
422
|
-
)
|
|
423
|
-
}
|
|
424
|
-
);
|
|
425
|
-
}
|
|
426
|
-
), ToastTitle = (0, import_core.styled)(import_text.SizableText, {
|
|
427
|
-
name: "ToastTitle",
|
|
428
|
-
variants: {
|
|
429
|
-
unstyled: {
|
|
430
|
-
false: {
|
|
431
|
-
color: "$color",
|
|
432
|
-
fontWeight: "600",
|
|
433
|
-
size: "$4"
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
},
|
|
437
|
-
defaultVariants: {
|
|
438
|
-
unstyled: process.env.TAMAGUI_HEADLESS === "1"
|
|
439
|
-
}
|
|
440
|
-
}), ToastDescription = (0, import_core.styled)(import_text.SizableText, {
|
|
441
|
-
name: "ToastDescription",
|
|
442
|
-
variants: {
|
|
443
|
-
unstyled: {
|
|
444
|
-
false: {
|
|
445
|
-
color: "$color11",
|
|
446
|
-
size: "$2"
|
|
447
|
-
}
|
|
448
|
-
}
|
|
449
|
-
},
|
|
450
|
-
defaultVariants: {
|
|
451
|
-
unstyled: process.env.TAMAGUI_HEADLESS === "1"
|
|
452
|
-
}
|
|
453
|
-
}), ToastCloseFrame = (0, import_core.styled)(import_stacks.XStack, {
|
|
454
|
-
name: "ToastClose",
|
|
455
|
-
render: "button",
|
|
456
|
-
alignItems: "center",
|
|
457
|
-
justifyContent: "center",
|
|
458
|
-
cursor: "pointer",
|
|
459
|
-
variants: {
|
|
460
|
-
unstyled: {
|
|
461
|
-
false: {
|
|
462
|
-
width: 20,
|
|
463
|
-
height: 20,
|
|
464
|
-
borderRadius: "$10",
|
|
465
|
-
backgroundColor: "$color5",
|
|
466
|
-
hoverStyle: { backgroundColor: "$color6" },
|
|
467
|
-
pressStyle: { backgroundColor: "$color7" }
|
|
468
|
-
}
|
|
469
|
-
}
|
|
470
|
-
},
|
|
471
|
-
defaultVariants: {
|
|
472
|
-
unstyled: process.env.TAMAGUI_HEADLESS === "1"
|
|
473
|
-
}
|
|
474
|
-
}), ToastClose = ToastCloseFrame.styleable(function(props, ref) {
|
|
475
|
-
let handleClose;
|
|
476
|
-
try {
|
|
477
|
-
handleClose = useToastItemContext().handleClose;
|
|
478
|
-
} catch {
|
|
479
|
-
}
|
|
480
|
-
const ctx = useToastContext();
|
|
481
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastCloseFrame, { ref, "aria-label": "Close toast", onPress: handleClose, ...props, children: props.children ?? ctx.icons?.close ?? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DefaultCloseIcon, {}) });
|
|
482
|
-
}), ToastActionFrame = (0, import_core.styled)(import_stacks.XStack, {
|
|
483
|
-
name: "ToastAction",
|
|
484
|
-
render: "button",
|
|
485
|
-
alignItems: "center",
|
|
486
|
-
justifyContent: "center",
|
|
487
|
-
cursor: "pointer",
|
|
488
|
-
variants: {
|
|
489
|
-
unstyled: {
|
|
490
|
-
false: {
|
|
491
|
-
borderRadius: "$2",
|
|
492
|
-
paddingHorizontal: "$2",
|
|
493
|
-
height: 24,
|
|
494
|
-
backgroundColor: "$color5",
|
|
495
|
-
hoverStyle: { backgroundColor: "$color6" },
|
|
496
|
-
pressStyle: { backgroundColor: "$color7" }
|
|
497
|
-
}
|
|
498
|
-
}
|
|
499
|
-
},
|
|
500
|
-
defaultVariants: {
|
|
501
|
-
unstyled: process.env.TAMAGUI_HEADLESS === "1"
|
|
502
|
-
}
|
|
503
|
-
}), ToastAction = ToastActionFrame.styleable(function(props, ref) {
|
|
504
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastActionFrame, { ref, ...props });
|
|
505
|
-
});
|
|
506
|
-
function ToastIcon(props) {
|
|
507
|
-
const ctx = useToastContext();
|
|
508
|
-
let toast;
|
|
509
|
-
try {
|
|
510
|
-
toast = useToastItemContext().toast;
|
|
511
|
-
} catch {
|
|
512
|
-
return null;
|
|
513
|
-
}
|
|
514
|
-
if (!toast) return null;
|
|
515
|
-
if (toast.icon !== void 0)
|
|
516
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_core.View, { flexShrink: 0, marginTop: "$0.5", children: toast.icon });
|
|
517
|
-
const toastType = toast.type ?? "default", icon = {
|
|
518
|
-
default: null,
|
|
519
|
-
success: ctx.icons?.success ?? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DefaultSuccessIcon, {}),
|
|
520
|
-
error: ctx.icons?.error ?? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DefaultErrorIcon, {}),
|
|
521
|
-
warning: ctx.icons?.warning ?? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DefaultWarningIcon, {}),
|
|
522
|
-
info: ctx.icons?.info ?? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DefaultInfoIcon, {}),
|
|
523
|
-
loading: ctx.icons?.loading ?? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DefaultLoadingIcon, {})
|
|
524
|
-
}[toastType];
|
|
525
|
-
return icon ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_core.View, { flexShrink: 0, marginTop: "$0.5", children: icon }) : null;
|
|
526
|
-
}
|
|
527
|
-
function useToasts() {
|
|
528
|
-
const ctx = useToastContext();
|
|
529
|
-
return {
|
|
530
|
-
toasts: ctx.toasts,
|
|
531
|
-
expanded: ctx.expanded,
|
|
532
|
-
position: ctx.position
|
|
533
|
-
};
|
|
534
|
-
}
|
|
535
|
-
function useToastItem() {
|
|
536
|
-
return useToastItemContext();
|
|
537
|
-
}
|
|
538
|
-
const Toast = (0, import_helpers.withStaticProperties)(ToastRoot, {
|
|
539
|
-
Viewport: ToastViewport,
|
|
540
|
-
List: ToastList,
|
|
541
|
-
Item: ToastItemInner,
|
|
542
|
-
Title: ToastTitle,
|
|
543
|
-
Description: ToastDescription,
|
|
544
|
-
Close: ToastClose,
|
|
545
|
-
Action: ToastAction,
|
|
546
|
-
Icon: ToastIcon
|
|
547
|
-
});
|
|
548
|
-
//# sourceMappingURL=ToastComposable.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/ToastComposable.tsx"],
|
|
4
|
-
"mappings": "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",
|
|
5
|
-
"names": ["toasts"]
|
|
6
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
9
|
-
}, __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
-
return to;
|
|
14
|
-
};
|
|
15
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
16
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
17
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
18
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
19
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
20
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
|
21
|
-
mod
|
|
22
|
-
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
23
|
-
var ToastImperative_exports = {};
|
|
24
|
-
__export(ToastImperative_exports, {
|
|
25
|
-
ToastImperativeProvider: () => ToastImperativeProvider,
|
|
26
|
-
useToast: () => useToast,
|
|
27
|
-
useToastController: () => useToastController,
|
|
28
|
-
useToastState: () => useToastState
|
|
29
|
-
});
|
|
30
|
-
module.exports = __toCommonJS(ToastImperative_exports);
|
|
31
|
-
var import_core = require("@tamagui/core"), import_react = __toESM(require("react"), 1), import_createNativeToast = require("./createNativeToast"), import_jsx_runtime = require("react/jsx-runtime");
|
|
32
|
-
const ToastContext = import_react.default.createContext({}), ToastCurrentContext = import_react.default.createContext(null), useToastController = () => import_react.default.useContext(ToastContext), useToastState = () => import_react.default.useContext(ToastCurrentContext), useToast = () => ({
|
|
33
|
-
...useToastController(),
|
|
34
|
-
currentToast: useToastState()
|
|
35
|
-
}), ToastImperativeProvider = ({
|
|
36
|
-
children,
|
|
37
|
-
options
|
|
38
|
-
}) => {
|
|
39
|
-
const counterRef = import_react.default.useRef(0), [toast, setToast] = import_react.default.useState(null), [lastNativeToastRef, setLastNativeToastRef] = import_react.default.useState(null), show = import_react.default.useCallback(
|
|
40
|
-
(title, showOptions) => {
|
|
41
|
-
const native = showOptions?.native ?? options.native, isWebNative = Array.isArray(native) ? native.includes("web") : native === "web", isMobileNative = Array.isArray(native) ? native.includes("mobile") : native === "mobile", isAndroidNative = isMobileNative || (Array.isArray(native) ? native.includes("android") : native === "android"), isIosNative = isMobileNative || (Array.isArray(native) ? native.includes("ios") : native === "ios"), isHandledNatively = native === !0 || import_core.isWeb && isWebNative || !import_core.isWeb && isMobileNative || import_core.isAndroid && isAndroidNative || import_core.isIos && isIosNative;
|
|
42
|
-
if (isHandledNatively) {
|
|
43
|
-
const nativeToastResult = (0, import_createNativeToast.createNativeToast)(title, showOptions ?? {});
|
|
44
|
-
typeof nativeToastResult == "object" && nativeToastResult.nativeToastRef && setLastNativeToastRef(nativeToastResult.nativeToastRef);
|
|
45
|
-
}
|
|
46
|
-
return counterRef.current++, setToast({
|
|
47
|
-
...showOptions?.customData,
|
|
48
|
-
...showOptions,
|
|
49
|
-
viewportName: showOptions?.viewportName ?? "default",
|
|
50
|
-
title,
|
|
51
|
-
id: counterRef.current.toString(),
|
|
52
|
-
isHandledNatively
|
|
53
|
-
}), !0;
|
|
54
|
-
},
|
|
55
|
-
[setToast, JSON.stringify(options.native || null)]
|
|
56
|
-
), hide = import_react.default.useCallback(() => {
|
|
57
|
-
lastNativeToastRef?.close(), setToast((prev) => prev ? {
|
|
58
|
-
...prev,
|
|
59
|
-
hide: !0
|
|
60
|
-
} : null), setTimeout(() => {
|
|
61
|
-
setToast(null);
|
|
62
|
-
}, 100);
|
|
63
|
-
}, [setToast, lastNativeToastRef]), contextValue = import_react.default.useMemo(() => ({
|
|
64
|
-
show,
|
|
65
|
-
hide,
|
|
66
|
-
nativeToast: lastNativeToastRef,
|
|
67
|
-
options
|
|
68
|
-
}), [show, hide, lastNativeToastRef, JSON.stringify(options || null)]);
|
|
69
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ToastCurrentContext.Provider, { value: toast, children }) });
|
|
70
|
-
};
|
|
71
|
-
//# sourceMappingURL=ToastImperative.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/ToastImperative.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAwC,0BACxC,eAAkB,8BAClB,2BAAkC,gCAqL5B;AA3GN,MAAM,eAAe,aAAAA,QAAM,cAA6B,CAAC,CAAQ,GAC3D,sBAAsB,aAAAA,QAAM,cAAgC,IAAI,GAEzD,qBAAqB,MACzB,aAAAA,QAAM,WAAW,YAAY,GAGzB,gBAAgB,MACpB,aAAAA,QAAM,WAAW,mBAAmB,GAIhC,WAAW,OACf;AAAA,EACL,GAAG,mBAAmB;AAAA,EACtB,cAAc,cAAc;AAC9B,IAWW,0BAA0B,CAAC;AAAA,EACtC;AAAA,EACA;AACF,MAAoC;AAClC,QAAM,aAAa,aAAAA,QAAM,OAAO,CAAC,GAE3B,CAAC,OAAO,QAAQ,IAAI,aAAAA,QAAM,SAA2B,IAAI,GAEzD,CAAC,oBAAoB,qBAAqB,IAC9C,aAAAA,QAAM,SAAuC,IAAI,GAE7C,OAAO,aAAAA,QAAM;AAAA,IACjB,CAAC,OAAO,gBAAgB;AACtB,YAAM,SAAS,aAAa,UAAU,QAAQ,QACxC,cAAc,MAAM,QAAQ,MAAM,IACpC,OAAO,SAAS,KAAK,IACrB,WAAW,OACT,iBAAiB,MAAM,QAAQ,MAAM,IACvC,OAAO,SAAS,QAAQ,IACxB,WAAW,UACT,kBACJ,mBACC,MAAM,QAAQ,MAAM,IAAI,OAAO,SAAS,SAAS,IAAI,WAAW,YAC7D,cACJ,mBACC,MAAM,QAAQ,MAAM,IAAI,OAAO,SAAS,KAAK,IAAI,WAAW,QAEzD,oBACJ,WAAW,MACV,qBAAS,eACT,CAAC,qBAAS,kBACV,yBAAa,mBACb,qBAAS;AAEZ,UAAI,mBAAmB;AACrB,cAAM,wBAAoB,4CAAkB,OAAO,eAAe,CAAC,CAAC;AACpE,QAAI,OAAO,qBAAsB,YAAY,kBAAkB,kBAC7D,sBAAsB,kBAAkB,cAAc;AAAA,MAE1D;AACA,wBAAW,WACX,SAAS;AAAA,QACP,GAAG,aAAa;AAAA,QAChB,GAAG;AAAA,QACH,cAAc,aAAa,gBAAgB;AAAA,QAC3C;AAAA,QACA,IAAI,WAAW,QAAQ,SAAS;AAAA,QAChC;AAAA,MACF,CAAC,GACM;AAAA,IACT;AAAA,IACA,CAAC,UAAU,KAAK,UAAU,QAAQ,UAAU,IAAI,CAAC;AAAA,EACnD,GAEM,OAAO,aAAAA,QAAM,YAAY,MAAM;AACnC,wBAAoB,MAAM,GAC1B,SAAS,CAAC,SACH,OACE;AAAA,MACL,GAAG;AAAA,MACH,MAAM;AAAA,IACR,IAJkB,IAKnB,GAED,WAAW,MAAM;AACf,eAAS,IAAI;AAAA,IACf,GAAG,GAAG;AAAA,EACR,GAAG,CAAC,UAAU,kBAAkB,CAAC,GAE3B,eAAe,aAAAA,QAAM,QAAQ,OAC1B;AAAA,IACL;AAAA,IACA;AAAA,IACA,aAAa;AAAA,IACb;AAAA,EACF,IACC,CAAC,MAAM,MAAM,oBAAoB,KAAK,UAAU,WAAW,IAAI,CAAC,CAAC;AAEpE,SACE,4CAAC,aAAa,UAAb,EAAsB,OAAO,cAC5B,sDAAC,oBAAoB,UAApB,EAA6B,OAAO,OAClC,UACH,GACF;AAEJ;",
|
|
5
|
-
"names": ["React"]
|
|
6
|
-
}
|