@wordpress/patterns 1.19.0 → 2.0.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.
Files changed (67) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/build/api/index.js +17 -0
  3. package/build/api/index.js.map +1 -1
  4. package/build/components/allow-overrides-modal.js +72 -58
  5. package/build/components/allow-overrides-modal.js.map +1 -1
  6. package/build/components/category-selector.js +2 -2
  7. package/build/components/category-selector.js.map +1 -1
  8. package/build/components/create-pattern-modal.js +56 -48
  9. package/build/components/create-pattern-modal.js.map +1 -1
  10. package/build/components/duplicate-pattern-modal.js +2 -2
  11. package/build/components/duplicate-pattern-modal.js.map +1 -1
  12. package/build/components/index.js +15 -11
  13. package/build/components/index.js.map +1 -1
  14. package/build/components/overrides-panel.js +7 -6
  15. package/build/components/overrides-panel.js.map +1 -1
  16. package/build/components/pattern-convert-button.js +22 -20
  17. package/build/components/pattern-convert-button.js.map +1 -1
  18. package/build/components/pattern-overrides-controls.js +49 -54
  19. package/build/components/pattern-overrides-controls.js.map +1 -1
  20. package/build/components/patterns-manage-button.js +10 -6
  21. package/build/components/patterns-manage-button.js.map +1 -1
  22. package/build/components/rename-pattern-category-modal.js +42 -34
  23. package/build/components/rename-pattern-category-modal.js.map +1 -1
  24. package/build/components/rename-pattern-modal.js +31 -25
  25. package/build/components/rename-pattern-modal.js.map +1 -1
  26. package/build/components/reset-overrides-control.js +12 -8
  27. package/build/components/reset-overrides-control.js.map +1 -1
  28. package/build/private-apis.js +1 -0
  29. package/build/private-apis.js.map +1 -1
  30. package/build/store/actions.js +2 -2
  31. package/build/store/actions.js.map +1 -1
  32. package/build-module/api/index.js +16 -0
  33. package/build-module/api/index.js.map +1 -1
  34. package/build-module/components/allow-overrides-modal.js +73 -58
  35. package/build-module/components/allow-overrides-modal.js.map +1 -1
  36. package/build-module/components/category-selector.js +2 -2
  37. package/build-module/components/category-selector.js.map +1 -1
  38. package/build-module/components/create-pattern-modal.js +59 -50
  39. package/build-module/components/create-pattern-modal.js.map +1 -1
  40. package/build-module/components/duplicate-pattern-modal.js +2 -2
  41. package/build-module/components/duplicate-pattern-modal.js.map +1 -1
  42. package/build-module/components/index.js +17 -11
  43. package/build-module/components/index.js.map +1 -1
  44. package/build-module/components/overrides-panel.js +7 -6
  45. package/build-module/components/overrides-panel.js.map +1 -1
  46. package/build-module/components/pattern-convert-button.js +23 -18
  47. package/build-module/components/pattern-convert-button.js.map +1 -1
  48. package/build-module/components/pattern-overrides-controls.js +52 -55
  49. package/build-module/components/pattern-overrides-controls.js.map +1 -1
  50. package/build-module/components/patterns-manage-button.js +12 -6
  51. package/build-module/components/patterns-manage-button.js.map +1 -1
  52. package/build-module/components/rename-pattern-category-modal.js +43 -34
  53. package/build-module/components/rename-pattern-category-modal.js.map +1 -1
  54. package/build-module/components/rename-pattern-modal.js +32 -25
  55. package/build-module/components/rename-pattern-modal.js.map +1 -1
  56. package/build-module/components/reset-overrides-control.js +12 -8
  57. package/build-module/components/reset-overrides-control.js.map +1 -1
  58. package/build-module/private-apis.js +2 -1
  59. package/build-module/private-apis.js.map +1 -1
  60. package/build-module/store/actions.js +2 -2
  61. package/build-module/store/actions.js.map +1 -1
  62. package/package.json +18 -17
  63. package/src/api/index.js +16 -0
  64. package/src/components/create-pattern-modal.js +16 -5
  65. package/src/components/pattern-overrides-controls.js +19 -44
  66. package/src/private-apis.js +2 -1
  67. package/src/store/actions.js +2 -2
@@ -1,4 +1,3 @@
1
- import { createElement, Fragment } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -10,48 +9,43 @@ import { __ } from '@wordpress/i18n';
10
9
  /**
11
10
  * Internal dependencies
12
11
  */
13
- import { PARTIAL_SYNCING_SUPPORTED_BLOCKS, PATTERN_OVERRIDES_BINDING_SOURCE } from '../constants';
12
+ import { PATTERN_OVERRIDES_BINDING_SOURCE } from '../constants';
14
13
  import { AllowOverridesModal, DisallowOverridesModal } from './allow-overrides-modal';
