@wordpress/block-editor 12.9.0 → 12.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/README.md +33 -3
- package/build/components/block-canvas/index.js +107 -0
- package/build/components/block-canvas/index.js.map +1 -0
- package/build/components/block-inspector/index.js +4 -1
- package/build/components/block-inspector/index.js.map +1 -1
- package/build/components/block-patterns-list/index.js +19 -4
- package/build/components/block-patterns-list/index.js.map +1 -1
- package/build/components/block-patterns-paging/index.js +66 -0
- package/build/components/block-patterns-paging/index.js.map +1 -0
- package/build/components/block-settings-menu/block-settings-dropdown.js +28 -0
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu-controls/index.js +4 -7
- package/build/components/block-settings-menu-controls/index.js.map +1 -1
- package/build/components/block-styles/index.js +1 -0
- package/build/components/block-styles/index.js.map +1 -1
- package/build/components/block-toolbar/block-toolbar-menu.native.js +3 -7
- package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
- package/build/components/block-tools/block-contextual-toolbar.js +18 -7
- package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +5 -1
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/border-radius-control/input-controls.js +1 -1
- package/build/components/border-radius-control/input-controls.js.map +1 -1
- package/build/components/border-radius-control/linked-button.js +2 -4
- package/build/components/border-radius-control/linked-button.js.map +1 -1
- package/build/components/colors/with-colors.js.map +1 -1
- package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js +8 -21
- package/build/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
- package/build/components/default-block-appender/index.native.js +20 -1
- package/build/components/default-block-appender/index.native.js.map +1 -1
- package/build/components/duotone/utils.js +68 -0
- package/build/components/duotone/utils.js.map +1 -1
- package/build/components/editor-styles/index.js +28 -9
- package/build/components/editor-styles/index.js.map +1 -1
- package/build/components/global-styles/hooks.js +2 -101
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/image-settings-panel.js +61 -0
- package/build/components/global-styles/image-settings-panel.js.map +1 -0
- package/build/components/global-styles/index.js +11 -17
- package/build/components/global-styles/index.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +19 -15
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/global-styles/utils.js +1 -1
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/iframe/index.js +67 -33
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/image-editor/use-save-image.js +2 -5
- package/build/components/image-editor/use-save-image.js.map +1 -1
- package/build/components/image-editor/use-transform-image.js +9 -9
- package/build/components/image-editor/use-transform-image.js.map +1 -1
- package/build/components/index.js +8 -12
- package/build/components/index.js.map +1 -1
- package/build/components/index.native.js +6 -5
- package/build/components/index.native.js.map +1 -1
- package/build/components/inner-blocks/use-nested-settings-update.js +13 -7
- package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/explorer.js +12 -6
- package/build/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/patterns-list.js +57 -23
- package/build/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/sidebar.js +24 -9
- package/build/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
- package/build/components/inserter/block-patterns-source-filter.js +54 -0
- package/build/components/inserter/block-patterns-source-filter.js.map +1 -0
- package/build/components/inserter/block-patterns-sync-filter.js +46 -0
- package/build/components/inserter/block-patterns-sync-filter.js.map +1 -0
- package/build/components/inserter/block-patterns-tab.js +91 -45
- package/build/components/inserter/block-patterns-tab.js.map +1 -1
- package/build/components/inserter/hooks/use-patterns-paging.js +57 -0
- package/build/components/inserter/hooks/use-patterns-paging.js.map +1 -0
- package/build/components/inserter/hooks/use-patterns-state.js +21 -10
- package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build/components/inserter/menu.js +13 -11
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/search-results.js +4 -3
- package/build/components/inserter/search-results.js.map +1 -1
- package/build/components/inserter/tabs.js +1 -12
- package/build/components/inserter/tabs.js.map +1 -1
- package/build/components/inspector-controls/block-support-slot-container.js +12 -1
- package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
- package/build/components/inspector-controls/fill.js +24 -13
- package/build/components/inspector-controls/fill.js.map +1 -1
- package/build/components/inspector-controls/groups.js +5 -3
- package/build/components/inspector-controls/groups.js.map +1 -1
- package/build/components/inspector-controls/slot.js +13 -0
- package/build/components/inspector-controls/slot.js.map +1 -1
- package/build/components/inspector-controls-tabs/styles-tab.js +3 -0
- package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
- package/build/components/link-control/index.js +13 -2
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/settings.js +2 -1
- package/build/components/link-control/settings.js.map +1 -1
- package/build/components/list-view/block-select-button.js +1 -3
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/block.js +13 -1
- package/build/components/list-view/block.js.map +1 -1
- package/build/components/list-view/use-block-selection.js +29 -24
- package/build/components/list-view/use-block-selection.js.map +1 -1
- package/build/components/media-placeholder/index.js +2 -2
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-placeholder/index.native.js +11 -11
- package/build/components/media-placeholder/index.native.js.map +1 -1
- package/build/components/media-replace-flow/index.js +2 -3
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/media-upload/constants.js +30 -0
- package/build/components/media-upload/constants.js.map +1 -0
- package/build/components/media-upload/index.native.js +63 -53
- package/build/components/media-upload/index.native.js.map +1 -1
- package/build/components/preview-options/index.js +1 -1
- package/build/components/preview-options/index.js.map +1 -1
- package/build/components/rich-text/index.js +34 -35
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +14 -32
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/multiline.js +95 -0
- package/build/components/rich-text/multiline.js.map +1 -0
- package/build/components/rich-text/split-value.js +10 -16
- package/build/components/rich-text/split-value.js.map +1 -1
- package/build/components/rich-text/use-enter.js +31 -40
- package/build/components/rich-text/use-enter.js.map +1 -1
- package/build/components/rich-text/use-paste-handler.js +18 -33
- package/build/components/rich-text/use-paste-handler.js.map +1 -1
- package/build/components/spacing-sizes-control/utils.js +1 -1
- package/build/components/spacing-sizes-control/utils.js.map +1 -1
- package/build/components/use-block-commands/index.js +30 -18
- package/build/components/use-block-commands/index.js.map +1 -1
- package/build/components/use-block-display-information/index.js +5 -2
- package/build/components/use-block-display-information/index.js.map +1 -1
- package/build/hooks/background.js +258 -0
- package/build/hooks/background.js.map +1 -0
- package/build/hooks/block-hooks.js +188 -0
- package/build/hooks/block-hooks.js.map +1 -0
- package/build/hooks/block-rename-ui.js +160 -0
- package/build/hooks/block-rename-ui.js.map +1 -0
- package/build/hooks/duotone.js +29 -42
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/index.js +2 -2
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/layout.js +31 -14
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/position.js +4 -2
- package/build/hooks/position.js.map +1 -1
- package/build/hooks/style.js +74 -25
- package/build/hooks/style.js.map +1 -1
- package/build/hooks/utils.js +4 -0
- package/build/hooks/utils.js.map +1 -1
- package/build/private-apis.js +2 -0
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +33 -10
- package/build/store/actions.js.map +1 -1
- package/build/store/private-actions.js +42 -8
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +23 -0
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +43 -1
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +84 -23
- package/build/store/selectors.js.map +1 -1
- package/build/store/utils.js +0 -4
- package/build/store/utils.js.map +1 -1
- package/build-module/components/block-canvas/index.js +97 -0
- package/build-module/components/block-canvas/index.js.map +1 -0
- package/build-module/components/block-inspector/index.js +4 -1
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-patterns-list/index.js +20 -5
- package/build-module/components/block-patterns-list/index.js.map +1 -1
- package/build-module/components/block-patterns-paging/index.js +59 -0
- package/build-module/components/block-patterns-paging/index.js.map +1 -0
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +28 -0
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-settings-menu-controls/index.js +4 -7
- package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
- package/build-module/components/block-styles/index.js +1 -0
- package/build-module/components/block-styles/index.js.map +1 -1
- package/build-module/components/block-toolbar/block-toolbar-menu.native.js +3 -7
- package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
- package/build-module/components/block-tools/block-contextual-toolbar.js +18 -7
- package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +5 -1
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/border-radius-control/input-controls.js +1 -1
- package/build-module/components/border-radius-control/input-controls.js.map +1 -1
- package/build-module/components/border-radius-control/linked-button.js +2 -4
- package/build-module/components/border-radius-control/linked-button.js.map +1 -1
- package/build-module/components/colors/with-colors.js.map +1 -1
- package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js +8 -21
- package/build-module/components/convert-to-group-buttons/use-convert-to-group-button-props.js.map +1 -1
- package/build-module/components/default-block-appender/index.native.js +20 -1
- package/build-module/components/default-block-appender/index.native.js.map +1 -1
- package/build-module/components/duotone/utils.js +65 -0
- package/build-module/components/duotone/utils.js.map +1 -1
- package/build-module/components/editor-styles/index.js +28 -9
- package/build-module/components/editor-styles/index.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +3 -100
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/image-settings-panel.js +53 -0
- package/build-module/components/global-styles/image-settings-panel.js.map +1 -0
- package/build-module/components/global-styles/index.js +2 -2
- package/build-module/components/global-styles/index.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +18 -16
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/global-styles/utils.js +1 -1
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/iframe/index.js +66 -33
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/image-editor/use-save-image.js +2 -5
- package/build-module/components/image-editor/use-save-image.js.map +1 -1
- package/build-module/components/image-editor/use-transform-image.js +9 -9
- package/build-module/components/image-editor/use-transform-image.js.map +1 -1
- package/build-module/components/index.js +1 -1
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/index.native.js +2 -1
- package/build-module/components/index.native.js.map +1 -1
- package/build-module/components/inner-blocks/use-nested-settings-update.js +14 -8
- package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/explorer.js +12 -6
- package/build-module/components/inserter/block-patterns-explorer/explorer.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/patterns-list.js +59 -25
- package/build-module/components/inserter/block-patterns-explorer/patterns-list.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/sidebar.js +23 -9
- package/build-module/components/inserter/block-patterns-explorer/sidebar.js.map +1 -1
- package/build-module/components/inserter/block-patterns-source-filter.js +44 -0
- package/build-module/components/inserter/block-patterns-source-filter.js.map +1 -0
- package/build-module/components/inserter/block-patterns-sync-filter.js +38 -0
- package/build-module/components/inserter/block-patterns-sync-filter.js.map +1 -0
- package/build-module/components/inserter/block-patterns-tab.js +87 -46
- package/build-module/components/inserter/block-patterns-tab.js.map +1 -1
- package/build-module/components/inserter/hooks/use-patterns-paging.js +50 -0
- package/build-module/components/inserter/hooks/use-patterns-paging.js.map +1 -0
- package/build-module/components/inserter/hooks/use-patterns-state.js +22 -10
- package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build-module/components/inserter/menu.js +13 -11
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/search-results.js +4 -3
- package/build-module/components/inserter/search-results.js.map +1 -1
- package/build-module/components/inserter/tabs.js +1 -12
- package/build-module/components/inserter/tabs.js.map +1 -1
- package/build-module/components/inspector-controls/block-support-slot-container.js +13 -2
- package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
- package/build-module/components/inspector-controls/fill.js +25 -14
- package/build-module/components/inspector-controls/fill.js.map +1 -1
- package/build-module/components/inspector-controls/groups.js +5 -3
- package/build-module/components/inspector-controls/groups.js.map +1 -1
- package/build-module/components/inspector-controls/slot.js +15 -1
- package/build-module/components/inspector-controls/slot.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/styles-tab.js +3 -0
- package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
- package/build-module/components/link-control/index.js +13 -2
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/settings.js +2 -1
- package/build-module/components/link-control/settings.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +1 -3
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/block.js +13 -1
- package/build-module/components/list-view/block.js.map +1 -1
- package/build-module/components/list-view/use-block-selection.js +30 -25
- package/build-module/components/list-view/use-block-selection.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +2 -2
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-placeholder/index.native.js +7 -7
- package/build-module/components/media-placeholder/index.native.js.map +1 -1
- package/build-module/components/media-replace-flow/index.js +2 -3
- package/build-module/components/media-replace-flow/index.js.map +1 -1
- package/build-module/components/media-upload/constants.js +14 -0
- package/build-module/components/media-upload/constants.js.map +1 -0
- package/build-module/components/media-upload/index.native.js +53 -34
- package/build-module/components/media-upload/index.native.js.map +1 -1
- package/build-module/components/preview-options/index.js +1 -1
- package/build-module/components/preview-options/index.js.map +1 -1
- package/build-module/components/rich-text/index.js +35 -37
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +15 -33
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/multiline.js +87 -0
- package/build-module/components/rich-text/multiline.js.map +1 -0
- package/build-module/components/rich-text/split-value.js +10 -16
- package/build-module/components/rich-text/split-value.js.map +1 -1
- package/build-module/components/rich-text/use-enter.js +33 -42
- package/build-module/components/rich-text/use-enter.js.map +1 -1
- package/build-module/components/rich-text/use-paste-handler.js +19 -34
- package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
- package/build-module/components/spacing-sizes-control/utils.js +2 -2
- package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
- package/build-module/components/use-block-commands/index.js +28 -16
- package/build-module/components/use-block-commands/index.js.map +1 -1
- package/build-module/components/use-block-display-information/index.js +5 -2
- package/build-module/components/use-block-display-information/index.js.map +1 -1
- package/build-module/hooks/background.js +244 -0
- package/build-module/hooks/background.js.map +1 -0
- package/build-module/hooks/block-hooks.js +181 -0
- package/build-module/hooks/block-hooks.js.map +1 -0
- package/build-module/hooks/block-rename-ui.js +153 -0
- package/build-module/hooks/block-rename-ui.js.map +1 -0
- package/build-module/hooks/duotone.js +26 -39
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/index.js +2 -2
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/layout.js +33 -16
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/position.js +4 -2
- package/build-module/hooks/position.js.map +1 -1
- package/build-module/hooks/style.js +73 -24
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/hooks/utils.js +4 -0
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/private-apis.js +2 -0
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +33 -10
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/private-actions.js +39 -8
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +21 -0
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +41 -1
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +78 -22
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/store/utils.js +0 -4
- package/build-module/store/utils.js.map +1 -1
- package/build-style/content-rtl.css +0 -1
- package/build-style/content.css +0 -1
- package/build-style/style-rtl.css +174 -131
- package/build-style/style.css +174 -131
- package/package.json +32 -32
- package/src/components/block-canvas/index.js +108 -0
- package/src/components/block-inspector/index.js +5 -1
- package/src/components/block-list/content.scss +0 -1
- package/src/components/block-patterns-list/index.js +32 -7
- package/src/components/block-patterns-list/style.scss +26 -9
- package/src/components/block-patterns-paging/index.js +92 -0
- package/src/components/block-patterns-paging/style.scss +42 -0
- package/src/components/block-settings-menu/block-settings-dropdown.js +44 -0
- package/src/components/block-settings-menu-controls/index.js +4 -9
- package/src/components/block-styles/index.js +1 -0
- package/src/components/block-styles/style.scss +3 -3
- package/src/components/block-toolbar/block-toolbar-menu.native.js +1 -6
- package/src/components/block-tools/block-contextual-toolbar.js +16 -5
- package/src/components/block-tools/block-selection-button.js +9 -1
- package/src/components/block-tools/style.scss +0 -98
- package/src/components/border-radius-control/input-controls.js +1 -1
- package/src/components/border-radius-control/linked-button.js +8 -11
- package/src/components/color-palette/test/__snapshots__/control.js.snap +34 -21
- package/src/components/colors/with-colors.js +3 -2
- package/src/components/convert-to-group-buttons/use-convert-to-group-button-props.js +8 -35
- package/src/components/default-block-appender/index.native.js +26 -3
- package/src/components/duotone/utils.js +65 -0
- package/src/components/editor-styles/index.js +32 -23
- package/src/components/global-styles/hooks.js +4 -112
- package/src/components/global-styles/image-settings-panel.js +71 -0
- package/src/components/global-styles/index.js +4 -3
- package/src/components/global-styles/use-global-styles-output.js +25 -16
- package/src/components/global-styles/utils.js +1 -2
- package/src/components/iframe/index.js +72 -33
- package/src/components/image-editor/use-save-image.js +2 -9
- package/src/components/image-editor/use-transform-image.js +9 -9
- package/src/components/index.js +1 -1
- package/src/components/index.native.js +2 -2
- package/src/components/inner-blocks/use-nested-settings-update.js +15 -10
- package/src/components/inserter/block-patterns-explorer/explorer.js +17 -5
- package/src/components/inserter/block-patterns-explorer/patterns-list.js +109 -40
- package/src/components/inserter/block-patterns-explorer/sidebar.js +23 -8
- package/src/components/inserter/block-patterns-source-filter.js +40 -0
- package/src/components/inserter/block-patterns-sync-filter.js +35 -0
- package/src/components/inserter/block-patterns-tab.js +168 -57
- package/src/components/inserter/hooks/use-patterns-paging.js +65 -0
- package/src/components/inserter/hooks/use-patterns-state.js +27 -16
- package/src/components/inserter/menu.js +15 -17
- package/src/components/inserter/search-results.js +6 -4
- package/src/components/inserter/style.scss +23 -2
- package/src/components/inserter/tabs.js +2 -12
- package/src/components/inserter/test/index.native.js +8 -12
- package/src/components/inspector-controls/block-support-slot-container.js +19 -3
- package/src/components/inspector-controls/fill.js +28 -14
- package/src/components/inspector-controls/groups.js +6 -2
- package/src/components/inspector-controls/slot.js +28 -3
- package/src/components/inspector-controls-tabs/styles-tab.js +4 -0
- package/src/components/link-control/index.js +14 -0
- package/src/components/link-control/settings.js +1 -0
- package/src/components/link-control/style.scss +28 -7
- package/src/components/link-control/test/index.js +88 -6
- package/src/components/list-view/block-select-button.js +1 -3
- package/src/components/list-view/block.js +19 -1
- package/src/components/list-view/style.scss +1 -2
- package/src/components/list-view/use-block-selection.js +38 -32
- package/src/components/media-placeholder/README.md +2 -2
- package/src/components/media-placeholder/index.js +2 -2
- package/src/components/media-placeholder/index.native.js +11 -12
- package/src/components/media-replace-flow/index.js +2 -2
- package/src/components/media-replace-flow/test/index.js +5 -23
- package/src/components/media-upload/README.md +3 -2
- package/src/components/media-upload/constants.js +15 -0
- package/src/components/media-upload/index.native.js +66 -40
- package/src/components/media-upload/style.native.scss +4 -0
- package/src/components/media-upload/test/index.native.js +2 -2
- package/src/components/preview-options/README.md +7 -0
- package/src/components/preview-options/index.js +1 -1
- package/src/components/rich-text/index.js +48 -44
- package/src/components/rich-text/index.native.js +14 -42
- package/src/components/rich-text/multiline.js +121 -0
- package/src/components/rich-text/split-value.js +10 -35
- package/src/components/rich-text/use-enter.js +32 -42
- package/src/components/rich-text/use-paste-handler.js +16 -40
- package/src/components/spacing-sizes-control/style.scss +5 -7
- package/src/components/spacing-sizes-control/utils.js +1 -2
- package/src/components/use-block-commands/index.js +28 -20
- package/src/components/use-block-display-information/index.js +3 -0
- package/src/hooks/background.js +288 -0
- package/src/hooks/background.scss +57 -0
- package/src/hooks/block-hooks.js +257 -0
- package/src/hooks/block-hooks.scss +16 -0
- package/src/hooks/block-rename-ui.js +230 -0
- package/src/hooks/block-rename-ui.scss +3 -0
- package/src/hooks/duotone.js +42 -43
- package/src/hooks/index.js +2 -2
- package/src/hooks/layout.js +31 -33
- package/src/hooks/position.js +4 -3
- package/src/hooks/style.js +96 -37
- package/src/hooks/test/align.native.js +4 -3
- package/src/hooks/utils.js +4 -0
- package/src/private-apis.js +2 -0
- package/src/store/actions.js +52 -10
- package/src/store/private-actions.js +37 -6
- package/src/store/private-selectors.js +21 -0
- package/src/store/reducer.js +38 -0
- package/src/store/selectors.js +107 -26
- package/src/store/test/actions.js +19 -8
- package/src/store/test/private-actions.js +17 -0
- package/src/store/test/reducer.js +25 -0
- package/src/store/test/selectors.js +130 -123
- package/src/store/utils.js +3 -10
- package/src/style.scss +4 -0
- package/build/components/duotone/components.js +0 -135
- package/build/components/duotone/components.js.map +0 -1
- package/build/components/duotone/index.js +0 -38
- package/build/components/duotone/index.js.map +0 -1
- package/build/components/global-styles/behaviors-panel.js +0 -64
- package/build/components/global-styles/behaviors-panel.js.map +0 -1
- package/build/components/inserter/reusable-blocks-tab.js +0 -85
- package/build/components/inserter/reusable-blocks-tab.js.map +0 -1
- package/build/hooks/auto-inserting-blocks.js +0 -174
- package/build/hooks/auto-inserting-blocks.js.map +0 -1
- package/build/hooks/behaviors.js +0 -173
- package/build/hooks/behaviors.js.map +0 -1
- package/build-module/components/duotone/components.js +0 -126
- package/build-module/components/duotone/components.js.map +0 -1
- package/build-module/components/duotone/index.js +0 -3
- package/build-module/components/duotone/index.js.map +0 -1
- package/build-module/components/global-styles/behaviors-panel.js +0 -57
- package/build-module/components/global-styles/behaviors-panel.js.map +0 -1
- package/build-module/components/inserter/reusable-blocks-tab.js +0 -76
- package/build-module/components/inserter/reusable-blocks-tab.js.map +0 -1
- package/build-module/hooks/auto-inserting-blocks.js +0 -167
- package/build-module/hooks/auto-inserting-blocks.js.map +0 -1
- package/build-module/hooks/behaviors.js +0 -166
- package/build-module/hooks/behaviors.js.map +0 -1
- package/src/components/duotone/components.js +0 -133
- package/src/components/duotone/index.js +0 -7
- package/src/components/global-styles/behaviors-panel.js +0 -71
- package/src/components/inserter/reusable-blocks-tab.js +0 -84
- package/src/components/inserter/test/reusable-blocks-tab.js +0 -73
- package/src/hooks/auto-inserting-blocks.js +0 -232
- package/src/hooks/behaviors.js +0 -206
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_colord","_names","_interopRequireDefault","_a11y","_components","_transformStyles","
|
|
1
|
+
{"version":3,"names":["_element","require","_colord","_names","_interopRequireDefault","_a11y","_components","_data","_transformStyles","_store","_lockUnlock","extend","namesPlugin","a11yPlugin","useDarkThemeBodyClassName","styles","scope","useCallback","node","ownerDocument","defaultView","body","canvas","querySelector","backgroundColor","tempCanvas","createElement","classList","add","appendChild","getComputedStyle","getPropertyValue","removeChild","colordBackgroundColor","colord","luminance","alpha","remove","EditorStyles","overrides","useSelect","select","unlock","blockEditorStore","getStyleOverrides","transformedStyles","transformedSvgs","useMemo","_styles","Object","values","id","override","index","findIndex","_id","overrideWithId","push","transformStyles","filter","style","css","__unstableType","map","assets","join","Fragment","ref","key","SVG","xmlns","viewBox","width","height","role","visibility","position","left","overflow","dangerouslySetInnerHTML","__html"],"sources":["@wordpress/block-editor/src/components/editor-styles/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { colord, extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\nimport a11yPlugin from 'colord/plugins/a11y';\n\n/**\n * WordPress dependencies\n */\nimport { SVG } from '@wordpress/components';\nimport { useCallback, useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport transformStyles from '../../utils/transform-styles';\nimport { store as blockEditorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nextend( [ namesPlugin, a11yPlugin ] );\n\nfunction useDarkThemeBodyClassName( styles, scope ) {\n\treturn useCallback(\n\t\t( node ) => {\n\t\t\tif ( ! node ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { ownerDocument } = node;\n\t\t\tconst { defaultView, body } = ownerDocument;\n\t\t\tconst canvas = scope ? ownerDocument.querySelector( scope ) : body;\n\n\t\t\tlet backgroundColor;\n\n\t\t\tif ( ! canvas ) {\n\t\t\t\t// The real .editor-styles-wrapper element might not exist in the\n\t\t\t\t// DOM, so calculate the background color by creating a fake\n\t\t\t\t// wrapper.\n\t\t\t\tconst tempCanvas = ownerDocument.createElement( 'div' );\n\t\t\t\ttempCanvas.classList.add( 'editor-styles-wrapper' );\n\t\t\t\tbody.appendChild( tempCanvas );\n\n\t\t\t\tbackgroundColor = defaultView\n\t\t\t\t\t?.getComputedStyle( tempCanvas, null )\n\t\t\t\t\t.getPropertyValue( 'background-color' );\n\n\t\t\t\tbody.removeChild( tempCanvas );\n\t\t\t} else {\n\t\t\t\tbackgroundColor = defaultView\n\t\t\t\t\t?.getComputedStyle( canvas, null )\n\t\t\t\t\t.getPropertyValue( 'background-color' );\n\t\t\t}\n\t\t\tconst colordBackgroundColor = colord( backgroundColor );\n\t\t\t// If background is transparent, it should be treated as light color.\n\t\t\tif (\n\t\t\t\tcolordBackgroundColor.luminance() > 0.5 ||\n\t\t\t\tcolordBackgroundColor.alpha() === 0\n\t\t\t) {\n\t\t\t\tbody.classList.remove( 'is-dark-theme' );\n\t\t\t} else {\n\t\t\t\tbody.classList.add( 'is-dark-theme' );\n\t\t\t}\n\t\t},\n\t\t[ styles, scope ]\n\t);\n}\n\nexport default function EditorStyles( { styles, scope } ) {\n\tconst overrides = useSelect(\n\t\t( select ) => unlock( select( blockEditorStore ) ).getStyleOverrides(),\n\t\t[]\n\t);\n\tconst [ transformedStyles, transformedSvgs ] = useMemo( () => {\n\t\tconst _styles = Object.values( styles ?? [] );\n\n\t\tfor ( const [ id, override ] of overrides ) {\n\t\t\tconst index = _styles.findIndex( ( { id: _id } ) => id === _id );\n\t\t\tconst overrideWithId = { ...override, id };\n\t\t\tif ( index === -1 ) {\n\t\t\t\t_styles.push( overrideWithId );\n\t\t\t} else {\n\t\t\t\t_styles[ index ] = overrideWithId;\n\t\t\t}\n\t\t}\n\n\t\treturn [\n\t\t\ttransformStyles(\n\t\t\t\t_styles.filter( ( style ) => style?.css ),\n\t\t\t\tscope\n\t\t\t),\n\t\t\t_styles\n\t\t\t\t.filter( ( style ) => style.__unstableType === 'svgs' )\n\t\t\t\t.map( ( style ) => style.assets )\n\t\t\t\t.join( '' ),\n\t\t];\n\t}, [ styles, overrides, scope ] );\n\n\treturn (\n\t\t<>\n\t\t\t{ /* Use an empty style element to have a document reference,\n\t\t\t but this could be any element. */ }\n\t\t\t<style\n\t\t\t\tref={ useDarkThemeBodyClassName( transformedStyles, scope ) }\n\t\t\t/>\n\t\t\t{ transformedStyles.map( ( css, index ) => (\n\t\t\t\t<style key={ index }>{ css }</style>\n\t\t\t) ) }\n\t\t\t<SVG\n\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\tviewBox=\"0 0 0 0\"\n\t\t\t\twidth=\"0\"\n\t\t\t\theight=\"0\"\n\t\t\t\trole=\"none\"\n\t\t\t\tstyle={ {\n\t\t\t\t\tvisibility: 'hidden',\n\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\tleft: '-9999px',\n\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t} }\n\t\t\t\tdangerouslySetInnerHTML={ { __html: transformedSvgs } }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -4,8 +4,6 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.__experimentalUseGlobalBehaviors = __experimentalUseGlobalBehaviors;
|
|
8
|
-
exports.__experimentalUseHasBehaviorsPanel = __experimentalUseHasBehaviorsPanel;
|
|
9
7
|
exports.useColorsPerOrigin = useColorsPerOrigin;
|
|
10
8
|
exports.useGlobalSetting = useGlobalSetting;
|
|
11
9
|
exports.useGlobalStyle = useGlobalStyle;
|
|
@@ -35,10 +33,9 @@ var _lockUnlock = require("../../lock-unlock");
|
|
|
35
33
|
|
|
36
34
|
const EMPTY_CONFIG = {
|
|
37
35
|
settings: {},
|
|
38
|
-
styles: {}
|
|
39
|
-
behaviors: {}
|
|
36
|
+
styles: {}
|
|
40
37
|
};
|
|
41
|
-
const VALID_SETTINGS = ['appearanceTools', '
|
|
38
|
+
const VALID_SETTINGS = ['appearanceTools', 'useRootPaddingAwareAlignments', 'border.color', 'border.radius', 'border.style', 'border.width', 'shadow.presets', 'shadow.defaultPresets', 'color.background', 'color.button', 'color.caption', 'color.custom', 'color.customDuotone', 'color.customGradient', 'color.defaultDuotone', 'color.defaultGradients', 'color.defaultPalette', 'color.duotone', 'color.gradients', 'color.heading', 'color.link', 'color.palette', 'color.text', 'custom', 'dimensions.minHeight', 'layout.contentSize', 'layout.definitions', 'layout.wideSize', 'lightbox.enabled', 'lightbox.allowEditing', 'position.fixed', 'position.sticky', 'spacing.customSpacingSize', 'spacing.spacingSizes', 'spacing.spacingScale', 'spacing.blockGap', 'spacing.margin', 'spacing.padding', 'spacing.units', 'typography.fluid', 'typography.customFontSize', 'typography.dropCap', 'typography.fontFamilies', 'typography.fontSizes', 'typography.fontStyle', 'typography.fontWeight', 'typography.letterSpacing', 'typography.lineHeight', 'typography.textColumns', 'typography.textDecoration', 'typography.textTransform', 'typography.writingMode'];
|
|
42
39
|
const useGlobalStylesReset = () => {
|
|
43
40
|
const {
|
|
44
41
|
user: config,
|
|
@@ -292,100 +289,4 @@ function useGradientsPerOrigin(settings) {
|
|
|
292
289
|
return result;
|
|
293
290
|
}, [customGradients, themeGradients, defaultGradients, shouldDisplayDefaultGradients]);
|
|
294
291
|
}
|
|
295
|
-
function __experimentalUseGlobalBehaviors(blockName, source = 'all') {
|
|
296
|
-
const {
|
|
297
|
-
merged: mergedConfig,
|
|
298
|
-
base: baseConfig,
|
|
299
|
-
user: userConfig,
|
|
300
|
-
setUserConfig
|
|
301
|
-
} = (0, _element.useContext)(_context.GlobalStylesContext);
|
|
302
|
-
const finalPath = !blockName ? `behaviors` : `behaviors.blocks.${blockName}`;
|
|
303
|
-
let rawResult, result;
|
|
304
|
-
switch (source) {
|
|
305
|
-
case 'all':
|
|
306
|
-
rawResult = (0, _object.getValueFromObjectPath)(mergedConfig, finalPath);
|
|
307
|
-
result = (0, _utils.getValueFromVariable)(mergedConfig, blockName, rawResult);
|
|
308
|
-
break;
|
|
309
|
-
case 'user':
|
|
310
|
-
rawResult = (0, _object.getValueFromObjectPath)(userConfig, finalPath);
|
|
311
|
-
result = (0, _utils.getValueFromVariable)(mergedConfig, blockName, rawResult);
|
|
312
|
-
break;
|
|
313
|
-
case 'base':
|
|
314
|
-
rawResult = (0, _object.getValueFromObjectPath)(baseConfig, finalPath);
|
|
315
|
-
result = (0, _utils.getValueFromVariable)(baseConfig, blockName, rawResult);
|
|
316
|
-
break;
|
|
317
|
-
default:
|
|
318
|
-
throw 'Unsupported source';
|
|
319
|
-
}
|
|
320
|
-
const animation = result?.lightbox?.animation || 'zoom';
|
|
321
|
-
const setBehavior = newValue => {
|
|
322
|
-
let newBehavior;
|
|
323
|
-
// The user saves with Apply Globally option.
|
|
324
|
-
if (typeof newValue === 'object') {
|
|
325
|
-
newBehavior = newValue;
|
|
326
|
-
} else {
|
|
327
|
-
switch (newValue) {
|
|
328
|
-
case 'lightbox':
|
|
329
|
-
newBehavior = {
|
|
330
|
-
lightbox: {
|
|
331
|
-
enabled: true,
|
|
332
|
-
animation
|
|
333
|
-
}
|
|
334
|
-
};
|
|
335
|
-
break;
|
|
336
|
-
case 'fade':
|
|
337
|
-
newBehavior = {
|
|
338
|
-
lightbox: {
|
|
339
|
-
enabled: true,
|
|
340
|
-
animation: 'fade'
|
|
341
|
-
}
|
|
342
|
-
};
|
|
343
|
-
break;
|
|
344
|
-
case 'zoom':
|
|
345
|
-
newBehavior = {
|
|
346
|
-
lightbox: {
|
|
347
|
-
enabled: true,
|
|
348
|
-
animation: 'zoom'
|
|
349
|
-
}
|
|
350
|
-
};
|
|
351
|
-
break;
|
|
352
|
-
case '':
|
|
353
|
-
newBehavior = {
|
|
354
|
-
lightbox: {
|
|
355
|
-
enabled: false,
|
|
356
|
-
animation
|
|
357
|
-
}
|
|
358
|
-
};
|
|
359
|
-
break;
|
|
360
|
-
default:
|
|
361
|
-
break;
|
|
362
|
-
}
|
|
363
|
-
}
|
|
364
|
-
setUserConfig(currentConfig => (0, _object.setImmutably)(currentConfig, finalPath.split('.'), newBehavior));
|
|
365
|
-
};
|
|
366
|
-
let behavior = '';
|
|
367
|
-
if (result === undefined) behavior = 'default';
|
|
368
|
-
if (result?.lightbox.enabled) behavior = 'lightbox';
|
|
369
|
-
return {
|
|
370
|
-
behavior,
|
|
371
|
-
inheritedBehaviors: result,
|
|
372
|
-
setBehavior
|
|
373
|
-
};
|
|
374
|
-
}
|
|
375
|
-
function __experimentalUseHasBehaviorsPanel(settings, name, {
|
|
376
|
-
blockSupportOnly = false
|
|
377
|
-
} = {}) {
|
|
378
|
-
if (!settings?.behaviors) {
|
|
379
|
-
return false;
|
|
380
|
-
}
|
|
381
|
-
|
|
382
|
-
// If every behavior is disabled on block supports, do not show the behaviors inspector control.
|
|
383
|
-
const hasSomeBlockSupport = Object.keys(settings?.behaviors).some(key => (0, _blocks.hasBlockSupport)(name, `behaviors.${key}`));
|
|
384
|
-
if (blockSupportOnly) {
|
|
385
|
-
return hasSomeBlockSupport;
|
|
386
|
-
}
|
|
387
|
-
|
|
388
|
-
// If every behavior is disabled, do not show the behaviors inspector control.
|
|
389
|
-
return Object.values(settings?.behaviors).some(value => value === true && hasSomeBlockSupport);
|
|
390
|
-
}
|
|
391
292
|
//# sourceMappingURL=hooks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_es","_interopRequireDefault","require","_element","_data","_blocks","_i18n","_utils","_object","_context","_lockUnlock","EMPTY_CONFIG","settings","styles","behaviors","VALID_SETTINGS","useGlobalStylesReset","user","config","setUserConfig","useContext","GlobalStylesContext","canReset","fastDeepEqual","useCallback","exports","useGlobalSetting","propertyPath","blockName","source","configs","appendedBlockPath","appendedPropertyPath","contextualPath","globalPath","sourceKey","settingValue","useMemo","configToUse","_getValueFromObjectPa","getValueFromObjectPath","result","forEach","setting","_getValueFromObjectPa2","value","setImmutably","split","setSetting","newValue","currentConfig","useGlobalStyle","path","shouldDecodeEncode","merged","mergedConfig","base","baseConfig","userConfig","appendedPath","finalPath","setStyle","getPresetVariableFromValue","rawResult","getValueFromVariable","useSettingsForBlockElement","parentSettings","element","supportedStyles","supports","useSelect","select","unlock","blocksStore","getSupportedStyles","getBlockType","updatedSettings","includes","typography","fontSizes","customFontSize","fontFamilies","color","text","background","button","heading","link","caption","gradients","customGradient","defaultDuotone","customDuotone","key","textColumns","layout","spacing","sides","Array","isArray","length","dimensions","minHeight","charAt","toUpperCase","slice","border","shadow","useColorsPerOrigin","customColors","palette","custom","themeColors","theme","defaultColors","default","shouldDisplayDefaultColors","defaultPalette","push","name","_x","colors","useGradientsPerOrigin","customGradients","themeGradients","defaultGradients","shouldDisplayDefaultGradients","__experimentalUseGlobalBehaviors","animation","lightbox","setBehavior","newBehavior","enabled","behavior","undefined","inheritedBehaviors","__experimentalUseHasBehaviorsPanel","blockSupportOnly","hasSomeBlockSupport","Object","keys","some","hasBlockSupport","values"],"sources":["@wordpress/block-editor/src/components/global-styles/hooks.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport fastDeepEqual from 'fast-deep-equal/es6';\n\n/**\n * WordPress dependencies\n */\nimport { useContext, useCallback, useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as blocksStore, hasBlockSupport } from '@wordpress/blocks';\nimport { _x } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, getPresetVariableFromValue } from './utils';\nimport { getValueFromObjectPath, setImmutably } from '../../utils/object';\nimport { GlobalStylesContext } from './context';\nimport { unlock } from '../../lock-unlock';\n\nconst EMPTY_CONFIG = { settings: {}, styles: {}, behaviors: {} };\n\nconst VALID_SETTINGS = [\n\t'appearanceTools',\n\t'behaviors',\n\t'useRootPaddingAwareAlignments',\n\t'border.color',\n\t'border.radius',\n\t'border.style',\n\t'border.width',\n\t'shadow.presets',\n\t'shadow.defaultPresets',\n\t'color.background',\n\t'color.button',\n\t'color.caption',\n\t'color.custom',\n\t'color.customDuotone',\n\t'color.customGradient',\n\t'color.defaultDuotone',\n\t'color.defaultGradients',\n\t'color.defaultPalette',\n\t'color.duotone',\n\t'color.gradients',\n\t'color.heading',\n\t'color.link',\n\t'color.palette',\n\t'color.text',\n\t'custom',\n\t'dimensions.minHeight',\n\t'layout.contentSize',\n\t'layout.definitions',\n\t'layout.wideSize',\n\t'position.fixed',\n\t'position.sticky',\n\t'spacing.customSpacingSize',\n\t'spacing.spacingSizes',\n\t'spacing.spacingScale',\n\t'spacing.blockGap',\n\t'spacing.margin',\n\t'spacing.padding',\n\t'spacing.units',\n\t'typography.fluid',\n\t'typography.customFontSize',\n\t'typography.dropCap',\n\t'typography.fontFamilies',\n\t'typography.fontSizes',\n\t'typography.fontStyle',\n\t'typography.fontWeight',\n\t'typography.letterSpacing',\n\t'typography.lineHeight',\n\t'typography.textColumns',\n\t'typography.textDecoration',\n\t'typography.textTransform',\n\t'typography.writingMode',\n];\n\nexport const useGlobalStylesReset = () => {\n\tconst { user: config, setUserConfig } = useContext( GlobalStylesContext );\n\tconst canReset = !! config && ! fastDeepEqual( config, EMPTY_CONFIG );\n\treturn [\n\t\tcanReset,\n\t\tuseCallback(\n\t\t\t() => setUserConfig( () => EMPTY_CONFIG ),\n\t\t\t[ setUserConfig ]\n\t\t),\n\t];\n};\n\nexport function useGlobalSetting( propertyPath, blockName, source = 'all' ) {\n\tconst { setUserConfig, ...configs } = useContext( GlobalStylesContext );\n\tconst appendedBlockPath = blockName ? '.blocks.' + blockName : '';\n\tconst appendedPropertyPath = propertyPath ? '.' + propertyPath : '';\n\tconst contextualPath = `settings${ appendedBlockPath }${ appendedPropertyPath }`;\n\tconst globalPath = `settings${ appendedPropertyPath }`;\n\tconst sourceKey = source === 'all' ? 'merged' : source;\n\n\tconst settingValue = useMemo( () => {\n\t\tconst configToUse = configs[ sourceKey ];\n\t\tif ( ! configToUse ) {\n\t\t\tthrow 'Unsupported source';\n\t\t}\n\n\t\tif ( propertyPath ) {\n\t\t\treturn (\n\t\t\t\tgetValueFromObjectPath( configToUse, contextualPath ) ??\n\t\t\t\tgetValueFromObjectPath( configToUse, globalPath )\n\t\t\t);\n\t\t}\n\n\t\tlet result = {};\n\t\tVALID_SETTINGS.forEach( ( setting ) => {\n\t\t\tconst value =\n\t\t\t\tgetValueFromObjectPath(\n\t\t\t\t\tconfigToUse,\n\t\t\t\t\t`settings${ appendedBlockPath }.${ setting }`\n\t\t\t\t) ??\n\t\t\t\tgetValueFromObjectPath( configToUse, `settings.${ setting }` );\n\t\t\tif ( value ) {\n\t\t\t\tresult = setImmutably( result, setting.split( '.' ), value );\n\t\t\t}\n\t\t} );\n\t\treturn result;\n\t}, [\n\t\tconfigs,\n\t\tsourceKey,\n\t\tpropertyPath,\n\t\tcontextualPath,\n\t\tglobalPath,\n\t\tappendedBlockPath,\n\t] );\n\n\tconst setSetting = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) =>\n\t\t\tsetImmutably( currentConfig, contextualPath.split( '.' ), newValue )\n\t\t);\n\t};\n\treturn [ settingValue, setSetting ];\n}\n\nexport function useGlobalStyle(\n\tpath,\n\tblockName,\n\tsource = 'all',\n\t{ shouldDecodeEncode = true } = {}\n) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\tconst appendedPath = path ? '.' + path : '';\n\tconst finalPath = ! blockName\n\t\t? `styles${ appendedPath }`\n\t\t: `styles.blocks.${ blockName }${ appendedPath }`;\n\n\tconst setStyle = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) =>\n\t\t\tsetImmutably(\n\t\t\t\tcurrentConfig,\n\t\t\t\tfinalPath.split( '.' ),\n\t\t\t\tshouldDecodeEncode\n\t\t\t\t\t? getPresetVariableFromValue(\n\t\t\t\t\t\t\tmergedConfig.settings,\n\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\tnewValue\n\t\t\t\t\t )\n\t\t\t\t\t: newValue\n\t\t\t)\n\t\t);\n\t};\n\n\tlet rawResult, result;\n\tswitch ( source ) {\n\t\tcase 'all':\n\t\t\trawResult = getValueFromObjectPath( mergedConfig, finalPath );\n\t\t\tresult = shouldDecodeEncode\n\t\t\t\t? getValueFromVariable( mergedConfig, blockName, rawResult )\n\t\t\t\t: rawResult;\n\t\t\tbreak;\n\t\tcase 'user':\n\t\t\trawResult = getValueFromObjectPath( userConfig, finalPath );\n\t\t\tresult = shouldDecodeEncode\n\t\t\t\t? getValueFromVariable( mergedConfig, blockName, rawResult )\n\t\t\t\t: rawResult;\n\t\t\tbreak;\n\t\tcase 'base':\n\t\t\trawResult = getValueFromObjectPath( baseConfig, finalPath );\n\t\t\tresult = shouldDecodeEncode\n\t\t\t\t? getValueFromVariable( baseConfig, blockName, rawResult )\n\t\t\t\t: rawResult;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow 'Unsupported source';\n\t}\n\n\treturn [ result, setStyle ];\n}\n\n/**\n * React hook that overrides a global settings object with block and element specific settings.\n *\n * @param {Object} parentSettings Settings object.\n * @param {blockName?} blockName Block name.\n * @param {element?} element Element name.\n *\n * @return {Object} Merge of settings and supports.\n */\nexport function useSettingsForBlockElement(\n\tparentSettings,\n\tblockName,\n\telement\n) {\n\tconst { supportedStyles, supports } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\tsupportedStyles: unlock(\n\t\t\t\t\tselect( blocksStore )\n\t\t\t\t).getSupportedStyles( blockName, element ),\n\t\t\t\tsupports:\n\t\t\t\t\tselect( blocksStore ).getBlockType( blockName )?.supports,\n\t\t\t};\n\t\t},\n\t\t[ blockName, element ]\n\t);\n\n\treturn useMemo( () => {\n\t\tconst updatedSettings = { ...parentSettings };\n\n\t\tif ( ! supportedStyles.includes( 'fontSize' ) ) {\n\t\t\tupdatedSettings.typography = {\n\t\t\t\t...updatedSettings.typography,\n\t\t\t\tfontSizes: {},\n\t\t\t\tcustomFontSize: false,\n\t\t\t};\n\t\t}\n\n\t\tif ( ! supportedStyles.includes( 'fontFamily' ) ) {\n\t\t\tupdatedSettings.typography = {\n\t\t\t\t...updatedSettings.typography,\n\t\t\t\tfontFamilies: {},\n\t\t\t};\n\t\t}\n\n\t\tupdatedSettings.color = {\n\t\t\t...updatedSettings.color,\n\t\t\ttext:\n\t\t\t\tupdatedSettings.color?.text &&\n\t\t\t\tsupportedStyles.includes( 'color' ),\n\t\t\tbackground:\n\t\t\t\tupdatedSettings.color?.background &&\n\t\t\t\t( supportedStyles.includes( 'background' ) ||\n\t\t\t\t\tsupportedStyles.includes( 'backgroundColor' ) ),\n\t\t\tbutton:\n\t\t\t\tupdatedSettings.color?.button &&\n\t\t\t\tsupportedStyles.includes( 'buttonColor' ),\n\t\t\theading:\n\t\t\t\tupdatedSettings.color?.heading &&\n\t\t\t\tsupportedStyles.includes( 'headingColor' ),\n\t\t\tlink:\n\t\t\t\tupdatedSettings.color?.link &&\n\t\t\t\tsupportedStyles.includes( 'linkColor' ),\n\t\t\tcaption:\n\t\t\t\tupdatedSettings.color?.caption &&\n\t\t\t\tsupportedStyles.includes( 'captionColor' ),\n\t\t};\n\n\t\t// Some blocks can enable background colors but disable gradients.\n\t\tif ( ! supportedStyles.includes( 'background' ) ) {\n\t\t\tupdatedSettings.color.gradients = [];\n\t\t\tupdatedSettings.color.customGradient = false;\n\t\t}\n\n\t\t// If filters are not supported by the block/element, disable duotone.\n\t\tif ( ! supportedStyles.includes( 'filter' ) ) {\n\t\t\tupdatedSettings.color.defaultDuotone = false;\n\t\t\tupdatedSettings.color.customDuotone = false;\n\t\t}\n\n\t\t[\n\t\t\t'lineHeight',\n\t\t\t'fontStyle',\n\t\t\t'fontWeight',\n\t\t\t'letterSpacing',\n\t\t\t'textTransform',\n\t\t\t'textDecoration',\n\t\t\t'writingMode',\n\t\t].forEach( ( key ) => {\n\t\t\tif ( ! supportedStyles.includes( key ) ) {\n\t\t\t\tupdatedSettings.typography = {\n\t\t\t\t\t...updatedSettings.typography,\n\t\t\t\t\t[ key ]: false,\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\t// The column-count style is named text column to reduce confusion with\n\t\t// the columns block and manage expectations from the support.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/33587\n\t\tif ( ! supportedStyles.includes( 'columnCount' ) ) {\n\t\t\tupdatedSettings.typography = {\n\t\t\t\t...updatedSettings.typography,\n\t\t\t\ttextColumns: false,\n\t\t\t};\n\t\t}\n\n\t\t[ 'contentSize', 'wideSize' ].forEach( ( key ) => {\n\t\t\tif ( ! supportedStyles.includes( key ) ) {\n\t\t\t\tupdatedSettings.layout = {\n\t\t\t\t\t...updatedSettings.layout,\n\t\t\t\t\t[ key ]: false,\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\t[ 'padding', 'margin', 'blockGap' ].forEach( ( key ) => {\n\t\t\tif ( ! supportedStyles.includes( key ) ) {\n\t\t\t\tupdatedSettings.spacing = {\n\t\t\t\t\t...updatedSettings.spacing,\n\t\t\t\t\t[ key ]: false,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst sides = Array.isArray( supports?.spacing?.[ key ] )\n\t\t\t\t? supports?.spacing?.[ key ]\n\t\t\t\t: supports?.spacing?.[ key ]?.sides;\n\t\t\t// Check if spacing type is supported before adding sides.\n\t\t\tif ( sides?.length && updatedSettings.spacing?.[ key ] ) {\n\t\t\t\tupdatedSettings.spacing = {\n\t\t\t\t\t...updatedSettings.spacing,\n\t\t\t\t\t[ key ]: {\n\t\t\t\t\t\t...updatedSettings.spacing?.[ key ],\n\t\t\t\t\t\tsides,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\tif ( ! supportedStyles.includes( 'minHeight' ) ) {\n\t\t\tupdatedSettings.dimensions = {\n\t\t\t\t...updatedSettings.dimensions,\n\t\t\t\tminHeight: false,\n\t\t\t};\n\t\t}\n\n\t\t[ 'radius', 'color', 'style', 'width' ].forEach( ( key ) => {\n\t\t\tif (\n\t\t\t\t! supportedStyles.includes(\n\t\t\t\t\t'border' + key.charAt( 0 ).toUpperCase() + key.slice( 1 )\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tupdatedSettings.border = {\n\t\t\t\t\t...updatedSettings.border,\n\t\t\t\t\t[ key ]: false,\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\tupdatedSettings.shadow = supportedStyles.includes( 'shadow' )\n\t\t\t? updatedSettings.shadow\n\t\t\t: false;\n\n\t\treturn updatedSettings;\n\t}, [ parentSettings, supportedStyles, supports ] );\n}\n\nexport function useColorsPerOrigin( settings ) {\n\tconst customColors = settings?.color?.palette?.custom;\n\tconst themeColors = settings?.color?.palette?.theme;\n\tconst defaultColors = settings?.color?.palette?.default;\n\tconst shouldDisplayDefaultColors = settings?.color?.defaultPalette;\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeColors && themeColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tcolors: themeColors,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultColors &&\n\t\t\tdefaultColors &&\n\t\t\tdefaultColors.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tcolors: defaultColors,\n\t\t\t} );\n\t\t}\n\t\tif ( customColors && customColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tcolors: customColors,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [\n\t\tcustomColors,\n\t\tthemeColors,\n\t\tdefaultColors,\n\t\tshouldDisplayDefaultColors,\n\t] );\n}\n\nexport function useGradientsPerOrigin( settings ) {\n\tconst customGradients = settings?.color?.gradients?.custom;\n\tconst themeGradients = settings?.color?.gradients?.theme;\n\tconst defaultGradients = settings?.color?.gradients?.default;\n\tconst shouldDisplayDefaultGradients = settings?.color?.defaultGradients;\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeGradients && themeGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tgradients: themeGradients,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultGradients &&\n\t\t\tdefaultGradients &&\n\t\t\tdefaultGradients.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tgradients: defaultGradients,\n\t\t\t} );\n\t\t}\n\t\tif ( customGradients && customGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tgradients: customGradients,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [\n\t\tcustomGradients,\n\t\tthemeGradients,\n\t\tdefaultGradients,\n\t\tshouldDisplayDefaultGradients,\n\t] );\n}\n\nexport function __experimentalUseGlobalBehaviors( blockName, source = 'all' ) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\tconst finalPath = ! blockName\n\t\t? `behaviors`\n\t\t: `behaviors.blocks.${ blockName }`;\n\n\tlet rawResult, result;\n\tswitch ( source ) {\n\t\tcase 'all':\n\t\t\trawResult = getValueFromObjectPath( mergedConfig, finalPath );\n\t\t\tresult = getValueFromVariable( mergedConfig, blockName, rawResult );\n\t\t\tbreak;\n\t\tcase 'user':\n\t\t\trawResult = getValueFromObjectPath( userConfig, finalPath );\n\t\t\tresult = getValueFromVariable( mergedConfig, blockName, rawResult );\n\t\t\tbreak;\n\t\tcase 'base':\n\t\t\trawResult = getValueFromObjectPath( baseConfig, finalPath );\n\t\t\tresult = getValueFromVariable( baseConfig, blockName, rawResult );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow 'Unsupported source';\n\t}\n\n\tconst animation = result?.lightbox?.animation || 'zoom';\n\n\tconst setBehavior = ( newValue ) => {\n\t\tlet newBehavior;\n\t\t// The user saves with Apply Globally option.\n\t\tif ( typeof newValue === 'object' ) {\n\t\t\tnewBehavior = newValue;\n\t\t} else {\n\t\t\tswitch ( newValue ) {\n\t\t\t\tcase 'lightbox':\n\t\t\t\t\tnewBehavior = {\n\t\t\t\t\t\tlightbox: {\n\t\t\t\t\t\t\tenabled: true,\n\t\t\t\t\t\t\tanimation,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'fade':\n\t\t\t\t\tnewBehavior = {\n\t\t\t\t\t\tlightbox: {\n\t\t\t\t\t\t\tenabled: true,\n\t\t\t\t\t\t\tanimation: 'fade',\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'zoom':\n\t\t\t\t\tnewBehavior = {\n\t\t\t\t\t\tlightbox: {\n\t\t\t\t\t\t\tenabled: true,\n\t\t\t\t\t\t\tanimation: 'zoom',\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t\tbreak;\n\t\t\t\tcase '':\n\t\t\t\t\tnewBehavior = {\n\t\t\t\t\t\tlightbox: {\n\t\t\t\t\t\t\tenabled: false,\n\t\t\t\t\t\t\tanimation,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tsetUserConfig( ( currentConfig ) =>\n\t\t\tsetImmutably( currentConfig, finalPath.split( '.' ), newBehavior )\n\t\t);\n\t};\n\tlet behavior = '';\n\tif ( result === undefined ) behavior = 'default';\n\tif ( result?.lightbox.enabled ) behavior = 'lightbox';\n\n\treturn { behavior, inheritedBehaviors: result, setBehavior };\n}\n\nexport function __experimentalUseHasBehaviorsPanel(\n\tsettings,\n\tname,\n\t{ blockSupportOnly = false } = {}\n) {\n\tif ( ! settings?.behaviors ) {\n\t\treturn false;\n\t}\n\n\t// If every behavior is disabled on block supports, do not show the behaviors inspector control.\n\tconst hasSomeBlockSupport = Object.keys( settings?.behaviors ).some(\n\t\t( key ) => hasBlockSupport( name, `behaviors.${ key }` )\n\t);\n\n\tif ( blockSupportOnly ) {\n\t\treturn hasSomeBlockSupport;\n\t}\n\n\t// If every behavior is disabled, do not show the behaviors inspector control.\n\treturn Object.values( settings?.behaviors ).some(\n\t\t( value ) => value === true && hasSomeBlockSupport\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_es","_interopRequireDefault","require","_element","_data","_blocks","_i18n","_utils","_object","_context","_lockUnlock","EMPTY_CONFIG","settings","styles","VALID_SETTINGS","useGlobalStylesReset","user","config","setUserConfig","useContext","GlobalStylesContext","canReset","fastDeepEqual","useCallback","exports","useGlobalSetting","propertyPath","blockName","source","configs","appendedBlockPath","appendedPropertyPath","contextualPath","globalPath","sourceKey","settingValue","useMemo","configToUse","_getValueFromObjectPa","getValueFromObjectPath","result","forEach","setting","_getValueFromObjectPa2","value","setImmutably","split","setSetting","newValue","currentConfig","useGlobalStyle","path","shouldDecodeEncode","merged","mergedConfig","base","baseConfig","userConfig","appendedPath","finalPath","setStyle","getPresetVariableFromValue","rawResult","getValueFromVariable","useSettingsForBlockElement","parentSettings","element","supportedStyles","supports","useSelect","select","unlock","blocksStore","getSupportedStyles","getBlockType","updatedSettings","includes","typography","fontSizes","customFontSize","fontFamilies","color","text","background","button","heading","link","caption","gradients","customGradient","defaultDuotone","customDuotone","key","textColumns","layout","spacing","sides","Array","isArray","length","dimensions","minHeight","charAt","toUpperCase","slice","border","shadow","useColorsPerOrigin","customColors","palette","custom","themeColors","theme","defaultColors","default","shouldDisplayDefaultColors","defaultPalette","push","name","_x","colors","useGradientsPerOrigin","customGradients","themeGradients","defaultGradients","shouldDisplayDefaultGradients"],"sources":["@wordpress/block-editor/src/components/global-styles/hooks.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport fastDeepEqual from 'fast-deep-equal/es6';\n\n/**\n * WordPress dependencies\n */\nimport { useContext, useCallback, useMemo } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as blocksStore } from '@wordpress/blocks';\nimport { _x } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, getPresetVariableFromValue } from './utils';\nimport { getValueFromObjectPath, setImmutably } from '../../utils/object';\nimport { GlobalStylesContext } from './context';\nimport { unlock } from '../../lock-unlock';\n\nconst EMPTY_CONFIG = { settings: {}, styles: {} };\n\nconst VALID_SETTINGS = [\n\t'appearanceTools',\n\t'useRootPaddingAwareAlignments',\n\t'border.color',\n\t'border.radius',\n\t'border.style',\n\t'border.width',\n\t'shadow.presets',\n\t'shadow.defaultPresets',\n\t'color.background',\n\t'color.button',\n\t'color.caption',\n\t'color.custom',\n\t'color.customDuotone',\n\t'color.customGradient',\n\t'color.defaultDuotone',\n\t'color.defaultGradients',\n\t'color.defaultPalette',\n\t'color.duotone',\n\t'color.gradients',\n\t'color.heading',\n\t'color.link',\n\t'color.palette',\n\t'color.text',\n\t'custom',\n\t'dimensions.minHeight',\n\t'layout.contentSize',\n\t'layout.definitions',\n\t'layout.wideSize',\n\t'lightbox.enabled',\n\t'lightbox.allowEditing',\n\t'position.fixed',\n\t'position.sticky',\n\t'spacing.customSpacingSize',\n\t'spacing.spacingSizes',\n\t'spacing.spacingScale',\n\t'spacing.blockGap',\n\t'spacing.margin',\n\t'spacing.padding',\n\t'spacing.units',\n\t'typography.fluid',\n\t'typography.customFontSize',\n\t'typography.dropCap',\n\t'typography.fontFamilies',\n\t'typography.fontSizes',\n\t'typography.fontStyle',\n\t'typography.fontWeight',\n\t'typography.letterSpacing',\n\t'typography.lineHeight',\n\t'typography.textColumns',\n\t'typography.textDecoration',\n\t'typography.textTransform',\n\t'typography.writingMode',\n];\n\nexport const useGlobalStylesReset = () => {\n\tconst { user: config, setUserConfig } = useContext( GlobalStylesContext );\n\tconst canReset = !! config && ! fastDeepEqual( config, EMPTY_CONFIG );\n\treturn [\n\t\tcanReset,\n\t\tuseCallback(\n\t\t\t() => setUserConfig( () => EMPTY_CONFIG ),\n\t\t\t[ setUserConfig ]\n\t\t),\n\t];\n};\n\nexport function useGlobalSetting( propertyPath, blockName, source = 'all' ) {\n\tconst { setUserConfig, ...configs } = useContext( GlobalStylesContext );\n\tconst appendedBlockPath = blockName ? '.blocks.' + blockName : '';\n\tconst appendedPropertyPath = propertyPath ? '.' + propertyPath : '';\n\tconst contextualPath = `settings${ appendedBlockPath }${ appendedPropertyPath }`;\n\tconst globalPath = `settings${ appendedPropertyPath }`;\n\tconst sourceKey = source === 'all' ? 'merged' : source;\n\n\tconst settingValue = useMemo( () => {\n\t\tconst configToUse = configs[ sourceKey ];\n\t\tif ( ! configToUse ) {\n\t\t\tthrow 'Unsupported source';\n\t\t}\n\n\t\tif ( propertyPath ) {\n\t\t\treturn (\n\t\t\t\tgetValueFromObjectPath( configToUse, contextualPath ) ??\n\t\t\t\tgetValueFromObjectPath( configToUse, globalPath )\n\t\t\t);\n\t\t}\n\n\t\tlet result = {};\n\t\tVALID_SETTINGS.forEach( ( setting ) => {\n\t\t\tconst value =\n\t\t\t\tgetValueFromObjectPath(\n\t\t\t\t\tconfigToUse,\n\t\t\t\t\t`settings${ appendedBlockPath }.${ setting }`\n\t\t\t\t) ??\n\t\t\t\tgetValueFromObjectPath( configToUse, `settings.${ setting }` );\n\t\t\tif ( value ) {\n\t\t\t\tresult = setImmutably( result, setting.split( '.' ), value );\n\t\t\t}\n\t\t} );\n\t\treturn result;\n\t}, [\n\t\tconfigs,\n\t\tsourceKey,\n\t\tpropertyPath,\n\t\tcontextualPath,\n\t\tglobalPath,\n\t\tappendedBlockPath,\n\t] );\n\n\tconst setSetting = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) =>\n\t\t\tsetImmutably( currentConfig, contextualPath.split( '.' ), newValue )\n\t\t);\n\t};\n\treturn [ settingValue, setSetting ];\n}\n\nexport function useGlobalStyle(\n\tpath,\n\tblockName,\n\tsource = 'all',\n\t{ shouldDecodeEncode = true } = {}\n) {\n\tconst {\n\t\tmerged: mergedConfig,\n\t\tbase: baseConfig,\n\t\tuser: userConfig,\n\t\tsetUserConfig,\n\t} = useContext( GlobalStylesContext );\n\tconst appendedPath = path ? '.' + path : '';\n\tconst finalPath = ! blockName\n\t\t? `styles${ appendedPath }`\n\t\t: `styles.blocks.${ blockName }${ appendedPath }`;\n\n\tconst setStyle = ( newValue ) => {\n\t\tsetUserConfig( ( currentConfig ) =>\n\t\t\tsetImmutably(\n\t\t\t\tcurrentConfig,\n\t\t\t\tfinalPath.split( '.' ),\n\t\t\t\tshouldDecodeEncode\n\t\t\t\t\t? getPresetVariableFromValue(\n\t\t\t\t\t\t\tmergedConfig.settings,\n\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\tnewValue\n\t\t\t\t\t )\n\t\t\t\t\t: newValue\n\t\t\t)\n\t\t);\n\t};\n\n\tlet rawResult, result;\n\tswitch ( source ) {\n\t\tcase 'all':\n\t\t\trawResult = getValueFromObjectPath( mergedConfig, finalPath );\n\t\t\tresult = shouldDecodeEncode\n\t\t\t\t? getValueFromVariable( mergedConfig, blockName, rawResult )\n\t\t\t\t: rawResult;\n\t\t\tbreak;\n\t\tcase 'user':\n\t\t\trawResult = getValueFromObjectPath( userConfig, finalPath );\n\t\t\tresult = shouldDecodeEncode\n\t\t\t\t? getValueFromVariable( mergedConfig, blockName, rawResult )\n\t\t\t\t: rawResult;\n\t\t\tbreak;\n\t\tcase 'base':\n\t\t\trawResult = getValueFromObjectPath( baseConfig, finalPath );\n\t\t\tresult = shouldDecodeEncode\n\t\t\t\t? getValueFromVariable( baseConfig, blockName, rawResult )\n\t\t\t\t: rawResult;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tthrow 'Unsupported source';\n\t}\n\n\treturn [ result, setStyle ];\n}\n\n/**\n * React hook that overrides a global settings object with block and element specific settings.\n *\n * @param {Object} parentSettings Settings object.\n * @param {blockName?} blockName Block name.\n * @param {element?} element Element name.\n *\n * @return {Object} Merge of settings and supports.\n */\nexport function useSettingsForBlockElement(\n\tparentSettings,\n\tblockName,\n\telement\n) {\n\tconst { supportedStyles, supports } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\tsupportedStyles: unlock(\n\t\t\t\t\tselect( blocksStore )\n\t\t\t\t).getSupportedStyles( blockName, element ),\n\t\t\t\tsupports:\n\t\t\t\t\tselect( blocksStore ).getBlockType( blockName )?.supports,\n\t\t\t};\n\t\t},\n\t\t[ blockName, element ]\n\t);\n\n\treturn useMemo( () => {\n\t\tconst updatedSettings = { ...parentSettings };\n\n\t\tif ( ! supportedStyles.includes( 'fontSize' ) ) {\n\t\t\tupdatedSettings.typography = {\n\t\t\t\t...updatedSettings.typography,\n\t\t\t\tfontSizes: {},\n\t\t\t\tcustomFontSize: false,\n\t\t\t};\n\t\t}\n\n\t\tif ( ! supportedStyles.includes( 'fontFamily' ) ) {\n\t\t\tupdatedSettings.typography = {\n\t\t\t\t...updatedSettings.typography,\n\t\t\t\tfontFamilies: {},\n\t\t\t};\n\t\t}\n\n\t\tupdatedSettings.color = {\n\t\t\t...updatedSettings.color,\n\t\t\ttext:\n\t\t\t\tupdatedSettings.color?.text &&\n\t\t\t\tsupportedStyles.includes( 'color' ),\n\t\t\tbackground:\n\t\t\t\tupdatedSettings.color?.background &&\n\t\t\t\t( supportedStyles.includes( 'background' ) ||\n\t\t\t\t\tsupportedStyles.includes( 'backgroundColor' ) ),\n\t\t\tbutton:\n\t\t\t\tupdatedSettings.color?.button &&\n\t\t\t\tsupportedStyles.includes( 'buttonColor' ),\n\t\t\theading:\n\t\t\t\tupdatedSettings.color?.heading &&\n\t\t\t\tsupportedStyles.includes( 'headingColor' ),\n\t\t\tlink:\n\t\t\t\tupdatedSettings.color?.link &&\n\t\t\t\tsupportedStyles.includes( 'linkColor' ),\n\t\t\tcaption:\n\t\t\t\tupdatedSettings.color?.caption &&\n\t\t\t\tsupportedStyles.includes( 'captionColor' ),\n\t\t};\n\n\t\t// Some blocks can enable background colors but disable gradients.\n\t\tif ( ! supportedStyles.includes( 'background' ) ) {\n\t\t\tupdatedSettings.color.gradients = [];\n\t\t\tupdatedSettings.color.customGradient = false;\n\t\t}\n\n\t\t// If filters are not supported by the block/element, disable duotone.\n\t\tif ( ! supportedStyles.includes( 'filter' ) ) {\n\t\t\tupdatedSettings.color.defaultDuotone = false;\n\t\t\tupdatedSettings.color.customDuotone = false;\n\t\t}\n\n\t\t[\n\t\t\t'lineHeight',\n\t\t\t'fontStyle',\n\t\t\t'fontWeight',\n\t\t\t'letterSpacing',\n\t\t\t'textTransform',\n\t\t\t'textDecoration',\n\t\t\t'writingMode',\n\t\t].forEach( ( key ) => {\n\t\t\tif ( ! supportedStyles.includes( key ) ) {\n\t\t\t\tupdatedSettings.typography = {\n\t\t\t\t\t...updatedSettings.typography,\n\t\t\t\t\t[ key ]: false,\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\t// The column-count style is named text column to reduce confusion with\n\t\t// the columns block and manage expectations from the support.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/33587\n\t\tif ( ! supportedStyles.includes( 'columnCount' ) ) {\n\t\t\tupdatedSettings.typography = {\n\t\t\t\t...updatedSettings.typography,\n\t\t\t\ttextColumns: false,\n\t\t\t};\n\t\t}\n\n\t\t[ 'contentSize', 'wideSize' ].forEach( ( key ) => {\n\t\t\tif ( ! supportedStyles.includes( key ) ) {\n\t\t\t\tupdatedSettings.layout = {\n\t\t\t\t\t...updatedSettings.layout,\n\t\t\t\t\t[ key ]: false,\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\t[ 'padding', 'margin', 'blockGap' ].forEach( ( key ) => {\n\t\t\tif ( ! supportedStyles.includes( key ) ) {\n\t\t\t\tupdatedSettings.spacing = {\n\t\t\t\t\t...updatedSettings.spacing,\n\t\t\t\t\t[ key ]: false,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconst sides = Array.isArray( supports?.spacing?.[ key ] )\n\t\t\t\t? supports?.spacing?.[ key ]\n\t\t\t\t: supports?.spacing?.[ key ]?.sides;\n\t\t\t// Check if spacing type is supported before adding sides.\n\t\t\tif ( sides?.length && updatedSettings.spacing?.[ key ] ) {\n\t\t\t\tupdatedSettings.spacing = {\n\t\t\t\t\t...updatedSettings.spacing,\n\t\t\t\t\t[ key ]: {\n\t\t\t\t\t\t...updatedSettings.spacing?.[ key ],\n\t\t\t\t\t\tsides,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\tif ( ! supportedStyles.includes( 'minHeight' ) ) {\n\t\t\tupdatedSettings.dimensions = {\n\t\t\t\t...updatedSettings.dimensions,\n\t\t\t\tminHeight: false,\n\t\t\t};\n\t\t}\n\n\t\t[ 'radius', 'color', 'style', 'width' ].forEach( ( key ) => {\n\t\t\tif (\n\t\t\t\t! supportedStyles.includes(\n\t\t\t\t\t'border' + key.charAt( 0 ).toUpperCase() + key.slice( 1 )\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tupdatedSettings.border = {\n\t\t\t\t\t...updatedSettings.border,\n\t\t\t\t\t[ key ]: false,\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\tupdatedSettings.shadow = supportedStyles.includes( 'shadow' )\n\t\t\t? updatedSettings.shadow\n\t\t\t: false;\n\n\t\treturn updatedSettings;\n\t}, [ parentSettings, supportedStyles, supports ] );\n}\n\nexport function useColorsPerOrigin( settings ) {\n\tconst customColors = settings?.color?.palette?.custom;\n\tconst themeColors = settings?.color?.palette?.theme;\n\tconst defaultColors = settings?.color?.palette?.default;\n\tconst shouldDisplayDefaultColors = settings?.color?.defaultPalette;\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeColors && themeColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tcolors: themeColors,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultColors &&\n\t\t\tdefaultColors &&\n\t\t\tdefaultColors.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tcolors: defaultColors,\n\t\t\t} );\n\t\t}\n\t\tif ( customColors && customColors.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tcolors: customColors,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [\n\t\tcustomColors,\n\t\tthemeColors,\n\t\tdefaultColors,\n\t\tshouldDisplayDefaultColors,\n\t] );\n}\n\nexport function useGradientsPerOrigin( settings ) {\n\tconst customGradients = settings?.color?.gradients?.custom;\n\tconst themeGradients = settings?.color?.gradients?.theme;\n\tconst defaultGradients = settings?.color?.gradients?.default;\n\tconst shouldDisplayDefaultGradients = settings?.color?.defaultGradients;\n\n\treturn useMemo( () => {\n\t\tconst result = [];\n\t\tif ( themeGradients && themeGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates this palette comes from the theme.'\n\t\t\t\t),\n\t\t\t\tgradients: themeGradients,\n\t\t\t} );\n\t\t}\n\t\tif (\n\t\t\tshouldDisplayDefaultGradients &&\n\t\t\tdefaultGradients &&\n\t\t\tdefaultGradients.length\n\t\t) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates this palette comes from WordPress.'\n\t\t\t\t),\n\t\t\t\tgradients: defaultGradients,\n\t\t\t} );\n\t\t}\n\t\tif ( customGradients && customGradients.length ) {\n\t\t\tresult.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates this palette is created by the user.'\n\t\t\t\t),\n\t\t\t\tgradients: customGradients,\n\t\t\t} );\n\t\t}\n\t\treturn result;\n\t}, [\n\t\tcustomGradients,\n\t\tthemeGradients,\n\t\tdefaultGradients,\n\t\tshouldDisplayDefaultGradients,\n\t] );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = ImageSettingsPanel;
|
|
7
|
+
exports.useHasImageSettingsPanel = useHasImageSettingsPanel;
|
|
8
|
+
var _element = require("@wordpress/element");
|
|
9
|
+
var _components = require("@wordpress/components");
|
|
10
|
+
var _i18n = require("@wordpress/i18n");
|
|
11
|
+
/**
|
|
12
|
+
* WordPress dependencies
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
function useHasImageSettingsPanel(name, value, inheritedValue) {
|
|
16
|
+
// Note: If lightbox `value` exists, that means it was
|
|
17
|
+
// defined via the the Global Styles UI and will NOT
|
|
18
|
+
// be a boolean value or contain the `allowEditing` property,
|
|
19
|
+
// so we should show the settings panel in those cases.
|
|
20
|
+
return name === 'core/image' && inheritedValue?.lightbox?.allowEditing || !!value?.lightbox;
|
|
21
|
+
}
|
|
22
|
+
function ImageSettingsPanel({
|
|
23
|
+
onChange,
|
|
24
|
+
value,
|
|
25
|
+
inheritedValue,
|
|
26
|
+
panelId
|
|
27
|
+
}) {
|
|
28
|
+
const resetLightbox = () => {
|
|
29
|
+
onChange(undefined);
|
|
30
|
+
};
|
|
31
|
+
const onChangeLightbox = newSetting => {
|
|
32
|
+
onChange({
|
|
33
|
+
enabled: newSetting
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
let lightboxChecked = false;
|
|
37
|
+
if (inheritedValue?.lightbox?.enabled) {
|
|
38
|
+
lightboxChecked = inheritedValue.lightbox.enabled;
|
|
39
|
+
}
|
|
40
|
+
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_components.__experimentalToolsPanel, {
|
|
41
|
+
label: (0, _i18n._x)('Settings', 'Image settings'),
|
|
42
|
+
resetAll: resetLightbox,
|
|
43
|
+
panelId: panelId
|
|
44
|
+
}, (0, _element.createElement)(_components.__experimentalToolsPanelItem
|
|
45
|
+
// We use the `userSettings` prop instead of `settings`, because `settings`
|
|
46
|
+
// contains the core/theme values for the lightbox and we want to show the
|
|
47
|
+
// "RESET" button ONLY when the user has explicitly set a value in the
|
|
48
|
+
// Global Styles.
|
|
49
|
+
, {
|
|
50
|
+
hasValue: () => !!value?.lightbox,
|
|
51
|
+
label: (0, _i18n.__)('Expand on Click'),
|
|
52
|
+
onDeselect: resetLightbox,
|
|
53
|
+
isShownByDefault: true,
|
|
54
|
+
panelId: panelId
|
|
55
|
+
}, (0, _element.createElement)(_components.ToggleControl, {
|
|
56
|
+
label: (0, _i18n.__)('Expand on Click'),
|
|
57
|
+
checked: lightboxChecked,
|
|
58
|
+
onChange: onChangeLightbox
|
|
59
|
+
}))));
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=image-settings-panel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_components","require","_i18n","useHasImageSettingsPanel","name","value","inheritedValue","lightbox","allowEditing","ImageSettingsPanel","onChange","panelId","resetLightbox","undefined","onChangeLightbox","newSetting","enabled","lightboxChecked","_element","createElement","Fragment","__experimentalToolsPanel","label","_x","resetAll","__experimentalToolsPanelItem","hasValue","__","onDeselect","isShownByDefault","ToggleControl","checked"],"sources":["@wordpress/block-editor/src/components/global-styles/image-settings-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tToggleControl,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\n\nexport function useHasImageSettingsPanel( name, value, inheritedValue ) {\n\t// Note: If lightbox `value` exists, that means it was\n\t// defined via the the Global Styles UI and will NOT\n\t// be a boolean value or contain the `allowEditing` property,\n\t// so we should show the settings panel in those cases.\n\treturn (\n\t\t( name === 'core/image' && inheritedValue?.lightbox?.allowEditing ) ||\n\t\t!! value?.lightbox\n\t);\n}\n\nexport default function ImageSettingsPanel( {\n\tonChange,\n\tvalue,\n\tinheritedValue,\n\tpanelId,\n} ) {\n\tconst resetLightbox = () => {\n\t\tonChange( undefined );\n\t};\n\n\tconst onChangeLightbox = ( newSetting ) => {\n\t\tonChange( {\n\t\t\tenabled: newSetting,\n\t\t} );\n\t};\n\n\tlet lightboxChecked = false;\n\n\tif ( inheritedValue?.lightbox?.enabled ) {\n\t\tlightboxChecked = inheritedValue.lightbox.enabled;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanel\n\t\t\t\tlabel={ _x( 'Settings', 'Image settings' ) }\n\t\t\t\tresetAll={ resetLightbox }\n\t\t\t\tpanelId={ panelId }\n\t\t\t>\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t// We use the `userSettings` prop instead of `settings`, because `settings`\n\t\t\t\t\t// contains the core/theme values for the lightbox and we want to show the\n\t\t\t\t\t// \"RESET\" button ONLY when the user has explicitly set a value in the\n\t\t\t\t\t// Global Styles.\n\t\t\t\t\thasValue={ () => !! value?.lightbox }\n\t\t\t\t\tlabel={ __( 'Expand on Click' ) }\n\t\t\t\t\tonDeselect={ resetLightbox }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Expand on Click' ) }\n\t\t\t\t\t\tchecked={ lightboxChecked }\n\t\t\t\t\t\tonChange={ onChangeLightbox }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</ToolsPanel>\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AARA;AACA;AACA;;AAQO,SAASE,wBAAwBA,CAAEC,IAAI,EAAEC,KAAK,EAAEC,cAAc,EAAG;EACvE;EACA;EACA;EACA;EACA,OACGF,IAAI,KAAK,YAAY,IAAIE,cAAc,EAAEC,QAAQ,EAAEC,YAAY,IACjE,CAAC,CAAEH,KAAK,EAAEE,QAAQ;AAEpB;AAEe,SAASE,kBAAkBA,CAAE;EAC3CC,QAAQ;EACRL,KAAK;EACLC,cAAc;EACdK;AACD,CAAC,EAAG;EACH,MAAMC,aAAa,GAAGA,CAAA,KAAM;IAC3BF,QAAQ,CAAEG,SAAU,CAAC;EACtB,CAAC;EAED,MAAMC,gBAAgB,GAAKC,UAAU,IAAM;IAC1CL,QAAQ,CAAE;MACTM,OAAO,EAAED;IACV,CAAE,CAAC;EACJ,CAAC;EAED,IAAIE,eAAe,GAAG,KAAK;EAE3B,IAAKX,cAAc,EAAEC,QAAQ,EAAES,OAAO,EAAG;IACxCC,eAAe,GAAGX,cAAc,CAACC,QAAQ,CAACS,OAAO;EAClD;EAEA,OACC,IAAAE,QAAA,CAAAC,aAAA,EAAAD,QAAA,CAAAE,QAAA,QACC,IAAAF,QAAA,CAAAC,aAAA,EAACnB,WAAA,CAAAqB,wBAAU;IACVC,KAAK,EAAG,IAAAC,QAAE,EAAE,UAAU,EAAE,gBAAiB,CAAG;IAC5CC,QAAQ,EAAGZ,aAAe;IAC1BD,OAAO,EAAGA;EAAS,GAEnB,IAAAO,QAAA,CAAAC,aAAA,EAACnB,WAAA,CAAAyB;EACA;EACA;EACA;EACA;EAAA;IACAC,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAErB,KAAK,EAAEE,QAAU;IACrCe,KAAK,EAAG,IAAAK,QAAE,EAAE,iBAAkB,CAAG;IACjCC,UAAU,EAAGhB,aAAe;IAC5BiB,gBAAgB,EAAG,IAAM;IACzBlB,OAAO,EAAGA;EAAS,GAEnB,IAAAO,QAAA,CAAAC,aAAA,EAACnB,WAAA,CAAA8B,aAAa;IACbR,KAAK,EAAG,IAAAK,QAAE,EAAE,iBAAkB,CAAG;IACjCI,OAAO,EAAGd,eAAiB;IAC3BP,QAAQ,EAAGI;EAAkB,CAC7B,CACc,CACL,CACX,CAAC;AAEL"}
|
|
@@ -46,28 +46,16 @@ Object.defineProperty(exports, "GlobalStylesContext", {
|
|
|
46
46
|
return _context.GlobalStylesContext;
|
|
47
47
|
}
|
|
48
48
|
});
|
|
49
|
-
Object.defineProperty(exports, "
|
|
50
|
-
enumerable: true,
|
|
51
|
-
get: function () {
|
|
52
|
-
return _typographyPanel.default;
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
Object.defineProperty(exports, "__experimentalBehaviorsPanel", {
|
|
56
|
-
enumerable: true,
|
|
57
|
-
get: function () {
|
|
58
|
-
return _behaviorsPanel.default;
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
Object.defineProperty(exports, "__experimentalUseGlobalBehaviors", {
|
|
49
|
+
Object.defineProperty(exports, "ImageSettingsPanel", {
|
|
62
50
|
enumerable: true,
|
|
63
51
|
get: function () {
|
|
64
|
-
return
|
|
52
|
+
return _imageSettingsPanel.default;
|
|
65
53
|
}
|
|
66
54
|
});
|
|
67
|
-
Object.defineProperty(exports, "
|
|
55
|
+
Object.defineProperty(exports, "TypographyPanel", {
|
|
68
56
|
enumerable: true,
|
|
69
57
|
get: function () {
|
|
70
|
-
return
|
|
58
|
+
return _typographyPanel.default;
|
|
71
59
|
}
|
|
72
60
|
});
|
|
73
61
|
Object.defineProperty(exports, "areGlobalStyleConfigsEqual", {
|
|
@@ -148,6 +136,12 @@ Object.defineProperty(exports, "useHasFiltersPanel", {
|
|
|
148
136
|
return _filtersPanel.useHasFiltersPanel;
|
|
149
137
|
}
|
|
150
138
|
});
|
|
139
|
+
Object.defineProperty(exports, "useHasImageSettingsPanel", {
|
|
140
|
+
enumerable: true,
|
|
141
|
+
get: function () {
|
|
142
|
+
return _imageSettingsPanel.useHasImageSettingsPanel;
|
|
143
|
+
}
|
|
144
|
+
});
|
|
151
145
|
Object.defineProperty(exports, "useHasTypographyPanel", {
|
|
152
146
|
enumerable: true,
|
|
153
147
|
get: function () {
|
|
@@ -170,7 +164,7 @@ var _borderPanel = _interopRequireWildcard(require("./border-panel"));
|
|
|
170
164
|
var _colorPanel = _interopRequireWildcard(require("./color-panel"));
|
|
171
165
|
var _effectsPanel = _interopRequireWildcard(require("./effects-panel"));
|
|
172
166
|
var _filtersPanel = _interopRequireWildcard(require("./filters-panel"));
|
|
173
|
-
var
|
|
167
|
+
var _imageSettingsPanel = _interopRequireWildcard(require("./image-settings-panel"));
|
|
174
168
|
var _advancedPanel = _interopRequireDefault(require("./advanced-panel"));
|
|
175
169
|
var _utils = require("./utils");
|
|
176
170
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_hooks","require","_getBlockCssSelector","_useGlobalStylesOutput","_context","_typographyPanel","_interopRequireWildcard","_dimensionsPanel","_borderPanel","_colorPanel","_effectsPanel","_filtersPanel","
|
|
1
|
+
{"version":3,"names":["_hooks","require","_getBlockCssSelector","_useGlobalStylesOutput","_context","_typographyPanel","_interopRequireWildcard","_dimensionsPanel","_borderPanel","_colorPanel","_effectsPanel","_filtersPanel","_imageSettingsPanel","_advancedPanel","_interopRequireDefault","_utils","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set"],"sources":["@wordpress/block-editor/src/components/global-styles/index.js"],"sourcesContent":["export {\n\tuseGlobalStylesReset,\n\tuseGlobalSetting,\n\tuseGlobalStyle,\n\tuseSettingsForBlockElement,\n} from './hooks';\nexport { getBlockCSSSelector } from './get-block-css-selector';\nexport {\n\tgetLayoutStyles,\n\tuseGlobalStylesOutput,\n\tuseGlobalStylesOutputWithConfig,\n} from './use-global-styles-output';\nexport { GlobalStylesContext } from './context';\nexport {\n\tdefault as TypographyPanel,\n\tuseHasTypographyPanel,\n} from './typography-panel';\nexport {\n\tdefault as DimensionsPanel,\n\tuseHasDimensionsPanel,\n} from './dimensions-panel';\nexport { default as BorderPanel, useHasBorderPanel } from './border-panel';\nexport { default as ColorPanel, useHasColorPanel } from './color-panel';\nexport { default as EffectsPanel, useHasEffectsPanel } from './effects-panel';\nexport { default as FiltersPanel, useHasFiltersPanel } from './filters-panel';\nexport {\n\tdefault as ImageSettingsPanel,\n\tuseHasImageSettingsPanel,\n} from './image-settings-panel';\nexport { default as AdvancedPanel } from './advanced-panel';\nexport { areGlobalStyleConfigsEqual } from './utils';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAMA,IAAAC,oBAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AAKA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAC,uBAAA,CAAAL,OAAA;AAIA,IAAAM,gBAAA,GAAAD,uBAAA,CAAAL,OAAA;AAIA,IAAAO,YAAA,GAAAF,uBAAA,CAAAL,OAAA;AACA,IAAAQ,WAAA,GAAAH,uBAAA,CAAAL,OAAA;AACA,IAAAS,aAAA,GAAAJ,uBAAA,CAAAL,OAAA;AACA,IAAAU,aAAA,GAAAL,uBAAA,CAAAL,OAAA;AACA,IAAAW,mBAAA,GAAAN,uBAAA,CAAAL,OAAA;AAIA,IAAAY,cAAA,GAAAC,sBAAA,CAAAb,OAAA;AACA,IAAAc,MAAA,GAAAd,OAAA;AAAqD,SAAAe,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAX,wBAAAe,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
@@ -11,20 +12,21 @@ exports.toStyles = exports.toCustomProperties = void 0;
|
|
|
11
12
|
exports.toSvgFilters = toSvgFilters;
|
|
12
13
|
exports.useGlobalStylesOutput = useGlobalStylesOutput;
|
|
13
14
|
exports.useGlobalStylesOutputWithConfig = useGlobalStylesOutputWithConfig;
|
|
14
|
-
var _element = require("@wordpress/element");
|
|
15
15
|
var _blocks = require("@wordpress/blocks");
|
|
16
16
|
var _data = require("@wordpress/data");
|
|
17
|
+
var _element = require("@wordpress/element");
|
|
17
18
|
var _styleEngine = require("@wordpress/style-engine");
|
|
18
19
|
var _utils = require("./utils");
|
|
19
20
|
var _getBlockCssSelector = require("./get-block-css-selector");
|
|
20
21
|
var _typographyUtils = require("./typography-utils");
|
|
21
22
|
var _context = require("./context");
|
|
22
23
|
var _hooks = require("./hooks");
|
|
23
|
-
var
|
|
24
|
+
var _utils2 = require("../duotone/utils");
|
|
24
25
|
var _gap = require("../../hooks/gap");
|
|
25
26
|
var _store = require("../../store");
|
|
26
27
|
var _definitions = require("../../layouts/definitions");
|
|
27
28
|
var _object = require("../../utils/object");
|
|
29
|
+
var _blockContext = _interopRequireDefault(require("../block-context"));
|
|
28
30
|
/**
|
|
29
31
|
* WordPress dependencies
|
|
30
32
|
*/
|
|
@@ -126,10 +128,7 @@ function getPresetsSvgFilters(blockPresets = {}) {
|
|
|
126
128
|
// Duotone are the only type of filters for now.
|
|
127
129
|
metadata => metadata.path.at(-1) === 'duotone').flatMap(metadata => {
|
|
128
130
|
const presetByOrigin = (0, _object.getValueFromObjectPath)(blockPresets, metadata.path, {});
|
|
129
|
-
return ['default', 'theme'].filter(origin => presetByOrigin[origin]).flatMap(origin => presetByOrigin[origin].map(preset => (0,
|
|
130
|
-
preset: preset,
|
|
131
|
-
key: preset.slug
|
|
132
|
-
})))).join('');
|
|
131
|
+
return ['default', 'theme'].filter(origin => presetByOrigin[origin]).flatMap(origin => presetByOrigin[origin].map(preset => (0, _utils2.getDuotoneFilter)(`wp-duotone-${preset.slug}`, preset.colors))).join('');
|
|
133
132
|
});
|
|
134
133
|
}
|
|
135
134
|
function flattenTree(input = {}, prefix, token) {
|
|
@@ -245,9 +244,10 @@ const getFeatureDeclarations = (selectors, styles) => {
|
|
|
245
244
|
*
|
|
246
245
|
* @param {Object} tree A theme.json tree containing layout definitions.
|
|
247
246
|
*
|
|
247
|
+
* @param {boolean} isTemplate Whether the entity being edited is a full template or a pattern.
|
|
248
248
|
* @return {Array} An array of style declarations.
|
|
249
249
|
*/
|
|
250
|
-
function getStylesDeclarations(blockStyles = {}, selector = '', useRootPaddingAlign, tree = {}) {
|
|
250
|
+
function getStylesDeclarations(blockStyles = {}, selector = '', useRootPaddingAlign, tree = {}, isTemplate = true) {
|
|
251
251
|
const isRoot = _utils.ROOT_BLOCK_SELECTOR === selector;
|
|
252
252
|
const output = Object.entries(_blocks.__EXPERIMENTAL_STYLE_PROPERTY).reduce((declarations, [key, {
|
|
253
253
|
value,
|
|
@@ -291,8 +291,8 @@ function getStylesDeclarations(blockStyles = {}, selector = '', useRootPaddingAl
|
|
|
291
291
|
// This is temporary as we absorb more and more styles into the engine.
|
|
292
292
|
const extraRules = (0, _styleEngine.getCSSRules)(blockStyles);
|
|
293
293
|
extraRules.forEach(rule => {
|
|
294
|
-
// Don't output padding properties if padding variables are set.
|
|
295
|
-
if (isRoot && useRootPaddingAlign && rule.key.startsWith('padding')) {
|
|
294
|
+
// Don't output padding properties if padding variables are set or if we're not editing a full template.
|
|
295
|
+
if (isRoot && (useRootPaddingAlign || !isTemplate) && rule.key.startsWith('padding')) {
|
|
296
296
|
return;
|
|
297
297
|
}
|
|
298
298
|
const cssProperty = rule.key.startsWith('--') ? rule.key : (0, _object.kebabCase)(rule.key);
|
|
@@ -561,7 +561,7 @@ const toCustomProperties = (tree, blockSelectors) => {
|
|
|
561
561
|
return ruleset;
|
|
562
562
|
};
|
|
563
563
|
exports.toCustomProperties = toCustomProperties;
|
|
564
|
-
const toStyles = (tree, blockSelectors, hasBlockGapSupport, hasFallbackGapSupport, disableLayoutStyles = false) => {
|
|
564
|
+
const toStyles = (tree, blockSelectors, hasBlockGapSupport, hasFallbackGapSupport, disableLayoutStyles = false, isTemplate = true) => {
|
|
565
565
|
const nodesWithStyles = getNodesWithStyles(tree, blockSelectors);
|
|
566
566
|
const nodesWithSettings = getNodesWithSettings(tree, blockSelectors);
|
|
567
567
|
const useRootPaddingAlign = tree?.settings?.useRootPaddingAwareAlignments;
|
|
@@ -585,16 +585,18 @@ const toStyles = (tree, blockSelectors, hasBlockGapSupport, hasFallbackGapSuppor
|
|
|
585
585
|
if (wideSize) {
|
|
586
586
|
ruleset += ` --wp--style--global--wide-size: ${wideSize};`;
|
|
587
587
|
}
|
|
588
|
-
|
|
588
|
+
|
|
589
|
+
// Root padding styles should only be output for full templates, not patterns or template parts.
|
|
590
|
+
if (useRootPaddingAlign && isTemplate) {
|
|
589
591
|
/*
|
|
590
592
|
* These rules reproduce the ones from https://github.com/WordPress/gutenberg/blob/79103f124925d1f457f627e154f52a56228ed5ad/lib/class-wp-theme-json-gutenberg.php#L2508
|
|
591
593
|
* almost exactly, but for the selectors that target block wrappers in the front end. This code only runs in the editor, so it doesn't need those selectors.
|
|
592
594
|
*/
|
|
593
595
|
ruleset += `padding-right: 0; padding-left: 0; padding-top: var(--wp--style--root--padding-top); padding-bottom: var(--wp--style--root--padding-bottom) }
|
|
594
596
|
.has-global-padding { padding-right: var(--wp--style--root--padding-right); padding-left: var(--wp--style--root--padding-left); }
|
|
595
|
-
.has-global-padding :where(.has-global-padding) { padding-right: 0; padding-left: 0; }
|
|
597
|
+
.has-global-padding :where(.has-global-padding:not(.wp-block-block)) { padding-right: 0; padding-left: 0; }
|
|
596
598
|
.has-global-padding > .alignfull { margin-right: calc(var(--wp--style--root--padding-right) * -1); margin-left: calc(var(--wp--style--root--padding-left) * -1); }
|
|
597
|
-
.has-global-padding :where(.has-global-padding) > .alignfull { margin-right: 0; margin-left: 0; }
|
|
599
|
+
.has-global-padding :where(.has-global-padding:not(.wp-block-block)) > .alignfull { margin-right: 0; margin-left: 0; }
|
|
598
600
|
.has-global-padding > .alignfull:where(:not(.has-global-padding):not(.is-layout-flex):not(.is-layout-grid)) > :where(.wp-block:not(.alignfull),p,h1,h2,h3,h4,h5,h6,ul,ol) { padding-right: var(--wp--style--root--padding-right); padding-left: var(--wp--style--root--padding-left); }
|
|
599
601
|
.has-global-padding :where(.has-global-padding) > .alignfull:where(:not(.has-global-padding)) > :where(.wp-block:not(.alignfull),p,h1,h2,h3,h4,h5,h6,ul,ol) { padding-right: 0; padding-left: 0;`;
|
|
600
602
|
}
|
|
@@ -669,7 +671,7 @@ const toStyles = (tree, blockSelectors, hasBlockGapSupport, hasFallbackGapSuppor
|
|
|
669
671
|
}
|
|
670
672
|
|
|
671
673
|
// Process the remaining block styles (they use either normal block class or __experimentalSelector).
|
|
672
|
-
const declarations = getStylesDeclarations(styles, selector, useRootPaddingAlign, tree);
|
|
674
|
+
const declarations = getStylesDeclarations(styles, selector, useRootPaddingAlign, tree, isTemplate);
|
|
673
675
|
if (declarations?.length) {
|
|
674
676
|
ruleset += `${selector}{${declarations.join(';')};}`;
|
|
675
677
|
}
|
|
@@ -848,6 +850,8 @@ function useGlobalStylesOutputWithConfig(mergedConfig = {}) {
|
|
|
848
850
|
} = select(_store.store);
|
|
849
851
|
return !!getSettings().disableLayoutStyles;
|
|
850
852
|
});
|
|
853
|
+
const blockContext = (0, _element.useContext)(_blockContext.default);
|
|
854
|
+
const isTemplate = blockContext?.templateSlug !== undefined;
|
|
851
855
|
const getBlockStyles = (0, _data.useSelect)(select => {
|
|
852
856
|
return select(_blocks.store).getBlockStyles;
|
|
853
857
|
}, []);
|
|
@@ -859,7 +863,7 @@ function useGlobalStylesOutputWithConfig(mergedConfig = {}) {
|
|
|
859
863
|
mergedConfig = updateConfigWithSeparator(mergedConfig);
|
|
860
864
|
const blockSelectors = getBlockSelectors((0, _blocks.getBlockTypes)(), getBlockStyles);
|
|
861
865
|
const customProperties = toCustomProperties(mergedConfig, blockSelectors);
|
|
862
|
-
const globalStyles = toStyles(mergedConfig, blockSelectors, hasBlockGapSupport, hasFallbackGapSupport, disableLayoutStyles);
|
|
866
|
+
const globalStyles = toStyles(mergedConfig, blockSelectors, hasBlockGapSupport, hasFallbackGapSupport, disableLayoutStyles, isTemplate);
|
|
863
867
|
const svgs = toSvgFilters(mergedConfig, blockSelectors);
|
|
864
868
|
const styles = [{
|
|
865
869
|
css: customProperties,
|