@tamagui/animations-css 1.119.3 → 1.120.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.
@@ -34,10 +34,10 @@ __export(createAnimations_exports, {
34
34
  createAnimations: () => createAnimations
35
35
  });
36
36
  module.exports = __toCommonJS(createAnimations_exports);
37
- var import_react = __toESM(require("react")),
38
- import_constants = require("@tamagui/constants"),
37
+ var import_constants = require("@tamagui/constants"),
38
+ import_use_presence = require("@tamagui/use-presence"),
39
39
  import_web = require("@tamagui/web"),
40
- import_use_presence = require("@tamagui/use-presence");
40
+ import_react = __toESM(require("react"));
41
41
  function createAnimations(animations) {
42
42
  const reactionListeners = /* @__PURE__ */new WeakMap();
43
43
  return {
@@ -46,18 +46,19 @@ function createAnimations(animations) {
46
46
  ResetPresence: import_use_presence.ResetPresence,
47
47
  supportsCSSVars: !0,
48
48
  useAnimatedNumber(initial) {
49
- const [val, setVal] = import_react.default.useState(initial);
50
- return {
49
+ const [val, setVal] = import_react.default.useState(initial),
50
+ [onFinish, setOnFinish] = (0, import_react.useState)();
51
+ return (0, import_constants.useIsomorphicLayoutEffect)(() => {
52
+ onFinish && (onFinish?.(), setOnFinish(void 0));
53
+ }, [onFinish]), {
51
54
  getInstance() {
52
55
  return setVal;
53
56
  },
54
57
  getValue() {
55
58
  return val;
56
59
  },
57
- setValue(next, config, onFinish) {
58
- setVal(next);
59
- const listeners = reactionListeners.get(setVal);
60
- listeners && listeners.forEach(cb => cb(next)), onFinish?.();
60
+ setValue(next, config, onFinish2) {
61
+ setVal(next), setOnFinish(onFinish2);
61
62
  },
62
63
  stop() {}
63
64
  };
@@ -25,7 +25,7 @@ __export(createAnimations_exports, {
25
25
  createAnimations: () => createAnimations
26
26
  });
27
27
  module.exports = __toCommonJS(createAnimations_exports);
28
- var import_react = __toESM(require("react")), import_constants = require("@tamagui/constants"), import_web = require("@tamagui/web"), import_use_presence = require("@tamagui/use-presence");
28
+ var import_constants = require("@tamagui/constants"), import_use_presence = require("@tamagui/use-presence"), import_web = require("@tamagui/web"), import_react = __toESM(require("react"));
29
29
  function createAnimations(animations) {
30
30
  const reactionListeners = /* @__PURE__ */ new WeakMap();
31
31
  return {
@@ -34,18 +34,18 @@ function createAnimations(animations) {
34
34
  ResetPresence: import_use_presence.ResetPresence,
35
35
  supportsCSSVars: !0,
36
36
  useAnimatedNumber(initial) {
37
- const [val, setVal] = import_react.default.useState(initial);
38
- return {
37
+ const [val, setVal] = import_react.default.useState(initial), [onFinish, setOnFinish] = (0, import_react.useState)();
38
+ return (0, import_constants.useIsomorphicLayoutEffect)(() => {
39
+ onFinish && (onFinish?.(), setOnFinish(void 0));
40
+ }, [onFinish]), {
39
41
  getInstance() {
40
42
  return setVal;
41
43
  },
42
44
  getValue() {
43
45
  return val;
44
46
  },
45
- setValue(next, config, onFinish) {
46
- setVal(next);
47
- const listeners = reactionListeners.get(setVal);
48
- listeners && listeners.forEach((cb) => cb(next)), onFinish?.();
47
+ setValue(next, config, onFinish2) {
48
+ setVal(next), setOnFinish(onFinish2);
49
49
  },
50
50
  stop() {
51
51
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createAnimations.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB,2BAClB,mBAA0C,+BAE1C,aAAmC,yBACnC,sBAA2C;AAEpC,SAAS,iBAAmC,YAAmC;AACpF,QAAM,oBAAoB,oBAAI,QAA4B;AAE1D,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA,iBAAiB;AAAA,IAEjB,kBAAkB,SAA4C;AAC5D,YAAM,CAAC,KAAK,MAAM,IAAI,aAAAA,QAAM,SAAS,OAAO;AAE5C,aAAO;AAAA,QACL,cAAc;AACZ,iBAAO;AAAA,QACT;AAAA,QACA,WAAW;AACT,iBAAO;AAAA,QACT;AAAA,QACA,SAAS,MAAM,QAAQ,UAAU;AAC/B,iBAAO,IAAI;AACX,gBAAM,YAAY,kBAAkB,IAAI,MAAM;AAC9C,UAAI,aACF,UAAU,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,GAGpC,WAAW;AAAA,QACb;AAAA,QACA,OAAO;AAAA,QAAC;AAAA,MACV;AAAA,IACF;AAAA,IAEA,0BAA0B,EAAE,MAAM,GAAG,SAAS;AAC5C,mBAAAA,QAAM,UAAU,MAAM;AACpB,cAAM,WAAW,MAAM,YAAY;AACnC,YAAI,QAAQ,kBAAkB,IAAI,QAAQ;AAC1C,YAAI,CAAC,OAAO;AACV,gBAAM,OAAO,oBAAI,IAAc;AAC/B,4BAAkB,IAAI,UAAU,IAAI,GACpC,QAAQ;AAAA,QACV;AACA,qBAAM,IAAI,OAAO,GACV,MAAM;AACX,iBAAO,OAAO,OAAO;AAAA,QACvB;AAAA,MACF,GAAG,CAAC,CAAC;AAAA,IACP;AAAA,IAEA,uBAAuB,KAAK,UAAU;AACpC,aAAO,SAAS,IAAI,SAAS,CAAC;AAAA,IAChC;AAAA,IAEA,eAAe,CAAC,EAAE,OAAO,UAAU,OAAO,gBAAgB,SAAS,MAAM;AACvE,YAAM,aAAa,CAAC,CAAC,eAAe,WAC9B,YAAY,WAAW,CAAC,MAAM,IAC9B,mBAAmB,WAAW,CAAC,GAE/B,CAAC,cAAc,eAAe,IAAI,MAAM,QAAQ,MAAM,SAAS,IACjE,MAAM,YACN,CAAC,MAAM,SAAS,GACd,YAAY,WAAW,YAAY,GACnC,OAAO,MAAM,eAAe,CAAC,KAAK;AA6CxC,iBA3CA,4CAA0B,MAAM;AAC9B,cAAM,OAAO,SAAS,QAAQ;AAC9B,YAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,KAAM;AAC9C,cAAM,OAAO,MACP,oBAAoB,MAAM;AAC9B,6BAAmB;AAAA,QACrB;AACA,oBAAK,iBAAiB,iBAAiB,iBAAiB,GACxD,KAAK,iBAAiB,oBAAoB,iBAAiB,GACpD,MAAM;AACX,eAAK,oBAAoB,iBAAiB,iBAAiB,GAC3D,KAAK,oBAAoB,oBAAoB,iBAAiB;AAAA,QAChE;AAAA,MACF,GAAG,CAAC,kBAAkB,SAAS,CAAC,GAE5B,cACE,MAAM,QAAQ,MAAM,SAAS,MAC/B,MAAM,gBAAY,+BAAmB,MAAM,SAAS,IAMtD,MAAM,aAAa,KAChB,IAAI,CAAC,QAAQ;AACZ,cAAM,WAAW,WAAW,kBAAkB,GAAG,CAAC,KAAK;AACvD,eAAO,GAAG,GAAG,IAAI,QAAQ;AAAA,MAC3B,CAAC,EACA,KAAK,IAAI,IAGV,QAAQ,IAAI,aAAa,iBAAiB,MAAM,UAAa,aAC/D,QAAQ,KAAK,iBAAiB;AAAA,QAC5B;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC,GAGE,YAIE,EAAE,OAAO,WAAW,aAAa,gBAAgB,GAAG,IAHlD;AAAA,IAIX;AAAA,EACF;AACF;",
5
- "names": ["React"]
4
+ "mappings": "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",
5
+ "names": ["React", "onFinish"]
6
6
  }
@@ -26,7 +26,7 @@ __export(createAnimations_exports, {
26
26
  createAnimations: () => createAnimations
27
27
  });
28
28
  module.exports = __toCommonJS(createAnimations_exports);
29
- var import_react = __toESM(require("react")), import_constants = require("@tamagui/constants"), import_web = require("@tamagui/web"), import_use_presence = require("@tamagui/use-presence");
29
+ var import_constants = require("@tamagui/constants"), import_use_presence = require("@tamagui/use-presence"), import_web = require("@tamagui/web"), import_react = __toESM(require("react"));
30
30
  function createAnimations(animations) {
31
31
  var reactionListeners = /* @__PURE__ */ new WeakMap();
32
32
  return {
@@ -35,20 +35,20 @@ function createAnimations(animations) {
35
35
  ResetPresence: import_use_presence.ResetPresence,
36
36
  supportsCSSVars: !0,
37
37
  useAnimatedNumber(initial) {
38
- var [val, setVal] = import_react.default.useState(initial);
39
- return {
38
+ var [val, setVal] = import_react.default.useState(initial), [onFinish, setOnFinish] = (0, import_react.useState)();
39
+ return (0, import_constants.useIsomorphicLayoutEffect)(function() {
40
+ onFinish && (onFinish == null || onFinish(), setOnFinish(void 0));
41
+ }, [
42
+ onFinish
43
+ ]), {
40
44
  getInstance() {
41
45
  return setVal;
42
46
  },
43
47
  getValue() {
44
48
  return val;
45
49
  },
46
- setValue(next, config, onFinish) {
47
- setVal(next);
48
- var listeners = reactionListeners.get(setVal);
49
- listeners && listeners.forEach(function(cb) {
50
- return cb(next);
51
- }), onFinish == null || onFinish();
50
+ setValue(next, config, onFinish2) {
51
+ setVal(next), setOnFinish(onFinish2);
52
52
  },
53
53
  stop() {
54
54
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/core/animations-css/src/createAnimations.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;mBAAkB,2BAClB,mBAA0C,+BAE1C,aAAmC,yBACnC,sBAA2C;AAEpC,SAASA,iBAAmCC,YAAa;AAC9D,MAAMC,oBAAoB,oBAAIC,QAAAA;AAE9B,SAAO;IACLF;IACAG;IACAC;IACAC,iBAAiB;IAEjBC,kBAAkBC,SAAO;AACvB,UAAM,CAACC,KAAKC,MAAAA,IAAUC,aAAAA,QAAMC,SAASJ,OAAAA;AAErC,aAAO;QACLK,cAAAA;AACE,iBAAOH;QACT;QACAI,WAAAA;AACE,iBAAOL;QACT;QACAM,SAASC,MAAMC,QAAQC,UAAQ;AAC7BR,iBAAOM,IAAAA;AACP,cAAMG,YAAYjB,kBAAkBkB,IAAIV,MAAAA;AACxC,UAAIS,aACFA,UAAUE,QAAQ,SAACC,IAAAA;mBAAOA,GAAGN,IAAAA;cAG/BE,YAAAA,QAAAA,SAAAA;QACF;QACAK,OAAAA;QAAQ;MACV;IACF;IAEAC,0BAA0B,OAAWC,SAAO;UAAlB,EAAEC,MAAK,IAAP;AACxBf,mBAAAA,QAAMgB,UAAU,WAAA;AACd,YAAMC,WAAWF,MAAMb,YAAW,GAC9BgB,QAAQ3B,kBAAkBkB,IAAIQ,QAAAA;AAClC,YAAI,CAACC,OAAO;AACV,cAAMb,OAAO,oBAAIc,IAAAA;AACjB5B,4BAAkB6B,IAAIH,UAAUZ,IAAAA,GAChCa,QAAQb;QACV;AACAa,qBAAMG,IAAIP,OAAAA,GACH,WAAA;AACLI,mBAAAA,QAAAA,MAAOI,OAAOR,OAAAA;QAChB;MACF,GAAG,CAAA,CAAE;IACP;IAEAS,uBAAuBzB,KAAK0B,UAAQ;AAClC,aAAOA,SAAS1B,IAAIK,SAAQ,CAAA;IAC9B;IAEAsB,eAAe,SAAA,OAAA;UAAC,EAAEC,OAAOC,UAAUC,OAAOC,gBAAgBC,SAAQ,IAAE,OAC5DC,aAAa,CAAC,CAACF,eAAeG,WAC9BC,aAAYN,YAAAA,OAAAA,SAAAA,SAAW,CAAA,OAAO,IAC9BO,mBAAmBP,YAAAA,OAAAA,SAAAA,SAAW,CAAA,GAE9B,CAACQ,cAAcC,eAAAA,IAAmBC,MAAMC,QAAQZ,MAAMa,SAAS,IACjEb,MAAMa,YACN;QAACb,MAAMa;SACLA,YAAYjD,WAAW6C,YAAAA,GAChBT,oBAAPc,QAAOd,qBAAAA,MAAMe,iBAAW,QAAjBf,uBAAAA,SAAAA,qBAAqB;QAAC;;AA6CnC,iBA3CAgB,4CAA0B,WAAA;AACxB,YAAMC,OAAOb,SAASc,QAAQD;AAC9B,YAAI,GAACT,oBAAoB,CAACD,aAAa,CAACU,OACxC;cAAME,OAAOF,MACPG,oBAAoB,WAAA;AACxBZ,gCAAAA,QAAAA,iBAAAA;UACF;AACAW,sBAAKE,iBAAiB,iBAAiBD,iBAAAA,GACvCD,KAAKE,iBAAiB,oBAAoBD,iBAAAA,GACnC,WAAA;AACLD,iBAAKG,oBAAoB,iBAAiBF,iBAAAA,GAC1CD,KAAKG,oBAAoB,oBAAoBF,iBAAAA;UAC/C;;MACF,GAAG;QAACZ;QAAkBD;OAAU,GAE5BM,cACEF,MAAMC,QAAQV,MAAMqB,SAAS,MAC/BrB,MAAMqB,gBAAYC,+BAAmBtB,MAAMqB,SAAS,IAMtDrB,MAAMuB,aAAaX,KAChBY,IAAI,SAACC,KAAAA;YACa/D,iCAAXgE,YAAWhE,kCAAAA,WAAW8C,mBAAAA,OAAAA,SAAAA,gBAAkBiB,GAAAA,CAAI,OAAC,QAAlC/D,oCAAAA,SAAAA,kCAAsCiD;AACvD,eAAO,GAAGc,GAAAA,IAAOC,QAAAA;MACnB,CAAA,EACCC,KAAK,IAAA,IAGNC,QAAQC,IAAIC,aAAa,iBAAiBhC,MAAM,UAAa,aAC/DiC,QAAQC,KAAK,iBAAiB;QAC5BlC;QACApC;QACAiD;QACAJ;QACAP;QACAG;QACAE;MACF,CAAA,GAGGM,YAIE;QAAEX;QAAOiC,WAAW9B,aAAa,gBAAgB;MAAG,IAHlD;IAIX;EACF;AACF;",
5
- "names": ["createAnimations", "animations", "reactionListeners", "WeakMap", "usePresence", "ResetPresence", "supportsCSSVars", "useAnimatedNumber", "initial", "val", "setVal", "React", "useState", "getInstance", "getValue", "setValue", "next", "config", "onFinish", "listeners", "get", "forEach", "cb", "stop", "useAnimatedNumberReaction", "onValue", "value", "useEffect", "instance", "queue", "Set", "set", "add", "delete", "useAnimatedNumberStyle", "getStyle", "useAnimations", "props", "presence", "style", "componentState", "stateRef", "isEntering", "unmounted", "isExiting", "sendExitComplete", "animationKey", "animationConfig", "Array", "isArray", "animation", "keys", "animateOnly", "useIsomorphicLayoutEffect", "host", "current", "node", "onFinishAnimation", "addEventListener", "removeEventListener", "transform", "transformsToString", "transition", "map", "key", "override", "join", "process", "env", "NODE_ENV", "console", "info", "className"]
4
+ "mappings": "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",
5
+ "names": ["createAnimations", "animations", "reactionListeners", "WeakMap", "usePresence", "ResetPresence", "supportsCSSVars", "useAnimatedNumber", "initial", "val", "setVal", "React", "useState", "onFinish", "setOnFinish", "useIsomorphicLayoutEffect", "undefined", "getInstance", "getValue", "setValue", "next", "config", "stop", "useAnimatedNumberReaction", "onValue", "value", "useEffect", "instance", "queue", "get", "Set", "set", "add", "delete", "useAnimatedNumberStyle", "getStyle", "useAnimations", "props", "presence", "style", "componentState", "stateRef", "isEntering", "unmounted", "isExiting", "sendExitComplete", "animationKey", "animationConfig", "Array", "isArray", "animation", "keys", "animateOnly", "host", "current", "node", "onFinishAnimation", "addEventListener", "removeEventListener", "transform", "transformsToString", "transition", "map", "key", "override", "join", "process", "env", "NODE_ENV", "console", "info", "className"]
6
6
  }
@@ -1,7 +1,7 @@
1
- import React from "react";
2
1
  import { useIsomorphicLayoutEffect } from "@tamagui/constants";
3
- import { transformsToString } from "@tamagui/web";
4
2
  import { ResetPresence, usePresence } from "@tamagui/use-presence";
3
+ import { transformsToString } from "@tamagui/web";
4
+ import React, { useState } from "react";
5
5
  function createAnimations(animations) {
6
6
  const reactionListeners = /* @__PURE__ */ new WeakMap();
7
7
  return {
@@ -10,18 +10,18 @@ function createAnimations(animations) {
10
10
  ResetPresence,
11
11
  supportsCSSVars: !0,
12
12
  useAnimatedNumber(initial) {
13
- const [val, setVal] = React.useState(initial);
14
- return {
13
+ const [val, setVal] = React.useState(initial), [onFinish, setOnFinish] = useState();
14
+ return useIsomorphicLayoutEffect(() => {
15
+ onFinish && (onFinish?.(), setOnFinish(void 0));
16
+ }, [onFinish]), {
15
17
  getInstance() {
16
18
  return setVal;
17
19
  },
18
20
  getValue() {
19
21
  return val;
20
22
  },
21
- setValue(next, config, onFinish) {
22
- setVal(next);
23
- const listeners = reactionListeners.get(setVal);
24
- listeners && listeners.forEach((cb) => cb(next)), onFinish?.();
23
+ setValue(next, config, onFinish2) {
24
+ setVal(next), setOnFinish(onFinish2);
25
25
  },
26
26
  stop() {
27
27
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createAnimations.tsx"],
4
- "mappings": "AAAA,OAAO,WAAW;AAClB,SAAS,iCAAiC;AAE1C,SAAS,0BAA0B;AACnC,SAAS,eAAe,mBAAmB;AAEpC,SAAS,iBAAmC,YAAmC;AACpF,QAAM,oBAAoB,oBAAI,QAA4B;AAE1D,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA,iBAAiB;AAAA,IAEjB,kBAAkB,SAA4C;AAC5D,YAAM,CAAC,KAAK,MAAM,IAAI,MAAM,SAAS,OAAO;AAE5C,aAAO;AAAA,QACL,cAAc;AACZ,iBAAO;AAAA,QACT;AAAA,QACA,WAAW;AACT,iBAAO;AAAA,QACT;AAAA,QACA,SAAS,MAAM,QAAQ,UAAU;AAC/B,iBAAO,IAAI;AACX,gBAAM,YAAY,kBAAkB,IAAI,MAAM;AAC9C,UAAI,aACF,UAAU,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,GAGpC,WAAW;AAAA,QACb;AAAA,QACA,OAAO;AAAA,QAAC;AAAA,MACV;AAAA,IACF;AAAA,IAEA,0BAA0B,EAAE,MAAM,GAAG,SAAS;AAC5C,YAAM,UAAU,MAAM;AACpB,cAAM,WAAW,MAAM,YAAY;AACnC,YAAI,QAAQ,kBAAkB,IAAI,QAAQ;AAC1C,YAAI,CAAC,OAAO;AACV,gBAAM,OAAO,oBAAI,IAAc;AAC/B,4BAAkB,IAAI,UAAU,IAAI,GACpC,QAAQ;AAAA,QACV;AACA,qBAAM,IAAI,OAAO,GACV,MAAM;AACX,iBAAO,OAAO,OAAO;AAAA,QACvB;AAAA,MACF,GAAG,CAAC,CAAC;AAAA,IACP;AAAA,IAEA,uBAAuB,KAAK,UAAU;AACpC,aAAO,SAAS,IAAI,SAAS,CAAC;AAAA,IAChC;AAAA,IAEA,eAAe,CAAC,EAAE,OAAO,UAAU,OAAO,gBAAgB,SAAS,MAAM;AACvE,YAAM,aAAa,CAAC,CAAC,eAAe,WAC9B,YAAY,WAAW,CAAC,MAAM,IAC9B,mBAAmB,WAAW,CAAC,GAE/B,CAAC,cAAc,eAAe,IAAI,MAAM,QAAQ,MAAM,SAAS,IACjE,MAAM,YACN,CAAC,MAAM,SAAS,GACd,YAAY,WAAW,YAAY,GACnC,OAAO,MAAM,eAAe,CAAC,KAAK;AA6CxC,aA3CA,0BAA0B,MAAM;AAC9B,cAAM,OAAO,SAAS,QAAQ;AAC9B,YAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,KAAM;AAC9C,cAAM,OAAO,MACP,oBAAoB,MAAM;AAC9B,6BAAmB;AAAA,QACrB;AACA,oBAAK,iBAAiB,iBAAiB,iBAAiB,GACxD,KAAK,iBAAiB,oBAAoB,iBAAiB,GACpD,MAAM;AACX,eAAK,oBAAoB,iBAAiB,iBAAiB,GAC3D,KAAK,oBAAoB,oBAAoB,iBAAiB;AAAA,QAChE;AAAA,MACF,GAAG,CAAC,kBAAkB,SAAS,CAAC,GAE5B,cACE,MAAM,QAAQ,MAAM,SAAS,MAC/B,MAAM,YAAY,mBAAmB,MAAM,SAAS,IAMtD,MAAM,aAAa,KAChB,IAAI,CAAC,QAAQ;AACZ,cAAM,WAAW,WAAW,kBAAkB,GAAG,CAAC,KAAK;AACvD,eAAO,GAAG,GAAG,IAAI,QAAQ;AAAA,MAC3B,CAAC,EACA,KAAK,IAAI,IAGV,QAAQ,IAAI,aAAa,iBAAiB,MAAM,UAAa,aAC/D,QAAQ,KAAK,iBAAiB;AAAA,QAC5B;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC,GAGE,YAIE,EAAE,OAAO,WAAW,aAAa,gBAAgB,GAAG,IAHlD;AAAA,IAIX;AAAA,EACF;AACF;",
5
- "names": []
4
+ "mappings": "AAAA,SAAS,iCAAiC;AAC1C,SAAS,eAAe,mBAAmB;AAE3C,SAAS,0BAA0B;AACnC,OAAO,SAAS,gBAAgB;AAEzB,SAAS,iBAAmC,YAAmC;AACpF,QAAM,oBAAoB,oBAAI,QAA4B;AAE1D,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA,iBAAiB;AAAA,IAEjB,kBAAkB,SAA4C;AAC5D,YAAM,CAAC,KAAK,MAAM,IAAI,MAAM,SAAS,OAAO,GACtC,CAAC,UAAU,WAAW,IAAI,SAA+B;AAE/D,uCAA0B,MAAM;AAC9B,QAAI,aACF,WAAW,GACX,YAAY,MAAS;AAAA,MAEzB,GAAG,CAAC,QAAQ,CAAC,GAEN;AAAA,QACL,cAAc;AACZ,iBAAO;AAAA,QACT;AAAA,QACA,WAAW;AACT,iBAAO;AAAA,QACT;AAAA,QACA,SAAS,MAAM,QAAQA,WAAU;AAC/B,iBAAO,IAAI,GACX,YAAYA,SAAQ;AAAA,QACtB;AAAA,QACA,OAAO;AAAA,QAAC;AAAA,MACV;AAAA,IACF;AAAA,IAEA,0BAA0B,EAAE,MAAM,GAAG,SAAS;AAC5C,YAAM,UAAU,MAAM;AACpB,cAAM,WAAW,MAAM,YAAY;AACnC,YAAI,QAAQ,kBAAkB,IAAI,QAAQ;AAC1C,YAAI,CAAC,OAAO;AACV,gBAAM,OAAO,oBAAI,IAAc;AAC/B,4BAAkB,IAAI,UAAU,IAAI,GACpC,QAAQ;AAAA,QACV;AACA,qBAAM,IAAI,OAAO,GACV,MAAM;AACX,iBAAO,OAAO,OAAO;AAAA,QACvB;AAAA,MACF,GAAG,CAAC,CAAC;AAAA,IACP;AAAA,IAEA,uBAAuB,KAAK,UAAU;AACpC,aAAO,SAAS,IAAI,SAAS,CAAC;AAAA,IAChC;AAAA,IAEA,eAAe,CAAC,EAAE,OAAO,UAAU,OAAO,gBAAgB,SAAS,MAAM;AACvE,YAAM,aAAa,CAAC,CAAC,eAAe,WAC9B,YAAY,WAAW,CAAC,MAAM,IAC9B,mBAAmB,WAAW,CAAC,GAE/B,CAAC,cAAc,eAAe,IAAI,MAAM,QAAQ,MAAM,SAAS,IACjE,MAAM,YACN,CAAC,MAAM,SAAS,GACd,YAAY,WAAW,YAAY,GACnC,OAAO,MAAM,eAAe,CAAC,KAAK;AA6CxC,aA3CA,0BAA0B,MAAM;AAC9B,cAAM,OAAO,SAAS,QAAQ;AAC9B,YAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,KAAM;AAC9C,cAAM,OAAO,MACP,oBAAoB,MAAM;AAC9B,6BAAmB;AAAA,QACrB;AACA,oBAAK,iBAAiB,iBAAiB,iBAAiB,GACxD,KAAK,iBAAiB,oBAAoB,iBAAiB,GACpD,MAAM;AACX,eAAK,oBAAoB,iBAAiB,iBAAiB,GAC3D,KAAK,oBAAoB,oBAAoB,iBAAiB;AAAA,QAChE;AAAA,MACF,GAAG,CAAC,kBAAkB,SAAS,CAAC,GAE5B,cACE,MAAM,QAAQ,MAAM,SAAS,MAC/B,MAAM,YAAY,mBAAmB,MAAM,SAAS,IAMtD,MAAM,aAAa,KAChB,IAAI,CAAC,QAAQ;AACZ,cAAM,WAAW,WAAW,kBAAkB,GAAG,CAAC,KAAK;AACvD,eAAO,GAAG,GAAG,IAAI,QAAQ;AAAA,MAC3B,CAAC,EACA,KAAK,IAAI,IAGV,QAAQ,IAAI,aAAa,iBAAiB,MAAM,UAAa,aAC/D,QAAQ,KAAK,iBAAiB;AAAA,QAC5B;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC,GAGE,YAIE,EAAE,OAAO,WAAW,aAAa,gBAAgB,GAAG,IAHlD;AAAA,IAIX;AAAA,EACF;AACF;",
5
+ "names": ["onFinish"]
6
6
  }
@@ -1,7 +1,7 @@
1
- import React from "react";
2
1
  import { useIsomorphicLayoutEffect } from "@tamagui/constants";
3
- import { transformsToString } from "@tamagui/web";
4
2
  import { ResetPresence, usePresence } from "@tamagui/use-presence";
3
+ import { transformsToString } from "@tamagui/web";
4
+ import React, { useState } from "react";
5
5
  function createAnimations(animations) {
6
6
  const reactionListeners = /* @__PURE__ */new WeakMap();
7
7
  return {
@@ -10,18 +10,19 @@ function createAnimations(animations) {
10
10
  ResetPresence,
11
11
  supportsCSSVars: !0,
12
12
  useAnimatedNumber(initial) {
13
- const [val, setVal] = React.useState(initial);
14
- return {
13
+ const [val, setVal] = React.useState(initial),
14
+ [onFinish, setOnFinish] = useState();
15
+ return useIsomorphicLayoutEffect(() => {
16
+ onFinish && (onFinish?.(), setOnFinish(void 0));
17
+ }, [onFinish]), {
15
18
  getInstance() {
16
19
  return setVal;
17
20
  },
18
21
  getValue() {
19
22
  return val;
20
23
  },
21
- setValue(next, config, onFinish) {
22
- setVal(next);
23
- const listeners = reactionListeners.get(setVal);
24
- listeners && listeners.forEach(cb => cb(next)), onFinish?.();
24
+ setValue(next, config, onFinish2) {
25
+ setVal(next), setOnFinish(onFinish2);
25
26
  },
26
27
  stop() {}
27
28
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","useIsomorphicLayoutEffect","transformsToString","ResetPresence","usePresence","createAnimations","animations","reactionListeners","WeakMap","supportsCSSVars","useAnimatedNumber","initial","val","setVal","useState","getInstance","getValue","setValue","next","config","onFinish","listeners","get","forEach","cb","stop","useAnimatedNumberReaction","value","onValue","useEffect","instance","queue","Set","set","add","delete","useAnimatedNumberStyle","getStyle","useAnimations","props","presence","style","componentState","stateRef","isEntering","unmounted","isExiting","sendExitComplete","animationKey","animationConfig","Array","isArray","animation","keys","animateOnly","host","current","node","onFinishAnimation","addEventListener","removeEventListener","transform","transition","map","key","override","join","process","env","NODE_ENV","debug","console","info","className"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useIsomorphicLayoutEffect","ResetPresence","usePresence","transformsToString","React","useState","createAnimations","animations","reactionListeners","WeakMap","supportsCSSVars","useAnimatedNumber","initial","val","setVal","onFinish","setOnFinish","getInstance","getValue","setValue","next","config","onFinish2","stop","useAnimatedNumberReaction","value","onValue","useEffect","instance","queue","get","Set","set","add","delete","useAnimatedNumberStyle","getStyle","useAnimations","props","presence","style","componentState","stateRef","isEntering","unmounted","isExiting","sendExitComplete","animationKey","animationConfig","Array","isArray","animation","keys","animateOnly","host","current","node","onFinishAnimation","addEventListener","removeEventListener","transform","transition","map","key","override","join","process","env","NODE_ENV","debug","console","info","className"],"sources":["../../src/createAnimations.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
- import React from "react";
2
1
  import { useIsomorphicLayoutEffect } from "@tamagui/constants";
3
- import { transformsToString } from "@tamagui/web";
4
2
  import { ResetPresence, usePresence } from "@tamagui/use-presence";
3
+ import { transformsToString } from "@tamagui/web";
4
+ import React, { useState } from "react";
5
5
  function createAnimations(animations) {
6
6
  var reactionListeners = /* @__PURE__ */ new WeakMap();
7
7
  return {
@@ -10,20 +10,20 @@ function createAnimations(animations) {
10
10
  ResetPresence,
11
11
  supportsCSSVars: !0,
12
12
  useAnimatedNumber(initial) {
13
- var [val, setVal] = React.useState(initial);
14
- return {
13
+ var [val, setVal] = React.useState(initial), [onFinish, setOnFinish] = useState();
14
+ return useIsomorphicLayoutEffect(function() {
15
+ onFinish && (onFinish?.(), setOnFinish(void 0));
16
+ }, [
17
+ onFinish
18
+ ]), {
15
19
  getInstance() {
16
20
  return setVal;
17
21
  },
18
22
  getValue() {
19
23
  return val;
20
24
  },
21
- setValue(next, config, onFinish) {
22
- setVal(next);
23
- var listeners = reactionListeners.get(setVal);
24
- listeners && listeners.forEach(function(cb) {
25
- return cb(next);
26
- }), onFinish?.();
25
+ setValue(next, config, onFinish2) {
26
+ setVal(next), setOnFinish(onFinish2);
27
27
  },
28
28
  stop() {
29
29
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Users/n8/tamagui/code/core/animations-css/src/createAnimations.tsx"],
4
- "mappings": "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",
5
- "names": ["React", "useIsomorphicLayoutEffect", "transformsToString", "ResetPresence", "usePresence", "createAnimations", "animations", "reactionListeners", "WeakMap", "supportsCSSVars", "useAnimatedNumber", "initial", "val", "setVal", "useState", "getInstance", "getValue", "setValue", "next", "config", "onFinish", "listeners", "get", "forEach", "cb", "stop", "useAnimatedNumberReaction", "onValue", "value", "useEffect", "instance", "queue", "Set", "set", "add", "delete", "useAnimatedNumberStyle", "getStyle", "useAnimations", "props", "presence", "style", "componentState", "stateRef", "isEntering", "unmounted", "isExiting", "sendExitComplete", "animationKey", "animationConfig", "Array", "isArray", "animation", "keys", "animateOnly", "host", "current", "node", "onFinishAnimation", "addEventListener", "removeEventListener", "transform", "transition", "map", "key", "override", "join", "process", "env", "NODE_ENV", "console", "info", "className"]
4
+ "mappings": "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",
5
+ "names": ["useIsomorphicLayoutEffect", "ResetPresence", "usePresence", "transformsToString", "React", "useState", "createAnimations", "animations", "reactionListeners", "WeakMap", "supportsCSSVars", "useAnimatedNumber", "initial", "val", "setVal", "onFinish", "setOnFinish", "undefined", "getInstance", "getValue", "setValue", "next", "config", "stop", "useAnimatedNumberReaction", "onValue", "value", "useEffect", "instance", "queue", "get", "Set", "set", "add", "delete", "useAnimatedNumberStyle", "getStyle", "useAnimations", "props", "presence", "style", "componentState", "stateRef", "isEntering", "unmounted", "isExiting", "sendExitComplete", "animationKey", "animationConfig", "Array", "isArray", "animation", "keys", "animateOnly", "host", "current", "node", "onFinishAnimation", "addEventListener", "removeEventListener", "transform", "transition", "map", "key", "override", "join", "process", "env", "NODE_ENV", "console", "info", "className"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/animations-css",
3
- "version": "1.119.3",
3
+ "version": "1.120.0",
4
4
  "source": "src/index.ts",
5
5
  "sideEffects": false,
6
6
  "license": "MIT",
@@ -26,14 +26,15 @@
26
26
  }
27
27
  },
28
28
  "dependencies": {
29
- "@tamagui/constants": "1.119.3",
30
- "@tamagui/cubic-bezier-animator": "1.119.3",
31
- "@tamagui/use-presence": "1.119.3",
32
- "@tamagui/web": "1.119.3"
29
+ "@tamagui/constants": "1.120.0",
30
+ "@tamagui/cubic-bezier-animator": "1.120.0",
31
+ "@tamagui/use-presence": "1.120.0",
32
+ "@tamagui/web": "1.120.0"
33
33
  },
34
34
  "devDependencies": {
35
- "@tamagui/build": "1.119.3",
36
- "react": "*"
35
+ "@tamagui/build": "1.120.0",
36
+ "react": "*",
37
+ "react-dom": "*"
37
38
  },
38
39
  "scripts": {
39
40
  "build": "tamagui-build",
@@ -48,6 +49,7 @@
48
49
  },
49
50
  "gitHead": "a49cc7ea6b93ba384e77a4880ae48ac4a5635c14",
50
51
  "peerDependencies": {
51
- "react": "*"
52
+ "react": "*",
53
+ "react-dom": "*"
52
54
  }
53
55
  }
@@ -1,8 +1,8 @@
1
- import React from 'react' // import { animate } from '@tamagui/cubic-bezier-animator'
2
1
  import { useIsomorphicLayoutEffect } from '@tamagui/constants'
2
+ import { ResetPresence, usePresence } from '@tamagui/use-presence'
3
3
  import type { AnimationDriver, UniversalAnimatedNumber } from '@tamagui/web'
4
4
  import { transformsToString } from '@tamagui/web'
5
- import { ResetPresence, usePresence } from '@tamagui/use-presence'
5
+ import React, { useState } from 'react' // import { animate } from '@tamagui/cubic-bezier-animator'
6
6
 
7
7
  export function createAnimations<A extends Object>(animations: A): AnimationDriver<A> {
8
8
  const reactionListeners = new WeakMap<any, Set<Function>>()
@@ -15,6 +15,14 @@ export function createAnimations<A extends Object>(animations: A): AnimationDriv
15
15
 
16
16
  useAnimatedNumber(initial): UniversalAnimatedNumber<Function> {
17
17
  const [val, setVal] = React.useState(initial)
18
+ const [onFinish, setOnFinish] = useState<Function | undefined>()
19
+
20
+ useIsomorphicLayoutEffect(() => {
21
+ if (onFinish) {
22
+ onFinish?.()
23
+ setOnFinish(undefined)
24
+ }
25
+ }, [onFinish])
18
26
 
19
27
  return {
20
28
  getInstance() {
@@ -25,12 +33,7 @@ export function createAnimations<A extends Object>(animations: A): AnimationDriv
25
33
  },
26
34
  setValue(next, config, onFinish) {
27
35
  setVal(next)
28
- const listeners = reactionListeners.get(setVal)
29
- if (listeners) {
30
- listeners.forEach((cb) => cb(next))
31
- }
32
- // TODO: this implementation of onFinish() is not correct
33
- onFinish?.()
36
+ setOnFinish(onFinish)
34
37
  },
35
38
  stop() {},
36
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createAnimations.d.ts","sourceRoot":"","sources":["../src/createAnimations.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAA2B,MAAM,cAAc,CAAA;AAI5E,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,UAAU,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAiHpF"}
1
+ {"version":3,"file":"createAnimations.d.ts","sourceRoot":"","sources":["../src/createAnimations.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAA2B,MAAM,cAAc,CAAA;AAI5E,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,UAAU,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAoHpF"}