@hanzogui/toast 3.0.1 → 7.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.
Files changed (167) hide show
  1. package/package.json +42 -25
  2. package/src/Toast.tsx +5 -5
  3. package/src/ToastAnnounce.tsx +2 -2
  4. package/src/ToastComposable.tsx +1380 -0
  5. package/src/ToastImpl.tsx +19 -7
  6. package/src/ToastItemFrame.tsx +136 -0
  7. package/src/ToastPortal.tsx +2 -2
  8. package/src/ToastProvider.tsx +13 -6
  9. package/src/ToastState.ts +398 -0
  10. package/src/ToastViewport.tsx +11 -10
  11. package/src/Toaster.tsx +181 -0
  12. package/src/createNativeToast.native.tsx +4 -0
  13. package/src/createNativeToast.tsx +18 -24
  14. package/src/dispatchNativeToast.ts +43 -0
  15. package/src/useAnimatedDragGesture.native.ts +255 -0
  16. package/src/useAnimatedDragGesture.ts +319 -0
  17. package/src/useReducedMotion.ts +59 -0
  18. package/src/useToastAnimations.ts +377 -0
  19. package/src/v2.ts +31 -0
  20. package/types/Toast.d.ts +36 -36
  21. package/types/ToastAnnounce.d.ts +4 -4
  22. package/types/ToastComposable.d.ts +199 -0
  23. package/types/ToastImperative.d.ts +2 -2
  24. package/types/ToastImpl.d.ts +12 -12
  25. package/types/ToastItemFrame.d.ts +25 -0
  26. package/types/ToastProvider.d.ts +8 -8
  27. package/types/ToastState.d.ts +179 -0
  28. package/types/ToastViewport.d.ts +12 -12
  29. package/types/Toaster.d.ts +112 -0
  30. package/types/createNativeToast.d.ts +5 -0
  31. package/types/createNativeToast.native.d.ts +1 -0
  32. package/types/dispatchNativeToast.d.ts +12 -0
  33. package/types/useAnimatedDragGesture.d.ts +33 -0
  34. package/types/useAnimatedDragGesture.native.d.ts +33 -0
  35. package/types/useReducedMotion.d.ts +6 -0
  36. package/types/useToastAnimations.d.ts +50 -0
  37. package/types/v2.d.ts +10 -0
  38. package/v2/index.cjs +2 -0
  39. package/v2/index.js +2 -0
  40. package/v2/index.native.cjs +2 -0
  41. package/v2/index.native.js +2 -0
  42. package/LICENSE +0 -21
  43. package/dist/cjs/Toast.cjs +0 -170
  44. package/dist/cjs/Toast.native.js +0 -174
  45. package/dist/cjs/Toast.native.js.map +0 -1
  46. package/dist/cjs/ToastAnnounce.cjs +0 -97
  47. package/dist/cjs/ToastAnnounce.native.js +0 -105
  48. package/dist/cjs/ToastAnnounce.native.js.map +0 -1
  49. package/dist/cjs/ToastImperative.cjs +0 -100
  50. package/dist/cjs/ToastImperative.native.js +0 -122
  51. package/dist/cjs/ToastImperative.native.js.map +0 -1
  52. package/dist/cjs/ToastImpl.cjs +0 -292
  53. package/dist/cjs/ToastImpl.native.js +0 -326
  54. package/dist/cjs/ToastImpl.native.js.map +0 -1
  55. package/dist/cjs/ToastPortal.cjs +0 -44
  56. package/dist/cjs/ToastPortal.native.js +0 -47
  57. package/dist/cjs/ToastPortal.native.js.map +0 -1
  58. package/dist/cjs/ToastProvider.cjs +0 -146
  59. package/dist/cjs/ToastProvider.native.js +0 -159
  60. package/dist/cjs/ToastProvider.native.js.map +0 -1
  61. package/dist/cjs/ToastViewport.cjs +0 -278
  62. package/dist/cjs/ToastViewport.native.js +0 -315
  63. package/dist/cjs/ToastViewport.native.js.map +0 -1
  64. package/dist/cjs/constants.cjs +0 -28
  65. package/dist/cjs/constants.native.js +0 -31
  66. package/dist/cjs/constants.native.js.map +0 -1
  67. package/dist/cjs/createNativeToast.cjs +0 -51
  68. package/dist/cjs/createNativeToast.native.js +0 -48
  69. package/dist/cjs/createNativeToast.native.js.map +0 -1
  70. package/dist/cjs/index.cjs +0 -18
  71. package/dist/cjs/index.native.js +0 -21
  72. package/dist/cjs/index.native.js.map +0 -1
  73. package/dist/cjs/types.cjs +0 -16
  74. package/dist/cjs/types.native.js +0 -19
  75. package/dist/cjs/types.native.js.map +0 -1
  76. package/dist/esm/Toast.mjs +0 -131
  77. package/dist/esm/Toast.mjs.map +0 -1
  78. package/dist/esm/Toast.native.js +0 -132
  79. package/dist/esm/Toast.native.js.map +0 -1
  80. package/dist/esm/ToastAnnounce.mjs +0 -62
  81. package/dist/esm/ToastAnnounce.mjs.map +0 -1
  82. package/dist/esm/ToastAnnounce.native.js +0 -67
  83. package/dist/esm/ToastAnnounce.native.js.map +0 -1
  84. package/dist/esm/ToastImperative.mjs +0 -63
  85. package/dist/esm/ToastImperative.mjs.map +0 -1
  86. package/dist/esm/ToastImperative.native.js +0 -82
  87. package/dist/esm/ToastImperative.native.js.map +0 -1
  88. package/dist/esm/ToastImpl.mjs +0 -256
  89. package/dist/esm/ToastImpl.mjs.map +0 -1
  90. package/dist/esm/ToastImpl.native.js +0 -287
  91. package/dist/esm/ToastImpl.native.js.map +0 -1
  92. package/dist/esm/ToastPortal.mjs +0 -21
  93. package/dist/esm/ToastPortal.mjs.map +0 -1
  94. package/dist/esm/ToastPortal.native.js +0 -21
  95. package/dist/esm/ToastPortal.native.js.map +0 -1
  96. package/dist/esm/ToastProvider.mjs +0 -108
  97. package/dist/esm/ToastProvider.mjs.map +0 -1
  98. package/dist/esm/ToastProvider.native.js +0 -118
  99. package/dist/esm/ToastProvider.native.js.map +0 -1
  100. package/dist/esm/ToastViewport.mjs +0 -241
  101. package/dist/esm/ToastViewport.mjs.map +0 -1
  102. package/dist/esm/ToastViewport.native.js +0 -275
  103. package/dist/esm/ToastViewport.native.js.map +0 -1
  104. package/dist/esm/constants.mjs +0 -4
  105. package/dist/esm/constants.mjs.map +0 -1
  106. package/dist/esm/constants.native.js +0 -4
  107. package/dist/esm/constants.native.js.map +0 -1
  108. package/dist/esm/createNativeToast.mjs +0 -27
  109. package/dist/esm/createNativeToast.mjs.map +0 -1
  110. package/dist/esm/createNativeToast.native.js +0 -21
  111. package/dist/esm/createNativeToast.native.js.map +0 -1
  112. package/dist/esm/index.js +0 -2
  113. package/dist/esm/index.js.map +0 -1
  114. package/dist/esm/index.mjs +0 -2
  115. package/dist/esm/index.mjs.map +0 -1
  116. package/dist/esm/index.native.js +0 -2
  117. package/dist/esm/index.native.js.map +0 -1
  118. package/dist/esm/types.mjs +0 -2
  119. package/dist/esm/types.mjs.map +0 -1
  120. package/dist/esm/types.native.js +0 -2
  121. package/dist/esm/types.native.js.map +0 -1
  122. package/dist/jsx/Toast.mjs +0 -131
  123. package/dist/jsx/Toast.mjs.map +0 -1
  124. package/dist/jsx/Toast.native.js +0 -174
  125. package/dist/jsx/Toast.native.js.map +0 -1
  126. package/dist/jsx/ToastAnnounce.mjs +0 -62
  127. package/dist/jsx/ToastAnnounce.mjs.map +0 -1
  128. package/dist/jsx/ToastAnnounce.native.js +0 -105
  129. package/dist/jsx/ToastAnnounce.native.js.map +0 -1
  130. package/dist/jsx/ToastImperative.mjs +0 -63
  131. package/dist/jsx/ToastImperative.mjs.map +0 -1
  132. package/dist/jsx/ToastImperative.native.js +0 -122
  133. package/dist/jsx/ToastImperative.native.js.map +0 -1
  134. package/dist/jsx/ToastImpl.mjs +0 -256
  135. package/dist/jsx/ToastImpl.mjs.map +0 -1
  136. package/dist/jsx/ToastImpl.native.js +0 -326
  137. package/dist/jsx/ToastImpl.native.js.map +0 -1
  138. package/dist/jsx/ToastPortal.mjs +0 -21
  139. package/dist/jsx/ToastPortal.mjs.map +0 -1
  140. package/dist/jsx/ToastPortal.native.js +0 -47
  141. package/dist/jsx/ToastPortal.native.js.map +0 -1
  142. package/dist/jsx/ToastProvider.mjs +0 -108
  143. package/dist/jsx/ToastProvider.mjs.map +0 -1
  144. package/dist/jsx/ToastProvider.native.js +0 -159
  145. package/dist/jsx/ToastProvider.native.js.map +0 -1
  146. package/dist/jsx/ToastViewport.mjs +0 -241
  147. package/dist/jsx/ToastViewport.mjs.map +0 -1
  148. package/dist/jsx/ToastViewport.native.js +0 -315
  149. package/dist/jsx/ToastViewport.native.js.map +0 -1
  150. package/dist/jsx/constants.mjs +0 -4
  151. package/dist/jsx/constants.mjs.map +0 -1
  152. package/dist/jsx/constants.native.js +0 -31
  153. package/dist/jsx/constants.native.js.map +0 -1
  154. package/dist/jsx/createNativeToast.mjs +0 -27
  155. package/dist/jsx/createNativeToast.mjs.map +0 -1
  156. package/dist/jsx/createNativeToast.native.js +0 -48
  157. package/dist/jsx/createNativeToast.native.js.map +0 -1
  158. package/dist/jsx/index.js +0 -2
  159. package/dist/jsx/index.js.map +0 -1
  160. package/dist/jsx/index.mjs +0 -2
  161. package/dist/jsx/index.mjs.map +0 -1
  162. package/dist/jsx/index.native.js +0 -21
  163. package/dist/jsx/index.native.js.map +0 -1
  164. package/dist/jsx/types.mjs +0 -2
  165. package/dist/jsx/types.mjs.map +0 -1
  166. package/dist/jsx/types.native.js +0 -19
  167. package/dist/jsx/types.native.js.map +0 -1
