@plone/volto 19.0.0-alpha.2 → 19.0.0-alpha.20

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 (366) hide show
  1. package/.eslintignore +1 -0
  2. package/.eslintrc +37 -3
  3. package/CHANGELOG.md +338 -1
  4. package/README.md +20 -16
  5. package/babel.js +1 -3
  6. package/cypress/docker/prefixed-rules.yml +26 -0
  7. package/cypress/docker/prefixed.yml +24 -0
  8. package/cypress/support/commands.js +12 -6
  9. package/cypress/support/guillotina.js +1 -0
  10. package/cypress.config.js +1 -0
  11. package/global-test-setup.js +1 -2
  12. package/locales/af.json +1 -0
  13. package/locales/ar.json +1 -0
  14. package/locales/bg.json +1 -0
  15. package/locales/bn.json +1 -0
  16. package/locales/ca/LC_MESSAGES/volto.po +124 -17
  17. package/locales/ca.json +1 -1
  18. package/locales/cs.json +1 -0
  19. package/locales/cy.json +1 -0
  20. package/locales/da.json +1 -0
  21. package/locales/de/LC_MESSAGES/volto.po +135 -28
  22. package/locales/de.json +1 -1
  23. package/locales/el.json +1 -0
  24. package/locales/en/LC_MESSAGES/volto.po +125 -18
  25. package/locales/en.json +1 -1
  26. package/locales/en_AU.json +1 -0
  27. package/locales/en_GB.json +1 -0
  28. package/locales/eo.json +1 -0
  29. package/locales/es/LC_MESSAGES/volto.po +125 -18
  30. package/locales/es.json +1 -1
  31. package/locales/et.json +1 -0
  32. package/locales/eu/LC_MESSAGES/volto.po +124 -17
  33. package/locales/eu.json +1 -1
  34. package/locales/fa.json +1 -0
  35. package/locales/fi/LC_MESSAGES/volto.po +124 -17
  36. package/locales/fi.json +1 -1
  37. package/locales/fr/LC_MESSAGES/volto.po +125 -18
  38. package/locales/fr.json +1 -1
  39. package/locales/fu.json +1 -0
  40. package/locales/gl.json +1 -0
  41. package/locales/he.json +1 -0
  42. package/locales/hi/LC_MESSAGES/volto.po +128 -21
  43. package/locales/hi.json +1 -1
  44. package/locales/hr.json +1 -0
  45. package/locales/hu.json +1 -0
  46. package/locales/hy.json +1 -0
  47. package/locales/id.json +1 -0
  48. package/locales/it/LC_MESSAGES/volto.po +129 -22
  49. package/locales/it.json +1 -1
  50. package/locales/ja/LC_MESSAGES/volto.po +124 -17
  51. package/locales/ja.json +1 -1
  52. package/locales/ka.json +1 -0
  53. package/locales/kn.json +1 -0
  54. package/locales/ko.json +1 -0
  55. package/locales/lt.json +1 -0
  56. package/locales/lv.json +1 -0
  57. package/locales/mi.json +1 -0
  58. package/locales/mk.json +1 -0
  59. package/locales/my.json +1 -0
  60. package/locales/nb_NO.json +1 -0
  61. package/locales/nl/LC_MESSAGES/volto.po +128 -21
  62. package/locales/nl.json +1 -1
  63. package/locales/nn.json +1 -0
  64. package/locales/pl.json +1 -0
  65. package/locales/pt/LC_MESSAGES/volto.po +124 -17
  66. package/locales/pt.json +1 -1
  67. package/locales/pt_BR/LC_MESSAGES/volto.po +147 -40
  68. package/locales/pt_BR.json +1 -1
  69. package/locales/rm.json +1 -0
  70. package/locales/ro/LC_MESSAGES/volto.po +128 -21
  71. package/locales/ro.json +1 -1
  72. package/locales/ru/LC_MESSAGES/volto.po +128 -21
  73. package/locales/ru.json +1 -1
  74. package/locales/sk.json +1 -0
  75. package/locales/sl.json +1 -0
  76. package/locales/sm.json +1 -0
  77. package/locales/sq.json +1 -0
  78. package/locales/sr.json +1 -0
  79. package/locales/sr@cyrl.json +1 -0
  80. package/locales/sr@latn.json +1 -0
  81. package/locales/sv.json +1 -1
  82. package/locales/ta.json +1 -0
  83. package/locales/te.json +1 -0
  84. package/locales/th.json +1 -0
  85. package/locales/to.json +1 -0
  86. package/locales/tr.json +1 -0
  87. package/locales/uk.json +1 -0
  88. package/locales/vi.json +1 -0
  89. package/locales/volto.pot +125 -18
  90. package/locales/zh_CN/LC_MESSAGES/volto.po +124 -17
  91. package/locales/zh_CN.json +1 -1
  92. package/locales/zh_Hant.json +1 -0
  93. package/locales/zh_Hant_HK.json +1 -0
  94. package/package.json +43 -100
  95. package/razzle.config.js +21 -21
  96. package/src/actions/content/content.js +0 -1
  97. package/src/actions/controlpanels/controlpanels.js +13 -7
  98. package/src/actions/controlpanels/controlpanels.test.js +11 -5
  99. package/src/actions/users/users.js +2 -2
  100. package/src/components/manage/Actions/Actions.test.jsx +1 -5
  101. package/src/components/manage/Add/Add.jsx +5 -6
  102. package/src/components/manage/BlockChooser/BlockChooser.jsx +1 -0
  103. package/src/components/manage/Blocks/Block/BlocksForm.test.jsx +1 -5
  104. package/src/components/manage/Blocks/Block/Edit.jsx +1 -0
  105. package/src/components/manage/Blocks/Block/EditBlockWrapper.jsx +9 -4
  106. package/src/components/manage/Blocks/Block/Settings.test.jsx +1 -5
  107. package/src/components/manage/Blocks/HTML/Edit.test.jsx +1 -5
  108. package/src/components/manage/Blocks/Image/Edit.jsx +5 -1
  109. package/src/components/manage/Blocks/Image/ImageSidebar.test.jsx +1 -5
  110. package/src/components/manage/Blocks/LeadImage/Edit.jsx +2 -2
  111. package/src/components/manage/Blocks/LeadImage/LeadImageSidebar.jsx +1 -1
  112. package/src/components/manage/Blocks/LeadImage/LeadImageSidebar.test.jsx +1 -5
  113. package/src/components/manage/Blocks/Listing/ImageGallery.jsx +6 -4
  114. package/src/components/manage/Blocks/Maps/Edit.jsx +2 -1
  115. package/src/components/manage/Blocks/Maps/MapsSidebar.test.jsx +1 -5
  116. package/src/components/manage/Blocks/Search/SearchBlockView.jsx +21 -4
  117. package/src/components/manage/Blocks/Search/components/DateRangeFacet.test.jsx +1 -6
  118. package/src/components/manage/Blocks/Search/components/SelectFacet.test.jsx +1 -6
  119. package/src/components/manage/Blocks/Teaser/Data.jsx +21 -7
  120. package/src/components/manage/Blocks/Teaser/DefaultBody.jsx +1 -1
  121. package/src/components/manage/Blocks/Teaser/schema.js +8 -3
  122. package/src/components/manage/Blocks/Video/Edit.jsx +2 -1
  123. package/src/components/manage/Blocks/Video/VideoSidebar.test.jsx +1 -5
  124. package/src/components/manage/Contents/Contents.jsx +689 -654
  125. package/src/components/manage/Contents/Contents.test.jsx +8 -5
  126. package/src/components/manage/Contents/ContentsBreadcrumbs.Multilingual.test.jsx +18 -5
  127. package/src/components/manage/Contents/ContentsBreadcrumbs.jsx +20 -26
  128. package/src/components/manage/Contents/ContentsBreadcrumbs.test.jsx +14 -0
  129. package/src/components/manage/Contents/ContentsDeleteModal.jsx +258 -206
  130. package/src/components/manage/Contents/ContentsDeleteModal.stories.jsx +26 -8
  131. package/src/components/manage/Contents/ContentsItem.jsx +10 -2
  132. package/src/components/manage/Contents/ContentsPropertiesModal.test.jsx +1 -5
  133. package/src/components/manage/Contents/ContentsRenameModal.test.jsx +1 -5
  134. package/src/components/manage/Contents/ContentsTagsModal.test.jsx +1 -5
  135. package/src/components/manage/Contents/ContentsUploadModal.test.jsx +13 -22
  136. package/src/components/manage/Contents/ContentsWorkflowModal.test.jsx +1 -5
  137. package/src/components/manage/Contents/DropZoneContent.jsx +323 -0
  138. package/src/components/manage/Contents/__mocks__/index.tsx +2 -18
  139. package/src/components/manage/Controlpanels/Aliases.test.jsx +1 -5
  140. package/src/components/manage/Controlpanels/ContentType.jsx +1 -1
  141. package/src/components/manage/Controlpanels/ContentType.test.jsx +1 -5
  142. package/src/components/manage/Controlpanels/Groups/GroupsControlpanel.jsx +3 -2
  143. package/src/components/manage/Controlpanels/Relations/Relations.jsx +1 -1
  144. package/src/components/manage/Controlpanels/Rules/AddRule.test.jsx +1 -5
  145. package/src/components/manage/Controlpanels/Rules/EditRule.test.jsx +1 -5
  146. package/src/components/manage/Controlpanels/UndoControlpanel.test.jsx +1 -5
  147. package/src/components/manage/Controlpanels/Users/RenderUsers.jsx +156 -175
  148. package/src/components/manage/Controlpanels/Users/UsersControlpanel.jsx +575 -630
  149. package/src/components/manage/Controlpanels/Users/UsersControlpanel.test.jsx +4 -3
  150. package/src/components/manage/Diff/Diff.test.jsx +1 -6
  151. package/src/components/manage/Diff/DiffField.test.jsx +1 -6
  152. package/src/components/manage/Display/Display.test.jsx +2 -11
  153. package/src/components/manage/Edit/Edit.jsx +2 -3
  154. package/src/components/manage/Edit/Edit.test.jsx +1 -5
  155. package/src/components/manage/Form/BlockDataForm.test.jsx +1 -5
  156. package/src/components/manage/Form/Form.test.jsx +1 -5
  157. package/src/components/manage/Form/InlineForm.jsx +2 -2
  158. package/src/components/manage/Form/InlineForm.test.jsx +1 -5
  159. package/src/components/manage/Form/ModalForm.jsx +12 -10
  160. package/src/components/manage/Form/ModalForm.test.jsx +27 -5
  161. package/src/components/manage/Form/__mocks__/index.tsx +9 -27
  162. package/src/components/manage/Multilingual/CompareLanguages.jsx +2 -5
  163. package/src/components/manage/Multilingual/CreateTranslation.jsx +8 -8
  164. package/src/components/manage/Multilingual/ManageTranslations.jsx +4 -2
  165. package/src/components/manage/Multilingual/ManageTranslations.test.jsx +5 -1
  166. package/src/components/manage/Multilingual/TranslationObject.jsx +1 -1
  167. package/src/components/manage/Preferences/ChangePassword.test.jsx +1 -5
  168. package/src/components/manage/Preferences/PersonalPreferences.test.jsx +1 -17
  169. package/src/components/manage/Sidebar/ObjectBrowser.jsx +3 -0
  170. package/src/components/manage/Sidebar/ObjectBrowserBody.jsx +13 -1
  171. package/src/components/manage/Sidebar/ObjectBrowserNav.jsx +2 -1
  172. package/src/components/manage/Sidebar/SidebarPortal.test.tsx +42 -0
  173. package/src/components/manage/Sidebar/SidebarPortal.tsx +48 -0
  174. package/src/components/manage/TemplateChooser/TemplateChooser.jsx +2 -1
  175. package/src/components/manage/Toolbar/More.jsx +4 -1
  176. package/src/components/manage/Toolbar/More.test.jsx +3 -0
  177. package/src/components/manage/Toolbar/PersonalTools.jsx +2 -1
  178. package/src/components/manage/Toolbar/Toolbar.jsx +3 -4
  179. package/src/components/manage/Toolbar/Types.jsx +7 -7
  180. package/src/components/manage/UniversalLink/UniversalLink.tsx +1 -0
  181. package/src/components/manage/Widgets/AlignWidget.stories.jsx +9 -0
  182. package/src/components/manage/Widgets/AlignWidget.test.tsx +95 -0
  183. package/src/components/manage/Widgets/{AlignWidget.jsx → AlignWidget.tsx} +23 -7
  184. package/src/components/manage/Widgets/ArrayWidget.test.jsx +1 -6
  185. package/src/components/manage/Widgets/BlockAlignment.stories.tsx +104 -0
  186. package/src/components/manage/Widgets/BlockAlignment.test.tsx +104 -0
  187. package/src/components/manage/Widgets/BlockAlignment.tsx +88 -0
  188. package/src/components/manage/Widgets/BlockWidth.stories.tsx +69 -0
  189. package/src/components/manage/Widgets/BlockWidth.test.tsx +62 -0
  190. package/src/components/manage/Widgets/BlockWidth.tsx +101 -0
  191. package/src/components/manage/Widgets/ButtonsWidget.stories.jsx +61 -0
  192. package/src/components/manage/Widgets/ButtonsWidget.test.tsx +138 -0
  193. package/src/components/manage/Widgets/ButtonsWidget.tsx +176 -0
  194. package/src/components/manage/Widgets/CheckboxGroupWidget.test.jsx +1 -6
  195. package/src/components/manage/Widgets/DatetimeWidget.jsx +16 -1
  196. package/src/components/manage/Widgets/DatetimeWidget.test.jsx +1 -6
  197. package/src/components/manage/Widgets/FileWidget.jsx +14 -8
  198. package/src/components/manage/Widgets/FormFieldWrapper.jsx +146 -168
  199. package/src/components/manage/Widgets/ImageWidget.jsx +171 -38
  200. package/src/components/manage/Widgets/InternalUrlWidget.jsx +2 -0
  201. package/src/components/manage/Widgets/ObjectBrowserWidget.jsx +8 -0
  202. package/src/components/manage/Widgets/ObjectListWidget.test.jsx +2 -11
  203. package/src/components/manage/Widgets/ObjectWidget.test.jsx +1 -5
  204. package/src/components/manage/Widgets/QueryWidget.jsx +137 -9
  205. package/src/components/manage/Widgets/RadioGroupWidget.test.jsx +1 -6
  206. package/src/components/manage/Widgets/RecurrenceWidget/RecurrenceWidget.test.jsx +1 -6
  207. package/src/components/manage/Widgets/RegistryImageWidget.test.jsx +3 -2
  208. package/src/components/manage/Widgets/SchemaWidget.test.jsx +1 -6
  209. package/src/components/manage/Widgets/SchemaWidgetFieldset.test.jsx +1 -6
  210. package/src/components/manage/Widgets/SelectAutoComplete.jsx +29 -12
  211. package/src/components/manage/Widgets/SelectAutoComplete.test.jsx +1 -6
  212. package/src/components/manage/Widgets/SelectWidget.test.jsx +1 -6
  213. package/src/components/manage/Widgets/Size.stories.tsx +69 -0
  214. package/src/components/manage/Widgets/Size.test.tsx +59 -0
  215. package/src/components/manage/Widgets/Size.tsx +78 -0
  216. package/src/components/manage/Widgets/TimeWidget.test.jsx +1 -6
  217. package/src/components/manage/Widgets/TokenWidget.test.jsx +1 -6
  218. package/src/components/manage/Widgets/UrlWidget.jsx +2 -0
  219. package/src/components/manage/Widgets/VocabularyTermsWidget.test.jsx +2 -11
  220. package/src/components/manage/Widgets/__mocks__/index.tsx +33 -51
  221. package/src/components/manage/Widgets/index.tsx +21 -0
  222. package/src/components/manage/Workflow/Workflow.test.jsx +2 -11
  223. package/src/components/theme/AlternateHrefLangs/AlternateHrefLangs.jsx +1 -3
  224. package/src/components/theme/AlternateHrefLangs/AlternateHrefLangs.test.jsx +0 -4
  225. package/src/components/theme/App/App.jsx +5 -1
  226. package/src/components/theme/App/App.test.jsx +1 -0
  227. package/src/components/theme/Avatar/Avatar.jsx +2 -1
  228. package/src/components/theme/Comments/CommentEditModal.test.jsx +1 -5
  229. package/src/components/theme/Comments/Comments.test.jsx +2 -11
  230. package/src/components/theme/ContactForm/ContactForm.test.jsx +1 -5
  231. package/src/components/theme/FormattedDate/FormattedDate.stories.jsx +20 -2
  232. package/src/components/theme/Image/Image.jsx +11 -8
  233. package/src/components/theme/InjectPloneComponentsCSS/InjectPloneComponentsCSS.tsx +7 -0
  234. package/src/components/theme/LanguageSelector/{LanguageSelector.test.jsx → LanguageSelector.test.tsx} +6 -6
  235. package/src/components/theme/LanguageSelector/LanguageSelector.tsx +89 -0
  236. package/src/components/theme/Logo/Logo.Multilingual.test.jsx +0 -5
  237. package/src/components/theme/MultilingualRedirector/MultilingualRedirector.jsx +10 -14
  238. package/src/components/theme/MultilingualRedirector/MultilingualRedirector.test.jsx +3 -5
  239. package/src/components/theme/Navigation/NavItem.jsx +1 -5
  240. package/src/components/theme/Navigation/Navigation.Multilingual.test.jsx +0 -5
  241. package/src/components/theme/NotFound/NotFound.jsx +5 -2
  242. package/src/components/theme/NotFound/NotFound.test.jsx +3 -0
  243. package/src/components/theme/PasswordReset/RequestPasswordReset.test.jsx +1 -5
  244. package/src/components/theme/PreviewImage/PreviewImage.jsx +1 -1
  245. package/src/components/theme/Register/Register.test.jsx +1 -5
  246. package/src/components/theme/RequestTimeout/RequestTimeout.jsx +1 -1
  247. package/src/components/theme/Sitemap/Sitemap.jsx +6 -5
  248. package/src/components/theme/Sitemap/Sitemap.test.jsx +0 -1
  249. package/src/components/theme/Unauthorized/Unauthorized.jsx +5 -2
  250. package/src/components/theme/View/EventDatesInfo.test.jsx +1 -6
  251. package/src/components/theme/View/EventView.test.jsx +1 -6
  252. package/src/components/theme/View/FileView.jsx +9 -1
  253. package/src/components/theme/View/View.jsx +8 -1
  254. package/src/components/theme/Widgets/ImageWidget.jsx +2 -1
  255. package/src/config/ControlPanels.js +1 -0
  256. package/src/config/Widgets.jsx +7 -0
  257. package/src/config/index.js +18 -25
  258. package/src/config/server.js +0 -2
  259. package/src/config/slots.js +19 -0
  260. package/src/express-middleware/devproxy.js +20 -5
  261. package/src/helpers/Api/APIResourceWithAuth.js +8 -3
  262. package/src/helpers/Api/Api.js +7 -4
  263. package/src/helpers/AsyncConnect/ssr.js +4 -1
  264. package/src/helpers/Content/Content.js +23 -0
  265. package/src/helpers/Content/Content.test.js +39 -0
  266. package/src/helpers/Content/withClientSideContent.jsx +35 -0
  267. package/src/helpers/Extensions/withBlockSchemaEnhancer.jsx +4 -1
  268. package/src/helpers/Html/Html.jsx +13 -7
  269. package/src/helpers/LanguageMap/LanguageMap.js +115 -8
  270. package/src/helpers/Loadable/__mocks__/Loadable.jsx +7 -22
  271. package/src/helpers/MessageLabels/MessageLabels.js +5 -0
  272. package/src/helpers/Sitemap/Sitemap.js +4 -4
  273. package/src/helpers/Url/Url.js +33 -2
  274. package/src/helpers/Url/Url.test.js +62 -0
  275. package/src/hooks/user/useUser.js +1 -1
  276. package/src/internalChecks.test.ts +11 -0
  277. package/src/middleware/Api.test.js +4 -0
  278. package/src/middleware/api.js +82 -28
  279. package/src/middleware/storeProtectLoadUtils.test.js +3 -3
  280. package/src/reducers/content/content.js +3 -18
  281. package/src/reducers/diff/diff.js +5 -1
  282. package/src/reducers/diff/diff.test.js +60 -4
  283. package/src/reducers/querystring/querystring.js +8 -1
  284. package/src/routes.js +4 -2
  285. package/src/server.jsx +45 -14
  286. package/src/start-client.jsx +9 -6
  287. package/src/start-server.js +9 -3
  288. package/test-addons-loader.js +3 -0
  289. package/test-setup-config.jsx +0 -2
  290. package/test-setup-globals.js +30 -2
  291. package/theme/themes/pastanaga/extras/blocks.less +26 -0
  292. package/theme/themes/pastanaga/extras/contents.less +80 -5
  293. package/theme/themes/pastanaga/extras/main.less +17 -2
  294. package/theme/themes/pastanaga/extras/widgets.less +79 -0
  295. package/tsconfig.declarations.json +1 -1
  296. package/tsconfig.json +4 -5
  297. package/types/components/manage/Blocks/Teaser/schema.d.ts +1 -0
  298. package/types/components/manage/Contents/DropZoneContent.d.ts +2 -0
  299. package/types/components/manage/Contents/__mocks__/index.d.ts +2 -2
  300. package/types/components/manage/Controlpanels/Relations/RelationsMatrix.d.ts +1 -1
  301. package/types/components/manage/Controlpanels/Users/RenderUsers.d.ts +18 -2
  302. package/types/components/manage/Controlpanels/Users/UsersControlpanel.d.ts +6 -2
  303. package/types/components/manage/Controlpanels/index.d.ts +2 -2
  304. package/types/components/manage/Form/__mocks__/index.d.ts +8 -8
  305. package/types/components/manage/Multilingual/ManageTranslations.d.ts +1 -1
  306. package/types/components/manage/Sidebar/ObjectBrowser.d.ts +1 -1
  307. package/types/components/manage/Sidebar/SidebarPortal.d.ts +7 -15
  308. package/types/components/manage/Widgets/AlignWidget.d.ts +8 -10
  309. package/types/components/manage/Widgets/AlignWidget.stories.d.ts +1 -0
  310. package/types/components/manage/Widgets/BlockAlignment.d.ts +7 -0
  311. package/types/components/manage/Widgets/BlockAlignment.stories.d.ts +8 -0
  312. package/types/components/manage/Widgets/BlockWidth.d.ts +7 -0
  313. package/types/components/manage/Widgets/BlockWidth.stories.d.ts +6 -0
  314. package/types/components/manage/Widgets/ButtonsWidget.d.ts +48 -1
  315. package/types/components/manage/Widgets/ButtonsWidget.stories.d.ts +3 -0
  316. package/types/components/manage/Widgets/FormFieldWrapper.d.ts +28 -5
  317. package/types/components/manage/Widgets/ImageWidget.d.ts +41 -1
  318. package/types/components/manage/Widgets/InternalUrlWidget.d.ts +1 -1
  319. package/types/components/manage/Widgets/ObjectBrowserWidget.d.ts +2 -0
  320. package/types/components/manage/Widgets/QueryWidget.d.ts +5 -2
  321. package/types/components/manage/Widgets/RecurrenceWidget/Utils.d.ts +12 -18
  322. package/types/components/manage/Widgets/Size.d.ts +7 -0
  323. package/types/components/manage/Widgets/Size.stories.d.ts +6 -0
  324. package/types/components/manage/Widgets/UrlWidget.d.ts +1 -1
  325. package/types/components/manage/Widgets/__mocks__/index.d.ts +33 -33
  326. package/types/components/manage/Widgets/index.d.ts +11 -6
  327. package/types/components/theme/FormattedDate/FormattedDate.stories.d.ts +1 -1
  328. package/types/components/theme/InjectPloneComponentsCSS/InjectPloneComponentsCSS.d.ts +3 -0
  329. package/types/components/theme/LanguageSelector/LanguageSelector.d.ts +3 -10
  330. package/types/components/theme/Unauthorized/Unauthorized.d.ts +2 -2
  331. package/types/config/Widgets.d.ts +6 -0
  332. package/types/config/slots.d.ts +7 -0
  333. package/types/helpers/Content/Content.d.ts +7 -0
  334. package/types/helpers/Content/withClientSideContent.d.ts +1 -0
  335. package/types/helpers/Extensions/withBlockSchemaEnhancer.d.ts +4 -5
  336. package/types/helpers/Helmet/Helmet.d.ts +1 -1
  337. package/types/helpers/LanguageMap/LanguageMap.d.ts +428 -4
  338. package/types/helpers/Loadable/__mocks__/Loadable.d.ts +2 -2
  339. package/types/helpers/MessageLabels/MessageLabels.d.ts +68 -62
  340. package/types/helpers/Url/Url.d.ts +14 -0
  341. package/types/helpers/Url/bulkFlattenToAppURL.d.ts +5 -0
  342. package/types/middleware/api.d.ts +6 -9
  343. package/types/reducers/index.d.ts +1 -0
  344. package/types/start-client.d.ts +0 -1
  345. package/vitest.config.mjs +4 -4
  346. package/webpack-plugins/webpack-scss-plugin.js +172 -0
  347. package/jest-addons-loader.js +0 -3
  348. package/jest-extender-plugin.js +0 -39
  349. package/jest-setup-afterenv.js +0 -2
  350. package/jest-svgsystem-transform.js +0 -10
  351. package/package-why.json +0 -34
  352. package/patches/patchit.sh +0 -2
  353. package/patches/razzle-jest.patch +0 -10
  354. package/src/actions/content/content.multilingual.test.js +0 -17
  355. package/src/components/manage/Contents/__mocks__/index.vitest.tsx +0 -5
  356. package/src/components/manage/Form/__mocks__/index.vitest.tsx +0 -73
  357. package/src/components/manage/Sidebar/SidebarPortal.jsx +0 -47
  358. package/src/components/manage/Sidebar/SidebarPortal.test.jsx +0 -26
  359. package/src/components/manage/Widgets/AlignWidget.test.jsx +0 -59
  360. package/src/components/manage/Widgets/ButtonsWidget.jsx +0 -41
  361. package/src/components/manage/Widgets/ButtonsWidget.test.jsx +0 -70
  362. package/src/components/manage/Widgets/__mocks__/index.vitest.tsx +0 -41
  363. package/src/components/theme/LanguageSelector/LanguageSelector.jsx +0 -77
  364. package/src/helpers/Loadable/__mocks__/Loadable.vitest.jsx +0 -39
  365. package/test-setup-globals-vitest.js +0 -46
  366. package/theme/themes/pastanaga/extras/utils.less +0 -63
