@wordpress/block-library 7.13.0 → 7.13.1-next.957ca95e4c.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/build/columns/transforms.js +10 -1
- package/build/columns/transforms.js.map +1 -1
- package/build/cover/edit/block-controls.js +9 -2
- package/build/cover/edit/block-controls.js.map +1 -1
- package/build/gallery/gap-styles.js +5 -4
- package/build/gallery/gap-styles.js.map +1 -1
- package/build/home-link/index.js +14 -1
- package/build/home-link/index.js.map +1 -1
- package/build/image/edit.js +3 -1
- package/build/image/edit.js.map +1 -1
- package/build/image/use-client-width.js +3 -1
- package/build/image/use-client-width.js.map +1 -1
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/build/index.native.js +3 -15
- package/build/index.native.js.map +1 -1
- package/build/latest-posts/deprecated.js +14 -1
- package/build/latest-posts/deprecated.js.map +1 -1
- package/build/latest-posts/index.js +14 -1
- package/build/latest-posts/index.js.map +1 -1
- package/build/list/deprecated.js +84 -1
- package/build/list/deprecated.js.map +1 -1
- package/build/list/edit.js +153 -134
- package/build/list/edit.js.map +1 -1
- package/build/list/index.js +29 -34
- package/build/list/index.js.map +1 -1
- package/build/list/save.js +1 -5
- package/build/list/save.js.map +1 -1
- package/build/list/{v2/tag-name.js → tag-name.js} +0 -0
- package/build/list/tag-name.js.map +1 -0
- package/build/list/{v2/tag-name.native.js → tag-name.native.js} +0 -0
- package/build/list/tag-name.native.js.map +1 -0
- package/build/list/transforms.js +61 -95
- package/build/list/transforms.js.map +1 -1
- package/build/list/{v2/migrate.js → utils.js} +3 -2
- package/build/list/utils.js.map +1 -0
- package/build/list-item/edit.native.js +21 -3
- package/build/list-item/edit.native.js.map +1 -1
- package/build/list-item/hooks/use-copy.js +2 -0
- package/build/list-item/hooks/use-copy.js.map +1 -1
- package/build/list-item/hooks/use-merge.js +0 -1
- package/build/list-item/hooks/use-merge.js.map +1 -1
- package/build/list-item/hooks/use-outdent-list-item.js +0 -1
- package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build/list-item/hooks/use-space.js +10 -1
- package/build/list-item/hooks/use-space.js.map +1 -1
- package/build/list-item/index.js +0 -1
- package/build/list-item/index.js.map +1 -1
- package/build/list-item/utils.js +0 -1
- package/build/list-item/utils.js.map +1 -1
- package/build/navigation/edit/index.js +6 -3
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +6 -4
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +4 -15
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/post-excerpt/index.js +4 -2
- package/build/post-excerpt/index.js.map +1 -1
- package/build/post-terms/edit.js +0 -1
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/use-post-terms.js +4 -24
- package/build/post-terms/use-post-terms.js.map +1 -1
- package/build/query-no-results/index.js +13 -0
- package/build/query-no-results/index.js.map +1 -1
- package/build/query-pagination-numbers/index.js +4 -2
- package/build/query-pagination-numbers/index.js.map +1 -1
- package/build/query-title/index.js +1 -0
- package/build/query-title/index.js.map +1 -1
- package/build/quote/index.js +4 -2
- package/build/quote/index.js.map +1 -1
- package/build/term-description/index.js +6 -0
- package/build/term-description/index.js.map +1 -1
- package/build/verse/index.js +1 -0
- package/build/verse/index.js.map +1 -1
- package/build-module/columns/transforms.js +10 -1
- package/build-module/columns/transforms.js.map +1 -1
- package/build-module/cover/edit/block-controls.js +10 -3
- package/build-module/cover/edit/block-controls.js.map +1 -1
- package/build-module/gallery/gap-styles.js +6 -5
- package/build-module/gallery/gap-styles.js.map +1 -1
- package/build-module/home-link/index.js +14 -1
- package/build-module/home-link/index.js.map +1 -1
- package/build-module/image/edit.js +4 -2
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/use-client-width.js +3 -1
- package/build-module/image/use-client-width.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/index.native.js +3 -15
- package/build-module/index.native.js.map +1 -1
- package/build-module/latest-posts/deprecated.js +14 -1
- package/build-module/latest-posts/deprecated.js.map +1 -1
- package/build-module/latest-posts/index.js +14 -1
- package/build-module/latest-posts/index.js.map +1 -1
- package/build-module/list/deprecated.js +83 -1
- package/build-module/list/deprecated.js.map +1 -1
- package/build-module/list/edit.js +151 -134
- package/build-module/list/edit.js.map +1 -1
- package/build-module/list/index.js +29 -29
- package/build-module/list/index.js.map +1 -1
- package/build-module/list/save.js +2 -6
- package/build-module/list/save.js.map +1 -1
- package/build-module/list/{v2/tag-name.js → tag-name.js} +0 -0
- package/build-module/list/tag-name.js.map +1 -0
- package/build-module/list/{v2/tag-name.native.js → tag-name.native.js} +0 -0
- package/build-module/list/tag-name.native.js.map +1 -0
- package/build-module/list/transforms.js +62 -97
- package/build-module/list/transforms.js.map +1 -1
- package/build-module/list/{v2/migrate.js → utils.js} +3 -2
- package/build-module/list/utils.js.map +1 -0
- package/build-module/list-item/edit.native.js +19 -3
- package/build-module/list-item/edit.native.js.map +1 -1
- package/build-module/list-item/hooks/use-copy.js +2 -0
- package/build-module/list-item/hooks/use-copy.js.map +1 -1
- package/build-module/list-item/hooks/use-merge.js +0 -1
- package/build-module/list-item/hooks/use-merge.js.map +1 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js +0 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build-module/list-item/hooks/use-space.js +10 -1
- package/build-module/list-item/hooks/use-space.js.map +1 -1
- package/build-module/list-item/index.js +0 -1
- package/build-module/list-item/index.js.map +1 -1
- package/build-module/list-item/utils.js +0 -1
- package/build-module/list-item/utils.js.map +1 -1
- package/build-module/navigation/edit/index.js +5 -3
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +6 -4
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +5 -15
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/post-excerpt/index.js +4 -2
- package/build-module/post-excerpt/index.js.map +1 -1
- package/build-module/post-terms/edit.js +0 -1
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/use-post-terms.js +5 -25
- package/build-module/post-terms/use-post-terms.js.map +1 -1
- package/build-module/query-no-results/index.js +13 -0
- package/build-module/query-no-results/index.js.map +1 -1
- package/build-module/query-pagination-numbers/index.js +4 -2
- package/build-module/query-pagination-numbers/index.js.map +1 -1
- package/build-module/query-title/index.js +1 -0
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/quote/index.js +4 -2
- package/build-module/quote/index.js.map +1 -1
- package/build-module/term-description/index.js +6 -0
- package/build-module/term-description/index.js.map +1 -1
- package/build-module/verse/index.js +1 -0
- package/build-module/verse/index.js.map +1 -1
- package/build-style/button/style-rtl.css +1 -4
- package/build-style/button/style.css +1 -4
- package/build-style/code/editor-rtl.css +79 -0
- package/build-style/code/editor.css +79 -0
- package/build-style/cover/editor-rtl.css +0 -3
- package/build-style/cover/editor.css +0 -3
- package/build-style/editor-rtl.css +9 -44
- package/build-style/editor.css +9 -44
- package/build-style/group/editor-rtl.css +2 -22
- package/build-style/group/editor.css +2 -22
- package/build-style/navigation/editor-rtl.css +3 -19
- package/build-style/navigation/editor.css +3 -19
- package/build-style/navigation/style-rtl.css +8 -1
- package/build-style/navigation/style.css +8 -1
- package/build-style/style-rtl.css +9 -5
- package/build-style/style.css +9 -5
- package/package.json +28 -28
- package/src/button/style.scss +1 -8
- package/src/code/editor.scss +3 -0
- package/src/columns/transforms.js +17 -3
- package/src/cover/edit/block-controls.js +15 -3
- package/src/cover/editor.scss +0 -4
- package/src/editor.scss +1 -0
- package/src/gallery/gap-styles.js +10 -6
- package/src/gallery/index.php +23 -2
- package/src/group/editor.scss +1 -28
- package/src/home-link/block.json +14 -1
- package/src/image/edit.js +3 -3
- package/src/image/use-client-width.js +1 -1
- package/src/index.js +1 -4
- package/src/index.native.js +2 -13
- package/src/latest-posts/block.json +14 -1
- package/src/list/deprecated.js +71 -1
- package/src/list/edit.js +146 -133
- package/src/list/index.js +25 -24
- package/src/list/save.js +3 -4
- package/src/list/{v2/tag-name.js → tag-name.js} +0 -0
- package/src/list/{v2/tag-name.native.js → tag-name.native.js} +0 -0
- package/src/list/test/__snapshots__/edit.native.js.snap +14 -2
- package/src/list/test/edit.native.js +0 -154
- package/src/list/transforms.js +57 -111
- package/src/list/{v2/migrate.js → utils.js} +2 -2
- package/src/list-item/block.json +0 -1
- package/src/list-item/edit.native.js +32 -2
- package/src/list-item/hooks/use-copy.js +2 -0
- package/src/list-item/hooks/use-space.js +10 -2
- package/src/list-item/style.native.scss +8 -0
- package/src/navigation/edit/index.js +14 -4
- package/src/navigation/edit/responsive-wrapper.js +8 -3
- package/src/navigation/edit/unsaved-inner-blocks.js +14 -24
- package/src/navigation/editor.scss +2 -23
- package/src/navigation/index.php +13 -8
- package/src/navigation/style.scss +11 -2
- package/src/post-excerpt/block.json +4 -2
- package/src/post-terms/edit.js +0 -1
- package/src/post-terms/use-post-terms.js +10 -15
- package/src/query-no-results/block.json +13 -0
- package/src/query-pagination-numbers/block.json +4 -2
- package/src/query-title/block.json +1 -0
- package/src/quote/block.json +4 -2
- package/src/term-description/block.json +6 -0
- package/src/verse/block.json +1 -0
- package/build/list/v2/deprecated.js +0 -117
- package/build/list/v2/deprecated.js.map +0 -1
- package/build/list/v2/edit.js +0 -200
- package/build/list/v2/edit.js.map +0 -1
- package/build/list/v2/index.js +0 -36
- package/build/list/v2/index.js.map +0 -1
- package/build/list/v2/migrate.js.map +0 -1
- package/build/list/v2/save.js +0 -34
- package/build/list/v2/save.js.map +0 -1
- package/build/list/v2/tag-name.js.map +0 -1
- package/build/list/v2/tag-name.native.js.map +0 -1
- package/build/list/v2/transforms.js +0 -137
- package/build/list/v2/transforms.js.map +0 -1
- package/build-module/list/v2/deprecated.js +0 -104
- package/build-module/list/v2/deprecated.js.map +0 -1
- package/build-module/list/v2/edit.js +0 -179
- package/build-module/list/v2/edit.js.map +0 -1
- package/build-module/list/v2/index.js +0 -21
- package/build-module/list/v2/index.js.map +0 -1
- package/build-module/list/v2/migrate.js.map +0 -1
- package/build-module/list/v2/save.js +0 -23
- package/build-module/list/v2/save.js.map +0 -1
- package/build-module/list/v2/tag-name.js.map +0 -1
- package/build-module/list/v2/tag-name.native.js.map +0 -1
- package/build-module/list/v2/transforms.js +0 -127
- package/build-module/list/v2/transforms.js.map +0 -1
- package/src/list/test/migrate.js +0 -158
- package/src/list/v2/deprecated.js +0 -89
- package/src/list/v2/edit.js +0 -192
- package/src/list/v2/index.js +0 -22
- package/src/list/v2/save.js +0 -18
- package/src/list/v2/transforms.js +0 -120
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { createBlock
|
|
5
|
-
import {
|
|
4
|
+
import { createBlock } from '@wordpress/blocks';
|
|
5
|
+
import { create, split, toHTMLString } from '@wordpress/rich-text';
|
|
6
|
+
/**
|
|
7
|
+
* Internal dependencies
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { createListBlockFromDOMElement } from './utils';
|
|
6
11
|
|
|
7
12
|
function getListContentSchema(_ref) {
|
|
8
13
|
let {
|
|
@@ -27,34 +32,55 @@ function getListContentSchema(_ref) {
|
|
|
27
32
|
return listContentSchema;
|
|
28
33
|
}
|
|
29
34
|
|
|
35
|
+
function getListContentFlat(blocks) {
|
|
36
|
+
return blocks.flatMap(_ref2 => {
|
|
37
|
+
let {
|
|
38
|
+
name,
|
|
39
|
+
attributes,
|
|
40
|
+
innerBlocks = []
|
|
41
|
+
} = _ref2;
|
|
42
|
+
|
|
43
|
+
if (name === 'core/list-item') {
|
|
44
|
+
return [attributes.content, ...getListContentFlat(innerBlocks)];
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return getListContentFlat(innerBlocks);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
|
|
30
51
|
const transforms = {
|
|
31
52
|
from: [{
|
|
32
53
|
type: 'block',
|
|
33
54
|
isMultiBlock: true,
|
|
34
55
|
blocks: ['core/paragraph', 'core/heading'],
|
|
35
56
|
transform: blockAttributes => {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
57
|
+
let childBlocks = [];
|
|
58
|
+
|
|
59
|
+
if (blockAttributes.length > 1) {
|
|
60
|
+
childBlocks = blockAttributes.map(_ref3 => {
|
|
61
|
+
let {
|
|
62
|
+
content
|
|
63
|
+
} = _ref3;
|
|
64
|
+
return createBlock('core/list-item', {
|
|
65
|
+
content
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
} else if (blockAttributes.length === 1) {
|
|
69
|
+
const value = create({
|
|
70
|
+
html: blockAttributes[0].content
|
|
71
|
+
});
|
|
72
|
+
childBlocks = split(value, '\n').map(result => {
|
|
73
|
+
return createBlock('core/list-item', {
|
|
74
|
+
content: toHTMLString({
|
|
75
|
+
value: result
|
|
76
|
+
})
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
}
|
|
51
80
|
|
|
52
|
-
|
|
53
|
-
}), __UNSTABLE_LINE_SEPARATOR),
|
|
54
|
-
multilineTag: 'li'
|
|
55
|
-
}),
|
|
81
|
+
return createBlock('core/list', {
|
|
56
82
|
anchor: blockAttributes.anchor
|
|
57
|
-
});
|
|
83
|
+
}, childBlocks);
|
|
58
84
|
}
|
|
59
85
|
}, {
|
|
60
86
|
type: 'raw',
|
|
@@ -63,45 +89,15 @@ const transforms = {
|
|
|
63
89
|
ol: getListContentSchema(args).ol,
|
|
64
90
|
ul: getListContentSchema(args).ul
|
|
65
91
|
}),
|
|
66
|
-
|
|
67
|
-
transform(node) {
|
|
68
|
-
const attributes = {
|
|
69
|
-
ordered: node.nodeName === 'OL',
|
|
70
|
-
anchor: node.id === '' ? undefined : node.id
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
if (attributes.ordered) {
|
|
74
|
-
const type = node.getAttribute('type');
|
|
75
|
-
|
|
76
|
-
if (type) {
|
|
77
|
-
attributes.type = type;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
if (node.getAttribute('reversed') !== null) {
|
|
81
|
-
attributes.reversed = true;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
const start = parseInt(node.getAttribute('start'), 10);
|
|
85
|
-
|
|
86
|
-
if (!isNaN(start) && ( // start=1 only makes sense if the list is reversed.
|
|
87
|
-
start !== 1 || attributes.reversed)) {
|
|
88
|
-
attributes.start = start;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
return createBlock('core/list', { ...getBlockAttributes('core/list', node.outerHTML),
|
|
93
|
-
...attributes
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
|
|
92
|
+
transform: createListBlockFromDOMElement
|
|
97
93
|
}, ...['*', '-'].map(prefix => ({
|
|
98
94
|
type: 'prefix',
|
|
99
95
|
prefix,
|
|
100
96
|
|
|
101
97
|
transform(content) {
|
|
102
|
-
return createBlock('core/list', {
|
|
103
|
-
|
|
104
|
-
});
|
|
98
|
+
return createBlock('core/list', {}, [createBlock('core/list-item', {
|
|
99
|
+
content
|
|
100
|
+
})]);
|
|
105
101
|
}
|
|
106
102
|
|
|
107
103
|
})), ...['1.', '1)'].map(prefix => ({
|
|
@@ -110,53 +106,22 @@ const transforms = {
|
|
|
110
106
|
|
|
111
107
|
transform(content) {
|
|
112
108
|
return createBlock('core/list', {
|
|
113
|
-
ordered: true
|
|
114
|
-
|
|
115
|
-
|
|
109
|
+
ordered: true
|
|
110
|
+
}, [createBlock('core/list-item', {
|
|
111
|
+
content
|
|
112
|
+
})]);
|
|
116
113
|
}
|
|
117
114
|
|
|
118
115
|
}))],
|
|
119
|
-
to: [{
|
|
120
|
-
type: 'block',
|
|
121
|
-
blocks: ['core/paragraph'],
|
|
122
|
-
transform: _ref3 => {
|
|
123
|
-
let {
|
|
124
|
-
values
|
|
125
|
-
} = _ref3;
|
|
126
|
-
return split(create({
|
|
127
|
-
html: values,
|
|
128
|
-
multilineTag: 'li',
|
|
129
|
-
multilineWrapperTags: ['ul', 'ol']
|
|
130
|
-
}), __UNSTABLE_LINE_SEPARATOR).map(piece => createBlock('core/paragraph', {
|
|
131
|
-
content: toHTMLString({
|
|
132
|
-
value: piece
|
|
133
|
-
})
|
|
134
|
-
}));
|
|
135
|
-
}
|
|
136
|
-
}, {
|
|
116
|
+
to: [...['core/paragraph', 'core/heading'].map(block => ({
|
|
137
117
|
type: 'block',
|
|
138
|
-
blocks: [
|
|
139
|
-
transform:
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
} = _ref4;
|
|
143
|
-
return split(create({
|
|
144
|
-
html: values,
|
|
145
|
-
multilineTag: 'li',
|
|
146
|
-
multilineWrapperTags: ['ul', 'ol']
|
|
147
|
-
}), __UNSTABLE_LINE_SEPARATOR).map(piece => createBlock('core/heading', {
|
|
148
|
-
content: toHTMLString({
|
|
149
|
-
value: piece
|
|
150
|
-
})
|
|
118
|
+
blocks: [block],
|
|
119
|
+
transform: (_attributes, childBlocks) => {
|
|
120
|
+
return getListContentFlat(childBlocks).map(content => createBlock(block, {
|
|
121
|
+
content
|
|
151
122
|
}));
|
|
152
123
|
}
|
|
153
|
-
}
|
|
154
|
-
type: 'block',
|
|
155
|
-
blocks: ['core/table-of-contents'],
|
|
156
|
-
transform: () => {
|
|
157
|
-
return createBlock('core/table-of-contents');
|
|
158
|
-
}
|
|
159
|
-
}]
|
|
124
|
+
}))]
|
|
160
125
|
};
|
|
161
126
|
export default transforms;
|
|
162
127
|
//# sourceMappingURL=transforms.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list/transforms.js"],"names":["createBlock","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list/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","selector","schema","args","prefix","ordered","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 './utils';\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{\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\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],\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"]}
|
|
@@ -12,8 +12,9 @@ export function createListBlockFromDOMElement(listElement) {
|
|
|
12
12
|
|
|
13
13
|
const listAttributes = {
|
|
14
14
|
ordered: 'OL' === listElement.tagName,
|
|
15
|
+
anchor: listElement.id === '' ? undefined : listElement.id,
|
|
15
16
|
start: listElement.getAttribute('start') ? parseInt(listElement.getAttribute('start'), 10) : undefined,
|
|
16
|
-
reversed: listElement.
|
|
17
|
+
reversed: listElement.hasAttribute('reversed') ? true : undefined,
|
|
17
18
|
type: (_listElement$getAttri = listElement.getAttribute('type')) !== null && _listElement$getAttri !== void 0 ? _listElement$getAttri : undefined
|
|
18
19
|
};
|
|
19
20
|
const innerBlocks = Array.from(listElement.children).map(listItem => {
|
|
@@ -72,4 +73,4 @@ export function migrateToListV2(attributes) {
|
|
|
72
73
|
...listBlock.attributes
|
|
73
74
|
}, listBlock.innerBlocks];
|
|
74
75
|
}
|
|
75
|
-
//# sourceMappingURL=
|
|
76
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list/utils.js"],"names":["omit","createBlock","createListBlockFromDOMElement","listElement","listAttributes","ordered","tagName","anchor","id","undefined","start","getAttribute","parseInt","reversed","hasAttribute","type","innerBlocks","Array","from","children","map","listItem","childNodes","filter","node","nodeType","TEXT_NODE","textContent","trim","length","reverse","nestedList","nodes","hasNestedList","content","innerHTML","htmlNodes","outerHTML","childAttributes","join","childInnerBlocks","migrateToListV2","attributes","values","list","document","createElement","setAttribute","listBlock"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\n\nexport function createListBlockFromDOMElement( listElement ) {\n\tconst listAttributes = {\n\t\tordered: 'OL' === listElement.tagName,\n\t\tanchor: listElement.id === '' ? undefined : listElement.id,\n\t\tstart: listElement.getAttribute( 'start' )\n\t\t\t? parseInt( listElement.getAttribute( 'start' ), 10 )\n\t\t\t: undefined,\n\t\treversed: listElement.hasAttribute( 'reversed' ) ? true : undefined,\n\t\ttype: listElement.getAttribute( 'type' ) ?? undefined,\n\t};\n\n\tconst innerBlocks = Array.from( listElement.children ).map(\n\t\t( listItem ) => {\n\t\t\tconst children = Array.from( listItem.childNodes ).filter(\n\t\t\t\t( node ) =>\n\t\t\t\t\tnode.nodeType !== node.TEXT_NODE ||\n\t\t\t\t\tnode.textContent.trim().length !== 0\n\t\t\t);\n\t\t\tchildren.reverse();\n\t\t\tconst [ nestedList, ...nodes ] = children;\n\n\t\t\tconst hasNestedList =\n\t\t\t\tnestedList.tagName === 'UL' || nestedList.tagName === 'OL';\n\t\t\tif ( ! hasNestedList ) {\n\t\t\t\treturn createBlock( 'core/list-item', {\n\t\t\t\t\tcontent: listItem.innerHTML,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tconst htmlNodes = nodes.map( ( node ) => {\n\t\t\t\tif ( node.nodeType === node.TEXT_NODE ) {\n\t\t\t\t\treturn node.textContent;\n\t\t\t\t}\n\t\t\t\treturn node.outerHTML;\n\t\t\t} );\n\t\t\thtmlNodes.reverse();\n\t\t\tconst childAttributes = {\n\t\t\t\tcontent: htmlNodes.join( '' ).trim(),\n\t\t\t};\n\t\t\tconst childInnerBlocks = [\n\t\t\t\tcreateListBlockFromDOMElement( nestedList ),\n\t\t\t];\n\t\t\treturn createBlock(\n\t\t\t\t'core/list-item',\n\t\t\t\tchildAttributes,\n\t\t\t\tchildInnerBlocks\n\t\t\t);\n\t\t}\n\t);\n\n\treturn createBlock( 'core/list', listAttributes, innerBlocks );\n}\n\nexport function migrateToListV2( attributes ) {\n\tconst { values, start, reversed, ordered, type } = attributes;\n\n\tconst list = document.createElement( ordered ? 'ol' : 'ul' );\n\tlist.innerHTML = values;\n\tif ( start ) {\n\t\tlist.setAttribute( 'start', start );\n\t}\n\tif ( reversed ) {\n\t\tlist.setAttribute( 'reversed', true );\n\t}\n\tif ( type ) {\n\t\tlist.setAttribute( 'type', type );\n\t}\n\n\tconst listBlock = createListBlockFromDOMElement( list );\n\n\treturn [\n\t\t{\n\t\t\t...omit( attributes, [ 'values' ] ),\n\t\t\t...listBlock.attributes,\n\t\t},\n\t\tlistBlock.innerBlocks,\n\t];\n}\n"]}
|
|
@@ -10,6 +10,7 @@ import { View } from 'react-native';
|
|
|
10
10
|
|
|
11
11
|
import { RichText, useBlockProps, useInnerBlocksProps, BlockControls, store as blockEditorStore } from '@wordpress/block-editor';
|
|
12
12
|
import { __ } from '@wordpress/i18n';
|
|
13
|
+
import { usePreferredColorSchemeStyle } from '@wordpress/compose';
|
|
13
14
|
import { useSelect } from '@wordpress/data';
|
|
14
15
|
import { useState, useCallback } from '@wordpress/element';
|
|
15
16
|
/**
|
|
@@ -21,7 +22,10 @@ import { convertToListItems } from './utils';
|
|
|
21
22
|
import { IndentUI } from './edit.js';
|
|
22
23
|
import styles from './style.scss';
|
|
23
24
|
import ListStyleType from './list-style-type';
|
|
25
|
+
const OPACITY = '9e';
|
|
24
26
|
export default function ListItemEdit(_ref) {
|
|
27
|
+
var _style$baseColors, _style$baseColors$col;
|
|
28
|
+
|
|
25
29
|
let {
|
|
26
30
|
attributes,
|
|
27
31
|
setAttributes,
|
|
@@ -75,8 +79,19 @@ export default function ListItemEdit(_ref) {
|
|
|
75
79
|
});
|
|
76
80
|
const innerBlocksProps = useInnerBlocksProps(blockProps, {
|
|
77
81
|
allowedBlocks: ['core/list'],
|
|
78
|
-
|
|
79
|
-
});
|
|
82
|
+
useCompactList: true
|
|
83
|
+
}); // Set default placeholder text color from light/dark scheme or base colors
|
|
84
|
+
|
|
85
|
+
const defaultPlaceholderFromScheme = usePreferredColorSchemeStyle(styles['wp-block-list-item__list-item-placeholder'], styles['wp-block-list-item__list-item-placeholder--dark']);
|
|
86
|
+
const currentTextColor = (style === null || style === void 0 ? void 0 : style.color) || (style === null || style === void 0 ? void 0 : (_style$baseColors = style.baseColors) === null || _style$baseColors === void 0 ? void 0 : (_style$baseColors$col = _style$baseColors.color) === null || _style$baseColors$col === void 0 ? void 0 : _style$baseColors$col.text);
|
|
87
|
+
const defaultPlaceholderTextColor = currentTextColor ? currentTextColor : defaultPlaceholderFromScheme === null || defaultPlaceholderFromScheme === void 0 ? void 0 : defaultPlaceholderFromScheme.color; // Add hex opacity to default placeholder text color and style object
|
|
88
|
+
|
|
89
|
+
const defaultPlaceholderTextColorWithOpacity = defaultPlaceholderTextColor + OPACITY;
|
|
90
|
+
const styleWithPlaceholderOpacity = { ...style,
|
|
91
|
+
...((style === null || style === void 0 ? void 0 : style.color) && {
|
|
92
|
+
placeholderColor: style.color + OPACITY
|
|
93
|
+
})
|
|
94
|
+
};
|
|
80
95
|
const onSplit = useSplit(clientId);
|
|
81
96
|
const onMerge = useMerge(clientId);
|
|
82
97
|
const onLayout = useCallback(_ref2 => {
|
|
@@ -120,6 +135,7 @@ export default function ListItemEdit(_ref) {
|
|
|
120
135
|
}),
|
|
121
136
|
value: content,
|
|
122
137
|
placeholder: placeholder || __('List'),
|
|
138
|
+
placeholderTextColor: defaultPlaceholderTextColorWithOpacity,
|
|
123
139
|
onSplit: onSplit,
|
|
124
140
|
onMerge: onMerge,
|
|
125
141
|
onReplace: function (blocks) {
|
|
@@ -129,7 +145,7 @@ export default function ListItemEdit(_ref) {
|
|
|
129
145
|
|
|
130
146
|
onReplace(convertToListItems(blocks), ...args);
|
|
131
147
|
},
|
|
132
|
-
style:
|
|
148
|
+
style: styleWithPlaceholderOpacity,
|
|
133
149
|
deleteEnter: true,
|
|
134
150
|
containerWidth: contentWidth
|
|
135
151
|
}))), createElement(View, innerBlocksProps), createElement(BlockControls, {
|
|
@@ -1 +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"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/edit.native.js"],"names":["View","RichText","useBlockProps","useInnerBlocksProps","BlockControls","store","blockEditorStore","__","usePreferredColorSchemeStyle","useSelect","useState","useCallback","useSplit","useMerge","convertToListItems","IndentUI","styles","ListStyleType","OPACITY","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","useCompactList","defaultPlaceholderFromScheme","currentTextColor","color","baseColors","text","defaultPlaceholderTextColor","defaultPlaceholderTextColorWithOpacity","styleWithPlaceholderOpacity","placeholderColor","onSplit","onMerge","onLayout","nativeEvent","prevState","width","layout","Math","floor","nextContent","blocks","args"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,cAArB;AAEA;AACA;AACA;;AACA,SACCC,QADD,EAECC,aAFD,EAGCC,mBAHD,EAICC,aAJD,EAKCC,KAAK,IAAIC,gBALV,QAMO,yBANP;AAOA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,4BAAT,QAA6C,oBAA7C;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,QAAT,EAAmBC,WAAnB,QAAsC,oBAAtC;AAEA;AACA;AACA;;AACA,SAASC,QAAT,EAAmBC,QAAnB,QAAmC,SAAnC;AACA,SAASC,kBAAT,QAAmC,SAAnC;AACA,SAASC,QAAT,QAAyB,WAAzB;AACA,OAAOC,MAAP,MAAmB,cAAnB;AACA,OAAOC,aAAP,MAA0B,mBAA1B;AAEA,MAAMC,OAAO,GAAG,IAAhB;AAEA,eAAe,SAASC,YAAT,OAMX;AAAA;;AAAA,MANkC;AACrCC,IAAAA,UADqC;AAErCC,IAAAA,aAFqC;AAGrCC,IAAAA,SAHqC;AAIrCC,IAAAA,QAJqC;AAKrCC,IAAAA;AALqC,GAMlC;AACH,QAAM,CAAEC,YAAF,EAAgBC,eAAhB,IAAoChB,QAAQ,EAAlD;AACA,QAAM;AAAEiB,IAAAA,WAAF;AAAeC,IAAAA;AAAf,MAA2BR,UAAjC;AACA,QAAM;AACLS,IAAAA,UADK;AAELC,IAAAA,cAFK;AAGLC,IAAAA,gBAHK;AAILC,IAAAA,iBAJK;AAKLC,IAAAA,OALK;AAMLC,IAAAA,QANK;AAOLC,IAAAA;AAPK,MAQF1B,SAAS,CACV2B,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,kBADK;AAELC,MAAAA,aAFK;AAGLC,MAAAA,aAHK;AAILC,MAAAA,0BAJK;AAKLC,MAAAA;AALK,QAMFL,MAAM,CAAE9B,gBAAF,CANV;AAOA,UAAMoC,sBAAsB,GAAGF,0BAA0B,CACxDjB,QADwD,EAExD,gBAFwD,EAGxD,IAHwD,CAA1B,CAI7BoB,MAJF;AAKA,UAAMC,iBAAiB,GAAGL,aAAa,CAAEhB,QAAF,CAAvC;AACA,UAAMsB,oBAAoB,GAAGP,aAAa,CAAEf,QAAF,CAAb,GAA4B,CAAzD;AACA,UAAMuB,YAAY,GAAGL,oBAAoB,CAAElB,QAAF,CAAzC;AACA,UAAMwB,eAAe,GAAGV,kBAAkB,CAAES,YAAF,CAA1C;AACA,UAAME,cAAc,GAAGV,aAAa,CAAEQ,YAAF,CAApC;AACA,UAAM;AACLb,MAAAA,OAAO,EAAEgB,SADJ;AAELf,MAAAA,QAAQ,EAAEgB,UAFL;AAGLf,MAAAA,KAAK,EAAEgB;AAHF,QAIFJ,eAAe,IAAI,EAJvB;AAMA,WAAO;AACNlB,MAAAA,UAAU,EAAEe,iBADN;AAENd,MAAAA,cAAc,EAAEe,oBAFV;AAGNd,MAAAA,gBAAgB,EAAEW,sBAHZ;AAINV,MAAAA,iBAAiB,EAAEgB,cAJb;AAKNf,MAAAA,OAAO,EAAEgB,SALH;AAMNf,MAAAA,QAAQ,EAAEgB,UANJ;AAONf,MAAAA,KAAK,EAAEgB;AAPD,KAAP;AASA,GAlCW,EAmCZ,CAAE5B,QAAF,CAnCY,CARb;AA8CA,QAAM6B,UAAU,GAAGlD,aAAa,CAAE,EACjC,IAAK4B,cAAc,IAAId,MAAM,CAAE,mCAAF,CAA7B;AADiC,GAAF,CAAhC;AAIA,QAAMqC,gBAAgB,GAAGlD,mBAAmB,CAAEiD,UAAF,EAAc;AACzDE,IAAAA,aAAa,EAAE,CAAE,WAAF,CAD0C;AAEzDC,IAAAA,cAAc,EAAE;AAFyC,GAAd,CAA5C,CArDG,CA0DH;;AACA,QAAMC,4BAA4B,GAAGhD,4BAA4B,CAChEQ,MAAM,CAAE,2CAAF,CAD0D,EAEhEA,MAAM,CAAE,iDAAF,CAF0D,CAAjE;AAKA,QAAMyC,gBAAgB,GAAG,CAAAjC,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEkC,KAAP,MAAgBlC,KAAhB,aAAgBA,KAAhB,4CAAgBA,KAAK,CAAEmC,UAAvB,+EAAgB,kBAAmBD,KAAnC,0DAAgB,sBAA0BE,IAA1C,CAAzB;AAEA,QAAMC,2BAA2B,GAAGJ,gBAAgB,GACjDA,gBADiD,GAEjDD,4BAFiD,aAEjDA,4BAFiD,uBAEjDA,4BAA4B,CAAEE,KAFjC,CAlEG,CAsEH;;AACA,QAAMI,sCAAsC,GAC3CD,2BAA2B,GAAG3C,OAD/B;AAGA,QAAM6C,2BAA2B,GAAG,EACnC,GAAGvC,KADgC;AAEnC,QAAK,CAAAA,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEkC,KAAP,KAAgB;AACpBM,MAAAA,gBAAgB,EAAExC,KAAK,CAACkC,KAAN,GAAcxC;AADZ,KAArB;AAFmC,GAApC;AAOA,QAAM+C,OAAO,GAAGrD,QAAQ,CAAEW,QAAF,CAAxB;AACA,QAAM2C,OAAO,GAAGrD,QAAQ,CAAEU,QAAF,CAAxB;AACA,QAAM4C,QAAQ,GAAGxD,WAAW,CAAE,SAAuB;AAAA,QAArB;AAAEyD,MAAAA;AAAF,KAAqB;AACpD1C,IAAAA,eAAe,CAAI2C,SAAF,IAAiB;AACjC,YAAM;AAAEC,QAAAA;AAAF,UAAYF,WAAW,CAACG,MAA9B;;AAEA,UAAK,CAAEF,SAAF,IAAeA,SAAS,CAACC,KAAV,KAAoBA,KAAxC,EAAgD;AAC/C,eAAOE,IAAI,CAACC,KAAL,CAAYH,KAAZ,CAAP;AACA;;AACD,aAAOD,SAAP;AACA,KAPc,CAAf;AAQA,GAT2B,EASzB,EATyB,CAA5B;AAWA,SACC,cAAC,IAAD;AAAM,IAAA,KAAK,EAAGrD,MAAM,CAAE,sCAAF;AAApB,KACC,cAAC,IAAD;AAAM,IAAA,KAAK,EAAGA,MAAM,CAAE,+BAAF;AAApB,KACC,cAAC,IAAD;AAAM,IAAA,KAAK,EAAGA,MAAM,CAAE,oCAAF;AAApB,KACC,cAAC,aAAD;AACC,IAAA,UAAU,EAAGa,UADd;AAEC,IAAA,gBAAgB,EAAGE,gBAFpB;AAGC,IAAA,iBAAiB,EAAGC,iBAHrB;AAIC,IAAA,OAAO,EAAGC,OAJX;AAKC,IAAA,QAAQ,EAAGC,QALZ;AAMC,IAAA,KAAK,EAAGC,KANT;AAOC,IAAA,KAAK,EAAGX;AAPT,IADD,CADD,EAYC,cAAC,IAAD;AACC,IAAA,KAAK,EAAGR,MAAM,CAAE,uCAAF,CADf;AAEC,IAAA,QAAQ,EAAGmD;AAFZ,KAIC,cAAC,QAAD;AACC,IAAA,UAAU,EAAC,SADZ;AAEC,IAAA,OAAO,EAAC,GAFT;AAGC,IAAA,QAAQ,EAAKO,WAAF,IACVrD,aAAa,CAAE;AAAEO,MAAAA,OAAO,EAAE8C;AAAX,KAAF,CAJf;AAMC,IAAA,KAAK,EAAG9C,OANT;AAOC,IAAA,WAAW,EAAGD,WAAW,IAAIpB,EAAE,CAAE,MAAF,CAPhC;AAQC,IAAA,oBAAoB,EACnBuD,sCATF;AAWC,IAAA,OAAO,EAAGG,OAXX;AAYC,IAAA,OAAO,EAAGC,OAZX;AAaC,IAAA,SAAS,EAAG,UAAES,MAAF,EAAuB;AAAA,wCAAVC,IAAU;AAAVA,QAAAA,IAAU;AAAA;;AAClCtD,MAAAA,SAAS,CAAER,kBAAkB,CAAE6D,MAAF,CAApB,EAAgC,GAAGC,IAAnC,CAAT;AACA,KAfF;AAgBC,IAAA,KAAK,EAAGb,2BAhBT;AAiBC,IAAA,WAAW,EAAG,IAjBf;AAkBC,IAAA,cAAc,EAAGtC;AAlBlB,IAJD,CAZD,CADD,EAuCC,cAAC,IAAD,EAAW4B,gBAAX,CAvCD,EAwCC,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,QAAD;AAAU,IAAA,QAAQ,EAAG9B;AAArB,IADD,CAxCD,CADD;AA8CA","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 } 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\nconst OPACITY = '9e';\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\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: [ 'core/list' ],\n\t\tuseCompactList: true,\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 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\tplaceholderTextColor={\n\t\t\t\t\t\t\tdefaultPlaceholderTextColorWithOpacity\n\t\t\t\t\t\t}\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={ styleWithPlaceholderOpacity }\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"]}
|
|
@@ -24,8 +24,10 @@ export default function useCopy(clientId) {
|
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
node.addEventListener('copy', onCopy);
|
|
27
|
+
node.addEventListener('cut', onCopy);
|
|
27
28
|
return () => {
|
|
28
29
|
node.removeEventListener('copy', onCopy);
|
|
30
|
+
node.removeEventListener('cut', onCopy);
|
|
29
31
|
};
|
|
30
32
|
}, []);
|
|
31
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-copy.js"],"names":["useRefEffect","store","blockEditorStore","useSelect","useCopy","clientId","getBlockRootClientId","getBlockName","getBlockAttributes","node","onCopy","event","clipboardData","getData","rootClientId","setData","JSON","stringify","addEventListener","removeEventListener"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAT,QAA6B,oBAA7B;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,yBAA1C;AACA,SAASC,SAAT,QAA0B,iBAA1B;AAEA,eAAe,SAASC,OAAT,CAAkBC,QAAlB,EAA6B;AAC3C,QAAM;AAAEC,IAAAA,oBAAF;AAAwBC,IAAAA,YAAxB;AAAsCC,IAAAA;AAAtC,MACLL,SAAS,CAAED,gBAAF,CADV;AAGA,SAAOF,YAAY,CAAIS,IAAF,IAAY;AAChC,aAASC,MAAT,CAAiBC,KAAjB,EAAyB;AACxB;AACA;AACA,UAAKA,KAAK,CAACC,aAAN,CAAoBC,OAApB,CAA6B,4BAA7B,CAAL,EAAmE;AAClE;AACA;;AAED,YAAMC,YAAY,GAAGR,oBAAoB,CAAED,QAAF,CAAzC;AACAM,MAAAA,KAAK,CAACC,aAAN,CAAoBG,OAApB,CACC,4BADD,EAECR,YAAY,CAAEO,YAAF,CAFb;AAIAH,MAAAA,KAAK,CAACC,aAAN,CAAoBG,OAApB,CACC,kCADD,EAECC,IAAI,CAACC,SAAL,CAAgBT,kBAAkB,CAAEM,YAAF,CAAlC,CAFD;AAIA;;AAEDL,IAAAA,IAAI,CAACS,gBAAL,CAAuB,MAAvB,EAA+BR,MAA/B;AACA,WAAO,MAAM;AACZD,MAAAA,IAAI,CAACU,mBAAL,CAA0B,MAA1B,EAAkCT,MAAlC;AACA,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-copy.js"],"names":["useRefEffect","store","blockEditorStore","useSelect","useCopy","clientId","getBlockRootClientId","getBlockName","getBlockAttributes","node","onCopy","event","clipboardData","getData","rootClientId","setData","JSON","stringify","addEventListener","removeEventListener"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAT,QAA6B,oBAA7B;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,yBAA1C;AACA,SAASC,SAAT,QAA0B,iBAA1B;AAEA,eAAe,SAASC,OAAT,CAAkBC,QAAlB,EAA6B;AAC3C,QAAM;AAAEC,IAAAA,oBAAF;AAAwBC,IAAAA,YAAxB;AAAsCC,IAAAA;AAAtC,MACLL,SAAS,CAAED,gBAAF,CADV;AAGA,SAAOF,YAAY,CAAIS,IAAF,IAAY;AAChC,aAASC,MAAT,CAAiBC,KAAjB,EAAyB;AACxB;AACA;AACA,UAAKA,KAAK,CAACC,aAAN,CAAoBC,OAApB,CAA6B,4BAA7B,CAAL,EAAmE;AAClE;AACA;;AAED,YAAMC,YAAY,GAAGR,oBAAoB,CAAED,QAAF,CAAzC;AACAM,MAAAA,KAAK,CAACC,aAAN,CAAoBG,OAApB,CACC,4BADD,EAECR,YAAY,CAAEO,YAAF,CAFb;AAIAH,MAAAA,KAAK,CAACC,aAAN,CAAoBG,OAApB,CACC,kCADD,EAECC,IAAI,CAACC,SAAL,CAAgBT,kBAAkB,CAAEM,YAAF,CAAlC,CAFD;AAIA;;AAEDL,IAAAA,IAAI,CAACS,gBAAL,CAAuB,MAAvB,EAA+BR,MAA/B;AACAD,IAAAA,IAAI,CAACS,gBAAL,CAAuB,KAAvB,EAA8BR,MAA9B;AACA,WAAO,MAAM;AACZD,MAAAA,IAAI,CAACU,mBAAL,CAA0B,MAA1B,EAAkCT,MAAlC;AACAD,MAAAA,IAAI,CAACU,mBAAL,CAA0B,KAA1B,EAAiCT,MAAjC;AACA,KAHD;AAIA,GAzBkB,EAyBhB,EAzBgB,CAAnB;AA0BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nexport default function useCopy( clientId ) {\n\tconst { getBlockRootClientId, getBlockName, getBlockAttributes } =\n\t\tuseSelect( blockEditorStore );\n\n\treturn useRefEffect( ( node ) => {\n\t\tfunction onCopy( event ) {\n\t\t\t// The event propagates through all nested lists, so don't override\n\t\t\t// when copying nested list items.\n\t\t\tif ( event.clipboardData.getData( '__unstableWrapperBlockName' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tevent.clipboardData.setData(\n\t\t\t\t'__unstableWrapperBlockName',\n\t\t\t\tgetBlockName( rootClientId )\n\t\t\t);\n\t\t\tevent.clipboardData.setData(\n\t\t\t\t'__unstableWrapperBlockAttributes',\n\t\t\t\tJSON.stringify( getBlockAttributes( rootClientId ) )\n\t\t\t);\n\t\t}\n\n\t\tnode.addEventListener( 'copy', onCopy );\n\t\tnode.addEventListener( 'cut', onCopy );\n\t\treturn () => {\n\t\t\tnode.removeEventListener( 'copy', onCopy );\n\t\t\tnode.removeEventListener( 'cut', onCopy );\n\t\t};\n\t}, [] );\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-merge.js"],"names":["useRegistry","useDispatch","useSelect","store","blockEditorStore","getDefaultBlockName","switchToBlockType","useOutdentListItem","useMerge","clientId","registry","getPreviousBlockClientId","getNextBlockClientId","getBlockOrder","getBlockRootClientId","getBlockName","getBlock","mergeBlocks","moveBlocksToPosition","replaceBlock","selectBlock","outdentListItem","getTrailingId","id","order","length","getParentListItemId","listId","parentListItemId","listItemName","_getNextId","next","getNextId","switchToDefaultBlockType","forward","rootClientId","replacement","indexToSelect","initialPosition","batch","nextBlockClientId","previousBlockClientId","trailingId"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAT,EAAsBC,WAAtB,EAAmCC,SAAnC,QAAoD,iBAApD;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,yBAA1C;AACA,SAASC,mBAAT,EAA8BC,iBAA9B,QAAuD,mBAAvD;AAEA;AACA;AACA;;AACA,OAAOC,kBAAP,MAA+B,yBAA/B
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-merge.js"],"names":["useRegistry","useDispatch","useSelect","store","blockEditorStore","getDefaultBlockName","switchToBlockType","useOutdentListItem","useMerge","clientId","registry","getPreviousBlockClientId","getNextBlockClientId","getBlockOrder","getBlockRootClientId","getBlockName","getBlock","mergeBlocks","moveBlocksToPosition","replaceBlock","selectBlock","outdentListItem","getTrailingId","id","order","length","getParentListItemId","listId","parentListItemId","listItemName","_getNextId","next","getNextId","switchToDefaultBlockType","forward","rootClientId","replacement","indexToSelect","initialPosition","batch","nextBlockClientId","previousBlockClientId","trailingId"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRegistry, useDispatch, useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { getDefaultBlockName, switchToBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport useOutdentListItem from './use-outdent-list-item';\n\nimport { name as listItemName } from '../block.json';\n\nexport default function useMerge( clientId ) {\n\tconst registry = useRegistry();\n\tconst {\n\t\tgetPreviousBlockClientId,\n\t\tgetNextBlockClientId,\n\t\tgetBlockOrder,\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tgetBlock,\n\t} = useSelect( blockEditorStore );\n\tconst { mergeBlocks, moveBlocksToPosition, replaceBlock, selectBlock } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ , outdentListItem ] = useOutdentListItem( clientId );\n\n\tfunction getTrailingId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\tif ( ! order.length ) {\n\t\t\treturn id;\n\t\t}\n\n\t\treturn getTrailingId( order[ order.length - 1 ] );\n\t}\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\t/**\n\t * Return the next list item with respect to the given list item. If none,\n\t * return the next list item of the parent list item if it exists.\n\t *\n\t * @param {string} id A list item client ID.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction _getNextId( id ) {\n\t\tconst next = getNextBlockClientId( id );\n\t\tif ( next ) return next;\n\t\tconst parentListItemId = getParentListItemId( id );\n\t\tif ( ! parentListItemId ) return;\n\t\treturn _getNextId( parentListItemId );\n\t}\n\n\t/**\n\t * Given a client ID, return the client ID of the list item on the next\n\t * line, regardless of indentation level.\n\t *\n\t * @param {string} id The client ID of the current list item.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction getNextId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\t// If the list item does not have a nested list, return the next list\n\t\t// item.\n\t\tif ( ! order.length ) {\n\t\t\treturn _getNextId( id );\n\t\t}\n\n\t\t// Get the first list item in the nested list.\n\t\treturn getBlockOrder( order[ 0 ] )[ 0 ];\n\t}\n\n\tfunction switchToDefaultBlockType( forward ) {\n\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\tconst replacement = switchToBlockType(\n\t\t\tgetBlock( rootClientId ),\n\t\t\tgetDefaultBlockName()\n\t\t);\n\t\tconst indexToSelect = forward ? replacement.length - 1 : 0;\n\t\tconst initialPosition = forward ? -1 : 0;\n\t\tregistry.batch( () => {\n\t\t\treplaceBlock( rootClientId, replacement );\n\t\t\tselectBlock(\n\t\t\t\treplacement[ indexToSelect ].clientId,\n\t\t\t\tinitialPosition\n\t\t\t);\n\t\t} );\n\t}\n\n\treturn ( forward ) => {\n\t\tif ( forward ) {\n\t\t\tconst nextBlockClientId = getNextId( clientId );\n\n\t\t\tif ( ! nextBlockClientId ) {\n\t\t\t\tswitchToDefaultBlockType( forward );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( getParentListItemId( nextBlockClientId ) ) {\n\t\t\t\toutdentListItem( nextBlockClientId );\n\t\t\t} else {\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tgetBlockOrder( nextBlockClientId ),\n\t\t\t\t\t\tnextBlockClientId,\n\t\t\t\t\t\tgetPreviousBlockClientId( nextBlockClientId )\n\t\t\t\t\t);\n\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t} );\n\t\t\t}\n\t\t} else {\n\t\t\t// Merging is only done from the top level. For lowel levels, the\n\t\t\t// list item is outdented instead.\n\t\t\tconst previousBlockClientId = getPreviousBlockClientId( clientId );\n\t\t\tif ( getParentListItemId( clientId ) ) {\n\t\t\t\toutdentListItem( clientId );\n\t\t\t} else if ( previousBlockClientId ) {\n\t\t\t\tconst trailingId = getTrailingId( previousBlockClientId );\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tgetBlockOrder( clientId ),\n\t\t\t\t\t\tclientId,\n\t\t\t\t\t\tpreviousBlockClientId\n\t\t\t\t\t);\n\t\t\t\t\tmergeBlocks( trailingId, clientId );\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tswitchToDefaultBlockType( forward );\n\t\t\t}\n\t\t}\n\t};\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-outdent-list-item.js"],"names":["first","last","castArray","useCallback","useSelect","useDispatch","useRegistry","store","blockEditorStore","cloneBlock","useOutdentListItem","clientId","registry","canOutdent","innerSelect","getBlockRootClientId","grandParentId","moveBlocksToPosition","removeBlock","insertBlock","updateBlockListSettings","getBlockName","getBlockOrder","getBlockIndex","getSelectedBlockClientIds","getBlock","getBlockListSettings","getParentListItemId","id","listId","parentListItemId","listItemName","clientIds","length","firstClientId","parentListId","lastClientId","order","followingListItems","slice","batch","nestedListId","nestedListBlock"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAT,EAAgBC,IAAhB,EAAsBC,SAAtB,QAAuC,QAAvC;AAEA;AACA;AACA;;AACA,SAASC,WAAT,QAA4B,oBAA5B;AACA,SAASC,SAAT,EAAoBC,WAApB,EAAiCC,WAAjC,QAAoD,iBAApD;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,yBAA1C;AACA,SAASC,UAAT,QAA2B,mBAA3B;AAEA;AACA;AACA
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-outdent-list-item.js"],"names":["first","last","castArray","useCallback","useSelect","useDispatch","useRegistry","store","blockEditorStore","cloneBlock","useOutdentListItem","clientId","registry","canOutdent","innerSelect","getBlockRootClientId","grandParentId","moveBlocksToPosition","removeBlock","insertBlock","updateBlockListSettings","getBlockName","getBlockOrder","getBlockIndex","getSelectedBlockClientIds","getBlock","getBlockListSettings","getParentListItemId","id","listId","parentListItemId","listItemName","clientIds","length","firstClientId","parentListId","lastClientId","order","followingListItems","slice","batch","nestedListId","nestedListBlock"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { first, last, castArray } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { useSelect, useDispatch, useRegistry } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { cloneBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as listItemName } from '../block.json';\n\nexport default function useOutdentListItem( clientId ) {\n\tconst registry = useRegistry();\n\tconst { canOutdent } = useSelect(\n\t\t( innerSelect ) => {\n\t\t\tconst { getBlockRootClientId } = innerSelect( blockEditorStore );\n\t\t\tconst grandParentId = getBlockRootClientId(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tcanOutdent: !! grandParentId,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\tmoveBlocksToPosition,\n\t\tremoveBlock,\n\t\tinsertBlock,\n\t\tupdateBlockListSettings,\n\t} = useDispatch( blockEditorStore );\n\tconst {\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t\tgetBlockOrder,\n\t\tgetBlockIndex,\n\t\tgetSelectedBlockClientIds,\n\t\tgetBlock,\n\t\tgetBlockListSettings,\n\t} = useSelect( blockEditorStore );\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== listItemName ) return;\n\t\treturn parentListItemId;\n\t}\n\n\treturn [\n\t\tcanOutdent,\n\t\tuseCallback( ( clientIds = getSelectedBlockClientIds() ) => {\n\t\t\tclientIds = castArray( clientIds );\n\n\t\t\tif ( ! clientIds.length ) return;\n\n\t\t\tconst firstClientId = first( clientIds );\n\n\t\t\t// Can't outdent if it's not a list item.\n\t\t\tif ( getBlockName( firstClientId ) !== listItemName ) return;\n\n\t\t\tconst parentListItemId = getParentListItemId( firstClientId );\n\n\t\t\t// Can't outdent if it's at the top level.\n\t\t\tif ( ! parentListItemId ) return;\n\n\t\t\tconst parentListId = getBlockRootClientId( firstClientId );\n\t\t\tconst lastClientId = last( clientIds );\n\t\t\tconst order = getBlockOrder( parentListId );\n\t\t\tconst followingListItems = order.slice(\n\t\t\t\tgetBlockIndex( lastClientId ) + 1\n\t\t\t);\n\n\t\t\tregistry.batch( () => {\n\t\t\t\tif ( followingListItems.length ) {\n\t\t\t\t\tlet nestedListId = first( getBlockOrder( firstClientId ) );\n\n\t\t\t\t\tif ( ! nestedListId ) {\n\t\t\t\t\t\tconst nestedListBlock = cloneBlock(\n\t\t\t\t\t\t\tgetBlock( parentListId ),\n\t\t\t\t\t\t\t{},\n\t\t\t\t\t\t\t[]\n\t\t\t\t\t\t);\n\t\t\t\t\t\tnestedListId = nestedListBlock.clientId;\n\t\t\t\t\t\tinsertBlock( nestedListBlock, 0, firstClientId, false );\n\t\t\t\t\t\t// Immediately update the block list settings, otherwise\n\t\t\t\t\t\t// blocks can't be moved here due to canInsert checks.\n\t\t\t\t\t\tupdateBlockListSettings(\n\t\t\t\t\t\t\tnestedListId,\n\t\t\t\t\t\t\tgetBlockListSettings( parentListId )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tfollowingListItems,\n\t\t\t\t\t\tparentListId,\n\t\t\t\t\t\tnestedListId\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\tclientIds,\n\t\t\t\t\tparentListId,\n\t\t\t\t\tgetBlockRootClientId( parentListItemId ),\n\t\t\t\t\tgetBlockIndex( parentListItemId ) + 1\n\t\t\t\t);\n\t\t\t\tif ( ! getBlockOrder( parentListId ).length ) {\n\t\t\t\t\tremoveBlock( parentListId );\n\t\t\t\t}\n\t\t\t} );\n\t\t}, [] ),\n\t];\n}\n"]}
|
|
@@ -18,7 +18,16 @@ export default function useSpace(clientId) {
|
|
|
18
18
|
const [canIndent, indentListItem] = useIndentListItem(clientId);
|
|
19
19
|
return useRefEffect(element => {
|
|
20
20
|
function onKeyDown(event) {
|
|
21
|
-
|
|
21
|
+
const {
|
|
22
|
+
keyCode,
|
|
23
|
+
shiftKey,
|
|
24
|
+
altKey,
|
|
25
|
+
metaKey,
|
|
26
|
+
ctrlKey
|
|
27
|
+
} = event;
|
|
28
|
+
|
|
29
|
+
if (event.defaultPrevented || !canIndent || keyCode !== SPACE || // Only override when no modifiers are pressed.
|
|
30
|
+
shiftKey || altKey || metaKey || ctrlKey) {
|
|
22
31
|
return;
|
|
23
32
|
}
|
|
24
33
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-space.js"],"names":["useRefEffect","SPACE","store","blockEditorStore","useSelect","useIndentListItem","useSpace","clientId","getSelectionStart","getSelectionEnd","canIndent","indentListItem","element","onKeyDown","event","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/hooks/use-space.js"],"names":["useRefEffect","SPACE","store","blockEditorStore","useSelect","useIndentListItem","useSpace","clientId","getSelectionStart","getSelectionEnd","canIndent","indentListItem","element","onKeyDown","event","keyCode","shiftKey","altKey","metaKey","ctrlKey","defaultPrevented","selectionStart","selectionEnd","offset","preventDefault","addEventListener","removeEventListener"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAT,QAA6B,oBAA7B;AACA,SAASC,KAAT,QAAsB,qBAAtB;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,yBAA1C;AACA,SAASC,SAAT,QAA0B,iBAA1B;AAEA;AACA;AACA;;AACA,OAAOC,iBAAP,MAA8B,wBAA9B;AAEA,eAAe,SAASC,QAAT,CAAmBC,QAAnB,EAA8B;AAC5C,QAAM;AAAEC,IAAAA,iBAAF;AAAqBC,IAAAA;AAArB,MACLL,SAAS,CAAED,gBAAF,CADV;AAEA,QAAM,CAAEO,SAAF,EAAaC,cAAb,IAAgCN,iBAAiB,CAAEE,QAAF,CAAvD;AAEA,SAAOP,YAAY,CAChBY,OAAF,IAAe;AACd,aAASC,SAAT,CAAoBC,KAApB,EAA4B;AAC3B,YAAM;AAAEC,QAAAA,OAAF;AAAWC,QAAAA,QAAX;AAAqBC,QAAAA,MAArB;AAA6BC,QAAAA,OAA7B;AAAsCC,QAAAA;AAAtC,UAAkDL,KAAxD;;AAEA,UACCA,KAAK,CAACM,gBAAN,IACA,CAAEV,SADF,IAEAK,OAAO,KAAKd,KAFZ,IAGA;AACAe,MAAAA,QAJA,IAKAC,MALA,IAMAC,OANA,IAOAC,OARD,EASE;AACD;AACA;;AAED,YAAME,cAAc,GAAGb,iBAAiB,EAAxC;AACA,YAAMc,YAAY,GAAGb,eAAe,EAApC;;AACA,UACCY,cAAc,CAACE,MAAf,KAA0B,CAA1B,IACAD,YAAY,CAACC,MAAb,KAAwB,CAFzB,EAGE;AACDT,QAAAA,KAAK,CAACU,cAAN;AACAb,QAAAA,cAAc;AACd;AACD;;AAEDC,IAAAA,OAAO,CAACa,gBAAR,CAA0B,SAA1B,EAAqCZ,SAArC;AACA,WAAO,MAAM;AACZD,MAAAA,OAAO,CAACc,mBAAR,CAA6B,SAA7B,EAAwCb,SAAxC;AACA,KAFD;AAGA,GAjCiB,EAkClB,CAAEH,SAAF,EAAaC,cAAb,CAlCkB,CAAnB;AAoCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRefEffect } from '@wordpress/compose';\nimport { SPACE } from '@wordpress/keycodes';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport useIndentListItem from './use-indent-list-item';\n\nexport default function useSpace( clientId ) {\n\tconst { getSelectionStart, getSelectionEnd } =\n\t\tuseSelect( blockEditorStore );\n\tconst [ canIndent, indentListItem ] = useIndentListItem( clientId );\n\n\treturn useRefEffect(\n\t\t( element ) => {\n\t\t\tfunction onKeyDown( event ) {\n\t\t\t\tconst { keyCode, shiftKey, altKey, metaKey, ctrlKey } = event;\n\n\t\t\t\tif (\n\t\t\t\t\tevent.defaultPrevented ||\n\t\t\t\t\t! canIndent ||\n\t\t\t\t\tkeyCode !== SPACE ||\n\t\t\t\t\t// Only override when no modifiers are pressed.\n\t\t\t\t\tshiftKey ||\n\t\t\t\t\taltKey ||\n\t\t\t\t\tmetaKey ||\n\t\t\t\t\tctrlKey\n\t\t\t\t) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst selectionStart = getSelectionStart();\n\t\t\t\tconst selectionEnd = getSelectionEnd();\n\t\t\t\tif (\n\t\t\t\t\tselectionStart.offset === 0 &&\n\t\t\t\t\tselectionEnd.offset === 0\n\t\t\t\t) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tindentListItem();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\telement.addEventListener( 'keydown', onKeyDown );\n\t\t\treturn () => {\n\t\t\t\telement.removeEventListener( 'keydown', onKeyDown );\n\t\t\t};\n\t\t},\n\t\t[ canIndent, indentListItem ]\n\t);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list-item/index.js"],"names":["listItem","icon","edit","save","name","metadata","settings","merge","attributes","attributesToMerge","content"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAQ,IAAIC,IAArB,QAAiC,kBAAjC;AAEA;AACA;AACA
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/index.js"],"names":["listItem","icon","edit","save","name","metadata","settings","merge","attributes","attributesToMerge","content"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAQ,IAAIC,IAArB,QAAiC,kBAAjC;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBL,EAAAA,IADuB;AAEvBC,EAAAA,IAFuB;AAGvBC,EAAAA,IAHuB;;AAIvBI,EAAAA,KAAK,CAAEC,UAAF,EAAcC,iBAAd,EAAkC;AACtC,WAAO,EACN,GAAGD,UADG;AAENE,MAAAA,OAAO,EAAEF,UAAU,CAACE,OAAX,GAAqBD,iBAAiB,CAACC;AAF1C,KAAP;AAIA;;AATsB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { listItem as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tcontent: attributes.content + attributesToMerge.content,\n\t\t};\n\t},\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list-item/utils.js"],"names":["createBlock","switchToBlockType","createListItem","listItemAttributes","listAttributes","children","listItemName","length","listName","convertToListItems","blocks","listItems","block","name","push","innerBlocks"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAT,EAAsBC,iBAAtB,QAA+C,mBAA/C;AAEA;AACA;AACA
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list-item/utils.js"],"names":["createBlock","switchToBlockType","createListItem","listItemAttributes","listAttributes","children","listItemName","length","listName","convertToListItems","blocks","listItems","block","name","push","innerBlocks"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAT,EAAsBC,iBAAtB,QAA+C,mBAA/C;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,OAAO,SAASC,cAAT,CAAyBC,kBAAzB,EAA6CC,cAA7C,EAA6DC,QAA7D,EAAwE;AAC9E,SAAOL,WAAW,CACjBM,YADiB,EAEjBH,kBAFiB,EAGjB,EAAEE,QAAF,aAAEA,QAAF,eAAEA,QAAQ,CAAEE,MAAZ,IACG,EADH,GAEG,CAAEP,WAAW,CAAEQ,QAAF,EAAYJ,cAAZ,EAA4BC,QAA5B,CAAb,CALc,CAAlB;AAOA;AAED,OAAO,SAASI,kBAAT,CAA6BC,MAA7B,EAAsC;AAC5C,QAAMC,SAAS,GAAG,EAAlB;;AAEA,OAAM,IAAIC,KAAV,IAAmBF,MAAnB,EAA4B;AAC3B,QAAKE,KAAK,CAACC,IAAN,KAAeP,YAApB,EAAmC;AAClCK,MAAAA,SAAS,CAACG,IAAV,CAAgBF,KAAhB;AACA,KAFD,MAEO,IAAKA,KAAK,CAACC,IAAN,KAAeL,QAApB,EAA+B;AACrCG,MAAAA,SAAS,CAACG,IAAV,CAAgB,GAAGF,KAAK,CAACG,WAAzB;AACA,KAFM,MAEA,IAAOH,KAAK,GAAGX,iBAAiB,CAAEW,KAAF,EAASJ,QAAT,CAAhC,EAAwD;AAC9D,WAAM,MAAM;AAAEO,QAAAA;AAAF,OAAZ,IAA+BH,KAA/B,EAAuC;AACtCD,QAAAA,SAAS,CAACG,IAAV,CAAgB,GAAGC,WAAnB;AACA;AACD;AACD;;AAED,SAAOJ,SAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, switchToBlockType } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as listItemName } from './block.json';\nimport { name as listName } from '../list/block.json';\n\nexport function createListItem( listItemAttributes, listAttributes, children ) {\n\treturn createBlock(\n\t\tlistItemName,\n\t\tlistItemAttributes,\n\t\t! children?.length\n\t\t\t? []\n\t\t\t: [ createBlock( listName, listAttributes, children ) ]\n\t);\n}\n\nexport function convertToListItems( blocks ) {\n\tconst listItems = [];\n\n\tfor ( let block of blocks ) {\n\t\tif ( block.name === listItemName ) {\n\t\t\tlistItems.push( block );\n\t\t} else if ( block.name === listName ) {\n\t\t\tlistItems.push( ...block.innerBlocks );\n\t\t} else if ( ( block = switchToBlockType( block, listName ) ) ) {\n\t\t\tfor ( const { innerBlocks } of block ) {\n\t\t\t\tlistItems.push( ...innerBlocks );\n\t\t\t}\n\t\t}\n\t}\n\n\treturn listItems;\n}\n"]}
|