@strapi/admin 4.3.4 → 4.3.7

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 (529) hide show
  1. package/admin/src/StrapiApp.js +23 -23
  2. package/admin/src/components/AuthenticatedApp/index.js +15 -12
  3. package/admin/src/components/AuthenticatedApp/utils/api.js +1 -1
  4. package/admin/src/components/AutoReloadOverlayBlockerProvider/index.js +8 -6
  5. package/admin/src/components/ConfigurationsProvider/index.js +21 -12
  6. package/admin/src/components/ConfigurationsProvider/reducer.js +1 -1
  7. package/admin/src/components/GuidedTour/Homepage/components/Stepper.js +1 -1
  8. package/admin/src/components/GuidedTour/Homepage/index.js +2 -2
  9. package/admin/src/components/GuidedTour/Modal/components/Content.js +6 -6
  10. package/admin/src/components/GuidedTour/Modal/components/Modal.js +1 -1
  11. package/admin/src/components/GuidedTour/Modal/index.js +2 -4
  12. package/admin/src/components/GuidedTour/Modal/reducer.js +1 -1
  13. package/admin/src/components/GuidedTour/index.js +4 -4
  14. package/admin/src/components/GuidedTour/init.js +2 -2
  15. package/admin/src/components/GuidedTour/reducer.js +1 -1
  16. package/admin/src/components/GuidedTour/utils/isGuidedTourCompleted.js +1 -1
  17. package/admin/src/components/GuidedTour/utils/persistStateToLocaleStorage.js +4 -4
  18. package/admin/src/components/LanguageProvider/index.js +1 -1
  19. package/admin/src/components/LanguageProvider/init.js +1 -1
  20. package/admin/src/components/LeftMenu/index.js +6 -6
  21. package/admin/src/components/Notifications/Notification/index.js +3 -4
  22. package/admin/src/components/Notifications/index.js +2 -2
  23. package/admin/src/components/Notifications/reducer.js +2 -2
  24. package/admin/src/components/PluginsInitializer/index.js +4 -2
  25. package/admin/src/components/PluginsInitializer/init.js +1 -1
  26. package/admin/src/components/PluginsInitializer/reducer.js +1 -1
  27. package/admin/src/components/PrivateRoute/index.js +1 -1
  28. package/admin/src/components/RBACProvider/actions.js +1 -1
  29. package/admin/src/components/RBACProvider/index.js +1 -1
  30. package/admin/src/components/RBACProvider/reducer.js +2 -2
  31. package/admin/src/components/ThemeToggleProvider/index.js +1 -1
  32. package/admin/src/components/UpgradePlanModal/index.js +1 -1
  33. package/admin/src/content-manager/components/AttributeFilter/Filters.js +1 -1
  34. package/admin/src/content-manager/components/AttributeFilter/hooks/useAllowedAttributes.js +1 -1
  35. package/admin/src/content-manager/components/AttributeFilter/index.js +1 -1
  36. package/admin/src/content-manager/components/Block/index.js +1 -1
  37. package/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js +7 -12
  38. package/admin/src/content-manager/components/DragLayer/index.js +1 -1
  39. package/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js +1 -1
  40. package/admin/src/content-manager/components/DynamicTable/CellContent/RelationSingle/index.js +1 -1
  41. package/admin/src/content-manager/components/DynamicTable/CellContent/RepeatableComponent/index.js +1 -1
  42. package/admin/src/content-manager/components/DynamicTable/TableRows/index.js +4 -4
  43. package/admin/src/content-manager/components/DynamicTable/index.js +25 -4
  44. package/admin/src/content-manager/components/DynamicZone/components/AddComponentButton/index.js +18 -20
  45. package/admin/src/content-manager/components/DynamicZone/components/Component/index.js +1 -1
  46. package/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/Category/ComponentCard/index.js +1 -1
  47. package/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/index.js +3 -3
  48. package/admin/src/content-manager/components/DynamicZone/index.js +10 -10
  49. package/admin/src/content-manager/components/DynamicZone/utils/connect.js +1 -1
  50. package/admin/src/content-manager/components/DynamicZone/utils/select.js +1 -1
  51. package/admin/src/content-manager/components/EditViewDataManagerProvider/index.js +6 -6
  52. package/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js +1 -1
  53. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/cleanData.js +4 -4
  54. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js +18 -18
  55. package/admin/src/content-manager/components/FieldComponent/utils/connect.js +1 -1
  56. package/admin/src/content-manager/components/FieldComponent/utils/select.js +6 -6
  57. package/admin/src/content-manager/components/FormTitle/index.js +1 -1
  58. package/admin/src/content-manager/components/InjectionZoneList/index.js +1 -1
  59. package/admin/src/content-manager/components/InputJSON/index.js +5 -6
  60. package/admin/src/content-manager/components/InputJSON/jsonlint.js +13 -13
  61. package/admin/src/content-manager/components/InputUID/index.js +1 -1
  62. package/admin/src/content-manager/components/InputUID/regex.js +1 -1
  63. package/admin/src/content-manager/components/Inputs/index.js +32 -5
  64. package/admin/src/content-manager/components/Inputs/utils/connect.js +1 -1
  65. package/admin/src/content-manager/components/Inputs/utils/generateOptions.js +1 -1
  66. package/admin/src/content-manager/components/Inputs/utils/getStep.js +1 -5
  67. package/admin/src/content-manager/components/LayoutDndProvider/index.js +6 -6
  68. package/admin/src/content-manager/components/NonRepeatableComponent/index.js +4 -4
  69. package/admin/src/content-manager/components/PreviewWysiwyg/utils/mdRenderer.js +1 -1
  70. package/admin/src/content-manager/components/PreviewWysiwyg/utils/satinizeHtml.js +1 -1
  71. package/admin/src/content-manager/components/RepeatableComponent/AccordionGroupCustom/index.js +1 -1
  72. package/admin/src/content-manager/components/RepeatableComponent/DraggedItem/index.js +9 -15
  73. package/admin/src/content-manager/components/RepeatableComponent/DraggedItem/utils/connect.js +1 -1
  74. package/admin/src/content-manager/components/RepeatableComponent/index.js +5 -5
  75. package/admin/src/content-manager/components/RepeatableComponent/utils/connect.js +1 -1
  76. package/admin/src/content-manager/components/RepeatableComponent/utils/getComponentErrorKeys.js +2 -2
  77. package/admin/src/content-manager/components/SectionTitle/index.js +1 -1
  78. package/admin/src/content-manager/components/SelectMany/ListItem.js +1 -1
  79. package/admin/src/content-manager/components/SelectMany/index.js +4 -1
  80. package/admin/src/content-manager/components/SelectOne/SingleValue.js +3 -3
  81. package/admin/src/content-manager/components/SelectOne/index.js +3 -0
  82. package/admin/src/content-manager/components/SelectWrapper/Option.js +3 -3
  83. package/admin/src/content-manager/components/SelectWrapper/index.js +22 -26
  84. package/admin/src/content-manager/components/SelectWrapper/utils/connect.js +1 -1
  85. package/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +6 -11
  86. package/admin/src/content-manager/components/SingleTypeFormWrapper/utils/getRequestUrl.js +1 -1
  87. package/admin/src/content-manager/components/Wysiwyg/Editor.js +1 -1
  88. package/admin/src/content-manager/components/Wysiwyg/EditorLayout.js +1 -1
  89. package/admin/src/content-manager/components/Wysiwyg/WysiwygFooter.js +1 -1
  90. package/admin/src/content-manager/components/Wysiwyg/WysiwygNav.js +4 -4
  91. package/admin/src/content-manager/components/Wysiwyg/index.js +5 -5
  92. package/admin/src/content-manager/components/Wysiwyg/utils/utils.js +4 -4
  93. package/admin/src/content-manager/hooks/useContentTypeLayout/index.js +1 -1
  94. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js +3 -3
  95. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/reducer.js +1 -1
  96. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/utils/formatLayouts.js +7 -7
  97. package/admin/src/content-manager/hooks/useFindRedirectionLink/index.js +1 -1
  98. package/admin/src/content-manager/hooks/useFindRedirectionLink/selectors.js +1 -1
  99. package/admin/src/content-manager/hooks/useSyncRbac/reducer.js +1 -1
  100. package/admin/src/content-manager/hooks/useSyncRbac/selectors.js +2 -2
  101. package/admin/src/content-manager/pages/App/LeftMenu/index.js +8 -8
  102. package/admin/src/content-manager/pages/App/index.js +3 -3
  103. package/admin/src/content-manager/pages/App/reducer.js +1 -1
  104. package/admin/src/content-manager/pages/App/selectors.js +4 -4
  105. package/admin/src/content-manager/pages/App/useModels.js +1 -1
  106. package/admin/src/content-manager/pages/App/utils/generateModelsLinks.js +2 -2
  107. package/admin/src/content-manager/pages/CollectionTypeRecursivePath/index.js +1 -1
  108. package/admin/src/content-manager/pages/ComponentSetttingsView/index.js +2 -2
  109. package/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js +1 -1
  110. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFieldButton.js +5 -5
  111. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js +1 -1
  112. package/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js +1 -1
  113. package/admin/src/content-manager/pages/EditSettingsView/components/GenericInput.js +3 -3
  114. package/admin/src/content-manager/pages/EditSettingsView/components/ModalForm.js +36 -5
  115. package/admin/src/content-manager/pages/EditSettingsView/components/RelationalFieldButton.js +3 -3
  116. package/admin/src/content-manager/pages/EditSettingsView/components/RelationalFields.js +1 -1
  117. package/admin/src/content-manager/pages/EditSettingsView/index.js +21 -21
  118. package/admin/src/content-manager/pages/EditSettingsView/reducer.js +1 -1
  119. package/admin/src/content-manager/pages/EditSettingsView/utils/createPossibleMainFieldsForModelsAndComponents.js +2 -2
  120. package/admin/src/content-manager/pages/EditSettingsView/utils/getInputProps.js +1 -1
  121. package/admin/src/content-manager/pages/EditSettingsView/utils/layout.js +12 -12
  122. package/admin/src/content-manager/pages/EditView/DeleteLink/index.js +1 -1
  123. package/admin/src/content-manager/pages/EditView/DeleteLink/utils/connect.js +1 -1
  124. package/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/utils/connect.js +1 -1
  125. package/admin/src/content-manager/pages/EditView/Header/index.js +4 -4
  126. package/admin/src/content-manager/pages/EditView/Header/utils/connect.js +1 -1
  127. package/admin/src/content-manager/pages/EditView/Header/utils/getDraftRelations.js +3 -3
  128. package/admin/src/content-manager/pages/EditView/Informations/utils/getUnits.js +1 -1
  129. package/admin/src/content-manager/pages/EditView/index.js +7 -10
  130. package/admin/src/content-manager/pages/EditView/utils/createAttributesLayout.js +2 -2
  131. package/admin/src/content-manager/pages/EditView/utils/getFieldsActionMatchingPermissions.js +1 -1
  132. package/admin/src/content-manager/pages/EditViewLayoutManager/Permissions.js +1 -1
  133. package/admin/src/content-manager/pages/EditViewLayoutManager/reducer.js +1 -1
  134. package/admin/src/content-manager/pages/EditViewLayoutManager/selectors.js +1 -1
  135. package/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +6 -6
  136. package/admin/src/content-manager/pages/ListSettingsView/components/EditFieldForm.js +4 -3
  137. package/admin/src/content-manager/pages/ListSettingsView/components/Settings.js +9 -9
  138. package/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js +2 -2
  139. package/admin/src/content-manager/pages/ListSettingsView/index.js +10 -10
  140. package/admin/src/content-manager/pages/ListSettingsView/reducer.js +1 -1
  141. package/admin/src/content-manager/pages/ListSettingsView/utils/ellipsisCardTitle.js +1 -1
  142. package/admin/src/content-manager/pages/ListView/FieldPicker/index.js +8 -7
  143. package/admin/src/content-manager/pages/ListView/FieldPicker/utils/getAllAllowedHeader.js +1 -1
  144. package/admin/src/content-manager/pages/ListView/actions.js +1 -1
  145. package/admin/src/content-manager/pages/ListView/index.js +3 -3
  146. package/admin/src/content-manager/pages/ListView/reducer.js +2 -2
  147. package/admin/src/content-manager/pages/ListView/selectors.js +3 -3
  148. package/admin/src/content-manager/pages/ListView/utils/createPluginsFilter.js +1 -1
  149. package/admin/src/content-manager/pages/ListViewLayoutManager/Permissions.js +2 -2
  150. package/admin/src/content-manager/sharedReducers/crudReducer/actions.js +3 -3
  151. package/admin/src/content-manager/sharedReducers/crudReducer/reducer.js +1 -1
  152. package/admin/src/content-manager/sharedReducers/crudReducer/selectors.js +1 -1
  153. package/admin/src/content-manager/utils/checkIfAttributeIsDisplayable.js +1 -1
  154. package/admin/src/content-manager/utils/formatLayoutToApi.js +2 -2
  155. package/admin/src/content-manager/utils/generatePermissionsObject.js +3 -2
  156. package/admin/src/content-manager/utils/getFieldName.js +2 -2
  157. package/admin/src/content-manager/utils/getMaxTempKey.js +2 -2
  158. package/admin/src/content-manager/utils/getRequestUrl.js +1 -1
  159. package/admin/src/content-manager/utils/getTrad.js +1 -1
  160. package/admin/src/content-manager/utils/mergeMetasWithSchema.js +2 -2
  161. package/admin/src/content-manager/utils/removeKeyInObject.js +1 -1
  162. package/admin/src/content-manager/utils/removePasswordFieldsFromData.js +2 -2
  163. package/admin/src/core/apis/Plugin.js +1 -1
  164. package/admin/src/core/store/configureStore.js +1 -1
  165. package/admin/src/core/store/createReducer.js +1 -1
  166. package/admin/src/core/utils/axiosInstance.js +4 -4
  167. package/admin/src/core/utils/createHook.js +2 -2
  168. package/admin/src/hooks/useFetchEnabledPlugins/index.js +3 -3
  169. package/admin/src/hooks/useFetchMarketplacePlugins/index.js +3 -3
  170. package/admin/src/hooks/useFetchMarketplacePlugins/utils/api.js +1 -1
  171. package/admin/src/hooks/useFetchMarketplaceProviders/index.js +3 -3
  172. package/admin/src/hooks/useFetchPermissionsLayout/index.js +1 -1
  173. package/admin/src/hooks/useFetchPermissionsLayout/reducer.js +1 -1
  174. package/admin/src/hooks/useFetchRole/index.js +4 -4
  175. package/admin/src/hooks/useFetchRole/reducer.js +1 -1
  176. package/admin/src/hooks/useMenu/reducer.js +1 -1
  177. package/admin/src/hooks/useMenu/utils/getGeneralLinks.js +3 -1
  178. package/admin/src/hooks/useModels/index.js +1 -1
  179. package/admin/src/hooks/useModels/reducer.js +3 -3
  180. package/admin/src/hooks/useRolesList/reducer.js +1 -1
  181. package/admin/src/hooks/useSettingsForm/index.js +2 -2
  182. package/admin/src/hooks/useSettingsForm/reducer.js +1 -1
  183. package/admin/src/hooks/useSettingsMenu/index.js +2 -2
  184. package/admin/src/hooks/useSettingsMenu/init.js +1 -1
  185. package/admin/src/hooks/useSettingsMenu/reducer.js +3 -3
  186. package/admin/src/hooks/useSettingsMenu/utils/formatLinks.js +3 -3
  187. package/admin/src/hooks/useSettingsMenu/utils/sortLinks.js +1 -1
  188. package/admin/src/index.js +1 -1
  189. package/admin/src/layouts/UnauthenticatedLayout/LocaleToggle/index.js +1 -1
  190. package/admin/src/pages/Admin/Onboarding/index.js +2 -2
  191. package/admin/src/pages/Admin/index.js +2 -2
  192. package/admin/src/pages/App/index.js +13 -5
  193. package/admin/src/pages/App/reducer.js +1 -1
  194. package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +1 -1
  195. package/admin/src/pages/AuthPage/components/Login/BaseLogin.js +4 -4
  196. package/admin/src/pages/AuthPage/components/Login/index.js +2 -2
  197. package/admin/src/pages/AuthPage/components/Register/index.js +6 -6
  198. package/admin/src/pages/AuthPage/components/ResetPassword/index.js +5 -5
  199. package/admin/src/pages/AuthPage/init.js +1 -1
  200. package/admin/src/pages/AuthPage/reducer.js +1 -1
  201. package/admin/src/pages/AuthPage/utils/forms.js +2 -8
  202. package/admin/src/pages/HomePage/ContentBlocks.js +1 -1
  203. package/admin/src/pages/HomePage/SocialLinks.js +1 -1
  204. package/admin/src/pages/HomePage/index.js +3 -3
  205. package/admin/src/pages/InstalledPluginsPage/Plugins.js +1 -1
  206. package/admin/src/pages/MarketplacePage/components/NpmPackagesGrid/index.js +2 -2
  207. package/admin/src/pages/MarketplacePage/index.js +6 -10
  208. package/admin/src/pages/ProfilePage/index.js +20 -23
  209. package/admin/src/pages/ProfilePage/utils/api.js +1 -1
  210. package/admin/src/pages/SettingsPage/components/SettingsNav/index.js +4 -4
  211. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +2 -2
  212. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/DynamicTable/index.js +8 -6
  213. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +26 -14
  214. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/utils/tableHeaders.js +16 -4
  215. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/Form/index.js +1 -1
  216. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/Form/reducer.js +1 -1
  217. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoInput/index.js +1 -1
  218. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoInput/reducer.js +1 -1
  219. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromComputerForm.js +1 -1
  220. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromUrlForm.js +2 -2
  221. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/index.js +1 -1
  222. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/reducer.js +1 -1
  223. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +4 -4
  224. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/api.js +1 -1
  225. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/getFormData.js +1 -1
  226. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/parseFileMetadatas.js +4 -4
  227. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/prefixAllUrls.js +1 -1
  228. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/urlToFile.js +1 -1
  229. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/ActionRow/index.js +4 -4
  230. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/index.js +2 -2
  231. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/Collapse/index.js +5 -8
  232. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/Collapse/utils/generateCheckboxesActions.js +1 -1
  233. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/ActionRow/index.js +3 -3
  234. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/ActionRow/utils/getRowLabelCheckboxeState.js +1 -1
  235. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/Header/index.js +1 -1
  236. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/SubActionRow/index.js +8 -12
  237. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/utils/generateHeadersFromActions.js +1 -1
  238. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/utils/activeStyle.js +1 -1
  239. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/utils/getAvailableActions.js +1 -1
  240. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapses/index.js +1 -1
  241. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Curve/index.js +1 -1
  242. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/index.js +1 -1
  243. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/utils/findDisplayedActions.js +1 -1
  244. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/utils/getRowLabelCheckboxesState.js +2 -2
  245. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/index.js +9 -8
  246. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/reducer.js +4 -4
  247. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/createDefaultCTFormFromLayout.js +1 -1
  248. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/findMatchingPermissions.js +1 -1
  249. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/formatContentTypesPermissionToAPI.js +2 -2
  250. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/formatLayoutForSettingsAndPlugins.js +1 -1
  251. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/formatPermissionsToAPI.js +1 -1
  252. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/formatSettingsPermissionsToAPI.js +4 -4
  253. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/updateConditionsToFalse.js +2 -2
  254. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/SubCategory/index.js +5 -8
  255. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/SubCategory/utils/formatActions.js +2 -2
  256. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/SubCategory/utils/getConditionsButtonState.js +2 -2
  257. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/index.js +1 -1
  258. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/RoleForm/index.js +67 -69
  259. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/RowLabelWithCheckbox/index.js +4 -3
  260. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/utils/createArrayOfValues.js +2 -2
  261. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/utils/getCheckboxState.js +3 -3
  262. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/utils/removeConditionKeyFromData.js +1 -1
  263. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/index.js +58 -60
  264. package/admin/src/pages/SettingsPage/pages/Roles/ListPage/index.js +7 -11
  265. package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +3 -3
  266. package/admin/src/pages/SettingsPage/pages/Users/EditPage/utils/api.js +1 -1
  267. package/admin/src/pages/SettingsPage/pages/Users/ListPage/DynamicTable/TableRows/index.js +4 -4
  268. package/admin/src/pages/SettingsPage/pages/Users/ListPage/Filters/index.js +1 -1
  269. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +8 -8
  270. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/utils/schema.js +2 -8
  271. package/admin/src/pages/SettingsPage/pages/Users/ListPage/index.js +18 -12
  272. package/admin/src/pages/SettingsPage/pages/Users/ListPage/utils/api.js +1 -1
  273. package/admin/src/pages/SettingsPage/pages/Users/ListPage/utils/tableHeaders.js +46 -14
  274. package/admin/src/pages/SettingsPage/pages/Users/components/SelectRoles/index.js +2 -2
  275. package/admin/src/pages/SettingsPage/pages/Users/utils/validations/users/profile.js +1 -5
  276. package/admin/src/pages/SettingsPage/pages/Users/utils/validations/users/roles.js +1 -4
  277. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/EventInput/EventRow.js +5 -5
  278. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/EventInput/index.js +14 -14
  279. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/EventInput/utils/formatValue.js +1 -1
  280. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/HeadersInput/Combobox.js +4 -4
  281. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/TriggerContainer/index.js +1 -1
  282. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/utils/fieldsRegex.js +2 -2
  283. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/utils/schema.js +1 -1
  284. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/index.js +9 -9
  285. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/reducer.js +2 -2
  286. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/utils/formatData.js +2 -2
  287. package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js +7 -7
  288. package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/reducer.js +4 -4
  289. package/admin/src/pages/SettingsPage/utils/createSectionsRoutes.js +3 -3
  290. package/admin/src/pages/SettingsPage/utils/defaultRoutes.js +12 -12
  291. package/admin/src/pages/SettingsPage/utils/getSectionsToDisplay.js +2 -2
  292. package/admin/src/pages/UseCasePage/index.js +2 -2
  293. package/admin/src/shared/components/InjectionZone/index.js +1 -1
  294. package/admin/src/shared/hooks/useInjectionZone/index.js +1 -1
  295. package/admin/src/translations/ca.json +4 -4
  296. package/admin/src/translations/de.json +4 -4
  297. package/admin/src/translations/dk.json +4 -4
  298. package/admin/src/translations/en.json +17 -15
  299. package/admin/src/translations/es.json +163 -6
  300. package/admin/src/translations/fr.json +5 -4
  301. package/admin/src/translations/gu.json +4 -4
  302. package/admin/src/translations/he.json +3 -3
  303. package/admin/src/translations/hi.json +4 -4
  304. package/admin/src/translations/hu.json +4 -4
  305. package/admin/src/translations/id.json +4 -4
  306. package/admin/src/translations/it.json +4 -4
  307. package/admin/src/translations/ja.json +4 -4
  308. package/admin/src/translations/ko.json +4 -4
  309. package/admin/src/translations/ml.json +4 -4
  310. package/admin/src/translations/nl.json +4 -4
  311. package/admin/src/translations/no.json +3 -3
  312. package/admin/src/translations/pl.json +4 -4
  313. package/admin/src/translations/pt-BR.json +177 -24
  314. package/admin/src/translations/ru.json +4 -4
  315. package/admin/src/translations/sa.json +4 -4
  316. package/admin/src/translations/sk.json +4 -4
  317. package/admin/src/translations/sv.json +665 -11
  318. package/admin/src/translations/th.json +3 -3
  319. package/admin/src/translations/zh-Hans.json +12 -15
  320. package/admin/src/translations/zh.json +4 -4
  321. package/admin/src/utils/getAttributesToDisplay.js +1 -1
  322. package/admin/src/utils/getExistingActions.js +2 -2
  323. package/admin/src/utils/getFullName.js +1 -1
  324. package/admin/src/utils/getRequestUrl.js +1 -1
  325. package/admin/src/utils/makeUniqueRoutes.js +2 -2
  326. package/admin/src/utils/sortLinks.js +1 -1
  327. package/build/1669.d1b29c28.chunk.js +1 -0
  328. package/build/{1856.d3da2fcd.chunk.js → 1856.47226450.chunk.js} +6 -6
  329. package/build/{2077.b25a0b57.chunk.js → 2077.61cebc93.chunk.js} +4 -4
  330. package/build/{2912.da8a70aa.chunk.js → 2912.a015078a.chunk.js} +10 -10
  331. package/build/{4715.3787be19.chunk.js → 4715.3f6cac0a.chunk.js} +30 -30
  332. package/build/{4800.d3ebc81d.chunk.js → 4800.d09f1225.chunk.js} +1 -1
  333. package/build/{4982.a4e36c9a.chunk.js → 4982.c6f88c5d.chunk.js} +8 -8
  334. package/build/{611.aa894d27.chunk.js → 611.a91aff91.chunk.js} +6 -6
  335. package/build/{6925.fb35248e.chunk.js → 6925.f5c8b6fc.chunk.js} +4 -4
  336. package/build/{7841.922b96eb.chunk.js → 7841.91f793dc.chunk.js} +9 -9
  337. package/build/{7866.29d1f169.chunk.js → 7866.c793a31d.chunk.js} +23 -23
  338. package/build/{8380.ab3939f3.chunk.js → 8380.8789ff76.chunk.js} +8 -8
  339. package/build/{8549.0e30f86d.chunk.js → 8549.133c4473.chunk.js} +5 -5
  340. package/build/8773.eccaa5f3.chunk.js +325 -0
  341. package/build/{9066.2847fdff.chunk.js → 9066.08049eb1.chunk.js} +4 -4
  342. package/build/{9166.280c7521.chunk.js → 9166.037339e0.chunk.js} +2 -2
  343. package/build/{9420.ee1ccff7.chunk.js → 9420.43a86e7c.chunk.js} +30 -30
  344. package/build/Admin-authenticatedApp.0d299d1a.chunk.js +80 -0
  345. package/build/Admin_InternalErrorPage.12e24216.chunk.js +1 -0
  346. package/build/{Admin_marketplace.0b758aac.chunk.js → Admin_marketplace.82c0570b.chunk.js} +2 -2
  347. package/build/Admin_pluginsPage.4d59785a.chunk.js +1 -0
  348. package/build/Admin_profilePage.8617313a.chunk.js +15 -0
  349. package/build/Admin_settingsPage.98a711e5.chunk.js +178 -0
  350. package/build/admin-app.05edc328.chunk.js +112 -0
  351. package/build/admin-edit-roles-page.554ba3fa.chunk.js +1 -0
  352. package/build/admin-edit-users.5bebf473.chunk.js +10 -0
  353. package/build/admin-users.dccd5f4c.chunk.js +11 -0
  354. package/build/{api-tokens-create-page.442e3be0.chunk.js → api-tokens-create-page.4c262d6e.chunk.js} +1 -1
  355. package/build/{api-tokens-edit-page.5f34eec7.chunk.js → api-tokens-edit-page.10a9d368.chunk.js} +1 -1
  356. package/build/api-tokens-list-page.442c9f3c.chunk.js +15 -0
  357. package/build/ca-json.d16c1d28.chunk.js +1 -0
  358. package/build/content-manager.fb5ee865.chunk.js +1178 -0
  359. package/build/{content-type-builder-list-view.4a704844.chunk.js → content-type-builder-list-view.8cc534e0.chunk.js} +9 -9
  360. package/build/content-type-builder-translation-pt-BR-json.d6c7fcc1.chunk.js +1 -0
  361. package/build/content-type-builder.42cecba9.chunk.js +142 -0
  362. package/build/de-json.a9b514dc.chunk.js +1 -0
  363. package/build/dk-json.09e8d145.chunk.js +1 -0
  364. package/build/{email-settings-page.818761d5.chunk.js → email-settings-page.64037147.chunk.js} +5 -5
  365. package/build/en-json.12bc5a14.chunk.js +1 -0
  366. package/build/es-json.3a9c7c09.chunk.js +1 -0
  367. package/build/fr-json.6d5a7e14.chunk.js +1 -0
  368. package/build/gu-json.d8311297.chunk.js +1 -0
  369. package/build/he-json.3b825d80.chunk.js +1 -0
  370. package/build/hi-json.0edb8d29.chunk.js +1 -0
  371. package/build/hu-json.7855529a.chunk.js +1 -0
  372. package/build/i18n-settings-page.0b73785d.chunk.js +101 -0
  373. package/build/i18n-translation-fr-json.b401aa34.chunk.js +1 -0
  374. package/build/id-json.df9618f2.chunk.js +1 -0
  375. package/build/index.html +1 -1
  376. package/build/it-json.a21bf078.chunk.js +1 -0
  377. package/build/ja-json.7b0d9067.chunk.js +1 -0
  378. package/build/ko-json.983c1f8f.chunk.js +1 -0
  379. package/build/main.e73468bf.js +9321 -0
  380. package/build/ml-json.8dd021c8.chunk.js +1 -0
  381. package/build/nl-json.29d2eb37.chunk.js +1 -0
  382. package/build/no-json.40386397.chunk.js +1 -0
  383. package/build/pl-json.1f04f00c.chunk.js +1 -0
  384. package/build/pt-BR-json.b4bc8efe.chunk.js +1 -0
  385. package/build/ru-json.7ab40ccf.chunk.js +1 -0
  386. package/build/{runtime~main.3dfda620.js → runtime~main.edd06c9f.js} +2 -2
  387. package/build/sa-json.c5a9f4ea.chunk.js +1 -0
  388. package/build/sk-json.e4c24c4e.chunk.js +1 -0
  389. package/build/sv-json.c3f471ae.chunk.js +1 -0
  390. package/build/th-json.a59ffb32.chunk.js +1 -0
  391. package/build/{upload-settings.5dfe0fe2.chunk.js → upload-settings.80ff0974.chunk.js} +7 -7
  392. package/build/upload-translation-ca-json.db8ed7ba.chunk.js +1 -0
  393. package/build/upload-translation-es-json.0f90db48.chunk.js +1 -0
  394. package/build/{upload-translation-th-json.64dd70ce.chunk.js → upload-translation-th-json.9e1fda51.chunk.js} +1 -1
  395. package/build/upload.7084cea6.chunk.js +7 -0
  396. package/build/{users-advanced-settings-page.f38654fc.chunk.js → users-advanced-settings-page.a02f4806.chunk.js} +5 -5
  397. package/build/{users-email-settings-page.899e7fbd.chunk.js → users-email-settings-page.73c41236.chunk.js} +1 -1
  398. package/build/{users-providers-settings-page.a0b0fe39.chunk.js → users-providers-settings-page.f8e78537.chunk.js} +1 -1
  399. package/build/users-roles-settings-page.b33ec5e5.chunk.js +30 -0
  400. package/build/webhook-edit-page.d2ea3351.chunk.js +23 -0
  401. package/build/{webhook-list-page.912becb8.chunk.js → webhook-list-page.2775a683.chunk.js} +5 -5
  402. package/build/zh-Hans-json.77a42bc5.chunk.js +1 -0
  403. package/build/zh-json.451a0271.chunk.js +1 -0
  404. package/ee/admin/hooks/useAuthProviders/reducer.js +1 -1
  405. package/ee/admin/pages/AuthPage/components/Login/index.js +2 -2
  406. package/ee/admin/pages/AuthPage/components/Providers/SSOProviders.js +3 -3
  407. package/ee/admin/pages/SettingsPage/SingleSignOn/index.js +3 -3
  408. package/ee/admin/pages/SettingsPage/pages/Roles/CreatePage/index.js +11 -9
  409. package/ee/admin/pages/SettingsPage/pages/Roles/ListPage/index.js +9 -9
  410. package/ee/admin/pages/SettingsPage/pages/Roles/ListPage/reducer.js +1 -1
  411. package/ee/admin/pages/SettingsPage/utils/customRoutes.js +1 -1
  412. package/ee/server/controllers/authentication/middlewares.js +1 -1
  413. package/ee/server/controllers/authentication/utils.js +1 -1
  414. package/ee/server/controllers/role.js +4 -4
  415. package/ee/server/services/passport/provider-registry.js +1 -1
  416. package/ee/server/services/passport/sso.js +1 -1
  417. package/ee/server/services/passport.js +1 -1
  418. package/ee/server/services/role.js +1 -1
  419. package/ee/server/validation/authentication.js +1 -1
  420. package/ee/server/validation/role.js +3 -6
  421. package/ee/server/validation/user.js +1 -1
  422. package/env.js +2 -2
  423. package/index.js +2 -2
  424. package/jest.config.front.js +3 -1
  425. package/package.json +29 -20
  426. package/scripts/build.js +2 -2
  427. package/scripts/create-dev-plugins-file.js +5 -7
  428. package/scripts/create-plugins-file.js +2 -2
  429. package/server/config/admin-conditions.js +3 -3
  430. package/server/controllers/admin.js +1 -1
  431. package/server/controllers/authentication.js +1 -1
  432. package/server/controllers/formatters/format-actions-by-sections.js +8 -5
  433. package/server/controllers/role.js +1 -1
  434. package/server/controllers/user.js +1 -1
  435. package/server/controllers/webhooks.js +6 -16
  436. package/server/domain/action/index.js +3 -3
  437. package/server/domain/action/provider.js +2 -2
  438. package/server/domain/condition/index.js +2 -2
  439. package/server/domain/condition/provider.js +1 -1
  440. package/server/domain/permission/index.js +3 -3
  441. package/server/domain/user.js +2 -2
  442. package/server/policies/hasPermissions.js +5 -5
  443. package/server/policies/isAuthenticatedAdmin.js +1 -1
  444. package/server/routes/serve-admin-panel.js +1 -1
  445. package/server/services/action.js +1 -1
  446. package/server/services/api-token.js +5 -5
  447. package/server/services/auth.js +2 -2
  448. package/server/services/condition.js +1 -1
  449. package/server/services/content-type.js +5 -3
  450. package/server/services/passport/local-strategy.js +2 -2
  451. package/server/services/passport.js +2 -4
  452. package/server/services/permission/engine-hooks.js +1 -1
  453. package/server/services/permission/engine.js +9 -9
  454. package/server/services/permission/permissions-manager/query-builers.js +5 -5
  455. package/server/services/permission/permissions-manager/sanitize.js +6 -10
  456. package/server/services/permission/queries.js +12 -13
  457. package/server/services/permission/sections-builder/handlers.js +21 -19
  458. package/server/services/permission/sections-builder/section.js +2 -2
  459. package/server/services/permission/sections-builder/utils.js +5 -5
  460. package/server/services/project-settings.js +9 -12
  461. package/server/services/role.js +15 -13
  462. package/server/services/token.js +2 -2
  463. package/server/services/user.js +11 -11
  464. package/server/strategies/admin.js +1 -1
  465. package/server/strategies/api-token.js +3 -3
  466. package/server/utils/index.js +1 -1
  467. package/server/validation/action-provider.js +6 -12
  468. package/server/validation/api-tokens.js +4 -16
  469. package/server/validation/authentication/renew-token.js +1 -5
  470. package/server/validation/common-functions/check-fields-are-correctly-nested.js +5 -3
  471. package/server/validation/common-functions/check-fields-dont-have-duplicates.js +3 -2
  472. package/server/validation/common-validators.js +74 -71
  473. package/server/validation/permission.js +13 -13
  474. package/server/validation/policies/hasPermissions.js +2 -6
  475. package/server/validation/user.js +1 -5
  476. package/utils/create-cache-dir.js +3 -3
  477. package/utils/get-custom-app-config-file.js +3 -3
  478. package/utils/get-plugins-path.js +3 -2
  479. package/utils/should-build-admin.js +4 -4
  480. package/webpack.config.js +2 -7
  481. package/build/1669.0551026a.chunk.js +0 -1
  482. package/build/8773.c190837d.chunk.js +0 -330
  483. package/build/Admin-authenticatedApp.380e5e99.chunk.js +0 -80
  484. package/build/Admin_InternalErrorPage.25c53284.chunk.js +0 -1
  485. package/build/Admin_pluginsPage.0992c2b5.chunk.js +0 -1
  486. package/build/Admin_profilePage.35ce8e94.chunk.js +0 -15
  487. package/build/Admin_settingsPage.76ee4c17.chunk.js +0 -178
  488. package/build/admin-app.93ff2e38.chunk.js +0 -112
  489. package/build/admin-edit-roles-page.358d98c1.chunk.js +0 -1
  490. package/build/admin-edit-users.7d9cf406.chunk.js +0 -10
  491. package/build/admin-users.bb3a8eb6.chunk.js +0 -11
  492. package/build/api-tokens-list-page.5ea3f6ce.chunk.js +0 -15
  493. package/build/ca-json.0097e443.chunk.js +0 -1
  494. package/build/content-manager.55791f82.chunk.js +0 -1178
  495. package/build/content-type-builder-translation-pt-BR-json.5739a2aa.chunk.js +0 -1
  496. package/build/content-type-builder.f48a28f9.chunk.js +0 -142
  497. package/build/de-json.0b92acd2.chunk.js +0 -1
  498. package/build/dk-json.9f1bc016.chunk.js +0 -1
  499. package/build/en-json.6d70e9ff.chunk.js +0 -1
  500. package/build/es-json.2a5a9fc1.chunk.js +0 -1
  501. package/build/fr-json.84064a0b.chunk.js +0 -1
  502. package/build/gu-json.dafa6f0d.chunk.js +0 -1
  503. package/build/he-json.d40da459.chunk.js +0 -1
  504. package/build/hi-json.b4ae16d1.chunk.js +0 -1
  505. package/build/hu-json.c81ce352.chunk.js +0 -1
  506. package/build/i18n-settings-page.9d426e96.chunk.js +0 -101
  507. package/build/i18n-translation-fr-json.0839d68d.chunk.js +0 -1
  508. package/build/id-json.fad45d17.chunk.js +0 -1
  509. package/build/it-json.12df4cdf.chunk.js +0 -1
  510. package/build/ja-json.850237e9.chunk.js +0 -1
  511. package/build/ko-json.2f3d256e.chunk.js +0 -1
  512. package/build/main.66ef8611.js +0 -9317
  513. package/build/ml-json.dc946c7f.chunk.js +0 -1
  514. package/build/nl-json.465b173f.chunk.js +0 -1
  515. package/build/no-json.e8749dd4.chunk.js +0 -1
  516. package/build/pl-json.4d11f53d.chunk.js +0 -1
  517. package/build/pt-BR-json.6301d49b.chunk.js +0 -1
  518. package/build/ru-json.28147733.chunk.js +0 -1
  519. package/build/sa-json.be504091.chunk.js +0 -1
  520. package/build/sk-json.5b33afc2.chunk.js +0 -1
  521. package/build/sv-json.cdcac02d.chunk.js +0 -1
  522. package/build/th-json.3aadaec6.chunk.js +0 -1
  523. package/build/upload-translation-ca-json.00dc1f33.chunk.js +0 -1
  524. package/build/upload-translation-es-json.6b1813b6.chunk.js +0 -1
  525. package/build/upload.0af4feca.chunk.js +0 -7
  526. package/build/users-roles-settings-page.1206751f.chunk.js +0 -30
  527. package/build/webhook-edit-page.3417d93c.chunk.js +0 -23
  528. package/build/zh-Hans-json.eac1d90a.chunk.js +0 -1
  529. package/build/zh-json.96bf6019.chunk.js +0 -1
