@wordpress/block-library 8.21.1-next.f8d8eceb.0 → 8.22.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 (37) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/block/edit.js +3 -3
  3. package/build/block/edit.js.map +1 -1
  4. package/build/form/edit.js +1 -1
  5. package/build/form/edit.js.map +1 -1
  6. package/build/form/index.js +25 -5
  7. package/build/form/index.js.map +1 -1
  8. package/build/form-input/index.js +1 -1
  9. package/build/form-input/index.js.map +1 -1
  10. package/build/form-submission-notification/index.js +1 -1
  11. package/build/form-submission-notification/index.js.map +1 -1
  12. package/build/form-submit-button/index.js +1 -1
  13. package/build/form-submit-button/index.js.map +1 -1
  14. package/build/post-terms/edit.js +2 -2
  15. package/build/post-terms/edit.js.map +1 -1
  16. package/build-module/block/edit.js +3 -3
  17. package/build-module/block/edit.js.map +1 -1
  18. package/build-module/form/edit.js +1 -1
  19. package/build-module/form/edit.js.map +1 -1
  20. package/build-module/form/index.js +29 -5
  21. package/build-module/form/index.js.map +1 -1
  22. package/build-module/form-input/index.js +1 -1
  23. package/build-module/form-input/index.js.map +1 -1
  24. package/build-module/form-submission-notification/index.js +1 -1
  25. package/build-module/form-submission-notification/index.js.map +1 -1
  26. package/build-module/form-submit-button/index.js +1 -1
  27. package/build-module/form-submit-button/index.js.map +1 -1
  28. package/build-module/post-terms/edit.js +2 -2
  29. package/build-module/post-terms/edit.js.map +1 -1
  30. package/package.json +32 -32
  31. package/src/block/edit.js +1 -1
  32. package/src/form/edit.js +2 -0
  33. package/src/form/index.js +38 -1
  34. package/src/form-input/block.json +1 -1
  35. package/src/form-submission-notification/block.json +1 -1
  36. package/src/form-submit-button/block.json +1 -1
  37. package/src/post-terms/edit.js +2 -2
package/CHANGELOG.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 8.22.0 (2023-11-02)
6
+
5
7
  ## 8.21.0 (2023-10-18)
6
8
 
7
9
  ### Bug Fix
@@ -25,6 +25,9 @@ var _lockUnlock = require("../lock-unlock");
25
25
  * Internal dependencies
26
26
  */
27
27
 
28
+ const {
29
+ useLayoutClasses
30
+ } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
28
31
  const fullAlignments = ['full', 'wide', 'left', 'right'];
