@strapi/admin 5.48.1 → 5.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/admin/src/StrapiApp.js +33 -20
- package/dist/admin/admin/src/StrapiApp.js.map +1 -1
- package/dist/admin/admin/src/StrapiApp.mjs +6 -1
- package/dist/admin/admin/src/StrapiApp.mjs.map +1 -1
- package/dist/admin/admin/src/components/ConfirmDialog.js +3 -2
- package/dist/admin/admin/src/components/ConfirmDialog.js.map +1 -1
- package/dist/admin/admin/src/components/Context.js +4 -3
- package/dist/admin/admin/src/components/Context.js.map +1 -1
- package/dist/admin/admin/src/components/DescriptionComponentRenderer.js +8 -4
- package/dist/admin/admin/src/components/DescriptionComponentRenderer.js.map +1 -1
- package/dist/admin/admin/src/components/ErrorElement.js +97 -2
- package/dist/admin/admin/src/components/ErrorElement.js.map +1 -1
- package/dist/admin/admin/src/components/ErrorElement.mjs +99 -4
- package/dist/admin/admin/src/components/ErrorElement.mjs.map +1 -1
- package/dist/admin/admin/src/components/Filters.js +3 -2
- package/dist/admin/admin/src/components/Filters.js.map +1 -1
- package/dist/admin/admin/src/components/Form.js +9 -5
- package/dist/admin/admin/src/components/Form.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Boolean.js +3 -2
- package/dist/admin/admin/src/components/FormInputs/Boolean.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Boolean.mjs +3 -2
- package/dist/admin/admin/src/components/FormInputs/Boolean.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Date.js +3 -2
- package/dist/admin/admin/src/components/FormInputs/Date.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Json.js +3 -2
- package/dist/admin/admin/src/components/FormInputs/Json.js.map +1 -1
- package/dist/admin/admin/src/components/GapDropZone.js +3 -2
- package/dist/admin/admin/src/components/GapDropZone.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Context.js +3 -2
- package/dist/admin/admin/src/components/GuidedTour/Context.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js +3 -2
- package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Tours.js +9 -3
- package/dist/admin/admin/src/components/GuidedTour/Tours.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Tours.mjs +6 -1
- package/dist/admin/admin/src/components/GuidedTour/Tours.mjs.map +1 -1
- package/dist/admin/admin/src/components/LanguageProvider.js +5 -1
- package/dist/admin/admin/src/components/LanguageProvider.js.map +1 -1
- package/dist/admin/admin/src/components/Layouts/HeaderLayout.js +3 -2
- package/dist/admin/admin/src/components/Layouts/HeaderLayout.js.map +1 -1
- package/dist/admin/admin/src/components/LazyOutlet.js +57 -0
- package/dist/admin/admin/src/components/LazyOutlet.js.map +1 -0
- package/dist/admin/admin/src/components/LazyOutlet.mjs +35 -0
- package/dist/admin/admin/src/components/LazyOutlet.mjs.map +1 -0
- package/dist/admin/admin/src/components/LeftMenu.js +3 -2
- package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavUser.js +10 -0
- package/dist/admin/admin/src/components/MainNav/NavUser.js.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavUser.mjs +10 -0
- package/dist/admin/admin/src/components/MainNav/NavUser.mjs.map +1 -1
- package/dist/admin/admin/src/components/NpsSurvey.js +4 -3
- package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
- package/dist/admin/admin/src/components/PageHelpers.js +3 -2
- package/dist/admin/admin/src/components/PageHelpers.js.map +1 -1
- package/dist/admin/admin/src/components/Pagination.js +3 -2
- package/dist/admin/admin/src/components/Pagination.js.map +1 -1
- package/dist/admin/admin/src/components/PluginsInitializer.js +3 -2
- package/dist/admin/admin/src/components/PluginsInitializer.js.map +1 -1
- package/dist/admin/admin/src/components/RelativeTime.js +6 -4
- package/dist/admin/admin/src/components/RelativeTime.js.map +1 -1
- package/dist/admin/admin/src/components/RelativeTime.mjs +3 -2
- package/dist/admin/admin/src/components/RelativeTime.mjs.map +1 -1
- package/dist/admin/admin/src/components/ResizeIndicator.js +3 -2
- package/dist/admin/admin/src/components/ResizeIndicator.js.map +1 -1
- package/dist/admin/admin/src/components/SearchInput.js +3 -2
- package/dist/admin/admin/src/components/SearchInput.js.map +1 -1
- package/dist/admin/admin/src/components/Table.js +3 -2
- package/dist/admin/admin/src/components/Table.js.map +1 -1
- package/dist/admin/admin/src/components/Theme.js +3 -2
- package/dist/admin/admin/src/components/Theme.js.map +1 -1
- package/dist/admin/admin/src/components/WidgetRoot.js +9 -5
- package/dist/admin/admin/src/components/WidgetRoot.js.map +1 -1
- package/dist/admin/admin/src/core/apis/CustomFields.js +14 -10
- package/dist/admin/admin/src/core/apis/CustomFields.js.map +1 -1
- package/dist/admin/admin/src/core/apis/Widgets.js +8 -4
- package/dist/admin/admin/src/core/apis/Widgets.js.map +1 -1
- package/dist/admin/admin/src/core/apis/router.js +39 -33
- package/dist/admin/admin/src/core/apis/router.js.map +1 -1
- package/dist/admin/admin/src/core/apis/router.mjs +19 -17
- package/dist/admin/admin/src/core/apis/router.mjs.map +1 -1
- package/dist/admin/admin/src/features/Auth.js +78 -6
- package/dist/admin/admin/src/features/Auth.js.map +1 -1
- package/dist/admin/admin/src/features/Auth.mjs +77 -6
- package/dist/admin/admin/src/features/Auth.mjs.map +1 -1
- package/dist/admin/admin/src/features/BackButton.js +3 -2
- package/dist/admin/admin/src/features/BackButton.js.map +1 -1
- package/dist/admin/admin/src/features/Configuration.js +3 -2
- package/dist/admin/admin/src/features/Configuration.js.map +1 -1
- package/dist/admin/admin/src/features/Notifications.js +3 -2
- package/dist/admin/admin/src/features/Notifications.js.map +1 -1
- package/dist/admin/admin/src/features/Tracking.js +7 -3
- package/dist/admin/admin/src/features/Tracking.js.map +1 -1
- package/dist/admin/admin/src/features/Widgets.js +3 -2
- package/dist/admin/admin/src/features/Widgets.js.map +1 -1
- package/dist/admin/admin/src/hooks/useAPIErrorHandler.js +3 -2
- package/dist/admin/admin/src/hooks/useAPIErrorHandler.js.map +1 -1
- package/dist/admin/admin/src/hooks/useAdminRoles.js +3 -2
- package/dist/admin/admin/src/hooks/useAdminRoles.js.map +1 -1
- package/dist/admin/admin/src/hooks/useControllableState.js +3 -2
- package/dist/admin/admin/src/hooks/useControllableState.js.map +1 -1
- package/dist/admin/admin/src/hooks/useDebounce.js +3 -2
- package/dist/admin/admin/src/hooks/useDebounce.js.map +1 -1
- package/dist/admin/admin/src/hooks/useDeviceType.js +3 -2
- package/dist/admin/admin/src/hooks/useDeviceType.js.map +1 -1
- package/dist/admin/admin/src/hooks/useElementOnScreen.js +3 -2
- package/dist/admin/admin/src/hooks/useElementOnScreen.js.map +1 -1
- package/dist/admin/admin/src/hooks/useEnterprise.js +3 -2
- package/dist/admin/admin/src/hooks/useEnterprise.js.map +1 -1
- package/dist/admin/admin/src/hooks/useFetchClient.js +3 -2
- package/dist/admin/admin/src/hooks/useFetchClient.js.map +1 -1
- package/dist/admin/admin/src/hooks/useForceUpdate.js +3 -2
- package/dist/admin/admin/src/hooks/useForceUpdate.js.map +1 -1
- package/dist/admin/admin/src/hooks/useIdleSessionLogout.js +85 -15
- package/dist/admin/admin/src/hooks/useIdleSessionLogout.js.map +1 -1
- package/dist/admin/admin/src/hooks/useIdleSessionLogout.mjs +82 -14
- package/dist/admin/admin/src/hooks/useIdleSessionLogout.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useIsMounted.js +3 -2
- package/dist/admin/admin/src/hooks/useIsMounted.js.map +1 -1
- package/dist/admin/admin/src/hooks/useMediaQuery.js +3 -2
- package/dist/admin/admin/src/hooks/useMediaQuery.js.map +1 -1
- package/dist/admin/admin/src/hooks/useMenu.js +7 -3
- package/dist/admin/admin/src/hooks/useMenu.js.map +1 -1
- package/dist/admin/admin/src/hooks/useOnce.js +3 -2
- package/dist/admin/admin/src/hooks/useOnce.js.map +1 -1
- package/dist/admin/admin/src/hooks/useQueryParams.js +0 -1
- package/dist/admin/admin/src/hooks/useQueryParams.js.map +1 -1
- package/dist/admin/admin/src/hooks/useQueryParams.mjs +0 -1
- package/dist/admin/admin/src/hooks/useQueryParams.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useRBAC.js +7 -3
- package/dist/admin/admin/src/hooks/useRBAC.js.map +1 -1
- package/dist/admin/admin/src/hooks/useSettingsMenu.js +7 -3
- package/dist/admin/admin/src/hooks/useSettingsMenu.js.map +1 -1
- package/dist/admin/admin/src/hooks/useThrottledCallback.js +5 -1
- package/dist/admin/admin/src/hooks/useThrottledCallback.js.map +1 -1
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.js +15 -7
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs +4 -2
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/AuthPage.js +3 -2
- package/dist/admin/admin/src/pages/Auth/AuthPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/AuthPage.mjs +3 -2
- package/dist/admin/admin/src/pages/Auth/AuthPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/ForgotPassword.js +3 -2
- package/dist/admin/admin/src/pages/Auth/components/ForgotPassword.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Login.js +8 -4
- package/dist/admin/admin/src/pages/Auth/components/Login.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Oops.js +3 -2
- package/dist/admin/admin/src/pages/Auth/components/Oops.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Register.js +9 -5
- package/dist/admin/admin/src/pages/Auth/components/Register.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/ResetPassword.js +4 -3
- package/dist/admin/admin/src/pages/Auth/components/ResetPassword.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/HomePage.js +3 -2
- package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.js +8 -4
- package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.js +7 -3
- package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.js +7 -3
- package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.js.map +1 -1
- package/dist/admin/admin/src/pages/ProfilePage.js +8 -4
- package/dist/admin/admin/src/pages/ProfilePage.js.map +1 -1
- package/dist/admin/admin/src/pages/SessionsPage.js +318 -0
- package/dist/admin/admin/src/pages/SessionsPage.js.map +1 -0
- package/dist/admin/admin/src/pages/SessionsPage.mjs +296 -0
- package/dist/admin/admin/src/pages/SessionsPage.mjs.map +1 -0
- package/dist/admin/admin/src/pages/Settings/Layout.js +4 -1
- package/dist/admin/admin/src/pages/Settings/Layout.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/Layout.mjs +5 -2
- package/dist/admin/admin/src/pages/Settings/Layout.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js +3 -2
- package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.js +3 -2
- package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/constants.js +3 -2
- package/dist/admin/admin/src/pages/Settings/components/Tokens/constants.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/utils/getDateOfExpiration.js +3 -2
- package/dist/admin/admin/src/pages/Settings/components/Tokens/utils/getDateOfExpiration.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/AdminTokens/EditView/EditViewPage.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/AdminTokens/EditView/EditViewPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/AdminTokens/EditView/components/AdminPermissions.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/AdminTokens/EditView/components/AdminPermissions.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/AdminTokens/ListView.js +4 -3
- package/dist/admin/admin/src/pages/Settings/pages/AdminTokens/ListView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/EditViewPage.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/EditViewPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.js +7 -2
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.js +5 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.js +6 -2
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js +4 -3
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +4 -2
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +1 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.js +7 -3
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js +11 -3
- package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.mjs +7 -0
- package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.js +11 -4
- package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.mjs +7 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.js +44 -6
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.mjs +34 -0
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsModal.js +13 -7
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsModal.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js +15 -9
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/GlobalActions.js +9 -5
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/GlobalActions.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/Permissions.js +71 -27
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/Permissions.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/Permissions.mjs +38 -2
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/Permissions.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.js +10 -6
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/difference.js +9 -3
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/difference.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/forms.js +26 -4
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/forms.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/forms.mjs +18 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/forms.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/layouts.js +6 -2
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/layouts.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/localePermissionValidation.js +59 -0
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/localePermissionValidation.js.map +1 -0
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/localePermissionValidation.mjs +52 -0
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/localePermissionValidation.mjs.map +1 -0
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateConditionsToFalse.js +8 -3
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateConditionsToFalse.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.js +4 -3
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.js +4 -3
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.js +9 -5
- package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.js +4 -3
- package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/NewUserForm.js +4 -3
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/NewUserForm.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/EditPage.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/EditPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.js +3 -2
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.js +4 -3
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.js.map +1 -1
- package/dist/admin/admin/src/pages/UseCasePage.js +3 -2
- package/dist/admin/admin/src/pages/UseCasePage.js.map +1 -1
- package/dist/admin/admin/src/router.js +9 -0
- package/dist/admin/admin/src/router.js.map +1 -1
- package/dist/admin/admin/src/router.mjs +9 -0
- package/dist/admin/admin/src/router.mjs.map +1 -1
- package/dist/admin/admin/src/services/auth.js +43 -2
- package/dist/admin/admin/src/services/auth.js.map +1 -1
- package/dist/admin/admin/src/services/auth.mjs +41 -3
- package/dist/admin/admin/src/services/auth.mjs.map +1 -1
- package/dist/admin/admin/src/translations/en.json.js +22 -0
- package/dist/admin/admin/src/translations/en.json.js.map +1 -1
- package/dist/admin/admin/src/translations/en.json.mjs +22 -0
- package/dist/admin/admin/src/translations/en.json.mjs.map +1 -1
- package/dist/admin/admin/src/translations/ja.json.js +748 -265
- package/dist/admin/admin/src/translations/ja.json.js.map +1 -1
- package/dist/admin/admin/src/translations/ja.json.mjs +745 -266
- package/dist/admin/admin/src/translations/ja.json.mjs.map +1 -1
- package/dist/admin/admin/src/translations/languageNativeNames.js +1 -0
- package/dist/admin/admin/src/translations/languageNativeNames.js.map +1 -1
- package/dist/admin/admin/src/translations/languageNativeNames.mjs +1 -0
- package/dist/admin/admin/src/translations/languageNativeNames.mjs.map +1 -1
- package/dist/admin/admin/src/utils/getFetchClient.js +7 -2
- package/dist/admin/admin/src/utils/getFetchClient.js.map +1 -1
- package/dist/admin/admin/src/utils/locales.js +3 -2
- package/dist/admin/admin/src/utils/locales.js.map +1 -1
- package/dist/admin/admin/src/utils/objects.js +9 -4
- package/dist/admin/admin/src/utils/objects.js.map +1 -1
- package/dist/admin/admin/src/utils/retryDynamicImport.js +85 -0
- package/dist/admin/admin/src/utils/retryDynamicImport.js.map +1 -0
- package/dist/admin/admin/src/utils/retryDynamicImport.mjs +80 -0
- package/dist/admin/admin/src/utils/retryDynamicImport.mjs.map +1 -0
- package/dist/admin/admin/src/utils/rulesEngine.js +5 -1
- package/dist/admin/admin/src/utils/rulesEngine.js.map +1 -1
- package/dist/admin/admin/src/utils/urls.js +5 -1
- package/dist/admin/admin/src/utils/urls.js.map +1 -1
- package/dist/admin/admin/tests/server.js +25 -0
- package/dist/admin/admin/tests/server.js.map +1 -1
- package/dist/admin/admin/tests/server.mjs +25 -0
- package/dist/admin/admin/tests/server.mjs.map +1 -1
- package/dist/admin/admin/tests/utils.js +3 -2
- package/dist/admin/admin/tests/utils.js.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.js +7 -3
- package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.js.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useLicenseLimits.js +3 -2
- package/dist/admin/ee/admin/src/hooks/useLicenseLimits.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthResponse.js +3 -2
- package/dist/admin/ee/admin/src/pages/AuthResponse.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.js +3 -2
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useAuditLogsData.js +3 -2
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useAuditLogsData.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useFormatTimeStamp.js +5 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/hooks/useFormatTimeStamp.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js +3 -2
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.js +7 -3
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.js.map +1 -1
- package/dist/admin/index.js +2 -0
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +1 -0
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/src/StrapiApp.d.ts +11 -5
- package/dist/admin/src/components/FormInputs/Boolean.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/Checkbox.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/DateTime.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/Email.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/Enumeration.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/Number.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/Password.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/Renderer.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/String.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/Textarea.d.ts +0 -1
- package/dist/admin/src/components/FormInputs/Time.d.ts +0 -1
- package/dist/admin/src/components/GuidedTour/GuidedTourProvider.d.ts +0 -1
- package/dist/admin/src/components/LazyOutlet.d.ts +20 -0
- package/dist/admin/src/components/MainNav/MainNav.d.ts +1 -1
- package/dist/admin/src/components/MainNav/NavUser.d.ts +0 -1
- package/dist/admin/src/components/SubNav.d.ts +5 -6
- package/dist/admin/src/core/apis/Plugin.d.ts +1 -1
- package/dist/admin/src/core/apis/Widgets.d.ts +0 -1
- package/dist/admin/src/core/apis/router.d.ts +2 -3
- package/dist/admin/src/core/store/configure.d.ts +2 -2
- package/dist/admin/src/core/utils/createHook.d.ts +4 -4
- package/dist/admin/src/features/AppInfo.d.ts +1 -2
- package/dist/admin/src/features/StrapiApp.d.ts +1 -2
- package/dist/admin/src/hooks/useAPIErrorHandler.d.ts +1 -1
- package/dist/admin/src/hooks/useAdminRoles.d.ts +2 -2
- package/dist/admin/src/hooks/useFetchClient.d.ts +1 -1
- package/dist/admin/src/hooks/useIdleSessionLogout.d.ts +66 -12
- package/dist/admin/src/hooks/usePersistentState.d.ts +0 -1
- package/dist/admin/src/hooks/useQueryParams.d.ts +1 -1
- package/dist/admin/src/hooks/useThrottledCallback.d.ts +0 -1
- package/dist/admin/src/index.d.ts +1 -0
- package/dist/admin/src/layouts/UnauthenticatedLayout.d.ts +2 -2
- package/dist/admin/src/pages/SessionsPage.d.ts +2 -0
- package/dist/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.d.ts +2 -3
- package/dist/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.d.ts +2 -2
- package/dist/admin/src/pages/Settings/pages/Roles/components/HiddenAction.d.ts +0 -1
- package/dist/admin/src/pages/Settings/pages/Roles/components/Permissions.d.ts +2 -0
- package/dist/admin/src/pages/Settings/pages/Roles/utils/forms.d.ts +1 -1
- package/dist/admin/src/pages/Settings/pages/Roles/utils/localePermissionValidation.d.ts +5 -0
- package/dist/admin/src/pages/Settings/pages/Roles/utils/permissions.d.ts +3 -1
- package/dist/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.d.ts +8 -8
- package/dist/admin/src/reducer.d.ts +1 -1
- package/dist/admin/src/services/admin.d.ts +2 -2
- package/dist/admin/src/services/api.d.ts +1 -1
- package/dist/admin/src/services/apiTokens.d.ts +1 -1
- package/dist/admin/src/services/auth.d.ts +29 -27
- package/dist/admin/src/services/contentApi.d.ts +1 -1
- package/dist/admin/src/services/users.d.ts +7 -7
- package/dist/admin/src/services/webhooks.d.ts +2 -2
- package/dist/admin/src/translations/languageNativeNames.d.ts +1 -0
- package/dist/admin/src/utils/locales.d.ts +0 -1
- package/dist/admin/src/utils/retryDynamicImport.d.ts +19 -0
- package/dist/admin/src/utils/shims.d.ts +1 -1
- package/dist/admin/tests/store.d.ts +4 -4
- package/dist/admin/tests/utils.d.ts +5 -5
- package/dist/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.d.ts +1 -1
- package/dist/ee/admin/src/services/ai.d.ts +2 -2
- package/dist/ee/server/src/audit-logs/services/audit-logs.d.ts +1 -1
- package/dist/ee/server/src/audit-logs/services/audit-logs.d.ts.map +1 -1
- package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts +3 -3
- package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts.map +1 -1
- package/dist/ee/server/src/audit-logs/validation/audit-logs.d.ts +2 -2
- package/dist/ee/server/src/audit-logs/validation/audit-logs.d.ts.map +1 -1
- package/dist/ee/server/src/bootstrap.d.ts.map +1 -1
- package/dist/ee/server/src/controllers/authentication-utils/utils.d.ts +30 -31
- package/dist/ee/server/src/controllers/authentication-utils/utils.d.ts.map +1 -1
- package/dist/ee/server/src/controllers/index.d.ts +1 -2
- package/dist/ee/server/src/controllers/index.d.ts.map +1 -1
- package/dist/ee/server/src/controllers/user.d.ts +1 -1
- package/dist/ee/server/src/destroy.d.ts.map +1 -1
- package/dist/ee/server/src/index.d.ts +2 -3
- package/dist/ee/server/src/index.d.ts.map +1 -1
- package/dist/ee/server/src/register.d.ts.map +1 -1
- package/dist/ee/server/src/routes/utils.d.ts.map +1 -1
- package/dist/ee/server/src/services/auth.d.ts.map +1 -1
- package/dist/ee/server/src/services/index.d.ts +1 -1
- package/dist/ee/server/src/services/metrics.d.ts.map +1 -1
- package/dist/ee/server/src/services/passport/sso.d.ts.map +1 -1
- package/dist/ee/server/src/services/persist-tables.d.ts +1 -1
- package/dist/ee/server/src/services/persist-tables.d.ts.map +1 -1
- package/dist/ee/server/src/services/role.d.ts.map +1 -1
- package/dist/ee/server/src/services/user.d.ts.map +1 -1
- package/dist/ee/server/src/utils/index.d.ts.map +1 -1
- package/dist/ee/server/src/utils/sso-lock.d.ts.map +1 -1
- package/dist/ee/server/src/validation/authentication.d.ts +2 -2
- package/dist/ee/server/src/validation/role.d.ts +6 -6
- package/dist/ee/server/src/validation/role.d.ts.map +1 -1
- package/dist/ee/server/src/validation/user.d.ts.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.js +5 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.js.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication.js +5 -1
- package/dist/server/ee/server/src/controllers/authentication.js.map +1 -1
- package/dist/server/ee/server/src/controllers/user.js +6 -2
- package/dist/server/ee/server/src/controllers/user.js.map +1 -1
- package/dist/server/ee/server/src/services/auth.js +5 -1
- package/dist/server/ee/server/src/services/auth.js.map +1 -1
- package/dist/server/ee/server/src/services/user.js +8 -4
- package/dist/server/ee/server/src/services/user.js.map +1 -1
- package/dist/server/index.js +6 -2
- package/dist/server/index.js.map +1 -1
- package/dist/server/server/src/ai/services/ai.js +10 -4
- package/dist/server/server/src/ai/services/ai.js.map +1 -1
- package/dist/server/server/src/content-types/session.js +6 -0
- package/dist/server/server/src/content-types/session.js.map +1 -1
- package/dist/server/server/src/content-types/session.mjs +6 -0
- package/dist/server/server/src/content-types/session.mjs.map +1 -1
- package/dist/server/server/src/controllers/admin.js +9 -4
- package/dist/server/server/src/controllers/admin.js.map +1 -1
- package/dist/server/server/src/controllers/admin.mjs.map +1 -1
- package/dist/server/server/src/controllers/authenticated-session.js +61 -0
- package/dist/server/server/src/controllers/authenticated-session.js.map +1 -0
- package/dist/server/server/src/controllers/authenticated-session.mjs +59 -0
- package/dist/server/server/src/controllers/authenticated-session.mjs.map +1 -0
- package/dist/server/server/src/controllers/authentication.js +18 -6
- package/dist/server/server/src/controllers/authentication.js.map +1 -1
- package/dist/server/server/src/controllers/authentication.mjs +12 -5
- package/dist/server/server/src/controllers/authentication.mjs.map +1 -1
- package/dist/server/server/src/controllers/index.js +2 -0
- package/dist/server/server/src/controllers/index.js.map +1 -1
- package/dist/server/server/src/controllers/index.mjs +2 -0
- package/dist/server/server/src/controllers/index.mjs.map +1 -1
- package/dist/server/server/src/controllers/role.js +2 -4
- package/dist/server/server/src/controllers/role.js.map +1 -1
- package/dist/server/server/src/controllers/role.mjs +2 -4
- package/dist/server/server/src/controllers/role.mjs.map +1 -1
- package/dist/server/server/src/controllers/user.js +3 -2
- package/dist/server/server/src/controllers/user.js.map +1 -1
- package/dist/server/server/src/controllers/webhooks.js +7 -2
- package/dist/server/server/src/controllers/webhooks.js.map +1 -1
- package/dist/server/server/src/middlewares/rateLimit.js +7 -2
- package/dist/server/server/src/middlewares/rateLimit.js.map +1 -1
- package/dist/server/server/src/policies/hasPermissions.js +7 -3
- package/dist/server/server/src/policies/hasPermissions.js.map +1 -1
- package/dist/server/server/src/routes/serve-admin-panel.js +9 -4
- package/dist/server/server/src/routes/serve-admin-panel.js.map +1 -1
- package/dist/server/server/src/routes/serve-admin-panel.mjs +1 -1
- package/dist/server/server/src/routes/serve-admin-panel.mjs.map +1 -1
- package/dist/server/server/src/routes/users.js +12 -26
- package/dist/server/server/src/routes/users.js.map +1 -1
- package/dist/server/server/src/routes/users.mjs +12 -26
- package/dist/server/server/src/routes/users.mjs.map +1 -1
- package/dist/server/server/src/services/api-token.js +7 -3
- package/dist/server/server/src/services/api-token.js.map +1 -1
- package/dist/server/server/src/services/auth.js +8 -3
- package/dist/server/server/src/services/auth.js.map +1 -1
- package/dist/server/server/src/services/content-type.js +6 -2
- package/dist/server/server/src/services/content-type.js.map +1 -1
- package/dist/server/server/src/services/encryption.js +8 -4
- package/dist/server/server/src/services/encryption.js.map +1 -1
- package/dist/server/server/src/services/passport.js +6 -2
- package/dist/server/server/src/services/passport.js.map +1 -1
- package/dist/server/server/src/services/permission/engine.js +5 -1
- package/dist/server/server/src/services/permission/engine.js.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/index.js +5 -1
- package/dist/server/server/src/services/permission/permissions-manager/index.js.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/query-builders.js +14 -10
- package/dist/server/server/src/services/permission/permissions-manager/query-builders.js.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/sanitize.js +0 -2
- package/dist/server/server/src/services/permission/permissions-manager/sanitize.js.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs +0 -2
- package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs.map +1 -1
- package/dist/server/server/src/services/permission/queries.js +5 -1
- package/dist/server/server/src/services/permission/queries.js.map +1 -1
- package/dist/server/server/src/services/project-settings.js +6 -2
- package/dist/server/server/src/services/project-settings.js.map +1 -1
- package/dist/server/server/src/services/role.js +10 -5
- package/dist/server/server/src/services/role.js.map +1 -1
- package/dist/server/server/src/services/role.mjs +2 -1
- package/dist/server/server/src/services/role.mjs.map +1 -1
- package/dist/server/server/src/services/token.js +7 -2
- package/dist/server/server/src/services/token.js.map +1 -1
- package/dist/server/server/src/services/transfer/permission.js +5 -1
- package/dist/server/server/src/services/transfer/permission.js.map +1 -1
- package/dist/server/server/src/services/transfer/token.js +10 -5
- package/dist/server/server/src/services/transfer/token.js.map +1 -1
- package/dist/server/server/src/services/user.js +10 -6
- package/dist/server/server/src/services/user.js.map +1 -1
- package/dist/server/server/src/strategies/admin.js +4 -0
- package/dist/server/server/src/strategies/admin.js.map +1 -1
- package/dist/server/server/src/strategies/admin.mjs +4 -0
- package/dist/server/server/src/strategies/admin.mjs.map +1 -1
- package/dist/server/server/src/validation/common-functions/check-fields-are-correctly-nested.js +5 -1
- package/dist/server/server/src/validation/common-functions/check-fields-are-correctly-nested.js.map +1 -1
- package/dist/server/server/src/validation/common-functions/check-fields-dont-have-duplicates.js +6 -2
- package/dist/server/server/src/validation/common-functions/check-fields-dont-have-duplicates.js.map +1 -1
- package/dist/server/server/src/validation/common-validators.js +6 -2
- package/dist/server/server/src/validation/common-validators.js.map +1 -1
- package/dist/server/server/src/validation/policies/hasPermissions.js +6 -2
- package/dist/server/server/src/validation/policies/hasPermissions.js.map +1 -1
- package/dist/server/shared/utils/session-auth.js +5 -1
- package/dist/server/shared/utils/session-auth.js.map +1 -1
- package/dist/server/src/ai/controllers/ai.d.ts +3 -3
- package/dist/server/src/ai/services/ai.d.ts.map +1 -1
- package/dist/server/src/bootstrap.d.ts.map +1 -1
- package/dist/server/src/config/admin-conditions.d.ts +2 -2
- package/dist/server/src/config/admin-conditions.d.ts.map +1 -1
- package/dist/server/src/content-types/index.d.ts +6 -0
- package/dist/server/src/content-types/index.d.ts.map +1 -1
- package/dist/server/src/content-types/session.d.ts +6 -0
- package/dist/server/src/content-types/session.d.ts.map +1 -1
- package/dist/server/src/controllers/admin-token.d.ts +5 -5
- package/dist/server/src/controllers/api-token.d.ts +1 -1
- package/dist/server/src/controllers/authenticated-session.d.ts +8 -0
- package/dist/server/src/controllers/authenticated-session.d.ts.map +1 -0
- package/dist/server/src/controllers/authenticated-user.d.ts +1 -1
- package/dist/server/src/controllers/authentication.d.ts +4 -4
- package/dist/server/src/controllers/authentication.d.ts.map +1 -1
- package/dist/server/src/controllers/formatters/conditions.d.ts +0 -1
- package/dist/server/src/controllers/formatters/conditions.d.ts.map +1 -1
- package/dist/server/src/controllers/formatters/format-actions-by-sections.d.ts.map +1 -1
- package/dist/server/src/controllers/homepage.d.ts +2 -2
- package/dist/server/src/controllers/homepage.d.ts.map +1 -1
- package/dist/server/src/controllers/index.d.ts +33 -43
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/controllers/role.d.ts +4 -4
- package/dist/server/src/controllers/transfer/runner.d.ts +4 -4
- package/dist/server/src/controllers/transfer/runner.d.ts.map +1 -1
- package/dist/server/src/controllers/transfer/token.d.ts +1 -1
- package/dist/server/src/controllers/user.d.ts +2 -2
- package/dist/server/src/controllers/webhooks.d.ts +4 -4
- package/dist/server/src/domain/action/index.d.ts +4 -65
- package/dist/server/src/domain/action/index.d.ts.map +1 -1
- package/dist/server/src/domain/action/provider.d.ts +30 -3
- package/dist/server/src/domain/action/provider.d.ts.map +1 -1
- package/dist/server/src/domain/condition/index.d.ts.map +1 -1
- package/dist/server/src/domain/condition/provider.d.ts +19 -2
- package/dist/server/src/domain/condition/provider.d.ts.map +1 -1
- package/dist/server/src/domain/permission/index.d.ts +0 -1
- package/dist/server/src/domain/permission/index.d.ts.map +1 -1
- package/dist/server/src/domain/user.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +51 -63
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/middlewares/data-transfer.d.ts.map +1 -1
- package/dist/server/src/middlewares/index.d.ts +0 -1
- package/dist/server/src/middlewares/index.d.ts.map +1 -1
- package/dist/server/src/middlewares/rateLimit.d.ts.map +1 -1
- package/dist/server/src/policies/hasPermissions.d.ts.map +1 -1
- package/dist/server/src/policies/index.d.ts.map +1 -1
- package/dist/server/src/policies/isAuthenticatedAdmin.d.ts.map +1 -1
- package/dist/server/src/policies/isTelemetryEnabled.d.ts.map +1 -1
- package/dist/server/src/register.d.ts.map +1 -1
- package/dist/server/src/routes/index.d.ts +0 -1
- package/dist/server/src/routes/index.d.ts.map +1 -1
- package/dist/server/src/routes/serve-admin-panel.d.ts.map +1 -1
- package/dist/server/src/routes/transfer.d.ts +0 -1
- package/dist/server/src/routes/transfer.d.ts.map +1 -1
- package/dist/server/src/routes/users.d.ts.map +1 -1
- package/dist/server/src/services/action.d.ts.map +1 -1
- package/dist/server/src/services/api-token.d.ts +5 -6
- package/dist/server/src/services/api-token.d.ts.map +1 -1
- package/dist/server/src/services/auth.d.ts.map +1 -1
- package/dist/server/src/services/condition.d.ts.map +1 -1
- package/dist/server/src/services/content-type.d.ts.map +1 -1
- package/dist/server/src/services/encryption.d.ts.map +1 -1
- package/dist/server/src/services/homepage.d.ts.map +1 -1
- package/dist/server/src/services/index.d.ts +12 -21
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/server/src/services/metrics.d.ts.map +1 -1
- package/dist/server/src/services/passport/local-strategy.d.ts.map +1 -1
- package/dist/server/src/services/passport.d.ts +0 -1
- package/dist/server/src/services/passport.d.ts.map +1 -1
- package/dist/server/src/services/permission/engine.d.ts +1 -2
- package/dist/server/src/services/permission/engine.d.ts.map +1 -1
- package/dist/server/src/services/permission/permissions-manager/index.d.ts +5 -5
- package/dist/server/src/services/permission/permissions-manager/index.d.ts.map +1 -1
- package/dist/server/src/services/permission/permissions-manager/permission-fields.d.ts.map +1 -1
- package/dist/server/src/services/permission/permissions-manager/query-builders.d.ts.map +1 -1
- package/dist/server/src/services/permission/permissions-manager/sanitize.d.ts +3 -3
- package/dist/server/src/services/permission/permissions-manager/sanitize.d.ts.map +1 -1
- package/dist/server/src/services/permission/permissions-manager/validate.d.ts.map +1 -1
- package/dist/server/src/services/permission/queries.d.ts.map +1 -1
- package/dist/server/src/services/permission/sections-builder/builder.d.ts +4 -4
- package/dist/server/src/services/permission/sections-builder/builder.d.ts.map +1 -1
- package/dist/server/src/services/permission/sections-builder/handlers.d.ts.map +1 -1
- package/dist/server/src/services/permission/sections-builder/index.d.ts +4 -4
- package/dist/server/src/services/permission/sections-builder/section.d.ts.map +1 -1
- package/dist/server/src/services/permission/sections-builder/utils.d.ts +0 -1
- package/dist/server/src/services/permission/sections-builder/utils.d.ts.map +1 -1
- package/dist/server/src/services/permission.d.ts +13 -38
- package/dist/server/src/services/permission.d.ts.map +1 -1
- package/dist/server/src/services/project-settings.d.ts +2 -4
- package/dist/server/src/services/project-settings.d.ts.map +1 -1
- package/dist/server/src/services/role.d.ts +7 -1
- package/dist/server/src/services/role.d.ts.map +1 -1
- package/dist/server/src/services/token.d.ts +1 -1
- package/dist/server/src/services/token.d.ts.map +1 -1
- package/dist/server/src/services/transfer/token.d.ts +11 -11
- package/dist/server/src/services/transfer/token.d.ts.map +1 -1
- package/dist/server/src/services/user.d.ts +3 -3
- package/dist/server/src/services/user.d.ts.map +1 -1
- package/dist/server/src/strategies/admin-token.d.ts +4 -4
- package/dist/server/src/strategies/admin-token.d.ts.map +1 -1
- package/dist/server/src/strategies/admin.d.ts.map +1 -1
- package/dist/server/src/strategies/api-token-utils.d.ts.map +1 -1
- package/dist/server/src/strategies/content-api-token.d.ts.map +1 -1
- package/dist/server/src/strategies/data-transfer.d.ts.map +1 -1
- package/dist/server/src/utils/normalize-email.d.ts.map +1 -1
- package/dist/server/src/validation/action-provider.d.ts +2 -2
- package/dist/server/src/validation/action-provider.d.ts.map +1 -1
- package/dist/server/src/validation/admin-tokens.d.ts +2 -2
- package/dist/server/src/validation/api-tokens.d.ts +4 -4
- package/dist/server/src/validation/authentication/forgot-password.d.ts +1 -1
- package/dist/server/src/validation/authentication/login.d.ts +1 -1
- package/dist/server/src/validation/authentication/register.d.ts +6 -6
- package/dist/server/src/validation/authentication/register.d.ts.map +1 -1
- package/dist/server/src/validation/authentication/reset-password.d.ts +1 -1
- package/dist/server/src/validation/common-functions/check-fields-are-correctly-nested.d.ts.map +1 -1
- package/dist/server/src/validation/common-functions/check-fields-dont-have-duplicates.d.ts.map +1 -1
- package/dist/server/src/validation/common-validators.d.ts.map +1 -1
- package/dist/server/src/validation/permission.d.ts +6 -6
- package/dist/server/src/validation/permission.d.ts.map +1 -1
- package/dist/server/src/validation/policies/hasPermissions.d.ts +2 -2
- package/dist/server/src/validation/project-settings.d.ts +6 -6
- package/dist/server/src/validation/role.d.ts +8 -8
- package/dist/server/src/validation/role.d.ts.map +1 -1
- package/dist/server/src/validation/transfer/token.d.ts +4 -4
- package/dist/server/src/validation/user.d.ts +8 -8
- package/dist/shared/contracts/permissions.d.ts +1 -0
- package/dist/shared/contracts/permissions.d.ts.map +1 -1
- package/dist/shared/contracts/sessions.d.ts +62 -0
- package/dist/shared/contracts/sessions.d.ts.map +1 -0
- package/dist/shared/contracts/shared.d.ts +1 -1
- package/dist/shared/contracts/shared.d.ts.map +1 -1
- package/dist/shared/utils/session-auth.d.ts +1 -1
- package/dist/shared/utils/session-auth.d.ts.map +1 -1
- package/package.json +11 -11
|
@@ -5,20 +5,25 @@ var omit = require('lodash/omit');
|
|
|
5
5
|
var objects = require('../../../../../utils/objects.js');
|
|
6
6
|
var createArrayOfValues = require('./createArrayOfValues.js');
|
|
7
7
|
|
|
8
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
|
|
10
|
+
var has__default = /*#__PURE__*/_interopDefault(has);
|
|
11
|
+
var omit__default = /*#__PURE__*/_interopDefault(omit);
|
|
12
|
+
|
|
8
13
|
/**
|
|
9
14
|
* Changes all the conditions leaf when the properties are all falsy
|
|
10
15
|
*/ const updateConditionsToFalse = (obj)=>{
|
|
11
16
|
return Object.keys(obj).reduce((acc, current)=>{
|
|
12
17
|
// @ts-expect-error – TODO: type better
|
|
13
18
|
const currentValue = obj[current];
|
|
14
|
-
if (objects.isObject(currentValue) && !
|
|
19
|
+
if (objects.isObject(currentValue) && !has__default.default(currentValue, 'conditions')) {
|
|
15
20
|
return {
|
|
16
21
|
...acc,
|
|
17
22
|
[current]: updateConditionsToFalse(currentValue)
|
|
18
23
|
};
|
|
19
24
|
}
|
|
20
|
-
if (objects.isObject(currentValue) &&
|
|
21
|
-
const isActionEnabled = createArrayOfValues.createArrayOfValues(
|
|
25
|
+
if (objects.isObject(currentValue) && has__default.default(currentValue, 'conditions')) {
|
|
26
|
+
const isActionEnabled = createArrayOfValues.createArrayOfValues(omit__default.default(currentValue, 'conditions')).some((val)=>val);
|
|
22
27
|
if (!isActionEnabled) {
|
|
23
28
|
// @ts-expect-error – TODO: type better
|
|
24
29
|
const updatedConditions = Object.keys(currentValue.conditions).reduce((acc1, current)=>{
|
package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateConditionsToFalse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateConditionsToFalse.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/updateConditionsToFalse.ts"],"sourcesContent":["import has from 'lodash/has';\nimport omit from 'lodash/omit';\n\nimport { isObject } from '../../../../../utils/objects';\n\nimport { createArrayOfValues } from './createArrayOfValues';\n/**\n * Changes all the conditions leaf when the properties are all falsy\n */\nconst updateConditionsToFalse = (obj: object): object => {\n return Object.keys(obj).reduce((acc, current) => {\n // @ts-expect-error – TODO: type better\n const currentValue = obj[current];\n\n if (isObject(currentValue) && !has(currentValue, 'conditions')) {\n return { ...acc, [current]: updateConditionsToFalse(currentValue) };\n }\n\n if (isObject(currentValue) && has(currentValue, 'conditions')) {\n const isActionEnabled = createArrayOfValues(omit(currentValue, 'conditions')).some(\n (val) => val\n );\n\n if (!isActionEnabled) {\n // @ts-expect-error – TODO: type better\n const updatedConditions = Object.keys(currentValue.conditions).reduce((acc1, current) => {\n // @ts-expect-error – TODO: type better\n acc1[current] = false;\n\n return acc1;\n }, {});\n\n return { ...acc, [current]: { ...currentValue, conditions: updatedConditions } };\n }\n }\n\n // @ts-expect-error – TODO: type better\n acc[current] = currentValue;\n\n return acc;\n }, {});\n};\n\nexport { updateConditionsToFalse };\n"],"names":["updateConditionsToFalse","obj","Object","keys","reduce","acc","current","currentValue","isObject","has","isActionEnabled","createArrayOfValues","omit","some","val","updatedConditions","conditions","acc1"],"mappings":"
|
|
1
|
+
{"version":3,"file":"updateConditionsToFalse.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/utils/updateConditionsToFalse.ts"],"sourcesContent":["import has from 'lodash/has';\nimport omit from 'lodash/omit';\n\nimport { isObject } from '../../../../../utils/objects';\n\nimport { createArrayOfValues } from './createArrayOfValues';\n/**\n * Changes all the conditions leaf when the properties are all falsy\n */\nconst updateConditionsToFalse = (obj: object): object => {\n return Object.keys(obj).reduce((acc, current) => {\n // @ts-expect-error – TODO: type better\n const currentValue = obj[current];\n\n if (isObject(currentValue) && !has(currentValue, 'conditions')) {\n return { ...acc, [current]: updateConditionsToFalse(currentValue) };\n }\n\n if (isObject(currentValue) && has(currentValue, 'conditions')) {\n const isActionEnabled = createArrayOfValues(omit(currentValue, 'conditions')).some(\n (val) => val\n );\n\n if (!isActionEnabled) {\n // @ts-expect-error – TODO: type better\n const updatedConditions = Object.keys(currentValue.conditions).reduce((acc1, current) => {\n // @ts-expect-error – TODO: type better\n acc1[current] = false;\n\n return acc1;\n }, {});\n\n return { ...acc, [current]: { ...currentValue, conditions: updatedConditions } };\n }\n }\n\n // @ts-expect-error – TODO: type better\n acc[current] = currentValue;\n\n return acc;\n }, {});\n};\n\nexport { updateConditionsToFalse };\n"],"names":["updateConditionsToFalse","obj","Object","keys","reduce","acc","current","currentValue","isObject","has","isActionEnabled","createArrayOfValues","omit","some","val","updatedConditions","conditions","acc1"],"mappings":";;;;;;;;;;;;AAMA;;IAGA,MAAMA,0BAA0B,CAACC,GAAAA,GAAAA;AAC/B,IAAA,OAAOC,OAAOC,IAAI,CAACF,KAAKG,MAAM,CAAC,CAACC,GAAAA,EAAKC,OAAAA,GAAAA;;QAEnC,MAAMC,YAAAA,GAAeN,GAAG,CAACK,OAAAA,CAAQ;AAEjC,QAAA,IAAIE,gBAAAA,CAASD,YAAAA,CAAAA,IAAiB,CAACE,oBAAAA,CAAIF,cAAc,YAAA,CAAA,EAAe;YAC9D,OAAO;AAAE,gBAAA,GAAGF,GAAG;gBAAE,CAACC,OAAAA,GAAUN,uBAAAA,CAAwBO,YAAAA;AAAc,aAAA;AACpE,QAAA;AAEA,QAAA,IAAIC,gBAAAA,CAASD,YAAAA,CAAAA,IAAiBE,oBAAAA,CAAIF,YAAAA,EAAc,YAAA,CAAA,EAAe;YAC7D,MAAMG,eAAAA,GAAkBC,wCAAoBC,qBAAAA,CAAKL,YAAAA,EAAc,eAAeM,IAAI,CAChF,CAACC,GAAAA,GAAQA,GAAAA,CAAAA;AAGX,YAAA,IAAI,CAACJ,eAAAA,EAAiB;;gBAEpB,MAAMK,iBAAAA,GAAoBb,MAAAA,CAAOC,IAAI,CAACI,YAAAA,CAAaS,UAAU,CAAA,CAAEZ,MAAM,CAAC,CAACa,IAAAA,EAAMX,OAAAA,GAAAA;;oBAE3EW,IAAI,CAACX,QAAQ,GAAG,KAAA;oBAEhB,OAAOW,IAAAA;AACT,gBAAA,CAAA,EAAG,EAAC,CAAA;gBAEJ,OAAO;AAAE,oBAAA,GAAGZ,GAAG;AAAE,oBAAA,CAACC,UAAU;AAAE,wBAAA,GAAGC,YAAY;wBAAES,UAAAA,EAAYD;AAAkB;AAAE,iBAAA;AACjF,YAAA;AACF,QAAA;;QAGAV,GAAG,CAACC,QAAQ,GAAGC,YAAAA;QAEf,OAAOF,GAAAA;AACT,IAAA,CAAA,EAAG,EAAC,CAAA;AACN;;;;"}
|
|
@@ -25,7 +25,8 @@ var TokenDescription = require('../../components/Tokens/TokenDescription.js');
|
|
|
25
25
|
var TokenName = require('../../components/Tokens/TokenName.js');
|
|
26
26
|
var TokenTypeSelect = require('../../components/Tokens/TokenTypeSelect.js');
|
|
27
27
|
|
|
28
|
-
function
|
|
28
|
+
function _interopNamespace(e) {
|
|
29
|
+
if (e && e.__esModule) return e;
|
|
29
30
|
var n = Object.create(null);
|
|
30
31
|
if (e) {
|
|
31
32
|
Object.keys(e).forEach(function (k) {
|
|
@@ -42,8 +43,8 @@ function _interopNamespaceDefault(e) {
|
|
|
42
43
|
return Object.freeze(n);
|
|
43
44
|
}
|
|
44
45
|
|
|
45
|
-
var React__namespace = /*#__PURE__*/
|
|
46
|
-
var yup__namespace = /*#__PURE__*/
|
|
46
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
47
|
+
var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
|
|
47
48
|
|
|
48
49
|
const schema = yup__namespace.object().shape({
|
|
49
50
|
name: yup__namespace.string().max(100).required(translatedErrors.translatedErrors.required.id),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditView.js","sources":["../../../../../../../../admin/src/pages/Settings/pages/TransferTokens/EditView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Formik, Form, FormikErrors, FormikHelpers } from 'formik';\nimport { useIntl } from 'react-intl';\nimport { useLocation, useNavigate, useMatch } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport {\n useCreateTransferTokenMutation,\n useGetTransferTokenQuery,\n useUpdateTransferTokenMutation,\n} from '../../../../services/transferTokens';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\nimport { TRANSFER_TOKEN_TYPE } from '../../components/Tokens/constants';\nimport { FormHead } from '../../components/Tokens/FormHead';\nimport { LifeSpanInput } from '../../components/Tokens/LifeSpanInput';\nimport { TokenBox } from '../../components/Tokens/TokenBox';\nimport { TokenDescription } from '../../components/Tokens/TokenDescription';\nimport { TokenName } from '../../components/Tokens/TokenName';\nimport { TokenTypeSelect } from '../../components/Tokens/TokenTypeSelect';\n\nimport type {\n TransferToken,\n SanitizedTransferToken,\n} from '../../../../../../shared/contracts/transfer';\n\nconst schema = yup.object().shape({\n name: yup.string().max(100).required(translatedErrors.required.id),\n description: yup.string().nullable(),\n lifespan: yup.number().integer().min(0).nullable().defined(translatedErrors.required.id),\n permissions: yup.string().required(translatedErrors.required.id),\n});\n\n/* -------------------------------------------------------------------------------------------------\n * EditView\n * -----------------------------------------------------------------------------------------------*/\n\nconst EditView = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const navigate = useNavigate();\n const { state: locationState } = useLocation();\n const [transferToken, setTransferToken] = React.useState<\n TransferToken | SanitizedTransferToken | null\n >(\n locationState && 'accessKey' in locationState.transferToken\n ? {\n ...locationState.transferToken,\n }\n : null\n );\n const { trackUsage } = useTracking();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens']\n );\n const {\n allowedActions: { canCreate, canUpdate, canRegenerate },\n } = useRBAC(permissions);\n const match = useMatch('/settings/transfer-tokens/:id');\n\n const id = match?.params?.id;\n const isCreating = id === 'create';\n\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n React.useEffect(() => {\n trackUsage(isCreating ? 'didAddTokenFromList' : 'didEditTokenFromList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n }, [isCreating, trackUsage]);\n\n const { data, error } = useGetTransferTokenQuery(id!, {\n skip: isCreating || transferToken !== null || !id,\n });\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n React.useEffect(() => {\n if (data) {\n setTransferToken(data);\n }\n }, [data]);\n\n const [createToken] = useCreateTransferTokenMutation();\n const [updateToken] = useUpdateTransferTokenMutation();\n\n const handleSubmit = async (body: FormValues, formik: FormikHelpers<FormValues>) => {\n trackUsage(isCreating ? 'willCreateToken' : 'willEditToken', {\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n\n const permissions = body.permissions.split('-');\n\n const isPermissionsTransferPermission = (\n permission: string[]\n ): permission is Array<'push' | 'pull'> => {\n if (permission.length === 1) {\n return permission[0] === 'push' || permission[0] === 'pull';\n }\n\n return permission[0] === 'push' && permission[1] === 'pull';\n };\n\n // this type-guard is necessary to satisfy the type for `permissions` in the request body,\n // because String.split returns stringp[]\n if (isPermissionsTransferPermission(permissions)) {\n try {\n if (isCreating) {\n const res = await createToken({\n ...body,\n // lifespan must be \"null\" for unlimited (0 would mean instantly expired and isn't accepted)\n lifespan:\n body?.lifespan && body.lifespan !== '0'\n ? parseInt(body.lifespan.toString(), 10)\n : null,\n permissions,\n });\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n setTransferToken(res.data);\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'notification.success.transfertokencreated',\n defaultMessage: 'Transfer Token successfully created',\n }),\n });\n\n trackUsage('didCreateToken', {\n type: transferToken?.permissions,\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n\n navigate(`../transfer-tokens/${res.data.id.toString()}`, {\n replace: true,\n state: { transferToken: res.data },\n });\n } else {\n const res = await updateToken({\n id: id!,\n name: body.name,\n description: body.description,\n permissions,\n });\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n setTransferToken(res.data);\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'notification.success.transfertokenedited',\n defaultMessage: 'Transfer Token successfully edited',\n }),\n });\n\n trackUsage('didEditToken', {\n type: transferToken?.permissions,\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n }\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'Something went wrong',\n }),\n });\n }\n }\n };\n\n const canEditInputs = (canUpdate && !isCreating) || (canCreate && isCreating);\n const isLoading = !isCreating && !transferToken;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Transfer Tokens',\n }\n )}\n </Page.Title>\n <Formik\n validationSchema={schema}\n validateOnChange={false}\n initialValues={\n {\n name: transferToken?.name || '',\n description: transferToken?.description || '',\n lifespan: transferToken?.lifespan || null,\n /**\n * We need to cast the permissions to satisfy the type for `permissions`\n * in the request body incase we don't have a transferToken and instead\n * use an empty string.\n */\n permissions: (transferToken?.permissions.join('-') ?? '') as FormValues['permissions'],\n } satisfies FormValues\n }\n enableReinitialize\n onSubmit={(body, actions) => handleSubmit(body, actions)}\n >\n {({ errors, handleChange, isSubmitting, values }) => {\n return (\n <Form>\n <FormHead\n title={{\n id: 'Settings.transferTokens.createPage.title',\n defaultMessage: 'TokenCreate Transfer Token',\n }}\n token={transferToken}\n setToken={setTransferToken}\n canShowToken={false}\n canEditInputs={canEditInputs}\n canRegenerate={canRegenerate}\n isSubmitting={isSubmitting}\n regenerateUrl=\"/admin/transfer/tokens/\"\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n {transferToken &&\n Boolean(transferToken?.name) &&\n 'accessKey' in transferToken && (\n <TokenBox token={transferToken.accessKey} tokenType={TRANSFER_TOKEN_TYPE} />\n )}\n <FormTransferTokenContainer\n errors={errors}\n onChange={handleChange}\n canEditInputs={canEditInputs}\n isCreating={isCreating}\n values={values}\n transferToken={transferToken}\n />\n </Flex>\n </Layouts.Content>\n </Form>\n );\n }}\n </Formik>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedEditView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedEditView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].read\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * FormTransferTokenContainer\n * -----------------------------------------------------------------------------------------------*/\n\ninterface FormValues extends Pick<TransferToken, 'description' | 'name' | 'lifespan'> {\n permissions: Extract<TransferToken['permissions'][number], string>;\n}\n\ninterface FormTransferTokenContainerProps {\n errors: FormikErrors<FormValues>;\n onChange: ({ target: { name, value } }: { target: { name: string; value: string } }) => void;\n canEditInputs: boolean;\n values: FormValues;\n isCreating: boolean;\n transferToken: Partial<TransferToken> | null;\n}\n\nconst FormTransferTokenContainer = ({\n errors = {},\n onChange,\n canEditInputs,\n isCreating,\n values,\n transferToken = {},\n}: FormTransferTokenContainerProps) => {\n const { formatMessage } = useIntl();\n\n const typeOptions = [\n {\n value: 'push',\n label: {\n id: 'Settings.transferTokens.types.push',\n defaultMessage: 'Push',\n },\n },\n {\n value: 'pull',\n label: {\n id: 'Settings.transferTokens.types.pull',\n defaultMessage: 'Pull',\n },\n },\n {\n value: 'push-pull',\n label: {\n id: 'Settings.transferTokens.types.push-pull',\n defaultMessage: 'Full Access',\n },\n },\n ];\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n <Grid.Root gap={5}>\n <Grid.Item key=\"name\" col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <TokenName\n error={errors['name']}\n value={values['name']}\n canEditInputs={canEditInputs}\n onChange={onChange}\n />\n </Grid.Item>\n <Grid.Item key=\"description\" col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <TokenDescription\n error={errors['description']}\n value={values['description']}\n canEditInputs={canEditInputs}\n onChange={onChange}\n />\n </Grid.Item>\n <Grid.Item key=\"lifespan\" col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <LifeSpanInput\n isCreating={isCreating}\n error={errors['lifespan']}\n value={values['lifespan']}\n onChange={onChange}\n token={transferToken}\n />\n </Grid.Item>\n <Grid.Item key=\"permissions\" col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <TokenTypeSelect\n name=\"permissions\"\n value={values['permissions']}\n error={errors['permissions']}\n label={{\n id: 'Settings.tokens.form.type',\n defaultMessage: 'Token type',\n }}\n // @ts-expect-error – DS Select passes number | string, will be fixed in V2\n onChange={(value: string) => {\n onChange({ target: { name: 'permissions', value } });\n }}\n options={typeOptions}\n canEditInputs={canEditInputs}\n />\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n );\n};\n\nexport { EditView, ProtectedEditView };\n"],"names":["schema","yup","object","shape","name","string","max","required","translatedErrors","id","description","nullable","lifespan","number","integer","min","defined","permissions","EditView","formatMessage","useIntl","toggleNotification","useNotification","navigate","useNavigate","state","locationState","useLocation","transferToken","setTransferToken","React","useState","trackUsage","useTracking","useTypedSelector","admin_app","settings","allowedActions","canCreate","canUpdate","canRegenerate","useRBAC","match","useMatch","params","isCreating","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","useEffect","tokenType","TRANSFER_TOKEN_TYPE","data","error","useGetTransferTokenQuery","skip","type","message","createToken","useCreateTransferTokenMutation","updateToken","useUpdateTransferTokenMutation","handleSubmit","body","formik","split","isPermissionsTransferPermission","permission","length","res","parseInt","toString","isBaseQueryError","setErrors","defaultMessage","replace","err","canEditInputs","isLoading","_jsx","Page","Loading","_jsxs","Main","Title","Formik","validationSchema","validateOnChange","initialValues","join","enableReinitialize","onSubmit","actions","errors","handleChange","isSubmitting","values","Form","FormHead","title","token","setToken","canShowToken","regenerateUrl","Layouts","Content","Flex","direction","alignItems","gap","Boolean","TokenBox","accessKey","FormTransferTokenContainer","onChange","ProtectedEditView","read","Protect","typeOptions","value","label","Box","background","hasRadius","shadow","paddingTop","paddingBottom","paddingLeft","paddingRight","Typography","variant","tag","Grid","Root","Item","col","xs","TokenName","TokenDescription","LifeSpanInput","TokenTypeSelect","target","options"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EditView.js","sources":["../../../../../../../../admin/src/pages/Settings/pages/TransferTokens/EditView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Formik, Form, FormikErrors, FormikHelpers } from 'formik';\nimport { useIntl } from 'react-intl';\nimport { useLocation, useNavigate, useMatch } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport {\n useCreateTransferTokenMutation,\n useGetTransferTokenQuery,\n useUpdateTransferTokenMutation,\n} from '../../../../services/transferTokens';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\nimport { TRANSFER_TOKEN_TYPE } from '../../components/Tokens/constants';\nimport { FormHead } from '../../components/Tokens/FormHead';\nimport { LifeSpanInput } from '../../components/Tokens/LifeSpanInput';\nimport { TokenBox } from '../../components/Tokens/TokenBox';\nimport { TokenDescription } from '../../components/Tokens/TokenDescription';\nimport { TokenName } from '../../components/Tokens/TokenName';\nimport { TokenTypeSelect } from '../../components/Tokens/TokenTypeSelect';\n\nimport type {\n TransferToken,\n SanitizedTransferToken,\n} from '../../../../../../shared/contracts/transfer';\n\nconst schema = yup.object().shape({\n name: yup.string().max(100).required(translatedErrors.required.id),\n description: yup.string().nullable(),\n lifespan: yup.number().integer().min(0).nullable().defined(translatedErrors.required.id),\n permissions: yup.string().required(translatedErrors.required.id),\n});\n\n/* -------------------------------------------------------------------------------------------------\n * EditView\n * -----------------------------------------------------------------------------------------------*/\n\nconst EditView = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const navigate = useNavigate();\n const { state: locationState } = useLocation();\n const [transferToken, setTransferToken] = React.useState<\n TransferToken | SanitizedTransferToken | null\n >(\n locationState && 'accessKey' in locationState.transferToken\n ? {\n ...locationState.transferToken,\n }\n : null\n );\n const { trackUsage } = useTracking();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens']\n );\n const {\n allowedActions: { canCreate, canUpdate, canRegenerate },\n } = useRBAC(permissions);\n const match = useMatch('/settings/transfer-tokens/:id');\n\n const id = match?.params?.id;\n const isCreating = id === 'create';\n\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n React.useEffect(() => {\n trackUsage(isCreating ? 'didAddTokenFromList' : 'didEditTokenFromList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n }, [isCreating, trackUsage]);\n\n const { data, error } = useGetTransferTokenQuery(id!, {\n skip: isCreating || transferToken !== null || !id,\n });\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n React.useEffect(() => {\n if (data) {\n setTransferToken(data);\n }\n }, [data]);\n\n const [createToken] = useCreateTransferTokenMutation();\n const [updateToken] = useUpdateTransferTokenMutation();\n\n const handleSubmit = async (body: FormValues, formik: FormikHelpers<FormValues>) => {\n trackUsage(isCreating ? 'willCreateToken' : 'willEditToken', {\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n\n const permissions = body.permissions.split('-');\n\n const isPermissionsTransferPermission = (\n permission: string[]\n ): permission is Array<'push' | 'pull'> => {\n if (permission.length === 1) {\n return permission[0] === 'push' || permission[0] === 'pull';\n }\n\n return permission[0] === 'push' && permission[1] === 'pull';\n };\n\n // this type-guard is necessary to satisfy the type for `permissions` in the request body,\n // because String.split returns stringp[]\n if (isPermissionsTransferPermission(permissions)) {\n try {\n if (isCreating) {\n const res = await createToken({\n ...body,\n // lifespan must be \"null\" for unlimited (0 would mean instantly expired and isn't accepted)\n lifespan:\n body?.lifespan && body.lifespan !== '0'\n ? parseInt(body.lifespan.toString(), 10)\n : null,\n permissions,\n });\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n setTransferToken(res.data);\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'notification.success.transfertokencreated',\n defaultMessage: 'Transfer Token successfully created',\n }),\n });\n\n trackUsage('didCreateToken', {\n type: transferToken?.permissions,\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n\n navigate(`../transfer-tokens/${res.data.id.toString()}`, {\n replace: true,\n state: { transferToken: res.data },\n });\n } else {\n const res = await updateToken({\n id: id!,\n name: body.name,\n description: body.description,\n permissions,\n });\n\n if ('error' in res) {\n if (isBaseQueryError(res.error) && res.error.name === 'ValidationError') {\n formik.setErrors(formatValidationErrors(res.error));\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n\n return;\n }\n\n setTransferToken(res.data);\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'notification.success.transfertokenedited',\n defaultMessage: 'Transfer Token successfully edited',\n }),\n });\n\n trackUsage('didEditToken', {\n type: transferToken?.permissions,\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n }\n } catch (err) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'Something went wrong',\n }),\n });\n }\n }\n };\n\n const canEditInputs = (canUpdate && !isCreating) || (canCreate && isCreating);\n const isLoading = !isCreating && !transferToken;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Transfer Tokens',\n }\n )}\n </Page.Title>\n <Formik\n validationSchema={schema}\n validateOnChange={false}\n initialValues={\n {\n name: transferToken?.name || '',\n description: transferToken?.description || '',\n lifespan: transferToken?.lifespan || null,\n /**\n * We need to cast the permissions to satisfy the type for `permissions`\n * in the request body incase we don't have a transferToken and instead\n * use an empty string.\n */\n permissions: (transferToken?.permissions.join('-') ?? '') as FormValues['permissions'],\n } satisfies FormValues\n }\n enableReinitialize\n onSubmit={(body, actions) => handleSubmit(body, actions)}\n >\n {({ errors, handleChange, isSubmitting, values }) => {\n return (\n <Form>\n <FormHead\n title={{\n id: 'Settings.transferTokens.createPage.title',\n defaultMessage: 'TokenCreate Transfer Token',\n }}\n token={transferToken}\n setToken={setTransferToken}\n canShowToken={false}\n canEditInputs={canEditInputs}\n canRegenerate={canRegenerate}\n isSubmitting={isSubmitting}\n regenerateUrl=\"/admin/transfer/tokens/\"\n />\n <Layouts.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n {transferToken &&\n Boolean(transferToken?.name) &&\n 'accessKey' in transferToken && (\n <TokenBox token={transferToken.accessKey} tokenType={TRANSFER_TOKEN_TYPE} />\n )}\n <FormTransferTokenContainer\n errors={errors}\n onChange={handleChange}\n canEditInputs={canEditInputs}\n isCreating={isCreating}\n values={values}\n transferToken={transferToken}\n />\n </Flex>\n </Layouts.Content>\n </Form>\n );\n }}\n </Formik>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedEditView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedEditView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].read\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <EditView />\n </Page.Protect>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * FormTransferTokenContainer\n * -----------------------------------------------------------------------------------------------*/\n\ninterface FormValues extends Pick<TransferToken, 'description' | 'name' | 'lifespan'> {\n permissions: Extract<TransferToken['permissions'][number], string>;\n}\n\ninterface FormTransferTokenContainerProps {\n errors: FormikErrors<FormValues>;\n onChange: ({ target: { name, value } }: { target: { name: string; value: string } }) => void;\n canEditInputs: boolean;\n values: FormValues;\n isCreating: boolean;\n transferToken: Partial<TransferToken> | null;\n}\n\nconst FormTransferTokenContainer = ({\n errors = {},\n onChange,\n canEditInputs,\n isCreating,\n values,\n transferToken = {},\n}: FormTransferTokenContainerProps) => {\n const { formatMessage } = useIntl();\n\n const typeOptions = [\n {\n value: 'push',\n label: {\n id: 'Settings.transferTokens.types.push',\n defaultMessage: 'Push',\n },\n },\n {\n value: 'pull',\n label: {\n id: 'Settings.transferTokens.types.pull',\n defaultMessage: 'Pull',\n },\n },\n {\n value: 'push-pull',\n label: {\n id: 'Settings.transferTokens.types.push-pull',\n defaultMessage: 'Full Access',\n },\n },\n ];\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n <Grid.Root gap={5}>\n <Grid.Item key=\"name\" col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <TokenName\n error={errors['name']}\n value={values['name']}\n canEditInputs={canEditInputs}\n onChange={onChange}\n />\n </Grid.Item>\n <Grid.Item key=\"description\" col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <TokenDescription\n error={errors['description']}\n value={values['description']}\n canEditInputs={canEditInputs}\n onChange={onChange}\n />\n </Grid.Item>\n <Grid.Item key=\"lifespan\" col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <LifeSpanInput\n isCreating={isCreating}\n error={errors['lifespan']}\n value={values['lifespan']}\n onChange={onChange}\n token={transferToken}\n />\n </Grid.Item>\n <Grid.Item key=\"permissions\" col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <TokenTypeSelect\n name=\"permissions\"\n value={values['permissions']}\n error={errors['permissions']}\n label={{\n id: 'Settings.tokens.form.type',\n defaultMessage: 'Token type',\n }}\n // @ts-expect-error – DS Select passes number | string, will be fixed in V2\n onChange={(value: string) => {\n onChange({ target: { name: 'permissions', value } });\n }}\n options={typeOptions}\n canEditInputs={canEditInputs}\n />\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n );\n};\n\nexport { EditView, ProtectedEditView };\n"],"names":["schema","yup","object","shape","name","string","max","required","translatedErrors","id","description","nullable","lifespan","number","integer","min","defined","permissions","EditView","formatMessage","useIntl","toggleNotification","useNotification","navigate","useNavigate","state","locationState","useLocation","transferToken","setTransferToken","React","useState","trackUsage","useTracking","useTypedSelector","admin_app","settings","allowedActions","canCreate","canUpdate","canRegenerate","useRBAC","match","useMatch","params","isCreating","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","useEffect","tokenType","TRANSFER_TOKEN_TYPE","data","error","useGetTransferTokenQuery","skip","type","message","createToken","useCreateTransferTokenMutation","updateToken","useUpdateTransferTokenMutation","handleSubmit","body","formik","split","isPermissionsTransferPermission","permission","length","res","parseInt","toString","isBaseQueryError","setErrors","defaultMessage","replace","err","canEditInputs","isLoading","_jsx","Page","Loading","_jsxs","Main","Title","Formik","validationSchema","validateOnChange","initialValues","join","enableReinitialize","onSubmit","actions","errors","handleChange","isSubmitting","values","Form","FormHead","title","token","setToken","canShowToken","regenerateUrl","Layouts","Content","Flex","direction","alignItems","gap","Boolean","TokenBox","accessKey","FormTransferTokenContainer","onChange","ProtectedEditView","read","Protect","typeOptions","value","label","Box","background","hasRadius","shadow","paddingTop","paddingBottom","paddingLeft","paddingRight","Typography","variant","tag","Grid","Root","Item","col","xs","TokenName","TokenDescription","LifeSpanInput","TokenTypeSelect","target","options"],"mappings":"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"}
|
|
@@ -20,7 +20,8 @@ var transferTokens = require('../../../../services/transferTokens.js');
|
|
|
20
20
|
var constants = require('../../components/Tokens/constants.js');
|
|
21
21
|
var Table = require('../../components/Tokens/Table.js');
|
|
22
22
|
|
|
23
|
-
function
|
|
23
|
+
function _interopNamespace(e) {
|
|
24
|
+
if (e && e.__esModule) return e;
|
|
24
25
|
var n = Object.create(null);
|
|
25
26
|
if (e) {
|
|
26
27
|
Object.keys(e).forEach(function (k) {
|
|
@@ -37,8 +38,8 @@ function _interopNamespaceDefault(e) {
|
|
|
37
38
|
return Object.freeze(n);
|
|
38
39
|
}
|
|
39
40
|
|
|
40
|
-
var React__namespace = /*#__PURE__*/
|
|
41
|
-
var qs__namespace = /*#__PURE__*/
|
|
41
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
42
|
+
var qs__namespace = /*#__PURE__*/_interopNamespace(qs);
|
|
42
43
|
|
|
43
44
|
const tableHeaders = [
|
|
44
45
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListView.js","sources":["../../../../../../../../admin/src/pages/Settings/pages/TransferTokens/ListView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { EmptyStateLayout, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link, useNavigate } from 'react-router-dom';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useOnce } from '../../../../hooks/useOnce';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport {\n useDeleteTransferTokenMutation,\n useGetTransferTokensQuery,\n} from '../../../../services/transferTokens';\nimport { TRANSFER_TOKEN_TYPE } from '../../components/Tokens/constants';\nimport { Table } from '../../components/Tokens/Table';\n\nimport type { Data } from '@strapi/types';\n\nconst tableHeaders = [\n {\n name: 'name',\n label: {\n id: 'Settings.tokens.ListView.headers.name',\n defaultMessage: 'Name',\n },\n sortable: true,\n },\n {\n name: 'description',\n label: {\n id: 'Settings.tokens.ListView.headers.description',\n defaultMessage: 'Description',\n },\n sortable: false,\n },\n {\n name: 'createdAt',\n label: {\n id: 'Settings.tokens.ListView.headers.createdAt',\n defaultMessage: 'Created at',\n },\n sortable: false,\n },\n {\n name: 'lastUsedAt',\n label: {\n id: 'Settings.tokens.ListView.headers.lastUsedAt',\n defaultMessage: 'Last used',\n },\n sortable: false,\n },\n] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * ListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ListView = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens']\n );\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canCreate, canDelete, canUpdate, canRead },\n } = useRBAC(permissions);\n const navigate = useNavigate();\n const { trackUsage } = useTracking();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n React.useEffect(() => {\n navigate({ search: qs.stringify({ sort: 'name:ASC' }, { encode: false }) }, { replace: true });\n }, [navigate]);\n\n useOnce(() => {\n trackUsage('willAccessTokenList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n });\n\n const headers = tableHeaders.map((header) => ({\n ...header,\n label: formatMessage(header.label),\n }));\n\n const {\n data: transferTokens = [],\n isLoading: isLoadingTokens,\n error,\n } = useGetTransferTokensQuery(undefined, {\n skip: !canRead,\n });\n\n React.useEffect(() => {\n if (transferTokens) {\n trackUsage('didAccessTokenList', {\n number: transferTokens.length,\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n }\n }, [trackUsage, transferTokens]);\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n const [deleteToken] = useDeleteTransferTokenMutation();\n\n const handleDelete = async (id: Data.ID) => {\n try {\n const res = await deleteToken(id);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occurred' }),\n });\n }\n };\n\n const isLoading = isLoadingTokens || isLoadingRBAC;\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Transfer Tokens',\n }\n )}\n </Page.Title>\n <Layouts.Header\n title={formatMessage({\n id: 'Settings.transferTokens.title',\n defaultMessage: 'Transfer Tokens',\n })}\n subtitle={formatMessage({\n id: 'Settings.transferTokens.description',\n defaultMessage: '\"List of generated transfer tokens\"', // TODO change this message\n })}\n primaryAction={\n canCreate ? (\n <LinkButton\n role=\"button\"\n tag={Link}\n data-testid=\"create-transfer-token-button\"\n startIcon={<Plus />}\n size=\"S\"\n onClick={() =>\n trackUsage('willAddTokenFromList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n })\n }\n to=\"/settings/transfer-tokens/create\"\n fullWidth\n >\n {formatMessage({\n id: 'Settings.transferTokens.create',\n defaultMessage: 'Create new Transfer Token',\n })}\n </LinkButton>\n ) : undefined\n }\n />\n {!canRead ? (\n <Page.NoPermissions />\n ) : (\n <Page.Main aria-busy={isLoading}>\n <Layouts.Content>\n {transferTokens.length > 0 && (\n <Table\n permissions={{ canRead, canDelete, canUpdate }}\n headers={headers}\n isLoading={isLoading}\n onConfirmDelete={handleDelete}\n tokens={transferTokens}\n tokenType={TRANSFER_TOKEN_TYPE}\n />\n )}\n {canCreate && transferTokens.length === 0 ? (\n <EmptyStateLayout\n action={\n <LinkButton\n tag={Link}\n variant=\"secondary\"\n startIcon={<Plus />}\n to=\"/settings/transfer-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.transferTokens.addNewToken',\n defaultMessage: 'Add new Transfer Token',\n })}\n </LinkButton>\n }\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.transferTokens.addFirstToken',\n defaultMessage: 'Add your first Transfer Token',\n })}\n />\n ) : null}\n {!canCreate && transferTokens.length === 0 ? (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.transferTokens.emptyStateLayout',\n defaultMessage: 'You don’t have any content yet...',\n })}\n />\n ) : null}\n </Layouts.Content>\n </Page.Main>\n )}\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListView />\n </Page.Protect>\n );\n};\n\nexport { ListView, ProtectedListView };\n"],"names":["tableHeaders","name","label","id","defaultMessage","sortable","ListView","formatMessage","useIntl","toggleNotification","useNotification","permissions","useTypedSelector","state","admin_app","settings","isLoading","isLoadingRBAC","allowedActions","canCreate","canDelete","canUpdate","canRead","useRBAC","navigate","useNavigate","trackUsage","useTracking","_unstableFormatAPIError","formatAPIError","useAPIErrorHandler","React","useEffect","search","qs","stringify","sort","encode","replace","useOnce","tokenType","TRANSFER_TOKEN_TYPE","headers","map","header","data","transferTokens","isLoadingTokens","error","useGetTransferTokensQuery","undefined","skip","number","length","type","message","deleteToken","useDeleteTransferTokenMutation","handleDelete","res","_jsxs","_Fragment","_jsx","Page","Title","Layouts","Header","title","subtitle","primaryAction","LinkButton","role","tag","Link","data-testid","startIcon","Plus","size","onClick","to","fullWidth","NoPermissions","Main","aria-busy","Content","Table","onConfirmDelete","tokens","EmptyStateLayout","action","variant","icon","EmptyDocuments","width","content","ProtectedListView","main","Protect"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ListView.js","sources":["../../../../../../../../admin/src/pages/Settings/pages/TransferTokens/ListView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { EmptyStateLayout, LinkButton } from '@strapi/design-system';\nimport { Plus } from '@strapi/icons';\nimport { EmptyDocuments } from '@strapi/icons/symbols';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { Link, useNavigate } from 'react-router-dom';\n\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useOnce } from '../../../../hooks/useOnce';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport {\n useDeleteTransferTokenMutation,\n useGetTransferTokensQuery,\n} from '../../../../services/transferTokens';\nimport { TRANSFER_TOKEN_TYPE } from '../../components/Tokens/constants';\nimport { Table } from '../../components/Tokens/Table';\n\nimport type { Data } from '@strapi/types';\n\nconst tableHeaders = [\n {\n name: 'name',\n label: {\n id: 'Settings.tokens.ListView.headers.name',\n defaultMessage: 'Name',\n },\n sortable: true,\n },\n {\n name: 'description',\n label: {\n id: 'Settings.tokens.ListView.headers.description',\n defaultMessage: 'Description',\n },\n sortable: false,\n },\n {\n name: 'createdAt',\n label: {\n id: 'Settings.tokens.ListView.headers.createdAt',\n defaultMessage: 'Created at',\n },\n sortable: false,\n },\n {\n name: 'lastUsedAt',\n label: {\n id: 'Settings.tokens.ListView.headers.lastUsedAt',\n defaultMessage: 'Last used',\n },\n sortable: false,\n },\n] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * ListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ListView = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens']\n );\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canCreate, canDelete, canUpdate, canRead },\n } = useRBAC(permissions);\n const navigate = useNavigate();\n const { trackUsage } = useTracking();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n React.useEffect(() => {\n navigate({ search: qs.stringify({ sort: 'name:ASC' }, { encode: false }) }, { replace: true });\n }, [navigate]);\n\n useOnce(() => {\n trackUsage('willAccessTokenList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n });\n\n const headers = tableHeaders.map((header) => ({\n ...header,\n label: formatMessage(header.label),\n }));\n\n const {\n data: transferTokens = [],\n isLoading: isLoadingTokens,\n error,\n } = useGetTransferTokensQuery(undefined, {\n skip: !canRead,\n });\n\n React.useEffect(() => {\n if (transferTokens) {\n trackUsage('didAccessTokenList', {\n number: transferTokens.length,\n tokenType: TRANSFER_TOKEN_TYPE,\n });\n }\n }, [trackUsage, transferTokens]);\n\n React.useEffect(() => {\n if (error) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }, [error, formatAPIError, toggleNotification]);\n\n const [deleteToken] = useDeleteTransferTokenMutation();\n\n const handleDelete = async (id: Data.ID) => {\n try {\n const res = await deleteToken(id);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n }\n } catch {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occurred' }),\n });\n }\n };\n\n const isLoading = isLoadingTokens || isLoadingRBAC;\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Transfer Tokens',\n }\n )}\n </Page.Title>\n <Layouts.Header\n title={formatMessage({\n id: 'Settings.transferTokens.title',\n defaultMessage: 'Transfer Tokens',\n })}\n subtitle={formatMessage({\n id: 'Settings.transferTokens.description',\n defaultMessage: '\"List of generated transfer tokens\"', // TODO change this message\n })}\n primaryAction={\n canCreate ? (\n <LinkButton\n role=\"button\"\n tag={Link}\n data-testid=\"create-transfer-token-button\"\n startIcon={<Plus />}\n size=\"S\"\n onClick={() =>\n trackUsage('willAddTokenFromList', {\n tokenType: TRANSFER_TOKEN_TYPE,\n })\n }\n to=\"/settings/transfer-tokens/create\"\n fullWidth\n >\n {formatMessage({\n id: 'Settings.transferTokens.create',\n defaultMessage: 'Create new Transfer Token',\n })}\n </LinkButton>\n ) : undefined\n }\n />\n {!canRead ? (\n <Page.NoPermissions />\n ) : (\n <Page.Main aria-busy={isLoading}>\n <Layouts.Content>\n {transferTokens.length > 0 && (\n <Table\n permissions={{ canRead, canDelete, canUpdate }}\n headers={headers}\n isLoading={isLoading}\n onConfirmDelete={handleDelete}\n tokens={transferTokens}\n tokenType={TRANSFER_TOKEN_TYPE}\n />\n )}\n {canCreate && transferTokens.length === 0 ? (\n <EmptyStateLayout\n action={\n <LinkButton\n tag={Link}\n variant=\"secondary\"\n startIcon={<Plus />}\n to=\"/settings/transfer-tokens/create\"\n >\n {formatMessage({\n id: 'Settings.transferTokens.addNewToken',\n defaultMessage: 'Add new Transfer Token',\n })}\n </LinkButton>\n }\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.transferTokens.addFirstToken',\n defaultMessage: 'Add your first Transfer Token',\n })}\n />\n ) : null}\n {!canCreate && transferTokens.length === 0 ? (\n <EmptyStateLayout\n icon={<EmptyDocuments width=\"16rem\" />}\n content={formatMessage({\n id: 'Settings.transferTokens.emptyStateLayout',\n defaultMessage: 'You don’t have any content yet...',\n })}\n />\n ) : null}\n </Layouts.Content>\n </Page.Main>\n )}\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedListView\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedListView = () => {\n const permissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['transfer-tokens'].main\n );\n\n return (\n <Page.Protect permissions={permissions}>\n <ListView />\n </Page.Protect>\n );\n};\n\nexport { ListView, ProtectedListView };\n"],"names":["tableHeaders","name","label","id","defaultMessage","sortable","ListView","formatMessage","useIntl","toggleNotification","useNotification","permissions","useTypedSelector","state","admin_app","settings","isLoading","isLoadingRBAC","allowedActions","canCreate","canDelete","canUpdate","canRead","useRBAC","navigate","useNavigate","trackUsage","useTracking","_unstableFormatAPIError","formatAPIError","useAPIErrorHandler","React","useEffect","search","qs","stringify","sort","encode","replace","useOnce","tokenType","TRANSFER_TOKEN_TYPE","headers","map","header","data","transferTokens","isLoadingTokens","error","useGetTransferTokensQuery","undefined","skip","number","length","type","message","deleteToken","useDeleteTransferTokenMutation","handleDelete","res","_jsxs","_Fragment","_jsx","Page","Title","Layouts","Header","title","subtitle","primaryAction","LinkButton","role","tag","Link","data-testid","startIcon","Plus","size","onClick","to","fullWidth","NoPermissions","Main","aria-busy","Content","Table","onConfirmDelete","tokens","EmptyStateLayout","action","variant","icon","EmptyDocuments","width","content","ProtectedListView","main","Protect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,MAAMA,YAAAA,GAAe;AACnB,IAAA;QACEC,IAAAA,EAAM,MAAA;QACNC,KAAAA,EAAO;YACLC,EAAAA,EAAI,uCAAA;YACJC,cAAAA,EAAgB;AAClB,SAAA;QACAC,QAAAA,EAAU;AACZ,KAAA;AACA,IAAA;QACEJ,IAAAA,EAAM,aAAA;QACNC,KAAAA,EAAO;YACLC,EAAAA,EAAI,8CAAA;YACJC,cAAAA,EAAgB;AAClB,SAAA;QACAC,QAAAA,EAAU;AACZ,KAAA;AACA,IAAA;QACEJ,IAAAA,EAAM,WAAA;QACNC,KAAAA,EAAO;YACLC,EAAAA,EAAI,4CAAA;YACJC,cAAAA,EAAgB;AAClB,SAAA;QACAC,QAAAA,EAAU;AACZ,KAAA;AACA,IAAA;QACEJ,IAAAA,EAAM,YAAA;QACNC,KAAAA,EAAO;YACLC,EAAAA,EAAI,6CAAA;YACJC,cAAAA,EAAgB;AAClB,SAAA;QACAC,QAAAA,EAAU;AACZ;AACD,CAAA;AAED;;AAEkG,2GAE5FC,QAAAA,GAAW,IAAA;IACf,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAM,EAAEC,kBAAkB,EAAE,GAAGC,6BAAAA,EAAAA;AAC/B,IAAA,MAAMC,WAAAA,GAAcC,sBAAAA,CAClB,CAACC,KAAAA,GAAUA,KAAAA,CAAMC,SAAS,CAACH,WAAW,CAACI,QAAQ,GAAG,iBAAA,CAAkB,CAAA;AAEtE,IAAA,MAAM,EACJC,SAAAA,EAAWC,aAAa,EACxBC,cAAAA,EAAgB,EAAEC,SAAS,EAAEC,SAAS,EAAEC,SAAS,EAAEC,OAAO,EAAE,EAC7D,GAAGC,eAAAA,CAAQZ,WAAAA,CAAAA;AACZ,IAAA,MAAMa,QAAAA,GAAWC,0BAAAA,EAAAA;IACjB,MAAM,EAAEC,UAAU,EAAE,GAAGC,oBAAAA,EAAAA;AACvB,IAAA,MAAM,EAAEC,uBAAAA,EAAyBC,cAAc,EAAE,GAAGC,qCAAAA,EAAAA;AAEpDC,IAAAA,gBAAAA,CAAMC,SAAS,CAAC,IAAA;QACdR,QAAAA,CAAS;YAAES,MAAAA,EAAQC,aAAAA,CAAGC,SAAS,CAAC;gBAAEC,IAAAA,EAAM;aAAW,EAAG;gBAAEC,MAAAA,EAAQ;AAAM,aAAA;SAAG,EAAG;YAAEC,OAAAA,EAAS;AAAK,SAAA,CAAA;IAC9F,CAAA,EAAG;AAACd,QAAAA;AAAS,KAAA,CAAA;IAEbe,eAAAA,CAAQ,IAAA;AACNb,QAAAA,UAAAA,CAAW,qBAAA,EAAuB;YAChCc,SAAAA,EAAWC;AACb,SAAA,CAAA;AACF,IAAA,CAAA,CAAA;AAEA,IAAA,MAAMC,UAAU1C,YAAAA,CAAa2C,GAAG,CAAC,CAACC,UAAY;AAC5C,YAAA,GAAGA,MAAM;YACT1C,KAAAA,EAAOK,aAAAA,CAAcqC,OAAO1C,KAAK;SACnC,CAAA,CAAA;AAEA,IAAA,MAAM,EACJ2C,IAAAA,EAAMC,gBAAAA,GAAiB,EAAE,EACzB9B,SAAAA,EAAW+B,eAAe,EAC1BC,KAAK,EACN,GAAGC,wCAAAA,CAA0BC,SAAAA,EAAW;AACvCC,QAAAA,IAAAA,EAAM,CAAC7B;AACT,KAAA,CAAA;AAEAS,IAAAA,gBAAAA,CAAMC,SAAS,CAAC,IAAA;AACd,QAAA,IAAIc,gBAAAA,EAAgB;AAClBpB,YAAAA,UAAAA,CAAW,oBAAA,EAAsB;AAC/B0B,gBAAAA,MAAAA,EAAQN,iBAAeO,MAAM;gBAC7Bb,SAAAA,EAAWC;AACb,aAAA,CAAA;AACF,QAAA;IACF,CAAA,EAAG;AAACf,QAAAA,UAAAA;AAAYoB,QAAAA;AAAe,KAAA,CAAA;AAE/Bf,IAAAA,gBAAAA,CAAMC,SAAS,CAAC,IAAA;AACd,QAAA,IAAIgB,KAAAA,EAAO;YACTvC,kBAAAA,CAAmB;gBACjB6C,IAAAA,EAAM,QAAA;AACNC,gBAAAA,OAAAA,EAAS1B,cAAAA,CAAemB,KAAAA;AAC1B,aAAA,CAAA;AACF,QAAA;IACF,CAAA,EAAG;AAACA,QAAAA,KAAAA;AAAOnB,QAAAA,cAAAA;AAAgBpB,QAAAA;AAAmB,KAAA,CAAA;IAE9C,MAAM,CAAC+C,YAAY,GAAGC,6CAAAA,EAAAA;AAEtB,IAAA,MAAMC,eAAe,OAAOvD,EAAAA,GAAAA;QAC1B,IAAI;YACF,MAAMwD,GAAAA,GAAM,MAAMH,WAAAA,CAAYrD,EAAAA,CAAAA;AAE9B,YAAA,IAAI,WAAWwD,GAAAA,EAAK;gBAClBlD,kBAAAA,CAAmB;oBACjB6C,IAAAA,EAAM,QAAA;oBACNC,OAAAA,EAAS1B,cAAAA,CAAe8B,IAAIX,KAAK;AACnC,iBAAA,CAAA;AACF,YAAA;AACF,QAAA,CAAA,CAAE,OAAM;YACNvC,kBAAAA,CAAmB;gBACjB6C,IAAAA,EAAM,QAAA;AACNC,gBAAAA,OAAAA,EAAShD,aAAAA,CAAc;oBAAEJ,EAAAA,EAAI,oBAAA;oBAAsBC,cAAAA,EAAgB;AAAoB,iBAAA;AACzF,aAAA,CAAA;AACF,QAAA;AACF,IAAA,CAAA;AAEA,IAAA,MAAMY,YAAY+B,eAAAA,IAAmB9B,aAAAA;IAErC,qBACE2C,eAAA,CAAAC,mBAAA,EAAA;;AACE,0BAAAC,cAAA,CAACC,iBAAKC,KAAK,EAAA;0BACRzD,aAAAA,CACC;oBAAEJ,EAAAA,EAAI,oBAAA;oBAAsBC,cAAAA,EAAgB;iBAAoB,EAChE;oBACEH,IAAAA,EAAM;AACR,iBAAA;;AAGJ,0BAAA6D,cAAA,CAACG,eAAQC,MAAM,EAAA;AACbC,gBAAAA,KAAAA,EAAO5D,aAAAA,CAAc;oBACnBJ,EAAAA,EAAI,+BAAA;oBACJC,cAAAA,EAAgB;AAClB,iBAAA,CAAA;AACAgE,gBAAAA,QAAAA,EAAU7D,aAAAA,CAAc;oBACtBJ,EAAAA,EAAI,qCAAA;oBACJC,cAAAA,EAAgB;AAClB,iBAAA,CAAA;AACAiE,gBAAAA,aAAAA,EACElD,0BACE2C,cAAA,CAACQ,uBAAAA,EAAAA;oBACCC,IAAAA,EAAK,QAAA;oBACLC,GAAAA,EAAKC,mBAAAA;oBACLC,aAAAA,EAAY,8BAAA;AACZC,oBAAAA,SAAAA,gBAAWb,cAAA,CAACc,UAAAA,EAAAA,EAAAA,CAAAA;oBACZC,IAAAA,EAAK,GAAA;oBACLC,OAAAA,EAAS,IACPpD,WAAW,sBAAA,EAAwB;4BACjCc,SAAAA,EAAWC;AACb,yBAAA,CAAA;oBAEFsC,EAAAA,EAAG,kCAAA;oBACHC,SAAS,EAAA,IAAA;8BAERzE,aAAAA,CAAc;wBACbJ,EAAAA,EAAI,gCAAA;wBACJC,cAAAA,EAAgB;AAClB,qBAAA;AAEA8C,iBAAAA,CAAAA,GAAAA;;AAGP,YAAA,CAAC5B,wBACAwC,cAAA,CAACC,gBAAAA,CAAKkB,aAAa,EAAA,EAAA,CAAA,iBAEnBnB,cAAA,CAACC,iBAAKmB,IAAI,EAAA;gBAACC,WAAAA,EAAWnE,SAAAA;wCACpB4C,eAAA,CAACK,eAAQmB,OAAO,EAAA;;wBACbtC,gBAAAA,CAAeO,MAAM,GAAG,CAAA,kBACvBS,cAAA,CAACuB,WAAAA,EAAAA;4BACC1E,WAAAA,EAAa;AAAEW,gCAAAA,OAAAA;AAASF,gCAAAA,SAAAA;AAAWC,gCAAAA;AAAU,6BAAA;4BAC7CqB,OAAAA,EAASA,OAAAA;4BACT1B,SAAAA,EAAWA,SAAAA;4BACXsE,eAAAA,EAAiB5B,YAAAA;4BACjB6B,MAAAA,EAAQzC,gBAAAA;4BACRN,SAAAA,EAAWC;;AAGdtB,wBAAAA,SAAAA,IAAa2B,gBAAAA,CAAeO,MAAM,KAAK,CAAA,iBACtCS,cAAA,CAAC0B,6BAAAA,EAAAA;AACCC,4BAAAA,MAAAA,gBACE3B,cAAA,CAACQ,uBAAAA,EAAAA;gCACCE,GAAAA,EAAKC,mBAAAA;gCACLiB,OAAAA,EAAQ,WAAA;AACRf,gCAAAA,SAAAA,gBAAWb,cAAA,CAACc,UAAAA,EAAAA,EAAAA,CAAAA;gCACZG,EAAAA,EAAG,kCAAA;0CAEFxE,aAAAA,CAAc;oCACbJ,EAAAA,EAAI,qCAAA;oCACJC,cAAAA,EAAgB;AAClB,iCAAA;;AAGJuF,4BAAAA,IAAAA,gBAAM7B,cAAA,CAAC8B,sBAAAA,EAAAA;gCAAeC,KAAAA,EAAM;;AAC5BC,4BAAAA,OAAAA,EAASvF,aAAAA,CAAc;gCACrBJ,EAAAA,EAAI,uCAAA;gCACJC,cAAAA,EAAgB;AAClB,6BAAA;AAEA,yBAAA,CAAA,GAAA,IAAA;AACH,wBAAA,CAACe,SAAAA,IAAa2B,gBAAAA,CAAeO,MAAM,KAAK,kBACvCS,cAAA,CAAC0B,6BAAAA,EAAAA;AACCG,4BAAAA,IAAAA,gBAAM7B,cAAA,CAAC8B,sBAAAA,EAAAA;gCAAeC,KAAAA,EAAM;;AAC5BC,4BAAAA,OAAAA,EAASvF,aAAAA,CAAc;gCACrBJ,EAAAA,EAAI,0CAAA;gCACJC,cAAAA,EAAgB;AAClB,6BAAA;AAEA,yBAAA,CAAA,GAAA;;;;;;AAMhB;AAEA;;AAEkG,2GAE5F2F,iBAAAA,GAAoB,IAAA;AACxB,IAAA,MAAMpF,WAAAA,GAAcC,sBAAAA,CAClB,CAACC,KAAAA,GAAUA,KAAAA,CAAMC,SAAS,CAACH,WAAW,CAACI,QAAQ,GAAG,kBAAkB,CAACiF,IAAAA,CAAAA;IAGvE,qBACElC,cAAA,CAACC,iBAAKkC,OAAO,EAAA;QAACtF,WAAAA,EAAaA,WAAAA;AACzB,QAAA,QAAA,gBAAAmD,cAAA,CAACxD,QAAAA,EAAAA,EAAAA;;AAGP;;;;;"}
|
|
@@ -27,7 +27,10 @@ var MagicLinkCE = require('./components/MagicLinkCE.js');
|
|
|
27
27
|
var SelectRoles = require('./components/SelectRoles.js');
|
|
28
28
|
var validation = require('./utils/validation.js');
|
|
29
29
|
|
|
30
|
-
function
|
|
30
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
31
|
+
|
|
32
|
+
function _interopNamespace(e) {
|
|
33
|
+
if (e && e.__esModule) return e;
|
|
31
34
|
var n = Object.create(null);
|
|
32
35
|
if (e) {
|
|
33
36
|
Object.keys(e).forEach(function (k) {
|
|
@@ -44,8 +47,9 @@ function _interopNamespaceDefault(e) {
|
|
|
44
47
|
return Object.freeze(n);
|
|
45
48
|
}
|
|
46
49
|
|
|
47
|
-
var React__namespace = /*#__PURE__*/
|
|
48
|
-
var
|
|
50
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
51
|
+
var pick__default = /*#__PURE__*/_interopDefault(pick);
|
|
52
|
+
var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
|
|
49
53
|
|
|
50
54
|
const EDIT_VALIDATION_SCHEMA = yup__namespace.object().shape({
|
|
51
55
|
...validation.COMMON_USER_SCHEMA,
|
|
@@ -119,7 +123,7 @@ const fieldsToPick = [
|
|
|
119
123
|
return /*#__PURE__*/ jsxRuntime.jsx(PageHelpers.Page.Loading, {});
|
|
120
124
|
}
|
|
121
125
|
const initialData = {
|
|
122
|
-
...
|
|
126
|
+
...pick__default.default(user, fieldsToPick),
|
|
123
127
|
roles: user.roles.map(({ id })=>id),
|
|
124
128
|
password: '',
|
|
125
129
|
confirmPassword: ''
|
|
@@ -147,7 +151,7 @@ const fieldsToPick = [
|
|
|
147
151
|
})
|
|
148
152
|
});
|
|
149
153
|
actions.setValues({
|
|
150
|
-
...
|
|
154
|
+
...pick__default.default(body, fieldsToPick),
|
|
151
155
|
password: '',
|
|
152
156
|
confirmPassword: ''
|
|
153
157
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditPage.js","sources":["../../../../../../../../admin/src/pages/Settings/pages/Users/EditPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport pick from 'lodash/pick';\nimport { useIntl } from 'react-intl';\nimport { useMatch, useNavigate } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Update } from '../../../../../../shared/contracts/user';\nimport { Form, FormHelpers } from '../../../../components/Form';\nimport { InputRenderer } from '../../../../components/FormInputs/Renderer';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useEnterprise } from '../../../../hooks/useEnterprise';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { useAdminUsers, useUpdateUserMutation } from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\nimport { getDisplayName } from '../../../../utils/users';\n\nimport { MagicLinkCE } from './components/MagicLinkCE';\nimport { SelectRoles } from './components/SelectRoles';\nimport { COMMON_USER_SCHEMA } from './utils/validation';\n\nconst EDIT_VALIDATION_SCHEMA = yup.object().shape({\n ...COMMON_USER_SCHEMA,\n isActive: yup.bool(),\n roles: yup\n .array()\n .min(1, {\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n});\n\nconst fieldsToPick = ['email', 'firstname', 'lastname', 'username', 'isActive', 'roles'] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst EditPage = () => {\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/users/:id');\n const id = match?.params?.id ?? '';\n const navigate = useNavigate();\n const { toggleNotification } = useNotification();\n const MagicLink = useEnterprise(\n MagicLinkCE,\n async () =>\n (\n await import(\n '../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE'\n )\n ).MagicLinkEE\n );\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const permissions = useTypedSelector(selectAdminPermissions);\n\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canUpdate },\n } = useRBAC({\n read: permissions.settings?.users.read ?? [],\n update: permissions.settings?.users.update ?? [],\n });\n\n const [updateUser] = useUpdateUserMutation();\n\n const {\n data,\n error,\n isLoading: isLoadingAdminUsers,\n } = useAdminUsers(\n { id },\n {\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [user] = data?.users ?? [];\n\n React.useEffect(() => {\n if (error) {\n // Redirect the user to the homepage if is not allowed to read\n if (error.name === 'UnauthorizedError') {\n toggleNotification({\n type: 'info',\n message: formatMessage({\n id: 'notification.permission.not-allowed-read',\n defaultMessage: 'You are not allowed to see this document',\n }),\n });\n\n navigate('/');\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }\n }, [error, formatAPIError, formatMessage, navigate, toggleNotification]);\n\n const isLoading = isLoadingAdminUsers || !MagicLink || isLoadingRBAC;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n type InitialData = Pick<Update.Request['body'], (typeof fieldsToPick)[number]> & {\n confirmPassword: string;\n password: string;\n };\n\n const initialData = {\n ...pick(user, fieldsToPick),\n roles: user.roles.map(({ id }) => id),\n password: '',\n confirmPassword: '',\n } satisfies InitialData;\n\n const handleSubmit = async (body: InitialData, actions: FormHelpers<InitialData>) => {\n const { confirmPassword: _confirmPassword, ...bodyRest } = body;\n\n const res = await updateUser({\n id,\n ...bodyRest,\n });\n\n if ('error' in res && isBaseQueryError(res.error)) {\n if (res.error.name === 'ValidationError') {\n actions.setErrors(formatValidationErrors(res.error));\n }\n\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n } else {\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n\n actions.setValues({\n ...pick(body, fieldsToPick),\n password: '',\n confirmPassword: '',\n });\n }\n };\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Users',\n }\n )}\n </Page.Title>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n initialValues={initialData}\n validationSchema={EDIT_VALIDATION_SCHEMA}\n >\n {({ isSubmitting, modified }) => {\n return (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={isSubmitting || !canUpdate || !modified}\n startIcon={<Check />}\n loading={isSubmitting}\n type=\"submit\"\n fullWidth\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n title={formatMessage(\n {\n id: 'app.containers.Users.EditPage.header.label',\n defaultMessage: 'Edit {name}',\n },\n {\n // @ts-expect-error – issues with the Entity ID type, still.\n name: getDisplayName(initialData),\n }\n )}\n navigationAction={\n // The back link for mobile works differently; it is placed higher up in the DOM.\n <Box display={{ initial: 'none', medium: 'block' }}>\n <BackButton fallback=\"../users\" />\n </Box>\n }\n />\n <Layouts.Content>\n {user?.registrationToken && (\n <Box paddingBottom={6}>\n <MagicLink registrationToken={user.registrationToken} />\n </Box>\n )}\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.Users.ModalCreateBody.block-title.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n <Grid.Root gap={5}>\n {LAYOUT.map((row) =>\n row.map(({ size, label, ...field }) => {\n return (\n <Grid.Item\n key={field.name}\n m={size}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer\n {...field}\n disabled={!canUpdate}\n label={formatMessage(label)}\n placeholder={\n 'placeholder' in field\n ? formatMessage(field.placeholder)\n : undefined\n }\n />\n </Grid.Item>\n );\n })\n )}\n </Grid.Root>\n </Flex>\n </Box>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.roles',\n defaultMessage: \"User's role\",\n })}\n </Typography>\n <Grid.Root gap={5}>\n <Grid.Item col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <SelectRoles disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n );\n }}\n </Form>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage LAYOUT\n * -----------------------------------------------------------------------------------------------*/\n\nconst LAYOUT = [\n [\n {\n label: {\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n },\n name: 'firstname',\n placeholder: {\n id: 'Auth.form.firstname.placeholder',\n defaultMessage: 'e.g. Kai',\n },\n type: 'string' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n },\n name: 'lastname',\n placeholder: {\n id: 'Auth.form.lastname.placeholder',\n defaultMessage: 'e.g. Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n },\n name: 'email',\n placeholder: {\n id: 'Auth.form.email.placeholder',\n defaultMessage: 'e.g. kai.doe@strapi.io',\n },\n type: 'email' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.username.label',\n defaultMessage: 'Username',\n },\n name: 'username',\n placeholder: {\n id: 'Auth.form.username.placeholder',\n defaultMessage: 'e.g. Kai_Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n autoComplete: 'new-password',\n label: {\n id: 'global.password',\n defaultMessage: 'Password',\n },\n name: 'password',\n type: 'password' as const,\n size: 6,\n },\n {\n autoComplete: 'new-password',\n label: {\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Password confirmation',\n },\n name: 'confirmPassword',\n type: 'password' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.active.label',\n defaultMessage: 'Active',\n },\n name: 'isActive',\n type: 'boolean' as const,\n size: 6,\n },\n ],\n];\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.users.read);\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { EditPage, ProtectedEditPage };\n"],"names":["EDIT_VALIDATION_SCHEMA","yup","object","shape","COMMON_USER_SCHEMA","isActive","bool","roles","array","min","id","translatedErrors","required","defaultMessage","fieldsToPick","EditPage","formatMessage","useIntl","match","useMatch","params","navigate","useNavigate","toggleNotification","useNotification","MagicLink","useEnterprise","MagicLinkCE","MagicLinkEE","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","permissions","useTypedSelector","selectAdminPermissions","isLoading","isLoadingRBAC","allowedActions","canUpdate","useRBAC","read","settings","users","update","updateUser","useUpdateUserMutation","data","error","isLoadingAdminUsers","useAdminUsers","refetchOnMountOrArgChange","user","React","useEffect","name","type","message","_jsx","Page","Loading","initialData","pick","map","password","confirmPassword","handleSubmit","body","actions","_confirmPassword","bodyRest","res","isBaseQueryError","setErrors","setValues","_jsxs","Main","Title","Form","method","onSubmit","initialValues","validationSchema","isSubmitting","modified","_Fragment","Layouts","Header","primaryAction","Button","disabled","startIcon","Check","loading","fullWidth","title","getDisplayName","navigationAction","Box","display","initial","medium","BackButton","fallback","Content","registrationToken","paddingBottom","Flex","direction","alignItems","gap","background","hasRadius","shadow","paddingTop","paddingLeft","paddingRight","Typography","variant","tag","Grid","Root","LAYOUT","row","size","label","field","Item","m","xs","InputRenderer","placeholder","undefined","col","SelectRoles","autoComplete","ProtectedEditPage","state","admin_app","Protect"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EditPage.js","sources":["../../../../../../../../admin/src/pages/Settings/pages/Users/EditPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, Typography } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport pick from 'lodash/pick';\nimport { useIntl } from 'react-intl';\nimport { useMatch, useNavigate } from 'react-router-dom';\nimport * as yup from 'yup';\n\nimport { Update } from '../../../../../../shared/contracts/user';\nimport { Form, FormHelpers } from '../../../../components/Form';\nimport { InputRenderer } from '../../../../components/FormInputs/Renderer';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { Page } from '../../../../components/PageHelpers';\nimport { useTypedSelector } from '../../../../core/store/hooks';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useEnterprise } from '../../../../hooks/useEnterprise';\nimport { useRBAC } from '../../../../hooks/useRBAC';\nimport { selectAdminPermissions } from '../../../../selectors';\nimport { useAdminUsers, useUpdateUserMutation } from '../../../../services/users';\nimport { isBaseQueryError } from '../../../../utils/baseQuery';\nimport { translatedErrors } from '../../../../utils/translatedErrors';\nimport { getDisplayName } from '../../../../utils/users';\n\nimport { MagicLinkCE } from './components/MagicLinkCE';\nimport { SelectRoles } from './components/SelectRoles';\nimport { COMMON_USER_SCHEMA } from './utils/validation';\n\nconst EDIT_VALIDATION_SCHEMA = yup.object().shape({\n ...COMMON_USER_SCHEMA,\n isActive: yup.bool(),\n roles: yup\n .array()\n .min(1, {\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n })\n .required({\n id: translatedErrors.required.id,\n defaultMessage: 'This field is required',\n }),\n});\n\nconst fieldsToPick = ['email', 'firstname', 'lastname', 'username', 'isActive', 'roles'] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst EditPage = () => {\n const { formatMessage } = useIntl();\n const match = useMatch('/settings/users/:id');\n const id = match?.params?.id ?? '';\n const navigate = useNavigate();\n const { toggleNotification } = useNotification();\n const MagicLink = useEnterprise(\n MagicLinkCE,\n async () =>\n (\n await import(\n '../../../../../../ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE'\n )\n ).MagicLinkEE\n );\n const {\n _unstableFormatAPIError: formatAPIError,\n _unstableFormatValidationErrors: formatValidationErrors,\n } = useAPIErrorHandler();\n\n const permissions = useTypedSelector(selectAdminPermissions);\n\n const {\n isLoading: isLoadingRBAC,\n allowedActions: { canUpdate },\n } = useRBAC({\n read: permissions.settings?.users.read ?? [],\n update: permissions.settings?.users.update ?? [],\n });\n\n const [updateUser] = useUpdateUserMutation();\n\n const {\n data,\n error,\n isLoading: isLoadingAdminUsers,\n } = useAdminUsers(\n { id },\n {\n refetchOnMountOrArgChange: true,\n }\n );\n\n const [user] = data?.users ?? [];\n\n React.useEffect(() => {\n if (error) {\n // Redirect the user to the homepage if is not allowed to read\n if (error.name === 'UnauthorizedError') {\n toggleNotification({\n type: 'info',\n message: formatMessage({\n id: 'notification.permission.not-allowed-read',\n defaultMessage: 'You are not allowed to see this document',\n }),\n });\n\n navigate('/');\n } else {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(error),\n });\n }\n }\n }, [error, formatAPIError, formatMessage, navigate, toggleNotification]);\n\n const isLoading = isLoadingAdminUsers || !MagicLink || isLoadingRBAC;\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n type InitialData = Pick<Update.Request['body'], (typeof fieldsToPick)[number]> & {\n confirmPassword: string;\n password: string;\n };\n\n const initialData = {\n ...pick(user, fieldsToPick),\n roles: user.roles.map(({ id }) => id),\n password: '',\n confirmPassword: '',\n } satisfies InitialData;\n\n const handleSubmit = async (body: InitialData, actions: FormHelpers<InitialData>) => {\n const { confirmPassword: _confirmPassword, ...bodyRest } = body;\n\n const res = await updateUser({\n id,\n ...bodyRest,\n });\n\n if ('error' in res && isBaseQueryError(res.error)) {\n if (res.error.name === 'ValidationError') {\n actions.setErrors(formatValidationErrors(res.error));\n }\n\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n } else {\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.success.saved', defaultMessage: 'Saved' }),\n });\n\n actions.setValues({\n ...pick(body, fieldsToPick),\n password: '',\n confirmPassword: '',\n });\n }\n };\n\n return (\n <Page.Main>\n <Page.Title>\n {formatMessage(\n { id: 'Settings.PageTitle', defaultMessage: 'Settings - {name}' },\n {\n name: 'Users',\n }\n )}\n </Page.Title>\n <Form\n method=\"PUT\"\n onSubmit={handleSubmit}\n initialValues={initialData}\n validationSchema={EDIT_VALIDATION_SCHEMA}\n >\n {({ isSubmitting, modified }) => {\n return (\n <>\n <Layouts.Header\n primaryAction={\n <Button\n disabled={isSubmitting || !canUpdate || !modified}\n startIcon={<Check />}\n loading={isSubmitting}\n type=\"submit\"\n fullWidth\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n title={formatMessage(\n {\n id: 'app.containers.Users.EditPage.header.label',\n defaultMessage: 'Edit {name}',\n },\n {\n // @ts-expect-error – issues with the Entity ID type, still.\n name: getDisplayName(initialData),\n }\n )}\n navigationAction={\n // The back link for mobile works differently; it is placed higher up in the DOM.\n <Box display={{ initial: 'none', medium: 'block' }}>\n <BackButton fallback=\"../users\" />\n </Box>\n }\n />\n <Layouts.Content>\n {user?.registrationToken && (\n <Box paddingBottom={6}>\n <MagicLink registrationToken={user.registrationToken} />\n </Box>\n )}\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.Users.ModalCreateBody.block-title.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n <Grid.Root gap={5}>\n {LAYOUT.map((row) =>\n row.map(({ size, label, ...field }) => {\n return (\n <Grid.Item\n key={field.name}\n m={size}\n xs={12}\n direction=\"column\"\n alignItems=\"stretch\"\n >\n <InputRenderer\n {...field}\n disabled={!canUpdate}\n label={formatMessage(label)}\n placeholder={\n 'placeholder' in field\n ? formatMessage(field.placeholder)\n : undefined\n }\n />\n </Grid.Item>\n );\n })\n )}\n </Grid.Root>\n </Flex>\n </Box>\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: 'global.roles',\n defaultMessage: \"User's role\",\n })}\n </Typography>\n <Grid.Root gap={5}>\n <Grid.Item col={6} xs={12} direction=\"column\" alignItems=\"stretch\">\n <SelectRoles disabled={!canUpdate} />\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n </Flex>\n </Layouts.Content>\n </>\n );\n }}\n </Form>\n </Page.Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * EditPage LAYOUT\n * -----------------------------------------------------------------------------------------------*/\n\nconst LAYOUT = [\n [\n {\n label: {\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n },\n name: 'firstname',\n placeholder: {\n id: 'Auth.form.firstname.placeholder',\n defaultMessage: 'e.g. Kai',\n },\n type: 'string' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n },\n name: 'lastname',\n placeholder: {\n id: 'Auth.form.lastname.placeholder',\n defaultMessage: 'e.g. Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.email.label',\n defaultMessage: 'Email',\n },\n name: 'email',\n placeholder: {\n id: 'Auth.form.email.placeholder',\n defaultMessage: 'e.g. kai.doe@strapi.io',\n },\n type: 'email' as const,\n size: 6,\n required: true,\n },\n {\n label: {\n id: 'Auth.form.username.label',\n defaultMessage: 'Username',\n },\n name: 'username',\n placeholder: {\n id: 'Auth.form.username.placeholder',\n defaultMessage: 'e.g. Kai_Doe',\n },\n type: 'string' as const,\n size: 6,\n },\n ],\n [\n {\n autoComplete: 'new-password',\n label: {\n id: 'global.password',\n defaultMessage: 'Password',\n },\n name: 'password',\n type: 'password' as const,\n size: 6,\n },\n {\n autoComplete: 'new-password',\n label: {\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Password confirmation',\n },\n name: 'confirmPassword',\n type: 'password' as const,\n size: 6,\n },\n ],\n [\n {\n label: {\n id: 'Auth.form.active.label',\n defaultMessage: 'Active',\n },\n name: 'isActive',\n type: 'boolean' as const,\n size: 6,\n },\n ],\n];\n\nconst ProtectedEditPage = () => {\n const permissions = useTypedSelector((state) => state.admin_app.permissions.settings?.users.read);\n\n return (\n <Page.Protect permissions={permissions}>\n <EditPage />\n </Page.Protect>\n );\n};\n\nexport { EditPage, ProtectedEditPage };\n"],"names":["EDIT_VALIDATION_SCHEMA","yup","object","shape","COMMON_USER_SCHEMA","isActive","bool","roles","array","min","id","translatedErrors","required","defaultMessage","fieldsToPick","EditPage","formatMessage","useIntl","match","useMatch","params","navigate","useNavigate","toggleNotification","useNotification","MagicLink","useEnterprise","MagicLinkCE","MagicLinkEE","_unstableFormatAPIError","formatAPIError","_unstableFormatValidationErrors","formatValidationErrors","useAPIErrorHandler","permissions","useTypedSelector","selectAdminPermissions","isLoading","isLoadingRBAC","allowedActions","canUpdate","useRBAC","read","settings","users","update","updateUser","useUpdateUserMutation","data","error","isLoadingAdminUsers","useAdminUsers","refetchOnMountOrArgChange","user","React","useEffect","name","type","message","_jsx","Page","Loading","initialData","pick","map","password","confirmPassword","handleSubmit","body","actions","_confirmPassword","bodyRest","res","isBaseQueryError","setErrors","setValues","_jsxs","Main","Title","Form","method","onSubmit","initialValues","validationSchema","isSubmitting","modified","_Fragment","Layouts","Header","primaryAction","Button","disabled","startIcon","Check","loading","fullWidth","title","getDisplayName","navigationAction","Box","display","initial","medium","BackButton","fallback","Content","registrationToken","paddingBottom","Flex","direction","alignItems","gap","background","hasRadius","shadow","paddingTop","paddingLeft","paddingRight","Typography","variant","tag","Grid","Root","LAYOUT","row","size","label","field","Item","m","xs","InputRenderer","placeholder","undefined","col","SelectRoles","autoComplete","ProtectedEditPage","state","admin_app","Protect"],"mappings":"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"}
|
|
@@ -25,7 +25,8 @@ var users$1 = require('../../../../utils/users.js');
|
|
|
25
25
|
var CreateActionCE = require('./components/CreateActionCE.js');
|
|
26
26
|
var NewUserForm = require('./components/NewUserForm.js');
|
|
27
27
|
|
|
28
|
-
function
|
|
28
|
+
function _interopNamespace(e) {
|
|
29
|
+
if (e && e.__esModule) return e;
|
|
29
30
|
var n = Object.create(null);
|
|
30
31
|
if (e) {
|
|
31
32
|
Object.keys(e).forEach(function (k) {
|
|
@@ -42,8 +43,8 @@ function _interopNamespaceDefault(e) {
|
|
|
42
43
|
return Object.freeze(n);
|
|
43
44
|
}
|
|
44
45
|
|
|
45
|
-
var React__namespace = /*#__PURE__*/
|
|
46
|
-
var qs__namespace = /*#__PURE__*/
|
|
46
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
47
|
+
var qs__namespace = /*#__PURE__*/_interopNamespace(qs);
|
|
47
48
|
|
|
48
49
|
/* -------------------------------------------------------------------------------------------------
|
|
49
50
|
* ListPageCE
|