@wordpress/patterns 2.40.1 → 2.40.2-next.v.202602271551.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -100,7 +100,7 @@ function PatternsManageButton({ clientId }) {
100
100
  });
101
101
  }
102
102
  },
103
- children: (0, import_i18n.__)("Disconnect pattern")
103
+ children: isSyncedPattern ? (0, import_i18n.__)("Disconnect pattern") : (0, import_i18n.__)("Detach pattern")
104
104
  }
105
105
  ),
106
106
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.MenuItem, { href: managePatternsUrl, children: (0, import_i18n.__)("Manage patterns") })
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/components/patterns-manage-button.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { isReusableBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { addQueryArgs } from '@wordpress/url';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as patternsStore } from '../store';\nimport { unlock } from '../lock-unlock';\n\nfunction PatternsManageButton( { clientId } ) {\n\tconst {\n\t\tattributes,\n\t\tcanDetach,\n\t\tisVisible,\n\t\tmanagePatternsUrl,\n\t\tisSyncedPattern,\n\t\tisUnsyncedPattern,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canRemoveBlock, getBlock } = select( blockEditorStore );\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\tconst block = getBlock( clientId );\n\n\t\t\tconst _isUnsyncedPattern =\n\t\t\t\t!! block?.attributes?.metadata?.patternName;\n\n\t\t\tconst _isSyncedPattern =\n\t\t\t\t!! block &&\n\t\t\t\tisReusableBlock( block ) &&\n\t\t\t\t!! canUser( 'update', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_block',\n\t\t\t\t\tid: block.attributes.ref,\n\t\t\t\t} );\n\n\t\t\treturn {\n\t\t\t\tattributes: block.attributes,\n\t\t\t\t// For unsynced patterns, detaching is simply removing the `patternName` attribute.\n\t\t\t\t// For synced patterns, the `core:block` block is replaced with its inner blocks,\n\t\t\t\t// so checking whether `canRemoveBlock` is possible is required.\n\t\t\t\tcanDetach:\n\t\t\t\t\t_isUnsyncedPattern ||\n\t\t\t\t\t( _isSyncedPattern && canRemoveBlock( clientId ) ),\n\t\t\t\tisUnsyncedPattern: _isUnsyncedPattern,\n\t\t\t\tisSyncedPattern: _isSyncedPattern,\n\t\t\t\tisVisible: _isUnsyncedPattern || _isSyncedPattern,\n\t\t\t\t// The site editor and templates both check whether the user\n\t\t\t\t// has edit_theme_options capabilities. We can leverage that here\n\t\t\t\t// and omit the manage patterns link if the user can't access it.\n\t\t\t\tmanagePatternsUrl: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_template',\n\t\t\t\t} )\n\t\t\t\t\t? addQueryArgs( 'site-editor.php', {\n\t\t\t\t\t\t\tp: '/pattern',\n\t\t\t\t\t } )\n\t\t\t\t\t: addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\tpost_type: 'wp_block',\n\t\t\t\t\t } ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\n\t// Ignore reason: false positive of the lint rule.\n\t// eslint-disable-next-line @wordpress/no-unused-vars-before-return\n\tconst { convertSyncedPatternToStatic } = unlock(\n\t\tuseDispatch( patternsStore )\n\t);\n\n\tif ( ! isVisible ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ canDetach && (\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tif ( isSyncedPattern ) {\n\t\t\t\t\t\t\tconvertSyncedPatternToStatic( clientId );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ( isUnsyncedPattern ) {\n\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\tpatternName,\n\t\t\t\t\t\t\t\t...attributesWithoutPatternName\n\t\t\t\t\t\t\t} = attributes?.metadata ?? {};\n\t\t\t\t\t\t\tupdateBlockAttributes( clientId, {\n\t\t\t\t\t\t\t\tmetadata: attributesWithoutPatternName,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Disconnect pattern' ) }\n\t\t\t\t</MenuItem>\n\t\t\t) }\n\t\t\t<MenuItem href={ managePatternsUrl }>\n\t\t\t\t{ __( 'Manage patterns' ) }\n\t\t\t</MenuItem>\n\t\t</>\n\t);\n}\n\nexport default PatternsManageButton;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,wBAAyB;AACzB,kBAAmB;AACnB,oBAAgC;AAChC,kBAAuC;AACvC,0BAA0C;AAC1C,iBAA6B;AAC7B,uBAAmC;AAKnC,mBAAuC;AACvC,yBAAuB;AAsErB;AApEF,SAAS,qBAAsB,EAAE,SAAS,GAAI;AAC7C,QAAM;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,QAAI;AAAA,IACH,CAAE,WAAY;AACb,YAAM,EAAE,gBAAgB,SAAS,IAAI,OAAQ,oBAAAA,KAAiB;AAC9D,YAAM,EAAE,QAAQ,IAAI,OAAQ,iBAAAC,KAAU;AACtC,YAAM,QAAQ,SAAU,QAAS;AAEjC,YAAM,qBACL,CAAC,CAAE,OAAO,YAAY,UAAU;AAEjC,YAAM,mBACL,CAAC,CAAE,aACH,+BAAiB,KAAM,KACvB,CAAC,CAAE,QAAS,UAAU;AAAA,QACrB,MAAM;AAAA,QACN,MAAM;AAAA,QACN,IAAI,MAAM,WAAW;AAAA,MACtB,CAAE;AAEH,aAAO;AAAA,QACN,YAAY,MAAM;AAAA;AAAA;AAAA;AAAA,QAIlB,WACC,sBACE,oBAAoB,eAAgB,QAAS;AAAA,QAChD,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,QACjB,WAAW,sBAAsB;AAAA;AAAA;AAAA;AAAA,QAIjC,mBAAmB,QAAS,UAAU;AAAA,UACrC,MAAM;AAAA,UACN,MAAM;AAAA,QACP,CAAE,QACC,yBAAc,mBAAmB;AAAA,UACjC,GAAG;AAAA,QACH,CAAE,QACF,yBAAc,YAAY;AAAA,UAC1B,WAAW;AAAA,QACX,CAAE;AAAA,MACN;AAAA,IACD;AAAA,IACA,CAAE,QAAS;AAAA,EACZ;AAEA,QAAM,EAAE,sBAAsB,QAAI,yBAAa,oBAAAD,KAAiB;AAIhE,QAAM,EAAE,6BAA6B,QAAI;AAAA,QACxC,yBAAa,aAAAE,KAAc;AAAA,EAC5B;AAEA,MAAK,CAAE,WAAY;AAClB,WAAO;AAAA,EACR;AAEA,SACC,4EACG;AAAA,iBACD;AAAA,MAAC;AAAA;AAAA,QACA,SAAU,MAAM;AACf,cAAK,iBAAkB;AACtB,yCAA8B,QAAS;AAAA,UACxC;AAEA,cAAK,mBAAoB;AACxB,kBAAM;AAAA,cACL;AAAA,cACA,GAAG;AAAA,YACJ,IAAI,YAAY,YAAY,CAAC;AAC7B,kCAAuB,UAAU;AAAA,cAChC,UAAU;AAAA,YACX,CAAE;AAAA,UACH;AAAA,QACD;AAAA,QAEE,8BAAI,oBAAqB;AAAA;AAAA,IAC5B;AAAA,IAED,4CAAC,8BAAS,MAAO,mBACd,8BAAI,iBAAkB,GACzB;AAAA,KACD;AAEF;AAEA,IAAO,iCAAQ;",
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { isReusableBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { addQueryArgs } from '@wordpress/url';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as patternsStore } from '../store';\nimport { unlock } from '../lock-unlock';\n\nfunction PatternsManageButton( { clientId } ) {\n\tconst {\n\t\tattributes,\n\t\tcanDetach,\n\t\tisVisible,\n\t\tmanagePatternsUrl,\n\t\tisSyncedPattern,\n\t\tisUnsyncedPattern,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canRemoveBlock, getBlock } = select( blockEditorStore );\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\tconst block = getBlock( clientId );\n\n\t\t\tconst _isUnsyncedPattern =\n\t\t\t\t!! block?.attributes?.metadata?.patternName;\n\n\t\t\tconst _isSyncedPattern =\n\t\t\t\t!! block &&\n\t\t\t\tisReusableBlock( block ) &&\n\t\t\t\t!! canUser( 'update', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_block',\n\t\t\t\t\tid: block.attributes.ref,\n\t\t\t\t} );\n\n\t\t\treturn {\n\t\t\t\tattributes: block.attributes,\n\t\t\t\t// For unsynced patterns, detaching is simply removing the `patternName` attribute.\n\t\t\t\t// For synced patterns, the `core:block` block is replaced with its inner blocks,\n\t\t\t\t// so checking whether `canRemoveBlock` is possible is required.\n\t\t\t\tcanDetach:\n\t\t\t\t\t_isUnsyncedPattern ||\n\t\t\t\t\t( _isSyncedPattern && canRemoveBlock( clientId ) ),\n\t\t\t\tisUnsyncedPattern: _isUnsyncedPattern,\n\t\t\t\tisSyncedPattern: _isSyncedPattern,\n\t\t\t\tisVisible: _isUnsyncedPattern || _isSyncedPattern,\n\t\t\t\t// The site editor and templates both check whether the user\n\t\t\t\t// has edit_theme_options capabilities. We can leverage that here\n\t\t\t\t// and omit the manage patterns link if the user can't access it.\n\t\t\t\tmanagePatternsUrl: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_template',\n\t\t\t\t} )\n\t\t\t\t\t? addQueryArgs( 'site-editor.php', {\n\t\t\t\t\t\t\tp: '/pattern',\n\t\t\t\t\t } )\n\t\t\t\t\t: addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\tpost_type: 'wp_block',\n\t\t\t\t\t } ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\n\t// Ignore reason: false positive of the lint rule.\n\t// eslint-disable-next-line @wordpress/no-unused-vars-before-return\n\tconst { convertSyncedPatternToStatic } = unlock(\n\t\tuseDispatch( patternsStore )\n\t);\n\n\tif ( ! isVisible ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ canDetach && (\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tif ( isSyncedPattern ) {\n\t\t\t\t\t\t\tconvertSyncedPatternToStatic( clientId );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ( isUnsyncedPattern ) {\n\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\tpatternName,\n\t\t\t\t\t\t\t\t...attributesWithoutPatternName\n\t\t\t\t\t\t\t} = attributes?.metadata ?? {};\n\t\t\t\t\t\t\tupdateBlockAttributes( clientId, {\n\t\t\t\t\t\t\t\tmetadata: attributesWithoutPatternName,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ isSyncedPattern\n\t\t\t\t\t\t? __( 'Disconnect pattern' )\n\t\t\t\t\t\t: __( 'Detach pattern' ) }\n\t\t\t\t</MenuItem>\n\t\t\t) }\n\t\t\t<MenuItem href={ managePatternsUrl }>\n\t\t\t\t{ __( 'Manage patterns' ) }\n\t\t\t</MenuItem>\n\t\t</>\n\t);\n}\n\nexport default PatternsManageButton;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,wBAAyB;AACzB,kBAAmB;AACnB,oBAAgC;AAChC,kBAAuC;AACvC,0BAA0C;AAC1C,iBAA6B;AAC7B,uBAAmC;AAKnC,mBAAuC;AACvC,yBAAuB;AAsErB;AApEF,SAAS,qBAAsB,EAAE,SAAS,GAAI;AAC7C,QAAM;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,QAAI;AAAA,IACH,CAAE,WAAY;AACb,YAAM,EAAE,gBAAgB,SAAS,IAAI,OAAQ,oBAAAA,KAAiB;AAC9D,YAAM,EAAE,QAAQ,IAAI,OAAQ,iBAAAC,KAAU;AACtC,YAAM,QAAQ,SAAU,QAAS;AAEjC,YAAM,qBACL,CAAC,CAAE,OAAO,YAAY,UAAU;AAEjC,YAAM,mBACL,CAAC,CAAE,aACH,+BAAiB,KAAM,KACvB,CAAC,CAAE,QAAS,UAAU;AAAA,QACrB,MAAM;AAAA,QACN,MAAM;AAAA,QACN,IAAI,MAAM,WAAW;AAAA,MACtB,CAAE;AAEH,aAAO;AAAA,QACN,YAAY,MAAM;AAAA;AAAA;AAAA;AAAA,QAIlB,WACC,sBACE,oBAAoB,eAAgB,QAAS;AAAA,QAChD,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,QACjB,WAAW,sBAAsB;AAAA;AAAA;AAAA;AAAA,QAIjC,mBAAmB,QAAS,UAAU;AAAA,UACrC,MAAM;AAAA,UACN,MAAM;AAAA,QACP,CAAE,QACC,yBAAc,mBAAmB;AAAA,UACjC,GAAG;AAAA,QACH,CAAE,QACF,yBAAc,YAAY;AAAA,UAC1B,WAAW;AAAA,QACX,CAAE;AAAA,MACN;AAAA,IACD;AAAA,IACA,CAAE,QAAS;AAAA,EACZ;AAEA,QAAM,EAAE,sBAAsB,QAAI,yBAAa,oBAAAD,KAAiB;AAIhE,QAAM,EAAE,6BAA6B,QAAI;AAAA,QACxC,yBAAa,aAAAE,KAAc;AAAA,EAC5B;AAEA,MAAK,CAAE,WAAY;AAClB,WAAO;AAAA,EACR;AAEA,SACC,4EACG;AAAA,iBACD;AAAA,MAAC;AAAA;AAAA,QACA,SAAU,MAAM;AACf,cAAK,iBAAkB;AACtB,yCAA8B,QAAS;AAAA,UACxC;AAEA,cAAK,mBAAoB;AACxB,kBAAM;AAAA,cACL;AAAA,cACA,GAAG;AAAA,YACJ,IAAI,YAAY,YAAY,CAAC;AAC7B,kCAAuB,UAAU;AAAA,cAChC,UAAU;AAAA,YACX,CAAE;AAAA,UACH;AAAA,QACD;AAAA,QAEE,gCACC,gBAAI,oBAAqB,QACzB,gBAAI,gBAAiB;AAAA;AAAA,IACzB;AAAA,IAED,4CAAC,8BAAS,MAAO,mBACd,8BAAI,iBAAkB,GACzB;AAAA,KACD;AAEF;AAEA,IAAO,iCAAQ;",
6
6
  "names": ["blockEditorStore", "coreStore", "patternsStore"]
7
7
  }
@@ -77,7 +77,7 @@ function PatternsManageButton({ clientId }) {
77
77
  });
