react-native-screen-transitions 3.4.0-alpha.5 → 3.4.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 (234) hide show
  1. package/README.md +1058 -11
  2. package/lib/commonjs/blank-stack/navigators/create-blank-stack-navigator.js +27 -45
  3. package/lib/commonjs/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -1
  4. package/lib/commonjs/component-stack/navigators/create-component-stack-navigator.js +1 -1
  5. package/lib/commonjs/shared/components/create-boundary-component/components/boundary-target.js +39 -0
  6. package/lib/commonjs/shared/components/create-boundary-component/components/boundary-target.js.map +1 -0
  7. package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js +232 -0
  8. package/lib/commonjs/shared/components/create-boundary-component/create-boundary-component.js.map +1 -0
  9. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +2 -4
  10. package/lib/commonjs/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +1 -1
  11. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.js +4 -3
  12. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.js.map +1 -1
  13. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.js +2 -1
  14. package/lib/commonjs/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.js.map +1 -1
  15. package/lib/commonjs/shared/components/create-boundary-component/index.js +20 -214
  16. package/lib/commonjs/shared/components/create-boundary-component/index.js.map +1 -1
  17. package/lib/commonjs/shared/components/create-boundary-component/providers/boundary-owner.provider.js +63 -0
  18. package/lib/commonjs/shared/components/create-boundary-component/providers/boundary-owner.provider.js.map +1 -0
  19. package/lib/commonjs/shared/components/create-transition-aware-component.js +29 -7
  20. package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
  21. package/lib/commonjs/shared/components/overlay/variations/float-overlay.js +1 -1
  22. package/lib/commonjs/shared/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
  23. package/lib/commonjs/shared/components/screen-container/index.js +12 -8
  24. package/lib/commonjs/shared/components/screen-container/index.js.map +1 -1
  25. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +8 -10
  26. package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
  27. package/lib/commonjs/shared/components/screen-container/layers/content.js +7 -10
  28. package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
  29. package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js +4 -4
  30. package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  31. package/lib/commonjs/shared/components/screen-container/layers/surface-container.js +4 -4
  32. package/lib/commonjs/shared/components/screen-container/layers/surface-container.js.map +1 -1
  33. package/lib/commonjs/shared/constants.js +4 -1
  34. package/lib/commonjs/shared/constants.js.map +1 -1
  35. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state.js +33 -1
  36. package/lib/commonjs/shared/providers/screen/animation/helpers/hydrate-transition-state.js.map +1 -1
  37. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +2 -0
  38. package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  39. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js +1 -0
  40. package/lib/commonjs/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  41. package/lib/commonjs/shared/providers/screen/screen-composer.js +1 -1
  42. package/lib/commonjs/shared/providers/screen/screen-composer.js.map +1 -1
  43. package/lib/commonjs/shared/providers/screen/styles/helpers/build-resolved-style-map.js +144 -0
  44. package/lib/commonjs/shared/providers/screen/styles/helpers/build-resolved-style-map.js.map +1 -0
  45. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-interpolated-style-output.js +28 -0
  46. package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-interpolated-style-output.js.map +1 -0
  47. package/lib/commonjs/shared/providers/screen/styles/helpers/split-normalized-style-maps.js +39 -0
  48. package/lib/commonjs/shared/providers/screen/styles/helpers/split-normalized-style-maps.js.map +1 -0
  49. package/lib/commonjs/shared/providers/screen/styles/index.js +25 -0
  50. package/lib/commonjs/shared/providers/screen/styles/index.js.map +1 -0
  51. package/lib/commonjs/shared/providers/screen/{styles.provider.js → styles/styles.provider.js} +47 -39
  52. package/lib/commonjs/shared/providers/screen/styles/styles.provider.js.map +1 -0
  53. package/lib/commonjs/shared/utils/bounds/helpers/compute-bounds-styles.js +1 -1
  54. package/lib/commonjs/shared/utils/bounds/helpers/compute-bounds-styles.js.map +1 -1
  55. package/lib/commonjs/shared/utils/bounds/helpers/style-composers.js +21 -10
  56. package/lib/commonjs/shared/utils/bounds/helpers/style-composers.js.map +1 -1
  57. package/lib/commonjs/shared/utils/bounds/zoom/build.js +57 -31
  58. package/lib/commonjs/shared/utils/bounds/zoom/build.js.map +1 -1
  59. package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js +27 -45
  60. package/lib/module/blank-stack/navigators/create-blank-stack-navigator.js.map +1 -1
  61. package/lib/module/component-stack/navigators/create-component-stack-navigator.js +1 -1
  62. package/lib/module/shared/components/create-boundary-component/components/boundary-target.js +34 -0
  63. package/lib/module/shared/components/create-boundary-component/components/boundary-target.js.map +1 -0
  64. package/lib/module/shared/components/create-boundary-component/create-boundary-component.js +227 -0
  65. package/lib/module/shared/components/create-boundary-component/create-boundary-component.js.map +1 -0
  66. package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js +2 -4
  67. package/lib/module/shared/components/create-boundary-component/hooks/helpers/measurement-rules.js.map +1 -1
  68. package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.js +4 -3
  69. package/lib/module/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.js.map +1 -1
  70. package/lib/module/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.js +2 -1
  71. package/lib/module/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.js.map +1 -1
  72. package/lib/module/shared/components/create-boundary-component/index.js +16 -213
  73. package/lib/module/shared/components/create-boundary-component/index.js.map +1 -1
  74. package/lib/module/shared/components/create-boundary-component/providers/boundary-owner.provider.js +56 -0
  75. package/lib/module/shared/components/create-boundary-component/providers/boundary-owner.provider.js.map +1 -0
  76. package/lib/module/shared/components/create-transition-aware-component.js +30 -8
  77. package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
  78. package/lib/module/shared/components/overlay/variations/float-overlay.js +1 -1
  79. package/lib/module/shared/components/overlay/variations/float-overlay.js.map +1 -1
  80. package/lib/module/shared/components/screen-container/hooks/use-backdrop-pointer-events.js.map +1 -1
  81. package/lib/module/shared/components/screen-container/index.js +12 -8
  82. package/lib/module/shared/components/screen-container/index.js.map +1 -1
  83. package/lib/module/shared/components/screen-container/layers/backdrop.js +8 -10
  84. package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
  85. package/lib/module/shared/components/screen-container/layers/content.js +7 -10
  86. package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
  87. package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js +4 -4
  88. package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
  89. package/lib/module/shared/components/screen-container/layers/surface-container.js +4 -4
  90. package/lib/module/shared/components/screen-container/layers/surface-container.js.map +1 -1
  91. package/lib/module/shared/constants.js +4 -1
  92. package/lib/module/shared/constants.js.map +1 -1
  93. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state.js +32 -1
  94. package/lib/module/shared/providers/screen/animation/helpers/hydrate-transition-state.js.map +1 -1
  95. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +2 -0
  96. package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
  97. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js +1 -0
  98. package/lib/module/shared/providers/screen/animation/helpers/use-build-transition-state.js.map +1 -1
  99. package/lib/module/shared/providers/screen/screen-composer.js +1 -1
  100. package/lib/module/shared/providers/screen/screen-composer.js.map +1 -1
  101. package/lib/module/shared/providers/screen/styles/helpers/build-resolved-style-map.js +139 -0
  102. package/lib/module/shared/providers/screen/styles/helpers/build-resolved-style-map.js.map +1 -0
  103. package/lib/module/shared/providers/screen/styles/helpers/resolve-interpolated-style-output.js +23 -0
  104. package/lib/module/shared/providers/screen/styles/helpers/resolve-interpolated-style-output.js.map +1 -0
  105. package/lib/module/shared/providers/screen/styles/helpers/split-normalized-style-maps.js +34 -0
  106. package/lib/module/shared/providers/screen/styles/helpers/split-normalized-style-maps.js.map +1 -0
  107. package/lib/module/shared/providers/screen/styles/index.js +4 -0
  108. package/lib/module/shared/providers/screen/styles/index.js.map +1 -0
  109. package/lib/module/shared/providers/screen/{styles.provider.js → styles/styles.provider.js} +48 -40
  110. package/lib/module/shared/providers/screen/styles/styles.provider.js.map +1 -0
  111. package/lib/module/shared/utils/bounds/helpers/compute-bounds-styles.js +2 -2
  112. package/lib/module/shared/utils/bounds/helpers/compute-bounds-styles.js.map +1 -1
  113. package/lib/module/shared/utils/bounds/helpers/style-composers.js +21 -10
  114. package/lib/module/shared/utils/bounds/helpers/style-composers.js.map +1 -1
  115. package/lib/module/shared/utils/bounds/zoom/build.js +56 -29
  116. package/lib/module/shared/utils/bounds/zoom/build.js.map +1 -1
  117. package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts +9 -15
  118. package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts.map +1 -1
  119. package/lib/typescript/blank-stack/types.d.ts +6 -4
  120. package/lib/typescript/blank-stack/types.d.ts.map +1 -1
  121. package/lib/typescript/component-stack/navigators/create-component-stack-navigator.d.ts +1 -1
  122. package/lib/typescript/shared/components/create-boundary-component/components/boundary-target.d.ts +209 -0
  123. package/lib/typescript/shared/components/create-boundary-component/components/boundary-target.d.ts.map +1 -0
  124. package/lib/typescript/shared/components/create-boundary-component/create-boundary-component.d.ts +8 -0
  125. package/lib/typescript/shared/components/create-boundary-component/create-boundary-component.d.ts.map +1 -0
  126. package/lib/typescript/shared/components/create-boundary-component/hooks/helpers/measurement-rules.d.ts.map +1 -1
  127. package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.d.ts +2 -8
  128. package/lib/typescript/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.d.ts.map +1 -1
  129. package/lib/typescript/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.d.ts +0 -1
  130. package/lib/typescript/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.d.ts.map +1 -1
  131. package/lib/typescript/shared/components/create-boundary-component/index.d.ts +216 -12
  132. package/lib/typescript/shared/components/create-boundary-component/index.d.ts.map +1 -1
  133. package/lib/typescript/shared/components/create-boundary-component/providers/boundary-owner.provider.d.ts +35 -0
  134. package/lib/typescript/shared/components/create-boundary-component/providers/boundary-owner.provider.d.ts.map +1 -0
  135. package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
  136. package/lib/typescript/shared/components/screen-container/hooks/use-backdrop-pointer-events.d.ts +1 -1
  137. package/lib/typescript/shared/components/screen-container/hooks/use-backdrop-pointer-events.d.ts.map +1 -1
  138. package/lib/typescript/shared/components/screen-container/index.d.ts.map +1 -1
  139. package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts +5 -1
  140. package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts.map +1 -1
  141. package/lib/typescript/shared/components/screen-container/layers/content.d.ts +3 -1
  142. package/lib/typescript/shared/components/screen-container/layers/content.d.ts.map +1 -1
  143. package/lib/typescript/shared/components/screen-container/layers/maybe-masked-navigation-container.d.ts.map +1 -1
  144. package/lib/typescript/shared/constants.d.ts +1 -0
  145. package/lib/typescript/shared/constants.d.ts.map +1 -1
  146. package/lib/typescript/shared/index.d.ts +209 -2
  147. package/lib/typescript/shared/index.d.ts.map +1 -1
  148. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state.d.ts +16 -0
  149. package/lib/typescript/shared/providers/screen/animation/helpers/hydrate-transition-state.d.ts.map +1 -1
  150. package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
  151. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts +1 -0
  152. package/lib/typescript/shared/providers/screen/animation/helpers/use-build-transition-state.d.ts.map +1 -1
  153. package/lib/typescript/shared/providers/screen/styles/helpers/build-resolved-style-map.d.ts +11 -0
  154. package/lib/typescript/shared/providers/screen/styles/helpers/build-resolved-style-map.d.ts.map +1 -0
  155. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-interpolated-style-output.d.ts +7 -0
  156. package/lib/typescript/shared/providers/screen/styles/helpers/resolve-interpolated-style-output.d.ts.map +1 -0
  157. package/lib/typescript/shared/providers/screen/styles/helpers/split-normalized-style-maps.d.ts +6 -0
  158. package/lib/typescript/shared/providers/screen/styles/helpers/split-normalized-style-maps.d.ts.map +1 -0
  159. package/lib/typescript/shared/providers/screen/styles/index.d.ts +2 -0
  160. package/lib/typescript/shared/providers/screen/styles/index.d.ts.map +1 -0
  161. package/lib/typescript/shared/providers/screen/{styles.provider.d.ts → styles/styles.provider.d.ts} +3 -5
  162. package/lib/typescript/shared/providers/screen/styles/styles.provider.d.ts.map +1 -0
  163. package/lib/typescript/shared/types/animation.types.d.ts +16 -9
  164. package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
  165. package/lib/typescript/shared/types/index.d.ts +1 -1
  166. package/lib/typescript/shared/types/index.d.ts.map +1 -1
  167. package/lib/typescript/shared/types/screen.types.d.ts +4 -5
  168. package/lib/typescript/shared/types/screen.types.d.ts.map +1 -1
  169. package/lib/typescript/shared/utils/bounds/helpers/compute-bounds-styles.d.ts +1 -11
  170. package/lib/typescript/shared/utils/bounds/helpers/compute-bounds-styles.d.ts.map +1 -1
  171. package/lib/typescript/shared/utils/bounds/helpers/style-composers.d.ts.map +1 -1
  172. package/lib/typescript/shared/utils/bounds/zoom/build.d.ts +1 -1
  173. package/lib/typescript/shared/utils/bounds/zoom/build.d.ts.map +1 -1
  174. package/package.json +1 -1
  175. package/src/blank-stack/navigators/create-blank-stack-navigator.tsx +37 -80
  176. package/src/blank-stack/types.ts +7 -4
  177. package/src/component-stack/navigators/create-component-stack-navigator.tsx +1 -1
  178. package/src/shared/components/create-boundary-component/components/boundary-target.tsx +45 -0
  179. package/src/shared/components/create-boundary-component/create-boundary-component.tsx +282 -0
  180. package/src/shared/components/create-boundary-component/hooks/helpers/measurement-rules.ts +2 -7
  181. package/src/shared/components/create-boundary-component/hooks/use-boundary-measure-and-store.ts +6 -10
  182. package/src/shared/components/create-boundary-component/hooks/use-pending-destination-retry-measurement.ts +3 -2
  183. package/src/shared/components/create-boundary-component/index.tsx +16 -252
  184. package/src/shared/components/create-boundary-component/providers/boundary-owner.provider.tsx +109 -0
  185. package/src/shared/components/create-transition-aware-component.tsx +33 -5
  186. package/src/shared/components/overlay/variations/float-overlay.tsx +1 -1
  187. package/src/shared/components/screen-container/hooks/use-backdrop-pointer-events.ts +1 -2
  188. package/src/shared/components/screen-container/index.tsx +12 -6
  189. package/src/shared/components/screen-container/layers/backdrop.tsx +13 -7
  190. package/src/shared/components/screen-container/layers/content.tsx +47 -43
  191. package/src/shared/components/screen-container/layers/maybe-masked-navigation-container.tsx +6 -4
  192. package/src/shared/components/screen-container/layers/surface-container.tsx +4 -4
  193. package/src/shared/constants.ts +3 -0
  194. package/src/shared/index.ts +0 -1
  195. package/src/shared/providers/screen/animation/helpers/hydrate-transition-state.ts +49 -1
  196. package/src/shared/providers/screen/animation/helpers/pipeline.ts +2 -0
  197. package/src/shared/providers/screen/animation/helpers/use-build-transition-state.ts +2 -0
  198. package/src/shared/providers/screen/screen-composer.tsx +1 -1
  199. package/src/shared/providers/screen/styles/helpers/build-resolved-style-map.ts +185 -0
  200. package/src/shared/providers/screen/styles/helpers/resolve-interpolated-style-output.ts +31 -0
  201. package/src/shared/providers/screen/styles/helpers/split-normalized-style-maps.ts +44 -0
  202. package/src/shared/providers/screen/styles/index.tsx +5 -0
  203. package/src/shared/providers/screen/styles/styles.provider.tsx +173 -0
  204. package/src/shared/types/animation.types.ts +18 -10
  205. package/src/shared/types/index.ts +0 -1
  206. package/src/shared/types/screen.types.ts +5 -5
  207. package/src/shared/utils/bounds/helpers/compute-bounds-styles.ts +2 -1
  208. package/src/shared/utils/bounds/helpers/style-composers.ts +11 -0
  209. package/src/shared/utils/bounds/zoom/build.ts +94 -59
  210. package/lib/commonjs/shared/components/screen-container/deferred-visibility-host.js +0 -43
  211. package/lib/commonjs/shared/components/screen-container/deferred-visibility-host.js.map +0 -1
  212. package/lib/commonjs/shared/hooks/animation/use-associated-style.js +0 -234
  213. package/lib/commonjs/shared/hooks/animation/use-associated-style.js.map +0 -1
  214. package/lib/commonjs/shared/providers/screen/helpers/resolve-interpolated-style-output.js +0 -50
  215. package/lib/commonjs/shared/providers/screen/helpers/resolve-interpolated-style-output.js.map +0 -1
  216. package/lib/commonjs/shared/providers/screen/styles.provider.js.map +0 -1
  217. package/lib/module/shared/components/screen-container/deferred-visibility-host.js +0 -38
  218. package/lib/module/shared/components/screen-container/deferred-visibility-host.js.map +0 -1
  219. package/lib/module/shared/hooks/animation/use-associated-style.js +0 -229
  220. package/lib/module/shared/hooks/animation/use-associated-style.js.map +0 -1
  221. package/lib/module/shared/providers/screen/helpers/resolve-interpolated-style-output.js +0 -44
  222. package/lib/module/shared/providers/screen/helpers/resolve-interpolated-style-output.js.map +0 -1
  223. package/lib/module/shared/providers/screen/styles.provider.js.map +0 -1
  224. package/lib/typescript/shared/components/screen-container/deferred-visibility-host.d.ts +0 -13
  225. package/lib/typescript/shared/components/screen-container/deferred-visibility-host.d.ts.map +0 -1
  226. package/lib/typescript/shared/hooks/animation/use-associated-style.d.ts +0 -32
  227. package/lib/typescript/shared/hooks/animation/use-associated-style.d.ts.map +0 -1
  228. package/lib/typescript/shared/providers/screen/helpers/resolve-interpolated-style-output.d.ts +0 -14
  229. package/lib/typescript/shared/providers/screen/helpers/resolve-interpolated-style-output.d.ts.map +0 -1
  230. package/lib/typescript/shared/providers/screen/styles.provider.d.ts.map +0 -1
  231. package/src/shared/components/screen-container/deferred-visibility-host.tsx +0 -37
  232. package/src/shared/hooks/animation/use-associated-style.ts +0 -297
  233. package/src/shared/providers/screen/helpers/resolve-interpolated-style-output.ts +0 -61
  234. package/src/shared/providers/screen/styles.provider.tsx +0 -164
