@wordpress/patterns 1.18.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 (69) hide show
  1. package/CHANGELOG.md +8 -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 +11 -7
  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 +55 -42
  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 +15 -1
  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 +13 -7
  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 +56 -43
  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 +16 -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/components/patterns-manage-button.js +1 -1
  67. package/src/components/reset-overrides-control.js +54 -50
  68. package/src/private-apis.js +2 -1
  69. package/src/store/actions.js +25 -2
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -6,6 +5,8 @@ import { __experimentalHStack as HStack, __experimentalVStack as VStack, Button,
6
5
  import { __, sprintf } from '@wordpress/i18n';
7
6
  import { useState, useId } from '@wordpress/element';
8
7
  import { speak } from '@wordpress/a11y';
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
+ import { jsxs as _jsxs } from "react/jsx-runtime";
9
10
  export function AllowOverridesModal({
10
11
  placeholder,
11
12
  initialName = '',
@@ -28,79 +29,93 @@ export function AllowOverridesModal({
28
29
  // Immediate close avoids ability to hit save multiple times.
29
30
  onClose();
30
31
  };
31
- return createElement(Modal, {
32
+ return /*#__PURE__*/_jsx(Modal, {
32
33
  title: __('Enable overrides'),
33
34
  onRequestClose: onClose,
34
35
  focusOnMount: "firstContentElement",
35
36
  aria: {
36
37
  describedby: descriptionId
37
38
  },
38
- size: "small"
39
- }, createElement("form", {
40
- onSubmit: event => {
41
- event.preventDefault();
42
- if (!isNameValid) {
43
- return;
44
- }
45
- handleSubmit();
46
- }
47
- }, createElement(VStack, {
48
- spacing: "6"
49
- }, createElement(Text, {
50
- id: descriptionId
51
- }, __('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.')), createElement(TextControl, {
52
- __nextHasNoMarginBottom: true,
53
- __next40pxDefaultSize: true,
54
- value: editedBlockName,
55
- label: __('Name'),
56
- help: __('For example, if you are creating a recipe pattern, you use "Recipe Title", "Recipe Description", etc.'),
57
- placeholder: placeholder,
58
- onChange: setEditedBlockName
59
- }), createElement(HStack, {
60
- justify: "right"
61
- }, createElement(Button, {
62
- __next40pxDefaultSize: true,
63
- variant: "tertiary",
64
- onClick: onClose
65
- }, __('Cancel')), createElement(Button, {
66
- __next40pxDefaultSize: true,
67
- "aria-disabled": !isNameValid,
68
- variant: "primary",
69
- type: "submit"
70
- }, __('Enable'))))));
39
+ size: "small",
40
+ children: /*#__PURE__*/_jsx("form", {
41
+ onSubmit: event => {
42
+ event.preventDefault();
43
+ if (!isNameValid) {
44
+ return;
45
+ }
46
+ handleSubmit();
47
+ },
48
+ children: /*#__PURE__*/_jsxs(VStack, {
49
+ spacing: "6",
50
+ children: [/*#__PURE__*/_jsx(Text, {
51
+ id: descriptionId,
52
+ children: __('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.')
53
+ }), /*#__PURE__*/_jsx(TextControl, {
54
+ __nextHasNoMarginBottom: true,
55
+ __next40pxDefaultSize: true,
56
+ value: editedBlockName,
57
+ label: __('Name'),
58
+ help: __('For example, if you are creating a recipe pattern, you use "Recipe Title", "Recipe Description", etc.'),
59
+ placeholder: placeholder,
60
+ onChange: setEditedBlockName
61
+ }), /*#__PURE__*/_jsxs(HStack, {
62
+ justify: "right",
63
+ children: [/*#__PURE__*/_jsx(Button, {
64
+ __next40pxDefaultSize: true,
65
+ variant: "tertiary",
66
+ onClick: onClose,
67
+ children: __('Cancel')
68
+ }), /*#__PURE__*/_jsx(Button, {
69
+ __next40pxDefaultSize: true,
70
+ "aria-disabled": !isNameValid,
71
+ variant: "primary",
72
+ type: "submit",
73
+ children: __('Enable')
74
+ })]
75
+ })]
76
+ })
77
+ })
78
+ });
71
79
  }
72
80
  export function DisallowOverridesModal({
73
81
  onClose,
74
82
  onSave
75
83
  }) {
76
84
  const descriptionId = useId();
77
- return createElement(Modal, {
85
+ return /*#__PURE__*/_jsx(Modal, {
78
86
  title: __('Disable overrides'),
79
87
  onRequestClose: onClose,
80
88
  aria: {
81
89
  describedby: descriptionId
82
90
  },
83
- size: "small"
84
- }, createElement("form", {
85
- onSubmit: event => {
86
- event.preventDefault();
87
- onSave();
88
- onClose();
89
- }
90
- }, createElement(VStack, {
91
- spacing: "6"
92
- }, createElement(Text, {
93
- id: descriptionId
94
- }, __('Are you sure you want to disable overrides? Disabling overrides will revert all applied overrides for this block throughout instances of this pattern.')), createElement(HStack, {
95
- justify: "right"
96
- }, createElement(Button, {
97
- __next40pxDefaultSize: true,
98
- variant: "tertiary",
99
- onClick: onClose
100
- }, __('Cancel')), createElement(Button, {
101
- __next40pxDefaultSize: true,
102
- variant: "primary",
103
- type: "submit"
104
- }, __('Disable'))))));
91
+ size: "small",
92
+ children: /*#__PURE__*/_jsx("form", {
93
+ onSubmit: event => {
94
+ event.preventDefault();
95
+ onSave();
96
+ onClose();
97
+ },
98
+ children: /*#__PURE__*/_jsxs(VStack, {
99
+ spacing: "6",
100
+ children: [/*#__PURE__*/_jsx(Text, {
101
+ id: descriptionId,
102
+ children: __('Are you sure you want to disable overrides? Disabling overrides will revert all applied overrides for this block throughout instances of this pattern.')
103
+ }), /*#__PURE__*/_jsxs(HStack, {
104
+ justify: "right",
105
+ children: [/*#__PURE__*/_jsx(Button, {
106
+ __next40pxDefaultSize: true,
107
+ variant: "tertiary",
108
+ onClick: onClose,
109
+ children: __('Cancel')
110
+ }), /*#__PURE__*/_jsx(Button, {
111
+ __next40pxDefaultSize: true,
112
+ variant: "primary",
113
+ type: "submit",
114
+ children: __('Disable')
115
+ })]
116
+ })]
117
+ })
118
+ })
119
+ });
105
120
  }
106
121
  //# sourceMappingURL=allow-overrides-modal.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalHStack","HStack","__experimentalVStack","VStack","Button","__experimentalText","Text","TextControl","Modal","__","sprintf","useState","useId","speak","AllowOverridesModal","placeholder","initialName","onClose","onSave","editedBlockName","setEditedBlockName","descriptionId","isNameValid","trim","handleSubmit","message","createElement","title","onRequestClose","focusOnMount","aria","describedby","size","onSubmit","event","preventDefault","spacing","id","__nextHasNoMarginBottom","__next40pxDefaultSize","value","label","help","onChange","justify","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":[]}
1
+ {"version":3,"names":["__experimentalHStack","HStack","__experimentalVStack","VStack","Button","__experimentalText","Text","TextControl","Modal","__","sprintf","useState","useId","speak","jsx","_jsx","jsxs","_jsxs","AllowOverridesModal","placeholder","initialName","onClose","onSave","editedBlockName","setEditedBlockName","descriptionId","isNameValid","trim","handleSubmit","message","title","onRequestClose","focusOnMount","aria","describedby","size","children","onSubmit","event","preventDefault","spacing","id","__nextHasNoMarginBottom","__next40pxDefaultSize","value","label","help","onChange","justify","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":[]}
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -7,6 +6,7 @@ import { useMemo, useState } from '@wordpress/element';
7
6
  import { FormTokenField } from '@wordpress/components';
8
7
  import { useDebounce } from '@wordpress/compose';
9
8
  import { decodeEntities } from '@wordpress/html-entities';
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
10
  const unescapeString = arg => {
11
11
  return decodeEntities(arg);
12
12
  };
@@ -35,7 +35,7 @@ export default function CategorySelector({
35
35
  }, []);
36
36
  onChange(uniqueTerms);
37
37
  }
38
- return createElement(FormTokenField, {
38
+ return /*#__PURE__*/_jsx(FormTokenField, {
39
39
  className: "patterns-menu-items__convert-modal-categories",
40
40
  value: categoryTerms,
41
41
  suggestions: suggestions,
@@ -1 +1 @@
1
- {"version":3,"names":["__","useMemo","useState","FormTokenField","useDebounce","decodeEntities","unescapeString","arg","CATEGORY_SLUG","CategorySelector","categoryTerms","onChange","categoryMap","search","setSearch","debouncedSearch","suggestions","Array","from","values","map","category","label","filter","toLowerCase","includes","sort","a","b","localeCompare","handleChange","termNames","uniqueTerms","reduce","terms","newTerm","some","term","push","createElement","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":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,OAAO,EAAEC,QAAQ,QAAQ,oBAAoB;AACtD,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,WAAW,QAAQ,oBAAoB;AAChD,SAASC,cAAc,QAAQ,0BAA0B;AAEzD,MAAMC,cAAc,GAAKC,GAAG,IAAM;EACjC,OAAOF,cAAc,CAAEE,GAAI,CAAC;AAC7B,CAAC;AAED,OAAO,MAAMC,aAAa,GAAG,qBAAqB;AAElD,eAAe,SAASC,gBAAgBA,CAAE;EACzCC,aAAa;EACbC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,MAAM,EAAEC,SAAS,CAAE,GAAGZ,QAAQ,CAAE,EAAG,CAAC;EAC5C,MAAMa,eAAe,GAAGX,WAAW,CAAEU,SAAS,EAAE,GAAI,CAAC;EAErD,MAAME,WAAW,GAAGf,OAAO,CAAE,MAAM;IAClC,OAAOgB,KAAK,CAACC,IAAI,CAAEN,WAAW,CAACO,MAAM,CAAC,CAAE,CAAC,CACvCC,GAAG,CAAIC,QAAQ,IAAMf,cAAc,CAAEe,QAAQ,CAACC,KAAM,CAAE,CAAC,CACvDC,MAAM,CAAIF,QAAQ,IAAM;MACxB,IAAKR,MAAM,KAAK,EAAE,EAAG;QACpB,OAAOQ,QAAQ,CACbG,WAAW,CAAC,CAAC,CACbC,QAAQ,CAAEZ,MAAM,CAACW,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,CAAEf,MAAM,EAAED,WAAW,CAAG,CAAC;EAE5B,SAASkB,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;IAEPvB,QAAQ,CAAEqB,WAAY,CAAC;EACxB;EAEA,OACCO,aAAA,CAACpC,cAAc;IACdqC,SAAS,EAAC,+CAA+C;IACzDC,KAAK,EAAG/B,aAAe;IACvBM,WAAW,EAAGA,WAAa;IAC3BL,QAAQ,EAAGmB,YAAc;IACzBY,aAAa,EAAG3B,eAAiB;IACjCO,KAAK,EAAGtB,EAAE,CAAE,YAAa,CAAG;IAC5B2C,cAAc;IACdC,2BAA2B;IAC3BC,qBAAqB;IACrBC,uBAAuB;EAAA,CACvB,CAAC;AAEJ","ignoreList":[]}
1
+ {"version":3,"names":["__","useMemo","useState","FormTokenField","useDebounce","decodeEntities","jsx","_jsx","unescapeString","arg","CATEGORY_SLUG","CategorySelector","categoryTerms","onChange","categoryMap","search","setSearch","debouncedSearch","suggestions","Array","from","values","map","category","label","filter","toLowerCase","includes","sort","a","b","localeCompare","handleChange","termNames","uniqueTerms","reduce","terms","newTerm","some","term","push","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":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,OAAO,EAAEC,QAAQ,QAAQ,oBAAoB;AACtD,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,WAAW,QAAQ,oBAAoB;AAChD,SAASC,cAAc,QAAQ,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE1D,MAAMC,cAAc,GAAKC,GAAG,IAAM;EACjC,OAAOJ,cAAc,CAAEI,GAAI,CAAC;AAC7B,CAAC;AAED,OAAO,MAAMC,aAAa,GAAG,qBAAqB;AAElD,eAAe,SAASC,gBAAgBA,CAAE;EACzCC,aAAa;EACbC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,MAAM,EAAEC,SAAS,CAAE,GAAGd,QAAQ,CAAE,EAAG,CAAC;EAC5C,MAAMe,eAAe,GAAGb,WAAW,CAAEY,SAAS,EAAE,GAAI,CAAC;EAErD,MAAME,WAAW,GAAGjB,OAAO,CAAE,MAAM;IAClC,OAAOkB,KAAK,CAACC,IAAI,CAAEN,WAAW,CAACO,MAAM,CAAC,CAAE,CAAC,CACvCC,GAAG,CAAIC,QAAQ,IAAMf,cAAc,CAAEe,QAAQ,CAACC,KAAM,CAAE,CAAC,CACvDC,MAAM,CAAIF,QAAQ,IAAM;MACxB,IAAKR,MAAM,KAAK,EAAE,EAAG;QACpB,OAAOQ,QAAQ,CACbG,WAAW,CAAC,CAAC,CACbC,QAAQ,CAAEZ,MAAM,CAACW,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,CAAEf,MAAM,EAAED,WAAW,CAAG,CAAC;EAE5B,SAASkB,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;IAEPvB,QAAQ,CAAEqB,WAAY,CAAC;EACxB;EAEA,oBACC3B,IAAA,CAACJ,cAAc;IACdsC,SAAS,EAAC,+CAA+C;IACzDC,KAAK,EAAG9B,aAAe;IACvBM,WAAW,EAAGA,WAAa;IAC3BL,QAAQ,EAAGmB,YAAc;IACzBW,aAAa,EAAG1B,eAAiB;IACjCO,KAAK,EAAGxB,EAAE,CAAE,YAAa,CAAG;IAC5B4C,cAAc;IACdC,2BAA2B;IAC3BC,qBAAqB;IACrBC,uBAAuB;EAAA,CACvB,CAAC;AAEJ","ignoreList":[]}
@@ -1,36 +1,40 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
5
4
  import { Modal, Button, TextControl, __experimentalHStack as HStack, __experimentalVStack as VStack, ToggleControl } from '@wordpress/components';
6
5
  import { __, _x } from '@wordpress/i18n';
7
6
  import { useState } from '@wordpress/element';
8
- import { useDispatch } from '@wordpress/data';
7
+ import { useDispatch, useSelect } from '@wordpress/data';
9
8
  import { store as noticesStore } from '@wordpress/notices';
9
+ import { store as coreStore } from '@wordpress/core-data';
10
10
 
11
11
  /**
12
12
  * Internal dependencies
13
13
  */
14
- import { PATTERN_DEFAULT_CATEGORY, PATTERN_SYNC_TYPES } from '../constants';
14
+ import { PATTERN_DEFAULT_CATEGORY, PATTERN_SYNC_TYPES, PATTERN_TYPES } from '../constants';
15
15
  import { store as patternsStore } from '../store';
16
16
  import CategorySelector from './category-selector';
17
17
  import { useAddPatternCategory } from '../private-hooks';
18
18
  import { unlock } from '../lock-unlock';
19
+ import { jsx as _jsx } from "react/jsx-runtime";
20
+ import { jsxs as _jsxs } from "react/jsx-runtime";
19
21
  export default function CreatePatternModal({
20
22
  className = 'patterns-menu-items__convert-modal',
21
- modalTitle = __('Create pattern'),
23
+ modalTitle,
22
24
  ...restProps
23
25
  }) {
24
- return createElement(Modal, {
25
- title: modalTitle,
26
+ const defaultModalTitle = useSelect(select => select(coreStore).getPostType(PATTERN_TYPES.user)?.labels?.add_new_item, []);
27
+ return /*#__PURE__*/_jsx(Modal, {
28
+ title: modalTitle || defaultModalTitle,
26
29
  onRequestClose: restProps.onClose,
27
- overlayClassName: className
28
- }, createElement(CreatePatternModalContents, {
29
- ...restProps
30
- }));
30
+ overlayClassName: className,
31
+ children: /*#__PURE__*/_jsx(CreatePatternModalContents, {
32
+ ...restProps
33
+ })
34
+ });
31
35
  }
32
36
  export function CreatePatternModalContents({
33
- confirmLabel = __('Create'),
37
+ confirmLabel = __('Add'),
34
38
  defaultCategories = [],
35
39
  content,
36
40
  onClose,
@@ -77,47 +81,52 @@ export function CreatePatternModalContents({
77
81
  setTitle('');
78
82
  }
79
83
  }
80
- return createElement("form", {
84
+ return /*#__PURE__*/_jsx("form", {
81
85
  onSubmit: event => {
82
86
  event.preventDefault();
83
87
  onCreate(title, syncType);
84
- }
85
- }, createElement(VStack, {
86
- spacing: "5"
87
- }, createElement(TextControl, {
88
- label: __('Name'),
89
- value: title,
90
- onChange: setTitle,
91
- placeholder: __('My pattern'),
92
- className: "patterns-create-modal__name-input",
93
- __nextHasNoMarginBottom: true,
94
- __next40pxDefaultSize: true
95
- }), createElement(CategorySelector, {
96
- categoryTerms: categoryTerms,
97
- onChange: setCategoryTerms,
98
- categoryMap: categoryMap
99
- }), createElement(ToggleControl, {
100
- label: _x('Synced', 'Option that makes an individual pattern synchronized'),
101
- help: __('Sync this pattern across multiple locations.'),
102
- checked: syncType === PATTERN_SYNC_TYPES.full,
103
- onChange: () => {
104
- setSyncType(syncType === PATTERN_SYNC_TYPES.full ? PATTERN_SYNC_TYPES.unsynced : PATTERN_SYNC_TYPES.full);
105
- }
106
- }), createElement(HStack, {
107
- justify: "right"
108
- }, createElement(Button, {
109
- __next40pxDefaultSize: true,
110
- variant: "tertiary",
111
- onClick: () => {
112
- onClose();
113
- setTitle('');
114
- }
115
- }, __('Cancel')), createElement(Button, {
116
- __next40pxDefaultSize: true,
117
- variant: "primary",
118
- type: "submit",
119
- "aria-disabled": !title || isSaving,
120
- isBusy: isSaving
121
- }, confirmLabel))));
88
+ },
89
+ children: /*#__PURE__*/_jsxs(VStack, {
90
+ spacing: "5",
91
+ children: [/*#__PURE__*/_jsx(TextControl, {
92
+ label: __('Name'),
93
+ value: title,
94
+ onChange: setTitle,
95
+ placeholder: __('My pattern'),
96
+ className: "patterns-create-modal__name-input",
97
+ __nextHasNoMarginBottom: true,
98
+ __next40pxDefaultSize: true
99
+ }), /*#__PURE__*/_jsx(CategorySelector, {
100
+ categoryTerms: categoryTerms,
101
+ onChange: setCategoryTerms,
102
+ categoryMap: categoryMap
103
+ }), /*#__PURE__*/_jsx(ToggleControl, {
104
+ label: _x('Synced', 'Option that makes an individual pattern synchronized'),
105
+ help: __('Sync this pattern across multiple locations.'),
106
+ checked: syncType === PATTERN_SYNC_TYPES.full,
107
+ onChange: () => {
108
+ setSyncType(syncType === PATTERN_SYNC_TYPES.full ? PATTERN_SYNC_TYPES.unsynced : PATTERN_SYNC_TYPES.full);
109
+ }
110
+ }), /*#__PURE__*/_jsxs(HStack, {
111
+ justify: "right",
112
+ children: [/*#__PURE__*/_jsx(Button, {
113
+ __next40pxDefaultSize: true,
114
+ variant: "tertiary",
115
+ onClick: () => {
116
+ onClose();
117
+ setTitle('');
118
+ },
119
+ children: __('Cancel')
120
+ }), /*#__PURE__*/_jsx(Button, {
121
+ __next40pxDefaultSize: true,
122
+ variant: "primary",
123
+ type: "submit",
124
+ "aria-disabled": !title || isSaving,
125
+ isBusy: isSaving,
126
+ children: confirmLabel
127
+ })]
128
+ })]
129
+ })
130
+ });
122
131
  }
123
132
  //# sourceMappingURL=create-pattern-modal.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Modal","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","ToggleControl","__","_x","useState","useDispatch","store","noticesStore","PATTERN_DEFAULT_CATEGORY","PATTERN_SYNC_TYPES","patternsStore","CategorySelector","useAddPatternCategory","unlock","CreatePatternModal","className","modalTitle","restProps","createElement","title","onRequestClose","onClose","overlayClassName","CreatePatternModalContents","confirmLabel","defaultCategories","content","onError","onSuccess","defaultSyncType","full","defaultTitle","syncType","setSyncType","categoryTerms","setCategoryTerms","setTitle","isSaving","setIsSaving","createPattern","createErrorNotice","categoryMap","findOrCreateTerm","onCreate","patternTitle","sync","categories","Promise","all","map","termName","newPattern","pattern","categoryId","error","message","type","id","onSubmit","event","preventDefault","spacing","label","value","onChange","placeholder","__nextHasNoMarginBottom","__next40pxDefaultSize","help","checked","unsynced","justify","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 } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { PATTERN_DEFAULT_CATEGORY, PATTERN_SYNC_TYPES } 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 = __( 'Create pattern' ),\n\t...restProps\n} ) {\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle }\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 = __( 'Create' ),\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(\n\t\t\t\t\t\t'Synced',\n\t\t\t\t\t\t'Option that makes an individual pattern synchronized'\n\t\t\t\t\t) }\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":[]}
1
+ {"version":3,"names":["Modal","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","ToggleControl","__","_x","useState","useDispatch","useSelect","store","noticesStore","coreStore","PATTERN_DEFAULT_CATEGORY","PATTERN_SYNC_TYPES","PATTERN_TYPES","patternsStore","CategorySelector","useAddPatternCategory","unlock","jsx","_jsx","jsxs","_jsxs","CreatePatternModal","className","modalTitle","restProps","defaultModalTitle","select","getPostType","user","labels","add_new_item","title","onRequestClose","onClose","overlayClassName","children","CreatePatternModalContents","confirmLabel","defaultCategories","content","onError","onSuccess","defaultSyncType","full","defaultTitle","syncType","setSyncType","categoryTerms","setCategoryTerms","setTitle","isSaving","setIsSaving","createPattern","createErrorNotice","categoryMap","findOrCreateTerm","onCreate","patternTitle","sync","categories","Promise","all","map","termName","newPattern","pattern","categoryId","error","message","type","id","onSubmit","event","preventDefault","spacing","label","value","onChange","placeholder","__nextHasNoMarginBottom","__next40pxDefaultSize","help","checked","unsynced","justify","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(\n\t\t\t\t\t\t'Synced',\n\t\t\t\t\t\t'Option that makes an individual pattern synchronized'\n\t\t\t\t\t) }\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":"AAAA;AACA;AACA;AACA,SACCA,KAAK,EACLC,MAAM,EACNC,WAAW,EACXC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,EAC9BC,aAAa,QACP,uBAAuB;AAC9B,SAASC,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,KAAK,IAAIC,YAAY,QAAQ,oBAAoB;AAC1D,SAASD,KAAK,IAAIE,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA,SACCC,wBAAwB,EACxBC,kBAAkB,EAClBC,aAAa,QACP,cAAc;AACrB,SAASL,KAAK,IAAIM,aAAa,QAAQ,UAAU;AACjD,OAAOC,gBAAgB,MAAM,qBAAqB;AAClD,SAASC,qBAAqB,QAAQ,kBAAkB;AACxD,SAASC,MAAM,QAAQ,gBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAExC,eAAe,SAASC,kBAAkBA,CAAE;EAC3CC,SAAS,GAAG,oCAAoC;EAChDC,UAAU;EACV,GAAGC;AACJ,CAAC,EAAG;EACH,MAAMC,iBAAiB,GAAGnB,SAAS,CAChCoB,MAAM,IACPA,MAAM,CAAEjB,SAAU,CAAC,CAACkB,WAAW,CAAEf,aAAa,CAACgB,IAAK,CAAC,EAAEC,MAAM,EAC1DC,YAAY,EAChB,EACD,CAAC;EACD,oBACCZ,IAAA,CAACxB,KAAK;IACLqC,KAAK,EAAGR,UAAU,IAAIE,iBAAmB;IACzCO,cAAc,EAAGR,SAAS,CAACS,OAAS;IACpCC,gBAAgB,EAAGZ,SAAW;IAAAa,QAAA,eAE9BjB,IAAA,CAACkB,0BAA0B;MAAA,GAAMZ;IAAS,CAAI;EAAC,CACzC,CAAC;AAEV;AAEA,OAAO,SAASY,0BAA0BA,CAAE;EAC3CC,YAAY,GAAGnC,EAAE,CAAE,KAAM,CAAC;EAC1BoC,iBAAiB,GAAG,EAAE;EACtBC,OAAO;EACPN,OAAO;EACPO,OAAO;EACPC,SAAS;EACTC,eAAe,GAAG/B,kBAAkB,CAACgC,IAAI;EACzCC,YAAY,GAAG;AAChB,CAAC,EAAG;EACH,MAAM,CAAEC,QAAQ,EAAEC,WAAW,CAAE,GAAG1C,QAAQ,CAAEsC,eAAgB,CAAC;EAC7D,MAAM,CAAEK,aAAa,EAAEC,gBAAgB,CAAE,GAAG5C,QAAQ,CAAEkC,iBAAkB,CAAC;EACzE,MAAM,CAAEP,KAAK,EAAEkB,QAAQ,CAAE,GAAG7C,QAAQ,CAAEwC,YAAa,CAAC;EAEpD,MAAM,CAAEM,QAAQ,EAAEC,WAAW,CAAE,GAAG/C,QAAQ,CAAE,KAAM,CAAC;EACnD,MAAM;IAAEgD;EAAc,CAAC,GAAGpC,MAAM,CAAEX,WAAW,CAAEQ,aAAc,CAAE,CAAC;EAChE,MAAM;IAAEwC;EAAkB,CAAC,GAAGhD,WAAW,CAAEG,YAAa,CAAC;EAEzD,MAAM;IAAE8C,WAAW;IAAEC;EAAiB,CAAC,GAAGxC,qBAAqB,CAAC,CAAC;EAEjE,eAAeyC,QAAQA,CAAEC,YAAY,EAAEC,IAAI,EAAG;IAC7C,IAAK,CAAE3B,KAAK,IAAImB,QAAQ,EAAG;MAC1B;IACD;IAEA,IAAI;MACHC,WAAW,CAAE,IAAK,CAAC;MACnB,MAAMQ,UAAU,GAAG,MAAMC,OAAO,CAACC,GAAG,CACnCd,aAAa,CAACe,GAAG,CAAIC,QAAQ,IAC5BR,gBAAgB,CAAEQ,QAAS,CAC5B,CACD,CAAC;MAED,MAAMC,UAAU,GAAG,MAAMZ,aAAa,CACrCK,YAAY,EACZC,IAAI,EACJ,OAAOnB,OAAO,KAAK,UAAU,GAAGA,OAAO,CAAC,CAAC,GAAGA,OAAO,EACnDoB,UACD,CAAC;MACDlB,SAAS,CAAE;QACVwB,OAAO,EAAED,UAAU;QACnBE,UAAU,EAAExD;MACb,CAAE,CAAC;IACJ,CAAC,CAAC,OAAQyD,KAAK,EAAG;MACjBd,iBAAiB,CAAEc,KAAK,CAACC,OAAO,EAAE;QACjCC,IAAI,EAAE,UAAU;QAChBC,EAAE,EAAE;MACL,CAAE,CAAC;MACH9B,OAAO,GAAG,CAAC;IACZ,CAAC,SAAS;MACTW,WAAW,CAAE,KAAM,CAAC;MACpBH,gBAAgB,CAAE,EAAG,CAAC;MACtBC,QAAQ,CAAE,EAAG,CAAC;IACf;EACD;EAEA,oBACC/B,IAAA;IACCqD,QAAQ,EAAKC,KAAK,IAAM;MACvBA,KAAK,CAACC,cAAc,CAAC,CAAC;MACtBjB,QAAQ,CAAEzB,KAAK,EAAEc,QAAS,CAAC;IAC5B,CAAG;IAAAV,QAAA,eAEHf,KAAA,CAACpB,MAAM;MAAC0E,OAAO,EAAC,GAAG;MAAAvC,QAAA,gBAClBjB,IAAA,CAACtB,WAAW;QACX+E,KAAK,EAAGzE,EAAE,CAAE,MAAO,CAAG;QACtB0E,KAAK,EAAG7C,KAAO;QACf8C,QAAQ,EAAG5B,QAAU;QACrB6B,WAAW,EAAG5E,EAAE,CAAE,YAAa,CAAG;QAClCoB,SAAS,EAAC,mCAAmC;QAC7CyD,uBAAuB;QACvBC,qBAAqB;MAAA,CACrB,CAAC,eACF9D,IAAA,CAACJ,gBAAgB;QAChBiC,aAAa,EAAGA,aAAe;QAC/B8B,QAAQ,EAAG7B,gBAAkB;QAC7BM,WAAW,EAAGA;MAAa,CAC3B,CAAC,eACFpC,IAAA,CAACjB,aAAa;QACb0E,KAAK,EAAGxE,EAAE,CACT,QAAQ,EACR,sDACD,CAAG;QACH8E,IAAI,EAAG/E,EAAE,CACR,8CACD,CAAG;QACHgF,OAAO,EAAGrC,QAAQ,KAAKlC,kBAAkB,CAACgC,IAAM;QAChDkC,QAAQ,EAAGA,CAAA,KAAM;UAChB/B,WAAW,CACVD,QAAQ,KAAKlC,kBAAkB,CAACgC,IAAI,GACjChC,kBAAkB,CAACwE,QAAQ,GAC3BxE,kBAAkB,CAACgC,IACvB,CAAC;QACF;MAAG,CACH,CAAC,eACFvB,KAAA,CAACtB,MAAM;QAACsF,OAAO,EAAC,OAAO;QAAAjD,QAAA,gBACtBjB,IAAA,CAACvB,MAAM;UACNqF,qBAAqB;UACrBK,OAAO,EAAC,UAAU;UAClBC,OAAO,EAAGA,CAAA,KAAM;YACfrD,OAAO,CAAC,CAAC;YACTgB,QAAQ,CAAE,EAAG,CAAC;UACf,CAAG;UAAAd,QAAA,EAEDjC,EAAE,CAAE,QAAS;QAAC,CACT,CAAC,eAETgB,IAAA,CAACvB,MAAM;UACNqF,qBAAqB;UACrBK,OAAO,EAAC,SAAS;UACjBhB,IAAI,EAAC,QAAQ;UACb,iBAAgB,CAAEtC,KAAK,IAAImB,QAAU;UACrCqC,MAAM,EAAGrC,QAAU;UAAAf,QAAA,EAEjBE;QAAY,CACP,CAAC;MAAA,CACF,CAAC;IAAA,CACF;EAAC,CACJ,CAAC;AAET","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -12,6 +11,7 @@ import { store as noticesStore } from '@wordpress/notices';
12
11
  */
13
12
  import CreatePatternModal from './create-pattern-modal';
14
13
  import { PATTERN_SYNC_TYPES, PATTERN_TYPES } from '../constants';
14
+ import { jsx as _jsx } from "react/jsx-runtime";
15
15
  function getTermLabels(pattern, categories) {
16
16
  // Theme patterns rely on core pattern categories.
17
17
  if (pattern.type !== PATTERN_TYPES.user) {
@@ -73,7 +73,7 @@ export default function DuplicatePatternModal({
73
73
  if (!pattern) {
74
74
  return null;
75
75
  }
76
- return createElement(CreatePatternModal, {
76
+ return /*#__PURE__*/_jsx(CreatePatternModal, {
77
77
  modalTitle: __('Duplicate pattern'),
78
78
  confirmLabel: __('Duplicate'),
79
79
  onClose: onClose,
@@ -1 +1 @@
1
- {"version":3,"names":["store","coreStore","useDispatch","useSelect","__","sprintf","noticesStore","CreatePatternModal","PATTERN_SYNC_TYPES","PATTERN_TYPES","getTermLabels","pattern","categories","type","user","core","filter","category","includes","name","map","label","wp_pattern_category","id","useDuplicatePatternProps","onSuccess","createSuccessNotice","select","getUserPatternCategories","getBlockPatternCategories","content","defaultCategories","defaultSyncType","unsynced","wp_pattern_sync_status","full","defaultTitle","title","raw","newPattern","DuplicatePatternModal","onClose","duplicatedProps","createElement","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":[]}
1
+ {"version":3,"names":["store","coreStore","useDispatch","useSelect","__","sprintf","noticesStore","CreatePatternModal","PATTERN_SYNC_TYPES","PATTERN_TYPES","jsx","_jsx","getTermLabels","pattern","categories","type","user","core","filter","category","includes","name","map","label","wp_pattern_category","id","useDuplicatePatternProps","onSuccess","createSuccessNotice","select","getUserPatternCategories","getBlockPatternCategories","content","defaultCategories","defaultSyncType","unsynced","wp_pattern_sync_status","full","defaultTitle","title","raw","newPattern","DuplicatePatternModal","onClose","duplicatedProps","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":[]}
@@ -1,4 +1,3 @@
1
- import { createElement, Fragment } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -9,18 +8,25 @@ import { BlockSettingsMenuControls } from '@wordpress/block-editor';
9
8
  */
10
9
  import PatternConvertButton from './pattern-convert-button';
11
10
  import PatternsManageButton from './patterns-manage-button';
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ import { Fragment as _Fragment } from "react/jsx-runtime";
13
+ import { jsxs as _jsxs } from "react/jsx-runtime";
12
14
  export default function PatternsMenuItems({
13
15
  rootClientId
14
16
  }) {
15
- return createElement(BlockSettingsMenuControls, null, ({
16
- selectedClientIds,
17
- onClose
18
- }) => createElement(Fragment, null, createElement(PatternConvertButton, {
19
- clientIds: selectedClientIds,
20
- rootClientId: rootClientId,
21
- closeBlockSettingsMenu: onClose
22
- }), selectedClientIds.length === 1 && createElement(PatternsManageButton, {
23
- clientId: selectedClientIds[0]
24
- })));
17
+ return /*#__PURE__*/_jsx(BlockSettingsMenuControls, {
18
+ children: ({
19
+ selectedClientIds,
20
+ onClose
21
+ }) => /*#__PURE__*/_jsxs(_Fragment, {
22
+ children: [/*#__PURE__*/_jsx(PatternConvertButton, {
23
+ clientIds: selectedClientIds,
24
+ rootClientId: rootClientId,
25
+ closeBlockSettingsMenu: onClose
26
+ }), selectedClientIds.length === 1 && /*#__PURE__*/_jsx(PatternsManageButton, {
27
+ clientId: selectedClientIds[0]
28
+ })]
29
+ })
30
+ });
25
31
  }
26
32
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BlockSettingsMenuControls","PatternConvertButton","PatternsManageButton","PatternsMenuItems","rootClientId","createElement","selectedClientIds","onClose","Fragment","clientIds","closeBlockSettingsMenu","length","clientId"],"sources":["@wordpress/patterns/src/components/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { BlockSettingsMenuControls } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport PatternConvertButton from './pattern-convert-button';\nimport PatternsManageButton from './patterns-manage-button';\n\nexport default function PatternsMenuItems( { rootClientId } ) {\n\treturn (\n\t\t<BlockSettingsMenuControls>\n\t\t\t{ ( { selectedClientIds, onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<PatternConvertButton\n\t\t\t\t\t\tclientIds={ selectedClientIds }\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tcloseBlockSettingsMenu={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t\t{ selectedClientIds.length === 1 && (\n\t\t\t\t\t\t<PatternsManageButton\n\t\t\t\t\t\t\tclientId={ selectedClientIds[ 0 ] }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</BlockSettingsMenuControls>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,yBAAyB,QAAQ,yBAAyB;;AAEnE;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,0BAA0B;AAC3D,OAAOC,oBAAoB,MAAM,0BAA0B;AAE3D,eAAe,SAASC,iBAAiBA,CAAE;EAAEC;AAAa,CAAC,EAAG;EAC7D,OACCC,aAAA,CAACL,yBAAyB,QACvB,CAAE;IAAEM,iBAAiB;IAAEC;EAAQ,CAAC,KACjCF,aAAA,CAAAG,QAAA,QACCH,aAAA,CAACJ,oBAAoB;IACpBQ,SAAS,EAAGH,iBAAmB;IAC/BF,YAAY,EAAGA,YAAc;IAC7BM,sBAAsB,EAAGH;EAAS,CAClC,CAAC,EACAD,iBAAiB,CAACK,MAAM,KAAK,CAAC,IAC/BN,aAAA,CAACH,oBAAoB;IACpBU,QAAQ,EAAGN,iBAAiB,CAAE,CAAC;EAAI,CACnC,CAED,CAEuB,CAAC;AAE9B","ignoreList":[]}
1
+ {"version":3,"names":["BlockSettingsMenuControls","PatternConvertButton","PatternsManageButton","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","PatternsMenuItems","rootClientId","children","selectedClientIds","onClose","clientIds","closeBlockSettingsMenu","length","clientId"],"sources":["@wordpress/patterns/src/components/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { BlockSettingsMenuControls } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport PatternConvertButton from './pattern-convert-button';\nimport PatternsManageButton from './patterns-manage-button';\n\nexport default function PatternsMenuItems( { rootClientId } ) {\n\treturn (\n\t\t<BlockSettingsMenuControls>\n\t\t\t{ ( { selectedClientIds, onClose } ) => (\n\t\t\t\t<>\n\t\t\t\t\t<PatternConvertButton\n\t\t\t\t\t\tclientIds={ selectedClientIds }\n\t\t\t\t\t\trootClientId={ rootClientId }\n\t\t\t\t\t\tcloseBlockSettingsMenu={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t\t{ selectedClientIds.length === 1 && (\n\t\t\t\t\t\t<PatternsManageButton\n\t\t\t\t\t\t\tclientId={ selectedClientIds[ 0 ] }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</BlockSettingsMenuControls>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,yBAAyB,QAAQ,yBAAyB;;AAEnE;AACA;AACA;AACA,OAAOC,oBAAoB,MAAM,0BAA0B;AAC3D,OAAOC,oBAAoB,MAAM,0BAA0B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE5D,eAAe,SAASC,iBAAiBA,CAAE;EAAEC;AAAa,CAAC,EAAG;EAC7D,oBACCN,IAAA,CAACJ,yBAAyB;IAAAW,QAAA,EACvBA,CAAE;MAAEC,iBAAiB;MAAEC;IAAQ,CAAC,kBACjCL,KAAA,CAAAF,SAAA;MAAAK,QAAA,gBACCP,IAAA,CAACH,oBAAoB;QACpBa,SAAS,EAAGF,iBAAmB;QAC/BF,YAAY,EAAGA,YAAc;QAC7BK,sBAAsB,EAAGF;MAAS,CAClC,CAAC,EACAD,iBAAiB,CAACI,MAAM,KAAK,CAAC,iBAC/BZ,IAAA,CAACF,oBAAoB;QACpBe,QAAQ,EAAGL,iBAAiB,CAAE,CAAC;MAAI,CACnC,CACD;IAAA,CACA;EACF,CACyB,CAAC;AAE9B","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import { createElement } from "react";
2
1
  /**
3
2
  * WordPress dependencies
4
3
  */
@@ -13,6 +12,7 @@ import { __ } from '@wordpress/i18n';
13
12
  */
14
13
  import { isOverridableBlock } from '../api';
15
14
  import { unlock } from '../lock-unlock';
15
+ import { jsx as _jsx } from "react/jsx-runtime";
16
16
  const {
17
17
  BlockQuickNavigation
18
18
  } = unlock(blockEditorPrivateApis);
@@ -28,10 +28,11 @@ export default function OverridesPanel() {
28
28
  if (!clientIdsWithOverrides?.length) {
29
29
  return null;
30
30
  }
31
- return createElement(PanelBody, {
32
- title: __('Overrides')
33
- }, createElement(BlockQuickNavigation, {
34
- clientIds: clientIdsWithOverrides
35
- }));
31
+ return /*#__PURE__*/_jsx(PanelBody, {
32
+ title: __('Overrides'),
33
+ children: /*#__PURE__*/_jsx(BlockQuickNavigation, {
34
+ clientIds: clientIdsWithOverrides
35
+ })
36
+ });
36
37
  }
37
38
  //# sourceMappingURL=overrides-panel.js.map