@plone/volto 18.0.0-alpha.3 → 18.0.0-alpha.5

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.
Files changed (349) hide show
  1. package/.eslintignore +1 -0
  2. package/.eslintrc +3 -3
  3. package/.prettierignore +8 -0
  4. package/.prettierrc +12 -0
  5. package/{packages/registry/.release-it.json → .release-it.json} +12 -6
  6. package/CHANGELOG.md +50 -4
  7. package/package.json +60 -127
  8. package/razzle.config.js +4 -7
  9. package/src/components/manage/Add/Add.jsx +6 -0
  10. package/src/components/manage/BlockChooser/BlockChooser.jsx +3 -1
  11. package/src/components/manage/BlockChooser/BlockChooserButton.jsx +5 -0
  12. package/src/components/manage/Blocks/Block/BlocksForm.jsx +4 -0
  13. package/src/components/manage/Blocks/Block/DefaultEdit.jsx +3 -1
  14. package/src/components/manage/Blocks/Block/EditBlockWrapper.jsx +5 -0
  15. package/src/components/manage/Blocks/Block/Settings.jsx +10 -1
  16. package/src/components/manage/Blocks/Container/Data.jsx +4 -1
  17. package/src/components/manage/Blocks/HeroImageLeft/Data.jsx +3 -1
  18. package/src/components/manage/Blocks/Image/ImageSidebar.jsx +4 -1
  19. package/src/components/manage/Blocks/Listing/ListingData.jsx +4 -1
  20. package/src/components/manage/Blocks/Maps/MapsSidebar.jsx +3 -1
  21. package/src/components/manage/Blocks/Search/SearchBlockEdit.jsx +4 -0
  22. package/src/components/manage/Blocks/Teaser/Data.jsx +4 -1
  23. package/src/components/manage/Blocks/ToC/Edit.jsx +2 -0
  24. package/src/components/manage/Blocks/Video/VideoSidebar.jsx +3 -1
  25. package/src/components/manage/Controlpanels/Users/UserGroupMembershipControlPanel.jsx +2 -2
  26. package/src/components/manage/Edit/Edit.jsx +1 -0
  27. package/src/components/manage/Form/Form.jsx +14 -3
  28. package/src/components/theme/Image/Image.jsx +4 -2
  29. package/src/components/theme/Image/Image.test.jsx +32 -0
  30. package/src/config/index.js +0 -4
  31. package/src/helpers/Blocks/Blocks.js +11 -2
  32. package/src/helpers/Extensions/withBlockSchemaEnhancer.js +20 -9
  33. package/src/helpers/Url/Url.js +5 -4
  34. package/src/helpers/Url/Url.test.js +52 -0
  35. package/src/icons/divide-horizontal.svg +0 -0
  36. package/src/icons/divide-vertical.svg +0 -0
  37. package/src/icons/hero.svg +0 -0
  38. package/src/icons/slider.svg +0 -0
  39. package/src/icons/summary.svg +0 -0
  40. package/src/middleware/api.js +1 -1
  41. package/theme/themes/default/elements/icon.overrides +0 -0
  42. package/theme/themes/default/globals/reset.overrides +0 -0
  43. package/theme/themes/default/globals/site.variables +0 -0
  44. package/theme/themes/default/modules/dropdown.overrides +0 -0
  45. package/theme/themes/default/modules/dropdown.variables +0 -0
  46. package/theme/themes/default/modules/modal.variables +0 -0
  47. package/theme/themes/default/modules/video.overrides +0 -0
  48. package/theme/themes/default/modules/video.variables +0 -0
  49. package/theme/themes/pastanaga/assets/fonts/icons.eot +0 -0
  50. package/theme/themes/pastanaga/assets/fonts/icons.svg +0 -0
  51. package/theme/themes/pastanaga/assets/fonts/icons.ttf +0 -0
  52. package/theme/themes/pastanaga/assets/fonts/icons.woff +0 -0
  53. package/theme/themes/pastanaga/globals/reset.overrides +0 -0
  54. package/theme/themes/pastanaga/globals/site.variables +0 -0
  55. package/theme/themes/pastanaga/modules/dropdown.variables +0 -0
  56. package/theme/themes/pastanaga/modules/modal.variables +0 -0
  57. package/theme/themes/pastanaga/modules/video.overrides +0 -0
  58. package/theme/themes/pastanaga/modules/video.variables +0 -0
  59. package/tsconfig.json +1 -4
  60. package/types/config/RichTextEditor/index.d.ts +5 -8
  61. package/types/helpers/AsyncConnect/index.d.ts +2 -2
  62. package/types/helpers/Extensions/withBlockSchemaEnhancer.d.ts +3 -1
  63. package/types/helpers/Url/Url.d.ts +3 -3
  64. package/types/icons/load-icons.d.ts +1 -1
  65. package/webpack-plugins/webpack-less-plugin.js +1 -0
  66. package/CODE_OF_CONDUCT.md +0 -13
  67. package/CONTRIBUTING.md +0 -7
  68. package/README.md +0 -154
  69. package/RELEASING.md +0 -73
  70. package/ROADMAP.md +0 -30
  71. package/SECURITY.md +0 -14
  72. package/apps/plone/node_modules/.bin/acorn +0 -17
  73. package/apps/plone/node_modules/.bin/addon +0 -17
  74. package/apps/plone/node_modules/.bin/autoprefixer +0 -17
  75. package/apps/plone/node_modules/.bin/browserslist +0 -17
  76. package/apps/plone/node_modules/.bin/build-storybook +0 -17
  77. package/apps/plone/node_modules/.bin/changelogupdater +0 -17
  78. package/apps/plone/node_modules/.bin/eslint +0 -17
  79. package/apps/plone/node_modules/.bin/eslint-config-prettier +0 -17
  80. package/apps/plone/node_modules/.bin/i18n +0 -17
  81. package/apps/plone/node_modules/.bin/jest +0 -17
  82. package/apps/plone/node_modules/.bin/lessc +0 -17
  83. package/apps/plone/node_modules/.bin/missdev +0 -17
  84. package/apps/plone/node_modules/.bin/prettier +0 -17
  85. package/apps/plone/node_modules/.bin/razzle +0 -17
  86. package/apps/plone/node_modules/.bin/server-test +0 -17
  87. package/apps/plone/node_modules/.bin/start-server-and-test +0 -17
  88. package/apps/plone/node_modules/.bin/start-storybook +0 -17
  89. package/apps/plone/node_modules/.bin/start-test +0 -17
  90. package/apps/plone/node_modules/.bin/storybook-server +0 -17
  91. package/apps/plone/node_modules/.bin/stylelint +0 -17
  92. package/apps/plone/node_modules/.bin/tlds +0 -17
  93. package/apps/plone/node_modules/.bin/ts-jest +0 -17
  94. package/apps/plone/node_modules/.bin/tsc +0 -17
  95. package/apps/plone/node_modules/.bin/tsserver +0 -17
  96. package/apps/plone/node_modules/.bin/uuid +0 -17
  97. package/apps/plone/node_modules/.bin/webpack +0 -17
  98. package/apps/plone/node_modules/.bin/webpack-dev-server +0 -17
  99. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/acorn +0 -17
  100. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/addon +0 -17
  101. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/browserslist +0 -17
  102. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/changelogupdater +0 -17
  103. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/eslint +0 -17
  104. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/eslint-config-prettier +0 -17
  105. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/i18n +0 -17
  106. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/prettier +0 -17
  107. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/release-it +0 -17
  108. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/stylelint +0 -17
  109. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/tsc +0 -17
  110. package/apps/plone/src/addons/volto-volto-project/node_modules/.bin/tsserver +0 -17
  111. package/logos/Logo.png +0 -0
  112. package/logos/VoltoLogoEra2-dark-mode.png +0 -0
  113. package/logos/VoltoLogoEra2.png +0 -0
  114. package/logos/volto-colorful.png +0 -0
  115. package/logos/volto-colorful.svg +0 -35
  116. package/logos/volto-guide.png +0 -0
  117. package/logos/volto-h-transparent.svg +0 -6
  118. package/logos/volto-transparent.png +0 -0
  119. package/logos/volto-transparent.svg +0 -19
  120. package/logos/volto-transparent2.svg +0 -5
  121. package/logos/volto-yellow.svg +0 -29
  122. package/logos/volto.sketch +0 -0
  123. package/packages/README.md +0 -7
  124. package/packages/registry/.towncrier/towncrier_template.jinja +0 -10
  125. package/packages/registry/CHANGELOG.md +0 -16
  126. package/packages/registry/README.md +0 -207
  127. package/packages/registry/addon-registry.js +0 -603
  128. package/packages/registry/create-addons-loader.js +0 -116
  129. package/packages/registry/create-theme-addons-loader.js +0 -78
  130. package/packages/registry/news/.gitkeep +0 -0
  131. package/packages/registry/node_modules/.bin/browserslist +0 -17
  132. package/packages/registry/node_modules/.bin/parcel +0 -17
  133. package/packages/registry/node_modules/.bin/release-it +0 -17
  134. package/packages/registry/node_modules/.bin/tsc +0 -17
  135. package/packages/registry/node_modules/.bin/tsserver +0 -17
  136. package/packages/registry/node_modules/.bin/vitest +0 -17
  137. package/packages/registry/package.json +0 -76
  138. package/packages/registry/src/index.ts +0 -174
  139. package/packages/registry/src/registry.test.js +0 -111
  140. package/packages/registry/tsconfig.json +0 -32
  141. package/packages/scripts/CHANGELOG.md +0 -173
  142. package/packages/scripts/README.md +0 -128
  143. package/packages/scripts/addon/consolidate.js +0 -28
  144. package/packages/scripts/addon/generators.js +0 -213
  145. package/packages/scripts/addon/getAddonInfo.js +0 -65
  146. package/packages/scripts/addon/index.js +0 -88
  147. package/packages/scripts/addon/utils.js +0 -44
  148. package/packages/scripts/backportpr.js +0 -75
  149. package/packages/scripts/changelogupdater.cjs +0 -94
  150. package/packages/scripts/corepackagebump.js +0 -20
  151. package/packages/scripts/i18n.cjs +0 -310
  152. package/packages/scripts/package.json +0 -76
  153. package/packages/scripts/templates/towncrier_template.jinja +0 -10
  154. package/packages/types/Blocks/View.ts +0 -11
  155. package/packages/types/actions.ts +0 -15
  156. package/packages/types/breadcrumbs.ts +0 -10
  157. package/packages/types/config/Blocks.ts +0 -153
  158. package/packages/types/config/Content.ts +0 -62
  159. package/packages/types/config/Settings.ts +0 -86
  160. package/packages/types/config/Views.ts +0 -15
  161. package/packages/types/config/Widgets.ts +0 -7
  162. package/packages/types/config/index.ts +0 -21
  163. package/packages/types/content/common.ts +0 -60
  164. package/packages/types/content/get.ts +0 -66
  165. package/packages/types/index.ts +0 -0
  166. package/packages/types/navigation.ts +0 -12
  167. package/packages/types/node_modules/.bin/browserslist +0 -17
  168. package/packages/types/node_modules/.bin/parcel +0 -17
  169. package/packages/types/node_modules/.bin/release-it +0 -17
  170. package/packages/types/node_modules/.bin/tsc +0 -17
  171. package/packages/types/node_modules/.bin/tsserver +0 -17
  172. package/packages/types/package.json +0 -64
  173. package/packages/types/types.ts +0 -61
  174. package/packages/volto-slate/.i18n.babel.config.js +0 -1
  175. package/packages/volto-slate/README.md +0 -4
  176. package/packages/volto-slate/build/messages/src/blocks/Table/TableBlockEdit.json +0 -90
  177. package/packages/volto-slate/build/messages/src/blocks/Text/DefaultTextBlockEditor.json +0 -6
  178. package/packages/volto-slate/build/messages/src/blocks/Text/DetachedTextBlockEditor.json +0 -6
  179. package/packages/volto-slate/build/messages/src/blocks/Text/SlashMenu.json +0 -6
  180. package/packages/volto-slate/build/messages/src/editor/plugins/AdvancedLink/index.json +0 -10
  181. package/packages/volto-slate/build/messages/src/editor/plugins/Link/index.json +0 -10
  182. package/packages/volto-slate/build/messages/src/editor/plugins/Table/index.json +0 -30
  183. package/packages/volto-slate/build/messages/src/elementEditor/messages.json +0 -10
  184. package/packages/volto-slate/build/messages/src/widgets/HtmlSlateWidget.json +0 -6
  185. package/packages/volto-slate/build/messages/src/widgets/RichTextWidgetView.json +0 -6
  186. package/packages/volto-slate/locales/de/LC_MESSAGES/volto.po +0 -148
  187. package/packages/volto-slate/locales/en/LC_MESSAGES/volto.po +0 -148
  188. package/packages/volto-slate/locales/volto.pot +0 -182
  189. package/packages/volto-slate/package.json +0 -43
  190. package/packages/volto-slate/src/actions/content.js +0 -30
  191. package/packages/volto-slate/src/actions/index.js +0 -3
  192. package/packages/volto-slate/src/actions/plugins.js +0 -9
  193. package/packages/volto-slate/src/actions/selection.js +0 -22
  194. package/packages/volto-slate/src/blocks/Table/Cell.jsx +0 -87
  195. package/packages/volto-slate/src/blocks/Table/Cell.test.js +0 -54
  196. package/packages/volto-slate/src/blocks/Table/TableBlockEdit.jsx +0 -694
  197. package/packages/volto-slate/src/blocks/Table/TableBlockEdit.test.js +0 -40
  198. package/packages/volto-slate/src/blocks/Table/TableBlockView.jsx +0 -150
  199. package/packages/volto-slate/src/blocks/Table/TableBlockView.test.js +0 -49
  200. package/packages/volto-slate/src/blocks/Table/deconstruct.js +0 -113
  201. package/packages/volto-slate/src/blocks/Table/extensions/normalizeTable.js +0 -5
  202. package/packages/volto-slate/src/blocks/Table/index.js +0 -60
  203. package/packages/volto-slate/src/blocks/Table/schema.js +0 -122
  204. package/packages/volto-slate/src/blocks/Text/DefaultTextBlockEditor.jsx +0 -304
  205. package/packages/volto-slate/src/blocks/Text/DetachedTextBlockEditor.jsx +0 -77
  206. package/packages/volto-slate/src/blocks/Text/MarkdownIntroduction.jsx +0 -59
  207. package/packages/volto-slate/src/blocks/Text/PluginSidebar.jsx +0 -18
  208. package/packages/volto-slate/src/blocks/Text/ShortcutListing.jsx +0 -28
  209. package/packages/volto-slate/src/blocks/Text/SlashMenu.jsx +0 -203
  210. package/packages/volto-slate/src/blocks/Text/TextBlockEdit.jsx +0 -38
  211. package/packages/volto-slate/src/blocks/Text/TextBlockEdit.test.js +0 -107
  212. package/packages/volto-slate/src/blocks/Text/TextBlockSchema.js +0 -54
  213. package/packages/volto-slate/src/blocks/Text/TextBlockView.jsx +0 -31
  214. package/packages/volto-slate/src/blocks/Text/css/editor.css +0 -18
  215. package/packages/volto-slate/src/blocks/Text/extensions/Readme.md +0 -49
  216. package/packages/volto-slate/src/blocks/Text/extensions/breakList.js +0 -100
  217. package/packages/volto-slate/src/blocks/Text/extensions/index.js +0 -6
  218. package/packages/volto-slate/src/blocks/Text/extensions/insertBreak.js +0 -57
  219. package/packages/volto-slate/src/blocks/Text/extensions/isSelected.js +0 -7
  220. package/packages/volto-slate/src/blocks/Text/extensions/normalizeExternalData.js +0 -7
  221. package/packages/volto-slate/src/blocks/Text/extensions/withDeserializers.js +0 -87
  222. package/packages/volto-slate/src/blocks/Text/extensions/withLists.js +0 -5
  223. package/packages/volto-slate/src/blocks/Text/index.js +0 -171
  224. package/packages/volto-slate/src/blocks/Text/keyboard/backspaceInList.js +0 -58
  225. package/packages/volto-slate/src/blocks/Text/keyboard/breakBlocks.js +0 -3
  226. package/packages/volto-slate/src/blocks/Text/keyboard/cancelEsc.js +0 -7
  227. package/packages/volto-slate/src/blocks/Text/keyboard/indentListItems.js +0 -240
  228. package/packages/volto-slate/src/blocks/Text/keyboard/index.js +0 -52
  229. package/packages/volto-slate/src/blocks/Text/keyboard/joinBlocks.js +0 -180
  230. package/packages/volto-slate/src/blocks/Text/keyboard/moveListItems.js +0 -124
  231. package/packages/volto-slate/src/blocks/Text/keyboard/slashMenu.js +0 -19
  232. package/packages/volto-slate/src/blocks/Text/keyboard/softBreak.js +0 -7
  233. package/packages/volto-slate/src/blocks/Text/keyboard/traverseBlocks.js +0 -81
  234. package/packages/volto-slate/src/blocks/Text/keyboard/unwrapEmptyString.js +0 -26
  235. package/packages/volto-slate/src/blocks/Text/schema.js +0 -39
  236. package/packages/volto-slate/src/constants.js +0 -123
  237. package/packages/volto-slate/src/editor/EditorContext.jsx +0 -5
  238. package/packages/volto-slate/src/editor/EditorReference.jsx +0 -22
  239. package/packages/volto-slate/src/editor/SlateEditor.jsx +0 -375
  240. package/packages/volto-slate/src/editor/config.jsx +0 -344
  241. package/packages/volto-slate/src/editor/decorate.js +0 -68
  242. package/packages/volto-slate/src/editor/deserialize.js +0 -185
  243. package/packages/volto-slate/src/editor/extensions/index.js +0 -6
  244. package/packages/volto-slate/src/editor/extensions/insertBreak.js +0 -15
  245. package/packages/volto-slate/src/editor/extensions/insertData.js +0 -159
  246. package/packages/volto-slate/src/editor/extensions/isInline.js +0 -14
  247. package/packages/volto-slate/src/editor/extensions/normalizeExternalData.js +0 -8
  248. package/packages/volto-slate/src/editor/extensions/normalizeNode.js +0 -48
  249. package/packages/volto-slate/src/editor/extensions/withDeserializers.js +0 -15
  250. package/packages/volto-slate/src/editor/extensions/withTestingFeatures.jsx +0 -84
  251. package/packages/volto-slate/src/editor/index.js +0 -14
  252. package/packages/volto-slate/src/editor/less/editor.less +0 -173
  253. package/packages/volto-slate/src/editor/less/globals.less +0 -18
  254. package/packages/volto-slate/src/editor/less/slate.less +0 -28
  255. package/packages/volto-slate/src/editor/plugins/AdvancedLink/deserialize.js +0 -90
  256. package/packages/volto-slate/src/editor/plugins/AdvancedLink/extensions.js +0 -32
  257. package/packages/volto-slate/src/editor/plugins/AdvancedLink/index.js +0 -50
  258. package/packages/volto-slate/src/editor/plugins/AdvancedLink/render.jsx +0 -37
  259. package/packages/volto-slate/src/editor/plugins/AdvancedLink/schema.js +0 -114
  260. package/packages/volto-slate/src/editor/plugins/AdvancedLink/styles.less +0 -8
  261. package/packages/volto-slate/src/editor/plugins/Blockquote/index.js +0 -30
  262. package/packages/volto-slate/src/editor/plugins/Callout/index.js +0 -34
  263. package/packages/volto-slate/src/editor/plugins/Image/deconstruct.js +0 -30
  264. package/packages/volto-slate/src/editor/plugins/Image/extensions.js +0 -51
  265. package/packages/volto-slate/src/editor/plugins/Image/index.js +0 -11
  266. package/packages/volto-slate/src/editor/plugins/Image/render.jsx +0 -22
  267. package/packages/volto-slate/src/editor/plugins/Link/extensions.js +0 -58
  268. package/packages/volto-slate/src/editor/plugins/Link/index.js +0 -164
  269. package/packages/volto-slate/src/editor/plugins/Link/render.jsx +0 -54
  270. package/packages/volto-slate/src/editor/plugins/Markdown/constants.js +0 -81
  271. package/packages/volto-slate/src/editor/plugins/Markdown/extensions.js +0 -334
  272. package/packages/volto-slate/src/editor/plugins/Markdown/index.js +0 -28
  273. package/packages/volto-slate/src/editor/plugins/Markdown/utils.js +0 -198
  274. package/packages/volto-slate/src/editor/plugins/StyleMenu/StyleMenu.jsx +0 -153
  275. package/packages/volto-slate/src/editor/plugins/StyleMenu/index.js +0 -19
  276. package/packages/volto-slate/src/editor/plugins/StyleMenu/style.less +0 -29
  277. package/packages/volto-slate/src/editor/plugins/StyleMenu/utils.js +0 -168
  278. package/packages/volto-slate/src/editor/plugins/Table/TableButton.jsx +0 -142
  279. package/packages/volto-slate/src/editor/plugins/Table/TableCell.jsx +0 -44
  280. package/packages/volto-slate/src/editor/plugins/Table/TableContainer.jsx +0 -37
  281. package/packages/volto-slate/src/editor/plugins/Table/TableSizePicker.jsx +0 -83
  282. package/packages/volto-slate/src/editor/plugins/Table/extensions.js +0 -87
  283. package/packages/volto-slate/src/editor/plugins/Table/index.js +0 -390
  284. package/packages/volto-slate/src/editor/plugins/Table/less/public.less +0 -29
  285. package/packages/volto-slate/src/editor/plugins/Table/less/table.less +0 -28
  286. package/packages/volto-slate/src/editor/plugins/Table/render.jsx +0 -30
  287. package/packages/volto-slate/src/editor/plugins/index.js +0 -19
  288. package/packages/volto-slate/src/editor/render.jsx +0 -224
  289. package/packages/volto-slate/src/editor/ui/BasicToolbar.jsx +0 -11
  290. package/packages/volto-slate/src/editor/ui/BlockButton.jsx +0 -31
  291. package/packages/volto-slate/src/editor/ui/ClearFormattingButton.jsx +0 -21
  292. package/packages/volto-slate/src/editor/ui/ExpandedToolbar.jsx +0 -18
  293. package/packages/volto-slate/src/editor/ui/Expando.jsx +0 -5
  294. package/packages/volto-slate/src/editor/ui/InlineToolbar.jsx +0 -73
  295. package/packages/volto-slate/src/editor/ui/MarkButton.jsx +0 -23
  296. package/packages/volto-slate/src/editor/ui/MarkElementButton.jsx +0 -30
  297. package/packages/volto-slate/src/editor/ui/Menu.jsx +0 -13
  298. package/packages/volto-slate/src/editor/ui/PositionedToolbar.jsx +0 -32
  299. package/packages/volto-slate/src/editor/ui/Separator.jsx +0 -7
  300. package/packages/volto-slate/src/editor/ui/SlateContextToolbar.jsx +0 -13
  301. package/packages/volto-slate/src/editor/ui/SlateToolbar.jsx +0 -96
  302. package/packages/volto-slate/src/editor/ui/Toolbar.jsx +0 -103
  303. package/packages/volto-slate/src/editor/ui/ToolbarButton.jsx +0 -33
  304. package/packages/volto-slate/src/editor/ui/ToolbarButton.test.js +0 -25
  305. package/packages/volto-slate/src/editor/ui/index.js +0 -15
  306. package/packages/volto-slate/src/editor/utils.js +0 -248
  307. package/packages/volto-slate/src/elementEditor/ContextButtons.jsx +0 -56
  308. package/packages/volto-slate/src/elementEditor/PluginEditor.jsx +0 -124
  309. package/packages/volto-slate/src/elementEditor/Readme.md +0 -6
  310. package/packages/volto-slate/src/elementEditor/SchemaProvider.jsx +0 -3
  311. package/packages/volto-slate/src/elementEditor/SidebarEditor.jsx +0 -46
  312. package/packages/volto-slate/src/elementEditor/ToolbarButton.jsx +0 -44
  313. package/packages/volto-slate/src/elementEditor/index.js +0 -5
  314. package/packages/volto-slate/src/elementEditor/makeInlineElementPlugin.js +0 -100
  315. package/packages/volto-slate/src/elementEditor/messages.js +0 -14
  316. package/packages/volto-slate/src/elementEditor/utils.js +0 -226
  317. package/packages/volto-slate/src/hooks/index.js +0 -3
  318. package/packages/volto-slate/src/hooks/useEditorContext.js +0 -6
  319. package/packages/volto-slate/src/hooks/useIsomorphicLayoutEffect.js +0 -7
  320. package/packages/volto-slate/src/hooks/useSelectionPosition.js +0 -25
  321. package/packages/volto-slate/src/i18n.js +0 -180
  322. package/packages/volto-slate/src/icons/hashlink.svg +0 -57
  323. package/packages/volto-slate/src/index.js +0 -61
  324. package/packages/volto-slate/src/reducers/content.js +0 -74
  325. package/packages/volto-slate/src/reducers/index.js +0 -3
  326. package/packages/volto-slate/src/reducers/plugins.js +0 -17
  327. package/packages/volto-slate/src/reducers/selection.js +0 -16
  328. package/packages/volto-slate/src/utils/blocks.js +0 -375
  329. package/packages/volto-slate/src/utils/blocks.test.js +0 -138
  330. package/packages/volto-slate/src/utils/editor.js +0 -31
  331. package/packages/volto-slate/src/utils/image.js +0 -25
  332. package/packages/volto-slate/src/utils/index.js +0 -11
  333. package/packages/volto-slate/src/utils/internals.js +0 -46
  334. package/packages/volto-slate/src/utils/lists.js +0 -92
  335. package/packages/volto-slate/src/utils/marks.js +0 -104
  336. package/packages/volto-slate/src/utils/mime-types.js +0 -24
  337. package/packages/volto-slate/src/utils/nodes.js +0 -4
  338. package/packages/volto-slate/src/utils/ops.js +0 -20
  339. package/packages/volto-slate/src/utils/random.js +0 -17
  340. package/packages/volto-slate/src/utils/selection.js +0 -236
  341. package/packages/volto-slate/src/utils/slate-string-utils.js +0 -408
  342. package/packages/volto-slate/src/utils/volto-blocks.js +0 -314
  343. package/packages/volto-slate/src/widgets/ErrorBoundary.jsx +0 -27
  344. package/packages/volto-slate/src/widgets/HtmlSlateWidget.jsx +0 -139
  345. package/packages/volto-slate/src/widgets/ObjectByTypeWidget.jsx +0 -49
  346. package/packages/volto-slate/src/widgets/RichTextWidget.jsx +0 -72
  347. package/packages/volto-slate/src/widgets/RichTextWidgetView.jsx +0 -37
  348. package/packages/volto-slate/src/widgets/style.css +0 -21
  349. package/types/components/manage/Blocks/Video/Body.test.d.ts +0 -1
