@wordpress/block-library 8.0.0 → 8.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/LICENSE.md +1 -1
- package/build/archives/edit.js +1 -0
- package/build/archives/edit.js.map +1 -1
- package/build/audio/edit.js +2 -0
- package/build/audio/edit.js.map +1 -1
- package/build/categories/edit.js +1 -1
- package/build/categories/edit.js.map +1 -1
- package/build/comments/edit/comments-inspector-controls.js +9 -3
- package/build/comments/edit/comments-inspector-controls.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +1 -1
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/embed/embed-preview.js +1 -0
- package/build/embed/embed-preview.js.map +1 -1
- package/build/file/inspector.js +1 -0
- package/build/file/inspector.js.map +1 -1
- package/build/freeform/edit.js +21 -6
- package/build/freeform/edit.js.map +1 -1
- package/build/freeform/modal.js +97 -0
- package/build/freeform/modal.js.map +1 -0
- package/build/gallery/edit.js +15 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +3 -16
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/v1/edit.js +2 -0
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/group/edit.js +1 -0
- package/build/group/edit.js.map +1 -1
- package/build/group/index.js +3 -0
- package/build/group/index.js.map +1 -1
- package/build/image/image.js +7 -10
- package/build/image/image.js.map +1 -1
- package/build/latest-posts/edit.js +11 -8
- package/build/latest-posts/edit.js.map +1 -1
- package/build/media-text/edit.js +1 -0
- package/build/media-text/edit.js.map +1 -1
- package/build/missing/edit.native.js +2 -2
- package/build/missing/edit.native.js.map +1 -1
- package/build/navigation/edit/index.js +9 -7
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +81 -22
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +15 -10
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/utils.js +81 -0
- package/build/navigation/edit/utils.js.map +1 -1
- package/build/navigation/leaf-more-menu.js +95 -0
- package/build/navigation/leaf-more-menu.js.map +1 -0
- package/build/navigation-link/edit.js +10 -61
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/update-attributes.js +3 -3
- package/build/navigation-link/update-attributes.js.map +1 -1
- package/build/navigation-submenu/edit.js +7 -72
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +16 -15
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +29 -2
- package/build/page-list/index.js.map +1 -1
- package/build/page-list-item/edit.js +9 -5
- package/build/page-list-item/edit.js.map +1 -1
- package/build/page-list-item/index.js +2 -1
- package/build/page-list-item/index.js.map +1 -1
- package/build/post-author/edit.js +2 -0
- package/build/post-author/edit.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +1 -0
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/overlay.js +0 -1
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/query/edit/index.js +2 -1
- package/build/query/edit/index.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +11 -5
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/order-control.js +1 -0
- package/build/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build/query/edit/inspector-controls/sticky-control.js +1 -0
- package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +101 -37
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/edit/query-content.js +10 -4
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/edit/query-placeholder.js +17 -12
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/utils.js +73 -1
- package/build/query/utils.js.map +1 -1
- package/build/search/edit.js +2 -2
- package/build/search/edit.js.map +1 -1
- package/build/social-link/edit.js +2 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-links/edit.js +0 -1
- package/build/social-links/edit.js.map +1 -1
- package/build/table/edit.js +1 -0
- package/build/table/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +1 -1
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/tag-cloud/edit.js +1 -0
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +23 -2
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/import-controls.js +160 -0
- package/build/template-part/edit/import-controls.js.map +1 -0
- package/build/template-part/edit/index.js +2 -1
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/utils/transformers.js +48 -0
- package/build/template-part/edit/utils/transformers.js.map +1 -0
- package/build/video/edit-common-settings.js +6 -5
- package/build/video/edit-common-settings.js.map +1 -1
- package/build/video/edit.js +1 -0
- package/build/video/edit.js.map +1 -1
- package/build/video/tracks-editor.js +1 -0
- package/build/video/tracks-editor.js.map +1 -1
- package/build-module/archives/edit.js +1 -0
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/audio/edit.js +2 -0
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/categories/edit.js +1 -1
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/comments/edit/comments-inspector-controls.js +9 -3
- package/build-module/comments/edit/comments-inspector-controls.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +3 -3
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/embed/embed-preview.js +1 -0
- package/build-module/embed/embed-preview.js.map +1 -1
- package/build-module/file/inspector.js +1 -0
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/freeform/edit.js +22 -8
- package/build-module/freeform/edit.js.map +1 -1
- package/build-module/freeform/modal.js +90 -0
- package/build-module/freeform/modal.js.map +1 -0
- package/build-module/gallery/edit.js +16 -3
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +4 -16
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/v1/edit.js +2 -0
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/group/edit.js +1 -0
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/index.js +3 -0
- package/build-module/group/index.js.map +1 -1
- package/build-module/image/image.js +7 -10
- package/build-module/image/image.js.map +1 -1
- package/build-module/latest-posts/edit.js +12 -9
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/media-text/edit.js +1 -0
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/missing/edit.native.js +2 -2
- package/build-module/missing/edit.native.js.map +1 -1
- package/build-module/navigation/edit/index.js +9 -7
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +80 -25
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +16 -11
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/utils.js +75 -0
- package/build-module/navigation/edit/utils.js.map +1 -1
- package/build-module/navigation/leaf-more-menu.js +76 -0
- package/build-module/navigation/leaf-more-menu.js.map +1 -0
- package/build-module/navigation-link/edit.js +10 -62
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/update-attributes.js +3 -3
- package/build-module/navigation-link/update-attributes.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +6 -72
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +17 -15
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +30 -3
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/page-list-item/edit.js +9 -6
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/page-list-item/index.js +2 -1
- package/build-module/page-list-item/index.js.map +1 -1
- package/build-module/post-author/edit.js +2 -0
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +1 -0
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +0 -1
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/query/edit/index.js +2 -1
- package/build-module/query/edit/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +11 -5
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/order-control.js +1 -0
- package/build-module/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/sticky-control.js +1 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +99 -35
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/edit/query-content.js +9 -2
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +16 -12
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/utils.js +69 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/search/edit.js +2 -2
- package/build-module/search/edit.js.map +1 -1
- package/build-module/social-link/edit.js +4 -3
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-links/edit.js +0 -1
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/table/edit.js +1 -0
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +1 -1
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/tag-cloud/edit.js +1 -0
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +22 -2
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/import-controls.js +146 -0
- package/build-module/template-part/edit/import-controls.js.map +1 -0
- package/build-module/template-part/edit/index.js +2 -1
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/utils/transformers.js +40 -0
- package/build-module/template-part/edit/utils/transformers.js.map +1 -0
- package/build-module/video/edit-common-settings.js +6 -5
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-module/video/edit.js +1 -0
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/tracks-editor.js +1 -0
- package/build-module/video/tracks-editor.js.map +1 -1
- package/build-style/archives/editor-rtl.css +3 -3
- package/build-style/archives/editor.css +3 -3
- package/build-style/archives/style-rtl.css +3 -3
- package/build-style/archives/style.css +3 -3
- package/build-style/audio/editor-rtl.css +3 -3
- package/build-style/audio/editor.css +3 -3
- package/build-style/audio/style-rtl.css +3 -3
- package/build-style/audio/style.css +3 -3
- package/build-style/audio/theme-rtl.css +3 -3
- package/build-style/audio/theme.css +3 -3
- package/build-style/avatar/editor-rtl.css +3 -3
- package/build-style/avatar/editor.css +3 -3
- package/build-style/avatar/style-rtl.css +3 -3
- package/build-style/avatar/style.css +3 -3
- package/build-style/block/editor-rtl.css +3 -3
- package/build-style/block/editor.css +3 -3
- package/build-style/button/editor-rtl.css +3 -3
- package/build-style/button/editor.css +3 -3
- package/build-style/button/style-rtl.css +3 -3
- package/build-style/button/style.css +3 -3
- package/build-style/buttons/editor-rtl.css +3 -3
- package/build-style/buttons/editor.css +3 -3
- package/build-style/buttons/style-rtl.css +3 -3
- package/build-style/buttons/style.css +3 -3
- package/build-style/calendar/style-rtl.css +3 -3
- package/build-style/calendar/style.css +3 -3
- package/build-style/categories/editor-rtl.css +3 -3
- package/build-style/categories/editor.css +3 -3
- package/build-style/categories/style-rtl.css +3 -3
- package/build-style/categories/style.css +3 -3
- package/build-style/classic-rtl.css +3 -3
- package/build-style/classic.css +3 -3
- package/build-style/code/editor-rtl.css +3 -3
- package/build-style/code/editor.css +3 -3
- package/build-style/code/style-rtl.css +3 -3
- package/build-style/code/style.css +3 -3
- package/build-style/code/theme-rtl.css +3 -3
- package/build-style/code/theme.css +3 -3
- package/build-style/columns/editor-rtl.css +3 -3
- package/build-style/columns/editor.css +3 -3
- package/build-style/columns/style-rtl.css +3 -3
- package/build-style/columns/style.css +3 -3
- package/build-style/comment-author-avatar/editor-rtl.css +3 -3
- package/build-style/comment-author-avatar/editor.css +3 -3
- package/build-style/comment-content/style-rtl.css +3 -3
- package/build-style/comment-content/style.css +3 -3
- package/build-style/comment-template/style-rtl.css +3 -3
- package/build-style/comment-template/style.css +3 -3
- package/build-style/comments/editor-rtl.css +3 -3
- package/build-style/comments/editor.css +3 -3
- package/build-style/comments/style-rtl.css +3 -3
- package/build-style/comments/style.css +3 -3
- package/build-style/comments-pagination/editor-rtl.css +3 -3
- package/build-style/comments-pagination/editor.css +3 -3
- package/build-style/comments-pagination/style-rtl.css +3 -3
- package/build-style/comments-pagination/style.css +3 -3
- package/build-style/comments-pagination-numbers/editor-rtl.css +3 -3
- package/build-style/comments-pagination-numbers/editor.css +3 -3
- package/build-style/comments-title/editor-rtl.css +3 -3
- package/build-style/comments-title/editor.css +3 -3
- package/build-style/common-rtl.css +3 -3
- package/build-style/common.css +3 -3
- package/build-style/cover/editor-rtl.css +3 -3
- package/build-style/cover/editor.css +3 -3
- package/build-style/cover/style-rtl.css +3 -3
- package/build-style/cover/style.css +3 -3
- package/build-style/editor-elements-rtl.css +3 -3
- package/build-style/editor-elements.css +3 -3
- package/build-style/editor-rtl.css +7 -9
- package/build-style/editor.css +7 -9
- package/build-style/elements-rtl.css +3 -3
- package/build-style/elements.css +3 -3
- package/build-style/embed/editor-rtl.css +3 -3
- package/build-style/embed/editor.css +3 -3
- package/build-style/embed/style-rtl.css +3 -3
- package/build-style/embed/style.css +3 -3
- package/build-style/embed/theme-rtl.css +3 -3
- package/build-style/embed/theme.css +3 -3
- package/build-style/file/editor-rtl.css +3 -3
- package/build-style/file/editor.css +3 -3
- package/build-style/file/style-rtl.css +3 -3
- package/build-style/file/style.css +3 -3
- package/build-style/freeform/editor-rtl.css +3 -3
- package/build-style/freeform/editor.css +3 -3
- package/build-style/gallery/editor-rtl.css +3 -3
- package/build-style/gallery/editor.css +3 -3
- package/build-style/gallery/style-rtl.css +3 -3
- package/build-style/gallery/style.css +3 -3
- package/build-style/gallery/theme-rtl.css +3 -3
- package/build-style/gallery/theme.css +3 -3
- package/build-style/group/editor-rtl.css +3 -3
- package/build-style/group/editor.css +3 -3
- package/build-style/group/style-rtl.css +3 -3
- package/build-style/group/style.css +3 -3
- package/build-style/group/theme-rtl.css +3 -3
- package/build-style/group/theme.css +3 -3
- package/build-style/heading/style-rtl.css +3 -3
- package/build-style/heading/style.css +3 -3
- package/build-style/html/editor-rtl.css +3 -3
- package/build-style/html/editor.css +3 -3
- package/build-style/image/editor-rtl.css +3 -3
- package/build-style/image/editor.css +3 -3
- package/build-style/image/style-rtl.css +3 -3
- package/build-style/image/style.css +3 -3
- package/build-style/image/theme-rtl.css +3 -3
- package/build-style/image/theme.css +3 -3
- package/build-style/latest-comments/style-rtl.css +3 -3
- package/build-style/latest-comments/style.css +3 -3
- package/build-style/latest-posts/editor-rtl.css +3 -3
- package/build-style/latest-posts/editor.css +3 -3
- package/build-style/latest-posts/style-rtl.css +3 -3
- package/build-style/latest-posts/style.css +3 -3
- package/build-style/list/style-rtl.css +3 -3
- package/build-style/list/style.css +3 -3
- package/build-style/media-text/editor-rtl.css +3 -3
- package/build-style/media-text/editor.css +3 -3
- package/build-style/media-text/style-rtl.css +3 -3
- package/build-style/media-text/style.css +3 -3
- package/build-style/more/editor-rtl.css +3 -3
- package/build-style/more/editor.css +3 -3
- package/build-style/navigation/editor-rtl.css +3 -9
- package/build-style/navigation/editor.css +3 -9
- package/build-style/navigation/style-rtl.css +3 -4
- package/build-style/navigation/style.css +3 -4
- package/build-style/navigation-link/editor-rtl.css +3 -3
- package/build-style/navigation-link/editor.css +3 -3
- package/build-style/navigation-link/style-rtl.css +3 -3
- package/build-style/navigation-link/style.css +3 -3
- package/build-style/navigation-submenu/editor-rtl.css +3 -3
- package/build-style/navigation-submenu/editor.css +3 -3
- package/build-style/nextpage/editor-rtl.css +3 -3
- package/build-style/nextpage/editor.css +3 -3
- package/build-style/page-list/editor-rtl.css +7 -3
- package/build-style/page-list/editor.css +7 -3
- package/build-style/page-list/style-rtl.css +3 -3
- package/build-style/page-list/style.css +3 -3
- package/build-style/paragraph/editor-rtl.css +3 -3
- package/build-style/paragraph/editor.css +3 -3
- package/build-style/paragraph/style-rtl.css +3 -3
- package/build-style/paragraph/style.css +3 -3
- package/build-style/post-author/style-rtl.css +3 -3
- package/build-style/post-author/style.css +3 -3
- package/build-style/post-comments-form/editor-rtl.css +3 -3
- package/build-style/post-comments-form/editor.css +3 -3
- package/build-style/post-comments-form/style-rtl.css +3 -3
- package/build-style/post-comments-form/style.css +3 -3
- package/build-style/post-date/style-rtl.css +3 -3
- package/build-style/post-date/style.css +3 -3
- package/build-style/post-excerpt/editor-rtl.css +3 -3
- package/build-style/post-excerpt/editor.css +3 -3
- package/build-style/post-excerpt/style-rtl.css +3 -3
- package/build-style/post-excerpt/style.css +3 -3
- package/build-style/post-featured-image/editor-rtl.css +3 -3
- package/build-style/post-featured-image/editor.css +3 -3
- package/build-style/post-featured-image/style-rtl.css +3 -3
- package/build-style/post-featured-image/style.css +3 -3
- package/build-style/post-navigation-link/style-rtl.css +3 -3
- package/build-style/post-navigation-link/style.css +3 -3
- package/build-style/post-template/editor-rtl.css +3 -3
- package/build-style/post-template/editor.css +3 -3
- package/build-style/post-template/style-rtl.css +3 -3
- package/build-style/post-template/style.css +3 -3
- package/build-style/post-terms/style-rtl.css +3 -3
- package/build-style/post-terms/style.css +3 -3
- package/build-style/post-title/style-rtl.css +3 -3
- package/build-style/post-title/style.css +3 -3
- package/build-style/preformatted/style-rtl.css +3 -3
- package/build-style/preformatted/style.css +3 -3
- package/build-style/pullquote/editor-rtl.css +3 -3
- package/build-style/pullquote/editor.css +3 -3
- package/build-style/pullquote/style-rtl.css +3 -3
- package/build-style/pullquote/style.css +3 -3
- package/build-style/pullquote/theme-rtl.css +3 -3
- package/build-style/pullquote/theme.css +3 -3
- package/build-style/query/editor-rtl.css +3 -3
- package/build-style/query/editor.css +3 -3
- package/build-style/query-pagination/editor-rtl.css +3 -3
- package/build-style/query-pagination/editor.css +3 -3
- package/build-style/query-pagination/style-rtl.css +3 -3
- package/build-style/query-pagination/style.css +3 -3
- package/build-style/query-pagination-numbers/editor-rtl.css +3 -3
- package/build-style/query-pagination-numbers/editor.css +3 -3
- package/build-style/query-title/style-rtl.css +3 -3
- package/build-style/query-title/style.css +3 -3
- package/build-style/quote/style-rtl.css +3 -3
- package/build-style/quote/style.css +3 -3
- package/build-style/quote/theme-rtl.css +3 -3
- package/build-style/quote/theme.css +3 -3
- package/build-style/read-more/style-rtl.css +3 -3
- package/build-style/read-more/style.css +3 -3
- package/build-style/reset-rtl.css +3 -3
- package/build-style/reset.css +3 -3
- package/build-style/rss/editor-rtl.css +3 -3
- package/build-style/rss/editor.css +3 -3
- package/build-style/rss/style-rtl.css +3 -3
- package/build-style/rss/style.css +3 -3
- package/build-style/search/editor-rtl.css +3 -3
- package/build-style/search/editor.css +3 -3
- package/build-style/search/style-rtl.css +3 -3
- package/build-style/search/style.css +3 -3
- package/build-style/search/theme-rtl.css +3 -3
- package/build-style/search/theme.css +3 -3
- package/build-style/separator/editor-rtl.css +3 -3
- package/build-style/separator/editor.css +3 -3
- package/build-style/separator/style-rtl.css +3 -3
- package/build-style/separator/style.css +3 -3
- package/build-style/separator/theme-rtl.css +3 -3
- package/build-style/separator/theme.css +3 -3
- package/build-style/shortcode/editor-rtl.css +3 -3
- package/build-style/shortcode/editor.css +3 -3
- package/build-style/site-logo/editor-rtl.css +3 -3
- package/build-style/site-logo/editor.css +3 -3
- package/build-style/site-logo/style-rtl.css +3 -3
- package/build-style/site-logo/style.css +3 -3
- package/build-style/site-tagline/editor-rtl.css +3 -3
- package/build-style/site-tagline/editor.css +3 -3
- package/build-style/site-title/editor-rtl.css +3 -3
- package/build-style/site-title/editor.css +3 -3
- package/build-style/site-title/style-rtl.css +3 -3
- package/build-style/site-title/style.css +3 -3
- package/build-style/social-link/editor-rtl.css +3 -3
- package/build-style/social-link/editor.css +3 -3
- package/build-style/social-links/editor-rtl.css +3 -3
- package/build-style/social-links/editor.css +3 -3
- package/build-style/social-links/style-rtl.css +3 -3
- package/build-style/social-links/style.css +3 -3
- package/build-style/spacer/editor-rtl.css +3 -3
- package/build-style/spacer/editor.css +3 -3
- package/build-style/spacer/style-rtl.css +3 -3
- package/build-style/spacer/style.css +3 -3
- package/build-style/style-rtl.css +13 -5
- package/build-style/style.css +13 -5
- package/build-style/table/editor-rtl.css +3 -3
- package/build-style/table/editor.css +3 -3
- package/build-style/table/style-rtl.css +9 -3
- package/build-style/table/style.css +9 -3
- package/build-style/table/theme-rtl.css +3 -9
- package/build-style/table/theme.css +3 -9
- package/build-style/tag-cloud/style-rtl.css +3 -3
- package/build-style/tag-cloud/style.css +3 -3
- package/build-style/template-part/editor-rtl.css +3 -3
- package/build-style/template-part/editor.css +3 -3
- package/build-style/template-part/theme-rtl.css +3 -3
- package/build-style/template-part/theme.css +3 -3
- package/build-style/text-columns/editor-rtl.css +3 -3
- package/build-style/text-columns/editor.css +3 -3
- package/build-style/text-columns/style-rtl.css +3 -3
- package/build-style/text-columns/style.css +3 -3
- package/build-style/theme-rtl.css +3 -9
- package/build-style/theme.css +3 -9
- package/build-style/verse/style-rtl.css +7 -4
- package/build-style/verse/style.css +7 -4
- package/build-style/video/editor-rtl.css +3 -3
- package/build-style/video/editor.css +3 -3
- package/build-style/video/style-rtl.css +3 -3
- package/build-style/video/style.css +3 -3
- package/build-style/video/theme-rtl.css +3 -3
- package/build-style/video/theme.css +3 -3
- package/package.json +29 -29
- package/src/archives/edit.js +1 -0
- package/src/audio/edit.js +2 -0
- package/src/categories/edit.js +1 -1
- package/src/comments/edit/comments-inspector-controls.js +12 -2
- package/src/comments/index.php +0 -1
- package/src/cover/edit/inspector-controls.js +4 -4
- package/src/embed/embed-preview.js +1 -0
- package/src/file/inspector.js +1 -0
- package/src/freeform/edit.js +48 -29
- package/src/freeform/modal.js +111 -0
- package/src/gallery/edit.js +19 -2
- package/src/gallery/gallery.js +4 -13
- package/src/gallery/v1/edit.js +2 -0
- package/src/group/block.json +3 -0
- package/src/group/edit.js +1 -0
- package/src/image/image.js +27 -36
- package/src/latest-posts/edit.js +6 -7
- package/src/latest-posts/test/__snapshots__/edit.native.js.snap +3 -0
- package/src/latest-posts/test/edit.native.js +49 -0
- package/src/media-text/edit.js +1 -0
- package/src/missing/edit.native.js +13 -6
- package/src/more/test/__snapshots__/edit.native.js.snap +7 -0
- package/src/more/test/edit.native.js +41 -0
- package/src/navigation/edit/index.js +6 -4
- package/src/navigation/edit/menu-inspector-controls.js +115 -44
- package/src/navigation/edit/navigation-menu-selector.js +24 -11
- package/src/navigation/edit/utils.js +82 -0
- package/src/navigation/editor.scss +0 -7
- package/src/navigation/index.php +32 -0
- package/src/navigation/leaf-more-menu.js +93 -0
- package/src/navigation/style.scss +0 -1
- package/src/navigation-link/edit.js +23 -65
- package/src/navigation-link/index.php +62 -3
- package/src/navigation-link/update-attributes.js +1 -1
- package/src/navigation-submenu/edit.js +29 -100
- package/src/navigation-submenu/index.php +34 -2
- package/src/page-list/block.json +18 -1
- package/src/page-list/edit.js +30 -22
- package/src/page-list/editor.scss +4 -0
- package/src/page-list/index.js +8 -2
- package/src/page-list/index.php +14 -10
- package/src/page-list-item/block.json +2 -1
- package/src/page-list-item/edit.js +17 -9
- package/src/post-author/edit.js +2 -0
- package/src/post-featured-image/dimension-controls.js +1 -0
- package/src/post-featured-image/overlay.js +0 -1
- package/src/query/edit/index.js +1 -0
- package/src/query/edit/inspector-controls/index.js +50 -38
- package/src/query/edit/inspector-controls/order-control.js +1 -0
- package/src/query/edit/inspector-controls/sticky-control.js +1 -0
- package/src/query/edit/inspector-controls/taxonomy-controls.js +102 -38
- package/src/query/edit/query-content.js +15 -1
- package/src/query/edit/query-placeholder.js +15 -14
- package/src/query/utils.js +59 -1
- package/src/rss/index.php +1 -1
- package/src/search/edit.js +2 -2
- package/src/separator/test/__snapshots__/edit.native.js.snap +7 -0
- package/src/separator/test/edit.native.js +41 -0
- package/src/social-link/edit.js +5 -4
- package/src/social-links/edit.js +0 -1
- package/src/table/edit.js +1 -0
- package/src/table/style.scss +8 -0
- package/src/table/theme.scss +0 -8
- package/src/table-of-contents/edit.js +1 -1
- package/src/tag-cloud/edit.js +1 -0
- package/src/template-part/edit/advanced-controls.js +36 -0
- package/src/template-part/edit/import-controls.js +180 -0
- package/src/template-part/edit/index.js +1 -0
- package/src/template-part/edit/utils/transformers.js +37 -0
- package/src/verse/style.scss +4 -1
- package/src/verse/test/__snapshots__/edit.native.js.snap +13 -0
- package/src/verse/test/edit.native.js +40 -33
- package/src/video/edit-common-settings.js +6 -5
- package/src/video/edit.js +1 -0
- package/src/video/tracks-editor.js +1 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/query/constants.js +0 -16
- package/build/query/constants.js.map +0 -1
- package/build-module/query/constants.js +0 -7
- package/build-module/query/constants.js.map +0 -1
- package/src/query/constants.js +0 -7
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TemplatePartImportControls = TemplatePartImportControls;
|
|
7
|
+
|
|
8
|
+
var _element = require("@wordpress/element");
|
|
9
|
+
|
|
10
|
+
var _i18n = require("@wordpress/i18n");
|
|
11
|
+
|
|
12
|
+
var _data = require("@wordpress/data");
|
|
13
|
+
|
|
14
|
+
var _components = require("@wordpress/components");
|
|
15
|
+
|
|
16
|
+
var _blocks = require("@wordpress/blocks");
|
|
17
|
+
|
|
18
|
+
var _coreData = require("@wordpress/core-data");
|
|
19
|
+
|
|
20
|
+
var _notices = require("@wordpress/notices");
|
|
21
|
+
|
|
22
|
+
var _hooks = require("./utils/hooks");
|
|
23
|
+
|
|
24
|
+
var _transformers = require("./utils/transformers");
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* WordPress dependencies
|
|
28
|
+
*/
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Internal dependencies
|
|
32
|
+
*/
|
|
33
|
+
function TemplatePartImportControls(_ref) {
|
|
34
|
+
let {
|
|
35
|
+
area,
|
|
36
|
+
setAttributes
|
|
37
|
+
} = _ref;
|
|
38
|
+
const [selectedSidebar, setSelectedSidebar] = (0, _element.useState)('');
|
|
39
|
+
const [isBusy, setIsBusy] = (0, _element.useState)(false);
|
|
40
|
+
const registry = (0, _data.useRegistry)();
|
|
41
|
+
const sidebars = (0, _data.useSelect)(select => {
|
|
42
|
+
return select(_coreData.store).getSidebars({
|
|
43
|
+
per_page: -1,
|
|
44
|
+
_fields: 'id,name,description,status,widgets'
|
|
45
|
+
});
|
|
46
|
+
}, []);
|
|
47
|
+
const {
|
|
48
|
+
createErrorNotice
|
|
49
|
+
} = (0, _data.useDispatch)(_notices.store);
|
|
50
|
+
const createFromBlocks = (0, _hooks.useCreateTemplatePartFromBlocks)(area, setAttributes);
|
|
51
|
+
const options = (0, _element.useMemo)(() => {
|
|
52
|
+
const sidebarOptions = (sidebars !== null && sidebars !== void 0 ? sidebars : []).filter(widgetArea => widgetArea.id !== 'wp_inactive_widgets' && widgetArea.widgets.length > 0).map(widgetArea => {
|
|
53
|
+
return {
|
|
54
|
+
value: widgetArea.id,
|
|
55
|
+
label: widgetArea.name
|
|
56
|
+
};
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
if (!sidebarOptions.length) {
|
|
60
|
+
return [];
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
return [{
|
|
64
|
+
value: '',
|
|
65
|
+
label: (0, _i18n.__)('Select widget area')
|
|
66
|
+
}, ...sidebarOptions];
|
|
67
|
+
}, [sidebars]);
|
|
68
|
+
|
|
69
|
+
async function createFromWidgets(event) {
|
|
70
|
+
event.preventDefault();
|
|
71
|
+
|
|
72
|
+
if (isBusy || !selectedSidebar) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
setIsBusy(true);
|
|
77
|
+
const sidebar = options.find(_ref2 => {
|
|
78
|
+
let {
|
|
79
|
+
value
|
|
80
|
+
} = _ref2;
|
|
81
|
+
return value === selectedSidebar;
|
|
82
|
+
});
|
|
83
|
+
const {
|
|
84
|
+
getWidgets
|
|
85
|
+
} = registry.resolveSelect(_coreData.store); // The widgets API always returns a successful response.
|
|
86
|
+
|
|
87
|
+
const widgets = await getWidgets({
|
|
88
|
+
sidebar: sidebar.value,
|
|
89
|
+
_embed: 'about'
|
|
90
|
+
});
|
|
91
|
+
const skippedWidgets = new Set();
|
|
92
|
+
const blocks = widgets.flatMap(widget => {
|
|
93
|
+
const block = (0, _transformers.transformWidgetToBlock)(widget);
|
|
94
|
+
|
|
95
|
+
if (block.name !== 'core/legacy-widget') {
|
|
96
|
+
return block;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
const transforms = (0, _blocks.getPossibleBlockTransformations)([block]).filter(item => {
|
|
100
|
+
var _item$transforms, _item$transforms$from, _item$transforms2, _item$transforms2$to;
|
|
101
|
+
|
|
102
|
+
// The block without any transformations can't be a wildcard.
|
|
103
|
+
if (!item.transforms) {
|
|
104
|
+
return true;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
const hasWildCardFrom = (_item$transforms = item.transforms) === null || _item$transforms === void 0 ? void 0 : (_item$transforms$from = _item$transforms.from) === null || _item$transforms$from === void 0 ? void 0 : _item$transforms$from.find(from => from.blocks && from.blocks.includes('*'));
|
|
108
|
+
const hasWildCardTo = (_item$transforms2 = item.transforms) === null || _item$transforms2 === void 0 ? void 0 : (_item$transforms2$to = _item$transforms2.to) === null || _item$transforms2$to === void 0 ? void 0 : _item$transforms2$to.find(to => to.blocks && to.blocks.includes('*'));
|
|
109
|
+
return !hasWildCardFrom && !hasWildCardTo;
|
|
110
|
+
}); // Skip the block if we have no matching transformations.
|
|
111
|
+
|
|
112
|
+
if (!transforms.length) {
|
|
113
|
+
skippedWidgets.add(widget.id_base);
|
|
114
|
+
return [];
|
|
115
|
+
} // Try transforming the Legacy Widget into a first matching block.
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
return (0, _blocks.switchToBlockType)(block, transforms[0].name);
|
|
119
|
+
});
|
|
120
|
+
await createFromBlocks(blocks,
|
|
121
|
+
/* translators: %s: name of the widget area */
|
|
122
|
+
(0, _i18n.sprintf)((0, _i18n.__)('Widget area: %s'), sidebar.label));
|
|
123
|
+
|
|
124
|
+
if (skippedWidgets.size) {
|
|
125
|
+
createErrorNotice((0, _i18n.sprintf)(
|
|
126
|
+
/* translators: %s: the list of widgets */
|
|
127
|
+
(0, _i18n.__)('Unable to import the following widgets: %s.'), Array.from(skippedWidgets).join(', ')), {
|
|
128
|
+
type: 'snackbar'
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
setIsBusy(false);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
return (0, _element.createElement)(_components.__experimentalSpacer, {
|
|
136
|
+
marginBottom: "4"
|
|
137
|
+
}, (0, _element.createElement)(_components.__experimentalHStack, {
|
|
138
|
+
as: "form",
|
|
139
|
+
onSubmit: createFromWidgets
|
|
140
|
+
}, (0, _element.createElement)(_components.FlexBlock, null, (0, _element.createElement)(_components.SelectControl, {
|
|
141
|
+
label: (0, _i18n.__)('Import widget area'),
|
|
142
|
+
value: selectedSidebar,
|
|
143
|
+
options: options,
|
|
144
|
+
onChange: value => setSelectedSidebar(value),
|
|
145
|
+
disabled: !options.length,
|
|
146
|
+
__next36pxDefaultSize: true,
|
|
147
|
+
__nextHasNoMarginBottom: true
|
|
148
|
+
})), (0, _element.createElement)(_components.FlexItem, {
|
|
149
|
+
style: {
|
|
150
|
+
marginBottom: '8px',
|
|
151
|
+
marginTop: 'auto'
|
|
152
|
+
}
|
|
153
|
+
}, (0, _element.createElement)(_components.Button, {
|
|
154
|
+
variant: "primary",
|
|
155
|
+
type: "submit",
|
|
156
|
+
isBusy: isBusy,
|
|
157
|
+
"aria-disabled": isBusy || !selectedSidebar
|
|
158
|
+
}, (0, _i18n.__)('Import')))));
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=import-controls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/template-part/edit/import-controls.js"],"names":["TemplatePartImportControls","area","setAttributes","selectedSidebar","setSelectedSidebar","isBusy","setIsBusy","registry","sidebars","select","coreStore","getSidebars","per_page","_fields","createErrorNotice","noticesStore","createFromBlocks","options","sidebarOptions","filter","widgetArea","id","widgets","length","map","value","label","name","createFromWidgets","event","preventDefault","sidebar","find","getWidgets","resolveSelect","_embed","skippedWidgets","Set","blocks","flatMap","widget","block","transforms","item","hasWildCardFrom","from","includes","hasWildCardTo","to","add","id_base","size","Array","join","type","marginBottom","marginTop"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo, useState } from '@wordpress/element';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport {\n\tButton,\n\tFlexBlock,\n\tFlexItem,\n\tSelectControl,\n\t__experimentalHStack as HStack,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\nimport {\n\tswitchToBlockType,\n\tgetPossibleBlockTransformations,\n} from '@wordpress/blocks';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { useCreateTemplatePartFromBlocks } from './utils/hooks';\nimport { transformWidgetToBlock } from './utils/transformers';\n\nexport function TemplatePartImportControls( { area, setAttributes } ) {\n\tconst [ selectedSidebar, setSelectedSidebar ] = useState( '' );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\n\tconst registry = useRegistry();\n\tconst sidebars = useSelect( ( select ) => {\n\t\treturn select( coreStore ).getSidebars( {\n\t\t\tper_page: -1,\n\t\t\t_fields: 'id,name,description,status,widgets',\n\t\t} );\n\t}, [] );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\n\n\tconst options = useMemo( () => {\n\t\tconst sidebarOptions = ( sidebars ?? [] )\n\t\t\t.filter(\n\t\t\t\t( widgetArea ) =>\n\t\t\t\t\twidgetArea.id !== 'wp_inactive_widgets' &&\n\t\t\t\t\twidgetArea.widgets.length > 0\n\t\t\t)\n\t\t\t.map( ( widgetArea ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: widgetArea.id,\n\t\t\t\t\tlabel: widgetArea.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\tif ( ! sidebarOptions.length ) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn [\n\t\t\t{ value: '', label: __( 'Select widget area' ) },\n\t\t\t...sidebarOptions,\n\t\t];\n\t}, [ sidebars ] );\n\n\tasync function createFromWidgets( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isBusy || ! selectedSidebar ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsBusy( true );\n\n\t\tconst sidebar = options.find(\n\t\t\t( { value } ) => value === selectedSidebar\n\t\t);\n\t\tconst { getWidgets } = registry.resolveSelect( coreStore );\n\n\t\t// The widgets API always returns a successful response.\n\t\tconst widgets = await getWidgets( {\n\t\t\tsidebar: sidebar.value,\n\t\t\t_embed: 'about',\n\t\t} );\n\n\t\tconst skippedWidgets = new Set();\n\t\tconst blocks = widgets.flatMap( ( widget ) => {\n\t\t\tconst block = transformWidgetToBlock( widget );\n\n\t\t\tif ( block.name !== 'core/legacy-widget' ) {\n\t\t\t\treturn block;\n\t\t\t}\n\n\t\t\tconst transforms = getPossibleBlockTransformations( [\n\t\t\t\tblock,\n\t\t\t] ).filter( ( item ) => {\n\t\t\t\t// The block without any transformations can't be a wildcard.\n\t\t\t\tif ( ! item.transforms ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tconst hasWildCardFrom = item.transforms?.from?.find(\n\t\t\t\t\t( from ) => from.blocks && from.blocks.includes( '*' )\n\t\t\t\t);\n\t\t\t\tconst hasWildCardTo = item.transforms?.to?.find(\n\t\t\t\t\t( to ) => to.blocks && to.blocks.includes( '*' )\n\t\t\t\t);\n\n\t\t\t\treturn ! hasWildCardFrom && ! hasWildCardTo;\n\t\t\t} );\n\n\t\t\t// Skip the block if we have no matching transformations.\n\t\t\tif ( ! transforms.length ) {\n\t\t\t\tskippedWidgets.add( widget.id_base );\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\t// Try transforming the Legacy Widget into a first matching block.\n\t\t\treturn switchToBlockType( block, transforms[ 0 ].name );\n\t\t} );\n\n\t\tawait createFromBlocks(\n\t\t\tblocks,\n\t\t\t/* translators: %s: name of the widget area */\n\t\t\tsprintf( __( 'Widget area: %s' ), sidebar.label )\n\t\t);\n\n\t\tif ( skippedWidgets.size ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: the list of widgets */\n\t\t\t\t\t__( 'Unable to import the following widgets: %s.' ),\n\t\t\t\t\tArray.from( skippedWidgets ).join( ', ' )\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tsetIsBusy( false );\n\t}\n\n\treturn (\n\t\t<Spacer marginBottom=\"4\">\n\t\t\t<HStack as=\"form\" onSubmit={ createFromWidgets }>\n\t\t\t\t<FlexBlock>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\tlabel={ __( 'Import widget area' ) }\n\t\t\t\t\t\tvalue={ selectedSidebar }\n\t\t\t\t\t\toptions={ options }\n\t\t\t\t\t\tonChange={ ( value ) => setSelectedSidebar( value ) }\n\t\t\t\t\t\tdisabled={ ! options.length }\n\t\t\t\t\t\t__next36pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</FlexBlock>\n\t\t\t\t<FlexItem\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tmarginBottom: '8px',\n\t\t\t\t\t\tmarginTop: 'auto',\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\taria-disabled={ isBusy || ! selectedSidebar }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Import' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n"]}
|
|
@@ -121,7 +121,8 @@ function TemplatePartEdit(_ref) {
|
|
|
121
121
|
setAttributes: setAttributes,
|
|
122
122
|
isEntityAvailable: isEntityAvailable,
|
|
123
123
|
templatePartId: templatePartId,
|
|
124
|
-
defaultWrapper: areaObject.tagName
|
|
124
|
+
defaultWrapper: areaObject.tagName,
|
|
125
|
+
hasInnerBlocks: innerBlocks.length > 0
|
|
125
126
|
}), isPlaceholder && (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(_placeholder.default, {
|
|
126
127
|
area: attributes.area,
|
|
127
128
|
templatePartId: templatePartId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"names":["TemplatePartEdit","attributes","setAttributes","clientId","isSelected","slug","theme","tagName","layout","templatePartId","hasAlreadyRendered","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","coreStore","getBlocks","blockEditorStore","getEntityArgs","entityRecord","_area","hasResolvedEntity","templateParts","blockPatterns","hasReplacements","length","areaObject","blockProps","isPlaceholder","isEntityAvailable","TagName","canReplace","BlockTitle","label","toLowerCase"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tBlockTitle,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n} from '@wordpress/block-editor';\nimport { Spinner, Modal, MenuItem } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartPlaceholder from './placeholder';\nimport TemplatePartSelectionModal from './selection-modal';\nimport { TemplatePartAdvancedControls } from './advanced-controls';\nimport TemplatePartInnerBlocks from './inner-blocks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseTemplatePartArea,\n} from './utils/hooks';\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n} ) {\n\tconst { slug, theme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst hasAlreadyRendered = useHasRecursion( templatePartId );\n\tconst [ isTemplatePartSelectionOpen, setIsTemplatePartSelectionOpen ] =\n\t\tuseState( false );\n\n\t// Set the postId block attribute if it did not exist,\n\t// but wait until the inner blocks have loaded to allow\n\t// new edits to trigger this.\n\tconst { isResolved, innerBlocks, isMissing, area } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\n\t\t\tconst getEntityArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\ttemplatePartId,\n\t\t\t];\n\t\t\tconst entityRecord = templatePartId\n\t\t\t\t? getEditedEntityRecord( ...getEntityArgs )\n\t\t\t\t: null;\n\t\t\tconst _area = entityRecord?.area || attributes.area;\n\t\t\tconst hasResolvedEntity = templatePartId\n\t\t\t\t? hasFinishedResolution(\n\t\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t\tgetEntityArgs\n\t\t\t\t )\n\t\t\t\t: false;\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing: hasResolvedEntity && isEmpty( entityRecord ),\n\t\t\t\tarea: _area,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, clientId ]\n\t);\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst hasReplacements = !! templateParts.length || !! blockPatterns.length;\n\tconst areaObject = useTemplatePartArea( area );\n\tconst blockProps = useBlockProps();\n\tconst isPlaceholder = ! slug;\n\tconst isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;\n\tconst TagName = tagName || areaObject.tagName;\n\n\t// The `isSelected` check ensures the `BlockSettingsMenuControls` fill\n\t// doesn't render multiple times. The block controls has similar internal check.\n\tconst canReplace =\n\t\tisSelected &&\n\t\tisEntityAvailable &&\n\t\thasReplacements &&\n\t\t( area === 'header' || area === 'footer' );\n\n\t// We don't want to render a missing state if we have any inner blocks.\n\t// A new template part is automatically created if we have any inner blocks but no entity.\n\tif (\n\t\tinnerBlocks.length === 0 &&\n\t\t( ( slug && ! theme ) || ( slug && isMissing ) )\n\t) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %s: Template part slug */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Template part has been deleted or is unavailable: %s'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tslug\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<RecursionProvider uniqueId={ templatePartId }>\n\t\t\t\t<TemplatePartAdvancedControls\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t\t/>\n\t\t\t\t{ isPlaceholder && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t\t{ canReplace && (\n\t\t\t\t\t<BlockSettingsMenuControls>\n\t\t\t\t\t\t{ () => (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true );\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\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__( 'Replace <BlockTitle />' ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tBlockTitle: (\n\t\t\t\t\t\t\t\t\t\t\t<BlockTitle\n\t\t\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\t\t\tmaximumLength={ 25 }\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</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</BlockSettingsMenuControls>\n\t\t\t\t) }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t\t{ isTemplatePartSelectionOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\toverlayClassName=\"block-editor-template-part__selection-modal\"\n\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t__( 'Choose a %s' ),\n\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t) }\n\t\t\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\t\t\tonRequestClose={ () =>\n\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<TemplatePartSelectionModal\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonClose={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\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"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"names":["TemplatePartEdit","attributes","setAttributes","clientId","isSelected","slug","theme","tagName","layout","templatePartId","hasAlreadyRendered","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","coreStore","getBlocks","blockEditorStore","getEntityArgs","entityRecord","_area","hasResolvedEntity","templateParts","blockPatterns","hasReplacements","length","areaObject","blockProps","isPlaceholder","isEntityAvailable","TagName","canReplace","BlockTitle","label","toLowerCase"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tBlockTitle,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n} from '@wordpress/block-editor';\nimport { Spinner, Modal, MenuItem } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartPlaceholder from './placeholder';\nimport TemplatePartSelectionModal from './selection-modal';\nimport { TemplatePartAdvancedControls } from './advanced-controls';\nimport TemplatePartInnerBlocks from './inner-blocks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseTemplatePartArea,\n} from './utils/hooks';\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n} ) {\n\tconst { slug, theme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst hasAlreadyRendered = useHasRecursion( templatePartId );\n\tconst [ isTemplatePartSelectionOpen, setIsTemplatePartSelectionOpen ] =\n\t\tuseState( false );\n\n\t// Set the postId block attribute if it did not exist,\n\t// but wait until the inner blocks have loaded to allow\n\t// new edits to trigger this.\n\tconst { isResolved, innerBlocks, isMissing, area } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\n\t\t\tconst getEntityArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\ttemplatePartId,\n\t\t\t];\n\t\t\tconst entityRecord = templatePartId\n\t\t\t\t? getEditedEntityRecord( ...getEntityArgs )\n\t\t\t\t: null;\n\t\t\tconst _area = entityRecord?.area || attributes.area;\n\t\t\tconst hasResolvedEntity = templatePartId\n\t\t\t\t? hasFinishedResolution(\n\t\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t\tgetEntityArgs\n\t\t\t\t )\n\t\t\t\t: false;\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing: hasResolvedEntity && isEmpty( entityRecord ),\n\t\t\t\tarea: _area,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, clientId ]\n\t);\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst hasReplacements = !! templateParts.length || !! blockPatterns.length;\n\tconst areaObject = useTemplatePartArea( area );\n\tconst blockProps = useBlockProps();\n\tconst isPlaceholder = ! slug;\n\tconst isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;\n\tconst TagName = tagName || areaObject.tagName;\n\n\t// The `isSelected` check ensures the `BlockSettingsMenuControls` fill\n\t// doesn't render multiple times. The block controls has similar internal check.\n\tconst canReplace =\n\t\tisSelected &&\n\t\tisEntityAvailable &&\n\t\thasReplacements &&\n\t\t( area === 'header' || area === 'footer' );\n\n\t// We don't want to render a missing state if we have any inner blocks.\n\t// A new template part is automatically created if we have any inner blocks but no entity.\n\tif (\n\t\tinnerBlocks.length === 0 &&\n\t\t( ( slug && ! theme ) || ( slug && isMissing ) )\n\t) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %s: Template part slug */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Template part has been deleted or is unavailable: %s'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tslug\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<RecursionProvider uniqueId={ templatePartId }>\n\t\t\t\t<TemplatePartAdvancedControls\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t/>\n\t\t\t\t{ isPlaceholder && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t\t{ canReplace && (\n\t\t\t\t\t<BlockSettingsMenuControls>\n\t\t\t\t\t\t{ () => (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true );\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\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__( 'Replace <BlockTitle />' ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tBlockTitle: (\n\t\t\t\t\t\t\t\t\t\t\t<BlockTitle\n\t\t\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\t\t\tmaximumLength={ 25 }\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</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</BlockSettingsMenuControls>\n\t\t\t\t) }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t\t{ isTemplatePartSelectionOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\toverlayClassName=\"block-editor-template-part__selection-modal\"\n\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t__( 'Choose a %s' ),\n\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t) }\n\t\t\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\t\t\tonRequestClose={ () =>\n\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<TemplatePartSelectionModal\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonClose={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\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"]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.transformWidgetToBlock = transformWidgetToBlock;
|
|
7
|
+
|
|
8
|
+
var _blocks = require("@wordpress/blocks");
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* WordPress dependencies
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Converts a widget entity record into a block.
|
|
16
|
+
*
|
|
17
|
+
* @param {Object} widget The widget entity record.
|
|
18
|
+
* @return {Object} a block (converted from the entity record).
|
|
19
|
+
*/
|
|
20
|
+
function transformWidgetToBlock(widget) {
|
|
21
|
+
if (widget.id_base === 'block') {
|
|
22
|
+
const parsedBlocks = (0, _blocks.parse)(widget.instance.raw.content, {
|
|
23
|
+
__unstableSkipAutop: true
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
if (!parsedBlocks.length) {
|
|
27
|
+
return (0, _blocks.createBlock)('core/paragraph', {}, []);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return parsedBlocks[0];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
let attributes;
|
|
34
|
+
|
|
35
|
+
if (widget._embedded.about[0].is_multi) {
|
|
36
|
+
attributes = {
|
|
37
|
+
idBase: widget.id_base,
|
|
38
|
+
instance: widget.instance
|
|
39
|
+
};
|
|
40
|
+
} else {
|
|
41
|
+
attributes = {
|
|
42
|
+
id: widget.id
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
return (0, _blocks.createBlock)('core/legacy-widget', attributes, []);
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=transformers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/template-part/edit/utils/transformers.js"],"names":["transformWidgetToBlock","widget","id_base","parsedBlocks","instance","raw","content","__unstableSkipAutop","length","attributes","_embedded","about","is_multi","idBase","id"],"mappings":";;;;;;;AAGA;;AAHA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,sBAAT,CAAiCC,MAAjC,EAA0C;AAChD,MAAKA,MAAM,CAACC,OAAP,KAAmB,OAAxB,EAAkC;AACjC,UAAMC,YAAY,GAAG,mBAAOF,MAAM,CAACG,QAAP,CAAgBC,GAAhB,CAAoBC,OAA3B,EAAoC;AACxDC,MAAAA,mBAAmB,EAAE;AADmC,KAApC,CAArB;;AAGA,QAAK,CAAEJ,YAAY,CAACK,MAApB,EAA6B;AAC5B,aAAO,yBAAa,gBAAb,EAA+B,EAA/B,EAAmC,EAAnC,CAAP;AACA;;AAED,WAAOL,YAAY,CAAE,CAAF,CAAnB;AACA;;AAED,MAAIM,UAAJ;;AACA,MAAKR,MAAM,CAACS,SAAP,CAAiBC,KAAjB,CAAwB,CAAxB,EAA4BC,QAAjC,EAA4C;AAC3CH,IAAAA,UAAU,GAAG;AACZI,MAAAA,MAAM,EAAEZ,MAAM,CAACC,OADH;AAEZE,MAAAA,QAAQ,EAAEH,MAAM,CAACG;AAFL,KAAb;AAIA,GALD,MAKO;AACNK,IAAAA,UAAU,GAAG;AACZK,MAAAA,EAAE,EAAEb,MAAM,CAACa;AADC,KAAb;AAGA;;AAED,SAAO,yBAAa,oBAAb,EAAmCL,UAAnC,EAA+C,EAA/C,CAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, parse } from '@wordpress/blocks';\n\n/**\n * Converts a widget entity record into a block.\n *\n * @param {Object} widget The widget entity record.\n * @return {Object} a block (converted from the entity record).\n */\nexport function transformWidgetToBlock( widget ) {\n\tif ( widget.id_base === 'block' ) {\n\t\tconst parsedBlocks = parse( widget.instance.raw.content, {\n\t\t\t__unstableSkipAutop: true,\n\t\t} );\n\t\tif ( ! parsedBlocks.length ) {\n\t\t\treturn createBlock( 'core/paragraph', {}, [] );\n\t\t}\n\n\t\treturn parsedBlocks[ 0 ];\n\t}\n\n\tlet attributes;\n\tif ( widget._embedded.about[ 0 ].is_multi ) {\n\t\tattributes = {\n\t\t\tidBase: widget.id_base,\n\t\t\tinstance: widget.instance,\n\t\t};\n\t} else {\n\t\tattributes = {\n\t\t\tid: widget.id,\n\t\t};\n\t}\n\n\treturn createBlock( 'core/legacy-widget', attributes, [] );\n}\n"]}
|
|
@@ -72,25 +72,26 @@ const VideoSettings = _ref => {
|
|
|
72
72
|
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_components.ToggleControl, {
|
|
73
73
|
label: (0, _i18n.__)('Autoplay'),
|
|
74
74
|
onChange: toggleFactory.autoplay,
|
|
75
|
-
checked: autoplay,
|
|
75
|
+
checked: !!autoplay,
|
|
76
76
|
help: getAutoplayHelp
|
|
77
77
|
}), (0, _element.createElement)(_components.ToggleControl, {
|
|
78
78
|
label: (0, _i18n.__)('Loop'),
|
|
79
79
|
onChange: toggleFactory.loop,
|
|
80
|
-
checked: loop
|
|
80
|
+
checked: !!loop
|
|
81
81
|
}), (0, _element.createElement)(_components.ToggleControl, {
|
|
82
82
|
label: (0, _i18n.__)('Muted'),
|
|
83
83
|
onChange: toggleFactory.muted,
|
|
84
|
-
checked: muted
|
|
84
|
+
checked: !!muted
|
|
85
85
|
}), (0, _element.createElement)(_components.ToggleControl, {
|
|
86
86
|
label: (0, _i18n.__)('Playback controls'),
|
|
87
87
|
onChange: toggleFactory.controls,
|
|
88
|
-
checked: controls
|
|
88
|
+
checked: !!controls
|
|
89
89
|
}), (0, _element.createElement)(_components.ToggleControl, {
|
|
90
90
|
label: (0, _i18n.__)('Play inline'),
|
|
91
91
|
onChange: toggleFactory.playsInline,
|
|
92
|
-
checked: playsInline
|
|
92
|
+
checked: !!playsInline
|
|
93
93
|
}), (0, _element.createElement)(_components.SelectControl, {
|
|
94
|
+
__nextHasNoMarginBottom: true,
|
|
94
95
|
label: (0, _i18n.__)('Preload'),
|
|
95
96
|
value: preload,
|
|
96
97
|
onChange: onChangePreload,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"names":["options","value","label","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","Platform","select","web","checked","native","toggleFactory","toggleAttribute","attribute","newValue","onChangePreload"],"mappings":";;;;;;;AAKA;;AAFA;;AACA;;AAJA;AACA;AACA;AAKA,MAAMA,OAAO,GAAG,CACf;AAAEC,EAAAA,KAAK,EAAE,MAAT;AAAiBC,EAAAA,KAAK,EAAE,cAAI,MAAJ;AAAxB,CADe,EAEf;AAAED,EAAAA,KAAK,EAAE,UAAT;AAAqBC,EAAAA,KAAK,EAAE,cAAI,UAAJ;AAA5B,CAFe,EAGf;AAAED,EAAAA,KAAK,EAAE,MAAT;AAAiBC,EAAAA,KAAK,EAAE,cAAI,MAAJ,EAAY,eAAZ;AAAxB,CAHe,CAAhB;;AAMA,MAAMC,aAAa,GAAG,QAAqC;AAAA,MAAnC;AAAEC,IAAAA,aAAF;AAAiBC,IAAAA;AAAjB,GAAmC;AAC1D,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,QAAZ;AAAsBC,IAAAA,IAAtB;AAA4BC,IAAAA,KAA5B;AAAmCC,IAAAA,WAAnC;AAAgDC,IAAAA;AAAhD,MACLN,UADD;AAGA,QAAMO,gBAAgB,GAAG,cACxB,qDADwB,CAAzB;;AAGA,QAAMC,eAAe,GAAGC,kBAASC,MAAT,CAAiB;AACxCC,IAAAA,GAAG,EAAE,0BAAeC,OAAF,IAAe;AAChC,aAAOA,OAAO,GAAGL,gBAAH,GAAsB,IAApC;AACA,KAFI,EAEF,EAFE,CADmC;AAIxCM,IAAAA,MAAM,EAAEN;AAJgC,GAAjB,CAAxB;;AAOA,QAAMO,aAAa,GAAG,sBAAS,MAAM;AACpC,UAAMC,eAAe,GAAKC,SAAF,IAAiB;AACxC,aAASC,QAAF,IAAgB;AACtBlB,QAAAA,aAAa,CAAE;AAAE,WAAEiB,SAAF,GAAeC;AAAjB,SAAF,CAAb;AACA,OAFD;AAGA,KAJD;;AAMA,WAAO;AACNhB,MAAAA,QAAQ,EAAEc,eAAe,CAAE,UAAF,CADnB;AAENZ,MAAAA,IAAI,EAAEY,eAAe,CAAE,MAAF,CAFf;AAGNX,MAAAA,KAAK,EAAEW,eAAe,CAAE,OAAF,CAHhB;AAINb,MAAAA,QAAQ,EAAEa,eAAe,CAAE,UAAF,CAJnB;AAKNV,MAAAA,WAAW,EAAEU,eAAe,CAAE,aAAF;AALtB,KAAP;AAOA,GAdqB,EAcnB,EAdmB,CAAtB;AAgBA,QAAMG,eAAe,GAAG,0BAAetB,KAAF,IAAa;AACjDG,IAAAA,aAAa,CAAE;AAAEO,MAAAA,OAAO,EAAEV;AAAX,KAAF,CAAb;AACA,GAFuB,EAErB,EAFqB,CAAxB;AAIA,SACC,qDACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,UAAJ,CADT;AAEC,IAAA,QAAQ,EAAGkB,aAAa,CAACb,QAF1B;AAGC,IAAA,OAAO,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"names":["options","value","label","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","Platform","select","web","checked","native","toggleFactory","toggleAttribute","attribute","newValue","onChangePreload"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { ToggleControl, SelectControl } from '@wordpress/components';\nimport { useMemo, useCallback, Platform } from '@wordpress/element';\n\nconst options = [\n\t{ value: 'auto', label: __( 'Auto' ) },\n\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t{ value: 'none', label: _x( 'None', 'Preload value' ) },\n];\n\nconst VideoSettings = ( { setAttributes, attributes } ) => {\n\tconst { autoplay, controls, loop, muted, playsInline, preload } =\n\t\tattributes;\n\n\tconst autoPlayHelpText = __(\n\t\t'Autoplay may cause usability issues for some users.'\n\t);\n\tconst getAutoplayHelp = Platform.select( {\n\t\tweb: useCallback( ( checked ) => {\n\t\t\treturn checked ? autoPlayHelpText : null;\n\t\t}, [] ),\n\t\tnative: autoPlayHelpText,\n\t} );\n\n\tconst toggleFactory = useMemo( () => {\n\t\tconst toggleAttribute = ( attribute ) => {\n\t\t\treturn ( newValue ) => {\n\t\t\t\tsetAttributes( { [ attribute ]: newValue } );\n\t\t\t};\n\t\t};\n\n\t\treturn {\n\t\t\tautoplay: toggleAttribute( 'autoplay' ),\n\t\t\tloop: toggleAttribute( 'loop' ),\n\t\t\tmuted: toggleAttribute( 'muted' ),\n\t\t\tcontrols: toggleAttribute( 'controls' ),\n\t\t\tplaysInline: toggleAttribute( 'playsInline' ),\n\t\t};\n\t}, [] );\n\n\tconst onChangePreload = useCallback( ( value ) => {\n\t\tsetAttributes( { preload: value } );\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\tonChange={ toggleFactory.autoplay }\n\t\t\t\tchecked={ !! autoplay }\n\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\tonChange={ toggleFactory.loop }\n\t\t\t\tchecked={ !! loop }\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\tonChange={ toggleFactory.muted }\n\t\t\t\tchecked={ !! muted }\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\tonChange={ toggleFactory.controls }\n\t\t\t\tchecked={ !! controls }\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\tonChange={ toggleFactory.playsInline }\n\t\t\t\tchecked={ !! playsInline }\n\t\t\t/>\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\tvalue={ preload }\n\t\t\t\tonChange={ onChangePreload }\n\t\t\t\toptions={ options }\n\t\t\t\thideCancelButton={ true }\n\t\t\t/>\n\t\t</>\n\t);\n};\n\nexport default VideoSettings;\n"]}
|
package/build/video/edit.js
CHANGED
|
@@ -295,6 +295,7 @@ function VideoEdit(_ref) {
|
|
|
295
295
|
}, (0, _element.createElement)(_tracks.default, {
|
|
296
296
|
tracks: tracks
|
|
297
297
|
}))), isTemporaryVideo && (0, _element.createElement)(_components.Spinner, null), showCaption && (!_blockEditor.RichText.isEmpty(caption) || isSelected) && (0, _element.createElement)(_blockEditor.RichText, {
|
|
298
|
+
identifier: "caption",
|
|
298
299
|
tagName: "figcaption",
|
|
299
300
|
className: (0, _blockEditor.__experimentalGetElementClassName)('caption'),
|
|
300
301
|
"aria-label": (0, _i18n.__)('Video caption text'),
|
package/build/video/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/video/edit.js"],"names":["placeholder","content","icon","ALLOWED_MEDIA_TYPES","VIDEO_POSTER_ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","attributes","className","setAttributes","insertBlocksAfter","onReplace","instanceId","videoPlayer","posterImageButton","id","caption","controls","poster","src","tracks","prevCaption","showCaption","setShowCaption","isTemporaryVideo","mediaUpload","select","blockEditorStore","getSettings","file","filesList","onFileChange","media","onSelectVideo","onError","onUploadError","allowedTypes","current","load","captionRef","node","focus","url","undefined","image","onSelectURL","newSrc","embedBlock","createErrorNotice","noticesStore","message","type","classes","blockProps","onSelectPoster","onRemovePoster","videoPosterDescription","captionIcon","newTracks","open","RichText","isEmpty","value"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL } from '@wordpress/blob';\nimport {\n\tBaseControl,\n\tButton,\n\tDisabled,\n\tPanelBody,\n\tSpinner,\n\tPlaceholder,\n\tToolbarButton,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect, useState, useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useInstanceId, usePrevious } from '@wordpress/compose';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { video as icon, caption as captionIcon } from '@wordpress/icons';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\n\n// Much of this description is duplicated from MediaPlaceholder.\nconst placeholder = ( content ) => {\n\treturn (\n\t\t<Placeholder\n\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\twithIllustration={ true }\n\t\t\ticon={ icon }\n\t\t\tlabel={ __( 'Video' ) }\n\t\t\tinstructions={ __(\n\t\t\t\t'Upload a video file, pick one from your media library, or add one with a URL.'\n\t\t\t) }\n\t\t>\n\t\t\t{ content }\n\t\t</Placeholder>\n\t);\n};\n\nconst ALLOWED_MEDIA_TYPES = [ 'video' ];\nconst VIDEO_POSTER_ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction VideoEdit( {\n\tisSelected,\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tonReplace,\n} ) {\n\tconst instanceId = useInstanceId( VideoEdit );\n\tconst videoPlayer = useRef();\n\tconst posterImageButton = useRef();\n\tconst { id, caption, controls, poster, src, tracks } = attributes;\n\tconst prevCaption = usePrevious( caption );\n\tconst [ showCaption, setShowCaption ] = useState( !! caption );\n\tconst isTemporaryVideo = ! id && isBlobURL( src );\n\tconst mediaUpload = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().mediaUpload,\n\t\t[]\n\t);\n\n\tuseEffect( () => {\n\t\tif ( ! id && isBlobURL( src ) ) {\n\t\t\tconst file = getBlobByURL( src );\n\t\t\tif ( file ) {\n\t\t\t\tmediaUpload( {\n\t\t\t\t\tfilesList: [ file ],\n\t\t\t\t\tonFileChange: ( [ media ] ) => onSelectVideo( media ),\n\t\t\t\t\tonError: onUploadError,\n\t\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Placeholder may be rendered.\n\t\tif ( videoPlayer.current ) {\n\t\t\tvideoPlayer.current.load();\n\t\t}\n\t}, [ poster ] );\n\n\t// We need to show the caption when changes come from\n\t// history navigation(undo/redo).\n\tuseEffect( () => {\n\t\tif ( caption && ! prevCaption ) {\n\t\t\tsetShowCaption( true );\n\t\t}\n\t}, [ caption, prevCaption ] );\n\n\t// Focus the caption when we click to add one.\n\tconst captionRef = useCallback(\n\t\t( node ) => {\n\t\t\tif ( node && ! caption ) {\n\t\t\t\tnode.focus();\n\t\t\t}\n\t\t},\n\t\t[ caption ]\n\t);\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! caption ) {\n\t\t\tsetShowCaption( false );\n\t\t}\n\t}, [ isSelected, caption ] );\n\n\tfunction onSelectVideo( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error\n\t\t\t// previous attributes should be removed\n\t\t\t// because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t} );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media.\n\t\tsetAttributes( {\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tposter:\n\t\t\t\tmedia.image?.src !== media.icon ? media.image?.src : undefined,\n\t\t\tcaption: media.caption,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock && onReplace ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( { src: newSrc, id: undefined, poster: undefined } );\n\t\t}\n\t}\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': isTemporaryVideo,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tfunction onSelectPoster( image ) {\n\t\tsetAttributes( { poster: image.url } );\n\t}\n\n\tfunction onRemovePoster() {\n\t\tsetAttributes( { poster: undefined } );\n\n\t\t// Move focus back to the Media Upload button.\n\t\tposterImageButton.current.focus();\n\t}\n\n\tconst videoPosterDescription = `video-block__poster-image-description-${ instanceId }`;\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetShowCaption( ! showCaption );\n\t\t\t\t\t\tif ( showCaption && caption ) {\n\t\t\t\t\t\t\tsetAttributes( { caption: undefined } );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\ticon={ captionIcon }\n\t\t\t\t\tisPressed={ showCaption }\n\t\t\t\t\tlabel={\n\t\t\t\t\t\tshowCaption\n\t\t\t\t\t\t\t? __( 'Remove caption' )\n\t\t\t\t\t\t\t: __( 'Add caption' )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls>\n\t\t\t\t<TracksEditor\n\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<VideoCommonSettings\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t<BaseControl className=\"editor-video-poster-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Poster image' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\ttitle={ __( 'Select poster image' ) }\n\t\t\t\t\t\t\t\tonSelect={ onSelectPoster }\n\t\t\t\t\t\t\t\tallowedTypes={\n\t\t\t\t\t\t\t\t\tVIDEO_POSTER_ALLOWED_MEDIA_TYPES\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\tref={ posterImageButton }\n\t\t\t\t\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t\t\t\t\tvideoPosterDescription\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\t{ ! poster\n\t\t\t\t\t\t\t\t\t\t\t? __( 'Select' )\n\t\t\t\t\t\t\t\t\t\t\t: __( 'Replace' ) }\n\t\t\t\t\t\t\t\t\t</Button>\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 id={ videoPosterDescription } hidden>\n\t\t\t\t\t\t\t\t{ poster\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t/* translators: %s: poster image URL. */\n\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t'The current poster image url is %s'\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tposter\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\t\t'There is no poster image currently selected'\n\t\t\t\t\t\t\t\t\t ) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t{ !! poster && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={ onRemovePoster }\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Remove' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n\t\t\t\t\tDisable the video tag if the block is not selected\n\t\t\t\t\tso the user clicking on it won't play the\n\t\t\t\t\tvideo when the controls are enabled.\n\t\t\t\t*/ }\n\t\t\t\t<Disabled isDisabled={ ! isSelected }>\n\t\t\t\t\t<video\n\t\t\t\t\t\tcontrols={ controls }\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tsrc={ src }\n\t\t\t\t\t\tref={ videoPlayer }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Tracks tracks={ tracks } />\n\t\t\t\t\t</video>\n\t\t\t\t</Disabled>\n\t\t\t\t{ isTemporaryVideo && <Spinner /> }\n\t\t\t\t{ showCaption &&\n\t\t\t\t\t( ! RichText.isEmpty( caption ) || isSelected ) && (\n\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\taria-label={ __( 'Video caption text' ) }\n\t\t\t\t\t\t\tref={ captionRef }\n\t\t\t\t\t\t\tplaceholder={ __( 'Add caption' ) }\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tinlineToolbar\n\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default VideoEdit;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/video/edit.js"],"names":["placeholder","content","icon","ALLOWED_MEDIA_TYPES","VIDEO_POSTER_ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","attributes","className","setAttributes","insertBlocksAfter","onReplace","instanceId","videoPlayer","posterImageButton","id","caption","controls","poster","src","tracks","prevCaption","showCaption","setShowCaption","isTemporaryVideo","mediaUpload","select","blockEditorStore","getSettings","file","filesList","onFileChange","media","onSelectVideo","onError","onUploadError","allowedTypes","current","load","captionRef","node","focus","url","undefined","image","onSelectURL","newSrc","embedBlock","createErrorNotice","noticesStore","message","type","classes","blockProps","onSelectPoster","onRemovePoster","videoPosterDescription","captionIcon","newTracks","open","RichText","isEmpty","value"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL } from '@wordpress/blob';\nimport {\n\tBaseControl,\n\tButton,\n\tDisabled,\n\tPanelBody,\n\tSpinner,\n\tPlaceholder,\n\tToolbarButton,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect, useState, useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useInstanceId, usePrevious } from '@wordpress/compose';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { video as icon, caption as captionIcon } from '@wordpress/icons';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\n\n// Much of this description is duplicated from MediaPlaceholder.\nconst placeholder = ( content ) => {\n\treturn (\n\t\t<Placeholder\n\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\twithIllustration={ true }\n\t\t\ticon={ icon }\n\t\t\tlabel={ __( 'Video' ) }\n\t\t\tinstructions={ __(\n\t\t\t\t'Upload a video file, pick one from your media library, or add one with a URL.'\n\t\t\t) }\n\t\t>\n\t\t\t{ content }\n\t\t</Placeholder>\n\t);\n};\n\nconst ALLOWED_MEDIA_TYPES = [ 'video' ];\nconst VIDEO_POSTER_ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction VideoEdit( {\n\tisSelected,\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tonReplace,\n} ) {\n\tconst instanceId = useInstanceId( VideoEdit );\n\tconst videoPlayer = useRef();\n\tconst posterImageButton = useRef();\n\tconst { id, caption, controls, poster, src, tracks } = attributes;\n\tconst prevCaption = usePrevious( caption );\n\tconst [ showCaption, setShowCaption ] = useState( !! caption );\n\tconst isTemporaryVideo = ! id && isBlobURL( src );\n\tconst mediaUpload = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().mediaUpload,\n\t\t[]\n\t);\n\n\tuseEffect( () => {\n\t\tif ( ! id && isBlobURL( src ) ) {\n\t\t\tconst file = getBlobByURL( src );\n\t\t\tif ( file ) {\n\t\t\t\tmediaUpload( {\n\t\t\t\t\tfilesList: [ file ],\n\t\t\t\t\tonFileChange: ( [ media ] ) => onSelectVideo( media ),\n\t\t\t\t\tonError: onUploadError,\n\t\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Placeholder may be rendered.\n\t\tif ( videoPlayer.current ) {\n\t\t\tvideoPlayer.current.load();\n\t\t}\n\t}, [ poster ] );\n\n\t// We need to show the caption when changes come from\n\t// history navigation(undo/redo).\n\tuseEffect( () => {\n\t\tif ( caption && ! prevCaption ) {\n\t\t\tsetShowCaption( true );\n\t\t}\n\t}, [ caption, prevCaption ] );\n\n\t// Focus the caption when we click to add one.\n\tconst captionRef = useCallback(\n\t\t( node ) => {\n\t\t\tif ( node && ! caption ) {\n\t\t\t\tnode.focus();\n\t\t\t}\n\t\t},\n\t\t[ caption ]\n\t);\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! caption ) {\n\t\t\tsetShowCaption( false );\n\t\t}\n\t}, [ isSelected, caption ] );\n\n\tfunction onSelectVideo( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error\n\t\t\t// previous attributes should be removed\n\t\t\t// because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t} );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media.\n\t\tsetAttributes( {\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tposter:\n\t\t\t\tmedia.image?.src !== media.icon ? media.image?.src : undefined,\n\t\t\tcaption: media.caption,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock && onReplace ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( { src: newSrc, id: undefined, poster: undefined } );\n\t\t}\n\t}\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': isTemporaryVideo,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tfunction onSelectPoster( image ) {\n\t\tsetAttributes( { poster: image.url } );\n\t}\n\n\tfunction onRemovePoster() {\n\t\tsetAttributes( { poster: undefined } );\n\n\t\t// Move focus back to the Media Upload button.\n\t\tposterImageButton.current.focus();\n\t}\n\n\tconst videoPosterDescription = `video-block__poster-image-description-${ instanceId }`;\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetShowCaption( ! showCaption );\n\t\t\t\t\t\tif ( showCaption && caption ) {\n\t\t\t\t\t\t\tsetAttributes( { caption: undefined } );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t\ticon={ captionIcon }\n\t\t\t\t\tisPressed={ showCaption }\n\t\t\t\t\tlabel={\n\t\t\t\t\t\tshowCaption\n\t\t\t\t\t\t\t? __( 'Remove caption' )\n\t\t\t\t\t\t\t: __( 'Add caption' )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls>\n\t\t\t\t<TracksEditor\n\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<VideoCommonSettings\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t<BaseControl className=\"editor-video-poster-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Poster image' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\ttitle={ __( 'Select poster image' ) }\n\t\t\t\t\t\t\t\tonSelect={ onSelectPoster }\n\t\t\t\t\t\t\t\tallowedTypes={\n\t\t\t\t\t\t\t\t\tVIDEO_POSTER_ALLOWED_MEDIA_TYPES\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\tref={ posterImageButton }\n\t\t\t\t\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t\t\t\t\tvideoPosterDescription\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\t{ ! poster\n\t\t\t\t\t\t\t\t\t\t\t? __( 'Select' )\n\t\t\t\t\t\t\t\t\t\t\t: __( 'Replace' ) }\n\t\t\t\t\t\t\t\t\t</Button>\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 id={ videoPosterDescription } hidden>\n\t\t\t\t\t\t\t\t{ poster\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t/* translators: %s: poster image URL. */\n\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t'The current poster image url is %s'\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\tposter\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\t\t'There is no poster image currently selected'\n\t\t\t\t\t\t\t\t\t ) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t{ !! poster && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={ onRemovePoster }\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Remove' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n\t\t\t\t\tDisable the video tag if the block is not selected\n\t\t\t\t\tso the user clicking on it won't play the\n\t\t\t\t\tvideo when the controls are enabled.\n\t\t\t\t*/ }\n\t\t\t\t<Disabled isDisabled={ ! isSelected }>\n\t\t\t\t\t<video\n\t\t\t\t\t\tcontrols={ controls }\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tsrc={ src }\n\t\t\t\t\t\tref={ videoPlayer }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Tracks tracks={ tracks } />\n\t\t\t\t\t</video>\n\t\t\t\t</Disabled>\n\t\t\t\t{ isTemporaryVideo && <Spinner /> }\n\t\t\t\t{ showCaption &&\n\t\t\t\t\t( ! RichText.isEmpty( caption ) || isSelected ) && (\n\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\tidentifier=\"caption\"\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\taria-label={ __( 'Video caption text' ) }\n\t\t\t\t\t\t\tref={ captionRef }\n\t\t\t\t\t\t\tplaceholder={ __( 'Add caption' ) }\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tinlineToolbar\n\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default VideoEdit;\n"]}
|
|
@@ -113,6 +113,7 @@ function SingleTrackEditor(_ref2) {
|
|
|
113
113
|
value: srcLang,
|
|
114
114
|
help: (0, _i18n.__)('Language tag (en, fr, etc.)')
|
|
115
115
|
})), (0, _element.createElement)(_components.SelectControl, {
|
|
116
|
+
__nextHasNoMarginBottom: true,
|
|
116
117
|
className: "block-library-video-tracks-editor__single-track-editor-kind-select",
|
|
117
118
|
options: KIND_OPTIONS,
|
|
118
119
|
value: kind,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/video/tracks-editor.js"],"names":["ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","value","TrackList","tracks","onEditPress","content","length","map","track","index","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","newLabel","newSrcLang","newKind","changes","hasChanges","undefined","TracksEditor","mediaUpload","select","blockEditorStore","getSettings","trackBeingEdited","setTrackBeingEdited","isOpen","onToggle","newTrack","newTracks","filter","_track","url","trackIndex","open","media","event","files","target","allowedTypes","filesList","onFileChange","openFileDialog","upload"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tNavigableMenu,\n\tMenuItem,\n\tFormFileUpload,\n\tMenuGroup,\n\tToolbarGroup,\n\tToolbarButton,\n\tDropdown,\n\tButton,\n\tTextControl,\n\tSelectControl,\n} from '@wordpress/components';\nimport {\n\tMediaUpload,\n\tMediaUploadCheck,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { upload, media } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { getFilename } from '@wordpress/url';\n\nconst ALLOWED_TYPES = [ 'text/vtt' ];\n\nconst DEFAULT_KIND = 'subtitles';\n\nconst KIND_OPTIONS = [\n\t{ label: __( 'Subtitles' ), value: 'subtitles' },\n\t{ label: __( 'Captions' ), value: 'captions' },\n\t{ label: __( 'Descriptions' ), value: 'descriptions' },\n\t{ label: __( 'Chapters' ), value: 'chapters' },\n\t{ label: __( 'Metadata' ), value: 'metadata' },\n];\n\nfunction TrackList( { tracks, onEditPress } ) {\n\tlet content;\n\tif ( tracks.length === 0 ) {\n\t\tcontent = (\n\t\t\t<p className=\"block-library-video-tracks-editor__tracks-informative-message\">\n\t\t\t\t{ __(\n\t\t\t\t\t'Tracks can be subtitles, captions, chapters, or descriptions. They help make your content more accessible to a wider range of users.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t);\n\t} else {\n\t\tcontent = tracks.map( ( track, index ) => {\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__track-list-track\"\n\t\t\t\t>\n\t\t\t\t\t<span>{ track.label } </span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => onEditPress( index ) }\n\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the video text track e.g: \"French subtitles\" */\n\t\t\t\t\t\t\t__( 'Edit %s' ),\n\t\t\t\t\t\t\ttrack.label\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t);\n\t\t} );\n\t}\n\treturn (\n\t\t<MenuGroup\n\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\tclassName=\"block-library-video-tracks-editor__track-list\"\n\t\t>\n\t\t\t{ content }\n\t\t</MenuGroup>\n\t);\n}\n\nfunction SingleTrackEditor( { track, onChange, onClose, onRemove } ) {\n\tconst { src = '', label = '', srcLang = '', kind = DEFAULT_KIND } = track;\n\tconst fileName = src.startsWith( 'blob:' ) ? '' : getFilename( src ) || '';\n\treturn (\n\t\t<NavigableMenu>\n\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor\">\n\t\t\t\t<span className=\"block-library-video-tracks-editor__single-track-editor-edit-track-label\">\n\t\t\t\t\t{ __( 'Edit track' ) }\n\t\t\t\t</span>\n\t\t\t\t<span>\n\t\t\t\t\t{ __( 'File' ) }: <b>{ fileName }</b>\n\t\t\t\t</span>\n\t\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor-label-language\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t/* eslint-enable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tlabel: newLabel,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\thelp={ __( 'Title of track' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tonChange={ ( newSrcLang ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tsrcLang: newSrcLang,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Source language' ) }\n\t\t\t\t\t\tvalue={ srcLang }\n\t\t\t\t\t\thelp={ __( 'Language tag (en, fr, etc.)' ) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<SelectControl\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\tvalue={ kind }\n\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\tonChange={ ( newKind ) => {\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tkind: newKind,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t...changes,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\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\t\t{ __( 'Close' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button isDestructive variant=\"link\" onClick={ onRemove }>\n\t\t\t\t\t\t{ __( 'Remove track' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</NavigableMenu>\n\t);\n}\n\nexport default function TracksEditor( { tracks = [], onChange } ) {\n\tconst mediaUpload = useSelect( ( select ) => {\n\t\treturn select( blockEditorStore ).getSettings().mediaUpload;\n\t}, [] );\n\tconst [ trackBeingEdited, setTrackBeingEdited ] = useState( null );\n\n\tif ( ! mediaUpload ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Dropdown\n\t\t\tcontentClassName=\"block-library-video-tracks-editor\"\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Text tracks' ) }\n\t\t\t\t\t</ToolbarButton>\n\t\t\t\t</ToolbarGroup>\n\t\t\t) }\n\t\t\trenderContent={ () => {\n\t\t\t\tif ( trackBeingEdited !== null ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<SingleTrackEditor\n\t\t\t\t\t\t\ttrack={ tracks[ trackBeingEdited ] }\n\t\t\t\t\t\t\tonChange={ ( newTrack ) => {\n\t\t\t\t\t\t\t\tconst newTracks = [ ...tracks ];\n\t\t\t\t\t\t\t\tnewTracks[ trackBeingEdited ] = newTrack;\n\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonClose={ () => setTrackBeingEdited( null ) }\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\ttracks.filter(\n\t\t\t\t\t\t\t\t\t\t( _track, index ) =>\n\t\t\t\t\t\t\t\t\t\t\tindex !== trackBeingEdited\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\tsetTrackBeingEdited( null );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<NavigableMenu>\n\t\t\t\t\t\t\t<TrackList\n\t\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\t\tonEditPress={ setTrackBeingEdited }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuGroup\n\t\t\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__add-tracks-container\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Add tracks' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\t\tonSelect={ ( { url } ) => {\n\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\tonChange( [ ...tracks, { src: url } ] );\n\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited( trackIndex );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_TYPES }\n\t\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={ media }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\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<MediaUploadCheck>\n\t\t\t\t\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\t\t\t\t\tonChange={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t\tconst files = event.target.files;\n\t\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\t\tmediaUpload( {\n\t\t\t\t\t\t\t\t\t\t\t\tallowedTypes: ALLOWED_TYPES,\n\t\t\t\t\t\t\t\t\t\t\t\tfilesList: files,\n\t\t\t\t\t\t\t\t\t\t\t\tonFileChange: ( [\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ url },\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\t\tconst newTracks = [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks,\n\t\t\t\t\t\t\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t! newTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t] = {};\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[ trackIndex ] = {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks[ trackIndex ],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsrc: url,\n\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\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\taccept=\".vtt,text/vtt\"\n\t\t\t\t\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\topenFileDialog();\n\t\t\t\t\t\t\t\t\t\t\t\t\t} }\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\t\t{ __( 'Upload' ) }\n\t\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\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</MediaUploadCheck>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t</>\n\t\t\t\t);\n\t\t\t} }\n\t\t/>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/video/tracks-editor.js"],"names":["ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","value","TrackList","tracks","onEditPress","content","length","map","track","index","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","newLabel","newSrcLang","newKind","changes","hasChanges","undefined","TracksEditor","mediaUpload","select","blockEditorStore","getSettings","trackBeingEdited","setTrackBeingEdited","isOpen","onToggle","newTrack","newTracks","filter","_track","url","trackIndex","open","media","event","files","target","allowedTypes","filesList","onFileChange","openFileDialog","upload"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tNavigableMenu,\n\tMenuItem,\n\tFormFileUpload,\n\tMenuGroup,\n\tToolbarGroup,\n\tToolbarButton,\n\tDropdown,\n\tButton,\n\tTextControl,\n\tSelectControl,\n} from '@wordpress/components';\nimport {\n\tMediaUpload,\n\tMediaUploadCheck,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { upload, media } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { getFilename } from '@wordpress/url';\n\nconst ALLOWED_TYPES = [ 'text/vtt' ];\n\nconst DEFAULT_KIND = 'subtitles';\n\nconst KIND_OPTIONS = [\n\t{ label: __( 'Subtitles' ), value: 'subtitles' },\n\t{ label: __( 'Captions' ), value: 'captions' },\n\t{ label: __( 'Descriptions' ), value: 'descriptions' },\n\t{ label: __( 'Chapters' ), value: 'chapters' },\n\t{ label: __( 'Metadata' ), value: 'metadata' },\n];\n\nfunction TrackList( { tracks, onEditPress } ) {\n\tlet content;\n\tif ( tracks.length === 0 ) {\n\t\tcontent = (\n\t\t\t<p className=\"block-library-video-tracks-editor__tracks-informative-message\">\n\t\t\t\t{ __(\n\t\t\t\t\t'Tracks can be subtitles, captions, chapters, or descriptions. They help make your content more accessible to a wider range of users.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t);\n\t} else {\n\t\tcontent = tracks.map( ( track, index ) => {\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__track-list-track\"\n\t\t\t\t>\n\t\t\t\t\t<span>{ track.label } </span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => onEditPress( index ) }\n\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the video text track e.g: \"French subtitles\" */\n\t\t\t\t\t\t\t__( 'Edit %s' ),\n\t\t\t\t\t\t\ttrack.label\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t);\n\t\t} );\n\t}\n\treturn (\n\t\t<MenuGroup\n\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\tclassName=\"block-library-video-tracks-editor__track-list\"\n\t\t>\n\t\t\t{ content }\n\t\t</MenuGroup>\n\t);\n}\n\nfunction SingleTrackEditor( { track, onChange, onClose, onRemove } ) {\n\tconst { src = '', label = '', srcLang = '', kind = DEFAULT_KIND } = track;\n\tconst fileName = src.startsWith( 'blob:' ) ? '' : getFilename( src ) || '';\n\treturn (\n\t\t<NavigableMenu>\n\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor\">\n\t\t\t\t<span className=\"block-library-video-tracks-editor__single-track-editor-edit-track-label\">\n\t\t\t\t\t{ __( 'Edit track' ) }\n\t\t\t\t</span>\n\t\t\t\t<span>\n\t\t\t\t\t{ __( 'File' ) }: <b>{ fileName }</b>\n\t\t\t\t</span>\n\t\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor-label-language\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t/* eslint-enable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tlabel: newLabel,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\thelp={ __( 'Title of track' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tonChange={ ( newSrcLang ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tsrcLang: newSrcLang,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Source language' ) }\n\t\t\t\t\t\tvalue={ srcLang }\n\t\t\t\t\t\thelp={ __( 'Language tag (en, fr, etc.)' ) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\tvalue={ kind }\n\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\tonChange={ ( newKind ) => {\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tkind: newKind,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t...changes,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\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\t\t{ __( 'Close' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button isDestructive variant=\"link\" onClick={ onRemove }>\n\t\t\t\t\t\t{ __( 'Remove track' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</NavigableMenu>\n\t);\n}\n\nexport default function TracksEditor( { tracks = [], onChange } ) {\n\tconst mediaUpload = useSelect( ( select ) => {\n\t\treturn select( blockEditorStore ).getSettings().mediaUpload;\n\t}, [] );\n\tconst [ trackBeingEdited, setTrackBeingEdited ] = useState( null );\n\n\tif ( ! mediaUpload ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Dropdown\n\t\t\tcontentClassName=\"block-library-video-tracks-editor\"\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Text tracks' ) }\n\t\t\t\t\t</ToolbarButton>\n\t\t\t\t</ToolbarGroup>\n\t\t\t) }\n\t\t\trenderContent={ () => {\n\t\t\t\tif ( trackBeingEdited !== null ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<SingleTrackEditor\n\t\t\t\t\t\t\ttrack={ tracks[ trackBeingEdited ] }\n\t\t\t\t\t\t\tonChange={ ( newTrack ) => {\n\t\t\t\t\t\t\t\tconst newTracks = [ ...tracks ];\n\t\t\t\t\t\t\t\tnewTracks[ trackBeingEdited ] = newTrack;\n\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonClose={ () => setTrackBeingEdited( null ) }\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\ttracks.filter(\n\t\t\t\t\t\t\t\t\t\t( _track, index ) =>\n\t\t\t\t\t\t\t\t\t\t\tindex !== trackBeingEdited\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\tsetTrackBeingEdited( null );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<NavigableMenu>\n\t\t\t\t\t\t\t<TrackList\n\t\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\t\tonEditPress={ setTrackBeingEdited }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuGroup\n\t\t\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__add-tracks-container\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Add tracks' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\t\tonSelect={ ( { url } ) => {\n\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\tonChange( [ ...tracks, { src: url } ] );\n\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited( trackIndex );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_TYPES }\n\t\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={ media }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\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<MediaUploadCheck>\n\t\t\t\t\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\t\t\t\t\tonChange={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t\tconst files = event.target.files;\n\t\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\t\tmediaUpload( {\n\t\t\t\t\t\t\t\t\t\t\t\tallowedTypes: ALLOWED_TYPES,\n\t\t\t\t\t\t\t\t\t\t\t\tfilesList: files,\n\t\t\t\t\t\t\t\t\t\t\t\tonFileChange: ( [\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ url },\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\t\tconst newTracks = [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks,\n\t\t\t\t\t\t\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t! newTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t] = {};\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[ trackIndex ] = {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks[ trackIndex ],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsrc: url,\n\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\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\taccept=\".vtt,text/vtt\"\n\t\t\t\t\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\topenFileDialog();\n\t\t\t\t\t\t\t\t\t\t\t\t\t} }\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\t\t{ __( 'Upload' ) }\n\t\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\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</MediaUploadCheck>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t</>\n\t\t\t\t);\n\t\t\t} }\n\t\t/>\n\t);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/archives/edit.js"],"names":["PanelBody","ToggleControl","SelectControl","Disabled","__","InspectorControls","useBlockProps","ServerSideRender","ArchivesEdit","attributes","setAttributes","showLabel","showPostCounts","displayAsDropdown","type","label","value"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,SADD,EAECC,aAFD,EAGCC,aAHD,EAICC,QAJD,QAKO,uBALP;AAMA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,iBAAT,EAA4BC,aAA5B,QAAiD,yBAAjD;AACA,OAAOC,gBAAP,MAA6B,+BAA7B;AAEA,eAAe,SAASC,YAAT,OAAuD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACrE,QAAM;AAAEC,IAAAA,SAAF;AAAaC,IAAAA,cAAb;AAA6BC,IAAAA,iBAA7B;AAAgDC,IAAAA;AAAhD,MAAyDL,UAA/D;AAEA,SACC,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGL,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,qBAAF,CADX;AAEC,IAAA,OAAO,EAAGS,iBAFX;AAGC,IAAA,QAAQ,EAAG,MACVH,aAAa,CAAE;AACdG,MAAAA,iBAAiB,EAAE,CAAEA;AADP,KAAF;AAJf,IADD,EAUGA,iBAAiB,IAClB,cAAC,aAAD;AACC,IAAA,KAAK,EAAGT,EAAE,CAAE,YAAF,CADX;AAEC,IAAA,OAAO,EAAGO,SAFX;AAGC,IAAA,QAAQ,EAAG,MACVD,aAAa,CAAE;AACdC,MAAAA,SAAS,EAAE,CAAEA;AADC,KAAF;AAJf,IAXF,EAqBC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGP,EAAE,CAAE,kBAAF,CADX;AAEC,IAAA,OAAO,EAAGQ,cAFX;AAGC,IAAA,QAAQ,EAAG,MACVF,aAAa,CAAE;AACdE,MAAAA,cAAc,EAAE,CAAEA;AADJ,KAAF;AAJf,IArBD,EA8BC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGR,EAAE,CAAE,WAAF,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/archives/edit.js"],"names":["PanelBody","ToggleControl","SelectControl","Disabled","__","InspectorControls","useBlockProps","ServerSideRender","ArchivesEdit","attributes","setAttributes","showLabel","showPostCounts","displayAsDropdown","type","label","value"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,SADD,EAECC,aAFD,EAGCC,aAHD,EAICC,QAJD,QAKO,uBALP;AAMA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,iBAAT,EAA4BC,aAA5B,QAAiD,yBAAjD;AACA,OAAOC,gBAAP,MAA6B,+BAA7B;AAEA,eAAe,SAASC,YAAT,OAAuD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACrE,QAAM;AAAEC,IAAAA,SAAF;AAAaC,IAAAA,cAAb;AAA6BC,IAAAA,iBAA7B;AAAgDC,IAAAA;AAAhD,MAAyDL,UAA/D;AAEA,SACC,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGL,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,qBAAF,CADX;AAEC,IAAA,OAAO,EAAGS,iBAFX;AAGC,IAAA,QAAQ,EAAG,MACVH,aAAa,CAAE;AACdG,MAAAA,iBAAiB,EAAE,CAAEA;AADP,KAAF;AAJf,IADD,EAUGA,iBAAiB,IAClB,cAAC,aAAD;AACC,IAAA,KAAK,EAAGT,EAAE,CAAE,YAAF,CADX;AAEC,IAAA,OAAO,EAAGO,SAFX;AAGC,IAAA,QAAQ,EAAG,MACVD,aAAa,CAAE;AACdC,MAAAA,SAAS,EAAE,CAAEA;AADC,KAAF;AAJf,IAXF,EAqBC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGP,EAAE,CAAE,kBAAF,CADX;AAEC,IAAA,OAAO,EAAGQ,cAFX;AAGC,IAAA,QAAQ,EAAG,MACVF,aAAa,CAAE;AACdE,MAAAA,cAAc,EAAE,CAAEA;AADJ,KAAF;AAJf,IArBD,EA8BC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGR,EAAE,CAAE,WAAF,CAFX;AAGC,IAAA,OAAO,EAAG,CACT;AAAEW,MAAAA,KAAK,EAAEX,EAAE,CAAE,MAAF,CAAX;AAAuBY,MAAAA,KAAK,EAAE;AAA9B,KADS,EAET;AAAED,MAAAA,KAAK,EAAEX,EAAE,CAAE,OAAF,CAAX;AAAwBY,MAAAA,KAAK,EAAE;AAA/B,KAFS,EAGT;AAAED,MAAAA,KAAK,EAAEX,EAAE,CAAE,MAAF,CAAX;AAAuBY,MAAAA,KAAK,EAAE;AAA9B,KAHS,EAIT;AAAED,MAAAA,KAAK,EAAEX,EAAE,CAAE,KAAF,CAAX;AAAsBY,MAAAA,KAAK,EAAE;AAA7B,KAJS,CAHX;AASC,IAAA,KAAK,EAAGF,IATT;AAUC,IAAA,QAAQ,EAAKE,KAAF,IACVN,aAAa,CAAE;AAAEI,MAAAA,IAAI,EAAEE;AAAR,KAAF;AAXf,IA9BD,CADD,CADD,EAgDC,qBAAUV,aAAa,EAAvB,EACC,cAAC,QAAD,QACC,cAAC,gBAAD;AACC,IAAA,KAAK,EAAC,eADP;AAEC,IAAA,0BAA0B,MAF3B;AAGC,IAAA,UAAU,EAAGG;AAHd,IADD,CADD,CAhDD,CADD;AA4DA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n\tDisabled,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\n\nexport default function ArchivesEdit( { attributes, setAttributes } ) {\n\tconst { showLabel, showPostCounts, displayAsDropdown, type } = attributes;\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display as dropdown' ) }\n\t\t\t\t\t\tchecked={ displayAsDropdown }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayAsDropdown: ! displayAsDropdown,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayAsDropdown && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Show label' ) }\n\t\t\t\t\t\t\tchecked={ showLabel }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowLabel: ! showLabel,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Show post counts' ) }\n\t\t\t\t\t\tchecked={ showPostCounts }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowPostCounts: ! showPostCounts,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Group by:' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Year' ), value: 'yearly' },\n\t\t\t\t\t\t\t{ label: __( 'Month' ), value: 'monthly' },\n\t\t\t\t\t\t\t{ label: __( 'Week' ), value: 'weekly' },\n\t\t\t\t\t\t\t{ label: __( 'Day' ), value: 'daily' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ type }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { type: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tblock=\"core/archives\"\n\t\t\t\t\t\tskipBlockSupportAttributes\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
|