@wordpress/block-library 9.19.5 → 9.19.6

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.
Files changed (47) hide show
  1. package/build/details/edit.js +28 -8
  2. package/build/details/edit.js.map +1 -1
  3. package/build/embed/variations.js +0 -10
  4. package/build/embed/variations.js.map +1 -1
  5. package/build/image/edit.js +0 -6
  6. package/build/image/edit.js.map +1 -1
  7. package/build/navigation-link/edit.js +27 -8
  8. package/build/navigation-link/edit.js.map +1 -1
  9. package/build/post-template/edit.js +5 -3
  10. package/build/post-template/edit.js.map +1 -1
  11. package/build/query/edit/inspector-controls/index.js +30 -19
  12. package/build/query/edit/inspector-controls/index.js.map +1 -1
  13. package/build/query/edit/query-content.js +1 -6
  14. package/build/query/edit/query-content.js.map +1 -1
  15. package/build-module/details/edit.js +30 -10
  16. package/build-module/details/edit.js.map +1 -1
  17. package/build-module/embed/variations.js +0 -10
  18. package/build-module/embed/variations.js.map +1 -1
  19. package/build-module/image/edit.js +0 -6
  20. package/build-module/image/edit.js.map +1 -1
  21. package/build-module/navigation-link/edit.js +28 -9
  22. package/build-module/navigation-link/edit.js.map +1 -1
  23. package/build-module/post-template/edit.js +5 -3
  24. package/build-module/post-template/edit.js.map +1 -1
  25. package/build-module/query/edit/inspector-controls/index.js +31 -20
  26. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  27. package/build-module/query/edit/query-content.js +1 -6
  28. package/build-module/query/edit/query-content.js.map +1 -1
  29. package/build-style/button/style-rtl.css +0 -1
  30. package/build-style/button/style.css +0 -1
  31. package/build-style/buttons/style-rtl.css +3 -0
  32. package/build-style/buttons/style.css +3 -0
  33. package/build-style/post-comments-form/style-rtl.css +0 -3
  34. package/build-style/post-comments-form/style.css +0 -3
  35. package/build-style/style-rtl.css +3 -4
  36. package/build-style/style.css +3 -4
  37. package/package.json +18 -18
  38. package/src/button/style.scss +0 -1
  39. package/src/buttons/style.scss +5 -0
  40. package/src/details/edit.js +38 -8
  41. package/src/embed/variations.js +0 -8
  42. package/src/image/edit.js +0 -4
  43. package/src/navigation-link/edit.js +45 -11
  44. package/src/post-comments-form/style.scss +0 -5
  45. package/src/post-template/edit.js +4 -3
  46. package/src/query/edit/inspector-controls/index.js +50 -34
  47. package/src/query/edit/query-content.js +2 -8
@@ -8,7 +8,9 @@ var _blockEditor = require("@wordpress/block-editor");
8
8
  var _components = require("@wordpress/components");
9
9
  var _i18n = require("@wordpress/i18n");
10
10
  var _element = require("@wordpress/element");
11
+ var _data = require("@wordpress/data");
11
12
  var _hooks = require("../utils/hooks");
13
+ var _lockUnlock = require("../lock-unlock");
12
14
  var _jsxRuntime = require("react/jsx-runtime");
13
15
  /**
14
16
  * WordPress dependencies
@@ -18,12 +20,16 @@ var _jsxRuntime = require("react/jsx-runtime");
18
20
  * Internal dependencies
19
21
  */
20
22
 
23
+ const {
24
+ withIgnoreIMEEvents
25
+ } = (0, _lockUnlock.unlock)(_components.privateApis);
21
26
  const TEMPLATE = [['core/paragraph', {
22
27
  placeholder: (0, _i18n.__)('Type / to add a hidden block')
23
28
  }]];
