@wordpress/block-editor 9.2.0 → 9.5.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 +10 -0
- package/README.md +1 -8
- package/build/autocompleters/block.js +3 -1
- package/build/autocompleters/block.js.map +1 -1
- package/build/components/block-actions/index.js.map +1 -1
- package/build/components/block-alignment-control/ui.js.map +1 -1
- package/build/components/block-alignment-matrix-control/index.js +3 -7
- package/build/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build/components/block-breadcrumb/index.js.map +1 -1
- package/build/components/block-content-overlay/index.js.map +1 -1
- package/build/components/block-context/index.js.map +1 -1
- package/build/components/block-controls/hook.js.map +1 -1
- package/build/components/block-draggable/index.js.map +1 -1
- package/build/components/block-draggable/index.native.js.map +1 -1
- package/build/components/block-list/block-invalid-warning.native.js +54 -6
- package/build/components/block-list/block-invalid-warning.native.js.map +1 -1
- package/build/components/block-list/block-list-item.native.js.map +1 -1
- package/build/components/block-list/block-selection-button.native.js.map +1 -1
- package/build/components/block-list/block.js +2 -2
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/block.native.js +2 -1
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/index.js.map +1 -1
- package/build/components/block-list/index.native.js +4 -3
- package/build/components/block-list/index.native.js.map +1 -1
- package/build/components/block-list/layout.js +20 -5
- package/build/components/block-list/layout.js.map +1 -1
- package/build/components/block-list/use-block-props/index.js.map +1 -1
- package/build/components/block-list/use-block-props/use-block-class-names.js +5 -2
- package/build/components/block-list/use-block-props/use-block-class-names.js.map +1 -1
- package/build/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
- package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
- package/build/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build/components/block-list-appender/index.js.map +1 -1
- package/build/components/block-list-appender/index.native.js.map +1 -1
- package/build/components/block-lock/modal.js +35 -5
- package/build/components/block-lock/modal.js.map +1 -1
- package/build/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-mover/index.native.js.map +1 -1
- package/build/components/block-parent-selector/index.js.map +1 -1
- package/build/components/block-pattern-setup/index.js +8 -26
- package/build/components/block-pattern-setup/index.js.map +1 -1
- package/build/components/block-pattern-setup/setup-toolbar.js +3 -8
- package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build/components/block-popover/inbetween.js +1 -1
- package/build/components/block-popover/inbetween.js.map +1 -1
- package/build/components/block-popover/index.js +1 -1
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-preview/auto.js +21 -5
- package/build/components/block-preview/auto.js.map +1 -1
- package/build/components/block-selection-clearer/index.js.map +1 -1
- package/build/components/block-settings-menu/block-edit-visually-button.js +70 -0
- package/build/components/block-settings-menu/block-edit-visually-button.js.map +1 -0
- package/build/components/block-settings-menu/block-mode-toggle.js +4 -8
- package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js +10 -4
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu/index.js +6 -2
- package/build/components/block-settings-menu/index.js.map +1 -1
- package/build/components/block-settings-menu-controls/index.js +4 -1
- package/build/components/block-settings-menu-controls/index.js.map +1 -1
- package/build/components/block-styles/index.js +6 -3
- package/build/components/block-styles/index.js.map +1 -1
- package/build/components/block-styles/menu-items.js +3 -7
- package/build/components/block-styles/menu-items.js.map +1 -1
- package/build/components/block-styles/preview.native.js +3 -1
- package/build/components/block-styles/preview.native.js.map +1 -1
- package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
- package/build/components/block-switcher/index.js +7 -1
- package/build/components/block-switcher/index.js.map +1 -1
- package/build/components/block-title/index.js +8 -2
- package/build/components/block-title/index.js.map +1 -1
- package/build/components/block-title/use-block-display-title.js +15 -15
- package/build/components/block-title/use-block-display-title.js.map +1 -1
- package/build/components/block-toolbar/index.native.js.map +1 -1
- package/build/components/block-toolbar/utils.js +5 -8
- package/build/components/block-toolbar/utils.js.map +1 -1
- package/build/components/block-tools/block-contextual-toolbar.js +1 -1
- package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-types-list/index.native.js.map +1 -1
- package/build/components/block-variation-transforms/index.js.map +1 -1
- package/build/components/border-radius-control/index.js +2 -0
- package/build/components/border-radius-control/index.js.map +1 -1
- package/build/components/color-style-selector/index.js.map +1 -1
- package/build/components/colors/with-colors.js +1 -1
- package/build/components/colors/with-colors.js.map +1 -1
- package/build/components/colors-gradients/control.js +45 -39
- package/build/components/colors-gradients/control.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +2 -1
- package/build/components/colors-gradients/dropdown.js.map +1 -1
- package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build/components/copy-handler/index.js +17 -1
- package/build/components/copy-handler/index.js.map +1 -1
- package/build/components/date-format-picker/index.js +1 -1
- package/build/components/date-format-picker/index.js.map +1 -1
- package/build/components/default-block-appender/index.js.map +1 -1
- package/build/components/default-block-appender/index.native.js.map +1 -1
- package/build/components/default-style-picker/index.js.map +1 -1
- package/build/components/duotone/components.js +145 -0
- package/build/components/duotone/components.js.map +1 -0
- package/build/components/duotone/index.js +40 -0
- package/build/components/duotone/index.js.map +1 -0
- package/build/components/duotone/utils.js +38 -0
- package/build/components/duotone/utils.js.map +1 -0
- package/build/components/duotone-control/index.js +17 -5
- package/build/components/duotone-control/index.js.map +1 -1
- package/build/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build/components/iframe/index.js +19 -6
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/image-editor/aspect-ratio-dropdown.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 +32 -0
- package/build/components/index.js.map +1 -1
- package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
- package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build/components/inserter/block-types-tab.native.js.map +1 -1
- package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
- package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build/components/inserter/index.js +3 -3
- package/build/components/inserter/index.js.map +1 -1
- package/build/components/inserter/index.native.js.map +1 -1
- package/build/components/inserter/library.js +3 -7
- package/build/components/inserter/library.js.map +1 -1
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/menu.native.js.map +1 -1
- package/build/components/inserter/no-results.native.js.map +1 -1
- package/build/components/inserter/quick-inserter.js.map +1 -1
- package/build/components/inserter/search-items.js +1 -1
- package/build/components/inserter/search-items.js.map +1 -1
- package/build/components/inserter/search-results.native.js.map +1 -1
- package/build/components/inspector-popover-header/index.js +56 -0
- package/build/components/inspector-popover-header/index.js.map +1 -0
- package/build/components/line-height-control/index.js.map +1 -1
- package/build/components/link-control/index.js +5 -5
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/search-create-button.js +1 -3
- package/build/components/link-control/search-create-button.js.map +1 -1
- package/build/components/link-control/search-input.js +5 -3
- package/build/components/link-control/search-input.js.map +1 -1
- package/build/components/link-control/settings-drawer.js +3 -7
- package/build/components/link-control/settings-drawer.js.map +1 -1
- package/build/components/link-control/use-search-handler.js.map +1 -1
- package/build/components/list-view/block-contents.js.map +1 -1
- package/build/components/list-view/block-select-button.js +15 -7
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/branch.js.map +1 -1
- package/build/components/list-view/drop-indicator.js +1 -1
- package/build/components/list-view/drop-indicator.js.map +1 -1
- package/build/components/list-view/index.js.map +1 -1
- package/build/components/list-view/use-block-selection.js.map +1 -1
- package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build/components/list-view/utils.js +1 -7
- package/build/components/list-view/utils.js.map +1 -1
- package/build/components/media-placeholder/index.js +18 -6
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-placeholder/index.native.js +4 -4
- package/build/components/media-placeholder/index.native.js.map +1 -1
- package/build/components/media-replace-flow/index.js +25 -17
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/media-upload/index.native.js +1 -1
- package/build/components/media-upload/index.native.js.map +1 -1
- package/build/components/navigable-toolbar/index.js.map +1 -1
- package/build/components/plain-text/index.native.js.map +1 -1
- package/build/components/preview-options/index.js +4 -0
- package/build/components/preview-options/index.js.map +1 -1
- package/build/components/provider/use-block-sync.js +5 -3
- package/build/components/provider/use-block-sync.js.map +1 -1
- package/build/components/publish-date-time-picker/index.js +17 -16
- package/build/components/publish-date-time-picker/index.js.map +1 -1
- package/build/components/rich-text/embed-handler-picker.native.js +4 -8
- package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/use-format-types.js.map +1 -1
- package/build/components/rich-text/use-input-rules.js +4 -13
- package/build/components/rich-text/use-input-rules.js.map +1 -1
- package/build/components/rich-text/use-mark-persistent.js.map +1 -1
- package/build/components/rich-text/use-paste-handler.js +20 -5
- package/build/components/rich-text/use-paste-handler.js.map +1 -1
- package/build/components/skip-to-selected-block/index.js.map +1 -1
- package/build/components/ungroup-button/index.native.js +3 -7
- package/build/components/ungroup-button/index.native.js.map +1 -1
- package/build/components/url-input/index.js +14 -3
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/url-popover/index.js +2 -1
- package/build/components/url-popover/index.js.map +1 -1
- package/build/components/use-block-display-information/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build/components/use-display-block-controls/index.native.js.map +1 -1
- package/build/components/use-on-block-drop/index.js.map +1 -1
- package/build/components/use-on-block-drop/index.native.js.map +1 -1
- package/build/components/use-setting/index.js.map +1 -1
- package/build/components/writing-flow/use-arrow-nav.js +46 -14
- package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build/components/writing-flow/use-click-selection.js.map +1 -1
- package/build/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build/components/writing-flow/use-multi-selection.js +3 -47
- package/build/components/writing-flow/use-multi-selection.js.map +1 -1
- package/build/components/writing-flow/use-select-all.js.map +1 -1
- package/build/components/writing-flow/use-selection-observer.js +1 -3
- package/build/components/writing-flow/use-selection-observer.js.map +1 -1
- package/build/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build/elements/index.js +11 -3
- package/build/elements/index.js.map +1 -1
- package/build/hooks/aria-label.js +71 -0
- package/build/hooks/aria-label.js.map +1 -0
- package/build/hooks/color-panel.js.map +1 -1
- package/build/hooks/color-panel.native.js.map +1 -1
- package/build/hooks/color.js +2 -4
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/duotone.js +33 -160
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/font-family.js.map +1 -1
- package/build/hooks/gap.js.map +1 -1
- package/build/hooks/index.js +11 -7
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/layout.js +74 -8
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/utils.js +5 -3
- package/build/hooks/utils.js.map +1 -1
- package/build/index.js +7 -7
- package/build/index.js.map +1 -1
- package/build/layouts/flex.js +42 -38
- package/build/layouts/flex.js.map +1 -1
- package/build/layouts/flow.js +10 -35
- package/build/layouts/flow.js.map +1 -1
- package/build/layouts/utils.js +35 -3
- package/build/layouts/utils.js.map +1 -1
- package/build/store/actions.js +24 -31
- package/build/store/actions.js.map +1 -1
- package/build/store/index.js +0 -4
- package/build/store/index.js.map +1 -1
- package/build/store/reducer.js +23 -12
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +4 -4
- package/build/store/selectors.js.map +1 -1
- package/build/utils/pasting.js.map +1 -1
- package/build/utils/selection.js +34 -0
- package/build/utils/selection.js.map +1 -0
- package/build/utils/transform-styles/transforms/wrap.js.map +1 -1
- package/build-module/autocompleters/block.js +4 -1
- package/build-module/autocompleters/block.js.map +1 -1
- package/build-module/components/block-actions/index.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.js.map +1 -1
- package/build-module/components/block-alignment-matrix-control/index.js +2 -5
- package/build-module/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build-module/components/block-breadcrumb/index.js.map +1 -1
- package/build-module/components/block-content-overlay/index.js.map +1 -1
- package/build-module/components/block-context/index.js.map +1 -1
- package/build-module/components/block-controls/hook.js.map +1 -1
- package/build-module/components/block-draggable/index.js.map +1 -1
- package/build-module/components/block-draggable/index.native.js.map +1 -1
- package/build-module/components/block-list/block-invalid-warning.native.js +50 -6
- package/build-module/components/block-list/block-invalid-warning.native.js.map +1 -1
- package/build-module/components/block-list/block-list-item.native.js.map +1 -1
- package/build-module/components/block-list/block-selection-button.native.js.map +1 -1
- package/build-module/components/block-list/block.js +2 -2
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/block.native.js +2 -1
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/index.js.map +1 -1
- package/build-module/components/block-list/index.native.js +3 -1
- package/build-module/components/block-list/index.native.js.map +1 -1
- package/build-module/components/block-list/layout.js +19 -4
- package/build-module/components/block-list/layout.js.map +1 -1
- package/build-module/components/block-list/use-block-props/index.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-block-class-names.js +5 -2
- package/build-module/components/block-list/use-block-props/use-block-class-names.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
- package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build-module/components/block-list-appender/index.js.map +1 -1
- package/build-module/components/block-list-appender/index.native.js.map +1 -1
- package/build-module/components/block-lock/modal.js +37 -6
- package/build-module/components/block-lock/modal.js.map +1 -1
- package/build-module/components/block-mobile-toolbar/block-actions-menu.native.js.map +1 -1
- package/build-module/components/block-mover/button.js.map +1 -1
- package/build-module/components/block-mover/index.native.js.map +1 -1
- package/build-module/components/block-parent-selector/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/index.js +9 -27
- package/build-module/components/block-pattern-setup/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/setup-toolbar.js +3 -8
- package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build-module/components/block-popover/inbetween.js +1 -1
- package/build-module/components/block-popover/inbetween.js.map +1 -1
- package/build-module/components/block-popover/index.js +1 -1
- package/build-module/components/block-popover/index.js.map +1 -1
- package/build-module/components/block-preview/auto.js +20 -5
- package/build-module/components/block-preview/auto.js.map +1 -1
- package/build-module/components/block-selection-clearer/index.js.map +1 -1
- package/build-module/components/block-settings-menu/block-edit-visually-button.js +56 -0
- package/build-module/components/block-settings-menu/block-edit-visually-button.js.map +1 -0
- package/build-module/components/block-settings-menu/block-mode-toggle.js +4 -6
- package/build-module/components/block-settings-menu/block-mode-toggle.js.map +1 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +10 -3
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-settings-menu/index.js +6 -3
- package/build-module/components/block-settings-menu/index.js.map +1 -1
- package/build-module/components/block-settings-menu-controls/index.js +5 -2
- package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
- package/build-module/components/block-styles/index.js +5 -2
- package/build-module/components/block-styles/index.js.map +1 -1
- package/build-module/components/block-styles/menu-items.js +3 -5
- package/build-module/components/block-styles/menu-items.js.map +1 -1
- package/build-module/components/block-styles/preview.native.js +3 -2
- package/build-module/components/block-styles/preview.native.js.map +1 -1
- package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
- package/build-module/components/block-switcher/index.js +7 -1
- package/build-module/components/block-switcher/index.js.map +1 -1
- package/build-module/components/block-title/index.js +8 -2
- package/build-module/components/block-title/index.js.map +1 -1
- package/build-module/components/block-title/use-block-display-title.js +15 -14
- package/build-module/components/block-title/use-block-display-title.js.map +1 -1
- package/build-module/components/block-toolbar/index.native.js.map +1 -1
- package/build-module/components/block-toolbar/utils.js +3 -5
- package/build-module/components/block-toolbar/utils.js.map +1 -1
- package/build-module/components/block-tools/block-contextual-toolbar.js +1 -1
- package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/block-types-list/index.native.js.map +1 -1
- package/build-module/components/block-variation-transforms/index.js.map +1 -1
- package/build-module/components/border-radius-control/index.js +2 -0
- package/build-module/components/border-radius-control/index.js.map +1 -1
- package/build-module/components/color-style-selector/index.js.map +1 -1
- package/build-module/components/colors/with-colors.js +2 -2
- package/build-module/components/colors/with-colors.js.map +1 -1
- package/build-module/components/colors-gradients/control.js +46 -40
- package/build-module/components/colors-gradients/control.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +2 -1
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build-module/components/copy-handler/index.js +18 -2
- package/build-module/components/copy-handler/index.js.map +1 -1
- package/build-module/components/date-format-picker/index.js +1 -1
- package/build-module/components/date-format-picker/index.js.map +1 -1
- package/build-module/components/default-block-appender/index.js.map +1 -1
- package/build-module/components/default-block-appender/index.native.js.map +1 -1
- package/build-module/components/default-style-picker/index.js.map +1 -1
- package/build-module/components/duotone/components.js +130 -0
- package/build-module/components/duotone/components.js.map +1 -0
- package/build-module/components/duotone/index.js +3 -0
- package/build-module/components/duotone/index.js.map +1 -0
- package/build-module/components/duotone/utils.js +30 -0
- package/build-module/components/duotone/utils.js.map +1 -0
- package/build-module/components/duotone-control/index.js +18 -6
- package/build-module/components/duotone-control/index.js.map +1 -1
- package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build-module/components/iframe/index.js +19 -6
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build-module/components/image-size-control/index.js +4 -1
- package/build-module/components/image-size-control/index.js.map +1 -1
- package/build-module/components/index.js +3 -0
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
- package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
- package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
- package/build-module/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build-module/components/inserter/index.js +3 -2
- package/build-module/components/inserter/index.js.map +1 -1
- package/build-module/components/inserter/index.native.js.map +1 -1
- package/build-module/components/inserter/library.js +2 -5
- package/build-module/components/inserter/library.js.map +1 -1
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/menu.native.js.map +1 -1
- package/build-module/components/inserter/no-results.native.js.map +1 -1
- package/build-module/components/inserter/quick-inserter.js.map +1 -1
- package/build-module/components/inserter/search-items.js +2 -2
- package/build-module/components/inserter/search-items.js.map +1 -1
- package/build-module/components/inserter/search-results.native.js.map +1 -1
- package/build-module/components/inspector-popover-header/index.js +46 -0
- package/build-module/components/inspector-popover-header/index.js.map +1 -0
- package/build-module/components/line-height-control/index.js.map +1 -1
- package/build-module/components/link-control/index.js +3 -2
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/search-create-button.js +1 -2
- package/build-module/components/link-control/search-create-button.js.map +1 -1
- package/build-module/components/link-control/search-input.js +3 -1
- package/build-module/components/link-control/search-input.js.map +1 -1
- package/build-module/components/link-control/settings-drawer.js +2 -5
- package/build-module/components/link-control/settings-drawer.js.map +1 -1
- package/build-module/components/link-control/use-search-handler.js.map +1 -1
- package/build-module/components/list-view/block-contents.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +16 -8
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/branch.js.map +1 -1
- package/build-module/components/list-view/drop-indicator.js +1 -1
- package/build-module/components/list-view/drop-indicator.js.map +1 -1
- package/build-module/components/list-view/index.js.map +1 -1
- package/build-module/components/list-view/use-block-selection.js.map +1 -1
- package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build-module/components/list-view/utils.js +1 -6
- package/build-module/components/list-view/utils.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +16 -3
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-placeholder/index.native.js +5 -3
- package/build-module/components/media-placeholder/index.native.js.map +1 -1
- package/build-module/components/media-replace-flow/index.js +27 -18
- package/build-module/components/media-replace-flow/index.js.map +1 -1
- package/build-module/components/media-upload/index.native.js +1 -1
- package/build-module/components/media-upload/index.native.js.map +1 -1
- package/build-module/components/navigable-toolbar/index.js.map +1 -1
- package/build-module/components/plain-text/index.native.js.map +1 -1
- package/build-module/components/preview-options/index.js +4 -0
- package/build-module/components/preview-options/index.js.map +1 -1
- package/build-module/components/provider/use-block-sync.js +4 -1
- package/build-module/components/provider/use-block-sync.js.map +1 -1
- package/build-module/components/publish-date-time-picker/index.js +16 -16
- package/build-module/components/publish-date-time-picker/index.js.map +1 -1
- package/build-module/components/rich-text/embed-handler-picker.native.js +3 -5
- package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/use-format-types.js.map +1 -1
- package/build-module/components/rich-text/use-input-rules.js +3 -11
- package/build-module/components/rich-text/use-input-rules.js.map +1 -1
- package/build-module/components/rich-text/use-mark-persistent.js.map +1 -1
- package/build-module/components/rich-text/use-paste-handler.js +20 -5
- package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
- package/build-module/components/skip-to-selected-block/index.js.map +1 -1
- package/build-module/components/ungroup-button/index.native.js +3 -5
- package/build-module/components/ungroup-button/index.native.js.map +1 -1
- package/build-module/components/url-input/index.js +11 -1
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/url-popover/index.js +2 -1
- package/build-module/components/url-popover/index.js.map +1 -1
- package/build-module/components/use-block-display-information/index.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build-module/components/use-display-block-controls/index.native.js.map +1 -1
- package/build-module/components/use-on-block-drop/index.js.map +1 -1
- package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
- package/build-module/components/use-setting/index.js.map +1 -1
- package/build-module/components/writing-flow/use-arrow-nav.js +47 -14
- package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build-module/components/writing-flow/use-click-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-multi-selection.js +3 -45
- package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
- package/build-module/components/writing-flow/use-select-all.js.map +1 -1
- package/build-module/components/writing-flow/use-selection-observer.js +1 -3
- package/build-module/components/writing-flow/use-selection-observer.js.map +1 -1
- package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build-module/elements/index.js +7 -1
- package/build-module/elements/index.js.map +1 -1
- package/build-module/hooks/aria-label.js +59 -0
- package/build-module/hooks/aria-label.js.map +1 -0
- package/build-module/hooks/color-panel.js.map +1 -1
- package/build-module/hooks/color-panel.native.js.map +1 -1
- package/build-module/hooks/color.js +2 -3
- package/build-module/hooks/color.js.map +1 -1
- package/build-module/hooks/duotone.js +22 -140
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/font-family.js.map +1 -1
- package/build-module/hooks/gap.js.map +1 -1
- package/build-module/hooks/index.js +2 -1
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/layout.js +76 -10
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/utils.js +5 -2
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/layouts/flex.js +43 -35
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/layouts/flow.js +11 -36
- package/build-module/layouts/flow.js.map +1 -1
- package/build-module/layouts/utils.js +33 -3
- package/build-module/layouts/utils.js.map +1 -1
- package/build-module/store/actions.js +14 -20
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/index.js +0 -4
- package/build-module/store/index.js.map +1 -1
- package/build-module/store/reducer.js +23 -11
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +5 -5
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/pasting.js.map +1 -1
- package/build-module/utils/selection.js +24 -0
- package/build-module/utils/selection.js.map +1 -0
- package/build-module/utils/transform-styles/transforms/wrap.js.map +1 -1
- package/build-style/style-rtl.css +57 -34
- package/build-style/style.css +57 -34
- package/package.json +28 -28
- package/src/autocompleters/block.js +2 -1
- package/src/components/block-actions/index.js +2 -3
- package/src/components/block-alignment-control/ui.js +4 -6
- package/src/components/block-alignment-matrix-control/index.js +2 -4
- package/src/components/block-breadcrumb/index.js +2 -5
- package/src/components/block-compare/test/block-view.js +2 -1
- package/src/components/block-content-overlay/index.js +2 -5
- package/src/components/block-context/index.js +4 -4
- package/src/components/block-controls/hook.js +2 -3
- package/src/components/block-draggable/index.js +6 -13
- package/src/components/block-draggable/index.native.js +6 -14
- package/src/components/block-draggable/test/helpers.native.js +3 -3
- package/src/components/block-draggable/test/index.native.js +12 -15
- package/src/components/block-edit/test/edit.js +2 -1
- package/src/components/block-list/block-invalid-warning.native.js +42 -7
- package/src/components/block-list/block-list-item.native.js +4 -12
- package/src/components/block-list/block-selection-button.native.js +2 -3
- package/src/components/block-list/block.js +10 -12
- package/src/components/block-list/block.native.js +11 -15
- package/src/components/block-list/index.js +2 -3
- package/src/components/block-list/index.native.js +13 -22
- package/src/components/block-list/layout.js +15 -3
- package/src/components/block-list/style.scss +2 -2
- package/src/components/block-list/test/block-list-context.native.js +8 -16
- package/src/components/block-list/use-block-props/index.js +6 -3
- package/src/components/block-list/use-block-props/use-block-class-names.js +5 -1
- package/src/components/block-list/use-block-props/use-block-custom-class-name.js +2 -3
- package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +2 -3
- package/src/components/block-list/use-in-between-inserter.js +2 -3
- package/src/components/block-list-appender/index.js +2 -5
- package/src/components/block-list-appender/index.native.js +2 -3
- package/src/components/block-lock/modal.js +42 -4
- package/src/components/block-lock/style.scss +10 -0
- package/src/components/block-mobile-toolbar/block-actions-menu.native.js +4 -6
- package/src/components/block-mover/button.js +2 -3
- package/src/components/block-mover/index.native.js +4 -6
- package/src/components/block-parent-selector/index.js +2 -3
- package/src/components/block-pattern-setup/index.js +5 -27
- package/src/components/block-pattern-setup/setup-toolbar.js +2 -9
- package/src/components/block-pattern-setup/style.scss +4 -2
- package/src/components/block-popover/inbetween.js +1 -1
- package/src/components/block-popover/index.js +1 -1
- package/src/components/block-preview/auto.js +21 -11
- package/src/components/block-selection-clearer/index.js +2 -3
- package/src/components/block-settings-menu/block-edit-visually-button.js +52 -0
- package/src/components/block-settings-menu/block-mode-toggle.js +5 -8
- package/src/components/block-settings-menu/block-settings-dropdown.js +13 -9
- package/src/components/block-settings-menu/index.js +15 -11
- package/src/components/block-settings-menu-controls/index.js +3 -2
- package/src/components/block-styles/index.js +3 -1
- package/src/components/block-styles/menu-items.js +2 -5
- package/src/components/block-styles/preview.native.js +3 -2
- package/src/components/block-switcher/block-transformations-menu.js +2 -4
- package/src/components/block-switcher/index.js +7 -1
- package/src/components/block-title/index.js +3 -2
- package/src/components/block-title/use-block-display-title.js +20 -12
- package/src/components/block-toolbar/index.native.js +2 -5
- package/src/components/block-toolbar/utils.js +3 -11
- package/src/components/block-tools/block-contextual-toolbar.js +5 -6
- package/src/components/block-tools/index.js +2 -3
- package/src/components/block-types-list/index.native.js +2 -4
- package/src/components/block-variation-transforms/index.js +4 -6
- package/src/components/border-radius-control/index.js +2 -0
- package/src/components/color-palette/test/control.js +2 -1
- package/src/components/color-style-selector/index.js +27 -28
- package/src/components/colors/test/with-colors.js +14 -14
- package/src/components/colors/with-colors.js +10 -14
- package/src/components/colors-gradients/control.js +77 -65
- package/src/components/colors-gradients/dropdown.js +22 -16
- package/src/components/colors-gradients/style.scss +4 -0
- package/src/components/colors-gradients/test/control.js +25 -32
- package/src/components/convert-to-group-buttons/toolbar.js +2 -6
- package/src/components/copy-handler/README.md +7 -2
- package/src/components/copy-handler/index.js +26 -6
- package/src/components/date-format-picker/index.js +1 -0
- package/src/components/default-block-appender/index.js +4 -6
- package/src/components/default-block-appender/index.native.js +4 -9
- package/src/components/default-style-picker/index.js +20 -21
- package/src/components/duotone/components.js +133 -0
- package/src/components/duotone/index.js +7 -0
- package/src/components/duotone/utils.js +25 -0
- package/src/components/duotone-control/index.js +12 -7
- package/src/components/duotone-control/style.scss +5 -0
- package/src/components/font-sizes/with-font-sizes.js +2 -3
- package/src/components/iframe/index.js +25 -6
- package/src/components/image-editor/aspect-ratio-dropdown.js +2 -6
- package/src/components/image-size-control/index.js +4 -7
- package/src/components/index.js +3 -0
- package/src/components/inner-blocks/use-inner-block-template-sync.js +2 -3
- package/src/components/inner-blocks/use-nested-settings-update.js +6 -9
- package/src/components/inserter/block-types-tab.native.js +2 -3
- package/src/components/inserter/hooks/use-block-type-impressions.native.js +2 -3
- package/src/components/inserter/hooks/use-insertion-point.js +3 -2
- package/src/components/inserter/hooks/use-patterns-state.js +4 -5
- package/src/components/inserter/index.js +7 -11
- package/src/components/inserter/index.native.js +6 -11
- package/src/components/inserter/library.js +2 -5
- package/src/components/inserter/menu.js +14 -19
- package/src/components/inserter/menu.native.js +8 -6
- package/src/components/inserter/no-results.native.js +2 -1
- package/src/components/inserter/quick-inserter.js +2 -3
- package/src/components/inserter/search-items.js +6 -6
- package/src/components/inserter/search-results.native.js +4 -6
- package/src/components/inserter/style.scss +1 -1
- package/src/components/inspector-popover-header/README.md +76 -0
- package/src/components/inspector-popover-header/index.js +56 -0
- package/src/components/inspector-popover-header/style.scss +16 -0
- package/src/components/line-height-control/index.js +1 -2
- package/src/components/link-control/index.js +5 -4
- package/src/components/link-control/search-create-button.js +4 -2
- package/src/components/link-control/search-input.js +3 -1
- package/src/components/link-control/settings-drawer.js +2 -5
- package/src/components/link-control/test/fixtures/index.js +5 -7
- package/src/components/link-control/test/index.js +85 -106
- package/src/components/link-control/use-search-handler.js +2 -2
- package/src/components/list-view/block-contents.js +2 -4
- package/src/components/list-view/block-select-button.js +29 -14
- package/src/components/list-view/branch.js +22 -23
- package/src/components/list-view/drop-indicator.js +1 -1
- package/src/components/list-view/index.js +4 -8
- package/src/components/list-view/style.scss +18 -4
- package/src/components/list-view/use-block-selection.js +5 -5
- package/src/components/list-view/use-list-view-drop-zone.js +2 -1
- package/src/components/list-view/utils.js +1 -6
- package/src/components/media-placeholder/index.js +22 -1
- package/src/components/media-placeholder/index.native.js +9 -5
- package/src/components/media-replace-flow/index.js +78 -56
- package/src/components/media-replace-flow/test/index.js +14 -4
- package/src/components/media-upload/README.md +8 -0
- package/src/components/media-upload/index.native.js +1 -1
- package/src/components/navigable-toolbar/index.js +1 -2
- package/src/components/panel-color-settings/test/index.js +2 -1
- package/src/components/plain-text/index.native.js +2 -6
- package/src/components/preview-options/index.js +4 -0
- package/src/components/provider/use-block-sync.js +5 -2
- package/src/components/publish-date-time-picker/README.md +1 -1
- package/src/components/publish-date-time-picker/index.js +18 -27
- package/src/components/responsive-block-control/README.md +3 -1
- package/src/components/responsive-block-control/test/index.js +4 -4
- package/src/components/rich-text/embed-handler-picker.native.js +2 -5
- package/src/components/rich-text/index.js +7 -4
- package/src/components/rich-text/use-format-types.js +16 -16
- package/src/components/rich-text/use-input-rules.js +6 -15
- package/src/components/rich-text/use-mark-persistent.js +2 -3
- package/src/components/rich-text/use-paste-handler.js +17 -5
- package/src/components/skip-to-selected-block/index.js +2 -3
- package/src/components/ungroup-button/index.native.js +4 -8
- package/src/components/url-input/index.js +21 -20
- package/src/components/url-popover/index.js +1 -0
- package/src/components/url-popover/test/__snapshots__/index.js.snap +3 -0
- package/src/components/use-block-display-information/index.js +4 -6
- package/src/components/use-block-drop-zone/index.js +2 -3
- package/src/components/use-block-drop-zone/index.native.js +2 -4
- package/src/components/use-block-drop-zone/test/index.js +22 -23
- package/src/components/use-display-block-controls/index.native.js +2 -3
- package/src/components/use-no-recursive-renders/test/use-no-recursive-renders.js +2 -3
- package/src/components/use-on-block-drop/index.js +2 -5
- package/src/components/use-on-block-drop/index.native.js +4 -8
- package/src/components/use-setting/index.js +8 -6
- package/src/components/writing-flow/test/index.js +22 -4
- package/src/components/writing-flow/use-arrow-nav.js +54 -11
- package/src/components/writing-flow/use-click-selection.js +2 -5
- package/src/components/writing-flow/use-drag-selection.js +6 -9
- package/src/components/writing-flow/use-multi-selection.js +1 -50
- package/src/components/writing-flow/use-select-all.js +2 -5
- package/src/components/writing-flow/use-selection-observer.js +6 -9
- package/src/components/writing-flow/use-tab-nav.js +2 -5
- package/src/elements/index.js +8 -1
- package/src/elements/test/index.js +18 -0
- package/src/hooks/aria-label.js +67 -0
- package/src/hooks/color-panel.js +4 -4
- package/src/hooks/color-panel.native.js +2 -2
- package/src/hooks/color.js +12 -5
- package/src/hooks/duotone.js +18 -139
- package/src/hooks/font-family.js +4 -2
- package/src/hooks/gap.js +2 -3
- package/src/hooks/index.js +2 -1
- package/src/hooks/layout.js +102 -15
- package/src/hooks/test/align.js +2 -1
- package/src/hooks/test/generated-class-name.js +2 -5
- package/src/hooks/test/utils.js +2 -5
- package/src/hooks/utils.js +7 -3
- package/src/index.js +1 -1
- package/src/layouts/flex.js +49 -43
- package/src/layouts/flow.js +14 -35
- package/src/layouts/test/flex.js +21 -0
- package/src/layouts/test/flow.js +21 -0
- package/src/layouts/test/utils.js +138 -0
- package/src/layouts/utils.js +44 -3
- package/src/store/actions.js +763 -733
- package/src/store/index.js +0 -4
- package/src/store/reducer.js +208 -184
- package/src/store/selectors.js +57 -58
- package/src/store/test/actions.js +2 -1
- package/src/store/test/reducer.js +140 -10
- package/src/store/test/selectors.js +20 -27
- package/src/style.scss +1 -1
- package/src/utils/pasting.js +3 -3
- package/src/utils/selection.js +26 -0
- package/src/utils/test/selection.js +39 -0
- package/src/utils/transform-styles/transforms/wrap.js +30 -28
- package/tsconfig.json +2 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/src/components/publish-date-time-picker/style.scss +0 -20
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import {
|
|
5
|
+
__experimentalVStack as VStack,
|
|
6
|
+
__experimentalHStack as HStack,
|
|
7
|
+
__experimentalHeading as Heading,
|
|
8
|
+
__experimentalSpacer as Spacer,
|
|
9
|
+
Button,
|
|
10
|
+
__experimentalText as Text,
|
|
11
|
+
} from '@wordpress/components';
|
|
12
|
+
import { closeSmall } from '@wordpress/icons';
|
|
13
|
+
import { __ } from '@wordpress/i18n';
|
|
14
|
+
|
|
15
|
+
export default function InspectorPopoverHeader( {
|
|
16
|
+
title,
|
|
17
|
+
help,
|
|
18
|
+
actions = [],
|
|
19
|
+
onClose,
|
|
20
|
+
} ) {
|
|
21
|
+
return (
|
|
22
|
+
<VStack className="block-editor-inspector-popover-header" spacing={ 4 }>
|
|
23
|
+
<HStack alignment="center">
|
|
24
|
+
<Heading
|
|
25
|
+
className="block-editor-inspector-popover-header__heading"
|
|
26
|
+
level={ 2 }
|
|
27
|
+
size={ 13 }
|
|
28
|
+
>
|
|
29
|
+
{ title }
|
|
30
|
+
</Heading>
|
|
31
|
+
<Spacer />
|
|
32
|
+
{ actions.map( ( { label, icon, onClick } ) => (
|
|
33
|
+
<Button
|
|
34
|
+
key={ label }
|
|
35
|
+
className="block-editor-inspector-popover-header__action"
|
|
36
|
+
label={ label }
|
|
37
|
+
icon={ icon }
|
|
38
|
+
variant={ ! icon && 'tertiary' }
|
|
39
|
+
onClick={ onClick }
|
|
40
|
+
>
|
|
41
|
+
{ ! icon && label }
|
|
42
|
+
</Button>
|
|
43
|
+
) ) }
|
|
44
|
+
{ onClose && (
|
|
45
|
+
<Button
|
|
46
|
+
className="block-editor-inspector-popover-header__action"
|
|
47
|
+
label={ __( 'Close' ) }
|
|
48
|
+
icon={ closeSmall }
|
|
49
|
+
onClick={ onClose }
|
|
50
|
+
/>
|
|
51
|
+
) }
|
|
52
|
+
</HStack>
|
|
53
|
+
{ help && <Text>{ help }</Text> }
|
|
54
|
+
</VStack>
|
|
55
|
+
);
|
|
56
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
.block-editor-inspector-popover-header {
|
|
2
|
+
margin-bottom: $grid-unit-20;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
[class].block-editor-inspector-popover-header__action {
|
|
6
|
+
height: $icon-size;
|
|
7
|
+
|
|
8
|
+
&.has-icon {
|
|
9
|
+
min-width: $icon-size;
|
|
10
|
+
padding: 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
&:not(.has-icon) {
|
|
14
|
+
text-decoration: underline;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -75,8 +75,7 @@ const LineHeightControl = ( {
|
|
|
75
75
|
{
|
|
76
76
|
since: '6.0',
|
|
77
77
|
version: '6.4',
|
|
78
|
-
hint:
|
|
79
|
-
'Set the `__nextHasNoMarginBottom` prop to true to start opting into the new styles, which will become the default in a future version',
|
|
78
|
+
hint: 'Set the `__nextHasNoMarginBottom` prop to true to start opting into the new styles, which will become the default in a future version',
|
|
80
79
|
}
|
|
81
80
|
);
|
|
82
81
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { noop } from 'lodash';
|
|
5
4
|
import classnames from 'classnames';
|
|
6
5
|
|
|
7
6
|
/**
|
|
@@ -97,6 +96,8 @@ import { DEFAULT_LINK_SETTINGS } from './constants';
|
|
|
97
96
|
* @property {Function} renderControlBottom Optional controls to be rendered at the bottom of the component.
|
|
98
97
|
*/
|
|
99
98
|
|
|
99
|
+
const noop = () => {};
|
|
100
|
+
|
|
100
101
|
/**
|
|
101
102
|
* Renders a link control. A link control is a controlled input which maintains
|
|
102
103
|
* a value associated with a link (HTML anchor element) and relevant settings
|
|
@@ -148,9 +149,8 @@ function LinkControl( {
|
|
|
148
149
|
|
|
149
150
|
const currentInputIsEmpty = ! currentInputValue?.trim()?.length;
|
|
150
151
|
|
|
151
|
-
const { createPage, isCreatingPage, errorMessage } =
|
|
152
|
-
createSuggestion
|
|
153
|
-
);
|
|
152
|
+
const { createPage, isCreatingPage, errorMessage } =
|
|
153
|
+
useCreatePage( createSuggestion );
|
|
154
154
|
|
|
155
155
|
useEffect( () => {
|
|
156
156
|
if (
|
|
@@ -235,6 +235,7 @@ function LinkControl( {
|
|
|
235
235
|
internalTextValue !== value?.title
|
|
236
236
|
) {
|
|
237
237
|
onChange( {
|
|
238
|
+
...value,
|
|
238
239
|
url: currentInputValue,
|
|
239
240
|
title: internalTextValue,
|
|
240
241
|
} );
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
4
|
import classnames from 'classnames';
|
|
5
|
-
import { isFunction } from 'lodash';
|
|
6
5
|
|
|
7
6
|
/**
|
|
8
7
|
* WordPress dependencies
|
|
@@ -25,7 +24,10 @@ export const LinkControlSearchCreate = ( {
|
|
|
25
24
|
|
|
26
25
|
let text;
|
|
27
26
|
if ( buttonText ) {
|
|
28
|
-
text =
|
|
27
|
+
text =
|
|
28
|
+
typeof buttonText === 'function'
|
|
29
|
+
? buttonText( searchTerm )
|
|
30
|
+
: buttonText;
|
|
29
31
|
} else {
|
|
30
32
|
text = createInterpolateElement(
|
|
31
33
|
sprintf(
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { omit } from 'lodash';
|
|
5
5
|
import classnames from 'classnames';
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -23,6 +23,8 @@ import useSearchHandler from './use-search-handler';
|
|
|
23
23
|
// which will cause an unintended http request.
|
|
24
24
|
const noopSearchHandler = () => Promise.resolve( [] );
|
|
25
25
|
|
|
26
|
+
const noop = () => {};
|
|
27
|
+
|
|
26
28
|
const LinkControlSearchInput = forwardRef(
|
|
27
29
|
(
|
|
28
30
|
{
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* External dependencies
|
|
3
|
-
*/
|
|
4
|
-
import { noop } from 'lodash';
|
|
5
|
-
|
|
6
1
|
/**
|
|
7
2
|
* WordPress dependencies
|
|
8
3
|
*/
|
|
9
4
|
import { __ } from '@wordpress/i18n';
|
|
10
5
|
import { ToggleControl, VisuallyHidden } from '@wordpress/components';
|
|
11
6
|
|
|
7
|
+
const noop = () => {};
|
|
8
|
+
|
|
12
9
|
const LinkControlSettingsDrawer = ( { value, onChange = noop, settings } ) => {
|
|
13
10
|
if ( ! settings || ! settings.length ) {
|
|
14
11
|
return null;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import { uniqueId, take } from 'lodash';
|
|
1
|
+
let uniqueIdCounter = 1;
|
|
2
|
+
|
|
3
|
+
export const uniqueId = () => uniqueIdCounter++;
|
|
5
4
|
|
|
6
5
|
export const fauxEntitySuggestions = [
|
|
7
6
|
{
|
|
@@ -27,8 +26,7 @@ export const fauxEntitySuggestions = [
|
|
|
27
26
|
},
|
|
28
27
|
{
|
|
29
28
|
id: uniqueId(),
|
|
30
|
-
title:
|
|
31
|
-
'This is another Post with a much longer title just to be really annoying and to try and break the UI',
|
|
29
|
+
title: 'This is another Post with a much longer title just to be really annoying and to try and break the UI',
|
|
32
30
|
type: 'post',
|
|
33
31
|
info: '1 month ago',
|
|
34
32
|
url: `?p=${ uniqueId() }`,
|
|
@@ -41,7 +39,7 @@ export const fetchFauxEntitySuggestions = (
|
|
|
41
39
|
{ isInitialSuggestions } = {}
|
|
42
40
|
) => {
|
|
43
41
|
const suggestions = isInitialSuggestions
|
|
44
|
-
?
|
|
42
|
+
? fauxEntitySuggestions.slice( 0, 3 )
|
|
45
43
|
: fauxEntitySuggestions;
|
|
46
44
|
return Promise.resolve( suggestions );
|
|
47
45
|
};
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
import { render, unmountComponentAtNode } from 'react-dom';
|
|
5
5
|
import { act, Simulate } from 'react-dom/test-utils';
|
|
6
6
|
import { queryByText, queryByRole } from '@testing-library/react';
|
|
7
|
-
import { default as lodash, first, last, nth, uniqueId } from 'lodash';
|
|
8
7
|
/**
|
|
9
8
|
* WordPress dependencies
|
|
10
9
|
*/
|
|
@@ -18,13 +17,20 @@ import { useSelect } from '@wordpress/data';
|
|
|
18
17
|
* Internal dependencies
|
|
19
18
|
*/
|
|
20
19
|
import LinkControl from '../';
|
|
21
|
-
import {
|
|
20
|
+
import {
|
|
21
|
+
fauxEntitySuggestions,
|
|
22
|
+
fetchFauxEntitySuggestions,
|
|
23
|
+
uniqueId,
|
|
24
|
+
} from './fixtures';
|
|
22
25
|
|
|
23
26
|
// Mock debounce() so that it runs instantly.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
jest.mock( 'lodash', () => ( {
|
|
28
|
+
...jest.requireActual( 'lodash' ),
|
|
29
|
+
debounce: ( fn ) => {
|
|
30
|
+
fn.cancel = jest.fn();
|
|
31
|
+
return fn;
|
|
32
|
+
},
|
|
33
|
+
} ) );
|
|
28
34
|
|
|
29
35
|
const mockFetchSearchSuggestions = jest.fn();
|
|
30
36
|
|
|
@@ -357,7 +363,7 @@ describe( 'Searching for a link', () => {
|
|
|
357
363
|
|
|
358
364
|
it( 'should display only search suggestions when current input value is not URL-like', async () => {
|
|
359
365
|
const searchTerm = 'Hello world';
|
|
360
|
-
const firstFauxSuggestion =
|
|
366
|
+
const firstFauxSuggestion = fauxEntitySuggestions[ 0 ];
|
|
361
367
|
|
|
362
368
|
act( () => {
|
|
363
369
|
render( <LinkControl />, container );
|
|
@@ -377,9 +383,9 @@ describe( 'Searching for a link', () => {
|
|
|
377
383
|
|
|
378
384
|
const searchResultElements = getSearchResults();
|
|
379
385
|
|
|
380
|
-
const firstSearchResultItemHTML =
|
|
381
|
-
|
|
382
|
-
|
|
386
|
+
const firstSearchResultItemHTML = searchResultElements[ 0 ].innerHTML;
|
|
387
|
+
const lastSearchResultItemHTML =
|
|
388
|
+
searchResultElements[ searchResultElements.length - 1 ].innerHTML;
|
|
383
389
|
|
|
384
390
|
expect( searchResultElements ).toHaveLength(
|
|
385
391
|
fauxEntitySuggestions.length
|
|
@@ -501,8 +507,9 @@ describe( 'Searching for a link', () => {
|
|
|
501
507
|
|
|
502
508
|
const searchResultElements = getSearchResults();
|
|
503
509
|
|
|
504
|
-
const lastSearchResultItemHTML =
|
|
505
|
-
.
|
|
510
|
+
const lastSearchResultItemHTML =
|
|
511
|
+
searchResultElements[ searchResultElements.length - 1 ]
|
|
512
|
+
.innerHTML;
|
|
506
513
|
const additionalDefaultFallbackURLSuggestionLength = 1;
|
|
507
514
|
|
|
508
515
|
// We should see a search result for each of the expect search suggestions
|
|
@@ -758,12 +765,10 @@ describe( 'Default search suggestions', () => {
|
|
|
758
765
|
// Search Input UI.
|
|
759
766
|
const searchInput = getURLInput();
|
|
760
767
|
|
|
761
|
-
const searchResultsWrapper =
|
|
762
|
-
'[role="listbox"]'
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
'[role="option"]'
|
|
766
|
-
);
|
|
768
|
+
const searchResultsWrapper =
|
|
769
|
+
container.querySelector( '[role="listbox"]' );
|
|
770
|
+
const initialSearchResultElements =
|
|
771
|
+
searchResultsWrapper.querySelectorAll( '[role="option"]' );
|
|
767
772
|
|
|
768
773
|
const searchResultsLabel = container.querySelector(
|
|
769
774
|
`#${ searchResultsWrapper.getAttribute( 'aria-labelledby' ) }`
|
|
@@ -976,11 +981,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
976
981
|
'[role="listbox"] [role="option"]'
|
|
977
982
|
);
|
|
978
983
|
|
|
979
|
-
const createButton =
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
)
|
|
983
|
-
);
|
|
984
|
+
const createButton = Array.from( searchResultElements ).filter(
|
|
985
|
+
( result ) => result.innerHTML.includes( 'Create:' )
|
|
986
|
+
)[ 0 ];
|
|
984
987
|
|
|
985
988
|
expect( createButton ).not.toBeNull();
|
|
986
989
|
expect( createButton.innerHTML ).toEqual(
|
|
@@ -1073,11 +1076,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1073
1076
|
'[role="listbox"] [role="option"]'
|
|
1074
1077
|
);
|
|
1075
1078
|
|
|
1076
|
-
const createButton =
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
)
|
|
1080
|
-
);
|
|
1079
|
+
const createButton = Array.from( searchResultElements ).filter(
|
|
1080
|
+
( result ) => result.innerHTML.includes( 'Create:' )
|
|
1081
|
+
)[ 0 ];
|
|
1081
1082
|
|
|
1082
1083
|
await act( async () => {
|
|
1083
1084
|
Simulate.click( createButton );
|
|
@@ -1145,11 +1146,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1145
1146
|
const searchResultElements = container.querySelectorAll(
|
|
1146
1147
|
'[role="listbox"] [role="option"]'
|
|
1147
1148
|
);
|
|
1148
|
-
const createButton =
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
)
|
|
1152
|
-
);
|
|
1149
|
+
const createButton = Array.from( searchResultElements ).filter(
|
|
1150
|
+
( result ) => result.innerHTML.includes( 'Create:' )
|
|
1151
|
+
)[ 0 ];
|
|
1153
1152
|
|
|
1154
1153
|
// Step down into the search results, highlighting the first result item.
|
|
1155
1154
|
act( () => {
|
|
@@ -1212,11 +1211,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1212
1211
|
'[role="listbox"] [role="option"]'
|
|
1213
1212
|
);
|
|
1214
1213
|
|
|
1215
|
-
const createButton =
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
)
|
|
1219
|
-
);
|
|
1214
|
+
const createButton = Array.from( searchResultElements ).filter(
|
|
1215
|
+
( result ) => result.innerHTML.includes( 'Custom suggestion text' )
|
|
1216
|
+
)[ 0 ];
|
|
1220
1217
|
|
|
1221
1218
|
expect( createButton ).not.toBeNull();
|
|
1222
1219
|
} );
|
|
@@ -1243,11 +1240,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1243
1240
|
const searchResultElements = container.querySelectorAll(
|
|
1244
1241
|
'[role="listbox"] [role="option"]'
|
|
1245
1242
|
);
|
|
1246
|
-
const createButton =
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
)
|
|
1250
|
-
);
|
|
1243
|
+
const createButton = Array.from( searchResultElements ).filter(
|
|
1244
|
+
( result ) => result.innerHTML.includes( 'Create:' )
|
|
1245
|
+
)[ 0 ];
|
|
1251
1246
|
|
|
1252
1247
|
// Verify input has no value.
|
|
1253
1248
|
expect( searchInput.value ).toBe( '' );
|
|
@@ -1277,11 +1272,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1277
1272
|
const searchResultElements = container.querySelectorAll(
|
|
1278
1273
|
'[role="listbox"] [role="option"]'
|
|
1279
1274
|
);
|
|
1280
|
-
const createButton =
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
)
|
|
1284
|
-
);
|
|
1275
|
+
const createButton = Array.from( searchResultElements ).filter(
|
|
1276
|
+
( result ) => result.innerHTML.includes( 'New page' )
|
|
1277
|
+
)[ 0 ];
|
|
1285
1278
|
|
|
1286
1279
|
// Verify input has no value.
|
|
1287
1280
|
expect( searchInput.value ).toBe( '' );
|
|
@@ -1323,11 +1316,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1323
1316
|
'[role="listbox"] [role="option"]'
|
|
1324
1317
|
);
|
|
1325
1318
|
|
|
1326
|
-
const createButton =
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
)
|
|
1330
|
-
);
|
|
1319
|
+
const createButton = Array.from( searchResultElements ).filter(
|
|
1320
|
+
( result ) => result.innerHTML.includes( 'New page' )
|
|
1321
|
+
)[ 0 ];
|
|
1331
1322
|
|
|
1332
1323
|
expect( createButton ).toBeFalsy(); // Shouldn't exist!
|
|
1333
1324
|
}
|
|
@@ -1368,11 +1359,9 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1368
1359
|
let searchResultElements = container.querySelectorAll(
|
|
1369
1360
|
'[role="listbox"] [role="option"]'
|
|
1370
1361
|
);
|
|
1371
|
-
let createButton =
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
)
|
|
1375
|
-
);
|
|
1362
|
+
let createButton = Array.from( searchResultElements ).filter(
|
|
1363
|
+
( result ) => result.innerHTML.includes( 'Create:' )
|
|
1364
|
+
)[ 0 ];
|
|
1376
1365
|
|
|
1377
1366
|
await act( async () => {
|
|
1378
1367
|
Simulate.click( createButton );
|
|
@@ -1409,18 +1398,16 @@ describe( 'Creating Entities (eg: Posts, Pages)', () => {
|
|
|
1409
1398
|
searchResultElements = container.querySelectorAll(
|
|
1410
1399
|
'[role="listbox"] [role="option"]'
|
|
1411
1400
|
);
|
|
1412
|
-
createButton =
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
)
|
|
1416
|
-
);
|
|
1401
|
+
createButton = Array.from( searchResultElements ).filter(
|
|
1402
|
+
( result ) => result.innerHTML.includes( 'New page' )
|
|
1403
|
+
)[ 0 ];
|
|
1417
1404
|
} );
|
|
1418
1405
|
} );
|
|
1419
1406
|
} );
|
|
1420
1407
|
|
|
1421
1408
|
describe( 'Selecting links', () => {
|
|
1422
1409
|
it( 'should display a selected link corresponding to the provided "currentLink" prop', () => {
|
|
1423
|
-
const selectedLink =
|
|
1410
|
+
const selectedLink = fauxEntitySuggestions[ 0 ];
|
|
1424
1411
|
|
|
1425
1412
|
const LinkControlConsumer = () => {
|
|
1426
1413
|
const [ link ] = useState( selectedLink );
|
|
@@ -1449,7 +1436,7 @@ describe( 'Selecting links', () => {
|
|
|
1449
1436
|
} );
|
|
1450
1437
|
|
|
1451
1438
|
it( 'should hide "selected" link UI and display search UI prepopulated with previously selected link title when "Change" button is clicked', () => {
|
|
1452
|
-
const selectedLink =
|
|
1439
|
+
const selectedLink = fauxEntitySuggestions[ 0 ];
|
|
1453
1440
|
|
|
1454
1441
|
const LinkControlConsumer = () => {
|
|
1455
1442
|
const [ link, setLink ] = useState( selectedLink );
|
|
@@ -1486,7 +1473,7 @@ describe( 'Selecting links', () => {
|
|
|
1486
1473
|
|
|
1487
1474
|
describe( 'Selection using mouse click', () => {
|
|
1488
1475
|
it.each( [
|
|
1489
|
-
[ 'entity', 'hello world',
|
|
1476
|
+
[ 'entity', 'hello world', fauxEntitySuggestions[ 0 ] ], // Entity search.
|
|
1490
1477
|
[
|
|
1491
1478
|
'url',
|
|
1492
1479
|
'https://www.wordpress.org',
|
|
@@ -1530,7 +1517,7 @@ describe( 'Selecting links', () => {
|
|
|
1530
1517
|
|
|
1531
1518
|
const searchResultElements = getSearchResults();
|
|
1532
1519
|
|
|
1533
|
-
const firstSearchSuggestion =
|
|
1520
|
+
const firstSearchSuggestion = searchResultElements[ 0 ];
|
|
1534
1521
|
|
|
1535
1522
|
// Simulate selecting the first of the search suggestions.
|
|
1536
1523
|
act( () => {
|
|
@@ -1559,7 +1546,7 @@ describe( 'Selecting links', () => {
|
|
|
1559
1546
|
|
|
1560
1547
|
describe( 'Selection using keyboard', () => {
|
|
1561
1548
|
it.each( [
|
|
1562
|
-
[ 'entity', 'hello world',
|
|
1549
|
+
[ 'entity', 'hello world', fauxEntitySuggestions[ 0 ] ], // Entity search.
|
|
1563
1550
|
[
|
|
1564
1551
|
'url',
|
|
1565
1552
|
'https://www.wordpress.org',
|
|
@@ -1609,8 +1596,8 @@ describe( 'Selecting links', () => {
|
|
|
1609
1596
|
|
|
1610
1597
|
const searchResultElements = getSearchResults();
|
|
1611
1598
|
|
|
1612
|
-
const firstSearchSuggestion =
|
|
1613
|
-
const secondSearchSuggestion =
|
|
1599
|
+
const firstSearchSuggestion = searchResultElements[ 0 ];
|
|
1600
|
+
const secondSearchSuggestion = searchResultElements[ 1 ];
|
|
1614
1601
|
|
|
1615
1602
|
let selectedSearchResultElement = container.querySelector(
|
|
1616
1603
|
'[role="option"][aria-selected="true"]'
|
|
@@ -1690,9 +1677,8 @@ describe( 'Selecting links', () => {
|
|
|
1690
1677
|
|
|
1691
1678
|
await eventLoopTick();
|
|
1692
1679
|
|
|
1693
|
-
const searchResultsWrapper =
|
|
1694
|
-
'[role="listbox"]'
|
|
1695
|
-
);
|
|
1680
|
+
const searchResultsWrapper =
|
|
1681
|
+
container.querySelector( '[role="listbox"]' );
|
|
1696
1682
|
|
|
1697
1683
|
const searchResultsLabel = container.querySelector(
|
|
1698
1684
|
`#${ searchResultsWrapper.getAttribute( 'aria-labelledby' ) }`
|
|
@@ -1714,8 +1700,8 @@ describe( 'Selecting links', () => {
|
|
|
1714
1700
|
|
|
1715
1701
|
const searchResultElements = getSearchResults();
|
|
1716
1702
|
|
|
1717
|
-
const firstSearchSuggestion =
|
|
1718
|
-
const secondSearchSuggestion =
|
|
1703
|
+
const firstSearchSuggestion = searchResultElements[ 0 ];
|
|
1704
|
+
const secondSearchSuggestion = searchResultElements[ 1 ];
|
|
1719
1705
|
|
|
1720
1706
|
let selectedSearchResultElement = container.querySelector(
|
|
1721
1707
|
'[role="option"][aria-selected="true"]'
|
|
@@ -1761,7 +1747,7 @@ describe( 'Selecting links', () => {
|
|
|
1761
1747
|
|
|
1762
1748
|
describe( 'Addition Settings UI', () => {
|
|
1763
1749
|
it( 'should display "New Tab" setting (in "off" mode) by default when a link is selected', async () => {
|
|
1764
|
-
const selectedLink =
|
|
1750
|
+
const selectedLink = fauxEntitySuggestions[ 0 ];
|
|
1765
1751
|
const expectedSettingText = 'Open in new tab';
|
|
1766
1752
|
|
|
1767
1753
|
const LinkControlConsumer = () => {
|
|
@@ -1784,9 +1770,8 @@ describe( 'Addition Settings UI', () => {
|
|
|
1784
1770
|
|
|
1785
1771
|
expect( newTabSettingLabel ).not.toBeUndefined(); // find() returns "undefined" if not found.
|
|
1786
1772
|
|
|
1787
|
-
const newTabSettingLabelForAttr =
|
|
1788
|
-
'for'
|
|
1789
|
-
);
|
|
1773
|
+
const newTabSettingLabelForAttr =
|
|
1774
|
+
newTabSettingLabel.getAttribute( 'for' );
|
|
1790
1775
|
const newTabSettingInput = container.querySelector(
|
|
1791
1776
|
`#${ newTabSettingLabelForAttr }`
|
|
1792
1777
|
);
|
|
@@ -1795,7 +1780,7 @@ describe( 'Addition Settings UI', () => {
|
|
|
1795
1780
|
} );
|
|
1796
1781
|
|
|
1797
1782
|
it( 'should display a setting control with correct default state for each of the custom settings provided', async () => {
|
|
1798
|
-
const selectedLink =
|
|
1783
|
+
const selectedLink = fauxEntitySuggestions[ 0 ];
|
|
1799
1784
|
|
|
1800
1785
|
const customSettings = [
|
|
1801
1786
|
{
|
|
@@ -1951,8 +1936,7 @@ describe( 'Rich link previews', () => {
|
|
|
1951
1936
|
it( 'should not fetch or display rich previews by default', async () => {
|
|
1952
1937
|
mockFetchRichUrlData.mockImplementation( () =>
|
|
1953
1938
|
Promise.resolve( {
|
|
1954
|
-
title:
|
|
1955
|
-
'Blog Tool, Publishing Platform, and CMS \u2014 WordPress.org',
|
|
1939
|
+
title: 'Blog Tool, Publishing Platform, and CMS \u2014 WordPress.org',
|
|
1956
1940
|
icon: 'https://s.w.org/favicon.ico?2',
|
|
1957
1941
|
description:
|
|
1958
1942
|
'Open source software which you can use to easily create a beautiful website, blog, or app.',
|
|
@@ -1982,8 +1966,7 @@ describe( 'Rich link previews', () => {
|
|
|
1982
1966
|
it( 'should display a rich preview when data is available', async () => {
|
|
1983
1967
|
mockFetchRichUrlData.mockImplementation( () =>
|
|
1984
1968
|
Promise.resolve( {
|
|
1985
|
-
title:
|
|
1986
|
-
'Blog Tool, Publishing Platform, and CMS \u2014 WordPress.org',
|
|
1969
|
+
title: 'Blog Tool, Publishing Platform, and CMS \u2014 WordPress.org',
|
|
1987
1970
|
icon: 'https://s.w.org/favicon.ico?2',
|
|
1988
1971
|
description:
|
|
1989
1972
|
'Open source software which you can use to easily create a beautiful website, blog, or app.',
|
|
@@ -2093,8 +2076,7 @@ describe( 'Rich link previews', () => {
|
|
|
2093
2076
|
it( 'should display a fallback when icon is missing from rich data', async () => {
|
|
2094
2077
|
mockFetchRichUrlData.mockImplementation( () =>
|
|
2095
2078
|
Promise.resolve( {
|
|
2096
|
-
title:
|
|
2097
|
-
'Blog Tool, Publishing Platform, and CMS \u2014 WordPress.org',
|
|
2079
|
+
title: 'Blog Tool, Publishing Platform, and CMS \u2014 WordPress.org',
|
|
2098
2080
|
description:
|
|
2099
2081
|
'Open source software which you can use to easily create a beautiful website, blog, or app.',
|
|
2100
2082
|
image: 'https://s.w.org/images/home/screen-themes.png?3',
|
|
@@ -2136,8 +2118,7 @@ describe( 'Rich link previews', () => {
|
|
|
2136
2118
|
async ( dataItem ) => {
|
|
2137
2119
|
mockFetchRichUrlData.mockImplementation( () => {
|
|
2138
2120
|
const data = {
|
|
2139
|
-
title:
|
|
2140
|
-
'Blog Tool, Publishing Platform, and CMS \u2014 WordPress.org',
|
|
2121
|
+
title: 'Blog Tool, Publishing Platform, and CMS \u2014 WordPress.org',
|
|
2141
2122
|
icon: 'https://s.w.org/favicon.ico?2',
|
|
2142
2123
|
description:
|
|
2143
2124
|
'Open source software which you can use to easily create a beautiful website, blog, or app.',
|
|
@@ -2163,9 +2144,8 @@ describe( 'Rich link previews', () => {
|
|
|
2163
2144
|
"[aria-label='Currently selected']"
|
|
2164
2145
|
);
|
|
2165
2146
|
|
|
2166
|
-
const isRichLinkPreview =
|
|
2167
|
-
'is-rich'
|
|
2168
|
-
);
|
|
2147
|
+
const isRichLinkPreview =
|
|
2148
|
+
linkPreview.classList.contains( 'is-rich' );
|
|
2169
2149
|
expect( isRichLinkPreview ).toBe( true );
|
|
2170
2150
|
|
|
2171
2151
|
const missingDataItem = linkPreview.querySelector(
|
|
@@ -2202,9 +2182,8 @@ describe( 'Rich link previews', () => {
|
|
|
2202
2182
|
"[aria-label='Currently selected']"
|
|
2203
2183
|
);
|
|
2204
2184
|
|
|
2205
|
-
const isRichLinkPreview =
|
|
2206
|
-
'is-rich'
|
|
2207
|
-
);
|
|
2185
|
+
const isRichLinkPreview =
|
|
2186
|
+
linkPreview.classList.contains( 'is-rich' );
|
|
2208
2187
|
|
|
2209
2188
|
expect( isRichLinkPreview ).toBe( false );
|
|
2210
2189
|
}
|
|
@@ -2231,9 +2210,8 @@ describe( 'Rich link previews', () => {
|
|
|
2231
2210
|
"[aria-label='Currently selected']"
|
|
2232
2211
|
);
|
|
2233
2212
|
|
|
2234
|
-
const isFetchingRichPreview =
|
|
2235
|
-
'is-fetching'
|
|
2236
|
-
);
|
|
2213
|
+
const isFetchingRichPreview =
|
|
2214
|
+
linkPreview.classList.contains( 'is-fetching' );
|
|
2237
2215
|
const isRichLinkPreview = linkPreview.classList.contains( 'is-rich' );
|
|
2238
2216
|
|
|
2239
2217
|
expect( isFetchingRichPreview ).toBe( true );
|
|
@@ -2261,9 +2239,8 @@ describe( 'Rich link previews', () => {
|
|
|
2261
2239
|
"[aria-label='Currently selected']"
|
|
2262
2240
|
);
|
|
2263
2241
|
|
|
2264
|
-
const isFetchingRichPreview =
|
|
2265
|
-
'is-fetching'
|
|
2266
|
-
);
|
|
2242
|
+
const isFetchingRichPreview =
|
|
2243
|
+
linkPreview.classList.contains( 'is-fetching' );
|
|
2267
2244
|
|
|
2268
2245
|
const isRichLinkPreview = linkPreview.classList.contains( 'is-rich' );
|
|
2269
2246
|
|
|
@@ -2278,7 +2255,7 @@ describe( 'Rich link previews', () => {
|
|
|
2278
2255
|
} );
|
|
2279
2256
|
|
|
2280
2257
|
describe( 'Controlling link title text', () => {
|
|
2281
|
-
const selectedLink =
|
|
2258
|
+
const selectedLink = fauxEntitySuggestions[ 0 ];
|
|
2282
2259
|
|
|
2283
2260
|
it( 'should not show a means to alter the link title text by default', async () => {
|
|
2284
2261
|
act( () => {
|
|
@@ -2297,7 +2274,7 @@ describe( 'Controlling link title text', () => {
|
|
|
2297
2274
|
'should not show the link title text input when the URL is `%s`',
|
|
2298
2275
|
async ( urlValue ) => {
|
|
2299
2276
|
const selectedLinkWithoutURL = {
|
|
2300
|
-
...
|
|
2277
|
+
...fauxEntitySuggestions[ 0 ],
|
|
2301
2278
|
url: urlValue,
|
|
2302
2279
|
};
|
|
2303
2280
|
|
|
@@ -2440,10 +2417,12 @@ describe( 'Controlling link title text', () => {
|
|
|
2440
2417
|
Simulate.keyDown( textInput, { keyCode: ENTER } );
|
|
2441
2418
|
} );
|
|
2442
2419
|
|
|
2443
|
-
expect( mockOnChange ).toHaveBeenCalledWith(
|
|
2444
|
-
|
|
2445
|
-
|
|
2446
|
-
|
|
2420
|
+
expect( mockOnChange ).toHaveBeenCalledWith(
|
|
2421
|
+
expect.objectContaining( {
|
|
2422
|
+
title: textValue,
|
|
2423
|
+
url: selectedLink.url,
|
|
2424
|
+
} )
|
|
2425
|
+
);
|
|
2447
2426
|
|
|
2448
2427
|
// The text input should not be showing as the form is submitted.
|
|
2449
2428
|
expect(
|
|
@@ -138,8 +138,8 @@ export default function useSearchHandler(
|
|
|
138
138
|
|
|
139
139
|
return {
|
|
140
140
|
pageOnFront: getSettings().pageOnFront,
|
|
141
|
-
fetchSearchSuggestions:
|
|
142
|
-
.__experimentalFetchLinkSuggestions,
|
|
141
|
+
fetchSearchSuggestions:
|
|
142
|
+
getSettings().__experimentalFetchLinkSuggestions,
|
|
143
143
|
};
|
|
144
144
|
}, [] );
|
|
145
145
|
|
|
@@ -36,10 +36,8 @@ const ListViewBlockContents = forwardRef(
|
|
|
36
36
|
|
|
37
37
|
const { blockMovingClientId, selectedBlockInBlockEditor } = useSelect(
|
|
38
38
|
( select ) => {
|
|
39
|
-
const {
|
|
40
|
-
|
|
41
|
-
getSelectedBlockClientId,
|
|
42
|
-
} = select( blockEditorStore );
|
|
39
|
+
const { hasBlockMovingClientId, getSelectedBlockClientId } =
|
|
40
|
+
select( blockEditorStore );
|
|
43
41
|
return {
|
|
44
42
|
blockMovingClientId: hasBlockMovingClientId(),
|
|
45
43
|
selectedBlockInBlockEditor: getSelectedBlockClientId(),
|