@plone/volto 18.1.1 → 18.2.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 (296) hide show
  1. package/.eslintignore +1 -1
  2. package/.eslintrc +8 -1
  3. package/.eslintrc.core.js +42 -0
  4. package/.release-it.json +3 -1
  5. package/CHANGELOG.md +23 -0
  6. package/README.md +172 -0
  7. package/package.json +4 -5
  8. package/razzle.config.js +0 -9
  9. package/src/actions/content/content.js +1 -1
  10. package/src/actions/language/language.js +2 -2
  11. package/src/actions/search/search.js +7 -1
  12. package/src/actions/workflow/workflow.js +1 -1
  13. package/src/components/manage/Actions/Actions.jsx +8 -3
  14. package/src/components/manage/Add/Add.jsx +26 -26
  15. package/src/components/manage/Aliases/Aliases.jsx +9 -7
  16. package/src/components/manage/AnchorPlugin/components/LinkButton/AddLinkForm.jsx +5 -7
  17. package/src/components/manage/AnchorPlugin/useLinkEditor.jsx +1 -1
  18. package/src/components/manage/BlockChooser/BlockChooser.jsx +6 -3
  19. package/src/components/manage/BlockChooser/BlockChooserButton.jsx +4 -3
  20. package/src/components/manage/BlockChooser/BlockChooserSearch.jsx +1 -1
  21. package/src/components/manage/Blocks/Block/BlocksForm.jsx +8 -7
  22. package/src/components/manage/Blocks/Block/DefaultEdit.jsx +1 -1
  23. package/src/components/manage/Blocks/Block/DefaultView.jsx +1 -1
  24. package/src/components/manage/Blocks/Block/Edit.jsx +7 -8
  25. package/src/components/manage/Blocks/Block/EditBlockWrapper.jsx +3 -3
  26. package/src/components/manage/Blocks/Block/Order/Item.jsx +3 -3
  27. package/src/components/manage/Blocks/Block/Order/Order.jsx +2 -1
  28. package/src/components/manage/Blocks/Block/Order/utilities.js +2 -2
  29. package/src/components/manage/Blocks/Block/StyleWrapper.jsx +1 -1
  30. package/src/components/manage/Blocks/Container/Edit.jsx +3 -3
  31. package/src/components/manage/Blocks/Container/EditBlockWrapper.jsx +2 -2
  32. package/src/components/manage/Blocks/Container/NewBlockAddButton.jsx +3 -2
  33. package/src/components/manage/Blocks/Container/SimpleContainerToolbar.jsx +1 -1
  34. package/src/components/manage/Blocks/Grid/Edit.jsx +1 -1
  35. package/src/components/manage/Blocks/Grid/View.jsx +2 -2
  36. package/src/components/manage/Blocks/Grid/templates.js +1 -1
  37. package/src/components/manage/Blocks/HTML/Edit.jsx +2 -2
  38. package/src/components/manage/Blocks/Image/Edit.jsx +4 -6
  39. package/src/components/manage/Blocks/Image/ImageSidebar.jsx +3 -2
  40. package/src/components/manage/Blocks/Image/View.jsx +3 -6
  41. package/src/components/manage/Blocks/LeadImage/Edit.jsx +2 -1
  42. package/src/components/manage/Blocks/LeadImage/LeadImageSidebar.jsx +3 -2
  43. package/src/components/manage/Blocks/LeadImage/View.jsx +1 -1
  44. package/src/components/manage/Blocks/Listing/DefaultTemplate.jsx +3 -3
  45. package/src/components/manage/Blocks/Listing/Edit.jsx +5 -7
  46. package/src/components/manage/Blocks/Listing/ImageGallery.jsx +2 -2
  47. package/src/components/manage/Blocks/Listing/ListingBody.jsx +2 -2
  48. package/src/components/manage/Blocks/Listing/SummaryTemplate.jsx +3 -3
  49. package/src/components/manage/Blocks/Listing/View.jsx +2 -2
  50. package/src/components/manage/Blocks/Listing/getAsyncData.js +2 -2
  51. package/src/components/manage/Blocks/Listing/withQuerystringResults.jsx +4 -2
  52. package/src/components/manage/Blocks/Maps/Edit.jsx +4 -2
  53. package/src/components/manage/Blocks/Maps/MapsSidebar.jsx +1 -1
  54. package/src/components/manage/Blocks/Maps/View.jsx +1 -1
  55. package/src/components/manage/Blocks/Search/SearchBlockEdit.jsx +3 -3
  56. package/src/components/manage/Blocks/Search/SearchBlockView.jsx +3 -2
  57. package/src/components/manage/Blocks/Search/components/DateRangeFacet.jsx +1 -1
  58. package/src/components/manage/Blocks/Search/components/FilterList.jsx +3 -3
  59. package/src/components/manage/Blocks/Search/components/SearchInput.jsx +1 -1
  60. package/src/components/manage/Blocks/Search/components/SortOn.jsx +1 -1
  61. package/src/components/manage/Blocks/Search/components/base.js +1 -1
  62. package/src/components/manage/Blocks/Search/hocs/withQueryString.jsx +1 -1
  63. package/src/components/manage/Blocks/Search/hocs/withSearch.jsx +2 -2
  64. package/src/components/manage/Blocks/Search/schema.js +1 -1
  65. package/src/components/manage/Blocks/Search/widgets/SelectMetadataField.jsx +4 -1
  66. package/src/components/manage/Blocks/Teaser/Data.jsx +6 -7
  67. package/src/components/manage/Blocks/Teaser/DefaultBody.jsx +3 -3
  68. package/src/components/manage/Blocks/Teaser/Edit.jsx +2 -2
  69. package/src/components/manage/Blocks/Teaser/View.jsx +1 -1
  70. package/src/components/manage/Blocks/Teaser/adapter.js +1 -1
  71. package/src/components/manage/Blocks/ToC/Edit.jsx +1 -1
  72. package/src/components/manage/Blocks/ToC/View.jsx +2 -2
  73. package/src/components/manage/Blocks/ToC/variations/DefaultTocRenderer.jsx +3 -3
  74. package/src/components/manage/Blocks/ToC/variations/HorizontalMenu.jsx +2 -2
  75. package/src/components/manage/Blocks/Video/Body.jsx +1 -1
  76. package/src/components/manage/Blocks/Video/Edit.jsx +4 -2
  77. package/src/components/manage/Blocks/Video/VideoSidebar.jsx +1 -1
  78. package/src/components/manage/Blocks/Video/View.jsx +1 -1
  79. package/src/components/manage/ConditionalLink/ConditionalLink.jsx +1 -1
  80. package/src/components/manage/Contents/Contents.jsx +26 -28
  81. package/src/components/manage/Contents/ContentsBreadcrumbs.jsx +1 -1
  82. package/src/components/manage/Contents/ContentsItem.jsx +6 -3
  83. package/src/components/manage/Contents/ContentsPropertiesModal.jsx +4 -3
  84. package/src/components/manage/Contents/ContentsRenameModal.jsx +5 -3
  85. package/src/components/manage/Contents/ContentsTagsModal.jsx +3 -3
  86. package/src/components/manage/Contents/ContentsUploadModal.jsx +7 -4
  87. package/src/components/manage/Contents/ContentsWorkflowModal.jsx +10 -3
  88. package/src/components/manage/Controlpanels/AddonsControlpanel.jsx +6 -4
  89. package/src/components/manage/Controlpanels/Aliases.jsx +7 -5
  90. package/src/components/manage/Controlpanels/ContentType.jsx +12 -4
  91. package/src/components/manage/Controlpanels/ContentTypeLayout.jsx +11 -7
  92. package/src/components/manage/Controlpanels/ContentTypeSchema.jsx +7 -4
  93. package/src/components/manage/Controlpanels/ContentTypes.jsx +7 -5
  94. package/src/components/manage/Controlpanels/ContentTypesActions.jsx +1 -1
  95. package/src/components/manage/Controlpanels/Controlpanel.jsx +9 -4
  96. package/src/components/manage/Controlpanels/Controlpanels.jsx +11 -3
  97. package/src/components/manage/Controlpanels/DatabaseInformation.jsx +5 -4
  98. package/src/components/manage/Controlpanels/Groups/GroupsControlpanel.jsx +16 -19
  99. package/src/components/manage/Controlpanels/Groups/RenderGroups.jsx +2 -2
  100. package/src/components/manage/Controlpanels/ModerateComments.jsx +7 -3
  101. package/src/components/manage/Controlpanels/Relations/BrokenRelations.jsx +4 -4
  102. package/src/components/manage/Controlpanels/Relations/Relations.jsx +7 -5
  103. package/src/components/manage/Controlpanels/Relations/RelationsListing.jsx +7 -4
  104. package/src/components/manage/Controlpanels/Relations/RelationsMatrix.jsx +7 -5
  105. package/src/components/manage/Controlpanels/Rules/AddRule.jsx +9 -3
  106. package/src/components/manage/Controlpanels/Rules/ConfigureRule.jsx +7 -4
  107. package/src/components/manage/Controlpanels/Rules/EditRule.jsx +6 -3
  108. package/src/components/manage/Controlpanels/Rules/Rules.jsx +6 -4
  109. package/src/components/manage/Controlpanels/Rules/components/VariableModal.jsx +1 -1
  110. package/src/components/manage/Controlpanels/UndoControlpanel.jsx +9 -4
  111. package/src/components/manage/Controlpanels/UpgradeControlPanel.jsx +7 -5
  112. package/src/components/manage/Controlpanels/Users/RenderUsers.jsx +5 -3
  113. package/src/components/manage/Controlpanels/Users/UserGroupMembershipControlPanel.jsx +9 -6
  114. package/src/components/manage/Controlpanels/Users/UserGroupMembershipListing.jsx +9 -5
  115. package/src/components/manage/Controlpanels/Users/UserGroupMembershipMatrix.jsx +4 -3
  116. package/src/components/manage/Controlpanels/Users/UsersControlpanel.jsx +17 -20
  117. package/src/components/manage/Controlpanels/VersionOverview.jsx +1 -1
  118. package/src/components/manage/Controlpanels/index.tsx +5 -2
  119. package/src/components/manage/Delete/Delete.jsx +7 -3
  120. package/src/components/manage/Diff/Diff.jsx +13 -11
  121. package/src/components/manage/Diff/DiffField.jsx +4 -3
  122. package/src/components/manage/Display/Display.jsx +9 -4
  123. package/src/components/manage/DragDropList/DragDropList.jsx +1 -1
  124. package/src/components/manage/Edit/Edit.jsx +20 -23
  125. package/src/components/manage/Form/BlockDataForm.jsx +1 -1
  126. package/src/components/manage/Form/BlocksToolbar.jsx +10 -5
  127. package/src/components/manage/Form/Form.jsx +18 -20
  128. package/src/components/manage/Form/InlineForm.jsx +5 -3
  129. package/src/components/manage/Form/InlineFormState.js +1 -1
  130. package/src/components/manage/Form/ModalForm.jsx +4 -3
  131. package/src/components/manage/Form/UndoToolbar.jsx +2 -2
  132. package/src/components/manage/History/History.jsx +16 -11
  133. package/src/components/manage/LinkMore/LinkMore.jsx +3 -3
  134. package/src/components/manage/LinksToItem/LinksToItem.jsx +11 -11
  135. package/src/components/manage/LockingToastsFactory/LockingToastsFactory.jsx +2 -1
  136. package/src/components/manage/Messages/Messages.jsx +2 -2
  137. package/src/components/manage/Multilingual/CompareLanguages.jsx +3 -2
  138. package/src/components/manage/Multilingual/CreateTranslation.jsx +5 -6
  139. package/src/components/manage/Multilingual/ManageTranslations.jsx +9 -6
  140. package/src/components/manage/Multilingual/TranslationObject.jsx +5 -5
  141. package/src/components/manage/Pluggable/index.js +1 -1
  142. package/src/components/manage/Preferences/ChangePassword.jsx +8 -5
  143. package/src/components/manage/Preferences/PersonalInformation.jsx +4 -3
  144. package/src/components/manage/Preferences/PersonalPreferences.jsx +5 -4
  145. package/src/components/manage/Rules/Rules.jsx +6 -5
  146. package/src/components/manage/Sharing/Sharing.jsx +12 -5
  147. package/src/components/manage/Sidebar/AlignBlock.jsx +1 -1
  148. package/src/components/manage/Sidebar/ObjectBrowser.jsx +1 -1
  149. package/src/components/manage/Sidebar/ObjectBrowserBody.jsx +1 -1
  150. package/src/components/manage/Sidebar/ObjectBrowserNav.jsx +2 -1
  151. package/src/components/manage/Sidebar/Sidebar.jsx +4 -3
  152. package/src/components/manage/Sidebar/SidebarPopup.jsx +1 -1
  153. package/src/components/manage/TextLineEdit/TextLineEdit.jsx +1 -1
  154. package/src/components/manage/Toolbar/More.jsx +9 -10
  155. package/src/components/manage/Toolbar/PersonalTools.jsx +3 -3
  156. package/src/components/manage/Toolbar/StandardWrapper.jsx +1 -1
  157. package/src/components/manage/Toolbar/Toolbar.jsx +12 -15
  158. package/src/components/manage/Toolbar/Types.jsx +7 -2
  159. package/src/components/manage/Widgets/ArrayWidget.jsx +4 -3
  160. package/src/components/manage/Widgets/ButtonsWidget.jsx +1 -1
  161. package/src/components/manage/Widgets/ColorPickerWidget.tsx +2 -1
  162. package/src/components/manage/Widgets/DatetimeWidget.jsx +2 -2
  163. package/src/components/manage/Widgets/FileWidget.jsx +4 -2
  164. package/src/components/manage/Widgets/FormFieldWrapper.jsx +2 -2
  165. package/src/components/manage/Widgets/IdWidget.jsx +7 -3
  166. package/src/components/manage/Widgets/ImageWidget.jsx +6 -5
  167. package/src/components/manage/Widgets/InternalUrlWidget.jsx +6 -2
  168. package/src/components/manage/Widgets/ObjectBrowserWidget.jsx +5 -1
  169. package/src/components/manage/Widgets/ObjectListWidget.jsx +4 -2
  170. package/src/components/manage/Widgets/ObjectListWidget.stories.js +1 -1
  171. package/src/components/manage/Widgets/ObjectWidget.stories.jsx +1 -1
  172. package/src/components/manage/Widgets/QuerySortOnWidget.jsx +3 -1
  173. package/src/components/manage/Widgets/QueryWidget.jsx +8 -3
  174. package/src/components/manage/Widgets/RecurrenceWidget/ByDayField.jsx +1 -1
  175. package/src/components/manage/Widgets/RecurrenceWidget/MonthOfTheYearField.jsx +2 -2
  176. package/src/components/manage/Widgets/RecurrenceWidget/Occurences.jsx +2 -2
  177. package/src/components/manage/Widgets/RecurrenceWidget/RecurrenceWidget.jsx +7 -3
  178. package/src/components/manage/Widgets/RecurrenceWidget/SelectInput.jsx +1 -1
  179. package/src/components/manage/Widgets/RecurrenceWidget/WeekdayOfTheMonthField.jsx +2 -2
  180. package/src/components/manage/Widgets/RecurrenceWidget/WeekdayOfTheMonthIndexField.jsx +1 -1
  181. package/src/components/manage/Widgets/ReferenceWidget.jsx +11 -3
  182. package/src/components/manage/Widgets/RegistryImageWidget.jsx +3 -2
  183. package/src/components/manage/Widgets/SchemaWidget.jsx +7 -1
  184. package/src/components/manage/Widgets/SelectAutoComplete.jsx +5 -2
  185. package/src/components/manage/Widgets/SelectStyling.jsx +1 -1
  186. package/src/components/manage/Widgets/SelectUtils.js +4 -2
  187. package/src/components/manage/Widgets/SelectWidget.jsx +6 -3
  188. package/src/components/manage/Widgets/SelectWidget.stories.jsx +1 -1
  189. package/src/components/manage/Widgets/TextWidget.jsx +1 -1
  190. package/src/components/manage/Widgets/TokenWidget.jsx +2 -2
  191. package/src/components/manage/Widgets/UrlWidget.jsx +2 -2
  192. package/src/components/manage/Widgets/VocabularyTermsWidget.jsx +6 -3
  193. package/src/components/manage/Workflow/Workflow.jsx +7 -6
  194. package/src/components/manage/WorkingCopyToastsFactory/WorkingCopyToastsFactory.jsx +3 -3
  195. package/src/components/theme/Anontools/Anontools.jsx +1 -1
  196. package/src/components/theme/App/App.jsx +17 -24
  197. package/src/components/theme/Avatar/Avatar.jsx +1 -1
  198. package/src/components/theme/Breadcrumbs/Breadcrumbs.jsx +4 -3
  199. package/src/components/theme/Comments/CommentEditModal.jsx +2 -2
  200. package/src/components/theme/Comments/Comments.jsx +5 -8
  201. package/src/components/theme/ContactForm/ContactForm.jsx +7 -4
  202. package/src/components/theme/ContentMetadataTags/ContentMetadataTags.jsx +4 -7
  203. package/src/components/theme/EventDetails/EventDetails.jsx +2 -2
  204. package/src/components/theme/Footer/Footer.jsx +3 -3
  205. package/src/components/theme/Header/Header.jsx +5 -7
  206. package/src/components/theme/Icon/Icon.stories.jsx +1 -1
  207. package/src/components/theme/Image/Image.jsx +1 -1
  208. package/src/components/theme/LanguageSelector/LanguageSelector.jsx +6 -7
  209. package/src/components/theme/Login/Login.jsx +6 -5
  210. package/src/components/theme/Logo/Logo.jsx +3 -6
  211. package/src/components/theme/Logout/Logout.jsx +3 -2
  212. package/src/components/theme/MultilingualRedirector/MultilingualRedirector.jsx +2 -2
  213. package/src/components/theme/Navigation/ContextNavigation.jsx +3 -2
  214. package/src/components/theme/Navigation/NavItem.jsx +2 -1
  215. package/src/components/theme/Navigation/Navigation.jsx +4 -2
  216. package/src/components/theme/Navigation/withContentNavigation.js +2 -2
  217. package/src/components/theme/NotFound/NotFound.jsx +6 -3
  218. package/src/components/theme/Pagination/Pagination.jsx +2 -2
  219. package/src/components/theme/PasswordReset/PasswordReset.jsx +2 -2
  220. package/src/components/theme/PasswordReset/RequestPasswordReset.jsx +3 -2
  221. package/src/components/theme/Register/Register.jsx +4 -3
  222. package/src/components/theme/Search/Search.jsx +7 -5
  223. package/src/components/theme/Search/SearchTags.jsx +1 -1
  224. package/src/components/theme/SearchWidget/SearchWidget.jsx +4 -3
  225. package/src/components/theme/Sitemap/Sitemap.jsx +4 -3
  226. package/src/components/theme/Unauthorized/Unauthorized.jsx +1 -1
  227. package/src/components/theme/View/AlbumView.jsx +2 -1
  228. package/src/components/theme/View/DefaultView.jsx +4 -3
  229. package/src/components/theme/View/EventDatesInfo.jsx +1 -1
  230. package/src/components/theme/View/EventView.jsx +3 -2
  231. package/src/components/theme/View/FileView.jsx +1 -1
  232. package/src/components/theme/View/ImageView.jsx +1 -1
  233. package/src/components/theme/View/LinkView.jsx +2 -2
  234. package/src/components/theme/View/ListingView.jsx +1 -1
  235. package/src/components/theme/View/NewsItemView.jsx +2 -1
  236. package/src/components/theme/View/RenderBlocks.jsx +6 -5
  237. package/src/components/theme/View/SummaryView.jsx +1 -1
  238. package/src/components/theme/View/TabularView.jsx +1 -1
  239. package/src/components/theme/View/View.jsx +9 -13
  240. package/src/components/theme/Widgets/BooleanWidget.jsx +1 -1
  241. package/src/components/theme/Widgets/DateWidget.jsx +1 -1
  242. package/src/components/theme/Widgets/DatetimeWidget.jsx +1 -1
  243. package/src/components/theme/Widgets/EmailWidget.jsx +1 -1
  244. package/src/components/theme/Widgets/FileWidget.jsx +2 -2
  245. package/src/components/theme/Widgets/ImageWidget.jsx +1 -1
  246. package/src/components/theme/Widgets/RelationWidget.jsx +4 -4
  247. package/src/components/theme/Widgets/TokenWidget.jsx +1 -1
  248. package/src/components/theme/Widgets/UrlWidget.jsx +1 -1
  249. package/src/config/Blocks.jsx +1 -1
  250. package/src/config/Components.jsx +3 -1
  251. package/src/config/index.js +1 -1
  252. package/src/config/slots.js +1 -1
  253. package/src/express-middleware/files.js +1 -1
  254. package/src/express-middleware/images.js +1 -1
  255. package/src/express-middleware/robotstxt.js +1 -1
  256. package/src/helpers/Api/Api.js +1 -1
  257. package/src/helpers/AsyncConnect/AsyncConnect.test.js +4 -1
  258. package/src/helpers/AuthToken/AuthToken.js +2 -2
  259. package/src/helpers/Blocks/Blocks.js +9 -3
  260. package/src/helpers/Blocks/cloneBlocks.test.js +1 -1
  261. package/src/helpers/Content/Content.js +7 -1
  262. package/src/helpers/Extensions/withBlockSchemaEnhancer.jsx +2 -1
  263. package/src/helpers/FormValidation/FormValidation.jsx +4 -1
  264. package/src/helpers/Html/Html.jsx +1 -1
  265. package/src/helpers/Loadable/Loadable.jsx +2 -2
  266. package/src/helpers/Site/index.js +1 -1
  267. package/src/helpers/Sitemap/Sitemap.js +2 -2
  268. package/src/helpers/Url/Url.js +5 -1
  269. package/src/helpers/User/User.js +1 -1
  270. package/src/helpers/Utils/UseDetectClickOutside.stories.jsx +1 -1
  271. package/src/helpers/Utils/Utils.jsx +5 -1
  272. package/src/helpers/Utils/useDetectClickOutside.js +1 -1
  273. package/src/helpers/Utils/usePagination.js +2 -1
  274. package/src/helpers/Workflows/Workflows.js +2 -1
  275. package/src/hooks/user/useUser.js +1 -1
  276. package/src/middleware/api.js +7 -4
  277. package/src/middleware/storeProtectLoadUtils.js +1 -1
  278. package/src/reducers/actions/actions.js +2 -5
  279. package/src/reducers/breadcrumbs/breadcrumbs.js +3 -6
  280. package/src/reducers/content/content.js +4 -2
  281. package/src/reducers/controlpanels/controlpanels.js +1 -1
  282. package/src/reducers/messages/messages.js +3 -1
  283. package/src/reducers/navigation/navigation.js +3 -6
  284. package/src/reducers/navroot/navroot.js +2 -5
  285. package/src/reducers/querystringsearch/querystringsearch.js +3 -2
  286. package/src/reducers/schema/schema.js +7 -1
  287. package/src/reducers/search/search.js +3 -2
  288. package/src/reducers/sidebar/sidebar.js +1 -1
  289. package/src/reducers/types/types.js +2 -5
  290. package/src/reducers/users/users.js +1 -1
  291. package/src/reducers/workingcopy/workingcopy.js +1 -1
  292. package/src/routes.js +24 -26
  293. package/src/server.jsx +7 -7
  294. package/src/start-client.jsx +3 -1
  295. package/src/storybook.jsx +1 -1
  296. package/types/config/Components.d.ts +3 -3
