@strapi/admin 4.11.1 → 4.11.2

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 (510) hide show
  1. package/admin/src/StrapiApp.js +13 -11
  2. package/admin/src/components/AuthenticatedApp/index.js +8 -5
  3. package/admin/src/components/AuthenticatedApp/utils/api.js +3 -1
  4. package/admin/src/components/ConfigurationsProvider/index.js +3 -0
  5. package/admin/src/components/DragLayer/DragLayer.js +2 -1
  6. package/admin/src/components/GuidedTour/Homepage/components/Step.js +7 -5
  7. package/admin/src/components/GuidedTour/Homepage/components/Stepper.js +5 -2
  8. package/admin/src/components/GuidedTour/Homepage/index.js +7 -4
  9. package/admin/src/components/GuidedTour/Modal/components/Content.js +3 -2
  10. package/admin/src/components/GuidedTour/Modal/components/Modal.js +5 -4
  11. package/admin/src/components/GuidedTour/Modal/components/StepNumberWithPadding.js +3 -1
  12. package/admin/src/components/GuidedTour/Modal/components/Stepper.js +8 -5
  13. package/admin/src/components/GuidedTour/Modal/index.js +6 -3
  14. package/admin/src/components/GuidedTour/Stepper/StepLine.js +5 -3
  15. package/admin/src/components/GuidedTour/Stepper/StepNumber.js +5 -3
  16. package/admin/src/components/GuidedTour/index.js +7 -5
  17. package/admin/src/components/GuidedTour/init.js +1 -0
  18. package/admin/src/components/LanguageProvider/index.js +5 -2
  19. package/admin/src/components/LeftMenu/index.js +13 -11
  20. package/admin/src/components/LocalesProvider/index.js +2 -0
  21. package/admin/src/components/LocalesProvider/useLocalesProvider.js +1 -0
  22. package/admin/src/components/PluginsInitializer/index.js +2 -0
  23. package/admin/src/components/PrivateRoute/index.js +3 -2
  24. package/admin/src/components/Providers/index.js +10 -8
  25. package/admin/src/components/RBACProvider/index.js +3 -1
  26. package/admin/src/components/Theme/index.js +2 -0
  27. package/admin/src/components/ThemeToggleProvider/index.js +3 -1
  28. package/admin/src/components/UnauthenticatedLogo/index.js +2 -0
  29. package/admin/src/content-manager/components/AttributeFilter/Filters.js +4 -3
  30. package/admin/src/content-manager/components/AttributeFilter/hooks/useAllowedAttributes.js +1 -1
  31. package/admin/src/content-manager/components/AttributeFilter/index.js +3 -1
  32. package/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js +19 -17
  33. package/admin/src/content-manager/components/ComponentIcon/ComponentIcon.js +2 -1
  34. package/admin/src/content-manager/components/ComponentInitializer/index.js +6 -4
  35. package/admin/src/content-manager/components/DynamicTable/BulkActionsBar/index.js +5 -3
  36. package/admin/src/content-manager/components/DynamicTable/CellContent/CellValue.js +2 -2
  37. package/admin/src/content-manager/components/DynamicTable/CellContent/Media/FileWrapper.js +2 -1
  38. package/admin/src/content-manager/components/DynamicTable/CellContent/Media/index.js +2 -1
  39. package/admin/src/content-manager/components/DynamicTable/CellContent/MultipleMedias.js +3 -1
  40. package/admin/src/content-manager/components/DynamicTable/CellContent/PublicationState/PublicationState.js +2 -1
  41. package/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js +3 -1
  42. package/admin/src/content-manager/components/DynamicTable/CellContent/RelationSingle/index.js +3 -1
  43. package/admin/src/content-manager/components/DynamicTable/CellContent/RepeatableComponent/index.js +4 -3
  44. package/admin/src/content-manager/components/DynamicTable/CellContent/SingleComponent/index.js +2 -1
  45. package/admin/src/content-manager/components/DynamicTable/CellContent/index.js +4 -2
  46. package/admin/src/content-manager/components/DynamicTable/CellContent/utils/hasContent.js +2 -1
  47. package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDelete/index.js +4 -2
  48. package/admin/src/content-manager/components/DynamicTable/TableRows/index.js +6 -10
  49. package/admin/src/content-manager/components/DynamicTable/index.js +7 -5
  50. package/admin/src/content-manager/components/DynamicZone/components/AddComponentButton.js +3 -2
  51. package/admin/src/content-manager/components/DynamicZone/components/ComponentCard.js +3 -3
  52. package/admin/src/content-manager/components/DynamicZone/components/ComponentCategory.js +4 -3
  53. package/admin/src/content-manager/components/DynamicZone/components/ComponentPicker.js +2 -1
  54. package/admin/src/content-manager/components/DynamicZone/components/DynamicComponent.js +9 -10
  55. package/admin/src/content-manager/components/DynamicZone/components/DynamicZoneLabel.js +4 -3
  56. package/admin/src/content-manager/components/DynamicZone/index.js +6 -6
  57. package/admin/src/content-manager/components/EditViewDataManagerProvider/index.js +17 -19
  58. package/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js +5 -4
  59. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/cleanData.js +1 -0
  60. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/index.js +1 -1
  61. package/admin/src/content-manager/components/FieldComponent/Label.js +2 -1
  62. package/admin/src/content-manager/components/FieldComponent/index.js +11 -10
  63. package/admin/src/content-manager/components/FieldComponent/utils/select.js +3 -2
  64. package/admin/src/content-manager/components/FieldTypeIcon/index.js +7 -6
  65. package/admin/src/content-manager/components/Hint/index.js +2 -1
  66. package/admin/src/content-manager/components/InjectionZoneList/index.js +3 -1
  67. package/admin/src/content-manager/components/InputUID/endActionStyle.js +1 -1
  68. package/admin/src/content-manager/components/InputUID/index.js +9 -7
  69. package/admin/src/content-manager/components/Inputs/index.js +7 -5
  70. package/admin/src/content-manager/components/Inputs/utils/select.js +2 -1
  71. package/admin/src/content-manager/components/NonRepeatableComponent/index.js +4 -2
  72. package/admin/src/content-manager/components/PreviewWysiwyg/index.js +1 -0
  73. package/admin/src/content-manager/components/PreviewWysiwyg/utils/mdRenderer.js +1 -1
  74. package/admin/src/content-manager/components/RelationInput/RelationInput.js +19 -19
  75. package/admin/src/content-manager/components/RelationInput/components/Option.js +5 -5
  76. package/admin/src/content-manager/components/RelationInput/components/Relation.js +1 -1
  77. package/admin/src/content-manager/components/RelationInput/components/RelationItem.js +3 -5
  78. package/admin/src/content-manager/components/RelationInput/components/RelationList.js +2 -1
  79. package/admin/src/content-manager/components/RelationInputDataManager/RelationInputDataManager.js +7 -9
  80. package/admin/src/content-manager/components/RelationInputDataManager/utils/index.js +3 -3
  81. package/admin/src/content-manager/components/RelationInputDataManager/utils/normalizeRelations.js +2 -2
  82. package/admin/src/content-manager/components/RelationInputDataManager/utils/select.js +2 -1
  83. package/admin/src/content-manager/components/RepeatableComponent/components/Accordion.js +2 -1
  84. package/admin/src/content-manager/components/RepeatableComponent/components/Component.js +13 -15
  85. package/admin/src/content-manager/components/RepeatableComponent/components/Preview.js +1 -0
  86. package/admin/src/content-manager/components/RepeatableComponent/index.js +8 -9
  87. package/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +14 -11
  88. package/admin/src/content-manager/components/Wysiwyg/Editor.js +7 -3
  89. package/admin/src/content-manager/components/Wysiwyg/EditorLayout.js +5 -4
  90. package/admin/src/content-manager/components/Wysiwyg/WysiwygFooter.js +4 -2
  91. package/admin/src/content-manager/components/Wysiwyg/WysiwygNav.js +14 -13
  92. package/admin/src/content-manager/components/Wysiwyg/WysiwygStyles.js +1 -1
  93. package/admin/src/content-manager/components/Wysiwyg/index.js +12 -10
  94. package/admin/src/content-manager/hooks/index.js +3 -3
  95. package/admin/src/content-manager/hooks/useContentTypeLayout/index.js +2 -0
  96. package/admin/src/content-manager/hooks/useDragAndDrop.js +1 -0
  97. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js +7 -4
  98. package/admin/src/content-manager/hooks/useFetchContentTypeLayout/utils/formatLayouts.js +1 -1
  99. package/admin/src/content-manager/hooks/useFindRedirectionLink/index.js +2 -1
  100. package/admin/src/content-manager/hooks/useFindRedirectionLink/utils/getRedirectionLink.js +1 -1
  101. package/admin/src/content-manager/hooks/useLazyComponents/index.js +1 -0
  102. package/admin/src/content-manager/hooks/usePluginsQueryParams/index.js +1 -1
  103. package/admin/src/content-manager/hooks/useRelation/useRelation.js +3 -3
  104. package/admin/src/content-manager/hooks/useSyncRbac/index.js +3 -1
  105. package/admin/src/content-manager/hooks/useSyncRbac/reducer.js +2 -1
  106. package/admin/src/content-manager/hooks/useWysiwyg.js +1 -0
  107. package/admin/src/content-manager/pages/App/LeftMenu/index.js +5 -5
  108. package/admin/src/content-manager/pages/App/components/CardDragPreview.js +4 -3
  109. package/admin/src/content-manager/pages/App/components/ComponentDragPreview.js +4 -3
  110. package/admin/src/content-manager/pages/App/components/RelationDragPreview.js +7 -6
  111. package/admin/src/content-manager/pages/App/index.js +12 -11
  112. package/admin/src/content-manager/pages/App/reducer.js +1 -0
  113. package/admin/src/content-manager/pages/App/selectors.js +2 -1
  114. package/admin/src/content-manager/pages/App/useContentManagerInitData.js +7 -4
  115. package/admin/src/content-manager/pages/App/utils/getContentTypeLinks.js +4 -2
  116. package/admin/src/content-manager/pages/CollectionTypeRecursivePath/components/ErrorFallback.js +2 -1
  117. package/admin/src/content-manager/pages/CollectionTypeRecursivePath/index.js +8 -5
  118. package/admin/src/content-manager/pages/ComponentSetttingsView/index.js +7 -5
  119. package/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js +6 -4
  120. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFieldButton.js +9 -6
  121. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js +6 -3
  122. package/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js +4 -3
  123. package/admin/src/content-manager/pages/EditSettingsView/components/FieldButtonContent.js +6 -3
  124. package/admin/src/content-manager/pages/EditSettingsView/components/FormModal.js +12 -9
  125. package/admin/src/content-manager/pages/EditSettingsView/components/GenericInput.js +2 -1
  126. package/admin/src/content-manager/pages/EditSettingsView/components/LayoutDndProvider/index.js +1 -0
  127. package/admin/src/content-manager/pages/EditSettingsView/components/LinkToCTB.js +5 -3
  128. package/admin/src/content-manager/pages/EditSettingsView/components/ModalForm.js +9 -6
  129. package/admin/src/content-manager/pages/EditSettingsView/components/RowItemsLayout.js +4 -1
  130. package/admin/src/content-manager/pages/EditSettingsView/components/RowsLayout.js +3 -1
  131. package/admin/src/content-manager/pages/EditSettingsView/hooks/useLayoutDnd.js +1 -0
  132. package/admin/src/content-manager/pages/EditSettingsView/index.js +27 -24
  133. package/admin/src/content-manager/pages/EditSettingsView/reducer.js +4 -2
  134. package/admin/src/content-manager/pages/EditSettingsView/utils/api.js +1 -0
  135. package/admin/src/content-manager/pages/EditSettingsView/utils/layout.js +1 -1
  136. package/admin/src/content-manager/pages/EditView/DeleteLink/index.js +6 -3
  137. package/admin/src/content-manager/pages/EditView/DeleteLink/utils/select.js +1 -1
  138. package/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/index.js +6 -3
  139. package/admin/src/content-manager/pages/EditView/GridRow/index.js +4 -2
  140. package/admin/src/content-manager/pages/EditView/Header/index.js +13 -10
  141. package/admin/src/content-manager/pages/EditView/Information/index.js +5 -3
  142. package/admin/src/content-manager/pages/EditView/index.js +15 -12
  143. package/admin/src/content-manager/pages/EditView/selectors.js +2 -1
  144. package/admin/src/content-manager/pages/EditView/utils/getFieldsActionMatchingPermissions.js +2 -2
  145. package/admin/src/content-manager/pages/EditView/utils/index.js +1 -1
  146. package/admin/src/content-manager/pages/EditViewLayoutManager/Permissions.js +5 -3
  147. package/admin/src/content-manager/pages/EditViewLayoutManager/index.js +5 -2
  148. package/admin/src/content-manager/pages/EditViewLayoutManager/reducer.js +1 -0
  149. package/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +5 -4
  150. package/admin/src/content-manager/pages/ListSettingsView/components/EditFieldForm.js +12 -10
  151. package/admin/src/content-manager/pages/ListSettingsView/components/Settings.js +6 -4
  152. package/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js +8 -5
  153. package/admin/src/content-manager/pages/ListSettingsView/index.js +25 -23
  154. package/admin/src/content-manager/pages/ListSettingsView/reducer.js +2 -1
  155. package/admin/src/content-manager/pages/ListView/FieldPicker/index.js +7 -4
  156. package/admin/src/content-manager/pages/ListView/PaginationFooter/index.js +3 -2
  157. package/admin/src/content-manager/pages/ListView/index.js +29 -33
  158. package/admin/src/content-manager/pages/ListView/reducer.js +2 -1
  159. package/admin/src/content-manager/pages/ListView/selectors.js +1 -0
  160. package/admin/src/content-manager/pages/ListView/utils/buildQueryString.js +2 -1
  161. package/admin/src/content-manager/pages/ListViewLayoutManager/Permissions.js +3 -2
  162. package/admin/src/content-manager/pages/ListViewLayoutManager/index.js +5 -2
  163. package/admin/src/content-manager/pages/NoContentType/index.js +5 -3
  164. package/admin/src/content-manager/pages/NoPermissions/index.js +4 -2
  165. package/admin/src/content-manager/pages/SingleTypeRecursivePath/index.js +5 -3
  166. package/admin/src/content-manager/sharedReducers/crudReducer/actions.js +1 -1
  167. package/admin/src/content-manager/sharedReducers/crudReducer/reducer.js +0 -1
  168. package/admin/src/content-manager/testUtils/index.js +1 -1
  169. package/admin/src/content-manager/utils/index.js +0 -7
  170. package/admin/src/content-manager/utils/removePasswordFieldsFromData.js +1 -1
  171. package/admin/src/content-manager/utils/schema.js +1 -2
  172. package/admin/src/contexts/ApiTokenPermissions/index.js +1 -0
  173. package/admin/src/contexts/MarketPlace/index.js +1 -0
  174. package/admin/src/core/apis/index.js +2 -2
  175. package/admin/src/core/store/configureStore.js +1 -1
  176. package/admin/src/hooks/index.js +6 -6
  177. package/admin/src/hooks/marketplace/useFetchMarketplacePlugins/index.js +2 -1
  178. package/admin/src/hooks/marketplace/useFetchMarketplaceProviders/index.js +2 -1
  179. package/admin/src/hooks/useAdminUsers/useAdminUsers.js +1 -1
  180. package/admin/src/hooks/useConfigurations/index.js +1 -0
  181. package/admin/src/hooks/useDebounce/index.js +1 -1
  182. package/admin/src/hooks/useEnterprise/index.js +1 -0
  183. package/admin/src/hooks/useEnterprise/useEnterprise.js +36 -0
  184. package/admin/src/hooks/useFetchEnabledPlugins/index.js +2 -1
  185. package/admin/src/hooks/useFetchPermissionsLayout/index.js +1 -0
  186. package/admin/src/hooks/useFetchRole/index.js +3 -1
  187. package/admin/src/hooks/useInjectReducer/useInjectReducer.js +1 -0
  188. package/admin/src/hooks/useMenu/index.js +5 -3
  189. package/admin/src/hooks/useMenu/reducer.js +2 -1
  190. package/admin/src/hooks/useMenu/utils/getGeneralLinks.js +1 -0
  191. package/admin/src/hooks/usePermissionsDataManager/index.js +1 -0
  192. package/admin/src/hooks/useRegenerate/index.js +2 -1
  193. package/admin/src/hooks/useReleaseNotification/index.js +1 -0
  194. package/admin/src/hooks/useRolesList/index.js +3 -1
  195. package/admin/src/hooks/useSettingsForm/index.js +4 -1
  196. package/admin/src/hooks/useSettingsMenu/constants.js +46 -0
  197. package/admin/src/hooks/useSettingsMenu/index.js +75 -35
  198. package/admin/src/hooks/useThemeToggle/index.js +1 -0
  199. package/admin/src/index.js +1 -0
  200. package/admin/src/layouts/AppLayout/index.js +2 -1
  201. package/admin/src/layouts/UnauthenticatedLayout/LocaleToggle/index.js +3 -1
  202. package/admin/src/layouts/UnauthenticatedLayout/index.js +4 -2
  203. package/admin/src/pages/Admin/Onboarding/index.js +7 -5
  204. package/admin/src/pages/Admin/index.js +7 -5
  205. package/admin/src/pages/App/constants.js +2 -0
  206. package/admin/src/pages/App/index.js +20 -9
  207. package/admin/src/pages/App/reducer.js +1 -0
  208. package/admin/src/pages/App/utils/index.js +1 -1
  209. package/admin/src/pages/AuthPage/components/FieldActionWrapper/index.js +1 -1
  210. package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +6 -4
  211. package/admin/src/pages/AuthPage/components/ForgotPasswordSuccess/index.js +5 -3
  212. package/admin/src/pages/AuthPage/components/Login/BaseLogin.js +6 -4
  213. package/admin/src/pages/AuthPage/components/Login/index.js +4 -1
  214. package/admin/src/pages/AuthPage/components/Oops/index.js +5 -3
  215. package/admin/src/pages/AuthPage/components/Register/index.js +24 -22
  216. package/admin/src/pages/AuthPage/components/ResetPassword/index.js +8 -6
  217. package/admin/src/pages/AuthPage/index.js +6 -3
  218. package/admin/src/pages/AuthPage/utils/forms.js +2 -1
  219. package/admin/src/pages/HomePage/CloudBox.js +6 -4
  220. package/admin/src/pages/HomePage/ContentBlocks.js +6 -4
  221. package/admin/src/pages/HomePage/HomeHeader.js +5 -4
  222. package/admin/src/pages/HomePage/SocialLinks.js +6 -5
  223. package/admin/src/pages/HomePage/index.js +12 -10
  224. package/admin/src/pages/InstalledPluginsPage/Plugins.js +10 -8
  225. package/admin/src/pages/InstalledPluginsPage/index.js +3 -0
  226. package/admin/src/pages/InternalErrorPage/index.js +4 -3
  227. package/admin/src/pages/MarketplacePage/components/EmptyNpmPackageSearch/EmptyNpmPackageGrid.js +2 -1
  228. package/admin/src/pages/MarketplacePage/components/EmptyNpmPackageSearch/index.js +4 -2
  229. package/admin/src/pages/MarketplacePage/components/MissingPluginBanner/index.js +4 -3
  230. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/CardButton.js +4 -3
  231. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/InstallPluginButton.js +5 -3
  232. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/PackageStats.js +7 -6
  233. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/index.js +8 -5
  234. package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/FilterSelect.js +2 -1
  235. package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/FiltersPopover.js +4 -2
  236. package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/index.js +6 -4
  237. package/admin/src/pages/MarketplacePage/components/NpmPackagesGrid/index.js +5 -3
  238. package/admin/src/pages/MarketplacePage/components/NpmPackagesPagination/index.js +3 -2
  239. package/admin/src/pages/MarketplacePage/components/OfflineLayout/index.js +5 -3
  240. package/admin/src/pages/MarketplacePage/components/PageHeader/index.js +4 -3
  241. package/admin/src/pages/MarketplacePage/components/SortSelect/index.js +4 -3
  242. package/admin/src/pages/MarketplacePage/index.js +22 -20
  243. package/admin/src/pages/MarketplacePage/utils/useMarketplaceData.js +4 -2
  244. package/admin/src/pages/NotFoundPage/index.js +4 -3
  245. package/admin/src/pages/ProfilePage/components/Password/index.js +7 -6
  246. package/admin/src/pages/ProfilePage/components/Preferences/index.js +3 -2
  247. package/admin/src/pages/ProfilePage/components/UserInfo/index.js +3 -2
  248. package/admin/src/pages/ProfilePage/index.js +21 -18
  249. package/admin/src/pages/ProfilePage/utils/schema.js +1 -0
  250. package/admin/src/pages/SettingsPage/components/Filters/index.js +4 -3
  251. package/admin/src/pages/SettingsPage/components/SettingsNav/index.js +7 -5
  252. package/admin/src/pages/SettingsPage/components/Tokens/FormHead/index.js +5 -3
  253. package/admin/src/pages/SettingsPage/components/Tokens/LifeSpanInput/index.js +3 -1
  254. package/admin/src/pages/SettingsPage/components/Tokens/Regenerate/index.js +5 -3
  255. package/admin/src/pages/SettingsPage/components/Tokens/Table/DefaultButton/index.js +3 -2
  256. package/admin/src/pages/SettingsPage/components/Tokens/Table/DeleteButton/index.js +4 -3
  257. package/admin/src/pages/SettingsPage/components/Tokens/Table/ReadButton/index.js +2 -0
  258. package/admin/src/pages/SettingsPage/components/Tokens/Table/UpdateButton/index.js +2 -0
  259. package/admin/src/pages/SettingsPage/components/Tokens/Table/index.js +8 -6
  260. package/admin/src/pages/SettingsPage/components/Tokens/TokenBox/index.js +3 -2
  261. package/admin/src/pages/SettingsPage/components/Tokens/TokenDescription/index.js +2 -1
  262. package/admin/src/pages/SettingsPage/components/Tokens/TokenName/index.js +2 -1
  263. package/admin/src/pages/SettingsPage/components/Tokens/TokenTypeSelect/index.js +2 -2
  264. package/admin/src/pages/SettingsPage/{utils/defaultRoutes.js → constants.js} +16 -18
  265. package/admin/src/pages/SettingsPage/index.js +21 -6
  266. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/ActionBoundRoutes/index.js +4 -2
  267. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/BoundRoute/index.js +5 -3
  268. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/CollapsableContentType/CheckBoxWrapper.js +1 -1
  269. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/CollapsableContentType/index.js +10 -7
  270. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/ContenTypesSection/index.js +3 -1
  271. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormApiTokenContainer/index.js +5 -3
  272. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/LoadingView/index.js +4 -3
  273. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Permissions/index.js +5 -3
  274. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Regenerate/index.js +5 -3
  275. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +20 -17
  276. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/reducer.js +1 -0
  277. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/utils/schema.js +1 -1
  278. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +13 -12
  279. package/admin/src/pages/SettingsPage/pages/ApiTokens/ProtectedCreateView/index.js +2 -0
  280. package/admin/src/pages/SettingsPage/pages/ApiTokens/ProtectedEditView/index.js +2 -0
  281. package/admin/src/pages/SettingsPage/pages/ApiTokens/ProtectedListView/index.js +2 -0
  282. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/CustomizationInfos/index.js +7 -4
  283. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoInput/index.js +7 -4
  284. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/AddLogoDialog.js +4 -2
  285. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromComputerForm.js +11 -9
  286. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromUrlForm.js +5 -3
  287. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/ImageCardAsset.js +4 -3
  288. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/PendingLogoDialog.js +4 -2
  289. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/index.js +3 -1
  290. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +14 -12
  291. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/api.js +1 -0
  292. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/parseFileMetadatas.js +1 -1
  293. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/prefixAllUrls.js +1 -1
  294. package/admin/src/pages/SettingsPage/pages/Roles/CreatePage/index.js +19 -16
  295. package/admin/src/pages/SettingsPage/pages/Roles/CreatePage/utils/schema.js +1 -1
  296. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/CollapseLabel/index.js +1 -1
  297. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsButton/index.js +3 -2
  298. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/ActionRow/index.js +3 -2
  299. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/ActionRow/utils/options.js +1 -1
  300. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/index.js +8 -6
  301. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/utils/createDefaultConditionsForm.js +1 -1
  302. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/Collapse/index.js +6 -3
  303. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/Collapse/utils/generateCheckboxesActions.js +1 -0
  304. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/ActionRow/index.js +5 -2
  305. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/CarretIcon/index.js +1 -1
  306. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/Header/index.js +3 -1
  307. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/SubActionRow/index.js +4 -2
  308. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/index.js +5 -3
  309. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/index.js +3 -1
  310. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/utils/activeStyle.js +1 -0
  311. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapses/index.js +2 -0
  312. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypes/index.js +4 -2
  313. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Curve/index.js +2 -1
  314. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/index.js +5 -2
  315. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/utils/getRowLabelCheckboxesState.js +1 -0
  316. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/HiddenAction/index.js +1 -0
  317. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/index.js +5 -2
  318. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/reducer.js +1 -1
  319. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/createDefaultCTFormFromLayout.js +1 -1
  320. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/createDefaultPluginsFormFromLayout.js +1 -1
  321. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/formatContentTypesPermissionToAPI.js +3 -1
  322. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/updateConditionsToFalse.js +1 -1
  323. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PermissionsDataManagerProvider/index.js +2 -0
  324. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/Row/index.js +3 -1
  325. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/SubCategory/index.js +7 -4
  326. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/SubCategory/utils/formatActions.js +1 -0
  327. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/index.js +3 -1
  328. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/RequiredSign/index.js +1 -0
  329. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/RoleForm/index.js +4 -3
  330. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/RowLabelWithCheckbox/index.js +3 -1
  331. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/utils/index.js +1 -1
  332. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/index.js +9 -6
  333. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/utils/schema.js +1 -1
  334. package/admin/src/pages/SettingsPage/pages/Roles/ListPage/components/RoleRow/index.js +3 -2
  335. package/admin/src/pages/SettingsPage/pages/Roles/ListPage/index.js +19 -16
  336. package/admin/src/pages/SettingsPage/pages/Roles/ProtectedEditPage/index.js +3 -1
  337. package/admin/src/pages/SettingsPage/pages/Roles/ProtectedListPage/index.js +2 -0
  338. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +5 -3
  339. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/LoadingView/index.js +4 -3
  340. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +21 -18
  341. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/schema.js +1 -1
  342. package/admin/src/pages/SettingsPage/pages/TransferTokens/ListView/index.js +13 -12
  343. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedCreateView/index.js +2 -0
  344. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedEditView/index.js +2 -0
  345. package/admin/src/pages/SettingsPage/pages/TransferTokens/ProtectedListView/index.js +2 -0
  346. package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +26 -24
  347. package/admin/src/pages/SettingsPage/pages/Users/ListPage/CreateAction/index.js +3 -2
  348. package/admin/src/pages/SettingsPage/pages/Users/ListPage/DynamicTable/TableRows/index.js +7 -5
  349. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +19 -16
  350. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/utils/schema.js +1 -1
  351. package/admin/src/pages/SettingsPage/pages/Users/ListPage/PaginationFooter/index.js +3 -2
  352. package/admin/src/pages/SettingsPage/pages/Users/ListPage/index.js +12 -10
  353. package/admin/src/pages/SettingsPage/pages/Users/ListPage/utils/tableHeaders.js +1 -0
  354. package/admin/src/pages/SettingsPage/pages/Users/ProtectedEditPage/index.js +2 -1
  355. package/admin/src/pages/SettingsPage/pages/Users/ProtectedListPage/index.js +2 -0
  356. package/admin/src/pages/SettingsPage/pages/Users/components/MagicLink/MagicLinkWrapper.js +3 -2
  357. package/admin/src/pages/SettingsPage/pages/Users/components/MagicLink/index.js +4 -1
  358. package/admin/src/pages/SettingsPage/pages/Users/components/SelectRoles/index.js +4 -3
  359. package/admin/src/pages/SettingsPage/pages/Users/utils/validations/users/edit.js +1 -0
  360. package/admin/src/pages/SettingsPage/pages/Users/utils/validations/users/profile.js +1 -1
  361. package/admin/src/pages/SettingsPage/pages/Users/utils/validations/users/roles.js +1 -1
  362. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/Events/index.js +10 -10
  363. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/HeadersInput/Combobox.js +4 -3
  364. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/HeadersInput/index.js +6 -4
  365. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/TriggerContainer/index.js +4 -3
  366. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/index.js +20 -13
  367. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/utils/makeWebhookValidationSchema.js +1 -1
  368. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/index.js +6 -3
  369. package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js +30 -29
  370. package/admin/src/pages/SettingsPage/pages/Webhooks/ProtectedCreateView/index.js +2 -0
  371. package/admin/src/pages/SettingsPage/pages/Webhooks/ProtectedEditView/index.js +2 -0
  372. package/admin/src/pages/SettingsPage/pages/Webhooks/ProtectedListView/index.js +2 -0
  373. package/admin/src/pages/SettingsPage/utils/createSectionsRoutes.js +1 -0
  374. package/admin/src/pages/SettingsPage/utils/index.js +0 -2
  375. package/admin/src/pages/UseCasePage/index.js +13 -11
  376. package/admin/src/permissions/index.js +2 -1
  377. package/admin/src/reducers.js +2 -2
  378. package/admin/src/shared/components/InjectionZone/index.js +2 -0
  379. package/admin/src/shared/hooks/useAdminProvider/index.js +1 -0
  380. package/admin/src/utils/createRoute.js +2 -1
  381. package/admin/src/utils/index.js +3 -3
  382. package/build/1970.d246745e.chunk.js +1 -0
  383. package/build/3528.969338e2.chunk.js +7 -0
  384. package/build/5563.8a76bb1d.chunk.js +79 -0
  385. package/build/5932.9e1f8f92.chunk.js +1 -0
  386. package/build/7018.0e8a6297.chunk.js +1 -0
  387. package/build/7259.eac09d4b.chunk.js +1 -0
  388. package/build/{8976.0022f5a3.chunk.js → 7447.3dabc92f.chunk.js} +7 -22
  389. package/build/{5297.31c9ffdc.chunk.js → 9363.6a7a78fc.chunk.js} +16 -22
  390. package/build/{9932.5ef475c5.chunk.js → 9932.7e2b71de.chunk.js} +4 -4
  391. package/build/Admin-authenticatedApp.4e158a8c.chunk.js +79 -0
  392. package/build/{Admin_InternalErrorPage.f25f04f3.chunk.js → Admin_InternalErrorPage.4a6f7b20.chunk.js} +1 -1
  393. package/build/Admin_homePage.6cd6c25c.chunk.js +73 -0
  394. package/build/Admin_marketplace.c82c1d3c.chunk.js +55 -0
  395. package/build/Admin_profilePage.9d70d609.chunk.js +13 -0
  396. package/build/Admin_settingsPage.fefeafa0.chunk.js +79 -0
  397. package/build/Upload_ConfigureTheView.34f449d7.chunk.js +1 -0
  398. package/build/admin-app.42c7a752.chunk.js +63 -0
  399. package/build/admin-edit-roles-page.6d62ca0b.chunk.js +267 -0
  400. package/build/admin-edit-users.bce64103.chunk.js +10 -0
  401. package/build/{admin-roles-list.b2577370.chunk.js → admin-roles-list.81ae57e3.chunk.js} +4 -4
  402. package/build/admin-users.1ec50325.chunk.js +11 -0
  403. package/build/api-tokens-list-page.36a241c1.chunk.js +16 -0
  404. package/build/audit-logs-settings-page.fca8e2a0.chunk.js +1 -0
  405. package/build/content-manager.d6e60c78.chunk.js +1094 -0
  406. package/build/content-type-builder-list-view.c28d33a6.chunk.js +211 -0
  407. package/build/content-type-builder.dc0c8745.chunk.js +132 -0
  408. package/build/email-settings-page.aee46eaa.chunk.js +11 -0
  409. package/build/i18n-settings-page.4bc37a3f.chunk.js +9 -0
  410. package/build/index.html +1 -1
  411. package/build/main.9b423e8b.js +2926 -0
  412. package/build/review-workflows-settings.fc0b59ca.chunk.js +61 -0
  413. package/build/{runtime~main.cd701354.js → runtime~main.2d0ed226.js} +2 -2
  414. package/build/{sso-settings-page.a3da20a9.chunk.js → sso-settings-page.52f8d7de.chunk.js} +1 -1
  415. package/build/transfer-tokens-list-page.ae9900e4.chunk.js +16 -0
  416. package/build/upload-settings.a05aa26c.chunk.js +14 -0
  417. package/build/upload.b0efd607.chunk.js +26 -0
  418. package/build/users-advanced-settings-page.d9e11bab.chunk.js +9 -0
  419. package/build/users-email-settings-page.0bc87315.chunk.js +9 -0
  420. package/build/users-providers-settings-page.e88f1ac5.chunk.js +14 -0
  421. package/build/users-roles-settings-page.573a5c3e.chunk.js +30 -0
  422. package/build/webhook-edit-page.1e8c9382.chunk.js +31 -0
  423. package/build/webhook-list-page.b2bcb3b6.chunk.js +63 -0
  424. package/ee/admin/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/ReviewWorkflowsStageEE.js +2 -1
  425. package/ee/admin/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/getTableColumn.js +4 -2
  426. package/ee/admin/content-manager/pages/EditView/InformationBox/InformationBoxEE.js +4 -3
  427. package/ee/admin/hooks/useAuthProviders/index.js +3 -1
  428. package/ee/admin/hooks/useLicenseLimitNotification/index.js +4 -2
  429. package/ee/admin/hooks/useLicenseLimits/index.js +1 -0
  430. package/ee/admin/hooks/useSettingsMenu/constants.js +43 -0
  431. package/ee/admin/pages/App/{utils/customRoutes.js → constants.js} +2 -4
  432. package/ee/admin/pages/AuthPage/components/Login/index.js +5 -3
  433. package/ee/admin/pages/AuthPage/components/Providers/SSOProviders.js +3 -2
  434. package/ee/admin/pages/AuthPage/components/Providers/index.js +8 -5
  435. package/ee/admin/pages/AuthPage/utils/forms.js +1 -1
  436. package/ee/admin/pages/AuthResponse/index.js +7 -5
  437. package/ee/admin/pages/SettingsPage/constants.js +49 -0
  438. package/ee/admin/pages/SettingsPage/pages/ApplicationInfosPage/components/AdminSeatInfo/index.js +5 -3
  439. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/ComboboxFilter/index.js +2 -1
  440. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/Modal/ActionBody.js +4 -1
  441. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/Modal/ActionItem.js +2 -1
  442. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/Modal/index.js +10 -3
  443. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/PaginationFooter/index.js +3 -2
  444. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/TableRows/index.js +5 -3
  445. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/hooks/useAuditLogsData.js +1 -1
  446. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/hooks/useFormatTimeStamp.js +1 -1
  447. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/index.js +19 -16
  448. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/utils/getDisplayedFilters.js +2 -1
  449. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ProtectedListPage/index.js +2 -0
  450. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/ReviewWorkflows.js +13 -12
  451. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/actions/index.js +2 -2
  452. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/AddStage/AddStage.js +2 -2
  453. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/StageDragPreview/StageDragPreview.js +4 -3
  454. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/Stage.js +10 -9
  455. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stages.js +5 -3
  456. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/hooks/useReviewWorkflows.js +1 -1
  457. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/reducer/index.js +2 -2
  458. package/ee/admin/pages/SettingsPage/pages/SingleSignOn/index.js +21 -18
  459. package/ee/admin/pages/SettingsPage/pages/Users/ListPage/CreateAction/index.js +5 -3
  460. package/ee/admin/pages/SettingsPage/pages/Users/components/MagicLink/index.js +3 -1
  461. package/ee/server/utils/persisted-tables.js +22 -29
  462. package/package.json +9 -9
  463. package/server/strategies/api-token.js +1 -8
  464. package/admin/src/hooks/useSettingsMenu/init.js +0 -34
  465. package/admin/src/hooks/useSettingsMenu/reducer.js +0 -41
  466. package/admin/src/hooks/useSettingsMenu/utils/adminLinks.js +0 -4
  467. package/admin/src/hooks/useSettingsMenu/utils/customAdminLinks.js +0 -1
  468. package/admin/src/hooks/useSettingsMenu/utils/customGlobalLinks.js +0 -1
  469. package/admin/src/hooks/useSettingsMenu/utils/defaultAdminLinks.js +0 -21
  470. package/admin/src/hooks/useSettingsMenu/utils/defaultGlobalLinks.js +0 -34
  471. package/admin/src/hooks/useSettingsMenu/utils/globalLinks.js +0 -4
  472. package/admin/src/pages/App/utils/customRoutes.js +0 -3
  473. package/admin/src/pages/App/utils/defaultRoutes.js +0 -3
  474. package/admin/src/pages/App/utils/routes.js +0 -4
  475. package/admin/src/pages/SettingsPage/utils/customRoutes.js +0 -3
  476. package/admin/src/pages/SettingsPage/utils/routes.js +0 -5
  477. package/build/5563.badbffde.chunk.js +0 -79
  478. package/build/5932.bc068e5d.chunk.js +0 -1
  479. package/build/7259.5d0de931.chunk.js +0 -1
  480. package/build/Admin-authenticatedApp.98419437.chunk.js +0 -79
  481. package/build/Admin_homePage.05063e43.chunk.js +0 -73
  482. package/build/Admin_marketplace.005d2d5b.chunk.js +0 -55
  483. package/build/Admin_profilePage.62a7e480.chunk.js +0 -13
  484. package/build/Admin_settingsPage.ed1f5cb0.chunk.js +0 -79
  485. package/build/Upload_ConfigureTheView.121deffb.chunk.js +0 -1
  486. package/build/admin-app.3c186e76.chunk.js +0 -63
  487. package/build/admin-edit-roles-page.bfe3304d.chunk.js +0 -282
  488. package/build/admin-edit-users.6efe0382.chunk.js +0 -10
  489. package/build/admin-users.4af49ccf.chunk.js +0 -26
  490. package/build/api-tokens-list-page.01a4d5cd.chunk.js +0 -16
  491. package/build/audit-logs-settings-page.b165679b.chunk.js +0 -16
  492. package/build/content-manager.fe913e72.chunk.js +0 -1094
  493. package/build/content-type-builder-list-view.58f9ed20.chunk.js +0 -211
  494. package/build/content-type-builder.baeb0413.chunk.js +0 -132
  495. package/build/email-settings-page.8caad83f.chunk.js +0 -11
  496. package/build/i18n-settings-page.579d5eab.chunk.js +0 -9
  497. package/build/main.beb306d5.js +0 -2926
  498. package/build/review-workflows-settings.f0efc683.chunk.js +0 -61
  499. package/build/transfer-tokens-list-page.5d68d590.chunk.js +0 -16
  500. package/build/upload-settings.2c1565d6.chunk.js +0 -14
  501. package/build/upload.257b2aef.chunk.js +0 -26
  502. package/build/users-advanced-settings-page.ddd29040.chunk.js +0 -9
  503. package/build/users-email-settings-page.717e2a51.chunk.js +0 -24
  504. package/build/users-providers-settings-page.c7eae829.chunk.js +0 -29
  505. package/build/users-roles-settings-page.63cf2838.chunk.js +0 -30
  506. package/build/webhook-edit-page.8576742e.chunk.js +0 -31
  507. package/build/webhook-list-page.abf5747c.chunk.js +0 -63
  508. package/ee/admin/hooks/useSettingsMenu/utils/customAdminLinks.js +0 -17
  509. package/ee/admin/hooks/useSettingsMenu/utils/customGlobalLinks.js +0 -25
  510. package/ee/admin/pages/SettingsPage/utils/customRoutes.js +0 -45
