@plone/volto 19.0.0-alpha.9 → 19.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (535) hide show
  1. package/.eslintignore +2 -0
  2. package/.eslintrc +26 -15
  3. package/AGENTS.md +47 -0
  4. package/CHANGELOG.md +543 -12
  5. package/README.md +22 -19
  6. package/babel.js +1 -9
  7. package/cypress/support/guillotina.js +1 -0
  8. package/cypress.config.js +1 -0
  9. package/global-test-setup.js +1 -2
  10. package/locales/af/LC_MESSAGES/volto.po +5516 -0
  11. package/locales/af.json +1 -1
  12. package/locales/ar/LC_MESSAGES/volto.po +5516 -0
  13. package/locales/ar.json +1 -1
  14. package/locales/bg/LC_MESSAGES/volto.po +5516 -0
  15. package/locales/bg.json +1 -1
  16. package/locales/bn/LC_MESSAGES/volto.po +5516 -0
  17. package/locales/bn.json +1 -1
  18. package/locales/ca/LC_MESSAGES/volto.po +551 -359
  19. package/locales/ca.json +1 -1
  20. package/locales/cs/LC_MESSAGES/volto.po +5516 -0
  21. package/locales/cs.json +1 -1
  22. package/locales/cy/LC_MESSAGES/volto.po +5516 -0
  23. package/locales/cy.json +1 -1
  24. package/locales/da/LC_MESSAGES/volto.po +5516 -0
  25. package/locales/da.json +1 -1
  26. package/locales/de/LC_MESSAGES/volto.po +222 -29
  27. package/locales/de.json +1 -1
  28. package/locales/el/LC_MESSAGES/volto.po +5516 -0
  29. package/locales/el.json +1 -1
  30. package/locales/en/LC_MESSAGES/volto.po +211 -15
  31. package/locales/en.json +1 -1
  32. package/locales/en_AU/LC_MESSAGES/volto.po +5516 -0
  33. package/locales/en_AU.json +1 -1
  34. package/locales/en_GB/LC_MESSAGES/volto.po +5516 -0
  35. package/locales/en_GB.json +1 -1
  36. package/locales/eo/LC_MESSAGES/volto.po +5516 -0
  37. package/locales/eo.json +1 -1
  38. package/locales/es/LC_MESSAGES/volto.po +336 -145
  39. package/locales/es.json +1 -1
  40. package/locales/et/LC_MESSAGES/volto.po +5516 -0
  41. package/locales/et.json +1 -1
  42. package/locales/eu/LC_MESSAGES/volto.po +413 -222
  43. package/locales/eu.json +1 -1
  44. package/locales/fa/LC_MESSAGES/volto.po +5516 -0
  45. package/locales/fa.json +1 -1
  46. package/locales/fi/LC_MESSAGES/volto.po +212 -20
  47. package/locales/fi.json +1 -1
  48. package/locales/fr/LC_MESSAGES/volto.po +369 -178
  49. package/locales/fr.json +1 -1
  50. package/locales/fu/LC_MESSAGES/volto.po +5516 -0
  51. package/locales/fu.json +1 -1
  52. package/locales/gl/LC_MESSAGES/volto.po +5516 -0
  53. package/locales/gl.json +1 -1
  54. package/locales/he/LC_MESSAGES/volto.po +5516 -0
  55. package/locales/he.json +1 -1
  56. package/locales/hi/LC_MESSAGES/volto.po +220 -23
  57. package/locales/hi.json +1 -1
  58. package/locales/hr/LC_MESSAGES/volto.po +5516 -0
  59. package/locales/hr.json +1 -1
  60. package/locales/hu/LC_MESSAGES/volto.po +5516 -0
  61. package/locales/hu.json +1 -1
  62. package/locales/hy/LC_MESSAGES/volto.po +5516 -0
  63. package/locales/hy.json +1 -1
  64. package/locales/id/LC_MESSAGES/volto.po +5516 -0
  65. package/locales/id.json +1 -1
  66. package/locales/it/LC_MESSAGES/volto.po +236 -39
  67. package/locales/it.json +1 -1
  68. package/locales/ja/LC_MESSAGES/volto.po +254 -61
  69. package/locales/ja.json +1 -1
  70. package/locales/ka/LC_MESSAGES/volto.po +5516 -0
  71. package/locales/ka.json +1 -1
  72. package/locales/kn/LC_MESSAGES/volto.po +5516 -0
  73. package/locales/kn.json +1 -1
  74. package/locales/ko/LC_MESSAGES/volto.po +5516 -0
  75. package/locales/ko.json +1 -1
  76. package/locales/lt/LC_MESSAGES/volto.po +5516 -0
  77. package/locales/lt.json +1 -1
  78. package/locales/lv/LC_MESSAGES/volto.po +5516 -0
  79. package/locales/lv.json +1 -1
  80. package/locales/mi/LC_MESSAGES/volto.po +5516 -0
  81. package/locales/mi.json +1 -1
  82. package/locales/mk/LC_MESSAGES/volto.po +5516 -0
  83. package/locales/mk.json +1 -1
  84. package/locales/my/LC_MESSAGES/volto.po +5516 -0
  85. package/locales/my.json +1 -1
  86. package/locales/nb_NO/LC_MESSAGES/volto.po +5516 -0
  87. package/locales/nb_NO.json +1 -1
  88. package/locales/nl/LC_MESSAGES/volto.po +264 -71
  89. package/locales/nl.json +1 -1
  90. package/locales/nn/LC_MESSAGES/volto.po +5516 -0
  91. package/locales/nn.json +1 -1
  92. package/locales/pl/LC_MESSAGES/volto.po +5516 -0
  93. package/locales/pl.json +1 -1
  94. package/locales/pt/LC_MESSAGES/volto.po +862 -670
  95. package/locales/pt.json +1 -1
  96. package/locales/pt_BR/LC_MESSAGES/volto.po +216 -25
  97. package/locales/pt_BR.json +1 -1
  98. package/locales/rm/LC_MESSAGES/volto.po +5516 -0
  99. package/locales/rm.json +1 -1
  100. package/locales/ro/LC_MESSAGES/volto.po +248 -57
  101. package/locales/ro.json +1 -1
  102. package/locales/ru/LC_MESSAGES/volto.po +211 -19
  103. package/locales/ru.json +1 -1
  104. package/locales/sk/LC_MESSAGES/volto.po +5516 -0
  105. package/locales/sk.json +1 -1
  106. package/locales/sl/LC_MESSAGES/volto.po +5516 -0
  107. package/locales/sl.json +1 -1
  108. package/locales/sm/LC_MESSAGES/volto.po +5516 -0
  109. package/locales/sm.json +1 -1
  110. package/locales/sq/LC_MESSAGES/volto.po +5516 -0
  111. package/locales/sq.json +1 -1
  112. package/locales/sr/LC_MESSAGES/volto.po +5516 -0
  113. package/locales/sr.json +1 -1
  114. package/locales/sr@cyrl/LC_MESSAGES/volto.po +5516 -0
  115. package/locales/sr@cyrl.json +1 -1
  116. package/locales/sr@latn/LC_MESSAGES/volto.po +5516 -0
  117. package/locales/sr@latn.json +1 -1
  118. package/locales/sv/LC_MESSAGES/volto.po +5516 -0
  119. package/locales/sv.json +1 -1
  120. package/locales/ta/LC_MESSAGES/volto.po +5516 -0
  121. package/locales/ta.json +1 -1
  122. package/locales/te/LC_MESSAGES/volto.po +5516 -0
  123. package/locales/te.json +1 -1
  124. package/locales/th/LC_MESSAGES/volto.po +5516 -0
  125. package/locales/th.json +1 -1
  126. package/locales/to/LC_MESSAGES/volto.po +5516 -0
  127. package/locales/to.json +1 -1
  128. package/locales/tr/LC_MESSAGES/volto.po +5516 -0
  129. package/locales/tr.json +1 -1
  130. package/locales/uk/LC_MESSAGES/volto.po +5516 -0
  131. package/locales/uk.json +1 -1
  132. package/locales/vi/LC_MESSAGES/volto.po +5516 -0
  133. package/locales/vi.json +1 -1
  134. package/locales/volto.pot +205 -14
  135. package/locales/zh_CN/LC_MESSAGES/volto.po +211 -19
  136. package/locales/zh_CN.json +1 -1
  137. package/locales/zh_Hant/LC_MESSAGES/volto.po +5516 -0
  138. package/locales/zh_Hant.json +1 -1
  139. package/locales/zh_Hant_HK/LC_MESSAGES/volto.po +5516 -0
  140. package/locales/zh_Hant_HK.json +1 -1
  141. package/package.json +71 -149
  142. package/razzle.config.js +16 -25
  143. package/src/actions/blockTypes/blockTypes.ts +24 -0
  144. package/src/actions/controlpanels/controlpanels.js +7 -12
  145. package/src/actions/controlpanels/controlpanels.test.js +2 -3
  146. package/src/components/manage/Actions/Actions.test.jsx +1 -5
  147. package/src/components/manage/Add/Add.jsx +15 -10
  148. package/src/components/manage/Add/Add.test.jsx +10 -3
  149. package/src/components/manage/Aliases/Aliases.test.jsx +5 -2
  150. package/src/components/manage/BlockChooser/BlockChooser.jsx +8 -10
  151. package/src/components/manage/Blocks/Block/BlocksForm.jsx +10 -7
  152. package/src/components/manage/Blocks/Block/BlocksForm.test.jsx +3 -14
  153. package/src/components/manage/Blocks/Block/Edit.jsx +19 -10
  154. package/src/components/manage/Blocks/Block/Order/Item.jsx +33 -14
  155. package/src/components/manage/Blocks/Block/Order/Item.test.jsx +90 -0
  156. package/src/components/manage/Blocks/Block/Order/Order.jsx +116 -67
  157. package/src/components/manage/Blocks/Block/Order/utilities.js +28 -11
  158. package/src/components/manage/Blocks/Block/Settings.test.jsx +1 -5
  159. package/src/components/manage/Blocks/Grid/View.jsx +14 -11
  160. package/src/components/manage/Blocks/Grid/context.js +3 -0
  161. package/src/components/manage/Blocks/HTML/Edit.test.jsx +1 -5
  162. package/src/components/manage/Blocks/Image/ImageSidebar.test.jsx +2 -5
  163. package/src/components/manage/Blocks/LeadImage/LeadImageSidebar.test.jsx +2 -5
  164. package/src/components/manage/Blocks/Listing/Edit.jsx +1 -0
  165. package/src/components/manage/Blocks/Listing/ListingBody.jsx +4 -0
  166. package/src/components/manage/Blocks/Maps/Body.jsx +37 -0
  167. package/src/components/manage/Blocks/Maps/Edit.jsx +6 -21
  168. package/src/components/manage/Blocks/Maps/MapsSidebar.test.jsx +1 -5
  169. package/src/components/manage/Blocks/Maps/View.jsx +16 -25
  170. package/src/components/manage/Blocks/Search/components/DateRangeFacet.test.jsx +1 -6
  171. package/src/components/manage/Blocks/Search/components/SelectFacet.jsx +22 -1
  172. package/src/components/manage/Blocks/Search/components/SelectFacet.test.jsx +1 -6
  173. package/src/components/manage/Blocks/Search/components/SortOn.jsx +8 -2
  174. package/src/components/manage/Blocks/Search/components/ToggleFacet.jsx +14 -0
  175. package/src/components/manage/Blocks/Teaser/DefaultBody.jsx +10 -2
  176. package/src/components/manage/Blocks/Teaser/View.jsx +0 -1
  177. package/src/components/manage/Blocks/Teaser/utils.js +13 -0
  178. package/src/components/manage/Blocks/Teaser/utils.test.js +34 -0
  179. package/src/components/manage/Blocks/Title/Edit.jsx +5 -0
  180. package/src/components/manage/Blocks/Video/Body.jsx +69 -43
  181. package/src/components/manage/Blocks/Video/Body.test.jsx +122 -5
  182. package/src/components/manage/Blocks/Video/Edit.jsx +20 -2
  183. package/src/components/manage/Blocks/Video/Edit.test.jsx +6 -0
  184. package/src/components/manage/Blocks/Video/VideoSidebar.test.jsx +1 -5
  185. package/src/components/manage/Blocks/Video/View.jsx +1 -0
  186. package/src/components/manage/Blocks/Video/View.test.jsx +29 -15
  187. package/src/components/manage/Blocks/Video/schema.js +14 -1
  188. package/src/components/manage/Contents/Contents.jsx +854 -747
  189. package/src/components/manage/Contents/Contents.test.jsx +9 -10
  190. package/src/components/manage/Contents/ContentsBreadcrumbs.jsx +4 -3
  191. package/src/components/manage/Contents/ContentsIndexHeader.jsx +47 -81
  192. package/src/components/manage/Contents/ContentsIndexHeader.test.jsx +10 -3
  193. package/src/components/manage/Contents/ContentsItem.jsx +226 -278
  194. package/src/components/manage/Contents/ContentsItem.test.jsx +10 -6
  195. package/src/components/manage/Contents/ContentsPropertiesModal.test.jsx +1 -5
  196. package/src/components/manage/Contents/ContentsRenameModal.test.jsx +1 -5
  197. package/src/components/manage/Contents/ContentsTagsModal.test.jsx +1 -5
  198. package/src/components/manage/Contents/ContentsWorkflowModal.test.jsx +1 -5
  199. package/src/components/manage/Contents/DropZoneContent.jsx +339 -0
  200. package/src/components/manage/Contents/__mocks__/index.tsx +2 -18
  201. package/src/components/manage/Controlpanels/AddonsControlpanel.jsx +7 -0
  202. package/src/components/manage/Controlpanels/AddonsControlpanel.test.jsx +7 -4
  203. package/src/components/manage/Controlpanels/Aliases.test.jsx +8 -9
  204. package/src/components/manage/Controlpanels/BlockType.tsx +165 -0
  205. package/src/components/manage/Controlpanels/BlockTypes.tsx +145 -0
  206. package/src/components/manage/Controlpanels/ContentType.jsx +131 -222
  207. package/src/components/manage/Controlpanels/ContentType.test.jsx +13 -14
  208. package/src/components/manage/Controlpanels/ContentTypeLayout.test.jsx +12 -9
  209. package/src/components/manage/Controlpanels/ContentTypeSchema.jsx +1 -1
  210. package/src/components/manage/Controlpanels/ContentTypes.jsx +9 -2
  211. package/src/components/manage/Controlpanels/ContentTypes.test.jsx +7 -4
  212. package/src/components/manage/Controlpanels/Controlpanel.jsx +122 -218
  213. package/src/components/manage/Controlpanels/Controlpanel.test.jsx +8 -33
  214. package/src/components/manage/Controlpanels/Controlpanels.jsx +28 -5
  215. package/src/components/manage/Controlpanels/Controlpanels.test.jsx +23 -8
  216. package/src/components/manage/Controlpanels/DatabaseInformation.jsx +9 -0
  217. package/src/components/manage/Controlpanels/Groups/GroupsControlpanel.test.jsx +7 -4
  218. package/src/components/manage/Controlpanels/ModerateComments.jsx +8 -0
  219. package/src/components/manage/Controlpanels/ModerateComments.test.jsx +7 -4
  220. package/src/components/manage/Controlpanels/Relations/Relations.jsx +1 -1
  221. package/src/components/manage/Controlpanels/Rules/AddRule.test.jsx +8 -9
  222. package/src/components/manage/Controlpanels/Rules/ConfigureRule.test.jsx +9 -6
  223. package/src/components/manage/Controlpanels/Rules/EditRule.test.jsx +8 -9
  224. package/src/components/manage/Controlpanels/Rules/Rules.test.jsx +7 -4
  225. package/src/components/manage/Controlpanels/UndoControlpanel.test.jsx +8 -9
  226. package/src/components/manage/Controlpanels/Users/UserGroupMembershipControlPanel.test.jsx +10 -4
  227. package/src/components/manage/Controlpanels/Users/UsersControlpanel.jsx +628 -631
  228. package/src/components/manage/Controlpanels/Users/UsersControlpanel.ssr.test.jsx +624 -0
  229. package/src/components/manage/Controlpanels/Users/UsersControlpanel.test.jsx +70 -10
  230. package/src/components/manage/Controlpanels/VersionOverview.jsx +19 -6
  231. package/src/components/manage/Delete/Delete.test.jsx +13 -8
  232. package/src/components/manage/Diff/Diff.jsx +201 -298
  233. package/src/components/manage/Diff/Diff.test.jsx +8 -10
  234. package/src/components/manage/Diff/DiffField.test.jsx +1 -6
  235. package/src/components/manage/Display/Display.test.jsx +2 -11
  236. package/src/components/manage/Edit/Edit.test.jsx +12 -11
  237. package/src/components/manage/Form/BlockDataForm.test.jsx +1 -5
  238. package/src/components/manage/Form/Field.jsx +1 -69
  239. package/src/components/manage/Form/Form.jsx +17 -4
  240. package/src/components/manage/Form/Form.test.jsx +130 -5
  241. package/src/components/manage/Form/InlineForm.test.jsx +1 -5
  242. package/src/components/manage/Form/ModalForm.jsx +175 -97
  243. package/src/components/manage/Form/ModalForm.test.jsx +27 -5
  244. package/src/components/manage/Form/__mocks__/index.tsx +9 -27
  245. package/src/components/manage/History/History.jsx +209 -300
  246. package/src/components/manage/History/History.test.jsx +20 -9
  247. package/src/components/manage/LinksToItem/LinksToItem.test.jsx +7 -4
  248. package/src/components/manage/Multilingual/CompareLanguages.jsx +6 -6
  249. package/src/components/manage/Multilingual/CreateTranslation.jsx +16 -13
  250. package/src/components/manage/Multilingual/ManageTranslations.jsx +5 -5
  251. package/src/components/manage/Multilingual/ManageTranslations.test.jsx +15 -12
  252. package/src/components/manage/Multilingual/TranslationObject.jsx +11 -8
  253. package/src/components/manage/Preferences/ChangePassword.test.jsx +8 -9
  254. package/src/components/manage/Preferences/PersonalPreferences.jsx +8 -5
  255. package/src/components/manage/Preferences/PersonalPreferences.test.jsx +10 -23
  256. package/src/components/manage/Rules/Rules.test.jsx +5 -2
  257. package/src/components/manage/Sharing/Sharing.jsx +21 -15
  258. package/src/components/manage/Sharing/Sharing.test.jsx +9 -6
  259. package/src/components/manage/Sidebar/ObjectBrowser.jsx +10 -0
  260. package/src/components/manage/Sidebar/ObjectBrowserBody.jsx +25 -5
  261. package/src/components/manage/Sidebar/ObjectBrowserBody.test.jsx +52 -0
  262. package/src/components/manage/Sidebar/Sidebar.jsx +2 -0
  263. package/src/components/manage/Sidebar/Sidebar.test.jsx +4 -1
  264. package/src/components/manage/Sidebar/SidebarPortal.test.tsx +42 -0
  265. package/src/components/manage/Sidebar/SidebarPortal.tsx +48 -0
  266. package/src/components/manage/TemplateChooser/TemplateChooser.test.jsx +1 -0
  267. package/src/components/manage/Toast/Toast.jsx +32 -0
  268. package/src/components/manage/Toast/Toast.test.jsx +9 -5
  269. package/src/components/manage/Toolbar/PersonalTools.test.jsx +15 -0
  270. package/src/components/manage/Toolbar/Toolbar.jsx +109 -12
  271. package/src/components/manage/Toolbar/Toolbar.test.jsx +15 -10
  272. package/src/components/manage/Toolbar/Types.crash.test.jsx +48 -0
  273. package/src/components/manage/Toolbar/Types.jsx +6 -4
  274. package/src/components/manage/UniversalLink/UniversalLink.test.jsx +16 -0
  275. package/src/components/manage/UniversalLink/UniversalLink.tsx +1 -0
  276. package/src/components/manage/Widgets/AlignWidget.stories.jsx +9 -0
  277. package/src/components/manage/Widgets/AlignWidget.test.tsx +95 -0
  278. package/src/components/manage/Widgets/{AlignWidget.jsx → AlignWidget.tsx} +23 -7
  279. package/src/components/manage/Widgets/ArrayWidget.jsx +111 -88
  280. package/src/components/manage/Widgets/ArrayWidget.test.jsx +1 -12
  281. package/src/components/manage/Widgets/BlockAlignment.stories.tsx +104 -0
  282. package/src/components/manage/Widgets/BlockAlignment.test.tsx +104 -0
  283. package/src/components/manage/Widgets/BlockAlignment.tsx +88 -0
  284. package/src/components/manage/Widgets/BlockWidth.stories.tsx +69 -0
  285. package/src/components/manage/Widgets/BlockWidth.test.tsx +62 -0
  286. package/src/components/manage/Widgets/BlockWidth.tsx +101 -0
  287. package/src/components/manage/Widgets/ButtonsWidget.stories.jsx +61 -0
  288. package/src/components/manage/Widgets/ButtonsWidget.test.tsx +138 -0
  289. package/src/components/manage/Widgets/ButtonsWidget.tsx +195 -0
  290. package/src/components/manage/Widgets/CheckboxGroupWidget.test.jsx +1 -6
  291. package/src/components/manage/Widgets/DatetimeWidget.jsx +98 -54
  292. package/src/components/manage/Widgets/DatetimeWidget.test.jsx +56 -6
  293. package/src/components/manage/Widgets/FileWidget.jsx +7 -0
  294. package/src/components/manage/Widgets/FormFieldWrapper.jsx +143 -163
  295. package/src/components/manage/Widgets/ImageWidget.jsx +18 -5
  296. package/src/components/manage/Widgets/ObjectBrowserWidget.jsx +6 -0
  297. package/src/components/manage/Widgets/ObjectListWidget.test.jsx +2 -11
  298. package/src/components/manage/Widgets/ObjectWidget.test.jsx +1 -5
  299. package/src/components/manage/Widgets/QueryWidget.jsx +137 -9
  300. package/src/components/manage/Widgets/QuerystringWidget.test.jsx +3 -1
  301. package/src/components/manage/Widgets/RadioGroupWidget.test.jsx +1 -6
  302. package/src/components/manage/Widgets/RecurrenceWidget/RecurrenceWidget.test.jsx +1 -6
  303. package/src/components/manage/Widgets/RecurrenceWidget/WeekdayOfTheMonthIndexField.jsx +56 -50
  304. package/src/components/manage/Widgets/RegistryImageWidget.jsx +1 -1
  305. package/src/components/manage/Widgets/RegistryImageWidget.test.jsx +1 -0
  306. package/src/components/manage/Widgets/SchemaWidget.test.jsx +1 -6
  307. package/src/components/manage/Widgets/SchemaWidgetFieldset.test.jsx +1 -6
  308. package/src/components/manage/Widgets/SelectAutoComplete.test.jsx +1 -6
  309. package/src/components/manage/Widgets/SelectStyling.jsx +52 -20
  310. package/src/components/manage/Widgets/SelectWidget.test.jsx +1 -6
  311. package/src/components/manage/Widgets/Size.stories.tsx +69 -0
  312. package/src/components/manage/Widgets/Size.test.tsx +59 -0
  313. package/src/components/manage/Widgets/Size.tsx +78 -0
  314. package/src/components/manage/Widgets/TextWidget.jsx +4 -0
  315. package/src/components/manage/Widgets/TimeWidget.test.jsx +1 -6
  316. package/src/components/manage/Widgets/TokenWidget.jsx +142 -186
  317. package/src/components/manage/Widgets/TokenWidget.test.jsx +1 -6
  318. package/src/components/manage/Widgets/UrlWidget.jsx +47 -18
  319. package/src/components/manage/Widgets/VocabularyTermsWidget.test.jsx +2 -11
  320. package/src/components/manage/Widgets/__mocks__/index.tsx +33 -51
  321. package/src/components/manage/Widgets/index.tsx +21 -0
  322. package/src/components/manage/Workflow/Workflow.test.jsx +2 -11
  323. package/src/components/theme/AlternateHrefLangs/AlternateHrefLangs.jsx +1 -0
  324. package/src/components/theme/AlternateHrefLangs/AlternateHrefLangs.test.jsx +30 -0
  325. package/src/components/theme/App/App.jsx +5 -1
  326. package/src/components/theme/App/App.test.jsx +13 -10
  327. package/src/components/theme/Comments/CommentEditModal.test.jsx +1 -5
  328. package/src/components/theme/Comments/Comments.test.jsx +2 -11
  329. package/src/components/theme/ConnectionRefused/ConnectionRefused.jsx +3 -2
  330. package/src/components/theme/ContactForm/ContactForm.test.jsx +14 -13
  331. package/src/components/theme/Image/Image.jsx +14 -5
  332. package/src/components/theme/Image/Image.test.jsx +247 -146
  333. package/src/components/theme/InjectPloneComponentsCSS/InjectPloneComponentsCSS.tsx +7 -0
  334. package/src/components/theme/LanguageSelector/LanguageSelector.tsx +3 -3
  335. package/src/components/theme/MultilingualRedirector/MultilingualRedirector.jsx +42 -12
  336. package/src/components/theme/MultilingualRedirector/MultilingualRedirector.test.jsx +6 -3
  337. package/src/components/theme/PasswordReset/PasswordReset.jsx +108 -191
  338. package/src/components/theme/PasswordReset/RequestPasswordReset.test.jsx +1 -5
  339. package/src/components/theme/Register/Register.test.jsx +1 -5
  340. package/src/components/theme/Search/Search.jsx +230 -327
  341. package/src/components/theme/Search/Search.test.jsx +14 -14
  342. package/src/components/theme/Sitemap/Sitemap.jsx +22 -30
  343. package/src/components/theme/Sitemap/Sitemap.stories.jsx +82 -0
  344. package/src/components/theme/Sitemap/Sitemap.test.jsx +18 -0
  345. package/src/components/theme/SlotRenderer/SlotRenderer.tsx +12 -6
  346. package/src/components/theme/Unauthorized/Unauthorized.jsx +27 -24
  347. package/src/components/theme/Unauthorized/Unauthorized.test.jsx +31 -2
  348. package/src/components/theme/VideoEmbed/VideoEmbed.jsx +100 -0
  349. package/src/components/theme/View/EventDatesInfo.test.jsx +1 -6
  350. package/src/components/theme/View/EventView.stories.jsx +89 -0
  351. package/src/components/theme/View/EventView.test.jsx +1 -6
  352. package/src/components/theme/View/FileView.stories.jsx +50 -0
  353. package/src/components/theme/View/ImageView.jsx +2 -1
  354. package/src/components/theme/View/ImageView.test.jsx +3 -0
  355. package/src/components/theme/View/LinkView.stories.jsx +57 -0
  356. package/src/components/theme/View/ListingView.stories.jsx +70 -0
  357. package/src/components/theme/View/NewsItemView.stories.jsx +58 -0
  358. package/src/components/theme/View/RenderBlocks.jsx +8 -10
  359. package/src/components/theme/View/RenderBlocks.stories.jsx +112 -0
  360. package/src/components/theme/View/RenderBlocks.test.jsx +14 -4
  361. package/src/components/theme/View/SummaryView.stories.jsx +71 -0
  362. package/src/components/theme/View/TabularView.stories.jsx +66 -0
  363. package/src/components/theme/View/View.jsx +8 -1
  364. package/src/components/theme/View/View.test.jsx +37 -24
  365. package/src/components/theme/Widgets/DateWidget.jsx +4 -5
  366. package/src/components/theme/Widgets/DatetimeWidget.jsx +4 -5
  367. package/src/components/theme/Widgets/ImageWidget.test.jsx +31 -11
  368. package/src/components/theme/Widgets/RichTextWidget.jsx +1 -1
  369. package/src/config/Blocks.jsx +3 -0
  370. package/src/config/ControlPanels.js +2 -0
  371. package/src/config/Loadables.jsx +1 -5
  372. package/src/config/Widgets.jsx +7 -0
  373. package/src/config/index.js +10 -1
  374. package/src/config/slots.js +19 -0
  375. package/src/config/validation.ts +8 -0
  376. package/src/constants/ActionTypes.js +1 -0
  377. package/src/express-middleware/devproxy.js +3 -1
  378. package/src/express-middleware/files.js +1 -0
  379. package/src/express-middleware/files.test.js +59 -0
  380. package/src/express-middleware/images.js +1 -0
  381. package/src/express-middleware/images.test.js +50 -0
  382. package/src/helpers/Api/Api.js +2 -2
  383. package/src/helpers/AuthToken/AuthToken.js +1 -6
  384. package/src/helpers/Blocks/Blocks.js +113 -28
  385. package/src/helpers/Blocks/Blocks.test.js +100 -0
  386. package/src/helpers/Content/Content.js +23 -0
  387. package/src/helpers/Content/Content.test.js +39 -0
  388. package/src/helpers/Extensions/withBlockSchemaEnhancer.jsx +4 -1
  389. package/src/helpers/FormValidation/FormValidation.test.js +31 -0
  390. package/src/helpers/FormValidation/validators.ts +52 -6
  391. package/src/helpers/I18n/I18n.test.ts +44 -0
  392. package/src/helpers/I18n/I18n.ts +31 -0
  393. package/src/helpers/Loadable/__mocks__/Loadable.jsx +7 -22
  394. package/src/helpers/MessageLabels/MessageLabels.js +5 -0
  395. package/src/helpers/Robots/Robots.js +1 -1
  396. package/src/helpers/Robots/Robots.test.js +34 -0
  397. package/src/helpers/Url/Url.js +1 -0
  398. package/src/helpers/Utils/Date.js +26 -1
  399. package/src/helpers/Utils/Date.test.js +237 -0
  400. package/src/helpers/Utils/Utils.jsx +17 -0
  401. package/src/helpers/Utils/Utils.test.jsx +39 -0
  402. package/src/helpers/Utils/withSaveAsDraft.jsx +33 -9
  403. package/src/helpers/index.js +1 -0
  404. package/src/hooks/user/useUser.js +1 -1
  405. package/src/internalChecks.test.ts +11 -0
  406. package/src/middleware/api.js +14 -5
  407. package/src/reducers/blockTypes/blockTypes.js +38 -0
  408. package/src/reducers/content/content.js +3 -18
  409. package/src/reducers/diff/diff.js +5 -1
  410. package/src/reducers/diff/diff.test.js +60 -4
  411. package/src/reducers/index.js +2 -0
  412. package/src/reducers/querystring/querystring.js +8 -1
  413. package/src/reducers/users/users.js +1 -1
  414. package/src/routes.js +10 -0
  415. package/src/server.jsx +14 -6
  416. package/src/start-client.jsx +21 -3
  417. package/test-addons-loader.js +3 -0
  418. package/test-setup-globals.js +56 -2
  419. package/theme/themes/default/elements/segment.variables +9 -16
  420. package/theme/themes/default/globals/site.variables +3 -3
  421. package/theme/themes/pastanaga/collections/form.overrides +22 -1
  422. package/theme/themes/pastanaga/elements/button.overrides +30 -3
  423. package/theme/themes/pastanaga/elements/segment.variables +1 -4
  424. package/theme/themes/pastanaga/extras/block-types.less +17 -0
  425. package/theme/themes/pastanaga/extras/contents.less +63 -4
  426. package/theme/themes/pastanaga/extras/main.less +16 -4
  427. package/theme/themes/pastanaga/extras/toolbar.less +10 -5
  428. package/theme/themes/pastanaga/extras/videoembed.less +22 -0
  429. package/theme/themes/pastanaga/extras/widgets.less +79 -0
  430. package/theme/themes/pastanaga/globals/site.variables +0 -3
  431. package/tsconfig.declarations.json +1 -1
  432. package/tsconfig.json +1 -1
  433. package/types/actions/blockTypes/blockTypes.d.ts +7 -0
  434. package/types/components/index.d.ts +1 -1
  435. package/types/components/manage/Blocks/Block/Order/Item.test.d.ts +1 -0
  436. package/types/components/manage/Blocks/Block/Order/utilities.d.ts +2 -1
  437. package/types/components/manage/Blocks/Grid/context.d.ts +1 -0
  438. package/types/components/manage/Blocks/Maps/Body.d.ts +9 -0
  439. package/types/components/manage/Blocks/Maps/View.d.ts +1 -1
  440. package/types/components/manage/Blocks/Teaser/utils.d.ts +5 -0
  441. package/types/components/manage/Blocks/Video/Body.d.ts +4 -2
  442. package/types/components/manage/Blocks/Video/schema.d.ts +4 -0
  443. package/types/components/manage/Contents/Contents.d.ts +1 -1
  444. package/types/components/manage/Contents/ContentsIndexHeader.d.ts +6 -11
  445. package/types/components/manage/Contents/ContentsItem.d.ts +3 -10
  446. package/types/components/manage/Contents/DropZoneContent.d.ts +2 -0
  447. package/types/components/manage/Contents/__mocks__/index.d.ts +2 -2
  448. package/types/components/manage/Controlpanels/BlockType.d.ts +7 -0
  449. package/types/components/manage/Controlpanels/BlockTypes.d.ts +7 -0
  450. package/types/components/manage/Controlpanels/ContentType.d.ts +2 -2
  451. package/types/components/manage/Controlpanels/Controlpanel.d.ts +2 -5
  452. package/types/components/manage/Controlpanels/Relations/RelationsMatrix.d.ts +1 -1
  453. package/types/components/manage/Controlpanels/Users/UsersControlpanel.ssr.test.d.ts +1 -0
  454. package/types/components/manage/Controlpanels/VersionOverview.d.ts +2 -1
  455. package/types/components/manage/Controlpanels/index.d.ts +3 -2
  456. package/types/components/manage/Diff/Diff.d.ts +7 -2
  457. package/types/components/manage/Form/__mocks__/index.d.ts +8 -8
  458. package/types/components/manage/Multilingual/ManageTranslations.d.ts +1 -1
  459. package/types/components/manage/Sidebar/ObjectBrowser.d.ts +1 -1
  460. package/types/components/manage/Sidebar/ObjectBrowserBody.test.d.ts +1 -0
  461. package/types/components/manage/Sidebar/SidebarPortal.d.ts +7 -15
  462. package/types/components/manage/Toolbar/Types.crash.test.d.ts +1 -0
  463. package/types/components/manage/Widgets/AlignWidget.d.ts +8 -10
  464. package/types/components/manage/Widgets/AlignWidget.stories.d.ts +1 -0
  465. package/types/components/manage/Widgets/BlockAlignment.d.ts +7 -0
  466. package/types/components/manage/Widgets/BlockAlignment.stories.d.ts +8 -0
  467. package/types/components/manage/Widgets/BlockWidth.d.ts +7 -0
  468. package/types/components/manage/Widgets/BlockWidth.stories.d.ts +6 -0
  469. package/types/components/manage/Widgets/ButtonsWidget.d.ts +48 -1
  470. package/types/components/manage/Widgets/ButtonsWidget.stories.d.ts +3 -0
  471. package/types/components/manage/Widgets/FormFieldWrapper.d.ts +28 -5
  472. package/types/components/manage/Widgets/ImageWidget.d.ts +1 -1
  473. package/types/components/manage/Widgets/InternalUrlWidget.d.ts +1 -1
  474. package/types/components/manage/Widgets/ObjectBrowserWidget.d.ts +2 -0
  475. package/types/components/manage/Widgets/QueryWidget.d.ts +5 -2
  476. package/types/components/manage/Widgets/RecurrenceWidget/WeekdayOfTheMonthIndexField.d.ts +22 -5
  477. package/types/components/manage/Widgets/SelectStyling.d.ts +1 -0
  478. package/types/components/manage/Widgets/Size.d.ts +7 -0
  479. package/types/components/manage/Widgets/Size.stories.d.ts +6 -0
  480. package/types/components/manage/Widgets/UrlWidget.d.ts +1 -1
  481. package/types/components/manage/Widgets/__mocks__/index.d.ts +33 -33
  482. package/types/components/manage/Widgets/index.d.ts +11 -6
  483. package/types/components/theme/ConnectionRefused/ConnectionRefused.d.ts +2 -2
  484. package/types/components/theme/InjectPloneComponentsCSS/InjectPloneComponentsCSS.d.ts +3 -0
  485. package/types/components/theme/PasswordReset/PasswordReset.d.ts +6 -2
  486. package/types/components/theme/Search/Search.d.ts +1 -1
  487. package/types/components/theme/Sitemap/Sitemap.stories.d.ts +13 -0
  488. package/types/components/theme/SlotRenderer/SlotRenderer.d.ts +4 -5
  489. package/types/components/theme/Unauthorized/Unauthorized.d.ts +2 -2
  490. package/types/components/theme/VideoEmbed/VideoEmbed.d.ts +2 -0
  491. package/types/components/theme/View/EventView.stories.d.ts +19 -0
  492. package/types/components/theme/View/FileView.stories.d.ts +18 -0
  493. package/types/components/theme/View/LinkView.stories.d.ts +18 -0
  494. package/types/components/theme/View/ListingView.stories.d.ts +24 -0
  495. package/types/components/theme/View/NewsItemView.stories.d.ts +23 -0
  496. package/types/components/theme/View/RenderBlocks.stories.d.ts +23 -0
  497. package/types/components/theme/View/SummaryView.stories.d.ts +23 -0
  498. package/types/components/theme/View/TabularView.stories.d.ts +23 -0
  499. package/types/config/ControlPanels.d.ts +1 -0
  500. package/types/config/Views.d.ts +1 -1
  501. package/types/config/Widgets.d.ts +6 -0
  502. package/types/config/slots.d.ts +7 -0
  503. package/types/constants/ActionTypes.d.ts +1 -0
  504. package/types/helpers/Blocks/Blocks.d.ts +4 -0
  505. package/types/helpers/Content/Content.d.ts +7 -0
  506. package/types/helpers/Extensions/withBlockSchemaEnhancer.d.ts +4 -5
  507. package/types/helpers/FormValidation/validators.d.ts +18 -1
  508. package/types/helpers/I18n/I18n.d.ts +20 -0
  509. package/types/helpers/Loadable/__mocks__/Loadable.d.ts +2 -2
  510. package/types/helpers/MessageLabels/MessageLabels.d.ts +100 -94
  511. package/types/helpers/Utils/Utils.d.ts +1 -0
  512. package/types/helpers/index.d.ts +1 -0
  513. package/types/reducers/blockTypes/blockTypes.d.ts +16 -0
  514. package/types/reducers/index.d.ts +2 -0
  515. package/types/routes.d.ts +7 -5
  516. package/vitest.config.mjs +84 -42
  517. package/webpack-plugins/webpack-less-plugin.js +1 -1
  518. package/webpack-plugins/webpack-scss-plugin.js +172 -0
  519. package/jest-addons-loader.js +0 -3
  520. package/jest-extender-plugin.js +0 -39
  521. package/jest-setup-afterenv.js +0 -2
  522. package/jest-svgsystem-transform.js +0 -10
  523. package/patches/patchit.sh +0 -2
  524. package/patches/razzle-jest.patch +0 -10
  525. package/src/components/manage/Contents/__mocks__/index.vitest.tsx +0 -5
  526. package/src/components/manage/Form/__mocks__/index.vitest.tsx +0 -73
  527. package/src/components/manage/Sidebar/SidebarPortal.jsx +0 -47
  528. package/src/components/manage/Sidebar/SidebarPortal.test.jsx +0 -26
  529. package/src/components/manage/Widgets/AlignWidget.test.jsx +0 -59
  530. package/src/components/manage/Widgets/ButtonsWidget.jsx +0 -41
  531. package/src/components/manage/Widgets/ButtonsWidget.test.jsx +0 -70
  532. package/src/components/manage/Widgets/__mocks__/index.vitest.tsx +0 -41
  533. package/src/helpers/Loadable/__mocks__/Loadable.vitest.jsx +0 -39
  534. package/test-setup-globals-vitest.js +0 -46
  535. package/theme/themes/pastanaga/extras/utils.less +0 -63
