react-native-screen-transitions 2.1.0 → 2.2.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.
@@ -52,6 +52,7 @@ function createTransitionAwareComponent(Wrapped, options = {}) {
52
52
  sharedBoundTag,
53
53
  styleId,
54
54
  onPress,
55
+ measureOnLayout,
55
56
  ...rest
56
57
  } = props;
57
58
  const animatedRef = (0, _reactNativeReanimated.useAnimatedRef)();
@@ -80,6 +81,14 @@ function createTransitionAwareComponent(Wrapped, options = {}) {
80
81
  handleLayout: handleLayout
81
82
  });
82
83
  }
84
+ const onLayoutHandler = (0, _reactNativeReanimated.runOnUI)(() => {
85
+ "worklet";
86
+
87
+ handleLayout();
88
+ if (measureOnLayout && sharedBoundTag) {
89
+ measureBounds();
90
+ }
91
+ });
83
92
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_boundCapture.BoundCapture, {
84
93
  sharedBoundTag: sharedBoundTag,
85
94
  measure: measureBounds,
@@ -88,7 +97,7 @@ function createTransitionAwareComponent(Wrapped, options = {}) {
88
97
  ref: animatedRef,
89
98
  style: [style, associatedStyles],
90
99
  onPress: onPress,
91
- onLayout: (0, _reactNativeReanimated.runOnUI)(handleLayout),
100
+ onLayout: onLayoutHandler,
92
101
  children: children
93
102
  })
94
103
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_useAssociatedStyle","_useBoundRegistry","_useScrollRegistry","_gestures","_keys","_boundCapture","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","createTransitionAwareComponent","Wrapped","options","isScrollable","AnimatedComponent","Animated","createAnimatedComponent","ScrollableInner","forwardRef","props","ref","nativeGesture","useGestureContext","scrollHandler","onContentSizeChange","onLayout","useScrollRegistry","onScroll","jsx","GestureDetector","gesture","children","scrollEventThrottle","Inner","style","sharedBoundTag","styleId","onPress","rest","animatedRef","useAnimatedRef","current","useKeys","associatedStyles","useAssociatedStyles","id","measureBounds","handleLayout","useBoundsRegistry","BoundCapture","measure","runOnUI","memo"],"sourceRoot":"../../../src","sources":["components/create-transition-aware-component.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_useAssociatedStyle","_useBoundRegistry","_useScrollRegistry","_gestures","_keys","_boundCapture","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","createTransitionAwareComponent","Wrapped","options","isScrollable","AnimatedComponent","Animated","createAnimatedComponent","ScrollableInner","forwardRef","props","ref","nativeGesture","useGestureContext","scrollHandler","onContentSizeChange","onLayout","useScrollRegistry","onScroll","jsx","GestureDetector","gesture","children","scrollEventThrottle","Inner","style","sharedBoundTag","styleId","onPress","measureOnLayout","rest","animatedRef","useAnimatedRef","current","useKeys","associatedStyles","useAssociatedStyles","id","measureBounds","handleLayout","useBoundsRegistry","onLayoutHandler","runOnUI","BoundCapture","measure","memo"],"sourceRoot":"../../../src","sources":["components/create-transition-aware-component.tsx"],"mappings":"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","ignoreList":[]}
@@ -55,18 +55,9 @@ const useBoundsRegistry = ({
55
55
  isMeasured.value = true;
56
56
  }
57
57
  }, [measureBounds, interpolatorProps, sharedBoundTag, previous?.route.key, isMeasured]);
58
- const measureOnTouchStart = (0, _react.useCallback)(() => {
59
- "worklet";
60
-
61
- if (sharedBoundTag) {
62
- _bounds.Bounds.setActiveBoundId(sharedBoundTag);
63
- (0, _reactNativeReanimated.measure)(animatedRef);
64
- }
65
- }, [sharedBoundTag, animatedRef]);
66
58
  return {
67
59
  measureBounds,
68
- handleLayout,
69
- measureOnTouchStart
60
+ handleLayout
70
61
  };
71
62
  };