package/.eslintignore CHANGED
@@ -0,0 +1 @@
1
+ types/
package/.eslintrc CHANGED
@@ -34,9 +34,9 @@
34
34
  "alias": {
35
35
  "map": [
36
36
  ["@plone/volto", "./src"],
37
- ["@plone/volto-slate", "./packages/volto-slate/src"],
38
- ["@plone/registry", "./packages/registry/src"],
39
- ["@plone/types", "./packages/types"],
37
+ ["@plone/volto-slate", "../volto-slate/src"],
38
+ ["@plone/registry", "../registry/src"],
39
+ ["@plone/types", "../types"],
40
40
  ["@package", "./src"],
41
41
  ["@root", "./src"]
42
42
  ],
@@ -0,0 +1,8 @@
1
+ **/.next
2
+ **/build
3
+ **/coverage
4
+ **/dist
5
+ styles/rules/*
6
+ node_modules
7
+ ./types/*
8
+ locales
package/.prettierrc ADDED
@@ -0,0 +1,12 @@
1
+ {
2
+ "trailingComma": "all",
3
+ "singleQuote": true,
4
+ "overrides": [
5
+ {
6
+ "files": "*.overrides",
7
+ "options": {
8
+ "parser": "less"
9
+ }
10
+ }
11
+ ]
12
+ }
@@ -1,22 +1,28 @@
1
1
  {
2
+ "plugins": {
3
+ "../scripts/prepublish.js": {}
4
+ },
2
5
  "hooks": {
6
+ "before:bump": ["pnpm i18n"],
3
7
  "after:bump": [
4
8
  "pipx run towncrier build --draft --yes --version ${version} > .changelog.draft && pipx run towncrier build --yes --version ${version}",
5
- "yarn build"
9
+ "make copyreleasenotestodocs",
10
+ "pnpm build:types"
6
11
  ],
7
12
  "after:release": "rm .changelog.draft"
8
13
  },
14
+ "npm": {
15
+ "publish": false
16
+ },
9
17
  "git": {
18
+ "commitArgs": ["--no-verify"],
10
19
  "changelog": "pipx run towncrier build --draft --yes --version 0.0.0",
11
20
  "requireUpstream": false,
12
- "requireCleanWorkingDir": false,
13
- "commitMessage": "Release @plone/registry ${version}",
14
- "tagName": "plone-registry-${version}",
15
- "tagAnnotation": "Release @plone/registry ${version}"
21
+ "requireCleanWorkingDir": false
16
22
  },
17
23
  "github": {
18
24
  "release": true,
19
- "releaseName": "@plone/registry ${version}",
25
+ "releaseName": "${version}",
20
26
  "releaseNotes": "cat .changelog.draft"
21
27
  }
22
28
  }
package/CHANGELOG.md CHANGED
@@ -9,14 +9,60 @@ myst:
9
9
 
10
10
  # Volto Release Notes
11
11
 
12
- <!-- You should *NOT* be adding new change log entries to this file.
13
- You should create a file in the news directory instead.
14
- For helpful instructions, please see:
15
- https://6.docs.plone.org/contributing/index.html#contributing-change-log-label
12
+ <!-- Do *NOT* add new change log entries to this file.
13
+ Instead create a file in the news directory.
14
+ For helpful instructions, see:
15
+ https://6.docs.plone.org/contributing/index.html#change-log-entry
16
16
  -->
17
17
 
18
18
  <!-- towncrier release notes start -->
19
19
 
20
+ ## 18.0.0-alpha.5 (2023-12-13)
21
+
22
+ ### Feature
23
+
24
+ - Added conditional variations support. @sneridagh @robgietema [#5424](https://github.com/plone/volto/issues/5424)
25
+ - Added `navRoot` and `contentType` to `restricted` key in blocks configuration. @sneridagh [#5517](https://github.com/plone/volto/issues/5517)
26
+ - Add support for `preview_image_link` behavior in Volto Image component @sneridagh [#5523](https://github.com/plone/volto/issues/5523)
27
+
28
+ ### Internal
29
+
30
+ - Add missing dependency on jsdom @sneridagh [#5490](https://github.com/plone/volto/issues/5490)
31
+ - Fix cypress artifacts path in acceptance tests. @davisagli [#5498](https://github.com/plone/volto/issues/5498)
32
+ - Make sure that the dependencies are built and available on all processes @sneridagh [#5514](https://github.com/plone/volto/issues/5514)
33
+
34
+ ### Documentation
35
+
36
+ - Less comment blocks must have `*` as the first character on the second and subsequent lines, else the Pygments lexer fails. @stevepiercy [#5500](https://github.com/plone/volto/issues/5500)
37
+ - Revert #5500. See #5499 for actual cause of Pygments failure. @stevepiercy [#5504](https://github.com/plone/volto/issues/5504)
38
+ - Clarified where to run Make commands for building documentation. @stevepiercy [#5505](https://github.com/plone/volto/issues/5505)
39
+ - Changed installation of Vale from manual to automatic via `make docs-vale`. @stevepiercy [#5508](https://github.com/plone/volto/issues/5508)
40
+
41
+ ## 18.0.0-alpha.4 (2023-12-02)
42
+
43
+ ### Feature
44
+
45
+ - New monorepo @sneridagh [#5409](https://github.com/plone/volto/issues/5409)
46
+
47
+ ### Bugfix
48
+
49
+ - Fix the right order of parameters in normalizeExternalData.js @dobri1408 [#5347](https://github.com/plone/volto/issues/5347)
50
+ - Initialize data in form before the checks for the `blocks` and `blocks_layout` are done This fix an edge case when the data from the server content is empty, then the fields are populated, but the initialized data is snapshot after the check (and amendments) are done. @sneridagh [#5445](https://github.com/plone/volto/issues/5445)
51
+ - Replaced `toNumber` with `parseFloat` to avoid an error when validating the `plone.restapi` version. @shibbu264 [#5448](https://github.com/plone/volto/issues/5448)
52
+ - Initialize only the development addons present in `compilerOptions.paths` filtered by the add-ons registered @sneridagh [#5463](https://github.com/plone/volto/issues/5463)
53
+
54
+ ### Internal
55
+
56
+ - Cleaned up Registry and renamed `packagesFolderAddons` to `coreAddons`. @sneridagh [#5464](https://github.com/plone/volto/issues/5464)
57
+ - Deleted wrongly placed news items, added a check for them, issue a nice message in CI @sneridagh [#5470](https://github.com/plone/volto/issues/5470)
58
+
59
+ ### Documentation
60
+
61
+ - Fixed broken links after monorepo merge. @stevepiercy [#5459](https://github.com/plone/volto/issues/5459)
62
+ - Added `volto-generator` compatibility with Volto to documentation. @stevepiercy [#5467](https://github.com/plone/volto/issues/5467)
63
+ - Updated the symlink from `docs/source/news` to point to `packages/volto/news`. @stevepiercy [#5471](https://github.com/plone/volto/issues/5471)
64
+ - Remove outdated note from upgrade guide for 17 related to ipv6 preferred by Node 18 @sneridagh [#5481](https://github.com/plone/volto/issues/5481)
65
+
20
66
  ## 18.0.0-alpha.3 (2023-11-27)
21
67
 
22
68
  ### Feature
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  }
10
10
  ],
11
11
  "license": "MIT",
12
- "version": "18.0.0-alpha.3",
12
+ "version": "18.0.0-alpha.5",
13
13
  "repository": {
14
14
  "type": "git",
15
15
  "url": "git@github.com:plone/volto.git"
@@ -27,42 +27,13 @@
27
27
  "plone",
28
28
  "react"
29
29
  ],
30
- "packagesFolderAddons": {
30
+ "coreAddons": {
31
31
  "volto-slate": {
32
32
  "package": "@plone/volto-slate"
33
33
  }
34
34
  },
35
+ "main": "src/index.js",
35
36
  "types": "types/index.d.ts",
36
- "scripts": {
37
- "postinstall": "make patches",
38
- "analyze": "BUNDLE_ANALYZE=true razzle build",
39
- "start": "razzle start",
40
- "start:coresandbox": "ADDONS=coresandbox razzle start",
41
- "build": "razzle build --noninteractive",
42
- "build:types": "tsc src/**/*.{js,jsx} --declaration --allowJs --emitDeclarationOnly --outDir types --skipLibCheck",
43
- "prepare": "husky install",
44
- "test": "razzle test --maxWorkers=50%",
45
- "test:ci": "CI=true NODE_ICU_DATA=node_modules/full-icu razzle test",
46
- "test:husky": "CI=true yarn test --bail --findRelatedTests",
47
- "test:debug": "node --inspect node_modules/.bin/jest --runInBand",
48
- "start:prod": "NODE_ENV=production node build/server.js",
49
- "prettier": "./node_modules/.bin/prettier --single-quote --check '{src,cypress}/**/*.{js,jsx,ts,tsx}' --check '*.js'",
50
- "prettier:fix": "./node_modules/.bin/prettier --single-quote --write '{src,cypress}/**/*.{js,jsx,ts,tsx}' --write '*.js'",
51
- "stylelint": "./node_modules/.bin/stylelint 'theme/**/*.{css,less}' 'src/**/*.{css,less}'",
52
- "stylelint:overrides": "./node_modules/.bin/stylelint 'theme/**/*.overrides' 'src/**/*.overrides'",
53
- "stylelint:fix": "yarn stylelint --fix && yarn stylelint:overrides --fix",
54
- "lint": "./node_modules/eslint/bin/eslint.js --max-warnings=0 'src/**/*.{js,jsx,ts,tsx,json}'",
55
- "lint:fix": "./node_modules/eslint/bin/eslint.js --fix 'src/**/*.{js,jsx,ts,tsx,json}'",
56
- "i18n": "rm -rf build/messages && NODE_ENV=production node packages/scripts/i18n.cjs",
57
- "i18n:ci": "yarn i18n && git diff -G'^[^\"POT]' --exit-code",
58
- "typecheck": "tsc --project tsconfig.json --noEmit",
59
- "dry-release": "release-it --dry-run",
60
- "release": "release-it",
61
- "release-major-alpha": "release-it major --preRelease=alpha",
62
- "release-alpha": "release-it --preRelease=alpha",
63
- "storybook": "start-storybook -p 6006",
64
- "build-storybook": "build-storybook"
65
- },
66
37
  "bundlewatch": {
67
38
  "files": [
68
39
  {
@@ -72,9 +43,6 @@
72
43
  ]
73
44
  },
74
45
  "jest": {
75
- "modulePathIgnorePatterns": [
76
- "api"
77
- ],
78
46
  "transform": {
79
47
  "^.+\\.js(x)?$": "babel-jest",
80
48
  "^.+\\.ts(x)?$": "ts-jest",
@@ -86,9 +54,9 @@
86
54
  "@plone/volto/package.json": "<rootDir>/package.json",
87
55
  "@plone/volto/babel": "<rootDir>/babel.js",
88
56
  "@plone/volto/(.*)$": "<rootDir>/src/$1",
89
- "@plone/volto-slate/(.*)$": "<rootDir>/packages/volto-slate/src/$1",
90
- "@plone/registry": "<rootDir>/packages/registry/src",
91
- "@plone/registry/(.*)$": "<rootDir>/packages/registry/src/$1",
57
+ "@plone/volto-slate/(.*)$": "<rootDir>/../volto-slate/src/$1",
58
+ "@plone/registry": "<rootDir>/../registry/src",
59
+ "@plone/registry/(.*)$": "<rootDir>/../registry/src/$1",
92
60
  "~/config": "<rootDir>/src/config",
93
61
  "~/../locales/${lang}.json": "<rootDir>/locales/en.json",
94
62
  "(.*)/locales/(.*)": "<rootDir>/locales/$2",
@@ -116,23 +84,8 @@
116
84
  "__DEV__": true
117
85
  },
118
86
  "testMatch": [
119
- "<rootDir>/src/**/__tests__/**/*.{js,jsx,mjs,ts,tsx}",
120
- "<rootDir>/src/**/?(*.)(spec|test).{js,jsx,mjs,ts,tsx}",
121
87
  "<rootDir>/__tests__/**/?(*.)(spec|test).{js,jsx,mjs,ts,tsx}",
122
- "<rootDir>/packages/volto-slate/src/**/?(*.)(spec|test).{js,jsx,mjs,ts,tsx}",
123
- "<rootDir>/packages/registry/src/**/?(*.)(spec|test).{js,jsx,mjs,ts,tsx}"
124
- ]
125
- },
126
- "prettier": {
127
- "trailingComma": "all",
128
- "singleQuote": true,
129
- "overrides": [
130
- {
131
- "files": "*.overrides",
132
- "options": {
133
- "parser": "less"
134
- }
135
- }
88
+ "<rootDir>/../**/?(*.)(spec|test).{js,jsx,mjs,ts,tsx}"
136
89
  ]
137
90
  },
138
91
  "stylelint": {
@@ -185,52 +138,6 @@
185
138
  "not ie 11",
186
139
  "not dead"
187
140
  ],
188
- "release-it": {
189
- "hooks": {
190
- "before:bump": [
191
- "yarn i18n"
192
- ],
193
- "after:bump": [
194
- "pipx run towncrier build --draft --yes --version ${version} > .changelog.draft && pipx run towncrier build --yes --version ${version}",
195
- "make corepackagebump VERSION=${version}",
196
- "make copyreleasenotestodocs",
197
- "yarn build:types"
198
- ],
199
- "after:release": "rm .changelog.draft"
200
- },
201
- "git": {
202
- "changelog": "pipx run towncrier build --draft --yes --version 0.0.0",
203
- "requireUpstream": false,
204
- "requireCleanWorkingDir": false
205
- },
206
- "github": {
207
- "release": true,
208
- "releaseName": "${version}",
209
- "releaseNotes": "cat .changelog.draft"
210
- }
211
- },
212
- "lint-staged": {
213
- "src/**/*.{js,jsx,ts,tsx,json}": [
214
- "npx eslint --max-warnings=0 --fix",
215
- "npx prettier --single-quote --write",
216
- "yarn test:husky"
217
- ],
218
- "src/**/*.{jsx}": [
219
- "yarn i18n"
220
- ],
221
- "theme/**/*.{css,less}": [
222
- "npx stylelint --fix"
223
- ],
224
- "src/**/*.{css,less}": [
225
- "npx stylelint --fix"
226
- ],
227
- "theme/**/*.overrides": [
228
- "npx stylelint --fix"
229
- ],
230
- "src/**/*.overrides": [
231
- "npx stylelint --fix"
232
- ]
233
- },
234
141
  "engines": {
235
142
  "node": "^16 || ^18 || ^20"
236
143
  },
@@ -249,11 +156,6 @@
249
156
  "@loadable/component": "5.14.1",
250
157
  "@loadable/server": "5.14.0",
251
158
  "@loadable/webpack-plugin": "5.15.2",
252
- "@plone/scripts": "3.0.1",
253
- "@testing-library/cypress": "9.0.0",
254
- "@testing-library/jest-dom": "5.16.4",
255
- "@testing-library/react": "12.1.5",
256
- "@testing-library/react-hooks": "8.0.1",
257
159
  "autoprefixer": "10.4.8",
258
160
  "axe-core": "4.4.2",
259
161
  "babel-plugin-add-module-exports": "0.2.1",
@@ -267,9 +169,6 @@
267
169
  "connected-react-router": "6.8.0",
268
170
  "crypto-random-string": "3.2.0",
269
171
  "css-loader": "5.2.7",
270
- "cypress": "13.1.0",
271
- "cypress-axe": "1.5.0",
272
- "cypress-file-upload": "5.0.8",
273
172
  "debug": "4.3.2",
274
173
  "decorate-component-with-props": "1.2.1",
275
174
  "deep-freeze": "0.0.1",
@@ -302,7 +201,6 @@
302
201
  "hoist-non-react-statics": "3.3.2",
303
202
  "html-webpack-plugin": "5.5.0",
304
203
  "http-proxy-middleware": "2.0.1",
305
- "husky": "8.0.1",
306
204
  "identity-obj-proxy": "3.0.0",
307
205
  "image-extensions": "1.1.0",
308
206
  "immutable": "3",
@@ -335,6 +233,7 @@
335
233
  "prettier": "3.0.3",
336
234
  "pretty-bytes": "5.3.0",
337
235
  "prismjs": "1.27.0",
236
+ "process": "^0.11.10",
338
237
  "promise-file-reader": "1.0.2",
339
238
  "prop-types": "15.7.2",
340
239
  "query-string": "7.1.0",
@@ -360,6 +259,7 @@
360
259
  "react-intl": "3.8.0",
361
260
  "react-intl-redux": "2.2.0",
362
261
  "react-medium-image-zoom": "3.0.15",
262
+ "react-popper": "^2.3.0",
363
263
  "react-portal": "4.2.1",
364
264
  "react-redux": "7.2.4",
365
265
  "react-router": "5.2.0",
@@ -404,15 +304,20 @@
404
304
  "undoo": "0.5.0",
405
305
  "universal-cookie": "4.0.4",
406
306
  "universal-cookie-express": "4.0.3",
307
+ "url": "^0.11.3",
407
308
  "use-deep-compare-effect": "1.8.1",
408
309
  "uuid": "^8.3.2",
409
310
  "webpack": "5.76.1",
410
311
  "webpack-dev-server": "4.11.1",
411
312
  "webpack-node-externals": "3.0.0",
412
313
  "xmlrpc": "1.3.2",
413
- "yarnhook": "0.6.1"
314
+ "yarnhook": "0.5.1",
315
+ "@plone/registry": "1.1.0",
316
+ "@plone/scripts": "3.1.0",
317
+ "@plone/volto-slate": "18.0.0-alpha.5"
414
318
  },
