@wordpress/block-editor 14.11.0 → 14.13.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/autocompleters/block.js +0 -1
- package/build/autocompleters/block.js.map +1 -1
- package/build/autocompleters/link.js +0 -1
- package/build/autocompleters/link.js.map +1 -1
- package/build/components/alignment-control/ui.js +0 -1
- package/build/components/alignment-control/ui.js.map +1 -1
- package/build/components/autocomplete/index.js +0 -1
- package/build/components/autocomplete/index.js.map +1 -1
- package/build/components/background-image-control/index.js +0 -1
- package/build/components/background-image-control/index.js.map +1 -1
- package/build/components/block-actions/index.js +0 -1
- package/build/components/block-actions/index.js.map +1 -1
- package/build/components/block-alignment-control/ui.js +0 -1
- package/build/components/block-alignment-control/ui.js.map +1 -1
- package/build/components/block-alignment-control/ui.native.js +0 -1
- package/build/components/block-alignment-control/ui.native.js.map +1 -1
- package/build/components/block-alignment-control/use-available-alignments.js +0 -1
- package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
- package/build/components/block-breadcrumb/index.js +0 -1
- package/build/components/block-breadcrumb/index.js.map +1 -1
- package/build/components/block-compare/index.js +0 -1
- package/build/components/block-compare/index.js.map +1 -1
- package/build/components/block-controls/fill.js +0 -1
- package/build/components/block-controls/fill.js.map +1 -1
- package/build/components/block-edit/edit.js +0 -1
- package/build/components/block-edit/edit.js.map +1 -1
- package/build/components/block-edit/edit.native.js +0 -1
- package/build/components/block-edit/edit.native.js.map +1 -1
- package/build/components/block-heading-level-dropdown/index.js +0 -1
- package/build/components/block-heading-level-dropdown/index.js.map +1 -1
- package/build/components/block-heading-level-dropdown/index.native.js +0 -1
- package/build/components/block-heading-level-dropdown/index.native.js.map +1 -1
- package/build/components/block-inspector/index.js +0 -1
- package/build/components/block-inspector/index.js.map +1 -1
- package/build/components/block-list/block-invalid-warning.js +0 -1
- package/build/components/block-list/block-invalid-warning.js.map +1 -1
- package/build/components/block-list/block-list-context.native.js +0 -1
- package/build/components/block-list/block-list-context.native.js.map +1 -1
- package/build/components/block-list/block.js +0 -1
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/block.native.js +0 -1
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/index.js +9 -6
- package/build/components/block-list/index.js.map +1 -1
- package/build/components/block-list/index.native.js +0 -1
- package/build/components/block-list/index.native.js.map +1 -1
- package/build/components/block-list/use-block-props/use-focus-first-element.js +0 -1
- package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
- package/build/components/block-list/use-in-between-inserter.js +0 -1
- package/build/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build/components/block-lock/modal.js +0 -1
- package/build/components/block-lock/modal.js.map +1 -1
- package/build/components/block-manager/category.js +0 -1
- package/build/components/block-manager/category.js.map +1 -1
- package/build/components/block-manager/checklist.js +0 -1
- package/build/components/block-manager/checklist.js.map +1 -1
- package/build/components/block-manager/index.js +0 -1
- package/build/components/block-manager/index.js.map +1 -1
- package/build/components/block-media-update-progress/index.native.js +0 -1
- package/build/components/block-media-update-progress/index.native.js.map +1 -1
- package/build/components/block-mover/index.native.js +0 -1
- package/build/components/block-mover/index.native.js.map +1 -1
- package/build/components/block-mover/mover-description.native.js +0 -1
- package/build/components/block-mover/mover-description.native.js.map +1 -1
- package/build/components/block-pattern-setup/index.js +0 -1
- package/build/components/block-pattern-setup/index.js.map +1 -1
- package/build/components/block-pattern-setup/use-patterns-setup.js +0 -1
- package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
- package/build/components/block-patterns-list/index.js +0 -1
- package/build/components/block-patterns-list/index.js.map +1 -1
- package/build/components/block-popover/use-popover-scroll.js +13 -7
- package/build/components/block-popover/use-popover-scroll.js.map +1 -1
- package/build/components/block-quick-navigation/index.js +0 -1
- package/build/components/block-quick-navigation/index.js.map +1 -1
- package/build/components/block-rename/modal.js +0 -1
- package/build/components/block-rename/modal.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js +0 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-styles/index.js +0 -1
- package/build/components/block-styles/index.js.map +1 -1
- package/build/components/block-styles/index.native.js +0 -1
- package/build/components/block-styles/index.native.js.map +1 -1
- package/build/components/block-styles/menu-items.js +0 -1
- package/build/components/block-styles/menu-items.js.map +1 -1
- package/build/components/block-styles/preview.native.js +0 -1
- package/build/components/block-styles/preview.native.js.map +1 -1
- package/build/components/block-switcher/block-transformations-menu.js +0 -1
- package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
- package/build/components/block-switcher/block-transformations-menu.native.js +0 -1
- package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
- package/build/components/block-switcher/block-variation-transformations.js +0 -1
- package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
- package/build/components/block-switcher/index.js +0 -1
- package/build/components/block-switcher/index.js.map +1 -1
- package/build/components/block-switcher/pattern-transformations-menu.js +0 -1
- package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build/components/block-switcher/use-transformed-patterns.js +0 -1
- package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
- package/build/components/block-switcher/utils.js +0 -1
- package/build/components/block-switcher/utils.js.map +1 -1
- package/build/components/block-toolbar/block-toolbar-menu.native.js +0 -1
- package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
- package/build/components/block-toolbar/change-design.js +0 -1
- package/build/components/block-toolbar/change-design.js.map +1 -1
- package/build/components/block-toolbar/index.js +0 -1
- package/build/components/block-toolbar/index.js.map +1 -1
- package/build/components/block-tools/block-toolbar-popover.js +3 -2
- package/build/components/block-tools/block-toolbar-popover.js.map +1 -1
- package/build/components/block-tools/use-selected-block-tool-props.js +0 -1
- package/build/components/block-tools/use-selected-block-tool-props.js.map +1 -1
- package/build/components/block-types-list/index.js +0 -1
- package/build/components/block-types-list/index.js.map +1 -1
- package/build/components/block-variation-picker/index.js +0 -1
- package/build/components/block-variation-picker/index.js.map +1 -1
- package/build/components/block-variation-picker/index.native.js +0 -1
- package/build/components/block-variation-picker/index.native.js.map +1 -1
- package/build/components/block-variation-transforms/index.js +0 -1
- package/build/components/block-variation-transforms/index.js.map +1 -1
- package/build/components/block-vertical-alignment-control/ui.js +0 -1
- package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build/components/border-radius-control/index.js +0 -1
- package/build/components/border-radius-control/index.js.map +1 -1
- package/build/components/border-radius-control/input-controls.js +0 -1
- package/build/components/border-radius-control/input-controls.js.map +1 -1
- package/build/components/border-radius-control/utils.js +0 -1
- package/build/components/border-radius-control/utils.js.map +1 -1
- package/build/components/colors/utils.js +0 -1
- package/build/components/colors/utils.js.map +1 -1
- package/build/components/colors/with-colors.js +0 -1
- package/build/components/colors/with-colors.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +0 -1
- package/build/components/colors-gradients/dropdown.js.map +1 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.js +0 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.native.js +0 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
- package/build/components/convert-to-group-buttons/toolbar.js +0 -1
- package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build/components/date-format-picker/index.js +0 -1
- package/build/components/date-format-picker/index.js.map +1 -1
- package/build/components/dimensions-tool/scale-tool.js +0 -1
- package/build/components/dimensions-tool/scale-tool.js.map +1 -1
- package/build/components/duotone/utils.js +0 -1
- package/build/components/duotone/utils.js.map +1 -1
- package/build/components/editor-styles/index.js +0 -1
- package/build/components/editor-styles/index.js.map +1 -1
- package/build/components/font-appearance-control/index.js +0 -1
- package/build/components/font-appearance-control/index.js.map +1 -1
- package/build/components/font-family/index.js +0 -1
- package/build/components/font-family/index.js.map +1 -1
- package/build/components/font-sizes/with-font-sizes.js +0 -1
- package/build/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build/components/global-styles/border-panel.js +0 -1
- package/build/components/global-styles/border-panel.js.map +1 -1
- package/build/components/global-styles/color-panel.js +0 -1
- package/build/components/global-styles/color-panel.js.map +1 -1
- package/build/components/global-styles/color-panel.native.js +0 -1
- package/build/components/global-styles/color-panel.native.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +0 -1
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/filters-panel.js +42 -25
- package/build/components/global-styles/filters-panel.js.map +1 -1
- package/build/components/global-styles/get-global-styles-changes.js +0 -1
- package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
- package/build/components/global-styles/shadow-panel-components.js +41 -17
- package/build/components/global-styles/shadow-panel-components.js.map +1 -1
- package/build/components/global-styles/typography-utils.js +0 -1
- package/build/components/global-styles/typography-utils.js.map +1 -1
- package/build/components/global-styles/use-global-styles-context.native.js +0 -1
- package/build/components/global-styles/use-global-styles-context.native.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +0 -1
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/global-styles/utils.js +0 -1
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/grid/grid-visualizer.js +11 -20
- package/build/components/grid/grid-visualizer.js.map +1 -1
- package/build/components/grid/use-grid-layout-sync.js +0 -1
- package/build/components/grid/use-grid-layout-sync.js.map +1 -1
- package/build/components/grid/utils.js +6 -5
- package/build/components/grid/utils.js.map +1 -1
- package/build/components/iframe/get-compatibility-styles.js +0 -1
- package/build/components/iframe/get-compatibility-styles.js.map +1 -1
- package/build/components/image-editor/aspect-ratio-dropdown.js +1 -2
- package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build/components/inner-blocks/index.js +2 -2
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inner-blocks/index.native.js +2 -2
- package/build/components/inner-blocks/index.native.js.map +1 -1
- package/build/components/inner-blocks/use-block-context.js +0 -1
- package/build/components/inner-blocks/use-block-context.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +0 -1
- package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-list.js +0 -1
- package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +0 -1
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +0 -1
- package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
- package/build/components/inserter/block-types-tab.js +0 -1
- package/build/components/inserter/block-types-tab.js.map +1 -1
- package/build/components/inserter/block-types-tab.native.js +0 -1
- package/build/components/inserter/block-types-tab.native.js.map +1 -1
- package/build/components/inserter/category-tabs/index.js +0 -1
- package/build/components/inserter/category-tabs/index.js.map +1 -1
- package/build/components/inserter/hooks/use-block-type-impressions.native.js +0 -1
- package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
- package/build/components/inserter/hooks/use-patterns-state.js +0 -1
- package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build/components/inserter/index.js +0 -1
- package/build/components/inserter/index.js.map +1 -1
- package/build/components/inserter/index.native.js +0 -1
- package/build/components/inserter/index.native.js.map +1 -1
- package/build/components/inserter/media-tab/hooks.js +0 -1
- package/build/components/inserter/media-tab/hooks.js.map +1 -1
- package/build/components/inserter/media-tab/media-list.js +0 -1
- package/build/components/inserter/media-tab/media-list.js.map +1 -1
- package/build/components/inserter/media-tab/media-tab.js +0 -1
- package/build/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build/components/inserter/menu.js +13 -2
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/mobile-tab-navigation.js +0 -1
- package/build/components/inserter/mobile-tab-navigation.js.map +1 -1
- package/build/components/inserter/no-results.js +3 -7
- package/build/components/inserter/no-results.js.map +1 -1
- package/build/components/inserter/quick-inserter.js +2 -1
- package/build/components/inserter/quick-inserter.js.map +1 -1
- package/build/components/inserter/search-items.js +0 -1
- package/build/components/inserter/search-items.js.map +1 -1
- package/build/components/inserter/search-results.js +1 -2
- package/build/components/inserter/search-results.js.map +1 -1
- package/build/components/inserter/tabs.native.js +0 -1
- package/build/components/inserter/tabs.native.js.map +1 -1
- package/build/components/inserter/utils.native.js +0 -1
- package/build/components/inserter/utils.native.js.map +1 -1
- package/build/components/inspector-controls/block-support-tools-panel.js +0 -1
- package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
- package/build/components/inspector-controls/fill.js +0 -1
- package/build/components/inspector-controls/fill.js.map +1 -1
- package/build/components/inspector-controls-tabs/index.js +0 -1
- package/build/components/inspector-controls-tabs/index.js.map +1 -1
- package/build/components/inspector-controls-tabs/position-controls-panel.js +49 -21
- package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
- package/build/components/inspector-popover-header/index.js +0 -1
- package/build/components/inspector-popover-header/index.js.map +1 -1
- package/build/components/justify-content-control/ui.js +0 -1
- package/build/components/justify-content-control/ui.js.map +1 -1
- package/build/components/keyboard-shortcuts/index.js +1 -1
- package/build/components/keyboard-shortcuts/index.js.map +1 -1
- package/build/components/link-control/index.js +0 -1
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/search-results.js +0 -1
- package/build/components/link-control/search-results.js.map +1 -1
- package/build/components/link-control/settings.js +0 -1
- package/build/components/link-control/settings.js.map +1 -1
- package/build/components/link-control/use-internal-value.js +0 -1
- package/build/components/link-control/use-internal-value.js.map +1 -1
- package/build/components/link-control/use-search-handler.js +0 -1
- package/build/components/link-control/use-search-handler.js.map +1 -1
- package/build/components/list-view/block-select-button.js +0 -1
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/block.js +0 -1
- package/build/components/list-view/block.js.map +1 -1
- package/build/components/list-view/branch.js +0 -1
- package/build/components/list-view/branch.js.map +1 -1
- package/build/components/list-view/index.js +0 -1
- package/build/components/list-view/index.js.map +1 -1
- package/build/components/list-view/use-block-selection.js +0 -1
- package/build/components/list-view/use-block-selection.js.map +1 -1
- package/build/components/list-view/use-clipboard-handler.js +0 -1
- package/build/components/list-view/use-clipboard-handler.js.map +1 -1
- package/build/components/list-view/use-list-view-block-indexes.js +0 -1
- package/build/components/list-view/use-list-view-block-indexes.js.map +1 -1
- package/build/components/list-view/use-list-view-drop-zone.js +0 -1
- package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build/components/list-view/utils.js +0 -1
- package/build/components/list-view/utils.js.map +1 -1
- package/build/components/media-placeholder/index.js +0 -1
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-placeholder/index.native.js +0 -1
- package/build/components/media-placeholder/index.native.js.map +1 -1
- package/build/components/media-replace-flow/index.js +0 -1
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/media-upload/index.native.js +0 -1
- package/build/components/media-upload/index.native.js.map +1 -1
- package/build/components/navigable-toolbar/index.js +0 -1
- package/build/components/navigable-toolbar/index.js.map +1 -1
- package/build/components/panel-color-settings/index.js +0 -1
- package/build/components/panel-color-settings/index.js.map +1 -1
- package/build/components/provider/use-block-sync.js +0 -1
- package/build/components/provider/use-block-sync.js.map +1 -1
- package/build/components/responsive-block-control/index.js +0 -1
- package/build/components/responsive-block-control/index.js.map +1 -1
- package/build/components/rich-text/embed-handler-picker.native.js +0 -1
- package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
- package/build/components/rich-text/event-listeners/before-input-rules.js +0 -1
- package/build/components/rich-text/event-listeners/before-input-rules.js.map +1 -1
- package/build/components/rich-text/event-listeners/delete.js +5 -3
- package/build/components/rich-text/event-listeners/delete.js.map +1 -1
- package/build/components/rich-text/event-listeners/index.js +0 -1
- package/build/components/rich-text/event-listeners/index.js.map +1 -1
- package/build/components/rich-text/event-listeners/input-rules.js +0 -1
- package/build/components/rich-text/event-listeners/input-rules.js.map +1 -1
- package/build/components/rich-text/event-listeners/paste-handler.js +0 -1
- package/build/components/rich-text/event-listeners/paste-handler.js.map +1 -1
- package/build/components/rich-text/file-paste-handler.native.js +0 -1
- package/build/components/rich-text/file-paste-handler.native.js.map +1 -1
- package/build/components/rich-text/format-edit.js +0 -1
- package/build/components/rich-text/format-edit.js.map +1 -1
- package/build/components/rich-text/format-toolbar/index.js +0 -1
- package/build/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build/components/rich-text/index.js +0 -1
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +0 -1
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/multiline.js +0 -1
- package/build/components/rich-text/multiline.js.map +1 -1
- package/build/components/rich-text/native/format-edit.js +0 -1
- package/build/components/rich-text/native/format-edit.js.map +1 -1
- package/build/components/rich-text/native/get-format-colors.native.js +0 -1
- package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
- package/build/components/rich-text/native/index.native.js +0 -1
- package/build/components/rich-text/native/index.native.js.map +1 -1
- package/build/components/rich-text/native/toolbar-button-with-options.native.js +0 -1
- package/build/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
- package/build/components/rich-text/native/use-format-types.js +0 -1
- package/build/components/rich-text/native/use-format-types.js.map +1 -1
- package/build/components/rich-text/use-format-types.js +0 -1
- package/build/components/rich-text/use-format-types.js.map +1 -1
- package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +0 -1
- package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
- package/build/components/spacing-sizes-control/index.js +44 -2
- package/build/components/spacing-sizes-control/index.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/axial.js +0 -1
- package/build/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/separated.js +0 -1
- package/build/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/single.js +0 -1
- package/build/components/spacing-sizes-control/input-controls/single.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +0 -1
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build/components/spacing-sizes-control/linked-button.js +6 -9
- package/build/components/spacing-sizes-control/linked-button.js.map +1 -1
- package/build/components/spacing-sizes-control/utils.js +0 -109
- package/build/components/spacing-sizes-control/utils.js.map +1 -1
- package/build/components/tabbed-sidebar/index.js +0 -1
- package/build/components/tabbed-sidebar/index.js.map +1 -1
- package/build/components/text-alignment-control/index.js +0 -1
- package/build/components/text-alignment-control/index.js.map +1 -1
- package/build/components/text-decoration-control/index.js +0 -1
- package/build/components/text-decoration-control/index.js.map +1 -1
- package/build/components/text-transform-control/index.js +0 -1
- package/build/components/text-transform-control/index.js.map +1 -1
- package/build/components/unsupported-block-details/index.native.js +0 -1
- package/build/components/unsupported-block-details/index.native.js.map +1 -1
- package/build/components/url-input/index.js +0 -1
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/url-popover/image-url-input-ui.js +0 -1
- package/build/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build/components/use-block-commands/index.js +0 -1
- package/build/components/use-block-commands/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.js +0 -1
- package/build/components/use-block-drop-zone/index.js.map +1 -1
- package/build/components/use-block-drop-zone/index.native.js +0 -1
- package/build/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build/components/use-flash-editable-blocks/index.js +0 -1
- package/build/components/use-flash-editable-blocks/index.js.map +1 -1
- package/build/components/use-on-block-drop/index.js +0 -1
- package/build/components/use-on-block-drop/index.js.map +1 -1
- package/build/components/use-on-block-drop/index.native.js +0 -1
- package/build/components/use-on-block-drop/index.native.js.map +1 -1
- package/build/components/use-paste-styles/index.js +0 -1
- package/build/components/use-paste-styles/index.js.map +1 -1
- package/build/components/warning/index.js +0 -1
- package/build/components/warning/index.js.map +1 -1
- package/build/components/writing-flow/use-arrow-nav.js +0 -1
- package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build/components/writing-flow/use-clipboard-handler.js +0 -1
- package/build/components/writing-flow/use-clipboard-handler.js.map +1 -1
- package/build/components/writing-flow/use-input.js +0 -1
- package/build/components/writing-flow/use-input.js.map +1 -1
- package/build/components/writing-flow/use-tab-nav.js +3 -1
- package/build/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build/components/writing-flow/utils.js +0 -1
- package/build/components/writing-flow/utils.js.map +1 -1
- package/build/components/writing-mode-control/index.js +0 -1
- package/build/components/writing-mode-control/index.js.map +1 -1
- package/build/hooks/align.js +0 -1
- package/build/hooks/align.js.map +1 -1
- package/build/hooks/align.native.js +0 -1
- package/build/hooks/align.native.js.map +1 -1
- package/build/hooks/aria-label.js +3 -8
- package/build/hooks/aria-label.js.map +1 -1
- package/build/hooks/block-bindings.js +0 -1
- package/build/hooks/block-bindings.js.map +1 -1
- package/build/hooks/block-hooks.js +0 -1
- package/build/hooks/block-hooks.js.map +1 -1
- package/build/hooks/block-style-variation.js +0 -1
- package/build/hooks/block-style-variation.js.map +1 -1
- package/build/hooks/border.js +0 -1
- package/build/hooks/border.js.map +1 -1
- package/build/hooks/contrast-checker.js +40 -22
- package/build/hooks/contrast-checker.js.map +1 -1
- package/build/hooks/custom-class-name.js +2 -1
- package/build/hooks/custom-class-name.js.map +1 -1
- package/build/hooks/duotone.js +0 -1
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/index.js +0 -1
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/layout.js +0 -1
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/position.js +0 -1
- package/build/hooks/position.js.map +1 -1
- package/build/hooks/style.js +0 -1
- package/build/hooks/style.js.map +1 -1
- package/build/hooks/supports.js +0 -1
- package/build/hooks/supports.js.map +1 -1
- package/build/hooks/text-align.js +0 -1
- package/build/hooks/text-align.js.map +1 -1
- package/build/hooks/typography.js +0 -1
- package/build/hooks/typography.js.map +1 -1
- package/build/hooks/utils.js +0 -1
- package/build/hooks/utils.js.map +1 -1
- package/build/layouts/constrained.js +0 -1
- package/build/layouts/constrained.js.map +1 -1
- package/build/layouts/flex.js +0 -1
- package/build/layouts/flex.js.map +1 -1
- package/build/layouts/flow.js +0 -1
- package/build/layouts/flow.js.map +1 -1
- package/build/layouts/index.js +0 -1
- package/build/layouts/index.js.map +1 -1
- package/build/layouts/utils.js +0 -1
- package/build/layouts/utils.js.map +1 -1
- package/build/store/actions.js +0 -1
- package/build/store/actions.js.map +1 -1
- package/build/store/get-block-settings.js +0 -1
- package/build/store/get-block-settings.js.map +1 -1
- package/build/store/private-actions.js +0 -1
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +0 -1
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +0 -1
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +13 -3
- package/build/store/selectors.js.map +1 -1
- package/build/store/utils.js +0 -1
- package/build/store/utils.js.map +1 -1
- package/build/utils/block-bindings.js +0 -1
- package/build/utils/block-bindings.js.map +1 -1
- package/build/utils/get-editor-region.js +0 -1
- package/build/utils/get-editor-region.js.map +1 -1
- package/build/utils/get-font-styles-and-weights.js +0 -1
- package/build/utils/get-font-styles-and-weights.js.map +1 -1
- package/build/utils/math.js +0 -1
- package/build/utils/math.js.map +1 -1
- package/build/utils/object.js +0 -1
- package/build/utils/object.js.map +1 -1
- package/build/utils/selection.js +0 -1
- package/build/utils/selection.js.map +1 -1
- package/build/utils/transform-styles/index.js +0 -1
- package/build/utils/transform-styles/index.js.map +1 -1
- package/build-module/autocompleters/block.js +0 -1
- package/build-module/autocompleters/block.js.map +1 -1
- package/build-module/autocompleters/link.js +0 -1
- package/build-module/autocompleters/link.js.map +1 -1
- package/build-module/components/alignment-control/ui.js +0 -1
- package/build-module/components/alignment-control/ui.js.map +1 -1
- package/build-module/components/autocomplete/index.js +0 -1
- package/build-module/components/autocomplete/index.js.map +1 -1
- package/build-module/components/background-image-control/index.js +0 -1
- package/build-module/components/background-image-control/index.js.map +1 -1
- package/build-module/components/block-actions/index.js +0 -1
- package/build-module/components/block-actions/index.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.js +0 -1
- package/build-module/components/block-alignment-control/ui.js.map +1 -1
- package/build-module/components/block-alignment-control/ui.native.js +0 -1
- package/build-module/components/block-alignment-control/ui.native.js.map +1 -1
- package/build-module/components/block-alignment-control/use-available-alignments.js +0 -1
- package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
- package/build-module/components/block-breadcrumb/index.js +0 -1
- package/build-module/components/block-breadcrumb/index.js.map +1 -1
- package/build-module/components/block-compare/index.js +0 -1
- package/build-module/components/block-compare/index.js.map +1 -1
- package/build-module/components/block-controls/fill.js +0 -1
- package/build-module/components/block-controls/fill.js.map +1 -1
- package/build-module/components/block-edit/edit.js +0 -1
- package/build-module/components/block-edit/edit.js.map +1 -1
- package/build-module/components/block-edit/edit.native.js +0 -1
- package/build-module/components/block-edit/edit.native.js.map +1 -1
- package/build-module/components/block-heading-level-dropdown/index.js +0 -1
- package/build-module/components/block-heading-level-dropdown/index.js.map +1 -1
- package/build-module/components/block-heading-level-dropdown/index.native.js +0 -1
- package/build-module/components/block-heading-level-dropdown/index.native.js.map +1 -1
- package/build-module/components/block-inspector/index.js +0 -1
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-list/block-invalid-warning.js +0 -1
- package/build-module/components/block-list/block-invalid-warning.js.map +1 -1
- package/build-module/components/block-list/block-list-context.native.js +0 -1
- package/build-module/components/block-list/block-list-context.native.js.map +1 -1
- package/build-module/components/block-list/block.js +0 -1
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/block.native.js +0 -1
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/index.js +9 -6
- package/build-module/components/block-list/index.js.map +1 -1
- package/build-module/components/block-list/index.native.js +0 -1
- package/build-module/components/block-list/index.native.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-focus-first-element.js +0 -1
- package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
- package/build-module/components/block-list/use-in-between-inserter.js +0 -1
- package/build-module/components/block-list/use-in-between-inserter.js.map +1 -1
- package/build-module/components/block-lock/modal.js +0 -1
- package/build-module/components/block-lock/modal.js.map +1 -1
- package/build-module/components/block-manager/category.js +0 -1
- package/build-module/components/block-manager/category.js.map +1 -1
- package/build-module/components/block-manager/checklist.js +0 -1
- package/build-module/components/block-manager/checklist.js.map +1 -1
- package/build-module/components/block-manager/index.js +0 -1
- package/build-module/components/block-manager/index.js.map +1 -1
- package/build-module/components/block-media-update-progress/index.native.js +0 -1
- package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
- package/build-module/components/block-mover/index.native.js +0 -1
- package/build-module/components/block-mover/index.native.js.map +1 -1
- package/build-module/components/block-mover/mover-description.native.js +0 -1
- package/build-module/components/block-mover/mover-description.native.js.map +1 -1
- package/build-module/components/block-pattern-setup/index.js +0 -1
- package/build-module/components/block-pattern-setup/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/use-patterns-setup.js +0 -1
- package/build-module/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
- package/build-module/components/block-patterns-list/index.js +0 -1
- package/build-module/components/block-patterns-list/index.js.map +1 -1
- package/build-module/components/block-popover/use-popover-scroll.js +12 -7
- package/build-module/components/block-popover/use-popover-scroll.js.map +1 -1
- package/build-module/components/block-quick-navigation/index.js +0 -1
- package/build-module/components/block-quick-navigation/index.js.map +1 -1
- package/build-module/components/block-rename/modal.js +0 -1
- package/build-module/components/block-rename/modal.js.map +1 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +0 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-styles/index.js +0 -1
- package/build-module/components/block-styles/index.js.map +1 -1
- package/build-module/components/block-styles/index.native.js +0 -1
- package/build-module/components/block-styles/index.native.js.map +1 -1
- package/build-module/components/block-styles/menu-items.js +0 -1
- package/build-module/components/block-styles/menu-items.js.map +1 -1
- package/build-module/components/block-styles/preview.native.js +0 -1
- package/build-module/components/block-styles/preview.native.js.map +1 -1
- package/build-module/components/block-switcher/block-transformations-menu.js +0 -1
- package/build-module/components/block-switcher/block-transformations-menu.js.map +1 -1
- package/build-module/components/block-switcher/block-transformations-menu.native.js +0 -1
- package/build-module/components/block-switcher/block-transformations-menu.native.js.map +1 -1
- package/build-module/components/block-switcher/block-variation-transformations.js +0 -1
- package/build-module/components/block-switcher/block-variation-transformations.js.map +1 -1
- package/build-module/components/block-switcher/index.js +0 -1
- package/build-module/components/block-switcher/index.js.map +1 -1
- package/build-module/components/block-switcher/pattern-transformations-menu.js +0 -1
- package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build-module/components/block-switcher/use-transformed-patterns.js +0 -1
- package/build-module/components/block-switcher/use-transformed-patterns.js.map +1 -1
- package/build-module/components/block-switcher/utils.js +0 -1
- package/build-module/components/block-switcher/utils.js.map +1 -1
- package/build-module/components/block-toolbar/block-toolbar-menu.native.js +0 -1
- package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
- package/build-module/components/block-toolbar/change-design.js +0 -1
- package/build-module/components/block-toolbar/change-design.js.map +1 -1
- package/build-module/components/block-toolbar/index.js +0 -1
- package/build-module/components/block-toolbar/index.js.map +1 -1
- package/build-module/components/block-tools/block-toolbar-popover.js +3 -2
- package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -1
- package/build-module/components/block-tools/use-selected-block-tool-props.js +0 -1
- package/build-module/components/block-tools/use-selected-block-tool-props.js.map +1 -1
- package/build-module/components/block-types-list/index.js +0 -1
- package/build-module/components/block-types-list/index.js.map +1 -1
- package/build-module/components/block-variation-picker/index.js +0 -1
- package/build-module/components/block-variation-picker/index.js.map +1 -1
- package/build-module/components/block-variation-picker/index.native.js +0 -1
- package/build-module/components/block-variation-picker/index.native.js.map +1 -1
- package/build-module/components/block-variation-transforms/index.js +0 -1
- package/build-module/components/block-variation-transforms/index.js.map +1 -1
- package/build-module/components/block-vertical-alignment-control/ui.js +0 -1
- package/build-module/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build-module/components/border-radius-control/index.js +0 -1
- package/build-module/components/border-radius-control/index.js.map +1 -1
- package/build-module/components/border-radius-control/input-controls.js +0 -1
- package/build-module/components/border-radius-control/input-controls.js.map +1 -1
- package/build-module/components/border-radius-control/utils.js +0 -1
- package/build-module/components/border-radius-control/utils.js.map +1 -1
- package/build-module/components/colors/utils.js +0 -1
- package/build-module/components/colors/utils.js.map +1 -1
- package/build-module/components/colors/with-colors.js +0 -1
- package/build-module/components/colors/with-colors.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +0 -1
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js +0 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +0 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
- package/build-module/components/convert-to-group-buttons/toolbar.js +0 -1
- package/build-module/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build-module/components/date-format-picker/index.js +0 -1
- package/build-module/components/date-format-picker/index.js.map +1 -1
- package/build-module/components/dimensions-tool/scale-tool.js +0 -1
- package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
- package/build-module/components/duotone/utils.js +0 -1
- package/build-module/components/duotone/utils.js.map +1 -1
- package/build-module/components/editor-styles/index.js +0 -1
- package/build-module/components/editor-styles/index.js.map +1 -1
- package/build-module/components/font-appearance-control/index.js +0 -1
- package/build-module/components/font-appearance-control/index.js.map +1 -1
- package/build-module/components/font-family/index.js +0 -1
- package/build-module/components/font-family/index.js.map +1 -1
- package/build-module/components/font-sizes/with-font-sizes.js +0 -1
- package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
- package/build-module/components/global-styles/border-panel.js +0 -1
- package/build-module/components/global-styles/border-panel.js.map +1 -1
- package/build-module/components/global-styles/color-panel.js +0 -1
- package/build-module/components/global-styles/color-panel.js.map +1 -1
- package/build-module/components/global-styles/color-panel.native.js +0 -1
- package/build-module/components/global-styles/color-panel.native.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +0 -1
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/filters-panel.js +45 -28
- package/build-module/components/global-styles/filters-panel.js.map +1 -1
- package/build-module/components/global-styles/get-global-styles-changes.js +0 -1
- package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
- package/build-module/components/global-styles/shadow-panel-components.js +44 -20
- package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
- package/build-module/components/global-styles/typography-utils.js +0 -1
- package/build-module/components/global-styles/typography-utils.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-context.native.js +0 -1
- package/build-module/components/global-styles/use-global-styles-context.native.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +0 -1
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/global-styles/utils.js +0 -1
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/grid/grid-visualizer.js +11 -20
- package/build-module/components/grid/grid-visualizer.js.map +1 -1
- package/build-module/components/grid/use-grid-layout-sync.js +0 -1
- package/build-module/components/grid/use-grid-layout-sync.js.map +1 -1
- package/build-module/components/grid/utils.js +6 -5
- package/build-module/components/grid/utils.js.map +1 -1
- package/build-module/components/iframe/get-compatibility-styles.js +0 -1
- package/build-module/components/iframe/get-compatibility-styles.js.map +1 -1
- package/build-module/components/image-editor/aspect-ratio-dropdown.js +1 -2
- package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +2 -2
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inner-blocks/index.native.js +2 -2
- package/build-module/components/inner-blocks/index.native.js.map +1 -1
- package/build-module/components/inner-blocks/use-block-context.js +0 -1
- package/build-module/components/inner-blocks/use-block-context.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +0 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +0 -1
- package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +0 -1
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +0 -1
- package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
- package/build-module/components/inserter/block-types-tab.js +0 -1
- package/build-module/components/inserter/block-types-tab.js.map +1 -1
- package/build-module/components/inserter/block-types-tab.native.js +0 -1
- package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
- package/build-module/components/inserter/category-tabs/index.js +0 -1
- package/build-module/components/inserter/category-tabs/index.js.map +1 -1
- package/build-module/components/inserter/hooks/use-block-type-impressions.native.js +0 -1
- package/build-module/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
- package/build-module/components/inserter/hooks/use-patterns-state.js +0 -1
- package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build-module/components/inserter/index.js +0 -1
- package/build-module/components/inserter/index.js.map +1 -1
- package/build-module/components/inserter/index.native.js +0 -1
- package/build-module/components/inserter/index.native.js.map +1 -1
- package/build-module/components/inserter/media-tab/hooks.js +0 -1
- package/build-module/components/inserter/media-tab/hooks.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-list.js +0 -1
- package/build-module/components/inserter/media-tab/media-list.js.map +1 -1
- package/build-module/components/inserter/media-tab/media-tab.js +0 -1
- package/build-module/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build-module/components/inserter/menu.js +13 -2
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/mobile-tab-navigation.js +0 -1
- package/build-module/components/inserter/mobile-tab-navigation.js.map +1 -1
- package/build-module/components/inserter/no-results.js +4 -8
- package/build-module/components/inserter/no-results.js.map +1 -1
- package/build-module/components/inserter/quick-inserter.js +2 -1
- package/build-module/components/inserter/quick-inserter.js.map +1 -1
- package/build-module/components/inserter/search-items.js +0 -1
- package/build-module/components/inserter/search-items.js.map +1 -1
- package/build-module/components/inserter/search-results.js +1 -2
- package/build-module/components/inserter/search-results.js.map +1 -1
- package/build-module/components/inserter/tabs.native.js +0 -1
- package/build-module/components/inserter/tabs.native.js.map +1 -1
- package/build-module/components/inserter/utils.native.js +0 -1
- package/build-module/components/inserter/utils.native.js.map +1 -1
- package/build-module/components/inspector-controls/block-support-tools-panel.js +0 -1
- package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
- package/build-module/components/inspector-controls/fill.js +0 -1
- package/build-module/components/inspector-controls/fill.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/index.js +0 -1
- package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/position-controls-panel.js +51 -23
- package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
- package/build-module/components/inspector-popover-header/index.js +0 -1
- package/build-module/components/inspector-popover-header/index.js.map +1 -1
- package/build-module/components/justify-content-control/ui.js +0 -1
- package/build-module/components/justify-content-control/ui.js.map +1 -1
- package/build-module/components/keyboard-shortcuts/index.js +1 -1
- package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
- package/build-module/components/link-control/index.js +0 -1
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/search-results.js +0 -1
- package/build-module/components/link-control/search-results.js.map +1 -1
- package/build-module/components/link-control/settings.js +0 -1
- package/build-module/components/link-control/settings.js.map +1 -1
- package/build-module/components/link-control/use-internal-value.js +0 -1
- package/build-module/components/link-control/use-internal-value.js.map +1 -1
- package/build-module/components/link-control/use-search-handler.js +0 -1
- package/build-module/components/link-control/use-search-handler.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +0 -1
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/block.js +0 -1
- package/build-module/components/list-view/block.js.map +1 -1
- package/build-module/components/list-view/branch.js +0 -1
- package/build-module/components/list-view/branch.js.map +1 -1
- package/build-module/components/list-view/index.js +0 -1
- package/build-module/components/list-view/index.js.map +1 -1
- package/build-module/components/list-view/use-block-selection.js +0 -1
- package/build-module/components/list-view/use-block-selection.js.map +1 -1
- package/build-module/components/list-view/use-clipboard-handler.js +0 -1
- package/build-module/components/list-view/use-clipboard-handler.js.map +1 -1
- package/build-module/components/list-view/use-list-view-block-indexes.js +0 -1
- package/build-module/components/list-view/use-list-view-block-indexes.js.map +1 -1
- package/build-module/components/list-view/use-list-view-drop-zone.js +0 -1
- package/build-module/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build-module/components/list-view/utils.js +0 -1
- package/build-module/components/list-view/utils.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +0 -1
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-placeholder/index.native.js +0 -1
- package/build-module/components/media-placeholder/index.native.js.map +1 -1
- package/build-module/components/media-replace-flow/index.js +0 -1
- package/build-module/components/media-replace-flow/index.js.map +1 -1
- package/build-module/components/media-upload/index.native.js +0 -1
- package/build-module/components/media-upload/index.native.js.map +1 -1
- package/build-module/components/navigable-toolbar/index.js +0 -1
- package/build-module/components/navigable-toolbar/index.js.map +1 -1
- package/build-module/components/panel-color-settings/index.js +0 -1
- package/build-module/components/panel-color-settings/index.js.map +1 -1
- package/build-module/components/provider/use-block-sync.js +0 -1
- package/build-module/components/provider/use-block-sync.js.map +1 -1
- package/build-module/components/responsive-block-control/index.js +0 -1
- package/build-module/components/responsive-block-control/index.js.map +1 -1
- package/build-module/components/rich-text/embed-handler-picker.native.js +0 -1
- package/build-module/components/rich-text/embed-handler-picker.native.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/before-input-rules.js +0 -1
- package/build-module/components/rich-text/event-listeners/before-input-rules.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/delete.js +5 -3
- package/build-module/components/rich-text/event-listeners/delete.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/index.js +0 -1
- package/build-module/components/rich-text/event-listeners/index.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/input-rules.js +0 -1
- package/build-module/components/rich-text/event-listeners/input-rules.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/paste-handler.js +0 -1
- package/build-module/components/rich-text/event-listeners/paste-handler.js.map +1 -1
- package/build-module/components/rich-text/file-paste-handler.native.js +0 -1
- package/build-module/components/rich-text/file-paste-handler.native.js.map +1 -1
- package/build-module/components/rich-text/format-edit.js +0 -1
- package/build-module/components/rich-text/format-edit.js.map +1 -1
- package/build-module/components/rich-text/format-toolbar/index.js +0 -1
- package/build-module/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build-module/components/rich-text/index.js +0 -1
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +0 -1
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/multiline.js +0 -1
- package/build-module/components/rich-text/multiline.js.map +1 -1
- package/build-module/components/rich-text/native/format-edit.js +0 -1
- package/build-module/components/rich-text/native/format-edit.js.map +1 -1
- package/build-module/components/rich-text/native/get-format-colors.native.js +0 -1
- package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
- package/build-module/components/rich-text/native/index.native.js +0 -1
- package/build-module/components/rich-text/native/index.native.js.map +1 -1
- package/build-module/components/rich-text/native/toolbar-button-with-options.native.js +0 -1
- package/build-module/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
- package/build-module/components/rich-text/native/use-format-types.js +0 -1
- package/build-module/components/rich-text/native/use-format-types.js.map +1 -1
- package/build-module/components/rich-text/use-format-types.js +0 -1
- package/build-module/components/rich-text/use-format-types.js.map +1 -1
- package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +0 -1
- package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
- package/build-module/components/spacing-sizes-control/index.js +45 -1
- package/build-module/components/spacing-sizes-control/index.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/axial.js +0 -1
- package/build-module/components/spacing-sizes-control/input-controls/axial.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/separated.js +0 -1
- package/build-module/components/spacing-sizes-control/input-controls/separated.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/single.js +0 -1
- package/build-module/components/spacing-sizes-control/input-controls/single.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +0 -1
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build-module/components/spacing-sizes-control/linked-button.js +7 -10
- package/build-module/components/spacing-sizes-control/linked-button.js.map +1 -1
- package/build-module/components/spacing-sizes-control/utils.js +0 -105
- package/build-module/components/spacing-sizes-control/utils.js.map +1 -1
- package/build-module/components/tabbed-sidebar/index.js +0 -1
- package/build-module/components/tabbed-sidebar/index.js.map +1 -1
- package/build-module/components/text-alignment-control/index.js +0 -1
- package/build-module/components/text-alignment-control/index.js.map +1 -1
- package/build-module/components/text-decoration-control/index.js +0 -1
- package/build-module/components/text-decoration-control/index.js.map +1 -1
- package/build-module/components/text-transform-control/index.js +0 -1
- package/build-module/components/text-transform-control/index.js.map +1 -1
- package/build-module/components/unsupported-block-details/index.native.js +0 -1
- package/build-module/components/unsupported-block-details/index.native.js.map +1 -1
- package/build-module/components/url-input/index.js +0 -1
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/url-popover/image-url-input-ui.js +0 -1
- package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build-module/components/use-block-commands/index.js +0 -1
- package/build-module/components/use-block-commands/index.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.js +0 -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 +0 -1
- package/build-module/components/use-block-drop-zone/index.native.js.map +1 -1
- package/build-module/components/use-flash-editable-blocks/index.js +0 -1
- package/build-module/components/use-flash-editable-blocks/index.js.map +1 -1
- package/build-module/components/use-on-block-drop/index.js +0 -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 +0 -1
- package/build-module/components/use-on-block-drop/index.native.js.map +1 -1
- package/build-module/components/use-paste-styles/index.js +0 -1
- package/build-module/components/use-paste-styles/index.js.map +1 -1
- package/build-module/components/warning/index.js +0 -1
- package/build-module/components/warning/index.js.map +1 -1
- package/build-module/components/writing-flow/use-arrow-nav.js +0 -1
- package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
- package/build-module/components/writing-flow/use-clipboard-handler.js +0 -1
- package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -1
- package/build-module/components/writing-flow/use-input.js +0 -1
- package/build-module/components/writing-flow/use-input.js.map +1 -1
- package/build-module/components/writing-flow/use-tab-nav.js +3 -1
- package/build-module/components/writing-flow/use-tab-nav.js.map +1 -1
- package/build-module/components/writing-flow/utils.js +0 -1
- package/build-module/components/writing-flow/utils.js.map +1 -1
- package/build-module/components/writing-mode-control/index.js +0 -1
- package/build-module/components/writing-mode-control/index.js.map +1 -1
- package/build-module/hooks/align.js +0 -1
- package/build-module/hooks/align.js.map +1 -1
- package/build-module/hooks/align.native.js +0 -1
- package/build-module/hooks/align.native.js.map +1 -1
- package/build-module/hooks/aria-label.js +3 -7
- package/build-module/hooks/aria-label.js.map +1 -1
- package/build-module/hooks/block-bindings.js +0 -1
- package/build-module/hooks/block-bindings.js.map +1 -1
- package/build-module/hooks/block-hooks.js +0 -1
- package/build-module/hooks/block-hooks.js.map +1 -1
- package/build-module/hooks/block-style-variation.js +0 -1
- package/build-module/hooks/block-style-variation.js.map +1 -1
- package/build-module/hooks/border.js +0 -1
- package/build-module/hooks/border.js.map +1 -1
- package/build-module/hooks/contrast-checker.js +41 -23
- package/build-module/hooks/contrast-checker.js.map +1 -1
- package/build-module/hooks/custom-class-name.js +2 -1
- package/build-module/hooks/custom-class-name.js.map +1 -1
- package/build-module/hooks/duotone.js +0 -1
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/index.js +0 -1
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/layout.js +0 -1
- package/build-module/hooks/layout.js.map +1 -1
- package/build-module/hooks/position.js +0 -1
- package/build-module/hooks/position.js.map +1 -1
- package/build-module/hooks/style.js +0 -1
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/hooks/supports.js +0 -1
- package/build-module/hooks/supports.js.map +1 -1
- package/build-module/hooks/text-align.js +0 -1
- package/build-module/hooks/text-align.js.map +1 -1
- package/build-module/hooks/typography.js +0 -1
- package/build-module/hooks/typography.js.map +1 -1
- package/build-module/hooks/utils.js +0 -1
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/layouts/constrained.js +0 -1
- package/build-module/layouts/constrained.js.map +1 -1
- package/build-module/layouts/flex.js +0 -1
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/layouts/flow.js +0 -1
- package/build-module/layouts/flow.js.map +1 -1
- package/build-module/layouts/index.js +0 -1
- package/build-module/layouts/index.js.map +1 -1
- package/build-module/layouts/utils.js +0 -1
- package/build-module/layouts/utils.js.map +1 -1
- package/build-module/store/actions.js +0 -1
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/get-block-settings.js +0 -1
- package/build-module/store/get-block-settings.js.map +1 -1
- package/build-module/store/private-actions.js +0 -1
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +0 -1
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +0 -1
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +13 -3
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/store/utils.js +0 -1
- package/build-module/store/utils.js.map +1 -1
- package/build-module/utils/block-bindings.js +0 -1
- package/build-module/utils/block-bindings.js.map +1 -1
- package/build-module/utils/get-editor-region.js +0 -1
- package/build-module/utils/get-editor-region.js.map +1 -1
- package/build-module/utils/get-font-styles-and-weights.js +0 -1
- package/build-module/utils/get-font-styles-and-weights.js.map +1 -1
- package/build-module/utils/math.js +0 -1
- package/build-module/utils/math.js.map +1 -1
- package/build-module/utils/object.js +0 -1
- package/build-module/utils/object.js.map +1 -1
- package/build-module/utils/selection.js +0 -1
- package/build-module/utils/selection.js.map +1 -1
- package/build-module/utils/transform-styles/index.js +0 -1
- package/build-module/utils/transform-styles/index.js.map +1 -1
- package/build-style/content-rtl.css +22 -25
- package/build-style/content.css +22 -25
- package/build-style/style-rtl.css +131 -104
- package/build-style/style.css +131 -104
- package/package.json +34 -34
- package/src/components/block-canvas/style.scss +3 -2
- package/src/components/block-draggable/style.scss +3 -1
- package/src/components/block-list/content.scss +19 -12
- package/src/components/block-list/index.js +21 -7
- package/src/components/block-mover/style.scss +5 -4
- package/src/components/block-pattern-setup/style.scss +3 -1
- package/src/components/block-patterns-list/style.scss +3 -3
- package/src/components/block-popover/use-popover-scroll.js +13 -8
- package/src/components/block-switcher/style.scss +3 -1
- package/src/components/block-toolbar/style.scss +5 -3
- package/src/components/block-tools/block-toolbar-popover.js +4 -3
- package/src/components/block-tools/style.scss +6 -3
- package/src/components/button-block-appender/content.scss +2 -4
- package/src/components/colors-gradients/style.scss +3 -2
- package/src/components/global-styles/filters-panel.js +48 -21
- package/src/components/global-styles/shadow-panel-components.js +44 -13
- package/src/components/global-styles/style.scss +53 -1
- package/src/components/grid/grid-visualizer.js +10 -21
- package/src/components/grid/style.scss +6 -4
- package/src/components/grid/utils.js +6 -4
- package/src/components/iframe/content.scss +5 -2
- package/src/components/image-editor/aspect-ratio-dropdown.js +1 -1
- package/src/components/inner-blocks/index.js +2 -2
- package/src/components/inner-blocks/index.native.js +2 -2
- package/src/components/inserter/menu.js +11 -9
- package/src/components/inserter/no-results.js +0 -5
- package/src/components/inserter/quick-inserter.js +4 -1
- package/src/components/inserter/search-results.js +3 -1
- package/src/components/inserter/style.scss +6 -8
- package/src/components/inserter-list-item/style.scss +9 -6
- package/src/components/inspector-controls-tabs/position-controls-panel.js +62 -27
- package/src/components/keyboard-shortcuts/index.js +1 -1
- package/src/components/link-control/style.scss +11 -6
- package/src/components/list-view/style.scss +34 -17
- package/src/components/rich-text/event-listeners/delete.js +3 -3
- package/src/components/spacing-sizes-control/README.md +93 -0
- package/src/components/spacing-sizes-control/index.js +44 -1
- package/src/components/spacing-sizes-control/linked-button.js +8 -10
- package/src/components/spacing-sizes-control/test/utils.js +0 -151
- package/src/components/spacing-sizes-control/utils.js +0 -106
- package/src/components/url-input/style.scss +3 -2
- package/src/components/writing-flow/use-tab-nav.js +4 -0
- package/src/hooks/aria-label.js +3 -8
- package/src/hooks/contrast-checker.js +64 -30
- package/src/hooks/custom-class-name.js +2 -1
- package/src/store/selectors.js +15 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","speak","__","_x","sprintf","Dropdown","Button","Component","withDispatch","withSelect","compose","ifCondition","createBlock","store","blocksStore","plus","InserterMenu","QuickInserter","blockEditorStore","jsx","_jsx","defaultRenderToggle","onToggle","disabled","isOpen","blockTitle","hasSingleBlockType","toggleProps","as","Wrapper","label","labelProp","onClick","rest","handleClick","event","__next40pxDefaultSize","undefined","icon","tooltipPosition","className","Inserter","constructor","arguments","bind","renderToggle","renderContent","props","directInsertBlock","hasItems","onClose","rootClientId","clientId","isAppender","showInserterHelpPanel","__experimentalIsQuick","isQuick","onSelectOrClose","selectBlockOnInsert","onSelect","blocks","firstBlock","Array","isArray","length","render","position","insertOnlyAllowedBlock","contentClassName","popoverProps","shift","expandOnMobile","headerTitle","select","shouldDirectInsert","getBlockRootClientId","hasInserterItems","getAllowedBlocks","getDirectInsertBlock","getBlockVariations","allowedBlocks","name","allowedBlockType","title","dispatch","ownProps","getAdjacentBlockAttributes","attributesToCopy","getBlock","getPreviousBlockClientId","result","adjacentAttributes","parentBlock","innerBlocks","lastInnerBlock","attributes","currentBlock","previousBlock","forEach","attribute","hasOwnProperty","getInsertionIndex","getBlockIndex","getBlockSelectionEnd","getBlockOrder","end","insertBlock","blockToInsert","newAttributes","message"],"sources":["@wordpress/block-editor/src/components/inserter/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { speak } from '@wordpress/a11y';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { Dropdown, Button } from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, ifCondition } from '@wordpress/compose';\nimport { createBlock, store as blocksStore } from '@wordpress/blocks';\nimport { plus } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport InserterMenu from './menu';\nimport QuickInserter from './quick-inserter';\nimport { store as blockEditorStore } from '../../store';\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\tisOpen,\n\tblockTitle,\n\thasSingleBlockType,\n\ttoggleProps = {},\n} ) => {\n\tconst {\n\t\tas: Wrapper = Button,\n\t\tlabel: labelProp,\n\t\tonClick,\n\t\t...rest\n\t} = toggleProps;\n\n\tlet label = labelProp;\n\tif ( ! label && hasSingleBlockType ) {\n\t\tlabel = sprintf(\n\t\t\t// translators: %s: the name of the block when there is only one\n\t\t\t_x( 'Add %s', 'directly add the only allowed block' ),\n\t\t\tblockTitle\n\t\t);\n\t} else if ( ! label ) {\n\t\tlabel = _x( 'Add block', 'Generic label for block inserter button' );\n\t}\n\n\t// Handle both onClick functions from the toggle and the parent component.\n\tfunction handleClick( event ) {\n\t\tif ( onToggle ) {\n\t\t\tonToggle( event );\n\t\t}\n\t\tif ( onClick ) {\n\t\t\tonClick( event );\n\t\t}\n\t}\n\n\treturn (\n\t\t<Wrapper\n\t\t\t__next40pxDefaultSize={ toggleProps.as ? undefined : true }\n\t\t\ticon={ plus }\n\t\t\tlabel={ label }\n\t\t\ttooltipPosition=\"bottom\"\n\t\t\tonClick={ handleClick }\n\t\t\tclassName=\"block-editor-inserter__toggle\"\n\t\t\taria-haspopup={ ! hasSingleBlockType ? 'true' : false }\n\t\t\taria-expanded={ ! hasSingleBlockType ? isOpen : false }\n\t\t\tdisabled={ disabled }\n\t\t\t{ ...rest }\n\t\t/>\n\t);\n};\n\nclass Inserter extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderToggle = this.renderToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { onToggle } = this.props;\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown toggle element.\n\t */\n\trenderToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\tblockTitle,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\ttoggleProps,\n\t\t\thasItems,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t} = this.props;\n\n\t\treturn renderToggle( {\n\t\t\tonToggle,\n\t\t\tisOpen,\n\t\t\tdisabled: disabled || ! hasItems,\n\t\t\tblockTitle,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\ttoggleProps,\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t *\n\t * @return {Element} Dropdown content element.\n\t */\n\trenderContent( { onClose } ) {\n\t\tconst {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tshowInserterHelpPanel,\n\n\t\t\t// This prop is experimental to give some time for the quick inserter to mature\n\t\t\t// Feel free to make them stable after a few releases.\n\t\t\t__experimentalIsQuick: isQuick,\n\t\t\tonSelectOrClose,\n\t\t\tselectBlockOnInsert,\n\t\t} = this.props;\n\n\t\tif ( isQuick ) {\n\t\t\treturn (\n\t\t\t\t<QuickInserter\n\t\t\t\t\tonSelect={ ( blocks ) => {\n\t\t\t\t\t\tconst firstBlock =\n\t\t\t\t\t\t\tArray.isArray( blocks ) && blocks?.length\n\t\t\t\t\t\t\t\t? blocks[ 0 ]\n\t\t\t\t\t\t\t\t: blocks;\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tonSelectOrClose &&\n\t\t\t\t\t\t\ttypeof onSelectOrClose === 'function'\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tonSelectOrClose( firstBlock );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\tselectBlockOnInsert={ selectBlockOnInsert }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tonSelect={ () => {\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshowInserterHelpPanel={ showInserterHelpPanel }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tposition,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\tinsertOnlyAllowedBlock,\n\t\t\t__experimentalIsQuick: isQuick,\n\t\t\tonSelectOrClose,\n\t\t} = this.props;\n\n\t\tif ( hasSingleBlockType || directInsertBlock ) {\n\t\t\treturn this.renderToggle( { onToggle: insertOnlyAllowedBlock } );\n\t\t}\n\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tclassName=\"block-editor-inserter\"\n\t\t\t\tcontentClassName={ clsx( 'block-editor-inserter__popover', {\n\t\t\t\t\t'is-quick': isQuick,\n\t\t\t\t} ) }\n\t\t\t\tpopoverProps={ { position, shift: true } }\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\texpandOnMobile\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t\tonClose={ onSelectOrClose }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect(\n\t\t( select, { clientId, rootClientId, shouldDirectInsert = true } ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasInserterItems,\n\t\t\t\tgetAllowedBlocks,\n\t\t\t\tgetDirectInsertBlock,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst { getBlockVariations } = select( blocksStore );\n\n\t\t\trootClientId =\n\t\t\t\trootClientId || getBlockRootClientId( clientId ) || undefined;\n\n\t\t\tconst allowedBlocks = getAllowedBlocks( rootClientId );\n\n\t\t\tconst directInsertBlock =\n\t\t\t\tshouldDirectInsert && getDirectInsertBlock( rootClientId );\n\n\t\t\tconst hasSingleBlockType =\n\t\t\t\tallowedBlocks?.length === 1 &&\n\t\t\t\tgetBlockVariations( allowedBlocks[ 0 ].name, 'inserter' )\n\t\t\t\t\t?.length === 0;\n\n\t\t\tlet allowedBlockType = false;\n\t\t\tif ( hasSingleBlockType ) {\n\t\t\t\tallowedBlockType = allowedBlocks[ 0 ];\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\thasItems: hasInserterItems( rootClientId ),\n\t\t\t\thasSingleBlockType,\n\t\t\t\tblockTitle: allowedBlockType ? allowedBlockType.title : '',\n\t\t\t\tallowedBlockType,\n\t\t\t\tdirectInsertBlock,\n\t\t\t\trootClientId,\n\t\t\t};\n\t\t}\n\t),\n\twithDispatch( ( dispatch, ownProps, { select } ) => {\n\t\treturn {\n\t\t\tinsertOnlyAllowedBlock() {\n\t\t\t\tconst {\n\t\t\t\t\trootClientId,\n\t\t\t\t\tclientId,\n\t\t\t\t\tisAppender,\n\t\t\t\t\thasSingleBlockType,\n\t\t\t\t\tallowedBlockType,\n\t\t\t\t\tdirectInsertBlock,\n\t\t\t\t\tonSelectOrClose,\n\t\t\t\t\tselectBlockOnInsert,\n\t\t\t\t} = ownProps;\n\n\t\t\t\tif ( ! hasSingleBlockType && ! directInsertBlock ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tfunction getAdjacentBlockAttributes( attributesToCopy ) {\n\t\t\t\t\tconst { getBlock, getPreviousBlockClientId } =\n\t\t\t\t\t\tselect( blockEditorStore );\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t! attributesToCopy ||\n\t\t\t\t\t\t( ! clientId && ! rootClientId )\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn {};\n\t\t\t\t\t}\n\n\t\t\t\t\tconst result = {};\n\t\t\t\t\tlet adjacentAttributes = {};\n\n\t\t\t\t\t// If there is no clientId, then attempt to get attributes\n\t\t\t\t\t// from the last block within innerBlocks of the root block.\n\t\t\t\t\tif ( ! clientId ) {\n\t\t\t\t\t\tconst parentBlock = getBlock( rootClientId );\n\n\t\t\t\t\t\tif ( parentBlock?.innerBlocks?.length ) {\n\t\t\t\t\t\t\tconst lastInnerBlock =\n\t\t\t\t\t\t\t\tparentBlock.innerBlocks[\n\t\t\t\t\t\t\t\t\tparentBlock.innerBlocks.length - 1\n\t\t\t\t\t\t\t\t];\n\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tdirectInsertBlock &&\n\t\t\t\t\t\t\t\tdirectInsertBlock?.name === lastInnerBlock.name\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tadjacentAttributes = lastInnerBlock.attributes;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Otherwise, attempt to get attributes from the\n\t\t\t\t\t\t// previous block relative to the current clientId.\n\t\t\t\t\t\tconst currentBlock = getBlock( clientId );\n\t\t\t\t\t\tconst previousBlock = getBlock(\n\t\t\t\t\t\t\tgetPreviousBlockClientId( clientId )\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tif ( currentBlock?.name === previousBlock?.name ) {\n\t\t\t\t\t\t\tadjacentAttributes =\n\t\t\t\t\t\t\t\tpreviousBlock?.attributes || {};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Copy over only those attributes flagged to be copied.\n\t\t\t\t\tattributesToCopy.forEach( ( attribute ) => {\n\t\t\t\t\t\tif ( adjacentAttributes.hasOwnProperty( attribute ) ) {\n\t\t\t\t\t\t\tresult[ attribute ] =\n\t\t\t\t\t\t\t\tadjacentAttributes[ attribute ];\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tfunction getInsertionIndex() {\n\t\t\t\t\tconst {\n\t\t\t\t\t\tgetBlockIndex,\n\t\t\t\t\t\tgetBlockSelectionEnd,\n\t\t\t\t\t\tgetBlockOrder,\n\t\t\t\t\t\tgetBlockRootClientId,\n\t\t\t\t\t} = select( blockEditorStore );\n\n\t\t\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\t\t\tif ( clientId ) {\n\t\t\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t\t\t}\n\n\t\t\t\t\t// If there a selected block, we insert after the selected block.\n\t\t\t\t\tconst end = getBlockSelectionEnd();\n\t\t\t\t\tif (\n\t\t\t\t\t\t! isAppender &&\n\t\t\t\t\t\tend &&\n\t\t\t\t\t\tgetBlockRootClientId( end ) === rootClientId\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn getBlockIndex( end ) + 1;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\t\t\treturn getBlockOrder( rootClientId ).length;\n\t\t\t\t}\n\n\t\t\t\tconst { insertBlock } = dispatch( blockEditorStore );\n\n\t\t\t\tlet blockToInsert;\n\n\t\t\t\t// Attempt to augment the directInsertBlock with attributes from an adjacent block.\n\t\t\t\t// This ensures styling from nearby blocks is preserved in the newly inserted block.\n\t\t\t\t// See: https://github.com/WordPress/gutenberg/issues/37904\n\t\t\t\tif ( directInsertBlock ) {\n\t\t\t\t\tconst newAttributes = getAdjacentBlockAttributes(\n\t\t\t\t\t\tdirectInsertBlock.attributesToCopy\n\t\t\t\t\t);\n\n\t\t\t\t\tblockToInsert = createBlock( directInsertBlock.name, {\n\t\t\t\t\t\t...( directInsertBlock.attributes || {} ),\n\t\t\t\t\t\t...newAttributes,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tblockToInsert = createBlock( allowedBlockType.name );\n\t\t\t\t}\n\n\t\t\t\tinsertBlock(\n\t\t\t\t\tblockToInsert,\n\t\t\t\t\tgetInsertionIndex(),\n\t\t\t\t\trootClientId,\n\t\t\t\t\tselectBlockOnInsert\n\t\t\t\t);\n\n\t\t\t\tif ( onSelectOrClose ) {\n\t\t\t\t\tonSelectOrClose( {\n\t\t\t\t\t\tclientId: blockToInsert?.clientId,\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tconst message = sprintf(\n\t\t\t\t\t// translators: %s: the name of the block that has been added\n\t\t\t\t\t__( '%s block added' ),\n\t\t\t\t\tallowedBlockType.title\n\t\t\t\t);\n\t\t\t\tspeak( message );\n\t\t\t},\n\t\t};\n\t} ),\n\t// The global inserter should always be visible, we are using ( ! isAppender && ! rootClientId && ! clientId ) as\n\t// a way to detect the global Inserter.\n\tifCondition(\n\t\t( { hasItems, isAppender, rootClientId, clientId } ) =>\n\t\t\thasItems || ( ! isAppender && ! rootClientId && ! clientId )\n\t),\n] )( Inserter );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","speak","__","_x","sprintf","Dropdown","Button","Component","withDispatch","withSelect","compose","ifCondition","createBlock","store","blocksStore","plus","InserterMenu","QuickInserter","blockEditorStore","jsx","_jsx","defaultRenderToggle","onToggle","disabled","isOpen","blockTitle","hasSingleBlockType","toggleProps","as","Wrapper","label","labelProp","onClick","rest","handleClick","event","__next40pxDefaultSize","undefined","icon","tooltipPosition","className","Inserter","constructor","arguments","bind","renderToggle","renderContent","props","directInsertBlock","hasItems","onClose","rootClientId","clientId","isAppender","showInserterHelpPanel","__experimentalIsQuick","isQuick","onSelectOrClose","selectBlockOnInsert","onSelect","blocks","firstBlock","Array","isArray","length","render","position","insertOnlyAllowedBlock","contentClassName","popoverProps","shift","expandOnMobile","headerTitle","select","shouldDirectInsert","getBlockRootClientId","hasInserterItems","getAllowedBlocks","getDirectInsertBlock","getBlockVariations","allowedBlocks","name","allowedBlockType","title","dispatch","ownProps","getAdjacentBlockAttributes","attributesToCopy","getBlock","getPreviousBlockClientId","result","adjacentAttributes","parentBlock","innerBlocks","lastInnerBlock","attributes","currentBlock","previousBlock","forEach","attribute","hasOwnProperty","getInsertionIndex","getBlockIndex","getBlockSelectionEnd","getBlockOrder","end","insertBlock","blockToInsert","newAttributes","message"],"sources":["@wordpress/block-editor/src/components/inserter/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { speak } from '@wordpress/a11y';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { Dropdown, Button } from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, ifCondition } from '@wordpress/compose';\nimport { createBlock, store as blocksStore } from '@wordpress/blocks';\nimport { plus } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport InserterMenu from './menu';\nimport QuickInserter from './quick-inserter';\nimport { store as blockEditorStore } from '../../store';\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\tisOpen,\n\tblockTitle,\n\thasSingleBlockType,\n\ttoggleProps = {},\n} ) => {\n\tconst {\n\t\tas: Wrapper = Button,\n\t\tlabel: labelProp,\n\t\tonClick,\n\t\t...rest\n\t} = toggleProps;\n\n\tlet label = labelProp;\n\tif ( ! label && hasSingleBlockType ) {\n\t\tlabel = sprintf(\n\t\t\t// translators: %s: the name of the block when there is only one\n\t\t\t_x( 'Add %s', 'directly add the only allowed block' ),\n\t\t\tblockTitle\n\t\t);\n\t} else if ( ! label ) {\n\t\tlabel = _x( 'Add block', 'Generic label for block inserter button' );\n\t}\n\n\t// Handle both onClick functions from the toggle and the parent component.\n\tfunction handleClick( event ) {\n\t\tif ( onToggle ) {\n\t\t\tonToggle( event );\n\t\t}\n\t\tif ( onClick ) {\n\t\t\tonClick( event );\n\t\t}\n\t}\n\n\treturn (\n\t\t<Wrapper\n\t\t\t__next40pxDefaultSize={ toggleProps.as ? undefined : true }\n\t\t\ticon={ plus }\n\t\t\tlabel={ label }\n\t\t\ttooltipPosition=\"bottom\"\n\t\t\tonClick={ handleClick }\n\t\t\tclassName=\"block-editor-inserter__toggle\"\n\t\t\taria-haspopup={ ! hasSingleBlockType ? 'true' : false }\n\t\t\taria-expanded={ ! hasSingleBlockType ? isOpen : false }\n\t\t\tdisabled={ disabled }\n\t\t\t{ ...rest }\n\t\t/>\n\t);\n};\n\nclass Inserter extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderToggle = this.renderToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { onToggle } = this.props;\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown toggle element.\n\t */\n\trenderToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\tblockTitle,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\ttoggleProps,\n\t\t\thasItems,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t} = this.props;\n\n\t\treturn renderToggle( {\n\t\t\tonToggle,\n\t\t\tisOpen,\n\t\t\tdisabled: disabled || ! hasItems,\n\t\t\tblockTitle,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\ttoggleProps,\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t *\n\t * @return {Element} Dropdown content element.\n\t */\n\trenderContent( { onClose } ) {\n\t\tconst {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tshowInserterHelpPanel,\n\n\t\t\t// This prop is experimental to give some time for the quick inserter to mature\n\t\t\t// Feel free to make them stable after a few releases.\n\t\t\t__experimentalIsQuick: isQuick,\n\t\t\tonSelectOrClose,\n\t\t\tselectBlockOnInsert,\n\t\t} = this.props;\n\n\t\tif ( isQuick ) {\n\t\t\treturn (\n\t\t\t\t<QuickInserter\n\t\t\t\t\tonSelect={ ( blocks ) => {\n\t\t\t\t\t\tconst firstBlock =\n\t\t\t\t\t\t\tArray.isArray( blocks ) && blocks?.length\n\t\t\t\t\t\t\t\t? blocks[ 0 ]\n\t\t\t\t\t\t\t\t: blocks;\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tonSelectOrClose &&\n\t\t\t\t\t\t\ttypeof onSelectOrClose === 'function'\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tonSelectOrClose( firstBlock );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\tselectBlockOnInsert={ selectBlockOnInsert }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tonSelect={ () => {\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t\trootClientId={ rootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshowInserterHelpPanel={ showInserterHelpPanel }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tposition,\n\t\t\thasSingleBlockType,\n\t\t\tdirectInsertBlock,\n\t\t\tinsertOnlyAllowedBlock,\n\t\t\t__experimentalIsQuick: isQuick,\n\t\t\tonSelectOrClose,\n\t\t} = this.props;\n\n\t\tif ( hasSingleBlockType || directInsertBlock ) {\n\t\t\treturn this.renderToggle( { onToggle: insertOnlyAllowedBlock } );\n\t\t}\n\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tclassName=\"block-editor-inserter\"\n\t\t\t\tcontentClassName={ clsx( 'block-editor-inserter__popover', {\n\t\t\t\t\t'is-quick': isQuick,\n\t\t\t\t} ) }\n\t\t\t\tpopoverProps={ { position, shift: true } }\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\texpandOnMobile\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t\tonClose={ onSelectOrClose }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect(\n\t\t( select, { clientId, rootClientId, shouldDirectInsert = true } ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasInserterItems,\n\t\t\t\tgetAllowedBlocks,\n\t\t\t\tgetDirectInsertBlock,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst { getBlockVariations } = select( blocksStore );\n\n\t\t\trootClientId =\n\t\t\t\trootClientId || getBlockRootClientId( clientId ) || undefined;\n\n\t\t\tconst allowedBlocks = getAllowedBlocks( rootClientId );\n\n\t\t\tconst directInsertBlock =\n\t\t\t\tshouldDirectInsert && getDirectInsertBlock( rootClientId );\n\n\t\t\tconst hasSingleBlockType =\n\t\t\t\tallowedBlocks?.length === 1 &&\n\t\t\t\tgetBlockVariations( allowedBlocks[ 0 ].name, 'inserter' )\n\t\t\t\t\t?.length === 0;\n\n\t\t\tlet allowedBlockType = false;\n\t\t\tif ( hasSingleBlockType ) {\n\t\t\t\tallowedBlockType = allowedBlocks[ 0 ];\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\thasItems: hasInserterItems( rootClientId ),\n\t\t\t\thasSingleBlockType,\n\t\t\t\tblockTitle: allowedBlockType ? allowedBlockType.title : '',\n\t\t\t\tallowedBlockType,\n\t\t\t\tdirectInsertBlock,\n\t\t\t\trootClientId,\n\t\t\t};\n\t\t}\n\t),\n\twithDispatch( ( dispatch, ownProps, { select } ) => {\n\t\treturn {\n\t\t\tinsertOnlyAllowedBlock() {\n\t\t\t\tconst {\n\t\t\t\t\trootClientId,\n\t\t\t\t\tclientId,\n\t\t\t\t\tisAppender,\n\t\t\t\t\thasSingleBlockType,\n\t\t\t\t\tallowedBlockType,\n\t\t\t\t\tdirectInsertBlock,\n\t\t\t\t\tonSelectOrClose,\n\t\t\t\t\tselectBlockOnInsert,\n\t\t\t\t} = ownProps;\n\n\t\t\t\tif ( ! hasSingleBlockType && ! directInsertBlock ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tfunction getAdjacentBlockAttributes( attributesToCopy ) {\n\t\t\t\t\tconst { getBlock, getPreviousBlockClientId } =\n\t\t\t\t\t\tselect( blockEditorStore );\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t! attributesToCopy ||\n\t\t\t\t\t\t( ! clientId && ! rootClientId )\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn {};\n\t\t\t\t\t}\n\n\t\t\t\t\tconst result = {};\n\t\t\t\t\tlet adjacentAttributes = {};\n\n\t\t\t\t\t// If there is no clientId, then attempt to get attributes\n\t\t\t\t\t// from the last block within innerBlocks of the root block.\n\t\t\t\t\tif ( ! clientId ) {\n\t\t\t\t\t\tconst parentBlock = getBlock( rootClientId );\n\n\t\t\t\t\t\tif ( parentBlock?.innerBlocks?.length ) {\n\t\t\t\t\t\t\tconst lastInnerBlock =\n\t\t\t\t\t\t\t\tparentBlock.innerBlocks[\n\t\t\t\t\t\t\t\t\tparentBlock.innerBlocks.length - 1\n\t\t\t\t\t\t\t\t];\n\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tdirectInsertBlock &&\n\t\t\t\t\t\t\t\tdirectInsertBlock?.name === lastInnerBlock.name\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tadjacentAttributes = lastInnerBlock.attributes;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Otherwise, attempt to get attributes from the\n\t\t\t\t\t\t// previous block relative to the current clientId.\n\t\t\t\t\t\tconst currentBlock = getBlock( clientId );\n\t\t\t\t\t\tconst previousBlock = getBlock(\n\t\t\t\t\t\t\tgetPreviousBlockClientId( clientId )\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tif ( currentBlock?.name === previousBlock?.name ) {\n\t\t\t\t\t\t\tadjacentAttributes =\n\t\t\t\t\t\t\t\tpreviousBlock?.attributes || {};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Copy over only those attributes flagged to be copied.\n\t\t\t\t\tattributesToCopy.forEach( ( attribute ) => {\n\t\t\t\t\t\tif ( adjacentAttributes.hasOwnProperty( attribute ) ) {\n\t\t\t\t\t\t\tresult[ attribute ] =\n\t\t\t\t\t\t\t\tadjacentAttributes[ attribute ];\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tfunction getInsertionIndex() {\n\t\t\t\t\tconst {\n\t\t\t\t\t\tgetBlockIndex,\n\t\t\t\t\t\tgetBlockSelectionEnd,\n\t\t\t\t\t\tgetBlockOrder,\n\t\t\t\t\t\tgetBlockRootClientId,\n\t\t\t\t\t} = select( blockEditorStore );\n\n\t\t\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\t\t\tif ( clientId ) {\n\t\t\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t\t\t}\n\n\t\t\t\t\t// If there a selected block, we insert after the selected block.\n\t\t\t\t\tconst end = getBlockSelectionEnd();\n\t\t\t\t\tif (\n\t\t\t\t\t\t! isAppender &&\n\t\t\t\t\t\tend &&\n\t\t\t\t\t\tgetBlockRootClientId( end ) === rootClientId\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn getBlockIndex( end ) + 1;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\t\t\treturn getBlockOrder( rootClientId ).length;\n\t\t\t\t}\n\n\t\t\t\tconst { insertBlock } = dispatch( blockEditorStore );\n\n\t\t\t\tlet blockToInsert;\n\n\t\t\t\t// Attempt to augment the directInsertBlock with attributes from an adjacent block.\n\t\t\t\t// This ensures styling from nearby blocks is preserved in the newly inserted block.\n\t\t\t\t// See: https://github.com/WordPress/gutenberg/issues/37904\n\t\t\t\tif ( directInsertBlock ) {\n\t\t\t\t\tconst newAttributes = getAdjacentBlockAttributes(\n\t\t\t\t\t\tdirectInsertBlock.attributesToCopy\n\t\t\t\t\t);\n\n\t\t\t\t\tblockToInsert = createBlock( directInsertBlock.name, {\n\t\t\t\t\t\t...( directInsertBlock.attributes || {} ),\n\t\t\t\t\t\t...newAttributes,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tblockToInsert = createBlock( allowedBlockType.name );\n\t\t\t\t}\n\n\t\t\t\tinsertBlock(\n\t\t\t\t\tblockToInsert,\n\t\t\t\t\tgetInsertionIndex(),\n\t\t\t\t\trootClientId,\n\t\t\t\t\tselectBlockOnInsert\n\t\t\t\t);\n\n\t\t\t\tif ( onSelectOrClose ) {\n\t\t\t\t\tonSelectOrClose( {\n\t\t\t\t\t\tclientId: blockToInsert?.clientId,\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tconst message = sprintf(\n\t\t\t\t\t// translators: %s: the name of the block that has been added\n\t\t\t\t\t__( '%s block added' ),\n\t\t\t\t\tallowedBlockType.title\n\t\t\t\t);\n\t\t\t\tspeak( message );\n\t\t\t},\n\t\t};\n\t} ),\n\t// The global inserter should always be visible, we are using ( ! isAppender && ! rootClientId && ! clientId ) as\n\t// a way to detect the global Inserter.\n\tifCondition(\n\t\t( { hasItems, isAppender, rootClientId, clientId } ) =>\n\t\t\thasItems || ( ! isAppender && ! rootClientId && ! clientId )\n\t),\n] )( Inserter );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AccessibilityInfo","Platform","__","_x","Dropdown","ToolbarButton","Picker","Component","withDispatch","withSelect","compose","withPreferredColorScheme","isUnmodifiedDefaultBlock","Icon","plus","plusCircle","plusCircleFilled","insertAfter","insertBefore","setBlockTypeImpressions","styles","InserterMenu","BlockInsertionPoint","store","blockEditorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","VOICE_OVER_ANNOUNCEMENT_DELAY","defaultRenderToggle","onToggle","disabled","iconStyle","buttonStyle","onLongPress","title","icon","style","onClick","extraProps","hint","testID","hitSlop","top","bottom","left","right","isDisabled","customContainerStyles","fixedRatio","Inserter","announcementTimeout","constructor","arguments","bind","renderInserterToggle","renderContent","componentWillUnmount","clearTimeout","getInsertionOptions","addBeforeOption","value","label","replaceCurrentOption","addAfterOption","addToBeginningOption","addToEndOption","isAnyBlockSelected","isSelectedBlockReplaceable","props","getInsertionIndex","insertionType","insertionIndexDefault","insertionIndexStart","insertionIndexBefore","insertionIndexAfter","insertionIndexEnd","shouldReplaceBlock","isOpen","blockTypeImpressions","updateSettings","impressionsRemain","Object","values","some","count","decrementedImpressions","entries","reduce","acc","blockName","Math","max","impressions","onInserterToggledAnnouncement","isScreenReaderEnabled","then","isEnabled","isIOS","OS","announcement","setTimeout","announceForAccessibility","renderToggle","getStylesFromColorScheme","showSeparator","onPress","setState","destinationRootClientId","insertionIndex","picker","presentPicker","onPickerSelect","children","ref","instance","options","onChange","hideCancelButton","onClose","clientId","isAppender","state","onSelect","onDismiss","rootClientId","render","headerTitle","dispatch","select","getBlockRootClientId","getBlockSelectionEnd","getBlockOrder","getBlockIndex","getBlock","getSettings","getBlockEditorSettings","end","selectedBlockIndex","endOfRootIndex","length","isSelectedUnmodifiedDefaultBlock","undefined","getDefaultInsertionIndex","__experimentalShouldInsertAtTheTop","shouldInsertAtTheTop"],"sources":["@wordpress/block-editor/src/components/inserter/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { AccessibilityInfo, Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Dropdown, ToolbarButton, Picker } from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { isUnmodifiedDefaultBlock } from '@wordpress/blocks';\nimport {\n\tIcon,\n\tplus,\n\tplusCircle,\n\tplusCircleFilled,\n\tinsertAfter,\n\tinsertBefore,\n} from '@wordpress/icons';\nimport { setBlockTypeImpressions } from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport InserterMenu from './menu';\nimport BlockInsertionPoint from '../block-list/insertion-point';\nimport { store as blockEditorStore } from '../../store';\n\nconst VOICE_OVER_ANNOUNCEMENT_DELAY = 1000;\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\ticonStyle,\n\tbuttonStyle,\n\tonLongPress,\n} ) => {\n\treturn (\n\t\t<ToolbarButton\n\t\t\ttitle={ _x(\n\t\t\t\t'Add block',\n\t\t\t\t'Generic label for block inserter button'\n\t\t\t) }\n\t\t\ticon={ <Icon icon={ plus } style={ iconStyle } /> }\n\t\t\tonClick={ onToggle }\n\t\t\textraProps={ {\n\t\t\t\thint: __( 'Double tap to add a block' ),\n\t\t\t\t// testID is present to disambiguate this element for native UI tests. It's not\n\t\t\t\t// usually required for components. See: https://github.com/WordPress/gutenberg/pull/18832#issuecomment-561411389.\n\t\t\t\ttestID: 'add-block-button',\n\t\t\t\tonLongPress,\n\t\t\t\thitSlop: { top: 10, bottom: 10, left: 10, right: 10 },\n\t\t\t} }\n\t\t\tisDisabled={ disabled }\n\t\t\tcustomContainerStyles={ buttonStyle }\n\t\t\tfixedRatio={ false }\n\t\t/>\n\t);\n};\n\nexport class Inserter extends Component {\n\tannouncementTimeout;\n\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderInserterToggle = this.renderInserterToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearTimeout( this.announcementTimeout );\n\t}\n\n\tgetInsertionOptions() {\n\t\tconst addBeforeOption = {\n\t\t\tvalue: 'before',\n\t\t\tlabel: __( 'Add Block Before' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst replaceCurrentOption = {\n\t\t\tvalue: 'replace',\n\t\t\tlabel: __( 'Replace Current Block' ),\n\t\t\ticon: plusCircleFilled,\n\t\t};\n\n\t\tconst addAfterOption = {\n\t\t\tvalue: 'after',\n\t\t\tlabel: __( 'Add Block After' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst addToBeginningOption = {\n\t\t\tvalue: 'start',\n\t\t\tlabel: __( 'Add To Beginning' ),\n\t\t\ticon: insertBefore,\n\t\t};\n\n\t\tconst addToEndOption = {\n\t\t\tvalue: 'end',\n\t\t\tlabel: __( 'Add To End' ),\n\t\t\ticon: insertAfter,\n\t\t};\n\n\t\tconst { isAnyBlockSelected, isSelectedBlockReplaceable } = this.props;\n\t\tif ( isAnyBlockSelected ) {\n\t\t\tif ( isSelectedBlockReplaceable ) {\n\t\t\t\treturn [\n\t\t\t\t\taddToBeginningOption,\n\t\t\t\t\taddBeforeOption,\n\t\t\t\t\treplaceCurrentOption,\n\t\t\t\t\taddAfterOption,\n\t\t\t\t\taddToEndOption,\n\t\t\t\t];\n\t\t\t}\n\t\t\treturn [\n\t\t\t\taddToBeginningOption,\n\t\t\t\taddBeforeOption,\n\t\t\t\taddAfterOption,\n\t\t\t\taddToEndOption,\n\t\t\t];\n\t\t}\n\t\treturn [ addToBeginningOption, addToEndOption ];\n\t}\n\n\tgetInsertionIndex( insertionType ) {\n\t\tconst {\n\t\t\tinsertionIndexDefault,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexEnd,\n\t\t} = this.props;\n\t\tif ( insertionType === 'start' ) {\n\t\t\treturn insertionIndexStart;\n\t\t}\n\t\tif ( insertionType === 'before' || insertionType === 'replace' ) {\n\t\t\treturn insertionIndexBefore;\n\t\t}\n\t\tif ( insertionType === 'after' ) {\n\t\t\treturn insertionIndexAfter;\n\t\t}\n\t\tif ( insertionType === 'end' ) {\n\t\t\treturn insertionIndexEnd;\n\t\t}\n\t\treturn insertionIndexDefault;\n\t}\n\n\tshouldReplaceBlock( insertionType ) {\n\t\tconst { isSelectedBlockReplaceable } = this.props;\n\t\tif ( insertionType === 'replace' ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( insertionType === 'default' && isSelectedBlockReplaceable ) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { blockTypeImpressions, onToggle, updateSettings } = this.props;\n\n\t\tif ( ! isOpen ) {\n\t\t\tconst impressionsRemain = Object.values(\n\t\t\t\tblockTypeImpressions\n\t\t\t).some( ( count ) => count > 0 );\n\n\t\t\tif ( impressionsRemain ) {\n\t\t\t\tconst decrementedImpressions = Object.entries(\n\t\t\t\t\tblockTypeImpressions\n\t\t\t\t).reduce(\n\t\t\t\t\t( acc, [ blockName, count ] ) => ( {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ blockName ]: Math.max( count - 1, 0 ),\n\t\t\t\t\t} ),\n\t\t\t\t\t{}\n\t\t\t\t);\n\n\t\t\t\t// Persist block type impression to JavaScript store.\n\t\t\t\tupdateSettings( {\n\t\t\t\t\timpressions: decrementedImpressions,\n\t\t\t\t} );\n\n\t\t\t\t// Persist block type impression count to native app store.\n\t\t\t\tsetBlockTypeImpressions( decrementedImpressions );\n\t\t\t}\n\t\t}\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t\tthis.onInserterToggledAnnouncement( isOpen );\n\t}\n\n\tonInserterToggledAnnouncement( isOpen ) {\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( isEnabled ) => {\n\t\t\tif ( isEnabled ) {\n\t\t\t\tconst isIOS = Platform.OS === 'ios';\n\t\t\t\tconst announcement = isOpen\n\t\t\t\t\t? __( 'Scrollable block menu opened. Select a block.' )\n\t\t\t\t\t: __( 'Scrollable block menu closed.' );\n\t\t\t\tthis.announcementTimeout = setTimeout(\n\t\t\t\t\t() =>\n\t\t\t\t\t\tAccessibilityInfo.announceForAccessibility(\n\t\t\t\t\t\t\tannouncement\n\t\t\t\t\t\t),\n\t\t\t\t\tisIOS ? VOICE_OVER_ANNOUNCEMENT_DELAY : 0\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown toggle element.\n\t */\n\trenderInserterToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\tshowSeparator,\n\t\t} = this.props;\n\t\tif ( showSeparator && isOpen ) {\n\t\t\treturn <BlockInsertionPoint />;\n\t\t}\n\n\t\tconst buttonStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button--dark' ]\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon--dark' ]\n\t\t);\n\n\t\tconst onPress = () => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock: this.shouldReplaceBlock( 'default' ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( 'default' ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\tconst onLongPress = () => {\n\t\t\tif ( this.picker ) {\n\t\t\t\tthis.picker.presentPicker();\n\t\t\t}\n\t\t};\n\n\t\tconst onPickerSelect = ( insertionType ) => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock:\n\t\t\t\t\t\tthis.shouldReplaceBlock( insertionType ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( insertionType ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ renderToggle( {\n\t\t\t\t\tonToggle: onPress,\n\t\t\t\t\tisOpen,\n\t\t\t\t\tdisabled,\n\t\t\t\t\ticonStyle,\n\t\t\t\t\tbuttonStyle,\n\t\t\t\t\tonLongPress,\n\t\t\t\t} ) }\n\t\t\t\t<Picker\n\t\t\t\t\tref={ ( instance ) => ( this.picker = instance ) }\n\t\t\t\t\toptions={ this.getInsertionOptions() }\n\t\t\t\t\tonChange={ onPickerSelect }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown content element.\n\t */\n\trenderContent( { onClose, isOpen } ) {\n\t\tconst { clientId, isAppender } = this.props;\n\t\tconst { destinationRootClientId, shouldReplaceBlock, insertionIndex } =\n\t\t\tthis.state;\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tisOpen={ isOpen }\n\t\t\t\tonSelect={ onClose }\n\t\t\t\tonDismiss={ onClose }\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshouldReplaceBlock={ shouldReplaceBlock }\n\t\t\t\tinsertionIndex={ insertionIndex }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderInserterToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithDispatch( ( dispatch ) => {\n\t\tconst { updateSettings } = dispatch( blockEditorStore );\n\t\treturn { updateSettings };\n\t} ),\n\twithSelect( ( select, { clientId, isAppender, rootClientId } ) => {\n\t\tconst {\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockSelectionEnd,\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockIndex,\n\t\t\tgetBlock,\n\t\t\tgetSettings: getBlockEditorSettings,\n\t\t} = select( blockEditorStore );\n\n\t\tconst end = getBlockSelectionEnd();\n\t\t// `end` argument (id) can refer to the component which is removed\n\t\t// due to pressing `undo` button, that's why we need to check\n\t\t// if `getBlock( end) is valid, otherwise `null` is passed\n\t\tconst isAnyBlockSelected = ! isAppender && end && getBlock( end );\n\t\tconst destinationRootClientId = isAnyBlockSelected\n\t\t\t? getBlockRootClientId( end )\n\t\t\t: rootClientId;\n\t\tconst selectedBlockIndex = getBlockIndex( end );\n\t\tconst endOfRootIndex = getBlockOrder( rootClientId ).length;\n\t\tconst isSelectedUnmodifiedDefaultBlock = isAnyBlockSelected\n\t\t\t? isUnmodifiedDefaultBlock( getBlock( end ) )\n\t\t\t: undefined;\n\n\t\tfunction getDefaultInsertionIndex() {\n\t\t\tconst { __experimentalShouldInsertAtTheTop: shouldInsertAtTheTop } =\n\t\t\t\tgetBlockEditorSettings();\n\n\t\t\t// If post title is selected insert as first block.\n\t\t\tif ( shouldInsertAtTheTop ) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\tif ( clientId ) {\n\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t}\n\n\t\t\t// If there is a selected block,\n\t\t\tif ( isAnyBlockSelected ) {\n\t\t\t\t// And the last selected block is unmodified (empty), it will be replaced.\n\t\t\t\tif ( isSelectedUnmodifiedDefaultBlock ) {\n\t\t\t\t\treturn selectedBlockIndex;\n\t\t\t\t}\n\n\t\t\t\t// We insert after the selected block.\n\t\t\t\treturn selectedBlockIndex + 1;\n\t\t\t}\n\n\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\treturn endOfRootIndex;\n\t\t}\n\n\t\tconst insertionIndexStart = 0;\n\n\t\tconst insertionIndexBefore = isAnyBlockSelected\n\t\t\t? selectedBlockIndex\n\t\t\t: insertionIndexStart;\n\n\t\tconst insertionIndexAfter = isAnyBlockSelected\n\t\t\t? selectedBlockIndex + 1\n\t\t\t: endOfRootIndex;\n\n\t\tconst insertionIndexEnd = endOfRootIndex;\n\n\t\treturn {\n\t\t\tblockTypeImpressions: getBlockEditorSettings().impressions,\n\t\t\tdestinationRootClientId,\n\t\t\tinsertionIndexDefault: getDefaultInsertionIndex(),\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexEnd,\n\t\t\tisAnyBlockSelected: !! isAnyBlockSelected,\n\t\t\tisSelectedBlockReplaceable: isSelectedUnmodifiedDefaultBlock,\n\t\t};\n\t} ),\n\n\twithPreferredColorScheme,\n] )( Inserter );\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,iBAAiB,EAAEC,QAAQ,QAAQ,cAAc;;AAE1D;AACA;AACA;AACA,SAASC,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SAASC,QAAQ,EAAEC,aAAa,EAAEC,MAAM,QAAQ,uBAAuB;AACvE,SAASC,SAAS,QAAQ,oBAAoB;AAC9C,SAASC,YAAY,EAAEC,UAAU,QAAQ,iBAAiB;AAC1D,SAASC,OAAO,EAAEC,wBAAwB,QAAQ,oBAAoB;AACtE,SAASC,wBAAwB,QAAQ,mBAAmB;AAC5D,SACCC,IAAI,EACJC,IAAI,EACJC,UAAU,EACVC,gBAAgB,EAChBC,WAAW,EACXC,YAAY,QACN,kBAAkB;AACzB,SAASC,uBAAuB,QAAQ,gCAAgC;;AAExE;AACA;AACA;AACA,OAAOC,MAAM,MAAM,cAAc;AACjC,OAAOC,YAAY,MAAM,QAAQ;AACjC,OAAOC,mBAAmB,MAAM,+BAA+B;AAC/D,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAExD,MAAMC,6BAA6B,GAAG,IAAI;AAE1C,MAAMC,mBAAmB,GAAGA,CAAE;EAC7BC,QAAQ;EACRC,QAAQ;EACRC,SAAS;EACTC,WAAW;EACXC;AACD,CAAC,KAAM;EACN,oBACCX,IAAA,CAACrB,aAAa;IACbiC,KAAK,EAAGnC,EAAE,CACT,WAAW,EACX,yCACD,CAAG;IACHoC,IAAI,eAAGb,IAAA,CAACb,IAAI;MAAC0B,IAAI,EAAGzB,IAAM;MAAC0B,KAAK,EAAGL;IAAW,CAAE,CAAG;IACnDM,OAAO,EAAGR,QAAU;IACpBS,UAAU,EAAG;MACZC,IAAI,EAAEzC,EAAE,CAAE,2BAA4B,CAAC;MACvC;MACA;MACA0C,MAAM,EAAE,kBAAkB;MAC1BP,WAAW;MACXQ,OAAO,EAAE;QAAEC,GAAG,EAAE,EAAE;QAAEC,MAAM,EAAE,EAAE;QAAEC,IAAI,EAAE,EAAE;QAAEC,KAAK,EAAE;MAAG;IACrD,CAAG;IACHC,UAAU,EAAGhB,QAAU;IACvBiB,qBAAqB,EAAGf,WAAa;IACrCgB,UAAU,EAAG;EAAO,CACpB,CAAC;AAEJ,CAAC;AAED,OAAO,MAAMC,QAAQ,SAAS9C,SAAS,CAAC;EACvC+C,mBAAmB;EAEnBC,WAAWA,CAAA,EAAG;IACb,KAAK,CAAE,GAAGC,SAAU,CAAC;IAErB,IAAI,CAACvB,QAAQ,GAAG,IAAI,CAACA,QAAQ,CAACwB,IAAI,CAAE,IAAK,CAAC;IAC1C,IAAI,CAACC,oBAAoB,GAAG,IAAI,CAACA,oBAAoB,CAACD,IAAI,CAAE,IAAK,CAAC;IAClE,IAAI,CAACE,aAAa,GAAG,IAAI,CAACA,aAAa,CAACF,IAAI,CAAE,IAAK,CAAC;EACrD;EAEAG,oBAAoBA,CAAA,EAAG;IACtBC,YAAY,CAAE,IAAI,CAACP,mBAAoB,CAAC;EACzC;EAEAQ,mBAAmBA,CAAA,EAAG;IACrB,MAAMC,eAAe,GAAG;MACvBC,KAAK,EAAE,QAAQ;MACfC,KAAK,EAAE/D,EAAE,CAAE,kBAAmB,CAAC;MAC/BqC,IAAI,EAAExB;IACP,CAAC;IAED,MAAMmD,oBAAoB,GAAG;MAC5BF,KAAK,EAAE,SAAS;MAChBC,KAAK,EAAE/D,EAAE,CAAE,uBAAwB,CAAC;MACpCqC,IAAI,EAAEvB;IACP,CAAC;IAED,MAAMmD,cAAc,GAAG;MACtBH,KAAK,EAAE,OAAO;MACdC,KAAK,EAAE/D,EAAE,CAAE,iBAAkB,CAAC;MAC9BqC,IAAI,EAAExB;IACP,CAAC;IAED,MAAMqD,oBAAoB,GAAG;MAC5BJ,KAAK,EAAE,OAAO;MACdC,KAAK,EAAE/D,EAAE,CAAE,kBAAmB,CAAC;MAC/BqC,IAAI,EAAErB;IACP,CAAC;IAED,MAAMmD,cAAc,GAAG;MACtBL,KAAK,EAAE,KAAK;MACZC,KAAK,EAAE/D,EAAE,CAAE,YAAa,CAAC;MACzBqC,IAAI,EAAEtB;IACP,CAAC;IAED,MAAM;MAAEqD,kBAAkB;MAAEC;IAA2B,CAAC,GAAG,IAAI,CAACC,KAAK;IACrE,IAAKF,kBAAkB,EAAG;MACzB,IAAKC,0BAA0B,EAAG;QACjC,OAAO,CACNH,oBAAoB,EACpBL,eAAe,EACfG,oBAAoB,EACpBC,cAAc,EACdE,cAAc,CACd;MACF;MACA,OAAO,CACND,oBAAoB,EACpBL,eAAe,EACfI,cAAc,EACdE,cAAc,CACd;IACF;IACA,OAAO,CAAED,oBAAoB,EAAEC,cAAc,CAAE;EAChD;EAEAI,iBAAiBA,CAAEC,aAAa,EAAG;IAClC,MAAM;MACLC,qBAAqB;MACrBC,mBAAmB;MACnBC,oBAAoB;MACpBC,mBAAmB;MACnBC;IACD,CAAC,GAAG,IAAI,CAACP,KAAK;IACd,IAAKE,aAAa,KAAK,OAAO,EAAG;MAChC,OAAOE,mBAAmB;IAC3B;IACA,IAAKF,aAAa,KAAK,QAAQ,IAAIA,aAAa,KAAK,SAAS,EAAG;MAChE,OAAOG,oBAAoB;IAC5B;IACA,IAAKH,aAAa,KAAK,OAAO,EAAG;MAChC,OAAOI,mBAAmB;IAC3B;IACA,IAAKJ,aAAa,KAAK,KAAK,EAAG;MAC9B,OAAOK,iBAAiB;IACzB;IACA,OAAOJ,qBAAqB;EAC7B;EAEAK,kBAAkBA,CAAEN,aAAa,EAAG;IACnC,MAAM;MAAEH;IAA2B,CAAC,GAAG,IAAI,CAACC,KAAK;IACjD,IAAKE,aAAa,KAAK,SAAS,EAAG;MAClC,OAAO,IAAI;IACZ;IACA,IAAKA,aAAa,KAAK,SAAS,IAAIH,0BAA0B,EAAG;MAChE,OAAO,IAAI;IACZ;IACA,OAAO,KAAK;EACb;EAEAtC,QAAQA,CAAEgD,MAAM,EAAG;IAClB,MAAM;MAAEC,oBAAoB;MAAEjD,QAAQ;MAAEkD;IAAe,CAAC,GAAG,IAAI,CAACX,KAAK;IAErE,IAAK,CAAES,MAAM,EAAG;MACf,MAAMG,iBAAiB,GAAGC,MAAM,CAACC,MAAM,CACtCJ,oBACD,CAAC,CAACK,IAAI,CAAIC,KAAK,IAAMA,KAAK,GAAG,CAAE,CAAC;MAEhC,IAAKJ,iBAAiB,EAAG;QACxB,MAAMK,sBAAsB,GAAGJ,MAAM,CAACK,OAAO,CAC5CR,oBACD,CAAC,CAACS,MAAM,CACP,CAAEC,GAAG,EAAE,CAAEC,SAAS,EAAEL,KAAK,CAAE,MAAQ;UAClC,GAAGI,GAAG;UACN,CAAEC,SAAS,GAAIC,IAAI,CAACC,GAAG,CAAEP,KAAK,GAAG,CAAC,EAAE,CAAE;QACvC,CAAC,CAAE,EACH,CAAC,CACF,CAAC;;QAED;QACAL,cAAc,CAAE;UACfa,WAAW,EAAEP;QACd,CAAE,CAAC;;QAEH;QACAtE,uBAAuB,CAAEsE,sBAAuB,CAAC;MAClD;IACD;;IAEA;IACA,IAAKxD,QAAQ,EAAG;MACfA,QAAQ,CAAEgD,MAAO,CAAC;IACnB;IACA,IAAI,CAACgB,6BAA6B,CAAEhB,MAAO,CAAC;EAC7C;EAEAgB,6BAA6BA,CAAEhB,MAAM,EAAG;IACvCjF,iBAAiB,CAACkG,qBAAqB,CAAC,CAAC,CAACC,IAAI,CAAIC,SAAS,IAAM;MAChE,IAAKA,SAAS,EAAG;QAChB,MAAMC,KAAK,GAAGpG,QAAQ,CAACqG,EAAE,KAAK,KAAK;QACnC,MAAMC,YAAY,GAAGtB,MAAM,GACxB/E,EAAE,CAAE,+CAAgD,CAAC,GACrDA,EAAE,CAAE,+BAAgC,CAAC;QACxC,IAAI,CAACoD,mBAAmB,GAAGkD,UAAU,CACpC,MACCxG,iBAAiB,CAACyG,wBAAwB,CACzCF,YACD,CAAC,EACFF,KAAK,GAAGtE,6BAA6B,GAAG,CACzC,CAAC;MACF;IACD,CAAE,CAAC;EACJ;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC2B,oBAAoBA,CAAE;IAAEzB,QAAQ;IAAEgD;EAAO,CAAC,EAAG;IAC5C,MAAM;MACL/C,QAAQ;MACRwE,YAAY,GAAG1E,mBAAmB;MAClC2E,wBAAwB;MACxBC;IACD,CAAC,GAAG,IAAI,CAACpC,KAAK;IACd,IAAKoC,aAAa,IAAI3B,MAAM,EAAG;MAC9B,oBAAOvD,IAAA,CAACJ,mBAAmB,IAAE,CAAC;IAC/B;IAEA,MAAMc,WAAW,GAAGuE,wBAAwB,CAC3CvF,MAAM,CAAE,iCAAiC,CAAE,EAC3CA,MAAM,CAAE,uCAAuC,CAChD,CAAC;IAED,MAAMe,SAAS,GAAGwE,wBAAwB,CACzCvF,MAAM,CAAE,sCAAsC,CAAE,EAChDA,MAAM,CAAE,4CAA4C,CACrD,CAAC;IAED,MAAMyF,OAAO,GAAGA,CAAA,KAAM;MACrB,IAAI,CAACC,QAAQ,CACZ;QACCC,uBAAuB,EAAE,IAAI,CAACvC,KAAK,CAACuC,uBAAuB;QAC3D/B,kBAAkB,EAAE,IAAI,CAACA,kBAAkB,CAAE,SAAU,CAAC;QACxDgC,cAAc,EAAE,IAAI,CAACvC,iBAAiB,CAAE,SAAU;MACnD,CAAC,EACDxC,QACD,CAAC;IACF,CAAC;IAED,MAAMI,WAAW,GAAGA,CAAA,KAAM;MACzB,IAAK,IAAI,CAAC4E,MAAM,EAAG;QAClB,IAAI,CAACA,MAAM,CAACC,aAAa,CAAC,CAAC;MAC5B;IACD,CAAC;IAED,MAAMC,cAAc,GAAKzC,aAAa,IAAM;MAC3C,IAAI,CAACoC,QAAQ,CACZ;QACCC,uBAAuB,EAAE,IAAI,CAACvC,KAAK,CAACuC,uBAAuB;QAC3D/B,kBAAkB,EACjB,IAAI,CAACA,kBAAkB,CAAEN,aAAc,CAAC;QACzCsC,cAAc,EAAE,IAAI,CAACvC,iBAAiB,CAAEC,aAAc;MACvD,CAAC,EACDzC,QACD,CAAC;IACF,CAAC;IAED,oBACCH,KAAA,CAAAF,SAAA;MAAAwF,QAAA,GACGV,YAAY,CAAE;QACfzE,QAAQ,EAAE4E,OAAO;QACjB5B,MAAM;QACN/C,QAAQ;QACRC,SAAS;QACTC,WAAW;QACXC;MACD,CAAE,CAAC,eACHX,IAAA,CAACpB,MAAM;QACN+G,GAAG,EAAKC,QAAQ,IAAQ,IAAI,CAACL,MAAM,GAAGK,QAAY;QAClDC,OAAO,EAAG,IAAI,CAACzD,mBAAmB,CAAC,CAAG;QACtC0D,QAAQ,EAAGL,cAAgB;QAC3BM,gBAAgB;MAAA,CAChB,CAAC;IAAA,CACD,CAAC;EAEL;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC9D,aAAaA,CAAE;IAAE+D,OAAO;IAAEzC;EAAO,CAAC,EAAG;IACpC,MAAM;MAAE0C,QAAQ;MAAEC;IAAW,CAAC,GAAG,IAAI,CAACpD,KAAK;IAC3C,MAAM;MAAEuC,uBAAuB;MAAE/B,kBAAkB;MAAEgC;IAAe,CAAC,GACpE,IAAI,CAACa,KAAK;IACX,oBACCnG,IAAA,CAACL,YAAY;MACZ4D,MAAM,EAAGA,MAAQ;MACjB6C,QAAQ,EAAGJ,OAAS;MACpBK,SAAS,EAAGL,OAAS;MACrBM,YAAY,EAAGjB,uBAAyB;MACxCY,QAAQ,EAAGA,QAAU;MACrBC,UAAU,EAAGA,UAAY;MACzB5C,kBAAkB,EAAGA,kBAAoB;MACzCgC,cAAc,EAAGA;IAAgB,CACjC,CAAC;EAEJ;EAEAiB,MAAMA,CAAA,EAAG;IACR,oBACCvG,IAAA,CAACtB,QAAQ;MACR6B,QAAQ,EAAG,IAAI,CAACA,QAAU;MAC1BiG,WAAW,EAAGhI,EAAE,CAAE,aAAc,CAAG;MACnCwG,YAAY,EAAG,IAAI,CAAChD,oBAAsB;MAC1CC,aAAa,EAAG,IAAI,CAACA;IAAe,CACpC,CAAC;EAEJ;AACD;AAEA,eAAejD,OAAO,CAAE,CACvBF,YAAY,CAAI2H,QAAQ,IAAM;EAC7B,MAAM;IAAEhD;EAAe,CAAC,GAAGgD,QAAQ,CAAE3G,gBAAiB,CAAC;EACvD,OAAO;IAAE2D;EAAe,CAAC;AAC1B,CAAE,CAAC,EACH1E,UAAU,CAAE,CAAE2H,MAAM,EAAE;EAAET,QAAQ;EAAEC,UAAU;EAAEI;AAAa,CAAC,KAAM;EACjE,MAAM;IACLK,oBAAoB;IACpBC,oBAAoB;IACpBC,aAAa;IACbC,aAAa;IACbC,QAAQ;IACRC,WAAW,EAAEC;EACd,CAAC,GAAGP,MAAM,CAAE5G,gBAAiB,CAAC;EAE9B,MAAMoH,GAAG,GAAGN,oBAAoB,CAAC,CAAC;EAClC;EACA;EACA;EACA,MAAMhE,kBAAkB,GAAG,CAAEsD,UAAU,IAAIgB,GAAG,IAAIH,QAAQ,CAAEG,GAAI,CAAC;EACjE,MAAM7B,uBAAuB,GAAGzC,kBAAkB,GAC/C+D,oBAAoB,CAAEO,GAAI,CAAC,GAC3BZ,YAAY;EACf,MAAMa,kBAAkB,GAAGL,aAAa,CAAEI,GAAI,CAAC;EAC/C,MAAME,cAAc,GAAGP,aAAa,CAAEP,YAAa,CAAC,CAACe,MAAM;EAC3D,MAAMC,gCAAgC,GAAG1E,kBAAkB,GACxD1D,wBAAwB,CAAE6H,QAAQ,CAAEG,GAAI,CAAE,CAAC,GAC3CK,SAAS;EAEZ,SAASC,wBAAwBA,CAAA,EAAG;IACnC,MAAM;MAAEC,kCAAkC,EAAEC;IAAqB,CAAC,GACjET,sBAAsB,CAAC,CAAC;;IAEzB;IACA,IAAKS,oBAAoB,EAAG;MAC3B,OAAO,CAAC;IACT;;IAEA;IACA,IAAKzB,QAAQ,EAAG;MACf,OAAOa,aAAa,CAAEb,QAAS,CAAC;IACjC;;IAEA;IACA,IAAKrD,kBAAkB,EAAG;MACzB;MACA,IAAK0E,gCAAgC,EAAG;QACvC,OAAOH,kBAAkB;MAC1B;;MAEA;MACA,OAAOA,kBAAkB,GAAG,CAAC;IAC9B;;IAEA;IACA,OAAOC,cAAc;EACtB;EAEA,MAAMlE,mBAAmB,GAAG,CAAC;EAE7B,MAAMC,oBAAoB,GAAGP,kBAAkB,GAC5CuE,kBAAkB,GAClBjE,mBAAmB;EAEtB,MAAME,mBAAmB,GAAGR,kBAAkB,GAC3CuE,kBAAkB,GAAG,CAAC,GACtBC,cAAc;EAEjB,MAAM/D,iBAAiB,GAAG+D,cAAc;EAExC,OAAO;IACN5D,oBAAoB,EAAEyD,sBAAsB,CAAC,CAAC,CAAC3C,WAAW;IAC1De,uBAAuB;IACvBpC,qBAAqB,EAAEuE,wBAAwB,CAAC,CAAC;IACjDrE,oBAAoB;IACpBC,mBAAmB;IACnBF,mBAAmB;IACnBG,iBAAiB;IACjBT,kBAAkB,EAAE,CAAC,CAAEA,kBAAkB;IACzCC,0BAA0B,EAAEyE;EAC7B,CAAC;AACF,CAAE,CAAC,EAEHrI,wBAAwB,CACvB,CAAC,CAAE0C,QAAS,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["AccessibilityInfo","Platform","__","_x","Dropdown","ToolbarButton","Picker","Component","withDispatch","withSelect","compose","withPreferredColorScheme","isUnmodifiedDefaultBlock","Icon","plus","plusCircle","plusCircleFilled","insertAfter","insertBefore","setBlockTypeImpressions","styles","InserterMenu","BlockInsertionPoint","store","blockEditorStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","VOICE_OVER_ANNOUNCEMENT_DELAY","defaultRenderToggle","onToggle","disabled","iconStyle","buttonStyle","onLongPress","title","icon","style","onClick","extraProps","hint","testID","hitSlop","top","bottom","left","right","isDisabled","customContainerStyles","fixedRatio","Inserter","announcementTimeout","constructor","arguments","bind","renderInserterToggle","renderContent","componentWillUnmount","clearTimeout","getInsertionOptions","addBeforeOption","value","label","replaceCurrentOption","addAfterOption","addToBeginningOption","addToEndOption","isAnyBlockSelected","isSelectedBlockReplaceable","props","getInsertionIndex","insertionType","insertionIndexDefault","insertionIndexStart","insertionIndexBefore","insertionIndexAfter","insertionIndexEnd","shouldReplaceBlock","isOpen","blockTypeImpressions","updateSettings","impressionsRemain","Object","values","some","count","decrementedImpressions","entries","reduce","acc","blockName","Math","max","impressions","onInserterToggledAnnouncement","isScreenReaderEnabled","then","isEnabled","isIOS","OS","announcement","setTimeout","announceForAccessibility","renderToggle","getStylesFromColorScheme","showSeparator","onPress","setState","destinationRootClientId","insertionIndex","picker","presentPicker","onPickerSelect","children","ref","instance","options","onChange","hideCancelButton","onClose","clientId","isAppender","state","onSelect","onDismiss","rootClientId","render","headerTitle","dispatch","select","getBlockRootClientId","getBlockSelectionEnd","getBlockOrder","getBlockIndex","getBlock","getSettings","getBlockEditorSettings","end","selectedBlockIndex","endOfRootIndex","length","isSelectedUnmodifiedDefaultBlock","undefined","getDefaultInsertionIndex","__experimentalShouldInsertAtTheTop","shouldInsertAtTheTop"],"sources":["@wordpress/block-editor/src/components/inserter/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { AccessibilityInfo, Platform } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { Dropdown, ToolbarButton, Picker } from '@wordpress/components';\nimport { Component } from '@wordpress/element';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { isUnmodifiedDefaultBlock } from '@wordpress/blocks';\nimport {\n\tIcon,\n\tplus,\n\tplusCircle,\n\tplusCircleFilled,\n\tinsertAfter,\n\tinsertBefore,\n} from '@wordpress/icons';\nimport { setBlockTypeImpressions } from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport InserterMenu from './menu';\nimport BlockInsertionPoint from '../block-list/insertion-point';\nimport { store as blockEditorStore } from '../../store';\n\nconst VOICE_OVER_ANNOUNCEMENT_DELAY = 1000;\n\nconst defaultRenderToggle = ( {\n\tonToggle,\n\tdisabled,\n\ticonStyle,\n\tbuttonStyle,\n\tonLongPress,\n} ) => {\n\treturn (\n\t\t<ToolbarButton\n\t\t\ttitle={ _x(\n\t\t\t\t'Add block',\n\t\t\t\t'Generic label for block inserter button'\n\t\t\t) }\n\t\t\ticon={ <Icon icon={ plus } style={ iconStyle } /> }\n\t\t\tonClick={ onToggle }\n\t\t\textraProps={ {\n\t\t\t\thint: __( 'Double tap to add a block' ),\n\t\t\t\t// testID is present to disambiguate this element for native UI tests. It's not\n\t\t\t\t// usually required for components. See: https://github.com/WordPress/gutenberg/pull/18832#issuecomment-561411389.\n\t\t\t\ttestID: 'add-block-button',\n\t\t\t\tonLongPress,\n\t\t\t\thitSlop: { top: 10, bottom: 10, left: 10, right: 10 },\n\t\t\t} }\n\t\t\tisDisabled={ disabled }\n\t\t\tcustomContainerStyles={ buttonStyle }\n\t\t\tfixedRatio={ false }\n\t\t/>\n\t);\n};\n\nexport class Inserter extends Component {\n\tannouncementTimeout;\n\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onToggle = this.onToggle.bind( this );\n\t\tthis.renderInserterToggle = this.renderInserterToggle.bind( this );\n\t\tthis.renderContent = this.renderContent.bind( this );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearTimeout( this.announcementTimeout );\n\t}\n\n\tgetInsertionOptions() {\n\t\tconst addBeforeOption = {\n\t\t\tvalue: 'before',\n\t\t\tlabel: __( 'Add Block Before' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst replaceCurrentOption = {\n\t\t\tvalue: 'replace',\n\t\t\tlabel: __( 'Replace Current Block' ),\n\t\t\ticon: plusCircleFilled,\n\t\t};\n\n\t\tconst addAfterOption = {\n\t\t\tvalue: 'after',\n\t\t\tlabel: __( 'Add Block After' ),\n\t\t\ticon: plusCircle,\n\t\t};\n\n\t\tconst addToBeginningOption = {\n\t\t\tvalue: 'start',\n\t\t\tlabel: __( 'Add To Beginning' ),\n\t\t\ticon: insertBefore,\n\t\t};\n\n\t\tconst addToEndOption = {\n\t\t\tvalue: 'end',\n\t\t\tlabel: __( 'Add To End' ),\n\t\t\ticon: insertAfter,\n\t\t};\n\n\t\tconst { isAnyBlockSelected, isSelectedBlockReplaceable } = this.props;\n\t\tif ( isAnyBlockSelected ) {\n\t\t\tif ( isSelectedBlockReplaceable ) {\n\t\t\t\treturn [\n\t\t\t\t\taddToBeginningOption,\n\t\t\t\t\taddBeforeOption,\n\t\t\t\t\treplaceCurrentOption,\n\t\t\t\t\taddAfterOption,\n\t\t\t\t\taddToEndOption,\n\t\t\t\t];\n\t\t\t}\n\t\t\treturn [\n\t\t\t\taddToBeginningOption,\n\t\t\t\taddBeforeOption,\n\t\t\t\taddAfterOption,\n\t\t\t\taddToEndOption,\n\t\t\t];\n\t\t}\n\t\treturn [ addToBeginningOption, addToEndOption ];\n\t}\n\n\tgetInsertionIndex( insertionType ) {\n\t\tconst {\n\t\t\tinsertionIndexDefault,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexEnd,\n\t\t} = this.props;\n\t\tif ( insertionType === 'start' ) {\n\t\t\treturn insertionIndexStart;\n\t\t}\n\t\tif ( insertionType === 'before' || insertionType === 'replace' ) {\n\t\t\treturn insertionIndexBefore;\n\t\t}\n\t\tif ( insertionType === 'after' ) {\n\t\t\treturn insertionIndexAfter;\n\t\t}\n\t\tif ( insertionType === 'end' ) {\n\t\t\treturn insertionIndexEnd;\n\t\t}\n\t\treturn insertionIndexDefault;\n\t}\n\n\tshouldReplaceBlock( insertionType ) {\n\t\tconst { isSelectedBlockReplaceable } = this.props;\n\t\tif ( insertionType === 'replace' ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( insertionType === 'default' && isSelectedBlockReplaceable ) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonToggle( isOpen ) {\n\t\tconst { blockTypeImpressions, onToggle, updateSettings } = this.props;\n\n\t\tif ( ! isOpen ) {\n\t\t\tconst impressionsRemain = Object.values(\n\t\t\t\tblockTypeImpressions\n\t\t\t).some( ( count ) => count > 0 );\n\n\t\t\tif ( impressionsRemain ) {\n\t\t\t\tconst decrementedImpressions = Object.entries(\n\t\t\t\t\tblockTypeImpressions\n\t\t\t\t).reduce(\n\t\t\t\t\t( acc, [ blockName, count ] ) => ( {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ blockName ]: Math.max( count - 1, 0 ),\n\t\t\t\t\t} ),\n\t\t\t\t\t{}\n\t\t\t\t);\n\n\t\t\t\t// Persist block type impression to JavaScript store.\n\t\t\t\tupdateSettings( {\n\t\t\t\t\timpressions: decrementedImpressions,\n\t\t\t\t} );\n\n\t\t\t\t// Persist block type impression count to native app store.\n\t\t\t\tsetBlockTypeImpressions( decrementedImpressions );\n\t\t\t}\n\t\t}\n\n\t\t// Surface toggle callback to parent component.\n\t\tif ( onToggle ) {\n\t\t\tonToggle( isOpen );\n\t\t}\n\t\tthis.onInserterToggledAnnouncement( isOpen );\n\t}\n\n\tonInserterToggledAnnouncement( isOpen ) {\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( isEnabled ) => {\n\t\t\tif ( isEnabled ) {\n\t\t\t\tconst isIOS = Platform.OS === 'ios';\n\t\t\t\tconst announcement = isOpen\n\t\t\t\t\t? __( 'Scrollable block menu opened. Select a block.' )\n\t\t\t\t\t: __( 'Scrollable block menu closed.' );\n\t\t\t\tthis.announcementTimeout = setTimeout(\n\t\t\t\t\t() =>\n\t\t\t\t\t\tAccessibilityInfo.announceForAccessibility(\n\t\t\t\t\t\t\tannouncement\n\t\t\t\t\t\t),\n\t\t\t\t\tisIOS ? VOICE_OVER_ANNOUNCEMENT_DELAY : 0\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Render callback to display Dropdown toggle element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onToggle Callback to invoke when toggle is\n\t * pressed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown toggle element.\n\t */\n\trenderInserterToggle( { onToggle, isOpen } ) {\n\t\tconst {\n\t\t\tdisabled,\n\t\t\trenderToggle = defaultRenderToggle,\n\t\t\tgetStylesFromColorScheme,\n\t\t\tshowSeparator,\n\t\t} = this.props;\n\t\tif ( showSeparator && isOpen ) {\n\t\t\treturn <BlockInsertionPoint />;\n\t\t}\n\n\t\tconst buttonStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button--dark' ]\n\t\t);\n\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon' ],\n\t\t\tstyles[ 'inserter-menu__add-block-button-icon--dark' ]\n\t\t);\n\n\t\tconst onPress = () => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock: this.shouldReplaceBlock( 'default' ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( 'default' ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\tconst onLongPress = () => {\n\t\t\tif ( this.picker ) {\n\t\t\t\tthis.picker.presentPicker();\n\t\t\t}\n\t\t};\n\n\t\tconst onPickerSelect = ( insertionType ) => {\n\t\t\tthis.setState(\n\t\t\t\t{\n\t\t\t\t\tdestinationRootClientId: this.props.destinationRootClientId,\n\t\t\t\t\tshouldReplaceBlock:\n\t\t\t\t\t\tthis.shouldReplaceBlock( insertionType ),\n\t\t\t\t\tinsertionIndex: this.getInsertionIndex( insertionType ),\n\t\t\t\t},\n\t\t\t\tonToggle\n\t\t\t);\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ renderToggle( {\n\t\t\t\t\tonToggle: onPress,\n\t\t\t\t\tisOpen,\n\t\t\t\t\tdisabled,\n\t\t\t\t\ticonStyle,\n\t\t\t\t\tbuttonStyle,\n\t\t\t\t\tonLongPress,\n\t\t\t\t} ) }\n\t\t\t\t<Picker\n\t\t\t\t\tref={ ( instance ) => ( this.picker = instance ) }\n\t\t\t\t\toptions={ this.getInsertionOptions() }\n\t\t\t\t\tonChange={ onPickerSelect }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\n\t/**\n\t * Render callback to display Dropdown content element.\n\t *\n\t * @param {Object} options\n\t * @param {Function} options.onClose Callback to invoke when dropdown is\n\t * closed.\n\t * @param {boolean} options.isOpen Whether dropdown is currently open.\n\t *\n\t * @return {Element} Dropdown content element.\n\t */\n\trenderContent( { onClose, isOpen } ) {\n\t\tconst { clientId, isAppender } = this.props;\n\t\tconst { destinationRootClientId, shouldReplaceBlock, insertionIndex } =\n\t\t\tthis.state;\n\t\treturn (\n\t\t\t<InserterMenu\n\t\t\t\tisOpen={ isOpen }\n\t\t\t\tonSelect={ onClose }\n\t\t\t\tonDismiss={ onClose }\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ isAppender }\n\t\t\t\tshouldReplaceBlock={ shouldReplaceBlock }\n\t\t\t\tinsertionIndex={ insertionIndex }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Dropdown\n\t\t\t\tonToggle={ this.onToggle }\n\t\t\t\theaderTitle={ __( 'Add a block' ) }\n\t\t\t\trenderToggle={ this.renderInserterToggle }\n\t\t\t\trenderContent={ this.renderContent }\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithDispatch( ( dispatch ) => {\n\t\tconst { updateSettings } = dispatch( blockEditorStore );\n\t\treturn { updateSettings };\n\t} ),\n\twithSelect( ( select, { clientId, isAppender, rootClientId } ) => {\n\t\tconst {\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockSelectionEnd,\n\t\t\tgetBlockOrder,\n\t\t\tgetBlockIndex,\n\t\t\tgetBlock,\n\t\t\tgetSettings: getBlockEditorSettings,\n\t\t} = select( blockEditorStore );\n\n\t\tconst end = getBlockSelectionEnd();\n\t\t// `end` argument (id) can refer to the component which is removed\n\t\t// due to pressing `undo` button, that's why we need to check\n\t\t// if `getBlock( end) is valid, otherwise `null` is passed\n\t\tconst isAnyBlockSelected = ! isAppender && end && getBlock( end );\n\t\tconst destinationRootClientId = isAnyBlockSelected\n\t\t\t? getBlockRootClientId( end )\n\t\t\t: rootClientId;\n\t\tconst selectedBlockIndex = getBlockIndex( end );\n\t\tconst endOfRootIndex = getBlockOrder( rootClientId ).length;\n\t\tconst isSelectedUnmodifiedDefaultBlock = isAnyBlockSelected\n\t\t\t? isUnmodifiedDefaultBlock( getBlock( end ) )\n\t\t\t: undefined;\n\n\t\tfunction getDefaultInsertionIndex() {\n\t\t\tconst { __experimentalShouldInsertAtTheTop: shouldInsertAtTheTop } =\n\t\t\t\tgetBlockEditorSettings();\n\n\t\t\t// If post title is selected insert as first block.\n\t\t\tif ( shouldInsertAtTheTop ) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\t// If the clientId is defined, we insert at the position of the block.\n\t\t\tif ( clientId ) {\n\t\t\t\treturn getBlockIndex( clientId );\n\t\t\t}\n\n\t\t\t// If there is a selected block,\n\t\t\tif ( isAnyBlockSelected ) {\n\t\t\t\t// And the last selected block is unmodified (empty), it will be replaced.\n\t\t\t\tif ( isSelectedUnmodifiedDefaultBlock ) {\n\t\t\t\t\treturn selectedBlockIndex;\n\t\t\t\t}\n\n\t\t\t\t// We insert after the selected block.\n\t\t\t\treturn selectedBlockIndex + 1;\n\t\t\t}\n\n\t\t\t// Otherwise, we insert at the end of the current rootClientId.\n\t\t\treturn endOfRootIndex;\n\t\t}\n\n\t\tconst insertionIndexStart = 0;\n\n\t\tconst insertionIndexBefore = isAnyBlockSelected\n\t\t\t? selectedBlockIndex\n\t\t\t: insertionIndexStart;\n\n\t\tconst insertionIndexAfter = isAnyBlockSelected\n\t\t\t? selectedBlockIndex + 1\n\t\t\t: endOfRootIndex;\n\n\t\tconst insertionIndexEnd = endOfRootIndex;\n\n\t\treturn {\n\t\t\tblockTypeImpressions: getBlockEditorSettings().impressions,\n\t\t\tdestinationRootClientId,\n\t\t\tinsertionIndexDefault: getDefaultInsertionIndex(),\n\t\t\tinsertionIndexBefore,\n\t\t\tinsertionIndexAfter,\n\t\t\tinsertionIndexStart,\n\t\t\tinsertionIndexEnd,\n\t\t\tisAnyBlockSelected: !! isAnyBlockSelected,\n\t\t\tisSelectedBlockReplaceable: isSelectedUnmodifiedDefaultBlock,\n\t\t};\n\t} ),\n\n\twithPreferredColorScheme,\n] )( Inserter );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useState","useRef","useSelect","store","blockEditorStore","unlock","useMediaResults","category","query","mediaList","setMediaList","isLoading","setIsLoading","lastRequestRef","key","JSON","stringify","name","current","_media","fetch","Object","values","useMediaCategories","rootClientId","categories","setCategories","inserterMediaCategories","select","getInserterMediaCategories","canInsertImage","canInsertVideo","canInsertAudio","canInsertBlockType","_categories","categoriesHaveMedia","Map","Promise","all","map","isExternalResource","results","per_page","e","length","canInsertMediaType","image","video","audio","forEach","mediaType","get","push"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/hooks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useState, useRef } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\n/** @typedef {import('../../../store/actions').InserterMediaRequest} InserterMediaRequest */\n/** @typedef {import('../../../store/actions').InserterMediaItem} InserterMediaItem */\n\n/**\n * Fetches media items based on the provided category.\n * Each media category is responsible for providing a `fetch` function.\n *\n * @param {Object} category The media category to fetch results for.\n * @param {InserterMediaRequest} query The query args to use for the request.\n * @return {InserterMediaItem[]} The media results.\n */\nexport function useMediaResults( category, query = {} ) {\n\tconst [ mediaList, setMediaList ] = useState();\n\tconst [ isLoading, setIsLoading ] = useState( false );\n\t// We need to keep track of the last request made because\n\t// multiple request can be fired without knowing the order\n\t// of resolution, and we need to ensure we are showing\n\t// the results of the last request.\n\t// In the future we could use AbortController to cancel previous\n\t// requests, but we don't for now as it involves adding support\n\t// for this to `core-data` package.\n\tconst lastRequestRef = useRef();\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tconst key = JSON.stringify( {\n\t\t\t\tcategory: category.name,\n\t\t\t\t...query,\n\t\t\t} );\n\t\t\tlastRequestRef.current = key;\n\t\t\tsetIsLoading( true );\n\t\t\tsetMediaList( [] ); // Empty the previous results.\n\t\t\tconst _media = await category.fetch?.( query );\n\t\t\tif ( key === lastRequestRef.current ) {\n\t\t\t\tsetMediaList( _media );\n\t\t\t\tsetIsLoading( false );\n\t\t\t}\n\t\t} )();\n\t}, [ category.name, ...Object.values( query ) ] );\n\treturn { mediaList, isLoading };\n}\n\nexport function useMediaCategories( rootClientId ) {\n\tconst [ categories, setCategories ] = useState( [] );\n\n\tconst inserterMediaCategories = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( blockEditorStore ) ).getInserterMediaCategories(),\n\t\t[]\n\t);\n\tconst { canInsertImage, canInsertVideo, canInsertAudio } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canInsertBlockType } = select( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tcanInsertImage: canInsertBlockType(\n\t\t\t\t\t'core/image',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertVideo: canInsertBlockType(\n\t\t\t\t\t'core/video',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertAudio: canInsertBlockType(\n\t\t\t\t\t'core/audio',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tconst _categories = [];\n\t\t\t// If `inserterMediaCategories` is not defined in\n\t\t\t// block editor settings, do not show any media categories.\n\t\t\tif ( ! inserterMediaCategories ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Loop through categories to check if they have at least one media item.\n\t\t\tconst categoriesHaveMedia = new Map(\n\t\t\t\tawait Promise.all(\n\t\t\t\t\tinserterMediaCategories.map( async ( category ) => {\n\t\t\t\t\t\t// Some sources are external and we don't need to make a request.\n\t\t\t\t\t\tif ( category.isExternalResource ) {\n\t\t\t\t\t\t\treturn [ category.name, true ];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlet results = [];\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tresults = await category.fetch( {\n\t\t\t\t\t\t\t\tper_page: 1,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} catch ( e ) {\n\t\t\t\t\t\t\t// If the request fails, we shallow the error and just don't show\n\t\t\t\t\t\t\t// the category, in order to not break the media tab.\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn [ category.name, !! results.length ];\n\t\t\t\t\t} )\n\t\t\t\t)\n\t\t\t);\n\t\t\t// We need to filter out categories that don't have any media items or\n\t\t\t// whose corresponding block type is not allowed to be inserted, based\n\t\t\t// on the category's `mediaType`.\n\t\t\tconst canInsertMediaType = {\n\t\t\t\timage: canInsertImage,\n\t\t\t\tvideo: canInsertVideo,\n\t\t\t\taudio: canInsertAudio,\n\t\t\t};\n\t\t\tinserterMediaCategories.forEach( ( category ) => {\n\t\t\t\tif (\n\t\t\t\t\tcanInsertMediaType[ category.mediaType ] &&\n\t\t\t\t\tcategoriesHaveMedia.get( category.name )\n\t\t\t\t) {\n\t\t\t\t\t_categories.push( category );\n\t\t\t\t}\n\t\t\t} );\n\t\t\tif ( !! _categories.length ) {\n\t\t\t\tsetCategories( _categories );\n\t\t\t}\n\t\t} )();\n\t}, [\n\t\tcanInsertImage,\n\t\tcanInsertVideo,\n\t\tcanInsertAudio,\n\t\tinserterMediaCategories,\n\t] );\n\treturn categories;\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["useEffect","useState","useRef","useSelect","store","blockEditorStore","unlock","useMediaResults","category","query","mediaList","setMediaList","isLoading","setIsLoading","lastRequestRef","key","JSON","stringify","name","current","_media","fetch","Object","values","useMediaCategories","rootClientId","categories","setCategories","inserterMediaCategories","select","getInserterMediaCategories","canInsertImage","canInsertVideo","canInsertAudio","canInsertBlockType","_categories","categoriesHaveMedia","Map","Promise","all","map","isExternalResource","results","per_page","e","length","canInsertMediaType","image","video","audio","forEach","mediaType","get","push"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/hooks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useState, useRef } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\n\n/** @typedef {import('../../../store/actions').InserterMediaRequest} InserterMediaRequest */\n/** @typedef {import('../../../store/actions').InserterMediaItem} InserterMediaItem */\n\n/**\n * Fetches media items based on the provided category.\n * Each media category is responsible for providing a `fetch` function.\n *\n * @param {Object} category The media category to fetch results for.\n * @param {InserterMediaRequest} query The query args to use for the request.\n * @return {InserterMediaItem[]} The media results.\n */\nexport function useMediaResults( category, query = {} ) {\n\tconst [ mediaList, setMediaList ] = useState();\n\tconst [ isLoading, setIsLoading ] = useState( false );\n\t// We need to keep track of the last request made because\n\t// multiple request can be fired without knowing the order\n\t// of resolution, and we need to ensure we are showing\n\t// the results of the last request.\n\t// In the future we could use AbortController to cancel previous\n\t// requests, but we don't for now as it involves adding support\n\t// for this to `core-data` package.\n\tconst lastRequestRef = useRef();\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tconst key = JSON.stringify( {\n\t\t\t\tcategory: category.name,\n\t\t\t\t...query,\n\t\t\t} );\n\t\t\tlastRequestRef.current = key;\n\t\t\tsetIsLoading( true );\n\t\t\tsetMediaList( [] ); // Empty the previous results.\n\t\t\tconst _media = await category.fetch?.( query );\n\t\t\tif ( key === lastRequestRef.current ) {\n\t\t\t\tsetMediaList( _media );\n\t\t\t\tsetIsLoading( false );\n\t\t\t}\n\t\t} )();\n\t}, [ category.name, ...Object.values( query ) ] );\n\treturn { mediaList, isLoading };\n}\n\nexport function useMediaCategories( rootClientId ) {\n\tconst [ categories, setCategories ] = useState( [] );\n\n\tconst inserterMediaCategories = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( blockEditorStore ) ).getInserterMediaCategories(),\n\t\t[]\n\t);\n\tconst { canInsertImage, canInsertVideo, canInsertAudio } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canInsertBlockType } = select( blockEditorStore );\n\t\t\treturn {\n\t\t\t\tcanInsertImage: canInsertBlockType(\n\t\t\t\t\t'core/image',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertVideo: canInsertBlockType(\n\t\t\t\t\t'core/video',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t\tcanInsertAudio: canInsertBlockType(\n\t\t\t\t\t'core/audio',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ rootClientId ]\n\t);\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tconst _categories = [];\n\t\t\t// If `inserterMediaCategories` is not defined in\n\t\t\t// block editor settings, do not show any media categories.\n\t\t\tif ( ! inserterMediaCategories ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Loop through categories to check if they have at least one media item.\n\t\t\tconst categoriesHaveMedia = new Map(\n\t\t\t\tawait Promise.all(\n\t\t\t\t\tinserterMediaCategories.map( async ( category ) => {\n\t\t\t\t\t\t// Some sources are external and we don't need to make a request.\n\t\t\t\t\t\tif ( category.isExternalResource ) {\n\t\t\t\t\t\t\treturn [ category.name, true ];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlet results = [];\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tresults = await category.fetch( {\n\t\t\t\t\t\t\t\tper_page: 1,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} catch ( e ) {\n\t\t\t\t\t\t\t// If the request fails, we shallow the error and just don't show\n\t\t\t\t\t\t\t// the category, in order to not break the media tab.\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn [ category.name, !! results.length ];\n\t\t\t\t\t} )\n\t\t\t\t)\n\t\t\t);\n\t\t\t// We need to filter out categories that don't have any media items or\n\t\t\t// whose corresponding block type is not allowed to be inserted, based\n\t\t\t// on the category's `mediaType`.\n\t\t\tconst canInsertMediaType = {\n\t\t\t\timage: canInsertImage,\n\t\t\t\tvideo: canInsertVideo,\n\t\t\t\taudio: canInsertAudio,\n\t\t\t};\n\t\t\tinserterMediaCategories.forEach( ( category ) => {\n\t\t\t\tif (\n\t\t\t\t\tcanInsertMediaType[ category.mediaType ] &&\n\t\t\t\t\tcategoriesHaveMedia.get( category.name )\n\t\t\t\t) {\n\t\t\t\t\t_categories.push( category );\n\t\t\t\t}\n\t\t\t} );\n\t\t\tif ( !! _categories.length ) {\n\t\t\t\tsetCategories( _categories );\n\t\t\t}\n\t\t} )();\n\t}, [\n\t\tcanInsertImage,\n\t\tcanInsertVideo,\n\t\tcanInsertAudio,\n\t\tinserterMediaCategories,\n\t] );\n\treturn categories;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Composite","__","MediaPreview","jsx","_jsx","MediaList","mediaList","category","onClick","label","role","className","children","map","media","index","id","sourceId"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-list.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Composite } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { MediaPreview } from './media-preview';\n\nfunction MediaList( {\n\tmediaList,\n\tcategory,\n\tonClick,\n\tlabel = __( 'Media List' ),\n} ) {\n\treturn (\n\t\t<Composite\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-inserter__media-list\"\n\t\t\taria-label={ label }\n\t\t>\n\t\t\t{ mediaList.map( ( media, index ) => (\n\t\t\t\t<MediaPreview\n\t\t\t\t\tkey={ media.id || media.sourceId || index }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t\tcategory={ category }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nexport default MediaList;\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["Composite","__","MediaPreview","jsx","_jsx","MediaList","mediaList","category","onClick","label","role","className","children","map","media","index","id","sourceId"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-list.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Composite } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { MediaPreview } from './media-preview';\n\nfunction MediaList( {\n\tmediaList,\n\tcategory,\n\tonClick,\n\tlabel = __( 'Media List' ),\n} ) {\n\treturn (\n\t\t<Composite\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-inserter__media-list\"\n\t\t\taria-label={ label }\n\t\t>\n\t\t\t{ mediaList.map( ( media, index ) => (\n\t\t\t\t<MediaPreview\n\t\t\t\t\tkey={ media.id || media.sourceId || index }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t\tcategory={ category }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nexport default MediaList;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,uBAAuB;AACjD,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,SAASC,YAAY,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE/C,SAASC,SAASA,CAAE;EACnBC,SAAS;EACTC,QAAQ;EACRC,OAAO;EACPC,KAAK,GAAGR,EAAE,CAAE,YAAa;AAC1B,CAAC,EAAG;EACH,oBACCG,IAAA,CAACJ,SAAS;IACTU,IAAI,EAAC,SAAS;IACdC,SAAS,EAAC,mCAAmC;IAC7C,cAAaF,KAAO;IAAAG,QAAA,EAElBN,SAAS,CAACO,GAAG,CAAE,CAAEC,KAAK,EAAEC,KAAK,kBAC9BX,IAAA,CAACF,YAAY;MAEZY,KAAK,EAAGA,KAAO;MACfP,QAAQ,EAAGA,QAAU;MACrBC,OAAO,EAAGA;IAAS,GAHbM,KAAK,CAACE,EAAE,IAAIF,KAAK,CAACG,QAAQ,IAAIF,KAIpC,CACA;EAAC,CACO,CAAC;AAEd;AAEA,eAAeV,SAAS","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","useViewportMatch","Button","useCallback","useMemo","MediaCategoryPanel","MediaUploadCheck","MediaUpload","useMediaCategories","getBlockAndPreviewFromMedia","MobileTabNavigation","CategoryTabs","InserterNoResults","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ALLOWED_MEDIA_TYPES","MediaTab","rootClientId","selectedCategory","onSelectCategory","onInsert","children","mediaCategories","isMobile","baseCssClass","onSelectMedia","media","url","block","type","categories","map","mediaCategory","label","labels","name","length","className","multiple","onSelect","allowedTypes","render","open","__next40pxDefaultSize","onClick","event","target","focus","variant","category"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-tab.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { Button } from '@wordpress/components';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { MediaCategoryPanel } from './media-panel';\nimport MediaUploadCheck from '../../media-upload/check';\nimport MediaUpload from '../../media-upload';\nimport { useMediaCategories } from './hooks';\nimport { getBlockAndPreviewFromMedia } from './utils';\nimport MobileTabNavigation from '../mobile-tab-navigation';\nimport CategoryTabs from '../category-tabs';\nimport InserterNoResults from '../no-results';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image', 'video', 'audio' ];\n\nfunction MediaTab( {\n\trootClientId,\n\tselectedCategory,\n\tonSelectCategory,\n\tonInsert,\n\tchildren,\n} ) {\n\tconst mediaCategories = useMediaCategories( rootClientId );\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\tconst baseCssClass = 'block-editor-inserter__media-tabs';\n\tconst onSelectMedia = useCallback(\n\t\t( media ) => {\n\t\t\tif ( ! media?.url ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst [ block ] = getBlockAndPreviewFromMedia( media, media.type );\n\t\t\tonInsert( block );\n\t\t},\n\t\t[ onInsert ]\n\t);\n\tconst categories = useMemo(\n\t\t() =>\n\t\t\tmediaCategories.map( ( mediaCategory ) => ( {\n\t\t\t\t...mediaCategory,\n\t\t\t\tlabel: mediaCategory.labels.name,\n\t\t\t} ) ),\n\t\t[ mediaCategories ]\n\t);\n\n\tif ( ! categories.length ) {\n\t\treturn <InserterNoResults />;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ ! isMobile && (\n\t\t\t\t<div className={ `${ baseCssClass }-container` }>\n\t\t\t\t\t<CategoryTabs\n\t\t\t\t\t\tcategories={ categories }\n\t\t\t\t\t\tselectedCategory={ selectedCategory }\n\t\t\t\t\t\tonSelectCategory={ onSelectCategory }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</CategoryTabs>\n\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\tmultiple={ false }\n\t\t\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t// Safari doesn't emit a focus event on button elements when\n\t\t\t\t\t\t\t\t\t\t// clicked and we need to manually focus the button here.\n\t\t\t\t\t\t\t\t\t\t// The reason is that core's Media Library modal explicitly triggers a\n\t\t\t\t\t\t\t\t\t\t// focus event and therefore a `blur` event is triggered on a different\n\t\t\t\t\t\t\t\t\t\t// element, which doesn't contain the `data-unstable-ignore-focus-outside-for-relatedtarget`\n\t\t\t\t\t\t\t\t\t\t// attribute making the Inserter dialog to close.\n\t\t\t\t\t\t\t\t\t\tevent.target.focus();\n\t\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-inserter__media-library-button\"\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tdata-unstable-ignore-focus-outside-for-relatedtarget=\".media-modal\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ isMobile && (\n\t\t\t\t<MobileTabNavigation categories={ categories }>\n\t\t\t\t\t{ ( category ) => (\n\t\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tcategory={ category }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</MobileTabNavigation>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default MediaTab;\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["__","useViewportMatch","Button","useCallback","useMemo","MediaCategoryPanel","MediaUploadCheck","MediaUpload","useMediaCategories","getBlockAndPreviewFromMedia","MobileTabNavigation","CategoryTabs","InserterNoResults","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ALLOWED_MEDIA_TYPES","MediaTab","rootClientId","selectedCategory","onSelectCategory","onInsert","children","mediaCategories","isMobile","baseCssClass","onSelectMedia","media","url","block","type","categories","map","mediaCategory","label","labels","name","length","className","multiple","onSelect","allowedTypes","render","open","__next40pxDefaultSize","onClick","event","target","focus","variant","category"],"sources":["@wordpress/block-editor/src/components/inserter/media-tab/media-tab.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { Button } from '@wordpress/components';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { MediaCategoryPanel } from './media-panel';\nimport MediaUploadCheck from '../../media-upload/check';\nimport MediaUpload from '../../media-upload';\nimport { useMediaCategories } from './hooks';\nimport { getBlockAndPreviewFromMedia } from './utils';\nimport MobileTabNavigation from '../mobile-tab-navigation';\nimport CategoryTabs from '../category-tabs';\nimport InserterNoResults from '../no-results';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image', 'video', 'audio' ];\n\nfunction MediaTab( {\n\trootClientId,\n\tselectedCategory,\n\tonSelectCategory,\n\tonInsert,\n\tchildren,\n} ) {\n\tconst mediaCategories = useMediaCategories( rootClientId );\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\tconst baseCssClass = 'block-editor-inserter__media-tabs';\n\tconst onSelectMedia = useCallback(\n\t\t( media ) => {\n\t\t\tif ( ! media?.url ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst [ block ] = getBlockAndPreviewFromMedia( media, media.type );\n\t\t\tonInsert( block );\n\t\t},\n\t\t[ onInsert ]\n\t);\n\tconst categories = useMemo(\n\t\t() =>\n\t\t\tmediaCategories.map( ( mediaCategory ) => ( {\n\t\t\t\t...mediaCategory,\n\t\t\t\tlabel: mediaCategory.labels.name,\n\t\t\t} ) ),\n\t\t[ mediaCategories ]\n\t);\n\n\tif ( ! categories.length ) {\n\t\treturn <InserterNoResults />;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ ! isMobile && (\n\t\t\t\t<div className={ `${ baseCssClass }-container` }>\n\t\t\t\t\t<CategoryTabs\n\t\t\t\t\t\tcategories={ categories }\n\t\t\t\t\t\tselectedCategory={ selectedCategory }\n\t\t\t\t\t\tonSelectCategory={ onSelectCategory }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</CategoryTabs>\n\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\tmultiple={ false }\n\t\t\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t// Safari doesn't emit a focus event on button elements when\n\t\t\t\t\t\t\t\t\t\t// clicked and we need to manually focus the button here.\n\t\t\t\t\t\t\t\t\t\t// The reason is that core's Media Library modal explicitly triggers a\n\t\t\t\t\t\t\t\t\t\t// focus event and therefore a `blur` event is triggered on a different\n\t\t\t\t\t\t\t\t\t\t// element, which doesn't contain the `data-unstable-ignore-focus-outside-for-relatedtarget`\n\t\t\t\t\t\t\t\t\t\t// attribute making the Inserter dialog to close.\n\t\t\t\t\t\t\t\t\t\tevent.target.focus();\n\t\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-inserter__media-library-button\"\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\tdata-unstable-ignore-focus-outside-for-relatedtarget=\".media-modal\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ isMobile && (\n\t\t\t\t<MobileTabNavigation categories={ categories }>\n\t\t\t\t\t{ ( category ) => (\n\t\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\t\tcategory={ category }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</MobileTabNavigation>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default MediaTab;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,WAAW,EAAEC,OAAO,QAAQ,oBAAoB;;AAEzD;AACA;AACA;AACA,SAASC,kBAAkB,QAAQ,eAAe;AAClD,OAAOC,gBAAgB,MAAM,0BAA0B;AACvD,OAAOC,WAAW,MAAM,oBAAoB;AAC5C,SAASC,kBAAkB,QAAQ,SAAS;AAC5C,SAASC,2BAA2B,QAAQ,SAAS;AACrD,OAAOC,mBAAmB,MAAM,0BAA0B;AAC1D,OAAOC,YAAY,MAAM,kBAAkB;AAC3C,OAAOC,iBAAiB,MAAM,eAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAE9C,MAAMC,mBAAmB,GAAG,CAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAE;AAEzD,SAASC,QAAQA,CAAE;EAClBC,YAAY;EACZC,gBAAgB;EAChBC,gBAAgB;EAChBC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAMC,eAAe,GAAGlB,kBAAkB,CAAEa,YAAa,CAAC;EAC1D,MAAMM,QAAQ,GAAG1B,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAClD,MAAM2B,YAAY,GAAG,mCAAmC;EACxD,MAAMC,aAAa,GAAG1B,WAAW,CAC9B2B,KAAK,IAAM;IACZ,IAAK,CAAEA,KAAK,EAAEC,GAAG,EAAG;MACnB;IACD;IACA,MAAM,CAAEC,KAAK,CAAE,GAAGvB,2BAA2B,CAAEqB,KAAK,EAAEA,KAAK,CAACG,IAAK,CAAC;IAClET,QAAQ,CAAEQ,KAAM,CAAC;EAClB,CAAC,EACD,CAAER,QAAQ,CACX,CAAC;EACD,MAAMU,UAAU,GAAG9B,OAAO,CACzB,MACCsB,eAAe,CAACS,GAAG,CAAIC,aAAa,KAAQ;IAC3C,GAAGA,aAAa;IAChBC,KAAK,EAAED,aAAa,CAACE,MAAM,CAACC;EAC7B,CAAC,CAAG,CAAC,EACN,CAAEb,eAAe,CAClB,CAAC;EAED,IAAK,CAAEQ,UAAU,CAACM,MAAM,EAAG;IAC1B,oBAAO1B,IAAA,CAACF,iBAAiB,IAAE,CAAC;EAC7B;EAEA,oBACCI,KAAA,CAAAE,SAAA;IAAAO,QAAA,GACG,CAAEE,QAAQ,iBACXX,KAAA;MAAKyB,SAAS,EAAG,GAAIb,YAAY,YAAe;MAAAH,QAAA,gBAC/CX,IAAA,CAACH,YAAY;QACZuB,UAAU,EAAGA,UAAY;QACzBZ,gBAAgB,EAAGA,gBAAkB;QACrCC,gBAAgB,EAAGA,gBAAkB;QAAAE,QAAA,EAEnCA;MAAQ,CACG,CAAC,eACfX,IAAA,CAACR,gBAAgB;QAAAmB,QAAA,eAChBX,IAAA,CAACP,WAAW;UACXmC,QAAQ,EAAG,KAAO;UAClBC,QAAQ,EAAGd,aAAe;UAC1Be,YAAY,EAAGzB,mBAAqB;UACpC0B,MAAM,EAAGA,CAAE;YAAEC;UAAK,CAAC,kBAClBhC,IAAA,CAACZ,MAAM;YACN6C,qBAAqB;YACrBC,OAAO,EAAKC,KAAK,IAAM;cACtB;cACA;cACA;cACA;cACA;cACA;cACAA,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAC;cACpBL,IAAI,CAAC,CAAC;YACP,CAAG;YACHL,SAAS,EAAC,6CAA6C;YACvDW,OAAO,EAAC,WAAW;YACnB,wDAAqD,cAAc;YAAA3B,QAAA,EAEjEzB,EAAE,CAAE,oBAAqB;UAAC,CACrB;QACN,CACH;MAAC,CACe,CAAC;IAAA,CACf,CACL,EACC2B,QAAQ,iBACTb,IAAA,CAACJ,mBAAmB;MAACwB,UAAU,EAAGA,UAAY;MAAAT,QAAA,EACzC4B,QAAQ,iBACXvC,IAAA,CAACT,kBAAkB;QAClBmB,QAAQ,EAAGA,QAAU;QACrBH,YAAY,EAAGA,YAAc;QAC7BgC,QAAQ,EAAGA;MAAU,CACrB;IACD,CACmB,CACrB;EAAA,CACA,CAAC;AAEL;AAEA,eAAejC,QAAQ","ignoreList":[]}
|
|
@@ -44,8 +44,19 @@ function InserterMenu({
|
|
|
44
44
|
__experimentalInitialTab,
|
|
45
45
|
__experimentalInitialCategory
|
|
46
46
|
}, ref) {
|
|
47
|
-
const
|
|
48
|
-
|
|
47
|
+
const {
|
|
48
|
+
isZoomOutMode,
|
|
49
|
+
hasSectionRootClientId
|
|
50
|
+
} = useSelect(select => {
|
|
51
|
+
const {
|
|
52
|
+
isZoomOut,
|
|
53
|
+
getSectionRootClientId
|
|
54
|
+
} = unlock(select(blockEditorStore));
|
|
55
|
+
return {
|
|
56
|
+
isZoomOutMode: isZoomOut(),
|
|
57
|
+
hasSectionRootClientId: !!getSectionRootClientId()
|
|
58
|
+
};
|
|
59
|
+
}, []);
|
|
49
60
|
const [filterValue, setFilterValue, delayedFilterValue] = useDebouncedInput(__experimentalFilterValue);
|
|
50
61
|
const [hoveredItem, setHoveredItem] = useState(null);
|
|
51
62
|
const [selectedPatternCategory, setSelectedPatternCategory] = useState(__experimentalInitialCategory);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","forwardRef","useState","useCallback","useMemo","useRef","useLayoutEffect","VisuallyHidden","SearchControl","Popover","__","useDebouncedInput","useViewportMatch","useSelect","Tips","InserterPreviewPanel","BlockTypesTab","BlockPatternsTab","PatternCategoryPreviews","MediaTab","MediaCategoryPanel","InserterSearchResults","useInsertionPoint","store","blockEditorStore","TabbedSidebar","useZoomOut","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","NOOP","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","onPatternCategorySelection","onClose","__experimentalInitialTab","__experimentalInitialCategory","ref","isZoomOutMode","select","isZoomOut","hasSectionRootClientId","getSectionRootClientId","filterValue","setFilterValue","delayedFilterValue","hoveredItem","setHoveredItem","selectedPatternCategory","setSelectedPatternCategory","patternFilter","setPatternFilter","selectedMediaCategory","setSelectedMediaCategory","isLargeViewport","getInitialTab","selectedTab","setSelectedTab","shouldUseZoomOut","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","insertionIndex","blockTypesTabRef","onInsert","blocks","meta","shouldForceFocusBlock","_rootClientId","window","requestAnimationFrame","current","contains","ownerDocument","activeElement","querySelector","focus","onInsertPattern","patternName","args","onHover","item","onClickPatternCategory","patternCategory","filter","showPatternPanel","showMediaPanel","inserterSearch","children","__nextHasNoMarginBottom","className","onChange","value","label","placeholder","showBlockDirectory","prioritizePatterns","blocksTab","as","patternsTab","onSelectCategory","selectedCategory","category","showTitlesAsTooltip","mediaTab","handleSetSelectedTab","tabsRef","closeButtonLabel","tabs","name","title","panel","placement","offset","focusOnMount","animate","PrivateInserterMenu","PublicInserterMenu","props"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseRef,\n\tuseLayoutEffect,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDebouncedInput, useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Tips from './tips';\nimport InserterPreviewPanel from './preview-panel';\nimport BlockTypesTab from './block-types-tab';\nimport BlockPatternsTab from './block-patterns-tab';\nimport { PatternCategoryPreviews } from './block-patterns-tab/pattern-category-previews';\nimport { MediaTab, MediaCategoryPanel } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport { store as blockEditorStore } from '../../store';\nimport TabbedSidebar from '../tabbed-sidebar';\nimport { useZoomOut } from '../../hooks/use-zoom-out';\nimport { unlock } from '../../lock-unlock';\n\nconst NOOP = () => {};\nfunction InserterMenu(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\t__experimentalInsertionIndex,\n\t\tonSelect,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks,\n\t\t__experimentalFilterValue = '',\n\t\tshouldFocusBlock = true,\n\t\tonPatternCategorySelection,\n\t\tonClose,\n\t\t__experimentalInitialTab,\n\t\t__experimentalInitialCategory,\n\t},\n\tref\n) {\n\tconst isZoomOutMode = useSelect(\n\t\t( select ) => unlock( select( blockEditorStore ) ).isZoomOut(),\n\t\t[]\n\t);\n\tconst hasSectionRootClientId = useSelect(\n\t\t( select ) =>\n\t\t\t!! unlock( select( blockEditorStore ) ).getSectionRootClientId(),\n\t\t[]\n\t);\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] = useState(\n\t\t__experimentalInitialCategory\n\t);\n\tconst [ patternFilter, setPatternFilter ] = useState( 'all' );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\n\tfunction getInitialTab() {\n\t\tif ( __experimentalInitialTab ) {\n\t\t\treturn __experimentalInitialTab;\n\t\t}\n\n\t\tif ( isZoomOutMode ) {\n\t\t\treturn 'patterns';\n\t\t}\n\n\t\treturn 'blocks';\n\t}\n\tconst [ selectedTab, setSelectedTab ] = useState( getInitialTab() );\n\n\tconst shouldUseZoomOut =\n\t\thasSectionRootClientId &&\n\t\t( selectedTab === 'patterns' || selectedTab === 'media' );\n\n\tuseZoomOut( shouldUseZoomOut && isLargeViewport );\n\n\tconst [ destinationRootClientId, onInsertBlocks, onToggleInsertionPoint ] =\n\t\tuseInsertionPoint( {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\t\tshouldFocusBlock,\n\t\t} );\n\tconst blockTypesTabRef = useRef();\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock, _rootClientId ) => {\n\t\t\tonInsertBlocks(\n\t\t\t\tblocks,\n\t\t\t\tmeta,\n\t\t\t\tshouldForceFocusBlock,\n\t\t\t\t_rootClientId\n\t\t\t);\n\t\t\tonSelect( blocks );\n\n\t\t\t// Check for focus loss due to filtering blocks by selected block type\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\tif (\n\t\t\t\t\t! shouldFocusBlock &&\n\t\t\t\t\t! blockTypesTabRef.current?.contains(\n\t\t\t\t\t\tref.current.ownerDocument.activeElement\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\t// There has been a focus loss, so focus the first button in the block types tab\n\t\t\t\t\tblockTypesTabRef.current?.querySelector( 'button' ).focus();\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\t\t[ onInsertBlocks, onSelect, shouldFocusBlock ]\n\t);\n\n\tconst onInsertPattern = useCallback(\n\t\t( blocks, patternName, ...args ) => {\n\t\t\tonToggleInsertionPoint( false );\n\t\t\tonInsertBlocks( blocks, { patternName }, ...args );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect ]\n\t);\n\n\tconst onHover = useCallback(\n\t\t( item ) => {\n\t\t\tonToggleInsertionPoint( item );\n\t\t\tsetHoveredItem( item );\n\t\t},\n\t\t[ onToggleInsertionPoint, setHoveredItem ]\n\t);\n\n\tconst onClickPatternCategory = useCallback(\n\t\t( patternCategory, filter ) => {\n\t\t\tsetSelectedPatternCategory( patternCategory );\n\t\t\tsetPatternFilter( filter );\n\t\t\tonPatternCategorySelection?.();\n\t\t},\n\t\t[ setSelectedPatternCategory, onPatternCategorySelection ]\n\t);\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\t!! selectedPatternCategory;\n\n\tconst showMediaPanel = selectedTab === 'media' && !! selectedMediaCategory;\n\n\tconst inserterSearch = useMemo( () => {\n\t\tif ( selectedTab === 'media' ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"block-editor-inserter__search\"\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tif ( hoveredItem ) {\n\t\t\t\t\t\t\tsetHoveredItem( null );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetFilterValue( value );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ filterValue }\n\t\t\t\t\tlabel={ __( 'Search' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t/>\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\tprioritizePatterns={ selectedTab === 'patterns' }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tselectedTab,\n\t\thoveredItem,\n\t\tsetHoveredItem,\n\t\tsetFilterValue,\n\t\tfilterValue,\n\t\tdelayedFilterValue,\n\t\tonSelect,\n\t\tonHover,\n\t\tshouldFocusBlock,\n\t\tclientId,\n\t\trootClientId,\n\t\t__experimentalInsertionIndex,\n\t\tisAppender,\n\t] );\n\n\tconst blocksTab = useMemo( () => {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className=\"block-editor-inserter__block-list\">\n\t\t\t\t\t<BlockTypesTab\n\t\t\t\t\t\tref={ blockTypesTabRef }\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t{ showInserterHelpPanel && (\n\t\t\t\t\t<div className=\"block-editor-inserter__tips\">\n\t\t\t\t\t\t<VisuallyHidden as=\"h2\">\n\t\t\t\t\t\t\t{ __( 'A tip for using the block editor' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t<Tips />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tonHover,\n\t\tshowMostUsedBlocks,\n\t\tshowInserterHelpPanel,\n\t] );\n\n\tconst patternsTab = useMemo( () => {\n\t\treturn (\n\t\t\t<BlockPatternsTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\tonSelectCategory={ onClickPatternCategory }\n\t\t\t\tselectedCategory={ selectedPatternCategory }\n\t\t\t>\n\t\t\t\t{ showPatternPanel && (\n\t\t\t\t\t<PatternCategoryPreviews\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\t\tpatternFilter={ patternFilter }\n\t\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockPatternsTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsertPattern,\n\t\tonClickPatternCategory,\n\t\tpatternFilter,\n\t\tselectedPatternCategory,\n\t\tshowPatternPanel,\n\t] );\n\n\tconst mediaTab = useMemo( () => {\n\t\treturn (\n\t\t\t<MediaTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tselectedCategory={ selectedMediaCategory }\n\t\t\t\tonSelectCategory={ setSelectedMediaCategory }\n\t\t\t\tonInsert={ onInsert }\n\t\t\t>\n\t\t\t\t{ showMediaPanel && (\n\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</MediaTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tselectedMediaCategory,\n\t\tsetSelectedMediaCategory,\n\t\tshowMediaPanel,\n\t] );\n\n\tconst handleSetSelectedTab = ( value ) => {\n\t\t// If no longer on patterns tab remove the category setting.\n\t\tif ( value !== 'patterns' ) {\n\t\t\tsetSelectedPatternCategory( null );\n\t\t}\n\t\tsetSelectedTab( value );\n\t};\n\n\t// Focus first active tab, if any\n\tconst tabsRef = useRef();\n\tuseLayoutEffect( () => {\n\t\tif ( tabsRef.current ) {\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\ttabsRef.current\n\t\t\t\t\t.querySelector( '[role=\"tab\"][aria-selected=\"true\"]' )\n\t\t\t\t\t?.focus();\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'block-editor-inserter__menu', {\n\t\t\t\t'show-panel': showPatternPanel || showMediaPanel,\n\t\t\t\t'is-zoom-out': isZoomOutMode,\n\t\t\t} ) }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__main-area\">\n\t\t\t\t<TabbedSidebar\n\t\t\t\t\tref={ tabsRef }\n\t\t\t\t\tonSelect={ handleSetSelectedTab }\n\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\tselectedTab={ selectedTab }\n\t\t\t\t\tcloseButtonLabel={ __( 'Close Block Inserter' ) }\n\t\t\t\t\ttabs={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'blocks',\n\t\t\t\t\t\t\ttitle: __( 'Blocks' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'blocks' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tblocksTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'patterns',\n\t\t\t\t\t\t\ttitle: __( 'Patterns' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'patterns' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tpatternsTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'media',\n\t\t\t\t\t\t\ttitle: __( 'Media' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ mediaTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ showInserterHelpPanel && hoveredItem && (\n\t\t\t\t<Popover\n\t\t\t\t\tclassName=\"block-editor-inserter__preview-container__popover\"\n\t\t\t\t\tplacement=\"right-start\"\n\t\t\t\t\toffset={ 16 }\n\t\t\t\t\tfocusOnMount={ false }\n\t\t\t\t\tanimate={ false }\n\t\t\t\t>\n\t\t\t\t\t<InserterPreviewPanel item={ hoveredItem } />\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport const PrivateInserterMenu = forwardRef( InserterMenu );\n\nfunction PublicInserterMenu( props, ref ) {\n\treturn (\n\t\t<PrivateInserterMenu\n\t\t\t{ ...props }\n\t\t\tonPatternCategorySelection={ NOOP }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicInserterMenu );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","forwardRef","useState","useCallback","useMemo","useRef","useLayoutEffect","VisuallyHidden","SearchControl","Popover","__","useDebouncedInput","useViewportMatch","useSelect","Tips","InserterPreviewPanel","BlockTypesTab","BlockPatternsTab","PatternCategoryPreviews","MediaTab","MediaCategoryPanel","InserterSearchResults","useInsertionPoint","store","blockEditorStore","TabbedSidebar","useZoomOut","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","NOOP","InserterMenu","rootClientId","clientId","isAppender","__experimentalInsertionIndex","onSelect","showInserterHelpPanel","showMostUsedBlocks","__experimentalFilterValue","shouldFocusBlock","onPatternCategorySelection","onClose","__experimentalInitialTab","__experimentalInitialCategory","ref","isZoomOutMode","hasSectionRootClientId","select","isZoomOut","getSectionRootClientId","filterValue","setFilterValue","delayedFilterValue","hoveredItem","setHoveredItem","selectedPatternCategory","setSelectedPatternCategory","patternFilter","setPatternFilter","selectedMediaCategory","setSelectedMediaCategory","isLargeViewport","getInitialTab","selectedTab","setSelectedTab","shouldUseZoomOut","destinationRootClientId","onInsertBlocks","onToggleInsertionPoint","insertionIndex","blockTypesTabRef","onInsert","blocks","meta","shouldForceFocusBlock","_rootClientId","window","requestAnimationFrame","current","contains","ownerDocument","activeElement","querySelector","focus","onInsertPattern","patternName","args","onHover","item","onClickPatternCategory","patternCategory","filter","showPatternPanel","showMediaPanel","inserterSearch","children","__nextHasNoMarginBottom","className","onChange","value","label","placeholder","showBlockDirectory","prioritizePatterns","blocksTab","as","patternsTab","onSelectCategory","selectedCategory","category","showTitlesAsTooltip","mediaTab","handleSetSelectedTab","tabsRef","closeButtonLabel","tabs","name","title","panel","placement","offset","focusOnMount","animate","PrivateInserterMenu","PublicInserterMenu","props"],"sources":["@wordpress/block-editor/src/components/inserter/menu.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tforwardRef,\n\tuseState,\n\tuseCallback,\n\tuseMemo,\n\tuseRef,\n\tuseLayoutEffect,\n} from '@wordpress/element';\nimport { VisuallyHidden, SearchControl, Popover } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDebouncedInput, useViewportMatch } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport Tips from './tips';\nimport InserterPreviewPanel from './preview-panel';\nimport BlockTypesTab from './block-types-tab';\nimport BlockPatternsTab from './block-patterns-tab';\nimport { PatternCategoryPreviews } from './block-patterns-tab/pattern-category-previews';\nimport { MediaTab, MediaCategoryPanel } from './media-tab';\nimport InserterSearchResults from './search-results';\nimport useInsertionPoint from './hooks/use-insertion-point';\nimport { store as blockEditorStore } from '../../store';\nimport TabbedSidebar from '../tabbed-sidebar';\nimport { useZoomOut } from '../../hooks/use-zoom-out';\nimport { unlock } from '../../lock-unlock';\n\nconst NOOP = () => {};\nfunction InserterMenu(\n\t{\n\t\trootClientId,\n\t\tclientId,\n\t\tisAppender,\n\t\t__experimentalInsertionIndex,\n\t\tonSelect,\n\t\tshowInserterHelpPanel,\n\t\tshowMostUsedBlocks,\n\t\t__experimentalFilterValue = '',\n\t\tshouldFocusBlock = true,\n\t\tonPatternCategorySelection,\n\t\tonClose,\n\t\t__experimentalInitialTab,\n\t\t__experimentalInitialCategory,\n\t},\n\tref\n) {\n\tconst { isZoomOutMode, hasSectionRootClientId } = useSelect( ( select ) => {\n\t\tconst { isZoomOut, getSectionRootClientId } = unlock(\n\t\t\tselect( blockEditorStore )\n\t\t);\n\n\t\treturn {\n\t\t\tisZoomOutMode: isZoomOut(),\n\t\t\thasSectionRootClientId: !! getSectionRootClientId(),\n\t\t};\n\t}, [] );\n\n\tconst [ filterValue, setFilterValue, delayedFilterValue ] =\n\t\tuseDebouncedInput( __experimentalFilterValue );\n\tconst [ hoveredItem, setHoveredItem ] = useState( null );\n\tconst [ selectedPatternCategory, setSelectedPatternCategory ] = useState(\n\t\t__experimentalInitialCategory\n\t);\n\tconst [ patternFilter, setPatternFilter ] = useState( 'all' );\n\tconst [ selectedMediaCategory, setSelectedMediaCategory ] =\n\t\tuseState( null );\n\tconst isLargeViewport = useViewportMatch( 'large' );\n\n\tfunction getInitialTab() {\n\t\tif ( __experimentalInitialTab ) {\n\t\t\treturn __experimentalInitialTab;\n\t\t}\n\n\t\tif ( isZoomOutMode ) {\n\t\t\treturn 'patterns';\n\t\t}\n\n\t\treturn 'blocks';\n\t}\n\tconst [ selectedTab, setSelectedTab ] = useState( getInitialTab() );\n\n\tconst shouldUseZoomOut =\n\t\thasSectionRootClientId &&\n\t\t( selectedTab === 'patterns' || selectedTab === 'media' );\n\n\tuseZoomOut( shouldUseZoomOut && isLargeViewport );\n\n\tconst [ destinationRootClientId, onInsertBlocks, onToggleInsertionPoint ] =\n\t\tuseInsertionPoint( {\n\t\t\trootClientId,\n\t\t\tclientId,\n\t\t\tisAppender,\n\t\t\tinsertionIndex: __experimentalInsertionIndex,\n\t\t\tshouldFocusBlock,\n\t\t} );\n\tconst blockTypesTabRef = useRef();\n\n\tconst onInsert = useCallback(\n\t\t( blocks, meta, shouldForceFocusBlock, _rootClientId ) => {\n\t\t\tonInsertBlocks(\n\t\t\t\tblocks,\n\t\t\t\tmeta,\n\t\t\t\tshouldForceFocusBlock,\n\t\t\t\t_rootClientId\n\t\t\t);\n\t\t\tonSelect( blocks );\n\n\t\t\t// Check for focus loss due to filtering blocks by selected block type\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\tif (\n\t\t\t\t\t! shouldFocusBlock &&\n\t\t\t\t\t! blockTypesTabRef.current?.contains(\n\t\t\t\t\t\tref.current.ownerDocument.activeElement\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\t// There has been a focus loss, so focus the first button in the block types tab\n\t\t\t\t\tblockTypesTabRef.current?.querySelector( 'button' ).focus();\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\t\t[ onInsertBlocks, onSelect, shouldFocusBlock ]\n\t);\n\n\tconst onInsertPattern = useCallback(\n\t\t( blocks, patternName, ...args ) => {\n\t\t\tonToggleInsertionPoint( false );\n\t\t\tonInsertBlocks( blocks, { patternName }, ...args );\n\t\t\tonSelect();\n\t\t},\n\t\t[ onInsertBlocks, onSelect ]\n\t);\n\n\tconst onHover = useCallback(\n\t\t( item ) => {\n\t\t\tonToggleInsertionPoint( item );\n\t\t\tsetHoveredItem( item );\n\t\t},\n\t\t[ onToggleInsertionPoint, setHoveredItem ]\n\t);\n\n\tconst onClickPatternCategory = useCallback(\n\t\t( patternCategory, filter ) => {\n\t\t\tsetSelectedPatternCategory( patternCategory );\n\t\t\tsetPatternFilter( filter );\n\t\t\tonPatternCategorySelection?.();\n\t\t},\n\t\t[ setSelectedPatternCategory, onPatternCategorySelection ]\n\t);\n\n\tconst showPatternPanel =\n\t\tselectedTab === 'patterns' &&\n\t\t! delayedFilterValue &&\n\t\t!! selectedPatternCategory;\n\n\tconst showMediaPanel = selectedTab === 'media' && !! selectedMediaCategory;\n\n\tconst inserterSearch = useMemo( () => {\n\t\tif ( selectedTab === 'media' ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"block-editor-inserter__search\"\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tif ( hoveredItem ) {\n\t\t\t\t\t\t\tsetHoveredItem( null );\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetFilterValue( value );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ filterValue }\n\t\t\t\t\tlabel={ __( 'Search' ) }\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t/>\n\t\t\t\t{ !! delayedFilterValue && (\n\t\t\t\t\t<InserterSearchResults\n\t\t\t\t\t\tfilterValue={ delayedFilterValue }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tisAppender={ isAppender }\n\t\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\t\t__experimentalInsertionIndex\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshowBlockDirectory\n\t\t\t\t\t\tshouldFocusBlock={ shouldFocusBlock }\n\t\t\t\t\t\tprioritizePatterns={ selectedTab === 'patterns' }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tselectedTab,\n\t\thoveredItem,\n\t\tsetHoveredItem,\n\t\tsetFilterValue,\n\t\tfilterValue,\n\t\tdelayedFilterValue,\n\t\tonSelect,\n\t\tonHover,\n\t\tshouldFocusBlock,\n\t\tclientId,\n\t\trootClientId,\n\t\t__experimentalInsertionIndex,\n\t\tisAppender,\n\t] );\n\n\tconst blocksTab = useMemo( () => {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className=\"block-editor-inserter__block-list\">\n\t\t\t\t\t<BlockTypesTab\n\t\t\t\t\t\tref={ blockTypesTabRef }\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t{ showInserterHelpPanel && (\n\t\t\t\t\t<div className=\"block-editor-inserter__tips\">\n\t\t\t\t\t\t<VisuallyHidden as=\"h2\">\n\t\t\t\t\t\t\t{ __( 'A tip for using the block editor' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t<Tips />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tonHover,\n\t\tshowMostUsedBlocks,\n\t\tshowInserterHelpPanel,\n\t] );\n\n\tconst patternsTab = useMemo( () => {\n\t\treturn (\n\t\t\t<BlockPatternsTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\tonSelectCategory={ onClickPatternCategory }\n\t\t\t\tselectedCategory={ selectedPatternCategory }\n\t\t\t>\n\t\t\t\t{ showPatternPanel && (\n\t\t\t\t\t<PatternCategoryPreviews\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsertPattern }\n\t\t\t\t\t\tcategory={ selectedPatternCategory }\n\t\t\t\t\t\tpatternFilter={ patternFilter }\n\t\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockPatternsTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsertPattern,\n\t\tonClickPatternCategory,\n\t\tpatternFilter,\n\t\tselectedPatternCategory,\n\t\tshowPatternPanel,\n\t] );\n\n\tconst mediaTab = useMemo( () => {\n\t\treturn (\n\t\t\t<MediaTab\n\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\tselectedCategory={ selectedMediaCategory }\n\t\t\t\tonSelectCategory={ setSelectedMediaCategory }\n\t\t\t\tonInsert={ onInsert }\n\t\t\t>\n\t\t\t\t{ showMediaPanel && (\n\t\t\t\t\t<MediaCategoryPanel\n\t\t\t\t\t\trootClientId={ destinationRootClientId }\n\t\t\t\t\t\tonInsert={ onInsert }\n\t\t\t\t\t\tcategory={ selectedMediaCategory }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</MediaTab>\n\t\t);\n\t}, [\n\t\tdestinationRootClientId,\n\t\tonInsert,\n\t\tselectedMediaCategory,\n\t\tsetSelectedMediaCategory,\n\t\tshowMediaPanel,\n\t] );\n\n\tconst handleSetSelectedTab = ( value ) => {\n\t\t// If no longer on patterns tab remove the category setting.\n\t\tif ( value !== 'patterns' ) {\n\t\t\tsetSelectedPatternCategory( null );\n\t\t}\n\t\tsetSelectedTab( value );\n\t};\n\n\t// Focus first active tab, if any\n\tconst tabsRef = useRef();\n\tuseLayoutEffect( () => {\n\t\tif ( tabsRef.current ) {\n\t\t\twindow.requestAnimationFrame( () => {\n\t\t\t\ttabsRef.current\n\t\t\t\t\t.querySelector( '[role=\"tab\"][aria-selected=\"true\"]' )\n\t\t\t\t\t?.focus();\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx( 'block-editor-inserter__menu', {\n\t\t\t\t'show-panel': showPatternPanel || showMediaPanel,\n\t\t\t\t'is-zoom-out': isZoomOutMode,\n\t\t\t} ) }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t<div className=\"block-editor-inserter__main-area\">\n\t\t\t\t<TabbedSidebar\n\t\t\t\t\tref={ tabsRef }\n\t\t\t\t\tonSelect={ handleSetSelectedTab }\n\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\tselectedTab={ selectedTab }\n\t\t\t\t\tcloseButtonLabel={ __( 'Close Block Inserter' ) }\n\t\t\t\t\ttabs={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'blocks',\n\t\t\t\t\t\t\ttitle: __( 'Blocks' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'blocks' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tblocksTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'patterns',\n\t\t\t\t\t\t\ttitle: __( 'Patterns' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ selectedTab === 'patterns' &&\n\t\t\t\t\t\t\t\t\t\t! delayedFilterValue &&\n\t\t\t\t\t\t\t\t\t\tpatternsTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: 'media',\n\t\t\t\t\t\t\ttitle: __( 'Media' ),\n\t\t\t\t\t\t\tpanel: (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ inserterSearch }\n\t\t\t\t\t\t\t\t\t{ mediaTab }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ showInserterHelpPanel && hoveredItem && (\n\t\t\t\t<Popover\n\t\t\t\t\tclassName=\"block-editor-inserter__preview-container__popover\"\n\t\t\t\t\tplacement=\"right-start\"\n\t\t\t\t\toffset={ 16 }\n\t\t\t\t\tfocusOnMount={ false }\n\t\t\t\t\tanimate={ false }\n\t\t\t\t>\n\t\t\t\t\t<InserterPreviewPanel item={ hoveredItem } />\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport const PrivateInserterMenu = forwardRef( InserterMenu );\n\nfunction PublicInserterMenu( props, ref ) {\n\treturn (\n\t\t<PrivateInserterMenu\n\t\t\t{ ...props }\n\t\t\tonPatternCategorySelection={ NOOP }\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nexport default forwardRef( PublicInserterMenu );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","isRTL","__experimentalItemGroup","ItemGroup","__experimentalItem","Item","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalHeading","Heading","__experimentalView","View","Navigator","FlexBlock","Icon","chevronRight","chevronLeft","jsx","_jsx","jsxs","_jsxs","ScreenHeader","title","spacing","children","marginBottom","paddingX","paddingY","BackButton","style","minWidth","padding","icon","size","label","level","MobileTabNavigation","categories","initialPath","className","Screen","path","map","category","Button","name","as","isAction"],"sources":["@wordpress/block-editor/src/components/inserter/mobile-tab-navigation.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalHeading as Heading,\n\t__experimentalView as View,\n\tNavigator,\n\tFlexBlock,\n} from '@wordpress/components';\nimport { Icon, chevronRight, chevronLeft } from '@wordpress/icons';\n\nfunction ScreenHeader( { title } ) {\n\treturn (\n\t\t<VStack spacing={ 0 }>\n\t\t\t<View>\n\t\t\t\t<Spacer marginBottom={ 0 } paddingX={ 4 } paddingY={ 3 }>\n\t\t\t\t\t<HStack spacing={ 2 }>\n\t\t\t\t\t\t<Navigator.BackButton\n\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t// TODO: This style override is also used in ToolsPanelHeader.\n\t\t\t\t\t\t\t\t// It should be supported out-of-the-box by Button.\n\t\t\t\t\t\t\t\t{ minWidth: 24, padding: 0 }\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer>\n\t\t\t\t\t\t\t<Heading level={ 5 }>{ title }</Heading>\n\t\t\t\t\t\t</Spacer>\n\t\t\t\t\t</HStack>\n\t\t\t\t</Spacer>\n\t\t\t</View>\n\t\t</VStack>\n\t);\n}\n\nexport default function MobileTabNavigation( { categories, children } ) {\n\treturn (\n\t\t<Navigator\n\t\t\tinitialPath=\"/\"\n\t\t\tclassName=\"block-editor-inserter__mobile-tab-navigation\"\n\t\t>\n\t\t\t<Navigator.Screen path=\"/\">\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t\t<Navigator.Button\n\t\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\t\tpath={ `/category/${ category.name }` }\n\t\t\t\t\t\t\tas={ Item }\n\t\t\t\t\t\t\tisAction\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t\t<FlexBlock>{ category.label }</FlexBlock>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronLeft : chevronRight\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t</Navigator.Button>\n\t\t\t\t\t) ) }\n\t\t\t\t</ItemGroup>\n\t\t\t</Navigator.Screen>\n\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t<Navigator.Screen\n\t\t\t\t\tkey={ category.name }\n\t\t\t\t\tpath={ `/category/${ category.name }` }\n\t\t\t\t>\n\t\t\t\t\t<ScreenHeader title={ __( 'Back' ) } />\n\t\t\t\t\t{ children( category ) }\n\t\t\t\t</Navigator.Screen>\n\t\t\t) ) }\n\t\t</Navigator>\n\t);\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["__","isRTL","__experimentalItemGroup","ItemGroup","__experimentalItem","Item","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalHeading","Heading","__experimentalView","View","Navigator","FlexBlock","Icon","chevronRight","chevronLeft","jsx","_jsx","jsxs","_jsxs","ScreenHeader","title","spacing","children","marginBottom","paddingX","paddingY","BackButton","style","minWidth","padding","icon","size","label","level","MobileTabNavigation","categories","initialPath","className","Screen","path","map","category","Button","name","as","isAction"],"sources":["@wordpress/block-editor/src/components/inserter/mobile-tab-navigation.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalHeading as Heading,\n\t__experimentalView as View,\n\tNavigator,\n\tFlexBlock,\n} from '@wordpress/components';\nimport { Icon, chevronRight, chevronLeft } from '@wordpress/icons';\n\nfunction ScreenHeader( { title } ) {\n\treturn (\n\t\t<VStack spacing={ 0 }>\n\t\t\t<View>\n\t\t\t\t<Spacer marginBottom={ 0 } paddingX={ 4 } paddingY={ 3 }>\n\t\t\t\t\t<HStack spacing={ 2 }>\n\t\t\t\t\t\t<Navigator.BackButton\n\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t// TODO: This style override is also used in ToolsPanelHeader.\n\t\t\t\t\t\t\t\t// It should be supported out-of-the-box by Button.\n\t\t\t\t\t\t\t\t{ minWidth: 24, padding: 0 }\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ticon={ isRTL() ? chevronRight : chevronLeft }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer>\n\t\t\t\t\t\t\t<Heading level={ 5 }>{ title }</Heading>\n\t\t\t\t\t\t</Spacer>\n\t\t\t\t\t</HStack>\n\t\t\t\t</Spacer>\n\t\t\t</View>\n\t\t</VStack>\n\t);\n}\n\nexport default function MobileTabNavigation( { categories, children } ) {\n\treturn (\n\t\t<Navigator\n\t\t\tinitialPath=\"/\"\n\t\t\tclassName=\"block-editor-inserter__mobile-tab-navigation\"\n\t\t>\n\t\t\t<Navigator.Screen path=\"/\">\n\t\t\t\t<ItemGroup>\n\t\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t\t<Navigator.Button\n\t\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\t\tpath={ `/category/${ category.name }` }\n\t\t\t\t\t\t\tas={ Item }\n\t\t\t\t\t\t\tisAction\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t\t<FlexBlock>{ category.label }</FlexBlock>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronLeft : chevronRight\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t</Navigator.Button>\n\t\t\t\t\t) ) }\n\t\t\t\t</ItemGroup>\n\t\t\t</Navigator.Screen>\n\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t<Navigator.Screen\n\t\t\t\t\tkey={ category.name }\n\t\t\t\t\tpath={ `/category/${ category.name }` }\n\t\t\t\t>\n\t\t\t\t\t<ScreenHeader title={ __( 'Back' ) } />\n\t\t\t\t\t{ children( category ) }\n\t\t\t\t</Navigator.Screen>\n\t\t\t) ) }\n\t\t</Navigator>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,17 +2,13 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { __ } from '@wordpress/i18n';
|
|
5
|
-
import {
|
|
6
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
6
|
function InserterNoResults() {
|
|
8
|
-
return /*#__PURE__*/
|
|
7
|
+
return /*#__PURE__*/_jsx("div", {
|
|
9
8
|
className: "block-editor-inserter__no-results",
|
|
10
|
-
children:
|
|
11
|
-
className: "block-editor-inserter__no-results-icon",
|
|
12
|
-
icon: blockDefault
|
|
13
|
-
}), /*#__PURE__*/_jsx("p", {
|
|
9
|
+
children: /*#__PURE__*/_jsx("p", {
|
|
14
10
|
children: __('No results found.')
|
|
15
|
-
})
|
|
11
|
+
})
|
|
16
12
|
});
|
|
17
13
|
}
|
|
18
14
|
export default InserterNoResults;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","
|
|
1
|
+
{"version":3,"names":["__","jsx","_jsx","InserterNoResults","className","children"],"sources":["@wordpress/block-editor/src/components/inserter/no-results.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nfunction InserterNoResults() {\n\treturn (\n\t\t<div className=\"block-editor-inserter__no-results\">\n\t\t\t<p>{ __( 'No results found.' ) }</p>\n\t\t</div>\n\t);\n}\n\nexport default InserterNoResults;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAErC,SAASC,iBAAiBA,CAAA,EAAG;EAC5B,oBACCD,IAAA;IAAKE,SAAS,EAAC,mCAAmC;IAAAC,QAAA,eACjDH,IAAA;MAAAG,QAAA,EAAKL,EAAE,CAAE,mBAAoB;IAAC,CAAK;EAAC,CAChC,CAAC;AAER;AAEA,eAAeG,iBAAiB","ignoreList":[]}
|
|
@@ -21,6 +21,7 @@ import { store as blockEditorStore } from '../../store';
|
|
|
21
21
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
22
22
|
const SEARCH_THRESHOLD = 6;
|
|
23
23
|
const SHOWN_BLOCK_TYPES = 6;
|
|
24
|
+
const SHOWN_BLOCK_PATTERNS = 2;
|
|
24
25
|
export default function QuickInserter({
|
|
25
26
|
onSelect,
|
|
26
27
|
rootClientId,
|
|
@@ -94,7 +95,7 @@ export default function QuickInserter({
|
|
|
94
95
|
rootClientId: rootClientId,
|
|
95
96
|
clientId: clientId,
|
|
96
97
|
isAppender: isAppender,
|
|
97
|
-
maxBlockPatterns: 0,
|
|
98
|
+
maxBlockPatterns: !!filterValue ? SHOWN_BLOCK_PATTERNS : 0,
|
|
98
99
|
maxBlockTypes: SHOWN_BLOCK_TYPES,
|
|
99
100
|
isDraggable: false,
|
|
100
101
|
selectBlockOnInsert: selectBlockOnInsert,
|