@wordpress/block-editor 13.0.3 → 13.2.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.
- package/CHANGELOG.md +21 -17
- package/README.md +1 -1
- package/build/components/block-lock/modal.js +67 -67
- package/build/components/block-lock/modal.js.map +1 -1
- package/build/components/block-mover/index.js +12 -6
- package/build/components/block-mover/index.js.map +1 -1
- package/build/components/child-layout-control/index.js +185 -127
- package/build/components/child-layout-control/index.js.map +1 -1
- package/build/components/date-format-picker/index.js +18 -10
- package/build/components/date-format-picker/index.js.map +1 -1
- package/build/components/grid/grid-item-movers.js +97 -0
- package/build/components/grid/grid-item-movers.js.map +1 -0
- package/build/components/{grid-visualizer → grid}/grid-item-resizer.js +18 -56
- package/build/components/grid/grid-item-resizer.js.map +1 -0
- package/build/components/grid/grid-visualizer.js +225 -0
- package/build/components/grid/grid-visualizer.js.map +1 -0
- package/build/components/{grid-visualizer → grid}/index.js +14 -0
- package/build/components/grid/index.js.map +1 -0
- package/build/components/grid/use-get-number-of-blocks-before-cell.js +40 -0
- package/build/components/grid/use-get-number-of-blocks-before-cell.js.map +1 -0
- package/build/components/grid/use-grid-layout-sync.js +162 -0
- package/build/components/grid/use-grid-layout-sync.js.map +1 -0
- package/build/components/grid/utils.js +145 -0
- package/build/components/grid/utils.js.map +1 -0
- package/build/components/inner-blocks/index.js +1 -1
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inserter/block-types-tab.native.js +1 -1
- package/build/components/inserter/block-types-tab.native.js.map +1 -1
- package/build/components/link-control/link-preview.js +12 -1
- package/build/components/link-control/link-preview.js.map +1 -1
- package/build/components/provider/use-block-sync.js +1 -7
- package/build/components/provider/use-block-sync.js.map +1 -1
- package/build/components/rich-text/event-listeners/input-rules.js +1 -0
- package/build/components/rich-text/event-listeners/input-rules.js.map +1 -1
- package/build/components/rich-text/index.native.js +14 -4
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/native/index.native.js +20 -4
- package/build/components/rich-text/native/index.native.js.map +1 -1
- package/build/hooks/block-style-variation.js +2 -2
- package/build/hooks/block-style-variation.js.map +1 -1
- package/build/hooks/layout-child.js +29 -21
- package/build/hooks/layout-child.js.map +1 -1
- package/build/layouts/grid.js +24 -47
- package/build/layouts/grid.js.map +1 -1
- package/build/store/private-actions.js +0 -34
- package/build/store/private-actions.js.map +1 -1
- package/build-module/components/block-lock/modal.js +67 -67
- package/build-module/components/block-lock/modal.js.map +1 -1
- package/build-module/components/block-mover/index.js +12 -6
- package/build-module/components/block-mover/index.js.map +1 -1
- package/build-module/components/child-layout-control/index.js +185 -127
- package/build-module/components/child-layout-control/index.js.map +1 -1
- package/build-module/components/date-format-picker/index.js +19 -11
- package/build-module/components/date-format-picker/index.js.map +1 -1
- package/build-module/components/grid/grid-item-movers.js +90 -0
- package/build-module/components/grid/grid-item-movers.js.map +1 -0
- package/build-module/components/{grid-visualizer → grid}/grid-item-resizer.js +13 -51
- package/build-module/components/grid/grid-item-resizer.js.map +1 -0
- package/build-module/components/grid/grid-visualizer.js +217 -0
- package/build-module/components/grid/grid-visualizer.js.map +1 -0
- package/build-module/components/grid/index.js +5 -0
- package/build-module/components/grid/index.js.map +1 -0
- package/build-module/components/grid/use-get-number-of-blocks-before-cell.js +33 -0
- package/build-module/components/grid/use-get-number-of-blocks-before-cell.js.map +1 -0
- package/build-module/components/grid/use-grid-layout-sync.js +155 -0
- package/build-module/components/grid/use-grid-layout-sync.js.map +1 -0
- package/build-module/components/grid/utils.js +131 -0
- package/build-module/components/grid/utils.js.map +1 -0
- package/build-module/components/inner-blocks/index.js +1 -1
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inserter/block-types-tab.native.js +1 -1
- package/build-module/components/inserter/block-types-tab.native.js.map +1 -1
- package/build-module/components/link-control/link-preview.js +14 -1
- package/build-module/components/link-control/link-preview.js.map +1 -1
- package/build-module/components/provider/use-block-sync.js +1 -7
- package/build-module/components/provider/use-block-sync.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/input-rules.js +1 -1
- package/build-module/components/rich-text/event-listeners/input-rules.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +15 -5
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/native/index.native.js +20 -4
- package/build-module/components/rich-text/native/index.native.js.map +1 -1
- package/build-module/hooks/block-style-variation.js +2 -2
- package/build-module/hooks/block-style-variation.js.map +1 -1
- package/build-module/hooks/layout-child.js +27 -19
- package/build-module/hooks/layout-child.js.map +1 -1
- package/build-module/layouts/grid.js +24 -47
- package/build-module/layouts/grid.js.map +1 -1
- package/build-module/store/private-actions.js +0 -33
- package/build-module/store/private-actions.js.map +1 -1
- package/build-style/style-rtl.css +38 -16
- package/build-style/style.css +38 -16
- package/package.json +31 -31
- package/src/components/block-lock/modal.js +95 -82
- package/src/components/block-lock/style.scss +11 -1
- package/src/components/block-mover/index.js +37 -24
- package/src/components/child-layout-control/index.js +224 -159
- package/src/components/date-format-picker/index.js +25 -13
- package/src/components/grid/grid-item-movers.js +128 -0
- package/src/components/{grid-visualizer → grid}/grid-item-resizer.js +14 -52
- package/src/components/grid/grid-visualizer.js +267 -0
- package/src/components/grid/index.js +4 -0
- package/src/components/grid/style.scss +63 -0
- package/src/components/grid/use-get-number-of-blocks-before-cell.js +30 -0
- package/src/components/grid/use-grid-layout-sync.js +167 -0
- package/src/components/grid/utils.js +178 -0
- package/src/components/inner-blocks/index.js +3 -1
- package/src/components/inserter/block-types-tab.native.js +2 -1
- package/src/components/link-control/link-preview.js +18 -1
- package/src/components/provider/use-block-sync.js +0 -6
- package/src/components/rich-text/event-listeners/input-rules.js +1 -1
- package/src/components/rich-text/index.native.js +14 -8
- package/src/components/rich-text/native/index.native.js +20 -1
- package/src/hooks/block-style-variation.js +2 -2
- package/src/hooks/layout-child.js +34 -14
- package/src/layouts/grid.js +54 -62
- package/src/store/private-actions.js +0 -29
- package/src/style.scss +1 -1
- package/build/components/grid-visualizer/grid-item-resizer.js.map +0 -1
- package/build/components/grid-visualizer/grid-visualizer.js +0 -92
- package/build/components/grid-visualizer/grid-visualizer.js.map +0 -1
- package/build/components/grid-visualizer/index.js.map +0 -1
- package/build/components/grid-visualizer/utils.js +0 -10
- package/build/components/grid-visualizer/utils.js.map +0 -1
- package/build/store/undo-ignore.js +0 -11
- package/build/store/undo-ignore.js.map +0 -1
- package/build-module/components/grid-visualizer/grid-item-resizer.js.map +0 -1
- package/build-module/components/grid-visualizer/grid-visualizer.js +0 -84
- package/build-module/components/grid-visualizer/grid-visualizer.js.map +0 -1
- package/build-module/components/grid-visualizer/index.js +0 -3
- package/build-module/components/grid-visualizer/index.js.map +0 -1
- package/build-module/components/grid-visualizer/utils.js +0 -4
- package/build-module/components/grid-visualizer/utils.js.map +0 -1
- package/build-module/store/undo-ignore.js +0 -5
- package/build-module/store/undo-ignore.js.map +0 -1
- package/src/components/grid-visualizer/grid-visualizer.js +0 -101
- package/src/components/grid-visualizer/index.js +0 -2
- package/src/components/grid-visualizer/style.scss +0 -34
- package/src/components/grid-visualizer/utils.js +0 -5
- package/src/store/undo-ignore.js +0 -4
- /package/src/components/font-sizes/{README.MD → README.md} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","sprintf","useEffect","useState","Button","CheckboxControl","Flex","FlexItem","Icon","Modal","ToggleControl","lock","lockIcon","unlock","unlockIcon","useInstanceId","useDispatch","useSelect","getBlockType","useBlockLock","useBlockDisplayInformation","store","blockEditorStore","jsx","_jsx","jsxs","_jsxs","ALLOWS_EDIT_LOCKING","getTemplateLockValue","remove","move","BlockLockModal","clientId","onClose","setLock","canEdit","canMove","canRemove","allowsEditLocking","templateLock","hasTemplateLock","select","getBlockName","getBlockAttributes","blockName","blockType","includes","attributes","applyTemplateLock","setApplyTemplateLock","updateBlockAttributes","blockInformation","instanceId","edit","isAllChecked","Object","values","every","Boolean","isMixed","some","title","overlayClassName","onRequestClose","children","onSubmit","event","preventDefault","undefined","role","className","__nextHasNoMarginBottom","label","id","checked","indeterminate","onChange","newValue","prevLock","icon","disabled","justify","expanded","variant","onClick","type"],"sources":["@wordpress/block-editor/src/components/block-lock/modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEffect, useState } from '@wordpress/element';\nimport {\n\tButton,\n\tCheckboxControl,\n\tFlex,\n\tFlexItem,\n\tIcon,\n\tModal,\n\tToggleControl,\n} from '@wordpress/components';\nimport { lock as lockIcon, unlock as unlockIcon } from '@wordpress/icons';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { getBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport useBlockLock from './use-block-lock';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { store as blockEditorStore } from '../../store';\n\n// Entity based blocks which allow edit locking\nconst ALLOWS_EDIT_LOCKING = [ 'core/block', 'core/navigation' ];\n\nfunction getTemplateLockValue( lock ) {\n\t// Prevents all operations.\n\tif ( lock.remove && lock.move ) {\n\t\treturn 'all';\n\t}\n\n\t// Prevents inserting or removing blocks, but allows moving existing blocks.\n\tif ( lock.remove && ! lock.move ) {\n\t\treturn 'insert';\n\t}\n\n\treturn false;\n}\n\nexport default function BlockLockModal( { clientId, onClose } ) {\n\tconst [ lock, setLock ] = useState( { move: false, remove: false } );\n\tconst { canEdit, canMove, canRemove } = useBlockLock( clientId );\n\tconst { allowsEditLocking, templateLock, hasTemplateLock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockName, getBlockAttributes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst blockName = getBlockName( clientId );\n\t\t\tconst blockType = getBlockType( blockName );\n\n\t\t\treturn {\n\t\t\t\tallowsEditLocking: ALLOWS_EDIT_LOCKING.includes( blockName ),\n\t\t\t\ttemplateLock: getBlockAttributes( clientId )?.templateLock,\n\t\t\t\thasTemplateLock: !! blockType?.attributes?.templateLock,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst [ applyTemplateLock, setApplyTemplateLock ] = useState(\n\t\t!! templateLock\n\t);\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst instanceId = useInstanceId(\n\t\tBlockLockModal,\n\t\t'block-editor-block-lock-modal__options-title'\n\t);\n\n\tuseEffect( () => {\n\t\tsetLock( {\n\t\t\tmove: ! canMove,\n\t\t\tremove: ! canRemove,\n\t\t\t...( allowsEditLocking ? { edit: ! canEdit } : {} ),\n\t\t} );\n\t}, [ canEdit, canMove, canRemove, allowsEditLocking ] );\n\n\tconst isAllChecked = Object.values( lock ).every( Boolean );\n\tconst isMixed = Object.values( lock ).some( Boolean ) && ! isAllChecked;\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ sprintf(\n\t\t\t\t/* translators: %s: Name of the block. */\n\t\t\t\t__( 'Lock %s' ),\n\t\t\t\tblockInformation.title\n\t\t\t) }\n\t\t\toverlayClassName=\"block-editor-block-lock-modal\"\n\t\t\tonRequestClose={ onClose }\n\t\t>\n\t\t\t<p>\n\t\t\t\t{ __(\n\t\t\t\t\t'Choose specific attributes to restrict or lock all available options.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<form\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tupdateBlockAttributes( [ clientId ], {\n\t\t\t\t\t\tlock,\n\t\t\t\t\t\ttemplateLock: applyTemplateLock\n\t\t\t\t\t\t\t? getTemplateLockValue( lock )\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t} );\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\trole=\"group\"\n\t\t\t\t\taria-labelledby={ instanceId }\n\t\t\t\t\tclassName=\"block-editor-block-lock-modal__options\"\n\t\t\t\t>\n\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__options-title\"\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<span id={ instanceId }>{ __( 'Lock all' ) }</span>\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchecked={ isAllChecked }\n\t\t\t\t\t\tindeterminate={ isMixed }\n\t\t\t\t\t\tonChange={ ( newValue ) =>\n\t\t\t\t\t\t\tsetLock( {\n\t\t\t\t\t\t\t\tmove: newValue,\n\t\t\t\t\t\t\t\tremove: newValue,\n\t\t\t\t\t\t\t\t...( allowsEditLocking\n\t\t\t\t\t\t\t\t\t? { edit: newValue }\n\t\t\t\t\t\t\t\t\t: {} ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ul className=\"block-editor-block-lock-modal__checklist\">\n\t\t\t\t\t\t{ allowsEditLocking && (\n\t\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Restrict editing' ) }\n\t\t\t\t\t\t\t\t\tchecked={ !! lock.edit }\n\t\t\t\t\t\t\t\t\tonChange={ ( edit ) =>\n\t\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\t\tedit,\n\t\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\t\ticon={ lock.edit ? lockIcon : unlockIcon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Disable movement' ) }\n\t\t\t\t\t\t\t\tchecked={ lock.move }\n\t\t\t\t\t\t\t\tonChange={ ( move ) =>\n\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\tmove,\n\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\ticon={ lock.move ? lockIcon : unlockIcon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Prevent removal' ) }\n\t\t\t\t\t\t\t\tchecked={ lock.remove }\n\t\t\t\t\t\t\t\tonChange={ ( remove ) =>\n\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\tremove,\n\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\ticon={ lock.remove ? lockIcon : unlockIcon }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t\t{ hasTemplateLock && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__template-lock\"\n\t\t\t\t\t\t\tlabel={ __( 'Apply to all blocks inside' ) }\n\t\t\t\t\t\t\tchecked={ applyTemplateLock }\n\t\t\t\t\t\t\tdisabled={ lock.move && ! lock.remove }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetApplyTemplateLock( ! applyTemplateLock )\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</div>\n\t\t\t\t<Flex\n\t\t\t\t\tclassName=\"block-editor-block-lock-modal__actions\"\n\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\texpanded={ false }\n\t\t\t\t>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__","sprintf","useEffect","useState","Button","CheckboxControl","Flex","FlexItem","Icon","Modal","ToggleControl","lock","lockIcon","unlock","unlockIcon","useDispatch","useSelect","getBlockType","useBlockLock","useBlockDisplayInformation","store","blockEditorStore","jsx","_jsx","jsxs","_jsxs","ALLOWS_EDIT_LOCKING","getTemplateLockValue","remove","move","BlockLockModal","clientId","onClose","setLock","canEdit","canMove","canRemove","allowsEditLocking","templateLock","hasTemplateLock","select","getBlockName","getBlockAttributes","blockName","blockType","includes","attributes","applyTemplateLock","setApplyTemplateLock","updateBlockAttributes","blockInformation","edit","isAllChecked","Object","values","every","Boolean","isMixed","some","title","overlayClassName","onRequestClose","children","onSubmit","event","preventDefault","undefined","className","role","__nextHasNoMarginBottom","label","checked","indeterminate","onChange","newValue","prevLock","icon","disabled","justify","expanded","variant","onClick","type"],"sources":["@wordpress/block-editor/src/components/block-lock/modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEffect, useState } from '@wordpress/element';\nimport {\n\tButton,\n\tCheckboxControl,\n\tFlex,\n\tFlexItem,\n\tIcon,\n\tModal,\n\tToggleControl,\n} from '@wordpress/components';\nimport { lock as lockIcon, unlock as unlockIcon } from '@wordpress/icons';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { getBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport useBlockLock from './use-block-lock';\nimport useBlockDisplayInformation from '../use-block-display-information';\nimport { store as blockEditorStore } from '../../store';\n\n// Entity based blocks which allow edit locking\nconst ALLOWS_EDIT_LOCKING = [ 'core/block', 'core/navigation' ];\n\nfunction getTemplateLockValue( lock ) {\n\t// Prevents all operations.\n\tif ( lock.remove && lock.move ) {\n\t\treturn 'all';\n\t}\n\n\t// Prevents inserting or removing blocks, but allows moving existing blocks.\n\tif ( lock.remove && ! lock.move ) {\n\t\treturn 'insert';\n\t}\n\n\treturn false;\n}\n\nexport default function BlockLockModal( { clientId, onClose } ) {\n\tconst [ lock, setLock ] = useState( { move: false, remove: false } );\n\tconst { canEdit, canMove, canRemove } = useBlockLock( clientId );\n\tconst { allowsEditLocking, templateLock, hasTemplateLock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockName, getBlockAttributes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst blockName = getBlockName( clientId );\n\t\t\tconst blockType = getBlockType( blockName );\n\n\t\t\treturn {\n\t\t\t\tallowsEditLocking: ALLOWS_EDIT_LOCKING.includes( blockName ),\n\t\t\t\ttemplateLock: getBlockAttributes( clientId )?.templateLock,\n\t\t\t\thasTemplateLock: !! blockType?.attributes?.templateLock,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst [ applyTemplateLock, setApplyTemplateLock ] = useState(\n\t\t!! templateLock\n\t);\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\n\tuseEffect( () => {\n\t\tsetLock( {\n\t\t\tmove: ! canMove,\n\t\t\tremove: ! canRemove,\n\t\t\t...( allowsEditLocking ? { edit: ! canEdit } : {} ),\n\t\t} );\n\t}, [ canEdit, canMove, canRemove, allowsEditLocking ] );\n\n\tconst isAllChecked = Object.values( lock ).every( Boolean );\n\tconst isMixed = Object.values( lock ).some( Boolean ) && ! isAllChecked;\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ sprintf(\n\t\t\t\t/* translators: %s: Name of the block. */\n\t\t\t\t__( 'Lock %s' ),\n\t\t\t\tblockInformation.title\n\t\t\t) }\n\t\t\toverlayClassName=\"block-editor-block-lock-modal\"\n\t\t\tonRequestClose={ onClose }\n\t\t>\n\t\t\t<form\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tupdateBlockAttributes( [ clientId ], {\n\t\t\t\t\t\tlock,\n\t\t\t\t\t\ttemplateLock: applyTemplateLock\n\t\t\t\t\t\t\t? getTemplateLockValue( lock )\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t} );\n\t\t\t\t\tonClose();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<fieldset className=\"block-editor-block-lock-modal__options\">\n\t\t\t\t\t<legend>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Choose specific attributes to restrict or lock all available options.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</legend>\n\t\t\t\t\t{ /*\n\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t */\n\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t<ul\n\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__checklist\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__options-all\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Lock all' ) }\n\t\t\t\t\t\t\t\tchecked={ isAllChecked }\n\t\t\t\t\t\t\t\tindeterminate={ isMixed }\n\t\t\t\t\t\t\t\tonChange={ ( newValue ) =>\n\t\t\t\t\t\t\t\t\tsetLock( {\n\t\t\t\t\t\t\t\t\t\tmove: newValue,\n\t\t\t\t\t\t\t\t\t\tremove: newValue,\n\t\t\t\t\t\t\t\t\t\t...( allowsEditLocking\n\t\t\t\t\t\t\t\t\t\t\t? { edit: newValue }\n\t\t\t\t\t\t\t\t\t\t\t: {} ),\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__checklist\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ allowsEditLocking && (\n\t\t\t\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Restrict editing' ) }\n\t\t\t\t\t\t\t\t\t\t\tchecked={ !! lock.edit }\n\t\t\t\t\t\t\t\t\t\t\tonChange={ ( edit ) =>\n\t\t\t\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\t\t\t\tedit,\n\t\t\t\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t\tlock.edit\n\t\t\t\t\t\t\t\t\t\t\t\t\t? lockIcon\n\t\t\t\t\t\t\t\t\t\t\t\t\t: unlockIcon\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Disable movement' ) }\n\t\t\t\t\t\t\t\t\t\tchecked={ lock.move }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( move ) =>\n\t\t\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\t\t\tmove,\n\t\t\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\tlock.move ? lockIcon : unlockIcon\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t<li className=\"block-editor-block-lock-modal__checklist-item\">\n\t\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Prevent removal' ) }\n\t\t\t\t\t\t\t\t\t\tchecked={ lock.remove }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( remove ) =>\n\t\t\t\t\t\t\t\t\t\t\tsetLock( ( prevLock ) => ( {\n\t\t\t\t\t\t\t\t\t\t\t\t...prevLock,\n\t\t\t\t\t\t\t\t\t\t\t\tremove,\n\t\t\t\t\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__lock-icon\"\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\tlock.remove ? lockIcon : unlockIcon\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t{ hasTemplateLock && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tclassName=\"block-editor-block-lock-modal__template-lock\"\n\t\t\t\t\t\t\tlabel={ __( 'Apply to all blocks inside' ) }\n\t\t\t\t\t\t\tchecked={ applyTemplateLock }\n\t\t\t\t\t\t\tdisabled={ lock.move && ! lock.remove }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetApplyTemplateLock( ! applyTemplateLock )\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</fieldset>\n\t\t\t\t<Flex\n\t\t\t\t\tclassName=\"block-editor-block-lock-modal__actions\"\n\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\texpanded={ false }\n\t\t\t\t>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</form>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,14 +31,17 @@ function BlockMover({
|
|
|
31
31
|
rootClientId,
|
|
32
32
|
isFirst,
|
|
33
33
|
isLast,
|
|
34
|
-
orientation
|
|
34
|
+
orientation,
|
|
35
|
+
isManualGrid
|
|
35
36
|
} = useSelect(select => {
|
|
37
|
+
var _getBlockAttributes;
|
|
36
38
|
const {
|
|
37
39
|
getBlockIndex,
|
|
38
40
|
getBlockListSettings,
|
|
39
41
|
canMoveBlocks,
|
|
40
42
|
getBlockOrder,
|
|
41
|
-
getBlockRootClientId
|
|
43
|
+
getBlockRootClientId,
|
|
44
|
+
getBlockAttributes
|
|
42
45
|
} = select(blockEditorStore);
|
|
43
46
|
const normalizedClientIds = Array.isArray(clientIds) ? clientIds : [clientIds];
|
|
44
47
|
const firstClientId = normalizedClientIds[0];
|
|
@@ -46,18 +49,21 @@ function BlockMover({
|
|
|
46
49
|
const firstIndex = getBlockIndex(firstClientId);
|
|
47
50
|
const lastIndex = getBlockIndex(normalizedClientIds[normalizedClientIds.length - 1]);
|
|
48
51
|
const blockOrder = getBlockOrder(_rootClientId);
|
|
52
|
+
const {
|
|
53
|
+
layout = {}
|
|
54
|
+
} = (_getBlockAttributes = getBlockAttributes(_rootClientId)) !== null && _getBlockAttributes !== void 0 ? _getBlockAttributes : {};
|
|
49
55
|
return {
|
|
50
56
|
canMove: canMoveBlocks(clientIds),
|
|
51
57
|
rootClientId: _rootClientId,
|
|
52
58
|
isFirst: firstIndex === 0,
|
|
53
59
|
isLast: lastIndex === blockOrder.length - 1,
|
|
54
|
-
orientation: getBlockListSettings(_rootClientId)?.orientation
|
|
60
|
+
orientation: getBlockListSettings(_rootClientId)?.orientation,
|
|
61
|
+
isManualGrid: layout.type === 'grid' && !!layout.columnCount && window.__experimentalEnableGridInteractivity
|
|
55
62
|
};
|
|
56
63
|
}, [clientIds]);
|
|
57
64
|
if (!canMove || isFirst && isLast && !rootClientId) {
|
|
58
65
|
return null;
|
|
59
66
|
}
|
|
60
|
-
const dragHandleLabel = __('Drag');
|
|
61
67
|
return /*#__PURE__*/_jsxs(ToolbarGroup, {
|
|
62
68
|
className: clsx('block-editor-block-mover', {
|
|
63
69
|
'is-horizontal': orientation === 'horizontal'
|
|
@@ -69,14 +75,14 @@ function BlockMover({
|
|
|
69
75
|
icon: dragHandle,
|
|
70
76
|
className: "block-editor-block-mover__drag-handle",
|
|
71
77
|
"aria-hidden": "true",
|
|
72
|
-
label:
|
|
78
|
+
label: __('Drag')
|
|
73
79
|
// Should not be able to tab to drag handle as this
|
|
74
80
|
// button can only be used with a pointer device.
|
|
75
81
|
,
|
|
76
82
|
tabIndex: "-1",
|
|
77
83
|
...draggableProps
|
|
78
84
|
})
|
|
79
|
-
}), /*#__PURE__*/_jsxs("div", {
|
|
85
|
+
}), !isManualGrid && /*#__PURE__*/_jsxs("div", {
|
|
80
86
|
className: "block-editor-block-mover__move-button-container",
|
|
81
87
|
children: [/*#__PURE__*/_jsx(ToolbarItem, {
|
|
82
88
|
children: itemProps => /*#__PURE__*/_jsx(BlockMoverUpButton, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","dragHandle","ToolbarGroup","ToolbarItem","Button","useSelect","__","BlockDraggable","BlockMoverUpButton","BlockMoverDownButton","store","blockEditorStore","jsx","_jsx","jsxs","_jsxs","BlockMover","clientIds","hideDragHandle","isBlockMoverUpButtonDisabled","isBlockMoverDownButtonDisabled","canMove","rootClientId","isFirst","isLast","orientation","select","getBlockIndex","getBlockListSettings","canMoveBlocks","getBlockOrder","getBlockRootClientId","normalizedClientIds","Array","isArray","firstClientId","_rootClientId","firstIndex","lastIndex","length","blockOrder","
|
|
1
|
+
{"version":3,"names":["clsx","dragHandle","ToolbarGroup","ToolbarItem","Button","useSelect","__","BlockDraggable","BlockMoverUpButton","BlockMoverDownButton","store","blockEditorStore","jsx","_jsx","jsxs","_jsxs","BlockMover","clientIds","hideDragHandle","isBlockMoverUpButtonDisabled","isBlockMoverDownButtonDisabled","canMove","rootClientId","isFirst","isLast","orientation","isManualGrid","select","_getBlockAttributes","getBlockIndex","getBlockListSettings","canMoveBlocks","getBlockOrder","getBlockRootClientId","getBlockAttributes","normalizedClientIds","Array","isArray","firstClientId","_rootClientId","firstIndex","lastIndex","length","blockOrder","layout","type","columnCount","window","__experimentalEnableGridInteractivity","className","children","fadeWhenDisabled","draggableProps","icon","label","tabIndex","itemProps","disabled"],"sources":["@wordpress/block-editor/src/components/block-mover/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\n\nimport { dragHandle } from '@wordpress/icons';\nimport { ToolbarGroup, ToolbarItem, Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockDraggable from '../block-draggable';\nimport { BlockMoverUpButton, BlockMoverDownButton } from './button';\nimport { store as blockEditorStore } from '../../store';\n\nfunction BlockMover( {\n\tclientIds,\n\thideDragHandle,\n\tisBlockMoverUpButtonDisabled,\n\tisBlockMoverDownButtonDisabled,\n} ) {\n\tconst {\n\t\tcanMove,\n\t\trootClientId,\n\t\tisFirst,\n\t\tisLast,\n\t\torientation,\n\t\tisManualGrid,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockListSettings,\n\t\t\t\tcanMoveBlocks,\n\t\t\t\tgetBlockOrder,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetBlockAttributes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst normalizedClientIds = Array.isArray( clientIds )\n\t\t\t\t? clientIds\n\t\t\t\t: [ clientIds ];\n\t\t\tconst firstClientId = normalizedClientIds[ 0 ];\n\t\t\tconst _rootClientId = getBlockRootClientId( firstClientId );\n\t\t\tconst firstIndex = getBlockIndex( firstClientId );\n\t\t\tconst lastIndex = getBlockIndex(\n\t\t\t\tnormalizedClientIds[ normalizedClientIds.length - 1 ]\n\t\t\t);\n\t\t\tconst blockOrder = getBlockOrder( _rootClientId );\n\t\t\tconst { layout = {} } = getBlockAttributes( _rootClientId ) ?? {};\n\n\t\t\treturn {\n\t\t\t\tcanMove: canMoveBlocks( clientIds ),\n\t\t\t\trootClientId: _rootClientId,\n\t\t\t\tisFirst: firstIndex === 0,\n\t\t\t\tisLast: lastIndex === blockOrder.length - 1,\n\t\t\t\torientation: getBlockListSettings( _rootClientId )?.orientation,\n\t\t\t\tisManualGrid:\n\t\t\t\t\tlayout.type === 'grid' &&\n\t\t\t\t\t!! layout.columnCount &&\n\t\t\t\t\twindow.__experimentalEnableGridInteractivity,\n\t\t\t};\n\t\t},\n\t\t[ clientIds ]\n\t);\n\n\tif ( ! canMove || ( isFirst && isLast && ! rootClientId ) ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ToolbarGroup\n\t\t\tclassName={ clsx( 'block-editor-block-mover', {\n\t\t\t\t'is-horizontal': orientation === 'horizontal',\n\t\t\t} ) }\n\t\t>\n\t\t\t{ ! hideDragHandle && (\n\t\t\t\t<BlockDraggable clientIds={ clientIds } fadeWhenDisabled>\n\t\t\t\t\t{ ( draggableProps ) => (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ dragHandle }\n\t\t\t\t\t\t\tclassName=\"block-editor-block-mover__drag-handle\"\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tlabel={ __( 'Drag' ) }\n\t\t\t\t\t\t\t// Should not be able to tab to drag handle as this\n\t\t\t\t\t\t\t// button can only be used with a pointer device.\n\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t{ ...draggableProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockDraggable>\n\t\t\t) }\n\t\t\t{ ! isManualGrid && (\n\t\t\t\t<div className=\"block-editor-block-mover__move-button-container\">\n\t\t\t\t\t<ToolbarItem>\n\t\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t\t<BlockMoverUpButton\n\t\t\t\t\t\t\t\tdisabled={ isBlockMoverUpButtonDisabled }\n\t\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolbarItem>\n\t\t\t\t\t<ToolbarItem>\n\t\t\t\t\t\t{ ( itemProps ) => (\n\t\t\t\t\t\t\t<BlockMoverDownButton\n\t\t\t\t\t\t\t\tdisabled={ isBlockMoverDownButtonDisabled }\n\t\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t\t{ ...itemProps }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolbarItem>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</ToolbarGroup>\n\t);\n}\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-mover/README.md\n */\nexport default BlockMover;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;;AAEA,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,YAAY,EAAEC,WAAW,EAAEC,MAAM,QAAQ,uBAAuB;AACzE,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,cAAc,MAAM,oBAAoB;AAC/C,SAASC,kBAAkB,EAAEC,oBAAoB,QAAQ,UAAU;AACnE,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAExD,SAASC,UAAUA,CAAE;EACpBC,SAAS;EACTC,cAAc;EACdC,4BAA4B;EAC5BC;AACD,CAAC,EAAG;EACH,MAAM;IACLC,OAAO;IACPC,YAAY;IACZC,OAAO;IACPC,MAAM;IACNC,WAAW;IACXC;EACD,CAAC,GAAGrB,SAAS,CACVsB,MAAM,IAAM;IAAA,IAAAC,mBAAA;IACb,MAAM;MACLC,aAAa;MACbC,oBAAoB;MACpBC,aAAa;MACbC,aAAa;MACbC,oBAAoB;MACpBC;IACD,CAAC,GAAGP,MAAM,CAAEhB,gBAAiB,CAAC;IAC9B,MAAMwB,mBAAmB,GAAGC,KAAK,CAACC,OAAO,CAAEpB,SAAU,CAAC,GACnDA,SAAS,GACT,CAAEA,SAAS,CAAE;IAChB,MAAMqB,aAAa,GAAGH,mBAAmB,CAAE,CAAC,CAAE;IAC9C,MAAMI,aAAa,GAAGN,oBAAoB,CAAEK,aAAc,CAAC;IAC3D,MAAME,UAAU,GAAGX,aAAa,CAAES,aAAc,CAAC;IACjD,MAAMG,SAAS,GAAGZ,aAAa,CAC9BM,mBAAmB,CAAEA,mBAAmB,CAACO,MAAM,GAAG,CAAC,CACpD,CAAC;IACD,MAAMC,UAAU,GAAGX,aAAa,CAAEO,aAAc,CAAC;IACjD,MAAM;MAAEK,MAAM,GAAG,CAAC;IAAE,CAAC,IAAAhB,mBAAA,GAAGM,kBAAkB,CAAEK,aAAc,CAAC,cAAAX,mBAAA,cAAAA,mBAAA,GAAI,CAAC,CAAC;IAEjE,OAAO;MACNP,OAAO,EAAEU,aAAa,CAAEd,SAAU,CAAC;MACnCK,YAAY,EAAEiB,aAAa;MAC3BhB,OAAO,EAAEiB,UAAU,KAAK,CAAC;MACzBhB,MAAM,EAAEiB,SAAS,KAAKE,UAAU,CAACD,MAAM,GAAG,CAAC;MAC3CjB,WAAW,EAAEK,oBAAoB,CAAES,aAAc,CAAC,EAAEd,WAAW;MAC/DC,YAAY,EACXkB,MAAM,CAACC,IAAI,KAAK,MAAM,IACtB,CAAC,CAAED,MAAM,CAACE,WAAW,IACrBC,MAAM,CAACC;IACT,CAAC;EACF,CAAC,EACD,CAAE/B,SAAS,CACZ,CAAC;EAED,IAAK,CAAEI,OAAO,IAAME,OAAO,IAAIC,MAAM,IAAI,CAAEF,YAAc,EAAG;IAC3D,OAAO,IAAI;EACZ;EAEA,oBACCP,KAAA,CAACb,YAAY;IACZ+C,SAAS,EAAGjD,IAAI,CAAE,0BAA0B,EAAE;MAC7C,eAAe,EAAEyB,WAAW,KAAK;IAClC,CAAE,CAAG;IAAAyB,QAAA,GAEH,CAAEhC,cAAc,iBACjBL,IAAA,CAACN,cAAc;MAACU,SAAS,EAAGA,SAAW;MAACkC,gBAAgB;MAAAD,QAAA,EACnDE,cAAc,iBACjBvC,IAAA,CAACT,MAAM;QACNiD,IAAI,EAAGpD,UAAY;QACnBgD,SAAS,EAAC,uCAAuC;QACjD,eAAY,MAAM;QAClBK,KAAK,EAAGhD,EAAE,CAAE,MAAO;QACnB;QACA;QAAA;QACAiD,QAAQ,EAAC,IAAI;QAAA,GACRH;MAAc,CACnB;IACD,CACc,CAChB,EACC,CAAE1B,YAAY,iBACfX,KAAA;MAAKkC,SAAS,EAAC,iDAAiD;MAAAC,QAAA,gBAC/DrC,IAAA,CAACV,WAAW;QAAA+C,QAAA,EACPM,SAAS,iBACZ3C,IAAA,CAACL,kBAAkB;UAClBiD,QAAQ,EAAGtC,4BAA8B;UACzCF,SAAS,EAAGA,SAAW;UAAA,GAClBuC;QAAS,CACd;MACD,CACW,CAAC,eACd3C,IAAA,CAACV,WAAW;QAAA+C,QAAA,EACPM,SAAS,iBACZ3C,IAAA,CAACJ,oBAAoB;UACpBgD,QAAQ,EAAGrC,8BAAgC;UAC3CH,SAAS,EAAGA,SAAW;UAAA,GAClBuC;QAAS,CACd;MACD,CACW,CAAC;IAAA,CACV,CACL;EAAA,CACY,CAAC;AAEjB;;AAEA;AACA;AACA;AACA,eAAexC,UAAU","ignoreList":[]}
|
|
@@ -4,6 +4,13 @@
|
|
|
4
4
|
import { __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, __experimentalUnitControl as UnitControl, __experimentalInputControl as InputControl, __experimentalHStack as HStack, __experimentalVStack as VStack, __experimentalToolsPanelItem as ToolsPanelItem, Flex, FlexItem } from '@wordpress/components';
|
|
5
5
|
import { __ } from '@wordpress/i18n';
|
|
6
6
|
import { useEffect } from '@wordpress/element';
|
|
7
|
+
import { useSelect, useDispatch } from '@wordpress/data';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Internal dependencies
|
|
11
|
+
*/
|
|
12
|
+
import { useGetNumberOfBlocksBeforeCell } from '../grid/use-get-number-of-blocks-before-cell';
|
|
13
|
+
import { store as blockEditorStore } from '../../store';
|
|
7
14
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
15
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
16
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
@@ -41,22 +48,46 @@ export default function ChildLayoutControl({
|
|
|
41
48
|
isShownByDefault,
|
|
42
49
|
panelId
|
|
43
50
|
}) {
|
|
44
|
-
const {
|
|
45
|
-
selfStretch,
|
|
46
|
-
flexSize,
|
|
47
|
-
columnStart,
|
|
48
|
-
rowStart,
|
|
49
|
-
columnSpan,
|
|
50
|
-
rowSpan
|
|
51
|
-
} = childLayout;
|
|
52
51
|
const {
|
|
53
52
|
type: parentType,
|
|
54
53
|
default: {
|
|
55
54
|
type: defaultParentType = 'default'
|
|
56
|
-
} = {}
|
|
57
|
-
orientation = 'horizontal'
|
|
55
|
+
} = {}
|
|
58
56
|
} = parentLayout !== null && parentLayout !== void 0 ? parentLayout : {};
|
|
59
57
|
const parentLayoutType = parentType || defaultParentType;
|
|
58
|
+
if (parentLayoutType === 'flex') {
|
|
59
|
+
return /*#__PURE__*/_jsx(FlexControls, {
|
|
60
|
+
childLayout: childLayout,
|
|
61
|
+
onChange: onChange,
|
|
62
|
+
parentLayout: parentLayout,
|
|
63
|
+
isShownByDefault: isShownByDefault,
|
|
64
|
+
panelId: panelId
|
|
65
|
+
});
|
|
66
|
+
} else if (parentLayoutType === 'grid') {
|
|
67
|
+
return /*#__PURE__*/_jsx(GridControls, {
|
|
68
|
+
childLayout: childLayout,
|
|
69
|
+
onChange: onChange,
|
|
70
|
+
parentLayout: parentLayout,
|
|
71
|
+
isShownByDefault: isShownByDefault,
|
|
72
|
+
panelId: panelId
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
function FlexControls({
|
|
78
|
+
childLayout,
|
|
79
|
+
onChange,
|
|
80
|
+
parentLayout,
|
|
81
|
+
isShownByDefault,
|
|
82
|
+
panelId
|
|
83
|
+
}) {
|
|
84
|
+
const {
|
|
85
|
+
selfStretch,
|
|
86
|
+
flexSize
|
|
87
|
+
} = childLayout;
|
|
88
|
+
const {
|
|
89
|
+
orientation = 'horizontal'
|
|
90
|
+
} = parentLayout !== null && parentLayout !== void 0 ? parentLayout : {};
|
|
60
91
|
const hasFlexValue = () => !!selfStretch;
|
|
61
92
|
const flexResetLabel = orientation === 'horizontal' ? __('Width') : __('Height');
|
|
62
93
|
const resetFlex = () => {
|
|
@@ -65,6 +96,87 @@ export default function ChildLayoutControl({
|
|
|
65
96
|
flexSize: undefined
|
|
66
97
|
});
|
|
67
98
|
};
|
|
99
|
+
useEffect(() => {
|
|
100
|
+
if (selfStretch === 'fixed' && !flexSize) {
|
|
101
|
+
onChange({
|
|
102
|
+
...childLayout,
|
|
103
|
+
selfStretch: 'fit'
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
}, []);
|
|
107
|
+
return /*#__PURE__*/_jsxs(VStack, {
|
|
108
|
+
as: ToolsPanelItem,
|
|
109
|
+
spacing: 2,
|
|
110
|
+
hasValue: hasFlexValue,
|
|
111
|
+
label: flexResetLabel,
|
|
112
|
+
onDeselect: resetFlex,
|
|
113
|
+
isShownByDefault: isShownByDefault,
|
|
114
|
+
panelId: panelId,
|
|
115
|
+
children: [/*#__PURE__*/_jsxs(ToggleGroupControl, {
|
|
116
|
+
__nextHasNoMarginBottom: true,
|
|
117
|
+
size: "__unstable-large",
|
|
118
|
+
label: childLayoutOrientation(parentLayout),
|
|
119
|
+
value: selfStretch || 'fit',
|
|
120
|
+
help: helpText(selfStretch, parentLayout),
|
|
121
|
+
onChange: value => {
|
|
122
|
+
const newFlexSize = value !== 'fixed' ? null : flexSize;
|
|
123
|
+
onChange({
|
|
124
|
+
selfStretch: value,
|
|
125
|
+
flexSize: newFlexSize
|
|
126
|
+
});
|
|
127
|
+
},
|
|
128
|
+
isBlock: true,
|
|
129
|
+
children: [/*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
130
|
+
value: "fit",
|
|
131
|
+
label: __('Fit')
|
|
132
|
+
}, "fit"), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
133
|
+
value: "fill",
|
|
134
|
+
label: __('Fill')
|
|
135
|
+
}, "fill"), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
136
|
+
value: "fixed",
|
|
137
|
+
label: __('Fixed')
|
|
138
|
+
}, "fixed")]
|
|
139
|
+
}), selfStretch === 'fixed' && /*#__PURE__*/_jsx(UnitControl, {
|
|
140
|
+
size: "__unstable-large",
|
|
141
|
+
onChange: value => {
|
|
142
|
+
onChange({
|
|
143
|
+
selfStretch,
|
|
144
|
+
flexSize: value
|
|
145
|
+
});
|
|
146
|
+
},
|
|
147
|
+
value: flexSize
|
|
148
|
+
})]
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
export function childLayoutOrientation(parentLayout) {
|
|
152
|
+
const {
|
|
153
|
+
orientation = 'horizontal'
|
|
154
|
+
} = parentLayout;
|
|
155
|
+
return orientation === 'horizontal' ? __('Width') : __('Height');
|
|
156
|
+
}
|
|
157
|
+
function GridControls({
|
|
158
|
+
childLayout,
|
|
159
|
+
onChange,
|
|
160
|
+
parentLayout,
|
|
161
|
+
isShownByDefault,
|
|
162
|
+
panelId
|
|
163
|
+
}) {
|
|
164
|
+
const {
|
|
165
|
+
columnStart,
|
|
166
|
+
rowStart,
|
|
167
|
+
columnSpan,
|
|
168
|
+
rowSpan
|
|
169
|
+
} = childLayout;
|
|
170
|
+
const {
|
|
171
|
+
columnCount
|
|
172
|
+
} = parentLayout !== null && parentLayout !== void 0 ? parentLayout : {};
|
|
173
|
+
const gridColumnNumber = parseInt(columnCount, 10) || 3;
|
|
174
|
+
const rootClientId = useSelect(select => select(blockEditorStore).getBlockRootClientId(panelId));
|
|
175
|
+
const {
|
|
176
|
+
moveBlocksToPosition,
|
|
177
|
+
__unstableMarkNextChangeAsNotPersistent
|
|
178
|
+
} = useDispatch(blockEditorStore);
|
|
179
|
+
const getNumberOfBlocksBeforeCell = useGetNumberOfBlocksBeforeCell(rootClientId, gridColumnNumber);
|
|
68
180
|
const hasStartValue = () => !!columnStart || !!rowStart;
|
|
69
181
|
const hasSpanValue = () => !!columnSpan || !!rowSpan;
|
|
70
182
|
const resetGridStarts = () => {
|
|
@@ -79,155 +191,101 @@ export default function ChildLayoutControl({
|
|
|
79
191
|
rowSpan: undefined
|
|
80
192
|
});
|
|
81
193
|
};
|
|
82
|
-
useEffect(() => {
|
|
83
|
-
if (selfStretch === 'fixed' && !flexSize) {
|
|
84
|
-
onChange({
|
|
85
|
-
...childLayout,
|
|
86
|
-
selfStretch: 'fit'
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
}, []);
|
|
90
194
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
91
|
-
children: [
|
|
195
|
+
children: [/*#__PURE__*/_jsxs(HStack, {
|
|
92
196
|
as: ToolsPanelItem,
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
onDeselect: resetFlex,
|
|
197
|
+
hasValue: hasSpanValue,
|
|
198
|
+
label: __('Grid span'),
|
|
199
|
+
onDeselect: resetGridSpans,
|
|
97
200
|
isShownByDefault: isShownByDefault,
|
|
98
201
|
panelId: panelId,
|
|
99
|
-
children: [/*#__PURE__*/
|
|
100
|
-
__nextHasNoMarginBottom: true,
|
|
202
|
+
children: [/*#__PURE__*/_jsx(InputControl, {
|
|
101
203
|
size: "__unstable-large",
|
|
102
|
-
label:
|
|
103
|
-
|
|
104
|
-
help: helpText(selfStretch, parentLayout),
|
|
204
|
+
label: __('Column span'),
|
|
205
|
+
type: "number",
|
|
105
206
|
onChange: value => {
|
|
106
|
-
const newFlexSize = value !== 'fixed' ? null : flexSize;
|
|
107
207
|
onChange({
|
|
108
|
-
|
|
109
|
-
|
|
208
|
+
columnStart,
|
|
209
|
+
rowStart,
|
|
210
|
+
rowSpan,
|
|
211
|
+
columnSpan: value
|
|
110
212
|
});
|
|
111
213
|
},
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
label: __('Fit')
|
|
116
|
-
}, "fit"), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
117
|
-
value: "fill",
|
|
118
|
-
label: __('Fill')
|
|
119
|
-
}, "fill"), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
120
|
-
value: "fixed",
|
|
121
|
-
label: __('Fixed')
|
|
122
|
-
}, "fixed")]
|
|
123
|
-
}), selfStretch === 'fixed' && /*#__PURE__*/_jsx(UnitControl, {
|
|
214
|
+
value: columnSpan,
|
|
215
|
+
min: 1
|
|
216
|
+
}), /*#__PURE__*/_jsx(InputControl, {
|
|
124
217
|
size: "__unstable-large",
|
|
218
|
+
label: __('Row span'),
|
|
219
|
+
type: "number",
|
|
125
220
|
onChange: value => {
|
|
126
221
|
onChange({
|
|
127
|
-
|
|
128
|
-
|
|
222
|
+
columnStart,
|
|
223
|
+
rowStart,
|
|
224
|
+
columnSpan,
|
|
225
|
+
rowSpan: value
|
|
129
226
|
});
|
|
130
227
|
},
|
|
131
|
-
value:
|
|
228
|
+
value: rowSpan,
|
|
229
|
+
min: 1
|
|
132
230
|
})]
|
|
133
|
-
}),
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
231
|
+
}), window.__experimentalEnableGridInteractivity && columnCount &&
|
|
232
|
+
/*#__PURE__*/
|
|
233
|
+
// Use Flex with an explicit width on the FlexItem instead of HStack to
|
|
234
|
+
// work around an issue in webkit where inputs with a max attribute are
|
|
235
|
+
// sized incorrectly.
|
|
236
|
+
_jsxs(Flex, {
|
|
237
|
+
as: ToolsPanelItem,
|
|
238
|
+
hasValue: hasStartValue,
|
|
239
|
+
label: __('Grid placement'),
|
|
240
|
+
onDeselect: resetGridStarts,
|
|
241
|
+
isShownByDefault: false,
|
|
242
|
+
panelId: panelId,
|
|
243
|
+
children: [/*#__PURE__*/_jsx(FlexItem, {
|
|
244
|
+
style: {
|
|
245
|
+
width: '50%'
|
|
246
|
+
},
|
|
247
|
+
children: /*#__PURE__*/_jsx(InputControl, {
|
|
142
248
|
size: "__unstable-large",
|
|
143
|
-
label: __('Column
|
|
249
|
+
label: __('Column'),
|
|
144
250
|
type: "number",
|
|
145
251
|
onChange: value => {
|
|
146
252
|
onChange({
|
|
147
|
-
columnStart,
|
|
253
|
+
columnStart: value,
|
|
148
254
|
rowStart,
|
|
149
|
-
|
|
150
|
-
|
|
255
|
+
columnSpan,
|
|
256
|
+
rowSpan
|
|
151
257
|
});
|
|
258
|
+
__unstableMarkNextChangeAsNotPersistent();
|
|
259
|
+
moveBlocksToPosition([panelId], rootClientId, rootClientId, getNumberOfBlocksBeforeCell(value, rowStart));
|
|
152
260
|
},
|
|
153
|
-
value:
|
|
154
|
-
min: 1
|
|
155
|
-
|
|
261
|
+
value: columnStart,
|
|
262
|
+
min: 1,
|
|
263
|
+
max: gridColumnNumber ? gridColumnNumber - (columnSpan !== null && columnSpan !== void 0 ? columnSpan : 1) + 1 : undefined
|
|
264
|
+
})
|
|
265
|
+
}), /*#__PURE__*/_jsx(FlexItem, {
|
|
266
|
+
style: {
|
|
267
|
+
width: '50%'
|
|
268
|
+
},
|
|
269
|
+
children: /*#__PURE__*/_jsx(InputControl, {
|
|
156
270
|
size: "__unstable-large",
|
|
157
|
-
label: __('Row
|
|
271
|
+
label: __('Row'),
|
|
158
272
|
type: "number",
|
|
159
273
|
onChange: value => {
|
|
160
274
|
onChange({
|
|
161
275
|
columnStart,
|
|
162
|
-
rowStart,
|
|
276
|
+
rowStart: value,
|
|
163
277
|
columnSpan,
|
|
164
|
-
rowSpan
|
|
278
|
+
rowSpan
|
|
165
279
|
});
|
|
280
|
+
__unstableMarkNextChangeAsNotPersistent();
|
|
281
|
+
moveBlocksToPosition([panelId], rootClientId, rootClientId, getNumberOfBlocksBeforeCell(columnStart, value));
|
|
166
282
|
},
|
|
167
|
-
value:
|
|
168
|
-
min: 1
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
/*#__PURE__*/
|
|
172
|
-
// Use Flex with an explicit width on the FlexItem instead of HStack to
|
|
173
|
-
// work around an issue in webkit where inputs with a max attribute are
|
|
174
|
-
// sized incorrectly.
|
|
175
|
-
_jsxs(Flex, {
|
|
176
|
-
as: ToolsPanelItem,
|
|
177
|
-
hasValue: hasStartValue,
|
|
178
|
-
label: __('Grid placement'),
|
|
179
|
-
onDeselect: resetGridStarts,
|
|
180
|
-
isShownByDefault: false,
|
|
181
|
-
panelId: panelId,
|
|
182
|
-
children: [/*#__PURE__*/_jsx(FlexItem, {
|
|
183
|
-
style: {
|
|
184
|
-
width: '50%'
|
|
185
|
-
},
|
|
186
|
-
children: /*#__PURE__*/_jsx(InputControl, {
|
|
187
|
-
size: "__unstable-large",
|
|
188
|
-
label: __('Column'),
|
|
189
|
-
type: "number",
|
|
190
|
-
onChange: value => {
|
|
191
|
-
onChange({
|
|
192
|
-
columnStart: value,
|
|
193
|
-
rowStart,
|
|
194
|
-
columnSpan,
|
|
195
|
-
rowSpan
|
|
196
|
-
});
|
|
197
|
-
},
|
|
198
|
-
value: columnStart,
|
|
199
|
-
min: 1,
|
|
200
|
-
max: parentLayout?.columnCount ? parentLayout.columnCount - (columnSpan !== null && columnSpan !== void 0 ? columnSpan : 1) + 1 : undefined
|
|
201
|
-
})
|
|
202
|
-
}), /*#__PURE__*/_jsx(FlexItem, {
|
|
203
|
-
style: {
|
|
204
|
-
width: '50%'
|
|
205
|
-
},
|
|
206
|
-
children: /*#__PURE__*/_jsx(InputControl, {
|
|
207
|
-
size: "__unstable-large",
|
|
208
|
-
label: __('Row'),
|
|
209
|
-
type: "number",
|
|
210
|
-
onChange: value => {
|
|
211
|
-
onChange({
|
|
212
|
-
columnStart,
|
|
213
|
-
rowStart: value,
|
|
214
|
-
columnSpan,
|
|
215
|
-
rowSpan
|
|
216
|
-
});
|
|
217
|
-
},
|
|
218
|
-
value: rowStart,
|
|
219
|
-
min: 1,
|
|
220
|
-
max: parentLayout?.rowCount ? parentLayout.rowCount - (rowSpan !== null && rowSpan !== void 0 ? rowSpan : 1) + 1 : undefined
|
|
221
|
-
})
|
|
222
|
-
})]
|
|
283
|
+
value: rowStart,
|
|
284
|
+
min: 1,
|
|
285
|
+
max: parentLayout?.rowCount ? parentLayout.rowCount - (rowSpan !== null && rowSpan !== void 0 ? rowSpan : 1) + 1 : undefined
|
|
286
|
+
})
|
|
223
287
|
})]
|
|
224
288
|
})]
|
|
225
289
|
});
|
|
226
290
|
}
|
|
227
|
-
export function childLayoutOrientation(parentLayout) {
|
|
228
|
-
const {
|
|
229
|
-
orientation = 'horizontal'
|
|
230
|
-
} = parentLayout;
|
|
231
|
-
return orientation === 'horizontal' ? __('Width') : __('Height');
|
|
232
|
-
}
|
|
233
291
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalUnitControl","UnitControl","__experimentalInputControl","InputControl","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalToolsPanelItem","ToolsPanelItem","Flex","FlexItem","__","useEffect","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","helpText","selfStretch","parentLayout","orientation","ChildLayoutControl","value","childLayout","onChange","isShownByDefault","panelId","flexSize","columnStart","rowStart","columnSpan","rowSpan","type","parentType","default","defaultParentType","parentLayoutType","hasFlexValue","flexResetLabel","resetFlex","undefined","hasStartValue","hasSpanValue","resetGridStarts","resetGridSpans","children","as","spacing","hasValue","label","onDeselect","__nextHasNoMarginBottom","size","childLayoutOrientation","help","newFlexSize","isBlock","min","window","__experimentalEnableGridInteractivity","style","width","max","columnCount","rowCount"],"sources":["@wordpress/block-editor/src/components/child-layout-control/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalInputControl as InputControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEffect } from '@wordpress/element';\n\nfunction helpText( selfStretch, parentLayout ) {\n\tconst { orientation = 'horizontal' } = parentLayout;\n\n\tif ( selfStretch === 'fill' ) {\n\t\treturn __( 'Stretch to fill available space.' );\n\t}\n\tif ( selfStretch === 'fixed' && orientation === 'horizontal' ) {\n\t\treturn __( 'Specify a fixed width.' );\n\t} else if ( selfStretch === 'fixed' ) {\n\t\treturn __( 'Specify a fixed height.' );\n\t}\n\treturn __( 'Fit contents.' );\n}\n\n/**\n * Form to edit the child layout value.\n *\n * @param {Object} props Props.\n * @param {Object} props.value The child layout value.\n * @param {Function} props.onChange Function to update the child layout value.\n * @param {Object} props.parentLayout The parent layout value.\n *\n * @param {boolean} props.isShownByDefault\n * @param {string} props.panelId\n * @return {Element} child layout edit element.\n */\nexport default function ChildLayoutControl( {\n\tvalue: childLayout = {},\n\tonChange,\n\tparentLayout,\n\tisShownByDefault,\n\tpanelId,\n} ) {\n\tconst {\n\t\tselfStretch,\n\t\tflexSize,\n\t\tcolumnStart,\n\t\trowStart,\n\t\tcolumnSpan,\n\t\trowSpan,\n\t} = childLayout;\n\tconst {\n\t\ttype: parentType,\n\t\tdefault: { type: defaultParentType = 'default' } = {},\n\t\torientation = 'horizontal',\n\t} = parentLayout ?? {};\n\tconst parentLayoutType = parentType || defaultParentType;\n\n\tconst hasFlexValue = () => !! selfStretch;\n\tconst flexResetLabel =\n\t\torientation === 'horizontal' ? __( 'Width' ) : __( 'Height' );\n\tconst resetFlex = () => {\n\t\tonChange( {\n\t\t\tselfStretch: undefined,\n\t\t\tflexSize: undefined,\n\t\t} );\n\t};\n\n\tconst hasStartValue = () => !! columnStart || !! rowStart;\n\tconst hasSpanValue = () => !! columnSpan || !! rowSpan;\n\tconst resetGridStarts = () => {\n\t\tonChange( {\n\t\t\tcolumnStart: undefined,\n\t\t\trowStart: undefined,\n\t\t} );\n\t};\n\tconst resetGridSpans = () => {\n\t\tonChange( {\n\t\t\tcolumnSpan: undefined,\n\t\t\trowSpan: undefined,\n\t\t} );\n\t};\n\n\tuseEffect( () => {\n\t\tif ( selfStretch === 'fixed' && ! flexSize ) {\n\t\t\tonChange( {\n\t\t\t\t...childLayout,\n\t\t\t\tselfStretch: 'fit',\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t{ parentLayoutType === 'flex' && (\n\t\t\t\t<VStack\n\t\t\t\t\tas={ ToolsPanelItem }\n\t\t\t\t\tspacing={ 2 }\n\t\t\t\t\thasValue={ hasFlexValue }\n\t\t\t\t\tlabel={ flexResetLabel }\n\t\t\t\t\tonDeselect={ resetFlex }\n\t\t\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\tlabel={ childLayoutOrientation( parentLayout ) }\n\t\t\t\t\t\tvalue={ selfStretch || 'fit' }\n\t\t\t\t\t\thelp={ helpText( selfStretch, parentLayout ) }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tconst newFlexSize =\n\t\t\t\t\t\t\t\tvalue !== 'fixed' ? null : flexSize;\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\tselfStretch: value,\n\t\t\t\t\t\t\t\tflexSize: newFlexSize,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tkey=\"fit\"\n\t\t\t\t\t\t\tvalue=\"fit\"\n\t\t\t\t\t\t\tlabel={ __( 'Fit' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tkey=\"fill\"\n\t\t\t\t\t\t\tvalue=\"fill\"\n\t\t\t\t\t\t\tlabel={ __( 'Fill' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tkey=\"fixed\"\n\t\t\t\t\t\t\tvalue=\"fixed\"\n\t\t\t\t\t\t\tlabel={ __( 'Fixed' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t{ selfStretch === 'fixed' && (\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\tselfStretch,\n\t\t\t\t\t\t\t\t\tflexSize: value,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tvalue={ flexSize }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t) }\n\t\t\t{ parentLayoutType === 'grid' && (\n\t\t\t\t<>\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tas={ ToolsPanelItem }\n\t\t\t\t\t\thasValue={ hasSpanValue }\n\t\t\t\t\t\tlabel={ __( 'Grid span' ) }\n\t\t\t\t\t\tonDeselect={ resetGridSpans }\n\t\t\t\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\tlabel={ __( 'Column span' ) }\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\tcolumnStart,\n\t\t\t\t\t\t\t\t\trowStart,\n\t\t\t\t\t\t\t\t\trowSpan,\n\t\t\t\t\t\t\t\t\tcolumnSpan: value,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tvalue={ columnSpan }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\tlabel={ __( 'Row span' ) }\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\tcolumnStart,\n\t\t\t\t\t\t\t\t\trowStart,\n\t\t\t\t\t\t\t\t\tcolumnSpan,\n\t\t\t\t\t\t\t\t\trowSpan: value,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tvalue={ rowSpan }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t{ window.__experimentalEnableGridInteractivity && (\n\t\t\t\t\t\t// Use Flex with an explicit width on the FlexItem instead of HStack to\n\t\t\t\t\t\t// work around an issue in webkit where inputs with a max attribute are\n\t\t\t\t\t\t// sized incorrectly.\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tas={ ToolsPanelItem }\n\t\t\t\t\t\t\thasValue={ hasStartValue }\n\t\t\t\t\t\t\tlabel={ __( 'Grid placement' ) }\n\t\t\t\t\t\t\tonDeselect={ resetGridStarts }\n\t\t\t\t\t\t\tisShownByDefault={ false }\n\t\t\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem style={ { width: '50%' } }>\n\t\t\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Column' ) }\n\t\t\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t\t\tcolumnStart: value,\n\t\t\t\t\t\t\t\t\t\t\trowStart,\n\t\t\t\t\t\t\t\t\t\t\tcolumnSpan,\n\t\t\t\t\t\t\t\t\t\t\trowSpan,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tvalue={ columnStart }\n\t\t\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\t\t\tparentLayout?.columnCount\n\t\t\t\t\t\t\t\t\t\t\t? parentLayout.columnCount -\n\t\t\t\t\t\t\t\t\t\t\t ( columnSpan ?? 1 ) +\n\t\t\t\t\t\t\t\t\t\t\t 1\n\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem style={ { width: '50%' } }>\n\t\t\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Row' ) }\n\t\t\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t\t\tcolumnStart,\n\t\t\t\t\t\t\t\t\t\t\trowStart: value,\n\t\t\t\t\t\t\t\t\t\t\tcolumnSpan,\n\t\t\t\t\t\t\t\t\t\t\trowSpan,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tvalue={ rowStart }\n\t\t\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\t\t\tparentLayout?.rowCount\n\t\t\t\t\t\t\t\t\t\t\t? parentLayout.rowCount -\n\t\t\t\t\t\t\t\t\t\t\t ( rowSpan ?? 1 ) +\n\t\t\t\t\t\t\t\t\t\t\t 1\n\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport function childLayoutOrientation( parentLayout ) {\n\tconst { orientation = 'horizontal' } = parentLayout;\n\n\treturn orientation === 'horizontal' ? __( 'Width' ) : __( 'Height' );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalUnitControl","UnitControl","__experimentalInputControl","InputControl","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalToolsPanelItem","ToolsPanelItem","Flex","FlexItem","__","useEffect","useSelect","useDispatch","useGetNumberOfBlocksBeforeCell","store","blockEditorStore","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","helpText","selfStretch","parentLayout","orientation","ChildLayoutControl","value","childLayout","onChange","isShownByDefault","panelId","type","parentType","default","defaultParentType","parentLayoutType","FlexControls","GridControls","flexSize","hasFlexValue","flexResetLabel","resetFlex","undefined","as","spacing","hasValue","label","onDeselect","children","__nextHasNoMarginBottom","size","childLayoutOrientation","help","newFlexSize","isBlock","columnStart","rowStart","columnSpan","rowSpan","columnCount","gridColumnNumber","parseInt","rootClientId","select","getBlockRootClientId","moveBlocksToPosition","__unstableMarkNextChangeAsNotPersistent","getNumberOfBlocksBeforeCell","hasStartValue","hasSpanValue","resetGridStarts","resetGridSpans","min","window","__experimentalEnableGridInteractivity","style","width","max","rowCount"],"sources":["@wordpress/block-editor/src/components/child-layout-control/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalInputControl as InputControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useEffect } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useGetNumberOfBlocksBeforeCell } from '../grid/use-get-number-of-blocks-before-cell';\nimport { store as blockEditorStore } from '../../store';\n\nfunction helpText( selfStretch, parentLayout ) {\n\tconst { orientation = 'horizontal' } = parentLayout;\n\n\tif ( selfStretch === 'fill' ) {\n\t\treturn __( 'Stretch to fill available space.' );\n\t}\n\tif ( selfStretch === 'fixed' && orientation === 'horizontal' ) {\n\t\treturn __( 'Specify a fixed width.' );\n\t} else if ( selfStretch === 'fixed' ) {\n\t\treturn __( 'Specify a fixed height.' );\n\t}\n\treturn __( 'Fit contents.' );\n}\n\n/**\n * Form to edit the child layout value.\n *\n * @param {Object} props Props.\n * @param {Object} props.value The child layout value.\n * @param {Function} props.onChange Function to update the child layout value.\n * @param {Object} props.parentLayout The parent layout value.\n *\n * @param {boolean} props.isShownByDefault\n * @param {string} props.panelId\n * @return {Element} child layout edit element.\n */\nexport default function ChildLayoutControl( {\n\tvalue: childLayout = {},\n\tonChange,\n\tparentLayout,\n\tisShownByDefault,\n\tpanelId,\n} ) {\n\tconst {\n\t\ttype: parentType,\n\t\tdefault: { type: defaultParentType = 'default' } = {},\n\t} = parentLayout ?? {};\n\tconst parentLayoutType = parentType || defaultParentType;\n\n\tif ( parentLayoutType === 'flex' ) {\n\t\treturn (\n\t\t\t<FlexControls\n\t\t\t\tchildLayout={ childLayout }\n\t\t\t\tonChange={ onChange }\n\t\t\t\tparentLayout={ parentLayout }\n\t\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\t\tpanelId={ panelId }\n\t\t\t/>\n\t\t);\n\t} else if ( parentLayoutType === 'grid' ) {\n\t\treturn (\n\t\t\t<GridControls\n\t\t\t\tchildLayout={ childLayout }\n\t\t\t\tonChange={ onChange }\n\t\t\t\tparentLayout={ parentLayout }\n\t\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\t\tpanelId={ panelId }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn null;\n}\n\nfunction FlexControls( {\n\tchildLayout,\n\tonChange,\n\tparentLayout,\n\tisShownByDefault,\n\tpanelId,\n} ) {\n\tconst { selfStretch, flexSize } = childLayout;\n\tconst { orientation = 'horizontal' } = parentLayout ?? {};\n\tconst hasFlexValue = () => !! selfStretch;\n\tconst flexResetLabel =\n\t\torientation === 'horizontal' ? __( 'Width' ) : __( 'Height' );\n\tconst resetFlex = () => {\n\t\tonChange( {\n\t\t\tselfStretch: undefined,\n\t\t\tflexSize: undefined,\n\t\t} );\n\t};\n\n\tuseEffect( () => {\n\t\tif ( selfStretch === 'fixed' && ! flexSize ) {\n\t\t\tonChange( {\n\t\t\t\t...childLayout,\n\t\t\t\tselfStretch: 'fit',\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\treturn (\n\t\t<VStack\n\t\t\tas={ ToolsPanelItem }\n\t\t\tspacing={ 2 }\n\t\t\thasValue={ hasFlexValue }\n\t\t\tlabel={ flexResetLabel }\n\t\t\tonDeselect={ resetFlex }\n\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t<ToggleGroupControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\tlabel={ childLayoutOrientation( parentLayout ) }\n\t\t\t\tvalue={ selfStretch || 'fit' }\n\t\t\t\thelp={ helpText( selfStretch, parentLayout ) }\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tconst newFlexSize = value !== 'fixed' ? null : flexSize;\n\t\t\t\t\tonChange( {\n\t\t\t\t\t\tselfStretch: value,\n\t\t\t\t\t\tflexSize: newFlexSize,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tisBlock\n\t\t\t>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tkey=\"fit\"\n\t\t\t\t\tvalue=\"fit\"\n\t\t\t\t\tlabel={ __( 'Fit' ) }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tkey=\"fill\"\n\t\t\t\t\tvalue=\"fill\"\n\t\t\t\t\tlabel={ __( 'Fill' ) }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tkey=\"fixed\"\n\t\t\t\t\tvalue=\"fixed\"\n\t\t\t\t\tlabel={ __( 'Fixed' ) }\n\t\t\t\t/>\n\t\t\t</ToggleGroupControl>\n\t\t\t{ selfStretch === 'fixed' && (\n\t\t\t\t<UnitControl\n\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\tselfStretch,\n\t\t\t\t\t\t\tflexSize: value,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ flexSize }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n\nexport function childLayoutOrientation( parentLayout ) {\n\tconst { orientation = 'horizontal' } = parentLayout;\n\treturn orientation === 'horizontal' ? __( 'Width' ) : __( 'Height' );\n}\n\nfunction GridControls( {\n\tchildLayout,\n\tonChange,\n\tparentLayout,\n\tisShownByDefault,\n\tpanelId,\n} ) {\n\tconst { columnStart, rowStart, columnSpan, rowSpan } = childLayout;\n\tconst { columnCount } = parentLayout ?? {};\n\tconst gridColumnNumber = parseInt( columnCount, 10 ) || 3;\n\tconst rootClientId = useSelect( ( select ) =>\n\t\tselect( blockEditorStore ).getBlockRootClientId( panelId )\n\t);\n\tconst { moveBlocksToPosition, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst getNumberOfBlocksBeforeCell = useGetNumberOfBlocksBeforeCell(\n\t\trootClientId,\n\t\tgridColumnNumber\n\t);\n\tconst hasStartValue = () => !! columnStart || !! rowStart;\n\tconst hasSpanValue = () => !! columnSpan || !! rowSpan;\n\tconst resetGridStarts = () => {\n\t\tonChange( {\n\t\t\tcolumnStart: undefined,\n\t\t\trowStart: undefined,\n\t\t} );\n\t};\n\tconst resetGridSpans = () => {\n\t\tonChange( {\n\t\t\tcolumnSpan: undefined,\n\t\t\trowSpan: undefined,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<HStack\n\t\t\t\tas={ ToolsPanelItem }\n\t\t\t\thasValue={ hasSpanValue }\n\t\t\t\tlabel={ __( 'Grid span' ) }\n\t\t\t\tonDeselect={ resetGridSpans }\n\t\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\t\tpanelId={ panelId }\n\t\t\t>\n\t\t\t\t<InputControl\n\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\tlabel={ __( 'Column span' ) }\n\t\t\t\t\ttype=\"number\"\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\tcolumnStart,\n\t\t\t\t\t\t\trowStart,\n\t\t\t\t\t\t\trowSpan,\n\t\t\t\t\t\t\tcolumnSpan: value,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ columnSpan }\n\t\t\t\t\tmin={ 1 }\n\t\t\t\t/>\n\t\t\t\t<InputControl\n\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\tlabel={ __( 'Row span' ) }\n\t\t\t\t\ttype=\"number\"\n\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\tcolumnStart,\n\t\t\t\t\t\t\trowStart,\n\t\t\t\t\t\t\tcolumnSpan,\n\t\t\t\t\t\t\trowSpan: value,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ rowSpan }\n\t\t\t\t\tmin={ 1 }\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t{ window.__experimentalEnableGridInteractivity && columnCount && (\n\t\t\t\t// Use Flex with an explicit width on the FlexItem instead of HStack to\n\t\t\t\t// work around an issue in webkit where inputs with a max attribute are\n\t\t\t\t// sized incorrectly.\n\t\t\t\t<Flex\n\t\t\t\t\tas={ ToolsPanelItem }\n\t\t\t\t\thasValue={ hasStartValue }\n\t\t\t\t\tlabel={ __( 'Grid placement' ) }\n\t\t\t\t\tonDeselect={ resetGridStarts }\n\t\t\t\t\tisShownByDefault={ false }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<FlexItem style={ { width: '50%' } }>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\tlabel={ __( 'Column' ) }\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\tcolumnStart: value,\n\t\t\t\t\t\t\t\t\trowStart,\n\t\t\t\t\t\t\t\t\tcolumnSpan,\n\t\t\t\t\t\t\t\t\trowSpan,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\t\t\t[ panelId ],\n\t\t\t\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\t\t\t\tgetNumberOfBlocksBeforeCell(\n\t\t\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t\t\t\trowStart\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tvalue={ columnStart }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\tgridColumnNumber\n\t\t\t\t\t\t\t\t\t? gridColumnNumber - ( columnSpan ?? 1 ) + 1\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem style={ { width: '50%' } }>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t\tlabel={ __( 'Row' ) }\n\t\t\t\t\t\t\ttype=\"number\"\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\tcolumnStart,\n\t\t\t\t\t\t\t\t\trowStart: value,\n\t\t\t\t\t\t\t\t\tcolumnSpan,\n\t\t\t\t\t\t\t\t\trowSpan,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\t\t\t[ panelId ],\n\t\t\t\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\t\t\t\trootClientId,\n\t\t\t\t\t\t\t\t\tgetNumberOfBlocksBeforeCell(\n\t\t\t\t\t\t\t\t\t\tcolumnStart,\n\t\t\t\t\t\t\t\t\t\tvalue\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tvalue={ rowStart }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\tparentLayout?.rowCount\n\t\t\t\t\t\t\t\t\t? parentLayout.rowCount -\n\t\t\t\t\t\t\t\t\t ( rowSpan ?? 1 ) +\n\t\t\t\t\t\t\t\t\t 1\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|