package/locales/volto.pot CHANGED
@@ -1,7 +1,7 @@
1
1
  msgid ""
2
2
  msgstr ""
3
3
  "Project-Id-Version: Plone\n"
4
- "POT-Creation-Date: 2025-04-09T19:53:50.699Z\n"
4
+ "POT-Creation-Date: 2025-12-04T08:02:09.676Z\n"
5
5
  "Last-Translator: Plone i18n <plone-i18n@lists.sourceforge.net>\n"
6
6
  "Language-Team: Plone i18n <plone-i18n@lists.sourceforge.net>\n"
7
7
  "Content-Type: text/plain; charset=utf-8\n"
@@ -18,6 +18,11 @@ msgstr ""
18
18
  msgid "<p>Add some HTML here</p>"
19
19
  msgstr ""
20
20
 
21
+ #. Default: "A unique identifier for the group. Cannot be changed after creation. No spaces allowed."
22
+ #: helpers/MessageLabels/MessageLabels
23
+ msgid "A unique identifier for the group. Cannot be changed after creation. No spaces allowed."
24
+ msgstr ""
25
+
21
26
  #. Default: "Account Registration Completed"
22
27
  #: components/theme/Register/Register
23
28
  msgid "Account Registration Completed"
@@ -567,6 +572,7 @@ msgstr ""
567
572
  #: components/manage/Add/Add