415
319
  "devDependencies": {
320
+ "@jest/globals": "^29.7.0",
416
321
  "@storybook/addon-actions": "^6.5.15",
417
322
  "@storybook/addon-controls": "6.5.15",
418
323
  "@storybook/addon-essentials": "^6.5.15",
@@ -420,15 +325,26 @@
420
325
  "@storybook/builder-webpack5": "^6.5.15",
421
326
  "@storybook/manager-webpack5": "^6.5.15",
422
327
  "@storybook/react": "^6.5.15",
328
+ "@testing-library/cypress": "9.0.0",
329
+ "@testing-library/jest-dom": "5.16.4",
330
+ "@testing-library/react": "12.1.5",
331
+ "@testing-library/react-hooks": "8.0.1",
332
+ "@types/jest": "^29.5.8",
333
+ "@types/react": "^17.0.52",
334
+ "@types/react-dom": "^17",
423
335
  "@types/react-test-renderer": "18.0.1",
424
336
  "@typescript-eslint/eslint-plugin": "6.7.0",
425
337
  "@typescript-eslint/parser": "6.7.0",
426
338
  "babel-loader": "9.1.0",
427
339
  "bundlewatch": "0.3.3",
340
+ "cypress": "13.1.0",
341
+ "cypress-axe": "1.5.0",
342
+ "cypress-file-upload": "5.0.8",
428
343
  "full-icu": "1.4.0",
429
344
  "identity-obj-proxy": "3.0.0",
430
345
  "jest": "26.6.3",
431
346
  "jest-environment-jsdom": "^26",
347
+ "jsdom": "^16.7.0",
432
348
  "jsonwebtoken": "9.0.0",
433
349
  "react-error-overlay": "6.0.9",
434
350
  "react-is": "^16.13.1",
@@ -439,24 +355,41 @@
439
355
  "ts-loader": "9.4.4",
440
356
  "typescript": "5.2.2",
441
357
  "use-trace-update": "1.3.2",
442
- "why": "0.6.2"
443
- },
444
- "resolutions-comments": {
445
- "ua-parser-js": "See https://github.com/faisalman/ua-parser-js/issues/536",
446
- "@typescript-eslint/eslint-plugin": "ESlint support for TypeScript 5.2.0 needs these versions"
447
- },
448
- "resolutions": {
449
- "clean-css": "5.3.1",
450
- "http-proxy": "^1.18.1",
451
- "react-dev-utils": "^12",
452
- "react-error-overlay": "6.0.9",
453
- "ua-parser-js": "0.7.28",
454
- "webpack-bundle-analyzer": "4.9.1",
455
- "@typescript-eslint/eslint-plugin": "6.7.0",
456
- "@typescript-eslint/parser": "6.7.0"
358
+ "wait-on": "6.0.0",
359
+ "why": "0.6.2",
360
+ "@plone/volto-coresandbox": "1.0.0"
457
361
  },
