@wordpress/block-library 7.14.6 → 7.14.8

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.
@@ -61,11 +61,14 @@ function useOutdentListItem(clientId) {
61
61
  canOutdent
62
62
  } = (0, _data.useSelect)(innerSelect => {
63
63
  const {
64
- getBlockRootClientId
64
+ getBlockRootClientId,
65
+ getBlockName
65
66
  } = innerSelect(_blockEditor.store);
66
67
  const grandParentId = getBlockRootClientId(getBlockRootClientId(clientId));
68
+ const grandParentName = getBlockName(grandParentId);
69
+ const isListItem = grandParentName === listItemName;
67
70
  return {
68
- canOutdent: !!grandParentId
71
+ canOutdent: isListItem
69
72
  };
70
73
  }, [clientId]);
71
74
  const {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-outdent-list-item.js"],"names":["useOutdentListItem","clientId","registry","canOutdent","innerSelect","getBlockRootClientId","blockEditorStore","grandParentId","moveBlocksToPosition","removeBlock","insertBlock","updateBlockListSettings","getBlockName","getBlockOrder","getBlockIndex","getSelectedBlockClientIds","getBlock","getBlockListSettings","getParentListItemId","id","listId","parentListItemId","listItemName","clientIds","length","firstClientId","parentListId","lastClientId","order","followingListItems","slice","batch","nestedListId","nestedListBlock"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { castArray } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch, useRegistry } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as listItemName } from '../block.json';\n\nexport default function useOutdentListItem( clientId ) {\n\tconst registry = useRegistry();\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId } = innerSelect( blockEditorStore );\n\t\t\tconst grandParentId = getBlockRootClientId(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tcanOutdent: !! grandParentId,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\tmoveBlocksToPosition,\n\t\tremoveBlock,\n\t\tinsertBlock,\n\t\tupdateBlockListSettings,\n\t} = useDispatch( blockEditorStore );\n\tconst {\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tgetBlockOrder,\n\t\tgetBlockIndex,\n\t\tgetSelectedBlockClientIds,\n\t\tgetBlock,\n\t\tgetBlockListSettings,\n\t} = useSelect( blockEditorStore );\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( ( clientIds = getSelectedBlockClientIds() ) => {\n\t\t\tclientIds = castArray( clientIds );\n\n\t\t\tif ( ! clientIds.length ) return;\n\n\t\t\tconst firstClientId = clientIds[ 0 ];\n\n\t\t\t// Can't outdent if it's not a list item.\n\t\t\tif ( getBlockName( firstClientId ) !== listItemName ) return;\n\n\t\t\tconst parentListItemId = getParentListItemId( firstClientId );\n\n\t\t\t// Can't outdent if it's at the top level.\n\t\t\tif ( ! parentListItemId ) return;\n\n\t\t\tconst parentListId = getBlockRootClientId( firstClientId );\n\t\t\tconst lastClientId = clientIds[ clientIds.length - 1 ];\n\t\t\tconst order = getBlockOrder( parentListId );\n\t\t\tconst followingListItems = order.slice(\n\t\t\t\tgetBlockIndex( lastClientId ) + 1\n\t\t\t);\n\n\t\t\tregistry.batch( () => {\n\t\t\t\tif ( followingListItems.length ) {\n\t\t\t\t\tlet nestedListId = getBlockOrder( firstClientId )[ 0 ];\n\n\t\t\t\t\tif ( ! nestedListId ) {\n\t\t\t\t\t\tconst nestedListBlock = cloneBlock(\n\t\t\t\t\t\t\tgetBlock( parentListId ),\n\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\tnestedListId = nestedListBlock.clientId;\n\t\t\t\t\t\tinsertBlock( nestedListBlock, 0, firstClientId, false );\n\t\t\t\t\t\t// Immediately update the block list settings, otherwise\n\t\t\t\t\t\t// blocks can't be moved here due to canInsert checks.\n\t\t\t\t\t\tupdateBlockListSettings(\n\t\t\t\t\t\t\tnestedListId,\n\t\t\t\t\t\t\tgetBlockListSettings( parentListId )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tfollowingListItems,\n\t\t\t\t\t\tparentListId,\n\t\t\t\t\t\tnestedListId\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\tclientIds,\n\t\t\t\t\tparentListId,\n\t\t\t\t\tgetBlockRootClientId( parentListItemId ),\n\t\t\t\t\tgetBlockIndex( parentListItemId ) + 1\n\t\t\t\t);\n\t\t\t\tif ( ! getBlockOrder( parentListId ).length ) {\n\t\t\t\t\tremoveBlock( parentListId );\n\t\t\t\t}\n\t\t\t} );\n\t\t}, [] ),\n\t];\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-outdent-list-item.js"],"names":["useOutdentListItem","clientId","registry","canOutdent","innerSelect","getBlockRootClientId","getBlockName","blockEditorStore","grandParentId","grandParentName","isListItem","listItemName","moveBlocksToPosition","removeBlock","insertBlock","updateBlockListSettings","getBlockOrder","getBlockIndex","getSelectedBlockClientIds","getBlock","getBlockListSettings","getParentListItemId","id","listId","parentListItemId","clientIds","length","firstClientId","parentListId","lastClientId","order","followingListItems","slice","batch","nestedListId","nestedListBlock"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { castArray } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch, useRegistry } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as listItemName } from '../block.json';\n\nexport default function useOutdentListItem( clientId ) {\n\tconst registry = useRegistry();\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlockName } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst grandParentId = getBlockRootClientId(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\tconst grandParentName = getBlockName( grandParentId );\n\t\t\tconst isListItem = grandParentName === listItemName;\n\n\t\t\treturn {\n\t\t\t\tcanOutdent: isListItem,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\tmoveBlocksToPosition,\n\t\tremoveBlock,\n\t\tinsertBlock,\n\t\tupdateBlockListSettings,\n\t} = useDispatch( blockEditorStore );\n\tconst {\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tgetBlockOrder,\n\t\tgetBlockIndex,\n\t\tgetSelectedBlockClientIds,\n\t\tgetBlock,\n\t\tgetBlockListSettings,\n\t} = useSelect( blockEditorStore );\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( ( clientIds = getSelectedBlockClientIds() ) => {\n\t\t\tclientIds = castArray( clientIds );\n\n\t\t\tif ( ! clientIds.length ) return;\n\n\t\t\tconst firstClientId = clientIds[ 0 ];\n\n\t\t\t// Can't outdent if it's not a list item.\n\t\t\tif ( getBlockName( firstClientId ) !== listItemName ) return;\n\n\t\t\tconst parentListItemId = getParentListItemId( firstClientId );\n\n\t\t\t// Can't outdent if it's at the top level.\n\t\t\tif ( ! parentListItemId ) return;\n\n\t\t\tconst parentListId = getBlockRootClientId( firstClientId );\n\t\t\tconst lastClientId = clientIds[ clientIds.length - 1 ];\n\t\t\tconst order = getBlockOrder( parentListId );\n\t\t\tconst followingListItems = order.slice(\n\t\t\t\tgetBlockIndex( lastClientId ) + 1\n\t\t\t);\n\n\t\t\tregistry.batch( () => {\n\t\t\t\tif ( followingListItems.length ) {\n\t\t\t\t\tlet nestedListId = getBlockOrder( firstClientId )[ 0 ];\n\n\t\t\t\t\tif ( ! nestedListId ) {\n\t\t\t\t\t\tconst nestedListBlock = cloneBlock(\n\t\t\t\t\t\t\tgetBlock( parentListId ),\n\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\tnestedListId = nestedListBlock.clientId;\n\t\t\t\t\t\tinsertBlock( nestedListBlock, 0, firstClientId, false );\n\t\t\t\t\t\t// Immediately update the block list settings, otherwise\n\t\t\t\t\t\t// blocks can't be moved here due to canInsert checks.\n\t\t\t\t\t\tupdateBlockListSettings(\n\t\t\t\t\t\t\tnestedListId,\n\t\t\t\t\t\t\tgetBlockListSettings( parentListId )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tfollowingListItems,\n\t\t\t\t\t\tparentListId,\n\t\t\t\t\t\tnestedListId\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\tclientIds,\n\t\t\t\t\tparentListId,\n\t\t\t\t\tgetBlockRootClientId( parentListItemId ),\n\t\t\t\t\tgetBlockIndex( parentListItemId ) + 1\n\t\t\t\t);\n\t\t\t\tif ( ! getBlockOrder( parentListId ).length ) {\n\t\t\t\t\tremoveBlock( parentListId );\n\t\t\t\t}\n\t\t\t} );\n\t\t}, [] ),\n\t];\n}\n"]}
@@ -48,11 +48,14 @@ export default function useOutdentListItem(clientId) {
48
48
  canOutdent
49
49
  } = useSelect(innerSelect => {
50
50
  const {
51
- getBlockRootClientId
51
+ getBlockRootClientId,
52
+ getBlockName
52
53
  } = innerSelect(blockEditorStore);
53
54
  const grandParentId = getBlockRootClientId(getBlockRootClientId(clientId));
55
+ const grandParentName = getBlockName(grandParentId);
56
+ const isListItem = grandParentName === listItemName;
54
57
  return {
55
- canOutdent: !!grandParentId
58
+ canOutdent: isListItem
56
59
  };
57
60
  }, [clientId]);
58
61
  const {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-outdent-list-item.js"],"names":["castArray","useCallback","useSelect","useDispatch","useRegistry","store","blockEditorStore","cloneBlock","useOutdentListItem","clientId","registry","canOutdent","innerSelect","getBlockRootClientId","grandParentId","moveBlocksToPosition","removeBlock","insertBlock","updateBlockListSettings","getBlockName","getBlockOrder","getBlockIndex","getSelectedBlockClientIds","getBlock","getBlockListSettings","getParentListItemId","id","listId","parentListItemId","listItemName","clientIds","length","firstClientId","parentListId","lastClientId","order","followingListItems","slice","batch","nestedListId","nestedListBlock"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { castArray } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch, useRegistry } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as listItemName } from '../block.json';\n\nexport default function useOutdentListItem( clientId ) {\n\tconst registry = useRegistry();\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId } = innerSelect( blockEditorStore );\n\t\t\tconst grandParentId = getBlockRootClientId(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tcanOutdent: !! grandParentId,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\tmoveBlocksToPosition,\n\t\tremoveBlock,\n\t\tinsertBlock,\n\t\tupdateBlockListSettings,\n\t} = useDispatch( blockEditorStore );\n\tconst {\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tgetBlockOrder,\n\t\tgetBlockIndex,\n\t\tgetSelectedBlockClientIds,\n\t\tgetBlock,\n\t\tgetBlockListSettings,\n\t} = useSelect( blockEditorStore );\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( ( clientIds = getSelectedBlockClientIds() ) => {\n\t\t\tclientIds = castArray( clientIds );\n\n\t\t\tif ( ! clientIds.length ) return;\n\n\t\t\tconst firstClientId = clientIds[ 0 ];\n\n\t\t\t// Can't outdent if it's not a list item.\n\t\t\tif ( getBlockName( firstClientId ) !== listItemName ) return;\n\n\t\t\tconst parentListItemId = getParentListItemId( firstClientId );\n\n\t\t\t// Can't outdent if it's at the top level.\n\t\t\tif ( ! parentListItemId ) return;\n\n\t\t\tconst parentListId = getBlockRootClientId( firstClientId );\n\t\t\tconst lastClientId = clientIds[ clientIds.length - 1 ];\n\t\t\tconst order = getBlockOrder( parentListId );\n\t\t\tconst followingListItems = order.slice(\n\t\t\t\tgetBlockIndex( lastClientId ) + 1\n\t\t\t);\n\n\t\t\tregistry.batch( () => {\n\t\t\t\tif ( followingListItems.length ) {\n\t\t\t\t\tlet nestedListId = getBlockOrder( firstClientId )[ 0 ];\n\n\t\t\t\t\tif ( ! nestedListId ) {\n\t\t\t\t\t\tconst nestedListBlock = cloneBlock(\n\t\t\t\t\t\t\tgetBlock( parentListId ),\n\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\tnestedListId = nestedListBlock.clientId;\n\t\t\t\t\t\tinsertBlock( nestedListBlock, 0, firstClientId, false );\n\t\t\t\t\t\t// Immediately update the block list settings, otherwise\n\t\t\t\t\t\t// blocks can't be moved here due to canInsert checks.\n\t\t\t\t\t\tupdateBlockListSettings(\n\t\t\t\t\t\t\tnestedListId,\n\t\t\t\t\t\t\tgetBlockListSettings( parentListId )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tfollowingListItems,\n\t\t\t\t\t\tparentListId,\n\t\t\t\t\t\tnestedListId\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\tclientIds,\n\t\t\t\t\tparentListId,\n\t\t\t\t\tgetBlockRootClientId( parentListItemId ),\n\t\t\t\t\tgetBlockIndex( parentListItemId ) + 1\n\t\t\t\t);\n\t\t\t\tif ( ! getBlockOrder( parentListId ).length ) {\n\t\t\t\t\tremoveBlock( parentListId );\n\t\t\t\t}\n\t\t\t} );\n\t\t}, [] ),\n\t];\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-outdent-list-item.js"],"names":["castArray","useCallback","useSelect","useDispatch","useRegistry","store","blockEditorStore","cloneBlock","useOutdentListItem","clientId","registry","canOutdent","innerSelect","getBlockRootClientId","getBlockName","grandParentId","grandParentName","isListItem","listItemName","moveBlocksToPosition","removeBlock","insertBlock","updateBlockListSettings","getBlockOrder","getBlockIndex","getSelectedBlockClientIds","getBlock","getBlockListSettings","getParentListItemId","id","listId","parentListItemId","clientIds","length","firstClientId","parentListId","lastClientId","order","followingListItems","slice","batch","nestedListId","nestedListBlock"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { castArray } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch, useRegistry } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as listItemName } from '../block.json';\n\nexport default function useOutdentListItem( clientId ) {\n\tconst registry = useRegistry();\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlockName } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst grandParentId = getBlockRootClientId(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\tconst grandParentName = getBlockName( grandParentId );\n\t\t\tconst isListItem = grandParentName === listItemName;\n\n\t\t\treturn {\n\t\t\t\tcanOutdent: isListItem,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\tmoveBlocksToPosition,\n\t\tremoveBlock,\n\t\tinsertBlock,\n\t\tupdateBlockListSettings,\n\t} = useDispatch( blockEditorStore );\n\tconst {\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tgetBlockOrder,\n\t\tgetBlockIndex,\n\t\tgetSelectedBlockClientIds,\n\t\tgetBlock,\n\t\tgetBlockListSettings,\n\t} = useSelect( blockEditorStore );\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( ( clientIds = getSelectedBlockClientIds() ) => {\n\t\t\tclientIds = castArray( clientIds );\n\n\t\t\tif ( ! clientIds.length ) return;\n\n\t\t\tconst firstClientId = clientIds[ 0 ];\n\n\t\t\t// Can't outdent if it's not a list item.\n\t\t\tif ( getBlockName( firstClientId ) !== listItemName ) return;\n\n\t\t\tconst parentListItemId = getParentListItemId( firstClientId );\n\n\t\t\t// Can't outdent if it's at the top level.\n\t\t\tif ( ! parentListItemId ) return;\n\n\t\t\tconst parentListId = getBlockRootClientId( firstClientId );\n\t\t\tconst lastClientId = clientIds[ clientIds.length - 1 ];\n\t\t\tconst order = getBlockOrder( parentListId );\n\t\t\tconst followingListItems = order.slice(\n\t\t\t\tgetBlockIndex( lastClientId ) + 1\n\t\t\t);\n\n\t\t\tregistry.batch( () => {\n\t\t\t\tif ( followingListItems.length ) {\n\t\t\t\t\tlet nestedListId = getBlockOrder( firstClientId )[ 0 ];\n\n\t\t\t\t\tif ( ! nestedListId ) {\n\t\t\t\t\t\tconst nestedListBlock = cloneBlock(\n\t\t\t\t\t\t\tgetBlock( parentListId ),\n\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\tnestedListId = nestedListBlock.clientId;\n\t\t\t\t\t\tinsertBlock( nestedListBlock, 0, firstClientId, false );\n\t\t\t\t\t\t// Immediately update the block list settings, otherwise\n\t\t\t\t\t\t// blocks can't be moved here due to canInsert checks.\n\t\t\t\t\t\tupdateBlockListSettings(\n\t\t\t\t\t\t\tnestedListId,\n\t\t\t\t\t\t\tgetBlockListSettings( parentListId )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tfollowingListItems,\n\t\t\t\t\t\tparentListId,\n\t\t\t\t\t\tnestedListId\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\tclientIds,\n\t\t\t\t\tparentListId,\n\t\t\t\t\tgetBlockRootClientId( parentListItemId ),\n\t\t\t\t\tgetBlockIndex( parentListItemId ) + 1\n\t\t\t\t);\n\t\t\t\tif ( ! getBlockOrder( parentListId ).length ) {\n\t\t\t\t\tremoveBlock( parentListId );\n\t\t\t\t}\n\t\t\t} );\n\t\t}, [] ),\n\t];\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-library",
3
- "version": "7.14.6",
3
+ "version": "7.14.8",
4
4
  "description": "Block library for the WordPress editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -35,9 +35,9 @@
35
35
  "@wordpress/api-fetch": "^6.14.1",
36
36
  "@wordpress/autop": "^3.17.1",
37
37
  "@wordpress/blob": "^3.17.1",
38
- "@wordpress/block-editor": "^10.0.6",
38
+ "@wordpress/block-editor": "^10.0.7",
39
39
  "@wordpress/blocks": "^11.16.4",
40
- "@wordpress/components": "^21.0.5",
40
+ "@wordpress/components": "^21.0.6",
41
41
  "@wordpress/compose": "^5.15.2",
42
42
  "@wordpress/core-data": "^5.0.4",
43
43
  "@wordpress/data": "^7.1.3",
@@ -52,9 +52,9 @@
52
52
  "@wordpress/keycodes": "^3.17.1",
53
53
  "@wordpress/notices": "^3.17.3",
54
54
  "@wordpress/primitives": "^3.15.1",
55
- "@wordpress/reusable-blocks": "^3.15.6",
55
+ "@wordpress/reusable-blocks": "^3.15.7",
56
56
  "@wordpress/rich-text": "^5.15.3",
57
- "@wordpress/server-side-render": "^3.15.5",
57
+ "@wordpress/server-side-render": "^3.15.6",
58
58
  "@wordpress/url": "^3.18.1",
59
59
  "@wordpress/viewport": "^4.15.3",
60
60
  "change-case": "^4.1.2",
@@ -73,5 +73,5 @@
73
73
  "publishConfig": {
74
74
  "access": "public"
75
75
  },
76
- "gitHead": "e0bb20cabd2152c8f0f6758e1b4e17fa24c5e588"
76
+ "gitHead": "84269cffad0bab2b10e6b6da8e275716fcc8c57b"
77
77
  }
@@ -127,7 +127,7 @@ function render_block_core_avatar( $attributes, $content, $block ) {
127
127
  $label = 'aria-label="' . sprintf( esc_attr__( '(%s website link, opens in a new tab)' ), $comment->comment_author ) . '"';
128
128
  }
129
129
  // translators: %1$s: Comment Author website link. %2$s: Link target. %3$s Aria label. %4$s Avatar image.
130
- $avatar_block = sprintf( '<a href="%1$s" target="%2$s" %3$s class="wp-block-avatar__link">%4$s</a>', $comment->comment_author_url, esc_attr( $attributes['linkTarget'] ), $label, $avatar_block );
130
+ $avatar_block = sprintf( '<a href="%1$s" target="%2$s" %3$s class="wp-block-avatar__link">%4$s</a>', esc_url( $comment->comment_author_url ), esc_attr( $attributes['linkTarget'] ), $label, $avatar_block );
131
131
  }
132
132
  return sprintf( '<div %1s>%2s</div>', $wrapper_attributes, $avatar_block );
133
133
  }
@@ -20,12 +20,16 @@ export default function useOutdentListItem( clientId ) {
20
20
  const registry = useRegistry();
21
21
  const { canOutdent } = useSelect(
22
22
  ( innerSelect ) => {
23
- const { getBlockRootClientId } = innerSelect( blockEditorStore );
23
+ const { getBlockRootClientId, getBlockName } =
24
+ innerSelect( blockEditorStore );
24
25
  const grandParentId = getBlockRootClientId(
25
26
  getBlockRootClientId( clientId )
26
27
  );
28
+ const grandParentName = getBlockName( grandParentId );
29
+ const isListItem = grandParentName === listItemName;
30
+
27
31
  return {
28
- canOutdent: !! grandParentId,
32
+ canOutdent: isListItem,
29
33
  };
30
34
  },
31
35
  [ clientId ]
@@ -646,7 +646,7 @@ function render_block_core_navigation( $attributes, $content, $block ) {
646
646
  $toggle_aria_label_close,
647
647
  esc_attr( implode( ' ', $responsive_container_classes ) ),
648
648
  esc_attr( implode( ' ', $open_button_classes ) ),
649
- safecss_filter_attr( $colors['overlay_inline_styles'] ),
649
+ esc_attr( safecss_filter_attr( $colors['overlay_inline_styles'] ) ),
650
650
  __( 'Menu' ),
651
651
  $toggle_button_content,
652
652
  $toggle_close_button_content
@@ -100,7 +100,7 @@ function block_core_navigation_link_build_css_font_sizes( $context ) {
100
100
  // Add the custom font size inline style.
101
101
  $font_sizes['inline_styles'] = sprintf(
102
102
  'font-size: %s;',
103
- gutenberg_get_typography_font_size_value(
103
+ wp_get_typography_font_size_value(
104
104
  array(
105
105
  'size' => $context['style']['typography']['fontSize'],
106
106
  )
@@ -100,7 +100,7 @@ function block_core_navigation_submenu_build_css_font_sizes( $context ) {
100
100
  // Add the custom font size inline style.
101
101
  $font_sizes['inline_styles'] = sprintf(
102
102
  'font-size: %s;',
103
- gutenberg_get_typography_font_size_value(
103
+ wp_get_typography_font_size_value(
104
104
  array(
105
105
  'size' => $context['style']['typography']['fontSize'],
106
106
  )
@@ -121,7 +121,7 @@ function block_core_page_list_build_css_font_sizes( $context ) {
121
121
  // Add the custom font size inline style.
122
122
  $font_sizes['inline_styles'] = sprintf(
123
123
  'font-size: %s;',
124
- gutenberg_get_typography_font_size_value(
124
+ wp_get_typography_font_size_value(
125
125
  array(
126
126
  'size' => $context['style']['typography']['fontSize'],
127
127
  )
package/src/rss/index.php CHANGED
@@ -20,7 +20,7 @@ function render_block_core_rss( $attributes ) {
20
20
  $rss = fetch_feed( $attributes['feedURL'] );
21
21
 
22
22
  if ( is_wp_error( $rss ) ) {
23
- return '<div class="components-placeholder"><div class="notice notice-error"><strong>' . __( 'RSS Error:' ) . '</strong> ' . $rss->get_error_message() . '</div></div>';
23
+ return '<div class="components-placeholder"><div class="notice notice-error"><strong>' . __( 'RSS Error:' ) . '</strong> ' . esc_html( $rss->get_error_message() ) . '</div></div>';
24
24
  }
25
25
 
26
26
  if ( ! $rss->get_item_quantity() ) {
@@ -48,8 +48,8 @@ function render_block_core_rss( $attributes ) {
48
48
  if ( $date ) {
49
49
  $date = sprintf(
50
50
  '<time datetime="%1$s" class="wp-block-rss__item-publish-date">%2$s</time> ',
51
- date_i18n( get_option( 'c' ), $date ),
52
- date_i18n( get_option( 'date_format' ), $date )
51
+ esc_attr( date_i18n( get_option( 'c' ), $date ) ),
52
+ esc_attr( date_i18n( get_option( 'date_format' ), $date ) )
53
53
  );
54
54
  }
55
55
  }
@@ -367,12 +367,12 @@ function styles_for_block_core_search( $attributes ) {
367
367
  // Add color styles.
368
368
  $has_text_color = ! empty( $attributes['style']['color']['text'] );
369
369
  if ( $has_text_color ) {
370
- $button_styles[] = sprintf( 'color: %s;', esc_attr( $attributes['style']['color']['text'] ) );
370
+ $button_styles[] = sprintf( 'color: %s;', $attributes['style']['color']['text'] );
371
371
  }
372
372
 
373
373
  $has_background_color = ! empty( $attributes['style']['color']['background'] );
374
374
  if ( $has_background_color ) {
375
- $button_styles[] = sprintf( 'background-color: %s;', esc_attr( $attributes['style']['color']['background'] ) );
375
+ $button_styles[] = sprintf( 'background-color: %s;', $attributes['style']['color']['background'] );
376
376
  }
377
377
 
378
378
  $has_custom_gradient = ! empty( $attributes['style']['color']['gradient'] );
@@ -399,9 +399,9 @@ function styles_for_block_core_search( $attributes ) {
399
399
  }
400
400
 
401
401
  return array(
402
- 'input' => ! empty( $input_styles ) ? sprintf( ' style="%s"', safecss_filter_attr( implode( ' ', $input_styles ) ) ) : '',
403
- 'button' => ! empty( $button_styles ) ? sprintf( ' style="%s"', safecss_filter_attr( implode( ' ', $button_styles ) ) ) : '',
404
- 'wrapper' => ! empty( $wrapper_styles ) ? sprintf( ' style="%s"', safecss_filter_attr( implode( ' ', $wrapper_styles ) ) ) : '',
402
+ 'input' => ! empty( $input_styles ) ? sprintf( ' style="%s"', esc_attr( safecss_filter_attr( implode( ' ', $input_styles ) ) ) ) : '',
403
+ 'button' => ! empty( $button_styles ) ? sprintf( ' style="%s"', esc_attr( safecss_filter_attr( implode( ' ', $button_styles ) ) ) ) : '',
404
+ 'wrapper' => ! empty( $wrapper_styles ) ? sprintf( ' style="%s"', esc_attr( safecss_filter_attr( implode( ' ', $wrapper_styles ) ) ) ) : '',
405
405
  'label' => ! empty( $label_styles ) ? sprintf( ' style="%s"', esc_attr( safecss_filter_attr( implode( ' ', $label_styles ) ) ) ) : '',
406
406
  );
407
407
  }
@@ -444,7 +444,7 @@ function get_typography_styles_for_block_core_search( $attributes ) {
444
444
  if ( ! empty( $attributes['style']['typography']['fontSize'] ) ) {
445
445
  $typography_styles[] = sprintf(
446
446
  'font-size: %s;',
447
- gutenberg_get_typography_font_size_value(
447
+ wp_get_typography_font_size_value(
448
448
  array(
449
449
  'size' => $attributes['style']['typography']['fontSize'],
450
450
  )