568
573
  #: components/manage/Contents/ContentsDeleteModal
569
574
  #: components/manage/Contents/ContentsUploadModal
575
+ #: components/manage/Contents/DropZoneContent
570
576
  #: components/manage/Controlpanels/ContentType
571
577
  #: components/manage/Controlpanels/ContentTypeLayout
572
578
  #: components/manage/Controlpanels/ContentTypeSchema
@@ -596,6 +602,7 @@ msgstr ""
596
602
  #: components/manage/Blocks/Maps/Edit
597
603
  #: components/manage/Sidebar/AlignBlock
598
604
  #: components/manage/Widgets/AlignWidget
605
+ #: components/manage/Widgets/BlockAlignment
599
606
  msgid "Center"
600
607
  msgstr ""
601
608
 
@@ -675,6 +682,11 @@ msgstr ""
675
682
  msgid "Clear"
676
683
  msgstr ""
677
684
 
685
+ #. Default: "Clear date and time"
686
+ #: components/manage/Widgets/DatetimeWidget
687
+ msgid "Clear date/time"
688
+ msgstr ""
689
+
678
690
  #. Default: "Clear filters"
679
691
  #: components/manage/Blocks/Search/components/FilterList
680
692
  msgid "Clear filters"
@@ -1000,6 +1012,7 @@ msgstr ""
1000
1012
  #: components/manage/Controlpanels/UndoControlpanel