29
32
  const useInferredLayout = (blocks, parentLayout) => {
30
33
  const initialInferredAlignmentRef = (0, _element.useRef)();
@@ -57,9 +60,6 @@ function ReusableBlockEdit({
57
60
  },
58
61
  __unstableParentLayout: parentLayout
59
62
  }) {
60
- const {
61
- useLayoutClasses
62
- } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
63
63
  const hasAlreadyRendered = (0, _blockEditor.__experimentalUseHasRecursion)(ref);
64
64
  const {
65
65
  record,
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_coreData","_components","_i18n","_blockEditor","_element","_lockUnlock","fullAlignments","useInferredLayout","blocks","parentLayout","initialInferredAlignmentRef","useRef","useMemo","length","alignment","current","undefined","isConstrained","type","hasFullAlignment","some","block","includes","attributes","align","layout","ReusableBlockEdit","name","ref","__unstableParentLayout","useLayoutClasses","unlock","blockEditorPrivateApis","hasAlreadyRendered","useHasRecursion","record","hasResolved","useEntityRecord","isMissing","onInput","onChange","useEntityBlockEditor","id","title","setTitle","useEntityProp","layoutClasses","blockProps","useBlockProps","className","classnames","innerBlocksProps","useInnerBlocksProps","value","renderAppender","InnerBlocks","ButtonBlockAppender","_react","createElement","Warning","__","Placeholder","Spinner","__experimentalRecursionProvider","uniqueId","InspectorControls","PanelBody","TextControl","__nextHasNoMarginBottom","label"],"sources":["@wordpress/block-library/src/block/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tuseEntityRecord,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tTextControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tInnerBlocks,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useRef, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst fullAlignments = [ 'full', 'wide', 'left', 'right' ];\n\nconst useInferredLayout = ( blocks, parentLayout ) => {\n\tconst initialInferredAlignmentRef = useRef();\n\n\treturn useMemo( () => {\n\t\t// Exit early if the pattern's blocks haven't loaded yet.\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet alignment = initialInferredAlignmentRef.current;\n\n\t\t// Only track the initial alignment so that temporarily removed\n\t\t// alignments can be reapplied.\n\t\tif ( alignment === undefined ) {\n\t\t\tconst isConstrained = parentLayout?.type === 'constrained';\n\t\t\tconst hasFullAlignment = blocks.some( ( block ) =>\n\t\t\t\tfullAlignments.includes( block.attributes.align )\n\t\t\t);\n\n\t\t\talignment = isConstrained && hasFullAlignment ? 'full' : null;\n\t\t\tinitialInferredAlignmentRef.current = alignment;\n\t\t}\n\n\t\tconst layout = alignment ? parentLayout : undefined;\n\n\t\treturn { alignment, layout };\n\t}, [ blocks, parentLayout ] );\n};\n\nexport default function ReusableBlockEdit( {\n\tname,\n\tattributes: { ref },\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst { useLayoutClasses } = unlock( blockEditorPrivateApis );\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_block',\n\t\t'title',\n\t\tref\n\t);\n\n\tconst { alignment, layout } = useInferredLayout( blocks, parentLayout );\n\tconst layoutClasses = useLayoutClasses( { layout }, name );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames(\n\t\t\t'block-library-block__reusable-block-container',\n\t\t\tlayout && layoutClasses,\n\t\t\t{ [ `align${ alignment }` ]: alignment }\n\t\t),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tvalue: blocks,\n\t\tlayout,\n\t\tonInput,\n\t\tonChange,\n\t\trenderAppender: blocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_coreData","_components","_i18n","_blockEditor","_element","_lockUnlock","useLayoutClasses","unlock","blockEditorPrivateApis","fullAlignments","useInferredLayout","blocks","parentLayout","initialInferredAlignmentRef","useRef","useMemo","length","alignment","current","undefined","isConstrained","type","hasFullAlignment","some","block","includes","attributes","align","layout","ReusableBlockEdit","name","ref","__unstableParentLayout","hasAlreadyRendered","useHasRecursion","record","hasResolved","useEntityRecord","isMissing","onInput","onChange","useEntityBlockEditor","id","title","setTitle","useEntityProp","layoutClasses","blockProps","useBlockProps","className","classnames","innerBlocksProps","useInnerBlocksProps","value","renderAppender","InnerBlocks","ButtonBlockAppender","_react","createElement","Warning","__","Placeholder","Spinner","__experimentalRecursionProvider","uniqueId","InspectorControls","PanelBody","TextControl","__nextHasNoMarginBottom","label"],"sources":["@wordpress/block-library/src/block/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tuseEntityRecord,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tTextControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tInnerBlocks,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useRef, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst { useLayoutClasses } = unlock( blockEditorPrivateApis );\nconst fullAlignments = [ 'full', 'wide', 'left', 'right' ];\n\nconst useInferredLayout = ( blocks, parentLayout ) => {\n\tconst initialInferredAlignmentRef = useRef();\n\n\treturn useMemo( () => {\n\t\t// Exit early if the pattern's blocks haven't loaded yet.\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet alignment = initialInferredAlignmentRef.current;\n\n\t\t// Only track the initial alignment so that temporarily removed\n\t\t// alignments can be reapplied.\n\t\tif ( alignment === undefined ) {\n\t\t\tconst isConstrained = parentLayout?.type === 'constrained';\n\t\t\tconst hasFullAlignment = blocks.some( ( block ) =>\n\t\t\t\tfullAlignments.includes( block.attributes.align )\n\t\t\t);\n\n\t\t\talignment = isConstrained && hasFullAlignment ? 'full' : null;\n\t\t\tinitialInferredAlignmentRef.current = alignment;\n\t\t}\n\n\t\tconst layout = alignment ? parentLayout : undefined;\n\n\t\treturn { alignment, layout };\n\t}, [ blocks, parentLayout ] );\n};\n\nexport default function ReusableBlockEdit( {\n\tname,\n\tattributes: { ref },\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_block',\n\t\t'title',\n\t\tref\n\t);\n\n\tconst { alignment, layout } = useInferredLayout( blocks, parentLayout );\n\tconst layoutClasses = useLayoutClasses( { layout }, name );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames(\n\t\t\t'block-library-block__reusable-block-container',\n\t\t\tlayout && layoutClasses,\n\t\t\t{ [ `align${ alignment }` ]: alignment }\n\t\t),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tvalue: blocks,\n\t\tlayout,\n\t\tonInput,\n\t\tonChange,\n\t\trenderAppender: blocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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"}
@@ -18,7 +18,7 @@ var _utils = require("./utils.js");
18
18
  * Internal dependencies
19
19
  */
20
20
 
21
- const ALLOWED_BLOCKS = ['core/paragraph', 'core/heading', 'core/form-input', 'core/form-submit-button', 'core/form-submission-notification'];
21
+ const ALLOWED_BLOCKS = ['core/paragraph', 'core/heading', 'core/form-input', 'core/form-submit-button', 'core/form-submission-notification', 'core/group', 'core/columns'];
22
22
  const TEMPLATE = [_utils.formSubmissionNotificationSuccess, _utils.formSubmissionNotificationError, ['core/form-input', {
23
23
  type: 'text',
24
24
  label: (0, _i18n.__)('Name'),
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_blockEditor","_components","_data","_utils","ALLOWED_BLOCKS","TEMPLATE","formSubmissionNotificationSuccess","formSubmissionNotificationError","type","label","__","required","Edit","attributes","setAttributes","clientId","action","method","email","submissionMethod","blockProps","useBlockProps","hasInnerBlocks","useSelect","select","getBlock","blockEditorStore","block","innerBlocks","length","innerBlocksProps","useInnerBlocksProps","allowedBlocks","template","renderAppender","undefined","InnerBlocks","ButtonBlockAppender","_react","createElement","Fragment","InspectorControls","PanelBody","title","SelectControl","options","value","onChange","help","TextControl","__nextHasNoMarginBottom","autoComplete","group","newVal","className","encType","_default","exports","default"],"sources":["@wordpress/block-library/src/form/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { TextControl, SelectControl, PanelBody } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst ALLOWED_BLOCKS = [\n\t'core/paragraph',\n\t'core/heading',\n\t'core/form-input',\n\t'core/form-submit-button',\n\t'core/form-submission-notification',\n];\n\nconst TEMPLATE = [\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'text',\n\t\t\tlabel: __( 'Name' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'email',\n\t\t\tlabel: __( 'Email' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'textarea',\n\t\t\tlabel: __( 'Comment' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[ 'core/form-submit-button', {} ],\n];\n\nconst Edit = ( { attributes, setAttributes, clientId } ) => {\n\tconst { action, method, email, submissionMethod } = attributes;\n\tconst blockProps = useBlockProps();\n\n\tconst { hasInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\ttemplate: TEMPLATE,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t// __nextHasNoMarginBottom\n\t\t\t\t\t\t// size={ '__unstable-large' }\n\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t// TODO: Allow plugins to add their own submission methods.\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Send email' ),\n\t\t\t\t\t\t\t\tvalue: 'email',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( '- Custom -' ),\n\t\t\t\t\t\t\t\tvalue: 'custom',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ submissionMethod }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { submissionMethod: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\tsubmissionMethod === 'custom'\n\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions. Additional options for the \"custom\" mode can be found in the \"Advanced\" section.'\n\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\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ submissionMethod === 'email' && (\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\tvalue={ email }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { email: value } );\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taction: `mailto:${ value }`,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetAttributes( { method: 'post' } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'The email address where form submissions will be sent. Separate multiple email addresses with a comma.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ submissionMethod !== 'email' && (\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: 'Get', value: 'get' },\n\t\t\t\t\t\t\t{ label: 'Post', value: 'post' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ method }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { method: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Form action' ) }\n\t\t\t\t\t\tvalue={ action }\n\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\taction: newVal,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The URL where the form should be submitted.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<form\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\tclassName=\"wp-block-form\"\n\t\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t\t/>\n\t\t</>\n\t);\n};\nexport default Edit;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_i18n","require","_blockEditor","_components","_data","_utils","ALLOWED_BLOCKS","TEMPLATE","formSubmissionNotificationSuccess","formSubmissionNotificationError","type","label","__","required","Edit","attributes","setAttributes","clientId","action","method","email","submissionMethod","blockProps","useBlockProps","hasInnerBlocks","useSelect","select","getBlock","blockEditorStore","block","innerBlocks","length","innerBlocksProps","useInnerBlocksProps","allowedBlocks","template","renderAppender","undefined","InnerBlocks","ButtonBlockAppender","_react","createElement","Fragment","InspectorControls","PanelBody","title","SelectControl","options","value","onChange","help","TextControl","__nextHasNoMarginBottom","autoComplete","group","newVal","className","encType","_default","exports","default"],"sources":["@wordpress/block-library/src/form/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { TextControl, SelectControl, PanelBody } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst ALLOWED_BLOCKS = [\n\t'core/paragraph',\n\t'core/heading',\n\t'core/form-input',\n\t'core/form-submit-button',\n\t'core/form-submission-notification',\n\t'core/group',\n\t'core/columns',\n];\n\nconst TEMPLATE = [\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'text',\n\t\t\tlabel: __( 'Name' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'email',\n\t\t\tlabel: __( 'Email' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'textarea',\n\t\t\tlabel: __( 'Comment' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[ 'core/form-submit-button', {} ],\n];\n\nconst Edit = ( { attributes, setAttributes, clientId } ) => {\n\tconst { action, method, email, submissionMethod } = attributes;\n\tconst blockProps = useBlockProps();\n\n\tconst { hasInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\ttemplate: TEMPLATE,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t// __nextHasNoMarginBottom\n\t\t\t\t\t\t// size={ '__unstable-large' }\n\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t// TODO: Allow plugins to add their own submission methods.\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Send email' ),\n\t\t\t\t\t\t\t\tvalue: 'email',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( '- Custom -' ),\n\t\t\t\t\t\t\t\tvalue: 'custom',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ submissionMethod }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { submissionMethod: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\tsubmissionMethod === 'custom'\n\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions. Additional options for the \"custom\" mode can be found in the \"Advanced\" section.'\n\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\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ submissionMethod === 'email' && (\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\tvalue={ email }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { email: value } );\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taction: `mailto:${ value }`,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetAttributes( { method: 'post' } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'The email address where form submissions will be sent. Separate multiple email addresses with a comma.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ submissionMethod !== 'email' && (\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: 'Get', value: 'get' },\n\t\t\t\t\t\t\t{ label: 'Post', value: 'post' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ method }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { method: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Form action' ) }\n\t\t\t\t\t\tvalue={ action }\n\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\taction: newVal,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The URL where the form should be submitted.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<form\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\tclassName=\"wp-block-form\"\n\t\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t\t/>\n\t\t</>\n\t);\n};\nexport default Edit;\n"],"mappings":"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"}
@@ -9,6 +9,7 @@ var _initBlock = _interopRequireDefault(require("../utils/init-block"));
9
9
  var _edit = _interopRequireDefault(require("./edit"));
10
10
  var _save = _interopRequireDefault(require("./save"));
11
11
  var _variations = _interopRequireDefault(require("./variations"));
12
+ var _hooks = require("@wordpress/hooks");
12
13
  /**
13
14
  * Internal dependencies
14
15
  */
@@ -83,10 +84,29 @@ const settings = {
83
84
  variations: _variations.default
84
85
  };
85
86
  exports.settings = settings;
86
- const init = () => (0, _initBlock.default)({
87
- name,
88
- metadata,
89
- settings
90
- });
87
+ const init = () => {
88
+ // Prevent adding forms inside forms.
89
+ const DISALLOWED_PARENTS = ['core/form'];
90
+ (0, _hooks.addFilter)('blockEditor.__unstableCanInsertBlockType', 'removeTemplatePartsFromPostTemplates', (canInsert, blockType, rootClientId, {
91
+ getBlock,
92
+ getBlockParentsByBlockName
93
+ }) => {
94
+ if (blockType.name !== 'core/form') {
95
+ return canInsert;
96
+ }
97
+ for (const disallowedParentType of DISALLOWED_PARENTS) {
98
+ const hasDisallowedParent = getBlock(rootClientId)?.name === disallowedParentType || getBlockParentsByBlockName(rootClientId, disallowedParentType).length;
99
+ if (hasDisallowedParent) {
100
+ return false;
101
+ }
102
+ }
103
+ return true;
104
+ });
105
+ return (0, _initBlock.default)({
106
+ name,
107
+ metadata,
108
+ settings
109
+ });
110
+ };
91
111
  exports.init = init;
92
112
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_initBlock","_interopRequireDefault","require","_edit","_save","_variations","metadata","$schema","apiVersion","__experimental","name","title","category","description","keywords","textdomain","icon","attributes","submissionMethod","type","method","action","email","supports","anchor","className","color","gradients","link","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalTextDecoration","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalSelector","viewScript","exports","settings","edit","save","variations","init","initBlock"],"sources":["@wordpress/block-library/src/form/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,KAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,WAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAPA;AACA;AACA;AAFA,MAAAI,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,gBAAA;MAAAC,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAD,IAAA;MAAA;IAAA;IAAAE,MAAA;MAAAF,IAAA;IAAA;IAAAG,KAAA;MAAAH,IAAA;IAAA;EAAA;EAAAI,QAAA;IAAAC,MAAA;IAAAC,SAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;QAAAH,IAAA;MAAA;IAAA;IAAAI,OAAA;MAAAC,MAAA;MAAAC,OAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,4BAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,2BAAA;MAAAd,6BAAA;QAAAO,QAAA;MAAA;IAAA;IAAAQ,sBAAA;EAAA;EAAAC,UAAA;AAAA;AAAAC,OAAA,CAAAxC,QAAA,GAAAA,QAAA;AASA,MAAM;EAAEI;AAAK,CAAC,GAAGJ,QAAQ;AAACwC,OAAA,CAAApC,IAAA,GAAAA,IAAA;AAInB,MAAMqC,QAAQ,GAAG;EACvBC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAACJ,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMI,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAE1C,IAAI;EAAEJ,QAAQ;EAAEyC;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAK,IAAA,GAAAA,IAAA"}
1
+ {"version":3,"names":["_initBlock","_interopRequireDefault","require","_edit","_save","_variations","_hooks","metadata","$schema","apiVersion","__experimental","name","title","category","description","keywords","textdomain","icon","attributes","submissionMethod","type","method","action","email","supports","anchor","className","color","gradients","link","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalTextDecoration","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalSelector","viewScript","exports","settings","edit","save","variations","init","DISALLOWED_PARENTS","addFilter","canInsert","blockType","rootClientId","getBlock","getBlockParentsByBlockName","disallowedParentType","hasDisallowedParent","length","initBlock"],"sources":["@wordpress/block-library/src/form/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\n/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => {\n\t// Prevent adding forms inside forms.\n\tconst DISALLOWED_PARENTS = [ 'core/form' ];\n\taddFilter(\n\t\t'blockEditor.__unstableCanInsertBlockType',\n\t\t'removeTemplatePartsFromPostTemplates',\n\t\t(\n\t\t\tcanInsert,\n\t\t\tblockType,\n\t\t\trootClientId,\n\t\t\t{ getBlock, getBlockParentsByBlockName }\n\t\t) => {\n\t\t\tif ( blockType.name !== 'core/form' ) {\n\t\t\t\treturn canInsert;\n\t\t\t}\n\n\t\t\tfor ( const disallowedParentType of DISALLOWED_PARENTS ) {\n\t\t\t\tconst hasDisallowedParent =\n\t\t\t\t\tgetBlock( rootClientId )?.name === disallowedParentType ||\n\t\t\t\t\tgetBlockParentsByBlockName(\n\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\tdisallowedParentType\n\t\t\t\t\t).length;\n\t\t\t\tif ( hasDisallowedParent ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t);\n\n\treturn initBlock( { name, metadata, settings } );\n};\n"],"mappings":";;;;;;;AAGA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,KAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,WAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAKA,IAAAI,MAAA,GAAAJ,OAAA;AAZA;AACA;AACA;AAFA,MAAAK,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,gBAAA;MAAAC,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAD,IAAA;MAAA;IAAA;IAAAE,MAAA;MAAAF,IAAA;IAAA;IAAAG,KAAA;MAAAH,IAAA;IAAA;EAAA;EAAAI,QAAA;IAAAC,MAAA;IAAAC,SAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;QAAAH,IAAA;MAAA;IAAA;IAAAI,OAAA;MAAAC,MAAA;MAAAC,OAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,4BAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,2BAAA;MAAAd,6BAAA;QAAAO,QAAA;MAAA;IAAA;IAAAQ,sBAAA;EAAA;EAAAC,UAAA;AAAA;AAAAC,OAAA,CAAAxC,QAAA,GAAAA,QAAA;AAcA,MAAM;EAAEI;AAAK,CAAC,GAAGJ,QAAQ;AAACwC,OAAA,CAAApC,IAAA,GAAAA,IAAA;AAInB,MAAMqC,QAAQ,GAAG;EACvBC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAACJ,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMI,IAAI,GAAGA,CAAA,KAAM;EACzB;EACA,MAAMC,kBAAkB,GAAG,CAAE,WAAW,CAAE;EAC1C,IAAAC,gBAAS,EACR,0CAA0C,EAC1C,sCAAsC,EACtC,CACCC,SAAS,EACTC,SAAS,EACTC,YAAY,EACZ;IAAEC,QAAQ;IAAEC;EAA2B,CAAC,KACpC;IACJ,IAAKH,SAAS,CAAC7C,IAAI,KAAK,WAAW,EAAG;MACrC,OAAO4C,SAAS;IACjB;IAEA,KAAM,MAAMK,oBAAoB,IAAIP,kBAAkB,EAAG;MACxD,MAAMQ,mBAAmB,GACxBH,QAAQ,CAAED,YAAa,CAAC,EAAE9C,IAAI,KAAKiD,oBAAoB,IACvDD,0BAA0B,CACzBF,YAAY,EACZG,oBACD,CAAC,CAACE,MAAM;MACT,IAAKD,mBAAmB,EAAG;QAC1B,OAAO,KAAK;MACb;IACD;IACA,OAAO,IAAI;EACZ,CACD,CAAC;EAED,OAAO,IAAAE,kBAAS,EAAE;IAAEpD,IAAI;IAAEJ,QAAQ;IAAEyC;EAAS,CAAE,CAAC;AACjD,CAAC;AAACD,OAAA,CAAAK,IAAA,GAAAA,IAAA"}
@@ -19,7 +19,7 @@ const metadata = {
19
19
  name: "core/form-input",
20
20
  title: "Input Field",
21
21
  category: "common",
22
- parent: ["core/form"],
22
+ ancestor: ["core/form"],
23
23
  description: "The basic building block for forms.",
24
24
  keywords: ["input", "form"],
25
25
  textdomain: "default",
@@ -1 +1 @@
1
- {"version":3,"names":["_initBlock","_interopRequireDefault","require","_edit","_save","_variations","metadata","$schema","apiVersion","__experimental","name","title","category","parent","description","keywords","textdomain","icon","attributes","type","label","selector","source","__experimentalRole","inlineLabel","required","attribute","placeholder","value","visibilityPermissions","supports","anchor","reusable","spacing","margin","__experimentalBorder","radius","__experimentalSkipSerialization","__experimentalDefaultControls","style","exports","settings","edit","save","variations","init","initBlock"],"sources":["@wordpress/block-library/src/form-input/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,KAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,WAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAPA;AACA;AACA;AAFA,MAAAI,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,MAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,IAAA;MAAAA,IAAA;MAAA;IAAA;IAAAT,IAAA;MAAAS,IAAA;IAAA;IAAAC,KAAA;MAAAD,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAC,kBAAA;IAAA;IAAAC,WAAA;MAAAL,IAAA;MAAA;IAAA;IAAAM,QAAA;MAAAN,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;IAAA;IAAAC,WAAA;MAAAR,IAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;MAAAH,kBAAA;IAAA;IAAAK,KAAA;MAAAT,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;IAAA;IAAAG,qBAAA;MAAAV,IAAA;MAAA;IAAA;EAAA;EAAAW,QAAA;IAAAC,MAAA;IAAAC,QAAA;IAAAC,OAAA;MAAAC,MAAA;IAAA;IAAAC,oBAAA;MAAAC,MAAA;MAAAC,+BAAA;MAAAC,6BAAA;QAAAF,MAAA;MAAA;IAAA;EAAA;EAAAG,KAAA;AAAA;AAAAC,OAAA,CAAAlC,QAAA,GAAAA,QAAA;AASA,MAAM;EAAEI;AAAK,CAAC,GAAGJ,QAAQ;AAACkC,OAAA,CAAA9B,IAAA,GAAAA,IAAA;AAInB,MAAM+B,QAAQ,GAAG;EACvBC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAACJ,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMI,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAEpC,IAAI;EAAEJ,QAAQ;EAAEmC;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAK,IAAA,GAAAA,IAAA"}
1
+ {"version":3,"names":["_initBlock","_interopRequireDefault","require","_edit","_save","_variations","metadata","$schema","apiVersion","__experimental","name","title","category","ancestor","description","keywords","textdomain","icon","attributes","type","label","selector","source","__experimentalRole","inlineLabel","required","attribute","placeholder","value","visibilityPermissions","supports","anchor","reusable","spacing","margin","__experimentalBorder","radius","__experimentalSkipSerialization","__experimentalDefaultControls","style","exports","settings","edit","save","variations","init","initBlock"],"sources":["@wordpress/block-library/src/form-input/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,KAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,WAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAPA;AACA;AACA;AAFA,MAAAI,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,IAAA;MAAAA,IAAA;MAAA;IAAA;IAAAT,IAAA;MAAAS,IAAA;IAAA;IAAAC,KAAA;MAAAD,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAC,kBAAA;IAAA;IAAAC,WAAA;MAAAL,IAAA;MAAA;IAAA;IAAAM,QAAA;MAAAN,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;IAAA;IAAAC,WAAA;MAAAR,IAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;MAAAH,kBAAA;IAAA;IAAAK,KAAA;MAAAT,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;IAAA;IAAAG,qBAAA;MAAAV,IAAA;MAAA;IAAA;EAAA;EAAAW,QAAA;IAAAC,MAAA;IAAAC,QAAA;IAAAC,OAAA;MAAAC,MAAA;IAAA;IAAAC,oBAAA;MAAAC,MAAA;MAAAC,+BAAA;MAAAC,6BAAA;QAAAF,MAAA;MAAA;IAAA;EAAA;EAAAG,KAAA;AAAA;AAAAC,OAAA,CAAAlC,QAAA,GAAAA,QAAA;AASA,MAAM;EAAEI;AAAK,CAAC,GAAGJ,QAAQ;AAACkC,OAAA,CAAA9B,IAAA,GAAAA,IAAA;AAInB,MAAM+B,QAAQ,GAAG;EACvBC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAACJ,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMI,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAEpC,IAAI;EAAEJ,QAAQ;EAAEmC;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAK,IAAA,GAAAA,IAAA"}
@@ -23,7 +23,7 @@ const metadata = {
23
23
  name: "core/form-submission-notification",
24
24
  title: "Form Submission Notification",
25
25
  category: "common",
26
- parent: ["core/form"],
26
+ ancestor: ["core/form"],
27
27
  description: "Provide a notification message after the form has been submitted.",
28
28
  keywords: ["form", "feedback", "notification", "message"],
29
29
  textdomain: "default",
@@ -1 +1 @@
1
- {"version":3,"names":["_icons","require","_initBlock","_interopRequireDefault","_edit","_save","_variations","metadata","$schema","apiVersion","__experimental","name","title","category","parent","description","keywords","textdomain","icon","attributes","type","exports","settings","edit","save","variations","init","initBlock"],"sources":["@wordpress/block-library/src/form-submission-notification/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { group as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAKA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAD,sBAAA,CAAAF,OAAA;AAEA,IAAAI,KAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AAZA;AACA;AACA;AAGA;AACA;AACA;AAFA,MAAAM,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,MAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,IAAA;MAAAA,IAAA;MAAA;IAAA;EAAA;AAAA;AAAAC,OAAA,CAAAd,QAAA,GAAAA,QAAA;AASA,MAAM;EAAEI;AAAK,CAAC,GAAGJ,QAAQ;AAACc,OAAA,CAAAV,IAAA,GAAAA,IAAA;AAInB,MAAMW,QAAQ,GAAG;EACvBJ,IAAI,EAAJA,YAAI;EACJK,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAACJ,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMI,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAEhB,IAAI;EAAEJ,QAAQ;EAAEe;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAK,IAAA,GAAAA,IAAA"}
1
+ {"version":3,"names":["_icons","require","_initBlock","_interopRequireDefault","_edit","_save","_variations","metadata","$schema","apiVersion","__experimental","name","title","category","ancestor","description","keywords","textdomain","icon","attributes","type","exports","settings","edit","save","variations","init","initBlock"],"sources":["@wordpress/block-library/src/form-submission-notification/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { group as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAKA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAD,sBAAA,CAAAF,OAAA;AAEA,IAAAI,KAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AAZA;AACA;AACA;AAGA;AACA;AACA;AAFA,MAAAM,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,IAAA;MAAAA,IAAA;MAAA;IAAA;EAAA;AAAA;AAAAC,OAAA,CAAAd,QAAA,GAAAA,QAAA;AASA,MAAM;EAAEI;AAAK,CAAC,GAAGJ,QAAQ;AAACc,OAAA,CAAAV,IAAA,GAAAA,IAAA;AAInB,MAAMW,QAAQ,GAAG;EACvBJ,IAAI,EAAJA,YAAI;EACJK,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAACJ,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMI,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAEhB,IAAI;EAAEJ,QAAQ;EAAEe;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAK,IAAA,GAAAA,IAAA"}
@@ -19,7 +19,7 @@ const metadata = {
19
19
  title: "Form Submit Button",
20
20
  category: "common",
21
21
  icon: "button",
22
- parent: ["core/form"],
22
+ ancestor: ["core/form"],
23
23
  description: "A submission button for forms.",
24
24
  keywords: ["submit", "button", "form"],
25
25
  textdomain: "default",
@@ -1 +1 @@
1
- {"version":3,"names":["_initBlock","_interopRequireDefault","require","_edit","_save","metadata","$schema","apiVersion","__experimental","name","title","category","icon","parent","description","keywords","textdomain","style","exports","settings","edit","save","init","initBlock"],"sources":["@wordpress/block-library/src/form-submit-button/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,KAAA,GAAAH,sBAAA,CAAAC,OAAA;AANA;AACA;AACA;AAFA,MAAAG,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,IAAA;EAAAC,MAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,KAAA;AAAA;AAAAC,OAAA,CAAAb,QAAA,GAAAA,QAAA;AAQA,MAAM;EAAEI;AAAK,CAAC,GAAGJ,QAAQ;AAACa,OAAA,CAAAT,IAAA,GAAAA,IAAA;AAInB,MAAMU,QAAQ,GAAG;EACvBC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA;AACD,CAAC;AAACH,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMG,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAEd,IAAI;EAAEJ,QAAQ;EAAEc;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAI,IAAA,GAAAA,IAAA"}
1
+ {"version":3,"names":["_initBlock","_interopRequireDefault","require","_edit","_save","metadata","$schema","apiVersion","__experimental","name","title","category","icon","ancestor","description","keywords","textdomain","style","exports","settings","edit","save","init","initBlock"],"sources":["@wordpress/block-library/src/form-submit-button/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,KAAA,GAAAH,sBAAA,CAAAC,OAAA;AANA;AACA;AACA;AAFA,MAAAG,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,IAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,KAAA;AAAA;AAAAC,OAAA,CAAAb,QAAA,GAAAA,QAAA;AAQA,MAAM;EAAEI;AAAK,CAAC,GAAGJ,QAAQ;AAACa,OAAA,CAAAT,IAAA,GAAAA,IAAA;AAInB,MAAMU,QAAQ,GAAG;EACvBC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA;AACD,CAAC;AAACH,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMG,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAEd,IAAI;EAAEJ,QAAQ;EAAEc;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAI,IAAA,GAAAA,IAAA"}
@@ -94,7 +94,7 @@ function PostTermsEdit({
94
94
  help: (0, _i18n.__)('Enter character(s) used to separate terms.')
95
95
  })), (0, _react.createElement)("div", {
96
96
  ...blockProps
97
- }, isLoading && hasPost && (0, _react.createElement)(_components.Spinner, null), !isLoading && hasPostTerms && (isSelected || prefix) && (0, _react.createElement)(_blockEditor.RichText, {
97
+ }, isLoading && hasPost && (0, _react.createElement)(_components.Spinner, null), !isLoading && (isSelected || prefix) && (0, _react.createElement)(_blockEditor.RichText, {
98
98
  allowedFormats: ALLOWED_FORMATS,
99
99
  className: "wp-block-post-terms__prefix",
100
100
  multiline: false,
@@ -111,7 +111,7 @@ function PostTermsEdit({
111
111
  onClick: event => event.preventDefault()
112
112
  }, (0, _htmlEntities.decodeEntities)(postTerm.name))).reduce((prev, curr) => (0, _react.createElement)(_react.Fragment, null, prev, (0, _react.createElement)("span", {
113
113
  className: "wp-block-post-terms__separator"
114
- }, separator || ' '), curr)), hasPost && !isLoading && !hasPostTerms && (selectedTerm?.labels?.no_terms || (0, _i18n.__)('Term items not found.')), !isLoading && hasPostTerms && (isSelected || suffix) && (0, _react.createElement)(_blockEditor.RichText, {
114
+ }, separator || ' '), curr)), hasPost && !isLoading && !hasPostTerms && (selectedTerm?.labels?.no_terms || (0, _i18n.__)('Term items not found.')), !isLoading && (isSelected || suffix) && (0, _react.createElement)(_blockEditor.RichText, {
115
115
  allowedFormats: ALLOWED_FORMATS,
116
116
  className: "wp-block-post-terms__suffix",
117
117
  multiline: false,
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_blocks","_components","_data","_htmlEntities","_i18n","_coreData","_usePostTerms","ALLOWED_FORMATS","PostTermsEdit","attributes","clientId","context","isSelected","setAttributes","insertBlocksAfter","term","textAlign","separator","prefix","suffix","postId","postType","selectedTerm","useSelect","select","getTaxonomy","coreStore","taxonomy","visibility","publicly_queryable","postTerms","hasPostTerms","isLoading","usePostTerms","hasPost","blockInformation","useBlockDisplayInformation","blockProps","useBlockProps","className","classnames","_react","createElement","Fragment","BlockControls","AlignmentToolbar","value","onChange","nextAlign","InspectorControls","group","TextControl","__nextHasNoMarginBottom","autoComplete","label","__","nextValue","help","Spinner","RichText","allowedFormats","multiline","placeholder","tagName","title","map","postTerm","key","id","href","link","onClick","event","preventDefault","decodeEntities","name","reduce","prev","curr","labels","no_terms","__unstableOnSplitAtEnd","createBlock","getDefaultBlockName"],"sources":["@wordpress/block-library/src/post-terms/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentToolbar,\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseBlockDisplayInformation,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { Spinner, TextControl } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport usePostTerms from './use-post-terms';\n\n// Allowed formats for the prefix and suffix fields.\nconst ALLOWED_FORMATS = [\n\t'core/bold',\n\t'core/image',\n\t'core/italic',\n\t'core/link',\n\t'core/strikethrough',\n\t'core/text-color',\n];\n\nexport default function PostTermsEdit( {\n\tattributes,\n\tclientId,\n\tcontext,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { term, textAlign, separator, prefix, suffix } = attributes;\n\tconst { postId, postType } = context;\n\n\tconst selectedTerm = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! term ) return {};\n\t\t\tconst { getTaxonomy } = select( coreStore );\n\t\t\tconst taxonomy = getTaxonomy( term );\n\t\t\treturn taxonomy?.visibility?.publicly_queryable ? taxonomy : {};\n\t\t},\n\t\t[ term ]\n\t);\n\tconst { postTerms, hasPostTerms, isLoading } = usePostTerms( {\n\t\tpostId,\n\t\tterm: selectedTerm,\n\t} );\n\tconst hasPost = postId && postType;\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t[ `taxonomy-${ term }` ]: term,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Separator' ) }\n\t\t\t\t\tvalue={ separator || '' }\n\t\t\t\t\tonChange={ ( nextValue ) => {\n\t\t\t\t\t\tsetAttributes( { separator: nextValue } );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __( 'Enter character(s) used to separate terms.' ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ isLoading && hasPost && <Spinner /> }\n\t\t\t\t{ ! isLoading && hasPostTerms && ( isSelected || prefix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__prefix\"\n\t\t\t\t\t\tmultiline={ false }\n\t\t\t\t\t\taria-label={ __( 'Prefix' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Prefix' ) + ' ' }\n\t\t\t\t\t\tvalue={ prefix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { prefix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ( ! hasPost || ! term ) && (\n\t\t\t\t\t<span>{ blockInformation.title }</span>\n\t\t\t\t) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\thasPostTerms &&\n\t\t\t\t\tpostTerms\n\t\t\t\t\t\t.map( ( postTerm ) => (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tkey={ postTerm.id }\n\t\t\t\t\t\t\t\thref={ postTerm.link }\n\t\t\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ decodeEntities( postTerm.name ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) )\n\t\t\t\t\t\t.reduce( ( prev, curr ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ prev }\n\t\t\t\t\t\t\t\t<span className=\"wp-block-post-terms__separator\">\n\t\t\t\t\t\t\t\t\t{ separator || ' ' }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t{ curr }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) ) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\t! hasPostTerms &&\n\t\t\t\t\t( selectedTerm?.labels?.no_terms ||\n\t\t\t\t\t\t__( 'Term items not found.' ) ) }\n\t\t\t\t{ ! isLoading && hasPostTerms && ( isSelected || suffix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__suffix\"\n\t\t\t\t\t\tmultiline={ false }\n\t\t\t\t\t\taria-label={ __( 'Suffix' ) }\n\t\t\t\t\t\tplaceholder={ ' ' + __( 'Suffix' ) }\n\t\t\t\t\t\tvalue={ suffix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { suffix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AAQA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AAKA,IAAAQ,aAAA,GAAAT,sBAAA,CAAAC,OAAA;AA1BA;AACA;AACA;;AAGA;AACA;AACA;;AAgBA;AACA;AACA;;AAGA;AACA,MAAMS,eAAe,GAAG,CACvB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,iBAAiB,CACjB;AAEc,SAASC,aAAaA,CAAE;EACtCC,UAAU;EACVC,QAAQ;EACRC,OAAO;EACPC,UAAU;EACVC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,IAAI;IAAEC,SAAS;IAAEC,SAAS;IAAEC,MAAM;IAAEC;EAAO,CAAC,GAAGV,UAAU;EACjE,MAAM;IAAEW,MAAM;IAAEC;EAAS,CAAC,GAAGV,OAAO;EAEpC,MAAMW,YAAY,GAAG,IAAAC,eAAS,EAC3BC,MAAM,IAAM;IACb,IAAK,CAAET,IAAI,EAAG,OAAO,CAAC,CAAC;IACvB,MAAM;MAAEU;IAAY,CAAC,GAAGD,MAAM,CAAEE,eAAU,CAAC;IAC3C,MAAMC,QAAQ,GAAGF,WAAW,CAAEV,IAAK,CAAC;IACpC,OAAOY,QAAQ,EAAEC,UAAU,EAAEC,kBAAkB,GAAGF,QAAQ,GAAG,CAAC,CAAC;EAChE,CAAC,EACD,CAAEZ,IAAI,CACP,CAAC;EACD,MAAM;IAAEe,SAAS;IAAEC,YAAY;IAAEC;EAAU,CAAC,GAAG,IAAAC,qBAAY,EAAE;IAC5Db,MAAM;IACNL,IAAI,EAAEO;EACP,CAAE,CAAC;EACH,MAAMY,OAAO,GAAGd,MAAM,IAAIC,QAAQ;EAClC,MAAMc,gBAAgB,GAAG,IAAAC,uCAA0B,EAAE1B,QAAS,CAAC;EAC/D,MAAM2B,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCC,SAAS,EAAE,IAAAC,mBAAU,EAAE;MACtB,CAAG,kBAAkBxB,SAAW,EAAC,GAAIA,SAAS;MAC9C,CAAG,YAAYD,IAAM,EAAC,GAAIA;IAC3B,CAAE;EACH,CAAE,CAAC;EAEH,OACC,IAAA0B,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QACC,IAAAF,MAAA,CAAAC,aAAA,EAAC3C,YAAA,CAAA6C,aAAa,QACb,IAAAH,MAAA,CAAAC,aAAA,EAAC3C,YAAA,CAAA8C,gBAAgB;IAChBC,KAAK,EAAG9B,SAAW;IACnB+B,QAAQ,EAAKC,SAAS,IAAM;MAC3BnC,aAAa,CAAE;QAAEG,SAAS,EAAEgC;MAAU,CAAE,CAAC;IAC1C;EAAG,CACH,CACa,CAAC,EAChB,IAAAP,MAAA,CAAAC,aAAA,EAAC3C,YAAA,CAAAkD,iBAAiB;IAACC,KAAK,EAAC;EAAU,GAClC,IAAAT,MAAA,CAAAC,aAAA,EAACzC,WAAA,CAAAkD,WAAW;IACXC,uBAAuB;IACvBC,YAAY,EAAC,KAAK;IAClBC,KAAK,EAAG,IAAAC,QAAE,EAAE,WAAY,CAAG;IAC3BT,KAAK,EAAG7B,SAAS,IAAI,EAAI;IACzB8B,QAAQ,EAAKS,SAAS,IAAM;MAC3B3C,aAAa,CAAE;QAAEI,SAAS,EAAEuC;MAAU,CAAE,CAAC;IAC1C,CAAG;IACHC,IAAI,EAAG,IAAAF,QAAE,EAAE,4CAA6C;EAAG,CAC3D,CACiB,CAAC,EACpB,IAAAd,MAAA,CAAAC,aAAA;IAAA,GAAUL;EAAU,GACjBL,SAAS,IAAIE,OAAO,IAAI,IAAAO,MAAA,CAAAC,aAAA,EAACzC,WAAA,CAAAyD,OAAO,MAAE,CAAC,EACnC,CAAE1B,SAAS,IAAID,YAAY,KAAMnB,UAAU,IAAIM,MAAM,CAAE,IACxD,IAAAuB,MAAA,CAAAC,aAAA,EAAC3C,YAAA,CAAA4D,QAAQ;IACRC,cAAc,EAAGrD,eAAiB;IAClCgC,SAAS,EAAC,6BAA6B;IACvCsB,SAAS,EAAG,KAAO;IACnB,cAAa,IAAAN,QAAE,EAAE,QAAS,CAAG;IAC7BO,WAAW,EAAG,IAAAP,QAAE,EAAE,QAAS,CAAC,GAAG,GAAK;IACpCT,KAAK,EAAG5B,MAAQ;IAChB6B,QAAQ,EAAKD,KAAK,IACjBjC,aAAa,CAAE;MAAEK,MAAM,EAAE4B;IAAM,CAAE,CACjC;IACDiB,OAAO,EAAC;EAAM,CACd,CACD,EACC,CAAE,CAAE7B,OAAO,IAAI,CAAEnB,IAAI,KACtB,IAAA0B,MAAA,CAAAC,aAAA,gBAAQP,gBAAgB,CAAC6B,KAAa,CACtC,EACC9B,OAAO,IACR,CAAEF,SAAS,IACXD,YAAY,IACZD,SAAS,CACPmC,GAAG,CAAIC,QAAQ,IACf,IAAAzB,MAAA,CAAAC,aAAA;IACCyB,GAAG,EAAGD,QAAQ,CAACE,EAAI;IACnBC,IAAI,EAAGH,QAAQ,CAACI,IAAM;IACtBC,OAAO,EAAKC,KAAK,IAAMA,KAAK,CAACC,cAAc,CAAC;EAAG,GAE7C,IAAAC,4BAAc,EAAER,QAAQ,CAACS,IAAK,CAC9B,CACF,CAAC,CACFC,MAAM,CAAE,CAAEC,IAAI,EAAEC,IAAI,KACpB,IAAArC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QACGkC,IAAI,EACN,IAAApC,MAAA,CAAAC,aAAA;IAAMH,SAAS,EAAC;EAAgC,GAC7CtB,SAAS,IAAI,GACV,CAAC,EACL6D,IACD,CACD,CAAC,EACH5C,OAAO,IACR,CAAEF,SAAS,IACX,CAAED,YAAY,KACZT,YAAY,EAAEyD,MAAM,EAAEC,QAAQ,IAC/B,IAAAzB,QAAE,EAAE,uBAAwB,CAAC,CAAE,EAC/B,CAAEvB,SAAS,IAAID,YAAY,KAAMnB,UAAU,IAAIO,MAAM,CAAE,IACxD,IAAAsB,MAAA,CAAAC,aAAA,EAAC3C,YAAA,CAAA4D,QAAQ;IACRC,cAAc,EAAGrD,eAAiB;IAClCgC,SAAS,EAAC,6BAA6B;IACvCsB,SAAS,EAAG,KAAO;IACnB,cAAa,IAAAN,QAAE,EAAE,QAAS,CAAG;IAC7BO,WAAW,EAAG,GAAG,GAAG,IAAAP,QAAE,EAAE,QAAS,CAAG;IACpCT,KAAK,EAAG3B,MAAQ;IAChB4B,QAAQ,EAAKD,KAAK,IACjBjC,aAAa,CAAE;MAAEM,MAAM,EAAE2B;IAAM,CAAE,CACjC;IACDiB,OAAO,EAAC,MAAM;IACdkB,sBAAsB,EAAGA,CAAA,KACxBnE,iBAAiB,CAChB,IAAAoE,mBAAW,EAAE,IAAAC,2BAAmB,EAAC,CAAE,CACpC;EACA,CACD,CAEE,CACJ,CAAC;AAEL"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_blocks","_components","_data","_htmlEntities","_i18n","_coreData","_usePostTerms","ALLOWED_FORMATS","PostTermsEdit","attributes","clientId","context","isSelected","setAttributes","insertBlocksAfter","term","textAlign","separator","prefix","suffix","postId","postType","selectedTerm","useSelect","select","getTaxonomy","coreStore","taxonomy","visibility","publicly_queryable","postTerms","hasPostTerms","isLoading","usePostTerms","hasPost","blockInformation","useBlockDisplayInformation","blockProps","useBlockProps","className","classnames","_react","createElement","Fragment","BlockControls","AlignmentToolbar","value","onChange","nextAlign","InspectorControls","group","TextControl","__nextHasNoMarginBottom","autoComplete","label","__","nextValue","help","Spinner","RichText","allowedFormats","multiline","placeholder","tagName","title","map","postTerm","key","id","href","link","onClick","event","preventDefault","decodeEntities","name","reduce","prev","curr","labels","no_terms","__unstableOnSplitAtEnd","createBlock","getDefaultBlockName"],"sources":["@wordpress/block-library/src/post-terms/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentToolbar,\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseBlockDisplayInformation,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { Spinner, TextControl } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport usePostTerms from './use-post-terms';\n\n// Allowed formats for the prefix and suffix fields.\nconst ALLOWED_FORMATS = [\n\t'core/bold',\n\t'core/image',\n\t'core/italic',\n\t'core/link',\n\t'core/strikethrough',\n\t'core/text-color',\n];\n\nexport default function PostTermsEdit( {\n\tattributes,\n\tclientId,\n\tcontext,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { term, textAlign, separator, prefix, suffix } = attributes;\n\tconst { postId, postType } = context;\n\n\tconst selectedTerm = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! term ) return {};\n\t\t\tconst { getTaxonomy } = select( coreStore );\n\t\t\tconst taxonomy = getTaxonomy( term );\n\t\t\treturn taxonomy?.visibility?.publicly_queryable ? taxonomy : {};\n\t\t},\n\t\t[ term ]\n\t);\n\tconst { postTerms, hasPostTerms, isLoading } = usePostTerms( {\n\t\tpostId,\n\t\tterm: selectedTerm,\n\t} );\n\tconst hasPost = postId && postType;\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t[ `taxonomy-${ term }` ]: term,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Separator' ) }\n\t\t\t\t\tvalue={ separator || '' }\n\t\t\t\t\tonChange={ ( nextValue ) => {\n\t\t\t\t\t\tsetAttributes( { separator: nextValue } );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __( 'Enter character(s) used to separate terms.' ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ isLoading && hasPost && <Spinner /> }\n\t\t\t\t{ ! isLoading && ( isSelected || prefix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__prefix\"\n\t\t\t\t\t\tmultiline={ false }\n\t\t\t\t\t\taria-label={ __( 'Prefix' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Prefix' ) + ' ' }\n\t\t\t\t\t\tvalue={ prefix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { prefix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ( ! hasPost || ! term ) && (\n\t\t\t\t\t<span>{ blockInformation.title }</span>\n\t\t\t\t) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\thasPostTerms &&\n\t\t\t\t\tpostTerms\n\t\t\t\t\t\t.map( ( postTerm ) => (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tkey={ postTerm.id }\n\t\t\t\t\t\t\t\thref={ postTerm.link }\n\t\t\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ decodeEntities( postTerm.name ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) )\n\t\t\t\t\t\t.reduce( ( prev, curr ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ prev }\n\t\t\t\t\t\t\t\t<span className=\"wp-block-post-terms__separator\">\n\t\t\t\t\t\t\t\t\t{ separator || ' ' }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t{ curr }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) ) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\t! hasPostTerms &&\n\t\t\t\t\t( selectedTerm?.labels?.no_terms ||\n\t\t\t\t\t\t__( 'Term items not found.' ) ) }\n\t\t\t\t{ ! isLoading && ( isSelected || suffix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__suffix\"\n\t\t\t\t\t\tmultiline={ false }\n\t\t\t\t\t\taria-label={ __( 'Suffix' ) }\n\t\t\t\t\t\tplaceholder={ ' ' + __( 'Suffix' ) }\n\t\t\t\t\t\tvalue={ suffix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { suffix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
@@ -17,6 +17,9 @@ import { useRef, useMemo } from '@wordpress/element';
17
17
  * Internal dependencies
18
18
  */
19
19
  import { unlock } from '../lock-unlock';
20
+ const {
21
+ useLayoutClasses
22
+ } = unlock(blockEditorPrivateApis);
20
23
  const fullAlignments = ['full', 'wide', 'left', 'right'];
21
24
  const useInferredLayout = (blocks, parentLayout) => {
22
25
  const initialInferredAlignmentRef = useRef();
@@ -49,9 +52,6 @@ export default function ReusableBlockEdit({
49
52
  },
50
53
  __unstableParentLayout: parentLayout
51
54
  }) {
52
- const {
53
- useLayoutClasses
54
- } = unlock(blockEditorPrivateApis);
55
55
  const hasAlreadyRendered = useHasRecursion(ref);
56
56
  const {
57
57
  record,
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","useEntityBlockEditor","useEntityProp","useEntityRecord","Placeholder","Spinner","TextControl","PanelBody","__","useInnerBlocksProps","__experimentalRecursionProvider","RecursionProvider","__experimentalUseHasRecursion","useHasRecursion","InnerBlocks","InspectorControls","useBlockProps","Warning","privateApis","blockEditorPrivateApis","useRef","useMemo","unlock","fullAlignments","useInferredLayout","blocks","parentLayout","initialInferredAlignmentRef","length","alignment","current","undefined","isConstrained","type","hasFullAlignment","some","block","includes","attributes","align","layout","ReusableBlockEdit","name","ref","__unstableParentLayout","useLayoutClasses","hasAlreadyRendered","record","hasResolved","isMissing","onInput","onChange","id","title","setTitle","layoutClasses","blockProps","className","innerBlocksProps","value","renderAppender","ButtonBlockAppender","createElement","uniqueId","__nextHasNoMarginBottom","label"],"sources":["@wordpress/block-library/src/block/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tuseEntityRecord,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tTextControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tInnerBlocks,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useRef, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst fullAlignments = [ 'full', 'wide', 'left', 'right' ];\n\nconst useInferredLayout = ( blocks, parentLayout ) => {\n\tconst initialInferredAlignmentRef = useRef();\n\n\treturn useMemo( () => {\n\t\t// Exit early if the pattern's blocks haven't loaded yet.\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet alignment = initialInferredAlignmentRef.current;\n\n\t\t// Only track the initial alignment so that temporarily removed\n\t\t// alignments can be reapplied.\n\t\tif ( alignment === undefined ) {\n\t\t\tconst isConstrained = parentLayout?.type === 'constrained';\n\t\t\tconst hasFullAlignment = blocks.some( ( block ) =>\n\t\t\t\tfullAlignments.includes( block.attributes.align )\n\t\t\t);\n\n\t\t\talignment = isConstrained && hasFullAlignment ? 'full' : null;\n\t\t\tinitialInferredAlignmentRef.current = alignment;\n\t\t}\n\n\t\tconst layout = alignment ? parentLayout : undefined;\n\n\t\treturn { alignment, layout };\n\t}, [ blocks, parentLayout ] );\n};\n\nexport default function ReusableBlockEdit( {\n\tname,\n\tattributes: { ref },\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst { useLayoutClasses } = unlock( blockEditorPrivateApis );\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_block',\n\t\t'title',\n\t\tref\n\t);\n\n\tconst { alignment, layout } = useInferredLayout( blocks, parentLayout );\n\tconst layoutClasses = useLayoutClasses( { layout }, name );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames(\n\t\t\t'block-library-block__reusable-block-container',\n\t\t\tlayout && layoutClasses,\n\t\t\t{ [ `align${ alignment }` ]: alignment }\n\t\t),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tvalue: blocks,\n\t\tlayout,\n\t\tonInput,\n\t\tonChange,\n\t\trenderAppender: blocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","useEntityBlockEditor","useEntityProp","useEntityRecord","Placeholder","Spinner","TextControl","PanelBody","__","useInnerBlocksProps","__experimentalRecursionProvider","RecursionProvider","__experimentalUseHasRecursion","useHasRecursion","InnerBlocks","InspectorControls","useBlockProps","Warning","privateApis","blockEditorPrivateApis","useRef","useMemo","unlock","useLayoutClasses","fullAlignments","useInferredLayout","blocks","parentLayout","initialInferredAlignmentRef","length","alignment","current","undefined","isConstrained","type","hasFullAlignment","some","block","includes","attributes","align","layout","ReusableBlockEdit","name","ref","__unstableParentLayout","hasAlreadyRendered","record","hasResolved","isMissing","onInput","onChange","id","title","setTitle","layoutClasses","blockProps","className","innerBlocksProps","value","renderAppender","ButtonBlockAppender","createElement","uniqueId","__nextHasNoMarginBottom","label"],"sources":["@wordpress/block-library/src/block/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tuseEntityRecord,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tTextControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tInnerBlocks,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useRef, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst { useLayoutClasses } = unlock( blockEditorPrivateApis );\nconst fullAlignments = [ 'full', 'wide', 'left', 'right' ];\n\nconst useInferredLayout = ( blocks, parentLayout ) => {\n\tconst initialInferredAlignmentRef = useRef();\n\n\treturn useMemo( () => {\n\t\t// Exit early if the pattern's blocks haven't loaded yet.\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet alignment = initialInferredAlignmentRef.current;\n\n\t\t// Only track the initial alignment so that temporarily removed\n\t\t// alignments can be reapplied.\n\t\tif ( alignment === undefined ) {\n\t\t\tconst isConstrained = parentLayout?.type === 'constrained';\n\t\t\tconst hasFullAlignment = blocks.some( ( block ) =>\n\t\t\t\tfullAlignments.includes( block.attributes.align )\n\t\t\t);\n\n\t\t\talignment = isConstrained && hasFullAlignment ? 'full' : null;\n\t\t\tinitialInferredAlignmentRef.current = alignment;\n\t\t}\n\n\t\tconst layout = alignment ? parentLayout : undefined;\n\n\t\treturn { alignment, layout };\n\t}, [ blocks, parentLayout ] );\n};\n\nexport default function ReusableBlockEdit( {\n\tname,\n\tattributes: { ref },\n\t__unstableParentLayout: parentLayout,\n} ) {\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_block',\n\t\t'title',\n\t\tref\n\t);\n\n\tconst { alignment, layout } = useInferredLayout( blocks, parentLayout );\n\tconst layoutClasses = useLayoutClasses( { layout }, name );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames(\n\t\t\t'block-library-block__reusable-block-container',\n\t\t\tlayout && layoutClasses,\n\t\t\t{ [ `align${ alignment }` ]: alignment }\n\t\t),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tvalue: blocks,\n\t\tlayout,\n\t\tonInput,\n\t\tonChange,\n\t\trenderAppender: blocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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"}
@@ -11,7 +11,7 @@ import { useSelect } from '@wordpress/data';
11
11
  * Internal dependencies
12
12
  */
13
13
  import { formSubmissionNotificationSuccess, formSubmissionNotificationError } from './utils.js';
14
- const ALLOWED_BLOCKS = ['core/paragraph', 'core/heading', 'core/form-input', 'core/form-submit-button', 'core/form-submission-notification'];
14
+ const ALLOWED_BLOCKS = ['core/paragraph', 'core/heading', 'core/form-input', 'core/form-submit-button', 'core/form-submission-notification', 'core/group', 'core/columns'];
15
15
  const TEMPLATE = [formSubmissionNotificationSuccess, formSubmissionNotificationError, ['core/form-input', {
16
16
  type: 'text',
17
17
  label: __('Name'),
@@ -1 +1 @@
1
- {"version":3,"names":["__","InnerBlocks","useBlockProps","useInnerBlocksProps","InspectorControls","store","blockEditorStore","TextControl","SelectControl","PanelBody","useSelect","formSubmissionNotificationSuccess","formSubmissionNotificationError","ALLOWED_BLOCKS","TEMPLATE","type","label","required","Edit","attributes","setAttributes","clientId","action","method","email","submissionMethod","blockProps","hasInnerBlocks","select","getBlock","block","innerBlocks","length","innerBlocksProps","allowedBlocks","template","renderAppender","undefined","ButtonBlockAppender","createElement","Fragment","title","options","value","onChange","help","__nextHasNoMarginBottom","autoComplete","group","newVal","className","encType"],"sources":["@wordpress/block-library/src/form/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { TextControl, SelectControl, PanelBody } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst ALLOWED_BLOCKS = [\n\t'core/paragraph',\n\t'core/heading',\n\t'core/form-input',\n\t'core/form-submit-button',\n\t'core/form-submission-notification',\n];\n\nconst TEMPLATE = [\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'text',\n\t\t\tlabel: __( 'Name' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'email',\n\t\t\tlabel: __( 'Email' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'textarea',\n\t\t\tlabel: __( 'Comment' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[ 'core/form-submit-button', {} ],\n];\n\nconst Edit = ( { attributes, setAttributes, clientId } ) => {\n\tconst { action, method, email, submissionMethod } = attributes;\n\tconst blockProps = useBlockProps();\n\n\tconst { hasInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\ttemplate: TEMPLATE,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t// __nextHasNoMarginBottom\n\t\t\t\t\t\t// size={ '__unstable-large' }\n\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t// TODO: Allow plugins to add their own submission methods.\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Send email' ),\n\t\t\t\t\t\t\t\tvalue: 'email',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( '- Custom -' ),\n\t\t\t\t\t\t\t\tvalue: 'custom',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ submissionMethod }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { submissionMethod: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\tsubmissionMethod === 'custom'\n\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions. Additional options for the \"custom\" mode can be found in the \"Advanced\" section.'\n\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\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ submissionMethod === 'email' && (\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\tvalue={ email }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { email: value } );\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taction: `mailto:${ value }`,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetAttributes( { method: 'post' } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'The email address where form submissions will be sent. Separate multiple email addresses with a comma.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ submissionMethod !== 'email' && (\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: 'Get', value: 'get' },\n\t\t\t\t\t\t\t{ label: 'Post', value: 'post' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ method }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { method: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Form action' ) }\n\t\t\t\t\t\tvalue={ action }\n\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\taction: newVal,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The URL where the form should be submitted.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<form\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\tclassName=\"wp-block-form\"\n\t\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t\t/>\n\t\t</>\n\t);\n};\nexport default Edit;\n"],"mappings":"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"}
1
+ {"version":3,"names":["__","InnerBlocks","useBlockProps","useInnerBlocksProps","InspectorControls","store","blockEditorStore","TextControl","SelectControl","PanelBody","useSelect","formSubmissionNotificationSuccess","formSubmissionNotificationError","ALLOWED_BLOCKS","TEMPLATE","type","label","required","Edit","attributes","setAttributes","clientId","action","method","email","submissionMethod","blockProps","hasInnerBlocks","select","getBlock","block","innerBlocks","length","innerBlocksProps","allowedBlocks","template","renderAppender","undefined","ButtonBlockAppender","createElement","Fragment","title","options","value","onChange","help","__nextHasNoMarginBottom","autoComplete","group","newVal","className","encType"],"sources":["@wordpress/block-library/src/form/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { TextControl, SelectControl, PanelBody } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst ALLOWED_BLOCKS = [\n\t'core/paragraph',\n\t'core/heading',\n\t'core/form-input',\n\t'core/form-submit-button',\n\t'core/form-submission-notification',\n\t'core/group',\n\t'core/columns',\n];\n\nconst TEMPLATE = [\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'text',\n\t\t\tlabel: __( 'Name' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'email',\n\t\t\tlabel: __( 'Email' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[\n\t\t'core/form-input',\n\t\t{\n\t\t\ttype: 'textarea',\n\t\t\tlabel: __( 'Comment' ),\n\t\t\trequired: true,\n\t\t},\n\t],\n\t[ 'core/form-submit-button', {} ],\n];\n\nconst Edit = ( { attributes, setAttributes, clientId } ) => {\n\tconst { action, method, email, submissionMethod } = attributes;\n\tconst blockProps = useBlockProps();\n\n\tconst { hasInnerBlocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\ttemplate: TEMPLATE,\n\t\trenderAppender: hasInnerBlocks\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t// __nextHasNoMarginBottom\n\t\t\t\t\t\t// size={ '__unstable-large' }\n\t\t\t\t\t\tlabel={ __( 'Submissions method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t// TODO: Allow plugins to add their own submission methods.\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Send email' ),\n\t\t\t\t\t\t\t\tvalue: 'email',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( '- Custom -' ),\n\t\t\t\t\t\t\t\tvalue: 'custom',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ submissionMethod }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { submissionMethod: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\tsubmissionMethod === 'custom'\n\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t'Select the method to use for form submissions. Additional options for the \"custom\" mode can be found in the \"Advanced\" section.'\n\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\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ submissionMethod === 'email' && (\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Email for form submissions' ) }\n\t\t\t\t\t\t\tvalue={ email }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { email: value } );\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taction: `mailto:${ value }`,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetAttributes( { method: 'post' } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'The email address where form submissions will be sent. Separate multiple email addresses with a comma.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ submissionMethod !== 'email' && (\n\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Method' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: 'Get', value: 'get' },\n\t\t\t\t\t\t\t{ label: 'Post', value: 'post' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ method }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { method: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Select the method to use for form submissions.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\tlabel={ __( 'Form action' ) }\n\t\t\t\t\t\tvalue={ action }\n\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\taction: newVal,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The URL where the form should be submitted.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<form\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\tclassName=\"wp-block-form\"\n\t\t\t\tencType={ submissionMethod === 'email' ? 'text/plain' : null }\n\t\t\t/>\n\t\t</>\n\t);\n};\nexport default Edit;\n"],"mappings":"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"}
@@ -65,6 +65,11 @@ const metadata = {
65
65
  };
66
66
  import save from './save';
67
67
  import variations from './variations';
68
+
69
+ /**
70
+ * WordPress dependencies
71
+ */
72
+ import { addFilter } from '@wordpress/hooks';
68
73
  const {
69
74
  name
70
75
  } = metadata;
@@ -74,9 +79,28 @@ export const settings = {
74
79
  save,
75
80
  variations
76
81
  };
77
- export const init = () => initBlock({
78
- name,
79
- metadata,
80
- settings
81
- });
82
+ export const init = () => {
83
+ // Prevent adding forms inside forms.
84
+ const DISALLOWED_PARENTS = ['core/form'];
85
+ addFilter('blockEditor.__unstableCanInsertBlockType', 'removeTemplatePartsFromPostTemplates', (canInsert, blockType, rootClientId, {
86
+ getBlock,
87
+ getBlockParentsByBlockName
88
+ }) => {
89
+ if (blockType.name !== 'core/form') {
90
+ return canInsert;
91
+ }
92
+ for (const disallowedParentType of DISALLOWED_PARENTS) {
93
+ const hasDisallowedParent = getBlock(rootClientId)?.name === disallowedParentType || getBlockParentsByBlockName(rootClientId, disallowedParentType).length;
94
+ if (hasDisallowedParent) {
95
+ return false;
96
+ }
97
+ }
98
+ return true;
99
+ });
100
+ return initBlock({
101
+ name,
102
+ metadata,
103
+ settings
104
+ });
105
+ };
82
106
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["initBlock","edit","metadata","$schema","apiVersion","__experimental","name","title","category","description","keywords","textdomain","icon","attributes","submissionMethod","type","method","action","email","supports","anchor","className","color","gradients","link","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalTextDecoration","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalSelector","viewScript","save","variations","settings","init"],"sources":["@wordpress/block-library/src/form/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,gBAAA;MAAAC,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAD,IAAA;MAAA;IAAA;IAAAE,MAAA;MAAAF,IAAA;IAAA;IAAAG,KAAA;MAAAH,IAAA;IAAA;EAAA;EAAAI,QAAA;IAAAC,MAAA;IAAAC,SAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;QAAAH,IAAA;MAAA;IAAA;IAAAI,OAAA;MAAAC,MAAA;MAAAC,OAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,4BAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,2BAAA;MAAAd,6BAAA;QAAAO,QAAA;MAAA;IAAA;IAAAQ,sBAAA;EAAA;EAAAC,UAAA;AAAA;AAE1B,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAErC;AAAK,CAAC,GAAGJ,QAAQ;AAEzB,SAASA,QAAQ,EAAEI,IAAI;AAEvB,OAAO,MAAMsC,QAAQ,GAAG;EACvB3C,IAAI;EACJyC,IAAI;EACJC;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAM7C,SAAS,CAAE;EAAEM,IAAI;EAAEJ,QAAQ;EAAE0C;AAAS,CAAE,CAAC"}
1
+ {"version":3,"names":["initBlock","edit","metadata","$schema","apiVersion","__experimental","name","title","category","description","keywords","textdomain","icon","attributes","submissionMethod","type","method","action","email","supports","anchor","className","color","gradients","link","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalTextDecoration","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalSelector","viewScript","save","variations","addFilter","settings","init","DISALLOWED_PARENTS","canInsert","blockType","rootClientId","getBlock","getBlockParentsByBlockName","disallowedParentType","hasDisallowedParent","length"],"sources":["@wordpress/block-library/src/form/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\n/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => {\n\t// Prevent adding forms inside forms.\n\tconst DISALLOWED_PARENTS = [ 'core/form' ];\n\taddFilter(\n\t\t'blockEditor.__unstableCanInsertBlockType',\n\t\t'removeTemplatePartsFromPostTemplates',\n\t\t(\n\t\t\tcanInsert,\n\t\t\tblockType,\n\t\t\trootClientId,\n\t\t\t{ getBlock, getBlockParentsByBlockName }\n\t\t) => {\n\t\t\tif ( blockType.name !== 'core/form' ) {\n\t\t\t\treturn canInsert;\n\t\t\t}\n\n\t\t\tfor ( const disallowedParentType of DISALLOWED_PARENTS ) {\n\t\t\t\tconst hasDisallowedParent =\n\t\t\t\t\tgetBlock( rootClientId )?.name === disallowedParentType ||\n\t\t\t\t\tgetBlockParentsByBlockName(\n\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\tdisallowedParentType\n\t\t\t\t\t).length;\n\t\t\t\tif ( hasDisallowedParent ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t);\n\n\treturn initBlock( { name, metadata, settings } );\n};\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,gBAAA;MAAAC,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAD,IAAA;MAAA;IAAA;IAAAE,MAAA;MAAAF,IAAA;IAAA;IAAAG,KAAA;MAAAH,IAAA;IAAA;EAAA;EAAAI,QAAA;IAAAC,MAAA;IAAAC,SAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;QAAAH,IAAA;MAAA;IAAA;IAAAI,OAAA;MAAAC,MAAA;MAAAC,OAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,4BAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,2BAAA;MAAAd,6BAAA;QAAAO,QAAA;MAAA;IAAA;IAAAQ,sBAAA;EAAA;EAAAC,UAAA;AAAA;AAE1B,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;;AAErC;AACA;AACA;AACA,SAASC,SAAS,QAAQ,kBAAkB;AAE5C,MAAM;EAAEtC;AAAK,CAAC,GAAGJ,QAAQ;AAEzB,SAASA,QAAQ,EAAEI,IAAI;AAEvB,OAAO,MAAMuC,QAAQ,GAAG;EACvB5C,IAAI;EACJyC,IAAI;EACJC;AACD,CAAC;AAED,OAAO,MAAMG,IAAI,GAAGA,CAAA,KAAM;EACzB;EACA,MAAMC,kBAAkB,GAAG,CAAE,WAAW,CAAE;EAC1CH,SAAS,CACR,0CAA0C,EAC1C,sCAAsC,EACtC,CACCI,SAAS,EACTC,SAAS,EACTC,YAAY,EACZ;IAAEC,QAAQ;IAAEC;EAA2B,CAAC,KACpC;IACJ,IAAKH,SAAS,CAAC3C,IAAI,KAAK,WAAW,EAAG;MACrC,OAAO0C,SAAS;IACjB;IAEA,KAAM,MAAMK,oBAAoB,IAAIN,kBAAkB,EAAG;MACxD,MAAMO,mBAAmB,GACxBH,QAAQ,CAAED,YAAa,CAAC,EAAE5C,IAAI,KAAK+C,oBAAoB,IACvDD,0BAA0B,CACzBF,YAAY,EACZG,oBACD,CAAC,CAACE,MAAM;MACT,IAAKD,mBAAmB,EAAG;QAC1B,OAAO,KAAK;MACb;IACD;IACA,OAAO,IAAI;EACZ,CACD,CAAC;EAED,OAAOtD,SAAS,CAAE;IAAEM,IAAI;IAAEJ,QAAQ;IAAE2C;EAAS,CAAE,CAAC;AACjD,CAAC"}
@@ -10,7 +10,7 @@ const metadata = {
10
10
  name: "core/form-input",
11
11
  title: "Input Field",
12
12
  category: "common",
13
- parent: ["core/form"],
13
+ ancestor: ["core/form"],
14
14
  description: "The basic building block for forms.",
15
15
  keywords: ["input", "form"],
16
16
  textdomain: "default",
@@ -1 +1 @@
1
- {"version":3,"names":["initBlock","edit","metadata","$schema","apiVersion","__experimental","name","title","category","parent","description","keywords","textdomain","icon","attributes","type","label","selector","source","__experimentalRole","inlineLabel","required","attribute","placeholder","value","visibilityPermissions","supports","anchor","reusable","spacing","margin","__experimentalBorder","radius","__experimentalSkipSerialization","__experimentalDefaultControls","style","save","variations","settings","init"],"sources":["@wordpress/block-library/src/form-input/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,MAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,IAAA;MAAAA,IAAA;MAAA;IAAA;IAAAT,IAAA;MAAAS,IAAA;IAAA;IAAAC,KAAA;MAAAD,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAC,kBAAA;IAAA;IAAAC,WAAA;MAAAL,IAAA;MAAA;IAAA;IAAAM,QAAA;MAAAN,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;IAAA;IAAAC,WAAA;MAAAR,IAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;MAAAH,kBAAA;IAAA;IAAAK,KAAA;MAAAT,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;IAAA;IAAAG,qBAAA;MAAAV,IAAA;MAAA;IAAA;EAAA;EAAAW,QAAA;IAAAC,MAAA;IAAAC,QAAA;IAAAC,OAAA;MAAAC,MAAA;IAAA;IAAAC,oBAAA;MAAAC,MAAA;MAAAC,+BAAA;MAAAC,6BAAA;QAAAF,MAAA;MAAA;IAAA;EAAA;EAAAG,KAAA;AAAA;AAE1B,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAE/B;AAAK,CAAC,GAAGJ,QAAQ;AAEzB,SAASA,QAAQ,EAAEI,IAAI;AAEvB,OAAO,MAAMgC,QAAQ,GAAG;EACvBrC,IAAI;EACJmC,IAAI;EACJC;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAMvC,SAAS,CAAE;EAAEM,IAAI;EAAEJ,QAAQ;EAAEoC;AAAS,CAAE,CAAC"}
1
+ {"version":3,"names":["initBlock","edit","metadata","$schema","apiVersion","__experimental","name","title","category","ancestor","description","keywords","textdomain","icon","attributes","type","label","selector","source","__experimentalRole","inlineLabel","required","attribute","placeholder","value","visibilityPermissions","supports","anchor","reusable","spacing","margin","__experimentalBorder","radius","__experimentalSkipSerialization","__experimentalDefaultControls","style","save","variations","settings","init"],"sources":["@wordpress/block-library/src/form-input/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,UAAA;IAAAC,IAAA;MAAAA,IAAA;MAAA;IAAA;IAAAT,IAAA;MAAAS,IAAA;IAAA;IAAAC,KAAA;MAAAD,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAC,kBAAA;IAAA;IAAAC,WAAA;MAAAL,IAAA;MAAA;IAAA;IAAAM,QAAA;MAAAN,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;IAAA;IAAAC,WAAA;MAAAR,IAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;MAAAH,kBAAA;IAAA;IAAAK,KAAA;MAAAT,IAAA;MAAA;MAAAE,QAAA;MAAAC,MAAA;MAAAI,SAAA;IAAA;IAAAG,qBAAA;MAAAV,IAAA;MAAA;IAAA;EAAA;EAAAW,QAAA;IAAAC,MAAA;IAAAC,QAAA;IAAAC,OAAA;MAAAC,MAAA;IAAA;IAAAC,oBAAA;MAAAC,MAAA;MAAAC,+BAAA;MAAAC,6BAAA;QAAAF,MAAA;MAAA;IAAA;EAAA;EAAAG,KAAA;AAAA;AAE1B,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAE/B;AAAK,CAAC,GAAGJ,QAAQ;AAEzB,SAASA,QAAQ,EAAEI,IAAI;AAEvB,OAAO,MAAMgC,QAAQ,GAAG;EACvBrC,IAAI;EACJmC,IAAI;EACJC;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAMvC,SAAS,CAAE;EAAEM,IAAI;EAAEJ,QAAQ;EAAEoC;AAAS,CAAE,CAAC"}
@@ -15,7 +15,7 @@ const metadata = {
15
15
  name: "core/form-submission-notification",
16
16
  title: "Form Submission Notification",
17
17
  category: "common",
18
- parent: ["core/form"],
18
+ ancestor: ["core/form"],
19
19
  description: "Provide a notification message after the form has been submitted.",
20
20
  keywords: ["form", "feedback", "notification", "message"],
21
21
  textdomain: "default",
@@ -1 +1 @@
1
- {"version":3,"names":["group","icon","initBlock","edit","metadata","$schema","apiVersion","__experimental","name","title","category","parent","description","keywords","textdomain","attributes","type","save","variations","settings","init"],"sources":["@wordpress/block-library/src/form-submission-notification/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { group as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,IAAI,QAAQ,kBAAkB;;AAEhD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,MAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAb,IAAA;EAAAc,UAAA;IAAAC,IAAA;MAAAA,IAAA;MAAA;IAAA;EAAA;AAAA;AAE1B,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAEV;AAAK,CAAC,GAAGJ,QAAQ;AAEzB,SAASA,QAAQ,EAAEI,IAAI;AAEvB,OAAO,MAAMW,QAAQ,GAAG;EACvBlB,IAAI;EACJE,IAAI;EACJc,IAAI;EACJC;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAMlB,SAAS,CAAE;EAAEM,IAAI;EAAEJ,QAAQ;EAAEe;AAAS,CAAE,CAAC"}
1
+ {"version":3,"names":["group","icon","initBlock","edit","metadata","$schema","apiVersion","__experimental","name","title","category","ancestor","description","keywords","textdomain","attributes","type","save","variations","settings","init"],"sources":["@wordpress/block-library/src/form-submission-notification/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { group as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,IAAI,QAAQ,kBAAkB;;AAEhD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAb,IAAA;EAAAc,UAAA;IAAAC,IAAA;MAAAA,IAAA;MAAA;IAAA;EAAA;AAAA;AAE1B,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAEV;AAAK,CAAC,GAAGJ,QAAQ;AAEzB,SAASA,QAAQ,EAAEI,IAAI;AAEvB,OAAO,MAAMW,QAAQ,GAAG;EACvBlB,IAAI;EACJE,IAAI;EACJc,IAAI;EACJC;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAMlB,SAAS,CAAE;EAAEM,IAAI;EAAEJ,QAAQ;EAAEe;AAAS,CAAE,CAAC"}
@@ -11,7 +11,7 @@ const metadata = {
11
11
  title: "Form Submit Button",
12
12
  category: "common",
13
13
  icon: "button",
14
- parent: ["core/form"],
14
+ ancestor: ["core/form"],
15
15
  description: "A submission button for forms.",
16
16
  keywords: ["submit", "button", "form"],
17
17
  textdomain: "default",
@@ -1 +1 @@
1
- {"version":3,"names":["initBlock","edit","metadata","$schema","apiVersion","__experimental","name","title","category","icon","parent","description","keywords","textdomain","style","save","settings","init"],"sources":["@wordpress/block-library/src/form-submit-button/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,IAAA;EAAAC,MAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,KAAA;AAAA;AAE1B,OAAOC,IAAI,MAAM,QAAQ;AAEzB,MAAM;EAAET;AAAK,CAAC,GAAGJ,QAAQ;AAEzB,SAASA,QAAQ,EAAEI,IAAI;AAEvB,OAAO,MAAMU,QAAQ,GAAG;EACvBf,IAAI;EACJc;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAMjB,SAAS,CAAE;EAAEM,IAAI;EAAEJ,QAAQ;EAAEc;AAAS,CAAE,CAAC"}
1
+ {"version":3,"names":["initBlock","edit","metadata","$schema","apiVersion","__experimental","name","title","category","icon","ancestor","description","keywords","textdomain","style","save","settings","init"],"sources":["@wordpress/block-library/src/form-submit-button/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,cAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,IAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,KAAA;AAAA;AAE1B,OAAOC,IAAI,MAAM,QAAQ;AAEzB,MAAM;EAAET;AAAK,CAAC,GAAGJ,QAAQ;AAEzB,SAASA,QAAQ,EAAEI,IAAI;AAEvB,OAAO,MAAMU,QAAQ,GAAG;EACvBf,IAAI;EACJc;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAMjB,SAAS,CAAE;EAAEM,IAAI;EAAEJ,QAAQ;EAAEc;AAAS,CAAE,CAAC"}
@@ -87,7 +87,7 @@ export default function PostTermsEdit({
87
87
  help: __('Enter character(s) used to separate terms.')
88
88
  })), createElement("div", {
89
89
  ...blockProps
90
- }, isLoading && hasPost && createElement(Spinner, null), !isLoading && hasPostTerms && (isSelected || prefix) && createElement(RichText, {
90
+ }, isLoading && hasPost && createElement(Spinner, null), !isLoading && (isSelected || prefix) && createElement(RichText, {
91
91
  allowedFormats: ALLOWED_FORMATS,
92
92
  className: "wp-block-post-terms__prefix",
93
93
  multiline: false,
@@ -104,7 +104,7 @@ export default function PostTermsEdit({
104
104
  onClick: event => event.preventDefault()
105
105
  }, decodeEntities(postTerm.name))).reduce((prev, curr) => createElement(Fragment, null, prev, createElement("span", {
106
106
  className: "wp-block-post-terms__separator"
107
- }, separator || ' '), curr)), hasPost && !isLoading && !hasPostTerms && (selectedTerm?.labels?.no_terms || __('Term items not found.')), !isLoading && hasPostTerms && (isSelected || suffix) && createElement(RichText, {
107
+ }, separator || ' '), curr)), hasPost && !isLoading && !hasPostTerms && (selectedTerm?.labels?.no_terms || __('Term items not found.')), !isLoading && (isSelected || suffix) && createElement(RichText, {
108
108
  allowedFormats: ALLOWED_FORMATS,
109
109
  className: "wp-block-post-terms__suffix",
110
110
  multiline: false,
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","AlignmentToolbar","InspectorControls","BlockControls","useBlockProps","useBlockDisplayInformation","RichText","createBlock","getDefaultBlockName","Spinner","TextControl","useSelect","decodeEntities","__","store","coreStore","usePostTerms","ALLOWED_FORMATS","PostTermsEdit","attributes","clientId","context","isSelected","setAttributes","insertBlocksAfter","term","textAlign","separator","prefix","suffix","postId","postType","selectedTerm","select","getTaxonomy","taxonomy","visibility","publicly_queryable","postTerms","hasPostTerms","isLoading","hasPost","blockInformation","blockProps","className","createElement","Fragment","value","onChange","nextAlign","group","__nextHasNoMarginBottom","autoComplete","label","nextValue","help","allowedFormats","multiline","placeholder","tagName","title","map","postTerm","key","id","href","link","onClick","event","preventDefault","name","reduce","prev","curr","labels","no_terms","__unstableOnSplitAtEnd"],"sources":["@wordpress/block-library/src/post-terms/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentToolbar,\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseBlockDisplayInformation,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { Spinner, TextControl } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport usePostTerms from './use-post-terms';\n\n// Allowed formats for the prefix and suffix fields.\nconst ALLOWED_FORMATS = [\n\t'core/bold',\n\t'core/image',\n\t'core/italic',\n\t'core/link',\n\t'core/strikethrough',\n\t'core/text-color',\n];\n\nexport default function PostTermsEdit( {\n\tattributes,\n\tclientId,\n\tcontext,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { term, textAlign, separator, prefix, suffix } = attributes;\n\tconst { postId, postType } = context;\n\n\tconst selectedTerm = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! term ) return {};\n\t\t\tconst { getTaxonomy } = select( coreStore );\n\t\t\tconst taxonomy = getTaxonomy( term );\n\t\t\treturn taxonomy?.visibility?.publicly_queryable ? taxonomy : {};\n\t\t},\n\t\t[ term ]\n\t);\n\tconst { postTerms, hasPostTerms, isLoading } = usePostTerms( {\n\t\tpostId,\n\t\tterm: selectedTerm,\n\t} );\n\tconst hasPost = postId && postType;\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t[ `taxonomy-${ term }` ]: term,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Separator' ) }\n\t\t\t\t\tvalue={ separator || '' }\n\t\t\t\t\tonChange={ ( nextValue ) => {\n\t\t\t\t\t\tsetAttributes( { separator: nextValue } );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __( 'Enter character(s) used to separate terms.' ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ isLoading && hasPost && <Spinner /> }\n\t\t\t\t{ ! isLoading && hasPostTerms && ( isSelected || prefix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__prefix\"\n\t\t\t\t\t\tmultiline={ false }\n\t\t\t\t\t\taria-label={ __( 'Prefix' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Prefix' ) + ' ' }\n\t\t\t\t\t\tvalue={ prefix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { prefix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ( ! hasPost || ! term ) && (\n\t\t\t\t\t<span>{ blockInformation.title }</span>\n\t\t\t\t) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\thasPostTerms &&\n\t\t\t\t\tpostTerms\n\t\t\t\t\t\t.map( ( postTerm ) => (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tkey={ postTerm.id }\n\t\t\t\t\t\t\t\thref={ postTerm.link }\n\t\t\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ decodeEntities( postTerm.name ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) )\n\t\t\t\t\t\t.reduce( ( prev, curr ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ prev }\n\t\t\t\t\t\t\t\t<span className=\"wp-block-post-terms__separator\">\n\t\t\t\t\t\t\t\t\t{ separator || ' ' }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t{ curr }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) ) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\t! hasPostTerms &&\n\t\t\t\t\t( selectedTerm?.labels?.no_terms ||\n\t\t\t\t\t\t__( 'Term items not found.' ) ) }\n\t\t\t\t{ ! isLoading && hasPostTerms && ( isSelected || suffix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__suffix\"\n\t\t\t\t\t\tmultiline={ false }\n\t\t\t\t\t\taria-label={ __( 'Suffix' ) }\n\t\t\t\t\t\tplaceholder={ ' ' + __( 'Suffix' ) }\n\t\t\t\t\t\tvalue={ suffix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { suffix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","AlignmentToolbar","InspectorControls","BlockControls","useBlockProps","useBlockDisplayInformation","RichText","createBlock","getDefaultBlockName","Spinner","TextControl","useSelect","decodeEntities","__","store","coreStore","usePostTerms","ALLOWED_FORMATS","PostTermsEdit","attributes","clientId","context","isSelected","setAttributes","insertBlocksAfter","term","textAlign","separator","prefix","suffix","postId","postType","selectedTerm","select","getTaxonomy","taxonomy","visibility","publicly_queryable","postTerms","hasPostTerms","isLoading","hasPost","blockInformation","blockProps","className","createElement","Fragment","value","onChange","nextAlign","group","__nextHasNoMarginBottom","autoComplete","label","nextValue","help","allowedFormats","multiline","placeholder","tagName","title","map","postTerm","key","id","href","link","onClick","event","preventDefault","name","reduce","prev","curr","labels","no_terms","__unstableOnSplitAtEnd"],"sources":["@wordpress/block-library/src/post-terms/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentToolbar,\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseBlockDisplayInformation,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { Spinner, TextControl } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport usePostTerms from './use-post-terms';\n\n// Allowed formats for the prefix and suffix fields.\nconst ALLOWED_FORMATS = [\n\t'core/bold',\n\t'core/image',\n\t'core/italic',\n\t'core/link',\n\t'core/strikethrough',\n\t'core/text-color',\n];\n\nexport default function PostTermsEdit( {\n\tattributes,\n\tclientId,\n\tcontext,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { term, textAlign, separator, prefix, suffix } = attributes;\n\tconst { postId, postType } = context;\n\n\tconst selectedTerm = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! term ) return {};\n\t\t\tconst { getTaxonomy } = select( coreStore );\n\t\t\tconst taxonomy = getTaxonomy( term );\n\t\t\treturn taxonomy?.visibility?.publicly_queryable ? taxonomy : {};\n\t\t},\n\t\t[ term ]\n\t);\n\tconst { postTerms, hasPostTerms, isLoading } = usePostTerms( {\n\t\tpostId,\n\t\tterm: selectedTerm,\n\t} );\n\tconst hasPost = postId && postType;\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t[ `taxonomy-${ term }` ]: term,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Separator' ) }\n\t\t\t\t\tvalue={ separator || '' }\n\t\t\t\t\tonChange={ ( nextValue ) => {\n\t\t\t\t\t\tsetAttributes( { separator: nextValue } );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __( 'Enter character(s) used to separate terms.' ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ isLoading && hasPost && <Spinner /> }\n\t\t\t\t{ ! isLoading && ( isSelected || prefix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__prefix\"\n\t\t\t\t\t\tmultiline={ false }\n\t\t\t\t\t\taria-label={ __( 'Prefix' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Prefix' ) + ' ' }\n\t\t\t\t\t\tvalue={ prefix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { prefix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ( ! hasPost || ! term ) && (\n\t\t\t\t\t<span>{ blockInformation.title }</span>\n\t\t\t\t) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\thasPostTerms &&\n\t\t\t\t\tpostTerms\n\t\t\t\t\t\t.map( ( postTerm ) => (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tkey={ postTerm.id }\n\t\t\t\t\t\t\t\thref={ postTerm.link }\n\t\t\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ decodeEntities( postTerm.name ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) )\n\t\t\t\t\t\t.reduce( ( prev, curr ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ prev }\n\t\t\t\t\t\t\t\t<span className=\"wp-block-post-terms__separator\">\n\t\t\t\t\t\t\t\t\t{ separator || ' ' }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t{ curr }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) ) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\t! hasPostTerms &&\n\t\t\t\t\t( selectedTerm?.labels?.no_terms ||\n\t\t\t\t\t\t__( 'Term items not found.' ) ) }\n\t\t\t\t{ ! isLoading && ( isSelected || suffix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__suffix\"\n\t\t\t\t\t\tmultiline={ false }\n\t\t\t\t\t\taria-label={ __( 'Suffix' ) }\n\t\t\t\t\t\tplaceholder={ ' ' + __( 'Suffix' ) }\n\t\t\t\t\t\tvalue={ suffix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { suffix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-library",
3
- "version": "8.21.1-next.f8d8eceb.0",
3
+ "version": "8.22.0",
4
4
  "description": "Block library for the WordPress editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -31,36 +31,36 @@
31
31
  ],
32
32
  "dependencies": {
33
33
  "@babel/runtime": "^7.16.0",
34
- "@wordpress/a11y": "^3.44.1-next.f8d8eceb.0",
35
- "@wordpress/api-fetch": "^6.41.1-next.f8d8eceb.0",
36
- "@wordpress/autop": "^3.44.1-next.f8d8eceb.0",
37
- "@wordpress/blob": "^3.44.1-next.f8d8eceb.0",
38
- "@wordpress/block-editor": "^12.12.2-next.f8d8eceb.0",
39
- "@wordpress/blocks": "^12.21.1-next.f8d8eceb.0",
40
- "@wordpress/components": "^25.11.1-next.f8d8eceb.0",
41
- "@wordpress/compose": "^6.21.1-next.f8d8eceb.0",
42
- "@wordpress/core-data": "^6.21.1-next.f8d8eceb.0",
43
- "@wordpress/data": "^9.14.1-next.f8d8eceb.0",
44
- "@wordpress/date": "^4.44.1-next.f8d8eceb.0",
45
- "@wordpress/deprecated": "^3.44.1-next.f8d8eceb.0",
46
- "@wordpress/dom": "^3.44.1-next.f8d8eceb.0",
47
- "@wordpress/element": "^5.21.1-next.f8d8eceb.0",
48
- "@wordpress/escape-html": "^2.44.1-next.f8d8eceb.0",
49
- "@wordpress/hooks": "^3.44.1-next.f8d8eceb.0",
50
- "@wordpress/html-entities": "^3.44.1-next.f8d8eceb.0",
51
- "@wordpress/i18n": "^4.44.1-next.f8d8eceb.0",
52
- "@wordpress/icons": "^9.35.1-next.f8d8eceb.0",
53
- "@wordpress/interactivity": "^2.5.2-next.f8d8eceb.0",
54
- "@wordpress/keycodes": "^3.44.1-next.f8d8eceb.0",
55
- "@wordpress/notices": "^4.12.1-next.f8d8eceb.0",
56
- "@wordpress/primitives": "^3.42.1-next.f8d8eceb.0",
57
- "@wordpress/private-apis": "^0.26.1-next.f8d8eceb.0",
58
- "@wordpress/reusable-blocks": "^4.21.1-next.f8d8eceb.0",
59
- "@wordpress/rich-text": "^6.21.1-next.f8d8eceb.0",
60
- "@wordpress/server-side-render": "^4.21.1-next.f8d8eceb.0",
61
- "@wordpress/url": "^3.45.1-next.f8d8eceb.0",
62
- "@wordpress/viewport": "^5.21.1-next.f8d8eceb.0",
63
- "@wordpress/wordcount": "^3.44.1-next.f8d8eceb.0",
34
+ "@wordpress/a11y": "^3.45.0",
35
+ "@wordpress/api-fetch": "^6.42.0",
36
+ "@wordpress/autop": "^3.45.0",
37
+ "@wordpress/blob": "^3.45.0",
38
+ "@wordpress/block-editor": "^12.13.0",
39
+ "@wordpress/blocks": "^12.22.0",
40
+ "@wordpress/components": "^25.11.0",
41
+ "@wordpress/compose": "^6.22.0",
42
+ "@wordpress/core-data": "^6.22.0",
43
+ "@wordpress/data": "^9.15.0",
44
+ "@wordpress/date": "^4.45.0",
45
+ "@wordpress/deprecated": "^3.45.0",
46
+ "@wordpress/dom": "^3.45.0",
47
+ "@wordpress/element": "^5.22.0",
48
+ "@wordpress/escape-html": "^2.45.0",
49
+ "@wordpress/hooks": "^3.45.0",
50
+ "@wordpress/html-entities": "^3.45.0",
51
+ "@wordpress/i18n": "^4.45.0",
52
+ "@wordpress/icons": "^9.36.0",
53
+ "@wordpress/interactivity": "^2.6.0",
54
+ "@wordpress/keycodes": "^3.45.0",
55
+ "@wordpress/notices": "^4.13.0",
56
+ "@wordpress/primitives": "^3.43.0",
57
+ "@wordpress/private-apis": "^0.27.0",
58
+ "@wordpress/reusable-blocks": "^4.22.0",
59
+ "@wordpress/rich-text": "^6.22.0",
60
+ "@wordpress/server-side-render": "^4.22.0",
61
+ "@wordpress/url": "^3.46.0",
62
+ "@wordpress/viewport": "^5.22.0",
63
+ "@wordpress/wordcount": "^3.45.0",
64
64
  "change-case": "^4.1.2",
65
65
  "classnames": "^2.3.1",
66
66
  "colord": "^2.7.0",
@@ -78,5 +78,5 @@
78
78
  "publishConfig": {
79
79
  "access": "public"
80
80
  },
81
- "gitHead": "8d8fd197e202b8104ffb1cb83048efd0a6c3faf4"
81
+ "gitHead": "2a00e87b57b9c27ed2b9b0fd8d423ef3cada72c1"
82
82
  }
package/src/block/edit.js CHANGED
@@ -35,6 +35,7 @@ import { useRef, useMemo } from '@wordpress/element';
35
35
  */
36
36
  import { unlock } from '../lock-unlock';
37
37
 
38
+ const { useLayoutClasses } = unlock( blockEditorPrivateApis );
38
39
  const fullAlignments = [ 'full', 'wide', 'left', 'right' ];
39
40
 
40
41
  const useInferredLayout = ( blocks, parentLayout ) => {
@@ -71,7 +72,6 @@ export default function ReusableBlockEdit( {
71
72
  attributes: { ref },
72
73
  __unstableParentLayout: parentLayout,
73
74
  } ) {
74
- const { useLayoutClasses } = unlock( blockEditorPrivateApis );
75
75
  const hasAlreadyRendered = useHasRecursion( ref );
76
76
  const { record, hasResolved } = useEntityRecord(
77
77
  'postType',
package/src/form/edit.js CHANGED
@@ -26,6 +26,8 @@ const ALLOWED_BLOCKS = [
26
26
  'core/form-input',
27
27
  'core/form-submit-button',
28
28
  'core/form-submission-notification',
29
+ 'core/group',
30
+ 'core/columns',
29
31
  ];
30
32
 
31
33
  const TEMPLATE = [
package/src/form/index.js CHANGED
@@ -7,6 +7,11 @@ import metadata from './block.json';
7
7
  import save from './save';
8
8
  import variations from './variations';
9
9
 
10
+ /**
11
+ * WordPress dependencies
12
+ */
13
+ import { addFilter } from '@wordpress/hooks';
14
+
10
15
  const { name } = metadata;
11
16
 
12
17
  export { metadata, name };
@@ -17,4 +22,36 @@ export const settings = {
17
22
  variations,
18
23
  };
19
24
 
20
- export const init = () => initBlock( { name, metadata, settings } );
25
+ export const init = () => {
26
+ // Prevent adding forms inside forms.
27
+ const DISALLOWED_PARENTS = [ 'core/form' ];
28
+ addFilter(
29
+ 'blockEditor.__unstableCanInsertBlockType',
30
+ 'removeTemplatePartsFromPostTemplates',
31
+ (
32
+ canInsert,
33
+ blockType,
34
+ rootClientId,
35
+ { getBlock, getBlockParentsByBlockName }
36
+ ) => {
37
+ if ( blockType.name !== 'core/form' ) {
38
+ return canInsert;
39
+ }
40
+
41
+ for ( const disallowedParentType of DISALLOWED_PARENTS ) {
42
+ const hasDisallowedParent =
43
+ getBlock( rootClientId )?.name === disallowedParentType ||
44
+ getBlockParentsByBlockName(
45
+ rootClientId,
46
+ disallowedParentType
47
+ ).length;
48
+ if ( hasDisallowedParent ) {
49
+ return false;
50
+ }
51
+ }
52
+ return true;
53
+ }
54
+ );
55
+
56
+ return initBlock( { name, metadata, settings } );
57
+ };
@@ -5,7 +5,7 @@
5
5
  "name": "core/form-input",
6
6
  "title": "Input Field",
7
7
  "category": "common",
8
- "parent": [ "core/form" ],
8
+ "ancestor": [ "core/form" ],
9
9
  "description": "The basic building block for forms.",
10
10
  "keywords": [ "input", "form" ],
11
11
  "textdomain": "default",
@@ -5,7 +5,7 @@
5
5
  "name": "core/form-submission-notification",
6
6
  "title": "Form Submission Notification",
7
7
  "category": "common",
8
- "parent": [ "core/form" ],
8
+ "ancestor": [ "core/form" ],
9
9
  "description": "Provide a notification message after the form has been submitted.",
10
10
  "keywords": [ "form", "feedback", "notification", "message" ],
11
11
  "textdomain": "default",
@@ -6,7 +6,7 @@
6
6
  "title": "Form Submit Button",
7
7
  "category": "common",
8
8
  "icon": "button",
9
- "parent": [ "core/form" ],
9
+ "ancestor": [ "core/form" ],
10
10
  "description": "A submission button for forms.",
11
11
  "keywords": [ "submit", "button", "form" ],
12
12
  "textdomain": "default",
@@ -93,7 +93,7 @@ export default function PostTermsEdit( {
93
93
  </InspectorControls>
94
94
  <div { ...blockProps }>
95
95
  { isLoading && hasPost && <Spinner /> }
96
- { ! isLoading && hasPostTerms && ( isSelected || prefix ) && (
96
+ { ! isLoading && ( isSelected || prefix ) && (
97
97
  <RichText
98
98
  allowedFormats={ ALLOWED_FORMATS }
99
99
  className="wp-block-post-terms__prefix"
@@ -137,7 +137,7 @@ export default function PostTermsEdit( {
137
137
  ! hasPostTerms &&
138
138
  ( selectedTerm?.labels?.no_terms ||
139
139
  __( 'Term items not found.' ) ) }
140
- { ! isLoading && hasPostTerms && ( isSelected || suffix ) && (
140
+ { ! isLoading && ( isSelected || suffix ) && (
141
141
  <RichText
142
142
  allowedFormats={ ALLOWED_FORMATS }
143
143
  className="wp-block-post-terms__suffix"