@@ -0,0 +1,22 @@
1
+ @videoIconSize: 100px;
2
+
3
+ .video-embed {
4
+ position: relative;
5
+
6
+ img {
7
+ min-width: 100%;
8
+ min-height: 100%;
9
+ }
10
+
11
+ button.video-play-button {
12
+ position: absolute;
13
+ top: calc(50% - @videoIconSize / 2);
14
+ left: calc(50% - @videoIconSize / 2);
15
+ width: @videoIconSize;
16
+ height: @videoIconSize;
17
+ border: 4px solid @white;
18
+ border-radius: 50px;
19
+ background: transparent;
20
+ cursor: pointer;
21
+ }
22
+ }
@@ -292,3 +292,82 @@ body.babel-view .field.language-independent-field {
292
292
  margin-left: 8px;
293
293
  }
294
294
  }
295
+
296
+ // ButtonsWidget and friends 2025
297
+ :root {
298
+ --border-color-hover: var(--quanta-sapphire);
299
+ --border-color-pressed: var(--quanta-sapphire);
300
+ --border-color-disabled: #d4d4d5;
301
+ --text-color-disabled: #a8a8a8;
302
+ }
303
+
304
+ .field.widget {
305
+ .buttons-widget {
306
+ display: flex;
307
+ align-items: center;
308
+ gap: 4px;
309
+
310
+ .buttons-widget-option {
311
+ padding: 5px;
312
+ border-radius: 3px;
313
+ aspect-ratio: 1/1;
314
+ font-size: 1em;
315
+ line-height: initial;
316
+
317
+ &[data-hovered='true'] {
318
+ box-shadow: inset 0 0 0 1px var(--border-color-hover, #2996da);
319
+ }
320
+
321
+ &[data-selected='true'] {
322
+ box-shadow: inset 0 0 0 1px var(--border-color-pressed, #2996da);
323
+ }
324
+
325
+ svg.icon {
326
+ margin: 0 !important;
327
+ opacity: 0.9;
328
+ vertical-align: top;
329
+ }
330
+ }
331
+ }
332
+ }
333
+
334
+ .buttons-widget-option {
335
+ &[data-disabled='true'] {
336
+ border-color: var(--border-color-disabled);
337
+ color: var(--text-color-disabled);
338
+ }
339
+ }
340
+
341
+ .ui.form .query-widget {
342
+ .location-object-browser {
343
+ display: flex;
344
+ flex-flow: column;
345
+ flex-grow: 1;
346
+
347
+ .object-browser-field {
348
+ min-height: 60px;
349
+ flex: 1 0 auto;
350
+ padding-right: 1em;
351
+ padding-left: 1em;
352
+ margin-bottom: 0px;
353
+ }
354
+
355
+ .object-browser-field + .field {
356
+ margin-bottom: 0px;
357
+ }
358
+
359
+ .objectbrowser-field {
360
+ height: 100%;
361
+ }
362
+
363
+ .reference-widget-depth {
364
+ .field {
365
+ margin-bottom: 0px;
366
+ }
367
+ }
368
+ }
369
+
370
+ .location-object-browser + button.ui.button {
371
+ padding-top: 0;
372
+ }
373
+ }
@@ -48,9 +48,6 @@
48
48
  /* This adjusts the default form input across all elements */
49
49
  @inputHorizontalPadding : 0;
50
50
 
51
- /* Input Text Color */
52
- @inputPlaceholderColor: #B8C6C8;
53
-
54
51
 
55
52
  /*-------------------
56
53
  Focused Input
@@ -10,7 +10,7 @@
10
10
  "jsx": "react-jsx",
11
11
  "preserveSymlinks": true,
12
12
  "downlevelIteration": true,
13
- "types": ["vitest/globals", "jest"],
13
+ "types": ["vitest/globals"],
14
14
  "paths": {
15
15
  "@plone/volto/*": ["./src/*"],
16
16
  "react": ["./node_modules/@types/react"],
package/tsconfig.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "compilerOptions": {
3
3
  "target": "es2022",
4
4
  "lib": ["es2022", "dom", "dom.iterable"],
5
- "types": ["vitest/globals", "jest"],
5
+ "types": ["vitest/globals"],
6
6
  "module": "preserve",
7
7
  "allowJs": true,
8
8
  "skipLibCheck": true,
@@ -0,0 +1,7 @@
1
+ export declare function getBlockTypes(id?: string | null, path?: string | null): {
2
+ type: string;
3
+ request: {
4
+ op: string;
5
+ path: string;
6
+ };
7
+ };
@@ -54,7 +54,7 @@ export { default as Actions } from "@plone/volto/components/manage/Actions/Actio
54
54
  export { default as Add } from "@plone/volto/components/manage/Add/Add";
55
55
  export { default as Circle } from "@plone/volto/components/manage/Contents/circle";
56
56
  export { default as Delete } from "@plone/volto/components/manage/Delete/Delete";
57
- export const Diff: import("@loadable/component").LoadableClassComponent<any>;
57
+ export const Diff: import("@loadable/component").LoadableComponent<any>;
58
58
  export const DiffField: import("@loadable/component").LoadableClassComponent<any>;
59
59
  export { default as Display } from "@plone/volto/components/manage/Display/Display";
60
60
  export { default as Edit } from "@plone/volto/components/manage/Edit/Edit";
@@ -1,8 +1,9 @@
1
1
  export function getProjection(items: any, activeId: any, overId: any, dragOffset: any, indentationWidth: any, arrayMove: any): {
2
+ parentId: any;
3
+ parentType: any;
2
4
  depth: any;
3
5
  maxDepth: any;
4
6
  minDepth: any;
5
- parentId: any;
6
7
  };
7
8
  export function flattenTree(items: any): any;
8
9
  export function findItem(items: any, itemId: any): any;
@@ -0,0 +1 @@
1
+ export const GridContext: import("react").Context<number>;
@@ -0,0 +1,9 @@
1
+ export default Body;
2
+ declare function Body({ data }: {
3
+ data: any;
4
+ }): import("react/jsx-runtime").JSX.Element;
5
+ declare namespace Body {
6
+ namespace propTypes {
7
+ let data: any;
8
+ }
9
+ }
@@ -1,2 +1,2 @@
1
- declare const _default: any;
1
+ declare const _default: (props: any) => import("react/jsx-runtime").JSX.Element;
2
2
  export default _default;
@@ -0,0 +1,5 @@
1
+ export function getTeaserBlockSizes({ data, inGrid, columns, }?: {
2
+ data?: {};
3
+ inGrid?: boolean;
4
+ columns?: number;
5
+ }): string;
@@ -8,8 +8,10 @@ declare namespace Body {
8
8
  let data: any;
9
9
  }
10
10
  }
11
- export function getVideoIDAndPlaceholder(url: any): {
11
+ export function getVideoIDAndPlaceholder(url: any, peertubeInstances: any): {
12
12
  videoID: any;
13
- listID: any;
13
+ videoUrl: string;
14
14
  thumbnailURL: string;
15
+ videoSource: string;
16
+ hasMatch: boolean;
15
17
  };
@@ -15,6 +15,10 @@ export function VideoBlockSchema(props: any): {
15
15
  title: any;
16
16
  widget: string;
17
17
  };
18
+ title: {
19
+ title: any;
20
+ description: any;
21
+ };
18
22
  align: {
19
23
  title: any;
20
24
  widget: string;
@@ -1,3 +1,3 @@
1
- export const __test__: any;
1
+ export const ContentsComponent: any;
2
2
  declare const _default: any;
3
3
  export default _default;
@@ -1,20 +1,15 @@
1
- export function ContentsIndexHeaderComponent({ intl, width, label, connectDragSource, connectDropTarget, isDragging, }: {
2
- intl: any;
1
+ export function ContentsIndexHeaderComponent({ id, width, label, dndKitSortable, dndKitUtilities, }: {
2
+ id: any;
3
3
  width: any;
4
4
  label: any;
5
- connectDragSource: any;
6
- connectDropTarget: any;
7
- isDragging: any;
8
- }): string;
5
+ dndKitSortable: any;
6
+ dndKitUtilities: any;
7
+ }): import("react/jsx-runtime").JSX.Element;
9
8
  export namespace ContentsIndexHeaderComponent {
10
9
  namespace propTypes {
10
+ let id: any;
11
11
  let width: any;
12
12
  let label: any;
13
- let connectDragSource: any;
14
- let connectDropTarget: any;
15
- let isDragging: any;
16
- let order: any;
17
- let onOrderIndex: any;
18
13
  }
19
14
  }
20
15
  declare const _default: any;
@@ -1,4 +1,4 @@
1
- export function ContentsItemComponent({ item, selected, onClick, indexes, onCut, onCopy, onDelete, onMoveToTop, onMoveToBottom, connectDragPreview, connectDragSource, connectDropTarget, isDragging, order, }: {
1
+ export function ContentsItemComponent({ item, selected, onClick, indexes, onCut, onCopy, onDelete, onMoveToTop, onMoveToBottom, order, dndKitSortable, dndKitUtilities, }: {
2
2
  item: any;
3
3
  selected: any;
4
4
  onClick: any;
@@ -8,11 +8,9 @@ export function ContentsItemComponent({ item, selected, onClick, indexes, onCut,
8
8
  onDelete: any;
9
9
  onMoveToTop: any;
10
10
  onMoveToBottom: any;
11
- connectDragPreview: any;
12
- connectDragSource: any;
13
- connectDropTarget: any;
14
- isDragging: any;
15
11
  order: any;
12
+ dndKitSortable: any;
13
+ dndKitUtilities: any;
16
14
  }): string;
17
15
  export namespace ContentsItemComponent {
18
16
  namespace propTypes {
@@ -25,12 +23,7 @@ export namespace ContentsItemComponent {
25
23
  let onDelete: any;
26
24
  let onMoveToTop: any;
27
25
  let onMoveToBottom: any;
28
- let connectDragPreview: any;
29
- let connectDragSource: any;
30
- let connectDropTarget: any;
31
- let isDragging: any;
32
26
  let order: any;
33
- let onOrderItem: any;
34
27
  }
35
28
  }
36
29
  declare const _default: any;
@@ -0,0 +1,2 @@
1
+ export default DropZoneContent;
2
+ declare function DropZoneContent(props: any): import("react/jsx-runtime").JSX.Element;
@@ -1,2 +1,2 @@
1
- export declare const Contents: jest.Mock<import("react/jsx-runtime").JSX.Element, [], any>;
2
- export declare const ContentsRenameModal: jest.Mock<import("react/jsx-runtime").JSX.Element, [], any>;
1
+ export declare const Contents: any;
2
+ export declare const ContentsRenameModal: any;
@@ -0,0 +1,7 @@
1
+ import type { Location } from 'history';
2
+ type RouteProps = {
3
+ history: History;
4
+ location: Location;
5
+ };
6
+ declare const BlockTypeControlpanel: (props: RouteProps) => import("react/jsx-runtime").JSX.Element;
7
+ export default BlockTypeControlpanel;
@@ -0,0 +1,7 @@
1
+ import type { Location } from 'history';
2
+ type RouteProps = {
3
+ history: History;
4
+ location: Location;
5
+ };
6
+ declare const BlockTypesControlpanel: (props: RouteProps) => import("react/jsx-runtime").JSX.Element;
7
+ export default BlockTypesControlpanel;
@@ -1,2 +1,2 @@
1
- declare const _default: any;
2
- export default _default;
1
+ export default ContentType;
2
+ declare function ContentType(): import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,2 @@
1
- declare const _default: React.ForwardRefExoticComponent<Omit<import("react-intl").WithIntlProps<import("react-intl").WrappedComponentProps<string>>, "ref"> & React.RefAttributes<React.ComponentType<import("react-intl").WrappedComponentProps<string>>>> & {
2
- WrappedComponent: React.ComponentType<import("react-intl").WrappedComponentProps<string>>;
3
- };
4
- export default _default;
5
- import React from 'react';
1
+ export default Controlpanel;
2
+ declare function Controlpanel(): import("react/jsx-runtime").JSX.Element;
@@ -3,7 +3,7 @@ declare const _default: {
3
3
  state: {
4
4
  isObjectBrowserOpen: boolean;
5
5
  };
6
- openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, }?: {
6
+ openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, initialPath, onlyFolderishSelectable, }?: {
7
7
  mode: string;
8
8
  dataName: string;
9
9
  onSelectItem: string;
@@ -1,5 +1,6 @@
1
1
  export default VersionOverview;
2
- declare function VersionOverview({ cmf_version, debug_mode, pil_version, plone_version, plone_restapi_version, python_version, zope_version, }: {
2
+ declare function VersionOverview({ cmf_version, debug_mode, pil_version, plone_version, plone_restapi_version, python_version, zope_version, ...rest }: {
3
+ [x: string]: any;
3
4
  cmf_version: any;
4
5
  debug_mode: any;
5
6
  pil_version: any;
@@ -1,5 +1,5 @@
1
1
  export declare const Controlpanels: any;
2
- export declare const Controlpanel: import("@loadable/component").LoadableComponent<Omit<import("react-intl").WithIntlProps<import("react-intl").WrappedComponentProps<string>>, "ref"> & import("react").RefAttributes<import("react").ComponentType<import("react-intl").WrappedComponentProps<string>>>>;
2
+ export declare const Controlpanel: import("@loadable/component").LoadableComponent<unknown>;
3
3
  export declare const RulesControlpanel: import("@loadable/component").LoadableClassComponent<any>;
4
4
  export declare const AddRuleControlpanel: import("@loadable/component").LoadableClassComponent<any>;
5
5
  export declare const EditRuleControlpanel: import("@loadable/component").LoadableClassComponent<any>;
@@ -13,11 +13,12 @@ export declare const RelationsControlpanel: import("@loadable/component").Loadab
13
13
  export declare const AliasesControlpanel: import("@loadable/component").LoadableComponent<any>;
14
14
  export declare const UndoControlpanel: import("@loadable/component").LoadableClassComponent<any>;
15
15
  export declare const AddonsControlpanel: import("@loadable/component").LoadableComponent<any>;
16
- export declare const ContentType: import("@loadable/component").LoadableClassComponent<any>;
16
+ export declare const ContentType: import("@loadable/component").LoadableComponent<unknown>;
17
17
  export declare const ContentTypeLayout: import("@loadable/component").LoadableClassComponent<any>;
18
18
  export declare const ContentTypeSchema: import("@loadable/component").LoadableClassComponent<any>;
19
19
  export declare const ContentTypes: import("@loadable/component").LoadableClassComponent<any>;
20
20
  export declare const VersionOverview: import("@loadable/component").LoadableComponent<{
21
+ [x: string]: any;
21
22
  cmf_version: any;
22
23
  debug_mode: any;
23
24
  pil_version: any;
@@ -1,2 +1,7 @@
1
- declare const _default: any;
2
- export default _default;
1
+ export default Diff;
2
+ /**
3
+ * Diff component.
4
+ * @function Diff
5
+ * @returns {JSX.Element}
6
+ */
7
+ declare function Diff(): JSX.Element;
@@ -1,8 +1,8 @@
1
- export declare const Field: jest.Mock<import("react/jsx-runtime").JSX.Element, [props: any], any>;
2
- export declare const InlineForm: jest.Mock<import("react/jsx-runtime").JSX.Element, [props: any], any>;
3
- export declare const ModalForm: jest.Mock<import("react/jsx-runtime").JSX.Element, [props: any], any>;
4
- export declare const UndoToolbar: jest.Mock<import("react/jsx-runtime").JSX.Element, [], any>;
5
- export declare const BlocksToolbar: jest.Mock<import("react/jsx-runtime").JSX.Element, [], any>;
6
- export declare const BlockDataForm: jest.Mock<import("react/jsx-runtime").JSX.Element, [props: any], any>;
7
- export declare const BlocksForm: jest.Mock<import("react/jsx-runtime").JSX.Element, [props: any], any>;
8
- export declare const Form: jest.Mock<import("react/jsx-runtime").JSX.Element, [props: any], any>;
1
+ export declare const Field: any;
2
+ export declare const InlineForm: any;
3
+ export declare const ModalForm: any;
4
+ export declare const UndoToolbar: any;
5
+ export declare const BlocksToolbar: any;
6
+ export declare const BlockDataForm: any;
7
+ export declare const BlocksForm: any;
8
+ export declare const Form: any;
@@ -3,7 +3,7 @@ declare const _default: {
3
3
  state: {
4
4
  isObjectBrowserOpen: boolean;
5
5
  };
6
- openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, }?: {
6
+ openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, initialPath, onlyFolderishSelectable, }?: {
7
7
  mode: string;
8
8
  dataName: string;
9
9
  onSelectItem: string;
@@ -31,7 +31,7 @@ declare function withObjectBrowser(WrappedComponent: any): {
31
31
  * }),
32
32
  * });
