@nativescript/core 9.1.0-alpha.5 → 9.1.0-alpha.7

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 (106) hide show
  1. package/application/application.android.js +2 -0
  2. package/application/application.android.js.map +1 -1
  3. package/file-system/file-system-access.ios.js +12 -25
  4. package/file-system/file-system-access.ios.js.map +1 -1
  5. package/package.json +1 -1
  6. package/ui/action-bar/index.ios.js +0 -1
  7. package/ui/action-bar/index.ios.js.map +1 -1
  8. package/ui/button/index.android.d.ts +2 -9
  9. package/ui/button/index.android.js +7 -24
  10. package/ui/button/index.android.js.map +1 -1
  11. package/ui/button/index.ios.d.ts +2 -9
  12. package/ui/button/index.ios.js +17 -72
  13. package/ui/button/index.ios.js.map +1 -1
  14. package/ui/core/view/index.android.d.ts +1 -0
  15. package/ui/core/view/index.android.js +17 -8
  16. package/ui/core/view/index.android.js.map +1 -1
  17. package/ui/core/view/index.ios.d.ts +1 -0
  18. package/ui/core/view/index.ios.js +18 -20
  19. package/ui/core/view/index.ios.js.map +1 -1
  20. package/ui/core/view/view-common.d.ts +0 -2
  21. package/ui/core/view/view-common.js +1 -6
  22. package/ui/core/view/view-common.js.map +1 -1
  23. package/ui/core/view/view-helper/index.d.ts +1 -0
  24. package/ui/core/view/view-helper/index.ios.d.ts +24 -0
  25. package/ui/core/view/view-helper/index.ios.js +54 -5
  26. package/ui/core/view/view-helper/index.ios.js.map +1 -1
  27. package/ui/core/view-base/index.d.ts +19 -9
  28. package/ui/core/view-base/index.js +42 -29
  29. package/ui/core/view-base/index.js.map +1 -1
  30. package/ui/frame/fragment.transitions.android.d.ts +13 -13
  31. package/ui/frame/fragment.transitions.android.js.map +1 -1
  32. package/ui/frame/frame-common.d.ts +2 -1
  33. package/ui/frame/frame-common.js +10 -0
  34. package/ui/frame/frame-common.js.map +1 -1
  35. package/ui/frame/frame-helper-for-android.d.ts +4 -4
  36. package/ui/frame/frame-helper-for-android.js +17 -8
  37. package/ui/frame/frame-helper-for-android.js.map +1 -1
  38. package/ui/frame/index.android.d.ts +6 -11
  39. package/ui/frame/index.android.js +18 -59
  40. package/ui/frame/index.android.js.map +1 -1
  41. package/ui/frame/index.d.ts +12 -21
  42. package/ui/frame/index.ios.d.ts +2 -2
  43. package/ui/frame/index.ios.js.map +1 -1
  44. package/ui/label/index.ios.d.ts +2 -5
  45. package/ui/label/index.ios.js +12 -44
  46. package/ui/label/index.ios.js.map +1 -1
  47. package/ui/layouts/absolute-layout/index.ios.js +5 -1
  48. package/ui/layouts/absolute-layout/index.ios.js.map +1 -1
  49. package/ui/layouts/dock-layout/index.ios.js +5 -1
  50. package/ui/layouts/dock-layout/index.ios.js.map +1 -1
  51. package/ui/layouts/flexbox-layout/index.ios.js +5 -1
  52. package/ui/layouts/flexbox-layout/index.ios.js.map +1 -1
  53. package/ui/layouts/grid-layout/index.ios.js +5 -1
  54. package/ui/layouts/grid-layout/index.ios.js.map +1 -1
  55. package/ui/layouts/layout-base.android.d.ts +3 -10
  56. package/ui/layouts/layout-base.android.js +7 -24
  57. package/ui/layouts/layout-base.android.js.map +1 -1
  58. package/ui/layouts/layout-base.ios.js.map +1 -1
  59. package/ui/layouts/stack-layout/index.ios.js +5 -1
  60. package/ui/layouts/stack-layout/index.ios.js.map +1 -1
  61. package/ui/layouts/wrap-layout/index.ios.js +5 -1
  62. package/ui/layouts/wrap-layout/index.ios.js.map +1 -1
  63. package/ui/list-view/index.d.ts +13 -1
  64. package/ui/list-view/index.ios.d.ts +3 -1
  65. package/ui/list-view/index.ios.js +48 -10
  66. package/ui/list-view/index.ios.js.map +1 -1
  67. package/ui/list-view/list-view-common.d.ts +14 -0
  68. package/ui/list-view/list-view-common.js +4 -0
  69. package/ui/list-view/list-view-common.js.map +1 -1
  70. package/ui/page/index.ios.js +17 -4
  71. package/ui/page/index.ios.js.map +1 -1
  72. package/ui/scroll-view/index.d.ts +13 -0
  73. package/ui/scroll-view/index.ios.js +21 -7
  74. package/ui/scroll-view/index.ios.js.map +1 -1
  75. package/ui/scroll-view/scroll-view-common.d.ts +2 -0
  76. package/ui/scroll-view/scroll-view-common.js +8 -0
  77. package/ui/scroll-view/scroll-view-common.js.map +1 -1
  78. package/ui/styling/style/index.d.ts +1 -0
  79. package/ui/styling/style/index.js.map +1 -1
  80. package/ui/styling/style-properties.d.ts +1 -0
  81. package/ui/styling/style-properties.js +13 -4
  82. package/ui/styling/style-properties.js.map +1 -1
  83. package/ui/tab-view/index.ios.d.ts +10 -1
  84. package/ui/tab-view/index.ios.js +12 -4
  85. package/ui/tab-view/index.ios.js.map +1 -1
  86. package/ui/text-base/index.android.d.ts +2 -9
  87. package/ui/text-base/index.android.js +7 -24
  88. package/ui/text-base/index.android.js.map +1 -1
  89. package/ui/text-field/index.ios.d.ts +2 -9
  90. package/ui/text-field/index.ios.js +2 -23
  91. package/ui/text-field/index.ios.js.map +1 -1
  92. package/ui/text-view/index.ios.d.ts +2 -9
  93. package/ui/text-view/index.ios.js +20 -72
  94. package/ui/text-view/index.ios.js.map +1 -1
  95. package/ui/transition/index.d.ts +2 -1
  96. package/ui/transition/modal-transition.ios.js +18 -4
  97. package/ui/transition/modal-transition.ios.js.map +1 -1
  98. package/ui/transition/page-transition.ios.d.ts +5 -0
  99. package/ui/transition/page-transition.ios.js +227 -31
  100. package/ui/transition/page-transition.ios.js.map +1 -1
  101. package/ui/transition/shared-transition-helper.ios.js +456 -20
  102. package/ui/transition/shared-transition-helper.ios.js.map +1 -1
  103. package/ui/transition/shared-transition.d.ts +23 -0
  104. package/ui/transition/shared-transition.js.map +1 -1
  105. package/utils/native-helper.ios.js +15 -4
  106. package/utils/native-helper.ios.js.map +1 -1