@@ -3,7 +3,11 @@
3
3
  * @module helpers/Url
4
4
  */
5
5
 
6
- import { last, memoize, isArray, isObject, isString } from 'lodash';
6
+ import last from 'lodash/last';
7
+ import memoize from 'lodash/memoize';
8
+ import isArray from 'lodash/isArray';
9
+ import isObject from 'lodash/isObject';
10
+ import isString from 'lodash/isString';
7
11
  import { urlRegex, telRegex, mailRegex } from './urlRegex';
8
12
  import prependHttp from 'prepend-http';
9
13
  import config from '@plone/volto/registry';
@@ -2,7 +2,7 @@
2
2
  * User helper.
3
3
  * @module helpers/AuthToken
4
4
  */
5
- import { intersection } from 'lodash';
5
+ import intersection from 'lodash/intersection';
6
6
 
7
7
  /**
8
8
  * Checks if the user has one or more given roles.
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { useDetectClickOutside } from './useDetectClickOutside';
3
3
  import { createPortal } from 'react-dom';
4
4
  import { usePopper } from 'react-popper';
5
- import { BlockChooser } from '@plone/volto/components';
5
+ import BlockChooser from '@plone/volto/components/manage/BlockChooser/BlockChooser';
6
6
 
7
7
  function OpenedChooser(props) {
8
8
  const blockChooserRef = useDetectClickOutside({
@@ -1,4 +1,8 @@
1
- import { cloneDeepWith, flatten, isEqual, isObject, transform } from 'lodash';
1
+ import cloneDeepWith from 'lodash/cloneDeepWith';
2
+ import flatten from 'lodash/flatten';
3
+ import isEqual from 'lodash/isEqual';
4
+ import isObject from 'lodash/isObject';
5
+ import transform from 'lodash/transform';
2
6
  import React from 'react';
3
7
  import { matchPath } from 'react-router';
4
8
  import config from '@plone/volto/registry';
@@ -1,5 +1,5 @@
1
1
  import { useCallback, useEffect, useRef } from 'react';
2
- import { doesNodeContainClick } from 'semantic-ui-react/dist/commonjs/lib';
2
+ import doesNodeContainClick from 'semantic-ui-react/dist/commonjs/lib/doesNodeContainClick';
3
3
 
4
4
  /**
5
5
  * Hook used to detect clicks outside a component (or an escape key press).
@@ -2,7 +2,8 @@ import React, { useRef, useEffect } from 'react';
2
2
  import { useHistory, useLocation } from 'react-router-dom';
3
3
  import qs from 'query-string';
4
4
  import { useSelector } from 'react-redux';
5
- import { findBlocks, slugify } from '@plone/volto/helpers';
5
+ import { findBlocks } from '@plone/volto/helpers/Blocks/Blocks';
6
+ import { slugify } from '@plone/volto/helpers/Utils/Utils';
6
7
 
7
8
  /**
8
9
  * @function useCreatePageQueryStringKey
@@ -4,7 +4,8 @@
4
4
  */