@@ -18,7 +18,7 @@ const getPassportStrategies = () => {
18
18
  }
19
19
 
20
20
  const providers = sso.providerRegistry.getAll();
21
- const strategies = providers.map(provider => provider.createStrategy(strapi));
21
+ const strategies = providers.map((provider) => provider.createStrategy(strapi));
22
22
 
23
23
  return [localStrategy, ...strategies];
24
24
  };
@@ -3,7 +3,7 @@
3
3
  const { toString } = require('lodash/fp');
4
4
  const { ApplicationError } = require('@strapi/utils').errors;
5
5
 
6
- const ssoCheckRolesIdForDeletion = async ids => {
6
+ const ssoCheckRolesIdForDeletion = async (ids) => {
7
7
  const adminStore = await strapi.store({ type: 'core', name: 'admin' });
8
8
 
9
9
  const {
@@ -7,7 +7,7 @@ const providerOptionsUpdateSchema = yup.object().shape({
7
7
  defaultRole: yup
8
8
  .strapiID()
9
9
  .required()
10
- .test('is-valid-role', 'You must submit a valid default role', roleId => {
10
+ .test('is-valid-role', 'You must submit a valid default role', (roleId) => {
11
11
  return strapi.admin.services.role.exists({ id: roleId });
12
12
  }),
13
13
  });
@@ -7,10 +7,7 @@ const { features } = require('@strapi/strapi/lib/utils/ee');
7
7
  const roleCreateSchema = yup
8
8
  .object()
9
9
  .shape({
10
- name: yup
11
- .string()
12
- .min(1)
13
- .required(),
10
+ name: yup.string().min(1).required(),
14
11
  description: yup.string().nullable(),
15
12
  })
16
13
  .noUnknown();
@@ -23,7 +20,7 @@ const rolesDeleteSchema = yup
23
20
  .of(yup.strapiID())
24
21
  .min(1)
25
22
  .required()
26
- .test('roles-deletion-checks', 'Roles deletion checks have failed', async function(ids) {
23
+ .test('roles-deletion-checks', 'Roles deletion checks have failed', async function (ids) {
27
24
  try {
28
25
  await strapi.admin.services.role.checkRolesIdForDeletion(ids);
29
26
 
@@ -42,7 +39,7 @@ const rolesDeleteSchema = yup
42
39
  const roleDeleteSchema = yup
43
40
  .strapiID()
44
41
  .required()
45
- .test('no-admin-single-delete', 'Role deletion checks have failed', async function(id) {
42
+ .test('no-admin-single-delete', 'Role deletion checks have failed', async function (id) {
46
43
  try {
47
44
  await strapi.admin.services.role.checkRolesIdForDeletion([id]);
48
45
 
@@ -12,7 +12,7 @@ const ssoUserCreationInputExtension = yup
12
12
  })
13
13
  .noUnknown();
14
14
 
15
- const validateUserCreationInput = data => {
15
+ const validateUserCreationInput = (data) => {
16
16
  let schema = schemas.userCreationSchema;
17
17
 
18
18
  if (features.isEnabled('sso')) {
package/env.js CHANGED
@@ -12,9 +12,9 @@ if (fs.existsSync(dotenvFilePath)) {
12
12
 
13
13
  const STRAPI_ADMIN = /^STRAPI_ADMIN_/i;
14
14
 
15
- const getClientEnvironment = options => {
15
+ const getClientEnvironment = (options) => {
16
16
  const raw = Object.keys(process.env)
17
- .filter(key => STRAPI_ADMIN.test(key))
17
+ .filter((key) => STRAPI_ADMIN.test(key))
18
18
  .reduce(
19
19
  (acc, current) => {
20
20
  acc[current] = process.env[current];
package/index.js CHANGED
@@ -36,7 +36,7 @@ async function build({ appDir, buildDestDir, env, forceBuild, optimize, options,
36
36
  ceRoot: path.resolve(cacheDir, 'admin', 'src'),
37
37
  };
38
38
 
39
- const pluginsPath = Object.keys(plugins).map(pluginName => plugins[pluginName].pathToPlugin);
39
+ const pluginsPath = Object.keys(plugins).map((pluginName) => plugins[pluginName].pathToPlugin);
40
40
 
41
41
  // Either use the tsconfig file from the generated app or the one inside the .cache folder
42
42
  // so we can develop plugins in TS while being in a JS app
@@ -111,7 +111,7 @@ async function watchAdmin({ appDir, browser, buildDestDir, host, options, plugin
111
111
  ceRoot: path.resolve(cacheDir, 'admin', 'src'),
112
112
  };
113
113
 
114
- const pluginsPath = Object.keys(plugins).map(pluginName => plugins[pluginName].pathToPlugin);
114
+ const pluginsPath = Object.keys(plugins).map((pluginName) => plugins[pluginName].pathToPlugin);
115
115
 
116
116
  // Either use the tsconfig file from the generated app or the one inside the .cache folder
117
117
  // so we can develop plugins in TS while being in a JS app
@@ -1,10 +1,12 @@
1
1
  'use strict';
2
2
 
3
3
  const baseConfig = require('../../../jest.base-config.front');
4
- const pkg = require('./package');
4
+ const pkg = require('./package.json');
5
5
 
6
6
  module.exports = {
7
7
  ...baseConfig,
8
8
  displayName: (pkg.strapi && pkg.strapi.name) || pkg.name,
9
9
  roots: [__dirname],
10
+ collectCoverageFrom: ['<rootDir>/packages/core/admin/admin/**/*.js'],
11
+ coverageDirectory: '<rootDir>/packages/core/admin/coverage',
10
12
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/admin",
3
- "version": "4.3.4",
3
+ "version": "4.3.7",
4
4
  "description": "Strapi Admin",
5
5
  "repository": {
6
6
  "type": "git",
@@ -34,39 +34,39 @@
34
34
  "test:front": "cross-env IS_EE=true jest --config ./jest.config.front.js",
35
35
  "test:front:watch": "cross-env IS_EE=true jest --config ./jest.config.front.js --watchAll",
36
36
  "test:front:ce": "cross-env IS_EE=false jest --config ./jest.config.front.js",
37
- "test:front:watch:ce": "cross-env IS_EE=false jest --config ./jest.config.front.js --watchAll"
37
+ "test:front:watch:ce": "cross-env IS_EE=false jest --config ./jest.config.front.js --watchAll",
38
+ "test:front:ce:cov": "cross-env IS_EE=false jest --config ./jest.config.front.js --coverage"
38
39
  },
39
40
  "dependencies": {
40
41
  "@babel/core": "7.18.10",
41
42
  "@babel/plugin-transform-runtime": "7.18.10",
42
- "@babel/polyfill": "7.12.1",
43
43
  "@babel/preset-env": "7.18.10",
44
44
  "@babel/preset-react": "7.18.6",
45
45
  "@babel/runtime": "7.18.9",
46
46
  "@casl/ability": "^5.4.3",
47
47
  "@fingerprintjs/fingerprintjs": "3.3.3",
48
48
  "@fortawesome/fontawesome-free": "^5.15.3",
49
- "@fortawesome/fontawesome-svg-core": "^1.2.35",
49
+ "@fortawesome/fontawesome-svg-core": "6.1.2",
50
50
  "@fortawesome/free-brands-svg-icons": "^5.15.3",
51
51
  "@fortawesome/free-solid-svg-icons": "^5.15.3",
52
52
  "@fortawesome/react-fontawesome": "^0.2.0",
53
53
  "@pmmmwh/react-refresh-webpack-plugin": "0.5.7",
54
- "@strapi/babel-plugin-switch-ee-ce": "4.3.4",
55
- "@strapi/design-system": "1.2.1",
56
- "@strapi/helper-plugin": "4.3.4",
57
- "@strapi/icons": "1.2.1",
58
- "@strapi/typescript-utils": "4.3.4",
59
- "@strapi/utils": "4.3.4",
60
- "axios": "0.24.0",
54
+ "@strapi/babel-plugin-switch-ee-ce": "4.3.7",
55
+ "@strapi/design-system": "1.2.2",
56
+ "@strapi/helper-plugin": "4.3.7",
57
+ "@strapi/icons": "1.2.2",
58
+ "@strapi/typescript-utils": "4.3.7",
59
+ "@strapi/utils": "4.3.7",
60
+ "axios": "0.27.2",
61
61
  "babel-loader": "8.2.5",
62
62
  "babel-plugin-styled-components": "2.0.2",
63
63
  "bcryptjs": "2.4.3",
64
64
  "chalk": "^4.1.1",
65
65
  "chokidar": "^3.5.1",
66
- "codemirror": "^5.65.6",
66
+ "codemirror": "^5.65.8",
67
67
  "cross-env": "^7.0.3",
68
68
  "css-loader": "6.7.1",
69
- "date-fns": "2.28.0",
69
+ "date-fns": "2.29.2",
70
70
  "dotenv": "8.5.1",
71
71
  "esbuild-loader": "^2.19.0",
72
72
  "execa": "^1.0.0",
@@ -100,7 +100,7 @@
100
100
  "markdown-it-sup": "1.0.0",
101
101
  "match-sorter": "^4.0.2",
102
102
  "mini-css-extract-plugin": "2.4.4",
103
- "node-polyfill-webpack-plugin": "1.1.4",
103
+ "node-polyfill-webpack-plugin": "2.0.1",
104
104
  "p-map": "4.0.0",
105
105
  "passport-local": "1.0.0",
106
106
  "prop-types": "^15.7.2",
@@ -113,22 +113,23 @@
113
113
  "react-error-boundary": "3.1.1",
114
114
  "react-fast-compare": "^3.2.0",
115
115
  "react-helmet": "^6.1.0",
116
- "react-intl": "5.20.2",
116
+ "react-intl": "5.25.1",
117
+ "react-is": "^17.0.2",
117
118
  "react-query": "3.24.3",
118
119
  "react-redux": "7.2.8",
119
- "react-refresh": "0.11.0",
120
+ "react-refresh": "0.14.0",
120
121
  "react-router": "5.2.0",
121
122
  "react-router-dom": "5.2.0",
122
123
  "react-window": "1.8.7",
123
124
  "redux": "^4.0.1",
124
- "redux-saga": "^0.16.0",
125
125
  "reselect": "^4.0.0",
126
126
  "rimraf": "3.0.2",
127
- "sanitize-html": "2.7.0",
127
+ "sanitize-html": "2.7.1",
128
128
  "semver": "7.3.7",
129
129
  "sift": "13.5.4",
130
130
  "style-loader": "3.3.1",
131
131
  "styled-components": "5.3.3",
132
+ "typescript": "4.6.2",
132
133
  "webpack": "^5.73.0",
133
134
  "webpack-cli": "^4.10.0",
134
135
  "webpack-dev-server": "^4.9.3",
@@ -136,10 +137,18 @@
136
137
  "yup": "^0.32.9"
137
138
  },
138
139
  "devDependencies": {
140
+ "@testing-library/dom": "8.17.1",
141
+ "@testing-library/react": "11.2.7",
142
+ "@testing-library/react-hooks": "3.7.0",
143
+ "@testing-library/user-event": "13.5.0",
139
144
  "duplicate-dependencies-webpack-plugin": "^1.0.2",
140
145
  "glob": "8.0.3",
146
+ "react-test-renderer": "^17.0.2",
141
147
  "speed-measure-webpack-plugin": "1.5.0",
142
- "webpack-bundle-analyzer": "^4.5.0"
148
+ "webpack-bundle-analyzer": "^4.6.1"
149
+ },
150
+ "peerDependencies": {
151
+ "@strapi/strapi": "^4.3.4"
143
152
  },
144
153
  "engines": {
145
154
  "node": ">=14.19.1 <=16.x.x",
@@ -154,5 +163,5 @@
154
163
  }
155
164
  }
156
165
  },
157
- "gitHead": "28a2a00db8234ffcf644661c4c8092aa82f8c119"
166
+ "gitHead": "73f523b98322cea8992c72977b94a73a624d2e79"
158
167
  }
package/scripts/build.js CHANGED
@@ -3,7 +3,7 @@
3
3
  const path = require('path');
4
4
  const webpack = require('webpack');
5
5
  const { isObject } = require('lodash');
6
- // eslint-disable-next-line node/no-extraneous-require
6
+ // eslint-disable-next-line import/no-extraneous-dependencies
7
7
  const SpeedMeasurePlugin = require('speed-measure-webpack-plugin');
8
8
 
9
9
  const webpackConfig = require('../webpack.config');
@@ -103,7 +103,7 @@ buildAdmin()
103
103
  .then(() => {
104
104
  process.exit();
105
105
  })
106
- .catch(err => {
106
+ .catch((err) => {
107
107
  console.error(err);
108
108
  process.exit(1);
109
109
  });
@@ -2,7 +2,8 @@
2
2
 
3
3
  const { join, resolve, relative } = require('path');
4
4
  const { promisify } = require('util');
5
- // eslint-disable-next-line node/no-extraneous-require
5
+
6
+ // eslint-disable-next-line import/no-extraneous-dependencies
6
7
  const glob = promisify(require('glob').glob);
7
8
  const fs = require('fs-extra');
8
9
  const { getCorePluginsPath, createPluginsFile } = require('./create-plugins-file');
@@ -16,14 +17,11 @@ const getPluginsPackages = async () => {
16
17
  const pluginsPackageDirs = await glob(pathToPackages);
17
18
 
18
19
  return pluginsPackageDirs
19
- .filter(pluginDir => {
20
+ .filter((pluginDir) => {
20
21
  return fs.existsSync(join(pluginDir, 'admin', 'src', 'index.js'));
21
22
  })
22
23
  .reduce((acc, current) => {
23
- const depName = current
24
- .replace(/\\/g, '/')
25
- .split('/')
26
- .slice(-1)[0];
24
+ const depName = current.replace(/\\/g, '/').split('/').slice(-1)[0];
27
25
 
28
26
  const adminEntryPoint = join(__dirname, '..', 'admin', 'src');
29
27
 
@@ -63,7 +61,7 @@ createFile()
63
61
  console.log('plugins.js file created');
64
62
  process.exit();
65
63
  })
66
- .catch(err => {
64
+ .catch((err) => {
67
65
  console.error(err);
68
66
  process.exit(1);
69
67
  });
@@ -30,7 +30,7 @@ const getCorePluginsPath = () => {
30
30
  * @param {Object[]} pluginsToInstall array of plugins located in the plugins folder
31
31
  * @returns Object of plugin's paths
32
32
  */
33
- const getPluginToInstallPath = pluginsToInstall => {
33
+ const getPluginToInstallPath = (pluginsToInstall) => {
34
34
  const plugins = {};
35
35
 
36
36
  for (const dep of pluginsToInstall) {
@@ -49,7 +49,7 @@ const getPluginToInstallPath = pluginsToInstall => {
49
49
  * Write the plugins.js file
50
50
  * @param {Object} plugins
51
51
  */
52
- const createPluginsFile = async plugins => {
52
+ const createPluginsFile = async (plugins) => {
53
53
  const pluginFileDest = resolve(__dirname, '..', 'admin', 'src', 'plugins.js');
54
54
 
55
55
  const allPluginsArray = Object.entries(plugins).map(([plugin, pluginPath]) => {
@@ -6,17 +6,17 @@ module.exports = {
6
6
  displayName: 'Is creator',
7
7
  name: 'is-creator',
8
8
  plugin: 'admin',
9
- handler: user => ({ 'createdBy.id': user.id }),
9
+ handler: (user) => ({ 'createdBy.id': user.id }),
10
10
  },
11
11
  {
12
12
  displayName: 'Has same role as creator',
13
13
  name: 'has-same-role-as-creator',
14
14
  plugin: 'admin',
15
- handler: user => ({
15
+ handler: (user) => ({
16
16
  'createdBy.roles': {
17
17
  $elemMatch: {
18
18
  id: {
19
- $in: user.roles.map(r => r.id),
19
+ $in: user.roles.map((r) => r.id),
20
20
  },
21
21
  },
22
22
  },
@@ -21,7 +21,7 @@ const PLUGIN_NAME_REGEX = /^[A-Za-z][A-Za-z0-9-_]+$/;
21
21
  /**
22
22
  * Validates a plugin name format
23
23
  */
24
- const isValidPluginName = plugin => {
24
+ const isValidPluginName = (plugin) => {
25
25
  return _.isString(plugin) && !_.isEmpty(plugin) && PLUGIN_NAME_REGEX.test(plugin);
26
26
  };
27
27
 
@@ -37,7 +37,7 @@ module.exports = {
37
37
  return next();
38
38
  })(ctx, next);
39
39
  },
40
- ctx => {
40
+ (ctx) => {
41
41
  const { user } = ctx.state;
42
42
 
43
43
  ctx.body = {
@@ -5,7 +5,7 @@
5
5
  * @param {Array<Action>} actions - array of actions
6
6
  * @returns {Object} "{ contentTypes, plugins, settings }"
7
7
  */
8
- const formatActionsBySections = actions =>
8
+ const formatActionsBySections = (actions) =>
9
9
  actions.reduce((result, p) => {
10
10
  const checkboxItem = {
11
11
  displayName: p.displayName,
@@ -13,18 +13,21 @@ const formatActionsBySections = actions =>
13
13
  };
14
14
 
15
15
  switch (p.section) {
16
- case 'contentTypes':
16
+ case 'contentTypes': {
17
17
  checkboxItem.subjects = p.subjects;
18
18
  break;
19
- case 'plugins':
19
+ }
20
+ case 'plugins': {
20
21
  checkboxItem.subCategory = p.subCategory;
21
22
  checkboxItem.plugin = `plugin::${p.pluginName}`;
22
23
  break;
23
- case 'settings':
24
+ }
25
+ case 'settings': {
24
26
  checkboxItem.category = p.category;
25
27
  checkboxItem.subCategory = p.subCategory;
26
28
  break;
27
- case 'default':
29
+ }
30
+ default:
28
31
  throw new Error(`Unknown section ${p.section}`);
29
32
  }
30
33
 
@@ -117,7 +117,7 @@ module.exports = {
117
117
  let permissionsToAssign;
118
118
 
119
119
  if ([EDITOR_CODE, AUTHOR_CODE].includes(role.code)) {
120
- permissionsToAssign = input.permissions.map(permission => {
120
+ permissionsToAssign = input.permissions.map((permission) => {
121
121
  const action = actionProvider.get(permission.action);
122
122
 
123
123
  if (action.section !== 'contentTypes') {
@@ -51,7 +51,7 @@ module.exports = {
51
51
 
52
52
  ctx.body = {
53
53
  data: {
54
- results: results.map(user => userService.sanitizeUser(user)),
54
+ results: results.map((user) => userService.sanitizeUser(user)),
55
55
  pagination,
56
56
  },
57
57
  };
@@ -3,16 +3,14 @@
3
3
  const _ = require('lodash');
4
4
  const { yup, webhook: webhookUtils, validateYupSchema } = require('@strapi/utils');
5
5
 
6
- const urlRegex = /^(?:([a-z0-9+.-]+):\/\/)(?:\S+(?::\S*)?@)?(?:(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9_]-*)*[a-z\u00a1-\uffff0-9_]+)(?:\.(?:[a-z\u00a1-\uffff0-9_]-*)*[a-z\u00a1-\uffff0-9_]+)*\.?)(?::\d{2,5})?(?:[/?#]\S*)?$/;
6
+ const urlRegex =
7
+ /^(?:([a-z0-9+.-]+):\/\/)(?:\S+(?::\S*)?@)?(?:(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9_]-*)*[a-z\u00a1-\uffff0-9_]+)(?:\.(?:[a-z\u00a1-\uffff0-9_]-*)*[a-z\u00a1-\uffff0-9_]+)*\.?)(?::\d{2,5})?(?:[/?#]\S*)?$/;
7
8
 
8
9
  const webhookValidator = yup
9
10
  .object({
10
11
  name: yup.string().required(),
11
- url: yup
12
- .string()
13
- .matches(urlRegex, 'url must be a valid URL')
14
- .required(),
15
- headers: yup.lazy(data => {
12
+ url: yup.string().matches(urlRegex, 'url must be a valid URL').required(),
13
+ headers: yup.lazy((data) => {
16
14
  if (typeof data !== 'object') {
17
15
  return yup.object().required();
18
16
  }
@@ -20,20 +18,12 @@ const webhookValidator = yup
20
18
  return yup
21
19
  .object(
22
20
  _.mapValues(data, () => {
23
- yup
24
- .string()
25
- .min(1)
26
- .required();
21
+ yup.string().min(1).required();
27
22
  })
28
23
  )
29
24
  .required();
30
25
  }),
31
- events: yup.array().of(
32
- yup
33
- .string()
34
- .oneOf(_.values(webhookUtils.webhookEvents))
35
- .required()
36
- ),
26
+ events: yup.array().of(yup.string().oneOf(_.values(webhookUtils.webhookEvents)).required()),
37
27
  })
38
28
  .noUnknown();
39
29
 
@@ -58,7 +58,7 @@ const sanitizeActionAttributes = pick(actionFields);
58
58
  * @param {CreateActionPayload} attributes
59
59
  * @return {string}
60
60
  */
61
- const computeActionId = attributes => {
61
+ const computeActionId = (attributes) => {
62
62
  const { pluginName, uid } = attributes;
63
63
 
64
64
  if (!pluginName) {
@@ -77,14 +77,14 @@ const computeActionId = attributes => {
77
77
  * @param {CreateActionPayload} attrs - Payload used to create an action
78
78
  * @return {CreateActionPayload}
79
79
  */
80
- const assignActionId = attrs => set('actionId', computeActionId(attrs), attrs);
80
+ const assignActionId = (attrs) => set('actionId', computeActionId(attrs), attrs);
81
81
 
82
82
  /**
83
83
  * Transform an action by adding or removing the {@link Action.subCategory} attribute
84
84
  * @param {Action} action - The action to process
85
85
  * @return {Action}
86
86
  */
87
- const assignOrOmitSubCategory = action => {
87
+ const assignOrOmitSubCategory = (action) => {
88
88
  const shouldHaveSubCategory = ['settings', 'plugins'].includes(action.section);
89
89
 
90
90
  return shouldHaveSubCategory
@@ -14,7 +14,7 @@ const domain = require('./index');
14
14
  * Creates a new instance of an action provider
15
15
  * @return {Provider & ActionProviderOverride}
16
16
  */
17
- const createActionProvider = options => {
17
+ const createActionProvider = (options) => {
18
18
  const provider = providerFactory(options);
19
19
  const actionHooks = {
20
20
  appliesPropertyToSubject: hooks.createAsyncParallelHook(),
@@ -75,7 +75,7 @@ const createActionProvider = options => {
75
75
  subject,
76
76
  });
77
77
 
78
- return results.every(result => result !== false);
78
+ return results.every((result) => result !== false);
79
79
  },
80
80
  };
81
81
  };
@@ -49,7 +49,7 @@ const sanitizeConditionAttributes = pick(conditionFields);
49
49
  * @param condition
50
50
  * @return {string}
51
51
  */
52
- const computeConditionId = condition => {
52
+ const computeConditionId = (condition) => {
53
53
  const { name, plugin } = condition;
54
54
 
55
55
  if (!plugin) {
@@ -68,7 +68,7 @@ const computeConditionId = condition => {
68
68
  * @param {CreateConditionPayload} attrs - Payload used to create a condition
69
69
  * @return {CreateConditionPayload}
70
70
  */
71
- const assignConditionId = attrs => set('id', computeConditionId(attrs), attrs);
71
+ const assignConditionId = (attrs) => set('id', computeConditionId(attrs), attrs);
72
72
 
73
73
  /**
74
74
  * Transform the given attributes into a domain representation of a Condition
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const { providerFactory } = require('@strapi/utils');
4
- const domain = require('./');
4
+ const domain = require('.');
5
5
 
6
6
  /**
7
7
  * @typedef ConditionProviderOverride
@@ -98,7 +98,7 @@ const deleteProperty = (property, permission) => omit(`properties.${property}`,
98
98
  * @param {Permission} attributes
99
99
  * @return {Permission}
100
100
  */
101
- const create = attributes => {
101
+ const create = (attributes) => {
102
102
  return pipe(pick(permissionFields), merge(getDefaultPermission()))(attributes);
103
103
  };
104
104
 
@@ -114,7 +114,7 @@ const sanitizeConditions = curry((provider, permission) => {
114
114
  }
115
115
 
116
116
  return permission.conditions
117
- .filter(condition => !provider.has(condition))
117
+ .filter((condition) => !provider.has(condition))
118
118
  .reduce((perm, condition) => removeCondition(condition, perm), permission);
119
119
  });
120
120
 
@@ -123,7 +123,7 @@ const sanitizeConditions = curry((provider, permission) => {
123
123
  * @param {object | object[]} payload - Can either be a single object of attributes or an array of those objects.
124
124
  * @return {Permission | Permission[]}
125
125
  */
126
- const toPermission = payload => (isArray(payload) ? map(create, payload) : create(payload));
126
+ const toPermission = (payload) => (isArray(payload) ? map(create, payload) : create(payload));
127
127
 
128
128
  module.exports = {
129
129
  addCondition,
@@ -15,8 +15,8 @@ function createUser(attributes) {
15
15
  };
16
16
  }
17
17
 
18
- const hasSuperAdminRole = user => {
19
- return user.roles.filter(role => role.code === SUPER_ADMIN_CODE).length > 0;
18
+ const hasSuperAdminRole = (user) => {
19
+ return user.roles.filter((role) => role.code === SUPER_ADMIN_CODE).length > 0;
20
20
  };
21
21
 
22
22
  module.exports = {
@@ -7,16 +7,16 @@ const { validateHasPermissionsInput } = require('../validation/policies/hasPermi
7
7
  const inputModifiers = [
8
8
  {
9
9
  check: _.isString,
10
- transform: action => ({ action }),
10
+ transform: (action) => ({ action }),
11
11
  },
12
12
  {
13
13
  check: _.isArray,
14
- transform: arr => ({ action: arr[0], subject: arr[1] }),
14
+ transform: (arr) => ({ action: arr[0], subject: arr[1] }),
15
15
  },
16
16
  {
17
17
  // Has to be after the isArray check since _.isObject also matches arrays
18
18
  check: _.isObject,
19
- transform: perm => perm,
19
+ transform: (perm) => perm,
20
20
  },
21
21
  ];
22
22
 
@@ -27,8 +27,8 @@ module.exports = createPolicy({
27
27
  const { actions } = config;
28
28
  const { userAbility: ability } = ctx.state;
29
29
 
30
- const permissions = actions.map(action =>
31
- inputModifiers.find(modifier => modifier.check(action)).transform(action)
30
+ const permissions = actions.map((action) =>
31
+ inputModifiers.find((modifier) => modifier.check(action)).transform(action)
32
32
  );
33
33
 
34
34
  const isAuthorized = permissions.every(({ action, subject }) => ability.can(action, subject));
@@ -1,5 +1,5 @@
1
1
  'use strict';
2
2
 
3
- module.exports = policyCtx => {
3
+ module.exports = (policyCtx) => {
4
4
  return Boolean(policyCtx.state.isAuthenticated);
5
5
  };
@@ -23,7 +23,7 @@ const registerAdminPanelRoute = ({ strapi }) => {
23
23
  }
24
24
 
25
25
  ctx.type = 'html';
26
- ctx.body = fse.createReadStream(join(buildDir + '/index.html'));
26
+ ctx.body = fse.createReadStream(join(buildDir, 'index.html'));
27
27
  };
28
28
 
29
29
  strapi.server.routes([
@@ -12,7 +12,7 @@ const { AUTHOR_CODE, PUBLISH_ACTION } = require('./constants');
12
12
  * @param {string|number} roleId
13
13
  * @returns {object[]}
14
14
  */
15
- const getAllowedActionsForRole = async roleId => {
15
+ const getAllowedActionsForRole = async (roleId) => {
16
16
  const { actionProvider } = getService('permission');
17
17
 
18
18
  if (!isNil(roleId)) {