@@ -1,2 +0,0 @@
1
- export * from "./Toast.native.js";
2
- //# sourceMappingURL=index.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc","ignoreList":[]}
@@ -1,2 +0,0 @@
1
-
2
- //# sourceMappingURL=types.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -1,2 +0,0 @@
1
-
2
- //# sourceMappingURL=types.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
@@ -1,131 +0,0 @@
1
- import { AnimatePresence } from "@hanzogui/animate-presence";
2
- import { styled, useEvent } from "@hanzogui/core";
3
- import { composeEventHandlers, withStaticProperties } from "@hanzogui/helpers";
4
- import { YStack } from "@hanzogui/stacks";
5
- import { SizableText } from "@hanzogui/text";
6
- import { useControllableState } from "@hanzogui/use-controllable-state";
7
- import * as React from "react";
8
- import { ToastAnnounceExclude } from "./ToastAnnounce.mjs";
9
- import { useToast, useToastController, useToastState } from "./ToastImperative.mjs";
10
- import { ToastImpl, ToastImplFrame, useToastInteractiveContext } from "./ToastImpl.mjs";
11
- import { ToastProvider } from "./ToastProvider.mjs";
12
- import { ToastViewport } from "./ToastViewport.mjs";
13
- import { jsx } from "react/jsx-runtime";
14
- const TITLE_NAME = "ToastTitle",
15
- ToastTitle = styled(SizableText, {
16
- name: TITLE_NAME,
17
- variants: {
18
- unstyled: {
19
- false: {
20
- color: "$color",
21
- size: "$4"
22
- }
23
- }
24
- },
25
- defaultVariants: {
26
- unstyled: process.env.HANZO_GUI_HEADLESS === "1"
27
- }
28
- }),
29
- DESCRIPTION_NAME = "ToastDescription",
30
- ToastDescription = styled(SizableText, {
31
- name: DESCRIPTION_NAME,
32
- variants: {
33
- unstyled: {
34
- false: {
35
- color: "$color11",
36
- size: "$1"
37
- }
38
- }
39
- },
40
- defaultVariants: {
41
- unstyled: process.env.HANZO_GUI_HEADLESS === "1"
42
- }
43
- }),
44
- ACTION_NAME = "ToastAction",
45
- ToastAction = React.forwardRef(function (props, forwardedRef) {
46
- const {
47
- altText,
48
- ...actionProps
49
- } = props;
50
- return altText ? /* @__PURE__ */jsx(ToastAnnounceExclude, {
51
- altText,
52
- asChild: !0,
53
- children: /* @__PURE__ */jsx(ToastClose, {
54
- ...actionProps,
55
- ref: forwardedRef
56
- })
57
- }) : null;
58
- });
59
- ToastAction.propTypes = {
60
- altText(props) {
61
- return props.altText ? null : new Error(`Missing prop \`altText\` expected on \`${ACTION_NAME}\``);
62
- }
63
- };
64
- const CLOSE_NAME = "ToastClose",
65
- ToastCloseFrame = styled(YStack, {
66
- name: CLOSE_NAME,
67
- render: "button"
68
- }),
69
- ToastClose = React.forwardRef(function (props, forwardedRef) {
70
- const {
71
- scope,
72
- ...closeProps
73
- } = props,
74
- interactiveContext = useToastInteractiveContext(scope);
75
- return /* @__PURE__ */jsx(ToastAnnounceExclude, {
76
- asChild: !0,
77
- children: /* @__PURE__ */jsx(ToastCloseFrame, {
78
- "aria-label": "Close",
79
- ...closeProps,
80
- ref: forwardedRef,
81
- onPress: composeEventHandlers(props.onPress, interactiveContext.onClose)
82
- })
83
- });
84
- }),
85
- ToastComponent = ToastImplFrame.styleable(function (props, forwardedRef) {
86
- const {
87
- forceMount,
88
- open: openProp,
89
- defaultOpen,
90
- onOpenChange,
91
- ...toastProps
92
- } = props,
93
- [open, setOpen] = useControllableState({
94
- prop: openProp,
95
- defaultProp: defaultOpen ?? !0,
96
- onChange: onOpenChange,
97
- strategy: "most-recent-wins"
98
- }),
99
- currentToast = useToastState(),
100
- {
101
- hide
102
- } = useToastController(),
103
- id = React.useId(),
104
- onPause = useEvent(props.onPause),
105
- onResume = useEvent(props.onResume),
106
- isHide = currentToast?.hide === !0;
107
- return /* @__PURE__ */jsx(AnimatePresence, {
108
- children: (forceMount || open) && !isHide ? /* @__PURE__ */jsx(ToastImpl, {
109
- id,
110
- open,
111
- ...toastProps,
112
- ref: forwardedRef,
113
- onClose: () => {
114
- setOpen(!1), hide();
115
- },
116
- onPause,
117
- onResume,
118
- onSwipeEnd: composeEventHandlers(props.onSwipeEnd, event => {
119
- setOpen(!1);
120
- })
121
- }) : null
122
- }, id);
123
- }),
124
- Toast2 = withStaticProperties(ToastComponent, {
125
- Title: ToastTitle,
126
- Description: ToastDescription,
127
- Action: ToastAction,
128
- Close: ToastClose
129
- });
130
- export { Toast2 as Toast, ToastProvider, ToastViewport, useToast, useToastController, useToastState };
131
- //# sourceMappingURL=Toast.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["AnimatePresence","styled","useEvent","composeEventHandlers","withStaticProperties","YStack","SizableText","useControllableState","React","ToastAnnounceExclude","useToast","useToastController","useToastState","ToastImpl","ToastImplFrame","useToastInteractiveContext","ToastProvider","ToastViewport","jsx","TITLE_NAME","ToastTitle","name","variants","unstyled","false","color","size","defaultVariants","process","env","HANZO_GUI_HEADLESS","DESCRIPTION_NAME","ToastDescription","ACTION_NAME","ToastAction","forwardRef","props","forwardedRef","altText","actionProps","asChild","children","ToastClose","ref","propTypes","Error","CLOSE_NAME","ToastCloseFrame","render","scope","closeProps","interactiveContext","onPress","onClose","ToastComponent","styleable","forceMount","open","openProp","defaultOpen","onOpenChange","toastProps","setOpen","prop","defaultProp","onChange","strategy","currentToast","hide","id","useId","onPause","onResume","isHide","onSwipeEnd","event","Toast2","Title","Description","Action","Close"],"sources":["../../src/Toast.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,174 +0,0 @@
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
- __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __export = (target, all) => {
10
- for (var name in all) __defProp(target, name, {
11
- get: all[name],
12
- enumerable: !0
13
- });
14
- },
15
- __copyProps = (to, from, except, desc) => {
16
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
17
- get: () => from[key],
18
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
- });
20
- return to;
21
- };
22
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
- // If the importer is in node compatibility mode or this is not an ESM
24
- // file that has been converted to a CommonJS file using a Babel-
25
- // compatible transform (i.e. "__esModule" has not been set), then set
26
- // "default" to the CommonJS "module.exports" for node compatibility.
27
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
- value: mod,
29
- enumerable: !0
30
- }) : target, mod)),
31
- __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
- value: !0
33
- }), mod);
34
- var Toast_exports = {};
35
- __export(Toast_exports, {
36
- Toast: () => Toast2,
37
- ToastProvider: () => import_ToastProvider.ToastProvider,
38
- ToastViewport: () => import_ToastViewport.ToastViewport,
39
- useToast: () => import_ToastImperative.useToast,
40
- useToastController: () => import_ToastImperative.useToastController,
41
- useToastState: () => import_ToastImperative.useToastState
42
- });
43
- module.exports = __toCommonJS(Toast_exports);
44
- var import_jsx_runtime = require("react/jsx-runtime"),
45
- import_gui_animate_presence = require("@hanzogui/animate-presence"),
46
- import_gui_core = require("@hanzogui/core"),
47
- import_gui_helpers = require("@hanzogui/helpers"),
48
- import_gui_stacks = require("@hanzogui/stacks"),
49
- import_gui_text = require("@hanzogui/text"),
50
- import_gui_use_controllable_state = require("@hanzogui/use-controllable-state"),
51
- React = __toESM(require("react"), 1),
52
- import_ToastAnnounce = require("./ToastAnnounce.native.js"),
53
- import_ToastImperative = require("./ToastImperative.native.js"),
54
- import_ToastImpl = require("./ToastImpl.native.js"),
55
- import_ToastProvider = require("./ToastProvider.native.js"),
56
- import_ToastViewport = require("./ToastViewport.native.js"),
57
- TITLE_NAME = "ToastTitle",
58
- ToastTitle = (0, import_gui_core.styled)(import_gui_text.SizableText, {
59
- name: TITLE_NAME,
60
- variants: {
61
- unstyled: {
62
- false: {
63
- color: "$color",
64
- size: "$4"
65
- }
66
- }
67
- },
68
- defaultVariants: {
69
- unstyled: process.env.HANZO_GUI_HEADLESS === "1"
70
- }
71
- }),
72
- DESCRIPTION_NAME = "ToastDescription",
73
- ToastDescription = (0, import_gui_core.styled)(import_gui_text.SizableText, {
74
- name: DESCRIPTION_NAME,
75
- variants: {
76
- unstyled: {
77
- false: {
78
- color: "$color11",
79
- size: "$1"
80
- }
81
- }
82
- },
83
- defaultVariants: {
84
- unstyled: process.env.HANZO_GUI_HEADLESS === "1"
85
- }
86
- }),
87
- ACTION_NAME = "ToastAction",
88
- ToastAction = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
89
- var {
90
- altText,
91
- ...actionProps
92
- } = props;
93
- return altText ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToastAnnounce.ToastAnnounceExclude, {
94
- altText,
95
- asChild: !0,
96
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToastClose, {
97
- ...actionProps,
98
- ref: forwardedRef
99
- })
100
- }) : null;
101
- });
102
- ToastAction.propTypes = {
103
- altText(props) {
104
- return props.altText ? null : new Error(`Missing prop \`altText\` expected on \`${ACTION_NAME}\``);
105
- }
106
- };
107
- var CLOSE_NAME = "ToastClose",
108
- ToastCloseFrame = (0, import_gui_core.styled)(import_gui_stacks.YStack, {
109
- name: CLOSE_NAME,
110
- render: "button"
111
- }),
112
- ToastClose = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
113
- var {
114
- scope,
115
- ...closeProps
116
- } = props,
117
- interactiveContext = (0, import_ToastImpl.useToastInteractiveContext)(scope);
118
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToastAnnounce.ToastAnnounceExclude, {
119
- asChild: !0,
120
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToastCloseFrame, {
121
- "aria-label": "Close",
122
- ...closeProps,
123
- ref: forwardedRef,
124
- onPress: (0, import_gui_helpers.composeEventHandlers)(props.onPress, interactiveContext.onClose)
125
- })
126
- });
127
- }),
128
- ToastComponent = import_ToastImpl.ToastImplFrame.styleable(function (props, forwardedRef) {
129
- var {
130
- forceMount,
131
- open: openProp,
132
- defaultOpen,
133
- onOpenChange,
134
- ...toastProps
135
- } = props,
136
- [open, setOpen] = (0, import_gui_use_controllable_state.useControllableState)({
137
- prop: openProp,
138
- defaultProp: defaultOpen ?? !0,
139
- onChange: onOpenChange,
140
- strategy: "most-recent-wins"
141
- }),
142
- currentToast = (0, import_ToastImperative.useToastState)(),
143
- {
144
- hide
145
- } = (0, import_ToastImperative.useToastController)(),
146
- id = React.useId(),
147
- onPause = (0, import_gui_core.useEvent)(props.onPause),
148
- onResume = (0, import_gui_core.useEvent)(props.onResume),
149
- isHide = currentToast?.hide === !0,
150
- shouldShow = (forceMount || open) && !isHide;
151
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui_animate_presence.AnimatePresence, {
152
- children: shouldShow ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToastImpl.ToastImpl, {
153
- id,
154
- open,
155
- ...toastProps,
156
- ref: forwardedRef,
157
- onClose: function () {
158
- setOpen(!1), hide();
159
- },
160
- onPause,
161
- onResume,
162
- onSwipeEnd: (0, import_gui_helpers.composeEventHandlers)(props.onSwipeEnd, function (event) {
163
- setOpen(!1);
164
- })
165
- }) : null
166
- }, id);
167
- }),
168
- Toast2 = (0, import_gui_helpers.withStaticProperties)(ToastComponent, {
169
- Title: ToastTitle,
170
- Description: ToastDescription,
171
- Action: ToastAction,
172
- Close: ToastClose
173
- });
174
- //# sourceMappingURL=Toast.native.js.map
@@ -1 +0,0 @@
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","Toast_exports","Toast","Toast2","ToastProvider","import_ToastProvider","ToastViewport","import_ToastViewport","useToast","import_ToastImperative","useToastController","useToastState","module","exports","import_jsx_runtime","require","import_gui_animate_presence","import_gui_core","import_gui_helpers","import_gui_stacks","import_gui_text","import_gui_use_controllable_state","React","import_ToastAnnounce","import_ToastImpl","TITLE_NAME","ToastTitle","styled","SizableText","variants","unstyled","false","color","size","defaultVariants","process","env","HANZO_GUI_HEADLESS","DESCRIPTION_NAME","ToastDescription","ACTION_NAME","ToastAction","forwardRef","props","forwardedRef","altText","actionProps","jsx","ToastAnnounceExclude","asChild","children","ToastClose","ref","propTypes","Error","CLOSE_NAME","ToastCloseFrame","YStack","render","scope","closeProps","interactiveContext","useToastInteractiveContext","onPress","composeEventHandlers","onClose","ToastComponent","ToastImplFrame","styleable","forceMount","open","openProp","defaultOpen","onOpenChange","toastProps","setOpen","useControllableState","prop","defaultProp","onChange","strategy","currentToast","hide","id","useId","onPause","useEvent","onResume","isHide","shouldShow","AnimatePresence","ToastImpl"],"sources":["../../src/Toast.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,62 +0,0 @@
1
- import { useIsomorphicLayoutEffect } from "@hanzogui/constants";
2
- import { View, Text, styled, useEvent } from "@hanzogui/core";
3
- import { Portal } from "@hanzogui/portal";
4
- import { startTransition } from "@hanzogui/start-transition";
5
- import { VisuallyHidden } from "@hanzogui/visually-hidden";
6
- import * as React from "react";
7
- import { useToastProviderContext } from "./ToastProvider.mjs";
8
- import { jsx, jsxs } from "react/jsx-runtime";
9
- const ToastAnnounceExcludeFrame = styled(View, {
10
- name: "ToastAnnounceExclude"
11
- }),
12
- ToastAnnounceExclude = React.forwardRef((props, forwardedRef) => {
13
- const {
14
- altText,
15
- ...announceExcludeProps
16
- } = props;
17
- return /* @__PURE__ */jsx(ToastAnnounceExcludeFrame, {
18
- "data-toast-announce-exclude": "",
19
- "data-toast-announce-alt": altText || void 0,
20
- ...announceExcludeProps,
21
- ref: forwardedRef
22
- });
23
- }),
24
- ToastAnnounce = props => {
25
- const {
26
- scope,
27
- children,
28
- ...announceProps
29
- } = props,
30
- context = useToastProviderContext(scope),
31
- [renderAnnounceText, setRenderAnnounceText] = React.useState(!1),
32
- [isAnnounced, setIsAnnounced] = React.useState(!1);
33
- return useNextFrame(() => {
34
- startTransition(() => {
35
- setRenderAnnounceText(!0);
36
- });
37
- }), React.useEffect(() => {
38
- const timer = setTimeout(() => setIsAnnounced(!0), 1e3);
39
- return () => clearTimeout(timer);
40
- }, []), isAnnounced ? null : /* @__PURE__ */jsx(Portal, {
41
- children: /* @__PURE__ */jsx(VisuallyHidden, {
42
- ...announceProps,
43
- children: renderAnnounceText && /* @__PURE__ */jsxs(Text, {
44
- children: [context.label, " ", children]
45
- })
46
- })
47
- });
48
- };
49
- function useNextFrame(callback = () => {}) {
50
- const fn = useEvent(callback);
51
- useIsomorphicLayoutEffect(() => {
52
- let raf1 = 0,
53
- raf2 = 0;
54
- return raf1 = requestAnimationFrame(() => {
55
- raf2 = requestAnimationFrame(fn);
56
- }), () => {
57
- cancelAnimationFrame(raf1), cancelAnimationFrame(raf2);
58
- };
59
- }, [fn]);
60
- }
61
- export { ToastAnnounce, ToastAnnounceExclude };
62
- //# sourceMappingURL=ToastAnnounce.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["useIsomorphicLayoutEffect","View","Text","styled","useEvent","Portal","startTransition","VisuallyHidden","React","useToastProviderContext","jsx","jsxs","ToastAnnounceExcludeFrame","name","ToastAnnounceExclude","forwardRef","props","forwardedRef","altText","announceExcludeProps","ref","ToastAnnounce","scope","children","announceProps","context","renderAnnounceText","setRenderAnnounceText","useState","isAnnounced","setIsAnnounced","useNextFrame","useEffect","timer","setTimeout","clearTimeout","label","callback","fn","raf1","raf2","requestAnimationFrame","cancelAnimationFrame"],"sources":["../../src/ToastAnnounce.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,yBAAA,QAAiC;AAE1C,SAASC,IAAA,EAAMC,IAAA,EAAMC,MAAA,EAAQC,QAAA,QAAgB;AAC7C,SAASC,MAAA,QAAc;AACvB,SAASC,eAAA,QAAuB;AAChC,SAASC,cAAA,QAAsB;AAC/B,YAAYC,KAAA,MAAW;AAGvB,SAASC,uBAAA,QAA+B;AAoBlC,SAAAC,GAAA,EA0CIC,IAAA,QA1CJ;AAlBN,MAAMC,yBAAA,GAA4BT,MAAA,CAAOF,IAAA,EAAM;IAC7CY,IAAA,EAAM;EACR,CAAC;EAWKC,oBAAA,GAAuBN,KAAA,CAAMO,UAAA,CACjC,CAACC,KAAA,EAAOC,YAAA,KAAiB;IACvB,MAAM;MAAEC,OAAA;MAAS,GAAGC;IAAqB,IAAIH,KAAA;IAE7C,OACE,eAAAN,GAAA,CAACE,yBAAA;MACC,+BAA4B;MAC5B,2BAAyBM,OAAA,IAAW;MACnC,GAAGC,oBAAA;MACJC,GAAA,EAAKH;IAAA,CACP;EAEJ,CACF;EASMI,aAAA,GACJL,KAAA,IACG;IACH,MAAM;QAAEM,KAAA;QAAOC,QAAA;QAAU,GAAGC;MAAc,IAAIR,KAAA;MACxCS,OAAA,GAAUhB,uBAAA,CAAwBa,KAAK;MACvC,CAACI,kBAAA,EAAoBC,qBAAqB,IAAInB,KAAA,CAAMoB,QAAA,CAAS,EAAK;MAClE,CAACC,WAAA,EAAaC,cAAc,IAAItB,KAAA,CAAMoB,QAAA,CAAS,EAAK;IAG1D,OAAAG,YAAA,CAAa,MAAM;MACjBzB,eAAA,CAAgB,MAAM;QACpBqB,qBAAA,CAAsB,EAAI;MAC5B,CAAC;IACH,CAAC,GAGDnB,KAAA,CAAMwB,SAAA,CAAU,MAAM;MACpB,MAAMC,KAAA,GAAQC,UAAA,CAAW,MAAMJ,cAAA,CAAe,EAAI,GAAG,GAAI;MACzD,OAAO,MAAMK,YAAA,CAAaF,KAAK;IACjC,GAAG,EAAE,GAEEJ,WAAA,GAAc,OACnB,eAAAnB,GAAA,CAACL,MAAA;MACCkB,QAAA,iBAAAb,GAAA,CAACH,cAAA;QAAgB,GAAGiB,aAAA;QACjBD,QAAA,EAAAG,kBAAA,IACC,eAAAf,IAAA,CAACT,IAAA;UACEqB,QAAA,GAAAE,OAAA,CAAQW,KAAA,EAAM,KAAEb,QAAA;QAAA,CACnB;MAAA,CAEJ;IAAA,CACF;EAEJ;AAIA,SAASQ,aAAaM,QAAA,GAAWA,CAAA,KAAM,CAAC,GAAG;EACzC,MAAMC,EAAA,GAAKlC,QAAA,CAASiC,QAAQ;EAC5BrC,yBAAA,CAA0B,MAAM;IAC9B,IAAIuC,IAAA,GAAO;MACPC,IAAA,GAAO;IACX,OAAAD,IAAA,GAAOE,qBAAA,CAAsB,MAAM;MACjCD,IAAA,GAAOC,qBAAA,CAAsBH,EAAE;IACjC,CAAC,GACM,MAAM;MACXI,oBAAA,CAAqBH,IAAI,GACzBG,oBAAA,CAAqBF,IAAI;IAC3B;EACF,GAAG,CAACF,EAAE,CAAC;AACT","ignoreList":[]}
@@ -1,105 +0,0 @@
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
- __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __export = (target, all) => {
10
- for (var name in all) __defProp(target, name, {
11
- get: all[name],
12
- enumerable: !0
13
- });
14
- },
15
- __copyProps = (to, from, except, desc) => {
16
- if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
17
- get: () => from[key],
18
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
- });
20
- return to;
21
- };
22
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
- // If the importer is in node compatibility mode or this is not an ESM
24
- // file that has been converted to a CommonJS file using a Babel-
25
- // compatible transform (i.e. "__esModule" has not been set), then set
26
- // "default" to the CommonJS "module.exports" for node compatibility.
27
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
- value: mod,
29
- enumerable: !0
30
- }) : target, mod)),
31
- __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
- value: !0
33
- }), mod);
34
- var ToastAnnounce_exports = {};
35
- __export(ToastAnnounce_exports, {
36
- ToastAnnounce: () => ToastAnnounce,
37
- ToastAnnounceExclude: () => ToastAnnounceExclude
38
- });
39
- module.exports = __toCommonJS(ToastAnnounce_exports);
40
- var import_jsx_runtime = require("react/jsx-runtime"),
41
- import_gui_constants = require("@hanzogui/constants"),
42
- import_gui_core = require("@hanzogui/core"),
43
- import_gui_portal = require("@hanzogui/portal"),
44
- import_gui_start_transition = require("@hanzogui/start-transition"),
45
- import_gui_visually_hidden = require("@hanzogui/visually-hidden"),
46
- React = __toESM(require("react"), 1),
47
- import_ToastProvider = require("./ToastProvider.native.js"),
48
- ToastAnnounceExcludeFrame = (0, import_gui_core.styled)(import_gui_core.View, {
49
- name: "ToastAnnounceExclude"
50
- }),
51
- ToastAnnounceExclude = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
52
- var {
53
- altText,
54
- ...announceExcludeProps
55
- } = props;
56
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ToastAnnounceExcludeFrame, {
57
- "data-toast-announce-exclude": "",
58
- "data-toast-announce-alt": altText || void 0,
59
- ...announceExcludeProps,
60
- ref: forwardedRef
61
- });
62
- }),
63
- ToastAnnounce = function (props) {
64
- var {
65
- scope,
66
- children,
67
- ...announceProps
68
- } = props,
69
- context = (0, import_ToastProvider.useToastProviderContext)(scope),
70
- [renderAnnounceText, setRenderAnnounceText] = React.useState(!1),
71
- [isAnnounced, setIsAnnounced] = React.useState(!1);
72
- return useNextFrame(function () {
73
- (0, import_gui_start_transition.startTransition)(function () {
74
- setRenderAnnounceText(!0);
75
- });
76
- }), React.useEffect(function () {
77
- var timer = setTimeout(function () {
78
- return setIsAnnounced(!0);
79
- }, 1e3);
80
- return function () {
81
- return clearTimeout(timer);
82
- };
83
- }, []), isAnnounced ? null : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui_portal.Portal, {
84
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_gui_visually_hidden.VisuallyHidden, {
85
- ...announceProps,
86
- children: renderAnnounceText && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_gui_core.Text, {
87
- children: [context.label, " ", children]
88
- })
89
- })
90
- });
91
- };
92
- function useNextFrame() {
93
- var callback = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : function () {},
94
- fn = (0, import_gui_core.useEvent)(callback);
95
- (0, import_gui_constants.useIsomorphicLayoutEffect)(function () {
96
- var raf1 = 0,
97
- raf2 = 0;
98
- return raf1 = requestAnimationFrame(function () {
99
- raf2 = requestAnimationFrame(fn);
100
- }), function () {
101
- cancelAnimationFrame(raf1), cancelAnimationFrame(raf2);
102
- };
103
- }, [fn]);
104
- }
105
- //# sourceMappingURL=ToastAnnounce.native.js.map
@@ -1 +0,0 @@
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","ToastAnnounce_exports","ToastAnnounce","ToastAnnounceExclude","module","exports","import_jsx_runtime","require","import_gui_constants","import_gui_core","import_gui_portal","import_gui_start_transition","import_gui_visually_hidden","React","import_ToastProvider","ToastAnnounceExcludeFrame","styled","View","forwardRef","props","forwardedRef","altText","announceExcludeProps","jsx","ref","scope","children","announceProps","context","useToastProviderContext","renderAnnounceText","setRenderAnnounceText","useState","isAnnounced","setIsAnnounced","useNextFrame","startTransition","useEffect","timer","setTimeout"],"sources":["../../src/ToastAnnounce.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,63 +0,0 @@
1
- import { isAndroid, isIos, isWeb } from "@hanzogui/core";
2
- import React from "react";
3
- import { createNativeToast } from "./createNativeToast.mjs";
4
- import { jsx } from "react/jsx-runtime";
5
- const ToastContext = React.createContext({}),
6
- ToastCurrentContext = React.createContext(null),
7
- useToastController = () => React.useContext(ToastContext),
8
- useToastState = () => React.useContext(ToastCurrentContext),
9
- useToast = () => ({
10
- ...useToastController(),
11
- currentToast: useToastState()
12
- }),
13
- ToastImperativeProvider = ({
14
- children,
15
- options
16
- }) => {
17
- const counterRef = React.useRef(0),
18
- [toast, setToast] = React.useState(null),
19
- [lastNativeToastRef, setLastNativeToastRef] = React.useState(null),
20
- show = React.useCallback((title, showOptions) => {
21
- const native = showOptions?.native ?? options.native,
22
- isWebNative = Array.isArray(native) ? native.includes("web") : native === "web",
23
- isMobileNative = Array.isArray(native) ? native.includes("mobile") : native === "mobile",
24
- isAndroidNative = isMobileNative || (Array.isArray(native) ? native.includes("android") : native === "android"),
25
- isIosNative = isMobileNative || (Array.isArray(native) ? native.includes("ios") : native === "ios"),
26
- isHandledNatively = native === !0 || isWeb && isWebNative || !isWeb && isMobileNative || isAndroid && isAndroidNative || isIos && isIosNative;
27
- if (isHandledNatively) {
28
- const nativeToastResult = createNativeToast(title, showOptions ?? {});
29
- typeof nativeToastResult == "object" && nativeToastResult.nativeToastRef && setLastNativeToastRef(nativeToastResult.nativeToastRef);
30
- }
31
- return counterRef.current++, setToast({
32
- ...showOptions?.customData,
33
- ...showOptions,
34
- viewportName: showOptions?.viewportName ?? "default",
35
- title,
36
- id: counterRef.current.toString(),
37
- isHandledNatively
38
- }), !0;
39
- }, [setToast, JSON.stringify(options.native || null)]),
40
- hide = React.useCallback(() => {
41
- lastNativeToastRef?.close(), setToast(prev => prev ? {
42
- ...prev,
43
- hide: !0
44
- } : null), setTimeout(() => {
45
- setToast(null);
46
- }, 100);
47
- }, [setToast, lastNativeToastRef]),
48
- contextValue = React.useMemo(() => ({
49
- show,
50
- hide,
51
- nativeToast: lastNativeToastRef,
52
- options
53
- }), [show, hide, lastNativeToastRef, JSON.stringify(options || null)]);
54
- return /* @__PURE__ */jsx(ToastContext.Provider, {
55
- value: contextValue,
56
- children: /* @__PURE__ */jsx(ToastCurrentContext.Provider, {
57
- value: toast,
58
- children
59
- })
60
- });
61
- };
62
- export { ToastImperativeProvider, useToast, useToastController, useToastState };
63
- //# sourceMappingURL=ToastImperative.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["isAndroid","isIos","isWeb","React","createNativeToast","jsx","ToastContext","createContext","ToastCurrentContext","useToastController","useContext","useToastState","useToast","currentToast","ToastImperativeProvider","children","options","counterRef","useRef","toast","setToast","useState","lastNativeToastRef","setLastNativeToastRef","show","useCallback","title","showOptions","native","isWebNative","Array","isArray","includes","isMobileNative","isAndroidNative","isIosNative","isHandledNatively","nativeToastResult","nativeToastRef","current","customData","viewportName","id","toString","JSON","stringify","hide","close","prev","setTimeout","contextValue","useMemo","nativeToast","Provider","value"],"sources":["../../src/ToastImperative.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,EAAWC,KAAA,EAAOC,KAAA,QAAa;AACxC,OAAOC,KAAA,MAAW;AAClB,SAASC,iBAAA,QAAyB;AAqL5B,SAAAC,GAAA;AA3GN,MAAMC,YAAA,GAAeH,KAAA,CAAMI,aAAA,CAA6B,CAAC,CAAQ;EAC3DC,mBAAA,GAAsBL,KAAA,CAAMI,aAAA,CAAgC,IAAI;EAEzDE,kBAAA,GAAqBA,CAAA,KACzBN,KAAA,CAAMO,UAAA,CAAWJ,YAAY;EAGzBK,aAAA,GAAgBA,CAAA,KACpBR,KAAA,CAAMO,UAAA,CAAWF,mBAAmB;EAIhCI,QAAA,GAAWA,CAAA,MACf;IACL,GAAGH,kBAAA,CAAmB;IACtBI,YAAA,EAAcF,aAAA,CAAc;EAC9B;EAWWG,uBAAA,GAA0BA,CAAC;IACtCC,QAAA;IACAC;EACF,MAAoC;IAClC,MAAMC,UAAA,GAAad,KAAA,CAAMe,MAAA,CAAO,CAAC;MAE3B,CAACC,KAAA,EAAOC,QAAQ,IAAIjB,KAAA,CAAMkB,QAAA,CAA2B,IAAI;MAEzD,CAACC,kBAAA,EAAoBC,qBAAqB,IAC9CpB,KAAA,CAAMkB,QAAA,CAAuC,IAAI;MAE7CG,IAAA,GAAOrB,KAAA,CAAMsB,WAAA,CACjB,CAACC,KAAA,EAAOC,WAAA,KAAgB;QACtB,MAAMC,MAAA,GAASD,WAAA,EAAaC,MAAA,IAAUZ,OAAA,CAAQY,MAAA;UACxCC,WAAA,GAAcC,KAAA,CAAMC,OAAA,CAAQH,MAAM,IACpCA,MAAA,CAAOI,QAAA,CAAS,KAAK,IACrBJ,MAAA,KAAW;UACTK,cAAA,GAAiBH,KAAA,CAAMC,OAAA,CAAQH,MAAM,IACvCA,MAAA,CAAOI,QAAA,CAAS,QAAQ,IACxBJ,MAAA,KAAW;UACTM,eAAA,GACJD,cAAA,KACCH,KAAA,CAAMC,OAAA,CAAQH,MAAM,IAAIA,MAAA,CAAOI,QAAA,CAAS,SAAS,IAAIJ,MAAA,KAAW;UAC7DO,WAAA,GACJF,cAAA,KACCH,KAAA,CAAMC,OAAA,CAAQH,MAAM,IAAIA,MAAA,CAAOI,QAAA,CAAS,KAAK,IAAIJ,MAAA,KAAW;UAEzDQ,iBAAA,GACJR,MAAA,KAAW,MACV1B,KAAA,IAAS2B,WAAA,IACT,CAAC3B,KAAA,IAAS+B,cAAA,IACVjC,SAAA,IAAakC,eAAA,IACbjC,KAAA,IAASkC,WAAA;QAEZ,IAAIC,iBAAA,EAAmB;UACrB,MAAMC,iBAAA,GAAoBjC,iBAAA,CAAkBsB,KAAA,EAAOC,WAAA,IAAe,CAAC,CAAC;UAChE,OAAOU,iBAAA,IAAsB,YAAYA,iBAAA,CAAkBC,cAAA,IAC7Df,qBAAA,CAAsBc,iBAAA,CAAkBC,cAAc;QAE1D;QACA,OAAArB,UAAA,CAAWsB,OAAA,IACXnB,QAAA,CAAS;UACP,GAAGO,WAAA,EAAaa,UAAA;UAChB,GAAGb,WAAA;UACHc,YAAA,EAAcd,WAAA,EAAac,YAAA,IAAgB;UAC3Cf,KAAA;UACAgB,EAAA,EAAIzB,UAAA,CAAWsB,OAAA,CAAQI,QAAA,CAAS;UAChCP;QACF,CAAC,GACM;MACT,GACA,CAAChB,QAAA,EAAUwB,IAAA,CAAKC,SAAA,CAAU7B,OAAA,CAAQY,MAAA,IAAU,IAAI,CAAC,CACnD;MAEMkB,IAAA,GAAO3C,KAAA,CAAMsB,WAAA,CAAY,MAAM;QACnCH,kBAAA,EAAoByB,KAAA,CAAM,GAC1B3B,QAAA,CAAU4B,IAAA,IACHA,IAAA,GACE;UACL,GAAGA,IAAA;UACHF,IAAA,EAAM;QACR,IAJkB,IAKnB,GAEDG,UAAA,CAAW,MAAM;UACf7B,QAAA,CAAS,IAAI;QACf,GAAG,GAAG;MACR,GAAG,CAACA,QAAA,EAAUE,kBAAkB,CAAC;MAE3B4B,YAAA,GAAe/C,KAAA,CAAMgD,OAAA,CAAQ,OAC1B;QACL3B,IAAA;QACAsB,IAAA;QACAM,WAAA,EAAa9B,kBAAA;QACbN;MACF,IACC,CAACQ,IAAA,EAAMsB,IAAA,EAAMxB,kBAAA,EAAoBsB,IAAA,CAAKC,SAAA,CAAU7B,OAAA,IAAW,IAAI,CAAC,CAAC;IAEpE,OACE,eAAAX,GAAA,CAACC,YAAA,CAAa+C,QAAA,EAAb;MAAsBC,KAAA,EAAOJ,YAAA;MAC5BnC,QAAA,iBAAAV,GAAA,CAACG,mBAAA,CAAoB6C,QAAA,EAApB;QAA6BC,KAAA,EAAOnC,KAAA;QAClCJ;MAAA,CACH;IAAA,CACF;EAEJ","ignoreList":[]}