@wordpress/patterns 1.19.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/build/api/index.js +17 -0
- package/build/api/index.js.map +1 -1
- package/build/components/allow-overrides-modal.js +72 -58
- package/build/components/allow-overrides-modal.js.map +1 -1
- package/build/components/category-selector.js +2 -2
- package/build/components/category-selector.js.map +1 -1
- package/build/components/create-pattern-modal.js +56 -48
- package/build/components/create-pattern-modal.js.map +1 -1
- package/build/components/duplicate-pattern-modal.js +2 -2
- package/build/components/duplicate-pattern-modal.js.map +1 -1
- package/build/components/index.js +15 -11
- package/build/components/index.js.map +1 -1
- package/build/components/overrides-panel.js +7 -6
- package/build/components/overrides-panel.js.map +1 -1
- package/build/components/pattern-convert-button.js +22 -20
- package/build/components/pattern-convert-button.js.map +1 -1
- package/build/components/pattern-overrides-controls.js +49 -54
- package/build/components/pattern-overrides-controls.js.map +1 -1
- package/build/components/patterns-manage-button.js +10 -6
- package/build/components/patterns-manage-button.js.map +1 -1
- package/build/components/rename-pattern-category-modal.js +42 -34
- package/build/components/rename-pattern-category-modal.js.map +1 -1
- package/build/components/rename-pattern-modal.js +31 -25
- package/build/components/rename-pattern-modal.js.map +1 -1
- package/build/components/reset-overrides-control.js +12 -8
- package/build/components/reset-overrides-control.js.map +1 -1
- package/build/private-apis.js +1 -0
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +2 -2
- package/build/store/actions.js.map +1 -1
- package/build-module/api/index.js +16 -0
- package/build-module/api/index.js.map +1 -1
- package/build-module/components/allow-overrides-modal.js +73 -58
- package/build-module/components/allow-overrides-modal.js.map +1 -1
- package/build-module/components/category-selector.js +2 -2
- package/build-module/components/category-selector.js.map +1 -1
- package/build-module/components/create-pattern-modal.js +59 -50
- package/build-module/components/create-pattern-modal.js.map +1 -1
- package/build-module/components/duplicate-pattern-modal.js +2 -2
- package/build-module/components/duplicate-pattern-modal.js.map +1 -1
- package/build-module/components/index.js +17 -11
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/overrides-panel.js +7 -6
- package/build-module/components/overrides-panel.js.map +1 -1
- package/build-module/components/pattern-convert-button.js +23 -18
- package/build-module/components/pattern-convert-button.js.map +1 -1
- package/build-module/components/pattern-overrides-controls.js +52 -55
- package/build-module/components/pattern-overrides-controls.js.map +1 -1
- package/build-module/components/patterns-manage-button.js +12 -6
- package/build-module/components/patterns-manage-button.js.map +1 -1
- package/build-module/components/rename-pattern-category-modal.js +43 -34
- package/build-module/components/rename-pattern-category-modal.js.map +1 -1
- package/build-module/components/rename-pattern-modal.js +32 -25
- package/build-module/components/rename-pattern-modal.js.map +1 -1
- package/build-module/components/reset-overrides-control.js +12 -8
- package/build-module/components/reset-overrides-control.js.map +1 -1
- package/build-module/private-apis.js +2 -1
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +2 -2
- package/build-module/store/actions.js.map +1 -1
- package/package.json +18 -17
- package/src/api/index.js +16 -0
- package/src/components/create-pattern-modal.js +17 -9
- package/src/components/pattern-overrides-controls.js +19 -44
- package/src/private-apis.js +2 -1
- package/src/store/actions.js +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 2.0.0 (2024-05-31)
|
|
6
|
+
|
|
7
|
+
### Breaking Changes
|
|
8
|
+
|
|
9
|
+
- Increase the minimum required Node.js version to v18.12.0 matching long-term support releases ([#31270](https://github.com/WordPress/gutenberg/pull/61930)). Learn more about [Node.js releases](https://nodejs.org/en/about/previous-releases).
|
|
10
|
+
|
|
5
11
|
## 1.19.0 (2024-05-16)
|
|
6
12
|
|
|
7
13
|
## 1.18.0 (2024-05-02)
|
package/build/api/index.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.hasOverridableBlocks = hasOverridableBlocks;
|
|
6
7
|
exports.isOverridableBlock = isOverridableBlock;
|
|
7
8
|
var _constants = require("../constants");
|
|
8
9
|
/**
|
|
@@ -19,4 +20,20 @@ var _constants = require("../constants");
|
|
|
19
20
|
function isOverridableBlock(block) {
|
|
20
21
|
return Object.keys(_constants.PARTIAL_SYNCING_SUPPORTED_BLOCKS).includes(block.name) && !!block.attributes.metadata?.name && !!block.attributes.metadata?.bindings && Object.values(block.attributes.metadata.bindings).some(binding => binding.source === 'core/pattern-overrides');
|
|
21
22
|
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Determines whether the blocks list has overridable blocks.
|
|
26
|
+
*
|
|
27
|
+
* @param {WPBlock[]} blocks The blocks list.
|
|
28
|
+
*
|
|
29
|
+
* @return {boolean} `true` if the list has overridable blocks, `false` otherwise.
|
|
30
|
+
*/
|
|
31
|
+
function hasOverridableBlocks(blocks) {
|
|
32
|
+
return blocks.some(block => {
|
|
33
|
+
if (isOverridableBlock(block)) {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
return hasOverridableBlocks(block.innerBlocks);
|
|
37
|
+
});
|
|
38
|
+
}
|
|
22
39
|
//# sourceMappingURL=index.js.map
|
package/build/api/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_constants","require","isOverridableBlock","block","Object","keys","PARTIAL_SYNCING_SUPPORTED_BLOCKS","includes","name","attributes","metadata","bindings","values","some","binding","source"],"sources":["@wordpress/patterns/src/api/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { PARTIAL_SYNCING_SUPPORTED_BLOCKS } from '../constants';\n\n/**\n * Determines whether a block is overridable.\n *\n * @param {WPBlock} block The block to test.\n *\n * @return {boolean} `true` if a block is overridable, `false` otherwise.\n */\nexport function isOverridableBlock( block ) {\n\treturn (\n\t\tObject.keys( PARTIAL_SYNCING_SUPPORTED_BLOCKS ).includes(\n\t\t\tblock.name\n\t\t) &&\n\t\t!! block.attributes.metadata?.name &&\n\t\t!! block.attributes.metadata?.bindings &&\n\t\tObject.values( block.attributes.metadata.bindings ).some(\n\t\t\t( binding ) => binding.source === 'core/pattern-overrides'\n\t\t)\n\t);\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_constants","require","isOverridableBlock","block","Object","keys","PARTIAL_SYNCING_SUPPORTED_BLOCKS","includes","name","attributes","metadata","bindings","values","some","binding","source","hasOverridableBlocks","blocks","innerBlocks"],"sources":["@wordpress/patterns/src/api/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { PARTIAL_SYNCING_SUPPORTED_BLOCKS } from '../constants';\n\n/**\n * Determines whether a block is overridable.\n *\n * @param {WPBlock} block The block to test.\n *\n * @return {boolean} `true` if a block is overridable, `false` otherwise.\n */\nexport function isOverridableBlock( block ) {\n\treturn (\n\t\tObject.keys( PARTIAL_SYNCING_SUPPORTED_BLOCKS ).includes(\n\t\t\tblock.name\n\t\t) &&\n\t\t!! block.attributes.metadata?.name &&\n\t\t!! block.attributes.metadata?.bindings &&\n\t\tObject.values( block.attributes.metadata.bindings ).some(\n\t\t\t( binding ) => binding.source === 'core/pattern-overrides'\n\t\t)\n\t);\n}\n\n/**\n * Determines whether the blocks list has overridable blocks.\n *\n * @param {WPBlock[]} blocks The blocks list.\n *\n * @return {boolean} `true` if the list has overridable blocks, `false` otherwise.\n */\nexport function hasOverridableBlocks( blocks ) {\n\treturn blocks.some( ( block ) => {\n\t\tif ( isOverridableBlock( block ) ) {\n\t\t\treturn true;\n\t\t}\n\t\treturn hasOverridableBlocks( block.innerBlocks );\n\t} );\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,UAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CAAEC,KAAK,EAAG;EAC3C,OACCC,MAAM,CAACC,IAAI,CAAEC,2CAAiC,CAAC,CAACC,QAAQ,CACvDJ,KAAK,CAACK,IACP,CAAC,IACD,CAAC,CAAEL,KAAK,CAACM,UAAU,CAACC,QAAQ,EAAEF,IAAI,IAClC,CAAC,CAAEL,KAAK,CAACM,UAAU,CAACC,QAAQ,EAAEC,QAAQ,IACtCP,MAAM,CAACQ,MAAM,CAAET,KAAK,CAACM,UAAU,CAACC,QAAQ,CAACC,QAAS,CAAC,CAACE,IAAI,CACrDC,OAAO,IAAMA,OAAO,CAACC,MAAM,KAAK,wBACnC,CAAC;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,oBAAoBA,CAAEC,MAAM,EAAG;EAC9C,OAAOA,MAAM,CAACJ,IAAI,CAAIV,KAAK,IAAM;IAChC,IAAKD,kBAAkB,CAAEC,KAAM,CAAC,EAAG;MAClC,OAAO,IAAI;IACZ;IACA,OAAOa,oBAAoB,CAAEb,KAAK,CAACe,WAAY,CAAC;EACjD,CAAE,CAAC;AACJ","ignoreList":[]}
|
|
@@ -5,11 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.AllowOverridesModal = AllowOverridesModal;
|
|
7
7
|
exports.DisallowOverridesModal = DisallowOverridesModal;
|
|
8
|
-
var _react = require("react");
|
|
9
8
|
var _components = require("@wordpress/components");
|
|
10
9
|
var _i18n = require("@wordpress/i18n");
|
|
11
10
|
var _element = require("@wordpress/element");
|
|
12
11
|
var _a11y = require("@wordpress/a11y");
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
13
|
/**
|
|
14
14
|
* WordPress dependencies
|
|
15
15
|
*/
|
|
@@ -36,79 +36,93 @@ function AllowOverridesModal({
|
|
|
36
36
|
// Immediate close avoids ability to hit save multiple times.
|
|
37
37
|
onClose();
|
|
38
38
|
};
|
|
39
|
-
return (0,
|
|
39
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Modal, {
|
|
40
40
|
title: (0, _i18n.__)('Enable overrides'),
|
|
41
41
|
onRequestClose: onClose,
|
|
42
42
|
focusOnMount: "firstContentElement",
|
|
43
43
|
aria: {
|
|
44
44
|
describedby: descriptionId
|
|
45
45
|
},
|
|
46
|
-
size: "small"
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
46
|
+
size: "small",
|
|
47
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("form", {
|
|
48
|
+
onSubmit: event => {
|
|
49
|
+
event.preventDefault();
|
|
50
|
+
if (!isNameValid) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
handleSubmit();
|
|
54
|
+
},
|
|
55
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
|
|
56
|
+
spacing: "6",
|
|
57
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalText, {
|
|
58
|
+
id: descriptionId,
|
|
59
|
+
children: (0, _i18n.__)('Overrides are changes you make to a block within a synced pattern instance. Use overrides to customize a synced pattern instance to suit its new context. Name this block to specify an override.')
|
|
60
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.TextControl, {
|
|
61
|
+
__nextHasNoMarginBottom: true,
|
|
62
|
+
__next40pxDefaultSize: true,
|
|
63
|
+
value: editedBlockName,
|
|
64
|
+
label: (0, _i18n.__)('Name'),
|
|
65
|
+
help: (0, _i18n.__)('For example, if you are creating a recipe pattern, you use "Recipe Title", "Recipe Description", etc.'),
|
|
66
|
+
placeholder: placeholder,
|
|
67
|
+
onChange: setEditedBlockName
|
|
68
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
|
|
69
|
+
justify: "right",
|
|
70
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
71
|
+
__next40pxDefaultSize: true,
|
|
72
|
+
variant: "tertiary",
|
|
73
|
+
onClick: onClose,
|
|
74
|
+
children: (0, _i18n.__)('Cancel')
|
|
75
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
76
|
+
__next40pxDefaultSize: true,
|
|
77
|
+
"aria-disabled": !isNameValid,
|
|
78
|
+
variant: "primary",
|
|
79
|
+
type: "submit",
|
|
80
|
+
children: (0, _i18n.__)('Enable')
|
|
81
|
+
})]
|
|
82
|
+
})]
|
|
83
|
+
})
|
|
84
|
+
})
|
|
85
|
+
});
|
|
79
86
|
}
|
|
80
87
|
function DisallowOverridesModal({
|
|
81
88
|
onClose,
|
|
82
89
|
onSave
|
|
83
90
|
}) {
|
|
84
91
|
const descriptionId = (0, _element.useId)();
|
|
85
|
-
return (0,
|
|
92
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Modal, {
|
|
86
93
|
title: (0, _i18n.__)('Disable overrides'),
|
|
87
94
|
onRequestClose: onClose,
|
|
88
95
|
aria: {
|
|
89
96
|
describedby: descriptionId
|
|
90
97
|
},
|
|
91
|
-
size: "small"
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
98
|
+
size: "small",
|
|
99
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("form", {
|
|
100
|
+
onSubmit: event => {
|
|
101
|
+
event.preventDefault();
|
|
102
|
+
onSave();
|
|
103
|
+
onClose();
|
|
104
|
+
},
|
|
105
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
|
|
106
|
+
spacing: "6",
|
|
107
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalText, {
|
|
108
|
+
id: descriptionId,
|
|
109
|
+
children: (0, _i18n.__)('Are you sure you want to disable overrides? Disabling overrides will revert all applied overrides for this block throughout instances of this pattern.')
|
|
110
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
|
|
111
|
+
justify: "right",
|
|
112
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
113
|
+
__next40pxDefaultSize: true,
|
|
114
|
+
variant: "tertiary",
|
|
115
|
+
onClick: onClose,
|
|
116
|
+
children: (0, _i18n.__)('Cancel')
|
|
117
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
118
|
+
__next40pxDefaultSize: true,
|
|
119
|
+
variant: "primary",
|
|
120
|
+
type: "submit",
|
|
121
|
+
children: (0, _i18n.__)('Disable')
|
|
122
|
+
})]
|
|
123
|
+
})]
|
|
124
|
+
})
|
|
125
|
+
})
|
|
126
|
+
});
|
|
113
127
|
}
|
|
114
128
|
//# sourceMappingURL=allow-overrides-modal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_i18n","_element","_a11y","AllowOverridesModal","placeholder","initialName","onClose","onSave","editedBlockName","setEditedBlockName","useState","descriptionId","useId","isNameValid","trim","handleSubmit","message","sprintf","__","speak","
|
|
1
|
+
{"version":3,"names":["_components","require","_i18n","_element","_a11y","_jsxRuntime","AllowOverridesModal","placeholder","initialName","onClose","onSave","editedBlockName","setEditedBlockName","useState","descriptionId","useId","isNameValid","trim","handleSubmit","message","sprintf","__","speak","jsx","Modal","title","onRequestClose","focusOnMount","aria","describedby","size","children","onSubmit","event","preventDefault","jsxs","__experimentalVStack","spacing","__experimentalText","id","TextControl","__nextHasNoMarginBottom","__next40pxDefaultSize","value","label","help","onChange","__experimentalHStack","justify","Button","variant","onClick","type","DisallowOverridesModal"],"sources":["@wordpress/patterns/src/components/allow-overrides-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tButton,\n\t__experimentalText as Text,\n\tTextControl,\n\tModal,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useState, useId } from '@wordpress/element';\nimport { speak } from '@wordpress/a11y';\n\nexport function AllowOverridesModal( {\n\tplaceholder,\n\tinitialName = '',\n\tonClose,\n\tonSave,\n} ) {\n\tconst [ editedBlockName, setEditedBlockName ] = useState( initialName );\n\tconst descriptionId = useId();\n\n\tconst isNameValid = !! editedBlockName.trim();\n\n\tconst handleSubmit = () => {\n\t\tif ( editedBlockName !== initialName ) {\n\t\t\tconst message = sprintf(\n\t\t\t\t/* translators: %s: new name/label for the block */\n\t\t\t\t__( 'Block name changed to: \"%s\".' ),\n\t\t\t\teditedBlockName\n\t\t\t);\n\n\t\t\t// Must be assertive to immediately announce change.\n\t\t\tspeak( message, 'assertive' );\n\t\t}\n\t\tonSave( editedBlockName );\n\n\t\t// Immediate close avoids ability to hit save multiple times.\n\t\tonClose();\n\t};\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ __( 'Enable overrides' ) }\n\t\t\tonRequestClose={ onClose }\n\t\t\tfocusOnMount=\"firstContentElement\"\n\t\t\taria={ { describedby: descriptionId } }\n\t\t\tsize=\"small\"\n\t\t>\n\t\t\t<form\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\n\t\t\t\t\tif ( ! isNameValid ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\thandleSubmit();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<VStack spacing=\"6\">\n\t\t\t\t\t<Text id={ descriptionId }>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Overrides are changes you make to a block within a synced pattern instance. Use overrides to customize a synced pattern instance to suit its new context. Name this block to specify an override.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Text>\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\tvalue={ editedBlockName }\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'For example, if you are creating a recipe pattern, you use \"Recipe Title\", \"Recipe Description\", etc.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\t\tonChange={ setEditedBlockName }\n\t\t\t\t\t/>\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={ onClose }\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\taria-disabled={ ! isNameValid }\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{ __( 'Enable' ) }\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\nexport function DisallowOverridesModal( { onClose, onSave } ) {\n\tconst descriptionId = useId();\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ __( 'Disable overrides' ) }\n\t\t\tonRequestClose={ onClose }\n\t\t\taria={ { describedby: descriptionId } }\n\t\t\tsize=\"small\"\n\t\t>\n\t\t\t<form\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tonSave();\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<VStack spacing=\"6\">\n\t\t\t\t\t<Text id={ descriptionId }>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Are you sure you want to disable overrides? Disabling overrides will revert all applied overrides for this block throughout instances of this pattern.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Text>\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={ onClose }\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{ __( 'Disable' ) }\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":[]}
|
|
@@ -5,12 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.CATEGORY_SLUG = void 0;
|
|
7
7
|
exports.default = CategorySelector;
|
|
8
|
-
var _react = require("react");
|
|
9
8
|
var _i18n = require("@wordpress/i18n");
|
|
10
9
|
var _element = require("@wordpress/element");
|
|
11
10
|
var _components = require("@wordpress/components");
|
|
12
11
|
var _compose = require("@wordpress/compose");
|
|
13
12
|
var _htmlEntities = require("@wordpress/html-entities");
|
|
13
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
14
|
/**
|
|
15
15
|
* WordPress dependencies
|
|
16
16
|
*/
|
|
@@ -43,7 +43,7 @@ function CategorySelector({
|
|
|
43
43
|
}, []);
|
|
44
44
|
onChange(uniqueTerms);
|
|
45
45
|
}
|
|
46
|
-
return (0,
|
|
46
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.FormTokenField, {
|
|
47
47
|
className: "patterns-menu-items__convert-modal-categories",
|
|
48
48
|
value: categoryTerms,
|
|
49
49
|
suggestions: suggestions,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_element","_components","_compose","_htmlEntities","unescapeString","arg","decodeEntities","CATEGORY_SLUG","exports","CategorySelector","categoryTerms","onChange","categoryMap","search","setSearch","useState","debouncedSearch","useDebounce","suggestions","useMemo","Array","from","values","map","category","label","filter","toLowerCase","includes","sort","a","b","localeCompare","handleChange","termNames","uniqueTerms","reduce","terms","newTerm","some","term","push","
|
|
1
|
+
{"version":3,"names":["_i18n","require","_element","_components","_compose","_htmlEntities","_jsxRuntime","unescapeString","arg","decodeEntities","CATEGORY_SLUG","exports","CategorySelector","categoryTerms","onChange","categoryMap","search","setSearch","useState","debouncedSearch","useDebounce","suggestions","useMemo","Array","from","values","map","category","label","filter","toLowerCase","includes","sort","a","b","localeCompare","handleChange","termNames","uniqueTerms","reduce","terms","newTerm","some","term","push","jsx","FormTokenField","className","value","onInputChange","__","tokenizeOnBlur","__experimentalExpandOnFocus","__next40pxDefaultSize","__nextHasNoMarginBottom"],"sources":["@wordpress/patterns/src/components/category-selector.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useMemo, useState } from '@wordpress/element';\nimport { FormTokenField } from '@wordpress/components';\nimport { useDebounce } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\nconst unescapeString = ( arg ) => {\n\treturn decodeEntities( arg );\n};\n\nexport const CATEGORY_SLUG = 'wp_pattern_category';\n\nexport default function CategorySelector( {\n\tcategoryTerms,\n\tonChange,\n\tcategoryMap,\n} ) {\n\tconst [ search, setSearch ] = useState( '' );\n\tconst debouncedSearch = useDebounce( setSearch, 500 );\n\n\tconst suggestions = useMemo( () => {\n\t\treturn Array.from( categoryMap.values() )\n\t\t\t.map( ( category ) => unescapeString( category.label ) )\n\t\t\t.filter( ( category ) => {\n\t\t\t\tif ( search !== '' ) {\n\t\t\t\t\treturn category\n\t\t\t\t\t\t.toLowerCase()\n\t\t\t\t\t\t.includes( search.toLowerCase() );\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t} )\n\t\t\t.sort( ( a, b ) => a.localeCompare( b ) );\n\t}, [ search, categoryMap ] );\n\n\tfunction handleChange( termNames ) {\n\t\tconst uniqueTerms = termNames.reduce( ( terms, newTerm ) => {\n\t\t\tif (\n\t\t\t\t! terms.some(\n\t\t\t\t\t( term ) => term.toLowerCase() === newTerm.toLowerCase()\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tterms.push( newTerm );\n\t\t\t}\n\t\t\treturn terms;\n\t\t}, [] );\n\n\t\tonChange( uniqueTerms );\n\t}\n\n\treturn (\n\t\t<FormTokenField\n\t\t\tclassName=\"patterns-menu-items__convert-modal-categories\"\n\t\t\tvalue={ categoryTerms }\n\t\t\tsuggestions={ suggestions }\n\t\t\tonChange={ handleChange }\n\t\t\tonInputChange={ debouncedSearch }\n\t\t\tlabel={ __( 'Categories' ) }\n\t\t\ttokenizeOnBlur\n\t\t\t__experimentalExpandOnFocus\n\t\t\t__next40pxDefaultSize\n\t\t\t__nextHasNoMarginBottom\n\t\t/>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AAA0D,IAAAK,WAAA,GAAAL,OAAA;AAP1D;AACA;AACA;;AAOA,MAAMM,cAAc,GAAKC,GAAG,IAAM;EACjC,OAAO,IAAAC,4BAAc,EAAED,GAAI,CAAC;AAC7B,CAAC;AAEM,MAAME,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,qBAAqB;AAEnC,SAASE,gBAAgBA,CAAE;EACzCC,aAAa;EACbC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,MAAM,EAAEC,SAAS,CAAE,GAAG,IAAAC,iBAAQ,EAAE,EAAG,CAAC;EAC5C,MAAMC,eAAe,GAAG,IAAAC,oBAAW,EAAEH,SAAS,EAAE,GAAI,CAAC;EAErD,MAAMI,WAAW,GAAG,IAAAC,gBAAO,EAAE,MAAM;IAClC,OAAOC,KAAK,CAACC,IAAI,CAAET,WAAW,CAACU,MAAM,CAAC,CAAE,CAAC,CACvCC,GAAG,CAAIC,QAAQ,IAAMpB,cAAc,CAAEoB,QAAQ,CAACC,KAAM,CAAE,CAAC,CACvDC,MAAM,CAAIF,QAAQ,IAAM;MACxB,IAAKX,MAAM,KAAK,EAAE,EAAG;QACpB,OAAOW,QAAQ,CACbG,WAAW,CAAC,CAAC,CACbC,QAAQ,CAAEf,MAAM,CAACc,WAAW,CAAC,CAAE,CAAC;MACnC;MACA,OAAO,IAAI;IACZ,CAAE,CAAC,CACFE,IAAI,CAAE,CAAEC,CAAC,EAAEC,CAAC,KAAMD,CAAC,CAACE,aAAa,CAAED,CAAE,CAAE,CAAC;EAC3C,CAAC,EAAE,CAAElB,MAAM,EAAED,WAAW,CAAG,CAAC;EAE5B,SAASqB,YAAYA,CAAEC,SAAS,EAAG;IAClC,MAAMC,WAAW,GAAGD,SAAS,CAACE,MAAM,CAAE,CAAEC,KAAK,EAAEC,OAAO,KAAM;MAC3D,IACC,CAAED,KAAK,CAACE,IAAI,CACTC,IAAI,IAAMA,IAAI,CAACb,WAAW,CAAC,CAAC,KAAKW,OAAO,CAACX,WAAW,CAAC,CACxD,CAAC,EACA;QACDU,KAAK,CAACI,IAAI,CAAEH,OAAQ,CAAC;MACtB;MACA,OAAOD,KAAK;IACb,CAAC,EAAE,EAAG,CAAC;IAEP1B,QAAQ,CAAEwB,WAAY,CAAC;EACxB;EAEA,oBACC,IAAAhC,WAAA,CAAAuC,GAAA,EAAC1C,WAAA,CAAA2C,cAAc;IACdC,SAAS,EAAC,+CAA+C;IACzDC,KAAK,EAAGnC,aAAe;IACvBQ,WAAW,EAAGA,WAAa;IAC3BP,QAAQ,EAAGsB,YAAc;IACzBa,aAAa,EAAG9B,eAAiB;IACjCS,KAAK,EAAG,IAAAsB,QAAE,EAAE,YAAa,CAAG;IAC5BC,cAAc;IACdC,2BAA2B;IAC3BC,qBAAqB;IACrBC,uBAAuB;EAAA,CACvB,CAAC;AAEJ","ignoreList":[]}
|
|
@@ -6,17 +6,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.CreatePatternModalContents = CreatePatternModalContents;
|
|
8
8
|
exports.default = CreatePatternModal;
|
|
9
|
-
var _react = require("react");
|
|
10
9
|
var _components = require("@wordpress/components");
|
|
11
10
|
var _i18n = require("@wordpress/i18n");
|
|
12
11
|
var _element = require("@wordpress/element");
|
|
13
12
|
var _data = require("@wordpress/data");
|
|
14
13
|
var _notices = require("@wordpress/notices");
|
|
14
|
+
var _coreData = require("@wordpress/core-data");
|
|
15
15
|
var _constants = require("../constants");
|
|
16
16
|
var _store = require("../store");
|
|
17
17
|
var _categorySelector = _interopRequireDefault(require("./category-selector"));
|
|
18
18
|
var _privateHooks = require("../private-hooks");
|
|
19
19
|
var _lockUnlock = require("../lock-unlock");
|
|
20
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
20
21
|
/**
|
|
21
22
|
* WordPress dependencies
|
|
22
23
|
*/
|
|
@@ -27,19 +28,21 @@ var _lockUnlock = require("../lock-unlock");
|
|
|
27
28
|
|
|
28
29
|
function CreatePatternModal({
|
|
29
30
|
className = 'patterns-menu-items__convert-modal',
|
|
30
|
-
modalTitle
|
|
31
|
+
modalTitle,
|
|
31
32
|
...restProps
|
|
32
33
|
}) {
|
|
33
|
-
|
|
34
|
-
|
|
34
|
+
const defaultModalTitle = (0, _data.useSelect)(select => select(_coreData.store).getPostType(_constants.PATTERN_TYPES.user)?.labels?.add_new_item, []);
|
|
35
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Modal, {
|
|
36
|
+
title: modalTitle || defaultModalTitle,
|
|
35
37
|
onRequestClose: restProps.onClose,
|
|
36
|
-
overlayClassName: className
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
overlayClassName: className,
|
|
39
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(CreatePatternModalContents, {
|
|
40
|
+
...restProps
|
|
41
|
+
})
|
|
42
|
+
});
|
|
40
43
|
}
|
|
41
44
|
function CreatePatternModalContents({
|
|
42
|
-
confirmLabel = (0, _i18n.__)('
|
|
45
|
+
confirmLabel = (0, _i18n.__)('Add'),
|
|
43
46
|
defaultCategories = [],
|
|
44
47
|
content,
|
|
45
48
|
onClose,
|
|
@@ -86,47 +89,52 @@ function CreatePatternModalContents({
|
|
|
86
89
|
setTitle('');
|
|
87
90
|
}
|
|
88
91
|
}
|
|
89
|
-
return (0,
|
|
92
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("form", {
|
|
90
93
|
onSubmit: event => {
|
|
91
94
|
event.preventDefault();
|
|
92
95
|
onCreate(title, syncType);
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
96
|
+
},
|
|
97
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalVStack, {
|
|
98
|
+
spacing: "5",
|
|
99
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.TextControl, {
|
|
100
|
+
label: (0, _i18n.__)('Name'),
|
|
101
|
+
value: title,
|
|
102
|
+
onChange: setTitle,
|
|
103
|
+
placeholder: (0, _i18n.__)('My pattern'),
|
|
104
|
+
className: "patterns-create-modal__name-input",
|
|
105
|
+
__nextHasNoMarginBottom: true,
|
|
106
|
+
__next40pxDefaultSize: true
|
|
107
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_categorySelector.default, {
|
|
108
|
+
categoryTerms: categoryTerms,
|
|
109
|
+
onChange: setCategoryTerms,
|
|
110
|
+
categoryMap: categoryMap
|
|
111
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToggleControl, {
|
|
112
|
+
label: (0, _i18n._x)('Synced', 'pattern (singular)'),
|
|
113
|
+
help: (0, _i18n.__)('Sync this pattern across multiple locations.'),
|
|
114
|
+
checked: syncType === _constants.PATTERN_SYNC_TYPES.full,
|
|
115
|
+
onChange: () => {
|
|
116
|
+
setSyncType(syncType === _constants.PATTERN_SYNC_TYPES.full ? _constants.PATTERN_SYNC_TYPES.unsynced : _constants.PATTERN_SYNC_TYPES.full);
|
|
117
|
+
}
|
|
118
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
|
|
119
|
+
justify: "right",
|
|
120
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
121
|
+
__next40pxDefaultSize: true,
|
|
122
|
+
variant: "tertiary",
|
|
123
|
+
onClick: () => {
|
|
124
|
+
onClose();
|
|
125
|
+
setTitle('');
|
|
126
|
+
},
|
|
127
|
+
children: (0, _i18n.__)('Cancel')
|
|
128
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
129
|
+
__next40pxDefaultSize: true,
|
|
130
|
+
variant: "primary",
|
|
131
|
+
type: "submit",
|
|
132
|
+
"aria-disabled": !title || isSaving,
|
|
133
|
+
isBusy: isSaving,
|
|
134
|
+
children: confirmLabel
|
|
135
|
+
})]
|
|
136
|
+
})]
|
|
137
|
+
})
|
|
138
|
+
});
|
|
131
139
|
}
|
|
132
140
|
//# sourceMappingURL=create-pattern-modal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_i18n","_element","_data","_notices","_constants","_store","_categorySelector","_interopRequireDefault","_privateHooks","_lockUnlock","CreatePatternModal","className","modalTitle","
|
|
1
|
+
{"version":3,"names":["_components","require","_i18n","_element","_data","_notices","_coreData","_constants","_store","_categorySelector","_interopRequireDefault","_privateHooks","_lockUnlock","_jsxRuntime","CreatePatternModal","className","modalTitle","restProps","defaultModalTitle","useSelect","select","coreStore","getPostType","PATTERN_TYPES","user","labels","add_new_item","jsx","Modal","title","onRequestClose","onClose","overlayClassName","children","CreatePatternModalContents","confirmLabel","__","defaultCategories","content","onError","onSuccess","defaultSyncType","PATTERN_SYNC_TYPES","full","defaultTitle","syncType","setSyncType","useState","categoryTerms","setCategoryTerms","setTitle","isSaving","setIsSaving","createPattern","unlock","useDispatch","patternsStore","createErrorNotice","noticesStore","categoryMap","findOrCreateTerm","useAddPatternCategory","onCreate","patternTitle","sync","categories","Promise","all","map","termName","newPattern","pattern","categoryId","PATTERN_DEFAULT_CATEGORY","error","message","type","id","onSubmit","event","preventDefault","jsxs","__experimentalVStack","spacing","TextControl","label","value","onChange","placeholder","__nextHasNoMarginBottom","__next40pxDefaultSize","default","ToggleControl","_x","help","checked","unsynced","__experimentalHStack","justify","Button","variant","onClick","isBusy"],"sources":["@wordpress/patterns/src/components/create-pattern-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\tToggleControl,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tPATTERN_DEFAULT_CATEGORY,\n\tPATTERN_SYNC_TYPES,\n\tPATTERN_TYPES,\n} from '../constants';\nimport { store as patternsStore } from '../store';\nimport CategorySelector from './category-selector';\nimport { useAddPatternCategory } from '../private-hooks';\nimport { unlock } from '../lock-unlock';\n\nexport default function CreatePatternModal( {\n\tclassName = 'patterns-menu-items__convert-modal',\n\tmodalTitle,\n\t...restProps\n} ) {\n\tconst defaultModalTitle = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getPostType( PATTERN_TYPES.user )?.labels\n\t\t\t\t?.add_new_item,\n\t\t[]\n\t);\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle || defaultModalTitle }\n\t\t\tonRequestClose={ restProps.onClose }\n\t\t\toverlayClassName={ className }\n\t\t>\n\t\t\t<CreatePatternModalContents { ...restProps } />\n\t\t</Modal>\n\t);\n}\n\nexport function CreatePatternModalContents( {\n\tconfirmLabel = __( 'Add' ),\n\tdefaultCategories = [],\n\tcontent,\n\tonClose,\n\tonError,\n\tonSuccess,\n\tdefaultSyncType = PATTERN_SYNC_TYPES.full,\n\tdefaultTitle = '',\n} ) {\n\tconst [ syncType, setSyncType ] = useState( defaultSyncType );\n\tconst [ categoryTerms, setCategoryTerms ] = useState( defaultCategories );\n\tconst [ title, setTitle ] = useState( defaultTitle );\n\n\tconst [ isSaving, setIsSaving ] = useState( false );\n\tconst { createPattern } = unlock( useDispatch( patternsStore ) );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst { categoryMap, findOrCreateTerm } = useAddPatternCategory();\n\n\tasync function onCreate( patternTitle, sync ) {\n\t\tif ( ! title || isSaving ) {\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tsetIsSaving( true );\n\t\t\tconst categories = await Promise.all(\n\t\t\t\tcategoryTerms.map( ( termName ) =>\n\t\t\t\t\tfindOrCreateTerm( termName )\n\t\t\t\t)\n\t\t\t);\n\n\t\t\tconst newPattern = await createPattern(\n\t\t\t\tpatternTitle,\n\t\t\t\tsync,\n\t\t\t\ttypeof content === 'function' ? content() : content,\n\t\t\t\tcategories\n\t\t\t);\n\t\t\tonSuccess( {\n\t\t\t\tpattern: newPattern,\n\t\t\t\tcategoryId: PATTERN_DEFAULT_CATEGORY,\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tcreateErrorNotice( error.message, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'pattern-create',\n\t\t\t} );\n\t\t\tonError?.();\n\t\t} finally {\n\t\t\tsetIsSaving( false );\n\t\t\tsetCategoryTerms( [] );\n\t\t\tsetTitle( '' );\n\t\t}\n\t}\n\n\treturn (\n\t\t<form\n\t\t\tonSubmit={ ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tonCreate( title, syncType );\n\t\t\t} }\n\t\t>\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<TextControl\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ title }\n\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\tplaceholder={ __( 'My pattern' ) }\n\t\t\t\t\tclassName=\"patterns-create-modal__name-input\"\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t/>\n\t\t\t\t<CategorySelector\n\t\t\t\t\tcategoryTerms={ categoryTerms }\n\t\t\t\t\tonChange={ setCategoryTerms }\n\t\t\t\t\tcategoryMap={ categoryMap }\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ _x( 'Synced', 'pattern (singular)' ) }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Sync this pattern across multiple locations.'\n\t\t\t\t\t) }\n\t\t\t\t\tchecked={ syncType === PATTERN_SYNC_TYPES.full }\n\t\t\t\t\tonChange={ () => {\n\t\t\t\t\t\tsetSyncType(\n\t\t\t\t\t\t\tsyncType === PATTERN_SYNC_TYPES.full\n\t\t\t\t\t\t\t\t? PATTERN_SYNC_TYPES.unsynced\n\t\t\t\t\t\t\t\t: PATTERN_SYNC_TYPES.full\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\taria-disabled={ ! title || isSaving }\n\t\t\t\t\t\tisBusy={ isSaving }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ confirmLabel }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t</form>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,13 +6,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = DuplicatePatternModal;
|
|
8
8
|
exports.useDuplicatePatternProps = useDuplicatePatternProps;
|
|
9
|
-
var _react = require("react");
|
|
10
9
|
var _coreData = require("@wordpress/core-data");
|
|
11
10
|
var _data = require("@wordpress/data");
|
|
12
11
|
var _i18n = require("@wordpress/i18n");
|
|
13
12
|
var _notices = require("@wordpress/notices");
|
|
14
13
|
var _createPatternModal = _interopRequireDefault(require("./create-pattern-modal"));
|
|
15
14
|
var _constants = require("../constants");
|
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
16
|
/**
|
|
17
17
|
* WordPress dependencies
|
|
18
18
|
*/
|
|
@@ -82,7 +82,7 @@ function DuplicatePatternModal({
|
|
|
82
82
|
if (!pattern) {
|
|
83
83
|
return null;
|
|
84
84
|
}
|
|
85
|
-
return (0,
|
|
85
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_createPatternModal.default, {
|
|
86
86
|
modalTitle: (0, _i18n.__)('Duplicate pattern'),
|
|
87
87
|
confirmLabel: (0, _i18n.__)('Duplicate'),
|
|
88
88
|
onClose: onClose,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_coreData","require","_data","_i18n","_notices","_createPatternModal","_interopRequireDefault","_constants","getTermLabels","pattern","categories","type","PATTERN_TYPES","user","core","filter","category","includes","name","map","label","wp_pattern_category","id","useDuplicatePatternProps","onSuccess","createSuccessNotice","useDispatch","noticesStore","useSelect","select","getUserPatternCategories","getBlockPatternCategories","coreStore","content","defaultCategories","defaultSyncType","PATTERN_SYNC_TYPES","unsynced","wp_pattern_sync_status","full","defaultTitle","sprintf","__","title","raw","newPattern","DuplicatePatternModal","onClose","duplicatedProps","
|
|
1
|
+
{"version":3,"names":["_coreData","require","_data","_i18n","_notices","_createPatternModal","_interopRequireDefault","_constants","_jsxRuntime","getTermLabels","pattern","categories","type","PATTERN_TYPES","user","core","filter","category","includes","name","map","label","wp_pattern_category","id","useDuplicatePatternProps","onSuccess","createSuccessNotice","useDispatch","noticesStore","useSelect","select","getUserPatternCategories","getBlockPatternCategories","coreStore","content","defaultCategories","defaultSyncType","PATTERN_SYNC_TYPES","unsynced","wp_pattern_sync_status","full","defaultTitle","sprintf","__","title","raw","newPattern","DuplicatePatternModal","onClose","duplicatedProps","jsx","default","modalTitle","confirmLabel","onError"],"sources":["@wordpress/patterns/src/components/duplicate-pattern-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport CreatePatternModal from './create-pattern-modal';\nimport { PATTERN_SYNC_TYPES, PATTERN_TYPES } from '../constants';\n\nfunction getTermLabels( pattern, categories ) {\n\t// Theme patterns rely on core pattern categories.\n\tif ( pattern.type !== PATTERN_TYPES.user ) {\n\t\treturn categories.core\n\t\t\t?.filter( ( category ) =>\n\t\t\t\tpattern.categories.includes( category.name )\n\t\t\t)\n\t\t\t.map( ( category ) => category.label );\n\t}\n\n\treturn categories.user\n\t\t?.filter( ( category ) =>\n\t\t\tpattern.wp_pattern_category.includes( category.id )\n\t\t)\n\t\t.map( ( category ) => category.label );\n}\n\nexport function useDuplicatePatternProps( { pattern, onSuccess } ) {\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\tconst categories = useSelect( ( select ) => {\n\t\tconst { getUserPatternCategories, getBlockPatternCategories } =\n\t\t\tselect( coreStore );\n\n\t\treturn {\n\t\t\tcore: getBlockPatternCategories(),\n\t\t\tuser: getUserPatternCategories(),\n\t\t};\n\t} );\n\tif ( ! pattern ) {\n\t\treturn null;\n\t}\n\treturn {\n\t\tcontent: pattern.content,\n\t\tdefaultCategories: getTermLabels( pattern, categories ),\n\t\tdefaultSyncType:\n\t\t\tpattern.type !== PATTERN_TYPES.user // Theme patterns are unsynced by default.\n\t\t\t\t? PATTERN_SYNC_TYPES.unsynced\n\t\t\t\t: pattern.wp_pattern_sync_status || PATTERN_SYNC_TYPES.full,\n\t\tdefaultTitle: sprintf(\n\t\t\t/* translators: %s: Existing pattern title */\n\t\t\t__( '%s (Copy)' ),\n\t\t\ttypeof pattern.title === 'string'\n\t\t\t\t? pattern.title\n\t\t\t\t: pattern.title.raw\n\t\t),\n\t\tonSuccess: ( { pattern: newPattern } ) => {\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: The new pattern's title e.g. 'Call to action (copy)'.\n\t\t\t\t\t__( '\"%s\" duplicated.' ),\n\t\t\t\t\tnewPattern.title.raw\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tid: 'patterns-create',\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tonSuccess?.( { pattern: newPattern } );\n\t\t},\n\t};\n}\n\nexport default function DuplicatePatternModal( {\n\tpattern,\n\tonClose,\n\tonSuccess,\n} ) {\n\tconst duplicatedProps = useDuplicatePatternProps( { pattern, onSuccess } );\n\tif ( ! pattern ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<CreatePatternModal\n\t\t\tmodalTitle={ __( 'Duplicate pattern' ) }\n\t\t\tconfirmLabel={ __( 'Duplicate' ) }\n\t\t\tonClose={ onClose }\n\t\t\tonError={ onClose }\n\t\t\t{ ...duplicatedProps }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|