78
78
  }
79
79
  },
80
- children: __("Disconnect pattern")
80
+ children: isSyncedPattern ? __("Disconnect pattern") : __("Detach pattern")
81
81
  }
82
82
  ),
83
83
  /* @__PURE__ */ jsx(MenuItem, { href: managePatternsUrl, children: __("Manage patterns") })
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/components/patterns-manage-button.js"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { isReusableBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { addQueryArgs } from '@wordpress/url';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as patternsStore } from '../store';\nimport { unlock } from '../lock-unlock';\n\nfunction PatternsManageButton( { clientId } ) {\n\tconst {\n\t\tattributes,\n\t\tcanDetach,\n\t\tisVisible,\n\t\tmanagePatternsUrl,\n\t\tisSyncedPattern,\n\t\tisUnsyncedPattern,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canRemoveBlock, getBlock } = select( blockEditorStore );\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\tconst block = getBlock( clientId );\n\n\t\t\tconst _isUnsyncedPattern =\n\t\t\t\t!! block?.attributes?.metadata?.patternName;\n\n\t\t\tconst _isSyncedPattern =\n\t\t\t\t!! block &&\n\t\t\t\tisReusableBlock( block ) &&\n\t\t\t\t!! canUser( 'update', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_block',\n\t\t\t\t\tid: block.attributes.ref,\n\t\t\t\t} );\n\n\t\t\treturn {\n\t\t\t\tattributes: block.attributes,\n\t\t\t\t// For unsynced patterns, detaching is simply removing the `patternName` attribute.\n\t\t\t\t// For synced patterns, the `core:block` block is replaced with its inner blocks,\n\t\t\t\t// so checking whether `canRemoveBlock` is possible is required.\n\t\t\t\tcanDetach:\n\t\t\t\t\t_isUnsyncedPattern ||\n\t\t\t\t\t( _isSyncedPattern && canRemoveBlock( clientId ) ),\n\t\t\t\tisUnsyncedPattern: _isUnsyncedPattern,\n\t\t\t\tisSyncedPattern: _isSyncedPattern,\n\t\t\t\tisVisible: _isUnsyncedPattern || _isSyncedPattern,\n\t\t\t\t// The site editor and templates both check whether the user\n\t\t\t\t// has edit_theme_options capabilities. We can leverage that here\n\t\t\t\t// and omit the manage patterns link if the user can't access it.\n\t\t\t\tmanagePatternsUrl: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_template',\n\t\t\t\t} )\n\t\t\t\t\t? addQueryArgs( 'site-editor.php', {\n\t\t\t\t\t\t\tp: '/pattern',\n\t\t\t\t\t } )\n\t\t\t\t\t: addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\tpost_type: 'wp_block',\n\t\t\t\t\t } ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\n\t// Ignore reason: false positive of the lint rule.\n\t// eslint-disable-next-line @wordpress/no-unused-vars-before-return\n\tconst { convertSyncedPatternToStatic } = unlock(\n\t\tuseDispatch( patternsStore )\n\t);\n\n\tif ( ! isVisible ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ canDetach && (\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tif ( isSyncedPattern ) {\n\t\t\t\t\t\t\tconvertSyncedPatternToStatic( clientId );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ( isUnsyncedPattern ) {\n\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\tpatternName,\n\t\t\t\t\t\t\t\t...attributesWithoutPatternName\n\t\t\t\t\t\t\t} = attributes?.metadata ?? {};\n\t\t\t\t\t\t\tupdateBlockAttributes( clientId, {\n\t\t\t\t\t\t\t\tmetadata: attributesWithoutPatternName,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Disconnect pattern' ) }\n\t\t\t\t</MenuItem>\n\t\t\t) }\n\t\t\t<MenuItem href={ managePatternsUrl }>\n\t\t\t\t{ __( 'Manage patterns' ) }\n\t\t\t</MenuItem>\n\t\t</>\n\t);\n}\n\nexport default PatternsManageButton;\n"],
5
- "mappings": ";AAGA,SAAS,gBAAgB;AACzB,SAAS,UAAU;AACnB,SAAS,uBAAuB;AAChC,SAAS,WAAW,mBAAmB;AACvC,SAAS,SAAS,wBAAwB;AAC1C,SAAS,oBAAoB;AAC7B,SAAS,SAAS,iBAAiB;AAKnC,SAAS,SAAS,qBAAqB;AACvC,SAAS,cAAc;AAsErB,mBAEE,KAFF;AApEF,SAAS,qBAAsB,EAAE,SAAS,GAAI;AAC7C,QAAM;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,IAAI;AAAA,IACH,CAAE,WAAY;AACb,YAAM,EAAE,gBAAgB,SAAS,IAAI,OAAQ,gBAAiB;AAC9D,YAAM,EAAE,QAAQ,IAAI,OAAQ,SAAU;AACtC,YAAM,QAAQ,SAAU,QAAS;AAEjC,YAAM,qBACL,CAAC,CAAE,OAAO,YAAY,UAAU;AAEjC,YAAM,mBACL,CAAC,CAAE,SACH,gBAAiB,KAAM,KACvB,CAAC,CAAE,QAAS,UAAU;AAAA,QACrB,MAAM;AAAA,QACN,MAAM;AAAA,QACN,IAAI,MAAM,WAAW;AAAA,MACtB,CAAE;AAEH,aAAO;AAAA,QACN,YAAY,MAAM;AAAA;AAAA;AAAA;AAAA,QAIlB,WACC,sBACE,oBAAoB,eAAgB,QAAS;AAAA,QAChD,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,QACjB,WAAW,sBAAsB;AAAA;AAAA;AAAA;AAAA,QAIjC,mBAAmB,QAAS,UAAU;AAAA,UACrC,MAAM;AAAA,UACN,MAAM;AAAA,QACP,CAAE,IACC,aAAc,mBAAmB;AAAA,UACjC,GAAG;AAAA,QACH,CAAE,IACF,aAAc,YAAY;AAAA,UAC1B,WAAW;AAAA,QACX,CAAE;AAAA,MACN;AAAA,IACD;AAAA,IACA,CAAE,QAAS;AAAA,EACZ;AAEA,QAAM,EAAE,sBAAsB,IAAI,YAAa,gBAAiB;AAIhE,QAAM,EAAE,6BAA6B,IAAI;AAAA,IACxC,YAAa,aAAc;AAAA,EAC5B;AAEA,MAAK,CAAE,WAAY;AAClB,WAAO;AAAA,EACR;AAEA,SACC,iCACG;AAAA,iBACD;AAAA,MAAC;AAAA;AAAA,QACA,SAAU,MAAM;AACf,cAAK,iBAAkB;AACtB,yCAA8B,QAAS;AAAA,UACxC;AAEA,cAAK,mBAAoB;AACxB,kBAAM;AAAA,cACL;AAAA,cACA,GAAG;AAAA,YACJ,IAAI,YAAY,YAAY,CAAC;AAC7B,kCAAuB,UAAU;AAAA,cAChC,UAAU;AAAA,YACX,CAAE;AAAA,UACH;AAAA,QACD;AAAA,QAEE,aAAI,oBAAqB;AAAA;AAAA,IAC5B;AAAA,IAED,oBAAC,YAAS,MAAO,mBACd,aAAI,iBAAkB,GACzB;AAAA,KACD;AAEF;AAEA,IAAO,iCAAQ;",
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { isReusableBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { addQueryArgs } from '@wordpress/url';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as patternsStore } from '../store';\nimport { unlock } from '../lock-unlock';\n\nfunction PatternsManageButton( { clientId } ) {\n\tconst {\n\t\tattributes,\n\t\tcanDetach,\n\t\tisVisible,\n\t\tmanagePatternsUrl,\n\t\tisSyncedPattern,\n\t\tisUnsyncedPattern,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canRemoveBlock, getBlock } = select( blockEditorStore );\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\tconst block = getBlock( clientId );\n\n\t\t\tconst _isUnsyncedPattern =\n\t\t\t\t!! block?.attributes?.metadata?.patternName;\n\n\t\t\tconst _isSyncedPattern =\n\t\t\t\t!! block &&\n\t\t\t\tisReusableBlock( block ) &&\n\t\t\t\t!! canUser( 'update', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_block',\n\t\t\t\t\tid: block.attributes.ref,\n\t\t\t\t} );\n\n\t\t\treturn {\n\t\t\t\tattributes: block.attributes,\n\t\t\t\t// For unsynced patterns, detaching is simply removing the `patternName` attribute.\n\t\t\t\t// For synced patterns, the `core:block` block is replaced with its inner blocks,\n\t\t\t\t// so checking whether `canRemoveBlock` is possible is required.\n\t\t\t\tcanDetach:\n\t\t\t\t\t_isUnsyncedPattern ||\n\t\t\t\t\t( _isSyncedPattern && canRemoveBlock( clientId ) ),\n\t\t\t\tisUnsyncedPattern: _isUnsyncedPattern,\n\t\t\t\tisSyncedPattern: _isSyncedPattern,\n\t\t\t\tisVisible: _isUnsyncedPattern || _isSyncedPattern,\n\t\t\t\t// The site editor and templates both check whether the user\n\t\t\t\t// has edit_theme_options capabilities. We can leverage that here\n\t\t\t\t// and omit the manage patterns link if the user can't access it.\n\t\t\t\tmanagePatternsUrl: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_template',\n\t\t\t\t} )\n\t\t\t\t\t? addQueryArgs( 'site-editor.php', {\n\t\t\t\t\t\t\tp: '/pattern',\n\t\t\t\t\t } )\n\t\t\t\t\t: addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\tpost_type: 'wp_block',\n\t\t\t\t\t } ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\n\t// Ignore reason: false positive of the lint rule.\n\t// eslint-disable-next-line @wordpress/no-unused-vars-before-return\n\tconst { convertSyncedPatternToStatic } = unlock(\n\t\tuseDispatch( patternsStore )\n\t);\n\n\tif ( ! isVisible ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ canDetach && (\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tif ( isSyncedPattern ) {\n\t\t\t\t\t\t\tconvertSyncedPatternToStatic( clientId );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ( isUnsyncedPattern ) {\n\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\tpatternName,\n\t\t\t\t\t\t\t\t...attributesWithoutPatternName\n\t\t\t\t\t\t\t} = attributes?.metadata ?? {};\n\t\t\t\t\t\t\tupdateBlockAttributes( clientId, {\n\t\t\t\t\t\t\t\tmetadata: attributesWithoutPatternName,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ isSyncedPattern\n\t\t\t\t\t\t? __( 'Disconnect pattern' )\n\t\t\t\t\t\t: __( 'Detach pattern' ) }\n\t\t\t\t</MenuItem>\n\t\t\t) }\n\t\t\t<MenuItem href={ managePatternsUrl }>\n\t\t\t\t{ __( 'Manage patterns' ) }\n\t\t\t</MenuItem>\n\t\t</>\n\t);\n}\n\nexport default PatternsManageButton;\n"],
5
+ "mappings": ";AAGA,SAAS,gBAAgB;AACzB,SAAS,UAAU;AACnB,SAAS,uBAAuB;AAChC,SAAS,WAAW,mBAAmB;AACvC,SAAS,SAAS,wBAAwB;AAC1C,SAAS,oBAAoB;AAC7B,SAAS,SAAS,iBAAiB;AAKnC,SAAS,SAAS,qBAAqB;AACvC,SAAS,cAAc;AAsErB,mBAEE,KAFF;AApEF,SAAS,qBAAsB,EAAE,SAAS,GAAI;AAC7C,QAAM;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,IAAI;AAAA,IACH,CAAE,WAAY;AACb,YAAM,EAAE,gBAAgB,SAAS,IAAI,OAAQ,gBAAiB;AAC9D,YAAM,EAAE,QAAQ,IAAI,OAAQ,SAAU;AACtC,YAAM,QAAQ,SAAU,QAAS;AAEjC,YAAM,qBACL,CAAC,CAAE,OAAO,YAAY,UAAU;AAEjC,YAAM,mBACL,CAAC,CAAE,SACH,gBAAiB,KAAM,KACvB,CAAC,CAAE,QAAS,UAAU;AAAA,QACrB,MAAM;AAAA,QACN,MAAM;AAAA,QACN,IAAI,MAAM,WAAW;AAAA,MACtB,CAAE;AAEH,aAAO;AAAA,QACN,YAAY,MAAM;AAAA;AAAA;AAAA;AAAA,QAIlB,WACC,sBACE,oBAAoB,eAAgB,QAAS;AAAA,QAChD,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,QACjB,WAAW,sBAAsB;AAAA;AAAA;AAAA;AAAA,QAIjC,mBAAmB,QAAS,UAAU;AAAA,UACrC,MAAM;AAAA,UACN,MAAM;AAAA,QACP,CAAE,IACC,aAAc,mBAAmB;AAAA,UACjC,GAAG;AAAA,QACH,CAAE,IACF,aAAc,YAAY;AAAA,UAC1B,WAAW;AAAA,QACX,CAAE;AAAA,MACN;AAAA,IACD;AAAA,IACA,CAAE,QAAS;AAAA,EACZ;AAEA,QAAM,EAAE,sBAAsB,IAAI,YAAa,gBAAiB;AAIhE,QAAM,EAAE,6BAA6B,IAAI;AAAA,IACxC,YAAa,aAAc;AAAA,EAC5B;AAEA,MAAK,CAAE,WAAY;AAClB,WAAO;AAAA,EACR;AAEA,SACC,iCACG;AAAA,iBACD;AAAA,MAAC;AAAA;AAAA,QACA,SAAU,MAAM;AACf,cAAK,iBAAkB;AACtB,yCAA8B,QAAS;AAAA,UACxC;AAEA,cAAK,mBAAoB;AACxB,kBAAM;AAAA,cACL;AAAA,cACA,GAAG;AAAA,YACJ,IAAI,YAAY,YAAY,CAAC;AAC7B,kCAAuB,UAAU;AAAA,cAChC,UAAU;AAAA,YACX,CAAE;AAAA,UACH;AAAA,QACD;AAAA,QAEE,4BACC,GAAI,oBAAqB,IACzB,GAAI,gBAAiB;AAAA;AAAA,IACzB;AAAA,IAED,oBAAC,YAAS,MAAO,mBACd,aAAI,iBAAkB,GACzB;AAAA,KACD;AAEF;AAEA,IAAO,iCAAQ;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/patterns",
3
- "version": "2.40.1",
3
+ "version": "2.40.2-next.v.202602271551.0+464abe399",
4
4
  "description": "Management of user pattern editing.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -52,21 +52,21 @@
52
52
  "build-module/store/index.mjs"
53
53
  ],
54
54
  "dependencies": {
55
- "@wordpress/a11y": "^4.40.0",
56
- "@wordpress/base-styles": "^6.16.0",
57
- "@wordpress/block-editor": "^15.13.1",
58
- "@wordpress/blocks": "^15.13.0",
59
- "@wordpress/components": "^32.2.0",
60
- "@wordpress/compose": "^7.40.0",
61
- "@wordpress/core-data": "^7.40.1",
62
- "@wordpress/data": "^10.40.0",
63
- "@wordpress/element": "^6.40.0",
64
- "@wordpress/html-entities": "^4.40.0",
65
- "@wordpress/i18n": "^6.13.0",
66
- "@wordpress/icons": "^11.7.0",
67
- "@wordpress/notices": "^5.40.0",
68
- "@wordpress/private-apis": "^1.40.0",
69
- "@wordpress/url": "^4.40.0"
55
+ "@wordpress/a11y": "^4.40.1-next.v.202602271551.0+464abe399",
56
+ "@wordpress/base-styles": "^6.16.1-next.v.202602271551.0+464abe399",
57
+ "@wordpress/block-editor": "^15.13.2-next.v.202602271551.0+464abe399",
58
+ "@wordpress/blocks": "^15.13.1-next.v.202602271551.0+464abe399",
59
+ "@wordpress/components": "^32.3.1-next.v.202602271551.0+464abe399",
60
+ "@wordpress/compose": "^7.40.1-next.v.202602271551.0+464abe399",
61
+ "@wordpress/core-data": "^7.40.2-next.v.202602271551.0+464abe399",
62
+ "@wordpress/data": "^10.40.1-next.v.202602271551.0+464abe399",
63
+ "@wordpress/element": "^6.40.1-next.v.202602271551.0+464abe399",
64
+ "@wordpress/html-entities": "^4.40.1-next.v.202602271551.0+464abe399",
65
+ "@wordpress/i18n": "^6.13.1-next.v.202602271551.0+464abe399",
66
+ "@wordpress/icons": "^11.7.1-next.v.202602271551.0+464abe399",
67
+ "@wordpress/notices": "^5.40.1-next.v.202602271551.0+464abe399",
68
+ "@wordpress/private-apis": "^1.40.1-next.v.202602271551.0+464abe399",
69
+ "@wordpress/url": "^4.40.1-next.v.202602271551.0+464abe399"
70
70
  },
71
71
  "peerDependencies": {
72
72
  "react": "^18.0.0",
@@ -75,5 +75,5 @@
75
75
  "publishConfig": {
76
76
  "access": "public"
77
77
  },
78
- "gitHead": "398c509dbbdcdb525d17e968edd83da33a0a7bde"
78
+ "gitHead": "95aa7055a5757219e2d96a91efc69f7dd1b2d4c3"
79
79
  }
@@ -102,7 +102,9 @@ function PatternsManageButton( { clientId } ) {
102
102
  }
103
103
  } }
104
104
  >
105
- { __( 'Disconnect pattern' ) }
105
+ { isSyncedPattern
106
+ ? __( 'Disconnect pattern' )
107
+ : __( 'Detach pattern' ) }
106
108
  </MenuItem>
107
109
  ) }
108
110
  <MenuItem href={ managePatternsUrl }>