5
5
 
6
6
  import config from '@plone/volto/registry';
7
- import { last, split } from 'lodash';
7
+ import last from 'lodash/last';
8
+ import split from 'lodash/split';
8
9
 
9
10
  /**
10
11
  * Maps the available transitions to the current list of colors and returns a
@@ -1,7 +1,7 @@
1
1
  import { useEffect } from 'react';
2
2
  import { useDispatch, useSelector } from 'react-redux';
3
3
  import jwtDecode from 'jwt-decode';
4
- import { getUser } from '@plone/volto/actions';
4
+ import { getUser } from '@plone/volto/actions/users/users';
5
5
 
6
6
  const useUser = () => {
7
7
  const users = useSelector((state) => state.users);
@@ -5,7 +5,9 @@
5
5
 
6
6
  import Cookies from 'universal-cookie';
7
7
  import jwtDecode from 'jwt-decode';
8
- import { compact, flatten, union } from 'lodash';
8
+ import compact from 'lodash/compact';
9
+ import flatten from 'lodash/flatten';
10
+ import union from 'lodash/union';
9
11
  import { matchPath } from 'react-router';
10
12
  import qs from 'query-string';
11
13
 
@@ -17,12 +19,13 @@ import {
17
19
  RESET_APIERROR,
18
20
  SET_APIERROR,
19
21
  } from '@plone/volto/constants/ActionTypes';
20
- import { changeLanguage, updateUploadedFiles } from '@plone/volto/actions';
22
+ import { changeLanguage } from '@plone/volto/actions/language/language';
23
+ import { updateUploadedFiles } from '@plone/volto/actions/content/content';
21
24
  import {
22
25
  toGettextLang,
23
26
  toReactIntlLang,
24
- getCookieOptions,
25
- } from '@plone/volto/helpers';
27
+ } from '@plone/volto/helpers/Utils/Utils';
28
+ import { getCookieOptions } from '@plone/volto/helpers/Cookies/cookies';
26
29
  let socket = null;
27
30
 
28
31
  /**
@@ -1,4 +1,4 @@
1
- import { isCmsUi } from '@plone/volto/helpers';
1
+ import { isCmsUi } from '@plone/volto/helpers/Url/Url';
2
2
 
3
3
  const LOCATION_CHANGE = '@@router/LOCATION_CHANGE';
4
4
  const PROTECT_START = '@@loadProtector/START';
@@ -4,11 +4,8 @@
4
4
  */
