@plone/volto 16.28.0 → 16.29.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.draft +2 -7
- package/.gitignore~ +71 -0
- package/.yarn/install-state.gz +0 -0
- package/.yarn/releases/yarn-3.3.1.cjs +823 -0
- package/CHANGELOG.md +13 -0
- package/Makefile~ +399 -0
- package/apps/plone/node_modules/.bin/addon +17 -0
- package/apps/plone/node_modules/.bin/autoprefixer +17 -0
- package/apps/plone/node_modules/.bin/build-storybook +17 -0
- package/apps/plone/node_modules/.bin/changelogupdater +17 -0
- package/apps/plone/node_modules/.bin/eslint +17 -0
- package/apps/plone/node_modules/.bin/eslint-config-prettier +17 -0
- package/apps/plone/node_modules/.bin/i18n +17 -0
- package/apps/plone/node_modules/.bin/lessc +17 -0
- package/apps/plone/node_modules/.bin/missdev +17 -0
- package/apps/plone/node_modules/.bin/prettier +17 -0
- package/apps/plone/node_modules/.bin/razzle +17 -0
- package/apps/plone/node_modules/.bin/server-test +17 -0
- package/apps/plone/node_modules/.bin/start-server-and-test +17 -0
- package/apps/plone/node_modules/.bin/start-storybook +17 -0
- package/apps/plone/node_modules/.bin/start-test +17 -0
- package/apps/plone/node_modules/.bin/storybook-server +17 -0
- package/apps/plone/node_modules/.bin/stylelint +17 -0
- package/apps/plone/node_modules/.bin/tlds +17 -0
- package/apps/plone/node_modules/.bin/ts-jest +17 -0
- package/apps/plone/node_modules/.bin/tsc +17 -0
- package/apps/plone/node_modules/.bin/tsserver +17 -0
- package/apps/plone/node_modules/.bin/uuid +17 -0
- package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/addon +17 -0
- package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/changelogupdater +17 -0
- package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/eslint +17 -0
- package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/eslint-config-prettier +17 -0
- package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/i18n +17 -0
- package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/prettier +17 -0
- package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/release-it +17 -0
- package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/stylelint +17 -0
- package/locales/volto.pot~ +4705 -0
- package/news/4547.breaking~ +1 -0
- package/news/5135.documentation~ +1 -0
- package/package.json +1 -1
- package/packages/volto-slate/news/5347.bugfix +1 -0
- package/packages/volto-slate/node_modules/.bin/release-it +17 -0
- package/packages/volto-slate/package.json +1 -1
- package/packages/volto-slate/src/editor/extensions/insertData.js +3 -1
- package/packages/volto-slate/src/editor/extensions/normalizeExternalData.js +1 -1
- package/packages/volto-slate/src/utils/blocks.js +6 -2
- package/pyvenv.cfg +5 -0
- package/share/man/man1/ttx.1 +225 -0
- package/src/components/manage/Add/Add.jsx +3 -0
- package/src/components/manage/Blocks/Block/BlocksForm.jsx +4 -0
- package/src/components/manage/Blocks/Block/DefaultEdit.jsx +3 -1
- package/src/components/manage/Blocks/Block/Settings.jsx +10 -1
- package/src/components/manage/Blocks/HeroImageLeft/Data.jsx +3 -1
- package/src/components/manage/Blocks/Image/ImageSidebar.jsx +3 -1
- package/src/components/manage/Blocks/Listing/ListingData.jsx +10 -1
- package/src/components/manage/Blocks/Maps/MapsSidebar.jsx +3 -1
- package/src/components/manage/Blocks/Search/SearchBlockEdit.jsx +4 -0
- package/src/components/manage/Blocks/Teaser/Data.jsx +10 -1
- package/src/components/manage/Blocks/ToC/Edit.jsx +2 -0
- package/src/components/manage/Blocks/Video/VideoSidebar.jsx +3 -1
- package/src/components/manage/Edit/Edit.jsx +1 -0
- package/src/components/manage/Form/Form.jsx +9 -1
- package/src/config/index.js~ +223 -0
- package/src/helpers/Blocks/Blocks.js +11 -2
- package/src/helpers/Extensions/withBlockSchemaEnhancer.js +20 -9
- package/src/start-server.js +4 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Update parse-url and release-it libraries. @davisagli
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Fix Sphinx toctree warnings from included `CHANGELOG.md`. @stevepiercy
|
package/package.json
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Fix the right order of parameters in normalizeExternalData.js @dobri1408
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
|
6
|
+
esac
|
|
7
|
+
|
|
8
|
+
if [ -z "$NODE_PATH" ]; then
|
|
9
|
+
export NODE_PATH="/Users/davisagli/Code/volto/node_modules/.pnpm/release-it@17.0.0_typescript@5.2.2/node_modules/release-it/bin/node_modules:/Users/davisagli/Code/volto/node_modules/.pnpm/release-it@17.0.0_typescript@5.2.2/node_modules/release-it/node_modules:/Users/davisagli/Code/volto/node_modules/.pnpm/release-it@17.0.0_typescript@5.2.2/node_modules:/Users/davisagli/Code/volto/node_modules/.pnpm/node_modules"
|
|
10
|
+
else
|
|
11
|
+
export NODE_PATH="/Users/davisagli/Code/volto/node_modules/.pnpm/release-it@17.0.0_typescript@5.2.2/node_modules/release-it/bin/node_modules:/Users/davisagli/Code/volto/node_modules/.pnpm/release-it@17.0.0_typescript@5.2.2/node_modules/release-it/node_modules:/Users/davisagli/Code/volto/node_modules/.pnpm/release-it@17.0.0_typescript@5.2.2/node_modules:/Users/davisagli/Code/volto/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
12
|
+
fi
|
|
13
|
+
if [ -x "$basedir/node" ]; then
|
|
14
|
+
exec "$basedir/node" "$basedir/../release-it/bin/release-it.js" "$@"
|
|
15
|
+
else
|
|
16
|
+
exec node "$basedir/../release-it/bin/release-it.js" "$@"
|
|
17
|
+
fi
|
|
@@ -98,7 +98,9 @@ export const insertData = (editor) => {
|
|
|
98
98
|
if (Editor.string(editor, [])) {
|
|
99
99
|
if (
|
|
100
100
|
Array.isArray(fragment) &&
|
|
101
|
-
fragment.findIndex(
|
|
101
|
+
fragment.findIndex(
|
|
102
|
+
(b) => Editor.isInline(editor, b) || Text.isText(b),
|
|
103
|
+
) > -1
|
|
102
104
|
) {
|
|
103
105
|
// console.log('insert fragment', fragment);
|
|
104
106
|
// TODO: we want normalization also when dealing with fragments
|
|
@@ -2,7 +2,7 @@ import { normalizeExternalData as normalize } from '@plone/volto-slate/utils';
|
|
|
2
2
|
|
|
3
3
|
export function normalizeExternalData(editor) {
|
|
4
4
|
editor.normalizeExternalData = (fragment) => {
|
|
5
|
-
return normalize(fragment);
|
|
5
|
+
return normalize(editor, fragment);
|
|
6
6
|
};
|
|
7
7
|
return editor;
|
|
8
8
|
}
|
|
@@ -73,7 +73,10 @@ export const normalizeExternalData = (editor, nodes) => {
|
|
|
73
73
|
// put all the non-blocks (e.g. images which are inline Elements) inside p-s
|
|
74
74
|
Editor.withoutNormalizing(fakeEditor, () => {
|
|
75
75
|
//for htmlSlateWidget compatibility
|
|
76
|
-
if (
|
|
76
|
+
if (
|
|
77
|
+
nodes &&
|
|
78
|
+
(!Editor.isBlock(fakeEditor, nodes[0]) || Text.isText(nodes[0]))
|
|
79
|
+
)
|
|
77
80
|
Transforms.wrapNodes(
|
|
78
81
|
fakeEditor,
|
|
79
82
|
{ type: 'p' },
|
|
@@ -81,7 +84,8 @@ export const normalizeExternalData = (editor, nodes) => {
|
|
|
81
84
|
at: [],
|
|
82
85
|
match: (node, path) =>
|
|
83
86
|
(!Editor.isEditor(node) && !Editor.isBlock(fakeEditor, node)) ||
|
|
84
|
-
fakeEditor.isInline(node)
|
|
87
|
+
fakeEditor.isInline(node) ||
|
|
88
|
+
Text.isText(node),
|
|
85
89
|
mode: 'highest',
|
|
86
90
|
},
|
|
87
91
|
);
|
package/pyvenv.cfg
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
home = /Users/davisagli/.pyenv/versions/3.11.3/bin
|
|
2
|
+
include-system-site-packages = false
|
|
3
|
+
version = 3.11.3
|
|
4
|
+
executable = /Users/davisagli/.pyenv/versions/3.11.3/bin/python3.11
|
|
5
|
+
command = /Users/davisagli/.pyenv/versions/3.11.3/bin/python3 -m venv /Users/davisagli/Code/volto
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
.Dd May 18, 2004
|
|
2
|
+
.\" ttx is not specific to any OS, but contrary to what groff_mdoc(7)
|
|
3
|
+
.\" seems to imply, entirely omitting the .Os macro causes 'BSD' to
|
|
4
|
+
.\" be used, so I give a zero-width space as its argument.
|
|
5
|
+
.Os \&
|
|
6
|
+
.\" The "FontTools Manual" argument apparently has no effect in
|
|
7
|
+
.\" groff 1.18.1. I think it is a bug in the -mdoc groff package.
|
|
8
|
+
.Dt TTX 1 "FontTools Manual"
|
|
9
|
+
.Sh NAME
|
|
10
|
+
.Nm ttx
|
|
11
|
+
.Nd tool for manipulating TrueType and OpenType fonts
|
|
12
|
+
.Sh SYNOPSIS
|
|
13
|
+
.Nm
|
|
14
|
+
.Bk
|
|
15
|
+
.Op Ar option ...
|
|
16
|
+
.Ek
|
|
17
|
+
.Bk
|
|
18
|
+
.Ar file ...
|
|
19
|
+
.Ek
|
|
20
|
+
.Sh DESCRIPTION
|
|
21
|
+
.Nm
|
|
22
|
+
is a tool for manipulating TrueType and OpenType fonts. It can convert
|
|
23
|
+
TrueType and OpenType fonts to and from an
|
|
24
|
+
.Tn XML Ns -based format called
|
|
25
|
+
.Tn TTX .
|
|
26
|
+
.Tn TTX
|
|
27
|
+
files have a
|
|
28
|
+
.Ql .ttx
|
|
29
|
+
extension.
|
|
30
|
+
.Pp
|
|
31
|
+
For each
|
|
32
|
+
.Ar file
|
|
33
|
+
argument it is given,
|
|
34
|
+
.Nm
|
|
35
|
+
detects whether it is a
|
|
36
|
+
.Ql .ttf ,
|
|
37
|
+
.Ql .otf
|
|
38
|
+
or
|
|
39
|
+
.Ql .ttx
|
|
40
|
+
file and acts accordingly: if it is a
|
|
41
|
+
.Ql .ttf
|
|
42
|
+
or
|
|
43
|
+
.Ql .otf
|
|
44
|
+
file, it generates a
|
|
45
|
+
.Ql .ttx
|
|
46
|
+
file; if it is a
|
|
47
|
+
.Ql .ttx
|
|
48
|
+
file, it generates a
|
|
49
|
+
.Ql .ttf
|
|
50
|
+
or
|
|
51
|
+
.Ql .otf
|
|
52
|
+
file.
|
|
53
|
+
.Pp
|
|
54
|
+
By default, every output file is created in the same directory as the
|
|
55
|
+
corresponding input file and with the same name except for the
|
|
56
|
+
extension, which is substituted appropriately.
|
|
57
|
+
.Nm
|
|
58
|
+
never overwrites existing files; if necessary, it appends a suffix to
|
|
59
|
+
the output file name before the extension, as in
|
|
60
|
+
.Pa Arial#1.ttf .
|
|
61
|
+
.Ss "General options"
|
|
62
|
+
.Bl -tag -width ".Fl t Ar table"
|
|
63
|
+
.It Fl h
|
|
64
|
+
Display usage information.
|
|
65
|
+
.It Fl d Ar dir
|
|
66
|
+
Write the output files to directory
|
|
67
|
+
.Ar dir
|
|
68
|
+
instead of writing every output file to the same directory as the
|
|
69
|
+
corresponding input file.
|
|
70
|
+
.It Fl o Ar file
|
|
71
|
+
Write the output to
|
|
72
|
+
.Ar file
|
|
73
|
+
instead of writing it to the same directory as the
|
|
74
|
+
corresponding input file.
|
|
75
|
+
.It Fl v
|
|
76
|
+
Be verbose. Write more messages to the standard output describing what
|
|
77
|
+
is being done.
|
|
78
|
+
.It Fl a
|
|
79
|
+
Allow virtual glyphs ID's on compile or decompile.
|
|
80
|
+
.El
|
|
81
|
+
.Ss "Dump options"
|
|
82
|
+
The following options control the process of dumping font files
|
|
83
|
+
(TrueType or OpenType) to
|
|
84
|
+
.Tn TTX
|
|
85
|
+
files.
|
|
86
|
+
.Bl -tag -width ".Fl t Ar table"
|
|
87
|
+
.It Fl l
|
|
88
|
+
List table information. Instead of dumping the font to a
|
|
89
|
+
.Tn TTX
|
|
90
|
+
file, display minimal information about each table.
|
|
91
|
+
.It Fl t Ar table
|
|
92
|
+
Dump table
|
|
93
|
+
.Ar table .
|
|
94
|
+
This option may be given multiple times to dump several tables at
|
|
95
|
+
once. When not specified, all tables are dumped.
|
|
96
|
+
.It Fl x Ar table
|
|
97
|
+
Exclude table
|
|
98
|
+
.Ar table
|
|
99
|
+
from the list of tables to dump. This option may be given multiple
|
|
100
|
+
times to exclude several tables from the dump. The
|
|
101
|
+
.Fl t
|
|
102
|
+
and
|
|
103
|
+
.Fl x
|
|
104
|
+
options are mutually exclusive.
|
|
105
|
+
.It Fl s
|
|
106
|
+
Split tables. Dump each table to a separate
|
|
107
|
+
.Tn TTX
|
|
108
|
+
file and write (under the name that would have been used for the output
|
|
109
|
+
file if the
|
|
110
|
+
.Fl s
|
|
111
|
+
option had not been given) one small
|
|
112
|
+
.Tn TTX
|
|
113
|
+
file containing references to the individual table dump files. This
|
|
114
|
+
file can be used as input to
|
|
115
|
+
.Nm
|
|
116
|
+
as long as the referenced files can be found in the same directory.
|
|
117
|
+
.It Fl i
|
|
118
|
+
.\" XXX: I suppose OpenType programs (exist and) are also affected.
|
|
119
|
+
Don't disassemble TrueType instructions. When this option is specified,
|
|
120
|
+
all TrueType programs (glyph programs, the font program and the
|
|
121
|
+
pre-program) are written to the
|
|
122
|
+
.Tn TTX
|
|
123
|
+
file as hexadecimal data instead of
|
|
124
|
+
assembly. This saves some time and results in smaller
|
|
125
|
+
.Tn TTX
|
|
126
|
+
files.
|
|
127
|
+
.It Fl y Ar n
|
|
128
|
+
When decompiling a TrueType Collection (TTC) file,
|
|
129
|
+
decompile font number
|
|
130
|
+
.Ar n ,
|
|
131
|
+
starting from 0.
|
|
132
|
+
.El
|
|
133
|
+
.Ss "Compilation options"
|
|
134
|
+
The following options control the process of compiling
|
|
135
|
+
.Tn TTX
|
|
136
|
+
files into font files (TrueType or OpenType):
|
|
137
|
+
.Bl -tag -width ".Fl t Ar table"
|
|
138
|
+
.It Fl m Ar fontfile
|
|
139
|
+
Merge the input
|
|
140
|
+
.Tn TTX
|
|
141
|
+
file
|
|
142
|
+
.Ar file
|
|
143
|
+
with
|
|
144
|
+
.Ar fontfile .
|
|
145
|
+
No more than one
|
|
146
|
+
.Ar file
|
|
147
|
+
argument can be specified when this option is used.
|
|
148
|
+
.It Fl b
|
|
149
|
+
Don't recalculate glyph bounding boxes. Use the values in the
|
|
150
|
+
.Tn TTX
|
|
151
|
+
file as is.
|
|
152
|
+
.El
|
|
153
|
+
.Sh "THE TTX FILE FORMAT"
|
|
154
|
+
You can find some information about the
|
|
155
|
+
.Tn TTX
|
|
156
|
+
file format in
|
|
157
|
+
.Pa documentation.html .
|
|
158
|
+
In particular, you will find in that file the list of tables understood by
|
|
159
|
+
.Nm
|
|
160
|
+
and the relations between TrueType GlyphIDs and the glyph names used in
|
|
161
|
+
.Tn TTX
|
|
162
|
+
files.
|
|
163
|
+
.Sh EXAMPLES
|
|
164
|
+
In the following examples, all files are read from and written to the
|
|
165
|
+
current directory. Additionally, the name given for the output file
|
|
166
|
+
assumes in every case that it did not exist before
|
|
167
|
+
.Nm
|
|
168
|
+
was invoked.
|
|
169
|
+
.Pp
|
|
170
|
+
Dump the TrueType font contained in
|
|
171
|
+
.Pa FreeSans.ttf
|
|
172
|
+
to
|
|
173
|
+
.Pa FreeSans.ttx :
|
|
174
|
+
.Pp
|
|
175
|
+
.Dl ttx FreeSans.ttf
|
|
176
|
+
.Pp
|
|
177
|
+
Compile
|
|
178
|
+
.Pa MyFont.ttx
|
|
179
|
+
into a TrueType or OpenType font file:
|
|
180
|
+
.Pp
|
|
181
|
+
.Dl ttx MyFont.ttx
|
|
182
|
+
.Pp
|
|
183
|
+
List the tables in
|
|
184
|
+
.Pa FreeSans.ttf
|
|
185
|
+
along with some information:
|
|
186
|
+
.Pp
|
|
187
|
+
.Dl ttx -l FreeSans.ttf
|
|
188
|
+
.Pp
|
|
189
|
+
Dump the
|
|
190
|
+
.Sq cmap
|
|
191
|
+
table from
|
|
192
|
+
.Pa FreeSans.ttf
|
|
193
|
+
to
|
|
194
|
+
.Pa FreeSans.ttx :
|
|
195
|
+
.Pp
|
|
196
|
+
.Dl ttx -t cmap FreeSans.ttf
|
|
197
|
+
.Sh NOTES
|
|
198
|
+
On MS\-Windows and MacOS,
|
|
199
|
+
.Nm
|
|
200
|
+
is available as a graphical application to which files can be dropped.
|
|
201
|
+
.Sh SEE ALSO
|
|
202
|
+
.Pa documentation.html
|
|
203
|
+
.Pp
|
|
204
|
+
.Xr fontforge 1 ,
|
|
205
|
+
.Xr ftinfo 1 ,
|
|
206
|
+
.Xr gfontview 1 ,
|
|
207
|
+
.Xr xmbdfed 1 ,
|
|
208
|
+
.Xr Font::TTF 3pm
|
|
209
|
+
.Sh AUTHORS
|
|
210
|
+
.Nm
|
|
211
|
+
was written by
|
|
212
|
+
.An -nosplit
|
|
213
|
+
.An "Just van Rossum" Aq just@letterror.com .
|
|
214
|
+
.Pp
|
|
215
|
+
This manual page was written by
|
|
216
|
+
.An "Florent Rougon" Aq f.rougon@free.fr
|
|
217
|
+
for the Debian GNU/Linux system based on the existing FontTools
|
|
218
|
+
documentation. It may be freely used, modified and distributed without
|
|
219
|
+
restrictions.
|
|
220
|
+
.\" For Emacs:
|
|
221
|
+
.\" Local Variables:
|
|
222
|
+
.\" fill-column: 72
|
|
223
|
+
.\" sentence-end: "[.?!][]\"')}]*\\($\\| $\\| \\| \\)[ \n]*"
|
|
224
|
+
.\" sentence-end-double-space: t
|
|
225
|
+
.\" End:
|
|
@@ -316,6 +316,9 @@ class Add extends Component {
|
|
|
316
316
|
<Form
|
|
317
317
|
ref={this.form}
|
|
318
318
|
key="translated-or-new-content-form"
|
|
319
|
+
navRoot={
|
|
320
|
+
this.props.content?.['@components']?.navroot?.navroot || {}
|
|
321
|
+
}
|
|
319
322
|
schema={this.props.schema}
|
|
320
323
|
type={this.props.type}
|
|
321
324
|
formData={{
|
|
@@ -28,6 +28,8 @@ const BlocksForm = (props) => {
|
|
|
28
28
|
pathname,
|
|
29
29
|
onChangeField,
|
|
30
30
|
properties,
|
|
31
|
+
type,
|
|
32
|
+
navRoot,
|
|
31
33
|
onChangeFormData,
|
|
32
34
|
selectedBlock,
|
|
33
35
|
multiSelected,
|
|
@@ -244,6 +246,8 @@ const BlocksForm = (props) => {
|
|
|
244
246
|
pathname,
|
|
245
247
|
metadata,
|
|
246
248
|
properties,
|
|
249
|
+
contentType: type,
|
|
250
|
+
navRoot,
|
|
247
251
|
blocksConfig,
|
|
248
252
|
selected: selectedBlock === childId,
|
|
249
253
|
multiSelected: multiSelected?.includes(childId),
|
|
@@ -7,7 +7,7 @@ import DefaultBlockView from './DefaultView';
|
|
|
7
7
|
|
|
8
8
|
const DefaultBlockEdit = (props) => {
|
|
9
9
|
const { blocksConfig = config.blocks.blocksConfig } = props;
|
|
10
|
-
const { data, onChangeBlock, block, selected } = props;
|
|
10
|
+
const { data, onChangeBlock, block, selected, navRoot, contentType } = props;
|
|
11
11
|
const intl = useIntl();
|
|
12
12
|
const blockSchema = blocksConfig?.[data['@type']]?.blockSchema;
|
|
13
13
|
const schema =
|
|
@@ -32,6 +32,8 @@ const DefaultBlockEdit = (props) => {
|
|
|
32
32
|
});
|
|
33
33
|
}}
|
|
34
34
|
formData={data}
|
|
35
|
+
navRoot={navRoot}
|
|
36
|
+
contentType={contentType}
|
|
35
37
|
/>
|
|
36
38
|
</SidebarPortal>
|
|
37
39
|
) : (
|
|
@@ -3,7 +3,14 @@ import PropTypes from 'prop-types';
|
|
|
3
3
|
import { injectIntl } from 'react-intl';
|
|
4
4
|
import BlockDataForm from '@plone/volto/components/manage/Form/BlockDataForm';
|
|
5
5
|
|
|
6
|
-
const Settings = ({
|
|
6
|
+
const Settings = ({
|
|
7
|
+
data,
|
|
8
|
+
block,
|
|
9
|
+
onChangeBlock,
|
|
10
|
+
schema,
|
|
11
|
+
navRoot,
|
|
12
|
+
contentType,
|
|
13
|
+
}) => {
|
|
7
14
|
return (
|
|
8
15
|
<BlockDataForm
|
|
9
16
|
schema={schema}
|
|
@@ -17,6 +24,8 @@ const Settings = ({ data, block, onChangeBlock, schema }) => {
|
|
|
17
24
|
onChangeBlock={onChangeBlock}
|
|
18
25
|
formData={data}
|
|
19
26
|
applySchemaEnhancers={false}
|
|
27
|
+
navRoot={navRoot}
|
|
28
|
+
contentType={contentType}
|
|
20
29
|
/>
|
|
21
30
|
);
|
|
22
31
|
};
|
|
@@ -4,7 +4,7 @@ import schemaHero from './schema.js';
|
|
|
4
4
|
import { BlockDataForm } from '@plone/volto/components';
|
|
5
5
|
|
|
6
6
|
const HeroImageLeftBlockData = (props) => {
|
|
7
|
-
const { block, data, onChangeBlock } = props;
|
|
7
|
+
const { block, data, onChangeBlock, navRoot, contentType } = props;
|
|
8
8
|
const intl = useIntl();
|
|
9
9
|
const schema = schemaHero({ ...props, intl });
|
|
10
10
|
return (
|
|
@@ -20,6 +20,8 @@ const HeroImageLeftBlockData = (props) => {
|
|
|
20
20
|
onChangeBlock={onChangeBlock}
|
|
21
21
|
formData={data}
|
|
22
22
|
block={block}
|
|
23
|
+
navRoot={navRoot}
|
|
24
|
+
contentType={contentType}
|
|
23
25
|
/>
|
|
24
26
|
);
|
|
25
27
|
};
|
|
@@ -8,7 +8,7 @@ import { ImageSchema } from './schema';
|
|
|
8
8
|
import imageSVG from '@plone/volto/icons/image.svg';
|
|
9
9
|
|
|
10
10
|
const ImageSidebar = (props) => {
|
|
11
|
-
const { data, block, onChangeBlock } = props;
|
|
11
|
+
const { data, block, onChangeBlock, navRoot, contentType } = props;
|
|
12
12
|
const intl = useIntl();
|
|
13
13
|
const schema = ImageSchema({ formData: data, intl });
|
|
14
14
|
return (
|
|
@@ -55,6 +55,8 @@ const ImageSidebar = (props) => {
|
|
|
55
55
|
onChangeBlock={onChangeBlock}
|
|
56
56
|
formData={data}
|
|
57
57
|
block={block}
|
|
58
|
+
navRoot={navRoot}
|
|
59
|
+
contentType={contentType}
|
|
58
60
|
/>
|
|
59
61
|
</>
|
|
60
62
|
);
|
|
@@ -4,7 +4,14 @@ import { useIntl } from 'react-intl';
|
|
|
4
4
|
import { BlockDataForm } from '@plone/volto/components';
|
|
5
5
|
|
|
6
6
|
const ListingData = (props) => {
|
|
7
|
-
const {
|
|
7
|
+
const {
|
|
8
|
+
data,
|
|
9
|
+
block,
|
|
10
|
+
blocksConfig,
|
|
11
|
+
onChangeBlock,
|
|
12
|
+
navRoot,
|
|
13
|
+
contentType,
|
|
14
|
+
} = props;
|
|
8
15
|
const intl = useIntl();
|
|
9
16
|
const schema = blocksConfig.listing.blockSchema({
|
|
10
17
|
...props,
|
|
@@ -25,6 +32,8 @@ const ListingData = (props) => {
|
|
|
25
32
|
formData={data}
|
|
26
33
|
blocksConfig={blocksConfig}
|
|
27
34
|
block={block}
|
|
35
|
+
navRoot={navRoot}
|
|
36
|
+
contentType={contentType}
|
|
28
37
|
/>
|
|
29
38
|
);
|
|
30
39
|
};
|
|
@@ -18,7 +18,7 @@ const messages = defineMessages({
|
|
|
18
18
|
});
|
|
19
19
|
|
|
20
20
|
const MapsSidebar = (props) => {
|
|
21
|
-
const { data, block, onChangeBlock } = props;
|
|
21
|
+
const { data, block, onChangeBlock, navRoot, contentType } = props;
|
|
22
22
|
const intl = useIntl();
|
|
23
23
|
const schema = MapsSchema({ ...props, intl });
|
|
24
24
|
|
|
@@ -42,6 +42,8 @@ const MapsSidebar = (props) => {
|
|
|
42
42
|
onChangeBlock={onChangeBlock}
|
|
43
43
|
formData={data}
|
|
44
44
|
block={block}
|
|
45
|
+
navRoot={navRoot}
|
|
46
|
+
contentType={contentType}
|
|
45
47
|
/>
|
|
46
48
|
)}
|
|
47
49
|
</>
|
|
@@ -26,6 +26,8 @@ const SearchBlockEdit = (props) => {
|
|
|
26
26
|
data,
|
|
27
27
|
selected,
|
|
28
28
|
intl,
|
|
29
|
+
navRoot,
|
|
30
|
+
contentType,
|
|
29
31
|
onTriggerSearch,
|
|
30
32
|
querystring = {},
|
|
31
33
|
} = props;
|
|
@@ -83,6 +85,8 @@ const SearchBlockEdit = (props) => {
|
|
|
83
85
|
}}
|
|
84
86
|
onChangeBlock={onChangeBlock}
|
|
85
87
|
formData={data}
|
|
88
|
+
navRoot={navRoot}
|
|
89
|
+
contentType={contentType}
|
|
86
90
|
/>
|
|
87
91
|
</SidebarPortal>
|
|
88
92
|
</>
|
|
@@ -14,7 +14,14 @@ const messages = defineMessages({
|
|
|
14
14
|
});
|
|
15
15
|
|
|
16
16
|
const TeaserData = (props) => {
|
|
17
|
-
const {
|
|
17
|
+
const {
|
|
18
|
+
block,
|
|
19
|
+
blocksConfig,
|
|
20
|
+
data,
|
|
21
|
+
onChangeBlock,
|
|
22
|
+
navRoot,
|
|
23
|
+
contentType,
|
|
24
|
+
} = props;
|
|
18
25
|
const intl = useIntl();
|
|
19
26
|
|
|
20
27
|
const reset = () => {
|
|
@@ -64,6 +71,8 @@ const TeaserData = (props) => {
|
|
|
64
71
|
block={block}
|
|
65
72
|
blocksConfig={blocksConfig}
|
|
66
73
|
headerActions={HeaderActions}
|
|
74
|
+
navRoot={navRoot}
|
|
75
|
+
contentType={contentType}
|
|
67
76
|
/>
|
|
68
77
|
);
|
|
69
78
|
};
|
|
@@ -18,7 +18,7 @@ const messages = defineMessages({
|
|
|
18
18
|
});
|
|
19
19
|
|
|
20
20
|
const VideoSidebar = (props) => {
|
|
21
|
-
const { data, block, onChangeBlock } = props;
|
|
21
|
+
const { data, block, onChangeBlock, navRoot, contentType } = props;
|
|
22
22
|
const intl = useIntl();
|
|
23
23
|
const schema = VideoBlockSchema({ ...props, intl });
|
|
24
24
|
|
|
@@ -42,6 +42,8 @@ const VideoSidebar = (props) => {
|
|
|
42
42
|
onChangeBlock={onChangeBlock}
|
|
43
43
|
formData={data}
|
|
44
44
|
block={block}
|
|
45
|
+
navRoot={navRoot}
|
|
46
|
+
contentType={contentType}
|
|
45
47
|
/>
|
|
46
48
|
)}
|
|
47
49
|
</>
|
|
@@ -286,6 +286,7 @@ class Edit extends Component {
|
|
|
286
286
|
<Form
|
|
287
287
|
isEditForm
|
|
288
288
|
ref={this.form}
|
|
289
|
+
navRoot={this.props.content?.['@components']?.navroot?.navroot || {}}
|
|
289
290
|
schema={this.props.schema}
|
|
290
291
|
type={this.props.content?.['@type']}
|
|
291
292
|
formData={this.props.content}
|
|
@@ -542,7 +542,13 @@ class Form extends Component {
|
|
|
542
542
|
*/
|
|
543
543
|
render() {
|
|
544
544
|
const { settings } = config;
|
|
545
|
-
const {
|
|
545
|
+
const {
|
|
546
|
+
schema: originalSchema,
|
|
547
|
+
onCancel,
|
|
548
|
+
onSubmit,
|
|
549
|
+
navRoot,
|
|
550
|
+
type,
|
|
551
|
+
} = this.props;
|
|
546
552
|
const { formData } = this.state;
|
|
547
553
|
const schema = this.removeBlocksLayoutFields(originalSchema);
|
|
548
554
|
const Container =
|
|
@@ -591,6 +597,8 @@ class Form extends Component {
|
|
|
591
597
|
onChangeField={this.onChangeField}
|
|
592
598
|
onSelectBlock={this.onSelectBlock}
|
|
593
599
|
properties={formData}
|
|
600
|
+
navRoot={navRoot}
|
|
601
|
+
type={type}
|
|
594
602
|
pathname={this.props.pathname}
|
|
595
603
|
selectedBlock={this.state.selected}
|
|
596
604
|
multiSelected={this.state.multiSelected}
|