@wordpress/block-editor 12.18.1 → 12.19.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 +1 -2
- package/build/autocompleters/block.js.map +1 -1
- package/build/autocompleters/link.js +1 -2
- package/build/autocompleters/link.js.map +1 -1
- package/build/components/alignment-control/ui.js +1 -2
- package/build/components/alignment-control/ui.js.map +1 -1
- package/build/components/autocomplete/index.js +1 -2
- package/build/components/autocomplete/index.js.map +1 -1
- package/build/components/block-alignment-control/constants.js +2 -4
- package/build/components/block-alignment-control/constants.js.map +1 -1
- package/build/components/block-alignment-control/ui.js +1 -2
- package/build/components/block-alignment-control/ui.js.map +1 -1
- package/build/components/block-alignment-control/ui.native.js +1 -2
- package/build/components/block-alignment-control/ui.native.js.map +1 -1
- package/build/components/block-alignment-matrix-control/index.js +1 -2
- package/build/components/block-alignment-matrix-control/index.js.map +1 -1
- package/build/components/block-breadcrumb/index.js +1 -2
- package/build/components/block-breadcrumb/index.js.map +1 -1
- package/build/components/block-canvas/index.js +1 -2
- package/build/components/block-canvas/index.js.map +1 -1
- package/build/components/block-caption/index.native.js +1 -2
- package/build/components/block-caption/index.native.js.map +1 -1
- package/build/components/block-card/index.js +1 -2
- package/build/components/block-card/index.js.map +1 -1
- package/build/components/block-compare/index.js +1 -2
- package/build/components/block-compare/index.js.map +1 -1
- package/build/components/block-context/index.js +1 -2
- package/build/components/block-context/index.js.map +1 -1
- package/build/components/block-controls/groups.js +1 -2
- package/build/components/block-controls/groups.js.map +1 -1
- package/build/components/block-controls/index.js +1 -2
- package/build/components/block-controls/index.js.map +1 -1
- package/build/components/block-draggable/dropping-insertion-point.native.js +2 -2
- package/build/components/block-draggable/dropping-insertion-point.native.js.map +1 -1
- package/build/components/block-draggable/index.js +1 -2
- package/build/components/block-draggable/index.js.map +1 -1
- package/build/components/block-draggable/index.native.js +3 -4
- package/build/components/block-draggable/index.native.js.map +1 -1
- package/build/components/block-edit/context.js +4 -8
- package/build/components/block-edit/context.js.map +1 -1
- package/build/components/block-edit/edit.js +1 -2
- package/build/components/block-edit/edit.js.map +1 -1
- package/build/components/block-edit/edit.native.js +1 -2
- package/build/components/block-edit/edit.native.js.map +1 -1
- package/build/components/block-full-height-alignment-control/index.js +1 -2
- package/build/components/block-full-height-alignment-control/index.js.map +1 -1
- package/build/components/block-icon/index.js +1 -2
- package/build/components/block-icon/index.js.map +1 -1
- package/build/components/block-icon/index.native.js +1 -2
- package/build/components/block-icon/index.native.js.map +1 -1
- package/build/components/block-info-slot-fill/index.js +1 -2
- package/build/components/block-info-slot-fill/index.js.map +1 -1
- package/build/components/block-inspector/index.js +11 -9
- package/build/components/block-inspector/index.js.map +1 -1
- package/build/components/block-list/block-crash-boundary.js +1 -2
- package/build/components/block-list/block-crash-boundary.js.map +1 -1
- package/build/components/block-list/block-html.js +1 -2
- package/build/components/block-list/block-html.js.map +1 -1
- package/build/components/block-list/block-list-context.native.js +1 -2
- package/build/components/block-list/block-list-context.native.js.map +1 -1
- package/build/components/block-list/block-list-item-cell.native.js +1 -2
- package/build/components/block-list/block-list-item-cell.native.js.map +1 -1
- package/build/components/block-list/block-list-item.native.js +1 -2
- package/build/components/block-list/block-list-item.native.js.map +1 -1
- package/build/components/block-list/block-outline.native.js +1 -2
- package/build/components/block-list/block-outline.native.js.map +1 -1
- package/build/components/block-list/block-selection-button.native.js +1 -2
- package/build/components/block-list/block-selection-button.native.js.map +1 -1
- package/build/components/block-list/block.js +32 -21
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/block.native.js +7 -6
- package/build/components/block-list/block.native.js.map +1 -1
- package/build/components/block-list/grid-item.native.js +1 -2
- package/build/components/block-list/grid-item.native.js.map +1 -1
- package/build/components/block-list/index.js +19 -9
- package/build/components/block-list/index.js.map +1 -1
- package/build/components/block-list/insertion-point.native.js +1 -2
- package/build/components/block-list/insertion-point.native.js.map +1 -1
- package/build/components/block-list/layout.js +2 -4
- package/build/components/block-list/layout.js.map +1 -1
- package/build/components/block-list/private-block-context.js +1 -2
- package/build/components/block-list/private-block-context.js.map +1 -1
- package/build/components/block-list/subdirectory-icon.js +1 -2
- package/build/components/block-list/subdirectory-icon.js.map +1 -1
- package/build/components/block-list/use-block-props/index.js +8 -1
- package/build/components/block-list/use-block-props/index.js.map +1 -1
- package/build/components/block-list/use-scroll-upon-insertion.native.js +1 -2
- package/build/components/block-list/use-scroll-upon-insertion.native.js.map +1 -1
- package/build/components/block-list-appender/index.js +5 -52
- package/build/components/block-list-appender/index.js.map +1 -1
- package/build/components/block-media-update-progress/index.native.js +11 -22
- package/build/components/block-media-update-progress/index.native.js.map +1 -1
- package/build/components/block-mover/button.js +2 -4
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-mover/index.js +1 -2
- package/build/components/block-mover/index.js.map +1 -1
- package/build/components/block-mover/index.native.js +3 -6
- package/build/components/block-mover/index.native.js.map +1 -1
- package/build/components/block-mover/mover-description.native.js +0 -2
- package/build/components/block-mover/mover-description.native.js.map +1 -1
- package/build/components/block-navigation/dropdown.js +1 -2
- package/build/components/block-navigation/dropdown.js.map +1 -1
- package/build/components/block-pattern-setup/constants.js +1 -2
- package/build/components/block-pattern-setup/constants.js.map +1 -1
- package/build/components/block-pattern-setup/index.js +1 -2
- package/build/components/block-pattern-setup/index.js.map +1 -1
- package/build/components/block-pattern-setup/setup-toolbar.js +1 -2
- package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build/components/block-pattern-setup/use-patterns-setup.js +1 -2
- package/build/components/block-pattern-setup/use-patterns-setup.js.map +1 -1
- package/build/components/block-patterns-list/index.js +1 -2
- package/build/components/block-patterns-list/index.js.map +1 -1
- package/build/components/block-popover/drop-zone.js +1 -2
- package/build/components/block-popover/drop-zone.js.map +1 -1
- package/build/components/block-popover/inbetween.js +2 -4
- package/build/components/block-popover/inbetween.js.map +1 -1
- package/build/components/block-popover/index.js +1 -2
- package/build/components/block-popover/index.js.map +1 -1
- package/build/components/block-popover/use-popover-scroll.js +1 -2
- package/build/components/block-popover/use-popover-scroll.js.map +1 -1
- package/build/components/block-preview/auto.js +2 -1
- package/build/components/block-preview/auto.js.map +1 -1
- package/build/components/block-preview/index.js +1 -2
- package/build/components/block-preview/index.js.map +1 -1
- package/build/components/block-removal-warning-modal/index.js +4 -2
- package/build/components/block-removal-warning-modal/index.js.map +1 -1
- package/build/components/block-settings/button.native.js +1 -2
- package/build/components/block-settings/button.native.js.map +1 -1
- package/build/components/block-settings/container.native.js +1 -2
- package/build/components/block-settings/container.native.js.map +1 -1
- package/build/components/block-settings/index.native.js +2 -2
- package/build/components/block-settings/index.native.js.map +1 -1
- package/build/components/block-settings-menu/block-html-convert-button.js +1 -2
- package/build/components/block-settings-menu/block-html-convert-button.js.map +1 -1
- package/build/components/block-settings-menu/block-mode-toggle.js +1 -2
- package/build/components/block-settings-menu/block-mode-toggle.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-dropdown.js +1 -2
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu/block-settings-menu-first-item.js +1 -2
- package/build/components/block-settings-menu/block-settings-menu-first-item.js.map +1 -1
- package/build/components/block-settings-menu/index.js +1 -2
- package/build/components/block-settings-menu/index.js.map +1 -1
- package/build/components/block-settings-menu-controls/index.js +1 -2
- package/build/components/block-settings-menu-controls/index.js.map +1 -1
- package/build/components/block-styles/index.js +1 -2
- package/build/components/block-styles/index.js.map +1 -1
- package/build/components/block-styles/index.native.js +1 -2
- package/build/components/block-styles/index.native.js.map +1 -1
- package/build/components/block-styles/preview.native.js +1 -2
- package/build/components/block-styles/preview.native.js.map +1 -1
- package/build/components/block-switcher/block-transformations-menu.js +1 -2
- package/build/components/block-switcher/block-transformations-menu.js.map +1 -1
- package/build/components/block-switcher/block-transformations-menu.native.js +1 -2
- package/build/components/block-switcher/block-transformations-menu.native.js.map +1 -1
- package/build/components/block-switcher/block-variation-transformations.js +1 -2
- package/build/components/block-switcher/block-variation-transformations.js.map +1 -1
- package/build/components/block-switcher/index.js +13 -11
- package/build/components/block-switcher/index.js.map +1 -1
- package/build/components/block-switcher/pattern-transformations-menu.js +1 -2
- package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
- package/build/components/block-switcher/use-transformed-patterns.js +1 -2
- package/build/components/block-switcher/use-transformed-patterns.js.map +1 -1
- package/build/components/block-title/use-block-display-title.js +21 -28
- package/build/components/block-title/use-block-display-title.js.map +1 -1
- package/build/components/block-toolbar/block-name-context.js +1 -2
- package/build/components/block-toolbar/block-name-context.js.map +1 -1
- package/build/components/block-toolbar/block-toolbar-last-item.js +1 -2
- package/build/components/block-toolbar/block-toolbar-last-item.js.map +1 -1
- package/build/components/block-toolbar/block-toolbar-menu.native.js +1 -2
- package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +20 -18
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/block-tools/index.js +4 -12
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-tools/insertion-point.js +1 -2
- package/build/components/block-tools/insertion-point.js.map +1 -1
- package/build/components/block-tools/zoom-out-mode-inserters.js +1 -2
- package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build/components/block-types-list/index.js +1 -2
- package/build/components/block-types-list/index.js.map +1 -1
- package/build/components/block-variation-picker/index.js +1 -2
- package/build/components/block-variation-picker/index.js.map +1 -1
- package/build/components/block-variation-picker/index.native.js +1 -2
- package/build/components/block-variation-picker/index.native.js.map +1 -1
- package/build/components/block-variation-transforms/index.js +1 -2
- package/build/components/block-variation-transforms/index.js.map +1 -1
- package/build/components/block-vertical-alignment-control/icons.js +5 -10
- package/build/components/block-vertical-alignment-control/icons.js.map +1 -1
- package/build/components/block-vertical-alignment-control/ui.js +1 -2
- package/build/components/block-vertical-alignment-control/ui.js.map +1 -1
- package/build/components/button-block-appender/index.js +2 -4
- package/build/components/button-block-appender/index.js.map +1 -1
- package/build/components/button-block-appender/index.native.js +1 -2
- package/build/components/button-block-appender/index.native.js.map +1 -1
- package/build/components/caption/index.native.js +1 -2
- package/build/components/caption/index.native.js.map +1 -1
- package/build/components/color-palette/index.js +1 -2
- package/build/components/color-palette/index.js.map +1 -1
- package/build/components/color-palette/with-color-context.js +1 -2
- package/build/components/color-palette/with-color-context.js.map +1 -1
- package/build/components/color-style-selector/index.js +1 -2
- package/build/components/color-style-selector/index.js.map +1 -1
- package/build/components/colors/index.js +2 -2
- package/build/components/colors/index.js.map +1 -1
- package/build/components/colors-gradients/control.js +1 -3
- package/build/components/colors-gradients/control.js.map +1 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.js +1 -2
- package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build/components/contrast-checker/index.js +1 -2
- package/build/components/contrast-checker/index.js.map +1 -1
- package/build/components/contrast-checker/index.native.js +1 -2
- package/build/components/contrast-checker/index.native.js.map +1 -1
- package/build/components/convert-to-group-buttons/toolbar.js +1 -2
- package/build/components/convert-to-group-buttons/toolbar.js.map +1 -1
- package/build/components/default-block-appender/index.js +31 -40
- package/build/components/default-block-appender/index.js.map +1 -1
- package/build/components/default-block-appender/index.native.js +1 -2
- package/build/components/default-block-appender/index.native.js.map +1 -1
- package/build/components/dimensions-tool/aspect-ratio-tool.js +2 -2
- package/build/components/dimensions-tool/aspect-ratio-tool.js.map +1 -1
- package/build/components/dimensions-tool/index.js +1 -2
- package/build/components/dimensions-tool/index.js.map +1 -1
- package/build/components/duotone-control/index.js +1 -2
- package/build/components/duotone-control/index.js.map +1 -1
- package/build/components/editable-text/index.js +1 -2
- package/build/components/editable-text/index.js.map +1 -1
- package/build/components/floating-toolbar/index.native.js +1 -2
- package/build/components/floating-toolbar/index.native.js.map +1 -1
- package/build/components/floating-toolbar/nav-up-icon.js +1 -2
- package/build/components/floating-toolbar/nav-up-icon.js.map +1 -1
- package/build/components/font-sizes/font-size-picker.js +1 -2
- package/build/components/font-sizes/font-size-picker.js.map +1 -1
- package/build/components/global-styles/border-panel.js +56 -8
- package/build/components/global-styles/border-panel.js.map +1 -1
- package/build/components/global-styles/color-panel.native.js +1 -2
- package/build/components/global-styles/color-panel.native.js.map +1 -1
- package/build/components/global-styles/context.js +2 -4
- package/build/components/global-styles/context.js.map +1 -1
- package/build/components/global-styles/get-global-styles-changes.js +2 -4
- package/build/components/global-styles/get-global-styles-changes.js.map +1 -1
- package/build/components/global-styles/hooks.js +2 -3
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/index.js +2 -15
- package/build/components/global-styles/index.js.map +1 -1
- package/build/components/global-styles/shadow-panel-components.js +133 -0
- package/build/components/global-styles/shadow-panel-components.js.map +1 -0
- package/build/components/global-styles/typography-panel.js +18 -36
- package/build/components/global-styles/typography-panel.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +1 -1
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/global-styles/utils.js +38 -14
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/iframe/index.js +1 -2
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/image-editor/constants.js +3 -6
- package/build/components/image-editor/constants.js.map +1 -1
- package/build/components/image-link-destinations/index.native.js +1 -2
- package/build/components/image-link-destinations/index.native.js.map +1 -1
- package/build/components/index.js +2 -2
- package/build/components/index.js.map +1 -1
- package/build/components/index.native.js +2 -2
- package/build/components/index.native.js.map +1 -1
- package/build/components/inner-blocks/button-block-appender.js +1 -2
- package/build/components/inner-blocks/button-block-appender.js.map +1 -1
- package/build/components/inner-blocks/constants.native.js +1 -2
- package/build/components/inner-blocks/constants.native.js.map +1 -1
- package/build/components/inner-blocks/default-block-appender.js +1 -2
- package/build/components/inner-blocks/default-block-appender.js.map +1 -1
- package/build/components/inner-blocks/index.js +33 -30
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inner-blocks/index.native.js +2 -6
- package/build/components/inner-blocks/index.native.js.map +1 -1
- package/build/components/inner-blocks/use-inner-block-template-sync.js +2 -3
- package/build/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
- package/build/components/inner-blocks/warning-max-depth-exceeded.native.js +1 -2
- package/build/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
- package/build/components/inner-blocks/with-client-id.js +1 -2
- package/build/components/inner-blocks/with-client-id.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/index.js +1 -2
- package/build/components/inserter/block-patterns-explorer/index.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js +1 -2
- package/build/components/inserter/block-patterns-explorer/pattern-explorer-sidebar.js.map +1 -1
- package/build/components/inserter/block-patterns-explorer/pattern-list.js +1 -2
- package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/index.js +1 -2
- package/build/components/inserter/block-patterns-tab/index.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/patterns-filter.js +4 -4
- package/build/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/utils.js +5 -9
- package/build/components/inserter/block-patterns-tab/utils.js.map +1 -1
- package/build/components/inserter/block-types-tab.js +1 -2
- package/build/components/inserter/block-types-tab.js.map +1 -1
- package/build/components/inserter/block-types-tab.native.js +1 -2
- package/build/components/inserter/block-types-tab.native.js.map +1 -1
- package/build/components/inserter/hooks/use-block-type-impressions.native.js +1 -2
- package/build/components/inserter/hooks/use-block-type-impressions.native.js.map +1 -1
- package/build/components/inserter/hooks/use-block-types-state.js +1 -2
- package/build/components/inserter/hooks/use-block-types-state.js.map +1 -1
- package/build/components/inserter/hooks/use-insertion-point.js +1 -2
- package/build/components/inserter/hooks/use-insertion-point.js.map +1 -1
- package/build/components/inserter/hooks/use-patterns-state.js +1 -2
- package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
- package/build/components/inserter/index.js +2 -4
- package/build/components/inserter/index.js.map +1 -1
- package/build/components/inserter/index.native.js +1 -2
- package/build/components/inserter/index.native.js.map +1 -1
- package/build/components/inserter/library.js +1 -2
- package/build/components/inserter/library.js.map +1 -1
- package/build/components/inserter/media-tab/media-list.js +1 -2
- package/build/components/inserter/media-tab/media-list.js.map +1 -1
- package/build/components/inserter/media-tab/media-tab.js +1 -2
- package/build/components/inserter/media-tab/media-tab.js.map +1 -1
- package/build/components/inserter/menu.js +1 -2
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/menu.native.js +1 -2
- package/build/components/inserter/menu.native.js.map +1 -1
- package/build/components/inserter/no-results.js +1 -2
- package/build/components/inserter/no-results.js.map +1 -1
- package/build/components/inserter/no-results.native.js +1 -2
- package/build/components/inserter/no-results.native.js.map +1 -1
- package/build/components/inserter/panel.js +1 -2
- package/build/components/inserter/panel.js.map +1 -1
- package/build/components/inserter/preview-panel.js +1 -2
- package/build/components/inserter/preview-panel.js.map +1 -1
- package/build/components/inserter/quick-inserter.js +3 -2
- package/build/components/inserter/quick-inserter.js.map +1 -1
- package/build/components/inserter/reusable-blocks-tab.native.js +1 -2
- package/build/components/inserter/reusable-blocks-tab.native.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/search-results.native.js +1 -2
- package/build/components/inserter/search-results.native.js.map +1 -1
- package/build/components/inserter/tabs.js +1 -2
- package/build/components/inserter/tabs.js.map +1 -1
- package/build/components/inserter/tabs.native.js +1 -2
- package/build/components/inserter/tabs.native.js.map +1 -1
- package/build/components/inserter/tips.js +1 -2
- package/build/components/inserter/tips.js.map +1 -1
- package/build/components/inserter-button/index.native.js +1 -2
- package/build/components/inserter-button/index.native.js.map +1 -1
- package/build/components/inserter-button/sparkles.js +1 -2
- package/build/components/inserter-button/sparkles.js.map +1 -1
- package/build/components/inserter-draggable-blocks/index.js +11 -2
- package/build/components/inserter-draggable-blocks/index.js.map +1 -1
- package/build/components/inserter-list-item/index.js +1 -2
- package/build/components/inserter-list-item/index.js.map +1 -1
- package/build/components/inserter-listbox/context.js +1 -2
- package/build/components/inserter-listbox/context.js.map +1 -1
- package/build/components/inserter-listbox/group.js +1 -2
- package/build/components/inserter-listbox/group.js.map +1 -1
- package/build/components/inserter-listbox/index.js +1 -2
- package/build/components/inserter-listbox/index.js.map +1 -1
- package/build/components/inserter-listbox/item.js +1 -2
- package/build/components/inserter-listbox/item.js.map +1 -1
- package/build/components/inserter-listbox/row.js +1 -2
- package/build/components/inserter-listbox/row.js.map +1 -1
- package/build/components/inserter-menu-extension/index.js +1 -2
- package/build/components/inserter-menu-extension/index.js.map +1 -1
- package/build/components/inspector-controls/groups.js +1 -2
- package/build/components/inspector-controls/groups.js.map +1 -1
- package/build/components/inspector-controls/index.js +1 -2
- package/build/components/inspector-controls/index.js.map +1 -1
- package/build/components/inspector-controls-tabs/advanced-controls-panel.js +3 -4
- package/build/components/inspector-controls-tabs/advanced-controls-panel.js.map +1 -1
- package/build/components/inspector-controls-tabs/position-controls-panel.js +1 -2
- package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
- package/build/components/inspector-controls-tabs/settings-tab.js +1 -2
- package/build/components/inspector-controls-tabs/settings-tab.js.map +1 -1
- package/build/components/inspector-controls-tabs/styles-tab.js +6 -6
- package/build/components/inspector-controls-tabs/styles-tab.js.map +1 -1
- package/build/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js +1 -2
- package/build/components/inspector-controls-tabs/use-is-list-view-tab-disabled.js.map +1 -1
- package/build/components/inspector-controls-tabs/utils.js +3 -6
- package/build/components/inspector-controls-tabs/utils.js.map +1 -1
- package/build/components/justify-content-control/ui.js +1 -2
- package/build/components/justify-content-control/ui.js.map +1 -1
- package/build/components/keyboard-shortcuts/index.js +1 -2
- package/build/components/keyboard-shortcuts/index.js.map +1 -1
- package/build/components/line-height-control/index.js +1 -2
- package/build/components/line-height-control/index.js.map +1 -1
- package/build/components/line-height-control/utils.js +4 -8
- package/build/components/line-height-control/utils.js.map +1 -1
- package/build/components/link-control/constants.js +7 -14
- package/build/components/link-control/constants.js.map +1 -1
- package/build/components/link-control/index.js +2 -16
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/link-preview.js +13 -15
- package/build/components/link-control/link-preview.js.map +1 -1
- package/build/components/link-control/search-create-button.js +1 -2
- package/build/components/link-control/search-create-button.js.map +1 -1
- package/build/components/link-control/search-input.js +1 -2
- package/build/components/link-control/search-input.js.map +1 -1
- package/build/components/link-control/search-item.js +1 -2
- package/build/components/link-control/search-item.js.map +1 -1
- package/build/components/link-control/settings-drawer.js +1 -2
- package/build/components/link-control/settings-drawer.js.map +1 -1
- package/build/components/link-control/settings.js +1 -2
- package/build/components/link-control/settings.js.map +1 -1
- package/build/components/link-control/use-create-page.js +0 -1
- package/build/components/link-control/use-create-page.js.map +1 -1
- package/build/components/link-control/use-rich-url-data.js +1 -2
- package/build/components/link-control/use-rich-url-data.js.map +1 -1
- package/build/components/link-control/viewer-slot.js +1 -2
- package/build/components/link-control/viewer-slot.js.map +1 -1
- package/build/components/list-view/appender.js +1 -2
- package/build/components/list-view/appender.js.map +1 -1
- package/build/components/list-view/block-contents.js +1 -2
- package/build/components/list-view/block-contents.js.map +1 -1
- package/build/components/list-view/block-select-button.js +1 -2
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/block.js +33 -28
- package/build/components/list-view/block.js.map +1 -1
- package/build/components/list-view/branch.js +1 -2
- package/build/components/list-view/branch.js.map +1 -1
- package/build/components/list-view/context.js +1 -2
- package/build/components/list-view/context.js.map +1 -1
- package/build/components/list-view/index.js +20 -17
- package/build/components/list-view/index.js.map +1 -1
- package/build/components/list-view/leaf.js +1 -2
- package/build/components/list-view/leaf.js.map +1 -1
- package/build/components/list-view/use-clipboard-handler.js +159 -0
- package/build/components/list-view/use-clipboard-handler.js.map +1 -0
- package/build/components/list-view/use-list-view-drop-zone.js +1 -2
- package/build/components/list-view/use-list-view-drop-zone.js.map +1 -1
- package/build/components/list-view/utils.js +4 -4
- package/build/components/list-view/utils.js.map +1 -1
- package/build/components/media-placeholder/index.js +1 -2
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-placeholder/index.native.js +1 -2
- package/build/components/media-placeholder/index.native.js.map +1 -1
- package/build/components/media-replace-flow/index.js +1 -2
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/media-replace-flow/index.native.js +1 -2
- package/build/components/media-replace-flow/index.native.js.map +1 -1
- package/build/components/media-upload/check.js +1 -2
- package/build/components/media-upload/check.js.map +1 -1
- package/build/components/media-upload/constants.native.js +8 -16
- package/build/components/media-upload/constants.native.js.map +1 -1
- package/build/components/media-upload/index.js +1 -2
- package/build/components/media-upload/index.js.map +1 -1
- package/build/components/media-upload/index.native.js +1 -2
- package/build/components/media-upload/index.native.js.map +1 -1
- package/build/components/media-upload-progress/constants.js +6 -12
- package/build/components/media-upload-progress/constants.js.map +1 -1
- package/build/components/media-upload-progress/index.native.js +1 -2
- package/build/components/media-upload-progress/index.native.js.map +1 -1
- package/build/components/multi-selection-inspector/index.js +1 -2
- package/build/components/multi-selection-inspector/index.js.map +1 -1
- package/build/components/navigable-toolbar/index.js +5 -2
- package/build/components/navigable-toolbar/index.js.map +1 -1
- package/build/components/observe-typing/index.js +1 -2
- package/build/components/observe-typing/index.js.map +1 -1
- package/build/components/panel-color-settings/index.js +1 -2
- package/build/components/panel-color-settings/index.js.map +1 -1
- package/build/components/plain-text/index.js +1 -2
- package/build/components/plain-text/index.js.map +1 -1
- package/build/components/provider/block-refs-provider.js +1 -2
- package/build/components/provider/block-refs-provider.js.map +1 -1
- package/build/components/provider/index.js +3 -5
- package/build/components/provider/index.js.map +1 -1
- package/build/components/provider/index.native.js +2 -4
- package/build/components/provider/index.native.js.map +1 -1
- package/build/components/provider/with-registry-provider.js +1 -2
- package/build/components/provider/with-registry-provider.js.map +1 -1
- package/build/components/publish-date-time-picker/index.js +1 -2
- package/build/components/publish-date-time-picker/index.js.map +1 -1
- package/build/components/responsive-block-control/index.js +3 -7
- package/build/components/responsive-block-control/index.js.map +1 -1
- package/build/components/rich-text/embed-handler-picker.native.js +1 -2
- package/build/components/rich-text/embed-handler-picker.native.js.map +1 -1
- package/build/components/rich-text/format-edit.js +1 -2
- package/build/components/rich-text/format-edit.js.map +1 -1
- package/build/components/rich-text/format-toolbar/index.js +1 -2
- package/build/components/rich-text/format-toolbar/index.js.map +1 -1
- package/build/components/rich-text/format-toolbar/index.native.js +1 -2
- package/build/components/rich-text/format-toolbar/index.native.js.map +1 -1
- package/build/components/rich-text/format-toolbar-container.js +1 -2
- package/build/components/rich-text/format-toolbar-container.js.map +1 -1
- package/build/components/rich-text/format-toolbar-container.native.js +1 -2
- package/build/components/rich-text/format-toolbar-container.native.js.map +1 -1
- package/build/components/rich-text/index.js +7 -8
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/index.native.js +1 -2
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/multiline.js +1 -2
- package/build/components/rich-text/multiline.js.map +1 -1
- package/build/components/rich-text/native/index.native.js +1 -6
- package/build/components/rich-text/native/index.native.js.map +1 -1
- package/build/components/rich-text/native/toolbar-button-with-options.native.js +1 -2
- package/build/components/rich-text/native/toolbar-button-with-options.native.js.map +1 -1
- package/build/components/skip-to-selected-block/index.js +1 -2
- package/build/components/skip-to-selected-block/index.js.map +1 -1
- package/build/components/spacing-sizes-control/index.js +3 -1
- package/build/components/spacing-sizes-control/index.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/utils.js +5 -10
- package/build/components/spacing-sizes-control/utils.js.map +1 -1
- package/build/components/tool-selector/index.js +1 -2
- package/build/components/tool-selector/index.js.map +1 -1
- package/build/components/typewriter/index.js +1 -2
- package/build/components/typewriter/index.js.map +1 -1
- package/build/components/ungroup-button/index.native.js +1 -2
- package/build/components/ungroup-button/index.native.js.map +1 -1
- package/build/components/unsupported-block-details/index.native.js +1 -2
- package/build/components/unsupported-block-details/index.native.js.map +1 -1
- package/build/components/url-input/button.js +1 -2
- package/build/components/url-input/button.js.map +1 -1
- package/build/components/url-input/index.js +1 -2
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/url-popover/image-url-input-ui.js +66 -35
- package/build/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build/components/url-popover/index.js +8 -6
- package/build/components/url-popover/index.js.map +1 -1
- package/build/components/url-popover/link-editor.js +2 -1
- package/build/components/url-popover/link-editor.js.map +1 -1
- package/build/components/url-popover/link-viewer.js +2 -1
- package/build/components/url-popover/link-viewer.js.map +1 -1
- package/build/components/use-block-drop-zone/index.js +15 -5
- package/build/components/use-block-drop-zone/index.js.map +1 -1
- package/build/components/use-flash-editable-blocks/index.js +60 -0
- package/build/components/use-flash-editable-blocks/index.js.map +1 -0
- package/build/components/use-moving-animation/index.js +1 -2
- package/build/components/use-moving-animation/index.js.map +1 -1
- package/build/components/use-on-block-drop/index.js +4 -4
- package/build/components/use-on-block-drop/index.js.map +1 -1
- package/build/components/use-settings/index.js +3 -162
- package/build/components/use-settings/index.js.map +1 -1
- package/build/components/video-player/gridicon-play.native.js +1 -2
- package/build/components/video-player/gridicon-play.native.js.map +1 -1
- package/build/components/video-player/index.native.js +2 -4
- package/build/components/video-player/index.native.js.map +1 -1
- package/build/components/warning/index.js +1 -2
- package/build/components/warning/index.js.map +1 -1
- package/build/components/warning/index.native.js +1 -2
- package/build/components/warning/index.native.js.map +1 -1
- package/build/components/writing-flow/index.js +1 -2
- package/build/components/writing-flow/index.js.map +1 -1
- package/build/components/writing-flow/use-clipboard-handler.js +3 -48
- package/build/components/writing-flow/use-clipboard-handler.js.map +1 -1
- package/build/components/writing-flow/use-drag-selection.js +13 -2
- package/build/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build/components/writing-flow/utils.js +86 -0
- package/build/components/writing-flow/utils.js.map +1 -0
- package/build/hooks/align.js +1 -2
- package/build/hooks/align.js.map +1 -1
- package/build/hooks/align.native.js +2 -2
- package/build/hooks/align.native.js.map +1 -1
- package/build/hooks/anchor.js +1 -2
- package/build/hooks/anchor.js.map +1 -1
- package/build/hooks/aria-label.js +1 -2
- package/build/hooks/aria-label.js.map +1 -1
- package/build/hooks/background.js +52 -14
- package/build/hooks/background.js.map +1 -1
- package/build/hooks/block-hooks.js +1 -2
- package/build/hooks/block-hooks.js.map +1 -1
- package/build/hooks/block-renaming.js +1 -2
- package/build/hooks/block-renaming.js.map +1 -1
- package/build/hooks/border.js +42 -7
- package/build/hooks/border.js.map +1 -1
- package/build/hooks/color.js +4 -6
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/content-lock-ui.js +1 -2
- package/build/hooks/content-lock-ui.js.map +1 -1
- package/build/hooks/custom-class-name.js +1 -2
- package/build/hooks/custom-class-name.js.map +1 -1
- package/build/hooks/custom-class-name.native.js +1 -2
- package/build/hooks/custom-class-name.native.js.map +1 -1
- package/build/hooks/dimensions.js +5 -10
- package/build/hooks/dimensions.js.map +1 -1
- package/build/hooks/duotone.js +1 -3
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/font-family.js +2 -4
- package/build/hooks/font-family.js.map +1 -1
- package/build/hooks/font-size.js +25 -31
- package/build/hooks/font-size.js.map +1 -1
- package/build/hooks/index.js +2 -8
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/index.native.js +0 -6
- package/build/hooks/index.native.js.map +1 -1
- package/build/hooks/layout-child.js +1 -2
- package/build/hooks/layout-child.js.map +1 -1
- package/build/hooks/layout.js +2 -4
- package/build/hooks/layout.js.map +1 -1
- package/build/hooks/line-height.js +1 -2
- package/build/hooks/line-height.js.map +1 -1
- package/build/hooks/position.js +1 -2
- package/build/hooks/position.js.map +1 -1
- package/build/hooks/style.js +3 -8
- package/build/hooks/style.js.map +1 -1
- package/build/hooks/typography.js +4 -6
- package/build/hooks/typography.js.map +1 -1
- package/build/hooks/typography.native.js +3 -6
- package/build/hooks/typography.native.js.map +1 -1
- package/build/hooks/use-bindings-attributes.js +12 -11
- package/build/hooks/use-bindings-attributes.js.map +1 -1
- package/build/hooks/use-shadow-props.js +0 -15
- package/build/hooks/use-shadow-props.js.map +1 -1
- package/build/hooks/utils.js +3 -6
- package/build/hooks/utils.js.map +1 -1
- package/build/index.js +0 -7
- package/build/index.js.map +1 -1
- package/build/layouts/constrained.js +1 -2
- package/build/layouts/constrained.js.map +1 -1
- package/build/layouts/definitions.js +1 -2
- package/build/layouts/definitions.js.map +1 -1
- package/build/layouts/flex.js +1 -2
- package/build/layouts/flex.js.map +1 -1
- package/build/layouts/flow.js +1 -2
- package/build/layouts/flow.js.map +1 -1
- package/build/layouts/grid.js +1 -2
- package/build/layouts/grid.js.map +1 -1
- package/build/private-apis.js +8 -5
- package/build/private-apis.js.map +1 -1
- package/build/private-apis.native.js +3 -4
- package/build/private-apis.native.js.map +1 -1
- package/build/store/actions.js +2 -4
- package/build/store/actions.js.map +1 -1
- package/build/store/constants.js +1 -2
- package/build/store/constants.js.map +1 -1
- package/build/store/defaults.js +2 -4
- package/build/store/defaults.js.map +1 -1
- package/build/store/defaults.native.js +1 -2
- package/build/store/defaults.native.js.map +1 -1
- package/build/store/get-block-settings.js +180 -0
- package/build/store/get-block-settings.js.map +1 -0
- package/build/store/index.js +4 -6
- package/build/store/index.js.map +1 -1
- package/build/store/private-actions.js +37 -3
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +55 -29
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +27 -6
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +98 -102
- package/build/store/selectors.js.map +1 -1
- package/build/store/undo-ignore.js +1 -2
- package/build/store/undo-ignore.js.map +1 -1
- package/build/utils/object.js +0 -17
- package/build/utils/object.js.map +1 -1
- package/build/utils/selection.js +1 -2
- package/build/utils/selection.js.map +1 -1
- package/build/utils/transform-styles/index.js +3 -4
- package/build/utils/transform-styles/index.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-inspector/index.js +10 -7
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-list/block.js +32 -20
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/block.native.js +6 -4
- package/build-module/components/block-list/block.native.js.map +1 -1
- package/build-module/components/block-list/index.js +18 -7
- package/build-module/components/block-list/index.js.map +1 -1
- package/build-module/components/block-list/use-block-props/index.js +8 -1
- package/build-module/components/block-list/use-block-props/index.js.map +1 -1
- package/build-module/components/block-list-appender/index.js +5 -51
- package/build-module/components/block-list-appender/index.js.map +1 -1
- package/build-module/components/block-mover/mover-description.native.js +0 -2
- package/build-module/components/block-mover/mover-description.native.js.map +1 -1
- package/build-module/components/block-popover/inbetween.js +0 -1
- package/build-module/components/block-popover/inbetween.js.map +1 -1
- package/build-module/components/block-preview/auto.js +2 -1
- package/build-module/components/block-preview/auto.js.map +1 -1
- package/build-module/components/block-removal-warning-modal/index.js +4 -2
- package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
- package/build-module/components/block-switcher/index.js +12 -9
- package/build-module/components/block-switcher/index.js.map +1 -1
- package/build-module/components/block-title/use-block-display-title.js +22 -28
- package/build-module/components/block-title/use-block-display-title.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +20 -17
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/block-tools/index.js +2 -10
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/colors-gradients/control.js +0 -1
- package/build-module/components/colors-gradients/control.js.map +1 -1
- package/build-module/components/default-block-appender/index.js +30 -37
- package/build-module/components/default-block-appender/index.js.map +1 -1
- package/build-module/components/global-styles/border-panel.js +57 -9
- package/build-module/components/global-styles/border-panel.js.map +1 -1
- package/build-module/components/global-styles/get-global-styles-changes.js +2 -4
- package/build-module/components/global-styles/get-global-styles-changes.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +2 -3
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/index.js +0 -1
- package/build-module/components/global-styles/index.js.map +1 -1
- package/build-module/components/global-styles/shadow-panel-components.js +121 -0
- package/build-module/components/global-styles/shadow-panel-components.js.map +1 -0
- package/build-module/components/global-styles/typography-panel.js +17 -35
- package/build-module/components/global-styles/typography-panel.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +2 -2
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/global-styles/utils.js +30 -1
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +33 -29
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inner-blocks/index.native.js +1 -4
- package/build-module/components/inner-blocks/index.native.js.map +1 -1
- package/build-module/components/inner-blocks/use-inner-block-template-sync.js +2 -3
- package/build-module/components/inner-blocks/use-inner-block-template-sync.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/patterns-filter.js +4 -4
- package/build-module/components/inserter/block-patterns-tab/patterns-filter.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/utils.js +2 -2
- package/build-module/components/inserter/block-patterns-tab/utils.js.map +1 -1
- package/build-module/components/inserter/quick-inserter.js +3 -2
- 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-draggable-blocks/index.js +12 -1
- package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/styles-tab.js +5 -4
- package/build-module/components/inspector-controls-tabs/styles-tab.js.map +1 -1
- package/build-module/components/link-control/index.js +1 -14
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/link-preview.js +16 -18
- package/build-module/components/link-control/link-preview.js.map +1 -1
- package/build-module/components/link-control/use-create-page.js +0 -1
- package/build-module/components/link-control/use-create-page.js.map +1 -1
- package/build-module/components/list-view/block.js +32 -26
- package/build-module/components/list-view/block.js.map +1 -1
- package/build-module/components/list-view/index.js +17 -11
- package/build-module/components/list-view/index.js.map +1 -1
- package/build-module/components/list-view/use-clipboard-handler.js +153 -0
- package/build-module/components/list-view/use-clipboard-handler.js.map +1 -0
- package/build-module/components/list-view/utils.js +4 -4
- package/build-module/components/list-view/utils.js.map +1 -1
- package/build-module/components/navigable-toolbar/index.js +5 -2
- package/build-module/components/navigable-toolbar/index.js.map +1 -1
- package/build-module/components/provider/index.js +1 -1
- package/build-module/components/provider/index.js.map +1 -1
- package/build-module/components/responsive-block-control/index.js +3 -6
- package/build-module/components/responsive-block-control/index.js.map +1 -1
- package/build-module/components/rich-text/index.js +4 -2
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/native/index.native.js +0 -4
- package/build-module/components/rich-text/native/index.native.js.map +1 -1
- package/build-module/components/spacing-sizes-control/index.js +4 -2
- package/build-module/components/spacing-sizes-control/index.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/url-popover/image-url-input-ui.js +69 -38
- package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build-module/components/url-popover/index.js +8 -5
- package/build-module/components/url-popover/index.js.map +1 -1
- package/build-module/components/url-popover/link-editor.js +2 -1
- package/build-module/components/url-popover/link-editor.js.map +1 -1
- package/build-module/components/url-popover/link-viewer.js +2 -1
- package/build-module/components/url-popover/link-viewer.js.map +1 -1
- package/build-module/components/use-block-drop-zone/index.js +15 -5
- package/build-module/components/use-block-drop-zone/index.js.map +1 -1
- package/build-module/components/use-flash-editable-blocks/index.js +53 -0
- package/build-module/components/use-flash-editable-blocks/index.js.map +1 -0
- package/build-module/components/use-on-block-drop/index.js +4 -4
- package/build-module/components/use-on-block-drop/index.js.map +1 -1
- package/build-module/components/use-settings/index.js +3 -159
- package/build-module/components/use-settings/index.js.map +1 -1
- package/build-module/components/writing-flow/use-clipboard-handler.js +4 -49
- package/build-module/components/writing-flow/use-clipboard-handler.js.map +1 -1
- package/build-module/components/writing-flow/use-drag-selection.js +13 -2
- package/build-module/components/writing-flow/use-drag-selection.js.map +1 -1
- package/build-module/components/writing-flow/utils.js +79 -0
- package/build-module/components/writing-flow/utils.js.map +1 -0
- package/build-module/hooks/background.js +48 -10
- package/build-module/hooks/background.js.map +1 -1
- package/build-module/hooks/border.js +38 -3
- package/build-module/hooks/border.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/font-size.js +23 -27
- package/build-module/hooks/font-size.js.map +1 -1
- package/build-module/hooks/index.js +1 -1
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/index.native.js +1 -1
- package/build-module/hooks/index.native.js.map +1 -1
- package/build-module/hooks/style.js +3 -7
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/hooks/use-bindings-attributes.js +10 -13
- package/build-module/hooks/use-bindings-attributes.js.map +1 -1
- package/build-module/hooks/use-shadow-props.js +0 -14
- package/build-module/hooks/use-shadow-props.js.map +1 -1
- package/build-module/hooks/utils.js +3 -6
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/private-apis.js +5 -1
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/get-block-settings.js +171 -0
- package/build-module/store/get-block-settings.js.map +1 -0
- package/build-module/store/private-actions.js +35 -3
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +42 -19
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +24 -2
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +65 -34
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/object.js +0 -16
- package/build-module/utils/object.js.map +1 -1
- package/build-style/content-rtl.css +23 -15
- package/build-style/content.css +23 -15
- package/build-style/style-rtl.css +97 -67
- package/build-style/style.css +97 -67
- package/package.json +31 -31
- package/src/components/block-canvas/style.scss +3 -3
- package/src/components/block-card/style.scss +3 -1
- package/src/components/block-controls/README.md +2 -2
- package/src/components/block-inspector/index.js +11 -9
- package/src/components/block-list/block.js +45 -20
- package/src/components/block-list/block.native.js +7 -4
- package/src/components/block-list/content.scss +23 -28
- package/src/components/block-list/index.js +49 -25
- package/src/components/block-list/use-block-props/index.js +8 -0
- package/src/components/block-list-appender/index.js +7 -74
- package/src/components/block-mover/style.scss +4 -3
- package/src/components/block-preview/auto.js +2 -1
- package/src/components/block-removal-warning-modal/index.js +17 -10
- package/src/components/block-switcher/index.js +22 -13
- package/src/components/block-title/test/index.js +86 -85
- package/src/components/block-title/use-block-display-title.js +25 -36
- package/src/components/block-toolbar/style.scss +8 -1
- package/src/components/block-tools/block-selection-button.js +23 -26
- package/src/components/block-tools/index.js +2 -12
- package/src/components/colors-gradients/control.js +0 -1
- package/src/components/default-block-appender/index.js +26 -38
- package/src/components/default-block-appender/test/index.js +24 -16
- package/src/components/font-sizes/README.MD +0 -9
- package/src/components/global-styles/border-panel.js +72 -1
- package/src/components/global-styles/get-global-styles-changes.js +2 -8
- package/src/components/global-styles/hooks.js +0 -2
- package/src/components/global-styles/index.js +0 -1
- package/src/components/global-styles/shadow-panel-components.js +125 -0
- package/src/components/global-styles/style.scss +8 -9
- package/src/components/global-styles/test/get-global-styles-changes.js +3 -3
- package/src/components/global-styles/test/use-global-styles-output.js +1 -1
- package/src/components/global-styles/test/utils.js +86 -0
- package/src/components/global-styles/typography-panel.js +14 -47
- package/src/components/global-styles/use-global-styles-output.js +5 -1
- package/src/components/global-styles/utils.js +36 -0
- package/src/components/inner-blocks/index.js +31 -32
- package/src/components/inner-blocks/index.native.js +3 -9
- package/src/components/inner-blocks/use-inner-block-template-sync.js +1 -3
- package/src/components/inserter/block-patterns-tab/patterns-filter.js +4 -10
- package/src/components/inserter/block-patterns-tab/utils.js +2 -2
- package/src/components/inserter/quick-inserter.js +4 -2
- package/src/components/inserter/style.scss +3 -13
- package/src/components/inserter-draggable-blocks/index.js +12 -1
- package/src/components/inspector-controls-tabs/styles-tab.js +4 -2
- package/src/components/link-control/index.js +1 -20
- package/src/components/link-control/link-preview.js +19 -24
- package/src/components/link-control/style.scss +5 -11
- package/src/components/link-control/test/index.js +11 -90
- package/src/components/list-view/block.js +49 -41
- package/src/components/list-view/index.js +22 -9
- package/src/components/list-view/use-clipboard-handler.js +199 -0
- package/src/components/list-view/utils.js +4 -4
- package/src/components/media-replace-flow/test/index.js +1 -1
- package/src/components/navigable-toolbar/index.js +8 -4
- package/src/components/provider/index.js +1 -1
- package/src/components/responsive-block-control/index.js +3 -5
- package/src/components/rich-text/index.js +4 -3
- package/src/components/spacing-sizes-control/index.js +2 -1
- package/src/components/url-input/style.scss +4 -2
- package/src/components/url-popover/image-url-input-ui.js +98 -37
- package/src/components/url-popover/index.js +75 -67
- package/src/components/url-popover/link-editor.js +1 -0
- package/src/components/url-popover/link-viewer.js +1 -0
- package/src/components/url-popover/style.scss +42 -31
- package/src/components/use-block-drop-zone/index.js +17 -3
- package/src/components/use-flash-editable-blocks/index.js +62 -0
- package/src/components/use-on-block-drop/index.js +11 -4
- package/src/components/use-settings/index.js +9 -232
- package/src/components/writing-flow/use-clipboard-handler.js +6 -78
- package/src/components/writing-flow/use-drag-selection.js +12 -3
- package/src/components/writing-flow/utils.js +103 -0
- package/src/hooks/background.js +53 -8
- package/src/hooks/border.js +47 -6
- package/src/hooks/font-size.js +33 -33
- package/src/hooks/index.js +1 -1
- package/src/hooks/index.native.js +1 -1
- package/src/hooks/style.js +5 -9
- package/src/hooks/test/background.js +50 -0
- package/src/hooks/test/font-size.js +164 -0
- package/src/hooks/use-bindings-attributes.js +10 -23
- package/src/hooks/use-shadow-props.js +0 -14
- package/src/hooks/utils.js +4 -16
- package/src/index.js +0 -1
- package/src/private-apis.js +4 -0
- package/src/store/get-block-settings.js +225 -0
- package/src/store/private-actions.js +44 -2
- package/src/store/private-selectors.js +53 -38
- package/src/store/reducer.js +29 -1
- package/src/store/selectors.js +74 -48
- package/src/store/test/get-block-settings.js +90 -0
- package/src/store/test/private-actions.js +18 -0
- package/src/store/test/private-selectors.js +19 -0
- package/src/store/test/reducer.js +19 -0
- package/src/utils/object.js +0 -16
- package/build/components/global-styles/effects-panel.js +0 -219
- package/build/components/global-styles/effects-panel.js.map +0 -1
- package/build/hooks/effects.js +0 -66
- package/build/hooks/effects.js.map +0 -1
- package/build-module/components/global-styles/effects-panel.js +0 -210
- package/build-module/components/global-styles/effects-panel.js.map +0 -1
- package/build-module/hooks/effects.js +0 -51
- package/build-module/hooks/effects.js.map +0 -1
- package/src/components/global-styles/effects-panel.js +0 -244
- package/src/components/use-settings/test/index.js +0 -141
- package/src/hooks/effects.js +0 -57
- package/src/hooks/test/effects.js +0 -39
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","CREATE_TYPE","exports","TEL_TYPE","URL_TYPE","MAILTO_TYPE","INTERNAL_TYPE","LINK_ENTRY_TYPES","DEFAULT_LINK_SETTINGS","id","title","__"],"sources":["@wordpress/block-editor/src/components/link-control/constants.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n// Used as a unique identifier for the \"Create\" option within search results.\n// Used to help distinguish the \"Create\" suggestion within the search results in\n// order to handle it as a unique case.\nexport const CREATE_TYPE = '__CREATE__';\nexport const TEL_TYPE = 'tel';\nexport const URL_TYPE = 'link';\nexport const MAILTO_TYPE = 'mailto';\nexport const INTERNAL_TYPE = 'internal';\n\nexport const LINK_ENTRY_TYPES = [\n\tURL_TYPE,\n\tMAILTO_TYPE,\n\tTEL_TYPE,\n\tINTERNAL_TYPE,\n];\n\nexport const DEFAULT_LINK_SETTINGS = [\n\t{\n\t\tid: 'opensInNewTab',\n\t\ttitle: __( 'Open in new tab' ),\n\t},\n];\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGA;AACA;AACA;AACO,MAAMC,WAAW,
|
|
1
|
+
{"version":3,"names":["_i18n","require","CREATE_TYPE","exports","TEL_TYPE","URL_TYPE","MAILTO_TYPE","INTERNAL_TYPE","LINK_ENTRY_TYPES","DEFAULT_LINK_SETTINGS","id","title","__"],"sources":["@wordpress/block-editor/src/components/link-control/constants.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n// Used as a unique identifier for the \"Create\" option within search results.\n// Used to help distinguish the \"Create\" suggestion within the search results in\n// order to handle it as a unique case.\nexport const CREATE_TYPE = '__CREATE__';\nexport const TEL_TYPE = 'tel';\nexport const URL_TYPE = 'link';\nexport const MAILTO_TYPE = 'mailto';\nexport const INTERNAL_TYPE = 'internal';\n\nexport const LINK_ENTRY_TYPES = [\n\tURL_TYPE,\n\tMAILTO_TYPE,\n\tTEL_TYPE,\n\tINTERNAL_TYPE,\n];\n\nexport const DEFAULT_LINK_SETTINGS = [\n\t{\n\t\tid: 'opensInNewTab',\n\t\ttitle: __( 'Open in new tab' ),\n\t},\n];\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGA;AACA;AACA;AACO,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,YAAY;AAChC,MAAME,QAAQ,GAAAD,OAAA,CAAAC,QAAA,GAAG,KAAK;AACtB,MAAMC,QAAQ,GAAAF,OAAA,CAAAE,QAAA,GAAG,MAAM;AACvB,MAAMC,WAAW,GAAAH,OAAA,CAAAG,WAAA,GAAG,QAAQ;AAC5B,MAAMC,aAAa,GAAAJ,OAAA,CAAAI,aAAA,GAAG,UAAU;AAEhC,MAAMC,gBAAgB,GAAAL,OAAA,CAAAK,gBAAA,GAAG,CAC/BH,QAAQ,EACRC,WAAW,EACXF,QAAQ,EACRG,aAAa,CACb;AAEM,MAAME,qBAAqB,GAAAN,OAAA,CAAAM,qBAAA,GAAG,CACpC;EACCC,EAAE,EAAE,eAAe;EACnBC,KAAK,EAAE,IAAAC,QAAE,EAAE,iBAAkB;AAC9B,CAAC,CACD"}
|
|
@@ -357,19 +357,6 @@ function LinkControl({
|
|
|
357
357
|
onEditClick: () => setIsEditingLink(true),
|
|
358
358
|
hasRichPreviews: hasRichPreviews,
|
|
359
359
|
hasUnlinkControl: shownUnlinkControl,
|
|
360
|
-
additionalControls: () => {
|
|
361
|
-
// Expose the "Opens in new tab" settings in the preview
|
|
362
|
-
// as it is the most common setting to change.
|
|
363
|
-
if (settings?.find(setting => setting.id === 'opensInNewTab')) {
|
|
364
|
-
return (0, _react.createElement)(_settings.default, {
|
|
365
|
-
value: internalControlValue,
|
|
366
|
-
settings: settings?.filter(({
|
|
367
|
-
id
|
|
368
|
-
}) => id === 'opensInNewTab'),
|
|
369
|
-
onChange: onChange
|
|
370
|
-
});
|
|
371
|
-
}
|
|
372
|
-
},
|
|
373
360
|
onRemove: () => {
|
|
374
361
|
onRemove();
|
|
375
362
|
setIsEditingLink(true);
|
|
@@ -394,10 +381,9 @@ function LinkControl({
|
|
|
394
381
|
onClick: isDisabled ? noop : handleSubmit,
|
|
395
382
|
className: "block-editor-link-control__search-submit",
|
|
396
383
|
"aria-disabled": isDisabled
|
|
397
|
-
}, (0, _i18n.__)('Save'))), renderControlBottom && renderControlBottom());
|
|
384
|
+
}, (0, _i18n.__)('Save'))), !isCreatingPage && renderControlBottom && renderControlBottom());
|
|
398
385
|
}
|
|
399
386
|
LinkControl.ViewerFill = _viewerSlot.ViewerFill;
|
|
400
387
|
LinkControl.DEFAULT_LINK_SETTINGS = _constants.DEFAULT_LINK_SETTINGS;
|
|
401
|
-
var _default = LinkControl;
|
|
402
|
-
exports.default = _default;
|
|
388
|
+
var _default = exports.default = LinkControl;
|
|
403
389
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_components","_i18n","_element","_dom","_keycodes","_isShallowEqual","_data","_preferences","_icons","_settingsDrawer","_searchInput","_linkPreview","_settings","_useCreatePage","_useInternalValue","_viewerSlot","_constants","noop","PREFERENCE_SCOPE","PREFERENCE_KEY","LinkControl","searchInputPlaceholder","value","settings","DEFAULT_LINK_SETTINGS","onChange","onRemove","onCancel","noDirectEntry","showSuggestions","showInitialSuggestions","forceIsEditingLink","createSuggestion","withCreateSuggestion","inputValue","propInputValue","suggestionsQuery","noURLSuggestion","createSuggestionButtonText","hasRichPreviews","hasTextControl","renderControlBottom","undefined","settingsOpen","setSettingsOpen","useState","advancedSettingsPreference","useSelect","select","_prefsStore$get","prefsStore","preferencesStore","get","set","setPreference","useDispatch","setSettingsOpenWithPreference","prefVal","isSettingsOpen","isMounting","useRef","wrapperNode","textInputRef","isEndingEditWithFocus","settingsKeys","map","id","internalControlValue","setInternalControlValue","setInternalURLInputValue","setInternalTextInputValue","createSetInternalSettingValueHandler","useInternalValue","valueHasChanges","isShallowEqualObjects","isEditingLink","setIsEditingLink","url","createPage","isCreatingPage","errorMessage","useCreatePage","useEffect","current","nextFocusTarget","focus","focusable","find","hasLinkValue","trim","length","stopEditing","contains","ownerDocument","activeElement","handleSelectSuggestion","updatedValue","nonSettingsChanges","Object","keys","reduce","acc","key","includes","title","handleSubmit","currentUrlInputValue","handleSubmitWithEnter","event","keyCode","ENTER","currentInputIsEmpty","preventDefault","resetInternalValues","handleCancel","stopPropagation","shownUnlinkControl","showActions","showTextControl","isEditing","isDisabled","showSettings","_react","createElement","tabIndex","ref","className","Spinner","__","Fragment","classnames","TextControl","__nextHasNoMarginBottom","label","onKeyDown","size","default","currentLink","placeholder","onCreateSuggestion","onSelect","allowDirectEntry","withURLSuggestion","hideLabelFromVision","Button","onClick","icon","keyboardReturn","Notice","status","isDismissible","onEditClick","hasUnlinkControl","additionalControls","setting","filter","__experimentalHStack","justify","variant","ViewerFill","_default","exports"],"sources":["@wordpress/block-editor/src/components/link-control/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tSpinner,\n\tNotice,\n\tTextControl,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useRef, useState, useEffect } from '@wordpress/element';\nimport { focus } from '@wordpress/dom';\nimport { ENTER } from '@wordpress/keycodes';\nimport { isShallowEqualObjects } from '@wordpress/is-shallow-equal';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { keyboardReturn } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport LinkControlSettingsDrawer from './settings-drawer';\nimport LinkControlSearchInput from './search-input';\nimport LinkPreview from './link-preview';\nimport LinkSettings from './settings';\nimport useCreatePage from './use-create-page';\nimport useInternalValue from './use-internal-value';\nimport { ViewerFill } from './viewer-slot';\nimport { DEFAULT_LINK_SETTINGS } from './constants';\n\n/**\n * Default properties associated with a link control value.\n *\n * @typedef WPLinkControlDefaultValue\n *\n * @property {string} url Link URL.\n * @property {string=} title Link title.\n * @property {boolean=} opensInNewTab Whether link should open in a new browser\n * tab. This value is only assigned if not\n * providing a custom `settings` prop.\n */\n\n/* eslint-disable jsdoc/valid-types */\n/**\n * Custom settings values associated with a link.\n *\n * @typedef {{[setting:string]:any}} WPLinkControlSettingsValue\n */\n/* eslint-enable */\n\n/**\n * Custom settings values associated with a link.\n *\n * @typedef WPLinkControlSetting\n *\n * @property {string} id Identifier to use as property for setting value.\n * @property {string} title Human-readable label to show in user interface.\n */\n\n/**\n * Properties associated with a link control value, composed as a union of the\n * default properties and any custom settings values.\n *\n * @typedef {WPLinkControlDefaultValue&WPLinkControlSettingsValue} WPLinkControlValue\n */\n\n/** @typedef {(nextValue:WPLinkControlValue)=>void} WPLinkControlOnChangeProp */\n\n/**\n * Properties associated with a search suggestion used within the LinkControl.\n *\n * @typedef WPLinkControlSuggestion\n *\n * @property {string} id Identifier to use to uniquely identify the suggestion.\n * @property {string} type Identifies the type of the suggestion (eg: `post`,\n * `page`, `url`...etc)\n * @property {string} title Human-readable label to show in user interface.\n * @property {string} url A URL for the suggestion.\n */\n\n/** @typedef {(title:string)=>WPLinkControlSuggestion} WPLinkControlCreateSuggestionProp */\n\n/**\n * @typedef WPLinkControlProps\n *\n * @property {(WPLinkControlSetting[])=} settings An array of settings objects. Each object will used to\n * render a `ToggleControl` for that setting.\n * @property {boolean=} forceIsEditingLink If passed as either `true` or `false`, controls the\n * internal editing state of the component to respective\n * show or not show the URL input field.\n * @property {WPLinkControlValue=} value Current link value.\n * @property {WPLinkControlOnChangeProp=} onChange Value change handler, called with the updated value if\n * the user selects a new link or updates settings.\n * @property {boolean=} noDirectEntry Whether to allow turning a URL-like search query directly into a link.\n * @property {boolean=} showSuggestions Whether to present suggestions when typing the URL.\n * @property {boolean=} showInitialSuggestions Whether to present initial suggestions immediately.\n * @property {boolean=} withCreateSuggestion Whether to allow creation of link value from suggestion.\n * @property {Object=} suggestionsQuery Query parameters to pass along to wp.blockEditor.__experimentalFetchLinkSuggestions.\n * @property {boolean=} noURLSuggestion Whether to add a fallback suggestion which treats the search query as a URL.\n * @property {boolean=} hasTextControl Whether to add a text field to the UI to update the value.title.\n * @property {string|Function|undefined} createSuggestionButtonText The text to use in the button that calls createSuggestion.\n * @property {Function} renderControlBottom Optional controls to be rendered at the bottom of the component.\n */\n\nconst noop = () => {};\n\nconst PREFERENCE_SCOPE = 'core/block-editor';\nconst PREFERENCE_KEY = 'linkControlSettingsDrawer';\n\n/**\n * Renders a link control. A link control is a controlled input which maintains\n * a value associated with a link (HTML anchor element) and relevant settings\n * for how that link is expected to behave.\n *\n * @param {WPLinkControlProps} props Component props.\n */\nfunction LinkControl( {\n\tsearchInputPlaceholder,\n\tvalue,\n\tsettings = DEFAULT_LINK_SETTINGS,\n\tonChange = noop,\n\tonRemove,\n\tonCancel,\n\tnoDirectEntry = false,\n\tshowSuggestions = true,\n\tshowInitialSuggestions,\n\tforceIsEditingLink,\n\tcreateSuggestion,\n\twithCreateSuggestion,\n\tinputValue: propInputValue = '',\n\tsuggestionsQuery = {},\n\tnoURLSuggestion = false,\n\tcreateSuggestionButtonText,\n\thasRichPreviews = false,\n\thasTextControl = false,\n\trenderControlBottom = null,\n} ) {\n\tif ( withCreateSuggestion === undefined && createSuggestion ) {\n\t\twithCreateSuggestion = true;\n\t}\n\n\tconst [ settingsOpen, setSettingsOpen ] = useState( false );\n\n\tconst { advancedSettingsPreference } = useSelect( ( select ) => {\n\t\tconst prefsStore = select( preferencesStore );\n\n\t\treturn {\n\t\t\tadvancedSettingsPreference:\n\t\t\t\tprefsStore.get( PREFERENCE_SCOPE, PREFERENCE_KEY ) ?? false,\n\t\t};\n\t}, [] );\n\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\n\t/**\n\t * Sets the open/closed state of the Advanced Settings Drawer,\n\t * optionlly persisting the state to the user's preferences.\n\t *\n\t * Note that Block Editor components can be consumed by non-WordPress\n\t * environments which may not have preferences setup.\n\t * Therefore a local state is also used as a fallback.\n\t *\n\t * @param {boolean} prefVal the open/closed state of the Advanced Settings Drawer.\n\t */\n\tconst setSettingsOpenWithPreference = ( prefVal ) => {\n\t\tif ( setPreference ) {\n\t\t\tsetPreference( PREFERENCE_SCOPE, PREFERENCE_KEY, prefVal );\n\t\t}\n\t\tsetSettingsOpen( prefVal );\n\t};\n\n\t// Block Editor components can be consumed by non-WordPress environments\n\t// which may not have these preferences setup.\n\t// Therefore a local state is used as a fallback.\n\tconst isSettingsOpen = advancedSettingsPreference || settingsOpen;\n\n\tconst isMounting = useRef( true );\n\tconst wrapperNode = useRef();\n\tconst textInputRef = useRef();\n\tconst isEndingEditWithFocus = useRef( false );\n\n\tconst settingsKeys = settings.map( ( { id } ) => id );\n\n\tconst [\n\t\tinternalControlValue,\n\t\tsetInternalControlValue,\n\t\tsetInternalURLInputValue,\n\t\tsetInternalTextInputValue,\n\t\tcreateSetInternalSettingValueHandler,\n\t] = useInternalValue( value );\n\n\tconst valueHasChanges =\n\t\tvalue && ! isShallowEqualObjects( internalControlValue, value );\n\n\tconst [ isEditingLink, setIsEditingLink ] = useState(\n\t\tforceIsEditingLink !== undefined\n\t\t\t? forceIsEditingLink\n\t\t\t: ! value || ! value.url\n\t);\n\n\tconst { createPage, isCreatingPage, errorMessage } =\n\t\tuseCreatePage( createSuggestion );\n\n\tuseEffect( () => {\n\t\tif ( forceIsEditingLink === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsEditingLink( forceIsEditingLink );\n\t}, [ forceIsEditingLink ] );\n\n\tuseEffect( () => {\n\t\t// We don't auto focus into the Link UI on mount\n\t\t// because otherwise using the keyboard to select text\n\t\t// *within* the link format is not possible.\n\t\tif ( isMounting.current ) {\n\t\t\tisMounting.current = false;\n\t\t\treturn;\n\t\t}\n\n\t\t// Scenario - when:\n\t\t// - switching between editable and non editable LinkControl\n\t\t// - clicking on a link\n\t\t// ...then move focus to the *first* element to avoid focus loss\n\t\t// and to ensure focus is *within* the Link UI.\n\t\tconst nextFocusTarget =\n\t\t\tfocus.focusable.find( wrapperNode.current )[ 0 ] ||\n\t\t\twrapperNode.current;\n\n\t\tnextFocusTarget.focus();\n\n\t\tisEndingEditWithFocus.current = false;\n\t}, [ isEditingLink, isCreatingPage ] );\n\n\tconst hasLinkValue = value?.url?.trim()?.length > 0;\n\n\t/**\n\t * Cancels editing state and marks that focus may need to be restored after\n\t * the next render, if focus was within the wrapper when editing finished.\n\t */\n\tconst stopEditing = () => {\n\t\tisEndingEditWithFocus.current = !! wrapperNode.current?.contains(\n\t\t\twrapperNode.current.ownerDocument.activeElement\n\t\t);\n\n\t\tsetIsEditingLink( false );\n\t};\n\n\tconst handleSelectSuggestion = ( updatedValue ) => {\n\t\t// Suggestions may contains \"settings\" values (e.g. `opensInNewTab`)\n\t\t// which should not overide any existing settings values set by the\n\t\t// user. This filters out any settings values from the suggestion.\n\t\tconst nonSettingsChanges = Object.keys( updatedValue ).reduce(\n\t\t\t( acc, key ) => {\n\t\t\t\tif ( ! settingsKeys.includes( key ) ) {\n\t\t\t\t\tacc[ key ] = updatedValue[ key ];\n\t\t\t\t}\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\n\t\tonChange( {\n\t\t\t...internalControlValue,\n\t\t\t...nonSettingsChanges,\n\t\t\t// As title is not a setting, it must be manually applied\n\t\t\t// in such a way as to preserve the users changes over\n\t\t\t// any \"title\" value provided by the \"suggestion\".\n\t\t\ttitle: internalControlValue?.title || updatedValue?.title,\n\t\t} );\n\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmit = () => {\n\t\tif ( valueHasChanges ) {\n\t\t\t// Submit the original value with new stored values applied\n\t\t\t// on top. URL is a special case as it may also be a prop.\n\t\t\tonChange( {\n\t\t\t\t...value,\n\t\t\t\t...internalControlValue,\n\t\t\t\turl: currentUrlInputValue,\n\t\t\t} );\n\t\t}\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmitWithEnter = ( event ) => {\n\t\tconst { keyCode } = event;\n\n\t\tif (\n\t\t\tkeyCode === ENTER &&\n\t\t\t! currentInputIsEmpty // Disallow submitting empty values.\n\t\t) {\n\t\t\tevent.preventDefault();\n\t\t\thandleSubmit();\n\t\t}\n\t};\n\n\tconst resetInternalValues = () => {\n\t\tsetInternalControlValue( value );\n\t};\n\n\tconst handleCancel = ( event ) => {\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\n\t\t// Ensure that any unsubmitted input changes are reset.\n\t\tresetInternalValues();\n\n\t\tif ( hasLinkValue ) {\n\t\t\t// If there is a link then exist editing mode and show preview.\n\t\t\tstopEditing();\n\t\t} else {\n\t\t\t// If there is no link value, then remove the link entirely.\n\t\t\tonRemove?.();\n\t\t}\n\n\t\tonCancel?.();\n\t};\n\n\tconst currentUrlInputValue =\n\t\tpropInputValue || internalControlValue?.url || '';\n\n\tconst currentInputIsEmpty = ! currentUrlInputValue?.trim()?.length;\n\n\tconst shownUnlinkControl =\n\t\tonRemove && value && ! isEditingLink && ! isCreatingPage;\n\n\tconst showActions = isEditingLink && hasLinkValue;\n\n\t// Only show text control once a URL value has been committed\n\t// and it isn't just empty whitespace.\n\t// See https://github.com/WordPress/gutenberg/pull/33849/#issuecomment-932194927.\n\tconst showTextControl = hasLinkValue && hasTextControl;\n\n\tconst isEditing = ( isEditingLink || ! value ) && ! isCreatingPage;\n\tconst isDisabled = ! valueHasChanges || currentInputIsEmpty;\n\tconst showSettings = !! settings?.length && isEditingLink && hasLinkValue;\n\n\treturn (\n\t\t<div\n\t\t\ttabIndex={ -1 }\n\t\t\tref={ wrapperNode }\n\t\t\tclassName=\"block-editor-link-control\"\n\t\t>\n\t\t\t{ isCreatingPage && (\n\t\t\t\t<div className=\"block-editor-link-control__loading\">\n\t\t\t\t\t<Spinner /> { __( 'Creating' ) }…\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ isEditing && (\n\t\t\t\t<>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ classnames( {\n\t\t\t\t\t\t\t'block-editor-link-control__search-input-wrapper': true,\n\t\t\t\t\t\t\t'has-text-control': showTextControl,\n\t\t\t\t\t\t\t'has-actions': showActions,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ showTextControl && (\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tref={ textInputRef }\n\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__field block-editor-link-control__text-content\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\t\t\t\t\tvalue={ internalControlValue?.title }\n\t\t\t\t\t\t\t\tonChange={ setInternalTextInputValue }\n\t\t\t\t\t\t\t\tonKeyDown={ handleSubmitWithEnter }\n\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<LinkControlSearchInput\n\t\t\t\t\t\t\tcurrentLink={ value }\n\t\t\t\t\t\t\tclassName=\"block-editor-link-control__field block-editor-link-control__search-input\"\n\t\t\t\t\t\t\tplaceholder={ searchInputPlaceholder }\n\t\t\t\t\t\t\tvalue={ currentUrlInputValue }\n\t\t\t\t\t\t\twithCreateSuggestion={ withCreateSuggestion }\n\t\t\t\t\t\t\tonCreateSuggestion={ createPage }\n\t\t\t\t\t\t\tonChange={ setInternalURLInputValue }\n\t\t\t\t\t\t\tonSelect={ handleSelectSuggestion }\n\t\t\t\t\t\t\tshowInitialSuggestions={ showInitialSuggestions }\n\t\t\t\t\t\t\tallowDirectEntry={ ! noDirectEntry }\n\t\t\t\t\t\t\tshowSuggestions={ showSuggestions }\n\t\t\t\t\t\t\tsuggestionsQuery={ suggestionsQuery }\n\t\t\t\t\t\t\twithURLSuggestion={ ! noURLSuggestion }\n\t\t\t\t\t\t\tcreateSuggestionButtonText={\n\t\t\t\t\t\t\t\tcreateSuggestionButtonText\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thideLabelFromVision={ ! showTextControl }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ ! showActions && (\n\t\t\t\t\t\t\t<div className=\"block-editor-link-control__search-enter\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={ isDisabled ? noop : handleSubmit }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Submit' ) }\n\t\t\t\t\t\t\t\t\ticon={ keyboardReturn }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-submit\"\n\t\t\t\t\t\t\t\t\taria-disabled={ isDisabled }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t\t{ errorMessage && (\n\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-error\"\n\t\t\t\t\t\t\tstatus=\"error\"\n\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ errorMessage }\n\t\t\t\t\t\t</Notice>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t{ value && ! isEditingLink && ! isCreatingPage && (\n\t\t\t\t<LinkPreview\n\t\t\t\t\tkey={ value?.url } // force remount when URL changes to avoid race conditions for rich previews\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonEditClick={ () => setIsEditingLink( true ) }\n\t\t\t\t\thasRichPreviews={ hasRichPreviews }\n\t\t\t\t\thasUnlinkControl={ shownUnlinkControl }\n\t\t\t\t\tadditionalControls={ () => {\n\t\t\t\t\t\t// Expose the \"Opens in new tab\" settings in the preview\n\t\t\t\t\t\t// as it is the most common setting to change.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tsettings?.find(\n\t\t\t\t\t\t\t\t( setting ) => setting.id === 'opensInNewTab'\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<LinkSettings\n\t\t\t\t\t\t\t\t\tvalue={ internalControlValue }\n\t\t\t\t\t\t\t\t\tsettings={ settings?.filter(\n\t\t\t\t\t\t\t\t\t\t( { id } ) => id === 'opensInNewTab'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tonChange={ onChange }\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\tonRemove={ () => {\n\t\t\t\t\t\tonRemove();\n\t\t\t\t\t\tsetIsEditingLink( true );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t{ showSettings && (\n\t\t\t\t<div className=\"block-editor-link-control__tools\">\n\t\t\t\t\t{ ! currentInputIsEmpty && (\n\t\t\t\t\t\t<LinkControlSettingsDrawer\n\t\t\t\t\t\t\tsettingsOpen={ isSettingsOpen }\n\t\t\t\t\t\t\tsetSettingsOpen={ setSettingsOpenWithPreference }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<LinkSettings\n\t\t\t\t\t\t\t\tvalue={ internalControlValue }\n\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\tonChange={ createSetInternalSettingValueHandler(\n\t\t\t\t\t\t\t\t\tsettingsKeys\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</LinkControlSettingsDrawer>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ showActions && (\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"right\"\n\t\t\t\t\tclassName=\"block-editor-link-control__search-actions\"\n\t\t\t\t>\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ handleCancel }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ isDisabled ? noop : handleSubmit }\n\t\t\t\t\t\tclassName=\"block-editor-link-control__search-submit\"\n\t\t\t\t\t\taria-disabled={ isDisabled }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t) }\n\n\t\t\t{ renderControlBottom && renderControlBottom() }\n\t\t</div>\n\t);\n}\n\nLinkControl.ViewerFill = ViewerFill;\nLinkControl.DEFAULT_LINK_SETTINGS = DEFAULT_LINK_SETTINGS;\n\nexport default LinkControl;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_classnames","_interopRequireDefault","require","_components","_i18n","_element","_dom","_keycodes","_isShallowEqual","_data","_preferences","_icons","_settingsDrawer","_searchInput","_linkPreview","_settings","_useCreatePage","_useInternalValue","_viewerSlot","_constants","noop","PREFERENCE_SCOPE","PREFERENCE_KEY","LinkControl","searchInputPlaceholder","value","settings","DEFAULT_LINK_SETTINGS","onChange","onRemove","onCancel","noDirectEntry","showSuggestions","showInitialSuggestions","forceIsEditingLink","createSuggestion","withCreateSuggestion","inputValue","propInputValue","suggestionsQuery","noURLSuggestion","createSuggestionButtonText","hasRichPreviews","hasTextControl","renderControlBottom","undefined","settingsOpen","setSettingsOpen","useState","advancedSettingsPreference","useSelect","select","_prefsStore$get","prefsStore","preferencesStore","get","set","setPreference","useDispatch","setSettingsOpenWithPreference","prefVal","isSettingsOpen","isMounting","useRef","wrapperNode","textInputRef","isEndingEditWithFocus","settingsKeys","map","id","internalControlValue","setInternalControlValue","setInternalURLInputValue","setInternalTextInputValue","createSetInternalSettingValueHandler","useInternalValue","valueHasChanges","isShallowEqualObjects","isEditingLink","setIsEditingLink","url","createPage","isCreatingPage","errorMessage","useCreatePage","useEffect","current","nextFocusTarget","focus","focusable","find","hasLinkValue","trim","length","stopEditing","contains","ownerDocument","activeElement","handleSelectSuggestion","updatedValue","nonSettingsChanges","Object","keys","reduce","acc","key","includes","title","handleSubmit","currentUrlInputValue","handleSubmitWithEnter","event","keyCode","ENTER","currentInputIsEmpty","preventDefault","resetInternalValues","handleCancel","stopPropagation","shownUnlinkControl","showActions","showTextControl","isEditing","isDisabled","showSettings","_react","createElement","tabIndex","ref","className","Spinner","__","Fragment","classnames","TextControl","__nextHasNoMarginBottom","label","onKeyDown","size","default","currentLink","placeholder","onCreateSuggestion","onSelect","allowDirectEntry","withURLSuggestion","hideLabelFromVision","Button","onClick","icon","keyboardReturn","Notice","status","isDismissible","onEditClick","hasUnlinkControl","__experimentalHStack","justify","variant","ViewerFill","_default","exports"],"sources":["@wordpress/block-editor/src/components/link-control/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tSpinner,\n\tNotice,\n\tTextControl,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useRef, useState, useEffect } from '@wordpress/element';\nimport { focus } from '@wordpress/dom';\nimport { ENTER } from '@wordpress/keycodes';\nimport { isShallowEqualObjects } from '@wordpress/is-shallow-equal';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { keyboardReturn } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport LinkControlSettingsDrawer from './settings-drawer';\nimport LinkControlSearchInput from './search-input';\nimport LinkPreview from './link-preview';\nimport LinkSettings from './settings';\nimport useCreatePage from './use-create-page';\nimport useInternalValue from './use-internal-value';\nimport { ViewerFill } from './viewer-slot';\nimport { DEFAULT_LINK_SETTINGS } from './constants';\n\n/**\n * Default properties associated with a link control value.\n *\n * @typedef WPLinkControlDefaultValue\n *\n * @property {string} url Link URL.\n * @property {string=} title Link title.\n * @property {boolean=} opensInNewTab Whether link should open in a new browser\n * tab. This value is only assigned if not\n * providing a custom `settings` prop.\n */\n\n/* eslint-disable jsdoc/valid-types */\n/**\n * Custom settings values associated with a link.\n *\n * @typedef {{[setting:string]:any}} WPLinkControlSettingsValue\n */\n/* eslint-enable */\n\n/**\n * Custom settings values associated with a link.\n *\n * @typedef WPLinkControlSetting\n *\n * @property {string} id Identifier to use as property for setting value.\n * @property {string} title Human-readable label to show in user interface.\n */\n\n/**\n * Properties associated with a link control value, composed as a union of the\n * default properties and any custom settings values.\n *\n * @typedef {WPLinkControlDefaultValue&WPLinkControlSettingsValue} WPLinkControlValue\n */\n\n/** @typedef {(nextValue:WPLinkControlValue)=>void} WPLinkControlOnChangeProp */\n\n/**\n * Properties associated with a search suggestion used within the LinkControl.\n *\n * @typedef WPLinkControlSuggestion\n *\n * @property {string} id Identifier to use to uniquely identify the suggestion.\n * @property {string} type Identifies the type of the suggestion (eg: `post`,\n * `page`, `url`...etc)\n * @property {string} title Human-readable label to show in user interface.\n * @property {string} url A URL for the suggestion.\n */\n\n/** @typedef {(title:string)=>WPLinkControlSuggestion} WPLinkControlCreateSuggestionProp */\n\n/**\n * @typedef WPLinkControlProps\n *\n * @property {(WPLinkControlSetting[])=} settings An array of settings objects. Each object will used to\n * render a `ToggleControl` for that setting.\n * @property {boolean=} forceIsEditingLink If passed as either `true` or `false`, controls the\n * internal editing state of the component to respective\n * show or not show the URL input field.\n * @property {WPLinkControlValue=} value Current link value.\n * @property {WPLinkControlOnChangeProp=} onChange Value change handler, called with the updated value if\n * the user selects a new link or updates settings.\n * @property {boolean=} noDirectEntry Whether to allow turning a URL-like search query directly into a link.\n * @property {boolean=} showSuggestions Whether to present suggestions when typing the URL.\n * @property {boolean=} showInitialSuggestions Whether to present initial suggestions immediately.\n * @property {boolean=} withCreateSuggestion Whether to allow creation of link value from suggestion.\n * @property {Object=} suggestionsQuery Query parameters to pass along to wp.blockEditor.__experimentalFetchLinkSuggestions.\n * @property {boolean=} noURLSuggestion Whether to add a fallback suggestion which treats the search query as a URL.\n * @property {boolean=} hasTextControl Whether to add a text field to the UI to update the value.title.\n * @property {string|Function|undefined} createSuggestionButtonText The text to use in the button that calls createSuggestion.\n * @property {Function} renderControlBottom Optional controls to be rendered at the bottom of the component.\n */\n\nconst noop = () => {};\n\nconst PREFERENCE_SCOPE = 'core/block-editor';\nconst PREFERENCE_KEY = 'linkControlSettingsDrawer';\n\n/**\n * Renders a link control. A link control is a controlled input which maintains\n * a value associated with a link (HTML anchor element) and relevant settings\n * for how that link is expected to behave.\n *\n * @param {WPLinkControlProps} props Component props.\n */\nfunction LinkControl( {\n\tsearchInputPlaceholder,\n\tvalue,\n\tsettings = DEFAULT_LINK_SETTINGS,\n\tonChange = noop,\n\tonRemove,\n\tonCancel,\n\tnoDirectEntry = false,\n\tshowSuggestions = true,\n\tshowInitialSuggestions,\n\tforceIsEditingLink,\n\tcreateSuggestion,\n\twithCreateSuggestion,\n\tinputValue: propInputValue = '',\n\tsuggestionsQuery = {},\n\tnoURLSuggestion = false,\n\tcreateSuggestionButtonText,\n\thasRichPreviews = false,\n\thasTextControl = false,\n\trenderControlBottom = null,\n} ) {\n\tif ( withCreateSuggestion === undefined && createSuggestion ) {\n\t\twithCreateSuggestion = true;\n\t}\n\n\tconst [ settingsOpen, setSettingsOpen ] = useState( false );\n\n\tconst { advancedSettingsPreference } = useSelect( ( select ) => {\n\t\tconst prefsStore = select( preferencesStore );\n\n\t\treturn {\n\t\t\tadvancedSettingsPreference:\n\t\t\t\tprefsStore.get( PREFERENCE_SCOPE, PREFERENCE_KEY ) ?? false,\n\t\t};\n\t}, [] );\n\n\tconst { set: setPreference } = useDispatch( preferencesStore );\n\n\t/**\n\t * Sets the open/closed state of the Advanced Settings Drawer,\n\t * optionlly persisting the state to the user's preferences.\n\t *\n\t * Note that Block Editor components can be consumed by non-WordPress\n\t * environments which may not have preferences setup.\n\t * Therefore a local state is also used as a fallback.\n\t *\n\t * @param {boolean} prefVal the open/closed state of the Advanced Settings Drawer.\n\t */\n\tconst setSettingsOpenWithPreference = ( prefVal ) => {\n\t\tif ( setPreference ) {\n\t\t\tsetPreference( PREFERENCE_SCOPE, PREFERENCE_KEY, prefVal );\n\t\t}\n\t\tsetSettingsOpen( prefVal );\n\t};\n\n\t// Block Editor components can be consumed by non-WordPress environments\n\t// which may not have these preferences setup.\n\t// Therefore a local state is used as a fallback.\n\tconst isSettingsOpen = advancedSettingsPreference || settingsOpen;\n\n\tconst isMounting = useRef( true );\n\tconst wrapperNode = useRef();\n\tconst textInputRef = useRef();\n\tconst isEndingEditWithFocus = useRef( false );\n\n\tconst settingsKeys = settings.map( ( { id } ) => id );\n\n\tconst [\n\t\tinternalControlValue,\n\t\tsetInternalControlValue,\n\t\tsetInternalURLInputValue,\n\t\tsetInternalTextInputValue,\n\t\tcreateSetInternalSettingValueHandler,\n\t] = useInternalValue( value );\n\n\tconst valueHasChanges =\n\t\tvalue && ! isShallowEqualObjects( internalControlValue, value );\n\n\tconst [ isEditingLink, setIsEditingLink ] = useState(\n\t\tforceIsEditingLink !== undefined\n\t\t\t? forceIsEditingLink\n\t\t\t: ! value || ! value.url\n\t);\n\n\tconst { createPage, isCreatingPage, errorMessage } =\n\t\tuseCreatePage( createSuggestion );\n\n\tuseEffect( () => {\n\t\tif ( forceIsEditingLink === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsEditingLink( forceIsEditingLink );\n\t}, [ forceIsEditingLink ] );\n\n\tuseEffect( () => {\n\t\t// We don't auto focus into the Link UI on mount\n\t\t// because otherwise using the keyboard to select text\n\t\t// *within* the link format is not possible.\n\t\tif ( isMounting.current ) {\n\t\t\tisMounting.current = false;\n\t\t\treturn;\n\t\t}\n\n\t\t// Scenario - when:\n\t\t// - switching between editable and non editable LinkControl\n\t\t// - clicking on a link\n\t\t// ...then move focus to the *first* element to avoid focus loss\n\t\t// and to ensure focus is *within* the Link UI.\n\t\tconst nextFocusTarget =\n\t\t\tfocus.focusable.find( wrapperNode.current )[ 0 ] ||\n\t\t\twrapperNode.current;\n\n\t\tnextFocusTarget.focus();\n\n\t\tisEndingEditWithFocus.current = false;\n\t}, [ isEditingLink, isCreatingPage ] );\n\n\tconst hasLinkValue = value?.url?.trim()?.length > 0;\n\n\t/**\n\t * Cancels editing state and marks that focus may need to be restored after\n\t * the next render, if focus was within the wrapper when editing finished.\n\t */\n\tconst stopEditing = () => {\n\t\tisEndingEditWithFocus.current = !! wrapperNode.current?.contains(\n\t\t\twrapperNode.current.ownerDocument.activeElement\n\t\t);\n\n\t\tsetIsEditingLink( false );\n\t};\n\n\tconst handleSelectSuggestion = ( updatedValue ) => {\n\t\t// Suggestions may contains \"settings\" values (e.g. `opensInNewTab`)\n\t\t// which should not overide any existing settings values set by the\n\t\t// user. This filters out any settings values from the suggestion.\n\t\tconst nonSettingsChanges = Object.keys( updatedValue ).reduce(\n\t\t\t( acc, key ) => {\n\t\t\t\tif ( ! settingsKeys.includes( key ) ) {\n\t\t\t\t\tacc[ key ] = updatedValue[ key ];\n\t\t\t\t}\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\n\t\tonChange( {\n\t\t\t...internalControlValue,\n\t\t\t...nonSettingsChanges,\n\t\t\t// As title is not a setting, it must be manually applied\n\t\t\t// in such a way as to preserve the users changes over\n\t\t\t// any \"title\" value provided by the \"suggestion\".\n\t\t\ttitle: internalControlValue?.title || updatedValue?.title,\n\t\t} );\n\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmit = () => {\n\t\tif ( valueHasChanges ) {\n\t\t\t// Submit the original value with new stored values applied\n\t\t\t// on top. URL is a special case as it may also be a prop.\n\t\t\tonChange( {\n\t\t\t\t...value,\n\t\t\t\t...internalControlValue,\n\t\t\t\turl: currentUrlInputValue,\n\t\t\t} );\n\t\t}\n\t\tstopEditing();\n\t};\n\n\tconst handleSubmitWithEnter = ( event ) => {\n\t\tconst { keyCode } = event;\n\n\t\tif (\n\t\t\tkeyCode === ENTER &&\n\t\t\t! currentInputIsEmpty // Disallow submitting empty values.\n\t\t) {\n\t\t\tevent.preventDefault();\n\t\t\thandleSubmit();\n\t\t}\n\t};\n\n\tconst resetInternalValues = () => {\n\t\tsetInternalControlValue( value );\n\t};\n\n\tconst handleCancel = ( event ) => {\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\n\t\t// Ensure that any unsubmitted input changes are reset.\n\t\tresetInternalValues();\n\n\t\tif ( hasLinkValue ) {\n\t\t\t// If there is a link then exist editing mode and show preview.\n\t\t\tstopEditing();\n\t\t} else {\n\t\t\t// If there is no link value, then remove the link entirely.\n\t\t\tonRemove?.();\n\t\t}\n\n\t\tonCancel?.();\n\t};\n\n\tconst currentUrlInputValue =\n\t\tpropInputValue || internalControlValue?.url || '';\n\n\tconst currentInputIsEmpty = ! currentUrlInputValue?.trim()?.length;\n\n\tconst shownUnlinkControl =\n\t\tonRemove && value && ! isEditingLink && ! isCreatingPage;\n\n\tconst showActions = isEditingLink && hasLinkValue;\n\n\t// Only show text control once a URL value has been committed\n\t// and it isn't just empty whitespace.\n\t// See https://github.com/WordPress/gutenberg/pull/33849/#issuecomment-932194927.\n\tconst showTextControl = hasLinkValue && hasTextControl;\n\n\tconst isEditing = ( isEditingLink || ! value ) && ! isCreatingPage;\n\tconst isDisabled = ! valueHasChanges || currentInputIsEmpty;\n\tconst showSettings = !! settings?.length && isEditingLink && hasLinkValue;\n\n\treturn (\n\t\t<div\n\t\t\ttabIndex={ -1 }\n\t\t\tref={ wrapperNode }\n\t\t\tclassName=\"block-editor-link-control\"\n\t\t>\n\t\t\t{ isCreatingPage && (\n\t\t\t\t<div className=\"block-editor-link-control__loading\">\n\t\t\t\t\t<Spinner /> { __( 'Creating' ) }…\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ isEditing && (\n\t\t\t\t<>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ classnames( {\n\t\t\t\t\t\t\t'block-editor-link-control__search-input-wrapper': true,\n\t\t\t\t\t\t\t'has-text-control': showTextControl,\n\t\t\t\t\t\t\t'has-actions': showActions,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ showTextControl && (\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tref={ textInputRef }\n\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__field block-editor-link-control__text-content\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\t\t\t\t\tvalue={ internalControlValue?.title }\n\t\t\t\t\t\t\t\tonChange={ setInternalTextInputValue }\n\t\t\t\t\t\t\t\tonKeyDown={ handleSubmitWithEnter }\n\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<LinkControlSearchInput\n\t\t\t\t\t\t\tcurrentLink={ value }\n\t\t\t\t\t\t\tclassName=\"block-editor-link-control__field block-editor-link-control__search-input\"\n\t\t\t\t\t\t\tplaceholder={ searchInputPlaceholder }\n\t\t\t\t\t\t\tvalue={ currentUrlInputValue }\n\t\t\t\t\t\t\twithCreateSuggestion={ withCreateSuggestion }\n\t\t\t\t\t\t\tonCreateSuggestion={ createPage }\n\t\t\t\t\t\t\tonChange={ setInternalURLInputValue }\n\t\t\t\t\t\t\tonSelect={ handleSelectSuggestion }\n\t\t\t\t\t\t\tshowInitialSuggestions={ showInitialSuggestions }\n\t\t\t\t\t\t\tallowDirectEntry={ ! noDirectEntry }\n\t\t\t\t\t\t\tshowSuggestions={ showSuggestions }\n\t\t\t\t\t\t\tsuggestionsQuery={ suggestionsQuery }\n\t\t\t\t\t\t\twithURLSuggestion={ ! noURLSuggestion }\n\t\t\t\t\t\t\tcreateSuggestionButtonText={\n\t\t\t\t\t\t\t\tcreateSuggestionButtonText\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thideLabelFromVision={ ! showTextControl }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ ! showActions && (\n\t\t\t\t\t\t\t<div className=\"block-editor-link-control__search-enter\">\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={ isDisabled ? noop : handleSubmit }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Submit' ) }\n\t\t\t\t\t\t\t\t\ticon={ keyboardReturn }\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-submit\"\n\t\t\t\t\t\t\t\t\taria-disabled={ isDisabled }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t\t{ errorMessage && (\n\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-error\"\n\t\t\t\t\t\t\tstatus=\"error\"\n\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ errorMessage }\n\t\t\t\t\t\t</Notice>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t{ value && ! isEditingLink && ! isCreatingPage && (\n\t\t\t\t<LinkPreview\n\t\t\t\t\tkey={ value?.url } // force remount when URL changes to avoid race conditions for rich previews\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonEditClick={ () => setIsEditingLink( true ) }\n\t\t\t\t\thasRichPreviews={ hasRichPreviews }\n\t\t\t\t\thasUnlinkControl={ shownUnlinkControl }\n\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\tonRemove();\n\t\t\t\t\t\tsetIsEditingLink( true );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t{ showSettings && (\n\t\t\t\t<div className=\"block-editor-link-control__tools\">\n\t\t\t\t\t{ ! currentInputIsEmpty && (\n\t\t\t\t\t\t<LinkControlSettingsDrawer\n\t\t\t\t\t\t\tsettingsOpen={ isSettingsOpen }\n\t\t\t\t\t\t\tsetSettingsOpen={ setSettingsOpenWithPreference }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<LinkSettings\n\t\t\t\t\t\t\t\tvalue={ internalControlValue }\n\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\tonChange={ createSetInternalSettingValueHandler(\n\t\t\t\t\t\t\t\t\tsettingsKeys\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</LinkControlSettingsDrawer>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ showActions && (\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"right\"\n\t\t\t\t\tclassName=\"block-editor-link-control__search-actions\"\n\t\t\t\t>\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ handleCancel }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ isDisabled ? noop : handleSubmit }\n\t\t\t\t\t\tclassName=\"block-editor-link-control__search-submit\"\n\t\t\t\t\t\taria-disabled={ isDisabled }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t) }\n\n\t\t\t{ ! isCreatingPage && renderControlBottom && renderControlBottom() }\n\t\t</div>\n\t);\n}\n\nLinkControl.ViewerFill = ViewerFill;\nLinkControl.DEFAULT_LINK_SETTINGS = DEFAULT_LINK_SETTINGS;\n\nexport default LinkControl;\n"],"mappings":"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"}
|
|
@@ -34,8 +34,7 @@ function LinkPreview({
|
|
|
34
34
|
onEditClick,
|
|
35
35
|
hasRichPreviews = false,
|
|
36
36
|
hasUnlinkControl = false,
|
|
37
|
-
onRemove
|
|
38
|
-
additionalControls
|
|
37
|
+
onRemove
|
|
39
38
|
}) {
|
|
40
39
|
// Avoid fetching if rich previews are not desired.
|
|
41
40
|
const showRichPreviews = hasRichPreviews ? value?.url : null;
|
|
@@ -71,7 +70,7 @@ function LinkPreview({
|
|
|
71
70
|
createNotice
|
|
72
71
|
} = (0, _data.useDispatch)(_notices.store);
|
|
73
72
|
const ref = (0, _compose.useCopyToClipboard)(value.url, () => {
|
|
74
|
-
createNotice('info', (0, _i18n.__)('
|
|
73
|
+
createNotice('info', (0, _i18n.__)('Link copied to clipboard.'), {
|
|
75
74
|
isDismissible: true,
|
|
76
75
|
type: 'snackbar'
|
|
77
76
|
});
|
|
@@ -96,14 +95,12 @@ function LinkPreview({
|
|
|
96
95
|
})
|
|
97
96
|
}, icon), (0, _react.createElement)("span", {
|
|
98
97
|
className: "block-editor-link-control__search-item-details"
|
|
99
|
-
}, !isEmptyURL ? (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_components.
|
|
100
|
-
text: value.url
|
|
101
|
-
}, (0, _react.createElement)(_components.ExternalLink, {
|
|
98
|
+
}, !isEmptyURL ? (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_components.ExternalLink, {
|
|
102
99
|
className: "block-editor-link-control__search-item-title",
|
|
103
100
|
href: value.url
|
|
104
101
|
}, (0, _react.createElement)(_components.__experimentalTruncate, {
|
|
105
102
|
numberOfLines: 1
|
|
106
|
-
}, displayTitle))
|
|
103
|
+
}, displayTitle)), value?.url && displayTitle !== displayURL && (0, _react.createElement)("span", {
|
|
107
104
|
className: "block-editor-link-control__search-item-info"
|
|
108
105
|
}, (0, _react.createElement)(_components.__experimentalTruncate, {
|
|
109
106
|
numberOfLines: 1
|
|
@@ -111,25 +108,26 @@ function LinkPreview({
|
|
|
111
108
|
className: "block-editor-link-control__search-item-error-notice"
|
|
112
109
|
}, (0, _i18n.__)('Link is empty')))), (0, _react.createElement)(_components.Button, {
|
|
113
110
|
icon: _icons.edit,
|
|
114
|
-
label: (0, _i18n.__)('Edit'),
|
|
115
|
-
className: "block-editor-link-control__search-item-action",
|
|
111
|
+
label: (0, _i18n.__)('Edit link'),
|
|
116
112
|
onClick: onEditClick,
|
|
117
113
|
size: "compact"
|
|
118
114
|
}), hasUnlinkControl && (0, _react.createElement)(_components.Button, {
|
|
119
115
|
icon: _icons.linkOff,
|
|
120
|
-
label: (0, _i18n.__)('
|
|
121
|
-
className: "block-editor-link-control__search-item-action block-editor-link-control__unlink",
|
|
116
|
+
label: (0, _i18n.__)('Remove link'),
|
|
122
117
|
onClick: onRemove,
|
|
123
118
|
size: "compact"
|
|
124
119
|
}), (0, _react.createElement)(_components.Button, {
|
|
125
|
-
icon: _icons.
|
|
126
|
-
label: (0, _i18n.
|
|
127
|
-
|
|
120
|
+
icon: _icons.copySmall,
|
|
121
|
+
label: (0, _i18n.sprintf)(
|
|
122
|
+
// Translators: %s is a placeholder for the link URL and an optional colon, (if a Link URL is present).
|
|
123
|
+
(0, _i18n.__)('Copy link%s'),
|
|
124
|
+
// Ends up looking like "Copy link: https://example.com".
|
|
125
|
+
isEmptyURL ? '' : ': ' + value.url),
|
|
128
126
|
ref: ref,
|
|
129
127
|
disabled: isEmptyURL,
|
|
130
128
|
size: "compact"
|
|
131
129
|
}), (0, _react.createElement)(_viewerSlot.ViewerSlot, {
|
|
132
130
|
fillProps: value
|
|
133
|
-
}))
|
|
131
|
+
})));
|
|
134
132
|
}
|
|
135
133
|
//# sourceMappingURL=link-preview.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_i18n","_components","_compose","_url","_icons","_dom","_data","_notices","_viewerSlot","_useRichUrlData","LinkPreview","value","onEditClick","hasRichPreviews","hasUnlinkControl","onRemove","
|
|
1
|
+
{"version":3,"names":["_classnames","_interopRequireDefault","require","_i18n","_components","_compose","_url","_icons","_dom","_data","_notices","_viewerSlot","_useRichUrlData","LinkPreview","value","onEditClick","hasRichPreviews","hasUnlinkControl","onRemove","showRichPreviews","url","richData","isFetching","useRichUrlData","hasRichData","Object","keys","length","displayURL","filterURLForDisplay","safeDecodeURI","isEmptyURL","displayTitle","stripHTML","title","icon","_react","createElement","src","alt","Icon","info","size","globe","createNotice","useDispatch","noticesStore","ref","useCopyToClipboard","__","isDismissible","type","className","classnames","Fragment","ExternalLink","href","__experimentalTruncate","numberOfLines","Button","edit","label","onClick","linkOff","copySmall","sprintf","disabled","ViewerSlot","fillProps"],"sources":["@wordpress/block-editor/src/components/link-control/link-preview.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tExternalLink,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { useCopyToClipboard } from '@wordpress/compose';\nimport { filterURLForDisplay, safeDecodeURI } from '@wordpress/url';\nimport { Icon, globe, info, linkOff, edit, copySmall } from '@wordpress/icons';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { useDispatch } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { ViewerSlot } from './viewer-slot';\n\nimport useRichUrlData from './use-rich-url-data';\n\nexport default function LinkPreview( {\n\tvalue,\n\tonEditClick,\n\thasRichPreviews = false,\n\thasUnlinkControl = false,\n\tonRemove,\n} ) {\n\t// Avoid fetching if rich previews are not desired.\n\tconst showRichPreviews = hasRichPreviews ? value?.url : null;\n\n\tconst { richData, isFetching } = useRichUrlData( showRichPreviews );\n\n\t// Rich data may be an empty object so test for that.\n\tconst hasRichData = richData && Object.keys( richData ).length;\n\n\tconst displayURL =\n\t\t( value && filterURLForDisplay( safeDecodeURI( value.url ), 24 ) ) ||\n\t\t'';\n\n\t// url can be undefined if the href attribute is unset\n\tconst isEmptyURL = ! value?.url?.length;\n\n\tconst displayTitle =\n\t\t! isEmptyURL &&\n\t\tstripHTML( richData?.title || value?.title || displayURL );\n\n\tlet icon;\n\n\tif ( richData?.icon ) {\n\t\ticon = <img src={ richData?.icon } alt=\"\" />;\n\t} else if ( isEmptyURL ) {\n\t\ticon = <Icon icon={ info } size={ 32 } />;\n\t} else {\n\t\ticon = <Icon icon={ globe } />;\n\t}\n\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst ref = useCopyToClipboard( value.url, () => {\n\t\tcreateNotice( 'info', __( 'Link copied to clipboard.' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<div\n\t\t\taria-label={ __( 'Currently selected' ) }\n\t\t\tclassName={ classnames( 'block-editor-link-control__search-item', {\n\t\t\t\t'is-current': true,\n\t\t\t\t'is-rich': hasRichData,\n\t\t\t\t'is-fetching': !! isFetching,\n\t\t\t\t'is-preview': true,\n\t\t\t\t'is-error': isEmptyURL,\n\t\t\t\t'is-url-title': displayTitle === displayURL,\n\t\t\t} ) }\n\t\t>\n\t\t\t<div className=\"block-editor-link-control__search-item-top\">\n\t\t\t\t<span className=\"block-editor-link-control__search-item-header\">\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'block-editor-link-control__search-item-icon',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-image': richData?.icon,\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\t\t{ icon }\n\t\t\t\t\t</span>\n\t\t\t\t\t<span className=\"block-editor-link-control__search-item-details\">\n\t\t\t\t\t\t{ ! isEmptyURL ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-link-control__search-item-title\"\n\t\t\t\t\t\t\t\t\thref={ value.url }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Truncate numberOfLines={ 1 }>\n\t\t\t\t\t\t\t\t\t\t{ displayTitle }\n\t\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t{ value?.url && displayTitle !== displayURL && (\n\t\t\t\t\t\t\t\t\t<span className=\"block-editor-link-control__search-item-info\">\n\t\t\t\t\t\t\t\t\t\t<Truncate numberOfLines={ 1 }>\n\t\t\t\t\t\t\t\t\t\t\t{ displayURL }\n\t\t\t\t\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t\t\t\t\t</span>\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\t<span className=\"block-editor-link-control__search-item-error-notice\">\n\t\t\t\t\t\t\t\t{ __( 'Link is empty' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t\t<Button\n\t\t\t\t\ticon={ edit }\n\t\t\t\t\tlabel={ __( 'Edit link' ) }\n\t\t\t\t\tonClick={ onEditClick }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t\t{ hasUnlinkControl && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\tlabel={ __( 'Remove link' ) }\n\t\t\t\t\t\tonClick={ onRemove }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<Button\n\t\t\t\t\ticon={ copySmall }\n\t\t\t\t\tlabel={ sprintf(\n\t\t\t\t\t\t// Translators: %s is a placeholder for the link URL and an optional colon, (if a Link URL is present).\n\t\t\t\t\t\t__( 'Copy link%s' ), // Ends up looking like \"Copy link: https://example.com\".\n\t\t\t\t\t\tisEmptyURL ? '' : ': ' + value.url\n\t\t\t\t\t) }\n\t\t\t\t\tref={ ref }\n\t\t\t\t\tdisabled={ isEmptyURL }\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t/>\n\t\t\t\t<ViewerSlot fillProps={ value } />\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -40,6 +40,5 @@ const LinkControlSearchCreate = ({
|
|
|
40
40
|
}, text);
|
|
41
41
|
};
|
|
42
42
|
exports.LinkControlSearchCreate = LinkControlSearchCreate;
|
|
43
|
-
var _default = LinkControlSearchCreate;
|
|
44
|
-
exports.default = _default;
|
|
43
|
+
var _default = exports.default = LinkControlSearchCreate;
|
|
45
44
|
//# sourceMappingURL=search-create-button.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_components","_element","_icons","LinkControlSearchCreate","searchTerm","onClick","itemProps","buttonText","text","createInterpolateElement","sprintf","__","mark","_react","createElement","MenuItem","iconPosition","icon","plus","className","exports","_default","default"],"sources":["@wordpress/block-editor/src/components/link-control/search-create-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { MenuItem } from '@wordpress/components';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { plus } from '@wordpress/icons';\n\nexport const LinkControlSearchCreate = ( {\n\tsearchTerm,\n\tonClick,\n\titemProps,\n\tbuttonText,\n} ) => {\n\tif ( ! searchTerm ) {\n\t\treturn null;\n\t}\n\n\tlet text;\n\tif ( buttonText ) {\n\t\ttext =\n\t\t\ttypeof buttonText === 'function'\n\t\t\t\t? buttonText( searchTerm )\n\t\t\t\t: buttonText;\n\t} else {\n\t\ttext = createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t__( 'Create: <mark>%s</mark>' ),\n\t\t\t\tsearchTerm\n\t\t\t),\n\t\t\t{ mark: <mark /> }\n\t\t);\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...itemProps }\n\t\t\ticonPosition=\"left\"\n\t\t\ticon={ plus }\n\t\t\tclassName=\"block-editor-link-control__search-item\"\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ text }\n\t\t</MenuItem>\n\t);\n};\n\nexport default LinkControlSearchCreate;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AANA;AACA;AACA;;AAMO,MAAMI,uBAAuB,GAAGA,CAAE;EACxCC,UAAU;EACVC,OAAO;EACPC,SAAS;EACTC;AACD,CAAC,KAAM;EACN,IAAK,CAAEH,UAAU,EAAG;IACnB,OAAO,IAAI;EACZ;EAEA,IAAII,IAAI;EACR,IAAKD,UAAU,EAAG;IACjBC,IAAI,GACH,OAAOD,UAAU,KAAK,UAAU,GAC7BA,UAAU,CAAEH,UAAW,CAAC,GACxBG,UAAU;EACf,CAAC,MAAM;IACNC,IAAI,GAAG,IAAAC,iCAAwB,EAC9B,IAAAC,aAAO,GACN;IACA,IAAAC,QAAE,EAAE,yBAA0B,CAAC,EAC/BP,UACD,CAAC,EACD;MAAEQ,IAAI,EAAE,IAAAC,MAAA,CAAAC,aAAA,cAAO;IAAE,CAClB,CAAC;EACF;EAEA,OACC,IAAAD,MAAA,CAAAC,aAAA,EAACd,WAAA,CAAAe,QAAQ;IAAA,GACHT,SAAS;IACdU,YAAY,EAAC,MAAM;IACnBC,IAAI,EAAGC,WAAM;IACbC,SAAS,EAAC,wCAAwC;IAClDd,OAAO,EAAGA;EAAS,GAEjBG,IACO,CAAC;AAEb,CAAC;AAACY,OAAA,CAAAjB,uBAAA,GAAAA,uBAAA;AAAA,IAAAkB,QAAA,
|
|
1
|
+
{"version":3,"names":["_i18n","require","_components","_element","_icons","LinkControlSearchCreate","searchTerm","onClick","itemProps","buttonText","text","createInterpolateElement","sprintf","__","mark","_react","createElement","MenuItem","iconPosition","icon","plus","className","exports","_default","default"],"sources":["@wordpress/block-editor/src/components/link-control/search-create-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { MenuItem } from '@wordpress/components';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { plus } from '@wordpress/icons';\n\nexport const LinkControlSearchCreate = ( {\n\tsearchTerm,\n\tonClick,\n\titemProps,\n\tbuttonText,\n} ) => {\n\tif ( ! searchTerm ) {\n\t\treturn null;\n\t}\n\n\tlet text;\n\tif ( buttonText ) {\n\t\ttext =\n\t\t\ttypeof buttonText === 'function'\n\t\t\t\t? buttonText( searchTerm )\n\t\t\t\t: buttonText;\n\t} else {\n\t\ttext = createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t__( 'Create: <mark>%s</mark>' ),\n\t\t\t\tsearchTerm\n\t\t\t),\n\t\t\t{ mark: <mark /> }\n\t\t);\n\t}\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...itemProps }\n\t\t\ticonPosition=\"left\"\n\t\t\ticon={ plus }\n\t\t\tclassName=\"block-editor-link-control__search-item\"\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ text }\n\t\t</MenuItem>\n\t);\n};\n\nexport default LinkControlSearchCreate;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AANA;AACA;AACA;;AAMO,MAAMI,uBAAuB,GAAGA,CAAE;EACxCC,UAAU;EACVC,OAAO;EACPC,SAAS;EACTC;AACD,CAAC,KAAM;EACN,IAAK,CAAEH,UAAU,EAAG;IACnB,OAAO,IAAI;EACZ;EAEA,IAAII,IAAI;EACR,IAAKD,UAAU,EAAG;IACjBC,IAAI,GACH,OAAOD,UAAU,KAAK,UAAU,GAC7BA,UAAU,CAAEH,UAAW,CAAC,GACxBG,UAAU;EACf,CAAC,MAAM;IACNC,IAAI,GAAG,IAAAC,iCAAwB,EAC9B,IAAAC,aAAO,GACN;IACA,IAAAC,QAAE,EAAE,yBAA0B,CAAC,EAC/BP,UACD,CAAC,EACD;MAAEQ,IAAI,EAAE,IAAAC,MAAA,CAAAC,aAAA,cAAO;IAAE,CAClB,CAAC;EACF;EAEA,OACC,IAAAD,MAAA,CAAAC,aAAA,EAACd,WAAA,CAAAe,QAAQ;IAAA,GACHT,SAAS;IACdU,YAAY,EAAC,MAAM;IACnBC,IAAI,EAAGC,WAAM;IACbC,SAAS,EAAC,wCAAwC;IAClDd,OAAO,EAAGA;EAAS,GAEjBG,IACO,CAAC;AAEb,CAAC;AAACY,OAAA,CAAAjB,uBAAA,GAAAA,uBAAA;AAAA,IAAAkB,QAAA,GAAAD,OAAA,CAAAE,OAAA,GAEanB,uBAAuB"}
|
|
@@ -134,6 +134,5 @@ const LinkControlSearchInput = (0, _element.forwardRef)(({
|
|
|
134
134
|
ref: ref
|
|
135
135
|
}), children);
|
|
136
136
|
});
|
|
137
|
-
var _default = LinkControlSearchInput;
|
|
138
|
-
exports.default = _default;
|
|
137
|
+
var _default = exports.default = LinkControlSearchInput;
|
|
139
138
|
//# sourceMappingURL=search-input.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_compose","require","_element","_i18n","_","_searchResults","_interopRequireDefault","_constants","_useSearchHandler","noopSearchHandler","Promise","resolve","noop","LinkControlSearchInput","forwardRef","value","children","currentLink","className","placeholder","withCreateSuggestion","onCreateSuggestion","onChange","onSelect","showSuggestions","renderSuggestions","props","_react","createElement","default","fetchSuggestions","allowDirectEntry","showInitialSuggestions","suggestionsQuery","withURLSuggestion","createSuggestionButtonText","hideLabelFromVision","ref","genericSearchHandler","useSearchHandler","searchHandler","instanceId","useInstanceId","focusedSuggestion","setFocusedSuggestion","useState","onInputChange","selection","suggestion","handleRenderSuggestions","handleSuggestionClick","onSuggestionSelected","selectedSuggestion","CREATE_TYPE","type","title","url","e","Object","keys","length","id","restLinkProps","URLInput","disableSuggestions","__nextHasNoMarginBottom","label","__","__experimentalRenderSuggestions","__experimentalFetchLinkSuggestions","__experimentalHandleURLSuggestions","__experimentalShowInitialSuggestions","onSubmit","event","hasSuggestion","trim","preventDefault","_default","exports"],"sources":["@wordpress/block-editor/src/components/link-control/search-input.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { forwardRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { URLInput } from '../';\nimport LinkControlSearchResults from './search-results';\nimport { CREATE_TYPE } from './constants';\nimport useSearchHandler from './use-search-handler';\n\n// Must be a function as otherwise URLInput will default\n// to the fetchLinkSuggestions passed in block editor settings\n// which will cause an unintended http request.\nconst noopSearchHandler = () => Promise.resolve( [] );\n\nconst noop = () => {};\n\nconst LinkControlSearchInput = forwardRef(\n\t(\n\t\t{\n\t\t\tvalue,\n\t\t\tchildren,\n\t\t\tcurrentLink = {},\n\t\t\tclassName = null,\n\t\t\tplaceholder = null,\n\t\t\twithCreateSuggestion = false,\n\t\t\tonCreateSuggestion = noop,\n\t\t\tonChange = noop,\n\t\t\tonSelect = noop,\n\t\t\tshowSuggestions = true,\n\t\t\trenderSuggestions = ( props ) => (\n\t\t\t\t<LinkControlSearchResults { ...props } />\n\t\t\t),\n\t\t\tfetchSuggestions = null,\n\t\t\tallowDirectEntry = true,\n\t\t\tshowInitialSuggestions = false,\n\t\t\tsuggestionsQuery = {},\n\t\t\twithURLSuggestion = true,\n\t\t\tcreateSuggestionButtonText,\n\t\t\thideLabelFromVision = false,\n\t\t},\n\t\tref\n\t) => {\n\t\tconst genericSearchHandler = useSearchHandler(\n\t\t\tsuggestionsQuery,\n\t\t\tallowDirectEntry,\n\t\t\twithCreateSuggestion,\n\t\t\twithURLSuggestion\n\t\t);\n\n\t\tconst searchHandler = showSuggestions\n\t\t\t? fetchSuggestions || genericSearchHandler\n\t\t\t: noopSearchHandler;\n\n\t\tconst instanceId = useInstanceId( LinkControlSearchInput );\n\t\tconst [ focusedSuggestion, setFocusedSuggestion ] = useState();\n\n\t\t/**\n\t\t * Handles the user moving between different suggestions. Does not handle\n\t\t * choosing an individual item.\n\t\t *\n\t\t * @param {string} selection the url of the selected suggestion.\n\t\t * @param {Object} suggestion the suggestion object.\n\t\t */\n\t\tconst onInputChange = ( selection, suggestion ) => {\n\t\t\tonChange( selection );\n\t\t\tsetFocusedSuggestion( suggestion );\n\t\t};\n\n\t\tconst handleRenderSuggestions = ( props ) =>\n\t\t\trenderSuggestions( {\n\t\t\t\t...props,\n\t\t\t\tinstanceId,\n\t\t\t\twithCreateSuggestion,\n\t\t\t\tcreateSuggestionButtonText,\n\t\t\t\tsuggestionsQuery,\n\t\t\t\thandleSuggestionClick: ( suggestion ) => {\n\t\t\t\t\tif ( props.handleSuggestionClick ) {\n\t\t\t\t\t\tprops.handleSuggestionClick( suggestion );\n\t\t\t\t\t}\n\t\t\t\t\tonSuggestionSelected( suggestion );\n\t\t\t\t},\n\t\t\t} );\n\n\t\tconst onSuggestionSelected = async ( selectedSuggestion ) => {\n\t\t\tlet suggestion = selectedSuggestion;\n\t\t\tif ( CREATE_TYPE === selectedSuggestion.type ) {\n\t\t\t\t// Create a new page and call onSelect with the output from the onCreateSuggestion callback.\n\t\t\t\ttry {\n\t\t\t\t\tsuggestion = await onCreateSuggestion(\n\t\t\t\t\t\tselectedSuggestion.title\n\t\t\t\t\t);\n\t\t\t\t\tif ( suggestion?.url ) {\n\t\t\t\t\t\tonSelect( suggestion );\n\t\t\t\t\t}\n\t\t\t\t} catch ( e ) {}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tallowDirectEntry ||\n\t\t\t\t( suggestion && Object.keys( suggestion ).length >= 1 )\n\t\t\t) {\n\t\t\t\tconst { id, url, ...restLinkProps } = currentLink ?? {};\n\t\t\t\tonSelect(\n\t\t\t\t\t// Some direct entries don't have types or IDs, and we still need to clear the previous ones.\n\t\t\t\t\t{ ...restLinkProps, ...suggestion },\n\t\t\t\t\tsuggestion\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\n\t\treturn (\n\t\t\t<div className=\"block-editor-link-control__search-input-container\">\n\t\t\t\t<URLInput\n\t\t\t\t\tdisableSuggestions={ currentLink?.url === value }\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onInputChange }\n\t\t\t\t\tplaceholder={ placeholder ?? __( 'Search or type url' ) }\n\t\t\t\t\t__experimentalRenderSuggestions={\n\t\t\t\t\t\tshowSuggestions ? handleRenderSuggestions : null\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalFetchLinkSuggestions={ searchHandler }\n\t\t\t\t\t__experimentalHandleURLSuggestions={ true }\n\t\t\t\t\t__experimentalShowInitialSuggestions={\n\t\t\t\t\t\tshowInitialSuggestions\n\t\t\t\t\t}\n\t\t\t\t\tonSubmit={ ( suggestion, event ) => {\n\t\t\t\t\t\tconst hasSuggestion = suggestion || focusedSuggestion;\n\n\t\t\t\t\t\t// If there is no suggestion and the value (ie: any manually entered URL) is empty\n\t\t\t\t\t\t// then don't allow submission otherwise we get empty links.\n\t\t\t\t\t\tif ( ! hasSuggestion && ! value?.trim()?.length ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tonSuggestionSelected(\n\t\t\t\t\t\t\t\thasSuggestion || { url: value }\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\tref={ ref }\n\t\t\t\t/>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t);\n\t}\n);\n\nexport default LinkControlSearchInput;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_compose","require","_element","_i18n","_","_searchResults","_interopRequireDefault","_constants","_useSearchHandler","noopSearchHandler","Promise","resolve","noop","LinkControlSearchInput","forwardRef","value","children","currentLink","className","placeholder","withCreateSuggestion","onCreateSuggestion","onChange","onSelect","showSuggestions","renderSuggestions","props","_react","createElement","default","fetchSuggestions","allowDirectEntry","showInitialSuggestions","suggestionsQuery","withURLSuggestion","createSuggestionButtonText","hideLabelFromVision","ref","genericSearchHandler","useSearchHandler","searchHandler","instanceId","useInstanceId","focusedSuggestion","setFocusedSuggestion","useState","onInputChange","selection","suggestion","handleRenderSuggestions","handleSuggestionClick","onSuggestionSelected","selectedSuggestion","CREATE_TYPE","type","title","url","e","Object","keys","length","id","restLinkProps","URLInput","disableSuggestions","__nextHasNoMarginBottom","label","__","__experimentalRenderSuggestions","__experimentalFetchLinkSuggestions","__experimentalHandleURLSuggestions","__experimentalShowInitialSuggestions","onSubmit","event","hasSuggestion","trim","preventDefault","_default","exports"],"sources":["@wordpress/block-editor/src/components/link-control/search-input.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { forwardRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { URLInput } from '../';\nimport LinkControlSearchResults from './search-results';\nimport { CREATE_TYPE } from './constants';\nimport useSearchHandler from './use-search-handler';\n\n// Must be a function as otherwise URLInput will default\n// to the fetchLinkSuggestions passed in block editor settings\n// which will cause an unintended http request.\nconst noopSearchHandler = () => Promise.resolve( [] );\n\nconst noop = () => {};\n\nconst LinkControlSearchInput = forwardRef(\n\t(\n\t\t{\n\t\t\tvalue,\n\t\t\tchildren,\n\t\t\tcurrentLink = {},\n\t\t\tclassName = null,\n\t\t\tplaceholder = null,\n\t\t\twithCreateSuggestion = false,\n\t\t\tonCreateSuggestion = noop,\n\t\t\tonChange = noop,\n\t\t\tonSelect = noop,\n\t\t\tshowSuggestions = true,\n\t\t\trenderSuggestions = ( props ) => (\n\t\t\t\t<LinkControlSearchResults { ...props } />\n\t\t\t),\n\t\t\tfetchSuggestions = null,\n\t\t\tallowDirectEntry = true,\n\t\t\tshowInitialSuggestions = false,\n\t\t\tsuggestionsQuery = {},\n\t\t\twithURLSuggestion = true,\n\t\t\tcreateSuggestionButtonText,\n\t\t\thideLabelFromVision = false,\n\t\t},\n\t\tref\n\t) => {\n\t\tconst genericSearchHandler = useSearchHandler(\n\t\t\tsuggestionsQuery,\n\t\t\tallowDirectEntry,\n\t\t\twithCreateSuggestion,\n\t\t\twithURLSuggestion\n\t\t);\n\n\t\tconst searchHandler = showSuggestions\n\t\t\t? fetchSuggestions || genericSearchHandler\n\t\t\t: noopSearchHandler;\n\n\t\tconst instanceId = useInstanceId( LinkControlSearchInput );\n\t\tconst [ focusedSuggestion, setFocusedSuggestion ] = useState();\n\n\t\t/**\n\t\t * Handles the user moving between different suggestions. Does not handle\n\t\t * choosing an individual item.\n\t\t *\n\t\t * @param {string} selection the url of the selected suggestion.\n\t\t * @param {Object} suggestion the suggestion object.\n\t\t */\n\t\tconst onInputChange = ( selection, suggestion ) => {\n\t\t\tonChange( selection );\n\t\t\tsetFocusedSuggestion( suggestion );\n\t\t};\n\n\t\tconst handleRenderSuggestions = ( props ) =>\n\t\t\trenderSuggestions( {\n\t\t\t\t...props,\n\t\t\t\tinstanceId,\n\t\t\t\twithCreateSuggestion,\n\t\t\t\tcreateSuggestionButtonText,\n\t\t\t\tsuggestionsQuery,\n\t\t\t\thandleSuggestionClick: ( suggestion ) => {\n\t\t\t\t\tif ( props.handleSuggestionClick ) {\n\t\t\t\t\t\tprops.handleSuggestionClick( suggestion );\n\t\t\t\t\t}\n\t\t\t\t\tonSuggestionSelected( suggestion );\n\t\t\t\t},\n\t\t\t} );\n\n\t\tconst onSuggestionSelected = async ( selectedSuggestion ) => {\n\t\t\tlet suggestion = selectedSuggestion;\n\t\t\tif ( CREATE_TYPE === selectedSuggestion.type ) {\n\t\t\t\t// Create a new page and call onSelect with the output from the onCreateSuggestion callback.\n\t\t\t\ttry {\n\t\t\t\t\tsuggestion = await onCreateSuggestion(\n\t\t\t\t\t\tselectedSuggestion.title\n\t\t\t\t\t);\n\t\t\t\t\tif ( suggestion?.url ) {\n\t\t\t\t\t\tonSelect( suggestion );\n\t\t\t\t\t}\n\t\t\t\t} catch ( e ) {}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tallowDirectEntry ||\n\t\t\t\t( suggestion && Object.keys( suggestion ).length >= 1 )\n\t\t\t) {\n\t\t\t\tconst { id, url, ...restLinkProps } = currentLink ?? {};\n\t\t\t\tonSelect(\n\t\t\t\t\t// Some direct entries don't have types or IDs, and we still need to clear the previous ones.\n\t\t\t\t\t{ ...restLinkProps, ...suggestion },\n\t\t\t\t\tsuggestion\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\n\t\treturn (\n\t\t\t<div className=\"block-editor-link-control__search-input-container\">\n\t\t\t\t<URLInput\n\t\t\t\t\tdisableSuggestions={ currentLink?.url === value }\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onInputChange }\n\t\t\t\t\tplaceholder={ placeholder ?? __( 'Search or type url' ) }\n\t\t\t\t\t__experimentalRenderSuggestions={\n\t\t\t\t\t\tshowSuggestions ? handleRenderSuggestions : null\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalFetchLinkSuggestions={ searchHandler }\n\t\t\t\t\t__experimentalHandleURLSuggestions={ true }\n\t\t\t\t\t__experimentalShowInitialSuggestions={\n\t\t\t\t\t\tshowInitialSuggestions\n\t\t\t\t\t}\n\t\t\t\t\tonSubmit={ ( suggestion, event ) => {\n\t\t\t\t\t\tconst hasSuggestion = suggestion || focusedSuggestion;\n\n\t\t\t\t\t\t// If there is no suggestion and the value (ie: any manually entered URL) is empty\n\t\t\t\t\t\t// then don't allow submission otherwise we get empty links.\n\t\t\t\t\t\tif ( ! hasSuggestion && ! value?.trim()?.length ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tonSuggestionSelected(\n\t\t\t\t\t\t\t\thasSuggestion || { url: value }\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\tref={ ref }\n\t\t\t\t/>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t);\n\t}\n);\n\nexport default LinkControlSearchInput;\n"],"mappings":";;;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAKA,IAAAG,CAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AACA,IAAAO,iBAAA,GAAAF,sBAAA,CAAAL,OAAA;AAbA;AACA;AACA;;AAKA;AACA;AACA;;AAMA;AACA;AACA;AACA,MAAMQ,iBAAiB,GAAGA,CAAA,KAAMC,OAAO,CAACC,OAAO,CAAE,EAAG,CAAC;AAErD,MAAMC,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,MAAMC,sBAAsB,GAAG,IAAAC,mBAAU,EACxC,CACC;EACCC,KAAK;EACLC,QAAQ;EACRC,WAAW,GAAG,CAAC,CAAC;EAChBC,SAAS,GAAG,IAAI;EAChBC,WAAW,GAAG,IAAI;EAClBC,oBAAoB,GAAG,KAAK;EAC5BC,kBAAkB,GAAGT,IAAI;EACzBU,QAAQ,GAAGV,IAAI;EACfW,QAAQ,GAAGX,IAAI;EACfY,eAAe,GAAG,IAAI;EACtBC,iBAAiB,GAAKC,KAAK,IAC1B,IAAAC,MAAA,CAAAC,aAAA,EAACvB,cAAA,CAAAwB,OAAwB;IAAA,GAAMH;EAAK,CAAI,CACxC;EACDI,gBAAgB,GAAG,IAAI;EACvBC,gBAAgB,GAAG,IAAI;EACvBC,sBAAsB,GAAG,KAAK;EAC9BC,gBAAgB,GAAG,CAAC,CAAC;EACrBC,iBAAiB,GAAG,IAAI;EACxBC,0BAA0B;EAC1BC,mBAAmB,GAAG;AACvB,CAAC,EACDC,GAAG,KACC;EACJ,MAAMC,oBAAoB,GAAG,IAAAC,yBAAgB,EAC5CN,gBAAgB,EAChBF,gBAAgB,EAChBX,oBAAoB,EACpBc,iBACD,CAAC;EAED,MAAMM,aAAa,GAAGhB,eAAe,GAClCM,gBAAgB,IAAIQ,oBAAoB,GACxC7B,iBAAiB;EAEpB,MAAMgC,UAAU,GAAG,IAAAC,sBAAa,EAAE7B,sBAAuB,CAAC;EAC1D,MAAM,CAAE8B,iBAAiB,EAAEC,oBAAoB,CAAE,GAAG,IAAAC,iBAAQ,EAAC,CAAC;;EAE9D;AACF;AACA;AACA;AACA;AACA;AACA;EACE,MAAMC,aAAa,GAAGA,CAAEC,SAAS,EAAEC,UAAU,KAAM;IAClD1B,QAAQ,CAAEyB,SAAU,CAAC;IACrBH,oBAAoB,CAAEI,UAAW,CAAC;EACnC,CAAC;EAED,MAAMC,uBAAuB,GAAKvB,KAAK,IACtCD,iBAAiB,CAAE;IAClB,GAAGC,KAAK;IACRe,UAAU;IACVrB,oBAAoB;IACpBe,0BAA0B;IAC1BF,gBAAgB;IAChBiB,qBAAqB,EAAIF,UAAU,IAAM;MACxC,IAAKtB,KAAK,CAACwB,qBAAqB,EAAG;QAClCxB,KAAK,CAACwB,qBAAqB,CAAEF,UAAW,CAAC;MAC1C;MACAG,oBAAoB,CAAEH,UAAW,CAAC;IACnC;EACD,CAAE,CAAC;EAEJ,MAAMG,oBAAoB,GAAG,MAAQC,kBAAkB,IAAM;IAC5D,IAAIJ,UAAU,GAAGI,kBAAkB;IACnC,IAAKC,sBAAW,KAAKD,kBAAkB,CAACE,IAAI,EAAG;MAC9C;MACA,IAAI;QACHN,UAAU,GAAG,MAAM3B,kBAAkB,CACpC+B,kBAAkB,CAACG,KACpB,CAAC;QACD,IAAKP,UAAU,EAAEQ,GAAG,EAAG;UACtBjC,QAAQ,CAAEyB,UAAW,CAAC;QACvB;MACD,CAAC,CAAC,OAAQS,CAAC,EAAG,CAAC;MACf;IACD;IAEA,IACC1B,gBAAgB,IACdiB,UAAU,IAAIU,MAAM,CAACC,IAAI,CAAEX,UAAW,CAAC,CAACY,MAAM,IAAI,CAAG,EACtD;MACD,MAAM;QAAEC,EAAE;QAAEL,GAAG;QAAE,GAAGM;MAAc,CAAC,GAAG7C,WAAW,aAAXA,WAAW,cAAXA,WAAW,GAAI,CAAC,CAAC;MACvDM,QAAQ;MACP;MACA;QAAE,GAAGuC,aAAa;QAAE,GAAGd;MAAW,CAAC,EACnCA,UACD,CAAC;IACF;EACD,CAAC;EAED,OACC,IAAArB,MAAA,CAAAC,aAAA;IAAKV,SAAS,EAAC;EAAmD,GACjE,IAAAS,MAAA,CAAAC,aAAA,EAACxB,CAAA,CAAA2D,QAAQ;IACRC,kBAAkB,EAAG/C,WAAW,EAAEuC,GAAG,KAAKzC,KAAO;IACjDkD,uBAAuB;IACvBC,KAAK,EAAG,IAAAC,QAAE,EAAE,MAAO,CAAG;IACtB/B,mBAAmB,EAAGA,mBAAqB;IAC3ClB,SAAS,EAAGA,SAAW;IACvBH,KAAK,EAAGA,KAAO;IACfO,QAAQ,EAAGwB,aAAe;IAC1B3B,WAAW,EAAGA,WAAW,aAAXA,WAAW,cAAXA,WAAW,GAAI,IAAAgD,QAAE,EAAE,oBAAqB,CAAG;IACzDC,+BAA+B,EAC9B5C,eAAe,GAAGyB,uBAAuB,GAAG,IAC5C;IACDoB,kCAAkC,EAAG7B,aAAe;IACpD8B,kCAAkC,EAAG,IAAM;IAC3CC,oCAAoC,EACnCvC,sBACA;IACDwC,QAAQ,EAAGA,CAAExB,UAAU,EAAEyB,KAAK,KAAM;MACnC,MAAMC,aAAa,GAAG1B,UAAU,IAAIL,iBAAiB;;MAErD;MACA;MACA,IAAK,CAAE+B,aAAa,IAAI,CAAE3D,KAAK,EAAE4D,IAAI,CAAC,CAAC,EAAEf,MAAM,EAAG;QACjDa,KAAK,CAACG,cAAc,CAAC,CAAC;MACvB,CAAC,MAAM;QACNzB,oBAAoB,CACnBuB,aAAa,IAAI;UAAElB,GAAG,EAAEzC;QAAM,CAC/B,CAAC;MACF;IACD,CAAG;IACHsB,GAAG,EAAGA;EAAK,CACX,CAAC,EACArB,QACE,CAAC;AAER,CACD,CAAC;AAAC,IAAA6D,QAAA,GAAAC,OAAA,CAAAjD,OAAA,GAEahB,sBAAsB"}
|
|
@@ -121,6 +121,5 @@ function getVisualTypeName(suggestion) {
|
|
|
121
121
|
// Rename 'post_tag' to 'tag'. Ideally, the API would return the localised CPT or taxonomy label.
|
|
122
122
|
return suggestion.type === 'post_tag' ? 'tag' : suggestion.type;
|
|
123
123
|
}
|
|
124
|
-
var _default = LinkControlSearchItem;
|
|
125
|
-
exports.default = _default;
|
|
124
|
+
var _default = exports.default = LinkControlSearchItem;
|
|
126
125
|
//# sourceMappingURL=search-item.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_components","_icons","_dom","_url","_compose","ICONS_MAP","post","postList","page","post_tag","tag","category","attachment","file","SearchItemIcon","isURL","suggestion","icon","globe","type","isFrontPage","home","isBlogHome","verse","_react","createElement","Icon","className","addLeadingSlash","url","trimmedURL","trim","length","replace","removeTrailingSlash","partialRight","fn","partialArgs","args","defaultTo","d","v","undefined","getURLForDisplay","pipe","safeDecodeURI","getPath","filterURLForDisplay","LinkControlSearchItem","itemProps","searchTerm","onClick","shouldShowType","info","__","MenuItem","iconPosition","shortcut","getVisualTypeName","TextHighlight","text","stripHTML","title","highlight","exports","_default","default"],"sources":["@wordpress/block-editor/src/components/link-control/search-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { MenuItem, TextHighlight } from '@wordpress/components';\nimport {\n\tIcon,\n\tglobe,\n\tpage,\n\ttag,\n\tpostList,\n\tcategory,\n\tfile,\n\thome,\n\tverse,\n} from '@wordpress/icons';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { safeDecodeURI, filterURLForDisplay, getPath } from '@wordpress/url';\nimport { pipe } from '@wordpress/compose';\n\nconst ICONS_MAP = {\n\tpost: postList,\n\tpage,\n\tpost_tag: tag,\n\tcategory,\n\tattachment: file,\n};\n\nfunction SearchItemIcon( { isURL, suggestion } ) {\n\tlet icon = null;\n\n\tif ( isURL ) {\n\t\ticon = globe;\n\t} else if ( suggestion.type in ICONS_MAP ) {\n\t\ticon = ICONS_MAP[ suggestion.type ];\n\t\tif ( suggestion.type === 'page' ) {\n\t\t\tif ( suggestion.isFrontPage ) {\n\t\t\t\ticon = home;\n\t\t\t}\n\t\t\tif ( suggestion.isBlogHome ) {\n\t\t\t\ticon = verse;\n\t\t\t}\n\t\t}\n\t}\n\n\tif ( icon ) {\n\t\treturn (\n\t\t\t<Icon\n\t\t\t\tclassName=\"block-editor-link-control__search-item-icon\"\n\t\t\t\ticon={ icon }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn null;\n}\n\n/**\n * Adds a leading slash to a url if it doesn't already have one.\n * @param {string} url the url to add a leading slash to.\n * @return {string} the url with a leading slash.\n */\nfunction addLeadingSlash( url ) {\n\tconst trimmedURL = url?.trim();\n\n\tif ( ! trimmedURL?.length ) return url;\n\n\treturn url?.replace( /^\\/?/, '/' );\n}\n\nfunction removeTrailingSlash( url ) {\n\tconst trimmedURL = url?.trim();\n\n\tif ( ! trimmedURL?.length ) return url;\n\n\treturn url?.replace( /\\/$/, '' );\n}\n\nconst partialRight =\n\t( fn, ...partialArgs ) =>\n\t( ...args ) =>\n\t\tfn( ...args, ...partialArgs );\n\nconst defaultTo = ( d ) => ( v ) => {\n\treturn v === null || v === undefined || v !== v ? d : v;\n};\n\n/**\n * Prepares a URL for display in the UI.\n * - decodes the URL.\n * - filters it (removes protocol, www, etc.).\n * - truncates it if necessary.\n * - adds a leading slash.\n * @param {string} url the url.\n * @return {string} the processed url to display.\n */\nfunction getURLForDisplay( url ) {\n\tif ( ! url ) return url;\n\n\treturn pipe(\n\t\tsafeDecodeURI,\n\t\tgetPath,\n\t\tdefaultTo( '' ),\n\t\tpartialRight( filterURLForDisplay, 24 ),\n\t\tremoveTrailingSlash,\n\t\taddLeadingSlash\n\t)( url );\n}\n\nexport const LinkControlSearchItem = ( {\n\titemProps,\n\tsuggestion,\n\tsearchTerm,\n\tonClick,\n\tisURL = false,\n\tshouldShowType = false,\n} ) => {\n\tconst info = isURL\n\t\t? __( 'Press ENTER to add this link' )\n\t\t: getURLForDisplay( suggestion.url );\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...itemProps }\n\t\t\tinfo={ info }\n\t\t\ticonPosition=\"left\"\n\t\t\ticon={\n\t\t\t\t<SearchItemIcon suggestion={ suggestion } isURL={ isURL } />\n\t\t\t}\n\t\t\tonClick={ onClick }\n\t\t\tshortcut={ shouldShowType && getVisualTypeName( suggestion ) }\n\t\t\tclassName=\"block-editor-link-control__search-item\"\n\t\t>\n\t\t\t<TextHighlight\n\t\t\t\t// The component expects a plain text string.\n\t\t\t\ttext={ stripHTML( suggestion.title ) }\n\t\t\t\thighlight={ searchTerm }\n\t\t\t/>\n\t\t</MenuItem>\n\t);\n};\n\nfunction getVisualTypeName( suggestion ) {\n\tif ( suggestion.isFrontPage ) {\n\t\treturn 'front page';\n\t}\n\n\tif ( suggestion.isBlogHome ) {\n\t\treturn 'blog home';\n\t}\n\n\t// Rename 'post_tag' to 'tag'. Ideally, the API would return the localised CPT or taxonomy label.\n\treturn suggestion.type === 'post_tag' ? 'tag' : suggestion.type;\n}\n\nexport default LinkControlSearchItem;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_i18n","require","_components","_icons","_dom","_url","_compose","ICONS_MAP","post","postList","page","post_tag","tag","category","attachment","file","SearchItemIcon","isURL","suggestion","icon","globe","type","isFrontPage","home","isBlogHome","verse","_react","createElement","Icon","className","addLeadingSlash","url","trimmedURL","trim","length","replace","removeTrailingSlash","partialRight","fn","partialArgs","args","defaultTo","d","v","undefined","getURLForDisplay","pipe","safeDecodeURI","getPath","filterURLForDisplay","LinkControlSearchItem","itemProps","searchTerm","onClick","shouldShowType","info","__","MenuItem","iconPosition","shortcut","getVisualTypeName","TextHighlight","text","stripHTML","title","highlight","exports","_default","default"],"sources":["@wordpress/block-editor/src/components/link-control/search-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { MenuItem, TextHighlight } from '@wordpress/components';\nimport {\n\tIcon,\n\tglobe,\n\tpage,\n\ttag,\n\tpostList,\n\tcategory,\n\tfile,\n\thome,\n\tverse,\n} from '@wordpress/icons';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { safeDecodeURI, filterURLForDisplay, getPath } from '@wordpress/url';\nimport { pipe } from '@wordpress/compose';\n\nconst ICONS_MAP = {\n\tpost: postList,\n\tpage,\n\tpost_tag: tag,\n\tcategory,\n\tattachment: file,\n};\n\nfunction SearchItemIcon( { isURL, suggestion } ) {\n\tlet icon = null;\n\n\tif ( isURL ) {\n\t\ticon = globe;\n\t} else if ( suggestion.type in ICONS_MAP ) {\n\t\ticon = ICONS_MAP[ suggestion.type ];\n\t\tif ( suggestion.type === 'page' ) {\n\t\t\tif ( suggestion.isFrontPage ) {\n\t\t\t\ticon = home;\n\t\t\t}\n\t\t\tif ( suggestion.isBlogHome ) {\n\t\t\t\ticon = verse;\n\t\t\t}\n\t\t}\n\t}\n\n\tif ( icon ) {\n\t\treturn (\n\t\t\t<Icon\n\t\t\t\tclassName=\"block-editor-link-control__search-item-icon\"\n\t\t\t\ticon={ icon }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn null;\n}\n\n/**\n * Adds a leading slash to a url if it doesn't already have one.\n * @param {string} url the url to add a leading slash to.\n * @return {string} the url with a leading slash.\n */\nfunction addLeadingSlash( url ) {\n\tconst trimmedURL = url?.trim();\n\n\tif ( ! trimmedURL?.length ) return url;\n\n\treturn url?.replace( /^\\/?/, '/' );\n}\n\nfunction removeTrailingSlash( url ) {\n\tconst trimmedURL = url?.trim();\n\n\tif ( ! trimmedURL?.length ) return url;\n\n\treturn url?.replace( /\\/$/, '' );\n}\n\nconst partialRight =\n\t( fn, ...partialArgs ) =>\n\t( ...args ) =>\n\t\tfn( ...args, ...partialArgs );\n\nconst defaultTo = ( d ) => ( v ) => {\n\treturn v === null || v === undefined || v !== v ? d : v;\n};\n\n/**\n * Prepares a URL for display in the UI.\n * - decodes the URL.\n * - filters it (removes protocol, www, etc.).\n * - truncates it if necessary.\n * - adds a leading slash.\n * @param {string} url the url.\n * @return {string} the processed url to display.\n */\nfunction getURLForDisplay( url ) {\n\tif ( ! url ) return url;\n\n\treturn pipe(\n\t\tsafeDecodeURI,\n\t\tgetPath,\n\t\tdefaultTo( '' ),\n\t\tpartialRight( filterURLForDisplay, 24 ),\n\t\tremoveTrailingSlash,\n\t\taddLeadingSlash\n\t)( url );\n}\n\nexport const LinkControlSearchItem = ( {\n\titemProps,\n\tsuggestion,\n\tsearchTerm,\n\tonClick,\n\tisURL = false,\n\tshouldShowType = false,\n} ) => {\n\tconst info = isURL\n\t\t? __( 'Press ENTER to add this link' )\n\t\t: getURLForDisplay( suggestion.url );\n\n\treturn (\n\t\t<MenuItem\n\t\t\t{ ...itemProps }\n\t\t\tinfo={ info }\n\t\t\ticonPosition=\"left\"\n\t\t\ticon={\n\t\t\t\t<SearchItemIcon suggestion={ suggestion } isURL={ isURL } />\n\t\t\t}\n\t\t\tonClick={ onClick }\n\t\t\tshortcut={ shouldShowType && getVisualTypeName( suggestion ) }\n\t\t\tclassName=\"block-editor-link-control__search-item\"\n\t\t>\n\t\t\t<TextHighlight\n\t\t\t\t// The component expects a plain text string.\n\t\t\t\ttext={ stripHTML( suggestion.title ) }\n\t\t\t\thighlight={ searchTerm }\n\t\t\t/>\n\t\t</MenuItem>\n\t);\n};\n\nfunction getVisualTypeName( suggestion ) {\n\tif ( suggestion.isFrontPage ) {\n\t\treturn 'front page';\n\t}\n\n\tif ( suggestion.isBlogHome ) {\n\t\treturn 'blog home';\n\t}\n\n\t// Rename 'post_tag' to 'tag'. Ideally, the API would return the localised CPT or taxonomy label.\n\treturn suggestion.type === 'post_tag' ? 'tag' : suggestion.type;\n}\n\nexport default LinkControlSearchItem;\n"],"mappings":"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"}
|
|
@@ -54,6 +54,5 @@ function LinkSettingsDrawer({
|
|
|
54
54
|
className: "block-editor-link-control__drawer-inner"
|
|
55
55
|
}, children))));
|
|
56
56
|
}
|
|
57
|
-
var _default = LinkSettingsDrawer;
|
|
58
|
-
exports.default = _default;
|
|
57
|
+
var _default = exports.default = LinkSettingsDrawer;
|
|
59
58
|
//# sourceMappingURL=settings-drawer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_icons","_compose","_i18n","_element","LinkSettingsDrawer","children","settingsOpen","setSettingsOpen","prefersReducedMotion","useReducedMotion","MaybeAnimatePresence","Fragment","AnimatePresence","MaybeMotionDiv","motion","div","id","useInstanceId","settingsDrawerId","_react","createElement","Button","className","onClick","icon","isRTL","chevronLeftSmall","chevronRightSmall","_x","hidden","initial","animate","exit","variants","open","opacity","height","collapsed","transition","duration","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/link-control/settings-drawer.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { chevronLeftSmall, chevronRightSmall } from '@wordpress/icons';\nimport { useReducedMotion, useInstanceId } from '@wordpress/compose';\nimport { _x, isRTL } from '@wordpress/i18n';\nimport { Fragment } from '@wordpress/element';\n\nfunction LinkSettingsDrawer( { children, settingsOpen, setSettingsOpen } ) {\n\tconst prefersReducedMotion = useReducedMotion();\n\tconst MaybeAnimatePresence = prefersReducedMotion\n\t\t? Fragment\n\t\t: AnimatePresence;\n\tconst MaybeMotionDiv = prefersReducedMotion ? 'div' : motion.div;\n\n\tconst id = useInstanceId( LinkSettingsDrawer );\n\n\tconst settingsDrawerId = `link-control-settings-drawer-${ id }`;\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tclassName=\"block-editor-link-control__drawer-toggle\"\n\t\t\t\taria-expanded={ settingsOpen }\n\t\t\t\tonClick={ () => setSettingsOpen( ! settingsOpen ) }\n\t\t\t\ticon={ isRTL() ? chevronLeftSmall : chevronRightSmall }\n\t\t\t\taria-controls={ settingsDrawerId }\n\t\t\t>\n\t\t\t\t{ _x( 'Advanced', 'Additional link settings' ) }\n\t\t\t</Button>\n\t\t\t<MaybeAnimatePresence>\n\t\t\t\t{ settingsOpen && (\n\t\t\t\t\t<MaybeMotionDiv\n\t\t\t\t\t\tclassName=\"block-editor-link-control__drawer\"\n\t\t\t\t\t\thidden={ ! settingsOpen }\n\t\t\t\t\t\tid={ settingsDrawerId }\n\t\t\t\t\t\tinitial=\"collapsed\"\n\t\t\t\t\t\tanimate=\"open\"\n\t\t\t\t\t\texit=\"collapsed\"\n\t\t\t\t\t\tvariants={ {\n\t\t\t\t\t\t\topen: { opacity: 1, height: 'auto' },\n\t\t\t\t\t\t\tcollapsed: { opacity: 0, height: 0 },\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\tduration: 0.1,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"block-editor-link-control__drawer-inner\">\n\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</MaybeMotionDiv>\n\t\t\t\t) }\n\t\t\t</MaybeAnimatePresence>\n\t\t</>\n\t);\n}\n\nexport default LinkSettingsDrawer;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAXA;AACA;AACA;;AAWA,SAASK,kBAAkBA,CAAE;EAAEC,QAAQ;EAAEC,YAAY;EAAEC;AAAgB,CAAC,EAAG;EAC1E,MAAMC,oBAAoB,GAAG,IAAAC,yBAAgB,EAAC,CAAC;EAC/C,MAAMC,oBAAoB,GAAGF,oBAAoB,GAC9CG,iBAAQ,GACRC,qCAAe;EAClB,MAAMC,cAAc,GAAGL,oBAAoB,GAAG,KAAK,GAAGM,4BAAM,CAACC,GAAG;EAEhE,MAAMC,EAAE,GAAG,IAAAC,sBAAa,EAAEb,kBAAmB,CAAC;EAE9C,MAAMc,gBAAgB,GAAI,gCAAgCF,EAAI,EAAC;EAE/D,OACC,IAAAG,MAAA,CAAAC,aAAA,EAAAjB,QAAA,CAAAQ,QAAA,QACC,IAAAQ,MAAA,CAAAC,aAAA,EAACtB,WAAA,CAAAuB,MAAM;IACNC,SAAS,EAAC,0CAA0C;IACpD,iBAAgBhB,YAAc;IAC9BiB,OAAO,EAAGA,CAAA,KAAMhB,eAAe,CAAE,CAAED,YAAa,CAAG;IACnDkB,IAAI,EAAG,IAAAC,WAAK,EAAC,CAAC,GAAGC,uBAAgB,GAAGC,wBAAmB;IACvD,iBAAgBT;EAAkB,GAEhC,IAAAU,QAAE,EAAE,UAAU,EAAE,0BAA2B,CACtC,CAAC,EACT,IAAAT,MAAA,CAAAC,aAAA,EAACV,oBAAoB,QAClBJ,YAAY,IACb,IAAAa,MAAA,CAAAC,aAAA,EAACP,cAAc;IACdS,SAAS,EAAC,mCAAmC;IAC7CO,MAAM,EAAG,CAAEvB,YAAc;IACzBU,EAAE,EAAGE,gBAAkB;IACvBY,OAAO,EAAC,WAAW;IACnBC,OAAO,EAAC,MAAM;IACdC,IAAI,EAAC,WAAW;IAChBC,QAAQ,EAAG;MACVC,IAAI,EAAE;QAAEC,OAAO,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAO,CAAC;MACpCC,SAAS,EAAE;QAAEF,OAAO,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAE;IACpC,CAAG;IACHE,UAAU,EAAG;MACZC,QAAQ,EAAE;IACX;EAAG,GAEH,IAAApB,MAAA,CAAAC,aAAA;IAAKE,SAAS,EAAC;EAAyC,GACrDjB,QACE,CACU,CAEI,CACrB,CAAC;AAEL;AAAC,IAAAmC,QAAA,
|
|
1
|
+
{"version":3,"names":["_components","require","_icons","_compose","_i18n","_element","LinkSettingsDrawer","children","settingsOpen","setSettingsOpen","prefersReducedMotion","useReducedMotion","MaybeAnimatePresence","Fragment","AnimatePresence","MaybeMotionDiv","motion","div","id","useInstanceId","settingsDrawerId","_react","createElement","Button","className","onClick","icon","isRTL","chevronLeftSmall","chevronRightSmall","_x","hidden","initial","animate","exit","variants","open","opacity","height","collapsed","transition","duration","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/link-control/settings-drawer.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { chevronLeftSmall, chevronRightSmall } from '@wordpress/icons';\nimport { useReducedMotion, useInstanceId } from '@wordpress/compose';\nimport { _x, isRTL } from '@wordpress/i18n';\nimport { Fragment } from '@wordpress/element';\n\nfunction LinkSettingsDrawer( { children, settingsOpen, setSettingsOpen } ) {\n\tconst prefersReducedMotion = useReducedMotion();\n\tconst MaybeAnimatePresence = prefersReducedMotion\n\t\t? Fragment\n\t\t: AnimatePresence;\n\tconst MaybeMotionDiv = prefersReducedMotion ? 'div' : motion.div;\n\n\tconst id = useInstanceId( LinkSettingsDrawer );\n\n\tconst settingsDrawerId = `link-control-settings-drawer-${ id }`;\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tclassName=\"block-editor-link-control__drawer-toggle\"\n\t\t\t\taria-expanded={ settingsOpen }\n\t\t\t\tonClick={ () => setSettingsOpen( ! settingsOpen ) }\n\t\t\t\ticon={ isRTL() ? chevronLeftSmall : chevronRightSmall }\n\t\t\t\taria-controls={ settingsDrawerId }\n\t\t\t>\n\t\t\t\t{ _x( 'Advanced', 'Additional link settings' ) }\n\t\t\t</Button>\n\t\t\t<MaybeAnimatePresence>\n\t\t\t\t{ settingsOpen && (\n\t\t\t\t\t<MaybeMotionDiv\n\t\t\t\t\t\tclassName=\"block-editor-link-control__drawer\"\n\t\t\t\t\t\thidden={ ! settingsOpen }\n\t\t\t\t\t\tid={ settingsDrawerId }\n\t\t\t\t\t\tinitial=\"collapsed\"\n\t\t\t\t\t\tanimate=\"open\"\n\t\t\t\t\t\texit=\"collapsed\"\n\t\t\t\t\t\tvariants={ {\n\t\t\t\t\t\t\topen: { opacity: 1, height: 'auto' },\n\t\t\t\t\t\t\tcollapsed: { opacity: 0, height: 0 },\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\tduration: 0.1,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"block-editor-link-control__drawer-inner\">\n\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</MaybeMotionDiv>\n\t\t\t\t) }\n\t\t\t</MaybeAnimatePresence>\n\t\t</>\n\t);\n}\n\nexport default LinkSettingsDrawer;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAXA;AACA;AACA;;AAWA,SAASK,kBAAkBA,CAAE;EAAEC,QAAQ;EAAEC,YAAY;EAAEC;AAAgB,CAAC,EAAG;EAC1E,MAAMC,oBAAoB,GAAG,IAAAC,yBAAgB,EAAC,CAAC;EAC/C,MAAMC,oBAAoB,GAAGF,oBAAoB,GAC9CG,iBAAQ,GACRC,qCAAe;EAClB,MAAMC,cAAc,GAAGL,oBAAoB,GAAG,KAAK,GAAGM,4BAAM,CAACC,GAAG;EAEhE,MAAMC,EAAE,GAAG,IAAAC,sBAAa,EAAEb,kBAAmB,CAAC;EAE9C,MAAMc,gBAAgB,GAAI,gCAAgCF,EAAI,EAAC;EAE/D,OACC,IAAAG,MAAA,CAAAC,aAAA,EAAAjB,QAAA,CAAAQ,QAAA,QACC,IAAAQ,MAAA,CAAAC,aAAA,EAACtB,WAAA,CAAAuB,MAAM;IACNC,SAAS,EAAC,0CAA0C;IACpD,iBAAgBhB,YAAc;IAC9BiB,OAAO,EAAGA,CAAA,KAAMhB,eAAe,CAAE,CAAED,YAAa,CAAG;IACnDkB,IAAI,EAAG,IAAAC,WAAK,EAAC,CAAC,GAAGC,uBAAgB,GAAGC,wBAAmB;IACvD,iBAAgBT;EAAkB,GAEhC,IAAAU,QAAE,EAAE,UAAU,EAAE,0BAA2B,CACtC,CAAC,EACT,IAAAT,MAAA,CAAAC,aAAA,EAACV,oBAAoB,QAClBJ,YAAY,IACb,IAAAa,MAAA,CAAAC,aAAA,EAACP,cAAc;IACdS,SAAS,EAAC,mCAAmC;IAC7CO,MAAM,EAAG,CAAEvB,YAAc;IACzBU,EAAE,EAAGE,gBAAkB;IACvBY,OAAO,EAAC,WAAW;IACnBC,OAAO,EAAC,MAAM;IACdC,IAAI,EAAC,WAAW;IAChBC,QAAQ,EAAG;MACVC,IAAI,EAAE;QAAEC,OAAO,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAO,CAAC;MACpCC,SAAS,EAAE;QAAEF,OAAO,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAE;IACpC,CAAG;IACHE,UAAU,EAAG;MACZC,QAAQ,EAAE;IACX;EAAG,GAEH,IAAApB,MAAA,CAAAC,aAAA;IAAKE,SAAS,EAAC;EAAyC,GACrDjB,QACE,CACU,CAEI,CACrB,CAAC;AAEL;AAAC,IAAAmC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEctC,kBAAkB"}
|
|
@@ -41,6 +41,5 @@ const LinkControlSettings = ({
|
|
|
41
41
|
as: "legend"
|
|
42
42
|
}, (0, _i18n.__)('Currently selected link settings')), theSettings);
|
|
43
43
|
};
|
|
44
|
-
var _default = LinkControlSettings;
|
|
45
|
-
exports.default = _default;
|
|
44
|
+
var _default = exports.default = LinkControlSettings;
|
|
46
45
|
//# sourceMappingURL=settings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_components","noop","LinkControlSettings","value","onChange","settings","length","handleSettingChange","setting","newValue","id","theSettings","map","_react","createElement","CheckboxControl","__nextHasNoMarginBottom","className","key","label","title","checked","help","VisuallyHidden","as","__","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/link-control/settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { CheckboxControl, VisuallyHidden } from '@wordpress/components';\n\nconst noop = () => {};\n\nconst LinkControlSettings = ( { value, onChange = noop, settings } ) => {\n\tif ( ! settings || ! settings.length ) {\n\t\treturn null;\n\t}\n\n\tconst handleSettingChange = ( setting ) => ( newValue ) => {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\t[ setting.id ]: newValue,\n\t\t} );\n\t};\n\n\tconst theSettings = settings.map( ( setting ) => (\n\t\t<CheckboxControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName=\"block-editor-link-control__setting\"\n\t\t\tkey={ setting.id }\n\t\t\tlabel={ setting.title }\n\t\t\tonChange={ handleSettingChange( setting ) }\n\t\t\tchecked={ value ? !! value[ setting.id ] : false }\n\t\t\thelp={ setting?.help }\n\t\t/>\n\t) );\n\n\treturn (\n\t\t<fieldset className=\"block-editor-link-control__settings\">\n\t\t\t<VisuallyHidden as=\"legend\">\n\t\t\t\t{ __( 'Currently selected link settings' ) }\n\t\t\t</VisuallyHidden>\n\t\t\t{ theSettings }\n\t\t</fieldset>\n\t);\n};\n\nexport default LinkControlSettings;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAJA;AACA;AACA;;AAIA,MAAME,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,MAAMC,mBAAmB,GAAGA,CAAE;EAAEC,KAAK;EAAEC,QAAQ,GAAGH,IAAI;EAAEI;AAAS,CAAC,KAAM;EACvE,IAAK,CAAEA,QAAQ,IAAI,CAAEA,QAAQ,CAACC,MAAM,EAAG;IACtC,OAAO,IAAI;EACZ;EAEA,MAAMC,mBAAmB,GAAKC,OAAO,IAAQC,QAAQ,IAAM;IAC1DL,QAAQ,CAAE;MACT,GAAGD,KAAK;MACR,CAAEK,OAAO,CAACE,EAAE,GAAID;IACjB,CAAE,CAAC;EACJ,CAAC;EAED,MAAME,WAAW,GAAGN,QAAQ,CAACO,GAAG,CAAIJ,OAAO,IAC1C,IAAAK,MAAA,CAAAC,aAAA,EAACd,WAAA,CAAAe,eAAe;IACfC,uBAAuB;IACvBC,SAAS,EAAC,oCAAoC;IAC9CC,GAAG,EAAGV,OAAO,CAACE,EAAI;IAClBS,KAAK,EAAGX,OAAO,CAACY,KAAO;IACvBhB,QAAQ,EAAGG,mBAAmB,CAAEC,OAAQ,CAAG;IAC3Ca,OAAO,EAAGlB,KAAK,GAAG,CAAC,CAAEA,KAAK,CAAEK,OAAO,CAACE,EAAE,CAAE,GAAG,KAAO;IAClDY,IAAI,EAAGd,OAAO,EAAEc;EAAM,CACtB,CACA,CAAC;EAEH,OACC,IAAAT,MAAA,CAAAC,aAAA;IAAUG,SAAS,EAAC;EAAqC,GACxD,IAAAJ,MAAA,CAAAC,aAAA,EAACd,WAAA,CAAAuB,cAAc;IAACC,EAAE,EAAC;EAAQ,GACxB,IAAAC,QAAE,EAAE,kCAAmC,CAC1B,CAAC,EACfd,WACO,CAAC;AAEb,CAAC;AAAC,IAAAe,QAAA,
|
|
1
|
+
{"version":3,"names":["_i18n","require","_components","noop","LinkControlSettings","value","onChange","settings","length","handleSettingChange","setting","newValue","id","theSettings","map","_react","createElement","CheckboxControl","__nextHasNoMarginBottom","className","key","label","title","checked","help","VisuallyHidden","as","__","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/link-control/settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { CheckboxControl, VisuallyHidden } from '@wordpress/components';\n\nconst noop = () => {};\n\nconst LinkControlSettings = ( { value, onChange = noop, settings } ) => {\n\tif ( ! settings || ! settings.length ) {\n\t\treturn null;\n\t}\n\n\tconst handleSettingChange = ( setting ) => ( newValue ) => {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\t[ setting.id ]: newValue,\n\t\t} );\n\t};\n\n\tconst theSettings = settings.map( ( setting ) => (\n\t\t<CheckboxControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName=\"block-editor-link-control__setting\"\n\t\t\tkey={ setting.id }\n\t\t\tlabel={ setting.title }\n\t\t\tonChange={ handleSettingChange( setting ) }\n\t\t\tchecked={ value ? !! value[ setting.id ] : false }\n\t\t\thelp={ setting?.help }\n\t\t/>\n\t) );\n\n\treturn (\n\t\t<fieldset className=\"block-editor-link-control__settings\">\n\t\t\t<VisuallyHidden as=\"legend\">\n\t\t\t\t{ __( 'Currently selected link settings' ) }\n\t\t\t</VisuallyHidden>\n\t\t\t{ theSettings }\n\t\t</fieldset>\n\t);\n};\n\nexport default LinkControlSettings;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAJA;AACA;AACA;;AAIA,MAAME,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;AAErB,MAAMC,mBAAmB,GAAGA,CAAE;EAAEC,KAAK;EAAEC,QAAQ,GAAGH,IAAI;EAAEI;AAAS,CAAC,KAAM;EACvE,IAAK,CAAEA,QAAQ,IAAI,CAAEA,QAAQ,CAACC,MAAM,EAAG;IACtC,OAAO,IAAI;EACZ;EAEA,MAAMC,mBAAmB,GAAKC,OAAO,IAAQC,QAAQ,IAAM;IAC1DL,QAAQ,CAAE;MACT,GAAGD,KAAK;MACR,CAAEK,OAAO,CAACE,EAAE,GAAID;IACjB,CAAE,CAAC;EACJ,CAAC;EAED,MAAME,WAAW,GAAGN,QAAQ,CAACO,GAAG,CAAIJ,OAAO,IAC1C,IAAAK,MAAA,CAAAC,aAAA,EAACd,WAAA,CAAAe,eAAe;IACfC,uBAAuB;IACvBC,SAAS,EAAC,oCAAoC;IAC9CC,GAAG,EAAGV,OAAO,CAACE,EAAI;IAClBS,KAAK,EAAGX,OAAO,CAACY,KAAO;IACvBhB,QAAQ,EAAGG,mBAAmB,CAAEC,OAAQ,CAAG;IAC3Ca,OAAO,EAAGlB,KAAK,GAAG,CAAC,CAAEA,KAAK,CAAEK,OAAO,CAACE,EAAE,CAAE,GAAG,KAAO;IAClDY,IAAI,EAAGd,OAAO,EAAEc;EAAM,CACtB,CACA,CAAC;EAEH,OACC,IAAAT,MAAA,CAAAC,aAAA;IAAUG,SAAS,EAAC;EAAqC,GACxD,IAAAJ,MAAA,CAAAC,aAAA,EAACd,WAAA,CAAAuB,cAAc;IAACC,EAAE,EAAC;EAAQ,GACxB,IAAAC,QAAE,EAAE,kCAAmC,CAC1B,CAAC,EACfd,WACO,CAAC;AAEb,CAAC;AAAC,IAAAe,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa1B,mBAAmB"}
|
|
@@ -29,7 +29,6 @@ function useCreatePage(handleCreatePage) {
|
|
|
29
29
|
if (error && error.isCanceled) {
|
|
30
30
|
return; // bail if canceled to avoid setting state
|
|
31
31
|
}
|
|
32
|
-
|
|
33
32
|
setErrorMessage(error.message || (0, _i18n.__)('An unknown error occurred during creation. Please try again.'));
|
|
34
33
|
throw error;
|
|
35
34
|
} finally {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_element","useCreatePage","handleCreatePage","cancelableCreateSuggestion","useRef","isCreatingPage","setIsCreatingPage","useState","errorMessage","setErrorMessage","createPage","suggestionTitle","current","makeCancelable","Promise","resolve","promise","error","isCanceled","message","__","useEffect","cancel","hasCanceled_","wrappedPromise","reject","then","val"],"sources":["@wordpress/block-editor/src/components/link-control/use-create-page.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef } from '@wordpress/element';\n\nexport default function useCreatePage( handleCreatePage ) {\n\tconst cancelableCreateSuggestion = useRef();\n\tconst [ isCreatingPage, setIsCreatingPage ] = useState( false );\n\tconst [ errorMessage, setErrorMessage ] = useState( null );\n\n\tconst createPage = async function ( suggestionTitle ) {\n\t\tsetIsCreatingPage( true );\n\t\tsetErrorMessage( null );\n\n\t\ttry {\n\t\t\t// Make cancellable in order that we can avoid setting State\n\t\t\t// if the component unmounts during the call to `createSuggestion`\n\t\t\tcancelableCreateSuggestion.current = makeCancelable(\n\t\t\t\t// Using Promise.resolve to allow createSuggestion to return a\n\t\t\t\t// non-Promise based value.\n\t\t\t\tPromise.resolve( handleCreatePage( suggestionTitle ) )\n\t\t\t);\n\n\t\t\treturn await cancelableCreateSuggestion.current.promise;\n\t\t} catch ( error ) {\n\t\t\tif ( error && error.isCanceled ) {\n\t\t\t\treturn; // bail if canceled to avoid setting state\n\t\t\t}\n\n\t\t\tsetErrorMessage(\n\t\t\t\terror.message ||\n\t\t\t\t\t__(\n\t\t\t\t\t\t'An unknown error occurred during creation. Please try again.'\n\t\t\t\t\t)\n\t\t\t);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tsetIsCreatingPage( false );\n\t\t}\n\t};\n\n\t/**\n\t * Handles cancelling any pending Promises that have been made cancelable.\n\t */\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\t// componentDidUnmount\n\t\t\tif ( cancelableCreateSuggestion.current ) {\n\t\t\t\tcancelableCreateSuggestion.current.cancel();\n\t\t\t}\n\t\t};\n\t}, [] );\n\n\treturn {\n\t\tcreatePage,\n\t\tisCreatingPage,\n\t\terrorMessage,\n\t};\n}\n\n/**\n * Creates a wrapper around a promise which allows it to be programmatically\n * cancelled.\n * See: https://reactjs.org/blog/2015/12/16/ismounted-antipattern.html\n *\n * @param {Promise} promise the Promise to make cancelable\n */\nconst makeCancelable = ( promise ) => {\n\tlet hasCanceled_ = false;\n\n\tconst wrappedPromise = new Promise( ( resolve, reject ) => {\n\t\tpromise.then(\n\t\t\t( val ) =>\n\t\t\t\thasCanceled_ ? reject( { isCanceled: true } ) : resolve( val ),\n\t\t\t( error ) =>\n\t\t\t\thasCanceled_ ? reject( { isCanceled: true } ) : reject( error )\n\t\t);\n\t} );\n\n\treturn {\n\t\tpromise: wrappedPromise,\n\t\tcancel() {\n\t\t\thasCanceled_ = true;\n\t\t},\n\t};\n};\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAJA;AACA;AACA;;AAIe,SAASE,aAAaA,CAAEC,gBAAgB,EAAG;EACzD,MAAMC,0BAA0B,GAAG,IAAAC,eAAM,EAAC,CAAC;EAC3C,MAAM,CAAEC,cAAc,EAAEC,iBAAiB,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAC/D,MAAM,CAAEC,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAF,iBAAQ,EAAE,IAAK,CAAC;EAE1D,MAAMG,UAAU,GAAG,eAAAA,CAAiBC,eAAe,EAAG;IACrDL,iBAAiB,CAAE,IAAK,CAAC;IACzBG,eAAe,CAAE,IAAK,CAAC;IAEvB,IAAI;MACH;MACA;MACAN,0BAA0B,CAACS,OAAO,GAAGC,cAAc;MAClD;MACA;MACAC,OAAO,CAACC,OAAO,CAAEb,gBAAgB,CAAES,eAAgB,CAAE,CACtD,CAAC;MAED,OAAO,MAAMR,0BAA0B,CAACS,OAAO,CAACI,OAAO;IACxD,CAAC,CAAC,OAAQC,KAAK,EAAG;MACjB,IAAKA,KAAK,IAAIA,KAAK,CAACC,UAAU,EAAG;QAChC,OAAO,CAAC;MACT
|
|
1
|
+
{"version":3,"names":["_i18n","require","_element","useCreatePage","handleCreatePage","cancelableCreateSuggestion","useRef","isCreatingPage","setIsCreatingPage","useState","errorMessage","setErrorMessage","createPage","suggestionTitle","current","makeCancelable","Promise","resolve","promise","error","isCanceled","message","__","useEffect","cancel","hasCanceled_","wrappedPromise","reject","then","val"],"sources":["@wordpress/block-editor/src/components/link-control/use-create-page.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef } from '@wordpress/element';\n\nexport default function useCreatePage( handleCreatePage ) {\n\tconst cancelableCreateSuggestion = useRef();\n\tconst [ isCreatingPage, setIsCreatingPage ] = useState( false );\n\tconst [ errorMessage, setErrorMessage ] = useState( null );\n\n\tconst createPage = async function ( suggestionTitle ) {\n\t\tsetIsCreatingPage( true );\n\t\tsetErrorMessage( null );\n\n\t\ttry {\n\t\t\t// Make cancellable in order that we can avoid setting State\n\t\t\t// if the component unmounts during the call to `createSuggestion`\n\t\t\tcancelableCreateSuggestion.current = makeCancelable(\n\t\t\t\t// Using Promise.resolve to allow createSuggestion to return a\n\t\t\t\t// non-Promise based value.\n\t\t\t\tPromise.resolve( handleCreatePage( suggestionTitle ) )\n\t\t\t);\n\n\t\t\treturn await cancelableCreateSuggestion.current.promise;\n\t\t} catch ( error ) {\n\t\t\tif ( error && error.isCanceled ) {\n\t\t\t\treturn; // bail if canceled to avoid setting state\n\t\t\t}\n\n\t\t\tsetErrorMessage(\n\t\t\t\terror.message ||\n\t\t\t\t\t__(\n\t\t\t\t\t\t'An unknown error occurred during creation. Please try again.'\n\t\t\t\t\t)\n\t\t\t);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tsetIsCreatingPage( false );\n\t\t}\n\t};\n\n\t/**\n\t * Handles cancelling any pending Promises that have been made cancelable.\n\t */\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\t// componentDidUnmount\n\t\t\tif ( cancelableCreateSuggestion.current ) {\n\t\t\t\tcancelableCreateSuggestion.current.cancel();\n\t\t\t}\n\t\t};\n\t}, [] );\n\n\treturn {\n\t\tcreatePage,\n\t\tisCreatingPage,\n\t\terrorMessage,\n\t};\n}\n\n/**\n * Creates a wrapper around a promise which allows it to be programmatically\n * cancelled.\n * See: https://reactjs.org/blog/2015/12/16/ismounted-antipattern.html\n *\n * @param {Promise} promise the Promise to make cancelable\n */\nconst makeCancelable = ( promise ) => {\n\tlet hasCanceled_ = false;\n\n\tconst wrappedPromise = new Promise( ( resolve, reject ) => {\n\t\tpromise.then(\n\t\t\t( val ) =>\n\t\t\t\thasCanceled_ ? reject( { isCanceled: true } ) : resolve( val ),\n\t\t\t( error ) =>\n\t\t\t\thasCanceled_ ? reject( { isCanceled: true } ) : reject( error )\n\t\t);\n\t} );\n\n\treturn {\n\t\tpromise: wrappedPromise,\n\t\tcancel() {\n\t\t\thasCanceled_ = true;\n\t\t},\n\t};\n};\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAJA;AACA;AACA;;AAIe,SAASE,aAAaA,CAAEC,gBAAgB,EAAG;EACzD,MAAMC,0BAA0B,GAAG,IAAAC,eAAM,EAAC,CAAC;EAC3C,MAAM,CAAEC,cAAc,EAAEC,iBAAiB,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAC/D,MAAM,CAAEC,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAF,iBAAQ,EAAE,IAAK,CAAC;EAE1D,MAAMG,UAAU,GAAG,eAAAA,CAAiBC,eAAe,EAAG;IACrDL,iBAAiB,CAAE,IAAK,CAAC;IACzBG,eAAe,CAAE,IAAK,CAAC;IAEvB,IAAI;MACH;MACA;MACAN,0BAA0B,CAACS,OAAO,GAAGC,cAAc;MAClD;MACA;MACAC,OAAO,CAACC,OAAO,CAAEb,gBAAgB,CAAES,eAAgB,CAAE,CACtD,CAAC;MAED,OAAO,MAAMR,0BAA0B,CAACS,OAAO,CAACI,OAAO;IACxD,CAAC,CAAC,OAAQC,KAAK,EAAG;MACjB,IAAKA,KAAK,IAAIA,KAAK,CAACC,UAAU,EAAG;QAChC,OAAO,CAAC;MACT;MAEAT,eAAe,CACdQ,KAAK,CAACE,OAAO,IACZ,IAAAC,QAAE,EACD,8DACD,CACF,CAAC;MACD,MAAMH,KAAK;IACZ,CAAC,SAAS;MACTX,iBAAiB,CAAE,KAAM,CAAC;IAC3B;EACD,CAAC;;EAED;AACD;AACA;EACC,IAAAe,kBAAS,EAAE,MAAM;IAChB,OAAO,MAAM;MACZ;MACA,IAAKlB,0BAA0B,CAACS,OAAO,EAAG;QACzCT,0BAA0B,CAACS,OAAO,CAACU,MAAM,CAAC,CAAC;MAC5C;IACD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,OAAO;IACNZ,UAAU;IACVL,cAAc;IACdG;EACD,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMK,cAAc,GAAKG,OAAO,IAAM;EACrC,IAAIO,YAAY,GAAG,KAAK;EAExB,MAAMC,cAAc,GAAG,IAAIV,OAAO,CAAE,CAAEC,OAAO,EAAEU,MAAM,KAAM;IAC1DT,OAAO,CAACU,IAAI,CACTC,GAAG,IACJJ,YAAY,GAAGE,MAAM,CAAE;MAAEP,UAAU,EAAE;IAAK,CAAE,CAAC,GAAGH,OAAO,CAAEY,GAAI,CAAC,EAC7DV,KAAK,IACNM,YAAY,GAAGE,MAAM,CAAE;MAAEP,UAAU,EAAE;IAAK,CAAE,CAAC,GAAGO,MAAM,CAAER,KAAM,CAChE,CAAC;EACF,CAAE,CAAC;EAEH,OAAO;IACND,OAAO,EAAEQ,cAAc;IACvBF,MAAMA,CAAA,EAAG;MACRC,YAAY,GAAG,IAAI;IACpB;EACD,CAAC;AACF,CAAC"}
|