@hanzogui/toast 7.0.0 → 7.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. package/dist/cjs/Toast.cjs +178 -0
  2. package/dist/cjs/Toast.native.js +181 -0
  3. package/dist/cjs/Toast.native.js.map +1 -0
  4. package/dist/cjs/ToastAnnounce.cjs +103 -0
  5. package/dist/cjs/ToastAnnounce.native.js +111 -0
  6. package/dist/cjs/ToastAnnounce.native.js.map +1 -0
  7. package/dist/cjs/ToastComposable.cjs +933 -0
  8. package/dist/cjs/ToastComposable.native.js +1025 -0
  9. package/dist/cjs/ToastComposable.native.js.map +1 -0
  10. package/dist/cjs/ToastImperative.cjs +119 -0
  11. package/dist/cjs/ToastImperative.native.js +130 -0
  12. package/dist/cjs/ToastImperative.native.js.map +1 -0
  13. package/dist/cjs/ToastImpl.cjs +354 -0
  14. package/dist/cjs/ToastImpl.native.js +364 -0
  15. package/dist/cjs/ToastImpl.native.js.map +1 -0
  16. package/dist/cjs/ToastItemFrame.cjs +143 -0
  17. package/dist/cjs/ToastItemFrame.native.js +148 -0
  18. package/dist/cjs/ToastItemFrame.native.js.map +1 -0
  19. package/dist/cjs/ToastPortal.cjs +49 -0
  20. package/dist/cjs/ToastPortal.native.js +52 -0
  21. package/dist/cjs/ToastPortal.native.js.map +1 -0
  22. package/dist/cjs/ToastProvider.cjs +150 -0
  23. package/dist/cjs/ToastProvider.native.js +161 -0
  24. package/dist/cjs/ToastProvider.native.js.map +1 -0
  25. package/dist/cjs/ToastState.cjs +311 -0
  26. package/dist/cjs/ToastState.native.js +324 -0
  27. package/dist/cjs/ToastState.native.js.map +1 -0
  28. package/dist/cjs/ToastViewport.cjs +319 -0
  29. package/dist/cjs/ToastViewport.native.js +343 -0
  30. package/dist/cjs/ToastViewport.native.js.map +1 -0
  31. package/dist/cjs/Toaster.cjs +87 -0
  32. package/dist/cjs/Toaster.native.js +91 -0
  33. package/dist/cjs/Toaster.native.js.map +1 -0
  34. package/dist/cjs/constants.cjs +30 -0
  35. package/dist/cjs/constants.native.js +33 -0
  36. package/dist/cjs/constants.native.js.map +1 -0
  37. package/dist/cjs/createNativeToast.cjs +59 -0
  38. package/dist/cjs/createNativeToast.native.js +60 -0
  39. package/dist/cjs/createNativeToast.native.js.map +1 -0
  40. package/dist/cjs/dispatchNativeToast.cjs +47 -0
  41. package/dist/cjs/dispatchNativeToast.native.js +52 -0
  42. package/dist/cjs/dispatchNativeToast.native.js.map +1 -0
  43. package/dist/cjs/index.cjs +20 -0
  44. package/dist/cjs/index.native.js +23 -0
  45. package/dist/cjs/index.native.js.map +1 -0
  46. package/dist/cjs/types.cjs +18 -0
  47. package/dist/cjs/types.native.js +21 -0
  48. package/dist/cjs/types.native.js.map +1 -0
  49. package/dist/cjs/useAnimatedDragGesture.cjs +214 -0
  50. package/dist/cjs/useAnimatedDragGesture.native.js +224 -0
  51. package/dist/cjs/useAnimatedDragGesture.native.js.map +1 -0
  52. package/dist/cjs/useReducedMotion.cjs +74 -0
  53. package/dist/cjs/useReducedMotion.native.js +83 -0
  54. package/dist/cjs/useReducedMotion.native.js.map +1 -0
  55. package/dist/cjs/useToastAnimations.cjs +294 -0
  56. package/dist/cjs/useToastAnimations.native.js +304 -0
  57. package/dist/cjs/useToastAnimations.native.js.map +1 -0
  58. package/dist/cjs/v2.cjs +36 -0
  59. package/dist/cjs/v2.native.js +39 -0
  60. package/dist/cjs/v2.native.js.map +1 -0
  61. package/dist/esm/Toast.mjs +137 -0
  62. package/dist/esm/Toast.mjs.map +1 -0
  63. package/dist/esm/Toast.native.js +137 -0
  64. package/dist/esm/Toast.native.js.map +1 -0
  65. package/dist/esm/ToastAnnounce.mjs +66 -0
  66. package/dist/esm/ToastAnnounce.mjs.map +1 -0
  67. package/dist/esm/ToastAnnounce.native.js +71 -0
  68. package/dist/esm/ToastAnnounce.native.js.map +1 -0
  69. package/dist/esm/ToastComposable.mjs +895 -0
  70. package/dist/esm/ToastComposable.mjs.map +1 -0
  71. package/dist/esm/ToastComposable.native.js +984 -0
  72. package/dist/esm/ToastComposable.native.js.map +1 -0
  73. package/dist/esm/ToastImperative.mjs +80 -0
  74. package/dist/esm/ToastImperative.mjs.map +1 -0
  75. package/dist/esm/ToastImperative.native.js +88 -0
  76. package/dist/esm/ToastImperative.native.js.map +1 -0
  77. package/dist/esm/ToastImpl.mjs +316 -0
  78. package/dist/esm/ToastImpl.mjs.map +1 -0
  79. package/dist/esm/ToastImpl.native.js +323 -0
  80. package/dist/esm/ToastImpl.native.js.map +1 -0
  81. package/dist/esm/ToastItemFrame.mjs +114 -0
  82. package/dist/esm/ToastItemFrame.mjs.map +1 -0
  83. package/dist/esm/ToastItemFrame.native.js +116 -0
  84. package/dist/esm/ToastItemFrame.native.js.map +1 -0
  85. package/dist/esm/ToastPortal.mjs +24 -0
  86. package/dist/esm/ToastPortal.mjs.map +1 -0
  87. package/dist/esm/ToastPortal.native.js +24 -0
  88. package/dist/esm/ToastPortal.native.js.map +1 -0
  89. package/dist/esm/ToastProvider.mjs +110 -0
  90. package/dist/esm/ToastProvider.mjs.map +1 -0
  91. package/dist/esm/ToastProvider.native.js +118 -0
  92. package/dist/esm/ToastProvider.native.js.map +1 -0
  93. package/dist/esm/ToastState.mjs +285 -0
  94. package/dist/esm/ToastState.mjs.map +1 -0
  95. package/dist/esm/ToastState.native.js +295 -0
  96. package/dist/esm/ToastState.native.js.map +1 -0
  97. package/dist/esm/ToastViewport.mjs +280 -0
  98. package/dist/esm/ToastViewport.mjs.map +1 -0
  99. package/dist/esm/ToastViewport.native.js +301 -0
  100. package/dist/esm/ToastViewport.native.js.map +1 -0
  101. package/dist/esm/Toaster.mjs +51 -0
  102. package/dist/esm/Toaster.mjs.map +1 -0
  103. package/dist/esm/Toaster.native.js +52 -0
  104. package/dist/esm/Toaster.native.js.map +1 -0
  105. package/dist/esm/constants.mjs +4 -0
  106. package/dist/esm/constants.mjs.map +1 -0
  107. package/dist/esm/constants.native.js +4 -0
  108. package/dist/esm/constants.native.js.map +1 -0
  109. package/dist/esm/createNativeToast.mjs +32 -0
  110. package/dist/esm/createNativeToast.mjs.map +1 -0
  111. package/dist/esm/createNativeToast.native.js +30 -0
  112. package/dist/esm/createNativeToast.native.js.map +1 -0
  113. package/dist/esm/dispatchNativeToast.mjs +22 -0
  114. package/dist/esm/dispatchNativeToast.mjs.map +1 -0
  115. package/dist/esm/dispatchNativeToast.native.js +24 -0
  116. package/dist/esm/dispatchNativeToast.native.js.map +1 -0
  117. package/dist/esm/index.js +2 -0
  118. package/dist/esm/index.js.map +1 -0
  119. package/dist/esm/index.mjs +2 -0
  120. package/dist/esm/index.mjs.map +1 -0
  121. package/dist/esm/index.native.js +2 -0
  122. package/dist/esm/index.native.js.map +1 -0
  123. package/dist/esm/types.mjs +2 -0
  124. package/dist/esm/types.mjs.map +1 -0
  125. package/dist/esm/types.native.js +2 -0
  126. package/dist/esm/types.native.js.map +1 -0
  127. package/dist/esm/useAnimatedDragGesture.mjs +178 -0
  128. package/dist/esm/useAnimatedDragGesture.mjs.map +1 -0
  129. package/dist/esm/useAnimatedDragGesture.native.js +185 -0
  130. package/dist/esm/useAnimatedDragGesture.native.js.map +1 -0
  131. package/dist/esm/useReducedMotion.mjs +38 -0
  132. package/dist/esm/useReducedMotion.mjs.map +1 -0
  133. package/dist/esm/useReducedMotion.native.js +44 -0
  134. package/dist/esm/useReducedMotion.native.js.map +1 -0
  135. package/dist/esm/useToastAnimations.mjs +258 -0
  136. package/dist/esm/useToastAnimations.mjs.map +1 -0
  137. package/dist/esm/useToastAnimations.native.js +265 -0
  138. package/dist/esm/useToastAnimations.native.js.map +1 -0
  139. package/dist/esm/v2.mjs +6 -0
  140. package/dist/esm/v2.mjs.map +1 -0
  141. package/dist/esm/v2.native.js +6 -0
  142. package/dist/esm/v2.native.js.map +1 -0
  143. package/dist/jsx/Toast.mjs +137 -0
  144. package/dist/jsx/Toast.mjs.map +1 -0
  145. package/dist/jsx/Toast.native.js +181 -0
  146. package/dist/jsx/Toast.native.js.map +1 -0
  147. package/dist/jsx/ToastAnnounce.mjs +66 -0
  148. package/dist/jsx/ToastAnnounce.mjs.map +1 -0
  149. package/dist/jsx/ToastAnnounce.native.js +111 -0
  150. package/dist/jsx/ToastAnnounce.native.js.map +1 -0
  151. package/dist/jsx/ToastComposable.mjs +895 -0
  152. package/dist/jsx/ToastComposable.mjs.map +1 -0
  153. package/dist/jsx/ToastComposable.native.js +1025 -0
  154. package/dist/jsx/ToastComposable.native.js.map +1 -0
  155. package/dist/jsx/ToastImperative.mjs +80 -0
  156. package/dist/jsx/ToastImperative.mjs.map +1 -0
  157. package/dist/jsx/ToastImperative.native.js +130 -0
  158. package/dist/jsx/ToastImperative.native.js.map +1 -0
  159. package/dist/jsx/ToastImpl.mjs +316 -0
  160. package/dist/jsx/ToastImpl.mjs.map +1 -0
  161. package/dist/jsx/ToastImpl.native.js +364 -0
  162. package/dist/jsx/ToastImpl.native.js.map +1 -0
  163. package/dist/jsx/ToastItemFrame.mjs +114 -0
  164. package/dist/jsx/ToastItemFrame.mjs.map +1 -0
  165. package/dist/jsx/ToastItemFrame.native.js +148 -0
  166. package/dist/jsx/ToastItemFrame.native.js.map +1 -0
  167. package/dist/jsx/ToastPortal.mjs +24 -0
  168. package/dist/jsx/ToastPortal.mjs.map +1 -0
  169. package/dist/jsx/ToastPortal.native.js +52 -0
  170. package/dist/jsx/ToastPortal.native.js.map +1 -0
  171. package/dist/jsx/ToastProvider.mjs +110 -0
  172. package/dist/jsx/ToastProvider.mjs.map +1 -0
  173. package/dist/jsx/ToastProvider.native.js +161 -0
  174. package/dist/jsx/ToastProvider.native.js.map +1 -0
  175. package/dist/jsx/ToastState.mjs +285 -0
  176. package/dist/jsx/ToastState.mjs.map +1 -0
  177. package/dist/jsx/ToastState.native.js +324 -0
  178. package/dist/jsx/ToastState.native.js.map +1 -0
  179. package/dist/jsx/ToastViewport.mjs +280 -0
  180. package/dist/jsx/ToastViewport.mjs.map +1 -0
  181. package/dist/jsx/ToastViewport.native.js +343 -0
  182. package/dist/jsx/ToastViewport.native.js.map +1 -0
  183. package/dist/jsx/Toaster.mjs +51 -0
  184. package/dist/jsx/Toaster.mjs.map +1 -0
  185. package/dist/jsx/Toaster.native.js +91 -0
  186. package/dist/jsx/Toaster.native.js.map +1 -0
  187. package/dist/jsx/constants.mjs +4 -0
  188. package/dist/jsx/constants.mjs.map +1 -0
  189. package/dist/jsx/constants.native.js +33 -0
  190. package/dist/jsx/constants.native.js.map +1 -0
  191. package/dist/jsx/createNativeToast.mjs +32 -0
  192. package/dist/jsx/createNativeToast.mjs.map +1 -0
  193. package/dist/jsx/createNativeToast.native.js +60 -0
  194. package/dist/jsx/createNativeToast.native.js.map +1 -0
  195. package/dist/jsx/dispatchNativeToast.mjs +22 -0
  196. package/dist/jsx/dispatchNativeToast.mjs.map +1 -0
  197. package/dist/jsx/dispatchNativeToast.native.js +52 -0
  198. package/dist/jsx/dispatchNativeToast.native.js.map +1 -0
  199. package/dist/jsx/index.js +2 -0
  200. package/dist/jsx/index.js.map +1 -0
  201. package/dist/jsx/index.mjs +2 -0
  202. package/dist/jsx/index.mjs.map +1 -0
  203. package/dist/jsx/index.native.js +23 -0
  204. package/dist/jsx/index.native.js.map +1 -0
  205. package/dist/jsx/types.mjs +2 -0
  206. package/dist/jsx/types.mjs.map +1 -0
  207. package/dist/jsx/types.native.js +21 -0
  208. package/dist/jsx/types.native.js.map +1 -0
  209. package/dist/jsx/useAnimatedDragGesture.mjs +178 -0
  210. package/dist/jsx/useAnimatedDragGesture.mjs.map +1 -0
  211. package/dist/jsx/useAnimatedDragGesture.native.js +224 -0
  212. package/dist/jsx/useAnimatedDragGesture.native.js.map +1 -0
  213. package/dist/jsx/useReducedMotion.mjs +38 -0
  214. package/dist/jsx/useReducedMotion.mjs.map +1 -0
  215. package/dist/jsx/useReducedMotion.native.js +83 -0
  216. package/dist/jsx/useReducedMotion.native.js.map +1 -0
  217. package/dist/jsx/useToastAnimations.mjs +258 -0
  218. package/dist/jsx/useToastAnimations.mjs.map +1 -0
  219. package/dist/jsx/useToastAnimations.native.js +304 -0
  220. package/dist/jsx/useToastAnimations.native.js.map +1 -0
  221. package/dist/jsx/v2.mjs +6 -0
  222. package/dist/jsx/v2.mjs.map +1 -0
  223. package/dist/jsx/v2.native.js +39 -0
  224. package/dist/jsx/v2.native.js.map +1 -0
  225. package/package.json +26 -24
  226. package/src/Toast.tsx +5 -5
  227. package/src/ToastAnnounce.tsx +2 -2
  228. package/src/ToastComposable.tsx +8 -8
  229. package/src/ToastImpl.tsx +6 -6
  230. package/src/ToastItemFrame.tsx +4 -4
  231. package/src/ToastProvider.tsx +5 -5
  232. package/src/ToastViewport.tsx +7 -7
  233. package/src/Toaster.tsx +2 -2
  234. package/src/useToastAnimations.ts +3 -3
  235. package/types/Toast.d.ts +14 -14
  236. package/types/Toast.d.ts.map +1 -0
  237. package/types/ToastAnnounce.d.ts +3 -3
  238. package/types/ToastAnnounce.d.ts.map +1 -0
  239. package/types/ToastComposable.d.ts +15 -15
  240. package/types/ToastComposable.d.ts.map +1 -0
  241. package/types/ToastImperative.d.ts +1 -1
  242. package/types/ToastImperative.d.ts.map +1 -0
  243. package/types/ToastImpl.d.ts +4 -4
  244. package/types/ToastImpl.d.ts.map +1 -0
  245. package/types/ToastItemFrame.d.ts +5 -5
  246. package/types/ToastItemFrame.d.ts.map +1 -0
  247. package/types/ToastPortal.d.ts +1 -1
  248. package/types/ToastPortal.d.ts.map +1 -0
  249. package/types/ToastProvider.d.ts +7 -7
  250. package/types/ToastProvider.d.ts.map +1 -0
  251. package/types/ToastState.d.ts.map +1 -0
  252. package/types/ToastViewport.d.ts +5 -5
  253. package/types/ToastViewport.d.ts.map +1 -0
  254. package/types/Toaster.d.ts +2 -2
  255. package/types/Toaster.d.ts.map +1 -0
  256. package/types/constants.d.ts.map +1 -0
  257. package/types/createNativeToast.d.ts.map +1 -0
  258. package/types/createNativeToast.native.d.ts.map +1 -0
  259. package/types/dispatchNativeToast.d.ts.map +1 -0
  260. package/types/index.d.ts.map +1 -0
  261. package/types/types.d.ts.map +1 -0
  262. package/types/useAnimatedDragGesture.d.ts.map +1 -0
  263. package/types/useAnimatedDragGesture.native.d.ts.map +1 -0
  264. package/types/useReducedMotion.d.ts.map +1 -0
  265. package/types/useToastAnimations.d.ts.map +1 -0
  266. package/types/v2.d.ts.map +1 -0
  267. package/v2/index.cjs +1 -1
  268. package/v2/index.native.cjs +1 -1
