@wordpress/block-library 9.0.0 → 9.1.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 +2 -0
- package/build/button/save.js +0 -3
- package/build/button/save.js.map +1 -1
- package/build/comment-date/edit.js +1 -1
- package/build/comment-date/edit.js.map +1 -1
- package/build/embed/variations.js +0 -10
- package/build/embed/variations.js.map +1 -1
- package/build/gallery/v1/gallery-image.js +16 -4
- package/build/gallery/v1/gallery-image.js.map +1 -1
- package/build/list-item/edit.native.js +1 -15
- package/build/list-item/edit.native.js.map +1 -1
- package/build/missing/edit.native.js +29 -4
- package/build/missing/edit.native.js.map +1 -1
- package/build/navigation/view.js +1 -1
- package/build/navigation/view.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +1 -0
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +1 -0
- package/build/page-list/edit.js.map +1 -1
- package/build/post-content/index.js +13 -1
- package/build/post-content/index.js.map +1 -1
- package/build/post-date/edit.js +1 -1
- package/build/post-date/edit.js.map +1 -1
- package/build/pullquote/index.js +13 -0
- package/build/pullquote/index.js.map +1 -1
- package/build/query/edit/inspector-controls/create-new-post-link.js +10 -10
- package/build/query/edit/inspector-controls/create-new-post-link.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +2 -2
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/quote/index.js +13 -0
- package/build/quote/index.js.map +1 -1
- package/build/template-part/edit/title-modal.js +1 -1
- package/build/template-part/edit/title-modal.js.map +1 -1
- package/build/verse/index.js +13 -0
- package/build/verse/index.js.map +1 -1
- package/build-module/button/save.js +0 -3
- package/build-module/button/save.js.map +1 -1
- package/build-module/comment-date/edit.js +2 -2
- package/build-module/comment-date/edit.js.map +1 -1
- package/build-module/embed/variations.js +0 -10
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.js +16 -4
- package/build-module/gallery/v1/gallery-image.js.map +1 -1
- package/build-module/list-item/edit.native.js +2 -16
- package/build-module/list-item/edit.native.js.map +1 -1
- package/build-module/missing/edit.native.js +30 -5
- package/build-module/missing/edit.native.js.map +1 -1
- package/build-module/navigation/view.js +1 -1
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +1 -0
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +1 -0
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/post-content/index.js +13 -1
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-date/edit.js +2 -2
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/pullquote/index.js +13 -0
- package/build-module/pullquote/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/create-new-post-link.js +10 -10
- package/build-module/query/edit/inspector-controls/create-new-post-link.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +2 -2
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/quote/index.js +13 -0
- package/build-module/quote/index.js.map +1 -1
- package/build-module/template-part/edit/title-modal.js +1 -1
- package/build-module/template-part/edit/title-modal.js.map +1 -1
- package/build-module/verse/index.js +13 -0
- package/build-module/verse/index.js.map +1 -1
- package/build-style/editor-rtl.css +2 -16
- package/build-style/editor.css +2 -16
- package/build-style/media-text/style-rtl.css +17 -17
- package/build-style/media-text/style.css +17 -17
- package/build-style/navigation/editor-rtl.css +0 -15
- package/build-style/navigation/editor.css +0 -15
- package/build-style/query/editor-rtl.css +2 -1
- package/build-style/query/editor.css +2 -1
- package/build-style/style-rtl.css +17 -17
- package/build-style/style.css +17 -17
- package/package.json +35 -35
- package/src/button/index.php +80 -0
- package/src/button/save.js +0 -4
- package/src/buttons/test/__snapshots__/edit.native.js.snap +30 -10
- package/src/buttons/test/edit.native.js +53 -12
- package/src/comment-date/edit.js +8 -2
- package/src/comment-date/index.php +7 -5
- package/src/embed/variations.js +0 -8
- package/src/gallery/v1/gallery-image.js +8 -0
- package/src/list-item/edit.native.js +2 -22
- package/src/media-text/style.scss +16 -15
- package/src/missing/edit.native.js +44 -12
- package/src/missing/test/__snapshots__/edit.native.js.snap +75 -59
- package/src/navigation/editor.scss +0 -16
- package/src/navigation/index.php +8 -8
- package/src/navigation/view.js +1 -1
- package/src/page-list/convert-to-links-modal.js +1 -0
- package/src/page-list/edit.js +1 -0
- package/src/post-content/block.json +13 -1
- package/src/post-date/edit.js +8 -2
- package/src/post-date/index.php +14 -3
- package/src/pullquote/block.json +13 -0
- package/src/query/edit/inspector-controls/create-new-post-link.js +12 -8
- package/src/query/edit/inspector-controls/index.js +5 -3
- package/src/query/editor.scss +2 -1
- package/src/query-pagination-next/index.php +1 -1
- package/src/query-pagination-previous/index.php +1 -1
- package/src/quote/block.json +13 -0
- package/src/search/index.php +2 -2
- package/src/site-logo/index.php +6 -0
- package/src/social-links/test/edit.native.js +41 -5
- package/src/template-part/edit/title-modal.js +1 -1
- package/src/verse/block.json +13 -0
|
@@ -15,8 +15,7 @@ import { useState, useCallback, useRef } from '@wordpress/element';
|
|
|
15
15
|
/**
|
|
16
16
|
* Internal dependencies
|
|
17
17
|
*/
|
|
18
|
-
import {
|
|
19
|
-
import { convertToListItems } from './utils';
|
|
18
|
+
import { useMerge, useEnter } from './hooks';
|
|
20
19
|
import { IndentUI } from './edit.js';
|
|
21
20
|
import styles from './style.scss';
|
|
22
21
|
import ListStyleType from './list-style-type';
|
|
@@ -26,7 +25,6 @@ const OPACITY = '9e';
|
|
|
26
25
|
export default function ListItemEdit({
|
|
27
26
|
attributes,
|
|
28
27
|
setAttributes,
|
|
29
|
-
onReplace,
|
|
30
28
|
clientId,
|
|
31
29
|
style,
|
|
32
30
|
mergeBlocks
|
|
@@ -100,18 +98,7 @@ export default function ListItemEdit({
|
|
|
100
98
|
content,
|
|
101
99
|
clientId
|
|
102
100
|
}, preventDefault);
|
|
103
|
-
const onSplit = useSplit(clientId);
|
|
104
101
|
const onMerge = useMerge(clientId, mergeBlocks);
|
|
105
|
-
const onSplitList = useCallback(value => {
|
|
106
|
-
if (!preventDefault.current) {
|
|
107
|
-
return onSplit(value);
|
|
108
|
-
}
|
|
109
|
-
}, [clientId, onSplit]);
|
|
110
|
-
const onReplaceList = useCallback((blocks, ...args) => {
|
|
111
|
-
if (!preventDefault.current) {
|
|
112
|
-
onReplace(convertToListItems(blocks), ...args);
|
|
113
|
-
}
|
|
114
|
-
}, [clientId, onReplace, convertToListItems]);
|
|
115
102
|
const onLayout = useCallback(({
|
|
116
103
|
nativeEvent
|
|
117
104
|
}) => {
|
|
@@ -144,6 +131,7 @@ export default function ListItemEdit({
|
|
|
144
131
|
style: styles['wp-block-list-item__list-item-content'],
|
|
145
132
|
onLayout: onLayout,
|
|
146
133
|
children: /*#__PURE__*/_jsx(RichText, {
|
|
134
|
+
__unstableUseSplitSelection: true,
|
|
147
135
|
identifier: "content",
|
|
148
136
|
tagName: "p",
|
|
149
137
|
onChange: nextContent => setAttributes({
|
|
@@ -152,9 +140,7 @@ export default function ListItemEdit({
|
|
|
152
140
|
value: content,
|
|
153
141
|
placeholder: placeholder || __('List'),
|
|
154
142
|
placeholderTextColor: defaultPlaceholderTextColorWithOpacity,
|
|
155
|
-
onSplit: onSplitList,
|
|
156
143
|
onMerge: onMerge,
|
|
157
|
-
onReplace: onReplaceList,
|
|
158
144
|
onEnter: onEnter,
|
|
159
145
|
style: styleWithPlaceholderOpacity,
|
|
160
146
|
deleteEnter: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["View","RichText","useBlockProps","useInnerBlocksProps","BlockControls","store","blockEditorStore","__","usePreferredColorSchemeStyle","useSelect","useState","useCallback","useRef","useSplit","useMerge","useEnter","convertToListItems","IndentUI","styles","ListStyleType","jsx","_jsx","jsxs","_jsxs","OPACITY","ListItemEdit","attributes","setAttributes","onReplace","clientId","style","mergeBlocks","contentWidth","setContentWidth","placeholder","content","blockIndex","hasInnerBlocks","indentationLevel","numberOfListItems","ordered","reversed","start","select","getBlockAttributes","getBlockCount","getBlockIndex","getBlockParentsByBlockName","getBlockRootClientId","currentIdentationLevel","length","currentBlockIndex","blockWithInnerBlocks","rootClientId","blockAttributes","totalListItems","isOrdered","isReversed","startValue","blockProps","innerBlocksProps","renderAppender","defaultPlaceholderFromScheme","currentTextColor","color","baseColors","text","defaultPlaceholderTextColor","defaultPlaceholderTextColorWithOpacity","styleWithPlaceholderOpacity","placeholderColor","preventDefault","onEnter","onSplit","onMerge","onSplitList","value","current","onReplaceList","blocks","args","onLayout","nativeEvent","prevState","width","layout","Math","floor","children","identifier","tagName","onChange","nextContent","placeholderTextColor","deleteEnter","containerWidth","group"],"sources":["@wordpress/block-library/src/list-item/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { useState, useCallback, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useSplit, useMerge, useEnter } from './hooks';\nimport { convertToListItems } from './utils';\nimport { IndentUI } from './edit.js';\nimport styles from './style.scss';\nimport ListStyleType from './list-style-type';\n\nconst OPACITY = '9e';\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tonReplace,\n\tclientId,\n\tstyle,\n\tmergeBlocks,\n} ) {\n\tconst [ contentWidth, setContentWidth ] = useState();\n\tconst { placeholder, content } = attributes;\n\tconst {\n\t\tblockIndex,\n\t\thasInnerBlocks,\n\t\tindentationLevel,\n\t\tnumberOfListItems,\n\t\tordered,\n\t\treversed,\n\t\tstart,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst currentIdentationLevel = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/list-item',\n\t\t\t\ttrue\n\t\t\t).length;\n\t\t\tconst currentBlockIndex = getBlockIndex( clientId );\n\t\t\tconst blockWithInnerBlocks = getBlockCount( clientId ) > 0;\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst blockAttributes = getBlockAttributes( rootClientId );\n\t\t\tconst totalListItems = getBlockCount( rootClientId );\n\t\t\tconst {\n\t\t\t\tordered: isOrdered,\n\t\t\t\treversed: isReversed,\n\t\t\t\tstart: startValue,\n\t\t\t} = blockAttributes || {};\n\n\t\t\treturn {\n\t\t\t\tblockIndex: currentBlockIndex,\n\t\t\t\thasInnerBlocks: blockWithInnerBlocks,\n\t\t\t\tindentationLevel: currentIdentationLevel,\n\t\t\t\tnumberOfListItems: totalListItems,\n\t\t\t\tordered: isOrdered,\n\t\t\t\treversed: isReversed,\n\t\t\t\tstart: startValue,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\t...( hasInnerBlocks && styles[ 'wp-block-list-item__nested-blocks' ] ),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t} );\n\n\t// Set default placeholder text color from light/dark scheme or base colors\n\tconst defaultPlaceholderFromScheme = usePreferredColorSchemeStyle(\n\t\tstyles[ 'wp-block-list-item__list-item-placeholder' ],\n\t\tstyles[ 'wp-block-list-item__list-item-placeholder--dark' ]\n\t);\n\n\tconst currentTextColor = style?.color || style?.baseColors?.color?.text;\n\n\tconst defaultPlaceholderTextColor = currentTextColor\n\t\t? currentTextColor\n\t\t: defaultPlaceholderFromScheme?.color;\n\n\t// Add hex opacity to default placeholder text color and style object\n\tconst defaultPlaceholderTextColorWithOpacity =\n\t\tdefaultPlaceholderTextColor + OPACITY;\n\n\tconst styleWithPlaceholderOpacity = {\n\t\t...style,\n\t\t...( style?.color && {\n\t\t\tplaceholderColor: style.color + OPACITY,\n\t\t} ),\n\t};\n\n\tconst preventDefault = useRef( false );\n\tconst { onEnter } = useEnter( { content, clientId }, preventDefault );\n\tconst onSplit = useSplit( clientId );\n\tconst onMerge = useMerge( clientId, mergeBlocks );\n\tconst onSplitList = useCallback(\n\t\t( value ) => {\n\t\t\tif ( ! preventDefault.current ) {\n\t\t\t\treturn onSplit( value );\n\t\t\t}\n\t\t},\n\t\t[ clientId, onSplit ]\n\t);\n\tconst onReplaceList = useCallback(\n\t\t( blocks, ...args ) => {\n\t\t\tif ( ! preventDefault.current ) {\n\t\t\t\tonReplace( convertToListItems( blocks ), ...args );\n\t\t\t}\n\t\t},\n\t\t[ clientId, onReplace, convertToListItems ]\n\t);\n\tconst onLayout = useCallback( ( { nativeEvent } ) => {\n\t\tsetContentWidth( ( prevState ) => {\n\t\t\tconst { width } = nativeEvent.layout;\n\n\t\t\tif ( ! prevState || prevState.width !== width ) {\n\t\t\t\treturn Math.floor( width );\n\t\t\t}\n\t\t\treturn prevState;\n\t\t} );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ styles[ 'wp-block-list-item__list-item-parent' ] }>\n\t\t\t<View style={ styles[ 'wp-block-list-item__list-item' ] }>\n\t\t\t\t<View style={ styles[ 'wp-block-list-item__list-item-icon' ] }>\n\t\t\t\t\t<ListStyleType\n\t\t\t\t\t\tblockIndex={ blockIndex }\n\t\t\t\t\t\tindentationLevel={ indentationLevel }\n\t\t\t\t\t\tnumberOfListItems={ numberOfListItems }\n\t\t\t\t\t\tordered={ ordered }\n\t\t\t\t\t\treversed={ reversed }\n\t\t\t\t\t\tstart={ start }\n\t\t\t\t\t\tstyle={ style }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ styles[ 'wp-block-list-item__list-item-content' ] }\n\t\t\t\t\tonLayout={ onLayout }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\t\tonChange={ ( nextContent ) =>\n\t\t\t\t\t\t\tsetAttributes( { content: nextContent } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\tplaceholder={ placeholder || __( 'List' ) }\n\t\t\t\t\t\tplaceholderTextColor={\n\t\t\t\t\t\t\tdefaultPlaceholderTextColorWithOpacity\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSplit={ onSplitList }\n\t\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\t\tonReplace={ onReplaceList }\n\t\t\t\t\t\tonEnter={ onEnter }\n\t\t\t\t\t\tstyle={ styleWithPlaceholderOpacity }\n\t\t\t\t\t\tdeleteEnter\n\t\t\t\t\t\tcontainerWidth={ contentWidth }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t\t<View { ...innerBlocksProps }></View>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<IndentUI clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t</View>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["View","RichText","useBlockProps","useInnerBlocksProps","BlockControls","store","blockEditorStore","__","usePreferredColorSchemeStyle","useSelect","useState","useCallback","useRef","useMerge","useEnter","IndentUI","styles","ListStyleType","jsx","_jsx","jsxs","_jsxs","OPACITY","ListItemEdit","attributes","setAttributes","clientId","style","mergeBlocks","contentWidth","setContentWidth","placeholder","content","blockIndex","hasInnerBlocks","indentationLevel","numberOfListItems","ordered","reversed","start","select","getBlockAttributes","getBlockCount","getBlockIndex","getBlockParentsByBlockName","getBlockRootClientId","currentIdentationLevel","length","currentBlockIndex","blockWithInnerBlocks","rootClientId","blockAttributes","totalListItems","isOrdered","isReversed","startValue","blockProps","innerBlocksProps","renderAppender","defaultPlaceholderFromScheme","currentTextColor","color","baseColors","text","defaultPlaceholderTextColor","defaultPlaceholderTextColorWithOpacity","styleWithPlaceholderOpacity","placeholderColor","preventDefault","onEnter","onMerge","onLayout","nativeEvent","prevState","width","layout","Math","floor","children","__unstableUseSplitSelection","identifier","tagName","onChange","nextContent","value","placeholderTextColor","deleteEnter","containerWidth","group"],"sources":["@wordpress/block-library/src/list-item/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { useSelect } from '@wordpress/data';\nimport { useState, useCallback, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useMerge, useEnter } from './hooks';\nimport { IndentUI } from './edit.js';\nimport styles from './style.scss';\nimport ListStyleType from './list-style-type';\n\nconst OPACITY = '9e';\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tstyle,\n\tmergeBlocks,\n} ) {\n\tconst [ contentWidth, setContentWidth ] = useState();\n\tconst { placeholder, content } = attributes;\n\tconst {\n\t\tblockIndex,\n\t\thasInnerBlocks,\n\t\tindentationLevel,\n\t\tnumberOfListItems,\n\t\tordered,\n\t\treversed,\n\t\tstart,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockIndex,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst currentIdentationLevel = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/list-item',\n\t\t\t\ttrue\n\t\t\t).length;\n\t\t\tconst currentBlockIndex = getBlockIndex( clientId );\n\t\t\tconst blockWithInnerBlocks = getBlockCount( clientId ) > 0;\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst blockAttributes = getBlockAttributes( rootClientId );\n\t\t\tconst totalListItems = getBlockCount( rootClientId );\n\t\t\tconst {\n\t\t\t\tordered: isOrdered,\n\t\t\t\treversed: isReversed,\n\t\t\t\tstart: startValue,\n\t\t\t} = blockAttributes || {};\n\n\t\t\treturn {\n\t\t\t\tblockIndex: currentBlockIndex,\n\t\t\t\thasInnerBlocks: blockWithInnerBlocks,\n\t\t\t\tindentationLevel: currentIdentationLevel,\n\t\t\t\tnumberOfListItems: totalListItems,\n\t\t\t\tordered: isOrdered,\n\t\t\t\treversed: isReversed,\n\t\t\t\tstart: startValue,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\t...( hasInnerBlocks && styles[ 'wp-block-list-item__nested-blocks' ] ),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t} );\n\n\t// Set default placeholder text color from light/dark scheme or base colors\n\tconst defaultPlaceholderFromScheme = usePreferredColorSchemeStyle(\n\t\tstyles[ 'wp-block-list-item__list-item-placeholder' ],\n\t\tstyles[ 'wp-block-list-item__list-item-placeholder--dark' ]\n\t);\n\n\tconst currentTextColor = style?.color || style?.baseColors?.color?.text;\n\n\tconst defaultPlaceholderTextColor = currentTextColor\n\t\t? currentTextColor\n\t\t: defaultPlaceholderFromScheme?.color;\n\n\t// Add hex opacity to default placeholder text color and style object\n\tconst defaultPlaceholderTextColorWithOpacity =\n\t\tdefaultPlaceholderTextColor + OPACITY;\n\n\tconst styleWithPlaceholderOpacity = {\n\t\t...style,\n\t\t...( style?.color && {\n\t\t\tplaceholderColor: style.color + OPACITY,\n\t\t} ),\n\t};\n\n\tconst preventDefault = useRef( false );\n\tconst { onEnter } = useEnter( { content, clientId }, preventDefault );\n\tconst onMerge = useMerge( clientId, mergeBlocks );\n\tconst onLayout = useCallback( ( { nativeEvent } ) => {\n\t\tsetContentWidth( ( prevState ) => {\n\t\t\tconst { width } = nativeEvent.layout;\n\n\t\t\tif ( ! prevState || prevState.width !== width ) {\n\t\t\t\treturn Math.floor( width );\n\t\t\t}\n\t\t\treturn prevState;\n\t\t} );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ styles[ 'wp-block-list-item__list-item-parent' ] }>\n\t\t\t<View style={ styles[ 'wp-block-list-item__list-item' ] }>\n\t\t\t\t<View style={ styles[ 'wp-block-list-item__list-item-icon' ] }>\n\t\t\t\t\t<ListStyleType\n\t\t\t\t\t\tblockIndex={ blockIndex }\n\t\t\t\t\t\tindentationLevel={ indentationLevel }\n\t\t\t\t\t\tnumberOfListItems={ numberOfListItems }\n\t\t\t\t\t\tordered={ ordered }\n\t\t\t\t\t\treversed={ reversed }\n\t\t\t\t\t\tstart={ start }\n\t\t\t\t\t\tstyle={ style }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ styles[ 'wp-block-list-item__list-item-content' ] }\n\t\t\t\t\tonLayout={ onLayout }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\t__unstableUseSplitSelection\n\t\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\t\tonChange={ ( nextContent ) =>\n\t\t\t\t\t\t\tsetAttributes( { content: nextContent } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ content }\n\t\t\t\t\t\tplaceholder={ placeholder || __( 'List' ) }\n\t\t\t\t\t\tplaceholderTextColor={\n\t\t\t\t\t\t\tdefaultPlaceholderTextColorWithOpacity\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\t\tonEnter={ onEnter }\n\t\t\t\t\t\tstyle={ styleWithPlaceholderOpacity }\n\t\t\t\t\t\tdeleteEnter\n\t\t\t\t\t\tcontainerWidth={ contentWidth }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t\t<View { ...innerBlocksProps }></View>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<IndentUI clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t</View>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { View, Text,
|
|
4
|
+
import { View, Text, TouchableOpacity } from 'react-native';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -17,6 +17,7 @@ import { withSelect, withDispatch } from '@wordpress/data';
|
|
|
17
17
|
import { applyFilters } from '@wordpress/hooks';
|
|
18
18
|
import { UnsupportedBlockDetails, store as blockEditorStore } from '@wordpress/block-editor';
|
|
19
19
|
import { store as noticesStore } from '@wordpress/notices';
|
|
20
|
+
import { requestUnsupportedBlockFallback } from '@wordpress/react-native-bridge';
|
|
20
21
|
|
|
21
22
|
/**
|
|
22
23
|
* Internal dependencies
|
|
@@ -41,10 +42,32 @@ export class UnsupportedBlockEdit extends Component {
|
|
|
41
42
|
this.onHelpButtonPressed = this.onHelpButtonPressed.bind(this);
|
|
42
43
|
}
|
|
43
44
|
toggleSheet() {
|
|
45
|
+
const {
|
|
46
|
+
attributes,
|
|
47
|
+
block,
|
|
48
|
+
clientId
|
|
49
|
+
} = this.props;
|
|
50
|
+
const {
|
|
51
|
+
originalName
|
|
52
|
+
} = attributes;
|
|
53
|
+
const title = this.getTitle();
|
|
54
|
+
const blockContent = serialize(block ? [block] : []);
|
|
55
|
+
if (this.canEditUnsupportedBlock()) {
|
|
56
|
+
requestUnsupportedBlockFallback(blockContent, clientId, originalName, title);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
44
59
|
this.setState({
|
|
45
60
|
showHelp: !this.state.showHelp
|
|
46
61
|
});
|
|
47
62
|
}
|
|
63
|
+
canEditUnsupportedBlock() {
|
|
64
|
+
const {
|
|
65
|
+
canEnableUnsupportedBlockEditor,
|
|
66
|
+
isEditableInUnsupportedBlockEditor,
|
|
67
|
+
isUnsupportedBlockEditorSupported
|
|
68
|
+
} = this.props;
|
|
69
|
+
return !canEnableUnsupportedBlockEditor && isUnsupportedBlockEditorSupported && isEditableInUnsupportedBlockEditor;
|
|
70
|
+
}
|
|
48
71
|
closeSheet() {
|
|
49
72
|
this.setState({
|
|
50
73
|
showHelp: false
|
|
@@ -146,6 +169,7 @@ export class UnsupportedBlockEdit extends Component {
|
|
|
146
169
|
originalName
|
|
147
170
|
} = this.props.attributes;
|
|
148
171
|
const {
|
|
172
|
+
isSelected,
|
|
149
173
|
getStylesFromColorScheme,
|
|
150
174
|
preferredColorScheme
|
|
151
175
|
} = this.props;
|
|
@@ -155,20 +179,21 @@ export class UnsupportedBlockEdit extends Component {
|
|
|
155
179
|
const subTitleStyle = getStylesFromColorScheme(styles.unsupportedBlockSubtitle, styles.unsupportedBlockSubtitleDark);
|
|
156
180
|
const subtitle = /*#__PURE__*/_jsx(Text, {
|
|
157
181
|
style: subTitleStyle,
|
|
158
|
-
children: __('Unsupported')
|
|
182
|
+
children: this.canEditUnsupportedBlock() ? __('Tap to edit') : __('Unsupported')
|
|
159
183
|
});
|
|
160
184
|
const icon = blockType ? normalizeIconObject(blockType.settings.icon) : plugins;
|
|
161
185
|
const iconStyle = getStylesFromColorScheme(styles.unsupportedBlockIcon, styles.unsupportedBlockIconDark);
|
|
162
186
|
const iconClassName = 'unsupported-icon' + '-' + preferredColorScheme;
|
|
163
|
-
return /*#__PURE__*/_jsx(
|
|
164
|
-
disabled: !
|
|
187
|
+
return /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
188
|
+
disabled: !isSelected,
|
|
189
|
+
activeOpacity: 0.5,
|
|
165
190
|
accessibilityLabel: __('Help button'),
|
|
166
191
|
accessibilityRole: "button",
|
|
167
192
|
accessibilityHint: __('Tap here to show help'),
|
|
168
193
|
onPress: this.toggleSheet,
|
|
169
194
|
children: /*#__PURE__*/_jsxs(View, {
|
|
170
195
|
style: getStylesFromColorScheme(styles.unsupportedBlock, styles.unsupportedBlockDark),
|
|
171
|
-
children: [this.renderHelpIcon(), /*#__PURE__*/_jsxs(View, {
|
|
196
|
+
children: [!this.canEditUnsupportedBlock() && this.renderHelpIcon(), /*#__PURE__*/_jsxs(View, {
|
|
172
197
|
style: styles.unsupportedBlockHeader,
|
|
173
198
|
children: [/*#__PURE__*/_jsx(Icon, {
|
|
174
199
|
className: iconClassName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["View","Text","TouchableWithoutFeedback","TouchableOpacity","Icon","compose","withPreferredColorScheme","coreBlocks","normalizeIconObject","rawHandler","serialize","Component","__","_x","sprintf","help","plugins","withSelect","withDispatch","applyFilters","UnsupportedBlockDetails","store","blockEditorStore","noticesStore","styles","jsx","_jsx","jsxs","_jsxs","UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","EMPTY_ARRAY","UnsupportedBlockEdit","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","setState","componentWillUnmount","timeout","clearTimeout","getTitle","originalName","attributes","blockType","title","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","infoIcon","infoIconDark","onPress","style","helpIconContainer","accessibilityLabel","accessibilityRole","accessibilityHint","children","className","label","icon","fill","color","isSelected","selectBlock","canEnableUnsupportedBlockEditor","isUnsupportedBlockEditorSupported","sendButtonPressMessage","sendFallbackMessage","renderSheet","blockTitle","blockName","block","clientId","createSuccessNotice","replaceBlocks","titleFormat","description","customActions","successNotice","showSheet","onCloseSheet","customBlockTitle","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","settings","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","disabled","unsupportedBlock","unsupportedBlockDark","unsupportedBlockHeader","src","select","getBlock","getSettings","capabilities","unsupportedBlockEditor","isEditableInUnsupportedBlockEditor","includes","dispatch","ownProps","HTML"],"sources":["@wordpress/block-library/src/missing/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tText,\n\tTouchableWithoutFeedback,\n\tTouchableOpacity,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Icon } from '@wordpress/components';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { coreBlocks } from '@wordpress/block-library';\nimport { normalizeIconObject, rawHandler, serialize } from '@wordpress/blocks';\nimport { Component } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { help, plugins } from '@wordpress/icons';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\nimport {\n\tUnsupportedBlockDetails,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n// Blocks that can't be edited through the Unsupported block editor identified by their name.\nconst UBE_INCOMPATIBLE_BLOCKS = [ 'core/block' ];\nconst I18N_BLOCK_SCHEMA_TITLE = 'block title';\n\nconst EMPTY_ARRAY = [];\n\nexport class UnsupportedBlockEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = { showHelp: false };\n\t\tthis.toggleSheet = this.toggleSheet.bind( this );\n\t\tthis.closeSheet = this.closeSheet.bind( this );\n\t\tthis.requestFallback = this.requestFallback.bind( this );\n\t\tthis.onHelpButtonPressed = this.onHelpButtonPressed.bind( this );\n\t}\n\n\ttoggleSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: ! this.state.showHelp,\n\t\t} );\n\t}\n\n\tcloseSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: false,\n\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.timeout ) {\n\t\t\tclearTimeout( this.timeout );\n\t\t}\n\t}\n\n\tgetTitle() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst blockType = coreBlocks[ originalName ];\n\t\tconst title = blockType?.metadata.title;\n\t\tconst textdomain = blockType?.metadata.textdomain;\n\n\t\treturn title && textdomain\n\t\t\t? // eslint-disable-next-line @wordpress/i18n-no-variables, @wordpress/i18n-text-domain\n\t\t\t _x( title, I18N_BLOCK_SCHEMA_TITLE, textdomain )\n\t\t\t: originalName;\n\t}\n\n\trenderHelpIcon() {\n\t\tconst infoIconStyle = this.props.getStylesFromColorScheme(\n\t\t\tstyles.infoIcon,\n\t\t\tstyles.infoIconDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tonPress={ this.onHelpButtonPressed }\n\t\t\t\tstyle={ styles.helpIconContainer }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole=\"button\"\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"unsupported-icon-help\"\n\t\t\t\t\tlabel={ __( 'Help icon' ) }\n\t\t\t\t\ticon={ help }\n\t\t\t\t\tfill={ infoIconStyle.color }\n\t\t\t\t/>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\tonHelpButtonPressed() {\n\t\tif ( ! this.props.isSelected ) {\n\t\t\tthis.props.selectBlock();\n\t\t}\n\t\tthis.toggleSheet();\n\t}\n\n\trequestFallback() {\n\t\tif (\n\t\t\tthis.props.canEnableUnsupportedBlockEditor &&\n\t\t\tthis.props.isUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendButtonPressMessage: true } );\n\t\t} else {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendFallbackMessage: true } );\n\t\t}\n\t}\n\n\trenderSheet( blockTitle, blockName ) {\n\t\tconst { block, clientId, createSuccessNotice, replaceBlocks } =\n\t\t\tthis.props;\n\t\tconst { showHelp } = this.state;\n\n\t\t/* translators: Missing block alert title. %s: The localized block name */\n\t\tconst titleFormat = __( \"'%s' is not fully-supported\" );\n\t\tconst title = sprintf( titleFormat, blockTitle );\n\t\tlet description = applyFilters(\n\t\t\t'native.missing_block_detail',\n\t\t\t__( 'We are working hard to add more blocks with each release.' ),\n\t\t\tblockName\n\t\t);\n\t\tlet customActions = EMPTY_ARRAY;\n\n\t\t// For Classic blocks, we offer the alternative to convert the content to blocks.\n\t\tif ( blockName === 'core/freeform' ) {\n\t\t\tdescription +=\n\t\t\t\t' ' +\n\t\t\t\t__( 'Alternatively, you can convert the content to blocks.' );\n\t\t\t/* translators: displayed right after the classic block is converted to blocks. %s: The localized classic block name */\n\t\t\tconst successNotice = __( \"'%s' block converted to blocks\" );\n\t\t\tcustomActions = [\n\t\t\t\t{\n\t\t\t\t\tlabel: __( 'Convert to blocks' ),\n\t\t\t\t\tonPress: () => {\n\t\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\t\tsprintf( successNotice, blockTitle )\n\t\t\t\t\t\t);\n\t\t\t\t\t\treplaceBlocks( block );\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\n\t\treturn (\n\t\t\t<UnsupportedBlockDetails\n\t\t\t\tclientId={ clientId }\n\t\t\t\tshowSheet={ showHelp }\n\t\t\t\tonCloseSheet={ this.closeSheet }\n\t\t\t\tcustomBlockTitle={ blockTitle }\n\t\t\t\ttitle={ title }\n\t\t\t\tdescription={ description }\n\t\t\t\tcustomActions={ customActions }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst { getStylesFromColorScheme, preferredColorScheme } = this.props;\n\t\tconst blockType = coreBlocks[ originalName ];\n\n\t\tconst title = this.getTitle();\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockMessage,\n\t\t\tstyles.unsupportedBlockMessageDark\n\t\t);\n\n\t\tconst subTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockSubtitle,\n\t\t\tstyles.unsupportedBlockSubtitleDark\n\t\t);\n\n\t\tconst subtitle = (\n\t\t\t<Text style={ subTitleStyle }>{ __( 'Unsupported' ) }</Text>\n\t\t);\n\n\t\tconst icon = blockType\n\t\t\t? normalizeIconObject( blockType.settings.icon )\n\t\t\t: plugins;\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockIcon,\n\t\t\tstyles.unsupportedBlockIconDark\n\t\t);\n\t\tconst iconClassName = 'unsupported-icon' + '-' + preferredColorScheme;\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! this.props.isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole=\"button\"\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\t\t\tstyles.unsupportedBlock,\n\t\t\t\t\t\tstyles.unsupportedBlockDark\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ this.renderHelpIcon() }\n\t\t\t\t\t<View style={ styles.unsupportedBlockHeader }>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tclassName={ iconClassName }\n\t\t\t\t\t\t\ticon={ icon && icon.src ? icon.src : icon }\n\t\t\t\t\t\t\tfill={ iconStyle.color }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Text style={ titleStyle }>{ title }</Text>\n\t\t\t\t\t</View>\n\t\t\t\t\t{ subtitle }\n\t\t\t\t\t{ this.renderSheet( title, originalName ) }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { attributes, clientId } ) => {\n\t\tconst { getBlock, getSettings } = select( blockEditorStore );\n\t\tconst { capabilities } = getSettings();\n\t\treturn {\n\t\t\tisUnsupportedBlockEditorSupported:\n\t\t\t\tcapabilities?.unsupportedBlockEditor === true,\n\t\t\tcanEnableUnsupportedBlockEditor:\n\t\t\t\tcapabilities?.canEnableUnsupportedBlockEditor === true,\n\t\t\tisEditableInUnsupportedBlockEditor:\n\t\t\t\t! UBE_INCOMPATIBLE_BLOCKS.includes( attributes.originalName ),\n\t\t\tblock: getBlock( clientId ),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => {\n\t\tconst { selectBlock, replaceBlocks } = dispatch( blockEditorStore );\n\t\tconst { createSuccessNotice } = dispatch( noticesStore );\n\t\treturn {\n\t\t\tselectBlock() {\n\t\t\t\tselectBlock( ownProps.clientId );\n\t\t\t},\n\t\t\treplaceBlocks( block ) {\n\t\t\t\treplaceBlocks(\n\t\t\t\t\townProps.clientId,\n\t\t\t\t\trawHandler( { HTML: serialize( block ) } )\n\t\t\t\t);\n\t\t\t},\n\t\t\tcreateSuccessNotice,\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( UnsupportedBlockEdit );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["View","Text","TouchableOpacity","Icon","compose","withPreferredColorScheme","coreBlocks","normalizeIconObject","rawHandler","serialize","Component","__","_x","sprintf","help","plugins","withSelect","withDispatch","applyFilters","UnsupportedBlockDetails","store","blockEditorStore","noticesStore","requestUnsupportedBlockFallback","styles","jsx","_jsx","jsxs","_jsxs","UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","EMPTY_ARRAY","UnsupportedBlockEdit","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","attributes","block","clientId","originalName","title","getTitle","blockContent","canEditUnsupportedBlock","setState","canEnableUnsupportedBlockEditor","isEditableInUnsupportedBlockEditor","isUnsupportedBlockEditorSupported","componentWillUnmount","timeout","clearTimeout","blockType","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","infoIcon","infoIconDark","onPress","style","helpIconContainer","accessibilityLabel","accessibilityRole","accessibilityHint","children","className","label","icon","fill","color","isSelected","selectBlock","sendButtonPressMessage","sendFallbackMessage","renderSheet","blockTitle","blockName","createSuccessNotice","replaceBlocks","titleFormat","description","customActions","successNotice","showSheet","onCloseSheet","customBlockTitle","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","settings","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","disabled","activeOpacity","unsupportedBlock","unsupportedBlockDark","unsupportedBlockHeader","src","select","getBlock","getSettings","capabilities","unsupportedBlockEditor","includes","dispatch","ownProps","HTML"],"sources":["@wordpress/block-library/src/missing/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Text, TouchableOpacity } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Icon } from '@wordpress/components';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { coreBlocks } from '@wordpress/block-library';\nimport { normalizeIconObject, rawHandler, serialize } from '@wordpress/blocks';\nimport { Component } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { help, plugins } from '@wordpress/icons';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\nimport {\n\tUnsupportedBlockDetails,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { requestUnsupportedBlockFallback } from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n// Blocks that can't be edited through the Unsupported block editor identified by their name.\nconst UBE_INCOMPATIBLE_BLOCKS = [ 'core/block' ];\nconst I18N_BLOCK_SCHEMA_TITLE = 'block title';\n\nconst EMPTY_ARRAY = [];\n\nexport class UnsupportedBlockEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = { showHelp: false };\n\t\tthis.toggleSheet = this.toggleSheet.bind( this );\n\t\tthis.closeSheet = this.closeSheet.bind( this );\n\t\tthis.requestFallback = this.requestFallback.bind( this );\n\t\tthis.onHelpButtonPressed = this.onHelpButtonPressed.bind( this );\n\t}\n\n\ttoggleSheet() {\n\t\tconst { attributes, block, clientId } = this.props;\n\t\tconst { originalName } = attributes;\n\t\tconst title = this.getTitle();\n\t\tconst blockContent = serialize( block ? [ block ] : [] );\n\n\t\tif ( this.canEditUnsupportedBlock() ) {\n\t\t\trequestUnsupportedBlockFallback(\n\t\t\t\tblockContent,\n\t\t\t\tclientId,\n\t\t\t\toriginalName,\n\t\t\t\ttitle\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tthis.setState( {\n\t\t\tshowHelp: ! this.state.showHelp,\n\t\t} );\n\t}\n\n\tcanEditUnsupportedBlock() {\n\t\tconst {\n\t\t\tcanEnableUnsupportedBlockEditor,\n\t\t\tisEditableInUnsupportedBlockEditor,\n\t\t\tisUnsupportedBlockEditorSupported,\n\t\t} = this.props;\n\n\t\treturn (\n\t\t\t! canEnableUnsupportedBlockEditor &&\n\t\t\tisUnsupportedBlockEditorSupported &&\n\t\t\tisEditableInUnsupportedBlockEditor\n\t\t);\n\t}\n\n\tcloseSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: false,\n\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.timeout ) {\n\t\t\tclearTimeout( this.timeout );\n\t\t}\n\t}\n\n\tgetTitle() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst blockType = coreBlocks[ originalName ];\n\t\tconst title = blockType?.metadata.title;\n\t\tconst textdomain = blockType?.metadata.textdomain;\n\n\t\treturn title && textdomain\n\t\t\t? // eslint-disable-next-line @wordpress/i18n-no-variables, @wordpress/i18n-text-domain\n\t\t\t _x( title, I18N_BLOCK_SCHEMA_TITLE, textdomain )\n\t\t\t: originalName;\n\t}\n\n\trenderHelpIcon() {\n\t\tconst infoIconStyle = this.props.getStylesFromColorScheme(\n\t\t\tstyles.infoIcon,\n\t\t\tstyles.infoIconDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tonPress={ this.onHelpButtonPressed }\n\t\t\t\tstyle={ styles.helpIconContainer }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole=\"button\"\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"unsupported-icon-help\"\n\t\t\t\t\tlabel={ __( 'Help icon' ) }\n\t\t\t\t\ticon={ help }\n\t\t\t\t\tfill={ infoIconStyle.color }\n\t\t\t\t/>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n\n\tonHelpButtonPressed() {\n\t\tif ( ! this.props.isSelected ) {\n\t\t\tthis.props.selectBlock();\n\t\t}\n\t\tthis.toggleSheet();\n\t}\n\n\trequestFallback() {\n\t\tif (\n\t\t\tthis.props.canEnableUnsupportedBlockEditor &&\n\t\t\tthis.props.isUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendButtonPressMessage: true } );\n\t\t} else {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendFallbackMessage: true } );\n\t\t}\n\t}\n\n\trenderSheet( blockTitle, blockName ) {\n\t\tconst { block, clientId, createSuccessNotice, replaceBlocks } =\n\t\t\tthis.props;\n\t\tconst { showHelp } = this.state;\n\n\t\t/* translators: Missing block alert title. %s: The localized block name */\n\t\tconst titleFormat = __( \"'%s' is not fully-supported\" );\n\t\tconst title = sprintf( titleFormat, blockTitle );\n\t\tlet description = applyFilters(\n\t\t\t'native.missing_block_detail',\n\t\t\t__( 'We are working hard to add more blocks with each release.' ),\n\t\t\tblockName\n\t\t);\n\t\tlet customActions = EMPTY_ARRAY;\n\n\t\t// For Classic blocks, we offer the alternative to convert the content to blocks.\n\t\tif ( blockName === 'core/freeform' ) {\n\t\t\tdescription +=\n\t\t\t\t' ' +\n\t\t\t\t__( 'Alternatively, you can convert the content to blocks.' );\n\t\t\t/* translators: displayed right after the classic block is converted to blocks. %s: The localized classic block name */\n\t\t\tconst successNotice = __( \"'%s' block converted to blocks\" );\n\t\t\tcustomActions = [\n\t\t\t\t{\n\t\t\t\t\tlabel: __( 'Convert to blocks' ),\n\t\t\t\t\tonPress: () => {\n\t\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\t\tsprintf( successNotice, blockTitle )\n\t\t\t\t\t\t);\n\t\t\t\t\t\treplaceBlocks( block );\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\n\t\treturn (\n\t\t\t<UnsupportedBlockDetails\n\t\t\t\tclientId={ clientId }\n\t\t\t\tshowSheet={ showHelp }\n\t\t\t\tonCloseSheet={ this.closeSheet }\n\t\t\t\tcustomBlockTitle={ blockTitle }\n\t\t\t\ttitle={ title }\n\t\t\t\tdescription={ description }\n\t\t\t\tcustomActions={ customActions }\n\t\t\t/>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst { isSelected, getStylesFromColorScheme, preferredColorScheme } =\n\t\t\tthis.props;\n\t\tconst blockType = coreBlocks[ originalName ];\n\n\t\tconst title = this.getTitle();\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockMessage,\n\t\t\tstyles.unsupportedBlockMessageDark\n\t\t);\n\n\t\tconst subTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockSubtitle,\n\t\t\tstyles.unsupportedBlockSubtitleDark\n\t\t);\n\n\t\tconst subtitle = (\n\t\t\t<Text style={ subTitleStyle }>\n\t\t\t\t{ this.canEditUnsupportedBlock()\n\t\t\t\t\t? __( 'Tap to edit' )\n\t\t\t\t\t: __( 'Unsupported' ) }\n\t\t\t</Text>\n\t\t);\n\n\t\tconst icon = blockType\n\t\t\t? normalizeIconObject( blockType.settings.icon )\n\t\t\t: plugins;\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockIcon,\n\t\t\tstyles.unsupportedBlockIconDark\n\t\t);\n\t\tconst iconClassName = 'unsupported-icon' + '-' + preferredColorScheme;\n\t\treturn (\n\t\t\t<TouchableOpacity\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\tactiveOpacity={ 0.5 }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole=\"button\"\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\t\t\tstyles.unsupportedBlock,\n\t\t\t\t\t\tstyles.unsupportedBlockDark\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ ! this.canEditUnsupportedBlock() &&\n\t\t\t\t\t\tthis.renderHelpIcon() }\n\t\t\t\t\t<View style={ styles.unsupportedBlockHeader }>\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\tclassName={ iconClassName }\n\t\t\t\t\t\t\ticon={ icon && icon.src ? icon.src : icon }\n\t\t\t\t\t\t\tfill={ iconStyle.color }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Text style={ titleStyle }>{ title }</Text>\n\t\t\t\t\t</View>\n\t\t\t\t\t{ subtitle }\n\t\t\t\t\t{ this.renderSheet( title, originalName ) }\n\t\t\t\t</View>\n\t\t\t</TouchableOpacity>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { attributes, clientId } ) => {\n\t\tconst { getBlock, getSettings } = select( blockEditorStore );\n\t\tconst { capabilities } = getSettings();\n\t\treturn {\n\t\t\tisUnsupportedBlockEditorSupported:\n\t\t\t\tcapabilities?.unsupportedBlockEditor === true,\n\t\t\tcanEnableUnsupportedBlockEditor:\n\t\t\t\tcapabilities?.canEnableUnsupportedBlockEditor === true,\n\t\t\tisEditableInUnsupportedBlockEditor:\n\t\t\t\t! UBE_INCOMPATIBLE_BLOCKS.includes( attributes.originalName ),\n\t\t\tblock: getBlock( clientId ),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => {\n\t\tconst { selectBlock, replaceBlocks } = dispatch( blockEditorStore );\n\t\tconst { createSuccessNotice } = dispatch( noticesStore );\n\t\treturn {\n\t\t\tselectBlock() {\n\t\t\t\tselectBlock( ownProps.clientId );\n\t\t\t},\n\t\t\treplaceBlocks( block ) {\n\t\t\t\treplaceBlocks(\n\t\t\t\t\townProps.clientId,\n\t\t\t\t\trawHandler( { HTML: serialize( block ) } )\n\t\t\t\t);\n\t\t\t},\n\t\t\tcreateSuccessNotice,\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( UnsupportedBlockEdit );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -127,7 +127,7 @@ const {
|
|
|
127
127
|
// If focus is outside modal, and in the document, close menu
|
|
128
128
|
// event.target === The element losing focus
|
|
129
129
|
// event.relatedTarget === The element receiving focus (if any)
|
|
130
|
-
// When focusout is
|
|
130
|
+
// When focusout is outside the document,
|
|
131
131
|
// `window.document.activeElement` doesn't change.
|
|
132
132
|
|
|
133
133
|
// The event.relatedTarget is null when something outside the navigation menu is clicked. This is only necessary for Safari.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","getContext","getElement","focusableSelectors","document","addEventListener","state","actions","roleAttribute","ctx","type","isMenuOpen","ariaModal","ariaLabel","Object","values","menuOpenedBy","filter","Boolean","length","overlayOpenedBy","submenuOpenedBy","openMenuOnHover","openMenu","closeMenuOnHover","closeMenu","openMenuOnClick","ref","previousFocus","closeMenuOnClick","openMenuOnFocus","toggleMenuOnClick","window","activeElement","focus","click","handleMenuKeydown","event","firstFocusableElement","lastFocusableElement","key","shiftKey","preventDefault","handleMenuFocusout","modal","relatedTarget","contains","target","menuOpenedOn","documentElement","classList","add","menuClosedOn","remove","callbacks","initMenu","focusableElements","querySelectorAll","focusFirstElement","lock"],"sources":["@wordpress/block-library/src/navigation/view.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store, getContext, getElement } from '@wordpress/interactivity';\n\nconst focusableSelectors = [\n\t'a[href]',\n\t'input:not([disabled]):not([type=\"hidden\"]):not([aria-hidden])',\n\t'select:not([disabled]):not([aria-hidden])',\n\t'textarea:not([disabled]):not([aria-hidden])',\n\t'button:not([disabled]):not([aria-hidden])',\n\t'[contenteditable]',\n\t'[tabindex]:not([tabindex^=\"-\"])',\n];\n\n// This is a fix for Safari in iOS/iPadOS. Without it, Safari doesn't focus out\n// when the user taps in the body. It can be removed once we add an overlay to\n// capture the clicks, instead of relying on the focusout event.\ndocument.addEventListener( 'click', () => {} );\n\nconst { state, actions } = store(\n\t'core/navigation',\n\t{\n\t\tstate: {\n\t\t\tget roleAttribute() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn ctx.type === 'overlay' && state.isMenuOpen\n\t\t\t\t\t? 'dialog'\n\t\t\t\t\t: null;\n\t\t\t},\n\t\t\tget ariaModal() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn ctx.type === 'overlay' && state.isMenuOpen\n\t\t\t\t\t? 'true'\n\t\t\t\t\t: null;\n\t\t\t},\n\t\t\tget ariaLabel() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn ctx.type === 'overlay' && state.isMenuOpen\n\t\t\t\t\t? ctx.ariaLabel\n\t\t\t\t\t: null;\n\t\t\t},\n\t\t\tget isMenuOpen() {\n\t\t\t\t// The menu is opened if either `click`, `hover` or `focus` is true.\n\t\t\t\treturn (\n\t\t\t\t\tObject.values( state.menuOpenedBy ).filter( Boolean )\n\t\t\t\t\t\t.length > 0\n\t\t\t\t);\n\t\t\t},\n\t\t\tget menuOpenedBy() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn ctx.type === 'overlay'\n\t\t\t\t\t? ctx.overlayOpenedBy\n\t\t\t\t\t: ctx.submenuOpenedBy;\n\t\t\t},\n\t\t},\n\t\tactions: {\n\t\t\topenMenuOnHover() {\n\t\t\t\tconst { type, overlayOpenedBy } = getContext();\n\t\t\t\tif (\n\t\t\t\t\ttype === 'submenu' &&\n\t\t\t\t\t// Only open on hover if the overlay is closed.\n\t\t\t\t\tObject.values( overlayOpenedBy || {} ).filter( Boolean )\n\t\t\t\t\t\t.length === 0\n\t\t\t\t) {\n\t\t\t\t\tactions.openMenu( 'hover' );\n\t\t\t\t}\n\t\t\t},\n\t\t\tcloseMenuOnHover() {\n\t\t\t\tconst { type, overlayOpenedBy } = getContext();\n\t\t\t\tif (\n\t\t\t\t\ttype === 'submenu' &&\n\t\t\t\t\t// Only close on hover if the overlay is closed.\n\t\t\t\t\tObject.values( overlayOpenedBy || {} ).filter( Boolean )\n\t\t\t\t\t\t.length === 0\n\t\t\t\t) {\n\t\t\t\t\tactions.closeMenu( 'hover' );\n\t\t\t\t}\n\t\t\t},\n\t\t\topenMenuOnClick() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tctx.previousFocus = ref;\n\t\t\t\tactions.openMenu( 'click' );\n\t\t\t},\n\t\t\tcloseMenuOnClick() {\n\t\t\t\tactions.closeMenu( 'click' );\n\t\t\t\tactions.closeMenu( 'focus' );\n\t\t\t},\n\t\t\topenMenuOnFocus() {\n\t\t\t\tactions.openMenu( 'focus' );\n\t\t\t},\n\t\t\ttoggleMenuOnClick() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\t// Safari won't send focus to the clicked element, so we need to manually place it: https://bugs.webkit.org/show_bug.cgi?id=22261\n\t\t\t\tif ( window.document.activeElement !== ref ) {\n\t\t\t\t\tref.focus();\n\t\t\t\t}\n\t\t\t\tconst { menuOpenedBy } = state;\n\t\t\t\tif ( menuOpenedBy.click || menuOpenedBy.focus ) {\n\t\t\t\t\tactions.closeMenu( 'click' );\n\t\t\t\t\tactions.closeMenu( 'focus' );\n\t\t\t\t} else {\n\t\t\t\t\tctx.previousFocus = ref;\n\t\t\t\t\tactions.openMenu( 'click' );\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleMenuKeydown( event ) {\n\t\t\t\tconst { type, firstFocusableElement, lastFocusableElement } =\n\t\t\t\t\tgetContext();\n\t\t\t\tif ( state.menuOpenedBy.click ) {\n\t\t\t\t\t// If Escape close the menu.\n\t\t\t\t\tif ( event?.key === 'Escape' ) {\n\t\t\t\t\t\tactions.closeMenu( 'click' );\n\t\t\t\t\t\tactions.closeMenu( 'focus' );\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Trap focus if it is an overlay (main menu).\n\t\t\t\t\tif ( type === 'overlay' && event.key === 'Tab' ) {\n\t\t\t\t\t\t// If shift + tab it change the direction.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tevent.shiftKey &&\n\t\t\t\t\t\t\twindow.document.activeElement ===\n\t\t\t\t\t\t\t\tfirstFocusableElement\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\tlastFocusableElement.focus();\n\t\t\t\t\t\t} else if (\n\t\t\t\t\t\t\t! event.shiftKey &&\n\t\t\t\t\t\t\twindow.document.activeElement ===\n\t\t\t\t\t\t\t\tlastFocusableElement\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\tfirstFocusableElement.focus();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleMenuFocusout( event ) {\n\t\t\t\tconst { modal, type } = getContext();\n\t\t\t\t// If focus is outside modal, and in the document, close menu\n\t\t\t\t// event.target === The element losing focus\n\t\t\t\t// event.relatedTarget === The element receiving focus (if any)\n\t\t\t\t// When focusout is outsite the document,\n\t\t\t\t// `window.document.activeElement` doesn't change.\n\n\t\t\t\t// The event.relatedTarget is null when something outside the navigation menu is clicked. This is only necessary for Safari.\n\t\t\t\tif (\n\t\t\t\t\tevent.relatedTarget === null ||\n\t\t\t\t\t( ! modal?.contains( event.relatedTarget ) &&\n\t\t\t\t\t\tevent.target !== window.document.activeElement &&\n\t\t\t\t\t\ttype === 'submenu' )\n\t\t\t\t) {\n\t\t\t\t\tactions.closeMenu( 'click' );\n\t\t\t\t\tactions.closeMenu( 'focus' );\n\t\t\t\t}\n\t\t\t},\n\n\t\t\topenMenu( menuOpenedOn = 'click' ) {\n\t\t\t\tconst { type } = getContext();\n\t\t\t\tstate.menuOpenedBy[ menuOpenedOn ] = true;\n\t\t\t\tif ( type === 'overlay' ) {\n\t\t\t\t\t// Add a `has-modal-open` class to the <html> root.\n\t\t\t\t\tdocument.documentElement.classList.add( 'has-modal-open' );\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tcloseMenu( menuClosedOn = 'click' ) {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tstate.menuOpenedBy[ menuClosedOn ] = false;\n\t\t\t\t// Check if the menu is still open or not.\n\t\t\t\tif ( ! state.isMenuOpen ) {\n\t\t\t\t\tif (\n\t\t\t\t\t\tctx.modal?.contains( window.document.activeElement )\n\t\t\t\t\t) {\n\t\t\t\t\t\tctx.previousFocus?.focus();\n\t\t\t\t\t}\n\t\t\t\t\tctx.modal = null;\n\t\t\t\t\tctx.previousFocus = null;\n\t\t\t\t\tif ( ctx.type === 'overlay' ) {\n\t\t\t\t\t\tdocument.documentElement.classList.remove(\n\t\t\t\t\t\t\t'has-modal-open'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tcallbacks: {\n\t\t\tinitMenu() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tif ( state.isMenuOpen ) {\n\t\t\t\t\tconst focusableElements =\n\t\t\t\t\t\tref.querySelectorAll( focusableSelectors );\n\t\t\t\t\tctx.modal = ref;\n\t\t\t\t\tctx.firstFocusableElement = focusableElements[ 0 ];\n\t\t\t\t\tctx.lastFocusableElement =\n\t\t\t\t\t\tfocusableElements[ focusableElements.length - 1 ];\n\t\t\t\t}\n\t\t\t},\n\t\t\tfocusFirstElement() {\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tif ( state.isMenuOpen ) {\n\t\t\t\t\tconst focusableElements =\n\t\t\t\t\t\tref.querySelectorAll( focusableSelectors );\n\t\t\t\t\tfocusableElements?.[ 0 ]?.focus();\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\t{ lock: true }\n);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["store","getContext","getElement","focusableSelectors","document","addEventListener","state","actions","roleAttribute","ctx","type","isMenuOpen","ariaModal","ariaLabel","Object","values","menuOpenedBy","filter","Boolean","length","overlayOpenedBy","submenuOpenedBy","openMenuOnHover","openMenu","closeMenuOnHover","closeMenu","openMenuOnClick","ref","previousFocus","closeMenuOnClick","openMenuOnFocus","toggleMenuOnClick","window","activeElement","focus","click","handleMenuKeydown","event","firstFocusableElement","lastFocusableElement","key","shiftKey","preventDefault","handleMenuFocusout","modal","relatedTarget","contains","target","menuOpenedOn","documentElement","classList","add","menuClosedOn","remove","callbacks","initMenu","focusableElements","querySelectorAll","focusFirstElement","lock"],"sources":["@wordpress/block-library/src/navigation/view.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store, getContext, getElement } from '@wordpress/interactivity';\n\nconst focusableSelectors = [\n\t'a[href]',\n\t'input:not([disabled]):not([type=\"hidden\"]):not([aria-hidden])',\n\t'select:not([disabled]):not([aria-hidden])',\n\t'textarea:not([disabled]):not([aria-hidden])',\n\t'button:not([disabled]):not([aria-hidden])',\n\t'[contenteditable]',\n\t'[tabindex]:not([tabindex^=\"-\"])',\n];\n\n// This is a fix for Safari in iOS/iPadOS. Without it, Safari doesn't focus out\n// when the user taps in the body. It can be removed once we add an overlay to\n// capture the clicks, instead of relying on the focusout event.\ndocument.addEventListener( 'click', () => {} );\n\nconst { state, actions } = store(\n\t'core/navigation',\n\t{\n\t\tstate: {\n\t\t\tget roleAttribute() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn ctx.type === 'overlay' && state.isMenuOpen\n\t\t\t\t\t? 'dialog'\n\t\t\t\t\t: null;\n\t\t\t},\n\t\t\tget ariaModal() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn ctx.type === 'overlay' && state.isMenuOpen\n\t\t\t\t\t? 'true'\n\t\t\t\t\t: null;\n\t\t\t},\n\t\t\tget ariaLabel() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn ctx.type === 'overlay' && state.isMenuOpen\n\t\t\t\t\t? ctx.ariaLabel\n\t\t\t\t\t: null;\n\t\t\t},\n\t\t\tget isMenuOpen() {\n\t\t\t\t// The menu is opened if either `click`, `hover` or `focus` is true.\n\t\t\t\treturn (\n\t\t\t\t\tObject.values( state.menuOpenedBy ).filter( Boolean )\n\t\t\t\t\t\t.length > 0\n\t\t\t\t);\n\t\t\t},\n\t\t\tget menuOpenedBy() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn ctx.type === 'overlay'\n\t\t\t\t\t? ctx.overlayOpenedBy\n\t\t\t\t\t: ctx.submenuOpenedBy;\n\t\t\t},\n\t\t},\n\t\tactions: {\n\t\t\topenMenuOnHover() {\n\t\t\t\tconst { type, overlayOpenedBy } = getContext();\n\t\t\t\tif (\n\t\t\t\t\ttype === 'submenu' &&\n\t\t\t\t\t// Only open on hover if the overlay is closed.\n\t\t\t\t\tObject.values( overlayOpenedBy || {} ).filter( Boolean )\n\t\t\t\t\t\t.length === 0\n\t\t\t\t) {\n\t\t\t\t\tactions.openMenu( 'hover' );\n\t\t\t\t}\n\t\t\t},\n\t\t\tcloseMenuOnHover() {\n\t\t\t\tconst { type, overlayOpenedBy } = getContext();\n\t\t\t\tif (\n\t\t\t\t\ttype === 'submenu' &&\n\t\t\t\t\t// Only close on hover if the overlay is closed.\n\t\t\t\t\tObject.values( overlayOpenedBy || {} ).filter( Boolean )\n\t\t\t\t\t\t.length === 0\n\t\t\t\t) {\n\t\t\t\t\tactions.closeMenu( 'hover' );\n\t\t\t\t}\n\t\t\t},\n\t\t\topenMenuOnClick() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tctx.previousFocus = ref;\n\t\t\t\tactions.openMenu( 'click' );\n\t\t\t},\n\t\t\tcloseMenuOnClick() {\n\t\t\t\tactions.closeMenu( 'click' );\n\t\t\t\tactions.closeMenu( 'focus' );\n\t\t\t},\n\t\t\topenMenuOnFocus() {\n\t\t\t\tactions.openMenu( 'focus' );\n\t\t\t},\n\t\t\ttoggleMenuOnClick() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\t// Safari won't send focus to the clicked element, so we need to manually place it: https://bugs.webkit.org/show_bug.cgi?id=22261\n\t\t\t\tif ( window.document.activeElement !== ref ) {\n\t\t\t\t\tref.focus();\n\t\t\t\t}\n\t\t\t\tconst { menuOpenedBy } = state;\n\t\t\t\tif ( menuOpenedBy.click || menuOpenedBy.focus ) {\n\t\t\t\t\tactions.closeMenu( 'click' );\n\t\t\t\t\tactions.closeMenu( 'focus' );\n\t\t\t\t} else {\n\t\t\t\t\tctx.previousFocus = ref;\n\t\t\t\t\tactions.openMenu( 'click' );\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleMenuKeydown( event ) {\n\t\t\t\tconst { type, firstFocusableElement, lastFocusableElement } =\n\t\t\t\t\tgetContext();\n\t\t\t\tif ( state.menuOpenedBy.click ) {\n\t\t\t\t\t// If Escape close the menu.\n\t\t\t\t\tif ( event?.key === 'Escape' ) {\n\t\t\t\t\t\tactions.closeMenu( 'click' );\n\t\t\t\t\t\tactions.closeMenu( 'focus' );\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Trap focus if it is an overlay (main menu).\n\t\t\t\t\tif ( type === 'overlay' && event.key === 'Tab' ) {\n\t\t\t\t\t\t// If shift + tab it change the direction.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tevent.shiftKey &&\n\t\t\t\t\t\t\twindow.document.activeElement ===\n\t\t\t\t\t\t\t\tfirstFocusableElement\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\tlastFocusableElement.focus();\n\t\t\t\t\t\t} else if (\n\t\t\t\t\t\t\t! event.shiftKey &&\n\t\t\t\t\t\t\twindow.document.activeElement ===\n\t\t\t\t\t\t\t\tlastFocusableElement\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\tfirstFocusableElement.focus();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleMenuFocusout( event ) {\n\t\t\t\tconst { modal, type } = getContext();\n\t\t\t\t// If focus is outside modal, and in the document, close menu\n\t\t\t\t// event.target === The element losing focus\n\t\t\t\t// event.relatedTarget === The element receiving focus (if any)\n\t\t\t\t// When focusout is outside the document,\n\t\t\t\t// `window.document.activeElement` doesn't change.\n\n\t\t\t\t// The event.relatedTarget is null when something outside the navigation menu is clicked. This is only necessary for Safari.\n\t\t\t\tif (\n\t\t\t\t\tevent.relatedTarget === null ||\n\t\t\t\t\t( ! modal?.contains( event.relatedTarget ) &&\n\t\t\t\t\t\tevent.target !== window.document.activeElement &&\n\t\t\t\t\t\ttype === 'submenu' )\n\t\t\t\t) {\n\t\t\t\t\tactions.closeMenu( 'click' );\n\t\t\t\t\tactions.closeMenu( 'focus' );\n\t\t\t\t}\n\t\t\t},\n\n\t\t\topenMenu( menuOpenedOn = 'click' ) {\n\t\t\t\tconst { type } = getContext();\n\t\t\t\tstate.menuOpenedBy[ menuOpenedOn ] = true;\n\t\t\t\tif ( type === 'overlay' ) {\n\t\t\t\t\t// Add a `has-modal-open` class to the <html> root.\n\t\t\t\t\tdocument.documentElement.classList.add( 'has-modal-open' );\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tcloseMenu( menuClosedOn = 'click' ) {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tstate.menuOpenedBy[ menuClosedOn ] = false;\n\t\t\t\t// Check if the menu is still open or not.\n\t\t\t\tif ( ! state.isMenuOpen ) {\n\t\t\t\t\tif (\n\t\t\t\t\t\tctx.modal?.contains( window.document.activeElement )\n\t\t\t\t\t) {\n\t\t\t\t\t\tctx.previousFocus?.focus();\n\t\t\t\t\t}\n\t\t\t\t\tctx.modal = null;\n\t\t\t\t\tctx.previousFocus = null;\n\t\t\t\t\tif ( ctx.type === 'overlay' ) {\n\t\t\t\t\t\tdocument.documentElement.classList.remove(\n\t\t\t\t\t\t\t'has-modal-open'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tcallbacks: {\n\t\t\tinitMenu() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tif ( state.isMenuOpen ) {\n\t\t\t\t\tconst focusableElements =\n\t\t\t\t\t\tref.querySelectorAll( focusableSelectors );\n\t\t\t\t\tctx.modal = ref;\n\t\t\t\t\tctx.firstFocusableElement = focusableElements[ 0 ];\n\t\t\t\t\tctx.lastFocusableElement =\n\t\t\t\t\t\tfocusableElements[ focusableElements.length - 1 ];\n\t\t\t\t}\n\t\t\t},\n\t\t\tfocusFirstElement() {\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tif ( state.isMenuOpen ) {\n\t\t\t\t\tconst focusableElements =\n\t\t\t\t\t\tref.querySelectorAll( focusableSelectors );\n\t\t\t\t\tfocusableElements?.[ 0 ]?.focus();\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\t{ lock: true }\n);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","Modal","useInstanceId","__","jsx","_jsx","jsxs","_jsxs","convertDescription","ConvertToLinksModal","onClick","onClose","disabled","onRequestClose","title","className","aria","describedby","children","id","variant"],"sources":["@wordpress/block-library/src/page-list/convert-to-links-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, Modal } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\nexport const convertDescription = __(\n\t\"This Navigation Menu displays your website's pages. Editing it will enable you to add, delete, or reorder pages. However, new pages will no longer be added automatically.\"\n);\n\nexport function ConvertToLinksModal( { onClick, onClose, disabled } ) {\n\treturn (\n\t\t<Modal\n\t\t\tonRequestClose={ onClose }\n\t\t\ttitle={ __( 'Edit Page List' ) }\n\t\t\tclassName=\"wp-block-page-list-modal\"\n\t\t\taria={ {\n\t\t\t\tdescribedby: useInstanceId(\n\t\t\t\t\tConvertToLinksModal,\n\t\t\t\t\t'wp-block-page-list-modal__description'\n\t\t\t\t),\n\t\t\t} }\n\t\t>\n\t\t\t<p\n\t\t\t\tid={ useInstanceId(\n\t\t\t\t\tConvertToLinksModal,\n\t\t\t\t\t'wp-block-page-list-modal__description'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ convertDescription }\n\t\t\t</p>\n\t\t\t<div className=\"wp-block-page-list-modal-buttons\">\n\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t</Button>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,KAAK,QAAQ,uBAAuB;AACrD,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,EAAE,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAErC,OAAO,MAAMC,kBAAkB,GAAGL,EAAE,CACnC,4KACD,CAAC;AAED,OAAO,SAASM,mBAAmBA,CAAE;EAAEC,OAAO;EAAEC,OAAO;EAAEC;AAAS,CAAC,EAAG;EACrE,oBACCL,KAAA,CAACN,KAAK;IACLY,cAAc,EAAGF,OAAS;IAC1BG,KAAK,EAAGX,EAAE,CAAE,gBAAiB,CAAG;IAChCY,SAAS,EAAC,0BAA0B;IACpCC,IAAI,EAAG;MACNC,WAAW,EAAEf,aAAa,CACzBO,mBAAmB,EACnB,uCACD;IACD,CAAG;IAAAS,QAAA,gBAEHb,IAAA;MACCc,EAAE,EAAGjB,aAAa,CACjBO,mBAAmB,EACnB,uCACD,CAAG;MAAAS,QAAA,EAEDV;IAAkB,CAClB,CAAC,eACJD,KAAA;MAAKQ,SAAS,EAAC,kCAAkC;MAAAG,QAAA,gBAChDb,IAAA,CAACL,MAAM;QAACoB,OAAO,EAAC,UAAU;QAACV,OAAO,EAAGC,OAAS;QAAAO,QAAA,EAC3Cf,EAAE,CAAE,QAAS;MAAC,CACT,CAAC,eACTE,IAAA,CAACL,MAAM;QACNoB,OAAO,EAAC,SAAS;
|
|
1
|
+
{"version":3,"names":["Button","Modal","useInstanceId","__","jsx","_jsx","jsxs","_jsxs","convertDescription","ConvertToLinksModal","onClick","onClose","disabled","onRequestClose","title","className","aria","describedby","children","id","variant","__experimentalIsFocusable"],"sources":["@wordpress/block-library/src/page-list/convert-to-links-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, Modal } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\nexport const convertDescription = __(\n\t\"This Navigation Menu displays your website's pages. Editing it will enable you to add, delete, or reorder pages. However, new pages will no longer be added automatically.\"\n);\n\nexport function ConvertToLinksModal( { onClick, onClose, disabled } ) {\n\treturn (\n\t\t<Modal\n\t\t\tonRequestClose={ onClose }\n\t\t\ttitle={ __( 'Edit Page List' ) }\n\t\t\tclassName=\"wp-block-page-list-modal\"\n\t\t\taria={ {\n\t\t\t\tdescribedby: useInstanceId(\n\t\t\t\t\tConvertToLinksModal,\n\t\t\t\t\t'wp-block-page-list-modal__description'\n\t\t\t\t),\n\t\t\t} }\n\t\t>\n\t\t\t<p\n\t\t\t\tid={ useInstanceId(\n\t\t\t\t\tConvertToLinksModal,\n\t\t\t\t\t'wp-block-page-list-modal__description'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ convertDescription }\n\t\t\t</p>\n\t\t\t<div className=\"wp-block-page-list-modal-buttons\">\n\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t</Button>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,EAAEC,KAAK,QAAQ,uBAAuB;AACrD,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,EAAE,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAErC,OAAO,MAAMC,kBAAkB,GAAGL,EAAE,CACnC,4KACD,CAAC;AAED,OAAO,SAASM,mBAAmBA,CAAE;EAAEC,OAAO;EAAEC,OAAO;EAAEC;AAAS,CAAC,EAAG;EACrE,oBACCL,KAAA,CAACN,KAAK;IACLY,cAAc,EAAGF,OAAS;IAC1BG,KAAK,EAAGX,EAAE,CAAE,gBAAiB,CAAG;IAChCY,SAAS,EAAC,0BAA0B;IACpCC,IAAI,EAAG;MACNC,WAAW,EAAEf,aAAa,CACzBO,mBAAmB,EACnB,uCACD;IACD,CAAG;IAAAS,QAAA,gBAEHb,IAAA;MACCc,EAAE,EAAGjB,aAAa,CACjBO,mBAAmB,EACnB,uCACD,CAAG;MAAAS,QAAA,EAEDV;IAAkB,CAClB,CAAC,eACJD,KAAA;MAAKQ,SAAS,EAAC,kCAAkC;MAAAG,QAAA,gBAChDb,IAAA,CAACL,MAAM;QAACoB,OAAO,EAAC,UAAU;QAACV,OAAO,EAAGC,OAAS;QAAAO,QAAA,EAC3Cf,EAAE,CAAE,QAAS;MAAC,CACT,CAAC,eACTE,IAAA,CAACL,MAAM;QACNoB,OAAO,EAAC,SAAS;QACjBC,yBAAyB;QACzBT,QAAQ,EAAGA,QAAU;QACrBF,OAAO,EAAGA,OAAS;QAAAQ,QAAA,EAEjBf,EAAE,CAAE,MAAO;MAAC,CACP,CAAC;IAAA,CACL,CAAC;EAAA,CACA,CAAC;AAEV","ignoreList":[]}
|
|
@@ -267,6 +267,7 @@ export default function PageListEdit({
|
|
|
267
267
|
children: convertDescription
|
|
268
268
|
}), /*#__PURE__*/_jsx(Button, {
|
|
269
269
|
variant: "primary",
|
|
270
|
+
__experimentalIsFocusable: true,
|
|
270
271
|
disabled: !hasResolvedPages,
|
|
271
272
|
onClick: convertToNavigationLinks,
|
|
272
273
|
children: __('Edit')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","createBlock","InspectorControls","BlockControls","useBlockProps","useInnerBlocksProps","getColorClassName","store","blockEditorStore","Warning","PanelBody","ToolbarButton","Spinner","Notice","ComboboxControl","Button","__","sprintf","useMemo","useState","useEffect","useCallback","useEntityRecords","useSelect","useDispatch","useConvertToNavigationLinks","convertDescription","ConvertToLinksModal","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MAX_PAGE_COUNT","NOOP","BlockContent","blockProps","innerBlocksProps","hasResolvedPages","blockList","pages","parentPageID","children","className","status","isDismissible","length","parentPageDetails","find","page","id","title","rendered","PageListEdit","context","clientId","attributes","setAttributes","isOpen","setOpen","openModal","closeModal","records","hasResolved","per_page","_fields","orderby","order","allowConvertToLinks","pagesByParentId","Map","sortedPages","sort","a","b","menu_order","localeCompare","reduce","accumulator","parent","has","get","push","set","textColor","backgroundColor","style","color","pagesTree","makePagesTree","parentId","level","childPages","tree","hasChildren","item","value","label","repeat","rawName","getBlockList","template","pageProps","trim","link","url","isNested","hasSelectedChild","parentClientId","hasDraggedChild","isChildOfNavigation","select","getBlockParentsByBlockName","hasSelectedInnerBlock","hasDraggedInnerBlock","blockParents","navigationBlockParents","convertToNavigationLinks","renderAppender","__unstableDisableDropZone","templateLock","onInput","onChange","selectBlock","__next40pxDefaultSize","options","help","variant","disabled","onClick","group","onClose"],"sources":["@wordpress/block-library/src/page-list/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tgetColorClassName,\n\tstore as blockEditorStore,\n\tWarning,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tToolbarButton,\n\tSpinner,\n\tNotice,\n\tComboboxControl,\n\tButton,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo, useState, useEffect, useCallback } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useConvertToNavigationLinks } from './use-convert-to-navigation-links';\nimport {\n\tconvertDescription,\n\tConvertToLinksModal,\n} from './convert-to-links-modal';\n\n// We only show the edit option when page count is <= MAX_PAGE_COUNT\n// Performance of Navigation Links is not good past this value.\nconst MAX_PAGE_COUNT = 100;\nconst NOOP = () => {};\nfunction BlockContent( {\n\tblockProps,\n\tinnerBlocksProps,\n\thasResolvedPages,\n\tblockList,\n\tpages,\n\tparentPageID,\n} ) {\n\tif ( ! hasResolvedPages ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<div className=\"wp-block-page-list__loading-indicator-container\">\n\t\t\t\t\t<Spinner className=\"wp-block-page-list__loading-indicator\" />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages === null ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status=\"warning\" isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages.length === 0 ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status=\"info\" isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( blockList.length === 0 ) {\n\t\tconst parentPageDetails = pages.find(\n\t\t\t( page ) => page.id === parentPageID\n\t\t);\n\n\t\tif ( parentPageDetails?.title?.rendered ) {\n\t\t\treturn (\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t<Warning>\n\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t// translators: %s: Page title.\n\t\t\t\t\t\t\t__( 'Page List: \"%s\" page has no children.' ),\n\t\t\t\t\t\t\tparentPageDetails.title.rendered\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Warning>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status=\"warning\" isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages.length > 0 ) {\n\t\treturn <ul { ...innerBlocksProps }></ul>;\n\t}\n}\n\nexport default function PageListEdit( {\n\tcontext,\n\tclientId,\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst { parentPageID } = attributes;\n\tconst [ isOpen, setOpen ] = useState( false );\n\tconst openModal = useCallback( () => setOpen( true ), [] );\n\tconst closeModal = () => setOpen( false );\n\n\tconst { records: pages, hasResolved: hasResolvedPages } = useEntityRecords(\n\t\t'postType',\n\t\t'page',\n\t\t{\n\t\t\tper_page: MAX_PAGE_COUNT,\n\t\t\t_fields: [ 'id', 'link', 'menu_order', 'parent', 'title', 'type' ],\n\t\t\t// TODO: When https://core.trac.wordpress.org/ticket/39037 REST API support for multiple orderby\n\t\t\t// values is resolved, update 'orderby' to [ 'menu_order', 'post_title' ] to provide a consistent\n\t\t\t// sort.\n\t\t\torderby: 'menu_order',\n\t\t\torder: 'asc',\n\t\t}\n\t);\n\n\tconst allowConvertToLinks =\n\t\t'showSubmenuIcon' in context &&\n\t\tpages?.length > 0 &&\n\t\tpages?.length <= MAX_PAGE_COUNT;\n\n\tconst pagesByParentId = useMemo( () => {\n\t\tif ( pages === null ) {\n\t\t\treturn new Map();\n\t\t}\n\n\t\t// TODO: Once the REST API supports passing multiple values to\n\t\t// 'orderby', this can be removed.\n\t\t// https://core.trac.wordpress.org/ticket/39037\n\t\tconst sortedPages = pages.sort( ( a, b ) => {\n\t\t\tif ( a.menu_order === b.menu_order ) {\n\t\t\t\treturn a.title.rendered.localeCompare( b.title.rendered );\n\t\t\t}\n\t\t\treturn a.menu_order - b.menu_order;\n\t\t} );\n\n\t\treturn sortedPages.reduce( ( accumulator, page ) => {\n\t\t\tconst { parent } = page;\n\t\t\tif ( accumulator.has( parent ) ) {\n\t\t\t\taccumulator.get( parent ).push( page );\n\t\t\t} else {\n\t\t\t\taccumulator.set( parent, [ page ] );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, new Map() );\n\t}, [ pages ] );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( 'wp-block-page-list', {\n\t\t\t'has-text-color': !! context.textColor,\n\t\t\t[ getColorClassName( 'color', context.textColor ) ]:\n\t\t\t\t!! context.textColor,\n\t\t\t'has-background': !! context.backgroundColor,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tcontext.backgroundColor\n\t\t\t) ]: !! context.backgroundColor,\n\t\t} ),\n\t\tstyle: { ...context.style?.color },\n\t} );\n\n\tconst pagesTree = useMemo(\n\t\tfunction makePagesTree( parentId = 0, level = 0 ) {\n\t\t\tconst childPages = pagesByParentId.get( parentId );\n\n\t\t\tif ( ! childPages?.length ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn childPages.reduce( ( tree, page ) => {\n\t\t\t\tconst hasChildren = pagesByParentId.has( page.id );\n\t\t\t\tconst item = {\n\t\t\t\t\tvalue: page.id,\n\t\t\t\t\tlabel: '— '.repeat( level ) + page.title.rendered,\n\t\t\t\t\trawName: page.title.rendered,\n\t\t\t\t};\n\t\t\t\ttree.push( item );\n\t\t\t\tif ( hasChildren ) {\n\t\t\t\t\ttree.push( ...makePagesTree( page.id, level + 1 ) );\n\t\t\t\t}\n\t\t\t\treturn tree;\n\t\t\t}, [] );\n\t\t},\n\t\t[ pagesByParentId ]\n\t);\n\n\tconst blockList = useMemo(\n\t\tfunction getBlockList( parentId = parentPageID ) {\n\t\t\tconst childPages = pagesByParentId.get( parentId );\n\n\t\t\tif ( ! childPages?.length ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn childPages.reduce( ( template, page ) => {\n\t\t\t\tconst hasChildren = pagesByParentId.has( page.id );\n\t\t\t\tconst pageProps = {\n\t\t\t\t\tid: page.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t// translators: displayed when a page has an empty title.\n\t\t\t\t\t\tpage.title?.rendered?.trim() !== ''\n\t\t\t\t\t\t\t? page.title?.rendered\n\t\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ttitle: page.title?.rendered,\n\t\t\t\t\tlink: page.url,\n\t\t\t\t\thasChildren,\n\t\t\t\t};\n\t\t\t\tlet item = null;\n\t\t\t\tconst children = getBlockList( page.id );\n\t\t\t\titem = createBlock(\n\t\t\t\t\t'core/page-list-item',\n\t\t\t\t\tpageProps,\n\t\t\t\t\tchildren\n\t\t\t\t);\n\t\t\t\ttemplate.push( item );\n\n\t\t\t\treturn template;\n\t\t\t}, [] );\n\t\t},\n\t\t[ pagesByParentId, parentPageID ]\n\t);\n\n\tconst {\n\t\tisNested,\n\t\thasSelectedChild,\n\t\tparentClientId,\n\t\thasDraggedChild,\n\t\tisChildOfNavigation,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\thasDraggedInnerBlock,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst blockParents = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/navigation-submenu',\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tconst navigationBlockParents = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/navigation',\n\t\t\t\ttrue\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tisNested: blockParents.length > 0,\n\t\t\t\tisChildOfNavigation: navigationBlockParents.length > 0,\n\t\t\t\thasSelectedChild: hasSelectedInnerBlock( clientId, true ),\n\t\t\t\thasDraggedChild: hasDraggedInnerBlock( clientId, true ),\n\t\t\t\tparentClientId: navigationBlockParents[ 0 ],\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst convertToNavigationLinks = useConvertToNavigationLinks( {\n\t\tclientId,\n\t\tpages,\n\t\tparentClientId,\n\t\tparentPageID,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t\t__unstableDisableDropZone: true,\n\t\ttemplateLock: isChildOfNavigation ? false : 'all',\n\t\tonInput: NOOP,\n\t\tonChange: NOOP,\n\t\tvalue: blockList,\n\t} );\n\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( hasSelectedChild || hasDraggedChild ) {\n\t\t\topenModal();\n\t\t\tselectBlock( parentClientId );\n\t\t}\n\t}, [\n\t\thasSelectedChild,\n\t\thasDraggedChild,\n\t\tparentClientId,\n\t\tselectBlock,\n\t\topenModal,\n\t] );\n\n\tuseEffect( () => {\n\t\tsetAttributes( { isNested } );\n\t}, [ isNested, setAttributes ] );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ pagesTree.length > 0 && (\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<ComboboxControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tclassName=\"editor-page-attributes__parent\"\n\t\t\t\t\t\t\tlabel={ __( 'Parent' ) }\n\t\t\t\t\t\t\tvalue={ parentPageID }\n\t\t\t\t\t\t\toptions={ pagesTree }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { parentPageID: value ?? 0 } )\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'Choose a page to show only its subpages.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t{ allowConvertToLinks && (\n\t\t\t\t\t<PanelBody title={ __( 'Edit this menu' ) }>\n\t\t\t\t\t\t<p>{ convertDescription }</p>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tdisabled={ ! hasResolvedPages }\n\t\t\t\t\t\t\tonClick={ convertToNavigationLinks }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ allowConvertToLinks && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Edit' ) }\n\t\t\t\t\t\t\tonClick={ openModal }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t{ isOpen && (\n\t\t\t\t\t\t<ConvertToLinksModal\n\t\t\t\t\t\t\tonClick={ convertToNavigationLinks }\n\t\t\t\t\t\t\tonClose={ closeModal }\n\t\t\t\t\t\t\tdisabled={ ! hasResolvedPages }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<BlockContent\n\t\t\t\tblockProps={ blockProps }\n\t\t\t\tinnerBlocksProps={ innerBlocksProps }\n\t\t\t\thasResolvedPages={ hasResolvedPages }\n\t\t\t\tblockList={ blockList }\n\t\t\t\tpages={ pages }\n\t\t\t\tparentPageID={ parentPageID }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","createBlock","InspectorControls","BlockControls","useBlockProps","useInnerBlocksProps","getColorClassName","store","blockEditorStore","Warning","PanelBody","ToolbarButton","Spinner","Notice","ComboboxControl","Button","__","sprintf","useMemo","useState","useEffect","useCallback","useEntityRecords","useSelect","useDispatch","useConvertToNavigationLinks","convertDescription","ConvertToLinksModal","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MAX_PAGE_COUNT","NOOP","BlockContent","blockProps","innerBlocksProps","hasResolvedPages","blockList","pages","parentPageID","children","className","status","isDismissible","length","parentPageDetails","find","page","id","title","rendered","PageListEdit","context","clientId","attributes","setAttributes","isOpen","setOpen","openModal","closeModal","records","hasResolved","per_page","_fields","orderby","order","allowConvertToLinks","pagesByParentId","Map","sortedPages","sort","a","b","menu_order","localeCompare","reduce","accumulator","parent","has","get","push","set","textColor","backgroundColor","style","color","pagesTree","makePagesTree","parentId","level","childPages","tree","hasChildren","item","value","label","repeat","rawName","getBlockList","template","pageProps","trim","link","url","isNested","hasSelectedChild","parentClientId","hasDraggedChild","isChildOfNavigation","select","getBlockParentsByBlockName","hasSelectedInnerBlock","hasDraggedInnerBlock","blockParents","navigationBlockParents","convertToNavigationLinks","renderAppender","__unstableDisableDropZone","templateLock","onInput","onChange","selectBlock","__next40pxDefaultSize","options","help","variant","__experimentalIsFocusable","disabled","onClick","group","onClose"],"sources":["@wordpress/block-library/src/page-list/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tgetColorClassName,\n\tstore as blockEditorStore,\n\tWarning,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tToolbarButton,\n\tSpinner,\n\tNotice,\n\tComboboxControl,\n\tButton,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo, useState, useEffect, useCallback } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useConvertToNavigationLinks } from './use-convert-to-navigation-links';\nimport {\n\tconvertDescription,\n\tConvertToLinksModal,\n} from './convert-to-links-modal';\n\n// We only show the edit option when page count is <= MAX_PAGE_COUNT\n// Performance of Navigation Links is not good past this value.\nconst MAX_PAGE_COUNT = 100;\nconst NOOP = () => {};\nfunction BlockContent( {\n\tblockProps,\n\tinnerBlocksProps,\n\thasResolvedPages,\n\tblockList,\n\tpages,\n\tparentPageID,\n} ) {\n\tif ( ! hasResolvedPages ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<div className=\"wp-block-page-list__loading-indicator-container\">\n\t\t\t\t\t<Spinner className=\"wp-block-page-list__loading-indicator\" />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages === null ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status=\"warning\" isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages.length === 0 ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status=\"info\" isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( blockList.length === 0 ) {\n\t\tconst parentPageDetails = pages.find(\n\t\t\t( page ) => page.id === parentPageID\n\t\t);\n\n\t\tif ( parentPageDetails?.title?.rendered ) {\n\t\t\treturn (\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t<Warning>\n\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t// translators: %s: Page title.\n\t\t\t\t\t\t\t__( 'Page List: \"%s\" page has no children.' ),\n\t\t\t\t\t\t\tparentPageDetails.title.rendered\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Warning>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status=\"warning\" isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages.length > 0 ) {\n\t\treturn <ul { ...innerBlocksProps }></ul>;\n\t}\n}\n\nexport default function PageListEdit( {\n\tcontext,\n\tclientId,\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst { parentPageID } = attributes;\n\tconst [ isOpen, setOpen ] = useState( false );\n\tconst openModal = useCallback( () => setOpen( true ), [] );\n\tconst closeModal = () => setOpen( false );\n\n\tconst { records: pages, hasResolved: hasResolvedPages } = useEntityRecords(\n\t\t'postType',\n\t\t'page',\n\t\t{\n\t\t\tper_page: MAX_PAGE_COUNT,\n\t\t\t_fields: [ 'id', 'link', 'menu_order', 'parent', 'title', 'type' ],\n\t\t\t// TODO: When https://core.trac.wordpress.org/ticket/39037 REST API support for multiple orderby\n\t\t\t// values is resolved, update 'orderby' to [ 'menu_order', 'post_title' ] to provide a consistent\n\t\t\t// sort.\n\t\t\torderby: 'menu_order',\n\t\t\torder: 'asc',\n\t\t}\n\t);\n\n\tconst allowConvertToLinks =\n\t\t'showSubmenuIcon' in context &&\n\t\tpages?.length > 0 &&\n\t\tpages?.length <= MAX_PAGE_COUNT;\n\n\tconst pagesByParentId = useMemo( () => {\n\t\tif ( pages === null ) {\n\t\t\treturn new Map();\n\t\t}\n\n\t\t// TODO: Once the REST API supports passing multiple values to\n\t\t// 'orderby', this can be removed.\n\t\t// https://core.trac.wordpress.org/ticket/39037\n\t\tconst sortedPages = pages.sort( ( a, b ) => {\n\t\t\tif ( a.menu_order === b.menu_order ) {\n\t\t\t\treturn a.title.rendered.localeCompare( b.title.rendered );\n\t\t\t}\n\t\t\treturn a.menu_order - b.menu_order;\n\t\t} );\n\n\t\treturn sortedPages.reduce( ( accumulator, page ) => {\n\t\t\tconst { parent } = page;\n\t\t\tif ( accumulator.has( parent ) ) {\n\t\t\t\taccumulator.get( parent ).push( page );\n\t\t\t} else {\n\t\t\t\taccumulator.set( parent, [ page ] );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, new Map() );\n\t}, [ pages ] );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( 'wp-block-page-list', {\n\t\t\t'has-text-color': !! context.textColor,\n\t\t\t[ getColorClassName( 'color', context.textColor ) ]:\n\t\t\t\t!! context.textColor,\n\t\t\t'has-background': !! context.backgroundColor,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tcontext.backgroundColor\n\t\t\t) ]: !! context.backgroundColor,\n\t\t} ),\n\t\tstyle: { ...context.style?.color },\n\t} );\n\n\tconst pagesTree = useMemo(\n\t\tfunction makePagesTree( parentId = 0, level = 0 ) {\n\t\t\tconst childPages = pagesByParentId.get( parentId );\n\n\t\t\tif ( ! childPages?.length ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn childPages.reduce( ( tree, page ) => {\n\t\t\t\tconst hasChildren = pagesByParentId.has( page.id );\n\t\t\t\tconst item = {\n\t\t\t\t\tvalue: page.id,\n\t\t\t\t\tlabel: '— '.repeat( level ) + page.title.rendered,\n\t\t\t\t\trawName: page.title.rendered,\n\t\t\t\t};\n\t\t\t\ttree.push( item );\n\t\t\t\tif ( hasChildren ) {\n\t\t\t\t\ttree.push( ...makePagesTree( page.id, level + 1 ) );\n\t\t\t\t}\n\t\t\t\treturn tree;\n\t\t\t}, [] );\n\t\t},\n\t\t[ pagesByParentId ]\n\t);\n\n\tconst blockList = useMemo(\n\t\tfunction getBlockList( parentId = parentPageID ) {\n\t\t\tconst childPages = pagesByParentId.get( parentId );\n\n\t\t\tif ( ! childPages?.length ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn childPages.reduce( ( template, page ) => {\n\t\t\t\tconst hasChildren = pagesByParentId.has( page.id );\n\t\t\t\tconst pageProps = {\n\t\t\t\t\tid: page.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t// translators: displayed when a page has an empty title.\n\t\t\t\t\t\tpage.title?.rendered?.trim() !== ''\n\t\t\t\t\t\t\t? page.title?.rendered\n\t\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ttitle: page.title?.rendered,\n\t\t\t\t\tlink: page.url,\n\t\t\t\t\thasChildren,\n\t\t\t\t};\n\t\t\t\tlet item = null;\n\t\t\t\tconst children = getBlockList( page.id );\n\t\t\t\titem = createBlock(\n\t\t\t\t\t'core/page-list-item',\n\t\t\t\t\tpageProps,\n\t\t\t\t\tchildren\n\t\t\t\t);\n\t\t\t\ttemplate.push( item );\n\n\t\t\t\treturn template;\n\t\t\t}, [] );\n\t\t},\n\t\t[ pagesByParentId, parentPageID ]\n\t);\n\n\tconst {\n\t\tisNested,\n\t\thasSelectedChild,\n\t\tparentClientId,\n\t\thasDraggedChild,\n\t\tisChildOfNavigation,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\thasDraggedInnerBlock,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst blockParents = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/navigation-submenu',\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tconst navigationBlockParents = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/navigation',\n\t\t\t\ttrue\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tisNested: blockParents.length > 0,\n\t\t\t\tisChildOfNavigation: navigationBlockParents.length > 0,\n\t\t\t\thasSelectedChild: hasSelectedInnerBlock( clientId, true ),\n\t\t\t\thasDraggedChild: hasDraggedInnerBlock( clientId, true ),\n\t\t\t\tparentClientId: navigationBlockParents[ 0 ],\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst convertToNavigationLinks = useConvertToNavigationLinks( {\n\t\tclientId,\n\t\tpages,\n\t\tparentClientId,\n\t\tparentPageID,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t\t__unstableDisableDropZone: true,\n\t\ttemplateLock: isChildOfNavigation ? false : 'all',\n\t\tonInput: NOOP,\n\t\tonChange: NOOP,\n\t\tvalue: blockList,\n\t} );\n\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( hasSelectedChild || hasDraggedChild ) {\n\t\t\topenModal();\n\t\t\tselectBlock( parentClientId );\n\t\t}\n\t}, [\n\t\thasSelectedChild,\n\t\thasDraggedChild,\n\t\tparentClientId,\n\t\tselectBlock,\n\t\topenModal,\n\t] );\n\n\tuseEffect( () => {\n\t\tsetAttributes( { isNested } );\n\t}, [ isNested, setAttributes ] );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ pagesTree.length > 0 && (\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<ComboboxControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tclassName=\"editor-page-attributes__parent\"\n\t\t\t\t\t\t\tlabel={ __( 'Parent' ) }\n\t\t\t\t\t\t\tvalue={ parentPageID }\n\t\t\t\t\t\t\toptions={ pagesTree }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { parentPageID: value ?? 0 } )\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'Choose a page to show only its subpages.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t{ allowConvertToLinks && (\n\t\t\t\t\t<PanelBody title={ __( 'Edit this menu' ) }>\n\t\t\t\t\t\t<p>{ convertDescription }</p>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\t\t\tdisabled={ ! hasResolvedPages }\n\t\t\t\t\t\t\tonClick={ convertToNavigationLinks }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ allowConvertToLinks && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Edit' ) }\n\t\t\t\t\t\t\tonClick={ openModal }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t{ isOpen && (\n\t\t\t\t\t\t<ConvertToLinksModal\n\t\t\t\t\t\t\tonClick={ convertToNavigationLinks }\n\t\t\t\t\t\t\tonClose={ closeModal }\n\t\t\t\t\t\t\tdisabled={ ! hasResolvedPages }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<BlockContent\n\t\t\t\tblockProps={ blockProps }\n\t\t\t\tinnerBlocksProps={ innerBlocksProps }\n\t\t\t\thasResolvedPages={ hasResolvedPages }\n\t\t\t\tblockList={ blockList }\n\t\t\t\tpages={ pages }\n\t\t\t\tparentPageID={ parentPageID }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -20,11 +20,23 @@ const metadata = {
|
|
|
20
20
|
align: ["wide", "full"],
|
|
21
21
|
html: false,
|
|
22
22
|
layout: true,
|
|
23
|
+
background: {
|
|
24
|
+
backgroundImage: true,
|
|
25
|
+
backgroundSize: true,
|
|
26
|
+
__experimentalDefaultControls: {
|
|
27
|
+
backgroundImage: true
|
|
28
|
+
}
|
|
29
|
+
},
|
|
23
30
|
dimensions: {
|
|
24
31
|
minHeight: true
|
|
25
32
|
},
|
|
26
33
|
spacing: {
|
|
27
|
-
blockGap: true
|
|
34
|
+
blockGap: true,
|
|
35
|
+
padding: true,
|
|
36
|
+
__experimentalDefaultControls: {
|
|
37
|
+
margin: false,
|
|
38
|
+
padding: false
|
|
39
|
+
}
|
|
28
40
|
},
|
|
29
41
|
color: {
|
|
30
42
|
gradients: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["postContent","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","textdomain","usesContext","supports","align","html","layout","dimensions","minHeight","spacing","blockGap","
|
|
1
|
+
{"version":3,"names":["postContent","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","textdomain","usesContext","supports","align","html","layout","background","backgroundImage","backgroundSize","__experimentalDefaultControls","dimensions","minHeight","spacing","blockGap","padding","margin","color","gradients","link","text","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","editorStyle","edit","settings","init"],"sources":["@wordpress/block-library/src/post-content/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { postContent as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,IAAIC,IAAI,QAAQ,kBAAkB;;AAEtD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,WAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,MAAA;IAAAC,UAAA;MAAAC,eAAA;MAAAC,cAAA;MAAAC,6BAAA;QAAAF,eAAA;MAAA;IAAA;IAAAG,UAAA;MAAAC,SAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;MAAAC,OAAA;MAAAL,6BAAA;QAAAM,MAAA;QAAAD,OAAA;MAAA;IAAA;IAAAE,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAT,6BAAA;QAAAH,UAAA;QAAAa,IAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAnB,6BAAA;QAAAY,QAAA;MAAA;IAAA;EAAA;EAAAQ,WAAA;AAAA;AAE5C,OAAOC,IAAI,MAAM,QAAQ;AAEzB,MAAM;EAAElC;AAAK,CAAC,GAAGH,QAAQ;AACzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMmC,QAAQ,GAAG;EACvBxC,IAAI;EACJuC;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAMxC,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAEsC;AAAS,CAAE,CAAC","ignoreList":[]}
|
|
@@ -8,7 +8,7 @@ import clsx from 'clsx';
|
|
|
8
8
|
*/
|
|
9
9
|
import { useEntityProp, store as coreStore } from '@wordpress/core-data';
|
|
10
10
|
import { useMemo, useState } from '@wordpress/element';
|
|
11
|
-
import { dateI18n, getSettings as getDateSettings } from '@wordpress/date';
|
|
11
|
+
import { dateI18n, humanTimeDiff, getSettings as getDateSettings } from '@wordpress/date';
|
|
12
12
|
import { AlignmentControl, BlockControls, InspectorControls, useBlockProps, __experimentalDateFormatPicker as DateFormatPicker, __experimentalPublishDateTimePicker as PublishDateTimePicker } from '@wordpress/block-editor';
|
|
13
13
|
import { Dropdown, ToolbarGroup, ToolbarButton, ToggleControl, PanelBody } from '@wordpress/components';
|
|
14
14
|
import { __, sprintf } from '@wordpress/i18n';
|
|
@@ -56,7 +56,7 @@ export default function PostDateEdit({
|
|
|
56
56
|
let postDate = date ? /*#__PURE__*/_jsx("time", {
|
|
57
57
|
dateTime: dateI18n('c', date),
|
|
58
58
|
ref: setPopoverAnchor,
|
|
59
|
-
children: dateI18n(format || siteFormat, date)
|
|
59
|
+
children: format === 'human-diff' ? humanTimeDiff(date) : dateI18n(format || siteFormat, date)
|
|
60
60
|
}) : dateLabel;
|
|
61
61
|
if (isLink && date) {
|
|
62
62
|
postDate = /*#__PURE__*/_jsx("a", {
|