@makeswift/runtime 0.0.0-a500663 → 0.0.0-afbfa6b
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/api.js +1 -0
- package/builder.js +1 -0
- package/dist/actions.cjs.js +175 -0
- package/dist/actions.cjs.js.map +1 -0
- package/dist/actions.es.js +154 -0
- package/dist/actions.es.js.map +1 -0
- package/dist/api.cjs.js +5 -0
- package/dist/api.cjs.js.map +1 -0
- package/dist/api.es.js +2 -0
- package/dist/api.es.js.map +1 -0
- package/dist/box-model.cjs.js +9 -0
- package/dist/box-model.cjs.js.map +1 -0
- package/dist/box-model.es.js +4 -0
- package/dist/box-model.es.js.map +1 -0
- package/dist/box-models.cjs.js +106 -0
- package/dist/box-models.cjs.js.map +1 -0
- package/dist/box-models.es.js +97 -0
- package/dist/box-models.es.js.map +1 -0
- package/dist/builder.cjs.js +9 -0
- package/dist/builder.cjs.js.map +1 -0
- package/dist/builder.es.js +3 -0
- package/dist/builder.es.js.map +1 -0
- package/dist/components.cjs.js +59 -0
- package/dist/components.cjs.js.map +1 -0
- package/dist/components.es.js +28 -0
- package/dist/components.es.js.map +1 -0
- package/dist/constants.cjs.js +146 -0
- package/dist/constants.cjs.js.map +1 -0
- package/dist/constants.es.js +145 -0
- package/dist/constants.es.js.map +1 -0
- package/dist/control-serialization.cjs.js +91 -0
- package/dist/control-serialization.cjs.js.map +1 -0
- package/dist/control-serialization.es.js +87 -0
- package/dist/control-serialization.es.js.map +1 -0
- package/dist/descriptors.cjs.js +215 -0
- package/dist/descriptors.cjs.js.map +1 -0
- package/dist/descriptors.es.js +183 -0
- package/dist/descriptors.es.js.map +1 -0
- package/dist/instances.cjs.js +89 -0
- package/dist/instances.cjs.js.map +1 -0
- package/dist/instances.es.js +87 -0
- package/dist/instances.es.js.map +1 -0
- package/dist/main.cjs.js +11 -0
- package/dist/main.cjs.js.map +1 -0
- package/dist/main.es.js +2 -0
- package/dist/main.es.js.map +1 -0
- package/dist/next.cjs.js +169 -0
- package/dist/next.cjs.js.map +1 -0
- package/dist/next.es.js +159 -0
- package/dist/next.es.js.map +1 -0
- package/dist/prop-controllers.cjs.js +7 -0
- package/dist/prop-controllers.cjs.js.map +1 -0
- package/dist/prop-controllers.es.js +3 -0
- package/dist/prop-controllers.es.js.map +1 -0
- package/dist/react-builder-preview.cjs.js +459 -0
- package/dist/react-builder-preview.cjs.js.map +1 -0
- package/dist/react-builder-preview.es.js +448 -0
- package/dist/react-builder-preview.es.js.map +1 -0
- package/dist/react.cjs.js +39 -0
- package/dist/react.cjs.js.map +1 -0
- package/dist/react.cjs2.js +6080 -0
- package/dist/react.cjs2.js.map +1 -0
- package/dist/react.es.js +28 -0
- package/dist/react.es.js.map +1 -0
- package/dist/react.es2.js +5999 -0
- package/dist/react.es2.js.map +1 -0
- package/dist/types/api/constants.d.ts +4 -0
- package/dist/types/api/constants.d.ts.map +1 -0
- package/dist/types/api/generated/graphql.d.ts +61 -0
- package/dist/types/api/generated/graphql.d.ts.map +1 -0
- package/dist/types/api/index.d.ts +3 -0
- package/dist/types/api/index.d.ts.map +1 -0
- package/dist/types/api/react.d.ts +6 -0
- package/dist/types/api/react.d.ts.map +1 -0
- package/dist/types/api/types.d.ts +4 -0
- package/dist/types/api/types.d.ts.map +1 -0
- package/{src/box-model.ts → dist/types/box-model.d.ts} +3 -2
- package/dist/types/box-model.d.ts.map +1 -0
- package/dist/types/builder/index.d.ts +2 -0
- package/dist/types/builder/index.d.ts.map +1 -0
- package/dist/types/builder/serialization/control-serialization.d.ts +30 -0
- package/dist/types/builder/serialization/control-serialization.d.ts.map +1 -0
- package/dist/types/builder/serialization/function-serialization.d.ts +11 -0
- package/dist/types/builder/serialization/function-serialization.d.ts.map +1 -0
- package/dist/types/builder/serialization/index.d.ts +3 -0
- package/dist/types/builder/serialization/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Box/Box.d.ts +33 -0
- package/dist/types/components/builtin/Box/Box.d.ts.map +1 -0
- package/dist/types/components/builtin/Box/animations.d.ts +69 -0
- package/dist/types/components/builtin/Box/animations.d.ts.map +1 -0
- package/dist/types/components/builtin/Box/components/Placeholder/index.d.ts +7 -0
- package/dist/types/components/builtin/Box/components/Placeholder/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Box/index.d.ts +3 -0
- package/dist/types/components/builtin/Box/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Button/Button.d.ts +118 -0
- package/dist/types/components/builtin/Button/Button.d.ts.map +1 -0
- package/dist/types/components/builtin/Button/index.d.ts +2 -0
- package/dist/types/components/builtin/Button/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Carousel/Carousel.d.ts +28 -0
- package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -0
- package/dist/types/components/builtin/Carousel/index.d.ts +2 -0
- package/dist/types/components/builtin/Carousel/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Countdown/Countdown.d.ts +27 -0
- package/dist/types/components/builtin/Countdown/Countdown.d.ts.map +1 -0
- package/dist/types/components/builtin/Countdown/index.d.ts +2 -0
- package/dist/types/components/builtin/Countdown/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Divider/Divider.d.ts +17 -0
- package/dist/types/components/builtin/Divider/Divider.d.ts.map +1 -0
- package/dist/types/components/builtin/Divider/index.d.ts +2 -0
- package/dist/types/components/builtin/Divider/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Embed/Embed.d.ts +14 -0
- package/dist/types/components/builtin/Embed/Embed.d.ts.map +1 -0
- package/dist/types/components/builtin/Embed/index.d.ts +2 -0
- package/dist/types/components/builtin/Embed/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Image/Image.d.ts +29 -0
- package/dist/types/components/builtin/Image/Image.d.ts.map +1 -0
- package/dist/types/components/builtin/Image/index.d.ts +2 -0
- package/dist/types/components/builtin/Image/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Navigation/Navigation.d.ts +26 -0
- package/dist/types/components/builtin/Navigation/Navigation.d.ts.map +1 -0
- package/dist/types/components/builtin/Navigation/components/DropDownButton/index.d.ts +100 -0
- package/dist/types/components/builtin/Navigation/components/DropDownButton/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Navigation/components/LinksPlaceholder/index.d.ts +8 -0
- package/dist/types/components/builtin/Navigation/components/LinksPlaceholder/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.d.ts +101 -0
- package/dist/types/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts +13 -0
- package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Navigation/index.d.ts +2 -0
- package/dist/types/components/builtin/Navigation/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Root/Root.d.ts +14 -0
- package/dist/types/components/builtin/Root/Root.d.ts.map +1 -0
- package/dist/types/components/builtin/Root/components/Placeholder/index.d.ts +5 -0
- package/dist/types/components/builtin/Root/components/Placeholder/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Root/index.d.ts +2 -0
- package/dist/types/components/builtin/Root/index.d.ts.map +1 -0
- package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts +21 -0
- package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts.map +1 -0
- package/dist/types/components/builtin/SocialLinks/components/SocialLinksPlaceholder/index.d.ts +8 -0
- package/dist/types/components/builtin/SocialLinks/components/SocialLinksPlaceholder/index.d.ts.map +1 -0
- package/dist/types/components/builtin/SocialLinks/index.d.ts +2 -0
- package/dist/types/components/builtin/SocialLinks/index.d.ts.map +1 -0
- package/dist/types/components/builtin/SocialLinks/options.d.ts +113 -0
- package/dist/types/components/builtin/SocialLinks/options.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/Text.d.ts +19 -0
- package/dist/types/components/builtin/Text/Text.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/components/Block/index.d.ts +24 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/components/Block/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/components/Mark/hooks/useTypographyMark.d.ts +25 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/components/Mark/hooks/useTypographyMark.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/components/Mark/index.d.ts +13 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/components/Mark/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/index.d.ts +5 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/index.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/plugins/DeviceOverridesBlocks.d.ts +3 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/plugins/DeviceOverridesBlocks.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/plugins/DeviceOverridesMarks.d.ts +3 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/plugins/DeviceOverridesMarks.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/plugins/Inlines.d.ts +3 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/plugins/Inlines.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/plugins/Link.d.ts +3 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/plugins/Link.d.ts.map +1 -0
- package/dist/types/components/builtin/Text/index.d.ts +2 -0
- package/dist/types/components/builtin/Text/index.d.ts.map +1 -0
- package/dist/types/components/builtin/index.d.ts +15 -0
- package/dist/types/components/builtin/index.d.ts.map +1 -0
- package/dist/types/components/hooks/index.d.ts +8 -0
- package/dist/types/components/hooks/index.d.ts.map +1 -0
- package/dist/types/components/hooks/useBackgrounds.d.ts +59 -0
- package/dist/types/components/hooks/useBackgrounds.d.ts.map +1 -0
- package/dist/types/components/hooks/useBorder.d.ts +19 -0
- package/dist/types/components/hooks/useBorder.d.ts.map +1 -0
- package/dist/types/components/hooks/useBoxShadow.d.ts +19 -0
- package/dist/types/components/hooks/useBoxShadow.d.ts.map +1 -0
- package/dist/types/components/hooks/useColor.d.ts +7 -0
- package/dist/types/components/hooks/useColor.d.ts.map +1 -0
- package/dist/types/components/hooks/useFile.d.ts +13 -0
- package/dist/types/components/hooks/useFile.d.ts.map +1 -0
- package/dist/types/components/hooks/useMediaQuery.d.ts +3 -0
- package/dist/types/components/hooks/useMediaQuery.d.ts.map +1 -0
- package/dist/types/components/hooks/usePage.d.ts +7 -0
- package/dist/types/components/hooks/usePage.d.ts.map +1 -0
- package/dist/types/components/hooks/useTypography.d.ts +24 -0
- package/dist/types/components/hooks/useTypography.d.ts.map +1 -0
- package/dist/types/components/index.d.ts +3 -0
- package/dist/types/components/index.d.ts.map +1 -0
- package/dist/types/components/shared/BackgroundsContainer/components/BackgroundVideo/index.d.ts +11 -0
- package/dist/types/components/shared/BackgroundsContainer/components/BackgroundVideo/index.d.ts.map +1 -0
- package/dist/types/components/shared/BackgroundsContainer/components/Backgrounds/index.d.ts +8 -0
- package/dist/types/components/shared/BackgroundsContainer/components/Backgrounds/index.d.ts.map +1 -0
- package/dist/types/components/shared/BackgroundsContainer/components/Parallax/index.d.ts +11 -0
- package/dist/types/components/shared/BackgroundsContainer/components/Parallax/index.d.ts.map +1 -0
- package/dist/types/components/shared/BackgroundsContainer/index.d.ts +11 -0
- package/dist/types/components/shared/BackgroundsContainer/index.d.ts.map +1 -0
- package/dist/types/components/shared/GutterContainer/index.d.ts +8 -0
- package/dist/types/components/shared/GutterContainer/index.d.ts.map +1 -0
- package/dist/types/components/shared/Link/index.d.ts +9 -0
- package/dist/types/components/shared/Link/index.d.ts.map +1 -0
- package/dist/types/components/utils/colorToString.d.ts +3 -0
- package/dist/types/components/utils/colorToString.d.ts.map +1 -0
- package/dist/types/components/utils/columns.d.ts +2 -0
- package/dist/types/components/utils/columns.d.ts.map +1 -0
- package/dist/types/components/utils/cssMediaRules.d.ts +69 -0
- package/dist/types/components/utils/cssMediaRules.d.ts.map +1 -0
- package/dist/types/components/utils/devices.d.ts +17 -0
- package/dist/types/components/utils/devices.d.ts.map +1 -0
- package/dist/types/components/utils/isNonNullable.d.ts +2 -0
- package/dist/types/components/utils/isNonNullable.d.ts.map +1 -0
- package/dist/types/components/utils/placeholders.d.ts +10 -0
- package/dist/types/components/utils/placeholders.d.ts.map +1 -0
- package/dist/types/components/utils/queries.d.ts +7 -0
- package/dist/types/components/utils/queries.d.ts.map +1 -0
- package/dist/types/components/utils/types.d.ts +11 -0
- package/dist/types/components/utils/types.d.ts.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/next.d.ts +21 -0
- package/dist/types/next.d.ts.map +1 -0
- package/dist/types/prop-controllers/descriptors.d.ts +693 -0
- package/dist/types/prop-controllers/descriptors.d.ts.map +1 -0
- package/dist/types/prop-controllers/index.d.ts +5 -0
- package/dist/types/prop-controllers/index.d.ts.map +1 -0
- package/dist/types/prop-controllers/instances.d.ts +69 -0
- package/dist/types/prop-controllers/instances.d.ts.map +1 -0
- package/dist/types/prop-controllers/introspection.d.ts +5 -0
- package/dist/types/prop-controllers/introspection.d.ts.map +1 -0
- package/dist/types/react.d.ts +4 -0
- package/dist/types/react.d.ts.map +1 -0
- package/dist/types/runtimes/react.d.ts +43 -0
- package/dist/types/runtimes/react.d.ts.map +1 -0
- package/dist/types/state/actions.d.ts +237 -0
- package/dist/types/state/actions.d.ts.map +1 -0
- package/dist/types/state/modules/box-models.d.ts +22 -0
- package/dist/types/state/modules/box-models.d.ts.map +1 -0
- package/dist/types/state/modules/components-meta.d.ts +14 -0
- package/dist/types/state/modules/components-meta.d.ts.map +1 -0
- package/dist/types/state/modules/prop-controller-handles.d.ts +16 -0
- package/dist/types/state/modules/prop-controller-handles.d.ts.map +1 -0
- package/dist/types/state/modules/prop-controllers.d.ts +11 -0
- package/dist/types/state/modules/prop-controllers.d.ts.map +1 -0
- package/dist/types/state/modules/react-components.d.ts +10 -0
- package/dist/types/state/modules/react-components.d.ts.map +1 -0
- package/dist/types/state/modules/read-only-documents.d.ts +28 -0
- package/dist/types/state/modules/read-only-documents.d.ts.map +1 -0
- package/dist/types/state/modules/read-write-documents.d.ts +13 -0
- package/dist/types/state/modules/read-write-documents.d.ts.map +1 -0
- package/dist/types/state/react-builder-preview.d.ts +44 -0
- package/dist/types/state/react-builder-preview.d.ts.map +1 -0
- package/dist/types/state/react-page.d.ts +33 -0
- package/dist/types/state/react-page.d.ts.map +1 -0
- package/dist/types/utils/clamp.d.ts +3 -0
- package/dist/types/utils/clamp.d.ts.map +1 -0
- package/dist/types/utils/coalesce.d.ts +3 -0
- package/dist/types/utils/coalesce.d.ts.map +1 -0
- package/dist/types/utils/constants.d.ts +6 -0
- package/dist/types/utils/constants.d.ts.map +1 -0
- package/dist/types/utils/deepEqual.d.ts +3 -0
- package/dist/types/utils/deepEqual.d.ts.map +1 -0
- package/dist/types/utils/intersection.d.ts +4 -0
- package/dist/types/utils/intersection.d.ts.map +1 -0
- package/dist/types/utils/is.d.ts +2 -0
- package/dist/types/utils/is.d.ts.map +1 -0
- package/dist/types/utils/keys.d.ts +5 -0
- package/dist/types/utils/keys.d.ts.map +1 -0
- package/dist/types/utils/shallowEqual.d.ts +3 -0
- package/dist/types/utils/shallowEqual.d.ts.map +1 -0
- package/dist/types/utils/shallowMerge.d.ts +2 -0
- package/dist/types/utils/shallowMerge.d.ts.map +1 -0
- package/next.js +1 -0
- package/package.json +80 -37
- package/favicon.svg +0 -15
- package/index.html +0 -13
- package/src/components/Root/Root.tsx +0 -72
- package/src/components/Root/components/Placeholder/index.tsx +0 -37
- package/src/components/Root/index.tsx +0 -1
- package/src/components/index.ts +0 -1
- package/src/components/utils/columns.ts +0 -15
- package/src/components/utils/cssMediaRules.ts +0 -91
- package/src/components/utils/devices.ts +0 -86
- package/src/index.ts +0 -8
- package/src/prop-controllers/descriptors.ts +0 -821
- package/src/prop-controllers/index.ts +0 -10
- package/src/react.ts +0 -3
- package/src/runtimes/react.tsx +0 -223
- package/src/state/actions.ts +0 -239
- package/src/state/modules/box-models.ts +0 -112
- package/src/state/modules/components-meta.ts +0 -44
- package/src/state/modules/prop-controllers.ts +0 -45
- package/src/state/modules/react-components.tsx +0 -47
- package/src/state/modules/read-only-documents.ts +0 -51
- package/src/state/modules/read-write-documents.ts +0 -75
- package/src/state/react-builder-preview.ts +0 -271
- package/src/state/react-page.ts +0 -73
- package/src/style.css +0 -8
- package/src/utils/deepEqual.ts +0 -33
- package/src/utils/is.ts +0 -5
- package/src/utils/shallowEqual.ts +0 -30
- package/src/vite-env.d.ts +0 -1
- package/tsconfig.json +0 -23
- package/types/ot-json0.d.ts +0 -35
- package/vite.config.ts +0 -28
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-builder-preview.cjs.js","sources":["../src/utils/is.ts","../src/utils/shallowEqual.ts","../src/utils/deepEqual.ts","../src/state/modules/read-write-documents.ts","../src/state/modules/prop-controller-handles.ts","../src/state/react-builder-preview.ts"],"sourcesContent":["export default function is(x: unknown, y: unknown): boolean {\n if (x === y) return x !== 0 || y !== 0 || 1 / x === 1 / y\n\n return x !== x && y !== y\n}\n","import is from './is'\n\nconst { hasOwnProperty } = Object.prototype\n\nconst shallowEqual = (a: unknown, b: unknown): boolean => {\n if (is(a, b)) return true\n\n if (typeof a !== 'object' || a === null || typeof b !== 'object' || b === null) return false\n\n const keysA = Object.keys(a)\n const keysB = Object.keys(b)\n\n if (keysA.length !== keysB.length) return false\n\n for (let i = 0; i < keysA.length; i += 1) {\n // @ts-expect-error: {}[string] is OK.\n if (!hasOwnProperty.call(b, keysA[i]) || !is(a[keysA[i]], b[keysA[i]])) return false\n }\n\n return true\n}\n\nexport default shallowEqual\n","import shallowEqual from './shallowEqual'\n\nconst { hasOwnProperty } = Object.prototype\n\nconst deepEqual = (a: unknown, b: unknown): boolean => {\n if (shallowEqual(a, b)) return true\n\n if (typeof a !== 'object' || a === null || typeof b !== 'object' || b === null) return false\n\n const keysA = Object.keys(a)\n const keysB = Object.keys(b)\n\n if (keysA.length !== keysB.length) return false\n\n for (let i = 0; i < keysA.length; i += 1) {\n if (\n !hasOwnProperty.call(b, keysA[i]) ||\n // @ts-expect-error: {}[string] is OK.\n !deepEqual(a[keysA[i]], b[keysA[i]])\n )\n return false\n }\n\n return true\n}\n\nexport default deepEqual\n","import { Operation } from 'ot-json0'\nimport { removeIn, setIn } from 'immutable'\n\nimport * as ReadOnlyDocuments from './read-only-documents'\nimport { Action, ActionTypes } from '../actions'\n\nexport type { Document, Element, ElementData, ElementReference } from './read-only-documents'\nexport { isElementReference } from './read-only-documents'\nexport type { Operation }\n\nfunction apply(data: ReadOnlyDocuments.Element, operation: Operation): ReadOnlyDocuments.Element {\n let applied = data\n\n operation.forEach(component => {\n // @ts-expect-error: `ld` isn't in all possible values of `component`\n if (component.ld != null) applied = removeIn(applied, component.p)\n\n // @ts-expect-error: `od` isn't in all possible values of `component`\n if (component.od != null) applied = removeIn(applied, component.p)\n\n // @ts-expect-error: `li` isn't in all possible values of `component`\n if (component.li != null) applied = setIn(applied, component.p, component.li)\n\n // @ts-expect-error: `oi` isn't in all possible values of `component`\n if (component.oi != null) applied = setIn(applied, component.p, component.oi)\n })\n\n return applied\n}\n\nexport type State = ReadOnlyDocuments.State\n\nexport function getInitialState({\n rootElements,\n}: {\n rootElements?: Map<string, ReadOnlyDocuments.Element>\n} = {}): State {\n return ReadOnlyDocuments.getInitialState({ rootElements })\n}\n\nfunction getReadOnlyDocumentsStateSlice(state: State): ReadOnlyDocuments.State {\n return state\n}\n\nexport function getDocumentRootElement(\n state: State,\n documentKey: string,\n): ReadOnlyDocuments.Element | null {\n return ReadOnlyDocuments.getDocumentRootElement(\n getReadOnlyDocumentsStateSlice(state),\n documentKey,\n )\n}\n\nexport function reducer(state: State = getInitialState(), action: Action): State {\n switch (action.type) {\n case ActionTypes.CHANGE_DOCUMENT: {\n const currentRootElement = getDocumentRootElement(state, action.payload.documentKey)\n\n if (currentRootElement == null) return state\n\n const nextRootElement = apply(currentRootElement, action.payload.operation)\n\n return currentRootElement === nextRootElement\n ? state\n : new Map(state).set(\n action.payload.documentKey,\n ReadOnlyDocuments.createDocument(nextRootElement),\n )\n }\n\n default:\n return state\n }\n}\n","import { Action, ActionTypes } from '../actions'\nimport type { DescriptorsPropControllers, PropController } from '../../prop-controllers/instances'\nimport type { Descriptor } from '../../prop-controllers/descriptors'\n\nexport interface PropControllersHandle<\n T extends Record<string, Descriptor> = Record<string, Descriptor>,\n> {\n setPropControllers(propControllers: DescriptorsPropControllers<T> | null): void\n}\n\nexport function isPropControllersHandle(value: unknown): value is PropControllersHandle {\n if (\n typeof value === 'object' &&\n value !== null &&\n 'setPropControllers' in value &&\n typeof (value as { setPropControllers: unknown }).setPropControllers === 'function'\n ) {\n return true\n }\n\n return false\n}\n\nexport type State = {\n handles: Map<string, Map<string, PropControllersHandle>>\n instances: Map<string, Map<string, Record<string, PropController>>>\n}\n\nexport function getInitialState(): State {\n return { handles: new Map(), instances: new Map() }\n}\n\nexport function getPropControllersHandle(\n state: State,\n documentKey: string,\n elementKey: string,\n): PropControllersHandle | null {\n return state.handles.get(documentKey)?.get(elementKey) ?? null\n}\n\nexport function getPropController(\n state: State,\n documentKey: string,\n elementKey: string,\n propName: string,\n): PropController | null {\n return state.instances.get(documentKey)?.get(elementKey)?.[propName] ?? null\n}\n\nexport function reducer(state: State = getInitialState(), action: Action): State {\n switch (action.type) {\n case ActionTypes.REGISTER_PROP_CONTROLLERS_HANDLE: {\n const { documentKey, elementKey, handle } = action.payload\n\n return {\n ...state,\n handles: new Map(state.handles).set(\n documentKey,\n new Map(state.handles.get(documentKey) ?? []).set(elementKey, handle),\n ),\n }\n }\n\n case ActionTypes.UNREGISTER_PROP_CONTROLLERS_HANDLE: {\n const { documentKey, elementKey } = action.payload\n const nextHandles = new Map(state.handles.get(documentKey) ?? [])\n\n const deleted = nextHandles.delete(elementKey)\n\n return deleted\n ? { ...state, handles: new Map(state.handles).set(documentKey, nextHandles) }\n : state\n }\n\n case ActionTypes.REGISTER_PROP_CONTROLLERS: {\n const { documentKey, elementKey, propControllers } = action.payload\n\n return {\n ...state,\n instances: new Map(state.instances).set(\n documentKey,\n new Map(state.instances.get(documentKey) ?? []).set(elementKey, propControllers),\n ),\n }\n }\n\n case ActionTypes.UNREGISTER_PROP_CONTROLLERS: {\n const { documentKey, elementKey } = action.payload\n const nextInstances = new Map(state.instances.get(documentKey) ?? [])\n\n const deleted = nextInstances.delete(elementKey)\n\n return deleted\n ? { ...state, instances: new Map(state.instances).set(documentKey, nextInstances) }\n : state\n }\n\n default:\n return state\n }\n}\n","import {\n applyMiddleware,\n combineReducers,\n createStore,\n Dispatch as ReduxDispatch,\n Middleware,\n MiddlewareAPI,\n PreloadedState,\n Store as ReduxStore,\n} from 'redux'\nimport thunk, { ThunkAction, ThunkDispatch } from 'redux-thunk'\nimport deepEqual from '../utils/deepEqual'\n\nimport * as Documents from './modules/read-write-documents'\nimport * as ReactComponents from './modules/react-components'\nimport * as BoxModels from './modules/box-models'\nimport * as ComponentsMeta from './modules/components-meta'\nimport * as PropControllers from './modules/prop-controllers'\nimport * as PropControllerHandles from './modules/prop-controller-handles'\nimport * as ReactPage from './react-page'\nimport {\n Action,\n changeDocumentElementSize,\n changeElementBoxModels,\n messageBuilderPropController,\n registerBuilderComponent,\n registerMeasurable,\n registerPropControllers,\n registerPropControllersHandle,\n unregisterBuilderComponent,\n unregisterMeasurable,\n unregisterPropControllers,\n} from './actions'\nimport { ActionTypes } from './actions'\nimport { createPropController, PropController } from '../prop-controllers/instances'\nimport { ApolloClient, NormalizedCacheObject } from '@apollo/client'\nimport { Fragments } from '../api'\nimport { serializeControls } from '../builder'\n\nexport type { Operation } from './modules/read-write-documents'\nexport type { BoxModelHandle } from './modules/box-models'\nexport { createBox, getBox, parse } from './modules/box-models'\n\nconst reducer = combineReducers({\n documents: Documents.reducer,\n reactComponents: ReactComponents.reducer,\n boxModels: BoxModels.reducer,\n componentsMeta: ComponentsMeta.reducer,\n propControllers: PropControllers.reducer,\n propControllerHandles: PropControllerHandles.reducer,\n isInBuilder: (_state: boolean = true, _action: Action): boolean => true,\n})\n\nexport type State = ReturnType<typeof reducer>\n\nfunction getBoxModelsStateSlice(state: State): BoxModels.State {\n return state.boxModels\n}\n\nfunction getMeasurables(state: State): Map<string, Map<string, BoxModels.Measurable>> {\n return BoxModels.getMeasurables(getBoxModelsStateSlice(state))\n}\n\nfunction getBoxModels(state: State): Map<string, Map<string, BoxModels.BoxModel>> {\n return BoxModels.getBoxModels(getBoxModelsStateSlice(state))\n}\n\nfunction getBoxModel(\n state: State,\n documentKey: string,\n elementKey: string,\n): BoxModels.BoxModel | null {\n return BoxModels.getBoxModel(getBoxModelsStateSlice(state), documentKey, elementKey)\n}\n\nfunction getComponentsMetaStateSlice(state: State): ComponentsMeta.State {\n return state.componentsMeta\n}\n\nfunction getComponentsMeta(state: State): Map<string, ComponentsMeta.ComponentMeta> {\n return ComponentsMeta.getComponentsMeta(getComponentsMetaStateSlice(state))\n}\n\nfunction getPropControllersStateSlice(state: State): PropControllers.State {\n return state.propControllers\n}\n\nfunction getComponentPropControllerDescriptors(\n state: State,\n componentType: string,\n): Record<string, PropControllers.PropControllerDescriptor> | null {\n return PropControllers.getComponentPropControllerDescriptors(\n getPropControllersStateSlice(state),\n componentType,\n )\n}\n\nfunction getPropControllerHandlesStateSlice(state: State): PropControllerHandles.State {\n return state.propControllerHandles\n}\n\nfunction measureElements(): ThunkAction<void, State, unknown, Action> {\n return (dispatch, getState) => {\n const measurables = getMeasurables(getState())\n const currentBoxModels = getBoxModels(getState())\n const measuredBoxModels = new Map<string, Map<string, BoxModels.BoxModel>>()\n\n measurables.forEach((documentMeasurables, documentKey) => {\n const measuredDocumentBoxModels = new Map<string, BoxModels.BoxModel>()\n\n documentMeasurables.forEach((measurable, elementKey) => {\n const boxModel = BoxModels.measure(measurable)\n\n if (boxModel != null) measuredDocumentBoxModels.set(elementKey, boxModel)\n })\n\n if (measuredDocumentBoxModels.size > 0) {\n measuredBoxModels.set(documentKey, measuredDocumentBoxModels)\n }\n })\n\n const changedBoxModels = new Map<string, Map<string, BoxModels.BoxModel | null>>()\n\n currentBoxModels.forEach((currentDocumentBoxModels, documentKey) => {\n currentDocumentBoxModels.forEach((_boxModel, elementKey) => {\n const changedDocumentBoxModels = new Map<string, BoxModels.BoxModel | null>()\n\n if (!measuredBoxModels.get(documentKey)?.has(elementKey)) {\n changedDocumentBoxModels.set(elementKey, null)\n }\n\n if (changedDocumentBoxModels.size > 0) {\n changedBoxModels.set(documentKey, changedDocumentBoxModels)\n }\n })\n })\n\n measuredBoxModels.forEach((measuredDocumentBoxModels, documentKey) => {\n const changedDocumentBoxModels = new Map<string, BoxModels.BoxModel | null>()\n\n measuredDocumentBoxModels.forEach((measuredBoxModel, elementKey) => {\n const currentBoxModel = getBoxModel(getState(), documentKey, elementKey)\n\n if (currentBoxModel == null || !deepEqual(currentBoxModel, measuredBoxModel)) {\n changedDocumentBoxModels.set(elementKey, measuredBoxModel)\n }\n })\n\n if (changedDocumentBoxModels.size > 0) {\n changedBoxModels.set(documentKey, changedDocumentBoxModels)\n }\n })\n\n if (changedBoxModels.size > 0) dispatch(changeElementBoxModels(changedBoxModels))\n }\n}\n\nexport function startMeasuringElements(): ThunkAction<() => void, State, unknown, Action> {\n return dispatch => {\n let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n\n return () => {\n cancelAnimationFrame(animationFrameHandle)\n }\n\n function handleAnimationFrameRequest() {\n dispatch(measureElements())\n\n animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n }\n }\n}\n\nexport type Size = {\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\nfunction getElementSize(element: HTMLElement): Size {\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\nfunction startMeasuringDocumentElement(): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n let lastSize: Size\n\n return () => {\n cancelAnimationFrame(animationFrameHandle)\n }\n\n function handleAnimationFrameRequest() {\n const nextSize = getElementSize(window.document.documentElement)\n\n if (!deepEqual(lastSize, nextSize)) {\n lastSize = nextSize\n\n dispatch(changeDocumentElementSize(nextSize))\n }\n\n animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n }\n }\n}\n\nexport function initialize(): ThunkAction<() => void, State, unknown, Action> {\n return dispatch => {\n const stopMeasuringElements = dispatch(startMeasuringElements())\n const stopMeasuringDocumentElement = dispatch(startMeasuringDocumentElement())\n\n return () => {\n stopMeasuringElements()\n stopMeasuringDocumentElement()\n }\n }\n}\n\nexport type Dispatch = ThunkDispatch<State, unknown, Action>\n\nfunction measureBoxModelsMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return ({ dispatch }: MiddlewareAPI<Dispatch>) =>\n (next: ReduxDispatch<Action>) => {\n return (action: Action): Action => {\n switch (action.type) {\n case ActionTypes.REGISTER_COMPONENT_HANDLE: {\n if (BoxModels.isMeasurable(action.payload.componentHandle)) {\n dispatch(\n registerMeasurable(\n action.payload.documentKey,\n action.payload.elementKey,\n action.payload.componentHandle,\n ),\n )\n }\n\n break\n }\n\n case ActionTypes.UNREGISTER_COMPONENT_HANDLE:\n dispatch(unregisterMeasurable(action.payload.documentKey, action.payload.elementKey))\n break\n }\n\n return next(action)\n }\n }\n}\n\nexport function messageChannelMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return ({ dispatch, getState }: MiddlewareAPI<Dispatch, State>) =>\n (next: ReduxDispatch<Action>) => {\n const messageChannel = new MessageChannel()\n let cleanUp = () => {}\n\n window.parent.postMessage(messageChannel.port2, '*', [messageChannel.port2])\n\n messageChannel.port1.onmessage = (event: MessageEvent<Action>) => dispatch(event.data)\n\n const state = getState()\n const registeredComponentsMeta = getComponentsMeta(state)\n\n registeredComponentsMeta.forEach((componentMeta, componentType) => {\n const propControllerDescriptors = getComponentPropControllerDescriptors(\n state,\n componentType,\n )\n\n if (propControllerDescriptors != null) {\n const [serializedControls, transferables] = serializeControls(propControllerDescriptors)\n\n messageChannel.port1.postMessage(\n registerBuilderComponent(componentType, componentMeta, serializedControls),\n transferables,\n )\n }\n })\n\n return (action: Action): Action => {\n switch (action.type) {\n case ActionTypes.CHANGE_ELEMENT_BOX_MODELS:\n case ActionTypes.MOUNT_COMPONENT:\n case ActionTypes.UNMOUNT_COMPONENT:\n case ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE:\n case ActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER:\n messageChannel.port1.postMessage(action)\n break\n\n case ActionTypes.REGISTER_COMPONENT: {\n const { type, meta, propControllerDescriptors } = action.payload\n const [serializedControls, transferables] = serializeControls(propControllerDescriptors)\n\n messageChannel.port1.postMessage(\n registerBuilderComponent(type, meta, serializedControls),\n transferables,\n )\n break\n }\n\n case ActionTypes.UNREGISTER_COMPONENT:\n messageChannel.port1.postMessage(unregisterBuilderComponent(action.payload.type))\n break\n\n case ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP:\n window.document.documentElement.scrollTop = action.payload.scrollTop\n break\n\n case ActionTypes.INIT:\n cleanUp = dispatch(initialize())\n break\n\n case ActionTypes.CLEAN_UP:\n cleanUp()\n break\n }\n\n return next(action)\n }\n }\n}\n\nfunction createAndRegisterPropControllers(\n documentKey: string,\n elementKey: string,\n): ThunkAction<Record<string, PropController> | null, State, unknown, Action> {\n return (dispatch, getState) => {\n const descriptors = ReactPage.getElementPropControllerDescriptors(\n getState(),\n documentKey,\n elementKey,\n )\n\n if (descriptors == null) return null\n\n const propControllers = Object.entries(descriptors).reduce((acc, [propName, descriptor]) => {\n const propController = createPropController(descriptor, message =>\n dispatch(messageBuilderPropController(documentKey, elementKey, propName, message)),\n ) as PropController\n\n return { ...acc, [propName]: propController }\n }, {} as Record<string, PropController>)\n\n dispatch(registerPropControllers(documentKey, elementKey, propControllers))\n\n return propControllers\n }\n}\n\nfunction registerAndSetPropControllersHandle(\n documentKey: string,\n elementKey: string,\n handle: PropControllerHandles.PropControllersHandle,\n): ThunkAction<void, State, unknown, Action> {\n return dispatch => {\n dispatch(registerPropControllersHandle(documentKey, elementKey, handle))\n\n const propControllers = dispatch(createAndRegisterPropControllers(documentKey, elementKey))\n\n handle.setPropControllers(propControllers)\n }\n}\n\nfunction unregisterAndUnsetPropControllersHandle(\n documentKey: string,\n elementKey: string,\n): ThunkAction<void, State, unknown, Action> {\n return (dispatch, getState) => {\n const handle = PropControllerHandles.getPropControllersHandle(\n getPropControllerHandlesStateSlice(getState()),\n documentKey,\n elementKey,\n )\n\n handle?.setPropControllers(null)\n\n dispatch(unregisterPropControllers(documentKey, elementKey))\n }\n}\n\nfunction propControllerHandlesMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return ({ dispatch, getState }: MiddlewareAPI<Dispatch, State>) =>\n (next: ReduxDispatch<Action>) => {\n return (action: Action): Action => {\n switch (action.type) {\n case ActionTypes.REGISTER_COMPONENT_HANDLE: {\n if (PropControllerHandles.isPropControllersHandle(action.payload.componentHandle)) {\n dispatch(\n registerAndSetPropControllersHandle(\n action.payload.documentKey,\n action.payload.elementKey,\n action.payload.componentHandle,\n ),\n )\n }\n\n break\n }\n\n case ActionTypes.UNREGISTER_COMPONENT_HANDLE:\n dispatch(\n unregisterAndUnsetPropControllersHandle(\n action.payload.documentKey,\n action.payload.elementKey,\n ),\n )\n break\n\n case ActionTypes.MESSAGE_HOST_PROP_CONTROLLER: {\n const propController = PropControllerHandles.getPropController(\n getPropControllerHandlesStateSlice(getState()),\n action.payload.documentKey,\n action.payload.elementKey,\n action.payload.propName,\n )\n\n if (propController) propController.recv(action.payload.message)\n }\n }\n\n return next(action)\n }\n }\n}\n\nfunction apolloClientCacheSyncMiddleware(\n client: ApolloClient<NormalizedCacheObject>,\n): Middleware<Dispatch, State, Dispatch> {\n return () => (next: ReduxDispatch<Action>) => {\n return (action: Action): Action => {\n switch (action.type) {\n case ActionTypes.CHANGE_API_RESOURCE: {\n const { resource } = action.payload\n\n client.cache.writeFragment({\n id: client.cache.identify(resource),\n fragment: Fragments[resource.__typename],\n data: resource,\n })\n\n break\n }\n }\n\n return next(action)\n }\n }\n}\n\nexport type Store = ReduxStore<State, Action> & { dispatch: Dispatch }\n\nexport function configureStore({\n preloadedState,\n client,\n}: {\n preloadedState?: PreloadedState<State>\n client: ApolloClient<NormalizedCacheObject>\n}): Store {\n return createStore(\n reducer,\n preloadedState,\n applyMiddleware(\n thunk,\n measureBoxModelsMiddleware(),\n messageChannelMiddleware(),\n propControllerHandlesMiddleware(),\n apolloClientCacheSyncMiddleware(client),\n ),\n )\n}\n"],"names":["hasOwnProperty","removeIn","setIn","ReadOnlyDocuments.getInitialState","ReadOnlyDocuments.getDocumentRootElement","getInitialState","ActionTypes","ReadOnlyDocuments.createDocument","combineReducers","Documents.reducer","ReactComponents.reducer","BoxModels.reducer","ComponentsMeta.reducer","PropControllers.reducer","PropControllerHandles.reducer","BoxModels.getMeasurables","BoxModels.getBoxModels","BoxModels.getBoxModel","ComponentsMeta.getComponentsMeta","PropControllers.getComponentPropControllerDescriptors","BoxModels.measure","changeElementBoxModels","changeDocumentElementSize","BoxModels.isMeasurable","registerMeasurable","unregisterMeasurable","serializeControls","registerBuilderComponent","unregisterBuilderComponent","ReactPage.getElementPropControllerDescriptors","createPropController","messageBuilderPropController","registerPropControllers","registerPropControllersHandle","PropControllerHandles.getPropControllersHandle","unregisterPropControllers","PropControllerHandles.isPropControllersHandle","PropControllerHandles.getPropController","Fragments","createStore","applyMiddleware","thunk"],"mappings":"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"}
|
|
@@ -0,0 +1,448 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
+
import { combineReducers, createStore, applyMiddleware } from "redux";
|
|
21
|
+
import thunk from "redux-thunk";
|
|
22
|
+
import { removeIn, setIn } from "immutable";
|
|
23
|
+
import { A as getInitialState$2, F as getDocumentRootElement$1, G as createDocument, H as reducer$3, J as reducer$5, K as reducer$6, L as getComponentsMeta$1, M as getComponentPropControllerDescriptors$1, O as getElementPropControllerDescriptors } from "./react.es2.js";
|
|
24
|
+
import { A as ActionTypes, h as changeElementBoxModels, j as changeDocumentElementSize, k as registerBuilderComponent, u as unregisterBuilderComponent, l as unregisterMeasurable, n as registerMeasurable, o as unregisterPropControllers, p as registerPropControllersHandle, q as registerPropControllers, s as messageBuilderPropController } from "./actions.es.js";
|
|
25
|
+
import { r as reducer$4, a as getMeasurables$1, b as getBoxModels$1, m as measure, d as getBoxModel$1, i as isMeasurable } from "./box-models.es.js";
|
|
26
|
+
export { c as createBox, g as getBox, p as parse } from "./box-models.es.js";
|
|
27
|
+
import { c as createPropController } from "./instances.es.js";
|
|
28
|
+
import { F as Fragments } from "./constants.es.js";
|
|
29
|
+
import { s as serializeControls } from "./control-serialization.es.js";
|
|
30
|
+
import "react";
|
|
31
|
+
import "use-sync-external-store/shim/with-selector";
|
|
32
|
+
import "@apollo/client";
|
|
33
|
+
import "./descriptors.es.js";
|
|
34
|
+
import "styled-components";
|
|
35
|
+
import "framer-motion";
|
|
36
|
+
import "react/jsx-runtime";
|
|
37
|
+
import "next/image";
|
|
38
|
+
import "react-player";
|
|
39
|
+
import "color";
|
|
40
|
+
import "scroll-into-view-if-needed";
|
|
41
|
+
import "next/link";
|
|
42
|
+
import "react-use-gesture";
|
|
43
|
+
import "@popmotion/popcorn";
|
|
44
|
+
import "uuid/v4";
|
|
45
|
+
import "polished";
|
|
46
|
+
import "slate";
|
|
47
|
+
import "slate-hotkeys";
|
|
48
|
+
import "corporate-ipsum";
|
|
49
|
+
import "slate-react";
|
|
50
|
+
import "@convertkit/slate-lists";
|
|
51
|
+
import "css-box-model";
|
|
52
|
+
function is(x, y) {
|
|
53
|
+
if (x === y)
|
|
54
|
+
return x !== 0 || y !== 0 || 1 / x === 1 / y;
|
|
55
|
+
return x !== x && y !== y;
|
|
56
|
+
}
|
|
57
|
+
const { hasOwnProperty: hasOwnProperty$1 } = Object.prototype;
|
|
58
|
+
const shallowEqual = (a, b) => {
|
|
59
|
+
if (is(a, b))
|
|
60
|
+
return true;
|
|
61
|
+
if (typeof a !== "object" || a === null || typeof b !== "object" || b === null)
|
|
62
|
+
return false;
|
|
63
|
+
const keysA = Object.keys(a);
|
|
64
|
+
const keysB = Object.keys(b);
|
|
65
|
+
if (keysA.length !== keysB.length)
|
|
66
|
+
return false;
|
|
67
|
+
for (let i = 0; i < keysA.length; i += 1) {
|
|
68
|
+
if (!hasOwnProperty$1.call(b, keysA[i]) || !is(a[keysA[i]], b[keysA[i]]))
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
return true;
|
|
72
|
+
};
|
|
73
|
+
const { hasOwnProperty } = Object.prototype;
|
|
74
|
+
const deepEqual = (a, b) => {
|
|
75
|
+
if (shallowEqual(a, b))
|
|
76
|
+
return true;
|
|
77
|
+
if (typeof a !== "object" || a === null || typeof b !== "object" || b === null)
|
|
78
|
+
return false;
|
|
79
|
+
const keysA = Object.keys(a);
|
|
80
|
+
const keysB = Object.keys(b);
|
|
81
|
+
if (keysA.length !== keysB.length)
|
|
82
|
+
return false;
|
|
83
|
+
for (let i = 0; i < keysA.length; i += 1) {
|
|
84
|
+
if (!hasOwnProperty.call(b, keysA[i]) || !deepEqual(a[keysA[i]], b[keysA[i]]))
|
|
85
|
+
return false;
|
|
86
|
+
}
|
|
87
|
+
return true;
|
|
88
|
+
};
|
|
89
|
+
function apply(data, operation) {
|
|
90
|
+
let applied = data;
|
|
91
|
+
operation.forEach((component) => {
|
|
92
|
+
if (component.ld != null)
|
|
93
|
+
applied = removeIn(applied, component.p);
|
|
94
|
+
if (component.od != null)
|
|
95
|
+
applied = removeIn(applied, component.p);
|
|
96
|
+
if (component.li != null)
|
|
97
|
+
applied = setIn(applied, component.p, component.li);
|
|
98
|
+
if (component.oi != null)
|
|
99
|
+
applied = setIn(applied, component.p, component.oi);
|
|
100
|
+
});
|
|
101
|
+
return applied;
|
|
102
|
+
}
|
|
103
|
+
function getInitialState$1({
|
|
104
|
+
rootElements
|
|
105
|
+
} = {}) {
|
|
106
|
+
return getInitialState$2({ rootElements });
|
|
107
|
+
}
|
|
108
|
+
function getReadOnlyDocumentsStateSlice(state) {
|
|
109
|
+
return state;
|
|
110
|
+
}
|
|
111
|
+
function getDocumentRootElement(state, documentKey) {
|
|
112
|
+
return getDocumentRootElement$1(getReadOnlyDocumentsStateSlice(state), documentKey);
|
|
113
|
+
}
|
|
114
|
+
function reducer$2(state = getInitialState$1(), action) {
|
|
115
|
+
switch (action.type) {
|
|
116
|
+
case ActionTypes.CHANGE_DOCUMENT: {
|
|
117
|
+
const currentRootElement = getDocumentRootElement(state, action.payload.documentKey);
|
|
118
|
+
if (currentRootElement == null)
|
|
119
|
+
return state;
|
|
120
|
+
const nextRootElement = apply(currentRootElement, action.payload.operation);
|
|
121
|
+
return currentRootElement === nextRootElement ? state : new Map(state).set(action.payload.documentKey, createDocument(nextRootElement));
|
|
122
|
+
}
|
|
123
|
+
default:
|
|
124
|
+
return state;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
function isPropControllersHandle(value) {
|
|
128
|
+
if (typeof value === "object" && value !== null && "setPropControllers" in value && typeof value.setPropControllers === "function") {
|
|
129
|
+
return true;
|
|
130
|
+
}
|
|
131
|
+
return false;
|
|
132
|
+
}
|
|
133
|
+
function getInitialState() {
|
|
134
|
+
return { handles: /* @__PURE__ */ new Map(), instances: /* @__PURE__ */ new Map() };
|
|
135
|
+
}
|
|
136
|
+
function getPropControllersHandle(state, documentKey, elementKey) {
|
|
137
|
+
var _a, _b;
|
|
138
|
+
return (_b = (_a = state.handles.get(documentKey)) == null ? void 0 : _a.get(elementKey)) != null ? _b : null;
|
|
139
|
+
}
|
|
140
|
+
function getPropController(state, documentKey, elementKey, propName) {
|
|
141
|
+
var _a, _b, _c;
|
|
142
|
+
return (_c = (_b = (_a = state.instances.get(documentKey)) == null ? void 0 : _a.get(elementKey)) == null ? void 0 : _b[propName]) != null ? _c : null;
|
|
143
|
+
}
|
|
144
|
+
function reducer$1(state = getInitialState(), action) {
|
|
145
|
+
var _a, _b, _c, _d;
|
|
146
|
+
switch (action.type) {
|
|
147
|
+
case ActionTypes.REGISTER_PROP_CONTROLLERS_HANDLE: {
|
|
148
|
+
const { documentKey, elementKey, handle } = action.payload;
|
|
149
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
150
|
+
handles: new Map(state.handles).set(documentKey, new Map((_a = state.handles.get(documentKey)) != null ? _a : []).set(elementKey, handle))
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
case ActionTypes.UNREGISTER_PROP_CONTROLLERS_HANDLE: {
|
|
154
|
+
const { documentKey, elementKey } = action.payload;
|
|
155
|
+
const nextHandles = new Map((_b = state.handles.get(documentKey)) != null ? _b : []);
|
|
156
|
+
const deleted = nextHandles.delete(elementKey);
|
|
157
|
+
return deleted ? __spreadProps(__spreadValues({}, state), { handles: new Map(state.handles).set(documentKey, nextHandles) }) : state;
|
|
158
|
+
}
|
|
159
|
+
case ActionTypes.REGISTER_PROP_CONTROLLERS: {
|
|
160
|
+
const { documentKey, elementKey, propControllers } = action.payload;
|
|
161
|
+
return __spreadProps(__spreadValues({}, state), {
|
|
162
|
+
instances: new Map(state.instances).set(documentKey, new Map((_c = state.instances.get(documentKey)) != null ? _c : []).set(elementKey, propControllers))
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
case ActionTypes.UNREGISTER_PROP_CONTROLLERS: {
|
|
166
|
+
const { documentKey, elementKey } = action.payload;
|
|
167
|
+
const nextInstances = new Map((_d = state.instances.get(documentKey)) != null ? _d : []);
|
|
168
|
+
const deleted = nextInstances.delete(elementKey);
|
|
169
|
+
return deleted ? __spreadProps(__spreadValues({}, state), { instances: new Map(state.instances).set(documentKey, nextInstances) }) : state;
|
|
170
|
+
}
|
|
171
|
+
default:
|
|
172
|
+
return state;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
const reducer = combineReducers({
|
|
176
|
+
documents: reducer$2,
|
|
177
|
+
reactComponents: reducer$3,
|
|
178
|
+
boxModels: reducer$4,
|
|
179
|
+
componentsMeta: reducer$5,
|
|
180
|
+
propControllers: reducer$6,
|
|
181
|
+
propControllerHandles: reducer$1,
|
|
182
|
+
isInBuilder: (_state = true, _action) => true
|
|
183
|
+
});
|
|
184
|
+
function getBoxModelsStateSlice(state) {
|
|
185
|
+
return state.boxModels;
|
|
186
|
+
}
|
|
187
|
+
function getMeasurables(state) {
|
|
188
|
+
return getMeasurables$1(getBoxModelsStateSlice(state));
|
|
189
|
+
}
|
|
190
|
+
function getBoxModels(state) {
|
|
191
|
+
return getBoxModels$1(getBoxModelsStateSlice(state));
|
|
192
|
+
}
|
|
193
|
+
function getBoxModel(state, documentKey, elementKey) {
|
|
194
|
+
return getBoxModel$1(getBoxModelsStateSlice(state), documentKey, elementKey);
|
|
195
|
+
}
|
|
196
|
+
function getComponentsMetaStateSlice(state) {
|
|
197
|
+
return state.componentsMeta;
|
|
198
|
+
}
|
|
199
|
+
function getComponentsMeta(state) {
|
|
200
|
+
return getComponentsMeta$1(getComponentsMetaStateSlice(state));
|
|
201
|
+
}
|
|
202
|
+
function getPropControllersStateSlice(state) {
|
|
203
|
+
return state.propControllers;
|
|
204
|
+
}
|
|
205
|
+
function getComponentPropControllerDescriptors(state, componentType) {
|
|
206
|
+
return getComponentPropControllerDescriptors$1(getPropControllersStateSlice(state), componentType);
|
|
207
|
+
}
|
|
208
|
+
function getPropControllerHandlesStateSlice(state) {
|
|
209
|
+
return state.propControllerHandles;
|
|
210
|
+
}
|
|
211
|
+
function measureElements() {
|
|
212
|
+
return (dispatch, getState) => {
|
|
213
|
+
const measurables = getMeasurables(getState());
|
|
214
|
+
const currentBoxModels = getBoxModels(getState());
|
|
215
|
+
const measuredBoxModels = /* @__PURE__ */ new Map();
|
|
216
|
+
measurables.forEach((documentMeasurables, documentKey) => {
|
|
217
|
+
const measuredDocumentBoxModels = /* @__PURE__ */ new Map();
|
|
218
|
+
documentMeasurables.forEach((measurable, elementKey) => {
|
|
219
|
+
const boxModel = measure(measurable);
|
|
220
|
+
if (boxModel != null)
|
|
221
|
+
measuredDocumentBoxModels.set(elementKey, boxModel);
|
|
222
|
+
});
|
|
223
|
+
if (measuredDocumentBoxModels.size > 0) {
|
|
224
|
+
measuredBoxModels.set(documentKey, measuredDocumentBoxModels);
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
const changedBoxModels = /* @__PURE__ */ new Map();
|
|
228
|
+
currentBoxModels.forEach((currentDocumentBoxModels, documentKey) => {
|
|
229
|
+
currentDocumentBoxModels.forEach((_boxModel, elementKey) => {
|
|
230
|
+
var _a;
|
|
231
|
+
const changedDocumentBoxModels = /* @__PURE__ */ new Map();
|
|
232
|
+
if (!((_a = measuredBoxModels.get(documentKey)) == null ? void 0 : _a.has(elementKey))) {
|
|
233
|
+
changedDocumentBoxModels.set(elementKey, null);
|
|
234
|
+
}
|
|
235
|
+
if (changedDocumentBoxModels.size > 0) {
|
|
236
|
+
changedBoxModels.set(documentKey, changedDocumentBoxModels);
|
|
237
|
+
}
|
|
238
|
+
});
|
|
239
|
+
});
|
|
240
|
+
measuredBoxModels.forEach((measuredDocumentBoxModels, documentKey) => {
|
|
241
|
+
const changedDocumentBoxModels = /* @__PURE__ */ new Map();
|
|
242
|
+
measuredDocumentBoxModels.forEach((measuredBoxModel, elementKey) => {
|
|
243
|
+
const currentBoxModel = getBoxModel(getState(), documentKey, elementKey);
|
|
244
|
+
if (currentBoxModel == null || !deepEqual(currentBoxModel, measuredBoxModel)) {
|
|
245
|
+
changedDocumentBoxModels.set(elementKey, measuredBoxModel);
|
|
246
|
+
}
|
|
247
|
+
});
|
|
248
|
+
if (changedDocumentBoxModels.size > 0) {
|
|
249
|
+
changedBoxModels.set(documentKey, changedDocumentBoxModels);
|
|
250
|
+
}
|
|
251
|
+
});
|
|
252
|
+
if (changedBoxModels.size > 0)
|
|
253
|
+
dispatch(changeElementBoxModels(changedBoxModels));
|
|
254
|
+
};
|
|
255
|
+
}
|
|
256
|
+
function startMeasuringElements() {
|
|
257
|
+
return (dispatch) => {
|
|
258
|
+
let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
|
|
259
|
+
return () => {
|
|
260
|
+
cancelAnimationFrame(animationFrameHandle);
|
|
261
|
+
};
|
|
262
|
+
function handleAnimationFrameRequest() {
|
|
263
|
+
dispatch(measureElements());
|
|
264
|
+
animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
|
|
265
|
+
}
|
|
266
|
+
};
|
|
267
|
+
}
|
|
268
|
+
function getElementSize(element) {
|
|
269
|
+
return {
|
|
270
|
+
offsetWidth: element.offsetWidth,
|
|
271
|
+
offsetHeight: element.offsetHeight,
|
|
272
|
+
clientWidth: element.clientWidth,
|
|
273
|
+
clientHeight: element.clientHeight,
|
|
274
|
+
scrollWidth: element.scrollWidth,
|
|
275
|
+
scrollHeight: element.scrollHeight,
|
|
276
|
+
scrollTop: element.scrollTop,
|
|
277
|
+
scrollLeft: element.scrollLeft
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
function startMeasuringDocumentElement() {
|
|
281
|
+
return (dispatch) => {
|
|
282
|
+
let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
|
|
283
|
+
let lastSize;
|
|
284
|
+
return () => {
|
|
285
|
+
cancelAnimationFrame(animationFrameHandle);
|
|
286
|
+
};
|
|
287
|
+
function handleAnimationFrameRequest() {
|
|
288
|
+
const nextSize = getElementSize(window.document.documentElement);
|
|
289
|
+
if (!deepEqual(lastSize, nextSize)) {
|
|
290
|
+
lastSize = nextSize;
|
|
291
|
+
dispatch(changeDocumentElementSize(nextSize));
|
|
292
|
+
}
|
|
293
|
+
animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
|
|
294
|
+
}
|
|
295
|
+
};
|
|
296
|
+
}
|
|
297
|
+
function initialize() {
|
|
298
|
+
return (dispatch) => {
|
|
299
|
+
const stopMeasuringElements = dispatch(startMeasuringElements());
|
|
300
|
+
const stopMeasuringDocumentElement = dispatch(startMeasuringDocumentElement());
|
|
301
|
+
return () => {
|
|
302
|
+
stopMeasuringElements();
|
|
303
|
+
stopMeasuringDocumentElement();
|
|
304
|
+
};
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
function measureBoxModelsMiddleware() {
|
|
308
|
+
return ({ dispatch }) => (next) => {
|
|
309
|
+
return (action) => {
|
|
310
|
+
switch (action.type) {
|
|
311
|
+
case ActionTypes.REGISTER_COMPONENT_HANDLE: {
|
|
312
|
+
if (isMeasurable(action.payload.componentHandle)) {
|
|
313
|
+
dispatch(registerMeasurable(action.payload.documentKey, action.payload.elementKey, action.payload.componentHandle));
|
|
314
|
+
}
|
|
315
|
+
break;
|
|
316
|
+
}
|
|
317
|
+
case ActionTypes.UNREGISTER_COMPONENT_HANDLE:
|
|
318
|
+
dispatch(unregisterMeasurable(action.payload.documentKey, action.payload.elementKey));
|
|
319
|
+
break;
|
|
320
|
+
}
|
|
321
|
+
return next(action);
|
|
322
|
+
};
|
|
323
|
+
};
|
|
324
|
+
}
|
|
325
|
+
function messageChannelMiddleware() {
|
|
326
|
+
return ({ dispatch, getState }) => (next) => {
|
|
327
|
+
const messageChannel = new MessageChannel();
|
|
328
|
+
let cleanUp = () => {
|
|
329
|
+
};
|
|
330
|
+
window.parent.postMessage(messageChannel.port2, "*", [messageChannel.port2]);
|
|
331
|
+
messageChannel.port1.onmessage = (event) => dispatch(event.data);
|
|
332
|
+
const state = getState();
|
|
333
|
+
const registeredComponentsMeta = getComponentsMeta(state);
|
|
334
|
+
registeredComponentsMeta.forEach((componentMeta, componentType) => {
|
|
335
|
+
const propControllerDescriptors = getComponentPropControllerDescriptors(state, componentType);
|
|
336
|
+
if (propControllerDescriptors != null) {
|
|
337
|
+
const [serializedControls, transferables] = serializeControls(propControllerDescriptors);
|
|
338
|
+
messageChannel.port1.postMessage(registerBuilderComponent(componentType, componentMeta, serializedControls), transferables);
|
|
339
|
+
}
|
|
340
|
+
});
|
|
341
|
+
return (action) => {
|
|
342
|
+
switch (action.type) {
|
|
343
|
+
case ActionTypes.CHANGE_ELEMENT_BOX_MODELS:
|
|
344
|
+
case ActionTypes.MOUNT_COMPONENT:
|
|
345
|
+
case ActionTypes.UNMOUNT_COMPONENT:
|
|
346
|
+
case ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE:
|
|
347
|
+
case ActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER:
|
|
348
|
+
messageChannel.port1.postMessage(action);
|
|
349
|
+
break;
|
|
350
|
+
case ActionTypes.REGISTER_COMPONENT: {
|
|
351
|
+
const { type, meta, propControllerDescriptors } = action.payload;
|
|
352
|
+
const [serializedControls, transferables] = serializeControls(propControllerDescriptors);
|
|
353
|
+
messageChannel.port1.postMessage(registerBuilderComponent(type, meta, serializedControls), transferables);
|
|
354
|
+
break;
|
|
355
|
+
}
|
|
356
|
+
case ActionTypes.UNREGISTER_COMPONENT:
|
|
357
|
+
messageChannel.port1.postMessage(unregisterBuilderComponent(action.payload.type));
|
|
358
|
+
break;
|
|
359
|
+
case ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP:
|
|
360
|
+
window.document.documentElement.scrollTop = action.payload.scrollTop;
|
|
361
|
+
break;
|
|
362
|
+
case ActionTypes.INIT:
|
|
363
|
+
cleanUp = dispatch(initialize());
|
|
364
|
+
break;
|
|
365
|
+
case ActionTypes.CLEAN_UP:
|
|
366
|
+
cleanUp();
|
|
367
|
+
break;
|
|
368
|
+
}
|
|
369
|
+
return next(action);
|
|
370
|
+
};
|
|
371
|
+
};
|
|
372
|
+
}
|
|
373
|
+
function createAndRegisterPropControllers(documentKey, elementKey) {
|
|
374
|
+
return (dispatch, getState) => {
|
|
375
|
+
const descriptors = getElementPropControllerDescriptors(getState(), documentKey, elementKey);
|
|
376
|
+
if (descriptors == null)
|
|
377
|
+
return null;
|
|
378
|
+
const propControllers = Object.entries(descriptors).reduce((acc, [propName, descriptor]) => {
|
|
379
|
+
const propController = createPropController(descriptor, (message) => dispatch(messageBuilderPropController(documentKey, elementKey, propName, message)));
|
|
380
|
+
return __spreadProps(__spreadValues({}, acc), { [propName]: propController });
|
|
381
|
+
}, {});
|
|
382
|
+
dispatch(registerPropControllers(documentKey, elementKey, propControllers));
|
|
383
|
+
return propControllers;
|
|
384
|
+
};
|
|
385
|
+
}
|
|
386
|
+
function registerAndSetPropControllersHandle(documentKey, elementKey, handle) {
|
|
387
|
+
return (dispatch) => {
|
|
388
|
+
dispatch(registerPropControllersHandle(documentKey, elementKey, handle));
|
|
389
|
+
const propControllers = dispatch(createAndRegisterPropControllers(documentKey, elementKey));
|
|
390
|
+
handle.setPropControllers(propControllers);
|
|
391
|
+
};
|
|
392
|
+
}
|
|
393
|
+
function unregisterAndUnsetPropControllersHandle(documentKey, elementKey) {
|
|
394
|
+
return (dispatch, getState) => {
|
|
395
|
+
const handle = getPropControllersHandle(getPropControllerHandlesStateSlice(getState()), documentKey, elementKey);
|
|
396
|
+
handle == null ? void 0 : handle.setPropControllers(null);
|
|
397
|
+
dispatch(unregisterPropControllers(documentKey, elementKey));
|
|
398
|
+
};
|
|
399
|
+
}
|
|
400
|
+
function propControllerHandlesMiddleware() {
|
|
401
|
+
return ({ dispatch, getState }) => (next) => {
|
|
402
|
+
return (action) => {
|
|
403
|
+
switch (action.type) {
|
|
404
|
+
case ActionTypes.REGISTER_COMPONENT_HANDLE: {
|
|
405
|
+
if (isPropControllersHandle(action.payload.componentHandle)) {
|
|
406
|
+
dispatch(registerAndSetPropControllersHandle(action.payload.documentKey, action.payload.elementKey, action.payload.componentHandle));
|
|
407
|
+
}
|
|
408
|
+
break;
|
|
409
|
+
}
|
|
410
|
+
case ActionTypes.UNREGISTER_COMPONENT_HANDLE:
|
|
411
|
+
dispatch(unregisterAndUnsetPropControllersHandle(action.payload.documentKey, action.payload.elementKey));
|
|
412
|
+
break;
|
|
413
|
+
case ActionTypes.MESSAGE_HOST_PROP_CONTROLLER: {
|
|
414
|
+
const propController = getPropController(getPropControllerHandlesStateSlice(getState()), action.payload.documentKey, action.payload.elementKey, action.payload.propName);
|
|
415
|
+
if (propController)
|
|
416
|
+
propController.recv(action.payload.message);
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
return next(action);
|
|
420
|
+
};
|
|
421
|
+
};
|
|
422
|
+
}
|
|
423
|
+
function apolloClientCacheSyncMiddleware(client) {
|
|
424
|
+
return () => (next) => {
|
|
425
|
+
return (action) => {
|
|
426
|
+
switch (action.type) {
|
|
427
|
+
case ActionTypes.CHANGE_API_RESOURCE: {
|
|
428
|
+
const { resource } = action.payload;
|
|
429
|
+
client.cache.writeFragment({
|
|
430
|
+
id: client.cache.identify(resource),
|
|
431
|
+
fragment: Fragments[resource.__typename],
|
|
432
|
+
data: resource
|
|
433
|
+
});
|
|
434
|
+
break;
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
return next(action);
|
|
438
|
+
};
|
|
439
|
+
};
|
|
440
|
+
}
|
|
441
|
+
function configureStore({
|
|
442
|
+
preloadedState,
|
|
443
|
+
client
|
|
444
|
+
}) {
|
|
445
|
+
return createStore(reducer, preloadedState, applyMiddleware(thunk, measureBoxModelsMiddleware(), messageChannelMiddleware(), propControllerHandlesMiddleware(), apolloClientCacheSyncMiddleware(client)));
|
|
446
|
+
}
|
|
447
|
+
export { configureStore, initialize, messageChannelMiddleware, startMeasuringElements };
|
|
448
|
+
//# sourceMappingURL=react-builder-preview.es.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-builder-preview.es.js","sources":["../src/utils/is.ts","../src/utils/shallowEqual.ts","../src/utils/deepEqual.ts","../src/state/modules/read-write-documents.ts","../src/state/modules/prop-controller-handles.ts","../src/state/react-builder-preview.ts"],"sourcesContent":["export default function is(x: unknown, y: unknown): boolean {\n if (x === y) return x !== 0 || y !== 0 || 1 / x === 1 / y\n\n return x !== x && y !== y\n}\n","import is from './is'\n\nconst { hasOwnProperty } = Object.prototype\n\nconst shallowEqual = (a: unknown, b: unknown): boolean => {\n if (is(a, b)) return true\n\n if (typeof a !== 'object' || a === null || typeof b !== 'object' || b === null) return false\n\n const keysA = Object.keys(a)\n const keysB = Object.keys(b)\n\n if (keysA.length !== keysB.length) return false\n\n for (let i = 0; i < keysA.length; i += 1) {\n // @ts-expect-error: {}[string] is OK.\n if (!hasOwnProperty.call(b, keysA[i]) || !is(a[keysA[i]], b[keysA[i]])) return false\n }\n\n return true\n}\n\nexport default shallowEqual\n","import shallowEqual from './shallowEqual'\n\nconst { hasOwnProperty } = Object.prototype\n\nconst deepEqual = (a: unknown, b: unknown): boolean => {\n if (shallowEqual(a, b)) return true\n\n if (typeof a !== 'object' || a === null || typeof b !== 'object' || b === null) return false\n\n const keysA = Object.keys(a)\n const keysB = Object.keys(b)\n\n if (keysA.length !== keysB.length) return false\n\n for (let i = 0; i < keysA.length; i += 1) {\n if (\n !hasOwnProperty.call(b, keysA[i]) ||\n // @ts-expect-error: {}[string] is OK.\n !deepEqual(a[keysA[i]], b[keysA[i]])\n )\n return false\n }\n\n return true\n}\n\nexport default deepEqual\n","import { Operation } from 'ot-json0'\nimport { removeIn, setIn } from 'immutable'\n\nimport * as ReadOnlyDocuments from './read-only-documents'\nimport { Action, ActionTypes } from '../actions'\n\nexport type { Document, Element, ElementData, ElementReference } from './read-only-documents'\nexport { isElementReference } from './read-only-documents'\nexport type { Operation }\n\nfunction apply(data: ReadOnlyDocuments.Element, operation: Operation): ReadOnlyDocuments.Element {\n let applied = data\n\n operation.forEach(component => {\n // @ts-expect-error: `ld` isn't in all possible values of `component`\n if (component.ld != null) applied = removeIn(applied, component.p)\n\n // @ts-expect-error: `od` isn't in all possible values of `component`\n if (component.od != null) applied = removeIn(applied, component.p)\n\n // @ts-expect-error: `li` isn't in all possible values of `component`\n if (component.li != null) applied = setIn(applied, component.p, component.li)\n\n // @ts-expect-error: `oi` isn't in all possible values of `component`\n if (component.oi != null) applied = setIn(applied, component.p, component.oi)\n })\n\n return applied\n}\n\nexport type State = ReadOnlyDocuments.State\n\nexport function getInitialState({\n rootElements,\n}: {\n rootElements?: Map<string, ReadOnlyDocuments.Element>\n} = {}): State {\n return ReadOnlyDocuments.getInitialState({ rootElements })\n}\n\nfunction getReadOnlyDocumentsStateSlice(state: State): ReadOnlyDocuments.State {\n return state\n}\n\nexport function getDocumentRootElement(\n state: State,\n documentKey: string,\n): ReadOnlyDocuments.Element | null {\n return ReadOnlyDocuments.getDocumentRootElement(\n getReadOnlyDocumentsStateSlice(state),\n documentKey,\n )\n}\n\nexport function reducer(state: State = getInitialState(), action: Action): State {\n switch (action.type) {\n case ActionTypes.CHANGE_DOCUMENT: {\n const currentRootElement = getDocumentRootElement(state, action.payload.documentKey)\n\n if (currentRootElement == null) return state\n\n const nextRootElement = apply(currentRootElement, action.payload.operation)\n\n return currentRootElement === nextRootElement\n ? state\n : new Map(state).set(\n action.payload.documentKey,\n ReadOnlyDocuments.createDocument(nextRootElement),\n )\n }\n\n default:\n return state\n }\n}\n","import { Action, ActionTypes } from '../actions'\nimport type { DescriptorsPropControllers, PropController } from '../../prop-controllers/instances'\nimport type { Descriptor } from '../../prop-controllers/descriptors'\n\nexport interface PropControllersHandle<\n T extends Record<string, Descriptor> = Record<string, Descriptor>,\n> {\n setPropControllers(propControllers: DescriptorsPropControllers<T> | null): void\n}\n\nexport function isPropControllersHandle(value: unknown): value is PropControllersHandle {\n if (\n typeof value === 'object' &&\n value !== null &&\n 'setPropControllers' in value &&\n typeof (value as { setPropControllers: unknown }).setPropControllers === 'function'\n ) {\n return true\n }\n\n return false\n}\n\nexport type State = {\n handles: Map<string, Map<string, PropControllersHandle>>\n instances: Map<string, Map<string, Record<string, PropController>>>\n}\n\nexport function getInitialState(): State {\n return { handles: new Map(), instances: new Map() }\n}\n\nexport function getPropControllersHandle(\n state: State,\n documentKey: string,\n elementKey: string,\n): PropControllersHandle | null {\n return state.handles.get(documentKey)?.get(elementKey) ?? null\n}\n\nexport function getPropController(\n state: State,\n documentKey: string,\n elementKey: string,\n propName: string,\n): PropController | null {\n return state.instances.get(documentKey)?.get(elementKey)?.[propName] ?? null\n}\n\nexport function reducer(state: State = getInitialState(), action: Action): State {\n switch (action.type) {\n case ActionTypes.REGISTER_PROP_CONTROLLERS_HANDLE: {\n const { documentKey, elementKey, handle } = action.payload\n\n return {\n ...state,\n handles: new Map(state.handles).set(\n documentKey,\n new Map(state.handles.get(documentKey) ?? []).set(elementKey, handle),\n ),\n }\n }\n\n case ActionTypes.UNREGISTER_PROP_CONTROLLERS_HANDLE: {\n const { documentKey, elementKey } = action.payload\n const nextHandles = new Map(state.handles.get(documentKey) ?? [])\n\n const deleted = nextHandles.delete(elementKey)\n\n return deleted\n ? { ...state, handles: new Map(state.handles).set(documentKey, nextHandles) }\n : state\n }\n\n case ActionTypes.REGISTER_PROP_CONTROLLERS: {\n const { documentKey, elementKey, propControllers } = action.payload\n\n return {\n ...state,\n instances: new Map(state.instances).set(\n documentKey,\n new Map(state.instances.get(documentKey) ?? []).set(elementKey, propControllers),\n ),\n }\n }\n\n case ActionTypes.UNREGISTER_PROP_CONTROLLERS: {\n const { documentKey, elementKey } = action.payload\n const nextInstances = new Map(state.instances.get(documentKey) ?? [])\n\n const deleted = nextInstances.delete(elementKey)\n\n return deleted\n ? { ...state, instances: new Map(state.instances).set(documentKey, nextInstances) }\n : state\n }\n\n default:\n return state\n }\n}\n","import {\n applyMiddleware,\n combineReducers,\n createStore,\n Dispatch as ReduxDispatch,\n Middleware,\n MiddlewareAPI,\n PreloadedState,\n Store as ReduxStore,\n} from 'redux'\nimport thunk, { ThunkAction, ThunkDispatch } from 'redux-thunk'\nimport deepEqual from '../utils/deepEqual'\n\nimport * as Documents from './modules/read-write-documents'\nimport * as ReactComponents from './modules/react-components'\nimport * as BoxModels from './modules/box-models'\nimport * as ComponentsMeta from './modules/components-meta'\nimport * as PropControllers from './modules/prop-controllers'\nimport * as PropControllerHandles from './modules/prop-controller-handles'\nimport * as ReactPage from './react-page'\nimport {\n Action,\n changeDocumentElementSize,\n changeElementBoxModels,\n messageBuilderPropController,\n registerBuilderComponent,\n registerMeasurable,\n registerPropControllers,\n registerPropControllersHandle,\n unregisterBuilderComponent,\n unregisterMeasurable,\n unregisterPropControllers,\n} from './actions'\nimport { ActionTypes } from './actions'\nimport { createPropController, PropController } from '../prop-controllers/instances'\nimport { ApolloClient, NormalizedCacheObject } from '@apollo/client'\nimport { Fragments } from '../api'\nimport { serializeControls } from '../builder'\n\nexport type { Operation } from './modules/read-write-documents'\nexport type { BoxModelHandle } from './modules/box-models'\nexport { createBox, getBox, parse } from './modules/box-models'\n\nconst reducer = combineReducers({\n documents: Documents.reducer,\n reactComponents: ReactComponents.reducer,\n boxModels: BoxModels.reducer,\n componentsMeta: ComponentsMeta.reducer,\n propControllers: PropControllers.reducer,\n propControllerHandles: PropControllerHandles.reducer,\n isInBuilder: (_state: boolean = true, _action: Action): boolean => true,\n})\n\nexport type State = ReturnType<typeof reducer>\n\nfunction getBoxModelsStateSlice(state: State): BoxModels.State {\n return state.boxModels\n}\n\nfunction getMeasurables(state: State): Map<string, Map<string, BoxModels.Measurable>> {\n return BoxModels.getMeasurables(getBoxModelsStateSlice(state))\n}\n\nfunction getBoxModels(state: State): Map<string, Map<string, BoxModels.BoxModel>> {\n return BoxModels.getBoxModels(getBoxModelsStateSlice(state))\n}\n\nfunction getBoxModel(\n state: State,\n documentKey: string,\n elementKey: string,\n): BoxModels.BoxModel | null {\n return BoxModels.getBoxModel(getBoxModelsStateSlice(state), documentKey, elementKey)\n}\n\nfunction getComponentsMetaStateSlice(state: State): ComponentsMeta.State {\n return state.componentsMeta\n}\n\nfunction getComponentsMeta(state: State): Map<string, ComponentsMeta.ComponentMeta> {\n return ComponentsMeta.getComponentsMeta(getComponentsMetaStateSlice(state))\n}\n\nfunction getPropControllersStateSlice(state: State): PropControllers.State {\n return state.propControllers\n}\n\nfunction getComponentPropControllerDescriptors(\n state: State,\n componentType: string,\n): Record<string, PropControllers.PropControllerDescriptor> | null {\n return PropControllers.getComponentPropControllerDescriptors(\n getPropControllersStateSlice(state),\n componentType,\n )\n}\n\nfunction getPropControllerHandlesStateSlice(state: State): PropControllerHandles.State {\n return state.propControllerHandles\n}\n\nfunction measureElements(): ThunkAction<void, State, unknown, Action> {\n return (dispatch, getState) => {\n const measurables = getMeasurables(getState())\n const currentBoxModels = getBoxModels(getState())\n const measuredBoxModels = new Map<string, Map<string, BoxModels.BoxModel>>()\n\n measurables.forEach((documentMeasurables, documentKey) => {\n const measuredDocumentBoxModels = new Map<string, BoxModels.BoxModel>()\n\n documentMeasurables.forEach((measurable, elementKey) => {\n const boxModel = BoxModels.measure(measurable)\n\n if (boxModel != null) measuredDocumentBoxModels.set(elementKey, boxModel)\n })\n\n if (measuredDocumentBoxModels.size > 0) {\n measuredBoxModels.set(documentKey, measuredDocumentBoxModels)\n }\n })\n\n const changedBoxModels = new Map<string, Map<string, BoxModels.BoxModel | null>>()\n\n currentBoxModels.forEach((currentDocumentBoxModels, documentKey) => {\n currentDocumentBoxModels.forEach((_boxModel, elementKey) => {\n const changedDocumentBoxModels = new Map<string, BoxModels.BoxModel | null>()\n\n if (!measuredBoxModels.get(documentKey)?.has(elementKey)) {\n changedDocumentBoxModels.set(elementKey, null)\n }\n\n if (changedDocumentBoxModels.size > 0) {\n changedBoxModels.set(documentKey, changedDocumentBoxModels)\n }\n })\n })\n\n measuredBoxModels.forEach((measuredDocumentBoxModels, documentKey) => {\n const changedDocumentBoxModels = new Map<string, BoxModels.BoxModel | null>()\n\n measuredDocumentBoxModels.forEach((measuredBoxModel, elementKey) => {\n const currentBoxModel = getBoxModel(getState(), documentKey, elementKey)\n\n if (currentBoxModel == null || !deepEqual(currentBoxModel, measuredBoxModel)) {\n changedDocumentBoxModels.set(elementKey, measuredBoxModel)\n }\n })\n\n if (changedDocumentBoxModels.size > 0) {\n changedBoxModels.set(documentKey, changedDocumentBoxModels)\n }\n })\n\n if (changedBoxModels.size > 0) dispatch(changeElementBoxModels(changedBoxModels))\n }\n}\n\nexport function startMeasuringElements(): ThunkAction<() => void, State, unknown, Action> {\n return dispatch => {\n let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n\n return () => {\n cancelAnimationFrame(animationFrameHandle)\n }\n\n function handleAnimationFrameRequest() {\n dispatch(measureElements())\n\n animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n }\n }\n}\n\nexport type Size = {\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\nfunction getElementSize(element: HTMLElement): Size {\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\nfunction startMeasuringDocumentElement(): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n let lastSize: Size\n\n return () => {\n cancelAnimationFrame(animationFrameHandle)\n }\n\n function handleAnimationFrameRequest() {\n const nextSize = getElementSize(window.document.documentElement)\n\n if (!deepEqual(lastSize, nextSize)) {\n lastSize = nextSize\n\n dispatch(changeDocumentElementSize(nextSize))\n }\n\n animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n }\n }\n}\n\nexport function initialize(): ThunkAction<() => void, State, unknown, Action> {\n return dispatch => {\n const stopMeasuringElements = dispatch(startMeasuringElements())\n const stopMeasuringDocumentElement = dispatch(startMeasuringDocumentElement())\n\n return () => {\n stopMeasuringElements()\n stopMeasuringDocumentElement()\n }\n }\n}\n\nexport type Dispatch = ThunkDispatch<State, unknown, Action>\n\nfunction measureBoxModelsMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return ({ dispatch }: MiddlewareAPI<Dispatch>) =>\n (next: ReduxDispatch<Action>) => {\n return (action: Action): Action => {\n switch (action.type) {\n case ActionTypes.REGISTER_COMPONENT_HANDLE: {\n if (BoxModels.isMeasurable(action.payload.componentHandle)) {\n dispatch(\n registerMeasurable(\n action.payload.documentKey,\n action.payload.elementKey,\n action.payload.componentHandle,\n ),\n )\n }\n\n break\n }\n\n case ActionTypes.UNREGISTER_COMPONENT_HANDLE:\n dispatch(unregisterMeasurable(action.payload.documentKey, action.payload.elementKey))\n break\n }\n\n return next(action)\n }\n }\n}\n\nexport function messageChannelMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return ({ dispatch, getState }: MiddlewareAPI<Dispatch, State>) =>\n (next: ReduxDispatch<Action>) => {\n const messageChannel = new MessageChannel()\n let cleanUp = () => {}\n\n window.parent.postMessage(messageChannel.port2, '*', [messageChannel.port2])\n\n messageChannel.port1.onmessage = (event: MessageEvent<Action>) => dispatch(event.data)\n\n const state = getState()\n const registeredComponentsMeta = getComponentsMeta(state)\n\n registeredComponentsMeta.forEach((componentMeta, componentType) => {\n const propControllerDescriptors = getComponentPropControllerDescriptors(\n state,\n componentType,\n )\n\n if (propControllerDescriptors != null) {\n const [serializedControls, transferables] = serializeControls(propControllerDescriptors)\n\n messageChannel.port1.postMessage(\n registerBuilderComponent(componentType, componentMeta, serializedControls),\n transferables,\n )\n }\n })\n\n return (action: Action): Action => {\n switch (action.type) {\n case ActionTypes.CHANGE_ELEMENT_BOX_MODELS:\n case ActionTypes.MOUNT_COMPONENT:\n case ActionTypes.UNMOUNT_COMPONENT:\n case ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE:\n case ActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER:\n messageChannel.port1.postMessage(action)\n break\n\n case ActionTypes.REGISTER_COMPONENT: {\n const { type, meta, propControllerDescriptors } = action.payload\n const [serializedControls, transferables] = serializeControls(propControllerDescriptors)\n\n messageChannel.port1.postMessage(\n registerBuilderComponent(type, meta, serializedControls),\n transferables,\n )\n break\n }\n\n case ActionTypes.UNREGISTER_COMPONENT:\n messageChannel.port1.postMessage(unregisterBuilderComponent(action.payload.type))\n break\n\n case ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP:\n window.document.documentElement.scrollTop = action.payload.scrollTop\n break\n\n case ActionTypes.INIT:\n cleanUp = dispatch(initialize())\n break\n\n case ActionTypes.CLEAN_UP:\n cleanUp()\n break\n }\n\n return next(action)\n }\n }\n}\n\nfunction createAndRegisterPropControllers(\n documentKey: string,\n elementKey: string,\n): ThunkAction<Record<string, PropController> | null, State, unknown, Action> {\n return (dispatch, getState) => {\n const descriptors = ReactPage.getElementPropControllerDescriptors(\n getState(),\n documentKey,\n elementKey,\n )\n\n if (descriptors == null) return null\n\n const propControllers = Object.entries(descriptors).reduce((acc, [propName, descriptor]) => {\n const propController = createPropController(descriptor, message =>\n dispatch(messageBuilderPropController(documentKey, elementKey, propName, message)),\n ) as PropController\n\n return { ...acc, [propName]: propController }\n }, {} as Record<string, PropController>)\n\n dispatch(registerPropControllers(documentKey, elementKey, propControllers))\n\n return propControllers\n }\n}\n\nfunction registerAndSetPropControllersHandle(\n documentKey: string,\n elementKey: string,\n handle: PropControllerHandles.PropControllersHandle,\n): ThunkAction<void, State, unknown, Action> {\n return dispatch => {\n dispatch(registerPropControllersHandle(documentKey, elementKey, handle))\n\n const propControllers = dispatch(createAndRegisterPropControllers(documentKey, elementKey))\n\n handle.setPropControllers(propControllers)\n }\n}\n\nfunction unregisterAndUnsetPropControllersHandle(\n documentKey: string,\n elementKey: string,\n): ThunkAction<void, State, unknown, Action> {\n return (dispatch, getState) => {\n const handle = PropControllerHandles.getPropControllersHandle(\n getPropControllerHandlesStateSlice(getState()),\n documentKey,\n elementKey,\n )\n\n handle?.setPropControllers(null)\n\n dispatch(unregisterPropControllers(documentKey, elementKey))\n }\n}\n\nfunction propControllerHandlesMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return ({ dispatch, getState }: MiddlewareAPI<Dispatch, State>) =>\n (next: ReduxDispatch<Action>) => {\n return (action: Action): Action => {\n switch (action.type) {\n case ActionTypes.REGISTER_COMPONENT_HANDLE: {\n if (PropControllerHandles.isPropControllersHandle(action.payload.componentHandle)) {\n dispatch(\n registerAndSetPropControllersHandle(\n action.payload.documentKey,\n action.payload.elementKey,\n action.payload.componentHandle,\n ),\n )\n }\n\n break\n }\n\n case ActionTypes.UNREGISTER_COMPONENT_HANDLE:\n dispatch(\n unregisterAndUnsetPropControllersHandle(\n action.payload.documentKey,\n action.payload.elementKey,\n ),\n )\n break\n\n case ActionTypes.MESSAGE_HOST_PROP_CONTROLLER: {\n const propController = PropControllerHandles.getPropController(\n getPropControllerHandlesStateSlice(getState()),\n action.payload.documentKey,\n action.payload.elementKey,\n action.payload.propName,\n )\n\n if (propController) propController.recv(action.payload.message)\n }\n }\n\n return next(action)\n }\n }\n}\n\nfunction apolloClientCacheSyncMiddleware(\n client: ApolloClient<NormalizedCacheObject>,\n): Middleware<Dispatch, State, Dispatch> {\n return () => (next: ReduxDispatch<Action>) => {\n return (action: Action): Action => {\n switch (action.type) {\n case ActionTypes.CHANGE_API_RESOURCE: {\n const { resource } = action.payload\n\n client.cache.writeFragment({\n id: client.cache.identify(resource),\n fragment: Fragments[resource.__typename],\n data: resource,\n })\n\n break\n }\n }\n\n return next(action)\n }\n }\n}\n\nexport type Store = ReduxStore<State, Action> & { dispatch: Dispatch }\n\nexport function configureStore({\n preloadedState,\n client,\n}: {\n preloadedState?: PreloadedState<State>\n client: ApolloClient<NormalizedCacheObject>\n}): Store {\n return createStore(\n reducer,\n preloadedState,\n applyMiddleware(\n thunk,\n measureBoxModelsMiddleware(),\n messageChannelMiddleware(),\n propControllerHandlesMiddleware(),\n apolloClientCacheSyncMiddleware(client),\n ),\n )\n}\n"],"names":["hasOwnProperty","ReadOnlyDocuments.getInitialState","ReadOnlyDocuments.getDocumentRootElement","getInitialState","ReadOnlyDocuments.createDocument","Documents.reducer","ReactComponents.reducer","BoxModels.reducer","ComponentsMeta.reducer","PropControllers.reducer","PropControllerHandles.reducer","BoxModels.getMeasurables","BoxModels.getBoxModels","BoxModels.getBoxModel","ComponentsMeta.getComponentsMeta","PropControllers.getComponentPropControllerDescriptors","BoxModels.measure","BoxModels.isMeasurable","ReactPage.getElementPropControllerDescriptors","PropControllerHandles.getPropControllersHandle","PropControllerHandles.isPropControllersHandle","PropControllerHandles.getPropController"],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
+
var actions = require("./actions.cjs.js");
|
|
4
|
+
var react = require("./react.cjs2.js");
|
|
5
|
+
require("react");
|
|
6
|
+
require("use-sync-external-store/shim/with-selector");
|
|
7
|
+
require("@apollo/client");
|
|
8
|
+
require("redux");
|
|
9
|
+
require("redux-thunk");
|
|
10
|
+
require("./descriptors.cjs.js");
|
|
11
|
+
require("styled-components");
|
|
12
|
+
require("framer-motion");
|
|
13
|
+
require("react/jsx-runtime");
|
|
14
|
+
require("./box-models.cjs.js");
|
|
15
|
+
require("css-box-model");
|
|
16
|
+
require("next/image");
|
|
17
|
+
require("react-player");
|
|
18
|
+
require("color");
|
|
19
|
+
require("scroll-into-view-if-needed");
|
|
20
|
+
require("next/link");
|
|
21
|
+
require("react-use-gesture");
|
|
22
|
+
require("@popmotion/popcorn");
|
|
23
|
+
require("uuid/v4");
|
|
24
|
+
require("polished");
|
|
25
|
+
require("slate");
|
|
26
|
+
require("slate-hotkeys");
|
|
27
|
+
require("corporate-ipsum");
|
|
28
|
+
require("slate-react");
|
|
29
|
+
require("@convertkit/slate-lists");
|
|
30
|
+
exports.ActionTypes = actions.ActionTypes;
|
|
31
|
+
exports.changeDocument = actions.changeDocument;
|
|
32
|
+
exports.Document = react.Document;
|
|
33
|
+
exports.Element = react.Element;
|
|
34
|
+
exports.PageProvider = react.PageProvider;
|
|
35
|
+
exports.ReactRuntime = react.ReactRuntime;
|
|
36
|
+
exports.RuntimeProvider = react.RuntimeProvider;
|
|
37
|
+
exports.useIsInBuilder = react.useIsInBuilder;
|
|
38
|
+
exports.usePageId = react.usePageId;
|
|
39
|
+
//# sourceMappingURL=react.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|