15
- function removeBindings(bindings, syncedAttributes) {
16
- let updatedBindings = {};
17
- for (const attributeName of syncedAttributes) {
18
- // Omit any bindings that's not the same source from the `updatedBindings` object.
19
- if (bindings?.[attributeName]?.source !== PATTERN_OVERRIDES_BINDING_SOURCE && bindings?.[attributeName]?.source !== undefined) {
20
- updatedBindings[attributeName] = bindings[attributeName];
21
- }
22
- }
14
+ import { jsx as _jsx } from "react/jsx-runtime";
15
+ import { Fragment as _Fragment } from "react/jsx-runtime";
16
+ import { jsxs as _jsxs } from "react/jsx-runtime";
17
+ function removeBindings(bindings) {
18
+ let updatedBindings = {
19
+ ...bindings
20
+ };
21
+ delete updatedBindings.__default;
23
22
  if (!Object.keys(updatedBindings).length) {
24
23
  updatedBindings = undefined;
25
24
  }
26
25
  return updatedBindings;
27
26
  }
28
- function addBindings(bindings, syncedAttributes) {
29
- const updatedBindings = {
30
- ...bindings
31
- };
32
- for (const attributeName of syncedAttributes) {
33
- if (!bindings?.[attributeName]) {
34
- updatedBindings[attributeName] = {
35
- source: PATTERN_OVERRIDES_BINDING_SOURCE
36
- };
27
+ function addBindings(bindings) {
28
+ return {
29
+ ...bindings,
30
+ __default: {
31
+ source: PATTERN_OVERRIDES_BINDING_SOURCE
37
32
  }
38
- }
39
- return updatedBindings;
33
+ };
40
34
  }
41
35
  function PatternOverridesControls({
42
36
  attributes,
43
- name,
44
37
  setAttributes
45
38
  }) {
46
39
  const controlId = useId();
47
40
  const [showAllowOverridesModal, setShowAllowOverridesModal] = useState(false);
48
41
  const [showDisallowOverridesModal, setShowDisallowOverridesModal] = useState(false);
49
- const syncedAttributes = PARTIAL_SYNCING_SUPPORTED_BLOCKS[name];
50
- const attributeSources = syncedAttributes.map(attributeName => attributes.metadata?.bindings?.[attributeName]?.source);
51
- const isConnectedToOtherSources = attributeSources.every(source => source && source !== 'core/pattern-overrides');
42
+ const hasName = !!attributes.metadata?.name;
43
+ const defaultBindings = attributes.metadata?.bindings?.__default;
44
+ const allowOverrides = hasName && defaultBindings?.source === PATTERN_OVERRIDES_BINDING_SOURCE;
45
+ const isConnectedToOtherSources = defaultBindings?.source && defaultBindings.source !== PATTERN_OVERRIDES_BINDING_SOURCE;
52
46
  function updateBindings(isChecked, customName) {
53
47
  const prevBindings = attributes?.metadata?.bindings;
54
- const updatedBindings = isChecked ? addBindings(prevBindings, syncedAttributes) : removeBindings(prevBindings, syncedAttributes);
48
+ const updatedBindings = isChecked ? addBindings(prevBindings) : removeBindings(prevBindings);
55
49
  const updatedMetadata = {
56
50
  ...attributes.metadata,
57
51
  bindings: updatedBindings
@@ -68,36 +62,39 @@ function PatternOverridesControls({
68
62
  if (isConnectedToOtherSources) {
69
63
  return null;
70
64
  }
71
- const hasName = !!attributes.metadata?.name;
72
- const allowOverrides = hasName && attributeSources.some(source => source === PATTERN_OVERRIDES_BINDING_SOURCE);
73
- return createElement(Fragment, null, createElement(InspectorControls, {
74
- group: "advanced"
75
- }, createElement(BaseControl, {
76
- id: controlId,
77
- label: __('Overrides'),
78
- help: __('Allow changes to this block throughout instances of this pattern.')
79
- }, createElement(Button, {
80
- __next40pxDefaultSize: true,
81
- className: "pattern-overrides-control__allow-overrides-button",
82
- variant: "secondary",
83
- "aria-haspopup": "dialog",
84
- onClick: () => {
85
- if (allowOverrides) {
86
- setShowDisallowOverridesModal(true);
87
- } else {
88
- setShowAllowOverridesModal(true);
65
+ return /*#__PURE__*/_jsxs(_Fragment, {
66
+ children: [/*#__PURE__*/_jsx(InspectorControls, {
67
+ group: "advanced",
68
+ children: /*#__PURE__*/_jsx(BaseControl, {
69
+ id: controlId,
70
+ label: __('Overrides'),
71
+ help: __('Allow changes to this block throughout instances of this pattern.'),
72
+ children: /*#__PURE__*/_jsx(Button, {
73
+ __next40pxDefaultSize: true,
74
+ className: "pattern-overrides-control__allow-overrides-button",
75
+ variant: "secondary",
76
+ "aria-haspopup": "dialog",
77
+ onClick: () => {
78
+ if (allowOverrides) {
79
+ setShowDisallowOverridesModal(true);
80
+ } else {
81
+ setShowAllowOverridesModal(true);
82
+ }
83
+ },
84
+ children: allowOverrides ? __('Disable overrides') : __('Enable overrides')
85
+ })
86
+ })
87
+ }), showAllowOverridesModal && /*#__PURE__*/_jsx(AllowOverridesModal, {
88
+ initialName: attributes.metadata?.name,
89
+ onClose: () => setShowAllowOverridesModal(false),
90
+ onSave: newName => {
91
+ updateBindings(true, newName);
89
92
  }
90
- }
91
- }, allowOverrides ? __('Disable overrides') : __('Enable overrides')))), showAllowOverridesModal && createElement(AllowOverridesModal, {
92
- initialName: attributes.metadata?.name,
93
- onClose: () => setShowAllowOverridesModal(false),
94
- onSave: newName => {
95
- updateBindings(true, newName);
96
- }
97
- }), showDisallowOverridesModal && createElement(DisallowOverridesModal, {
98
- onClose: () => setShowDisallowOverridesModal(false),
99
- onSave: () => updateBindings(false)
100
- }));
93
+ }), showDisallowOverridesModal && /*#__PURE__*/_jsx(DisallowOverridesModal, {
94
+ onClose: () => setShowDisallowOverridesModal(false),
95
+ onSave: () => updateBindings(false)
96
+ })]
97
+ });
101
98
  }
102
99
  export default PatternOverridesControls;
103
100
  //# sourceMappingURL=pattern-overrides-controls.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useId","InspectorControls","BaseControl","Button","__","PARTIAL_SYNCING_SUPPORTED_BLOCKS","PATTERN_OVERRIDES_BINDING_SOURCE","AllowOverridesModal","DisallowOverridesModal","removeBindings","bindings","syncedAttributes","updatedBindings","attributeName","source","undefined","Object","keys","length","addBindings","PatternOverridesControls","attributes","name","setAttributes","controlId","showAllowOverridesModal","setShowAllowOverridesModal","showDisallowOverridesModal","setShowDisallowOverridesModal","attributeSources","map","metadata","isConnectedToOtherSources","every","updateBindings","isChecked","customName","prevBindings","updatedMetadata","hasName","allowOverrides","some","createElement","Fragment","group","id","label","help","__next40pxDefaultSize","className","variant","onClick","initialName","onClose","onSave","newName"],"sources":["@wordpress/patterns/src/components/pattern-overrides-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useId } from '@wordpress/element';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { BaseControl, Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tPARTIAL_SYNCING_SUPPORTED_BLOCKS,\n\tPATTERN_OVERRIDES_BINDING_SOURCE,\n} from '../constants';\nimport {\n\tAllowOverridesModal,\n\tDisallowOverridesModal,\n} from './allow-overrides-modal';\n\nfunction removeBindings( bindings, syncedAttributes ) {\n\tlet updatedBindings = {};\n\tfor ( const attributeName of syncedAttributes ) {\n\t\t// Omit any bindings that's not the same source from the `updatedBindings` object.\n\t\tif (\n\t\t\tbindings?.[ attributeName ]?.source !==\n\t\t\t\tPATTERN_OVERRIDES_BINDING_SOURCE &&\n\t\t\tbindings?.[ attributeName ]?.source !== undefined\n\t\t) {\n\t\t\tupdatedBindings[ attributeName ] = bindings[ attributeName ];\n\t\t}\n\t}\n\tif ( ! Object.keys( updatedBindings ).length ) {\n\t\tupdatedBindings = undefined;\n\t}\n\treturn updatedBindings;\n}\n\nfunction addBindings( bindings, syncedAttributes ) {\n\tconst updatedBindings = { ...bindings };\n\tfor ( const attributeName of syncedAttributes ) {\n\t\tif ( ! bindings?.[ attributeName ] ) {\n\t\t\tupdatedBindings[ attributeName ] = {\n\t\t\t\tsource: PATTERN_OVERRIDES_BINDING_SOURCE,\n\t\t\t};\n\t\t}\n\t}\n\treturn updatedBindings;\n}\n\nfunction PatternOverridesControls( { attributes, name, setAttributes } ) {\n\tconst controlId = useId();\n\tconst [ showAllowOverridesModal, setShowAllowOverridesModal ] =\n\t\tuseState( false );\n\tconst [ showDisallowOverridesModal, setShowDisallowOverridesModal ] =\n\t\tuseState( false );\n\n\tconst syncedAttributes = PARTIAL_SYNCING_SUPPORTED_BLOCKS[ name ];\n\tconst attributeSources = syncedAttributes.map(\n\t\t( attributeName ) =>\n\t\t\tattributes.metadata?.bindings?.[ attributeName ]?.source\n\t);\n\tconst isConnectedToOtherSources = attributeSources.every(\n\t\t( source ) => source && source !== 'core/pattern-overrides'\n\t);\n\n\tfunction updateBindings( isChecked, customName ) {\n\t\tconst prevBindings = attributes?.metadata?.bindings;\n\t\tconst updatedBindings = isChecked\n\t\t\t? addBindings( prevBindings, syncedAttributes )\n\t\t\t: removeBindings( prevBindings, syncedAttributes );\n\n\t\tconst updatedMetadata = {\n\t\t\t...attributes.metadata,\n\t\t\tbindings: updatedBindings,\n\t\t};\n\n\t\tif ( customName ) {\n\t\t\tupdatedMetadata.name = customName;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tmetadata: updatedMetadata,\n\t\t} );\n\t}\n\n\t// Avoid overwriting other (e.g. meta) bindings.\n\tif ( isConnectedToOtherSources ) {\n\t\treturn null;\n\t}\n\n\tconst hasName = !! attributes.metadata?.name;\n\tconst allowOverrides =\n\t\thasName &&\n\t\tattributeSources.some(\n\t\t\t( source ) => source === PATTERN_OVERRIDES_BINDING_SOURCE\n\t\t);\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<BaseControl\n\t\t\t\t\tid={ controlId }\n\t\t\t\t\tlabel={ __( 'Overrides' ) }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Allow changes to this block throughout instances of this pattern.'\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tclassName=\"pattern-overrides-control__allow-overrides-button\"\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tif ( allowOverrides ) {\n\t\t\t\t\t\t\t\tsetShowDisallowOverridesModal( true );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tsetShowAllowOverridesModal( true );\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{ allowOverrides\n\t\t\t\t\t\t\t? __( 'Disable overrides' )\n\t\t\t\t\t\t\t: __( 'Enable overrides' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</BaseControl>\n\t\t\t</InspectorControls>\n\n\t\t\t{ showAllowOverridesModal && (\n\t\t\t\t<AllowOverridesModal\n\t\t\t\t\tinitialName={ attributes.metadata?.name }\n\t\t\t\t\tonClose={ () => setShowAllowOverridesModal( false ) }\n\t\t\t\t\tonSave={ ( newName ) => {\n\t\t\t\t\t\tupdateBindings( true, newName );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showDisallowOverridesModal && (\n\t\t\t\t<DisallowOverridesModal\n\t\t\t\t\tonClose={ () => setShowDisallowOverridesModal( false ) }\n\t\t\t\t\tonSave={ () => updateBindings( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default PatternOverridesControls;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useState","useId","InspectorControls","BaseControl","Button","__","PATTERN_OVERRIDES_BINDING_SOURCE","AllowOverridesModal","DisallowOverridesModal","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","removeBindings","bindings","updatedBindings","__default","Object","keys","length","undefined","addBindings","source","PatternOverridesControls","attributes","setAttributes","controlId","showAllowOverridesModal","setShowAllowOverridesModal","showDisallowOverridesModal","setShowDisallowOverridesModal","hasName","metadata","name","defaultBindings","allowOverrides","isConnectedToOtherSources","updateBindings","isChecked","customName","prevBindings","updatedMetadata","children","group","id","label","help","__next40pxDefaultSize","className","variant","onClick","initialName","onClose","onSave","newName"],"sources":["@wordpress/patterns/src/components/pattern-overrides-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useId } from '@wordpress/element';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { BaseControl, Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { PATTERN_OVERRIDES_BINDING_SOURCE } from '../constants';\nimport {\n\tAllowOverridesModal,\n\tDisallowOverridesModal,\n} from './allow-overrides-modal';\n\nfunction removeBindings( bindings ) {\n\tlet updatedBindings = { ...bindings };\n\tdelete updatedBindings.__default;\n\tif ( ! Object.keys( updatedBindings ).length ) {\n\t\tupdatedBindings = undefined;\n\t}\n\treturn updatedBindings;\n}\n\nfunction addBindings( bindings ) {\n\treturn {\n\t\t...bindings,\n\t\t__default: { source: PATTERN_OVERRIDES_BINDING_SOURCE },\n\t};\n}\n\nfunction PatternOverridesControls( { attributes, setAttributes } ) {\n\tconst controlId = useId();\n\tconst [ showAllowOverridesModal, setShowAllowOverridesModal ] =\n\t\tuseState( false );\n\tconst [ showDisallowOverridesModal, setShowDisallowOverridesModal ] =\n\t\tuseState( false );\n\n\tconst hasName = !! attributes.metadata?.name;\n\tconst defaultBindings = attributes.metadata?.bindings?.__default;\n\tconst allowOverrides =\n\t\thasName && defaultBindings?.source === PATTERN_OVERRIDES_BINDING_SOURCE;\n\tconst isConnectedToOtherSources =\n\t\tdefaultBindings?.source &&\n\t\tdefaultBindings.source !== PATTERN_OVERRIDES_BINDING_SOURCE;\n\n\tfunction updateBindings( isChecked, customName ) {\n\t\tconst prevBindings = attributes?.metadata?.bindings;\n\t\tconst updatedBindings = isChecked\n\t\t\t? addBindings( prevBindings )\n\t\t\t: removeBindings( prevBindings );\n\n\t\tconst updatedMetadata = {\n\t\t\t...attributes.metadata,\n\t\t\tbindings: updatedBindings,\n\t\t};\n\n\t\tif ( customName ) {\n\t\t\tupdatedMetadata.name = customName;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tmetadata: updatedMetadata,\n\t\t} );\n\t}\n\n\t// Avoid overwriting other (e.g. meta) bindings.\n\tif ( isConnectedToOtherSources ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<BaseControl\n\t\t\t\t\tid={ controlId }\n\t\t\t\t\tlabel={ __( 'Overrides' ) }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Allow changes to this block throughout instances of this pattern.'\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tclassName=\"pattern-overrides-control__allow-overrides-button\"\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tif ( allowOverrides ) {\n\t\t\t\t\t\t\t\tsetShowDisallowOverridesModal( true );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tsetShowAllowOverridesModal( true );\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{ allowOverrides\n\t\t\t\t\t\t\t? __( 'Disable overrides' )\n\t\t\t\t\t\t\t: __( 'Enable overrides' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</BaseControl>\n\t\t\t</InspectorControls>\n\n\t\t\t{ showAllowOverridesModal && (\n\t\t\t\t<AllowOverridesModal\n\t\t\t\t\tinitialName={ attributes.metadata?.name }\n\t\t\t\t\tonClose={ () => setShowAllowOverridesModal( false ) }\n\t\t\t\t\tonSave={ ( newName ) => {\n\t\t\t\t\t\tupdateBindings( true, newName );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showDisallowOverridesModal && (\n\t\t\t\t<DisallowOverridesModal\n\t\t\t\t\tonClose={ () => setShowDisallowOverridesModal( false ) }\n\t\t\t\t\tonSave={ () => updateBindings( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default PatternOverridesControls;\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import { createElement, Fragment } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -15,6 +14,9 @@ import { store as coreStore } from '@wordpress/core-data';
15
14
  */
16
15
  import { store as patternsStore } from '../store';
17
16
  import { unlock } from '../lock-unlock';
17
+ import { jsx as _jsx } from "react/jsx-runtime";
18
+ import { Fragment as _Fragment } from "react/jsx-runtime";
19
+ import { jsxs as _jsxs } from "react/jsx-runtime";
18
20
  function PatternsManageButton({
19
21
  clientId
20
22
  }) {
@@ -55,11 +57,15 @@ function PatternsManageButton({
55
57
  if (!isVisible) {
56
58
  return null;
57
59
  }
58
- return createElement(Fragment, null, canRemove && createElement(MenuItem, {
59
- onClick: () => convertSyncedPatternToStatic(clientId)
60
- }, __('Detach')), createElement(MenuItem, {
61
- href: managePatternsUrl
62
- }, __('Manage patterns')));
60
+ return /*#__PURE__*/_jsxs(_Fragment, {
61
+ children: [canRemove && /*#__PURE__*/_jsx(MenuItem, {
62
+ onClick: () => convertSyncedPatternToStatic(clientId),
63
+ children: __('Detach')
64
+ }), /*#__PURE__*/_jsx(MenuItem, {
65
+ href: managePatternsUrl,
66
+ children: __('Manage patterns')
67
+ })]
68
+ });
63
69
  }
64
70
  export default PatternsManageButton;
65
71
  //# sourceMappingURL=patterns-manage-button.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["MenuItem","__","isReusableBlock","useSelect","useDispatch","store","blockEditorStore","addQueryArgs","coreStore","patternsStore","unlock","PatternsManageButton","clientId","canRemove","isVisible","managePatternsUrl","select","getBlock","canRemoveBlock","getBlockCount","canUser","reusableBlock","attributes","ref","innerBlockCount","path","post_type","convertSyncedPatternToStatic","createElement","Fragment","onClick","href"],"sources":["@wordpress/patterns/src/components/patterns-manage-button.js"],"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 { canRemove, isVisible, managePatternsUrl } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock, canRemoveBlock, getBlockCount } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\tconst reusableBlock = getBlock( clientId );\n\n\t\t\treturn {\n\t\t\t\tcanRemove: canRemoveBlock( clientId ),\n\t\t\t\tisVisible:\n\t\t\t\t\t!! reusableBlock &&\n\t\t\t\t\tisReusableBlock( reusableBlock ) &&\n\t\t\t\t\t!! canUser(\n\t\t\t\t\t\t'update',\n\t\t\t\t\t\t'blocks',\n\t\t\t\t\t\treusableBlock.attributes.ref\n\t\t\t\t\t),\n\t\t\t\tinnerBlockCount: getBlockCount( clientId ),\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', 'templates' )\n\t\t\t\t\t? addQueryArgs( 'site-editor.php', {\n\t\t\t\t\t\t\tpath: '/patterns',\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\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{ canRemove && (\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => convertSyncedPatternToStatic( clientId ) }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Detach' ) }\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"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AACnE,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASF,KAAK,IAAIG,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA,SAASH,KAAK,IAAII,aAAa,QAAQ,UAAU;AACjD,SAASC,MAAM,QAAQ,gBAAgB;AAEvC,SAASC,oBAAoBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAC7C,MAAM;IAAEC,SAAS;IAAEC,SAAS;IAAEC;EAAkB,CAAC,GAAGZ,SAAS,CAC1Da,MAAM,IAAM;IACb,MAAM;MAAEC,QAAQ;MAAEC,cAAc;MAAEC;IAAc,CAAC,GAChDH,MAAM,CAAEV,gBAAiB,CAAC;IAC3B,MAAM;MAAEc;IAAQ,CAAC,GAAGJ,MAAM,CAAER,SAAU,CAAC;IACvC,MAAMa,aAAa,GAAGJ,QAAQ,CAAEL,QAAS,CAAC;IAE1C,OAAO;MACNC,SAAS,EAAEK,cAAc,CAAEN,QAAS,CAAC;MACrCE,SAAS,EACR,CAAC,CAAEO,aAAa,IAChBnB,eAAe,CAAEmB,aAAc,CAAC,IAChC,CAAC,CAAED,OAAO,CACT,QAAQ,EACR,QAAQ,EACRC,aAAa,CAACC,UAAU,CAACC,GAC1B,CAAC;MACFC,eAAe,EAAEL,aAAa,CAAEP,QAAS,CAAC;MAC1C;MACA;MACA;MACAG,iBAAiB,EAAEK,OAAO,CAAE,QAAQ,EAAE,WAAY,CAAC,GAChDb,YAAY,CAAE,iBAAiB,EAAE;QACjCkB,IAAI,EAAE;MACN,CAAE,CAAC,GACHlB,YAAY,CAAE,UAAU,EAAE;QAC1BmB,SAAS,EAAE;MACX,CAAE;IACN,CAAC;EACF,CAAC,EACD,CAAEd,QAAQ,CACX,CAAC;;EAED;EACA;EACA,MAAM;IAAEe;EAA6B,CAAC,GAAGjB,MAAM,CAC9CN,WAAW,CAAEK,aAAc,CAC5B,CAAC;EAED,IAAK,CAAEK,SAAS,EAAG;IAClB,OAAO,IAAI;EACZ;EAEA,OACCc,aAAA,CAAAC,QAAA,QACGhB,SAAS,IACVe,aAAA,CAAC5B,QAAQ;IACR8B,OAAO,EAAGA,CAAA,KAAMH,4BAA4B,CAAEf,QAAS;EAAG,GAExDX,EAAE,CAAE,QAAS,CACN,CACV,EACD2B,aAAA,CAAC5B,QAAQ;IAAC+B,IAAI,EAAGhB;EAAmB,GACjCd,EAAE,CAAE,iBAAkB,CACf,CACT,CAAC;AAEL;AAEA,eAAeU,oBAAoB","ignoreList":[]}
1
+ {"version":3,"names":["MenuItem","__","isReusableBlock","useSelect","useDispatch","store","blockEditorStore","addQueryArgs","coreStore","patternsStore","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PatternsManageButton","clientId","canRemove","isVisible","managePatternsUrl","select","getBlock","canRemoveBlock","getBlockCount","canUser","reusableBlock","attributes","ref","innerBlockCount","path","post_type","convertSyncedPatternToStatic","children","onClick","href"],"sources":["@wordpress/patterns/src/components/patterns-manage-button.js"],"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 { canRemove, isVisible, managePatternsUrl } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock, canRemoveBlock, getBlockCount } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\tconst reusableBlock = getBlock( clientId );\n\n\t\t\treturn {\n\t\t\t\tcanRemove: canRemoveBlock( clientId ),\n\t\t\t\tisVisible:\n\t\t\t\t\t!! reusableBlock &&\n\t\t\t\t\tisReusableBlock( reusableBlock ) &&\n\t\t\t\t\t!! canUser(\n\t\t\t\t\t\t'update',\n\t\t\t\t\t\t'blocks',\n\t\t\t\t\t\treusableBlock.attributes.ref\n\t\t\t\t\t),\n\t\t\t\tinnerBlockCount: getBlockCount( clientId ),\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', 'templates' )\n\t\t\t\t\t? addQueryArgs( 'site-editor.php', {\n\t\t\t\t\t\t\tpath: '/patterns',\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\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{ canRemove && (\n\t\t\t\t<MenuItem\n\t\t\t\t\tonClick={ () => convertSyncedPatternToStatic( clientId ) }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Detach' ) }\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"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AACnE,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASF,KAAK,IAAIG,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA,SAASH,KAAK,IAAII,aAAa,QAAQ,UAAU;AACjD,SAASC,MAAM,QAAQ,gBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAExC,SAASC,oBAAoBA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAC7C,MAAM;IAAEC,SAAS;IAAEC,SAAS;IAAEC;EAAkB,CAAC,GAAGlB,SAAS,CAC1DmB,MAAM,IAAM;IACb,MAAM;MAAEC,QAAQ;MAAEC,cAAc;MAAEC;IAAc,CAAC,GAChDH,MAAM,CAAEhB,gBAAiB,CAAC;IAC3B,MAAM;MAAEoB;IAAQ,CAAC,GAAGJ,MAAM,CAAEd,SAAU,CAAC;IACvC,MAAMmB,aAAa,GAAGJ,QAAQ,CAAEL,QAAS,CAAC;IAE1C,OAAO;MACNC,SAAS,EAAEK,cAAc,CAAEN,QAAS,CAAC;MACrCE,SAAS,EACR,CAAC,CAAEO,aAAa,IAChBzB,eAAe,CAAEyB,aAAc,CAAC,IAChC,CAAC,CAAED,OAAO,CACT,QAAQ,EACR,QAAQ,EACRC,aAAa,CAACC,UAAU,CAACC,GAC1B,CAAC;MACFC,eAAe,EAAEL,aAAa,CAAEP,QAAS,CAAC;MAC1C;MACA;MACA;MACAG,iBAAiB,EAAEK,OAAO,CAAE,QAAQ,EAAE,WAAY,CAAC,GAChDnB,YAAY,CAAE,iBAAiB,EAAE;QACjCwB,IAAI,EAAE;MACN,CAAE,CAAC,GACHxB,YAAY,CAAE,UAAU,EAAE;QAC1ByB,SAAS,EAAE;MACX,CAAE;IACN,CAAC;EACF,CAAC,EACD,CAAEd,QAAQ,CACX,CAAC;;EAED;EACA;EACA,MAAM;IAAEe;EAA6B,CAAC,GAAGvB,MAAM,CAC9CN,WAAW,CAAEK,aAAc,CAC5B,CAAC;EAED,IAAK,CAAEW,SAAS,EAAG;IAClB,OAAO,IAAI;EACZ;EAEA,oBACCJ,KAAA,CAAAF,SAAA;IAAAoB,QAAA,GACGf,SAAS,iBACVP,IAAA,CAACZ,QAAQ;MACRmC,OAAO,EAAGA,CAAA,KAAMF,4BAA4B,CAAEf,QAAS,CAAG;MAAAgB,QAAA,EAExDjC,EAAE,CAAE,QAAS;IAAC,CACP,CACV,eACDW,IAAA,CAACZ,QAAQ;MAACoC,IAAI,EAAGf,iBAAmB;MAAAa,QAAA,EACjCjC,EAAE,CAAE,iBAAkB;IAAC,CAChB,CAAC;EAAA,CACV,CAAC;AAEL;AAEA,eAAegB,oBAAoB","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -15,6 +14,8 @@ import { speak } from '@wordpress/a11y';
15
14
  * Internal dependencies
16
15
  */
17
16
  import { CATEGORY_SLUG } from './category-selector';
17
+ import { jsx as _jsx } from "react/jsx-runtime";
18
+ import { jsxs as _jsxs } from "react/jsx-runtime";
18
19
  export default function RenamePatternCategoryModal({
19
20
  category,
20
21
  existingCategories,
@@ -102,40 +103,48 @@ export default function RenamePatternCategoryModal({
102
103
  onClose();
103
104
  setName('');
104
105
  };
105
- return createElement(Modal, {
106
+ return /*#__PURE__*/_jsx(Modal, {
106
107
  title: __('Rename'),
107
108
  onRequestClose: onRequestClose,
108
- ...props
109
- }, createElement("form", {
110
- onSubmit: onSave
111
- }, createElement(VStack, {
112
- spacing: "5"
113
- }, createElement(VStack, {
114
- spacing: "2"
115
- }, createElement(TextControl, {
116
- ref: textControlRef,
117
- __nextHasNoMarginBottom: true,
118
- __next40pxDefaultSize: true,
119
- label: __('Name'),
120
- value: name,
121
- onChange: onChange,
122
- "aria-describedby": validationMessageId,
123
- required: true
124
- }), validationMessage && createElement("span", {
125
- className: "patterns-rename-pattern-category-modal__validation-message",
126
- id: validationMessageId
127
- }, validationMessage)), createElement(HStack, {
128
- justify: "right"
129
- }, createElement(Button, {
130
- __next40pxDefaultSize: true,
131
- variant: "tertiary",
132
- onClick: onRequestClose
133
- }, __('Cancel')), createElement(Button, {
134
- __next40pxDefaultSize: true,
135
- variant: "primary",
136
- type: "submit",
137
- "aria-disabled": !name || name === category.name || isSaving,
138
- isBusy: isSaving
139
- }, __('Save'))))));
109
+ ...props,
110
+ children: /*#__PURE__*/_jsx("form", {
111
+ onSubmit: onSave,
112
+ children: /*#__PURE__*/_jsxs(VStack, {
113
+ spacing: "5",
114
+ children: [/*#__PURE__*/_jsxs(VStack, {
115
+ spacing: "2",
116
+ children: [/*#__PURE__*/_jsx(TextControl, {
117
+ ref: textControlRef,
118
+ __nextHasNoMarginBottom: true,
119
+ __next40pxDefaultSize: true,
120
+ label: __('Name'),
121
+ value: name,
122
+ onChange: onChange,
123
+ "aria-describedby": validationMessageId,
124
+ required: true
125
+ }), validationMessage && /*#__PURE__*/_jsx("span", {
126
+ className: "patterns-rename-pattern-category-modal__validation-message",
127
+ id: validationMessageId,
128
+ children: validationMessage
129
+ })]
130
+ }), /*#__PURE__*/_jsxs(HStack, {
131
+ justify: "right",
132
+ children: [/*#__PURE__*/_jsx(Button, {
133
+ __next40pxDefaultSize: true,
134
+ variant: "tertiary",
135
+ onClick: onRequestClose,
136
+ children: __('Cancel')
137
+ }), /*#__PURE__*/_jsx(Button, {
138
+ __next40pxDefaultSize: true,
139
+ variant: "primary",
140
+ type: "submit",
141
+ "aria-disabled": !name || name === category.name || isSaving,
142
+ isBusy: isSaving,
143
+ children: __('Save')
144
+ })]
145
+ })]
146
+ })
147
+ })
148
+ });
140
149
  }
141
150
  //# sourceMappingURL=rename-pattern-category-modal.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Modal","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","store","coreStore","useDispatch","useId","useRef","useState","decodeEntities","__","noticesStore","speak","CATEGORY_SLUG","RenamePatternCategoryModal","category","existingCategories","onClose","onError","onSuccess","props","id","textControlRef","name","setName","isSaving","setIsSaving","validationMessage","setValidationMessage","validationMessageId","undefined","saveEntityRecord","invalidateResolution","createErrorNotice","createSuccessNotice","onChange","newName","onSave","event","preventDefault","message","current","focus","patternCategories","find","existingCategory","label","toLowerCase","savedRecord","slug","type","error","onRequestClose","createElement","title","onSubmit","spacing","ref","__nextHasNoMarginBottom","__next40pxDefaultSize","value","required","className","justify","variant","onClick","isBusy"],"sources":["@wordpress/patterns/src/components/rename-pattern-category-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tModal,\n\tButton,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useId, useRef, useState } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { speak } from '@wordpress/a11y';\n\n/**\n * Internal dependencies\n */\nimport { CATEGORY_SLUG } from './category-selector';\n\nexport default function RenamePatternCategoryModal( {\n\tcategory,\n\texistingCategories,\n\tonClose,\n\tonError,\n\tonSuccess,\n\t...props\n} ) {\n\tconst id = useId();\n\tconst textControlRef = useRef();\n\tconst [ name, setName ] = useState( decodeEntities( category.name ) );\n\tconst [ isSaving, setIsSaving ] = useState( false );\n\tconst [ validationMessage, setValidationMessage ] = useState( false );\n\tconst validationMessageId = validationMessage\n\t\t? `patterns-rename-pattern-category-modal__validation-message-${ id }`\n\t\t: undefined;\n\n\tconst { saveEntityRecord, invalidateResolution } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst onChange = ( newName ) => {\n\t\tif ( validationMessage ) {\n\t\t\tsetValidationMessage( undefined );\n\t\t}\n\t\tsetName( newName );\n\t};\n\n\tconst onSave = async ( event ) => {\n\t\tevent.preventDefault();\n\n\t\tif ( isSaving ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! name || name === category.name ) {\n\t\t\tconst message = __( 'Please enter a new name for this category.' );\n\t\t\tspeak( message, 'assertive' );\n\t\t\tsetValidationMessage( message );\n\t\t\ttextControlRef.current?.focus();\n\t\t\treturn;\n\t\t}\n\n\t\t// Check existing categories to avoid creating duplicates.\n\t\tif (\n\t\t\texistingCategories.patternCategories.find( ( existingCategory ) => {\n\t\t\t\t// Compare the id so that the we don't disallow the user changing the case of their current category\n\t\t\t\t// (i.e. renaming 'test' to 'Test').\n\t\t\t\treturn (\n\t\t\t\t\texistingCategory.id !== category.id &&\n\t\t\t\t\texistingCategory.label.toLowerCase() === name.toLowerCase()\n\t\t\t\t);\n\t\t\t} )\n\t\t) {\n\t\t\tconst message = __(\n\t\t\t\t'This category already exists. Please use a different name.'\n\t\t\t);\n\t\t\tspeak( message, 'assertive' );\n\t\t\tsetValidationMessage( message );\n\t\t\ttextControlRef.current?.focus();\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetIsSaving( true );\n\n\t\t\t// User pattern category properties may differ as they can be\n\t\t\t// normalized for use alongside template part areas, core pattern\n\t\t\t// categories etc. As a result we won't just destructure the passed\n\t\t\t// category object.\n\t\t\tconst savedRecord = await saveEntityRecord(\n\t\t\t\t'taxonomy',\n\t\t\t\tCATEGORY_SLUG,\n\t\t\t\t{\n\t\t\t\t\tid: category.id,\n\t\t\t\t\tslug: category.slug,\n\t\t\t\t\tname,\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tinvalidateResolution( 'getUserPatternCategories' );\n\t\t\tonSuccess?.( savedRecord );\n\t\t\tonClose();\n\n\t\t\tcreateSuccessNotice( __( 'Pattern category renamed.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-category-update',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tonError?.();\n\t\t\tcreateErrorNotice( error.message, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-category-update',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsSaving( false );\n\t\t\tsetName( '' );\n\t\t}\n\t};\n\n\tconst onRequestClose = () => {\n\t\tonClose();\n\t\tsetName( '' );\n\t};\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ __( 'Rename' ) }\n\t\t\tonRequestClose={ onRequestClose }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t<form onSubmit={ onSave }>\n\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t<VStack spacing=\"2\">\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\tref={ textControlRef }\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tvalue={ name }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\taria-describedby={ validationMessageId }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ validationMessage && (\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tclassName=\"patterns-rename-pattern-category-modal__validation-message\"\n\t\t\t\t\t\t\t\tid={ validationMessageId }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ validationMessage }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</VStack>\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ onRequestClose }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\taria-disabled={\n\t\t\t\t\t\t\t\t! name || name === category.name || isSaving\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBusy={ isSaving }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Modal","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","store","coreStore","useDispatch","useId","useRef","useState","decodeEntities","__","noticesStore","speak","CATEGORY_SLUG","jsx","_jsx","jsxs","_jsxs","RenamePatternCategoryModal","category","existingCategories","onClose","onError","onSuccess","props","id","textControlRef","name","setName","isSaving","setIsSaving","validationMessage","setValidationMessage","validationMessageId","undefined","saveEntityRecord","invalidateResolution","createErrorNotice","createSuccessNotice","onChange","newName","onSave","event","preventDefault","message","current","focus","patternCategories","find","existingCategory","label","toLowerCase","savedRecord","slug","type","error","onRequestClose","title","children","onSubmit","spacing","ref","__nextHasNoMarginBottom","__next40pxDefaultSize","value","required","className","justify","variant","onClick","isBusy"],"sources":["@wordpress/patterns/src/components/rename-pattern-category-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tModal,\n\tButton,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useId, useRef, useState } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { speak } from '@wordpress/a11y';\n\n/**\n * Internal dependencies\n */\nimport { CATEGORY_SLUG } from './category-selector';\n\nexport default function RenamePatternCategoryModal( {\n\tcategory,\n\texistingCategories,\n\tonClose,\n\tonError,\n\tonSuccess,\n\t...props\n} ) {\n\tconst id = useId();\n\tconst textControlRef = useRef();\n\tconst [ name, setName ] = useState( decodeEntities( category.name ) );\n\tconst [ isSaving, setIsSaving ] = useState( false );\n\tconst [ validationMessage, setValidationMessage ] = useState( false );\n\tconst validationMessageId = validationMessage\n\t\t? `patterns-rename-pattern-category-modal__validation-message-${ id }`\n\t\t: undefined;\n\n\tconst { saveEntityRecord, invalidateResolution } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst onChange = ( newName ) => {\n\t\tif ( validationMessage ) {\n\t\t\tsetValidationMessage( undefined );\n\t\t}\n\t\tsetName( newName );\n\t};\n\n\tconst onSave = async ( event ) => {\n\t\tevent.preventDefault();\n\n\t\tif ( isSaving ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! name || name === category.name ) {\n\t\t\tconst message = __( 'Please enter a new name for this category.' );\n\t\t\tspeak( message, 'assertive' );\n\t\t\tsetValidationMessage( message );\n\t\t\ttextControlRef.current?.focus();\n\t\t\treturn;\n\t\t}\n\n\t\t// Check existing categories to avoid creating duplicates.\n\t\tif (\n\t\t\texistingCategories.patternCategories.find( ( existingCategory ) => {\n\t\t\t\t// Compare the id so that the we don't disallow the user changing the case of their current category\n\t\t\t\t// (i.e. renaming 'test' to 'Test').\n\t\t\t\treturn (\n\t\t\t\t\texistingCategory.id !== category.id &&\n\t\t\t\t\texistingCategory.label.toLowerCase() === name.toLowerCase()\n\t\t\t\t);\n\t\t\t} )\n\t\t) {\n\t\t\tconst message = __(\n\t\t\t\t'This category already exists. Please use a different name.'\n\t\t\t);\n\t\t\tspeak( message, 'assertive' );\n\t\t\tsetValidationMessage( message );\n\t\t\ttextControlRef.current?.focus();\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetIsSaving( true );\n\n\t\t\t// User pattern category properties may differ as they can be\n\t\t\t// normalized for use alongside template part areas, core pattern\n\t\t\t// categories etc. As a result we won't just destructure the passed\n\t\t\t// category object.\n\t\t\tconst savedRecord = await saveEntityRecord(\n\t\t\t\t'taxonomy',\n\t\t\t\tCATEGORY_SLUG,\n\t\t\t\t{\n\t\t\t\t\tid: category.id,\n\t\t\t\t\tslug: category.slug,\n\t\t\t\t\tname,\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tinvalidateResolution( 'getUserPatternCategories' );\n\t\t\tonSuccess?.( savedRecord );\n\t\t\tonClose();\n\n\t\t\tcreateSuccessNotice( __( 'Pattern category renamed.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-category-update',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tonError?.();\n\t\t\tcreateErrorNotice( error.message, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-category-update',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsSaving( false );\n\t\t\tsetName( '' );\n\t\t}\n\t};\n\n\tconst onRequestClose = () => {\n\t\tonClose();\n\t\tsetName( '' );\n\t};\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ __( 'Rename' ) }\n\t\t\tonRequestClose={ onRequestClose }\n\t\t\t{ ...props }\n\t\t>\n\t\t\t<form onSubmit={ onSave }>\n\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t<VStack spacing=\"2\">\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\tref={ textControlRef }\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tvalue={ name }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t\taria-describedby={ validationMessageId }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ validationMessage && (\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tclassName=\"patterns-rename-pattern-category-modal__validation-message\"\n\t\t\t\t\t\t\t\tid={ validationMessageId }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ validationMessage }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</VStack>\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ onRequestClose }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\taria-disabled={\n\t\t\t\t\t\t\t\t! name || name === category.name || isSaving\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBusy={ isSaving }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -9,6 +8,8 @@ import { useState } from '@wordpress/element';
9
8
  import { decodeEntities } from '@wordpress/html-entities';
10
9
  import { __ } from '@wordpress/i18n';
11
10
  import { store as noticesStore } from '@wordpress/notices';
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ import { jsxs as _jsxs } from "react/jsx-runtime";
12
13
  export default function RenamePatternModal({
13
14
  onClose,
14
15
  onError,
@@ -63,31 +64,37 @@ export default function RenamePatternModal({
63
64
  onClose?.();
64
65
  setName('');
65
66
  };
66
- return createElement(Modal, {
67
+ return /*#__PURE__*/_jsx(Modal, {
67
68
  title: __('Rename'),
68
69
  ...props,
69
- onRequestClose: onClose
70
- }, createElement("form", {
71
- onSubmit: onRename
72
- }, createElement(VStack, {
73
- spacing: "5"
74
- }, createElement(TextControl, {
75
- __nextHasNoMarginBottom: true,
76
- __next40pxDefaultSize: true,
77
- label: __('Name'),
78
- value: name,
79
- onChange: setName,
80
- required: true
81
- }), createElement(HStack, {
82
- justify: "right"
83
- }, createElement(Button, {
84
- __next40pxDefaultSize: true,
85
- variant: "tertiary",
86
- onClick: onRequestClose
87
- }, __('Cancel')), createElement(Button, {
88
- __next40pxDefaultSize: true,
89
- variant: "primary",
90
- type: "submit"
91
- }, __('Save'))))));
70
+ onRequestClose: onClose,
71
+ children: /*#__PURE__*/_jsx("form", {
72
+ onSubmit: onRename,
73
+ children: /*#__PURE__*/_jsxs(VStack, {
74
+ spacing: "5",
75
+ children: [/*#__PURE__*/_jsx(TextControl, {
76
+ __nextHasNoMarginBottom: true,
77
+ __next40pxDefaultSize: true,
78
+ label: __('Name'),
79
+ value: name,
80
+ onChange: setName,
81
+ required: true
82
+ }), /*#__PURE__*/_jsxs(HStack, {
83
+ justify: "right",
84
+ children: [/*#__PURE__*/_jsx(Button, {
85
+ __next40pxDefaultSize: true,
86
+ variant: "tertiary",
87
+ onClick: onRequestClose,
88
+ children: __('Cancel')
89
+ }), /*#__PURE__*/_jsx(Button, {
90
+ __next40pxDefaultSize: true,
91
+ variant: "primary",
92
+ type: "submit",
93
+ children: __('Save')
94
+ })]
95
+ })]
96
+ })
97
+ })
98
+ });
92
99
  }
93
100
  //# sourceMappingURL=rename-pattern-modal.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Button","Modal","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","store","coreStore","useDispatch","useState","decodeEntities","__","noticesStore","RenamePatternModal","onClose","onError","onSuccess","pattern","props","originalName","title","name","setName","isSaving","setIsSaving","editEntityRecord","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","createSuccessNotice","createErrorNotice","onRename","event","preventDefault","type","id","savedRecord","throwOnError","error","errorMessage","message","code","onRequestClose","createElement","onSubmit","spacing","__nextHasNoMarginBottom","__next40pxDefaultSize","label","value","onChange","required","justify","variant","onClick"],"sources":["@wordpress/patterns/src/components/rename-pattern-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\n\nexport default function RenamePatternModal( {\n\tonClose,\n\tonError,\n\tonSuccess,\n\tpattern,\n\t...props\n} ) {\n\tconst originalName = decodeEntities( pattern.title );\n\tconst [ name, setName ] = useState( originalName );\n\tconst [ isSaving, setIsSaving ] = useState( false );\n\n\tconst {\n\t\teditEntityRecord,\n\t\t__experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits,\n\t} = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst onRename = async ( event ) => {\n\t\tevent.preventDefault();\n\n\t\tif ( ! name || name === pattern.title || isSaving ) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tawait editEntityRecord( 'postType', pattern.type, pattern.id, {\n\t\t\t\ttitle: name,\n\t\t\t} );\n\n\t\t\tsetIsSaving( true );\n\t\t\tsetName( '' );\n\t\t\tonClose?.();\n\n\t\t\tconst savedRecord = await saveSpecifiedEntityEdits(\n\t\t\t\t'postType',\n\t\t\t\tpattern.type,\n\t\t\t\tpattern.id,\n\t\t\t\t[ 'title' ],\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\tonSuccess?.( savedRecord );\n\n\t\t\tcreateSuccessNotice( __( 'Pattern renamed' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-update',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tonError?.();\n\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while renaming the pattern.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-update',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsSaving( false );\n\t\t\tsetName( '' );\n\t\t}\n\t};\n\n\tconst onRequestClose = () => {\n\t\tonClose?.();\n\t\tsetName( '' );\n\t};\n\n\treturn (\n\t\t<Modal title={ __( 'Rename' ) } { ...props } onRequestClose={ onClose }>\n\t\t\t<form onSubmit={ onRename }>\n\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ name }\n\t\t\t\t\t\tonChange={ setName }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ onRequestClose }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,MAAM,EACNC,KAAK,EACLC,WAAW,EACXC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,cAAc,QAAQ,0BAA0B;AACzD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASL,KAAK,IAAIM,YAAY,QAAQ,oBAAoB;AAE1D,eAAe,SAASC,kBAAkBA,CAAE;EAC3CC,OAAO;EACPC,OAAO;EACPC,SAAS;EACTC,OAAO;EACP,GAAGC;AACJ,CAAC,EAAG;EACH,MAAMC,YAAY,GAAGT,cAAc,CAAEO,OAAO,CAACG,KAAM,CAAC;EACpD,MAAM,CAAEC,IAAI,EAAEC,OAAO,CAAE,GAAGb,QAAQ,CAAEU,YAAa,CAAC;EAClD,MAAM,CAAEI,QAAQ,EAAEC,WAAW,CAAE,GAAGf,QAAQ,CAAE,KAAM,CAAC;EAEnD,MAAM;IACLgB,gBAAgB;IAChBC,sCAAsC,EAAEC;EACzC,CAAC,GAAGnB,WAAW,CAAED,SAAU,CAAC;EAE5B,MAAM;IAAEqB,mBAAmB;IAAEC;EAAkB,CAAC,GAC/CrB,WAAW,CAAEI,YAAa,CAAC;EAE5B,MAAMkB,QAAQ,GAAG,MAAQC,KAAK,IAAM;IACnCA,KAAK,CAACC,cAAc,CAAC,CAAC;IAEtB,IAAK,CAAEX,IAAI,IAAIA,IAAI,KAAKJ,OAAO,CAACG,KAAK,IAAIG,QAAQ,EAAG;MACnD;IACD;IAEA,IAAI;MACH,MAAME,gBAAgB,CAAE,UAAU,EAAER,OAAO,CAACgB,IAAI,EAAEhB,OAAO,CAACiB,EAAE,EAAE;QAC7Dd,KAAK,EAAEC;MACR,CAAE,CAAC;MAEHG,WAAW,CAAE,IAAK,CAAC;MACnBF,OAAO,CAAE,EAAG,CAAC;MACbR,OAAO,GAAG,CAAC;MAEX,MAAMqB,WAAW,GAAG,MAAMR,wBAAwB,CACjD,UAAU,EACVV,OAAO,CAACgB,IAAI,EACZhB,OAAO,CAACiB,EAAE,EACV,CAAE,OAAO,CAAE,EACX;QAAEE,YAAY,EAAE;MAAK,CACtB,CAAC;MAEDpB,SAAS,GAAImB,WAAY,CAAC;MAE1BP,mBAAmB,CAAEjB,EAAE,CAAE,iBAAkB,CAAC,EAAE;QAC7CsB,IAAI,EAAE,UAAU;QAChBC,EAAE,EAAE;MACL,CAAE,CAAC;IACJ,CAAC,CAAC,OAAQG,KAAK,EAAG;MACjBtB,OAAO,GAAG,CAAC;MAEX,MAAMuB,YAAY,GACjBD,KAAK,CAACE,OAAO,IAAIF,KAAK,CAACG,IAAI,KAAK,eAAe,GAC5CH,KAAK,CAACE,OAAO,GACb5B,EAAE,CAAE,+CAAgD,CAAC;MAEzDkB,iBAAiB,CAAES,YAAY,EAAE;QAChCL,IAAI,EAAE,UAAU;QAChBC,EAAE,EAAE;MACL,CAAE,CAAC;IACJ,CAAC,SAAS;MACTV,WAAW,CAAE,KAAM,CAAC;MACpBF,OAAO,CAAE,EAAG,CAAC;IACd;EACD,CAAC;EAED,MAAMmB,cAAc,GAAGA,CAAA,KAAM;IAC5B3B,OAAO,GAAG,CAAC;IACXQ,OAAO,CAAE,EAAG,CAAC;EACd,CAAC;EAED,OACCoB,aAAA,CAAC1C,KAAK;IAACoB,KAAK,EAAGT,EAAE,CAAE,QAAS,CAAG;IAAA,GAAMO,KAAK;IAAGuB,cAAc,EAAG3B;EAAS,GACtE4B,aAAA;IAAMC,QAAQ,EAAGb;EAAU,GAC1BY,aAAA,CAACrC,MAAM;IAACuC,OAAO,EAAC;EAAG,GAClBF,aAAA,CAACzC,WAAW;IACX4C,uBAAuB;IACvBC,qBAAqB;IACrBC,KAAK,EAAGpC,EAAE,CAAE,MAAO,CAAG;IACtBqC,KAAK,EAAG3B,IAAM;IACd4B,QAAQ,EAAG3B,OAAS;IACpB4B,QAAQ;EAAA,CACR,CAAC,EAEFR,aAAA,CAACvC,MAAM;IAACgD,OAAO,EAAC;EAAO,GACtBT,aAAA,CAAC3C,MAAM;IACN+C,qBAAqB;IACrBM,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAGZ;EAAgB,GAExB9B,EAAE,CAAE,QAAS,CACR,CAAC,EAET+B,aAAA,CAAC3C,MAAM;IACN+C,qBAAqB;IACrBM,OAAO,EAAC,SAAS;IACjBnB,IAAI,EAAC;EAAQ,GAEXtB,EAAE,CAAE,MAAO,CACN,CACD,CACD,CACH,CACA,CAAC;AAEV","ignoreList":[]}
1
+ {"version":3,"names":["Button","Modal","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","store","coreStore","useDispatch","useState","decodeEntities","__","noticesStore","jsx","_jsx","jsxs","_jsxs","RenamePatternModal","onClose","onError","onSuccess","pattern","props","originalName","title","name","setName","isSaving","setIsSaving","editEntityRecord","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","createSuccessNotice","createErrorNotice","onRename","event","preventDefault","type","id","savedRecord","throwOnError","error","errorMessage","message","code","onRequestClose","children","onSubmit","spacing","__nextHasNoMarginBottom","__next40pxDefaultSize","label","value","onChange","required","justify","variant","onClick"],"sources":["@wordpress/patterns/src/components/rename-pattern-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\n\nexport default function RenamePatternModal( {\n\tonClose,\n\tonError,\n\tonSuccess,\n\tpattern,\n\t...props\n} ) {\n\tconst originalName = decodeEntities( pattern.title );\n\tconst [ name, setName ] = useState( originalName );\n\tconst [ isSaving, setIsSaving ] = useState( false );\n\n\tconst {\n\t\teditEntityRecord,\n\t\t__experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits,\n\t} = useDispatch( coreStore );\n\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst onRename = async ( event ) => {\n\t\tevent.preventDefault();\n\n\t\tif ( ! name || name === pattern.title || isSaving ) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tawait editEntityRecord( 'postType', pattern.type, pattern.id, {\n\t\t\t\ttitle: name,\n\t\t\t} );\n\n\t\t\tsetIsSaving( true );\n\t\t\tsetName( '' );\n\t\t\tonClose?.();\n\n\t\t\tconst savedRecord = await saveSpecifiedEntityEdits(\n\t\t\t\t'postType',\n\t\t\t\tpattern.type,\n\t\t\t\tpattern.id,\n\t\t\t\t[ 'title' ],\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\tonSuccess?.( savedRecord );\n\n\t\t\tcreateSuccessNotice( __( 'Pattern renamed' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-update',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tonError?.();\n\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while renaming the pattern.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-update',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsSaving( false );\n\t\t\tsetName( '' );\n\t\t}\n\t};\n\n\tconst onRequestClose = () => {\n\t\tonClose?.();\n\t\tsetName( '' );\n\t};\n\n\treturn (\n\t\t<Modal title={ __( 'Rename' ) } { ...props } onRequestClose={ onClose }>\n\t\t\t<form onSubmit={ onRename }>\n\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ name }\n\t\t\t\t\t\tonChange={ setName }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ onRequestClose }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -6,6 +5,7 @@ import { store as blockEditorStore, BlockControls } from '@wordpress/block-edito
6
5
  import { ToolbarButton, ToolbarGroup } from '@wordpress/components';
7
6
  import { useRegistry, useSelect } from '@wordpress/data';
8
7
  import { __ } from '@wordpress/i18n';
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
9
  const CONTENT = 'content';
10
10
  export default function ResetOverridesControl(props) {
11
11
  const name = props.attributes.metadata?.name;
@@ -57,12 +57,16 @@ export default function ResetOverridesControl(props) {
57
57
  [CONTENT]: newOverrides
58
58
  });
59
59
  }
60
- return createElement(BlockControls, {
61
- group: "other"
62
- }, createElement(ToolbarGroup, null, createElement(ToolbarButton, {
63
- onClick: onClick,
64
- disabled: !isOverriden,
65
- __experimentalIsFocusable: true
66
- }, __('Reset'))));
60
+ return /*#__PURE__*/_jsx(BlockControls, {
61
+ group: "other",
62
+ children: /*#__PURE__*/_jsx(ToolbarGroup, {
63
+ children: /*#__PURE__*/_jsx(ToolbarButton, {
64
+ onClick: onClick,
65
+ disabled: !isOverriden,
66
+ __experimentalIsFocusable: true,
67
+ children: __('Reset')
68
+ })
69
+ })
70
+ });
67
71
  }
68
72
  //# sourceMappingURL=reset-overrides-control.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["store","blockEditorStore","BlockControls","ToolbarButton","ToolbarGroup","useRegistry","useSelect","__","CONTENT","ResetOverridesControl","props","name","attributes","metadata","registry","isOverriden","select","getBlockAttributes","getBlockParentsByBlockName","patternClientId","clientId","overrides","hasOwnProperty","onClick","updateBlockAttributes","__unstableMarkLastChangeAsPersistent","dispatch","newOverrides","Object","keys","length","undefined","createElement","group","disabled","__experimentalIsFocusable"],"sources":["@wordpress/patterns/src/components/reset-overrides-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tstore as blockEditorStore,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { useRegistry, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\nconst CONTENT = 'content';\n\nexport default function ResetOverridesControl( props ) {\n\tconst name = props.attributes.metadata?.name;\n\tconst registry = useRegistry();\n\tconst isOverriden = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! name ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { getBlockAttributes, getBlockParentsByBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst [ patternClientId ] = getBlockParentsByBlockName(\n\t\t\t\tprops.clientId,\n\t\t\t\t'core/block',\n\t\t\t\ttrue\n\t\t\t);\n\n\t\t\tif ( ! patternClientId ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst overrides = getBlockAttributes( patternClientId )[ CONTENT ];\n\n\t\t\tif ( ! overrides ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\treturn overrides.hasOwnProperty( name );\n\t\t},\n\t\t[ props.clientId, name ]\n\t);\n\n\tfunction onClick() {\n\t\tconst { getBlockAttributes, getBlockParentsByBlockName } =\n\t\t\tregistry.select( blockEditorStore );\n\t\tconst [ patternClientId ] = getBlockParentsByBlockName(\n\t\t\tprops.clientId,\n\t\t\t'core/block',\n\t\t\ttrue\n\t\t);\n\n\t\tif ( ! patternClientId ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst overrides = getBlockAttributes( patternClientId )[ CONTENT ];\n\n\t\tif ( ! overrides.hasOwnProperty( name ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { updateBlockAttributes, __unstableMarkLastChangeAsPersistent } =\n\t\t\tregistry.dispatch( blockEditorStore );\n\t\t__unstableMarkLastChangeAsPersistent();\n\n\t\tlet newOverrides = { ...overrides };\n\t\tdelete newOverrides[ name ];\n\n\t\tif ( ! Object.keys( newOverrides ).length ) {\n\t\t\tnewOverrides = undefined;\n\t\t}\n\n\t\tupdateBlockAttributes( patternClientId, {\n\t\t\t[ CONTENT ]: newOverrides,\n\t\t} );\n\t}\n\n\treturn (\n\t\t<BlockControls group=\"other\">\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\tdisabled={ ! isOverriden }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t</ToolbarButton>\n\t\t\t</ToolbarGroup>\n\t\t</BlockControls>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,KAAK,IAAIC,gBAAgB,EACzBC,aAAa,QACP,yBAAyB;AAChC,SAASC,aAAa,EAAEC,YAAY,QAAQ,uBAAuB;AACnE,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,MAAMC,OAAO,GAAG,SAAS;AAEzB,eAAe,SAASC,qBAAqBA,CAAEC,KAAK,EAAG;EACtD,MAAMC,IAAI,GAAGD,KAAK,CAACE,UAAU,CAACC,QAAQ,EAAEF,IAAI;EAC5C,MAAMG,QAAQ,GAAGT,WAAW,CAAC,CAAC;EAC9B,MAAMU,WAAW,GAAGT,SAAS,CAC1BU,MAAM,IAAM;IACb,IAAK,CAAEL,IAAI,EAAG;MACb;IACD;IAEA,MAAM;MAAEM,kBAAkB;MAAEC;IAA2B,CAAC,GACvDF,MAAM,CAAEf,gBAAiB,CAAC;IAC3B,MAAM,CAAEkB,eAAe,CAAE,GAAGD,0BAA0B,CACrDR,KAAK,CAACU,QAAQ,EACd,YAAY,EACZ,IACD,CAAC;IAED,IAAK,CAAED,eAAe,EAAG;MACxB;IACD;IAEA,MAAME,SAAS,GAAGJ,kBAAkB,CAAEE,eAAgB,CAAC,CAAEX,OAAO,CAAE;IAElE,IAAK,CAAEa,SAAS,EAAG;MAClB;IACD;IAEA,OAAOA,SAAS,CAACC,cAAc,CAAEX,IAAK,CAAC;EACxC,CAAC,EACD,CAAED,KAAK,CAACU,QAAQ,EAAET,IAAI,CACvB,CAAC;EAED,SAASY,OAAOA,CAAA,EAAG;IAClB,MAAM;MAAEN,kBAAkB;MAAEC;IAA2B,CAAC,GACvDJ,QAAQ,CAACE,MAAM,CAAEf,gBAAiB,CAAC;IACpC,MAAM,CAAEkB,eAAe,CAAE,GAAGD,0BAA0B,CACrDR,KAAK,CAACU,QAAQ,EACd,YAAY,EACZ,IACD,CAAC;IAED,IAAK,CAAED,eAAe,EAAG;MACxB;IACD;IAEA,MAAME,SAAS,GAAGJ,kBAAkB,CAAEE,eAAgB,CAAC,CAAEX,OAAO,CAAE;IAElE,IAAK,CAAEa,SAAS,CAACC,cAAc,CAAEX,IAAK,CAAC,EAAG;MACzC;IACD;IAEA,MAAM;MAAEa,qBAAqB;MAAEC;IAAqC,CAAC,GACpEX,QAAQ,CAACY,QAAQ,CAAEzB,gBAAiB,CAAC;IACtCwB,oCAAoC,CAAC,CAAC;IAEtC,IAAIE,YAAY,GAAG;MAAE,GAAGN;IAAU,CAAC;IACnC,OAAOM,YAAY,CAAEhB,IAAI,CAAE;IAE3B,IAAK,CAAEiB,MAAM,CAACC,IAAI,CAAEF,YAAa,CAAC,CAACG,MAAM,EAAG;MAC3CH,YAAY,GAAGI,SAAS;IACzB;IAEAP,qBAAqB,CAAEL,eAAe,EAAE;MACvC,CAAEX,OAAO,GAAImB;IACd,CAAE,CAAC;EACJ;EAEA,OACCK,aAAA,CAAC9B,aAAa;IAAC+B,KAAK,EAAC;EAAO,GAC3BD,aAAA,CAAC5B,YAAY,QACZ4B,aAAA,CAAC7B,aAAa;IACboB,OAAO,EAAGA,OAAS;IACnBW,QAAQ,EAAG,CAAEnB,WAAa;IAC1BoB,yBAAyB;EAAA,GAEvB5B,EAAE,CAAE,OAAQ,CACA,CACF,CACA,CAAC;AAElB","ignoreList":[]}
1
+ {"version":3,"names":["store","blockEditorStore","BlockControls","ToolbarButton","ToolbarGroup","useRegistry","useSelect","__","jsx","_jsx","CONTENT","ResetOverridesControl","props","name","attributes","metadata","registry","isOverriden","select","getBlockAttributes","getBlockParentsByBlockName","patternClientId","clientId","overrides","hasOwnProperty","onClick","updateBlockAttributes","__unstableMarkLastChangeAsPersistent","dispatch","newOverrides","Object","keys","length","undefined","group","children","disabled","__experimentalIsFocusable"],"sources":["@wordpress/patterns/src/components/reset-overrides-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tstore as blockEditorStore,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { ToolbarButton, ToolbarGroup } from '@wordpress/components';\nimport { useRegistry, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\nconst CONTENT = 'content';\n\nexport default function ResetOverridesControl( props ) {\n\tconst name = props.attributes.metadata?.name;\n\tconst registry = useRegistry();\n\tconst isOverriden = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! name ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { getBlockAttributes, getBlockParentsByBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst [ patternClientId ] = getBlockParentsByBlockName(\n\t\t\t\tprops.clientId,\n\t\t\t\t'core/block',\n\t\t\t\ttrue\n\t\t\t);\n\n\t\t\tif ( ! patternClientId ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst overrides = getBlockAttributes( patternClientId )[ CONTENT ];\n\n\t\t\tif ( ! overrides ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\treturn overrides.hasOwnProperty( name );\n\t\t},\n\t\t[ props.clientId, name ]\n\t);\n\n\tfunction onClick() {\n\t\tconst { getBlockAttributes, getBlockParentsByBlockName } =\n\t\t\tregistry.select( blockEditorStore );\n\t\tconst [ patternClientId ] = getBlockParentsByBlockName(\n\t\t\tprops.clientId,\n\t\t\t'core/block',\n\t\t\ttrue\n\t\t);\n\n\t\tif ( ! patternClientId ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst overrides = getBlockAttributes( patternClientId )[ CONTENT ];\n\n\t\tif ( ! overrides.hasOwnProperty( name ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { updateBlockAttributes, __unstableMarkLastChangeAsPersistent } =\n\t\t\tregistry.dispatch( blockEditorStore );\n\t\t__unstableMarkLastChangeAsPersistent();\n\n\t\tlet newOverrides = { ...overrides };\n\t\tdelete newOverrides[ name ];\n\n\t\tif ( ! Object.keys( newOverrides ).length ) {\n\t\t\tnewOverrides = undefined;\n\t\t}\n\n\t\tupdateBlockAttributes( patternClientId, {\n\t\t\t[ CONTENT ]: newOverrides,\n\t\t} );\n\t}\n\n\treturn (\n\t\t<BlockControls group=\"other\">\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\tdisabled={ ! isOverriden }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t</ToolbarButton>\n\t\t\t</ToolbarGroup>\n\t\t</BlockControls>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,KAAK,IAAIC,gBAAgB,EACzBC,aAAa,QACP,yBAAyB;AAChC,SAASC,aAAa,EAAEC,YAAY,QAAQ,uBAAuB;AACnE,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,EAAE,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAErC,MAAMC,OAAO,GAAG,SAAS;AAEzB,eAAe,SAASC,qBAAqBA,CAAEC,KAAK,EAAG;EACtD,MAAMC,IAAI,GAAGD,KAAK,CAACE,UAAU,CAACC,QAAQ,EAAEF,IAAI;EAC5C,MAAMG,QAAQ,GAAGX,WAAW,CAAC,CAAC;EAC9B,MAAMY,WAAW,GAAGX,SAAS,CAC1BY,MAAM,IAAM;IACb,IAAK,CAAEL,IAAI,EAAG;MACb;IACD;IAEA,MAAM;MAAEM,kBAAkB;MAAEC;IAA2B,CAAC,GACvDF,MAAM,CAAEjB,gBAAiB,CAAC;IAC3B,MAAM,CAAEoB,eAAe,CAAE,GAAGD,0BAA0B,CACrDR,KAAK,CAACU,QAAQ,EACd,YAAY,EACZ,IACD,CAAC;IAED,IAAK,CAAED,eAAe,EAAG;MACxB;IACD;IAEA,MAAME,SAAS,GAAGJ,kBAAkB,CAAEE,eAAgB,CAAC,CAAEX,OAAO,CAAE;IAElE,IAAK,CAAEa,SAAS,EAAG;MAClB;IACD;IAEA,OAAOA,SAAS,CAACC,cAAc,CAAEX,IAAK,CAAC;EACxC,CAAC,EACD,CAAED,KAAK,CAACU,QAAQ,EAAET,IAAI,CACvB,CAAC;EAED,SAASY,OAAOA,CAAA,EAAG;IAClB,MAAM;MAAEN,kBAAkB;MAAEC;IAA2B,CAAC,GACvDJ,QAAQ,CAACE,MAAM,CAAEjB,gBAAiB,CAAC;IACpC,MAAM,CAAEoB,eAAe,CAAE,GAAGD,0BAA0B,CACrDR,KAAK,CAACU,QAAQ,EACd,YAAY,EACZ,IACD,CAAC;IAED,IAAK,CAAED,eAAe,EAAG;MACxB;IACD;IAEA,MAAME,SAAS,GAAGJ,kBAAkB,CAAEE,eAAgB,CAAC,CAAEX,OAAO,CAAE;IAElE,IAAK,CAAEa,SAAS,CAACC,cAAc,CAAEX,IAAK,CAAC,EAAG;MACzC;IACD;IAEA,MAAM;MAAEa,qBAAqB;MAAEC;IAAqC,CAAC,GACpEX,QAAQ,CAACY,QAAQ,CAAE3B,gBAAiB,CAAC;IACtC0B,oCAAoC,CAAC,CAAC;IAEtC,IAAIE,YAAY,GAAG;MAAE,GAAGN;IAAU,CAAC;IACnC,OAAOM,YAAY,CAAEhB,IAAI,CAAE;IAE3B,IAAK,CAAEiB,MAAM,CAACC,IAAI,CAAEF,YAAa,CAAC,CAACG,MAAM,EAAG;MAC3CH,YAAY,GAAGI,SAAS;IACzB;IAEAP,qBAAqB,CAAEL,eAAe,EAAE;MACvC,CAAEX,OAAO,GAAImB;IACd,CAAE,CAAC;EACJ;EAEA,oBACCpB,IAAA,CAACP,aAAa;IAACgC,KAAK,EAAC,OAAO;IAAAC,QAAA,eAC3B1B,IAAA,CAACL,YAAY;MAAA+B,QAAA,eACZ1B,IAAA,CAACN,aAAa;QACbsB,OAAO,EAAGA,OAAS;QACnBW,QAAQ,EAAG,CAAEnB,WAAa;QAC1BoB,yBAAyB;QAAAF,QAAA,EAEvB5B,EAAE,CAAE,OAAQ;MAAC,CACD;IAAC,CACH;EAAC,CACD,CAAC;AAElB","ignoreList":[]}
@@ -5,7 +5,7 @@ import { lock } from './lock-unlock';
5
5
  import OverridesPanel from './components/overrides-panel';
6
6
  import { default as CreatePatternModal, CreatePatternModalContents } from './components/create-pattern-modal';
7
7
  import { default as DuplicatePatternModal, useDuplicatePatternProps } from './components/duplicate-pattern-modal';
8
- import { isOverridableBlock } from './api';
8
+ import { isOverridableBlock, hasOverridableBlocks } from './api';
9
9
  import RenamePatternModal from './components/rename-pattern-modal';
10
10
  import PatternsMenuItems from './components';
11
11
  import RenamePatternCategoryModal from './components/rename-pattern-category-modal';
@@ -20,6 +20,7 @@ lock(privateApis, {
20
20
  CreatePatternModalContents,
21
21
  DuplicatePatternModal,
22
22
  isOverridableBlock,
23
+ hasOverridableBlocks,
23
24
  useDuplicatePatternProps,
24
25
  RenamePatternModal,
25
26
  PatternsMenuItems,