react-native-screen-transitions 3.9.0-alpha.2 → 3.9.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/shared/components/boundary/components/boundary-target.js +14 -9
- package/lib/commonjs/shared/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/create-boundary-component.js +66 -28
- 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} +8 -4
- 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} +27 -10
- 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} +5 -7
- 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} +4 -4
- 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 +14 -35
- package/lib/commonjs/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js +5 -6
- package/lib/commonjs/shared/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/index.js +26 -29
- 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 +78 -27
- 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 +195 -121
- 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/hooks/use-placeholder-styles.js +57 -0
- package/lib/commonjs/shared/components/boundary/portal/hooks/use-placeholder-styles.js.map +1 -0
- 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 -48
- 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 +6 -7
- package/lib/commonjs/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/commonjs/shared/components/boundary/utils/destination-signals.js +1 -22
- 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/masked-view.js +5 -0
- package/lib/commonjs/shared/components/masked-view.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js +18 -8
- package/lib/commonjs/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/content.js +34 -16
- package/lib/commonjs/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/commonjs/shared/components/screen-container/layers/render-component.js +10 -0
- package/lib/commonjs/shared/components/screen-container/layers/render-component.js.map +1 -0
- package/lib/commonjs/shared/components/screen-container/layers/surface-container.js +5 -3
- package/lib/commonjs/shared/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/commonjs/shared/index.js +4 -0
- 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/register-bounds.provider.js +6 -0
- package/lib/commonjs/shared/providers/register-bounds.provider.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 +1 -0
- package/lib/commonjs/shared/providers/screen/animation/helpers/pipeline.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/resolve-slot-styles/index.js +9 -3
- 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/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 +16 -3
- package/lib/commonjs/shared/providers/screen/styles/hooks/use-interpolated-style-maps.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/index.js +16 -3
- package/lib/commonjs/shared/providers/screen/styles/index.js.map +1 -1
- package/lib/commonjs/shared/providers/screen/styles/slot.provider.js +22 -51
- package/lib/commonjs/shared/providers/screen/styles/slot.provider.js.map +1 -1
- 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 +22 -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/module/shared/components/boundary/components/boundary-target.js +12 -7
- package/lib/module/shared/components/boundary/components/boundary-target.js.map +1 -1
- package/lib/module/shared/components/boundary/create-boundary-component.js +67 -29
- package/lib/module/shared/components/boundary/create-boundary-component.js.map +1 -1
- package/lib/module/shared/components/boundary/hooks/{use-boundary-presence.js → lifecycles/use-boundary-presence.js} +8 -4
- 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} +27 -10
- 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} +5 -7
- 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} +4 -4
- 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 +15 -36
- package/lib/module/shared/components/boundary/hooks/use-boundary-measurement.js.map +1 -1
- package/lib/module/shared/components/boundary/hooks/use-measurer.js +5 -6
- package/lib/module/shared/components/boundary/hooks/use-measurer.js.map +1 -1
- package/lib/module/shared/components/boundary/index.js +26 -29
- 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 +79 -28
- 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 +201 -127
- 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/hooks/use-placeholder-styles.js +52 -0
- package/lib/module/shared/components/boundary/portal/hooks/use-placeholder-styles.js.map +1 -0
- 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 -48
- 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 +6 -7
- package/lib/module/shared/components/boundary/providers/boundary-root.provider.js.map +1 -1
- package/lib/module/shared/components/boundary/utils/destination-signals.js +2 -23
- 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/masked-view.js +5 -0
- package/lib/module/shared/components/masked-view.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/backdrop.js +19 -9
- package/lib/module/shared/components/screen-container/layers/backdrop.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/content.js +35 -17
- package/lib/module/shared/components/screen-container/layers/content.js.map +1 -1
- package/lib/module/shared/components/screen-container/layers/render-component.js +6 -0
- package/lib/module/shared/components/screen-container/layers/render-component.js.map +1 -0
- package/lib/module/shared/components/screen-container/layers/surface-container.js +5 -3
- package/lib/module/shared/components/screen-container/layers/surface-container.js.map +1 -1
- package/lib/module/shared/index.js +4 -0
- 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/register-bounds.provider.js +6 -0
- package/lib/module/shared/providers/register-bounds.provider.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 +1 -0
- package/lib/module/shared/providers/screen/animation/helpers/pipeline.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/resolve-slot-styles/index.js +9 -3
- 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/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 +16 -3
- package/lib/module/shared/providers/screen/styles/hooks/use-interpolated-style-maps.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 +22 -47
- package/lib/module/shared/providers/screen/styles/slot.provider.js.map +1 -1
- 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 +19 -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/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts +1 -2
- package/lib/typescript/blank-stack/navigators/create-blank-stack-navigator.d.ts.map +1 -1
- package/lib/typescript/component-stack/components/component-screen.d.ts +1 -1
- package/lib/typescript/component-stack/components/component-screen.d.ts.map +1 -1
- package/lib/typescript/component-stack/navigators/create-component-stack-navigator.d.ts +1 -2
- package/lib/typescript/component-stack/navigators/create-component-stack-navigator.d.ts.map +1 -1
- package/lib/typescript/component-stack/types.d.ts +26 -0
- package/lib/typescript/component-stack/types.d.ts.map +1 -1
- package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts +1 -1
- package/lib/typescript/native-stack/navigators/createNativeStackNavigator.d.ts.map +1 -1
- package/lib/typescript/native-stack/views/NativeStackView.d.ts +1 -2
- package/lib/typescript/native-stack/views/NativeStackView.d.ts.map +1 -1
- package/lib/typescript/native-stack/views/useHeaderConfigProps.d.ts +2 -2
- package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts +1 -1
- package/lib/typescript/shared/adapters/with-screen-transitions/context.d.ts.map +1 -1
- package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts +1 -1
- package/lib/typescript/shared/adapters/with-screen-transitions/stack-layout.d.ts.map +1 -1
- package/lib/typescript/shared/components/activity/variants/activity-container.d.ts +1 -1
- package/lib/typescript/shared/components/activity/variants/activity-container.d.ts.map +1 -1
- package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts +1 -1
- package/lib/typescript/shared/components/activity/variants/activity-screen.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/components/boundary-target.d.ts +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/{use-initial-destination-measurement.d.ts → lifecycles/use-initial-destination-measurement.d.ts} +2 -2
- 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/{use-refresh-boundary.d.ts → lifecycles/use-refresh-boundary.d.ts} +2 -2
- 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 +5 -9
- package/lib/typescript/shared/components/boundary/hooks/use-boundary-measurement.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts +4 -3
- package/lib/typescript/shared/components/boundary/hooks/use-measurer.d.ts.map +1 -1
- package/lib/typescript/shared/components/boundary/index.d.ts +35 -24
- 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 +2 -2
- 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 +2 -2
- 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-provider.d.ts +1 -1
- package/lib/typescript/shared/components/boundary/portal/components/portal-provider.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/hooks/use-placeholder-styles.d.ts +17 -0
- package/lib/typescript/shared/components/boundary/portal/hooks/use-placeholder-styles.d.ts.map +1 -0
- 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 +23 -30
- 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 +7 -12
- package/lib/typescript/shared/components/boundary/providers/boundary-root.provider.d.ts.map +1 -1
- 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.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 +6 -5
- package/lib/typescript/shared/components/create-transition-aware-component.d.ts.map +1 -1
- package/lib/typescript/shared/components/masked-view.d.ts +5 -1
- package/lib/typescript/shared/components/masked-view.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/variations/float-overlay.d.ts +1 -1
- package/lib/typescript/shared/components/overlay/variations/float-overlay.d.ts.map +1 -1
- package/lib/typescript/shared/components/overlay/variations/overlay-host.d.ts +1 -1
- package/lib/typescript/shared/components/overlay/variations/overlay-host.d.ts.map +1 -1
- package/lib/typescript/shared/components/scene-view.d.ts +1 -1
- package/lib/typescript/shared/components/scene-view.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/index.d.ts +1 -1
- package/lib/typescript/shared/components/screen-container/index.d.ts.map +1 -1
- package/lib/typescript/shared/components/screen-container/layers/backdrop.d.ts +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 +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 +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/render-component.d.ts +3 -0
- package/lib/typescript/shared/components/screen-container/layers/render-component.d.ts.map +1 -0
- package/lib/typescript/shared/components/screen-container/layers/surface-container.d.ts +1 -1
- package/lib/typescript/shared/components/screen-container/layers/surface-container.d.ts.map +1 -1
- package/lib/typescript/shared/hooks/navigation/use-stack.d.ts +1 -1
- package/lib/typescript/shared/hooks/navigation/use-stack.d.ts.map +1 -1
- package/lib/typescript/shared/index.d.ts +731 -683
- 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/register-bounds.provider.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/descriptors/descriptors.provider.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/descriptors/descriptors.provider.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/screen-composer.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/screen-composer.d.ts.map +1 -1
- package/lib/typescript/shared/providers/screen/styles/components/floating-overlay-layer.d.ts +1 -1
- package/lib/typescript/shared/providers/screen/styles/components/floating-overlay-layer.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/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/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 -1
- 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 +3 -3
- 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 +5 -10
- package/lib/typescript/shared/providers/screen/styles/slot.provider.d.ts.map +1 -1
- 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 +2 -0
- 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 +9 -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/types/index.d.ts +1 -1
- package/lib/typescript/shared/types/index.d.ts.map +1 -1
- package/lib/typescript/shared/types/screen.types.d.ts +99 -4
- package/lib/typescript/shared/types/screen.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/types/options.d.ts +2 -0
- package/lib/typescript/shared/utils/bounds/types/options.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/component-stack/types.ts +26 -0
- package/src/shared/components/boundary/components/boundary-target.tsx +21 -7
- package/src/shared/components/boundary/create-boundary-component.tsx +92 -28
- package/src/shared/components/boundary/hooks/{use-boundary-presence.ts → lifecycles/use-boundary-presence.ts} +16 -5
- package/src/shared/components/boundary/hooks/{use-initial-destination-measurement.ts → lifecycles/use-initial-destination-measurement.ts} +40 -13
- package/src/shared/components/boundary/hooks/{use-initial-source-measurement.ts → lifecycles/use-initial-source-measurement.ts} +7 -9
- package/src/shared/components/boundary/hooks/{use-refresh-boundary.ts → lifecycles/use-refresh-boundary.ts} +6 -6
- package/src/shared/components/boundary/hooks/use-boundary-measurement.ts +15 -45
- package/src/shared/components/boundary/hooks/use-measurer.ts +9 -14
- package/src/shared/components/boundary/index.tsx +55 -29
- 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 +112 -46
- package/src/shared/components/boundary/portal/components/portal.tsx +263 -134
- package/src/shared/components/boundary/portal/hooks/use-host-measurement.ts +23 -2
- package/src/shared/components/boundary/portal/hooks/use-placeholder-styles.ts +55 -0
- 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 +42 -137
- 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-root.provider.tsx +9 -18
- package/src/shared/components/boundary/types.ts +9 -39
- package/src/shared/components/boundary/utils/destination-signals.ts +1 -32
- 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/masked-view.tsx +4 -0
- package/src/shared/components/screen-container/layers/backdrop.tsx +31 -10
- package/src/shared/components/screen-container/layers/content.tsx +61 -22
- package/src/shared/components/screen-container/layers/render-component.ts +9 -0
- package/src/shared/components/screen-container/layers/surface-container.tsx +5 -4
- package/src/shared/index.ts +9 -5
- package/src/shared/providers/helpers/measured-bounds-writes.ts +6 -11
- package/src/shared/providers/register-bounds.provider.tsx +5 -0
- package/src/shared/providers/screen/animation/helpers/derivations.ts +3 -0
- package/src/shared/providers/screen/animation/helpers/pipeline.ts +1 -0
- 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/resolve-slot-styles/index.ts +14 -2
- package/src/shared/providers/screen/styles/helpers/resolve-slot-styles/materialize-slot.ts +3 -0
- package/src/shared/providers/screen/styles/hooks/slot-resolvers.tsx +111 -0
- package/src/shared/providers/screen/styles/hooks/use-interpolated-style-maps.tsx +21 -3
- package/src/shared/providers/screen/styles/index.tsx +8 -3
- package/src/shared/providers/screen/styles/slot.provider.tsx +36 -54
- package/src/shared/providers/screen/styles/stores/slot-references.store.ts +71 -0
- package/src/shared/stores/bounds/helpers/link-pairs.helpers.ts +24 -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 +10 -22
- package/src/shared/stores/system.store.ts +6 -0
- package/src/shared/types/animation.types.ts +8 -1
- package/src/shared/types/index.ts +5 -0
- package/src/shared/types/screen.types.ts +111 -4
- 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/types/options.ts +2 -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/resolve-portal.js +0 -36
- package/lib/commonjs/shared/components/boundary/portal/resolve-portal.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/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/resolve-portal.js +0 -31
- package/lib/module/shared/components/boundary/portal/resolve-portal.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/typescript/shared/components/boundary/hooks/use-boundary-presence.d.ts +0 -9
- 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.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.map +0 -1
- package/lib/typescript/shared/components/boundary/portal/resolve-portal.d.ts +0 -14
- package/lib/typescript/shared/components/boundary/portal/resolve-portal.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/src/shared/components/boundary/portal/resolve-portal.ts +0 -40
- package/src/shared/components/boundary/portal/utils/attachment.ts +0 -48
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.usesEscapeClippingHost = exports.resolveBoundaryPortalOwnership = exports.hasHandoffEscapeContinuation = exports.canSwitchBoundaryLocalHandoffImmediately = void 0;
|
|
7
|
+
var _linkPairs = require("../../../../stores/bounds/helpers/link-pairs.helpers");
|
|
8
|
+
const hasSeenScreenKey = (screenKeys, screenKey) => {
|
|
9
|
+
"worklet";
|
|
10
|
+
|
|
11
|
+
for (let index = 0; index < screenKeys.length; index++) {
|
|
12
|
+
if (screenKeys[index] === screenKey) {
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
return false;
|
|
17
|
+
};
|
|
18
|
+
const usesEscapeClippingHost = link => {
|
|
19
|
+
"worklet";
|
|
20
|
+
|
|
21
|
+
return link?.source?.handoff === true && link.source.escapeClipping === true;
|
|
22
|
+
};
|
|
23
|
+
exports.usesEscapeClippingHost = usesEscapeClippingHost;
|
|
24
|
+
const isReturningToPreviousSourceHost = ({
|
|
25
|
+
hostScreenKey,
|
|
26
|
+
ownerPairKey,
|
|
27
|
+
previousOwnerPairKey
|
|
28
|
+
}) => {
|
|
29
|
+
"worklet";
|
|
30
|
+
|
|
31
|
+
const previousSourceScreenKey = (0, _linkPairs.getSourceScreenKeyFromPairKey)(previousOwnerPairKey);
|
|
32
|
+
const previousDestinationScreenKey = (0, _linkPairs.getDestinationScreenKeyFromPairKey)(previousOwnerPairKey);
|
|
33
|
+
const ownerDestinationScreenKey = (0, _linkPairs.getDestinationScreenKeyFromPairKey)(ownerPairKey);
|
|
34
|
+
return previousDestinationScreenKey !== "" && ownerDestinationScreenKey !== "" && previousDestinationScreenKey !== previousSourceScreenKey && ownerDestinationScreenKey === previousSourceScreenKey && hostScreenKey === previousSourceScreenKey;
|
|
35
|
+
};
|
|
36
|
+
const canSwitchBoundaryLocalHandoffImmediately = ({
|
|
37
|
+
hostScreenKey,
|
|
38
|
+
ownerPairKey,
|
|
39
|
+
previousOwnerPairKey
|
|
40
|
+
}) => {
|
|
41
|
+
"worklet";
|
|
42
|
+
|
|
43
|
+
if (!hostScreenKey || !ownerPairKey) {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
if (hostScreenKey === (0, _linkPairs.getSourceScreenKeyFromPairKey)(ownerPairKey)) {
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
if (!previousOwnerPairKey) {
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
return isReturningToPreviousSourceHost({
|
|
53
|
+
hostScreenKey,
|
|
54
|
+
ownerPairKey,
|
|
55
|
+
previousOwnerPairKey
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
exports.canSwitchBoundaryLocalHandoffImmediately = canSwitchBoundaryLocalHandoffImmediately;
|
|
59
|
+
const isActiveHandoffLink = ({
|
|
60
|
+
link,
|
|
61
|
+
linkKey,
|
|
62
|
+
pairKey,
|
|
63
|
+
pairsState
|
|
64
|
+
}) => {
|
|
65
|
+
"worklet";
|
|
66
|
+
|
|
67
|
+
if (!link.group) {
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
const activeId = pairsState[pairKey]?.groups?.[link.group]?.activeId;
|
|
71
|
+
return !activeId || activeId === linkKey;
|
|
72
|
+
};
|
|
73
|
+
const resolveBoundaryLocalStyleOwnerScreenKey = ({
|
|
74
|
+
hostScreenKey,
|
|
75
|
+
isSettledHostReady,
|
|
76
|
+
settledHostScreenKey,
|
|
77
|
+
sourceScreenKey
|
|
78
|
+
}) => {
|
|
79
|
+
"worklet";
|
|
80
|
+
|
|
81
|
+
if (settledHostScreenKey === hostScreenKey && isSettledHostReady) {
|
|
82
|
+
return hostScreenKey;
|
|
83
|
+
}
|
|
84
|
+
return sourceScreenKey;
|
|
85
|
+
};
|
|
86
|
+
const pendingSignal = sourcePairKey => {
|
|
87
|
+
"worklet";
|
|
88
|
+
|
|
89
|
+
return {
|
|
90
|
+
hostScreenKey: null,
|
|
91
|
+
ownerPairKey: sourcePairKey,
|
|
92
|
+
ownerScreenKey: null,
|
|
93
|
+
status: "pending"
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
const clearSignal = sourcePairKey => {
|
|
97
|
+
"worklet";
|
|
98
|
+
|
|
99
|
+
return {
|
|
100
|
+
hostScreenKey: null,
|
|
101
|
+
ownerPairKey: sourcePairKey,
|
|
102
|
+
ownerScreenKey: null,
|
|
103
|
+
status: "clear"
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
const resolveBoundaryPortalOwnership = ({
|
|
107
|
+
boundaryId,
|
|
108
|
+
currentScreenKey,
|
|
109
|
+
escapeClipping,
|
|
110
|
+
handoff,
|
|
111
|
+
isSettledHostClosingComplete = false,
|
|
112
|
+
isSettledHostReady = false,
|
|
113
|
+
pairsState,
|
|
114
|
+
settledHostScreenKey = null,
|
|
115
|
+
sourcePairKey
|
|
116
|
+
}) => {
|
|
117
|
+
"worklet";
|
|
118
|
+
|
|
119
|
+
const linkKey = (0, _linkPairs.getLinkKeyFromTag)(boundaryId);
|
|
120
|
+
const link = (0, _linkPairs.getLink)(pairsState, sourcePairKey, linkKey);
|
|
121
|
+
if (link?.status !== "complete") {
|
|
122
|
+
return pendingSignal(sourcePairKey);
|
|
123
|
+
}
|
|
124
|
+
if (!isActiveHandoffLink({
|
|
125
|
+
link,
|
|
126
|
+
linkKey,
|
|
127
|
+
pairKey: sourcePairKey,
|
|
128
|
+
pairsState
|
|
129
|
+
})) {
|
|
130
|
+
return clearSignal(sourcePairKey);
|
|
131
|
+
}
|
|
132
|
+
if (!handoff) {
|
|
133
|
+
return {
|
|
134
|
+
hostScreenKey: currentScreenKey,
|
|
135
|
+
ownerPairKey: sourcePairKey,
|
|
136
|
+
ownerScreenKey: currentScreenKey,
|
|
137
|
+
status: "complete"
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
let hostScreenKey = link.destination.screenKey;
|
|
141
|
+
let ownerPairKey = sourcePairKey;
|
|
142
|
+
let previousOwnerPairKey = null;
|
|
143
|
+
const seenScreenKeys = [(0, _linkPairs.getSourceScreenKeyFromPairKey)(sourcePairKey), hostScreenKey];
|
|
144
|
+
const pairKeys = Object.keys(pairsState);
|
|
145
|
+
for (let hop = 0; hop < pairKeys.length; hop++) {
|
|
146
|
+
let didAdvance = false;
|
|
147
|
+
let hasPendingNextHop = false;
|
|
148
|
+
let didHitVisitedScreen = false;
|
|
149
|
+
for (let index = 0; index < pairKeys.length; index++) {
|
|
150
|
+
const candidatePairKey = pairKeys[index];
|
|
151
|
+
if (!candidatePairKey || candidatePairKey === ownerPairKey) {
|
|
152
|
+
continue;
|
|
153
|
+
}
|
|
154
|
+
const candidate = (0, _linkPairs.getLink)(pairsState, candidatePairKey, linkKey);
|
|
155
|
+
if (!candidate?.source || candidate.source.screenKey !== hostScreenKey) {
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
158
|
+
if (!candidate.source.handoff) {
|
|
159
|
+
continue;
|
|
160
|
+
}
|
|
161
|
+
if (!isActiveHandoffLink({
|
|
162
|
+
link: candidate,
|
|
163
|
+
linkKey,
|
|
164
|
+
pairKey: candidatePairKey,
|
|
165
|
+
pairsState
|
|
166
|
+
})) {
|
|
167
|
+
continue;
|
|
168
|
+
}
|
|
169
|
+
if (candidate.status !== "complete") {
|
|
170
|
+
hasPendingNextHop = true;
|
|
171
|
+
continue;
|
|
172
|
+
}
|
|
173
|
+
const nextHostScreenKey = candidate.destination.screenKey;
|
|
174
|
+
previousOwnerPairKey = ownerPairKey;
|
|
175
|
+
ownerPairKey = candidatePairKey;
|
|
176
|
+
hostScreenKey = nextHostScreenKey;
|
|
177
|
+
if (hasSeenScreenKey(seenScreenKeys, nextHostScreenKey)) {
|
|
178
|
+
didHitVisitedScreen = true;
|
|
179
|
+
break;
|
|
180
|
+
}
|
|
181
|
+
seenScreenKeys.push(nextHostScreenKey);
|
|
182
|
+
didAdvance = true;
|
|
183
|
+
break;
|
|
184
|
+
}
|
|
185
|
+
if (didHitVisitedScreen) {
|
|
186
|
+
break;
|
|
187
|
+
}
|
|
188
|
+
if (didAdvance) {
|
|
189
|
+
continue;
|
|
190
|
+
}
|
|
191
|
+
if (hasPendingNextHop) {
|
|
192
|
+
return pendingSignal(ownerPairKey);
|
|
193
|
+
}
|
|
194
|
+
break;
|
|
195
|
+
}
|
|
196
|
+
const ownerLink = (0, _linkPairs.getLink)(pairsState, ownerPairKey, linkKey);
|
|
197
|
+
const ownerUsesEscapeClipping = ownerLink?.source?.escapeClipping ?? escapeClipping;
|
|
198
|
+
if (!ownerUsesEscapeClipping && isSettledHostClosingComplete && settledHostScreenKey === hostScreenKey && previousOwnerPairKey) {
|
|
199
|
+
hostScreenKey = (0, _linkPairs.getSourceScreenKeyFromPairKey)(ownerPairKey);
|
|
200
|
+
}
|
|
201
|
+
const ownerScreenKey = ownerUsesEscapeClipping ? (0, _linkPairs.getSourceScreenKeyFromPairKey)(ownerPairKey) : resolveBoundaryLocalStyleOwnerScreenKey({
|
|
202
|
+
hostScreenKey,
|
|
203
|
+
isSettledHostReady,
|
|
204
|
+
settledHostScreenKey,
|
|
205
|
+
sourceScreenKey: (0, _linkPairs.getSourceScreenKeyFromPairKey)(ownerPairKey)
|
|
206
|
+
});
|
|
207
|
+
return {
|
|
208
|
+
hostScreenKey,
|
|
209
|
+
ownerPairKey,
|
|
210
|
+
ownerScreenKey,
|
|
211
|
+
status: "complete"
|
|
212
|
+
};
|
|
213
|
+
};
|
|
214
|
+
exports.resolveBoundaryPortalOwnership = resolveBoundaryPortalOwnership;
|
|
215
|
+
const hasHandoffEscapeContinuation = ({
|
|
216
|
+
linkKey,
|
|
217
|
+
linkState,
|
|
218
|
+
sourceScreenKey
|
|
219
|
+
}) => {
|
|
220
|
+
"worklet";
|
|
221
|
+
|
|
222
|
+
const pairKeys = Object.keys(linkState);
|
|
223
|
+
const visitedScreenKeys = [];
|
|
224
|
+
let cursorScreenKey = sourceScreenKey;
|
|
225
|
+
for (let hop = 0; hop < pairKeys.length; hop++) {
|
|
226
|
+
if (hasSeenScreenKey(visitedScreenKeys, cursorScreenKey)) {
|
|
227
|
+
return false;
|
|
228
|
+
}
|
|
229
|
+
visitedScreenKeys.push(cursorScreenKey);
|
|
230
|
+
let previousScreenKey = null;
|
|
231
|
+
for (let index = 0; index < pairKeys.length; index++) {
|
|
232
|
+
const candidatePairKey = pairKeys[index];
|
|
233
|
+
const link = candidatePairKey ? linkState[candidatePairKey]?.links?.[linkKey] : null;
|
|
234
|
+
if (!link?.source || !link.destination || link.destination.screenKey !== cursorScreenKey) {
|
|
235
|
+
continue;
|
|
236
|
+
}
|
|
237
|
+
if (usesEscapeClippingHost(link)) {
|
|
238
|
+
return true;
|
|
239
|
+
}
|
|
240
|
+
if (!link.source.handoff) {
|
|
241
|
+
return false;
|
|
242
|
+
}
|
|
243
|
+
previousScreenKey = link.source.screenKey;
|
|
244
|
+
break;
|
|
245
|
+
}
|
|
246
|
+
if (!previousScreenKey) {
|
|
247
|
+
return false;
|
|
248
|
+
}
|
|
249
|
+
cursorScreenKey = previousScreenKey;
|
|
250
|
+
}
|
|
251
|
+
return false;
|
|
252
|
+
};
|
|
253
|
+
exports.hasHandoffEscapeContinuation = hasHandoffEscapeContinuation;
|
|
254
|
+
//# sourceMappingURL=ownership.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_linkPairs","require","hasSeenScreenKey","screenKeys","screenKey","index","length","usesEscapeClippingHost","link","source","handoff","escapeClipping","exports","isReturningToPreviousSourceHost","hostScreenKey","ownerPairKey","previousOwnerPairKey","previousSourceScreenKey","getSourceScreenKeyFromPairKey","previousDestinationScreenKey","getDestinationScreenKeyFromPairKey","ownerDestinationScreenKey","canSwitchBoundaryLocalHandoffImmediately","isActiveHandoffLink","linkKey","pairKey","pairsState","group","activeId","groups","resolveBoundaryLocalStyleOwnerScreenKey","isSettledHostReady","settledHostScreenKey","sourceScreenKey","pendingSignal","sourcePairKey","ownerScreenKey","status","clearSignal","resolveBoundaryPortalOwnership","boundaryId","currentScreenKey","isSettledHostClosingComplete","getLinkKeyFromTag","getPairLink","destination","seenScreenKeys","pairKeys","Object","keys","hop","didAdvance","hasPendingNextHop","didHitVisitedScreen","candidatePairKey","candidate","nextHostScreenKey","push","ownerLink","ownerUsesEscapeClipping","hasHandoffEscapeContinuation","linkState","visitedScreenKeys","cursorScreenKey","previousScreenKey","links"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/ownership.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.resolveBoundaryPortal = void 0;
|
|
7
|
+
var _logger = require("../../../../utils/logger");
|
|
8
|
+
var _teleport = require("../teleport");
|
|
9
|
+
const resolveBoundaryPortal = ({
|
|
10
|
+
handoff,
|
|
11
|
+
escapeClipping
|
|
12
|
+
}) => {
|
|
13
|
+
const resolvedHandoff = handoff ?? false;
|
|
14
|
+
const resolvedEscapeClipping = escapeClipping ?? false;
|
|
15
|
+
const enabled = resolvedHandoff || resolvedEscapeClipping;
|
|
16
|
+
if (!enabled) {
|
|
17
|
+
return {
|
|
18
|
+
handoff: false,
|
|
19
|
+
escapeClipping: false,
|
|
20
|
+
enabled: false
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
if (!_teleport.isTeleportAvailable) {
|
|
24
|
+
_logger.logger.warnOnce("boundary:teleport-missing", "react-native-teleport is not installed; handoff and escapeClipping boundaries will render inline.");
|
|
25
|
+
return {
|
|
26
|
+
handoff: false,
|
|
27
|
+
escapeClipping: false,
|
|
28
|
+
enabled: false
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
handoff: resolvedHandoff,
|
|
33
|
+
escapeClipping: resolvedEscapeClipping,
|
|
34
|
+
enabled
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
exports.resolveBoundaryPortal = resolveBoundaryPortal;
|
|
38
|
+
//# sourceMappingURL=resolve-portal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_logger","require","_teleport","resolveBoundaryPortal","handoff","escapeClipping","resolvedHandoff","resolvedEscapeClipping","enabled","isTeleportAvailable","logger","warnOnce","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/resolve-portal.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAaO,MAAME,qBAAqB,GAAGA,CAAC;EACrCC,OAAO;EACPC;AAC4B,CAAC,KAA4B;EACzD,MAAMC,eAAe,GAAGF,OAAO,IAAI,KAAK;EACxC,MAAMG,sBAAsB,GAAGF,cAAc,IAAI,KAAK;EAEtD,MAAMG,OAAO,GAAGF,eAAe,IAAIC,sBAAsB;EAEzD,IAAI,CAACC,OAAO,EAAE;IACb,OAAO;MACNJ,OAAO,EAAE,KAAK;MACdC,cAAc,EAAE,KAAK;MACrBG,OAAO,EAAE;IACV,CAAC;EACF;EAEA,IAAI,CAACC,6BAAmB,EAAE;IACzBC,cAAM,CAACC,QAAQ,CACd,2BAA2B,EAC3B,mGACD,CAAC;IAED,OAAO;MACNP,OAAO,EAAE,KAAK;MACdC,cAAc,EAAE,KAAK;MACrBG,OAAO,EAAE;IACV,CAAC;EACF;EAEA,OAAO;IACNJ,OAAO,EAAEE,eAAe;IACxBD,cAAc,EAAEE,sBAAsB;IACtCC;EACD,CAAC;AACF,CAAC;AAACI,OAAA,CAAAT,qBAAA,GAAAA,qBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.shallowEqual = void 0;
|
|
7
|
+
/**
|
|
8
|
+
* Shallow equality for the flat signal objects produced by the portal
|
|
9
|
+
* `useAnimatedReaction` blocks. Both sides always carry the same fixed key set,
|
|
10
|
+
* so iterating one side's keys is sufficient. A `null`/`undefined` operand
|
|
11
|
+
* (the first reaction run) is treated as not-equal so the reaction proceeds.
|
|
12
|
+
*/
|
|
13
|
+
const shallowEqual = (a, b) => {
|
|
14
|
+
"worklet";
|
|
15
|
+
|
|
16
|
+
if (!a || !b) {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
const keys = Object.keys(a);
|
|
20
|
+
for (let index = 0; index < keys.length; index++) {
|
|
21
|
+
const key = keys[index];
|
|
22
|
+
if (a[key] !== b[key]) {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return true;
|
|
27
|
+
};
|
|
28
|
+
exports.shallowEqual = shallowEqual;
|
|
29
|
+
//# sourceMappingURL=shallow-equal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["shallowEqual","a","b","keys","Object","index","length","key","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/shallow-equal.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,YAAY,GAAGA,CAC3BC,CAA6C,EAC7CC,CAA6C,KACzC;EACJ,SAAS;;EACT,IAAI,CAACD,CAAC,IAAI,CAACC,CAAC,EAAE;IACb,OAAO,KAAK;EACb;EAEA,MAAMC,IAAI,GAAGC,MAAM,CAACD,IAAI,CAACF,CAAC,CAAC;EAC3B,KAAK,IAAII,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGF,IAAI,CAACG,MAAM,EAAED,KAAK,EAAE,EAAE;IACjD,MAAME,GAAG,GAAGJ,IAAI,CAACE,KAAK,CAAC;IACvB,IAAIJ,CAAC,CAACM,GAAG,CAAC,KAAKL,CAAC,CAACK,GAAG,CAAC,EAAE;MACtB,OAAO,KAAK;IACb;EACD;EAEA,OAAO,IAAI;AACZ,CAAC;AAACC,OAAA,CAAAR,YAAA,GAAAA,YAAA","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.isTeleportEnabled = void 0;
|
|
6
|
+
exports.shouldAttachBoundaryPortal = exports.isTeleportEnabled = void 0;
|
|
7
7
|
const isTeleportEnabled = teleport => {
|
|
8
8
|
"worklet";
|
|
9
9
|
|
|
@@ -13,4 +13,13 @@ const isTeleportEnabled = teleport => {
|
|
|
13
13
|
return teleport?.enabled !== false;
|
|
14
14
|
};
|
|
15
15
|
exports.isTeleportEnabled = isTeleportEnabled;
|
|
16
|
+
const shouldAttachBoundaryPortal = ({
|
|
17
|
+
enabled,
|
|
18
|
+
teleport
|
|
19
|
+
}) => {
|
|
20
|
+
"worklet";
|
|
21
|
+
|
|
22
|
+
return enabled && isTeleportEnabled(teleport);
|
|
23
|
+
};
|
|
24
|
+
exports.shouldAttachBoundaryPortal = shouldAttachBoundaryPortal;
|
|
16
25
|
//# sourceMappingURL=teleport-control.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isTeleportEnabled","teleport","enabled","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/teleport-control.ts"],"mappings":";;;;;;AAEO,MAAMA,iBAAiB,GAC7BC,QAA6C,IACzC;EACJ,SAAS;;EAET,IAAI,OAAOA,QAAQ,KAAK,SAAS,EAAE;IAClC,OAAOA,QAAQ;EAChB;EAEA,OAAOA,QAAQ,EAAEC,OAAO,KAAK,KAAK;AACnC,CAAC;AAACC,OAAA,CAAAH,iBAAA,GAAAA,iBAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["isTeleportEnabled","teleport","enabled","exports","shouldAttachBoundaryPortal"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/teleport-control.ts"],"mappings":";;;;;;AAEO,MAAMA,iBAAiB,GAC7BC,QAA6C,IACzC;EACJ,SAAS;;EAET,IAAI,OAAOA,QAAQ,KAAK,SAAS,EAAE;IAClC,OAAOA,QAAQ;EAChB;EAEA,OAAOA,QAAQ,EAAEC,OAAO,KAAK,KAAK;AACnC,CAAC;AAACC,OAAA,CAAAH,iBAAA,GAAAA,iBAAA;AAEK,MAAMI,0BAA0B,GAAGA,CAAC;EAC1CF,OAAO;EACPD;AAID,CAAC,KAAK;EACL,SAAS;;EAET,OAAOC,OAAO,IAAIF,iBAAiB,CAACC,QAAQ,CAAC;AAC9C,CAAC;AAACE,OAAA,CAAAC,0BAAA,GAAAA,0BAAA","ignoreList":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.resolveNextVisiblePortalHostName = void 0;
|
|
7
|
+
const resolveNextVisiblePortalHostName = ({
|
|
8
|
+
canSwitchImmediately,
|
|
9
|
+
isInterpolatorReady,
|
|
10
|
+
requestedName,
|
|
11
|
+
shouldTeleport,
|
|
12
|
+
visibleName
|
|
13
|
+
}) => {
|
|
14
|
+
"worklet";
|
|
15
|
+
|
|
16
|
+
if (!shouldTeleport) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
if (requestedName && (canSwitchImmediately || isInterpolatorReady)) {
|
|
20
|
+
return requestedName;
|
|
21
|
+
}
|
|
22
|
+
return visibleName;
|
|
23
|
+
};
|
|
24
|
+
exports.resolveNextVisiblePortalHostName = resolveNextVisiblePortalHostName;
|
|
25
|
+
//# sourceMappingURL=visible-host.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["resolveNextVisiblePortalHostName","canSwitchImmediately","isInterpolatorReady","requestedName","shouldTeleport","visibleName","exports"],"sourceRoot":"../../../../../../../src","sources":["shared/components/boundary/portal/utils/visible-host.ts"],"mappings":";;;;;;AAAO,MAAMA,gCAAgC,GAAGA,CAAC;EAChDC,oBAAoB;EACpBC,mBAAmB;EACnBC,aAAa;EACbC,cAAc;EACdC;AAOD,CAAC,KAAK;EACL,SAAS;;EACT,IAAI,CAACD,cAAc,EAAE;IACpB,OAAO,IAAI;EACZ;EAEA,IAAID,aAAa,KAAKF,oBAAoB,IAAIC,mBAAmB,CAAC,EAAE;IACnE,OAAOC,aAAa;EACrB;EAEA,OAAOE,WAAW;AACnB,CAAC;AAACC,OAAA,CAAAN,gCAAA,GAAAA,gCAAA","ignoreList":[]}
|
|
@@ -11,7 +11,7 @@ var _logger = require("../../../utils/logger");
|
|
|
11
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
12
|
// logger.warn prepends the library prefix.
|
|
13
13
|
const MULTIPLE_TARGETS_WARNING = "Multiple Boundary.Target elements were rendered under the same boundary root. The first registered target will be measured.";
|
|
14
|
-
const TARGET_OUTSIDE_ROOT_WARNING = exports.TARGET_OUTSIDE_ROOT_WARNING = "Boundary.Target must be rendered inside
|
|
14
|
+
const TARGET_OUTSIDE_ROOT_WARNING = exports.TARGET_OUTSIDE_ROOT_WARNING = "Boundary.Target must be rendered inside Transition.Boundary or a component created by createBoundaryComponent.";
|
|
15
15
|
const {
|
|
16
16
|
BoundaryRootProvider,
|
|
17
17
|
useBoundaryRootContext
|
|
@@ -22,9 +22,9 @@ exports.useBoundaryRootContext = useBoundaryRootContext;
|
|
|
22
22
|
exports.BoundaryRootProvider = BoundaryRootProvider;
|
|
23
23
|
const useBoundaryRootState = params => {
|
|
24
24
|
const {
|
|
25
|
-
associatedTargetStyles,
|
|
26
25
|
boundTag,
|
|
27
|
-
|
|
26
|
+
portalRuntime,
|
|
27
|
+
rootMeasurementRef
|
|
28
28
|
} = params;
|
|
29
29
|
const rootRef = (0, _reactNativeReanimated.useAnimatedRef)();
|
|
30
30
|
const [targetEntry, setTargetEntry] = (0, _react.useState)(null);
|
|
@@ -50,15 +50,14 @@ const useBoundaryRootState = params => {
|
|
|
50
50
|
registerTargetRef,
|
|
51
51
|
unregisterTargetRef,
|
|
52
52
|
activeTargetRef: targetEntry?.ref ?? null,
|
|
53
|
-
associatedTargetStyles,
|
|
54
53
|
boundTag,
|
|
55
|
-
|
|
56
|
-
}), [registerTargetRef, unregisterTargetRef, targetEntry,
|
|
54
|
+
portalRuntime
|
|
55
|
+
}), [registerTargetRef, unregisterTargetRef, targetEntry, boundTag, portalRuntime]);
|
|
57
56
|
return {
|
|
58
57
|
ref: rootRef,
|
|
59
58
|
contextValue,
|
|
60
59
|
hasActiveTarget: targetEntry !== null,
|
|
61
|
-
measuredRef: targetEntry?.measurementRef ?? rootRef,
|
|
60
|
+
measuredRef: targetEntry?.measurementRef ?? rootMeasurementRef ?? rootRef,
|
|
62
61
|
targetPreparedStyles: targetEntry?.preparedStyles
|
|
63
62
|
};
|
|
64
63
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNativeReanimated","_createProvider","_interopRequireDefault","_logger","e","__esModule","default","MULTIPLE_TARGETS_WARNING","TARGET_OUTSIDE_ROOT_WARNING","exports","BoundaryRootProvider","useBoundaryRootContext","createProvider","guarded","props","useBoundaryRootState","params","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNativeReanimated","_createProvider","_interopRequireDefault","_logger","e","__esModule","default","MULTIPLE_TARGETS_WARNING","TARGET_OUTSIDE_ROOT_WARNING","exports","BoundaryRootProvider","useBoundaryRootContext","createProvider","guarded","props","useBoundaryRootState","params","boundTag","portalRuntime","rootMeasurementRef","rootRef","useAnimatedRef","targetEntry","setTargetEntry","useState","registerTargetRef","useCallback","targetRef","preparedStyles","measurementRef","prev","ref","__DEV__","logger","warnOnce","unregisterTargetRef","contextValue","useMemo","activeTargetRef","hasActiveTarget","measuredRef","targetPreparedStyles"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/providers/boundary-root.provider.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGA,IAAAC,sBAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAA+C,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAsB/C;AACA,MAAMG,wBAAwB,GAC7B,6HAA6H;AAEvH,MAAMC,2BAA2B,GAAAC,OAAA,CAAAD,2BAAA,GACvC,gHAAgH;AAO1G,MAAM;EAAEE,oBAAoB;EAAEC;AAAuB,CAAC,GAAG,IAAAC,uBAAc,EAC7E,cAAc,EACd;EAAEC,OAAO,EAAE;AAAM,CAClB,CAAC,CAA+CC,KAAK,IAAKA,KAAK,CAAC;AAACL,OAAA,CAAAE,sBAAA,GAAAA,sBAAA;AAAAF,OAAA,CAAAC,oBAAA,GAAAA,oBAAA;AAE1D,MAAMK,oBAAoB,GAAIC,MAIpC,IAAK;EACL,MAAM;IAAEC,QAAQ;IAAEC,aAAa;IAAEC;EAAmB,CAAC,GAAGH,MAAM;EAC9D,MAAMI,OAAO,GAAG,IAAAC,qCAAc,EAAO,CAAC;EACtC,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAC,eAAQ,EAC7C,IACD,CAAC;EAED,MAAMC,iBAAiB,GAAG,IAAAC,kBAAW,EACpC,CACCC,SAA4B,EAC5BC,cAA0B,EAC1BC,cAAkC,KAC9B;IACJN,cAAc,CAAEO,IAAI,IAAK;MACxB,IAAIA,IAAI,EAAEC,GAAG,KAAKJ,SAAS,EAAE;QAC5B,OAAOG,IAAI;MACZ;MAEA,IAAIE,OAAO,IAAIF,IAAI,KAAK,IAAI,EAAE;QAC7BG,cAAM,CAACC,QAAQ,CACd,2BAA2B,EAC3B3B,wBACD,CAAC;MACF;MAEA,OACCuB,IAAI,IAAI;QACPC,GAAG,EAAEJ,SAAS;QACdE,cAAc,EAAEA,cAAc,IAAIF,SAAS;QAC3CC;MACD,CAAC;IAEH,CAAC,CAAC;EACH,CAAC,EACD,EACD,CAAC;EAED,MAAMO,mBAAmB,GAAG,IAAAT,kBAAW,EAAEC,SAA4B,IAAK;IACzEJ,cAAc,CAAEO,IAAI,IAAMA,IAAI,EAAEC,GAAG,KAAKJ,SAAS,GAAG,IAAI,GAAGG,IAAK,CAAC;EAClE,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMM,YAAY,GAAG,IAAAC,cAAO,EAC3B,OAAO;IACNZ,iBAAiB;IACjBU,mBAAmB;IACnBG,eAAe,EAAEhB,WAAW,EAAES,GAAG,IAAI,IAAI;IACzCd,QAAQ;IACRC;EACD,CAAC,CAAC,EACF,CACCO,iBAAiB,EACjBU,mBAAmB,EACnBb,WAAW,EACXL,QAAQ,EACRC,aAAa,CAEf,CAAC;EAED,OAAO;IACNa,GAAG,EAAEX,OAAO;IACZgB,YAAY;IACZG,eAAe,EAAEjB,WAAW,KAAK,IAAI;IACrCkB,WAAW,EAAElB,WAAW,EAAEO,cAAc,IAAIV,kBAAkB,IAAIC,OAAO;IACzEqB,oBAAoB,EAAEnB,WAAW,EAAEM;EACpC,CAAC;AACF,CAAC;AAACnB,OAAA,CAAAM,oBAAA,GAAAA,oBAAA","ignoreList":[]}
|
|
@@ -5,20 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.getInitialDestinationMeasurePairKey = void 0;
|
|
7
7
|
var _linkPairs = require("../../../stores/bounds/helpers/link-pairs.helpers");
|
|
8
|
-
const hasPendingSourceLinks = (linkState, pendingPairKey) => {
|
|
9
|
-
"worklet";
|
|
10
|
-
|
|
11
|
-
const links = linkState?.[pendingPairKey]?.links;
|
|
12
|
-
if (!links) {
|
|
13
|
-
return false;
|
|
14
|
-
}
|
|
15
|
-
for (const key in links) {
|
|
16
|
-
if (links[key]?.source) {
|
|
17
|
-
return true;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return false;
|
|
21
|
-
};
|
|
22
8
|
const getInitialDestinationMeasurePairKey = params => {
|
|
23
9
|
"worklet";
|
|
24
10
|
|
|
@@ -39,15 +25,8 @@ const getInitialDestinationMeasurePairKey = params => {
|
|
|
39
25
|
if (hasDestination) {
|
|
40
26
|
return null;
|
|
41
27
|
}
|
|
42
|
-
const sourceScreenKey = (0, _linkPairs.getSourceScreenKeyFromPairKey)(measurePairKey);
|
|
43
|
-
const pendingPairKey = (0, _linkPairs.createPendingPairKey)(sourceScreenKey);
|
|
44
|
-
const hasPendingSources = hasPendingSourceLinks(linkState, pendingPairKey);
|
|
45
|
-
const pendingSource = linkState?.[pendingPairKey]?.links?.[linkKey]?.source;
|
|
46
|
-
if (hasPendingSources && !pendingSource) {
|
|
47
|
-
return null;
|
|
48
|
-
}
|
|
49
28
|
const activeGroupId = group && linkState ? (0, _linkPairs.getActiveGroupId)(linkState, measurePairKey, group) : null;
|
|
50
|
-
if (
|
|
29
|
+
if (activeGroupId && activeGroupId !== linkKey) {
|
|
51
30
|
return null;
|
|
52
31
|
}
|
|
53
32
|
return measurePairKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_linkPairs","require","
|
|
1
|
+
{"version":3,"names":["_linkPairs","require","getInitialDestinationMeasurePairKey","params","enabled","destinationPairKey","ancestorDestinationPairKey","linkId","group","linkState","measurePairKey","linkKey","getLinkKeyFromTag","hasDestination","links","destination","activeGroupId","getActiveGroupId","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/utils/destination-signals.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AASO,MAAMC,mCAAmC,GAAIC,MAOnD,IAA2B;EAC3B,SAAS;;EACT,MAAM;IACLC,OAAO;IACPC,kBAAkB;IAClBC,0BAA0B;IAC1BC,MAAM;IACNC,KAAK;IACLC;EACD,CAAC,GAAGN,MAAM;EACV,MAAMO,cAAc,GAAGL,kBAAkB,IAAIC,0BAA0B;EAEvE,IAAI,CAACF,OAAO,IAAI,CAACM,cAAc,EAAE;IAChC,OAAO,IAAI;EACZ;EAEA,MAAMC,OAAO,GAAG,IAAAC,4BAAiB,EAACL,MAAM,CAAC;EACzC,MAAMM,cAAc,GACnBJ,SAAS,GAAGC,cAAc,CAAC,EAAEI,KAAK,GAAGH,OAAO,CAAC,EAAEI,WAAW;EAE3D,IAAIF,cAAc,EAAE;IACnB,OAAO,IAAI;EACZ;EAEA,MAAMG,aAAa,GAClBR,KAAK,IAAIC,SAAS,GACf,IAAAQ,2BAAgB,EAACR,SAAS,EAAEC,cAAc,EAAEF,KAAK,CAAC,GAClD,IAAI;EAER,IAAIQ,aAAa,IAAIA,aAAa,KAAKL,OAAO,EAAE;IAC/C,OAAO,IAAI;EACZ;EAEA,OAAOD,cAAc;AACtB,CAAC;AAACQ,OAAA,CAAAhB,mCAAA,GAAAA,mCAAA","ignoreList":[]}
|
|
@@ -16,11 +16,6 @@ const buildRefreshSignal = (type, pairKey, key) => {
|
|
|
16
16
|
signal: `${prefix}${pairKey}|${key}`
|
|
17
17
|
};
|
|
18
18
|
};
|
|
19
|
-
const isMatchedScreenPortalDestinationRefresh = (linkState, pairKey, linkId) => {
|
|
20
|
-
"worklet";
|
|
21
|
-
|
|
22
|
-
return linkState?.[pairKey]?.links?.[linkId]?.source?.portalAttachTarget === "matched-screen";
|
|
23
|
-
};
|
|
24
19
|
const getRefreshBoundarySignal = params => {
|
|
25
20
|
"worklet";
|
|
26
21
|
|
|
@@ -59,16 +54,6 @@ const getRefreshBoundarySignal = params => {
|
|
|
59
54
|
if (!refreshDestinationPairKey) {
|
|
60
55
|
return null;
|
|
61
56
|
}
|
|
62
|
-
|
|
63
|
-
// NOTE:
|
|
64
|
-
// Matched-screen portals use the destination as the initial host/anchor.
|
|
65
|
-
// Once attached, the teleported source is the thing being animated, so a
|
|
66
|
-
// fresh destination measure would mix in a second coordinate basis. Signals were introduced for scroll view cases + group
|
|
67
|
-
// cases, but I can't find a case for where a live component ( matched-screen ) would need this complexity. I would just assume
|
|
68
|
-
// you would want this for a->b | b->a transitions.
|
|
69
|
-
if (isMatchedScreenPortalDestinationRefresh(linkState, refreshDestinationPairKey, linkId)) {
|
|
70
|
-
return null;
|
|
71
|
-
}
|
|
72
57
|
return buildRefreshSignal("destination", refreshDestinationPairKey, [currentScreenKey, closing ? "closing" : "settled"].join("|"));
|
|
73
58
|
}
|
|
74
59
|
|
|
@@ -93,12 +78,6 @@ const getRefreshBoundarySignal = params => {
|
|
|
93
78
|
if (activeId !== linkId) {
|
|
94
79
|
return null;
|
|
95
80
|
}
|
|
96
|
-
|
|
97
|
-
// NOTE:
|
|
98
|
-
// see above for explanation
|
|
99
|
-
if (isMatchedScreenPortalDestinationRefresh(linkState, refreshDestinationPairKey, linkId)) {
|
|
100
|
-
return null;
|
|
101
|
-
}
|
|
102
81
|
return buildRefreshSignal("destination", refreshDestinationPairKey, [group, linkId, closing ? "closing" : "settled"].join("|"));
|
|
103
82
|
};
|
|
104
83
|
exports.getRefreshBoundarySignal = getRefreshBoundarySignal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SOURCE_SIGNAL_PREFIX","DESTINATION_SIGNAL_PREFIX","buildRefreshSignal","type","pairKey","key","prefix","signal","
|
|
1
|
+
{"version":3,"names":["SOURCE_SIGNAL_PREFIX","DESTINATION_SIGNAL_PREFIX","buildRefreshSignal","type","pairKey","key","prefix","signal","getRefreshBoundarySignal","params","enabled","currentScreenKey","sourcePairKey","destinationPairKey","ancestorDestinationPairKey","nextScreenKey","linkId","group","shouldRefresh","closing","entering","animating","progress","linkState","canRefreshPreCloseDestination","canRefreshSettledDestination","refreshDestinationPairKey","undefined","join","activeId","groups","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/utils/refresh-signals.ts"],"mappings":";;;;;;AAMA,MAAMA,oBAAoB,GAAG,SAAS;AACtC,MAAMC,yBAAyB,GAAG,cAAc;AAMhD,MAAMC,kBAAkB,GAAGA,CAC1BC,IAA2B,EAC3BC,OAAsB,EACtBC,GAAW,KACgB;EAC3B,SAAS;;EACT,MAAMC,MAAM,GACXH,IAAI,KAAK,QAAQ,GAAGH,oBAAoB,GAAGC,yBAAyB;EACrE,OAAO;IACNE,IAAI;IACJC,OAAO;IACPG,MAAM,EAAE,GAAGD,MAAM,GAAGF,OAAO,IAAIC,GAAG;EACnC,CAAC;AACF,CAAC;AAEM,MAAMG,wBAAwB,GAAIC,MAexC,IAAmC;EACnC,SAAS;;EACT,MAAM;IACLC,OAAO;IACPC,gBAAgB;IAChBC,aAAa;IACbC,kBAAkB;IAClBC,0BAA0B;IAC1BC,aAAa;IACbC,MAAM;IACNC,KAAK;IACLC,aAAa;IACbC,OAAO;IACPC,QAAQ;IACRC,SAAS;IACTC,QAAQ;IACRC;EACD,CAAC,GAAGd,MAAM;EAEV,IAAI,CAACC,OAAO,EAAE,OAAO,IAAI;EAEzB,MAAMc,6BAA6B,GAClCN,aAAa,IAAIC,OAAO,IAAI,CAACC,QAAQ,IAAI,CAACC,SAAS,IAAIC,QAAQ,IAAI,CAAC;EAErE,MAAMG,4BAA4B,GAAGP,aAAa,IAAI,CAACC,OAAO,IAAI,CAACC,QAAQ;;EAE3E;EACA;EACA;EACA,IAAI,CAACI,6BAA6B,IAAI,CAACC,4BAA4B,EAAE;IACpE,OAAO,IAAI;EACZ;;EAEA;EACA;EACA;EACA,IAAI,CAACR,KAAK,EAAE;IACX,MAAMS,yBAAyB,GAC9Bb,kBAAkB,KACjBE,aAAa,GAAGY,SAAS,GAAGb,0BAA0B,CAAC;IAEzD,IAAI,CAACY,yBAAyB,EAAE;MAC/B,OAAO,IAAI;IACZ;IAEA,OAAOxB,kBAAkB,CACxB,aAAa,EACbwB,yBAAyB,EACzB,CAACf,gBAAgB,EAAEQ,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC,CAACS,IAAI,CAAC,GAAG,CAC7D,CAAC;EACF;;EAEA;EACA;EACA,IAAIhB,aAAa,EAAE;IAClB,MAAMiB,QAAQ,GAAGN,SAAS,GAAGX,aAAa,CAAC,EAAEkB,MAAM,GAAGb,KAAK,CAAC,EAAEY,QAAQ;IAEtE,IAAIA,QAAQ,KAAKb,MAAM,EAAE;MACxB,OAAO,IAAI;IACZ;IAEA,OAAOd,kBAAkB,CACxB,QAAQ,EACRU,aAAa,EACb,CAACK,KAAK,EAAED,MAAM,EAAEG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC,CAACS,IAAI,CAAC,GAAG,CAC1D,CAAC;EACF;EAEA,MAAMF,yBAAyB,GAC9Bb,kBAAkB,KACjBE,aAAa,GAAGY,SAAS,GAAGb,0BAA0B,CAAC;EAEzD,IAAI,CAACY,yBAAyB,EAAE,OAAO,IAAI;;EAE3C;EACA;EACA,MAAMG,QAAQ,GACbN,SAAS,GAAGG,yBAAyB,CAAC,EAAEI,MAAM,GAAGb,KAAK,CAAC,EAAEY,QAAQ;;EAElE;EACA;EACA,IAAIA,QAAQ,KAAKb,MAAM,EAAE;IACxB,OAAO,IAAI;EACZ;EAEA,OAAOd,kBAAkB,CACxB,aAAa,EACbwB,yBAAyB,EACzB,CAACT,KAAK,EAAED,MAAM,EAAEG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC,CAACS,IAAI,CAAC,GAAG,CAC1D,CAAC;AACF,CAAC;AAACG,OAAA,CAAAvB,wBAAA,GAAAA,wBAAA","ignoreList":[]}
|
|
@@ -13,20 +13,15 @@ const getInitialSourceCaptureSignal = params => {
|
|
|
13
13
|
sourcePairKey,
|
|
14
14
|
linkId,
|
|
15
15
|
group,
|
|
16
|
-
shouldAutoMeasure,
|
|
17
16
|
linkState
|
|
18
17
|
} = params;
|
|
19
18
|
if (!enabled || !sourcePairKey) {
|
|
20
19
|
return null;
|
|
21
20
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
if (!
|
|
26
|
-
return null;
|
|
27
|
-
}
|
|
28
|
-
const link = linkState?.[sourcePairKey]?.links?.[linkId];
|
|
29
|
-
if (!link?.destination || link.source) {
|
|
21
|
+
const pair = linkState?.[sourcePairKey];
|
|
22
|
+
const link = pair?.links?.[linkId];
|
|
23
|
+
const hasSourceRequest = pair?.sourceRequests?.[linkId];
|
|
24
|
+
if (!link?.destination && !hasSourceRequest || link?.source) {
|
|
30
25
|
return null;
|
|
31
26
|
}
|
|
32
27
|
if (group) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SOURCE_SIGNAL_PREFIX","getInitialSourceCaptureSignal","params","enabled","sourcePairKey","linkId","group","
|
|
1
|
+
{"version":3,"names":["SOURCE_SIGNAL_PREFIX","getInitialSourceCaptureSignal","params","enabled","sourcePairKey","linkId","group","linkState","pair","link","links","hasSourceRequest","sourceRequests","destination","source","activeId","groups","signalParts","pairKey","signal","join","exports"],"sourceRoot":"../../../../../../src","sources":["shared/components/boundary/utils/source-signals.ts"],"mappings":";;;;;;AAKA,MAAMA,oBAAoB,GAAG,SAAS;AAO/B,MAAMC,6BAA6B,GAAIC,MAM7C,IAAiC;EACjC,SAAS;;EACT,MAAM;IAAEC,OAAO;IAAEC,aAAa;IAAEC,MAAM;IAAEC,KAAK;IAAEC;EAAU,CAAC,GAAGL,MAAM;EAEnE,IAAI,CAACC,OAAO,IAAI,CAACC,aAAa,EAAE;IAC/B,OAAO,IAAI;EACZ;EAEA,MAAMI,IAAI,GAAGD,SAAS,GAAGH,aAAa,CAAC;EACvC,MAAMK,IAAI,GAAGD,IAAI,EAAEE,KAAK,GAAGL,MAAM,CAAC;EAClC,MAAMM,gBAAgB,GAAGH,IAAI,EAAEI,cAAc,GAAGP,MAAM,CAAC;EAEvD,IAAK,CAACI,IAAI,EAAEI,WAAW,IAAI,CAACF,gBAAgB,IAAKF,IAAI,EAAEK,MAAM,EAAE;IAC9D,OAAO,IAAI;EACZ;EAEA,IAAIR,KAAK,EAAE;IACV,MAAMS,QAAQ,GAAGR,SAAS,GAAGH,aAAa,CAAC,EAAEY,MAAM,GAAGV,KAAK,CAAC,EAAES,QAAQ;;IAEtE;IACA;IACA,IAAIA,QAAQ,IAAIA,QAAQ,KAAKV,MAAM,EAAE;MACpC,OAAO,IAAI;IACZ;EACD;EAEA,MAAMY,WAAW,GAAGX,KAAK,GAAG,CAACA,KAAK,EAAED,MAAM,CAAC,GAAG,CAACA,MAAM,CAAC;EAEtD,OAAO;IACNa,OAAO,EAAEd,aAAa;IACtBe,MAAM,EAAE,GAAGnB,oBAAoB,GAAGI,aAAa,IAAIa,WAAW,CAACG,IAAI,CAAC,GAAG,CAAC;EACzE,CAAC;AACF,CAAC;AAACC,OAAA,CAAApB,6BAAA,GAAAA,6BAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_constants","_createTransitionAwareComponent","_jsxRuntime","TransitionView","createTransitionAwareComponent","View","LazyMaskedView","default","_","MaskedView","children","style","userStyles","jsx","styles","root","maskElement","styleId","MASK_STYLE_ID","rootMask","CONTAINER_STYLE_ID","rootContainer","StyleSheet","create","flex","backgroundColor"],"sourceRoot":"../../../../src","sources":["shared/components/masked-view.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,+BAAA,GAAAF,OAAA;AAAqF,IAAAG,WAAA,GAAAH,OAAA;AAErF,MAAMI,cAAc,GAAG,IAAAC,8DAA8B,EAACC,iBAAI,CAAC;AAE3D,IAAIC,cAAc,GAAGD,iBAAI;AAEzB,IAAI;EACHC,cAAc,GAAGP,OAAO,CAAC,uCAAuC,CAAC,CAACQ,OAAO;AAC1E,CAAC,CAAC,OAAOC,CAAC,EAAE;EACX;AAAA;
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_constants","_createTransitionAwareComponent","_jsxRuntime","TransitionView","createTransitionAwareComponent","View","LazyMaskedView","default","_","MaskedView","children","style","userStyles","jsx","styles","root","maskElement","styleId","MASK_STYLE_ID","rootMask","CONTAINER_STYLE_ID","rootContainer","StyleSheet","create","flex","backgroundColor"],"sourceRoot":"../../../../src","sources":["shared/components/masked-view.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,+BAAA,GAAAF,OAAA;AAAqF,IAAAG,WAAA,GAAAH,OAAA;AAErF,MAAMI,cAAc,GAAG,IAAAC,8DAA8B,EAACC,iBAAI,CAAC;AAE3D,IAAIC,cAAc,GAAGD,iBAAI;AAEzB,IAAI;EACHC,cAAc,GAAGP,OAAO,CAAC,uCAAuC,CAAC,CAACQ,OAAO;AAC1E,CAAC,CAAC,OAAOC,CAAC,EAAE;EACX;AAAA;;AAGD;AACA;AACA;AACA;AACe,SAASC,UAAUA,CAAC;EAClCC,QAAQ;EACRC,KAAK,EAAEC,UAAU,GAAG,CAAC;AAItB,CAAC,EAAE;EACF,IAAIN,cAAc,KAAKD,iBAAI,EAAE;IAC5B,OAAOK,QAAQ;EAChB;EAEA,oBACC,IAAAR,WAAA,CAAAW,GAAA,EAACP,cAAc;IACdK,KAAK,EAAEG,MAAM,CAACC;IACd;IAAA;IACAC,WAAW,eACV,IAAAd,WAAA,CAAAW,GAAA,EAACV,cAAc;MAACc,OAAO,EAAEC,wBAAc;MAACP,KAAK,EAAEG,MAAM,CAACK;IAAS,CAAE,CACjE;IAAAT,QAAA,eAED,IAAAR,WAAA,CAAAW,GAAA,EAACV,cAAc;MACdc,OAAO,EAAEG,6BAAmB;MAC5BT,KAAK,EAAE,CAACG,MAAM,CAACO,aAAa,EAAET,UAAU,CAAE;MAAAF,QAAA,EAEzCA;IAAQ,CACM;EAAC,CACF,CAAC;AAEnB;AAEA,MAAMI,MAAM,GAAGQ,uBAAU,CAACC,MAAM,CAAC;EAChCR,IAAI,EAAE;IACLS,IAAI,EAAE;EACP,CAAC;EACDL,QAAQ,EAAE;IACTM,eAAe,EAAE;EAClB,CAAC;EACDJ,aAAa,EAAE;IACdG,IAAI,EAAE;EACP;AACD,CAAC,CAAC","ignoreList":[]}
|