72
63
  exports.useBoundsRegistry = useBoundsRegistry;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_keys","_bounds","_flattenStyles","_isBoundsEqual","_useScreenAnimation","useBoundsRegistry","sharedBoundTag","animatedRef","current","style","previous","useKeys","interpolatorProps","useScreenAnimation","isMeasured","useSharedValue","measureBounds","useCallback","measured","measure","key","route","isBoundsEqual","Bounds","setRouteActive","setBounds","flattenStyle","handleLayout","previousRouteKey","value","previousBounds","getBounds","hasPreviousBoundForTag","animating","measureOnTouchStart","setActiveBoundId","exports"],"sourceRoot":"../../../../src","sources":["hooks/bounds/use-bound-registry.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,sBAAA,GAAAD,OAAA;AAMA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,cAAA,GAAAL,OAAA;AACA,IAAAM,mBAAA,GAAAN,OAAA;AASO,MAAMO,iBAAiB,GAAGA,CAAC;EACjCC,cAAc;EACdC,WAAW;EACXC,OAAO;EACPC;AACuB,CAAC,KAAK;EAC7B,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,aAAO,EAAC,CAAC;EAC9B,MAAMC,iBAAiB,GAAG,IAAAC,sCAAkB,EAAC,CAAC;EAC9C,MAAMC,UAAU,GAAG,IAAAC,qCAAc,EAAC,KAAK,CAAC;EAExC,MAAMC,aAAa,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACvC,SAAS;;IACT,IAAI,CAACX,cAAc,EAAE;IACrB,MAAMY,QAAQ,GAAG,IAAAC,8BAAO,EAACZ,WAAW,CAAC;IACrC,IAAIW,QAAQ,EAAE;MACb,MAAME,GAAG,GAAGZ,OAAO,CAACa,KAAK,CAACD,GAAG;MAC7B,IAAI,IAAAE,4BAAa,EAAC;QAAEJ,QAAQ;QAAEE,GAAG;QAAEd;MAAe,CAAC,CAAC,EAAE;QACrDiB,cAAM,CAACC,cAAc,CAACJ,GAAG,EAAEd,cAAc,CAAC;QAC1C;MACD;MAEAiB,cAAM,CAACE,SAAS,CAACL,GAAG,EAAEd,cAAc,EAAEY,QAAQ,EAAE,IAAAQ,2BAAY,EAACjB,KAAK,CAAC,CAAC;MACpEc,cAAM,CAACC,cAAc,CAACJ,GAAG,EAAEd,cAAc,CAAC;IAC3C;EACD,CAAC,EAAE,CAACA,cAAc,EAAEC,WAAW,EAAEC,OAAO,CAACa,KAAK,CAACD,GAAG,EAAEX,KAAK,CAAC,CAAC;EAE3D,MAAMkB,YAAY,GAAG,IAAAV,kBAAW,EAAC,MAAM;IACtC,SAAS;;IACT,MAAMW,gBAAgB,GAAGlB,QAAQ,EAAEW,KAAK,CAACD,GAAG;IAC5C,IAAI,CAACd,cAAc,IAAIQ,UAAU,CAACe,KAAK,IAAI,CAACD,gBAAgB,EAAE;MAC7D;IACD;IAEA,MAAME,cAAc,GAAGP,cAAM,CAACQ,SAAS,CAACH,gBAAgB,CAAC;IACzD,MAAMI,sBAAsB,GAAGF,cAAc,CAACxB,cAAc,CAAC;IAE7D,IAAIM,iBAAiB,CAACiB,KAAK,CAACrB,OAAO,CAACyB,SAAS,IAAID,sBAAsB,EAAE;MACxEhB,aAAa,CAAC,CAAC;MACfF,UAAU,CAACe,KAAK,GAAG,IAAI;IACxB;EACD,CAAC,EAAE,CACFb,aAAa,EACbJ,iBAAiB,EACjBN,cAAc,EACdI,QAAQ,EAAEW,KAAK,CAACD,GAAG,EACnBN,UAAU,CACV,CAAC;EAEF,MAAMoB,mBAAmB,GAAG,IAAAjB,kBAAW,EAAC,MAAM;IAC7C,SAAS;;IACT,IAAIX,cAAc,EAAE;MACnBiB,cAAM,CAACY,gBAAgB,CAAC7B,cAAc,CAAC;MACvC,IAAAa,8BAAO,EAACZ,WAAW,CAAC;IACrB;EACD,CAAC,EAAE,CAACD,cAAc,EAAEC,WAAW,CAAC,CAAC;EAEjC,OAAO;IACNS,aAAa;IACbW,YAAY;IACZO;EACD,CAAC;AACF,CAAC;AAACE,OAAA,CAAA/B,iBAAA,GAAAA,iBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_keys","_bounds","_flattenStyles","_isBoundsEqual","_useScreenAnimation","useBoundsRegistry","sharedBoundTag","animatedRef","current","style","previous","useKeys","interpolatorProps","useScreenAnimation","isMeasured","useSharedValue","measureBounds","useCallback","measured","measure","key","route","isBoundsEqual","Bounds","setRouteActive","setBounds","flattenStyle","handleLayout","previousRouteKey","value","previousBounds","getBounds","hasPreviousBoundForTag","animating","exports"],"sourceRoot":"../../../../src","sources":["hooks/bounds/use-bound-registry.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,sBAAA,GAAAD,OAAA;AAMA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,cAAA,GAAAL,OAAA;AACA,IAAAM,mBAAA,GAAAN,OAAA;AASO,MAAMO,iBAAiB,GAAGA,CAAC;EACjCC,cAAc;EACdC,WAAW;EACXC,OAAO;EACPC;AACuB,CAAC,KAAK;EAC7B,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,aAAO,EAAC,CAAC;EAC9B,MAAMC,iBAAiB,GAAG,IAAAC,sCAAkB,EAAC,CAAC;EAC9C,MAAMC,UAAU,GAAG,IAAAC,qCAAc,EAAC,KAAK,CAAC;EAExC,MAAMC,aAAa,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACvC,SAAS;;IACT,IAAI,CAACX,cAAc,EAAE;IACrB,MAAMY,QAAQ,GAAG,IAAAC,8BAAO,EAACZ,WAAW,CAAC;IACrC,IAAIW,QAAQ,EAAE;MACb,MAAME,GAAG,GAAGZ,OAAO,CAACa,KAAK,CAACD,GAAG;MAC7B,IAAI,IAAAE,4BAAa,EAAC;QAAEJ,QAAQ;QAAEE,GAAG;QAAEd;MAAe,CAAC,CAAC,EAAE;QACrDiB,cAAM,CAACC,cAAc,CAACJ,GAAG,EAAEd,cAAc,CAAC;QAC1C;MACD;MAEAiB,cAAM,CAACE,SAAS,CAACL,GAAG,EAAEd,cAAc,EAAEY,QAAQ,EAAE,IAAAQ,2BAAY,EAACjB,KAAK,CAAC,CAAC;MACpEc,cAAM,CAACC,cAAc,CAACJ,GAAG,EAAEd,cAAc,CAAC;IAC3C;EACD,CAAC,EAAE,CAACA,cAAc,EAAEC,WAAW,EAAEC,OAAO,CAACa,KAAK,CAACD,GAAG,EAAEX,KAAK,CAAC,CAAC;EAE3D,MAAMkB,YAAY,GAAG,IAAAV,kBAAW,EAAC,MAAM;IACtC,SAAS;;IACT,MAAMW,gBAAgB,GAAGlB,QAAQ,EAAEW,KAAK,CAACD,GAAG;IAE5C,IAAI,CAACd,cAAc,IAAIQ,UAAU,CAACe,KAAK,IAAI,CAACD,gBAAgB,EAAE;MAC7D;IACD;IAEA,MAAME,cAAc,GAAGP,cAAM,CAACQ,SAAS,CAACH,gBAAgB,CAAC;IACzD,MAAMI,sBAAsB,GAAGF,cAAc,CAACxB,cAAc,CAAC;IAE7D,IAAIM,iBAAiB,CAACiB,KAAK,CAACrB,OAAO,CAACyB,SAAS,IAAID,sBAAsB,EAAE;MACxEhB,aAAa,CAAC,CAAC;MACfF,UAAU,CAACe,KAAK,GAAG,IAAI;IACxB;EACD,CAAC,EAAE,CACFb,aAAa,EACbJ,iBAAiB,EACjBN,cAAc,EACdI,QAAQ,EAAEW,KAAK,CAACD,GAAG,EACnBN,UAAU,CACV,CAAC;EAEF,OAAO;IACNE,aAAa;IACbW;EACD,CAAC;AACF,CAAC;AAACO,OAAA,CAAA7B,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -47,6 +47,7 @@ export function createTransitionAwareComponent(Wrapped, options = {}) {
47
47
  sharedBoundTag,
48
48
  styleId,
49
49
  onPress,
50
+ measureOnLayout,
50
51
  ...rest
51
52
  } = props;