@@ -0,0 +1,343 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var ToastViewport_exports = {};
37
+ __export(ToastViewport_exports, {
38
+ ToastViewport: () => ToastViewport,
39
+ VIEWPORT_DEFAULT_HOTKEY: () => VIEWPORT_DEFAULT_HOTKEY,
40
+ VIEWPORT_PAUSE: () => VIEWPORT_PAUSE,
41
+ VIEWPORT_RESUME: () => VIEWPORT_RESUME
42
+ });
43
+ module.exports = __toCommonJS(ToastViewport_exports);
44
+ var import_jsx_runtime = require("react/jsx-runtime");
45
+ var import_animate_presence = require("@hanzogui/animate-presence");
46
+ var import_compose_refs = require("@hanzogui/compose-refs");
47
+ var import_constants = require("@hanzogui/constants");
48
+ var import_core = require("@hanzogui/core");
49
+ var import_portal = require("@hanzogui/portal");
50
+ var import_stacks = require("@hanzogui/stacks");
51
+ var import_visually_hidden = require("@hanzogui/visually-hidden");
52
+ var React = __toESM(require("react"), 1);
53
+ var import_constants2 = require("./constants.native.js");
54
+ var import_ToastPortal = require("./ToastPortal.native.js");
55
+ var import_ToastProvider = require("./ToastProvider.native.js");
56
+ var VIEWPORT_NAME = "ToastViewport";
57
+ var VIEWPORT_DEFAULT_HOTKEY = ["F8"];
58
+ var VIEWPORT_PAUSE = "toast.viewportPause";
59
+ var VIEWPORT_RESUME = "toast.viewportResume";
60
+ var ToastViewportWrapperFrame = (0, import_core.styled)(import_stacks.YStack, {
61
+ name: "ViewportWrapper",
62
+ variants: {
63
+ unstyled: {
64
+ false: {
65
+ pointerEvents: "box-none",
66
+ top: 0,
67
+ bottom: 0,
68
+ left: 0,
69
+ right: 0,
70
+ position: import_constants.isWeb ? "fixed" : "absolute",
71
+ maxWidth: "100%",
72
+ tabIndex: 0,
73
+ zIndex: 1e5
74
+ }
75
+ }
76
+ },
77
+ defaultVariants: {
78
+ unstyled: process.env.GUI_HEADLESS === "1"
79
+ }
80
+ });
81
+ var ToastViewportFrame = (0, import_core.styled)(import_stacks.YStack, {
82
+ name: VIEWPORT_NAME,
83
+ variants: {
84
+ unstyled: {
85
+ false: {
86
+ pointerEvents: "box-none",
87
+ position: import_constants.isWeb ? "fixed" : "absolute",
88
+ maxWidth: "100%"
89
+ }
90
+ }
91
+ },
92
+ defaultVariants: {
93
+ unstyled: process.env.GUI_HEADLESS === "1"
94
+ }
95
+ });
96
+ var ToastViewport = /* @__PURE__ */React.memo(/* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
97
+ var {
98
+ scope,
99
+ hotkey = VIEWPORT_DEFAULT_HOTKEY,
100
+ label = "Notifications ({hotkey})",
101
+ name = "default",
102
+ multipleToasts,
103
+ zIndex,
104
+ portalToRoot,
105
+ ...viewportProps
106
+ } = props;
107
+ var context = (0, import_ToastProvider.useToastProviderContext)(scope);
108
+ var getItems = (0, import_ToastProvider.useCollection)(scope || import_constants2.TOAST_CONTEXT);
109
+ var headFocusProxyRef = React.useRef(null);
110
+ var tailFocusProxyRef = React.useRef(null);
111
+ var wrapperRef = React.useRef(null);
112
+ var ref = React.useRef(null);
113
+ var onViewportChange = React.useCallback(function (el) {
114
+ if (context.viewports[name] !== el) context.onViewportChange(name, el);
115
+ }, [name, context.viewports]);
116
+ var composedRefs = (0, import_compose_refs.useComposedRefs)(forwardedRef, ref, onViewportChange);
117
+ var hotkeyLabel = hotkey.join("+").replace(/Key/g, "").replace(/Digit/g, "");
118
+ var hasToasts = context.toastCount > 0;
119
+ React.useEffect(function () {
120
+ if (!import_constants.isWeb) return;
121
+ if (context.toastCount === 0) return;
122
+ var handleKeyDown = function (event) {
123
+ var _ref_current;
124
+ var isHotkeyPressed = hotkey.every(function (key) {
125
+ return event[key] || event.code === key;
126
+ });
127
+ if (isHotkeyPressed) (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.focus();
128
+ };
129
+ document.addEventListener("keydown", handleKeyDown);
130
+ return function () {
131
+ document.removeEventListener("keydown", handleKeyDown);
132
+ };
133
+ }, [hotkey, context.toastCount]);
134
+ React.useEffect(function () {
135
+ if (!import_constants.isWeb) return;
136
+ if (context.toastCount === 0) return;
137
+ var wrapper = wrapperRef.current;
138
+ var viewport = ref.current;
139
+ if (hasToasts && wrapper && viewport) {
140
+ var handlePause = function () {
141
+ if (!context.isClosePausedRef.current) {
142
+ var pauseEvent = new CustomEvent(VIEWPORT_PAUSE);
143
+ viewport.dispatchEvent(pauseEvent);
144
+ context.isClosePausedRef.current = true;
145
+ }
146
+ };
147
+ var handleResume = function () {
148
+ if (context.isClosePausedRef.current) {
149
+ var resumeEvent = new CustomEvent(VIEWPORT_RESUME);
150
+ viewport.dispatchEvent(resumeEvent);
151
+ context.isClosePausedRef.current = false;
152
+ }
153
+ };
154
+ var handleFocusOutResume = function (event) {
155
+ var isFocusMovingOutside = !wrapper.contains(event.relatedTarget);
156
+ if (isFocusMovingOutside) handleResume();
157
+ };
158
+ var handlePointerLeaveResume = function () {
159
+ var isFocusInside = wrapper.contains(document.activeElement);
160
+ if (!isFocusInside) handleResume();
161
+ };
162
+ wrapper.addEventListener("focusin", handlePause);
163
+ wrapper.addEventListener("focusout", handleFocusOutResume);
164
+ wrapper.addEventListener("pointermove", handlePause);
165
+ wrapper.addEventListener("pointerleave", handlePointerLeaveResume);
166
+ window.addEventListener("blur", handlePause);
167
+ window.addEventListener("focus", handleResume);
168
+ return function () {
169
+ wrapper.removeEventListener("focusin", handlePause);
170
+ wrapper.removeEventListener("focusout", handleFocusOutResume);
171
+ wrapper.removeEventListener("pointermove", handlePause);
172
+ wrapper.removeEventListener("pointerleave", handlePointerLeaveResume);
173
+ window.removeEventListener("blur", handlePause);
174
+ window.removeEventListener("focus", handleResume);
175
+ };
176
+ }
177
+ }, [hasToasts, context.isClosePausedRef, context.toastCount]);
178
+ var getSortedTabbableCandidates = React.useCallback(function (param) {
179
+ var {
180
+ tabbingDirection
181
+ } = param;
182
+ var toastItems = getItems();
183
+ var tabbableCandidates = toastItems.map(function (toastItem) {
184
+ var toastNode = toastItem.ref.current;
185
+ var toastTabbableCandidates = [toastNode, ...getTabbableCandidates(toastNode)];
186
+ return tabbingDirection === "forwards" ? toastTabbableCandidates : toastTabbableCandidates.reverse();
187
+ });
188
+ return (tabbingDirection === "forwards" ? tabbableCandidates.reverse() : tabbableCandidates).flat();
189
+ }, [getItems]);
190
+ React.useEffect(function () {
191
+ if (!import_constants.isWeb) return;
192
+ if (context.toastCount === 0) return;
193
+ var viewport = ref.current;
194
+ if (viewport) {
195
+ var handleKeyDown = function (event) {
196
+ var isMetaKey = event.altKey || event.ctrlKey || event.metaKey;
197
+ var isTabKey = event.key === "Tab" && !isMetaKey;
198
+ if (isTabKey) {
199
+ var focusedElement = document.activeElement;
200
+ var isTabbingBackwards = event.shiftKey;
201
+ var targetIsViewport = event.target === viewport;
202
+ if (targetIsViewport && isTabbingBackwards) {
203
+ var _headFocusProxyRef_current;
204
+ (_headFocusProxyRef_current = headFocusProxyRef.current) === null || _headFocusProxyRef_current === void 0 ? void 0 : _headFocusProxyRef_current.focus();
205
+ return;
206
+ }
207
+ var tabbingDirection = isTabbingBackwards ? "backwards" : "forwards";
208
+ var sortedCandidates = getSortedTabbableCandidates({
209
+ tabbingDirection
210
+ });
211
+ var index = sortedCandidates.findIndex(function (candidate) {
212
+ return candidate === focusedElement;
213
+ });
214
+ if (focusFirst(sortedCandidates.slice(index + 1))) {
215
+ event.preventDefault();
216
+ } else {
217
+ var _headFocusProxyRef_current1, _tailFocusProxyRef_current;
218
+ isTabbingBackwards ? (_headFocusProxyRef_current1 = headFocusProxyRef.current) === null || _headFocusProxyRef_current1 === void 0 ? void 0 : _headFocusProxyRef_current1.focus() : (_tailFocusProxyRef_current = tailFocusProxyRef.current) === null || _tailFocusProxyRef_current === void 0 ? void 0 : _tailFocusProxyRef_current.focus();
219
+ }
220
+ }
221
+ };
222
+ viewport.addEventListener("keydown", handleKeyDown);
223
+ return function () {
224
+ return viewport.removeEventListener("keydown", handleKeyDown);
225
+ };
226
+ }
227
+ }, [getItems, getSortedTabbableCandidates, context.toastCount]);
228
+ var contents = /* @__PURE__ */(0, import_jsx_runtime.jsxs)(ToastViewportWrapperFrame, {
229
+ ref: wrapperRef,
230
+ // biome-ignore lint/a11y/useSemanticElements: <explanation>
231
+ role: "region",
232
+ "aria-label": label.replace("{hotkey}", hotkeyLabel),
233
+ // // Ensure virtual cursor from landmarks menus triggers focus/blur for pause/resume
234
+ tabIndex: -1,
235
+ children: [
236
+ // // incase list has size when empty (e.g. padding), we remove pointer events so
237
+ // // it doesn't prevent interactions with page elements that it overlays
238
+ // pointerEvents={hasToasts ? undefined : 'none'}
239
+ hasToasts && /* @__PURE__ */(0, import_jsx_runtime.jsx)(FocusProxy, {
240
+ context,
241
+ viewportName: name,
242
+ ref: headFocusProxyRef,
243
+ onFocusFromOutsideViewport: function () {
244
+ var tabbableCandidates = getSortedTabbableCandidates({
245
+ tabbingDirection: "forwards"
246
+ });
247
+ focusFirst(tabbableCandidates);
248
+ }
249
+ }),
250
+ /**
251
+ * tabindex on the the list so that it can be focused when items are removed. we focus
252
+ * the list instead of the viewport so it announces number of items remaining.
253
+ */
254
+ /* @__PURE__ */
255
+ (0, import_jsx_runtime.jsx)(import_ToastProvider.Collection.Slot, {
256
+ scope: context.toastScope,
257
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToastViewportFrame, {
258
+ focusable: context.toastCount > 0,
259
+ ref: composedRefs,
260
+ ...viewportProps,
261
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_portal.PortalHost, {
262
+ render: function (children) {
263
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_animate_presence.AnimatePresence, {
264
+ exitBeforeEnter: !multipleToasts,
265
+ children
266
+ });
267
+ },
268
+ name: name !== null && name !== void 0 ? name : "default"
269
+ })
270
+ })
271
+ }), hasToasts && /* @__PURE__ */(0, import_jsx_runtime.jsx)(FocusProxy, {
272
+ context,
273
+ viewportName: name,
274
+ ref: tailFocusProxyRef,
275
+ onFocusFromOutsideViewport: function () {
276
+ var tabbableCandidates = getSortedTabbableCandidates({
277
+ tabbingDirection: "backwards"
278
+ });
279
+ focusFirst(tabbableCandidates);
280
+ }
281
+ })]
282
+ });
283
+ if (portalToRoot) {
284
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToastPortal.ToastPortal, {
285
+ context,
286
+ ...(typeof zIndex === "number" ? {
287
+ zIndex
288
+ } : {}),
289
+ children: contents
290
+ });
291
+ }
292
+ return contents;
293
+ }));
294
+ ToastViewport.displayName = VIEWPORT_NAME;
295
+ var FOCUS_PROXY_NAME = "ToastFocusProxy";
296
+ var FocusProxy = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
297
+ var {
298
+ onFocusFromOutsideViewport,
299
+ viewportName,
300
+ context,
301
+ ...proxyProps
302
+ } = props;
303
+ var viewport = context.viewports[viewportName];
304
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_visually_hidden.VisuallyHidden, {
305
+ "aria-hidden": true,
306
+ tabIndex: 0,
307
+ ...proxyProps,
308
+ ref: forwardedRef,
309
+ // Avoid page scrolling when focus is on the focus proxy
310
+ position: import_constants.isWeb ? "fixed" : "absolute",
311
+ onFocus: function (event) {
312
+ if (!import_constants.isWeb) return;
313
+ var prevFocusedElement = event.relatedTarget;
314
+ var isFocusFromOutsideViewport = !(viewport === null || viewport === void 0 ? void 0 : viewport.contains(prevFocusedElement));
315
+ if (isFocusFromOutsideViewport) onFocusFromOutsideViewport();
316
+ }
317
+ });
318
+ });
319
+ FocusProxy.displayName = FOCUS_PROXY_NAME;
320
+ function focusFirst(candidates) {
321
+ if (!import_constants.isWeb) return;
322
+ var previouslyFocusedElement = document.activeElement;
323
+ return candidates.some(function (candidate) {
324
+ if (candidate === previouslyFocusedElement) return true;
325
+ candidate.focus();
326
+ return document.activeElement !== previouslyFocusedElement;
327
+ });
328
+ }
329
+ function getTabbableCandidates(container) {
330
+ if (!import_constants.isWeb) return [];
331
+ var containerHtml = container;
332
+ var nodes = [];
333
+ var walker = document.createTreeWalker(containerHtml, NodeFilter.SHOW_ELEMENT, {
334
+ acceptNode: function (node) {
335
+ var isHiddenInput = node.tagName === "INPUT" && node.type === "hidden";
336
+ if (node.disabled || node.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP;
337
+ return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
338
+ }
339
+ });
340
+ while (walker.nextNode()) nodes.push(walker.currentNode);
341
+ return nodes;
342
+ }
343
+ //# sourceMappingURL=ToastViewport.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","ToastViewport_exports","ToastViewport","VIEWPORT_DEFAULT_HOTKEY","VIEWPORT_PAUSE","VIEWPORT_RESUME","module","exports","import_jsx_runtime","require","import_animate_presence","import_compose_refs","import_constants","import_core","import_portal","import_stacks","import_visually_hidden","React","import_constants2","import_ToastPortal","import_ToastProvider","VIEWPORT_NAME","ToastViewportWrapperFrame","styled","YStack","variants","unstyled","false","pointerEvents","top","bottom","left","right","position","isWeb","maxWidth","tabIndex","zIndex","defaultVariants","process","env","GUI_HEADLESS","ToastViewportFrame","memo","forwardRef","props","forwardedRef","scope","hotkey","label","multipleToasts","portalToRoot","viewportProps","context","useToastProviderContext","getItems","useCollection","TOAST_CONTEXT","headFocusProxyRef","useRef","tailFocusProxyRef","wrapperRef","ref","onViewportChange","useCallback","el","viewports","composedRefs","useComposedRefs","hotkeyLabel","join","replace","hasToasts","toastCount","useEffect","handleKeyDown","event","_ref_current","isHotkeyPressed","every","code","current","focus","document","addEventListener","removeEventListener","wrapper","viewport","handlePause","isClosePausedRef","pauseEvent","CustomEvent","dispatchEvent","handleResume","resumeEvent","handleFocusOutResume","isFocusMovingOutside","contains","relatedTarget","handlePointerLeaveResume","isFocusInside","activeElement","window","getSortedTabbableCandidates","param","tabbingDirection","toastItems","tabbableCandidates","map","toastItem","toastNode","toastTabbableCandidates","getTabbableCandidates","reverse","flat","isMetaKey","altKey","ctrlKey","metaKey","isTabKey","focusedElement","isTabbingBackwards","shiftKey","targetIsViewport","_headFocusProxyRef_current","sortedCandidates","index","findIndex","candidate","focusFirst","slice","preventDefault","_headFocusProxyRef_current1","_tailFocusProxyRef_current","contents","jsxs","role","children","jsx","FocusProxy","viewportName","onFocusFromOutsideViewport","Collection","Slot","toastScope","focusable","PortalHost","render","AnimatePresence","exitBeforeEnter","ToastPortal","displayName","FOCUS_PROXY_NAME","proxyProps","VisuallyHidden"],"sources":["../../src/ToastViewport.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,51 @@
1
+ import * as React from "react";
2
+ import { Toast } from "./ToastComposable.mjs";
3
+ import { jsx } from "react/jsx-runtime";
4
+ const Toaster = React.forwardRef(function Toaster2(props, ref) {
5
+ const {
6
+ position = "bottom-right",
7
+ expand = false,
8
+ visibleToasts,
9
+ gap,
10
+ duration,
11
+ offset,
12
+ hotkey,
13
+ swipeDirection,
14
+ swipeThreshold,
15
+ closeButton,
16
+ theme,
17
+ icons,
18
+ toastOptions,
19
+ containerAriaLabel = "Notifications",
20
+ native,
21
+ burntOptions,
22
+ notificationOptions,
23
+ reducedMotion
24
+ } = props;
25
+ return /* @__PURE__ */jsx(Toast, {
26
+ position,
27
+ expand,
28
+ visibleToasts,
29
+ gap,
30
+ duration: toastOptions?.duration ?? duration,
31
+ swipeDirection,
32
+ swipeThreshold,
33
+ closeButton,
34
+ theme,
35
+ icons,
36
+ native,
37
+ burntOptions,
38
+ notificationOptions,
39
+ reducedMotion,
40
+ children: /* @__PURE__ */jsx(Toast.Viewport, {
41
+ ref,
42
+ offset,
43
+ hotkey,
44
+ label: containerAriaLabel,
45
+ children: /* @__PURE__ */jsx(Toast.List, {})
46
+ })
47
+ });
48
+ });
49
+ Toaster.displayName = "Toaster";
50
+ export { Toaster };
51
+ //# sourceMappingURL=Toaster.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Toast","jsx","Toaster","forwardRef","props","ref","position","expand","visibleToasts","gap","duration","offset","hotkey","swipeDirection","swipeThreshold","closeButton","theme","icons","toastOptions","containerAriaLabel","native","burntOptions","notificationOptions","reducedMotion","children","Viewport","label","List","displayName"],"sources":["../../src/Toaster.tsx"],"sourcesContent":[null],"mappings":"AAMA,YAAYA,KAAA,MAAW;AACvB,SAASC,KAAA,QAAa;AAsKZ,SAAAC,GAAA;AA9CH,MAAMC,OAAA,GAAUH,KAAA,CAAMI,UAAA,CAC3B,SAASD,SAAQE,KAAA,EAAOC,GAAA,EAAK;EAC3B,MAAM;IACJC,QAAA,GAAW;IACXC,MAAA,GAAS;IACTC,aAAA;IACAC,GAAA;IACAC,QAAA;IACAC,MAAA;IACAC,MAAA;IACAC,cAAA;IACAC,cAAA;IACAC,WAAA;IACAC,KAAA;IACAC,KAAA;IACAC,YAAA;IACAC,kBAAA,GAAqB;IACrBC,MAAA;IACAC,YAAA;IACAC,mBAAA;IACAC;EACF,IAAInB,KAAA;EAEJ,OACE,eAAAH,GAAA,CAACD,KAAA;IACCM,QAAA;IACAC,MAAA;IACAC,aAAA;IACAC,GAAA;IACAC,QAAA,EAAUQ,YAAA,EAAcR,QAAA,IAAYA,QAAA;IACpCG,cAAA;IACAC,cAAA;IACAC,WAAA;IACAC,KAAA;IACAC,KAAA;IACAG,MAAA;IACAC,YAAA;IACAC,mBAAA;IACAC,aAAA;IAEAC,QAAA,iBAAAvB,GAAA,CAACD,KAAA,CAAMyB,QAAA,EAAN;MACCpB,GAAA;MACAM,MAAA;MACAC,MAAA;MACAc,KAAA,EAAOP,kBAAA;MAEPK,QAAA,iBAAAvB,GAAA,CAACD,KAAA,CAAM2B,IAAA,EAAN,EAAW;IAAA,CACd;EAAA,CACF;AAEJ,CACF;AAEAzB,OAAA,CAAQ0B,WAAA,GAAc","ignoreList":[]}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var Toaster_exports = {};
37
+ __export(Toaster_exports, {
38
+ Toaster: () => Toaster
39
+ });
40
+ module.exports = __toCommonJS(Toaster_exports);
41
+ var import_jsx_runtime = require("react/jsx-runtime");
42
+ var React = __toESM(require("react"), 1);
43
+ var import_ToastComposable = require("./ToastComposable.native.js");
44
+ var Toaster = /* @__PURE__ */React.forwardRef(function Toaster2(props, ref) {
45
+ var {
46
+ position = "bottom-right",
47
+ expand = false,
48
+ visibleToasts,
49
+ gap,
50
+ duration,
51
+ offset,
52
+ hotkey,
53
+ swipeDirection,
54
+ swipeThreshold,
55
+ closeButton,
56
+ theme,
57
+ icons,
58
+ toastOptions,
59
+ containerAriaLabel = "Notifications",
60
+ native,
61
+ burntOptions,
62
+ notificationOptions,
63
+ reducedMotion
64
+ } = props;
65
+ var _toastOptions_duration;
66
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToastComposable.Toast, {
67
+ position,
68
+ expand,
69
+ visibleToasts,
70
+ gap,
71
+ duration: (_toastOptions_duration = toastOptions === null || toastOptions === void 0 ? void 0 : toastOptions.duration) !== null && _toastOptions_duration !== void 0 ? _toastOptions_duration : duration,
72
+ swipeDirection,
73
+ swipeThreshold,
74
+ closeButton,
75
+ theme,
76
+ icons,
77
+ native,
78
+ burntOptions,
79
+ notificationOptions,
80
+ reducedMotion,
81
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToastComposable.Toast.Viewport, {
82
+ ref,
83
+ offset,
84
+ hotkey,
85
+ label: containerAriaLabel,
86
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToastComposable.Toast.List, {})
87
+ })
88
+ });
89
+ });
90
+ Toaster.displayName = "Toaster";
91
+ //# sourceMappingURL=Toaster.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","Toaster_exports","Toaster","module","exports","import_jsx_runtime","require","React","import_ToastComposable","forwardRef","Toaster2","props","ref","position","expand","visibleToasts","gap","duration","offset","hotkey","swipeDirection","swipeThreshold","closeButton","theme","icons","toastOptions","containerAriaLabel","native","burntOptions","notificationOptions","reducedMotion","_toastOptions_duration","jsx","Toast","children","Viewport"],"sources":["../../src/Toaster.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ const TOAST_NAME = "Toast";
2
+ const TOAST_CONTEXT = "Toast";
3
+ export { TOAST_CONTEXT, TOAST_NAME };
4
+ //# sourceMappingURL=constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TOAST_NAME","TOAST_CONTEXT"],"sources":["../../src/constants.ts"],"sourcesContent":[null],"mappings":"AAAO,MAAMA,UAAA,GAAa;AACnB,MAAMC,aAAA,GAAgB","ignoreList":[]}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var constants_exports = {};
26
+ __export(constants_exports, {
27
+ TOAST_CONTEXT: () => TOAST_CONTEXT,
28
+ TOAST_NAME: () => TOAST_NAME
29
+ });
30
+ module.exports = __toCommonJS(constants_exports);
31
+ var TOAST_NAME = "Toast";
32
+ var TOAST_CONTEXT = "Toast";
33
+ //# sourceMappingURL=constants.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty"],"sources":["../../src/constants.ts"],"sourcesContent":[null],"mappings":"AAAO,YAAM;;AACN,IAAAA,SAAM,GAAAC,MAAgB,CAAAC,cAAA","ignoreList":[]}
@@ -0,0 +1,32 @@
1
+ const createNativeToast = (title, {
2
+ message,
3
+ notificationOptions
4
+ }) => {
5
+ if (!("Notification" in window)) {
6
+ return false;
7
+ }
8
+ if (Notification.permission !== "granted") return false;
9
+ const notification = new Notification(title, {
10
+ body: message,
11
+ ...notificationOptions
12
+ });
13
+ return {
14
+ nativeToastRef: notification
15
+ };
16
+ };
17
+ const hideNativeToast = ref => {
18
+ if (!("Notification" in window)) {
19
+ return;
20
+ }
21
+ if (ref) {
22
+ ref.close();
23
+ }
24
+ };
25
+ async function requestNotificationPermission() {
26
+ if (!("Notification" in window)) return null;
27
+ if (Notification.permission === "granted") return "granted";
28
+ if (Notification.permission === "denied") return "denied";
29
+ return Notification.requestPermission();
30
+ }
31
+ export { createNativeToast, hideNativeToast, requestNotificationPermission };
32
+ //# sourceMappingURL=createNativeToast.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createNativeToast","title","message","notificationOptions","window","Notification","permission","notification","body","nativeToastRef","hideNativeToast","ref","close","requestNotificationPermission","requestPermission"],"sources":["../../src/createNativeToast.tsx"],"sourcesContent":[null],"mappings":"AAEO,MAAMA,iBAAA,GAA0CA,CACrDC,KAAA,EACA;EAAEC,OAAA;EAASC;AAAoB,MAC5B;EACH,IAAI,EAAE,kBAAkBC,MAAA,GAAS;IAC/B,OAAO;EACT;EAEA,IAAIC,YAAA,CAAaC,UAAA,KAAe,WAAW,OAAO;EAElD,MAAMC,YAAA,GAAe,IAAIF,YAAA,CAAaJ,KAAA,EAAO;IAC3CO,IAAA,EAAMN,OAAA;IACN,GAAGC;EACL,CAAC;EAED,OAAO;IACLM,cAAA,EAAgBF;EAClB;AACF;AAEO,MAAMG,eAAA,GAAuCC,GAAA,IAAQ;EAC1D,IAAI,EAAE,kBAAkBP,MAAA,GAAS;IAC/B;EACF;EAEA,IAAIO,GAAA,EAAK;IACPA,GAAA,CAAIC,KAAA,CAAM;EACZ;AACF;AAMA,eAAsBC,8BAAA,EAAwE;EAC5F,IAAI,EAAE,kBAAkBT,MAAA,GAAS,OAAO;EACxC,IAAIC,YAAA,CAAaC,UAAA,KAAe,WAAW,OAAO;EAClD,IAAID,YAAA,CAAaC,UAAA,KAAe,UAAU,OAAO;EACjD,OAAOD,YAAA,CAAaS,iBAAA,CAAkB;AACxC","ignoreList":[]}