@wordpress/editor 14.9.0 → 14.10.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 +2 -0
- package/build/bindings/api.js +0 -29
- package/build/bindings/api.js.map +1 -1
- package/build/components/autocompleters/user.js.map +1 -1
- package/build/components/block-manager/index.js +2 -2
- package/build/components/block-manager/index.js.map +1 -1
- package/build/components/commands/index.js.map +1 -1
- package/build/components/create-template-part-modal/index.js.map +1 -1
- package/build/components/create-template-part-modal/utils.js.map +1 -1
- package/build/components/document-outline/index.js.map +1 -1
- package/build/components/document-outline/item.js.map +1 -1
- package/build/components/document-tools/index.js +1 -1
- package/build/components/document-tools/index.js.map +1 -1
- package/build/components/editor-interface/index.js +1 -12
- package/build/components/editor-interface/index.js.map +1 -1
- package/build/components/entities-saved-states/index.js +1 -1
- package/build/components/entities-saved-states/index.js.map +1 -1
- package/build/components/media-categories/index.js.map +1 -1
- package/build/components/page-attributes/parent.js +1 -1
- package/build/components/page-attributes/parent.js.map +1 -1
- package/build/components/plugin-document-setting-panel/index.js.map +1 -1
- package/build/components/post-actions/index.js.map +1 -1
- package/build/components/post-content-information/index.js +1 -1
- package/build/components/post-content-information/index.js.map +1 -1
- package/build/components/post-featured-image/index.js.map +1 -1
- package/build/components/post-format/index.js +1 -1
- package/build/components/post-format/index.js.map +1 -1
- package/build/components/post-last-revision/index.js +1 -1
- package/build/components/post-last-revision/index.js.map +1 -1
- package/build/components/post-locked-modal/index.js +2 -2
- package/build/components/post-locked-modal/index.js.map +1 -1
- package/build/components/post-preview-button/index.js +1 -1
- package/build/components/post-preview-button/index.js.map +1 -1
- package/build/components/post-publish-button/index.js.map +1 -1
- package/build/components/post-publish-panel/maybe-post-format-panel.js +1 -1
- package/build/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
- package/build/components/post-publish-panel/maybe-upload-media.js +1 -0
- package/build/components/post-publish-panel/maybe-upload-media.js.map +1 -1
- package/build/components/post-publish-panel/media-util.js +1 -0
- package/build/components/post-publish-panel/media-util.js.map +1 -1
- package/build/components/post-publish-panel/postpublish.js +1 -1
- package/build/components/post-publish-panel/postpublish.js.map +1 -1
- package/build/components/post-schedule/label.js.map +1 -1
- package/build/components/post-taxonomies/flat-term-selector.js +4 -4
- package/build/components/post-taxonomies/flat-term-selector.js.map +1 -1
- package/build/components/post-taxonomies/hierarchical-term-selector.js +3 -2
- package/build/components/post-taxonomies/hierarchical-term-selector.js.map +1 -1
- package/build/components/post-taxonomies/index.js +1 -1
- package/build/components/post-taxonomies/index.js.map +1 -1
- package/build/components/post-taxonomies/panel.js.map +1 -1
- package/build/components/post-template/classic-theme.js +2 -4
- package/build/components/post-template/classic-theme.js.map +1 -1
- package/build/components/post-text-editor/index.js.map +1 -1
- package/build/components/post-title/index.js +15 -19
- package/build/components/post-title/index.js.map +1 -1
- package/build/components/post-title/index.native.js +2 -2
- package/build/components/post-title/index.native.js.map +1 -1
- package/build/components/post-url/index.js +76 -63
- package/build/components/post-url/index.js.map +1 -1
- package/build/components/post-url/panel.js +46 -26
- package/build/components/post-url/panel.js.map +1 -1
- package/build/components/post-visibility/index.js.map +1 -1
- package/build/components/preferences-modal/index.js.map +1 -1
- package/build/components/preview-dropdown/index.js.map +1 -1
- package/build/components/provider/index.js +1 -1
- package/build/components/provider/index.js.map +1 -1
- package/build/components/resizable-editor/resize-handle.js.map +1 -1
- package/build/components/time-to-read/index.js +1 -1
- package/build/components/time-to-read/index.js.map +1 -1
- package/build/components/visual-editor/edit-template-blocks-notification.js +4 -1
- package/build/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
- package/build/components/visual-editor/index.js +4 -3
- package/build/components/visual-editor/index.js.map +1 -1
- package/build/components/visual-editor/use-select-nearest-editable-block.js.map +1 -1
- package/build/dataviews/actions/duplicate-template-part.js +1 -1
- package/build/dataviews/actions/duplicate-template-part.js.map +1 -1
- package/build/private-apis.js +0 -1
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +26 -1
- package/build/store/actions.js.map +1 -1
- package/build/store/constants.js +1 -0
- package/build/store/constants.js.map +1 -1
- package/build/store/local-autosave.js.map +1 -1
- package/build/store/private-actions.js +7 -6
- package/build/store/private-actions.js.map +1 -1
- package/build/store/selectors.js +21 -0
- package/build/store/selectors.js.map +1 -1
- package/build/utils/media-upload/index.js.map +1 -1
- package/build-module/bindings/api.js +1 -29
- package/build-module/bindings/api.js.map +1 -1
- package/build-module/components/autocompleters/user.js +1 -3
- package/build-module/components/autocompleters/user.js.map +1 -1
- package/build-module/components/block-manager/category.js +1 -2
- package/build-module/components/block-manager/category.js.map +1 -1
- package/build-module/components/block-manager/checklist.js +1 -2
- package/build-module/components/block-manager/checklist.js.map +1 -1
- package/build-module/components/block-manager/index.js +3 -4
- package/build-module/components/block-manager/index.js.map +1 -1
- package/build-module/components/block-settings-menu/content-only-settings-menu.js +1 -3
- package/build-module/components/block-settings-menu/content-only-settings-menu.js.map +1 -1
- package/build-module/components/blog-title/index.js +1 -3
- package/build-module/components/blog-title/index.js.map +1 -1
- package/build-module/components/collapsible-block-toolbar/index.js +1 -3
- package/build-module/components/collapsible-block-toolbar/index.js.map +1 -1
- package/build-module/components/commands/index.js.map +1 -1
- package/build-module/components/create-template-part-modal/index.js +1 -2
- package/build-module/components/create-template-part-modal/index.js.map +1 -1
- package/build-module/components/create-template-part-modal/utils.js.map +1 -1
- package/build-module/components/document-bar/index.js +1 -2
- package/build-module/components/document-bar/index.js.map +1 -1
- package/build-module/components/document-outline/index.js +1 -2
- package/build-module/components/document-outline/index.js.map +1 -1
- package/build-module/components/document-outline/item.js +1 -2
- package/build-module/components/document-outline/item.js.map +1 -1
- package/build-module/components/document-tools/index.js +2 -4
- package/build-module/components/document-tools/index.js.map +1 -1
- package/build-module/components/editor/index.js +1 -3
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/editor-help/add-blocks.native.js +1 -3
- package/build-module/components/editor-help/add-blocks.native.js.map +1 -1
- package/build-module/components/editor-help/customize-blocks.native.js +1 -3
- package/build-module/components/editor-help/customize-blocks.native.js.map +1 -1
- package/build-module/components/editor-help/help-detail-navigation-screen.native.js +1 -2
- package/build-module/components/editor-help/help-detail-navigation-screen.native.js.map +1 -1
- package/build-module/components/editor-help/index.native.js +1 -3
- package/build-module/components/editor-help/index.native.js.map +1 -1
- package/build-module/components/editor-help/intro-to-blocks.native.js +1 -3
- package/build-module/components/editor-help/intro-to-blocks.native.js.map +1 -1
- package/build-module/components/editor-help/move-blocks.native.js +1 -3
- package/build-module/components/editor-help/move-blocks.native.js.map +1 -1
- package/build-module/components/editor-help/remove-blocks.native.js +1 -3
- package/build-module/components/editor-help/remove-blocks.native.js.map +1 -1
- package/build-module/components/editor-help/view-sections.native.js +1 -2
- package/build-module/components/editor-help/view-sections.native.js.map +1 -1
- package/build-module/components/editor-interface/index.js +2 -15
- package/build-module/components/editor-interface/index.js.map +1 -1
- package/build-module/components/editor-notices/index.js +1 -3
- package/build-module/components/editor-notices/index.js.map +1 -1
- package/build-module/components/entities-saved-states/entity-record-item.js +1 -3
- package/build-module/components/entities-saved-states/entity-record-item.js.map +1 -1
- package/build-module/components/entities-saved-states/entity-type-list.js +1 -2
- package/build-module/components/entities-saved-states/entity-type-list.js.map +1 -1
- package/build-module/components/entities-saved-states/index.js +2 -3
- package/build-module/components/entities-saved-states/index.js.map +1 -1
- package/build-module/components/error-boundary/index.native.js +1 -2
- package/build-module/components/error-boundary/index.native.js.map +1 -1
- package/build-module/components/header/index.js +1 -2
- package/build-module/components/header/index.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/index.js +1 -2
- package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/shortcut.js +1 -3
- package/build-module/components/keyboard-shortcut-help-modal/shortcut.js.map +1 -1
- package/build-module/components/list-view-sidebar/list-view-outline.js +1 -3
- package/build-module/components/list-view-sidebar/list-view-outline.js.map +1 -1
- package/build-module/components/media-categories/index.js.map +1 -1
- package/build-module/components/more-menu/index.js +1 -3
- package/build-module/components/more-menu/index.js.map +1 -1
- package/build-module/components/offline-status/index.native.js +1 -2
- package/build-module/components/offline-status/index.native.js.map +1 -1
- package/build-module/components/page-attributes/parent.js +2 -3
- package/build-module/components/page-attributes/parent.js.map +1 -1
- package/build-module/components/plugin-document-setting-panel/index.js +1 -3
- package/build-module/components/plugin-document-setting-panel/index.js.map +1 -1
- package/build-module/components/post-actions/index.js +1 -3
- package/build-module/components/post-actions/index.js.map +1 -1
- package/build-module/components/post-author/panel.js +1 -2
- package/build-module/components/post-author/panel.js.map +1 -1
- package/build-module/components/post-card-panel/index.js +1 -2
- package/build-module/components/post-card-panel/index.js.map +1 -1
- package/build-module/components/post-content-information/index.js +1 -1
- package/build-module/components/post-content-information/index.js.map +1 -1
- package/build-module/components/post-discussion/panel.js +1 -2
- package/build-module/components/post-discussion/panel.js.map +1 -1
- package/build-module/components/post-excerpt/panel.js +1 -3
- package/build-module/components/post-excerpt/panel.js.map +1 -1
- package/build-module/components/post-featured-image/index.js +1 -2
- package/build-module/components/post-featured-image/index.js.map +1 -1
- package/build-module/components/post-format/index.js +2 -3
- package/build-module/components/post-format/index.js.map +1 -1
- package/build-module/components/post-format/panel.js +1 -2
- package/build-module/components/post-format/panel.js.map +1 -1
- package/build-module/components/post-last-revision/index.js +1 -1
- package/build-module/components/post-last-revision/index.js.map +1 -1
- package/build-module/components/post-locked-modal/index.js +3 -5
- package/build-module/components/post-locked-modal/index.js.map +1 -1
- package/build-module/components/post-panel-row/index.js +1 -2
- package/build-module/components/post-panel-row/index.js.map +1 -1
- package/build-module/components/post-preview-button/index.js +2 -4
- package/build-module/components/post-preview-button/index.js.map +1 -1
- package/build-module/components/post-publish-button/index.js +1 -2
- package/build-module/components/post-publish-button/index.js.map +1 -1
- package/build-module/components/post-publish-panel/index.js +1 -3
- package/build-module/components/post-publish-panel/index.js.map +1 -1
- package/build-module/components/post-publish-panel/maybe-category-panel.js +1 -2
- package/build-module/components/post-publish-panel/maybe-category-panel.js.map +1 -1
- package/build-module/components/post-publish-panel/maybe-post-format-panel.js +2 -3
- package/build-module/components/post-publish-panel/maybe-post-format-panel.js.map +1 -1
- package/build-module/components/post-publish-panel/maybe-tags-panel.js +1 -2
- package/build-module/components/post-publish-panel/maybe-tags-panel.js.map +1 -1
- package/build-module/components/post-publish-panel/maybe-upload-media.js +2 -2
- package/build-module/components/post-publish-panel/maybe-upload-media.js.map +1 -1
- package/build-module/components/post-publish-panel/media-util.js +1 -0
- package/build-module/components/post-publish-panel/media-util.js.map +1 -1
- package/build-module/components/post-publish-panel/postpublish.js +2 -4
- package/build-module/components/post-publish-panel/postpublish.js.map +1 -1
- package/build-module/components/post-publish-panel/prepublish.js +1 -3
- package/build-module/components/post-publish-panel/prepublish.js.map +1 -1
- package/build-module/components/post-saved-state/index.js +1 -2
- package/build-module/components/post-saved-state/index.js.map +1 -1
- package/build-module/components/post-schedule/label.js.map +1 -1
- package/build-module/components/post-status/index.js +1 -3
- package/build-module/components/post-status/index.js.map +1 -1
- package/build-module/components/post-switch-to-draft-button/index.js +1 -3
- package/build-module/components/post-switch-to-draft-button/index.js.map +1 -1
- package/build-module/components/post-taxonomies/flat-term-selector.js +5 -7
- package/build-module/components/post-taxonomies/flat-term-selector.js.map +1 -1
- package/build-module/components/post-taxonomies/hierarchical-term-selector.js +4 -4
- package/build-module/components/post-taxonomies/hierarchical-term-selector.js.map +1 -1
- package/build-module/components/post-taxonomies/index.js +1 -1
- package/build-module/components/post-taxonomies/index.js.map +1 -1
- package/build-module/components/post-taxonomies/most-used-terms.js +1 -2
- package/build-module/components/post-taxonomies/most-used-terms.js.map +1 -1
- package/build-module/components/post-taxonomies/panel.js.map +1 -1
- package/build-module/components/post-template/block-theme.js +1 -3
- package/build-module/components/post-template/block-theme.js.map +1 -1
- package/build-module/components/post-template/classic-theme.js +3 -6
- package/build-module/components/post-template/classic-theme.js.map +1 -1
- package/build-module/components/post-template/create-new-template-modal.js +1 -2
- package/build-module/components/post-template/create-new-template-modal.js.map +1 -1
- package/build-module/components/post-template/create-new-template.js +1 -3
- package/build-module/components/post-template/create-new-template.js.map +1 -1
- package/build-module/components/post-template/swap-template-button.js +1 -3
- package/build-module/components/post-template/swap-template-button.js.map +1 -1
- package/build-module/components/post-text-editor/index.js +1 -3
- package/build-module/components/post-text-editor/index.js.map +1 -1
- package/build-module/components/post-title/index.js +15 -19
- package/build-module/components/post-title/index.js.map +1 -1
- package/build-module/components/post-title/index.native.js +2 -2
- package/build-module/components/post-title/index.native.js.map +1 -1
- package/build-module/components/post-trash/index.js +1 -2
- package/build-module/components/post-trash/index.js.map +1 -1
- package/build-module/components/post-url/index.js +78 -66
- package/build-module/components/post-url/index.js.map +1 -1
- package/build-module/components/post-url/panel.js +48 -28
- package/build-module/components/post-url/panel.js.map +1 -1
- package/build-module/components/post-visibility/index.js +1 -2
- package/build-module/components/post-visibility/index.js.map +1 -1
- package/build-module/components/posts-per-page/index.js +1 -3
- package/build-module/components/posts-per-page/index.js.map +1 -1
- package/build-module/components/preferences-modal/index.js +1 -3
- package/build-module/components/preferences-modal/index.js.map +1 -1
- package/build-module/components/preview-dropdown/index.js +1 -3
- package/build-module/components/preview-dropdown/index.js.map +1 -1
- package/build-module/components/provider/index.js +2 -4
- package/build-module/components/provider/index.js.map +1 -1
- package/build-module/components/provider/index.native.js +1 -3
- package/build-module/components/provider/index.native.js.map +1 -1
- package/build-module/components/resizable-editor/resize-handle.js +1 -3
- package/build-module/components/resizable-editor/resize-handle.js.map +1 -1
- package/build-module/components/save-publish-panels/index.js +1 -3
- package/build-module/components/save-publish-panels/index.js.map +1 -1
- package/build-module/components/sidebar/header.js +1 -2
- package/build-module/components/sidebar/header.js.map +1 -1
- package/build-module/components/sidebar/index.js +1 -2
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar/post-summary.js +1 -3
- package/build-module/components/sidebar/post-summary.js.map +1 -1
- package/build-module/components/site-discussion/index.js +1 -3
- package/build-module/components/site-discussion/index.js.map +1 -1
- package/build-module/components/start-template-options/index.js +1 -2
- package/build-module/components/start-template-options/index.js.map +1 -1
- package/build-module/components/table-of-contents/panel.js +1 -3
- package/build-module/components/table-of-contents/panel.js.map +1 -1
- package/build-module/components/template-part-menu-items/convert-to-template-part.js +1 -3
- package/build-module/components/template-part-menu-items/convert-to-template-part.js.map +1 -1
- package/build-module/components/template-validation-notice/index.js +1 -3
- package/build-module/components/template-validation-notice/index.js.map +1 -1
- package/build-module/components/text-editor/index.js +1 -2
- package/build-module/components/text-editor/index.js.map +1 -1
- package/build-module/components/time-to-read/index.js +1 -1
- package/build-module/components/time-to-read/index.js.map +1 -1
- package/build-module/components/visual-editor/edit-template-blocks-notification.js +4 -1
- package/build-module/components/visual-editor/edit-template-blocks-notification.js.map +1 -1
- package/build-module/components/visual-editor/index.js +5 -6
- package/build-module/components/visual-editor/index.js.map +1 -1
- package/build-module/components/visual-editor/use-select-nearest-editable-block.js.map +1 -1
- package/build-module/dataviews/actions/duplicate-template-part.js +1 -1
- package/build-module/dataviews/actions/duplicate-template-part.js.map +1 -1
- package/build-module/hooks/pattern-overrides.js +1 -3
- package/build-module/hooks/pattern-overrides.js.map +1 -1
- package/build-module/private-apis.js +1 -2
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +26 -1
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/constants.js +1 -0
- package/build-module/store/constants.js.map +1 -1
- package/build-module/store/local-autosave.js.map +1 -1
- package/build-module/store/private-actions.js +7 -6
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/selectors.js +21 -0
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/media-upload/index.js.map +1 -1
- package/build-style/style-rtl.css +20 -5
- package/build-style/style.css +20 -5
- package/build-types/bindings/api.d.ts +0 -13
- package/build-types/bindings/api.d.ts.map +1 -1
- package/build-types/components/editor-interface/index.d.ts +1 -2
- package/build-types/components/editor-interface/index.d.ts.map +1 -1
- package/build-types/components/post-taxonomies/hierarchical-term-selector.d.ts.map +1 -1
- package/build-types/components/post-template/classic-theme.d.ts.map +1 -1
- package/build-types/components/post-url/index.d.ts.map +1 -1
- package/build-types/components/post-url/panel.d.ts.map +1 -1
- package/build-types/components/provider/index.d.ts.map +1 -1
- package/build-types/components/visual-editor/edit-template-blocks-notification.d.ts.map +1 -1
- package/build-types/components/visual-editor/index.d.ts.map +1 -1
- package/build-types/private-apis.d.ts.map +1 -1
- package/build-types/store/actions.d.ts +1 -4
- package/build-types/store/actions.d.ts.map +1 -1
- package/build-types/store/selectors.d.ts +21 -0
- package/build-types/store/selectors.d.ts.map +1 -1
- package/package.json +38 -38
- package/src/bindings/api.js +1 -32
- package/src/components/document-tools/index.js +1 -1
- package/src/components/editor-interface/index.js +0 -15
- package/src/components/header/style.scss +1 -0
- package/src/components/post-saved-state/test/__snapshots__/index.js.snap +1 -1
- package/src/components/post-taxonomies/hierarchical-term-selector.js +1 -0
- package/src/components/post-template/classic-theme.js +1 -2
- package/src/components/post-url/index.js +67 -55
- package/src/components/post-url/panel.js +57 -33
- package/src/components/post-url/style.scss +21 -3
- package/src/components/provider/index.js +1 -0
- package/src/components/visual-editor/edit-template-blocks-notification.js +5 -1
- package/src/components/visual-editor/index.js +3 -1
- package/src/private-apis.js +1 -5
- package/src/store/actions.js +28 -1
- package/src/store/selectors.js +21 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -11,7 +11,6 @@ var _data = require("@wordpress/data");
|
|
|
11
11
|
var _i18n = require("@wordpress/i18n");
|
|
12
12
|
var _preferences = require("@wordpress/preferences");
|
|
13
13
|
var _blockEditor = require("@wordpress/block-editor");
|
|
14
|
-
var _keyboardShortcuts = require("@wordpress/keyboard-shortcuts");
|
|
15
14
|
var _compose = require("@wordpress/compose");
|
|
16
15
|
var _element = require("@wordpress/element");
|
|
17
16
|
var _store = require("../../store");
|
|
@@ -51,7 +50,6 @@ const interfaceLabels = {
|
|
|
51
50
|
};
|
|
52
51
|
function EditorInterface({
|
|
53
52
|
className,
|
|
54
|
-
enableRegionNavigation,
|
|
55
53
|
styles,
|
|
56
54
|
children,
|
|
57
55
|
forceIsDirty,
|
|
@@ -71,8 +69,6 @@ function EditorInterface({
|
|
|
71
69
|
isListViewOpened,
|
|
72
70
|
isDistractionFree,
|
|
73
71
|
isPreviewMode,
|
|
74
|
-
previousShortcut,
|
|
75
|
-
nextShortcut,
|
|
76
72
|
showBlockBreadcrumbs,
|
|
77
73
|
documentLabel,
|
|
78
74
|
isZoomOut
|
|
@@ -96,8 +92,6 @@ function EditorInterface({
|
|
|
96
92
|
isListViewOpened: select(_store.store).isListViewOpened(),
|
|
97
93
|
isDistractionFree: get('core', 'distractionFree'),
|
|
98
94
|
isPreviewMode: editorSettings.__unstableIsPreviewMode,
|
|
99
|
-
previousShortcut: select(_keyboardShortcuts.store).getAllShortcutKeyCombinations('core/editor/previous-region'),
|
|
100
|
-
nextShortcut: select(_keyboardShortcuts.store).getAllShortcutKeyCombinations('core/editor/next-region'),
|
|
101
95
|
showBlockBreadcrumbs: get('core', 'showBlockBreadcrumbs'),
|
|
102
96
|
// translators: Default label for the Document in the Block Breadcrumb.
|
|
103
97
|
documentLabel: postTypeLabel || (0, _i18n._x)('Document', 'noun'),
|
|
@@ -117,7 +111,6 @@ function EditorInterface({
|
|
|
117
111
|
setEntitiesSavedStatesCallback(false);
|
|
118
112
|
}, [entitiesSavedStatesCallback]);
|
|
119
113
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_interface.InterfaceSkeleton, {
|
|
120
|
-
enableRegionNavigation: enableRegionNavigation,
|
|
121
114
|
isDistractionFree: isDistractionFree,
|
|
122
115
|
className: (0, _clsx.default)('editor-editor-interface', className, {
|
|
123
116
|
'is-entity-save-view-open': !!entitiesSavedStatesCallback,
|
|
@@ -171,11 +164,7 @@ function EditorInterface({
|
|
|
171
164
|
isEntitiesSavedStatesOpen: entitiesSavedStatesCallback,
|
|
172
165
|
setEntitiesSavedStatesCallback: setEntitiesSavedStatesCallback,
|
|
173
166
|
forceIsDirtyPublishPanel: forceIsDirty
|
|
174
|
-
}) : undefined
|
|
175
|
-
shortcuts: {
|
|
176
|
-
previous: previousShortcut,
|
|
177
|
-
next: nextShortcut
|
|
178
|
-
}
|
|
167
|
+
}) : undefined
|
|
179
168
|
});
|
|
180
169
|
}
|
|
181
170
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_interface","_data","_i18n","_preferences","_blockEditor","_keyboardShortcuts","_compose","_element","_store","_editorNotices","_header","_inserterSidebar","_listViewSidebar","_savePublishPanels","_textEditor","_visualEditor","_contentSlotFill","_lockUnlock","_jsxRuntime","interfaceLabels","header","__","body","sidebar","actions","footer","EditorInterface","className","enableRegionNavigation","styles","children","forceIsDirty","contentRef","disableIframe","autoFocus","customSaveButton","customSavePanel","forceDisableBlockTools","title","iframeProps","mode","isRichEditingEnabled","isInserterOpened","isListViewOpened","isDistractionFree","isPreviewMode","previousShortcut","nextShortcut","showBlockBreadcrumbs","documentLabel","isZoomOut","useSelect","select","get","preferencesStore","getEditorSettings","getPostTypeLabel","editorStore","editorSettings","postTypeLabel","_isZoomOut","unlock","blockEditorStore","getEditorMode","richEditingEnabled","__unstableIsPreviewMode","keyboardShortcutsStore","getAllShortcutKeyCombinations","_x","isLargeViewport","useViewportMatch","secondarySidebarLabel","entitiesSavedStatesCallback","setEntitiesSavedStatesCallback","useState","closeEntitiesSavedStates","useCallback","arg","jsx","InterfaceSkeleton","clsx","labels","secondarySidebar","default","isEditorIframed","editorNotices","ComplementaryArea","Slot","scope","content","jsxs","Fragment","editorCanvasView","BlockToolbar","hideDragHandle","BlockBreadcrumb","rootLabelText","isEntitiesSavedStatesOpen","forceIsDirtyPublishPanel","undefined","shortcuts","previous","next"],"sources":["@wordpress/editor/src/components/editor-interface/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { InterfaceSkeleton, ComplementaryArea } from '@wordpress/interface';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tstore as blockEditorStore,\n\tBlockBreadcrumb,\n\tBlockToolbar,\n} from '@wordpress/block-editor';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport EditorNotices from '../editor-notices';\nimport Header from '../header';\nimport InserterSidebar from '../inserter-sidebar';\nimport ListViewSidebar from '../list-view-sidebar';\nimport SavePublishPanels from '../save-publish-panels';\nimport TextEditor from '../text-editor';\nimport VisualEditor from '../visual-editor';\nimport EditorContentSlotFill from './content-slot-fill';\n\nimport { unlock } from '../../lock-unlock';\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor top bar landmark region. */\n\theader: __( 'Editor top bar' ),\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nexport default function EditorInterface( {\n\tclassName,\n\tenableRegionNavigation,\n\tstyles,\n\tchildren,\n\tforceIsDirty,\n\tcontentRef,\n\tdisableIframe,\n\tautoFocus,\n\tcustomSaveButton,\n\tcustomSavePanel,\n\tforceDisableBlockTools,\n\ttitle,\n\tiframeProps,\n} ) {\n\tconst {\n\t\tmode,\n\t\tisRichEditingEnabled,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tisDistractionFree,\n\t\tisPreviewMode,\n\t\tpreviousShortcut,\n\t\tnextShortcut,\n\t\tshowBlockBreadcrumbs,\n\t\tdocumentLabel,\n\t\tisZoomOut,\n\t} = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { getEditorSettings, getPostTypeLabel } = select( editorStore );\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst postTypeLabel = getPostTypeLabel();\n\t\tconst { isZoomOut: _isZoomOut } = unlock( select( blockEditorStore ) );\n\n\t\treturn {\n\t\t\tmode: select( editorStore ).getEditorMode(),\n\t\t\tisRichEditingEnabled: editorSettings.richEditingEnabled,\n\t\t\tisInserterOpened: select( editorStore ).isInserterOpened(),\n\t\t\tisListViewOpened: select( editorStore ).isListViewOpened(),\n\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\tisPreviewMode: editorSettings.__unstableIsPreviewMode,\n\t\t\tpreviousShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/editor/previous-region' ),\n\t\t\tnextShortcut: select(\n\t\t\t\tkeyboardShortcutsStore\n\t\t\t).getAllShortcutKeyCombinations( 'core/editor/next-region' ),\n\t\t\tshowBlockBreadcrumbs: get( 'core', 'showBlockBreadcrumbs' ),\n\t\t\t// translators: Default label for the Document in the Block Breadcrumb.\n\t\t\tdocumentLabel: postTypeLabel || _x( 'Document', 'noun' ),\n\t\t\tisZoomOut: _isZoomOut(),\n\t\t};\n\t}, [] );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst secondarySidebarLabel = isListViewOpened\n\t\t? __( 'Document Overview' )\n\t\t: __( 'Block Library' );\n\n\t// Local state for save panel.\n\t// Note 'truthy' callback implies an open panel.\n\tconst [ entitiesSavedStatesCallback, setEntitiesSavedStatesCallback ] =\n\t\tuseState( false );\n\tconst closeEntitiesSavedStates = useCallback(\n\t\t( arg ) => {\n\t\t\tif ( typeof entitiesSavedStatesCallback === 'function' ) {\n\t\t\t\tentitiesSavedStatesCallback( arg );\n\t\t\t}\n\t\t\tsetEntitiesSavedStatesCallback( false );\n\t\t},\n\t\t[ entitiesSavedStatesCallback ]\n\t);\n\n\treturn (\n\t\t<InterfaceSkeleton\n\t\t\tenableRegionNavigation={ enableRegionNavigation }\n\t\t\tisDistractionFree={ isDistractionFree }\n\t\t\tclassName={ clsx( 'editor-editor-interface', className, {\n\t\t\t\t'is-entity-save-view-open': !! entitiesSavedStatesCallback,\n\t\t\t\t'is-distraction-free': isDistractionFree && ! isPreviewMode,\n\t\t\t} ) }\n\t\t\tlabels={ {\n\t\t\t\t...interfaceLabels,\n\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t} }\n\t\t\theader={\n\t\t\t\t! isPreviewMode && (\n\t\t\t\t\t<Header\n\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcustomSaveButton={ customSaveButton }\n\t\t\t\t\t\tforceDisableBlockTools={ forceDisableBlockTools }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tisEditorIframed={ ! disableIframe }\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}\n\t\t\teditorNotices={ <EditorNotices /> }\n\t\t\tsecondarySidebar={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\tmode === 'visual' &&\n\t\t\t\t( ( isInserterOpened && <InserterSidebar /> ) ||\n\t\t\t\t\t( isListViewOpened && <ListViewSidebar /> ) )\n\t\t\t}\n\t\t\tsidebar={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\t! isDistractionFree && <ComplementaryArea.Slot scope=\"core\" />\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ ! isDistractionFree && ! isPreviewMode && (\n\t\t\t\t\t\t<EditorNotices />\n\t\t\t\t\t) }\n\n\t\t\t\t\t<EditorContentSlotFill.Slot>\n\t\t\t\t\t\t{ ( [ editorCanvasView ] ) =>\n\t\t\t\t\t\t\teditorCanvasView ? (\n\t\t\t\t\t\t\t\teditorCanvasView\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ ! isPreviewMode &&\n\t\t\t\t\t\t\t\t\t\t( mode === 'text' ||\n\t\t\t\t\t\t\t\t\t\t\t! isRichEditingEnabled ) && (\n\t\t\t\t\t\t\t\t\t\t\t<TextEditor\n\t\t\t\t\t\t\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus={ autoFocus }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! isPreviewMode &&\n\t\t\t\t\t\t\t\t\t\t! isLargeViewport &&\n\t\t\t\t\t\t\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t\t\t\t\t\t\t<BlockToolbar hideDragHandle />\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ( isPreviewMode ||\n\t\t\t\t\t\t\t\t\t\t( isRichEditingEnabled &&\n\t\t\t\t\t\t\t\t\t\t\tmode === 'visual' ) ) && (\n\t\t\t\t\t\t\t\t\t\t<VisualEditor\n\t\t\t\t\t\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\t\t\t\t\t\tdisableIframe={ disableIframe }\n\t\t\t\t\t\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\t\t\t\t\t\tautoFocus={ autoFocus }\n\t\t\t\t\t\t\t\t\t\t\tiframeProps={ iframeProps }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ children }\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</EditorContentSlotFill.Slot>\n\t\t\t\t</>\n\t\t\t}\n\t\t\tfooter={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\t! isDistractionFree &&\n\t\t\t\tisLargeViewport &&\n\t\t\t\tshowBlockBreadcrumbs &&\n\t\t\t\tisRichEditingEnabled &&\n\t\t\t\t! isZoomOut &&\n\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t<BlockBreadcrumb rootLabelText={ documentLabel } />\n\t\t\t\t)\n\t\t\t}\n\t\t\tactions={\n\t\t\t\t! isPreviewMode\n\t\t\t\t\t? customSavePanel || (\n\t\t\t\t\t\t\t<SavePublishPanels\n\t\t\t\t\t\t\t\tcloseEntitiesSavedStates={\n\t\t\t\t\t\t\t\t\tcloseEntitiesSavedStates\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisEntitiesSavedStatesOpen={\n\t\t\t\t\t\t\t\t\tentitiesSavedStatesCallback\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tforceIsDirtyPublishPanel={ forceIsDirty }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t )\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t\tshortcuts={ {\n\t\t\t\tprevious: previousShortcut,\n\t\t\t\tnext: nextShortcut,\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_interface","_data","_i18n","_preferences","_blockEditor","_compose","_element","_store","_editorNotices","_header","_inserterSidebar","_listViewSidebar","_savePublishPanels","_textEditor","_visualEditor","_contentSlotFill","_lockUnlock","_jsxRuntime","interfaceLabels","header","__","body","sidebar","actions","footer","EditorInterface","className","styles","children","forceIsDirty","contentRef","disableIframe","autoFocus","customSaveButton","customSavePanel","forceDisableBlockTools","title","iframeProps","mode","isRichEditingEnabled","isInserterOpened","isListViewOpened","isDistractionFree","isPreviewMode","showBlockBreadcrumbs","documentLabel","isZoomOut","useSelect","select","get","preferencesStore","getEditorSettings","getPostTypeLabel","editorStore","editorSettings","postTypeLabel","_isZoomOut","unlock","blockEditorStore","getEditorMode","richEditingEnabled","__unstableIsPreviewMode","_x","isLargeViewport","useViewportMatch","secondarySidebarLabel","entitiesSavedStatesCallback","setEntitiesSavedStatesCallback","useState","closeEntitiesSavedStates","useCallback","arg","jsx","InterfaceSkeleton","clsx","labels","secondarySidebar","default","isEditorIframed","editorNotices","ComplementaryArea","Slot","scope","content","jsxs","Fragment","editorCanvasView","BlockToolbar","hideDragHandle","BlockBreadcrumb","rootLabelText","isEntitiesSavedStatesOpen","forceIsDirtyPublishPanel","undefined"],"sources":["@wordpress/editor/src/components/editor-interface/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { InterfaceSkeleton, ComplementaryArea } from '@wordpress/interface';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tstore as blockEditorStore,\n\tBlockBreadcrumb,\n\tBlockToolbar,\n} from '@wordpress/block-editor';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport EditorNotices from '../editor-notices';\nimport Header from '../header';\nimport InserterSidebar from '../inserter-sidebar';\nimport ListViewSidebar from '../list-view-sidebar';\nimport SavePublishPanels from '../save-publish-panels';\nimport TextEditor from '../text-editor';\nimport VisualEditor from '../visual-editor';\nimport EditorContentSlotFill from './content-slot-fill';\n\nimport { unlock } from '../../lock-unlock';\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor top bar landmark region. */\n\theader: __( 'Editor top bar' ),\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\nexport default function EditorInterface( {\n\tclassName,\n\tstyles,\n\tchildren,\n\tforceIsDirty,\n\tcontentRef,\n\tdisableIframe,\n\tautoFocus,\n\tcustomSaveButton,\n\tcustomSavePanel,\n\tforceDisableBlockTools,\n\ttitle,\n\tiframeProps,\n} ) {\n\tconst {\n\t\tmode,\n\t\tisRichEditingEnabled,\n\t\tisInserterOpened,\n\t\tisListViewOpened,\n\t\tisDistractionFree,\n\t\tisPreviewMode,\n\t\tshowBlockBreadcrumbs,\n\t\tdocumentLabel,\n\t\tisZoomOut,\n\t} = useSelect( ( select ) => {\n\t\tconst { get } = select( preferencesStore );\n\t\tconst { getEditorSettings, getPostTypeLabel } = select( editorStore );\n\t\tconst editorSettings = getEditorSettings();\n\t\tconst postTypeLabel = getPostTypeLabel();\n\t\tconst { isZoomOut: _isZoomOut } = unlock( select( blockEditorStore ) );\n\n\t\treturn {\n\t\t\tmode: select( editorStore ).getEditorMode(),\n\t\t\tisRichEditingEnabled: editorSettings.richEditingEnabled,\n\t\t\tisInserterOpened: select( editorStore ).isInserterOpened(),\n\t\t\tisListViewOpened: select( editorStore ).isListViewOpened(),\n\t\t\tisDistractionFree: get( 'core', 'distractionFree' ),\n\t\t\tisPreviewMode: editorSettings.__unstableIsPreviewMode,\n\t\t\tshowBlockBreadcrumbs: get( 'core', 'showBlockBreadcrumbs' ),\n\t\t\t// translators: Default label for the Document in the Block Breadcrumb.\n\t\t\tdocumentLabel: postTypeLabel || _x( 'Document', 'noun' ),\n\t\t\tisZoomOut: _isZoomOut(),\n\t\t};\n\t}, [] );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst secondarySidebarLabel = isListViewOpened\n\t\t? __( 'Document Overview' )\n\t\t: __( 'Block Library' );\n\n\t// Local state for save panel.\n\t// Note 'truthy' callback implies an open panel.\n\tconst [ entitiesSavedStatesCallback, setEntitiesSavedStatesCallback ] =\n\t\tuseState( false );\n\tconst closeEntitiesSavedStates = useCallback(\n\t\t( arg ) => {\n\t\t\tif ( typeof entitiesSavedStatesCallback === 'function' ) {\n\t\t\t\tentitiesSavedStatesCallback( arg );\n\t\t\t}\n\t\t\tsetEntitiesSavedStatesCallback( false );\n\t\t},\n\t\t[ entitiesSavedStatesCallback ]\n\t);\n\n\treturn (\n\t\t<InterfaceSkeleton\n\t\t\tisDistractionFree={ isDistractionFree }\n\t\t\tclassName={ clsx( 'editor-editor-interface', className, {\n\t\t\t\t'is-entity-save-view-open': !! entitiesSavedStatesCallback,\n\t\t\t\t'is-distraction-free': isDistractionFree && ! isPreviewMode,\n\t\t\t} ) }\n\t\t\tlabels={ {\n\t\t\t\t...interfaceLabels,\n\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t} }\n\t\t\theader={\n\t\t\t\t! isPreviewMode && (\n\t\t\t\t\t<Header\n\t\t\t\t\t\tforceIsDirty={ forceIsDirty }\n\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcustomSaveButton={ customSaveButton }\n\t\t\t\t\t\tforceDisableBlockTools={ forceDisableBlockTools }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\tisEditorIframed={ ! disableIframe }\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}\n\t\t\teditorNotices={ <EditorNotices /> }\n\t\t\tsecondarySidebar={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\tmode === 'visual' &&\n\t\t\t\t( ( isInserterOpened && <InserterSidebar /> ) ||\n\t\t\t\t\t( isListViewOpened && <ListViewSidebar /> ) )\n\t\t\t}\n\t\t\tsidebar={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\t! isDistractionFree && <ComplementaryArea.Slot scope=\"core\" />\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ ! isDistractionFree && ! isPreviewMode && (\n\t\t\t\t\t\t<EditorNotices />\n\t\t\t\t\t) }\n\n\t\t\t\t\t<EditorContentSlotFill.Slot>\n\t\t\t\t\t\t{ ( [ editorCanvasView ] ) =>\n\t\t\t\t\t\t\teditorCanvasView ? (\n\t\t\t\t\t\t\t\teditorCanvasView\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{ ! isPreviewMode &&\n\t\t\t\t\t\t\t\t\t\t( mode === 'text' ||\n\t\t\t\t\t\t\t\t\t\t\t! isRichEditingEnabled ) && (\n\t\t\t\t\t\t\t\t\t\t\t<TextEditor\n\t\t\t\t\t\t\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\t\t\t\t\t\t\tautoFocus={ autoFocus }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! isPreviewMode &&\n\t\t\t\t\t\t\t\t\t\t! isLargeViewport &&\n\t\t\t\t\t\t\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t\t\t\t\t\t\t<BlockToolbar hideDragHandle />\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ( isPreviewMode ||\n\t\t\t\t\t\t\t\t\t\t( isRichEditingEnabled &&\n\t\t\t\t\t\t\t\t\t\t\tmode === 'visual' ) ) && (\n\t\t\t\t\t\t\t\t\t\t<VisualEditor\n\t\t\t\t\t\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\t\t\t\t\t\tdisableIframe={ disableIframe }\n\t\t\t\t\t\t\t\t\t\t\t// We should auto-focus the canvas (title) on load.\n\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/no-autofocus\n\t\t\t\t\t\t\t\t\t\t\tautoFocus={ autoFocus }\n\t\t\t\t\t\t\t\t\t\t\tiframeProps={ iframeProps }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ children }\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</EditorContentSlotFill.Slot>\n\t\t\t\t</>\n\t\t\t}\n\t\t\tfooter={\n\t\t\t\t! isPreviewMode &&\n\t\t\t\t! isDistractionFree &&\n\t\t\t\tisLargeViewport &&\n\t\t\t\tshowBlockBreadcrumbs &&\n\t\t\t\tisRichEditingEnabled &&\n\t\t\t\t! isZoomOut &&\n\t\t\t\tmode === 'visual' && (\n\t\t\t\t\t<BlockBreadcrumb rootLabelText={ documentLabel } />\n\t\t\t\t)\n\t\t\t}\n\t\t\tactions={\n\t\t\t\t! isPreviewMode\n\t\t\t\t\t? customSavePanel || (\n\t\t\t\t\t\t\t<SavePublishPanels\n\t\t\t\t\t\t\t\tcloseEntitiesSavedStates={\n\t\t\t\t\t\t\t\t\tcloseEntitiesSavedStates\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisEntitiesSavedStatesOpen={\n\t\t\t\t\t\t\t\t\tentitiesSavedStatesCallback\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback={\n\t\t\t\t\t\t\t\t\tsetEntitiesSavedStatesCallback\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tforceIsDirtyPublishPanel={ forceIsDirty }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t )\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -156,7 +156,7 @@ function EntitiesSavedStatesExtensible({
|
|
|
156
156
|
}), additionalPrompt]
|
|
157
157
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
|
|
158
158
|
id: renderDialog ? dialogDescription : undefined,
|
|
159
|
-
children: isDirty ? (0, _element.createInterpolateElement)((0, _i18n.sprintf)(
|
|
159
|
+
children: isDirty ? (0, _element.createInterpolateElement)((0, _i18n.sprintf)(/* translators: %d: number of site changes waiting to be saved. */
|
|
160
160
|
(0, _i18n._n)('There is <strong>%d site change</strong> waiting to be saved.', 'There are <strong>%d site changes</strong> waiting to be saved.', sortedPartitionedSavables.length), sortedPartitionedSavables.length), {
|
|
161
161
|
strong: /*#__PURE__*/(0, _jsxRuntime.jsx)("strong", {})
|
|
162
162
|
}) : (0, _i18n.__)('Select the items you want to save.')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_i18n","_element","_compose","_data","_entityTypeList","_interopRequireDefault","_useIsDirty","_store","_lockUnlock","_jsxRuntime","identity","values","EntitiesSavedStates","close","renderDialog","undefined","isDirtyProps","useIsDirty","jsx","EntitiesSavedStatesExtensible","additionalPrompt","onSave","saveEnabled","saveEnabledProp","saveLabel","__","dirtyEntityRecords","isDirty","setUnselectedEntities","unselectedEntities","saveButtonRef","useRef","saveDirtyEntities","unlock","useDispatch","editorStore","partitionedSavables","reduce","acc","record","name","push","site","siteSavables","wp_template","templateSavables","wp_template_part","templatePartSavables","contentSavables","sortedPartitionedSavables","Object","filter","Array","isArray","dismissPanel","useCallback","saveDialogRef","saveDialogProps","useDialog","onClose","dialogLabel","useInstanceId","dialogDescription","jsxs","ref","className","role","children","Flex","gap","FlexItem","isBlock","as","Button","variant","size","onClick","disabled","accessibleWhenDisabled","entitiesToSkip","id","createInterpolateElement","sprintf","_n","length","strong","map","list","default"],"sources":["@wordpress/editor/src/components/entities-saved-states/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, Flex, FlexItem } from '@wordpress/components';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport {\n\tuseCallback,\n\tuseRef,\n\tcreateInterpolateElement,\n} from '@wordpress/element';\nimport {\n\t__experimentalUseDialog as useDialog,\n\tuseInstanceId,\n} from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport EntityTypeList from './entity-type-list';\nimport { useIsDirty } from './hooks/use-is-dirty';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nfunction identity( values ) {\n\treturn values;\n}\n\n/**\n * Renders the component for managing saved states of entities.\n *\n * @param {Object} props The component props.\n * @param {Function} props.close The function to close the dialog.\n * @param {Function} props.renderDialog The function to render the dialog.\n *\n * @return {JSX.Element} The rendered component.\n */\nexport default function EntitiesSavedStates( {\n\tclose,\n\trenderDialog = undefined,\n} ) {\n\tconst isDirtyProps = useIsDirty();\n\treturn (\n\t\t<EntitiesSavedStatesExtensible\n\t\t\tclose={ close }\n\t\t\trenderDialog={ renderDialog }\n\t\t\t{ ...isDirtyProps }\n\t\t/>\n\t);\n}\n\n/**\n * Renders a panel for saving entities with dirty records.\n *\n * @param {Object} props The component props.\n * @param {string} props.additionalPrompt Additional prompt to display.\n * @param {Function} props.close Function to close the panel.\n * @param {Function} props.onSave Function to call when saving entities.\n * @param {boolean} props.saveEnabled Flag indicating if save is enabled.\n * @param {string} props.saveLabel Label for the save button.\n * @param {Function} props.renderDialog Function to render a custom dialog.\n * @param {Array} props.dirtyEntityRecords Array of dirty entity records.\n * @param {boolean} props.isDirty Flag indicating if there are dirty entities.\n * @param {Function} props.setUnselectedEntities Function to set unselected entities.\n * @param {Array} props.unselectedEntities Array of unselected entities.\n *\n * @return {JSX.Element} The rendered component.\n */\nexport function EntitiesSavedStatesExtensible( {\n\tadditionalPrompt = undefined,\n\tclose,\n\tonSave = identity,\n\tsaveEnabled: saveEnabledProp = undefined,\n\tsaveLabel = __( 'Save' ),\n\trenderDialog = undefined,\n\tdirtyEntityRecords,\n\tisDirty,\n\tsetUnselectedEntities,\n\tunselectedEntities,\n} ) {\n\tconst saveButtonRef = useRef();\n\tconst { saveDirtyEntities } = unlock( useDispatch( editorStore ) );\n\t// To group entities by type.\n\tconst partitionedSavables = dirtyEntityRecords.reduce( ( acc, record ) => {\n\t\tconst { name } = record;\n\t\tif ( ! acc[ name ] ) {\n\t\t\tacc[ name ] = [];\n\t\t}\n\t\tacc[ name ].push( record );\n\t\treturn acc;\n\t}, {} );\n\n\t// Sort entity groups.\n\tconst {\n\t\tsite: siteSavables,\n\t\twp_template: templateSavables,\n\t\twp_template_part: templatePartSavables,\n\t\t...contentSavables\n\t} = partitionedSavables;\n\tconst sortedPartitionedSavables = [\n\t\tsiteSavables,\n\t\ttemplateSavables,\n\t\ttemplatePartSavables,\n\t\t...Object.values( contentSavables ),\n\t].filter( Array.isArray );\n\n\tconst saveEnabled = saveEnabledProp ?? isDirty;\n\t// Explicitly define this with no argument passed. Using `close` on\n\t// its own will use the event object in place of the expected saved entities.\n\tconst dismissPanel = useCallback( () => close(), [ close ] );\n\n\tconst [ saveDialogRef, saveDialogProps ] = useDialog( {\n\t\tonClose: () => dismissPanel(),\n\t} );\n\tconst dialogLabel = useInstanceId( EntitiesSavedStatesExtensible, 'label' );\n\tconst dialogDescription = useInstanceId(\n\t\tEntitiesSavedStatesExtensible,\n\t\t'description'\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tref={ saveDialogRef }\n\t\t\t{ ...saveDialogProps }\n\t\t\tclassName=\"entities-saved-states__panel\"\n\t\t\trole={ renderDialog ? 'dialog' : undefined }\n\t\t\taria-labelledby={ renderDialog ? dialogLabel : undefined }\n\t\t\taria-describedby={ renderDialog ? dialogDescription : undefined }\n\t\t>\n\t\t\t<Flex className=\"entities-saved-states__panel-header\" gap={ 2 }>\n\t\t\t\t<FlexItem\n\t\t\t\t\tisBlock\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\tonClick={ dismissPanel }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem\n\t\t\t\t\tisBlock\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tref={ saveButtonRef }\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\tdisabled={ ! saveEnabled }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\tsaveDirtyEntities( {\n\t\t\t\t\t\t\tonSave,\n\t\t\t\t\t\t\tdirtyEntityRecords,\n\t\t\t\t\t\t\tentitiesToSkip: unselectedEntities,\n\t\t\t\t\t\t\tclose,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tclassName=\"editor-entities-saved-states__save-button\"\n\t\t\t\t>\n\t\t\t\t\t{ saveLabel }\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\n\t\t\t<div className=\"entities-saved-states__text-prompt\">\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"entities-saved-states__text-prompt--header-wrapper\"\n\t\t\t\t\tid={ renderDialog ? dialogLabel : undefined }\n\t\t\t\t>\n\t\t\t\t\t<strong className=\"entities-saved-states__text-prompt--header\">\n\t\t\t\t\t\t{ __( 'Are you ready to save?' ) }\n\t\t\t\t\t</strong>\n\t\t\t\t\t{ additionalPrompt }\n\t\t\t\t</div>\n\t\t\t\t<p id={ renderDialog ? dialogDescription : undefined }>\n\t\t\t\t\t{ isDirty\n\t\t\t\t\t\t? createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %d: number of site changes waiting to be saved. */\n\t\t\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t\t\t'There is <strong>%d site change</strong> waiting to be saved.',\n\t\t\t\t\t\t\t\t\t\t'There are <strong>%d site changes</strong> waiting to be saved.',\n\t\t\t\t\t\t\t\t\t\tsortedPartitionedSavables.length\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tsortedPartitionedSavables.length\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t{ strong: <strong /> }\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Select the items you want to save.' ) }\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t{ sortedPartitionedSavables.map( ( list ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<EntityTypeList\n\t\t\t\t\t\tkey={ list[ 0 ].name }\n\t\t\t\t\t\tlist={ list }\n\t\t\t\t\t\tunselectedEntities={ unselectedEntities }\n\t\t\t\t\t\tsetUnselectedEntities={ setUnselectedEntities }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_components","require","_i18n","_element","_compose","_data","_entityTypeList","_interopRequireDefault","_useIsDirty","_store","_lockUnlock","_jsxRuntime","identity","values","EntitiesSavedStates","close","renderDialog","undefined","isDirtyProps","useIsDirty","jsx","EntitiesSavedStatesExtensible","additionalPrompt","onSave","saveEnabled","saveEnabledProp","saveLabel","__","dirtyEntityRecords","isDirty","setUnselectedEntities","unselectedEntities","saveButtonRef","useRef","saveDirtyEntities","unlock","useDispatch","editorStore","partitionedSavables","reduce","acc","record","name","push","site","siteSavables","wp_template","templateSavables","wp_template_part","templatePartSavables","contentSavables","sortedPartitionedSavables","Object","filter","Array","isArray","dismissPanel","useCallback","saveDialogRef","saveDialogProps","useDialog","onClose","dialogLabel","useInstanceId","dialogDescription","jsxs","ref","className","role","children","Flex","gap","FlexItem","isBlock","as","Button","variant","size","onClick","disabled","accessibleWhenDisabled","entitiesToSkip","id","createInterpolateElement","sprintf","_n","length","strong","map","list","default"],"sources":["@wordpress/editor/src/components/entities-saved-states/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, Flex, FlexItem } from '@wordpress/components';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport {\n\tuseCallback,\n\tuseRef,\n\tcreateInterpolateElement,\n} from '@wordpress/element';\nimport {\n\t__experimentalUseDialog as useDialog,\n\tuseInstanceId,\n} from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport EntityTypeList from './entity-type-list';\nimport { useIsDirty } from './hooks/use-is-dirty';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nfunction identity( values ) {\n\treturn values;\n}\n\n/**\n * Renders the component for managing saved states of entities.\n *\n * @param {Object} props The component props.\n * @param {Function} props.close The function to close the dialog.\n * @param {Function} props.renderDialog The function to render the dialog.\n *\n * @return {JSX.Element} The rendered component.\n */\nexport default function EntitiesSavedStates( {\n\tclose,\n\trenderDialog = undefined,\n} ) {\n\tconst isDirtyProps = useIsDirty();\n\treturn (\n\t\t<EntitiesSavedStatesExtensible\n\t\t\tclose={ close }\n\t\t\trenderDialog={ renderDialog }\n\t\t\t{ ...isDirtyProps }\n\t\t/>\n\t);\n}\n\n/**\n * Renders a panel for saving entities with dirty records.\n *\n * @param {Object} props The component props.\n * @param {string} props.additionalPrompt Additional prompt to display.\n * @param {Function} props.close Function to close the panel.\n * @param {Function} props.onSave Function to call when saving entities.\n * @param {boolean} props.saveEnabled Flag indicating if save is enabled.\n * @param {string} props.saveLabel Label for the save button.\n * @param {Function} props.renderDialog Function to render a custom dialog.\n * @param {Array} props.dirtyEntityRecords Array of dirty entity records.\n * @param {boolean} props.isDirty Flag indicating if there are dirty entities.\n * @param {Function} props.setUnselectedEntities Function to set unselected entities.\n * @param {Array} props.unselectedEntities Array of unselected entities.\n *\n * @return {JSX.Element} The rendered component.\n */\nexport function EntitiesSavedStatesExtensible( {\n\tadditionalPrompt = undefined,\n\tclose,\n\tonSave = identity,\n\tsaveEnabled: saveEnabledProp = undefined,\n\tsaveLabel = __( 'Save' ),\n\trenderDialog = undefined,\n\tdirtyEntityRecords,\n\tisDirty,\n\tsetUnselectedEntities,\n\tunselectedEntities,\n} ) {\n\tconst saveButtonRef = useRef();\n\tconst { saveDirtyEntities } = unlock( useDispatch( editorStore ) );\n\t// To group entities by type.\n\tconst partitionedSavables = dirtyEntityRecords.reduce( ( acc, record ) => {\n\t\tconst { name } = record;\n\t\tif ( ! acc[ name ] ) {\n\t\t\tacc[ name ] = [];\n\t\t}\n\t\tacc[ name ].push( record );\n\t\treturn acc;\n\t}, {} );\n\n\t// Sort entity groups.\n\tconst {\n\t\tsite: siteSavables,\n\t\twp_template: templateSavables,\n\t\twp_template_part: templatePartSavables,\n\t\t...contentSavables\n\t} = partitionedSavables;\n\tconst sortedPartitionedSavables = [\n\t\tsiteSavables,\n\t\ttemplateSavables,\n\t\ttemplatePartSavables,\n\t\t...Object.values( contentSavables ),\n\t].filter( Array.isArray );\n\n\tconst saveEnabled = saveEnabledProp ?? isDirty;\n\t// Explicitly define this with no argument passed. Using `close` on\n\t// its own will use the event object in place of the expected saved entities.\n\tconst dismissPanel = useCallback( () => close(), [ close ] );\n\n\tconst [ saveDialogRef, saveDialogProps ] = useDialog( {\n\t\tonClose: () => dismissPanel(),\n\t} );\n\tconst dialogLabel = useInstanceId( EntitiesSavedStatesExtensible, 'label' );\n\tconst dialogDescription = useInstanceId(\n\t\tEntitiesSavedStatesExtensible,\n\t\t'description'\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tref={ saveDialogRef }\n\t\t\t{ ...saveDialogProps }\n\t\t\tclassName=\"entities-saved-states__panel\"\n\t\t\trole={ renderDialog ? 'dialog' : undefined }\n\t\t\taria-labelledby={ renderDialog ? dialogLabel : undefined }\n\t\t\taria-describedby={ renderDialog ? dialogDescription : undefined }\n\t\t>\n\t\t\t<Flex className=\"entities-saved-states__panel-header\" gap={ 2 }>\n\t\t\t\t<FlexItem\n\t\t\t\t\tisBlock\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\tonClick={ dismissPanel }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem\n\t\t\t\t\tisBlock\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tref={ saveButtonRef }\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\tdisabled={ ! saveEnabled }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\tsaveDirtyEntities( {\n\t\t\t\t\t\t\tonSave,\n\t\t\t\t\t\t\tdirtyEntityRecords,\n\t\t\t\t\t\t\tentitiesToSkip: unselectedEntities,\n\t\t\t\t\t\t\tclose,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tclassName=\"editor-entities-saved-states__save-button\"\n\t\t\t\t>\n\t\t\t\t\t{ saveLabel }\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\n\t\t\t<div className=\"entities-saved-states__text-prompt\">\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"entities-saved-states__text-prompt--header-wrapper\"\n\t\t\t\t\tid={ renderDialog ? dialogLabel : undefined }\n\t\t\t\t>\n\t\t\t\t\t<strong className=\"entities-saved-states__text-prompt--header\">\n\t\t\t\t\t\t{ __( 'Are you ready to save?' ) }\n\t\t\t\t\t</strong>\n\t\t\t\t\t{ additionalPrompt }\n\t\t\t\t</div>\n\t\t\t\t<p id={ renderDialog ? dialogDescription : undefined }>\n\t\t\t\t\t{ isDirty\n\t\t\t\t\t\t? createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %d: number of site changes waiting to be saved. */\n\t\t\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t\t\t'There is <strong>%d site change</strong> waiting to be saved.',\n\t\t\t\t\t\t\t\t\t\t'There are <strong>%d site changes</strong> waiting to be saved.',\n\t\t\t\t\t\t\t\t\t\tsortedPartitionedSavables.length\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tsortedPartitionedSavables.length\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t{ strong: <strong /> }\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Select the items you want to save.' ) }\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t{ sortedPartitionedSavables.map( ( list ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<EntityTypeList\n\t\t\t\t\t\tkey={ list[ 0 ].name }\n\t\t\t\t\t\tlist={ list }\n\t\t\t\t\t\tunselectedEntities={ unselectedEntities }\n\t\t\t\t\t\tsetUnselectedEntities={ setUnselectedEntities }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_data","_htmlEntities","_coreData","getExternalLink","url","text","getExternalLinkAttributes","getOpenverseLicense","license","licenseVersion","licenseName","trim","toUpperCase","replace","includes","getOpenverseCaption","item","title","foreign_landing_url","foreignLandingUrl","creator","creator_url","creatorUrl","license_version","license_url","licenseUrl","fullLicense","_creator","decodeEntities","_caption","sprintf","_x","coreMediaFetch","query","mediaItems","resolveSelect","coreStore","getMediaItems","orderBy","search","map","mediaItem","alt","alt_text","source_url","previewUrl","media_details","sizes","medium","caption","raw","inserterMediaCategories","name","labels","__","search_items","mediaType","fetch","media_type","defaultArgs","mature","excluded_source","finalQuery","mapFromInserterMediaRequest","per_page","URL","Object","entries","forEach","key","value","queryKey","searchParams","set","response","window","headers","jsonResponse","json","results","result","toLowerCase","startsWith","slice","sourceId","id","undefined","thumbnail","getReportUrl","isExternalResource","_default","exports","default"],"sources":["@wordpress/editor/src/components/media-categories/index.js"],"sourcesContent":["/**\n * The `editor` settings here need to be in sync with the corresponding ones in `editor` package.\n * See `packages/editor/src/components/media-categories/index.js`.\n *\n * In the future we could consider creating an Openvese package that can be used in both `editor` and `site-editor`.\n * The rest of the settings would still need to be in sync though.\n */\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf, _x } from '@wordpress/i18n';\nimport { resolveSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\n\n/** @typedef {import('@wordpress/block-editor').InserterMediaRequest} InserterMediaRequest */\n/** @typedef {import('@wordpress/block-editor').InserterMediaItem} InserterMediaItem */\n/** @typedef {import('@wordpress/block-editor').InserterMediaCategory} InserterMediaCategory */\n\nconst getExternalLink = ( url, text ) =>\n\t`<a ${ getExternalLinkAttributes( url ) }>${ text }</a>`;\n\nconst getExternalLinkAttributes = ( url ) =>\n\t`href=\"${ url }\" target=\"_blank\" rel=\"noreferrer noopener\"`;\n\nconst getOpenverseLicense = ( license, licenseVersion ) => {\n\tlet licenseName = license.trim();\n\t// PDM has no abbreviation\n\tif ( license !== 'pdm' ) {\n\t\tlicenseName = license.toUpperCase().replace( 'SAMPLING', 'Sampling' );\n\t}\n\t// If version is known, append version to the name.\n\t// The license has to have a version to be valid. Only\n\t// PDM (public domain mark) doesn't have a version.\n\tif ( licenseVersion ) {\n\t\tlicenseName += ` ${ licenseVersion }`;\n\t}\n\t// For licenses other than public-domain marks, prepend 'CC' to the name.\n\tif ( ! [ 'pdm', 'cc0' ].includes( license ) ) {\n\t\tlicenseName = `CC ${ licenseName }`;\n\t}\n\treturn licenseName;\n};\n\nconst getOpenverseCaption = ( item ) => {\n\tconst {\n\t\ttitle,\n\t\tforeign_landing_url: foreignLandingUrl,\n\t\tcreator,\n\t\tcreator_url: creatorUrl,\n\t\tlicense,\n\t\tlicense_version: licenseVersion,\n\t\tlicense_url: licenseUrl,\n\t} = item;\n\tconst fullLicense = getOpenverseLicense( license, licenseVersion );\n\tconst _creator = decodeEntities( creator );\n\tlet _caption;\n\tif ( _creator ) {\n\t\t_caption = title\n\t\t\t? sprintf(\n\t\t\t\t\t// translators: %1s: Title of a media work from Openverse; %2s: Name of the work's creator; %3s: Work's licence e.g: \"CC0 1.0\".\n\t\t\t\t\t_x( '\"%1$s\" by %2$s/ %3$s', 'caption' ),\n\t\t\t\t\tgetExternalLink(\n\t\t\t\t\t\tforeignLandingUrl,\n\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t),\n\t\t\t\t\tcreatorUrl\n\t\t\t\t\t\t? getExternalLink( creatorUrl, _creator )\n\t\t\t\t\t\t: _creator,\n\t\t\t\t\tlicenseUrl\n\t\t\t\t\t\t? getExternalLink(\n\t\t\t\t\t\t\t\t`${ licenseUrl }?ref=openverse`,\n\t\t\t\t\t\t\t\tfullLicense\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: fullLicense\n\t\t\t )\n\t\t\t: sprintf(\n\t\t\t\t\t// translators: %1s: Link attributes for a given Openverse media work; %2s: Name of the work's creator; %3s: Works's licence e.g: \"CC0 1.0\".\n\t\t\t\t\t_x( '<a %1$s>Work</a> by %2$s/ %3$s', 'caption' ),\n\t\t\t\t\tgetExternalLinkAttributes( foreignLandingUrl ),\n\t\t\t\t\tcreatorUrl\n\t\t\t\t\t\t? getExternalLink( creatorUrl, _creator )\n\t\t\t\t\t\t: _creator,\n\t\t\t\t\tlicenseUrl\n\t\t\t\t\t\t? getExternalLink(\n\t\t\t\t\t\t\t\t`${ licenseUrl }?ref=openverse`,\n\t\t\t\t\t\t\t\tfullLicense\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: fullLicense\n\t\t\t );\n\t} else {\n\t\t_caption = title\n\t\t\t? sprintf(\n\t\t\t\t\t// translators: %1s: Title of a media work from Openverse; %2s: Work's licence e.g: \"CC0 1.0\".\n\t\t\t\t\t_x( '\"%1$s\"/ %2$s', 'caption' ),\n\t\t\t\t\tgetExternalLink(\n\t\t\t\t\t\tforeignLandingUrl,\n\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t),\n\t\t\t\t\tlicenseUrl\n\t\t\t\t\t\t? getExternalLink(\n\t\t\t\t\t\t\t\t`${ licenseUrl }?ref=openverse`,\n\t\t\t\t\t\t\t\tfullLicense\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: fullLicense\n\t\t\t )\n\t\t\t: sprintf(\n\t\t\t\t\t// translators: %1s: Link attributes for a given Openverse media work; %2s: Works's licence e.g: \"CC0 1.0\".\n\t\t\t\t\t_x( '<a %1$s>Work</a>/ %2$s', 'caption' ),\n\t\t\t\t\tgetExternalLinkAttributes( foreignLandingUrl ),\n\t\t\t\t\tlicenseUrl\n\t\t\t\t\t\t? getExternalLink(\n\t\t\t\t\t\t\t\t`${ licenseUrl }?ref=openverse`,\n\t\t\t\t\t\t\t\tfullLicense\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: fullLicense\n\t\t\t );\n\t}\n\treturn _caption.replace( /\\s{2}/g, ' ' );\n};\n\nconst coreMediaFetch = async ( query = {} ) => {\n\tconst mediaItems = await resolveSelect( coreStore ).getMediaItems( {\n\t\t...query,\n\t\torderBy: !! query?.search ? 'relevance' : 'date',\n\t} );\n\treturn mediaItems.map( ( mediaItem ) => ( {\n\t\t...mediaItem,\n\t\talt: mediaItem.alt_text,\n\t\turl: mediaItem.source_url,\n\t\tpreviewUrl: mediaItem.media_details?.sizes?.medium?.source_url,\n\t\tcaption: mediaItem.caption?.raw,\n\t} ) );\n};\n\n/** @type {InserterMediaCategory[]} */\nconst inserterMediaCategories = [\n\t{\n\t\tname: 'images',\n\t\tlabels: {\n\t\t\tname: __( 'Images' ),\n\t\t\tsearch_items: __( 'Search images' ),\n\t\t},\n\t\tmediaType: 'image',\n\t\tasync fetch( query = {} ) {\n\t\t\treturn coreMediaFetch( { ...query, media_type: 'image' } );\n\t\t},\n\t},\n\t{\n\t\tname: 'videos',\n\t\tlabels: {\n\t\t\tname: __( 'Videos' ),\n\t\t\tsearch_items: __( 'Search videos' ),\n\t\t},\n\t\tmediaType: 'video',\n\t\tasync fetch( query = {} ) {\n\t\t\treturn coreMediaFetch( { ...query, media_type: 'video' } );\n\t\t},\n\t},\n\t{\n\t\tname: 'audio',\n\t\tlabels: {\n\t\t\tname: __( 'Audio' ),\n\t\t\tsearch_items: __( 'Search audio' ),\n\t\t},\n\t\tmediaType: 'audio',\n\t\tasync fetch( query = {} ) {\n\t\t\treturn coreMediaFetch( { ...query, media_type: 'audio' } );\n\t\t},\n\t},\n\t{\n\t\tname: 'openverse',\n\t\tlabels: {\n\t\t\tname: __( 'Openverse' ),\n\t\t\tsearch_items: __( 'Search Openverse' ),\n\t\t},\n\t\tmediaType: 'image',\n\t\tasync fetch( query = {} ) {\n\t\t\tconst defaultArgs = {\n\t\t\t\tmature: false,\n\t\t\t\texcluded_source: 'flickr,inaturalist,wikimedia',\n\t\t\t\tlicense: 'pdm,cc0',\n\t\t\t};\n\t\t\tconst finalQuery = { ...query, ...defaultArgs };\n\t\t\tconst mapFromInserterMediaRequest = {\n\t\t\t\tper_page: 'page_size',\n\t\t\t\tsearch: 'q',\n\t\t\t};\n\t\t\tconst url = new URL( 'https://api.openverse.org/v1/images/' );\n\t\t\tObject.entries( finalQuery ).forEach( ( [ key, value ] ) => {\n\t\t\t\tconst queryKey = mapFromInserterMediaRequest[ key ] || key;\n\t\t\t\turl.searchParams.set( queryKey, value );\n\t\t\t} );\n\t\t\tconst response = await window.fetch( url, {\n\t\t\t\theaders: {\n\t\t\t\t\t'User-Agent': 'WordPress/inserter-media-fetch',\n\t\t\t\t},\n\t\t\t} );\n\t\t\tconst jsonResponse = await response.json();\n\t\t\tconst results = jsonResponse.results;\n\t\t\treturn results.map( ( result ) => ( {\n\t\t\t\t...result,\n\t\t\t\t// This is a temp solution for better titles, until Openverse API\n\t\t\t\t// completes the cleaning up of some titles of their upstream data.\n\t\t\t\ttitle: result.title?.toLowerCase().startsWith( 'file:' )\n\t\t\t\t\t? result.title.slice( 5 )\n\t\t\t\t\t: result.title,\n\t\t\t\tsourceId: result.id,\n\t\t\t\tid: undefined,\n\t\t\t\tcaption: getOpenverseCaption( result ),\n\t\t\t\tpreviewUrl: result.thumbnail,\n\t\t\t} ) );\n\t\t},\n\t\tgetReportUrl: ( { sourceId } ) =>\n\t\t\t`https://wordpress.org/openverse/image/${ sourceId }/report/`,\n\t\tisExternalResource: true,\n\t},\n];\n\nexport default inserterMediaCategories;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_i18n","require","_data","_htmlEntities","_coreData","getExternalLink","url","text","getExternalLinkAttributes","getOpenverseLicense","license","licenseVersion","licenseName","trim","toUpperCase","replace","includes","getOpenverseCaption","item","title","foreign_landing_url","foreignLandingUrl","creator","creator_url","creatorUrl","license_version","license_url","licenseUrl","fullLicense","_creator","decodeEntities","_caption","sprintf","_x","coreMediaFetch","query","mediaItems","resolveSelect","coreStore","getMediaItems","orderBy","search","map","mediaItem","alt","alt_text","source_url","previewUrl","media_details","sizes","medium","caption","raw","inserterMediaCategories","name","labels","__","search_items","mediaType","fetch","media_type","defaultArgs","mature","excluded_source","finalQuery","mapFromInserterMediaRequest","per_page","URL","Object","entries","forEach","key","value","queryKey","searchParams","set","response","window","headers","jsonResponse","json","results","result","toLowerCase","startsWith","slice","sourceId","id","undefined","thumbnail","getReportUrl","isExternalResource","_default","exports","default"],"sources":["@wordpress/editor/src/components/media-categories/index.js"],"sourcesContent":["/**\n * The `editor` settings here need to be in sync with the corresponding ones in `editor` package.\n * See `packages/editor/src/components/media-categories/index.js`.\n *\n * In the future we could consider creating an Openvese package that can be used in both `editor` and `site-editor`.\n * The rest of the settings would still need to be in sync though.\n */\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf, _x } from '@wordpress/i18n';\nimport { resolveSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\n\n/** @typedef {import('@wordpress/block-editor').InserterMediaRequest} InserterMediaRequest */\n/** @typedef {import('@wordpress/block-editor').InserterMediaItem} InserterMediaItem */\n/** @typedef {import('@wordpress/block-editor').InserterMediaCategory} InserterMediaCategory */\n\nconst getExternalLink = ( url, text ) =>\n\t`<a ${ getExternalLinkAttributes( url ) }>${ text }</a>`;\n\nconst getExternalLinkAttributes = ( url ) =>\n\t`href=\"${ url }\" target=\"_blank\" rel=\"noreferrer noopener\"`;\n\nconst getOpenverseLicense = ( license, licenseVersion ) => {\n\tlet licenseName = license.trim();\n\t// PDM has no abbreviation\n\tif ( license !== 'pdm' ) {\n\t\tlicenseName = license.toUpperCase().replace( 'SAMPLING', 'Sampling' );\n\t}\n\t// If version is known, append version to the name.\n\t// The license has to have a version to be valid. Only\n\t// PDM (public domain mark) doesn't have a version.\n\tif ( licenseVersion ) {\n\t\tlicenseName += ` ${ licenseVersion }`;\n\t}\n\t// For licenses other than public-domain marks, prepend 'CC' to the name.\n\tif ( ! [ 'pdm', 'cc0' ].includes( license ) ) {\n\t\tlicenseName = `CC ${ licenseName }`;\n\t}\n\treturn licenseName;\n};\n\nconst getOpenverseCaption = ( item ) => {\n\tconst {\n\t\ttitle,\n\t\tforeign_landing_url: foreignLandingUrl,\n\t\tcreator,\n\t\tcreator_url: creatorUrl,\n\t\tlicense,\n\t\tlicense_version: licenseVersion,\n\t\tlicense_url: licenseUrl,\n\t} = item;\n\tconst fullLicense = getOpenverseLicense( license, licenseVersion );\n\tconst _creator = decodeEntities( creator );\n\tlet _caption;\n\tif ( _creator ) {\n\t\t_caption = title\n\t\t\t? sprintf(\n\t\t\t\t\t// translators: %1s: Title of a media work from Openverse; %2s: Name of the work's creator; %3s: Work's licence e.g: \"CC0 1.0\".\n\t\t\t\t\t_x( '\"%1$s\" by %2$s/ %3$s', 'caption' ),\n\t\t\t\t\tgetExternalLink(\n\t\t\t\t\t\tforeignLandingUrl,\n\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t),\n\t\t\t\t\tcreatorUrl\n\t\t\t\t\t\t? getExternalLink( creatorUrl, _creator )\n\t\t\t\t\t\t: _creator,\n\t\t\t\t\tlicenseUrl\n\t\t\t\t\t\t? getExternalLink(\n\t\t\t\t\t\t\t\t`${ licenseUrl }?ref=openverse`,\n\t\t\t\t\t\t\t\tfullLicense\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: fullLicense\n\t\t\t )\n\t\t\t: sprintf(\n\t\t\t\t\t// translators: %1s: Link attributes for a given Openverse media work; %2s: Name of the work's creator; %3s: Works's licence e.g: \"CC0 1.0\".\n\t\t\t\t\t_x( '<a %1$s>Work</a> by %2$s/ %3$s', 'caption' ),\n\t\t\t\t\tgetExternalLinkAttributes( foreignLandingUrl ),\n\t\t\t\t\tcreatorUrl\n\t\t\t\t\t\t? getExternalLink( creatorUrl, _creator )\n\t\t\t\t\t\t: _creator,\n\t\t\t\t\tlicenseUrl\n\t\t\t\t\t\t? getExternalLink(\n\t\t\t\t\t\t\t\t`${ licenseUrl }?ref=openverse`,\n\t\t\t\t\t\t\t\tfullLicense\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: fullLicense\n\t\t\t );\n\t} else {\n\t\t_caption = title\n\t\t\t? sprintf(\n\t\t\t\t\t// translators: %1s: Title of a media work from Openverse; %2s: Work's licence e.g: \"CC0 1.0\".\n\t\t\t\t\t_x( '\"%1$s\"/ %2$s', 'caption' ),\n\t\t\t\t\tgetExternalLink(\n\t\t\t\t\t\tforeignLandingUrl,\n\t\t\t\t\t\tdecodeEntities( title )\n\t\t\t\t\t),\n\t\t\t\t\tlicenseUrl\n\t\t\t\t\t\t? getExternalLink(\n\t\t\t\t\t\t\t\t`${ licenseUrl }?ref=openverse`,\n\t\t\t\t\t\t\t\tfullLicense\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: fullLicense\n\t\t\t )\n\t\t\t: sprintf(\n\t\t\t\t\t// translators: %1s: Link attributes for a given Openverse media work; %2s: Works's licence e.g: \"CC0 1.0\".\n\t\t\t\t\t_x( '<a %1$s>Work</a>/ %2$s', 'caption' ),\n\t\t\t\t\tgetExternalLinkAttributes( foreignLandingUrl ),\n\t\t\t\t\tlicenseUrl\n\t\t\t\t\t\t? getExternalLink(\n\t\t\t\t\t\t\t\t`${ licenseUrl }?ref=openverse`,\n\t\t\t\t\t\t\t\tfullLicense\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: fullLicense\n\t\t\t );\n\t}\n\treturn _caption.replace( /\\s{2}/g, ' ' );\n};\n\nconst coreMediaFetch = async ( query = {} ) => {\n\tconst mediaItems = await resolveSelect( coreStore ).getMediaItems( {\n\t\t...query,\n\t\torderBy: !! query?.search ? 'relevance' : 'date',\n\t} );\n\treturn mediaItems.map( ( mediaItem ) => ( {\n\t\t...mediaItem,\n\t\talt: mediaItem.alt_text,\n\t\turl: mediaItem.source_url,\n\t\tpreviewUrl: mediaItem.media_details?.sizes?.medium?.source_url,\n\t\tcaption: mediaItem.caption?.raw,\n\t} ) );\n};\n\n/** @type {InserterMediaCategory[]} */\nconst inserterMediaCategories = [\n\t{\n\t\tname: 'images',\n\t\tlabels: {\n\t\t\tname: __( 'Images' ),\n\t\t\tsearch_items: __( 'Search images' ),\n\t\t},\n\t\tmediaType: 'image',\n\t\tasync fetch( query = {} ) {\n\t\t\treturn coreMediaFetch( { ...query, media_type: 'image' } );\n\t\t},\n\t},\n\t{\n\t\tname: 'videos',\n\t\tlabels: {\n\t\t\tname: __( 'Videos' ),\n\t\t\tsearch_items: __( 'Search videos' ),\n\t\t},\n\t\tmediaType: 'video',\n\t\tasync fetch( query = {} ) {\n\t\t\treturn coreMediaFetch( { ...query, media_type: 'video' } );\n\t\t},\n\t},\n\t{\n\t\tname: 'audio',\n\t\tlabels: {\n\t\t\tname: __( 'Audio' ),\n\t\t\tsearch_items: __( 'Search audio' ),\n\t\t},\n\t\tmediaType: 'audio',\n\t\tasync fetch( query = {} ) {\n\t\t\treturn coreMediaFetch( { ...query, media_type: 'audio' } );\n\t\t},\n\t},\n\t{\n\t\tname: 'openverse',\n\t\tlabels: {\n\t\t\tname: __( 'Openverse' ),\n\t\t\tsearch_items: __( 'Search Openverse' ),\n\t\t},\n\t\tmediaType: 'image',\n\t\tasync fetch( query = {} ) {\n\t\t\tconst defaultArgs = {\n\t\t\t\tmature: false,\n\t\t\t\texcluded_source: 'flickr,inaturalist,wikimedia',\n\t\t\t\tlicense: 'pdm,cc0',\n\t\t\t};\n\t\t\tconst finalQuery = { ...query, ...defaultArgs };\n\t\t\tconst mapFromInserterMediaRequest = {\n\t\t\t\tper_page: 'page_size',\n\t\t\t\tsearch: 'q',\n\t\t\t};\n\t\t\tconst url = new URL( 'https://api.openverse.org/v1/images/' );\n\t\t\tObject.entries( finalQuery ).forEach( ( [ key, value ] ) => {\n\t\t\t\tconst queryKey = mapFromInserterMediaRequest[ key ] || key;\n\t\t\t\turl.searchParams.set( queryKey, value );\n\t\t\t} );\n\t\t\tconst response = await window.fetch( url, {\n\t\t\t\theaders: {\n\t\t\t\t\t'User-Agent': 'WordPress/inserter-media-fetch',\n\t\t\t\t},\n\t\t\t} );\n\t\t\tconst jsonResponse = await response.json();\n\t\t\tconst results = jsonResponse.results;\n\t\t\treturn results.map( ( result ) => ( {\n\t\t\t\t...result,\n\t\t\t\t// This is a temp solution for better titles, until Openverse API\n\t\t\t\t// completes the cleaning up of some titles of their upstream data.\n\t\t\t\ttitle: result.title?.toLowerCase().startsWith( 'file:' )\n\t\t\t\t\t? result.title.slice( 5 )\n\t\t\t\t\t: result.title,\n\t\t\t\tsourceId: result.id,\n\t\t\t\tid: undefined,\n\t\t\t\tcaption: getOpenverseCaption( result ),\n\t\t\t\tpreviewUrl: result.thumbnail,\n\t\t\t} ) );\n\t\t},\n\t\tgetReportUrl: ( { sourceId } ) =>\n\t\t\t`https://wordpress.org/openverse/image/${ sourceId }/report/`,\n\t\tisExternalResource: true,\n\t},\n];\n\nexport default inserterMediaCategories;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -247,7 +247,7 @@ function ParentRow() {
|
|
|
247
247
|
title: (0, _i18n.__)('Parent'),
|
|
248
248
|
onClose: onClose
|
|
249
249
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
250
|
-
children: [(0, _element.createInterpolateElement)((0, _i18n.sprintf)(
|
|
250
|
+
children: [(0, _element.createInterpolateElement)((0, _i18n.sprintf)(/* translators: %1$s The home URL of the WordPress installation without the scheme. */
|
|
251
251
|
(0, _i18n.__)('Child pages inherit characteristics from their parent, such as URL structure. For instance, if "Pricing" is a child of "Services", its URL would be %1$s<wbr />/services<wbr />/pricing.'), (0, _url.filterURLForDisplay)(homeUrl).replace(/([/.])/g, '<wbr />$1')), {
|
|
252
252
|
wbr: /*#__PURE__*/(0, _jsxRuntime.jsx)("wbr", {})
|
|
253
253
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_removeAccents","_interopRequireDefault","require","_i18n","_components","_compose","_element","_data","_htmlEntities","_coreData","_blockEditor","_url","_postPanelRow","_terms","_store","_jsxRuntime","getTitle","post","title","rendered","decodeEntities","id","__","getItemPriority","name","searchValue","normalizedName","removeAccents","toLowerCase","normalizedSearch","startsWith","length","Infinity","exports","PageAttributesParent","editPost","useDispatch","editorStore","fieldValue","setFieldValue","useState","isHierarchical","parentPostId","parentPostTitle","pageItems","useSelect","select","_pType$hierarchical","getPostType","getEntityRecords","getEntityRecord","coreStore","getCurrentPostId","getEditedPostAttribute","postTypeSlug","pageId","pType","postId","postIsHierarchical","hierarchical","query","per_page","exclude","parent_exclude","orderby","order","_fields","search","parentPost","parentOptions","useMemo","getOptionsFromTree","tree","level","mappedNodes","map","treeNode","value","label","repeat","rawName","children","sortedNodes","sort","a","b","priorityA","priorityB","flat","item","parent","buildTermsTree","opts","optsHasParent","find","unshift","handleKeydown","inputValue","handleChange","selectedPostId","jsx","ComboboxControl","__nextHasNoMarginBottom","__next40pxDefaultSize","className","help","options","onFilterValueChange","debounce","onChange","hideLabelFromVision","PostParentToggle","isOpen","onClick","parentTitle","Button","size","variant","sprintf","ParentRow","homeUrl","home","popoverAnchor","setPopoverAnchor","popoverProps","anchor","placement","offset","shift","default","ref","Dropdown","contentClassName","focusOnMount","renderToggle","onToggle","renderContent","onClose","jsxs","__experimentalInspectorPopoverHeader","createInterpolateElement","filterURLForDisplay","replace","wbr","ExternalLink","href","_default"],"sources":["@wordpress/editor/src/components/page-attributes/parent.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tDropdown,\n\tComboboxControl,\n\tExternalLink,\n} from '@wordpress/components';\nimport { debounce } from '@wordpress/compose';\nimport {\n\tcreateInterpolateElement,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\nimport { filterURLForDisplay } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport PostPanelRow from '../post-panel-row';\nimport { buildTermsTree } from '../../utils/terms';\nimport { store as editorStore } from '../../store';\n\nfunction getTitle( post ) {\n\treturn post?.title?.rendered\n\t\t? decodeEntities( post.title.rendered )\n\t\t: `#${ post.id } (${ __( 'no title' ) })`;\n}\n\nexport const getItemPriority = ( name, searchValue ) => {\n\tconst normalizedName = removeAccents( name || '' ).toLowerCase();\n\tconst normalizedSearch = removeAccents( searchValue || '' ).toLowerCase();\n\tif ( normalizedName === normalizedSearch ) {\n\t\treturn 0;\n\t}\n\n\tif ( normalizedName.startsWith( normalizedSearch ) ) {\n\t\treturn normalizedName.length;\n\t}\n\n\treturn Infinity;\n};\n\n/**\n * Renders the Page Attributes Parent component. A dropdown menu in an editor interface\n * for selecting the parent page of a given page.\n *\n * @return {Component|null} The component to be rendered. Return null if post type is not hierarchical.\n */\nexport function PageAttributesParent() {\n\tconst { editPost } = useDispatch( editorStore );\n\tconst [ fieldValue, setFieldValue ] = useState( false );\n\tconst { isHierarchical, parentPostId, parentPostTitle, pageItems } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { getPostType, getEntityRecords, getEntityRecord } =\n\t\t\t\t\tselect( coreStore );\n\t\t\t\tconst { getCurrentPostId, getEditedPostAttribute } =\n\t\t\t\t\tselect( editorStore );\n\t\t\t\tconst postTypeSlug = getEditedPostAttribute( 'type' );\n\t\t\t\tconst pageId = getEditedPostAttribute( 'parent' );\n\t\t\t\tconst pType = getPostType( postTypeSlug );\n\t\t\t\tconst postId = getCurrentPostId();\n\t\t\t\tconst postIsHierarchical = pType?.hierarchical ?? false;\n\t\t\t\tconst query = {\n\t\t\t\t\tper_page: 100,\n\t\t\t\t\texclude: postId,\n\t\t\t\t\tparent_exclude: postId,\n\t\t\t\t\torderby: 'menu_order',\n\t\t\t\t\torder: 'asc',\n\t\t\t\t\t_fields: 'id,title,parent',\n\t\t\t\t};\n\n\t\t\t\t// Perform a search when the field is changed.\n\t\t\t\tif ( !! fieldValue ) {\n\t\t\t\t\tquery.search = fieldValue;\n\t\t\t\t}\n\n\t\t\t\tconst parentPost = pageId\n\t\t\t\t\t? getEntityRecord( 'postType', postTypeSlug, pageId )\n\t\t\t\t\t: null;\n\n\t\t\t\treturn {\n\t\t\t\t\tisHierarchical: postIsHierarchical,\n\t\t\t\t\tparentPostId: pageId,\n\t\t\t\t\tparentPostTitle: parentPost ? getTitle( parentPost ) : '',\n\t\t\t\t\tpageItems: postIsHierarchical\n\t\t\t\t\t\t? getEntityRecords( 'postType', postTypeSlug, query )\n\t\t\t\t\t\t: null,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ fieldValue ]\n\t\t);\n\n\tconst parentOptions = useMemo( () => {\n\t\tconst getOptionsFromTree = ( tree, level = 0 ) => {\n\t\t\tconst mappedNodes = tree.map( ( treeNode ) => [\n\t\t\t\t{\n\t\t\t\t\tvalue: treeNode.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t'— '.repeat( level ) + decodeEntities( treeNode.name ),\n\t\t\t\t\trawName: treeNode.name,\n\t\t\t\t},\n\t\t\t\t...getOptionsFromTree( treeNode.children || [], level + 1 ),\n\t\t\t] );\n\n\t\t\tconst sortedNodes = mappedNodes.sort( ( [ a ], [ b ] ) => {\n\t\t\t\tconst priorityA = getItemPriority( a.rawName, fieldValue );\n\t\t\t\tconst priorityB = getItemPriority( b.rawName, fieldValue );\n\t\t\t\treturn priorityA >= priorityB ? 1 : -1;\n\t\t\t} );\n\n\t\t\treturn sortedNodes.flat();\n\t\t};\n\n\t\tif ( ! pageItems ) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet tree = pageItems.map( ( item ) => ( {\n\t\t\tid: item.id,\n\t\t\tparent: item.parent,\n\t\t\tname: getTitle( item ),\n\t\t} ) );\n\n\t\t// Only build a hierarchical tree when not searching.\n\t\tif ( ! fieldValue ) {\n\t\t\ttree = buildTermsTree( tree );\n\t\t}\n\n\t\tconst opts = getOptionsFromTree( tree );\n\n\t\t// Ensure the current parent is in the options list.\n\t\tconst optsHasParent = opts.find(\n\t\t\t( item ) => item.value === parentPostId\n\t\t);\n\t\tif ( parentPostTitle && ! optsHasParent ) {\n\t\t\topts.unshift( {\n\t\t\t\tvalue: parentPostId,\n\t\t\t\tlabel: parentPostTitle,\n\t\t\t} );\n\t\t}\n\t\treturn opts;\n\t}, [ pageItems, fieldValue, parentPostTitle, parentPostId ] );\n\n\tif ( ! isHierarchical ) {\n\t\treturn null;\n\t}\n\t/**\n\t * Handle user input.\n\t *\n\t * @param {string} inputValue The current value of the input field.\n\t */\n\tconst handleKeydown = ( inputValue ) => {\n\t\tsetFieldValue( inputValue );\n\t};\n\n\t/**\n\t * Handle author selection.\n\t *\n\t * @param {Object} selectedPostId The selected Author.\n\t */\n\tconst handleChange = ( selectedPostId ) => {\n\t\teditPost( { parent: selectedPostId } );\n\t};\n\n\treturn (\n\t\t<ComboboxControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\t__next40pxDefaultSize\n\t\t\tclassName=\"editor-page-attributes__parent\"\n\t\t\tlabel={ __( 'Parent' ) }\n\t\t\thelp={ __( 'Choose a parent page.' ) }\n\t\t\tvalue={ parentPostId }\n\t\t\toptions={ parentOptions }\n\t\t\tonFilterValueChange={ debounce( handleKeydown, 300 ) }\n\t\t\tonChange={ handleChange }\n\t\t\thideLabelFromVision\n\t\t/>\n\t);\n}\n\nfunction PostParentToggle( { isOpen, onClick } ) {\n\tconst parentPost = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute } = select( editorStore );\n\t\tconst parentPostId = getEditedPostAttribute( 'parent' );\n\t\tif ( ! parentPostId ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst postTypeSlug = getEditedPostAttribute( 'type' );\n\t\treturn getEntityRecord( 'postType', postTypeSlug, parentPostId );\n\t}, [] );\n\tconst parentTitle = useMemo(\n\t\t() => ( ! parentPost ? __( 'None' ) : getTitle( parentPost ) ),\n\t\t[ parentPost ]\n\t);\n\treturn (\n\t\t<Button\n\t\t\tsize=\"compact\"\n\t\t\tclassName=\"editor-post-parent__panel-toggle\"\n\t\t\tvariant=\"tertiary\"\n\t\t\taria-expanded={ isOpen }\n\t\t\t// translators: %s: Current post parent.\n\t\t\taria-label={ sprintf( __( 'Change parent: %s' ), parentTitle ) }\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ parentTitle }\n\t\t</Button>\n\t);\n}\n\nexport function ParentRow() {\n\tconst homeUrl = useSelect( ( select ) => {\n\t\t// Site index.\n\t\treturn select( coreStore ).getEntityRecord( 'root', '__unstableBase' )\n\t\t\t?.home;\n\t}, [] );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\tplacement: 'left-start',\n\t\t\toffset: 36,\n\t\t\tshift: true,\n\t\t} ),\n\t\t[ popoverAnchor ]\n\t);\n\treturn (\n\t\t<PostPanelRow label={ __( 'Parent' ) } ref={ setPopoverAnchor }>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"editor-post-parent__panel-dropdown\"\n\t\t\t\tcontentClassName=\"editor-post-parent__panel-dialog\"\n\t\t\t\tfocusOnMount\n\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t<PostParentToggle isOpen={ isOpen } onClick={ onToggle } />\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<div className=\"editor-post-parent\">\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ __( 'Parent' ) }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %1$s The home URL of the WordPress installation without the scheme. */\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'Child pages inherit characteristics from their parent, such as URL structure. For instance, if \"Pricing\" is a child of \"Services\", its URL would be %1$s<wbr />/services<wbr />/pricing.'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tfilterURLForDisplay( homeUrl ).replace(\n\t\t\t\t\t\t\t\t\t\t/([/.])/g,\n\t\t\t\t\t\t\t\t\t\t'<wbr />$1'\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\twbr: <wbr />,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'They also show up as sub-items in the default navigation menu. <a>Learn more.</a>'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ta: (\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/page-post-settings-sidebar/#page-attributes'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<PageAttributesParent />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</PostPanelRow>\n\t);\n}\n\nexport default PageAttributesParent;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_removeAccents","_interopRequireDefault","require","_i18n","_components","_compose","_element","_data","_htmlEntities","_coreData","_blockEditor","_url","_postPanelRow","_terms","_store","_jsxRuntime","getTitle","post","title","rendered","decodeEntities","id","__","getItemPriority","name","searchValue","normalizedName","removeAccents","toLowerCase","normalizedSearch","startsWith","length","Infinity","exports","PageAttributesParent","editPost","useDispatch","editorStore","fieldValue","setFieldValue","useState","isHierarchical","parentPostId","parentPostTitle","pageItems","useSelect","select","_pType$hierarchical","getPostType","getEntityRecords","getEntityRecord","coreStore","getCurrentPostId","getEditedPostAttribute","postTypeSlug","pageId","pType","postId","postIsHierarchical","hierarchical","query","per_page","exclude","parent_exclude","orderby","order","_fields","search","parentPost","parentOptions","useMemo","getOptionsFromTree","tree","level","mappedNodes","map","treeNode","value","label","repeat","rawName","children","sortedNodes","sort","a","b","priorityA","priorityB","flat","item","parent","buildTermsTree","opts","optsHasParent","find","unshift","handleKeydown","inputValue","handleChange","selectedPostId","jsx","ComboboxControl","__nextHasNoMarginBottom","__next40pxDefaultSize","className","help","options","onFilterValueChange","debounce","onChange","hideLabelFromVision","PostParentToggle","isOpen","onClick","parentTitle","Button","size","variant","sprintf","ParentRow","homeUrl","home","popoverAnchor","setPopoverAnchor","popoverProps","anchor","placement","offset","shift","default","ref","Dropdown","contentClassName","focusOnMount","renderToggle","onToggle","renderContent","onClose","jsxs","__experimentalInspectorPopoverHeader","createInterpolateElement","filterURLForDisplay","replace","wbr","ExternalLink","href","_default"],"sources":["@wordpress/editor/src/components/page-attributes/parent.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tDropdown,\n\tComboboxControl,\n\tExternalLink,\n} from '@wordpress/components';\nimport { debounce } from '@wordpress/compose';\nimport {\n\tcreateInterpolateElement,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\nimport { filterURLForDisplay } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport PostPanelRow from '../post-panel-row';\nimport { buildTermsTree } from '../../utils/terms';\nimport { store as editorStore } from '../../store';\n\nfunction getTitle( post ) {\n\treturn post?.title?.rendered\n\t\t? decodeEntities( post.title.rendered )\n\t\t: `#${ post.id } (${ __( 'no title' ) })`;\n}\n\nexport const getItemPriority = ( name, searchValue ) => {\n\tconst normalizedName = removeAccents( name || '' ).toLowerCase();\n\tconst normalizedSearch = removeAccents( searchValue || '' ).toLowerCase();\n\tif ( normalizedName === normalizedSearch ) {\n\t\treturn 0;\n\t}\n\n\tif ( normalizedName.startsWith( normalizedSearch ) ) {\n\t\treturn normalizedName.length;\n\t}\n\n\treturn Infinity;\n};\n\n/**\n * Renders the Page Attributes Parent component. A dropdown menu in an editor interface\n * for selecting the parent page of a given page.\n *\n * @return {Component|null} The component to be rendered. Return null if post type is not hierarchical.\n */\nexport function PageAttributesParent() {\n\tconst { editPost } = useDispatch( editorStore );\n\tconst [ fieldValue, setFieldValue ] = useState( false );\n\tconst { isHierarchical, parentPostId, parentPostTitle, pageItems } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { getPostType, getEntityRecords, getEntityRecord } =\n\t\t\t\t\tselect( coreStore );\n\t\t\t\tconst { getCurrentPostId, getEditedPostAttribute } =\n\t\t\t\t\tselect( editorStore );\n\t\t\t\tconst postTypeSlug = getEditedPostAttribute( 'type' );\n\t\t\t\tconst pageId = getEditedPostAttribute( 'parent' );\n\t\t\t\tconst pType = getPostType( postTypeSlug );\n\t\t\t\tconst postId = getCurrentPostId();\n\t\t\t\tconst postIsHierarchical = pType?.hierarchical ?? false;\n\t\t\t\tconst query = {\n\t\t\t\t\tper_page: 100,\n\t\t\t\t\texclude: postId,\n\t\t\t\t\tparent_exclude: postId,\n\t\t\t\t\torderby: 'menu_order',\n\t\t\t\t\torder: 'asc',\n\t\t\t\t\t_fields: 'id,title,parent',\n\t\t\t\t};\n\n\t\t\t\t// Perform a search when the field is changed.\n\t\t\t\tif ( !! fieldValue ) {\n\t\t\t\t\tquery.search = fieldValue;\n\t\t\t\t}\n\n\t\t\t\tconst parentPost = pageId\n\t\t\t\t\t? getEntityRecord( 'postType', postTypeSlug, pageId )\n\t\t\t\t\t: null;\n\n\t\t\t\treturn {\n\t\t\t\t\tisHierarchical: postIsHierarchical,\n\t\t\t\t\tparentPostId: pageId,\n\t\t\t\t\tparentPostTitle: parentPost ? getTitle( parentPost ) : '',\n\t\t\t\t\tpageItems: postIsHierarchical\n\t\t\t\t\t\t? getEntityRecords( 'postType', postTypeSlug, query )\n\t\t\t\t\t\t: null,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ fieldValue ]\n\t\t);\n\n\tconst parentOptions = useMemo( () => {\n\t\tconst getOptionsFromTree = ( tree, level = 0 ) => {\n\t\t\tconst mappedNodes = tree.map( ( treeNode ) => [\n\t\t\t\t{\n\t\t\t\t\tvalue: treeNode.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t'— '.repeat( level ) + decodeEntities( treeNode.name ),\n\t\t\t\t\trawName: treeNode.name,\n\t\t\t\t},\n\t\t\t\t...getOptionsFromTree( treeNode.children || [], level + 1 ),\n\t\t\t] );\n\n\t\t\tconst sortedNodes = mappedNodes.sort( ( [ a ], [ b ] ) => {\n\t\t\t\tconst priorityA = getItemPriority( a.rawName, fieldValue );\n\t\t\t\tconst priorityB = getItemPriority( b.rawName, fieldValue );\n\t\t\t\treturn priorityA >= priorityB ? 1 : -1;\n\t\t\t} );\n\n\t\t\treturn sortedNodes.flat();\n\t\t};\n\n\t\tif ( ! pageItems ) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet tree = pageItems.map( ( item ) => ( {\n\t\t\tid: item.id,\n\t\t\tparent: item.parent,\n\t\t\tname: getTitle( item ),\n\t\t} ) );\n\n\t\t// Only build a hierarchical tree when not searching.\n\t\tif ( ! fieldValue ) {\n\t\t\ttree = buildTermsTree( tree );\n\t\t}\n\n\t\tconst opts = getOptionsFromTree( tree );\n\n\t\t// Ensure the current parent is in the options list.\n\t\tconst optsHasParent = opts.find(\n\t\t\t( item ) => item.value === parentPostId\n\t\t);\n\t\tif ( parentPostTitle && ! optsHasParent ) {\n\t\t\topts.unshift( {\n\t\t\t\tvalue: parentPostId,\n\t\t\t\tlabel: parentPostTitle,\n\t\t\t} );\n\t\t}\n\t\treturn opts;\n\t}, [ pageItems, fieldValue, parentPostTitle, parentPostId ] );\n\n\tif ( ! isHierarchical ) {\n\t\treturn null;\n\t}\n\t/**\n\t * Handle user input.\n\t *\n\t * @param {string} inputValue The current value of the input field.\n\t */\n\tconst handleKeydown = ( inputValue ) => {\n\t\tsetFieldValue( inputValue );\n\t};\n\n\t/**\n\t * Handle author selection.\n\t *\n\t * @param {Object} selectedPostId The selected Author.\n\t */\n\tconst handleChange = ( selectedPostId ) => {\n\t\teditPost( { parent: selectedPostId } );\n\t};\n\n\treturn (\n\t\t<ComboboxControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\t__next40pxDefaultSize\n\t\t\tclassName=\"editor-page-attributes__parent\"\n\t\t\tlabel={ __( 'Parent' ) }\n\t\t\thelp={ __( 'Choose a parent page.' ) }\n\t\t\tvalue={ parentPostId }\n\t\t\toptions={ parentOptions }\n\t\t\tonFilterValueChange={ debounce( handleKeydown, 300 ) }\n\t\t\tonChange={ handleChange }\n\t\t\thideLabelFromVision\n\t\t/>\n\t);\n}\n\nfunction PostParentToggle( { isOpen, onClick } ) {\n\tconst parentPost = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute } = select( editorStore );\n\t\tconst parentPostId = getEditedPostAttribute( 'parent' );\n\t\tif ( ! parentPostId ) {\n\t\t\treturn null;\n\t\t}\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst postTypeSlug = getEditedPostAttribute( 'type' );\n\t\treturn getEntityRecord( 'postType', postTypeSlug, parentPostId );\n\t}, [] );\n\tconst parentTitle = useMemo(\n\t\t() => ( ! parentPost ? __( 'None' ) : getTitle( parentPost ) ),\n\t\t[ parentPost ]\n\t);\n\treturn (\n\t\t<Button\n\t\t\tsize=\"compact\"\n\t\t\tclassName=\"editor-post-parent__panel-toggle\"\n\t\t\tvariant=\"tertiary\"\n\t\t\taria-expanded={ isOpen }\n\t\t\t// translators: %s: Current post parent.\n\t\t\taria-label={ sprintf( __( 'Change parent: %s' ), parentTitle ) }\n\t\t\tonClick={ onClick }\n\t\t>\n\t\t\t{ parentTitle }\n\t\t</Button>\n\t);\n}\n\nexport function ParentRow() {\n\tconst homeUrl = useSelect( ( select ) => {\n\t\t// Site index.\n\t\treturn select( coreStore ).getEntityRecord( 'root', '__unstableBase' )\n\t\t\t?.home;\n\t}, [] );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\tplacement: 'left-start',\n\t\t\toffset: 36,\n\t\t\tshift: true,\n\t\t} ),\n\t\t[ popoverAnchor ]\n\t);\n\treturn (\n\t\t<PostPanelRow label={ __( 'Parent' ) } ref={ setPopoverAnchor }>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"editor-post-parent__panel-dropdown\"\n\t\t\t\tcontentClassName=\"editor-post-parent__panel-dialog\"\n\t\t\t\tfocusOnMount\n\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t<PostParentToggle isOpen={ isOpen } onClick={ onToggle } />\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<div className=\"editor-post-parent\">\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ __( 'Parent' ) }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %1$s The home URL of the WordPress installation without the scheme. */\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'Child pages inherit characteristics from their parent, such as URL structure. For instance, if \"Pricing\" is a child of \"Services\", its URL would be %1$s<wbr />/services<wbr />/pricing.'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tfilterURLForDisplay( homeUrl ).replace(\n\t\t\t\t\t\t\t\t\t\t/([/.])/g,\n\t\t\t\t\t\t\t\t\t\t'<wbr />$1'\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\twbr: <wbr />,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'They also show up as sub-items in the default navigation menu. <a>Learn more.</a>'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ta: (\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/page-post-settings-sidebar/#page-attributes'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<PageAttributesParent />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</PostPanelRow>\n\t);\n}\n\nexport default PageAttributesParent;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_plugins","_data","_warning","_interopRequireDefault","_enablePluginDocumentSettingPanel","_store","_jsxRuntime","Fill","Slot","createSlotFill","PluginDocumentSettingPanel","name","className","title","icon","children","pluginName","usePluginContext","panelName","opened","isEnabled","useSelect","select","isEditorPanelOpened","isEditorPanelEnabled","editorStore","toggleEditorPanelOpened","useDispatch","undefined","globalThis","SCRIPT_DEBUG","warning","jsxs","Fragment","jsx","default","label","PanelBody","onToggle","_default","exports"],"sources":["@wordpress/editor/src/components/plugin-document-setting-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { usePluginContext } from '@wordpress/plugins';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport EnablePluginDocumentSettingPanelOption from '../preferences-modal/enable-plugin-document-setting-panel';\nimport { store as editorStore } from '../../store';\n\nconst { Fill, Slot } = createSlotFill( 'PluginDocumentSettingPanel' );\n\n/**\n * Renders items below the Status & Availability panel in the Document Sidebar.\n *\n * @param {Object} props Component properties.\n * @param {string} props.name Required. A machine-friendly name for the panel.\n * @param {string} [props.className] An optional class name added to the row.\n * @param {string} [props.title] The title of the panel\n * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element, to be rendered when the sidebar is pinned to toolbar.\n * @param {Element} props.children Children to be rendered\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var el = React.createElement;\n * var __ = wp.i18n.__;\n * var registerPlugin = wp.plugins.registerPlugin;\n * var PluginDocumentSettingPanel = wp.editor.PluginDocumentSettingPanel;\n *\n * function MyDocumentSettingPlugin() {\n * \treturn el(\n * \t\tPluginDocumentSettingPanel,\n * \t\t{\n * \t\t\tclassName: 'my-document-setting-plugin',\n * \t\t\ttitle: 'My Panel',\n * \t\t\tname: 'my-panel',\n * \t\t},\n * \t\t__( 'My Document Setting Panel' )\n * \t);\n * }\n *\n * registerPlugin( 'my-document-setting-plugin', {\n * \t\trender: MyDocumentSettingPlugin\n * } );\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { registerPlugin } from '@wordpress/plugins';\n * import { PluginDocumentSettingPanel } from '@wordpress/editor';\n *\n * const MyDocumentSettingTest = () => (\n * \t\t<PluginDocumentSettingPanel className=\"my-document-setting-plugin\" title=\"My Panel\" name=\"my-panel\">\n *\t\t\t<p>My Document Setting Panel</p>\n *\t\t</PluginDocumentSettingPanel>\n *\t);\n *\n * registerPlugin( 'document-setting-test', { render: MyDocumentSettingTest } );\n * ```\n *\n * @return {Component} The component to be rendered.\n */\nconst PluginDocumentSettingPanel = ( {\n\tname,\n\tclassName,\n\ttitle,\n\ticon,\n\tchildren,\n} ) => {\n\tconst { name: pluginName } = usePluginContext();\n\tconst panelName = `${ pluginName }/${ name }`;\n\tconst { opened, isEnabled } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorPanelOpened, isEditorPanelEnabled } =\n\t\t\t\tselect( editorStore );\n\n\t\t\treturn {\n\t\t\t\topened: isEditorPanelOpened( panelName ),\n\t\t\t\tisEnabled: isEditorPanelEnabled( panelName ),\n\t\t\t};\n\t\t},\n\t\t[ panelName ]\n\t);\n\tconst { toggleEditorPanelOpened } = useDispatch( editorStore );\n\n\tif ( undefined === name ) {\n\t\twarning( 'PluginDocumentSettingPanel requires a name property.' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<EnablePluginDocumentSettingPanelOption\n\t\t\t\tlabel={ title }\n\t\t\t\tpanelName={ panelName }\n\t\t\t/>\n\t\t\t<Fill>\n\t\t\t\t{ isEnabled && (\n\t\t\t\t\t<PanelBody\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\topened={ opened }\n\t\t\t\t\t\tonToggle={ () => toggleEditorPanelOpened( panelName ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</Fill>\n\t\t</>\n\t);\n};\n\nPluginDocumentSettingPanel.Slot = Slot;\n\nexport default PluginDocumentSettingPanel;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAC,sBAAA,CAAAJ,OAAA;AAKA,IAAAK,iCAAA,GAAAD,sBAAA,CAAAJ,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAAmD,IAAAO,WAAA,GAAAP,OAAA;AAZnD;AACA;AACA;;AAMA;AACA;AACA;;AAIA,MAAM;EAAEQ,IAAI;EAAEC;AAAK,CAAC,GAAG,IAAAC,0BAAc,EAAE,4BAA6B,CAAC;;AAErE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,GAAGA,CAAE;EACpCC,IAAI;EACJC,SAAS;EACTC,KAAK;EACLC,IAAI;EACJC;AACD,CAAC,KAAM;EACN,MAAM;IAAEJ,IAAI,EAAEK;EAAW,CAAC,GAAG,IAAAC,yBAAgB,EAAC,CAAC;EAC/C,MAAMC,SAAS,
|
|
1
|
+
{"version":3,"names":["_components","require","_plugins","_data","_warning","_interopRequireDefault","_enablePluginDocumentSettingPanel","_store","_jsxRuntime","Fill","Slot","createSlotFill","PluginDocumentSettingPanel","name","className","title","icon","children","pluginName","usePluginContext","panelName","opened","isEnabled","useSelect","select","isEditorPanelOpened","isEditorPanelEnabled","editorStore","toggleEditorPanelOpened","useDispatch","undefined","globalThis","SCRIPT_DEBUG","warning","jsxs","Fragment","jsx","default","label","PanelBody","onToggle","_default","exports"],"sources":["@wordpress/editor/src/components/plugin-document-setting-panel/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { usePluginContext } from '@wordpress/plugins';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport EnablePluginDocumentSettingPanelOption from '../preferences-modal/enable-plugin-document-setting-panel';\nimport { store as editorStore } from '../../store';\n\nconst { Fill, Slot } = createSlotFill( 'PluginDocumentSettingPanel' );\n\n/**\n * Renders items below the Status & Availability panel in the Document Sidebar.\n *\n * @param {Object} props Component properties.\n * @param {string} props.name Required. A machine-friendly name for the panel.\n * @param {string} [props.className] An optional class name added to the row.\n * @param {string} [props.title] The title of the panel\n * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element, to be rendered when the sidebar is pinned to toolbar.\n * @param {Element} props.children Children to be rendered\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var el = React.createElement;\n * var __ = wp.i18n.__;\n * var registerPlugin = wp.plugins.registerPlugin;\n * var PluginDocumentSettingPanel = wp.editor.PluginDocumentSettingPanel;\n *\n * function MyDocumentSettingPlugin() {\n * \treturn el(\n * \t\tPluginDocumentSettingPanel,\n * \t\t{\n * \t\t\tclassName: 'my-document-setting-plugin',\n * \t\t\ttitle: 'My Panel',\n * \t\t\tname: 'my-panel',\n * \t\t},\n * \t\t__( 'My Document Setting Panel' )\n * \t);\n * }\n *\n * registerPlugin( 'my-document-setting-plugin', {\n * \t\trender: MyDocumentSettingPlugin\n * } );\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { registerPlugin } from '@wordpress/plugins';\n * import { PluginDocumentSettingPanel } from '@wordpress/editor';\n *\n * const MyDocumentSettingTest = () => (\n * \t\t<PluginDocumentSettingPanel className=\"my-document-setting-plugin\" title=\"My Panel\" name=\"my-panel\">\n *\t\t\t<p>My Document Setting Panel</p>\n *\t\t</PluginDocumentSettingPanel>\n *\t);\n *\n * registerPlugin( 'document-setting-test', { render: MyDocumentSettingTest } );\n * ```\n *\n * @return {Component} The component to be rendered.\n */\nconst PluginDocumentSettingPanel = ( {\n\tname,\n\tclassName,\n\ttitle,\n\ticon,\n\tchildren,\n} ) => {\n\tconst { name: pluginName } = usePluginContext();\n\tconst panelName = `${ pluginName }/${ name }`;\n\tconst { opened, isEnabled } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorPanelOpened, isEditorPanelEnabled } =\n\t\t\t\tselect( editorStore );\n\n\t\t\treturn {\n\t\t\t\topened: isEditorPanelOpened( panelName ),\n\t\t\t\tisEnabled: isEditorPanelEnabled( panelName ),\n\t\t\t};\n\t\t},\n\t\t[ panelName ]\n\t);\n\tconst { toggleEditorPanelOpened } = useDispatch( editorStore );\n\n\tif ( undefined === name ) {\n\t\twarning( 'PluginDocumentSettingPanel requires a name property.' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<EnablePluginDocumentSettingPanelOption\n\t\t\t\tlabel={ title }\n\t\t\t\tpanelName={ panelName }\n\t\t\t/>\n\t\t\t<Fill>\n\t\t\t\t{ isEnabled && (\n\t\t\t\t\t<PanelBody\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\topened={ opened }\n\t\t\t\t\t\tonToggle={ () => toggleEditorPanelOpened( panelName ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</Fill>\n\t\t</>\n\t);\n};\n\nPluginDocumentSettingPanel.Slot = Slot;\n\nexport default PluginDocumentSettingPanel;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAC,sBAAA,CAAAJ,OAAA;AAKA,IAAAK,iCAAA,GAAAD,sBAAA,CAAAJ,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAAmD,IAAAO,WAAA,GAAAP,OAAA;AAZnD;AACA;AACA;;AAMA;AACA;AACA;;AAIA,MAAM;EAAEQ,IAAI;EAAEC;AAAK,CAAC,GAAG,IAAAC,0BAAc,EAAE,4BAA6B,CAAC;;AAErE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,GAAGA,CAAE;EACpCC,IAAI;EACJC,SAAS;EACTC,KAAK;EACLC,IAAI;EACJC;AACD,CAAC,KAAM;EACN,MAAM;IAAEJ,IAAI,EAAEK;EAAW,CAAC,GAAG,IAAAC,yBAAgB,EAAC,CAAC;EAC/C,MAAMC,SAAS,GAAG,GAAIF,UAAU,IAAML,IAAI,EAAG;EAC7C,MAAM;IAAEQ,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,eAAS,EACpCC,MAAM,IAAM;IACb,MAAM;MAAEC,mBAAmB;MAAEC;IAAqB,CAAC,GAClDF,MAAM,CAAEG,YAAY,CAAC;IAEtB,OAAO;MACNN,MAAM,EAAEI,mBAAmB,CAAEL,SAAU,CAAC;MACxCE,SAAS,EAAEI,oBAAoB,CAAEN,SAAU;IAC5C,CAAC;EACF,CAAC,EACD,CAAEA,SAAS,CACZ,CAAC;EACD,MAAM;IAAEQ;EAAwB,CAAC,GAAG,IAAAC,iBAAW,EAAEF,YAAY,CAAC;EAE9D,IAAKG,SAAS,KAAKjB,IAAI,EAAG;IACzBkB,UAAA,CAAAC,YAAA,gBAAAC,gBAAO,EAAE,sDAAuD,CAAC;EAClE;EAEA,oBACC,IAAAzB,WAAA,CAAA0B,IAAA,EAAA1B,WAAA,CAAA2B,QAAA;IAAAlB,QAAA,gBACC,IAAAT,WAAA,CAAA4B,GAAA,EAAC9B,iCAAA,CAAA+B,OAAsC;MACtCC,KAAK,EAAGvB,KAAO;MACfK,SAAS,EAAGA;IAAW,CACvB,CAAC,eACF,IAAAZ,WAAA,CAAA4B,GAAA,EAAC3B,IAAI;MAAAQ,QAAA,EACFK,SAAS,iBACV,IAAAd,WAAA,CAAA4B,GAAA,EAACpC,WAAA,CAAAuC,SAAS;QACTzB,SAAS,EAAGA,SAAW;QACvBC,KAAK,EAAGA,KAAO;QACfC,IAAI,EAAGA,IAAM;QACbK,MAAM,EAAGA,MAAQ;QACjBmB,QAAQ,EAAGA,CAAA,KAAMZ,uBAAuB,CAAER,SAAU,CAAG;QAAAH,QAAA,EAErDA;MAAQ,CACA;IACX,CACI,CAAC;EAAA,CACN,CAAC;AAEL,CAAC;AAEDL,0BAA0B,CAACF,IAAI,GAAGA,IAAI;AAAC,IAAA+B,QAAA,GAAAC,OAAA,CAAAL,OAAA,GAExBzB,0BAA0B","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_data","require","_element","_i18n","_components","_icons","_coreData","_lockUnlock","_actions","_jsxRuntime","DropdownMenuV2","kebabCase","unlock","componentsPrivateApis","PostActions","postType","postId","onActionPerformed","isActionsMenuOpen","setIsActionsMenuOpen","useState","item","permissions","useSelect","select","getEditedEntityRecord","getEntityRecordPermissions","coreStore","itemWithPermissions","useMemo","allActions","usePostActions","actions","filter","action","isEligible","jsx","open","trigger","Button","size","icon","moreVertical","label","__","disabled","length","accessibleWhenDisabled","className","onClick","onOpenChange","placement","children","ActionsDropdownMenuGroup","onClose","DropdownMenuItemTrigger","items","Item","hideOnClick","RenderModal","ItemLabel","ActionWithModal","ActionTrigger","isModalOpen","setIsModalOpen","actionTriggerProps","hideModalHeader","jsxs","Fragment","Modal","title","modalHeader","__experimentalHideHeader","onRequestClose","overlayClassName","id","focusOnMount","closeModal","Group","map","callback"],"sources":["@wordpress/editor/src/components/post-actions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useState, useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tprivateApis as componentsPrivateApis,\n\tButton,\n\tModal,\n} from '@wordpress/components';\nimport { moreVertical } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { usePostActions } from './actions';\n\nconst { DropdownMenuV2, kebabCase } = unlock( componentsPrivateApis );\n\nexport default function PostActions( { postType, postId, onActionPerformed } ) {\n\tconst [ isActionsMenuOpen, setIsActionsMenuOpen ] = useState( false );\n\tconst { item, permissions } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, getEntityRecordPermissions } =\n\t\t\t\tunlock( select( coreStore ) );\n\t\t\treturn {\n\t\t\t\titem: getEditedEntityRecord( 'postType', postType, postId ),\n\t\t\t\tpermissions: getEntityRecordPermissions(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ postId, postType ]\n\t);\n\tconst itemWithPermissions = useMemo( () => {\n\t\treturn {\n\t\t\t...item,\n\t\t\tpermissions,\n\t\t};\n\t}, [ item, permissions ] );\n\tconst allActions = usePostActions( { postType, onActionPerformed } );\n\n\tconst actions = useMemo( () => {\n\t\treturn allActions.filter( ( action ) => {\n\t\t\treturn (\n\t\t\t\t! action.isEligible || action.isEligible( itemWithPermissions )\n\t\t\t);\n\t\t} );\n\t}, [ allActions, itemWithPermissions ] );\n\n\treturn (\n\t\t<DropdownMenuV2\n\t\t\topen={ isActionsMenuOpen }\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tdisabled={ ! actions.length }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tclassName=\"editor-all-actions-button\"\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\tsetIsActionsMenuOpen( ! isActionsMenuOpen )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t}\n\t\t\tonOpenChange={ setIsActionsMenuOpen }\n\t\t\tplacement=\"bottom-end\"\n\t\t>\n\t\t\t<ActionsDropdownMenuGroup\n\t\t\t\tactions={ actions }\n\t\t\t\titem={ itemWithPermissions }\n\t\t\t\tonClose={ () => {\n\t\t\t\t\tsetIsActionsMenuOpen( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</DropdownMenuV2>\n\t);\n}\n\n// From now on all the functions on this file are copied as from the dataviews packages,\n// The editor packages should not be using the dataviews packages directly,\n// and the dataviews package should not be using the editor packages directly,\n// so duplicating the code here seems like the least bad option.\n\n// Copied as is from packages/dataviews/src/item-actions.js\nfunction DropdownMenuItemTrigger( { action, onClick, items } ) {\n\tconst label =\n\t\ttypeof action.label === 'string' ? action.label : action.label( items );\n\treturn (\n\t\t<DropdownMenuV2.Item\n\t\t\tonClick={ onClick }\n\t\t\thideOnClick={ ! action.RenderModal }\n\t\t>\n\t\t\t<DropdownMenuV2.ItemLabel>{ label }</DropdownMenuV2.ItemLabel>\n\t\t</DropdownMenuV2.Item>\n\t);\n}\n\n// Copied as is from packages/dataviews/src/item-actions.js\n// With an added onClose prop.\nfunction ActionWithModal( { action, item, ActionTrigger, onClose } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst actionTriggerProps = {\n\t\taction,\n\t\tonClick: () => setIsModalOpen( true ),\n\t\titems: [ item ],\n\t};\n\tconst { RenderModal, hideModalHeader } = action;\n\treturn (\n\t\t<>\n\t\t\t<ActionTrigger { ...actionTriggerProps } />\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ action.modalHeader || action.label }\n\t\t\t\t\t__experimentalHideHeader={ !! hideModalHeader }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName={ `editor-action-modal editor-action-modal__${ kebabCase(\n\t\t\t\t\t\taction.id\n\t\t\t\t\t) }` }\n\t\t\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<RenderModal\n\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t\tcloseModal={ () => {\n\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\n// Copied as is from packages/dataviews/src/item-actions.js\n// With an added onClose prop.\nfunction ActionsDropdownMenuGroup( { actions, item, onClose } ) {\n\treturn (\n\t\t<DropdownMenuV2.Group>\n\t\t\t{ actions.map( ( action ) => {\n\t\t\t\tif ( action.RenderModal ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ActionWithModal\n\t\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\tActionTrigger={ DropdownMenuItemTrigger }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenuItemTrigger\n\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\tonClick={ () => action.callback( [ item ] ) }\n\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenuV2.Group>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_data","require","_element","_i18n","_components","_icons","_coreData","_lockUnlock","_actions","_jsxRuntime","DropdownMenuV2","kebabCase","unlock","componentsPrivateApis","PostActions","postType","postId","onActionPerformed","isActionsMenuOpen","setIsActionsMenuOpen","useState","item","permissions","useSelect","select","getEditedEntityRecord","getEntityRecordPermissions","coreStore","itemWithPermissions","useMemo","allActions","usePostActions","actions","filter","action","isEligible","jsx","open","trigger","Button","size","icon","moreVertical","label","__","disabled","length","accessibleWhenDisabled","className","onClick","onOpenChange","placement","children","ActionsDropdownMenuGroup","onClose","DropdownMenuItemTrigger","items","Item","hideOnClick","RenderModal","ItemLabel","ActionWithModal","ActionTrigger","isModalOpen","setIsModalOpen","actionTriggerProps","hideModalHeader","jsxs","Fragment","Modal","title","modalHeader","__experimentalHideHeader","onRequestClose","overlayClassName","id","focusOnMount","closeModal","Group","map","callback"],"sources":["@wordpress/editor/src/components/post-actions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useState, useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tprivateApis as componentsPrivateApis,\n\tButton,\n\tModal,\n} from '@wordpress/components';\nimport { moreVertical } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { usePostActions } from './actions';\n\nconst { DropdownMenuV2, kebabCase } = unlock( componentsPrivateApis );\n\nexport default function PostActions( { postType, postId, onActionPerformed } ) {\n\tconst [ isActionsMenuOpen, setIsActionsMenuOpen ] = useState( false );\n\tconst { item, permissions } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, getEntityRecordPermissions } =\n\t\t\t\tunlock( select( coreStore ) );\n\t\t\treturn {\n\t\t\t\titem: getEditedEntityRecord( 'postType', postType, postId ),\n\t\t\t\tpermissions: getEntityRecordPermissions(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostType,\n\t\t\t\t\tpostId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ postId, postType ]\n\t);\n\tconst itemWithPermissions = useMemo( () => {\n\t\treturn {\n\t\t\t...item,\n\t\t\tpermissions,\n\t\t};\n\t}, [ item, permissions ] );\n\tconst allActions = usePostActions( { postType, onActionPerformed } );\n\n\tconst actions = useMemo( () => {\n\t\treturn allActions.filter( ( action ) => {\n\t\t\treturn (\n\t\t\t\t! action.isEligible || action.isEligible( itemWithPermissions )\n\t\t\t);\n\t\t} );\n\t}, [ allActions, itemWithPermissions ] );\n\n\treturn (\n\t\t<DropdownMenuV2\n\t\t\topen={ isActionsMenuOpen }\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tdisabled={ ! actions.length }\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tclassName=\"editor-all-actions-button\"\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\tsetIsActionsMenuOpen( ! isActionsMenuOpen )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t}\n\t\t\tonOpenChange={ setIsActionsMenuOpen }\n\t\t\tplacement=\"bottom-end\"\n\t\t>\n\t\t\t<ActionsDropdownMenuGroup\n\t\t\t\tactions={ actions }\n\t\t\t\titem={ itemWithPermissions }\n\t\t\t\tonClose={ () => {\n\t\t\t\t\tsetIsActionsMenuOpen( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</DropdownMenuV2>\n\t);\n}\n\n// From now on all the functions on this file are copied as from the dataviews packages,\n// The editor packages should not be using the dataviews packages directly,\n// and the dataviews package should not be using the editor packages directly,\n// so duplicating the code here seems like the least bad option.\n\n// Copied as is from packages/dataviews/src/item-actions.js\nfunction DropdownMenuItemTrigger( { action, onClick, items } ) {\n\tconst label =\n\t\ttypeof action.label === 'string' ? action.label : action.label( items );\n\treturn (\n\t\t<DropdownMenuV2.Item\n\t\t\tonClick={ onClick }\n\t\t\thideOnClick={ ! action.RenderModal }\n\t\t>\n\t\t\t<DropdownMenuV2.ItemLabel>{ label }</DropdownMenuV2.ItemLabel>\n\t\t</DropdownMenuV2.Item>\n\t);\n}\n\n// Copied as is from packages/dataviews/src/item-actions.js\n// With an added onClose prop.\nfunction ActionWithModal( { action, item, ActionTrigger, onClose } ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst actionTriggerProps = {\n\t\taction,\n\t\tonClick: () => setIsModalOpen( true ),\n\t\titems: [ item ],\n\t};\n\tconst { RenderModal, hideModalHeader } = action;\n\treturn (\n\t\t<>\n\t\t\t<ActionTrigger { ...actionTriggerProps } />\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ action.modalHeader || action.label }\n\t\t\t\t\t__experimentalHideHeader={ !! hideModalHeader }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName={ `editor-action-modal editor-action-modal__${ kebabCase(\n\t\t\t\t\t\taction.id\n\t\t\t\t\t) }` }\n\t\t\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<RenderModal\n\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t\tcloseModal={ () => {\n\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\n// Copied as is from packages/dataviews/src/item-actions.js\n// With an added onClose prop.\nfunction ActionsDropdownMenuGroup( { actions, item, onClose } ) {\n\treturn (\n\t\t<DropdownMenuV2.Group>\n\t\t\t{ actions.map( ( action ) => {\n\t\t\t\tif ( action.RenderModal ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ActionWithModal\n\t\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\tActionTrigger={ DropdownMenuItemTrigger }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenuItemTrigger\n\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\tonClick={ () => action.callback( [ item ] ) }\n\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenuV2.Group>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -73,7 +73,7 @@ function PostContentInformation() {
|
|
|
73
73
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
74
74
|
className: "editor-post-content-information",
|
|
75
75
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalText, {
|
|
76
|
-
children: (0, _i18n.sprintf)(
|
|
76
|
+
children: (0, _i18n.sprintf)(/* translators: 1: How many words a post has. 2: the number of minutes to read the post (e.g. 130 words, 2 minutes read time.) */
|
|
77
77
|
(0, _i18n.__)('%1$s, %2$s read time.'), wordsCountText, minutesText)
|
|
78
78
|
})
|
|
79
79
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_data","_i18n","_wordcount","_element","_coreData","_store","_constants","_jsxRuntime","AVERAGE_READING_RATE","PostContentInformation","postContent","useSelect","select","getEditedPostAttribute","getCurrentPostType","getCurrentPostId","editorStore","canUser","coreStore","getEntityRecord","siteSettings","kind","name","undefined","postType","_id","isPostsPage","page_for_posts","showPostContentInfo","TEMPLATE_POST_TYPE","TEMPLATE_PART_POST_TYPE","includes","wordCountType","_x","wordsCounted","useMemo","wordCount","readingTime","Math","round","wordsCountText","sprintf","_n","toLocaleString","minutesText","__","jsx","className","children","__experimentalText"],"sources":["@wordpress/editor/src/components/post-content-information/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalText as Text } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x, _n, sprintf } from '@wordpress/i18n';\nimport { count as wordCount } from '@wordpress/wordcount';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n} from '../../store/constants';\n\n// Taken from packages/editor/src/components/time-to-read/index.js.\nconst AVERAGE_READING_RATE = 189;\n\n// This component renders the wordcount and reading time for the post.\nexport default function PostContentInformation() {\n\tconst { postContent } = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute, getCurrentPostType, getCurrentPostId } =\n\t\t\tselect( editorStore );\n\t\tconst { canUser } = select( coreStore );\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst siteSettings = canUser( 'read', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} )\n\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst postType = getCurrentPostType();\n\t\tconst _id = getCurrentPostId();\n\t\tconst isPostsPage = +_id === siteSettings?.page_for_posts;\n\t\tconst showPostContentInfo =\n\t\t\t! isPostsPage &&\n\t\t\t! [ TEMPLATE_POST_TYPE, TEMPLATE_PART_POST_TYPE ].includes(\n\t\t\t\tpostType\n\t\t\t);\n\t\treturn {\n\t\t\tpostContent:\n\t\t\t\tshowPostContentInfo && getEditedPostAttribute( 'content' ),\n\t\t};\n\t}, [] );\n\n\t/*\n\t * translators: If your word count is based on single characters (e.g. East Asian characters),\n\t * enter 'characters_excluding_spaces' or 'characters_including_spaces'. Otherwise, enter 'words'.\n\t * Do not translate into your own language.\n\t */\n\tconst wordCountType = _x( 'words', 'Word count type. Do not translate!' );\n\tconst wordsCounted = useMemo(\n\t\t() => ( postContent ? wordCount( postContent, wordCountType ) : 0 ),\n\t\t[ postContent, wordCountType ]\n\t);\n\tif ( ! wordsCounted ) {\n\t\treturn null;\n\t}\n\tconst readingTime = Math.round( wordsCounted / AVERAGE_READING_RATE );\n\tconst wordsCountText = sprintf(\n\t\t// translators: %s: the number of words in the post.\n\t\t_n( '%s word', '%s words', wordsCounted ),\n\t\twordsCounted.toLocaleString()\n\t);\n\tconst minutesText =\n\t\treadingTime <= 1\n\t\t\t? __( '1 minute' )\n\t\t\t: sprintf(\n\t\t\t\t\t// translators: %s: the number of minutes to read the post.\n\t\t\t\t\t_n( '%s minute', '%s minutes', readingTime ),\n\t\t\t\t\treadingTime.toLocaleString()\n\t\t\t );\n\treturn (\n\t\t<div className=\"editor-post-content-information\">\n\t\t\t<Text>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t/* translators: 1: How many words a post has. 2: the number of minutes to read the post (e.g. 130 words, 2 minutes read time.) */\n\t\t\t\t\t__( '%1$s, %2$s read time.' ),\n\t\t\t\t\twordsCountText,\n\t\t\t\t\tminutesText\n\t\t\t\t) }\n\t\t\t</Text>\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AAKA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AAG+B,IAAAQ,WAAA,GAAAR,OAAA;AAjB/B;AACA;AACA;;AAQA;AACA;AACA;;AAOA;AACA,MAAMS,oBAAoB,GAAG,GAAG;;AAEhC;AACe,SAASC,sBAAsBA,CAAA,EAAG;EAChD,MAAM;IAAEC;EAAY,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAChD,MAAM;MAAEC,sBAAsB;MAAEC,kBAAkB;MAAEC;IAAiB,CAAC,GACrEH,MAAM,CAAEI,YAAY,CAAC;IACtB,MAAM;MAAEC;IAAQ,CAAC,GAAGL,MAAM,CAAEM,eAAU,CAAC;IACvC,MAAM;MAAEC;IAAgB,CAAC,GAAGP,MAAM,CAAEM,eAAU,CAAC;IAC/C,MAAME,YAAY,GAAGH,OAAO,CAAE,MAAM,EAAE;MACrCI,IAAI,EAAE,MAAM;MACZC,IAAI,EAAE;IACP,CAAE,CAAC,GACAH,eAAe,CAAE,MAAM,EAAE,MAAO,CAAC,GACjCI,SAAS;IACZ,MAAMC,QAAQ,GAAGV,kBAAkB,CAAC,CAAC;IACrC,MAAMW,GAAG,GAAGV,gBAAgB,CAAC,CAAC;IAC9B,MAAMW,WAAW,GAAG,CAACD,GAAG,KAAKL,YAAY,EAAEO,cAAc;IACzD,MAAMC,mBAAmB,GACxB,CAAEF,WAAW,IACb,CAAE,CAAEG,6BAAkB,EAAEC,kCAAuB,CAAE,CAACC,QAAQ,CACzDP,QACD,CAAC;IACF,OAAO;MACNd,WAAW,EACVkB,mBAAmB,IAAIf,sBAAsB,CAAE,SAAU;IAC3D,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;;EAEP;AACD;AACA;AACA;AACA;EACC,MAAMmB,aAAa,GAAG,IAAAC,QAAE,EAAE,OAAO,EAAE,oCAAqC,CAAC;EACzE,MAAMC,YAAY,GAAG,IAAAC,gBAAO,EAC3B,MAAQzB,WAAW,GAAG,IAAA0B,gBAAS,EAAE1B,WAAW,EAAEsB,aAAc,CAAC,GAAG,CAAG,EACnE,CAAEtB,WAAW,EAAEsB,aAAa,CAC7B,CAAC;EACD,IAAK,CAAEE,YAAY,EAAG;IACrB,OAAO,IAAI;EACZ;EACA,MAAMG,WAAW,GAAGC,IAAI,CAACC,KAAK,CAAEL,YAAY,GAAG1B,oBAAqB,CAAC;EACrE,MAAMgC,cAAc,GAAG,IAAAC,aAAO;EAC7B;EACA,IAAAC,QAAE,EAAE,SAAS,EAAE,UAAU,EAAER,YAAa,CAAC,EACzCA,YAAY,CAACS,cAAc,CAAC,CAC7B,CAAC;EACD,MAAMC,WAAW,GAChBP,WAAW,IAAI,CAAC,GACb,IAAAQ,QAAE,EAAE,UAAW,CAAC,GAChB,IAAAJ,aAAO;EACP;EACA,IAAAC,QAAE,EAAE,WAAW,EAAE,YAAY,EAAEL,WAAY,CAAC,EAC5CA,WAAW,CAACM,cAAc,CAAC,CAC3B,CAAC;EACL,oBACC,IAAApC,WAAA,CAAAuC,GAAA;IAAKC,SAAS,EAAC,iCAAiC;IAAAC,QAAA,eAC/C,IAAAzC,WAAA,CAAAuC,GAAA,EAAChD,WAAA,CAAAmD,kBAAI;MAAAD,QAAA,EACF,IAAAP,aAAO,
|
|
1
|
+
{"version":3,"names":["_components","require","_data","_i18n","_wordcount","_element","_coreData","_store","_constants","_jsxRuntime","AVERAGE_READING_RATE","PostContentInformation","postContent","useSelect","select","getEditedPostAttribute","getCurrentPostType","getCurrentPostId","editorStore","canUser","coreStore","getEntityRecord","siteSettings","kind","name","undefined","postType","_id","isPostsPage","page_for_posts","showPostContentInfo","TEMPLATE_POST_TYPE","TEMPLATE_PART_POST_TYPE","includes","wordCountType","_x","wordsCounted","useMemo","wordCount","readingTime","Math","round","wordsCountText","sprintf","_n","toLocaleString","minutesText","__","jsx","className","children","__experimentalText"],"sources":["@wordpress/editor/src/components/post-content-information/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalText as Text } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x, _n, sprintf } from '@wordpress/i18n';\nimport { count as wordCount } from '@wordpress/wordcount';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n} from '../../store/constants';\n\n// Taken from packages/editor/src/components/time-to-read/index.js.\nconst AVERAGE_READING_RATE = 189;\n\n// This component renders the wordcount and reading time for the post.\nexport default function PostContentInformation() {\n\tconst { postContent } = useSelect( ( select ) => {\n\t\tconst { getEditedPostAttribute, getCurrentPostType, getCurrentPostId } =\n\t\t\tselect( editorStore );\n\t\tconst { canUser } = select( coreStore );\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst siteSettings = canUser( 'read', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} )\n\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst postType = getCurrentPostType();\n\t\tconst _id = getCurrentPostId();\n\t\tconst isPostsPage = +_id === siteSettings?.page_for_posts;\n\t\tconst showPostContentInfo =\n\t\t\t! isPostsPage &&\n\t\t\t! [ TEMPLATE_POST_TYPE, TEMPLATE_PART_POST_TYPE ].includes(\n\t\t\t\tpostType\n\t\t\t);\n\t\treturn {\n\t\t\tpostContent:\n\t\t\t\tshowPostContentInfo && getEditedPostAttribute( 'content' ),\n\t\t};\n\t}, [] );\n\n\t/*\n\t * translators: If your word count is based on single characters (e.g. East Asian characters),\n\t * enter 'characters_excluding_spaces' or 'characters_including_spaces'. Otherwise, enter 'words'.\n\t * Do not translate into your own language.\n\t */\n\tconst wordCountType = _x( 'words', 'Word count type. Do not translate!' );\n\tconst wordsCounted = useMemo(\n\t\t() => ( postContent ? wordCount( postContent, wordCountType ) : 0 ),\n\t\t[ postContent, wordCountType ]\n\t);\n\tif ( ! wordsCounted ) {\n\t\treturn null;\n\t}\n\tconst readingTime = Math.round( wordsCounted / AVERAGE_READING_RATE );\n\tconst wordsCountText = sprintf(\n\t\t// translators: %s: the number of words in the post.\n\t\t_n( '%s word', '%s words', wordsCounted ),\n\t\twordsCounted.toLocaleString()\n\t);\n\tconst minutesText =\n\t\treadingTime <= 1\n\t\t\t? __( '1 minute' )\n\t\t\t: sprintf(\n\t\t\t\t\t// translators: %s: the number of minutes to read the post.\n\t\t\t\t\t_n( '%s minute', '%s minutes', readingTime ),\n\t\t\t\t\treadingTime.toLocaleString()\n\t\t\t );\n\treturn (\n\t\t<div className=\"editor-post-content-information\">\n\t\t\t<Text>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t/* translators: 1: How many words a post has. 2: the number of minutes to read the post (e.g. 130 words, 2 minutes read time.) */\n\t\t\t\t\t__( '%1$s, %2$s read time.' ),\n\t\t\t\t\twordsCountText,\n\t\t\t\t\tminutesText\n\t\t\t\t) }\n\t\t\t</Text>\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AAKA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AAG+B,IAAAQ,WAAA,GAAAR,OAAA;AAjB/B;AACA;AACA;;AAQA;AACA;AACA;;AAOA;AACA,MAAMS,oBAAoB,GAAG,GAAG;;AAEhC;AACe,SAASC,sBAAsBA,CAAA,EAAG;EAChD,MAAM;IAAEC;EAAY,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAChD,MAAM;MAAEC,sBAAsB;MAAEC,kBAAkB;MAAEC;IAAiB,CAAC,GACrEH,MAAM,CAAEI,YAAY,CAAC;IACtB,MAAM;MAAEC;IAAQ,CAAC,GAAGL,MAAM,CAAEM,eAAU,CAAC;IACvC,MAAM;MAAEC;IAAgB,CAAC,GAAGP,MAAM,CAAEM,eAAU,CAAC;IAC/C,MAAME,YAAY,GAAGH,OAAO,CAAE,MAAM,EAAE;MACrCI,IAAI,EAAE,MAAM;MACZC,IAAI,EAAE;IACP,CAAE,CAAC,GACAH,eAAe,CAAE,MAAM,EAAE,MAAO,CAAC,GACjCI,SAAS;IACZ,MAAMC,QAAQ,GAAGV,kBAAkB,CAAC,CAAC;IACrC,MAAMW,GAAG,GAAGV,gBAAgB,CAAC,CAAC;IAC9B,MAAMW,WAAW,GAAG,CAACD,GAAG,KAAKL,YAAY,EAAEO,cAAc;IACzD,MAAMC,mBAAmB,GACxB,CAAEF,WAAW,IACb,CAAE,CAAEG,6BAAkB,EAAEC,kCAAuB,CAAE,CAACC,QAAQ,CACzDP,QACD,CAAC;IACF,OAAO;MACNd,WAAW,EACVkB,mBAAmB,IAAIf,sBAAsB,CAAE,SAAU;IAC3D,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;;EAEP;AACD;AACA;AACA;AACA;EACC,MAAMmB,aAAa,GAAG,IAAAC,QAAE,EAAE,OAAO,EAAE,oCAAqC,CAAC;EACzE,MAAMC,YAAY,GAAG,IAAAC,gBAAO,EAC3B,MAAQzB,WAAW,GAAG,IAAA0B,gBAAS,EAAE1B,WAAW,EAAEsB,aAAc,CAAC,GAAG,CAAG,EACnE,CAAEtB,WAAW,EAAEsB,aAAa,CAC7B,CAAC;EACD,IAAK,CAAEE,YAAY,EAAG;IACrB,OAAO,IAAI;EACZ;EACA,MAAMG,WAAW,GAAGC,IAAI,CAACC,KAAK,CAAEL,YAAY,GAAG1B,oBAAqB,CAAC;EACrE,MAAMgC,cAAc,GAAG,IAAAC,aAAO;EAC7B;EACA,IAAAC,QAAE,EAAE,SAAS,EAAE,UAAU,EAAER,YAAa,CAAC,EACzCA,YAAY,CAACS,cAAc,CAAC,CAC7B,CAAC;EACD,MAAMC,WAAW,GAChBP,WAAW,IAAI,CAAC,GACb,IAAAQ,QAAE,EAAE,UAAW,CAAC,GAChB,IAAAJ,aAAO;EACP;EACA,IAAAC,QAAE,EAAE,WAAW,EAAE,YAAY,EAAEL,WAAY,CAAC,EAC5CA,WAAW,CAACM,cAAc,CAAC,CAC3B,CAAC;EACL,oBACC,IAAApC,WAAA,CAAAuC,GAAA;IAAKC,SAAS,EAAC,iCAAiC;IAAAC,QAAA,eAC/C,IAAAzC,WAAA,CAAAuC,GAAA,EAAChD,WAAA,CAAAmD,kBAAI;MAAAD,QAAA,EACF,IAAAP,aAAO,EACR;MACA,IAAAI,QAAE,EAAE,uBAAwB,CAAC,EAC7BL,cAAc,EACdI,WACD;IAAC,CACI;EAAC,CACH,CAAC;AAER","ignoreList":[]}
|