@@ -4,7 +4,7 @@ import { iosWritingToolsAllowedInputProperty, iosWritingToolsBehaviorProperty, T
4
4
  import { editableProperty, hintProperty, placeholderColorProperty, _updateCharactersInRangeReplacementString } from '../editable-text-base';
5
5
  import { CoreTypes } from '../../core-types';
6
6
  import { CSSType } from '../core/view';
7
- import { colorProperty, borderTopWidthProperty, borderRightWidthProperty, borderBottomWidthProperty, borderLeftWidthProperty, paddingTopProperty, paddingRightProperty, paddingBottomProperty, paddingLeftProperty, directionProperty } from '../styling/style-properties';
7
+ import { colorProperty, borderTopWidthProperty, borderRightWidthProperty, borderBottomWidthProperty, borderLeftWidthProperty, directionProperty, paddingInternalProperty } from '../styling/style-properties';
8
8
  import { layout, isRealDevice } from '../../utils';
9
9
  import { SDK_VERSION } from '../../utils/constants';
10
10
  export { WritingToolsAllowedInput, WritingToolsBehavior } from './text-view-common';
@@ -79,6 +79,9 @@ var UITextViewDelegateImpl = (function (_super) {
79
79
  };
80
80
  UITextViewDelegateImpl.ObjCProtocols = [UITextViewDelegate];
81
81
  return UITextViewDelegateImpl;
82
+ // UITextView internally scrolls the text you are currently typing to visible when newline character
83
+ // is typed but the scroll animation is not needed because at the same time we are expanding
84
+ // the textview (setting its frame)
82
85
  }(NSObject));