52
53
  const animatedRef = useAnimatedRef();
@@ -75,6 +76,14 @@ export function createTransitionAwareComponent(Wrapped, options = {}) {
75
76
  handleLayout: handleLayout
76
77
  });
77
78
  }
79
+ const onLayoutHandler = runOnUI(() => {
80
+ "worklet";
81
+
82
+ handleLayout();
83
+ if (measureOnLayout && sharedBoundTag) {
84
+ measureBounds();
85
+ }
86
+ });
78
87
  return /*#__PURE__*/_jsx(BoundCapture, {
79
88
  sharedBoundTag: sharedBoundTag,
80
89
  measure: measureBounds,
@@ -83,7 +92,7 @@ export function createTransitionAwareComponent(Wrapped, options = {}) {
83
92
  ref: animatedRef,
84
93
  style: [style, associatedStyles],
85
94
  onPress: onPress,
86
- onLayout: runOnUI(handleLayout),
95
+ onLayout: onLayoutHandler,
87
96
  children: children
88
97
  })
89
98
  });
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","memo","GestureDetector","Animated","runOnUI","useAnimatedRef","useAssociatedStyles","useBoundsRegistry","useScrollRegistry","useGestureContext","useKeys","BoundCapture","jsx","_jsx","createTransitionAwareComponent","Wrapped","options","isScrollable","AnimatedComponent","createAnimatedComponent","ScrollableInner","props","ref","nativeGesture","scrollHandler","onContentSizeChange","onLayout","onScroll","gesture","children","scrollEventThrottle","Inner","style","sharedBoundTag","styleId","onPress","rest","animatedRef","current","associatedStyles","id","measureBounds","handleLayout","measure"],"sourceRoot":"../../../src","sources":["components/create-transition-aware-component.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","memo","GestureDetector","Animated","runOnUI","useAnimatedRef","useAssociatedStyles","useBoundsRegistry","useScrollRegistry","useGestureContext","useKeys","BoundCapture","jsx","_jsx","createTransitionAwareComponent","Wrapped","options","isScrollable","AnimatedComponent","createAnimatedComponent","ScrollableInner","props","ref","nativeGesture","scrollHandler","onContentSizeChange","onLayout","onScroll","gesture","children","scrollEventThrottle","Inner","style","sharedBoundTag","styleId","onPress","measureOnLayout","rest","animatedRef","current","associatedStyles","id","measureBounds","handleLayout","onLayoutHandler","measure"],"sourceRoot":"../../../src","sources":["components/create-transition-aware-component.tsx"],"mappings":"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","ignoreList":[]}
@@ -51,18 +51,9 @@ export const useBoundsRegistry = ({
51
51
  isMeasured.value = true;
52
52
  }
53
53
  }, [measureBounds, interpolatorProps, sharedBoundTag, previous?.route.key, isMeasured]);
