@makeswift/runtime 0.0.0-1faafb3 → 0.0.0-237e855
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/box-model.js +1 -0
- package/components.js +1 -0
- package/dist/actions.cjs.js +73 -16
- package/dist/actions.cjs.js.map +1 -1
- package/dist/actions.es.js +67 -16
- package/dist/actions.es.js.map +1 -1
- package/dist/box-models.cjs.js +24 -14
- package/dist/box-models.cjs.js.map +1 -1
- package/dist/box-models.es.js +24 -14
- package/dist/box-models.es.js.map +1 -1
- package/dist/components.cjs.js +39 -6898
- package/dist/components.cjs.js.map +1 -1
- package/dist/components.es.js +11 -6866
- package/dist/components.es.js.map +1 -1
- package/dist/deepEqual.cjs.js +40 -0
- package/dist/deepEqual.cjs.js.map +1 -0
- package/dist/deepEqual.es.js +39 -0
- package/dist/deepEqual.es.js.map +1 -0
- package/dist/descriptors.cjs.js +216 -0
- package/dist/descriptors.cjs.js.map +1 -0
- package/dist/descriptors.es.js +184 -0
- package/dist/descriptors.es.js.map +1 -0
- package/dist/immutable.es.cjs.js +4459 -0
- package/dist/immutable.es.cjs.js.map +1 -0
- package/dist/immutable.es.es.js +4450 -0
- package/dist/immutable.es.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 +1 -0
- package/dist/main.cjs.js.map +1 -1
- package/dist/main.es.js +1 -1
- package/dist/prop-controllers.cjs.js +4 -173
- package/dist/prop-controllers.cjs.js.map +1 -1
- package/dist/prop-controllers.es.js +2 -173
- package/dist/prop-controllers.es.js.map +1 -1
- package/dist/react-builder-preview.cjs.js +179 -33
- package/dist/react-builder-preview.cjs.js.map +1 -1
- package/dist/react-builder-preview.es.js +186 -40
- package/dist/react-builder-preview.es.js.map +1 -1
- package/dist/react.cjs.js +10 -0
- package/dist/react.cjs.js.map +1 -1
- package/dist/react.cjs2.js +23451 -331
- package/dist/react.cjs2.js.map +1 -1
- package/dist/react.es.js +10 -1
- package/dist/react.es.js.map +1 -1
- package/dist/react.es2.js +23367 -298
- package/dist/react.es2.js.map +1 -1
- package/dist/shallowEqual.cjs.js +24 -0
- package/dist/shallowEqual.cjs.js.map +1 -0
- package/dist/shallowEqual.es.js +23 -0
- package/dist/shallowEqual.es.js.map +1 -0
- package/dist/types/codegen-loader.d.ts +2 -0
- package/dist/types/codegen-loader.d.ts.map +1 -0
- package/dist/types/components/BackgroundsContainer/components/BackgroundVideo/index.d.ts +11 -0
- package/dist/types/components/BackgroundsContainer/components/BackgroundVideo/index.d.ts.map +1 -0
- package/dist/types/components/BackgroundsContainer/components/Backgrounds/index.d.ts +8 -0
- package/dist/types/components/BackgroundsContainer/components/Backgrounds/index.d.ts.map +1 -0
- package/dist/types/components/BackgroundsContainer/components/Parallax/index.d.ts +11 -0
- package/dist/types/components/BackgroundsContainer/components/Parallax/index.d.ts.map +1 -0
- package/dist/types/components/BackgroundsContainer/index.d.ts +11 -0
- package/dist/types/components/BackgroundsContainer/index.d.ts.map +1 -0
- package/dist/types/components/Box/Box.d.ts +4 -1
- package/dist/types/components/Box/Box.d.ts.map +1 -1
- package/dist/types/components/Carousel/Carousel.d.ts +25 -0
- package/dist/types/components/Carousel/Carousel.d.ts.map +1 -0
- package/dist/types/components/Carousel/index.d.ts +2 -0
- package/dist/types/components/Carousel/index.d.ts.map +1 -0
- package/dist/types/components/Countdown/Countdown.d.ts +24 -0
- package/dist/types/components/Countdown/Countdown.d.ts.map +1 -0
- package/dist/types/components/Countdown/index.d.ts +2 -0
- package/dist/types/components/Countdown/index.d.ts.map +1 -0
- package/dist/types/components/Divider/Divider.d.ts +14 -0
- package/dist/types/components/Divider/Divider.d.ts.map +1 -0
- package/dist/types/components/Divider/index.d.ts +2 -0
- package/dist/types/components/Divider/index.d.ts.map +1 -0
- package/dist/types/components/Embed/Embed.d.ts +11 -0
- package/dist/types/components/Embed/Embed.d.ts.map +1 -0
- package/dist/types/components/Embed/index.d.ts +2 -0
- package/dist/types/components/Embed/index.d.ts.map +1 -0
- package/dist/types/components/Image/Image.d.ts +26 -0
- package/dist/types/components/Image/Image.d.ts.map +1 -0
- package/dist/types/components/Image/index.d.ts +2 -0
- package/dist/types/components/Image/index.d.ts.map +1 -0
- package/dist/types/components/Link/index.d.ts +9 -0
- package/dist/types/components/Link/index.d.ts.map +1 -0
- package/dist/types/components/RichText/index.d.ts +5 -0
- package/dist/types/components/RichText/index.d.ts.map +1 -0
- package/dist/types/components/Root/Root.d.ts.map +1 -1
- 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/Link/index.d.ts +9 -0
- package/dist/types/components/builtin/Text/components/RichTextEditor/components/Link/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/hooks/useRichText.d.ts +1 -0
- package/dist/types/components/builtin/Text/hooks/useRichText.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/Text/prop-controllers.d.ts +286 -0
- package/dist/types/components/builtin/Text/prop-controllers.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 +6 -0
- package/dist/types/components/hooks/index.d.ts.map +1 -1
- 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/usePage.d.ts +7 -0
- package/dist/types/components/hooks/usePage.d.ts.map +1 -0
- package/dist/types/components/hooks/useRichText.d.ts +18 -0
- package/dist/types/components/hooks/useRichText.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 +2 -3
- package/dist/types/components/index.d.ts.map +1 -1
- 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/shared/RichTextEditor/components/Block/index.d.ts +24 -0
- package/dist/types/components/shared/RichTextEditor/components/Block/index.d.ts.map +1 -0
- package/dist/types/components/shared/RichTextEditor/components/Link/index.d.ts +9 -0
- package/dist/types/components/shared/RichTextEditor/components/Link/index.d.ts.map +1 -0
- package/dist/types/components/shared/RichTextEditor/components/Mark/hooks/useTypographyMark.d.ts +23 -0
- package/dist/types/components/shared/RichTextEditor/components/Mark/hooks/useTypographyMark.d.ts.map +1 -0
- package/dist/types/components/shared/RichTextEditor/components/Mark/index.d.ts +13 -0
- package/dist/types/components/shared/RichTextEditor/components/Mark/index.d.ts.map +1 -0
- package/dist/types/components/shared/RichTextEditor/index.d.ts +5 -0
- package/dist/types/components/shared/RichTextEditor/index.d.ts.map +1 -0
- package/dist/types/components/shared/RichTextEditor/plugins/DeviceOverridesBlocks.d.ts +3 -0
- package/dist/types/components/shared/RichTextEditor/plugins/DeviceOverridesBlocks.d.ts.map +1 -0
- package/dist/types/components/shared/RichTextEditor/plugins/DeviceOverridesMarks.d.ts +3 -0
- package/dist/types/components/shared/RichTextEditor/plugins/DeviceOverridesMarks.d.ts.map +1 -0
- package/dist/types/components/shared/RichTextEditor/plugins/Inlines.d.ts +3 -0
- package/dist/types/components/shared/RichTextEditor/plugins/Inlines.d.ts.map +1 -0
- package/dist/types/components/shared/RichTextEditor/plugins/Link.d.ts +3 -0
- package/dist/types/components/shared/RichTextEditor/plugins/Link.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/contants.d.ts +5 -0
- package/dist/types/components/utils/contants.d.ts.map +1 -0
- package/dist/types/components/utils/cssMediaRules.d.ts +23 -1
- package/dist/types/components/utils/cssMediaRules.d.ts.map +1 -1
- package/dist/types/components/utils/devices.d.ts +1 -0
- package/dist/types/components/utils/devices.d.ts.map +1 -1
- package/dist/types/components/utils/intersection.d.ts +4 -0
- package/dist/types/components/utils/intersection.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/keys.d.ts +5 -0
- package/dist/types/components/utils/keys.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/generated/graphql.d.ts +756 -0
- package/dist/types/generated/graphql.d.ts.map +1 -0
- package/dist/types/index.d.ts +2 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/prop-controllers/descriptors.d.ts +38 -2
- package/dist/types/prop-controllers/descriptors.d.ts.map +1 -1
- package/dist/types/prop-controllers/index.d.ts +3 -1
- package/dist/types/prop-controllers/index.d.ts.map +1 -1
- 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 +1 -1
- package/dist/types/react.d.ts.map +1 -1
- package/dist/types/runtimes/react.d.ts +14 -7
- package/dist/types/runtimes/react.d.ts.map +1 -1
- package/dist/types/state/actions.d.ts +88 -13
- package/dist/types/state/actions.d.ts.map +1 -1
- package/dist/types/state/modules/box-models.d.ts +5 -5
- package/dist/types/state/modules/box-models.d.ts.map +1 -1
- package/dist/types/state/modules/makeswift-api-client.d.ts +17 -0
- package/dist/types/state/modules/makeswift-api-client.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 +1 -0
- package/dist/types/state/modules/prop-controllers.d.ts.map +1 -1
- package/dist/types/state/react-builder-preview.d.ts +13 -10
- package/dist/types/state/react-builder-preview.d.ts.map +1 -1
- package/dist/types/state/react-page.d.ts +5 -0
- package/dist/types/state/react-page.d.ts.map +1 -1
- package/dist/types/types.d.ts +2 -0
- package/dist/types/types.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.map +1 -1
- package/dist/types/utils/intersection.d.ts +4 -0
- package/dist/types/utils/intersection.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.map +1 -1
- package/dist/types/utils/shallowMerge.d.ts +2 -0
- package/dist/types/utils/shallowMerge.d.ts.map +1 -0
- package/package.json +58 -5
- package/prop-controllers.js +1 -0
- package/react.js +1 -0
package/box-model.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require('./dist/box-model.cjs')
|
package/components.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require('./dist/components.cjs')
|
package/dist/actions.cjs.js
CHANGED
|
@@ -7,12 +7,19 @@ const ActionTypes = {
|
|
|
7
7
|
UNREGISTER_REACT_COMPONENT: "UNREGISTER_REACT_COMPONENT",
|
|
8
8
|
MOUNT_COMPONENT: "MOUNT_COMPONENT",
|
|
9
9
|
UNMOUNT_COMPONENT: "UNMOUNT_COMPONENT",
|
|
10
|
-
|
|
10
|
+
REGISTER_COMPONENT_HANDLE: "REGISTER_COMPONENT_HANDLE",
|
|
11
|
+
UNREGISTER_COMPONENT_HANDLE: "UNREGISTER_COMPONENT_HANDLE",
|
|
11
12
|
REGISTER_MEASURABLE: "REGISTER_MEASURABLE",
|
|
12
13
|
UNREGISTER_MEASURABLE: "UNREGISTER_MEASURABLE",
|
|
13
14
|
CHANGE_ELEMENT_BOX_MODELS: "CHANGE_ELEMENT_BOX_MODELS",
|
|
14
15
|
CHANGE_DOCUMENT_ELEMENT_SIZE: "CHANGE_DOCUMENT_ELEMENT_SIZE",
|
|
15
|
-
CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP: "CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP"
|
|
16
|
+
CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP: "CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP",
|
|
17
|
+
REGISTER_PROP_CONTROLLERS_HANDLE: "REGISTER_PROP_CONTROLLERS_HANDLE",
|
|
18
|
+
UNREGISTER_PROP_CONTROLLERS_HANDLE: "UNREGISTER_PROP_CONTROLLERS_HANDLE",
|
|
19
|
+
REGISTER_PROP_CONTROLLERS: "REGISTER_PROP_CONTROLLERS",
|
|
20
|
+
UNREGISTER_PROP_CONTROLLERS: "UNREGISTER_PROP_CONTROLLERS",
|
|
21
|
+
MESSAGE_HOST_PROP_CONTROLLER: "MESSAGE_HOST_PROP_CONTROLLER",
|
|
22
|
+
MESSAGE_BUILDER_PROP_CONTROLLER: "MESSAGE_BUILDER_PROP_CONTROLLER"
|
|
16
23
|
};
|
|
17
24
|
function changeDocument(documentKey, operation) {
|
|
18
25
|
return { type: ActionTypes.CHANGE_DOCUMENT, payload: { documentKey, operation } };
|
|
@@ -48,28 +55,45 @@ function registerReactComponentEffect(type, component) {
|
|
|
48
55
|
};
|
|
49
56
|
};
|
|
50
57
|
}
|
|
51
|
-
function mountComponent(elementKey) {
|
|
52
|
-
return { type: ActionTypes.MOUNT_COMPONENT, payload: { elementKey } };
|
|
58
|
+
function mountComponent(documentKey, elementKey) {
|
|
59
|
+
return { type: ActionTypes.MOUNT_COMPONENT, payload: { documentKey, elementKey } };
|
|
53
60
|
}
|
|
54
|
-
function unmountComponent(elementKey) {
|
|
55
|
-
return { type: ActionTypes.UNMOUNT_COMPONENT, payload: { elementKey } };
|
|
61
|
+
function unmountComponent(documentKey, elementKey) {
|
|
62
|
+
return { type: ActionTypes.UNMOUNT_COMPONENT, payload: { documentKey, elementKey } };
|
|
56
63
|
}
|
|
57
|
-
function mountComponentEffect(elementKey) {
|
|
64
|
+
function mountComponentEffect(documentKey, elementKey) {
|
|
58
65
|
return (dispatch) => {
|
|
59
|
-
dispatch(mountComponent(elementKey));
|
|
66
|
+
dispatch(mountComponent(documentKey, elementKey));
|
|
60
67
|
return () => {
|
|
61
|
-
dispatch(unmountComponent(elementKey));
|
|
68
|
+
dispatch(unmountComponent(documentKey, elementKey));
|
|
62
69
|
};
|
|
63
70
|
};
|
|
64
71
|
}
|
|
65
|
-
function
|
|
66
|
-
return {
|
|
72
|
+
function registerComponentHandle(documentKey, elementKey, componentHandle) {
|
|
73
|
+
return {
|
|
74
|
+
type: ActionTypes.REGISTER_COMPONENT_HANDLE,
|
|
75
|
+
payload: { documentKey, elementKey, componentHandle }
|
|
76
|
+
};
|
|
67
77
|
}
|
|
68
|
-
function
|
|
69
|
-
return { type: ActionTypes.
|
|
78
|
+
function unregisterComponentHandle(documentKey, elementKey) {
|
|
79
|
+
return { type: ActionTypes.UNREGISTER_COMPONENT_HANDLE, payload: { documentKey, elementKey } };
|
|
70
80
|
}
|
|
71
|
-
function
|
|
72
|
-
return
|
|
81
|
+
function registerComponentHandleEffect(documentKey, elementKey, componentHandle) {
|
|
82
|
+
return (dispatch) => {
|
|
83
|
+
dispatch(registerComponentHandle(documentKey, elementKey, componentHandle));
|
|
84
|
+
return () => {
|
|
85
|
+
dispatch(unregisterComponentHandle(documentKey, elementKey));
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
function registerMeasurable(documentKey, elementKey, measurable) {
|
|
90
|
+
return { type: ActionTypes.REGISTER_MEASURABLE, payload: { documentKey, elementKey, measurable } };
|
|
91
|
+
}
|
|
92
|
+
function unregisterMeasurable(documentKey, elementKey) {
|
|
93
|
+
return { type: ActionTypes.UNREGISTER_MEASURABLE, payload: { documentKey, elementKey } };
|
|
94
|
+
}
|
|
95
|
+
function changeElementBoxModels(changedElementBoxModels) {
|
|
96
|
+
return { type: ActionTypes.CHANGE_ELEMENT_BOX_MODELS, payload: { changedElementBoxModels } };
|
|
73
97
|
}
|
|
74
98
|
function changeDocumentElementSize(size) {
|
|
75
99
|
return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE, payload: { size } };
|
|
@@ -77,15 +101,48 @@ function changeDocumentElementSize(size) {
|
|
|
77
101
|
function changeDocumentElementScrollTop(scrollTop) {
|
|
78
102
|
return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP, payload: { scrollTop } };
|
|
79
103
|
}
|
|
104
|
+
function registerPropControllersHandle(documentKey, elementKey, handle) {
|
|
105
|
+
return {
|
|
106
|
+
type: ActionTypes.REGISTER_PROP_CONTROLLERS_HANDLE,
|
|
107
|
+
payload: { documentKey, elementKey, handle }
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
function registerPropControllers(documentKey, elementKey, propControllers) {
|
|
111
|
+
return {
|
|
112
|
+
type: ActionTypes.REGISTER_PROP_CONTROLLERS,
|
|
113
|
+
payload: { documentKey, elementKey, propControllers }
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
function unregisterPropControllers(documentKey, elementKey) {
|
|
117
|
+
return { type: ActionTypes.UNREGISTER_PROP_CONTROLLERS, payload: { documentKey, elementKey } };
|
|
118
|
+
}
|
|
119
|
+
function messageHostPropController(documentKey, elementKey, propName, message) {
|
|
120
|
+
return {
|
|
121
|
+
type: ActionTypes.MESSAGE_HOST_PROP_CONTROLLER,
|
|
122
|
+
payload: { documentKey, elementKey, propName, message }
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
function messageBuilderPropController(documentKey, elementKey, propName, message) {
|
|
126
|
+
return {
|
|
127
|
+
type: ActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER,
|
|
128
|
+
payload: { documentKey, elementKey, propName, message }
|
|
129
|
+
};
|
|
130
|
+
}
|
|
80
131
|
exports.ActionTypes = ActionTypes;
|
|
81
|
-
exports.changeComponentHandle = changeComponentHandle;
|
|
82
132
|
exports.changeDocument = changeDocument;
|
|
83
133
|
exports.changeDocumentElementScrollTop = changeDocumentElementScrollTop;
|
|
84
134
|
exports.changeDocumentElementSize = changeDocumentElementSize;
|
|
135
|
+
exports.changeElementBoxModels = changeElementBoxModels;
|
|
136
|
+
exports.messageBuilderPropController = messageBuilderPropController;
|
|
137
|
+
exports.messageHostPropController = messageHostPropController;
|
|
85
138
|
exports.mountComponentEffect = mountComponentEffect;
|
|
86
139
|
exports.registerComponent = registerComponent;
|
|
87
140
|
exports.registerComponentEffect = registerComponentEffect;
|
|
141
|
+
exports.registerComponentHandleEffect = registerComponentHandleEffect;
|
|
88
142
|
exports.registerMeasurable = registerMeasurable;
|
|
143
|
+
exports.registerPropControllers = registerPropControllers;
|
|
144
|
+
exports.registerPropControllersHandle = registerPropControllersHandle;
|
|
89
145
|
exports.registerReactComponentEffect = registerReactComponentEffect;
|
|
90
146
|
exports.unregisterMeasurable = unregisterMeasurable;
|
|
147
|
+
exports.unregisterPropControllers = unregisterPropControllers;
|
|
91
148
|
//# sourceMappingURL=actions.cjs.js.map
|
package/dist/actions.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.cjs.js","sources":["../src/state/actions.ts"],"sourcesContent":["import type { Operation } from 'ot-json0'\n\nimport type { ComponentType } from './modules/react-components'\nimport type { Measurable, BoxModel } from './modules/box-models'\nimport type { ThunkAction } from 'redux-thunk'\nimport { ComponentMeta } from './modules/components-meta'\nimport { PropControllerDescriptor } from '../prop-controllers'\nimport type { Size } from './react-builder-preview'\n\nexport const ActionTypes = {\n CHANGE_DOCUMENT: 'CHANGE_DOCUMENT',\n\n REGISTER_COMPONENT: 'REGISTER_COMPONENT',\n UNREGISTER_COMPONENT: 'UNREGISTER_COMPONENT',\n\n REGISTER_REACT_COMPONENT: 'REGISTER_REACT_COMPONENT',\n UNREGISTER_REACT_COMPONENT: 'UNREGISTER_REACT_COMPONENT',\n\n MOUNT_COMPONENT: 'MOUNT_COMPONENT',\n UNMOUNT_COMPONENT: 'UNMOUNT_COMPONENT',\n\n CHANGE_COMPONENT_HANDLE: 'CHANGE_COMPONENT_HANDLE',\n\n REGISTER_MEASURABLE: 'REGISTER_MEASURABLE',\n UNREGISTER_MEASURABLE: 'UNREGISTER_MEASURABLE',\n\n CHANGE_ELEMENT_BOX_MODELS: 'CHANGE_ELEMENT_BOX_MODELS',\n\n CHANGE_DOCUMENT_ELEMENT_SIZE: 'CHANGE_DOCUMENT_ELEMENT_SIZE',\n CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP: 'CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP',\n} as const\n\ntype ChangeDocumentAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT\n payload: { documentKey: string; operation: Operation }\n}\n\ntype RegisterComponentAction = {\n type: typeof ActionTypes.REGISTER_COMPONENT\n payload: {\n type: string\n meta: ComponentMeta\n propControllerDescriptors: Record<string, PropControllerDescriptor>\n }\n}\n\ntype UnregisterComponentAction = {\n type: typeof ActionTypes.UNREGISTER_COMPONENT\n payload: { type: string }\n}\n\ntype RegisterReactComponentAction = {\n type: typeof ActionTypes.REGISTER_REACT_COMPONENT\n payload: { type: string; component: ComponentType }\n}\n\ntype UnregisterReactComponentAction = {\n type: typeof ActionTypes.UNREGISTER_REACT_COMPONENT\n payload: { type: string }\n}\n\ntype MountComponentAction = {\n type: typeof ActionTypes.MOUNT_COMPONENT\n payload: { elementKey: string }\n}\n\ntype UnmountComponentAction = {\n type: typeof ActionTypes.UNMOUNT_COMPONENT\n payload: { elementKey: string }\n}\n\ntype ChangeComponentHandleAction = {\n type: typeof ActionTypes.CHANGE_COMPONENT_HANDLE\n payload: { elementKey: string; componentHandle: unknown }\n}\n\ntype RegisterMeasurableAction = {\n type: typeof ActionTypes.REGISTER_MEASURABLE\n payload: { elementKey: string; measurable: Measurable }\n}\n\ntype UnregisterMeasurableAction = {\n type: typeof ActionTypes.UNREGISTER_MEASURABLE\n payload: { elementKey: string }\n}\n\ntype ChangeElementBoxModelsAction = {\n type: typeof ActionTypes.CHANGE_ELEMENT_BOX_MODELS\n payload: { changedElementBoxModels: Map<string, BoxModel | null> }\n}\n\ntype ChangeDocumentElementSizeAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE\n payload: { size: Size }\n}\n\ntype ChangeDocumentElementScrollTopAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP\n payload: { scrollTop: number }\n}\n\nexport type Action =\n | ChangeDocumentAction\n | RegisterComponentAction\n | UnregisterComponentAction\n | RegisterReactComponentAction\n | UnregisterReactComponentAction\n | MountComponentAction\n | UnmountComponentAction\n | ChangeComponentHandleAction\n | RegisterMeasurableAction\n | UnregisterMeasurableAction\n | ChangeElementBoxModelsAction\n | ChangeDocumentElementSizeAction\n | ChangeDocumentElementScrollTopAction\n\nexport function changeDocument(documentKey: string, operation: Operation): ChangeDocumentAction {\n return { type: ActionTypes.CHANGE_DOCUMENT, payload: { documentKey, operation } }\n}\n\nexport function registerComponent(\n type: string,\n meta: ComponentMeta,\n propControllerDescriptors: Record<string, PropControllerDescriptor>,\n): RegisterComponentAction {\n return {\n type: ActionTypes.REGISTER_COMPONENT,\n payload: { type, meta, propControllerDescriptors },\n }\n}\n\nexport function unregisterComponent(type: string): UnregisterComponentAction {\n return { type: ActionTypes.UNREGISTER_COMPONENT, payload: { type } }\n}\n\nexport function registerComponentEffect(\n type: string,\n meta: ComponentMeta,\n propControllerDescriptors: Record<string, PropControllerDescriptor>,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerComponent(type, meta, propControllerDescriptors))\n\n return () => {\n dispatch(unregisterComponent(type))\n }\n }\n}\n\nfunction registerReactComponent(\n type: string,\n component: ComponentType,\n): RegisterReactComponentAction {\n return { type: ActionTypes.REGISTER_REACT_COMPONENT, payload: { type, component } }\n}\n\nfunction unregisterReactComponent(type: string): UnregisterReactComponentAction {\n return { type: ActionTypes.UNREGISTER_REACT_COMPONENT, payload: { type } }\n}\n\nexport function registerReactComponentEffect(\n type: string,\n component: ComponentType,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerReactComponent(type, component))\n\n return () => {\n dispatch(unregisterReactComponent(type))\n }\n }\n}\n\nexport function mountComponent(elementKey: string): MountComponentAction {\n return { type: ActionTypes.MOUNT_COMPONENT, payload: { elementKey } }\n}\n\nexport function unmountComponent(elementKey: string): UnmountComponentAction {\n return { type: ActionTypes.UNMOUNT_COMPONENT, payload: { elementKey } }\n}\n\nexport function mountComponentEffect(\n elementKey: string,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(mountComponent(elementKey))\n\n return () => {\n dispatch(unmountComponent(elementKey))\n }\n }\n}\n\nexport function changeComponentHandle(\n elementKey: string,\n componentHandle: unknown,\n): ChangeComponentHandleAction {\n return { type: ActionTypes.CHANGE_COMPONENT_HANDLE, payload: { elementKey, componentHandle } }\n}\n\nexport function registerMeasurable(\n elementKey: string,\n measurable: Measurable,\n): RegisterMeasurableAction {\n return { type: ActionTypes.REGISTER_MEASURABLE, payload: { elementKey, measurable } }\n}\n\nexport function unregisterMeasurable(elementKey: string): UnregisterMeasurableAction {\n return { type: ActionTypes.UNREGISTER_MEASURABLE, payload: { elementKey } }\n}\n\nexport function registerMeasurableEffect(\n elementKey: string,\n measurable: Measurable,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerMeasurable(elementKey, measurable))\n\n return () => {\n dispatch(unregisterMeasurable(elementKey))\n }\n }\n}\n\nexport function changeElementBoxModels(\n changedElementBoxModels: Map<string, BoxModel | null>,\n): ChangeElementBoxModelsAction {\n return { type: ActionTypes.CHANGE_ELEMENT_BOX_MODELS, payload: { changedElementBoxModels } }\n}\n\nexport function changeDocumentElementSize(size: Size): ChangeDocumentElementSizeAction {\n return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE, payload: { size } }\n}\n\nexport function changeDocumentElementScrollTop(\n scrollTop: number,\n): ChangeDocumentElementScrollTopAction {\n return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP, payload: { scrollTop } }\n}\n"],"names":[],"mappings":";MASa,cAAc;AAAA,EACzB,iBAAiB;AAAA,EAEjB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EAEtB,0BAA0B;AAAA,EAC1B,4BAA4B;AAAA,EAE5B,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EAEnB,yBAAyB;AAAA,EAEzB,qBAAqB;AAAA,EACrB,uBAAuB;AAAA,EAEvB,2BAA2B;AAAA,EAE3B,8BAA8B;AAAA,EAC9B,oCAAoC;AAAA;wBAuFP,aAAqB,WAA4C;SACvF,EAAE,MAAM,YAAY,iBAAiB,SAAS,EAAE,aAAa;AAAA;2BAIpE,MACA,MACA,2BACyB;SAClB;AAAA,IACL,MAAM,YAAY;AAAA,IAClB,SAAS,EAAE,MAAM,MAAM;AAAA;AAAA;6BAIS,MAAyC;SACpE,EAAE,MAAM,YAAY,sBAAsB,SAAS,EAAE;AAAA;iCAI5D,MACA,MACA,2BACmD;SAC5C,cAAY;aACR,kBAAkB,MAAM,MAAM;WAEhC,MAAM;eACF,oBAAoB;AAAA;AAAA;AAAA;AAKnC,gCACE,MACA,WAC8B;SACvB,EAAE,MAAM,YAAY,0BAA0B,SAAS,EAAE,MAAM;AAAA;AAGxE,kCAAkC,MAA8C;SACvE,EAAE,MAAM,YAAY,4BAA4B,SAAS,EAAE;AAAA;sCAIlE,MACA,WACmD;SAC5C,cAAY;aACR,uBAAuB,MAAM;WAE/B,MAAM;eACF,yBAAyB;AAAA;AAAA;AAAA;wBAKT,YAA0C;SAChE,EAAE,MAAM,YAAY,iBAAiB,SAAS,EAAE;AAAA;0BAGxB,YAA4C;SACpE,EAAE,MAAM,YAAY,mBAAmB,SAAS,EAAE;AAAA;8BAIzD,YACmD;SAC5C,cAAY;aACR,eAAe;WAEjB,MAAM;eACF,iBAAiB;AAAA;AAAA;AAAA;+BAM9B,YACA,iBAC6B;SACtB,EAAE,MAAM,YAAY,yBAAyB,SAAS,EAAE,YAAY;AAAA;4BAI3E,YACA,YAC0B;SACnB,EAAE,MAAM,YAAY,qBAAqB,SAAS,EAAE,YAAY;AAAA;8BAGpC,YAAgD;SAC5E,EAAE,MAAM,YAAY,uBAAuB,SAAS,EAAE;AAAA;mCAsBrB,MAA6C;SAC9E,EAAE,MAAM,YAAY,8BAA8B,SAAS,EAAE;AAAA;wCAIpE,WACsC;SAC/B,EAAE,MAAM,YAAY,oCAAoC,SAAS,EAAE;AAAA;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"actions.cjs.js","sources":["../src/state/actions.ts"],"sourcesContent":["import type { Operation } from 'ot-json0'\n\nimport type { ComponentType } from './modules/react-components'\nimport type { Measurable, BoxModel } from './modules/box-models'\nimport type { ThunkAction } from 'redux-thunk'\nimport { ComponentMeta } from './modules/components-meta'\nimport { PropControllerDescriptor } from '../prop-controllers'\nimport type { Size } from './react-builder-preview'\nimport type { PropControllersHandle } from './modules/prop-controller-handles'\nimport type { PropController, PropControllerMessage } from '../prop-controllers/instances'\n\nexport const ActionTypes = {\n CHANGE_DOCUMENT: 'CHANGE_DOCUMENT',\n\n REGISTER_COMPONENT: 'REGISTER_COMPONENT',\n UNREGISTER_COMPONENT: 'UNREGISTER_COMPONENT',\n\n REGISTER_REACT_COMPONENT: 'REGISTER_REACT_COMPONENT',\n UNREGISTER_REACT_COMPONENT: 'UNREGISTER_REACT_COMPONENT',\n\n MOUNT_COMPONENT: 'MOUNT_COMPONENT',\n UNMOUNT_COMPONENT: 'UNMOUNT_COMPONENT',\n\n REGISTER_COMPONENT_HANDLE: 'REGISTER_COMPONENT_HANDLE',\n UNREGISTER_COMPONENT_HANDLE: 'UNREGISTER_COMPONENT_HANDLE',\n\n REGISTER_MEASURABLE: 'REGISTER_MEASURABLE',\n UNREGISTER_MEASURABLE: 'UNREGISTER_MEASURABLE',\n\n CHANGE_ELEMENT_BOX_MODELS: 'CHANGE_ELEMENT_BOX_MODELS',\n\n CHANGE_DOCUMENT_ELEMENT_SIZE: 'CHANGE_DOCUMENT_ELEMENT_SIZE',\n CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP: 'CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP',\n\n REGISTER_PROP_CONTROLLERS_HANDLE: 'REGISTER_PROP_CONTROLLERS_HANDLE',\n UNREGISTER_PROP_CONTROLLERS_HANDLE: 'UNREGISTER_PROP_CONTROLLERS_HANDLE',\n REGISTER_PROP_CONTROLLERS: 'REGISTER_PROP_CONTROLLERS',\n UNREGISTER_PROP_CONTROLLERS: 'UNREGISTER_PROP_CONTROLLERS',\n MESSAGE_HOST_PROP_CONTROLLER: 'MESSAGE_HOST_PROP_CONTROLLER',\n MESSAGE_BUILDER_PROP_CONTROLLER: 'MESSAGE_BUILDER_PROP_CONTROLLER',\n} as const\n\ntype ChangeDocumentAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT\n payload: { documentKey: string; operation: Operation }\n}\n\ntype RegisterComponentAction = {\n type: typeof ActionTypes.REGISTER_COMPONENT\n payload: {\n type: string\n meta: ComponentMeta\n propControllerDescriptors: Record<string, PropControllerDescriptor>\n }\n}\n\ntype UnregisterComponentAction = {\n type: typeof ActionTypes.UNREGISTER_COMPONENT\n payload: { type: string }\n}\n\ntype RegisterReactComponentAction = {\n type: typeof ActionTypes.REGISTER_REACT_COMPONENT\n payload: { type: string; component: ComponentType }\n}\n\ntype UnregisterReactComponentAction = {\n type: typeof ActionTypes.UNREGISTER_REACT_COMPONENT\n payload: { type: string }\n}\n\ntype MountComponentAction = {\n type: typeof ActionTypes.MOUNT_COMPONENT\n payload: { documentKey: string; elementKey: string }\n}\n\ntype UnmountComponentAction = {\n type: typeof ActionTypes.UNMOUNT_COMPONENT\n payload: { documentKey: string; elementKey: string }\n}\n\ntype RegisterComponentHandleAction = {\n type: typeof ActionTypes.REGISTER_COMPONENT_HANDLE\n payload: { documentKey: string; elementKey: string; componentHandle: unknown }\n}\n\ntype UnregisterComponentHandleAction = {\n type: typeof ActionTypes.UNREGISTER_COMPONENT_HANDLE\n payload: { documentKey: string; elementKey: string }\n}\n\ntype RegisterMeasurableAction = {\n type: typeof ActionTypes.REGISTER_MEASURABLE\n payload: { documentKey: string; elementKey: string; measurable: Measurable }\n}\n\ntype UnregisterMeasurableAction = {\n type: typeof ActionTypes.UNREGISTER_MEASURABLE\n payload: { documentKey: string; elementKey: string }\n}\n\ntype ChangeElementBoxModelsAction = {\n type: typeof ActionTypes.CHANGE_ELEMENT_BOX_MODELS\n payload: { changedElementBoxModels: Map<string, Map<string, BoxModel | null>> }\n}\n\ntype ChangeDocumentElementSizeAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE\n payload: { size: Size }\n}\n\ntype ChangeDocumentElementScrollTopAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP\n payload: { scrollTop: number }\n}\n\ntype RegisterPropControllersHandleAction = {\n type: typeof ActionTypes.REGISTER_PROP_CONTROLLERS_HANDLE\n payload: { documentKey: string; elementKey: string; handle: PropControllersHandle }\n}\n\ntype UnregisterPropControllersHandleAction = {\n type: typeof ActionTypes.UNREGISTER_PROP_CONTROLLERS_HANDLE\n payload: { documentKey: string; elementKey: string }\n}\n\ntype RegisterPropControllersAction = {\n type: typeof ActionTypes.REGISTER_PROP_CONTROLLERS\n payload: {\n documentKey: string\n elementKey: string\n propControllers: Record<string, PropController>\n }\n}\n\ntype UnregisterPropControllersAction = {\n type: typeof ActionTypes.UNREGISTER_PROP_CONTROLLERS\n payload: { documentKey: string; elementKey: string }\n}\n\ntype MessageHostPropControllerAction<T = PropControllerMessage> = {\n type: typeof ActionTypes.MESSAGE_HOST_PROP_CONTROLLER\n payload: { documentKey: string; elementKey: string; propName: string; message: T }\n}\n\ntype MessageBuilderPropControllerAction<T = PropControllerMessage> = {\n type: typeof ActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER\n payload: { documentKey: string; elementKey: string; propName: string; message: T }\n}\n\nexport type Action =\n | ChangeDocumentAction\n | RegisterComponentAction\n | UnregisterComponentAction\n | RegisterReactComponentAction\n | UnregisterReactComponentAction\n | MountComponentAction\n | UnmountComponentAction\n | RegisterComponentHandleAction\n | UnregisterComponentHandleAction\n | RegisterMeasurableAction\n | UnregisterMeasurableAction\n | ChangeElementBoxModelsAction\n | ChangeDocumentElementSizeAction\n | ChangeDocumentElementScrollTopAction\n | RegisterPropControllersHandleAction\n | UnregisterPropControllersHandleAction\n | RegisterPropControllersAction\n | UnregisterPropControllersAction\n | MessageHostPropControllerAction\n | MessageBuilderPropControllerAction\n\nexport function changeDocument(documentKey: string, operation: Operation): ChangeDocumentAction {\n return { type: ActionTypes.CHANGE_DOCUMENT, payload: { documentKey, operation } }\n}\n\nexport function registerComponent(\n type: string,\n meta: ComponentMeta,\n propControllerDescriptors: Record<string, PropControllerDescriptor>,\n): RegisterComponentAction {\n return {\n type: ActionTypes.REGISTER_COMPONENT,\n payload: { type, meta, propControllerDescriptors },\n }\n}\n\nexport function unregisterComponent(type: string): UnregisterComponentAction {\n return { type: ActionTypes.UNREGISTER_COMPONENT, payload: { type } }\n}\n\nexport function registerComponentEffect(\n type: string,\n meta: ComponentMeta,\n propControllerDescriptors: Record<string, PropControllerDescriptor>,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerComponent(type, meta, propControllerDescriptors))\n\n return () => {\n dispatch(unregisterComponent(type))\n }\n }\n}\n\nfunction registerReactComponent(\n type: string,\n component: ComponentType,\n): RegisterReactComponentAction {\n return { type: ActionTypes.REGISTER_REACT_COMPONENT, payload: { type, component } }\n}\n\nfunction unregisterReactComponent(type: string): UnregisterReactComponentAction {\n return { type: ActionTypes.UNREGISTER_REACT_COMPONENT, payload: { type } }\n}\n\nexport function registerReactComponentEffect(\n type: string,\n component: ComponentType,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerReactComponent(type, component))\n\n return () => {\n dispatch(unregisterReactComponent(type))\n }\n }\n}\n\nexport function mountComponent(documentKey: string, elementKey: string): MountComponentAction {\n return { type: ActionTypes.MOUNT_COMPONENT, payload: { documentKey, elementKey } }\n}\n\nexport function unmountComponent(documentKey: string, elementKey: string): UnmountComponentAction {\n return { type: ActionTypes.UNMOUNT_COMPONENT, payload: { documentKey, elementKey } }\n}\n\nexport function mountComponentEffect(\n documentKey: string,\n elementKey: string,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(mountComponent(documentKey, elementKey))\n\n return () => {\n dispatch(unmountComponent(documentKey, elementKey))\n }\n }\n}\n\nfunction registerComponentHandle(\n documentKey: string,\n elementKey: string,\n componentHandle: unknown,\n): RegisterComponentHandleAction {\n return {\n type: ActionTypes.REGISTER_COMPONENT_HANDLE,\n payload: { documentKey, elementKey, componentHandle },\n }\n}\n\nfunction unregisterComponentHandle(\n documentKey: string,\n elementKey: string,\n): UnregisterComponentHandleAction {\n return { type: ActionTypes.UNREGISTER_COMPONENT_HANDLE, payload: { documentKey, elementKey } }\n}\n\nexport function registerComponentHandleEffect(\n documentKey: string,\n elementKey: string,\n componentHandle: unknown,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerComponentHandle(documentKey, elementKey, componentHandle))\n\n return () => {\n dispatch(unregisterComponentHandle(documentKey, elementKey))\n }\n }\n}\n\nexport function registerMeasurable(\n documentKey: string,\n elementKey: string,\n measurable: Measurable,\n): RegisterMeasurableAction {\n return { type: ActionTypes.REGISTER_MEASURABLE, payload: { documentKey, elementKey, measurable } }\n}\n\nexport function unregisterMeasurable(\n documentKey: string,\n elementKey: string,\n): UnregisterMeasurableAction {\n return { type: ActionTypes.UNREGISTER_MEASURABLE, payload: { documentKey, elementKey } }\n}\n\nexport function registerMeasurableEffect(\n documentKey: string,\n elementKey: string,\n measurable: Measurable,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerMeasurable(documentKey, elementKey, measurable))\n\n return () => {\n dispatch(unregisterMeasurable(documentKey, elementKey))\n }\n }\n}\n\nexport function changeElementBoxModels(\n changedElementBoxModels: Map<string, Map<string, BoxModel | null>>,\n): ChangeElementBoxModelsAction {\n return { type: ActionTypes.CHANGE_ELEMENT_BOX_MODELS, payload: { changedElementBoxModels } }\n}\n\nexport function changeDocumentElementSize(size: Size): ChangeDocumentElementSizeAction {\n return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE, payload: { size } }\n}\n\nexport function changeDocumentElementScrollTop(\n scrollTop: number,\n): ChangeDocumentElementScrollTopAction {\n return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP, payload: { scrollTop } }\n}\n\nexport function registerPropControllersHandle(\n documentKey: string,\n elementKey: string,\n handle: PropControllersHandle,\n): RegisterPropControllersHandleAction {\n return {\n type: ActionTypes.REGISTER_PROP_CONTROLLERS_HANDLE,\n payload: { documentKey, elementKey, handle },\n }\n}\n\nexport function unregisterPropControllersHandle(\n documentKey: string,\n elementKey: string,\n): UnregisterPropControllersHandleAction {\n return {\n type: ActionTypes.UNREGISTER_PROP_CONTROLLERS_HANDLE,\n payload: { documentKey, elementKey },\n }\n}\n\nexport function registerPropControllers(\n documentKey: string,\n elementKey: string,\n propControllers: Record<string, PropController>,\n): RegisterPropControllersAction {\n return {\n type: ActionTypes.REGISTER_PROP_CONTROLLERS,\n payload: { documentKey, elementKey, propControllers },\n }\n}\n\nexport function unregisterPropControllers(\n documentKey: string,\n elementKey: string,\n): UnregisterPropControllersAction {\n return { type: ActionTypes.UNREGISTER_PROP_CONTROLLERS, payload: { documentKey, elementKey } }\n}\n\nexport function messageHostPropController<T>(\n documentKey: string,\n elementKey: string,\n propName: string,\n message: T,\n): MessageHostPropControllerAction<T> {\n return {\n type: ActionTypes.MESSAGE_HOST_PROP_CONTROLLER,\n payload: { documentKey, elementKey, propName, message },\n }\n}\n\nexport function messageBuilderPropController<T>(\n documentKey: string,\n elementKey: string,\n propName: string,\n message: T,\n): MessageBuilderPropControllerAction<T> {\n return {\n type: ActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER,\n payload: { documentKey, elementKey, propName, message },\n }\n}\n"],"names":[],"mappings":"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"}
|
package/dist/actions.es.js
CHANGED
|
@@ -6,12 +6,19 @@ const ActionTypes = {
|
|
|
6
6
|
UNREGISTER_REACT_COMPONENT: "UNREGISTER_REACT_COMPONENT",
|
|
7
7
|
MOUNT_COMPONENT: "MOUNT_COMPONENT",
|
|
8
8
|
UNMOUNT_COMPONENT: "UNMOUNT_COMPONENT",
|
|
9
|
-
|
|
9
|
+
REGISTER_COMPONENT_HANDLE: "REGISTER_COMPONENT_HANDLE",
|
|
10
|
+
UNREGISTER_COMPONENT_HANDLE: "UNREGISTER_COMPONENT_HANDLE",
|
|
10
11
|
REGISTER_MEASURABLE: "REGISTER_MEASURABLE",
|
|
11
12
|
UNREGISTER_MEASURABLE: "UNREGISTER_MEASURABLE",
|
|
12
13
|
CHANGE_ELEMENT_BOX_MODELS: "CHANGE_ELEMENT_BOX_MODELS",
|
|
13
14
|
CHANGE_DOCUMENT_ELEMENT_SIZE: "CHANGE_DOCUMENT_ELEMENT_SIZE",
|
|
14
|
-
CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP: "CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP"
|
|
15
|
+
CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP: "CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP",
|
|
16
|
+
REGISTER_PROP_CONTROLLERS_HANDLE: "REGISTER_PROP_CONTROLLERS_HANDLE",
|
|
17
|
+
UNREGISTER_PROP_CONTROLLERS_HANDLE: "UNREGISTER_PROP_CONTROLLERS_HANDLE",
|
|
18
|
+
REGISTER_PROP_CONTROLLERS: "REGISTER_PROP_CONTROLLERS",
|
|
19
|
+
UNREGISTER_PROP_CONTROLLERS: "UNREGISTER_PROP_CONTROLLERS",
|
|
20
|
+
MESSAGE_HOST_PROP_CONTROLLER: "MESSAGE_HOST_PROP_CONTROLLER",
|
|
21
|
+
MESSAGE_BUILDER_PROP_CONTROLLER: "MESSAGE_BUILDER_PROP_CONTROLLER"
|
|
15
22
|
};
|
|
16
23
|
function changeDocument(documentKey, operation) {
|
|
17
24
|
return { type: ActionTypes.CHANGE_DOCUMENT, payload: { documentKey, operation } };
|
|
@@ -47,28 +54,45 @@ function registerReactComponentEffect(type, component) {
|
|
|
47
54
|
};
|
|
48
55
|
};
|
|
49
56
|
}
|
|
50
|
-
function mountComponent(elementKey) {
|
|
51
|
-
return { type: ActionTypes.MOUNT_COMPONENT, payload: { elementKey } };
|
|
57
|
+
function mountComponent(documentKey, elementKey) {
|
|
58
|
+
return { type: ActionTypes.MOUNT_COMPONENT, payload: { documentKey, elementKey } };
|
|
52
59
|
}
|
|
53
|
-
function unmountComponent(elementKey) {
|
|
54
|
-
return { type: ActionTypes.UNMOUNT_COMPONENT, payload: { elementKey } };
|
|
60
|
+
function unmountComponent(documentKey, elementKey) {
|
|
61
|
+
return { type: ActionTypes.UNMOUNT_COMPONENT, payload: { documentKey, elementKey } };
|
|
55
62
|
}
|
|
56
|
-
function mountComponentEffect(elementKey) {
|
|
63
|
+
function mountComponentEffect(documentKey, elementKey) {
|
|
57
64
|
return (dispatch) => {
|
|
58
|
-
dispatch(mountComponent(elementKey));
|
|
65
|
+
dispatch(mountComponent(documentKey, elementKey));
|
|
59
66
|
return () => {
|
|
60
|
-
dispatch(unmountComponent(elementKey));
|
|
67
|
+
dispatch(unmountComponent(documentKey, elementKey));
|
|
61
68
|
};
|
|
62
69
|
};
|
|
63
70
|
}
|
|
64
|
-
function
|
|
65
|
-
return {
|
|
71
|
+
function registerComponentHandle(documentKey, elementKey, componentHandle) {
|
|
72
|
+
return {
|
|
73
|
+
type: ActionTypes.REGISTER_COMPONENT_HANDLE,
|
|
74
|
+
payload: { documentKey, elementKey, componentHandle }
|
|
75
|
+
};
|
|
66
76
|
}
|
|
67
|
-
function
|
|
68
|
-
return { type: ActionTypes.
|
|
77
|
+
function unregisterComponentHandle(documentKey, elementKey) {
|
|
78
|
+
return { type: ActionTypes.UNREGISTER_COMPONENT_HANDLE, payload: { documentKey, elementKey } };
|
|
69
79
|
}
|
|
70
|
-
function
|
|
71
|
-
return
|
|
80
|
+
function registerComponentHandleEffect(documentKey, elementKey, componentHandle) {
|
|
81
|
+
return (dispatch) => {
|
|
82
|
+
dispatch(registerComponentHandle(documentKey, elementKey, componentHandle));
|
|
83
|
+
return () => {
|
|
84
|
+
dispatch(unregisterComponentHandle(documentKey, elementKey));
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
function registerMeasurable(documentKey, elementKey, measurable) {
|
|
89
|
+
return { type: ActionTypes.REGISTER_MEASURABLE, payload: { documentKey, elementKey, measurable } };
|
|
90
|
+
}
|
|
91
|
+
function unregisterMeasurable(documentKey, elementKey) {
|
|
92
|
+
return { type: ActionTypes.UNREGISTER_MEASURABLE, payload: { documentKey, elementKey } };
|
|
93
|
+
}
|
|
94
|
+
function changeElementBoxModels(changedElementBoxModels) {
|
|
95
|
+
return { type: ActionTypes.CHANGE_ELEMENT_BOX_MODELS, payload: { changedElementBoxModels } };
|
|
72
96
|
}
|
|
73
97
|
function changeDocumentElementSize(size) {
|
|
74
98
|
return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE, payload: { size } };
|
|
@@ -76,5 +100,32 @@ function changeDocumentElementSize(size) {
|
|
|
76
100
|
function changeDocumentElementScrollTop(scrollTop) {
|
|
77
101
|
return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP, payload: { scrollTop } };
|
|
78
102
|
}
|
|
79
|
-
|
|
103
|
+
function registerPropControllersHandle(documentKey, elementKey, handle) {
|
|
104
|
+
return {
|
|
105
|
+
type: ActionTypes.REGISTER_PROP_CONTROLLERS_HANDLE,
|
|
106
|
+
payload: { documentKey, elementKey, handle }
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
function registerPropControllers(documentKey, elementKey, propControllers) {
|
|
110
|
+
return {
|
|
111
|
+
type: ActionTypes.REGISTER_PROP_CONTROLLERS,
|
|
112
|
+
payload: { documentKey, elementKey, propControllers }
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
function unregisterPropControllers(documentKey, elementKey) {
|
|
116
|
+
return { type: ActionTypes.UNREGISTER_PROP_CONTROLLERS, payload: { documentKey, elementKey } };
|
|
117
|
+
}
|
|
118
|
+
function messageHostPropController(documentKey, elementKey, propName, message) {
|
|
119
|
+
return {
|
|
120
|
+
type: ActionTypes.MESSAGE_HOST_PROP_CONTROLLER,
|
|
121
|
+
payload: { documentKey, elementKey, propName, message }
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
function messageBuilderPropController(documentKey, elementKey, propName, message) {
|
|
125
|
+
return {
|
|
126
|
+
type: ActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER,
|
|
127
|
+
payload: { documentKey, elementKey, propName, message }
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
export { ActionTypes as A, changeDocumentElementScrollTop as a, mountComponentEffect as b, changeDocument as c, registerComponentEffect as d, registerReactComponentEffect as e, changeElementBoxModels as f, changeDocumentElementSize as g, registerComponent as h, registerMeasurable as i, unregisterPropControllers as j, registerPropControllersHandle as k, registerPropControllers as l, messageHostPropController as m, messageBuilderPropController as n, registerComponentHandleEffect as r, unregisterMeasurable as u };
|
|
80
131
|
//# sourceMappingURL=actions.es.js.map
|
package/dist/actions.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.es.js","sources":["../src/state/actions.ts"],"sourcesContent":["import type { Operation } from 'ot-json0'\n\nimport type { ComponentType } from './modules/react-components'\nimport type { Measurable, BoxModel } from './modules/box-models'\nimport type { ThunkAction } from 'redux-thunk'\nimport { ComponentMeta } from './modules/components-meta'\nimport { PropControllerDescriptor } from '../prop-controllers'\nimport type { Size } from './react-builder-preview'\n\nexport const ActionTypes = {\n CHANGE_DOCUMENT: 'CHANGE_DOCUMENT',\n\n REGISTER_COMPONENT: 'REGISTER_COMPONENT',\n UNREGISTER_COMPONENT: 'UNREGISTER_COMPONENT',\n\n REGISTER_REACT_COMPONENT: 'REGISTER_REACT_COMPONENT',\n UNREGISTER_REACT_COMPONENT: 'UNREGISTER_REACT_COMPONENT',\n\n MOUNT_COMPONENT: 'MOUNT_COMPONENT',\n UNMOUNT_COMPONENT: 'UNMOUNT_COMPONENT',\n\n CHANGE_COMPONENT_HANDLE: 'CHANGE_COMPONENT_HANDLE',\n\n REGISTER_MEASURABLE: 'REGISTER_MEASURABLE',\n UNREGISTER_MEASURABLE: 'UNREGISTER_MEASURABLE',\n\n CHANGE_ELEMENT_BOX_MODELS: 'CHANGE_ELEMENT_BOX_MODELS',\n\n CHANGE_DOCUMENT_ELEMENT_SIZE: 'CHANGE_DOCUMENT_ELEMENT_SIZE',\n CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP: 'CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP',\n} as const\n\ntype ChangeDocumentAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT\n payload: { documentKey: string; operation: Operation }\n}\n\ntype RegisterComponentAction = {\n type: typeof ActionTypes.REGISTER_COMPONENT\n payload: {\n type: string\n meta: ComponentMeta\n propControllerDescriptors: Record<string, PropControllerDescriptor>\n }\n}\n\ntype UnregisterComponentAction = {\n type: typeof ActionTypes.UNREGISTER_COMPONENT\n payload: { type: string }\n}\n\ntype RegisterReactComponentAction = {\n type: typeof ActionTypes.REGISTER_REACT_COMPONENT\n payload: { type: string; component: ComponentType }\n}\n\ntype UnregisterReactComponentAction = {\n type: typeof ActionTypes.UNREGISTER_REACT_COMPONENT\n payload: { type: string }\n}\n\ntype MountComponentAction = {\n type: typeof ActionTypes.MOUNT_COMPONENT\n payload: { elementKey: string }\n}\n\ntype UnmountComponentAction = {\n type: typeof ActionTypes.UNMOUNT_COMPONENT\n payload: { elementKey: string }\n}\n\ntype ChangeComponentHandleAction = {\n type: typeof ActionTypes.CHANGE_COMPONENT_HANDLE\n payload: { elementKey: string; componentHandle: unknown }\n}\n\ntype RegisterMeasurableAction = {\n type: typeof ActionTypes.REGISTER_MEASURABLE\n payload: { elementKey: string; measurable: Measurable }\n}\n\ntype UnregisterMeasurableAction = {\n type: typeof ActionTypes.UNREGISTER_MEASURABLE\n payload: { elementKey: string }\n}\n\ntype ChangeElementBoxModelsAction = {\n type: typeof ActionTypes.CHANGE_ELEMENT_BOX_MODELS\n payload: { changedElementBoxModels: Map<string, BoxModel | null> }\n}\n\ntype ChangeDocumentElementSizeAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE\n payload: { size: Size }\n}\n\ntype ChangeDocumentElementScrollTopAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP\n payload: { scrollTop: number }\n}\n\nexport type Action =\n | ChangeDocumentAction\n | RegisterComponentAction\n | UnregisterComponentAction\n | RegisterReactComponentAction\n | UnregisterReactComponentAction\n | MountComponentAction\n | UnmountComponentAction\n | ChangeComponentHandleAction\n | RegisterMeasurableAction\n | UnregisterMeasurableAction\n | ChangeElementBoxModelsAction\n | ChangeDocumentElementSizeAction\n | ChangeDocumentElementScrollTopAction\n\nexport function changeDocument(documentKey: string, operation: Operation): ChangeDocumentAction {\n return { type: ActionTypes.CHANGE_DOCUMENT, payload: { documentKey, operation } }\n}\n\nexport function registerComponent(\n type: string,\n meta: ComponentMeta,\n propControllerDescriptors: Record<string, PropControllerDescriptor>,\n): RegisterComponentAction {\n return {\n type: ActionTypes.REGISTER_COMPONENT,\n payload: { type, meta, propControllerDescriptors },\n }\n}\n\nexport function unregisterComponent(type: string): UnregisterComponentAction {\n return { type: ActionTypes.UNREGISTER_COMPONENT, payload: { type } }\n}\n\nexport function registerComponentEffect(\n type: string,\n meta: ComponentMeta,\n propControllerDescriptors: Record<string, PropControllerDescriptor>,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerComponent(type, meta, propControllerDescriptors))\n\n return () => {\n dispatch(unregisterComponent(type))\n }\n }\n}\n\nfunction registerReactComponent(\n type: string,\n component: ComponentType,\n): RegisterReactComponentAction {\n return { type: ActionTypes.REGISTER_REACT_COMPONENT, payload: { type, component } }\n}\n\nfunction unregisterReactComponent(type: string): UnregisterReactComponentAction {\n return { type: ActionTypes.UNREGISTER_REACT_COMPONENT, payload: { type } }\n}\n\nexport function registerReactComponentEffect(\n type: string,\n component: ComponentType,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerReactComponent(type, component))\n\n return () => {\n dispatch(unregisterReactComponent(type))\n }\n }\n}\n\nexport function mountComponent(elementKey: string): MountComponentAction {\n return { type: ActionTypes.MOUNT_COMPONENT, payload: { elementKey } }\n}\n\nexport function unmountComponent(elementKey: string): UnmountComponentAction {\n return { type: ActionTypes.UNMOUNT_COMPONENT, payload: { elementKey } }\n}\n\nexport function mountComponentEffect(\n elementKey: string,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(mountComponent(elementKey))\n\n return () => {\n dispatch(unmountComponent(elementKey))\n }\n }\n}\n\nexport function changeComponentHandle(\n elementKey: string,\n componentHandle: unknown,\n): ChangeComponentHandleAction {\n return { type: ActionTypes.CHANGE_COMPONENT_HANDLE, payload: { elementKey, componentHandle } }\n}\n\nexport function registerMeasurable(\n elementKey: string,\n measurable: Measurable,\n): RegisterMeasurableAction {\n return { type: ActionTypes.REGISTER_MEASURABLE, payload: { elementKey, measurable } }\n}\n\nexport function unregisterMeasurable(elementKey: string): UnregisterMeasurableAction {\n return { type: ActionTypes.UNREGISTER_MEASURABLE, payload: { elementKey } }\n}\n\nexport function registerMeasurableEffect(\n elementKey: string,\n measurable: Measurable,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerMeasurable(elementKey, measurable))\n\n return () => {\n dispatch(unregisterMeasurable(elementKey))\n }\n }\n}\n\nexport function changeElementBoxModels(\n changedElementBoxModels: Map<string, BoxModel | null>,\n): ChangeElementBoxModelsAction {\n return { type: ActionTypes.CHANGE_ELEMENT_BOX_MODELS, payload: { changedElementBoxModels } }\n}\n\nexport function changeDocumentElementSize(size: Size): ChangeDocumentElementSizeAction {\n return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE, payload: { size } }\n}\n\nexport function changeDocumentElementScrollTop(\n scrollTop: number,\n): ChangeDocumentElementScrollTopAction {\n return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP, payload: { scrollTop } }\n}\n"],"names":[],"mappings":"MASa,cAAc;AAAA,EACzB,iBAAiB;AAAA,EAEjB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EAEtB,0BAA0B;AAAA,EAC1B,4BAA4B;AAAA,EAE5B,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EAEnB,yBAAyB;AAAA,EAEzB,qBAAqB;AAAA,EACrB,uBAAuB;AAAA,EAEvB,2BAA2B;AAAA,EAE3B,8BAA8B;AAAA,EAC9B,oCAAoC;AAAA;wBAuFP,aAAqB,WAA4C;SACvF,EAAE,MAAM,YAAY,iBAAiB,SAAS,EAAE,aAAa;AAAA;2BAIpE,MACA,MACA,2BACyB;SAClB;AAAA,IACL,MAAM,YAAY;AAAA,IAClB,SAAS,EAAE,MAAM,MAAM;AAAA;AAAA;6BAIS,MAAyC;SACpE,EAAE,MAAM,YAAY,sBAAsB,SAAS,EAAE;AAAA;iCAI5D,MACA,MACA,2BACmD;SAC5C,cAAY;aACR,kBAAkB,MAAM,MAAM;WAEhC,MAAM;eACF,oBAAoB;AAAA;AAAA;AAAA;AAKnC,gCACE,MACA,WAC8B;SACvB,EAAE,MAAM,YAAY,0BAA0B,SAAS,EAAE,MAAM;AAAA;AAGxE,kCAAkC,MAA8C;SACvE,EAAE,MAAM,YAAY,4BAA4B,SAAS,EAAE;AAAA;sCAIlE,MACA,WACmD;SAC5C,cAAY;aACR,uBAAuB,MAAM;WAE/B,MAAM;eACF,yBAAyB;AAAA;AAAA;AAAA;wBAKT,YAA0C;SAChE,EAAE,MAAM,YAAY,iBAAiB,SAAS,EAAE;AAAA;0BAGxB,YAA4C;SACpE,EAAE,MAAM,YAAY,mBAAmB,SAAS,EAAE;AAAA;8BAIzD,YACmD;SAC5C,cAAY;aACR,eAAe;WAEjB,MAAM;eACF,iBAAiB;AAAA;AAAA;AAAA;+BAM9B,YACA,iBAC6B;SACtB,EAAE,MAAM,YAAY,yBAAyB,SAAS,EAAE,YAAY;AAAA;4BAI3E,YACA,YAC0B;SACnB,EAAE,MAAM,YAAY,qBAAqB,SAAS,EAAE,YAAY;AAAA;8BAGpC,YAAgD;SAC5E,EAAE,MAAM,YAAY,uBAAuB,SAAS,EAAE;AAAA;mCAsBrB,MAA6C;SAC9E,EAAE,MAAM,YAAY,8BAA8B,SAAS,EAAE;AAAA;wCAIpE,WACsC;SAC/B,EAAE,MAAM,YAAY,oCAAoC,SAAS,EAAE;AAAA;;"}
|
|
1
|
+
{"version":3,"file":"actions.es.js","sources":["../src/state/actions.ts"],"sourcesContent":["import type { Operation } from 'ot-json0'\n\nimport type { ComponentType } from './modules/react-components'\nimport type { Measurable, BoxModel } from './modules/box-models'\nimport type { ThunkAction } from 'redux-thunk'\nimport { ComponentMeta } from './modules/components-meta'\nimport { PropControllerDescriptor } from '../prop-controllers'\nimport type { Size } from './react-builder-preview'\nimport type { PropControllersHandle } from './modules/prop-controller-handles'\nimport type { PropController, PropControllerMessage } from '../prop-controllers/instances'\n\nexport const ActionTypes = {\n CHANGE_DOCUMENT: 'CHANGE_DOCUMENT',\n\n REGISTER_COMPONENT: 'REGISTER_COMPONENT',\n UNREGISTER_COMPONENT: 'UNREGISTER_COMPONENT',\n\n REGISTER_REACT_COMPONENT: 'REGISTER_REACT_COMPONENT',\n UNREGISTER_REACT_COMPONENT: 'UNREGISTER_REACT_COMPONENT',\n\n MOUNT_COMPONENT: 'MOUNT_COMPONENT',\n UNMOUNT_COMPONENT: 'UNMOUNT_COMPONENT',\n\n REGISTER_COMPONENT_HANDLE: 'REGISTER_COMPONENT_HANDLE',\n UNREGISTER_COMPONENT_HANDLE: 'UNREGISTER_COMPONENT_HANDLE',\n\n REGISTER_MEASURABLE: 'REGISTER_MEASURABLE',\n UNREGISTER_MEASURABLE: 'UNREGISTER_MEASURABLE',\n\n CHANGE_ELEMENT_BOX_MODELS: 'CHANGE_ELEMENT_BOX_MODELS',\n\n CHANGE_DOCUMENT_ELEMENT_SIZE: 'CHANGE_DOCUMENT_ELEMENT_SIZE',\n CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP: 'CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP',\n\n REGISTER_PROP_CONTROLLERS_HANDLE: 'REGISTER_PROP_CONTROLLERS_HANDLE',\n UNREGISTER_PROP_CONTROLLERS_HANDLE: 'UNREGISTER_PROP_CONTROLLERS_HANDLE',\n REGISTER_PROP_CONTROLLERS: 'REGISTER_PROP_CONTROLLERS',\n UNREGISTER_PROP_CONTROLLERS: 'UNREGISTER_PROP_CONTROLLERS',\n MESSAGE_HOST_PROP_CONTROLLER: 'MESSAGE_HOST_PROP_CONTROLLER',\n MESSAGE_BUILDER_PROP_CONTROLLER: 'MESSAGE_BUILDER_PROP_CONTROLLER',\n} as const\n\ntype ChangeDocumentAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT\n payload: { documentKey: string; operation: Operation }\n}\n\ntype RegisterComponentAction = {\n type: typeof ActionTypes.REGISTER_COMPONENT\n payload: {\n type: string\n meta: ComponentMeta\n propControllerDescriptors: Record<string, PropControllerDescriptor>\n }\n}\n\ntype UnregisterComponentAction = {\n type: typeof ActionTypes.UNREGISTER_COMPONENT\n payload: { type: string }\n}\n\ntype RegisterReactComponentAction = {\n type: typeof ActionTypes.REGISTER_REACT_COMPONENT\n payload: { type: string; component: ComponentType }\n}\n\ntype UnregisterReactComponentAction = {\n type: typeof ActionTypes.UNREGISTER_REACT_COMPONENT\n payload: { type: string }\n}\n\ntype MountComponentAction = {\n type: typeof ActionTypes.MOUNT_COMPONENT\n payload: { documentKey: string; elementKey: string }\n}\n\ntype UnmountComponentAction = {\n type: typeof ActionTypes.UNMOUNT_COMPONENT\n payload: { documentKey: string; elementKey: string }\n}\n\ntype RegisterComponentHandleAction = {\n type: typeof ActionTypes.REGISTER_COMPONENT_HANDLE\n payload: { documentKey: string; elementKey: string; componentHandle: unknown }\n}\n\ntype UnregisterComponentHandleAction = {\n type: typeof ActionTypes.UNREGISTER_COMPONENT_HANDLE\n payload: { documentKey: string; elementKey: string }\n}\n\ntype RegisterMeasurableAction = {\n type: typeof ActionTypes.REGISTER_MEASURABLE\n payload: { documentKey: string; elementKey: string; measurable: Measurable }\n}\n\ntype UnregisterMeasurableAction = {\n type: typeof ActionTypes.UNREGISTER_MEASURABLE\n payload: { documentKey: string; elementKey: string }\n}\n\ntype ChangeElementBoxModelsAction = {\n type: typeof ActionTypes.CHANGE_ELEMENT_BOX_MODELS\n payload: { changedElementBoxModels: Map<string, Map<string, BoxModel | null>> }\n}\n\ntype ChangeDocumentElementSizeAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE\n payload: { size: Size }\n}\n\ntype ChangeDocumentElementScrollTopAction = {\n type: typeof ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP\n payload: { scrollTop: number }\n}\n\ntype RegisterPropControllersHandleAction = {\n type: typeof ActionTypes.REGISTER_PROP_CONTROLLERS_HANDLE\n payload: { documentKey: string; elementKey: string; handle: PropControllersHandle }\n}\n\ntype UnregisterPropControllersHandleAction = {\n type: typeof ActionTypes.UNREGISTER_PROP_CONTROLLERS_HANDLE\n payload: { documentKey: string; elementKey: string }\n}\n\ntype RegisterPropControllersAction = {\n type: typeof ActionTypes.REGISTER_PROP_CONTROLLERS\n payload: {\n documentKey: string\n elementKey: string\n propControllers: Record<string, PropController>\n }\n}\n\ntype UnregisterPropControllersAction = {\n type: typeof ActionTypes.UNREGISTER_PROP_CONTROLLERS\n payload: { documentKey: string; elementKey: string }\n}\n\ntype MessageHostPropControllerAction<T = PropControllerMessage> = {\n type: typeof ActionTypes.MESSAGE_HOST_PROP_CONTROLLER\n payload: { documentKey: string; elementKey: string; propName: string; message: T }\n}\n\ntype MessageBuilderPropControllerAction<T = PropControllerMessage> = {\n type: typeof ActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER\n payload: { documentKey: string; elementKey: string; propName: string; message: T }\n}\n\nexport type Action =\n | ChangeDocumentAction\n | RegisterComponentAction\n | UnregisterComponentAction\n | RegisterReactComponentAction\n | UnregisterReactComponentAction\n | MountComponentAction\n | UnmountComponentAction\n | RegisterComponentHandleAction\n | UnregisterComponentHandleAction\n | RegisterMeasurableAction\n | UnregisterMeasurableAction\n | ChangeElementBoxModelsAction\n | ChangeDocumentElementSizeAction\n | ChangeDocumentElementScrollTopAction\n | RegisterPropControllersHandleAction\n | UnregisterPropControllersHandleAction\n | RegisterPropControllersAction\n | UnregisterPropControllersAction\n | MessageHostPropControllerAction\n | MessageBuilderPropControllerAction\n\nexport function changeDocument(documentKey: string, operation: Operation): ChangeDocumentAction {\n return { type: ActionTypes.CHANGE_DOCUMENT, payload: { documentKey, operation } }\n}\n\nexport function registerComponent(\n type: string,\n meta: ComponentMeta,\n propControllerDescriptors: Record<string, PropControllerDescriptor>,\n): RegisterComponentAction {\n return {\n type: ActionTypes.REGISTER_COMPONENT,\n payload: { type, meta, propControllerDescriptors },\n }\n}\n\nexport function unregisterComponent(type: string): UnregisterComponentAction {\n return { type: ActionTypes.UNREGISTER_COMPONENT, payload: { type } }\n}\n\nexport function registerComponentEffect(\n type: string,\n meta: ComponentMeta,\n propControllerDescriptors: Record<string, PropControllerDescriptor>,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerComponent(type, meta, propControllerDescriptors))\n\n return () => {\n dispatch(unregisterComponent(type))\n }\n }\n}\n\nfunction registerReactComponent(\n type: string,\n component: ComponentType,\n): RegisterReactComponentAction {\n return { type: ActionTypes.REGISTER_REACT_COMPONENT, payload: { type, component } }\n}\n\nfunction unregisterReactComponent(type: string): UnregisterReactComponentAction {\n return { type: ActionTypes.UNREGISTER_REACT_COMPONENT, payload: { type } }\n}\n\nexport function registerReactComponentEffect(\n type: string,\n component: ComponentType,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerReactComponent(type, component))\n\n return () => {\n dispatch(unregisterReactComponent(type))\n }\n }\n}\n\nexport function mountComponent(documentKey: string, elementKey: string): MountComponentAction {\n return { type: ActionTypes.MOUNT_COMPONENT, payload: { documentKey, elementKey } }\n}\n\nexport function unmountComponent(documentKey: string, elementKey: string): UnmountComponentAction {\n return { type: ActionTypes.UNMOUNT_COMPONENT, payload: { documentKey, elementKey } }\n}\n\nexport function mountComponentEffect(\n documentKey: string,\n elementKey: string,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(mountComponent(documentKey, elementKey))\n\n return () => {\n dispatch(unmountComponent(documentKey, elementKey))\n }\n }\n}\n\nfunction registerComponentHandle(\n documentKey: string,\n elementKey: string,\n componentHandle: unknown,\n): RegisterComponentHandleAction {\n return {\n type: ActionTypes.REGISTER_COMPONENT_HANDLE,\n payload: { documentKey, elementKey, componentHandle },\n }\n}\n\nfunction unregisterComponentHandle(\n documentKey: string,\n elementKey: string,\n): UnregisterComponentHandleAction {\n return { type: ActionTypes.UNREGISTER_COMPONENT_HANDLE, payload: { documentKey, elementKey } }\n}\n\nexport function registerComponentHandleEffect(\n documentKey: string,\n elementKey: string,\n componentHandle: unknown,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerComponentHandle(documentKey, elementKey, componentHandle))\n\n return () => {\n dispatch(unregisterComponentHandle(documentKey, elementKey))\n }\n }\n}\n\nexport function registerMeasurable(\n documentKey: string,\n elementKey: string,\n measurable: Measurable,\n): RegisterMeasurableAction {\n return { type: ActionTypes.REGISTER_MEASURABLE, payload: { documentKey, elementKey, measurable } }\n}\n\nexport function unregisterMeasurable(\n documentKey: string,\n elementKey: string,\n): UnregisterMeasurableAction {\n return { type: ActionTypes.UNREGISTER_MEASURABLE, payload: { documentKey, elementKey } }\n}\n\nexport function registerMeasurableEffect(\n documentKey: string,\n elementKey: string,\n measurable: Measurable,\n): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n dispatch(registerMeasurable(documentKey, elementKey, measurable))\n\n return () => {\n dispatch(unregisterMeasurable(documentKey, elementKey))\n }\n }\n}\n\nexport function changeElementBoxModels(\n changedElementBoxModels: Map<string, Map<string, BoxModel | null>>,\n): ChangeElementBoxModelsAction {\n return { type: ActionTypes.CHANGE_ELEMENT_BOX_MODELS, payload: { changedElementBoxModels } }\n}\n\nexport function changeDocumentElementSize(size: Size): ChangeDocumentElementSizeAction {\n return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE, payload: { size } }\n}\n\nexport function changeDocumentElementScrollTop(\n scrollTop: number,\n): ChangeDocumentElementScrollTopAction {\n return { type: ActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP, payload: { scrollTop } }\n}\n\nexport function registerPropControllersHandle(\n documentKey: string,\n elementKey: string,\n handle: PropControllersHandle,\n): RegisterPropControllersHandleAction {\n return {\n type: ActionTypes.REGISTER_PROP_CONTROLLERS_HANDLE,\n payload: { documentKey, elementKey, handle },\n }\n}\n\nexport function unregisterPropControllersHandle(\n documentKey: string,\n elementKey: string,\n): UnregisterPropControllersHandleAction {\n return {\n type: ActionTypes.UNREGISTER_PROP_CONTROLLERS_HANDLE,\n payload: { documentKey, elementKey },\n }\n}\n\nexport function registerPropControllers(\n documentKey: string,\n elementKey: string,\n propControllers: Record<string, PropController>,\n): RegisterPropControllersAction {\n return {\n type: ActionTypes.REGISTER_PROP_CONTROLLERS,\n payload: { documentKey, elementKey, propControllers },\n }\n}\n\nexport function unregisterPropControllers(\n documentKey: string,\n elementKey: string,\n): UnregisterPropControllersAction {\n return { type: ActionTypes.UNREGISTER_PROP_CONTROLLERS, payload: { documentKey, elementKey } }\n}\n\nexport function messageHostPropController<T>(\n documentKey: string,\n elementKey: string,\n propName: string,\n message: T,\n): MessageHostPropControllerAction<T> {\n return {\n type: ActionTypes.MESSAGE_HOST_PROP_CONTROLLER,\n payload: { documentKey, elementKey, propName, message },\n }\n}\n\nexport function messageBuilderPropController<T>(\n documentKey: string,\n elementKey: string,\n propName: string,\n message: T,\n): MessageBuilderPropControllerAction<T> {\n return {\n type: ActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER,\n payload: { documentKey, elementKey, propName, message },\n }\n}\n"],"names":[],"mappings":"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"}
|
package/dist/box-models.cjs.js
CHANGED
|
@@ -192,31 +192,41 @@ function getMeasurables(state) {
|
|
|
192
192
|
function getBoxModels(state) {
|
|
193
193
|
return state.boxModels;
|
|
194
194
|
}
|
|
195
|
-
function getBoxModel(state, elementKey) {
|
|
196
|
-
var _a;
|
|
197
|
-
return (_a = getBoxModels(state).get(elementKey)) != null ?
|
|
195
|
+
function getBoxModel(state, documentKey, elementKey) {
|
|
196
|
+
var _a, _b;
|
|
197
|
+
return (_b = (_a = getBoxModels(state).get(documentKey)) == null ? void 0 : _a.get(elementKey)) != null ? _b : null;
|
|
198
198
|
}
|
|
199
199
|
function reducer(state = getInitialState(), action) {
|
|
200
|
+
var _a, _b;
|
|
200
201
|
switch (action.type) {
|
|
201
|
-
case actions.ActionTypes.REGISTER_MEASURABLE:
|
|
202
|
+
case actions.ActionTypes.REGISTER_MEASURABLE: {
|
|
203
|
+
const { documentKey, elementKey, measurable } = action.payload;
|
|
202
204
|
return __spreadProps(__spreadValues({}, state), {
|
|
203
|
-
measurables: new Map(
|
|
205
|
+
measurables: new Map(state.measurables).set(documentKey, new Map((_a = state.measurables.get(documentKey)) != null ? _a : []).set(elementKey, measurable))
|
|
204
206
|
});
|
|
207
|
+
}
|
|
205
208
|
case actions.ActionTypes.UNREGISTER_MEASURABLE: {
|
|
206
|
-
const
|
|
207
|
-
const
|
|
208
|
-
|
|
209
|
+
const { documentKey, elementKey } = action.payload;
|
|
210
|
+
const nextMeasurables = new Map((_b = state.measurables.get(documentKey)) != null ? _b : []);
|
|
211
|
+
const deleted = nextMeasurables.delete(elementKey);
|
|
212
|
+
return deleted ? __spreadProps(__spreadValues({}, state), { measurables: new Map(state.measurables).set(documentKey, nextMeasurables) }) : state;
|
|
209
213
|
}
|
|
210
214
|
case actions.ActionTypes.CHANGE_ELEMENT_BOX_MODELS: {
|
|
211
215
|
const { changedElementBoxModels } = action.payload;
|
|
212
216
|
if (changedElementBoxModels.size === 0)
|
|
213
217
|
return state;
|
|
214
|
-
const nextBoxModels = new Map(
|
|
215
|
-
changedElementBoxModels.forEach((
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
218
|
+
const nextBoxModels = new Map(state.boxModels);
|
|
219
|
+
changedElementBoxModels.forEach((changedBoxModels, documentKey) => {
|
|
220
|
+
var _a2;
|
|
221
|
+
const nextDocumentBoxModels = new Map((_a2 = nextBoxModels.get(documentKey)) != null ? _a2 : []);
|
|
222
|
+
changedBoxModels.forEach((changedBoxModel, elementKey) => {
|
|
223
|
+
if (changedBoxModel == null)
|
|
224
|
+
nextDocumentBoxModels.delete(elementKey);
|
|
225
|
+
else
|
|
226
|
+
nextDocumentBoxModels.set(elementKey, changedBoxModel);
|
|
227
|
+
});
|
|
228
|
+
if (nextDocumentBoxModels.size > 0)
|
|
229
|
+
nextBoxModels.set(documentKey, nextDocumentBoxModels);
|
|
220
230
|
});
|
|
221
231
|
return __spreadProps(__spreadValues({}, state), { boxModels: nextBoxModels });
|
|
222
232
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"box-models.cjs.js","sources":["../../../node_modules/tiny-invariant/dist/tiny-invariant.esm.js","../../../node_modules/css-box-model/dist/css-box-model.esm.js","../src/state/modules/box-models.ts"],"sourcesContent":["var isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed';\nfunction invariant(condition, message) {\n if (condition) {\n return;\n }\n if (isProduction) {\n throw new Error(prefix);\n }\n var provided = typeof message === 'function' ? message() : message;\n var value = provided ? prefix + \": \" + provided : prefix;\n throw new Error(value);\n}\n\nexport { invariant as default };\n","import invariant from 'tiny-invariant';\n\nvar getRect = function getRect(_ref) {\n var top = _ref.top,\n right = _ref.right,\n bottom = _ref.bottom,\n left = _ref.left;\n var width = right - left;\n var height = bottom - top;\n var rect = {\n top: top,\n right: right,\n bottom: bottom,\n left: left,\n width: width,\n height: height,\n x: left,\n y: top,\n center: {\n x: (right + left) / 2,\n y: (bottom + top) / 2\n }\n };\n return rect;\n};\nvar expand = function expand(target, expandBy) {\n return {\n top: target.top - expandBy.top,\n left: target.left - expandBy.left,\n bottom: target.bottom + expandBy.bottom,\n right: target.right + expandBy.right\n };\n};\nvar shrink = function shrink(target, shrinkBy) {\n return {\n top: target.top + shrinkBy.top,\n left: target.left + shrinkBy.left,\n bottom: target.bottom - shrinkBy.bottom,\n right: target.right - shrinkBy.right\n };\n};\n\nvar shift = function shift(target, shiftBy) {\n return {\n top: target.top + shiftBy.y,\n left: target.left + shiftBy.x,\n bottom: target.bottom + shiftBy.y,\n right: target.right + shiftBy.x\n };\n};\n\nvar noSpacing = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n};\nvar createBox = function createBox(_ref2) {\n var borderBox = _ref2.borderBox,\n _ref2$margin = _ref2.margin,\n margin = _ref2$margin === void 0 ? noSpacing : _ref2$margin,\n _ref2$border = _ref2.border,\n border = _ref2$border === void 0 ? noSpacing : _ref2$border,\n _ref2$padding = _ref2.padding,\n padding = _ref2$padding === void 0 ? noSpacing : _ref2$padding;\n var marginBox = getRect(expand(borderBox, margin));\n var paddingBox = getRect(shrink(borderBox, border));\n var contentBox = getRect(shrink(paddingBox, padding));\n return {\n marginBox: marginBox,\n borderBox: getRect(borderBox),\n paddingBox: paddingBox,\n contentBox: contentBox,\n margin: margin,\n border: border,\n padding: padding\n };\n};\n\nvar parse = function parse(raw) {\n var value = raw.slice(0, -2);\n var suffix = raw.slice(-2);\n\n if (suffix !== 'px') {\n return 0;\n }\n\n var result = Number(value);\n !!isNaN(result) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Could not parse value [raw: \" + raw + \", without suffix: \" + value + \"]\") : invariant(false) : void 0;\n return result;\n};\n\nvar getWindowScroll = function getWindowScroll() {\n return {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n};\n\nvar offset = function offset(original, change) {\n var borderBox = original.borderBox,\n border = original.border,\n margin = original.margin,\n padding = original.padding;\n var shifted = shift(borderBox, change);\n return createBox({\n borderBox: shifted,\n border: border,\n margin: margin,\n padding: padding\n });\n};\nvar withScroll = function withScroll(original, scroll) {\n if (scroll === void 0) {\n scroll = getWindowScroll();\n }\n\n return offset(original, scroll);\n};\nvar calculateBox = function calculateBox(borderBox, styles) {\n var margin = {\n top: parse(styles.marginTop),\n right: parse(styles.marginRight),\n bottom: parse(styles.marginBottom),\n left: parse(styles.marginLeft)\n };\n var padding = {\n top: parse(styles.paddingTop),\n right: parse(styles.paddingRight),\n bottom: parse(styles.paddingBottom),\n left: parse(styles.paddingLeft)\n };\n var border = {\n top: parse(styles.borderTopWidth),\n right: parse(styles.borderRightWidth),\n bottom: parse(styles.borderBottomWidth),\n left: parse(styles.borderLeftWidth)\n };\n return createBox({\n borderBox: borderBox,\n margin: margin,\n padding: padding,\n border: border\n });\n};\nvar getBox = function getBox(el) {\n var borderBox = el.getBoundingClientRect();\n var styles = window.getComputedStyle(el);\n return calculateBox(borderBox, styles);\n};\n\nexport { calculateBox, createBox, expand, getBox, getRect, offset, shrink, withScroll };\n","import {\n BoxModel,\n createBox as createBoxWithoutScroll,\n CreateBoxArgs,\n getBox as getBoxWithoutScroll,\n withScroll,\n} from 'css-box-model'\n\nimport { Action, ActionTypes } from '../actions'\n\nexport type { BoxModel }\n\nexport function parse(rawString: string): number {\n const value = Number(rawString.replace(/px$/, ''))\n\n return Number.isFinite(value) ? value : 0\n}\n\nexport function createBox(boxArgs: CreateBoxArgs): BoxModel {\n return withScroll(createBoxWithoutScroll(boxArgs))\n}\n\nexport function getBox(element: Element): BoxModel {\n return withScroll(getBoxWithoutScroll(element))\n}\n\nexport interface BoxModelHandle {\n getBoxModel(): BoxModel | null\n}\n\nexport type Measurable = Element | BoxModelHandle\n\nexport function isMeasurable(value: unknown): value is Measurable {\n if (value instanceof Element) return true\n\n if (\n typeof value === 'object' &&\n value !== null &&\n 'getBoxModel' in value &&\n typeof (value as { getBoxModel: unknown }).getBoxModel === 'function'\n ) {\n return true\n }\n\n return false\n}\n\nexport function measure(measurable: Measurable): BoxModel | null {\n if (measurable instanceof Element) return getBox(measurable)\n\n return measurable.getBoxModel()\n}\n\nexport type State = {\n measurables: Map<string, Measurable>\n boxModels: Map<string, BoxModel>\n}\n\nexport function getInitialState(): State {\n return { measurables: new Map(), boxModels: new Map() }\n}\n\nexport function getMeasurables(state: State): Map<string, Measurable> {\n return state.measurables\n}\n\nexport function getBoxModels(state: State): Map<string, BoxModel> {\n return state.boxModels\n}\n\nexport function getBoxModel(state: State, elementKey: string): BoxModel | null {\n return getBoxModels(state).get(elementKey) ?? null\n}\n\nexport function reducer(state: State = getInitialState(), action: Action) {\n switch (action.type) {\n case ActionTypes.REGISTER_MEASURABLE:\n return {\n ...state,\n measurables: new Map(getMeasurables(state)).set(\n action.payload.elementKey,\n action.payload.measurable,\n ),\n }\n\n case ActionTypes.UNREGISTER_MEASURABLE: {\n const nextMeasurables = new Map(getMeasurables(state))\n\n const deleted = nextMeasurables.delete(action.payload.elementKey)\n\n return deleted ? { ...state, measurables: nextMeasurables } : state\n }\n\n case ActionTypes.CHANGE_ELEMENT_BOX_MODELS: {\n const { changedElementBoxModels } = action.payload\n\n if (changedElementBoxModels.size === 0) return state\n\n const nextBoxModels = new Map(getBoxModels(state))\n\n changedElementBoxModels.forEach((boxModel, elementKey) => {\n if (boxModel == null) nextBoxModels.delete(elementKey)\n else nextBoxModels.set(elementKey, boxModel)\n })\n\n return { ...state, boxModels: nextBoxModels }\n }\n\n default:\n return state\n }\n}\n"],"names":["createBox","parse","getBox","createBoxWithoutScroll","getBoxWithoutScroll","ActionTypes"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"box-models.cjs.js","sources":["../../../node_modules/tiny-invariant/dist/tiny-invariant.esm.js","../../../node_modules/css-box-model/dist/css-box-model.esm.js","../src/state/modules/box-models.ts"],"sourcesContent":["var isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed';\nfunction invariant(condition, message) {\n if (condition) {\n return;\n }\n if (isProduction) {\n throw new Error(prefix);\n }\n var provided = typeof message === 'function' ? message() : message;\n var value = provided ? prefix + \": \" + provided : prefix;\n throw new Error(value);\n}\n\nexport { invariant as default };\n","import invariant from 'tiny-invariant';\n\nvar getRect = function getRect(_ref) {\n var top = _ref.top,\n right = _ref.right,\n bottom = _ref.bottom,\n left = _ref.left;\n var width = right - left;\n var height = bottom - top;\n var rect = {\n top: top,\n right: right,\n bottom: bottom,\n left: left,\n width: width,\n height: height,\n x: left,\n y: top,\n center: {\n x: (right + left) / 2,\n y: (bottom + top) / 2\n }\n };\n return rect;\n};\nvar expand = function expand(target, expandBy) {\n return {\n top: target.top - expandBy.top,\n left: target.left - expandBy.left,\n bottom: target.bottom + expandBy.bottom,\n right: target.right + expandBy.right\n };\n};\nvar shrink = function shrink(target, shrinkBy) {\n return {\n top: target.top + shrinkBy.top,\n left: target.left + shrinkBy.left,\n bottom: target.bottom - shrinkBy.bottom,\n right: target.right - shrinkBy.right\n };\n};\n\nvar shift = function shift(target, shiftBy) {\n return {\n top: target.top + shiftBy.y,\n left: target.left + shiftBy.x,\n bottom: target.bottom + shiftBy.y,\n right: target.right + shiftBy.x\n };\n};\n\nvar noSpacing = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n};\nvar createBox = function createBox(_ref2) {\n var borderBox = _ref2.borderBox,\n _ref2$margin = _ref2.margin,\n margin = _ref2$margin === void 0 ? noSpacing : _ref2$margin,\n _ref2$border = _ref2.border,\n border = _ref2$border === void 0 ? noSpacing : _ref2$border,\n _ref2$padding = _ref2.padding,\n padding = _ref2$padding === void 0 ? noSpacing : _ref2$padding;\n var marginBox = getRect(expand(borderBox, margin));\n var paddingBox = getRect(shrink(borderBox, border));\n var contentBox = getRect(shrink(paddingBox, padding));\n return {\n marginBox: marginBox,\n borderBox: getRect(borderBox),\n paddingBox: paddingBox,\n contentBox: contentBox,\n margin: margin,\n border: border,\n padding: padding\n };\n};\n\nvar parse = function parse(raw) {\n var value = raw.slice(0, -2);\n var suffix = raw.slice(-2);\n\n if (suffix !== 'px') {\n return 0;\n }\n\n var result = Number(value);\n !!isNaN(result) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Could not parse value [raw: \" + raw + \", without suffix: \" + value + \"]\") : invariant(false) : void 0;\n return result;\n};\n\nvar getWindowScroll = function getWindowScroll() {\n return {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n};\n\nvar offset = function offset(original, change) {\n var borderBox = original.borderBox,\n border = original.border,\n margin = original.margin,\n padding = original.padding;\n var shifted = shift(borderBox, change);\n return createBox({\n borderBox: shifted,\n border: border,\n margin: margin,\n padding: padding\n });\n};\nvar withScroll = function withScroll(original, scroll) {\n if (scroll === void 0) {\n scroll = getWindowScroll();\n }\n\n return offset(original, scroll);\n};\nvar calculateBox = function calculateBox(borderBox, styles) {\n var margin = {\n top: parse(styles.marginTop),\n right: parse(styles.marginRight),\n bottom: parse(styles.marginBottom),\n left: parse(styles.marginLeft)\n };\n var padding = {\n top: parse(styles.paddingTop),\n right: parse(styles.paddingRight),\n bottom: parse(styles.paddingBottom),\n left: parse(styles.paddingLeft)\n };\n var border = {\n top: parse(styles.borderTopWidth),\n right: parse(styles.borderRightWidth),\n bottom: parse(styles.borderBottomWidth),\n left: parse(styles.borderLeftWidth)\n };\n return createBox({\n borderBox: borderBox,\n margin: margin,\n padding: padding,\n border: border\n });\n};\nvar getBox = function getBox(el) {\n var borderBox = el.getBoundingClientRect();\n var styles = window.getComputedStyle(el);\n return calculateBox(borderBox, styles);\n};\n\nexport { calculateBox, createBox, expand, getBox, getRect, offset, shrink, withScroll };\n","import {\n BoxModel,\n createBox as createBoxWithoutScroll,\n CreateBoxArgs,\n getBox as getBoxWithoutScroll,\n withScroll,\n} from 'css-box-model'\n\nimport { Action, ActionTypes } from '../actions'\n\nexport type { BoxModel }\n\nexport function parse(rawString: string): number {\n const value = Number(rawString.replace(/px$/, ''))\n\n return Number.isFinite(value) ? value : 0\n}\n\nexport function createBox(boxArgs: CreateBoxArgs): BoxModel {\n return withScroll(createBoxWithoutScroll(boxArgs))\n}\n\nexport function getBox(element: Element): BoxModel {\n return withScroll(getBoxWithoutScroll(element))\n}\n\nexport interface BoxModelHandle {\n getBoxModel(): BoxModel | null\n}\n\nexport type Measurable = Element | BoxModelHandle\n\nexport function isMeasurable(value: unknown): value is Measurable {\n if (value instanceof Element) return true\n\n if (\n typeof value === 'object' &&\n value !== null &&\n 'getBoxModel' in value &&\n typeof (value as { getBoxModel: unknown }).getBoxModel === 'function'\n ) {\n return true\n }\n\n return false\n}\n\nexport function measure(measurable: Measurable): BoxModel | null {\n if (measurable instanceof Element) return getBox(measurable)\n\n return measurable.getBoxModel()\n}\n\nexport type State = {\n measurables: Map<string, Map<string, Measurable>>\n boxModels: Map<string, Map<string, BoxModel>>\n}\n\nexport function getInitialState(): State {\n return { measurables: new Map(), boxModels: new Map() }\n}\n\nexport function getMeasurables(state: State): Map<string, Map<string, Measurable>> {\n return state.measurables\n}\n\nexport function getBoxModels(state: State): Map<string, Map<string, BoxModel>> {\n return state.boxModels\n}\n\nexport function getBoxModel(\n state: State,\n documentKey: string,\n elementKey: string,\n): BoxModel | null {\n return getBoxModels(state).get(documentKey)?.get(elementKey) ?? null\n}\n\nexport function reducer(state: State = getInitialState(), action: Action) {\n switch (action.type) {\n case ActionTypes.REGISTER_MEASURABLE: {\n const { documentKey, elementKey, measurable } = action.payload\n\n return {\n ...state,\n measurables: new Map(state.measurables).set(\n documentKey,\n new Map(state.measurables.get(documentKey) ?? []).set(elementKey, measurable),\n ),\n }\n }\n\n case ActionTypes.UNREGISTER_MEASURABLE: {\n const { documentKey, elementKey } = action.payload\n const nextMeasurables = new Map(state.measurables.get(documentKey) ?? [])\n\n const deleted = nextMeasurables.delete(elementKey)\n\n return deleted\n ? { ...state, measurables: new Map(state.measurables).set(documentKey, nextMeasurables) }\n : state\n }\n\n case ActionTypes.CHANGE_ELEMENT_BOX_MODELS: {\n const { changedElementBoxModels } = action.payload\n\n if (changedElementBoxModels.size === 0) return state\n\n const nextBoxModels = new Map(state.boxModels)\n\n changedElementBoxModels.forEach((changedBoxModels, documentKey) => {\n const nextDocumentBoxModels = new Map(nextBoxModels.get(documentKey) ?? [])\n\n changedBoxModels.forEach((changedBoxModel, elementKey) => {\n if (changedBoxModel == null) nextDocumentBoxModels.delete(elementKey)\n else nextDocumentBoxModels.set(elementKey, changedBoxModel)\n })\n\n if (nextDocumentBoxModels.size > 0) nextBoxModels.set(documentKey, nextDocumentBoxModels)\n })\n\n return { ...state, boxModels: nextBoxModels }\n }\n\n default:\n return state\n }\n}\n"],"names":["createBox","parse","getBox","createBoxWithoutScroll","getBoxWithoutScroll","ActionTypes"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAI,eAAe;AACnB,IAAI,SAAS;AACb,mBAAmB,WAAW,SAAS;AACnC,MAAI,WAAW;AACX;AAAA;AAEJ,MAAI,cAAc;AACd,UAAM,IAAI,MAAM;AAAA;AAEpB,MAAI,WAAW,OAAO,YAAY,aAAa,YAAY;AAC3D,MAAI,QAAQ,WAAW,SAAS,OAAO,WAAW;AAClD,QAAM,IAAI,MAAM;AAAA;ACTpB,IAAI,UAAU,kBAAiB,MAAM;AACnC,MAAI,MAAM,KAAK,KACX,QAAQ,KAAK,OACb,SAAS,KAAK,QACd,OAAO,KAAK;AAChB,MAAI,QAAQ,QAAQ;AACpB,MAAI,SAAS,SAAS;AACtB,MAAI,OAAO;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,IACH,GAAG;AAAA,IACH,QAAQ;AAAA,MACN,GAAI,SAAQ,QAAQ;AAAA,MACpB,GAAI,UAAS,OAAO;AAAA;AAAA;AAGxB,SAAO;AAAA;AAET,IAAI,SAAS,iBAAgB,QAAQ,UAAU;AAC7C,SAAO;AAAA,IACL,KAAK,OAAO,MAAM,SAAS;AAAA,IAC3B,MAAM,OAAO,OAAO,SAAS;AAAA,IAC7B,QAAQ,OAAO,SAAS,SAAS;AAAA,IACjC,OAAO,OAAO,QAAQ,SAAS;AAAA;AAAA;AAGnC,IAAI,SAAS,iBAAgB,QAAQ,UAAU;AAC7C,SAAO;AAAA,IACL,KAAK,OAAO,MAAM,SAAS;AAAA,IAC3B,MAAM,OAAO,OAAO,SAAS;AAAA,IAC7B,QAAQ,OAAO,SAAS,SAAS;AAAA,IACjC,OAAO,OAAO,QAAQ,SAAS;AAAA;AAAA;AAInC,IAAI,QAAQ,gBAAe,QAAQ,SAAS;AAC1C,SAAO;AAAA,IACL,KAAK,OAAO,MAAM,QAAQ;AAAA,IAC1B,MAAM,OAAO,OAAO,QAAQ;AAAA,IAC5B,QAAQ,OAAO,SAAS,QAAQ;AAAA,IAChC,OAAO,OAAO,QAAQ,QAAQ;AAAA;AAAA;AAIlC,IAAI,YAAY;AAAA,EACd,KAAK;AAAA,EACL,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,MAAM;AAAA;AAER,IAAIA,cAAY,oBAAmB,OAAO;AACxC,MAAI,YAAY,MAAM,WAClB,eAAe,MAAM,QACrB,SAAS,iBAAiB,SAAS,YAAY,cAC/C,eAAe,MAAM,QACrB,SAAS,iBAAiB,SAAS,YAAY,cAC/C,gBAAgB,MAAM,SACtB,UAAU,kBAAkB,SAAS,YAAY;AACrD,MAAI,YAAY,QAAQ,OAAO,WAAW;AAC1C,MAAI,aAAa,QAAQ,OAAO,WAAW;AAC3C,MAAI,aAAa,QAAQ,OAAO,YAAY;AAC5C,SAAO;AAAA,IACL;AAAA,IACA,WAAW,QAAQ;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;AAIJ,IAAIC,UAAQ,gBAAe,KAAK;AAC9B,MAAI,QAAQ,IAAI,MAAM,GAAG;AACzB,MAAI,SAAS,IAAI,MAAM;AAEvB,MAAI,WAAW,MAAM;AACnB,WAAO;AAAA;AAGT,MAAI,SAAS,OAAO;AACpB,GAAC,CAAC,MAAM,UAAgJ,UAAU,SAAS;AAC3K,SAAO;AAAA;AAGT,IAAI,kBAAkB,4BAA2B;AAC/C,SAAO;AAAA,IACL,GAAG,OAAO;AAAA,IACV,GAAG,OAAO;AAAA;AAAA;AAId,IAAI,SAAS,iBAAgB,UAAU,QAAQ;AAC7C,MAAI,YAAY,SAAS,WACrB,SAAS,SAAS,QAClB,SAAS,SAAS,QAClB,UAAU,SAAS;AACvB,MAAI,UAAU,MAAM,WAAW;AAC/B,SAAOD,YAAU;AAAA,IACf,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA;AAAA;AAGJ,IAAI,aAAa,qBAAoB,UAAU,QAAQ;AACrD,MAAI,WAAW,QAAQ;AACrB,aAAS;AAAA;AAGX,SAAO,OAAO,UAAU;AAAA;AAE1B,IAAI,eAAe,uBAAsB,WAAW,QAAQ;AAC1D,MAAI,SAAS;AAAA,IACX,KAAKC,QAAM,OAAO;AAAA,IAClB,OAAOA,QAAM,OAAO;AAAA,IACpB,QAAQA,QAAM,OAAO;AAAA,IACrB,MAAMA,QAAM,OAAO;AAAA;AAErB,MAAI,UAAU;AAAA,IACZ,KAAKA,QAAM,OAAO;AAAA,IAClB,OAAOA,QAAM,OAAO;AAAA,IACpB,QAAQA,QAAM,OAAO;AAAA,IACrB,MAAMA,QAAM,OAAO;AAAA;AAErB,MAAI,SAAS;AAAA,IACX,KAAKA,QAAM,OAAO;AAAA,IAClB,OAAOA,QAAM,OAAO;AAAA,IACpB,QAAQA,QAAM,OAAO;AAAA,IACrB,MAAMA,QAAM,OAAO;AAAA;AAErB,SAAOD,YAAU;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;AAGJ,IAAIE,WAAS,iBAAgB,IAAI;AAC/B,MAAI,YAAY,GAAG;AACnB,MAAI,SAAS,OAAO,iBAAiB;AACrC,SAAO,aAAa,WAAW;AAAA;eCxIX,WAA2B;QACzC,QAAQ,OAAO,UAAU,QAAQ,OAAO;SAEvC,OAAO,SAAS,SAAS,QAAQ;AAAA;mBAGhB,SAAkC;SACnD,WAAWC,YAAuB;AAAA;gBAGpB,SAA4B;SAC1C,WAAWC,SAAoB;AAAA;sBASX,OAAqC;MAC5D,iBAAiB;WAAgB;MAGnC,OAAO,UAAU,YACjB,UAAU,QACV,iBAAiB,SACjB,OAAQ,MAAmC,gBAAgB,YAC3D;WACO;AAAA;SAGF;AAAA;iBAGe,YAAyC;MAC3D,sBAAsB;WAAgB,OAAO;SAE1C,WAAW;AAAA;2BAQqB;SAChC,EAAE,iCAAiB,OAAO,+BAAe;AAAA;wBAGnB,OAAoD;SAC1E,MAAM;AAAA;sBAGc,OAAkD;SACtE,MAAM;AAAA;qBAIb,OACA,aACA,YACiB;;SACV,yBAAa,OAAO,IAAI,iBAAxB,mBAAsC,IAAI,gBAA1C,YAAyD;AAAA;iBAG1C,QAAe,mBAAmB,QAAgB;;UAChE,OAAO;AAAA,SACRC,oBAAY,qBAAqB;YAC9B,EAAE,aAAa,YAAY,eAAe,OAAO;aAEhD,iCACF,QADE;AAAA,QAEL,aAAa,IAAI,IAAI,MAAM,aAAa,IACtC,aACA,IAAI,IAAI,YAAM,YAAY,IAAI,iBAAtB,YAAsC,IAAI,IAAI,YAAY;AAAA;AAAA;AAAA,SAKnEA,oBAAY,uBAAuB;YAChC,EAAE,aAAa,eAAe,OAAO;YACrC,kBAAkB,IAAI,IAAI,YAAM,YAAY,IAAI,iBAAtB,YAAsC;YAEhE,UAAU,gBAAgB,OAAO;aAEhC,UACH,iCAAK,QAAL,EAAY,aAAa,IAAI,IAAI,MAAM,aAAa,IAAI,aAAa,sBACrE;AAAA;AAAA,SAGDA,oBAAY,2BAA2B;YACpC,EAAE,4BAA4B,OAAO;UAEvC,wBAAwB,SAAS;eAAU;YAEzC,gBAAgB,IAAI,IAAI,MAAM;8BAEZ,QAAQ,CAAC,kBAAkB,gBAAgB;;cAC3D,wBAAwB,IAAI,IAAI,qBAAc,IAAI,iBAAlB,aAAkC;yBAEvD,QAAQ,CAAC,iBAAiB,eAAe;cACpD,mBAAmB;kCAA4B,OAAO;AAAA;kCAC/B,IAAI,YAAY;AAAA;YAGzC,sBAAsB,OAAO;wBAAiB,IAAI,aAAa;AAAA;aAG9D,iCAAK,QAAL,EAAY,WAAW;AAAA;AAAA;aAIvB;AAAA;AAAA;;;;;;;;;;"}
|
package/dist/box-models.es.js
CHANGED
|
@@ -191,31 +191,41 @@ function getMeasurables(state) {
|
|
|
191
191
|
function getBoxModels(state) {
|
|
192
192
|
return state.boxModels;
|
|
193
193
|
}
|
|
194
|
-
function getBoxModel(state, elementKey) {
|
|
195
|
-
var _a;
|
|
196
|
-
return (_a = getBoxModels(state).get(elementKey)) != null ?
|
|
194
|
+
function getBoxModel(state, documentKey, elementKey) {
|
|
195
|
+
var _a, _b;
|
|
196
|
+
return (_b = (_a = getBoxModels(state).get(documentKey)) == null ? void 0 : _a.get(elementKey)) != null ? _b : null;
|
|
197
197
|
}
|
|
198
198
|
function reducer(state = getInitialState(), action) {
|
|
199
|
+
var _a, _b;
|
|
199
200
|
switch (action.type) {
|
|
200
|
-
case ActionTypes.REGISTER_MEASURABLE:
|
|
201
|
+
case ActionTypes.REGISTER_MEASURABLE: {
|
|
202
|
+
const { documentKey, elementKey, measurable } = action.payload;
|
|
201
203
|
return __spreadProps(__spreadValues({}, state), {
|
|
202
|
-
measurables: new Map(
|
|
204
|
+
measurables: new Map(state.measurables).set(documentKey, new Map((_a = state.measurables.get(documentKey)) != null ? _a : []).set(elementKey, measurable))
|
|
203
205
|
});
|
|
206
|
+
}
|
|
204
207
|
case ActionTypes.UNREGISTER_MEASURABLE: {
|
|
205
|
-
const
|
|
206
|
-
const
|
|
207
|
-
|
|
208
|
+
const { documentKey, elementKey } = action.payload;
|
|
209
|
+
const nextMeasurables = new Map((_b = state.measurables.get(documentKey)) != null ? _b : []);
|
|
210
|
+
const deleted = nextMeasurables.delete(elementKey);
|
|
211
|
+
return deleted ? __spreadProps(__spreadValues({}, state), { measurables: new Map(state.measurables).set(documentKey, nextMeasurables) }) : state;
|
|
208
212
|
}
|
|
209
213
|
case ActionTypes.CHANGE_ELEMENT_BOX_MODELS: {
|
|
210
214
|
const { changedElementBoxModels } = action.payload;
|
|
211
215
|
if (changedElementBoxModels.size === 0)
|
|
212
216
|
return state;
|
|
213
|
-
const nextBoxModels = new Map(
|
|
214
|
-
changedElementBoxModels.forEach((
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
217
|
+
const nextBoxModels = new Map(state.boxModels);
|
|
218
|
+
changedElementBoxModels.forEach((changedBoxModels, documentKey) => {
|
|
219
|
+
var _a2;
|
|
220
|
+
const nextDocumentBoxModels = new Map((_a2 = nextBoxModels.get(documentKey)) != null ? _a2 : []);
|
|
221
|
+
changedBoxModels.forEach((changedBoxModel, elementKey) => {
|
|
222
|
+
if (changedBoxModel == null)
|
|
223
|
+
nextDocumentBoxModels.delete(elementKey);
|
|
224
|
+
else
|
|
225
|
+
nextDocumentBoxModels.set(elementKey, changedBoxModel);
|
|
226
|
+
});
|
|
227
|
+
if (nextDocumentBoxModels.size > 0)
|
|
228
|
+
nextBoxModels.set(documentKey, nextDocumentBoxModels);
|
|
219
229
|
});
|
|
220
230
|
return __spreadProps(__spreadValues({}, state), { boxModels: nextBoxModels });
|
|
221
231
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"box-models.es.js","sources":["../../../node_modules/tiny-invariant/dist/tiny-invariant.esm.js","../../../node_modules/css-box-model/dist/css-box-model.esm.js","../src/state/modules/box-models.ts"],"sourcesContent":["var isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed';\nfunction invariant(condition, message) {\n if (condition) {\n return;\n }\n if (isProduction) {\n throw new Error(prefix);\n }\n var provided = typeof message === 'function' ? message() : message;\n var value = provided ? prefix + \": \" + provided : prefix;\n throw new Error(value);\n}\n\nexport { invariant as default };\n","import invariant from 'tiny-invariant';\n\nvar getRect = function getRect(_ref) {\n var top = _ref.top,\n right = _ref.right,\n bottom = _ref.bottom,\n left = _ref.left;\n var width = right - left;\n var height = bottom - top;\n var rect = {\n top: top,\n right: right,\n bottom: bottom,\n left: left,\n width: width,\n height: height,\n x: left,\n y: top,\n center: {\n x: (right + left) / 2,\n y: (bottom + top) / 2\n }\n };\n return rect;\n};\nvar expand = function expand(target, expandBy) {\n return {\n top: target.top - expandBy.top,\n left: target.left - expandBy.left,\n bottom: target.bottom + expandBy.bottom,\n right: target.right + expandBy.right\n };\n};\nvar shrink = function shrink(target, shrinkBy) {\n return {\n top: target.top + shrinkBy.top,\n left: target.left + shrinkBy.left,\n bottom: target.bottom - shrinkBy.bottom,\n right: target.right - shrinkBy.right\n };\n};\n\nvar shift = function shift(target, shiftBy) {\n return {\n top: target.top + shiftBy.y,\n left: target.left + shiftBy.x,\n bottom: target.bottom + shiftBy.y,\n right: target.right + shiftBy.x\n };\n};\n\nvar noSpacing = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n};\nvar createBox = function createBox(_ref2) {\n var borderBox = _ref2.borderBox,\n _ref2$margin = _ref2.margin,\n margin = _ref2$margin === void 0 ? noSpacing : _ref2$margin,\n _ref2$border = _ref2.border,\n border = _ref2$border === void 0 ? noSpacing : _ref2$border,\n _ref2$padding = _ref2.padding,\n padding = _ref2$padding === void 0 ? noSpacing : _ref2$padding;\n var marginBox = getRect(expand(borderBox, margin));\n var paddingBox = getRect(shrink(borderBox, border));\n var contentBox = getRect(shrink(paddingBox, padding));\n return {\n marginBox: marginBox,\n borderBox: getRect(borderBox),\n paddingBox: paddingBox,\n contentBox: contentBox,\n margin: margin,\n border: border,\n padding: padding\n };\n};\n\nvar parse = function parse(raw) {\n var value = raw.slice(0, -2);\n var suffix = raw.slice(-2);\n\n if (suffix !== 'px') {\n return 0;\n }\n\n var result = Number(value);\n !!isNaN(result) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Could not parse value [raw: \" + raw + \", without suffix: \" + value + \"]\") : invariant(false) : void 0;\n return result;\n};\n\nvar getWindowScroll = function getWindowScroll() {\n return {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n};\n\nvar offset = function offset(original, change) {\n var borderBox = original.borderBox,\n border = original.border,\n margin = original.margin,\n padding = original.padding;\n var shifted = shift(borderBox, change);\n return createBox({\n borderBox: shifted,\n border: border,\n margin: margin,\n padding: padding\n });\n};\nvar withScroll = function withScroll(original, scroll) {\n if (scroll === void 0) {\n scroll = getWindowScroll();\n }\n\n return offset(original, scroll);\n};\nvar calculateBox = function calculateBox(borderBox, styles) {\n var margin = {\n top: parse(styles.marginTop),\n right: parse(styles.marginRight),\n bottom: parse(styles.marginBottom),\n left: parse(styles.marginLeft)\n };\n var padding = {\n top: parse(styles.paddingTop),\n right: parse(styles.paddingRight),\n bottom: parse(styles.paddingBottom),\n left: parse(styles.paddingLeft)\n };\n var border = {\n top: parse(styles.borderTopWidth),\n right: parse(styles.borderRightWidth),\n bottom: parse(styles.borderBottomWidth),\n left: parse(styles.borderLeftWidth)\n };\n return createBox({\n borderBox: borderBox,\n margin: margin,\n padding: padding,\n border: border\n });\n};\nvar getBox = function getBox(el) {\n var borderBox = el.getBoundingClientRect();\n var styles = window.getComputedStyle(el);\n return calculateBox(borderBox, styles);\n};\n\nexport { calculateBox, createBox, expand, getBox, getRect, offset, shrink, withScroll };\n","import {\n BoxModel,\n createBox as createBoxWithoutScroll,\n CreateBoxArgs,\n getBox as getBoxWithoutScroll,\n withScroll,\n} from 'css-box-model'\n\nimport { Action, ActionTypes } from '../actions'\n\nexport type { BoxModel }\n\nexport function parse(rawString: string): number {\n const value = Number(rawString.replace(/px$/, ''))\n\n return Number.isFinite(value) ? value : 0\n}\n\nexport function createBox(boxArgs: CreateBoxArgs): BoxModel {\n return withScroll(createBoxWithoutScroll(boxArgs))\n}\n\nexport function getBox(element: Element): BoxModel {\n return withScroll(getBoxWithoutScroll(element))\n}\n\nexport interface BoxModelHandle {\n getBoxModel(): BoxModel | null\n}\n\nexport type Measurable = Element | BoxModelHandle\n\nexport function isMeasurable(value: unknown): value is Measurable {\n if (value instanceof Element) return true\n\n if (\n typeof value === 'object' &&\n value !== null &&\n 'getBoxModel' in value &&\n typeof (value as { getBoxModel: unknown }).getBoxModel === 'function'\n ) {\n return true\n }\n\n return false\n}\n\nexport function measure(measurable: Measurable): BoxModel | null {\n if (measurable instanceof Element) return getBox(measurable)\n\n return measurable.getBoxModel()\n}\n\nexport type State = {\n measurables: Map<string, Measurable>\n boxModels: Map<string, BoxModel>\n}\n\nexport function getInitialState(): State {\n return { measurables: new Map(), boxModels: new Map() }\n}\n\nexport function getMeasurables(state: State): Map<string, Measurable> {\n return state.measurables\n}\n\nexport function getBoxModels(state: State): Map<string, BoxModel> {\n return state.boxModels\n}\n\nexport function getBoxModel(state: State, elementKey: string): BoxModel | null {\n return getBoxModels(state).get(elementKey) ?? null\n}\n\nexport function reducer(state: State = getInitialState(), action: Action) {\n switch (action.type) {\n case ActionTypes.REGISTER_MEASURABLE:\n return {\n ...state,\n measurables: new Map(getMeasurables(state)).set(\n action.payload.elementKey,\n action.payload.measurable,\n ),\n }\n\n case ActionTypes.UNREGISTER_MEASURABLE: {\n const nextMeasurables = new Map(getMeasurables(state))\n\n const deleted = nextMeasurables.delete(action.payload.elementKey)\n\n return deleted ? { ...state, measurables: nextMeasurables } : state\n }\n\n case ActionTypes.CHANGE_ELEMENT_BOX_MODELS: {\n const { changedElementBoxModels } = action.payload\n\n if (changedElementBoxModels.size === 0) return state\n\n const nextBoxModels = new Map(getBoxModels(state))\n\n changedElementBoxModels.forEach((boxModel, elementKey) => {\n if (boxModel == null) nextBoxModels.delete(elementKey)\n else nextBoxModels.set(elementKey, boxModel)\n })\n\n return { ...state, boxModels: nextBoxModels }\n }\n\n default:\n return state\n }\n}\n"],"names":["createBox","parse","getBox","createBoxWithoutScroll","getBoxWithoutScroll"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"box-models.es.js","sources":["../../../node_modules/tiny-invariant/dist/tiny-invariant.esm.js","../../../node_modules/css-box-model/dist/css-box-model.esm.js","../src/state/modules/box-models.ts"],"sourcesContent":["var isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed';\nfunction invariant(condition, message) {\n if (condition) {\n return;\n }\n if (isProduction) {\n throw new Error(prefix);\n }\n var provided = typeof message === 'function' ? message() : message;\n var value = provided ? prefix + \": \" + provided : prefix;\n throw new Error(value);\n}\n\nexport { invariant as default };\n","import invariant from 'tiny-invariant';\n\nvar getRect = function getRect(_ref) {\n var top = _ref.top,\n right = _ref.right,\n bottom = _ref.bottom,\n left = _ref.left;\n var width = right - left;\n var height = bottom - top;\n var rect = {\n top: top,\n right: right,\n bottom: bottom,\n left: left,\n width: width,\n height: height,\n x: left,\n y: top,\n center: {\n x: (right + left) / 2,\n y: (bottom + top) / 2\n }\n };\n return rect;\n};\nvar expand = function expand(target, expandBy) {\n return {\n top: target.top - expandBy.top,\n left: target.left - expandBy.left,\n bottom: target.bottom + expandBy.bottom,\n right: target.right + expandBy.right\n };\n};\nvar shrink = function shrink(target, shrinkBy) {\n return {\n top: target.top + shrinkBy.top,\n left: target.left + shrinkBy.left,\n bottom: target.bottom - shrinkBy.bottom,\n right: target.right - shrinkBy.right\n };\n};\n\nvar shift = function shift(target, shiftBy) {\n return {\n top: target.top + shiftBy.y,\n left: target.left + shiftBy.x,\n bottom: target.bottom + shiftBy.y,\n right: target.right + shiftBy.x\n };\n};\n\nvar noSpacing = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n};\nvar createBox = function createBox(_ref2) {\n var borderBox = _ref2.borderBox,\n _ref2$margin = _ref2.margin,\n margin = _ref2$margin === void 0 ? noSpacing : _ref2$margin,\n _ref2$border = _ref2.border,\n border = _ref2$border === void 0 ? noSpacing : _ref2$border,\n _ref2$padding = _ref2.padding,\n padding = _ref2$padding === void 0 ? noSpacing : _ref2$padding;\n var marginBox = getRect(expand(borderBox, margin));\n var paddingBox = getRect(shrink(borderBox, border));\n var contentBox = getRect(shrink(paddingBox, padding));\n return {\n marginBox: marginBox,\n borderBox: getRect(borderBox),\n paddingBox: paddingBox,\n contentBox: contentBox,\n margin: margin,\n border: border,\n padding: padding\n };\n};\n\nvar parse = function parse(raw) {\n var value = raw.slice(0, -2);\n var suffix = raw.slice(-2);\n\n if (suffix !== 'px') {\n return 0;\n }\n\n var result = Number(value);\n !!isNaN(result) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Could not parse value [raw: \" + raw + \", without suffix: \" + value + \"]\") : invariant(false) : void 0;\n return result;\n};\n\nvar getWindowScroll = function getWindowScroll() {\n return {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n};\n\nvar offset = function offset(original, change) {\n var borderBox = original.borderBox,\n border = original.border,\n margin = original.margin,\n padding = original.padding;\n var shifted = shift(borderBox, change);\n return createBox({\n borderBox: shifted,\n border: border,\n margin: margin,\n padding: padding\n });\n};\nvar withScroll = function withScroll(original, scroll) {\n if (scroll === void 0) {\n scroll = getWindowScroll();\n }\n\n return offset(original, scroll);\n};\nvar calculateBox = function calculateBox(borderBox, styles) {\n var margin = {\n top: parse(styles.marginTop),\n right: parse(styles.marginRight),\n bottom: parse(styles.marginBottom),\n left: parse(styles.marginLeft)\n };\n var padding = {\n top: parse(styles.paddingTop),\n right: parse(styles.paddingRight),\n bottom: parse(styles.paddingBottom),\n left: parse(styles.paddingLeft)\n };\n var border = {\n top: parse(styles.borderTopWidth),\n right: parse(styles.borderRightWidth),\n bottom: parse(styles.borderBottomWidth),\n left: parse(styles.borderLeftWidth)\n };\n return createBox({\n borderBox: borderBox,\n margin: margin,\n padding: padding,\n border: border\n });\n};\nvar getBox = function getBox(el) {\n var borderBox = el.getBoundingClientRect();\n var styles = window.getComputedStyle(el);\n return calculateBox(borderBox, styles);\n};\n\nexport { calculateBox, createBox, expand, getBox, getRect, offset, shrink, withScroll };\n","import {\n BoxModel,\n createBox as createBoxWithoutScroll,\n CreateBoxArgs,\n getBox as getBoxWithoutScroll,\n withScroll,\n} from 'css-box-model'\n\nimport { Action, ActionTypes } from '../actions'\n\nexport type { BoxModel }\n\nexport function parse(rawString: string): number {\n const value = Number(rawString.replace(/px$/, ''))\n\n return Number.isFinite(value) ? value : 0\n}\n\nexport function createBox(boxArgs: CreateBoxArgs): BoxModel {\n return withScroll(createBoxWithoutScroll(boxArgs))\n}\n\nexport function getBox(element: Element): BoxModel {\n return withScroll(getBoxWithoutScroll(element))\n}\n\nexport interface BoxModelHandle {\n getBoxModel(): BoxModel | null\n}\n\nexport type Measurable = Element | BoxModelHandle\n\nexport function isMeasurable(value: unknown): value is Measurable {\n if (value instanceof Element) return true\n\n if (\n typeof value === 'object' &&\n value !== null &&\n 'getBoxModel' in value &&\n typeof (value as { getBoxModel: unknown }).getBoxModel === 'function'\n ) {\n return true\n }\n\n return false\n}\n\nexport function measure(measurable: Measurable): BoxModel | null {\n if (measurable instanceof Element) return getBox(measurable)\n\n return measurable.getBoxModel()\n}\n\nexport type State = {\n measurables: Map<string, Map<string, Measurable>>\n boxModels: Map<string, Map<string, BoxModel>>\n}\n\nexport function getInitialState(): State {\n return { measurables: new Map(), boxModels: new Map() }\n}\n\nexport function getMeasurables(state: State): Map<string, Map<string, Measurable>> {\n return state.measurables\n}\n\nexport function getBoxModels(state: State): Map<string, Map<string, BoxModel>> {\n return state.boxModels\n}\n\nexport function getBoxModel(\n state: State,\n documentKey: string,\n elementKey: string,\n): BoxModel | null {\n return getBoxModels(state).get(documentKey)?.get(elementKey) ?? null\n}\n\nexport function reducer(state: State = getInitialState(), action: Action) {\n switch (action.type) {\n case ActionTypes.REGISTER_MEASURABLE: {\n const { documentKey, elementKey, measurable } = action.payload\n\n return {\n ...state,\n measurables: new Map(state.measurables).set(\n documentKey,\n new Map(state.measurables.get(documentKey) ?? []).set(elementKey, measurable),\n ),\n }\n }\n\n case ActionTypes.UNREGISTER_MEASURABLE: {\n const { documentKey, elementKey } = action.payload\n const nextMeasurables = new Map(state.measurables.get(documentKey) ?? [])\n\n const deleted = nextMeasurables.delete(elementKey)\n\n return deleted\n ? { ...state, measurables: new Map(state.measurables).set(documentKey, nextMeasurables) }\n : state\n }\n\n case ActionTypes.CHANGE_ELEMENT_BOX_MODELS: {\n const { changedElementBoxModels } = action.payload\n\n if (changedElementBoxModels.size === 0) return state\n\n const nextBoxModels = new Map(state.boxModels)\n\n changedElementBoxModels.forEach((changedBoxModels, documentKey) => {\n const nextDocumentBoxModels = new Map(nextBoxModels.get(documentKey) ?? [])\n\n changedBoxModels.forEach((changedBoxModel, elementKey) => {\n if (changedBoxModel == null) nextDocumentBoxModels.delete(elementKey)\n else nextDocumentBoxModels.set(elementKey, changedBoxModel)\n })\n\n if (nextDocumentBoxModels.size > 0) nextBoxModels.set(documentKey, nextDocumentBoxModels)\n })\n\n return { ...state, boxModels: nextBoxModels }\n }\n\n default:\n return state\n }\n}\n"],"names":["createBox","parse","getBox","createBoxWithoutScroll","getBoxWithoutScroll"],"mappings":"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"}
|