1001
1013
  #: components/manage/Preferences/ChangePassword
1002
1014
  #: components/manage/Preferences/PersonalPreferences
1015
+ #: components/manage/Widgets/BlockWidth
1003
1016
  #: components/manage/Widgets/SchemaWidget
1004
1017
  #: components/manage/Widgets/SelectWidget
1005
1018
  #: components/theme/Comments/CommentEditModal
@@ -1091,9 +1104,9 @@ msgstr ""
1091
1104
  msgid "Deleted"
1092
1105
  msgstr ""
1093
1106
 
1094
- #. Default: "Deleting this item breaks {brokenReferences} {variation}."
1107
+ #. Default: "Deleting this item will break {brokenReferences} {variation}."
1095
1108
  #: components/manage/Contents/ContentsDeleteModal
1096
- msgid "Deleting this item breaks {brokenReferences} {variation}."
1109
+ msgid "Deleting this item will break {brokenReferences} {variation}."
1097
1110
  msgstr ""
1098
1111
 
1099
1112
  #. Default: "Depth"
@@ -1198,6 +1211,11 @@ msgstr ""
1198
1211
  msgid "Download Event"
1199
1212
  msgstr ""
1200
1213
 
1214
+ #. Default: "Download file"
1215
+ #: components/theme/View/FileView
1216
+ msgid "Download file"
1217
+ msgstr ""
1218
+
1201
1219
  #. Default: "Drag and drop files from your computer onto this area or click the “Browse” button."
