@strapi/admin 5.37.1 → 5.38.1
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/App.js +1 -1
- package/dist/admin/admin/src/App.js.map +1 -1
- package/dist/admin/admin/src/App.mjs +1 -1
- package/dist/admin/admin/src/App.mjs.map +1 -1
- package/dist/admin/admin/src/StrapiApp.js.map +1 -1
- package/dist/admin/admin/src/StrapiApp.mjs +2 -2
- package/dist/admin/admin/src/StrapiApp.mjs.map +1 -1
- package/dist/admin/admin/src/assets/images/free-trial.png.js.map +1 -1
- package/dist/admin/admin/src/assets/images/free-trial.png.mjs.map +1 -1
- package/dist/admin/admin/src/assets/images/logo-strapi-2022.svg.js.map +1 -1
- package/dist/admin/admin/src/assets/images/logo-strapi-2022.svg.mjs.map +1 -1
- package/dist/admin/admin/src/components/ConfirmDialog.js.map +1 -1
- package/dist/admin/admin/src/components/ConfirmDialog.mjs.map +1 -1
- package/dist/admin/admin/src/components/ContentBox.js.map +1 -1
- package/dist/admin/admin/src/components/ContentBox.mjs.map +1 -1
- package/dist/admin/admin/src/components/Context.js.map +1 -1
- package/dist/admin/admin/src/components/Context.mjs.map +1 -1
- package/dist/admin/admin/src/components/DescriptionComponentRenderer.js.map +1 -1
- package/dist/admin/admin/src/components/DescriptionComponentRenderer.mjs.map +1 -1
- package/dist/admin/admin/src/components/DragLayer.js.map +1 -1
- package/dist/admin/admin/src/components/DragLayer.mjs.map +1 -1
- package/dist/admin/admin/src/components/ErrorElement.js.map +1 -1
- package/dist/admin/admin/src/components/ErrorElement.mjs.map +1 -1
- package/dist/admin/admin/src/components/Filters.js.map +1 -1
- package/dist/admin/admin/src/components/Filters.mjs +1 -1
- package/dist/admin/admin/src/components/Filters.mjs.map +1 -1
- package/dist/admin/admin/src/components/Form.js +14 -0
- package/dist/admin/admin/src/components/Form.js.map +1 -1
- package/dist/admin/admin/src/components/Form.mjs +15 -1
- package/dist/admin/admin/src/components/Form.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Boolean.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Boolean.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Checkbox.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Checkbox.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Date.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Date.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/DateTime.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/DateTime.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Email.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Email.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Enumeration.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Json.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Json.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Number.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Number.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Password.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Password.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Renderer.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Renderer.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/String.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/String.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Textarea.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Textarea.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Time.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Time.mjs.map +1 -1
- package/dist/admin/admin/src/components/GapDropZone.js.map +1 -1
- package/dist/admin/admin/src/components/GapDropZone.mjs.map +1 -1
- package/dist/admin/admin/src/components/GradientBadge.js.map +1 -1
- package/dist/admin/admin/src/components/GradientBadge.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Context.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Context.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/GuidedTourProvider.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Overview.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Overview.mjs +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Overview.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/ApiTokensSteps.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/ApiTokensSteps.mjs +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/ApiTokensSteps.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/ContentManagerSteps.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/ContentManagerSteps.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs +2 -2
- package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Tours.js +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Tours.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Tours.mjs +2 -2
- package/dist/admin/admin/src/components/GuidedTour/Tours.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/utils/constants.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/utils/constants.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/utils/migrations.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/utils/migrations.mjs.map +1 -1
- package/dist/admin/admin/src/components/LanguageProvider.js.map +1 -1
- package/dist/admin/admin/src/components/LanguageProvider.mjs.map +1 -1
- package/dist/admin/admin/src/components/Layouts/ActionLayout.js.map +1 -1
- package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs.map +1 -1
- package/dist/admin/admin/src/components/Layouts/ContentLayout.js.map +1 -1
- package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs.map +1 -1
- package/dist/admin/admin/src/components/Layouts/GridLayout.js.map +1 -1
- package/dist/admin/admin/src/components/Layouts/GridLayout.mjs.map +1 -1
- package/dist/admin/admin/src/components/Layouts/HeaderLayout.js.map +1 -1
- package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs +1 -1
- package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs.map +1 -1
- package/dist/admin/admin/src/components/Layouts/Layout.js.map +1 -1
- package/dist/admin/admin/src/components/Layouts/Layout.mjs +1 -1
- package/dist/admin/admin/src/components/Layouts/Layout.mjs.map +1 -1
- package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
- package/dist/admin/admin/src/components/LeftMenu.mjs +1 -1
- package/dist/admin/admin/src/components/LeftMenu.mjs.map +1 -1
- package/dist/admin/admin/src/components/MainNav/MainNav.js.map +1 -1
- package/dist/admin/admin/src/components/MainNav/MainNav.mjs.map +1 -1
- package/dist/admin/admin/src/components/MainNav/MainNavLinks.js.map +1 -1
- package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs +1 -1
- package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavBrand.js.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavBrand.mjs.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs +2 -2
- package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavLink.js.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavLink.mjs +2 -2
- package/dist/admin/admin/src/components/MainNav/NavLink.mjs.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavUser.js.map +1 -1
- package/dist/admin/admin/src/components/MainNav/NavUser.mjs +2 -2
- package/dist/admin/admin/src/components/MainNav/NavUser.mjs.map +1 -1
- package/dist/admin/admin/src/components/MainNav/TrialCountdown.js.map +1 -1
- package/dist/admin/admin/src/components/MainNav/TrialCountdown.mjs +1 -1
- package/dist/admin/admin/src/components/MainNav/TrialCountdown.mjs.map +1 -1
- package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
- package/dist/admin/admin/src/components/NpsSurvey.mjs.map +1 -1
- package/dist/admin/admin/src/components/PageHelpers.js.map +1 -1
- package/dist/admin/admin/src/components/PageHelpers.mjs +2 -2
- package/dist/admin/admin/src/components/PageHelpers.mjs.map +1 -1
- package/dist/admin/admin/src/components/Pagination.js.map +1 -1
- package/dist/admin/admin/src/components/Pagination.mjs +1 -1
- package/dist/admin/admin/src/components/Pagination.mjs.map +1 -1
- package/dist/admin/admin/src/components/PluginsInitializer.js.map +1 -1
- package/dist/admin/admin/src/components/PluginsInitializer.mjs.map +1 -1
- package/dist/admin/admin/src/components/PrivateRoute.js.map +1 -1
- package/dist/admin/admin/src/components/PrivateRoute.mjs.map +1 -1
- package/dist/admin/admin/src/components/Providers.js.map +1 -1
- package/dist/admin/admin/src/components/Providers.mjs.map +1 -1
- package/dist/admin/admin/src/components/RelativeTime.js.map +1 -1
- package/dist/admin/admin/src/components/RelativeTime.mjs.map +1 -1
- package/dist/admin/admin/src/components/ResizeIndicator.js.map +1 -1
- package/dist/admin/admin/src/components/ResizeIndicator.mjs.map +1 -1
- package/dist/admin/admin/src/components/SearchInput.js.map +1 -1
- package/dist/admin/admin/src/components/SearchInput.mjs.map +1 -1
- package/dist/admin/admin/src/components/SubNav.js.map +1 -1
- package/dist/admin/admin/src/components/SubNav.mjs +3 -3
- package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
- package/dist/admin/admin/src/components/Table.js.map +1 -1
- package/dist/admin/admin/src/components/Table.mjs +1 -1
- package/dist/admin/admin/src/components/Table.mjs.map +1 -1
- package/dist/admin/admin/src/components/Theme.js.map +1 -1
- package/dist/admin/admin/src/components/Theme.mjs.map +1 -1
- package/dist/admin/admin/src/components/UnauthenticatedLogo.js.map +1 -1
- package/dist/admin/admin/src/components/UnauthenticatedLogo.mjs.map +1 -1
- package/dist/admin/admin/src/components/UpsellBanner.js.map +1 -1
- package/dist/admin/admin/src/components/UpsellBanner.mjs.map +1 -1
- package/dist/admin/admin/src/components/WidgetHelpers.js.map +1 -1
- package/dist/admin/admin/src/components/WidgetHelpers.mjs +3 -3
- package/dist/admin/admin/src/components/WidgetHelpers.mjs.map +1 -1
- package/dist/admin/admin/src/components/WidgetRoot.js.map +1 -1
- package/dist/admin/admin/src/components/WidgetRoot.mjs +2 -2
- package/dist/admin/admin/src/components/WidgetRoot.mjs.map +1 -1
- package/dist/admin/admin/src/components/Widgets.js.map +1 -1
- package/dist/admin/admin/src/components/Widgets.mjs +3 -3
- package/dist/admin/admin/src/components/Widgets.mjs.map +1 -1
- package/dist/admin/admin/src/constants/filters.js.map +1 -1
- package/dist/admin/admin/src/constants/filters.mjs.map +1 -1
- package/dist/admin/admin/src/constants/theme.js.map +1 -1
- package/dist/admin/admin/src/constants/theme.mjs.map +1 -1
- package/dist/admin/admin/src/constants.js.map +1 -1
- package/dist/admin/admin/src/constants.mjs.map +1 -1
- package/dist/admin/admin/src/core/apis/CustomFields.js.map +1 -1
- package/dist/admin/admin/src/core/apis/CustomFields.mjs.map +1 -1
- package/dist/admin/admin/src/core/apis/Plugin.js.map +1 -1
- package/dist/admin/admin/src/core/apis/Plugin.mjs.map +1 -1
- package/dist/admin/admin/src/core/apis/Widgets.js.map +1 -1
- package/dist/admin/admin/src/core/apis/Widgets.mjs.map +1 -1
- package/dist/admin/admin/src/core/apis/rbac.js.map +1 -1
- package/dist/admin/admin/src/core/apis/rbac.mjs.map +1 -1
- package/dist/admin/admin/src/core/apis/router.js.map +1 -1
- package/dist/admin/admin/src/core/apis/router.mjs.map +1 -1
- package/dist/admin/admin/src/core/store/configure.js.map +1 -1
- package/dist/admin/admin/src/core/store/configure.mjs.map +1 -1
- package/dist/admin/admin/src/core/store/hooks.js.map +1 -1
- package/dist/admin/admin/src/core/store/hooks.mjs.map +1 -1
- package/dist/admin/admin/src/core/utils/basename.js.map +1 -1
- package/dist/admin/admin/src/core/utils/basename.mjs.map +1 -1
- package/dist/admin/admin/src/core/utils/createHook.js.map +1 -1
- package/dist/admin/admin/src/core/utils/createHook.mjs.map +1 -1
- package/dist/admin/admin/src/features/AppInfo.js.map +1 -1
- package/dist/admin/admin/src/features/AppInfo.mjs.map +1 -1
- package/dist/admin/admin/src/features/Auth.js +0 -1
- package/dist/admin/admin/src/features/Auth.js.map +1 -1
- package/dist/admin/admin/src/features/Auth.mjs +1 -2
- package/dist/admin/admin/src/features/Auth.mjs.map +1 -1
- package/dist/admin/admin/src/features/BackButton.js.map +1 -1
- package/dist/admin/admin/src/features/BackButton.mjs.map +1 -1
- package/dist/admin/admin/src/features/Configuration.js.map +1 -1
- package/dist/admin/admin/src/features/Configuration.mjs.map +1 -1
- package/dist/admin/admin/src/features/Notifications.js.map +1 -1
- package/dist/admin/admin/src/features/Notifications.mjs.map +1 -1
- package/dist/admin/admin/src/features/StrapiApp.js.map +1 -1
- package/dist/admin/admin/src/features/StrapiApp.mjs.map +1 -1
- package/dist/admin/admin/src/features/Tracking.js.map +1 -1
- package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
- package/dist/admin/admin/src/features/Widgets.js.map +1 -1
- package/dist/admin/admin/src/features/Widgets.mjs +1 -1
- package/dist/admin/admin/src/features/Widgets.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useAPIErrorHandler.js.map +1 -1
- package/dist/admin/admin/src/hooks/useAPIErrorHandler.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useAdminRoles.js.map +1 -1
- package/dist/admin/admin/src/hooks/useAdminRoles.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useClipboard.js.map +1 -1
- package/dist/admin/admin/src/hooks/useClipboard.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useControllableState.js.map +1 -1
- package/dist/admin/admin/src/hooks/useControllableState.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useDebounce.js.map +1 -1
- package/dist/admin/admin/src/hooks/useDebounce.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useDeviceType.js.map +1 -1
- package/dist/admin/admin/src/hooks/useDeviceType.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useElementOnScreen.js.map +1 -1
- package/dist/admin/admin/src/hooks/useElementOnScreen.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useEnterprise.js.map +1 -1
- package/dist/admin/admin/src/hooks/useEnterprise.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useFetchClient.js.map +1 -1
- package/dist/admin/admin/src/hooks/useFetchClient.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useFocusInputField.js.map +1 -1
- package/dist/admin/admin/src/hooks/useFocusInputField.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useForceUpdate.js.map +1 -1
- package/dist/admin/admin/src/hooks/useForceUpdate.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useInjectReducer.js.map +1 -1
- package/dist/admin/admin/src/hooks/useInjectReducer.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useIsMounted.js.map +1 -1
- package/dist/admin/admin/src/hooks/useIsMounted.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useMediaQuery.js.map +1 -1
- package/dist/admin/admin/src/hooks/useMediaQuery.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useMenu.js.map +1 -1
- package/dist/admin/admin/src/hooks/useMenu.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useOnce.js.map +1 -1
- package/dist/admin/admin/src/hooks/useOnce.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/usePersistentState.js.map +1 -1
- package/dist/admin/admin/src/hooks/usePersistentState.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/usePrev.js.map +1 -1
- package/dist/admin/admin/src/hooks/usePrev.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useQueryParams.js.map +1 -1
- package/dist/admin/admin/src/hooks/useQueryParams.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useRBAC.js.map +1 -1
- package/dist/admin/admin/src/hooks/useRBAC.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useSettingsMenu.js.map +1 -1
- package/dist/admin/admin/src/hooks/useSettingsMenu.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useThrottledCallback.js.map +1 -1
- package/dist/admin/admin/src/hooks/useThrottledCallback.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useWarnIfUnsavedChanges.js.map +1 -1
- package/dist/admin/admin/src/hooks/useWarnIfUnsavedChanges.mjs.map +1 -1
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
- package/dist/admin/admin/src/layouts/UnauthenticatedLayout.js.map +1 -1
- package/dist/admin/admin/src/layouts/UnauthenticatedLayout.mjs +1 -1
- package/dist/admin/admin/src/layouts/UnauthenticatedLayout.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/AuthPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/AuthPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/ForgotPassword.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/ForgotPassword.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/ForgotPasswordSuccess.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/ForgotPasswordSuccess.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Login.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Login.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Oops.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Oops.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Register.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Register.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/ResetPassword.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/ResetPassword.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/constants.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/constants.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/HomePage.mjs +1 -1
- package/dist/admin/admin/src/pages/Home/HomePage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.mjs +1 -1
- package/dist/admin/admin/src/pages/Home/components/AddWidgetModal.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.mjs +1 -1
- package/dist/admin/admin/src/pages/Home/components/FreeTrialEndedModal.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.mjs +1 -1
- package/dist/admin/admin/src/pages/Home/components/FreeTrialWelcomeModal.mjs.map +1 -1
- package/dist/admin/admin/src/pages/NotFoundPage.js.map +1 -1
- package/dist/admin/admin/src/pages/NotFoundPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/ProfilePage.js.map +1 -1
- package/dist/admin/admin/src/pages/ProfilePage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/Layout.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/Layout.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-audit-logs-illustration-dark.jpg.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-audit-logs-illustration-dark.jpg.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-audit-logs-illustration-light.jpg.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-audit-logs-illustration-light.jpg.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-content-history-illustration-dark.jpg.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-content-history-illustration-dark.jpg.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-content-history-illustration-light.jpg.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-content-history-illustration-light.jpg.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-sso-illustration-dark.jpg.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-sso-illustration-dark.jpg.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-sso-illustration-light.jpg.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/assets/purchase-page-sso-illustration-light.jpg.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/LifeSpanInput.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/LifeSpanInput.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.mjs +2 -2
- package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenDescription.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenDescription.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenName.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenName.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenTypeSelect.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenTypeSelect.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/constants.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/constants.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/CreateView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/CreateView.mjs.map +1 -1
- 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/EditViewPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/apiTokenPermissions.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/apiTokenPermissions.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/ActionBoundRoutes.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/ActionBoundRoutes.mjs.map +1 -1
- 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/BoundRoute.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.mjs.map +1 -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/components/CollapsableContentType.mjs +2 -2
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/CollapsableContentType.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/ContentTypesSection.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/ContentTypesSection.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/FormApiTokenContainer.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/FormApiTokenContainer.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/Permissions.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/Permissions.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/constants.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/constants.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/reducer.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/utils/getDateOfExpiration.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/utils/getDateOfExpiration.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/utils/transformPermissionsData.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/utils/transformPermissionsData.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +1 -1
- 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 +2 -2
- 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.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.mjs +2 -2
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/LogoInput.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/utils/constants.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/utils/constants.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/utils/files.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/utils/files.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/InstalledPlugins.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/PurchaseAuditLogs.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/PurchaseContentHistory.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/PurchaseSingleSignOn.mjs.map +1 -1
- 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 +1 -1
- 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.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.mjs +1 -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.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapseLabel.mjs.map +1 -1
- 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 +1 -1
- 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.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ConditionsButton.mjs.map +1 -1
- 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/ConditionsModal.mjs.map +1 -1
- 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/ContentTypeCollapses.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypeCollapses.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypes.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/ContentTypes.mjs.map +1 -1
- 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/GlobalActions.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/HiddenAction.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/HiddenAction.mjs.map +1 -1
- 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 +1 -1
- 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.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RequiredSign.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RequiredSign.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RoleForm.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RoleForm.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RoleRow.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RoleRow.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RowLabelWithCheckbox.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/RowLabelWithCheckbox.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/hooks/usePermissionsDataManager.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/constants.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/constants.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/createArrayOfValues.mjs.map +1 -1
- 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/difference.mjs.map +1 -1
- 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.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/getCheckboxState.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/getCheckboxState.mjs.map +1 -1
- 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/layouts.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/permissions.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/permissions.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/removeConditionKeyFromData.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/removeConditionKeyFromData.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateConditionsToFalse.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateConditionsToFalse.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateValues.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Roles/utils/updateValues.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/CreateView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/CreateView.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.mjs.map +1 -1
- 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/CreateActionCE.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/MagicLinkCE.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/MagicLinkCE.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/MagicLinkWrapper.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/MagicLinkWrapper.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/NewUserForm.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/NewUserForm.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/components/SelectRoles.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/utils/validation.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/CreatePage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/CreatePage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/EditPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/EditPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.js +1 -3
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.mjs +2 -4
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/Events.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/EventsTable.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/EventsTable.mjs.map +1 -1
- 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/HeadersInput.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/HeadersInput.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/TriggerContainer.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/TriggerContainer.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.mjs +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/utils/forms.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/utils/forms.mjs.map +1 -1
- package/dist/admin/admin/src/pages/UseCasePage.js.map +1 -1
- package/dist/admin/admin/src/pages/UseCasePage.mjs.map +1 -1
- package/dist/admin/admin/src/reducer.js.map +1 -1
- package/dist/admin/admin/src/reducer.mjs +1 -1
- package/dist/admin/admin/src/reducer.mjs.map +1 -1
- package/dist/admin/admin/src/render.js.map +1 -1
- package/dist/admin/admin/src/render.mjs.map +1 -1
- package/dist/admin/admin/src/router.js +4 -4
- package/dist/admin/admin/src/router.js.map +1 -1
- package/dist/admin/admin/src/router.mjs.map +1 -1
- package/dist/admin/admin/src/selectors.js.map +1 -1
- package/dist/admin/admin/src/selectors.mjs.map +1 -1
- package/dist/admin/admin/src/services/admin.js.map +1 -1
- package/dist/admin/admin/src/services/admin.mjs.map +1 -1
- package/dist/admin/admin/src/services/api.js.map +1 -1
- package/dist/admin/admin/src/services/api.mjs.map +1 -1
- package/dist/admin/admin/src/services/apiTokens.js.map +1 -1
- package/dist/admin/admin/src/services/apiTokens.mjs.map +1 -1
- package/dist/admin/admin/src/services/auth.js.map +1 -1
- package/dist/admin/admin/src/services/auth.mjs.map +1 -1
- package/dist/admin/admin/src/services/contentApi.js.map +1 -1
- package/dist/admin/admin/src/services/contentApi.mjs.map +1 -1
- package/dist/admin/admin/src/services/homepage.js.map +1 -1
- package/dist/admin/admin/src/services/homepage.mjs.map +1 -1
- package/dist/admin/admin/src/services/transferTokens.js.map +1 -1
- package/dist/admin/admin/src/services/transferTokens.mjs.map +1 -1
- package/dist/admin/admin/src/services/users.js.map +1 -1
- package/dist/admin/admin/src/services/users.mjs.map +1 -1
- package/dist/admin/admin/src/services/webhooks.js.map +1 -1
- package/dist/admin/admin/src/services/webhooks.mjs.map +1 -1
- package/dist/admin/admin/src/translations/es.json.js +356 -120
- package/dist/admin/admin/src/translations/es.json.js.map +1 -1
- package/dist/admin/admin/src/translations/es.json.mjs +355 -121
- package/dist/admin/admin/src/translations/es.json.mjs.map +1 -1
- package/dist/admin/admin/src/translations/fr.json.js +126 -1
- package/dist/admin/admin/src/translations/fr.json.js.map +1 -1
- package/dist/admin/admin/src/translations/fr.json.mjs +126 -1
- package/dist/admin/admin/src/translations/fr.json.mjs.map +1 -1
- package/dist/admin/admin/src/translations/languageNativeNames.js.map +1 -1
- package/dist/admin/admin/src/translations/languageNativeNames.mjs.map +1 -1
- package/dist/admin/admin/src/utils/arrays.js.map +1 -1
- package/dist/admin/admin/src/utils/arrays.mjs.map +1 -1
- package/dist/admin/admin/src/utils/baseQuery.js.map +1 -1
- package/dist/admin/admin/src/utils/baseQuery.mjs.map +1 -1
- package/dist/admin/admin/src/utils/cookies.js.map +1 -1
- package/dist/admin/admin/src/utils/cookies.mjs.map +1 -1
- package/dist/admin/admin/src/utils/deviceId.js.map +1 -1
- package/dist/admin/admin/src/utils/deviceId.mjs.map +1 -1
- package/dist/admin/admin/src/utils/getFetchClient.js +1 -3
- package/dist/admin/admin/src/utils/getFetchClient.js.map +1 -1
- package/dist/admin/admin/src/utils/getFetchClient.mjs +1 -3
- package/dist/admin/admin/src/utils/getFetchClient.mjs.map +1 -1
- package/dist/admin/admin/src/utils/getPrefixedId.js.map +1 -1
- package/dist/admin/admin/src/utils/getPrefixedId.mjs.map +1 -1
- package/dist/admin/admin/src/utils/locales.js.map +1 -1
- package/dist/admin/admin/src/utils/locales.mjs.map +1 -1
- package/dist/admin/admin/src/utils/normalizeAPIError.js.map +1 -1
- package/dist/admin/admin/src/utils/normalizeAPIError.mjs.map +1 -1
- package/dist/admin/admin/src/utils/objects.js.map +1 -1
- package/dist/admin/admin/src/utils/objects.mjs.map +1 -1
- package/dist/admin/admin/src/utils/once.js.map +1 -1
- package/dist/admin/admin/src/utils/once.mjs.map +1 -1
- package/dist/admin/admin/src/utils/resizeHandlers.js.map +1 -1
- package/dist/admin/admin/src/utils/resizeHandlers.mjs.map +1 -1
- package/dist/admin/admin/src/utils/rulesEngine.js.map +1 -1
- package/dist/admin/admin/src/utils/rulesEngine.mjs.map +1 -1
- package/dist/admin/admin/src/utils/shims.js.map +1 -1
- package/dist/admin/admin/src/utils/shims.mjs.map +1 -1
- package/dist/admin/admin/src/utils/strings.js.map +1 -1
- package/dist/admin/admin/src/utils/strings.mjs.map +1 -1
- package/dist/admin/admin/src/utils/translatedErrors.js.map +1 -1
- package/dist/admin/admin/src/utils/translatedErrors.mjs.map +1 -1
- package/dist/admin/admin/src/utils/urls.js.map +1 -1
- package/dist/admin/admin/src/utils/urls.mjs.map +1 -1
- package/dist/admin/admin/src/utils/users.js.map +1 -1
- package/dist/admin/admin/src/utils/users.mjs.map +1 -1
- package/dist/admin/admin/src/utils/widgetLayout.js.map +1 -1
- package/dist/admin/admin/src/utils/widgetLayout.mjs.map +1 -1
- package/dist/admin/admin/tests/mockData.js.map +1 -1
- package/dist/admin/admin/tests/mockData.mjs.map +1 -1
- package/dist/admin/admin/tests/server.js.map +1 -1
- package/dist/admin/admin/tests/server.mjs.map +1 -1
- package/dist/admin/admin/tests/store.js.map +1 -1
- package/dist/admin/admin/tests/store.mjs.map +1 -1
- package/dist/admin/admin/tests/utils.js.map +1 -1
- package/dist/admin/admin/tests/utils.mjs +1 -1
- package/dist/admin/admin/tests/utils.mjs.map +1 -1
- package/dist/admin/ee/admin/src/components/AuditLogs/Widgets.js.map +1 -1
- package/dist/admin/ee/admin/src/components/AuditLogs/Widgets.mjs.map +1 -1
- package/dist/admin/ee/admin/src/components/GlobalNotifications.js.map +1 -1
- package/dist/admin/ee/admin/src/components/GlobalNotifications.mjs.map +1 -1
- package/dist/admin/ee/admin/src/constants.js.map +1 -1
- package/dist/admin/ee/admin/src/constants.mjs.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useAIAvailability.js.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useAIAvailability.mjs.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.js.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.mjs.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.js.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useLicenseLimitNotification.mjs.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useLicenseLimits.js.map +1 -1
- package/dist/admin/ee/admin/src/hooks/useLicenseLimits.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.mjs +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/components/Login.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.mjs +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/components/Providers.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.mjs +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/components/SSOProviders.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/constants.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthPage/constants.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthResponse.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/AuthResponse.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/HomePage.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/HomePage.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/constants.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/constants.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/ComboboxFilter.mjs.map +1 -1
- 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/components/Modal.mjs +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/components/Modal.mjs.map +1 -1
- 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/useAuditLogsData.mjs.map +1 -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/AuditLogs/hooks/useFormatTimeStamp.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getDisplayedFilters.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/ListPage.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/ListPage.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/MagicLinkEE.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/ModalForm.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/ModalForm.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Webhooks/components/EventsTable.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Webhooks/components/EventsTable.mjs.map +1 -1
- package/dist/admin/ee/admin/src/services/ai.js.map +1 -1
- package/dist/admin/ee/admin/src/services/ai.mjs.map +1 -1
- package/dist/admin/ee/admin/src/services/auditLogs.js.map +1 -1
- package/dist/admin/ee/admin/src/services/auditLogs.mjs.map +1 -1
- package/dist/admin/index.js +10 -6
- 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/components/DefaultDocument.js.map +1 -1
- package/dist/admin/src/components/DefaultDocument.mjs.map +1 -1
- package/dist/admin/src/components/Form.d.ts +1 -0
- package/dist/admin/src/components/NoJavascript.js.map +1 -1
- package/dist/admin/src/components/NoJavascript.mjs.map +1 -1
- package/dist/admin/src/index.d.ts +1 -0
- package/dist/server/ee/server/src/ai/containers/ai.js +0 -4
- package/dist/server/ee/server/src/ai/containers/ai.js.map +1 -1
- package/dist/server/ee/server/src/ai/containers/ai.mjs +0 -4
- package/dist/server/ee/server/src/ai/containers/ai.mjs.map +1 -1
- package/dist/server/ee/server/src/ai/controllers/ai.js +0 -4
- package/dist/server/ee/server/src/ai/controllers/ai.js.map +1 -1
- package/dist/server/ee/server/src/ai/controllers/ai.mjs +0 -4
- package/dist/server/ee/server/src/ai/controllers/ai.mjs.map +1 -1
- package/dist/server/ee/server/src/ai/routes/ai.js.map +1 -1
- package/dist/server/ee/server/src/ai/routes/ai.mjs.map +1 -1
- package/dist/server/ee/server/src/audit-logs/content-types/audit-log.js.map +1 -1
- package/dist/server/ee/server/src/audit-logs/content-types/audit-log.mjs.map +1 -1
- package/dist/server/ee/server/src/audit-logs/controllers/audit-logs.js.map +1 -1
- package/dist/server/ee/server/src/audit-logs/controllers/audit-logs.mjs.map +1 -1
- package/dist/server/ee/server/src/audit-logs/routes/audit-logs.js.map +1 -1
- package/dist/server/ee/server/src/audit-logs/routes/audit-logs.mjs.map +1 -1
- package/dist/server/ee/server/src/audit-logs/services/audit-logs.js.map +1 -1
- package/dist/server/ee/server/src/audit-logs/services/audit-logs.mjs.map +1 -1
- package/dist/server/ee/server/src/audit-logs/services/lifecycles.js.map +1 -1
- package/dist/server/ee/server/src/audit-logs/services/lifecycles.mjs.map +1 -1
- package/dist/server/ee/server/src/audit-logs/validation/audit-logs.js.map +1 -1
- package/dist/server/ee/server/src/audit-logs/validation/audit-logs.mjs.map +1 -1
- package/dist/server/ee/server/src/bootstrap.js.map +1 -1
- package/dist/server/ee/server/src/bootstrap.mjs.map +1 -1
- package/dist/server/ee/server/src/config/admin-actions.js.map +1 -1
- package/dist/server/ee/server/src/config/admin-actions.mjs.map +1 -1
- package/dist/server/ee/server/src/content-types/index.js.map +1 -1
- package/dist/server/ee/server/src/content-types/index.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/admin.js.map +1 -1
- package/dist/server/ee/server/src/controllers/admin.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/constants.js.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/constants.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.js.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/utils.js.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/utils.mjs +1 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/utils.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication.js +5 -5
- package/dist/server/ee/server/src/controllers/authentication.js.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/index.js.map +1 -1
- package/dist/server/ee/server/src/controllers/index.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/role.js.map +1 -1
- package/dist/server/ee/server/src/controllers/role.mjs +1 -1
- package/dist/server/ee/server/src/controllers/role.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/user.js +4 -4
- package/dist/server/ee/server/src/controllers/user.js.map +1 -1
- package/dist/server/ee/server/src/controllers/user.mjs.map +1 -1
- package/dist/server/ee/server/src/index.js +16 -16
- package/dist/server/ee/server/src/index.js.map +1 -1
- package/dist/server/ee/server/src/index.mjs.map +1 -1
- package/dist/server/ee/server/src/register.js.map +1 -1
- package/dist/server/ee/server/src/register.mjs.map +1 -1
- package/dist/server/ee/server/src/routes/index.js.map +1 -1
- package/dist/server/ee/server/src/routes/index.mjs.map +1 -1
- package/dist/server/ee/server/src/routes/license-limit.js.map +1 -1
- package/dist/server/ee/server/src/routes/license-limit.mjs.map +1 -1
- package/dist/server/ee/server/src/routes/sso.js.map +1 -1
- package/dist/server/ee/server/src/routes/sso.mjs.map +1 -1
- package/dist/server/ee/server/src/routes/utils.js.map +1 -1
- package/dist/server/ee/server/src/routes/utils.mjs.map +1 -1
- package/dist/server/ee/server/src/services/auth.js.map +1 -1
- package/dist/server/ee/server/src/services/auth.mjs.map +1 -1
- package/dist/server/ee/server/src/services/index.js.map +1 -1
- package/dist/server/ee/server/src/services/index.mjs.map +1 -1
- package/dist/server/ee/server/src/services/metrics.js.map +1 -1
- package/dist/server/ee/server/src/services/metrics.mjs.map +1 -1
- package/dist/server/ee/server/src/services/passport/provider-registry.js.map +1 -1
- package/dist/server/ee/server/src/services/passport/provider-registry.mjs.map +1 -1
- package/dist/server/ee/server/src/services/passport/sso.js.map +1 -1
- package/dist/server/ee/server/src/services/passport/sso.mjs.map +1 -1
- package/dist/server/ee/server/src/services/passport.js.map +1 -1
- package/dist/server/ee/server/src/services/passport.mjs.map +1 -1
- package/dist/server/ee/server/src/services/persist-tables.js.map +1 -1
- package/dist/server/ee/server/src/services/persist-tables.mjs +4 -4
- package/dist/server/ee/server/src/services/persist-tables.mjs.map +1 -1
- package/dist/server/ee/server/src/services/role.js.map +1 -1
- package/dist/server/ee/server/src/services/role.mjs.map +1 -1
- package/dist/server/ee/server/src/services/seat-enforcement.js.map +1 -1
- package/dist/server/ee/server/src/services/seat-enforcement.mjs +1 -1
- package/dist/server/ee/server/src/services/seat-enforcement.mjs.map +1 -1
- package/dist/server/ee/server/src/services/user.js.map +1 -1
- package/dist/server/ee/server/src/services/user.mjs +1 -1
- package/dist/server/ee/server/src/services/user.mjs.map +1 -1
- package/dist/server/ee/server/src/utils/index.js.map +1 -1
- package/dist/server/ee/server/src/utils/index.mjs.map +1 -1
- package/dist/server/ee/server/src/utils/sso-lock.js.map +1 -1
- package/dist/server/ee/server/src/utils/sso-lock.mjs.map +1 -1
- package/dist/server/ee/server/src/validation/authentication.js.map +1 -1
- package/dist/server/ee/server/src/validation/authentication.mjs.map +1 -1
- package/dist/server/ee/server/src/validation/role.js.map +1 -1
- package/dist/server/ee/server/src/validation/role.mjs.map +1 -1
- package/dist/server/ee/server/src/validation/user.js.map +1 -1
- package/dist/server/ee/server/src/validation/user.mjs.map +1 -1
- package/dist/server/index.js +18 -18
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +2 -2
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/server/src/bootstrap.js.map +1 -1
- package/dist/server/server/src/bootstrap.mjs +1 -1
- package/dist/server/server/src/bootstrap.mjs.map +1 -1
- package/dist/server/server/src/config/admin-actions.js.map +1 -1
- package/dist/server/server/src/config/admin-actions.mjs.map +1 -1
- package/dist/server/server/src/config/admin-conditions.js.map +1 -1
- package/dist/server/server/src/config/admin-conditions.mjs.map +1 -1
- package/dist/server/server/src/config/email-templates/forgot-password.js.map +1 -1
- package/dist/server/server/src/config/email-templates/forgot-password.mjs.map +1 -1
- package/dist/server/server/src/config/index.js.map +1 -1
- package/dist/server/server/src/config/index.mjs.map +1 -1
- package/dist/server/server/src/content-types/Permission.js.map +1 -1
- package/dist/server/server/src/content-types/Permission.mjs.map +1 -1
- package/dist/server/server/src/content-types/Role.js.map +1 -1
- package/dist/server/server/src/content-types/Role.mjs.map +1 -1
- package/dist/server/server/src/content-types/User.js.map +1 -1
- package/dist/server/server/src/content-types/User.mjs.map +1 -1
- package/dist/server/server/src/content-types/api-token-permission.js.map +1 -1
- package/dist/server/server/src/content-types/api-token-permission.mjs.map +1 -1
- package/dist/server/server/src/content-types/api-token.js.map +1 -1
- package/dist/server/server/src/content-types/api-token.mjs.map +1 -1
- package/dist/server/server/src/content-types/index.js.map +1 -1
- package/dist/server/server/src/content-types/index.mjs.map +1 -1
- package/dist/server/server/src/content-types/session.js.map +1 -1
- package/dist/server/server/src/content-types/session.mjs.map +1 -1
- package/dist/server/server/src/content-types/transfer-token-permission.js.map +1 -1
- package/dist/server/server/src/content-types/transfer-token-permission.mjs.map +1 -1
- package/dist/server/server/src/content-types/transfer-token.js.map +1 -1
- package/dist/server/server/src/content-types/transfer-token.mjs.map +1 -1
- 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/api-token.js.map +1 -1
- package/dist/server/server/src/controllers/api-token.mjs +3 -3
- package/dist/server/server/src/controllers/api-token.mjs.map +1 -1
- package/dist/server/server/src/controllers/authenticated-user.js.map +1 -1
- package/dist/server/server/src/controllers/authenticated-user.mjs.map +1 -1
- package/dist/server/server/src/controllers/authentication.js.map +1 -1
- package/dist/server/server/src/controllers/authentication.mjs +2 -2
- package/dist/server/server/src/controllers/authentication.mjs.map +1 -1
- package/dist/server/server/src/controllers/content-api.js.map +1 -1
- package/dist/server/server/src/controllers/content-api.mjs.map +1 -1
- package/dist/server/server/src/controllers/formatters/conditions.js.map +1 -1
- package/dist/server/server/src/controllers/formatters/conditions.mjs.map +1 -1
- package/dist/server/server/src/controllers/homepage.js.map +1 -1
- package/dist/server/server/src/controllers/homepage.mjs.map +1 -1
- package/dist/server/server/src/controllers/index.js.map +1 -1
- package/dist/server/server/src/controllers/index.mjs.map +1 -1
- package/dist/server/server/src/controllers/permission.js.map +1 -1
- package/dist/server/server/src/controllers/permission.mjs.map +1 -1
- package/dist/server/server/src/controllers/role.js.map +1 -1
- package/dist/server/server/src/controllers/role.mjs +1 -1
- package/dist/server/server/src/controllers/role.mjs.map +1 -1
- package/dist/server/server/src/controllers/transfer/index.js.map +1 -1
- package/dist/server/server/src/controllers/transfer/index.mjs.map +1 -1
- package/dist/server/server/src/controllers/transfer/runner.js.map +1 -1
- package/dist/server/server/src/controllers/transfer/runner.mjs.map +1 -1
- package/dist/server/server/src/controllers/transfer/token.js.map +1 -1
- package/dist/server/server/src/controllers/transfer/token.mjs +2 -2
- package/dist/server/server/src/controllers/transfer/token.mjs.map +1 -1
- package/dist/server/server/src/controllers/user.js.map +1 -1
- package/dist/server/server/src/controllers/user.mjs +1 -1
- package/dist/server/server/src/controllers/user.mjs.map +1 -1
- package/dist/server/server/src/controllers/validation/schema.js.map +1 -1
- package/dist/server/server/src/controllers/validation/schema.mjs.map +1 -1
- package/dist/server/server/src/controllers/webhooks.js.map +1 -1
- package/dist/server/server/src/controllers/webhooks.mjs.map +1 -1
- package/dist/server/server/src/destroy.js.map +1 -1
- package/dist/server/server/src/destroy.mjs.map +1 -1
- package/dist/server/server/src/domain/action/index.js.map +1 -1
- package/dist/server/server/src/domain/action/index.mjs.map +1 -1
- package/dist/server/server/src/domain/action/provider.js.map +1 -1
- package/dist/server/server/src/domain/action/provider.mjs +1 -1
- package/dist/server/server/src/domain/action/provider.mjs.map +1 -1
- package/dist/server/server/src/domain/condition/index.js.map +1 -1
- package/dist/server/server/src/domain/condition/index.mjs.map +1 -1
- package/dist/server/server/src/domain/condition/provider.js.map +1 -1
- package/dist/server/server/src/domain/condition/provider.mjs.map +1 -1
- package/dist/server/server/src/domain/permission/index.js.map +1 -1
- package/dist/server/server/src/domain/permission/index.mjs +1 -1
- package/dist/server/server/src/domain/permission/index.mjs.map +1 -1
- package/dist/server/server/src/domain/user.js.map +1 -1
- package/dist/server/server/src/domain/user.mjs.map +1 -1
- package/dist/server/server/src/middlewares/data-transfer.js.map +1 -1
- package/dist/server/server/src/middlewares/data-transfer.mjs.map +1 -1
- package/dist/server/server/src/middlewares/index.js.map +1 -1
- package/dist/server/server/src/middlewares/index.mjs.map +1 -1
- package/dist/server/server/src/middlewares/rateLimit.js.map +1 -1
- package/dist/server/server/src/middlewares/rateLimit.mjs.map +1 -1
- package/dist/server/server/src/policies/hasPermissions.js.map +1 -1
- package/dist/server/server/src/policies/hasPermissions.mjs.map +1 -1
- package/dist/server/server/src/policies/index.js.map +1 -1
- package/dist/server/server/src/policies/index.mjs.map +1 -1
- package/dist/server/server/src/policies/isAuthenticatedAdmin.js.map +1 -1
- package/dist/server/server/src/policies/isAuthenticatedAdmin.mjs.map +1 -1
- package/dist/server/server/src/policies/isTelemetryEnabled.js.map +1 -1
- package/dist/server/server/src/policies/isTelemetryEnabled.mjs.map +1 -1
- package/dist/server/server/src/register.js.map +1 -1
- package/dist/server/server/src/register.mjs.map +1 -1
- package/dist/server/server/src/routes/admin.js.map +1 -1
- package/dist/server/server/src/routes/admin.mjs.map +1 -1
- package/dist/server/server/src/routes/api-tokens.js.map +1 -1
- package/dist/server/server/src/routes/api-tokens.mjs.map +1 -1
- package/dist/server/server/src/routes/authentication.js.map +1 -1
- package/dist/server/server/src/routes/authentication.mjs.map +1 -1
- package/dist/server/server/src/routes/content-api.js.map +1 -1
- package/dist/server/server/src/routes/content-api.mjs.map +1 -1
- package/dist/server/server/src/routes/homepage.js.map +1 -1
- package/dist/server/server/src/routes/homepage.mjs.map +1 -1
- package/dist/server/server/src/routes/index.js.map +1 -1
- package/dist/server/server/src/routes/index.mjs.map +1 -1
- package/dist/server/server/src/routes/permissions.js.map +1 -1
- package/dist/server/server/src/routes/permissions.mjs.map +1 -1
- package/dist/server/server/src/routes/roles.js.map +1 -1
- package/dist/server/server/src/routes/roles.mjs.map +1 -1
- 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/transfer.js.map +1 -1
- package/dist/server/server/src/routes/transfer.mjs.map +1 -1
- package/dist/server/server/src/routes/users.js.map +1 -1
- package/dist/server/server/src/routes/users.mjs.map +1 -1
- package/dist/server/server/src/routes/webhooks.js.map +1 -1
- package/dist/server/server/src/routes/webhooks.mjs.map +1 -1
- package/dist/server/server/src/services/action.js.map +1 -1
- package/dist/server/server/src/services/action.mjs.map +1 -1
- package/dist/server/server/src/services/api-token.js.map +1 -1
- package/dist/server/server/src/services/api-token.mjs.map +1 -1
- package/dist/server/server/src/services/auth.js.map +1 -1
- package/dist/server/server/src/services/auth.mjs.map +1 -1
- package/dist/server/server/src/services/condition.js.map +1 -1
- package/dist/server/server/src/services/condition.mjs.map +1 -1
- package/dist/server/server/src/services/constants.js.map +1 -1
- package/dist/server/server/src/services/constants.mjs.map +1 -1
- package/dist/server/server/src/services/content-type.js +9 -9
- package/dist/server/server/src/services/content-type.js.map +1 -1
- package/dist/server/server/src/services/content-type.mjs +1 -1
- package/dist/server/server/src/services/content-type.mjs.map +1 -1
- package/dist/server/server/src/services/encryption.js.map +1 -1
- package/dist/server/server/src/services/encryption.mjs.map +1 -1
- package/dist/server/server/src/services/homepage.js.map +1 -1
- package/dist/server/server/src/services/homepage.mjs +1 -1
- package/dist/server/server/src/services/homepage.mjs.map +1 -1
- package/dist/server/server/src/services/index.js.map +1 -1
- package/dist/server/server/src/services/index.mjs.map +1 -1
- package/dist/server/server/src/services/metrics.js.map +1 -1
- package/dist/server/server/src/services/metrics.mjs.map +1 -1
- package/dist/server/server/src/services/passport/local-strategy.js.map +1 -1
- package/dist/server/server/src/services/passport/local-strategy.mjs.map +1 -1
- package/dist/server/server/src/services/passport.js.map +1 -1
- package/dist/server/server/src/services/passport.mjs.map +1 -1
- package/dist/server/server/src/services/permission/engine.js.map +1 -1
- package/dist/server/server/src/services/permission/engine.mjs.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/index.js.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/index.mjs.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/permission-fields.js.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/permission-fields.mjs.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/query-builders.js.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/query-builders.mjs.map +1 -1
- 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 +2 -2
- package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/validate.js.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/validate.mjs +2 -2
- package/dist/server/server/src/services/permission/permissions-manager/validate.mjs.map +1 -1
- package/dist/server/server/src/services/permission/queries.js +9 -9
- package/dist/server/server/src/services/permission/queries.js.map +1 -1
- package/dist/server/server/src/services/permission/queries.mjs +1 -1
- package/dist/server/server/src/services/permission/queries.mjs.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/builder.js.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/builder.mjs.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/handlers.js +10 -10
- package/dist/server/server/src/services/permission/sections-builder/handlers.js.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/handlers.mjs +1 -1
- package/dist/server/server/src/services/permission/sections-builder/handlers.mjs.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/index.js.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/index.mjs +1 -1
- package/dist/server/server/src/services/permission/sections-builder/index.mjs.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/section.js.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/section.mjs.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/utils.js.map +1 -1
- package/dist/server/server/src/services/permission/sections-builder/utils.mjs.map +1 -1
- package/dist/server/server/src/services/permission.js.map +1 -1
- package/dist/server/server/src/services/permission.mjs.map +1 -1
- package/dist/server/server/src/services/project-settings.js.map +1 -1
- package/dist/server/server/src/services/project-settings.mjs.map +1 -1
- package/dist/server/server/src/services/role.js.map +1 -1
- package/dist/server/server/src/services/role.mjs +2 -2
- package/dist/server/server/src/services/role.mjs.map +1 -1
- package/dist/server/server/src/services/token.js.map +1 -1
- package/dist/server/server/src/services/token.mjs.map +1 -1
- package/dist/server/server/src/services/transfer/permission.js.map +1 -1
- package/dist/server/server/src/services/transfer/permission.mjs.map +1 -1
- package/dist/server/server/src/services/transfer/token.js.map +1 -1
- package/dist/server/server/src/services/transfer/token.mjs +1 -1
- package/dist/server/server/src/services/transfer/token.mjs.map +1 -1
- package/dist/server/server/src/services/transfer/utils.js.map +1 -1
- package/dist/server/server/src/services/transfer/utils.mjs.map +1 -1
- package/dist/server/server/src/services/user.js.map +1 -1
- package/dist/server/server/src/services/user.mjs +2 -2
- package/dist/server/server/src/services/user.mjs.map +1 -1
- package/dist/server/server/src/strategies/admin.js.map +1 -1
- package/dist/server/server/src/strategies/admin.mjs.map +1 -1
- package/dist/server/server/src/strategies/api-token.js.map +1 -1
- package/dist/server/server/src/strategies/api-token.mjs.map +1 -1
- package/dist/server/server/src/strategies/data-transfer.js.map +1 -1
- package/dist/server/server/src/strategies/data-transfer.mjs.map +1 -1
- package/dist/server/server/src/utils/index.js.map +1 -1
- package/dist/server/server/src/utils/index.mjs.map +1 -1
- package/dist/server/server/src/validation/action-provider.js.map +1 -1
- package/dist/server/server/src/validation/action-provider.mjs.map +1 -1
- package/dist/server/server/src/validation/api-tokens.js.map +1 -1
- package/dist/server/server/src/validation/api-tokens.mjs.map +1 -1
- package/dist/server/server/src/validation/authentication/forgot-password.js.map +1 -1
- package/dist/server/server/src/validation/authentication/forgot-password.mjs.map +1 -1
- package/dist/server/server/src/validation/authentication/login.js.map +1 -1
- package/dist/server/server/src/validation/authentication/login.mjs.map +1 -1
- package/dist/server/server/src/validation/authentication/register.js.map +1 -1
- package/dist/server/server/src/validation/authentication/register.mjs.map +1 -1
- package/dist/server/server/src/validation/authentication/reset-password.js.map +1 -1
- package/dist/server/server/src/validation/authentication/reset-password.mjs.map +1 -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-are-correctly-nested.mjs.map +1 -1
- package/dist/server/server/src/validation/common-functions/check-fields-dont-have-duplicates.js.map +1 -1
- package/dist/server/server/src/validation/common-functions/check-fields-dont-have-duplicates.mjs.map +1 -1
- package/dist/server/server/src/validation/common-validators.js +2 -4
- package/dist/server/server/src/validation/common-validators.js.map +1 -1
- package/dist/server/server/src/validation/common-validators.mjs +4 -5
- package/dist/server/server/src/validation/common-validators.mjs.map +1 -1
- package/dist/server/server/src/validation/permission.js.map +1 -1
- package/dist/server/server/src/validation/permission.mjs.map +1 -1
- package/dist/server/server/src/validation/policies/hasPermissions.js.map +1 -1
- package/dist/server/server/src/validation/policies/hasPermissions.mjs.map +1 -1
- package/dist/server/server/src/validation/project-settings.js.map +1 -1
- package/dist/server/server/src/validation/project-settings.mjs.map +1 -1
- package/dist/server/server/src/validation/role.js.map +1 -1
- package/dist/server/server/src/validation/role.mjs.map +1 -1
- package/dist/server/server/src/validation/transfer/token.js.map +1 -1
- package/dist/server/server/src/validation/transfer/token.mjs.map +1 -1
- package/dist/server/server/src/validation/user.js +1 -4
- package/dist/server/server/src/validation/user.js.map +1 -1
- package/dist/server/server/src/validation/user.mjs +1 -4
- package/dist/server/server/src/validation/user.mjs.map +1 -1
- package/dist/server/shared/utils/session-auth.js.map +1 -1
- package/dist/server/shared/utils/session-auth.mjs.map +1 -1
- package/package.json +17 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Permissions.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/Permissions.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Tabs } from '@strapi/design-system';\nimport { produce } from 'immer';\nimport cloneDeep from 'lodash/cloneDeep';\nimport get from 'lodash/get';\nimport has from 'lodash/has';\nimport isEmpty from 'lodash/isEmpty';\nimport set from 'lodash/set';\nimport { useIntl } from 'react-intl';\n\nimport * as PermissonContracts from '../../../../../../../shared/contracts/permissions';\nimport { Permission } from '../../../../../../../shared/contracts/shared';\nimport { isObject } from '../../../../../utils/objects';\nimport {\n PermissionsDataManagerContextValue,\n PermissionsDataManagerProvider,\n} from '../hooks/usePermissionsDataManager';\nimport { difference } from '../utils/difference';\nimport { ConditionForm, Form, createDefaultCTForm, createDefaultForm } from '../utils/forms';\nimport { GenericLayout, formatLayout } from '../utils/layouts';\nimport { formatPermissionsForAPI } from '../utils/permissions';\nimport { updateConditionsToFalse } from '../utils/updateConditionsToFalse';\nimport { updateValues } from '../utils/updateValues';\n\nimport { ContentTypes } from './ContentTypes';\nimport { PluginsAndSettingsPermissions } from './PluginsAndSettings';\n\nconst TAB_LABELS = [\n {\n labelId: 'app.components.LeftMenuLinkContainer.collectionTypes',\n defaultMessage: 'Collection Types',\n id: 'collectionTypes',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.singleTypes',\n id: 'singleTypes',\n defaultMessage: 'Single Types',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.plugins',\n defaultMessage: 'Plugins',\n id: 'plugins',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.settings',\n defaultMessage: 'Settings',\n id: 'settings',\n },\n] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * Permissions\n * -----------------------------------------------------------------------------------------------*/\n\nexport interface PermissionsAPI {\n getPermissions: () => {\n didUpdateConditions: boolean;\n permissionsToSend: Omit<Permission, 'id' | 'createdAt' | 'updatedAt' | 'actionParameters'>[];\n };\n resetForm: () => void;\n setFormAfterSubmit: () => void;\n}\n\ninterface PermissionsProps {\n isFormDisabled?: boolean;\n permissions?: Permission[];\n layout: PermissonContracts.GetAll.Response['data'];\n}\n\nconst Permissions = React.forwardRef<PermissionsAPI, PermissionsProps>(\n ({ layout, isFormDisabled, permissions = [] }, api) => {\n const [{ initialData, layouts, modifiedData }, dispatch] = React.useReducer(\n reducer,\n initialState,\n () => init(layout, permissions)\n );\n const { formatMessage } = useIntl();\n\n React.useImperativeHandle(api, () => {\n return {\n getPermissions() {\n const collectionTypesDiff = difference(\n initialData.collectionTypes,\n modifiedData.collectionTypes\n );\n const singleTypesDiff = difference(initialData.singleTypes, modifiedData.singleTypes);\n\n const contentTypesDiff = { ...collectionTypesDiff, ...singleTypesDiff };\n\n let didUpdateConditions;\n\n if (isEmpty(contentTypesDiff)) {\n didUpdateConditions = false;\n } else {\n didUpdateConditions = Object.values(contentTypesDiff).some((permission = {}) => {\n return Object.values(permission).some((permissionValue) =>\n has(permissionValue, 'conditions')\n );\n });\n }\n\n return { permissionsToSend: formatPermissionsForAPI(modifiedData), didUpdateConditions };\n },\n resetForm() {\n dispatch({ type: 'RESET_FORM' });\n },\n setFormAfterSubmit() {\n dispatch({ type: 'SET_FORM_AFTER_SUBMIT' });\n },\n } satisfies PermissionsAPI;\n });\n\n const handleChangeCollectionTypeLeftActionRowCheckbox = (\n pathToCollectionType: OnChangeCollectionTypeRowLeftCheckboxAction['pathToCollectionType'],\n propertyName: OnChangeCollectionTypeRowLeftCheckboxAction['propertyName'],\n rowName: OnChangeCollectionTypeRowLeftCheckboxAction['rowName'],\n value: OnChangeCollectionTypeRowLeftCheckboxAction['value']\n ) => {\n dispatch({\n type: 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX',\n pathToCollectionType,\n propertyName,\n rowName,\n value,\n });\n };\n\n const handleChangeCollectionTypeGlobalActionCheckbox = (\n collectionTypeKind: OnChangeCollectionTypeGlobalActionCheckboxAction['collectionTypeKind'],\n actionId: OnChangeCollectionTypeGlobalActionCheckboxAction['actionId'],\n value: OnChangeCollectionTypeGlobalActionCheckboxAction['value']\n ) => {\n dispatch({\n type: 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX',\n collectionTypeKind,\n actionId,\n value,\n });\n };\n\n const handleChangeConditions = (conditions: OnChangeConditionsAction['conditions']) => {\n dispatch({ type: 'ON_CHANGE_CONDITIONS', conditions });\n };\n\n const handleChangeSimpleCheckbox: PermissionsDataManagerContextValue['onChangeSimpleCheckbox'] =\n React.useCallback(({ target: { name, value } }) => {\n dispatch({\n type: 'ON_CHANGE_SIMPLE_CHECKBOX',\n keys: name,\n value,\n });\n }, []);\n\n const handleChangeParentCheckbox: PermissionsDataManagerContextValue['onChangeParentCheckbox'] =\n React.useCallback(({ target: { name, value } }) => {\n dispatch({\n type: 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX',\n keys: name,\n value,\n });\n }, []);\n\n return (\n <PermissionsDataManagerProvider\n availableConditions={layout.conditions}\n modifiedData={modifiedData}\n onChangeConditions={handleChangeConditions}\n onChangeSimpleCheckbox={handleChangeSimpleCheckbox}\n onChangeParentCheckbox={handleChangeParentCheckbox}\n onChangeCollectionTypeLeftActionRowCheckbox={\n handleChangeCollectionTypeLeftActionRowCheckbox\n }\n onChangeCollectionTypeGlobalActionCheckbox={handleChangeCollectionTypeGlobalActionCheckbox}\n >\n <Tabs.Root defaultValue={TAB_LABELS[0].id}>\n <Tabs.List\n aria-label={formatMessage({\n id: 'Settings.permissions.users.tabs.label',\n defaultMessage: 'Tabs Permissions',\n })}\n >\n {TAB_LABELS.map((tabLabel) => (\n <Tabs.Trigger key={tabLabel.id} value={tabLabel.id}>\n {formatMessage({ id: tabLabel.labelId, defaultMessage: tabLabel.defaultMessage })}\n </Tabs.Trigger>\n ))}\n </Tabs.List>\n <Tabs.Content value={TAB_LABELS[0].id}>\n <ContentTypes\n layout={layouts.collectionTypes}\n kind=\"collectionTypes\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[1].id}>\n <ContentTypes\n layout={layouts.singleTypes}\n kind=\"singleTypes\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[2].id}>\n <PluginsAndSettingsPermissions\n layout={layouts.plugins}\n kind=\"plugins\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[3].id}>\n <PluginsAndSettingsPermissions\n layout={layouts.settings}\n kind=\"settings\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n </Tabs.Root>\n </PermissionsDataManagerProvider>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * reducer\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PermissionForms {\n collectionTypes: Form;\n plugins: Record<string, Form>;\n settings: Record<string, Form>;\n singleTypes: Form;\n}\n\ninterface State {\n initialData: PermissionForms;\n modifiedData: PermissionForms;\n layouts: {\n collectionTypes: PermissonContracts.ContentPermission;\n singleTypes: PermissonContracts.ContentPermission;\n plugins: GenericLayout<PermissonContracts.PluginPermission>[];\n settings: GenericLayout<PermissonContracts.SettingPermission>[];\n };\n}\n\nconst initialState = {\n initialData: {},\n modifiedData: {},\n layouts: {},\n};\n\ninterface OnChangeCollectionTypeGlobalActionCheckboxAction {\n type: 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX';\n collectionTypeKind: keyof PermissionForms;\n actionId: string;\n value: boolean;\n}\n\ninterface OnChangeCollectionTypeRowLeftCheckboxAction {\n type: 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX';\n pathToCollectionType: string;\n propertyName: string;\n rowName: string;\n value: boolean;\n}\n\ninterface OnChangeConditionsAction {\n type: 'ON_CHANGE_CONDITIONS';\n conditions: Record<string, ConditionForm>;\n}\n\ninterface OnChangeSimpleCheckboxAction {\n type: 'ON_CHANGE_SIMPLE_CHECKBOX';\n keys: string;\n value: boolean;\n}\n\ninterface OnChangeToggleParentCheckbox {\n type: 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX';\n keys: string;\n value: boolean;\n}\n\ninterface ResetFormAction {\n type: 'RESET_FORM';\n}\n\ninterface SetFormAfterSubmitAction {\n type: 'SET_FORM_AFTER_SUBMIT';\n}\n\ntype Action =\n | OnChangeCollectionTypeGlobalActionCheckboxAction\n | OnChangeCollectionTypeRowLeftCheckboxAction\n | OnChangeConditionsAction\n | OnChangeSimpleCheckboxAction\n | OnChangeToggleParentCheckbox\n | ResetFormAction\n | SetFormAfterSubmitAction;\n\n/* eslint-disable consistent-return */\nconst reducer = (state: State, action: Action) =>\n produce(state, (draftState) => {\n switch (action.type) {\n // This action is called when a checkbox in the <GlobalActions />\n // changes\n case 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX': {\n const { collectionTypeKind, actionId, value } = action;\n const pathToData = ['modifiedData', collectionTypeKind];\n\n Object.keys(get(state, pathToData)).forEach((collectionType) => {\n const collectionTypeActionData = get(\n state,\n [...pathToData, collectionType, actionId],\n undefined\n );\n\n if (collectionTypeActionData) {\n let updatedValues = updateValues(collectionTypeActionData, value);\n\n // We need to remove the applied conditions\n // @ts-expect-error – TODO: type better\n if (!value && updatedValues.conditions) {\n // @ts-expect-error – TODO: type better\n const updatedConditions = updateValues(updatedValues.conditions, false);\n\n updatedValues = { ...updatedValues, conditions: updatedConditions };\n }\n\n set(draftState, [...pathToData, collectionType, actionId], updatedValues);\n }\n });\n\n break;\n }\n case 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX': {\n const { pathToCollectionType, propertyName, rowName, value } = action;\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n const pathToModifiedDataCollectionType = pathToCollectionType.split('..');\n\n const objToUpdate = get(nextModifiedDataState, pathToModifiedDataCollectionType, {});\n\n Object.keys(objToUpdate).forEach((actionId) => {\n // When a ct has multiple properties (ex: locales, field)\n // We need to make sure that we add any new property to the modifiedData\n // object.\n if (has(objToUpdate[actionId], `properties.${propertyName}`)) {\n const objValue = get(objToUpdate, [actionId, 'properties', propertyName, rowName]);\n const pathToDataToSet = [\n ...pathToModifiedDataCollectionType,\n actionId,\n 'properties',\n propertyName,\n rowName,\n ];\n\n if (!isObject(objValue)) {\n set(nextModifiedDataState, pathToDataToSet, value);\n } else {\n const updatedValue = updateValues(objValue, value);\n\n set(nextModifiedDataState, pathToDataToSet, updatedValue);\n }\n }\n });\n\n // When we uncheck a row, we need to check if we also need to disable the conditions\n if (!value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, 'modifiedData', nextModifiedDataState);\n\n break;\n }\n case 'ON_CHANGE_CONDITIONS': {\n Object.entries(action.conditions).forEach((array) => {\n const [stringPathToData, conditionsToUpdate] = array;\n\n set(\n draftState,\n ['modifiedData', ...stringPathToData.split('..'), 'conditions'],\n conditionsToUpdate\n );\n });\n\n break;\n }\n case 'ON_CHANGE_SIMPLE_CHECKBOX': {\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n\n set(nextModifiedDataState, [...action.keys.split('..')], action.value);\n\n // When we uncheck a single checkbox we need to remove the conditions from the parent\n if (!action.value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, 'modifiedData', nextModifiedDataState);\n\n break;\n }\n /*\n * Here the idea is to retrieve a specific value of the modifiedObject\n * then update all the boolean values of the retrieved one\n * and update the drafState.\n *\n * For instance in order to enable create action for all the fields and locales\n * of the restaurant content type we need to :\n * 1. Retrieve the modifiedData.collectionTypes.restaurant.create object\n * 2. Toggle all the end boolean values to the desired one\n * 3. Update the draftState\n *\n * Since the case works well in order to update what we called \"parent\" checkbox. We can\n * reuse the action when we need to toggle change all the values that depends on this one.\n * A parent checkbox is a checkbox which value is not a boolean but depends on its children ones, therefore,\n * a parent checkbox does not have a represented value in the draftState, they are just helpers.\n *\n * Given the following data:\n *\n * const data = {\n * restaurant: {\n * create: {\n * fields: { name: true },\n * locales: { en: false }\n * }\n * }\n * }\n *\n * The value of the create checkbox for the restaurant will be ƒalse since not all its children have\n * truthy values and in order to set its value to true when need to have all the values of its children set to true.\n *\n * Similarly, we can reuse the logic for the components attributes\n *\n */\n case 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX': {\n const { keys, value } = action;\n const pathToValue = [...keys.split('..')];\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n const oldValues = get(nextModifiedDataState, pathToValue, {});\n\n const updatedValues = updateValues(oldValues, value);\n set(nextModifiedDataState, pathToValue, updatedValues);\n\n // When we uncheck a parent checkbox we need to remove the associated conditions\n if (!value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, ['modifiedData'], nextModifiedDataState);\n\n break;\n }\n case 'RESET_FORM': {\n draftState.modifiedData = state.initialData;\n break;\n }\n case 'SET_FORM_AFTER_SUBMIT': {\n draftState.initialData = state.modifiedData;\n break;\n }\n default:\n return draftState;\n }\n });\n\n/* -------------------------------------------------------------------------------------------------\n * init (reducer)\n * -----------------------------------------------------------------------------------------------*/\n\nconst init = (\n layout: PermissionsProps['layout'],\n permissions: PermissionsProps['permissions']\n): State => {\n const {\n conditions,\n sections: { collectionTypes, singleTypes, plugins, settings },\n } = layout;\n\n const layouts = {\n collectionTypes,\n singleTypes,\n plugins: formatLayout(plugins, 'plugin'),\n settings: formatLayout(settings, 'category'),\n };\n\n const defaultForm = {\n collectionTypes: createDefaultCTForm(collectionTypes, conditions, permissions),\n singleTypes: createDefaultCTForm(singleTypes, conditions, permissions),\n plugins: createDefaultForm(layouts.plugins, conditions, permissions),\n settings: createDefaultForm(layouts.settings, conditions, permissions),\n };\n\n return {\n initialData: defaultForm,\n modifiedData: defaultForm,\n layouts,\n };\n};\n\nexport { Permissions };\nexport type {\n State,\n OnChangeCollectionTypeRowLeftCheckboxAction,\n OnChangeConditionsAction,\n OnChangeCollectionTypeGlobalActionCheckboxAction,\n};\n"],"names":["TAB_LABELS","labelId","defaultMessage","id","Permissions","React","forwardRef","layout","isFormDisabled","permissions","api","initialData","layouts","modifiedData","dispatch","useReducer","reducer","initialState","init","formatMessage","useIntl","useImperativeHandle","getPermissions","collectionTypesDiff","difference","collectionTypes","singleTypesDiff","singleTypes","contentTypesDiff","didUpdateConditions","isEmpty","Object","values","some","permission","permissionValue","has","permissionsToSend","formatPermissionsForAPI","resetForm","type","setFormAfterSubmit","handleChangeCollectionTypeLeftActionRowCheckbox","pathToCollectionType","propertyName","rowName","value","handleChangeCollectionTypeGlobalActionCheckbox","collectionTypeKind","actionId","handleChangeConditions","conditions","handleChangeSimpleCheckbox","useCallback","target","name","keys","handleChangeParentCheckbox","_jsx","PermissionsDataManagerProvider","availableConditions","onChangeConditions","onChangeSimpleCheckbox","onChangeParentCheckbox","onChangeCollectionTypeLeftActionRowCheckbox","onChangeCollectionTypeGlobalActionCheckbox","_jsxs","Tabs","Root","defaultValue","List","aria-label","map","tabLabel","Trigger","Content","ContentTypes","kind","PluginsAndSettingsPermissions","plugins","settings","state","action","produce","draftState","pathToData","get","forEach","collectionType","collectionTypeActionData","undefined","updatedValues","updateValues","updatedConditions","set","nextModifiedDataState","cloneDeep","pathToModifiedDataCollectionType","split","objToUpdate","objValue","pathToDataToSet","isObject","updatedValue","updateConditionsToFalse","entries","array","stringPathToData","conditionsToUpdate","pathToValue","oldValues","sections","formatLayout","defaultForm","createDefaultCTForm","createDefaultForm"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Permissions.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/Permissions.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Tabs } from '@strapi/design-system';\nimport { produce } from 'immer';\nimport cloneDeep from 'lodash/cloneDeep';\nimport get from 'lodash/get';\nimport has from 'lodash/has';\nimport isEmpty from 'lodash/isEmpty';\nimport set from 'lodash/set';\nimport { useIntl } from 'react-intl';\n\nimport * as PermissonContracts from '../../../../../../../shared/contracts/permissions';\nimport { Permission } from '../../../../../../../shared/contracts/shared';\nimport { isObject } from '../../../../../utils/objects';\nimport {\n PermissionsDataManagerContextValue,\n PermissionsDataManagerProvider,\n} from '../hooks/usePermissionsDataManager';\nimport { difference } from '../utils/difference';\nimport { ConditionForm, Form, createDefaultCTForm, createDefaultForm } from '../utils/forms';\nimport { GenericLayout, formatLayout } from '../utils/layouts';\nimport { formatPermissionsForAPI } from '../utils/permissions';\nimport { updateConditionsToFalse } from '../utils/updateConditionsToFalse';\nimport { updateValues } from '../utils/updateValues';\n\nimport { ContentTypes } from './ContentTypes';\nimport { PluginsAndSettingsPermissions } from './PluginsAndSettings';\n\nconst TAB_LABELS = [\n {\n labelId: 'app.components.LeftMenuLinkContainer.collectionTypes',\n defaultMessage: 'Collection Types',\n id: 'collectionTypes',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.singleTypes',\n id: 'singleTypes',\n defaultMessage: 'Single Types',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.plugins',\n defaultMessage: 'Plugins',\n id: 'plugins',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.settings',\n defaultMessage: 'Settings',\n id: 'settings',\n },\n] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * Permissions\n * -----------------------------------------------------------------------------------------------*/\n\nexport interface PermissionsAPI {\n getPermissions: () => {\n didUpdateConditions: boolean;\n permissionsToSend: Omit<Permission, 'id' | 'createdAt' | 'updatedAt' | 'actionParameters'>[];\n };\n resetForm: () => void;\n setFormAfterSubmit: () => void;\n}\n\ninterface PermissionsProps {\n isFormDisabled?: boolean;\n permissions?: Permission[];\n layout: PermissonContracts.GetAll.Response['data'];\n}\n\nconst Permissions = React.forwardRef<PermissionsAPI, PermissionsProps>(\n ({ layout, isFormDisabled, permissions = [] }, api) => {\n const [{ initialData, layouts, modifiedData }, dispatch] = React.useReducer(\n reducer,\n initialState,\n () => init(layout, permissions)\n );\n const { formatMessage } = useIntl();\n\n React.useImperativeHandle(api, () => {\n return {\n getPermissions() {\n const collectionTypesDiff = difference(\n initialData.collectionTypes,\n modifiedData.collectionTypes\n );\n const singleTypesDiff = difference(initialData.singleTypes, modifiedData.singleTypes);\n\n const contentTypesDiff = { ...collectionTypesDiff, ...singleTypesDiff };\n\n let didUpdateConditions;\n\n if (isEmpty(contentTypesDiff)) {\n didUpdateConditions = false;\n } else {\n didUpdateConditions = Object.values(contentTypesDiff).some((permission = {}) => {\n return Object.values(permission).some((permissionValue) =>\n has(permissionValue, 'conditions')\n );\n });\n }\n\n return { permissionsToSend: formatPermissionsForAPI(modifiedData), didUpdateConditions };\n },\n resetForm() {\n dispatch({ type: 'RESET_FORM' });\n },\n setFormAfterSubmit() {\n dispatch({ type: 'SET_FORM_AFTER_SUBMIT' });\n },\n } satisfies PermissionsAPI;\n });\n\n const handleChangeCollectionTypeLeftActionRowCheckbox = (\n pathToCollectionType: OnChangeCollectionTypeRowLeftCheckboxAction['pathToCollectionType'],\n propertyName: OnChangeCollectionTypeRowLeftCheckboxAction['propertyName'],\n rowName: OnChangeCollectionTypeRowLeftCheckboxAction['rowName'],\n value: OnChangeCollectionTypeRowLeftCheckboxAction['value']\n ) => {\n dispatch({\n type: 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX',\n pathToCollectionType,\n propertyName,\n rowName,\n value,\n });\n };\n\n const handleChangeCollectionTypeGlobalActionCheckbox = (\n collectionTypeKind: OnChangeCollectionTypeGlobalActionCheckboxAction['collectionTypeKind'],\n actionId: OnChangeCollectionTypeGlobalActionCheckboxAction['actionId'],\n value: OnChangeCollectionTypeGlobalActionCheckboxAction['value']\n ) => {\n dispatch({\n type: 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX',\n collectionTypeKind,\n actionId,\n value,\n });\n };\n\n const handleChangeConditions = (conditions: OnChangeConditionsAction['conditions']) => {\n dispatch({ type: 'ON_CHANGE_CONDITIONS', conditions });\n };\n\n const handleChangeSimpleCheckbox: PermissionsDataManagerContextValue['onChangeSimpleCheckbox'] =\n React.useCallback(({ target: { name, value } }) => {\n dispatch({\n type: 'ON_CHANGE_SIMPLE_CHECKBOX',\n keys: name,\n value,\n });\n }, []);\n\n const handleChangeParentCheckbox: PermissionsDataManagerContextValue['onChangeParentCheckbox'] =\n React.useCallback(({ target: { name, value } }) => {\n dispatch({\n type: 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX',\n keys: name,\n value,\n });\n }, []);\n\n return (\n <PermissionsDataManagerProvider\n availableConditions={layout.conditions}\n modifiedData={modifiedData}\n onChangeConditions={handleChangeConditions}\n onChangeSimpleCheckbox={handleChangeSimpleCheckbox}\n onChangeParentCheckbox={handleChangeParentCheckbox}\n onChangeCollectionTypeLeftActionRowCheckbox={\n handleChangeCollectionTypeLeftActionRowCheckbox\n }\n onChangeCollectionTypeGlobalActionCheckbox={handleChangeCollectionTypeGlobalActionCheckbox}\n >\n <Tabs.Root defaultValue={TAB_LABELS[0].id}>\n <Tabs.List\n aria-label={formatMessage({\n id: 'Settings.permissions.users.tabs.label',\n defaultMessage: 'Tabs Permissions',\n })}\n >\n {TAB_LABELS.map((tabLabel) => (\n <Tabs.Trigger key={tabLabel.id} value={tabLabel.id}>\n {formatMessage({ id: tabLabel.labelId, defaultMessage: tabLabel.defaultMessage })}\n </Tabs.Trigger>\n ))}\n </Tabs.List>\n <Tabs.Content value={TAB_LABELS[0].id}>\n <ContentTypes\n layout={layouts.collectionTypes}\n kind=\"collectionTypes\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[1].id}>\n <ContentTypes\n layout={layouts.singleTypes}\n kind=\"singleTypes\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[2].id}>\n <PluginsAndSettingsPermissions\n layout={layouts.plugins}\n kind=\"plugins\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[3].id}>\n <PluginsAndSettingsPermissions\n layout={layouts.settings}\n kind=\"settings\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n </Tabs.Root>\n </PermissionsDataManagerProvider>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * reducer\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PermissionForms {\n collectionTypes: Form;\n plugins: Record<string, Form>;\n settings: Record<string, Form>;\n singleTypes: Form;\n}\n\ninterface State {\n initialData: PermissionForms;\n modifiedData: PermissionForms;\n layouts: {\n collectionTypes: PermissonContracts.ContentPermission;\n singleTypes: PermissonContracts.ContentPermission;\n plugins: GenericLayout<PermissonContracts.PluginPermission>[];\n settings: GenericLayout<PermissonContracts.SettingPermission>[];\n };\n}\n\nconst initialState = {\n initialData: {},\n modifiedData: {},\n layouts: {},\n};\n\ninterface OnChangeCollectionTypeGlobalActionCheckboxAction {\n type: 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX';\n collectionTypeKind: keyof PermissionForms;\n actionId: string;\n value: boolean;\n}\n\ninterface OnChangeCollectionTypeRowLeftCheckboxAction {\n type: 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX';\n pathToCollectionType: string;\n propertyName: string;\n rowName: string;\n value: boolean;\n}\n\ninterface OnChangeConditionsAction {\n type: 'ON_CHANGE_CONDITIONS';\n conditions: Record<string, ConditionForm>;\n}\n\ninterface OnChangeSimpleCheckboxAction {\n type: 'ON_CHANGE_SIMPLE_CHECKBOX';\n keys: string;\n value: boolean;\n}\n\ninterface OnChangeToggleParentCheckbox {\n type: 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX';\n keys: string;\n value: boolean;\n}\n\ninterface ResetFormAction {\n type: 'RESET_FORM';\n}\n\ninterface SetFormAfterSubmitAction {\n type: 'SET_FORM_AFTER_SUBMIT';\n}\n\ntype Action =\n | OnChangeCollectionTypeGlobalActionCheckboxAction\n | OnChangeCollectionTypeRowLeftCheckboxAction\n | OnChangeConditionsAction\n | OnChangeSimpleCheckboxAction\n | OnChangeToggleParentCheckbox\n | ResetFormAction\n | SetFormAfterSubmitAction;\n\n/* eslint-disable consistent-return */\nconst reducer = (state: State, action: Action) =>\n produce(state, (draftState) => {\n switch (action.type) {\n // This action is called when a checkbox in the <GlobalActions />\n // changes\n case 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX': {\n const { collectionTypeKind, actionId, value } = action;\n const pathToData = ['modifiedData', collectionTypeKind];\n\n Object.keys(get(state, pathToData)).forEach((collectionType) => {\n const collectionTypeActionData = get(\n state,\n [...pathToData, collectionType, actionId],\n undefined\n );\n\n if (collectionTypeActionData) {\n let updatedValues = updateValues(collectionTypeActionData, value);\n\n // We need to remove the applied conditions\n // @ts-expect-error – TODO: type better\n if (!value && updatedValues.conditions) {\n // @ts-expect-error – TODO: type better\n const updatedConditions = updateValues(updatedValues.conditions, false);\n\n updatedValues = { ...updatedValues, conditions: updatedConditions };\n }\n\n set(draftState, [...pathToData, collectionType, actionId], updatedValues);\n }\n });\n\n break;\n }\n case 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX': {\n const { pathToCollectionType, propertyName, rowName, value } = action;\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n const pathToModifiedDataCollectionType = pathToCollectionType.split('..');\n\n const objToUpdate = get(nextModifiedDataState, pathToModifiedDataCollectionType, {});\n\n Object.keys(objToUpdate).forEach((actionId) => {\n // When a ct has multiple properties (ex: locales, field)\n // We need to make sure that we add any new property to the modifiedData\n // object.\n if (has(objToUpdate[actionId], `properties.${propertyName}`)) {\n const objValue = get(objToUpdate, [actionId, 'properties', propertyName, rowName]);\n const pathToDataToSet = [\n ...pathToModifiedDataCollectionType,\n actionId,\n 'properties',\n propertyName,\n rowName,\n ];\n\n if (!isObject(objValue)) {\n set(nextModifiedDataState, pathToDataToSet, value);\n } else {\n const updatedValue = updateValues(objValue, value);\n\n set(nextModifiedDataState, pathToDataToSet, updatedValue);\n }\n }\n });\n\n // When we uncheck a row, we need to check if we also need to disable the conditions\n if (!value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, 'modifiedData', nextModifiedDataState);\n\n break;\n }\n case 'ON_CHANGE_CONDITIONS': {\n Object.entries(action.conditions).forEach((array) => {\n const [stringPathToData, conditionsToUpdate] = array;\n\n set(\n draftState,\n ['modifiedData', ...stringPathToData.split('..'), 'conditions'],\n conditionsToUpdate\n );\n });\n\n break;\n }\n case 'ON_CHANGE_SIMPLE_CHECKBOX': {\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n\n set(nextModifiedDataState, [...action.keys.split('..')], action.value);\n\n // When we uncheck a single checkbox we need to remove the conditions from the parent\n if (!action.value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, 'modifiedData', nextModifiedDataState);\n\n break;\n }\n /*\n * Here the idea is to retrieve a specific value of the modifiedObject\n * then update all the boolean values of the retrieved one\n * and update the drafState.\n *\n * For instance in order to enable create action for all the fields and locales\n * of the restaurant content type we need to :\n * 1. Retrieve the modifiedData.collectionTypes.restaurant.create object\n * 2. Toggle all the end boolean values to the desired one\n * 3. Update the draftState\n *\n * Since the case works well in order to update what we called \"parent\" checkbox. We can\n * reuse the action when we need to toggle change all the values that depends on this one.\n * A parent checkbox is a checkbox which value is not a boolean but depends on its children ones, therefore,\n * a parent checkbox does not have a represented value in the draftState, they are just helpers.\n *\n * Given the following data:\n *\n * const data = {\n * restaurant: {\n * create: {\n * fields: { name: true },\n * locales: { en: false }\n * }\n * }\n * }\n *\n * The value of the create checkbox for the restaurant will be ƒalse since not all its children have\n * truthy values and in order to set its value to true when need to have all the values of its children set to true.\n *\n * Similarly, we can reuse the logic for the components attributes\n *\n */\n case 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX': {\n const { keys, value } = action;\n const pathToValue = [...keys.split('..')];\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n const oldValues = get(nextModifiedDataState, pathToValue, {});\n\n const updatedValues = updateValues(oldValues, value);\n set(nextModifiedDataState, pathToValue, updatedValues);\n\n // When we uncheck a parent checkbox we need to remove the associated conditions\n if (!value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, ['modifiedData'], nextModifiedDataState);\n\n break;\n }\n case 'RESET_FORM': {\n draftState.modifiedData = state.initialData;\n break;\n }\n case 'SET_FORM_AFTER_SUBMIT': {\n draftState.initialData = state.modifiedData;\n break;\n }\n default:\n return draftState;\n }\n });\n\n/* -------------------------------------------------------------------------------------------------\n * init (reducer)\n * -----------------------------------------------------------------------------------------------*/\n\nconst init = (\n layout: PermissionsProps['layout'],\n permissions: PermissionsProps['permissions']\n): State => {\n const {\n conditions,\n sections: { collectionTypes, singleTypes, plugins, settings },\n } = layout;\n\n const layouts = {\n collectionTypes,\n singleTypes,\n plugins: formatLayout(plugins, 'plugin'),\n settings: formatLayout(settings, 'category'),\n };\n\n const defaultForm = {\n collectionTypes: createDefaultCTForm(collectionTypes, conditions, permissions),\n singleTypes: createDefaultCTForm(singleTypes, conditions, permissions),\n plugins: createDefaultForm(layouts.plugins, conditions, permissions),\n settings: createDefaultForm(layouts.settings, conditions, permissions),\n };\n\n return {\n initialData: defaultForm,\n modifiedData: defaultForm,\n layouts,\n };\n};\n\nexport { Permissions };\nexport type {\n State,\n OnChangeCollectionTypeRowLeftCheckboxAction,\n OnChangeConditionsAction,\n OnChangeCollectionTypeGlobalActionCheckboxAction,\n};\n"],"names":["TAB_LABELS","labelId","defaultMessage","id","Permissions","React","forwardRef","layout","isFormDisabled","permissions","api","initialData","layouts","modifiedData","dispatch","useReducer","reducer","initialState","init","formatMessage","useIntl","useImperativeHandle","getPermissions","collectionTypesDiff","difference","collectionTypes","singleTypesDiff","singleTypes","contentTypesDiff","didUpdateConditions","isEmpty","Object","values","some","permission","permissionValue","has","permissionsToSend","formatPermissionsForAPI","resetForm","type","setFormAfterSubmit","handleChangeCollectionTypeLeftActionRowCheckbox","pathToCollectionType","propertyName","rowName","value","handleChangeCollectionTypeGlobalActionCheckbox","collectionTypeKind","actionId","handleChangeConditions","conditions","handleChangeSimpleCheckbox","useCallback","target","name","keys","handleChangeParentCheckbox","_jsx","PermissionsDataManagerProvider","availableConditions","onChangeConditions","onChangeSimpleCheckbox","onChangeParentCheckbox","onChangeCollectionTypeLeftActionRowCheckbox","onChangeCollectionTypeGlobalActionCheckbox","_jsxs","Tabs","Root","defaultValue","List","aria-label","map","tabLabel","Trigger","Content","ContentTypes","kind","PluginsAndSettingsPermissions","plugins","settings","state","action","produce","draftState","pathToData","get","forEach","collectionType","collectionTypeActionData","undefined","updatedValues","updateValues","updatedConditions","set","nextModifiedDataState","cloneDeep","pathToModifiedDataCollectionType","split","objToUpdate","objValue","pathToDataToSet","isObject","updatedValue","updateConditionsToFalse","entries","array","stringPathToData","conditionsToUpdate","pathToValue","oldValues","sections","formatLayout","defaultForm","createDefaultCTForm","createDefaultForm"],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ import { useIntl } from 'react-intl';
|
|
|
11
11
|
import { isObject } from '../../../../../utils/objects.mjs';
|
|
12
12
|
import { PermissionsDataManagerProvider } from '../hooks/usePermissionsDataManager.mjs';
|
|
13
13
|
import { difference } from '../utils/difference.mjs';
|
|
14
|
-
import {
|
|
14
|
+
import { createDefaultForm, createDefaultCTForm } from '../utils/forms.mjs';
|
|
15
15
|
import { formatLayout } from '../utils/layouts.mjs';
|
|
16
16
|
import { formatPermissionsForAPI } from '../utils/permissions.mjs';
|
|
17
17
|
import { updateConditionsToFalse } from '../utils/updateConditionsToFalse.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Permissions.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/Permissions.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Tabs } from '@strapi/design-system';\nimport { produce } from 'immer';\nimport cloneDeep from 'lodash/cloneDeep';\nimport get from 'lodash/get';\nimport has from 'lodash/has';\nimport isEmpty from 'lodash/isEmpty';\nimport set from 'lodash/set';\nimport { useIntl } from 'react-intl';\n\nimport * as PermissonContracts from '../../../../../../../shared/contracts/permissions';\nimport { Permission } from '../../../../../../../shared/contracts/shared';\nimport { isObject } from '../../../../../utils/objects';\nimport {\n PermissionsDataManagerContextValue,\n PermissionsDataManagerProvider,\n} from '../hooks/usePermissionsDataManager';\nimport { difference } from '../utils/difference';\nimport { ConditionForm, Form, createDefaultCTForm, createDefaultForm } from '../utils/forms';\nimport { GenericLayout, formatLayout } from '../utils/layouts';\nimport { formatPermissionsForAPI } from '../utils/permissions';\nimport { updateConditionsToFalse } from '../utils/updateConditionsToFalse';\nimport { updateValues } from '../utils/updateValues';\n\nimport { ContentTypes } from './ContentTypes';\nimport { PluginsAndSettingsPermissions } from './PluginsAndSettings';\n\nconst TAB_LABELS = [\n {\n labelId: 'app.components.LeftMenuLinkContainer.collectionTypes',\n defaultMessage: 'Collection Types',\n id: 'collectionTypes',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.singleTypes',\n id: 'singleTypes',\n defaultMessage: 'Single Types',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.plugins',\n defaultMessage: 'Plugins',\n id: 'plugins',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.settings',\n defaultMessage: 'Settings',\n id: 'settings',\n },\n] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * Permissions\n * -----------------------------------------------------------------------------------------------*/\n\nexport interface PermissionsAPI {\n getPermissions: () => {\n didUpdateConditions: boolean;\n permissionsToSend: Omit<Permission, 'id' | 'createdAt' | 'updatedAt' | 'actionParameters'>[];\n };\n resetForm: () => void;\n setFormAfterSubmit: () => void;\n}\n\ninterface PermissionsProps {\n isFormDisabled?: boolean;\n permissions?: Permission[];\n layout: PermissonContracts.GetAll.Response['data'];\n}\n\nconst Permissions = React.forwardRef<PermissionsAPI, PermissionsProps>(\n ({ layout, isFormDisabled, permissions = [] }, api) => {\n const [{ initialData, layouts, modifiedData }, dispatch] = React.useReducer(\n reducer,\n initialState,\n () => init(layout, permissions)\n );\n const { formatMessage } = useIntl();\n\n React.useImperativeHandle(api, () => {\n return {\n getPermissions() {\n const collectionTypesDiff = difference(\n initialData.collectionTypes,\n modifiedData.collectionTypes\n );\n const singleTypesDiff = difference(initialData.singleTypes, modifiedData.singleTypes);\n\n const contentTypesDiff = { ...collectionTypesDiff, ...singleTypesDiff };\n\n let didUpdateConditions;\n\n if (isEmpty(contentTypesDiff)) {\n didUpdateConditions = false;\n } else {\n didUpdateConditions = Object.values(contentTypesDiff).some((permission = {}) => {\n return Object.values(permission).some((permissionValue) =>\n has(permissionValue, 'conditions')\n );\n });\n }\n\n return { permissionsToSend: formatPermissionsForAPI(modifiedData), didUpdateConditions };\n },\n resetForm() {\n dispatch({ type: 'RESET_FORM' });\n },\n setFormAfterSubmit() {\n dispatch({ type: 'SET_FORM_AFTER_SUBMIT' });\n },\n } satisfies PermissionsAPI;\n });\n\n const handleChangeCollectionTypeLeftActionRowCheckbox = (\n pathToCollectionType: OnChangeCollectionTypeRowLeftCheckboxAction['pathToCollectionType'],\n propertyName: OnChangeCollectionTypeRowLeftCheckboxAction['propertyName'],\n rowName: OnChangeCollectionTypeRowLeftCheckboxAction['rowName'],\n value: OnChangeCollectionTypeRowLeftCheckboxAction['value']\n ) => {\n dispatch({\n type: 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX',\n pathToCollectionType,\n propertyName,\n rowName,\n value,\n });\n };\n\n const handleChangeCollectionTypeGlobalActionCheckbox = (\n collectionTypeKind: OnChangeCollectionTypeGlobalActionCheckboxAction['collectionTypeKind'],\n actionId: OnChangeCollectionTypeGlobalActionCheckboxAction['actionId'],\n value: OnChangeCollectionTypeGlobalActionCheckboxAction['value']\n ) => {\n dispatch({\n type: 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX',\n collectionTypeKind,\n actionId,\n value,\n });\n };\n\n const handleChangeConditions = (conditions: OnChangeConditionsAction['conditions']) => {\n dispatch({ type: 'ON_CHANGE_CONDITIONS', conditions });\n };\n\n const handleChangeSimpleCheckbox: PermissionsDataManagerContextValue['onChangeSimpleCheckbox'] =\n React.useCallback(({ target: { name, value } }) => {\n dispatch({\n type: 'ON_CHANGE_SIMPLE_CHECKBOX',\n keys: name,\n value,\n });\n }, []);\n\n const handleChangeParentCheckbox: PermissionsDataManagerContextValue['onChangeParentCheckbox'] =\n React.useCallback(({ target: { name, value } }) => {\n dispatch({\n type: 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX',\n keys: name,\n value,\n });\n }, []);\n\n return (\n <PermissionsDataManagerProvider\n availableConditions={layout.conditions}\n modifiedData={modifiedData}\n onChangeConditions={handleChangeConditions}\n onChangeSimpleCheckbox={handleChangeSimpleCheckbox}\n onChangeParentCheckbox={handleChangeParentCheckbox}\n onChangeCollectionTypeLeftActionRowCheckbox={\n handleChangeCollectionTypeLeftActionRowCheckbox\n }\n onChangeCollectionTypeGlobalActionCheckbox={handleChangeCollectionTypeGlobalActionCheckbox}\n >\n <Tabs.Root defaultValue={TAB_LABELS[0].id}>\n <Tabs.List\n aria-label={formatMessage({\n id: 'Settings.permissions.users.tabs.label',\n defaultMessage: 'Tabs Permissions',\n })}\n >\n {TAB_LABELS.map((tabLabel) => (\n <Tabs.Trigger key={tabLabel.id} value={tabLabel.id}>\n {formatMessage({ id: tabLabel.labelId, defaultMessage: tabLabel.defaultMessage })}\n </Tabs.Trigger>\n ))}\n </Tabs.List>\n <Tabs.Content value={TAB_LABELS[0].id}>\n <ContentTypes\n layout={layouts.collectionTypes}\n kind=\"collectionTypes\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[1].id}>\n <ContentTypes\n layout={layouts.singleTypes}\n kind=\"singleTypes\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[2].id}>\n <PluginsAndSettingsPermissions\n layout={layouts.plugins}\n kind=\"plugins\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[3].id}>\n <PluginsAndSettingsPermissions\n layout={layouts.settings}\n kind=\"settings\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n </Tabs.Root>\n </PermissionsDataManagerProvider>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * reducer\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PermissionForms {\n collectionTypes: Form;\n plugins: Record<string, Form>;\n settings: Record<string, Form>;\n singleTypes: Form;\n}\n\ninterface State {\n initialData: PermissionForms;\n modifiedData: PermissionForms;\n layouts: {\n collectionTypes: PermissonContracts.ContentPermission;\n singleTypes: PermissonContracts.ContentPermission;\n plugins: GenericLayout<PermissonContracts.PluginPermission>[];\n settings: GenericLayout<PermissonContracts.SettingPermission>[];\n };\n}\n\nconst initialState = {\n initialData: {},\n modifiedData: {},\n layouts: {},\n};\n\ninterface OnChangeCollectionTypeGlobalActionCheckboxAction {\n type: 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX';\n collectionTypeKind: keyof PermissionForms;\n actionId: string;\n value: boolean;\n}\n\ninterface OnChangeCollectionTypeRowLeftCheckboxAction {\n type: 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX';\n pathToCollectionType: string;\n propertyName: string;\n rowName: string;\n value: boolean;\n}\n\ninterface OnChangeConditionsAction {\n type: 'ON_CHANGE_CONDITIONS';\n conditions: Record<string, ConditionForm>;\n}\n\ninterface OnChangeSimpleCheckboxAction {\n type: 'ON_CHANGE_SIMPLE_CHECKBOX';\n keys: string;\n value: boolean;\n}\n\ninterface OnChangeToggleParentCheckbox {\n type: 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX';\n keys: string;\n value: boolean;\n}\n\ninterface ResetFormAction {\n type: 'RESET_FORM';\n}\n\ninterface SetFormAfterSubmitAction {\n type: 'SET_FORM_AFTER_SUBMIT';\n}\n\ntype Action =\n | OnChangeCollectionTypeGlobalActionCheckboxAction\n | OnChangeCollectionTypeRowLeftCheckboxAction\n | OnChangeConditionsAction\n | OnChangeSimpleCheckboxAction\n | OnChangeToggleParentCheckbox\n | ResetFormAction\n | SetFormAfterSubmitAction;\n\n/* eslint-disable consistent-return */\nconst reducer = (state: State, action: Action) =>\n produce(state, (draftState) => {\n switch (action.type) {\n // This action is called when a checkbox in the <GlobalActions />\n // changes\n case 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX': {\n const { collectionTypeKind, actionId, value } = action;\n const pathToData = ['modifiedData', collectionTypeKind];\n\n Object.keys(get(state, pathToData)).forEach((collectionType) => {\n const collectionTypeActionData = get(\n state,\n [...pathToData, collectionType, actionId],\n undefined\n );\n\n if (collectionTypeActionData) {\n let updatedValues = updateValues(collectionTypeActionData, value);\n\n // We need to remove the applied conditions\n // @ts-expect-error – TODO: type better\n if (!value && updatedValues.conditions) {\n // @ts-expect-error – TODO: type better\n const updatedConditions = updateValues(updatedValues.conditions, false);\n\n updatedValues = { ...updatedValues, conditions: updatedConditions };\n }\n\n set(draftState, [...pathToData, collectionType, actionId], updatedValues);\n }\n });\n\n break;\n }\n case 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX': {\n const { pathToCollectionType, propertyName, rowName, value } = action;\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n const pathToModifiedDataCollectionType = pathToCollectionType.split('..');\n\n const objToUpdate = get(nextModifiedDataState, pathToModifiedDataCollectionType, {});\n\n Object.keys(objToUpdate).forEach((actionId) => {\n // When a ct has multiple properties (ex: locales, field)\n // We need to make sure that we add any new property to the modifiedData\n // object.\n if (has(objToUpdate[actionId], `properties.${propertyName}`)) {\n const objValue = get(objToUpdate, [actionId, 'properties', propertyName, rowName]);\n const pathToDataToSet = [\n ...pathToModifiedDataCollectionType,\n actionId,\n 'properties',\n propertyName,\n rowName,\n ];\n\n if (!isObject(objValue)) {\n set(nextModifiedDataState, pathToDataToSet, value);\n } else {\n const updatedValue = updateValues(objValue, value);\n\n set(nextModifiedDataState, pathToDataToSet, updatedValue);\n }\n }\n });\n\n // When we uncheck a row, we need to check if we also need to disable the conditions\n if (!value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, 'modifiedData', nextModifiedDataState);\n\n break;\n }\n case 'ON_CHANGE_CONDITIONS': {\n Object.entries(action.conditions).forEach((array) => {\n const [stringPathToData, conditionsToUpdate] = array;\n\n set(\n draftState,\n ['modifiedData', ...stringPathToData.split('..'), 'conditions'],\n conditionsToUpdate\n );\n });\n\n break;\n }\n case 'ON_CHANGE_SIMPLE_CHECKBOX': {\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n\n set(nextModifiedDataState, [...action.keys.split('..')], action.value);\n\n // When we uncheck a single checkbox we need to remove the conditions from the parent\n if (!action.value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, 'modifiedData', nextModifiedDataState);\n\n break;\n }\n /*\n * Here the idea is to retrieve a specific value of the modifiedObject\n * then update all the boolean values of the retrieved one\n * and update the drafState.\n *\n * For instance in order to enable create action for all the fields and locales\n * of the restaurant content type we need to :\n * 1. Retrieve the modifiedData.collectionTypes.restaurant.create object\n * 2. Toggle all the end boolean values to the desired one\n * 3. Update the draftState\n *\n * Since the case works well in order to update what we called \"parent\" checkbox. We can\n * reuse the action when we need to toggle change all the values that depends on this one.\n * A parent checkbox is a checkbox which value is not a boolean but depends on its children ones, therefore,\n * a parent checkbox does not have a represented value in the draftState, they are just helpers.\n *\n * Given the following data:\n *\n * const data = {\n * restaurant: {\n * create: {\n * fields: { name: true },\n * locales: { en: false }\n * }\n * }\n * }\n *\n * The value of the create checkbox for the restaurant will be ƒalse since not all its children have\n * truthy values and in order to set its value to true when need to have all the values of its children set to true.\n *\n * Similarly, we can reuse the logic for the components attributes\n *\n */\n case 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX': {\n const { keys, value } = action;\n const pathToValue = [...keys.split('..')];\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n const oldValues = get(nextModifiedDataState, pathToValue, {});\n\n const updatedValues = updateValues(oldValues, value);\n set(nextModifiedDataState, pathToValue, updatedValues);\n\n // When we uncheck a parent checkbox we need to remove the associated conditions\n if (!value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, ['modifiedData'], nextModifiedDataState);\n\n break;\n }\n case 'RESET_FORM': {\n draftState.modifiedData = state.initialData;\n break;\n }\n case 'SET_FORM_AFTER_SUBMIT': {\n draftState.initialData = state.modifiedData;\n break;\n }\n default:\n return draftState;\n }\n });\n\n/* -------------------------------------------------------------------------------------------------\n * init (reducer)\n * -----------------------------------------------------------------------------------------------*/\n\nconst init = (\n layout: PermissionsProps['layout'],\n permissions: PermissionsProps['permissions']\n): State => {\n const {\n conditions,\n sections: { collectionTypes, singleTypes, plugins, settings },\n } = layout;\n\n const layouts = {\n collectionTypes,\n singleTypes,\n plugins: formatLayout(plugins, 'plugin'),\n settings: formatLayout(settings, 'category'),\n };\n\n const defaultForm = {\n collectionTypes: createDefaultCTForm(collectionTypes, conditions, permissions),\n singleTypes: createDefaultCTForm(singleTypes, conditions, permissions),\n plugins: createDefaultForm(layouts.plugins, conditions, permissions),\n settings: createDefaultForm(layouts.settings, conditions, permissions),\n };\n\n return {\n initialData: defaultForm,\n modifiedData: defaultForm,\n layouts,\n };\n};\n\nexport { Permissions };\nexport type {\n State,\n OnChangeCollectionTypeRowLeftCheckboxAction,\n OnChangeConditionsAction,\n OnChangeCollectionTypeGlobalActionCheckboxAction,\n};\n"],"names":["TAB_LABELS","labelId","defaultMessage","id","Permissions","React","forwardRef","layout","isFormDisabled","permissions","api","initialData","layouts","modifiedData","dispatch","useReducer","reducer","initialState","init","formatMessage","useIntl","useImperativeHandle","getPermissions","collectionTypesDiff","difference","collectionTypes","singleTypesDiff","singleTypes","contentTypesDiff","didUpdateConditions","isEmpty","Object","values","some","permission","permissionValue","has","permissionsToSend","formatPermissionsForAPI","resetForm","type","setFormAfterSubmit","handleChangeCollectionTypeLeftActionRowCheckbox","pathToCollectionType","propertyName","rowName","value","handleChangeCollectionTypeGlobalActionCheckbox","collectionTypeKind","actionId","handleChangeConditions","conditions","handleChangeSimpleCheckbox","useCallback","target","name","keys","handleChangeParentCheckbox","_jsx","PermissionsDataManagerProvider","availableConditions","onChangeConditions","onChangeSimpleCheckbox","onChangeParentCheckbox","onChangeCollectionTypeLeftActionRowCheckbox","onChangeCollectionTypeGlobalActionCheckbox","_jsxs","Tabs","Root","defaultValue","List","aria-label","map","tabLabel","Trigger","Content","ContentTypes","kind","PluginsAndSettingsPermissions","plugins","settings","state","action","produce","draftState","pathToData","get","forEach","collectionType","collectionTypeActionData","undefined","updatedValues","updateValues","updatedConditions","set","nextModifiedDataState","cloneDeep","pathToModifiedDataCollectionType","split","objToUpdate","objValue","pathToDataToSet","isObject","updatedValue","updateConditionsToFalse","entries","array","stringPathToData","conditionsToUpdate","pathToValue","oldValues","sections","formatLayout","defaultForm","createDefaultCTForm","createDefaultForm"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA4BA,MAAMA,UAAa,GAAA;AACjB,IAAA;QACEC,OAAS,EAAA,sDAAA;QACTC,cAAgB,EAAA,kBAAA;QAChBC,EAAI,EAAA;AACN,KAAA;AACA,IAAA;QACEF,OAAS,EAAA,kDAAA;QACTE,EAAI,EAAA,aAAA;QACJD,cAAgB,EAAA;AAClB,KAAA;AACA,IAAA;QACED,OAAS,EAAA,8CAAA;QACTC,cAAgB,EAAA,SAAA;QAChBC,EAAI,EAAA;AACN,KAAA;AACA,IAAA;QACEF,OAAS,EAAA,+CAAA;QACTC,cAAgB,EAAA,UAAA;QAChBC,EAAI,EAAA;AACN;AACD,CAAA;AAqBD,MAAMC,WAAcC,iBAAAA,KAAAA,CAAMC,UAAU,CAClC,CAAC,EAAEC,MAAM,EAAEC,cAAc,EAAEC,WAAc,GAAA,EAAE,EAAE,EAAEC,GAAAA,GAAAA;AAC7C,IAAA,MAAM,CAAC,EAAEC,WAAW,EAAEC,OAAO,EAAEC,YAAY,EAAE,EAAEC,QAAS,CAAA,GAAGT,MAAMU,UAAU,CACzEC,SACAC,YACA,EAAA,IAAMC,KAAKX,MAAQE,EAAAA,WAAAA,CAAAA,CAAAA;IAErB,MAAM,EAAEU,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAE1Bf,KAAMgB,CAAAA,mBAAmB,CAACX,GAAK,EAAA,IAAA;QAC7B,OAAO;AACLY,YAAAA,cAAAA,CAAAA,GAAAA;AACE,gBAAA,MAAMC,sBAAsBC,UAC1Bb,CAAAA,WAAAA,CAAYc,eAAe,EAC3BZ,aAAaY,eAAe,CAAA;AAE9B,gBAAA,MAAMC,kBAAkBF,UAAWb,CAAAA,WAAAA,CAAYgB,WAAW,EAAEd,aAAac,WAAW,CAAA;AAEpF,gBAAA,MAAMC,gBAAmB,GAAA;AAAE,oBAAA,GAAGL,mBAAmB;AAAE,oBAAA,GAAGG;AAAgB,iBAAA;gBAEtE,IAAIG,mBAAAA;AAEJ,gBAAA,IAAIC,QAAQF,gBAAmB,CAAA,EAAA;oBAC7BC,mBAAsB,GAAA,KAAA;iBACjB,MAAA;oBACLA,mBAAsBE,GAAAA,MAAAA,CAAOC,MAAM,CAACJ,gBAAAA,CAAAA,CAAkBK,IAAI,CAAC,CAACC,UAAa,GAAA,EAAE,GAAA;wBACzE,OAAOH,MAAAA,CAAOC,MAAM,CAACE,UAAAA,CAAAA,CAAYD,IAAI,CAAC,CAACE,eACrCC,GAAAA,GAAAA,CAAID,eAAiB,EAAA,YAAA,CAAA,CAAA;AAEzB,qBAAA,CAAA;AACF;gBAEA,OAAO;AAAEE,oBAAAA,iBAAAA,EAAmBC,uBAAwBzB,CAAAA,YAAAA,CAAAA;AAAegB,oBAAAA;AAAoB,iBAAA;AACzF,aAAA;AACAU,YAAAA,SAAAA,CAAAA,GAAAA;gBACEzB,QAAS,CAAA;oBAAE0B,IAAM,EAAA;AAAa,iBAAA,CAAA;AAChC,aAAA;AACAC,YAAAA,kBAAAA,CAAAA,GAAAA;gBACE3B,QAAS,CAAA;oBAAE0B,IAAM,EAAA;AAAwB,iBAAA,CAAA;AAC3C;AACF,SAAA;AACF,KAAA,CAAA;AAEA,IAAA,MAAME,+CAAkD,GAAA,CACtDC,oBACAC,EAAAA,YAAAA,EACAC,OACAC,EAAAA,KAAAA,GAAAA;QAEAhC,QAAS,CAAA;YACP0B,IAAM,EAAA,6CAAA;AACNG,YAAAA,oBAAAA;AACAC,YAAAA,YAAAA;AACAC,YAAAA,OAAAA;AACAC,YAAAA;AACF,SAAA,CAAA;AACF,KAAA;IAEA,MAAMC,8CAAAA,GAAiD,CACrDC,kBAAAA,EACAC,QACAH,EAAAA,KAAAA,GAAAA;QAEAhC,QAAS,CAAA;YACP0B,IAAM,EAAA,kDAAA;AACNQ,YAAAA,kBAAAA;AACAC,YAAAA,QAAAA;AACAH,YAAAA;AACF,SAAA,CAAA;AACF,KAAA;AAEA,IAAA,MAAMI,yBAAyB,CAACC,UAAAA,GAAAA;QAC9BrC,QAAS,CAAA;YAAE0B,IAAM,EAAA,sBAAA;AAAwBW,YAAAA;AAAW,SAAA,CAAA;AACtD,KAAA;AAEA,IAAA,MAAMC,0BACJ/C,GAAAA,KAAAA,CAAMgD,WAAW,CAAC,CAAC,EAAEC,MAAQ,EAAA,EAAEC,IAAI,EAAET,KAAK,EAAE,EAAE,GAAA;QAC5ChC,QAAS,CAAA;YACP0B,IAAM,EAAA,2BAAA;YACNgB,IAAMD,EAAAA,IAAAA;AACNT,YAAAA;AACF,SAAA,CAAA;AACF,KAAA,EAAG,EAAE,CAAA;AAEP,IAAA,MAAMW,0BACJpD,GAAAA,KAAAA,CAAMgD,WAAW,CAAC,CAAC,EAAEC,MAAQ,EAAA,EAAEC,IAAI,EAAET,KAAK,EAAE,EAAE,GAAA;QAC5ChC,QAAS,CAAA;YACP0B,IAAM,EAAA,kCAAA;YACNgB,IAAMD,EAAAA,IAAAA;AACNT,YAAAA;AACF,SAAA,CAAA;AACF,KAAA,EAAG,EAAE,CAAA;AAEP,IAAA,qBACEY,GAACC,CAAAA,8BAAAA,EAAAA;AACCC,QAAAA,mBAAAA,EAAqBrD,OAAO4C,UAAU;QACtCtC,YAAcA,EAAAA,YAAAA;QACdgD,kBAAoBX,EAAAA,sBAAAA;QACpBY,sBAAwBV,EAAAA,0BAAAA;QACxBW,sBAAwBN,EAAAA,0BAAAA;QACxBO,2CACEtB,EAAAA,+CAAAA;QAEFuB,0CAA4ClB,EAAAA,8CAAAA;gCAE5CmB,IAAA,CAACC,KAAKC,IAAI,EAAA;AAACC,YAAAA,YAAAA,EAAcrE,UAAU,CAAC,CAAE,CAAA,CAACG,EAAE;;AACvC,8BAAAuD,GAAA,CAACS,KAAKG,IAAI,EAAA;AACRC,oBAAAA,YAAAA,EAAYpD,aAAc,CAAA;wBACxBhB,EAAI,EAAA,uCAAA;wBACJD,cAAgB,EAAA;AAClB,qBAAA,CAAA;AAECF,oBAAAA,QAAAA,EAAAA,UAAAA,CAAWwE,GAAG,CAAC,CAACC,QACf,iBAAAf,GAAA,CAACS,KAAKO,OAAO,EAAA;AAAmB5B,4BAAAA,KAAAA,EAAO2B,SAAStE,EAAE;sCAC/CgB,aAAc,CAAA;AAAEhB,gCAAAA,EAAAA,EAAIsE,SAASxE,OAAO;AAAEC,gCAAAA,cAAAA,EAAgBuE,SAASvE;AAAe,6BAAA;AAD9DuE,yBAAAA,EAAAA,QAAAA,CAAStE,EAAE,CAAA;;AAKlC,8BAAAuD,GAAA,CAACS,KAAKQ,OAAO,EAAA;AAAC7B,oBAAAA,KAAAA,EAAO9C,UAAU,CAAC,CAAE,CAAA,CAACG,EAAE;AACnC,oBAAA,QAAA,gBAAAuD,GAACkB,CAAAA,YAAAA,EAAAA;AACCrE,wBAAAA,MAAAA,EAAQK,QAAQa,eAAe;wBAC/BoD,IAAK,EAAA,iBAAA;wBACLrE,cAAgBA,EAAAA;;;AAGpB,8BAAAkD,GAAA,CAACS,KAAKQ,OAAO,EAAA;AAAC7B,oBAAAA,KAAAA,EAAO9C,UAAU,CAAC,CAAE,CAAA,CAACG,EAAE;AACnC,oBAAA,QAAA,gBAAAuD,GAACkB,CAAAA,YAAAA,EAAAA;AACCrE,wBAAAA,MAAAA,EAAQK,QAAQe,WAAW;wBAC3BkD,IAAK,EAAA,aAAA;wBACLrE,cAAgBA,EAAAA;;;AAGpB,8BAAAkD,GAAA,CAACS,KAAKQ,OAAO,EAAA;AAAC7B,oBAAAA,KAAAA,EAAO9C,UAAU,CAAC,CAAE,CAAA,CAACG,EAAE;AACnC,oBAAA,QAAA,gBAAAuD,GAACoB,CAAAA,6BAAAA,EAAAA;AACCvE,wBAAAA,MAAAA,EAAQK,QAAQmE,OAAO;wBACvBF,IAAK,EAAA,SAAA;wBACLrE,cAAgBA,EAAAA;;;AAGpB,8BAAAkD,GAAA,CAACS,KAAKQ,OAAO,EAAA;AAAC7B,oBAAAA,KAAAA,EAAO9C,UAAU,CAAC,CAAE,CAAA,CAACG,EAAE;AACnC,oBAAA,QAAA,gBAAAuD,GAACoB,CAAAA,6BAAAA,EAAAA;AACCvE,wBAAAA,MAAAA,EAAQK,QAAQoE,QAAQ;wBACxBH,IAAK,EAAA,UAAA;wBACLrE,cAAgBA,EAAAA;;;;;;AAM5B,CAAA;AAyBF,MAAMS,YAAe,GAAA;AACnBN,IAAAA,WAAAA,EAAa,EAAC;AACdE,IAAAA,YAAAA,EAAc,EAAC;AACfD,IAAAA,OAAAA,EAAS;AACX,CAAA;AAmDA,uCACA,MAAMI,OAAU,GAAA,CAACiE,OAAcC,MAC7BC,GAAAA,OAAAA,CAAQF,OAAO,CAACG,UAAAA,GAAAA;AACd,QAAA,OAAQF,OAAO1C,IAAI;;;YAGjB,KAAK,kDAAA;AAAoD,gBAAA;AACvD,oBAAA,MAAM,EAAEQ,kBAAkB,EAAEC,QAAQ,EAAEH,KAAK,EAAE,GAAGoC,MAAAA;AAChD,oBAAA,MAAMG,UAAa,GAAA;AAAC,wBAAA,cAAA;AAAgBrC,wBAAAA;AAAmB,qBAAA;AAEvDjB,oBAAAA,MAAAA,CAAOyB,IAAI,CAAC8B,GAAAA,CAAIL,OAAOI,UAAaE,CAAAA,CAAAA,CAAAA,OAAO,CAAC,CAACC,cAAAA,GAAAA;wBAC3C,MAAMC,wBAAAA,GAA2BH,IAC/BL,KACA,EAAA;AAAII,4BAAAA,GAAAA,UAAAA;AAAYG,4BAAAA,cAAAA;AAAgBvC,4BAAAA;yBAAS,EACzCyC,SAAAA,CAAAA;AAGF,wBAAA,IAAID,wBAA0B,EAAA;4BAC5B,IAAIE,aAAAA,GAAgBC,aAAaH,wBAA0B3C,EAAAA,KAAAA,CAAAA;;;AAI3D,4BAAA,IAAI,CAACA,KAAAA,IAAS6C,aAAcxC,CAAAA,UAAU,EAAE;;AAEtC,gCAAA,MAAM0C,iBAAoBD,GAAAA,YAAAA,CAAaD,aAAcxC,CAAAA,UAAU,EAAE,KAAA,CAAA;gCAEjEwC,aAAgB,GAAA;AAAE,oCAAA,GAAGA,aAAa;oCAAExC,UAAY0C,EAAAA;AAAkB,iCAAA;AACpE;AAEAC,4BAAAA,GAAAA,CAAIV,UAAY,EAAA;AAAIC,gCAAAA,GAAAA,UAAAA;AAAYG,gCAAAA,cAAAA;AAAgBvC,gCAAAA;6BAAS,EAAE0C,aAAAA,CAAAA;AAC7D;AACF,qBAAA,CAAA;AAEA,oBAAA;AACF;YACA,KAAK,6CAAA;AAA+C,gBAAA;oBAClD,MAAM,EAAEhD,oBAAoB,EAAEC,YAAY,EAAEC,OAAO,EAAEC,KAAK,EAAE,GAAGoC,MAAAA;oBAC/D,IAAIa,qBAAAA,GAAwBC,SAAUf,CAAAA,KAAAA,CAAMpE,YAAY,CAAA;oBACxD,MAAMoF,gCAAAA,GAAmCtD,oBAAqBuD,CAAAA,KAAK,CAAC,IAAA,CAAA;AAEpE,oBAAA,MAAMC,WAAcb,GAAAA,GAAAA,CAAIS,qBAAuBE,EAAAA,gCAAAA,EAAkC,EAAC,CAAA;AAElFlE,oBAAAA,MAAAA,CAAOyB,IAAI,CAAC2C,WAAaZ,CAAAA,CAAAA,OAAO,CAAC,CAACtC,QAAAA,GAAAA;;;;wBAIhC,IAAIb,GAAAA,CAAI+D,WAAW,CAAClD,QAAAA,CAAS,EAAE,CAAC,WAAW,EAAEL,YAAAA,CAAAA,CAAc,CAAG,EAAA;4BAC5D,MAAMwD,QAAAA,GAAWd,IAAIa,WAAa,EAAA;AAAClD,gCAAAA,QAAAA;AAAU,gCAAA,YAAA;AAAcL,gCAAAA,YAAAA;AAAcC,gCAAAA;AAAQ,6BAAA,CAAA;AACjF,4BAAA,MAAMwD,eAAkB,GAAA;AACnBJ,gCAAAA,GAAAA,gCAAAA;AACHhD,gCAAAA,QAAAA;AACA,gCAAA,YAAA;AACAL,gCAAAA,YAAAA;AACAC,gCAAAA;AACD,6BAAA;4BAED,IAAI,CAACyD,SAASF,QAAW,CAAA,EAAA;AACvBN,gCAAAA,GAAAA,CAAIC,uBAAuBM,eAAiBvD,EAAAA,KAAAA,CAAAA;6BACvC,MAAA;gCACL,MAAMyD,YAAAA,GAAeX,aAAaQ,QAAUtD,EAAAA,KAAAA,CAAAA;AAE5CgD,gCAAAA,GAAAA,CAAIC,uBAAuBM,eAAiBE,EAAAA,YAAAA,CAAAA;AAC9C;AACF;AACF,qBAAA,CAAA;;AAGA,oBAAA,IAAI,CAACzD,KAAO,EAAA;;AAEViD,wBAAAA,qBAAAA,GAAwBS,uBAAwBT,CAAAA,qBAAAA,CAAAA;AAClD;AAEAD,oBAAAA,GAAAA,CAAIV,YAAY,cAAgBW,EAAAA,qBAAAA,CAAAA;AAEhC,oBAAA;AACF;YACA,KAAK,sBAAA;AAAwB,gBAAA;AAC3BhE,oBAAAA,MAAAA,CAAO0E,OAAO,CAACvB,MAAAA,CAAO/B,UAAU,CAAEoC,CAAAA,OAAO,CAAC,CAACmB,KAAAA,GAAAA;wBACzC,MAAM,CAACC,gBAAkBC,EAAAA,kBAAAA,CAAmB,GAAGF,KAAAA;AAE/CZ,wBAAAA,GAAAA,CACEV,UACA,EAAA;AAAC,4BAAA,cAAA;AAAmBuB,4BAAAA,GAAAA,gBAAAA,CAAiBT,KAAK,CAAC,IAAA,CAAA;AAAO,4BAAA;yBAAa,EAC/DU,kBAAAA,CAAAA;AAEJ,qBAAA,CAAA;AAEA,oBAAA;AACF;YACA,KAAK,2BAAA;AAA6B,gBAAA;oBAChC,IAAIb,qBAAAA,GAAwBC,SAAUf,CAAAA,KAAAA,CAAMpE,YAAY,CAAA;AAExDiF,oBAAAA,GAAAA,CAAIC,qBAAuB,EAAA;2BAAIb,MAAO1B,CAAAA,IAAI,CAAC0C,KAAK,CAAC,IAAA;AAAM,qBAAA,EAAEhB,OAAOpC,KAAK,CAAA;;oBAGrE,IAAI,CAACoC,MAAOpC,CAAAA,KAAK,EAAE;;AAEjBiD,wBAAAA,qBAAAA,GAAwBS,uBAAwBT,CAAAA,qBAAAA,CAAAA;AAClD;AAEAD,oBAAAA,GAAAA,CAAIV,YAAY,cAAgBW,EAAAA,qBAAAA,CAAAA;AAEhC,oBAAA;AACF;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCC,UACD,KAAK,kCAAA;AAAoC,gBAAA;AACvC,oBAAA,MAAM,EAAEvC,IAAI,EAAEV,KAAK,EAAE,GAAGoC,MAAAA;AACxB,oBAAA,MAAM2B,WAAc,GAAA;AAAIrD,wBAAAA,GAAAA,IAAAA,CAAK0C,KAAK,CAAC,IAAA;AAAM,qBAAA;oBACzC,IAAIH,qBAAAA,GAAwBC,SAAUf,CAAAA,KAAAA,CAAMpE,YAAY,CAAA;AACxD,oBAAA,MAAMiG,SAAYxB,GAAAA,GAAAA,CAAIS,qBAAuBc,EAAAA,WAAAA,EAAa,EAAC,CAAA;oBAE3D,MAAMlB,aAAAA,GAAgBC,aAAakB,SAAWhE,EAAAA,KAAAA,CAAAA;AAC9CgD,oBAAAA,GAAAA,CAAIC,uBAAuBc,WAAalB,EAAAA,aAAAA,CAAAA;;AAGxC,oBAAA,IAAI,CAAC7C,KAAO,EAAA;;AAEViD,wBAAAA,qBAAAA,GAAwBS,uBAAwBT,CAAAA,qBAAAA,CAAAA;AAClD;AAEAD,oBAAAA,GAAAA,CAAIV,UAAY,EAAA;AAAC,wBAAA;qBAAe,EAAEW,qBAAAA,CAAAA;AAElC,oBAAA;AACF;YACA,KAAK,YAAA;AAAc,gBAAA;oBACjBX,UAAWvE,CAAAA,YAAY,GAAGoE,KAAAA,CAAMtE,WAAW;AAC3C,oBAAA;AACF;YACA,KAAK,uBAAA;AAAyB,gBAAA;oBAC5ByE,UAAWzE,CAAAA,WAAW,GAAGsE,KAAAA,CAAMpE,YAAY;AAC3C,oBAAA;AACF;AACA,YAAA;gBACE,OAAOuE,UAAAA;AACX;AACF,KAAA,CAAA;AAEF;;qGAIA,MAAMlE,IAAO,GAAA,CACXX,MACAE,EAAAA,WAAAA,GAAAA;AAEA,IAAA,MAAM,EACJ0C,UAAU,EACV4D,QAAAA,EAAU,EAAEtF,eAAe,EAAEE,WAAW,EAAEoD,OAAO,EAAEC,QAAQ,EAAE,EAC9D,GAAGzE,MAAAA;AAEJ,IAAA,MAAMK,OAAU,GAAA;AACda,QAAAA,eAAAA;AACAE,QAAAA,WAAAA;AACAoD,QAAAA,OAAAA,EAASiC,aAAajC,OAAS,EAAA,QAAA,CAAA;AAC/BC,QAAAA,QAAAA,EAAUgC,aAAahC,QAAU,EAAA,UAAA;AACnC,KAAA;AAEA,IAAA,MAAMiC,WAAc,GAAA;QAClBxF,eAAiByF,EAAAA,mBAAAA,CAAoBzF,iBAAiB0B,UAAY1C,EAAAA,WAAAA,CAAAA;QAClEkB,WAAauF,EAAAA,mBAAAA,CAAoBvF,aAAawB,UAAY1C,EAAAA,WAAAA,CAAAA;AAC1DsE,QAAAA,OAAAA,EAASoC,iBAAkBvG,CAAAA,OAAAA,CAAQmE,OAAO,EAAE5B,UAAY1C,EAAAA,WAAAA,CAAAA;AACxDuE,QAAAA,QAAAA,EAAUmC,iBAAkBvG,CAAAA,OAAAA,CAAQoE,QAAQ,EAAE7B,UAAY1C,EAAAA,WAAAA;AAC5D,KAAA;IAEA,OAAO;QACLE,WAAasG,EAAAA,WAAAA;QACbpG,YAAcoG,EAAAA,WAAAA;AACdrG,QAAAA;AACF,KAAA;AACF,CAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"Permissions.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/Permissions.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Tabs } from '@strapi/design-system';\nimport { produce } from 'immer';\nimport cloneDeep from 'lodash/cloneDeep';\nimport get from 'lodash/get';\nimport has from 'lodash/has';\nimport isEmpty from 'lodash/isEmpty';\nimport set from 'lodash/set';\nimport { useIntl } from 'react-intl';\n\nimport * as PermissonContracts from '../../../../../../../shared/contracts/permissions';\nimport { Permission } from '../../../../../../../shared/contracts/shared';\nimport { isObject } from '../../../../../utils/objects';\nimport {\n PermissionsDataManagerContextValue,\n PermissionsDataManagerProvider,\n} from '../hooks/usePermissionsDataManager';\nimport { difference } from '../utils/difference';\nimport { ConditionForm, Form, createDefaultCTForm, createDefaultForm } from '../utils/forms';\nimport { GenericLayout, formatLayout } from '../utils/layouts';\nimport { formatPermissionsForAPI } from '../utils/permissions';\nimport { updateConditionsToFalse } from '../utils/updateConditionsToFalse';\nimport { updateValues } from '../utils/updateValues';\n\nimport { ContentTypes } from './ContentTypes';\nimport { PluginsAndSettingsPermissions } from './PluginsAndSettings';\n\nconst TAB_LABELS = [\n {\n labelId: 'app.components.LeftMenuLinkContainer.collectionTypes',\n defaultMessage: 'Collection Types',\n id: 'collectionTypes',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.singleTypes',\n id: 'singleTypes',\n defaultMessage: 'Single Types',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.plugins',\n defaultMessage: 'Plugins',\n id: 'plugins',\n },\n {\n labelId: 'app.components.LeftMenuLinkContainer.settings',\n defaultMessage: 'Settings',\n id: 'settings',\n },\n] as const;\n\n/* -------------------------------------------------------------------------------------------------\n * Permissions\n * -----------------------------------------------------------------------------------------------*/\n\nexport interface PermissionsAPI {\n getPermissions: () => {\n didUpdateConditions: boolean;\n permissionsToSend: Omit<Permission, 'id' | 'createdAt' | 'updatedAt' | 'actionParameters'>[];\n };\n resetForm: () => void;\n setFormAfterSubmit: () => void;\n}\n\ninterface PermissionsProps {\n isFormDisabled?: boolean;\n permissions?: Permission[];\n layout: PermissonContracts.GetAll.Response['data'];\n}\n\nconst Permissions = React.forwardRef<PermissionsAPI, PermissionsProps>(\n ({ layout, isFormDisabled, permissions = [] }, api) => {\n const [{ initialData, layouts, modifiedData }, dispatch] = React.useReducer(\n reducer,\n initialState,\n () => init(layout, permissions)\n );\n const { formatMessage } = useIntl();\n\n React.useImperativeHandle(api, () => {\n return {\n getPermissions() {\n const collectionTypesDiff = difference(\n initialData.collectionTypes,\n modifiedData.collectionTypes\n );\n const singleTypesDiff = difference(initialData.singleTypes, modifiedData.singleTypes);\n\n const contentTypesDiff = { ...collectionTypesDiff, ...singleTypesDiff };\n\n let didUpdateConditions;\n\n if (isEmpty(contentTypesDiff)) {\n didUpdateConditions = false;\n } else {\n didUpdateConditions = Object.values(contentTypesDiff).some((permission = {}) => {\n return Object.values(permission).some((permissionValue) =>\n has(permissionValue, 'conditions')\n );\n });\n }\n\n return { permissionsToSend: formatPermissionsForAPI(modifiedData), didUpdateConditions };\n },\n resetForm() {\n dispatch({ type: 'RESET_FORM' });\n },\n setFormAfterSubmit() {\n dispatch({ type: 'SET_FORM_AFTER_SUBMIT' });\n },\n } satisfies PermissionsAPI;\n });\n\n const handleChangeCollectionTypeLeftActionRowCheckbox = (\n pathToCollectionType: OnChangeCollectionTypeRowLeftCheckboxAction['pathToCollectionType'],\n propertyName: OnChangeCollectionTypeRowLeftCheckboxAction['propertyName'],\n rowName: OnChangeCollectionTypeRowLeftCheckboxAction['rowName'],\n value: OnChangeCollectionTypeRowLeftCheckboxAction['value']\n ) => {\n dispatch({\n type: 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX',\n pathToCollectionType,\n propertyName,\n rowName,\n value,\n });\n };\n\n const handleChangeCollectionTypeGlobalActionCheckbox = (\n collectionTypeKind: OnChangeCollectionTypeGlobalActionCheckboxAction['collectionTypeKind'],\n actionId: OnChangeCollectionTypeGlobalActionCheckboxAction['actionId'],\n value: OnChangeCollectionTypeGlobalActionCheckboxAction['value']\n ) => {\n dispatch({\n type: 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX',\n collectionTypeKind,\n actionId,\n value,\n });\n };\n\n const handleChangeConditions = (conditions: OnChangeConditionsAction['conditions']) => {\n dispatch({ type: 'ON_CHANGE_CONDITIONS', conditions });\n };\n\n const handleChangeSimpleCheckbox: PermissionsDataManagerContextValue['onChangeSimpleCheckbox'] =\n React.useCallback(({ target: { name, value } }) => {\n dispatch({\n type: 'ON_CHANGE_SIMPLE_CHECKBOX',\n keys: name,\n value,\n });\n }, []);\n\n const handleChangeParentCheckbox: PermissionsDataManagerContextValue['onChangeParentCheckbox'] =\n React.useCallback(({ target: { name, value } }) => {\n dispatch({\n type: 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX',\n keys: name,\n value,\n });\n }, []);\n\n return (\n <PermissionsDataManagerProvider\n availableConditions={layout.conditions}\n modifiedData={modifiedData}\n onChangeConditions={handleChangeConditions}\n onChangeSimpleCheckbox={handleChangeSimpleCheckbox}\n onChangeParentCheckbox={handleChangeParentCheckbox}\n onChangeCollectionTypeLeftActionRowCheckbox={\n handleChangeCollectionTypeLeftActionRowCheckbox\n }\n onChangeCollectionTypeGlobalActionCheckbox={handleChangeCollectionTypeGlobalActionCheckbox}\n >\n <Tabs.Root defaultValue={TAB_LABELS[0].id}>\n <Tabs.List\n aria-label={formatMessage({\n id: 'Settings.permissions.users.tabs.label',\n defaultMessage: 'Tabs Permissions',\n })}\n >\n {TAB_LABELS.map((tabLabel) => (\n <Tabs.Trigger key={tabLabel.id} value={tabLabel.id}>\n {formatMessage({ id: tabLabel.labelId, defaultMessage: tabLabel.defaultMessage })}\n </Tabs.Trigger>\n ))}\n </Tabs.List>\n <Tabs.Content value={TAB_LABELS[0].id}>\n <ContentTypes\n layout={layouts.collectionTypes}\n kind=\"collectionTypes\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[1].id}>\n <ContentTypes\n layout={layouts.singleTypes}\n kind=\"singleTypes\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[2].id}>\n <PluginsAndSettingsPermissions\n layout={layouts.plugins}\n kind=\"plugins\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n <Tabs.Content value={TAB_LABELS[3].id}>\n <PluginsAndSettingsPermissions\n layout={layouts.settings}\n kind=\"settings\"\n isFormDisabled={isFormDisabled}\n />\n </Tabs.Content>\n </Tabs.Root>\n </PermissionsDataManagerProvider>\n );\n }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * reducer\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PermissionForms {\n collectionTypes: Form;\n plugins: Record<string, Form>;\n settings: Record<string, Form>;\n singleTypes: Form;\n}\n\ninterface State {\n initialData: PermissionForms;\n modifiedData: PermissionForms;\n layouts: {\n collectionTypes: PermissonContracts.ContentPermission;\n singleTypes: PermissonContracts.ContentPermission;\n plugins: GenericLayout<PermissonContracts.PluginPermission>[];\n settings: GenericLayout<PermissonContracts.SettingPermission>[];\n };\n}\n\nconst initialState = {\n initialData: {},\n modifiedData: {},\n layouts: {},\n};\n\ninterface OnChangeCollectionTypeGlobalActionCheckboxAction {\n type: 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX';\n collectionTypeKind: keyof PermissionForms;\n actionId: string;\n value: boolean;\n}\n\ninterface OnChangeCollectionTypeRowLeftCheckboxAction {\n type: 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX';\n pathToCollectionType: string;\n propertyName: string;\n rowName: string;\n value: boolean;\n}\n\ninterface OnChangeConditionsAction {\n type: 'ON_CHANGE_CONDITIONS';\n conditions: Record<string, ConditionForm>;\n}\n\ninterface OnChangeSimpleCheckboxAction {\n type: 'ON_CHANGE_SIMPLE_CHECKBOX';\n keys: string;\n value: boolean;\n}\n\ninterface OnChangeToggleParentCheckbox {\n type: 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX';\n keys: string;\n value: boolean;\n}\n\ninterface ResetFormAction {\n type: 'RESET_FORM';\n}\n\ninterface SetFormAfterSubmitAction {\n type: 'SET_FORM_AFTER_SUBMIT';\n}\n\ntype Action =\n | OnChangeCollectionTypeGlobalActionCheckboxAction\n | OnChangeCollectionTypeRowLeftCheckboxAction\n | OnChangeConditionsAction\n | OnChangeSimpleCheckboxAction\n | OnChangeToggleParentCheckbox\n | ResetFormAction\n | SetFormAfterSubmitAction;\n\n/* eslint-disable consistent-return */\nconst reducer = (state: State, action: Action) =>\n produce(state, (draftState) => {\n switch (action.type) {\n // This action is called when a checkbox in the <GlobalActions />\n // changes\n case 'ON_CHANGE_COLLECTION_TYPE_GLOBAL_ACTION_CHECKBOX': {\n const { collectionTypeKind, actionId, value } = action;\n const pathToData = ['modifiedData', collectionTypeKind];\n\n Object.keys(get(state, pathToData)).forEach((collectionType) => {\n const collectionTypeActionData = get(\n state,\n [...pathToData, collectionType, actionId],\n undefined\n );\n\n if (collectionTypeActionData) {\n let updatedValues = updateValues(collectionTypeActionData, value);\n\n // We need to remove the applied conditions\n // @ts-expect-error – TODO: type better\n if (!value && updatedValues.conditions) {\n // @ts-expect-error – TODO: type better\n const updatedConditions = updateValues(updatedValues.conditions, false);\n\n updatedValues = { ...updatedValues, conditions: updatedConditions };\n }\n\n set(draftState, [...pathToData, collectionType, actionId], updatedValues);\n }\n });\n\n break;\n }\n case 'ON_CHANGE_COLLECTION_TYPE_ROW_LEFT_CHECKBOX': {\n const { pathToCollectionType, propertyName, rowName, value } = action;\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n const pathToModifiedDataCollectionType = pathToCollectionType.split('..');\n\n const objToUpdate = get(nextModifiedDataState, pathToModifiedDataCollectionType, {});\n\n Object.keys(objToUpdate).forEach((actionId) => {\n // When a ct has multiple properties (ex: locales, field)\n // We need to make sure that we add any new property to the modifiedData\n // object.\n if (has(objToUpdate[actionId], `properties.${propertyName}`)) {\n const objValue = get(objToUpdate, [actionId, 'properties', propertyName, rowName]);\n const pathToDataToSet = [\n ...pathToModifiedDataCollectionType,\n actionId,\n 'properties',\n propertyName,\n rowName,\n ];\n\n if (!isObject(objValue)) {\n set(nextModifiedDataState, pathToDataToSet, value);\n } else {\n const updatedValue = updateValues(objValue, value);\n\n set(nextModifiedDataState, pathToDataToSet, updatedValue);\n }\n }\n });\n\n // When we uncheck a row, we need to check if we also need to disable the conditions\n if (!value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, 'modifiedData', nextModifiedDataState);\n\n break;\n }\n case 'ON_CHANGE_CONDITIONS': {\n Object.entries(action.conditions).forEach((array) => {\n const [stringPathToData, conditionsToUpdate] = array;\n\n set(\n draftState,\n ['modifiedData', ...stringPathToData.split('..'), 'conditions'],\n conditionsToUpdate\n );\n });\n\n break;\n }\n case 'ON_CHANGE_SIMPLE_CHECKBOX': {\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n\n set(nextModifiedDataState, [...action.keys.split('..')], action.value);\n\n // When we uncheck a single checkbox we need to remove the conditions from the parent\n if (!action.value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, 'modifiedData', nextModifiedDataState);\n\n break;\n }\n /*\n * Here the idea is to retrieve a specific value of the modifiedObject\n * then update all the boolean values of the retrieved one\n * and update the drafState.\n *\n * For instance in order to enable create action for all the fields and locales\n * of the restaurant content type we need to :\n * 1. Retrieve the modifiedData.collectionTypes.restaurant.create object\n * 2. Toggle all the end boolean values to the desired one\n * 3. Update the draftState\n *\n * Since the case works well in order to update what we called \"parent\" checkbox. We can\n * reuse the action when we need to toggle change all the values that depends on this one.\n * A parent checkbox is a checkbox which value is not a boolean but depends on its children ones, therefore,\n * a parent checkbox does not have a represented value in the draftState, they are just helpers.\n *\n * Given the following data:\n *\n * const data = {\n * restaurant: {\n * create: {\n * fields: { name: true },\n * locales: { en: false }\n * }\n * }\n * }\n *\n * The value of the create checkbox for the restaurant will be ƒalse since not all its children have\n * truthy values and in order to set its value to true when need to have all the values of its children set to true.\n *\n * Similarly, we can reuse the logic for the components attributes\n *\n */\n case 'ON_CHANGE_TOGGLE_PARENT_CHECKBOX': {\n const { keys, value } = action;\n const pathToValue = [...keys.split('..')];\n let nextModifiedDataState = cloneDeep(state.modifiedData);\n const oldValues = get(nextModifiedDataState, pathToValue, {});\n\n const updatedValues = updateValues(oldValues, value);\n set(nextModifiedDataState, pathToValue, updatedValues);\n\n // When we uncheck a parent checkbox we need to remove the associated conditions\n if (!value) {\n // @ts-expect-error – TODO: type better\n nextModifiedDataState = updateConditionsToFalse(nextModifiedDataState);\n }\n\n set(draftState, ['modifiedData'], nextModifiedDataState);\n\n break;\n }\n case 'RESET_FORM': {\n draftState.modifiedData = state.initialData;\n break;\n }\n case 'SET_FORM_AFTER_SUBMIT': {\n draftState.initialData = state.modifiedData;\n break;\n }\n default:\n return draftState;\n }\n });\n\n/* -------------------------------------------------------------------------------------------------\n * init (reducer)\n * -----------------------------------------------------------------------------------------------*/\n\nconst init = (\n layout: PermissionsProps['layout'],\n permissions: PermissionsProps['permissions']\n): State => {\n const {\n conditions,\n sections: { collectionTypes, singleTypes, plugins, settings },\n } = layout;\n\n const layouts = {\n collectionTypes,\n singleTypes,\n plugins: formatLayout(plugins, 'plugin'),\n settings: formatLayout(settings, 'category'),\n };\n\n const defaultForm = {\n collectionTypes: createDefaultCTForm(collectionTypes, conditions, permissions),\n singleTypes: createDefaultCTForm(singleTypes, conditions, permissions),\n plugins: createDefaultForm(layouts.plugins, conditions, permissions),\n settings: createDefaultForm(layouts.settings, conditions, permissions),\n };\n\n return {\n initialData: defaultForm,\n modifiedData: defaultForm,\n layouts,\n };\n};\n\nexport { Permissions };\nexport type {\n State,\n OnChangeCollectionTypeRowLeftCheckboxAction,\n OnChangeConditionsAction,\n OnChangeCollectionTypeGlobalActionCheckboxAction,\n};\n"],"names":["TAB_LABELS","labelId","defaultMessage","id","Permissions","React","forwardRef","layout","isFormDisabled","permissions","api","initialData","layouts","modifiedData","dispatch","useReducer","reducer","initialState","init","formatMessage","useIntl","useImperativeHandle","getPermissions","collectionTypesDiff","difference","collectionTypes","singleTypesDiff","singleTypes","contentTypesDiff","didUpdateConditions","isEmpty","Object","values","some","permission","permissionValue","has","permissionsToSend","formatPermissionsForAPI","resetForm","type","setFormAfterSubmit","handleChangeCollectionTypeLeftActionRowCheckbox","pathToCollectionType","propertyName","rowName","value","handleChangeCollectionTypeGlobalActionCheckbox","collectionTypeKind","actionId","handleChangeConditions","conditions","handleChangeSimpleCheckbox","useCallback","target","name","keys","handleChangeParentCheckbox","_jsx","PermissionsDataManagerProvider","availableConditions","onChangeConditions","onChangeSimpleCheckbox","onChangeParentCheckbox","onChangeCollectionTypeLeftActionRowCheckbox","onChangeCollectionTypeGlobalActionCheckbox","_jsxs","Tabs","Root","defaultValue","List","aria-label","map","tabLabel","Trigger","Content","ContentTypes","kind","PluginsAndSettingsPermissions","plugins","settings","state","action","produce","draftState","pathToData","get","forEach","collectionType","collectionTypeActionData","undefined","updatedValues","updateValues","updatedConditions","set","nextModifiedDataState","cloneDeep","pathToModifiedDataCollectionType","split","objToUpdate","objValue","pathToDataToSet","isObject","updatedValue","updateConditionsToFalse","entries","array","stringPathToData","conditionsToUpdate","pathToValue","oldValues","sections","formatLayout","defaultForm","createDefaultCTForm","createDefaultForm"],"mappings":"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"}
|
package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PluginsAndSettings.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Accordion,\n Box,\n BoxComponent,\n Checkbox,\n Flex,\n Grid,\n Modal,\n Typography,\n} from '@strapi/design-system';\nimport get from 'lodash/get';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport {\n SettingPermission,\n PluginPermission,\n} from '../../../../../../../shared/contracts/permissions';\nimport { capitalise } from '../../../../../utils/strings';\nimport {\n PermissionsDataManagerContextValue,\n usePermissionsDataManager,\n} from '../hooks/usePermissionsDataManager';\nimport { createArrayOfValues } from '../utils/createArrayOfValues';\nimport { ChildrenForm, ConditionForm } from '../utils/forms';\nimport { RecursiveRecordOfBooleans, getCheckboxState } from '../utils/getCheckboxState';\nimport { removeConditionKeyFromData } from '../utils/removeConditionKeyFromData';\n\nimport { ConditionsButton } from './ConditionsButton';\nimport { ConditionsModal } from './ConditionsModal';\n\nimport type { GenericLayout } from '../utils/layouts';\n\n/* -------------------------------------------------------------------------------------------------\n * PluginsAndSettingsPermissions\n * -----------------------------------------------------------------------------------------------*/\n\ntype Layout = GenericLayout<SettingPermission | PluginPermission>[];\n\ninterface PluginsAndSettingsPermissionsProps extends Pick<RowProps, 'kind' | 'isFormDisabled'> {\n layout: Layout;\n}\n\nconst PluginsAndSettingsPermissions = ({\n layout,\n ...restProps\n}: PluginsAndSettingsPermissionsProps) => {\n return (\n <Box padding={6} background=\"neutral0\">\n <Accordion.Root size=\"M\">\n {layout.map(({ category, categoryId, childrenForm }, index) => {\n return (\n <Row\n key={category}\n childrenForm={childrenForm}\n variant={index % 2 === 1 ? 'primary' : 'secondary'}\n name={category}\n pathToData={[restProps.kind, categoryId]}\n {...restProps}\n />\n );\n })}\n </Accordion.Root>\n </Box>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Row\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RowProps\n extends Pick<Layout[number], 'childrenForm'>,\n Pick<Accordion.HeaderProps, 'variant'> {\n kind: Exclude<keyof PermissionsDataManagerContextValue['modifiedData'], `${string}Types`>;\n name: string;\n isFormDisabled?: boolean;\n pathToData: string[];\n}\n\nconst Row = ({\n childrenForm,\n kind,\n name,\n isFormDisabled = false,\n variant,\n pathToData,\n}: RowProps) => {\n const { formatMessage } = useIntl();\n\n const categoryName = name.split('::').pop() ?? '';\n const categoryDisplayName =\n categoryName === 'upload' ? 'Media Library' : capitalise(categoryName.replace(/-/g, ' '));\n\n return (\n <Accordion.Item value={name}>\n <Accordion.Header variant={variant}>\n <Accordion.Trigger\n caretPosition=\"right\"\n description={`${formatMessage(\n { id: 'Settings.permissions.category', defaultMessage: categoryName },\n { category: categoryName }\n )} ${kind === 'plugins' ? 'plugin' : kind}`}\n >\n {categoryDisplayName}\n </Accordion.Trigger>\n </Accordion.Header>\n <Accordion.Content>\n <Box padding={6}>\n {childrenForm.map(({ actions, subCategoryName, subCategoryId }) => (\n <SubCategory\n key={subCategoryName}\n actions={actions}\n categoryName={categoryName}\n isFormDisabled={isFormDisabled}\n subCategoryName={subCategoryName}\n pathToData={[...pathToData, subCategoryId]}\n />\n ))}\n </Box>\n </Accordion.Content>\n </Accordion.Item>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * SubCategory\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SubCategoryProps {\n actions?: Array<SettingPermission | PluginPermission>;\n categoryName: string;\n isFormDisabled?: boolean;\n subCategoryName: string;\n pathToData: string[];\n}\n\nconst SubCategory = ({\n actions = [],\n categoryName,\n isFormDisabled,\n subCategoryName,\n pathToData,\n}: SubCategoryProps) => {\n const { modifiedData, onChangeParentCheckbox, onChangeSimpleCheckbox } =\n usePermissionsDataManager();\n const [isConditionModalOpen, setIsConditionModalOpen] = React.useState(false);\n const { formatMessage } = useIntl();\n\n const mainData = get(modifiedData, pathToData, {});\n\n const dataWithoutCondition = React.useMemo(() => {\n return Object.keys(mainData).reduce<RecursiveRecordOfBooleans>((acc, current) => {\n acc[current] = removeConditionKeyFromData(mainData[current])!;\n\n return acc;\n }, {});\n }, [mainData]);\n\n const { hasAllActionsSelected, hasSomeActionsSelected } = getCheckboxState(dataWithoutCondition);\n\n // We need to format the actions so it matches the shape of the ConditionsModal actions props\n const formattedActions = React.useMemo(() => {\n return actions.map((action) => {\n const checkboxName = [...pathToData, action.action, 'properties', 'enabled'];\n const checkboxValue = get(modifiedData, checkboxName, false);\n const conditionValue = get(modifiedData, [...pathToData, action.action, 'conditions'], {});\n const hasConditions = createArrayOfValues(conditionValue).some((val) => val);\n\n return {\n ...action,\n isDisplayed: checkboxValue,\n checkboxName: checkboxName.join('..'),\n hasSomeActionsSelected: checkboxValue,\n value: checkboxValue,\n hasConditions,\n label: action.displayName,\n actionId: action.action,\n pathToConditionsObject: [...pathToData, action.action],\n };\n });\n }, [actions, modifiedData, pathToData]);\n\n const datum: ChildrenForm = get(modifiedData, [...pathToData], {});\n\n const doesButtonHasCondition = createArrayOfValues(\n Object.entries(datum).reduce<Record<string, ConditionForm>>((acc, current) => {\n const [catName, { conditions }] = current;\n\n acc[catName] = conditions;\n\n return acc;\n }, {})\n ).some((val) => val);\n\n return (\n <>\n <Box>\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Box paddingRight={4}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {subCategoryName}\n </Typography>\n </Box>\n <Border flex={1} />\n <Box paddingLeft={4}>\n <Checkbox\n name={pathToData.join('..')}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) => {\n onChangeParentCheckbox({\n target: {\n name: pathToData.join('..'),\n value: !!value,\n },\n });\n }}\n checked={hasSomeActionsSelected ? 'indeterminate' : hasAllActionsSelected}\n >\n {formatMessage({ id: 'app.utils.select-all', defaultMessage: 'Select all' })}\n </Checkbox>\n </Box>\n </Flex>\n <Flex paddingTop={6} paddingBottom={6}>\n <Grid.Root gap={2} style={{ flex: 1 }}>\n {formattedActions.map(({ checkboxName, value, action, displayName, hasConditions }) => {\n return (\n <Grid.Item col={4} m={6} xs={12} key={action} direction=\"column\" alignItems=\"start\">\n <CheckboxWrapper $disabled={isFormDisabled} $hasConditions={hasConditions}>\n <Checkbox\n name={checkboxName}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) => {\n onChangeSimpleCheckbox({\n target: {\n name: checkboxName,\n value: !!value,\n },\n });\n }}\n checked={value}\n >\n {displayName}\n </Checkbox>\n </CheckboxWrapper>\n </Grid.Item>\n );\n })}\n </Grid.Root>\n <Modal.Root\n open={isConditionModalOpen}\n onOpenChange={() => {\n setIsConditionModalOpen((prev) => !prev);\n }}\n >\n <Modal.Trigger>\n <ConditionsButton hasConditions={doesButtonHasCondition} />\n </Modal.Trigger>\n <ConditionsModal\n headerBreadCrumbs={[categoryName, subCategoryName]}\n actions={formattedActions}\n isFormDisabled={isFormDisabled}\n onClose={() => {\n setIsConditionModalOpen(false);\n }}\n />\n </Modal.Root>\n </Flex>\n </Box>\n </>\n );\n};\n\nconst Border = styled<BoxComponent>(Box)`\n align-self: center;\n border-top: 1px solid ${({ theme }) => theme.colors.neutral150};\n`;\n\nconst CheckboxWrapper = styled.div<{ $hasConditions?: boolean; $disabled?: boolean }>`\n position: relative;\n word-break: keep-all;\n ${({ $hasConditions, $disabled, theme }) =>\n $hasConditions &&\n `\n &:before {\n content: '';\n position: absolute;\n top: -0.4rem;\n left: -0.8rem;\n width: 0.6rem;\n height: 0.6rem;\n border-radius: 2rem;\n background: ${$disabled ? theme.colors.neutral100 : theme.colors.primary600};\n }\n `}\n`;\n\nexport { PluginsAndSettingsPermissions };\n"],"names":["PluginsAndSettingsPermissions","layout","restProps","_jsx","Box","padding","background","Accordion","Root","size","map","category","categoryId","childrenForm","index","Row","variant","name","pathToData","kind","isFormDisabled","formatMessage","useIntl","categoryName","split","pop","categoryDisplayName","capitalise","replace","_jsxs","Item","value","Header","Trigger","caretPosition","description","id","defaultMessage","Content","actions","subCategoryName","subCategoryId","SubCategory","modifiedData","onChangeParentCheckbox","onChangeSimpleCheckbox","usePermissionsDataManager","isConditionModalOpen","setIsConditionModalOpen","React","useState","mainData","get","dataWithoutCondition","useMemo","Object","keys","reduce","acc","current","removeConditionKeyFromData","hasAllActionsSelected","hasSomeActionsSelected","getCheckboxState","formattedActions","action","checkboxName","checkboxValue","conditionValue","hasConditions","createArrayOfValues","some","val","isDisplayed","join","label","displayName","actionId","pathToConditionsObject","datum","doesButtonHasCondition","entries","catName","conditions","_Fragment","Flex","justifyContent","alignItems","paddingRight","Typography","textColor","Border","flex","paddingLeft","Checkbox","disabled","onCheckedChange","target","checked","paddingTop","paddingBottom","Grid","gap","style","col","m","xs","direction","CheckboxWrapper","$disabled","$hasConditions","Modal","open","onOpenChange","prev","ConditionsButton","ConditionsModal","headerBreadCrumbs","onClose","styled","theme","colors","neutral150","div","neutral100","primary600"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PluginsAndSettings.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Accordion,\n Box,\n BoxComponent,\n Checkbox,\n Flex,\n Grid,\n Modal,\n Typography,\n} from '@strapi/design-system';\nimport get from 'lodash/get';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport {\n SettingPermission,\n PluginPermission,\n} from '../../../../../../../shared/contracts/permissions';\nimport { capitalise } from '../../../../../utils/strings';\nimport {\n PermissionsDataManagerContextValue,\n usePermissionsDataManager,\n} from '../hooks/usePermissionsDataManager';\nimport { createArrayOfValues } from '../utils/createArrayOfValues';\nimport { ChildrenForm, ConditionForm } from '../utils/forms';\nimport { RecursiveRecordOfBooleans, getCheckboxState } from '../utils/getCheckboxState';\nimport { removeConditionKeyFromData } from '../utils/removeConditionKeyFromData';\n\nimport { ConditionsButton } from './ConditionsButton';\nimport { ConditionsModal } from './ConditionsModal';\n\nimport type { GenericLayout } from '../utils/layouts';\n\n/* -------------------------------------------------------------------------------------------------\n * PluginsAndSettingsPermissions\n * -----------------------------------------------------------------------------------------------*/\n\ntype Layout = GenericLayout<SettingPermission | PluginPermission>[];\n\ninterface PluginsAndSettingsPermissionsProps extends Pick<RowProps, 'kind' | 'isFormDisabled'> {\n layout: Layout;\n}\n\nconst PluginsAndSettingsPermissions = ({\n layout,\n ...restProps\n}: PluginsAndSettingsPermissionsProps) => {\n return (\n <Box padding={6} background=\"neutral0\">\n <Accordion.Root size=\"M\">\n {layout.map(({ category, categoryId, childrenForm }, index) => {\n return (\n <Row\n key={category}\n childrenForm={childrenForm}\n variant={index % 2 === 1 ? 'primary' : 'secondary'}\n name={category}\n pathToData={[restProps.kind, categoryId]}\n {...restProps}\n />\n );\n })}\n </Accordion.Root>\n </Box>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Row\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RowProps\n extends Pick<Layout[number], 'childrenForm'>,\n Pick<Accordion.HeaderProps, 'variant'> {\n kind: Exclude<keyof PermissionsDataManagerContextValue['modifiedData'], `${string}Types`>;\n name: string;\n isFormDisabled?: boolean;\n pathToData: string[];\n}\n\nconst Row = ({\n childrenForm,\n kind,\n name,\n isFormDisabled = false,\n variant,\n pathToData,\n}: RowProps) => {\n const { formatMessage } = useIntl();\n\n const categoryName = name.split('::').pop() ?? '';\n const categoryDisplayName =\n categoryName === 'upload' ? 'Media Library' : capitalise(categoryName.replace(/-/g, ' '));\n\n return (\n <Accordion.Item value={name}>\n <Accordion.Header variant={variant}>\n <Accordion.Trigger\n caretPosition=\"right\"\n description={`${formatMessage(\n { id: 'Settings.permissions.category', defaultMessage: categoryName },\n { category: categoryName }\n )} ${kind === 'plugins' ? 'plugin' : kind}`}\n >\n {categoryDisplayName}\n </Accordion.Trigger>\n </Accordion.Header>\n <Accordion.Content>\n <Box padding={6}>\n {childrenForm.map(({ actions, subCategoryName, subCategoryId }) => (\n <SubCategory\n key={subCategoryName}\n actions={actions}\n categoryName={categoryName}\n isFormDisabled={isFormDisabled}\n subCategoryName={subCategoryName}\n pathToData={[...pathToData, subCategoryId]}\n />\n ))}\n </Box>\n </Accordion.Content>\n </Accordion.Item>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * SubCategory\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SubCategoryProps {\n actions?: Array<SettingPermission | PluginPermission>;\n categoryName: string;\n isFormDisabled?: boolean;\n subCategoryName: string;\n pathToData: string[];\n}\n\nconst SubCategory = ({\n actions = [],\n categoryName,\n isFormDisabled,\n subCategoryName,\n pathToData,\n}: SubCategoryProps) => {\n const { modifiedData, onChangeParentCheckbox, onChangeSimpleCheckbox } =\n usePermissionsDataManager();\n const [isConditionModalOpen, setIsConditionModalOpen] = React.useState(false);\n const { formatMessage } = useIntl();\n\n const mainData = get(modifiedData, pathToData, {});\n\n const dataWithoutCondition = React.useMemo(() => {\n return Object.keys(mainData).reduce<RecursiveRecordOfBooleans>((acc, current) => {\n acc[current] = removeConditionKeyFromData(mainData[current])!;\n\n return acc;\n }, {});\n }, [mainData]);\n\n const { hasAllActionsSelected, hasSomeActionsSelected } = getCheckboxState(dataWithoutCondition);\n\n // We need to format the actions so it matches the shape of the ConditionsModal actions props\n const formattedActions = React.useMemo(() => {\n return actions.map((action) => {\n const checkboxName = [...pathToData, action.action, 'properties', 'enabled'];\n const checkboxValue = get(modifiedData, checkboxName, false);\n const conditionValue = get(modifiedData, [...pathToData, action.action, 'conditions'], {});\n const hasConditions = createArrayOfValues(conditionValue).some((val) => val);\n\n return {\n ...action,\n isDisplayed: checkboxValue,\n checkboxName: checkboxName.join('..'),\n hasSomeActionsSelected: checkboxValue,\n value: checkboxValue,\n hasConditions,\n label: action.displayName,\n actionId: action.action,\n pathToConditionsObject: [...pathToData, action.action],\n };\n });\n }, [actions, modifiedData, pathToData]);\n\n const datum: ChildrenForm = get(modifiedData, [...pathToData], {});\n\n const doesButtonHasCondition = createArrayOfValues(\n Object.entries(datum).reduce<Record<string, ConditionForm>>((acc, current) => {\n const [catName, { conditions }] = current;\n\n acc[catName] = conditions;\n\n return acc;\n }, {})\n ).some((val) => val);\n\n return (\n <>\n <Box>\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Box paddingRight={4}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {subCategoryName}\n </Typography>\n </Box>\n <Border flex={1} />\n <Box paddingLeft={4}>\n <Checkbox\n name={pathToData.join('..')}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) => {\n onChangeParentCheckbox({\n target: {\n name: pathToData.join('..'),\n value: !!value,\n },\n });\n }}\n checked={hasSomeActionsSelected ? 'indeterminate' : hasAllActionsSelected}\n >\n {formatMessage({ id: 'app.utils.select-all', defaultMessage: 'Select all' })}\n </Checkbox>\n </Box>\n </Flex>\n <Flex paddingTop={6} paddingBottom={6}>\n <Grid.Root gap={2} style={{ flex: 1 }}>\n {formattedActions.map(({ checkboxName, value, action, displayName, hasConditions }) => {\n return (\n <Grid.Item col={4} m={6} xs={12} key={action} direction=\"column\" alignItems=\"start\">\n <CheckboxWrapper $disabled={isFormDisabled} $hasConditions={hasConditions}>\n <Checkbox\n name={checkboxName}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) => {\n onChangeSimpleCheckbox({\n target: {\n name: checkboxName,\n value: !!value,\n },\n });\n }}\n checked={value}\n >\n {displayName}\n </Checkbox>\n </CheckboxWrapper>\n </Grid.Item>\n );\n })}\n </Grid.Root>\n <Modal.Root\n open={isConditionModalOpen}\n onOpenChange={() => {\n setIsConditionModalOpen((prev) => !prev);\n }}\n >\n <Modal.Trigger>\n <ConditionsButton hasConditions={doesButtonHasCondition} />\n </Modal.Trigger>\n <ConditionsModal\n headerBreadCrumbs={[categoryName, subCategoryName]}\n actions={formattedActions}\n isFormDisabled={isFormDisabled}\n onClose={() => {\n setIsConditionModalOpen(false);\n }}\n />\n </Modal.Root>\n </Flex>\n </Box>\n </>\n );\n};\n\nconst Border = styled<BoxComponent>(Box)`\n align-self: center;\n border-top: 1px solid ${({ theme }) => theme.colors.neutral150};\n`;\n\nconst CheckboxWrapper = styled.div<{ $hasConditions?: boolean; $disabled?: boolean }>`\n position: relative;\n word-break: keep-all;\n ${({ $hasConditions, $disabled, theme }) =>\n $hasConditions &&\n `\n &:before {\n content: '';\n position: absolute;\n top: -0.4rem;\n left: -0.8rem;\n width: 0.6rem;\n height: 0.6rem;\n border-radius: 2rem;\n background: ${$disabled ? theme.colors.neutral100 : theme.colors.primary600};\n }\n `}\n`;\n\nexport { PluginsAndSettingsPermissions };\n"],"names":["PluginsAndSettingsPermissions","layout","restProps","_jsx","Box","padding","background","Accordion","Root","size","map","category","categoryId","childrenForm","index","Row","variant","name","pathToData","kind","isFormDisabled","formatMessage","useIntl","categoryName","split","pop","categoryDisplayName","capitalise","replace","_jsxs","Item","value","Header","Trigger","caretPosition","description","id","defaultMessage","Content","actions","subCategoryName","subCategoryId","SubCategory","modifiedData","onChangeParentCheckbox","onChangeSimpleCheckbox","usePermissionsDataManager","isConditionModalOpen","setIsConditionModalOpen","React","useState","mainData","get","dataWithoutCondition","useMemo","Object","keys","reduce","acc","current","removeConditionKeyFromData","hasAllActionsSelected","hasSomeActionsSelected","getCheckboxState","formattedActions","action","checkboxName","checkboxValue","conditionValue","hasConditions","createArrayOfValues","some","val","isDisplayed","join","label","displayName","actionId","pathToConditionsObject","datum","doesButtonHasCondition","entries","catName","conditions","_Fragment","Flex","justifyContent","alignItems","paddingRight","Typography","textColor","Border","flex","paddingLeft","Checkbox","disabled","onCheckedChange","target","checked","paddingTop","paddingBottom","Grid","gap","style","col","m","xs","direction","CheckboxWrapper","$disabled","$hasConditions","Modal","open","onOpenChange","prev","ConditionsButton","ConditionsModal","headerBreadCrumbs","onClose","styled","theme","colors","neutral150","div","neutral100","primary600"],"mappings":"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"}
|
package/dist/admin/admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PluginsAndSettings.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Accordion,\n Box,\n BoxComponent,\n Checkbox,\n Flex,\n Grid,\n Modal,\n Typography,\n} from '@strapi/design-system';\nimport get from 'lodash/get';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport {\n SettingPermission,\n PluginPermission,\n} from '../../../../../../../shared/contracts/permissions';\nimport { capitalise } from '../../../../../utils/strings';\nimport {\n PermissionsDataManagerContextValue,\n usePermissionsDataManager,\n} from '../hooks/usePermissionsDataManager';\nimport { createArrayOfValues } from '../utils/createArrayOfValues';\nimport { ChildrenForm, ConditionForm } from '../utils/forms';\nimport { RecursiveRecordOfBooleans, getCheckboxState } from '../utils/getCheckboxState';\nimport { removeConditionKeyFromData } from '../utils/removeConditionKeyFromData';\n\nimport { ConditionsButton } from './ConditionsButton';\nimport { ConditionsModal } from './ConditionsModal';\n\nimport type { GenericLayout } from '../utils/layouts';\n\n/* -------------------------------------------------------------------------------------------------\n * PluginsAndSettingsPermissions\n * -----------------------------------------------------------------------------------------------*/\n\ntype Layout = GenericLayout<SettingPermission | PluginPermission>[];\n\ninterface PluginsAndSettingsPermissionsProps extends Pick<RowProps, 'kind' | 'isFormDisabled'> {\n layout: Layout;\n}\n\nconst PluginsAndSettingsPermissions = ({\n layout,\n ...restProps\n}: PluginsAndSettingsPermissionsProps) => {\n return (\n <Box padding={6} background=\"neutral0\">\n <Accordion.Root size=\"M\">\n {layout.map(({ category, categoryId, childrenForm }, index) => {\n return (\n <Row\n key={category}\n childrenForm={childrenForm}\n variant={index % 2 === 1 ? 'primary' : 'secondary'}\n name={category}\n pathToData={[restProps.kind, categoryId]}\n {...restProps}\n />\n );\n })}\n </Accordion.Root>\n </Box>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Row\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RowProps\n extends Pick<Layout[number], 'childrenForm'>,\n Pick<Accordion.HeaderProps, 'variant'> {\n kind: Exclude<keyof PermissionsDataManagerContextValue['modifiedData'], `${string}Types`>;\n name: string;\n isFormDisabled?: boolean;\n pathToData: string[];\n}\n\nconst Row = ({\n childrenForm,\n kind,\n name,\n isFormDisabled = false,\n variant,\n pathToData,\n}: RowProps) => {\n const { formatMessage } = useIntl();\n\n const categoryName = name.split('::').pop() ?? '';\n const categoryDisplayName =\n categoryName === 'upload' ? 'Media Library' : capitalise(categoryName.replace(/-/g, ' '));\n\n return (\n <Accordion.Item value={name}>\n <Accordion.Header variant={variant}>\n <Accordion.Trigger\n caretPosition=\"right\"\n description={`${formatMessage(\n { id: 'Settings.permissions.category', defaultMessage: categoryName },\n { category: categoryName }\n )} ${kind === 'plugins' ? 'plugin' : kind}`}\n >\n {categoryDisplayName}\n </Accordion.Trigger>\n </Accordion.Header>\n <Accordion.Content>\n <Box padding={6}>\n {childrenForm.map(({ actions, subCategoryName, subCategoryId }) => (\n <SubCategory\n key={subCategoryName}\n actions={actions}\n categoryName={categoryName}\n isFormDisabled={isFormDisabled}\n subCategoryName={subCategoryName}\n pathToData={[...pathToData, subCategoryId]}\n />\n ))}\n </Box>\n </Accordion.Content>\n </Accordion.Item>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * SubCategory\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SubCategoryProps {\n actions?: Array<SettingPermission | PluginPermission>;\n categoryName: string;\n isFormDisabled?: boolean;\n subCategoryName: string;\n pathToData: string[];\n}\n\nconst SubCategory = ({\n actions = [],\n categoryName,\n isFormDisabled,\n subCategoryName,\n pathToData,\n}: SubCategoryProps) => {\n const { modifiedData, onChangeParentCheckbox, onChangeSimpleCheckbox } =\n usePermissionsDataManager();\n const [isConditionModalOpen, setIsConditionModalOpen] = React.useState(false);\n const { formatMessage } = useIntl();\n\n const mainData = get(modifiedData, pathToData, {});\n\n const dataWithoutCondition = React.useMemo(() => {\n return Object.keys(mainData).reduce<RecursiveRecordOfBooleans>((acc, current) => {\n acc[current] = removeConditionKeyFromData(mainData[current])!;\n\n return acc;\n }, {});\n }, [mainData]);\n\n const { hasAllActionsSelected, hasSomeActionsSelected } = getCheckboxState(dataWithoutCondition);\n\n // We need to format the actions so it matches the shape of the ConditionsModal actions props\n const formattedActions = React.useMemo(() => {\n return actions.map((action) => {\n const checkboxName = [...pathToData, action.action, 'properties', 'enabled'];\n const checkboxValue = get(modifiedData, checkboxName, false);\n const conditionValue = get(modifiedData, [...pathToData, action.action, 'conditions'], {});\n const hasConditions = createArrayOfValues(conditionValue).some((val) => val);\n\n return {\n ...action,\n isDisplayed: checkboxValue,\n checkboxName: checkboxName.join('..'),\n hasSomeActionsSelected: checkboxValue,\n value: checkboxValue,\n hasConditions,\n label: action.displayName,\n actionId: action.action,\n pathToConditionsObject: [...pathToData, action.action],\n };\n });\n }, [actions, modifiedData, pathToData]);\n\n const datum: ChildrenForm = get(modifiedData, [...pathToData], {});\n\n const doesButtonHasCondition = createArrayOfValues(\n Object.entries(datum).reduce<Record<string, ConditionForm>>((acc, current) => {\n const [catName, { conditions }] = current;\n\n acc[catName] = conditions;\n\n return acc;\n }, {})\n ).some((val) => val);\n\n return (\n <>\n <Box>\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Box paddingRight={4}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {subCategoryName}\n </Typography>\n </Box>\n <Border flex={1} />\n <Box paddingLeft={4}>\n <Checkbox\n name={pathToData.join('..')}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) => {\n onChangeParentCheckbox({\n target: {\n name: pathToData.join('..'),\n value: !!value,\n },\n });\n }}\n checked={hasSomeActionsSelected ? 'indeterminate' : hasAllActionsSelected}\n >\n {formatMessage({ id: 'app.utils.select-all', defaultMessage: 'Select all' })}\n </Checkbox>\n </Box>\n </Flex>\n <Flex paddingTop={6} paddingBottom={6}>\n <Grid.Root gap={2} style={{ flex: 1 }}>\n {formattedActions.map(({ checkboxName, value, action, displayName, hasConditions }) => {\n return (\n <Grid.Item col={4} m={6} xs={12} key={action} direction=\"column\" alignItems=\"start\">\n <CheckboxWrapper $disabled={isFormDisabled} $hasConditions={hasConditions}>\n <Checkbox\n name={checkboxName}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) => {\n onChangeSimpleCheckbox({\n target: {\n name: checkboxName,\n value: !!value,\n },\n });\n }}\n checked={value}\n >\n {displayName}\n </Checkbox>\n </CheckboxWrapper>\n </Grid.Item>\n );\n })}\n </Grid.Root>\n <Modal.Root\n open={isConditionModalOpen}\n onOpenChange={() => {\n setIsConditionModalOpen((prev) => !prev);\n }}\n >\n <Modal.Trigger>\n <ConditionsButton hasConditions={doesButtonHasCondition} />\n </Modal.Trigger>\n <ConditionsModal\n headerBreadCrumbs={[categoryName, subCategoryName]}\n actions={formattedActions}\n isFormDisabled={isFormDisabled}\n onClose={() => {\n setIsConditionModalOpen(false);\n }}\n />\n </Modal.Root>\n </Flex>\n </Box>\n </>\n );\n};\n\nconst Border = styled<BoxComponent>(Box)`\n align-self: center;\n border-top: 1px solid ${({ theme }) => theme.colors.neutral150};\n`;\n\nconst CheckboxWrapper = styled.div<{ $hasConditions?: boolean; $disabled?: boolean }>`\n position: relative;\n word-break: keep-all;\n ${({ $hasConditions, $disabled, theme }) =>\n $hasConditions &&\n `\n &:before {\n content: '';\n position: absolute;\n top: -0.4rem;\n left: -0.8rem;\n width: 0.6rem;\n height: 0.6rem;\n border-radius: 2rem;\n background: ${$disabled ? theme.colors.neutral100 : theme.colors.primary600};\n }\n `}\n`;\n\nexport { PluginsAndSettingsPermissions };\n"],"names":["PluginsAndSettingsPermissions","layout","restProps","_jsx","Box","padding","background","Accordion","Root","size","map","category","categoryId","childrenForm","index","Row","variant","name","pathToData","kind","isFormDisabled","formatMessage","useIntl","categoryName","split","pop","categoryDisplayName","capitalise","replace","_jsxs","Item","value","Header","Trigger","caretPosition","description","id","defaultMessage","Content","actions","subCategoryName","subCategoryId","SubCategory","modifiedData","onChangeParentCheckbox","onChangeSimpleCheckbox","usePermissionsDataManager","isConditionModalOpen","setIsConditionModalOpen","React","useState","mainData","get","dataWithoutCondition","useMemo","Object","keys","reduce","acc","current","removeConditionKeyFromData","hasAllActionsSelected","hasSomeActionsSelected","getCheckboxState","formattedActions","action","checkboxName","checkboxValue","conditionValue","hasConditions","createArrayOfValues","some","val","isDisplayed","join","label","displayName","actionId","pathToConditionsObject","datum","doesButtonHasCondition","entries","catName","conditions","_Fragment","Flex","justifyContent","alignItems","paddingRight","Typography","textColor","Border","flex","paddingLeft","Checkbox","disabled","onCheckedChange","target","checked","paddingTop","paddingBottom","Grid","gap","style","col","m","xs","direction","CheckboxWrapper","$disabled","$hasConditions","Modal","open","onOpenChange","prev","ConditionsButton","ConditionsModal","headerBreadCrumbs","onClose","styled","theme","colors","neutral150","div","neutral100","primary600"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PluginsAndSettings.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/PluginsAndSettings.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Accordion,\n Box,\n BoxComponent,\n Checkbox,\n Flex,\n Grid,\n Modal,\n Typography,\n} from '@strapi/design-system';\nimport get from 'lodash/get';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport {\n SettingPermission,\n PluginPermission,\n} from '../../../../../../../shared/contracts/permissions';\nimport { capitalise } from '../../../../../utils/strings';\nimport {\n PermissionsDataManagerContextValue,\n usePermissionsDataManager,\n} from '../hooks/usePermissionsDataManager';\nimport { createArrayOfValues } from '../utils/createArrayOfValues';\nimport { ChildrenForm, ConditionForm } from '../utils/forms';\nimport { RecursiveRecordOfBooleans, getCheckboxState } from '../utils/getCheckboxState';\nimport { removeConditionKeyFromData } from '../utils/removeConditionKeyFromData';\n\nimport { ConditionsButton } from './ConditionsButton';\nimport { ConditionsModal } from './ConditionsModal';\n\nimport type { GenericLayout } from '../utils/layouts';\n\n/* -------------------------------------------------------------------------------------------------\n * PluginsAndSettingsPermissions\n * -----------------------------------------------------------------------------------------------*/\n\ntype Layout = GenericLayout<SettingPermission | PluginPermission>[];\n\ninterface PluginsAndSettingsPermissionsProps extends Pick<RowProps, 'kind' | 'isFormDisabled'> {\n layout: Layout;\n}\n\nconst PluginsAndSettingsPermissions = ({\n layout,\n ...restProps\n}: PluginsAndSettingsPermissionsProps) => {\n return (\n <Box padding={6} background=\"neutral0\">\n <Accordion.Root size=\"M\">\n {layout.map(({ category, categoryId, childrenForm }, index) => {\n return (\n <Row\n key={category}\n childrenForm={childrenForm}\n variant={index % 2 === 1 ? 'primary' : 'secondary'}\n name={category}\n pathToData={[restProps.kind, categoryId]}\n {...restProps}\n />\n );\n })}\n </Accordion.Root>\n </Box>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Row\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RowProps\n extends Pick<Layout[number], 'childrenForm'>,\n Pick<Accordion.HeaderProps, 'variant'> {\n kind: Exclude<keyof PermissionsDataManagerContextValue['modifiedData'], `${string}Types`>;\n name: string;\n isFormDisabled?: boolean;\n pathToData: string[];\n}\n\nconst Row = ({\n childrenForm,\n kind,\n name,\n isFormDisabled = false,\n variant,\n pathToData,\n}: RowProps) => {\n const { formatMessage } = useIntl();\n\n const categoryName = name.split('::').pop() ?? '';\n const categoryDisplayName =\n categoryName === 'upload' ? 'Media Library' : capitalise(categoryName.replace(/-/g, ' '));\n\n return (\n <Accordion.Item value={name}>\n <Accordion.Header variant={variant}>\n <Accordion.Trigger\n caretPosition=\"right\"\n description={`${formatMessage(\n { id: 'Settings.permissions.category', defaultMessage: categoryName },\n { category: categoryName }\n )} ${kind === 'plugins' ? 'plugin' : kind}`}\n >\n {categoryDisplayName}\n </Accordion.Trigger>\n </Accordion.Header>\n <Accordion.Content>\n <Box padding={6}>\n {childrenForm.map(({ actions, subCategoryName, subCategoryId }) => (\n <SubCategory\n key={subCategoryName}\n actions={actions}\n categoryName={categoryName}\n isFormDisabled={isFormDisabled}\n subCategoryName={subCategoryName}\n pathToData={[...pathToData, subCategoryId]}\n />\n ))}\n </Box>\n </Accordion.Content>\n </Accordion.Item>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * SubCategory\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SubCategoryProps {\n actions?: Array<SettingPermission | PluginPermission>;\n categoryName: string;\n isFormDisabled?: boolean;\n subCategoryName: string;\n pathToData: string[];\n}\n\nconst SubCategory = ({\n actions = [],\n categoryName,\n isFormDisabled,\n subCategoryName,\n pathToData,\n}: SubCategoryProps) => {\n const { modifiedData, onChangeParentCheckbox, onChangeSimpleCheckbox } =\n usePermissionsDataManager();\n const [isConditionModalOpen, setIsConditionModalOpen] = React.useState(false);\n const { formatMessage } = useIntl();\n\n const mainData = get(modifiedData, pathToData, {});\n\n const dataWithoutCondition = React.useMemo(() => {\n return Object.keys(mainData).reduce<RecursiveRecordOfBooleans>((acc, current) => {\n acc[current] = removeConditionKeyFromData(mainData[current])!;\n\n return acc;\n }, {});\n }, [mainData]);\n\n const { hasAllActionsSelected, hasSomeActionsSelected } = getCheckboxState(dataWithoutCondition);\n\n // We need to format the actions so it matches the shape of the ConditionsModal actions props\n const formattedActions = React.useMemo(() => {\n return actions.map((action) => {\n const checkboxName = [...pathToData, action.action, 'properties', 'enabled'];\n const checkboxValue = get(modifiedData, checkboxName, false);\n const conditionValue = get(modifiedData, [...pathToData, action.action, 'conditions'], {});\n const hasConditions = createArrayOfValues(conditionValue).some((val) => val);\n\n return {\n ...action,\n isDisplayed: checkboxValue,\n checkboxName: checkboxName.join('..'),\n hasSomeActionsSelected: checkboxValue,\n value: checkboxValue,\n hasConditions,\n label: action.displayName,\n actionId: action.action,\n pathToConditionsObject: [...pathToData, action.action],\n };\n });\n }, [actions, modifiedData, pathToData]);\n\n const datum: ChildrenForm = get(modifiedData, [...pathToData], {});\n\n const doesButtonHasCondition = createArrayOfValues(\n Object.entries(datum).reduce<Record<string, ConditionForm>>((acc, current) => {\n const [catName, { conditions }] = current;\n\n acc[catName] = conditions;\n\n return acc;\n }, {})\n ).some((val) => val);\n\n return (\n <>\n <Box>\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Box paddingRight={4}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {subCategoryName}\n </Typography>\n </Box>\n <Border flex={1} />\n <Box paddingLeft={4}>\n <Checkbox\n name={pathToData.join('..')}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) => {\n onChangeParentCheckbox({\n target: {\n name: pathToData.join('..'),\n value: !!value,\n },\n });\n }}\n checked={hasSomeActionsSelected ? 'indeterminate' : hasAllActionsSelected}\n >\n {formatMessage({ id: 'app.utils.select-all', defaultMessage: 'Select all' })}\n </Checkbox>\n </Box>\n </Flex>\n <Flex paddingTop={6} paddingBottom={6}>\n <Grid.Root gap={2} style={{ flex: 1 }}>\n {formattedActions.map(({ checkboxName, value, action, displayName, hasConditions }) => {\n return (\n <Grid.Item col={4} m={6} xs={12} key={action} direction=\"column\" alignItems=\"start\">\n <CheckboxWrapper $disabled={isFormDisabled} $hasConditions={hasConditions}>\n <Checkbox\n name={checkboxName}\n disabled={isFormDisabled}\n // Keep same signature as packages/core/admin/admin/src/components/Roles/Permissions/index.js l.91\n onCheckedChange={(value) => {\n onChangeSimpleCheckbox({\n target: {\n name: checkboxName,\n value: !!value,\n },\n });\n }}\n checked={value}\n >\n {displayName}\n </Checkbox>\n </CheckboxWrapper>\n </Grid.Item>\n );\n })}\n </Grid.Root>\n <Modal.Root\n open={isConditionModalOpen}\n onOpenChange={() => {\n setIsConditionModalOpen((prev) => !prev);\n }}\n >\n <Modal.Trigger>\n <ConditionsButton hasConditions={doesButtonHasCondition} />\n </Modal.Trigger>\n <ConditionsModal\n headerBreadCrumbs={[categoryName, subCategoryName]}\n actions={formattedActions}\n isFormDisabled={isFormDisabled}\n onClose={() => {\n setIsConditionModalOpen(false);\n }}\n />\n </Modal.Root>\n </Flex>\n </Box>\n </>\n );\n};\n\nconst Border = styled<BoxComponent>(Box)`\n align-self: center;\n border-top: 1px solid ${({ theme }) => theme.colors.neutral150};\n`;\n\nconst CheckboxWrapper = styled.div<{ $hasConditions?: boolean; $disabled?: boolean }>`\n position: relative;\n word-break: keep-all;\n ${({ $hasConditions, $disabled, theme }) =>\n $hasConditions &&\n `\n &:before {\n content: '';\n position: absolute;\n top: -0.4rem;\n left: -0.8rem;\n width: 0.6rem;\n height: 0.6rem;\n border-radius: 2rem;\n background: ${$disabled ? theme.colors.neutral100 : theme.colors.primary600};\n }\n `}\n`;\n\nexport { PluginsAndSettingsPermissions };\n"],"names":["PluginsAndSettingsPermissions","layout","restProps","_jsx","Box","padding","background","Accordion","Root","size","map","category","categoryId","childrenForm","index","Row","variant","name","pathToData","kind","isFormDisabled","formatMessage","useIntl","categoryName","split","pop","categoryDisplayName","capitalise","replace","_jsxs","Item","value","Header","Trigger","caretPosition","description","id","defaultMessage","Content","actions","subCategoryName","subCategoryId","SubCategory","modifiedData","onChangeParentCheckbox","onChangeSimpleCheckbox","usePermissionsDataManager","isConditionModalOpen","setIsConditionModalOpen","React","useState","mainData","get","dataWithoutCondition","useMemo","Object","keys","reduce","acc","current","removeConditionKeyFromData","hasAllActionsSelected","hasSomeActionsSelected","getCheckboxState","formattedActions","action","checkboxName","checkboxValue","conditionValue","hasConditions","createArrayOfValues","some","val","isDisplayed","join","label","displayName","actionId","pathToConditionsObject","datum","doesButtonHasCondition","entries","catName","conditions","_Fragment","Flex","justifyContent","alignItems","paddingRight","Typography","textColor","Border","flex","paddingLeft","Checkbox","disabled","onCheckedChange","target","checked","paddingTop","paddingBottom","Grid","gap","style","col","m","xs","direction","CheckboxWrapper","$disabled","$hasConditions","Modal","open","onOpenChange","prev","ConditionsButton","ConditionsModal","headerBreadCrumbs","onClose","styled","theme","colors","neutral150","div","neutral100","primary600"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequiredSign.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RequiredSign.tsx"],"sourcesContent":["import { Box } from '@strapi/design-system';\n\nconst RequiredSign = () => (\n <Box color=\"danger700\" paddingLeft={1}>\n *\n </Box>\n);\n\nexport { RequiredSign };\n"],"names":["RequiredSign","_jsx","Box","color","paddingLeft"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"RequiredSign.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RequiredSign.tsx"],"sourcesContent":["import { Box } from '@strapi/design-system';\n\nconst RequiredSign = () => (\n <Box color=\"danger700\" paddingLeft={1}>\n *\n </Box>\n);\n\nexport { RequiredSign };\n"],"names":["RequiredSign","_jsx","Box","color","paddingLeft"],"mappings":";;;;;AAEA,MAAMA,YAAAA,GAAe,kBACnBC,cAAA,CAACC,gBAAAA,EAAAA;QAAIC,KAAAA,EAAM,WAAA;QAAYC,WAAAA,EAAa,CAAA;AAAG,QAAA,QAAA,EAAA;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequiredSign.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RequiredSign.tsx"],"sourcesContent":["import { Box } from '@strapi/design-system';\n\nconst RequiredSign = () => (\n <Box color=\"danger700\" paddingLeft={1}>\n *\n </Box>\n);\n\nexport { RequiredSign };\n"],"names":["RequiredSign","_jsx","Box","color","paddingLeft"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"RequiredSign.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RequiredSign.tsx"],"sourcesContent":["import { Box } from '@strapi/design-system';\n\nconst RequiredSign = () => (\n <Box color=\"danger700\" paddingLeft={1}>\n *\n </Box>\n);\n\nexport { RequiredSign };\n"],"names":["RequiredSign","_jsx","Box","color","paddingLeft"],"mappings":";;;AAEA,MAAMA,YAAAA,GAAe,kBACnBC,GAAA,CAACC,GAAAA,EAAAA;QAAIC,KAAAA,EAAM,WAAA;QAAYC,WAAAA,EAAa,CAAA;AAAG,QAAA,QAAA,EAAA;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RoleForm.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RoleForm.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Field,\n Flex,\n Grid,\n Textarea,\n TextInput,\n Typography,\n} from '@strapi/design-system';\nimport { FormikProps } from 'formik';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\nimport type { EditRoleFormValues } from '../EditPage';\n\ninterface RoleFormProps extends Pick<FormikProps<EditRoleFormValues>, 'values' | 'errors'> {\n onBlur: FormikProps<EditRoleFormValues>['handleBlur'];\n onChange: FormikProps<EditRoleFormValues>['handleChange'];\n disabled?: boolean;\n role: AdminRole;\n}\n\nconst RoleForm = ({ disabled, role, values, errors, onChange, onBlur }: RoleFormProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"space-between\">\n <Box>\n <Box>\n <Typography fontWeight=\"bold\">\n {role\n ? role.name\n : formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n </Box>\n <Box>\n <Typography textColor=\"neutral500\" variant=\"pi\">\n {role\n ? role.description\n : formatMessage({\n id: 'Settings.roles.form.description',\n defaultMessage: 'Name and description of the role',\n })}\n </Typography>\n </Box>\n </Box>\n <Button disabled variant=\"secondary\">\n {formatMessage(\n {\n id: 'Settings.roles.form.button.users-with-role',\n defaultMessage:\n '{number, plural, =0 {# users} one {# user} other {# users}} with this role',\n },\n { number: role.usersCount }\n )}\n </Button>\n </Flex>\n <Grid.Root gap={4}>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"name\"\n error={errors.name && formatMessage({ id: errors.name })}\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.name || ''}\n type=\"text\"\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"description\"\n error={errors.description && formatMessage({ id: errors.description })}\n >\n <Field.Label>\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.description}\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n );\n};\n\nexport { RoleForm };\nexport type { RoleFormProps };\n"],"names":["RoleForm","disabled","role","values","errors","onChange","onBlur","formatMessage","useIntl","_jsx","Box","background","padding","shadow","hasRadius","_jsxs","Flex","direction","alignItems","gap","justifyContent","Typography","fontWeight","name","id","defaultMessage","textColor","variant","description","Button","number","usersCount","Grid","Root","Item","xs","col","Field","error","required","Label","TextInput","value","type","Error","Textarea"],"mappings":";;;;;;AAuBA,MAAMA,
|
|
1
|
+
{"version":3,"file":"RoleForm.js","sources":["../../../../../../../../../admin/src/pages/Settings/pages/Roles/components/RoleForm.tsx"],"sourcesContent":["import {\n Box,\n Button,\n Field,\n Flex,\n Grid,\n Textarea,\n TextInput,\n Typography,\n} from '@strapi/design-system';\nimport { FormikProps } from 'formik';\nimport { useIntl } from 'react-intl';\n\nimport type { AdminRole } from '../../../../../hooks/useAdminRoles';\nimport type { EditRoleFormValues } from '../EditPage';\n\ninterface RoleFormProps extends Pick<FormikProps<EditRoleFormValues>, 'values' | 'errors'> {\n onBlur: FormikProps<EditRoleFormValues>['handleBlur'];\n onChange: FormikProps<EditRoleFormValues>['handleChange'];\n disabled?: boolean;\n role: AdminRole;\n}\n\nconst RoleForm = ({ disabled, role, values, errors, onChange, onBlur }: RoleFormProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex justifyContent=\"space-between\">\n <Box>\n <Box>\n <Typography fontWeight=\"bold\">\n {role\n ? role.name\n : formatMessage({\n id: 'global.details',\n defaultMessage: 'Details',\n })}\n </Typography>\n </Box>\n <Box>\n <Typography textColor=\"neutral500\" variant=\"pi\">\n {role\n ? role.description\n : formatMessage({\n id: 'Settings.roles.form.description',\n defaultMessage: 'Name and description of the role',\n })}\n </Typography>\n </Box>\n </Box>\n <Button disabled variant=\"secondary\">\n {formatMessage(\n {\n id: 'Settings.roles.form.button.users-with-role',\n defaultMessage:\n '{number, plural, =0 {# users} one {# user} other {# users}} with this role',\n },\n { number: role.usersCount }\n )}\n </Button>\n </Flex>\n <Grid.Root gap={4}>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"name\"\n error={errors.name && formatMessage({ id: errors.name })}\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.name || ''}\n type=\"text\"\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n name=\"description\"\n error={errors.description && formatMessage({ id: errors.description })}\n >\n <Field.Label>\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea\n disabled={disabled}\n onChange={onChange}\n onBlur={onBlur}\n value={values.description}\n />\n <Field.Error />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n );\n};\n\nexport { RoleForm };\nexport type { RoleFormProps };\n"],"names":["RoleForm","disabled","role","values","errors","onChange","onBlur","formatMessage","useIntl","_jsx","Box","background","padding","shadow","hasRadius","_jsxs","Flex","direction","alignItems","gap","justifyContent","Typography","fontWeight","name","id","defaultMessage","textColor","variant","description","Button","number","usersCount","Grid","Root","Item","xs","col","Field","error","required","Label","TextInput","value","type","Error","Textarea"],"mappings":"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"}
|