react-native-screen-transitions 3.3.0-rc.3 → 3.3.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.
Files changed (149) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +51 -7
  3. package/lib/commonjs/blank-stack/components/stack-view.js +2 -1
  4. package/lib/commonjs/blank-stack/components/stack-view.js.map +1 -1
  5. package/lib/commonjs/blank-stack/components/stack-view.native.js +2 -1
  6. package/lib/commonjs/blank-stack/components/stack-view.native.js.map +1 -1
  7. package/lib/commonjs/component-stack/components/stack-view.js +2 -1
  8. package/lib/commonjs/component-stack/components/stack-view.js.map +1 -1
  9. package/lib/commonjs/shared/components/overlay/helpers/get-active-overlay.js +3 -2
  10. package/lib/commonjs/shared/components/overlay/helpers/get-active-overlay.js.map +1 -1
  11. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js +46 -9
  12. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js.map +1 -1
  13. package/lib/commonjs/shared/components/overlay/variations/overlay-host.js +7 -7
  14. package/lib/commonjs/shared/components/overlay/variations/overlay-host.js.map +1 -1
  15. package/lib/commonjs/shared/components/overlay/variations/screen-overlay.js +23 -3
  16. package/lib/commonjs/shared/components/overlay/variations/screen-overlay.js.map +1 -1
  17. package/lib/commonjs/shared/components/screen-container.js +2 -1
  18. package/lib/commonjs/shared/components/screen-container.js.map +1 -1
  19. package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js +7 -1
  20. package/lib/commonjs/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  21. package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js +12 -12
  22. package/lib/commonjs/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
  23. package/lib/commonjs/shared/hooks/lifecycle/use-close-transition.js +5 -2
  24. package/lib/commonjs/shared/hooks/lifecycle/use-close-transition.js.map +1 -1
  25. package/lib/commonjs/shared/hooks/navigation/use-optimistic-focused-index.js +20 -0
  26. package/lib/commonjs/shared/hooks/navigation/use-optimistic-focused-index.js.map +1 -0
  27. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js +2 -6
  28. package/lib/commonjs/shared/hooks/navigation/use-screen-state.js.map +1 -1
  29. package/lib/commonjs/shared/hooks/reanimated/use-shared-value-state.js +4 -1
  30. package/lib/commonjs/shared/hooks/reanimated/use-shared-value-state.js.map +1 -1
  31. package/lib/commonjs/shared/providers/gestures.provider.js +17 -6
  32. package/lib/commonjs/shared/providers/gestures.provider.js.map +1 -1
  33. package/lib/commonjs/shared/providers/layout-anchor.provider.js +7 -5
  34. package/lib/commonjs/shared/providers/layout-anchor.provider.js.map +1 -1
  35. package/lib/commonjs/shared/providers/screen/styles.provider.js +1 -6
  36. package/lib/commonjs/shared/providers/screen/styles.provider.js.map +1 -1
  37. package/lib/commonjs/shared/providers/stack/direct.provider.js +2 -1
  38. package/lib/commonjs/shared/providers/stack/direct.provider.js.map +1 -1
  39. package/lib/commonjs/shared/providers/stack/managed.provider.js +2 -1
  40. package/lib/commonjs/shared/providers/stack/managed.provider.js.map +1 -1
  41. package/lib/commonjs/shared/utils/gesture/determine-snap-target.js +9 -2
  42. package/lib/commonjs/shared/utils/gesture/determine-snap-target.js.map +1 -1
  43. package/lib/commonjs/shared/utils/gesture/find-collapse-target.js +11 -1
  44. package/lib/commonjs/shared/utils/gesture/find-collapse-target.js.map +1 -1
  45. package/lib/commonjs/shared/utils/gesture/validate-snap-points.js +11 -2
  46. package/lib/commonjs/shared/utils/gesture/validate-snap-points.js.map +1 -1
  47. package/lib/commonjs/shared/utils/overlay/visibility.js +19 -0
  48. package/lib/commonjs/shared/utils/overlay/visibility.js.map +1 -0
  49. package/lib/module/blank-stack/components/stack-view.js +2 -1
  50. package/lib/module/blank-stack/components/stack-view.js.map +1 -1
  51. package/lib/module/blank-stack/components/stack-view.native.js +2 -1
  52. package/lib/module/blank-stack/components/stack-view.native.js.map +1 -1
  53. package/lib/module/component-stack/components/stack-view.js +2 -1
  54. package/lib/module/component-stack/components/stack-view.js.map +1 -1
  55. package/lib/module/shared/components/overlay/helpers/get-active-overlay.js +4 -2
  56. package/lib/module/shared/components/overlay/helpers/get-active-overlay.js.map +1 -1
  57. package/lib/module/shared/components/overlay/variations/float-overlay.js +47 -11
  58. package/lib/module/shared/components/overlay/variations/float-overlay.js.map +1 -1
  59. package/lib/module/shared/components/overlay/variations/overlay-host.js +7 -7
  60. package/lib/module/shared/components/overlay/variations/overlay-host.js.map +1 -1
  61. package/lib/module/shared/components/overlay/variations/screen-overlay.js +24 -5
  62. package/lib/module/shared/components/overlay/variations/screen-overlay.js.map +1 -1
  63. package/lib/module/shared/components/screen-container.js +2 -1
  64. package/lib/module/shared/components/screen-container.js.map +1 -1
  65. package/lib/module/shared/hooks/gestures/use-build-gestures.js +7 -1
  66. package/lib/module/shared/hooks/gestures/use-build-gestures.js.map +1 -1
  67. package/lib/module/shared/hooks/gestures/use-scroll-registry.js +12 -12
  68. package/lib/module/shared/hooks/gestures/use-scroll-registry.js.map +1 -1
  69. package/lib/module/shared/hooks/lifecycle/use-close-transition.js +5 -2
  70. package/lib/module/shared/hooks/lifecycle/use-close-transition.js.map +1 -1
  71. package/lib/module/shared/hooks/navigation/use-optimistic-focused-index.js +17 -0
  72. package/lib/module/shared/hooks/navigation/use-optimistic-focused-index.js.map +1 -0
  73. package/lib/module/shared/hooks/navigation/use-screen-state.js +2 -6
  74. package/lib/module/shared/hooks/navigation/use-screen-state.js.map +1 -1
  75. package/lib/module/shared/hooks/reanimated/use-shared-value-state.js +4 -1
  76. package/lib/module/shared/hooks/reanimated/use-shared-value-state.js.map +1 -1
  77. package/lib/module/shared/providers/gestures.provider.js +17 -6
  78. package/lib/module/shared/providers/gestures.provider.js.map +1 -1
  79. package/lib/module/shared/providers/layout-anchor.provider.js +7 -5
  80. package/lib/module/shared/providers/layout-anchor.provider.js.map +1 -1
  81. package/lib/module/shared/providers/screen/styles.provider.js +1 -6
  82. package/lib/module/shared/providers/screen/styles.provider.js.map +1 -1
  83. package/lib/module/shared/providers/stack/direct.provider.js +2 -1
  84. package/lib/module/shared/providers/stack/direct.provider.js.map +1 -1
  85. package/lib/module/shared/providers/stack/managed.provider.js +2 -1
  86. package/lib/module/shared/providers/stack/managed.provider.js.map +1 -1
  87. package/lib/module/shared/utils/gesture/determine-snap-target.js +9 -2
  88. package/lib/module/shared/utils/gesture/determine-snap-target.js.map +1 -1
  89. package/lib/module/shared/utils/gesture/find-collapse-target.js +11 -1
  90. package/lib/module/shared/utils/gesture/find-collapse-target.js.map +1 -1
  91. package/lib/module/shared/utils/gesture/validate-snap-points.js +11 -2
  92. package/lib/module/shared/utils/gesture/validate-snap-points.js.map +1 -1
  93. package/lib/module/shared/utils/overlay/visibility.js +12 -0
  94. package/lib/module/shared/utils/overlay/visibility.js.map +1 -0
  95. package/lib/typescript/blank-stack/components/stack-view.d.ts.map +1 -1
  96. package/lib/typescript/blank-stack/components/stack-view.native.d.ts.map +1 -1
  97. package/lib/typescript/component-stack/components/stack-view.d.ts.map +1 -1
  98. package/lib/typescript/shared/components/overlay/helpers/get-active-overlay.d.ts +1 -1
  99. package/lib/typescript/shared/components/overlay/helpers/get-active-overlay.d.ts.map +1 -1
  100. package/lib/typescript/shared/components/overlay/variations/float-overlay.d.ts.map +1 -1
  101. package/lib/typescript/shared/components/overlay/variations/overlay-host.d.ts +7 -0
  102. package/lib/typescript/shared/components/overlay/variations/overlay-host.d.ts.map +1 -1
  103. package/lib/typescript/shared/components/overlay/variations/screen-overlay.d.ts.map +1 -1
  104. package/lib/typescript/shared/components/screen-container.d.ts.map +1 -1
  105. package/lib/typescript/shared/hooks/gestures/use-build-gestures.d.ts.map +1 -1
  106. package/lib/typescript/shared/hooks/gestures/use-scroll-registry.d.ts.map +1 -1
  107. package/lib/typescript/shared/hooks/lifecycle/use-close-transition.d.ts.map +1 -1
  108. package/lib/typescript/shared/hooks/navigation/use-optimistic-focused-index.d.ts +7 -0
  109. package/lib/typescript/shared/hooks/navigation/use-optimistic-focused-index.d.ts.map +1 -0
  110. package/lib/typescript/shared/hooks/navigation/use-screen-state.d.ts.map +1 -1
  111. package/lib/typescript/shared/hooks/reanimated/use-shared-value-state.d.ts.map +1 -1
  112. package/lib/typescript/shared/providers/gestures.provider.d.ts.map +1 -1
  113. package/lib/typescript/shared/providers/layout-anchor.provider.d.ts +1 -1
  114. package/lib/typescript/shared/providers/layout-anchor.provider.d.ts.map +1 -1
  115. package/lib/typescript/shared/providers/screen/styles.provider.d.ts.map +1 -1
  116. package/lib/typescript/shared/providers/stack/direct.provider.d.ts.map +1 -1
  117. package/lib/typescript/shared/providers/stack/managed.provider.d.ts.map +1 -1
  118. package/lib/typescript/shared/types/screen.types.d.ts +16 -1
  119. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  120. package/lib/typescript/shared/utils/gesture/determine-snap-target.d.ts.map +1 -1
  121. package/lib/typescript/shared/utils/gesture/find-collapse-target.d.ts.map +1 -1
  122. package/lib/typescript/shared/utils/gesture/validate-snap-points.d.ts.map +1 -1
  123. package/lib/typescript/shared/utils/overlay/visibility.d.ts +11 -0
  124. package/lib/typescript/shared/utils/overlay/visibility.d.ts.map +1 -0
  125. package/package.json +8 -2
  126. package/src/blank-stack/components/stack-view.native.tsx +2 -1
  127. package/src/blank-stack/components/stack-view.tsx +2 -1
  128. package/src/component-stack/components/stack-view.tsx +2 -1
  129. package/src/shared/components/overlay/helpers/get-active-overlay.ts +3 -2
  130. package/src/shared/components/overlay/variations/float-overlay.tsx +53 -8
  131. package/src/shared/components/overlay/variations/overlay-host.tsx +16 -6
  132. package/src/shared/components/overlay/variations/screen-overlay.tsx +35 -3
  133. package/src/shared/components/screen-container.tsx +15 -9
  134. package/src/shared/hooks/gestures/use-build-gestures.tsx +5 -1
  135. package/src/shared/hooks/gestures/use-scroll-registry.tsx +10 -6
  136. package/src/shared/hooks/lifecycle/use-close-transition.ts +6 -3
  137. package/src/shared/hooks/navigation/use-optimistic-focused-index.ts +19 -0
  138. package/src/shared/hooks/navigation/use-screen-state.tsx +4 -7
  139. package/src/shared/hooks/reanimated/use-shared-value-state.ts +4 -1
  140. package/src/shared/providers/gestures.provider.tsx +49 -22
  141. package/src/shared/providers/layout-anchor.provider.tsx +28 -25
  142. package/src/shared/providers/screen/styles.provider.tsx +1 -7
  143. package/src/shared/providers/stack/direct.provider.tsx +2 -2
  144. package/src/shared/providers/stack/managed.provider.tsx +2 -2
  145. package/src/shared/types/screen.types.ts +17 -1
  146. package/src/shared/utils/gesture/determine-snap-target.ts +15 -4
  147. package/src/shared/utils/gesture/find-collapse-target.ts +11 -1
  148. package/src/shared/utils/gesture/validate-snap-points.ts +15 -2
  149. package/src/shared/utils/overlay/visibility.ts +23 -0
