@wordpress/block-library 7.11.0 → 7.12.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/archives/edit.js +7 -0
- package/build/archives/edit.js.map +1 -1
- package/build/archives/index.js +4 -0
- package/build/archives/index.js.map +1 -1
- package/build/block/edit.js +4 -2
- package/build/block/edit.js.map +1 -1
- package/build/block/edit.native.js +4 -2
- package/build/block/edit.native.js.map +1 -1
- package/build/calendar/edit.js +12 -5
- package/build/calendar/edit.js.map +1 -1
- package/build/columns/edit.native.js +2 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/cover/edit/resizable-cover.js +6 -0
- package/build/cover/edit/resizable-cover.js.map +1 -1
- package/build/group/transforms.js +5 -0
- package/build/group/transforms.js.map +1 -1
- package/build/index.native.js +17 -4
- package/build/index.native.js.map +1 -1
- package/build/list/index.js +6 -0
- package/build/list/index.js.map +1 -1
- package/build/list/v2/edit.js +16 -5
- package/build/list/v2/edit.js.map +1 -1
- package/build/list/v2/tag-name.js +31 -0
- package/build/list/v2/tag-name.js.map +1 -0
- package/build/list/v2/tag-name.native.js +32 -0
- package/build/list/v2/tag-name.native.js.map +1 -0
- package/build/list/v2/transforms.js +1 -11
- package/build/list/v2/transforms.js.map +1 -1
- package/build/list-item/edit.js +1 -0
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/edit.native.js +158 -0
- package/build/list-item/edit.native.js.map +1 -0
- package/build/list-item/icons.native.js +53 -0
- package/build/list-item/icons.native.js.map +1 -0
- package/build/list-item/list-style-type.native.js +136 -0
- package/build/list-item/list-style-type.native.js.map +1 -0
- package/build/media-text/deprecated.js +188 -66
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js +2 -1
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/media-container.js +1 -1
- package/build/media-text/media-container.js.map +1 -1
- package/build/navigation/edit/index.js +68 -123
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +11 -14
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +4 -2
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +13 -3
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/use-create-navigation-menu.js +5 -1
- package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build/navigation/edit/use-inner-blocks.js +43 -0
- package/build/navigation/edit/use-inner-blocks.js.map +1 -0
- package/build/navigation/edit/utils.js +28 -0
- package/build/navigation/edit/utils.js.map +1 -0
- package/build/navigation/use-navigation-menu.js +7 -3
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/post-author/edit.js +5 -2
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-biography/edit.js +7 -1
- package/build/post-author-biography/edit.js.map +1 -1
- package/build/post-content/edit.js +4 -2
- package/build/post-content/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +16 -2
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/index.js +9 -0
- package/build/post-featured-image/index.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +42 -9
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +21 -14
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query-title/edit.js +20 -7
- package/build/query-title/edit.js.map +1 -1
- package/build/query-title/index.js +4 -0
- package/build/query-title/index.js.map +1 -1
- package/build/query-title/variations.js +10 -0
- package/build/query-title/variations.js.map +1 -1
- package/build/quote/transforms.js +2 -2
- package/build/quote/transforms.js.map +1 -1
- package/build/separator/edit.js +1 -1
- package/build/separator/edit.js.map +1 -1
- package/build/social-links/edit.js +1 -0
- package/build/social-links/edit.js.map +1 -1
- package/build/template-part/edit/index.js +4 -2
- package/build/template-part/edit/index.js.map +1 -1
- package/build-module/archives/edit.js +7 -0
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/archives/index.js +4 -0
- package/build-module/archives/index.js.map +1 -1
- package/build-module/block/edit.js +5 -3
- package/build-module/block/edit.js.map +1 -1
- package/build-module/block/edit.native.js +5 -3
- package/build-module/block/edit.native.js.map +1 -1
- package/build-module/calendar/edit.js +12 -4
- package/build-module/calendar/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +3 -2
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/cover/edit/resizable-cover.js +6 -0
- package/build-module/cover/edit/resizable-cover.js.map +1 -1
- package/build-module/group/transforms.js +5 -0
- package/build-module/group/transforms.js.map +1 -1
- package/build-module/index.native.js +16 -4
- package/build-module/index.native.js.map +1 -1
- package/build-module/list/index.js +1 -1
- package/build-module/list/index.js.map +1 -1
- package/build-module/list/v2/edit.js +15 -5
- package/build-module/list/v2/edit.js.map +1 -1
- package/build-module/list/v2/tag-name.js +21 -0
- package/build-module/list/v2/tag-name.js.map +1 -0
- package/build-module/list/v2/tag-name.native.js +21 -0
- package/build-module/list/v2/tag-name.native.js.map +1 -0
- package/build-module/list/v2/transforms.js +1 -10
- package/build-module/list/v2/transforms.js.map +1 -1
- package/build-module/list-item/edit.js +1 -3
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/edit.native.js +141 -0
- package/build-module/list-item/edit.native.js.map +1 -0
- package/build-module/list-item/icons.native.js +37 -0
- package/build-module/list-item/icons.native.js.map +1 -0
- package/build-module/list-item/list-style-type.native.js +124 -0
- package/build-module/list-item/list-style-type.native.js.map +1 -0
- package/build-module/media-text/deprecated.js +189 -65
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.js +2 -1
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/media-container.js +1 -1
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/navigation/edit/index.js +66 -122
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +12 -15
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +4 -2
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +12 -3
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js +5 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build-module/navigation/edit/use-inner-blocks.js +33 -0
- package/build-module/navigation/edit/use-inner-blocks.js.map +1 -0
- package/build-module/navigation/edit/utils.js +21 -0
- package/build-module/navigation/edit/utils.js.map +1 -0
- package/build-module/navigation/use-navigation-menu.js +7 -3
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/post-author/edit.js +5 -2
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-biography/edit.js +6 -1
- package/build-module/post-author-biography/edit.js.map +1 -1
- package/build-module/post-content/edit.js +5 -3
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +17 -3
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/index.js +9 -0
- package/build-module/post-featured-image/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +42 -9
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +16 -12
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query-title/edit.js +20 -8
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/query-title/index.js +4 -0
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/query-title/variations.js +10 -0
- package/build-module/query-title/variations.js.map +1 -1
- package/build-module/quote/transforms.js +3 -3
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/separator/edit.js +1 -1
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/social-links/edit.js +1 -0
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/template-part/edit/index.js +5 -3
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-style/editor-rtl.css +10 -0
- package/build-style/editor.css +10 -0
- package/build-style/latest-posts/editor-rtl.css +3 -0
- package/build-style/latest-posts/editor.css +3 -0
- package/build-style/navigation/style-rtl.css +17 -19
- package/build-style/navigation/style.css +17 -19
- package/build-style/query/editor-rtl.css +7 -0
- package/build-style/query/editor.css +7 -0
- package/build-style/query-pagination/style-rtl.css +6 -0
- package/build-style/query-pagination/style.css +6 -0
- package/build-style/search/style-rtl.css +2 -0
- package/build-style/search/style.css +2 -0
- package/build-style/style-rtl.css +26 -19
- package/build-style/style.css +26 -19
- package/build-style/tag-cloud/style-rtl.css +1 -0
- package/build-style/tag-cloud/style.css +1 -0
- package/package.json +28 -29
- package/src/archives/block.json +4 -0
- package/src/archives/edit.js +12 -1
- package/src/archives/index.php +5 -3
- package/src/audio/test/__snapshots__/edit.native.js.snap +16 -2
- package/src/block/edit.js +4 -4
- package/src/block/edit.native.js +4 -4
- package/src/calendar/edit.js +11 -4
- package/src/columns/edit.native.js +4 -2
- package/src/cover/edit/resizable-cover.js +6 -0
- package/src/cover/index.php +2 -2
- package/src/file/test/__snapshots__/edit.native.js.snap +32 -4
- package/src/group/transforms.js +7 -0
- package/src/home-link/index.php +8 -17
- package/src/image/test/edit.native.js +6 -10
- package/src/index.native.js +15 -2
- package/src/latest-posts/editor.scss +5 -0
- package/src/list/index.js +1 -1
- package/src/list/test/__snapshots__/edit.native.js.snap +133 -0
- package/src/list/test/edit.native.js +511 -7
- package/src/list/v2/edit.js +12 -4
- package/src/list/v2/tag-name.js +13 -0
- package/src/list/v2/tag-name.native.js +12 -0
- package/src/list/v2/transforms.js +1 -9
- package/src/list-item/edit.js +1 -1
- package/src/list-item/edit.native.js +148 -0
- package/src/list-item/icons.native.js +34 -0
- package/src/list-item/list-style-type.native.js +139 -0
- package/src/list-item/style.native.scss +45 -0
- package/src/media-text/deprecated.js +561 -415
- package/src/media-text/edit.js +1 -0
- package/src/media-text/media-container.js +3 -1
- package/src/media-text/test/media-container.js +24 -0
- package/src/navigation/edit/index.js +83 -164
- package/src/navigation/edit/navigation-menu-selector.js +12 -26
- package/src/navigation/edit/placeholder/index.js +4 -2
- package/src/navigation/edit/responsive-wrapper.js +24 -3
- package/src/navigation/edit/use-create-navigation-menu.js +4 -0
- package/src/navigation/edit/use-inner-blocks.js +39 -0
- package/src/navigation/edit/utils.js +30 -0
- package/src/navigation/index.php +6 -0
- package/src/navigation/style.scss +12 -22
- package/src/navigation/use-navigation-menu.js +9 -5
- package/src/navigation-link/index.php +1 -1
- package/src/navigation-submenu/index.php +1 -1
- package/src/page-list/index.php +4 -4
- package/src/post-author/edit.js +6 -3
- package/src/post-author-biography/edit.js +4 -1
- package/src/post-content/edit.js +4 -4
- package/src/post-featured-image/block.json +9 -0
- package/src/post-featured-image/edit.js +23 -1
- package/src/post-featured-image/index.php +3 -1
- package/src/post-title/index.php +2 -1
- package/src/preformatted/test/__snapshots__/edit.native.js.snap +16 -2
- package/src/query/edit/inspector-controls/index.js +129 -65
- package/src/query/edit/inspector-controls/taxonomy-controls.js +17 -10
- package/src/query/editor.scss +9 -0
- package/src/query-pagination/style.scss +14 -0
- package/src/query-title/block.json +4 -0
- package/src/query-title/edit.js +33 -6
- package/src/query-title/index.php +17 -1
- package/src/query-title/variations.js +13 -0
- package/src/quote/transforms.js +3 -7
- package/src/search/style.scss +2 -0
- package/src/search/test/__snapshots__/edit.native.js.snap +56 -7
- package/src/separator/edit.js +1 -1
- package/src/separator/test/edit.js +5 -3
- package/src/site-title/index.php +8 -9
- package/src/social-link/index.php +1 -1
- package/src/social-links/edit.js +1 -0
- package/src/tag-cloud/style.scss +1 -0
- package/src/template-part/edit/index.js +4 -4
|
@@ -15,7 +15,7 @@ import { useDispatch, useSelect, useRegistry } from '@wordpress/data';
|
|
|
15
15
|
import { isRTL, __ } from '@wordpress/i18n';
|
|
16
16
|
import { formatListBullets, formatListBulletsRTL, formatListNumbered, formatListNumberedRTL, formatOutdent, formatOutdentRTL } from '@wordpress/icons';
|
|
17
17
|
import { createBlock } from '@wordpress/blocks';
|
|
18
|
-
import { useCallback, useEffect } from '@wordpress/element';
|
|
18
|
+
import { useCallback, useEffect, Platform } from '@wordpress/element';
|
|
19
19
|
import deprecated from '@wordpress/deprecated';
|
|
20
20
|
/**
|
|
21
21
|
* Internal dependencies
|
|
@@ -23,7 +23,9 @@ import deprecated from '@wordpress/deprecated';
|
|
|
23
23
|
|
|
24
24
|
import OrderedListSettings from '../ordered-list-settings';
|
|
25
25
|
import { migrateToListV2 } from './migrate';
|
|
26
|
+
import TagName from './tag-name';
|
|
26
27
|
const TEMPLATE = [['core/list-item']];
|
|
28
|
+
const NATIVE_MARGIN_SPACING = 8;
|
|
27
29
|
/**
|
|
28
30
|
* At the moment, deprecations don't handle create blocks from attributes
|
|
29
31
|
* (like when using CPT templates). For this reason, this hook is necessary
|
|
@@ -114,13 +116,21 @@ function Edit(_ref2) {
|
|
|
114
116
|
let {
|
|
115
117
|
attributes,
|
|
116
118
|
setAttributes,
|
|
117
|
-
clientId
|
|
119
|
+
clientId,
|
|
120
|
+
style
|
|
118
121
|
} = _ref2;
|
|
119
|
-
const blockProps = useBlockProps(
|
|
122
|
+
const blockProps = useBlockProps({ ...(Platform.isNative && {
|
|
123
|
+
style
|
|
124
|
+
})
|
|
125
|
+
});
|
|
120
126
|
const innerBlocksProps = useInnerBlocksProps(blockProps, {
|
|
121
127
|
allowedBlocks: ['core/list-item'],
|
|
122
128
|
template: TEMPLATE,
|
|
123
|
-
templateInsertUpdatesSelection: true
|
|
129
|
+
templateInsertUpdatesSelection: true,
|
|
130
|
+
...(Platform.isNative && {
|
|
131
|
+
marginVertical: NATIVE_MARGIN_SPACING,
|
|
132
|
+
marginHorizontal: NATIVE_MARGIN_SPACING
|
|
133
|
+
})
|
|
124
134
|
});
|
|
125
135
|
useMigrateOnLoad(attributes, clientId);
|
|
126
136
|
const {
|
|
@@ -128,7 +138,6 @@ function Edit(_ref2) {
|
|
|
128
138
|
reversed,
|
|
129
139
|
start
|
|
130
140
|
} = attributes;
|
|
131
|
-
const TagName = ordered ? 'ol' : 'ul';
|
|
132
141
|
const controls = createElement(BlockControls, {
|
|
133
142
|
group: "block"
|
|
134
143
|
}, createElement(ToolbarButton, {
|
|
@@ -155,6 +164,7 @@ function Edit(_ref2) {
|
|
|
155
164
|
clientId: clientId
|
|
156
165
|
}));
|
|
157
166
|
return createElement(Fragment, null, createElement(TagName, _extends({
|
|
167
|
+
ordered: ordered,
|
|
158
168
|
reversed: reversed,
|
|
159
169
|
start: start
|
|
160
170
|
}, innerBlocksProps)), controls, ordered && createElement(OrderedListSettings, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list/v2/edit.js"],"names":["last","BlockControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","ToolbarButton","useDispatch","useSelect","useRegistry","isRTL","__","formatListBullets","formatListBulletsRTL","formatListNumbered","formatListNumberedRTL","formatOutdent","formatOutdentRTL","createBlock","useCallback","useEffect","deprecated","OrderedListSettings","migrateToListV2","TEMPLATE","useMigrateOnLoad","attributes","clientId","registry","updateBlockAttributes","replaceInnerBlocks","values","newAttributes","newInnerBlocks","since","version","alternative","batch","useOutdentList","canOutdent","innerSelect","getBlockRootClientId","getBlock","parentId","name","replaceBlocks","selectionChange","getBlockAttributes","parentBlockId","parentBlockAttributes","newParentBlock","innerBlocks","IndentUI","outdentList","Edit","setAttributes","blockProps","innerBlocksProps","allowedBlocks","template","templateInsertUpdatesSelection","ordered","reversed","start","TagName","controls"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { last } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarButton } from '@wordpress/components';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tformatListBullets,\n\tformatListBulletsRTL,\n\tformatListNumbered,\n\tformatListNumberedRTL,\n\tformatOutdent,\n\tformatOutdentRTL,\n} from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback, useEffect } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport OrderedListSettings from '../ordered-list-settings';\nimport { migrateToListV2 } from './migrate';\n\nconst TEMPLATE = [ [ 'core/list-item' ] ];\n\n/**\n * At the moment, deprecations don't handle create blocks from attributes\n * (like when using CPT templates). For this reason, this hook is necessary\n * to avoid breaking templates using the old list block format.\n *\n * @param {Object} attributes Block attributes.\n * @param {string} clientId Block client ID.\n */\nfunction useMigrateOnLoad( attributes, clientId ) {\n\tconst registry = useRegistry();\n\tconst { updateBlockAttributes, replaceInnerBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// As soon as the block is loaded, migrate it to the new version.\n\n\t\tif ( ! attributes.values ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ newAttributes, newInnerBlocks ] = migrateToListV2( attributes );\n\n\t\tdeprecated( 'Value attribute on the list block', {\n\t\t\tsince: '6.0',\n\t\t\tversion: '6.5',\n\t\t\talternative: 'inner blocks',\n\t\t} );\n\n\t\tregistry.batch( () => {\n\t\t\tupdateBlockAttributes( clientId, newAttributes );\n\t\t\treplaceInnerBlocks( clientId, newInnerBlocks );\n\t\t} );\n\t}, [ attributes.values ] );\n}\n\nfunction useOutdentList( clientId ) {\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlock } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst parentId = getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tcanOutdent:\n\t\t\t\t\t!! parentId &&\n\t\t\t\t\tgetBlock( parentId ).name === 'core/list-item',\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlockRootClientId, getBlockAttributes, getBlock } =\n\t\tuseSelect( blockEditorStore );\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( () => {\n\t\t\tconst parentBlockId = getBlockRootClientId( clientId );\n\t\t\tconst parentBlockAttributes = getBlockAttributes( parentBlockId );\n\t\t\t// Create a new parent block without the inner blocks.\n\t\t\tconst newParentBlock = createBlock(\n\t\t\t\t'core/list-item',\n\t\t\t\tparentBlockAttributes\n\t\t\t);\n\t\t\tconst { innerBlocks } = getBlock( clientId );\n\t\t\t// Replace the parent block with a new parent block without inner blocks,\n\t\t\t// and make the inner blocks siblings of the parent.\n\t\t\treplaceBlocks(\n\t\t\t\t[ parentBlockId ],\n\t\t\t\t[ newParentBlock, ...innerBlocks ]\n\t\t\t);\n\t\t\t// Select the last child of the list being outdent.\n\t\t\tselectionChange( last( innerBlocks ).clientId );\n\t\t}, [ clientId ] ),\n\t];\n}\n\nfunction IndentUI( { clientId } ) {\n\tconst [ canOutdent, outdentList ] = useOutdentList( clientId );\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ outdentList }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nfunction Edit( { attributes, setAttributes, clientId } ) {\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list-item' ],\n\t\ttemplate: TEMPLATE,\n\t\ttemplateInsertUpdatesSelection: true,\n\t} );\n\tuseMigrateOnLoad( attributes, clientId );\n\tconst { ordered, reversed, start } = attributes;\n\tconst TagName = ordered ? 'ol' : 'ul';\n\n\tconst controls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListBulletsRTL : formatListBullets }\n\t\t\t\ttitle={ __( 'Unordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to unordered list' ) }\n\t\t\t\tisActive={ ordered === false }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: false } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListNumberedRTL : formatListNumbered }\n\t\t\t\ttitle={ __( 'Ordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to ordered list' ) }\n\t\t\t\tisActive={ ordered === true }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: true } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<IndentUI clientId={ clientId } />\n\t\t</BlockControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<TagName\n\t\t\t\treversed={ reversed }\n\t\t\t\tstart={ start }\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t/>\n\t\t\t{ controls }\n\t\t\t{ ordered && (\n\t\t\t\t<OrderedListSettings\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tordered={ ordered }\n\t\t\t\t\treversed={ reversed }\n\t\t\t\t\tstart={ start }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default Edit;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list/v2/edit.js"],"names":["last","BlockControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","ToolbarButton","useDispatch","useSelect","useRegistry","isRTL","__","formatListBullets","formatListBulletsRTL","formatListNumbered","formatListNumberedRTL","formatOutdent","formatOutdentRTL","createBlock","useCallback","useEffect","Platform","deprecated","OrderedListSettings","migrateToListV2","TagName","TEMPLATE","NATIVE_MARGIN_SPACING","useMigrateOnLoad","attributes","clientId","registry","updateBlockAttributes","replaceInnerBlocks","values","newAttributes","newInnerBlocks","since","version","alternative","batch","useOutdentList","canOutdent","innerSelect","getBlockRootClientId","getBlock","parentId","name","replaceBlocks","selectionChange","getBlockAttributes","parentBlockId","parentBlockAttributes","newParentBlock","innerBlocks","IndentUI","outdentList","Edit","setAttributes","style","blockProps","isNative","innerBlocksProps","allowedBlocks","template","templateInsertUpdatesSelection","marginVertical","marginHorizontal","ordered","reversed","start","controls"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { last } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarButton } from '@wordpress/components';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tformatListBullets,\n\tformatListBulletsRTL,\n\tformatListNumbered,\n\tformatListNumberedRTL,\n\tformatOutdent,\n\tformatOutdentRTL,\n} from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback, useEffect, Platform } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport OrderedListSettings from '../ordered-list-settings';\nimport { migrateToListV2 } from './migrate';\nimport TagName from './tag-name';\n\nconst TEMPLATE = [ [ 'core/list-item' ] ];\nconst NATIVE_MARGIN_SPACING = 8;\n\n/**\n * At the moment, deprecations don't handle create blocks from attributes\n * (like when using CPT templates). For this reason, this hook is necessary\n * to avoid breaking templates using the old list block format.\n *\n * @param {Object} attributes Block attributes.\n * @param {string} clientId Block client ID.\n */\nfunction useMigrateOnLoad( attributes, clientId ) {\n\tconst registry = useRegistry();\n\tconst { updateBlockAttributes, replaceInnerBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// As soon as the block is loaded, migrate it to the new version.\n\n\t\tif ( ! attributes.values ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ newAttributes, newInnerBlocks ] = migrateToListV2( attributes );\n\n\t\tdeprecated( 'Value attribute on the list block', {\n\t\t\tsince: '6.0',\n\t\t\tversion: '6.5',\n\t\t\talternative: 'inner blocks',\n\t\t} );\n\n\t\tregistry.batch( () => {\n\t\t\tupdateBlockAttributes( clientId, newAttributes );\n\t\t\treplaceInnerBlocks( clientId, newInnerBlocks );\n\t\t} );\n\t}, [ attributes.values ] );\n}\n\nfunction useOutdentList( clientId ) {\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId, getBlock } =\n\t\t\t\tinnerSelect( blockEditorStore );\n\t\t\tconst parentId = getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tcanOutdent:\n\t\t\t\t\t!! parentId &&\n\t\t\t\t\tgetBlock( parentId ).name === 'core/list-item',\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlockRootClientId, getBlockAttributes, getBlock } =\n\t\tuseSelect( blockEditorStore );\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( () => {\n\t\t\tconst parentBlockId = getBlockRootClientId( clientId );\n\t\t\tconst parentBlockAttributes = getBlockAttributes( parentBlockId );\n\t\t\t// Create a new parent block without the inner blocks.\n\t\t\tconst newParentBlock = createBlock(\n\t\t\t\t'core/list-item',\n\t\t\t\tparentBlockAttributes\n\t\t\t);\n\t\t\tconst { innerBlocks } = getBlock( clientId );\n\t\t\t// Replace the parent block with a new parent block without inner blocks,\n\t\t\t// and make the inner blocks siblings of the parent.\n\t\t\treplaceBlocks(\n\t\t\t\t[ parentBlockId ],\n\t\t\t\t[ newParentBlock, ...innerBlocks ]\n\t\t\t);\n\t\t\t// Select the last child of the list being outdent.\n\t\t\tselectionChange( last( innerBlocks ).clientId );\n\t\t}, [ clientId ] ),\n\t];\n}\n\nfunction IndentUI( { clientId } ) {\n\tconst [ canOutdent, outdentList ] = useOutdentList( clientId );\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ outdentList }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nfunction Edit( { attributes, setAttributes, clientId, style } ) {\n\tconst blockProps = useBlockProps( {\n\t\t...( Platform.isNative && { style } ),\n\t} );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list-item' ],\n\t\ttemplate: TEMPLATE,\n\t\ttemplateInsertUpdatesSelection: true,\n\t\t...( Platform.isNative && {\n\t\t\tmarginVertical: NATIVE_MARGIN_SPACING,\n\t\t\tmarginHorizontal: NATIVE_MARGIN_SPACING,\n\t\t} ),\n\t} );\n\tuseMigrateOnLoad( attributes, clientId );\n\tconst { ordered, reversed, start } = attributes;\n\n\tconst controls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListBulletsRTL : formatListBullets }\n\t\t\t\ttitle={ __( 'Unordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to unordered list' ) }\n\t\t\t\tisActive={ ordered === false }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: false } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListNumberedRTL : formatListNumbered }\n\t\t\t\ttitle={ __( 'Ordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to ordered list' ) }\n\t\t\t\tisActive={ ordered === true }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: true } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<IndentUI clientId={ clientId } />\n\t\t</BlockControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<TagName\n\t\t\t\tordered={ ordered }\n\t\t\t\treversed={ reversed }\n\t\t\t\tstart={ start }\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t/>\n\t\t\t{ controls }\n\t\t\t{ ordered && (\n\t\t\t\t<OrderedListSettings\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tordered={ ordered }\n\t\t\t\t\treversed={ reversed }\n\t\t\t\t\tstart={ start }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default Edit;\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import { createElement } from "@wordpress/element";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* WordPress dependencies
|
|
6
|
+
*/
|
|
7
|
+
import { forwardRef } from '@wordpress/element';
|
|
8
|
+
|
|
9
|
+
function TagName(props, ref) {
|
|
10
|
+
const {
|
|
11
|
+
ordered,
|
|
12
|
+
...extraProps
|
|
13
|
+
} = props;
|
|
14
|
+
const Tag = ordered ? 'ol' : 'ul';
|
|
15
|
+
return createElement(Tag, _extends({
|
|
16
|
+
ref: ref
|
|
17
|
+
}, extraProps));
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export default forwardRef(TagName);
|
|
21
|
+
//# sourceMappingURL=tag-name.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list/v2/tag-name.js"],"names":["forwardRef","TagName","props","ref","ordered","extraProps","Tag"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,UAAT,QAA2B,oBAA3B;;AAEA,SAASC,OAAT,CAAkBC,KAAlB,EAAyBC,GAAzB,EAA+B;AAC9B,QAAM;AAAEC,IAAAA,OAAF;AAAW,OAAGC;AAAd,MAA6BH,KAAnC;AACA,QAAMI,GAAG,GAAGF,OAAO,GAAG,IAAH,GAAU,IAA7B;AAEA,SAAO,cAAC,GAAD;AAAK,IAAA,GAAG,EAAGD;AAAX,KAAsBE,UAAtB,EAAP;AACA;;AAED,eAAeL,UAAU,CAAEC,OAAF,CAAzB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n\nfunction TagName( props, ref ) {\n\tconst { ordered, ...extraProps } = props;\n\tconst Tag = ordered ? 'ol' : 'ul';\n\n\treturn <Tag ref={ ref } { ...extraProps } />;\n}\n\nexport default forwardRef( TagName );\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import { createElement } from "@wordpress/element";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* WordPress dependencies
|
|
6
|
+
*/
|
|
7
|
+
import { forwardRef } from '@wordpress/element';
|
|
8
|
+
import { View } from '@wordpress/primitives';
|
|
9
|
+
|
|
10
|
+
function TagName(props, ref) {
|
|
11
|
+
const {
|
|
12
|
+
start,
|
|
13
|
+
...extraProps
|
|
14
|
+
} = props;
|
|
15
|
+
return createElement(View, _extends({
|
|
16
|
+
ref: ref
|
|
17
|
+
}, extraProps));
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export default forwardRef(TagName);
|
|
21
|
+
//# sourceMappingURL=tag-name.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list/v2/tag-name.native.js"],"names":["forwardRef","View","TagName","props","ref","start","extraProps"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,UAAT,QAA2B,oBAA3B;AACA,SAASC,IAAT,QAAqB,uBAArB;;AAEA,SAASC,OAAT,CAAkBC,KAAlB,EAAyBC,GAAzB,EAA+B;AAC9B,QAAM;AAAEC,IAAAA,KAAF;AAAS,OAAGC;AAAZ,MAA2BH,KAAjC;AACA,SAAO,cAAC,IAAD;AAAM,IAAA,GAAG,EAAGC;AAAZ,KAAuBE,UAAvB,EAAP;AACA;;AAED,eAAeN,UAAU,CAAEE,OAAF,CAAzB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\nimport { View } from '@wordpress/primitives';\n\nfunction TagName( props, ref ) {\n\tconst { start, ...extraProps } = props;\n\treturn <View ref={ ref } { ...extraProps } />;\n}\n\nexport default forwardRef( TagName );\n"]}
|
|
@@ -1,15 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* External dependencies
|
|
7
|
-
*/
|
|
8
|
-
import { flatMap } from 'lodash';
|
|
9
|
-
/**
|
|
10
|
-
* WordPress dependencies
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
4
|
import { createBlock } from '@wordpress/blocks';
|
|
14
5
|
import { create, split, toHTMLString } from '@wordpress/rich-text';
|
|
15
6
|
/**
|
|
@@ -42,7 +33,7 @@ function getListContentSchema(_ref) {
|
|
|
42
33
|
}
|
|
43
34
|
|
|
44
35
|
function getListContentFlat(blocks) {
|
|
45
|
-
return flatMap(
|
|
36
|
+
return blocks.flatMap(_ref2 => {
|
|
46
37
|
let {
|
|
47
38
|
name,
|
|
48
39
|
attributes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list/v2/transforms.js"],"names":["
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list/v2/transforms.js"],"names":["createBlock","create","split","toHTMLString","createListBlockFromDOMElement","getListContentSchema","phrasingContentSchema","listContentSchema","ul","ol","attributes","forEach","tag","children","li","getListContentFlat","blocks","flatMap","name","innerBlocks","content","transforms","from","type","isMultiBlock","transform","blockAttributes","childBlocks","length","map","value","html","result","anchor","prefix","ordered","selector","schema","args","to","block","_attributes"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { create, split, toHTMLString } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { createListBlockFromDOMElement } from './migrate';\n\nfunction getListContentSchema( { phrasingContentSchema } ) {\n\tconst listContentSchema = {\n\t\t...phrasingContentSchema,\n\t\tul: {},\n\t\tol: { attributes: [ 'type', 'start', 'reversed' ] },\n\t};\n\n\t// Recursion is needed.\n\t// Possible: ul > li > ul.\n\t// Impossible: ul > ul.\n\t[ 'ul', 'ol' ].forEach( ( tag ) => {\n\t\tlistContentSchema[ tag ].children = {\n\t\t\tli: {\n\t\t\t\tchildren: listContentSchema,\n\t\t\t},\n\t\t};\n\t} );\n\n\treturn listContentSchema;\n}\n\nfunction getListContentFlat( blocks ) {\n\treturn blocks.flatMap( ( { name, attributes, innerBlocks = [] } ) => {\n\t\tif ( name === 'core/list-item' ) {\n\t\t\treturn [ attributes.content, ...getListContentFlat( innerBlocks ) ];\n\t\t}\n\t\treturn getListContentFlat( innerBlocks );\n\t} );\n}\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph', 'core/heading' ],\n\t\t\ttransform: ( blockAttributes ) => {\n\t\t\t\tlet childBlocks = [];\n\t\t\t\tif ( blockAttributes.length > 1 ) {\n\t\t\t\t\tchildBlocks = blockAttributes.map( ( { content } ) => {\n\t\t\t\t\t\treturn createBlock( 'core/list-item', { content } );\n\t\t\t\t\t} );\n\t\t\t\t} else if ( blockAttributes.length === 1 ) {\n\t\t\t\t\tconst value = create( {\n\t\t\t\t\t\thtml: blockAttributes[ 0 ].content,\n\t\t\t\t\t} );\n\t\t\t\t\tchildBlocks = split( value, '\\n' ).map( ( result ) => {\n\t\t\t\t\t\treturn createBlock( 'core/list-item', {\n\t\t\t\t\t\t\tcontent: toHTMLString( { value: result } ),\n\t\t\t\t\t\t} );\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/list',\n\t\t\t\t\t{\n\t\t\t\t\t\tanchor: blockAttributes.anchor,\n\t\t\t\t\t},\n\t\t\t\t\tchildBlocks\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t...[ '*', '-' ].map( ( prefix ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix,\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( 'core/list', {}, [\n\t\t\t\t\tcreateBlock( 'core/list-item', { content } ),\n\t\t\t\t] );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ '1.', '1)' ].map( ( prefix ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix,\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/list',\n\t\t\t\t\t{\n\t\t\t\t\t\tordered: true,\n\t\t\t\t\t},\n\t\t\t\t\t[ createBlock( 'core/list-item', { content } ) ]\n\t\t\t\t);\n\t\t\t},\n\t\t} ) ),\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'ol,ul',\n\t\t\tschema: ( args ) => ( {\n\t\t\t\tol: getListContentSchema( args ).ol,\n\t\t\t\tul: getListContentSchema( args ).ul,\n\t\t\t} ),\n\t\t\ttransform: createListBlockFromDOMElement,\n\t\t},\n\t],\n\tto: [\n\t\t...[ 'core/paragraph', 'core/heading' ].map( ( block ) => ( {\n\t\t\ttype: 'block',\n\t\t\tblocks: [ block ],\n\t\t\ttransform: ( _attributes, childBlocks ) => {\n\t\t\t\treturn getListContentFlat( childBlocks ).map( ( content ) =>\n\t\t\t\t\tcreateBlock( block, {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t},\n\t\t} ) ),\n\t],\n};\n\nexport default transforms;\n"]}
|
|
@@ -14,8 +14,7 @@ import { useMergeRefs } from '@wordpress/compose';
|
|
|
14
14
|
|
|
15
15
|
import { useEnter, useSpace, useIndentListItem, useOutdentListItem, useSplit, useMerge } from './hooks';
|
|
16
16
|
import { convertToListItems } from './utils';
|
|
17
|
-
|
|
18
|
-
function IndentUI(_ref) {
|
|
17
|
+
export function IndentUI(_ref) {
|
|
19
18
|
let {
|
|
20
19
|
clientId
|
|
21
20
|
} = _ref;
|
|
@@ -35,7 +34,6 @@ function IndentUI(_ref) {
|
|
|
35
34
|
onClick: () => indentListItem()
|
|
36
35
|
}));
|
|
37
36
|
}
|
|
38
|
-
|
|
39
37
|
export default function ListItemEdit(_ref2) {
|
|
40
38
|
let {
|
|
41
39
|
attributes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list-item/edit.js"],"names":["RichText","useBlockProps","useInnerBlocksProps","BlockControls","isRTL","__","ToolbarButton","formatOutdent","formatOutdentRTL","formatIndentRTL","formatIndent","useMergeRefs","useEnter","useSpace","useIndentListItem","useOutdentListItem","useSplit","useMerge","convertToListItems","IndentUI","clientId","canIndent","indentListItem","canOutdent","outdentListItem","ListItemEdit","attributes","setAttributes","onReplace","placeholder","content","blockProps","innerBlocksProps","allowedBlocks","useEnterRef","useSpaceRef","onSplit","onMerge","nextContent","blocks","args","children"],"mappings":";;AAAA;AACA;AACA;AACA,SACCA,QADD,EAECC,aAFD,EAGCC,mBAHD,EAICC,aAJD,QAKO,yBALP;AAMA,SAASC,KAAT,EAAgBC,EAAhB,QAA0B,iBAA1B;AACA,SAASC,aAAT,QAA8B,uBAA9B;AACA,SACCC,aADD,EAECC,gBAFD,EAGCC,eAHD,EAICC,YAJD,QAKO,kBALP;AAMA,SAASC,YAAT,QAA6B,oBAA7B;AAEA;AACA;AACA;;AACA,SACCC,QADD,EAECC,QAFD,EAGCC,iBAHD,EAICC,kBAJD,EAKCC,QALD,EAMCC,QAND,QAOO,SAPP;AAQA,SAASC,kBAAT,QAAmC,SAAnC
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/edit.js"],"names":["RichText","useBlockProps","useInnerBlocksProps","BlockControls","isRTL","__","ToolbarButton","formatOutdent","formatOutdentRTL","formatIndentRTL","formatIndent","useMergeRefs","useEnter","useSpace","useIndentListItem","useOutdentListItem","useSplit","useMerge","convertToListItems","IndentUI","clientId","canIndent","indentListItem","canOutdent","outdentListItem","ListItemEdit","attributes","setAttributes","onReplace","placeholder","content","blockProps","innerBlocksProps","allowedBlocks","useEnterRef","useSpaceRef","onSplit","onMerge","nextContent","blocks","args","children"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { ToolbarButton } from '@wordpress/components';\nimport {\n\tformatOutdent,\n\tformatOutdentRTL,\n\tformatIndentRTL,\n\tformatIndent,\n} from '@wordpress/icons';\nimport { useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseEnter,\n\tuseSpace,\n\tuseIndentListItem,\n\tuseOutdentListItem,\n\tuseSplit,\n\tuseMerge,\n} from './hooks';\nimport { convertToListItems } from './utils';\n\nexport function IndentUI( { clientId } ) {\n\tconst [ canIndent, indentListItem ] = useIndentListItem( clientId );\n\tconst [ canOutdent, outdentListItem ] = useOutdentListItem( clientId );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ () => outdentListItem() }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatIndentRTL : formatIndent }\n\t\t\t\ttitle={ __( 'Indent' ) }\n\t\t\t\tdescribedBy={ __( 'Indent list item' ) }\n\t\t\t\tisDisabled={ ! canIndent }\n\t\t\t\tonClick={ () => indentListItem() }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tonReplace,\n\tclientId,\n} ) {\n\tconst { placeholder, content } = attributes;\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list' ],\n\t} );\n\tconst useEnterRef = useEnter( { content, clientId } );\n\tconst useSpaceRef = useSpace( clientId );\n\tconst onSplit = useSplit( clientId );\n\tconst onMerge = useMerge( clientId );\n\treturn (\n\t\t<>\n\t\t\t<li { ...innerBlocksProps }>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ useMergeRefs( [ useEnterRef, useSpaceRef ] ) }\n\t\t\t\t\tidentifier=\"content\"\n\t\t\t\t\ttagName=\"div\"\n\t\t\t\t\tonChange={ ( nextContent ) =>\n\t\t\t\t\t\tsetAttributes( { content: nextContent } )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ content }\n\t\t\t\t\taria-label={ __( 'List text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'List' ) }\n\t\t\t\t\tonSplit={ onSplit }\n\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\tonReplace={ ( blocks, ...args ) => {\n\t\t\t\t\t\tonReplace( convertToListItems( blocks ), ...args );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t</li>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<IndentUI clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { createElement } from "@wordpress/element";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* External dependencies
|
|
5
|
+
*/
|
|
6
|
+
import { View } from 'react-native';
|
|
7
|
+
/**
|
|
8
|
+
* WordPress dependencies
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import { RichText, useBlockProps, useInnerBlocksProps, BlockControls, store as blockEditorStore } from '@wordpress/block-editor';
|
|
12
|
+
import { __ } from '@wordpress/i18n';
|
|
13
|
+
import { useSelect } from '@wordpress/data';
|
|
14
|
+
import { useState, useCallback } from '@wordpress/element';
|
|
15
|
+
/**
|
|
16
|
+
* Internal dependencies
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import { useSplit, useMerge } from './hooks';
|
|
20
|
+
import { convertToListItems } from './utils';
|
|
21
|
+
import { IndentUI } from './edit.js';
|
|
22
|
+
import styles from './style.scss';
|
|
23
|
+
import ListStyleType from './list-style-type';
|
|
24
|
+
export default function ListItemEdit(_ref) {
|
|
25
|
+
let {
|
|
26
|
+
attributes,
|
|
27
|
+
setAttributes,
|
|
28
|
+
onReplace,
|
|
29
|
+
clientId,
|
|
30
|
+
style
|
|
31
|
+
} = _ref;
|
|
32
|
+
const [contentWidth, setContentWidth] = useState();
|
|
33
|
+
const {
|
|
34
|
+
placeholder,
|
|
35
|
+
content
|
|
36
|
+
} = attributes;
|
|
37
|
+
const {
|
|
38
|
+
blockIndex,
|
|
39
|
+
hasInnerBlocks,
|
|
40
|
+
indentationLevel,
|
|
41
|
+
numberOfListItems,
|
|
42
|
+
ordered,
|
|
43
|
+
reversed,
|
|
44
|
+
start
|
|
45
|
+
} = useSelect(select => {
|
|
46
|
+
const {
|
|
47
|
+
getBlockAttributes,
|
|
48
|
+
getBlockCount,
|
|
49
|
+
getBlockIndex,
|
|
50
|
+
getBlockParentsByBlockName,
|
|
51
|
+
getBlockRootClientId
|
|
52
|
+
} = select(blockEditorStore);
|
|
53
|
+
const currentIdentationLevel = getBlockParentsByBlockName(clientId, 'core/list-item', true).length;
|
|
54
|
+
const currentBlockIndex = getBlockIndex(clientId);
|
|
55
|
+
const blockWithInnerBlocks = getBlockCount(clientId) > 0;
|
|
56
|
+
const rootClientId = getBlockRootClientId(clientId);
|
|
57
|
+
const blockAttributes = getBlockAttributes(rootClientId);
|
|
58
|
+
const totalListItems = getBlockCount(rootClientId);
|
|
59
|
+
const {
|
|
60
|
+
ordered: isOrdered,
|
|
61
|
+
reversed: isReversed,
|
|
62
|
+
start: startValue
|
|
63
|
+
} = blockAttributes || {};
|
|
64
|
+
return {
|
|
65
|
+
blockIndex: currentBlockIndex,
|
|
66
|
+
hasInnerBlocks: blockWithInnerBlocks,
|
|
67
|
+
indentationLevel: currentIdentationLevel,
|
|
68
|
+
numberOfListItems: totalListItems,
|
|
69
|
+
ordered: isOrdered,
|
|
70
|
+
reversed: isReversed,
|
|
71
|
+
start: startValue
|
|
72
|
+
};
|
|
73
|
+
}, [clientId]);
|
|
74
|
+
const blockProps = useBlockProps({ ...(hasInnerBlocks && styles['wp-block-list-item__nested-blocks'])
|
|
75
|
+
});
|
|
76
|
+
const innerBlocksProps = useInnerBlocksProps(blockProps, {
|
|
77
|
+
allowedBlocks: ['core/list'],
|
|
78
|
+
renderAppender: false
|
|
79
|
+
});
|
|
80
|
+
const onSplit = useSplit(clientId);
|
|
81
|
+
const onMerge = useMerge(clientId);
|
|
82
|
+
const onLayout = useCallback(_ref2 => {
|
|
83
|
+
let {
|
|
84
|
+
nativeEvent
|
|
85
|
+
} = _ref2;
|
|
86
|
+
setContentWidth(prevState => {
|
|
87
|
+
const {
|
|
88
|
+
width
|
|
89
|
+
} = nativeEvent.layout;
|
|
90
|
+
|
|
91
|
+
if (!prevState || prevState.width !== width) {
|
|
92
|
+
return Math.floor(width);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return prevState;
|
|
96
|
+
});
|
|
97
|
+
}, []);
|
|
98
|
+
return createElement(View, {
|
|
99
|
+
style: styles['wp-block-list-item__list-item-parent']
|
|
100
|
+
}, createElement(View, {
|
|
101
|
+
style: styles['wp-block-list-item__list-item']
|
|
102
|
+
}, createElement(View, {
|
|
103
|
+
style: styles['wp-block-list-item__list-item-icon']
|
|
104
|
+
}, createElement(ListStyleType, {
|
|
105
|
+
blockIndex: blockIndex,
|
|
106
|
+
indentationLevel: indentationLevel,
|
|
107
|
+
numberOfListItems: numberOfListItems,
|
|
108
|
+
ordered: ordered,
|
|
109
|
+
reversed: reversed,
|
|
110
|
+
start: start,
|
|
111
|
+
style: style
|
|
112
|
+
})), createElement(View, {
|
|
113
|
+
style: styles['wp-block-list-item__list-item-content'],
|
|
114
|
+
onLayout: onLayout
|
|
115
|
+
}, createElement(RichText, {
|
|
116
|
+
identifier: "content",
|
|
117
|
+
tagName: "p",
|
|
118
|
+
onChange: nextContent => setAttributes({
|
|
119
|
+
content: nextContent
|
|
120
|
+
}),
|
|
121
|
+
value: content,
|
|
122
|
+
placeholder: placeholder || __('List'),
|
|
123
|
+
onSplit: onSplit,
|
|
124
|
+
onMerge: onMerge,
|
|
125
|
+
onReplace: function (blocks) {
|
|
126
|
+
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
127
|
+
args[_key - 1] = arguments[_key];
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
onReplace(convertToListItems(blocks), ...args);
|
|
131
|
+
},
|
|
132
|
+
style: style,
|
|
133
|
+
deleteEnter: true,
|
|
134
|
+
containerWidth: contentWidth
|
|
135
|
+
}))), createElement(View, innerBlocksProps), createElement(BlockControls, {
|
|
136
|
+
group: "block"
|
|
137
|
+
}, createElement(IndentUI, {
|
|
138
|
+
clientId: clientId
|
|
139
|
+
})));
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=edit.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/edit.native.js"],"names":["View","RichText","useBlockProps","useInnerBlocksProps","BlockControls","store","blockEditorStore","__","useSelect","useState","useCallback","useSplit","useMerge","convertToListItems","IndentUI","styles","ListStyleType","ListItemEdit","attributes","setAttributes","onReplace","clientId","style","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","allowedBlocks","renderAppender","onSplit","onMerge","onLayout","nativeEvent","prevState","width","layout","Math","floor","nextContent","blocks","args"],"mappings":"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","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 { useSelect } from '@wordpress/data';\nimport { useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useSplit, useMerge } from './hooks';\nimport { convertToListItems } from './utils';\nimport { IndentUI } from './edit.js';\nimport styles from './style.scss';\nimport ListStyleType from './list-style-type';\n\nexport default function ListItemEdit( {\n\tattributes,\n\tsetAttributes,\n\tonReplace,\n\tclientId,\n\tstyle,\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\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list' ],\n\t\trenderAppender: false,\n\t} );\n\n\tconst onSplit = useSplit( clientId );\n\tconst onMerge = useMerge( clientId );\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\tonSplit={ onSplit }\n\t\t\t\t\t\tonMerge={ onMerge }\n\t\t\t\t\t\tonReplace={ ( blocks, ...args ) => {\n\t\t\t\t\t\t\tonReplace( convertToListItems( blocks ), ...args );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tstyle={ style }\n\t\t\t\t\t\tdeleteEnter={ true }\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"]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { createElement } from "@wordpress/element";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* WordPress dependencies
|
|
5
|
+
*/
|
|
6
|
+
import { SVG, Rect } from '@wordpress/components';
|
|
7
|
+
export const circle = (size, color) => createElement(SVG, {
|
|
8
|
+
fill: "none",
|
|
9
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
10
|
+
}, createElement(Rect, {
|
|
11
|
+
width: size,
|
|
12
|
+
height: size,
|
|
13
|
+
rx: size / 2,
|
|
14
|
+
fill: color
|
|
15
|
+
}));
|
|
16
|
+
export const circleOutline = (size, color) => createElement(SVG, {
|
|
17
|
+
width: size,
|
|
18
|
+
height: size,
|
|
19
|
+
fill: "none",
|
|
20
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
21
|
+
}, createElement(Rect, {
|
|
22
|
+
x: "0.5",
|
|
23
|
+
y: "0.5",
|
|
24
|
+
width: size - 1,
|
|
25
|
+
height: size - 1,
|
|
26
|
+
rx: size / 2,
|
|
27
|
+
stroke: color
|
|
28
|
+
}));
|
|
29
|
+
export const square = (size, color) => createElement(SVG, {
|
|
30
|
+
fill: "none",
|
|
31
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
32
|
+
}, createElement(Rect, {
|
|
33
|
+
width: size,
|
|
34
|
+
height: size,
|
|
35
|
+
fill: color
|
|
36
|
+
}));
|
|
37
|
+
//# sourceMappingURL=icons.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/icons.native.js"],"names":["SVG","Rect","circle","size","color","circleOutline","square"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,GAAT,EAAcC,IAAd,QAA0B,uBAA1B;AAEA,OAAO,MAAMC,MAAM,GAAG,CAAEC,IAAF,EAAQC,KAAR,KACrB,cAAC,GAAD;AAAK,EAAA,IAAI,EAAC,MAAV;AAAiB,EAAA,KAAK,EAAC;AAAvB,GACC,cAAC,IAAD;AAAM,EAAA,KAAK,EAAGD,IAAd;AAAqB,EAAA,MAAM,EAAGA,IAA9B;AAAqC,EAAA,EAAE,EAAGA,IAAI,GAAG,CAAjD;AAAqD,EAAA,IAAI,EAAGC;AAA5D,EADD,CADM;AAMP,OAAO,MAAMC,aAAa,GAAG,CAAEF,IAAF,EAAQC,KAAR,KAC5B,cAAC,GAAD;AACC,EAAA,KAAK,EAAGD,IADT;AAEC,EAAA,MAAM,EAAGA,IAFV;AAGC,EAAA,IAAI,EAAC,MAHN;AAIC,EAAA,KAAK,EAAC;AAJP,GAMC,cAAC,IAAD;AACC,EAAA,CAAC,EAAC,KADH;AAEC,EAAA,CAAC,EAAC,KAFH;AAGC,EAAA,KAAK,EAAGA,IAAI,GAAG,CAHhB;AAIC,EAAA,MAAM,EAAGA,IAAI,GAAG,CAJjB;AAKC,EAAA,EAAE,EAAGA,IAAI,GAAG,CALb;AAMC,EAAA,MAAM,EAAGC;AANV,EAND,CADM;AAkBP,OAAO,MAAME,MAAM,GAAG,CAAEH,IAAF,EAAQC,KAAR,KACrB,cAAC,GAAD;AAAK,EAAA,IAAI,EAAC,MAAV;AAAiB,EAAA,KAAK,EAAC;AAAvB,GACC,cAAC,IAAD;AAAM,EAAA,KAAK,EAAGD,IAAd;AAAqB,EAAA,MAAM,EAAGA,IAA9B;AAAqC,EAAA,IAAI,EAAGC;AAA5C,EADD,CADM","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SVG, Rect } from '@wordpress/components';\n\nexport const circle = ( size, color ) => (\n\t<SVG fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t<Rect width={ size } height={ size } rx={ size / 2 } fill={ color } />\n\t</SVG>\n);\n\nexport const circleOutline = ( size, color ) => (\n\t<SVG\n\t\twidth={ size }\n\t\theight={ size }\n\t\tfill=\"none\"\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t>\n\t\t<Rect\n\t\t\tx=\"0.5\"\n\t\t\ty=\"0.5\"\n\t\t\twidth={ size - 1 }\n\t\t\theight={ size - 1 }\n\t\t\trx={ size / 2 }\n\t\t\tstroke={ color }\n\t\t/>\n\t</SVG>\n);\n\nexport const square = ( size, color ) => (\n\t<SVG fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t<Rect width={ size } height={ size } fill={ color } />\n\t</SVG>\n);\n"]}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { createElement } from "@wordpress/element";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* External dependencies
|
|
5
|
+
*/
|
|
6
|
+
import { View, Text } from 'react-native';
|
|
7
|
+
/**
|
|
8
|
+
* WordPress dependencies
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import { Icon } from '@wordpress/components';
|
|
12
|
+
import { Platform } from '@wordpress/element';
|
|
13
|
+
/**
|
|
14
|
+
* Internal dependencies
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import styles from './style.scss';
|
|
18
|
+
import { circle, circleOutline, square } from './icons';
|
|
19
|
+
const DEFAULT_ICON_SIZE = 6;
|
|
20
|
+
|
|
21
|
+
function getListNumberIndex(start, blockIndex, reversed, numberOfListItems) {
|
|
22
|
+
if (start) {
|
|
23
|
+
return reversed ? numberOfListItems - 1 + start - blockIndex : start + blockIndex;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
if (reversed) {
|
|
27
|
+
return numberOfListItems - blockIndex;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return blockIndex + 1;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
function OrderedList(_ref) {
|
|
34
|
+
let {
|
|
35
|
+
blockIndex,
|
|
36
|
+
color,
|
|
37
|
+
fontSize,
|
|
38
|
+
numberOfListItems,
|
|
39
|
+
reversed,
|
|
40
|
+
start,
|
|
41
|
+
style
|
|
42
|
+
} = _ref;
|
|
43
|
+
const orderedStyles = [styles['wp-block-list-item__list-item-container--ordered'], Platform.isIOS && styles['wp-block-list-item__list-item-ordered--default'], Platform.isIOS && (style === null || style === void 0 ? void 0 : style.fontSize) && styles['wp-block-list-item__list-item-ordered--custom']];
|
|
44
|
+
const numberStyle = [{
|
|
45
|
+
fontSize,
|
|
46
|
+
color
|
|
47
|
+
}];
|
|
48
|
+
const currentIndex = getListNumberIndex(start, blockIndex, reversed, numberOfListItems);
|
|
49
|
+
return createElement(View, {
|
|
50
|
+
style: orderedStyles
|
|
51
|
+
}, createElement(Text, {
|
|
52
|
+
style: numberStyle
|
|
53
|
+
}, currentIndex, "."));
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
function IconList(_ref2) {
|
|
57
|
+
let {
|
|
58
|
+
fontSize,
|
|
59
|
+
color,
|
|
60
|
+
defaultFontSize,
|
|
61
|
+
indentationLevel
|
|
62
|
+
} = _ref2;
|
|
63
|
+
const iconSize = parseInt(fontSize * DEFAULT_ICON_SIZE / defaultFontSize, 10);
|
|
64
|
+
let listIcon = circle(iconSize, color);
|
|
65
|
+
|
|
66
|
+
if (indentationLevel === 1) {
|
|
67
|
+
listIcon = circleOutline(iconSize, color);
|
|
68
|
+
} else if (indentationLevel > 1) {
|
|
69
|
+
listIcon = square(iconSize, color);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
const listStyles = [styles['wp-block-list-item__list-item-container'], {
|
|
73
|
+
marginTop: fontSize / 2
|
|
74
|
+
}];
|
|
75
|
+
return createElement(View, {
|
|
76
|
+
style: listStyles
|
|
77
|
+
}, createElement(Icon, {
|
|
78
|
+
icon: listIcon,
|
|
79
|
+
size: iconSize
|
|
80
|
+
}));
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export default function ListStyleType(_ref3) {
|
|
84
|
+
var _style$baseColors, _style$baseColors$typ, _style$baseColors2, _style$baseColors2$co;
|
|
85
|
+
|
|
86
|
+
let {
|
|
87
|
+
blockIndex,
|
|
88
|
+
indentationLevel,
|
|
89
|
+
numberOfListItems,
|
|
90
|
+
ordered,
|
|
91
|
+
reversed,
|
|
92
|
+
start,
|
|
93
|
+
style
|
|
94
|
+
} = _ref3;
|
|
95
|
+
let defaultFontSize = styles['wp-block-list-item__list-item--default'].fontSize;
|
|
96
|
+
|
|
97
|
+
if (style !== null && style !== void 0 && (_style$baseColors = style.baseColors) !== null && _style$baseColors !== void 0 && (_style$baseColors$typ = _style$baseColors.typography) !== null && _style$baseColors$typ !== void 0 && _style$baseColors$typ.fontSize) {
|
|
98
|
+
defaultFontSize = parseInt(style.baseColors.typography.fontSize, 10);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
const fontSize = parseInt(style !== null && style !== void 0 && style.fontSize ? style.fontSize : defaultFontSize, 10);
|
|
102
|
+
const defaultColor = style !== null && style !== void 0 && (_style$baseColors2 = style.baseColors) !== null && _style$baseColors2 !== void 0 && (_style$baseColors2$co = _style$baseColors2.color) !== null && _style$baseColors2$co !== void 0 && _style$baseColors2$co.text ? style.baseColors.color.text : styles['wp-block-list-item__list-item--default'].color;
|
|
103
|
+
const color = style !== null && style !== void 0 && style.color ? style.color : defaultColor;
|
|
104
|
+
|
|
105
|
+
if (ordered) {
|
|
106
|
+
return createElement(OrderedList, {
|
|
107
|
+
blockIndex: blockIndex,
|
|
108
|
+
color: color,
|
|
109
|
+
fontSize: fontSize,
|
|
110
|
+
numberOfListItems: numberOfListItems,
|
|
111
|
+
reversed: reversed,
|
|
112
|
+
start: start,
|
|
113
|
+
style: style
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
return createElement(IconList, {
|
|
118
|
+
color: color,
|
|
119
|
+
defaultFontSize: defaultFontSize,
|
|
120
|
+
fontSize: fontSize,
|
|
121
|
+
indentationLevel: indentationLevel
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=list-style-type.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/list-style-type.native.js"],"names":["View","Text","Icon","Platform","styles","circle","circleOutline","square","DEFAULT_ICON_SIZE","getListNumberIndex","start","blockIndex","reversed","numberOfListItems","OrderedList","color","fontSize","style","orderedStyles","isIOS","numberStyle","currentIndex","IconList","defaultFontSize","indentationLevel","iconSize","parseInt","listIcon","listStyles","marginTop","ListStyleType","ordered","baseColors","typography","defaultColor","text"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { Icon } from '@wordpress/components';\nimport { Platform } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport { circle, circleOutline, square } from './icons';\n\nconst DEFAULT_ICON_SIZE = 6;\n\nfunction getListNumberIndex( start, blockIndex, reversed, numberOfListItems ) {\n\tif ( start ) {\n\t\treturn reversed\n\t\t\t? numberOfListItems - 1 + start - blockIndex\n\t\t\t: start + blockIndex;\n\t}\n\n\tif ( reversed ) {\n\t\treturn numberOfListItems - blockIndex;\n\t}\n\n\treturn blockIndex + 1;\n}\n\nfunction OrderedList( {\n\tblockIndex,\n\tcolor,\n\tfontSize,\n\tnumberOfListItems,\n\treversed,\n\tstart,\n\tstyle,\n} ) {\n\tconst orderedStyles = [\n\t\tstyles[ 'wp-block-list-item__list-item-container--ordered' ],\n\t\tPlatform.isIOS &&\n\t\t\tstyles[ 'wp-block-list-item__list-item-ordered--default' ],\n\t\tPlatform.isIOS &&\n\t\t\tstyle?.fontSize &&\n\t\t\tstyles[ 'wp-block-list-item__list-item-ordered--custom' ],\n\t];\n\tconst numberStyle = [ { fontSize, color } ];\n\n\tconst currentIndex = getListNumberIndex(\n\t\tstart,\n\t\tblockIndex,\n\t\treversed,\n\t\tnumberOfListItems\n\t);\n\n\treturn (\n\t\t<View style={ orderedStyles }>\n\t\t\t<Text style={ numberStyle }>{ currentIndex }.</Text>\n\t\t</View>\n\t);\n}\n\nfunction IconList( { fontSize, color, defaultFontSize, indentationLevel } ) {\n\tconst iconSize = parseInt(\n\t\t( fontSize * DEFAULT_ICON_SIZE ) / defaultFontSize,\n\t\t10\n\t);\n\n\tlet listIcon = circle( iconSize, color );\n\tif ( indentationLevel === 1 ) {\n\t\tlistIcon = circleOutline( iconSize, color );\n\t} else if ( indentationLevel > 1 ) {\n\t\tlistIcon = square( iconSize, color );\n\t}\n\n\tconst listStyles = [\n\t\tstyles[ 'wp-block-list-item__list-item-container' ],\n\t\t{ marginTop: fontSize / 2 },\n\t];\n\n\treturn (\n\t\t<View style={ listStyles }>\n\t\t\t<Icon icon={ listIcon } size={ iconSize } />\n\t\t</View>\n\t);\n}\n\nexport default function ListStyleType( {\n\tblockIndex,\n\tindentationLevel,\n\tnumberOfListItems,\n\tordered,\n\treversed,\n\tstart,\n\tstyle,\n} ) {\n\tlet defaultFontSize =\n\t\tstyles[ 'wp-block-list-item__list-item--default' ].fontSize;\n\n\tif ( style?.baseColors?.typography?.fontSize ) {\n\t\tdefaultFontSize = parseInt( style.baseColors.typography.fontSize, 10 );\n\t}\n\n\tconst fontSize = parseInt(\n\t\tstyle?.fontSize ? style.fontSize : defaultFontSize,\n\t\t10\n\t);\n\tconst defaultColor = style?.baseColors?.color?.text\n\t\t? style.baseColors.color.text\n\t\t: styles[ 'wp-block-list-item__list-item--default' ].color;\n\tconst color = style?.color ? style.color : defaultColor;\n\n\tif ( ordered ) {\n\t\treturn (\n\t\t\t<OrderedList\n\t\t\t\tblockIndex={ blockIndex }\n\t\t\t\tcolor={ color }\n\t\t\t\tfontSize={ fontSize }\n\t\t\t\tnumberOfListItems={ numberOfListItems }\n\t\t\t\treversed={ reversed }\n\t\t\t\tstart={ start }\n\t\t\t\tstyle={ style }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<IconList\n\t\t\tcolor={ color }\n\t\t\tdefaultFontSize={ defaultFontSize }\n\t\t\tfontSize={ fontSize }\n\t\t\tindentationLevel={ indentationLevel }\n\t\t/>\n\t);\n}\n"]}
|