54
- const measureOnTouchStart = useCallback(() => {
55
- "worklet";
56
-
57
- if (sharedBoundTag) {
58
- Bounds.setActiveBoundId(sharedBoundTag);
59
- measure(animatedRef);
60
- }
61
- }, [sharedBoundTag, animatedRef]);
62
54
  return {
63
55
  measureBounds,
64
- handleLayout,
65
- measureOnTouchStart
56
+ handleLayout
66
57
  };
67
58
  };
68
59
  //# sourceMappingURL=use-bound-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","measure","useSharedValue","useKeys","Bounds","flattenStyle","isBoundsEqual","useScreenAnimation","useBoundsRegistry","sharedBoundTag","animatedRef","current","style","previous","interpolatorProps","isMeasured","measureBounds","measured","key","route","setRouteActive","setBounds","handleLayout","previousRouteKey","value","previousBounds","getBounds","hasPreviousBoundForTag","animating","measureOnTouchStart","setActiveBoundId"],"sourceRoot":"../../../../src","sources":["hooks/bounds/use-bound-registry.tsx"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AAEnC,SAECC,OAAO,EAEPC,cAAc,QACR,yBAAyB;AAChC,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,YAAY,QAAQ,0CAA0C;AACvE,SAASC,aAAa,QAAQ,2CAA2C;AACzE,SAASC,kBAAkB,QAAQ,mCAAmC;AAStE,OAAO,MAAMC,iBAAiB,GAAGA,CAAC;EACjCC,cAAc;EACdC,WAAW;EACXC,OAAO;EACPC;AACuB,CAAC,KAAK;EAC7B,MAAM;IAAEC;EAAS,CAAC,GAAGV,OAAO,CAAC,CAAC;EAC9B,MAAMW,iBAAiB,GAAGP,kBAAkB,CAAC,CAAC;EAC9C,MAAMQ,UAAU,GAAGb,cAAc,CAAC,KAAK,CAAC;EAExC,MAAMc,aAAa,GAAGhB,WAAW,CAAC,MAAM;IACvC,SAAS;;IACT,IAAI,CAACS,cAAc,EAAE;IACrB,MAAMQ,QAAQ,GAAGhB,OAAO,CAACS,WAAW,CAAC;IACrC,IAAIO,QAAQ,EAAE;MACb,MAAMC,GAAG,GAAGP,OAAO,CAACQ,KAAK,CAACD,GAAG;MAC7B,IAAIZ,aAAa,CAAC;QAAEW,QAAQ;QAAEC,GAAG;QAAET;MAAe,CAAC,CAAC,EAAE;QACrDL,MAAM,CAACgB,cAAc,CAACF,GAAG,EAAET,cAAc,CAAC;QAC1C;MACD;MAEAL,MAAM,CAACiB,SAAS,CAACH,GAAG,EAAET,cAAc,EAAEQ,QAAQ,EAAEZ,YAAY,CAACO,KAAK,CAAC,CAAC;MACpER,MAAM,CAACgB,cAAc,CAACF,GAAG,EAAET,cAAc,CAAC;IAC3C;EACD,CAAC,EAAE,CAACA,cAAc,EAAEC,WAAW,EAAEC,OAAO,CAACQ,KAAK,CAACD,GAAG,EAAEN,KAAK,CAAC,CAAC;EAE3D,MAAMU,YAAY,GAAGtB,WAAW,CAAC,MAAM;IACtC,SAAS;;IACT,MAAMuB,gBAAgB,GAAGV,QAAQ,EAAEM,KAAK,CAACD,GAAG;IAC5C,IAAI,CAACT,cAAc,IAAIM,UAAU,CAACS,KAAK,IAAI,CAACD,gBAAgB,EAAE;MAC7D;IACD;IAEA,MAAME,cAAc,GAAGrB,MAAM,CAACsB,SAAS,CAACH,gBAAgB,CAAC;IACzD,MAAMI,sBAAsB,GAAGF,cAAc,CAAChB,cAAc,CAAC;IAE7D,IAAIK,iBAAiB,CAACU,KAAK,CAACb,OAAO,CAACiB,SAAS,IAAID,sBAAsB,EAAE;MACxEX,aAAa,CAAC,CAAC;MACfD,UAAU,CAACS,KAAK,GAAG,IAAI;IACxB;EACD,CAAC,EAAE,CACFR,aAAa,EACbF,iBAAiB,EACjBL,cAAc,EACdI,QAAQ,EAAEM,KAAK,CAACD,GAAG,EACnBH,UAAU,CACV,CAAC;EAEF,MAAMc,mBAAmB,GAAG7B,WAAW,CAAC,MAAM;IAC7C,SAAS;;IACT,IAAIS,cAAc,EAAE;MACnBL,MAAM,CAAC0B,gBAAgB,CAACrB,cAAc,CAAC;MACvCR,OAAO,CAACS,WAAW,CAAC;IACrB;EACD,CAAC,EAAE,CAACD,cAAc,EAAEC,WAAW,CAAC,CAAC;EAEjC,OAAO;IACNM,aAAa;IACbM,YAAY;IACZO;EACD,CAAC;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","measure","useSharedValue","useKeys","Bounds","flattenStyle","isBoundsEqual","useScreenAnimation","useBoundsRegistry","sharedBoundTag","animatedRef","current","style","previous","interpolatorProps","isMeasured","measureBounds","measured","key","route","setRouteActive","setBounds","handleLayout","previousRouteKey","value","previousBounds","getBounds","hasPreviousBoundForTag","animating"],"sourceRoot":"../../../../src","sources":["hooks/bounds/use-bound-registry.tsx"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AAEnC,SAECC,OAAO,EAEPC,cAAc,QACR,yBAAyB;AAChC,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,YAAY,QAAQ,0CAA0C;AACvE,SAASC,aAAa,QAAQ,2CAA2C;AACzE,SAASC,kBAAkB,QAAQ,mCAAmC;AAStE,OAAO,MAAMC,iBAAiB,GAAGA,CAAC;EACjCC,cAAc;EACdC,WAAW;EACXC,OAAO;EACPC;AACuB,CAAC,KAAK;EAC7B,MAAM;IAAEC;EAAS,CAAC,GAAGV,OAAO,CAAC,CAAC;EAC9B,MAAMW,iBAAiB,GAAGP,kBAAkB,CAAC,CAAC;EAC9C,MAAMQ,UAAU,GAAGb,cAAc,CAAC,KAAK,CAAC;EAExC,MAAMc,aAAa,GAAGhB,WAAW,CAAC,MAAM;IACvC,SAAS;;IACT,IAAI,CAACS,cAAc,EAAE;IACrB,MAAMQ,QAAQ,GAAGhB,OAAO,CAACS,WAAW,CAAC;IACrC,IAAIO,QAAQ,EAAE;MACb,MAAMC,GAAG,GAAGP,OAAO,CAACQ,KAAK,CAACD,GAAG;MAC7B,IAAIZ,aAAa,CAAC;QAAEW,QAAQ;QAAEC,GAAG;QAAET;MAAe,CAAC,CAAC,EAAE;QACrDL,MAAM,CAACgB,cAAc,CAACF,GAAG,EAAET,cAAc,CAAC;QAC1C;MACD;MAEAL,MAAM,CAACiB,SAAS,CAACH,GAAG,EAAET,cAAc,EAAEQ,QAAQ,EAAEZ,YAAY,CAACO,KAAK,CAAC,CAAC;MACpER,MAAM,CAACgB,cAAc,CAACF,GAAG,EAAET,cAAc,CAAC;IAC3C;EACD,CAAC,EAAE,CAACA,cAAc,EAAEC,WAAW,EAAEC,OAAO,CAACQ,KAAK,CAACD,GAAG,EAAEN,KAAK,CAAC,CAAC;EAE3D,MAAMU,YAAY,GAAGtB,WAAW,CAAC,MAAM;IACtC,SAAS;;IACT,MAAMuB,gBAAgB,GAAGV,QAAQ,EAAEM,KAAK,CAACD,GAAG;IAE5C,IAAI,CAACT,cAAc,IAAIM,UAAU,CAACS,KAAK,IAAI,CAACD,gBAAgB,EAAE;MAC7D;IACD;IAEA,MAAME,cAAc,GAAGrB,MAAM,CAACsB,SAAS,CAACH,gBAAgB,CAAC;IACzD,MAAMI,sBAAsB,GAAGF,cAAc,CAAChB,cAAc,CAAC;IAE7D,IAAIK,iBAAiB,CAACU,KAAK,CAACb,OAAO,CAACiB,SAAS,IAAID,sBAAsB,EAAE;MACxEX,aAAa,CAAC,CAAC;MACfD,UAAU,CAACS,KAAK,GAAG,IAAI;IACxB;EACD,CAAC,EAAE,CACFR,aAAa,EACbF,iBAAiB,EACjBL,cAAc,EACdI,QAAQ,EAAEM,KAAK,CAACD,GAAG,EACnBH,UAAU,CACV,CAAC;EAEF,OAAO;IACNC,aAAa;IACbM;EACD,CAAC;AACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"create-transition-aware-component.d.ts","sourceRoot":"","sources":["../../../src/components/create-transition-aware-component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,OAAO,CAAC;AAS7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAI1D,UAAU,qCAAqC;IAC9C,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,8BAA8B,CAAC,CAAC,SAAS,MAAM,EAC9D,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE,qCAA0C,GA8E7B,KAAK,CAAC,mBAAmB,CAC9C,KAAK,CAAC,yBAAyB,CAC9B,oBAAoB,CAAC,CAAC,CAAC,GACtB,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,OAAO,CAAC,CAAC,CACxD,CACD,CACD"}