458
362
  "volta": {
459
363
  "node": "20.9.0"
460
364
  },
461
- "packageManager": "yarn@3.2.3"
462
- }
365
+ "scripts": {
366
+ "analyze": "BUNDLE_ANALYZE=true razzle build",
367
+ "start": "razzle start",
368
+ "start:coresandbox": "ADDONS=coresandbox razzle start",
369
+ "build": "razzle build --noninteractive",
370
+ "build:types": "tsc src/**/*.{js,jsx} --declaration --allowJs --emitDeclarationOnly --outDir types --skipLibCheck",
371
+ "test": "razzle test --maxWorkers=50%",
372
+ "test:ci": "CI=true NODE_ICU_DATA=node_modules/full-icu razzle test",
373
+ "test:husky": "CI=true yarn test --bail --findRelatedTests",
374
+ "test:debug": "node --inspect node_modules/.bin/jest --runInBand",
375
+ "start:prod": "NODE_ENV=production node build/server.js",
376
+ "prettier": "./node_modules/.bin/prettier --single-quote --check '{src,cypress}/**/*.{js,jsx,ts,tsx}' --check '*.js'",
377
+ "prettier:fix": "./node_modules/.bin/prettier --single-quote --write '{src,cypress}/**/*.{js,jsx,ts,tsx}' --write '*.js'",
378
+ "prettier:husky": "prettier --single-quote --write",
379
+ "stylelint": "./node_modules/.bin/stylelint 'theme/**/*.{css,less}' 'src/**/*.{css,less}'",
380
+ "stylelint:overrides": "./node_modules/.bin/stylelint 'theme/**/*.overrides' 'src/**/*.overrides'",
381
+ "stylelint:fix": "yarn stylelint --fix && yarn stylelint:overrides --fix",
382
+ "lint": "./node_modules/eslint/bin/eslint.js --max-warnings=0 'src/**/*.{js,jsx,ts,tsx,json}'",
383
+ "lint:fix": "./node_modules/eslint/bin/eslint.js --fix 'src/**/*.{js,jsx,ts,tsx,json}'",
384
+ "lint:husky": "eslint --max-warnings=0 --fix",
385
+ "i18n": "rm -rf build/messages && NODE_ENV=production i18n",
386
+ "i18n:ci": "pnpm i18n && git diff -G'^[^\"POT]' --exit-code",
387
+ "typecheck": "tsc --project tsconfig.json --noEmit",
388
+ "dry-release": "release-it --dry-run",
389
+ "release": "release-it",
390
+ "release-major-alpha": "release-it major --preRelease=alpha",
391
+ "release-alpha": "release-it --preRelease=alpha",
392
+ "storybook": "start-storybook -p 6006",
393
+ "build-storybook": "build-storybook"
394
+ }
395
+ }
package/razzle.config.js CHANGED
@@ -7,9 +7,10 @@ const LodashModuleReplacementPlugin = require('lodash-webpack-plugin');
7
7
  const fs = require('fs');
