@wordpress/block-editor 17.1.0 → 17.2.1-next.v.202609171837.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 +32 -0
- package/README.md +214 -214
- package/build/autocompleters/block.cjs.map +2 -2
- package/build/components/alignment-control/ui.cjs.map +2 -2
- package/build/components/background-image-control/index.cjs +1 -1
- package/build/components/background-image-control/index.cjs.map +2 -2
- package/build/components/block-alignment-control/ui.cjs +21 -7
- package/build/components/block-alignment-control/ui.cjs.map +3 -3
- package/build/components/block-alignment-control/use-available-alignments.cjs +60 -13
- package/build/components/block-alignment-control/use-available-alignments.cjs.map +2 -2
- package/build/components/block-allowed-blocks/allowed-blocks-control.cjs.map +2 -2
- package/build/components/block-bindings/attribute-control.cjs +30 -30
- package/build/components/block-bindings/attribute-control.cjs.map +3 -3
- package/build/components/block-bindings/source-fields-list.cjs +27 -32
- package/build/components/block-bindings/source-fields-list.cjs.map +3 -3
- package/build/components/block-canvas/index.cjs.map +2 -2
- package/build/components/block-card/index.cjs +1 -2
- package/build/components/block-card/index.cjs.map +3 -3
- package/build/components/block-edit/edit.cjs.map +2 -2
- package/build/components/block-heading-level-dropdown/index.cjs.map +2 -2
- package/build/components/block-icon/index.cjs.map +2 -2
- package/build/components/block-inspector/edit-contents.cjs.map +2 -2
- package/build/components/block-inspector/index.cjs +27 -8
- package/build/components/block-inspector/index.cjs.map +3 -3
- package/build/components/block-keyboard-shortcuts/index.cjs.map +2 -2
- package/build/components/block-list/block-html.cjs +1 -12
- package/build/components/block-list/block-html.cjs.map +3 -3
- package/build/components/block-list/block.cjs +2 -4
- package/build/components/block-list/block.cjs.map +2 -2
- package/build/components/block-list/layout.cjs +1 -1
- package/build/components/block-list/layout.cjs.map +2 -2
- package/build/components/block-list/use-block-props/index.cjs.map +2 -2
- package/build/components/block-lock/modal.cjs +1 -3
- package/build/components/block-lock/modal.cjs.map +2 -2
- package/build/components/block-parent-selector/index.cjs +8 -5
- package/build/components/block-parent-selector/index.cjs.map +2 -2
- package/build/components/block-popover/index.cjs.map +2 -2
- package/build/components/block-rename/modal.cjs.map +2 -2
- package/build/components/block-settings-menu/block-settings-dropdown.cjs.map +2 -2
- package/build/components/block-styles/utils.cjs.map +2 -2
- package/build/components/block-switcher/index.cjs.map +2 -2
- package/build/components/block-toolbar/edit-section-button.cjs.map +2 -2
- package/build/components/block-toolbar/index.cjs +6 -4
- package/build/components/block-toolbar/index.cjs.map +2 -2
- package/build/components/block-toolbar/switch-section-style.cjs.map +2 -2
- package/build/components/block-variation-transforms/index.cjs +28 -18
- package/build/components/block-variation-transforms/index.cjs.map +3 -3
- package/build/components/block-visibility/modal.cjs.map +2 -2
- package/build/components/block-visibility/viewport-visibility-info.cjs.map +2 -2
- package/build/components/border-radius-control/index.cjs.map +2 -2
- package/build/components/color-palette/with-color-context.cjs.map +2 -2
- package/build/components/colors/with-colors.cjs.map +2 -2
- package/build/components/colors-gradients/control.cjs.map +2 -2
- package/build/components/contrast-checker/index.cjs.map +2 -2
- package/build/components/date-format-picker/index.cjs.map +2 -2
- package/build/components/dimensions-tool/aspect-ratio-tool.cjs.map +3 -3
- package/build/components/dimensions-tool/width-height-tool.cjs.map +2 -2
- package/build/components/font-sizes/with-font-sizes.cjs.map +2 -2
- package/build/components/global-styles/background-panel.cjs +1 -1
- package/build/components/global-styles/background-panel.cjs.map +2 -2
- package/build/components/global-styles/border-panel.cjs +1 -1
- package/build/components/global-styles/border-panel.cjs.map +2 -2
- package/build/components/global-styles/color-gradient-dropdown-item.cjs +1 -1
- package/build/components/global-styles/color-gradient-dropdown-item.cjs.map +2 -2
- package/build/components/global-styles/color-panel.cjs +1 -1
- package/build/components/global-styles/color-panel.cjs.map +2 -2
- package/build/components/global-styles/dimensions-panel.cjs +1 -1
- package/build/components/global-styles/dimensions-panel.cjs.map +2 -2
- package/build/components/global-styles/filters-panel.cjs +1 -1
- package/build/components/global-styles/filters-panel.cjs.map +2 -2
- package/build/components/global-styles/hooks.cjs +1 -0
- package/build/components/global-styles/hooks.cjs.map +2 -2
- package/build/components/global-styles/inheritance/index.cjs +3 -3
- package/build/components/global-styles/inheritance/index.cjs.map +2 -2
- package/build/components/global-styles/inherited-value-context.cjs +0 -5
- package/build/components/global-styles/inherited-value-context.cjs.map +2 -2
- package/build/components/global-styles/state-control-badges.cjs +0 -1
- package/build/components/global-styles/state-control-badges.cjs.map +2 -2
- package/build/components/global-styles/state-control.cjs +6 -4
- package/build/components/global-styles/state-control.cjs.map +2 -2
- package/build/components/global-styles/text-shadow-panel.cjs +254 -0
- package/build/components/global-styles/text-shadow-panel.cjs.map +7 -0
- package/build/components/global-styles/typography-panel.cjs +46 -5
- package/build/components/global-styles/typography-panel.cjs.map +2 -2
- package/build/components/global-styles/typography-utils.cjs.map +2 -2
- package/build/components/global-styles/utils.cjs.map +2 -2
- package/build/components/html-element-control/index.cjs.map +3 -3
- package/build/components/iframe/index.cjs.map +2 -2
- package/build/components/iframe/use-scale-canvas.cjs.map +2 -2
- package/build/components/image-size-control/index.cjs.map +3 -3
- package/build/components/inner-blocks/index.cjs +6 -1
- package/build/components/inner-blocks/index.cjs.map +2 -2
- package/build/components/inner-content/index.cjs.map +2 -2
- package/build/components/inserter/block-patterns-tab/use-pattern-categories.cjs +4 -23
- package/build/components/inserter/block-patterns-tab/use-pattern-categories.cjs.map +2 -2
- package/build/components/inserter/block-patterns-tab/utils.cjs +26 -0
- package/build/components/inserter/block-patterns-tab/utils.cjs.map +2 -2
- package/build/components/inserter/hooks/use-block-types-state.cjs.map +2 -2
- package/build/components/inserter/hooks/use-insertion-point.cjs.map +2 -2
- package/build/components/inserter/hooks/use-patterns-state.cjs.map +2 -2
- package/build/components/inserter/media-tab/media-panel.cjs.map +2 -2
- package/build/components/inserter/media-tab/media-preview.cjs.map +2 -2
- package/build/components/inserter-list-item/index.cjs.map +2 -2
- package/build/components/inspector-controls/list-view-content-popover.cjs.map +2 -2
- package/build/components/link-control/search-results.cjs.map +2 -2
- package/build/components/link-control/use-search-handler.cjs +3 -0
- package/build/components/link-control/use-search-handler.cjs.map +2 -2
- package/build/components/list-view/branch.cjs.map +2 -2
- package/build/components/list-view/drop-indicator.cjs.map +2 -2
- package/build/components/list-view/index.cjs.map +2 -2
- package/build/components/list-view/use-list-view-drop-zone.cjs.map +2 -2
- package/build/components/list-view/utils.cjs.map +2 -2
- package/build/components/media-replace-flow/index.cjs +4 -1
- package/build/components/media-replace-flow/index.cjs.map +2 -2
- package/build/components/plain-text/index.cjs +1 -2
- package/build/components/plain-text/index.cjs.map +3 -3
- package/build/components/preset-input-control/index.cjs.map +2 -2
- package/build/components/provider/index.cjs +3 -1
- package/build/components/provider/index.cjs.map +2 -2
- package/build/components/provider/use-block-sync.cjs.map +2 -2
- package/build/components/publish-date-time-picker/index.cjs.map +2 -2
- package/build/components/resizable-box-popover/index.cjs +1 -1
- package/build/components/resizable-box-popover/index.cjs.map +1 -1
- package/build/components/resolution-tool/index.cjs.map +3 -3
- package/build/components/rich-text/event-listeners/enter.cjs +8 -22
- package/build/components/rich-text/event-listeners/enter.cjs.map +2 -2
- package/build/components/rich-text/format-edit.cjs.map +2 -2
- package/build/components/rich-text/index.cjs +20 -0
- package/build/components/rich-text/index.cjs.map +2 -2
- package/build/components/rich-text/multiline.cjs +10 -2
- package/build/components/rich-text/multiline.cjs.map +2 -2
- package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.cjs.map +2 -2
- package/build/components/typewriter/index.cjs.map +2 -2
- package/build/components/use-block-commands/index.cjs.map +2 -2
- package/build/components/writing-flow/index.cjs +3 -0
- package/build/components/writing-flow/index.cjs.map +2 -2
- package/build/components/writing-flow/use-clipboard-handler.cjs.map +2 -2
- package/build/components/writing-flow/use-selection-observer.cjs +5 -3
- package/build/components/writing-flow/use-selection-observer.cjs.map +2 -2
- package/build/hooks/align.cjs +3 -5
- package/build/hooks/align.cjs.map +2 -2
- package/build/hooks/background.cjs.map +2 -2
- package/build/hooks/block-bindings.cjs.map +2 -2
- package/build/hooks/border.cjs.map +2 -2
- package/build/hooks/contrast-checker.cjs.map +2 -2
- package/build/hooks/dimensions.cjs.map +2 -2
- package/build/hooks/duotone.cjs.map +2 -2
- package/build/hooks/elements.cjs.map +2 -2
- package/build/hooks/fit-text.cjs.map +2 -2
- package/build/hooks/gap.cjs +2 -1
- package/build/hooks/gap.cjs.map +3 -3
- package/build/hooks/index.cjs +4 -2
- package/build/hooks/index.cjs.map +3 -3
- package/build/hooks/layout-child.cjs.map +2 -2
- package/build/hooks/layout.cjs +15 -14
- package/build/hooks/layout.cjs.map +3 -3
- package/build/hooks/position.cjs +3 -31
- package/build/hooks/position.cjs.map +2 -2
- package/build/hooks/states.cjs +3 -2
- package/build/hooks/states.cjs.map +2 -2
- package/build/hooks/text-shadow.cjs +100 -0
- package/build/hooks/text-shadow.cjs.map +7 -0
- package/build/hooks/typography.cjs +30 -6
- package/build/hooks/typography.cjs.map +2 -2
- package/build/hooks/utils.cjs +24 -2
- package/build/hooks/utils.cjs.map +2 -2
- package/build/layouts/grid.cjs.map +2 -2
- package/build/layouts/utils.cjs +7 -2
- package/build/layouts/utils.cjs.map +2 -2
- package/build/private-apis.cjs +9 -6
- package/build/private-apis.cjs.map +2 -2
- package/build/store/actions.cjs +26 -4
- package/build/store/actions.cjs.map +3 -3
- package/build/store/private-selectors.cjs.map +2 -2
- package/build/store/reducer.cjs.map +2 -2
- package/build/store/selectors.cjs.map +2 -2
- package/build/utils/get-font-styles-and-weights.cjs.map +2 -2
- package/build/utils/transform-styles/index.cjs.map +1 -1
- package/build-module/autocompleters/block.mjs.map +2 -2
- package/build-module/components/alignment-control/ui.mjs.map +2 -2
- package/build-module/components/background-image-control/index.mjs +2 -2
- package/build-module/components/background-image-control/index.mjs.map +2 -2
- package/build-module/components/block-alignment-control/ui.mjs +21 -7
- package/build-module/components/block-alignment-control/ui.mjs.map +2 -2
- package/build-module/components/block-alignment-control/use-available-alignments.mjs +56 -13
- package/build-module/components/block-alignment-control/use-available-alignments.mjs.map +2 -2
- package/build-module/components/block-allowed-blocks/allowed-blocks-control.mjs.map +2 -2
- package/build-module/components/block-bindings/attribute-control.mjs +31 -32
- package/build-module/components/block-bindings/attribute-control.mjs.map +2 -2
- package/build-module/components/block-bindings/source-fields-list.mjs +25 -30
- package/build-module/components/block-bindings/source-fields-list.mjs.map +2 -2
- package/build-module/components/block-canvas/index.mjs.map +2 -2
- package/build-module/components/block-card/index.mjs +3 -8
- package/build-module/components/block-card/index.mjs.map +2 -2
- package/build-module/components/block-edit/edit.mjs.map +2 -2
- package/build-module/components/block-heading-level-dropdown/index.mjs.map +2 -2
- package/build-module/components/block-icon/index.mjs.map +2 -2
- package/build-module/components/block-inspector/edit-contents.mjs.map +2 -2
- package/build-module/components/block-inspector/index.mjs +29 -10
- package/build-module/components/block-inspector/index.mjs.map +2 -2
- package/build-module/components/block-keyboard-shortcuts/index.mjs.map +2 -2
- package/build-module/components/block-list/block-html.mjs +1 -2
- package/build-module/components/block-list/block-html.mjs.map +2 -2
- package/build-module/components/block-list/block.mjs +2 -4
- package/build-module/components/block-list/block.mjs.map +2 -2
- package/build-module/components/block-list/layout.mjs +1 -1
- package/build-module/components/block-list/layout.mjs.map +2 -2
- package/build-module/components/block-list/use-block-props/index.mjs.map +2 -2
- package/build-module/components/block-lock/modal.mjs +1 -3
- package/build-module/components/block-lock/modal.mjs.map +2 -2
- package/build-module/components/block-parent-selector/index.mjs +8 -5
- package/build-module/components/block-parent-selector/index.mjs.map +2 -2
- package/build-module/components/block-popover/index.mjs.map +2 -2
- package/build-module/components/block-rename/modal.mjs.map +2 -2
- package/build-module/components/block-settings-menu/block-settings-dropdown.mjs.map +2 -2
- package/build-module/components/block-styles/utils.mjs.map +2 -2
- package/build-module/components/block-switcher/index.mjs.map +2 -2
- package/build-module/components/block-toolbar/edit-section-button.mjs.map +2 -2
- package/build-module/components/block-toolbar/index.mjs +6 -4
- package/build-module/components/block-toolbar/index.mjs.map +2 -2
- package/build-module/components/block-toolbar/switch-section-style.mjs.map +2 -2
- package/build-module/components/block-variation-transforms/index.mjs +30 -21
- package/build-module/components/block-variation-transforms/index.mjs.map +2 -2
- package/build-module/components/block-visibility/modal.mjs.map +2 -2
- package/build-module/components/block-visibility/viewport-visibility-info.mjs.map +2 -2
- package/build-module/components/border-radius-control/index.mjs.map +2 -2
- package/build-module/components/color-palette/with-color-context.mjs.map +2 -2
- package/build-module/components/colors/with-colors.mjs.map +2 -2
- package/build-module/components/colors-gradients/control.mjs.map +2 -2
- package/build-module/components/contrast-checker/index.mjs.map +2 -2
- package/build-module/components/date-format-picker/index.mjs.map +2 -2
- package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs +2 -2
- package/build-module/components/dimensions-tool/aspect-ratio-tool.mjs.map +2 -2
- package/build-module/components/dimensions-tool/width-height-tool.mjs.map +2 -2
- package/build-module/components/font-sizes/with-font-sizes.mjs.map +2 -2
- package/build-module/components/global-styles/background-panel.mjs +2 -2
- package/build-module/components/global-styles/background-panel.mjs.map +2 -2
- package/build-module/components/global-styles/border-panel.mjs +2 -2
- package/build-module/components/global-styles/border-panel.mjs.map +2 -2
- package/build-module/components/global-styles/color-gradient-dropdown-item.mjs +2 -2
- package/build-module/components/global-styles/color-gradient-dropdown-item.mjs.map +2 -2
- package/build-module/components/global-styles/color-panel.mjs +2 -2
- package/build-module/components/global-styles/color-panel.mjs.map +2 -2
- package/build-module/components/global-styles/dimensions-panel.mjs +2 -2
- package/build-module/components/global-styles/dimensions-panel.mjs.map +2 -2
- package/build-module/components/global-styles/filters-panel.mjs +2 -2
- package/build-module/components/global-styles/filters-panel.mjs.map +2 -2
- package/build-module/components/global-styles/hooks.mjs +1 -0
- package/build-module/components/global-styles/hooks.mjs.map +2 -2
- package/build-module/components/global-styles/inheritance/index.mjs +2 -2
- package/build-module/components/global-styles/inheritance/index.mjs.map +2 -2
- package/build-module/components/global-styles/inherited-value-context.mjs +0 -5
- package/build-module/components/global-styles/inherited-value-context.mjs.map +2 -2
- package/build-module/components/global-styles/state-control-badges.mjs +0 -1
- package/build-module/components/global-styles/state-control-badges.mjs.map +2 -2
- package/build-module/components/global-styles/state-control.mjs +6 -4
- package/build-module/components/global-styles/state-control.mjs.map +2 -2
- package/build-module/components/global-styles/text-shadow-panel.mjs +224 -0
- package/build-module/components/global-styles/text-shadow-panel.mjs.map +7 -0
- package/build-module/components/global-styles/typography-panel.mjs +47 -6
- package/build-module/components/global-styles/typography-panel.mjs.map +2 -2
- package/build-module/components/global-styles/typography-utils.mjs.map +2 -2
- package/build-module/components/global-styles/utils.mjs.map +2 -2
- package/build-module/components/html-element-control/index.mjs +2 -2
- package/build-module/components/html-element-control/index.mjs.map +2 -2
- package/build-module/components/iframe/index.mjs.map +2 -2
- package/build-module/components/iframe/use-scale-canvas.mjs.map +2 -2
- package/build-module/components/image-size-control/index.mjs +2 -2
- package/build-module/components/image-size-control/index.mjs.map +2 -2
- package/build-module/components/inner-blocks/index.mjs +6 -1
- package/build-module/components/inner-blocks/index.mjs.map +2 -2
- package/build-module/components/inner-content/index.mjs.map +2 -2
- package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.mjs +6 -24
- package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.mjs.map +2 -2
- package/build-module/components/inserter/block-patterns-tab/utils.mjs +25 -0
- package/build-module/components/inserter/block-patterns-tab/utils.mjs.map +2 -2
- package/build-module/components/inserter/hooks/use-block-types-state.mjs.map +2 -2
- package/build-module/components/inserter/hooks/use-insertion-point.mjs.map +2 -2
- package/build-module/components/inserter/hooks/use-patterns-state.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-panel.mjs.map +2 -2
- package/build-module/components/inserter/media-tab/media-preview.mjs.map +2 -2
- package/build-module/components/inserter-list-item/index.mjs.map +2 -2
- package/build-module/components/inspector-controls/list-view-content-popover.mjs.map +2 -2
- package/build-module/components/link-control/search-results.mjs.map +2 -2
- package/build-module/components/link-control/use-search-handler.mjs +3 -0
- package/build-module/components/link-control/use-search-handler.mjs.map +2 -2
- package/build-module/components/list-view/branch.mjs.map +2 -2
- package/build-module/components/list-view/drop-indicator.mjs.map +2 -2
- package/build-module/components/list-view/index.mjs.map +2 -2
- package/build-module/components/list-view/use-list-view-drop-zone.mjs.map +2 -2
- package/build-module/components/list-view/utils.mjs.map +2 -2
- package/build-module/components/media-replace-flow/index.mjs +4 -1
- package/build-module/components/media-replace-flow/index.mjs.map +2 -2
- package/build-module/components/plain-text/index.mjs +1 -2
- package/build-module/components/plain-text/index.mjs.map +2 -2
- package/build-module/components/preset-input-control/index.mjs.map +2 -2
- package/build-module/components/provider/index.mjs +3 -1
- package/build-module/components/provider/index.mjs.map +2 -2
- package/build-module/components/provider/use-block-sync.mjs.map +2 -2
- package/build-module/components/publish-date-time-picker/index.mjs.map +2 -2
- package/build-module/components/resizable-box-popover/index.mjs +1 -1
- package/build-module/components/resizable-box-popover/index.mjs.map +1 -1
- package/build-module/components/resolution-tool/index.mjs +2 -2
- package/build-module/components/resolution-tool/index.mjs.map +2 -2
- package/build-module/components/rich-text/event-listeners/enter.mjs +8 -22
- package/build-module/components/rich-text/event-listeners/enter.mjs.map +2 -2
- package/build-module/components/rich-text/format-edit.mjs.map +2 -2
- package/build-module/components/rich-text/index.mjs +21 -0
- package/build-module/components/rich-text/index.mjs.map +2 -2
- package/build-module/components/rich-text/multiline.mjs +11 -3
- package/build-module/components/rich-text/multiline.mjs.map +2 -2
- package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.mjs.map +2 -2
- package/build-module/components/typewriter/index.mjs.map +2 -2
- package/build-module/components/use-block-commands/index.mjs.map +2 -2
- package/build-module/components/writing-flow/index.mjs +3 -0
- package/build-module/components/writing-flow/index.mjs.map +2 -2
- package/build-module/components/writing-flow/use-clipboard-handler.mjs.map +2 -2
- package/build-module/components/writing-flow/use-selection-observer.mjs +5 -3
- package/build-module/components/writing-flow/use-selection-observer.mjs.map +2 -2
- package/build-module/hooks/align.mjs +6 -6
- package/build-module/hooks/align.mjs.map +2 -2
- package/build-module/hooks/background.mjs.map +2 -2
- package/build-module/hooks/block-bindings.mjs.map +2 -2
- package/build-module/hooks/border.mjs.map +2 -2
- package/build-module/hooks/contrast-checker.mjs.map +2 -2
- package/build-module/hooks/dimensions.mjs.map +2 -2
- package/build-module/hooks/duotone.mjs.map +2 -2
- package/build-module/hooks/elements.mjs.map +2 -2
- package/build-module/hooks/fit-text.mjs.map +2 -2
- package/build-module/hooks/gap.mjs +2 -1
- package/build-module/hooks/gap.mjs.map +2 -2
- package/build-module/hooks/index.mjs +4 -2
- package/build-module/hooks/index.mjs.map +2 -2
- package/build-module/hooks/layout-child.mjs.map +2 -2
- package/build-module/hooks/layout.mjs +6 -5
- package/build-module/hooks/layout.mjs.map +2 -2
- package/build-module/hooks/position.mjs +5 -33
- package/build-module/hooks/position.mjs.map +2 -2
- package/build-module/hooks/states.mjs +3 -2
- package/build-module/hooks/states.mjs.map +2 -2
- package/build-module/hooks/text-shadow.mjs +65 -0
- package/build-module/hooks/text-shadow.mjs.map +7 -0
- package/build-module/hooks/typography.mjs +30 -6
- package/build-module/hooks/typography.mjs.map +2 -2
- package/build-module/hooks/utils.mjs +24 -2
- package/build-module/hooks/utils.mjs.map +2 -2
- package/build-module/layouts/grid.mjs.map +2 -2
- package/build-module/layouts/utils.mjs +5 -1
- package/build-module/layouts/utils.mjs.map +2 -2
- package/build-module/private-apis.mjs +6 -2
- package/build-module/private-apis.mjs.map +2 -2
- package/build-module/store/actions.mjs +28 -5
- package/build-module/store/actions.mjs.map +3 -3
- package/build-module/store/private-selectors.mjs.map +2 -2
- package/build-module/store/reducer.mjs.map +2 -2
- package/build-module/store/selectors.mjs.map +2 -2
- package/build-module/utils/get-font-styles-and-weights.mjs.map +2 -2
- package/build-module/utils/transform-styles/index.mjs.map +1 -1
- package/build-style/content-rtl.css +7 -2
- package/build-style/content.css +7 -2
- package/build-style/style-rtl.css +90 -25
- package/build-style/style.css +92 -25
- package/package.json +42 -43
- package/src/autocompleters/block.jsx +4 -4
- package/src/components/alignment-control/ui.jsx +1 -1
- package/src/components/background-image-control/index.jsx +3 -3
- package/src/components/block-alignment-control/test/index.jsdom.test.jsx +267 -0
- package/src/components/block-alignment-control/ui.jsx +47 -9
- package/src/components/block-alignment-control/use-available-alignments.js +106 -20
- package/src/components/block-allowed-blocks/allowed-blocks-control.jsx +1 -1
- package/src/components/block-bindings/attribute-control.jsx +27 -29
- package/src/components/block-bindings/source-fields-list.jsx +22 -32
- package/src/components/block-bindings/test/attribute-control.jsdom.test.jsx +115 -0
- package/src/components/block-canvas/index.jsx +1 -1
- package/src/components/block-card/index.jsx +5 -11
- package/src/components/block-card/style.scss +1 -0
- package/src/components/block-edit/edit.jsx +1 -1
- package/src/components/block-heading-level-dropdown/index.jsx +1 -1
- package/src/components/block-icon/index.jsx +1 -1
- package/src/components/block-icon/test/index.browser.test.jsx +74 -0
- package/src/components/block-inspector/edit-contents.jsx +2 -2
- package/src/components/block-inspector/index.jsx +46 -15
- package/src/components/block-inspector/style.scss +16 -0
- package/src/components/block-keyboard-shortcuts/index.jsx +2 -2
- package/src/components/block-list/block-html.jsx +2 -3
- package/src/components/block-list/block.jsx +7 -5
- package/src/components/block-list/content.scss +3 -2
- package/src/components/block-list/layout.jsx +4 -1
- package/src/components/block-list/test/layout.jsdom.test.js +40 -0
- package/src/components/block-list/use-block-props/index.js +1 -1
- package/src/components/block-lock/modal.jsx +2 -3
- package/src/components/block-lock/style.scss +1 -1
- package/src/components/block-mover/style.scss +0 -13
- package/src/components/block-parent-selector/index.jsx +12 -6
- package/src/components/block-patterns-list/style.scss +1 -1
- package/src/components/block-popover/index.jsx +1 -1
- package/src/components/block-rename/modal.jsx +3 -3
- package/src/components/block-settings-menu/block-settings-dropdown.jsx +1 -1
- package/src/components/block-styles/utils.js +1 -1
- package/src/components/block-switcher/index.jsx +3 -3
- package/src/components/block-toolbar/edit-section-button.jsx +2 -2
- package/src/components/block-toolbar/index.jsx +8 -4
- package/src/components/block-toolbar/switch-section-style.jsx +1 -1
- package/src/components/block-variation-transforms/index.jsx +24 -23
- package/src/components/block-variation-transforms/test/index.jsdom.test.jsx +93 -0
- package/src/components/block-visibility/modal.jsx +7 -7
- package/src/components/block-visibility/style.scss +1 -1
- package/src/components/block-visibility/viewport-visibility-info.jsx +5 -7
- package/src/components/border-radius-control/index.jsx +2 -2
- package/src/components/border-radius-control/test/index.jsdom.test.jsx +0 -22
- package/src/components/border-radius-control/test/select.browser.test.js +30 -0
- package/src/components/color-palette/with-color-context.jsx +1 -1
- package/src/components/colors/with-colors.jsx +1 -1
- package/src/components/colors-gradients/control.jsx +2 -2
- package/src/components/colors-gradients/test/{control.jsdom.test.jsx → control.browser.test.jsx} +6 -9
- package/src/components/contrast-checker/index.jsx +2 -2
- package/src/components/date-format-picker/index.jsx +2 -2
- package/src/components/dimensions-tool/aspect-ratio-tool.jsx +4 -4
- package/src/components/dimensions-tool/test/index.jsdom.test.jsx +17 -11
- package/src/components/dimensions-tool/width-height-tool.jsx +2 -2
- package/src/components/font-sizes/with-font-sizes.jsx +2 -3
- package/src/components/global-styles/background-panel.jsx +2 -2
- package/src/components/global-styles/border-panel.jsx +2 -2
- package/src/components/global-styles/color-gradient-dropdown-item.jsx +3 -3
- package/src/components/global-styles/color-panel.jsx +3 -3
- package/src/components/global-styles/dimensions-panel.jsx +6 -6
- package/src/components/global-styles/filters-panel.jsx +2 -2
- package/src/components/global-styles/hooks.js +1 -0
- package/src/components/global-styles/inheritance/index.jsx +9 -6
- package/src/components/global-styles/inheritance/test/{index.jsdom.test.jsx → index.browser.test.jsx} +34 -28
- package/src/components/global-styles/inherited-value-context.js +1 -9
- package/src/components/global-styles/state-control-badges.jsx +0 -1
- package/src/components/global-styles/state-control.jsx +12 -3
- package/src/components/global-styles/style.scss +68 -0
- package/src/components/global-styles/test/{color-panel.jsdom.test.jsx → color-panel.browser.test.jsx} +53 -54
- package/src/components/global-styles/test/inherited-value-context-core.jsdom.test.js +17 -26
- package/src/components/global-styles/test/{typography-panel-core.jsdom.test.jsx → typography-panel-core.browser.test.jsx} +84 -39
- package/src/components/global-styles/test/{typography-panel.jsdom.test.jsx → typography-panel.browser.test.jsx} +80 -122
- package/src/components/global-styles/text-shadow-panel.tsx +257 -0
- package/src/components/global-styles/typography-panel.jsx +52 -13
- package/src/components/global-styles/typography-utils.js +2 -2
- package/src/components/global-styles/utils.js +1 -1
- package/src/components/html-element-control/index.jsx +2 -2
- package/src/components/iframe/index.jsx +1 -1
- package/src/components/iframe/use-scale-canvas.js +1 -1
- package/src/components/image-size-control/index.jsx +2 -2
- package/src/components/inner-blocks/index.jsx +9 -1
- package/src/components/inner-content/index.jsx +1 -1
- package/src/components/inserter/block-patterns-tab/use-pattern-categories.js +7 -33
- package/src/components/inserter/block-patterns-tab/utils.js +44 -0
- package/src/components/inserter/hooks/use-block-types-state.js +2 -2
- package/src/components/inserter/hooks/use-insertion-point.js +1 -1
- package/src/components/inserter/hooks/use-patterns-state.js +1 -1
- package/src/components/inserter/media-tab/media-panel.jsx +9 -9
- package/src/components/inserter/media-tab/media-preview.jsx +1 -1
- package/src/components/inserter-list-item/index.jsx +1 -1
- package/src/components/inserter-list-item/style.scss +2 -2
- package/src/components/inspector-controls/list-view-content-popover.jsx +1 -1
- package/src/components/link-control/search-results.jsx +1 -1
- package/src/components/link-control/style.scss +1 -1
- package/src/components/link-control/test/index.jsdom.test.jsx +38 -110
- package/src/components/link-control/test/keyboard-selection.browser.test.js +110 -0
- package/src/components/link-control/use-search-handler.js +8 -3
- package/src/components/list-view/branch.jsx +1 -1
- package/src/components/list-view/drop-indicator.jsx +3 -3
- package/src/components/list-view/index.jsx +1 -1
- package/src/components/list-view/style.scss +1 -9
- package/src/components/list-view/use-list-view-drop-zone.js +1 -1
- package/src/components/list-view/utils.js +1 -1
- package/src/components/media-replace-flow/index.jsx +4 -1
- package/src/components/navigable-toolbar/test/index.browser.test.js +6 -7
- package/src/components/plain-text/README.md +3 -2
- package/src/components/plain-text/content.scss +0 -1
- package/src/components/plain-text/index.jsx +2 -3
- package/src/components/plain-text/style.scss +4 -0
- package/src/components/preset-input-control/index.jsx +2 -2
- package/src/components/preset-input-control/test/index.jsdom.test.jsx +0 -56
- package/src/components/preset-input-control/test/interaction.browser.test.js +63 -0
- package/src/components/provider/index.jsx +5 -3
- package/src/components/provider/use-block-sync.js +5 -5
- package/src/components/publish-date-time-picker/index.jsx +1 -1
- package/src/components/resizable-box-popover/index.jsx +1 -1
- package/src/components/resolution-tool/index.jsx +2 -2
- package/src/components/responsive-block-control/style.scss +1 -2
- package/src/components/responsive-block-control/test/index.jsdom.test.jsx +2 -2
- package/src/components/rich-text/event-listeners/enter.js +16 -23
- package/src/components/rich-text/format-edit.jsx +1 -1
- package/src/components/rich-text/index.jsx +39 -2
- package/src/components/rich-text/multiline.jsx +11 -3
- package/src/components/spacing-sizes-control/hooks/use-spacing-sizes.js +1 -1
- package/src/components/spacing-sizes-control/test/index.jsdom.test.jsx +0 -21
- package/src/components/spacing-sizes-control/test/select.browser.test.js +58 -0
- package/src/components/typewriter/index.jsx +1 -1
- package/src/components/url-input/test/fixtures/validated-input-control-deprecation.js +1 -1
- package/src/components/use-block-commands/index.js +1 -1
- package/src/components/use-block-drop-zone/test/index.js +2 -2
- package/src/components/writing-flow/index.jsx +8 -0
- package/src/components/writing-flow/use-clipboard-handler.js +1 -1
- package/src/components/writing-flow/use-selection-observer.js +15 -6
- package/src/content.scss +1 -0
- package/src/hooks/align.jsx +22 -6
- package/src/hooks/background.jsx +1 -1
- package/src/hooks/block-bindings.jsx +1 -1
- package/src/hooks/block-hooks.scss +0 -6
- package/src/hooks/border.jsx +2 -2
- package/src/hooks/contrast-checker.js +1 -1
- package/src/hooks/dimensions.jsx +2 -2
- package/src/hooks/duotone.jsx +3 -3
- package/src/hooks/elements.jsx +3 -3
- package/src/hooks/fit-text.jsx +1 -1
- package/src/hooks/gap.js +2 -4
- package/src/hooks/index.js +3 -1
- package/src/hooks/layout-child.jsx +3 -4
- package/src/hooks/layout.jsx +17 -18
- package/src/hooks/position.jsx +5 -36
- package/src/hooks/states.jsx +6 -2
- package/src/hooks/test/layout.jsdom.test.js +44 -1
- package/src/hooks/text-shadow.ts +105 -0
- package/src/hooks/typography.jsx +58 -30
- package/src/hooks/utils.jsx +23 -1
- package/src/layouts/grid.jsx +2 -2
- package/src/layouts/test/flex.jsdom.test.jsx +4 -3
- package/src/layouts/test/utils.js +48 -1
- package/src/layouts/utils.js +19 -0
- package/src/private-apis.js +4 -0
- package/src/store/actions.js +50 -10
- package/src/store/private-selectors.js +5 -5
- package/src/store/reducer.js +6 -6
- package/src/store/selectors.js +3 -3
- package/src/store/test/actions.jsdom.test.js +60 -0
- package/src/style.scss +1 -0
- package/src/utils/get-font-styles-and-weights.ts +1 -1
- package/src/utils/transform-styles/index.ts +1 -1
- package/build/hooks/cross-origin-isolation.cjs +0 -56
- package/build/hooks/cross-origin-isolation.cjs.map +0 -7
- package/build-module/hooks/cross-origin-isolation.mjs +0 -54
- package/build-module/hooks/cross-origin-isolation.mjs.map +0 -7
- package/src/components/block-icon/test/__snapshots__/index.jsdom.test.jsx.snap +0 -27
- package/src/components/block-icon/test/index.jsdom.test.jsx +0 -67
- package/src/hooks/cross-origin-isolation.js +0 -73
- package/src/hooks/test/cross-origin-isolation.jsdom.test.js +0 -173
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
|
|
30
|
+
// packages/block-editor/src/components/global-styles/text-shadow-panel.tsx
|
|
31
|
+
var text_shadow_panel_exports = {};
|
|
32
|
+
__export(text_shadow_panel_exports, {
|
|
33
|
+
TextShadowPopover: () => TextShadowPopover
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(text_shadow_panel_exports);
|
|
36
|
+
var import_i18n = require("@wordpress/i18n");
|
|
37
|
+
var import_components = require("@wordpress/components");
|
|
38
|
+
var import_ui = require("@wordpress/ui");
|
|
39
|
+
var import_element = require("@wordpress/element");
|
|
40
|
+
var import_icons = require("@wordpress/icons");
|
|
41
|
+
var import_clsx = __toESM(require("clsx"));
|
|
42
|
+
var import_use_settings = require("../use-settings/index.cjs");
|
|
43
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
44
|
+
var EMPTY_ARRAY = [];
|
|
45
|
+
var PRESETS_SELECT_THRESHOLD = 7;
|
|
46
|
+
function getTextShadowPresetSlug(rawValue) {
|
|
47
|
+
if (!rawValue || typeof rawValue !== "string") {
|
|
48
|
+
return void 0;
|
|
49
|
+
}
|
|
50
|
+
if (rawValue.startsWith("var:preset|text-shadow|")) {
|
|
51
|
+
return rawValue.replace("var:preset|text-shadow|", "");
|
|
52
|
+
}
|
|
53
|
+
const cssVarMatch = rawValue.match(
|
|
54
|
+
/^var\(--wp--preset--text-shadow--([^)]+)\)$/
|
|
55
|
+
);
|
|
56
|
+
if (cssVarMatch) {
|
|
57
|
+
return cssVarMatch[1];
|
|
58
|
+
}
|
|
59
|
+
return void 0;
|
|
60
|
+
}
|
|
61
|
+
function TextShadowPopover({ textShadow, onChange }) {
|
|
62
|
+
const popoverProps = {
|
|
63
|
+
placement: "left-start",
|
|
64
|
+
offset: 36,
|
|
65
|
+
shift: true,
|
|
66
|
+
className: "block-editor-global-styles__text-shadow-popover"
|
|
67
|
+
};
|
|
68
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
69
|
+
import_components.Dropdown,
|
|
70
|
+
{
|
|
71
|
+
popoverProps,
|
|
72
|
+
className: "block-editor-global-styles__text-shadow-dropdown",
|
|
73
|
+
renderToggle: ({ onToggle, isOpen }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
74
|
+
TextShadowToggle,
|
|
75
|
+
{
|
|
76
|
+
textShadow,
|
|
77
|
+
onChange,
|
|
78
|
+
onToggle,
|
|
79
|
+
isOpen
|
|
80
|
+
}
|
|
81
|
+
),
|
|
82
|
+
renderContent: () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
83
|
+
TextShadowControl,
|
|
84
|
+
{
|
|
85
|
+
textShadow,
|
|
86
|
+
onChange
|
|
87
|
+
}
|
|
88
|
+
)
|
|
89
|
+
}
|
|
90
|
+
);
|
|
91
|
+
}
|
|
92
|
+
function TextShadowControl({ textShadow, onChange }) {
|
|
93
|
+
const [
|
|
94
|
+
defaultPresetsEnabled,
|
|
95
|
+
defaultPresets,
|
|
96
|
+
themePresets,
|
|
97
|
+
customPresets
|
|
98
|
+
] = (0, import_use_settings.useSettings)(
|
|
99
|
+
"typography.defaultTextShadowPresets",
|
|
100
|
+
"typography.textShadowPresets.default",
|
|
101
|
+
"typography.textShadowPresets.theme",
|
|
102
|
+
"typography.textShadowPresets.custom"
|
|
103
|
+
);
|
|
104
|
+
const presets = (0, import_element.useMemo)(
|
|
105
|
+
() => [
|
|
106
|
+
...defaultPresetsEnabled && defaultPresets || EMPTY_ARRAY,
|
|
107
|
+
...themePresets || EMPTY_ARRAY,
|
|
108
|
+
...customPresets || EMPTY_ARRAY
|
|
109
|
+
],
|
|
110
|
+
[defaultPresetsEnabled, defaultPresets, themePresets, customPresets]
|
|
111
|
+
);
|
|
112
|
+
const choices = [
|
|
113
|
+
{ value: "none", label: (0, import_i18n.__)("None") },
|
|
114
|
+
...presets.map((preset) => ({
|
|
115
|
+
value: `var:preset|text-shadow|${preset.slug}`,
|
|
116
|
+
label: preset.name
|
|
117
|
+
}))
|
|
118
|
+
];
|
|
119
|
+
const activeSlug = getTextShadowPresetSlug(textShadow);
|
|
120
|
+
const activeValue = activeSlug ? `var:preset|text-shadow|${activeSlug}` : textShadow ?? "";
|
|
121
|
+
const previewValue = activeSlug ? presets.find((preset) => preset.slug === activeSlug)?.textShadow : textShadow;
|
|
122
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
123
|
+
import_ui.Stack,
|
|
124
|
+
{
|
|
125
|
+
className: "block-editor-global-styles__text-shadow",
|
|
126
|
+
direction: "column",
|
|
127
|
+
gap: "sm",
|
|
128
|
+
children: [
|
|
129
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ui.Text, { variant: "heading-sm", render: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h2", {}), children: (0, import_i18n.__)("Text shadow") }),
|
|
130
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
131
|
+
"div",
|
|
132
|
+
{
|
|
133
|
+
className: "block-editor-global-styles__text-shadow-preview",
|
|
134
|
+
style: { textShadow: previewValue },
|
|
135
|
+
children: (0, import_i18n.__)("Code is poetry")
|
|
136
|
+
}
|
|
137
|
+
),
|
|
138
|
+
presets.length >= PRESETS_SELECT_THRESHOLD ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
139
|
+
import_components.SelectControl,
|
|
140
|
+
{
|
|
141
|
+
hideLabelFromVision: true,
|
|
142
|
+
label: (0, import_i18n.__)("Text shadow preset"),
|
|
143
|
+
value: activeValue,
|
|
144
|
+
options: [
|
|
145
|
+
{ value: "", label: (0, import_i18n.__)("Default") },
|
|
146
|
+
...choices
|
|
147
|
+
],
|
|
148
|
+
onChange
|
|
149
|
+
}
|
|
150
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
151
|
+
import_components.Composite,
|
|
152
|
+
{
|
|
153
|
+
role: "listbox",
|
|
154
|
+
"aria-label": (0, import_i18n.__)("Text shadow presets"),
|
|
155
|
+
render: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ui.Stack, { direction: "column" }),
|
|
156
|
+
children: choices.map(({ value, label }) => {
|
|
157
|
+
const isActive = value === activeValue;
|
|
158
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
159
|
+
import_components.Composite.Item,
|
|
160
|
+
{
|
|
161
|
+
role: "option",
|
|
162
|
+
"aria-selected": isActive,
|
|
163
|
+
className: (0, import_clsx.default)(
|
|
164
|
+
"block-editor-global-styles__text-shadow-list-item",
|
|
165
|
+
{ "is-active": isActive }
|
|
166
|
+
),
|
|
167
|
+
onClick: () => onChange(value),
|
|
168
|
+
render: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.Button, { __next40pxDefaultSize: true }),
|
|
169
|
+
children: [
|
|
170
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: label }),
|
|
171
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.Icon, { icon: import_icons.check })
|
|
172
|
+
]
|
|
173
|
+
},
|
|
174
|
+
value
|
|
175
|
+
);
|
|
176
|
+
})
|
|
177
|
+
}
|
|
178
|
+
),
|
|
179
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ui.Stack, { direction: "row", justify: "flex-end", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
180
|
+
import_components.Button,
|
|
181
|
+
{
|
|
182
|
+
__next40pxDefaultSize: true,
|
|
183
|
+
variant: "tertiary",
|
|
184
|
+
onClick: () => onChange(void 0),
|
|
185
|
+
disabled: !textShadow,
|
|
186
|
+
accessibleWhenDisabled: true,
|
|
187
|
+
children: (0, import_i18n.__)("Clear")
|
|
188
|
+
}
|
|
189
|
+
) })
|
|
190
|
+
]
|
|
191
|
+
}
|
|
192
|
+
);
|
|
193
|
+
}
|
|
194
|
+
function TextShadowToggle({
|
|
195
|
+
textShadow,
|
|
196
|
+
onChange,
|
|
197
|
+
onToggle,
|
|
198
|
+
isOpen
|
|
199
|
+
}) {
|
|
200
|
+
const buttonRef = (0, import_element.useRef)(void 0);
|
|
201
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
202
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
203
|
+
import_components.Button,
|
|
204
|
+
{
|
|
205
|
+
__next40pxDefaultSize: true,
|
|
206
|
+
onClick: onToggle,
|
|
207
|
+
className: (0, import_clsx.default)(
|
|
208
|
+
"block-editor-global-styles__text-shadow-dropdown-toggle",
|
|
209
|
+
{ "is-open": isOpen }
|
|
210
|
+
),
|
|
211
|
+
"aria-expanded": isOpen,
|
|
212
|
+
ref: buttonRef,
|
|
213
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
214
|
+
import_ui.Stack,
|
|
215
|
+
{
|
|
216
|
+
direction: "row",
|
|
217
|
+
justify: "flex-start",
|
|
218
|
+
align: "center",
|
|
219
|
+
gap: "sm",
|
|
220
|
+
children: [
|
|
221
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.Icon, { icon: import_icons.shadow, size: 24 }),
|
|
222
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: (0, import_i18n.__)("Text shadow") })
|
|
223
|
+
]
|
|
224
|
+
}
|
|
225
|
+
)
|
|
226
|
+
}
|
|
227
|
+
),
|
|
228
|
+
!!textShadow && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
229
|
+
import_components.Button,
|
|
230
|
+
{
|
|
231
|
+
__next40pxDefaultSize: true,
|
|
232
|
+
size: "small",
|
|
233
|
+
icon: import_icons.reset,
|
|
234
|
+
onClick: () => {
|
|
235
|
+
if (isOpen) {
|
|
236
|
+
onToggle();
|
|
237
|
+
}
|
|
238
|
+
onChange(void 0);
|
|
239
|
+
buttonRef.current?.focus();
|
|
240
|
+
},
|
|
241
|
+
className: (0, import_clsx.default)(
|
|
242
|
+
"block-editor-global-styles__text-shadow-remove-button",
|
|
243
|
+
{ "is-open": isOpen }
|
|
244
|
+
),
|
|
245
|
+
label: (0, import_i18n.__)("Remove text shadow")
|
|
246
|
+
}
|
|
247
|
+
)
|
|
248
|
+
] });
|
|
249
|
+
}
|
|
250
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
251
|
+
0 && (module.exports = {
|
|
252
|
+
TextShadowPopover
|
|
253
|
+
});
|
|
254
|
+
//# sourceMappingURL=text-shadow-panel.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/global-styles/text-shadow-panel.tsx"],
|
|
4
|
+
"sourcesContent": ["import { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tComposite,\n\tDropdown,\n\tSelectControl as WCSelectControl,\n} from '@wordpress/components';\nimport { Stack, Text } from '@wordpress/ui';\nimport { useRef, useMemo } from '@wordpress/element';\nimport { shadow as textShadowIcon, Icon, check, reset } from '@wordpress/icons';\nimport type { TextShadowPreset } from '@wordpress/global-styles-engine';\nimport clsx from 'clsx';\nimport { useSettings } from '../use-settings';\n\ntype TextShadowValue = string | undefined;\n\ninterface TextShadowProps {\n\ttextShadow: TextShadowValue;\n\tonChange: ( textShadow: TextShadowValue ) => void;\n}\n\ninterface TextShadowToggleProps extends TextShadowProps {\n\tonToggle: () => void;\n\tisOpen: boolean;\n}\n\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation.\n */\nconst EMPTY_ARRAY: TextShadowPreset[] = [];\n\n// Above this number of presets, the list is rendered as a compact dropdown\n// rather than a long list of options.\nconst PRESETS_SELECT_THRESHOLD = 7;\n\n/**\n * Extracts the preset slug from a raw text shadow value.\n *\n * @param rawValue The stored text shadow value.\n * @return The preset slug, or undefined for custom values.\n */\nfunction getTextShadowPresetSlug( rawValue: TextShadowValue ) {\n\tif ( ! rawValue || typeof rawValue !== 'string' ) {\n\t\treturn undefined;\n\t}\n\n\t// Block supports use the `var:preset|text-shadow|slug` format.\n\tif ( rawValue.startsWith( 'var:preset|text-shadow|' ) ) {\n\t\treturn rawValue.replace( 'var:preset|text-shadow|', '' );\n\t}\n\n\t// Global styles data uses the `var(--wp--preset--text-shadow--slug)` format.\n\tconst cssVarMatch = rawValue.match(\n\t\t/^var\\(--wp--preset--text-shadow--([^)]+)\\)$/\n\t);\n\tif ( cssVarMatch ) {\n\t\treturn cssVarMatch[ 1 ];\n\t}\n\n\treturn undefined;\n}\n\nexport function TextShadowPopover( { textShadow, onChange }: TextShadowProps ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start' as const,\n\t\toffset: 36,\n\t\tshift: true,\n\t\tclassName: 'block-editor-global-styles__text-shadow-popover',\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"block-editor-global-styles__text-shadow-dropdown\"\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => (\n\t\t\t\t<TextShadowToggle\n\t\t\t\t\ttextShadow={ textShadow }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tonToggle={ onToggle }\n\t\t\t\t\tisOpen={ isOpen }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\trenderContent={ () => (\n\t\t\t\t<TextShadowControl\n\t\t\t\t\ttextShadow={ textShadow }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t/>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction TextShadowControl( { textShadow, onChange }: TextShadowProps ) {\n\tconst [\n\t\tdefaultPresetsEnabled,\n\t\tdefaultPresets,\n\t\tthemePresets,\n\t\tcustomPresets,\n\t] = useSettings(\n\t\t'typography.defaultTextShadowPresets',\n\t\t'typography.textShadowPresets.default',\n\t\t'typography.textShadowPresets.theme',\n\t\t'typography.textShadowPresets.custom'\n\t) as [\n\t\tboolean | undefined,\n\t\tTextShadowPreset[] | undefined,\n\t\tTextShadowPreset[] | undefined,\n\t\tTextShadowPreset[] | undefined,\n\t];\n\n\tconst presets = useMemo(\n\t\t() => [\n\t\t\t...( ( defaultPresetsEnabled && defaultPresets ) || EMPTY_ARRAY ),\n\t\t\t...( themePresets || EMPTY_ARRAY ),\n\t\t\t...( customPresets || EMPTY_ARRAY ),\n\t\t],\n\t\t[ defaultPresetsEnabled, defaultPresets, themePresets, customPresets ]\n\t);\n\n\tconst choices = [\n\t\t{ value: 'none', label: __( 'None' ) },\n\t\t...presets.map( ( preset ) => ( {\n\t\t\tvalue: `var:preset|text-shadow|${ preset.slug }`,\n\t\t\tlabel: preset.name,\n\t\t} ) ),\n\t];\n\n\tconst activeSlug = getTextShadowPresetSlug( textShadow );\n\tconst activeValue = activeSlug\n\t\t? `var:preset|text-shadow|${ activeSlug }`\n\t\t: ( textShadow ?? '' );\n\tconst previewValue = activeSlug\n\t\t? presets.find( ( preset ) => preset.slug === activeSlug )?.textShadow\n\t\t: textShadow;\n\n\treturn (\n\t\t<Stack\n\t\t\tclassName=\"block-editor-global-styles__text-shadow\"\n\t\t\tdirection=\"column\"\n\t\t\tgap=\"sm\"\n\t\t>\n\t\t\t<Text variant=\"heading-sm\" render={ <h2 /> }>\n\t\t\t\t{ __( 'Text shadow' ) }\n\t\t\t</Text>\n\t\t\t<div\n\t\t\t\tclassName=\"block-editor-global-styles__text-shadow-preview\"\n\t\t\t\tstyle={ { textShadow: previewValue } }\n\t\t\t>\n\t\t\t\t{ __( 'Code is poetry' ) }\n\t\t\t</div>\n\t\t\t{ presets.length >= PRESETS_SELECT_THRESHOLD ? (\n\t\t\t\t<WCSelectControl\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tlabel={ __( 'Text shadow preset' ) }\n\t\t\t\t\tvalue={ activeValue }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ value: '', label: __( 'Default' ) },\n\t\t\t\t\t\t...choices,\n\t\t\t\t\t] }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<Composite\n\t\t\t\t\trole=\"listbox\"\n\t\t\t\t\taria-label={ __( 'Text shadow presets' ) }\n\t\t\t\t\trender={ <Stack direction=\"column\" /> }\n\t\t\t\t>\n\t\t\t\t\t{ choices.map( ( { value, label } ) => {\n\t\t\t\t\t\tconst isActive = value === activeValue;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Composite.Item\n\t\t\t\t\t\t\t\tkey={ value }\n\t\t\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\t\t\taria-selected={ isActive }\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'block-editor-global-styles__text-shadow-list-item',\n\t\t\t\t\t\t\t\t\t{ 'is-active': isActive }\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonClick={ () => onChange( value ) }\n\t\t\t\t\t\t\t\trender={ <Button __next40pxDefaultSize /> }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<span>{ label }</span>\n\t\t\t\t\t\t\t\t<Icon icon={ check } />\n\t\t\t\t\t\t\t</Composite.Item>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</Composite>\n\t\t\t) }\n\t\t\t<Stack direction=\"row\" justify=\"flex-end\">\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tonClick={ () => onChange( undefined ) }\n\t\t\t\t\tdisabled={ ! textShadow }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t</Button>\n\t\t\t</Stack>\n\t\t</Stack>\n\t);\n}\n\nfunction TextShadowToggle( {\n\ttextShadow,\n\tonChange,\n\tonToggle,\n\tisOpen,\n}: TextShadowToggleProps ) {\n\tconst buttonRef = useRef< HTMLButtonElement >( undefined );\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tonClick={ onToggle }\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'block-editor-global-styles__text-shadow-dropdown-toggle',\n\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t) }\n\t\t\t\taria-expanded={ isOpen }\n\t\t\t\tref={ buttonRef }\n\t\t\t>\n\t\t\t\t<Stack\n\t\t\t\t\tdirection=\"row\"\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\talign=\"center\"\n\t\t\t\t\tgap=\"sm\"\n\t\t\t\t>\n\t\t\t\t\t<Icon icon={ textShadowIcon } size={ 24 } />\n\t\t\t\t\t<span>{ __( 'Text shadow' ) }</span>\n\t\t\t\t</Stack>\n\t\t\t</Button>\n\t\t\t{ !! textShadow && (\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\ticon={ reset }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tif ( isOpen ) {\n\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange( undefined );\n\t\t\t\t\t\t// Return focus to parent button.\n\t\t\t\t\t\tbuttonRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t'block-editor-global-styles__text-shadow-remove-button',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t) }\n\t\t\t\t\tlabel={ __( 'Remove text shadow' ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAmB;AACnB,wBAKO;AACP,gBAA4B;AAC5B,qBAAgC;AAChC,mBAA6D;AAE7D,kBAAiB;AACjB,0BAA4B;AAgExB;AA9CJ,IAAM,cAAkC,CAAC;AAIzC,IAAM,2BAA2B;AAQjC,SAAS,wBAAyB,UAA4B;AAC7D,MAAK,CAAE,YAAY,OAAO,aAAa,UAAW;AACjD,WAAO;AAAA,EACR;AAGA,MAAK,SAAS,WAAY,yBAA0B,GAAI;AACvD,WAAO,SAAS,QAAS,2BAA2B,EAAG;AAAA,EACxD;AAGA,QAAM,cAAc,SAAS;AAAA,IAC5B;AAAA,EACD;AACA,MAAK,aAAc;AAClB,WAAO,YAAa,CAAE;AAAA,EACvB;AAEA,SAAO;AACR;AAEO,SAAS,kBAAmB,EAAE,YAAY,SAAS,GAAqB;AAC9E,QAAM,eAAe;AAAA,IACpB,WAAW;AAAA,IACX,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,WAAW;AAAA,EACZ;AAEA,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,WAAU;AAAA,MACV,cAAe,CAAE,EAAE,UAAU,OAAO,MACnC;AAAA,QAAC;AAAA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA;AAAA,MACD;AAAA,MAED,eAAgB,MACf;AAAA,QAAC;AAAA;AAAA,UACA;AAAA,UACA;AAAA;AAAA,MACD;AAAA;AAAA,EAEF;AAEF;AAEA,SAAS,kBAAmB,EAAE,YAAY,SAAS,GAAqB;AACvE,QAAM;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,QAAI;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAOA,QAAM,cAAU;AAAA,IACf,MAAM;AAAA,MACL,GAAO,yBAAyB,kBAAoB;AAAA,MACpD,GAAK,gBAAgB;AAAA,MACrB,GAAK,iBAAiB;AAAA,IACvB;AAAA,IACA,CAAE,uBAAuB,gBAAgB,cAAc,aAAc;AAAA,EACtE;AAEA,QAAM,UAAU;AAAA,IACf,EAAE,OAAO,QAAQ,WAAO,gBAAI,MAAO,EAAE;AAAA,IACrC,GAAG,QAAQ,IAAK,CAAE,YAAc;AAAA,MAC/B,OAAO,0BAA2B,OAAO,IAAK;AAAA,MAC9C,OAAO,OAAO;AAAA,IACf,EAAI;AAAA,EACL;AAEA,QAAM,aAAa,wBAAyB,UAAW;AACvD,QAAM,cAAc,aACjB,0BAA2B,UAAW,KACpC,cAAc;AACnB,QAAM,eAAe,aAClB,QAAQ,KAAM,CAAE,WAAY,OAAO,SAAS,UAAW,GAAG,aAC1D;AAEH,SACC;AAAA,IAAC;AAAA;AAAA,MACA,WAAU;AAAA,MACV,WAAU;AAAA,MACV,KAAI;AAAA,MAEJ;AAAA,oDAAC,kBAAK,SAAQ,cAAa,QAAS,4CAAC,QAAG,GACrC,8BAAI,aAAc,GACrB;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACA,WAAU;AAAA,YACV,OAAQ,EAAE,YAAY,aAAa;AAAA,YAEjC,8BAAI,gBAAiB;AAAA;AAAA,QACxB;AAAA,QACE,QAAQ,UAAU,2BACnB;AAAA,UAAC,kBAAAA;AAAA,UAAA;AAAA,YACA,qBAAmB;AAAA,YACnB,WAAQ,gBAAI,oBAAqB;AAAA,YACjC,OAAQ;AAAA,YACR,SAAU;AAAA,cACT,EAAE,OAAO,IAAI,WAAO,gBAAI,SAAU,EAAE;AAAA,cACpC,GAAG;AAAA,YACJ;AAAA,YACA;AAAA;AAAA,QACD,IAEA;AAAA,UAAC;AAAA;AAAA,YACA,MAAK;AAAA,YACL,kBAAa,gBAAI,qBAAsB;AAAA,YACvC,QAAS,4CAAC,mBAAM,WAAU,UAAS;AAAA,YAEjC,kBAAQ,IAAK,CAAE,EAAE,OAAO,MAAM,MAAO;AACtC,oBAAM,WAAW,UAAU;AAC3B,qBACC;AAAA,gBAAC,4BAAU;AAAA,gBAAV;AAAA,kBAEA,MAAK;AAAA,kBACL,iBAAgB;AAAA,kBAChB,eAAY,YAAAC;AAAA,oBACX;AAAA,oBACA,EAAE,aAAa,SAAS;AAAA,kBACzB;AAAA,kBACA,SAAU,MAAM,SAAU,KAAM;AAAA,kBAChC,QAAS,4CAAC,4BAAO,uBAAqB,MAAC;AAAA,kBAEvC;AAAA,gEAAC,UAAO,iBAAO;AAAA,oBACf,4CAAC,qBAAK,MAAO,oBAAQ;AAAA;AAAA;AAAA,gBAXf;AAAA,cAYP;AAAA,YAEF,CAAE;AAAA;AAAA,QACH;AAAA,QAED,4CAAC,mBAAM,WAAU,OAAM,SAAQ,YAC9B;AAAA,UAAC;AAAA;AAAA,YACA,uBAAqB;AAAA,YACrB,SAAQ;AAAA,YACR,SAAU,MAAM,SAAU,MAAU;AAAA,YACpC,UAAW,CAAE;AAAA,YACb,wBAAsB;AAAA,YAEpB,8BAAI,OAAQ;AAAA;AAAA,QACf,GACD;AAAA;AAAA;AAAA,EACD;AAEF;AAEA,SAAS,iBAAkB;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAA2B;AAC1B,QAAM,gBAAY,uBAA6B,MAAU;AAEzD,SACC,4EACC;AAAA;AAAA,MAAC;AAAA;AAAA,QACA,uBAAqB;AAAA,QACrB,SAAU;AAAA,QACV,eAAY,YAAAA;AAAA,UACX;AAAA,UACA,EAAE,WAAW,OAAO;AAAA,QACrB;AAAA,QACA,iBAAgB;AAAA,QAChB,KAAM;AAAA,QAEN;AAAA,UAAC;AAAA;AAAA,YACA,WAAU;AAAA,YACV,SAAQ;AAAA,YACR,OAAM;AAAA,YACN,KAAI;AAAA,YAEJ;AAAA,0DAAC,qBAAK,MAAO,aAAAC,QAAiB,MAAO,IAAK;AAAA,cAC1C,4CAAC,UAAO,8BAAI,aAAc,GAAG;AAAA;AAAA;AAAA,QAC9B;AAAA;AAAA,IACD;AAAA,IACE,CAAC,CAAE,cACJ;AAAA,MAAC;AAAA;AAAA,QACA,uBAAqB;AAAA,QACrB,MAAK;AAAA,QACL,MAAO;AAAA,QACP,SAAU,MAAM;AACf,cAAK,QAAS;AACb,qBAAS;AAAA,UACV;AACA,mBAAU,MAAU;AAEpB,oBAAU,SAAS,MAAM;AAAA,QAC1B;AAAA,QACA,eAAY,YAAAD;AAAA,UACX;AAAA,UACA,EAAE,WAAW,OAAO;AAAA,QACrB;AAAA,QACA,WAAQ,gBAAI,oBAAqB;AAAA;AAAA,IAClC;AAAA,KAEF;AAEF;",
|
|
6
|
+
"names": ["WCSelectControl", "clsx", "textShadowIcon"]
|
|
7
|
+
}
|
|
@@ -47,6 +47,7 @@ var import_text_transform_control = __toESM(require("../text-transform-control/i
|
|
|
47
47
|
var import_text_decoration_control = __toESM(require("../text-decoration-control/index.cjs"));
|
|
48
48
|
var import_text_indent_control = __toESM(require("../text-indent-control/index.cjs"));
|
|
49
49
|
var import_writing_mode_control = __toESM(require("../writing-mode-control/index.cjs"));
|
|
50
|
+
var import_text_shadow_panel = require("./text-shadow-panel.cjs");
|
|
50
51
|
var import_color_gradient_dropdown_item = __toESM(require("./color-gradient-dropdown-item.cjs"));
|
|
51
52
|
var import_color_panel = require("./color-panel.cjs");
|
|
52
53
|
var import_hooks = require("./hooks.cjs");
|
|
@@ -80,7 +81,8 @@ function useHasTypographyPanel(settings) {
|
|
|
80
81
|
const hasTextColumns = useHasTextColumnsControl(settings);
|
|
81
82
|
const hasFontSize = useHasFontSizeControl(settings);
|
|
82
83
|
const hasTextColor = (0, import_color_panel.useHasTextPanel)(settings);
|
|
83
|
-
|
|
84
|
+
const hasTextShadow = useHasTextShadowControl(settings);
|
|
85
|
+
return hasFontFamily || hasLineHeight || hasFontAppearance || hasLetterSpacing || hasTextAlign || hasTextTransform || hasFontSize || hasTextDecoration || hasTextIndent || hasWritingMode || hasTextColumns || hasTextColor || hasTextShadow;
|
|
84
86
|
}
|
|
85
87
|
function useHasFontSizeControl(settings) {
|
|
86
88
|
return settings?.typography?.defaultFontSizes !== false && settings?.typography?.fontSizes?.default?.length || settings?.typography?.fontSizes?.theme?.length || settings?.typography?.fontSizes?.custom?.length || settings?.typography?.customFontSize;
|
|
@@ -126,6 +128,9 @@ function useHasTextColumnsControl(settings) {
|
|
|
126
128
|
function useHasTextIndentControl(settings) {
|
|
127
129
|
return settings?.typography?.textIndent;
|
|
128
130
|
}
|
|
131
|
+
function useHasTextShadowControl(settings) {
|
|
132
|
+
return settings?.typography?.textShadow;
|
|
133
|
+
}
|
|
129
134
|
function getMergedFontSizes(settings) {
|
|
130
135
|
const fontSizes = settings?.typography?.fontSizes;
|
|
131
136
|
const defaultFontSizesEnabled = !!settings?.typography?.defaultFontSizes;
|
|
@@ -171,7 +176,8 @@ var DEFAULT_CONTROLS = {
|
|
|
171
176
|
textDecoration: true,
|
|
172
177
|
textIndent: true,
|
|
173
178
|
writingMode: true,
|
|
174
|
-
textColumns: true
|
|
179
|
+
textColumns: true,
|
|
180
|
+
textShadow: true
|
|
175
181
|
};
|
|
176
182
|
var EMPTY_VALUES = [void 0, null, ""];
|
|
177
183
|
function hasValue(value) {
|
|
@@ -193,7 +199,7 @@ function TypographyPanel({
|
|
|
193
199
|
panelId,
|
|
194
200
|
defaultControls = DEFAULT_CONTROLS,
|
|
195
201
|
isGlobalStyles = false,
|
|
196
|
-
showInheritanceLabelIndicators = (0, import_inheritance.
|
|
202
|
+
showInheritanceLabelIndicators = (0, import_inheritance.isGlobalStylesInheritanceIndicatorUIEnabled)(),
|
|
197
203
|
contrastWarning
|
|
198
204
|
}) {
|
|
199
205
|
const { colors, allColors, areCustomSolidsEnabled, decodeValue } = (0, import_hooks.useColorGradientSettings)(settings);
|
|
@@ -213,8 +219,7 @@ function TypographyPanel({
|
|
|
213
219
|
newSlug
|
|
214
220
|
);
|
|
215
221
|
let changedObject = (0, import_object.setImmutably)(value, ["color", "text"], encoded);
|
|
216
|
-
|
|
217
|
-
if (syncLinkColor) {
|
|
222
|
+
if (shouldSyncLinkColor(value, inheritedValue)) {
|
|
218
223
|
changedObject = (0, import_object.setImmutably)(
|
|
219
224
|
changedObject,
|
|
220
225
|
["elements", "link", "color", "text"],
|
|
@@ -567,6 +572,21 @@ function TypographyPanel({
|
|
|
567
572
|
};
|
|
568
573
|
const hasTextAlign = () => hasValue(value?.typography?.textAlign);
|
|
569
574
|
const resetTextAlign = () => setTextAlign(void 0);
|
|
575
|
+
const hasTextShadowControl = useHasTextShadowControl(settings);
|
|
576
|
+
const inheritedTextShadow = inheritedValue?.typography?.textShadow;
|
|
577
|
+
const textShadow = value?.typography?.textShadow ?? inheritedTextShadow;
|
|
578
|
+
const isTextShadowPlaceholder = !hasValue(value?.typography?.textShadow) && hasValue(inheritedTextShadow);
|
|
579
|
+
const setTextShadow = (newValue) => {
|
|
580
|
+
onChange(
|
|
581
|
+
(0, import_object.setImmutably)(
|
|
582
|
+
value,
|
|
583
|
+
["typography", "textShadow"],
|
|
584
|
+
newValue || void 0
|
|
585
|
+
)
|
|
586
|
+
);
|
|
587
|
+
};
|
|
588
|
+
const hasTextShadow = () => hasValue(value?.typography?.textShadow);
|
|
589
|
+
const resetTextShadow = () => setTextShadow(void 0);
|
|
570
590
|
const resetAllFilter = (0, import_element.useCallback)(
|
|
571
591
|
(previousValue) => {
|
|
572
592
|
if (!hasTextColorEnabled) {
|
|
@@ -893,6 +913,27 @@ function TypographyPanel({
|
|
|
893
913
|
)
|
|
894
914
|
}
|
|
895
915
|
),
|
|
916
|
+
hasTextShadowControl && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
917
|
+
import_inheritance.InheritanceToolsPanelItem,
|
|
918
|
+
{
|
|
919
|
+
...inheritanceProps(
|
|
920
|
+
isTextShadowPlaceholder,
|
|
921
|
+
hasTextShadow() && inheritedTextShadow !== void 0
|
|
922
|
+
),
|
|
923
|
+
label: (0, import_i18n.__)("Text shadow"),
|
|
924
|
+
hasValue: hasTextShadow,
|
|
925
|
+
onDeselect: resetTextShadow,
|
|
926
|
+
isShownByDefault: defaultControls.textShadow,
|
|
927
|
+
panelId,
|
|
928
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
929
|
+
import_text_shadow_panel.TextShadowPopover,
|
|
930
|
+
{
|
|
931
|
+
textShadow,
|
|
932
|
+
onChange: setTextShadow
|
|
933
|
+
}
|
|
934
|
+
)
|
|
935
|
+
}
|
|
936
|
+
),
|
|
896
937
|
hasTextAlignmentControl && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
897
938
|
import_inheritance.InheritanceToolsPanelItem,
|
|
898
939
|
{
|