@hanzogui/animations-moti 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.
@@ -0,0 +1,222 @@
1
+ import { PresenceContext, ResetPresence, usePresence } from "@hanzogui/use-presence";
2
+ import { getSplitStyles, hooks, isWeb, Text, useComposedRefs, useThemeWithState, View } from "@hanzogui/core";
3
+ import { useMotify } from "moti/author";
4
+ import React, { forwardRef, useMemo, useRef } from "react";
5
+ import Animated_, { cancelAnimation, runOnJS, useAnimatedReaction, useAnimatedStyle, useDerivedValue, useSharedValue, withSpring, withTiming } from "react-native-reanimated";
6
+ import { jsx } from "react/jsx-runtime";
7
+ const resolveDynamicValue = (value, isDark) => value && typeof value == "object" && "dynamic" in value ? isDark ? value.dynamic.dark : value.dynamic.light : value,
8
+ safeESModule = a => {
9
+ const b = a;
10
+ return (b.__esModule || b[Symbol.toStringTag] === "Module" ? b.default : b) || a;
11
+ },
12
+ Animated = safeESModule(Animated_);
13
+ function createGuiAnimatedComponent(defaultTag = "div") {
14
+ const isText = defaultTag === "span",
15
+ Component = Animated.createAnimatedComponent(forwardRef((propsIn, ref) => {
16
+ const {
17
+ forwardedRef,
18
+ animation,
19
+ render = defaultTag,
20
+ ...propsRest
21
+ } = propsIn,
22
+ hostRef = useRef(null),
23
+ composedRefs = useComposedRefs(forwardedRef, ref, hostRef),
24
+ stateRef = useRef(null);
25
+ stateRef.current || (stateRef.current = {
26
+ get host() {
27
+ return hostRef.current;
28
+ }
29
+ });
30
+ const [_, state] = useThemeWithState({}),
31
+ props = getSplitStyles(propsRest, isText ? Text.staticConfig : View.staticConfig, state?.theme, state?.name, {
32
+ unmounted: !1
33
+ }, {
34
+ isAnimated: !1,
35
+ noClass: !0
36
+ })?.viewProps || {},
37
+ Element = render,
38
+ transformedProps = hooks.usePropsTransform?.(render, props, stateRef, !1);
39
+ return /* @__PURE__ */jsx(Element, {
40
+ ...transformedProps,
41
+ ref: composedRefs
42
+ });
43
+ }));
44
+ return Component.acceptRenderProp = !0, Component;
45
+ }
46
+ const AnimatedView = createGuiAnimatedComponent("div"),
47
+ AnimatedText = createGuiAnimatedComponent("span"),
48
+ onlyAnimateKeys = {
49
+ transform: !0,
50
+ opacity: !0,
51
+ height: !0,
52
+ width: !0,
53
+ backgroundColor: !0,
54
+ borderColor: !0,
55
+ borderLeftColor: !0,
56
+ borderRightColor: !0,
57
+ borderTopColor: !0,
58
+ borderBottomColor: !0,
59
+ borderRadius: !0,
60
+ borderTopLeftRadius: !0,
61
+ borderTopRightRadius: !0,
62
+ borderBottomLeftRadius: !0,
63
+ borderBottomRightRadius: !0,
64
+ borderLeftWidth: !0,
65
+ borderRightWidth: !0,
66
+ borderTopWidth: !0,
67
+ borderBottomWidth: !0,
68
+ color: !0,
69
+ left: !0,
70
+ right: !0,
71
+ top: !0,
72
+ bottom: !0,
73
+ fontSize: !0,
74
+ fontWeight: !0,
75
+ lineHeight: !0,
76
+ letterSpacing: !0
77
+ };
78
+ function createAnimations(animations) {
79
+ return {
80
+ needsCustomComponent: !0,
81
+ View: isWeb ? AnimatedView : Animated.View,
82
+ Text: isWeb ? AnimatedText : Animated.Text,
83
+ // View: Animated.View,
84
+ // Text: Animated.Text,
85
+ isReactNative: !0,
86
+ inputStyle: "value",
87
+ outputStyle: "inline",
88
+ animations,
89
+ usePresence,
90
+ ResetPresence,
91
+ useAnimatedNumber(initial) {
92
+ const sharedValue = useSharedValue(initial);
93
+ return React.useMemo(() => ({
94
+ getInstance() {
95
+ "worklet";
96
+
97
+ return sharedValue;
98
+ },
99
+ getValue() {
100
+ "worklet";
101
+
102
+ return sharedValue.value;
103
+ },
104
+ setValue(next, config = {
105
+ type: "spring"
106
+ }, onFinish) {
107
+ "worklet";
108
+
109
+ config.type === "direct" ? (sharedValue.value = next, onFinish?.()) : config.type === "spring" ? sharedValue.value = withSpring(next, config, onFinish ? () => {
110
+ "worklet";
111
+
112
+ runOnJS(onFinish)();
113
+ } : void 0) : sharedValue.value = withTiming(next, config, onFinish ? () => {
114
+ "worklet";
115
+
116
+ runOnJS(onFinish)();
117
+ } : void 0);
118
+ },
119
+ stop() {
120
+ "worklet";
121
+
122
+ cancelAnimation(sharedValue);
123
+ }
124
+ }), [sharedValue]);
125
+ },
126
+ useAnimatedNumberReaction({
127
+ value
128
+ }, onValue) {
129
+ const instance = value.getInstance();
130
+ return useAnimatedReaction(() => instance.value, (next, prev) => {
131
+ prev !== next && runOnJS(onValue)(next);
132
+ },
133
+ // dependency array is very important here
134
+ [onValue, instance]);
135
+ },
136
+ /**
137
+ * `getStyle` must be a worklet
138
+ */
139
+ useAnimatedNumberStyle(val, getStyle) {
140
+ const instance = val.getInstance(),
141
+ derivedValue = useDerivedValue(() => instance.value, [instance, getStyle]);
142
+ return useAnimatedStyle(() => getStyle(derivedValue.value), [val, getStyle, derivedValue, instance]);
143
+ },
144
+ useAnimations: animationProps => {
145
+ const {
146
+ props,
147
+ presence,
148
+ style,
149
+ componentState
150
+ } = animationProps,
151
+ animationKey = Array.isArray(props.transition) ? props.transition[0] : props.transition,
152
+ isHydrating = componentState.unmounted === !0,
153
+ disableAnimation = isHydrating || !animationKey,
154
+ presenceContext = React.useContext(PresenceContext),
155
+ [, themeState] = useThemeWithState({}),
156
+ isDark = themeState?.scheme === "dark" || themeState?.name?.startsWith("dark"),
157
+ {
158
+ dontAnimate,
159
+ motiProps
160
+ } = useMemo(() => {
161
+ let animate = {},
162
+ dontAnimate2 = {};
163
+ if (disableAnimation) for (const key in style) {
164
+ const rawValue = style[key],
165
+ value = resolveDynamicValue(rawValue, isDark);
166
+ value !== void 0 && (dontAnimate2[key] = value);
167
+ } else {
168
+ const animateOnly = props.animateOnly;
169
+ for (const key in style) {
170
+ const rawValue = style[key],
171
+ value = resolveDynamicValue(rawValue, isDark);
172
+ value !== void 0 && (!onlyAnimateKeys[key] || value === "auto" || typeof value == "string" && value.startsWith("calc") || animateOnly && !animateOnly.includes(key) ? dontAnimate2[key] = value : animate[key] = value);
173
+ }
174
+ }
175
+ if (componentState.unmounted === "should-enter") for (const key in style) {
176
+ const rawValue = style[key],
177
+ value = resolveDynamicValue(rawValue, isDark);
178
+ value !== void 0 && (dontAnimate2[key] = value);
179
+ }
180
+ const styles = animate,
181
+ isExiting = !!presence?.[1],
182
+ usePresenceValue = presence || void 0;
183
+ let transition = isHydrating ? {
184
+ type: "transition",
185
+ duration: 0
186
+ } : animations[animationKey],
187
+ hasClonedTransition = !1;
188
+ if (Array.isArray(props.transition)) {
189
+ const config = props.transition[1];
190
+ if (config && typeof config == "object") for (const key in config) {
191
+ const val = config[key];
192
+ hasClonedTransition || (transition = Object.assign({}, transition), hasClonedTransition = !0), typeof val == "string" ? transition[key] = animations[val] : transition[key] = val;
193
+ }
194
+ }
195
+ return {
196
+ dontAnimate: dontAnimate2,
197
+ motiProps: {
198
+ animate: isExiting || componentState.unmounted === !0 ? {} : styles,
199
+ transition: componentState.unmounted ? {
200
+ duration: 0
201
+ } : transition,
202
+ usePresenceValue,
203
+ presenceContext,
204
+ exit: isExiting ? styles : void 0
205
+ }
206
+ };
207
+ }, [presenceContext, presence, animationKey, componentState.unmounted, JSON.stringify(style), presenceContext, isDark]),
208
+ moti = useMotify(motiProps);
209
+ return process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile" && console.info("useMotify(", JSON.stringify(motiProps, null, 2) + ")", {
210
+ "componentState.unmounted": componentState.unmounted,
211
+ animationProps,
212
+ motiProps,
213
+ moti,
214
+ style: [dontAnimate, moti.style]
215
+ }), {
216
+ style: [dontAnimate, moti.style]
217
+ };
218
+ }
219
+ };
220
+ }
221
+ export { createAnimations };
222
+ //# sourceMappingURL=createAnimations.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PresenceContext","ResetPresence","usePresence","getSplitStyles","hooks","isWeb","Text","useComposedRefs","useThemeWithState","View","useMotify","React","forwardRef","useMemo","useRef","Animated_","cancelAnimation","runOnJS","useAnimatedReaction","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","withTiming","jsx","resolveDynamicValue","value","isDark","dynamic","dark","light","safeESModule","a","b","__esModule","Symbol","toStringTag","default","Animated","createGuiAnimatedComponent","defaultTag","isText","Component","createAnimatedComponent","propsIn","ref","forwardedRef","animation","render","propsRest","hostRef","composedRefs","stateRef","current","host","_","state","props","staticConfig","theme","name","unmounted","isAnimated","noClass","viewProps","Element","transformedProps","usePropsTransform","acceptRenderProp","AnimatedView","AnimatedText","onlyAnimateKeys","transform","opacity","height","width","backgroundColor","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","color","left","right","top","bottom","fontSize","fontWeight","lineHeight","letterSpacing","createAnimations","animations","needsCustomComponent","isReactNative","inputStyle","outputStyle","useAnimatedNumber","initial","sharedValue","getInstance","getValue","setValue","next","config","type","onFinish","stop","useAnimatedNumberReaction","onValue","instance","prev","useAnimatedNumberStyle","val","getStyle","derivedValue","useAnimations","animationProps","presence","style","componentState","animationKey","Array","isArray","transition","isHydrating","disableAnimation","presenceContext","useContext","themeState","scheme","startsWith","dontAnimate","motiProps","animate","dontAnimate2","key","rawValue","animateOnly","includes","styles","isExiting","usePresenceValue","duration","hasClonedTransition","Object","assign","exit","JSON","stringify","moti","process","env","NODE_ENV","debug","console","info"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,253 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { PresenceContext, ResetPresence, usePresence } from "@hanzogui/use-presence";
3
+ import { getSplitStyles, hooks, isWeb, Text, useComposedRefs, useThemeWithState, View } from "@hanzogui/core";
4
+ import { useMotify } from "moti/author";
5
+ import React, { forwardRef, useMemo, useRef } from "react";
6
+ import Animated_, { cancelAnimation, runOnJS, useAnimatedReaction, useAnimatedStyle, useDerivedValue, useSharedValue, withSpring, withTiming } from "react-native-reanimated";
7
+ function _type_of(obj) {
8
+ "@swc/helpers - typeof";
9
+
10
+ return obj && typeof Symbol < "u" && obj.constructor === Symbol ? "symbol" : typeof obj;
11
+ }
12
+ var resolveDynamicValue = function (value, isDark) {
13
+ if (value && (typeof value > "u" ? "undefined" : _type_of(value)) === "object" && "dynamic" in value) {
14
+ var dynamicValue = isDark ? value.dynamic.dark : value.dynamic.light;
15
+ return dynamicValue;
16
+ }
17
+ return value;
18
+ },
19
+ safeESModule = function (a) {
20
+ var b = a,
21
+ out = b.__esModule || b[Symbol.toStringTag] === "Module" ? b.default : b;
22
+ return out || a;
23
+ },
24
+ Animated = safeESModule(Animated_);
25
+ function createGuiAnimatedComponent() {
26
+ var defaultTag = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "div",
27
+ isText = defaultTag === "span",
28
+ Component = Animated.createAnimatedComponent(/* @__PURE__ */forwardRef(function (propsIn, ref) {
29
+ var _hooks_usePropsTransform,
30
+ {
31
+ forwardedRef,
32
+ animation,
33
+ render = defaultTag,
34
+ ...propsRest
35
+ } = propsIn,
36
+ hostRef = useRef(null),
37
+ composedRefs = useComposedRefs(forwardedRef, ref, hostRef),
38
+ stateRef = useRef(null);
39
+ stateRef.current || (stateRef.current = {
40
+ get host() {
41
+ return hostRef.current;
42
+ }
43
+ });
44
+ var [_, state] = useThemeWithState({}),
45
+ result = getSplitStyles(propsRest, isText ? Text.staticConfig : View.staticConfig, state?.theme, state?.name, {
46
+ unmounted: !1
47
+ }, {
48
+ isAnimated: !1,
49
+ noClass: !0
50
+ }),
51
+ props = result?.viewProps || {},
52
+ Element = render,
53
+ transformedProps = (_hooks_usePropsTransform = hooks.usePropsTransform) === null || _hooks_usePropsTransform === void 0 ? void 0 : _hooks_usePropsTransform.call(hooks, render, props, stateRef, !1);
54
+ return /* @__PURE__ */_jsx(Element, {
55
+ ...transformedProps,
56
+ ref: composedRefs
57
+ });
58
+ }));
59
+ return Component.acceptRenderProp = !0, Component;
60
+ }
61
+ var AnimatedView = createGuiAnimatedComponent("div"),
62
+ AnimatedText = createGuiAnimatedComponent("span"),
63
+ onlyAnimateKeys = {
64
+ transform: !0,
65
+ opacity: !0,
66
+ height: !0,
67
+ width: !0,
68
+ backgroundColor: !0,
69
+ borderColor: !0,
70
+ borderLeftColor: !0,
71
+ borderRightColor: !0,
72
+ borderTopColor: !0,
73
+ borderBottomColor: !0,
74
+ borderRadius: !0,
75
+ borderTopLeftRadius: !0,
76
+ borderTopRightRadius: !0,
77
+ borderBottomLeftRadius: !0,
78
+ borderBottomRightRadius: !0,
79
+ borderLeftWidth: !0,
80
+ borderRightWidth: !0,
81
+ borderTopWidth: !0,
82
+ borderBottomWidth: !0,
83
+ color: !0,
84
+ left: !0,
85
+ right: !0,
86
+ top: !0,
87
+ bottom: !0,
88
+ fontSize: !0,
89
+ fontWeight: !0,
90
+ lineHeight: !0,
91
+ letterSpacing: !0
92
+ };
93
+ function createAnimations(animations) {
94
+ return {
95
+ needsCustomComponent: !0,
96
+ View: isWeb ? AnimatedView : Animated.View,
97
+ Text: isWeb ? AnimatedText : Animated.Text,
98
+ // View: Animated.View,
99
+ // Text: Animated.Text,
100
+ isReactNative: !0,
101
+ inputStyle: "value",
102
+ outputStyle: "inline",
103
+ animations,
104
+ usePresence,
105
+ ResetPresence,
106
+ useAnimatedNumber(initial) {
107
+ var sharedValue = useSharedValue(initial);
108
+ return React.useMemo(function () {
109
+ return {
110
+ getInstance() {
111
+ "worklet";
112
+
113
+ return sharedValue;
114
+ },
115
+ getValue() {
116
+ "worklet";
117
+
118
+ return sharedValue.value;
119
+ },
120
+ setValue(next) {
121
+ "worklet";
122
+
123
+ var config = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
124
+ type: "spring"
125
+ },
126
+ onFinish = arguments.length > 2 ? arguments[2] : void 0;
127
+ config.type === "direct" ? (sharedValue.value = next, onFinish?.()) : config.type === "spring" ? sharedValue.value = withSpring(next, config, onFinish ? function () {
128
+ "worklet";
129
+
130
+ runOnJS(onFinish)();
131
+ } : void 0) : sharedValue.value = withTiming(next, config, onFinish ? function () {
132
+ "worklet";
133
+
134
+ runOnJS(onFinish)();
135
+ } : void 0);
136
+ },
137
+ stop() {
138
+ "worklet";
139
+
140
+ cancelAnimation(sharedValue);
141
+ }
142
+ };
143
+ }, [sharedValue]);
144
+ },
145
+ useAnimatedNumberReaction(param, onValue) {
146
+ var {
147
+ value
148
+ } = param,
149
+ instance = value.getInstance();
150
+ return useAnimatedReaction(function () {
151
+ return instance.value;
152
+ }, function (next, prev) {
153
+ prev !== next && runOnJS(onValue)(next);
154
+ },
155
+ // dependency array is very important here
156
+ [onValue, instance]);
157
+ },
158
+ /**
159
+ * `getStyle` must be a worklet
160
+ */
161
+ useAnimatedNumberStyle(val, getStyle) {
162
+ var instance = val.getInstance(),
163
+ derivedValue = useDerivedValue(function () {
164
+ return instance.value;
165
+ },
166
+ // dependency array is very important here
167
+ [instance, getStyle]);
168
+ return useAnimatedStyle(function () {
169
+ return getStyle(derivedValue.value);
170
+ },
171
+ // dependency array is very important here
172
+ [val, getStyle, derivedValue, instance]);
173
+ },
174
+ useAnimations: function (animationProps) {
175
+ var _themeState_name,
176
+ {
177
+ props,
178
+ presence,
179
+ style,
180
+ componentState
181
+ } = animationProps,
182
+ animationKey = Array.isArray(props.transition) ? props.transition[0] : props.transition,
183
+ isHydrating = componentState.unmounted === !0,
184
+ disableAnimation = isHydrating || !animationKey,
185
+ presenceContext = React.useContext(PresenceContext),
186
+ [, themeState] = useThemeWithState({}),
187
+ isDark = themeState?.scheme === "dark" || (themeState == null || (_themeState_name = themeState.name) === null || _themeState_name === void 0 ? void 0 : _themeState_name.startsWith("dark")),
188
+ {
189
+ dontAnimate,
190
+ motiProps
191
+ } = useMemo(function () {
192
+ var animate = {},
193
+ dontAnimate2 = {};
194
+ if (disableAnimation) for (var key in style) {
195
+ var rawValue = style[key],
196
+ value = resolveDynamicValue(rawValue, isDark);
197
+ value !== void 0 && (dontAnimate2[key] = value);
198
+ } else {
199
+ var animateOnly = props.animateOnly;
200
+ for (var key1 in style) {
201
+ var rawValue1 = style[key1],
202
+ value1 = resolveDynamicValue(rawValue1, isDark);
203
+ value1 !== void 0 && (!onlyAnimateKeys[key1] || value1 === "auto" || typeof value1 == "string" && value1.startsWith("calc") || animateOnly && !animateOnly.includes(key1) ? dontAnimate2[key1] = value1 : animate[key1] = value1);
204
+ }
205
+ }
206
+ if (componentState.unmounted === "should-enter") for (var key2 in style) {
207
+ var rawValue2 = style[key2],
208
+ value2 = resolveDynamicValue(rawValue2, isDark);
209
+ value2 !== void 0 && (dontAnimate2[key2] = value2);
210
+ }
211
+ var styles = animate,
212
+ isExiting = !!presence?.[1],
213
+ usePresenceValue = presence || void 0,
214
+ transition = isHydrating ? {
215
+ type: "transition",
216
+ duration: 0
217
+ } : animations[animationKey],
218
+ hasClonedTransition = !1;
219
+ if (Array.isArray(props.transition)) {
220
+ var config = props.transition[1];
221
+ if (config && (typeof config > "u" ? "undefined" : _type_of(config)) === "object") for (var key3 in config) {
222
+ var val = config[key3];
223
+ hasClonedTransition || (transition = Object.assign({}, transition), hasClonedTransition = !0), typeof val == "string" ? transition[key3] = animations[val] : transition[key3] = val;
224
+ }
225
+ }
226
+ return {
227
+ dontAnimate: dontAnimate2,
228
+ motiProps: {
229
+ animate: isExiting || componentState.unmounted === !0 ? {} : styles,
230
+ transition: componentState.unmounted ? {
231
+ duration: 0
232
+ } : transition,
233
+ usePresenceValue,
234
+ presenceContext,
235
+ exit: isExiting ? styles : void 0
236
+ }
237
+ };
238
+ }, [presenceContext, presence, animationKey, componentState.unmounted, JSON.stringify(style), presenceContext, isDark]),
239
+ moti = useMotify(motiProps);
240
+ return process.env.NODE_ENV === "development" && props.debug && props.debug !== "profile" && console.info("useMotify(", JSON.stringify(motiProps, null, 2) + ")", {
241
+ "componentState.unmounted": componentState.unmounted,
242
+ animationProps,
243
+ motiProps,
244
+ moti,
245
+ style: [dontAnimate, moti.style]
246
+ }), {
247
+ style: [dontAnimate, moti.style]
248
+ };
249
+ }
250
+ };
251
+ }
252
+ export { createAnimations };
253
+ //# sourceMappingURL=createAnimations.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["jsx","_jsx","PresenceContext","ResetPresence","usePresence","getSplitStyles","hooks","isWeb","Text","useComposedRefs","useThemeWithState","View","useMotify","React","forwardRef","useMemo","useRef","Animated_","cancelAnimation","runOnJS","useAnimatedReaction","useAnimatedStyle","useDerivedValue","useSharedValue","withSpring","withTiming","_type_of","obj","Symbol","constructor","resolveDynamicValue","value","isDark","dynamicValue","dynamic","dark","light","safeESModule","a","b","out","__esModule","toStringTag","default","Animated","createGuiAnimatedComponent","defaultTag","arguments","length","isText","Component","createAnimatedComponent","propsIn","ref","_hooks_usePropsTransform","forwardedRef","animation","render","propsRest","hostRef","composedRefs","stateRef","current","host","_","state","result","staticConfig","theme","name","unmounted","isAnimated","noClass","props","viewProps","Element","transformedProps","usePropsTransform","call","acceptRenderProp","AnimatedView","AnimatedText","onlyAnimateKeys","transform","opacity","height","width","backgroundColor","borderColor","borderLeftColor","borderRightColor","borderTopColor","borderBottomColor","borderRadius","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","color","left","right","top","bottom","fontSize","fontWeight","lineHeight","letterSpacing","createAnimations","animations","needsCustomComponent","isReactNative","inputStyle","outputStyle","useAnimatedNumber","initial","sharedValue","getInstance","getValue","setValue","next","config","type","onFinish","stop","useAnimatedNumberReaction","param","onValue","instance","prev","useAnimatedNumberStyle","val","getStyle","derivedValue","useAnimations","animationProps","_themeState_name","presence","style","componentState","animationKey","Array","isArray","transition","isHydrating","disableAnimation","presenceContext","useContext","themeState","scheme","startsWith","dontAnimate","motiProps","animate","dontAnimate2","key","rawValue","animateOnly","key1","rawValue1","value1","includes","key2","rawValue2","value2","styles","isExiting","usePresenceValue","duration","hasClonedTransition","key3","Object","assign","exit","JSON","stringify","moti"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export * from "./createAnimations.mjs";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAEA,cAAc","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export * from "./createAnimations.mjs";
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAEA,cAAc","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export * from "./createAnimations.native.js";
2
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAEA,cAAc","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ typeof requestAnimationFrame > "u" && (globalThis.requestAnimationFrame = setTimeout);
2
+ typeof global > "u" && (globalThis.global = globalThis);
3
+ //# sourceMappingURL=polyfill.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["requestAnimationFrame","globalThis","setTimeout","global"],"sources":["../../src/polyfill.ts"],"sourcesContent":[null],"mappings":"AACI,OAAOA,qBAAA,GAA0B,QACnCC,UAAA,CAAWD,qBAAA,GAA2BE,UAAA;AAIpC,OAAOC,MAAA,GAAW,QACpBF,UAAA,CAAWE,MAAA,GAAYF,UAAA","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ typeof requestAnimationFrame > "u" && (globalThis.requestAnimationFrame = setTimeout);
2
+ typeof global > "u" && (globalThis.global = globalThis);
3
+ //# sourceMappingURL=polyfill.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["requestAnimationFrame","globalThis","setTimeout","global"],"sources":["../../src/polyfill.ts"],"sourcesContent":[null],"mappings":"AACI,OAAOA,qBAAA,GAA0B,QACnCC,UAAA,CAAWD,qBAAA,GAA2BE,UAAA;AAIpC,OAAOC,MAAA,GAAW,QACpBF,UAAA,CAAWE,MAAA,GAAYF,UAAA","ignoreList":[]}
package/package.json ADDED
@@ -0,0 +1,55 @@
1
+ {
2
+ "name": "@hanzogui/animations-moti",
3
+ "version": "2.0.0",
4
+ "gitHead": "a49cc7ea6b93ba384e77a4880ae48ac4a5635c14",
5
+ "license": "MIT",
6
+ "source": "src/index.ts",
7
+ "files": [
8
+ "src",
9
+ "types",
10
+ "dist"
11
+ ],
12
+ "type": "module",
13
+ "sideEffects": [
14
+ "polyfill.js",
15
+ "polyfill.mjs"
16
+ ],
17
+ "main": "dist/cjs",
18
+ "module": "dist/esm",
19
+ "types": "./types/index.d.ts",
20
+ "exports": {
21
+ "./package.json": "./package.json",
22
+ ".": {
23
+ "types": "./types/index.d.ts",
24
+ "react-native": "./dist/esm/index.native.js",
25
+ "browser": "./dist/esm/index.mjs",
26
+ "module": "./dist/esm/index.mjs",
27
+ "import": "./dist/esm/index.mjs",
28
+ "require": "./dist/cjs/index.cjs",
29
+ "default": "./dist/esm/index.mjs"
30
+ }
31
+ },
32
+ "publishConfig": {
33
+ "access": "public"
34
+ },
35
+ "scripts": {
36
+ "build": "hanzo-gui-build",
37
+ "watch": "hanzo-gui-build --watch",
38
+ "clean": "hanzo-gui-build clean",
39
+ "clean:build": "hanzo-gui-build clean:build"
40
+ },
41
+ "dependencies": {
42
+ "@hanzogui/core": "workspace:*",
43
+ "@hanzogui/use-presence": "workspace:*"
44
+ },
45
+ "devDependencies": {
46
+ "@hanzogui/build": "workspace:*",
47
+ "react": ">=19",
48
+ "react-native": "0.83.2",
49
+ "react-native-reanimated": "~4.2.2"
50
+ },
51
+ "peerDependencies": {
52
+ "react": ">=19",
53
+ "react-native": "*"
54
+ }
55
+ }