33
33
  */
34
- openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, }?: {
34
+ openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, initialPath, onlyFolderishSelectable, }?: {
35
35
  mode: string;
36
36
  dataName: string;
37
37
  onSelectItem: string;
@@ -1,16 +1,8 @@
1
- export default SidebarPortal;
2
- /**
3
- * Portal that wraps Sidebar components
4
- * @param {React.ReactNode} children Sidebar content
5
- * @param {bool} selected Sidebar needs to know when the related block is selected
6
- * @param {string} tab Element id where to insert sidebar content, default: sidebar-properties
7
- * @returns {string} Rendered sidebar
8
- */
9
- declare function SidebarPortal({ children, selected, tab }: React.ReactNode): string;
10
- declare namespace SidebarPortal {
11
- namespace propTypes {
12
- let children: any;
13
- let selected: any;
14
- }
15
- }
16
1
  import React from 'react';
2
+ type SidebarPortalProps = {
3
+ children?: React.ReactNode;
4
+ selected: boolean;
5
+ tab?: string;
6
+ };
7
+ declare const SidebarPortal: ({ children, selected, tab, }: SidebarPortalProps) => React.ReactPortal;
8
+ export default SidebarPortal;
@@ -1,12 +1,10 @@
1
- export function defaultActionsInfo({ intl }: {
2
- intl: any;
3
- }): {
4
- left: any[];
5
- right: any[];
6
- center: any[];
7
- narrow: any[];
8
- wide: any[];
9
- full: any[];
1
+ import { type ActionInfo, type ButtonsWidgetProps } from './ButtonsWidget';
2
+ import type { IntlShape } from 'react-intl';
3
+ export declare const defaultActionsInfo: ({ intl, }: {
4
+ intl: IntlShape;
5
+ }) => Record<string, ActionInfo>;
6
+ type AlignWidgetProps = ButtonsWidgetProps & {
7
+ defaultAction?: string;
10
8
  };
9
+ declare const AlignWidget: (props: AlignWidgetProps) => import("react/jsx-runtime").JSX.Element;
11
10
  export default AlignWidget;
12
- declare function AlignWidget(props: any): import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,5 @@
1
1
  export const Align: any;
2
+ export const AlignDefaultLeft: any;
2
3
  declare namespace _default {
3
4
  export let title: string;
4
5
  export { AlignWidget as component };
@@ -0,0 +1,7 @@
1
+ import { type ActionInfo, type ButtonsWidgetProps } from './ButtonsWidget';
2
+ import type { IntlShape } from 'react-intl';
3
+ export declare const defaultActionsInfo: ({ intl, }: {
4
+ intl: IntlShape;
5
+ }) => Record<string, ActionInfo>;
6
+ declare const BlockAlignmentWidget: (props: ButtonsWidgetProps) => import("react/jsx-runtime").JSX.Element;
7
+ export default BlockAlignmentWidget;
@@ -0,0 +1,8 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import BlockAlignment from './BlockAlignment';
3
+ declare const meta: Meta<typeof BlockAlignment>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof BlockAlignment>;
6
+ export declare const DefaultAlignment: Story;
7
+ export declare const CustomActions: Story;
8
+ export declare const FilteredActions: Story;
@@ -0,0 +1,7 @@
1
+ import type { IntlShape } from 'react-intl';
2
+ import { type ActionInfo, type ButtonsWidgetProps } from './ButtonsWidget';
3
+ export declare const defaultActionsInfo: ({ intl, }: {
4
+ intl: IntlShape;
5
+ }) => Record<string, ActionInfo>;
6
+ declare const BlockWidthWidget: (props: ButtonsWidgetProps) => import("react/jsx-runtime").JSX.Element;
7
+ export default BlockWidthWidget;
@@ -0,0 +1,6 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import BlockWidth from './BlockWidth';
3
+ declare const meta: Meta<typeof BlockWidth>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof BlockWidth>;
6
+ export declare const DefaultWidth: Story;
@@ -1,2 +1,49 @@
1
+ import React from 'react';
2
+ import type { StyleDefinition } from '@plone/types';
3
+ /**
4
+ * A tuple that has an icon in the first element and a i18n string in the second.
5
+ */
6
+ export type ActionInfo = [React.ReactElement<any>, string] | [string, string];
7
+ type ActionValue = string | Record<`--${string}`, string>;
8
+ export type ButtonsWidgetProps = {
9
+ /**
10
+ * Unique identifier for the widget.
11
+ */
12
+ id: string;
13
+ /**
14
+ * Callback function to handle changes.
15
+ */
16
+ onChange: (id: string, value: ActionValue) => void;
17
+ /**
18
+ * List of actions available for the widget.
19
+ */
20
+ actions?: Array<StyleDefinition | string>;
21
+ /**
22
+ * Map containing additional the information (icon and i18n string) for each action.
23
+ */
24
+ actionsInfoMap?: Record<string, ActionInfo>;
25
+ /**
26
+ * List of actions to be filtered out. In case that we don't want the default ones
27
+ * we can filter them out.
28
+ */
29
+ filterActions?: string[];
30
+ /**
31
+ * Current value of the widget.
32
+ */
33
+ value?: ActionValue;
34
+ /**
35
+ * Default value of the widget.
36
+ */
37
+ default?: ActionValue;
38
+ /**
39
+ * Indicates if the widget is disabled.
40
+ */
41
+ disabled?: boolean;
42
+ /**
43
+ * Indicates if the widget is disabled (alternative flag for compatibility reasons).
44
+ */
45
+ isDisabled?: boolean;
46
+ [key: string]: any;
47
+ };
48
+ declare const ButtonsWidget: (props: ButtonsWidgetProps) => import("react/jsx-runtime").JSX.Element;
1
49
  export default ButtonsWidget;
2
- declare function ButtonsWidget(props: any): import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,7 @@
1
1
  export const Buttons: any;
2
+ export const ButtonsWithDefaultValue: any;
3
+ export const ButtonsWithStyleDefinitions: any;
4
+ export const ButtonsFiltered: any;
2
5
  declare namespace _default {
3
6
  export let title: string;
4
7
  export { ButtonsWidget as component };
@@ -1,5 +1,28 @@
1
- declare const _default: React.FC<import("react-intl").WithIntlProps<any>> & {
2
- WrappedComponent: React.ComponentType<any>;
3
- };
4
- export default _default;
5
- import React from 'react';
1
+ export default FormFieldWrapper;
2
+ /**
3
+ * FormFieldWrapper component.
4
+ * @function FormFieldWrapper
5
+ * @param {Object} props - Component props
6
+ * @returns {JSX.Element} Markup for the component.
7
+ */
8
+ declare function FormFieldWrapper({ id, title, description, fieldSet, required, error, wrapped, columns, draggable, onEdit, className, isDisabled, onDelete, noForInFieldLabel, multilingual_options, children, }: any): JSX.Element;
9
+ declare namespace FormFieldWrapper {
10
+ namespace propTypes {
11
+ let id: any;
12
+ let title: any;
13
+ let description: any;
14
+ let required: any;
15
+ let error: any;
16
+ let wrapped: any;
17
+ let columns: any;
18
+ let draggable: any;
19
+ let isDisabled: any;
20
+ let onEdit: any;
21
+ let className: any;
22
+ let onDelete: any;
23
+ let fieldSet: any;
24
+ let noForInFieldLabel: any;
25
+ let multilingual_options: any;
26
+ let children: any;
27
+ }
28
+ }
@@ -10,7 +10,7 @@ export const ImageInput: {
10
10
  state: {
11
11
  isObjectBrowserOpen: boolean;
12
12
  };
13
- openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, }?: {
13
+ openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, initialPath, onlyFolderishSelectable, }?: {
14
14
  mode: string;
15
15
  dataName: string;
16
16
  onSelectItem: string;
@@ -41,7 +41,7 @@ declare const _default: {
41
41
  state: {
42
42
  isObjectBrowserOpen: boolean;
43
43
  };
44
- openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, }?: {
44
+ openObjectBrowser: ({ mode, onSelectItem, dataName, overlay, propDataName, searchableTypes, selectableTypes, maximumSelectionSize, currentPath, initialPath, onlyFolderishSelectable, }?: {
45
45
  mode: string;
46
46
  dataName: string;
47
47
  onSelectItem: string;