react-native-screen-transitions 3.9.0-alpha.1 → 3.9.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/shared/components/boundary/components/boundary-target.js +21 -16
- package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/create-boundary-component.js +88 -114
- package/lib/commonjs/shared/components/boundary/create-boundary-component.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/hooks/{use-boundary-presence.js → lifecycles/use-boundary-presence.js} +14 -7
- package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-boundary-presence.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/hooks/{use-initial-destination-measurement.js → lifecycles/use-initial-destination-measurement.js} +51 -24
- package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/hooks/{use-initial-source-measurement.js → lifecycles/use-initial-source-measurement.js} +7 -10
- package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-initial-source-measurement.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/hooks/{use-refresh-boundary.js → lifecycles/use-refresh-boundary.js} +10 -7
- package/lib/commonjs/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js +82 -0
- package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js +10 -13
- package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/index.js +27 -30
- package/lib/commonjs/shared/components/boundary/index.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-local-portal-host.js +58 -0
- package/lib/commonjs/shared/components/boundary/portal/components/boundary-local-portal-host.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/portal/components/host.js +20 -4
- package/lib/commonjs/shared/components/boundary/portal/components/host.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/portal-boundary-host.js +53 -32
- package/lib/commonjs/shared/components/boundary/portal/components/portal-boundary-host.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/components/portal.js +206 -96
- package/lib/commonjs/shared/components/boundary/portal/components/portal.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/hooks/use-host-measurement.js +14 -2
- package/lib/commonjs/shared/components/boundary/portal/hooks/use-host-measurement.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/stores/host-registry.store.js +5 -44
- package/lib/commonjs/shared/components/boundary/portal/stores/host-registry.store.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/stores/portal-boundary-host.store.js +37 -5
- package/lib/commonjs/shared/components/boundary/portal/stores/portal-boundary-host.store.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/teleport.js +15 -2
- package/lib/commonjs/shared/components/boundary/portal/teleport.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/has-local-slot.js +18 -0
- package/lib/commonjs/shared/components/boundary/portal/utils/has-local-slot.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/portal/utils/naming.js +10 -3
- package/lib/commonjs/shared/components/boundary/portal/utils/naming.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/offset-style.js +28 -49
- package/lib/commonjs/shared/components/boundary/portal/utils/offset-style.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js +254 -0
- package/lib/commonjs/shared/components/boundary/portal/utils/ownership.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js +38 -0
- package/lib/commonjs/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js +29 -0
- package/lib/commonjs/shared/components/boundary/portal/utils/shallow-equal.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js +10 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js +25 -0
- package/lib/commonjs/shared/components/boundary/portal/utils/visible-host.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js +65 -0
- package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -0
- package/lib/commonjs/shared/components/boundary/utils/destination-signals.js +12 -2
- package/lib/commonjs/shared/components/boundary/utils/destination-signals.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js +0 -21
- package/lib/commonjs/shared/components/boundary/utils/refresh-signals.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/utils/source-signals.js +4 -9
- package/lib/commonjs/shared/components/boundary/utils/source-signals.js.map +1 -1
- package/lib/commonjs/shared/components/create-transition-aware-component.js +2 -20
- package/lib/commonjs/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/commonjs/shared/components/overlay/variations/float-overlay.js +1 -1
- package/lib/commonjs/shared/components/overlay/variations/float-overlay.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +2 -14
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/content.js +4 -16
- package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js +4 -15
- package/lib/commonjs/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/surface-container.js +4 -16
- package/lib/commonjs/shared/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/commonjs/shared/index.js.map +1 -1
- package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js +6 -3
- package/lib/commonjs/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/derivations.js +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/derivations.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js +143 -24
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/screen-composer.js +1 -1
- package/lib/commonjs/shared/providers/screen/screen-composer.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/compose-slot-style.js +95 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/compose-slot-style.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/normalize-slots.js +30 -9
- package/lib/commonjs/shared/providers/screen/styles/helpers/normalize-slots.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js +32 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/opening-phase.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +16 -11
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js +2 -0
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js +1 -20
- package/lib/commonjs/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js +1 -11
- package/lib/commonjs/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/slot-resolvers.js +96 -0
- package/lib/commonjs/shared/providers/screen/styles/hooks/slot-resolvers.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +36 -36
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +1 -19
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js +8 -3
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/index.js +38 -7
- package/lib/commonjs/shared/providers/screen/styles/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/{styles.provider.js → slot.provider.js} +34 -21
- package/lib/commonjs/shared/providers/screen/styles/slot.provider.js.map +1 -0
- package/lib/commonjs/shared/providers/screen/styles/stores/slot-references.store.js +53 -0
- package/lib/commonjs/shared/providers/screen/styles/stores/slot-references.store.js.map +1 -0
- package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js +37 -2
- package/lib/commonjs/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/entries.js +11 -4
- package/lib/commonjs/shared/stores/bounds/internals/entries.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/links.js +134 -51
- package/lib/commonjs/shared/stores/bounds/internals/links.js.map +1 -1
- package/lib/commonjs/shared/stores/bounds/internals/resolver.js +1 -3
- package/lib/commonjs/shared/stores/bounds/internals/resolver.js.map +1 -1
- package/lib/commonjs/shared/stores/system.store.js +5 -0
- package/lib/commonjs/shared/stores/system.store.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/styles/compute.js +10 -69
- package/lib/commonjs/shared/utils/bounds/helpers/styles/compute.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/helpers/styles/local-transform.js +59 -0
- package/lib/commonjs/shared/utils/bounds/helpers/styles/local-transform.js.map +1 -0
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js +8 -1
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js +59 -0
- package/lib/commonjs/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
- package/lib/commonjs/shared/utils/logger.js +11 -0
- package/lib/commonjs/shared/utils/logger.js.map +1 -1
- package/lib/module/shared/components/boundary/components/boundary-target.js +19 -14
- package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/module/shared/components/boundary/create-boundary-component.js +93 -119
- package/lib/module/shared/components/boundary/create-boundary-component.js.map +1 -1
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-boundary-presence.js +30 -0
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-boundary-presence.js.map +1 -0
- package/lib/module/shared/components/boundary/hooks/{use-initial-destination-measurement.js → lifecycles/use-initial-destination-measurement.js} +51 -24
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.js.map +1 -0
- package/lib/module/shared/components/boundary/hooks/{use-initial-source-measurement.js → lifecycles/use-initial-source-measurement.js} +7 -10
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-initial-source-measurement.js.map +1 -0
- package/lib/module/shared/components/boundary/hooks/{use-refresh-boundary.js → lifecycles/use-refresh-boundary.js} +10 -7
- package/lib/module/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.js.map +1 -0
- package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js +77 -0
- package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -0
- package/lib/module/shared/components/boundary/hooks/use-measurer.js +10 -13
- package/lib/module/shared/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/module/shared/components/boundary/index.js +27 -30
- package/lib/module/shared/components/boundary/index.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/boundary-local-portal-host.js +53 -0
- package/lib/module/shared/components/boundary/portal/components/boundary-local-portal-host.js.map +1 -0
- package/lib/module/shared/components/boundary/portal/components/host.js +21 -5
- package/lib/module/shared/components/boundary/portal/components/host.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/portal-boundary-host.js +53 -32
- package/lib/module/shared/components/boundary/portal/components/portal-boundary-host.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/components/portal.js +213 -103
- package/lib/module/shared/components/boundary/portal/components/portal.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/hooks/use-host-measurement.js +15 -3
- package/lib/module/shared/components/boundary/portal/hooks/use-host-measurement.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/stores/host-registry.store.js +4 -41
- package/lib/module/shared/components/boundary/portal/stores/host-registry.store.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/stores/portal-boundary-host.store.js +35 -4
- package/lib/module/shared/components/boundary/portal/stores/portal-boundary-host.store.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/teleport.js +16 -2
- package/lib/module/shared/components/boundary/portal/teleport.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/utils/has-local-slot.js +13 -0
- package/lib/module/shared/components/boundary/portal/utils/has-local-slot.js.map +1 -0
- package/lib/module/shared/components/boundary/portal/utils/naming.js +8 -2
- package/lib/module/shared/components/boundary/portal/utils/naming.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/utils/offset-style.js +29 -49
- package/lib/module/shared/components/boundary/portal/utils/offset-style.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/utils/ownership.js +246 -0
- package/lib/module/shared/components/boundary/portal/utils/ownership.js.map +1 -0
- package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js +33 -0
- package/lib/module/shared/components/boundary/portal/utils/resolve-portal.js.map +1 -0
- package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js +24 -0
- package/lib/module/shared/components/boundary/portal/utils/shallow-equal.js.map +1 -0
- package/lib/module/shared/components/boundary/portal/utils/teleport-control.js +8 -0
- package/lib/module/shared/components/boundary/portal/utils/teleport-control.js.map +1 -1
- package/lib/module/shared/components/boundary/portal/utils/visible-host.js +20 -0
- package/lib/module/shared/components/boundary/portal/utils/visible-host.js.map +1 -0
- package/lib/module/shared/components/boundary/providers/boundary-root.provider.js +57 -0
- package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -0
- package/lib/module/shared/components/boundary/utils/destination-signals.js +12 -2
- package/lib/module/shared/components/boundary/utils/destination-signals.js.map +1 -1
- package/lib/module/shared/components/boundary/utils/refresh-signals.js +0 -21
- package/lib/module/shared/components/boundary/utils/refresh-signals.js.map +1 -1
- package/lib/module/shared/components/boundary/utils/source-signals.js +4 -9
- package/lib/module/shared/components/boundary/utils/source-signals.js.map +1 -1
- package/lib/module/shared/components/create-transition-aware-component.js +4 -22
- package/lib/module/shared/components/create-transition-aware-component.js.map +1 -1
- package/lib/module/shared/components/overlay/variations/float-overlay.js +2 -2
- package/lib/module/shared/components/overlay/variations/float-overlay.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/backdrop.js +4 -16
- package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/content.js +4 -16
- package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js +5 -16
- package/lib/module/shared/components/screen-container/layers/maybe-masked-navigation-container.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/surface-container.js +4 -16
- package/lib/module/shared/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/module/shared/index.js.map +1 -1
- package/lib/module/shared/providers/helpers/measured-bounds-writes.js +6 -3
- package/lib/module/shared/providers/helpers/measured-bounds-writes.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/derivations.js +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/derivations.js.map +1 -1
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js +144 -25
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.js.map +1 -1
- package/lib/module/shared/providers/screen/screen-composer.js +2 -2
- package/lib/module/shared/providers/screen/screen-composer.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/compose-slot-style.js +89 -0
- package/lib/module/shared/providers/screen/styles/helpers/compose-slot-style.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/normalize-slots.js +30 -9
- package/lib/module/shared/providers/screen/styles/helpers/normalize-slots.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js +26 -0
- package/lib/module/shared/providers/screen/styles/helpers/opening-phase.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js +16 -11
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/index.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js +2 -0
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js +0 -18
- package/lib/module/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js +0 -9
- package/lib/module/shared/providers/screen/styles/helpers/visibility-gate.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/slot-resolvers.js +87 -0
- package/lib/module/shared/providers/screen/styles/hooks/slot-resolvers.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js +36 -36
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js +1 -19
- package/lib/module/shared/providers/screen/styles/hooks/use-maybe-block-visibility.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js +9 -4
- package/lib/module/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/index.js +2 -1
- package/lib/module/shared/providers/screen/styles/index.js.map +1 -1
- package/lib/module/shared/providers/screen/styles/slot.provider.js +66 -0
- package/lib/module/shared/providers/screen/styles/slot.provider.js.map +1 -0
- package/lib/module/shared/providers/screen/styles/stores/slot-references.store.js +47 -0
- package/lib/module/shared/providers/screen/styles/stores/slot-references.store.js.map +1 -0
- package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js +33 -1
- package/lib/module/shared/stores/bounds/helpers/link-pairs.helpers.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/entries.js +11 -4
- package/lib/module/shared/stores/bounds/internals/entries.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/links.js +135 -53
- package/lib/module/shared/stores/bounds/internals/links.js.map +1 -1
- package/lib/module/shared/stores/bounds/internals/resolver.js +1 -3
- package/lib/module/shared/stores/bounds/internals/resolver.js.map +1 -1
- package/lib/module/shared/stores/system.store.js +5 -0
- package/lib/module/shared/stores/system.store.js.map +1 -1
- package/lib/module/shared/types/animation.types.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/styles/compute.js +10 -69
- package/lib/module/shared/utils/bounds/helpers/styles/compute.js.map +1 -1
- package/lib/module/shared/utils/bounds/helpers/styles/local-transform.js +52 -0
- package/lib/module/shared/utils/bounds/helpers/styles/local-transform.js.map +1 -0
- package/lib/module/shared/utils/bounds/navigation/zoom/build.js +9 -2
- package/lib/module/shared/utils/bounds/navigation/zoom/build.js.map +1 -1
- package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js +58 -0
- package/lib/module/shared/utils/bounds/navigation/zoom/helpers.js.map +1 -1
- package/lib/module/shared/utils/logger.js +11 -0
- package/lib/module/shared/utils/logger.js.map +1 -1
- package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/create-boundary-component.d.ts +0 -1
- package/lib/typescript/shared/components/boundary/create-boundary-component.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-boundary-presence.d.ts +11 -0
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-boundary-presence.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts +10 -0
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-source-measurement.d.ts +8 -0
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-initial-source-measurement.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts +10 -0
- package/lib/typescript/shared/components/boundary/hooks/lifecycles/use-refresh-boundary.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts +28 -0
- package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts +5 -6
- package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/index.d.ts +36 -229
- package/lib/typescript/shared/components/boundary/index.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/boundary-local-portal-host.d.ts +8 -0
- package/lib/typescript/shared/components/boundary/portal/components/boundary-local-portal-host.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/portal/components/host.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/portal-boundary-host.d.ts +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/portal-boundary-host.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/portal.d.ts +4 -3
- package/lib/typescript/shared/components/boundary/portal/components/portal.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/hooks/use-host-measurement.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/stores/host-registry.store.d.ts +0 -7
- package/lib/typescript/shared/components/boundary/portal/stores/host-registry.store.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/stores/portal-boundary-host.store.d.ts +16 -1
- package/lib/typescript/shared/components/boundary/portal/stores/portal-boundary-host.store.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/teleport.d.ts +1 -1
- package/lib/typescript/shared/components/boundary/portal/teleport.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/utils/has-local-slot.d.ts +3 -0
- package/lib/typescript/shared/components/boundary/portal/utils/has-local-slot.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts +2 -1
- package/lib/typescript/shared/components/boundary/portal/utils/naming.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/utils/offset-style.d.ts +16 -32
- package/lib/typescript/shared/components/boundary/portal/utils/offset-style.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts +35 -0
- package/lib/typescript/shared/components/boundary/portal/utils/ownership.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts +12 -0
- package/lib/typescript/shared/components/boundary/portal/utils/resolve-portal.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts +8 -0
- package/lib/typescript/shared/components/boundary/portal/utils/shallow-equal.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts +4 -0
- package/lib/typescript/shared/components/boundary/portal/utils/teleport-control.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts +8 -0
- package/lib/typescript/shared/components/boundary/portal/utils/visible-host.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts +37 -0
- package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -0
- package/lib/typescript/shared/components/boundary/types.d.ts +9 -36
- package/lib/typescript/shared/components/boundary/types.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/utils/destination-signals.d.ts +1 -0
- package/lib/typescript/shared/components/boundary/utils/destination-signals.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/utils/refresh-signals.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/utils/source-signals.d.ts +0 -1
- package/lib/typescript/shared/components/boundary/utils/source-signals.d.ts.map +1 -1
- package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/content.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/maybe-masked-navigation-container.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/surface-container.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +3 -215
- package/lib/typescript/shared/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts +3 -3
- package/lib/typescript/shared/providers/helpers/measured-bounds-writes.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/derivations.d.ts +1 -0
- package/lib/typescript/shared/providers/screen/animation/helpers/derivations.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/animation/helpers/pipeline.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/compose-slot-style.d.ts +4 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/compose-slot-style.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/normalize-slots.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts +16 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/opening-phase.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts +3 -4
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.d.ts +2 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.d.ts +0 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts +0 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/visibility-gate.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/hooks/slot-resolvers.d.ts +11 -0
- package/lib/typescript/shared/providers/screen/styles/hooks/slot-resolvers.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts +4 -6
- package/lib/typescript/shared/providers/screen/styles/hooks/use-interpolated-style-maps.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts +0 -1
- package/lib/typescript/shared/providers/screen/styles/hooks/use-maybe-block-visibility.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/index.d.ts +2 -1
- package/lib/typescript/shared/providers/screen/styles/index.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts +18 -0
- package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts.map +1 -0
- package/lib/typescript/shared/providers/screen/styles/stores/slot-references.store.d.ts +6 -0
- package/lib/typescript/shared/providers/screen/styles/stores/slot-references.store.d.ts.map +1 -0
- package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts +8 -1
- package/lib/typescript/shared/stores/bounds/helpers/link-pairs.helpers.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/entries.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/links.d.ts +4 -3
- package/lib/typescript/shared/stores/bounds/internals/links.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/internals/resolver.d.ts.map +1 -1
- package/lib/typescript/shared/stores/bounds/types.d.ts +22 -20
- package/lib/typescript/shared/stores/bounds/types.d.ts.map +1 -1
- package/lib/typescript/shared/stores/system.store.d.ts +1 -0
- package/lib/typescript/shared/stores/system.store.d.ts.map +1 -1
- package/lib/typescript/shared/types/animation.types.d.ts +7 -1
- package/lib/typescript/shared/types/animation.types.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/styles/compute.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/helpers/styles/local-transform.d.ts +6 -0
- package/lib/typescript/shared/utils/bounds/helpers/styles/local-transform.d.ts.map +1 -0
- package/lib/typescript/shared/utils/bounds/navigation/zoom/build.d.ts.map +1 -1
- package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts +9 -0
- package/lib/typescript/shared/utils/bounds/navigation/zoom/helpers.d.ts.map +1 -1
- package/lib/typescript/shared/utils/logger.d.ts +6 -0
- package/lib/typescript/shared/utils/logger.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/shared/components/boundary/components/boundary-target.tsx +30 -16
- package/src/shared/components/boundary/create-boundary-component.tsx +132 -164
- package/src/shared/components/boundary/hooks/lifecycles/use-boundary-presence.ts +41 -0
- package/src/shared/components/boundary/hooks/{use-initial-destination-measurement.ts → lifecycles/use-initial-destination-measurement.ts} +65 -22
- package/src/shared/components/boundary/hooks/{use-initial-source-measurement.ts → lifecycles/use-initial-source-measurement.ts} +10 -12
- package/src/shared/components/boundary/hooks/{use-refresh-boundary.ts → lifecycles/use-refresh-boundary.ts} +10 -10
- package/src/shared/components/boundary/hooks/use-boundary-measurement.ts +97 -0
- package/src/shared/components/boundary/hooks/use-measurer.ts +16 -24
- package/src/shared/components/boundary/index.tsx +56 -30
- package/src/shared/components/boundary/portal/components/boundary-local-portal-host.tsx +66 -0
- package/src/shared/components/boundary/portal/components/host.tsx +20 -5
- package/src/shared/components/boundary/portal/components/portal-boundary-host.tsx +67 -52
- package/src/shared/components/boundary/portal/components/portal.tsx +281 -120
- package/src/shared/components/boundary/portal/hooks/use-host-measurement.ts +23 -2
- package/src/shared/components/boundary/portal/stores/host-registry.store.ts +4 -51
- package/src/shared/components/boundary/portal/stores/portal-boundary-host.store.ts +59 -6
- package/src/shared/components/boundary/portal/teleport.ts +28 -3
- package/src/shared/components/boundary/portal/utils/has-local-slot.ts +16 -0
- package/src/shared/components/boundary/portal/utils/naming.ts +11 -1
- package/src/shared/components/boundary/portal/utils/offset-style.ts +37 -139
- package/src/shared/components/boundary/portal/utils/ownership.ts +371 -0
- package/src/shared/components/boundary/portal/utils/resolve-portal.ts +50 -0
- package/src/shared/components/boundary/portal/utils/shallow-equal.ts +25 -0
- package/src/shared/components/boundary/portal/utils/teleport-control.ts +12 -0
- package/src/shared/components/boundary/portal/utils/visible-host.ts +24 -0
- package/src/shared/components/boundary/providers/{boundary-owner.provider.tsx → boundary-root.provider.tsx} +33 -47
- package/src/shared/components/boundary/types.ts +9 -39
- package/src/shared/components/boundary/utils/destination-signals.ts +22 -2
- package/src/shared/components/boundary/utils/refresh-signals.ts +0 -41
- package/src/shared/components/boundary/utils/source-signals.ts +5 -17
- package/src/shared/components/create-transition-aware-component.tsx +3 -25
- package/src/shared/components/overlay/variations/float-overlay.tsx +3 -3
- package/src/shared/components/screen-container/layers/backdrop.tsx +4 -17
- package/src/shared/components/screen-container/layers/content.tsx +4 -16
- package/src/shared/components/screen-container/layers/maybe-masked-navigation-container.tsx +8 -18
- package/src/shared/components/screen-container/layers/surface-container.tsx +4 -17
- package/src/shared/index.ts +0 -5
- package/src/shared/providers/helpers/measured-bounds-writes.ts +6 -11
- package/src/shared/providers/screen/animation/helpers/derivations.ts +3 -0
- package/src/shared/providers/screen/animation/helpers/pipeline.ts +251 -68
- package/src/shared/providers/screen/screen-composer.tsx +3 -3
- package/src/shared/providers/screen/styles/helpers/compose-slot-style.ts +129 -0
- package/src/shared/providers/screen/styles/helpers/normalize-slots.ts +45 -8
- package/src/shared/providers/screen/styles/helpers/opening-phase.ts +25 -0
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/index.ts +22 -12
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.ts +3 -1
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/slot-state.ts +0 -24
- package/src/shared/providers/screen/styles/helpers/visibility-gate.ts +0 -12
- package/src/shared/providers/screen/styles/hooks/slot-resolvers.tsx +111 -0
- package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +48 -38
- package/src/shared/providers/screen/styles/hooks/use-maybe-block-visibility.tsx +0 -18
- package/src/shared/providers/screen/styles/hooks/use-resolved-slot-style-map.tsx +17 -4
- package/src/shared/providers/screen/styles/index.tsx +13 -4
- package/src/shared/providers/screen/styles/slot.provider.tsx +93 -0
- package/src/shared/providers/screen/styles/stores/slot-references.store.ts +71 -0
- package/src/shared/stores/bounds/helpers/link-pairs.helpers.ts +41 -1
- package/src/shared/stores/bounds/internals/entries.ts +13 -5
- package/src/shared/stores/bounds/internals/links.ts +167 -85
- package/src/shared/stores/bounds/internals/resolver.ts +0 -2
- package/src/shared/stores/bounds/types.ts +24 -22
- package/src/shared/stores/system.store.ts +6 -0
- package/src/shared/types/animation.types.ts +8 -1
- package/src/shared/utils/bounds/helpers/styles/compute.ts +22 -124
- package/src/shared/utils/bounds/helpers/styles/local-transform.ts +86 -0
- package/src/shared/utils/bounds/navigation/zoom/build.ts +9 -1
- package/src/shared/utils/bounds/navigation/zoom/helpers.ts +96 -0
- package/src/shared/utils/logger.ts +12 -0
- package/lib/commonjs/shared/components/boundary/hooks/use-boundary-presence.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/hooks/use-initial-destination-measurement.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/hooks/use-initial-source-measurement.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/hooks/use-refresh-boundary.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/portal/utils/attachment.js +0 -40
- package/lib/commonjs/shared/components/boundary/portal/utils/attachment.js.map +0 -1
- package/lib/commonjs/shared/components/boundary/providers/boundary-owner.provider.js +0 -68
- package/lib/commonjs/shared/components/boundary/providers/boundary-owner.provider.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/styles/helpers/preserve-animated-props-only.js +0 -26
- package/lib/commonjs/shared/providers/screen/styles/helpers/preserve-animated-props-only.js.map +0 -1
- package/lib/commonjs/shared/providers/screen/styles/styles.provider.js.map +0 -1
- package/lib/module/shared/components/boundary/hooks/use-boundary-presence.js +0 -23
- package/lib/module/shared/components/boundary/hooks/use-boundary-presence.js.map +0 -1
- package/lib/module/shared/components/boundary/hooks/use-initial-destination-measurement.js.map +0 -1
- package/lib/module/shared/components/boundary/hooks/use-initial-source-measurement.js.map +0 -1
- package/lib/module/shared/components/boundary/hooks/use-refresh-boundary.js.map +0 -1
- package/lib/module/shared/components/boundary/portal/utils/attachment.js +0 -35
- package/lib/module/shared/components/boundary/portal/utils/attachment.js.map +0 -1
- package/lib/module/shared/components/boundary/providers/boundary-owner.provider.js +0 -60
- package/lib/module/shared/components/boundary/providers/boundary-owner.provider.js.map +0 -1
- package/lib/module/shared/providers/screen/styles/helpers/preserve-animated-props-only.js +0 -21
- package/lib/module/shared/providers/screen/styles/helpers/preserve-animated-props-only.js.map +0 -1
- package/lib/module/shared/providers/screen/styles/styles.provider.js +0 -53
- package/lib/module/shared/providers/screen/styles/styles.provider.js.map +0 -1
- package/lib/typescript/shared/components/boundary/hooks/use-boundary-presence.d.ts +0 -8
- package/lib/typescript/shared/components/boundary/hooks/use-boundary-presence.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/hooks/use-initial-destination-measurement.d.ts +0 -9
- package/lib/typescript/shared/components/boundary/hooks/use-initial-destination-measurement.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/hooks/use-initial-source-measurement.d.ts +0 -9
- package/lib/typescript/shared/components/boundary/hooks/use-initial-source-measurement.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/hooks/use-refresh-boundary.d.ts +0 -10
- package/lib/typescript/shared/components/boundary/hooks/use-refresh-boundary.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/portal/utils/attachment.d.ts +0 -21
- package/lib/typescript/shared/components/boundary/portal/utils/attachment.d.ts.map +0 -1
- package/lib/typescript/shared/components/boundary/providers/boundary-owner.provider.d.ts +0 -44
- package/lib/typescript/shared/components/boundary/providers/boundary-owner.provider.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/styles/helpers/preserve-animated-props-only.d.ts +0 -3
- package/lib/typescript/shared/providers/screen/styles/helpers/preserve-animated-props-only.d.ts.map +0 -1
- package/lib/typescript/shared/providers/screen/styles/styles.provider.d.ts +0 -14
- package/lib/typescript/shared/providers/screen/styles/styles.provider.d.ts.map +0 -1
- package/src/shared/components/boundary/hooks/use-boundary-presence.ts +0 -28
- package/src/shared/components/boundary/portal/utils/attachment.ts +0 -48
- package/src/shared/providers/screen/styles/helpers/preserve-animated-props-only.ts +0 -22
- package/src/shared/providers/screen/styles/styles.provider.tsx +0 -60
|
@@ -6,10 +6,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.BoundaryTarget = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
|
|
9
|
-
var _styles = require("../../../
|
|
9
|
+
var _styles = require("../../../providers/screen/styles");
|
|
10
|
+
var _styles2 = require("../../../utils/bounds/helpers/styles/styles");
|
|
10
11
|
var _logger = require("../../../utils/logger");
|
|
11
12
|
var _portal = require("../portal/components/portal");
|
|
12
|
-
var
|
|
13
|
+
var _boundaryRoot = require("../providers/boundary-root.provider");
|
|
13
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
15
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
15
16
|
const BoundaryTarget = exports.BoundaryTarget = /*#__PURE__*/(0, _react.memo)(function BoundaryTarget(props) {
|
|
@@ -19,20 +20,23 @@ const BoundaryTarget = exports.BoundaryTarget = /*#__PURE__*/(0, _react.memo)(fu
|
|
|
19
20
|
} = props;
|
|
20
21
|
const targetAnimatedRef = (0, _reactNativeReanimated.useAnimatedRef)();
|
|
21
22
|
const placeholderAnimatedRef = (0, _reactNativeReanimated.useAnimatedRef)();
|
|
22
|
-
const
|
|
23
|
-
const registerTargetRef =
|
|
24
|
-
const unregisterTargetRef =
|
|
25
|
-
const isActiveTarget =
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
const
|
|
23
|
+
const rootContext = (0, _boundaryRoot.useBoundaryRootContext)();
|
|
24
|
+
const registerTargetRef = rootContext?.registerTargetRef;
|
|
25
|
+
const unregisterTargetRef = rootContext?.unregisterTargetRef;
|
|
26
|
+
const isActiveTarget = rootContext?.activeTargetRef === targetAnimatedRef;
|
|
27
|
+
const portalRuntime = rootContext?.portalRuntime;
|
|
28
|
+
const shouldApplyAssociatedStyleInline = isActiveTarget && portalRuntime?.enabled !== true;
|
|
29
|
+
const shouldApplyPortalLayoutStyle = isActiveTarget && portalRuntime?.enabled === true;
|
|
30
|
+
const associatedTargetStyles = (0, _styles.useComposedSlotStyles)(rootContext?.boundTag.tag, style);
|
|
31
|
+
const portalLayoutStyle = (0, _styles.useSlotLayoutStyles)(rootContext?.boundTag.tag);
|
|
32
|
+
const preparedStyles = (0, _react.useMemo)(() => (0, _styles2.prepareStyleForBounds)(style), [style]);
|
|
33
|
+
// Teleported content can render outside its layout slot. The placeholder is
|
|
34
|
+
// the truthful measurement surface whenever runtime portal behavior is active.
|
|
35
|
+
const measurementRef = portalRuntime?.enabled ? placeholderAnimatedRef : targetAnimatedRef;
|
|
32
36
|
(0, _react.useLayoutEffect)(() => {
|
|
33
37
|
if (!registerTargetRef || !unregisterTargetRef) {
|
|
34
38
|
if (__DEV__) {
|
|
35
|
-
_logger.logger.warn(
|
|
39
|
+
_logger.logger.warn(_boundaryRoot.TARGET_OUTSIDE_ROOT_WARNING);
|
|
36
40
|
}
|
|
37
41
|
return;
|
|
38
42
|
}
|
|
@@ -42,13 +46,14 @@ const BoundaryTarget = exports.BoundaryTarget = /*#__PURE__*/(0, _react.memo)(fu
|
|
|
42
46
|
};
|
|
43
47
|
}, [registerTargetRef, unregisterTargetRef, targetAnimatedRef, preparedStyles, measurementRef]);
|
|
44
48
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_portal.Portal, {
|
|
45
|
-
id:
|
|
46
|
-
|
|
49
|
+
id: rootContext?.boundTag.tag,
|
|
50
|
+
handoff: portalRuntime?.handoff,
|
|
51
|
+
escapeClipping: portalRuntime?.escapeClipping,
|
|
47
52
|
placeholderRef: placeholderAnimatedRef,
|
|
48
53
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
|
|
49
54
|
...rest,
|
|
50
55
|
ref: targetAnimatedRef,
|
|
51
|
-
style: [style,
|
|
56
|
+
style: [style, shouldApplyAssociatedStyleInline ? associatedTargetStyles : undefined, shouldApplyPortalLayoutStyle ? portalLayoutStyle : undefined],
|
|
52
57
|
collapsable: false
|
|
53
58
|
})
|
|
54
59
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNativeReanimated","_interopRequireWildcard","_styles","_logger","_portal","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNativeReanimated","_interopRequireWildcard","_styles","_styles2","_logger","_portal","_boundaryRoot","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","BoundaryTarget","exports","memo","props","style","rest","targetAnimatedRef","useAnimatedRef","placeholderAnimatedRef","rootContext","useBoundaryRootContext","registerTargetRef","unregisterTargetRef","isActiveTarget","activeTargetRef","portalRuntime","shouldApplyAssociatedStyleInline","enabled","shouldApplyPortalLayoutStyle","associatedTargetStyles","useComposedSlotStyles","boundTag","tag","portalLayoutStyle","useSlotLayoutStyles","preparedStyles","useMemo","prepareStyleForBounds","measurementRef","useLayoutEffect","__DEV__","logger","warn","TARGET_OUTSIDE_ROOT_WARNING","jsx","Portal","id","handoff","escapeClipping","placeholderRef","children","View","ref","undefined","collapsable"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/components/boundary-target.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,29 +6,31 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.createBoundaryComponent = createBoundaryComponent;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
|
|
9
|
-
var _constants = require("../../constants");
|
|
10
9
|
var _descriptors = require("../../providers/screen/descriptors");
|
|
11
10
|
var _styles = require("../../providers/screen/styles");
|
|
12
11
|
var _linkPairs = require("../../stores/bounds/helpers/link-pairs.helpers");
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
var
|
|
16
|
-
var
|
|
17
|
-
var
|
|
18
|
-
var _useMeasurer = require("./hooks/use-measurer");
|
|
19
|
-
var _useRefreshBoundary = require("./hooks/use-refresh-boundary");
|
|
20
|
-
var _teleport = require("./portal/teleport");
|
|
21
|
-
var _boundaryOwner = require("./providers/boundary-owner.provider");
|
|
12
|
+
var _useBoundaryMeasurement = require("./hooks/use-boundary-measurement");
|
|
13
|
+
var _boundaryLocalPortalHost = require("./portal/components/boundary-local-portal-host");
|
|
14
|
+
var _portal = require("./portal/components/portal");
|
|
15
|
+
var _resolvePortal = require("./portal/utils/resolve-portal");
|
|
16
|
+
var _boundaryRoot = require("./providers/boundary-root.provider");
|
|
22
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
23
18
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
19
|
+
const hasRenderableChildren = children => {
|
|
20
|
+
if (children === null || children === undefined || typeof children === "boolean") {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
if (Array.isArray(children)) {
|
|
24
|
+
return children.some(hasRenderableChildren);
|
|
25
|
+
}
|
|
26
|
+
return true;
|
|
27
|
+
};
|
|
24
28
|
function createBoundaryComponent(Wrapped, options = {}) {
|
|
25
29
|
const {
|
|
26
|
-
alreadyAnimated = false
|
|
27
|
-
shouldAutoMeasure = false
|
|
30
|
+
alreadyAnimated = false
|
|
28
31
|
} = options;
|
|
29
32
|
const AnimatedComponent = alreadyAnimated ? Wrapped : _reactNativeReanimated.default.createAnimatedComponent(Wrapped);
|
|
30
33
|
const Inner = /*#__PURE__*/(0, _react.forwardRef)((props, forwardedRef) => {
|
|
31
|
-
const ownerRef = (0, _reactNativeReanimated.useAnimatedRef)();
|
|
32
34
|
const {
|
|
33
35
|
enabled = true,
|
|
34
36
|
group,
|
|
@@ -39,125 +41,97 @@ function createBoundaryComponent(Wrapped, options = {}) {
|
|
|
39
41
|
method,
|
|
40
42
|
style,
|
|
41
43
|
onPress,
|
|
42
|
-
|
|
44
|
+
handoff,
|
|
45
|
+
escapeClipping,
|
|
46
|
+
children,
|
|
43
47
|
...rest
|
|
44
48
|
} = props;
|
|
45
|
-
const
|
|
46
|
-
const
|
|
49
|
+
const boundTag = (0, _react.useMemo)(() => (0, _linkPairs.createBoundTag)(String(id), group), [id, group]);
|
|
50
|
+
const portalRuntime = (0, _resolvePortal.resolveBoundaryPortal)({
|
|
51
|
+
handoff,
|
|
52
|
+
escapeClipping
|
|
53
|
+
});
|
|
47
54
|
const currentScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.currentScreenKey);
|
|
48
55
|
const hasConfiguredInterpolator = (0, _descriptors.useDescriptorsStore)(s => s.derivations.hasConfiguredInterpolator);
|
|
49
56
|
const runtimeEnabled = enabled && hasConfiguredInterpolator;
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}, [anchor, scaleMode, target, method]);
|
|
58
|
-
const ownerPreparedStyles = (0, _react.useMemo)(() => (0, _styles2.prepareStyleForBounds)(style), [style]);
|
|
59
|
-
const {
|
|
60
|
-
stylesMap
|
|
61
|
-
} = (0, _styles.useScreenStyles)();
|
|
62
|
-
const associatedStyles = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
|
|
63
|
-
"worklet";
|
|
64
|
-
|
|
65
|
-
return stylesMap.get()[entryTag]?.style ?? _constants.NO_STYLES;
|
|
66
|
-
});
|
|
67
|
-
const associatedStackingStyles = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
|
|
68
|
-
"worklet";
|
|
69
|
-
|
|
70
|
-
const baseStyle = stylesMap.get()[entryTag]?.style;
|
|
71
|
-
const zIndex = baseStyle?.zIndex ?? 0;
|
|
72
|
-
const elevation = baseStyle?.elevation ?? 0;
|
|
73
|
-
if (zIndex === 0 && elevation === 0) {
|
|
74
|
-
return _constants.NO_STYLES;
|
|
75
|
-
}
|
|
76
|
-
return {
|
|
77
|
-
zIndex,
|
|
78
|
-
elevation
|
|
79
|
-
};
|
|
80
|
-
});
|
|
81
|
-
const hasWarned = (0, _react.useRef)(false);
|
|
82
|
-
const adjustedPortal = _teleport.isTeleportAvailable ? portal : undefined;
|
|
83
|
-
if (!hasWarned.current && !_teleport.isTeleportAvailable && portal) {
|
|
84
|
-
_logger.logger.warn("react-native-teleport is not installed and will fallback to default behavior.");
|
|
85
|
-
hasWarned.current = true;
|
|
86
|
-
}
|
|
57
|
+
// Associated slot styles attach whenever the boundary is enabled,
|
|
58
|
+
// independent of whether an interpolator is configured for this transition.
|
|
59
|
+
const shouldAttachAssociatedStyles = enabled;
|
|
60
|
+
const canPortalRoot = portalRuntime.enabled && hasRenderableChildren(children);
|
|
61
|
+
const associatedStyles = (0, _styles.useComposedSlotStyles)(boundTag.tag, style);
|
|
62
|
+
const associatedStackingStyles = (0, _styles.useSlotStackingStyles)(boundTag.tag);
|
|
63
|
+
const rootPlaceholderRef = (0, _reactNativeReanimated.useAnimatedRef)();
|
|
87
64
|
const {
|
|
65
|
+
ref,
|
|
88
66
|
contextValue,
|
|
89
67
|
measuredRef,
|
|
90
68
|
hasActiveTarget,
|
|
91
69
|
targetPreparedStyles
|
|
92
|
-
} = (0,
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
portal: adjustedPortal
|
|
70
|
+
} = (0, _boundaryRoot.useBoundaryRootState)({
|
|
71
|
+
boundTag,
|
|
72
|
+
portalRuntime,
|
|
73
|
+
rootMeasurementRef: canPortalRoot ? rootPlaceholderRef : undefined
|
|
97
74
|
});
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
const measureBoundary = (0, _useMeasurer.useMeasurer)({
|
|
75
|
+
(0, _useBoundaryMeasurement.useBoundaryMeasurement)({
|
|
76
|
+
boundTag,
|
|
101
77
|
enabled,
|
|
102
|
-
|
|
103
|
-
linkId,
|
|
104
|
-
group,
|
|
78
|
+
runtimeEnabled,
|
|
105
79
|
currentScreenKey,
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
boundaryConfig
|
|
118
|
-
});
|
|
119
|
-
const shouldPassivelyMeasureSource = shouldAutoMeasure && typeof onPress !== "function";
|
|
120
|
-
(0, _useInitialSourceMeasurement.useInitialSourceMeasurement)({
|
|
121
|
-
enabled: runtimeEnabled,
|
|
122
|
-
measureBoundary,
|
|
123
|
-
linkId,
|
|
124
|
-
group,
|
|
125
|
-
shouldAutoMeasure: shouldPassivelyMeasureSource
|
|
80
|
+
measuredRef,
|
|
81
|
+
style,
|
|
82
|
+
targetPreparedStyles,
|
|
83
|
+
handoff: portalRuntime.handoff,
|
|
84
|
+
escapeClipping: portalRuntime.escapeClipping,
|
|
85
|
+
config: {
|
|
86
|
+
anchor,
|
|
87
|
+
scaleMode,
|
|
88
|
+
target,
|
|
89
|
+
method
|
|
90
|
+
}
|
|
126
91
|
});
|
|
127
|
-
(0,
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
92
|
+
(0, _react.useImperativeHandle)(forwardedRef, () => ref.current, [ref]);
|
|
93
|
+
const shouldPortalRoot = canPortalRoot && !hasActiveTarget;
|
|
94
|
+
// A nested active target takes the full associated style, so the root keeps
|
|
95
|
+
// only its stacking context. Without a nested target, a portal'd root is the
|
|
96
|
+
// target, so its associated style is applied through the portal host instead
|
|
97
|
+
// of inline on the teleported element.
|
|
98
|
+
// Host-only handoff receivers still need the associated style: their local
|
|
99
|
+
// portal host is absolute-filled inside this root, so the root is the visual
|
|
100
|
+
// frame that animates the received payload.
|
|
101
|
+
const attachedStyle = shouldAttachAssociatedStyles ? hasActiveTarget ? associatedStackingStyles : shouldPortalRoot ? undefined : associatedStyles : undefined;
|
|
102
|
+
const pressProps = typeof onPress === "function" ? {
|
|
103
|
+
onPress
|
|
104
|
+
} : undefined;
|
|
105
|
+
const localPortalHost = /*#__PURE__*/(0, _jsxRuntime.jsx)(_boundaryLocalPortalHost.BoundaryLocalPortalHost, {
|
|
106
|
+
boundaryId: boundTag.tag,
|
|
107
|
+
enabled: enabled && portalRuntime.handoff,
|
|
108
|
+
screenKey: currentScreenKey
|
|
131
109
|
});
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
110
|
+
const canInjectLocalPortalHost = typeof children !== "function";
|
|
111
|
+
const renderBoundaryRoot = extraChildren => /*#__PURE__*/(0, _jsxRuntime.jsxs)(AnimatedComponent, {
|
|
112
|
+
...rest,
|
|
113
|
+
...pressProps,
|
|
114
|
+
ref: ref,
|
|
115
|
+
style: [style, attachedStyle],
|
|
116
|
+
collapsable: false,
|
|
117
|
+
children: [children, canInjectLocalPortalHost ? extraChildren : null]
|
|
137
118
|
});
|
|
138
|
-
const
|
|
139
|
-
|
|
140
|
-
(0, _reactNativeReanimated.runOnUI)(measureBoundary)({
|
|
141
|
-
type: "source",
|
|
142
|
-
pairKey: (0, _linkPairs.createPendingPairKey)(currentScreenKey)
|
|
143
|
-
});
|
|
144
|
-
if (typeof onPress === "function") {
|
|
145
|
-
onPress(...args);
|
|
146
|
-
}
|
|
147
|
-
}, [measureBoundary, onPress, currentScreenKey]);
|
|
148
|
-
const resolvedOnPress = typeof onPress === "function" ? handlePress : undefined;
|
|
149
|
-
(0, _react.useImperativeHandle)(forwardedRef, () => ownerRef.current, [ownerRef]);
|
|
150
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_boundaryOwner.BoundaryOwnerProvider, {
|
|
119
|
+
const boundaryRoot = renderBoundaryRoot(shouldPortalRoot ? undefined : localPortalHost);
|
|
120
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_boundaryRoot.BoundaryRootProvider, {
|
|
151
121
|
value: contextValue,
|
|
152
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
122
|
+
children: shouldPortalRoot ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_portal.Portal, {
|
|
123
|
+
id: boundTag.tag,
|
|
124
|
+
handoff: portalRuntime.handoff,
|
|
125
|
+
escapeClipping: portalRuntime.escapeClipping,
|
|
126
|
+
placeholderRef: rootPlaceholderRef,
|
|
127
|
+
placeholderChildren: portalRuntime.handoff ? localPortalHost : undefined,
|
|
128
|
+
children: boundaryRoot
|
|
129
|
+
}) : boundaryRoot
|
|
159
130
|
});
|
|
160
131
|
});
|
|
161
|
-
|
|
132
|
+
|
|
133
|
+
// The HOC's runtime identity (animated + memoized forwardRef) is not
|
|
134
|
+
// expressible against the public boundary props, so assert it here.
|
|
135
|
+
return /*#__PURE__*/(0, _react.memo)(Inner);
|
|
162
136
|
}
|
|
163
137
|
//# sourceMappingURL=create-boundary-component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNativeReanimated","_interopRequireWildcard","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNativeReanimated","_interopRequireWildcard","_descriptors","_styles","_linkPairs","_useBoundaryMeasurement","_boundaryLocalPortalHost","_portal","_resolvePortal","_boundaryRoot","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","hasRenderableChildren","children","undefined","Array","isArray","some","createBoundaryComponent","Wrapped","options","alreadyAnimated","AnimatedComponent","Animated","createAnimatedComponent","Inner","forwardRef","props","forwardedRef","enabled","group","id","anchor","scaleMode","target","method","style","onPress","handoff","escapeClipping","rest","boundTag","useMemo","createBoundTag","String","portalRuntime","resolveBoundaryPortal","currentScreenKey","useDescriptorsStore","s","derivations","hasConfiguredInterpolator","runtimeEnabled","shouldAttachAssociatedStyles","canPortalRoot","associatedStyles","useComposedSlotStyles","tag","associatedStackingStyles","useSlotStackingStyles","rootPlaceholderRef","useAnimatedRef","ref","contextValue","measuredRef","hasActiveTarget","targetPreparedStyles","useBoundaryRootState","rootMeasurementRef","useBoundaryMeasurement","config","useImperativeHandle","current","shouldPortalRoot","attachedStyle","pressProps","localPortalHost","jsx","BoundaryLocalPortalHost","boundaryId","screenKey","canInjectLocalPortalHost","renderBoundaryRoot","extraChildren","jsxs","collapsable","boundaryRoot","BoundaryRootProvider","value","Portal","placeholderRef","placeholderChildren","memo"],"sourceRoot":"../../../../../src","sources":["shared/components/boundary/create-boundary-component.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,23 +6,30 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useBoundaryPresence = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _reactNativeReanimated = require("react-native-reanimated");
|
|
9
|
-
var _entries = require("
|
|
9
|
+
var _entries = require("../../../../stores/bounds/internals/entries");
|
|
10
10
|
const useBoundaryPresence = params => {
|
|
11
11
|
const {
|
|
12
12
|
enabled,
|
|
13
|
-
|
|
13
|
+
boundTag,
|
|
14
14
|
currentScreenKey,
|
|
15
|
-
boundaryConfig
|
|
15
|
+
boundaryConfig,
|
|
16
|
+
handoff,
|
|
17
|
+
escapeClipping
|
|
16
18
|
} = params;
|
|
19
|
+
const {
|
|
20
|
+
tag
|
|
21
|
+
} = boundTag;
|
|
17
22
|
(0, _react.useLayoutEffect)(() => {
|
|
18
23
|
if (!enabled) return;
|
|
19
|
-
(0, _reactNativeReanimated.runOnUI)(_entries.setEntry)(
|
|
20
|
-
boundaryConfig
|
|
24
|
+
(0, _reactNativeReanimated.runOnUI)(_entries.setEntry)(tag, currentScreenKey, {
|
|
25
|
+
boundaryConfig,
|
|
26
|
+
handoff: handoff ? true : null,
|
|
27
|
+
escapeClipping: escapeClipping ? true : null
|
|
21
28
|
});
|
|
22
29
|
return () => {
|
|
23
|
-
(0, _reactNativeReanimated.runOnUI)(_entries.removeEntry)(
|
|
30
|
+
(0, _reactNativeReanimated.runOnUI)(_entries.removeEntry)(tag, currentScreenKey);
|
|
24
31
|
};
|
|
25
|
-
}, [enabled,
|
|
32
|
+
}, [enabled, tag, currentScreenKey, boundaryConfig, handoff, escapeClipping]);
|
|
26
33
|
};
|
|
27
34
|
exports.useBoundaryPresence = useBoundaryPresence;
|
|
28
35
|
//# sourceMappingURL=use-boundary-presence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNativeReanimated","_entries","useBoundaryPresence","params","enabled","boundTag","currentScreenKey","boundaryConfig","handoff","escapeClipping","tag","useLayoutEffect","runOnUI","setEntry","removeEntry","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/hooks/lifecycles/use-boundary-presence.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAOO,MAAMG,mBAAmB,GAAIC,MAOnC,IAAK;EACL,MAAM;IACLC,OAAO;IACPC,QAAQ;IACRC,gBAAgB;IAChBC,cAAc;IACdC,OAAO;IACPC;EACD,CAAC,GAAGN,MAAM;EACV,MAAM;IAAEO;EAAI,CAAC,GAAGL,QAAQ;EAExB,IAAAM,sBAAe,EAAC,MAAM;IACrB,IAAI,CAACP,OAAO,EAAE;IAEd,IAAAQ,8BAAO,EAACC,iBAAQ,CAAC,CAACH,GAAG,EAAEJ,gBAAgB,EAAE;MACxCC,cAAc;MACdC,OAAO,EAAEA,OAAO,GAAG,IAAI,GAAG,IAAI;MAC9BC,cAAc,EAAEA,cAAc,GAAG,IAAI,GAAG;IACzC,CAAC,CAAC;IAEF,OAAO,MAAM;MACZ,IAAAG,8BAAO,EAACE,oBAAW,CAAC,CAACJ,GAAG,EAAEJ,gBAAgB,CAAC;IAC5C,CAAC;EACF,CAAC,EAAE,CAACF,OAAO,EAAEM,GAAG,EAAEJ,gBAAgB,EAAEC,cAAc,EAAEC,OAAO,EAAEC,cAAc,CAAC,CAAC;AAC9E,CAAC;AAACM,OAAA,CAAAb,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
|
@@ -5,14 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.useInitialDestinationMeasurement = void 0;
|
|
7
7
|
var _reactNativeReanimated = require("react-native-reanimated");
|
|
8
|
-
var _descriptors = require("
|
|
9
|
-
var _animation = require("
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
|
|
8
|
+
var _descriptors = require("../../../../providers/screen/descriptors");
|
|
9
|
+
var _animation = require("../../../../stores/animation.store");
|
|
10
|
+
var _linkPairs = require("../../../../stores/bounds/helpers/link-pairs.helpers");
|
|
11
|
+
var _entries = require("../../../../stores/bounds/internals/entries");
|
|
12
|
+
var _links = require("../../../../stores/bounds/internals/links");
|
|
13
|
+
var _state = require("../../../../stores/bounds/internals/state");
|
|
14
|
+
var _system = require("../../../../stores/system.store");
|
|
15
|
+
var _logger = require("../../../../utils/logger");
|
|
16
|
+
var _ownership = require("../../portal/utils/ownership");
|
|
17
|
+
var _destinationSignals = require("../../utils/destination-signals");
|
|
18
|
+
const VIEWPORT_RETRY_DELAY_MS = 100;
|
|
16
19
|
/**
|
|
17
20
|
* A destination that keeps failing its measurement guards must not hold the
|
|
18
21
|
* transition gate forever — after this budget the block is released with a
|
|
@@ -20,24 +23,28 @@ const VIEWPORT_RETRY_DELAY_MS = 16;
|
|
|
20
23
|
*/
|
|
21
24
|
const MAX_VIEWPORT_RETRIES = 20;
|
|
22
25
|
const useInitialDestinationMeasurement = ({
|
|
23
|
-
|
|
26
|
+
boundTag,
|
|
24
27
|
enabled,
|
|
25
28
|
measureBoundary
|
|
26
29
|
}) => {
|
|
30
|
+
const {
|
|
31
|
+
tag,
|
|
32
|
+
linkKey,
|
|
33
|
+
group
|
|
34
|
+
} = boundTag;
|
|
27
35
|
const currentScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.currentScreenKey);
|
|
28
36
|
const nextScreenKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.nextScreenKey);
|
|
29
37
|
const destinationPairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.destinationPairKey);
|
|
30
38
|
const ancestorDestinationPairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.ancestorDestinationPairKey);
|
|
31
39
|
const destinationEnabled = enabled && !nextScreenKey;
|
|
32
40
|
const progress = _animation.AnimationStore.getValue(currentScreenKey, "transitionProgress");
|
|
33
|
-
const system = _system.SystemStore.getBag(currentScreenKey);
|
|
34
|
-
const {
|
|
35
|
-
pendingLifecycleRequestKind
|
|
36
|
-
} = system;
|
|
37
41
|
const {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
pendingLifecycleRequestKind,
|
|
43
|
+
actions: {
|
|
44
|
+
blockLifecycleStart,
|
|
45
|
+
unblockLifecycleStart
|
|
46
|
+
}
|
|
47
|
+
} = _system.SystemStore.getBag(currentScreenKey);
|
|
41
48
|
const isBlockingLifecycleStart = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
42
49
|
const retryToken = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
43
50
|
const viewportRetries = (0, _reactNativeReanimated.useSharedValue)(0);
|
|
@@ -65,17 +72,21 @@ const useInitialDestinationMeasurement = ({
|
|
|
65
72
|
enabled: destinationEnabled,
|
|
66
73
|
destinationPairKey,
|
|
67
74
|
ancestorDestinationPairKey,
|
|
68
|
-
linkId,
|
|
75
|
+
linkId: linkKey,
|
|
76
|
+
group,
|
|
69
77
|
linkState: destinationEnabled && (destinationPairKey || ancestorDestinationPairKey) ? _state.pairs.get() : undefined
|
|
70
78
|
});
|
|
71
79
|
return [measurePairKey, retryTick];
|
|
72
|
-
}, ([measurePairKey]) => {
|
|
80
|
+
}, ([measurePairKey, retryTick], previous) => {
|
|
73
81
|
"worklet";
|
|
74
82
|
|
|
75
83
|
if (!measurePairKey) {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
const previousMeasurePairKey = previous?.[0];
|
|
87
|
+
const previousRetryTick = previous?.[1];
|
|
88
|
+
const shouldAttemptMeasure = measurePairKey !== previousMeasurePairKey || retryTick !== previousRetryTick;
|
|
89
|
+
if (!shouldAttemptMeasure) {
|
|
79
90
|
return;
|
|
80
91
|
}
|
|
81
92
|
if (hasGivenUp.get()) {
|
|
@@ -89,8 +100,24 @@ const useInitialDestinationMeasurement = ({
|
|
|
89
100
|
type: "destination",
|
|
90
101
|
pairKey: measurePairKey
|
|
91
102
|
});
|
|
92
|
-
const destinationAttached = (0, _links.getDestination)(measurePairKey,
|
|
103
|
+
const destinationAttached = (0, _links.getDestination)(measurePairKey, linkKey) !== null;
|
|
93
104
|
if (destinationAttached) {
|
|
105
|
+
const linkState = _state.pairs.get();
|
|
106
|
+
const link = (0, _links.getLink)(measurePairKey, linkKey);
|
|
107
|
+
const sourceScreenKey = (0, _linkPairs.getSourceScreenKeyFromPairKey)(measurePairKey);
|
|
108
|
+
const sourceEntry = (0, _entries.getEntry)(tag, sourceScreenKey);
|
|
109
|
+
const sourceEntryUsesDestinationEscapeHost = sourceEntry?.handoff === true && sourceEntry.escapeClipping === true;
|
|
110
|
+
const shouldWaitForEscapeClippingHost = (0, _ownership.usesEscapeClippingHost)(link) || sourceEntryUsesDestinationEscapeHost || (0, _ownership.hasHandoffEscapeContinuation)({
|
|
111
|
+
linkKey,
|
|
112
|
+
linkState,
|
|
113
|
+
sourceScreenKey
|
|
114
|
+
});
|
|
115
|
+
if (shouldWaitForEscapeClippingHost) {
|
|
116
|
+
// Screen-level escape has a second readiness phase after destination
|
|
117
|
+
// measurement: the host must commit before the transition starts, or
|
|
118
|
+
// the payload can disappear for a frame.
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
94
121
|
releaseLifecycleStartBlock();
|
|
95
122
|
viewportRetries.set(0);
|
|
96
123
|
return;
|
|
@@ -98,12 +125,12 @@ const useInitialDestinationMeasurement = ({
|
|
|
98
125
|
if (viewportRetries.get() >= MAX_VIEWPORT_RETRIES) {
|
|
99
126
|
hasGivenUp.set(1);
|
|
100
127
|
releaseLifecycleStartBlock();
|
|
101
|
-
_logger.logger.warn(`Destination boundary "${
|
|
128
|
+
_logger.logger.warn(`Destination boundary "${linkKey}" never produced a valid measurement after ${MAX_VIEWPORT_RETRIES} attempts; releasing the transition gate without it. The boundary is likely off-viewport (e.g. an inactive group member on a paged screen) or unmounted.`);
|
|
102
129
|
return;
|
|
103
130
|
}
|
|
104
131
|
|
|
105
132
|
// Destination did not attach (malformed off-screen measurement); retry
|
|
106
|
-
//
|
|
133
|
+
// after the retry token advances while the lifecycle stays blocked.
|
|
107
134
|
viewportRetries.set(viewportRetries.get() + 1);
|
|
108
135
|
(0, _reactNativeReanimated.cancelAnimation)(retryToken);
|
|
109
136
|
retryToken.set((0, _reactNativeReanimated.withDelay)(VIEWPORT_RETRY_DELAY_MS, (0, _reactNativeReanimated.withTiming)(retryToken.get() + 1, {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNativeReanimated","require","_descriptors","_animation","_linkPairs","_entries","_links","_state","_system","_logger","_ownership","_destinationSignals","VIEWPORT_RETRY_DELAY_MS","MAX_VIEWPORT_RETRIES","useInitialDestinationMeasurement","boundTag","enabled","measureBoundary","tag","linkKey","group","currentScreenKey","useDescriptorsStore","s","derivations","nextScreenKey","destinationPairKey","ancestorDestinationPairKey","destinationEnabled","progress","AnimationStore","getValue","pendingLifecycleRequestKind","actions","blockLifecycleStart","unblockLifecycleStart","SystemStore","getBag","isBlockingLifecycleStart","useSharedValue","retryToken","viewportRetries","hasGivenUp","releaseLifecycleStartBlock","cancelAnimation","get","set","useAnimatedReaction","retryTick","hasPendingOpenRequest","LifecycleTransitionRequestKind","Open","isWaitingForOpenToStart","measurePairKey","getInitialDestinationMeasurePairKey","linkId","linkState","pairs","undefined","previous","previousMeasurePairKey","previousRetryTick","shouldAttemptMeasure","type","pairKey","destinationAttached","getDestination","link","getLink","sourceScreenKey","getSourceScreenKeyFromPairKey","sourceEntry","getEntry","sourceEntryUsesDestinationEscapeHost","handoff","escapeClipping","shouldWaitForEscapeClippingHost","usesEscapeClippingHost","hasHandoffEscapeContinuation","logger","warn","withDelay","withTiming","duration","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/hooks/lifecycles/use-initial-destination-measurement.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAOA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAIA,IAAAM,MAAA,GAAAN,OAAA;AAEA,IAAAO,OAAA,GAAAP,OAAA;AAIA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAKA,IAAAU,mBAAA,GAAAV,OAAA;AAEA,MAAMW,uBAAuB,GAAG,GAAG;AACnC;AACA;AACA;AACA;AACA;AACA,MAAMC,oBAAoB,GAAG,EAAE;AAQxB,MAAMC,gCAAgC,GAAGA,CAAC;EAChDC,QAAQ;EACRC,OAAO;EACPC;AACuC,CAAC,KAAK;EAC7C,MAAM;IAAEC,GAAG;IAAEC,OAAO;IAAEC;EAAM,CAAC,GAAGL,QAAQ;EACxC,MAAMM,gBAAgB,GAAG,IAAAC,gCAAmB,EAC1CC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACH,gBACtB,CAAC;EACD,MAAMI,aAAa,GAAG,IAAAH,gCAAmB,EAAEC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACC,aAAa,CAAC;EAC7E,MAAMC,kBAAkB,GAAG,IAAAJ,gCAAmB,EAC5CC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACE,kBACtB,CAAC;EACD,MAAMC,0BAA0B,GAAG,IAAAL,gCAAmB,EACpDC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACG,0BACtB,CAAC;EACD,MAAMC,kBAAkB,GAAGZ,OAAO,IAAI,CAACS,aAAa;EACpD,MAAMI,QAAQ,GAAGC,yBAAc,CAACC,QAAQ,CACvCV,gBAAgB,EAChB,oBACD,CAAC;EAED,MAAM;IACLW,2BAA2B;IAC3BC,OAAO,EAAE;MAAEC,mBAAmB;MAAEC;IAAsB;EACvD,CAAC,GAAGC,mBAAW,CAACC,MAAM,CAAChB,gBAAgB,CAAC;EAExC,MAAMiB,wBAAwB,GAAG,IAAAC,qCAAc,EAAC,CAAC,CAAC;EAClD,MAAMC,UAAU,GAAG,IAAAD,qCAAc,EAAC,CAAC,CAAC;EACpC,MAAME,eAAe,GAAG,IAAAF,qCAAc,EAAC,CAAC,CAAC;EACzC,MAAMG,UAAU,GAAG,IAAAH,qCAAc,EAAC,CAAC,CAAC;EAEpC,MAAMI,0BAA0B,GAAGA,CAAA,KAAM;IACxC,SAAS;;IACT,IAAAC,sCAAe,EAACJ,UAAU,CAAC;IAE3B,IAAI,CAACF,wBAAwB,CAACO,GAAG,CAAC,CAAC,EAAE;MACpC;IACD;IAEAV,qBAAqB,CAAC,CAAC;IACvBG,wBAAwB,CAACQ,GAAG,CAAC,CAAC,CAAC;EAChC,CAAC;EAED,IAAAC,0CAAmB,EAClB,MAAM;IACL,SAAS;;IACT,MAAMC,SAAS,GAAGR,UAAU,CAACK,GAAG,CAAC,CAAC;IAElC,MAAMI,qBAAqB,GAC1BjB,2BAA2B,CAACa,GAAG,CAAC,CAAC,KACjCK,sCAA8B,CAACC,IAAI;IAEpC,MAAMC,uBAAuB,GAAGvB,QAAQ,CAACgB,GAAG,CAAC,CAAC,IAAI,CAAC;IAEnD,IAAI,CAACI,qBAAqB,IAAI,CAACG,uBAAuB,EAAE;MACvD,OAAO,CAAC,CAAC,EAAEJ,SAAS,CAAC;IACtB;IAEA,MAAMK,cAAc,GAAG,IAAAC,uDAAmC,EAAC;MAC1DtC,OAAO,EAAEY,kBAAkB;MAC3BF,kBAAkB;MAClBC,0BAA0B;MAC1B4B,MAAM,EAAEpC,OAAO;MACfC,KAAK;MACLoC,SAAS,EACR5B,kBAAkB,KACjBF,kBAAkB,IAAIC,0BAA0B,CAAC,GAC/C8B,YAAK,CAACZ,GAAG,CAAC,CAAC,GACXa;IACL,CAAC,CAAC;IAEF,OAAO,CAACL,cAAc,EAAEL,SAAS,CAAC;EACnC,CAAC,EACD,CAAC,CAACK,cAAc,EAAEL,SAAS,CAAC,EAAEW,QAAQ,KAAK;IAC1C,SAAS;;IACT,IAAI,CAACN,cAAc,EAAE;MACpB;IACD;IAEA,MAAMO,sBAAsB,GAAGD,QAAQ,GAAG,CAAC,CAAC;IAC5C,MAAME,iBAAiB,GAAGF,QAAQ,GAAG,CAAC,CAAC;IACvC,MAAMG,oBAAoB,GACzBT,cAAc,KAAKO,sBAAsB,IACzCZ,SAAS,KAAKa,iBAAiB;IAEhC,IAAI,CAACC,oBAAoB,EAAE;MAC1B;IACD;IAEA,IAAIpB,UAAU,CAACG,GAAG,CAAC,CAAC,EAAE;MACrB;IACD;IAEA,IAAI,CAACP,wBAAwB,CAACO,GAAG,CAAC,CAAC,EAAE;MACpCX,mBAAmB,CAAC,CAAC;MACrBI,wBAAwB,CAACQ,GAAG,CAAC,CAAC,CAAC;IAChC;IAEA7B,eAAe,CAAC;MACf8C,IAAI,EAAE,aAAa;MACnBC,OAAO,EAAEX;IACV,CAAC,CAAC;IAEF,MAAMY,mBAAmB,GACxB,IAAAC,qBAAc,EAACb,cAAc,EAAElC,OAAO,CAAC,KAAK,IAAI;IAEjD,IAAI8C,mBAAmB,EAAE;MACxB,MAAMT,SAAS,GAAGC,YAAK,CAACZ,GAAG,CAAC,CAAC;MAC7B,MAAMsB,IAAI,GAAG,IAAAC,cAAO,EAACf,cAAc,EAAElC,OAAO,CAAC;MAC7C,MAAMkD,eAAe,GAAG,IAAAC,wCAA6B,EAACjB,cAAc,CAAC;MACrE,MAAMkB,WAAW,GAAG,IAAAC,iBAAQ,EAACtD,GAAG,EAAEmD,eAAe,CAAC;MAClD,MAAMI,oCAAoC,GACzCF,WAAW,EAAEG,OAAO,KAAK,IAAI,IAAIH,WAAW,CAACI,cAAc,KAAK,IAAI;MACrE,MAAMC,+BAA+B,GACpC,IAAAC,iCAAsB,EAACV,IAAI,CAAC,IAC5BM,oCAAoC,IACpC,IAAAK,uCAA4B,EAAC;QAC5B3D,OAAO;QACPqC,SAAS;QACTa;MACD,CAAC,CAAC;MAEH,IAAIO,+BAA+B,EAAE;QACpC;QACA;QACA;QACA;MACD;MACAjC,0BAA0B,CAAC,CAAC;MAC5BF,eAAe,CAACK,GAAG,CAAC,CAAC,CAAC;MACtB;IACD;IAEA,IAAIL,eAAe,CAACI,GAAG,CAAC,CAAC,IAAIhC,oBAAoB,EAAE;MAClD6B,UAAU,CAACI,GAAG,CAAC,CAAC,CAAC;MACjBH,0BAA0B,CAAC,CAAC;MAC5BoC,cAAM,CAACC,IAAI,CACV,yBAAyB7D,OAAO,8CAA8CN,oBAAoB,0JACnG,CAAC;MACD;IACD;;IAEA;IACA;IACA4B,eAAe,CAACK,GAAG,CAACL,eAAe,CAACI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAAD,sCAAe,EAACJ,UAAU,CAAC;IAC3BA,UAAU,CAACM,GAAG,CACb,IAAAmC,gCAAS,EACRrE,uBAAuB,EACvB,IAAAsE,iCAAU,EAAC1C,UAAU,CAACK,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE;MAAEsC,QAAQ,EAAE;IAAE,CAAC,CACjD,CACD,CAAC;EACF,CACD,CAAC;AACF,CAAC;AAACC,OAAA,CAAAtE,gCAAA,GAAAA,gCAAA","ignoreList":[]}
|
|
@@ -5,16 +5,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.useInitialSourceMeasurement = void 0;
|
|
7
7
|
var _reactNativeReanimated = require("react-native-reanimated");
|
|
8
|
-
var _descriptors = require("
|
|
9
|
-
var _state = require("
|
|
10
|
-
var _sourceSignals = require("
|
|
8
|
+
var _descriptors = require("../../../../providers/screen/descriptors");
|
|
9
|
+
var _state = require("../../../../stores/bounds/internals/state");
|
|
10
|
+
var _sourceSignals = require("../../utils/source-signals");
|
|
11
11
|
const useInitialSourceMeasurement = params => {
|
|
12
12
|
const {
|
|
13
13
|
enabled,
|
|
14
14
|
measureBoundary,
|
|
15
|
-
|
|
16
|
-
group,
|
|
17
|
-
shouldAutoMeasure
|
|
15
|
+
boundTag
|
|
18
16
|
} = params;
|
|
19
17
|
const sourcePairKey = (0, _descriptors.useDescriptorsStore)(s => s.derivations.sourcePairKey);
|
|
20
18
|
const lastSourceCaptureSignal = (0, _reactNativeReanimated.useSharedValue)(null);
|
|
@@ -24,10 +22,9 @@ const useInitialSourceMeasurement = params => {
|
|
|
24
22
|
return (0, _sourceSignals.getInitialSourceCaptureSignal)({
|
|
25
23
|
enabled,
|
|
26
24
|
sourcePairKey,
|
|
27
|
-
linkId,
|
|
28
|
-
group,
|
|
29
|
-
|
|
30
|
-
linkState: shouldAutoMeasure && sourcePairKey ? _state.pairs.get() : undefined
|
|
25
|
+
linkId: boundTag.linkKey,
|
|
26
|
+
group: boundTag.group,
|
|
27
|
+
linkState: sourcePairKey ? _state.pairs.get() : undefined
|
|
31
28
|
});
|
|
32
29
|
}, captureSignal => {
|
|
33
30
|
"worklet";
|