@@ -1,13 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9497],{84355:function(k,T,a){a.r(T),a.d(T,{default:function(){return ce}});var e=a(32735),s=a(69262),f=a(67879),z=a(92802),E=a(20108),O=a(74758),R=a(94638),U=a(27649),Z=a(82055),P=a(17e3),S=a(41415),u=a(72850),M=a(87933),q=a(66456),_=a(60216),t=a.n(_),x=a(49372),C=a(15335),c=a(5803);const j=({errors:r,onChange:d,values:m})=>{const{formatMessage:i}=(0,f.Z)();return e.createElement(u.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(M.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(x.Z,{variant:"delta",as:"h2"},i({id:"global.profile",defaultMessage:"Profile"})),e.createElement(C.r,{gap:5},e.createElement(c.P,{s:12,col:6},e.createElement(s.jm,{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},error:r.firstname,onChange:d,value:m.firstname,type:"text",name:"firstname",required:!0})),e.createElement(c.P,{s:12,col:6},e.createElement(s.jm,{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},error:r.lastname,onChange:d,value:m.lastname,type:"text",name:"lastname"})),e.createElement(c.P,{s:12,col:6},e.createElement(s.jm,{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},error:r.email,onChange:d,value:m.email,type:"email",name:"email",required:!0})),e.createElement(c.P,{s:12,col:6},e.createElement(s.jm,{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},error:r.username,onChange:d,value:m.username,type:"text",name:"username"})))))};j.propTypes={errors:t().shape({firstname:t().string,lastname:t().string,username:t().string,email:t().string}),onChange:t().func,values:t().shape({firstname:t().string,lastname:t().string,username:t().string,email:t().string})},j.defaultProps={errors:{},onChange(){},values:{firstname:"",lastname:"",username:"",email:""}};var ee=j,G=a(68465),W=a(84967),ae=a(23940),te=a.n(ae);const D=({onChange:r,values:d,localeNames:m,allApplicationThemes:i})=>{const{formatMessage:n}=(0,f.Z)(),L=Object.keys(i).filter(o=>i[o]);return e.createElement(u.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(M.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(M.k,{direction:"column",alignItems:"stretch",gap:1},e.createElement(x.Z,{variant:"delta",as:"h2"},n({id:"Settings.profile.form.section.experience.title",defaultMessage:"Experience"})),e.createElement(x.Z,null,n({id:"Settings.profile.form.section.experience.interfaceLanguageHelp",defaultMessage:"Preference changes will apply only to you. More information is available {here}."},{here:e.createElement(u.x,{as:"a",color:"primary600",target:"_blank",rel:"noopener noreferrer",href:"https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#locales"},n({id:"Settings.profile.form.section.experience.here",defaultMessage:"here"}))}))),e.createElement(C.r,{gap:5},e.createElement(c.P,{s:12,col:6},e.createElement(G.P,{label:n({id:"Settings.profile.form.section.experience.interfaceLanguage",defaultMessage:"Interface language"}),placeholder:n({id:"global.select",defaultMessage:"Select"}),hint:n({id:"Settings.profile.form.section.experience.interfaceLanguage.hint",defaultMessage:"This will only display your own interface in the chosen language."}),onClear:()=>{r({target:{name:"preferedLanguage",value:null}})},clearLabel:n({id:"Settings.profile.form.section.experience.clear.select",defaultMessage:"Clear the interface language selected"}),value:d.preferedLanguage,onChange:o=>{r({target:{name:"preferedLanguage",value:o}})}},Object.entries(m).map(([o,I])=>e.createElement(W.W,{value:o,key:o},I)))),e.createElement(c.P,{s:12,col:6},e.createElement(G.P,{label:n({id:"Settings.profile.form.section.experience.mode.label",defaultMessage:"Interface mode"}),placeholder:n({id:"components.Select.placeholder",defaultMessage:"Select"}),hint:n({id:"Settings.profile.form.section.experience.mode.hint",defaultMessage:"Displays your interface in the chosen mode."}),value:d.currentTheme,onChange:o=>{r({target:{name:"currentTheme",value:o}})}},L.map(o=>e.createElement(W.W,{value:o,key:o},n({id:"Settings.profile.form.section.experience.mode.option-label",defaultMessage:"{name} mode"},{name:n({id:o,defaultMessage:te()(o)})}))))))))};D.propTypes={allApplicationThemes:t().object,onChange:t().func,values:t().shape({preferedLanguage:t().string,currentTheme:t().string}),localeNames:t().object},D.defaultProps={allApplicationThemes:{},onChange(){},values:{preferedLanguage:null,currentTheme:""},localeNames:{}};var se=D,Y=a(8471),$=a(10369),re=a(63642),F=a(54894),H=a(60492);const X=(0,Y.ZP)($.o)`
2
- ::-ms-reveal {
3
- display: none;
4
- }
5
- `,N=(0,Y.ZP)(re.E)`
6
- svg {
7
- height: ${(0,s.Q1)(16)};
8
- width: ${(0,s.Q1)(16)};
9
- path {
10
- fill: ${({theme:r})=>r.colors.neutral600};
11
- }
12
- }
13
- `,B=({errors:r,onChange:d,values:m})=>{const{formatMessage:i}=(0,f.Z)(),[n,L]=(0,e.useState)(!1),[o,I]=(0,e.useState)(!1),[A,Q]=(0,e.useState)(!1);return e.createElement(u.x,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(M.k,{direction:"column",alignItems:"stretch",gap:4},e.createElement(x.Z,{variant:"delta",as:"h2"},i({id:"global.change-password",defaultMessage:"Change password"})),e.createElement(C.r,{gap:5},e.createElement(c.P,{s:12,col:6},e.createElement($.o,{error:r.currentPassword?i({id:r.currentPassword,defaultMessage:r.currentPassword}):"",onChange:d,value:m.currentPassword,label:i({id:"Auth.form.currentPassword.label",defaultMessage:"Current Password"}),name:"currentPassword",type:n?"text":"password",endAction:e.createElement(N,{onClick:h=>{h.stopPropagation(),L(w=>!w)},label:i(n?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},n?e.createElement(F.Z,null):e.createElement(H.Z,null))}))),e.createElement(C.r,{gap:5},e.createElement(c.P,{s:12,col:6},e.createElement(X,{error:r.password?i({id:r.password,defaultMessage:r.password}):"",onChange:d,value:m.password,label:i({id:"global.password",defaultMessage:"Password"}),name:"password",type:o?"text":"password",autoComplete:"new-password",endAction:e.createElement(N,{onClick:h=>{h.stopPropagation(),I(w=>!w)},label:i(o?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},o?e.createElement(F.Z,null):e.createElement(H.Z,null))})),e.createElement(c.P,{s:12,col:6},e.createElement(X,{error:r.confirmPassword?i({id:r.confirmPassword,defaultMessage:r.confirmPassword}):"",onChange:d,value:m.confirmPassword,label:i({id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"}),name:"confirmPassword",type:A?"text":"password",autoComplete:"new-password",endAction:e.createElement(N,{onClick:h=>{h.stopPropagation(),Q(w=>!w)},label:i(A?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},A?e.createElement(F.Z,null):e.createElement(H.Z,null))})))))};B.propTypes={errors:t().shape({currentPassword:t().string,password:t().string,confirmPassword:t().string}),onChange:t().func,values:t().shape({currentPassword:t().string,password:t().string,confirmPassword:t().string})},B.defaultProps={errors:{},onChange(){},values:{currentPassword:"",password:"",confirmPassword:""}};var ne=B,oe=a(20139),le=a(32308),ie=a(24346),de=a(1057),me=ie.Ry().shape(de.Rw),J=a(8997),ce=()=>{const{changeLocale:r,localeNames:d}=(0,oe.Z)(),{setUserDisplayName:m}=(0,s.L7)(),i=(0,E.useQueryClient)(),{formatMessage:n}=(0,f.Z)(),{trackUsage:L}=(0,s.rS)(),o=(0,s.lm)(),{lockApp:I,unlockApp:A}=(0,s.o1)(),{notifyStatus:Q}=(0,R.G)(),{currentTheme:h,themes:w,onChangeTheme:ue}=(0,le.M1)(),{get:V,put:ge}=(0,s.kY)();(0,s.go)();const{isLoading:pe,data:b}=(0,E.useQuery)("user",async()=>{const{data:l}=await V("/admin/users/me");return l.data},{onSuccess(){Q(n({id:"Settings.profile.form.notify.data.loaded",defaultMessage:"Your profile data has been loaded"}))},onError(){o({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),{isLoading:fe,data:he}=(0,E.useQuery)(["providers","isSSOLocked"],async()=>{if(window.strapi.isEE){const{data:{data:l}}=await V("/admin/providers/isSSOLocked");return l}return{isSSOLocked:!1}},{onError(){o({type:"warning",message:{id:"Settings.permissions.users.sso.provider.error"}})}}),we=pe||fe,K=(0,E.useMutation)(async l=>{const{confirmPassword:g,currentTheme:p,...v}=l,{data:y}=await ge("/admin/users/me",v);return{...y.data,currentTheme:l.currentTheme}},{async onSuccess(l){await i.invalidateQueries("user");const{email:g,firstname:p,lastname:v,username:y,preferedLanguage:Te}=l;s.I8.setUserInfo({email:g,firstname:p,lastname:v,username:y,preferedLanguage:Te});const Ze=l.username||(0,J.Pp)(l.firstname,l.lastname);m(Ze),r(l.preferedLanguage),ue(l.currentTheme),L("didChangeMode",{newMode:l.currentTheme}),o({type:"success",message:{id:"notification.success.saved",defaultMessage:"Saved"}})},onSettled(){A()},refetchActive:!0}),{isLoading:ve}=K,Ee=async(l,{setErrors:g})=>{I();const p=l.username||null;K.mutate({...l,username:p},{onError(v){const y=v?.response?.data;return y?.data?g(y.data):o({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})};if(we)return e.createElement(U.o,{"aria-busy":"true"},e.createElement(O.q,{title:n({id:"Settings.profile.form.section.helmet.title",defaultMessage:"User profile"})}),e.createElement(Z.T,{title:n({id:"Settings.profile.form.section.profile.page.title",defaultMessage:"Profile page"})}),e.createElement(P.D,null,e.createElement(s.dO,null)));const Pe=he?.isSSOLocked,{email:Se,firstname:ye,lastname:Me,username:Le,preferedLanguage:Ie}=b,Ae={email:Se,firstname:ye,lastname:Me,username:Le,preferedLanguage:Ie,currentTheme:h};return e.createElement(U.o,{"aria-busy":ve},e.createElement(O.q,{title:n({id:"Settings.profile.form.section.helmet.title",defaultMessage:"User profile"})}),e.createElement(z.J9,{onSubmit:Ee,initialValues:Ae,validateOnChange:!1,validationSchema:me,enableReinitialize:!0},({errors:l,values:g,handleChange:p,isSubmitting:v})=>e.createElement(s.l0,null,e.createElement(Z.T,{title:b.username||(0,J.Pp)(b.firstname,b.lastname),primaryAction:e.createElement(S.z,{startIcon:e.createElement(q.Z,null),loading:v,type:"submit"},n({id:"global.save",defaultMessage:"Save"}))}),e.createElement(u.x,{paddingBottom:10},e.createElement(P.D,null,e.createElement(M.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(ee,{errors:l,onChange:p,values:g}),!Pe&&e.createElement(ne,{errors:l,onChange:p,values:g}),e.createElement(se,{allApplicationThemes:w,onChange:p,values:g,localeNames:d})))))))}},1057:function(k,T,a){a.d(T,{YM:function(){return Z},Rw:function(){return E}});var e=a(24346),s=a(69262);const f={firstname:e.Z_().trim().required(s.I0.required),lastname:e.Z_(),email:e.Z_().email(s.I0.email).lowercase().required(s.I0.required),username:e.Z_().nullable(),password:e.Z_().min(8,s.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number"),confirmPassword:e.Z_().min(8,s.I0.minLength).oneOf([e.iH("password"),null],"components.Input.error.password.noMatch").when("password",(P,S)=>P?S.required(s.I0.required):S)};var E={...f,currentPassword:e.Z_().when(["password","confirmPassword"],(P,S,u)=>P||S?u.required(s.I0.required):u),preferedLanguage:e.Z_().nullable()},R={roles:e.IX().min(1,s.I0.required).required(s.I0.required)},Z=e.Ry().shape({...f,isActive:e.Xg(),...R})}}]);
@@ -1,79 +0,0 @@
1
- (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5895],{74750:function(D,p,t){"use strict";t.r(p),t.d(p,{SettingsPage:function(){return St},default:function(){return Re}});var e=t(32735),l=t(69262),u=t(53038),h=t(96709),r=t(67879),x=t(74758),g=t(32308),C=t(8997),T=t(20108),z=t(27649),Z=t(82055),P=t(41415),L=t(17e3),S=t(87933),d=t(49372),O=t(15335),y=t(5803),I=t(50428),B=t(66456),W=t(47361),H=t(83983),V=t(60216),s=t.n(V),U=t(72850);const Q=750,K=100,Y=["image/jpeg","image/png","image/svg+xml"];var w=t(23272),q=t(68387),X=t(50563),b=t(98779),_=t(19406),tt=t(44647),et=t(85025),nt=t(55225),$=t(97889);const ht={localImage:void 0};var Rt=(o=ht,n)=>(0,$.ZP)(o,a=>{switch(n.type){case"SET_LOCAL_IMAGE":{a.localImage=n.value;break}default:return a}});const ot=({onChangeLogo:o,customLogo:n,goTo:a,Component:i,modalTitle:m,next:E,prev:R,currentStep:v})=>{const[{localImage:f},c]=(0,e.useReducer)(Rt,ht),{formatMessage:A}=(0,r.Z)(),M=j=>{c({type:"SET_LOCAL_IMAGE",value:j})},F=()=>{a(null)};return v?e.createElement(et.P,{labelledBy:"modal",onClose:F},e.createElement(nt.x,null,e.createElement(d.Z,{fontWeight:"bold",as:"h2",id:"modal"},A(m))),e.createElement(i,{setLocalImage:M,goTo:a,next:E,prev:R,onClose:F,asset:f||n,onChangeLogo:o})):null};ot.defaultProps={Component:void 0,currentStep:void 0,customLogo:void 0,modalTitle:void 0,next:null,prev:null},ot.propTypes={Component:s().elementType,currentStep:s().string,customLogo:s().shape({name:s().string,url:s().string,width:s().number,height:s().number,ext:s().string}),goTo:s().func.isRequired,modalTitle:s().shape({id:s().string,defaultMessage:s().string}),next:s().string,onChangeLogo:s().func.isRequired,prev:s().string};var Tt=ot;const ft={currentStep:void 0};var Pt=(o=ft,n)=>(0,$.ZP)(o,a=>{switch(n.type){case"GO_TO":{a.currentStep=n.to;break}default:return a}}),Ot=t(91215),at=t(90980),It=t(9026),st=t(3653),Dt=t(8471),At=t(98275),Bt=t(87107),Ut=t(99140),jt=t(47851),it=t(11406),zt=t(47284);const Zt={id:"Settings.application.customization.modal.upload.error-format",defaultMessage:"Wrong format uploaded (accepted formats only: jpeg, jpg, png, svg)."},Et={id:"Settings.application.customization.modal.upload.error-size",defaultMessage:"The file uploaded is too large (max dimension: {dimension}x{dimension}, max file size: {size}KB)"},Ft=o=>new Promise(n=>{const a=new FileReader;a.onload=()=>{const i=new Image;i.onload=function(){n({width:i.width,height:i.height})},i.src=a.result},a.readAsDataURL(o)}),Wt=(o,n)=>({ext:o.name.split(".").pop(),size:o.size/1e3,name:o.name,url:URL.createObjectURL(o),rawFile:o,width:n.width,height:n.height}),vt=async o=>{let n;if(!Y.includes(o.type))throw n=new Error("File format"),n.displayMessage=Zt,n;const i=await Ft(o);if(!(i.width<=Q&&i.height<=Q))throw n=new Error("File sizing"),n.displayMessage=Et,n;const E=Wt(o,i);if(!(E.size<=K))throw n=new Error("File sizing"),n.displayMessage=Et,n;return E},Kt=(0,Dt.ZP)(At._)`
2
- opacity: 0;
3
- position: absolute;
4
- top: 0;
5
- bottom: 0;
6
- left: 0;
7
- right: 0;
8
- z-index: 1;
9
- `,lt=({setLocalImage:o,goTo:n,next:a,onClose:i})=>{const{formatMessage:m}=(0,r.Z)(),[E,R]=(0,e.useState)(!1),[v,f]=(0,e.useState)(void 0),c=(0,e.useRef)(null),A=()=>R(!0),M=()=>R(!1),F=J=>{J.preventDefault(),c.current.click()},j=async()=>{M();const J=c.current.files[0];if(J)try{const N=await vt(J);o(N),n(a)}catch(N){if(N.displayMessage)f(m(N.displayMessage,{size:K,dimension:Q})),c.current.focus();else throw N}},G=()=>E?"primary500":v?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(U.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(Bt.g,{name:"logo-upload",error:v},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(S.k,{direction:"column",alignItems:"stretch",gap:2},e.createElement(S.k,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:E?"primary100":"neutral100",borderColor:G(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:A,onDragLeave:M},e.createElement(Ut.J,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:zt.Z,"aria-hidden":!0}),e.createElement(U.x,{paddingTop:3,paddingBottom:5},e.createElement(d.Z,{variant:"delta",as:"span"},m({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(Kt,{accept:Y,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:j,ref:c,id:"logo-upload"}),e.createElement(P.z,{type:"button",onClick:F},m({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(U.x,{paddingTop:6},e.createElement(d.Z,{variant:"pi",textColor:"neutral600"},m({id:"Settings.application.customization.modal.upload.file-validation",defaultMessage:"Max dimension: {dimension}x{dimension}, Max size: {size}KB"},{size:K,dimension:Q})))),e.createElement(jt.c,null)))))),e.createElement(it.m,{startActions:e.createElement(P.z,{onClick:i,variant:"tertiary"},m({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};lt.defaultProps={next:null},lt.propTypes={goTo:s().func.isRequired,next:s().string,onClose:s().func.isRequired,setLocalImage:s().func.isRequired};var $t=lt,Nt=t(10369),Gt=async o=>{try{const{get:n}=(0,l.tg)(),a=await n(o,{responseType:"blob",timeout:8e3});return new File([a.data],a.config.url,{type:a.headers["content-type"]})}catch(n){throw n.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},n}};const rt=({goTo:o,next:n,onClose:a,setLocalImage:i})=>{const{formatMessage:m}=(0,r.Z)(),[E,R]=(0,e.useState)(""),[v,f]=(0,e.useState)(null),c=M=>{R(M.target.value)},A=async()=>{try{const M=await Gt(E),F=await vt(M);i(F),o(n)}catch(M){if(M.displayMessage)f(m(M.displayMessage,{size:K,dimension:Q}));else throw M}};return e.createElement("form",{onSubmit:M=>{M.preventDefault(),A()}},e.createElement(U.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(Nt.o,{label:m({id:"Settings.application.customization.modal.upload.from-url.input-label",defaultMessage:"URL"}),error:v,onChange:c,value:E,name:"logo-url"})),e.createElement(it.m,{startActions:e.createElement(P.z,{onClick:a,variant:"tertiary"},m({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(P.z,{type:"submit"},m({id:"Settings.application.customization.modal.upload.next",defaultMessage:"Next"}))}))};rt.defaultProps={next:null},rt.propTypes={goTo:s().func.isRequired,next:s().string,onClose:s().func.isRequired,setLocalImage:s().func.isRequired};var Ht=rt;const dt=({setLocalImage:o,goTo:n,next:a,onClose:i})=>{const{formatMessage:m}=(0,r.Z)();return e.createElement(Ot.v,{label:m({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(U.x,{paddingLeft:8,paddingRight:8},e.createElement(at.m,null,e.createElement(at.O,null,m({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(at.O,null,m({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement(It.i,null)),e.createElement(st.n,null,e.createElement(st.x,null,e.createElement($t,{onClose:i,setLocalImage:o,goTo:n,next:a})),e.createElement(st.x,null,e.createElement(Ht,{onClose:i,setLocalImage:o,goTo:n,next:a}))))};dt.defaultProps={next:null},dt.propTypes={goTo:s().func.isRequired,next:s().string,onClose:s().func.isRequired,setLocalImage:s().func.isRequired};var Vt=dt,Qt=t(42466),Jt=t(20853),Xt=t(2800),Yt=t(26835),bt=t(41048),xt=t(37083),wt=t(11505);const Mt=({asset:o})=>{const{formatMessage:n}=(0,r.Z)();return e.createElement(Qt.Z,null,e.createElement(Jt.O,null,e.createElement(Xt.H,{size:"S",src:o.url})),e.createElement(Yt.e,null,e.createElement(bt.a,null,e.createElement(xt.l,null,o.name),e.createElement(xt._,null,`${o.ext.toUpperCase()} - ${o.width}\u2715${o.height}`)),e.createElement(wt.E,null,n({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};Mt.propTypes={asset:s().shape({name:s().string,url:s().string,width:s().number,height:s().number,ext:s().string}).isRequired};var kt=Mt;const ct=({onClose:o,asset:n,prev:a,next:i,goTo:m,setLocalImage:E,onChangeLogo:R})=>{const{formatMessage:v}=(0,r.Z)(),f=()=>{E(void 0),m(a)},c=()=>{R(n),m(i)};return e.createElement(e.Fragment,null,e.createElement(U.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(S.k,{justifyContent:"space-between",paddingBottom:6},e.createElement(S.k,{direction:"column",alignItems:"flex-start"},e.createElement(d.Z,{variant:"pi",fontWeight:"bold"},v({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement(d.Z,{variant:"pi",textColor:"neutral500"},v({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(P.z,{onClick:f,variant:"secondary"},v({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(U.x,{maxWidth:(0,l.Q1)(180)},n.url?e.createElement(kt,{asset:n}):null)),e.createElement(it.m,{startActions:e.createElement(P.z,{onClick:o,variant:"tertiary"},v({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(P.z,{onClick:c},v({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};ct.defaultProps={next:null,prev:null},ct.propTypes={goTo:s().func.isRequired,asset:s().shape({name:s().string,url:s().string,width:s().number,height:s().number,ext:s().string}).isRequired,next:s().string,onClose:s().func.isRequired,onChangeLogo:s().func.isRequired,prev:s().string,setLocalImage:s().func.isRequired};var qt=ct,_t={upload:{Component:Vt,modalTitle:{id:"Settings.application.customization.modal.upload",defaultMessage:"Upload logo"},next:"pending",prev:null},pending:{Component:qt,modalTitle:{id:"Settings.application.customization.modal.pending",defaultMessage:"Pending logo"},next:null,prev:"upload"}};const mt=({canUpdate:o,customLogo:n,defaultLogo:a,hint:i,label:m,onChangeLogo:E,onResetLogo:R})=>{const[{currentStep:v},f]=(0,e.useReducer)(Pt,ft),{Component:c,next:A,prev:M,modalTitle:F}=_t[v]||{},{formatMessage:j}=(0,r.Z)(),G=J=>{f({type:"GO_TO",to:J})};return e.createElement(e.Fragment,null,e.createElement(w.F,{label:m,selectedSlide:0,hint:i,previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:n?.name||"logo.png",actions:e.createElement(q.b,null,e.createElement(X.h,{disabled:!o,onClick:()=>G(n?"pending":"upload"),label:j({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(_.Z,null)}),n&&e.createElement(X.h,{disabled:!o,onClick:R,label:j({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement(tt.Z,null)}))},e.createElement(b.q,{label:j({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(U.x,{maxHeight:"40%",maxWidth:"40%",as:"img",src:n?.url||a,alt:j({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement(Tt,{Component:c,currentStep:v,onChangeLogo:E,customLogo:n,goTo:G,next:A,prev:M,modalTitle:F}))};mt.defaultProps={canUpdate:!1,customLogo:null,hint:null},mt.propTypes={canUpdate:s().bool,customLogo:s().shape({url:s().string,name:s().string}),label:s().string.isRequired,hint:s().string,defaultLogo:s().string.isRequired,onChangeLogo:s().func.isRequired,onResetLogo:s().func.isRequired};var Ct=mt;const ut={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}},authLogo:{display:null,submit:{rawFile:null,isReset:!1}}};var te=(o=ut,n)=>(0,$.ZP)(o,a=>{switch(n.type){case"SET_CUSTOM_MENU_LOGO":{a.menuLogo.display=n.value,a.menuLogo.submit.rawFile=n.value.rawFile;break}case"SET_CUSTOM_AUTH_LOGO":{a.authLogo.display=n.value,a.authLogo.submit.rawFile=n.value.rawFile;break}case"RESET_CUSTOM_MENU_LOGO":{a.menuLogo.display=null,a.menuLogo.submit={rawFile:null,isReset:!0};break}case"RESET_CUSTOM_AUTH_LOGO":{a.authLogo.display=null,a.authLogo.submit={rawFile:null,isReset:!0};break}default:return a}}),ee=t(86349),ne=t.n(ee),oe=(o,n)=>ne()(o,{menuLogo:{display:n.menuLogo},authLogo:{display:n.authLogo}});const gt=(0,e.forwardRef)(({canUpdate:o,projectSettingsStored:n},a)=>{const{formatMessage:i}=(0,r.Z)(),{trackUsage:m}=(0,l.rS)(),{logos:{menu:E,auth:R}}=(0,g.um)(),[{menuLogo:v,authLogo:f},c]=(0,e.useReducer)(te,ut,()=>oe(ut,n)),A=G=>{c({type:"SET_CUSTOM_MENU_LOGO",value:G})},M=()=>{m("didClickResetLogo",{logo:"menu"}),c({type:"RESET_CUSTOM_MENU_LOGO"})},F=G=>{c({type:"SET_CUSTOM_AUTH_LOGO",value:G})},j=()=>{m("didClickResetLogo",{logo:"auth"}),c({type:"RESET_CUSTOM_AUTH_LOGO"})};return(0,e.useImperativeHandle)(a,()=>({getValues:()=>({menuLogo:v.submit,authLogo:f.submit})})),e.createElement(U.x,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(d.Z,{variant:"delta",as:"h3"},i({id:"Settings.application.customization",defaultMessage:"Customization"})),e.createElement(d.Z,{variant:"pi",textColor:"neutral600"},i({id:"Settings.application.customization.size-details",defaultMessage:"Max dimension: {dimension}\xD7{dimension}, Max file size: {size}KB"},{dimension:Q,size:K})),e.createElement(O.r,{paddingTop:4,gap:4},e.createElement(y.P,{col:6,s:12},e.createElement(Ct,{canUpdate:o,customLogo:v.display,defaultLogo:E.default,hint:i({id:"Settings.application.customization.menu-logo.carousel-hint",defaultMessage:"Replace the logo in the main navigation"}),label:i({id:"Settings.application.customization.carousel.menu-logo.title",defaultMessage:"Menu logo"}),onChangeLogo:A,onResetLogo:M})),e.createElement(y.P,{col:6,s:12},e.createElement(Ct,{canUpdate:o,customLogo:f.display,defaultLogo:R.default,hint:i({id:"Settings.application.customization.auth-logo.carousel-hint",defaultMessage:"Replace the logo in the authentication pages"}),label:i({id:"Settings.application.customization.carousel.auth-logo.title",defaultMessage:"Auth logo"}),onChangeLogo:F,onResetLogo:j}))))});gt.defaultProps={canUpdate:!1,projectSettingsStored:null},gt.propTypes={canUpdate:s().bool,projectSettingsStored:s().shape({menuLogo:s().shape({url:s().string,name:s().string})})};var ae=gt,se=t(48344),ie=t.n(se),Lt=o=>ie()(o,(n,a,i)=>{a&&a.url?n[i]={...a,url:(0,l.CR)(a.url)}:n[i]=a},{});const le=async()=>{const{get:o}=(0,l.tg)(),{data:n}=await o("/admin/project-settings");return Lt(n)},re=async o=>{const{post:n}=(0,l.tg)(),{data:a}=await n("/admin/project-settings",o,{headers:{"Content-Type":"multipart/form-data"}});return Lt(a)};var de=o=>{const n=new FormData;return Object.entries(o).forEach(([a,i])=>{i&&i.rawFile instanceof File&&n.append(a,i.rawFile),i&&i.isReset&&n.append(a,null)}),n};const ce=(()=>window&&window.strapi&&window.strapi.isEE?t(78999).Z:t(17891).Z)();var me=()=>{const o=(0,e.useRef)(),n=(0,l.lm)(),{trackUsage:a}=(0,l.rS)(),{formatMessage:i}=(0,r.Z)(),m=(0,T.useQueryClient)();(0,l.go)();const E=(0,l.L7)(),{latestStrapiReleaseTag:R,shouldUpdateStrapi:v,strapiVersion:f}=E,{updateProjectSettings:c}=(0,g.um)(),{allowedActions:{canRead:A,canUpdate:M}}=(0,l.ss)(H.Z.settings["project-settings"]),F=A&&M,{data:j}=(0,T.useQuery)("project-settings",le,{enabled:A}),G=(0,T.useMutation)(N=>re(N),{async onSuccess(N){let{menuLogo:k,authLogo:pt}=N;await m.invalidateQueries("project-settings",{refetchActive:!0}),c({menuLogo:k?.url,authLogo:pt?.url})}}),J=N=>{if(N.preventDefault(),!M)return;const k=o.current.getValues(),pt=de(k);G.mutate(pt,{onSuccess(){const{menuLogo:Te,authLogo:Pe}=k;Te.rawFile&&a("didChangeLogo",{logo:"menu"}),Pe.rawFile&&a("didChangeLogo",{logo:"auth"}),n({type:"success",message:i({id:"app",defaultMessage:"Saved"})})},onError(){n({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}})};return e.createElement(h.A,null,e.createElement(l.SL,{name:"Application"}),e.createElement(z.o,null,e.createElement("form",{onSubmit:J},e.createElement(Z.T,{title:i({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:i({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:F&&e.createElement(P.z,{type:"submit",startIcon:e.createElement(B.Z,null)},i({id:"global.save",defaultMessage:"Save"}))}),e.createElement(L.D,null,e.createElement(S.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(S.k,{direction:"column",alignItems:"stretch",gap:4,hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(d.Z,{variant:"delta",as:"h3"},i({id:"global.details",defaultMessage:"Details"})),e.createElement(O.r,{gap:5,as:"dl"},e.createElement(y.P,{col:6,s:12},e.createElement(d.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement(S.k,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(d.Z,null,"v",f),v&&e.createElement(I.r,{href:`https://github.com/strapi/strapi/releases/tag/${R}`,isExternal:!0,endIcon:e.createElement(W.Z,null)},i({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"})))),e.createElement(y.P,{col:6,s:12},e.createElement(d.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement(S.k,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(d.Z,null,i({id:"Settings.application.ee-or-ce",defaultMessage:"{communityEdition, select, true {Community Edition} other {Enterprise Edition}}"},{communityEdition:E.communityEdition})),e.createElement(I.r,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(W.Z,null)},i({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(y.P,{col:6,s:12},e.createElement(d.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement(d.Z,{as:"dd"},E.nodeVersion)),e.createElement(ce,null))),A&&j&&e.createElement(ae,{canUpdate:M,ref:o,projectSettingsStored:j}))))))},ue=t(3704),ge=t.n(ue),pe=o=>ge()(o,a=>a.links).map(a=>(0,C.ot)(a.Component,a.to,a.exact||!1)),he=o=>o.filter(n=>!n.links.every(a=>a.isDisplayed===!1)),fe=[{async Component(){return await t.e(3455).then(t.bind(t,67249))},to:"/settings/roles",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(2544)]).then(t.bind(t,92034))},to:"/settings/roles/duplicate/:id",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(2544)]).then(t.bind(t,92034))},to:"/settings/roles/new",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(2544)]).then(t.bind(t,33778))},to:"/settings/roles/:id",exact:!0},{async Component(){return await t.e(5199).then(t.bind(t,10108))},to:"/settings/users",exact:!0},{async Component(){return await t.e(4263).then(t.bind(t,40874))},to:"/settings/users/:id",exact:!0},{async Component(){return await t.e(5162).then(t.bind(t,33238))},to:"/settings/webhooks/create",exact:!0},{async Component(){return await t.e(5162).then(t.bind(t,59021))},to:"/settings/webhooks/:id",exact:!0},{async Component(){return await t.e(4121).then(t.bind(t,32393))},to:"/settings/webhooks",exact:!0},{async Component(){return await t.e(8056).then(t.bind(t,37168))},to:"/settings/api-tokens",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(4628),t.e(5563),t.e(4299)]).then(t.bind(t,3330))},to:"/settings/api-tokens/create",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(4628),t.e(5563),t.e(92)]).then(t.bind(t,97841))},to:"/settings/api-tokens/:id",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(4628),t.e(7259),t.e(4816)]).then(t.bind(t,76411))},to:"/settings/transfer-tokens/create",exact:!0},{async Component(){return await t.e(9600).then(t.bind(t,38286))},to:"/settings/transfer-tokens",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(4628),t.e(7259),t.e(2492)]).then(t.bind(t,73607))},to:"/settings/transfer-tokens/:id",exact:!0}],Ee=[...(()=>window&&window.strapi&&window.strapi.isEE?t(63775).Z:t(75936).Z)(),...fe],ve=t(14911),xe=t(90700),Me=t(78090),Ce=t(77013),Le=t(79318),ye=t(66618);const yt=({menu:o})=>{const{formatMessage:n}=(0,r.Z)(),{trackUsage:a}=(0,l.rS)(),{pathname:i}=(0,u.TH)(),E=he(o).map(f=>({...f,title:f.intlLabel,links:f.links.map(c=>({...c,title:c.intlLabel,name:c.id}))})),R=n({id:"global.settings",defaultMessage:"Settings"}),v=(f=null)=>{a("willNavigate",{from:i,to:f})};return e.createElement(xe.m,{ariaLabel:R},e.createElement(Me.p,{label:R}),e.createElement(Ce.Z,null,E.map(f=>e.createElement(Le.D,{key:f.id,label:n(f.intlLabel)},f.links.map(c=>e.createElement(ye.E,{as:ve.OL,withBullet:c.hasNotification,to:c.to,onClick:()=>v(c.to),key:c.id},n(c.intlLabel)))))))};yt.propTypes={menu:s().array.isRequired};var Se=yt;function St(){const{settingId:o}=(0,u.UO)(),{settings:n}=(0,l.j1)(),{formatMessage:a}=(0,r.Z)(),{isLoading:i,menu:m}=(0,g.Te)(),E=(0,e.useMemo)(()=>(0,C.WW)(Ee.map(({to:f,Component:c,exact:A})=>(0,C.ot)(c,f,A))),[]),R=pe(n);if(i)return e.createElement(l.dO,null);if(!o)return e.createElement(u.l_,{to:"/settings/application-infos"});const v=a({id:"global.settings",defaultMessage:"Settings"});return e.createElement(h.A,{sideNav:e.createElement(Se,{menu:m})},e.createElement(x.q,{title:v}),e.createElement(u.rs,null,e.createElement(u.AW,{path:"/settings/application-infos",component:me,exact:!0}),E,R))}var Re=(0,e.memo)(St)},17891:function(D,p){"use strict";const t=()=>null;p.Z=t},75936:function(D,p){"use strict";const t=[];p.Z=t},78999:function(D,p,t){"use strict";var e=t(32735),l=t(67879),u=t(5803),h=t(49372),r=t(87933),x=t(63919),g=t(99140),C=t(41502),T=t(69932),z=t(47361),Z=t(69262),P=t(58414);const L="https://cloud.strapi.io/profile/billing",S="https://strapi.io/billing/request-seats",d=()=>{const{formatMessage:O}=(0,l.Z)(),{license:y}=(0,P.q5)(),{licenseLimitStatus:I,enforcementUserCount:B,permittedSeats:W,isHostedOnStrapiCloud:H}=y?.data??{};return W?e.createElement(u.P,{col:6,s:12},e.createElement(h.Z,{variant:"sigma",textColor:"neutral600"},O({id:"Settings.application.admin-seats",defaultMessage:"Admin seats"})),e.createElement(r.k,{gap:2},e.createElement(r.k,null,e.createElement(h.Z,{as:"p"},O({id:"Settings.application.ee.admin-seats.count",defaultMessage:"<text>{enforcementUserCount}</text>/{permittedSeats}"},{permittedSeats:W,enforcementUserCount:B,text:V=>e.createElement(h.Z,{fontWeight:"semiBold",textColor:B>W?"danger500":null},V)}))),I==="OVER_LIMIT"&&e.createElement(x.u,{description:O({id:"Settings.application.ee.admin-seats.at-limit-tooltip",defaultMessage:"At limit: add seats to invite more users"})},e.createElement(g.J,{width:`${(0,Z.Q1)(14)}rem`,height:`${(0,Z.Q1)(14)}rem`,color:"danger500",as:T.Z}))),e.createElement(C.r,{href:H?L:S,isExternal:!0,endIcon:e.createElement(z.Z,null)},O({id:"Settings.application.ee.admin-seats.add-seats",defaultMessage:"{isHostedOnStrapiCloud, select, true {Add seats} other {Contact sales}}"},{isHostedOnStrapiCloud:H}))):null};p.Z=d},63775:function(D,p,t){"use strict";const e=[];window.strapi.features.isEnabled(window.strapi.features.SSO)&&e.push({async Component(){return await t.e(302).then(t.bind(t,26930))},to:"/settings/single-sign-on",exact:!0}),window.strapi.features.isEnabled(window.strapi.features.REVIEW_WORKFLOWS)&&e.push({async Component(){return await Promise.all([t.e(3562),t.e(5932),t.e(8155)]).then(t.bind(t,96594))},to:"/settings/review-workflows",exact:!0}),window.strapi.features.isEnabled(window.strapi.features.AUDIT_LOGS)&&e.push({async Component(){return await t.e(2812).then(t.bind(t,71765))},to:"/settings/audit-logs",exact:!0}),p.Z=e},3704:function(D,p,t){var e=t(40314),l=t(37213);function u(h,r){return e(l(h,r),1)}D.exports=u},37213:function(D,p,t){var e=t(26460),l=t(88904),u=t(52920),h=t(77236);function r(x,g){var C=h(x)?e:u;return C(x,l(g,3))}D.exports=r},96709:function(D,p,t){"use strict";t.d(p,{A:function(){return x}});var e=t(74512),l=t(8471),u=t(72850);const h=(0,l.ZP)(u.x)`
10
- display: grid;
11
- grid-template-columns: ${({hasSideNav:g})=>g?"auto 1fr":"1fr"};
12
- `,r=(0,l.ZP)(u.x)`
13
- overflow-x: hidden;
14
- `,x=({sideNav:g,children:C})=>(0,e.jsxs)(h,{hasSideNav:!!g,children:[g,(0,e.jsx)(r,{paddingBottom:10,children:C})]})},90700:function(D,p,t){"use strict";t.d(p,{m:function(){return x}});var e=t(74512),l=t(8471),u=t(15335);const h=`${232/16}rem`,r=(0,l.ZP)(u.r)`
15
- width: ${h};
16
- background: ${({theme:g})=>g.colors.neutral100};
17
- position: sticky;
18
- top: 0;
19
- height: 100vh;
20
- overflow-y: auto;
21
- border-right: 1px solid ${({theme:g})=>g.colors.neutral200};
22
- z-index: 1;
23
- `,x=({ariaLabel:g,...C})=>(0,e.jsx)(r,{"aria-label":g,as:"nav",...C})},78090:function(D,p,t){"use strict";t.d(p,{p:function(){return O}});var e=t(74512),l=t(32735),u=t(6792),h=t(8471),r=t(94486),x=t(74971);const g=y=>{const I=(0,l.useRef)();return(0,l.useEffect)(()=>{I.current=y}),I.current};var C=t(9026),T=t(72850),z=t(89252),Z=t(61774),P=t(87933),L=t(49372),S=t(50563);const d=(0,h.ZP)(C.i)`
24
- width: ${24/16}rem;
25
- background-color: ${({theme:y})=>y.colors.neutral200};
26
- `,O=({as:y="h2",label:I,searchLabel:B="",searchable:W=!1,onChange:H=()=>{},value:V="",onClear:s=()=>{},onSubmit:U=()=>{},id:Q})=>{const[K,Y]=(0,l.useState)(!1),w=g(K),q=(0,x.M)(Q),X=(0,l.useRef)(void 0),b=(0,l.useRef)(void 0);(0,l.useEffect)(()=>{K&&X.current&&X.current.focus(),w&&!K&&b.current&&b.current.focus()},[K,w]);const _=()=>{Y($=>!$)},tt=$=>{s($),X.current.focus()},et=$=>{$.relatedTarget?.id!==q&&Y(!1)},nt=$=>{$.key===r.y.ESCAPE&&Y(!1)};return K?(0,e.jsxs)(T.x,{paddingLeft:4,paddingTop:5,paddingBottom:2,paddingRight:4,children:[(0,e.jsx)(z.U,{children:(0,e.jsx)(Z.w,{name:"searchbar",value:V,onChange:H,placeholder:"e.g: strapi-plugin-abcd",onKeyDown:nt,ref:X,onBlur:et,onClear:tt,onSubmit:U,clearLabel:"Clear",size:"S",children:B})}),(0,e.jsx)(T.x,{paddingLeft:2,paddingTop:4,children:(0,e.jsx)(d,{})})]}):(0,e.jsxs)(T.x,{paddingLeft:6,paddingTop:6,paddingBottom:2,paddingRight:4,children:[(0,e.jsxs)(P.k,{justifyContent:"space-between",alignItems:"flex-start",children:[(0,e.jsx)(L.Z,{variant:"beta",as:y,children:I}),W&&(0,e.jsx)(S.h,{ref:b,onClick:_,label:B,icon:(0,e.jsx)(u.Z,{})})]}),(0,e.jsx)(T.x,{paddingTop:4,children:(0,e.jsx)(d,{})})]})}},66618:function(D,p,t){"use strict";t.d(p,{E:function(){return P}});var e=t(74512),l=t(32735),u=t(56243),h=t(8471),r=t(72850),x=t(49372),g=t(87933),C=t(62499);const T=(0,h.ZP)(r.x)`
27
- display: flex;
28
- align-items: center;
29
- justify-content: space-between;
30
- text-decoration: none;
31
- color: ${({theme:L})=>L.colors.neutral800};
32
- svg > * {
33
- fill: ${({theme:L})=>L.colors.neutral600};
34
- }
35
-
36
- &.active {
37
- ${({theme:L})=>`
38
- background-color: ${L.colors.primary100};
39
- border-right: 2px solid ${L.colors.primary600};
40
- svg > * {
41
- fill: ${L.colors.primary700};
42
- }
43
- ${x.Z} {
44
- color: ${L.colors.primary700};
45
- font-weight: 500;
46
- }
47
- `}
48
- }
49
-
50
- &:focus-visible {
51
- outline-offset: -2px;
52
- }
53
- `,z=(0,h.ZP)(u.Z)`
54
- width: ${12/16}rem;
55
- height: ${4/16}rem;
56
- * {
57
- fill: ${({theme:L,$active:S})=>S?L.colors.primary600:L.colors.neutral600};
58
- }
59
- `,Z=h.ZP.div`
60
- svg {
61
- height: ${12/16}rem;
62
- width: ${12/16}rem;
63
- }
64
- `,P=l.forwardRef(({children:L,icon:S=null,withBullet:d=!1,as:O=C.f,isSubSectionChild:y=!1,...I},B)=>(0,e.jsxs)(T,{as:O,icon:S,background:"neutral100",paddingLeft:y?9:7,paddingBottom:2,paddingTop:2,ref:B,...I,children:[(0,e.jsxs)(g.k,{children:[S?(0,e.jsx)(Z,{children:S}):(0,e.jsx)(z,{}),(0,e.jsx)(r.x,{paddingLeft:2,children:(0,e.jsx)(x.Z,{as:"span",children:L})})]}),d&&(0,e.jsx)(r.x,{as:g.k,paddingRight:4,children:(0,e.jsx)(z,{$active:!0})})]}))},79318:function(D,p,t){"use strict";t.d(p,{D:function(){return S}});var e=t(74512),l=t(32735),u=t(8471),h=t(16899),r=t(87933),x=t(72850),g=t(49372);const C=(0,u.ZP)(r.k)`
65
- border: none;
66
- padding: 0;
67
- background: transparent;
68
- `,T=u.ZP.div`
69
- display: flex;
70
- align-items: center;
71
- transform: rotateX(${({rotated:d})=>d?"0deg":"180deg"});
72
- `,z=({collapsable:d=!1,label:O,onClick:y=()=>{},ariaExpanded:I,ariaControls:B})=>d?(0,e.jsxs)(C,{as:"button",onClick:y,"aria-expanded":I,"aria-controls":B,textAlign:"left",children:[(0,e.jsx)(x.x,{paddingRight:1,children:(0,e.jsx)(g.Z,{variant:"sigma",textColor:"neutral600",children:O})}),d&&(0,e.jsx)(T,{rotated:I,children:(0,e.jsx)(h.Z,{"aria-hidden":!0})})]}):(0,e.jsx)(C,{children:(0,e.jsx)(x.x,{paddingRight:1,children:(0,e.jsx)(g.Z,{variant:"sigma",textColor:"neutral600",children:O})})});var Z=t(74971),P=t(6518);const L=(0,u.ZP)(x.x)`
73
- svg {
74
- height: ${4/16}rem;
75
- path {
76
- fill: ${({theme:d})=>d.colors.neutral500};
77
- }
78
- }
79
- `,S=({collapsable:d=!1,label:O,badgeLabel:y,children:I,id:B})=>{const[W,H]=(0,l.useState)(!0),V=(0,Z.M)(B);return(0,e.jsxs)(r.k,{direction:"column",alignItems:"stretch",gap:1,children:[(0,e.jsx)(L,{paddingLeft:6,paddingTop:2,paddingBottom:2,paddingRight:4,children:(0,e.jsxs)(x.x,{position:"relative",paddingRight:y?6:0,children:[(0,e.jsx)(z,{onClick:()=>{H(s=>!s)},ariaExpanded:W,ariaControls:V,collapsable:d,label:O}),y&&(0,e.jsx)(P.C,{backgroundColor:"neutral150",textColor:"neutral600",position:"absolute",right:0,top:"50%",transform:"translateY(-50%)",children:y})]})}),(!d||W)&&(0,e.jsx)("ol",{id:V,children:l.Children.map(I,(s,U)=>(0,e.jsx)("li",{children:s},U))})]})}},77013:function(D,p,t){"use strict";t.d(p,{Z:function(){return r}});var e=t(74512),l=t(32735),u=t(72850),h=t(87933);const r=({children:x,spacing:g=2,horizontal:C=!1,...T})=>(0,e.jsx)(u.x,{paddingTop:2,paddingBottom:4,children:(0,e.jsx)(h.k,{as:"ol",gap:g,direction:C?"row":"column",alignItems:C?"center":"stretch",...T,children:l.Children.map(x,(z,Z)=>(0,e.jsx)("li",{children:z},Z))})})},56243:function(D,p,t){"use strict";t.d(p,{Z:function(){return u}});var e=t(74512);const l=h=>(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 4 4",...h,children:(0,e.jsx)("rect",{width:4,height:4,fill:"#A5A5BA",rx:2})}),u=l}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9514],{1372:function(st,v,t){t.r(v),t.d(v,{default:function(){return X}});var e=t(32735),h=t(67879),B=t(89793),N=t.n(B),z=t(60216),d=t.n(z),I=t(96709),O=t(27649),W=t(82055),P=t(41415),$=t(17e3),r=t(69262),G=t(29439),y=t(66456),H=t(72850),b=t(15335),E=t(5803),p=t(68465),C=t(84967),o=t(20069),D=t(68781);const Z=({sort:s="",pageSize:l=10,onChange:n})=>{const{formatMessage:i}=(0,h.Z)();return e.createElement(H.x,{background:"neutral0",hasRadius:!0,shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(b.r,{gap:4},e.createElement(E.P,{s:12,col:6},e.createElement(p.P,{label:i({id:(0,o.Z)("config.entries.title"),defaultMessage:"Entries per page"}),hint:i({id:(0,o.Z)("config.entries.note"),defaultMessage:"Number of assets displayed by default in the Media Library"}),onChange:a=>n({target:{name:"pageSize",value:a}}),name:"pageSize",value:l},D.ay.map(a=>e.createElement(C.W,{key:a,value:a},a)))),e.createElement(E.P,{s:12,col:6},e.createElement(p.P,{label:i({id:(0,o.Z)("config.sort.title"),defaultMessage:"Default sort order"}),hint:i({id:(0,o.Z)("config.note"),defaultMessage:"Note: You can override this value in the media library."}),onChange:a=>n({target:{name:"sort",value:a}}),name:"sort",value:s,"test-sort":s,"data-testid":"sort-select"},D.Fo.map(a=>e.createElement(C.W,{"data-testid":`sort-option-${a.value}`,key:a.key,value:a.value},i({id:(0,o.Z)(a.key),defaultMessage:`${a.value}`})))))))};Z.propTypes={sort:d().string.isRequired,pageSize:d().number.isRequired,onChange:d().func.isRequired};var U=t(97889),x=t(3040),F=t.n(x),V=t(33795),Q=t.n(V),m=t(74951);const S=`${m.Z}/ON_CHANGE`,M=`${m.Z}/SET_LOADED`,c={initialData:{},modifiedData:{}},L=s=>({...c,initialData:s,modifiedData:s});var Y=(s=c,l)=>(0,U.ZP)(s,n=>{switch(l.type){case S:{F()(n,["modifiedData",...l.keys.split(".")],l.value);break}case M:{const i=L(Q()(n,["modifiedData"],{}));n.initialData=i.initialData,n.modifiedData=i.modifiedData;break}default:return n}});const j=({name:s,value:l})=>({type:S,keys:s,value:l}),J=()=>({type:M});var K=t(68715);const T=({config:s})=>{const{trackUsage:l}=(0,r.rS)(),{formatMessage:n}=(0,h.Z)(),i=(0,r.lm)(),{mutateConfig:a}=(0,K.Z)(),{isLoading:A}=a,[k,w]=(0,e.useState)(!1),f=()=>w(g=>!g),[q,R]=(0,e.useReducer)(Y,c,()=>L(s)),{initialData:_,modifiedData:u}=q,tt=g=>{g.preventDefault(),f()},et=async()=>{l("willEditMediaLibraryConfig"),await a.mutateAsync(u),f(),R(J()),i({type:"success",message:{id:"notification.form.success.fields",defaultMessage:"Changes saved"}})},at=({target:{name:g,value:nt}})=>{R(j({name:g,value:nt}))};return(0,r.go)(),e.createElement(I.A,null,e.createElement(O.o,{"aria-busy":A},e.createElement("form",{onSubmit:tt},e.createElement(W.T,{navigationAction:e.createElement(r.rU,{startIcon:e.createElement(G.Z,null),to:`/plugins/${m.Z}`,id:"go-back"},n({id:(0,o.Z)("config.back"),defaultMessage:"Back"})),primaryAction:e.createElement(P.z,{size:"S",startIcon:e.createElement(y.Z,null),disabled:N()(u,_),type:"submit"},n({id:"global.save",defaultMessage:"Save"})),subtitle:n({id:(0,o.Z)("config.subtitle"),defaultMessage:"Define the view settings of the media library."}),title:n({id:(0,o.Z)("config.title"),defaultMessage:"Configure the view - Media Library"})}),e.createElement($.D,null,e.createElement(Z,{"data-testid":"settings",pageSize:u.pageSize||"",sort:u.sort||"",onChange:at})),e.createElement(r.QH,{bodyText:{id:(0,o.Z)("config.popUpWarning.warning.updateAllSettings"),defaultMessage:"This will modify all your settings"},iconRightButton:e.createElement(y.Z,null),isConfirmButtonLoading:A,isOpen:k,onToggleDialog:f,onConfirm:et,variantRightButton:"success-light"}))))};T.propTypes={config:d().shape({pageSize:d().number,sort:d().string}).isRequired};var X=T}}]);
@@ -1,63 +0,0 @@
1
- (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5538],{78834:function(D,m,e){"use strict";e.d(m,{Z:function(){return nt}});var t=e(24346),i=e(69262),n=e(32735),E=e(67879),L=e(60216),u=e.n(L),P=e(27649),T=e(72850),R=e(49372),I=e(87933),O=e(10369),f=e(41415),C=e(92802),v=e(954),b=e(10190);const y=({onSubmit:N,schema:Ae})=>{const{formatMessage:ne}=(0,E.Z)();return n.createElement(v.ZP,null,n.createElement(P.o,null,n.createElement(v.bU,null,n.createElement(C.J9,{enableReinitialize:!0,initialValues:{email:""},onSubmit:N,validationSchema:Ae,validateOnChange:!1},({values:X,errors:fe,handleChange:He})=>n.createElement(i.l0,{noValidate:!0},n.createElement(v.sg,null,n.createElement(b.Z,null),n.createElement(T.x,{paddingTop:6,paddingBottom:7},n.createElement(R.Z,{as:"h1",variant:"alpha"},ne({id:"Auth.form.button.password-recovery",defaultMessage:"Password Recovery"}))),fe.errorMessage&&n.createElement(R.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},ne({id:fe.errorMessage,defaultMessage:"An error occurred"}))),n.createElement(I.k,{direction:"column",alignItems:"stretch",gap:6},n.createElement(O.o,{error:fe.email?ne({id:fe.email,defaultMessage:"This email is invalid."}):"",value:X.email,onChange:He,label:ne({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:ne({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),n.createElement(f.z,{type:"submit",fullWidth:!0},ne({id:"Auth.form.button.forgot-password",defaultMessage:"Send Email"})))))),n.createElement(I.k,{justifyContent:"center"},n.createElement(T.x,{paddingTop:4},n.createElement(i.rU,{to:"/auth/login"},ne({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};y.defaultProps={onSubmit:N=>N.preventDefault()},y.propTypes={onSubmit:u().func,schema:u().shape({type:u().string.isRequired}).isRequired};var k=y,U=()=>{const{formatMessage:N}=(0,E.Z)();return n.createElement(v.ZP,null,n.createElement(P.o,null,n.createElement(v.bU,null,n.createElement(v.sg,null,n.createElement(b.Z,null),n.createElement(T.x,{paddingTop:6,paddingBottom:7},n.createElement(R.Z,{as:"h1",variant:"alpha"},N({id:"app.containers.AuthPage.ForgotPasswordSuccess.title",defaultMessage:"Email sent"}))),n.createElement(R.Z,null,N({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.email",defaultMessage:"It can take a few minutes to receive your password recovery link."})),n.createElement(T.x,{paddingTop:4},n.createElement(R.Z,null,N({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.contact-admin",defaultMessage:"If you do not receive this link, please contact your administrator."}))))),n.createElement(I.k,{justifyContent:"center"},n.createElement(T.x,{paddingTop:4},n.createElement(i.rU,{to:"/auth/login"},N({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},se=()=>{const{formatMessage:N}=(0,E.Z)(),ne=(0,i.aM)().get("info")||N({id:"Auth.components.Oops.text",defaultMessage:"Your account has been suspended."});return n.createElement(v.ZP,null,n.createElement(P.o,null,n.createElement(v.bU,null,n.createElement(v.sg,null,n.createElement(b.Z,null),n.createElement(T.x,{paddingTop:6,paddingBottom:7},n.createElement(R.Z,{as:"h1",variant:"alpha"},N({id:"Auth.components.Oops.title",defaultMessage:"Oops..."}))),n.createElement(R.Z,null,ne),n.createElement(T.x,{paddingTop:4},n.createElement(R.Z,null,N({id:"Auth.components.Oops.text.admin",defaultMessage:"If this is a mistake, please contact your administrator."}))))),n.createElement(I.k,{justifyContent:"center"},n.createElement(T.x,{paddingTop:4},n.createElement(i.rU,{to:"/auth/login"},N({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},M=e(8471),h=e(9086),Q=e.n(h),F=e(53038),oe=e(15335),o=e(5803),Re=e(8284),$=e(54894),pe=e(60492),Oe=e(72218);const Ge=M.ZP.a`
2
- color: ${({theme:N})=>N.colors.primary600};
3
- `,lt=(0,M.ZP)(O.o)`
4
- ::-ms-reveal {
5
- display: none;
6
- }
7
- `,Ve=({authType:N,fieldsToDisable:Ae,noSignin:ne,onSubmit:X,schema:fe})=>{const He=(0,i.lm)(),{push:ie}=(0,F.k6)(),[je,me]=(0,n.useState)(!1),[Ze,Le]=(0,n.useState)(!1),[be,ut]=(0,n.useState)(0),[Qe,Je]=(0,n.useState)({}),{trackUsage:pt}=(0,i.rS)(),{formatMessage:H}=(0,E.Z)(),dt=(0,i.aM)(),{formatAPIError:ct}=(0,i.So)(),{get:ft}=(0,i.kY)(),xe=dt.get("registrationToken");(0,n.useEffect)(()=>{xe&&(async()=>{try{const{data:{data:z}}=await ft(`/admin/registration-info?registrationToken=${xe}`);z&&Je(z)}catch(z){const _=ct(z);He({type:"warning",message:_}),ie(`/auth/oops?info=${encodeURIComponent(_)}`)}})()},[xe]);function Xe(re){return Object.entries(re).reduce((z,[_,ve])=>{let Pe=ve;return!["password","confirmPassword"].includes(_)&&typeof ve=="string"&&(Pe=Pe.trim()),z[_]=Pe,z},{})}return n.createElement(v.ZP,null,n.createElement(v.bU,null,n.createElement(C.J9,{enableReinitialize:!0,initialValues:{firstname:Qe.firstname||"",lastname:Qe.lastname||"",email:Qe.email||"",password:"",confirmPassword:"",registrationToken:xe||void 0,news:!1},onSubmit:async(re,z)=>{const _=Xe(re);try{await fe.validate(_,{abortEarly:!1}),be>0&&N==="register-admin"&&pt("didSubmitWithErrorsFirstAdmin",{count:be.toString()}),X(xe?{userInfo:Q()(_,["registrationToken"]),registrationToken:xe}:_,z)}catch(ve){const Pe=(0,i.CJ)(ve);ut(be+1),z.setErrors(Pe)}},validateOnChange:!1},({values:re,errors:z,handleChange:_})=>n.createElement(i.l0,{noValidate:!0},n.createElement(P.o,null,n.createElement(I.k,{direction:"column",alignItems:"center",gap:3},n.createElement(b.Z,null),n.createElement(R.Z,{as:"h1",variant:"alpha",textAlign:"center"},H({id:"Auth.form.welcome.title",defaultMessage:"Welcome to Strapi!"})),n.createElement(R.Z,{variant:"epsilon",textColor:"neutral600",textAlign:"center"},H({id:"Auth.form.register.subtitle",defaultMessage:"Credentials are only used to authenticate in Strapi. All saved data will be stored in your database."}))),n.createElement(I.k,{direction:"column",alignItems:"stretch",gap:6,marginTop:7},n.createElement(oe.r,{gap:4},n.createElement(o.P,{col:6},n.createElement(O.o,{name:"firstname",required:!0,value:re.firstname,error:z.firstname?H(z.firstname):void 0,onChange:_,label:H({id:"Auth.form.firstname.label",defaultMessage:"Firstname"})})),n.createElement(o.P,{col:6},n.createElement(O.o,{name:"lastname",value:re.lastname,onChange:_,label:H({id:"Auth.form.lastname.label",defaultMessage:"Lastname"})}))),n.createElement(O.o,{name:"email",disabled:Ae.includes("email"),value:re.email,onChange:_,error:z.email?H(z.email):void 0,required:!0,label:H({id:"Auth.form.email.label",defaultMessage:"Email"}),type:"email"}),n.createElement(lt,{name:"password",onChange:_,value:re.password,error:z.password?H(z.password):void 0,endAction:n.createElement(Oe.Z,{onClick:ve=>{ve.preventDefault(),me(Pe=>!Pe)},label:H(je?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},je?n.createElement($.Z,null):n.createElement(pe.Z,null)),hint:H({id:"Auth.form.password.hint",defaultMessage:"Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number"}),required:!0,label:H({id:"global.password",defaultMessage:"Password"}),type:je?"text":"password"}),n.createElement(lt,{name:"confirmPassword",onChange:_,value:re.confirmPassword,error:z.confirmPassword?H(z.confirmPassword):void 0,endAction:n.createElement(Oe.Z,{onClick:ve=>{ve.preventDefault(),Le(Pe=>!Pe)},label:H(Ze?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},Ze?n.createElement($.Z,null):n.createElement(pe.Z,null)),required:!0,label:H({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:Ze?"text":"password"}),n.createElement(Re.X,{onValueChange:ve=>{_({target:{value:ve,name:"news"}})},value:re.news,name:"news","aria-label":"news"},H({id:"Auth.form.register.news.label",defaultMessage:"Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy})."},{terms:n.createElement(Ge,{target:"_blank",href:"https://strapi.io/terms",rel:"noreferrer"},H({id:"Auth.privacy-policy-agreement.terms",defaultMessage:"terms"})),policy:n.createElement(Ge,{target:"_blank",href:"https://strapi.io/privacy",rel:"noreferrer"},H({id:"Auth.privacy-policy-agreement.policy",defaultMessage:"policy"}))})),n.createElement(f.z,{fullWidth:!0,size:"L",type:"submit"},H({id:"Auth.form.button.register",defaultMessage:"Let's start"})))))),!ne&&n.createElement(T.x,{paddingTop:4},n.createElement(I.k,{justifyContent:"center"},n.createElement(i.rU,{label:"Auth.link.signin",to:"/auth/login"},H({id:"Auth.link.signin.account",defaultMessage:"Already have an account?"}))))))};Ve.defaultProps={fieldsToDisable:[],noSignin:!1,onSubmit:N=>N.preventDefault()},Ve.propTypes={authType:u().string.isRequired,fieldsToDisable:u().array,noSignin:u().bool,onSubmit:u().func,schema:u().shape({validate:u().func.isRequired,type:u().string.isRequired}).isRequired};var et=Ve;const Ue=(0,M.ZP)(O.o)`
8
- ::-ms-reveal {
9
- display: none;
10
- }
11
- `,tt=({onSubmit:N,schema:Ae})=>{const[ne,X]=(0,n.useState)(!1),[fe,He]=(0,n.useState)(!1),{formatMessage:ie}=(0,E.Z)();return n.createElement(v.ZP,null,n.createElement(P.o,null,n.createElement(v.bU,null,n.createElement(C.J9,{enableReinitialize:!0,initialValues:{password:"",confirmPassword:""},onSubmit:N,validationSchema:Ae,validateOnChange:!1},({values:je,errors:me,handleChange:Ze})=>n.createElement(i.l0,{noValidate:!0},n.createElement(v.sg,null,n.createElement(b.Z,null),n.createElement(T.x,{paddingTop:6,paddingBottom:7},n.createElement(R.Z,{as:"h1",variant:"alpha"},ie({id:"global.reset-password",defaultMessage:"Reset password"}))),me.errorMessage&&n.createElement(R.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},ie({id:me.errorMessage,defaultMessage:"An error occurred"}))),n.createElement(I.k,{direction:"column",alignItems:"stretch",gap:6},n.createElement(Ue,{name:"password",onChange:Ze,value:je.password,error:me.password?ie({id:me.password,defaultMessage:"This field is required."}):void 0,endAction:n.createElement(Oe.Z,{onClick:Le=>{Le.preventDefault(),X(be=>!be)},label:ie(ne?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},ne?n.createElement($.Z,null):n.createElement(pe.Z,null)),hint:ie({id:"Auth.form.password.hint",defaultMessage:"Password must contain at least 8 characters, 1 uppercase, 1 lowercase and 1 number"}),required:!0,label:ie({id:"global.password",defaultMessage:"Password"}),type:ne?"text":"password"}),n.createElement(Ue,{name:"confirmPassword",onChange:Ze,value:je.confirmPassword,error:me.confirmPassword?ie({id:me.confirmPassword,defaultMessage:"This value is required."}):void 0,endAction:n.createElement(Oe.Z,{onClick:Le=>{Le.preventDefault(),He(be=>!be)},label:ie(ne?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},fe?n.createElement($.Z,null):n.createElement(pe.Z,null)),required:!0,label:ie({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:fe?"text":"password"}),n.createElement(f.z,{fullwidth:!0,type:"submit"},ie({id:"global.change-password",defaultMessage:"Change password"})))))),n.createElement(I.k,{justifyContent:"center"},n.createElement(T.x,{paddingTop:4},n.createElement(i.rU,{to:"/auth/login"},ie({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};tt.defaultProps={onSubmit:N=>N.preventDefault()},tt.propTypes={onSubmit:u().func,schema:u().shape({type:u().string.isRequired}).isRequired};var Ye=tt;const Fe=(()=>window&&window.strapi&&window.strapi.isEE?e(98768).Z:e(5365).Z)();var nt={"forgot-password":{Component:k,endPoint:"forgot-password",fieldsToDisable:[],fieldsToOmit:[],schema:t.Ry().shape({email:t.Z_().email(i.I0.email).required(i.I0.required)}),inputsPrefix:""},"forgot-password-success":{Component:U,endPoint:"",fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},login:{Component:Fe,endPoint:"login",fieldsToDisable:[],fieldsToOmit:["rememberMe"],schema:t.Ry().shape({email:t.Z_().email(i.I0.email).required(i.I0.required),password:t.Z_().required(i.I0.required),rememberMe:t.Xg().nullable()}),inputsPrefix:""},oops:{Component:se,endPoint:null,fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},register:{Component:et,endPoint:"register",fieldsToDisable:["email"],fieldsToOmit:["userInfo.confirmPassword","userInfo.news","userInfo.email"],schema:t.Ry().shape({firstname:t.Z_().trim().required(i.I0.required),lastname:t.Z_(),password:t.Z_().min(8,i.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(i.I0.required),confirmPassword:t.Z_().oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required),registrationToken:t.Z_().required(i.I0.required)}),inputsPrefix:"userInfo."},"register-admin":{Component:et,endPoint:"register-admin",noSignin:!0,fieldsToDisable:[],fieldsToOmit:["confirmPassword","news"],schema:t.Ry().shape({firstname:t.Z_().trim().required(i.I0.required),lastname:t.Z_(),password:t.Z_().min(8,i.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(i.I0.required),email:t.Z_().email(i.I0.email).strict().lowercase(i.I0.lowercase).required(i.I0.required),confirmPassword:t.Z_().oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required)}),inputsPrefix:""},"reset-password":{Component:Ye,endPoint:"reset-password",fieldsToDisable:[],fieldsToOmit:["confirmPassword"],schema:t.Ry().shape({password:t.Z_().min(8,i.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(i.I0.required),confirmPassword:t.Z_().oneOf([t.iH("password"),null],"components.Input.error.password.noMatch").required(i.I0.required)})}}},83983:function(D,m,e){"use strict";e.d(m,{Z:function(){return P}});var t=e(86349),i=e.n(t),E={contentManager:{main:[],collectionTypesConfigurations:[{action:"plugin::content-manager.collection-types.configure-view",subject:null}],componentsConfigurations:[{action:"plugin::content-manager.components.configure-layout",subject:null}],singleTypesConfigurations:[{action:"plugin::content-manager.single-types.configure-view",subject:null}]},marketplace:{main:[{action:"admin::marketplace.read",subject:null}],read:[{action:"admin::marketplace.read",subject:null}]},settings:{roles:{main:[{action:"admin::roles.create",subject:null},{action:"admin::roles.update",subject:null},{action:"admin::roles.read",subject:null},{action:"admin::roles.delete",subject:null}],create:[{action:"admin::roles.create",subject:null}],delete:[{action:"admin::roles.delete",subject:null}],read:[{action:"admin::roles.read",subject:null}],update:[{action:"admin::roles.update",subject:null}]},users:{main:[{action:"admin::users.create",subject:null},{action:"admin::users.read",subject:null},{action:"admin::users.update",subject:null},{action:"admin::users.delete",subject:null}],create:[{action:"admin::users.create",subject:null}],delete:[{action:"admin::users.delete",subject:null}],read:[{action:"admin::users.read",subject:null}],update:[{action:"admin::users.update",subject:null}]},webhooks:{main:[{action:"admin::webhooks.create",subject:null},{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],create:[{action:"admin::webhooks.create",subject:null}],delete:[{action:"admin::webhooks.delete",subject:null}],read:[{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],update:[{action:"admin::webhooks.update",subject:null}]},"api-tokens":{main:[{action:"admin::api-tokens.access",subject:null}],create:[{action:"admin::api-tokens.create",subject:null}],delete:[{action:"admin::api-tokens.delete",subject:null}],read:[{action:"admin::api-tokens.read",subject:null}],update:[{action:"admin::api-tokens.update",subject:null}],regenerate:[{action:"admin::api-tokens.regenerate",subject:null}]},"transfer-tokens":{main:[{action:"admin::transfer.tokens.access",subject:null}],create:[{action:"admin::transfer.tokens.create",subject:null}],delete:[{action:"admin::transfer.tokens.delete",subject:null}],read:[{action:"admin::transfer.tokens.read",subject:null}],update:[{action:"admin::transfer.tokens.update",subject:null}],regenerate:[{action:"admin::transfer.tokens.regenerate",subject:null}]},"project-settings":{read:[{action:"admin::project-settings.read",subject:null}],update:[{action:"admin::project-settings.update",subject:null}]}}};const L=(()=>window&&window.strapi&&window.strapi.isEE?e(99568).Z:e(26123).Z)();var P=i()(E,L)},39691:function(D,m,e){"use strict";e.r(m),e.d(m,{default:function(){return us}});var t=e(32735),i=e(14911),n=e(12301),E=e(65810),L=e(86349),u=e.n(L),P=e(88423),T=e.n(P),R=e(93839),I=e.n(R),O=e(56784),f=e.n(O),C=e(74758),v=e(78246),y=()=>{const c=[];return{register(s){c.push(s)},delete(s){c.splice(c.indexOf(s),1)},runWaterfall(s,a){return c.reduce((l,g)=>g(l,a),s)},async runWaterfallAsync(s,a){let l=s;for(const g of c)l=await g(l,a);return l},runSeries(...s){return c.map(a=>a(...s))},async runSeriesAsync(...s){const a=[];for(const l of c)a.push(await l(...s));return a},runParallel(...s){return Promise.all(c.map(a=>a(...s)))}}},k=e(6680);const Z=(c,s)=>{let a=k.compose;const l=[];c.forEach(A=>{l.push(A())});const g=(0,k.createStore)(U(s,{}),{},a((0,k.applyMiddleware)(...l)));return g.asyncReducers={},g.injectReducer=(A,S)=>{g.asyncReducers[A]=S,g.replaceReducer(U(s,g.asyncReducers))},g},U=(c,s)=>(0,k.combineReducers)({...c,...s});var te=Z,se=e(20284),M=e(53038),h=e(69262),Q=e(10728),F=e(67879),oe=e(60216),o=e.n(oe);const Re=({component:c,path:s,...a})=>{const{pathname:l,search:g}=(0,M.TH)();return t.createElement(M.AW,{path:s,render:A=>h.I8.getToken()!==null?t.createElement(c,{...a,...A}):t.createElement(M.l_,{to:{pathname:"/auth/login",search:l!=="/"&&`?redirectTo=${encodeURIComponent(`${l}${g}`)}`}})})};Re.propTypes={component:o().any.isRequired,path:o().string.isRequired};var $=(0,t.memo)(Re),pe=e(8997),Oe=e(20011),Ge=e(84306),lt=e(39935),Ve=e.n(lt),et=e(33795),Ue=e.n(et),tt=e(9086),Ye=e.n(tt);const Fe="GUIDED_TOUR_CURRENT_STEP",st="GUIDED_TOUR_COMPLETED_STEPS",nt="GUIDED_TOUR_SKIPPED",N=JSON.parse,Ae=JSON.stringify;var X={clear(){localStorage.removeItem(Fe),localStorage.removeItem(st)},addCompletedStep(c){const s=N(localStorage.getItem(st))?.slice()||[];s.includes(c)||(s.push(c),localStorage.setItem(st,Ae(s)))},addCurrentStep(c){localStorage.setItem(Fe,Ae(c))},setSkipped(c){localStorage.setItem(nt,Ae(c))},get(c){return N(localStorage.getItem(c))}},fe=e(20139),He=e(41832),je=c=>c,me=e(97889),Ze=e(3040),Le=e.n(Ze);const be={formErrors:{},modifiedData:{},requestError:null},ut=(c,s)=>(0,me.ZP)(c,a=>{switch(s.type){case"ON_CHANGE":{Le()(a.modifiedData,s.keys.split("."),s.value);break}case"RESET_PROPS":return be;case"SET_DATA":{a.modifiedData=s.data;break}case"SET_ERRORS":{a.formErrors=s.errors;break}case"SET_REQUEST_ERROR":{a.requestError={errorMessage:s.errorMessage,errorStatus:s.errorStatus};break}default:return a}}),Qe=(()=>window&&window.strapi&&window.strapi.isEE?e(7277).Z:e(78834).Z)(),Je=c=>{let{hasAdmin:s,setHasAdmin:a}=c;const{push:l,location:{search:g}}=(0,M.k6)(),{changeLocale:A}=(0,fe.Z)(),{setSkipped:S}=(0,h.c1)(),{trackUsage:j}=(0,h.rS)(),{params:{authType:W}}=(0,M.$B)("/auth/:authType"),q=(0,h.aM)(),{Component:le,endPoint:K,fieldsToDisable:ue,fieldsToOmit:he,inputsPrefix:de,schema:ye,...Ee}=Ue()(Qe,W,{}),[{formErrors:ke,modifiedData:De,requestError:gt},it]=(0,t.useReducer)(ut,be,je),$e=Ge.default.CancelToken.source();(0,t.useEffect)(()=>()=>{$e.cancel("Component unmounted")},[]);const{post:qe}=(0,h.kY)();(0,t.useEffect)(()=>{it({type:"RESET_PROPS"})},[W]);const ds=ee=>{let{target:{name:Te,value:ge}}=ee;it({type:"ON_CHANGE",keys:Te,value:ge})},cs=async(ee,Te)=>{let{setSubmitting:ge,setErrors:Ie}=Te;ge(!0);const We=Ye()(ee,he),Y=`/admin/${K}`;W==="login"&&await gs(ee,Y,{setSubmitting:ge,setErrors:Ie}),(W==="register"||W==="register-admin")&&await ps(ee,Y,{setSubmitting:ge,setErrors:Ie}),W==="forgot-password"&&await ms(We,Y,{setSubmitting:ge,setErrors:Ie}),W==="reset-password"&&await fs(We,Y,{setSubmitting:ge,setErrors:Ie})},ms=async(ee,Te,ge)=>{let{setSubmitting:Ie,setErrors:We}=ge;try{await qe(Te,ee,{cancelToken:$e.token}),l("/auth/forgot-password-success")}catch(Y){console.error(Y),We({errorMessage:"notification.error"})}finally{Ie(!1)}},gs=async(ee,Te,ge)=>{let{setSubmitting:Ie,setErrors:We}=ge;try{const{data:{data:{token:Y,user:ce}}}=await qe(Te,Ye()(ee,he),{cancelToken:$e.token});ce.preferedLanguage&&A(ce.preferedLanguage),h.I8.setToken(Y,ee.rememberMe),h.I8.setUserInfo(ce,ee.rememberMe),Vt()}catch(Y){if(Y.response){const ce=Ue()(Y,["response","data","error","message"],"Something went wrong");if(Ve()(ce).toLowerCase()==="usernotactive"){l("/auth/oops"),it({type:"RESET_PROPS"});return}We({errorMessage:ce})}}finally{Ie(!1)}},ps=async(ee,Te,ge)=>{let{setSubmitting:Ie,setErrors:We}=ge;try{j("willCreateFirstAdmin");const{data:{data:{token:Y,user:ce}}}=await qe(Te,Ye()(ee,he),{cancelToken:$e.token});h.I8.setToken(Y,!1),h.I8.setUserInfo(ce,!1),Ie(!1),a(!0);const{roles:rt}=ce;if(rt&&rt.find(hs=>{let{code:Es}=hs;return Es==="strapi-super-admin"})&&(X.setSkipped(!1),S(!1),j("didLaunchGuidedtour")),W==="register"&&ee.userInfo.news===!0||W==="register-admin"&&ee.news===!0){l({pathname:"/usecase",search:`?hasAdmin=${s}`});return}Vt()}catch(Y){if(j("didNotCreateFirstAdmin"),Y.response){const{data:ce}=Y.response,rt=(0,He.Z)(ce);We({apiErrors:rt})}}},fs=async(ee,Te,ge)=>{let{setErrors:Ie,setSubmitting:We}=ge;try{const{data:{data:{token:Y,user:ce}}}=await qe(Te,{...ee,resetPasswordToken:q.get("code")},{cancelToken:$e.token});h.I8.setToken(Y,!1),h.I8.setUserInfo(ce,!1),l("/")}catch(Y){if(Y.response){const ce=Ue()(Y,["response","data","message"],"Something went wrong"),rt=Ue()(Y,["response","data","statusCode"],400);it({type:"SET_REQUEST_ERROR",errorMessage:ce,errorStatus:rt}),Ie({errorMessage:ce})}}finally{We(!1)}},Vt=()=>{if(W==="login"){const ee=q.get("redirectTo"),Te=ee?decodeURIComponent(ee):"/";l(Te)}else l("/")};return!Qe[W]||s&&W==="register-admin"||h.I8.getToken()?t.createElement(M.l_,{to:"/"}):!s&&W!=="register-admin"?t.createElement(M.l_,{to:{pathname:"/auth/register-admin",search:g}}):t.createElement(le,(0,Oe.Z)({},Ee,{authType:W,fieldsToDisable:ue,formErrors:ke,inputsPrefix:de,modifiedData:De,onChange:ds,onSubmit:cs,requestError:gt,schema:ye}))};Je.defaultProps={hasAdmin:!1},Je.propTypes={hasAdmin:o().bool,setHasAdmin:o().func.isRequired};var pt=Je,H=e(53951),dt=e(8471),ct=e(33348),ft=e(49372),xe=e(27649),Xe=e(87933),re=e(72850),z=e(68465),_=e(84967),ve=e(10369),Pe=e(41415),ht=e(7563),Rt=e(10190),_e=e(954);const At=[{intlLabel:{id:"Usecase.front-end",defaultMessage:"Front-end developer"},value:"front_end_developer"},{intlLabel:{id:"Usecase.back-end",defaultMessage:"Back-end developer"},value:"back_end_developer"},{intlLabel:{id:"Usecase.full-stack",defaultMessage:"Full-stack developer"},value:"full_stack_developer"},{intlLabel:{id:"global.content-manager",defaultMessage:"Content Manager"},value:"content_manager"},{intlLabel:{id:"Usecase.content-creator",defaultMessage:"Content Creator"},value:"content_creator"},{intlLabel:{id:"Usecase.other",defaultMessage:"Other"},value:"other"}],Lt=(0,dt.ZP)(ft.Z)`
12
- text-align: center;
13
- `;var Mt=()=>{const c=(0,h.lm)(),{push:s,location:a}=(0,M.k6)(),{formatMessage:l}=(0,F.Z)(),[g,A]=(0,t.useState)(),[S,j]=(0,t.useState)(""),{post:W}=(0,h.kY)(),{firstname:q,email:le}=h.I8.getUserInfo(),{hasAdmin:K}=(0,ct.parse)(a?.search,{ignoreQueryPrefix:!0}),ue=g==="other",he=async(de,ye)=>{de.preventDefault();try{await W("https://analytics.strapi.io/register",{email:le,username:q,firstAdmin:Boolean(!K),persona:{role:ye?void 0:g,otherRole:ye?void 0:S}}),c({type:"success",message:{id:"Usecase.notification.success.project-created",defaultMessage:"Project has been successfully created"}}),s("/")}catch{}};return t.createElement(_e.ZP,null,t.createElement(xe.o,{labelledBy:"usecase-title"},t.createElement(_e.bU,null,t.createElement("form",{onSubmit:de=>he(de,!1)},t.createElement(Xe.k,{direction:"column",paddingBottom:7},t.createElement(Rt.Z,null),t.createElement(re.x,{paddingTop:6,paddingBottom:1,width:(0,h.Q1)(250)},t.createElement(Lt,{variant:"alpha",as:"h1",id:"usecase-title"},l({id:"Usecase.title",defaultMessage:"Tell us a bit more about yourself"})))),t.createElement(Xe.k,{direction:"column",alignItems:"stretch",gap:6},t.createElement(z.P,{id:"usecase","data-testid":"usecase",label:l({id:"Usecase.input.work-type",defaultMessage:"What type of work do you do?"}),onChange:A,value:g},At.map(({intlLabel:de,value:ye})=>t.createElement(_.W,{key:ye,value:ye},l(de)))),ue&&t.createElement(ve.o,{name:"other",label:l({id:"Usecase.other",defaultMessage:"Other"}),value:S,onChange:de=>j(de.target.value),"data-testid":"other"}),t.createElement(Pe.z,{type:"submit",size:"L",fullWidth:!0,disabled:!g},l({id:"global.finish",defaultMessage:"Finish"}))))),t.createElement(Xe.k,{justifyContent:"center"},t.createElement(re.x,{paddingTop:4},t.createElement(ht.A,{onClick:()=>he(!0)},l({id:"Usecase.button.skip",defaultMessage:"Skip this question"}))))))},kt=e(73307),jt=async()=>`web-fingerprint-${(await(await kt.ZP.load()).get()).visitorId}`,xt=[],St=[...(()=>window&&window.strapi&&window.strapi.isEE?e(68944).Z:e(56761).Z)(),...xt],Dt=e(32308);const Wt=(0,t.lazy)(()=>Promise.all([e.e(6691),e.e(801)]).then(e.bind(e,29761)));function Nt(){const c=(0,h.lm)(),{updateProjectSettings:s}=(0,Dt.um)(),{formatMessage:a}=(0,F.Z)(),[{isLoading:l,hasAdmin:g,uuid:A,deviceId:S},j]=(0,t.useState)({isLoading:!0,hasAdmin:!1}),W=(0,h.L7)(),{get:q,post:le}=(0,h.kY)(),K=(0,t.useMemo)(()=>(0,pe.WW)(St.map(({to:Ee,Component:ke,exact:De})=>(0,pe.ot)(ke,Ee,De))),[]),[ue,he]=(0,t.useState)(null);(0,t.useEffect)(()=>{const Ee=h.I8.getToken();Ee&&(async()=>{try{const{data:{data:{token:De}}}=await le("/admin/renew-token",{token:Ee});h.I8.updateToken(De)}catch{h.I8.clearAppStorage(),window.location.reload()}})()},[le]),(0,t.useEffect)(()=>{(async()=>{try{const{data:{data:{hasAdmin:ke,uuid:De,menuLogo:gt,authLogo:it}}}=await q("/admin/init");s({menuLogo:(0,h.CR)(gt),authLogo:(0,h.CR)(it)});const wt=await jt();if(De){const{data:{data:$e}}=await q("/admin/telemetry-properties",{validateStatus:qe=>qe<500});he($e);try{await le("https://analytics.strapi.io/api/v2/track",{event:"didInitializeAdministration",userId:"",deviceId:wt,eventPropeties:{},userProperties:{environment:W.currentEnvironment},groupProperties:{...$e,projectId:De}})}catch{}}j({isLoading:!1,hasAdmin:ke,uuid:De,deviceId:wt})}catch{c({type:"warning",message:{id:"app.containers.App.notification.error.init"}})}})()},[c,s]);const de=Ee=>j(ke=>({...ke,hasAdmin:Ee})),ye=(0,t.useMemo)(()=>({uuid:A,telemetryProperties:ue,deviceId:S}),[A,ue,S]);return l?t.createElement(h.dO,null):t.createElement(t.Suspense,{fallback:t.createElement(h.dO,null)},t.createElement(Q.z,null,a({id:"skipToContent"})),t.createElement(h.L8,{value:ye},t.createElement(M.rs,null,K,t.createElement(M.AW,{path:"/auth/:authType",render:Ee=>t.createElement(pt,{...Ee,setHasAdmin:de,hasAdmin:g}),exact:!0}),t.createElement($,{path:"/usecase",component:Mt}),t.createElement($,{path:"/",component:Wt}),t.createElement(M.AW,{path:"",component:H.default}))))}var It=Nt,Ot=e(47750),Et=e(20108),p=e(15062),d=e(66694);const r={menuLogo:null,authLogo:null};var x=(c=r,s)=>(0,me.ZP)(c,a=>{switch(s.type){case"UPDATE_PROJECT_SETTINGS":{Object.assign(a,s.values);break}default:return a}});const B=({children:c,authLogo:s,menuLogo:a,showReleaseNotification:l,showTutorials:g})=>{const[{menuLogo:A,authLogo:S},j]=(0,t.useReducer)(x,r),W=(0,t.useCallback)(({menuLogo:le,authLogo:K})=>j({type:"UPDATE_PROJECT_SETTINGS",values:{menuLogo:le||a,authLogo:K||s}}),[s,a]),q=(0,t.useMemo)(()=>({logos:{menu:{custom:A,default:a},auth:{custom:S,default:s}},updateProjectSettings:W,showReleaseNotification:l,showTutorials:g}),[A,a,S,s,W,l,g]);return t.createElement(d._5.Provider,{value:q},c)};B.propTypes={authLogo:o().string.isRequired,children:o().element.isRequired,menuLogo:o().string.isRequired,showReleaseNotification:o().bool.isRequired,showTutorials:o().bool.isRequired};var V=B,G=e(78023),ae=e(58732),Ce=e.n(ae),J=e(5985);const we=({changeLocale:c,children:s,localeNames:a})=>t.createElement(J.Z.Provider,{value:{changeLocale:c,localeNames:a}},s);we.propTypes={changeLocale:o().func.isRequired,children:o().element.isRequired,localeNames:o().object.isRequired};var Ne=we,ze="strapi-admin-language",Pt=c=>{const s=window.localStorage.getItem(ze);return{locale:c[s]?s:"en",localeNames:c}};const ot={localeNames:{en:"English"},locale:"en"};var mt=(c=ot,s)=>{switch(s.type){case"CHANGE_LOCALE":{const{locale:a}=s;return c.localeNames[a]?{...c,locale:a}:c}default:return c}};const Ke=({children:c,localeNames:s,messages:a})=>{const[{locale:l},g]=(0,t.useReducer)(mt,ot,()=>Pt(s));(0,t.useEffect)(()=>{window.localStorage.setItem(ze,l),document.documentElement.setAttribute("lang",l)},[l]);const A=j=>{g({type:"CHANGE_LOCALE",locale:j})},S=Ce()(a[l],a.en);return t.createElement(G.Z,{locale:l,defaultLocale:"en",messages:S,textComponent:"span"},t.createElement(Ne,{changeLocale:A,localeNames:s},c))};Ke.propTypes={children:o().element.isRequired,localeNames:o().objectOf(o().string).isRequired,messages:o().object.isRequired};var Me=Ke,Be=(c,s)=>{const a=Object.entries(s),l=a.findIndex(([A])=>A===c);return a.slice(0,l).every(([,A])=>Object.values(A).every(Boolean))},Yt=(c,s)=>{const a=c.split("."),l=a[1],g=Object.entries(s[a[0]]),A=g.findIndex(([j])=>j===l);return g.slice(0,A).every(([,j])=>j)};const Gt={currentStep:null,guidedTourState:{contentTypeBuilder:{create:!1,success:!1},contentManager:{create:!1,success:!1},apiTokens:{create:!1,success:!1}},isGuidedTourVisible:!1,isSkipped:!0};var Qt=(c=Gt,s)=>(0,me.ZP)(c,a=>{switch(s.type){case"SET_CURRENT_STEP":{a.currentStep=s.step;break}case"SET_STEP_STATE":{const[l,g]=s.currentStep.split(".");a.guidedTourState[l][g]=s.value;break}case"SET_SKIPPED":{a.isSkipped=s.value;break}case"SET_GUIDED_TOUR_VISIBILITY":{a.isGuidedTourVisible=s.value;break}default:return a}}),Jt=c=>{const s={...c},a=X.get(st),l=X.get(Fe),g=X.get(nt);if(a&&a.forEach(A=>{const[S,j]=A.split(".");Le()(s,["guidedTourState",S,j],!0)}),l){const[A,S]=l.split(".");Le()(s,["guidedTourState",A,S],!0),X.addCompletedStep(l),X.addCurrentStep(null)}return g!==null&&Le()(s,"isSkipped",g),s};const Ft=({children:c})=>{const[{currentStep:s,guidedTourState:a,isGuidedTourVisible:l,isSkipped:g},A]=(0,t.useReducer)(Qt,Gt,Jt),S=K=>{if(K!==null){const ue=Ue()(a,K),he=Yt(K,a);if(ue||g||!he)return null}return X.addCurrentStep(K),A({type:"SET_CURRENT_STEP",step:K})},j=K=>{A({type:"SET_GUIDED_TOUR_VISIBILITY",value:K})},W=(K,ue)=>{X.addCompletedStep(K),A({type:"SET_STEP_STATE",currentStep:K,value:ue})},q=K=>{const ue=a[K];if(ue){const he=Be(K,a),de=Object.keys(ue)[0],ye=ue[de];if(he&&!s&&!ye)return S(`${K}.${de}`)}return null},le=K=>{X.setSkipped(K),A({type:"SET_SKIPPED",value:K})};return t.createElement(h.Zc,{guidedTourState:a,currentStep:s,setCurrentStep:S,setGuidedTourVisibility:j,setSkipped:le,setStepState:W,startSection:q,isGuidedTourVisible:l,isSkipped:g},c)};Ft.propTypes={children:o().element.isRequired};var Xt=Ft;const bt="STRAPI_THEME",_t=()=>{const c=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",s=localStorage.getItem(bt);return s||localStorage.setItem(bt,c),s||c},Ht=({children:c,themes:s})=>{const[a,l]=(0,t.useState)(_t()),g=(0,t.useCallback)(S=>{l(S),localStorage.setItem(bt,S)},[l]),A=(0,t.useMemo)(()=>({currentTheme:a,onChangeTheme:g,themes:s}),[a,g,s]);return t.createElement(d.Rj.Provider,{value:A},c)};Ht.propTypes={children:o().node.isRequired,themes:o().shape({light:o().shape({colors:o().object.isRequired,shadows:o().object.isRequired,sizes:o().object.isRequired,zIndices:o().array.isRequired,spaces:o().array.isRequired,borderRadius:o().string.isRequired,mediaQueries:o().object.isRequired,fontSizes:o().array.isRequired,lineHeights:o().array.isRequired,fontWeights:o().object.isRequired}).isRequired,dark:o().shape({colors:o().object.isRequired,shadows:o().object.isRequired,sizes:o().object.isRequired,zIndices:o().array.isRequired,spaces:o().array.isRequired,borderRadius:o().string.isRequired,mediaQueries:o().object.isRequired,fontSizes:o().array.isRequired,lineHeights:o().array.isRequired,fontWeights:o().object.isRequired}).isRequired,custom:o().object}).isRequired};var qt=Ht,es=e(24854),ts=dt.vJ`
14
- body {
15
- background: ${({theme:c})=>c.colors.neutral100};
16
- }
17
- `;const zt=({children:c})=>{const{currentTheme:s,themes:a}=(0,Dt.M1)(),{locale:l}=(0,F.Z)();return t.createElement(es.h,{locale:l,theme:a[s]||a.light},c,t.createElement(ts,null))};zt.propTypes={children:o().element.isRequired};var ss=zt;const ns=new Et.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),$t=({authLogo:c,children:s,components:a,customFields:l,fields:g,getAdminInjectedComponents:A,getPlugin:S,localeNames:j,menu:W,menuLogo:q,messages:le,plugins:K,runHookParallel:ue,runHookSeries:he,runHookWaterfall:de,settings:ye,showReleaseNotification:Ee,showTutorials:ke,store:De,themes:gt})=>t.createElement(Me,{messages:le,localeNames:j},t.createElement(qt,{themes:gt},t.createElement(ss,null,t.createElement(Et.QueryClientProvider,{client:ns},t.createElement(p.zt,{store:De},t.createElement(d.ux.Provider,{value:{getAdminInjectedComponents:A}},t.createElement(V,{authLogo:c,menuLogo:q,showReleaseNotification:Ee,showTutorials:ke},t.createElement(h._Y,{getPlugin:S,menu:W,plugins:K,runHookParallel:ue,runHookWaterfall:de,runHookSeries:he,settings:ye},t.createElement(h.rt,{components:a,fields:g},t.createElement(h.MG,{customFields:l},t.createElement(h.m$,null,t.createElement(h.w7,null,t.createElement(Xt,null,t.createElement(h.N$,null,s))))))))))))));$t.propTypes={authLogo:o().oneOfType([o().string,o().any]).isRequired,children:o().element.isRequired,components:o().object.isRequired,customFields:o().object.isRequired,fields:o().object.isRequired,getAdminInjectedComponents:o().func.isRequired,getPlugin:o().func.isRequired,localeNames:o().objectOf(o().string).isRequired,menu:o().arrayOf(o().shape({to:o().string.isRequired,icon:o().func.isRequired,intlLabel:o().shape({id:o().string.isRequired,defaultMessage:o().string.isRequired}).isRequired,permissions:o().array,Component:o().func})).isRequired,menuLogo:o().oneOfType([o().string,o().any]).isRequired,messages:o().object.isRequired,plugins:o().object.isRequired,runHookParallel:o().func.isRequired,runHookWaterfall:o().func.isRequired,runHookSeries:o().func.isRequired,settings:o().object.isRequired,showReleaseNotification:o().bool.isRequired,showTutorials:o().bool.isRequired,store:o().object.isRequired,themes:o().shape({light:o().shape({colors:o().object.isRequired,shadows:o().object.isRequired,sizes:o().object.isRequired,zIndices:o().array.isRequired,spaces:o().array.isRequired,borderRadius:o().string.isRequired,mediaQueries:o().object.isRequired,fontSizes:o().array.isRequired,lineHeights:o().array.isRequired,fontWeights:o().object.isRequired}).isRequired,dark:o().shape({colors:o().object.isRequired,shadows:o().object.isRequired,sizes:o().object.isRequired,zIndices:o().array.isRequired,spaces:o().array.isRequired,borderRadius:o().string.isRequired,mediaQueries:o().object.isRequired,fontSizes:o().array.isRequired,lineHeights:o().array.isRequired,fontWeights:o().object.isRequired}).isRequired,custom:o().object}).isRequired};var as=$t,os={ar:"\u0627\u0644\u0639\u0631\u0628\u064A\u0629",ca:"Catal\xE0",cs:"\u010Ce\u0161tina",de:"Deutsch",dk:"Dansk",en:"English",es:"Espa\xF1ol",eu:"Euskara",fr:"Fran\xE7ais",gu:"Gujarati",he:"\u05E2\u05D1\u05E8\u05D9\u05EA",hu:"Magyar",id:"Indonesian",it:"Italiano",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4",ml:"Malayalam",ms:"Melayu",nl:"Nederlands",no:"Norwegian",pl:"Polski","pt-BR":"Portugu\xEAs (Brasil)",pt:"Portugu\xEAs (Portugal)",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",sk:"Sloven\u010Dina",sv:"Swedish",th:"\u0E44\u0E17\u0E22",tr:"T\xFCrk\xE7e",uk:"\u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430",vi:"Ti\u1EBFng Vi\u1EC7t","zh-Hans":"\u4E2D\u6587 (\u7B80\u4F53)",zh:"\u4E2D\u6587 (\u7E41\u9AD4)",sa:"\u0938\u0902\u0938\u094D\u0915\u0943\u0924",hi:"\u0939\u093F\u0928\u094D\u0926\u0940"},Tt=e(46339),is={admin:{tutorials:{links:[]}},contentManager:{editView:{informations:[],"right-links":[]},listView:{actions:[],deleteModalAdditionalInfos:[],publishModalAdditionalInfos:[],unpublishModalAdditionalInfos:[]}}},rs="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAXVBMVEUAAABIRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9JRf9IRf9IRP5IRP5JRP9JRf////+Vk/+zsv++vf9mY/9taf9/fP+Jh//c3P9RTf/Ibar2AAAAFHRSTlMA/MJX+fPt48cahaff1dMaGqcahSpTPmAAAAEvSURBVFjD7dfNTsMwEATgXcf5cdKEtixtcYH3f0xEibIguba1g8Slc+58iqUedmhNaMbJzX3Xema5G2bfdv3iprE50s80g7Yqw0Oz1Z+cmOL2a38nxuy+BSfmuNv7BUhDRAMCDESBEYCDvsD6hmcMGGnCgIkcBjhaMGCmHgN66jCgoxYDWvIY4IkxgHFAkrmeU7kmfpkG4uUllXMtEE82QPs2QPs2QPs2QPs2QPsAoH0DoH0LoH0QeN3ydtnyXg38ok76MQ/gAfwf8JH8V18LQOljomBAFAyIkga4CGT7XAtEuQf4IpDri6e2BoiZA6OrAGLuxOnLQMweWXMRyPVlwQ/NAwZMNGLACJ/76ODYo5MHHl3o7EOHZ6BbjtbpG/5kfOv8P7ilbv7PX/M/rMVPqrI3XI3nd3sAAAAASUVORK5CYII=";class ls{constructor({adminConfig:s,appPlugins:a,library:l,middlewares:g,reducers:A}){this.customConfigurations=s.config,this.customBootstrapConfiguration=s.bootstrap,this.configurations={authLogo:Ot,head:{favicon:rs},locales:["en"],menuLogo:Ot,notifications:{releases:!0},themes:{light:n.W,dark:E.$},translations:{},tutorials:!0},this.appPlugins=a||{},this.library=l,this.middlewares=g,this.plugins={},this.reducers=A,this.translations={},this.hooksDict={},this.admin={injectionZones:is},this.customFields=se.rh,this.menu=[],this.settings={global:{id:"global",intlLabel:{id:"Settings.global",defaultMessage:"Global Settings"},links:[]}}}addComponents=s=>{Array.isArray(s)?s.map(a=>this.library.components.add(a)):this.library.components.add(s)};addCorePluginMenuLink=s=>{const a=JSON.stringify(s);f()(s.to,`link.to should be defined for ${a}`),f()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),f()(["/plugins/content-type-builder","/plugins/upload"].includes(s.to),"This method is not available for your plugin"),f()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${a}`),this.menu.push(s)};addFields=s=>{Array.isArray(s)?s.map(a=>this.library.fields.add(a)):this.library.fields.add(s)};addMenuLink=s=>{const a=JSON.stringify(s);f()(s.to,`link.to should be defined for ${a}`),f()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),f()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${a}`),f()(s.Component&&typeof s.Component=="function","link.Component should be a valid React Component"),f()(s.icon&&typeof s.icon=="function","link.Icon should be a valid React Component"),this.menu.push(s)};addMiddlewares=s=>{s.forEach(a=>{this.middlewares.add(a)})};addReducers=s=>{Object.keys(s).forEach(a=>{this.reducers.add(a,s[a])})};addSettingsLink=(s,a)=>{f()(this.settings[s],"The section does not exist");const l=JSON.stringify(a);f()(a.id,`link.id should be defined for ${l}`),f()(a.intlLabel?.id&&a.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${l}`),f()(a.to,`link.to should be defined for ${l}`),f()(a.Component&&typeof a.Component=="function","link.Component should be a valid React Component"),this.settings[s].links.push(a)};addSettingsLinks=(s,a)=>{f()(this.settings[s],"The section does not exist"),f()(Array.isArray(a),"TypeError expected links to be an array"),a.forEach(l=>{this.addSettingsLink(s,l)})};async bootstrap(){Object.keys(this.appPlugins).forEach(s=>{const a=this.appPlugins[s].bootstrap;a&&a({addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}),I()(this.customBootstrapConfiguration)&&this.customBootstrapConfiguration({addComponents:this.addComponents,addFields:this.addFields,addMenuLink:this.addMenuLink,addReducers:this.addReducers,addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}bootstrapAdmin=async()=>(await this.createCustomConfigurations(),this.createHook(Tt.No),this.createHook(Tt.LK),this.createHook(Tt.dV),this.createHook(Tt.Eo),Promise.resolve());createCustomConfigurations=async()=>{if(this.customConfigurations?.locales&&(this.configurations.locales=["en",...this.customConfigurations.locales?.filter(s=>s!=="en")||[]]),this.customConfigurations?.auth?.logo&&(this.configurations.authLogo=this.customConfigurations.auth.logo),this.customConfigurations?.menu?.logo&&(this.configurations.menuLogo=this.customConfigurations.menu.logo),this.customConfigurations?.head?.favicon&&(this.configurations.head.favicon=this.customConfigurations.head.favicon),this.customConfigurations?.theme){const s=this.customConfigurations.theme.dark,a=this.customConfigurations.theme.light;!s&&!a&&(console.warn("[deprecated] In future versions, Strapi will stop supporting this theme customization syntax. The theme configuration accepts a light and a dark key to customize each theme separately. See https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#theme-extension."),u()(this.configurations.themes.light,this.customConfigurations.theme)),a&&u()(this.configurations.themes.light,a),s&&u()(this.configurations.themes.dark,s)}this.customConfigurations?.notifications?.releases!==void 0&&(this.configurations.notifications.releases=this.customConfigurations.notifications.releases),this.customConfigurations?.tutorials!==void 0&&(this.configurations.tutorials=this.customConfigurations.tutorials)};createHook=s=>{this.hooksDict[s]=y()};createSettingSection=(s,a)=>{f()(s.id,"section.id should be defined"),f()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,"section.intlLabel should be defined"),f()(Array.isArray(a),"TypeError expected links to be an array"),f()(this.settings[s.id]===void 0,"A similar section already exists"),this.settings[s.id]={...s,links:[]},a.forEach(l=>{this.addSettingsLink(s.id,l)})};createStore=()=>te(this.middlewares.middlewares,this.reducers.reducers);getAdminInjectedComponents=(s,a,l)=>{try{return this.admin.injectionZones[s][a][l]||[]}catch(g){return console.error("Cannot get injected component",g),g}};getPlugin=s=>this.plugins[s];async initialize(){Object.keys(this.appPlugins).forEach(s=>{this.appPlugins[s].register(this)})}injectContentManagerComponent=(s,a,l)=>{f()(this.admin.injectionZones.contentManager[s]?.[a],`The ${s} ${a} zone is not defined in the content manager`),f()(l,"A Component must be provided"),this.admin.injectionZones.contentManager[s][a].push(l)};injectAdminComponent=(s,a,l)=>{f()(this.admin.injectionZones.admin[s]?.[a],`The ${s} ${a} zone is not defined in the admin`),f()(l,"A Component must be provided"),this.admin.injectionZones.admin[s][a].push(l)};async loadAdminTrads(){const s=this.configurations.locales.map(g=>e(48224)(`./${g}.json`).then(({default:A})=>({data:A,locale:g})).catch(()=>({data:null,locale:g})));return(await Promise.all(s)).reduce((g,A)=>(A.data&&(g[A.locale]=A.data),g),{})}async loadTrads(){const s=await this.loadAdminTrads(),a=Object.keys(this.appPlugins).map(S=>{const j=this.appPlugins[S].registerTrads;return j?j({locales:this.configurations.locales}):null}).filter(S=>S),g=(await Promise.all(a)).reduce((S,j)=>{const W=j.reduce((q,le)=>(q[le.locale]=le.data,q),{});return Object.keys(W).forEach(q=>{S[q]={...S[q],...W[q]}}),S},{}),A=this.configurations.locales.reduce((S,j)=>(S[j]={...s[j],...g[j]||{},...this.customConfigurations?.translations?.[j]},S),{});return this.configurations.translations=A,Promise.resolve()}registerHook=(s,a)=>{f()(this.hooksDict[s],`The hook ${s} is not defined. You are trying to register a hook that does not exist in the application.`),this.hooksDict[s].register(a)};registerPlugin=s=>{const a=(0,se.Sy)(s);this.plugins[a.pluginId]=a};runHookSeries=(s,a=!1)=>a?this.hooksDict[s].runSeriesAsync():this.hooksDict[s].runSeries();runHookWaterfall=(s,a,l=!1,g)=>l?this.hooksDict[s].runWaterfallAsync(a,g):this.hooksDict[s].runWaterfall(a,g);runHookParallel=s=>this.hooksDict[s].runParallel();render(){const s=this.createStore(),a=T()(os,this.configurations.locales||[]),{components:{components:l},fields:{fields:g}}=this.library;return t.createElement(as,{authLogo:this.configurations.authLogo,components:l,fields:g,customFields:this.customFields,localeNames:a,getAdminInjectedComponents:this.getAdminInjectedComponents,getPlugin:this.getPlugin,messages:this.configurations.translations,menu:this.menu,menuLogo:this.configurations.menuLogo,plugins:this.plugins,runHookParallel:this.runHookParallel,runHookWaterfall:(A,S,j=!1)=>this.runHookWaterfall(A,S,j,s),runHookSeries:this.runHookSeries,themes:this.configurations.themes,settings:this.settings,showTutorials:this.configurations.tutorials,showReleaseNotification:this.configurations.notifications.releases,store:s},t.createElement(t.Fragment,null,t.createElement(C.q,{link:[{rel:"icon",type:"image/png",href:this.configurations.head.favicon}],htmlAttributes:{lang:localStorage.getItem(ze)||"en"}}),t.createElement(i.VK,{basename:v.Z},t.createElement(It,{store:s}))))}}var us=({adminConfig:c={},appPlugins:s,library:a,middlewares:l,reducers:g})=>new ls({adminConfig:c,appPlugins:s,library:a,middlewares:l,reducers:g})},5985:function(D,m,e){"use strict";var t=e(32735);const i=(0,t.createContext)();m.Z=i},20139:function(D,m,e){"use strict";var t=e(32735),i=e(5985);const n=()=>{const{changeLocale:E,localeNames:L,messages:u}=(0,t.useContext)(i.Z);return{changeLocale:E,localeNames:L,messages:u}};m.Z=n},10190:function(D,m,e){"use strict";var t=e(32735),i=e(8471),n=e(32308);const E=i.ZP.img`
18
- height: ${72/16}rem;
19
- `,L=()=>{const{logos:{auth:u}}=(0,n.um)();return t.createElement(E,{src:u?.custom??u.default,"aria-hidden":!0,alt:""})};m.Z=L},66694:function(D,m,e){"use strict";e.d(m,{ux:function(){return n},_5:function(){return L},$l:function(){return P},Rj:function(){return R}});var t=e(32735),n=(0,t.createContext)({}),L=(0,t.createContext)({}),P=(0,t.createContext)({}),R=(0,t.createContext)({})},78246:function(D,m){"use strict";const e="/admin/".replace(window.location.origin,"");m.Z=e},46339:function(D,m,e){"use strict";e.d(m,{Eo:function(){return n},LK:function(){return i},No:function(){return t},dV:function(){return E}});const t="Admin/CM/pages/ListView/inject-column-in-table",i="Admin/CM/pages/App/mutate-collection-types-links",n="Admin/CM/pages/EditView/mutate-edit-view-layout",E="Admin/CM/pages/App/mutate-single-types-links"},32308:function(D,m,e){"use strict";e.d(m,{um:function(){return E},U_:function(){return f},Dq:function(){return k},H9:function(){return Ve},$_:function(){return Bt},rW:function(){return Et},bF:function(){return Ae},G4:function(){return Zt},Te:function(){return Pe},M1:function(){return It}});var t=e(32735),i=e(66694),E=()=>(0,t.useContext)(i._5),L=e(70166),u=e(69262),P=e(97889);const T={data:{},error:null,isLoading:!0};var I=(p,d)=>(0,P.ZP)(p,r=>{switch(d.type){case"GET_DATA":{r.isLoading=!0,r.data={},r.error=null;break}case"GET_DATA_SUCCEEDED":{r.data=d.data,r.isLoading=!1,r.error=null;break}case"GET_DATA_ERROR":{r.isLoading=!1,r.error=d.error;break}default:return r}}),f=p=>{const[{data:d,error:r,isLoading:w},x]=(0,t.useReducer)(I,T),{get:B}=(0,u.kY)();return(0,t.useEffect)(()=>{(async()=>{try{x({type:"GET_DATA"});const{data:{data:G}}=await B("/admin/permissions",{params:{role:p}});x({type:"GET_DATA_SUCCEEDED",data:G})}catch{}})()},[p,B]),{data:d,error:r,isLoading:w}};const C={role:{},permissions:{},isLoading:!0};var b=(p,d)=>(0,P.ZP)(p,r=>{switch(d.type){case"GET_DATA_SUCCEEDED":{r.role=d.role,r.permissions=d.permissions,r.isLoading=!1;break}case"GET_DATA_ERROR":{r.isLoading=!1;break}case"ON_SUBMIT_SUCCEEDED":{r.role.name=d.name,r.role.description=d.description;break}default:return r}}),k=p=>{const d=(0,u.lm)(),[r,w]=(0,t.useReducer)(b,C),{get:x}=(0,u.kY)();(0,t.useEffect)(()=>{p?(async G=>{try{const[{data:{data:ae}},{data:{data:Ce}}]=await Promise.all([`roles/${G}`,`roles/${G}/permissions`].map(J=>x(`/admin/${J}`)));w({type:"GET_DATA_SUCCEEDED",role:ae,permissions:Ce})}catch(ae){console.error(ae),w({type:"GET_DATA_ERROR"}),d({type:"warning",message:{id:"notification.error"}})}})(p):w({type:"GET_DATA_SUCCEEDED",role:{},permissions:[]})},[x,p,d]);const B=(0,t.useCallback)(V=>{w({type:"ON_SUBMIT_SUCCEEDED",...V})},[]);return{...r,onSubmitSucceeded:B}},U=(p,d)=>d.map(({permissions:r})=>(0,u.qX)(p,r)),se=async(p,d)=>{const r=U(p,d),w=await Promise.all(r);return d.filter((B,V)=>w[V])},M=e(99381),h=e.n(M),F=async(p,d,r)=>{const w=U(p,d),x=await Promise.all(w),B=d.filter((ae,Ce)=>x[Ce]),V=B.findIndex(ae=>ae.to==="/settings");if(V===-1)return[];const G=h()(B);return G[V].notificationsCount=r?1:0,G},oe=e(2287),o=e(36919),Re=e(45112),$=e(83983);const pe={generalSectionLinks:[{icon:oe.Z,intlLabel:{id:"global.plugins",defaultMessage:"Plugins"},to:"/list-plugins",permissions:$.Z.marketplace.main},{icon:o.Z,intlLabel:{id:"global.marketplace",defaultMessage:"Marketplace"},to:"/marketplace",permissions:$.Z.marketplace.main},{icon:Re.Z,intlLabel:{id:"global.settings",defaultMessage:"Settings"},to:"/settings",permissions:[],notificationsCount:0}],pluginsSectionLinks:[],isLoading:!0};var Ge=(p=pe,d)=>(0,P.ZP)(p,r=>{switch(d.type){case"SET_SECTION_LINKS":{const{authorizedGeneralSectionLinks:w,authorizedPluginSectionLinks:x}=d.data;r.generalSectionLinks=w,r.pluginsSectionLinks=x;break}case"UNSET_IS_LOADING":{r.isLoading=!1;break}default:return r}}),Ve=()=>{const[p,d]=(0,t.useReducer)(Ge,pe),{allPermissions:r}=(0,u.vn)(),{shouldUpdateStrapi:w}=(0,u.L7)(),{menu:x}=(0,u.j1)(),B=(0,t.useRef)(p.generalSectionLinks),V=(0,t.useRef)(w),G=async(Ce=r)=>{const we=await se(Ce,x),Ne=await F(Ce,B.current,V.current);d({type:"SET_SECTION_LINKS",data:{authorizedGeneralSectionLinks:Ne,authorizedPluginSectionLinks:we}}),d({type:"UNSET_IS_LOADING"})},ae=(0,t.useRef)(G);return(0,t.useEffect)(()=>{ae.current(r)},[r,d]),p},et=e(33795),Ue=e.n(et),Ye=(p,d)=>({...p,isLoading:d});const Fe={roles:[],isLoading:!0};var nt=(p,d)=>(0,P.ZP)(p,r=>{switch(d.type){case"GET_DATA":{r.isLoading=!0,r.roles=[];break}case"GET_DATA_SUCCEEDED":{r.roles=d.data,r.isLoading=!1;break}case"GET_DATA_ERROR":{r.isLoading=!1;break}default:return r}}),Ae=(p=!0)=>{const d=(0,u.lm)(),[{roles:r,isLoading:w},x]=(0,t.useReducer)(nt,Fe,()=>Ye(Fe,p));(0,t.useEffect)(()=>{p&&B()},[p]);const B=(0,t.useCallback)(async()=>{const V=(0,u.tg)();try{x({type:"GET_DATA"});const{data:{data:G}}=await V.get("/admin/roles");x({type:"GET_DATA_SUCCEEDED",data:G})}catch(G){const ae=Ue()(G,["response","payload","message"],"An error occured");x({type:"GET_DATA_ERROR"}),ae!=="Forbidden"&&d({type:"warning",message:ae})}},[d]);return{roles:r,isLoading:w,getData:B}},ne=e(3040),X=e.n(ne);const fe={menu:[],isLoading:!0};var ie=(p,d)=>(0,P.ZP)(p,r=>{switch(d.type){case"CHECK_PERMISSIONS_SUCCEEDED":{d.data.forEach(w=>{w.hasPermission&&X()(r,["menu",...w.path.split("."),"isDisplayed"],w.hasPermission)}),r.menu.forEach((w,x)=>{r.menu[x].links=w.links.filter(B=>B.isDisplayed===!0)}),r.isLoading=!1;break}default:return r}}),je=e(9086),me=e.n(je),Ze=e(98978),Le=e.n(Ze),ut=p=>Le()(p,d=>d.id),Je=p=>p.map(d=>{const r=d.links.map(w=>({...w,isDisplayed:!1}));return{...d,links:r}}),H=[{intlLabel:{id:"global.roles",defaultMessage:"Roles"},to:"/settings/roles",id:"roles",isDisplayed:!1,permissions:$.Z.settings.roles.main},{intlLabel:{id:"global.users"},to:"/settings/users?pageSize=10&page=1&sort=firstname",id:"users",isDisplayed:!1,permissions:$.Z.settings.users.main}],ct=[...(()=>window&&window.strapi&&window.strapi.isEE?e(66334).Z:e(47950).Z)(),...H],xe=[{intlLabel:{id:"Settings.application.title",defaultMessage:"Overview"},to:"/settings/application-infos",id:"000-application-infos",isDisplayed:!1,permissions:[]},{intlLabel:{id:"Settings.webhooks.title",defaultMessage:"Webhooks"},to:"/settings/webhooks",id:"webhooks",isDisplayed:!1,permissions:$.Z.settings.webhooks.main},{intlLabel:{id:"Settings.apiTokens.title",defaultMessage:"API Tokens"},to:"/settings/api-tokens?sort=name:ASC",id:"api-tokens",isDisplayed:!1,permissions:$.Z.settings["api-tokens"].main},{intlLabel:{id:"Settings.transferTokens.title",defaultMessage:"Transfer Tokens"},to:"/settings/transfer-tokens?sort=name:ASC",id:"transfer-tokens",isDisplayed:!1,permissions:$.Z.settings["transfer-tokens"].main}];const Xe=(()=>window&&window.strapi&&window.strapi.isEE?e(11545).Z:e(73086).Z)();var re=[...xe,...Xe],_=(p,{settings:d,shouldUpdateStrapi:r})=>{const w=d.global.links,x=ut([...w,...re]).map(G=>({...G,hasNotification:G.id==="000-application-infos"&&r})),B=Object.values(me()(d,"global")),V=[{...d.global,links:x},{id:"permissions",intlLabel:{id:"Settings.permissions",defaultMessage:"Administration Panel"},links:ct},...B];return{...p,menu:Je(V)}},Pe=(p=!1)=>{const{allPermissions:d}=(0,u.vn)(),{shouldUpdateStrapi:r}=(0,u.L7)(),{settings:w}=(0,u.j1)(),[{isLoading:x,menu:B},V]=(0,t.useReducer)(ie,fe,()=>_(fe,{settings:w,shouldUpdateStrapi:r}));return(0,t.useEffect)(()=>{p||(async()=>{const ae=async(Ne,at)=>({hasPermission:await(0,u.qX)(d,Ne),path:at}),J=(Ne=>Ne.reduce((at,ze,vt)=>{const Pt=ot=>ot.map((Kt,mt)=>ae(ot[mt].permissions,`${vt}.links.${mt}`));return[...at,...Pt(ze.links)]},[]))(B),we=await Promise.all(J);V({type:"CHECK_PERMISSIONS_SUCCEEDED",data:we})})()},[d,p]),{isLoading:x,menu:B}},ht=e(8997),Rt=e(88423),_e=e.n(Rt),At=e(56236),Lt=e.n(At);const Ct={fieldsToPick:[],formErrors:{},initialData:{},isLoading:!0,modifiedData:{},showHeaderButtonLoader:!1,showHeaderLoader:!0},Mt=(p,d)=>(0,P.ZP)(p,r=>{switch(d.type){case"GET_DATA_SUCCEEDED":{r.isLoading=!1,r.showHeaderLoader=!1,r.initialData=_e()(d.data,p.fieldsToPick),r.modifiedData=_e()(d.data,p.fieldsToPick);break}case"ON_CANCEL":{r.modifiedData=p.initialData,r.formErrors={};break}case"ON_CHANGE":{d.inputType==="password"&&!d.value?Lt()(r.modifiedData,d.keys.split(".")):d.keys.includes("username")&&!d.value?X()(r.modifiedData,d.keys.split("."),null):X()(r.modifiedData,d.keys.split("."),d.value);break}case"ON_SUBMIT":{r.showHeaderButtonLoader=!0;break}case"ON_SUBMIT_SUCCEEDED":{r.initialData=_e()(d.data,p.fieldsToPick),r.modifiedData=_e()(d.data,p.fieldsToPick),r.showHeaderButtonLoader=!1;break}case"SET_ERRORS":{r.formErrors=d.errors,r.showHeaderButtonLoader=!1;break}default:return r}});var Ut=(p,d)=>({...p,fieldsToPick:d}),Zt=(p,d,r,w)=>{const[{formErrors:x,initialData:B,isLoading:V,modifiedData:G,showHeaderButtonLoader:ae,showHeaderLoader:Ce},J]=(0,t.useReducer)(Mt,Ct,()=>Ut(Ct,w)),we=(0,u.lm)(),{lockApp:Ne,unlockApp:at}=(0,u.o1)(),{get:ze,put:vt}=(0,u.kY)();return(0,t.useEffect)(()=>{p&&(async()=>{try{const{data:{data:Me}}=await ze(p);J({type:"GET_DATA_SUCCEEDED",data:Me,fieldsToPick:w})}catch(Me){console.error(Me.response),we({type:"warning",message:{id:"notification.error"}})}})()},[p]),[{formErrors:x,initialData:B,isLoading:V,modifiedData:G,showHeaderButtonLoader:ae,showHeaderLoader:Ce},J,{handleCancel:()=>{J({type:"ON_CANCEL"})},handleChange:({target:{name:Ke,value:Me,type:Se}})=>{J({type:"ON_CHANGE",inputType:Se,keys:Ke,value:Me})},handleSubmit:async Ke=>{Ke.preventDefault();const Me=await(0,ht.R6)(G,d);if(J({type:"SET_ERRORS",errors:Me||{}}),!Me)try{Ne(),J({type:"ON_SUBMIT"});const Se=me()(G,["confirmPassword","registrationToken"]);Se.roles&&(Se.roles=Se.roles.map(yt=>yt.id)),Se.ssoLockedRoles&&(Se.ssoLockedRoles=[...new Set(Se.ssoLockedRoles)]);const{data:{data:Be}}=await vt(p,Se);r(Be),J({type:"ON_SUBMIT_SUCCEEDED",data:Be}),we({type:"success",message:{id:"notification.success.saved"}})}catch(Se){const Be=Se?.response?.payload??{data:{}};Be?.data&&typeof Be.data=="string"?we({type:"warning",message:Be.data}):we({type:"warning",message:Be.message});const yt=(0,ht.Iz)(Be);J({type:"SET_ERRORS",errors:yt})}finally{at()}},setField:(Ke,Me)=>{J({type:"ON_CHANGE",keys:Ke,value:Me})}}]},Bt=()=>(0,t.useContext)(i.$l);const St=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),Dt=()=>{const{latestStrapiReleaseTag:p,shouldUpdateStrapi:d}=useAppInfo(),r=useNotification();return useEffect(()=>{d&&St&&r({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${p}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)})},[p,d,r]),null};var Wt=null,It=()=>(0,t.useContext)(i.Rj),Et=(p,d,r,w)=>{const[x,B]=(0,t.useState)(!1),V=(0,u.lm)(),{post:G}=(0,u.kY)(),{formatAPIError:ae}=(0,u.So)();return{regenerateData:async()=>{try{const{data:{data:{accessKey:J}}}=await G(`${p}${d}/regenerate`);B(!1),r(J)}catch(J){B(!1),w?w(J):V({type:"warning",message:ae(J)})}},isLoadingConfirmation:x}}},70166:function(D,m,e){"use strict";e.d(m,{G:function(){return n}});var t=e(69262),i=e(20108);function n(){const{get:E}=(0,t.kY)(),{formatAPIError:L}=(0,t.So)(),u=(0,t.lm)(),P=(0,i.useQueries)(["components","content-types"].map(C=>({queryKey:["content-manager",C],async queryFn(){const{data:{data:v}}=await E(`/content-manager/${C}`);return v},onError(v){u({type:"warning",message:L(v)})}}))),[T,R]=P,I=T.isLoading||R.isLoading,O=(R?.data??[]).filter(C=>C.kind==="collectionType"&&C.isDisplayed),f=(R?.data??[]).filter(C=>C.kind!=="collectionType"&&C.isDisplayed);return{isLoading:I,components:T?.data??[],collectionTypes:O,singleTypes:f}}},47950:function(D,m){"use strict";m.Z=[]},73086:function(D,m){"use strict";m.Z=[]},954:function(D,m,e){"use strict";e.d(m,{sg:function(){return C},bU:function(){return v},ZP:function(){return y}});var t=e(32735),i=e(8471),n=e(60216),E=e.n(n),L=e(72850),u=e(87933),P=e(67879),T=e(34853),R=e(20139),O=()=>{const{changeLocale:k,localeNames:Z}=(0,R.Z)(),{locale:U}=(0,P.Z)();return t.createElement(T.O,{label:Z[U]},Object.keys(Z).map(te=>t.createElement(T.s,{onClick:()=>k(te),key:te},Z[te])))};const f=(0,i.ZP)(L.x)`
20
- margin: 0 auto;
21
- width: 552px;
22
- `,C=(0,i.ZP)(u.k)`
23
- flex-direction: column;
24
- `,v=({children:k})=>t.createElement(f,{shadow:"tableShadow",hasRadius:!0,paddingTop:9,paddingBottom:9,paddingLeft:10,paddingRight:10,background:"neutral0",justifyContent:"center"},k);v.propTypes={children:E().node.isRequired};const b=({children:k})=>t.createElement("div",null,t.createElement(u.k,{as:"header",justifyContent:"flex-end"},t.createElement(L.x,{paddingTop:6,paddingRight:8},t.createElement(O,null))),t.createElement(L.x,{paddingTop:2,paddingBottom:11},k));b.propTypes={children:E().node.isRequired};var y=b},56761:function(D,m){"use strict";const e=[];m.Z=e},72218:function(D,m,e){"use strict";var t=e(8471),i=e(63642);const n=(0,t.ZP)(i.E)`
25
- svg {
26
- height: 1rem;
27
- width: 1rem;
28
- path {
29
- fill: ${({theme:E})=>E.colors.neutral600};
30
- }
31
- }
32
- `;m.Z=n},1115:function(D,m,e){"use strict";var t=e(32735),i=e(69262),n=e(54894),E=e(60492),L=e(10369),u=e(27649),P=e(72850),T=e(49372),R=e(87933),I=e(8284),O=e(41415),f=e(60216),C=e.n(f),v=e(67879),b=e(8471),y=e(92802),k=e(954),Z=e(10190),U=e(72218);const te=(0,b.ZP)(L.o)`
33
- ::-ms-reveal {
34
- display: none;
35
- }
36
- `,se=({onSubmit:M,schema:h,children:Q})=>{const[F,oe]=(0,t.useState)(!1),{formatMessage:o}=(0,v.Z)();return t.createElement(u.o,null,t.createElement(k.bU,null,t.createElement(y.J9,{enableReinitialize:!0,initialValues:{email:"",password:"",rememberMe:!1},onSubmit:M,validationSchema:h,validateOnChange:!1},({values:Re,errors:$,handleChange:pe})=>t.createElement(i.l0,{noValidate:!0},t.createElement(k.sg,null,t.createElement(Z.Z,null),t.createElement(P.x,{paddingTop:6,paddingBottom:1},t.createElement(T.Z,{variant:"alpha",as:"h1"},o({id:"Auth.form.welcome.title",defaultMessage:"Welcome!"}))),t.createElement(P.x,{paddingBottom:7},t.createElement(T.Z,{variant:"epsilon",textColor:"neutral600"},o({id:"Auth.form.welcome.subtitle",defaultMessage:"Log in to your Strapi account"}))),$.errorMessage&&t.createElement(T.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},$.errorMessage)),t.createElement(R.k,{direction:"column",alignItems:"stretch",gap:6},t.createElement(L.o,{error:$.email?o({id:$.email,defaultMessage:"This value is required."}):"",value:Re.email,onChange:pe,label:o({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:o({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),t.createElement(te,{error:$.password?o({id:$.password,defaultMessage:"This value is required."}):"",onChange:pe,value:Re.password,label:o({id:"global.password",defaultMessage:"Password"}),name:"password",type:F?"text":"password",endAction:t.createElement(U.Z,{onClick:Oe=>{Oe.stopPropagation(),oe(Ge=>!Ge)},label:o(F?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},F?t.createElement(n.Z,null):t.createElement(E.Z,null)),required:!0}),t.createElement(I.X,{onValueChange:Oe=>{pe({target:{value:Oe,name:"rememberMe"}})},value:Re.rememberMe,"aria-label":"rememberMe",name:"rememberMe"},o({id:"Auth.form.rememberMe.label",defaultMessage:"Remember me"})),t.createElement(O.z,{fullWidth:!0,type:"submit"},o({id:"Auth.form.button.login",defaultMessage:"Login"}))))),Q),t.createElement(R.k,{justifyContent:"center"},t.createElement(P.x,{paddingTop:4},t.createElement(i.rU,{to:"/auth/forgot-password"},o({id:"Auth.link.forgot-password",defaultMessage:"Forgot your password?"})))))};se.defaultProps={children:null,onSubmit(){}},se.propTypes={children:C().node,onSubmit:C().func,schema:C().shape({type:C().string.isRequired}).isRequired},m.Z=se},5365:function(D,m,e){"use strict";var t=e(32735),i=e(60216),n=e.n(i),E=e(1115),L=e(954);const u=P=>t.createElement(L.ZP,null,t.createElement(E.Z,{...P}));u.defaultProps={onSubmit:P=>P.preventDefault()},u.propTypes={onSubmit:n().func},m.Z=u},53951:function(D,m,e){"use strict";e.r(m);var t=e(32735),i=e(69262),n=e(27649),E=e(82055),L=e(17e3),u=e(9695),P=e(8482),T=e(25386),R=e(67879);const I=()=>{const{formatMessage:O}=(0,R.Z)();return(0,i.go)(),t.createElement(n.o,{labelledBy:"title"},t.createElement(E.T,{id:"title",title:O({id:"content-manager.pageNotFound",defaultMessage:"Page not found"})}),t.createElement(L.D,null,t.createElement(u.x,{action:t.createElement(i.Qj,{variant:"secondary",endIcon:t.createElement(P.Z,null),to:"/"},O({id:"app.components.NotFoundPage.back",defaultMessage:"Back to homepage"})),content:O({id:"app.page.not.found",defaultMessage:"Oops! We can't seem to find the page you're looging for..."}),hasRadius:!0,icon:t.createElement(T.Z,{width:"10rem"}),shadow:"tableShadow"})))};m.default=I},26123:function(D,m){"use strict";m.Z={}},41832:function(D,m){"use strict";const e=({data:t})=>{try{return Object.keys(t).reduce((i,n)=>{const E=t[n][0];return i[n]={id:E,defaultMessage:E},i},{})}catch{return{}}};m.Z=e},8997:function(D,m,e){"use strict";e.d(m,{R6:function(){return n},ot:function(){return I},Iz:function(){return O.Z},Pp:function(){return U},IF:function(){return Z},Qy:function(){return se},WW:function(){return C}});var t=e(69262),n=async(M,h)=>{let Q=null;try{await h.validate(M,{abortEarly:!1})}catch(F){Q=(0,t.CJ)(F)}return Q},E=e(32735),L=e(60216),u=e.n(L),P=e(53038);const T=({loadComponent:M})=>{const[h,Q]=(0,E.useState)(null);return(0,E.useEffect)(()=>{(async()=>{try{const oe=await M();Q(()=>oe.default)}catch(oe){console.log(oe)}})()},[M]),h?E.createElement(h,null):E.createElement(t.dO,null)},R=(M,h,Q)=>E.createElement(P.AW,{render:()=>E.createElement(T,{loadComponent:M}),key:h,path:h,exact:Q||!1});T.propTypes={loadComponent:u().func.isRequired};var I=R,O=e(41832),C=M=>M.filter((h,Q,F)=>F.findIndex(oe=>oe.key===h.key)===Q),v=e(98978);const b=M=>sortBy(M,h=>h.name);var y=null,Z=M=>`/admin/${M}`,U=(M,h="")=>[M,h].filter(Q=>Q).join(" ");const te={bufferToHex(M){return[...new Uint8Array(M)].map(h=>h.toString(16).padStart(2,"0")).join("")},async digestMessage(M){const h=new TextEncoder().encode(M),Q=await crypto.subtle.digest("SHA-256",h);return this.bufferToHex(Q)}};async function se(M){if(!M)return null;try{return await te.digestMessage(M.email)}catch{return null}}},58414:function(D,m,e){"use strict";e.d(m,{pl:function(){return R},q5:function(){return O.Z}});var t=e(32735),i=e(69262),n=e(8997),E=e(97889);const L={data:[],isLoading:!0};var P=(f,C)=>(0,E.ZP)(f,v=>{switch(C.type){case"GET_DATA_SUCCEEDED":{v.data=C.data,v.isLoading=!1;break}case"GET_DATA_ERROR":{v.isLoading=!1;break}default:return v}}),R=({ssoEnabled:f})=>{const[C,v]=(0,t.useReducer)(P,L),b=(0,i.lm)(),{get:y}=(0,i.kY)();return(0,t.useEffect)(()=>{(async()=>{try{if(!f){v({type:"GET_DATA_SUCCEEDED",data:[]});return}const{data:Z}=await y((0,n.IF)("providers"));v({type:"GET_DATA_SUCCEEDED",data:Z})}catch(Z){console.error(Z),v({type:"GET_DATA_ERROR"}),b({type:"warning",message:{id:"notification.error"}})}})()},[y,f,b]),C},I=e(21306),O=e(2690)},21306:function(D,m,e){"use strict";var t=e(32735),i=e(67879),n=e(53038),E=e(69262),L=e(36866),u=e.n(L),P=e(2690);const T="strapi-notification-seat-limit",R="https://cloud.strapi.io/profile/billing",I="https://strapi.io/billing/request-seats",O=()=>{const{formatMessage:f}=(0,i.Z)();let{license:C}=(0,P.Z)();const v=(0,E.lm)(),{pathname:b}=(0,n.TH)();(0,t.useEffect)(()=>{if(!C?.data)return;const{enforcementUserCount:y,permittedSeats:k,licenseLimitStatus:Z,isHostedOnStrapiCloud:U}=C?.data??{},te=!u()(k)&&!window.sessionStorage.getItem(`${T}-${b}`)&&(Z==="AT_LIMIT"||Z==="OVER_LIMIT");let se;Z==="OVER_LIMIT"?se="warning":Z==="AT_LIMIT"&&(se="softWarning"),te&&v({type:se,message:f({id:"notification.ee.warning.over-.message",defaultMessage:"Add seats to {licenseLimitStatus, select, OVER_LIMIT {invite} other {re-enable}} Users. If you already did it but it's not reflected in Strapi yet, make sure to restart your app."},{licenseLimitStatus:Z}),title:f({id:"notification.ee.warning.at-seat-limit.title",defaultMessage:"{licenseLimitStatus, select, OVER_LIMIT {Over} other {At}} seat limit ({enforcementUserCount}/{permittedSeats})"},{licenseLimitStatus:Z,enforcementUserCount:y,permittedSeats:k}),link:{url:U?R:I,label:f({id:"notification.ee.warning.seat-limit.link",defaultMessage:"{isHostedOnStrapiCloud, select, true {ADD SEATS} other {CONTACT SALES}}"},{isHostedOnStrapiCloud:U})},blockTransition:!0,onClose(){window.sessionStorage.setItem(`${T}-${b}`,!0)}})},[v,C.data,b,f])};m.Z=O},2690:function(D,m,e){"use strict";var t=e(69262),i=e(20108),n=e(83983);const E=()=>{const L=(0,t.ss)(n.Z.settings.users),{isLoading:u,allowedActions:{canRead:P,canCreate:T,canUpdate:R,canDelete:I}}=L,O=P&&T&&R&&I,{get:f}=(0,t.kY)(),C=async()=>{const{data:{data:b}}=await f("/admin/license-limit-information");return b};return{license:(0,i.useQuery)(["ee","license-limit-info"],C,{enabled:!u&&O})}};m.Z=E},66334:function(D,m,e){"use strict";var t=e(83983);const i=[];window.strapi.features.isEnabled(window.strapi.features.AUDIT_LOGS)&&i.push({intlLabel:{id:"global.auditLogs",defaultMessage:"Audit Logs"},to:"/settings/audit-logs?pageSize=50&page=1&sort=date:DESC",id:"auditLogs",isDisplayed:!1,permissions:t.Z.settings.auditLogs.main});const n=i;m.Z=n},11545:function(D,m,e){"use strict";var t=e(83983);const i=[];window.strapi.features.isEnabled(window.strapi.features.SSO)&&i.push({intlLabel:{id:"Settings.sso.title",defaultMessage:"Single Sign-On"},to:"/settings/single-sign-on",id:"sso",isDisplayed:!1,permissions:t.Z.settings.sso.main}),window.strapi.features.isEnabled(window.strapi.features.REVIEW_WORKFLOWS)&&i.push({intlLabel:{id:"Settings.review-workflows.page.title",defaultMessage:"Review Workflows"},to:"/settings/review-workflows",id:"review-workflows",isDisplayed:!1,permissions:t.Z.settings["review-workflows"].main}),m.Z=i},68944:function(D,m,e){"use strict";e.d(m,{Z:function(){return O}});var t=e(32735),i=e(53038),n=e(67879),E=e(49189),L=e.n(E),u=e(69262),P=e(8997),R=()=>{const{params:{authResponse:f}}=(0,i.$B)("/auth/login/:authResponse"),{formatMessage:C}=(0,n.Z)(),{push:v}=(0,i.k6)(),b=(0,t.useRef)(C);let y=(0,t.useCallback)(()=>{v(`/auth/oops?info=${encodeURIComponent(b.current({id:"Auth.form.button.login.providers.error",defaultMessage:"We cannot connect you through the selected provider."}))}`)},[v]);const{get:k}=(0,u.kY)(),Z=(0,t.useCallback)(async()=>{try{const U=L().get("jwtToken");if(u.I8.clearAppStorage(),U){u.I8.setToken(U,!0);const te=(0,P.IF)("users/me"),{data:{data:se}}=await k(te);u.I8.setUserInfo(se,!0),L().remove("jwtToken"),v("/auth/login")}}catch{y()}},[k,v,y]);return(0,t.useEffect)(()=>{f==="error"&&y(),f==="success"&&Z()},[f,Z,y]),t.createElement(u.dO,null)},O=[{Component:()=>({default:R}),to:"/auth/login/:authResponse",exact:!0}]},98768:function(D,m,e){"use strict";var t=e(32735),i=e(60216),n=e.n(i),E=e(8471),L=e(9026),u=e(72850),P=e(87933),T=e(49372),R=e(67879),I=e(1115),O=e(58414),f=e(954),C=e(33205);const v=(0,E.ZP)(L.i)`
37
- flex: 1;
38
- `,b=y=>{const k=window.strapi.features.isEnabled(window.strapi.features.SSO),{isLoading:Z,data:U}=(0,O.pl)({ssoEnabled:k}),{formatMessage:te}=(0,R.Z)();return!k||!Z&&U.length===0?t.createElement(f.ZP,null,t.createElement(I.Z,{...y})):t.createElement(f.ZP,null,t.createElement(I.Z,{...y},t.createElement(u.x,{paddingTop:7},t.createElement(P.k,{direction:"column",alignItems:"stretch",gap:7},t.createElement(P.k,null,t.createElement(v,null),t.createElement(u.x,{paddingLeft:3,paddingRight:3},t.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},te({id:"Auth.login.sso.divider"}))),t.createElement(v,null)),t.createElement(C.Z,{providers:U,displayAllProviders:!1})))))};b.defaultProps={onSubmit:y=>y.preventDefault(),requestError:null},b.propTypes={formErrors:n().object.isRequired,modifiedData:n().object.isRequired,onChange:n().func.isRequired,onSubmit:n().func,requestError:n().object},m.Z=b},33205:function(D,m,e){"use strict";var t=e(32735),i=e(60216),n=e.n(i),E=e(87933),L=e(63919),u=e(49372),P=e(15335),T=e(5803),R=e(8471),I=e(67879),O=e(14911);const f=R.ZP.a`
39
- width: ${136/16}rem;
40
- display: flex;
41
- justify-content: center;
42
- align-items: center;
43
- height: ${48/16}rem;
44
- border: 1px solid ${({theme:y})=>y.colors.neutral150};
45
- border-radius: ${({theme:y})=>y.borderRadius};
46
- text-decoration: inherit;
47
- &:link {
48
- text-decoration: none;
49
- }
50
- color: ${({theme:y})=>y.colors.neutral600};
51
- `,C=(0,R.ZP)(E.k)`
52
- & a:not(:first-child):not(:last-child) {
53
- margin: 0 ${({theme:y})=>y.spaces[2]};
54
- }
55
- & a:first-child {
56
- margin-right: ${({theme:y})=>y.spaces[2]};
57
- }
58
- & a:last-child {
59
- margin-left: ${({theme:y})=>y.spaces[2]};
60
- }
61
- `,v=({provider:y})=>t.createElement(L.u,{label:y.displayName},t.createElement(f,{href:`${window.strapi.backendURL}/admin/connect/${y.uid}`},y.icon?t.createElement("img",{src:y.icon,"aria-hidden":!0,alt:"",height:"32px"}):t.createElement(u.Z,null,y.displayName)));v.propTypes={provider:n().shape({icon:n().string,displayName:n().string.isRequired,uid:n().string.isRequired}).isRequired};const b=({providers:y,displayAllProviders:k})=>{const{formatMessage:Z}=(0,I.Z)();return k?t.createElement(P.r,{gap:4},y.map(U=>t.createElement(T.P,{key:U.uid,col:4},t.createElement(v,{provider:U})))):y.length>2&&!k?t.createElement(P.r,{gap:4},y.slice(0,2).map(U=>t.createElement(T.P,{key:U.uid,col:4},t.createElement(v,{provider:U}))),t.createElement(T.P,{col:4},t.createElement(L.u,{label:Z({id:"global.see-more"})},t.createElement(f,{as:O.rU,to:"/auth/providers"},t.createElement("span",{"aria-hidden":!0},"\u2022\u2022\u2022"))))):t.createElement(C,{justifyContent:"center"},y.map(U=>t.createElement(v,{key:U.uid,provider:U})))};b.defaultProps={displayAllProviders:!0},b.propTypes={providers:n().arrayOf(n().object).isRequired,displayAllProviders:n().bool},m.Z=b},7277:function(D,m,e){"use strict";e.d(m,{Z:function(){return M}});var t=e(32735),i=e(53038),n=e(8471),E=e(69262),L=e(9026),u=e(27649),P=e(72850),T=e(49372),R=e(87933),I=e(23866),O=e(41415),f=e(67879),C=e(58414),v=e(954),b=e(33205),y=e(10190);const k=(0,n.ZP)(L.i)`
62
- flex: 1;
63
- `;var U=()=>{const h=window.strapi.features.isEnabled(window.strapi.features.SSO),{push:Q}=(0,i.k6)(),{formatMessage:F}=(0,f.Z)(),{isLoading:oe,data:o}=(0,C.pl)({ssoEnabled:h}),Re=()=>{Q("/auth/login")};return!h||!oe&&o.length===0?t.createElement(i.l_,{to:"/auth/login"}):t.createElement(v.ZP,null,t.createElement(u.o,null,t.createElement(v.bU,null,t.createElement(v.sg,null,t.createElement(y.Z,null),t.createElement(P.x,{paddingTop:6,paddingBottom:1},t.createElement(T.Z,{as:"h1",variant:"alpha"},F({id:"Auth.form.welcome.title"}))),t.createElement(P.x,{paddingBottom:7},t.createElement(T.Z,{variant:"epsilon",textColor:"neutral600"},F({id:"Auth.login.sso.subtitle"})))),t.createElement(R.k,{direction:"column",alignItems:"stretch",gap:7},oe?t.createElement(R.k,{justifyContent:"center"},t.createElement(I.a,null,F({id:"Auth.login.sso.loading"}))):t.createElement(b.Z,{providers:o}),t.createElement(R.k,null,t.createElement(k,null),t.createElement(P.x,{paddingLeft:3,paddingRight:3},t.createElement(T.Z,{variant:"sigma",textColor:"neutral600"},F({id:"or"}))),t.createElement(k,null)),t.createElement(O.z,{fullWidth:!0,size:"L",onClick:Re},F({id:"Auth.form.button.login.strapi"})))),t.createElement(R.k,{justifyContent:"center"},t.createElement(P.x,{paddingTop:4},t.createElement(E.rU,{to:"/auth/forgot-password"},t.createElement(T.Z,{variant:"pi"},F({id:"Auth.link.forgot-password"})))))))},te=e(78834),M={...te.Z,providers:{Component:U,endPoint:null,fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""}}},99568:function(D,m){"use strict";const e={settings:{auditLogs:{main:[{action:"admin::audit-logs.read",subject:null}],read:[{action:"admin::audit-logs.read",subject:null}]},"review-workflows":{main:[{action:"admin::review-workflows.read",subject:null}]},sso:{main:[{action:"admin::provider-login.read",subject:null}],read:[{action:"admin::provider-login.read",subject:null}],update:[{action:"admin::provider-login.update",subject:null}]}}};m.Z=e},48224:function(D,m,e){var t={"./ar.json":[38677,7958],"./ca.json":[90169,3516],"./cs.json":[43186,7519],"./de.json":[8343,6901],"./dk.json":[65668,7898],"./en.json":[10329,320],"./es.json":[45445,8367],"./eu.json":[69511,8360],"./fr.json":[8399,8006],"./gu.json":[10182,2248],"./he.json":[21757,830],"./hi.json":[43206,6332],"./hu.json":[72320,5894],"./id.json":[74221,8897],"./it.json":[90685,6817],"./ja.json":[21727,1312],"./ko.json":[30986,1377],"./ml.json":[11309,9903],"./ms.json":[75973,3025],"./nl.json":[80381,2671],"./no.json":[82446,562],"./pl.json":[84008,7846],"./pt-BR.json":[91417,9647],"./pt.json":[41830,3340],"./ru.json":[57098,123],"./sa.json":[92900,9726],"./sk.json":[52204,606],"./sv.json":[43211,9303],"./th.json":[49582,749],"./tr.json":[99154,395],"./uk.json":[2987,7403],"./vi.json":[50576,3278],"./zh-Hans.json":[35964,2553],"./zh.json":[91999,1011]};function i(n){if(!e.o(t,n))return Promise.resolve().then(function(){var u=new Error("Cannot find module '"+n+"'");throw u.code="MODULE_NOT_FOUND",u});var E=t[n],L=E[0];return e.e(E[1]).then(function(){return e.t(L,19)})}i.keys=function(){return Object.keys(t)},i.id=48224,D.exports=i},47750:function(D,m,e){"use strict";D.exports=e.p+"70674f63fc3904c20de0.svg"}}]);