5
5
 
6
6
  import { GET_CONTENT, LIST_ACTIONS } from '@plone/volto/constants/ActionTypes';
7
- import {
8
- flattenToAppURL,
9
- getBaseUrl,
10
- hasApiExpander,
11
- } from '@plone/volto/helpers';
7
+ import { flattenToAppURL, getBaseUrl } from '@plone/volto/helpers/Url/Url';
8
+ import { hasApiExpander } from '@plone/volto/helpers/Utils/Utils';
12
9
 
13
10
  const initialState = {
14
11
  error: null,
@@ -3,12 +3,9 @@
3
3
  * @module reducers/breadcrumbs/breadcrumbs
4
4
  */
5
5
 
6
- import { map } from 'lodash';
7
- import {
8
- flattenToAppURL,
9
- getBaseUrl,
10
- hasApiExpander,
11
- } from '@plone/volto/helpers';
6
+ import map from 'lodash/map';
7
+ import { flattenToAppURL, getBaseUrl } from '@plone/volto/helpers/Url/Url';
8
+ import { hasApiExpander } from '@plone/volto/helpers/Utils/Utils';
12
9
 
13
10
  import {
14
11
  GET_BREADCRUMBS,
@@ -3,9 +3,11 @@
3
3
  * @module reducers/content/content
4
4
  */
5
5
 
6
- import { map, mapKeys, omit } from 'lodash';
6
+ import map from 'lodash/map';
7
+ import mapKeys from 'lodash/mapKeys';
8
+ import omit from 'lodash/omit';
7
9
 
8
- import { flattenToAppURL } from '@plone/volto/helpers';
10
+ import { flattenToAppURL } from '@plone/volto/helpers/Url/Url';
9
11
 
10
12
  import {
11
13
  CREATE_CONTENT,
@@ -2,7 +2,7 @@
2
2
  * Controlpanels reducer.
3
3
  * @module reducers/controlpanels/controlpanels
4
4
  */
5
- import { flattenToAppURL } from '@plone/volto/helpers';
5
+ import { flattenToAppURL } from '@plone/volto/helpers/Url/Url';
6
6
  import {
7
7
  GET_CONTROLPANEL,
8
8
  POST_CONTROLPANEL,
@@ -2,7 +2,9 @@
2
2
  * Messages reducer.
3
3
  * @module reducers/messages/messages
4
4
  */
5
- import { map, concat, filter } from 'lodash';
5
+ import map from 'lodash/map';
6
+ import concat from 'lodash/concat';
7
+ import filter from 'lodash/filter';
6
8
 
7
9
  import {
8
10
  ADD_MESSAGE,
@@ -3,12 +3,9 @@
3
3
  * @module reducers/navigation/navigation
4
4
  */
5
5
 
6
- import { map } from 'lodash';
7
- import {
8
- flattenToAppURL,
9
- getBaseUrl,
10
- hasApiExpander,
11
- } from '@plone/volto/helpers';
6
+ import map from 'lodash/map';
7
+ import { flattenToAppURL, getBaseUrl } from '@plone/volto/helpers/Url/Url';
8
+ import { hasApiExpander } from '@plone/volto/helpers/Utils/Utils';
12
9
 
13
10
  import {
14
11
  GET_CONTENT,
@@ -2,11 +2,8 @@
2
2
  * Navroot reducer.
3
3
  * @module reducers/navroot/navroot
4
4
  */
5
- import {
6
- flattenToAppURL,
7
- getBaseUrl,
8
- hasApiExpander,
9
- } from '@plone/volto/helpers';
5
+ import { flattenToAppURL, getBaseUrl } from '@plone/volto/helpers/Url/Url';
6
+ import { hasApiExpander } from '@plone/volto/helpers/Utils/Utils';
10
7
 
11
8
  import { GET_NAVROOT, GET_CONTENT } from '@plone/volto/constants/ActionTypes';
12
9
 
@@ -1,5 +1,6 @@
1
- import { map, omit } from 'lodash';
2
- import { flattenToAppURL } from '@plone/volto/helpers';
1
+ import map from 'lodash/map';
2
+ import omit from 'lodash/omit';
3
+ import { flattenToAppURL } from '@plone/volto/helpers/Url/Url';
3
4
 
4
5
  const GET_QUERYSTRING_RESULTS = 'GET_QUERYSTRING_RESULTS';
5
6
  const RESET_QUERYSTRING_RESULTS = 'RESET_QUERYSTRING_RESULTS';
@@ -3,7 +3,13 @@
3
3
  * @module reducers/schema/schema
4
4
  */
5
5
 
6
- import { flatten, keys, pickBy, isArray, map, mapKeys, merge } from 'lodash';
6
+ import flatten from 'lodash/flatten';
7
+ import keys from 'lodash/keys';
8
+ import pickBy from 'lodash/pickBy';
9
+ import isArray from 'lodash/isArray';
10
+ import map from 'lodash/map';
11
+ import mapKeys from 'lodash/mapKeys';
12
+ import merge from 'lodash/merge';
7
13
 
8
14
  import {
9
15
  GET_SCHEMA,
@@ -3,8 +3,9 @@
3
3
  * @module reducers/search/search
4
4
  */
5
5
 
6
- import { map, omit } from 'lodash';
7
- import { flattenToAppURL } from '@plone/volto/helpers';
6
+ import map from 'lodash/map';
7
+ import omit from 'lodash/omit';
8
+ import { flattenToAppURL } from '@plone/volto/helpers/Url/Url';
8
9
 
9
10
  import {
10
11
  RESET_SEARCH_CONTENT,
@@ -3,7 +3,7 @@
3
3
  * @module reducers/sidebar/sidebar
4
4
  */
5
5
 
6
- import { union } from 'lodash';
6
+ import union from 'lodash/union';
7
7
 
8
8
  import {
9
9
  SET_METADATA_FIELDSETS,
@@ -4,11 +4,8 @@
4
4
  */
5
5
 
6
6
  import { GET_CONTENT, GET_TYPES } from '@plone/volto/constants/ActionTypes';
7
- import {
8
- flattenToAppURL,
9
- getBaseUrl,
10
- hasApiExpander,
11
- } from '@plone/volto/helpers';
7
+ import { flattenToAppURL, getBaseUrl } from '@plone/volto/helpers/Url/Url';
8
+ import { hasApiExpander } from '@plone/volto/helpers/Utils/Utils';
12
9
 
13
10
  const initialState = {
14
11
  error: null,
@@ -3,7 +3,7 @@
3
3
  * @module reducers/users/users
4
4
  */
5
5
 
6
- import { startsWith } from 'lodash';
6
+ import startsWith from 'lodash/startsWith';
7
7
 
8
8
  import {
9
9
  CREATE_USER,
@@ -8,7 +8,7 @@ import {
8
8
  CREATE_WORKING_COPY,
9
9
  REMOVE_WORKING_COPY,
10
10
  } from '@plone/volto/constants/ActionTypes';
11
- import { flattenToAppURL } from '@plone/volto/helpers';
11
+ import { flattenToAppURL } from '@plone/volto/helpers/Url/Url';
12
12
 
13
13
  const initialState = {
14
14
  info: {},
package/src/routes.js CHANGED
@@ -3,30 +3,30 @@
3
3
  * @module routes
4
4
  */
5
5
  import debug from 'debug';
6
- import { compact } from 'lodash';
7
- import {
8
- Add,
9
- Aliases,
10
- ChangePassword,
11
- ContactForm,
12
- CreateTranslation,
13
- Delete,
14
- Diff,
15
- Edit,
16
- History,
17
- LinksToItem,
18
- Login,
19
- Logout,
20
- ManageTranslations,
21
- NotFound,
22
- PasswordReset,
23
- Register,
24
- RequestPasswordReset,
25
- Search,
26
- Sharing,
27
- Sitemap,
28
- PersonalInformation,
29
- } from '@plone/volto/components';
6
+ import compact from 'lodash/compact';
7
+
8
+ import Add from '@plone/volto/components/manage/Add/Add';
9
+ import Aliases from '@plone/volto/components/manage/Aliases/Aliases';
10
+ import ChangePassword from '@plone/volto/components/manage/Preferences/ChangePassword';
11
+ import ContactForm from '@plone/volto/components/theme/ContactForm/ContactForm';
12
+ import CreateTranslation from '@plone/volto/components/manage/Multilingual/CreateTranslation';
13
+ import Delete from '@plone/volto/components/manage/Delete/Delete';
14
+ import Diff from '@plone/volto/components/manage/Diff/Diff';
15
+ import Edit from '@plone/volto/components/manage/Edit/Edit';
16
+ import History from '@plone/volto/components/manage/History/History';
17
+ import LinksToItem from '@plone/volto/components/manage/LinksToItem/LinksToItem';
18
+ import Login from '@plone/volto/components/theme/Login/Login';
19
+ import Logout from '@plone/volto/components/theme/Logout/Logout';
20
+ import ManageTranslations from '@plone/volto/components/manage/Multilingual/ManageTranslations';
21
+ import NotFound from '@plone/volto/components/theme/NotFound/NotFound';
22
+ import PasswordReset from '@plone/volto/components/theme/PasswordReset/PasswordReset';
23
+ import Register from '@plone/volto/components/theme/Register/Register';
24
+ import RequestPasswordReset from '@plone/volto/components/theme/PasswordReset/RequestPasswordReset';
25
+ import Search from '@plone/volto/components/theme/Search/Search';
26
+ import Sharing from '@plone/volto/components/manage/Sharing/Sharing';
27
+ import Sitemap from '@plone/volto/components/theme/Sitemap/Sitemap';
28
+ import PersonalInformation from '@plone/volto/components/manage/Preferences/PersonalInformation';
29
+
30
30
  import { Contents } from '@plone/volto/components/manage/Contents';
31
31
  import { Rules } from '@plone/volto/components/manage/Rules';
32
32
  import {
@@ -52,8 +52,6 @@ import {
52
52
  UpgradeControlPanel,
53
53
  } from '@plone/volto/components/manage/Controlpanels';
54
54
 
55
- // Deliberatelly use of absolute path of these components, since we do not want them
56
- // in the components/index.js file.
57
55
  import App from '@plone/volto/components/theme/App/App';
58
56
  import View from '@plone/volto/components/theme/View/View';
59
57
 
package/src/server.jsx CHANGED
@@ -8,7 +8,7 @@ import express from 'express';
8
8
  import { renderToString } from 'react-dom/server';
9
9
  import { createMemoryHistory } from 'history';
10
10
  import { parse as parseUrl } from 'url';
11
- import { keys } from 'lodash';
11
+ import keys from 'lodash/keys';
12
12
  import locale from 'locale';
13
13
  import { detect } from 'detect-browser';
14
14
  import path from 'path';
@@ -21,16 +21,16 @@ import debug from 'debug';
21
21
  import routes from '@root/routes';
22
22
  import config from '@plone/volto/registry';
23
23
 
24
+ import { flattenToAppURL } from '@plone/volto/helpers/Url/Url';
25
+ import Html from '@plone/volto/helpers/Html/Html';
26
+ import Api from '@plone/volto/helpers/Api/Api';
27
+ import { persistAuthToken } from '@plone/volto/helpers/AuthToken/AuthToken';
24
28
  import {
25
- flattenToAppURL,
26
- Html,
27
- Api,
28
- persistAuthToken,
29
29
  toBackendLang,
30
30
  toGettextLang,
31
31
  toReactIntlLang,
32
- } from '@plone/volto/helpers';
33
- import { changeLanguage } from '@plone/volto/actions';
32
+ } from '@plone/volto/helpers/Utils/Utils';
33
+ import { changeLanguage } from '@plone/volto/actions/language/language';
34
34
 
35
35
  import userSession from '@plone/volto/reducers/userSession/userSession';
36
36
 
@@ -14,7 +14,9 @@ import routes from '@root/routes';
14
14
  import config from '@plone/volto/registry';
15
15
 
16
16
  import configureStore from '@plone/volto/store';
17
- import { Api, persistAuthToken, ScrollToTop } from '@plone/volto/helpers';
17
+ import Api from '@plone/volto/helpers/Api/Api';
18
+ import { persistAuthToken } from '@plone/volto/helpers/AuthToken/AuthToken';
19
+ import ScrollToTop from '@plone/volto/helpers/ScrollToTop/ScrollToTop';
18
20
 
19
21
  export const history = createBrowserHistory();
20
22
 
package/src/storybook.jsx CHANGED
@@ -6,7 +6,7 @@ import { Provider } from 'react-redux';
6
6
  import { StaticRouter } from 'react-router-dom';
7
7
  import { IntlProvider } from 'react-intl';
8
8
  import { PluggablesProvider } from '@plone/volto/components/manage/Pluggable';
9
- import { useUndoManager } from '@plone/volto/helpers';
9
+ import useUndoManager from '@plone/volto/helpers/UndoManager/useUndoManager';
10
10
  import configureStore from 'redux-mock-store';
11
11
  import configureRealStore from '@plone/volto/store';
12
12
 
@@ -9,6 +9,6 @@ export namespace components {
9
9
  export { Image as component };
10
10
  }
11
11
  }
12
- import { PreviewImage as PreviewImage_1 } from '@plone/volto/components';
13
- import { App as App_1 } from '@plone/volto/components';
14
- import { Image as Image_1 } from '@plone/volto/components';
12
+ import PreviewImage_1 from '@plone/volto/components/theme/PreviewImage/PreviewImage';
13
+ import App_1 from '@plone/volto/components/theme/App/App';
14
+ import Image_1 from '@plone/volto/components/theme/Image/Image';