@wordpress/edit-post 5.0.8 → 5.0.12
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/build/components/sidebar/template/actions.js +3 -1
- package/build/components/sidebar/template/actions.js.map +1 -1
- package/build-module/components/sidebar/template/actions.js +4 -2
- package/build-module/components/sidebar/template/actions.js.map +1 -1
- package/package.json +8 -8
- package/src/components/sidebar/template/actions.js +5 -2
|
@@ -119,7 +119,9 @@ function PostTemplateActions() {
|
|
|
119
119
|
}, (0, _i18n.__)('Edit')), (0, _element.createElement)(_components.Button, {
|
|
120
120
|
variant: "link",
|
|
121
121
|
onClick: () => setIsModalOpen(true)
|
|
122
|
-
},
|
|
122
|
+
},
|
|
123
|
+
/* translators: button to create a new template */
|
|
124
|
+
(0, _i18n._x)('New', 'action'))), isModalOpen && (0, _element.createElement)(_components.Modal, {
|
|
123
125
|
title: (0, _i18n.__)('Create custom template'),
|
|
124
126
|
closeLabel: (0, _i18n.__)('Close'),
|
|
125
127
|
onRequestClose: () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/template/actions.js"],"names":["PostTemplateActions","isModalOpen","setIsModalOpen","isBusy","setIsBusy","title","setTitle","template","supportsTemplateMode","defaultTemplate","select","getCurrentPostType","getEditorSettings","editorStore","getPostType","coreStore","getEditedPostTemplate","editPostStore","isViewable","viewable","_supportsTemplateMode","defaultBlockTemplate","__unstableCreateTemplate","__unstableSwitchToTemplateMode","defaultTitle","onCreateTemplate","event","preventDefault","newTemplateContent","tagName","layout","inherit","slug","content"],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/template/actions.js"],"names":["PostTemplateActions","isModalOpen","setIsModalOpen","isBusy","setIsBusy","title","setTitle","template","supportsTemplateMode","defaultTemplate","select","getCurrentPostType","getEditorSettings","editorStore","getPostType","coreStore","getEditedPostTemplate","editPostStore","isViewable","viewable","_supportsTemplateMode","defaultBlockTemplate","__unstableCreateTemplate","__unstableSwitchToTemplateMode","defaultTitle","onCreateTemplate","event","preventDefault","newTemplateContent","tagName","layout","inherit","slug","content"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tButton,\n\tModal,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\nimport { createBlock, serialize } from '@wordpress/blocks';\n\nfunction PostTemplateActions() {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\tconst [ title, setTitle ] = useState( '' );\n\tconst { template, supportsTemplateMode, defaultTemplate } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentPostType, getEditorSettings } = select(\n\t\t\t\teditorStore\n\t\t\t);\n\t\t\tconst { getPostType } = select( coreStore );\n\t\t\tconst { getEditedPostTemplate } = select( editPostStore );\n\n\t\t\tconst isViewable =\n\t\t\t\tgetPostType( getCurrentPostType() )?.viewable ?? false;\n\t\t\tconst _supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode && isViewable;\n\n\t\t\treturn {\n\t\t\t\ttemplate: _supportsTemplateMode && getEditedPostTemplate(),\n\t\t\t\tsupportsTemplateMode: _supportsTemplateMode,\n\t\t\t\tdefaultTemplate: getEditorSettings().defaultBlockTemplate,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst {\n\t\t__unstableCreateTemplate,\n\t\t__unstableSwitchToTemplateMode,\n\t} = useDispatch( editPostStore );\n\n\tif ( ! supportsTemplateMode ) {\n\t\treturn null;\n\t}\n\n\tconst defaultTitle = __( 'Custom Template' );\n\n\tasync function onCreateTemplate( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isBusy ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsBusy( true );\n\n\t\tconst newTemplateContent =\n\t\t\tdefaultTemplate ??\n\t\t\tserialize( [\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'header',\n\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock( 'core/site-title' ),\n\t\t\t\t\t\tcreateBlock( 'core/site-tagline' ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t\tcreateBlock( 'core/separator' ),\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'main',\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t'core/group',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[ createBlock( 'core/post-title' ) ]\n\t\t\t\t\t\t),\n\t\t\t\t\t\tcreateBlock( 'core/post-content', {\n\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t} ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t] );\n\n\t\tawait __unstableCreateTemplate( {\n\t\t\tslug: 'wp-custom-template-' + kebabCase( title || defaultTitle ),\n\t\t\tcontent: newTemplateContent,\n\t\t\ttitle: title || defaultTitle,\n\t\t} );\n\n\t\tsetIsBusy( false );\n\t\tsetIsModalOpen( false );\n\n\t\t__unstableSwitchToTemplateMode( true );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-post-template__actions\">\n\t\t\t\t{ !! template && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => __unstableSwitchToTemplateMode() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<Button variant=\"link\" onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t\t{\n\t\t\t\t\t\t/* translators: button to create a new template */\n\t\t\t\t\t\t_x( 'New', 'action' )\n\t\t\t\t\t}\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Create custom template' ) }\n\t\t\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName=\"edit-post-template__modal\"\n\t\t\t\t>\n\t\t\t\t\t<form onSubmit={ onCreateTemplate }>\n\t\t\t\t\t\t<Flex align=\"flex-start\" gap={ 8 }>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t\t\t\tplaceholder={ defaultTitle }\n\t\t\t\t\t\t\t\t\tdisabled={ isBusy }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the template, e.g. \"Full Width\". Custom templates can be applied to any post or page.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"edit-post-template__modal-actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\t\t\t\taria-disabled={ isBusy }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default PostTemplateActions;\n"]}
|
|
@@ -8,7 +8,7 @@ import { kebabCase } from 'lodash';
|
|
|
8
8
|
* WordPress dependencies
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import { __ } from '@wordpress/i18n';
|
|
11
|
+
import { __, _x } from '@wordpress/i18n';
|
|
12
12
|
import { Button, Modal, TextControl, Flex, FlexItem } from '@wordpress/components';
|
|
13
13
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
14
14
|
import { useState } from '@wordpress/element';
|
|
@@ -106,7 +106,9 @@ function PostTemplateActions() {
|
|
|
106
106
|
}, __('Edit')), createElement(Button, {
|
|
107
107
|
variant: "link",
|
|
108
108
|
onClick: () => setIsModalOpen(true)
|
|
109
|
-
},
|
|
109
|
+
},
|
|
110
|
+
/* translators: button to create a new template */
|
|
111
|
+
_x('New', 'action'))), isModalOpen && createElement(Modal, {
|
|
110
112
|
title: __('Create custom template'),
|
|
111
113
|
closeLabel: __('Close'),
|
|
112
114
|
onRequestClose: () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/template/actions.js"],"names":["kebabCase","__","Button","Modal","TextControl","Flex","FlexItem","useSelect","useDispatch","useState","store","editorStore","coreStore","editPostStore","createBlock","serialize","PostTemplateActions","isModalOpen","setIsModalOpen","isBusy","setIsBusy","title","setTitle","template","supportsTemplateMode","defaultTemplate","select","getCurrentPostType","getEditorSettings","getPostType","getEditedPostTemplate","isViewable","viewable","_supportsTemplateMode","defaultBlockTemplate","__unstableCreateTemplate","__unstableSwitchToTemplateMode","defaultTitle","onCreateTemplate","event","preventDefault","newTemplateContent","tagName","layout","inherit","slug","content"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tModal,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\nimport { createBlock, serialize } from '@wordpress/blocks';\n\nfunction PostTemplateActions() {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\tconst [ title, setTitle ] = useState( '' );\n\tconst { template, supportsTemplateMode, defaultTemplate } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentPostType, getEditorSettings } = select(\n\t\t\t\teditorStore\n\t\t\t);\n\t\t\tconst { getPostType } = select( coreStore );\n\t\t\tconst { getEditedPostTemplate } = select( editPostStore );\n\n\t\t\tconst isViewable =\n\t\t\t\tgetPostType( getCurrentPostType() )?.viewable ?? false;\n\t\t\tconst _supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode && isViewable;\n\n\t\t\treturn {\n\t\t\t\ttemplate: _supportsTemplateMode && getEditedPostTemplate(),\n\t\t\t\tsupportsTemplateMode: _supportsTemplateMode,\n\t\t\t\tdefaultTemplate: getEditorSettings().defaultBlockTemplate,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst {\n\t\t__unstableCreateTemplate,\n\t\t__unstableSwitchToTemplateMode,\n\t} = useDispatch( editPostStore );\n\n\tif ( ! supportsTemplateMode ) {\n\t\treturn null;\n\t}\n\n\tconst defaultTitle = __( 'Custom Template' );\n\n\tasync function onCreateTemplate( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isBusy ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsBusy( true );\n\n\t\tconst newTemplateContent =\n\t\t\tdefaultTemplate ??\n\t\t\tserialize( [\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'header',\n\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock( 'core/site-title' ),\n\t\t\t\t\t\tcreateBlock( 'core/site-tagline' ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t\tcreateBlock( 'core/separator' ),\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'main',\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t'core/group',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[ createBlock( 'core/post-title' ) ]\n\t\t\t\t\t\t),\n\t\t\t\t\t\tcreateBlock( 'core/post-content', {\n\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t} ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t] );\n\n\t\tawait __unstableCreateTemplate( {\n\t\t\tslug: 'wp-custom-template-' + kebabCase( title || defaultTitle ),\n\t\t\tcontent: newTemplateContent,\n\t\t\ttitle: title || defaultTitle,\n\t\t} );\n\n\t\tsetIsBusy( false );\n\t\tsetIsModalOpen( false );\n\n\t\t__unstableSwitchToTemplateMode( true );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-post-template__actions\">\n\t\t\t\t{ !! template && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => __unstableSwitchToTemplateMode() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<Button variant=\"link\" onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t\t{ __( 'New' ) }\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Create custom template' ) }\n\t\t\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName=\"edit-post-template__modal\"\n\t\t\t\t>\n\t\t\t\t\t<form onSubmit={ onCreateTemplate }>\n\t\t\t\t\t\t<Flex align=\"flex-start\" gap={ 8 }>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t\t\t\tplaceholder={ defaultTitle }\n\t\t\t\t\t\t\t\t\tdisabled={ isBusy }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the template, e.g. \"Full Width\". Custom templates can be applied to any post or page.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"edit-post-template__modal-actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\t\t\t\taria-disabled={ isBusy }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default PostTemplateActions;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/template/actions.js"],"names":["kebabCase","__","_x","Button","Modal","TextControl","Flex","FlexItem","useSelect","useDispatch","useState","store","editorStore","coreStore","editPostStore","createBlock","serialize","PostTemplateActions","isModalOpen","setIsModalOpen","isBusy","setIsBusy","title","setTitle","template","supportsTemplateMode","defaultTemplate","select","getCurrentPostType","getEditorSettings","getPostType","getEditedPostTemplate","isViewable","viewable","_supportsTemplateMode","defaultBlockTemplate","__unstableCreateTemplate","__unstableSwitchToTemplateMode","defaultTitle","onCreateTemplate","event","preventDefault","newTemplateContent","tagName","layout","inherit","slug","content"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tButton,\n\tModal,\n\tTextControl,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../../store';\nimport { createBlock, serialize } from '@wordpress/blocks';\n\nfunction PostTemplateActions() {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\tconst [ title, setTitle ] = useState( '' );\n\tconst { template, supportsTemplateMode, defaultTemplate } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentPostType, getEditorSettings } = select(\n\t\t\t\teditorStore\n\t\t\t);\n\t\t\tconst { getPostType } = select( coreStore );\n\t\t\tconst { getEditedPostTemplate } = select( editPostStore );\n\n\t\t\tconst isViewable =\n\t\t\t\tgetPostType( getCurrentPostType() )?.viewable ?? false;\n\t\t\tconst _supportsTemplateMode =\n\t\t\t\tgetEditorSettings().supportsTemplateMode && isViewable;\n\n\t\t\treturn {\n\t\t\t\ttemplate: _supportsTemplateMode && getEditedPostTemplate(),\n\t\t\t\tsupportsTemplateMode: _supportsTemplateMode,\n\t\t\t\tdefaultTemplate: getEditorSettings().defaultBlockTemplate,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst {\n\t\t__unstableCreateTemplate,\n\t\t__unstableSwitchToTemplateMode,\n\t} = useDispatch( editPostStore );\n\n\tif ( ! supportsTemplateMode ) {\n\t\treturn null;\n\t}\n\n\tconst defaultTitle = __( 'Custom Template' );\n\n\tasync function onCreateTemplate( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( isBusy ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsBusy( true );\n\n\t\tconst newTemplateContent =\n\t\t\tdefaultTemplate ??\n\t\t\tserialize( [\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'header',\n\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock( 'core/site-title' ),\n\t\t\t\t\t\tcreateBlock( 'core/site-tagline' ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t\tcreateBlock( 'core/separator' ),\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\ttagName: 'main',\n\t\t\t\t\t},\n\t\t\t\t\t[\n\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t'core/group',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t[ createBlock( 'core/post-title' ) ]\n\t\t\t\t\t\t),\n\t\t\t\t\t\tcreateBlock( 'core/post-content', {\n\t\t\t\t\t\t\tlayout: { inherit: true },\n\t\t\t\t\t\t} ),\n\t\t\t\t\t]\n\t\t\t\t),\n\t\t\t] );\n\n\t\tawait __unstableCreateTemplate( {\n\t\t\tslug: 'wp-custom-template-' + kebabCase( title || defaultTitle ),\n\t\t\tcontent: newTemplateContent,\n\t\t\ttitle: title || defaultTitle,\n\t\t} );\n\n\t\tsetIsBusy( false );\n\t\tsetIsModalOpen( false );\n\n\t\t__unstableSwitchToTemplateMode( true );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-post-template__actions\">\n\t\t\t\t{ !! template && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ () => __unstableSwitchToTemplateMode() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<Button variant=\"link\" onClick={ () => setIsModalOpen( true ) }>\n\t\t\t\t\t{\n\t\t\t\t\t\t/* translators: button to create a new template */\n\t\t\t\t\t\t_x( 'New', 'action' )\n\t\t\t\t\t}\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Create custom template' ) }\n\t\t\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName=\"edit-post-template__modal\"\n\t\t\t\t>\n\t\t\t\t\t<form onSubmit={ onCreateTemplate }>\n\t\t\t\t\t\t<Flex align=\"flex-start\" gap={ 8 }>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t\t\t\tplaceholder={ defaultTitle }\n\t\t\t\t\t\t\t\t\tdisabled={ isBusy }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the template, e.g. \"Full Width\". Custom templates can be applied to any post or page.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"edit-post-template__modal-actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\t\t\t\tsetTitle( '' );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\t\t\t\taria-disabled={ isBusy }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default PostTemplateActions;\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/edit-post",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.12",
|
|
4
4
|
"description": "Edit Post module for WordPress.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -29,20 +29,20 @@
|
|
|
29
29
|
"@babel/runtime": "^7.16.0",
|
|
30
30
|
"@wordpress/a11y": "^3.2.4",
|
|
31
31
|
"@wordpress/api-fetch": "^5.2.6",
|
|
32
|
-
"@wordpress/block-editor": "^8.0.
|
|
33
|
-
"@wordpress/block-library": "^6.0.
|
|
32
|
+
"@wordpress/block-editor": "^8.0.6",
|
|
33
|
+
"@wordpress/block-library": "^6.0.10",
|
|
34
34
|
"@wordpress/blocks": "^11.1.4",
|
|
35
|
-
"@wordpress/components": "^19.0
|
|
35
|
+
"@wordpress/components": "^19.1.0",
|
|
36
36
|
"@wordpress/compose": "^5.0.6",
|
|
37
|
-
"@wordpress/core-data": "^4.0.
|
|
37
|
+
"@wordpress/core-data": "^4.0.8",
|
|
38
38
|
"@wordpress/data": "^6.1.4",
|
|
39
39
|
"@wordpress/data-controls": "^2.2.7",
|
|
40
|
-
"@wordpress/editor": "^12.0.
|
|
40
|
+
"@wordpress/editor": "^12.0.9",
|
|
41
41
|
"@wordpress/element": "^4.0.4",
|
|
42
42
|
"@wordpress/hooks": "^3.2.2",
|
|
43
43
|
"@wordpress/i18n": "^4.2.4",
|
|
44
44
|
"@wordpress/icons": "^6.1.1",
|
|
45
|
-
"@wordpress/interface": "^4.1.
|
|
45
|
+
"@wordpress/interface": "^4.1.8",
|
|
46
46
|
"@wordpress/keyboard-shortcuts": "^3.0.6",
|
|
47
47
|
"@wordpress/keycodes": "^3.2.4",
|
|
48
48
|
"@wordpress/media-utils": "^3.0.5",
|
|
@@ -61,5 +61,5 @@
|
|
|
61
61
|
"publishConfig": {
|
|
62
62
|
"access": "public"
|
|
63
63
|
},
|
|
64
|
-
"gitHead": "
|
|
64
|
+
"gitHead": "6d3bd917064b4b194677233ee426f5988fa441b9"
|
|
65
65
|
}
|
|
@@ -6,7 +6,7 @@ import { kebabCase } from 'lodash';
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
8
8
|
*/
|
|
9
|
-
import { __ } from '@wordpress/i18n';
|
|
9
|
+
import { __, _x } from '@wordpress/i18n';
|
|
10
10
|
import {
|
|
11
11
|
Button,
|
|
12
12
|
Modal,
|
|
@@ -129,7 +129,10 @@ function PostTemplateActions() {
|
|
|
129
129
|
</Button>
|
|
130
130
|
) }
|
|
131
131
|
<Button variant="link" onClick={ () => setIsModalOpen( true ) }>
|
|
132
|
-
{
|
|
132
|
+
{
|
|
133
|
+
/* translators: button to create a new template */
|
|
134
|
+
_x( 'New', 'action' )
|
|
135
|
+
}
|
|
133
136
|
</Button>
|
|
134
137
|
</div>
|
|
135
138
|
{ isModalOpen && (
|