@makeswift/runtime 0.26.4 → 0.26.5
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/dist/cjs/api/client.js +252 -0
- package/dist/cjs/api/client.js.map +1 -0
- package/dist/cjs/api-handler/handlers/manifest.js +1 -1
- package/dist/cjs/api-handler/handlers/webhook/diff-projection.js +62 -0
- package/dist/cjs/api-handler/handlers/webhook/diff-projection.js.map +1 -0
- package/dist/cjs/builder/serialization.js +78 -0
- package/dist/cjs/builder/serialization.js.map +1 -0
- package/dist/cjs/client/index.js +3 -3
- package/dist/cjs/controls/serialization/base/index.js +78 -0
- package/dist/cjs/controls/serialization/base/index.js.map +1 -0
- package/dist/cjs/controls/serialization/base/visitor.js +59 -0
- package/dist/cjs/controls/serialization/base/visitor.js.map +1 -0
- package/dist/cjs/controls/serialization/index.js +55 -0
- package/dist/cjs/controls/serialization/index.js.map +1 -0
- package/dist/cjs/controls/serialization/message-port/function-serialization.js +79 -0
- package/dist/cjs/controls/serialization/message-port/function-serialization.js.map +1 -0
- package/dist/cjs/controls/serialization/message-port/index.js +25 -0
- package/dist/cjs/controls/serialization/message-port/index.js.map +1 -0
- package/dist/cjs/controls/serialization/message-port/visitor.js +48 -0
- package/dist/cjs/controls/serialization/message-port/visitor.js.map +1 -0
- package/dist/cjs/next/api-handler/config/pages-router.js +1 -1
- package/dist/cjs/next/api-handler/config/pages-router.js.map +1 -1
- package/dist/cjs/next/fetch.js +30 -0
- package/dist/cjs/next/fetch.js.map +1 -0
- package/dist/cjs/next/runtime.js +35 -0
- package/dist/cjs/next/runtime.js.map +1 -0
- package/dist/cjs/next/testing/react-runtime.js +29 -0
- package/dist/cjs/next/testing/react-runtime.js.map +1 -0
- package/dist/cjs/prop-controllers/serialization.js +355 -0
- package/dist/cjs/prop-controllers/serialization.js.map +1 -0
- package/dist/cjs/runtimes/react/components/GoogleFontLink.js +55 -0
- package/dist/cjs/runtimes/react/components/GoogleFontLink.js.map +1 -0
- package/dist/cjs/runtimes/react/components/MakeswiftFonts.js +33 -0
- package/dist/cjs/runtimes/react/components/MakeswiftFonts.js.map +1 -0
- package/dist/cjs/runtimes/react/hooks/use-async-effect.js +55 -0
- package/dist/cjs/runtimes/react/hooks/use-async-effect.js.map +1 -0
- package/dist/cjs/runtimes/react/hooks/use-current-breakpoint.js +39 -0
- package/dist/cjs/runtimes/react/hooks/use-current-breakpoint.js.map +1 -0
- package/dist/cjs/runtimes/react/hooks/use-is-read-only.js +33 -0
- package/dist/cjs/runtimes/react/hooks/use-is-read-only.js.map +1 -0
- package/dist/cjs/runtimes/react/lib/resolved-style-to-css.js +59 -0
- package/dist/cjs/runtimes/react/lib/resolved-style-to-css.js.map +1 -0
- package/dist/cjs/runtimes/react/testing/react-runtime.js +33 -0
- package/dist/cjs/runtimes/react/testing/react-runtime.js.map +1 -0
- package/dist/cjs/runtimes/react/utils/google-fonts-url.js +49 -0
- package/dist/cjs/runtimes/react/utils/google-fonts-url.js.map +1 -0
- package/dist/cjs/state/actions/internal/index.js +34 -0
- package/dist/cjs/state/actions/internal/index.js.map +1 -0
- package/dist/cjs/state/actions/internal/read-only-actions.js +195 -0
- package/dist/cjs/state/actions/internal/read-only-actions.js.map +1 -0
- package/dist/cjs/state/actions/internal/read-write-actions.js +76 -0
- package/dist/cjs/state/actions/internal/read-write-actions.js.map +1 -0
- package/dist/cjs/state/builder-api/api.js +17 -0
- package/dist/cjs/state/builder-api/api.js.map +1 -0
- package/dist/cjs/state/builder-api/navigation-listener.js +110 -0
- package/dist/cjs/state/builder-api/navigation-listener.js.map +1 -0
- package/dist/cjs/state/middleware/makeswift-api-client-sync.js +37 -0
- package/dist/cjs/state/middleware/makeswift-api-client-sync.js.map +1 -0
- package/dist/cjs/state/middleware/read-only-element-tree.js +52 -0
- package/dist/cjs/state/middleware/read-only-element-tree.js.map +1 -0
- package/dist/cjs/state/middleware/read-write/builder-api/element-size.js +40 -0
- package/dist/cjs/state/middleware/read-write/builder-api/element-size.js.map +1 -0
- package/dist/cjs/state/middleware/read-write/builder-api/index.js +85 -0
- package/dist/cjs/state/middleware/read-write/builder-api/index.js.map +1 -0
- package/dist/cjs/state/middleware/read-write/builder-api/initialize-connection.js +281 -0
- package/dist/cjs/state/middleware/read-write/builder-api/initialize-connection.js.map +1 -0
- package/dist/cjs/state/middleware/read-write/index.js +40 -0
- package/dist/cjs/state/middleware/read-write/index.js.map +1 -0
- package/dist/cjs/state/middleware/read-write/measure-box-models.js +71 -0
- package/dist/cjs/state/middleware/read-write/measure-box-models.js.map +1 -0
- package/dist/cjs/state/middleware/read-write/prop-controller-handles.js +114 -0
- package/dist/cjs/state/middleware/read-write/prop-controller-handles.js.map +1 -0
- package/dist/cjs/state/middleware/read-write/update-element-tree.js +59 -0
- package/dist/cjs/state/middleware/read-write/update-element-tree.js.map +1 -0
- package/dist/cjs/state/mixins/breakpoint-watch.js +72 -0
- package/dist/cjs/state/mixins/breakpoint-watch.js.map +1 -0
- package/dist/cjs/state/modules/is-read-only.js +50 -0
- package/dist/cjs/state/modules/is-read-only.js.map +1 -0
- package/dist/cjs/state/modules/locale.js +50 -0
- package/dist/cjs/state/modules/locale.js.map +1 -0
- package/dist/cjs/state/modules/read-write/box-models.js +144 -0
- package/dist/cjs/state/modules/read-write/box-models.js.map +1 -0
- package/dist/cjs/state/modules/read-write/element-imperative-handles.js +61 -0
- package/dist/cjs/state/modules/read-write/element-imperative-handles.js.map +1 -0
- package/dist/cjs/state/modules/read-write/pointer.js +48 -0
- package/dist/cjs/state/modules/read-write/pointer.js.map +1 -0
- package/dist/cjs/state/modules/read-write/read-write-documents.js +98 -0
- package/dist/cjs/state/modules/read-write/read-write-documents.js.map +1 -0
- package/dist/cjs/state/modules/site-version.js +47 -0
- package/dist/cjs/state/modules/site-version.js.map +1 -0
- package/dist/cjs/state/ops/copy-element-tree.js +67 -0
- package/dist/cjs/state/ops/copy-element-tree.js.map +1 -0
- package/dist/cjs/state/ops/merge-element.js +73 -0
- package/dist/cjs/state/ops/merge-element.js.map +1 -0
- package/dist/cjs/state/read-only-state.js +231 -0
- package/dist/cjs/state/read-only-state.js.map +1 -0
- package/dist/cjs/state/read-write-state.js +128 -0
- package/dist/cjs/state/read-write-state.js.map +1 -0
- package/dist/cjs/state/store.js +219 -0
- package/dist/cjs/state/store.js.map +1 -0
- package/dist/cjs/state/unified-state.js +17 -0
- package/dist/cjs/state/unified-state.js.map +1 -0
- package/dist/cjs/translations/index.js +32 -0
- package/dist/cjs/translations/index.js.map +1 -0
- package/dist/cjs/utils/deferred.js +39 -0
- package/dist/cjs/utils/deferred.js.map +1 -0
- package/dist/cjs/utils/ref-counted-map.js +120 -0
- package/dist/cjs/utils/ref-counted-map.js.map +1 -0
- package/dist/esm/api/client.js +219 -0
- package/dist/esm/api/client.js.map +1 -0
- package/dist/esm/api-handler/handlers/manifest.js +1 -1
- package/dist/esm/api-handler/handlers/webhook/diff-projection.js +38 -0
- package/dist/esm/api-handler/handlers/webhook/diff-projection.js.map +1 -0
- package/dist/esm/builder/serialization.js +59 -0
- package/dist/esm/builder/serialization.js.map +1 -0
- package/dist/esm/client/index.js +3 -3
- package/dist/esm/controls/serialization/base/index.js +78 -0
- package/dist/esm/controls/serialization/base/index.js.map +1 -0
- package/dist/esm/controls/serialization/base/visitor.js +39 -0
- package/dist/esm/controls/serialization/base/visitor.js.map +1 -0
- package/dist/esm/controls/serialization/index.js +30 -0
- package/dist/esm/controls/serialization/index.js.map +1 -0
- package/dist/esm/controls/serialization/message-port/function-serialization.js +52 -0
- package/dist/esm/controls/serialization/message-port/function-serialization.js.map +1 -0
- package/dist/esm/controls/serialization/message-port/index.js +3 -0
- package/dist/esm/controls/serialization/message-port/index.js.map +1 -0
- package/dist/esm/controls/serialization/message-port/visitor.js +24 -0
- package/dist/esm/controls/serialization/message-port/visitor.js.map +1 -0
- package/dist/esm/next/api-handler/config/pages-router.js +1 -1
- package/dist/esm/next/api-handler/config/pages-router.js.map +1 -1
- package/dist/esm/next/fetch.js +6 -0
- package/dist/esm/next/fetch.js.map +1 -0
- package/dist/esm/next/runtime.js +11 -0
- package/dist/esm/next/runtime.js.map +1 -0
- package/dist/esm/next/testing/react-runtime.js +5 -0
- package/dist/esm/next/testing/react-runtime.js.map +1 -0
- package/dist/esm/prop-controllers/serialization.js +338 -0
- package/dist/esm/prop-controllers/serialization.js.map +1 -0
- package/dist/esm/runtimes/react/components/GoogleFontLink.js +35 -0
- package/dist/esm/runtimes/react/components/GoogleFontLink.js.map +1 -0
- package/dist/esm/runtimes/react/components/MakeswiftFonts.js +9 -0
- package/dist/esm/runtimes/react/components/MakeswiftFonts.js.map +1 -0
- package/dist/esm/runtimes/react/hooks/use-async-effect.js +31 -0
- package/dist/esm/runtimes/react/hooks/use-async-effect.js.map +1 -0
- package/dist/esm/runtimes/react/hooks/use-current-breakpoint.js +15 -0
- package/dist/esm/runtimes/react/hooks/use-current-breakpoint.js.map +1 -0
- package/dist/esm/runtimes/react/hooks/use-is-read-only.js +9 -0
- package/dist/esm/runtimes/react/hooks/use-is-read-only.js.map +1 -0
- package/dist/esm/runtimes/react/lib/resolved-style-to-css.js +38 -0
- package/dist/esm/runtimes/react/lib/resolved-style-to-css.js.map +1 -0
- package/dist/esm/runtimes/react/testing/react-runtime.js +9 -0
- package/dist/esm/runtimes/react/testing/react-runtime.js.map +1 -0
- package/dist/esm/runtimes/react/utils/google-fonts-url.js +23 -0
- package/dist/esm/runtimes/react/utils/google-fonts-url.js.map +1 -0
- package/dist/esm/state/actions/internal/index.js +10 -0
- package/dist/esm/state/actions/internal/index.js.map +1 -0
- package/dist/esm/state/actions/internal/read-only-actions.js +153 -0
- package/dist/esm/state/actions/internal/read-only-actions.js.map +1 -0
- package/dist/esm/state/actions/internal/read-write-actions.js +46 -0
- package/dist/esm/state/actions/internal/read-write-actions.js.map +1 -0
- package/dist/esm/state/builder-api/api.js +1 -0
- package/dist/esm/state/builder-api/api.js.map +1 -0
- package/dist/esm/state/builder-api/navigation-listener.js +86 -0
- package/dist/esm/state/builder-api/navigation-listener.js.map +1 -0
- package/dist/esm/state/middleware/makeswift-api-client-sync.js +13 -0
- package/dist/esm/state/middleware/makeswift-api-client-sync.js.map +1 -0
- package/dist/esm/state/middleware/read-only-element-tree.js +28 -0
- package/dist/esm/state/middleware/read-only-element-tree.js.map +1 -0
- package/dist/esm/state/middleware/read-write/builder-api/element-size.js +16 -0
- package/dist/esm/state/middleware/read-write/builder-api/element-size.js.map +1 -0
- package/dist/esm/state/middleware/read-write/builder-api/index.js +61 -0
- package/dist/esm/state/middleware/read-write/builder-api/index.js.map +1 -0
- package/dist/esm/state/middleware/read-write/builder-api/initialize-connection.js +254 -0
- package/dist/esm/state/middleware/read-write/builder-api/initialize-connection.js.map +1 -0
- package/dist/esm/state/middleware/read-write/index.js +16 -0
- package/dist/esm/state/middleware/read-write/index.js.map +1 -0
- package/dist/esm/state/middleware/read-write/measure-box-models.js +37 -0
- package/dist/esm/state/middleware/read-write/measure-box-models.js.map +1 -0
- package/dist/esm/state/middleware/read-write/prop-controller-handles.js +80 -0
- package/dist/esm/state/middleware/read-write/prop-controller-handles.js.map +1 -0
- package/dist/esm/state/middleware/read-write/update-element-tree.js +35 -0
- package/dist/esm/state/middleware/read-write/update-element-tree.js.map +1 -0
- package/dist/esm/state/mixins/breakpoint-watch.js +48 -0
- package/dist/esm/state/mixins/breakpoint-watch.js.map +1 -0
- package/dist/esm/state/modules/is-read-only.js +24 -0
- package/dist/esm/state/modules/is-read-only.js.map +1 -0
- package/dist/esm/state/modules/locale.js +24 -0
- package/dist/esm/state/modules/locale.js.map +1 -0
- package/dist/esm/state/modules/read-write/box-models.js +114 -0
- package/dist/esm/state/modules/read-write/box-models.js.map +1 -0
- package/dist/esm/state/modules/read-write/element-imperative-handles.js +36 -0
- package/dist/esm/state/modules/read-write/element-imperative-handles.js.map +1 -0
- package/dist/esm/state/modules/read-write/pointer.js +23 -0
- package/dist/esm/state/modules/read-write/pointer.js.map +1 -0
- package/dist/esm/state/modules/read-write/read-write-documents.js +60 -0
- package/dist/esm/state/modules/read-write/read-write-documents.js.map +1 -0
- package/dist/esm/state/modules/site-version.js +21 -0
- package/dist/esm/state/modules/site-version.js.map +1 -0
- package/dist/esm/state/ops/copy-element-tree.js +37 -0
- package/dist/esm/state/ops/copy-element-tree.js.map +1 -0
- package/dist/esm/state/ops/merge-element.js +39 -0
- package/dist/esm/state/ops/merge-element.js.map +1 -0
- package/dist/esm/state/read-only-state.js +176 -0
- package/dist/esm/state/read-only-state.js.map +1 -0
- package/dist/esm/state/read-write-state.js +82 -0
- package/dist/esm/state/read-write-state.js.map +1 -0
- package/dist/esm/state/store.js +188 -0
- package/dist/esm/state/store.js.map +1 -0
- package/dist/esm/state/unified-state.js +1 -0
- package/dist/esm/state/unified-state.js.map +1 -0
- package/dist/esm/translations/index.js +7 -0
- package/dist/esm/translations/index.js.map +1 -0
- package/dist/esm/utils/deferred.js +15 -0
- package/dist/esm/utils/deferred.js.map +1 -0
- package/dist/esm/utils/ref-counted-map.js +96 -0
- package/dist/esm/utils/ref-counted-map.js.map +1 -0
- package/dist/types/api/client.d.ts +81 -0
- package/dist/types/api/client.d.ts.map +1 -0
- package/dist/types/api-handler/handlers/webhook/diff-projection.d.ts +201 -0
- package/dist/types/api-handler/handlers/webhook/diff-projection.d.ts.map +1 -0
- package/dist/types/builder/serialization.d.ts +23 -0
- package/dist/types/builder/serialization.d.ts.map +1 -0
- package/dist/types/builder/serialization.test.d.ts +2 -0
- package/dist/types/builder/serialization.test.d.ts.map +1 -0
- package/dist/types/client/tests/client.get-component-snapshots.test.d.ts +2 -0
- package/dist/types/client/tests/client.get-component-snapshots.test.d.ts.map +1 -0
- package/dist/types/client/tests/client.get-fonts.test.d.ts +2 -0
- package/dist/types/client/tests/client.get-fonts.test.d.ts.map +1 -0
- package/dist/types/client/tests/client.introspect-many.test.d.ts +2 -0
- package/dist/types/client/tests/client.introspect-many.test.d.ts.map +1 -0
- package/dist/types/components/hooks/__tests__/useMediaQuery.test.d.ts +3 -0
- package/dist/types/components/hooks/__tests__/useMediaQuery.test.d.ts.map +1 -0
- package/dist/types/controls/serialization/base/index.d.ts +10 -0
- package/dist/types/controls/serialization/base/index.d.ts.map +1 -0
- package/dist/types/controls/serialization/base/visitor.d.ts +7 -0
- package/dist/types/controls/serialization/base/visitor.d.ts.map +1 -0
- package/dist/types/controls/serialization/index.d.ts +10 -0
- package/dist/types/controls/serialization/index.d.ts.map +1 -0
- package/dist/types/controls/serialization/message-port/function-serialization.d.ts +16 -0
- package/dist/types/controls/serialization/message-port/function-serialization.d.ts.map +1 -0
- package/dist/types/controls/serialization/message-port/function-serialization.test.d.ts +2 -0
- package/dist/types/controls/serialization/message-port/function-serialization.test.d.ts.map +1 -0
- package/dist/types/controls/serialization/message-port/index.d.ts +3 -0
- package/dist/types/controls/serialization/message-port/index.d.ts.map +1 -0
- package/dist/types/controls/serialization/message-port/visitor.d.ts +7 -0
- package/dist/types/controls/serialization/message-port/visitor.d.ts.map +1 -0
- package/dist/types/next/api-handler/config/pages-router.test.d.ts +2 -0
- package/dist/types/next/api-handler/config/pages-router.test.d.ts.map +1 -0
- package/dist/types/next/components/tests/controls/code-control.test.d.ts +2 -0
- package/dist/types/next/components/tests/controls/code-control.test.d.ts.map +1 -0
- package/dist/types/next/fetch.d.ts +3 -0
- package/dist/types/next/fetch.d.ts.map +1 -0
- package/dist/types/next/runtime.d.ts +10 -0
- package/dist/types/next/runtime.d.ts.map +1 -0
- package/dist/types/next/testing/react-runtime.d.ts +2 -0
- package/dist/types/next/testing/react-runtime.d.ts.map +1 -0
- package/dist/types/prop-controllers/serialization.d.ts +228 -0
- package/dist/types/prop-controllers/serialization.d.ts.map +1 -0
- package/dist/types/runtimes/react/components/GoogleFontLink.d.ts +14 -0
- package/dist/types/runtimes/react/components/GoogleFontLink.d.ts.map +1 -0
- package/dist/types/runtimes/react/components/MakeswiftFonts.d.ts +7 -0
- package/dist/types/runtimes/react/components/MakeswiftFonts.d.ts.map +1 -0
- package/dist/types/runtimes/react/hooks/__tests__/use-async-effect.test.d.ts +2 -0
- package/dist/types/runtimes/react/hooks/__tests__/use-async-effect.test.d.ts.map +1 -0
- package/dist/types/runtimes/react/hooks/use-async-effect.d.ts +3 -0
- package/dist/types/runtimes/react/hooks/use-async-effect.d.ts.map +1 -0
- package/dist/types/runtimes/react/hooks/use-current-breakpoint.d.ts +3 -0
- package/dist/types/runtimes/react/hooks/use-current-breakpoint.d.ts.map +1 -0
- package/dist/types/runtimes/react/hooks/use-is-read-only.d.ts +2 -0
- package/dist/types/runtimes/react/hooks/use-is-read-only.d.ts.map +1 -0
- package/dist/types/runtimes/react/lib/resolved-style-to-css.d.ts +4 -0
- package/dist/types/runtimes/react/lib/resolved-style-to-css.d.ts.map +1 -0
- package/dist/types/runtimes/react/testing/react-runtime.d.ts +6 -0
- package/dist/types/runtimes/react/testing/react-runtime.d.ts.map +1 -0
- package/dist/types/runtimes/react/utils/google-fonts-url.d.ts +6 -0
- package/dist/types/runtimes/react/utils/google-fonts-url.d.ts.map +1 -0
- package/dist/types/state/__tests__/fixtures/serialized-descriptors-from-builder.d.ts +5 -0
- package/dist/types/state/__tests__/fixtures/serialized-descriptors-from-builder.d.ts.map +1 -0
- package/dist/types/state/__tests__/fixtures/translatable-content-sample.d.ts +3 -0
- package/dist/types/state/__tests__/fixtures/translatable-content-sample.d.ts.map +1 -0
- package/dist/types/state/__tests__/get-translatable-content.test.d.ts +2 -0
- package/dist/types/state/__tests__/get-translatable-content.test.d.ts.map +1 -0
- package/dist/types/state/__tests__/merge-element.test.d.ts +2 -0
- package/dist/types/state/__tests__/merge-element.test.d.ts.map +1 -0
- package/dist/types/state/__tests__/store.read-write-state.test.d.ts +2 -0
- package/dist/types/state/__tests__/store.read-write-state.test.d.ts.map +1 -0
- package/dist/types/state/__tests__/test-store.d.ts +31 -0
- package/dist/types/state/__tests__/test-store.d.ts.map +1 -0
- package/dist/types/state/actions/internal/index.d.ts +29 -0
- package/dist/types/state/actions/internal/index.d.ts.map +1 -0
- package/dist/types/state/actions/internal/read-only-actions.d.ts +171 -0
- package/dist/types/state/actions/internal/read-only-actions.d.ts.map +1 -0
- package/dist/types/state/actions/internal/read-write-actions.d.ts +53 -0
- package/dist/types/state/actions/internal/read-write-actions.d.ts.map +1 -0
- package/dist/types/state/builder-api/api.d.ts +9 -0
- package/dist/types/state/builder-api/api.d.ts.map +1 -0
- package/dist/types/state/builder-api/navigation-listener.d.ts +3 -0
- package/dist/types/state/builder-api/navigation-listener.d.ts.map +1 -0
- package/dist/types/state/middleware/makeswift-api-client-sync.d.ts +5 -0
- package/dist/types/state/middleware/makeswift-api-client-sync.d.ts.map +1 -0
- package/dist/types/state/middleware/read-only-element-tree.d.ts +4 -0
- package/dist/types/state/middleware/read-only-element-tree.d.ts.map +1 -0
- package/dist/types/state/middleware/read-write/builder-api/element-size.d.ts +12 -0
- package/dist/types/state/middleware/read-write/builder-api/element-size.d.ts.map +1 -0
- package/dist/types/state/middleware/read-write/builder-api/index.d.ts +5 -0
- package/dist/types/state/middleware/read-write/builder-api/index.d.ts.map +1 -0
- package/dist/types/state/middleware/read-write/builder-api/initialize-connection.d.ts +6 -0
- package/dist/types/state/middleware/read-write/builder-api/initialize-connection.d.ts.map +1 -0
- package/dist/types/state/middleware/read-write/index.d.ts +5 -0
- package/dist/types/state/middleware/read-write/index.d.ts.map +1 -0
- package/dist/types/state/middleware/read-write/measure-box-models.d.ts +4 -0
- package/dist/types/state/middleware/read-write/measure-box-models.d.ts.map +1 -0
- package/dist/types/state/middleware/read-write/prop-controller-handles.d.ts +4 -0
- package/dist/types/state/middleware/read-write/prop-controller-handles.d.ts.map +1 -0
- package/dist/types/state/middleware/read-write/update-element-tree.d.ts +4 -0
- package/dist/types/state/middleware/read-write/update-element-tree.d.ts.map +1 -0
- package/dist/types/state/mixins/breakpoint-watch.d.ts +11 -0
- package/dist/types/state/mixins/breakpoint-watch.d.ts.map +1 -0
- package/dist/types/state/modules/is-read-only.d.ts +6 -0
- package/dist/types/state/modules/is-read-only.d.ts.map +1 -0
- package/dist/types/state/modules/locale.d.ts +6 -0
- package/dist/types/state/modules/locale.d.ts.map +1 -0
- package/dist/types/state/modules/read-write/box-models.d.ts +26 -0
- package/dist/types/state/modules/read-write/box-models.d.ts.map +1 -0
- package/dist/types/state/modules/read-write/element-imperative-handles.d.ts +6 -0
- package/dist/types/state/modules/read-write/element-imperative-handles.d.ts.map +1 -0
- package/dist/types/state/modules/read-write/pointer.d.ts +11 -0
- package/dist/types/state/modules/read-write/pointer.d.ts.map +1 -0
- package/dist/types/state/modules/read-write/read-write-documents.d.ts +14 -0
- package/dist/types/state/modules/read-write/read-write-documents.d.ts.map +1 -0
- package/dist/types/state/modules/site-version.d.ts +7 -0
- package/dist/types/state/modules/site-version.d.ts.map +1 -0
- package/dist/types/state/ops/copy-element-tree.d.ts +37 -0
- package/dist/types/state/ops/copy-element-tree.d.ts.map +1 -0
- package/dist/types/state/ops/merge-element.d.ts +4 -0
- package/dist/types/state/ops/merge-element.d.ts.map +1 -0
- package/dist/types/state/read-only-state.d.ts +131 -0
- package/dist/types/state/read-only-state.d.ts.map +1 -0
- package/dist/types/state/read-write-state.d.ts +62 -0
- package/dist/types/state/read-write-state.d.ts.map +1 -0
- package/dist/types/state/store.d.ts +86 -0
- package/dist/types/state/store.d.ts.map +1 -0
- package/dist/types/state/unified-state.d.ts +9 -0
- package/dist/types/state/unified-state.d.ts.map +1 -0
- package/dist/types/translations/index.d.ts +6 -0
- package/dist/types/translations/index.d.ts.map +1 -0
- package/dist/types/utils/__tests__/ref-counted-map.test.d.ts +2 -0
- package/dist/types/utils/__tests__/ref-counted-map.test.d.ts.map +1 -0
- package/dist/types/utils/deferred.d.ts +7 -0
- package/dist/types/utils/deferred.d.ts.map +1 -0
- package/dist/types/utils/ref-counted-map.d.ts +32 -0
- package/dist/types/utils/ref-counted-map.d.ts.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var navigation_listener_exports = {};
|
|
20
|
+
__export(navigation_listener_exports, {
|
|
21
|
+
setupNavigationListener: () => setupNavigationListener
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(navigation_listener_exports);
|
|
24
|
+
const CLICK_NAVIGATION_THRESHOLD_MS = 100;
|
|
25
|
+
const CLICK_NAVIGATION_CHECK_INTERVAL_MS = 200;
|
|
26
|
+
const CLICK_NAVIGATION_MAX_CHECKS = 20;
|
|
27
|
+
function setupNavigationListener(callback) {
|
|
28
|
+
let previousLocation = null;
|
|
29
|
+
const handleNavigate = (event) => {
|
|
30
|
+
if (!event.navigationCompleted && event.url === previousLocation)
|
|
31
|
+
return;
|
|
32
|
+
callback(event);
|
|
33
|
+
previousLocation = event.url;
|
|
34
|
+
};
|
|
35
|
+
handleNavigate({ url: windowLocation(), navigationCompleted: "initial-page-load" });
|
|
36
|
+
if (typeof window === "undefined") {
|
|
37
|
+
return () => {
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
const unsubscribes = [];
|
|
41
|
+
if ("navigation" in window && window.navigation) {
|
|
42
|
+
const navigation = window.navigation;
|
|
43
|
+
const navigateHandler = ({ destination }) => handleNavigate({ url: destination.url });
|
|
44
|
+
const navigateSuccessHandler = () => {
|
|
45
|
+
handleNavigate({
|
|
46
|
+
url: navigation.currentEntry.url,
|
|
47
|
+
navigationCompleted: "client-side-navigation"
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
navigation.addEventListener("navigate", navigateHandler);
|
|
51
|
+
navigation.addEventListener("navigatesuccess", navigateSuccessHandler);
|
|
52
|
+
unsubscribes.push(() => navigation.removeEventListener("navigate", navigateHandler));
|
|
53
|
+
unsubscribes.push(
|
|
54
|
+
() => navigation.removeEventListener("navigatesuccess", navigateSuccessHandler)
|
|
55
|
+
);
|
|
56
|
+
return () => {
|
|
57
|
+
unsubscribes.forEach((u) => u());
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
let lastClickEvent = null;
|
|
61
|
+
const clickHandler = (e) => {
|
|
62
|
+
const a = e.composedPath?.()?.find((n) => n instanceof HTMLAnchorElement) ?? (e.target instanceof Element && e.target.closest?.("a"));
|
|
63
|
+
if (!a)
|
|
64
|
+
return;
|
|
65
|
+
lastClickEvent = { href: a.href, timestamp: Date.now() };
|
|
66
|
+
const pageUrlBeforeClick = windowLocation();
|
|
67
|
+
let navigationCheckCounter = 0;
|
|
68
|
+
const checkIfNavigationOccurred = () => {
|
|
69
|
+
const url = windowLocation();
|
|
70
|
+
if (url !== pageUrlBeforeClick) {
|
|
71
|
+
handleNavigate({ url, polyfilled: true });
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
if (++navigationCheckCounter < CLICK_NAVIGATION_MAX_CHECKS) {
|
|
75
|
+
window.setTimeout(checkIfNavigationOccurred, CLICK_NAVIGATION_CHECK_INTERVAL_MS);
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
window.setTimeout(checkIfNavigationOccurred, CLICK_NAVIGATION_CHECK_INTERVAL_MS);
|
|
79
|
+
};
|
|
80
|
+
window.document.addEventListener(
|
|
81
|
+
"click",
|
|
82
|
+
clickHandler,
|
|
83
|
+
{ capture: true }
|
|
84
|
+
// run before bubbling to fortify against `stopPropagation()` calls
|
|
85
|
+
);
|
|
86
|
+
unsubscribes.push(
|
|
87
|
+
() => window.document.removeEventListener("click", clickHandler, { capture: true })
|
|
88
|
+
);
|
|
89
|
+
const unloadHandler = () => {
|
|
90
|
+
if (!lastClickEvent)
|
|
91
|
+
return;
|
|
92
|
+
const msSinceLastClick = Date.now() - lastClickEvent.timestamp;
|
|
93
|
+
handleNavigate({
|
|
94
|
+
url: msSinceLastClick < CLICK_NAVIGATION_THRESHOLD_MS ? lastClickEvent.href ?? null : null,
|
|
95
|
+
polyfilled: true
|
|
96
|
+
});
|
|
97
|
+
lastClickEvent = null;
|
|
98
|
+
};
|
|
99
|
+
window.addEventListener("beforeunload", unloadHandler);
|
|
100
|
+
unsubscribes.push(() => window.removeEventListener("beforeunload", unloadHandler));
|
|
101
|
+
return () => {
|
|
102
|
+
unsubscribes.forEach((u) => u());
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
const windowLocation = () => typeof window !== "undefined" ? window.location.href : null;
|
|
106
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
107
|
+
0 && (module.exports = {
|
|
108
|
+
setupNavigationListener
|
|
109
|
+
});
|
|
110
|
+
//# sourceMappingURL=navigation-listener.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/state/builder-api/navigation-listener.ts"],"sourcesContent":["import { type HostNavigationEvent } from './api'\n\ntype ClickEvent = {\n href: string\n timestamp: number\n}\n\nconst CLICK_NAVIGATION_THRESHOLD_MS = 100\nconst CLICK_NAVIGATION_CHECK_INTERVAL_MS = 200\nconst CLICK_NAVIGATION_MAX_CHECKS = 20\n\nexport function setupNavigationListener(\n callback: (args: HostNavigationEvent) => void,\n): VoidFunction {\n let previousLocation: string | null = null\n\n const handleNavigate = (event: HostNavigationEvent) => {\n if (!event.navigationCompleted && event.url === previousLocation) return\n\n callback(event)\n previousLocation = event.url\n }\n\n // trigger navigation callback on initial page load\n handleNavigate({ url: windowLocation(), navigationCompleted: 'initial-page-load' })\n\n if (typeof window === 'undefined') {\n return () => {}\n }\n\n const unsubscribes: (() => void)[] = []\n\n // check for availability of the Navigation API (baseline feature since January 2026),\n // see https://developer.mozilla.org/en-US/docs/Web/API/Navigation_API\n if ('navigation' in window && window.navigation) {\n const navigation = window.navigation\n\n const navigateHandler = ({ destination }: NavigateEvent) =>\n handleNavigate({ url: destination.url })\n\n const navigateSuccessHandler = () => {\n handleNavigate({\n url: navigation.currentEntry.url,\n navigationCompleted: 'client-side-navigation',\n })\n }\n\n // note that in order to capture destination URLs that might not be Makeswift-enabled,\n // we send a `SiteNavigationEvent` at the start of navigation, but do not track whether\n // the navigation was successful or not (possible future improvement)\n navigation.addEventListener('navigate', navigateHandler)\n navigation.addEventListener('navigatesuccess', navigateSuccessHandler)\n unsubscribes.push(() => navigation.removeEventListener('navigate', navigateHandler))\n unsubscribes.push(() =>\n navigation.removeEventListener('navigatesuccess', navigateSuccessHandler),\n )\n\n return () => {\n unsubscribes.forEach(u => u())\n }\n }\n\n // for browsers lacking Navigation API support, we manually track:\n // - link clicks to capture destination URLs\n // - page unload events to detect cross-page navigation\n //\n // this works well enough to keep this polyfill in place for now, but not nearly as\n // reliably as the Navigation API\n let lastClickEvent: ClickEvent | null = null\n\n const clickHandler = (e: MouseEvent) => {\n const a =\n e.composedPath?.()?.find(n => n instanceof HTMLAnchorElement) ??\n (e.target instanceof Element && e.target.closest?.('a'))\n\n if (!a) return\n\n lastClickEvent = { href: a.href, timestamp: Date.now() }\n\n const pageUrlBeforeClick = windowLocation()\n let navigationCheckCounter = 0\n\n // handle navigation between pages in the host; note that we intentionally are\n // not cancelling the timer on cleanup to ensure we report the navigation\n const checkIfNavigationOccurred = () => {\n const url = windowLocation()\n\n if (url !== pageUrlBeforeClick) {\n // the host navigated to a different page, report the new URL to the builder\n handleNavigate({ url, polyfilled: true })\n return\n }\n\n // we're still on the same page, recheck until the max number of checks is reached\n if (++navigationCheckCounter < CLICK_NAVIGATION_MAX_CHECKS) {\n window.setTimeout(checkIfNavigationOccurred, CLICK_NAVIGATION_CHECK_INTERVAL_MS)\n }\n }\n\n window.setTimeout(checkIfNavigationOccurred, CLICK_NAVIGATION_CHECK_INTERVAL_MS)\n }\n\n window.document.addEventListener(\n 'click',\n clickHandler,\n { capture: true }, // run before bubbling to fortify against `stopPropagation()` calls\n )\n\n unsubscribes.push(() =>\n window.document.removeEventListener('click', clickHandler, { capture: true }),\n )\n\n // handle external navigation\n const unloadHandler = () => {\n if (!lastClickEvent) return\n\n const msSinceLastClick = Date.now() - lastClickEvent.timestamp\n handleNavigate({\n url: msSinceLastClick < CLICK_NAVIGATION_THRESHOLD_MS ? (lastClickEvent.href ?? null) : null,\n polyfilled: true,\n })\n\n lastClickEvent = null\n }\n\n window.addEventListener('beforeunload', unloadHandler)\n unsubscribes.push(() => window.removeEventListener('beforeunload', unloadHandler))\n\n return () => {\n unsubscribes.forEach(u => u())\n }\n}\n\nconst windowLocation = (): string | null =>\n typeof window !== 'undefined' ? window.location.href : null\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,MAAM,gCAAgC;AACtC,MAAM,qCAAqC;AAC3C,MAAM,8BAA8B;AAE7B,SAAS,wBACd,UACc;AACd,MAAI,mBAAkC;AAEtC,QAAM,iBAAiB,CAAC,UAA+B;AACrD,QAAI,CAAC,MAAM,uBAAuB,MAAM,QAAQ;AAAkB;AAElE,aAAS,KAAK;AACd,uBAAmB,MAAM;AAAA,EAC3B;AAGA,iBAAe,EAAE,KAAK,eAAe,GAAG,qBAAqB,oBAAoB,CAAC;AAElF,MAAI,OAAO,WAAW,aAAa;AACjC,WAAO,MAAM;AAAA,IAAC;AAAA,EAChB;AAEA,QAAM,eAA+B,CAAC;AAItC,MAAI,gBAAgB,UAAU,OAAO,YAAY;AAC/C,UAAM,aAAa,OAAO;AAE1B,UAAM,kBAAkB,CAAC,EAAE,YAAY,MACrC,eAAe,EAAE,KAAK,YAAY,IAAI,CAAC;AAEzC,UAAM,yBAAyB,MAAM;AACnC,qBAAe;AAAA,QACb,KAAK,WAAW,aAAa;AAAA,QAC7B,qBAAqB;AAAA,MACvB,CAAC;AAAA,IACH;AAKA,eAAW,iBAAiB,YAAY,eAAe;AACvD,eAAW,iBAAiB,mBAAmB,sBAAsB;AACrE,iBAAa,KAAK,MAAM,WAAW,oBAAoB,YAAY,eAAe,CAAC;AACnF,iBAAa;AAAA,MAAK,MAChB,WAAW,oBAAoB,mBAAmB,sBAAsB;AAAA,IAC1E;AAEA,WAAO,MAAM;AACX,mBAAa,QAAQ,OAAK,EAAE,CAAC;AAAA,IAC/B;AAAA,EACF;AAQA,MAAI,iBAAoC;AAExC,QAAM,eAAe,CAAC,MAAkB;AACtC,UAAM,IACJ,EAAE,eAAe,GAAG,KAAK,OAAK,aAAa,iBAAiB,MAC3D,EAAE,kBAAkB,WAAW,EAAE,OAAO,UAAU,GAAG;AAExD,QAAI,CAAC;AAAG;AAER,qBAAiB,EAAE,MAAM,EAAE,MAAM,WAAW,KAAK,IAAI,EAAE;AAEvD,UAAM,qBAAqB,eAAe;AAC1C,QAAI,yBAAyB;AAI7B,UAAM,4BAA4B,MAAM;AACtC,YAAM,MAAM,eAAe;AAE3B,UAAI,QAAQ,oBAAoB;AAE9B,uBAAe,EAAE,KAAK,YAAY,KAAK,CAAC;AACxC;AAAA,MACF;AAGA,UAAI,EAAE,yBAAyB,6BAA6B;AAC1D,eAAO,WAAW,2BAA2B,kCAAkC;AAAA,MACjF;AAAA,IACF;AAEA,WAAO,WAAW,2BAA2B,kCAAkC;AAAA,EACjF;AAEA,SAAO,SAAS;AAAA,IACd;AAAA,IACA;AAAA,IACA,EAAE,SAAS,KAAK;AAAA;AAAA,EAClB;AAEA,eAAa;AAAA,IAAK,MAChB,OAAO,SAAS,oBAAoB,SAAS,cAAc,EAAE,SAAS,KAAK,CAAC;AAAA,EAC9E;AAGA,QAAM,gBAAgB,MAAM;AAC1B,QAAI,CAAC;AAAgB;AAErB,UAAM,mBAAmB,KAAK,IAAI,IAAI,eAAe;AACrD,mBAAe;AAAA,MACb,KAAK,mBAAmB,gCAAiC,eAAe,QAAQ,OAAQ;AAAA,MACxF,YAAY;AAAA,IACd,CAAC;AAED,qBAAiB;AAAA,EACnB;AAEA,SAAO,iBAAiB,gBAAgB,aAAa;AACrD,eAAa,KAAK,MAAM,OAAO,oBAAoB,gBAAgB,aAAa,CAAC;AAEjF,SAAO,MAAM;AACX,iBAAa,QAAQ,OAAK,EAAE,CAAC;AAAA,EAC/B;AACF;AAEA,MAAM,iBAAiB,MACrB,OAAO,WAAW,cAAc,OAAO,SAAS,OAAO;","names":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var makeswift_api_client_sync_exports = {};
|
|
20
|
+
__export(makeswift_api_client_sync_exports, {
|
|
21
|
+
makeswiftApiClientSyncMiddleware: () => makeswiftApiClientSyncMiddleware
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(makeswift_api_client_sync_exports);
|
|
24
|
+
var import_toolkit2 = require("../toolkit");
|
|
25
|
+
function makeswiftApiClientSyncMiddleware(client) {
|
|
26
|
+
return (0, import_toolkit2.actionMiddleware)(() => (next) => {
|
|
27
|
+
return (action) => {
|
|
28
|
+
client.makeswiftApiClient.dispatch(action);
|
|
29
|
+
return next(action);
|
|
30
|
+
};
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
34
|
+
0 && (module.exports = {
|
|
35
|
+
makeswiftApiClientSyncMiddleware
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=makeswift-api-client-sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/state/middleware/makeswift-api-client-sync.ts"],"sourcesContent":["import { type Middleware } from '@reduxjs/toolkit'\n\nimport { MakeswiftHostApiClient } from '../../api/client'\n\nimport { type Action } from '../actions'\nimport { actionMiddleware } from '../toolkit'\nimport { type State, type Dispatch } from '../unified-state'\n\nexport function makeswiftApiClientSyncMiddleware(\n client: MakeswiftHostApiClient,\n): Middleware<Dispatch, State, Dispatch> {\n return actionMiddleware(() => next => {\n return (action: Action) => {\n client.makeswiftApiClient.dispatch(action)\n\n return next(action)\n }\n })\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,IAAAA,kBAAiC;AAG1B,SAAS,iCACd,QACuC;AACvC,aAAO,kCAAiB,MAAM,UAAQ;AACpC,WAAO,CAAC,WAAmB;AACzB,aAAO,mBAAmB,SAAS,MAAM;AAEzC,aAAO,KAAK,MAAM;AAAA,IACpB;AAAA,EACF,CAAC;AACH;","names":["import_toolkit"]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var read_only_element_tree_exports = {};
|
|
20
|
+
__export(read_only_element_tree_exports, {
|
|
21
|
+
readOnlyElementTreeMiddleware: () => readOnlyElementTreeMiddleware
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(read_only_element_tree_exports);
|
|
24
|
+
var import_actions = require("../actions");
|
|
25
|
+
var import_read_only_actions = require("../actions/internal/read-only-actions");
|
|
26
|
+
var import_toolkit2 = require("../toolkit");
|
|
27
|
+
var import_read_only_state = require("../read-only-state");
|
|
28
|
+
function readOnlyElementTreeMiddleware() {
|
|
29
|
+
return (0, import_toolkit2.actionMiddleware)(({ dispatch, getState }) => (next) => {
|
|
30
|
+
return (action) => {
|
|
31
|
+
switch (action.type) {
|
|
32
|
+
case import_actions.ActionTypes.REGISTER_DOCUMENT:
|
|
33
|
+
dispatch(
|
|
34
|
+
(0, import_read_only_actions.createElementTree)({
|
|
35
|
+
document: action.payload.document,
|
|
36
|
+
descriptors: (0, import_read_only_state.getPropControllerDescriptors)(getState())
|
|
37
|
+
})
|
|
38
|
+
);
|
|
39
|
+
break;
|
|
40
|
+
case import_actions.ActionTypes.UNREGISTER_DOCUMENT:
|
|
41
|
+
dispatch((0, import_read_only_actions.deleteElementTree)(action.payload));
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
return next(action);
|
|
45
|
+
};
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
49
|
+
0 && (module.exports = {
|
|
50
|
+
readOnlyElementTreeMiddleware
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=read-only-element-tree.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/state/middleware/read-only-element-tree.ts"],"sourcesContent":["import { type Middleware } from '@reduxjs/toolkit'\n\nimport { ActionTypes } from '../actions'\nimport { createElementTree, deleteElementTree } from '../actions/internal/read-only-actions'\n\nimport { actionMiddleware } from '../toolkit'\n\nimport { type Dispatch, type State, getPropControllerDescriptors } from '../read-only-state'\n\nexport function readOnlyElementTreeMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return actionMiddleware(({ dispatch, getState }) => next => {\n return action => {\n switch (action.type) {\n case ActionTypes.REGISTER_DOCUMENT:\n dispatch(\n createElementTree({\n document: action.payload.document,\n descriptors: getPropControllerDescriptors(getState()),\n }),\n )\n break\n\n case ActionTypes.UNREGISTER_DOCUMENT:\n dispatch(deleteElementTree(action.payload))\n break\n }\n\n return next(action)\n }\n })\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,qBAA4B;AAC5B,+BAAqD;AAErD,IAAAA,kBAAiC;AAEjC,6BAAwE;AAEjE,SAAS,gCAAuE;AACrF,aAAO,kCAAiB,CAAC,EAAE,UAAU,SAAS,MAAM,UAAQ;AAC1D,WAAO,YAAU;AACf,cAAQ,OAAO,MAAM;AAAA,QACnB,KAAK,2BAAY;AACf;AAAA,gBACE,4CAAkB;AAAA,cAChB,UAAU,OAAO,QAAQ;AAAA,cACzB,iBAAa,qDAA6B,SAAS,CAAC;AAAA,YACtD,CAAC;AAAA,UACH;AACA;AAAA,QAEF,KAAK,2BAAY;AACf,uBAAS,4CAAkB,OAAO,OAAO,CAAC;AAC1C;AAAA,MACJ;AAEA,aAAO,KAAK,MAAM;AAAA,IACpB;AAAA,EACF,CAAC;AACH;","names":["import_toolkit"]}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var element_size_exports = {};
|
|
20
|
+
__export(element_size_exports, {
|
|
21
|
+
getElementSize: () => getElementSize
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(element_size_exports);
|
|
24
|
+
function getElementSize(element) {
|
|
25
|
+
return {
|
|
26
|
+
offsetWidth: element.offsetWidth,
|
|
27
|
+
offsetHeight: element.offsetHeight,
|
|
28
|
+
clientWidth: element.clientWidth,
|
|
29
|
+
clientHeight: element.clientHeight,
|
|
30
|
+
scrollWidth: element.scrollWidth,
|
|
31
|
+
scrollHeight: element.scrollHeight,
|
|
32
|
+
scrollTop: element.scrollTop,
|
|
33
|
+
scrollLeft: element.scrollLeft
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
37
|
+
0 && (module.exports = {
|
|
38
|
+
getElementSize
|
|
39
|
+
});
|
|
40
|
+
//# sourceMappingURL=element-size.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/state/middleware/read-write/builder-api/element-size.ts"],"sourcesContent":["export type ElementSize = {\n offsetWidth: number\n offsetHeight: number\n clientWidth: number\n clientHeight: number\n scrollWidth: number\n scrollHeight: number\n scrollTop: number\n scrollLeft: number\n}\n\nexport function getElementSize(element: HTMLElement): ElementSize {\n return {\n offsetWidth: element.offsetWidth,\n offsetHeight: element.offsetHeight,\n clientWidth: element.clientWidth,\n clientHeight: element.clientHeight,\n scrollWidth: element.scrollWidth,\n scrollHeight: element.scrollHeight,\n scrollTop: element.scrollTop,\n scrollLeft: element.scrollLeft,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAWO,SAAS,eAAe,SAAmC;AAChE,SAAO;AAAA,IACL,aAAa,QAAQ;AAAA,IACrB,cAAc,QAAQ;AAAA,IACtB,aAAa,QAAQ;AAAA,IACrB,cAAc,QAAQ;AAAA,IACtB,aAAa,QAAQ;AAAA,IACrB,cAAc,QAAQ;AAAA,IACtB,WAAW,QAAQ;AAAA,IACnB,YAAY,QAAQ;AAAA,EACtB;AACF;","names":[]}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var builder_api_exports = {};
|
|
20
|
+
__export(builder_api_exports, {
|
|
21
|
+
builderAPIMiddleware: () => builderAPIMiddleware
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(builder_api_exports);
|
|
24
|
+
var import_actions2 = require("../../../builder-api/actions");
|
|
25
|
+
var import_toolkit2 = require("../../../toolkit");
|
|
26
|
+
var import_host_api = require("../../../host-api");
|
|
27
|
+
var import_initialize_connection = require("./initialize-connection");
|
|
28
|
+
function builderAPIMiddleware(builderProxy) {
|
|
29
|
+
return (0, import_toolkit2.actionMiddleware)(({ dispatch }) => (next) => {
|
|
30
|
+
if (typeof window === "undefined")
|
|
31
|
+
return (action) => next(action);
|
|
32
|
+
let cleanUp = () => {
|
|
33
|
+
};
|
|
34
|
+
return (action) => {
|
|
35
|
+
switch (action.type) {
|
|
36
|
+
case import_actions2.BuilderActionTypes.CHANGE_ELEMENT_BOX_MODELS:
|
|
37
|
+
case import_actions2.BuilderActionTypes.MOUNT_COMPONENT:
|
|
38
|
+
case import_actions2.BuilderActionTypes.UNMOUNT_COMPONENT:
|
|
39
|
+
case import_actions2.BuilderActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE:
|
|
40
|
+
case import_actions2.BuilderActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER:
|
|
41
|
+
case import_actions2.BuilderActionTypes.HANDLE_WHEEL:
|
|
42
|
+
case import_actions2.BuilderActionTypes.HANDLE_POINTER_MOVE:
|
|
43
|
+
case import_actions2.BuilderActionTypes.ELEMENT_FROM_POINT_CHANGE:
|
|
44
|
+
case import_actions2.BuilderActionTypes.SET_LOCALE:
|
|
45
|
+
case import_actions2.BuilderActionTypes.SET_BREAKPOINTS:
|
|
46
|
+
case import_actions2.BuilderActionTypes.REGISTER_BUILDER_DOCUMENT:
|
|
47
|
+
case import_actions2.BuilderActionTypes.UNREGISTER_BUILDER_DOCUMENT:
|
|
48
|
+
case import_actions2.BuilderActionTypes.REGISTER_BUILDER_COMPONENT:
|
|
49
|
+
case import_actions2.BuilderActionTypes.UNREGISTER_BUILDER_COMPONENT:
|
|
50
|
+
builderProxy.execute(action);
|
|
51
|
+
break;
|
|
52
|
+
case import_host_api.HostActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP:
|
|
53
|
+
window.document.documentElement.scrollTo({
|
|
54
|
+
top: action.payload.scrollTop,
|
|
55
|
+
behavior: "instant"
|
|
56
|
+
});
|
|
57
|
+
break;
|
|
58
|
+
case import_host_api.HostActionTypes.SCROLL_DOCUMENT_ELEMENT:
|
|
59
|
+
window.document.documentElement.scrollBy({
|
|
60
|
+
top: action.payload.scrollTopDelta,
|
|
61
|
+
behavior: "instant"
|
|
62
|
+
});
|
|
63
|
+
break;
|
|
64
|
+
case import_host_api.HostActionTypes.SET_BUILDER_EDIT_MODE:
|
|
65
|
+
window.getSelection()?.removeAllRanges();
|
|
66
|
+
break;
|
|
67
|
+
case import_host_api.HostActionTypes.INIT:
|
|
68
|
+
cleanUp();
|
|
69
|
+
cleanUp = dispatch((0, import_initialize_connection.initializeBuilderConnection)(builderProxy));
|
|
70
|
+
break;
|
|
71
|
+
case import_host_api.HostActionTypes.CLEAN_UP:
|
|
72
|
+
cleanUp();
|
|
73
|
+
cleanUp = () => {
|
|
74
|
+
};
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
return next(action);
|
|
78
|
+
};
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
82
|
+
0 && (module.exports = {
|
|
83
|
+
builderAPIMiddleware
|
|
84
|
+
});
|
|
85
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/state/middleware/read-write/builder-api/index.ts"],"sourcesContent":["import { type Middleware } from '@reduxjs/toolkit'\n\nimport { type Action } from '../../../actions'\n\nimport { BuilderActionTypes } from '../../../builder-api/actions'\n\nimport { actionMiddleware } from '../../../toolkit'\n\nimport { type BuilderAPIProxy } from '../../../builder-api/proxy'\nimport { HostActionTypes } from '../../../host-api'\n\nimport { type State, type Dispatch } from '../../../read-write-state'\nimport { initializeBuilderConnection } from './initialize-connection'\n\nexport function builderAPIMiddleware(\n builderProxy: BuilderAPIProxy,\n): Middleware<Dispatch, State, Dispatch> {\n return actionMiddleware(({ dispatch }) => next => {\n if (typeof window === 'undefined') return (action: Action) => next(action)\n\n let cleanUp = () => {}\n return (action: Action) => {\n switch (action.type) {\n case BuilderActionTypes.CHANGE_ELEMENT_BOX_MODELS:\n case BuilderActionTypes.MOUNT_COMPONENT:\n case BuilderActionTypes.UNMOUNT_COMPONENT:\n case BuilderActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE:\n case BuilderActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER:\n case BuilderActionTypes.HANDLE_WHEEL:\n case BuilderActionTypes.HANDLE_POINTER_MOVE:\n case BuilderActionTypes.ELEMENT_FROM_POINT_CHANGE:\n case BuilderActionTypes.SET_LOCALE:\n case BuilderActionTypes.SET_BREAKPOINTS:\n case BuilderActionTypes.REGISTER_BUILDER_DOCUMENT:\n case BuilderActionTypes.UNREGISTER_BUILDER_DOCUMENT:\n case BuilderActionTypes.REGISTER_BUILDER_COMPONENT:\n case BuilderActionTypes.UNREGISTER_BUILDER_COMPONENT:\n builderProxy.execute(action)\n break\n\n case HostActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP:\n window.document.documentElement.scrollTo({\n top: action.payload.scrollTop,\n behavior: 'instant',\n })\n break\n\n case HostActionTypes.SCROLL_DOCUMENT_ELEMENT:\n window.document.documentElement.scrollBy({\n top: action.payload.scrollTopDelta,\n behavior: 'instant',\n })\n break\n\n case HostActionTypes.SET_BUILDER_EDIT_MODE:\n window.getSelection()?.removeAllRanges()\n break\n\n case HostActionTypes.INIT:\n // dispatched by the parent window after establishing the connection\n // and in response to host's client-side navigation\n cleanUp() // cleanup existing connection setup, if any\n cleanUp = dispatch(initializeBuilderConnection(builderProxy))\n break\n\n case HostActionTypes.CLEAN_UP:\n // dispatched by the parent window on disconnect\n cleanUp()\n cleanUp = () => {}\n break\n }\n\n return next(action)\n }\n })\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,IAAAA,kBAAmC;AAEnC,IAAAC,kBAAiC;AAGjC,sBAAgC;AAGhC,mCAA4C;AAErC,SAAS,qBACd,cACuC;AACvC,aAAO,kCAAiB,CAAC,EAAE,SAAS,MAAM,UAAQ;AAChD,QAAI,OAAO,WAAW;AAAa,aAAO,CAAC,WAAmB,KAAK,MAAM;AAEzE,QAAI,UAAU,MAAM;AAAA,IAAC;AACrB,WAAO,CAAC,WAAmB;AACzB,cAAQ,OAAO,MAAM;AAAA,QACnB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AAAA,QACxB,KAAK,mCAAmB;AACtB,uBAAa,QAAQ,MAAM;AAC3B;AAAA,QAEF,KAAK,gCAAgB;AACnB,iBAAO,SAAS,gBAAgB,SAAS;AAAA,YACvC,KAAK,OAAO,QAAQ;AAAA,YACpB,UAAU;AAAA,UACZ,CAAC;AACD;AAAA,QAEF,KAAK,gCAAgB;AACnB,iBAAO,SAAS,gBAAgB,SAAS;AAAA,YACvC,KAAK,OAAO,QAAQ;AAAA,YACpB,UAAU;AAAA,UACZ,CAAC;AACD;AAAA,QAEF,KAAK,gCAAgB;AACnB,iBAAO,aAAa,GAAG,gBAAgB;AACvC;AAAA,QAEF,KAAK,gCAAgB;AAGnB,kBAAQ;AACR,oBAAU,aAAS,0DAA4B,YAAY,CAAC;AAC5D;AAAA,QAEF,KAAK,gCAAgB;AAEnB,kBAAQ;AACR,oBAAU,MAAM;AAAA,UAAC;AACjB;AAAA,MACJ;AAEA,aAAO,KAAK,MAAM;AAAA,IACpB;AAAA,EACF,CAAC;AACH;","names":["import_actions","import_toolkit"]}
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var initialize_connection_exports = {};
|
|
30
|
+
__export(initialize_connection_exports, {
|
|
31
|
+
initializeBuilderConnection: () => initializeBuilderConnection
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(initialize_connection_exports);
|
|
34
|
+
var import_deepEqual = __toESM(require("../../../../utils/deepEqual"));
|
|
35
|
+
var BoxModels = __toESM(require("../../../modules/read-write/box-models"));
|
|
36
|
+
var BuilderEditMode = __toESM(require("../../../modules/builder-edit-mode"));
|
|
37
|
+
var ReadOnly = __toESM(require("../../../actions/internal/read-only-actions"));
|
|
38
|
+
var Builder = __toESM(require("../../../builder-api/actions"));
|
|
39
|
+
var import_builder = require("../../../../builder");
|
|
40
|
+
var ReadOnlyState = __toESM(require("../../../read-only-state"));
|
|
41
|
+
var import_read_write_state = require("../../../read-write-state");
|
|
42
|
+
var import_element_size = require("./element-size");
|
|
43
|
+
function measureElements() {
|
|
44
|
+
return (dispatch, getState) => {
|
|
45
|
+
const measurables = (0, import_read_write_state.getMeasurables)(getState());
|
|
46
|
+
const currentBoxModels = (0, import_read_write_state.getBoxModels)(getState());
|
|
47
|
+
const measuredBoxModels = /* @__PURE__ */ new Map();
|
|
48
|
+
measurables.forEach((documentMeasurables, documentKey) => {
|
|
49
|
+
const measuredDocumentBoxModels = /* @__PURE__ */ new Map();
|
|
50
|
+
documentMeasurables.forEach((measurable, elementKey) => {
|
|
51
|
+
const boxModel = BoxModels.measure(measurable);
|
|
52
|
+
if (boxModel != null)
|
|
53
|
+
measuredDocumentBoxModels.set(elementKey, boxModel);
|
|
54
|
+
});
|
|
55
|
+
if (measuredDocumentBoxModels.size > 0) {
|
|
56
|
+
measuredBoxModels.set(documentKey, measuredDocumentBoxModels);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
const changedBoxModels = /* @__PURE__ */ new Map();
|
|
60
|
+
currentBoxModels.forEach((currentDocumentBoxModels, documentKey) => {
|
|
61
|
+
const changedDocumentBoxModels = /* @__PURE__ */ new Map();
|
|
62
|
+
currentDocumentBoxModels.forEach((_boxModel, elementKey) => {
|
|
63
|
+
if (!measuredBoxModels.get(documentKey)?.has(elementKey)) {
|
|
64
|
+
changedDocumentBoxModels.set(elementKey, null);
|
|
65
|
+
}
|
|
66
|
+
if (changedDocumentBoxModels.size > 0) {
|
|
67
|
+
changedBoxModels.set(documentKey, changedDocumentBoxModels);
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
measuredBoxModels.forEach((measuredDocumentBoxModels, documentKey) => {
|
|
72
|
+
const changedDocumentBoxModels = /* @__PURE__ */ new Map();
|
|
73
|
+
measuredDocumentBoxModels.forEach((measuredBoxModel, elementKey) => {
|
|
74
|
+
const currentBoxModel = (0, import_read_write_state.getBoxModel)(getState(), documentKey, elementKey);
|
|
75
|
+
if (currentBoxModel == null || !(0, import_deepEqual.default)(currentBoxModel, measuredBoxModel)) {
|
|
76
|
+
changedDocumentBoxModels.set(elementKey, measuredBoxModel);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
if (changedDocumentBoxModels.size > 0) {
|
|
80
|
+
changedBoxModels.set(documentKey, changedDocumentBoxModels);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
if (changedBoxModels.size > 0)
|
|
84
|
+
dispatch(Builder.changeElementBoxModels(changedBoxModels));
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
function startMeasuringElements() {
|
|
88
|
+
return (dispatch) => {
|
|
89
|
+
let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
|
|
90
|
+
return () => {
|
|
91
|
+
cancelAnimationFrame(animationFrameHandle);
|
|
92
|
+
};
|
|
93
|
+
function handleAnimationFrameRequest() {
|
|
94
|
+
dispatch(measureElements());
|
|
95
|
+
animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
function lockDocumentScroll() {
|
|
100
|
+
return (dispatch) => {
|
|
101
|
+
const lastDocumentOverflow = window.document.documentElement.style.overflow;
|
|
102
|
+
window.document.documentElement.style.overflow = "hidden";
|
|
103
|
+
window.document.documentElement.addEventListener("wheel", handleWheelEvent);
|
|
104
|
+
return () => {
|
|
105
|
+
window.document.documentElement.style.overflow = lastDocumentOverflow;
|
|
106
|
+
window.document.documentElement.removeEventListener("wheel", handleWheelEvent);
|
|
107
|
+
};
|
|
108
|
+
function handleWheelEvent({ deltaX, deltaY }) {
|
|
109
|
+
dispatch(Builder.handleWheel({ deltaX, deltaY }));
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
function startHandlingPointerMoveEvent() {
|
|
114
|
+
return (dispatch) => {
|
|
115
|
+
window.document.documentElement.addEventListener("pointermove", handlePointerMoveEvent);
|
|
116
|
+
return () => {
|
|
117
|
+
window.document.documentElement.removeEventListener("pointermove", handlePointerMoveEvent);
|
|
118
|
+
};
|
|
119
|
+
function handlePointerMoveEvent({ clientX, clientY }) {
|
|
120
|
+
dispatch(Builder.handlePointerMove({ clientX, clientY }));
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
function startHandlingFocusEvents() {
|
|
125
|
+
return (_dispatch, getState) => {
|
|
126
|
+
window.addEventListener("focusin", handleFocusIn);
|
|
127
|
+
window.addEventListener("focusout", handleFocusOut);
|
|
128
|
+
return () => {
|
|
129
|
+
window.removeEventListener("focusin", handleFocusIn);
|
|
130
|
+
window.removeEventListener("focusout", handleFocusOut);
|
|
131
|
+
};
|
|
132
|
+
function handleFocusIn(event) {
|
|
133
|
+
if (ReadOnlyState.getBuilderEditMode(getState()) === BuilderEditMode.BuilderEditMode.INTERACT) {
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
if (!(event.target instanceof window.HTMLElement) || !event.target.isContentEditable) {
|
|
137
|
+
window.parent.focus();
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
function handleFocusOut(event) {
|
|
141
|
+
if (ReadOnlyState.getBuilderEditMode(getState()) === BuilderEditMode.BuilderEditMode.INTERACT) {
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
if (!(event.relatedTarget instanceof window.HTMLElement) || !event.relatedTarget.isContentEditable) {
|
|
145
|
+
window.parent.focus();
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
function startMeasuringDocumentElement() {
|
|
151
|
+
return (dispatch) => {
|
|
152
|
+
let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
|
|
153
|
+
let lastSize;
|
|
154
|
+
return () => {
|
|
155
|
+
cancelAnimationFrame(animationFrameHandle);
|
|
156
|
+
};
|
|
157
|
+
function handleAnimationFrameRequest() {
|
|
158
|
+
const nextSize = (0, import_element_size.getElementSize)(window.document.documentElement);
|
|
159
|
+
if (!(0, import_deepEqual.default)(lastSize, nextSize)) {
|
|
160
|
+
lastSize = nextSize;
|
|
161
|
+
dispatch(Builder.changeDocumentElementSize(nextSize));
|
|
162
|
+
}
|
|
163
|
+
animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
function elementKeysFromElementFromPoint(elementFromPoint) {
|
|
168
|
+
return (_dispatch, getState) => {
|
|
169
|
+
if (elementFromPoint == null)
|
|
170
|
+
return null;
|
|
171
|
+
const elementImperativeHandles = (0, import_read_write_state.getElementImperativeHandlesContainingElement)(
|
|
172
|
+
getState(),
|
|
173
|
+
elementFromPoint
|
|
174
|
+
);
|
|
175
|
+
const ascendingDepthDocumentKeys = ReadOnlyState.getDocumentKeysSortedByDepth(getState());
|
|
176
|
+
const descendingDepthDocumentKeys = ascendingDepthDocumentKeys.slice().reverse();
|
|
177
|
+
let currentElement = elementFromPoint;
|
|
178
|
+
let keys = null;
|
|
179
|
+
while (currentElement != null) {
|
|
180
|
+
for (const documentKey of descendingDepthDocumentKeys) {
|
|
181
|
+
const byElementKey = elementImperativeHandles.get(documentKey);
|
|
182
|
+
if (byElementKey == null)
|
|
183
|
+
continue;
|
|
184
|
+
for (const [elementKey, elementImperativeHandle] of byElementKey) {
|
|
185
|
+
if (elementImperativeHandle.getDomNode() === currentElement) {
|
|
186
|
+
return { documentKey, elementKey };
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
currentElement = currentElement.parentElement;
|
|
191
|
+
}
|
|
192
|
+
return keys;
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
function startPollingElementFromPoint() {
|
|
196
|
+
return (dispatch, getState) => {
|
|
197
|
+
let lastElementFromPoint = null;
|
|
198
|
+
let animationFrameRequestId = requestAnimationFrame(handleAnimationFrameRequest);
|
|
199
|
+
return () => {
|
|
200
|
+
cancelAnimationFrame(animationFrameRequestId);
|
|
201
|
+
};
|
|
202
|
+
function handleAnimationFrameRequest() {
|
|
203
|
+
const pointer = (0, import_read_write_state.getPointer)(getState());
|
|
204
|
+
const elementFromPoint = pointer == null ? null : document.elementFromPoint(pointer.x, pointer.y);
|
|
205
|
+
if (elementFromPoint !== lastElementFromPoint) {
|
|
206
|
+
lastElementFromPoint = elementFromPoint;
|
|
207
|
+
const keys = dispatch(elementKeysFromElementFromPoint(elementFromPoint));
|
|
208
|
+
dispatch(Builder.elementFromPointChange(keys));
|
|
209
|
+
}
|
|
210
|
+
animationFrameRequestId = requestAnimationFrame(handleAnimationFrameRequest);
|
|
211
|
+
}
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
function registerBuilderComponents() {
|
|
215
|
+
return (dispatch, getState) => {
|
|
216
|
+
const state = getState();
|
|
217
|
+
const componentsMeta = ReadOnlyState.getComponentsMeta(state);
|
|
218
|
+
componentsMeta.forEach((meta, type) => {
|
|
219
|
+
const descriptors = ReadOnlyState.getComponentPropControllerDescriptors(state, type);
|
|
220
|
+
if (descriptors != null) {
|
|
221
|
+
const [serializedControls, transferables] = (0, import_builder.serializeControls)(descriptors);
|
|
222
|
+
dispatch(
|
|
223
|
+
Builder.registerBuilderComponent({ type, meta, serializedControls }, transferables)
|
|
224
|
+
);
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
return () => {
|
|
228
|
+
componentsMeta.forEach((_, type) => {
|
|
229
|
+
dispatch(Builder.unregisterBuilderComponent({ type }));
|
|
230
|
+
});
|
|
231
|
+
};
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
function registerBuilderDocuments() {
|
|
235
|
+
return (dispatch, getState) => {
|
|
236
|
+
const documents = (0, import_read_write_state.getDocuments)(getState());
|
|
237
|
+
documents.forEach((document2) => {
|
|
238
|
+
dispatch(Builder.registerBuilderDocument(document2));
|
|
239
|
+
});
|
|
240
|
+
return () => {
|
|
241
|
+
documents.forEach((_document, documentKey) => {
|
|
242
|
+
dispatch(Builder.unregisterBuilderDocument(documentKey));
|
|
243
|
+
});
|
|
244
|
+
};
|
|
245
|
+
};
|
|
246
|
+
}
|
|
247
|
+
function initializeBuilderConnection(builderProxy) {
|
|
248
|
+
return (dispatch, getState) => {
|
|
249
|
+
const unregisterBuilderDocuments = dispatch(registerBuilderDocuments());
|
|
250
|
+
const stopMeasuringElements = dispatch(startMeasuringElements());
|
|
251
|
+
const stopMeasuringDocumentElement = dispatch(startMeasuringDocumentElement());
|
|
252
|
+
const stopHandlingFocusEvent = dispatch(startHandlingFocusEvents());
|
|
253
|
+
const unlockDocumentScroll = dispatch(lockDocumentScroll());
|
|
254
|
+
const stopHandlingPointerMoveEvent = dispatch(startHandlingPointerMoveEvent());
|
|
255
|
+
const stopPollingElementFromPoint = dispatch(startPollingElementFromPoint());
|
|
256
|
+
const unregisterBuilderComponents = dispatch(registerBuilderComponents());
|
|
257
|
+
const breakpoints = ReadOnlyState.getBreakpoints(getState());
|
|
258
|
+
dispatch(Builder.setBreakpoints(breakpoints));
|
|
259
|
+
const locale = ReadOnlyState.getLocale(getState());
|
|
260
|
+
if (locale != null)
|
|
261
|
+
dispatch(Builder.setLocale(new Intl.Locale(locale)));
|
|
262
|
+
dispatch(ReadOnly.setIsInBuilder(true));
|
|
263
|
+
builderProxy.dispatchBuffered();
|
|
264
|
+
return () => {
|
|
265
|
+
unregisterBuilderDocuments();
|
|
266
|
+
stopMeasuringElements();
|
|
267
|
+
stopMeasuringDocumentElement();
|
|
268
|
+
stopHandlingFocusEvent();
|
|
269
|
+
unlockDocumentScroll();
|
|
270
|
+
stopHandlingPointerMoveEvent();
|
|
271
|
+
stopPollingElementFromPoint();
|
|
272
|
+
unregisterBuilderComponents();
|
|
273
|
+
dispatch(ReadOnly.setIsInBuilder(false));
|
|
274
|
+
};
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
278
|
+
0 && (module.exports = {
|
|
279
|
+
initializeBuilderConnection
|
|
280
|
+
});
|
|
281
|
+
//# sourceMappingURL=initialize-connection.js.map
|