1202
1220
  #: components/manage/Contents/ContentsUploadModal
1203
1221
  msgid "Drag and drop files from your computer onto this area or click the “Browse” button."
@@ -1221,6 +1239,11 @@ msgstr ""
1221
1239
  msgid "Drop files here ..."
1222
1240
  msgstr ""
1223
1241
 
1242
+ #. Default: "Drop files here to upload"
1243
+ #: components/manage/Contents/DropZoneContent
1244
+ msgid "Drop files here to upload"
1245
+ msgstr ""
1246
+
1224
1247
  #. Default: "Dry run selected, transaction aborted."
1225
1248
  #: components/manage/Controlpanels/UpgradeControlPanel
1226
1249
  msgid "Dry run selected, transaction aborted."
@@ -1550,6 +1573,7 @@ msgstr ""
1550
1573
 
1551
1574
  #. Default: "File size"
1552
1575
  #: components/manage/Contents/ContentsUploadModal
1576
+ #: components/manage/Contents/DropZoneContent
1553
1577
  msgid "File size"
1554
1578
  msgstr ""
1555
1579
 
@@ -1560,11 +1584,13 @@ msgstr ""
1560
1584
 
1561
1585
  #. Default: "Filename"
1562
1586
  #: components/manage/Contents/ContentsUploadModal