8
8
  const RootResolverPlugin = require('./webpack-plugins/webpack-root-resolver');
9
9
  const RelativeResolverPlugin = require('./webpack-plugins/webpack-relative-resolver');
10
- const createAddonsLoader = require('./packages/registry/create-addons-loader');
11
- const createThemeAddonsLoader = require('./packages/registry/create-theme-addons-loader');
12
- const AddonConfigurationRegistry = require('./packages/registry/addon-registry');
10
+ const { poToJson } = require('@plone/scripts/i18n.cjs');
11
+ const createAddonsLoader = require('@plone/registry/src/create-addons-loader');
12
+ const createThemeAddonsLoader = require('@plone/registry/src/create-theme-addons-loader');
13
+ const AddonConfigurationRegistry = require('@plone/registry/src/addon-registry');
13
14
  const CircularDependencyPlugin = require('circular-dependency-plugin');
14
15
  const TerserPlugin = require('terser-webpack-plugin');
15
16
  const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
@@ -19,7 +20,6 @@ const fileLoaderFinder = makeLoaderFinder('file-loader');
19
20
 
20
21
  const projectRootPath = path.resolve('.');
21
22
  const languages = require('./src/constants/Languages');
22
- const { poToJson } = require('./packages/scripts/i18n.cjs');
23
23
 
