@wordpress/block-editor 9.6.0 → 9.8.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 +4 -0
- package/build/components/block-alignment-control/use-available-alignments.js +1 -1
- package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
- package/build/components/block-edit-visually-button/index.js +46 -0
- package/build/components/block-edit-visually-button/index.js.map +1 -0
- package/build/components/block-list/block.js +12 -2
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/index.native.js +1 -1
- package/build/components/block-list/index.native.js.map +1 -1
- package/build/components/block-popover/inbetween.js +5 -3
- package/build/components/block-popover/inbetween.js.map +1 -1
- package/build/components/block-popover/index.js +10 -4
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-settings-menu/index.js +2 -6
- package/build/components/block-settings-menu/index.js.map +1 -1
- package/build/components/block-styles/index.js +3 -6
- package/build/components/block-styles/index.js.map +1 -1
- package/build/components/block-switcher/index.js +10 -16
- package/build/components/block-switcher/index.js.map +1 -1
- package/build/components/block-toolbar/index.js +5 -1
- package/build/components/block-toolbar/index.js.map +1 -1
- package/build/components/block-tools/selected-block-popover.js +10 -2
- package/build/components/block-tools/selected-block-popover.js.map +1 -1
- package/build/components/block-tools/use-block-toolbar-popover-props.js +126 -0
- package/build/components/block-tools/use-block-toolbar-popover-props.js.map +1 -0
- package/build/components/block-types-list/index.js +1 -1
- package/build/components/block-types-list/index.js.map +1 -1
- package/build/components/border-radius-control/all-input-control.js +31 -3
- package/build/components/border-radius-control/all-input-control.js.map +1 -1
- package/build/components/border-radius-control/index.js +23 -7
- package/build/components/border-radius-control/index.js.map +1 -1
- package/build/components/border-radius-control/input-controls.js +21 -6
- package/build/components/border-radius-control/input-controls.js.map +1 -1
- package/build/components/border-radius-control/utils.js +13 -16
- package/build/components/border-radius-control/utils.js.map +1 -1
- package/build/components/colors/utils.js +6 -2
- package/build/components/colors/utils.js.map +1 -1
- package/build/components/colors/with-colors.js +17 -4
- package/build/components/colors/with-colors.js.map +1 -1
- package/build/components/colors-gradients/control.js +7 -4
- package/build/components/colors-gradients/control.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +5 -2
- package/build/components/colors-gradients/dropdown.js.map +1 -1
- package/build/components/copy-handler/index.js +6 -0
- package/build/components/copy-handler/index.js.map +1 -1
- package/build/components/date-format-picker/index.js +2 -7
- package/build/components/date-format-picker/index.js.map +1 -1
- package/build/components/duotone/components.js +5 -5
- package/build/components/duotone/components.js.map +1 -1
- package/build/components/font-appearance-control/index.js +10 -4
- package/build/components/font-appearance-control/index.js.map +1 -1
- package/build/components/font-family/index.js +1 -1
- package/build/components/font-family/index.js.map +1 -1
- package/build/components/font-sizes/with-font-sizes.js +17 -4
- package/build/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build/components/image-size-control/index.js +3 -1
- package/build/components/image-size-control/index.js.map +1 -1
- package/build/components/index.js +22 -6
- package/build/components/index.js.map +1 -1
- package/build/components/index.native.js +11 -4
- package/build/components/index.native.js.map +1 -1
- package/build/components/inserter/index.native.js +8 -3
- package/build/components/inserter/index.native.js.map +1 -1
- package/build/components/inserter/search-items.js +22 -4
- package/build/components/inserter/search-items.js.map +1 -1
- package/build/components/inserter-list-item/index.js +2 -19
- package/build/components/inserter-list-item/index.js.map +1 -1
- package/build/components/letter-spacing-control/index.js +6 -3
- package/build/components/letter-spacing-control/index.js.map +1 -1
- package/build/components/line-height-control/index.js +6 -3
- package/build/components/line-height-control/index.js.map +1 -1
- package/build/components/link-control/is-url-like.js +1 -7
- package/build/components/link-control/is-url-like.js.map +1 -1
- package/build/components/link-control/link-preview.js +0 -1
- package/build/components/link-control/link-preview.js.map +1 -1
- package/build/components/link-control/use-search-handler.js +1 -7
- package/build/components/link-control/use-search-handler.js.map +1 -1
- package/build/components/list-view/block-select-button.js +5 -2
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/expander.js +3 -1
- package/build/components/list-view/expander.js.map +1 -1
- package/build/components/list-view/use-block-selection.js +1 -7
- package/build/components/list-view/use-block-selection.js.map +1 -1
- package/build/components/media-upload/index.native.js +8 -3
- package/build/components/media-upload/index.native.js.map +1 -1
- package/build/components/preview-options/index.js +2 -2
- package/build/components/preview-options/index.js.map +1 -1
- package/build/components/{use-no-recursive-renders → recursion-provider}/index.js +40 -18
- package/build/components/recursion-provider/index.js.map +1 -0
- package/build/components/rich-text/index.js +6 -1
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +3 -1
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/use-before-input-rules.js +110 -0
- package/build/components/rich-text/use-before-input-rules.js.map +1 -0
- package/build/components/rich-text/use-enter.js +0 -4
- package/build/components/rich-text/use-enter.js.map +1 -1
- package/build/components/rich-text/use-format-types.js +8 -11
- package/build/components/rich-text/use-format-types.js.map +1 -1
- package/build/components/spacing-sizes-control/all-input-control.js +53 -0
- package/build/components/spacing-sizes-control/all-input-control.js.map +1 -0
- package/build/components/spacing-sizes-control/axial-input-controls.js +69 -0
- package/build/components/spacing-sizes-control/axial-input-controls.js.map +1 -0
- package/build/components/spacing-sizes-control/index.js +100 -0
- package/build/components/spacing-sizes-control/index.js.map +1 -0
- package/build/components/spacing-sizes-control/input-controls.js +52 -0
- package/build/components/spacing-sizes-control/input-controls.js.map +1 -0
- package/build/components/spacing-sizes-control/linked-button.js +38 -0
- package/build/components/spacing-sizes-control/linked-button.js.map +1 -0
- package/build/components/spacing-sizes-control/spacing-input-control.js +208 -0
- package/build/components/spacing-sizes-control/spacing-input-control.js.map +1 -0
- package/build/components/spacing-sizes-control/utils.js +202 -0
- package/build/components/spacing-sizes-control/utils.js.map +1 -0
- package/build/components/text-decoration-control/index.js +3 -1
- package/build/components/text-decoration-control/index.js.map +1 -1
- package/build/components/text-transform-control/index.js +3 -1
- package/build/components/text-transform-control/index.js.map +1 -1
- package/build/components/url-input/index.js +1 -1
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/url-popover/image-url-input-ui.js +4 -1
- package/build/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build/components/writing-flow/use-arrow-nav.js +4 -25
- package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build/components/writing-flow/use-drag-selection.js +9 -2
- package/build/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build/components/writing-flow/use-multi-selection.js +4 -2
- package/build/components/writing-flow/use-multi-selection.js.map +1 -1
- package/build/components/writing-flow/use-select-all.js +3 -1
- package/build/components/writing-flow/use-select-all.js.map +1 -1
- package/build/components/writing-flow/use-selection-observer.js +10 -2
- package/build/components/writing-flow/use-selection-observer.js.map +1 -1
- package/build/hooks/border-radius.js +2 -7
- package/build/hooks/border-radius.js.map +1 -1
- package/build/hooks/border.js +2 -2
- package/build/hooks/border.js.map +1 -1
- package/build/hooks/color.js +4 -1
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/dimensions.js +15 -0
- package/build/hooks/dimensions.js.map +1 -1
- package/build/hooks/duotone.js +4 -4
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/gap.js +6 -4
- package/build/hooks/gap.js.map +1 -1
- package/build/hooks/generated-class-name.js +1 -7
- package/build/hooks/generated-class-name.js.map +1 -1
- package/build/hooks/layout.js +29 -14
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/margin.js +28 -12
- package/build/hooks/margin.js.map +1 -1
- package/build/hooks/padding.js +19 -8
- package/build/hooks/padding.js.map +1 -1
- package/build/hooks/style.js +4 -50
- package/build/hooks/style.js.map +1 -1
- package/build/layouts/constrained.js +215 -0
- package/build/layouts/constrained.js.map +1 -0
- package/build/layouts/flex.js +1 -1
- package/build/layouts/flex.js.map +1 -1
- package/build/layouts/flow.js +7 -151
- package/build/layouts/flow.js.map +1 -1
- package/build/layouts/index.js +3 -1
- package/build/layouts/index.js.map +1 -1
- package/build/layouts/utils.js +43 -0
- package/build/layouts/utils.js.map +1 -1
- package/build/store/actions.js +25 -3
- package/build/store/actions.js.map +1 -1
- package/build/store/selectors.js +4 -6
- package/build/store/selectors.js.map +1 -1
- package/build/utils/block-variation-transforms.js +15 -9
- package/build/utils/block-variation-transforms.js.map +1 -1
- package/build/utils/pasting.js +9 -1
- package/build/utils/pasting.js.map +1 -1
- package/build-module/components/block-alignment-control/use-available-alignments.js +1 -1
- package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
- package/build-module/components/block-edit-visually-button/index.js +35 -0
- package/build-module/components/block-edit-visually-button/index.js.map +1 -0
- package/build-module/components/block-list/block.js +13 -3
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/index.native.js +1 -1
- package/build-module/components/block-list/index.native.js.map +1 -1
- package/build-module/components/block-popover/inbetween.js +5 -3
- package/build-module/components/block-popover/inbetween.js.map +1 -1
- package/build-module/components/block-popover/index.js +8 -4
- package/build-module/components/block-popover/index.js.map +1 -1
- package/build-module/components/block-settings-menu/index.js +3 -6
- package/build-module/components/block-settings-menu/index.js.map +1 -1
- package/build-module/components/block-styles/index.js +4 -7
- package/build-module/components/block-styles/index.js.map +1 -1
- package/build-module/components/block-switcher/index.js +10 -16
- package/build-module/components/block-switcher/index.js.map +1 -1
- package/build-module/components/block-toolbar/index.js +4 -1
- package/build-module/components/block-toolbar/index.js.map +1 -1
- package/build-module/components/block-tools/selected-block-popover.js +8 -2
- package/build-module/components/block-tools/selected-block-popover.js.map +1 -1
- package/build-module/components/block-tools/use-block-toolbar-popover-props.js +114 -0
- package/build-module/components/block-tools/use-block-toolbar-popover-props.js.map +1 -0
- package/build-module/components/block-types-list/index.js +1 -1
- package/build-module/components/block-types-list/index.js.map +1 -1
- package/build-module/components/border-radius-control/all-input-control.js +32 -4
- package/build-module/components/border-radius-control/all-input-control.js.map +1 -1
- package/build-module/components/border-radius-control/index.js +24 -8
- package/build-module/components/border-radius-control/index.js.map +1 -1
- package/build-module/components/border-radius-control/input-controls.js +22 -7
- package/build-module/components/border-radius-control/input-controls.js.map +1 -1
- package/build-module/components/border-radius-control/utils.js +13 -16
- package/build-module/components/border-radius-control/utils.js.map +1 -1
- package/build-module/components/colors/utils.js +7 -3
- package/build-module/components/colors/utils.js.map +1 -1
- package/build-module/components/colors/with-colors.js +16 -3
- package/build-module/components/colors/with-colors.js.map +1 -1
- package/build-module/components/colors-gradients/control.js +7 -4
- package/build-module/components/colors-gradients/control.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +5 -2
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/copy-handler/index.js +7 -1
- package/build-module/components/copy-handler/index.js.map +1 -1
- package/build-module/components/date-format-picker/index.js +2 -6
- package/build-module/components/date-format-picker/index.js.map +1 -1
- package/build-module/components/duotone/components.js +5 -5
- package/build-module/components/duotone/components.js.map +1 -1
- package/build-module/components/font-appearance-control/index.js +7 -4
- package/build-module/components/font-appearance-control/index.js.map +1 -1
- package/build-module/components/font-family/index.js +1 -1
- package/build-module/components/font-family/index.js.map +1 -1
- package/build-module/components/font-sizes/with-font-sizes.js +16 -3
- package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build-module/components/image-size-control/index.js +3 -1
- package/build-module/components/image-size-control/index.js.map +1 -1
- package/build-module/components/index.js +2 -1
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/index.native.js +1 -1
- package/build-module/components/index.native.js.map +1 -1
- package/build-module/components/inserter/index.native.js +9 -2
- package/build-module/components/inserter/index.native.js.map +1 -1
- package/build-module/components/inserter/search-items.js +19 -5
- package/build-module/components/inserter/search-items.js.map +1 -1
- package/build-module/components/inserter-list-item/index.js +1 -17
- package/build-module/components/inserter-list-item/index.js.map +1 -1
- package/build-module/components/letter-spacing-control/index.js +5 -3
- package/build-module/components/letter-spacing-control/index.js.map +1 -1
- package/build-module/components/line-height-control/index.js +5 -3
- package/build-module/components/line-height-control/index.js.map +1 -1
- package/build-module/components/link-control/is-url-like.js +1 -6
- package/build-module/components/link-control/is-url-like.js.map +1 -1
- package/build-module/components/link-control/link-preview.js +0 -1
- package/build-module/components/link-control/link-preview.js.map +1 -1
- package/build-module/components/link-control/use-search-handler.js +1 -6
- package/build-module/components/link-control/use-search-handler.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +5 -2
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/expander.js +3 -2
- package/build-module/components/list-view/expander.js.map +1 -1
- package/build-module/components/list-view/use-block-selection.js +1 -6
- package/build-module/components/list-view/use-block-selection.js.map +1 -1
- package/build-module/components/media-upload/index.native.js +9 -2
- package/build-module/components/media-upload/index.native.js.map +1 -1
- package/build-module/components/preview-options/index.js +2 -2
- package/build-module/components/preview-options/index.js.map +1 -1
- package/build-module/components/{use-no-recursive-renders → recursion-provider}/index.js +39 -19
- package/build-module/components/recursion-provider/index.js.map +1 -0
- package/build-module/components/rich-text/index.js +5 -1
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +3 -1
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/use-before-input-rules.js +96 -0
- package/build-module/components/rich-text/use-before-input-rules.js.map +1 -0
- package/build-module/components/rich-text/use-enter.js +0 -4
- package/build-module/components/rich-text/use-enter.js.map +1 -1
- package/build-module/components/rich-text/use-format-types.js +8 -10
- package/build-module/components/rich-text/use-format-types.js.map +1 -1
- package/build-module/components/spacing-sizes-control/all-input-control.js +41 -0
- package/build-module/components/spacing-sizes-control/all-input-control.js.map +1 -0
- package/build-module/components/spacing-sizes-control/axial-input-controls.js +57 -0
- package/build-module/components/spacing-sizes-control/axial-input-controls.js.map +1 -0
- package/build-module/components/spacing-sizes-control/index.js +83 -0
- package/build-module/components/spacing-sizes-control/index.js.map +1 -0
- package/build-module/components/spacing-sizes-control/input-controls.js +41 -0
- package/build-module/components/spacing-sizes-control/input-controls.js.map +1 -0
- package/build-module/components/spacing-sizes-control/linked-button.js +28 -0
- package/build-module/components/spacing-sizes-control/linked-button.js.map +1 -0
- package/build-module/components/spacing-sizes-control/spacing-input-control.js +192 -0
- package/build-module/components/spacing-sizes-control/spacing-input-control.js.map +1 -0
- package/build-module/components/spacing-sizes-control/utils.js +174 -0
- package/build-module/components/spacing-sizes-control/utils.js.map +1 -0
- package/build-module/components/text-decoration-control/index.js +4 -2
- package/build-module/components/text-decoration-control/index.js.map +1 -1
- package/build-module/components/text-transform-control/index.js +4 -2
- package/build-module/components/text-transform-control/index.js.map +1 -1
- package/build-module/components/url-input/index.js +1 -1
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/url-popover/image-url-input-ui.js +4 -1
- package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build-module/components/writing-flow/use-arrow-nav.js +5 -26
- package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build-module/components/writing-flow/use-drag-selection.js +9 -2
- package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-multi-selection.js +4 -2
- package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-select-all.js +3 -1
- package/build-module/components/writing-flow/use-select-all.js.map +1 -1
- package/build-module/components/writing-flow/use-selection-observer.js +10 -2
- package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
- package/build-module/hooks/border-radius.js +2 -7
- package/build-module/hooks/border-radius.js.map +1 -1
- package/build-module/hooks/border.js +2 -2
- package/build-module/hooks/border.js.map +1 -1
- package/build-module/hooks/color.js +4 -1
- package/build-module/hooks/color.js.map +1 -1
- package/build-module/hooks/dimensions.js +13 -0
- package/build-module/hooks/dimensions.js.map +1 -1
- package/build-module/hooks/duotone.js +4 -4
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/gap.js +3 -2
- package/build-module/hooks/gap.js.map +1 -1
- package/build-module/hooks/generated-class-name.js +1 -6
- package/build-module/hooks/generated-class-name.js.map +1 -1
- package/build-module/hooks/layout.js +29 -14
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/margin.js +26 -12
- package/build-module/hooks/margin.js.map +1 -1
- package/build-module/hooks/padding.js +17 -8
- package/build-module/hooks/padding.js.map +1 -1
- package/build-module/hooks/style.js +7 -53
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/layouts/constrained.js +197 -0
- package/build-module/layouts/constrained.js.map +1 -0
- package/build-module/layouts/flex.js +1 -1
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/layouts/flow.js +8 -145
- package/build-module/layouts/flow.js.map +1 -1
- package/build-module/layouts/index.js +2 -1
- package/build-module/layouts/index.js.map +1 -1
- package/build-module/layouts/utils.js +40 -0
- package/build-module/layouts/utils.js.map +1 -1
- package/build-module/store/actions.js +25 -3
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/selectors.js +5 -7
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/block-variation-transforms.js +14 -7
- package/build-module/utils/block-variation-transforms.js.map +1 -1
- package/build-module/utils/pasting.js +9 -1
- package/build-module/utils/pasting.js.map +1 -1
- package/build-style/style-rtl.css +154 -27
- package/build-style/style.css +154 -27
- package/package.json +30 -28
- package/src/components/block-alignment-control/use-available-alignments.js +1 -1
- package/src/components/block-edit-visually-button/index.js +39 -0
- package/src/components/block-list/block.js +13 -2
- package/src/components/block-list/index.native.js +1 -1
- package/src/components/block-popover/inbetween.js +5 -1
- package/src/components/block-popover/index.js +22 -13
- package/src/components/block-popover/style.scss +25 -2
- package/src/components/block-settings-menu/index.js +11 -15
- package/src/components/block-styles/index.js +4 -7
- package/src/components/block-styles/style.scss +10 -0
- package/src/components/block-switcher/index.js +9 -13
- package/src/components/block-switcher/test/index.js +1 -0
- package/src/components/block-toolbar/index.js +2 -0
- package/src/components/block-tools/selected-block-popover.js +7 -0
- package/src/components/block-tools/use-block-toolbar-popover-props.js +123 -0
- package/src/components/block-types-list/index.js +1 -1
- package/src/components/border-radius-control/all-input-control.js +41 -4
- package/src/components/border-radius-control/index.js +29 -6
- package/src/components/border-radius-control/input-controls.js +40 -13
- package/src/components/border-radius-control/test/utils.js +22 -60
- package/src/components/border-radius-control/utils.js +12 -16
- package/src/components/color-palette/test/__snapshots__/control.js.snap +93 -77
- package/src/components/colors/utils.js +5 -2
- package/src/components/colors/with-colors.js +11 -1
- package/src/components/colors-gradients/control.js +12 -8
- package/src/components/colors-gradients/dropdown.js +7 -2
- package/src/components/colors-gradients/style.scss +27 -5
- package/src/components/colors-gradients/test/control.js +3 -3
- package/src/components/copy-handler/index.js +18 -0
- package/src/components/date-format-picker/index.js +12 -14
- package/src/components/date-format-picker/style.scss +0 -4
- package/src/components/duotone/components.js +5 -5
- package/src/components/duotone-control/style.scss +0 -4
- package/src/components/font-appearance-control/index.js +3 -0
- package/src/components/font-appearance-control/style.scss +0 -2
- package/src/components/font-family/index.js +1 -1
- package/src/components/font-sizes/with-font-sizes.js +11 -1
- package/src/components/image-size-control/README.md +7 -0
- package/src/components/image-size-control/index.js +2 -0
- package/src/components/index.js +5 -1
- package/src/components/index.native.js +4 -1
- package/src/components/inserter/index.native.js +7 -2
- package/src/components/inserter/search-items.js +17 -5
- package/src/components/inserter-list-item/index.js +1 -17
- package/src/components/letter-spacing-control/index.js +2 -0
- package/src/components/line-height-control/index.js +2 -0
- package/src/components/link-control/is-url-like.js +1 -6
- package/src/components/link-control/link-preview.js +0 -1
- package/src/components/link-control/test/index.js +540 -893
- package/src/components/link-control/use-search-handler.js +1 -6
- package/src/components/list-view/block-select-button.js +7 -2
- package/src/components/list-view/expander.js +4 -2
- package/src/components/list-view/style.scss +11 -4
- package/src/components/list-view/use-block-selection.js +2 -8
- package/src/components/media-replace-flow/style.scss +1 -0
- package/src/components/media-upload/index.native.js +7 -3
- package/src/components/preview-options/index.js +2 -2
- package/src/components/{use-no-recursive-renders → recursion-provider}/index.js +39 -28
- package/src/components/{use-no-recursive-renders/test/use-no-recursive-renders.js → recursion-provider/test/index.js} +5 -6
- package/src/components/rich-text/README.md +13 -1
- package/src/components/rich-text/index.js +2 -0
- package/src/components/rich-text/index.native.js +2 -0
- package/src/components/rich-text/use-before-input-rules.js +91 -0
- package/src/components/rich-text/use-enter.js +0 -3
- package/src/components/rich-text/use-format-types.js +6 -6
- package/src/components/spacing-sizes-control/all-input-control.js +40 -0
- package/src/components/spacing-sizes-control/axial-input-controls.js +62 -0
- package/src/components/spacing-sizes-control/index.js +91 -0
- package/src/components/spacing-sizes-control/input-controls.js +46 -0
- package/src/components/spacing-sizes-control/linked-button.js +25 -0
- package/src/components/spacing-sizes-control/spacing-input-control.js +280 -0
- package/src/components/spacing-sizes-control/style.scss +122 -0
- package/src/components/spacing-sizes-control/test/utils.js +156 -0
- package/src/components/spacing-sizes-control/utils.js +195 -0
- package/src/components/text-decoration-control/index.js +4 -2
- package/src/components/text-transform-control/index.js +4 -2
- package/src/components/url-input/index.js +1 -1
- package/src/components/url-input/style.scss +2 -2
- package/src/components/url-popover/image-url-input-ui.js +3 -0
- package/src/components/url-popover/style.scss +0 -3
- package/src/components/writing-flow/use-arrow-nav.js +4 -33
- package/src/components/writing-flow/use-drag-selection.js +7 -1
- package/src/components/writing-flow/use-multi-selection.js +4 -1
- package/src/components/writing-flow/use-select-all.js +2 -1
- package/src/components/writing-flow/use-selection-observer.js +10 -2
- package/src/hooks/border-radius.js +2 -6
- package/src/hooks/border.js +2 -2
- package/src/hooks/color.js +13 -3
- package/src/hooks/dimensions.js +15 -0
- package/src/hooks/duotone.js +4 -4
- package/src/hooks/gap.js +7 -2
- package/src/hooks/generated-class-name.js +6 -9
- package/src/hooks/layout.js +53 -16
- package/src/hooks/margin.js +49 -17
- package/src/hooks/padding.js +41 -14
- package/src/hooks/style.js +5 -56
- package/src/hooks/test/gap.js +22 -0
- package/src/hooks/typography.scss +0 -1
- package/src/layouts/constrained.js +217 -0
- package/src/layouts/flex.js +1 -1
- package/src/layouts/flow.js +6 -164
- package/src/layouts/index.js +2 -1
- package/src/layouts/test/constrained.js +21 -0
- package/src/layouts/utils.js +34 -0
- package/src/store/actions.js +32 -4
- package/src/store/selectors.js +5 -4
- package/src/style.scss +1 -0
- package/src/utils/block-variation-transforms.js +13 -6
- package/src/utils/pasting.js +10 -1
- package/src/utils/test/block-variation-transforms.js +24 -0
- package/src/utils/test/pasting.js +10 -0
- package/build/components/block-settings-menu/block-edit-visually-button.js +0 -70
- package/build/components/block-settings-menu/block-edit-visually-button.js.map +0 -1
- package/build/components/use-no-recursive-renders/index.js.map +0 -1
- package/build-module/components/block-settings-menu/block-edit-visually-button.js +0 -56
- package/build-module/components/block-settings-menu/block-edit-visually-button.js.map +0 -1
- package/build-module/components/use-no-recursive-renders/index.js.map +0 -1
- package/src/components/block-settings-menu/block-edit-visually-button.js +0 -52
|
@@ -61,7 +61,12 @@ const LabeledColorIndicator = ( { colorValue, label } ) => (
|
|
|
61
61
|
className="block-editor-panel-color-gradient-settings__color-indicator"
|
|
62
62
|
colorValue={ colorValue }
|
|
63
63
|
/>
|
|
64
|
-
<FlexItem
|
|
64
|
+
<FlexItem
|
|
65
|
+
className="block-editor-panel-color-gradient-settings__color-name"
|
|
66
|
+
title={ label }
|
|
67
|
+
>
|
|
68
|
+
{ label }
|
|
69
|
+
</FlexItem>
|
|
65
70
|
</HStack>
|
|
66
71
|
);
|
|
67
72
|
|
|
@@ -158,7 +163,7 @@ export default function ColorGradientSettingsDropdown( {
|
|
|
158
163
|
className="block-editor-tools-panel-color-gradient-settings__dropdown"
|
|
159
164
|
renderToggle={ renderToggle( toggleSettings ) }
|
|
160
165
|
renderContent={ () => (
|
|
161
|
-
<DropdownContentWrapper paddingSize="
|
|
166
|
+
<DropdownContentWrapper paddingSize="none">
|
|
162
167
|
<div className="block-editor-panel-color-gradient-settings__dropdown-content">
|
|
163
168
|
<ColorGradientControl
|
|
164
169
|
{ ...controlProps }
|
|
@@ -15,6 +15,12 @@ $swatch-gap: 12px;
|
|
|
15
15
|
min-width: 0;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
.block-editor-color-gradient-control__tabs {
|
|
19
|
+
.block-editor-color-gradient-control__panel {
|
|
20
|
+
padding: $grid-unit-20;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
18
24
|
.block-editor-panel-color-gradient-settings.block-editor-panel-color-gradient-settings {
|
|
19
25
|
&,
|
|
20
26
|
& > div:not(:first-of-type) {
|
|
@@ -41,7 +47,13 @@ $swatch-gap: 12px;
|
|
|
41
47
|
}
|
|
42
48
|
|
|
43
49
|
.block-editor-panel-color-gradient-settings__dropdown-content {
|
|
44
|
-
|
|
50
|
+
.block-editor-color-gradient-control__panel {
|
|
51
|
+
$panelPadding: $grid-unit-20;
|
|
52
|
+
|
|
53
|
+
// Ensure the popover perfectly wraps the swatches.
|
|
54
|
+
width: ( $swatch-size * 6 ) + ( $swatch-gap * 5 ) + ( $panelPadding * 2 );
|
|
55
|
+
padding: $panelPadding;
|
|
56
|
+
}
|
|
45
57
|
}
|
|
46
58
|
|
|
47
59
|
.block-editor-panel-color-gradient-settings__color-indicator {
|
|
@@ -58,6 +70,7 @@ $swatch-gap: 12px;
|
|
|
58
70
|
*/
|
|
59
71
|
.block-editor-tools-panel-color-gradient-settings__item {
|
|
60
72
|
padding: 0;
|
|
73
|
+
max-width: 100%;
|
|
61
74
|
|
|
62
75
|
// Border styles.
|
|
63
76
|
border-left: 1px solid rgba(0, 0, 0, 0.1);
|
|
@@ -87,19 +100,28 @@ $swatch-gap: 12px;
|
|
|
87
100
|
padding: 0;
|
|
88
101
|
|
|
89
102
|
> button {
|
|
90
|
-
height:
|
|
103
|
+
height: auto;
|
|
104
|
+
padding-top: $grid-unit * 1.25;
|
|
105
|
+
padding-bottom: $grid-unit * 1.25;
|
|
106
|
+
text-align: left;
|
|
91
107
|
|
|
92
108
|
&.is-open {
|
|
93
109
|
background: $gray-100;
|
|
94
110
|
color: var(--wp-admin-theme-color);
|
|
95
111
|
}
|
|
96
112
|
}
|
|
113
|
+
|
|
114
|
+
.block-editor-panel-color-gradient-settings__color-name {
|
|
115
|
+
white-space: nowrap;
|
|
116
|
+
overflow: hidden;
|
|
117
|
+
text-overflow: ellipsis;
|
|
118
|
+
}
|
|
97
119
|
}
|
|
98
120
|
|
|
99
121
|
.block-editor-panel-color-gradient-settings__dropdown {
|
|
100
122
|
width: 100%;
|
|
101
|
-
}
|
|
102
123
|
|
|
103
|
-
.
|
|
104
|
-
|
|
124
|
+
.component-color-indicator {
|
|
125
|
+
flex-shrink: 0;
|
|
126
|
+
}
|
|
105
127
|
}
|
|
@@ -53,7 +53,7 @@ describe( 'ColorPaletteControl', () => {
|
|
|
53
53
|
|
|
54
54
|
// Is showing the two tab buttons.
|
|
55
55
|
expect(
|
|
56
|
-
screen.getByRole( 'tab', { name: 'Solid
|
|
56
|
+
screen.getByRole( 'tab', { name: 'Solid' } )
|
|
57
57
|
).toBeInTheDocument();
|
|
58
58
|
expect(
|
|
59
59
|
screen.getByRole( 'tab', { name: 'Gradient' } )
|
|
@@ -86,7 +86,7 @@ describe( 'ColorPaletteControl', () => {
|
|
|
86
86
|
|
|
87
87
|
// Is not showing the two tab buttons.
|
|
88
88
|
expect(
|
|
89
|
-
screen.queryByRole( 'tab', { name: 'Solid
|
|
89
|
+
screen.queryByRole( 'tab', { name: 'Solid' } )
|
|
90
90
|
).not.toBeInTheDocument();
|
|
91
91
|
expect(
|
|
92
92
|
screen.queryByRole( 'tab', { name: 'Gradient' } )
|
|
@@ -133,7 +133,7 @@ describe( 'ColorPaletteControl', () => {
|
|
|
133
133
|
|
|
134
134
|
// Is not showing the two tab buttons.
|
|
135
135
|
expect(
|
|
136
|
-
screen.queryByRole( 'tab', { name: 'Solid
|
|
136
|
+
screen.queryByRole( 'tab', { name: 'Solid' } )
|
|
137
137
|
).not.toBeInTheDocument();
|
|
138
138
|
expect(
|
|
139
139
|
screen.queryByRole( 'tab', { name: 'Gradient' } )
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
serialize,
|
|
7
7
|
pasteHandler,
|
|
8
8
|
store as blocksStore,
|
|
9
|
+
createBlock,
|
|
9
10
|
} from '@wordpress/blocks';
|
|
10
11
|
import {
|
|
11
12
|
documentHasSelection,
|
|
@@ -155,6 +156,23 @@ export function useClipboardHandler() {
|
|
|
155
156
|
);
|
|
156
157
|
blocks = [ head, ...inBetweenBlocks, tail ];
|
|
157
158
|
}
|
|
159
|
+
|
|
160
|
+
const wrapperBlockName = event.clipboardData.getData(
|
|
161
|
+
'__unstableWrapperBlockName'
|
|
162
|
+
);
|
|
163
|
+
|
|
164
|
+
if ( wrapperBlockName ) {
|
|
165
|
+
blocks = createBlock(
|
|
166
|
+
wrapperBlockName,
|
|
167
|
+
JSON.parse(
|
|
168
|
+
event.clipboardData.getData(
|
|
169
|
+
'__unstableWrapperBlockAttributes'
|
|
170
|
+
)
|
|
171
|
+
),
|
|
172
|
+
blocks
|
|
173
|
+
);
|
|
174
|
+
}
|
|
175
|
+
|
|
158
176
|
const serialized = serialize( blocks );
|
|
159
177
|
|
|
160
178
|
event.clipboardData.setData(
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* External dependencies
|
|
3
|
-
*/
|
|
4
|
-
import { uniq } from 'lodash';
|
|
5
|
-
|
|
6
1
|
/**
|
|
7
2
|
* WordPress dependencies
|
|
8
3
|
*/
|
|
@@ -83,15 +78,17 @@ function NonDefaultControls( { format, onChange } ) {
|
|
|
83
78
|
// 2022) in German (de). The resultant array is de-duplicated as some
|
|
84
79
|
// languages will use the same format string for short, medium, and long
|
|
85
80
|
// formats.
|
|
86
|
-
const suggestedFormats =
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
81
|
+
const suggestedFormats = [
|
|
82
|
+
...new Set( [
|
|
83
|
+
'Y-m-d',
|
|
84
|
+
_x( 'n/j/Y', 'short date format' ),
|
|
85
|
+
_x( 'n/j/Y g:i A', 'short date format with time' ),
|
|
86
|
+
_x( 'M j, Y', 'medium date format' ),
|
|
87
|
+
_x( 'M j, Y g:i A', 'medium date format with time' ),
|
|
88
|
+
_x( 'F j, Y', 'long date format' ),
|
|
89
|
+
_x( 'M j', 'short date format without the year' ),
|
|
90
|
+
] ),
|
|
91
|
+
];
|
|
95
92
|
|
|
96
93
|
const suggestedOptions = suggestedFormats.map(
|
|
97
94
|
( suggestedFormat, index ) => ( {
|
|
@@ -116,6 +113,7 @@ function NonDefaultControls( { format, onChange } ) {
|
|
|
116
113
|
<>
|
|
117
114
|
<BaseControl className="block-editor-date-format-picker__custom-format-select-control">
|
|
118
115
|
<CustomSelectControl
|
|
116
|
+
__nextUnconstrainedWidth
|
|
119
117
|
label={ __( 'Choose a format' ) }
|
|
120
118
|
options={ [ ...suggestedOptions, customOption ] }
|
|
121
119
|
value={
|
|
@@ -11,9 +11,9 @@ import { __unstableGetValuesFromColors as getValuesFromColors } from './index';
|
|
|
11
11
|
/**
|
|
12
12
|
* SVG and stylesheet needed for rendering the duotone filter.
|
|
13
13
|
*
|
|
14
|
-
* @param {Object}
|
|
15
|
-
* @param {string}
|
|
16
|
-
* @param {string}
|
|
14
|
+
* @param {Object} props Duotone props.
|
|
15
|
+
* @param {string} props.selector Selector to apply the filter to.
|
|
16
|
+
* @param {string} props.id Unique id for this duotone filter.
|
|
17
17
|
*
|
|
18
18
|
* @return {WPElement} Duotone element.
|
|
19
19
|
*/
|
|
@@ -29,8 +29,8 @@ ${ selector } {
|
|
|
29
29
|
/**
|
|
30
30
|
* Stylesheet for disabling a global styles duotone filter.
|
|
31
31
|
*
|
|
32
|
-
* @param {Object}
|
|
33
|
-
* @param {string}
|
|
32
|
+
* @param {Object} props Duotone props.
|
|
33
|
+
* @param {string} props.selector Selector to disable the filter for.
|
|
34
34
|
*
|
|
35
35
|
* @return {WPElement} Filter none style element.
|
|
36
36
|
*/
|
|
@@ -18,10 +18,6 @@ $swatch-columns: math.floor(math.div($popover-width + $swatch-gap - 2 * $popover
|
|
|
18
18
|
padding: 0;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
.components-custom-gradient-picker__gradient-bar {
|
|
22
|
-
margin: $grid-unit-20 0 $grid-unit-15;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
21
|
.components-circular-option-picker__swatches {
|
|
26
22
|
display: grid;
|
|
27
23
|
grid-template-columns: repeat($swatch-columns, $swatch-size);
|
|
@@ -88,6 +88,7 @@ export default function FontAppearanceControl( props ) {
|
|
|
88
88
|
hasFontStyles = true,
|
|
89
89
|
hasFontWeights = true,
|
|
90
90
|
value: { fontStyle, fontWeight },
|
|
91
|
+
...otherProps
|
|
91
92
|
} = props;
|
|
92
93
|
const hasStylesOrWeights = hasFontStyles || hasFontWeights;
|
|
93
94
|
const label = getFontAppearanceLabel( hasFontStyles, hasFontWeights );
|
|
@@ -205,6 +206,7 @@ export default function FontAppearanceControl( props ) {
|
|
|
205
206
|
return (
|
|
206
207
|
hasStylesOrWeights && (
|
|
207
208
|
<CustomSelectControl
|
|
209
|
+
{ ...otherProps }
|
|
208
210
|
className="components-font-appearance-control"
|
|
209
211
|
label={ label }
|
|
210
212
|
describedBy={ getDescribedBy() }
|
|
@@ -213,6 +215,7 @@ export default function FontAppearanceControl( props ) {
|
|
|
213
215
|
onChange={ ( { selectedItem } ) =>
|
|
214
216
|
onChange( selectedItem.style )
|
|
215
217
|
}
|
|
218
|
+
__nextUnconstrainedWidth
|
|
216
219
|
/>
|
|
217
220
|
)
|
|
218
221
|
);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { find, pickBy, reduce, some
|
|
4
|
+
import { find, pickBy, reduce, some } from 'lodash';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -17,6 +17,16 @@ import useSetting from '../use-setting';
|
|
|
17
17
|
|
|
18
18
|
const DEFAULT_FONT_SIZES = [];
|
|
19
19
|
|
|
20
|
+
/**
|
|
21
|
+
* Capitalizes the first letter in a string.
|
|
22
|
+
*
|
|
23
|
+
* @param {string} str The string whose first letter the function will capitalize.
|
|
24
|
+
*
|
|
25
|
+
* @return {string} Capitalized string.
|
|
26
|
+
*/
|
|
27
|
+
const upperFirst = ( [ firstLetter, ...rest ] ) =>
|
|
28
|
+
firstLetter.toUpperCase() + rest.join( '' );
|
|
29
|
+
|
|
20
30
|
/**
|
|
21
31
|
* Higher-order component, which handles font size logic for class generation,
|
|
22
32
|
* font size value retrieval, and font size change handling.
|
|
@@ -32,6 +32,13 @@ const MyImageSizeControl = () => {
|
|
|
32
32
|
|
|
33
33
|
The component accepts the following props:
|
|
34
34
|
|
|
35
|
+
### imageSizeHelp
|
|
36
|
+
|
|
37
|
+
If this property is added, a help text will be generated for the image size control, using imageSizeHelp property as the content.
|
|
38
|
+
|
|
39
|
+
- Type: `String|WPElement`
|
|
40
|
+
- Required: No
|
|
41
|
+
|
|
35
42
|
### slug
|
|
36
43
|
|
|
37
44
|
The currently-selected image size slug (`thumbnail`, `large`, etc). This is used by the parent component to get the specific image, which is used to populate `imageHeight` & `imageWidth`. This is not required, but necessary when `imageSizeOptions` is used.
|
|
@@ -23,6 +23,7 @@ const IMAGE_SIZE_PRESETS = [ 25, 50, 75, 100 ];
|
|
|
23
23
|
const noop = () => {};
|
|
24
24
|
|
|
25
25
|
export default function ImageSizeControl( {
|
|
26
|
+
imageSizeHelp,
|
|
26
27
|
imageWidth,
|
|
27
28
|
imageHeight,
|
|
28
29
|
imageSizeOptions = [],
|
|
@@ -44,6 +45,7 @@ export default function ImageSizeControl( {
|
|
|
44
45
|
value={ slug }
|
|
45
46
|
options={ imageSizeOptions }
|
|
46
47
|
onChange={ onChangeImage }
|
|
48
|
+
help={ imageSizeHelp }
|
|
47
49
|
/>
|
|
48
50
|
) }
|
|
49
51
|
{ isResizable && (
|
package/src/components/index.js
CHANGED
|
@@ -93,6 +93,7 @@ export { default as URLInputButton } from './url-input/button';
|
|
|
93
93
|
export { default as URLPopover } from './url-popover';
|
|
94
94
|
export { __experimentalImageURLInputUI } from './url-popover/image-url-input-ui';
|
|
95
95
|
export { default as withColorContext } from './color-palette/with-color-context';
|
|
96
|
+
export { default as __experimentalSpacingSizesControl } from './spacing-sizes-control';
|
|
96
97
|
|
|
97
98
|
/*
|
|
98
99
|
* Content Related Components
|
|
@@ -147,7 +148,10 @@ export { default as Warning } from './warning';
|
|
|
147
148
|
export { default as WritingFlow } from './writing-flow';
|
|
148
149
|
export { default as useBlockDisplayInformation } from './use-block-display-information';
|
|
149
150
|
export { default as __unstableIframe } from './iframe';
|
|
150
|
-
export {
|
|
151
|
+
export {
|
|
152
|
+
RecursionProvider as __experimentalRecursionProvider,
|
|
153
|
+
useHasRecursion as __experimentalUseHasRecursion,
|
|
154
|
+
} from './recursion-provider';
|
|
151
155
|
export { default as __experimentalBlockPatternsList } from './block-patterns-list';
|
|
152
156
|
export { default as __experimentalPublishDateTimePicker } from './publish-date-time-picker';
|
|
153
157
|
export { default as __experimentalInspectorPopoverHeader } from './inspector-popover-header';
|
|
@@ -59,7 +59,10 @@ export { default as Caption } from './caption';
|
|
|
59
59
|
export { default as PanelColorSettings } from './panel-color-settings';
|
|
60
60
|
export { default as __experimentalPanelColorGradientSettings } from './colors-gradients/panel-color-gradient-settings';
|
|
61
61
|
export { default as useSetting } from './use-setting';
|
|
62
|
-
export {
|
|
62
|
+
export {
|
|
63
|
+
RecursionProvider as __experimentalRecursionProvider,
|
|
64
|
+
useHasRecursion as __experimentalUseHasRecursion,
|
|
65
|
+
} from './recursion-provider';
|
|
63
66
|
export { default as Warning } from './warning';
|
|
64
67
|
export { default as ContrastChecker } from './contrast-checker';
|
|
65
68
|
export { default as useMultipleOriginColorsAndGradients } from './colors-gradients/use-multiple-origin-colors-and-gradients';
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { AccessibilityInfo, Platform, Text } from 'react-native';
|
|
5
|
-
import { delay } from 'lodash';
|
|
6
5
|
|
|
7
6
|
/**
|
|
8
7
|
* WordPress dependencies
|
|
@@ -80,6 +79,8 @@ const defaultRenderToggle = ( {
|
|
|
80
79
|
};
|
|
81
80
|
|
|
82
81
|
export class Inserter extends Component {
|
|
82
|
+
announcementTimeout;
|
|
83
|
+
|
|
83
84
|
constructor() {
|
|
84
85
|
super( ...arguments );
|
|
85
86
|
|
|
@@ -88,6 +89,10 @@ export class Inserter extends Component {
|
|
|
88
89
|
this.renderContent = this.renderContent.bind( this );
|
|
89
90
|
}
|
|
90
91
|
|
|
92
|
+
componentWillUnmount() {
|
|
93
|
+
clearTimeout( this.announcementTimeout );
|
|
94
|
+
}
|
|
95
|
+
|
|
91
96
|
getInsertionOptions() {
|
|
92
97
|
const addBeforeOption = {
|
|
93
98
|
value: 'before',
|
|
@@ -217,7 +222,7 @@ export class Inserter extends Component {
|
|
|
217
222
|
const announcement = isOpen
|
|
218
223
|
? __( 'Scrollable block menu opened. Select a block.' )
|
|
219
224
|
: __( 'Scrollable block menu closed.' );
|
|
220
|
-
|
|
225
|
+
this.announcementTimeout = setTimeout(
|
|
221
226
|
() =>
|
|
222
227
|
AccessibilityInfo.announceForAccessibility(
|
|
223
228
|
announcement
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { noCase } from 'change-case';
|
|
5
|
+
import removeAccents from 'remove-accents';
|
|
6
|
+
import { find } from 'lodash';
|
|
5
7
|
|
|
6
8
|
// Default search helpers.
|
|
7
9
|
const defaultGetName = ( item ) => item.name || '';
|
|
@@ -21,7 +23,7 @@ const defaultGetCollection = () => null;
|
|
|
21
23
|
function normalizeSearchInput( input = '' ) {
|
|
22
24
|
// Disregard diacritics.
|
|
23
25
|
// Input: "média"
|
|
24
|
-
input =
|
|
26
|
+
input = removeAccents( input );
|
|
25
27
|
|
|
26
28
|
// Accommodate leading slash, matching autocomplete expectations.
|
|
27
29
|
// Input: "/media"
|
|
@@ -34,6 +36,17 @@ function normalizeSearchInput( input = '' ) {
|
|
|
34
36
|
return input;
|
|
35
37
|
}
|
|
36
38
|
|
|
39
|
+
/**
|
|
40
|
+
* Extracts words from an input string.
|
|
41
|
+
*
|
|
42
|
+
* @param {string} input The input string.
|
|
43
|
+
*
|
|
44
|
+
* @return {Array} Words, extracted from the input string.
|
|
45
|
+
*/
|
|
46
|
+
function extractWords( input = '' ) {
|
|
47
|
+
return noCase( input ).split( ' ' ).filter( Boolean );
|
|
48
|
+
}
|
|
49
|
+
|
|
37
50
|
/**
|
|
38
51
|
* Converts the search term into a list of normalized terms.
|
|
39
52
|
*
|
|
@@ -42,8 +55,7 @@ function normalizeSearchInput( input = '' ) {
|
|
|
42
55
|
* @return {string[]} The normalized list of search terms.
|
|
43
56
|
*/
|
|
44
57
|
export const getNormalizedSearchTerms = ( input = '' ) => {
|
|
45
|
-
|
|
46
|
-
return words( normalizeSearchInput( input ) );
|
|
58
|
+
return extractWords( normalizeSearchInput( input ) );
|
|
47
59
|
};
|
|
48
60
|
|
|
49
61
|
const removeMatchingTerms = ( unmatchedTerms, unprocessedTerms ) => {
|
|
@@ -150,7 +162,7 @@ export function getItemSearchRank( item, searchTerm, config = {} ) {
|
|
|
150
162
|
category,
|
|
151
163
|
collection,
|
|
152
164
|
].join( ' ' );
|
|
153
|
-
const normalizedSearchTerms =
|
|
165
|
+
const normalizedSearchTerms = extractWords( normalizedSearchInput );
|
|
154
166
|
const unmatchedTerms = removeMatchingTerms(
|
|
155
167
|
normalizedSearchTerms,
|
|
156
168
|
terms
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
createBlocksFromInnerBlocksTemplate,
|
|
13
13
|
} from '@wordpress/blocks';
|
|
14
14
|
import { __experimentalTruncate as Truncate } from '@wordpress/components';
|
|
15
|
-
import { ENTER } from '@wordpress/keycodes';
|
|
15
|
+
import { ENTER, isAppleOS } from '@wordpress/keycodes';
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* Internal dependencies
|
|
@@ -21,22 +21,6 @@ import BlockIcon from '../block-icon';
|
|
|
21
21
|
import { InserterListboxItem } from '../inserter-listbox';
|
|
22
22
|
import InserterDraggableBlocks from '../inserter-draggable-blocks';
|
|
23
23
|
|
|
24
|
-
/**
|
|
25
|
-
* Return true if platform is MacOS.
|
|
26
|
-
*
|
|
27
|
-
* @param {Object} _window window object by default; used for DI testing.
|
|
28
|
-
*
|
|
29
|
-
* @return {boolean} True if MacOS; false otherwise.
|
|
30
|
-
*/
|
|
31
|
-
function isAppleOS( _window = window ) {
|
|
32
|
-
const { platform } = _window.navigator;
|
|
33
|
-
|
|
34
|
-
return (
|
|
35
|
-
platform.indexOf( 'Mac' ) !== -1 ||
|
|
36
|
-
[ 'iPad', 'iPhone' ].includes( platform )
|
|
37
|
-
);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
24
|
function InserterListItem( {
|
|
41
25
|
className,
|
|
42
26
|
isFirst,
|
|
@@ -26,6 +26,7 @@ export default function LetterSpacingControl( {
|
|
|
26
26
|
value,
|
|
27
27
|
onChange,
|
|
28
28
|
__unstableInputWidth = '60px',
|
|
29
|
+
...otherProps
|
|
29
30
|
} ) {
|
|
30
31
|
const units = useCustomUnits( {
|
|
31
32
|
availableUnits: useSetting( 'spacing.units' ) || [ 'px', 'em', 'rem' ],
|
|
@@ -33,6 +34,7 @@ export default function LetterSpacingControl( {
|
|
|
33
34
|
} );
|
|
34
35
|
return (
|
|
35
36
|
<UnitControl
|
|
37
|
+
{ ...otherProps }
|
|
36
38
|
label={ __( 'Letter spacing' ) }
|
|
37
39
|
value={ value }
|
|
38
40
|
__unstableInputWidth={ __unstableInputWidth }
|
|
@@ -21,6 +21,7 @@ const LineHeightControl = ( {
|
|
|
21
21
|
/** Start opting into the new margin-free styles that will become the default in a future version. */
|
|
22
22
|
__nextHasNoMarginBottom = false,
|
|
23
23
|
__unstableInputWidth = '60px',
|
|
24
|
+
...otherProps
|
|
24
25
|
} ) => {
|
|
25
26
|
const isDefined = isLineHeightDefined( lineHeight );
|
|
26
27
|
|
|
@@ -89,6 +90,7 @@ const LineHeightControl = ( {
|
|
|
89
90
|
style={ deprecatedStyles }
|
|
90
91
|
>
|
|
91
92
|
<NumberControl
|
|
93
|
+
{ ...otherProps }
|
|
92
94
|
__unstableInputWidth={ __unstableInputWidth }
|
|
93
95
|
__unstableStateReducer={ stateReducer }
|
|
94
96
|
onChange={ onChange }
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* External dependencies
|
|
3
|
-
*/
|
|
4
|
-
import { startsWith } from 'lodash';
|
|
5
|
-
|
|
6
1
|
/**
|
|
7
2
|
* WordPress dependencies
|
|
8
3
|
*/
|
|
@@ -20,6 +15,6 @@ import { isURL } from '@wordpress/url';
|
|
|
20
15
|
* @return {boolean} whether or not the value is potentially a URL.
|
|
21
16
|
*/
|
|
22
17
|
export default function isURLLike( val ) {
|
|
23
|
-
const isInternal = startsWith(
|
|
18
|
+
const isInternal = val?.startsWith( '#' );
|
|
24
19
|
return isURL( val ) || ( val && val.includes( 'www.' ) ) || isInternal;
|
|
25
20
|
}
|