1587
+ #: components/manage/Contents/DropZoneContent
1563
1588
  msgid "Filename"
1564
1589
  msgstr ""
1565
1590
 
1566
1591
  #. Default: "Files uploaded: {uploadedFiles}"
1567
1592
  #: components/manage/Contents/ContentsUploadModal
1593
+ #: components/manage/Contents/DropZoneContent
1568
1594
  msgid "Files uploaded: {uploadedFiles}"
1569
1595
  msgstr ""
1570
1596
 
@@ -1648,6 +1674,7 @@ msgstr ""
1648
1674
  #: components/manage/Blocks/Maps/Edit
1649
1675
  #: components/manage/Sidebar/AlignBlock
1650
1676
  #: components/manage/Widgets/AlignWidget
1677
+ #: components/manage/Widgets/BlockWidth
1651
1678
  msgid "Full"
1652
1679
  msgstr ""
1653
1680
 
@@ -2033,6 +2060,7 @@ msgstr ""
2033
2060
 
2034
2061
  #. Default: "Large"
2035
2062
  #: components/manage/Widgets/ImageSizeWidget
2063
+ #: components/manage/Widgets/Size
2036
2064
  msgid "Large"
2037
2065
  msgstr ""
2038
2066
 
@@ -2048,6 +2076,7 @@ msgstr ""
2048
2076
 
2049
2077
  #. Default: "Last modified"
2050
2078
  #: components/manage/Contents/ContentsUploadModal
2079
+ #: components/manage/Contents/DropZoneContent
2051
2080
  msgid "Last modified"
2052
2081
  msgstr ""
2053
2082
 
@@ -2063,6 +2092,7 @@ msgstr ""
2063
2092
 
2064
2093
  #. Default: "Layout"
2065
2094
  #: components/manage/Controlpanels/ContentTypesActions
2095
+ #: components/manage/Widgets/BlockWidth
2066
2096
  msgid "Layout"
2067
2097
  msgstr ""
2068
2098
 
@@ -2075,6 +2105,7 @@ msgstr ""
2075
2105
  #: components/manage/Blocks/Maps/Edit
2076
2106
  #: components/manage/Sidebar/AlignBlock
2077
2107
  #: components/manage/Widgets/AlignWidget
2108
+ #: components/manage/Widgets/BlockAlignment
2078
2109
  msgid "Left"
2079
2110
  msgstr ""
2080
2111
 
@@ -2273,6 +2304,7 @@ msgstr ""
2273
2304
 
2274
2305
  #. Default: "Medium"
2275
2306
  #: components/manage/Widgets/ImageSizeWidget
2307
+ #: components/manage/Widgets/Size
2276
2308
  msgid "Medium"
2277
2309
  msgstr ""
2278
2310
 
@@ -2385,6 +2417,7 @@ msgstr ""
2385
2417
 
2386
2418
  #. Default: "Narrow"
2387
2419
  #: components/manage/Widgets/AlignWidget
2420
+ #: components/manage/Widgets/BlockWidth
2388
2421
  msgid "Narrow"
2389
2422
  msgstr ""
2390
2423
 
@@ -2455,7 +2488,7 @@ msgstr ""
2455
2488
  msgid "No broken relations found."
2456
2489
  msgstr ""
2457
2490
 
2458
- #. Default: "There is no connection to the server, due to a timeout o no network connection."
2491
+ #. Default: "There is no connection to the server, due to a timeout or no network connection."
2459
2492
  #: components/theme/RequestTimeout/RequestTimeout
2460
2493
  msgid "No connection to the server"
2461
2494
  msgstr ""
@@ -2562,10 +2595,14 @@ msgstr ""
2562
2595
 
2563
2596
  #. Default: "None"
2564
2597
  #: components/manage/Contents/Contents
2565
- #: components/manage/Contents/ContentsItem
2566
2598
  msgid "None"
2567
2599
  msgstr ""
2568
2600
 
2601
+ #. Default: "None"
2602
+ #: components/manage/Contents/ContentsItem
2603
+ msgid "Not available"
2604
+ msgstr ""
2605
+
2569
2606
  #. Default: "Note"
2570
2607
  #: components/manage/Controlpanels/UndoControlpanel
2571
2608
  msgid "Note"
@@ -2596,9 +2633,9 @@ msgstr ""
2596
2633
  msgid "Ok"
2597
2634
  msgstr ""
2598
2635
 
2599
- #. Default: "Only 7-bit bytes characters are allowed. Cannot contain uppercase letters, special characters: <, >, &, #, /, ?, or others that are illegal in URLs. Cannot start with: _, aq_, @@, ++. Cannot end with __. Cannot be: request,contributors, ., .., "". Cannot contain new lines."
2636
+ #. Default: "Only 7-bit bytes characters are allowed. Cannot contain uppercase letters, special characters: <, >, &, #, /, ?, or others that are illegal in URLs. Cannot start with: _, aq_, @@, ++. Cannot end with __. Cannot be: request,contributors, ., .., \"\". Cannot contain new lines."
2600
2637
  #: components/manage/Widgets/IdWidget
2601
- msgid "Only 7-bit bytes characters are allowed. Cannot contain uppercase letters, special characters: <, >, &, #, /, ?, or others that are illegal in URLs. Cannot start with: _, aq_, @@, ++. Cannot end with __. Cannot be: request,contributors, ., .., "". Cannot contain new lines."
2638
+ msgid "Only 7-bit bytes characters are allowed. Cannot contain uppercase letters, special characters: <, >, &, #, /, ?, or others that are illegal in URLs. Cannot start with: _, aq_, @@, ++. Cannot end with __. Cannot be: request,contributors, ., .., \"\". Cannot contain new lines."
2602
2639
  msgstr ""
