@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","_x","SelectControl","__experimentalUnitControl","UnitControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalUseCustomUnits","useCustomUnits","__experimentalToolsPanelItem","ToolsPanelItem","useSettings","store","blockEditorStore","useSelect","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SCALE_OPTIONS","children","value","label","DEFAULT_SCALE","DEFAULT_SIZE","scaleHelp","cover","contain","fill","DimensionControls","clientId","attributes","aspectRatio","width","height","scale","sizeSlug","setAttributes","media","availableUnits","defaultRatios","themeRatios","showDefaultRatios","units","imageSizes","select","getSettings","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","onDimensionChange","dimension","nextValue","parsedValue","parseFloat","isNaN","scaleLabel","showScaleControl","themeOptions","ratio","defaultOptions","aspectRatioOptions","hasValue","onDeselect","undefined","resetAllFilter","isShownByDefault","panelId","__next40pxDefaultSize","__nextHasNoMarginBottom","options","onChange","nextAspectRatio","className","labelPosition","min","nextHeight","nextWidth","help","isBlock","length","nextSizeSlug"],"sources":["@wordpress/block-library/src/post-featured-image/dimension-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tSelectControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tuseSettings,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nconst SCALE_OPTIONS = (\n\t<>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"cover\"\n\t\t\tlabel={ _x( 'Cover', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"contain\"\n\t\t\tlabel={ _x(\n\t\t\t\t'Contain',\n\t\t\t\t'Scale option for Image dimension control'\n\t\t\t) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"fill\"\n\t\t\tlabel={ _x( 'Fill', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t</>\n);\n\nconst DEFAULT_SCALE = 'cover';\nconst DEFAULT_SIZE = 'full';\n\nconst scaleHelp = {\n\tcover: __(\n\t\t'Image is scaled and cropped to fill the entire space without being distorted.'\n\t),\n\tcontain: __(\n\t\t'Image is scaled to fill the space without clipping nor distorting.'\n\t),\n\tfill: __(\n\t\t'Image will be stretched and distorted to completely fill the space.'\n\t),\n};\n\nconst DimensionControls = ( {\n\tclientId,\n\tattributes: { aspectRatio, width, height, scale, sizeSlug },\n\tsetAttributes,\n\tmedia,\n} ) => {\n\tconst [ availableUnits, defaultRatios, themeRatios, showDefaultRatios ] =\n\t\tuseSettings(\n\t\t\t'spacing.units',\n\t\t\t'dimensions.aspectRatios.default',\n\t\t\t'dimensions.aspectRatios.theme',\n\t\t\t'dimensions.defaultAspectRatios'\n\t\t);\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', '%', 'vw', 'em', 'rem' ],\n\t} );\n\tconst imageSizes = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().imageSizes,\n\t\t[]\n\t);\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => {\n\t\t\treturn media?.media_details?.sizes?.[ slug ]?.source_url;\n\t\t} )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\n\tconst onDimensionChange = ( dimension, nextValue ) => {\n\t\tconst parsedValue = parseFloat( nextValue );\n\t\t/**\n\t\t * If we have no value set and we change the unit,\n\t\t * we don't want to set the attribute, as it would\n\t\t * end up having the unit as value without any number.\n\t\t */\n\t\tif ( isNaN( parsedValue ) && nextValue ) {\n\t\t\treturn;\n\t\t}\n\t\tsetAttributes( {\n\t\t\t[ dimension ]: parsedValue < 0 ? '0' : nextValue,\n\t\t} );\n\t};\n\tconst scaleLabel = _x( 'Scale', 'Image scaling options' );\n\n\tconst showScaleControl =\n\t\theight || ( aspectRatio && aspectRatio !== 'auto' );\n\n\tconst themeOptions = themeRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst defaultOptions = defaultRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst aspectRatioOptions = [\n\t\t{\n\t\t\tlabel: _x(\n\t\t\t\t'Original',\n\t\t\t\t'Aspect ratio option for dimensions control'\n\t\t\t),\n\t\t\tvalue: 'auto',\n\t\t},\n\t\t...( showDefaultRatios ? defaultOptions : [] ),\n\t\t...( themeOptions ? themeOptions : [] ),\n\t];\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\thasValue={ () => !! aspectRatio }\n\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { aspectRatio: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\taspectRatio: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<SelectControl\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\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\t\tvalue={ aspectRatio }\n\t\t\t\t\toptions={ aspectRatioOptions }\n\t\t\t\t\tonChange={ ( nextAspectRatio ) =>\n\t\t\t\t\t\tsetAttributes( { aspectRatio: nextAspectRatio } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! height }\n\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { height: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\theight: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ height || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextHeight ) =>\n\t\t\t\t\t\tonDimensionChange( 'height', nextHeight )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! width }\n\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { width: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\twidth: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextWidth ) =>\n\t\t\t\t\t\tonDimensionChange( 'width', nextWidth )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t{ showScaleControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! scale && scale !== DEFAULT_SCALE }\n\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\t\tvalue={ scale }\n\t\t\t\t\t\thelp={ scaleHelp[ scale ] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tscale: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t{ SCALE_OPTIONS }\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! sizeSlug }\n\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( { sizeSlug: undefined } )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tsizeSlug: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ false }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<SelectControl\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\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\tvalue={ sizeSlug || DEFAULT_SIZE }\n\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\tonChange={ ( nextSizeSlug ) =>\n\t\t\t\t\t\t\tsetAttributes( { sizeSlug: nextSizeSlug } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __( 'Select the size of the source image.' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default DimensionControls;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__","_x","SelectControl","__experimentalUnitControl","UnitControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalUseCustomUnits","useCustomUnits","__experimentalToolsPanelItem","ToolsPanelItem","useSettings","store","blockEditorStore","useSelect","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SCALE_OPTIONS","children","value","label","DEFAULT_SCALE","DEFAULT_SIZE","scaleHelp","cover","contain","fill","DimensionControls","clientId","attributes","aspectRatio","width","height","scale","sizeSlug","setAttributes","media","availableUnits","defaultRatios","themeRatios","showDefaultRatios","units","imageSizes","select","getSettings","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","onDimensionChange","dimension","nextValue","parsedValue","parseFloat","isNaN","scaleLabel","showScaleControl","themeOptions","ratio","defaultOptions","aspectRatioOptions","hasValue","onDeselect","undefined","resetAllFilter","isShownByDefault","panelId","__next40pxDefaultSize","__nextHasNoMarginBottom","options","onChange","nextAspectRatio","className","labelPosition","min","nextHeight","nextWidth","help","isBlock","length","nextSizeSlug"],"sources":["@wordpress/block-library/src/post-featured-image/dimension-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tSelectControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tuseSettings,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nconst SCALE_OPTIONS = (\n\t<>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"cover\"\n\t\t\tlabel={ _x( 'Cover', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"contain\"\n\t\t\tlabel={ _x(\n\t\t\t\t'Contain',\n\t\t\t\t'Scale option for Image dimension control'\n\t\t\t) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"fill\"\n\t\t\tlabel={ _x( 'Fill', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t</>\n);\n\nconst DEFAULT_SCALE = 'cover';\nconst DEFAULT_SIZE = 'full';\n\nconst scaleHelp = {\n\tcover: __(\n\t\t'Image is scaled and cropped to fill the entire space without being distorted.'\n\t),\n\tcontain: __(\n\t\t'Image is scaled to fill the space without clipping nor distorting.'\n\t),\n\tfill: __(\n\t\t'Image will be stretched and distorted to completely fill the space.'\n\t),\n};\n\nconst DimensionControls = ( {\n\tclientId,\n\tattributes: { aspectRatio, width, height, scale, sizeSlug },\n\tsetAttributes,\n\tmedia,\n} ) => {\n\tconst [ availableUnits, defaultRatios, themeRatios, showDefaultRatios ] =\n\t\tuseSettings(\n\t\t\t'spacing.units',\n\t\t\t'dimensions.aspectRatios.default',\n\t\t\t'dimensions.aspectRatios.theme',\n\t\t\t'dimensions.defaultAspectRatios'\n\t\t);\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', '%', 'vw', 'em', 'rem' ],\n\t} );\n\tconst imageSizes = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().imageSizes,\n\t\t[]\n\t);\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => {\n\t\t\treturn media?.media_details?.sizes?.[ slug ]?.source_url;\n\t\t} )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\n\tconst onDimensionChange = ( dimension, nextValue ) => {\n\t\tconst parsedValue = parseFloat( nextValue );\n\t\t/**\n\t\t * If we have no value set and we change the unit,\n\t\t * we don't want to set the attribute, as it would\n\t\t * end up having the unit as value without any number.\n\t\t */\n\t\tif ( isNaN( parsedValue ) && nextValue ) {\n\t\t\treturn;\n\t\t}\n\t\tsetAttributes( {\n\t\t\t[ dimension ]: parsedValue < 0 ? '0' : nextValue,\n\t\t} );\n\t};\n\tconst scaleLabel = _x( 'Scale', 'Image scaling options' );\n\n\tconst showScaleControl =\n\t\theight || ( aspectRatio && aspectRatio !== 'auto' );\n\n\tconst themeOptions = themeRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst defaultOptions = defaultRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst aspectRatioOptions = [\n\t\t{\n\t\t\tlabel: _x(\n\t\t\t\t'Original',\n\t\t\t\t'Aspect ratio option for dimensions control'\n\t\t\t),\n\t\t\tvalue: 'auto',\n\t\t},\n\t\t...( showDefaultRatios ? defaultOptions : [] ),\n\t\t...( themeOptions ? themeOptions : [] ),\n\t];\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\thasValue={ () => !! aspectRatio }\n\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { aspectRatio: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\taspectRatio: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\t\tvalue={ aspectRatio }\n\t\t\t\t\toptions={ aspectRatioOptions }\n\t\t\t\t\tonChange={ ( nextAspectRatio ) =>\n\t\t\t\t\t\tsetAttributes( { aspectRatio: nextAspectRatio } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! height }\n\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { height: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\theight: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ height || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextHeight ) =>\n\t\t\t\t\t\tonDimensionChange( 'height', nextHeight )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! width }\n\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { width: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\twidth: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextWidth ) =>\n\t\t\t\t\t\tonDimensionChange( 'width', nextWidth )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t{ showScaleControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! scale && scale !== DEFAULT_SCALE }\n\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\t\tvalue={ scale }\n\t\t\t\t\t\thelp={ scaleHelp[ scale ] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tscale: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t{ SCALE_OPTIONS }\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! sizeSlug }\n\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( { sizeSlug: undefined } )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tsizeSlug: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ false }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\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\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\tvalue={ sizeSlug || DEFAULT_SIZE }\n\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\tonChange={ ( nextSizeSlug ) =>\n\t\t\t\t\t\t\tsetAttributes( { sizeSlug: nextSizeSlug } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __( 'Select the size of the source image.' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default DimensionControls;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,7 +9,7 @@ import clsx from 'clsx';
|
|
|
9
9
|
import { isBlobURL } from '@wordpress/blob';
|
|
10
10
|
import { useEntityProp, store as coreStore } from '@wordpress/core-data';
|
|
11
11
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
12
|
-
import {
|
|
12
|
+
import { ToggleControl, PanelBody, Placeholder, Button, Spinner, TextControl } from '@wordpress/components';
|
|
13
13
|
import { InspectorControls, BlockControls, MediaPlaceholder, MediaReplaceFlow, useBlockProps, __experimentalUseBorderProps as useBorderProps, __experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles, useBlockEditingMode } from '@wordpress/block-editor';
|
|
14
14
|
import { useMemo, useEffect, useState } from '@wordpress/element';
|
|
15
15
|
import { __, sprintf } from '@wordpress/i18n';
|
|
@@ -244,7 +244,10 @@ export default function PostFeaturedImageEdit({
|
|
|
244
244
|
mediaLibraryButton: ({
|
|
245
245
|
open
|
|
246
246
|
}) => {
|
|
247
|
-
return /*#__PURE__*/_jsx(Button
|
|
247
|
+
return /*#__PURE__*/_jsx(Button
|
|
248
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
249
|
+
, {
|
|
250
|
+
__next40pxDefaultSize: false,
|
|
248
251
|
icon: upload,
|
|
249
252
|
variant: "primary",
|
|
250
253
|
label: label,
|
|
@@ -286,10 +289,7 @@ export default function PostFeaturedImageEdit({
|
|
|
286
289
|
accept: "image/*",
|
|
287
290
|
onSelect: onSelectImage,
|
|
288
291
|
onError: onUploadError,
|
|
289
|
-
|
|
290
|
-
onClick: () => setFeaturedImage(0),
|
|
291
|
-
children: __('Reset')
|
|
292
|
-
})
|
|
292
|
+
onReset: () => setFeaturedImage(0)
|
|
293
293
|
})
|
|
294
294
|
}), /*#__PURE__*/_jsxs("figure", {
|
|
295
295
|
...blockProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","isBlobURL","useEntityProp","store","coreStore","useSelect","useDispatch","MenuItem","ToggleControl","PanelBody","Placeholder","Button","Spinner","TextControl","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","useMemo","useEffect","useState","__","sprintf","upload","noticesStore","DimensionControls","OverlayControls","Overlay","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","getMediaSourceUrlBySizeSlug","media","slug","media_details","sizes","source_url","disabledClickProps","onClick","event","preventDefault","PostFeaturedImageEdit","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","aspectRatio","height","width","scale","sizeSlug","rel","linkTarget","useFirstImageFromPost","temporaryURL","setTemporaryURL","storedFeaturedImage","setFeaturedImage","postContent","featuredImage","imageOpener","exec","imageId","groups","attrs","JSON","parse","id","postPermalink","select","getMedia","getPostType","getEditedEntityRecord","link","mediaUrl","blockProps","style","className","borderProps","shadowProps","blockEditingMode","placeholder","content","withIllustration","children","onSelectImage","value","url","createErrorNotice","onUploadError","message","type","controls","group","title","__nextHasNoMarginBottom","label","labels","singular_name","onChange","checked","__next40pxDefaultSize","newRel","image","href","target","imageStyles","objectFit","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","icon","variant","showTooltip","tooltipPosition","src","alt","alt_text","mediaId","mediaURL"],"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tMenuItem,\n\tToggleControl,\n\tPanelBody,\n\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\nimport OverlayControls from './overlay-controls';\nimport Overlay from './overlay';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction getMediaSourceUrlBySizeSlug( media, slug ) {\n\treturn (\n\t\tmedia?.media_details?.sizes?.[ slug ]?.source_url || media?.source_url\n\t);\n}\n\nconst disabledClickProps = {\n\tonClick: ( event ) => event.preventDefault(),\n\t'aria-disabled': true,\n};\n\nexport default function PostFeaturedImageEdit( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst {\n\t\tisLink,\n\t\taspectRatio,\n\t\theight,\n\t\twidth,\n\t\tscale,\n\t\tsizeSlug,\n\t\trel,\n\t\tlinkTarget,\n\t\tuseFirstImageFromPost,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst [ storedFeaturedImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\t// Fallback to post content if no featured image is set.\n\t// This is needed for the \"Use first image from post\" option.\n\tconst [ postContent ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst featuredImage = useMemo( () => {\n\t\tif ( storedFeaturedImage ) {\n\t\t\treturn storedFeaturedImage;\n\t\t}\n\n\t\tif ( ! useFirstImageFromPost ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst imageOpener =\n\t\t\t/<!--\\s+wp:(?:core\\/)?image\\s+(?<attrs>{(?:(?:[^}]+|}+(?=})|(?!}\\s+\\/?-->).)*)?}\\s+)?-->/.exec(\n\t\t\t\tpostContent\n\t\t\t);\n\t\tconst imageId =\n\t\t\timageOpener?.groups?.attrs &&\n\t\t\tJSON.parse( imageOpener.groups.attrs )?.id;\n\t\treturn imageId;\n\t}, [ storedFeaturedImage, useFirstImageFromPost, postContent ] );\n\n\tconst { media, postType, postPermalink } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType, getEditedEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t\tpostPermalink: getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\tpostId\n\t\t\t\t)?.link,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug, postId ]\n\t);\n\n\tconst mediaUrl = getMediaSourceUrlBySizeSlug( media, sizeSlug );\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height, aspectRatio },\n\t\tclassName: clsx( {\n\t\t\t'is-transient': temporaryURL,\n\t\t} ),\n\t} );\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'block-editor-media-placeholder',\n\t\t\t\t\tborderProps.className\n\t\t\t\t) }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\theight: !! aspectRatio && '100%',\n\t\t\t\t\twidth: !! aspectRatio && '100%',\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\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 onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\n\t\tif ( value?.url && isBlobURL( value.url ) ) {\n\t\t\tsetTemporaryURL( value.url );\n\t\t}\n\t};\n\n\t// Reset temporary url when media is available.\n\tuseEffect( () => {\n\t\tif ( mediaUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ mediaUrl, temporaryURL ] );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst controls = blockEditingMode === 'default' && (\n\t\t<>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t<OverlayControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<DimensionControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\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\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Page\".\n\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\tvalue={ rel }\n\t\t\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\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</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tlet image;\n\n\t/**\n\t * A Post Featured Image block should not have image replacement\n\t * or upload options in the following cases:\n\t * - Is placed in a Query Loop. This is a conscious decision to\n\t * prevent content editing of different posts in Query Loop, and\n\t * this could change in the future.\n\t * - Is in a context where it does not have a postId (for example\n\t * in a template or template part).\n\t */\n\tif ( ! featuredImage && ( isDescendentOfQueryLoop || ! postId ) ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t\t<a\n\t\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ placeholder() }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tplaceholder()\n\t\t\t\t\t) }\n\t\t\t\t\t<Overlay\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\tconst imageStyles = {\n\t\t...borderProps.style,\n\t\t...shadowProps.style,\n\t\theight: aspectRatio ? '100%' : height,\n\t\twidth: !! aspectRatio && '100%',\n\t\tobjectFit: !! ( height || aspectRatio ) && scale,\n\t};\n\n\t/**\n\t * When the post featured image block is placed in a context where:\n\t * - It has a postId (for example in a single post)\n\t * - It is not inside a query loop\n\t * - It has no image assigned yet\n\t * Then display the placeholder with the image upload option.\n\t */\n\tif ( ! featuredImage && ! temporaryURL ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\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/>\n\t\t);\n\t} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage =\n\t\t\t! media && ! temporaryURL ? (\n\t\t\t\tplaceholder()\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<img\n\t\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\t\tsrc={ temporaryURL || mediaUrl }\n\t\t\t\t\t\talt={\n\t\t\t\t\t\t\tmedia && media?.alt_text\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t/>\n\t\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t\t</>\n\t\t\t);\n\t}\n\n\t/**\n\t * When the post featured image block:\n\t * - Has an image assigned\n\t * - Is not inside a query loop\n\t * Then display the image and the image replacement option.\n\t */\n\treturn (\n\t\t<>\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t>\n\t\t\t\t\t\t<MenuItem onClick={ () => setFeaturedImage( 0 ) }>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t</MediaReplaceFlow>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /* If the featured image is linked, wrap in an <a /> tag to trigger any inherited link element styles */ }\n\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t<Overlay\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","isBlobURL","useEntityProp","store","coreStore","useSelect","useDispatch","ToggleControl","PanelBody","Placeholder","Button","Spinner","TextControl","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","useMemo","useEffect","useState","__","sprintf","upload","noticesStore","DimensionControls","OverlayControls","Overlay","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","getMediaSourceUrlBySizeSlug","media","slug","media_details","sizes","source_url","disabledClickProps","onClick","event","preventDefault","PostFeaturedImageEdit","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","aspectRatio","height","width","scale","sizeSlug","rel","linkTarget","useFirstImageFromPost","temporaryURL","setTemporaryURL","storedFeaturedImage","setFeaturedImage","postContent","featuredImage","imageOpener","exec","imageId","groups","attrs","JSON","parse","id","postPermalink","select","getMedia","getPostType","getEditedEntityRecord","link","mediaUrl","blockProps","style","className","borderProps","shadowProps","blockEditingMode","placeholder","content","withIllustration","children","onSelectImage","value","url","createErrorNotice","onUploadError","message","type","controls","group","title","__nextHasNoMarginBottom","label","labels","singular_name","onChange","checked","__next40pxDefaultSize","newRel","image","href","target","imageStyles","objectFit","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","icon","variant","showTooltip","tooltipPosition","src","alt","alt_text","mediaId","mediaURL","onReset"],"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tToggleControl,\n\tPanelBody,\n\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\nimport OverlayControls from './overlay-controls';\nimport Overlay from './overlay';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction getMediaSourceUrlBySizeSlug( media, slug ) {\n\treturn (\n\t\tmedia?.media_details?.sizes?.[ slug ]?.source_url || media?.source_url\n\t);\n}\n\nconst disabledClickProps = {\n\tonClick: ( event ) => event.preventDefault(),\n\t'aria-disabled': true,\n};\n\nexport default function PostFeaturedImageEdit( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst {\n\t\tisLink,\n\t\taspectRatio,\n\t\theight,\n\t\twidth,\n\t\tscale,\n\t\tsizeSlug,\n\t\trel,\n\t\tlinkTarget,\n\t\tuseFirstImageFromPost,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst [ storedFeaturedImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\t// Fallback to post content if no featured image is set.\n\t// This is needed for the \"Use first image from post\" option.\n\tconst [ postContent ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst featuredImage = useMemo( () => {\n\t\tif ( storedFeaturedImage ) {\n\t\t\treturn storedFeaturedImage;\n\t\t}\n\n\t\tif ( ! useFirstImageFromPost ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst imageOpener =\n\t\t\t/<!--\\s+wp:(?:core\\/)?image\\s+(?<attrs>{(?:(?:[^}]+|}+(?=})|(?!}\\s+\\/?-->).)*)?}\\s+)?-->/.exec(\n\t\t\t\tpostContent\n\t\t\t);\n\t\tconst imageId =\n\t\t\timageOpener?.groups?.attrs &&\n\t\t\tJSON.parse( imageOpener.groups.attrs )?.id;\n\t\treturn imageId;\n\t}, [ storedFeaturedImage, useFirstImageFromPost, postContent ] );\n\n\tconst { media, postType, postPermalink } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType, getEditedEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t\tpostPermalink: getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\tpostId\n\t\t\t\t)?.link,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug, postId ]\n\t);\n\n\tconst mediaUrl = getMediaSourceUrlBySizeSlug( media, sizeSlug );\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height, aspectRatio },\n\t\tclassName: clsx( {\n\t\t\t'is-transient': temporaryURL,\n\t\t} ),\n\t} );\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'block-editor-media-placeholder',\n\t\t\t\t\tborderProps.className\n\t\t\t\t) }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\theight: !! aspectRatio && '100%',\n\t\t\t\t\twidth: !! aspectRatio && '100%',\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\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 onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\n\t\tif ( value?.url && isBlobURL( value.url ) ) {\n\t\t\tsetTemporaryURL( value.url );\n\t\t}\n\t};\n\n\t// Reset temporary url when media is available.\n\tuseEffect( () => {\n\t\tif ( mediaUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ mediaUrl, temporaryURL ] );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst controls = blockEditingMode === 'default' && (\n\t\t<>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t<OverlayControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<DimensionControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\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\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Page\".\n\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\tvalue={ rel }\n\t\t\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\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</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tlet image;\n\n\t/**\n\t * A Post Featured Image block should not have image replacement\n\t * or upload options in the following cases:\n\t * - Is placed in a Query Loop. This is a conscious decision to\n\t * prevent content editing of different posts in Query Loop, and\n\t * this could change in the future.\n\t * - Is in a context where it does not have a postId (for example\n\t * in a template or template part).\n\t */\n\tif ( ! featuredImage && ( isDescendentOfQueryLoop || ! postId ) ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t\t<a\n\t\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ placeholder() }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tplaceholder()\n\t\t\t\t\t) }\n\t\t\t\t\t<Overlay\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\tconst imageStyles = {\n\t\t...borderProps.style,\n\t\t...shadowProps.style,\n\t\theight: aspectRatio ? '100%' : height,\n\t\twidth: !! aspectRatio && '100%',\n\t\tobjectFit: !! ( height || aspectRatio ) && scale,\n\t};\n\n\t/**\n\t * When the post featured image block is placed in a context where:\n\t * - It has a postId (for example in a single post)\n\t * - It is not inside a query loop\n\t * - It has no image assigned yet\n\t * Then display the placeholder with the image upload option.\n\t */\n\tif ( ! featuredImage && ! temporaryURL ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\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\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\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/>\n\t\t);\n\t} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage =\n\t\t\t! media && ! temporaryURL ? (\n\t\t\t\tplaceholder()\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<img\n\t\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\t\tsrc={ temporaryURL || mediaUrl }\n\t\t\t\t\t\talt={\n\t\t\t\t\t\t\tmedia && media?.alt_text\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t/>\n\t\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t\t</>\n\t\t\t);\n\t}\n\n\t/**\n\t * When the post featured image block:\n\t * - Has an image assigned\n\t * - Is not inside a query loop\n\t * Then display the image and the image replacement option.\n\t */\n\treturn (\n\t\t<>\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tonReset={ () => setFeaturedImage( 0 ) }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /* If the featured image is linked, wrap in an <a /> tag to trigger any inherited link element styles */ }\n\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t<Overlay\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -58,7 +58,10 @@ export default function EnhancedPaginationModal({
|
|
|
58
58
|
children: [/*#__PURE__*/_jsx("span", {
|
|
59
59
|
id: modalDescriptionId,
|
|
60
60
|
children: notice
|
|
61
|
-
}), /*#__PURE__*/_jsx(Button
|
|
61
|
+
}), /*#__PURE__*/_jsx(Button
|
|
62
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
63
|
+
, {
|
|
64
|
+
__next40pxDefaultSize: false,
|
|
62
65
|
variant: "primary",
|
|
63
66
|
onClick: closeModal,
|
|
64
67
|
children: __('OK')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","Modal","__experimentalVStack","VStack","__","useState","useEffect","useUnsupportedBlocks","jsx","_jsx","jsxs","_jsxs","modalDescriptionId","EnhancedPaginationModal","clientId","attributes","enhancedPagination","setAttributes","isOpen","setOpen","hasBlocksFromPlugins","hasPostContentBlock","hasUnsupportedBlocks","window","__experimentalFullPageClientSideNavigation","closeModal","notice","title","className","aria","describedby","role","focusOnMount","isDismissible","onRequestClose","children","alignment","spacing","id","variant","onClick"],"sources":["@wordpress/block-library/src/query/edit/enhanced-pagination-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useUnsupportedBlocks } from '../utils';\n\nconst modalDescriptionId =\n\t'wp-block-query-enhanced-pagination-modal__description';\n\nexport default function EnhancedPaginationModal( {\n\tclientId,\n\tattributes: { enhancedPagination },\n\tsetAttributes,\n} ) {\n\tconst [ isOpen, setOpen ] = useState( false );\n\tconst { hasBlocksFromPlugins, hasPostContentBlock, hasUnsupportedBlocks } =\n\t\tuseUnsupportedBlocks( clientId );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tenhancedPagination &&\n\t\t\thasUnsupportedBlocks &&\n\t\t\t! window.__experimentalFullPageClientSideNavigation\n\t\t) {\n\t\t\tsetAttributes( { enhancedPagination: false } );\n\t\t\tsetOpen( true );\n\t\t}\n\t}, [ enhancedPagination, hasUnsupportedBlocks, setAttributes ] );\n\n\tconst closeModal = () => {\n\t\tsetOpen( false );\n\t};\n\n\tlet notice = __(\n\t\t'If you still want to prevent full page reloads, remove that block, then disable \"Force page reload\" again in the Query Block settings.'\n\t);\n\tif ( hasBlocksFromPlugins ) {\n\t\tnotice =\n\t\t\t__(\n\t\t\t\t'Currently, avoiding full page reloads is not possible when non-interactive or non-client Navigation compatible blocks from plugins are present inside the Query block.'\n\t\t\t) +\n\t\t\t' ' +\n\t\t\tnotice;\n\t} else if ( hasPostContentBlock ) {\n\t\tnotice =\n\t\t\t__(\n\t\t\t\t'Currently, avoiding full page reloads is not possible when a Content block is present inside the Query block.'\n\t\t\t) +\n\t\t\t' ' +\n\t\t\tnotice;\n\t}\n\n\treturn (\n\t\tisOpen && (\n\t\t\t<Modal\n\t\t\t\ttitle={ __( 'Query block: Force page reload enabled' ) }\n\t\t\t\tclassName=\"wp-block-query__enhanced-pagination-modal\"\n\t\t\t\taria={ {\n\t\t\t\t\tdescribedby: modalDescriptionId,\n\t\t\t\t} }\n\t\t\t\trole=\"alertdialog\"\n\t\t\t\tfocusOnMount=\"firstElement\"\n\t\t\t\tisDismissible={ false }\n\t\t\t\tonRequestClose={ closeModal }\n\t\t\t>\n\t\t\t\t<VStack alignment=\"right\" spacing={ 5 }>\n\t\t\t\t\t<span id={ modalDescriptionId }>{ notice }</span>\n\t\t\t\t\t<Button
|
|
1
|
+
{"version":3,"names":["Button","Modal","__experimentalVStack","VStack","__","useState","useEffect","useUnsupportedBlocks","jsx","_jsx","jsxs","_jsxs","modalDescriptionId","EnhancedPaginationModal","clientId","attributes","enhancedPagination","setAttributes","isOpen","setOpen","hasBlocksFromPlugins","hasPostContentBlock","hasUnsupportedBlocks","window","__experimentalFullPageClientSideNavigation","closeModal","notice","title","className","aria","describedby","role","focusOnMount","isDismissible","onRequestClose","children","alignment","spacing","id","__next40pxDefaultSize","variant","onClick"],"sources":["@wordpress/block-library/src/query/edit/enhanced-pagination-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useUnsupportedBlocks } from '../utils';\n\nconst modalDescriptionId =\n\t'wp-block-query-enhanced-pagination-modal__description';\n\nexport default function EnhancedPaginationModal( {\n\tclientId,\n\tattributes: { enhancedPagination },\n\tsetAttributes,\n} ) {\n\tconst [ isOpen, setOpen ] = useState( false );\n\tconst { hasBlocksFromPlugins, hasPostContentBlock, hasUnsupportedBlocks } =\n\t\tuseUnsupportedBlocks( clientId );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tenhancedPagination &&\n\t\t\thasUnsupportedBlocks &&\n\t\t\t! window.__experimentalFullPageClientSideNavigation\n\t\t) {\n\t\t\tsetAttributes( { enhancedPagination: false } );\n\t\t\tsetOpen( true );\n\t\t}\n\t}, [ enhancedPagination, hasUnsupportedBlocks, setAttributes ] );\n\n\tconst closeModal = () => {\n\t\tsetOpen( false );\n\t};\n\n\tlet notice = __(\n\t\t'If you still want to prevent full page reloads, remove that block, then disable \"Force page reload\" again in the Query Block settings.'\n\t);\n\tif ( hasBlocksFromPlugins ) {\n\t\tnotice =\n\t\t\t__(\n\t\t\t\t'Currently, avoiding full page reloads is not possible when non-interactive or non-client Navigation compatible blocks from plugins are present inside the Query block.'\n\t\t\t) +\n\t\t\t' ' +\n\t\t\tnotice;\n\t} else if ( hasPostContentBlock ) {\n\t\tnotice =\n\t\t\t__(\n\t\t\t\t'Currently, avoiding full page reloads is not possible when a Content block is present inside the Query block.'\n\t\t\t) +\n\t\t\t' ' +\n\t\t\tnotice;\n\t}\n\n\treturn (\n\t\tisOpen && (\n\t\t\t<Modal\n\t\t\t\ttitle={ __( 'Query block: Force page reload enabled' ) }\n\t\t\t\tclassName=\"wp-block-query__enhanced-pagination-modal\"\n\t\t\t\taria={ {\n\t\t\t\t\tdescribedby: modalDescriptionId,\n\t\t\t\t} }\n\t\t\t\trole=\"alertdialog\"\n\t\t\t\tfocusOnMount=\"firstElement\"\n\t\t\t\tisDismissible={ false }\n\t\t\t\tonRequestClose={ closeModal }\n\t\t\t>\n\t\t\t\t<VStack alignment=\"right\" spacing={ 5 }>\n\t\t\t\t\t<span id={ modalDescriptionId }>{ notice }</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=\"primary\"\n\t\t\t\t\t\tonClick={ closeModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'OK' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</VStack>\n\t\t\t</Modal>\n\t\t)\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,MAAM,EACNC,KAAK,EACLC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,QAAQ,EAAEC,SAAS,QAAQ,oBAAoB;;AAExD;AACA;AACA;AACA,SAASC,oBAAoB,QAAQ,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEhD,MAAMC,kBAAkB,GACvB,uDAAuD;AAExD,eAAe,SAASC,uBAAuBA,CAAE;EAChDC,QAAQ;EACRC,UAAU,EAAE;IAAEC;EAAmB,CAAC;EAClCC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,MAAM,EAAEC,OAAO,CAAE,GAAGd,QAAQ,CAAE,KAAM,CAAC;EAC7C,MAAM;IAAEe,oBAAoB;IAAEC,mBAAmB;IAAEC;EAAqB,CAAC,GACxEf,oBAAoB,CAAEO,QAAS,CAAC;EAEjCR,SAAS,CAAE,MAAM;IAChB,IACCU,kBAAkB,IAClBM,oBAAoB,IACpB,CAAEC,MAAM,CAACC,0CAA0C,EAClD;MACDP,aAAa,CAAE;QAAED,kBAAkB,EAAE;MAAM,CAAE,CAAC;MAC9CG,OAAO,CAAE,IAAK,CAAC;IAChB;EACD,CAAC,EAAE,CAAEH,kBAAkB,EAAEM,oBAAoB,EAAEL,aAAa,CAAG,CAAC;EAEhE,MAAMQ,UAAU,GAAGA,CAAA,KAAM;IACxBN,OAAO,CAAE,KAAM,CAAC;EACjB,CAAC;EAED,IAAIO,MAAM,GAAGtB,EAAE,CACd,wIACD,CAAC;EACD,IAAKgB,oBAAoB,EAAG;IAC3BM,MAAM,GACLtB,EAAE,CACD,wKACD,CAAC,GACD,GAAG,GACHsB,MAAM;EACR,CAAC,MAAM,IAAKL,mBAAmB,EAAG;IACjCK,MAAM,GACLtB,EAAE,CACD,+GACD,CAAC,GACD,GAAG,GACHsB,MAAM;EACR;EAEA,OACCR,MAAM,iBACLT,IAAA,CAACR,KAAK;IACL0B,KAAK,EAAGvB,EAAE,CAAE,wCAAyC,CAAG;IACxDwB,SAAS,EAAC,2CAA2C;IACrDC,IAAI,EAAG;MACNC,WAAW,EAAElB;IACd,CAAG;IACHmB,IAAI,EAAC,aAAa;IAClBC,YAAY,EAAC,cAAc;IAC3BC,aAAa,EAAG,KAAO;IACvBC,cAAc,EAAGT,UAAY;IAAAU,QAAA,eAE7BxB,KAAA,CAACR,MAAM;MAACiC,SAAS,EAAC,OAAO;MAACC,OAAO,EAAG,CAAG;MAAAF,QAAA,gBACtC1B,IAAA;QAAM6B,EAAE,EAAG1B,kBAAoB;QAAAuB,QAAA,EAAGT;MAAM,CAAQ,CAAC,eACjDjB,IAAA,CAACT;MACA;MAAA;QACAuC,qBAAqB,EAAG,KAAO;QAC/BC,OAAO,EAAC,SAAS;QACjBC,OAAO,EAAGhB,UAAY;QAAAU,QAAA,EAEpB/B,EAAE,CAAE,IAAK;MAAC,CACL,CAAC;IAAA,CACF;EAAC,CACH,CACP;AAEH","ignoreList":[]}
|
|
@@ -59,11 +59,17 @@ export default function QueryPlaceholder({
|
|
|
59
59
|
icon: icon,
|
|
60
60
|
label: label,
|
|
61
61
|
instructions: __('Choose a pattern for the query loop or start blank.'),
|
|
62
|
-
children: [!!hasPatterns && /*#__PURE__*/_jsx(Button
|
|
62
|
+
children: [!!hasPatterns && /*#__PURE__*/_jsx(Button
|
|
63
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
64
|
+
, {
|
|
65
|
+
__next40pxDefaultSize: false,
|
|
63
66
|
variant: "primary",
|
|
64
67
|
onClick: openPatternSelectionModal,
|
|
65
68
|
children: __('Choose')
|
|
66
|
-
}), /*#__PURE__*/_jsx(Button
|
|
69
|
+
}), /*#__PURE__*/_jsx(Button
|
|
70
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
71
|
+
, {
|
|
72
|
+
__next40pxDefaultSize: false,
|
|
67
73
|
variant: "secondary",
|
|
68
74
|
onClick: () => {
|
|
69
75
|
setIsStartingBlank(true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSelect","useDispatch","createBlocksFromInnerBlocksTemplate","store","blocksStore","useState","useBlockProps","blockEditorStore","__experimentalBlockVariationPicker","Button","Placeholder","__","useScopedBlockVariations","useBlockNameForPatterns","jsx","_jsx","jsxs","_jsxs","QueryPlaceholder","attributes","clientId","name","openPatternSelectionModal","isStartingBlank","setIsStartingBlank","blockProps","blockNameForPatterns","blockType","activeBlockVariation","hasPatterns","select","getActiveBlockVariation","getBlockType","getBlockRootClientId","getPatternsByBlockTypes","rootClientId","length","icon","src","label","title","QueryVariationPicker","children","instructions","variant","onClick","scopeVariations","replaceInnerBlocks","variations","onSelect","variation","innerBlocks"],"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { useState } from '@wordpress/element';\nimport {\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalBlockVariationPicker,\n} from '@wordpress/block-editor';\nimport { Button, Placeholder } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useScopedBlockVariations, useBlockNameForPatterns } from '../utils';\n\nexport default function QueryPlaceholder( {\n\tattributes,\n\tclientId,\n\tname,\n\topenPatternSelectionModal,\n} ) {\n\tconst [ isStartingBlank, setIsStartingBlank ] = useState( false );\n\tconst blockProps = useBlockProps();\n\tconst blockNameForPatterns = useBlockNameForPatterns(\n\t\tclientId,\n\t\tattributes\n\t);\n\tconst { blockType, activeBlockVariation, hasPatterns } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveBlockVariation, getBlockType } =\n\t\t\t\tselect( blocksStore );\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tactiveBlockVariation: getActiveBlockVariation(\n\t\t\t\t\tname,\n\t\t\t\t\tattributes\n\t\t\t\t),\n\t\t\t\thasPatterns: !! getPatternsByBlockTypes(\n\t\t\t\t\tblockNameForPatterns,\n\t\t\t\t\trootClientId\n\t\t\t\t).length,\n\t\t\t};\n\t\t},\n\t\t[ name, blockNameForPatterns, clientId, attributes ]\n\t);\n\tconst icon =\n\t\tactiveBlockVariation?.icon?.src ||\n\t\tactiveBlockVariation?.icon ||\n\t\tblockType?.icon?.src;\n\tconst label = activeBlockVariation?.title || blockType?.title;\n\tif ( isStartingBlank ) {\n\t\treturn (\n\t\t\t<QueryVariationPicker\n\t\t\t\tclientId={ clientId }\n\t\t\t\tattributes={ attributes }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Placeholder\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Choose a pattern for the query loop or start blank.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ !! hasPatterns && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ openPatternSelectionModal }\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\t<Button\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsStartingBlank( 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</Placeholder>\n\t\t</div>\n\t);\n}\n\nfunction QueryVariationPicker( { clientId, attributes, icon, label } ) {\n\tconst scopeVariations = useScopedBlockVariations( attributes );\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tvariations={ scopeVariations }\n\t\t\t\tonSelect={ ( variation ) => {\n\t\t\t\t\tif ( variation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tvariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SACCC,mCAAmC,EACnCC,KAAK,IAAIC,WAAW,QACd,mBAAmB;AAC1B,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SACCC,aAAa,EACbH,KAAK,IAAII,gBAAgB,EACzBC,kCAAkC,QAC5B,yBAAyB;AAChC,SAASC,MAAM,EAAEC,WAAW,QAAQ,uBAAuB;AAC3D,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,SAASC,wBAAwB,EAAEC,uBAAuB,QAAQ,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE7E,eAAe,SAASC,gBAAgBA,CAAE;EACzCC,UAAU;EACVC,QAAQ;EACRC,IAAI;EACJC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,eAAe,EAAEC,kBAAkB,CAAE,GAAGnB,QAAQ,CAAE,KAAM,CAAC;EACjE,MAAMoB,UAAU,GAAGnB,aAAa,CAAC,CAAC;EAClC,MAAMoB,oBAAoB,GAAGb,uBAAuB,CACnDO,QAAQ,EACRD,UACD,CAAC;EACD,MAAM;IAAEQ,SAAS;IAAEC,oBAAoB;IAAEC;EAAY,CAAC,GAAG7B,SAAS,CAC/D8B,MAAM,IAAM;IACb,MAAM;MAAEC,uBAAuB;MAAEC;IAAa,CAAC,GAC9CF,MAAM,CAAE1B,WAAY,CAAC;IACtB,MAAM;MAAE6B,oBAAoB;MAAEC;IAAwB,CAAC,GACtDJ,MAAM,CAAEvB,gBAAiB,CAAC;IAC3B,MAAM4B,YAAY,GAAGF,oBAAoB,CAAEb,QAAS,CAAC;IACrD,OAAO;MACNO,SAAS,EAAEK,YAAY,CAAEX,IAAK,CAAC;MAC/BO,oBAAoB,EAAEG,uBAAuB,CAC5CV,IAAI,EACJF,UACD,CAAC;MACDU,WAAW,EAAE,CAAC,CAAEK,uBAAuB,CACtCR,oBAAoB,EACpBS,YACD,CAAC,CAACC;IACH,CAAC;EACF,CAAC,EACD,CAAEf,IAAI,EAAEK,oBAAoB,EAAEN,QAAQ,EAAED,UAAU,CACnD,CAAC;EACD,MAAMkB,IAAI,GACTT,oBAAoB,EAAES,IAAI,EAAEC,GAAG,IAC/BV,oBAAoB,EAAES,IAAI,IAC1BV,SAAS,EAAEU,IAAI,EAAEC,GAAG;EACrB,MAAMC,KAAK,GAAGX,oBAAoB,EAAEY,KAAK,IAAIb,SAAS,EAAEa,KAAK;EAC7D,IAAKjB,eAAe,EAAG;IACtB,oBACCR,IAAA,CAAC0B,oBAAoB;MACpBrB,QAAQ,EAAGA,QAAU;MACrBD,UAAU,EAAGA,UAAY;MACzBkB,IAAI,EAAGA,IAAM;MACbE,KAAK,EAAGA;IAAO,CACf,CAAC;EAEJ;EACA,oBACCxB,IAAA;IAAA,GAAUU,UAAU;IAAAiB,QAAA,eACnBzB,KAAA,CAACP,WAAW;MACX2B,IAAI,EAAGA,IAAM;MACbE,KAAK,EAAGA,KAAO;MACfI,YAAY,EAAGhC,EAAE,CAChB,qDACD,CAAG;MAAA+B,QAAA,GAED,CAAC,CAAEb,WAAW,iBACfd,IAAA,CAACN,
|
|
1
|
+
{"version":3,"names":["useSelect","useDispatch","createBlocksFromInnerBlocksTemplate","store","blocksStore","useState","useBlockProps","blockEditorStore","__experimentalBlockVariationPicker","Button","Placeholder","__","useScopedBlockVariations","useBlockNameForPatterns","jsx","_jsx","jsxs","_jsxs","QueryPlaceholder","attributes","clientId","name","openPatternSelectionModal","isStartingBlank","setIsStartingBlank","blockProps","blockNameForPatterns","blockType","activeBlockVariation","hasPatterns","select","getActiveBlockVariation","getBlockType","getBlockRootClientId","getPatternsByBlockTypes","rootClientId","length","icon","src","label","title","QueryVariationPicker","children","instructions","__next40pxDefaultSize","variant","onClick","scopeVariations","replaceInnerBlocks","variations","onSelect","variation","innerBlocks"],"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { useState } from '@wordpress/element';\nimport {\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalBlockVariationPicker,\n} from '@wordpress/block-editor';\nimport { Button, Placeholder } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useScopedBlockVariations, useBlockNameForPatterns } from '../utils';\n\nexport default function QueryPlaceholder( {\n\tattributes,\n\tclientId,\n\tname,\n\topenPatternSelectionModal,\n} ) {\n\tconst [ isStartingBlank, setIsStartingBlank ] = useState( false );\n\tconst blockProps = useBlockProps();\n\tconst blockNameForPatterns = useBlockNameForPatterns(\n\t\tclientId,\n\t\tattributes\n\t);\n\tconst { blockType, activeBlockVariation, hasPatterns } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveBlockVariation, getBlockType } =\n\t\t\t\tselect( blocksStore );\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tactiveBlockVariation: getActiveBlockVariation(\n\t\t\t\t\tname,\n\t\t\t\t\tattributes\n\t\t\t\t),\n\t\t\t\thasPatterns: !! getPatternsByBlockTypes(\n\t\t\t\t\tblockNameForPatterns,\n\t\t\t\t\trootClientId\n\t\t\t\t).length,\n\t\t\t};\n\t\t},\n\t\t[ name, blockNameForPatterns, clientId, attributes ]\n\t);\n\tconst icon =\n\t\tactiveBlockVariation?.icon?.src ||\n\t\tactiveBlockVariation?.icon ||\n\t\tblockType?.icon?.src;\n\tconst label = activeBlockVariation?.title || blockType?.title;\n\tif ( isStartingBlank ) {\n\t\treturn (\n\t\t\t<QueryVariationPicker\n\t\t\t\tclientId={ clientId }\n\t\t\t\tattributes={ attributes }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Placeholder\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Choose a pattern for the query loop or start blank.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ !! hasPatterns && (\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={ openPatternSelectionModal }\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\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\tsetIsStartingBlank( 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</Placeholder>\n\t\t</div>\n\t);\n}\n\nfunction QueryVariationPicker( { clientId, attributes, icon, label } ) {\n\tconst scopeVariations = useScopedBlockVariations( attributes );\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tvariations={ scopeVariations }\n\t\t\t\tonSelect={ ( variation ) => {\n\t\t\t\t\tif ( variation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tvariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,7 +9,7 @@ import clsx from 'clsx';
|
|
|
9
9
|
import { isBlobURL } from '@wordpress/blob';
|
|
10
10
|
import { createInterpolateElement, useEffect, useState } from '@wordpress/element';
|
|
11
11
|
import { __, isRTL } from '@wordpress/i18n';
|
|
12
|
-
import {
|
|
12
|
+
import { PanelBody, RangeControl, ResizableBox, Spinner, ToggleControl, ToolbarButton, Placeholder, Button, DropZone, FlexItem, __experimentalItemGroup as ItemGroup, __experimentalHStack as HStack, __experimentalTruncate as Truncate } from '@wordpress/components';
|
|
13
13
|
import { useViewportMatch } from '@wordpress/compose';
|
|
14
14
|
import { BlockControls, InspectorControls, MediaPlaceholder, MediaUpload, MediaUploadCheck, MediaReplaceFlow, useBlockProps, store as blockEditorStore, __experimentalImageEditor as ImageEditor } from '@wordpress/block-editor';
|
|
15
15
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
@@ -303,17 +303,10 @@ function SiteLogoReplaceFlow({
|
|
|
303
303
|
}) {
|
|
304
304
|
return /*#__PURE__*/_jsx(MediaReplaceFlow, {
|
|
305
305
|
...mediaReplaceProps,
|
|
306
|
+
mediaURL: mediaURL,
|
|
306
307
|
allowedTypes: ALLOWED_MEDIA_TYPES,
|
|
307
308
|
accept: ACCEPT_MEDIA_STRING,
|
|
308
|
-
|
|
309
|
-
onClose
|
|
310
|
-
}) => mediaURL && /*#__PURE__*/_jsx(MenuItem, {
|
|
311
|
-
onClick: () => {
|
|
312
|
-
onRemoveLogo();
|
|
313
|
-
onClose();
|
|
314
|
-
},
|
|
315
|
-
children: __('Reset')
|
|
316
|
-
})
|
|
309
|
+
onReset: onRemoveLogo
|
|
317
310
|
});
|
|
318
311
|
}
|
|
319
312
|
const InspectorLogoPreview = ({
|
|
@@ -381,7 +374,7 @@ export default function LogoEdit({
|
|
|
381
374
|
const mediaItem = _siteLogoId && select(coreStore).getMedia(_siteLogoId, {
|
|
382
375
|
context: 'view'
|
|
383
376
|
});
|
|
384
|
-
const _isRequestingMediaItem = _siteLogoId && !select(coreStore).hasFinishedResolution('getMedia', [_siteLogoId, {
|
|
377
|
+
const _isRequestingMediaItem = !!_siteLogoId && !select(coreStore).hasFinishedResolution('getMedia', [_siteLogoId, {
|
|
385
378
|
context: 'view'
|
|
386
379
|
}]);
|
|
387
380
|
return {
|
|
@@ -564,7 +557,10 @@ export default function LogoEdit({
|
|
|
564
557
|
open
|
|
565
558
|
}) => /*#__PURE__*/_jsxs("div", {
|
|
566
559
|
className: "block-library-site-logo__inspector-upload-container",
|
|
567
|
-
children: [/*#__PURE__*/_jsx(Button
|
|
560
|
+
children: [/*#__PURE__*/_jsx(Button
|
|
561
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
562
|
+
, {
|
|
563
|
+
__next40pxDefaultSize: false,
|
|
568
564
|
onClick: open,
|
|
569
565
|
variant: "secondary",
|
|
570
566
|
children: isLoading ? /*#__PURE__*/_jsx(Spinner, {}) : __('Choose logo')
|
|
@@ -579,13 +575,14 @@ export default function LogoEdit({
|
|
|
579
575
|
});
|
|
580
576
|
return /*#__PURE__*/_jsxs("div", {
|
|
581
577
|
...blockProps,
|
|
582
|
-
children: [controls, mediaInspectorPanel, (!!logoUrl || !!temporaryURL) && logoImage, !temporaryURL && !logoUrl && !canUserEdit && /*#__PURE__*/_jsx(Placeholder, {
|
|
578
|
+
children: [controls, mediaInspectorPanel, (!!logoUrl || !!temporaryURL) && logoImage, (isLoading || !temporaryURL && !logoUrl && !canUserEdit) && /*#__PURE__*/_jsx(Placeholder, {
|
|
583
579
|
className: "site-logo_placeholder",
|
|
584
|
-
|
|
580
|
+
withIllustration: true,
|
|
581
|
+
children: isLoading && /*#__PURE__*/_jsx("span", {
|
|
585
582
|
className: "components-placeholder__preview",
|
|
586
583
|
children: /*#__PURE__*/_jsx(Spinner, {})
|
|
587
584
|
})
|
|
588
|
-
}), !temporaryURL && !logoUrl && canUserEdit && /*#__PURE__*/_jsx(MediaPlaceholder, {
|
|
585
|
+
}), !isLoading && !temporaryURL && !logoUrl && canUserEdit && /*#__PURE__*/_jsx(MediaPlaceholder, {
|
|
589
586
|
onSelect: onInitialSelectLogo,
|
|
590
587
|
accept: ACCEPT_MEDIA_STRING,
|
|
591
588
|
allowedTypes: ALLOWED_MEDIA_TYPES,
|
|
@@ -594,7 +591,10 @@ export default function LogoEdit({
|
|
|
594
591
|
mediaLibraryButton: ({
|
|
595
592
|
open
|
|
596
593
|
}) => {
|
|
597
|
-
return /*#__PURE__*/_jsx(Button
|
|
594
|
+
return /*#__PURE__*/_jsx(Button
|
|
595
|
+
// TODO: Switch to `true` (40px size) if possible
|
|
596
|
+
, {
|
|
597
|
+
__next40pxDefaultSize: false,
|
|
598
598
|
icon: upload,
|
|
599
599
|
variant: "primary",
|
|
600
600
|
label: __('Choose logo'),
|