1
+ {"version":3,"file":"create-transition-aware-component.d.ts","sourceRoot":"","sources":["../../../src/components/create-transition-aware-component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,OAAO,CAAC;AAS7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAI1D,UAAU,qCAAqC;IAC9C,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,8BAA8B,CAAC,CAAC,SAAS,MAAM,EAC9D,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EACzB,OAAO,GAAE,qCAA0C,GA6F7B,KAAK,CAAC,mBAAmB,CAC9C,KAAK,CAAC,yBAAyB,CAC9B,oBAAoB,CAAC,CAAC,CAAC,GACtB,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,OAAO,CAAC,CAAC,CACxD,CACD,CACD"}
@@ -13,7 +13,6 @@ interface BoundMeasurerHookProps {
13
13
  export declare const useBoundsRegistry: ({ sharedBoundTag, animatedRef, current, style, }: BoundMeasurerHookProps) => {
14
14
  measureBounds: () => void;
15
15
  handleLayout: () => void;
16
- measureOnTouchStart: () => void;
17
16
  };
18
17
  export {};
19
18
  //# sourceMappingURL=use-bound-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-bound-registry.d.ts","sourceRoot":"","sources":["../../../../src/hooks/bounds/use-bound-registry.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EACN,KAAK,WAAW,EAEhB,KAAK,UAAU,EAEf,MAAM,yBAAyB,CAAC;AAOjC,UAAU,sBAAsB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,EAAE;QAAE,KAAK,EAAE;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACpC,KAAK,EAAE,UAAU,CAAC;CAClB;AAED,eAAO,MAAM,iBAAiB,GAAI,kDAK/B,sBAAsB;;;;CAwDxB,CAAC"}
1
+ {"version":3,"file":"use-bound-registry.d.ts","sourceRoot":"","sources":["../../../../src/hooks/bounds/use-bound-registry.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EACN,KAAK,WAAW,EAEhB,KAAK,UAAU,EAEf,MAAM,yBAAyB,CAAC;AAOjC,UAAU,sBAAsB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,EAAE;QAAE,KAAK,EAAE;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACpC,KAAK,EAAE,UAAU,CAAC;CAClB;AAED,eAAO,MAAM,iBAAiB,GAAI,kDAK/B,sBAAsB;;;CAgDxB,CAAC"}
@@ -209,6 +209,7 @@ declare const _default: {
209
209
  } & {
210
210
  styleId?: string;
211
211
  sharedBoundTag?: string;
212
+ measureOnLayout?: boolean;
212
213
  } & import("react").RefAttributes<never>>>;
213
214
  Pressable: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<{
214
215
  id?: string | import("react-native-reanimated").SharedValue<string | undefined> | undefined;
@@ -457,6 +458,7 @@ declare const _default: {
457
458
  } & {
458
459
  styleId?: string;
459
460
  sharedBoundTag?: string;
461
+ measureOnLayout?: boolean;
460
462
  } & import("react").RefAttributes<View | import("react").Component<import("react-native").PressableProps & import("react").RefAttributes<View>, any, any>>>>;
461
463
  ScrollView: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<{
462
464
  id?: string | import("react-native-reanimated").SharedValue<string | undefined> | undefined;
@@ -793,6 +795,7 @@ declare const _default: {
793
795
  } & {
794
796
  styleId?: string;
795
797
  sharedBoundTag?: string;
798
+ measureOnLayout?: boolean;
796
799
  } & import("react").RefAttributes<never>>>;
797
800
  FlatList: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<{
798
801
  id?: string | import("react-native-reanimated").SharedValue<string | undefined> | undefined;
@@ -1263,6 +1266,7 @@ declare const _default: {
1263
1266
  } & {
1264
1267
  styleId?: string;
1265
1268
  sharedBoundTag?: string;
1269
+ measureOnLayout?: boolean;
1266
1270
  } & import("react").RefAttributes<never>>>;
1267
1271
  MaskedView: typeof MaskedView;
1268
1272
  presets: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,IAAI,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,gDAAgD,CAAC;AAChG,OAAO,UAAU,MAAM,uCAAuC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAgC4iE,CAAC;;;;;;;;;;;AA7B5mE,wBAaE;AAEF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,mEAAmE,CAAC;AAE/G,YAAY,EACX,0BAA0B,EAC1B,sBAAsB,EACtB,2BAA2B,EAC3B,6BAA6B,EAC7B,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,GACtB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,IAAI,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,gDAAgD,CAAC;AAChG,OAAO,UAAU,MAAM,uCAAuC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAgC4iE,CAAC;;;;;;;;;;;AA7B5mE,wBAaE;AAEF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,mEAAmE,CAAC;AAE/G,YAAY,EACX,0BAA0B,EAC1B,sBAAsB,EACtB,2BAA2B,EAC3B,6BAA6B,EAC7B,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,GACtB,MAAM,mBAAmB,CAAC"}
@@ -39,6 +39,14 @@ export type TransitionAwareProps<T extends object> = AnimatedProps<T> & {
39
39
  * </Transition.View>
40
40
  */
41
41
  sharedBoundTag?: string;
42
+ /**
43
+ * Eagerly measure this component on layout and store the result in the
44
+ * Bounds registry. Useful for nested shared elements that may not receive
45
+ * the press event but still need up-to-date measurements at navigation time.
46
+ *
47
+ * Only has an effect when used together with `sharedBoundTag`.
48
+ */
49
+ measureOnLayout?: boolean;
42
50
  };
43
51
  export type TransitionConfig = {
44
52
  open: TransitionSpec;
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/types/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1D,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,GAAG;IACvE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;;;;;;;;;OAcG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,cAAc,CAAC;CACtB,CAAC"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/types/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1D,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,GAAG;IACvE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;;;;;;;;;OAcG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,cAAc,CAAC;CACtB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-screen-transitions",
3
- "version": "2.1.0",
3
+ "version": "2.2.0",
4
4
  "description": "Easy screen transitions for React Native and Expo",
5
5
  "author": "Ed",
6
6
  "license": "MIT",
@@ -65,5 +65,5 @@
65
65
  ]
66
66
  ]
67
67
  },
68
- "gitHead": "92afaa07f6b9c279851d6aef805ecbfefdbcc4df"
68
+ "gitHead": "ea83a2b1bc369610cde35850de314c43122ba60c"
69
69
  }
@@ -53,8 +53,15 @@ export function createTransitionAwareComponent<P extends object>(
53
53
  React.ComponentRef<typeof AnimatedComponent>,
54
54
  TransitionAwareProps<P>
55
55
  >((props, ref) => {
56
- const { children, style, sharedBoundTag, styleId, onPress, ...rest } =
57
- props as Any;
56
+ const {
57
+ children,
58
+ style,
59
+ sharedBoundTag,
60
+ styleId,
61
+ onPress,
62
+ measureOnLayout,
63
+ ...rest
64
+ } = props as Any;
58
65
 
59
66
  const animatedRef = useAnimatedRef<View>();
60
67
  const { current } = useKeys();
@@ -81,6 +88,14 @@ export function createTransitionAwareComponent<P extends object>(
81
88
  );
82
89
  }
83
90
 
91
+ const onLayoutHandler = runOnUI(() => {
92
+ "worklet";
93
+ handleLayout();
94
+ if (measureOnLayout && sharedBoundTag) {
95
+ measureBounds();
96
+ }
97
+ });
98
+
84
99
  return (
85
100
  <BoundCapture sharedBoundTag={sharedBoundTag} measure={measureBounds}>
86
101
  <AnimatedComponent
@@ -88,7 +103,7 @@ export function createTransitionAwareComponent<P extends object>(
88
103
  ref={animatedRef}
89
104
  style={[style, associatedStyles]}
90
105
  onPress={onPress}
91
- onLayout={runOnUI(handleLayout)}
106
+ onLayout={onLayoutHandler}
92
107
  >
93
108
  {children}
94
109
  </AnimatedComponent>
@@ -48,6 +48,7 @@ export const useBoundsRegistry = ({
48
48
  const handleLayout = useCallback(() => {
49
49
  "worklet";
50
50
  const previousRouteKey = previous?.route.key;
51
+
51
52
  if (!sharedBoundTag || isMeasured.value || !previousRouteKey) {
52
53
  return;
53
54
  }
@@ -67,17 +68,8 @@ export const useBoundsRegistry = ({
67
68
  isMeasured,
68
69
  ]);
69
70
 
70
- const measureOnTouchStart = useCallback(() => {
71
- "worklet";
72
- if (sharedBoundTag) {
73
- Bounds.setActiveBoundId(sharedBoundTag);
74
- measure(animatedRef);
75
- }
76
- }, [sharedBoundTag, animatedRef]);
77
-
78
71
  return {
79
72
  measureBounds,
80
73
  handleLayout,
81
- measureOnTouchStart,
82
74
  };
83
75
  };
package/src/types/core.ts CHANGED
@@ -42,6 +42,15 @@ export type TransitionAwareProps<T extends object> = AnimatedProps<T> & {
42
42
  * </Transition.View>
43
43
  */
44
44
  sharedBoundTag?: string;
45
+
46
+ /**
47
+ * Eagerly measure this component on layout and store the result in the
48
+ * Bounds registry. Useful for nested shared elements that may not receive
49
+ * the press event but still need up-to-date measurements at navigation time.
50
+ *
51
+ * Only has an effect when used together with `sharedBoundTag`.
52
+ */
53
+ measureOnLayout?: boolean;
45
54
  };
46
55
 
47
56
  export type TransitionConfig = {