@@ -18,7 +18,17 @@ var _constants = require("../../constants");
18
18
  function findCollapseTarget(currentProgress, snapPoints, canDismiss) {
19
19
  "worklet";
20
20
 
21
- const sorted = [...snapPoints].sort((a, b) => a - b);
21
+ const normalized = snapPoints.filter(point => canDismiss ? Number.isFinite(point) : Number.isFinite(point) && point > 0);
22
+ if (normalized.length === 0) {
23
+ return canDismiss ? {
24
+ target: 0,
25
+ shouldDismiss: true
26
+ } : {
27
+ target: currentProgress,
28
+ shouldDismiss: false
29
+ };
30
+ }
31
+ const sorted = [...normalized].sort((a, b) => a - b);
22
32
  const minSnap = sorted[0];
23
33
 
24
34
  // Find next lower snap point
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","findCollapseTarget","currentProgress","snapPoints","canDismiss","sorted","sort","a","b","minSnap","i","length","EPSILON","target","shouldDismiss"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/find-collapse-target.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CACjCC,eAAuB,EACvBC,UAAoB,EACpBC,UAAmB,EACQ;EAC3B,SAAS;;EAET,MAAMC,MAAM,GAAG,CAAC,GAAGF,UAAU,CAAC,CAACG,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC;EACpD,MAAMC,OAAO,GAAGJ,MAAM,CAAC,CAAC,CAAC;;EAEzB;EACA,KAAK,IAAIK,CAAC,GAAGL,MAAM,CAACM,MAAM,GAAG,CAAC,EAAED,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IAC5C,IAAIL,MAAM,CAACK,CAAC,CAAC,GAAGR,eAAe,GAAGU,kBAAO,EAAE;MAC1C,OAAO;QAAEC,MAAM,EAAER,MAAM,CAACK,CAAC,CAAC;QAAEI,aAAa,EAAE;MAAM,CAAC;IACnD;EACD;;EAEA;EACA,IAAIV,UAAU,EAAE;IACf,OAAO;MAAES,MAAM,EAAE,CAAC;MAAEC,aAAa,EAAE;IAAK,CAAC;EAC1C;;EAEA;EACA,OAAO;IAAED,MAAM,EAAEJ,OAAO;IAAEK,aAAa,EAAE;EAAM,CAAC;AACjD","ignoreList":[]}
1
+ {"version":3,"names":["_constants","require","findCollapseTarget","currentProgress","snapPoints","canDismiss","normalized","filter","point","Number","isFinite","length","target","shouldDismiss","sorted","sort","a","b","minSnap","i","EPSILON"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/find-collapse-target.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CACjCC,eAAuB,EACvBC,UAAoB,EACpBC,UAAmB,EACQ;EAC3B,SAAS;;EAET,MAAMC,UAAU,GAAGF,UAAU,CAACG,MAAM,CAAEC,KAAK,IAC1CH,UAAU,GAAGI,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,GAAGC,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,IAAIA,KAAK,GAAG,CACzE,CAAC;EAED,IAAIF,UAAU,CAACK,MAAM,KAAK,CAAC,EAAE;IAC5B,OAAON,UAAU,GACd;MAAEO,MAAM,EAAE,CAAC;MAAEC,aAAa,EAAE;IAAK,CAAC,GAClC;MAAED,MAAM,EAAET,eAAe;MAAEU,aAAa,EAAE;IAAM,CAAC;EACrD;EAEA,MAAMC,MAAM,GAAG,CAAC,GAAGR,UAAU,CAAC,CAACS,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC;EACpD,MAAMC,OAAO,GAAGJ,MAAM,CAAC,CAAC,CAAC;;EAEzB;EACA,KAAK,IAAIK,CAAC,GAAGL,MAAM,CAACH,MAAM,GAAG,CAAC,EAAEQ,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IAC5C,IAAIL,MAAM,CAACK,CAAC,CAAC,GAAGhB,eAAe,GAAGiB,kBAAO,EAAE;MAC1C,OAAO;QAAER,MAAM,EAAEE,MAAM,CAACK,CAAC,CAAC;QAAEN,aAAa,EAAE;MAAM,CAAC;IACnD;EACD;;EAEA;EACA,IAAIR,UAAU,EAAE;IACf,OAAO;MAAEO,MAAM,EAAE,CAAC;MAAEC,aAAa,EAAE;IAAK,CAAC;EAC1C;;EAEA;EACA,OAAO;IAAED,MAAM,EAAEM,OAAO;IAAEL,aAAa,EAAE;EAAM,CAAC;AACjD","ignoreList":[]}
@@ -8,7 +8,7 @@ const validateSnapPoints = ({
8
8
  snapPoints,
9
9
  canDismiss
10
10
  }) => {
11
- if (!snapPoints) {
11
+ if (!snapPoints || snapPoints.length === 0) {
12
12
  return {
13
13
  hasSnapPoints: false,
14
14
  snapPoints: [],
@@ -16,7 +16,16 @@ const validateSnapPoints = ({
16
16
  maxSnapPoint: -1
17
17
  };
18
18
  }
19
- const sortedSnaps = snapPoints.slice().sort((a, b) => a - b);
19
+ const normalizedSnaps = snapPoints.filter(point => canDismiss ? Number.isFinite(point) : Number.isFinite(point) && point > 0);
20
+ if (normalizedSnaps.length === 0) {
21
+ return {
22
+ hasSnapPoints: false,
23
+ snapPoints: [],
24
+ minSnapPoint: -1,
25
+ maxSnapPoint: -1
26
+ };
27
+ }
28
+ const sortedSnaps = normalizedSnaps.slice().sort((a, b) => a - b);
20
29
  // Clamp to snap point bounds (dismiss at 0 only if allowed)
21
30
  const minProgress = canDismiss ? 0 : sortedSnaps[0];
22
31
  const maxProgress = sortedSnaps[sortedSnaps.length - 1];
@@ -1 +1 @@
1
- {"version":3,"names":["validateSnapPoints","snapPoints","canDismiss","hasSnapPoints","minSnapPoint","maxSnapPoint","sortedSnaps","slice","sort","a","b","minProgress","maxProgress","length","exports"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/validate-snap-points.ts"],"mappings":";;;;;;AAYO,MAAMA,kBAAkB,GAAGA,CAAC;EAClCC,UAAU;EACVC;AAC0B,CAAC,KAA+B;EAC1D,IAAI,CAACD,UAAU,EAAE;IAChB,OAAO;MACNE,aAAa,EAAE,KAAK;MACpBF,UAAU,EAAE,EAAE;MACdG,YAAY,EAAE,CAAC,CAAC;MAChBC,YAAY,EAAE,CAAC;IAChB,CAAC;EACF;EAEA,MAAMC,WAAW,GAAGL,UAAU,CAACM,KAAK,CAAC,CAAC,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC;EAC5D;EACA,MAAMC,WAAW,GAAGT,UAAU,GAAG,CAAC,GAAGI,WAAW,CAAC,CAAC,CAAC;EACnD,MAAMM,WAAW,GAAGN,WAAW,CAACA,WAAW,CAACO,MAAM,GAAG,CAAC,CAAC;EAEvD,OAAO;IACNV,aAAa,EAAE,IAAI;IACnBF,UAAU,EAAEK,WAAW;IACvBF,YAAY,EAAEO,WAAW;IACzBN,YAAY,EAAEO;EACf,CAAC;AACF,CAAC;AAACE,OAAA,CAAAd,kBAAA,GAAAA,kBAAA","ignoreList":[]}
1
+ {"version":3,"names":["validateSnapPoints","snapPoints","canDismiss","length","hasSnapPoints","minSnapPoint","maxSnapPoint","normalizedSnaps","filter","point","Number","isFinite","sortedSnaps","slice","sort","a","b","minProgress","maxProgress","exports"],"sourceRoot":"../../../../../src","sources":["shared/utils/gesture/validate-snap-points.ts"],"mappings":";;;;;;AAYO,MAAMA,kBAAkB,GAAGA,CAAC;EAClCC,UAAU;EACVC;AAC0B,CAAC,KAA+B;EAC1D,IAAI,CAACD,UAAU,IAAIA,UAAU,CAACE,MAAM,KAAK,CAAC,EAAE;IAC3C,OAAO;MACNC,aAAa,EAAE,KAAK;MACpBH,UAAU,EAAE,EAAE;MACdI,YAAY,EAAE,CAAC,CAAC;MAChBC,YAAY,EAAE,CAAC;IAChB,CAAC;EACF;EAEA,MAAMC,eAAe,GAAGN,UAAU,CAACO,MAAM,CAAEC,KAAK,IAC/CP,UAAU,GAAGQ,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,GAAGC,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,IAAIA,KAAK,GAAG,CACzE,CAAC;EAED,IAAIF,eAAe,CAACJ,MAAM,KAAK,CAAC,EAAE;IACjC,OAAO;MACNC,aAAa,EAAE,KAAK;MACpBH,UAAU,EAAE,EAAE;MACdI,YAAY,EAAE,CAAC,CAAC;MAChBC,YAAY,EAAE,CAAC;IAChB,CAAC;EACF;EAEA,MAAMM,WAAW,GAAGL,eAAe,CAACM,KAAK,CAAC,CAAC,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC;EACjE;EACA,MAAMC,WAAW,GAAGf,UAAU,GAAG,CAAC,GAAGU,WAAW,CAAC,CAAC,CAAC;EACnD,MAAMM,WAAW,GAAGN,WAAW,CAACA,WAAW,CAACT,MAAM,GAAG,CAAC,CAAC;EAEvD,OAAO;IACNC,aAAa,EAAE,IAAI;IACnBH,UAAU,EAAEW,WAAW;IACvBP,YAAY,EAAEY,WAAW;IACzBX,YAAY,EAAEY;EACf,CAAC;AACF,CAAC;AAACC,OAAA,CAAAnB,kBAAA,GAAAA,kBAAA","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isScreenOverlayVisible = exports.isOverlayVisible = exports.isFloatOverlayVisible = void 0;
7
+ const isOverlayVisible = options => {
8
+ return Boolean(options?.overlay) && options?.overlayShown !== false;
9
+ };
10
+ exports.isOverlayVisible = isOverlayVisible;
11
+ const isFloatOverlayVisible = options => {
12
+ return isOverlayVisible(options) && options?.overlayMode !== "screen";
13
+ };
14
+ exports.isFloatOverlayVisible = isFloatOverlayVisible;
15
+ const isScreenOverlayVisible = options => {
16
+ return isOverlayVisible(options) && options?.overlayMode === "screen";
17
+ };
18
+ exports.isScreenOverlayVisible = isScreenOverlayVisible;
19
+ //# sourceMappingURL=visibility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isOverlayVisible","options","Boolean","overlay","overlayShown","exports","isFloatOverlayVisible","overlayMode","isScreenOverlayVisible"],"sourceRoot":"../../../../../src","sources":["shared/utils/overlay/visibility.ts"],"mappings":";;;;;;AAQO,MAAMA,gBAAgB,GAAIC,OAA4B,IAAc;EAC1E,OAAOC,OAAO,CAACD,OAAO,EAAEE,OAAO,CAAC,IAAIF,OAAO,EAAEG,YAAY,KAAK,KAAK;AACpE,CAAC;AAACC,OAAA,CAAAL,gBAAA,GAAAA,gBAAA;AAEK,MAAMM,qBAAqB,GACjCL,OAA4B,IACf;EACb,OAAOD,gBAAgB,CAACC,OAAO,CAAC,IAAIA,OAAO,EAAEM,WAAW,KAAK,QAAQ;AACtE,CAAC;AAACF,OAAA,CAAAC,qBAAA,GAAAA,qBAAA;AAEK,MAAME,sBAAsB,GAClCP,OAA4B,IACf;EACb,OAAOD,gBAAgB,CAACC,OAAO,CAAC,IAAIA,OAAO,EAAEM,WAAW,KAAK,QAAQ;AACtE,CAAC;AAACF,OAAA,CAAAG,sBAAA,GAAAA,sBAAA","ignoreList":[]}
@@ -9,6 +9,7 @@ import { Overlay } from "../../shared/components/overlay";
9
9
  import { ScreenComposer } from "../../shared/providers/screen/screen-composer";
10
10
  import { withStackCore } from "../../shared/providers/stack/core.provider";
11
11
  import { withManagedStack } from "../../shared/providers/stack/managed.provider";
12
+ import { isScreenOverlayVisible } from "../../shared/utils/overlay/visibility";
12
13
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
14
  function isFabric() {
14
15
  return "nativeFabricUIManager" in global;
@@ -25,7 +26,7 @@ const SceneView = /*#__PURE__*/React.memo(function SceneView({
25
26
  value: navigation,
26
27
  children: /*#__PURE__*/_jsxs(NavigationRouteContext.Provider, {
27
28
  value: route,
28
- children: [descriptor.options.overlayMode === "screen" && /*#__PURE__*/_jsx(Overlay.Screen, {}), render()]
29
+ children: [isScreenOverlayVisible(descriptor.options) && /*#__PURE__*/_jsx(Overlay.Screen, {}), render()]
29
30
  })
30
31
  });
31
32
  });
@@ -1 +1 @@
1
- {"version":3,"names":["NavigationContext","NavigationRouteContext","React","Fragment","NativeScreen","NativeScreenContainer","Overlay","ScreenComposer","withStackCore","withManagedStack","jsx","_jsx","jsxs","_jsxs","isFabric","global","SceneView","memo","descriptor","route","navigation","render","Provider","value","children","options","overlayMode","Screen","StackView","TRANSITIONS_ALWAYS_ON","DISABLE_NATIVE_SCREENS","descriptors","focusedIndex","scenes","shouldShowFloatOverlay","Float","map","scene","sceneIndex","isFocused","isBelowFocused","previousDescriptor","undefined","nextDescriptor","isPreloaded","key","shouldFreeze","index","routeKey","freezeOnBlur","previous","current","next"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NavigationContext","NavigationRouteContext","React","Fragment","NativeScreen","NativeScreenContainer","Overlay","ScreenComposer","withStackCore","withManagedStack","isScreenOverlayVisible","jsx","_jsx","jsxs","_jsxs","isFabric","global","SceneView","memo","descriptor","route","navigation","render","Provider","value","children","options","Screen","StackView","TRANSITIONS_ALWAYS_ON","DISABLE_NATIVE_SCREENS","descriptors","focusedIndex","scenes","shouldShowFloatOverlay","Float","map","scene","sceneIndex","isFocused","isBelowFocused","previousDescriptor","undefined","nextDescriptor","isPreloaded","key","shouldFreeze","index","routeKey","freezeOnBlur","previous","current","next"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.tsx"],"mappings":"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","ignoreList":[]}
@@ -9,6 +9,7 @@ import { Overlay } from "../../shared/components/overlay";
9
9
  import { ScreenComposer } from "../../shared/providers/screen/screen-composer";
10
10
  import { withStackCore } from "../../shared/providers/stack/core.provider";
11
11
  import { withManagedStack } from "../../shared/providers/stack/managed.provider";
12
+ import { isScreenOverlayVisible } from "../../shared/utils/overlay/visibility";
12
13
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
14
  function isFabric() {
14
15
  return "nativeFabricUIManager" in global;
@@ -25,7 +26,7 @@ const SceneView = /*#__PURE__*/React.memo(function SceneView({
25
26
  value: navigation,
26
27
  children: /*#__PURE__*/_jsxs(NavigationRouteContext.Provider, {
27
28
  value: route,
28
- children: [descriptor.options.overlayMode === "screen" && /*#__PURE__*/_jsx(Overlay.Screen, {}), render()]
29
+ children: [isScreenOverlayVisible(descriptor.options) && /*#__PURE__*/_jsx(Overlay.Screen, {}), render()]
29
30
  })
30
31
  });
31
32
  });
@@ -1 +1 @@
1
- {"version":3,"names":["NavigationContext","NavigationRouteContext","React","Fragment","NativeScreen","NativeScreenContainer","Overlay","ScreenComposer","withStackCore","withManagedStack","jsx","_jsx","jsxs","_jsxs","isFabric","global","SceneView","memo","descriptor","route","navigation","render","Provider","value","children","options","overlayMode","Screen","StackView","TRANSITIONS_ALWAYS_ON","DISABLE_NATIVE_SCREENS","descriptors","focusedIndex","scenes","shouldShowFloatOverlay","Float","map","scene","sceneIndex","isFocused","isBelowFocused","previousDescriptor","undefined","nextDescriptor","isPreloaded","key","shouldFreeze","index","routeKey","freezeOnBlur","previous","current","next"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.native.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NavigationContext","NavigationRouteContext","React","Fragment","NativeScreen","NativeScreenContainer","Overlay","ScreenComposer","withStackCore","withManagedStack","isScreenOverlayVisible","jsx","_jsx","jsxs","_jsxs","isFabric","global","SceneView","memo","descriptor","route","navigation","render","Provider","value","children","options","Screen","StackView","TRANSITIONS_ALWAYS_ON","DISABLE_NATIVE_SCREENS","descriptors","focusedIndex","scenes","shouldShowFloatOverlay","Float","map","scene","sceneIndex","isFocused","isBelowFocused","previousDescriptor","undefined","nextDescriptor","isPreloaded","key","shouldFreeze","index","routeKey","freezeOnBlur","previous","current","next"],"sourceRoot":"../../../../src","sources":["blank-stack/components/stack-view.native.tsx"],"mappings":"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","ignoreList":[]}
@@ -8,6 +8,7 @@ import { ScreenComposer } from "../../shared/providers/screen/screen-composer";
8
8
  import { withStackCore } from "../../shared/providers/stack/core.provider";
9
9
  import { withManagedStack } from "../../shared/providers/stack/managed.provider";
10
10
  import { StackType } from "../../shared/types/stack.types";
11
+ import { isScreenOverlayVisible } from "../../shared/utils/overlay/visibility";
11
12
  import { ComponentScreen } from "./component-screen";
12
13
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
14
  const SceneView = /*#__PURE__*/React.memo(function SceneView({
@@ -22,7 +23,7 @@ const SceneView = /*#__PURE__*/React.memo(function SceneView({
22
23
  value: navigation,
23
24
  children: /*#__PURE__*/_jsxs(NavigationRouteContext.Provider, {
24
25
  value: route,
25
- children: [descriptor.options.overlayMode === "screen" && /*#__PURE__*/_jsx(Overlay.Screen, {}), render()]
26
+ children: [isScreenOverlayVisible(descriptor.options) && /*#__PURE__*/_jsx(Overlay.Screen, {}), render()]
26
27
  })
27
28
  });
28
29
  });
@@ -1 +1 @@
1
- {"version":3,"names":["NavigationContext","NavigationRouteContext","React","Fragment","Overlay","ScreenComposer","withStackCore","withManagedStack","StackType","ComponentScreen","jsx","_jsx","jsxs","_jsxs","SceneView","memo","descriptor","route","navigation","render","Provider","value","children","options","overlayMode","Screen","StackView","TRANSITIONS_ALWAYS_ON","STACK_TYPE","COMPONENT","scenes","shouldShowFloatOverlay","Float","map","scene","sceneIndex","previousDescriptor","undefined","nextDescriptor","routeKey","key","previous","current","next"],"sourceRoot":"../../../../src","sources":["component-stack/components/stack-view.tsx"],"mappings":";;AAAA,SACCA,iBAAiB,EACjBC,sBAAsB,QAChB,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAASC,QAAQ,QAAQ,OAAO;AAChC,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,cAAc,QAAQ,+CAA+C;AAC9E,SAASC,aAAa,QAAQ,4CAA4C;AAC1E,SAASC,gBAAgB,QAAQ,+CAA+C;AAChF,SAASC,SAAS,QAAQ,gCAAgC;AAK1D,SAASC,eAAe,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMrD,MAAMC,SAAS,gBAAGZ,KAAK,CAACa,IAAI,CAAC,SAASD,SAASA,CAAC;EAC/CE;AACe,CAAC,EAAE;EAClB,MAAM;IAAEC,KAAK;IAAEC,UAAU;IAAEC;EAAO,CAAC,GAAGH,UAAU;EAEhD,oBACCL,IAAA,CAACX,iBAAiB,CAACoB,QAAQ;IAACC,KAAK,EAAEH,UAAW;IAAAI,QAAA,eAC7CT,KAAA,CAACZ,sBAAsB,CAACmB,QAAQ;MAACC,KAAK,EAAEJ,KAAM;MAAAK,QAAA,GAC5CN,UAAU,CAACO,OAAO,CAACC,WAAW,KAAK,QAAQ,iBAAIb,IAAA,CAACP,OAAO,CAACqB,MAAM,IAAE,CAAC,EACjEN,MAAM,CAAC,CAAC;IAAA,CACuB;EAAC,CACP,CAAC;AAE/B,CAAC,CAAC;AAEF,OAAO,MAAMO,SAAS,GAAGpB,aAAa,CACrC;EAAEqB,qBAAqB,EAAE,IAAI;EAAEC,UAAU,EAAEpB,SAAS,CAACqB;AAAU,CAAC,EAChEtB,gBAAgB,CACf,CAAC;EAAEuB,MAAM;EAAEC;AAAuB,CAAC,KAAK;EACvC,oBACClB,KAAA,CAACV,QAAQ;IAAAmB,QAAA,GACPS,sBAAsB,gBAAGpB,IAAA,CAACP,OAAO,CAAC4B,KAAK,IAAE,CAAC,GAAG,IAAI,EAEjDF,MAAM,CAACG,GAAG,CAAC,CAACC,KAAK,EAAEC,UAAU,KAAK;MAClC,MAAMnB,UAAU,GAAGkB,KAAK,CAAClB,UAAU;MACnC,MAAMC,KAAK,GAAGiB,KAAK,CAACjB,KAAK;MAEzB,MAAMmB,kBAAkB,GACvBN,MAAM,CAACK,UAAU,GAAG,CAAC,CAAC,EAAEnB,UAAU,IAAIqB,SAAS;MAChD,MAAMC,cAAc,GACnBR,MAAM,CAACK,UAAU,GAAG,CAAC,CAAC,EAAEnB,UAAU,IAAIqB,SAAS;MAEhD,oBACC1B,IAAA,CAACF,eAAe;QAAiB8B,QAAQ,EAAEtB,KAAK,CAACuB,GAAI;QAAAlB,QAAA,eACpDX,IAAA,CAACN,cAAc;UACdoC,QAAQ,EAAEL,kBAAmB;UAC7BM,OAAO,EAAE1B,UAAW;UACpB2B,IAAI,EAAEL,cAAe;UAAAhB,QAAA,eAErBX,IAAA,CAACG,SAAS;YAAiBE,UAAU,EAAEA;UAAW,GAAlCC,KAAK,CAACuB,GAA8B;QAAC,CACtC;MAAC,GAPIvB,KAAK,CAACuB,GAQX,CAAC;IAEpB,CAAC,CAAC;EAAA,CACO,CAAC;AAEb,CACD,CACD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["NavigationContext","NavigationRouteContext","React","Fragment","Overlay","ScreenComposer","withStackCore","withManagedStack","StackType","isScreenOverlayVisible","ComponentScreen","jsx","_jsx","jsxs","_jsxs","SceneView","memo","descriptor","route","navigation","render","Provider","value","children","options","Screen","StackView","TRANSITIONS_ALWAYS_ON","STACK_TYPE","COMPONENT","scenes","shouldShowFloatOverlay","Float","map","scene","sceneIndex","previousDescriptor","undefined","nextDescriptor","routeKey","key","previous","current","next"],"sourceRoot":"../../../../src","sources":["component-stack/components/stack-view.tsx"],"mappings":";;AAAA,SACCA,iBAAiB,EACjBC,sBAAsB,QAChB,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAASC,QAAQ,QAAQ,OAAO;AAChC,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,cAAc,QAAQ,+CAA+C;AAC9E,SAASC,aAAa,QAAQ,4CAA4C;AAC1E,SAASC,gBAAgB,QAAQ,+CAA+C;AAChF,SAASC,SAAS,QAAQ,gCAAgC;AAC1D,SAASC,sBAAsB,QAAQ,uCAAuC;AAK9E,SAASC,eAAe,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMrD,MAAMC,SAAS,gBAAGb,KAAK,CAACc,IAAI,CAAC,SAASD,SAASA,CAAC;EAC/CE;AACe,CAAC,EAAE;EAClB,MAAM;IAAEC,KAAK;IAAEC,UAAU;IAAEC;EAAO,CAAC,GAAGH,UAAU;EAEhD,oBACCL,IAAA,CAACZ,iBAAiB,CAACqB,QAAQ;IAACC,KAAK,EAAEH,UAAW;IAAAI,QAAA,eAC7CT,KAAA,CAACb,sBAAsB,CAACoB,QAAQ;MAACC,KAAK,EAAEJ,KAAM;MAAAK,QAAA,GAC5Cd,sBAAsB,CAACQ,UAAU,CAACO,OAAO,CAAC,iBAAIZ,IAAA,CAACR,OAAO,CAACqB,MAAM,IAAE,CAAC,EAChEL,MAAM,CAAC,CAAC;IAAA,CACuB;EAAC,CACP,CAAC;AAE/B,CAAC,CAAC;AAEF,OAAO,MAAMM,SAAS,GAAGpB,aAAa,CACrC;EAAEqB,qBAAqB,EAAE,IAAI;EAAEC,UAAU,EAAEpB,SAAS,CAACqB;AAAU,CAAC,EAChEtB,gBAAgB,CACf,CAAC;EAAEuB,MAAM;EAAEC;AAAuB,CAAC,KAAK;EACvC,oBACCjB,KAAA,CAACX,QAAQ;IAAAoB,QAAA,GACPQ,sBAAsB,gBAAGnB,IAAA,CAACR,OAAO,CAAC4B,KAAK,IAAE,CAAC,GAAG,IAAI,EAEjDF,MAAM,CAACG,GAAG,CAAC,CAACC,KAAK,EAAEC,UAAU,KAAK;MAClC,MAAMlB,UAAU,GAAGiB,KAAK,CAACjB,UAAU;MACnC,MAAMC,KAAK,GAAGgB,KAAK,CAAChB,KAAK;MAEzB,MAAMkB,kBAAkB,GACvBN,MAAM,CAACK,UAAU,GAAG,CAAC,CAAC,EAAElB,UAAU,IAAIoB,SAAS;MAChD,MAAMC,cAAc,GACnBR,MAAM,CAACK,UAAU,GAAG,CAAC,CAAC,EAAElB,UAAU,IAAIoB,SAAS;MAEhD,oBACCzB,IAAA,CAACF,eAAe;QAAiB6B,QAAQ,EAAErB,KAAK,CAACsB,GAAI;QAAAjB,QAAA,eACpDX,IAAA,CAACP,cAAc;UACdoC,QAAQ,EAAEL,kBAAmB;UAC7BM,OAAO,EAAEzB,UAAW;UACpB0B,IAAI,EAAEL,cAAe;UAAAf,QAAA,eAErBX,IAAA,CAACG,SAAS;YAAiBE,UAAU,EAAEA;UAAW,GAAlCC,KAAK,CAACsB,GAA8B;QAAC,CACtC;MAAC,GAPItB,KAAK,CAACsB,GAQX,CAAC;IAEpB,CAAC,CAAC;EAAA,CACO,CAAC;AAEb,CACD,CACD,CAAC","ignoreList":[]}
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ import { isFloatOverlayVisible } from "../../../utils/overlay/visibility";
4
+
3
5
  /**
4
6
  * Find the active float overlay from scenes.
5
7
  * Scans from the top of the stack downward to find the first screen
6
- * with overlayMode="float" and overlayShown=true.
8
+ * with a visible overlay that isn't explicitly set to legacy screen mode.
7
9
  */
8
10
  export function getActiveFloatOverlay(scenes, index, transitionsAlwaysOn) {
9
11
  if (scenes.length === 0) {
@@ -23,7 +25,7 @@ export function getActiveFloatOverlay(scenes, index, transitionsAlwaysOn) {
23
25
  if (!transitionsAlwaysOn && !options?.enableTransitions) {
24
26
  continue;
25
27
  }
26
- if (options?.overlayMode === "float" && options?.overlayShown) {
28
+ if (isFloatOverlayVisible(options)) {
27
29
  return {
28
30
  scene,
29
31
  overlayIndex: i
@@ -1 +1 @@
1
- {"version":3,"names":["getActiveFloatOverlay","scenes","index","transitionsAlwaysOn","length","startIndex","Math","max","i","scene","options","descriptor","enableTransitions","overlayMode","overlayShown","overlayIndex"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/helpers/get-active-overlay.ts"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,qBAAqBA,CACpCC,MAAoB,EACpBC,KAAa,EACbC,mBAA4B,EACyB;EACrD,IAAIF,MAAM,CAACG,MAAM,KAAK,CAAC,EAAE;IACxB,OAAO,IAAI;EACZ;;EAEA;EACA;EACA;EACA;EACA,MAAMC,UAAU,GAAGC,IAAI,CAACC,GAAG,CAACL,KAAK,EAAED,MAAM,CAACG,MAAM,GAAG,CAAC,CAAC;EAErD,KAAK,IAAII,CAAC,GAAGH,UAAU,EAAEG,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IACrC,MAAMC,KAAK,GAAGR,MAAM,CAACO,CAAC,CAAC;IACvB,MAAME,OAAO,GAAGD,KAAK,EAAEE,UAAU,EAAED,OAAO;;IAE1C;IACA,IAAI,CAACP,mBAAmB,IAAI,CAACO,OAAO,EAAEE,iBAAiB,EAAE;MACxD;IACD;IAEA,IAAIF,OAAO,EAAEG,WAAW,KAAK,OAAO,IAAIH,OAAO,EAAEI,YAAY,EAAE;MAC9D,OAAO;QAAEL,KAAK;QAAEM,YAAY,EAAEP;MAAE,CAAC;IAClC;EACD;EAEA,OAAO,IAAI;AACZ","ignoreList":[]}
1
+ {"version":3,"names":["isFloatOverlayVisible","getActiveFloatOverlay","scenes","index","transitionsAlwaysOn","length","startIndex","Math","max","i","scene","options","descriptor","enableTransitions","overlayIndex"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/helpers/get-active-overlay.ts"],"mappings":";;AACA,SAASA,qBAAqB,QAAQ,mCAAmC;;AAEzE;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CACpCC,MAAoB,EACpBC,KAAa,EACbC,mBAA4B,EACyB;EACrD,IAAIF,MAAM,CAACG,MAAM,KAAK,CAAC,EAAE;IACxB,OAAO,IAAI;EACZ;;EAEA;EACA;EACA;EACA;EACA,MAAMC,UAAU,GAAGC,IAAI,CAACC,GAAG,CAACL,KAAK,EAAED,MAAM,CAACG,MAAM,GAAG,CAAC,CAAC;EAErD,KAAK,IAAII,CAAC,GAAGH,UAAU,EAAEG,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IACrC,MAAMC,KAAK,GAAGR,MAAM,CAACO,CAAC,CAAC;IACvB,MAAME,OAAO,GAAGD,KAAK,EAAEE,UAAU,EAAED,OAAO;;IAE1C;IACA,IAAI,CAACP,mBAAmB,IAAI,CAACO,OAAO,EAAEE,iBAAiB,EAAE;MACxD;IACD;IAEA,IAAIb,qBAAqB,CAACW,OAAO,CAAC,EAAE;MACnC,OAAO;QAAED,KAAK;QAAEI,YAAY,EAAEL;MAAE,CAAC;IAClC;EACD;EAEA,OAAO,IAAI;AACZ","ignoreList":[]}
@@ -1,41 +1,77 @@
1
1
  "use strict";
2
2
 
3
3
  import { useMemo } from "react";
4
+ import { snapDescriptorToIndex } from "../../../animation/snap-to";
5
+ import { useOptimisticFocusedIndex } from "../../../hooks/navigation/use-optimistic-focused-index";
4
6
  import { useStack } from "../../../hooks/navigation/use-stack";
5
7
  import { KeysProvider } from "../../../providers/screen/keys.provider";
6
8
  import { ScreenStylesProvider } from "../../../providers/screen/styles.provider";
7
9
  import { getActiveFloatOverlay } from "../helpers/get-active-overlay";
8
10
  import { OverlayHost } from "./overlay-host";
9
-
11
+ import { jsx as _jsx } from "react/jsx-runtime";
10
12
  /**
11
13
  * Float overlay component that renders above all screens.
12
14
  * Gets routes and descriptors from stack context.
13
15
  */
14
- import { jsx as _jsx } from "react/jsx-runtime";
15
16
  export function FloatOverlay() {
16
17
  const {
17
18
  scenes,
18
- focusedIndex,
19
- flags
19
+ optimisticFocusedIndex,
20
+ flags,
21
+ routes,
22
+ routeKeys
20
23
  } = useStack();
24
+ const focusedIndex = useOptimisticFocusedIndex(optimisticFocusedIndex, routeKeys.length);
21
25
  const activeOverlay = useMemo(() => getActiveFloatOverlay(scenes, focusedIndex, flags.TRANSITIONS_ALWAYS_ON), [scenes, focusedIndex, flags.TRANSITIONS_ALWAYS_ON]);
22
- if (!activeOverlay) {
26
+ const overlayData = useMemo(() => {
27
+ if (!activeOverlay) return null;
28
+ const {
29
+ scene,
30
+ overlayIndex
31
+ } = activeOverlay;
32
+ const previous = scenes[overlayIndex - 1]?.descriptor;
33
+ const current = scene.descriptor;
34
+ const next = scenes[overlayIndex + 1]?.descriptor;
35
+ const focusedScene = scenes[focusedIndex] ?? scenes[scenes.length - 1];
36
+ const focusedDescriptor = focusedScene?.descriptor;
37
+ const overlayScreenState = {
38
+ index: routeKeys.indexOf(current.route.key),
39
+ options: focusedDescriptor?.options ?? {},
40
+ routes,
41
+ focusedRoute: focusedScene?.route ?? current.route,
42
+ focusedIndex,
43
+ meta: focusedDescriptor?.options?.meta,
44
+ navigation: current.navigation,
45
+ snapTo: index => {
46
+ snapDescriptorToIndex(current, index);
47
+ }
48
+ };
49
+ return {
50
+ scene,
51
+ previous,
52
+ current,
53
+ next,
54
+ overlayScreenState
55
+ };
56
+ }, [activeOverlay, scenes, focusedIndex, routeKeys, routes]);
57
+ if (!overlayData) {
23
58
  return null;
24
59
  }
25
60
  const {
26
61
  scene,
27
- overlayIndex
28
- } = activeOverlay;
29
- const previous = scenes[overlayIndex - 1]?.descriptor;
30
- const current = scene.descriptor;
31
- const next = scenes[overlayIndex + 1]?.descriptor;
62
+ previous,
63
+ current,
64
+ next,
65
+ overlayScreenState
66
+ } = overlayData;
32
67
  return /*#__PURE__*/_jsx(KeysProvider, {
33
68
  current: current,
34
69
  previous: previous,
35
70
  next: next,
36
71
  children: /*#__PURE__*/_jsx(ScreenStylesProvider, {
37
72
  children: /*#__PURE__*/_jsx(OverlayHost, {
38
- scene: scene
73
+ scene: scene,
74
+ overlayScreenState: overlayScreenState
39
75
  })
40
76
  })
41
77
  });
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useStack","KeysProvider","ScreenStylesProvider","getActiveFloatOverlay","OverlayHost","jsx","_jsx","FloatOverlay","scenes","focusedIndex","flags","activeOverlay","TRANSITIONS_ALWAYS_ON","scene","overlayIndex","previous","descriptor","current","next","children"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/variations/float-overlay.tsx"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,QAAQ,QAAQ,qCAAqC;AAC9D,SAASC,YAAY,QAAQ,yCAAyC;AACtE,SAASC,oBAAoB,QAAQ,2CAA2C;AAChF,SAASC,qBAAqB,QAAQ,+BAA+B;AACrE,SAASC,WAAW,QAAQ,gBAAgB;;AAE5C;AACA;AACA;AACA;AAHA,SAAAC,GAAA,IAAAC,IAAA;AAIA,OAAO,SAASC,YAAYA,CAAA,EAAG;EAC9B,MAAM;IAAEC,MAAM;IAAEC,YAAY;IAAEC;EAAM,CAAC,GAAGV,QAAQ,CAAC,CAAC;EAElD,MAAMW,aAAa,GAAGZ,OAAO,CAC5B,MACCI,qBAAqB,CAACK,MAAM,EAAEC,YAAY,EAAEC,KAAK,CAACE,qBAAqB,CAAC,EACzE,CAACJ,MAAM,EAAEC,YAAY,EAAEC,KAAK,CAACE,qBAAqB,CACnD,CAAC;EAED,IAAI,CAACD,aAAa,EAAE;IACnB,OAAO,IAAI;EACZ;EAEA,MAAM;IAAEE,KAAK;IAAEC;EAAa,CAAC,GAAGH,aAAa;EAE7C,MAAMI,QAAQ,GAAGP,MAAM,CAACM,YAAY,GAAG,CAAC,CAAC,EAAEE,UAAU;EACrD,MAAMC,OAAO,GAAGJ,KAAK,CAACG,UAAU;EAChC,MAAME,IAAI,GAAGV,MAAM,CAACM,YAAY,GAAG,CAAC,CAAC,EAAEE,UAAU;EAEjD,oBACCV,IAAA,CAACL,YAAY;IAACgB,OAAO,EAAEA,OAAQ;IAACF,QAAQ,EAAEA,QAAS;IAACG,IAAI,EAAEA,IAAK;IAAAC,QAAA,eAC9Db,IAAA,CAACJ,oBAAoB;MAAAiB,QAAA,eACpBb,IAAA,CAACF,WAAW;QAACS,KAAK,EAAEA;MAAM,CAAE;IAAC,CACR;EAAC,CACV,CAAC;AAEjB","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","snapDescriptorToIndex","useOptimisticFocusedIndex","useStack","KeysProvider","ScreenStylesProvider","getActiveFloatOverlay","OverlayHost","jsx","_jsx","FloatOverlay","scenes","optimisticFocusedIndex","flags","routes","routeKeys","focusedIndex","length","activeOverlay","TRANSITIONS_ALWAYS_ON","overlayData","scene","overlayIndex","previous","descriptor","current","next","focusedScene","focusedDescriptor","overlayScreenState","index","indexOf","route","key","options","focusedRoute","meta","navigation","snapTo","children"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/variations/float-overlay.tsx"],"mappings":"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","ignoreList":[]}
@@ -6,16 +6,15 @@ import { Animated, StyleSheet, useWindowDimensions, View } from "react-native";
6
6
  import { useDerivedValue } from "react-native-reanimated";
7
7
  import { useSafeAreaInsets } from "react-native-safe-area-context";
8
8
  import { useScreenAnimation } from "../../../hooks/animation/use-screen-animation";
9
- import { useScreenState } from "../../../hooks/navigation/use-screen-state";
10
9
  import { jsx as _jsx } from "react/jsx-runtime";
11
10
  export const OverlayHost = /*#__PURE__*/memo(function OverlayHost({
12
- scene
11
+ scene,
12
+ overlayScreenState
13
13
  }) {
14
14
  const OverlayComponent = scene.descriptor.options.overlay;
15
15
  const screen = useWindowDimensions();
16
16
  const insets = useSafeAreaInsets();
17
17
  const screenAnimation = useScreenAnimation();
18
- const screenState = useScreenState();
19
18
  const relativeProgress = useDerivedValue(() => {
20
19
  "worklet";
21
20
 
@@ -29,12 +28,13 @@ export const OverlayHost = /*#__PURE__*/memo(function OverlayHost({
29
28
  insets
30
29
  }));
31
30
  const overlayProps = useMemo(() => ({
32
- ...screenState,
31
+ ...overlayScreenState,
33
32
  progress: relativeProgress,
33
+ /**@deprecated */
34
34
  overlayAnimation,
35
- //Deprecated
36
- screenAnimation //Deprecated
37
- }), [relativeProgress, overlayAnimation, screenAnimation, screenState]);
35
+ /**@deprecated */
36
+ screenAnimation
37
+ }), [relativeProgress, overlayAnimation, screenAnimation, overlayScreenState]);
38
38
  if (!OverlayComponent) {
39
39
  return null;
40
40
  }
@@ -1 +1 @@
1
- {"version":3,"names":["NavigationContext","NavigationRouteContext","memo","useMemo","Animated","StyleSheet","useWindowDimensions","View","useDerivedValue","useSafeAreaInsets","useScreenAnimation","useScreenState","jsx","_jsx","OverlayHost","scene","OverlayComponent","descriptor","options","overlay","screen","insets","screenAnimation","screenState","relativeProgress","value","stackProgress","overlayAnimation","progress","layouts","overlayProps","pointerEvents","style","styles","container","floating","absolute","children","Provider","navigation","route","create","absoluteFillObject","zIndex","flex"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/variations/overlay-host.tsx"],"mappings":";;AAAA,SACCA,iBAAiB,EACjBC,sBAAsB,QAChB,0BAA0B;AACjC,SAASC,IAAI,EAAEC,OAAO,QAAQ,OAAO;AACrC,SAASC,QAAQ,EAAEC,UAAU,EAAEC,mBAAmB,EAAEC,IAAI,QAAQ,cAAc;AAC9E,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,kBAAkB,QAAQ,+CAA+C;AAClF,SAASC,cAAc,QAAQ,4CAA4C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAU5E,OAAO,MAAMC,WAAW,gBAAGZ,IAAI,CAAC,SAASY,WAAWA,CAAC;EACpDC;AACiB,CAAC,EAAE;EACpB,MAAMC,gBAAgB,GAAGD,KAAK,CAACE,UAAU,CAACC,OAAO,CAACC,OAAO;EACzD,MAAMC,MAAM,GAAGd,mBAAmB,CAAC,CAAC;EACpC,MAAMe,MAAM,GAAGZ,iBAAiB,CAAC,CAAC;EAElC,MAAMa,eAAe,GAAGZ,kBAAkB,CAAC,CAAC;EAC5C,MAAMa,WAAW,GAAGZ,cAAc,CAAC,CAAC;EACpC,MAAMa,gBAAgB,GAAGhB,eAAe,CAAC,MAAM;IAC9C,SAAS;;IACT,OAAOc,eAAe,CAACG,KAAK,CAACC,aAAa;EAC3C,CAAC,CAAC;EAEF,MAAMC,gBAAgB,GAAGnB,eAAe,CAA4B,OAAO;IAC1EoB,QAAQ,EAAEJ,gBAAgB,CAACC,KAAK;IAChCI,OAAO,EAAE;MAAET;IAAO,CAAC;IACnBC;EACD,CAAC,CAAC,CAAC;EAEH,MAAMS,YAAwD,GAAG3B,OAAO,CACvE,OAAO;IACN,GAAGoB,WAAW;IACdK,QAAQ,EAAEJ,gBAAgB;IAC1BG,gBAAgB;IAAE;IAClBL,eAAe,CAAE;EAClB,CAAC,CAAC,EACF,CAACE,gBAAgB,EAAEG,gBAAgB,EAAEL,eAAe,EAAEC,WAAW,CAClE,CAAC;EAED,IAAI,CAACP,gBAAgB,EAAE;IACtB,OAAO,IAAI;EACZ;EAEA,oBACCH,IAAA,CAACT,QAAQ,CAACG,IAAI;IACbwB,aAAa,EAAC,UAAU;IACxBC,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAED,MAAM,CAACE,QAAQ,EAAEF,MAAM,CAACG,QAAQ,CAAE;IAAAC,QAAA,eAE5DxB,IAAA,CAACb,iBAAiB,CAACsC,QAAQ;MAACb,KAAK,EAAEV,KAAK,CAACE,UAAU,CAACsB,UAAkB;MAAAF,QAAA,eACrExB,IAAA,CAACZ,sBAAsB,CAACqC,QAAQ;QAACb,KAAK,EAAEV,KAAK,CAACyB,KAAM;QAAAH,QAAA,eACnDxB,IAAA,CAACN,IAAI;UAACwB,aAAa,EAAC,UAAU;UAACC,KAAK,EAAEC,MAAM,CAACd,OAAQ;UAAAkB,QAAA,eACpDxB,IAAA,CAACG,gBAAgB;YAAA,GAAKc;UAAY,CAAG;QAAC,CACjC;MAAC,CACyB;IAAC,CACP;EAAC,CACf,CAAC;AAElB,CAAC,CAAC;AAEF,MAAMG,MAAM,GAAG5B,UAAU,CAACoC,MAAM,CAAC;EAChCtB,OAAO,EAAE;IACR,GAAGd,UAAU,CAACqC,kBAAkB;IAChCC,MAAM,EAAE;EACT,CAAC;EACDT,SAAS,EAAE;IACVU,IAAI,EAAE;EACP,CAAC;EACDR,QAAQ,EAAE/B,UAAU,CAACqC,kBAAkB;EACvCP,QAAQ,EAAE;IACTQ,MAAM,EAAE;EACT;AACD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["NavigationContext","NavigationRouteContext","memo","useMemo","Animated","StyleSheet","useWindowDimensions","View","useDerivedValue","useSafeAreaInsets","useScreenAnimation","jsx","_jsx","OverlayHost","scene","overlayScreenState","OverlayComponent","descriptor","options","overlay","screen","insets","screenAnimation","relativeProgress","value","stackProgress","overlayAnimation","progress","layouts","overlayProps","pointerEvents","style","styles","container","floating","absolute","children","Provider","navigation","route","create","absoluteFillObject","zIndex","flex"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/variations/overlay-host.tsx"],"mappings":";;AAAA,SACCA,iBAAiB,EACjBC,sBAAsB,QAChB,0BAA0B;AACjC,SAASC,IAAI,EAAEC,OAAO,QAAQ,OAAO;AACrC,SAASC,QAAQ,EAAEC,UAAU,EAAEC,mBAAmB,EAAEC,IAAI,QAAQ,cAAc;AAC9E,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,kBAAkB,QAAQ,+CAA+C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAmBnF,OAAO,MAAMC,WAAW,gBAAGX,IAAI,CAAC,SAASW,WAAWA,CAAC;EACpDC,KAAK;EACLC;AACiB,CAAC,EAAE;EACpB,MAAMC,gBAAgB,GAAGF,KAAK,CAACG,UAAU,CAACC,OAAO,CAACC,OAAO;EACzD,MAAMC,MAAM,GAAGd,mBAAmB,CAAC,CAAC;EACpC,MAAMe,MAAM,GAAGZ,iBAAiB,CAAC,CAAC;EAElC,MAAMa,eAAe,GAAGZ,kBAAkB,CAAC,CAAC;EAC5C,MAAMa,gBAAgB,GAAGf,eAAe,CAAC,MAAM;IAC9C,SAAS;;IACT,OAAOc,eAAe,CAACE,KAAK,CAACC,aAAa;EAC3C,CAAC,CAAC;EAEF,MAAMC,gBAAgB,GAAGlB,eAAe,CAA4B,OAAO;IAC1EmB,QAAQ,EAAEJ,gBAAgB,CAACC,KAAK;IAChCI,OAAO,EAAE;MAAER;IAAO,CAAC;IACnBC;EACD,CAAC,CAAC,CAAC;EAEH,MAAMQ,YAAwD,GAAG1B,OAAO,CACvE,OAAO;IACN,GAAGY,kBAAkB;IACrBY,QAAQ,EAAEJ,gBAAgB;IAC1B;IACAG,gBAAgB;IAChB;IACAJ;EACD,CAAC,CAAC,EACF,CAACC,gBAAgB,EAAEG,gBAAgB,EAAEJ,eAAe,EAAEP,kBAAkB,CACzE,CAAC;EAED,IAAI,CAACC,gBAAgB,EAAE;IACtB,OAAO,IAAI;EACZ;EAEA,oBACCJ,IAAA,CAACR,QAAQ,CAACG,IAAI;IACbuB,aAAa,EAAC,UAAU;IACxBC,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAED,MAAM,CAACE,QAAQ,EAAEF,MAAM,CAACG,QAAQ,CAAE;IAAAC,QAAA,eAE5DxB,IAAA,CAACZ,iBAAiB,CAACqC,QAAQ;MAACb,KAAK,EAAEV,KAAK,CAACG,UAAU,CAACqB,UAAkB;MAAAF,QAAA,eACrExB,IAAA,CAACX,sBAAsB,CAACoC,QAAQ;QAACb,KAAK,EAAEV,KAAK,CAACyB,KAAM;QAAAH,QAAA,eACnDxB,IAAA,CAACL,IAAI;UAACuB,aAAa,EAAC,UAAU;UAACC,KAAK,EAAEC,MAAM,CAACb,OAAQ;UAAAiB,QAAA,eACpDxB,IAAA,CAACI,gBAAgB;YAAA,GAAKa;UAAY,CAAG;QAAC,CACjC;MAAC,CACyB;IAAC,CACP;EAAC,CACf,CAAC;AAElB,CAAC,CAAC;AAEF,MAAMG,MAAM,GAAG3B,UAAU,CAACmC,MAAM,CAAC;EAChCrB,OAAO,EAAE;IACR,GAAGd,UAAU,CAACoC,kBAAkB;IAChCC,MAAM,EAAE;EACT,CAAC;EACDT,SAAS,EAAE;IACVU,IAAI,EAAE;EACP,CAAC;EACDR,QAAQ,EAAE9B,UAAU,CAACoC,kBAAkB;EACvCP,QAAQ,EAAE;IACTQ,MAAM,EAAE;EACT;AACD,CAAC,CAAC","ignoreList":[]}
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  import { useMemo } from "react";
4
+ import { snapDescriptorToIndex } from "../../../animation/snap-to";
5
+ import { useOptimisticFocusedIndex } from "../../../hooks/navigation/use-optimistic-focused-index";
4
6
  import { useStack } from "../../../hooks/navigation/use-stack";
5
7
  import { useKeys } from "../../../providers/screen/keys.provider";
8
+ import { isScreenOverlayVisible } from "../../../utils/overlay/visibility";
6
9
  import { OverlayHost } from "./overlay-host";
7
-
10
+ import { jsx as _jsx } from "react/jsx-runtime";
8
11
  /**
9
12
  * Screen overlay component that renders per-screen.
10
13
  * Gets current descriptor from keys context.
@@ -13,29 +16,45 @@ import { OverlayHost } from "./overlay-host";
13
16
  * absolute-positioned view directly in your screen component and use `useScreenAnimation()`
14
17
  * to access animation values. This component will be removed in a future version.
15
18
  */
16
- import { jsx as _jsx } from "react/jsx-runtime";
17
19
  export function ScreenOverlay() {
18
20
  const {
19
21
  current
20
22
  } = useKeys();
21
23
  const {
22
- flags
24
+ flags,
25
+ routes,
26
+ optimisticFocusedIndex,
27
+ routeKeys
23
28
  } = useStack();
29
+ const focusedIndex = useOptimisticFocusedIndex(optimisticFocusedIndex, routeKeys.length);
24
30
  const options = current.options;
25
31
  const scene = useMemo(() => ({
26
32
  descriptor: current,
27
33
  route: current.route
28
34
  }), [current]);
35
+ const overlayScreenState = useMemo(() => ({
36
+ index: routeKeys.indexOf(current.route.key),
37
+ options: current.options,
38
+ routes,
39
+ focusedRoute: routes[focusedIndex] ?? current.route,
40
+ focusedIndex,
41
+ meta: current.options?.meta,
42
+ navigation: current.navigation,
43
+ snapTo: index => {
44
+ snapDescriptorToIndex(current, index);
45
+ }
46
+ }), [current, routeKeys, routes, focusedIndex]);
29
47
 
30
48
  // Skip screens without enableTransitions (native-stack only)
31
49
  if (!flags.TRANSITIONS_ALWAYS_ON && !options.enableTransitions) {
32
50
  return null;
33
51
  }
34
- if (!options.overlayShown || options.overlayMode !== "screen") {
52
+ if (!isScreenOverlayVisible(options)) {
35
53
  return null;
36
54
  }
37
55
  return /*#__PURE__*/_jsx(OverlayHost, {
38
- scene: scene
56
+ scene: scene,
57
+ overlayScreenState: overlayScreenState
39
58
  });
40
59
  }
41
60
  //# sourceMappingURL=screen-overlay.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","useStack","useKeys","OverlayHost","jsx","_jsx","ScreenOverlay","current","flags","options","scene","descriptor","route","TRANSITIONS_ALWAYS_ON","enableTransitions","overlayShown","overlayMode"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/variations/screen-overlay.tsx"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAGCC,QAAQ,QACF,qCAAqC;AAC5C,SAASC,OAAO,QAAQ,yCAAyC;AACjE,SAASC,WAAW,QAAQ,gBAAgB;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA,SAAAC,GAAA,IAAAC,IAAA;AAQA,OAAO,SAASC,aAAaA,CAAA,EAAG;EAC/B,MAAM;IAAEC;EAAQ,CAAC,GAAGL,OAAO,CAAkB,CAAC;EAC9C,MAAM;IAAEM;EAAM,CAAC,GAAGP,QAAQ,CAAC,CAAC;EAE5B,MAAMQ,OAAO,GAAGF,OAAO,CAACE,OAAO;EAE/B,MAAMC,KAAK,GAAGV,OAAO,CACpB,OAAO;IACNW,UAAU,EAAEJ,OAAO;IACnBK,KAAK,EAAEL,OAAO,CAACK;EAChB,CAAC,CAAC,EACF,CAACL,OAAO,CACT,CAAC;;EAED;EACA,IAAI,CAACC,KAAK,CAACK,qBAAqB,IAAI,CAACJ,OAAO,CAACK,iBAAiB,EAAE;IAC/D,OAAO,IAAI;EACZ;EAEA,IAAI,CAACL,OAAO,CAACM,YAAY,IAAIN,OAAO,CAACO,WAAW,KAAK,QAAQ,EAAE;IAC9D,OAAO,IAAI;EACZ;EAEA,oBAAOX,IAAA,CAACF,WAAW;IAACO,KAAK,EAAEA;EAAM,CAAE,CAAC;AACrC","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","snapDescriptorToIndex","useOptimisticFocusedIndex","useStack","useKeys","isScreenOverlayVisible","OverlayHost","jsx","_jsx","ScreenOverlay","current","flags","routes","optimisticFocusedIndex","routeKeys","focusedIndex","length","options","scene","descriptor","route","overlayScreenState","index","indexOf","key","focusedRoute","meta","navigation","snapTo","TRANSITIONS_ALWAYS_ON","enableTransitions"],"sourceRoot":"../../../../../../src","sources":["shared/components/overlay/variations/screen-overlay.tsx"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,qBAAqB,QAAQ,4BAA4B;AAClE,SAASC,yBAAyB,QAAQ,wDAAwD;AAClG,SAGCC,QAAQ,QACF,qCAAqC;AAC5C,SAASC,OAAO,QAAQ,yCAAyC;AAEjE,SAASC,sBAAsB,QAAQ,mCAAmC;AAC1E,SAASC,WAAW,QAAQ,gBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAU7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAAA,EAAG;EAC/B,MAAM;IAAEC;EAAQ,CAAC,GAAGN,OAAO,CAAkB,CAAC;EAC9C,MAAM;IAAEO,KAAK;IAAEC,MAAM;IAAEC,sBAAsB;IAAEC;EAAU,CAAC,GAAGX,QAAQ,CAAC,CAAC;EACvE,MAAMY,YAAY,GAAGb,yBAAyB,CAC7CW,sBAAsB,EACtBC,SAAS,CAACE,MACX,CAAC;EAED,MAAMC,OAAO,GAAGP,OAAO,CAACO,OAAO;EAE/B,MAAMC,KAAK,GAAGlB,OAAO,CACpB,OAAO;IACNmB,UAAU,EAAET,OAAO;IACnBU,KAAK,EAAEV,OAAO,CAACU;EAChB,CAAC,CAAC,EACF,CAACV,OAAO,CACT,CAAC;EAED,MAAMW,kBAAkB,GAAGrB,OAAO,CACjC,OAAO;IACNsB,KAAK,EAAER,SAAS,CAACS,OAAO,CAACb,OAAO,CAACU,KAAK,CAACI,GAAG,CAAC;IAC3CP,OAAO,EAAEP,OAAO,CAACO,OAAO;IACxBL,MAAM;IACNa,YAAY,EAAEb,MAAM,CAACG,YAAY,CAAC,IAAIL,OAAO,CAACU,KAAK;IACnDL,YAAY;IACZW,IAAI,EAAEhB,OAAO,CAACO,OAAO,EAAES,IAAI;IAC3BC,UAAU,EAAEjB,OAAO,CAACiB,UAAU;IAC9BC,MAAM,EAAGN,KAAa,IAAK;MAC1BrB,qBAAqB,CAACS,OAAO,EAAEY,KAAK,CAAC;IACtC;EACD,CAAC,CAAC,EACF,CAACZ,OAAO,EAAEI,SAAS,EAAEF,MAAM,EAAEG,YAAY,CAC1C,CAAC;;EAED;EACA,IAAI,CAACJ,KAAK,CAACkB,qBAAqB,IAAI,CAACZ,OAAO,CAACa,iBAAiB,EAAE;IAC/D,OAAO,IAAI;EACZ;EAEA,IAAI,CAACzB,sBAAsB,CAACY,OAAO,CAAC,EAAE;IACrC,OAAO,IAAI;EACZ;EAEA,oBAAOT,IAAA,CAACF,WAAW;IAACY,KAAK,EAAEA,KAAM;IAACG,kBAAkB,EAAEA;EAAmB,CAAE,CAAC;AAC7E","ignoreList":[]}
@@ -31,6 +31,7 @@ export const ScreenContainer = /*#__PURE__*/memo(({
31
31
  backdropBehavior
32
32
  } = useBackdropPointerEvents();
33
33
  const gestureContext = useGestureContext();
34
+ const BackdropComponent = current.options.backdropComponent;
34
35
  const isBackdropActive = backdropBehavior === "dismiss" || backdropBehavior === "collapse";
35
36
  const handleDismiss = useCallback(() => {
36
37
  const state = current.navigation.getState();
@@ -94,7 +95,7 @@ export const ScreenContainer = /*#__PURE__*/memo(({
94
95
  return /*#__PURE__*/_jsxs(View, {
95
96
  style: styles.container,
96
97
  pointerEvents: pointerEvents,
97
- children: [/*#__PURE__*/_jsx(Pressable, {
98
+ children: [BackdropComponent ? /*#__PURE__*/_jsx(BackdropComponent, {}) : /*#__PURE__*/_jsx(Pressable, {
98
99
  style: StyleSheet.absoluteFillObject,
99
100
  pointerEvents: isBackdropActive ? "auto" : "none",
100
101
  onPress: isBackdropActive ? handleBackdropPress : undefined,
@@ -1 +1 @@
1
- {"version":3,"names":["StackActions","memo","useCallback","Pressable","StyleSheet","View","GestureDetector","Animated","runOnUI","useAnimatedStyle","DefaultSnapSpec","NO_STYLES","useBackdropPointerEvents","useGestureContext","useKeys","useScreenStyles","AnimationStore","GestureStore","animateToProgress","findCollapseTarget","jsx","_jsx","jsxs","_jsxs","ScreenContainer","children","stylesMap","current","pointerEvents","backdropBehavior","gestureContext","isBackdropActive","handleDismiss","state","navigation","getState","dispatch","pop","source","route","key","target","handleBackdropPress","snapPoints","options","canDismiss","gestureEnabled","length","animations","getAll","gestures","getRouteGestures","transitionSpec","shouldDismiss","progress","value","isDismissing","spec","open","expand","close","collapse","onAnimationFinish","undefined","animatedContentStyle","contentStyle","animatedBackdropStyle","backdropStyle","overlayStyle","style","styles","container","absoluteFillObject","onPress","gesture","panGesture","content","create","flex"],"sourceRoot":"../../../../src","sources":["shared/components/screen-container.tsx"],"mappings":";;AAAA;AACA,SAASA,YAAY,QAAQ,0BAA0B;AACvD,SAASC,IAAI,EAAEC,WAAW,QAAQ,OAAO;AACzC,SAASC,SAAS,EAAEC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC1D,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,OAAOC,QAAQ,IAAIC,OAAO,EAAEC,gBAAgB,QAAQ,yBAAyB;AAC7E,SAASC,eAAe,QAAQ,kBAAkB;AAClD,SAASC,SAAS,QAAQ,cAAc;AACxC,SAASC,wBAAwB,QAAQ,sCAAsC;AAC/E,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,OAAO,QAAQ,mCAAmC;AAC3D,SAASC,eAAe,QAAQ,qCAAqC;AACrE,SAASC,cAAc,QAAQ,2BAA2B;AAC1D,SAASC,YAAY,QAAQ,yBAAyB;AACtD,SAASC,iBAAiB,QAAQ,wCAAwC;AAC1E,SAASC,kBAAkB,QAAQ,uCAAuC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAM3E,OAAO,MAAMC,eAAe,gBAAGvB,IAAI,CAAC,CAAC;EAAEwB;AAAgB,CAAC,KAAK;EAC5D,MAAM;IAAEC;EAAU,CAAC,GAAGX,eAAe,CAAC,CAAC;EACvC,MAAM;IAAEY;EAAQ,CAAC,GAAGb,OAAO,CAAC,CAAC;EAC7B,MAAM;IAAEc,aAAa;IAAEC;EAAiB,CAAC,GAAGjB,wBAAwB,CAAC,CAAC;EACtE,MAAMkB,cAAc,GAAGjB,iBAAiB,CAAC,CAAC;EAE1C,MAAMkB,gBAAgB,GACrBF,gBAAgB,KAAK,SAAS,IAAIA,gBAAgB,KAAK,UAAU;EAElE,MAAMG,aAAa,GAAG9B,WAAW,CAAC,MAAM;IACvC,MAAM+B,KAAK,GAAGN,OAAO,CAACO,UAAU,CAACC,QAAQ,CAAC,CAAC;IAC3CR,OAAO,CAACO,UAAU,CAACE,QAAQ,CAAC;MAC3B,GAAGpC,YAAY,CAACqC,GAAG,CAAC,CAAC;MACrBC,MAAM,EAAEX,OAAO,CAACY,KAAK,CAACC,GAAG;MACzBC,MAAM,EAAER,KAAK,CAACO;IACf,CAAC,CAAC;EACH,CAAC,EAAE,CAACb,OAAO,CAAC,CAAC;EAEb,MAAMe,mBAAmB,GAAGxC,WAAW,CAAC,MAAM;IAC7C,IAAI2B,gBAAgB,KAAK,SAAS,EAAE;MACnCG,aAAa,CAAC,CAAC;MACf;IACD;IAEA,IAAIH,gBAAgB,KAAK,UAAU,EAAE;MACpC,MAAMc,UAAU,GAAGhB,OAAO,CAACiB,OAAO,CAACD,UAAU;MAC7C,MAAME,UAAU,GAAGlB,OAAO,CAACiB,OAAO,CAACE,cAAc,KAAK,KAAK;;MAE3D;MACA,IAAI,CAACH,UAAU,IAAIA,UAAU,CAACI,MAAM,KAAK,CAAC,EAAE;QAC3Cf,aAAa,CAAC,CAAC;QACf;MACD;MAEA,MAAMgB,UAAU,GAAGhC,cAAc,CAACiC,MAAM,CAACtB,OAAO,CAACY,KAAK,CAACC,GAAG,CAAC;MAC3D,MAAMU,QAAQ,GAAGjC,YAAY,CAACkC,gBAAgB,CAACxB,OAAO,CAACY,KAAK,CAACC,GAAG,CAAC;MACjE,MAAMY,cAAc,GAAGzB,OAAO,CAACiB,OAAO,CAACQ,cAAc;MAErD5C,OAAO,CAAC,MAAM;QACb,SAAS;;QACT,MAAM;UAAEiC,MAAM;UAAEY;QAAc,CAAC,GAAGlC,kBAAkB,CACnD6B,UAAU,CAACM,QAAQ,CAACC,KAAK,EACzBZ,UAAU,EACVE,UACD,CAAC;;QAED;QACA,IAAIK,QAAQ,CAACM,YAAY,CAACD,KAAK,EAAE;QAEjCL,QAAQ,CAACM,YAAY,CAACD,KAAK,GAAGF,aAAa,GAAG,CAAC,GAAG,CAAC;QAEnD,MAAMI,IAAI,GAAGJ,aAAa,GACvBD,cAAc,GACd;UACAM,IAAI,EAAEN,cAAc,EAAEO,MAAM,IAAIjD,eAAe;UAC/CkD,KAAK,EAAER,cAAc,EAAES,QAAQ,IAAInD;QACpC,CAAC;QAEHQ,iBAAiB,CAAC;UACjBuB,MAAM;UACNgB,IAAI;UACJT,UAAU;UACVc,iBAAiB,EAAET,aAAa,GAAGrB,aAAa,GAAG+B;QACpD,CAAC,CAAC;MACH,CAAC,CAAC,CAAC,CAAC;IACL;EACD,CAAC,EAAE,CAAClC,gBAAgB,EAAEF,OAAO,EAAEK,aAAa,CAAC,CAAC;EAE9C,MAAMgC,oBAAoB,GAAGvD,gBAAgB,CAAC,MAAM;IACnD,SAAS;;IACT,OAAOiB,SAAS,CAAC6B,KAAK,CAACU,YAAY,IAAItD,SAAS;EACjD,CAAC,CAAC;EAEF,MAAMuD,qBAAqB,GAAGzD,gBAAgB,CAAC,MAAM;IACpD,SAAS;;IACT,OACCiB,SAAS,CAAC6B,KAAK,CAACY,aAAa,IAAIzC,SAAS,CAAC6B,KAAK,CAACa,YAAY,IAAIzD,SAAS;EAE5E,CAAC,CAAC;EAEF,oBACCY,KAAA,CAAClB,IAAI;IAACgE,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAC3C,aAAa,EAAEA,aAAc;IAAAH,QAAA,gBAC3DJ,IAAA,CAAClB,SAAS;MACTkE,KAAK,EAAEjE,UAAU,CAACoE,kBAAmB;MACrC5C,aAAa,EAAEG,gBAAgB,GAAG,MAAM,GAAG,MAAO;MAClD0C,OAAO,EAAE1C,gBAAgB,GAAGW,mBAAmB,GAAGqB,SAAU;MAAAtC,QAAA,eAE5DJ,IAAA,CAACd,QAAQ,CAACF,IAAI;QACbgE,KAAK,EAAE,CAACjE,UAAU,CAACoE,kBAAkB,EAAEN,qBAAqB;MAAE,CAC9D;IAAC,CACQ,CAAC,eACZ7C,IAAA,CAACf,eAAe;MAACoE,OAAO,EAAE5C,cAAc,CAAE6C,UAAW;MAAAlD,QAAA,eACpDJ,IAAA,CAACd,QAAQ,CAACF,IAAI;QACbgE,KAAK,EAAE,CAACC,MAAM,CAACM,OAAO,EAAEZ,oBAAoB,CAAE;QAC9CpC,aAAa,EAAEG,gBAAgB,GAAG,UAAU,GAAGH,aAAc;QAAAH,QAAA,EAE5DA;MAAQ,CACK;IAAC,CACA,CAAC;EAAA,CACb,CAAC;AAET,CAAC,CAAC;AAEF,MAAM6C,MAAM,GAAGlE,UAAU,CAACyE,MAAM,CAAC;EAChCN,SAAS,EAAE;IACVO,IAAI,EAAE;EACP,CAAC;EACDF,OAAO,EAAE;IACRE,IAAI,EAAE;EACP;AACD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["StackActions","memo","useCallback","Pressable","StyleSheet","View","GestureDetector","Animated","runOnUI","useAnimatedStyle","DefaultSnapSpec","NO_STYLES","useBackdropPointerEvents","useGestureContext","useKeys","useScreenStyles","AnimationStore","GestureStore","animateToProgress","findCollapseTarget","jsx","_jsx","jsxs","_jsxs","ScreenContainer","children","stylesMap","current","pointerEvents","backdropBehavior","gestureContext","BackdropComponent","options","backdropComponent","isBackdropActive","handleDismiss","state","navigation","getState","dispatch","pop","source","route","key","target","handleBackdropPress","snapPoints","canDismiss","gestureEnabled","length","animations","getAll","gestures","getRouteGestures","transitionSpec","shouldDismiss","progress","value","isDismissing","spec","open","expand","close","collapse","onAnimationFinish","undefined","animatedContentStyle","contentStyle","animatedBackdropStyle","backdropStyle","overlayStyle","style","styles","container","absoluteFillObject","onPress","gesture","panGesture","content","create","flex"],"sourceRoot":"../../../../src","sources":["shared/components/screen-container.tsx"],"mappings":"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","ignoreList":[]}
@@ -7,6 +7,7 @@ import { useKeys } from "../../providers/screen/keys.provider";
7
7
  import { GestureStore } from "../../stores/gesture.store";
8
8
  import { claimsAnyDirection } from "../../utils/gesture/compute-claimed-directions";
9
9
  import { resolveOwnership } from "../../utils/gesture/resolve-ownership";
10
+ import { validateSnapPoints } from "../../utils/gesture/validate-snap-points";
10
11
  import { useScreenGestureHandlers } from "./use-screen-gesture-handlers";
11
12
  const DIRECTIONS = ["vertical", "vertical-inverted", "horizontal", "horizontal-inverted"];
12
13
 
@@ -56,7 +57,12 @@ export const useBuildGestures = ({
56
57
  snapPoints
57
58
  } = current.options;
58
59
  const canDismiss = Boolean(isFirstScreen ? false : current.options.gestureEnabled);
59
- const hasSnapPoints = Array.isArray(snapPoints) && snapPoints.length > 0;
60
+ const {
61
+ hasSnapPoints
62
+ } = useMemo(() => validateSnapPoints({
63
+ snapPoints,
64
+ canDismiss
65
+ }), [snapPoints, canDismiss]);
60
66
  const gestureEnabled = canDismiss || hasSnapPoints;
61
67
  const ownershipStatus = useMemo(() => resolveOwnership(claimedDirections, ancestorContext ?? null), [claimedDirections, ancestorContext]);
62
68
  const selfClaimsAny = claimsAnyDirection(claimedDirections);
@@ -1 +1 @@
1
- {"version":3,"names":["StackActions","useCallback","useMemo","useRef","Gesture","useKeys","GestureStore","claimsAnyDirection","resolveOwnership","useScreenGestureHandlers","DIRECTIONS","findShadowedAncestorPanGestures","selfClaims","ancestorContext","isIsolated","shadowedGestures","ancestor","shadowsAncestor","some","dir","claimedDirections","panGesture","push","useBuildGestures","scrollConfig","childDirectionClaims","current","navState","navigation","getState","isFirstScreen","routes","findIndex","r","key","route","panGestureRef","undefined","gestureAnimationValues","getRouteGestures","snapPoints","options","canDismiss","Boolean","gestureEnabled","hasSnapPoints","Array","isArray","length","ownershipStatus","selfClaimsAny","handleDismiss","isDismissing","value","state","routeStillPresent","dispatch","pop","source","target","onTouchesDown","onTouchesMove","onStart","onUpdate","onEnd","ancestorIsDismissing","Pan","withRef","enabled","manualActivation","shadowedAncestorGestures","ancestorPan","blocksExternalGesture"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-build-gestures.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["StackActions","useCallback","useMemo","useRef","Gesture","useKeys","GestureStore","claimsAnyDirection","resolveOwnership","validateSnapPoints","useScreenGestureHandlers","DIRECTIONS","findShadowedAncestorPanGestures","selfClaims","ancestorContext","isIsolated","shadowedGestures","ancestor","shadowsAncestor","some","dir","claimedDirections","panGesture","push","useBuildGestures","scrollConfig","childDirectionClaims","current","navState","navigation","getState","isFirstScreen","routes","findIndex","r","key","route","panGestureRef","undefined","gestureAnimationValues","getRouteGestures","snapPoints","options","canDismiss","Boolean","gestureEnabled","hasSnapPoints","ownershipStatus","selfClaimsAny","handleDismiss","isDismissing","value","state","routeStillPresent","dispatch","pop","source","target","onTouchesDown","onTouchesMove","onStart","onUpdate","onEnd","ancestorIsDismissing","Pan","withRef","enabled","manualActivation","shadowedAncestorGestures","ancestorPan","blocksExternalGesture"],"sourceRoot":"../../../../../src","sources":["shared/hooks/gestures/use-build-gestures.tsx"],"mappings":"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","ignoreList":[]}