@@ -1,234 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useAssociatedStyles = void 0;
7
- var _reactNativeReanimated = require("react-native-reanimated");
8
- var _constants = require("../../constants");
9
- var _descriptors = require("../../providers/screen/descriptors");
10
- var _styles = require("../../providers/screen/styles.provider");
11
- var _animation = require("../../stores/animation.store");
12
- var _bounds = require("../../stores/bounds");
13
- const TRANSIENT_EMPTY_GRACE_FRAMES = 2;
14
- const IDENTITY_TRANSFORM = [{
15
- translateX: 0
16
- }, {
17
- translateY: 0
18
- }, {
19
- scaleX: 1
20
- }, {
21
- scaleY: 1
22
- }];
23
- const ALWAYS_RESET_STYLE_VALUES = {
24
- zIndex: 0,
25
- elevation: 0
26
- };
27
- const hasAnyKeys = record => {
28
- "worklet";
29
-
30
- for (const _key in record) {
31
- return true;
32
- }
33
- return false;
34
- };
35
- const collectKeyMeta = record => {
36
- "worklet";
37
-
38
- const keys = {};
39
- let hasAny = false;
40
- for (const key in record) {
41
- keys[key] = true;
42
- hasAny = true;
43
- }
44
- return {
45
- keys,
46
- hasAny
47
- };
48
- };
49
- const getGroupTagParts = tag => {
50
- "worklet";
51
-
52
- const separatorIndex = tag.indexOf(":");
53
- if (separatorIndex <= 0 || separatorIndex >= tag.length - 1) {
54
- return null;
55
- }
56
- return {
57
- group: tag.slice(0, separatorIndex),
58
- memberId: tag.slice(separatorIndex + 1)
59
- };
60
- };
61
- const allowPreviousTransitionEvidence = tag => {
62
- "worklet";
63
-
64
- const groupTagParts = getGroupTagParts(tag);
65
- if (!groupTagParts) {
66
- return true;
67
- }
68
-
69
- // For grouped boundaries, only the active member can inherit
70
- // transition evidence from the previous screen.
71
- const activeGroupMemberId = _bounds.BoundStore.getGroupActiveId(groupTagParts.group);
72
- return activeGroupMemberId !== null && activeGroupMemberId === groupTagParts.memberId;
73
- };
74
- const buildUnsetPatch = ({
75
- previousKeys,
76
- currentKeys,
77
- shouldDeferUnset,
78
- resetTransformOnUnset
79
- }) => {
80
- "worklet";
81
-
82
- const unsetPatch = {};
83
- for (const key in previousKeys) {
84
- if (currentKeys[key]) continue;
85
- const shouldAlwaysUnset = key in ALWAYS_RESET_STYLE_VALUES;
86
- if (shouldDeferUnset && !shouldAlwaysUnset) continue;
87
- if (key === "transform" && resetTransformOnUnset) {
88
- unsetPatch.transform = IDENTITY_TRANSFORM;
89
- } else if (key in ALWAYS_RESET_STYLE_VALUES) {
90
- unsetPatch[key] = ALWAYS_RESET_STYLE_VALUES[key];
91
- } else {
92
- unsetPatch[key] = undefined;
93
- }
94
- }
95
- return unsetPatch;
96
- };
97
-
98
- /**
99
- * Resolves the animated style associated with an `id` (styleId/bound tag), while
100
- * guarding against transient glitches during shared-boundary transitions.
101
- *
102
- * Why this exists:
103
- * - During push/pop, links and style maps can be briefly out of sync.
104
- * - Without guards, boundaries can briefly drop back to raw local layout.
105
- * - Cleanup must be deterministic so stale transform keys do not linger.
106
- *
107
- * Local style model (worklet state machine):
108
- *
109
- * transient empty style map -> hold-last-style
110
- * otherwise -> live
111
- *
112
- * - `hold-last-style`: reuse last resolved style through short empty-map gaps.
113
- * - `live`: apply current resolved style directly.
114
- *
115
- * For grouped tags (`group:id`), previous-screen transition evidence is only
116
- * considered for the group's active member to avoid hiding non-active siblings.
117
- */
118
- const useAssociatedStyles = ({
119
- id,
120
- resetTransformOnUnset = false
121
- } = {}) => {
122
- const {
123
- stylesMap,
124
- ancestorStylesMaps
125
- } = (0, _styles.useScreenStyles)();
126
- const {
127
- previousScreenKey,
128
- currentScreenKey,
129
- hasConfiguredInterpolator
130
- } = (0, _descriptors.useDescriptorDerivations)();
131
- const isAnimating = _animation.AnimationStore.getValue(currentScreenKey, "animating");
132
- const isClosing = _animation.AnimationStore.getValue(currentScreenKey, "closing");
133
- const previousAppliedKeys = (0, _reactNativeReanimated.useSharedValue)({});
134
- const emptyGraceFrameCount = (0, _reactNativeReanimated.useSharedValue)(0);
135
- const lastResolvedBase = (0, _reactNativeReanimated.useSharedValue)(null);
136
- const associatedStyles = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
137
- "worklet";
138
-
139
- if (!id) {
140
- return _constants.NO_STYLES;
141
- }
142
-
143
- // Check local slot first, then fall back to parent
144
- const ownSlot = stylesMap.value[id];
145
- const ancestorSlot = ancestorStylesMaps.find(ancestorMap => ancestorMap.value[id])?.value[id];
146
- const slot = ownSlot || ancestorSlot;
147
- const base = slot?.style || _constants.NO_STYLES;
148
- const {
149
- keys: currentKeys,
150
- hasAny: hasCurrentKeys
151
- } = collectKeyMeta(base);
152
- const hasPreviousKeys = hasAnyKeys(previousAppliedKeys.value);
153
- const isTransitioning = isAnimating.get() !== 0 || isClosing.get() !== 0;
154
- const canUsePreviousTransitionEvidence = resetTransformOnUnset && allowPreviousTransitionEvidence(id);
155
- const hasActiveLink = resetTransformOnUnset && canUsePreviousTransitionEvidence && (_bounds.BoundStore.hasPendingLink(id) || _bounds.BoundStore.hasSourceLink(id, currentScreenKey) || _bounds.BoundStore.hasDestinationLink(id, currentScreenKey));
156
- const hasPreviousTransitionEvidence = canUsePreviousTransitionEvidence && !!previousScreenKey && (!!_bounds.BoundStore.getSnapshot(id, previousScreenKey) || _bounds.BoundStore.hasBoundaryPresence(id, previousScreenKey));
157
- const shouldProtectInFlightStyles = resetTransformOnUnset && (hasActiveLink || hasPreviousTransitionEvidence);
158
- if (hasCurrentKeys) {
159
- lastResolvedBase.value = base;
160
- }
161
- const hasPersistedResolvedStyle = !!lastResolvedBase.value;
162
- const isTransientEmptyGap = hasConfiguredInterpolator && shouldProtectInFlightStyles && !isTransitioning && !hasCurrentKeys && (hasPreviousKeys || hasPersistedResolvedStyle);
163
-
164
- // Keep styles stable for a couple of frames to absorb
165
- // transient empty-map gaps on slower devices.
166
- if (isTransientEmptyGap) {
167
- emptyGraceFrameCount.value = emptyGraceFrameCount.value + 1;
168
- } else {
169
- emptyGraceFrameCount.value = 0;
170
- }
171
- const isWithinGapGrace = isTransientEmptyGap && emptyGraceFrameCount.value <= TRANSIENT_EMPTY_GRACE_FRAMES;
172
- const shouldDelayUnset = resetTransformOnUnset && shouldProtectInFlightStyles && (isTransitioning || isWithinGapGrace);
173
-
174
- /**
175
- * Associated-style state machine:
176
- * - hold-last-style: transient empty frame; reuse last resolved style.
177
- * - live: apply current resolved style normally.
178
- */
179
- let mode = "live";
180
- if (shouldDelayUnset && !hasCurrentKeys && hasPersistedResolvedStyle) {
181
- mode = "hold-last-style";
182
- }
183
- const resolvedBase = mode === "hold-last-style" ? lastResolvedBase.value : base;
184
- const unsetPatch = buildUnsetPatch({
185
- previousKeys: previousAppliedKeys.value,
186
- currentKeys,
187
- shouldDeferUnset: shouldDelayUnset,
188
- resetTransformOnUnset
189
- });
190
- if (shouldDelayUnset) {
191
- previousAppliedKeys.value = {
192
- ...previousAppliedKeys.value,
193
- ...currentKeys
194
- };
195
- } else {
196
- previousAppliedKeys.value = currentKeys;
197
-
198
- // Drop cached style when fully idle so future transitions
199
- // start from a clean state.
200
- if (!hasCurrentKeys && !shouldProtectInFlightStyles && !isTransitioning) {
201
- lastResolvedBase.value = null;
202
- }
203
- }
204
- const mergedBase = {
205
- ...unsetPatch,
206
- ...resolvedBase
207
- };
208
- let opacity = 1;
209
- if ("opacity" in mergedBase) {
210
- opacity = mergedBase.opacity;
211
- }
212
- if ("opacity" in mergedBase) {
213
- return mergedBase;
214
- }
215
- return {
216
- ...mergedBase,
217
- opacity
218
- };
219
- });
220
- const associatedProps = (0, _reactNativeReanimated.useAnimatedProps)(() => {
221
- "worklet";
222
-
223
- if (!id) return _constants.NO_PROPS;
224
- const ownSlot = stylesMap.value[id];
225
- const ancestorSlot = ancestorStylesMaps.find(ancestorMap => ancestorMap.value[id])?.value[id];
226
- return (ownSlot || ancestorSlot)?.props ?? _constants.NO_PROPS;
227
- });
228
- return {
229
- associatedStyles,
230
- associatedProps
231
- };
232
- };
233
- exports.useAssociatedStyles = useAssociatedStyles;
234
- //# sourceMappingURL=use-associated-style.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactNativeReanimated","require","_constants","_descriptors","_styles","_animation","_bounds","TRANSIENT_EMPTY_GRACE_FRAMES","IDENTITY_TRANSFORM","translateX","translateY","scaleX","scaleY","ALWAYS_RESET_STYLE_VALUES","zIndex","elevation","hasAnyKeys","record","_key","collectKeyMeta","keys","hasAny","key","getGroupTagParts","tag","separatorIndex","indexOf","length","group","slice","memberId","allowPreviousTransitionEvidence","groupTagParts","activeGroupMemberId","BoundStore","getGroupActiveId","buildUnsetPatch","previousKeys","currentKeys","shouldDeferUnset","resetTransformOnUnset","unsetPatch","shouldAlwaysUnset","transform","undefined","useAssociatedStyles","id","stylesMap","ancestorStylesMaps","useScreenStyles","previousScreenKey","currentScreenKey","hasConfiguredInterpolator","useDescriptorDerivations","isAnimating","AnimationStore","getValue","isClosing","previousAppliedKeys","useSharedValue","emptyGraceFrameCount","lastResolvedBase","associatedStyles","useAnimatedStyle","NO_STYLES","ownSlot","value","ancestorSlot","find","ancestorMap","slot","base","style","hasCurrentKeys","hasPreviousKeys","isTransitioning","get","canUsePreviousTransitionEvidence","hasActiveLink","hasPendingLink","hasSourceLink","hasDestinationLink","hasPreviousTransitionEvidence","getSnapshot","hasBoundaryPresence","shouldProtectInFlightStyles","hasPersistedResolvedStyle","isTransientEmptyGap","isWithinGapGrace","shouldDelayUnset","mode","resolvedBase","mergedBase","opacity","associatedProps","useAnimatedProps","NO_PROPS","props","exports"],"sourceRoot":"../../../../../src","sources":["shared/hooks/animation/use-associated-style.ts"],"mappings":"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","ignoreList":[]}
@@ -1,50 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.resolveInterpolatedStyleOutput = exports.resolveEffectiveResolutionMode = exports.PASS_THROUGH_STYLE_OUTPUT = void 0;
7
- var _normalizeInterpolatedStyle = require("../../../utils/normalize-interpolated-style");
8
- const EMPTY_STYLES = {};
9
- const PASS_THROUGH_STYLE_OUTPUT = exports.PASS_THROUGH_STYLE_OUTPUT = {
10
- stylesMap: EMPTY_STYLES,
11
- resolutionMode: "pass-through",
12
- wasLegacy: false
13
- };
14
- const resolveEffectiveResolutionMode = ({
15
- resolutionMode,
16
- isSettled
17
- }) => {
18
- "worklet";
19
-
20
- if (resolutionMode === "deferred" && isSettled) {
21
- return "pass-through";
22
- }
23
- return resolutionMode;
24
- };
25
- exports.resolveEffectiveResolutionMode = resolveEffectiveResolutionMode;
26
- const resolveInterpolatedStyleOutput = raw => {
27
- "worklet";
28
-
29
- if (raw === "defer") {
30
- return {
31
- stylesMap: EMPTY_STYLES,
32
- resolutionMode: "deferred",
33
- wasLegacy: false
34
- };
35
- }
36
- if (raw == null) {
37
- return PASS_THROUGH_STYLE_OUTPUT;
38
- }
39
- const {
40
- result,
41
- wasLegacy
42
- } = (0, _normalizeInterpolatedStyle.normalizeInterpolatedStyle)(raw ?? EMPTY_STYLES);
43
- return {
44
- stylesMap: result,
45
- resolutionMode: "live",
46
- wasLegacy
47
- };
48
- };
49
- exports.resolveInterpolatedStyleOutput = resolveInterpolatedStyleOutput;
50
- //# sourceMappingURL=resolve-interpolated-style-output.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_normalizeInterpolatedStyle","require","EMPTY_STYLES","PASS_THROUGH_STYLE_OUTPUT","exports","stylesMap","resolutionMode","wasLegacy","resolveEffectiveResolutionMode","isSettled","resolveInterpolatedStyleOutput","raw","result","normalizeInterpolatedStyle"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/helpers/resolve-interpolated-style-output.ts"],"mappings":";;;;;;AAIA,IAAAA,2BAAA,GAAAC,OAAA;AAUA,MAAMC,YAAY,GAAG,CAAC,CAA0C;AAEzD,MAAMC,yBAA0D,GAAAC,OAAA,CAAAD,yBAAA,GAAG;EACzEE,SAAS,EAAEH,YAAY;EACvBI,cAAc,EAAE,cAAc;EAC9BC,SAAS,EAAE;AACZ,CAAC;AAEM,MAAMC,8BAA8B,GAAGA,CAAC;EAC9CF,cAAc;EACdG;AAID,CAAC,KAAgC;EAChC,SAAS;;EACT,IAAIH,cAAc,KAAK,UAAU,IAAIG,SAAS,EAAE;IAC/C,OAAO,cAAc;EACtB;EACA,OAAOH,cAAc;AACtB,CAAC;AAACF,OAAA,CAAAI,8BAAA,GAAAA,8BAAA;AAEK,MAAME,8BAA8B,GAC1CC,GAAuE,IAClC;EACrC,SAAS;;EAET,IAAIA,GAAG,KAAK,OAAO,EAAE;IACpB,OAAO;MACNN,SAAS,EAAEH,YAAY;MACvBI,cAAc,EAAE,UAAU;MAC1BC,SAAS,EAAE;IACZ,CAAC;EACF;EAEA,IAAII,GAAG,IAAI,IAAI,EAAE;IAChB,OAAOR,yBAAyB;EACjC;EAEA,MAAM;IAAES,MAAM;IAAEL;EAAU,CAAC,GAAG,IAAAM,sDAA0B,EAACF,GAAG,IAAIT,YAAY,CAAC;EAE7E,OAAO;IACNG,SAAS,EAAEO,MAAM;IACjBN,cAAc,EAAE,MAAM;IACtBC;EACD,CAAC;AACF,CAAC;AAACH,OAAA,CAAAM,8BAAA,GAAAA,8BAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_constants","_createProvider","_interopRequireDefault","_logger","_animation","_resolveInterpolatedStyleOutput","e","__esModule","default","ScreenStylesProvider","ScreenStylesContext","useScreenStylesContext","useScreenStyles","createProvider","guarded","children","parentCtx","useContext","screenInterpolatorProps","nextInterpolator","currentInterpolator","boundsAccessor","useScreenAnimationContext","isGesturingDuringCloseAnimation","useSharedValue","hasWarnedLegacy","styleResolution","useDerivedValue","props","value","current","next","progress","isDragging","gesture","dragging","isNextClosing","closing","isInGestureMode","interpolator","PASS_THROUGH_STYLE_OUTPUT","effectiveProgress","effectiveNext","undefined","raw","bounds","stylesMap","resolutionMode","wasLegacy","resolveInterpolatedStyleOutput","__DEV__","logger","warn","resolveEffectiveResolutionMode","isSettled","settled","err","console","NO_STYLES","useMemo","ancestorStylesMaps","exports"],"sourceRoot":"../../../../../src","sources":["shared/providers/screen/styles.provider.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,38 +0,0 @@
1
- "use strict";
2
-
3
- import { memo } from "react";
4
- import { StyleSheet } from "react-native";
5
- import Animated, { useAnimatedStyle } from "react-native-reanimated";
6
- import { HIDDEN_STYLE, VISIBLE_STYLE } from "../../constants";
7
- import { useScreenStyles } from "../../providers/screen/styles.provider";
8
- import { jsx as _jsx } from "react/jsx-runtime";
9
- /**
10
- * Hides the full screen visual subtree while an interpolator explicitly reports
11
- * that it is not safe to reveal yet.
12
- *
13
- * This sits above backdrop/content/mask/surface so a deferred transition does
14
- * not leak raw first-paint UI from nested layers.
15
- */
16
- export const DeferredVisibilityHost = /*#__PURE__*/memo(({
17
- children
18
- }) => {
19
- const {
20
- resolutionMode
21
- } = useScreenStyles();
22
- const animatedStyle = useAnimatedStyle(() => {
23
- "worklet";
24
-
25
- return resolutionMode.value === "deferred" ? HIDDEN_STYLE : VISIBLE_STYLE;
26
- });
27
- return /*#__PURE__*/_jsx(Animated.View, {
28
- collapsable: false,
29
- style: [styles.host, animatedStyle],
30
- children: children
31
- });
32
- });
33
- const styles = StyleSheet.create({
34
- host: {
35
- flex: 1
36
- }
37
- });
38
- //# sourceMappingURL=deferred-visibility-host.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["memo","StyleSheet","Animated","useAnimatedStyle","HIDDEN_STYLE","VISIBLE_STYLE","useScreenStyles","jsx","_jsx","DeferredVisibilityHost","children","resolutionMode","animatedStyle","value","View","collapsable","style","styles","host","create","flex"],"sourceRoot":"../../../../../src","sources":["shared/components/screen-container/deferred-visibility-host.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,QAAQ,IAAIC,gBAAgB,QAAQ,yBAAyB;AACpE,SAASC,YAAY,EAAEC,aAAa,QAAQ,iBAAiB;AAC7D,SAASC,eAAe,QAAQ,wCAAwC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAAsB,gBAAGT,IAAI,CAAC,CAAC;EAAEU;AAAgB,CAAC,KAAK;EACnE,MAAM;IAAEC;EAAe,CAAC,GAAGL,eAAe,CAAC,CAAC;EAE5C,MAAMM,aAAa,GAAGT,gBAAgB,CAAC,MAAM;IAC5C,SAAS;;IACT,OAAOQ,cAAc,CAACE,KAAK,KAAK,UAAU,GAAGT,YAAY,GAAGC,aAAa;EAC1E,CAAC,CAAC;EAEF,oBACCG,IAAA,CAACN,QAAQ,CAACY,IAAI;IAACC,WAAW,EAAE,KAAM;IAACC,KAAK,EAAE,CAACC,MAAM,CAACC,IAAI,EAAEN,aAAa,CAAE;IAAAF,QAAA,EACrEA;EAAQ,CACK,CAAC;AAElB,CAAC,CAAC;AAEF,MAAMO,MAAM,GAAGhB,UAAU,CAACkB,MAAM,CAAC;EAChCD,IAAI,EAAE;IACLE,IAAI,EAAE;EACP;AACD,CAAC,CAAC","ignoreList":[]}
@@ -1,229 +0,0 @@
1
- "use strict";
2
-
3
- import { useAnimatedProps, useAnimatedStyle, useSharedValue } from "react-native-reanimated";
4
- import { NO_PROPS, NO_STYLES } from "../../constants";
5
- import { useDescriptorDerivations } from "../../providers/screen/descriptors";
6
- import { useScreenStyles } from "../../providers/screen/styles.provider";
7
- import { AnimationStore } from "../../stores/animation.store";
8
- import { BoundStore } from "../../stores/bounds";
9
- const TRANSIENT_EMPTY_GRACE_FRAMES = 2;
10
- const IDENTITY_TRANSFORM = [{
11
- translateX: 0
12
- }, {
13
- translateY: 0
14
- }, {
15
- scaleX: 1
16
- }, {
17
- scaleY: 1
18
- }];
19
- const ALWAYS_RESET_STYLE_VALUES = {
20
- zIndex: 0,
21
- elevation: 0
22
- };
23
- const hasAnyKeys = record => {
24
- "worklet";
25
-
26
- for (const _key in record) {
27
- return true;
28
- }
29
- return false;
30
- };
31
- const collectKeyMeta = record => {
32
- "worklet";
33
-
34
- const keys = {};
35
- let hasAny = false;
36
- for (const key in record) {
37
- keys[key] = true;
38
- hasAny = true;
39
- }
40
- return {
41
- keys,
42
- hasAny
43
- };
44
- };
45
- const getGroupTagParts = tag => {
46
- "worklet";
47
-
48
- const separatorIndex = tag.indexOf(":");
49
- if (separatorIndex <= 0 || separatorIndex >= tag.length - 1) {
50
- return null;
51
- }
52
- return {
53
- group: tag.slice(0, separatorIndex),
54
- memberId: tag.slice(separatorIndex + 1)
55
- };
56
- };
57
- const allowPreviousTransitionEvidence = tag => {
58
- "worklet";
59
-
60
- const groupTagParts = getGroupTagParts(tag);
61
- if (!groupTagParts) {
62
- return true;
63
- }
64
-
65
- // For grouped boundaries, only the active member can inherit
66
- // transition evidence from the previous screen.
67
- const activeGroupMemberId = BoundStore.getGroupActiveId(groupTagParts.group);
68
- return activeGroupMemberId !== null && activeGroupMemberId === groupTagParts.memberId;
69
- };
70
- const buildUnsetPatch = ({
71
- previousKeys,
72
- currentKeys,
73
- shouldDeferUnset,
74
- resetTransformOnUnset
75
- }) => {
76
- "worklet";
77
-
78
- const unsetPatch = {};
79
- for (const key in previousKeys) {
80
- if (currentKeys[key]) continue;
81
- const shouldAlwaysUnset = key in ALWAYS_RESET_STYLE_VALUES;
82
- if (shouldDeferUnset && !shouldAlwaysUnset) continue;
83
- if (key === "transform" && resetTransformOnUnset) {
84
- unsetPatch.transform = IDENTITY_TRANSFORM;
85
- } else if (key in ALWAYS_RESET_STYLE_VALUES) {
86
- unsetPatch[key] = ALWAYS_RESET_STYLE_VALUES[key];
87
- } else {
88
- unsetPatch[key] = undefined;
89
- }
90
- }
91
- return unsetPatch;
92
- };
93
-
94
- /**
95
- * Resolves the animated style associated with an `id` (styleId/bound tag), while
96
- * guarding against transient glitches during shared-boundary transitions.
97
- *
98
- * Why this exists:
99
- * - During push/pop, links and style maps can be briefly out of sync.
100
- * - Without guards, boundaries can briefly drop back to raw local layout.
101
- * - Cleanup must be deterministic so stale transform keys do not linger.
102
- *
103
- * Local style model (worklet state machine):
104
- *
105
- * transient empty style map -> hold-last-style
106
- * otherwise -> live
107
- *
108
- * - `hold-last-style`: reuse last resolved style through short empty-map gaps.
109
- * - `live`: apply current resolved style directly.
110
- *
111
- * For grouped tags (`group:id`), previous-screen transition evidence is only
112
- * considered for the group's active member to avoid hiding non-active siblings.
113
- */
114
- export const useAssociatedStyles = ({
115
- id,
116
- resetTransformOnUnset = false
117
- } = {}) => {
118
- const {
119
- stylesMap,
120
- ancestorStylesMaps
121
- } = useScreenStyles();
122
- const {
123
- previousScreenKey,
124
- currentScreenKey,
125
- hasConfiguredInterpolator
126
- } = useDescriptorDerivations();
127
- const isAnimating = AnimationStore.getValue(currentScreenKey, "animating");
128
- const isClosing = AnimationStore.getValue(currentScreenKey, "closing");
129
- const previousAppliedKeys = useSharedValue({});
130
- const emptyGraceFrameCount = useSharedValue(0);
131
- const lastResolvedBase = useSharedValue(null);
132
- const associatedStyles = useAnimatedStyle(() => {
133
- "worklet";
134
-
135
- if (!id) {
136
- return NO_STYLES;
137
- }
138
-
139
- // Check local slot first, then fall back to parent
140
- const ownSlot = stylesMap.value[id];
141
- const ancestorSlot = ancestorStylesMaps.find(ancestorMap => ancestorMap.value[id])?.value[id];
142
- const slot = ownSlot || ancestorSlot;
143
- const base = slot?.style || NO_STYLES;
144
- const {
145
- keys: currentKeys,
146
- hasAny: hasCurrentKeys
147
- } = collectKeyMeta(base);
148
- const hasPreviousKeys = hasAnyKeys(previousAppliedKeys.value);
149
- const isTransitioning = isAnimating.get() !== 0 || isClosing.get() !== 0;
150
- const canUsePreviousTransitionEvidence = resetTransformOnUnset && allowPreviousTransitionEvidence(id);
151
- const hasActiveLink = resetTransformOnUnset && canUsePreviousTransitionEvidence && (BoundStore.hasPendingLink(id) || BoundStore.hasSourceLink(id, currentScreenKey) || BoundStore.hasDestinationLink(id, currentScreenKey));
152
- const hasPreviousTransitionEvidence = canUsePreviousTransitionEvidence && !!previousScreenKey && (!!BoundStore.getSnapshot(id, previousScreenKey) || BoundStore.hasBoundaryPresence(id, previousScreenKey));
153
- const shouldProtectInFlightStyles = resetTransformOnUnset && (hasActiveLink || hasPreviousTransitionEvidence);
154
- if (hasCurrentKeys) {
155
- lastResolvedBase.value = base;
156
- }
157
- const hasPersistedResolvedStyle = !!lastResolvedBase.value;
158
- const isTransientEmptyGap = hasConfiguredInterpolator && shouldProtectInFlightStyles && !isTransitioning && !hasCurrentKeys && (hasPreviousKeys || hasPersistedResolvedStyle);
159
-
160
- // Keep styles stable for a couple of frames to absorb
161
- // transient empty-map gaps on slower devices.
162
- if (isTransientEmptyGap) {
163
- emptyGraceFrameCount.value = emptyGraceFrameCount.value + 1;
164
- } else {
165
- emptyGraceFrameCount.value = 0;
166
- }
167
- const isWithinGapGrace = isTransientEmptyGap && emptyGraceFrameCount.value <= TRANSIENT_EMPTY_GRACE_FRAMES;
168
- const shouldDelayUnset = resetTransformOnUnset && shouldProtectInFlightStyles && (isTransitioning || isWithinGapGrace);
169
-
170
- /**
171
- * Associated-style state machine:
172
- * - hold-last-style: transient empty frame; reuse last resolved style.
173
- * - live: apply current resolved style normally.
174
- */
175
- let mode = "live";
176
- if (shouldDelayUnset && !hasCurrentKeys && hasPersistedResolvedStyle) {
177
- mode = "hold-last-style";
178
- }
179
- const resolvedBase = mode === "hold-last-style" ? lastResolvedBase.value : base;
180
- const unsetPatch = buildUnsetPatch({
181
- previousKeys: previousAppliedKeys.value,
182
- currentKeys,
183
- shouldDeferUnset: shouldDelayUnset,
184
- resetTransformOnUnset
185
- });
186
- if (shouldDelayUnset) {
187
- previousAppliedKeys.value = {
188
- ...previousAppliedKeys.value,
189
- ...currentKeys
190
- };
191
- } else {
192
- previousAppliedKeys.value = currentKeys;
193
-
194
- // Drop cached style when fully idle so future transitions
195
- // start from a clean state.
196
- if (!hasCurrentKeys && !shouldProtectInFlightStyles && !isTransitioning) {
197
- lastResolvedBase.value = null;
198
- }
199
- }
200
- const mergedBase = {
201
- ...unsetPatch,
202
- ...resolvedBase
203
- };
204
- let opacity = 1;
205
- if ("opacity" in mergedBase) {
206
- opacity = mergedBase.opacity;
207
- }
208
- if ("opacity" in mergedBase) {
209
- return mergedBase;
210
- }
211
- return {
212
- ...mergedBase,
213
- opacity
214
- };
215
- });
216
- const associatedProps = useAnimatedProps(() => {
217
- "worklet";
218
-
219
- if (!id) return NO_PROPS;
220
- const ownSlot = stylesMap.value[id];
221
- const ancestorSlot = ancestorStylesMaps.find(ancestorMap => ancestorMap.value[id])?.value[id];
222
- return (ownSlot || ancestorSlot)?.props ?? NO_PROPS;
223
- });
224
- return {
225
- associatedStyles,
226
- associatedProps
227
- };
228
- };
229
- //# sourceMappingURL=use-associated-style.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["useAnimatedProps","useAnimatedStyle","useSharedValue","NO_PROPS","NO_STYLES","useDescriptorDerivations","useScreenStyles","AnimationStore","BoundStore","TRANSIENT_EMPTY_GRACE_FRAMES","IDENTITY_TRANSFORM","translateX","translateY","scaleX","scaleY","ALWAYS_RESET_STYLE_VALUES","zIndex","elevation","hasAnyKeys","record","_key","collectKeyMeta","keys","hasAny","key","getGroupTagParts","tag","separatorIndex","indexOf","length","group","slice","memberId","allowPreviousTransitionEvidence","groupTagParts","activeGroupMemberId","getGroupActiveId","buildUnsetPatch","previousKeys","currentKeys","shouldDeferUnset","resetTransformOnUnset","unsetPatch","shouldAlwaysUnset","transform","undefined","useAssociatedStyles","id","stylesMap","ancestorStylesMaps","previousScreenKey","currentScreenKey","hasConfiguredInterpolator","isAnimating","getValue","isClosing","previousAppliedKeys","emptyGraceFrameCount","lastResolvedBase","associatedStyles","ownSlot","value","ancestorSlot","find","ancestorMap","slot","base","style","hasCurrentKeys","hasPreviousKeys","isTransitioning","get","canUsePreviousTransitionEvidence","hasActiveLink","hasPendingLink","hasSourceLink","hasDestinationLink","hasPreviousTransitionEvidence","getSnapshot","hasBoundaryPresence","shouldProtectInFlightStyles","hasPersistedResolvedStyle","isTransientEmptyGap","isWithinGapGrace","shouldDelayUnset","mode","resolvedBase","mergedBase","opacity","associatedProps","props"],"sourceRoot":"../../../../../src","sources":["shared/hooks/animation/use-associated-style.ts"],"mappings":"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","ignoreList":[]}
@@ -1,44 +0,0 @@
1
- "use strict";
2
-
3
- import { normalizeInterpolatedStyle } from "../../../utils/normalize-interpolated-style";
4
- const EMPTY_STYLES = {};
5
- export const PASS_THROUGH_STYLE_OUTPUT = {
6
- stylesMap: EMPTY_STYLES,
7
- resolutionMode: "pass-through",
8
- wasLegacy: false
9
- };
10
- export const resolveEffectiveResolutionMode = ({
11
- resolutionMode,
12
- isSettled
13
- }) => {
14
- "worklet";
15
-
16
- if (resolutionMode === "deferred" && isSettled) {
17
- return "pass-through";
18
- }
19
- return resolutionMode;
20
- };
21
- export const resolveInterpolatedStyleOutput = raw => {
22
- "worklet";
23
-
24
- if (raw === "defer") {
25
- return {
26
- stylesMap: EMPTY_STYLES,
27
- resolutionMode: "deferred",
28
- wasLegacy: false
29
- };
30
- }
31
- if (raw == null) {
32
- return PASS_THROUGH_STYLE_OUTPUT;
33
- }
34
- const {
35
- result,
36
- wasLegacy
37
- } = normalizeInterpolatedStyle(raw ?? EMPTY_STYLES);
38
- return {
39
- stylesMap: result,
40
- resolutionMode: "live",
41
- wasLegacy
42
- };
43
- };
44
- //# sourceMappingURL=resolve-interpolated-style-output.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["normalizeInterpolatedStyle","EMPTY_STYLES","PASS_THROUGH_STYLE_OUTPUT","stylesMap","resolutionMode","wasLegacy","resolveEffectiveResolutionMode","isSettled","resolveInterpolatedStyleOutput","raw","result"],"sourceRoot":"../../../../../../src","sources":["shared/providers/screen/helpers/resolve-interpolated-style-output.ts"],"mappings":";;AAIA,SAASA,0BAA0B,QAAQ,6CAA6C;AAUxF,MAAMC,YAAY,GAAG,CAAC,CAA0C;AAEhE,OAAO,MAAMC,yBAA0D,GAAG;EACzEC,SAAS,EAAEF,YAAY;EACvBG,cAAc,EAAE,cAAc;EAC9BC,SAAS,EAAE;AACZ,CAAC;AAED,OAAO,MAAMC,8BAA8B,GAAGA,CAAC;EAC9CF,cAAc;EACdG;AAID,CAAC,KAAgC;EAChC,SAAS;;EACT,IAAIH,cAAc,KAAK,UAAU,IAAIG,SAAS,EAAE;IAC/C,OAAO,cAAc;EACtB;EACA,OAAOH,cAAc;AACtB,CAAC;AAED,OAAO,MAAMI,8BAA8B,GAC1CC,GAAuE,IAClC;EACrC,SAAS;;EAET,IAAIA,GAAG,KAAK,OAAO,EAAE;IACpB,OAAO;MACNN,SAAS,EAAEF,YAAY;MACvBG,cAAc,EAAE,UAAU;MAC1BC,SAAS,EAAE;IACZ,CAAC;EACF;EAEA,IAAII,GAAG,IAAI,IAAI,EAAE;IAChB,OAAOP,yBAAyB;EACjC;EAEA,MAAM;IAAEQ,MAAM;IAAEL;EAAU,CAAC,GAAGL,0BAA0B,CAACS,GAAG,IAAIR,YAAY,CAAC;EAE7E,OAAO;IACNE,SAAS,EAAEO,MAAM;IACjBN,cAAc,EAAE,MAAM;IACtBC;EACD,CAAC;AACF,CAAC","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["useContext","useMemo","useDerivedValue","useSharedValue","NO_STYLES","createProvider","logger","useScreenAnimationContext","PASS_THROUGH_STYLE_OUTPUT","resolveEffectiveResolutionMode","resolveInterpolatedStyleOutput","ScreenStylesProvider","ScreenStylesContext","useScreenStylesContext","useScreenStyles","guarded","children","parentCtx","screenInterpolatorProps","nextInterpolator","currentInterpolator","boundsAccessor","isGesturingDuringCloseAnimation","hasWarnedLegacy","styleResolution","props","value","current","next","progress","isDragging","gesture","dragging","isNextClosing","closing","isInGestureMode","interpolator","effectiveProgress","effectiveNext","undefined","raw","bounds","stylesMap","resolutionMode","wasLegacy","__DEV__","warn","isSettled","settled","err","console","ancestorStylesMaps"],"sourceRoot":"../../../../../src","sources":["shared/providers/screen/styles.provider.tsx"],"mappings":"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","ignoreList":[]}