24
24
  const packageJson = require(path.join(projectRootPath, 'package.json'));
25
25
 
@@ -232,7 +232,6 @@ const defaultModify = ({
232
232
  'load-volto-addons': addonsLoaderPath,
233
233
  ...registry.getResolveAliases(),
234
234
  '@plone/volto': `${registry.voltoPath}/src`,
235
- '@plone/registry': `${registry.voltoPath}/packages/registry/src`,
236
235
  // to be able to reference path uncustomized by webpack
237
236
  '@plone/volto-original': `${registry.voltoPath}/src`,
238
237
  // be able to reference current package from customized package
@@ -275,8 +274,6 @@ const defaultModify = ({
275
274
  include.push(fs.realpathSync(`${registry.voltoPath}/src`));
276
275
  }
277
276
 
278
- include.push(fs.realpathSync(`${registry.voltoPath}/packages/registry/src`));
279
-
280
277
  // Add babel support external (ie. node_modules npm published packages)
281
278
  const packagesNames = Object.keys(registry.packages);
282
279
  if (registry.packages && packagesNames.length > 0) {
@@ -315,6 +315,9 @@ class Add extends Component {
315
315
  <Form
316
316
  ref={this.form}
317
317
  key="translated-or-new-content-form"
318
+ navRoot={
319
+ this.props.content?.['@components']?.navroot?.navroot || {}
320
+ }
318
321
  schema={this.props.schema}
319
322
  type={this.props.type}
320
323
  formData={{
@@ -334,6 +337,9 @@ class Add extends Component {
334
337
  // Copy the Language Independent Fields values from the to-be translated content
335
338
  // into the default values of the translated content Add form.
336
339
  ...lifData(),
340
+ parent: {
341
+ '@id': this.props.content?.['@id'] || '',
342
+ },
337
343
  }}
338
344
  requestError={this.state.error}
339
345
  onSubmit={this.onSubmit}
@@ -31,6 +31,8 @@ const BlockChooser = ({
31
31
  blocksConfig = config.blocks.blocksConfig,
32
32
  blockChooserRef,
33
33
  properties = {},
34
+ navRoot,
35
+ contentType,
34
36
  }) => {
35
37
  const intl = useIntl();
36
38
  const hasAllowedBlocks = !isEmpty(allowedBlocks);
@@ -55,7 +57,7 @@ const BlockChooser = ({
55
57
  // depending on this function, given properties (current present blocks) and the
56
58
  // block being evaluated
57
59
  return typeof item.restricted === 'function'
58
- ? !item.restricted({ properties, block: item })
60
+ ? !item.restricted({ properties, block: item, navRoot, contentType })
59
61
  : !item.restricted;
60
62
  }
61
63
  }
@@ -54,7 +54,10 @@ const BlockChooserButton = (props) => {
54
54
  blocksConfig,
55
55
  buttonComponent,
56
56
  properties,
57
+ navRoot,
58
+ contentType,
57
59
  } = props;
60
+
58
61
  const { disableNewBlocks } = data;
59
62
  const [addNewBlockOpened, setAddNewBlockOpened] = React.useState(false);
60
63
 
@@ -142,6 +145,8 @@ const BlockChooserButton = (props) => {
142
145
  properties={properties}
143
146
  showRestricted={showRestricted}
144
147
  ref={blockChooserRef}
148
+ navRoot={navRoot}
149
+ contentType={contentType}
145
150
  />
146
151
  </div>
147
152
  </Portal>
@@ -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,
@@ -260,6 +262,8 @@ const BlocksForm = (props) => {
260
262
  pathname,
261
263
  metadata,
262
264
  properties,
265
+ contentType: type,
266
+ navRoot,
263
267
  blocksConfig,
264
268
  selected: selectedBlock === childId,
265
269
  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
  ) : (
@@ -47,7 +47,10 @@ const EditBlockWrapper = (props) => {
47
47
  editable,
48
48
  properties,
49
49
  showBlockChooser,
50
+ navRoot,
51
+ contentType,
50
52
  } = blockProps;
53
+
51
54
  const visible = selected && !hideHandler(data);
52
55
 
53
56
  const required = isBoolean(data.required)
@@ -107,6 +110,8 @@ const EditBlockWrapper = (props) => {
107
110
  blocksConfig={blocksConfig}
108
111
  size="24px"
109
112
  properties={properties}
113
+ navRoot={navRoot}
114
+ contentType={contentType}
110
115
  />
111
116
  )}
112
117
  </div>
@@ -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 = ({ data, block, onChangeBlock, schema }) => {
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
  };
@@ -2,7 +2,8 @@ import { useIntl } from 'react-intl';
2
2
  import { BlockDataForm } from '@plone/volto/components';
3
3
 
4
4
  const ContainerData = (props) => {
5
- const { block, blocksConfig, data, onChangeBlock } = props;
5
+ const { block, blocksConfig, data, onChangeBlock, navRoot, contentType } =
6
+ props;
6
7
  const intl = useIntl();
7
8
 
8
9
  const schema = blocksConfig[data['@type']].blockSchema({ intl });
@@ -25,6 +26,8 @@ const ContainerData = (props) => {
25
26
  block={block}
26
27
  onChangeBlock={onChangeBlock}
27
28
  blocksConfig={blocksConfig}
29
+ navRoot={navRoot}
30
+ contentType={contentType}
28
31
  />
29
32
  );
30
33
  };