24
29
  function DetailsEdit({
25
30
  attributes,
26
- setAttributes
31
+ setAttributes,
32
+ clientId
27
33
  }) {
28
34
  const {
29
35
  name,
@@ -40,6 +46,22 @@ function DetailsEdit({
40
46
  });
41
47
  const [isOpen, setIsOpen] = (0, _element.useState)(showContent);
42
48
  const dropdownMenuProps = (0, _hooks.useToolsPanelDropdownMenuProps)();
49
+
50
+ // Check if the inner blocks are selected.
51
+ const hasSelectedInnerBlock = (0, _data.useSelect)(select => select(_blockEditor.store).hasSelectedInnerBlock(clientId, true), [clientId]);
52
+ const handleSummaryKeyDown = event => {
53
+ if (event.key === 'Enter' && !event.shiftKey) {
54
+ setIsOpen(prevIsOpen => !prevIsOpen);
55
+ event.preventDefault();
56
+ }
57
+ };
58
+
59
+ // Prevent spacebar from toggling <details> while typing.
60
+ const handleSummaryKeyUp = event => {
61
+ if (event.key === ' ') {
62
+ event.preventDefault();
63
+ }
64
+ };
43
65
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
44
66
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.InspectorControls, {
45
67
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalToolsPanel, {
@@ -83,17 +105,15 @@ function DetailsEdit({
83
105
  })
84
106
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("details", {
85
107
  ...innerBlocksProps,
86
- open: isOpen,
108
+ open: isOpen || hasSelectedInnerBlock,
109
+ onToggle: event => setIsOpen(event.target.open),
87
110
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("summary", {
88
- onClick: event => {
89
- event.preventDefault();
90
- setIsOpen(!isOpen);
91
- },
111
+ onKeyDown: withIgnoreIMEEvents(handleSummaryKeyDown),
112
+ onKeyUp: handleSummaryKeyUp,
92
113
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.RichText, {
93
114
  identifier: "summary",
94
- "aria-label": (0, _i18n.__)('Write summary'),
115
+ "aria-label": (0, _i18n.__)('Write summary. Press Enter to expand or collapse the details.'),
95
116
  placeholder: placeholder || (0, _i18n.__)('Write summary…'),
96
- allowedFormats: [],
97
117
  withoutInteractiveFormatting: true,
98
118
  value: summary,
99
119
  onChange: newSummary => setAttributes({
@@ -1 +1 @@
1
- {"version":3,"names":["_blockEditor","require","_components","_i18n","_element","_hooks","_jsxRuntime","TEMPLATE","placeholder","__","DetailsEdit","attributes","setAttributes","name","showContent","summary","allowedBlocks","blockProps","useBlockProps","innerBlocksProps","useInnerBlocksProps","template","__experimentalCaptureToolbars","isOpen","setIsOpen","useState","dropdownMenuProps","useToolsPanelDropdownMenuProps","jsxs","Fragment","children","jsx","InspectorControls","__experimentalToolsPanel","label","resetAll","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","checked","onChange","group","TextControl","__next40pxDefaultSize","value","newName","help","open","onClick","event","preventDefault","RichText","identifier","allowedFormats","withoutInteractiveFormatting","newSummary","_default","exports","default"],"sources":["@wordpress/block-library/src/details/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n} from '@wordpress/block-editor';\nimport {\n\tTextControl,\n\tToggleControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\n\nconst TEMPLATE = [\n\t[\n\t\t'core/paragraph',\n\t\t{\n\t\t\tplaceholder: __( 'Type / to add a hidden block' ),\n\t\t},\n\t],\n];\n\nfunction DetailsEdit( { attributes, setAttributes } ) {\n\tconst { name, showContent, summary, allowedBlocks, placeholder } =\n\t\tattributes;\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\t__experimentalCaptureToolbars: true,\n\t\tallowedBlocks,\n\t} );\n\tconst [ isOpen, setIsOpen ] = useState( showContent );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tshowContent: false,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tlabel={ __( 'Open by default' ) }\n\t\t\t\t\t\thasValue={ () => showContent }\n\t\t\t\t\t\tonDeselect={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowContent: false,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open by default' ) }\n\t\t\t\t\t\t\tchecked={ showContent }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowContent: ! showContent,\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</ToolsPanelItem>\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Name attribute' ) }\n\t\t\t\t\tvalue={ name || '' }\n\t\t\t\t\tonChange={ ( newName ) =>\n\t\t\t\t\t\tsetAttributes( { name: newName } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Enables multiple Details blocks with the same name attribute to be connected, with only one open at a time.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<details { ...innerBlocksProps } open={ isOpen }>\n\t\t\t\t<summary\n\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tsetIsOpen( ! isOpen );\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"summary\"\n\t\t\t\t\t\taria-label={ __( 'Write summary' ) }\n\t\t\t\t\t\tplaceholder={ placeholder || __( 'Write summary…' ) }\n\t\t\t\t\t\tallowedFormats={ [] }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ summary }\n\t\t\t\t\t\tonChange={ ( newSummary ) =>\n\t\t\t\t\t\t\tsetAttributes( { summary: newSummary } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</summary>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t</details>\n\t\t</>\n\t);\n}\n\nexport default DetailsEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_blockEditor","require","_components","_i18n","_element","_data","_hooks","_lockUnlock","_jsxRuntime","withIgnoreIMEEvents","unlock","componentsPrivateApis","TEMPLATE","placeholder","__","DetailsEdit","attributes","setAttributes","clientId","name","showContent","summary","allowedBlocks","blockProps","useBlockProps","innerBlocksProps","useInnerBlocksProps","template","__experimentalCaptureToolbars","isOpen","setIsOpen","useState","dropdownMenuProps","useToolsPanelDropdownMenuProps","hasSelectedInnerBlock","useSelect","select","blockEditorStore","handleSummaryKeyDown","event","key","shiftKey","prevIsOpen","preventDefault","handleSummaryKeyUp","jsxs","Fragment","children","jsx","InspectorControls","__experimentalToolsPanel","label","resetAll","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","checked","onChange","group","TextControl","__next40pxDefaultSize","value","newName","help","open","onToggle","target","onKeyDown","onKeyUp","RichText","identifier","withoutInteractiveFormatting","newSummary","_default","exports","default"],"sources":["@wordpress/block-library/src/details/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tTextControl,\n\tToggleControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport { unlock } from '../lock-unlock';\n\nconst { withIgnoreIMEEvents } = unlock( componentsPrivateApis );\n\nconst TEMPLATE = [\n\t[\n\t\t'core/paragraph',\n\t\t{\n\t\t\tplaceholder: __( 'Type / to add a hidden block' ),\n\t\t},\n\t],\n];\n\nfunction DetailsEdit( { attributes, setAttributes, clientId } ) {\n\tconst { name, showContent, summary, allowedBlocks, placeholder } =\n\t\tattributes;\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\t__experimentalCaptureToolbars: true,\n\t\tallowedBlocks,\n\t} );\n\tconst [ isOpen, setIsOpen ] = useState( showContent );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\t// Check if the inner blocks are selected.\n\tconst hasSelectedInnerBlock = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).hasSelectedInnerBlock( clientId, true ),\n\t\t[ clientId ]\n\t);\n\n\tconst handleSummaryKeyDown = ( event ) => {\n\t\tif ( event.key === 'Enter' && ! event.shiftKey ) {\n\t\t\tsetIsOpen( ( prevIsOpen ) => ! prevIsOpen );\n\t\t\tevent.preventDefault();\n\t\t}\n\t};\n\n\t// Prevent spacebar from toggling <details> while typing.\n\tconst handleSummaryKeyUp = ( event ) => {\n\t\tif ( event.key === ' ' ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tshowContent: false,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tlabel={ __( 'Open by default' ) }\n\t\t\t\t\t\thasValue={ () => showContent }\n\t\t\t\t\t\tonDeselect={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowContent: false,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open by default' ) }\n\t\t\t\t\t\t\tchecked={ showContent }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowContent: ! showContent,\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</ToolsPanelItem>\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Name attribute' ) }\n\t\t\t\t\tvalue={ name || '' }\n\t\t\t\t\tonChange={ ( newName ) =>\n\t\t\t\t\t\tsetAttributes( { name: newName } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Enables multiple Details blocks with the same name attribute to be connected, with only one open at a time.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<details\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\topen={ isOpen || hasSelectedInnerBlock }\n\t\t\t\tonToggle={ ( event ) => setIsOpen( event.target.open ) }\n\t\t\t>\n\t\t\t\t<summary\n\t\t\t\t\tonKeyDown={ withIgnoreIMEEvents( handleSummaryKeyDown ) }\n\t\t\t\t\tonKeyUp={ handleSummaryKeyUp }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"summary\"\n\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t'Write summary. Press Enter to expand or collapse the details.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tplaceholder={ placeholder || __( 'Write summary…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ summary }\n\t\t\t\t\t\tonChange={ ( newSummary ) =>\n\t\t\t\t\t\t\tsetAttributes( { summary: newSummary } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</summary>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t</details>\n\t\t</>\n\t);\n}\n\nexport default DetailsEdit;\n"],"mappings":"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","ignoreList":[]}
@@ -256,16 +256,6 @@ const variations = [{
256
256
  providerNameSlug: 'reverbnation',
257
257
  responsive: true
258
258
  }
259
- }, {
260
- name: 'screencast',
261
- title: getTitle('Screencast'),
262
- icon: _icons.embedVideoIcon,
263
- description: (0, _i18n.__)('Embed Screencast content.'),
264
- patterns: [/^https?:\/\/(www\.)?screencast\.com\/.+/i],
265
- attributes: {
266
- providerNameSlug: 'screencast',
267
- responsive: true
268
- }
269
259
  }, {
270
260
  name: 'scribd',
271
261
  title: getTitle('Scribd'),
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_icons","getTitle","providerName","sprintf","__","variations","name","title","icon","embedTwitterIcon","keywords","description","patterns","attributes","providerNameSlug","responsive","embedYouTubeIcon","embedFacebookIcon","scope","previewable","embedInstagramIcon","embedWordPressIcon","embedAudioIcon","embedSpotifyIcon","embedFlickrIcon","embedVimeoIcon","embedAnimotoIcon","embedContentIcon","embedVideoIcon","embedDailymotionIcon","embedPhotoIcon","embedPocketCastsIcon","embedRedditIcon","embedTumblrIcon","embedAmazonIcon","embedPinterestIcon","embedWolframIcon","embedBlueskyIcon","forEach","variation","isActive","blockAttributes","variationAttributes","_default","exports","default"],"sources":["@wordpress/block-library/src/embed/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tembedContentIcon,\n\tembedAudioIcon,\n\tembedPhotoIcon,\n\tembedVideoIcon,\n\tembedTwitterIcon,\n\tembedYouTubeIcon,\n\tembedFacebookIcon,\n\tembedInstagramIcon,\n\tembedWordPressIcon,\n\tembedSpotifyIcon,\n\tembedFlickrIcon,\n\tembedVimeoIcon,\n\tembedRedditIcon,\n\tembedTumblrIcon,\n\tembedAmazonIcon,\n\tembedAnimotoIcon,\n\tembedDailymotionIcon,\n\tembedPinterestIcon,\n\tembedWolframIcon,\n\tembedPocketCastsIcon,\n\tembedBlueskyIcon,\n} from './icons';\n\n/** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */\n\nfunction getTitle( providerName ) {\n\treturn sprintf(\n\t\t/* translators: %s: provider name */\n\t\t__( '%s Embed' ),\n\t\tproviderName\n\t);\n}\n\n/**\n * The embed provider services.\n *\n * @type {WPBlockVariation[]}\n */\nconst variations = [\n\t{\n\t\tname: 'twitter',\n\t\ttitle: getTitle( 'Twitter' ),\n\t\ticon: embedTwitterIcon,\n\t\tkeywords: [ 'tweet', __( 'social' ) ],\n\t\tdescription: __( 'Embed a tweet.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?twitter\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'twitter', responsive: true },\n\t},\n\t{\n\t\tname: 'youtube',\n\t\ttitle: getTitle( 'YouTube' ),\n\t\ticon: embedYouTubeIcon,\n\t\tkeywords: [ __( 'music' ), __( 'video' ) ],\n\t\tdescription: __( 'Embed a YouTube video.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/((m|www)\\.)?youtube\\.com\\/.+/i,\n\t\t\t/^https?:\\/\\/youtu\\.be\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'youtube', responsive: true },\n\t},\n\t{\n\t\t// Deprecate Facebook Embed per FB policy\n\t\t// See: https://developers.facebook.com/docs/plugins/oembed-legacy\n\t\tname: 'facebook',\n\t\ttitle: getTitle( 'Facebook' ),\n\t\ticon: embedFacebookIcon,\n\t\tkeywords: [ __( 'social' ) ],\n\t\tdescription: __( 'Embed a Facebook post.' ),\n\t\tscope: [ 'block' ],\n\t\tpatterns: [],\n\t\tattributes: {\n\t\t\tproviderNameSlug: 'facebook',\n\t\t\tpreviewable: false,\n\t\t\tresponsive: true,\n\t\t},\n\t},\n\t{\n\t\t// Deprecate Instagram per FB policy\n\t\t// See: https://developers.facebook.com/docs/instagram/oembed-legacy\n\t\tname: 'instagram',\n\t\ttitle: getTitle( 'Instagram' ),\n\t\ticon: embedInstagramIcon,\n\t\tkeywords: [ __( 'image' ), __( 'social' ) ],\n\t\tdescription: __( 'Embed an Instagram post.' ),\n\t\tscope: [ 'block' ],\n\t\tpatterns: [],\n\t\tattributes: { providerNameSlug: 'instagram', responsive: true },\n\t},\n\t{\n\t\tname: 'wordpress',\n\t\ttitle: getTitle( 'WordPress' ),\n\t\ticon: embedWordPressIcon,\n\t\tkeywords: [ __( 'post' ), __( 'blog' ) ],\n\t\tdescription: __( 'Embed a WordPress post.' ),\n\t\tattributes: {\n\t\t\tproviderNameSlug: 'wordpress',\n\t\t},\n\t},\n\t{\n\t\tname: 'soundcloud',\n\t\ttitle: getTitle( 'SoundCloud' ),\n\t\ticon: embedAudioIcon,\n\t\tkeywords: [ __( 'music' ), __( 'audio' ) ],\n\t\tdescription: __( 'Embed SoundCloud content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?soundcloud\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'soundcloud', responsive: true },\n\t},\n\t{\n\t\tname: 'spotify',\n\t\ttitle: getTitle( 'Spotify' ),\n\t\ticon: embedSpotifyIcon,\n\t\tkeywords: [ __( 'music' ), __( 'audio' ) ],\n\t\tdescription: __( 'Embed Spotify content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(open|play)\\.spotify\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'spotify', responsive: true },\n\t},\n\t{\n\t\tname: 'flickr',\n\t\ttitle: getTitle( 'Flickr' ),\n\t\ticon: embedFlickrIcon,\n\t\tkeywords: [ __( 'image' ) ],\n\t\tdescription: __( 'Embed Flickr content.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/(www\\.)?flickr\\.com\\/.+/i,\n\t\t\t/^https?:\\/\\/flic\\.kr\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'flickr', responsive: true },\n\t},\n\t{\n\t\tname: 'vimeo',\n\t\ttitle: getTitle( 'Vimeo' ),\n\t\ticon: embedVimeoIcon,\n\t\tkeywords: [ __( 'video' ) ],\n\t\tdescription: __( 'Embed a Vimeo video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?vimeo\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'vimeo', responsive: true },\n\t},\n\t{\n\t\tname: 'animoto',\n\t\ttitle: getTitle( 'Animoto' ),\n\t\ticon: embedAnimotoIcon,\n\t\tdescription: __( 'Embed an Animoto video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?(animoto|video214)\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'animoto', responsive: true },\n\t},\n\t{\n\t\tname: 'cloudup',\n\t\ttitle: getTitle( 'Cloudup' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Cloudup content.' ),\n\t\tpatterns: [ /^https?:\\/\\/cloudup\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'cloudup', responsive: true },\n\t},\n\t{\n\t\t// Deprecated since CollegeHumor content is now powered by YouTube.\n\t\tname: 'collegehumor',\n\t\ttitle: getTitle( 'CollegeHumor' ),\n\t\ticon: embedVideoIcon,\n\t\tdescription: __( 'Embed CollegeHumor content.' ),\n\t\tscope: [ 'block' ],\n\t\tpatterns: [],\n\t\tattributes: { providerNameSlug: 'collegehumor', responsive: true },\n\t},\n\t{\n\t\tname: 'crowdsignal',\n\t\ttitle: getTitle( 'Crowdsignal' ),\n\t\ticon: embedContentIcon,\n\t\tkeywords: [ 'polldaddy', __( 'survey' ) ],\n\t\tdescription: __( 'Embed Crowdsignal (formerly Polldaddy) content.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/((.+\\.)?polldaddy\\.com|poll\\.fm|.+\\.crowdsignal\\.net|.+\\.survey\\.fm)\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'crowdsignal', responsive: true },\n\t},\n\t{\n\t\tname: 'dailymotion',\n\t\ttitle: getTitle( 'Dailymotion' ),\n\t\ticon: embedDailymotionIcon,\n\t\tkeywords: [ __( 'video' ) ],\n\t\tdescription: __( 'Embed a Dailymotion video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?dailymotion\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'dailymotion', responsive: true },\n\t},\n\t{\n\t\tname: 'imgur',\n\t\ttitle: getTitle( 'Imgur' ),\n\t\ticon: embedPhotoIcon,\n\t\tdescription: __( 'Embed Imgur content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(.+\\.)?imgur\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'imgur', responsive: true },\n\t},\n\t{\n\t\tname: 'issuu',\n\t\ttitle: getTitle( 'Issuu' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Issuu content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?issuu\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'issuu', responsive: true },\n\t},\n\t{\n\t\tname: 'kickstarter',\n\t\ttitle: getTitle( 'Kickstarter' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Kickstarter content.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/(www\\.)?kickstarter\\.com\\/.+/i,\n\t\t\t/^https?:\\/\\/kck\\.st\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'kickstarter', responsive: true },\n\t},\n\t{\n\t\tname: 'mixcloud',\n\t\ttitle: getTitle( 'Mixcloud' ),\n\t\ticon: embedAudioIcon,\n\t\tkeywords: [ __( 'music' ), __( 'audio' ) ],\n\t\tdescription: __( 'Embed Mixcloud content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?mixcloud\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'mixcloud', responsive: true },\n\t},\n\t{\n\t\tname: 'pocket-casts',\n\t\ttitle: getTitle( 'Pocket Casts' ),\n\t\ticon: embedPocketCastsIcon,\n\t\tkeywords: [ __( 'podcast' ), __( 'audio' ) ],\n\t\tdescription: __( 'Embed a podcast player from Pocket Casts.' ),\n\t\tpatterns: [ /^https:\\/\\/pca.st\\/\\w+/i ],\n\t\tattributes: { providerNameSlug: 'pocket-casts', responsive: true },\n\t},\n\t{\n\t\tname: 'reddit',\n\t\ttitle: getTitle( 'Reddit' ),\n\t\ticon: embedRedditIcon,\n\t\tdescription: __( 'Embed a Reddit thread.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?reddit\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'reddit', responsive: true },\n\t},\n\t{\n\t\tname: 'reverbnation',\n\t\ttitle: getTitle( 'ReverbNation' ),\n\t\ticon: embedAudioIcon,\n\t\tdescription: __( 'Embed ReverbNation content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?reverbnation\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'reverbnation', responsive: true },\n\t},\n\t{\n\t\tname: 'screencast',\n\t\ttitle: getTitle( 'Screencast' ),\n\t\ticon: embedVideoIcon,\n\t\tdescription: __( 'Embed Screencast content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?screencast\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'screencast', responsive: true },\n\t},\n\t{\n\t\tname: 'scribd',\n\t\ttitle: getTitle( 'Scribd' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Scribd content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?scribd\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'scribd', responsive: true },\n\t},\n\t{\n\t\tname: 'smugmug',\n\t\ttitle: getTitle( 'SmugMug' ),\n\t\ticon: embedPhotoIcon,\n\t\tdescription: __( 'Embed SmugMug content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(.+\\.)?smugmug\\.com\\/.*/i ],\n\t\tattributes: {\n\t\t\tproviderNameSlug: 'smugmug',\n\t\t\tpreviewable: false,\n\t\t\tresponsive: true,\n\t\t},\n\t},\n\t{\n\t\tname: 'speaker-deck',\n\t\ttitle: getTitle( 'Speaker Deck' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Speaker Deck content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?speakerdeck\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'speaker-deck', responsive: true },\n\t},\n\t{\n\t\tname: 'tiktok',\n\t\ttitle: getTitle( 'TikTok' ),\n\t\ticon: embedVideoIcon,\n\t\tkeywords: [ __( 'video' ) ],\n\t\tdescription: __( 'Embed a TikTok video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?tiktok\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'tiktok', responsive: true },\n\t},\n\t{\n\t\tname: 'ted',\n\t\ttitle: getTitle( 'TED' ),\n\t\ticon: embedVideoIcon,\n\t\tdescription: __( 'Embed a TED video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.|embed\\.)?ted\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'ted', responsive: true },\n\t},\n\t{\n\t\tname: 'tumblr',\n\t\ttitle: getTitle( 'Tumblr' ),\n\t\ticon: embedTumblrIcon,\n\t\tkeywords: [ __( 'social' ) ],\n\t\tdescription: __( 'Embed a Tumblr post.' ),\n\t\tpatterns: [ /^https?:\\/\\/(.+)\\.tumblr\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'tumblr', responsive: true },\n\t},\n\t{\n\t\tname: 'videopress',\n\t\ttitle: getTitle( 'VideoPress' ),\n\t\ticon: embedVideoIcon,\n\t\tkeywords: [ __( 'video' ) ],\n\t\tdescription: __( 'Embed a VideoPress video.' ),\n\t\tpatterns: [ /^https?:\\/\\/videopress\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'videopress', responsive: true },\n\t},\n\t{\n\t\tname: 'wordpress-tv',\n\t\ttitle: getTitle( 'WordPress.tv' ),\n\t\ticon: embedVideoIcon,\n\t\tdescription: __( 'Embed a WordPress.tv video.' ),\n\t\tpatterns: [ /^https?:\\/\\/wordpress\\.tv\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'wordpress-tv', responsive: true },\n\t},\n\t{\n\t\tname: 'amazon-kindle',\n\t\ttitle: getTitle( 'Amazon Kindle' ),\n\t\ticon: embedAmazonIcon,\n\t\tkeywords: [ __( 'ebook' ) ],\n\t\tdescription: __( 'Embed Amazon Kindle content.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/([a-z0-9-]+\\.)?(amazon|amzn)(\\.[a-z]{2,4})+\\/.+/i,\n\t\t\t/^https?:\\/\\/(www\\.)?(a\\.co|z\\.cn)\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'amazon-kindle' },\n\t},\n\t{\n\t\tname: 'pinterest',\n\t\ttitle: getTitle( 'Pinterest' ),\n\t\ticon: embedPinterestIcon,\n\t\tkeywords: [ __( 'social' ), __( 'bookmark' ) ],\n\t\tdescription: __( 'Embed Pinterest pins, boards, and profiles.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/([a-z]{2}|www)\\.pinterest\\.com(\\.(au|mx))?\\/.*/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'pinterest' },\n\t},\n\t{\n\t\tname: 'wolfram-cloud',\n\t\ttitle: getTitle( 'Wolfram' ),\n\t\ticon: embedWolframIcon,\n\t\tdescription: __( 'Embed Wolfram notebook content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?wolframcloud\\.com\\/obj\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'wolfram-cloud', responsive: true },\n\t},\n\t{\n\t\tname: 'bluesky',\n\t\ttitle: getTitle( 'Bluesky' ),\n\t\ticon: embedBlueskyIcon,\n\t\tdescription: __( 'Embed a Bluesky post.' ),\n\t\tpatterns: [ /^https?:\\/\\/bsky\\.app\\/profile\\/.+\\/post\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'bluesky' },\n\t},\n];\n\n/**\n * Add `isActive` function to all `embed` variations, if not defined.\n * `isActive` function is used to find a variation match from a created\n * Block by providing its attributes.\n */\nvariations.forEach( ( variation ) => {\n\tif ( variation.isActive ) {\n\t\treturn;\n\t}\n\tvariation.isActive = ( blockAttributes, variationAttributes ) =>\n\t\tblockAttributes.providerNameSlug ===\n\t\tvariationAttributes.providerNameSlug;\n} );\n\nexport default variations;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_icons","getTitle","providerName","sprintf","__","variations","name","title","icon","embedTwitterIcon","keywords","description","patterns","attributes","providerNameSlug","responsive","embedYouTubeIcon","embedFacebookIcon","scope","previewable","embedInstagramIcon","embedWordPressIcon","embedAudioIcon","embedSpotifyIcon","embedFlickrIcon","embedVimeoIcon","embedAnimotoIcon","embedContentIcon","embedVideoIcon","embedDailymotionIcon","embedPhotoIcon","embedPocketCastsIcon","embedRedditIcon","embedTumblrIcon","embedAmazonIcon","embedPinterestIcon","embedWolframIcon","embedBlueskyIcon","forEach","variation","isActive","blockAttributes","variationAttributes","_default","exports","default"],"sources":["@wordpress/block-library/src/embed/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tembedContentIcon,\n\tembedAudioIcon,\n\tembedPhotoIcon,\n\tembedVideoIcon,\n\tembedTwitterIcon,\n\tembedYouTubeIcon,\n\tembedFacebookIcon,\n\tembedInstagramIcon,\n\tembedWordPressIcon,\n\tembedSpotifyIcon,\n\tembedFlickrIcon,\n\tembedVimeoIcon,\n\tembedRedditIcon,\n\tembedTumblrIcon,\n\tembedAmazonIcon,\n\tembedAnimotoIcon,\n\tembedDailymotionIcon,\n\tembedPinterestIcon,\n\tembedWolframIcon,\n\tembedPocketCastsIcon,\n\tembedBlueskyIcon,\n} from './icons';\n\n/** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */\n\nfunction getTitle( providerName ) {\n\treturn sprintf(\n\t\t/* translators: %s: provider name */\n\t\t__( '%s Embed' ),\n\t\tproviderName\n\t);\n}\n\n/**\n * The embed provider services.\n *\n * @type {WPBlockVariation[]}\n */\nconst variations = [\n\t{\n\t\tname: 'twitter',\n\t\ttitle: getTitle( 'Twitter' ),\n\t\ticon: embedTwitterIcon,\n\t\tkeywords: [ 'tweet', __( 'social' ) ],\n\t\tdescription: __( 'Embed a tweet.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?twitter\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'twitter', responsive: true },\n\t},\n\t{\n\t\tname: 'youtube',\n\t\ttitle: getTitle( 'YouTube' ),\n\t\ticon: embedYouTubeIcon,\n\t\tkeywords: [ __( 'music' ), __( 'video' ) ],\n\t\tdescription: __( 'Embed a YouTube video.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/((m|www)\\.)?youtube\\.com\\/.+/i,\n\t\t\t/^https?:\\/\\/youtu\\.be\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'youtube', responsive: true },\n\t},\n\t{\n\t\t// Deprecate Facebook Embed per FB policy\n\t\t// See: https://developers.facebook.com/docs/plugins/oembed-legacy\n\t\tname: 'facebook',\n\t\ttitle: getTitle( 'Facebook' ),\n\t\ticon: embedFacebookIcon,\n\t\tkeywords: [ __( 'social' ) ],\n\t\tdescription: __( 'Embed a Facebook post.' ),\n\t\tscope: [ 'block' ],\n\t\tpatterns: [],\n\t\tattributes: {\n\t\t\tproviderNameSlug: 'facebook',\n\t\t\tpreviewable: false,\n\t\t\tresponsive: true,\n\t\t},\n\t},\n\t{\n\t\t// Deprecate Instagram per FB policy\n\t\t// See: https://developers.facebook.com/docs/instagram/oembed-legacy\n\t\tname: 'instagram',\n\t\ttitle: getTitle( 'Instagram' ),\n\t\ticon: embedInstagramIcon,\n\t\tkeywords: [ __( 'image' ), __( 'social' ) ],\n\t\tdescription: __( 'Embed an Instagram post.' ),\n\t\tscope: [ 'block' ],\n\t\tpatterns: [],\n\t\tattributes: { providerNameSlug: 'instagram', responsive: true },\n\t},\n\t{\n\t\tname: 'wordpress',\n\t\ttitle: getTitle( 'WordPress' ),\n\t\ticon: embedWordPressIcon,\n\t\tkeywords: [ __( 'post' ), __( 'blog' ) ],\n\t\tdescription: __( 'Embed a WordPress post.' ),\n\t\tattributes: {\n\t\t\tproviderNameSlug: 'wordpress',\n\t\t},\n\t},\n\t{\n\t\tname: 'soundcloud',\n\t\ttitle: getTitle( 'SoundCloud' ),\n\t\ticon: embedAudioIcon,\n\t\tkeywords: [ __( 'music' ), __( 'audio' ) ],\n\t\tdescription: __( 'Embed SoundCloud content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?soundcloud\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'soundcloud', responsive: true },\n\t},\n\t{\n\t\tname: 'spotify',\n\t\ttitle: getTitle( 'Spotify' ),\n\t\ticon: embedSpotifyIcon,\n\t\tkeywords: [ __( 'music' ), __( 'audio' ) ],\n\t\tdescription: __( 'Embed Spotify content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(open|play)\\.spotify\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'spotify', responsive: true },\n\t},\n\t{\n\t\tname: 'flickr',\n\t\ttitle: getTitle( 'Flickr' ),\n\t\ticon: embedFlickrIcon,\n\t\tkeywords: [ __( 'image' ) ],\n\t\tdescription: __( 'Embed Flickr content.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/(www\\.)?flickr\\.com\\/.+/i,\n\t\t\t/^https?:\\/\\/flic\\.kr\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'flickr', responsive: true },\n\t},\n\t{\n\t\tname: 'vimeo',\n\t\ttitle: getTitle( 'Vimeo' ),\n\t\ticon: embedVimeoIcon,\n\t\tkeywords: [ __( 'video' ) ],\n\t\tdescription: __( 'Embed a Vimeo video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?vimeo\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'vimeo', responsive: true },\n\t},\n\t{\n\t\tname: 'animoto',\n\t\ttitle: getTitle( 'Animoto' ),\n\t\ticon: embedAnimotoIcon,\n\t\tdescription: __( 'Embed an Animoto video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?(animoto|video214)\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'animoto', responsive: true },\n\t},\n\t{\n\t\tname: 'cloudup',\n\t\ttitle: getTitle( 'Cloudup' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Cloudup content.' ),\n\t\tpatterns: [ /^https?:\\/\\/cloudup\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'cloudup', responsive: true },\n\t},\n\t{\n\t\t// Deprecated since CollegeHumor content is now powered by YouTube.\n\t\tname: 'collegehumor',\n\t\ttitle: getTitle( 'CollegeHumor' ),\n\t\ticon: embedVideoIcon,\n\t\tdescription: __( 'Embed CollegeHumor content.' ),\n\t\tscope: [ 'block' ],\n\t\tpatterns: [],\n\t\tattributes: { providerNameSlug: 'collegehumor', responsive: true },\n\t},\n\t{\n\t\tname: 'crowdsignal',\n\t\ttitle: getTitle( 'Crowdsignal' ),\n\t\ticon: embedContentIcon,\n\t\tkeywords: [ 'polldaddy', __( 'survey' ) ],\n\t\tdescription: __( 'Embed Crowdsignal (formerly Polldaddy) content.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/((.+\\.)?polldaddy\\.com|poll\\.fm|.+\\.crowdsignal\\.net|.+\\.survey\\.fm)\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'crowdsignal', responsive: true },\n\t},\n\t{\n\t\tname: 'dailymotion',\n\t\ttitle: getTitle( 'Dailymotion' ),\n\t\ticon: embedDailymotionIcon,\n\t\tkeywords: [ __( 'video' ) ],\n\t\tdescription: __( 'Embed a Dailymotion video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?dailymotion\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'dailymotion', responsive: true },\n\t},\n\t{\n\t\tname: 'imgur',\n\t\ttitle: getTitle( 'Imgur' ),\n\t\ticon: embedPhotoIcon,\n\t\tdescription: __( 'Embed Imgur content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(.+\\.)?imgur\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'imgur', responsive: true },\n\t},\n\t{\n\t\tname: 'issuu',\n\t\ttitle: getTitle( 'Issuu' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Issuu content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?issuu\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'issuu', responsive: true },\n\t},\n\t{\n\t\tname: 'kickstarter',\n\t\ttitle: getTitle( 'Kickstarter' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Kickstarter content.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/(www\\.)?kickstarter\\.com\\/.+/i,\n\t\t\t/^https?:\\/\\/kck\\.st\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'kickstarter', responsive: true },\n\t},\n\t{\n\t\tname: 'mixcloud',\n\t\ttitle: getTitle( 'Mixcloud' ),\n\t\ticon: embedAudioIcon,\n\t\tkeywords: [ __( 'music' ), __( 'audio' ) ],\n\t\tdescription: __( 'Embed Mixcloud content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?mixcloud\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'mixcloud', responsive: true },\n\t},\n\t{\n\t\tname: 'pocket-casts',\n\t\ttitle: getTitle( 'Pocket Casts' ),\n\t\ticon: embedPocketCastsIcon,\n\t\tkeywords: [ __( 'podcast' ), __( 'audio' ) ],\n\t\tdescription: __( 'Embed a podcast player from Pocket Casts.' ),\n\t\tpatterns: [ /^https:\\/\\/pca.st\\/\\w+/i ],\n\t\tattributes: { providerNameSlug: 'pocket-casts', responsive: true },\n\t},\n\t{\n\t\tname: 'reddit',\n\t\ttitle: getTitle( 'Reddit' ),\n\t\ticon: embedRedditIcon,\n\t\tdescription: __( 'Embed a Reddit thread.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?reddit\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'reddit', responsive: true },\n\t},\n\t{\n\t\tname: 'reverbnation',\n\t\ttitle: getTitle( 'ReverbNation' ),\n\t\ticon: embedAudioIcon,\n\t\tdescription: __( 'Embed ReverbNation content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?reverbnation\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'reverbnation', responsive: true },\n\t},\n\t{\n\t\tname: 'scribd',\n\t\ttitle: getTitle( 'Scribd' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Scribd content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?scribd\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'scribd', responsive: true },\n\t},\n\t{\n\t\tname: 'smugmug',\n\t\ttitle: getTitle( 'SmugMug' ),\n\t\ticon: embedPhotoIcon,\n\t\tdescription: __( 'Embed SmugMug content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(.+\\.)?smugmug\\.com\\/.*/i ],\n\t\tattributes: {\n\t\t\tproviderNameSlug: 'smugmug',\n\t\t\tpreviewable: false,\n\t\t\tresponsive: true,\n\t\t},\n\t},\n\t{\n\t\tname: 'speaker-deck',\n\t\ttitle: getTitle( 'Speaker Deck' ),\n\t\ticon: embedContentIcon,\n\t\tdescription: __( 'Embed Speaker Deck content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?speakerdeck\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'speaker-deck', responsive: true },\n\t},\n\t{\n\t\tname: 'tiktok',\n\t\ttitle: getTitle( 'TikTok' ),\n\t\ticon: embedVideoIcon,\n\t\tkeywords: [ __( 'video' ) ],\n\t\tdescription: __( 'Embed a TikTok video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?tiktok\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'tiktok', responsive: true },\n\t},\n\t{\n\t\tname: 'ted',\n\t\ttitle: getTitle( 'TED' ),\n\t\ticon: embedVideoIcon,\n\t\tdescription: __( 'Embed a TED video.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.|embed\\.)?ted\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'ted', responsive: true },\n\t},\n\t{\n\t\tname: 'tumblr',\n\t\ttitle: getTitle( 'Tumblr' ),\n\t\ticon: embedTumblrIcon,\n\t\tkeywords: [ __( 'social' ) ],\n\t\tdescription: __( 'Embed a Tumblr post.' ),\n\t\tpatterns: [ /^https?:\\/\\/(.+)\\.tumblr\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'tumblr', responsive: true },\n\t},\n\t{\n\t\tname: 'videopress',\n\t\ttitle: getTitle( 'VideoPress' ),\n\t\ticon: embedVideoIcon,\n\t\tkeywords: [ __( 'video' ) ],\n\t\tdescription: __( 'Embed a VideoPress video.' ),\n\t\tpatterns: [ /^https?:\\/\\/videopress\\.com\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'videopress', responsive: true },\n\t},\n\t{\n\t\tname: 'wordpress-tv',\n\t\ttitle: getTitle( 'WordPress.tv' ),\n\t\ticon: embedVideoIcon,\n\t\tdescription: __( 'Embed a WordPress.tv video.' ),\n\t\tpatterns: [ /^https?:\\/\\/wordpress\\.tv\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'wordpress-tv', responsive: true },\n\t},\n\t{\n\t\tname: 'amazon-kindle',\n\t\ttitle: getTitle( 'Amazon Kindle' ),\n\t\ticon: embedAmazonIcon,\n\t\tkeywords: [ __( 'ebook' ) ],\n\t\tdescription: __( 'Embed Amazon Kindle content.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/([a-z0-9-]+\\.)?(amazon|amzn)(\\.[a-z]{2,4})+\\/.+/i,\n\t\t\t/^https?:\\/\\/(www\\.)?(a\\.co|z\\.cn)\\/.+/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'amazon-kindle' },\n\t},\n\t{\n\t\tname: 'pinterest',\n\t\ttitle: getTitle( 'Pinterest' ),\n\t\ticon: embedPinterestIcon,\n\t\tkeywords: [ __( 'social' ), __( 'bookmark' ) ],\n\t\tdescription: __( 'Embed Pinterest pins, boards, and profiles.' ),\n\t\tpatterns: [\n\t\t\t/^https?:\\/\\/([a-z]{2}|www)\\.pinterest\\.com(\\.(au|mx))?\\/.*/i,\n\t\t],\n\t\tattributes: { providerNameSlug: 'pinterest' },\n\t},\n\t{\n\t\tname: 'wolfram-cloud',\n\t\ttitle: getTitle( 'Wolfram' ),\n\t\ticon: embedWolframIcon,\n\t\tdescription: __( 'Embed Wolfram notebook content.' ),\n\t\tpatterns: [ /^https?:\\/\\/(www\\.)?wolframcloud\\.com\\/obj\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'wolfram-cloud', responsive: true },\n\t},\n\t{\n\t\tname: 'bluesky',\n\t\ttitle: getTitle( 'Bluesky' ),\n\t\ticon: embedBlueskyIcon,\n\t\tdescription: __( 'Embed a Bluesky post.' ),\n\t\tpatterns: [ /^https?:\\/\\/bsky\\.app\\/profile\\/.+\\/post\\/.+/i ],\n\t\tattributes: { providerNameSlug: 'bluesky' },\n\t},\n];\n\n/**\n * Add `isActive` function to all `embed` variations, if not defined.\n * `isActive` function is used to find a variation match from a created\n * Block by providing its attributes.\n */\nvariations.forEach( ( variation ) => {\n\tif ( variation.isActive ) {\n\t\treturn;\n\t}\n\tvariation.isActive = ( blockAttributes, variationAttributes ) =>\n\t\tblockAttributes.providerNameSlug ===\n\t\tvariationAttributes.providerNameSlug;\n} );\n\nexport default variations;\n"],"mappings":"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","ignoreList":[]}
@@ -224,12 +224,6 @@ function ImageEdit({
224
224
  additionalAttributes = {
225
225
  sizeSlug: newSize
226
226
  };
227
- } else {
228
- // Keep the same url when selecting the same file, so "Resolution"
229
- // option is not changed.
230
- additionalAttributes = {
231
- url
232
- };
233
227
  }
234
228
 
235
229
  // Check if default link setting should be used.
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_blocks","_components","_data","_blockEditor","_element","_i18n","_icons","_notices","_compose","_hooks","_image","_utils","_useMaxWidthObserver","_constants","_jsxRuntime","pickRelevantMediaFiles","image","size","imageProps","Object","fromEntries","entries","filter","key","includes","url","sizes","media_details","source_url","exports","isExternalImage","id","isBlobURL","hasSize","_image$sizes$size","_image$media_details$","ImageEdit","attributes","setAttributes","isSelected","isSingleSelected","className","insertBlocksAfter","onReplace","context","clientId","__unstableParentLayout","parentLayout","alt","caption","width","height","sizeSlug","aspectRatio","scale","align","metadata","temporaryURL","setTemporaryURL","useState","blob","containerRef","useRef","isMaxWidthContainerWidth","type","maxWidthObserver","maxContentWidth","useMaxWidthObserver","placeholderResizeListener","placeholderWidth","useResizeObserver","isSmallContainer","altRef","useEffect","current","captionRef","__unstableMarkNextChangeAsNotPersistent","replaceBlock","useDispatch","blockEditorStore","undefined","getSettings","getBlockRootClientId","getBlockName","canInsertBlockType","useSelect","blockEditingMode","useBlockEditingMode","createErrorNotice","noticesStore","onUploadError","message","src","onSelectImagesList","images","win","ownerDocument","defaultView","every","file","File","files","rootClientId","some","isValidFileType","__","imageBlocks","map","createBlock","createBlobURL","galleryBlock","onSelectImage","media","Array","isArray","title","imageDefaultSize","newSize","mediaAttributes","omittedCaption","restMediaAttributes","additionalAttributes","linkDestination","window","wp","view","settings","defaultProps","link","LINK_DESTINATION_NONE","LINK_DESTINATION_MEDIA","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","href","onSelectURL","newURL","useUploadMediaFromBlobURL","allowedTypes","ALLOWED_MEDIA_TYPES","onChange","onError","isExternal","mediaPreview","jsx","borderProps","useBorderProps","shadowProps","getShadowClassesAndStyles","classes","clsx","style","keys","length","blockProps","useBlockProps","ref","lockUrlControls","lockUrlControlsMessage","select","blockBindingsSource","getBlockBindingsSource","bindings","source","canUserEditValue","args","label","sprintf","placeholder","content","jsxs","Placeholder","icon","pluginsIcon","withIllustration","instructions","objectFit","children","Fragment","default","parentLayoutType","MediaPlaceholder","BlockIcon","onSelect","accept","handleUpload","value","disableMediaButtons","_default"],"sources":["@wordpress/block-library/src/image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL, createBlobURL } from '@wordpress/blob';\nimport { createBlock, getBlockBindingsSource } from '@wordpress/blocks';\nimport { Placeholder } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tBlockIcon,\n\tuseBlockProps,\n\tMediaPlaceholder,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { image as icon, plugins as pluginsIcon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useResizeObserver } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\nimport Image from './image';\nimport { isValidFileType } from './utils';\nimport { useMaxWidthObserver } from './use-max-width-observer';\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = Object.fromEntries(\n\t\tObject.entries( image ?? {} ).filter( ( [ key ] ) =>\n\t\t\t[ 'alt', 'id', 'link', 'caption' ].includes( key )\n\t\t)\n\t);\n\n\timageProps.url =\n\t\timage?.sizes?.[ size ]?.url ||\n\t\timage?.media_details?.sizes?.[ size ]?.source_url ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated the specified image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} size\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasSize( image, size ) {\n\treturn (\n\t\t'url' in ( image?.sizes?.[ size ] ?? {} ) ||\n\t\t'source_url' in ( image?.media_details?.sizes?.[ size ] ?? {} )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected: isSingleSelected,\n\tclassName,\n\tinsertBlocksAfter,\n\tonReplace,\n\tcontext,\n\tclientId,\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t\taspectRatio,\n\t\tscale,\n\t\talign,\n\t\tmetadata,\n\t} = attributes;\n\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\n\tconst containerRef = useRef();\n\t// Only observe the max width from the parent container when the parent layout is not flex nor grid.\n\t// This won't work for them because the container width changes with the image.\n\t// TODO: Find a way to observe the container width for flex and grid layouts.\n\tconst isMaxWidthContainerWidth =\n\t\t! parentLayout ||\n\t\t( parentLayout.type !== 'flex' && parentLayout.type !== 'grid' );\n\tconst [ maxWidthObserver, maxContentWidth ] = useMaxWidthObserver();\n\n\tconst [ placeholderResizeListener, { width: placeholderWidth } ] =\n\t\tuseResizeObserver();\n\n\tconst isSmallContainer = placeholderWidth && placeholderWidth < 160;\n\n\tconst altRef = useRef();\n\tuseEffect( () => {\n\t\taltRef.current = alt;\n\t}, [ alt ] );\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent, replaceBlock } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( [ 'wide', 'full' ].includes( align ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\taspectRatio: undefined,\n\t\t\t\tscale: undefined,\n\t\t\t} );\n\t\t}\n\t}, [ __unstableMarkNextChangeAsNotPersistent, align, setAttributes ] );\n\n\tconst {\n\t\tgetSettings,\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tcanInsertBlockType,\n\t} = useSelect( blockEditorStore );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tblob: undefined,\n\t\t} );\n\t}\n\n\tfunction onSelectImagesList( images ) {\n\t\tconst win = containerRef.current?.ownerDocument.defaultView;\n\n\t\tif ( images.every( ( file ) => file instanceof win.File ) ) {\n\t\t\t/** @type {File[]} */\n\t\t\tconst files = images;\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\tif ( files.some( ( file ) => ! isValidFileType( file ) ) ) {\n\t\t\t\t// Copied from the same notice in the gallery block.\n\t\t\t\tcreateErrorNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t\t),\n\t\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst imageBlocks = files\n\t\t\t\t.filter( ( file ) => isValidFileType( file ) )\n\t\t\t\t.map( ( file ) =>\n\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t} )\n\t\t\t\t);\n\n\t\t\tif ( getBlockName( rootClientId ) === 'core/gallery' ) {\n\t\t\t\treplaceBlock( clientId, imageBlocks );\n\t\t\t} else if ( canInsertBlockType( 'core/gallery', rootClientId ) ) {\n\t\t\t\tconst galleryBlock = createBlock(\n\t\t\t\t\t'core/gallery',\n\t\t\t\t\t{},\n\t\t\t\t\timageBlocks\n\t\t\t\t);\n\n\t\t\t\treplaceBlock( clientId, galleryBlock );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( Array.isArray( media ) ) {\n\t\t\tonSelectImagesList( media );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\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\tconst { imageDefaultSize } = getSettings();\n\n\t\t// Try to use the previous selected image size if its available\n\t\t// otherwise try the default image size or fallback to \"full\"\n\t\tlet newSize = 'full';\n\t\tif ( sizeSlug && hasSize( media, sizeSlug ) ) {\n\t\t\tnewSize = sizeSlug;\n\t\t} else if ( hasSize( media, imageDefaultSize ) ) {\n\t\t\tnewSize = imageDefaultSize;\n\t\t}\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, newSize );\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! mediaAttributes.caption ) {\n\t\t\tconst { caption: omittedCaption, ...restMediaAttributes } =\n\t\t\t\tmediaAttributes;\n\t\t\tmediaAttributes = restMediaAttributes;\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\tsizeSlug: newSize,\n\t\t\t};\n\t\t} else {\n\t\t\t// Keep the same url when selecting the same file, so \"Resolution\"\n\t\t\t// option is not changed.\n\t\t\tadditionalAttributes = { url };\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\tblob: undefined,\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\tsizeSlug: getSettings().imageDefaultSize,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectImage,\n\t\tonError: onUploadError,\n\t} );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName=\"edit-image-preview\"\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\n\tconst classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className ||\n\t\t\t( borderProps.style &&\n\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref: containerRef,\n\t\tclassName: classes,\n\t} );\n\n\t// Much of this description is duplicated from MediaPlaceholder.\n\tconst { lockUrlControls = false, lockUrlControlsMessage } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\n\t\t\tconst blockBindingsSource = getBlockBindingsSource(\n\t\t\t\tmetadata?.bindings?.url?.source\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! metadata?.bindings?.url &&\n\t\t\t\t\t! blockBindingsSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: metadata?.bindings?.url?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockUrlControlsMessage: blockBindingsSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\tblockBindingsSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t};\n\t\t},\n\t\t[ context, isSingleSelected, metadata?.bindings?.url ]\n\t);\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx( 'block-editor-media-placeholder', {\n\t\t\t\t\t[ borderProps.className ]:\n\t\t\t\t\t\t!! borderProps.className && ! isSingleSelected,\n\t\t\t\t} ) }\n\t\t\t\ticon={\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\t( lockUrlControls ? pluginsIcon : icon )\n\t\t\t\t}\n\t\t\t\twithIllustration={ ! isSingleSelected || isSmallContainer }\n\t\t\t\tlabel={ ! isSmallContainer && __( 'Image' ) }\n\t\t\t\tinstructions={\n\t\t\t\t\t! lockUrlControls &&\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Drag and drop an image, upload, or choose from your library.'\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tstyle={ {\n\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t! ( width && height ) && aspectRatio\n\t\t\t\t\t\t\t? aspectRatio\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\twidth: height && aspectRatio ? '100%' : width,\n\t\t\t\t\theight: width && aspectRatio ? '100%' : height,\n\t\t\t\t\tobjectFit: scale,\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{ lockUrlControls &&\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\tlockUrlControlsMessage }\n\n\t\t\t\t{ ! lockUrlControls && ! isSmallContainer && content }\n\t\t\t\t{ placeholderResizeListener }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSingleSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t\tparentLayoutType={ parentLayout?.type }\n\t\t\t\t\tmaxContentWidth={ maxContentWidth }\n\t\t\t\t/>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\thandleUpload={ ( files ) => files.length === 1 }\n\t\t\t\t\tvalue={ { id, src } }\n\t\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t\t{\n\t\t\t\t// The listener cannot be placed as the first element as it will break the in-between inserter.\n\t\t\t\t// See https://github.com/WordPress/gutenberg/blob/71134165868298fc15e22896d0c28b41b3755ff7/packages/block-editor/src/components/block-list/use-in-between-inserter.js#L120\n\t\t\t\tisSingleSelected && isMaxWidthContainerWidth && maxWidthObserver\n\t\t\t}\n\t\t</>\n\t);\n}\n\nexport default ImageEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_blocks","_components","_data","_blockEditor","_element","_i18n","_icons","_notices","_compose","_hooks","_image","_utils","_useMaxWidthObserver","_constants","_jsxRuntime","pickRelevantMediaFiles","image","size","imageProps","Object","fromEntries","entries","filter","key","includes","url","sizes","media_details","source_url","exports","isExternalImage","id","isBlobURL","hasSize","_image$sizes$size","_image$media_details$","ImageEdit","attributes","setAttributes","isSelected","isSingleSelected","className","insertBlocksAfter","onReplace","context","clientId","__unstableParentLayout","parentLayout","alt","caption","width","height","sizeSlug","aspectRatio","scale","align","metadata","temporaryURL","setTemporaryURL","useState","blob","containerRef","useRef","isMaxWidthContainerWidth","type","maxWidthObserver","maxContentWidth","useMaxWidthObserver","placeholderResizeListener","placeholderWidth","useResizeObserver","isSmallContainer","altRef","useEffect","current","captionRef","__unstableMarkNextChangeAsNotPersistent","replaceBlock","useDispatch","blockEditorStore","undefined","getSettings","getBlockRootClientId","getBlockName","canInsertBlockType","useSelect","blockEditingMode","useBlockEditingMode","createErrorNotice","noticesStore","onUploadError","message","src","onSelectImagesList","images","win","ownerDocument","defaultView","every","file","File","files","rootClientId","some","isValidFileType","__","imageBlocks","map","createBlock","createBlobURL","galleryBlock","onSelectImage","media","Array","isArray","title","imageDefaultSize","newSize","mediaAttributes","omittedCaption","restMediaAttributes","additionalAttributes","linkDestination","window","wp","view","settings","defaultProps","link","LINK_DESTINATION_NONE","LINK_DESTINATION_MEDIA","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","href","onSelectURL","newURL","useUploadMediaFromBlobURL","allowedTypes","ALLOWED_MEDIA_TYPES","onChange","onError","isExternal","mediaPreview","jsx","borderProps","useBorderProps","shadowProps","getShadowClassesAndStyles","classes","clsx","style","keys","length","blockProps","useBlockProps","ref","lockUrlControls","lockUrlControlsMessage","select","blockBindingsSource","getBlockBindingsSource","bindings","source","canUserEditValue","args","label","sprintf","placeholder","content","jsxs","Placeholder","icon","pluginsIcon","withIllustration","instructions","objectFit","children","Fragment","default","parentLayoutType","MediaPlaceholder","BlockIcon","onSelect","accept","handleUpload","value","disableMediaButtons","_default"],"sources":["@wordpress/block-library/src/image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL, createBlobURL } from '@wordpress/blob';\nimport { createBlock, getBlockBindingsSource } from '@wordpress/blocks';\nimport { Placeholder } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tBlockIcon,\n\tuseBlockProps,\n\tMediaPlaceholder,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { image as icon, plugins as pluginsIcon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useResizeObserver } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\nimport Image from './image';\nimport { isValidFileType } from './utils';\nimport { useMaxWidthObserver } from './use-max-width-observer';\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = Object.fromEntries(\n\t\tObject.entries( image ?? {} ).filter( ( [ key ] ) =>\n\t\t\t[ 'alt', 'id', 'link', 'caption' ].includes( key )\n\t\t)\n\t);\n\n\timageProps.url =\n\t\timage?.sizes?.[ size ]?.url ||\n\t\timage?.media_details?.sizes?.[ size ]?.source_url ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated the specified image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} size\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasSize( image, size ) {\n\treturn (\n\t\t'url' in ( image?.sizes?.[ size ] ?? {} ) ||\n\t\t'source_url' in ( image?.media_details?.sizes?.[ size ] ?? {} )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected: isSingleSelected,\n\tclassName,\n\tinsertBlocksAfter,\n\tonReplace,\n\tcontext,\n\tclientId,\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t\taspectRatio,\n\t\tscale,\n\t\talign,\n\t\tmetadata,\n\t} = attributes;\n\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\n\tconst containerRef = useRef();\n\t// Only observe the max width from the parent container when the parent layout is not flex nor grid.\n\t// This won't work for them because the container width changes with the image.\n\t// TODO: Find a way to observe the container width for flex and grid layouts.\n\tconst isMaxWidthContainerWidth =\n\t\t! parentLayout ||\n\t\t( parentLayout.type !== 'flex' && parentLayout.type !== 'grid' );\n\tconst [ maxWidthObserver, maxContentWidth ] = useMaxWidthObserver();\n\n\tconst [ placeholderResizeListener, { width: placeholderWidth } ] =\n\t\tuseResizeObserver();\n\n\tconst isSmallContainer = placeholderWidth && placeholderWidth < 160;\n\n\tconst altRef = useRef();\n\tuseEffect( () => {\n\t\taltRef.current = alt;\n\t}, [ alt ] );\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent, replaceBlock } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( [ 'wide', 'full' ].includes( align ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\taspectRatio: undefined,\n\t\t\t\tscale: undefined,\n\t\t\t} );\n\t\t}\n\t}, [ __unstableMarkNextChangeAsNotPersistent, align, setAttributes ] );\n\n\tconst {\n\t\tgetSettings,\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tcanInsertBlockType,\n\t} = useSelect( blockEditorStore );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tblob: undefined,\n\t\t} );\n\t}\n\n\tfunction onSelectImagesList( images ) {\n\t\tconst win = containerRef.current?.ownerDocument.defaultView;\n\n\t\tif ( images.every( ( file ) => file instanceof win.File ) ) {\n\t\t\t/** @type {File[]} */\n\t\t\tconst files = images;\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\tif ( files.some( ( file ) => ! isValidFileType( file ) ) ) {\n\t\t\t\t// Copied from the same notice in the gallery block.\n\t\t\t\tcreateErrorNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t\t),\n\t\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst imageBlocks = files\n\t\t\t\t.filter( ( file ) => isValidFileType( file ) )\n\t\t\t\t.map( ( file ) =>\n\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t} )\n\t\t\t\t);\n\n\t\t\tif ( getBlockName( rootClientId ) === 'core/gallery' ) {\n\t\t\t\treplaceBlock( clientId, imageBlocks );\n\t\t\t} else if ( canInsertBlockType( 'core/gallery', rootClientId ) ) {\n\t\t\t\tconst galleryBlock = createBlock(\n\t\t\t\t\t'core/gallery',\n\t\t\t\t\t{},\n\t\t\t\t\timageBlocks\n\t\t\t\t);\n\n\t\t\t\treplaceBlock( clientId, galleryBlock );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( Array.isArray( media ) ) {\n\t\t\tonSelectImagesList( media );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\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\tconst { imageDefaultSize } = getSettings();\n\n\t\t// Try to use the previous selected image size if its available\n\t\t// otherwise try the default image size or fallback to \"full\"\n\t\tlet newSize = 'full';\n\t\tif ( sizeSlug && hasSize( media, sizeSlug ) ) {\n\t\t\tnewSize = sizeSlug;\n\t\t} else if ( hasSize( media, imageDefaultSize ) ) {\n\t\t\tnewSize = imageDefaultSize;\n\t\t}\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, newSize );\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! mediaAttributes.caption ) {\n\t\t\tconst { caption: omittedCaption, ...restMediaAttributes } =\n\t\t\t\tmediaAttributes;\n\t\t\tmediaAttributes = restMediaAttributes;\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\tsizeSlug: newSize,\n\t\t\t};\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\tblob: undefined,\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\tsizeSlug: getSettings().imageDefaultSize,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectImage,\n\t\tonError: onUploadError,\n\t} );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName=\"edit-image-preview\"\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\n\tconst classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className ||\n\t\t\t( borderProps.style &&\n\t\t\t\tObject.keys( borderProps.style ).length > 0 ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref: containerRef,\n\t\tclassName: classes,\n\t} );\n\n\t// Much of this description is duplicated from MediaPlaceholder.\n\tconst { lockUrlControls = false, lockUrlControlsMessage } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\n\t\t\tconst blockBindingsSource = getBlockBindingsSource(\n\t\t\t\tmetadata?.bindings?.url?.source\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! metadata?.bindings?.url &&\n\t\t\t\t\t! blockBindingsSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: metadata?.bindings?.url?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockUrlControlsMessage: blockBindingsSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\tblockBindingsSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t};\n\t\t},\n\t\t[ context, isSingleSelected, metadata?.bindings?.url ]\n\t);\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx( 'block-editor-media-placeholder', {\n\t\t\t\t\t[ borderProps.className ]:\n\t\t\t\t\t\t!! borderProps.className && ! isSingleSelected,\n\t\t\t\t} ) }\n\t\t\t\ticon={\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\t( lockUrlControls ? pluginsIcon : icon )\n\t\t\t\t}\n\t\t\t\twithIllustration={ ! isSingleSelected || isSmallContainer }\n\t\t\t\tlabel={ ! isSmallContainer && __( 'Image' ) }\n\t\t\t\tinstructions={\n\t\t\t\t\t! lockUrlControls &&\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Drag and drop an image, upload, or choose from your library.'\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tstyle={ {\n\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t! ( width && height ) && aspectRatio\n\t\t\t\t\t\t\t? aspectRatio\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\twidth: height && aspectRatio ? '100%' : width,\n\t\t\t\t\theight: width && aspectRatio ? '100%' : height,\n\t\t\t\t\tobjectFit: scale,\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{ lockUrlControls &&\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\tlockUrlControlsMessage }\n\n\t\t\t\t{ ! lockUrlControls && ! isSmallContainer && content }\n\t\t\t\t{ placeholderResizeListener }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSingleSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t\tparentLayoutType={ parentLayout?.type }\n\t\t\t\t\tmaxContentWidth={ maxContentWidth }\n\t\t\t\t/>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\thandleUpload={ ( files ) => files.length === 1 }\n\t\t\t\t\tvalue={ { id, src } }\n\t\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t\t{\n\t\t\t\t// The listener cannot be placed as the first element as it will break the in-between inserter.\n\t\t\t\t// See https://github.com/WordPress/gutenberg/blob/71134165868298fc15e22896d0c28b41b3755ff7/packages/block-editor/src/components/block-list/use-in-between-inserter.js#L120\n\t\t\t\tisSingleSelected && isMaxWidthContainerWidth && maxWidthObserver\n\t\t\t}\n\t\t</>\n\t);\n}\n\nexport default ImageEdit;\n"],"mappings":"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","ignoreList":[]}
@@ -38,6 +38,7 @@ var _jsxRuntime = require("react/jsx-runtime");
38
38
  const DEFAULT_BLOCK = {
39
39
  name: 'core/navigation-link'
40
40
  };
41
+ const NESTING_BLOCK_NAMES = ['core/navigation-link', 'core/navigation-submenu'];
41
42
 
42
43
  /**
43
44
  * A React hook to determine if it's dragging within the target element.
@@ -86,18 +87,26 @@ const useIsDraggingWithin = elementRef => {
86
87
  }, [elementRef]);
87
88
  return isDraggingWithin;
88
89
  };
89
- const useIsInvalidLink = (kind, type, id) => {
90
+ const useIsInvalidLink = (kind, type, id, enabled) => {
90
91
  const isPostType = kind === 'post-type' || type === 'post' || type === 'page';
91
92
  const hasId = Number.isInteger(id);
93
+ const blockEditingMode = (0, _blockEditor.useBlockEditingMode)();
92
94
  const postStatus = (0, _data.useSelect)(select => {
93
95
  if (!isPostType) {
94
96
  return null;
95
97
  }
98
+
99
+ // Fetching the posts status is an "expensive" operation. Especially for sites with large navigations.
100
+ // When the block is rendered in a template or other disabled contexts we can skip this check in order
101
+ // to avoid all these additional requests that don't really add any value in that mode.
102
+ if (blockEditingMode === 'disabled' || !enabled) {
103
+ return null;
104
+ }
96
105
  const {
97
106
  getEntityRecord
98
107
  } = select(_coreData.store);
99
108
  return getEntityRecord('postType', type, id)?.status;
100
- }, [isPostType, type, id]);
109
+ }, [isPostType, blockEditingMode, enabled, type, id]);
101
110
 
102
111
  // Check Navigation Link validity if:
103
112
  // 1. Link is 'post-type'.
@@ -276,7 +285,6 @@ function NavigationLinkEdit({
276
285
  description,
277
286
  kind
278
287
  } = attributes;
279
- const [isInvalid, isDraft] = useIsInvalidLink(kind, type, id);
280
288
  const {
281
289
  maxNestingLevel
282
290
  } = context;
@@ -307,25 +315,36 @@ function NavigationLinkEdit({
307
315
  isAtMaxNesting,
308
316
  isTopLevelLink,
309
317
  isParentOfSelectedBlock,
310
- hasChildren
318
+ hasChildren,
319
+ validateLinkStatus
311
320
  } = (0, _data.useSelect)(select => {
312
321
  const {
313
322
  getBlockCount,
314
323
  getBlockName,
315
324
  getBlockRootClientId,
316
325
  hasSelectedInnerBlock,
317
- getBlockParentsByBlockName
326
+ getBlockParentsByBlockName,
327
+ getSelectedBlockClientId
318
328
  } = select(_blockEditor.store);
329
+ const rootClientId = getBlockRootClientId(clientId);
330
+ const isTopLevel = getBlockName(rootClientId) === 'core/navigation';
331
+ const selectedBlockClientId = getSelectedBlockClientId();
332
+ const rootNavigationClientId = isTopLevel ? rootClientId : getBlockParentsByBlockName(clientId, 'core/navigation')[0];
333
+
334
+ // Enable when the root Navigation block is selected or any of its inner blocks.
335
+ const enableLinkStatusValidation = selectedBlockClientId === rootNavigationClientId || hasSelectedInnerBlock(rootNavigationClientId, true);
319
336
  return {
320
- isAtMaxNesting: getBlockParentsByBlockName(clientId, ['core/navigation-link', 'core/navigation-submenu']).length >= maxNestingLevel,
321
- isTopLevelLink: getBlockName(getBlockRootClientId(clientId)) === 'core/navigation',
337
+ isAtMaxNesting: getBlockParentsByBlockName(clientId, NESTING_BLOCK_NAMES).length >= maxNestingLevel,
338
+ isTopLevelLink: isTopLevel,
322
339
  isParentOfSelectedBlock: hasSelectedInnerBlock(clientId, true),
323
- hasChildren: !!getBlockCount(clientId)
340
+ hasChildren: !!getBlockCount(clientId),
341
+ validateLinkStatus: enableLinkStatusValidation
324
342
  };
325
343
  }, [clientId, maxNestingLevel]);
326
344
  const {
327
345
  getBlocks
328
346
  } = (0, _data.useSelect)(_blockEditor.store);
347
+ const [isInvalid, isDraft] = useIsInvalidLink(kind, type, id, validateLinkStatus);
329
348
 
330
349
  /**
331
350
  * Transform to submenu block.