react-native-morph-card 0.2.1 → 0.2.3

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 (32) hide show
  1. package/android/src/main/java/com/melivalesca/morphcard/MorphCardSourceManager.kt +4 -0
  2. package/android/src/main/java/com/melivalesca/morphcard/MorphCardSourceView.kt +4 -2
  3. package/android/src/main/java/com/melivalesca/morphcard/MorphCardTargetManager.kt +4 -0
  4. package/android/src/main/java/com/melivalesca/morphcard/MorphCardTargetView.kt +1 -0
  5. package/ios/Fabric/RNCMorphCardSourceComponentView.mm +32 -20
  6. package/ios/Fabric/RNCMorphCardTargetComponentView.h +1 -0
  7. package/ios/Fabric/RNCMorphCardTargetComponentView.mm +1 -0
  8. package/lib/commonjs/MorphCardSource.js +2 -0
  9. package/lib/commonjs/MorphCardSource.js.map +1 -1
  10. package/lib/commonjs/MorphCardTarget.js +2 -0
  11. package/lib/commonjs/MorphCardTarget.js.map +1 -1
  12. package/lib/commonjs/specs/NativeMorphCardSource.js.map +1 -1
  13. package/lib/commonjs/specs/NativeMorphCardTarget.js.map +1 -1
  14. package/lib/module/MorphCardSource.js +2 -0
  15. package/lib/module/MorphCardSource.js.map +1 -1
  16. package/lib/module/MorphCardTarget.js +2 -0
  17. package/lib/module/MorphCardTarget.js.map +1 -1
  18. package/lib/module/specs/NativeMorphCardSource.js.map +1 -1
  19. package/lib/module/specs/NativeMorphCardTarget.js.map +1 -1
  20. package/lib/typescript/src/MorphCardSource.d.ts +2 -1
  21. package/lib/typescript/src/MorphCardSource.d.ts.map +1 -1
  22. package/lib/typescript/src/MorphCardTarget.d.ts +3 -1
  23. package/lib/typescript/src/MorphCardTarget.d.ts.map +1 -1
  24. package/lib/typescript/src/specs/NativeMorphCardSource.d.ts +1 -0
  25. package/lib/typescript/src/specs/NativeMorphCardSource.d.ts.map +1 -1
  26. package/lib/typescript/src/specs/NativeMorphCardTarget.d.ts +2 -0
  27. package/lib/typescript/src/specs/NativeMorphCardTarget.d.ts.map +1 -1
  28. package/package.json +1 -1
  29. package/src/MorphCardSource.tsx +3 -1
  30. package/src/MorphCardTarget.tsx +5 -0
  31. package/src/specs/NativeMorphCardSource.ts +1 -0
  32. package/src/specs/NativeMorphCardTarget.ts +3 -0
@@ -26,6 +26,10 @@ class MorphCardSourceManager :
26
26
  view.duration = value
27
27
  }
28
28
 
29
+ override fun setExpandDuration(view: MorphCardSourceView, value: Double) {
30
+ view.expandDuration = value
31
+ }
32
+
29
33
  override fun setScaleMode(view: MorphCardSourceView, value: String?) {
30
34
  view.scaleMode = value ?: "aspectFill"
31
35
  }
