@strapi/admin 5.57.0 → 5.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/admin/src/StrapiApp.js.map +1 -1
- package/dist/admin/admin/src/StrapiApp.mjs.map +1 -1
- package/dist/admin/admin/src/components/ConfirmDialog.js +10 -9
- package/dist/admin/admin/src/components/ConfirmDialog.js.map +1 -1
- package/dist/admin/admin/src/components/ConfirmDialog.mjs +10 -9
- package/dist/admin/admin/src/components/ConfirmDialog.mjs.map +1 -1
- package/dist/admin/admin/src/components/Filters.js +57 -12
- package/dist/admin/admin/src/components/Filters.js.map +1 -1
- package/dist/admin/admin/src/components/Filters.mjs +57 -12
- package/dist/admin/admin/src/components/Filters.mjs.map +1 -1
- package/dist/admin/admin/src/components/Form.js +3 -1
- package/dist/admin/admin/src/components/Form.js.map +1 -1
- package/dist/admin/admin/src/components/Form.mjs +3 -1
- package/dist/admin/admin/src/components/Form.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Boolean.js +3 -2
- package/dist/admin/admin/src/components/FormInputs/Boolean.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Boolean.mjs +3 -2
- package/dist/admin/admin/src/components/FormInputs/Boolean.mjs.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Enumeration.js +2 -1
- package/dist/admin/admin/src/components/FormInputs/Enumeration.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs +2 -1
- package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs.map +1 -1
- package/dist/admin/admin/src/components/LeftMenu.js +5 -1
- package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
- package/dist/admin/admin/src/components/LeftMenu.mjs +5 -1
- package/dist/admin/admin/src/components/LeftMenu.mjs.map +1 -1
- package/dist/admin/admin/src/components/PageHelpers.js +2 -1
- package/dist/admin/admin/src/components/PageHelpers.js.map +1 -1
- package/dist/admin/admin/src/components/PageHelpers.mjs +2 -1
- package/dist/admin/admin/src/components/PageHelpers.mjs.map +1 -1
- package/dist/admin/admin/src/components/Pagination.js +7 -6
- package/dist/admin/admin/src/components/Pagination.js.map +1 -1
- package/dist/admin/admin/src/components/Pagination.mjs +7 -6
- package/dist/admin/admin/src/components/Pagination.mjs.map +1 -1
- package/dist/admin/admin/src/components/RelativeTime.js +2 -1
- package/dist/admin/admin/src/components/RelativeTime.js.map +1 -1
- package/dist/admin/admin/src/components/RelativeTime.mjs +2 -1
- package/dist/admin/admin/src/components/RelativeTime.mjs.map +1 -1
- package/dist/admin/admin/src/components/SubNav.js +6 -12
- package/dist/admin/admin/src/components/SubNav.js.map +1 -1
- package/dist/admin/admin/src/components/SubNav.mjs +7 -13
- package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
- package/dist/admin/admin/src/components/Table.js +3 -1
- package/dist/admin/admin/src/components/Table.js.map +1 -1
- package/dist/admin/admin/src/components/Table.mjs +3 -1
- package/dist/admin/admin/src/components/Table.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/WidgetRoot.js.map +1 -1
- package/dist/admin/admin/src/components/WidgetRoot.mjs.map +1 -1
- package/dist/admin/admin/src/constants.js +14 -0
- package/dist/admin/admin/src/constants.js.map +1 -1
- package/dist/admin/admin/src/constants.mjs +14 -0
- package/dist/admin/admin/src/constants.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/features/Auth.js +2 -1
- package/dist/admin/admin/src/features/Auth.js.map +1 -1
- package/dist/admin/admin/src/features/Auth.mjs +2 -1
- package/dist/admin/admin/src/features/Auth.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/pages/Auth/components/ResetPassword.js +6 -12
- package/dist/admin/admin/src/pages/Auth/components/ResetPassword.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/ResetPassword.mjs +6 -12
- package/dist/admin/admin/src/pages/Auth/components/ResetPassword.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.map +1 -1
- package/dist/admin/admin/src/pages/ProfilePage.js +2 -2
- package/dist/admin/admin/src/pages/ProfilePage.js.map +1 -1
- package/dist/admin/admin/src/pages/ProfilePage.mjs +2 -2
- package/dist/admin/admin/src/pages/ProfilePage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js +10 -2
- package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs +10 -2
- package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/FormApiTokenContainer.js +4 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/FormApiTokenContainer.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/FormApiTokenContainer.mjs +4 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/FormApiTokenContainer.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.js +3 -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 +3 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/Table.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenTypeSelect.js +2 -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 +2 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenTypeSelect.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.js +6 -5
- 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 +6 -5
- 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 +2 -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 -1
- 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/utils/transformPermissionsData.js +4 -4
- 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 +4 -4
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/utils/transformPermissionsData.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +7 -58
- 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 +7 -58
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.js +217 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.js.map +1 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.mjs +195 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.mjs.map +1 -0
- 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.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.js +185 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.js.map +1 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.mjs +162 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.mjs.map +1 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.js +342 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.js.map +1 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.mjs +320 -0
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.mjs.map +1 -0
- package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.js +9 -4
- 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 +9 -4
- 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/ConditionsModal.js +15 -9
- 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 +15 -9
- 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 +5 -2
- 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 +5 -2
- 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/GlobalActions.js +2 -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 +2 -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/Permissions.js +2 -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 +2 -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 +2 -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 +2 -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/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/TransferTokens/EditView.js +3 -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 +3 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.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.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/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/Webhooks/components/Events.js +4 -1
- 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 +4 -1
- 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/HeadersInput.js +18 -3
- 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 +18 -3
- 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/WebhookForm.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.mjs.map +1 -1
- 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/services/admin.js +11 -1
- package/dist/admin/admin/src/services/admin.js.map +1 -1
- package/dist/admin/admin/src/services/admin.mjs +11 -2
- package/dist/admin/admin/src/services/admin.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/translations/en.json.js +71 -4
- package/dist/admin/admin/src/translations/en.json.js.map +1 -1
- package/dist/admin/admin/src/translations/en.json.mjs +71 -4
- package/dist/admin/admin/src/translations/en.json.mjs.map +1 -1
- package/dist/admin/admin/src/translations/eu.json.js +1 -1
- package/dist/admin/admin/src/translations/eu.json.mjs +1 -1
- package/dist/admin/admin/src/utils/browserStrapi.js +1 -1
- package/dist/admin/admin/src/utils/browserStrapi.js.map +1 -1
- package/dist/admin/admin/src/utils/browserStrapi.mjs +1 -1
- package/dist/admin/admin/src/utils/browserStrapi.mjs.map +1 -1
- package/dist/admin/admin/src/utils/cookies.js +7 -6
- package/dist/admin/admin/src/utils/cookies.js.map +1 -1
- package/dist/admin/admin/src/utils/cookies.mjs +7 -6
- package/dist/admin/admin/src/utils/cookies.mjs.map +1 -1
- package/dist/admin/admin/src/utils/getFetchClient.js +24 -0
- package/dist/admin/admin/src/utils/getFetchClient.js.map +1 -1
- package/dist/admin/admin/src/utils/getFetchClient.mjs +24 -1
- package/dist/admin/admin/src/utils/getFetchClient.mjs.map +1 -1
- package/dist/admin/admin/tests/utils.js +2 -1
- package/dist/admin/admin/tests/utils.js.map +1 -1
- package/dist/admin/admin/tests/utils.mjs +2 -1
- package/dist/admin/admin/tests/utils.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js +52 -22
- 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 +53 -23
- 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 +16 -29
- 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 +18 -31
- 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/ApplicationInfoPage/components/LicenseInfo.js +473 -0
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/LicenseInfo.js.map +1 -0
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/LicenseInfo.mjs +471 -0
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/LicenseInfo.mjs.map +1 -0
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.js +2 -0
- 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 +2 -0
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.mjs.map +1 -1
- package/dist/admin/index.js +1 -0
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +1 -1
- package/dist/admin/shared/utils/auth-cookie-path.js +13 -10
- package/dist/admin/shared/utils/auth-cookie-path.js.map +1 -1
- package/dist/admin/shared/utils/auth-cookie-path.mjs +13 -10
- package/dist/admin/shared/utils/auth-cookie-path.mjs.map +1 -1
- package/dist/admin/shared/utils/get-project-type.js +49 -0
- package/dist/admin/shared/utils/get-project-type.js.map +1 -0
- package/dist/admin/shared/utils/get-project-type.mjs +46 -0
- package/dist/admin/shared/utils/get-project-type.mjs.map +1 -0
- package/dist/admin/src/components/Filters.d.ts +1 -1
- package/dist/admin/src/components/Form.d.ts +1 -1
- package/dist/admin/src/constants.d.ts +10 -0
- package/dist/admin/src/pages/Settings/pages/ApiTokens/EditView/components/BoundRoute.d.ts +1 -1
- package/dist/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.d.ts +1 -1
- package/dist/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.d.ts +12 -0
- package/dist/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.d.ts +14 -0
- package/dist/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.d.ts +2 -0
- package/dist/admin/src/services/admin.d.ts +2 -2
- package/dist/admin/src/types/permissions.d.ts +1 -0
- package/dist/admin/src/utils/cookies.d.ts +7 -6
- package/dist/admin/src/utils/getFetchClient.d.ts +25 -0
- package/dist/ee/admin/src/hooks/useLicenseLimits.d.ts +29 -0
- package/dist/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.d.ts +6 -1
- package/dist/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/LicenseInfo.d.ts +2 -0
- package/dist/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.d.ts +2 -0
- package/dist/ee/server/src/audit-logs/entitlements.d.ts +8 -0
- package/dist/ee/server/src/audit-logs/entitlements.d.ts.map +1 -0
- package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts +16 -0
- package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts.map +1 -1
- package/dist/ee/server/src/controllers/admin.d.ts +36 -10
- package/dist/ee/server/src/controllers/admin.d.ts.map +1 -1
- package/dist/ee/server/src/controllers/authentication-utils/middlewares.d.ts.map +1 -1
- package/dist/ee/server/src/controllers/index.d.ts +36 -10
- package/dist/ee/server/src/controllers/index.d.ts.map +1 -1
- package/dist/ee/server/src/index.d.ts +36 -10
- package/dist/ee/server/src/index.d.ts.map +1 -1
- package/dist/ee/server/src/services/seat-enforcement.d.ts.map +1 -1
- package/dist/ee/server/src/validation/role.d.ts.map +1 -1
- package/dist/server/ee/server/src/audit-logs/entitlements.js +25 -0
- package/dist/server/ee/server/src/audit-logs/entitlements.js.map +1 -0
- package/dist/server/ee/server/src/audit-logs/entitlements.mjs +23 -0
- package/dist/server/ee/server/src/audit-logs/entitlements.mjs.map +1 -0
- package/dist/server/ee/server/src/audit-logs/services/lifecycles.js +20 -8
- 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 +19 -9
- package/dist/server/ee/server/src/audit-logs/services/lifecycles.mjs.map +1 -1
- package/dist/server/ee/server/src/audit-logs/utils/csv.js +3 -3
- package/dist/server/ee/server/src/audit-logs/utils/csv.js.map +1 -1
- package/dist/server/ee/server/src/audit-logs/utils/csv.mjs +3 -3
- package/dist/server/ee/server/src/audit-logs/utils/csv.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/admin.js +76 -3
- package/dist/server/ee/server/src/controllers/admin.js.map +1 -1
- package/dist/server/ee/server/src/controllers/admin.mjs +76 -3
- package/dist/server/ee/server/src/controllers/admin.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.js +28 -10
- 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 +28 -10
- package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.mjs.map +1 -1
- package/dist/server/ee/server/src/index.js +2 -0
- package/dist/server/ee/server/src/index.js.map +1 -1
- package/dist/server/ee/server/src/index.mjs +2 -0
- package/dist/server/ee/server/src/index.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.map +1 -1
- package/dist/server/ee/server/src/validation/role.js +4 -2
- package/dist/server/ee/server/src/validation/role.js.map +1 -1
- package/dist/server/ee/server/src/validation/role.mjs +4 -2
- package/dist/server/ee/server/src/validation/role.mjs.map +1 -1
- package/dist/server/server/src/ai/services/ai.js.map +1 -1
- package/dist/server/server/src/ai/services/ai.mjs.map +1 -1
- package/dist/server/server/src/audit-logs/auth.js +72 -0
- package/dist/server/server/src/audit-logs/auth.js.map +1 -0
- package/dist/server/server/src/audit-logs/auth.mjs +67 -0
- package/dist/server/server/src/audit-logs/auth.mjs.map +1 -0
- package/dist/server/server/src/config/admin-actions.js +7 -0
- package/dist/server/server/src/config/admin-actions.js.map +1 -1
- package/dist/server/server/src/config/admin-actions.mjs +7 -0
- package/dist/server/server/src/config/admin-actions.mjs.map +1 -1
- package/dist/server/server/src/controllers/admin.js +17 -12
- package/dist/server/server/src/controllers/admin.js.map +1 -1
- package/dist/server/server/src/controllers/admin.mjs +17 -12
- package/dist/server/server/src/controllers/admin.mjs.map +1 -1
- package/dist/server/server/src/controllers/authentication.js +34 -8
- package/dist/server/server/src/controllers/authentication.js.map +1 -1
- package/dist/server/server/src/controllers/authentication.mjs +34 -8
- package/dist/server/server/src/controllers/authentication.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.map +1 -1
- package/dist/server/server/src/register.js +4 -0
- package/dist/server/server/src/register.js.map +1 -1
- package/dist/server/server/src/register.mjs +4 -0
- package/dist/server/server/src/register.mjs.map +1 -1
- package/dist/server/server/src/routes/admin.js +18 -0
- package/dist/server/server/src/routes/admin.js.map +1 -1
- package/dist/server/server/src/routes/admin.mjs +18 -0
- package/dist/server/server/src/routes/admin.mjs.map +1 -1
- package/dist/server/server/src/services/api-token.js +4 -8
- package/dist/server/server/src/services/api-token.js.map +1 -1
- package/dist/server/server/src/services/api-token.mjs +4 -8
- package/dist/server/server/src/services/api-token.mjs.map +1 -1
- package/dist/server/server/src/services/auth.js +4 -2
- package/dist/server/server/src/services/auth.js.map +1 -1
- package/dist/server/server/src/services/auth.mjs +4 -3
- package/dist/server/server/src/services/auth.mjs.map +1 -1
- package/dist/server/server/src/services/constants.js +4 -0
- package/dist/server/server/src/services/constants.js.map +1 -1
- package/dist/server/server/src/services/constants.mjs +4 -0
- package/dist/server/server/src/services/constants.mjs.map +1 -1
- package/dist/server/server/src/services/debug-dump.js +173 -0
- package/dist/server/server/src/services/debug-dump.js.map +1 -0
- package/dist/server/server/src/services/debug-dump.mjs +166 -0
- package/dist/server/server/src/services/debug-dump.mjs.map +1 -0
- package/dist/server/server/src/services/index.js +3 -1
- package/dist/server/server/src/services/index.js.map +1 -1
- package/dist/server/server/src/services/index.mjs +3 -1
- package/dist/server/server/src/services/index.mjs.map +1 -1
- package/dist/server/server/src/services/permission/rename-fields.js.map +1 -1
- package/dist/server/server/src/services/permission/rename-fields.mjs.map +1 -1
- 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.map +1 -1
- package/dist/server/server/src/services/role.js +8 -5
- package/dist/server/server/src/services/role.js.map +1 -1
- package/dist/server/server/src/services/role.mjs +8 -5
- package/dist/server/server/src/services/role.mjs.map +1 -1
- package/dist/server/server/src/utils/debug-dump/redact.js +197 -0
- package/dist/server/server/src/utils/debug-dump/redact.js.map +1 -0
- package/dist/server/server/src/utils/debug-dump/redact.mjs +194 -0
- package/dist/server/server/src/utils/debug-dump/redact.mjs.map +1 -0
- package/dist/server/server/src/validation/admin-tokens.js +4 -4
- package/dist/server/server/src/validation/admin-tokens.js.map +1 -1
- package/dist/server/server/src/validation/admin-tokens.mjs +4 -4
- package/dist/server/server/src/validation/admin-tokens.mjs.map +1 -1
- package/dist/server/server/src/validation/api-tokens.js +4 -4
- package/dist/server/server/src/validation/api-tokens.js.map +1 -1
- package/dist/server/server/src/validation/api-tokens.mjs +4 -4
- package/dist/server/server/src/validation/api-tokens.mjs.map +1 -1
- package/dist/server/server/src/validation/role.js +6 -4
- package/dist/server/server/src/validation/role.js.map +1 -1
- package/dist/server/server/src/validation/role.mjs +6 -4
- package/dist/server/server/src/validation/role.mjs.map +1 -1
- package/dist/server/server/src/validation/transfer/token.js +4 -4
- package/dist/server/server/src/validation/transfer/token.js.map +1 -1
- package/dist/server/server/src/validation/transfer/token.mjs +4 -4
- package/dist/server/server/src/validation/transfer/token.mjs.map +1 -1
- package/dist/server/shared/utils/auth-cookie-path.js +13 -10
- package/dist/server/shared/utils/auth-cookie-path.js.map +1 -1
- package/dist/server/shared/utils/auth-cookie-path.mjs +13 -10
- package/dist/server/shared/utils/auth-cookie-path.mjs.map +1 -1
- package/dist/server/shared/utils/get-project-type.js +49 -0
- package/dist/server/shared/utils/get-project-type.js.map +1 -0
- package/dist/server/shared/utils/get-project-type.mjs +46 -0
- package/dist/server/shared/utils/get-project-type.mjs.map +1 -0
- package/dist/server/shared/utils/session-auth.js +70 -3
- package/dist/server/shared/utils/session-auth.js.map +1 -1
- package/dist/server/shared/utils/session-auth.mjs +70 -4
- package/dist/server/shared/utils/session-auth.mjs.map +1 -1
- package/dist/server/src/ai/services/ai.d.ts.map +1 -1
- package/dist/server/src/audit-logs/auth.d.ts +72 -0
- package/dist/server/src/audit-logs/auth.d.ts.map +1 -0
- package/dist/server/src/config/admin-actions.d.ts.map +1 -1
- package/dist/server/src/controllers/admin.d.ts +3 -0
- package/dist/server/src/controllers/admin.d.ts.map +1 -1
- package/dist/server/src/controllers/authentication.d.ts.map +1 -1
- package/dist/server/src/controllers/index.d.ts +3 -0
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/domain/permission/index.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +8 -0
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/register.d.ts.map +1 -1
- package/dist/server/src/routes/admin.d.ts.map +1 -1
- package/dist/server/src/services/auth.d.ts +6 -0
- package/dist/server/src/services/auth.d.ts.map +1 -1
- package/dist/server/src/services/constants.d.ts +2 -0
- package/dist/server/src/services/constants.d.ts.map +1 -1
- package/dist/server/src/services/debug-dump.d.ts +9 -0
- package/dist/server/src/services/debug-dump.d.ts.map +1 -0
- package/dist/server/src/services/index.d.ts +5 -0
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/server/src/services/permission/rename-fields.d.ts.map +1 -1
- package/dist/server/src/services/permission/sections-builder/handlers.d.ts.map +1 -1
- package/dist/server/src/services/role.d.ts.map +1 -1
- package/dist/server/src/utils/debug-dump/redact.d.ts +8 -0
- package/dist/server/src/utils/debug-dump/redact.d.ts.map +1 -0
- package/dist/server/src/validation/role.d.ts.map +1 -1
- package/dist/shared/contracts/admin.d.ts +106 -0
- package/dist/shared/contracts/admin.d.ts.map +1 -1
- package/dist/shared/contracts/transfer.d.ts.map +1 -1
- package/dist/shared/utils/__tests__/get-project-type.test.d.ts +1 -0
- package/dist/shared/utils/__tests__/get-project-type.test.d.ts.map +1 -0
- package/dist/shared/utils/auth-cookie-path.d.ts +13 -10
- package/dist/shared/utils/auth-cookie-path.d.ts.map +1 -1
- package/dist/shared/utils/get-project-type.d.ts +37 -0
- package/dist/shared/utils/get-project-type.d.ts.map +1 -0
- package/dist/shared/utils/session-auth.d.ts +16 -0
- package/dist/shared/utils/session-auth.d.ts.map +1 -1
- package/package.json +8 -8
- package/dist/admin/admin/src/utils/getProjectType.js +0 -22
- package/dist/admin/admin/src/utils/getProjectType.js.map +0 -1
- package/dist/admin/admin/src/utils/getProjectType.mjs +0 -20
- package/dist/admin/admin/src/utils/getProjectType.mjs.map +0 -1
- package/dist/admin/src/utils/getProjectType.d.ts +0 -16
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Flex, Typography, Box, Button } from '@strapi/design-system';
|
|
4
|
+
import { PaperPlane, Book, ExternalLink } from '@strapi/icons';
|
|
5
|
+
import { GitHub, Discord } from '@strapi/icons/symbols';
|
|
6
|
+
import { useIntl } from 'react-intl';
|
|
7
|
+
import { styled } from 'styled-components';
|
|
8
|
+
import { getLicensedPlan } from '../../../../../../../shared/utils/get-project-type.mjs';
|
|
9
|
+
import { useTypedSelector } from '../../../../../core/store/hooks.mjs';
|
|
10
|
+
import { useRBAC } from '../../../../../hooks/useRBAC.mjs';
|
|
11
|
+
import { useGetLicenseLimitsQuery } from '../../../../../services/admin.mjs';
|
|
12
|
+
import { DiagnosticSnapshotModal } from './DiagnosticSnapshotModal.mjs';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Tints every tile icon with the same brand-neutral colour, including the GitHub and Discord
|
|
16
|
+
* marks. Those two are single-path glyphs carrying a hardcoded brand fill (`#24292F`, `#5865F2`),
|
|
17
|
+
* and a `fill` prop only reaches the `<svg>`, which the path's own attribute overrides — but a CSS
|
|
18
|
+
* declaration outranks that presentation attribute, so this wins for all icons uniformly.
|
|
19
|
+
*/ const TileIcon = styled.span`
|
|
20
|
+
display: inline-flex;
|
|
21
|
+
|
|
22
|
+
svg,
|
|
23
|
+
svg path {
|
|
24
|
+
fill: ${({ theme })=>theme.colors.primary600};
|
|
25
|
+
}
|
|
26
|
+
`;
|
|
27
|
+
/**
|
|
28
|
+
* The tiles share the card with the diagnostic-snapshot panel, so they only get about half the
|
|
29
|
+
* card's width. A viewport breakpoint therefore fires far too late — the tiles are already
|
|
30
|
+
* cramped while the window is still "large". Sizing off the tile panel itself instead means the
|
|
31
|
+
* 2 -> 1 column switch happens when *these* tiles run out of room, whatever the window is doing.
|
|
32
|
+
*/ const TileGrid = styled.div`
|
|
33
|
+
display: flex;
|
|
34
|
+
flex-wrap: wrap;
|
|
35
|
+
gap: ${({ theme })=>theme.spaces[4]};
|
|
36
|
+
|
|
37
|
+
/* The 50% basis caps the row at two tiles however wide the card gets, and min-width is what
|
|
38
|
+
forces the wrap to a single column. Both are measured against this element, so the switch is
|
|
39
|
+
driven by the space the tiles actually have rather than by the viewport. A container query
|
|
40
|
+
would say the same thing more directly, but jsdom cannot parse @container and it breaks the
|
|
41
|
+
admin suite's stylesheet parse (same reason FormLayout in content-manager avoids it). */
|
|
42
|
+
> * {
|
|
43
|
+
flex: 1 1 calc(50% - ${({ theme })=>theme.spaces[4]} / 2);
|
|
44
|
+
min-width: 16rem;
|
|
45
|
+
}
|
|
46
|
+
`;
|
|
47
|
+
const SupportLinkTile = ({ href, icon: Icon, title, description })=>{
|
|
48
|
+
const { formatMessage } = useIntl();
|
|
49
|
+
return /*#__PURE__*/ jsxs(Box, {
|
|
50
|
+
tag: "a",
|
|
51
|
+
href: href,
|
|
52
|
+
target: "_blank",
|
|
53
|
+
rel: "noopener noreferrer",
|
|
54
|
+
// Without this the accessible name is the title and description concatenated, so the tile
|
|
55
|
+
// announces as e.g. "Documentation Guides and API reference" and collides with the
|
|
56
|
+
// same-named Settings nav link. Labelling it also tells screen readers it opens a new tab.
|
|
57
|
+
"aria-label": formatMessage({
|
|
58
|
+
id: 'Settings.application.support.tile-label',
|
|
59
|
+
defaultMessage: 'Open {title} in a new tab'
|
|
60
|
+
}, {
|
|
61
|
+
title: formatMessage(title)
|
|
62
|
+
}),
|
|
63
|
+
display: "block",
|
|
64
|
+
hasRadius: true,
|
|
65
|
+
borderColor: "neutral200",
|
|
66
|
+
padding: 4,
|
|
67
|
+
// The tile is the link, so the anchor's own underline and link colour must not bleed onto
|
|
68
|
+
// the text inside it; every colour below comes from a theme token so both themes match.
|
|
69
|
+
style: {
|
|
70
|
+
textDecoration: 'none'
|
|
71
|
+
},
|
|
72
|
+
children: [
|
|
73
|
+
/*#__PURE__*/ jsxs(Flex, {
|
|
74
|
+
justifyContent: "space-between",
|
|
75
|
+
alignItems: "center",
|
|
76
|
+
children: [
|
|
77
|
+
/*#__PURE__*/ jsx(TileIcon, {
|
|
78
|
+
children: /*#__PURE__*/ jsx(Icon, {
|
|
79
|
+
width: "2rem",
|
|
80
|
+
height: "2rem",
|
|
81
|
+
"aria-hidden": true
|
|
82
|
+
})
|
|
83
|
+
}),
|
|
84
|
+
/*#__PURE__*/ jsx(ExternalLink, {
|
|
85
|
+
fill: "neutral400",
|
|
86
|
+
"aria-hidden": true
|
|
87
|
+
})
|
|
88
|
+
]
|
|
89
|
+
}),
|
|
90
|
+
/*#__PURE__*/ jsxs(Flex, {
|
|
91
|
+
direction: "column",
|
|
92
|
+
alignItems: "start",
|
|
93
|
+
gap: 1,
|
|
94
|
+
paddingTop: 3,
|
|
95
|
+
children: [
|
|
96
|
+
/*#__PURE__*/ jsx(Typography, {
|
|
97
|
+
fontWeight: "bold",
|
|
98
|
+
textColor: "neutral800",
|
|
99
|
+
children: formatMessage(title)
|
|
100
|
+
}),
|
|
101
|
+
/*#__PURE__*/ jsx(Typography, {
|
|
102
|
+
variant: "pi",
|
|
103
|
+
textColor: "neutral600",
|
|
104
|
+
children: formatMessage(description)
|
|
105
|
+
})
|
|
106
|
+
]
|
|
107
|
+
})
|
|
108
|
+
]
|
|
109
|
+
});
|
|
110
|
+
};
|
|
111
|
+
/* -------------------------------------------------------------------------------------------------
|
|
112
|
+
* SupportCard
|
|
113
|
+
* -----------------------------------------------------------------------------------------------*/ const DOCUMENTATION_TILE = {
|
|
114
|
+
id: 'documentation',
|
|
115
|
+
href: 'https://docs.strapi.io',
|
|
116
|
+
icon: Book,
|
|
117
|
+
title: {
|
|
118
|
+
id: 'Settings.application.support.documentation.title',
|
|
119
|
+
defaultMessage: 'Documentation'
|
|
120
|
+
},
|
|
121
|
+
description: {
|
|
122
|
+
id: 'Settings.application.support.documentation.description',
|
|
123
|
+
defaultMessage: 'Guides and API reference'
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
const GITHUB_ISSUES_TILE = {
|
|
127
|
+
id: 'github-issues',
|
|
128
|
+
href: 'https://github.com/strapi/strapi/issues',
|
|
129
|
+
icon: GitHub,
|
|
130
|
+
title: {
|
|
131
|
+
id: 'Settings.application.support.github-issues.title',
|
|
132
|
+
defaultMessage: 'GitHub issues'
|
|
133
|
+
},
|
|
134
|
+
description: {
|
|
135
|
+
id: 'Settings.application.support.github-issues.description',
|
|
136
|
+
defaultMessage: 'Report a bug'
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
const GITHUB_DISCUSSIONS_TILE = {
|
|
140
|
+
id: 'github-discussions',
|
|
141
|
+
href: 'https://github.com/strapi/strapi/discussions',
|
|
142
|
+
icon: GitHub,
|
|
143
|
+
title: {
|
|
144
|
+
id: 'Settings.application.support.github-discussions.title',
|
|
145
|
+
defaultMessage: 'GitHub discussions'
|
|
146
|
+
},
|
|
147
|
+
description: {
|
|
148
|
+
id: 'Settings.application.support.github-discussions.description',
|
|
149
|
+
defaultMessage: 'Ask a question or propose an idea'
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
const DISCORD_TILE = {
|
|
153
|
+
id: 'discord',
|
|
154
|
+
href: 'https://discord.strapi.io',
|
|
155
|
+
icon: Discord,
|
|
156
|
+
title: {
|
|
157
|
+
id: 'Settings.application.support.discord.title',
|
|
158
|
+
defaultMessage: 'Discord'
|
|
159
|
+
},
|
|
160
|
+
description: {
|
|
161
|
+
id: 'Settings.application.support.discord.description',
|
|
162
|
+
defaultMessage: 'Talk to the community in real time'
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
const SUPPORT_PORTAL_TILE = {
|
|
166
|
+
id: 'support-portal',
|
|
167
|
+
href: 'https://support.strapi.io',
|
|
168
|
+
icon: PaperPlane,
|
|
169
|
+
title: {
|
|
170
|
+
id: 'Settings.application.support.support-portal.title',
|
|
171
|
+
defaultMessage: 'Support portal'
|
|
172
|
+
},
|
|
173
|
+
description: {
|
|
174
|
+
id: 'Settings.application.support.support-portal.description',
|
|
175
|
+
defaultMessage: 'Open a ticket with the Strapi support'
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
const CE_TILES = [
|
|
179
|
+
DOCUMENTATION_TILE,
|
|
180
|
+
GITHUB_ISSUES_TILE,
|
|
181
|
+
GITHUB_DISCUSSIONS_TILE,
|
|
182
|
+
DISCORD_TILE
|
|
183
|
+
];
|
|
184
|
+
const EE_TILES = [
|
|
185
|
+
SUPPORT_PORTAL_TILE,
|
|
186
|
+
DOCUMENTATION_TILE,
|
|
187
|
+
GITHUB_ISSUES_TILE,
|
|
188
|
+
DISCORD_TILE
|
|
189
|
+
];
|
|
190
|
+
const SupportCard = ()=>{
|
|
191
|
+
const { formatMessage } = useIntl();
|
|
192
|
+
const [isSnapshotModalOpen, setIsSnapshotModalOpen] = React.useState(false);
|
|
193
|
+
const debugDumpPermissions = useTypedSelector((state)=>state.admin_app.permissions.settings?.['debug-dump']?.main);
|
|
194
|
+
const { allowedActions: { canRead } } = useRBAC(debugDumpPermissions);
|
|
195
|
+
// Keyed on the licensed plan rather than `isEE` so a customer whose license has lapsed keeps
|
|
196
|
+
// the Strapi support portal link, which is exactly what they need at that moment. This only
|
|
197
|
+
// ever swaps which support links are shown; it gates no feature.
|
|
198
|
+
// The authenticated license-limit-information endpoint is EE-only, so a CE instance gets a
|
|
199
|
+
// 404 here; treat that (or any other error/missing data) the same as "no license" (Community).
|
|
200
|
+
// Until the first response, there is no telling which plan this is: painting the Community
|
|
201
|
+
// fallback and then swapping it out would name the wrong plan for a moment.
|
|
202
|
+
const { data: licenseLimitsData, isLoading: isLicenseLoading } = useGetLicenseLimitsQuery();
|
|
203
|
+
const licenseStatus = licenseLimitsData?.data?.licenseStatus ?? 'none';
|
|
204
|
+
const planPriceId = licenseLimitsData?.data?.planPriceId ?? undefined;
|
|
205
|
+
const isTrial = licenseLimitsData?.data?.isTrial ?? false;
|
|
206
|
+
const licensedPlan = getLicensedPlan({
|
|
207
|
+
licenseStatus,
|
|
208
|
+
type: licenseLimitsData?.data?.type,
|
|
209
|
+
planPriceId
|
|
210
|
+
});
|
|
211
|
+
// A trial resolves to a paid plan name, but a trial does not come with Strapi support, so
|
|
212
|
+
// it gets the community channels instead of the support portal.
|
|
213
|
+
const hasStrapiSupport = licensedPlan !== 'Community' && !isTrial;
|
|
214
|
+
const tiles = hasStrapiSupport ? EE_TILES : CE_TILES;
|
|
215
|
+
return /*#__PURE__*/ jsxs(Fragment, {
|
|
216
|
+
children: [
|
|
217
|
+
/*#__PURE__*/ jsxs(Flex, {
|
|
218
|
+
direction: "column",
|
|
219
|
+
alignItems: "stretch",
|
|
220
|
+
gap: 4,
|
|
221
|
+
hasRadius: true,
|
|
222
|
+
background: "neutral0",
|
|
223
|
+
shadow: "tableShadow",
|
|
224
|
+
paddingTop: 6,
|
|
225
|
+
paddingBottom: 6,
|
|
226
|
+
paddingRight: 7,
|
|
227
|
+
paddingLeft: 7,
|
|
228
|
+
children: [
|
|
229
|
+
/*#__PURE__*/ jsxs(Flex, {
|
|
230
|
+
direction: "column",
|
|
231
|
+
alignItems: "start",
|
|
232
|
+
gap: 1,
|
|
233
|
+
children: [
|
|
234
|
+
/*#__PURE__*/ jsx(Typography, {
|
|
235
|
+
variant: "delta",
|
|
236
|
+
tag: "h3",
|
|
237
|
+
children: formatMessage({
|
|
238
|
+
id: 'Settings.application.support.title',
|
|
239
|
+
defaultMessage: 'Support'
|
|
240
|
+
})
|
|
241
|
+
}),
|
|
242
|
+
!isLicenseLoading && /*#__PURE__*/ jsx(Typography, {
|
|
243
|
+
variant: "pi",
|
|
244
|
+
textColor: "neutral600",
|
|
245
|
+
children: formatMessage(hasStrapiSupport ? {
|
|
246
|
+
id: 'Settings.application.support.subtitle.enterprise',
|
|
247
|
+
defaultMessage: 'Contact support, report a bug, or contribute to the Strapi community.'
|
|
248
|
+
} : {
|
|
249
|
+
id: 'Settings.application.support.subtitle.community',
|
|
250
|
+
defaultMessage: 'Ask a question, report a bug, or contribute to the Strapi community.'
|
|
251
|
+
})
|
|
252
|
+
})
|
|
253
|
+
]
|
|
254
|
+
}),
|
|
255
|
+
!isLicenseLoading && /*#__PURE__*/ jsxs(Flex, {
|
|
256
|
+
alignItems: "stretch",
|
|
257
|
+
gap: 7,
|
|
258
|
+
children: [
|
|
259
|
+
/*#__PURE__*/ jsx(Box, {
|
|
260
|
+
flex: "1 1 0%",
|
|
261
|
+
children: /*#__PURE__*/ jsx(TileGrid, {
|
|
262
|
+
children: tiles.map((tile)=>/*#__PURE__*/ jsx(SupportLinkTile, {
|
|
263
|
+
...tile
|
|
264
|
+
}, tile.id))
|
|
265
|
+
})
|
|
266
|
+
}),
|
|
267
|
+
canRead && /*#__PURE__*/ jsxs(Fragment, {
|
|
268
|
+
children: [
|
|
269
|
+
/*#__PURE__*/ jsx(Box, {
|
|
270
|
+
background: "neutral150",
|
|
271
|
+
width: "0.1rem"
|
|
272
|
+
}),
|
|
273
|
+
/*#__PURE__*/ jsxs(Flex, {
|
|
274
|
+
direction: "column",
|
|
275
|
+
alignItems: "start",
|
|
276
|
+
gap: 3,
|
|
277
|
+
flex: "1 1 0%",
|
|
278
|
+
children: [
|
|
279
|
+
/*#__PURE__*/ jsx(Typography, {
|
|
280
|
+
variant: "sigma",
|
|
281
|
+
textColor: "neutral600",
|
|
282
|
+
children: formatMessage({
|
|
283
|
+
id: 'Settings.application.support.diagnostic-snapshot.label',
|
|
284
|
+
defaultMessage: 'diagnostic snapshot'
|
|
285
|
+
})
|
|
286
|
+
}),
|
|
287
|
+
/*#__PURE__*/ jsx(Typography, {
|
|
288
|
+
children: formatMessage(hasStrapiSupport ? {
|
|
289
|
+
id: 'Settings.application.support.diagnostic-snapshot.description.enterprise',
|
|
290
|
+
defaultMessage: 'Reporting a bug? A diagnostic snapshot describes how this project is built so it can be reproduced.'
|
|
291
|
+
} : {
|
|
292
|
+
id: 'Settings.application.support.diagnostic-snapshot.description.community',
|
|
293
|
+
defaultMessage: "Reporting a bug? Generate a snapshot of your app's structure so the issue can be reproduced."
|
|
294
|
+
})
|
|
295
|
+
}),
|
|
296
|
+
/*#__PURE__*/ jsx(Button, {
|
|
297
|
+
onClick: ()=>setIsSnapshotModalOpen(true),
|
|
298
|
+
children: formatMessage({
|
|
299
|
+
id: 'Settings.application.support.diagnostic-snapshot.generate',
|
|
300
|
+
defaultMessage: 'Generate snapshot'
|
|
301
|
+
})
|
|
302
|
+
})
|
|
303
|
+
]
|
|
304
|
+
})
|
|
305
|
+
]
|
|
306
|
+
})
|
|
307
|
+
]
|
|
308
|
+
})
|
|
309
|
+
]
|
|
310
|
+
}),
|
|
311
|
+
/*#__PURE__*/ jsx(DiagnosticSnapshotModal, {
|
|
312
|
+
isOpen: isSnapshotModalOpen,
|
|
313
|
+
onClose: ()=>setIsSnapshotModalOpen(false)
|
|
314
|
+
})
|
|
315
|
+
]
|
|
316
|
+
});
|
|
317
|
+
};
|
|
318
|
+
|
|
319
|
+
export { SupportCard };
|
|
320
|
+
//# sourceMappingURL=SupportCard.mjs.map
|
package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.mjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SupportCard.mjs","sources":["../../../../../../../../../admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Button, Flex, Typography } from '@strapi/design-system';\nimport { Book, ExternalLink, PaperPlane } from '@strapi/icons';\nimport { Discord, GitHub } from '@strapi/icons/symbols';\nimport { useIntl, type MessageDescriptor } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { getLicensedPlan } from '../../../../../../../shared/utils/get-project-type';\nimport { useTypedSelector } from '../../../../../core/store/hooks';\nimport { useRBAC } from '../../../../../hooks/useRBAC';\nimport { useGetLicenseLimitsQuery } from '../../../../../services/admin';\n\nimport { DiagnosticSnapshotModal } from './DiagnosticSnapshotModal';\n\n/* -------------------------------------------------------------------------------------------------\n * SupportLinkTile\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SupportLinkTileConfig {\n id: string;\n href: string;\n icon: React.ComponentType<React.SVGProps<SVGSVGElement>>;\n title: MessageDescriptor;\n description: MessageDescriptor;\n}\n\n/**\n * Tints every tile icon with the same brand-neutral colour, including the GitHub and Discord\n * marks. Those two are single-path glyphs carrying a hardcoded brand fill (`#24292F`, `#5865F2`),\n * and a `fill` prop only reaches the `<svg>`, which the path's own attribute overrides — but a CSS\n * declaration outranks that presentation attribute, so this wins for all icons uniformly.\n */\nconst TileIcon = styled.span`\n display: inline-flex;\n\n svg,\n svg path {\n fill: ${({ theme }) => theme.colors.primary600};\n }\n`;\n\n/**\n * The tiles share the card with the diagnostic-snapshot panel, so they only get about half the\n * card's width. A viewport breakpoint therefore fires far too late — the tiles are already\n * cramped while the window is still \"large\". Sizing off the tile panel itself instead means the\n * 2 -> 1 column switch happens when *these* tiles run out of room, whatever the window is doing.\n */\nconst TileGrid = styled.div`\n display: flex;\n flex-wrap: wrap;\n gap: ${({ theme }) => theme.spaces[4]};\n\n /* The 50% basis caps the row at two tiles however wide the card gets, and min-width is what\n forces the wrap to a single column. Both are measured against this element, so the switch is\n driven by the space the tiles actually have rather than by the viewport. A container query\n would say the same thing more directly, but jsdom cannot parse @container and it breaks the\n admin suite's stylesheet parse (same reason FormLayout in content-manager avoids it). */\n > * {\n flex: 1 1 calc(50% - ${({ theme }) => theme.spaces[4]} / 2);\n min-width: 16rem;\n }\n`;\n\nconst SupportLinkTile = ({ href, icon: Icon, title, description }: SupportLinkTileConfig) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box\n tag=\"a\"\n href={href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n // Without this the accessible name is the title and description concatenated, so the tile\n // announces as e.g. \"Documentation Guides and API reference\" and collides with the\n // same-named Settings nav link. Labelling it also tells screen readers it opens a new tab.\n aria-label={formatMessage(\n {\n id: 'Settings.application.support.tile-label',\n defaultMessage: 'Open {title} in a new tab',\n },\n { title: formatMessage(title) }\n )}\n display=\"block\"\n hasRadius\n borderColor=\"neutral200\"\n padding={4}\n // The tile is the link, so the anchor's own underline and link colour must not bleed onto\n // the text inside it; every colour below comes from a theme token so both themes match.\n style={{ textDecoration: 'none' }}\n >\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <TileIcon>\n <Icon width=\"2rem\" height=\"2rem\" aria-hidden />\n </TileIcon>\n <ExternalLink fill=\"neutral400\" aria-hidden />\n </Flex>\n <Flex direction=\"column\" alignItems=\"start\" gap={1} paddingTop={3}>\n <Typography fontWeight=\"bold\" textColor=\"neutral800\">\n {formatMessage(title)}\n </Typography>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage(description)}\n </Typography>\n </Flex>\n </Box>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * SupportCard\n * -----------------------------------------------------------------------------------------------*/\n\nconst DOCUMENTATION_TILE: SupportLinkTileConfig = {\n id: 'documentation',\n href: 'https://docs.strapi.io',\n icon: Book,\n title: {\n id: 'Settings.application.support.documentation.title',\n defaultMessage: 'Documentation',\n },\n description: {\n id: 'Settings.application.support.documentation.description',\n defaultMessage: 'Guides and API reference',\n },\n};\n\nconst GITHUB_ISSUES_TILE: SupportLinkTileConfig = {\n id: 'github-issues',\n href: 'https://github.com/strapi/strapi/issues',\n icon: GitHub,\n title: {\n id: 'Settings.application.support.github-issues.title',\n defaultMessage: 'GitHub issues',\n },\n description: {\n id: 'Settings.application.support.github-issues.description',\n defaultMessage: 'Report a bug',\n },\n};\n\nconst GITHUB_DISCUSSIONS_TILE: SupportLinkTileConfig = {\n id: 'github-discussions',\n href: 'https://github.com/strapi/strapi/discussions',\n icon: GitHub,\n title: {\n id: 'Settings.application.support.github-discussions.title',\n defaultMessage: 'GitHub discussions',\n },\n description: {\n id: 'Settings.application.support.github-discussions.description',\n defaultMessage: 'Ask a question or propose an idea',\n },\n};\n\nconst DISCORD_TILE: SupportLinkTileConfig = {\n id: 'discord',\n href: 'https://discord.strapi.io',\n icon: Discord,\n title: { id: 'Settings.application.support.discord.title', defaultMessage: 'Discord' },\n description: {\n id: 'Settings.application.support.discord.description',\n defaultMessage: 'Talk to the community in real time',\n },\n};\n\nconst SUPPORT_PORTAL_TILE: SupportLinkTileConfig = {\n id: 'support-portal',\n href: 'https://support.strapi.io',\n icon: PaperPlane,\n title: {\n id: 'Settings.application.support.support-portal.title',\n defaultMessage: 'Support portal',\n },\n description: {\n id: 'Settings.application.support.support-portal.description',\n defaultMessage: 'Open a ticket with the Strapi support',\n },\n};\n\nconst CE_TILES: SupportLinkTileConfig[] = [\n DOCUMENTATION_TILE,\n GITHUB_ISSUES_TILE,\n GITHUB_DISCUSSIONS_TILE,\n DISCORD_TILE,\n];\n\nconst EE_TILES: SupportLinkTileConfig[] = [\n SUPPORT_PORTAL_TILE,\n DOCUMENTATION_TILE,\n GITHUB_ISSUES_TILE,\n DISCORD_TILE,\n];\n\nconst SupportCard = () => {\n const { formatMessage } = useIntl();\n const [isSnapshotModalOpen, setIsSnapshotModalOpen] = React.useState(false);\n\n const debugDumpPermissions = useTypedSelector(\n (state) => state.admin_app.permissions.settings?.['debug-dump']?.main\n );\n const {\n allowedActions: { canRead },\n } = useRBAC(debugDumpPermissions);\n\n // Keyed on the licensed plan rather than `isEE` so a customer whose license has lapsed keeps\n // the Strapi support portal link, which is exactly what they need at that moment. This only\n // ever swaps which support links are shown; it gates no feature.\n // The authenticated license-limit-information endpoint is EE-only, so a CE instance gets a\n // 404 here; treat that (or any other error/missing data) the same as \"no license\" (Community).\n // Until the first response, there is no telling which plan this is: painting the Community\n // fallback and then swapping it out would name the wrong plan for a moment.\n const { data: licenseLimitsData, isLoading: isLicenseLoading } = useGetLicenseLimitsQuery();\n const licenseStatus = licenseLimitsData?.data?.licenseStatus ?? 'none';\n const planPriceId = licenseLimitsData?.data?.planPriceId ?? undefined;\n const isTrial = licenseLimitsData?.data?.isTrial ?? false;\n const licensedPlan = getLicensedPlan({\n licenseStatus,\n type: licenseLimitsData?.data?.type,\n planPriceId,\n });\n // A trial resolves to a paid plan name, but a trial does not come with Strapi support, so\n // it gets the community channels instead of the support portal.\n const hasStrapiSupport = licensedPlan !== 'Community' && !isTrial;\n const tiles = hasStrapiSupport ? EE_TILES : CE_TILES;\n\n return (\n <>\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n gap={4}\n hasRadius\n background=\"neutral0\"\n shadow=\"tableShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingRight={7}\n paddingLeft={7}\n >\n <Flex direction=\"column\" alignItems=\"start\" gap={1}>\n <Typography variant=\"delta\" tag=\"h3\">\n {formatMessage({ id: 'Settings.application.support.title', defaultMessage: 'Support' })}\n </Typography>\n {!isLicenseLoading && (\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {formatMessage(\n hasStrapiSupport\n ? {\n id: 'Settings.application.support.subtitle.enterprise',\n defaultMessage:\n 'Contact support, report a bug, or contribute to the Strapi community.',\n }\n : {\n id: 'Settings.application.support.subtitle.community',\n defaultMessage:\n 'Ask a question, report a bug, or contribute to the Strapi community.',\n }\n )}\n </Typography>\n )}\n </Flex>\n {!isLicenseLoading && (\n <Flex alignItems=\"stretch\" gap={7}>\n <Box flex=\"1 1 0%\">\n <TileGrid>\n {tiles.map((tile) => (\n <SupportLinkTile key={tile.id} {...tile} />\n ))}\n </TileGrid>\n </Box>\n {canRead && (\n <>\n <Box background=\"neutral150\" width=\"0.1rem\" />\n <Flex direction=\"column\" alignItems=\"start\" gap={3} flex=\"1 1 0%\">\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.application.support.diagnostic-snapshot.label',\n defaultMessage: 'diagnostic snapshot',\n })}\n </Typography>\n <Typography>\n {formatMessage(\n hasStrapiSupport\n ? {\n id: 'Settings.application.support.diagnostic-snapshot.description.enterprise',\n defaultMessage:\n 'Reporting a bug? A diagnostic snapshot describes how this project is built so it can be reproduced.',\n }\n : {\n id: 'Settings.application.support.diagnostic-snapshot.description.community',\n defaultMessage:\n \"Reporting a bug? Generate a snapshot of your app's structure so the issue can be reproduced.\",\n }\n )}\n </Typography>\n <Button onClick={() => setIsSnapshotModalOpen(true)}>\n {formatMessage({\n id: 'Settings.application.support.diagnostic-snapshot.generate',\n defaultMessage: 'Generate snapshot',\n })}\n </Button>\n </Flex>\n </>\n )}\n </Flex>\n )}\n </Flex>\n <DiagnosticSnapshotModal\n isOpen={isSnapshotModalOpen}\n onClose={() => setIsSnapshotModalOpen(false)}\n />\n </>\n );\n};\n\nexport { SupportCard };\n"],"names":["TileIcon","styled","span","theme","colors","primary600","TileGrid","div","spaces","SupportLinkTile","href","icon","Icon","title","description","formatMessage","useIntl","_jsxs","Box","tag","target","rel","aria-label","id","defaultMessage","display","hasRadius","borderColor","padding","style","textDecoration","Flex","justifyContent","alignItems","_jsx","width","height","aria-hidden","ExternalLink","fill","direction","gap","paddingTop","Typography","fontWeight","textColor","variant","DOCUMENTATION_TILE","Book","GITHUB_ISSUES_TILE","GitHub","GITHUB_DISCUSSIONS_TILE","DISCORD_TILE","Discord","SUPPORT_PORTAL_TILE","PaperPlane","CE_TILES","EE_TILES","SupportCard","isSnapshotModalOpen","setIsSnapshotModalOpen","React","useState","debugDumpPermissions","useTypedSelector","state","admin_app","permissions","settings","main","allowedActions","canRead","useRBAC","data","licenseLimitsData","isLoading","isLicenseLoading","useGetLicenseLimitsQuery","licenseStatus","planPriceId","undefined","isTrial","licensedPlan","getLicensedPlan","type","hasStrapiSupport","tiles","_Fragment","background","shadow","paddingBottom","paddingRight","paddingLeft","flex","map","tile","Button","onClick","DiagnosticSnapshotModal","isOpen","onClose"],"mappings":"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"}
|
package/dist/admin/admin/src/pages/Settings/pages/Roles/components/CollapsePropertyMatrix.js
CHANGED
|
@@ -39,7 +39,12 @@ function _interopNamespace(e) {
|
|
|
39
39
|
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
40
40
|
var get__default = /*#__PURE__*/_interopDefault(get);
|
|
41
41
|
|
|
42
|
-
const
|
|
42
|
+
const EMPTY_AVAILABLE_ACTIONS = [];
|
|
43
|
+
const EMPTY_CHILDREN_FORM = [];
|
|
44
|
+
const EMPTY_ACTION_ROW_CHILDREN_FORM = [];
|
|
45
|
+
const EMPTY_SUB_ACTION_ROW_CHILDREN_FORM = [];
|
|
46
|
+
const EMPTY_HEADERS = [];
|
|
47
|
+
const CollapsePropertyMatrix = ({ availableActions = EMPTY_AVAILABLE_ACTIONS, childrenForm = EMPTY_CHILDREN_FORM, isFormDisabled, label, pathToData, propertyName, subject })=>{
|
|
43
48
|
const { formatMessage, formatList } = reactIntl.useIntl();
|
|
44
49
|
const { modifiedData } = usePermissionsDataManager.usePermissionsDataManager();
|
|
45
50
|
const propertyActions = React__namespace.useMemo(()=>availableActions.map((action)=>{
|
|
@@ -111,7 +116,7 @@ const CollapsePropertyMatrix = ({ availableActions = [], childrenForm = [], isFo
|
|
|
111
116
|
]
|
|
112
117
|
});
|
|
113
118
|
};
|
|
114
|
-
const ActionRow = ({ childrenForm =
|
|
119
|
+
const ActionRow = ({ childrenForm = EMPTY_ACTION_ROW_CHILDREN_FORM, label, isFormDisabled = false, name, required = false, pathToData, propertyActions, propertyName, isOdd = false, subject })=>{
|
|
115
120
|
const { formatMessage } = reactIntl.useIntl();
|
|
116
121
|
const [rowToOpen, setRowToOpen] = React__namespace.useState(null);
|
|
117
122
|
const { modifiedData, onChangeCollectionTypeLeftActionRowCheckbox, onChangeParentCheckbox, onChangeSimpleCheckbox, checkUserHasPermission } = usePermissionsDataManager.usePermissionsDataManager();
|
|
@@ -316,7 +321,7 @@ const CarretIcon = styledComponents.styled(icons.CaretDown)`
|
|
|
316
321
|
transform: rotate(${({ $isActive })=>$isActive ? '180' : '0'}deg);
|
|
317
322
|
margin-left: ${({ theme })=>theme.spaces[2]};
|
|
318
323
|
`;
|
|
319
|
-
const SubActionRow = ({ childrenForm =
|
|
324
|
+
const SubActionRow = ({ childrenForm = EMPTY_SUB_ACTION_ROW_CHILDREN_FORM, isFormDisabled, recursiveLevel, pathToDataFromActionRow, propertyActions, parentName, propertyName, subject })=>{
|
|
320
325
|
const { formatMessage } = reactIntl.useIntl();
|
|
321
326
|
const { modifiedData, onChangeParentCheckbox, onChangeSimpleCheckbox, checkUserHasPermission } = usePermissionsDataManager.usePermissionsDataManager();
|
|
322
327
|
const [rowToOpen, setRowToOpen] = React__namespace.useState(null);
|
|
@@ -549,7 +554,7 @@ const Svg = styledComponents.styled.svg`
|
|
|
549
554
|
fill: ${({ theme, $color })=>theme.colors[$color]};
|
|
550
555
|
}
|
|
551
556
|
`;
|
|
552
|
-
const Header = ({ headers =
|
|
557
|
+
const Header = ({ headers = EMPTY_HEADERS, label })=>{
|
|
553
558
|
const { formatMessage } = reactIntl.useIntl();
|
|
554
559
|
return /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
555
560
|
children: [
|