@strapi/admin 5.56.0 → 5.58.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/components/Filters.js +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/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 -2
- package/dist/admin/admin/src/components/FormInputs/Enumeration.js.map +1 -1
- package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs +2 -2
- package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs.map +1 -1
- package/dist/admin/admin/src/components/MediaLibraryBanner.js +38 -2
- package/dist/admin/admin/src/components/MediaLibraryBanner.js.map +1 -1
- package/dist/admin/admin/src/components/MediaLibraryBanner.mjs +18 -2
- package/dist/admin/admin/src/components/MediaLibraryBanner.mjs.map +1 -1
- package/dist/admin/admin/src/components/RelativeTime.js +9 -0
- package/dist/admin/admin/src/components/RelativeTime.js.map +1 -1
- package/dist/admin/admin/src/components/RelativeTime.mjs +10 -1
- package/dist/admin/admin/src/components/RelativeTime.mjs.map +1 -1
- package/dist/admin/admin/src/components/TopBanners.js +52 -0
- package/dist/admin/admin/src/components/TopBanners.js.map +1 -0
- package/dist/admin/admin/src/components/TopBanners.mjs +30 -0
- package/dist/admin/admin/src/components/TopBanners.mjs.map +1 -0
- 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/features/Tracking.js +28 -8
- package/dist/admin/admin/src/features/Tracking.js.map +1 -1
- package/dist/admin/admin/src/features/Tracking.mjs +29 -10
- package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.js +4 -20
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs +4 -20
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
- package/dist/admin/admin/src/layouts/useAuthenticatedAccessTracking.js +59 -0
- package/dist/admin/admin/src/layouts/useAuthenticatedAccessTracking.js.map +1 -0
- package/dist/admin/admin/src/layouts/useAuthenticatedAccessTracking.mjs +37 -0
- package/dist/admin/admin/src/layouts/useAuthenticatedAccessTracking.mjs.map +1 -0
- 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/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/pages/ApplicationInfo/ApplicationInfoPage.js +6 -56
- 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 +6 -56
- 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/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/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/translations/en.json.js +76 -4
- package/dist/admin/admin/src/translations/en.json.js.map +1 -1
- package/dist/admin/admin/src/translations/en.json.mjs +76 -4
- package/dist/admin/admin/src/translations/en.json.mjs.map +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/getFetchClient.js +27 -3
- package/dist/admin/admin/src/utils/getFetchClient.js.map +1 -1
- package/dist/admin/admin/src/utils/getFetchClient.mjs +26 -3
- package/dist/admin/admin/src/utils/getFetchClient.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 +8 -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 +8 -1
- 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/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/MediaLibraryBanner.d.ts +10 -1
- package/dist/admin/src/components/TopBanners.d.ts +8 -0
- package/dist/admin/src/constants.d.ts +10 -0
- package/dist/admin/src/features/Tracking.d.ts +12 -1
- package/dist/admin/src/layouts/useAuthenticatedAccessTracking.d.ts +6 -0
- 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/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 +7 -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/authentication-utils/utils.d.ts +8 -2
- package/dist/ee/server/src/controllers/authentication-utils/utils.d.ts.map +1 -1
- package/dist/ee/server/src/controllers/authentication.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/controllers/user.d.ts.map +1 -1
- package/dist/ee/server/src/index.d.ts +40 -11
- package/dist/ee/server/src/index.d.ts.map +1 -1
- package/dist/ee/server/src/services/index.d.ts +4 -1
- package/dist/ee/server/src/services/index.d.ts.map +1 -1
- package/dist/ee/server/src/services/metrics.d.ts.map +1 -1
- package/dist/ee/server/src/services/persist-tables.d.ts.map +1 -1
- package/dist/ee/server/src/services/seat-enforcement.d.ts +3 -1
- package/dist/ee/server/src/services/seat-enforcement.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/controllers/admin.js +79 -7
- package/dist/server/ee/server/src/controllers/admin.js.map +1 -1
- package/dist/server/ee/server/src/controllers/admin.mjs +79 -7
- 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/controllers/authentication-utils/utils.js +2 -2
- 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 +2 -2
- package/dist/server/ee/server/src/controllers/authentication-utils/utils.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication.js +11 -11
- package/dist/server/ee/server/src/controllers/authentication.js.map +1 -1
- package/dist/server/ee/server/src/controllers/authentication.mjs +11 -11
- package/dist/server/ee/server/src/controllers/authentication.mjs.map +1 -1
- package/dist/server/ee/server/src/controllers/user.js +7 -8
- package/dist/server/ee/server/src/controllers/user.js.map +1 -1
- package/dist/server/ee/server/src/controllers/user.mjs +8 -9
- package/dist/server/ee/server/src/controllers/user.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/metrics.js +9 -7
- package/dist/server/ee/server/src/services/metrics.js.map +1 -1
- package/dist/server/ee/server/src/services/metrics.mjs +9 -7
- package/dist/server/ee/server/src/services/metrics.mjs.map +1 -1
- package/dist/server/ee/server/src/services/persist-tables.js +3 -4
- package/dist/server/ee/server/src/services/persist-tables.js.map +1 -1
- package/dist/server/ee/server/src/services/persist-tables.mjs +3 -4
- package/dist/server/ee/server/src/services/persist-tables.mjs.map +1 -1
- package/dist/server/ee/server/src/services/role.js +2 -2
- package/dist/server/ee/server/src/services/role.js.map +1 -1
- package/dist/server/ee/server/src/services/role.mjs +1 -1
- package/dist/server/ee/server/src/services/role.mjs.map +1 -1
- package/dist/server/ee/server/src/services/seat-enforcement.js +20 -20
- package/dist/server/ee/server/src/services/seat-enforcement.js.map +1 -1
- package/dist/server/ee/server/src/services/seat-enforcement.mjs +20 -20
- package/dist/server/ee/server/src/services/seat-enforcement.mjs.map +1 -1
- package/dist/server/ee/server/src/services/user.js +1 -2
- package/dist/server/ee/server/src/services/user.js.map +1 -1
- package/dist/server/ee/server/src/services/user.mjs +2 -3
- package/dist/server/ee/server/src/services/user.mjs.map +1 -1
- package/dist/server/ee/server/src/utils/sso-lock.js +2 -2
- package/dist/server/ee/server/src/utils/sso-lock.js.map +1 -1
- package/dist/server/ee/server/src/utils/sso-lock.mjs +1 -1
- package/dist/server/ee/server/src/utils/sso-lock.mjs.map +1 -1
- package/dist/server/server/src/audit-logs/admin-users.js +3 -3
- package/dist/server/server/src/audit-logs/admin-users.js.map +1 -1
- package/dist/server/server/src/audit-logs/admin-users.mjs +2 -2
- package/dist/server/server/src/audit-logs/admin-users.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/audit-logs/tokens.js +3 -3
- package/dist/server/server/src/audit-logs/tokens.js.map +1 -1
- package/dist/server/server/src/audit-logs/tokens.mjs +2 -2
- package/dist/server/server/src/audit-logs/tokens.mjs.map +1 -1
- package/dist/server/server/src/audit-logs/webhooks.js +2 -2
- package/dist/server/server/src/audit-logs/webhooks.js.map +1 -1
- package/dist/server/server/src/audit-logs/webhooks.mjs +1 -1
- package/dist/server/server/src/audit-logs/webhooks.mjs.map +1 -1
- package/dist/server/server/src/bootstrap.js +6 -4
- package/dist/server/server/src/bootstrap.js.map +1 -1
- package/dist/server/server/src/bootstrap.mjs +6 -4
- package/dist/server/server/src/bootstrap.mjs.map +1 -1
- 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-token.js +8 -8
- package/dist/server/server/src/controllers/admin-token.js.map +1 -1
- package/dist/server/server/src/controllers/admin-token.mjs +4 -4
- package/dist/server/server/src/controllers/admin-token.mjs.map +1 -1
- package/dist/server/server/src/controllers/admin.js +9 -5
- package/dist/server/server/src/controllers/admin.js.map +1 -1
- package/dist/server/server/src/controllers/admin.mjs +8 -4
- package/dist/server/server/src/controllers/admin.mjs.map +1 -1
- package/dist/server/server/src/controllers/api-token.js +8 -8
- package/dist/server/server/src/controllers/api-token.js.map +1 -1
- package/dist/server/server/src/controllers/api-token.mjs +4 -4
- package/dist/server/server/src/controllers/api-token.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/controllers/formatters/conditions.js +2 -2
- package/dist/server/server/src/controllers/formatters/conditions.js.map +1 -1
- package/dist/server/server/src/controllers/formatters/conditions.mjs +2 -2
- package/dist/server/server/src/controllers/formatters/conditions.mjs.map +1 -1
- package/dist/server/server/src/controllers/transfer/index.js +2 -2
- package/dist/server/server/src/controllers/transfer/index.js.map +1 -1
- package/dist/server/server/src/controllers/transfer/index.mjs +2 -2
- package/dist/server/server/src/controllers/transfer/index.mjs.map +1 -1
- package/dist/server/server/src/controllers/transfer/token.js +8 -8
- package/dist/server/server/src/controllers/transfer/token.js.map +1 -1
- package/dist/server/server/src/controllers/transfer/token.mjs +4 -4
- package/dist/server/server/src/controllers/transfer/token.mjs.map +1 -1
- package/dist/server/server/src/domain/action/index.js +18 -16
- package/dist/server/server/src/domain/action/index.js.map +1 -1
- package/dist/server/server/src/domain/action/index.mjs +16 -14
- package/dist/server/server/src/domain/action/index.mjs.map +1 -1
- package/dist/server/server/src/domain/action/provider.mjs +4 -4
- package/dist/server/server/src/domain/action/provider.mjs.map +1 -1
- package/dist/server/server/src/domain/condition/index.js +7 -4
- package/dist/server/server/src/domain/condition/index.js.map +1 -1
- package/dist/server/server/src/domain/condition/index.mjs +7 -4
- package/dist/server/server/src/domain/condition/index.mjs.map +1 -1
- package/dist/server/server/src/domain/permission/index.js +24 -15
- package/dist/server/server/src/domain/permission/index.js.map +1 -1
- package/dist/server/server/src/domain/permission/index.mjs +21 -12
- package/dist/server/server/src/domain/permission/index.mjs.map +1 -1
- package/dist/server/server/src/middlewares/rateLimit.js +5 -5
- package/dist/server/server/src/middlewares/rateLimit.js.map +1 -1
- package/dist/server/server/src/middlewares/rateLimit.mjs +4 -4
- package/dist/server/server/src/middlewares/rateLimit.mjs.map +1 -1
- package/dist/server/server/src/register.js +10 -0
- package/dist/server/server/src/register.js.map +1 -1
- package/dist/server/server/src/register.mjs +10 -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/action.js +1 -2
- package/dist/server/server/src/services/action.js.map +1 -1
- package/dist/server/server/src/services/action.mjs +1 -2
- package/dist/server/server/src/services/action.mjs.map +1 -1
- package/dist/server/server/src/services/api-token.js +61 -49
- package/dist/server/server/src/services/api-token.js.map +1 -1
- package/dist/server/server/src/services/api-token.mjs +53 -41
- 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/condition.js +2 -2
- package/dist/server/server/src/services/condition.js.map +1 -1
- package/dist/server/server/src/services/condition.mjs +1 -1
- package/dist/server/server/src/services/condition.mjs.map +1 -1
- package/dist/server/server/src/services/content-type.js +5 -4
- package/dist/server/server/src/services/content-type.js.map +1 -1
- package/dist/server/server/src/services/content-type.mjs +8 -7
- package/dist/server/server/src/services/content-type.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/homepage.js +2 -1
- package/dist/server/server/src/services/homepage.js.map +1 -1
- package/dist/server/server/src/services/homepage.mjs +2 -1
- package/dist/server/server/src/services/homepage.mjs.map +1 -1
- 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/passport/local-strategy.js +2 -2
- package/dist/server/server/src/services/passport/local-strategy.js.map +1 -1
- package/dist/server/server/src/services/passport/local-strategy.mjs +1 -1
- package/dist/server/server/src/services/passport/local-strategy.mjs.map +1 -1
- package/dist/server/server/src/services/passport.js +1 -2
- package/dist/server/server/src/services/passport.js.map +1 -1
- package/dist/server/server/src/services/passport.mjs +1 -2
- package/dist/server/server/src/services/passport.mjs.map +1 -1
- package/dist/server/server/src/services/permission/engine.js +4 -4
- package/dist/server/server/src/services/permission/engine.js.map +1 -1
- package/dist/server/server/src/services/permission/engine.mjs +2 -2
- package/dist/server/server/src/services/permission/engine.mjs.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/index.js +2 -3
- 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 +1 -2
- 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 +6 -6
- 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 +4 -4
- package/dist/server/server/src/services/permission/permissions-manager/permission-fields.mjs.map +1 -1
- package/dist/server/server/src/services/permission/permissions-manager/sanitize.js +47 -41
- 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 +44 -38
- 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 +30 -26
- 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 +28 -24
- 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 +9 -9
- package/dist/server/server/src/services/permission/queries.mjs.map +1 -1
- package/dist/server/server/src/services/permission/rename-fields.js +118 -0
- package/dist/server/server/src/services/permission/rename-fields.js.map +1 -0
- package/dist/server/server/src/services/permission/rename-fields.mjs +116 -0
- package/dist/server/server/src/services/permission/rename-fields.mjs.map +1 -0
- package/dist/server/server/src/services/permission/sections-builder/index.js +2 -2
- 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 +2 -2
- 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 +1 -2
- 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 +1 -2
- 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 +6 -6
- 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 +4 -4
- package/dist/server/server/src/services/permission/sections-builder/utils.mjs.map +1 -1
- package/dist/server/server/src/services/role.js +20 -19
- package/dist/server/server/src/services/role.js.map +1 -1
- package/dist/server/server/src/services/role.mjs +20 -19
- package/dist/server/server/src/services/role.mjs.map +1 -1
- package/dist/server/server/src/services/transfer/token.js +20 -16
- package/dist/server/server/src/services/transfer/token.js.map +1 -1
- package/dist/server/server/src/services/transfer/token.mjs +14 -10
- package/dist/server/server/src/services/transfer/token.mjs.map +1 -1
- package/dist/server/server/src/services/user.js +2 -3
- package/dist/server/server/src/services/user.js.map +1 -1
- package/dist/server/server/src/services/user.mjs +3 -4
- package/dist/server/server/src/services/user.mjs.map +1 -1
- package/dist/server/server/src/strategies/api-token-utils.js +2 -3
- package/dist/server/server/src/strategies/api-token-utils.js.map +1 -1
- package/dist/server/server/src/strategies/api-token-utils.mjs +2 -3
- package/dist/server/server/src/strategies/api-token-utils.mjs.map +1 -1
- package/dist/server/server/src/strategies/content-api-token.js +3 -3
- package/dist/server/server/src/strategies/content-api-token.js.map +1 -1
- package/dist/server/server/src/strategies/content-api-token.mjs +1 -1
- package/dist/server/server/src/strategies/content-api-token.mjs.map +1 -1
- package/dist/server/server/src/strategies/data-transfer.js +4 -4
- package/dist/server/server/src/strategies/data-transfer.js.map +1 -1
- package/dist/server/server/src/strategies/data-transfer.mjs +3 -3
- package/dist/server/server/src/strategies/data-transfer.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/common-validators.js +9 -10
- package/dist/server/server/src/validation/common-validators.js.map +1 -1
- package/dist/server/server/src/validation/common-validators.mjs +13 -14
- package/dist/server/server/src/validation/common-validators.mjs.map +1 -1
- package/dist/server/server/src/validation/user.js +1 -2
- package/dist/server/server/src/validation/user.js.map +1 -1
- package/dist/server/server/src/validation/user.mjs +1 -2
- package/dist/server/server/src/validation/user.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/src/audit-logs/auth.d.ts +72 -0
- package/dist/server/src/audit-logs/auth.d.ts.map +1 -0
- package/dist/server/src/audit-logs/tokens.d.ts.map +1 -1
- package/dist/server/src/bootstrap.d.ts.map +1 -1
- package/dist/server/src/config/admin-actions.d.ts.map +1 -1
- package/dist/server/src/controllers/admin-token.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/api-token.d.ts.map +1 -1
- package/dist/server/src/controllers/authentication.d.ts.map +1 -1
- package/dist/server/src/controllers/formatters/conditions.d.ts +1 -1
- package/dist/server/src/controllers/formatters/conditions.d.ts.map +1 -1
- package/dist/server/src/controllers/homepage.d.ts +1 -1
- package/dist/server/src/controllers/index.d.ts +4 -1
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/controllers/transfer/index.d.ts.map +1 -1
- package/dist/server/src/controllers/transfer/token.d.ts.map +1 -1
- package/dist/server/src/domain/action/index.d.ts +1 -0
- package/dist/server/src/domain/action/index.d.ts.map +1 -1
- package/dist/server/src/domain/condition/index.d.ts +2 -2
- package/dist/server/src/domain/condition/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 +11 -3
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/middlewares/index.d.ts.map +1 -1
- package/dist/server/src/middlewares/rateLimit.d.ts.map +1 -1
- package/dist/server/src/register.d.ts.map +1 -1
- package/dist/server/src/routes/admin.d.ts.map +1 -1
- package/dist/server/src/services/action.d.ts.map +1 -1
- package/dist/server/src/services/api-token.d.ts.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/condition.d.ts.map +1 -1
- package/dist/server/src/services/content-type.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/homepage.d.ts +1 -1
- package/dist/server/src/services/homepage.d.ts.map +1 -1
- package/dist/server/src/services/index.d.ts +7 -2
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/server/src/services/passport/local-strategy.d.ts.map +1 -1
- package/dist/server/src/services/passport.d.ts.map +1 -1
- package/dist/server/src/services/permission/engine.d.ts.map +1 -1
- package/dist/server/src/services/permission/permissions-manager/permission-fields.d.ts.map +1 -1
- package/dist/server/src/services/permission/permissions-manager/sanitize.d.ts.map +1 -1
- package/dist/server/src/services/permission/permissions-manager/validate.d.ts.map +1 -1
- package/dist/server/src/services/permission/queries.d.ts.map +1 -1
- package/dist/server/src/services/permission/rename-fields.d.ts +21 -0
- package/dist/server/src/services/permission/rename-fields.d.ts.map +1 -0
- package/dist/server/src/services/permission/sections-builder/section.d.ts.map +1 -1
- package/dist/server/src/services/permission/sections-builder/utils.d.ts +1 -1
- package/dist/server/src/services/permission/sections-builder/utils.d.ts.map +1 -1
- package/dist/server/src/services/role.d.ts +1 -1
- package/dist/server/src/services/role.d.ts.map +1 -1
- package/dist/server/src/services/transfer/token.d.ts.map +1 -1
- package/dist/server/src/strategies/content-api-token.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/user.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/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/get-project-type.d.ts +37 -0
- package/dist/shared/utils/get-project-type.d.ts.map +1 -0
- package/package.json +10 -10
- 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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"}
|
|
@@ -112,11 +112,20 @@ const admin = api.adminApi.enhanceEndpoints({
|
|
|
112
112
|
providesTags: [
|
|
113
113
|
'GuidedTourMeta'
|
|
114
114
|
]
|
|
115
|
+
}),
|
|
116
|
+
getDebugDump: builder.query({
|
|
117
|
+
query: ()=>({
|
|
118
|
+
url: '/admin/debug-dump',
|
|
119
|
+
method: 'GET'
|
|
120
|
+
}),
|
|
121
|
+
transformResponse (res) {
|
|
122
|
+
return res.data;
|
|
123
|
+
}
|
|
115
124
|
})
|
|
116
125
|
}),
|
|
117
126
|
overrideExisting: false
|
|
118
127
|
});
|
|
119
|
-
const { useInitQuery, useTelemetryPropertiesQuery, useInformationQuery, useProjectSettingsQuery, useUpdateProjectSettingsMutation, useGetPluginsQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetGuidedTourMetaQuery } = admin;
|
|
128
|
+
const { useInitQuery, useTelemetryPropertiesQuery, useInformationQuery, useProjectSettingsQuery, useUpdateProjectSettingsMutation, useGetPluginsQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetGuidedTourMetaQuery, useLazyGetDebugDumpQuery } = admin;
|
|
120
129
|
|
|
121
130
|
exports.useGetGuidedTourMetaQuery = useGetGuidedTourMetaQuery;
|
|
122
131
|
exports.useGetLicenseLimitsQuery = useGetLicenseLimitsQuery;
|
|
@@ -124,6 +133,7 @@ exports.useGetLicenseTrialTimeLeftQuery = useGetLicenseTrialTimeLeftQuery;
|
|
|
124
133
|
exports.useGetPluginsQuery = useGetPluginsQuery;
|
|
125
134
|
exports.useInformationQuery = useInformationQuery;
|
|
126
135
|
exports.useInitQuery = useInitQuery;
|
|
136
|
+
exports.useLazyGetDebugDumpQuery = useLazyGetDebugDumpQuery;
|
|
127
137
|
exports.useProjectSettingsQuery = useProjectSettingsQuery;
|
|
128
138
|
exports.useTelemetryPropertiesQuery = useTelemetryPropertiesQuery;
|
|
129
139
|
exports.useUpdateProjectSettingsMutation = useUpdateProjectSettingsMutation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.js","sources":["../../../../../admin/src/services/admin.ts"],"sourcesContent":["import {\n type TelemetryProperties,\n type Init,\n type Information,\n type GetProjectSettings,\n type UpdateProjectSettings,\n type Plugins,\n type GetLicenseLimitInformation,\n GetGuidedTourMeta,\n} from '../../../shared/contracts/admin';\nimport { prefixFileUrlWithBackendUrl } from '../utils/urls';\n\nimport { adminApi } from './api';\n\ninterface ConfigurationLogo {\n custom?: {\n name?: string;\n url?: string;\n };\n default: string;\n}\n\nconst admin = adminApi\n .enhanceEndpoints({\n addTagTypes: ['ProjectSettings', 'LicenseLimits', 'LicenseTrialTimeLeft'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n init: builder.query<Init.Response['data'], void>({\n query: () => ({\n url: '/admin/init',\n method: 'GET',\n }),\n transformResponse(res: Init.Response) {\n return res.data;\n },\n providesTags: ['ProjectSettings'],\n }),\n information: builder.query<Information.Response['data'], void>({\n query: () => ({\n url: '/admin/information',\n method: 'GET',\n }),\n transformResponse(res: Information.Response) {\n return res.data;\n },\n }),\n telemetryProperties: builder.query<TelemetryProperties.Response['data'], void>({\n query: () => ({\n url: '/admin/telemetry-properties',\n method: 'GET',\n config: {\n validateStatus: (status: number) => status < 500,\n },\n }),\n transformResponse(res: TelemetryProperties.Response) {\n return res.data;\n },\n }),\n projectSettings: builder.query<\n { authLogo?: ConfigurationLogo['custom']; menuLogo?: ConfigurationLogo['custom'] },\n void\n >({\n query: () => ({\n url: '/admin/project-settings',\n method: 'GET',\n }),\n providesTags: ['ProjectSettings'],\n transformResponse(data: GetProjectSettings.Response) {\n return {\n authLogo: data.authLogo\n ? {\n name: data.authLogo.name,\n url: prefixFileUrlWithBackendUrl(data.authLogo.url),\n }\n : undefined,\n menuLogo: data.menuLogo\n ? {\n name: data.menuLogo.name,\n url: prefixFileUrlWithBackendUrl(data.menuLogo.url),\n }\n : undefined,\n };\n },\n }),\n updateProjectSettings: builder.mutation<UpdateProjectSettings.Response, FormData>({\n query: (data) => ({\n url: '/admin/project-settings',\n method: 'POST',\n data,\n config: {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n },\n }),\n invalidatesTags: ['ProjectSettings'],\n }),\n getPlugins: builder.query<Plugins.Response, void>({\n query: () => ({\n url: '/admin/plugins',\n method: 'GET',\n }),\n }),\n getLicenseLimits: builder.query<GetLicenseLimitInformation.Response, void>({\n query: () => ({\n url: '/admin/license-limit-information',\n method: 'GET',\n }),\n providesTags: ['LicenseLimits'],\n }),\n getLicenseTrialTimeLeft: builder.query<{ trialEndsAt: string }, void>({\n query: () => ({\n url: '/admin/license-trial-time-left',\n method: 'GET',\n }),\n providesTags: ['LicenseTrialTimeLeft'],\n }),\n getGuidedTourMeta: builder.query<GetGuidedTourMeta.Response, void>({\n query: () => ({\n url: '/admin/guided-tour-meta',\n method: 'GET',\n }),\n providesTags: ['GuidedTourMeta'],\n }),\n }),\n overrideExisting: false,\n });\n\nconst {\n useInitQuery,\n useTelemetryPropertiesQuery,\n useInformationQuery,\n useProjectSettingsQuery,\n useUpdateProjectSettingsMutation,\n useGetPluginsQuery,\n useGetLicenseLimitsQuery,\n useGetLicenseTrialTimeLeftQuery,\n useGetGuidedTourMetaQuery,\n} = admin;\n\nexport {\n useInitQuery,\n useTelemetryPropertiesQuery,\n useInformationQuery,\n useProjectSettingsQuery,\n useUpdateProjectSettingsMutation,\n useGetPluginsQuery,\n useGetLicenseLimitsQuery,\n useGetLicenseTrialTimeLeftQuery,\n useGetGuidedTourMetaQuery,\n};\n\nexport type { ConfigurationLogo };\n"],"names":["admin","adminApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","init","query","url","method","transformResponse","res","data","providesTags","information","telemetryProperties","config","validateStatus","status","projectSettings","authLogo","name","prefixFileUrlWithBackendUrl","undefined","menuLogo","updateProjectSettings","mutation","headers","invalidatesTags","getPlugins","getLicenseLimits","getLicenseTrialTimeLeft","getGuidedTourMeta","overrideExisting","useInitQuery","useTelemetryPropertiesQuery","useInformationQuery","useProjectSettingsQuery","useUpdateProjectSettingsMutation","useGetPluginsQuery","useGetLicenseLimitsQuery","useGetLicenseTrialTimeLeftQuery","useGetGuidedTourMetaQuery"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"admin.js","sources":["../../../../../admin/src/services/admin.ts"],"sourcesContent":["import {\n type TelemetryProperties,\n type Init,\n type Information,\n type GetProjectSettings,\n type UpdateProjectSettings,\n type Plugins,\n type GetLicenseLimitInformation,\n GetGuidedTourMeta,\n type DebugDump,\n} from '../../../shared/contracts/admin';\nimport { prefixFileUrlWithBackendUrl } from '../utils/urls';\n\nimport { adminApi } from './api';\n\ninterface ConfigurationLogo {\n custom?: {\n name?: string;\n url?: string;\n };\n default: string;\n}\n\nconst admin = adminApi\n .enhanceEndpoints({\n addTagTypes: ['ProjectSettings', 'LicenseLimits', 'LicenseTrialTimeLeft'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n init: builder.query<Init.Response['data'], void>({\n query: () => ({\n url: '/admin/init',\n method: 'GET',\n }),\n transformResponse(res: Init.Response) {\n return res.data;\n },\n providesTags: ['ProjectSettings'],\n }),\n information: builder.query<Information.Response['data'], void>({\n query: () => ({\n url: '/admin/information',\n method: 'GET',\n }),\n transformResponse(res: Information.Response) {\n return res.data;\n },\n }),\n telemetryProperties: builder.query<TelemetryProperties.Response['data'], void>({\n query: () => ({\n url: '/admin/telemetry-properties',\n method: 'GET',\n config: {\n validateStatus: (status: number) => status < 500,\n },\n }),\n transformResponse(res: TelemetryProperties.Response) {\n return res.data;\n },\n }),\n projectSettings: builder.query<\n { authLogo?: ConfigurationLogo['custom']; menuLogo?: ConfigurationLogo['custom'] },\n void\n >({\n query: () => ({\n url: '/admin/project-settings',\n method: 'GET',\n }),\n providesTags: ['ProjectSettings'],\n transformResponse(data: GetProjectSettings.Response) {\n return {\n authLogo: data.authLogo\n ? {\n name: data.authLogo.name,\n url: prefixFileUrlWithBackendUrl(data.authLogo.url),\n }\n : undefined,\n menuLogo: data.menuLogo\n ? {\n name: data.menuLogo.name,\n url: prefixFileUrlWithBackendUrl(data.menuLogo.url),\n }\n : undefined,\n };\n },\n }),\n updateProjectSettings: builder.mutation<UpdateProjectSettings.Response, FormData>({\n query: (data) => ({\n url: '/admin/project-settings',\n method: 'POST',\n data,\n config: {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n },\n }),\n invalidatesTags: ['ProjectSettings'],\n }),\n getPlugins: builder.query<Plugins.Response, void>({\n query: () => ({\n url: '/admin/plugins',\n method: 'GET',\n }),\n }),\n getLicenseLimits: builder.query<GetLicenseLimitInformation.Response, void>({\n query: () => ({\n url: '/admin/license-limit-information',\n method: 'GET',\n }),\n providesTags: ['LicenseLimits'],\n }),\n getLicenseTrialTimeLeft: builder.query<{ trialEndsAt: string }, void>({\n query: () => ({\n url: '/admin/license-trial-time-left',\n method: 'GET',\n }),\n providesTags: ['LicenseTrialTimeLeft'],\n }),\n getGuidedTourMeta: builder.query<GetGuidedTourMeta.Response, void>({\n query: () => ({\n url: '/admin/guided-tour-meta',\n method: 'GET',\n }),\n providesTags: ['GuidedTourMeta'],\n }),\n getDebugDump: builder.query<DebugDump.Response['data'], void>({\n query: () => ({\n url: '/admin/debug-dump',\n method: 'GET',\n }),\n transformResponse(res: DebugDump.Response) {\n return res.data;\n },\n }),\n }),\n overrideExisting: false,\n });\n\nconst {\n useInitQuery,\n useTelemetryPropertiesQuery,\n useInformationQuery,\n useProjectSettingsQuery,\n useUpdateProjectSettingsMutation,\n useGetPluginsQuery,\n useGetLicenseLimitsQuery,\n useGetLicenseTrialTimeLeftQuery,\n useGetGuidedTourMetaQuery,\n useLazyGetDebugDumpQuery,\n} = admin;\n\nexport {\n useInitQuery,\n useTelemetryPropertiesQuery,\n useInformationQuery,\n useProjectSettingsQuery,\n useUpdateProjectSettingsMutation,\n useGetPluginsQuery,\n useGetLicenseLimitsQuery,\n useGetLicenseTrialTimeLeftQuery,\n useGetGuidedTourMetaQuery,\n useLazyGetDebugDumpQuery,\n};\n\nexport type { ConfigurationLogo };\n"],"names":["admin","adminApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","init","query","url","method","transformResponse","res","data","providesTags","information","telemetryProperties","config","validateStatus","status","projectSettings","authLogo","name","prefixFileUrlWithBackendUrl","undefined","menuLogo","updateProjectSettings","mutation","headers","invalidatesTags","getPlugins","getLicenseLimits","getLicenseTrialTimeLeft","getGuidedTourMeta","getDebugDump","overrideExisting","useInitQuery","useTelemetryPropertiesQuery","useInformationQuery","useProjectSettingsQuery","useUpdateProjectSettingsMutation","useGetPluginsQuery","useGetLicenseLimitsQuery","useGetLicenseTrialTimeLeftQuery","useGetGuidedTourMetaQuery","useLazyGetDebugDumpQuery"],"mappings":"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"}
|
|
@@ -110,11 +110,20 @@ const admin = adminApi.enhanceEndpoints({
|
|
|
110
110
|
providesTags: [
|
|
111
111
|
'GuidedTourMeta'
|
|
112
112
|
]
|
|
113
|
+
}),
|
|
114
|
+
getDebugDump: builder.query({
|
|
115
|
+
query: ()=>({
|
|
116
|
+
url: '/admin/debug-dump',
|
|
117
|
+
method: 'GET'
|
|
118
|
+
}),
|
|
119
|
+
transformResponse (res) {
|
|
120
|
+
return res.data;
|
|
121
|
+
}
|
|
113
122
|
})
|
|
114
123
|
}),
|
|
115
124
|
overrideExisting: false
|
|
116
125
|
});
|
|
117
|
-
const { useInitQuery, useTelemetryPropertiesQuery, useInformationQuery, useProjectSettingsQuery, useUpdateProjectSettingsMutation, useGetPluginsQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetGuidedTourMetaQuery } = admin;
|
|
126
|
+
const { useInitQuery, useTelemetryPropertiesQuery, useInformationQuery, useProjectSettingsQuery, useUpdateProjectSettingsMutation, useGetPluginsQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetGuidedTourMetaQuery, useLazyGetDebugDumpQuery } = admin;
|
|
118
127
|
|
|
119
|
-
export { useGetGuidedTourMetaQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetPluginsQuery, useInformationQuery, useInitQuery, useProjectSettingsQuery, useTelemetryPropertiesQuery, useUpdateProjectSettingsMutation };
|
|
128
|
+
export { useGetGuidedTourMetaQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetPluginsQuery, useInformationQuery, useInitQuery, useLazyGetDebugDumpQuery, useProjectSettingsQuery, useTelemetryPropertiesQuery, useUpdateProjectSettingsMutation };
|
|
120
129
|
//# sourceMappingURL=admin.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.mjs","sources":["../../../../../admin/src/services/admin.ts"],"sourcesContent":["import {\n type TelemetryProperties,\n type Init,\n type Information,\n type GetProjectSettings,\n type UpdateProjectSettings,\n type Plugins,\n type GetLicenseLimitInformation,\n GetGuidedTourMeta,\n} from '../../../shared/contracts/admin';\nimport { prefixFileUrlWithBackendUrl } from '../utils/urls';\n\nimport { adminApi } from './api';\n\ninterface ConfigurationLogo {\n custom?: {\n name?: string;\n url?: string;\n };\n default: string;\n}\n\nconst admin = adminApi\n .enhanceEndpoints({\n addTagTypes: ['ProjectSettings', 'LicenseLimits', 'LicenseTrialTimeLeft'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n init: builder.query<Init.Response['data'], void>({\n query: () => ({\n url: '/admin/init',\n method: 'GET',\n }),\n transformResponse(res: Init.Response) {\n return res.data;\n },\n providesTags: ['ProjectSettings'],\n }),\n information: builder.query<Information.Response['data'], void>({\n query: () => ({\n url: '/admin/information',\n method: 'GET',\n }),\n transformResponse(res: Information.Response) {\n return res.data;\n },\n }),\n telemetryProperties: builder.query<TelemetryProperties.Response['data'], void>({\n query: () => ({\n url: '/admin/telemetry-properties',\n method: 'GET',\n config: {\n validateStatus: (status: number) => status < 500,\n },\n }),\n transformResponse(res: TelemetryProperties.Response) {\n return res.data;\n },\n }),\n projectSettings: builder.query<\n { authLogo?: ConfigurationLogo['custom']; menuLogo?: ConfigurationLogo['custom'] },\n void\n >({\n query: () => ({\n url: '/admin/project-settings',\n method: 'GET',\n }),\n providesTags: ['ProjectSettings'],\n transformResponse(data: GetProjectSettings.Response) {\n return {\n authLogo: data.authLogo\n ? {\n name: data.authLogo.name,\n url: prefixFileUrlWithBackendUrl(data.authLogo.url),\n }\n : undefined,\n menuLogo: data.menuLogo\n ? {\n name: data.menuLogo.name,\n url: prefixFileUrlWithBackendUrl(data.menuLogo.url),\n }\n : undefined,\n };\n },\n }),\n updateProjectSettings: builder.mutation<UpdateProjectSettings.Response, FormData>({\n query: (data) => ({\n url: '/admin/project-settings',\n method: 'POST',\n data,\n config: {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n },\n }),\n invalidatesTags: ['ProjectSettings'],\n }),\n getPlugins: builder.query<Plugins.Response, void>({\n query: () => ({\n url: '/admin/plugins',\n method: 'GET',\n }),\n }),\n getLicenseLimits: builder.query<GetLicenseLimitInformation.Response, void>({\n query: () => ({\n url: '/admin/license-limit-information',\n method: 'GET',\n }),\n providesTags: ['LicenseLimits'],\n }),\n getLicenseTrialTimeLeft: builder.query<{ trialEndsAt: string }, void>({\n query: () => ({\n url: '/admin/license-trial-time-left',\n method: 'GET',\n }),\n providesTags: ['LicenseTrialTimeLeft'],\n }),\n getGuidedTourMeta: builder.query<GetGuidedTourMeta.Response, void>({\n query: () => ({\n url: '/admin/guided-tour-meta',\n method: 'GET',\n }),\n providesTags: ['GuidedTourMeta'],\n }),\n }),\n overrideExisting: false,\n });\n\nconst {\n useInitQuery,\n useTelemetryPropertiesQuery,\n useInformationQuery,\n useProjectSettingsQuery,\n useUpdateProjectSettingsMutation,\n useGetPluginsQuery,\n useGetLicenseLimitsQuery,\n useGetLicenseTrialTimeLeftQuery,\n useGetGuidedTourMetaQuery,\n} = admin;\n\nexport {\n useInitQuery,\n useTelemetryPropertiesQuery,\n useInformationQuery,\n useProjectSettingsQuery,\n useUpdateProjectSettingsMutation,\n useGetPluginsQuery,\n useGetLicenseLimitsQuery,\n useGetLicenseTrialTimeLeftQuery,\n useGetGuidedTourMetaQuery,\n};\n\nexport type { ConfigurationLogo };\n"],"names":["admin","adminApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","init","query","url","method","transformResponse","res","data","providesTags","information","telemetryProperties","config","validateStatus","status","projectSettings","authLogo","name","prefixFileUrlWithBackendUrl","undefined","menuLogo","updateProjectSettings","mutation","headers","invalidatesTags","getPlugins","getLicenseLimits","getLicenseTrialTimeLeft","getGuidedTourMeta","overrideExisting","useInitQuery","useTelemetryPropertiesQuery","useInformationQuery","useProjectSettingsQuery","useUpdateProjectSettingsMutation","useGetPluginsQuery","useGetLicenseLimitsQuery","useGetLicenseTrialTimeLeftQuery","useGetGuidedTourMetaQuery"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"admin.mjs","sources":["../../../../../admin/src/services/admin.ts"],"sourcesContent":["import {\n type TelemetryProperties,\n type Init,\n type Information,\n type GetProjectSettings,\n type UpdateProjectSettings,\n type Plugins,\n type GetLicenseLimitInformation,\n GetGuidedTourMeta,\n type DebugDump,\n} from '../../../shared/contracts/admin';\nimport { prefixFileUrlWithBackendUrl } from '../utils/urls';\n\nimport { adminApi } from './api';\n\ninterface ConfigurationLogo {\n custom?: {\n name?: string;\n url?: string;\n };\n default: string;\n}\n\nconst admin = adminApi\n .enhanceEndpoints({\n addTagTypes: ['ProjectSettings', 'LicenseLimits', 'LicenseTrialTimeLeft'],\n })\n .injectEndpoints({\n endpoints: (builder) => ({\n init: builder.query<Init.Response['data'], void>({\n query: () => ({\n url: '/admin/init',\n method: 'GET',\n }),\n transformResponse(res: Init.Response) {\n return res.data;\n },\n providesTags: ['ProjectSettings'],\n }),\n information: builder.query<Information.Response['data'], void>({\n query: () => ({\n url: '/admin/information',\n method: 'GET',\n }),\n transformResponse(res: Information.Response) {\n return res.data;\n },\n }),\n telemetryProperties: builder.query<TelemetryProperties.Response['data'], void>({\n query: () => ({\n url: '/admin/telemetry-properties',\n method: 'GET',\n config: {\n validateStatus: (status: number) => status < 500,\n },\n }),\n transformResponse(res: TelemetryProperties.Response) {\n return res.data;\n },\n }),\n projectSettings: builder.query<\n { authLogo?: ConfigurationLogo['custom']; menuLogo?: ConfigurationLogo['custom'] },\n void\n >({\n query: () => ({\n url: '/admin/project-settings',\n method: 'GET',\n }),\n providesTags: ['ProjectSettings'],\n transformResponse(data: GetProjectSettings.Response) {\n return {\n authLogo: data.authLogo\n ? {\n name: data.authLogo.name,\n url: prefixFileUrlWithBackendUrl(data.authLogo.url),\n }\n : undefined,\n menuLogo: data.menuLogo\n ? {\n name: data.menuLogo.name,\n url: prefixFileUrlWithBackendUrl(data.menuLogo.url),\n }\n : undefined,\n };\n },\n }),\n updateProjectSettings: builder.mutation<UpdateProjectSettings.Response, FormData>({\n query: (data) => ({\n url: '/admin/project-settings',\n method: 'POST',\n data,\n config: {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n },\n }),\n invalidatesTags: ['ProjectSettings'],\n }),\n getPlugins: builder.query<Plugins.Response, void>({\n query: () => ({\n url: '/admin/plugins',\n method: 'GET',\n }),\n }),\n getLicenseLimits: builder.query<GetLicenseLimitInformation.Response, void>({\n query: () => ({\n url: '/admin/license-limit-information',\n method: 'GET',\n }),\n providesTags: ['LicenseLimits'],\n }),\n getLicenseTrialTimeLeft: builder.query<{ trialEndsAt: string }, void>({\n query: () => ({\n url: '/admin/license-trial-time-left',\n method: 'GET',\n }),\n providesTags: ['LicenseTrialTimeLeft'],\n }),\n getGuidedTourMeta: builder.query<GetGuidedTourMeta.Response, void>({\n query: () => ({\n url: '/admin/guided-tour-meta',\n method: 'GET',\n }),\n providesTags: ['GuidedTourMeta'],\n }),\n getDebugDump: builder.query<DebugDump.Response['data'], void>({\n query: () => ({\n url: '/admin/debug-dump',\n method: 'GET',\n }),\n transformResponse(res: DebugDump.Response) {\n return res.data;\n },\n }),\n }),\n overrideExisting: false,\n });\n\nconst {\n useInitQuery,\n useTelemetryPropertiesQuery,\n useInformationQuery,\n useProjectSettingsQuery,\n useUpdateProjectSettingsMutation,\n useGetPluginsQuery,\n useGetLicenseLimitsQuery,\n useGetLicenseTrialTimeLeftQuery,\n useGetGuidedTourMetaQuery,\n useLazyGetDebugDumpQuery,\n} = admin;\n\nexport {\n useInitQuery,\n useTelemetryPropertiesQuery,\n useInformationQuery,\n useProjectSettingsQuery,\n useUpdateProjectSettingsMutation,\n useGetPluginsQuery,\n useGetLicenseLimitsQuery,\n useGetLicenseTrialTimeLeftQuery,\n useGetGuidedTourMetaQuery,\n useLazyGetDebugDumpQuery,\n};\n\nexport type { ConfigurationLogo };\n"],"names":["admin","adminApi","enhanceEndpoints","addTagTypes","injectEndpoints","endpoints","builder","init","query","url","method","transformResponse","res","data","providesTags","information","telemetryProperties","config","validateStatus","status","projectSettings","authLogo","name","prefixFileUrlWithBackendUrl","undefined","menuLogo","updateProjectSettings","mutation","headers","invalidatesTags","getPlugins","getLicenseLimits","getLicenseTrialTimeLeft","getGuidedTourMeta","getDebugDump","overrideExisting","useInitQuery","useTelemetryPropertiesQuery","useInformationQuery","useProjectSettingsQuery","useUpdateProjectSettingsMutation","useGetPluginsQuery","useGetLicenseLimitsQuery","useGetLicenseTrialTimeLeftQuery","useGetGuidedTourMetaQuery","useLazyGetDebugDumpQuery"],"mappings":"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"}
|