@wordpress/block-library 9.6.1 → 9.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/audio/edit.js +2 -1
- package/build/audio/edit.js.map +1 -1
- package/build/block/edit.js +3 -5
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.js +1 -1
- package/build/button/edit.js.map +1 -1
- package/build/categories/index.js +1 -0
- package/build/categories/index.js.map +1 -1
- package/build/comment-edit-link/index.js +13 -2
- package/build/comment-edit-link/index.js.map +1 -1
- package/build/comment-reply-link/index.js +13 -2
- package/build/comment-reply-link/index.js.map +1 -1
- package/build/comments/edit/comments-legacy.js +4 -1
- package/build/comments/edit/comments-legacy.js.map +1 -1
- package/build/cover/edit/block-controls.js +4 -2
- package/build/cover/edit/block-controls.js.map +1 -1
- package/build/cover/edit/index.js +2 -1
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +4 -12
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/details/index.js +3 -1
- package/build/details/index.js.map +1 -1
- package/build/details/transforms.js +24 -0
- package/build/details/transforms.js.map +1 -0
- package/build/embed/embed-placeholder.js +8 -2
- package/build/embed/embed-placeholder.js.map +1 -1
- package/build/file/edit.js +12 -1
- package/build/file/edit.js.map +1 -1
- package/build/freeform/edit.js +4 -4
- package/build/freeform/edit.js.map +1 -1
- package/build/freeform/modal.js +12 -3
- package/build/freeform/modal.js.map +1 -1
- package/build/home-link/edit.js +3 -9
- package/build/home-link/edit.js.map +1 -1
- package/build/image/edit.js +44 -34
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +22 -10
- package/build/image/image.js.map +1 -1
- package/build/media-text/deprecated.js +144 -3
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js +5 -5
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/image-fill.js +12 -0
- package/build/media-text/image-fill.js.map +1 -0
- package/build/media-text/media-container.js +21 -18
- package/build/media-text/media-container.js.map +1 -1
- package/build/media-text/media-container.native.js +0 -7
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/media-text/save.js +5 -6
- package/build/media-text/save.js.map +1 -1
- package/build/missing/edit.js +6 -3
- package/build/missing/edit.js.map +1 -1
- package/build/navigation/edit/deleted-navigation-warning.js +4 -1
- package/build/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build/navigation/edit/index.js +4 -1
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-delete-control.js +4 -1
- package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +4 -1
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +8 -2
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +4 -4
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation-link/link-ui.js +5 -2
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +8 -2
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +7 -2
- package/build/page-list/edit.js.map +1 -1
- package/build/post-comments-form/form.js +4 -1
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +6 -8
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +5 -5
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/query/edit/enhanced-pagination-modal.js +4 -1
- package/build/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build/query/edit/query-placeholder.js +8 -2
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/site-logo/edit.js +15 -15
- package/build/site-logo/edit.js.map +1 -1
- package/build/social-link/edit.js +4 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-links/edit.js +10 -9
- package/build/social-links/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/index.js +1 -1
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/placeholder.js +8 -2
- package/build/template-part/edit/placeholder.js.map +1 -1
- package/build/utils/hooks.js +10 -10
- package/build/utils/hooks.js.map +1 -1
- package/build/video/edit.js +22 -14
- package/build/video/edit.js.map +1 -1
- package/build/video/tracks-editor.js +12 -3
- package/build/video/tracks-editor.js.map +1 -1
- package/build-module/audio/edit.js +2 -1
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/block/edit.js +4 -6
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.js +1 -1
- package/build-module/button/edit.js.map +1 -1
- package/build-module/categories/index.js +1 -0
- package/build-module/categories/index.js.map +1 -1
- package/build-module/comment-edit-link/index.js +13 -2
- package/build-module/comment-edit-link/index.js.map +1 -1
- package/build-module/comment-reply-link/index.js +13 -2
- package/build-module/comment-reply-link/index.js.map +1 -1
- package/build-module/comments/edit/comments-legacy.js +4 -1
- package/build-module/comments/edit/comments-legacy.js.map +1 -1
- package/build-module/cover/edit/block-controls.js +4 -2
- package/build-module/cover/edit/block-controls.js.map +1 -1
- package/build-module/cover/edit/index.js +2 -1
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +5 -13
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/details/index.js +3 -1
- package/build-module/details/index.js.map +1 -1
- package/build-module/details/transforms.js +18 -0
- package/build-module/details/transforms.js.map +1 -0
- package/build-module/embed/embed-placeholder.js +8 -2
- package/build-module/embed/embed-placeholder.js.map +1 -1
- package/build-module/file/edit.js +12 -1
- package/build-module/file/edit.js.map +1 -1
- package/build-module/freeform/edit.js +4 -4
- package/build-module/freeform/edit.js.map +1 -1
- package/build-module/freeform/modal.js +12 -3
- package/build-module/freeform/modal.js.map +1 -1
- package/build-module/home-link/edit.js +3 -9
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/image/edit.js +45 -34
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +23 -11
- package/build-module/image/image.js.map +1 -1
- package/build-module/media-text/deprecated.js +144 -3
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.js +5 -5
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/image-fill.js +6 -0
- package/build-module/media-text/image-fill.js.map +1 -0
- package/build-module/media-text/media-container.js +21 -17
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/media-text/media-container.native.js +0 -1
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/media-text/save.js +5 -6
- package/build-module/media-text/save.js.map +1 -1
- package/build-module/missing/edit.js +6 -3
- package/build-module/missing/edit.js.map +1 -1
- package/build-module/navigation/edit/deleted-navigation-warning.js +4 -1
- package/build-module/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build-module/navigation/edit/index.js +4 -1
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js +4 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +4 -1
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +8 -2
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +4 -4
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +7 -4
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +8 -2
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +7 -2
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +4 -1
- package/build-module/post-comments-form/form.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +6 -8
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +6 -6
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/query/edit/enhanced-pagination-modal.js +4 -1
- package/build-module/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +8 -2
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/site-logo/edit.js +16 -16
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/social-link/edit.js +4 -1
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-links/edit.js +11 -10
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/index.js +1 -1
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/placeholder.js +8 -2
- package/build-module/template-part/edit/placeholder.js.map +1 -1
- package/build-module/utils/hooks.js +10 -10
- package/build-module/utils/hooks.js.map +1 -1
- package/build-module/video/edit.js +22 -15
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/tracks-editor.js +12 -3
- package/build-module/video/tracks-editor.js.map +1 -1
- package/build-style/button/editor-rtl.css +0 -4
- package/build-style/button/editor.css +0 -4
- package/build-style/buttons/editor-rtl.css +0 -3
- package/build-style/buttons/editor.css +0 -3
- package/build-style/comment-edit-link/style-rtl.css +94 -0
- package/build-style/comment-edit-link/style.css +94 -0
- package/build-style/comment-reply-link/style-rtl.css +94 -0
- package/build-style/comment-reply-link/style.css +94 -0
- package/build-style/comments-pagination/editor-rtl.css +2 -2
- package/build-style/comments-pagination/editor.css +2 -2
- package/build-style/cover/editor-rtl.css +0 -6
- package/build-style/cover/editor.css +0 -6
- package/build-style/editor-rtl.css +24 -68
- package/build-style/editor.css +24 -70
- package/build-style/group/editor-rtl.css +0 -1
- package/build-style/group/editor.css +0 -1
- package/build-style/image/editor-rtl.css +0 -1
- package/build-style/image/editor.css +0 -1
- package/build-style/media-text/editor-rtl.css +3 -1
- package/build-style/media-text/editor.css +3 -1
- package/build-style/media-text/style-rtl.css +20 -0
- package/build-style/media-text/style.css +20 -0
- package/build-style/navigation/editor-rtl.css +0 -1
- package/build-style/navigation/editor.css +0 -1
- package/build-style/post-featured-image/style-rtl.css +1 -1
- package/build-style/post-featured-image/style.css +1 -1
- package/build-style/query-pagination/editor-rtl.css +2 -16
- package/build-style/query-pagination/editor.css +2 -18
- package/build-style/query-pagination/style-rtl.css +0 -11
- package/build-style/query-pagination/style.css +0 -13
- package/build-style/site-title/editor-rtl.css +0 -4
- package/build-style/site-title/editor.css +0 -4
- package/build-style/social-links/editor-rtl.css +17 -0
- package/build-style/social-links/editor.css +17 -0
- package/build-style/style-rtl.css +29 -12
- package/build-style/style.css +29 -14
- package/build-style/video/editor-rtl.css +0 -29
- package/build-style/video/editor.css +0 -29
- package/package.json +35 -35
- package/src/audio/edit.js +1 -0
- package/src/block/edit.js +6 -4
- package/src/button/edit.js +1 -1
- package/src/button/editor.scss +0 -5
- package/src/buttons/editor.scss +0 -6
- package/src/categories/block.json +1 -0
- package/src/categories/index.php +13 -2
- package/src/comment-edit-link/block.json +13 -2
- package/src/comment-edit-link/style.scss +4 -0
- package/src/comment-reply-link/block.json +13 -2
- package/src/comment-reply-link/style.scss +4 -0
- package/src/comments/edit/comments-legacy.js +2 -0
- package/src/comments-pagination/editor.scss +1 -1
- package/src/cover/edit/block-controls.js +2 -0
- package/src/cover/edit/index.js +1 -0
- package/src/cover/edit/inspector-controls.js +3 -15
- package/src/cover/editor.scss +0 -5
- package/src/cover/test/edit.js +30 -26
- package/src/details/index.js +2 -0
- package/src/details/transforms.js +26 -0
- package/src/embed/embed-placeholder.js +12 -2
- package/src/file/edit.js +11 -0
- package/src/freeform/edit.js +4 -4
- package/src/freeform/editor.scss +1 -1
- package/src/freeform/modal.js +10 -1
- package/src/gallery/editor.scss +1 -1
- package/src/group/editor.scss +0 -1
- package/src/home-link/edit.js +4 -7
- package/src/image/edit.js +42 -30
- package/src/image/editor.scss +0 -3
- package/src/image/image.js +75 -53
- package/src/media-text/deprecated.js +159 -3
- package/src/media-text/edit.js +5 -5
- package/src/media-text/editor.scss +3 -1
- package/src/media-text/image-fill.js +11 -0
- package/src/media-text/index.php +53 -43
- package/src/media-text/media-container.js +25 -25
- package/src/media-text/media-container.native.js +0 -2
- package/src/media-text/save.js +9 -13
- package/src/media-text/style.scss +21 -0
- package/src/media-text/test/image-fill.js +19 -0
- package/src/missing/edit.js +9 -3
- package/src/navigation/edit/deleted-navigation-warning.js +8 -1
- package/src/navigation/edit/index.js +2 -0
- package/src/navigation/edit/navigation-menu-delete-control.js +2 -0
- package/src/navigation/edit/placeholder/index.js +2 -0
- package/src/navigation/edit/responsive-wrapper.js +4 -0
- package/src/navigation/edit/unsaved-inner-blocks.js +4 -4
- package/src/navigation/editor.scss +6 -3
- package/src/navigation-link/link-ui.js +5 -3
- package/src/page-list/convert-to-links-modal.js +8 -1
- package/src/page-list/edit.js +7 -1
- package/src/page-list/index.php +3 -1
- package/src/post-comments-form/form.js +2 -0
- package/src/post-featured-image/dimension-controls.js +4 -4
- package/src/post-featured-image/edit.js +4 -6
- package/src/post-featured-image/style.scss +1 -1
- package/src/query/edit/enhanced-pagination-modal.js +6 -1
- package/src/query/edit/query-placeholder.js +4 -0
- package/src/query-pagination/editor.scss +1 -21
- package/src/query-pagination/style.scss +0 -15
- package/src/site-logo/edit.js +13 -20
- package/src/site-title/editor.scss +0 -4
- package/src/social-link/edit.js +2 -0
- package/src/social-links/edit.js +17 -10
- package/src/social-links/editor.scss +24 -5
- package/src/style.scss +2 -0
- package/src/tag-cloud/index.php +7 -2
- package/src/template-part/edit/advanced-controls.js +0 -1
- package/src/template-part/edit/index.js +12 -10
- package/src/template-part/edit/placeholder.js +8 -1
- package/src/utils/hooks.js +11 -11
- package/src/video/edit.js +26 -21
- package/src/video/editor.scss +0 -45
- package/src/video/tracks-editor.js +6 -0
- package/src/media-text/test/media-container.js +0 -24
|
@@ -53,11 +53,17 @@ export default function TemplatePartPlaceholder({
|
|
|
53
53
|
__('Choose an existing %s or create a new one.'), areaObject.label.toLowerCase()) : sprintf(
|
|
54
54
|
// Translators: %s as template part area title ("Header", "Footer", etc.).
|
|
55
55
|
__('Choose an existing %s.'), areaObject.label.toLowerCase()),
|
|
56
|
-
children: [isResolving && /*#__PURE__*/_jsx(Spinner, {}), !isResolving && !!(templateParts.length || blockPatterns.length) && /*#__PURE__*/_jsx(Button
|
|
56
|
+
children: [isResolving && /*#__PURE__*/_jsx(Spinner, {}), !isResolving && !!(templateParts.length || blockPatterns.length) && /*#__PURE__*/_jsx(Button
|
|
57
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
58
|
+
, {
|
|
59
|
+
__next40pxDefaultSize: false,
|
|
57
60
|
variant: "primary",
|
|
58
61
|
onClick: onOpenSelectionModal,
|
|
59
62
|
children: __('Choose')
|
|
60
|
-
}), !isResolving && isBlockBasedTheme && canCreateTemplatePart && /*#__PURE__*/_jsx(Button
|
|
63
|
+
}), !isResolving && isBlockBasedTheme && canCreateTemplatePart && /*#__PURE__*/_jsx(Button
|
|
64
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
65
|
+
, {
|
|
66
|
+
__next40pxDefaultSize: false,
|
|
61
67
|
variant: "secondary",
|
|
62
68
|
onClick: () => {
|
|
63
69
|
setShowTitleModal(true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","sprintf","Placeholder","Button","Spinner","useState","useSelect","store","coreStore","useAlternativeBlockPatterns","useAlternativeTemplateParts","useCreateTemplatePartFromBlocks","useTemplatePartArea","TitleModal","jsx","_jsx","jsxs","_jsxs","TemplatePartPlaceholder","area","clientId","templatePartId","onOpenSelectionModal","setAttributes","templateParts","isResolving","blockPatterns","isBlockBasedTheme","canCreateTemplatePart","select","getCurrentTheme","canUser","is_block_theme","kind","name","showTitleModal","setShowTitleModal","areaObject","createFromBlocks","icon","label","instructions","toLowerCase","children","length","variant","onClick","areaLabel","onClose","onSubmit","title"],"sources":["@wordpress/block-library/src/template-part/edit/placeholder.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Placeholder, Button, Spinner } from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseCreateTemplatePartFromBlocks,\n\tuseTemplatePartArea,\n} from './utils/hooks';\nimport TitleModal from './title-modal';\n\nexport default function TemplatePartPlaceholder( {\n\tarea,\n\tclientId,\n\ttemplatePartId,\n\tonOpenSelectionModal,\n\tsetAttributes,\n} ) {\n\tconst { templateParts, isResolving } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\n\tconst { isBlockBasedTheme, canCreateTemplatePart } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentTheme, canUser } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tisBlockBasedTheme: getCurrentTheme()?.is_block_theme,\n\t\t\t\tcanCreateTemplatePart: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_template_part',\n\t\t\t\t} ),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst [ showTitleModal, setShowTitleModal ] = useState( false );\n\tconst areaObject = useTemplatePartArea( area );\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\n\n\treturn (\n\t\t<Placeholder\n\t\t\ticon={ areaObject.icon }\n\t\t\tlabel={ areaObject.label }\n\t\t\tinstructions={\n\t\t\t\tisBlockBasedTheme\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t\t__( 'Choose an existing %s or create a new one.' ),\n\t\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t\t__( 'Choose an existing %s.' ),\n\t\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t )\n\t\t\t}\n\t\t>\n\t\t\t{ isResolving && <Spinner /> }\n\n\t\t\t{ ! isResolving &&\n\t\t\t\t!! ( templateParts.length || blockPatterns.length ) && (\n\t\t\t\t\t<Button
|
|
1
|
+
{"version":3,"names":["__","sprintf","Placeholder","Button","Spinner","useState","useSelect","store","coreStore","useAlternativeBlockPatterns","useAlternativeTemplateParts","useCreateTemplatePartFromBlocks","useTemplatePartArea","TitleModal","jsx","_jsx","jsxs","_jsxs","TemplatePartPlaceholder","area","clientId","templatePartId","onOpenSelectionModal","setAttributes","templateParts","isResolving","blockPatterns","isBlockBasedTheme","canCreateTemplatePart","select","getCurrentTheme","canUser","is_block_theme","kind","name","showTitleModal","setShowTitleModal","areaObject","createFromBlocks","icon","label","instructions","toLowerCase","children","length","__next40pxDefaultSize","variant","onClick","areaLabel","onClose","onSubmit","title"],"sources":["@wordpress/block-library/src/template-part/edit/placeholder.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Placeholder, Button, Spinner } from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseCreateTemplatePartFromBlocks,\n\tuseTemplatePartArea,\n} from './utils/hooks';\nimport TitleModal from './title-modal';\n\nexport default function TemplatePartPlaceholder( {\n\tarea,\n\tclientId,\n\ttemplatePartId,\n\tonOpenSelectionModal,\n\tsetAttributes,\n} ) {\n\tconst { templateParts, isResolving } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\n\tconst { isBlockBasedTheme, canCreateTemplatePart } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentTheme, canUser } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tisBlockBasedTheme: getCurrentTheme()?.is_block_theme,\n\t\t\t\tcanCreateTemplatePart: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_template_part',\n\t\t\t\t} ),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst [ showTitleModal, setShowTitleModal ] = useState( false );\n\tconst areaObject = useTemplatePartArea( area );\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\n\n\treturn (\n\t\t<Placeholder\n\t\t\ticon={ areaObject.icon }\n\t\t\tlabel={ areaObject.label }\n\t\t\tinstructions={\n\t\t\t\tisBlockBasedTheme\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t\t__( 'Choose an existing %s or create a new one.' ),\n\t\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t\t__( 'Choose an existing %s.' ),\n\t\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t )\n\t\t\t}\n\t\t>\n\t\t\t{ isResolving && <Spinner /> }\n\n\t\t\t{ ! isResolving &&\n\t\t\t\t!! ( templateParts.length || blockPatterns.length ) && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ onOpenSelectionModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Choose' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t{ ! isResolving && isBlockBasedTheme && canCreateTemplatePart && (\n\t\t\t\t<Button\n\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetShowTitleModal( true );\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Start blank' ) }\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t\t{ showTitleModal && (\n\t\t\t\t<TitleModal\n\t\t\t\t\tareaLabel={ areaObject.label }\n\t\t\t\t\tonClose={ () => setShowTitleModal( false ) }\n\t\t\t\t\tonSubmit={ ( title ) => {\n\t\t\t\t\t\tcreateFromBlocks( [], title );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Placeholder>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -33,24 +33,24 @@ export function useCanEditEntity(kind, name, recordId) {
|
|
|
33
33
|
* @param {Function} args.onError Function called when an error happens.
|
|
34
34
|
*/
|
|
35
35
|
export function useUploadMediaFromBlobURL(args = {}) {
|
|
36
|
-
const
|
|
37
|
-
const
|
|
36
|
+
const latestArgsRef = useRef(args);
|
|
37
|
+
const hasUploadStartedRef = useRef(false);
|
|
38
38
|
const {
|
|
39
39
|
getSettings
|
|
40
40
|
} = useSelect(blockEditorStore);
|
|
41
41
|
useLayoutEffect(() => {
|
|
42
|
-
|
|
42
|
+
latestArgsRef.current = args;
|
|
43
43
|
});
|
|
44
44
|
useEffect(() => {
|
|
45
45
|
// Uploading is a special effect that can't be canceled via the cleanup method.
|
|
46
46
|
// The extra check avoids duplicate uploads in development mode (React.StrictMode).
|
|
47
|
-
if (
|
|
47
|
+
if (hasUploadStartedRef.current) {
|
|
48
48
|
return;
|
|
49
49
|
}
|
|
50
|
-
if (!
|
|
50
|
+
if (!latestArgsRef.current.url || !isBlobURL(latestArgsRef.current.url)) {
|
|
51
51
|
return;
|
|
52
52
|
}
|
|
53
|
-
const file = getBlobByURL(
|
|
53
|
+
const file = getBlobByURL(latestArgsRef.current.url);
|
|
54
54
|
if (!file) {
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
@@ -59,11 +59,11 @@ export function useUploadMediaFromBlobURL(args = {}) {
|
|
|
59
59
|
allowedTypes,
|
|
60
60
|
onChange,
|
|
61
61
|
onError
|
|
62
|
-
} =
|
|
62
|
+
} = latestArgsRef.current;
|
|
63
63
|
const {
|
|
64
64
|
mediaUpload
|
|
65
65
|
} = getSettings();
|
|
66
|
-
|
|
66
|
+
hasUploadStartedRef.current = true;
|
|
67
67
|
mediaUpload({
|
|
68
68
|
filesList: [file],
|
|
69
69
|
allowedTypes,
|
|
@@ -73,12 +73,12 @@ export function useUploadMediaFromBlobURL(args = {}) {
|
|
|
73
73
|
}
|
|
74
74
|
revokeBlobURL(url);
|
|
75
75
|
onChange(media);
|
|
76
|
-
|
|
76
|
+
hasUploadStartedRef.current = false;
|
|
77
77
|
},
|
|
78
78
|
onError: message => {
|
|
79
79
|
revokeBlobURL(url);
|
|
80
80
|
onError(message);
|
|
81
|
-
|
|
81
|
+
hasUploadStartedRef.current = false;
|
|
82
82
|
}
|
|
83
83
|
});
|
|
84
84
|
}, [getSettings]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSelect","useLayoutEffect","useEffect","useRef","getBlobByURL","isBlobURL","revokeBlobURL","store","blockEditorStore","coreStore","useViewportMatch","useCanEditEntity","kind","name","recordId","select","canUser","id","useUploadMediaFromBlobURL","args","
|
|
1
|
+
{"version":3,"names":["useSelect","useLayoutEffect","useEffect","useRef","getBlobByURL","isBlobURL","revokeBlobURL","store","blockEditorStore","coreStore","useViewportMatch","useCanEditEntity","kind","name","recordId","select","canUser","id","useUploadMediaFromBlobURL","args","latestArgsRef","hasUploadStartedRef","getSettings","current","url","file","allowedTypes","onChange","onError","mediaUpload","filesList","onFileChange","media","message","useToolsPanelDropdownMenuProps","isMobile","popoverProps","placement","offset"],"sources":["@wordpress/block-library/src/utils/hooks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useLayoutEffect, useEffect, useRef } from '@wordpress/element';\nimport { getBlobByURL, isBlobURL, revokeBlobURL } from '@wordpress/blob';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Returns whether the current user can edit the given entity.\n *\n * @param {string} kind Entity kind.\n * @param {string} name Entity name.\n * @param {string} recordId Record's id.\n */\nexport function useCanEditEntity( kind, name, recordId ) {\n\treturn useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).canUser( 'update', {\n\t\t\t\tkind,\n\t\t\t\tname,\n\t\t\t\tid: recordId,\n\t\t\t} ),\n\t\t[ kind, name, recordId ]\n\t);\n}\n\n/**\n * Handles uploading a media file from a blob URL on mount.\n *\n * @param {Object} args Upload media arguments.\n * @param {string} args.url Blob URL.\n * @param {?Array} args.allowedTypes Array of allowed media types.\n * @param {Function} args.onChange Function called when the media is uploaded.\n * @param {Function} args.onError Function called when an error happens.\n */\nexport function useUploadMediaFromBlobURL( args = {} ) {\n\tconst latestArgsRef = useRef( args );\n\tconst hasUploadStartedRef = useRef( false );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\n\tuseLayoutEffect( () => {\n\t\tlatestArgsRef.current = args;\n\t} );\n\n\tuseEffect( () => {\n\t\t// Uploading is a special effect that can't be canceled via the cleanup method.\n\t\t// The extra check avoids duplicate uploads in development mode (React.StrictMode).\n\t\tif ( hasUploadStartedRef.current ) {\n\t\t\treturn;\n\t\t}\n\t\tif (\n\t\t\t! latestArgsRef.current.url ||\n\t\t\t! isBlobURL( latestArgsRef.current.url )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = getBlobByURL( latestArgsRef.current.url );\n\t\tif ( ! file ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { url, allowedTypes, onChange, onError } = latestArgsRef.current;\n\t\tconst { mediaUpload } = getSettings();\n\n\t\thasUploadStartedRef.current = true;\n\n\t\tmediaUpload( {\n\t\t\tfilesList: [ file ],\n\t\t\tallowedTypes,\n\t\t\tonFileChange: ( [ media ] ) => {\n\t\t\t\tif ( isBlobURL( media?.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\trevokeBlobURL( url );\n\t\t\t\tonChange( media );\n\t\t\t\thasUploadStartedRef.current = false;\n\t\t\t},\n\t\t\tonError: ( message ) => {\n\t\t\t\trevokeBlobURL( url );\n\t\t\t\tonError( message );\n\t\t\t\thasUploadStartedRef.current = false;\n\t\t\t},\n\t\t} );\n\t}, [ getSettings ] );\n}\n\nexport function useToolsPanelDropdownMenuProps() {\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\treturn ! isMobile\n\t\t? {\n\t\t\t\tpopoverProps: {\n\t\t\t\t\tplacement: 'left-start',\n\t\t\t\t\t// For non-mobile, inner sidebar width (248px) - button width (24px) - border (1px) + padding (16px) + spacing (20px)\n\t\t\t\t\toffset: 259,\n\t\t\t\t},\n\t\t }\n\t\t: {};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,eAAe,EAAEC,SAAS,EAAEC,MAAM,QAAQ,oBAAoB;AACvE,SAASC,YAAY,EAAEC,SAAS,EAAEC,aAAa,QAAQ,iBAAiB;AACxE,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AACnE,SAASD,KAAK,IAAIE,SAAS,QAAQ,sBAAsB;AACzD,SAASC,gBAAgB,QAAQ,oBAAoB;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAAEC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAG;EACxD,OAAOd,SAAS,CACbe,MAAM,IACPA,MAAM,CAAEN,SAAU,CAAC,CAACO,OAAO,CAAE,QAAQ,EAAE;IACtCJ,IAAI;IACJC,IAAI;IACJI,EAAE,EAAEH;EACL,CAAE,CAAC,EACJ,CAAEF,IAAI,EAAEC,IAAI,EAAEC,QAAQ,CACvB,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASI,yBAAyBA,CAAEC,IAAI,GAAG,CAAC,CAAC,EAAG;EACtD,MAAMC,aAAa,GAAGjB,MAAM,CAAEgB,IAAK,CAAC;EACpC,MAAME,mBAAmB,GAAGlB,MAAM,CAAE,KAAM,CAAC;EAC3C,MAAM;IAAEmB;EAAY,CAAC,GAAGtB,SAAS,CAAEQ,gBAAiB,CAAC;EAErDP,eAAe,CAAE,MAAM;IACtBmB,aAAa,CAACG,OAAO,GAAGJ,IAAI;EAC7B,CAAE,CAAC;EAEHjB,SAAS,CAAE,MAAM;IAChB;IACA;IACA,IAAKmB,mBAAmB,CAACE,OAAO,EAAG;MAClC;IACD;IACA,IACC,CAAEH,aAAa,CAACG,OAAO,CAACC,GAAG,IAC3B,CAAEnB,SAAS,CAAEe,aAAa,CAACG,OAAO,CAACC,GAAI,CAAC,EACvC;MACD;IACD;IAEA,MAAMC,IAAI,GAAGrB,YAAY,CAAEgB,aAAa,CAACG,OAAO,CAACC,GAAI,CAAC;IACtD,IAAK,CAAEC,IAAI,EAAG;MACb;IACD;IAEA,MAAM;MAAED,GAAG;MAAEE,YAAY;MAAEC,QAAQ;MAAEC;IAAQ,CAAC,GAAGR,aAAa,CAACG,OAAO;IACtE,MAAM;MAAEM;IAAY,CAAC,GAAGP,WAAW,CAAC,CAAC;IAErCD,mBAAmB,CAACE,OAAO,GAAG,IAAI;IAElCM,WAAW,CAAE;MACZC,SAAS,EAAE,CAAEL,IAAI,CAAE;MACnBC,YAAY;MACZK,YAAY,EAAEA,CAAE,CAAEC,KAAK,CAAE,KAAM;QAC9B,IAAK3B,SAAS,CAAE2B,KAAK,EAAER,GAAI,CAAC,EAAG;UAC9B;QACD;QAEAlB,aAAa,CAAEkB,GAAI,CAAC;QACpBG,QAAQ,CAAEK,KAAM,CAAC;QACjBX,mBAAmB,CAACE,OAAO,GAAG,KAAK;MACpC,CAAC;MACDK,OAAO,EAAIK,OAAO,IAAM;QACvB3B,aAAa,CAAEkB,GAAI,CAAC;QACpBI,OAAO,CAAEK,OAAQ,CAAC;QAClBZ,mBAAmB,CAACE,OAAO,GAAG,KAAK;MACpC;IACD,CAAE,CAAC;EACJ,CAAC,EAAE,CAAED,WAAW,CAAG,CAAC;AACrB;AAEA,OAAO,SAASY,8BAA8BA,CAAA,EAAG;EAChD,MAAMC,QAAQ,GAAGzB,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAClD,OAAO,CAAEyB,QAAQ,GACd;IACAC,YAAY,EAAE;MACbC,SAAS,EAAE,YAAY;MACvB;MACAC,MAAM,EAAE;IACT;EACA,CAAC,GACD,CAAC,CAAC;AACN","ignoreList":[]}
|
|
@@ -25,21 +25,9 @@ import VideoCommonSettings from './edit-common-settings';
|
|
|
25
25
|
import TracksEditor from './tracks-editor';
|
|
26
26
|
import Tracks from './tracks';
|
|
27
27
|
import { Caption } from '../utils/caption';
|
|
28
|
-
|
|
29
|
-
// Much of this description is duplicated from MediaPlaceholder.
|
|
30
28
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
31
29
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
32
30
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
33
|
-
const placeholder = content => {
|
|
34
|
-
return /*#__PURE__*/_jsx(Placeholder, {
|
|
35
|
-
className: "block-editor-media-placeholder",
|
|
36
|
-
withIllustration: true,
|
|
37
|
-
icon: icon,
|
|
38
|
-
label: __('Video'),
|
|
39
|
-
instructions: __('Upload a video file, pick one from your media library, or add one with a URL.'),
|
|
40
|
-
children: content
|
|
41
|
-
});
|
|
42
|
-
};
|
|
43
31
|
const ALLOWED_MEDIA_TYPES = ['video'];
|
|
44
32
|
const VIDEO_POSTER_ALLOWED_MEDIA_TYPES = ['image'];
|
|
45
33
|
function VideoEdit({
|
|
@@ -133,6 +121,18 @@ function VideoEdit({
|
|
|
133
121
|
type: 'snackbar'
|
|
134
122
|
});
|
|
135
123
|
}
|
|
124
|
+
|
|
125
|
+
// Much of this description is duplicated from MediaPlaceholder.
|
|
126
|
+
const placeholder = content => {
|
|
127
|
+
return /*#__PURE__*/_jsx(Placeholder, {
|
|
128
|
+
className: "block-editor-media-placeholder",
|
|
129
|
+
withIllustration: !isSingleSelected,
|
|
130
|
+
icon: icon,
|
|
131
|
+
label: __('Video'),
|
|
132
|
+
instructions: __('Upload a video file, pick one from your media library, or add one with a URL.'),
|
|
133
|
+
children: content
|
|
134
|
+
});
|
|
135
|
+
};
|
|
136
136
|
const classes = clsx(className, {
|
|
137
137
|
'is-transient': !!temporaryURL
|
|
138
138
|
});
|
|
@@ -190,7 +190,8 @@ function VideoEdit({
|
|
|
190
190
|
accept: "video/*",
|
|
191
191
|
onSelect: onSelectVideo,
|
|
192
192
|
onSelectURL: onSelectURL,
|
|
193
|
-
onError: onUploadError
|
|
193
|
+
onError: onUploadError,
|
|
194
|
+
onReset: () => onSelectVideo(undefined)
|
|
194
195
|
})
|
|
195
196
|
})]
|
|
196
197
|
}), /*#__PURE__*/_jsx(InspectorControls, {
|
|
@@ -210,7 +211,10 @@ function VideoEdit({
|
|
|
210
211
|
allowedTypes: VIDEO_POSTER_ALLOWED_MEDIA_TYPES,
|
|
211
212
|
render: ({
|
|
212
213
|
open
|
|
213
|
-
}) => /*#__PURE__*/_jsx(Button
|
|
214
|
+
}) => /*#__PURE__*/_jsx(Button
|
|
215
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
216
|
+
, {
|
|
217
|
+
__next40pxDefaultSize: false,
|
|
214
218
|
variant: "primary",
|
|
215
219
|
onClick: open,
|
|
216
220
|
ref: posterImageButton,
|
|
@@ -222,7 +226,10 @@ function VideoEdit({
|
|
|
222
226
|
hidden: true,
|
|
223
227
|
children: poster ? sprintf( /* translators: %s: poster image URL. */
|
|
224
228
|
__('The current poster image url is %s'), poster) : __('There is no poster image currently selected')
|
|
225
|
-
}), !!poster && /*#__PURE__*/_jsx(Button
|
|
229
|
+
}), !!poster && /*#__PURE__*/_jsx(Button
|
|
230
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
231
|
+
, {
|
|
232
|
+
__next40pxDefaultSize: false,
|
|
226
233
|
onClick: onRemovePoster,
|
|
227
234
|
variant: "tertiary",
|
|
228
235
|
children: __('Remove')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","isBlobURL","BaseControl","Button","Disabled","PanelBody","Spinner","Placeholder","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaUpload","MediaUploadCheck","MediaReplaceFlow","useBlockProps","useRef","useEffect","useState","__","sprintf","useInstanceId","useDispatch","video","icon","store","noticesStore","createUpgradedEmbedBlock","useUploadMediaFromBlobURL","VideoCommonSettings","TracksEditor","Tracks","Caption","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","placeholder","content","className","withIllustration","label","instructions","children","ALLOWED_MEDIA_TYPES","VIDEO_POSTER_ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","isSingleSelected","attributes","setAttributes","insertBlocksAfter","onReplace","instanceId","videoPlayer","posterImageButton","id","controls","poster","src","tracks","temporaryURL","setTemporaryURL","blob","url","allowedTypes","onChange","onSelectVideo","onError","onUploadError","current","load","media","undefined","caption","image","onSelectURL","newSrc","embedBlock","createErrorNotice","message","type","classes","blockProps","onSelect","accept","value","onSelectPoster","onRemovePoster","focus","videoPosterDescription","newTracks","group","mediaId","mediaURL","title","VisualLabel","render","open","variant","onClick","ref","hidden","isDisabled","showToolbarButton"],"sources":["@wordpress/block-library/src/video/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tBaseControl,\n\tButton,\n\tDisabled,\n\tPanelBody,\n\tSpinner,\n\tPlaceholder,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { video as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\nimport { Caption } from '../utils/caption';\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\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: isSingleSelected,\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, controls, poster, src, tracks } = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectVideo,\n\t\tonError: onUploadError,\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\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\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\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\tblob: undefined,\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\tsetTemporaryURL();\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( {\n\t\t\t\tblob: undefined,\n\t\t\t\tsrc: newSrc,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\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 = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src && ! temporaryURL ) {\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{ isSingleSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<TracksEditor\n\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\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<div 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</div>\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={ ! isSingleSelected }>\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 || temporaryURL }\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{ !! temporaryURL && <Spinner /> }\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Video caption text' ) }\n\t\t\t\t\tshowToolbarButton={ isSingleSelected }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default VideoEdit;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","isBlobURL","BaseControl","Button","Disabled","PanelBody","Spinner","Placeholder","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaUpload","MediaUploadCheck","MediaReplaceFlow","useBlockProps","useRef","useEffect","useState","__","sprintf","useInstanceId","useDispatch","video","icon","store","noticesStore","createUpgradedEmbedBlock","useUploadMediaFromBlobURL","VideoCommonSettings","TracksEditor","Tracks","Caption","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","VIDEO_POSTER_ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","isSingleSelected","attributes","className","setAttributes","insertBlocksAfter","onReplace","instanceId","videoPlayer","posterImageButton","id","controls","poster","src","tracks","temporaryURL","setTemporaryURL","blob","url","allowedTypes","onChange","onSelectVideo","onError","onUploadError","current","load","media","undefined","caption","image","onSelectURL","newSrc","embedBlock","createErrorNotice","message","type","placeholder","content","withIllustration","label","instructions","children","classes","blockProps","onSelect","accept","value","onSelectPoster","onRemovePoster","focus","videoPosterDescription","newTracks","group","mediaId","mediaURL","onReset","title","VisualLabel","render","open","__next40pxDefaultSize","variant","onClick","ref","hidden","isDisabled","showToolbarButton"],"sources":["@wordpress/block-library/src/video/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tBaseControl,\n\tButton,\n\tDisabled,\n\tPanelBody,\n\tSpinner,\n\tPlaceholder,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { video as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\nimport { Caption } from '../utils/caption';\n\nconst ALLOWED_MEDIA_TYPES = [ 'video' ];\nconst VIDEO_POSTER_ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction VideoEdit( {\n\tisSelected: isSingleSelected,\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, controls, poster, src, tracks } = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectVideo,\n\t\tonError: onUploadError,\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\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\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\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\tblob: undefined,\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\tsetTemporaryURL();\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( {\n\t\t\t\tblob: undefined,\n\t\t\t\tsrc: newSrc,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\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\t// Much of this description is duplicated from MediaPlaceholder.\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\t\twithIllustration={ ! isSingleSelected }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ __( 'Video' ) }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Upload a video file, pick one from your media library, or add one with a URL.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src && ! temporaryURL ) {\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{ isSingleSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<TracksEditor\n\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\t\tonReset={ () => onSelectVideo( undefined ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\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<div 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\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\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\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\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</div>\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 Disable the video tag if the block is not selected\n so the user clicking on it won't play the\n video when the controls are enabled.\n */ }\n\t\t\t\t<Disabled isDisabled={ ! isSingleSelected }>\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 || temporaryURL }\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{ !! temporaryURL && <Spinner /> }\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Video caption text' ) }\n\t\t\t\t\tshowToolbarButton={ isSingleSelected }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default VideoEdit;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -45,7 +45,10 @@ function TrackList({
|
|
|
45
45
|
className: "block-library-video-tracks-editor__track-list-track",
|
|
46
46
|
children: [/*#__PURE__*/_jsxs("span", {
|
|
47
47
|
children: [track.label, " "]
|
|
48
|
-
}), /*#__PURE__*/_jsx(Button
|
|
48
|
+
}), /*#__PURE__*/_jsx(Button
|
|
49
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
50
|
+
, {
|
|
51
|
+
__next40pxDefaultSize: false,
|
|
49
52
|
variant: "tertiary",
|
|
50
53
|
onClick: () => onEditPress(index),
|
|
51
54
|
"aria-label": sprintf( /* translators: %s: Label of the video text track e.g: "French subtitles" */
|
|
@@ -129,7 +132,10 @@ function SingleTrackEditor({
|
|
|
129
132
|
}
|
|
130
133
|
}), /*#__PURE__*/_jsxs(HStack, {
|
|
131
134
|
className: "block-library-video-tracks-editor__single-track-editor-buttons-container",
|
|
132
|
-
children: [/*#__PURE__*/_jsx(Button
|
|
135
|
+
children: [/*#__PURE__*/_jsx(Button
|
|
136
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
137
|
+
, {
|
|
138
|
+
__next40pxDefaultSize: false,
|
|
133
139
|
variant: "secondary",
|
|
134
140
|
onClick: () => {
|
|
135
141
|
const changes = {};
|
|
@@ -155,7 +161,10 @@ function SingleTrackEditor({
|
|
|
155
161
|
onClose();
|
|
156
162
|
},
|
|
157
163
|
children: __('Close')
|
|
158
|
-
}), /*#__PURE__*/_jsx(Button
|
|
164
|
+
}), /*#__PURE__*/_jsx(Button
|
|
165
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
166
|
+
, {
|
|
167
|
+
__next40pxDefaultSize: false,
|
|
159
168
|
isDestructive: true,
|
|
160
169
|
variant: "link",
|
|
161
170
|
onClick: onRemove,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","sprintf","NavigableMenu","MenuItem","FormFileUpload","MenuGroup","ToolbarGroup","ToolbarButton","Dropdown","Button","TextControl","SelectControl","__experimentalGrid","Grid","__experimentalHStack","HStack","__experimentalVStack","VStack","MediaUpload","MediaUploadCheck","store","blockEditorStore","upload","media","useSelect","useState","getFilename","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","value","TrackList","tracks","onEditPress","content","length","className","children","map","track","index","variant","onClick","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","spacing","columns","gap","__next40pxDefaultSize","__nextHasNoMarginBottom","autoFocus","newLabel","help","newSrcLang","options","newKind","changes","hasChanges","undefined","isDestructive","TracksEditor","mediaUpload","select","getSettings","trackBeingEdited","setTrackBeingEdited","contentClassName","renderToggle","isOpen","onToggle","showTooltip","renderContent","newTrack","newTracks","filter","_track","onSelect","url","trackIndex","allowedTypes","render","open","icon","event","files","target","filesList","onFileChange","accept","openFileDialog"],"sources":["@wordpress/block-library/src/video/tracks-editor.js"],"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\t__experimentalGrid as Grid,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\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<HStack\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</HStack>\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<VStack\n\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor\"\n\t\t\t\tspacing=\"4\"\n\t\t\t>\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<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\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\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\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</Grid>\n\t\t\t\t<VStack spacing=\"8\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\t\tvalue={ kind }\n\t\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\t\tonChange={ ( newKind ) => {\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\tkind: newKind,\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<HStack className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t\t...changes,\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\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Close' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tisDestructive\n\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\tonClick={ onRemove }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Remove track' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</VStack>\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"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__","sprintf","NavigableMenu","MenuItem","FormFileUpload","MenuGroup","ToolbarGroup","ToolbarButton","Dropdown","Button","TextControl","SelectControl","__experimentalGrid","Grid","__experimentalHStack","HStack","__experimentalVStack","VStack","MediaUpload","MediaUploadCheck","store","blockEditorStore","upload","media","useSelect","useState","getFilename","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","value","TrackList","tracks","onEditPress","content","length","className","children","map","track","index","__next40pxDefaultSize","variant","onClick","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","spacing","columns","gap","__nextHasNoMarginBottom","autoFocus","newLabel","help","newSrcLang","options","newKind","changes","hasChanges","undefined","isDestructive","TracksEditor","mediaUpload","select","getSettings","trackBeingEdited","setTrackBeingEdited","contentClassName","renderToggle","isOpen","onToggle","showTooltip","renderContent","newTrack","newTracks","filter","_track","onSelect","url","trackIndex","allowedTypes","render","open","icon","event","files","target","filesList","onFileChange","accept","openFileDialog"],"sources":["@wordpress/block-library/src/video/tracks-editor.js"],"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\t__experimentalGrid as Grid,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\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<HStack\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\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t__next40pxDefaultSize={ false }\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</HStack>\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<VStack\n\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor\"\n\t\t\t\tspacing=\"4\"\n\t\t\t>\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<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\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\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\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</Grid>\n\t\t\t\t<VStack spacing=\"8\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\t\tvalue={ kind }\n\t\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\t\tonChange={ ( newKind ) => {\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\tkind: newKind,\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<HStack className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t\t...changes,\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\tonClose();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Close' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\tisDestructive\n\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\tonClick={ onRemove }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Remove track' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</VStack>\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"],"mappings":"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","ignoreList":[]}
|
|
@@ -124,9 +124,6 @@
|
|
|
124
124
|
.is-content-justification-center) .wp-block[data-align=center] .wp-block-button {
|
|
125
125
|
margin-bottom: 0;
|
|
126
126
|
}
|
|
127
|
-
.editor-styles-wrapper .wp-block-buttons.has-custom-font-size .wp-block-button__link {
|
|
128
|
-
font-size: inherit;
|
|
129
|
-
}
|
|
130
127
|
|
|
131
128
|
.wp-block[data-align=center] > .wp-block-buttons {
|
|
132
129
|
align-items: center;
|
|
@@ -124,9 +124,6 @@
|
|
|
124
124
|
.is-content-justification-center) .wp-block[data-align=center] .wp-block-button {
|
|
125
125
|
margin-bottom: 0;
|
|
126
126
|
}
|
|
127
|
-
.editor-styles-wrapper .wp-block-buttons.has-custom-font-size .wp-block-button__link {
|
|
128
|
-
font-size: inherit;
|
|
129
|
-
}
|
|
130
127
|
|
|
131
128
|
.wp-block[data-align=center] > .wp-block-buttons {
|
|
132
129
|
align-items: center;
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a hex value into the rgb equivalent.
|
|
3
|
+
*
|
|
4
|
+
* @param {string} hex - the hexadecimal value to convert
|
|
5
|
+
* @return {string} comma separated rgb values
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Colors
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Breakpoints & Media Queries
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* SCSS Variables.
|
|
15
|
+
*
|
|
16
|
+
* Please use variables from this sheet to ensure consistency across the UI.
|
|
17
|
+
* Don't add to this sheet unless you're pretty sure the value will be reused in many places.
|
|
18
|
+
* For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* Converts a hex value into the rgb equivalent.
|
|
22
|
+
*
|
|
23
|
+
* @param {string} hex - the hexadecimal value to convert
|
|
24
|
+
* @return {string} comma separated rgb values
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Colors
|
|
28
|
+
*/
|
|
29
|
+
/**
|
|
30
|
+
* Fonts & basic variables.
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* Grid System.
|
|
34
|
+
* https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
|
|
35
|
+
*/
|
|
36
|
+
/**
|
|
37
|
+
* Radius scale.
|
|
38
|
+
*/
|
|
39
|
+
/**
|
|
40
|
+
* Elevation scale.
|
|
41
|
+
*/
|
|
42
|
+
/**
|
|
43
|
+
* Dimensions.
|
|
44
|
+
*/
|
|
45
|
+
/**
|
|
46
|
+
* Editor widths.
|
|
47
|
+
*/
|
|
48
|
+
/**
|
|
49
|
+
* Block & Editor UI.
|
|
50
|
+
*/
|
|
51
|
+
/**
|
|
52
|
+
* Block paddings.
|
|
53
|
+
*/
|
|
54
|
+
/**
|
|
55
|
+
* React Native specific.
|
|
56
|
+
* These variables do not appear to be used anywhere else.
|
|
57
|
+
*/
|
|
58
|
+
/**
|
|
59
|
+
* Converts a hex value into the rgb equivalent.
|
|
60
|
+
*
|
|
61
|
+
* @param {string} hex - the hexadecimal value to convert
|
|
62
|
+
* @return {string} comma separated rgb values
|
|
63
|
+
*/
|
|
64
|
+
/**
|
|
65
|
+
* Long content fade mixin
|
|
66
|
+
*
|
|
67
|
+
* Creates a fading overlay to signify that the content is longer
|
|
68
|
+
* than the space allows.
|
|
69
|
+
*/
|
|
70
|
+
/**
|
|
71
|
+
* Breakpoint mixins
|
|
72
|
+
*/
|
|
73
|
+
/**
|
|
74
|
+
* Focus styles.
|
|
75
|
+
*/
|
|
76
|
+
/**
|
|
77
|
+
* Applies editor left position to the selector passed as argument
|
|
78
|
+
*/
|
|
79
|
+
/**
|
|
80
|
+
* Styles that are reused verbatim in a few places
|
|
81
|
+
*/
|
|
82
|
+
/**
|
|
83
|
+
* Allows users to opt-out of animations via OS-level preferences.
|
|
84
|
+
*/
|
|
85
|
+
/**
|
|
86
|
+
* Reset default styles for JavaScript UI based pages.
|
|
87
|
+
* This is a WP-admin agnostic reset
|
|
88
|
+
*/
|
|
89
|
+
/**
|
|
90
|
+
* Reset the WP Admin page styles for Gutenberg-like pages.
|
|
91
|
+
*/
|
|
92
|
+
.wp-block-comment-edit-link {
|
|
93
|
+
box-sizing: border-box;
|
|
94
|
+
}
|