83
86
  var NoScrollAnimationUITextView = (function (_super) {
84
87
  __extends(NoScrollAnimationUITextView, _super);
@@ -107,6 +110,7 @@ let TextView = TextView_1 = class TextView extends TextViewBaseCommon {
107
110
  super.initNativeView();
108
111
  this._delegate = UITextViewDelegateImpl.initWithOwner(new WeakRef(this));
109
112
  this.nativeTextViewProtected.delegate = this._delegate;
113
+ this._setDefaultPaddings(this.nativeTextViewProtected.textContainerInset);
110
114
  }
111
115
  disposeNativeView() {
112
116
  this._delegate = null;
@@ -262,12 +266,12 @@ let TextView = TextView_1 = class TextView extends TextViewBaseCommon {
262
266
  [borderTopWidthProperty.setNative](value) {
263
267
  const inset = this.nativeTextViewProtected.textContainerInset;
264
268
  const top = layout.toDeviceIndependentPixels(this.effectivePaddingTop + this.effectiveBorderTopWidth);
265
- this.nativeTextViewProtected.textContainerInset = {
269
+ this.nativeTextViewProtected.textContainerInset = new UIEdgeInsets({
266
270
  top: top,
267
271
  left: inset.left,
268
272
  bottom: inset.bottom,
269
273
  right: inset.right,
270
- };
274
+ });
271
275
  }
272
276
  [borderRightWidthProperty.getDefault]() {
273
277
  return {
@@ -278,12 +282,12 @@ let TextView = TextView_1 = class TextView extends TextViewBaseCommon {
278
282
  [borderRightWidthProperty.setNative](value) {
279
283
  const inset = this.nativeTextViewProtected.textContainerInset;
280
284
  const right = layout.toDeviceIndependentPixels(this.effectivePaddingRight + this.effectiveBorderRightWidth);
281
- this.nativeTextViewProtected.textContainerInset = {
285
+ this.nativeTextViewProtected.textContainerInset = new UIEdgeInsets({
282
286
  top: inset.top,
283
287
  left: inset.left,
284
288
  bottom: inset.bottom,
285
289
  right: right,
286
- };
290
+ });
287
291
  }
288
292
  [borderBottomWidthProperty.getDefault]() {
289
293
  return {
@@ -294,12 +298,12 @@ let TextView = TextView_1 = class TextView extends TextViewBaseCommon {
294
298
  [borderBottomWidthProperty.setNative](value) {
295
299
  const inset = this.nativeTextViewProtected.textContainerInset;
296
300
  const bottom = layout.toDeviceIndependentPixels(this.effectivePaddingBottom + this.effectiveBorderBottomWidth);
297
- this.nativeTextViewProtected.textContainerInset = {
301
+ this.nativeTextViewProtected.textContainerInset = new UIEdgeInsets({
298
302
  top: inset.top,
299
303
  left: inset.left,
300
304
  bottom: bottom,
301
305
  right: inset.right,
302
- };
306
+ });
303
307
  }
304
308
  [borderLeftWidthProperty.getDefault]() {
305
309
  return {
@@ -310,76 +314,20 @@ let TextView = TextView_1 = class TextView extends TextViewBaseCommon {
310
314
  [borderLeftWidthProperty.setNative](value) {
311
315
  const inset = this.nativeTextViewProtected.textContainerInset;
312
316
  const left = layout.toDeviceIndependentPixels(this.effectivePaddingLeft + this.effectiveBorderLeftWidth);
313
- this.nativeTextViewProtected.textContainerInset = {
317
+ this.nativeTextViewProtected.textContainerInset = new UIEdgeInsets({
314
318
  top: inset.top,
315
319
  left: left,
316
320
  bottom: inset.bottom,
317
321
  right: inset.right,
318
- };
319
- }
320
- [paddingTopProperty.getDefault]() {
321
- return {
322
- value: this.nativeTextViewProtected.textContainerInset.top,
323
- unit: 'px',
324
- };
325
- }
326
- [paddingTopProperty.setNative](value) {
327
- const inset = this.nativeTextViewProtected.textContainerInset;
328
- const top = layout.toDeviceIndependentPixels(this.effectivePaddingTop + this.effectiveBorderTopWidth);
329
- this.nativeTextViewProtected.textContainerInset = {
330
- top: top,
331
- left: inset.left,
332
- bottom: inset.bottom,
333
- right: inset.right,
334
- };
335
- }
336
- [paddingRightProperty.getDefault]() {
337
- return {
338
- value: this.nativeTextViewProtected.textContainerInset.right,
339
- unit: 'px',
340
- };
341
- }
342
- [paddingRightProperty.setNative](value) {
343
- const inset = this.nativeTextViewProtected.textContainerInset;
344
- const right = layout.toDeviceIndependentPixels(this.effectivePaddingRight + this.effectiveBorderRightWidth);
345
- this.nativeTextViewProtected.textContainerInset = {
346
- top: inset.top,
347
- left: inset.left,
348
- bottom: inset.bottom,
349
- right: right,
350
- };
351
- }
352
- [paddingBottomProperty.getDefault]() {
353
- return {
354
- value: this.nativeTextViewProtected.textContainerInset.bottom,
355
- unit: 'px',
356
- };
357
- }
358
- [paddingBottomProperty.setNative](value) {
359
- const inset = this.nativeTextViewProtected.textContainerInset;
360
- const bottom = layout.toDeviceIndependentPixels(this.effectivePaddingBottom + this.effectiveBorderBottomWidth);
361
- this.nativeTextViewProtected.textContainerInset = {
362
- top: inset.top,
363
- left: inset.left,
364
- bottom: bottom,
365
- right: inset.right,
366
- };
367
- }
368
- [paddingLeftProperty.getDefault]() {
369
- return {
370
- value: this.nativeTextViewProtected.textContainerInset.left,
371
- unit: 'px',
372
- };
322
+ });
373
323
  }
374
- [paddingLeftProperty.setNative](value) {
375
- const inset = this.nativeTextViewProtected.textContainerInset;
376
- const left = layout.toDeviceIndependentPixels(this.effectivePaddingLeft + this.effectiveBorderLeftWidth);
377
- this.nativeTextViewProtected.textContainerInset = {
378
- top: inset.top,
379
- left: left,
380
- bottom: inset.bottom,
381
- right: inset.right,
382
- };
324
+ [paddingInternalProperty.setNative](_value) {
325
+ this.nativeTextViewProtected.textContainerInset = new UIEdgeInsets({
326
+ top: layout.toDeviceIndependentPixels(this.effectivePaddingTop + this.effectiveBorderTopWidth),
327
+ right: layout.toDeviceIndependentPixels(this.effectivePaddingRight + this.effectiveBorderRightWidth),
328
+ bottom: layout.toDeviceIndependentPixels(this.effectivePaddingBottom + this.effectiveBorderBottomWidth),
329
+ left: layout.toDeviceIndependentPixels(this.effectivePaddingLeft + this.effectiveBorderLeftWidth),
330
+ });
383
331
  }
384
332
  [iosWritingToolsBehaviorProperty.setNative](value) {
385
333
  if (SDK_VERSION >= 18 && isRealDevice()) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../../../packages/core/ui/text-view/index.ios.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../../../packages/core/ui/text-view/index.ios.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export type SharedTransitionTagPropertiesToMatch = {
10
10
  */
11
11
  layer?: Array<string>;
12
12
  };
13
- export type SharedElementSettings = { view: View; startFrame: any; endFrame?: any; startOpacity?: number; endOpacity?: number; scale?: { x?: number; y?: number }; zIndex?: number; startTransform?: any; snapshot?: any; propertiesToMatch?: SharedTransitionTagPropertiesToMatch };
13
+ export type SharedElementSettings = { view: View; startFrame: any; endFrame?: any; startOpacity?: number; endOpacity?: number; scale?: { x?: number; y?: number }; zIndex?: number; startTransform?: any; snapshot?: any; propertiesToMatch?: SharedTransitionTagPropertiesToMatch; imageSourceChangeListener?: (args: any) => void };
14
14
  export type TransitionNavigationType = 'page' | 'modal';
15
15
  export interface TransitionInteractiveState {
16
16
  started?: false;
@@ -34,6 +34,7 @@ export declare class Transition {
34
34
  presenting?: Array<SharedElementSettings>;
35
35
  // independent sharedTransitionTags which are part of the shared transition but only on one page
36
36
  independent?: Array<SharedElementSettings & { isPresented?: boolean }>;
37
+ _allPresentingViews?: Array<View>;
37
38
  };
38
39
  static AndroidTransitionType?: { enter?: string; exit?: string; popEnter?: string; popExit?: string };
39
40
  constructor(duration?: number, nativeCurve?: any /* UIViewAnimationCurve | string | CubicBezierAnimationCurve | android.view.animation.Interpolator | android.view.animation.LinearInterpolator */);
@@ -37,7 +37,15 @@ export class ModalTransition extends Transition {
37
37
  _interactiveDismissGestureHandler(args) {
38
38
  if (args?.ios?.view) {
39
39
  const state = SharedTransition.getState(this.id);
40
- const percent = state.interactive?.dismiss?.percentFormula ? state.interactive.dismiss.percentFormula(args) : args.deltaY / (args.ios.view.bounds.size.height / 2);
40
+ const morph = !!state.interactive?.dismiss?.morph;
41
+ const morphOptions = typeof state.interactive?.dismiss?.morph === 'object' ? state.interactive.dismiss.morph : null;
42
+ const viewH = args.ios.view.bounds.size.height;
43
+ const dist = Math.hypot(args.deltaX, args.deltaY);
44
+ const morphPercent = dist / viewH;
45
+ // 1:1 with finger movement (SwiftUI default). Dragging across the full
46
+ // view height corresponds to percent = 1. Halving the divisor — the
47
+ // previous default — made the modal run twice as fast as the finger.
48
+ const percent = state.interactive?.dismiss?.percentFormula ? state.interactive.dismiss.percentFormula(args) : morph ? morphPercent : args.deltaY / viewH;
41
49
  if (SharedTransition.DEBUG) {
42
50
  console.log('Interactive dismissal percentage:', percent);
43
51
  }
@@ -52,11 +60,17 @@ export class ModalTransition extends Transition {
52
60
  }
53
61
  break;
54
62
  case GestureStateTypes.changed:
55
- if (percent < 1) {
56
- if (this.interactiveController) {
57
- this.interactiveController.updateInteractiveTransition(percent);
63
+ if (morph) {
64
+ const presentedView = this.presented?.view;
65
+ if (presentedView) {
66
+ const minScale = morphOptions?.minScale ?? 0.5;
67
+ const scale = Math.max(minScale, 1 - dist / viewH);
68
+ presentedView.transform = CGAffineTransformConcat(CGAffineTransformMakeTranslation(args.deltaX, args.deltaY), CGAffineTransformMakeScale(scale, scale));
58
69
  }
59
70
  }
71
+ if (percent < 1 && this.interactiveController) {
72
+ this.interactiveController.updateInteractiveTransition(percent);
73
+ }
60
74
  break;
61
75
  case GestureStateTypes.cancelled:
62
76
  case GestureStateTypes.ended:
@@ -1 +1 @@
1
- {"version":3,"file":"modal-transition.ios.js","sourceRoot":"","sources":["../../../../../packages/core/ui/transition/modal-transition.ios.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modal-transition.ios.js","sourceRoot":"","sources":["../../../../../packages/core/ui/transition/modal-transition.ios.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,11 @@ export declare class PageTransition extends Transition {
17
17
  private _interactiveStartCallback;
18
18
  private _interactiveDismissGesture;
19
19
  private _interactiveGestureTeardown;
20
+ private _gesturePhase;
21
+ private _gestureScrollY;
22
+ private _innerScroll;
23
+ private _scrollWasEnabled;
24
+ private _morphTarget;
20
25
  iosNavigatedController(navigationController: UINavigationController, operation: number, fromVC: UIViewController, toVC: UIViewController): UIViewControllerAnimatedTransitioning;
21
26
  iosInteractionDismiss(animator: UIViewControllerAnimatedTransitioning): UIViewControllerInteractiveTransitioning;
22
27
  setupInteractiveGesture(startCallback: () => void, view: View): () => void;
@@ -2,9 +2,56 @@ import { Transition } from '.';
2
2
  import { isNumber } from '../../utils/types';
3
3
  import { CORE_ANIMATION_DEFAULTS, getDurationWithDampingFromSpring } from '../../utils/animation-helpers';
4
4
  import { GestureStateTypes } from '../gestures';
5
+ import { ios as iOSUtils } from '../../utils/native-helper';
5
6
  import { SharedTransition, SharedTransitionAnimationType } from './shared-transition';
6
7
  import { SharedTransitionHelper } from './shared-transition-helper';
8
+ function _findInnerScroll(view) {
9
+ // Walk the destination's view subtree breadth-first looking for the first
10
+ // UIScrollView. Returned so the dismiss handler can both read its current
11
+ // contentOffset (to tell "was scrolled" from "was at top") and pin it in
12
+ // place while an interactive dismiss is engaged.
13
+ if (!view)
14
+ return null;
15
+ const queue = [view];
16
+ while (queue.length) {
17
+ const v = queue.shift();
18
+ if (!v)
19
+ continue;
20
+ if (v instanceof UIScrollView) {
21
+ return v;
22
+ }
23
+ const subviews = v.subviews;
24
+ if (!subviews)
25
+ continue;
26
+ for (let i = 0; i < subviews.count; i++) {
27
+ queue.push(subviews.objectAtIndex(i));
28
+ }
29
+ }
30
+ return null;
31
+ }
7
32
  export class PageTransition extends Transition {
33
+ constructor() {
34
+ super(...arguments);
35
+ // Tracks the gesture's lifecycle:
36
+ // - 'idle' : no active touch.
37
+ // - 'pending' : touched and might be panning, but we haven't seen enough
38
+ // motion to know whether it's a dismiss or a scroll.
39
+ // - 'active' : confirmed dismiss intent — UIKit interactive transition
40
+ // is engaged and the morph transform tracks the finger.
41
+ // - 'ignored' : determined the gesture is a scroll (or upward at the top
42
+ // of a non-scrolling area); we let the gesture run out
43
+ // without engaging UIKit.
44
+ this._gesturePhase = 'idle';
45
+ this._gestureScrollY = 0;
46
+ // The inner UIScrollView (if any) discovered at gesture-began. Held so we
47
+ // can freeze it (scrollEnabled = false) while the dismiss is active and
48
+ // restore the prior value when the gesture ends.
49
+ this._innerScroll = null;
50
+ // Captured at engagement: the matching source element's frame expressed in
51
+ // the destination view's coordinate system. Morph progress interpolates
52
+ // from identity toward this frame so the destination shrinks into place.
53
+ this._morphTarget = null;
54
+ }
8
55
  iosNavigatedController(navigationController, operation, fromVC, toVC) {
9
56
  this.navigationController = navigationController;
10
57
  if (!this.transitionController) {
@@ -40,20 +87,83 @@ export class PageTransition extends Transition {
40
87
  return this._interactiveGestureTeardown;
41
88
  }
42
89
  _interactiveDismissGestureHandler(args) {
43
- if (args?.ios?.view) {
44
- // console.log('this.id:', this.id);
45
- const state = SharedTransition.getState(this.id);
46
- if (!state) {
47
- // cleanup and exit, already shutdown
48
- this._teardownGesture();
49
- return;
50
- }
51
- const percent = state.interactive?.dismiss?.percentFormula ? state.interactive.dismiss.percentFormula(args) : args.deltaX / (args.ios.view.bounds.size.width / 2);
52
- if (SharedTransition.DEBUG) {
53
- console.log('Interactive dismissal percentage:', percent);
90
+ if (!args?.ios?.view)
91
+ return;
92
+ const state = SharedTransition.getState(this.id);
93
+ if (!state) {
94
+ this._teardownGesture();
95
+ return;
96
+ }
97
+ const morph = !!state.interactive?.dismiss?.morph;
98
+ const morphOptions = typeof state.interactive?.dismiss?.morph === 'object' ? state.interactive.dismiss.morph : null;
99
+ const viewW = args.ios.view.bounds.size.width;
100
+ const viewH = args.ios.view.bounds.size.height;
101
+ const dx = args.deltaX;
102
+ const dy = args.deltaY;
103
+ const dist = Math.hypot(dx, dy);
104
+ const morphPercent = dist / viewH;
105
+ const percent = state.interactive?.dismiss?.percentFormula ? state.interactive.dismiss.percentFormula(args) : morph ? morphPercent : dx / viewW;
106
+ if (SharedTransition.DEBUG) {
107
+ console.log('Interactive dismissal percentage:', percent, 'phase:', this._gesturePhase);
108
+ }
109
+ switch (args.state) {
110
+ case GestureStateTypes.began: {
111
+ // Defensive reset: a previous interactive dismiss may have been
112
+ // interrupted before its cleanup ran, leaving a lingering
113
+ // transform on the presented view or alpha=0 on source views.
114
+ // Recover from that here so each gesture starts from a clean
115
+ // slate regardless of prior animation state.
116
+ const presentedView = this.presented?.view;
117
+ if (presentedView) {
118
+ presentedView.transform = CGAffineTransformIdentity;
119
+ presentedView.alpha = 1;
120
+ }
121
+ const sources = state.instance?.sharedElements?._allPresentingViews || [];
122
+ for (const v of sources) {
123
+ if (v?.ios)
124
+ v.ios.alpha = v.opacity ?? 1;
125
+ }
126
+ // Don't engage UIKit yet — we need a few points of motion to know
127
+ // whether this is a dismiss gesture or a scroll. Cache the inner
128
+ // scrollview and its contentOffset at gesture start so the decision
129
+ // can tell "was scrolled" from "was at top".
130
+ this._gesturePhase = 'pending';
131
+ this._innerScroll = _findInnerScroll(this.presented?.view);
132
+ this._gestureScrollY = this._innerScroll?.contentOffset.y ?? 0;
133
+ break;
54
134
  }
55
- switch (args.state) {
56
- case GestureStateTypes.began:
135
+ case GestureStateTypes.changed:
136
+ if (this._gesturePhase === 'ignored')
137
+ return;
138
+ if (this._gesturePhase === 'pending') {
139
+ // Wait for enough motion to make a confident direction call.
140
+ const motionThreshold = 8;
141
+ const absX = Math.abs(dx);
142
+ const absY = Math.abs(dy);
143
+ if (absX < motionThreshold && absY < motionThreshold)
144
+ return;
145
+ const horizontalDominant = absX > absY;
146
+ const downward = dy > 0;
147
+ const scrollWasAtTop = this._gestureScrollY <= 0;
148
+ // Engagement rule:
149
+ // - Primarily horizontal motion → always allow (swipe-back).
150
+ // - Vertical-downward motion → only when the inner scrollview
151
+ // was at its top at gesture start (sheet-style dismiss).
152
+ // - Anything else → ignore so the scrollview can take over.
153
+ const shouldEngage = horizontalDominant || (downward && scrollWasAtTop);
154
+ if (!shouldEngage) {
155
+ this._gesturePhase = 'ignored';
156
+ return;
157
+ }
158
+ this._gesturePhase = 'active';
159
+ // Freeze the inner scrollview at its current offset for the
160
+ // duration of the dismiss so the page contents don't scroll
161
+ // along with the dismiss drag (which would shift the morph
162
+ // source mid-flight and make the snap-back look off).
163
+ if (this._innerScroll) {
164
+ this._scrollWasEnabled = this._innerScroll.scrollEnabled;
165
+ this._innerScroll.scrollEnabled = false;
166
+ }
57
167
  SharedTransition.updateState(this.id, {
58
168
  interactiveBegan: true,
59
169
  interactiveCancelled: false,
@@ -61,30 +171,116 @@ export class PageTransition extends Transition {
61
171
  if (this._interactiveStartCallback) {
62
172
  this._interactiveStartCallback();
63
173
  }
64
- break;
65
- case GestureStateTypes.changed:
66
- if (percent < 1) {
67
- if (this.interactiveController) {
68
- this.interactiveController.updateInteractiveTransition(percent);
174
+ // Compute morph target: the matching source element's frame in
175
+ // the destination view's coordinate system. We capture it once
176
+ // at engagement so subsequent moves interpolate toward a stable
177
+ // anchor, even if the source page is scrolled during the drag.
178
+ this._morphTarget = null;
179
+ const stateNow = SharedTransition.getState(this.id);
180
+ if (morph && stateNow) {
181
+ const presented = stateNow.instance?.sharedElements?.presented?.[0];
182
+ const destTag = presented?.view?.sharedTransitionTag;
183
+ const sources = stateNow.instance?.sharedElements?._allPresentingViews || [];
184
+ const matchingSource = sources.find?.((v) => v?.sharedTransitionTag === destTag) || sources[0];
185
+ const srcIos = matchingSource?.ios;
186
+ const destView = this.presented?.view;
187
+ if (srcIos && destView) {
188
+ const f = srcIos.convertRectToView(srcIos.bounds, destView);
189
+ const bounds = destView.bounds;
190
+ if (bounds.size.width > 0 && bounds.size.height > 0 && f.size.width > 0) {
191
+ const scaleT = f.size.width / bounds.size.width;
192
+ const txT = f.origin.x + f.size.width / 2 - bounds.size.width / 2;
193
+ const tyT = f.origin.y + f.size.height / 2 - bounds.size.height / 2;
194
+ this._morphTarget = { scale: scaleT, tx: txT, ty: tyT };
195
+ }
196
+ }
197
+ // Hide every source-side element so it doesn't show through
198
+ // the morphing destination. Restored on cancel/finish.
199
+ for (const v of sources) {
200
+ if (v?.ios)
201
+ v.ios.alpha = 0;
69
202
  }
70
203
  }
71
- break;
72
- case GestureStateTypes.cancelled:
73
- case GestureStateTypes.ended:
74
- if (this.interactiveController) {
75
- const finishThreshold = isNumber(state.interactive?.dismiss?.finishThreshold) ? state.interactive.dismiss.finishThreshold : 0.5;
76
- if (percent > finishThreshold) {
77
- this._teardownGesture();
78
- this.interactiveController.finishInteractiveTransition();
204
+ }
205
+ if (this._gesturePhase !== 'active')
206
+ return;
207
+ if (morph) {
208
+ const presentedView = this.presented?.view;
209
+ if (presentedView) {
210
+ const minScale = morphOptions?.minScale ?? 0.2;
211
+ // Interpolate from identity (t=0) toward the source frame
212
+ // (t=1) as the drag progresses. `t` accelerates the morph so
213
+ // the destination noticeably shrinks within typical drag
214
+ // distances rather than staying near full size.
215
+ const t = Math.min(dist / (viewH * 0.5), 1);
216
+ const target = this._morphTarget;
217
+ let scale;
218
+ let tx;
219
+ let ty;
220
+ if (target) {
221
+ const targetScale = Math.max(target.scale, minScale);
222
+ scale = 1 + (targetScale - 1) * t;
223
+ // Blend finger-follow (1-t weight) with target-attract
224
+ // (t weight) so the view feels grabbed but gravitates
225
+ // toward the source as the user commits.
226
+ tx = dx * (1 - t) + target.tx * t;
227
+ ty = dy * (1 - t) + target.ty * t;
79
228
  }
80
229
  else {
81
- SharedTransition.updateState(this.id, {
82
- interactiveCancelled: true,
83
- });
84
- this.interactiveController.cancelInteractiveTransition();
230
+ scale = Math.max(minScale, 1 - t * (1 - minScale));
231
+ tx = dx;
232
+ ty = dy;
85
233
  }
234
+ presentedView.transform = CGAffineTransformConcat(CGAffineTransformMakeTranslation(tx, ty), CGAffineTransformMakeScale(scale, scale));
235
+ }
236
+ }
237
+ if (percent < 1 && this.interactiveController) {
238
+ this.interactiveController.updateInteractiveTransition(percent);
239
+ }
240
+ break;
241
+ case GestureStateTypes.cancelled:
242
+ case GestureStateTypes.ended: {
243
+ const phase = this._gesturePhase;
244
+ this._gesturePhase = 'idle';
245
+ // Restore the inner scrollview's scrollEnabled regardless of
246
+ // whether the gesture engaged or was ignored.
247
+ if (this._innerScroll && this._scrollWasEnabled !== undefined) {
248
+ this._innerScroll.scrollEnabled = this._scrollWasEnabled;
249
+ this._scrollWasEnabled = undefined;
250
+ }
251
+ this._innerScroll = null;
252
+ if (phase !== 'active') {
253
+ // Either the gesture never crossed the engagement threshold or
254
+ // we explicitly ignored it (a scroll). Nothing to wind down.
255
+ return;
256
+ }
257
+ const finishThreshold = isNumber(state.interactive?.dismiss?.finishThreshold) ? state.interactive.dismiss.finishThreshold : 0.5;
258
+ const shouldFinish = percent > finishThreshold;
259
+ if (this.interactiveController) {
260
+ if (shouldFinish) {
261
+ this._teardownGesture();
262
+ this.interactiveController.finishInteractiveTransition();
263
+ }
264
+ else {
265
+ SharedTransition.updateState(this.id, {
266
+ interactiveCancelled: true,
267
+ });
268
+ this.interactiveController.cancelInteractiveTransition();
86
269
  }
87
- break;
270
+ }
271
+ else if (morph) {
272
+ // Fallback: UIKit didn't engage. Reset the morph transform so the
273
+ // destination doesn't stay stuck.
274
+ const presentedView = this.presented?.view;
275
+ if (presentedView) {
276
+ iOSUtils.animateWithSpring({
277
+ animations: () => {
278
+ presentedView.transform = CGAffineTransformIdentity;
279
+ },
280
+ });
281
+ }
282
+ }
283
+ break;
88
284
  }
89
285
  }
90
286
  }
@@ -1 +1 @@
1
- {"version":3,"file":"page-transition.ios.js","sourceRoot":"","sources":["../../../../../packages/core/ui/transition/page-transition.ios.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"page-transition.ios.js","sourceRoot":"","sources":["../../../../../packages/core/ui/transition/page-transition.ios.ts"],"names":[],"mappings":"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"}