@@ -32,6 +32,7 @@ class MorphCardSourceView(context: Context) : ReactViewGroup(context) {
32
32
 
33
33
  // ── Props (all in dp) ──
34
34
  var duration: Double = 500.0
35
+ var expandDuration: Double = 0.0
35
36
  var scaleMode: String = "aspectFill"
36
37
  var borderRadiusDp: Float = 0f
37
38
 
@@ -553,7 +554,7 @@ class MorphCardSourceView(context: Context) : ReactViewGroup(context) {
553
554
  Log.d(TAG, "animateExpand: target=[${targetLeft},${targetTop},${targetWidthPx}x${targetHeightPx}] cornerR=$targetCornerRadiusPx")
554
555
  Log.d(TAG, "animateExpand: pendingTarget w=${pendingTargetWidth} h=${pendingTargetHeight} br=${pendingTargetBorderRadius}")
555
556
 
556
- val dur = duration.toLong()
557
+ val dur = (if (expandDuration > 0) expandDuration else duration).toLong()
557
558
  // Find the card wrapper inside the full-screen overlay
558
559
  val cardWrapper = wrapper.findViewWithTag<FrameLayout>("morphCardWrapper") ?: wrapper
559
560
  val content = if (cardWrapper.childCount > 0) cardWrapper.getChildAt(0) else null
@@ -749,7 +750,8 @@ class MorphCardSourceView(context: Context) : ReactViewGroup(context) {
749
750
  }
750
751
 
751
752
  val d = density
752
- val dur = duration.toLong()
753
+ val targetCollapseDur = (targetView as? MorphCardTargetView)?.collapseDuration ?: 0.0
754
+ val dur = (if (targetCollapseDur > 0) targetCollapseDur else duration).toLong()
753
755
 
754
756
  // Create DecorView overlay for collapse animation.
755
757
  // Get snapshot from MorphCardTargetView if available, otherwise recapture.
@@ -26,6 +26,10 @@ class MorphCardTargetManager :
26
26
  // Duration is managed by the source view
27
27
  }
28
28
 
29
+ override fun setCollapseDuration(view: MorphCardTargetView, value: Double) {
30
+ view.collapseDuration = value
31
+ }
32
+
29
33
  override fun setSourceTag(view: MorphCardTargetView, value: Int) {
30
34
  view.sourceTag = value
31
35
  }
@@ -20,6 +20,7 @@ class MorphCardTargetView(context: Context) : ReactViewGroup(context) {
20
20
  var targetWidth: Float = 0f
21
21
  var targetHeight: Float = 0f
22
22
  var targetBorderRadius: Float = -1f
23
+ var collapseDuration: Double = 0.0
23
24
  var sourceTag: Int = 0
24
25
 
25
26
  // Snapshot drawn via canvas — Fabric can't remove it
@@ -74,6 +74,7 @@ static CGRect imageFrameForScaleMode(UIViewContentMode mode,
74
74
 
75
75
  @implementation RNCMorphCardSourceComponentView {
76
76
  CGFloat _duration;
77
+ CGFloat _expandDuration;
77
78
  UIViewContentMode _scaleMode;
78
79
  BOOL _isExpanded;
79
80
  BOOL _hasWrapper;
@@ -105,6 +106,7 @@ static CGRect imageFrameForScaleMode(UIViewContentMode mode,
105
106
  const auto &newProps =
106
107
  *std::static_pointer_cast<const RNCMorphCardSourceProps>(props);
107
108
  _duration = newProps.duration > 0 ? newProps.duration : 500.0;
109
+ _expandDuration = newProps.expandDuration > 0 ? newProps.expandDuration : 0;
108
110
  auto sm = newProps.scaleMode;
109
111
  if (sm == RNCMorphCardSourceScaleMode::AspectFit) {
110
112
  _scaleMode = UIViewContentModeScaleAspectFit;
@@ -202,7 +204,7 @@ static CGRect imageFrameForScaleMode(UIViewContentMode mode,
202
204
 
203
205
  CGFloat targetCornerRadius = tbr >= 0 ? tbr : _cardCornerRadius;
204
206
 
205
- NSTimeInterval dur = _duration / 1000.0;
207
+ NSTimeInterval dur = (_expandDuration > 0 ? _expandDuration : _duration) / 1000.0;
206
208
 
207
209
  if (_hasWrapper) {
208
210
  // ══ WRAPPER MODE ══
@@ -389,7 +391,11 @@ static CGRect imageFrameForScaleMode(UIViewContentMode mode,
389
391
  [(RNCMorphCardTargetComponentView *)targetView clearSnapshot];
390
392
  }
391
393
 
392
- NSTimeInterval dur = _duration / 1000.0;
394
+ CGFloat collapseDur = 0;
395
+ if (targetView && [targetView isKindOfClass:[RNCMorphCardTargetComponentView class]]) {
396
+ collapseDur = ((RNCMorphCardTargetComponentView *)targetView).collapseDuration;
397
+ }
398
+ NSTimeInterval dur = (collapseDur > 0 ? collapseDur : _duration) / 1000.0;
393
399
 
394
400
  if (_hasWrapper) {
395
401
  // ══ WRAPPER MODE COLLAPSE ══
@@ -442,22 +448,25 @@ static CGRect imageFrameForScaleMode(UIViewContentMode mode,
442
448
 
443
449
  UIView *content = wrapper.subviews.firstObject;
444
450
 
451
+ UICubicTimingParameters *timing = [[UICubicTimingParameters alloc]
452
+ initWithControlPoint1:CGPointMake(0.25, 1.0)
453
+ controlPoint2:CGPointMake(0.5, 1.0)];
445
454
  UIViewPropertyAnimator *animator = [[UIViewPropertyAnimator alloc]
446
455
  initWithDuration:dur
447
- dampingRatio:0.85
448
- animations:^{
449
- wrapper.frame = self->_cardFrame;
450
- wrapper.layer.cornerRadius = self->_cardCornerRadius;
451
- if (content) {
452
- content.frame = (CGRect){CGPointZero, content.frame.size};
453
- }
454
- }];
456
+ timingParameters:timing];
457
+ [animator addAnimations:^{
458
+ wrapper.frame = self->_cardFrame;
459
+ wrapper.layer.cornerRadius = self->_cardCornerRadius;
460
+ if (content) {
461
+ content.frame = (CGRect){CGPointZero, content.frame.size};
462
+ }
463
+ }];
455
464
 
456
- // Fade out target screen concurrently at 15% (mirrors expand's fade-in)
465
+ // Fade out target screen concurrently at 15%, over 65% of duration
457
466
  dispatch_after(
458
467
  dispatch_time(DISPATCH_TIME_NOW, (int64_t)(dur * 0.15 * NSEC_PER_SEC)),
459
468
  dispatch_get_main_queue(), ^{
460
- [UIView animateWithDuration:dur * 0.5
469
+ [UIView animateWithDuration:dur * 0.65
461
470
  animations:^{
462
471
  if (targetScreen) { targetScreen.alpha = 0; }
463
472
  }
@@ -521,20 +530,23 @@ static CGRect imageFrameForScaleMode(UIViewContentMode mode,
521
530
  sourceScreen.alpha = 1;
522
531
  }
523
532
 
533
+ UICubicTimingParameters *timing2 = [[UICubicTimingParameters alloc]
534
+ initWithControlPoint1:CGPointMake(0.25, 1.0)
535
+ controlPoint2:CGPointMake(0.5, 1.0)];
524
536
  UIViewPropertyAnimator *animator = [[UIViewPropertyAnimator alloc]
525
537
  initWithDuration:dur
526
- dampingRatio:0.85
527
- animations:^{
528
- container.frame = self->_cardFrame;
529
- container.layer.cornerRadius = self->_cardCornerRadius;
530
- snapshot.frame = (CGRect){CGPointZero, self->_cardFrame.size};
531
- }];
538
+ timingParameters:timing2];
539
+ [animator addAnimations:^{
540
+ container.frame = self->_cardFrame;
541
+ container.layer.cornerRadius = self->_cardCornerRadius;
542
+ snapshot.frame = (CGRect){CGPointZero, self->_cardFrame.size};
543
+ }];
532
544
 
533
- // Fade out target screen concurrently at 15% (mirrors expand's fade-in)
545
+ // Fade out target screen concurrently at 15%, over 65% of duration
534
546
  dispatch_after(
535
547
  dispatch_time(DISPATCH_TIME_NOW, (int64_t)(dur * 0.15 * NSEC_PER_SEC)),
536
548
  dispatch_get_main_queue(), ^{
537
- [UIView animateWithDuration:dur * 0.5
549
+ [UIView animateWithDuration:dur * 0.65
538
550
  animations:^{
539
551
  if (targetScreen) { targetScreen.alpha = 0; }
540
552
  }
@@ -7,6 +7,7 @@ NS_ASSUME_NONNULL_BEGIN
7
7
  @property (nonatomic, assign) CGFloat targetWidth;
8
8
  @property (nonatomic, assign) CGFloat targetHeight;
9
9
  @property (nonatomic, assign) CGFloat targetBorderRadius;
10
+ @property (nonatomic, assign) CGFloat collapseDuration;
10
11
 
11
12
  - (void)showSnapshot:(UIImage *)image
12
13
  contentMode:(UIViewContentMode)mode
@@ -24,6 +24,7 @@ using namespace facebook::react;
24
24
  _targetWidth = newProps.targetWidth;
25
25
  _targetHeight = newProps.targetHeight;
26
26
  _targetBorderRadius = newProps.targetBorderRadius;
27
+ _collapseDuration = newProps.collapseDuration;
27
28
  [super updateProps:props oldProps:oldProps];
28
29
  }
29
30
 
@@ -18,6 +18,7 @@ const NativeSourceView = _NativeMorphCardSource.default ?? _reactNative.View;
18
18
  const MorphCardSource = ({
19
19
  children,
20
20
  duration = 300,
21
+ expandDuration,
21
22
  width,
22
23
  height,
23
24
  borderRadius,
@@ -50,6 +51,7 @@ const MorphCardSource = ({
50
51
  const content = /*#__PURE__*/(0, _jsxRuntime.jsx)(NativeSourceView, {
51
52
  ref: nativeRef,
52
53
  duration: duration,
54
+ expandDuration: expandDuration,
53
55
  scaleMode: scaleMode,
54
56
  cardBorderRadius: borderRadius,
55
57
  style: style,
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_NativeMorphCardModule","_interopRequireDefault","_NativeMorphCardSource","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","NativeSourceView","NativeSourceViewSpec","View","MorphCardSource","children","duration","width","height","borderRadius","backgroundColor","scaleMode","onPress","ref","nativeRef","useRef","useImperativeHandle","current","style","overflow","handlePress","useCallback","tag","findNodeHandle","NativeMorphCardModule","prepareExpand","requestAnimationFrame","content","jsx","cardBorderRadius","Pressable","exports","getViewTag","viewRef","morphExpand","sourceRef","targetRef","sourceTag","targetTag","expand","morphCollapse","collapse"],"sourceRoot":"../../src","sources":["MorphCardSource.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_NativeMorphCardModule","_interopRequireDefault","_NativeMorphCardSource","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","NativeSourceView","NativeSourceViewSpec","View","MorphCardSource","children","duration","expandDuration","width","height","borderRadius","backgroundColor","scaleMode","onPress","ref","nativeRef","useRef","useImperativeHandle","current","style","overflow","handlePress","useCallback","tag","findNodeHandle","NativeMorphCardModule","prepareExpand","requestAnimationFrame","content","jsx","cardBorderRadius","Pressable","exports","getViewTag","viewRef","morphExpand","sourceRef","targetRef","sourceTag","targetTag","expand","morphCollapse","collapse"],"sourceRoot":"../../src","sources":["MorphCardSource.tsx"],"mappings":"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","ignoreList":[]}
@@ -18,6 +18,7 @@ try {
18
18
  }
19
19
  const MorphCardTarget = ({
20
20
  sourceTag,
21
+ collapseDuration,
21
22
  width,
22
23
  height,
23
24
  borderRadius,
@@ -71,6 +72,7 @@ const MorphCardTarget = ({
71
72
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(NativeTargetView, {
72
73
  ref: nativeRef,
73
74
  sourceTag: sourceTag,
75
+ collapseDuration: collapseDuration,
74
76
  targetWidth: 0,
75
77
  targetHeight: 0,
76
78
  targetBorderRadius: borderRadius != null ? borderRadius : -1,
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_NativeMorphCardModule","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","NativeTargetView","requireNativeComponent","View","MorphCardTarget","sourceTag","width","height","borderRadius","contentOffsetY","contentCentered","style","rest","nativeRef","useRef","expandedRef","sourceSize","setSourceSize","useState","useEffect","cancelled","NativeMorphCardModule","getSourceSize","then","size","catch","handleLayout","useCallback","current","lw","lh","nativeEvent","layout","targetTag","findNodeHandle","setTargetConfig","expand","sizeStyle","jsx","ref","targetWidth","targetHeight","targetBorderRadius","onLayout","exports"],"sourceRoot":"../../src","sources":["MorphCardTarget.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_NativeMorphCardModule","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","NativeTargetView","requireNativeComponent","View","MorphCardTarget","sourceTag","collapseDuration","width","height","borderRadius","contentOffsetY","contentCentered","style","rest","nativeRef","useRef","expandedRef","sourceSize","setSourceSize","useState","useEffect","cancelled","NativeMorphCardModule","getSourceSize","then","size","catch","handleLayout","useCallback","current","lw","lh","nativeEvent","layout","targetTag","findNodeHandle","setTargetConfig","expand","sizeStyle","jsx","ref","targetWidth","targetHeight","targetBorderRadius","onLayout","exports"],"sourceRoot":"../../src","sources":["MorphCardTarget.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","e","__esModule","default","_default","exports","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/NativeMorphCardSource.ts"],"mappings":";;;;;;AAMA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAW9E,IAAAG,+BAAsB,EACnC,oBACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","e","__esModule","default","_default","exports","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/NativeMorphCardSource.ts"],"mappings":";;;;;;AAMA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAY9E,IAAAG,+BAAsB,EACnC,oBACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","e","__esModule","default","_default","exports","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/NativeMorphCardTarget.ts"],"mappings":";;;;;;AAMA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GA6B9E,IAAAG,+BAAsB,EACnC,oBACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","e","__esModule","default","_default","exports","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/NativeMorphCardTarget.ts"],"mappings":";;;;;;AAMA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAgC9E,IAAAG,+BAAsB,EACnC,oBACF,CAAC","ignoreList":[]}
@@ -9,6 +9,7 @@ const NativeSourceView = NativeSourceViewSpec ?? View;
9
9
  export const MorphCardSource = ({
10
10
  children,
11
11
  duration = 300,
12
+ expandDuration,
12
13
  width,
13
14
  height,
14
15
  borderRadius,
@@ -41,6 +42,7 @@ export const MorphCardSource = ({
41
42
  const content = /*#__PURE__*/_jsx(NativeSourceView, {
42
43
  ref: nativeRef,
43
44
  duration: duration,
45
+ expandDuration: expandDuration,
44
46
  scaleMode: scaleMode,
45
47
  cardBorderRadius: borderRadius,
46
48
  style: style,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Pressable","View","findNodeHandle","NativeMorphCardModule","NativeSourceViewSpec","jsx","_jsx","NativeSourceView","MorphCardSource","children","duration","width","height","borderRadius","backgroundColor","scaleMode","onPress","ref","nativeRef","useRef","useImperativeHandle","current","style","overflow","handlePress","useCallback","tag","prepareExpand","requestAnimationFrame","content","cardBorderRadius","getViewTag","viewRef","morphExpand","sourceRef","targetRef","sourceTag","targetTag","expand","morphCollapse","collapse"],"sourceRoot":"../../src","sources":["MorphCardSource.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Pressable","View","findNodeHandle","NativeMorphCardModule","NativeSourceViewSpec","jsx","_jsx","NativeSourceView","MorphCardSource","children","duration","expandDuration","width","height","borderRadius","backgroundColor","scaleMode","onPress","ref","nativeRef","useRef","useImperativeHandle","current","style","overflow","handlePress","useCallback","tag","prepareExpand","requestAnimationFrame","content","cardBorderRadius","getViewTag","viewRef","morphExpand","sourceRef","targetRef","sourceTag","targetTag","expand","morphCollapse","collapse"],"sourceRoot":"../../src","sources":["MorphCardSource.tsx"],"mappings":"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","ignoreList":[]}
@@ -12,6 +12,7 @@ try {
12
12
  }
13
13
  export const MorphCardTarget = ({
14
14
  sourceTag,
15
+ collapseDuration,
15
16
  width,
16
17
  height,
17
18
  borderRadius,
@@ -65,6 +66,7 @@ export const MorphCardTarget = ({
65
66
  return /*#__PURE__*/_jsx(NativeTargetView, {
66
67
  ref: nativeRef,
67
68
  sourceTag: sourceTag,
69
+ collapseDuration: collapseDuration,
68
70
  targetWidth: 0,
69
71
  targetHeight: 0,
70
72
  targetBorderRadius: borderRadius != null ? borderRadius : -1,
@@ -1 +1 @@
1
- {"version":3,"names":["React","requireNativeComponent","View","findNodeHandle","NativeMorphCardModule","jsx","_jsx","NativeTargetView","MorphCardTarget","sourceTag","width","height","borderRadius","contentOffsetY","contentCentered","style","rest","nativeRef","useRef","expandedRef","sourceSize","setSourceSize","useState","useEffect","cancelled","getSourceSize","then","size","catch","handleLayout","useCallback","e","current","lw","lh","nativeEvent","layout","targetTag","setTargetConfig","expand","sizeStyle","ref","targetWidth","targetHeight","targetBorderRadius","onLayout"],"sourceRoot":"../../src","sources":["MorphCardTarget.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","requireNativeComponent","View","findNodeHandle","NativeMorphCardModule","jsx","_jsx","NativeTargetView","MorphCardTarget","sourceTag","collapseDuration","width","height","borderRadius","contentOffsetY","contentCentered","style","rest","nativeRef","useRef","expandedRef","sourceSize","setSourceSize","useState","useEffect","cancelled","getSourceSize","then","size","catch","handleLayout","useCallback","e","current","lw","lh","nativeEvent","layout","targetTag","setTargetConfig","expand","sizeStyle","ref","targetWidth","targetHeight","targetBorderRadius","onLayout"],"sourceRoot":"../../src","sources":["MorphCardTarget.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/NativeMorphCardSource.ts"],"mappings":";;AAMA,OAAOA,sBAAsB,MAAM,yDAAyD;AAW5F,eAAeA,sBAAsB,CACnC,oBACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/NativeMorphCardSource.ts"],"mappings":";;AAMA,OAAOA,sBAAsB,MAAM,yDAAyD;AAY5F,eAAeA,sBAAsB,CACnC,oBACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/NativeMorphCardTarget.ts"],"mappings":";;AAMA,OAAOA,sBAAsB,MAAM,yDAAyD;AA6B5F,eAAeA,sBAAsB,CACnC,oBACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["codegenNativeComponent"],"sourceRoot":"../../../src","sources":["specs/NativeMorphCardTarget.ts"],"mappings":";;AAMA,OAAOA,sBAAsB,MAAM,yDAAyD;AAgC5F,eAAeA,sBAAsB,CACnC,oBACF,CAAC","ignoreList":[]}
@@ -4,6 +4,7 @@ export type ScaleMode = 'aspectFill' | 'aspectFit' | 'stretch';
4
4
  export interface MorphCardSourceProps {
5
5
  ref?: React.Ref<any>;
6
6
  duration?: number;
7
+ expandDuration?: number;
7
8
  width?: DimensionValue;
8
9
  height?: DimensionValue;
9
10
  borderRadius?: number;
@@ -13,7 +14,7 @@ export interface MorphCardSourceProps {
13
14
  onPress?: (sourceTag: number) => void;
14
15
  children: React.ReactNode;
15
16
  }
16
- export declare const MorphCardSource: ({ children, duration, width, height, borderRadius, backgroundColor, scaleMode, onPress, ref, }: MorphCardSourceProps) => React.JSX.Element;
17
+ export declare const MorphCardSource: ({ children, duration, expandDuration, width, height, borderRadius, backgroundColor, scaleMode, onPress, ref, }: MorphCardSourceProps) => React.JSX.Element;
17
18
  /**
18
19
  * Get the native view tag from a ref. Useful for passing sourceTag
19
20
  * to the detail screen via navigation params.
@@ -1 +1 @@
1
- {"version":3,"file":"MorphCardSource.d.ts","sourceRoot":"","sources":["../../../src/MorphCardSource.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAGL,KAAK,cAAc,EAGpB,MAAM,cAAc,CAAC;AAMtB,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,CAAC;AAE/D,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6FAA6F;IAC7F,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,eAAO,MAAM,eAAe,GAAI,gGAU7B,oBAAoB,sBAmCtB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAEvE;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,EAC/B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC,CAKlB;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAEvE"}
1
+ {"version":3,"file":"MorphCardSource.d.ts","sourceRoot":"","sources":["../../../src/MorphCardSource.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAGL,KAAK,cAAc,EAGpB,MAAM,cAAc,CAAC;AAMtB,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,CAAC;AAE/D,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6FAA6F;IAC7F,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,eAAO,MAAM,eAAe,GAAI,gHAW7B,oBAAoB,sBAmCtB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAEvE;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,EAC/B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,GAC9B,OAAO,CAAC,OAAO,CAAC,CAKlB;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAEvE"}
@@ -3,6 +3,8 @@ import { type StyleProp, type ViewStyle, type DimensionValue } from 'react-nativ
3
3
  export interface MorphCardTargetProps {
4
4
  /** The sourceTag from route params — triggers expand on mount. */
5
5
  sourceTag: number;
6
+ /** Duration of the collapse animation in ms. Falls back to source's duration. */
7
+ collapseDuration?: number;
6
8
  /** Optional width override (number or '100%'). If omitted, source width is used. */
7
9
  width?: DimensionValue;
8
10
  /** Optional height override (number or '100%'). If omitted, source height is used. */
@@ -16,5 +18,5 @@ export interface MorphCardTargetProps {
16
18
  /** Optional style for positioning (margin, position, etc). */
17
19
  style?: StyleProp<ViewStyle>;
18
20
  }
19
- export declare const MorphCardTarget: ({ sourceTag, width, height, borderRadius, contentOffsetY, contentCentered, style, ...rest }: MorphCardTargetProps) => React.JSX.Element;
21
+ export declare const MorphCardTarget: ({ sourceTag, collapseDuration, width, height, borderRadius, contentOffsetY, contentCentered, style, ...rest }: MorphCardTargetProps) => React.JSX.Element;
20
22
  //# sourceMappingURL=MorphCardTarget.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MorphCardTarget.d.ts","sourceRoot":"","sources":["../../../src/MorphCardTarget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,cAAc,EAIpB,MAAM,cAAc,CAAC;AAkBtB,MAAM,WAAW,oBAAoB;IACnC,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,oFAAoF;IACpF,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,sFAAsF;IACtF,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,2GAA2G;IAC3G,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gGAAgG;IAChG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gGAAgG;IAChG,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,8DAA8D;IAC9D,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,eAAO,MAAM,eAAe,GAAI,6FAS7B,oBAAoB,sBAwEtB,CAAC"}
1
+ {"version":3,"file":"MorphCardTarget.d.ts","sourceRoot":"","sources":["../../../src/MorphCardTarget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,cAAc,EAIpB,MAAM,cAAc,CAAC;AAmBtB,MAAM,WAAW,oBAAoB;IACnC,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oFAAoF;IACpF,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,sFAAsF;IACtF,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,2GAA2G;IAC3G,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gGAAgG;IAChG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gGAAgG;IAChG,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,8DAA8D;IAC9D,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,eAAO,MAAM,eAAe,GAAI,+GAU7B,oBAAoB,sBAyEtB,CAAC"}
@@ -5,6 +5,7 @@ export interface NativeMorphCardSourceProps extends ViewProps {
5
5
  onMorphComplete?: DirectEventHandler<{}>;
6
6
  onDismissComplete?: DirectEventHandler<{}>;
7
7
  duration?: Double;
8
+ expandDuration?: Double;
8
9
  scaleMode?: WithDefault<'aspectFill' | 'aspectFit' | 'stretch', 'aspectFill'>;
9
10
  cardBorderRadius?: Double;
10
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NativeMorphCardSource.d.ts","sourceRoot":"","sources":["../../../../src/specs/NativeMorphCardSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,WAAW,EACZ,MAAM,2CAA2C,CAAC;AAGnD,MAAM,WAAW,0BAA2B,SAAQ,SAAS;IAC3D,YAAY,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACzC,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,WAAW,CAAC,YAAY,GAAG,WAAW,GAAG,SAAS,EAAE,YAAY,CAAC,CAAC;IAC9E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;;AAED,wBAEE"}
1
+ {"version":3,"file":"NativeMorphCardSource.d.ts","sourceRoot":"","sources":["../../../../src/specs/NativeMorphCardSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,WAAW,EACZ,MAAM,2CAA2C,CAAC;AAGnD,MAAM,WAAW,0BAA2B,SAAQ,SAAS;IAC3D,YAAY,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACzC,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,WAAW,CAAC,YAAY,GAAG,WAAW,GAAG,SAAS,EAAE,YAAY,CAAC,CAAC;IAC9E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;;AAED,wBAEE"}
@@ -12,6 +12,8 @@ export interface NativeMorphCardTargetProps extends ViewProps {
12
12
  * The react tag of the source card to morph from.
13
13
  */
14
14
  sourceTag?: Int32;
15
+ /** Duration of the collapse animation in ms. Falls back to source's duration. */
16
+ collapseDuration?: Double;
15
17
  onMorphComplete?: DirectEventHandler<MorphCompleteEvent>;
16
18
  /** Explicit target width. 0 = use source width. */
17
19
  targetWidth?: Double;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeMorphCardTarget.d.ts","sourceRoot":"","sources":["../../../../src/specs/NativeMorphCardTarget.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,KAAK,EACN,MAAM,2CAA2C,CAAC;AAGnD,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,0BAA2B,SAAQ,SAAS;IAC3D;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;IAElB,eAAe,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;IAEzD,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;;AAED,wBAEE"}
1
+ {"version":3,"file":"NativeMorphCardTarget.d.ts","sourceRoot":"","sources":["../../../../src/specs/NativeMorphCardTarget.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,KAAK,EACN,MAAM,2CAA2C,CAAC;AAGnD,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,0BAA2B,SAAQ,SAAS;IAC3D;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;IAElB,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,eAAe,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;IAEzD,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;;AAED,wBAEE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-morph-card",
3
- "version": "0.2.1",
3
+ "version": "0.2.3",
4
4
  "description": "Native card-to-modal morph transition for React Native. iOS App Store-style expand animation.",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -16,6 +16,7 @@ export type ScaleMode = 'aspectFill' | 'aspectFit' | 'stretch';
16
16
  export interface MorphCardSourceProps {
17
17
  ref?: React.Ref<any>;
18
18
  duration?: number;
19
+ expandDuration?: number;
19
20
  width?: DimensionValue;
20
21
  height?: DimensionValue;
21
22
  borderRadius?: number;
@@ -29,6 +30,7 @@ export interface MorphCardSourceProps {
29
30
  export const MorphCardSource = ({
30
31
  children,
31
32
  duration = 300,
33
+ expandDuration,
32
34
  width,
33
35
  height,
34
36
  borderRadius,
@@ -61,7 +63,7 @@ export const MorphCardSource = ({
61
63
  }, [onPress]);
62
64
 
63
65
  const content = (
64
- <NativeSourceView ref={nativeRef} duration={duration} scaleMode={scaleMode} cardBorderRadius={borderRadius} style={style}>
66
+ <NativeSourceView ref={nativeRef} duration={duration} expandDuration={expandDuration} scaleMode={scaleMode} cardBorderRadius={borderRadius} style={style}>
65
67
  {children}
66
68
  </NativeSourceView>
67
69
  );
@@ -14,6 +14,7 @@ import NativeMorphCardModule from './specs/NativeMorphCardModule';
14
14
  let NativeTargetView: React.ComponentType<
15
15
  ViewProps & {
16
16
  sourceTag?: number;
17
+ collapseDuration?: number;
17
18
  targetWidth?: number;
18
19
  targetHeight?: number;
19
20
  targetBorderRadius?: number;
@@ -29,6 +30,8 @@ try {
29
30
  export interface MorphCardTargetProps {
30
31
  /** The sourceTag from route params — triggers expand on mount. */
31
32
  sourceTag: number;
33
+ /** Duration of the collapse animation in ms. Falls back to source's duration. */
34
+ collapseDuration?: number;
32
35
  /** Optional width override (number or '100%'). If omitted, source width is used. */
33
36
  width?: DimensionValue;
34
37
  /** Optional height override (number or '100%'). If omitted, source height is used. */
@@ -45,6 +48,7 @@ export interface MorphCardTargetProps {
45
48
 
46
49
  export const MorphCardTarget = ({
47
50
  sourceTag,
51
+ collapseDuration,
48
52
  width,
49
53
  height,
50
54
  borderRadius,
@@ -116,6 +120,7 @@ export const MorphCardTarget = ({
116
120
  <NativeTargetView
117
121
  ref={nativeRef}
118
122
  sourceTag={sourceTag}
123
+ collapseDuration={collapseDuration}
119
124
  targetWidth={0}
120
125
  targetHeight={0}
121
126
  targetBorderRadius={borderRadius != null ? borderRadius : -1}
@@ -11,6 +11,7 @@ export interface NativeMorphCardSourceProps extends ViewProps {
11
11
  onMorphComplete?: DirectEventHandler<{}>;
12
12
  onDismissComplete?: DirectEventHandler<{}>;
13
13
  duration?: Double;
14
+ expandDuration?: Double;
14
15
  scaleMode?: WithDefault<'aspectFill' | 'aspectFit' | 'stretch', 'aspectFill'>;
15
16
  cardBorderRadius?: Double;
16
17
  }
@@ -21,6 +21,9 @@ export interface NativeMorphCardTargetProps extends ViewProps {
21
21
  */
22
22
  sourceTag?: Int32;
23
23
 
24
+ /** Duration of the collapse animation in ms. Falls back to source's duration. */
25
+ collapseDuration?: Double;
26
+
24
27
  onMorphComplete?: DirectEventHandler<MorphCompleteEvent>;
25
28
 
26
29
  /** Explicit target width. 0 = use source width. */