2603
2640
 
2604
2641
  #. Default: "Open in a new tab"
@@ -2802,6 +2839,7 @@ msgstr ""
2802
2839
  #. Default: "Preview"
2803
2840
  #: components/manage/Blocks/HTML/Edit
2804
2841
  #: components/manage/Contents/ContentsUploadModal
2842
+ #: components/manage/Contents/DropZoneContent
2805
2843
  msgid "Preview"
2806
2844
  msgstr ""
2807
2845
 
@@ -2898,7 +2936,7 @@ msgstr ""
2898
2936
  msgid "Referencing this item with {relationship}"
2899
2937
  msgstr ""
2900
2938
 
2901
- #. Default: "Refresh source content"
2939
+ #. Default: "Reset to target"
2902
2940
  #: components/manage/Blocks/Teaser/Data
2903
2941
  msgid "Refresh source content"
2904
2942
  msgstr ""
@@ -2943,6 +2981,11 @@ msgstr ""
2943
2981
  msgid "Relations updated"
2944
2982
  msgstr ""
2945
2983
 
2984
+ #. Default: "Release to add file(s) to this folder"
2985
+ #: components/manage/Contents/DropZoneContent
2986
+ msgid "Release to add file(s) to this folder"
2987
+ msgstr ""
2988
+
2946
2989
  #. Default: "Relevance"
2947
2990
  #: components/theme/Search/Search
2948
2991
  msgid "Relevance"
@@ -3097,6 +3140,7 @@ msgstr ""
3097
3140
  #: components/manage/Blocks/Maps/Edit
3098
3141
  #: components/manage/Sidebar/AlignBlock
3099
3142
  #: components/manage/Widgets/AlignWidget
3143
+ #: components/manage/Widgets/BlockAlignment
3100
3144
  msgid "Right"
3101
3145
  msgstr ""
3102
3146
 
@@ -3493,17 +3537,18 @@ msgstr ""
3493
3537
 
3494
3538
  #. Default: "Small"
3495
3539
  #: components/manage/Widgets/ImageSizeWidget
3540
+ #: components/manage/Widgets/Size
3496
3541
  msgid "Small"
3497
3542
  msgstr ""
3498
3543
 
3499
- #. Default: "Some items are also a folder. By deleting them you will delete {containedItemsToDelete} {variation} inside the folders."
3544
+ #. Default: "Some items are referenced by other contents. Deleting them will break {brokenReferences} {variation}."
3500
3545
  #: components/manage/Contents/ContentsDeleteModal
3501
- msgid "Some items are also a folder. By deleting them you will delete {containedItemsToDelete} {variation} inside the folders."
3546
+ msgid "Some items are referenced by other contents. Deleting them will break {brokenReferences} {variation}."
3502
3547
  msgstr ""
3503
3548
 
3504
- #. Default: "Some items are referenced by other contents. By deleting them {brokenReferences} {variation} will be broken."
3549
+ #. Default: "Some items contain subitems. Deleting them will also delete their {containedItemsToDelete} {variation} inside."
3505
3550
  #: components/manage/Contents/ContentsDeleteModal
3506
- msgid "Some items are referenced by other contents. By deleting them {brokenReferences} {variation} will be broken."
3551
+ msgid "Some items contain subitems. Deleting them will also delete their {containedItemsToDelete} {variation} inside."
3507
3552
  msgstr ""
3508
3553
 
3509
3554
  #. Default: "Some relations are broken. Please fix."
@@ -3792,6 +3837,11 @@ msgstr ""
3792
3837
  msgid "The item could not be deleted."
3793
3838
  msgstr ""
3794
3839
 
3840
+ #. Default: "The kicker is a line of text shown above the title."
3841
+ #: components/manage/Blocks/Teaser/schema
3842
+ msgid "The kicker is a line of text shown above the title."
3843
+ msgstr ""
3844
+
3795
3845
  #. Default: "The link address is:"
3796
3846
  #: components/theme/View/LinkView
3797
3847
  msgid "The link address is:"
@@ -3905,9 +3955,9 @@ msgstr ""
3905
3955
  msgid "This is a working copy of {title}"
3906
3956
  msgstr ""
3907
3957
 
3908
- #. Default: "This item is also a folder. By deleting it you will delete {containedItemsToDelete} {variation} inside the folder."
3958
+ #. Default: "This item contains subitems. Deleting it will also delete its {containedItemsToDelete} {variation} inside."
3909
3959
  #: components/manage/Contents/ContentsDeleteModal
3910
- msgid "This item is also a folder. By deleting it you will delete {containedItemsToDelete} {variation} inside the folder."
3960
+ msgid "This item contains subitems. Deleting it will also delete its {containedItemsToDelete} {variation} inside."
3911
3961
  msgstr ""
3912
3962
 
3913
3963
  #. Default: "This item was locked by {creator} on {date}"
@@ -3967,6 +4017,7 @@ msgstr ""
3967
4017
 
3968
4018
  #. Default: "Total files to upload: {totalFiles}"
3969
4019
  #: components/manage/Contents/ContentsUploadModal
4020
+ #: components/manage/Contents/DropZoneContent
3970
4021
  msgid "Total files to upload: {totalFiles}"
3971
4022
  msgstr ""
3972
4023
 
@@ -4188,6 +4239,11 @@ msgstr ""
4188
4239
  msgid "Upload"
4189
4240
  msgstr ""
4190
4241
 
4242
+ #. Default: "Upload Files ({count})"
4243
+ #: components/manage/Contents/DropZoneContent
4244
+ msgid "Upload Files ({count})"
4245
+ msgstr ""
4246
+
4191
4247
  #. Default: "Upload a lead image in the 'Lead Image' content field."
4192
4248
  #: components/manage/Blocks/LeadImage/Edit
4193
4249
  msgid "Upload a lead image in the 'Lead Image' content field."
@@ -4447,6 +4503,11 @@ msgstr ""
4447
4503
  msgid "Workflow updated."
4448
4504
  msgstr ""
4449
4505
 
4506
+ #. Default: "Working copy"
4507
+ #: components/manage/Contents/ContentsItem
4508
+ msgid "Working copy"
4509
+ msgstr ""
4510
+
4450
4511
  #. Default: "Yearly"
4451
4512
  #: components/manage/Widgets/RecurrenceWidget/RecurrenceWidget
4452
4513
  msgid "Yearly"
@@ -4458,6 +4519,16 @@ msgstr ""
4458
4519
  msgid "Yes"
4459
4520
  msgstr ""
4460
4521
 
4522
+ #. Default: "You are about to delete all items and all its subitems."
4523
+ #: components/manage/Contents/ContentsDeleteModal
4524
+ msgid "You are about to delete all items and all its subitems."
4525
+ msgstr ""
4526
+
4527
+ #. Default: "You are about to delete all items in the current pagination of this folder."
4528
+ #: components/manage/Contents/ContentsDeleteModal
4529
+ msgid "You are about to delete all items in the current pagination of this folder."
4530
+ msgstr ""
4531
+
4461
4532
  #. Default: "You are trying to access a protected resource, please {login} first."
4462
4533
  #: components/theme/Unauthorized/Unauthorized
4463
4534
  msgid "You are trying to access a protected resource, please {login} first."
@@ -4548,11 +4619,16 @@ msgstr ""
4548
4619
  msgid "addUserFormPasswordDescription"
4549
4620
  msgstr ""
4550
4621
 
4551
- #. Default: "Enter a user name, usually something like "jsmith". No spaces or special characters. Usernames and passwords are case sensitive, make sure the caps lock key is not enabled. This is the name used to log in."
4622
+ #. Default: "Enter a user name, usually something like \"jsmith\". No spaces or special characters. Usernames and passwords are case sensitive, make sure the caps lock key is not enabled. This is the name used to log in."
4552
4623
  #: helpers/MessageLabels/MessageLabels
4553
4624
  msgid "addUserFormUsernameDescription"
4554
4625
  msgstr ""
4555
4626
 
4627
+ #. Default: "and {count} more…"
4628
+ #: components/manage/Contents/ContentsDeleteModal
4629
+ msgid "and {count} more…"
4630
+ msgstr ""
4631
+
4556
4632
  #. Default: "Available views"
4557
4633
  #: components/manage/Blocks/Search/schema
4558
4634
  msgid "availableViews"
@@ -4609,9 +4685,9 @@ msgstr ""
4609
4685
  msgid "daterangeFacet"
4610
4686
  msgstr ""
4611
4687
 
4612
- #. Default: "delete"
4688
+ #. Default: "delete {type} block"
4613
4689
  #: components/manage/Blocks/Block/EditBlockWrapper
4614
- msgid "delete"
4690
+ msgid "delete_block"
4615
4691
  msgstr ""
4616
4692
 
4617
4693
  #. Default: "You are using {browsername} {browserversion} which is deprecated by its vendor. That means that it does not get security updates and it is not ready for current modern web features, which deteriorates the user experience. Please upgrade to a modern browser."
@@ -4639,6 +4715,11 @@ msgstr ""
4639
4715
  msgid "draft"
4640
4716
  msgstr ""
4641
4717
 
4718
+ #. Default: "drag {type} block"
4719
+ #: components/manage/Blocks/Block/EditBlockWrapper
4720
+ msgid "drag_block"
4721
+ msgstr ""
4722
+
4642
4723
  #. Default: "Input must be valid email (something@domain.com)"
4643
4724
  #: helpers/MessageLabels/MessageLabels
4644
4725
  msgid "email"
@@ -4689,6 +4770,11 @@ msgstr ""
4689
4770
  msgid "examplePath"
4690
4771
  msgstr ""
4691
4772
 
4773
+ #. Default: "External URLs are not allowed in this field."
4774
+ #: components/manage/Widgets/ImageWidget
4775
+ msgid "externalURLsNotAllowed"
4776
+ msgstr ""
4777
+
4692
4778
  #. Default: "This website does not accept files larger than {limit}"
4693
4779
  #: helpers/MessageLabels/MessageLabels
4694
4780
  msgid "fileTooLarge"
@@ -4704,7 +4790,7 @@ msgstr ""
4704
4790
  msgid "flushAndRebuildRelationsHints"
4705
4791
  msgstr ""
4706
4792
 
4707
- #. Default: "Head title"
4793
+ #. Default: "Kicker"
4708
4794
  #: components/manage/Blocks/Teaser/schema
4709
4795
  msgid "head_title"
4710
4796
  msgstr ""
@@ -4749,6 +4835,11 @@ msgstr ""
4749
4835
  msgid "integer"
4750
4836
  msgstr ""
4751
4837
 
4838
+ #. Default: "No image was found in the internal path you provided."
4839
+ #: components/manage/Widgets/ImageWidget
4840
+ msgid "internalImageNotFoundErrorMessage"
4841
+ msgstr ""
4842
+
4752
4843
  #. Default: "Intranet"
4753
4844
  #: components/manage/Contents/ContentsItem
4754
4845
  msgid "intranet"
@@ -4903,6 +4994,16 @@ msgstr ""
4903
4994
  msgid "published"
4904
4995
  msgstr ""
4905
4996
 
4997
+ #. Default: "Current path (./)"
4998
+ #: components/manage/Widgets/QueryWidget
4999
+ msgid "query-widget-currentPath"
5000
+ msgstr ""
5001
+
5002
+ #. Default: "Parent path (../)"
5003
+ #: components/manage/Widgets/QueryWidget
5004
+ msgid "query-widget-parentPath"
5005
+ msgstr ""
5006
+
4906
5007
  #. Default: "Select…"
4907
5008
  #: components/manage/Widgets/QueryWidget
4908
5009
  msgid "querystring-widget-select"
@@ -4928,6 +5029,11 @@ msgstr ""
4928
5029
  msgid "refers to"
4929
5030
  msgstr ""
4930
5031
 
5032
+ #. Default: "Result count"
5033
+ #: components/manage/Contents/Contents
5034
+ msgid "resultCount"
5035
+ msgstr ""
5036
+
4931
5037
  #. Default: "results"
4932
5038
  #: components/theme/Search/Search
4933
5039
  msgid "results found"
@@ -5223,6 +5329,7 @@ msgstr ""
5223
5329
 
5224
5330
  #. Default: "{count, plural, one {Upload {count} file} other {Upload {count} files}}"
5225
5331
  #: components/manage/Contents/ContentsUploadModal
5332
+ #: components/manage/Contents/DropZoneContent
5226
5333
  msgid "{count, plural, one {Upload {count} file} other {Upload {count} files}}"
5227
5334
  msgstr ""
5228
5335