@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.
Files changed (465) hide show
  1. package/dist/admin/admin/src/components/Filters.js +1 -1
  2. package/dist/admin/admin/src/components/Filters.js.map +1 -1
  3. package/dist/admin/admin/src/components/Filters.mjs +1 -1
  4. package/dist/admin/admin/src/components/Filters.mjs.map +1 -1
  5. package/dist/admin/admin/src/components/FormInputs/Boolean.js +3 -2
  6. package/dist/admin/admin/src/components/FormInputs/Boolean.js.map +1 -1
  7. package/dist/admin/admin/src/components/FormInputs/Boolean.mjs +3 -2
  8. package/dist/admin/admin/src/components/FormInputs/Boolean.mjs.map +1 -1
  9. package/dist/admin/admin/src/components/FormInputs/Enumeration.js +2 -2
  10. package/dist/admin/admin/src/components/FormInputs/Enumeration.js.map +1 -1
  11. package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs +2 -2
  12. package/dist/admin/admin/src/components/FormInputs/Enumeration.mjs.map +1 -1
  13. package/dist/admin/admin/src/components/MediaLibraryBanner.js +38 -2
  14. package/dist/admin/admin/src/components/MediaLibraryBanner.js.map +1 -1
  15. package/dist/admin/admin/src/components/MediaLibraryBanner.mjs +18 -2
  16. package/dist/admin/admin/src/components/MediaLibraryBanner.mjs.map +1 -1
  17. package/dist/admin/admin/src/components/RelativeTime.js +9 -0
  18. package/dist/admin/admin/src/components/RelativeTime.js.map +1 -1
  19. package/dist/admin/admin/src/components/RelativeTime.mjs +10 -1
  20. package/dist/admin/admin/src/components/RelativeTime.mjs.map +1 -1
  21. package/dist/admin/admin/src/components/TopBanners.js +52 -0
  22. package/dist/admin/admin/src/components/TopBanners.js.map +1 -0
  23. package/dist/admin/admin/src/components/TopBanners.mjs +30 -0
  24. package/dist/admin/admin/src/components/TopBanners.mjs.map +1 -0
  25. package/dist/admin/admin/src/constants.js +14 -0
  26. package/dist/admin/admin/src/constants.js.map +1 -1
  27. package/dist/admin/admin/src/constants.mjs +14 -0
  28. package/dist/admin/admin/src/constants.mjs.map +1 -1
  29. package/dist/admin/admin/src/features/Tracking.js +28 -8
  30. package/dist/admin/admin/src/features/Tracking.js.map +1 -1
  31. package/dist/admin/admin/src/features/Tracking.mjs +29 -10
  32. package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
  33. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js +4 -20
  34. package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
  35. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs +4 -20
  36. package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
  37. package/dist/admin/admin/src/layouts/useAuthenticatedAccessTracking.js +59 -0
  38. package/dist/admin/admin/src/layouts/useAuthenticatedAccessTracking.js.map +1 -0
  39. package/dist/admin/admin/src/layouts/useAuthenticatedAccessTracking.mjs +37 -0
  40. package/dist/admin/admin/src/layouts/useAuthenticatedAccessTracking.mjs.map +1 -0
  41. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.js +6 -12
  42. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.js.map +1 -1
  43. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.mjs +6 -12
  44. package/dist/admin/admin/src/pages/Auth/components/ResetPassword.mjs.map +1 -1
  45. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js +10 -2
  46. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
  47. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs +10 -2
  48. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
  49. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +6 -56
  50. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
  51. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +6 -56
  52. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
  53. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.js +217 -0
  54. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.js.map +1 -0
  55. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.mjs +195 -0
  56. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.mjs.map +1 -0
  57. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.js +185 -0
  58. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.js.map +1 -0
  59. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.mjs +162 -0
  60. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.mjs.map +1 -0
  61. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.js +342 -0
  62. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.js.map +1 -0
  63. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.mjs +320 -0
  64. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.mjs.map +1 -0
  65. package/dist/admin/admin/src/services/admin.js +11 -1
  66. package/dist/admin/admin/src/services/admin.js.map +1 -1
  67. package/dist/admin/admin/src/services/admin.mjs +11 -2
  68. package/dist/admin/admin/src/services/admin.mjs.map +1 -1
  69. package/dist/admin/admin/src/translations/en.json.js +76 -4
  70. package/dist/admin/admin/src/translations/en.json.js.map +1 -1
  71. package/dist/admin/admin/src/translations/en.json.mjs +76 -4
  72. package/dist/admin/admin/src/translations/en.json.mjs.map +1 -1
  73. package/dist/admin/admin/src/utils/browserStrapi.js +1 -1
  74. package/dist/admin/admin/src/utils/browserStrapi.js.map +1 -1
  75. package/dist/admin/admin/src/utils/browserStrapi.mjs +1 -1
  76. package/dist/admin/admin/src/utils/browserStrapi.mjs.map +1 -1
  77. package/dist/admin/admin/src/utils/getFetchClient.js +27 -3
  78. package/dist/admin/admin/src/utils/getFetchClient.js.map +1 -1
  79. package/dist/admin/admin/src/utils/getFetchClient.mjs +26 -3
  80. package/dist/admin/admin/src/utils/getFetchClient.mjs.map +1 -1
  81. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js +52 -22
  82. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js.map +1 -1
  83. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs +53 -23
  84. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs.map +1 -1
  85. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.js +16 -29
  86. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.js.map +1 -1
  87. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.mjs +18 -31
  88. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AdminSeatInfo.mjs.map +1 -1
  89. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/LicenseInfo.js +473 -0
  90. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/LicenseInfo.js.map +1 -0
  91. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/LicenseInfo.mjs +471 -0
  92. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/LicenseInfo.mjs.map +1 -0
  93. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.js +8 -1
  94. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.js.map +1 -1
  95. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.mjs +8 -1
  96. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.mjs.map +1 -1
  97. package/dist/admin/index.js +1 -0
  98. package/dist/admin/index.js.map +1 -1
  99. package/dist/admin/index.mjs +1 -1
  100. package/dist/admin/shared/utils/get-project-type.js +49 -0
  101. package/dist/admin/shared/utils/get-project-type.js.map +1 -0
  102. package/dist/admin/shared/utils/get-project-type.mjs +46 -0
  103. package/dist/admin/shared/utils/get-project-type.mjs.map +1 -0
  104. package/dist/admin/src/components/MediaLibraryBanner.d.ts +10 -1
  105. package/dist/admin/src/components/TopBanners.d.ts +8 -0
  106. package/dist/admin/src/constants.d.ts +10 -0
  107. package/dist/admin/src/features/Tracking.d.ts +12 -1
  108. package/dist/admin/src/layouts/useAuthenticatedAccessTracking.d.ts +6 -0
  109. package/dist/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.d.ts +1 -1
  110. package/dist/admin/src/pages/Settings/pages/ApplicationInfo/components/DiagnosticSnapshotModal.d.ts +12 -0
  111. package/dist/admin/src/pages/Settings/pages/ApplicationInfo/components/PlanCard.d.ts +14 -0
  112. package/dist/admin/src/pages/Settings/pages/ApplicationInfo/components/SupportCard.d.ts +2 -0
  113. package/dist/admin/src/services/admin.d.ts +2 -2
  114. package/dist/admin/src/types/permissions.d.ts +1 -0
  115. package/dist/admin/src/utils/getFetchClient.d.ts +25 -0
  116. package/dist/ee/admin/src/hooks/useLicenseLimits.d.ts +29 -0
  117. package/dist/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.d.ts +6 -1
  118. package/dist/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/LicenseInfo.d.ts +2 -0
  119. package/dist/ee/admin/src/pages/SettingsPage/pages/AuditLogs/utils/getActionTypesDefaultMessages.d.ts +7 -0
  120. package/dist/ee/server/src/audit-logs/entitlements.d.ts +8 -0
  121. package/dist/ee/server/src/audit-logs/entitlements.d.ts.map +1 -0
  122. package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts +16 -0
  123. package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts.map +1 -1
  124. package/dist/ee/server/src/controllers/admin.d.ts +36 -10
  125. package/dist/ee/server/src/controllers/admin.d.ts.map +1 -1
  126. package/dist/ee/server/src/controllers/authentication-utils/middlewares.d.ts.map +1 -1
  127. package/dist/ee/server/src/controllers/authentication-utils/utils.d.ts +8 -2
  128. package/dist/ee/server/src/controllers/authentication-utils/utils.d.ts.map +1 -1
  129. package/dist/ee/server/src/controllers/authentication.d.ts.map +1 -1
  130. package/dist/ee/server/src/controllers/index.d.ts +36 -10
  131. package/dist/ee/server/src/controllers/index.d.ts.map +1 -1
  132. package/dist/ee/server/src/controllers/user.d.ts.map +1 -1
  133. package/dist/ee/server/src/index.d.ts +40 -11
  134. package/dist/ee/server/src/index.d.ts.map +1 -1
  135. package/dist/ee/server/src/services/index.d.ts +4 -1
  136. package/dist/ee/server/src/services/index.d.ts.map +1 -1
  137. package/dist/ee/server/src/services/metrics.d.ts.map +1 -1
  138. package/dist/ee/server/src/services/persist-tables.d.ts.map +1 -1
  139. package/dist/ee/server/src/services/seat-enforcement.d.ts +3 -1
  140. package/dist/ee/server/src/services/seat-enforcement.d.ts.map +1 -1
  141. package/dist/server/ee/server/src/audit-logs/entitlements.js +25 -0
  142. package/dist/server/ee/server/src/audit-logs/entitlements.js.map +1 -0
  143. package/dist/server/ee/server/src/audit-logs/entitlements.mjs +23 -0
  144. package/dist/server/ee/server/src/audit-logs/entitlements.mjs.map +1 -0
  145. package/dist/server/ee/server/src/audit-logs/services/lifecycles.js +20 -8
  146. package/dist/server/ee/server/src/audit-logs/services/lifecycles.js.map +1 -1
  147. package/dist/server/ee/server/src/audit-logs/services/lifecycles.mjs +19 -9
  148. package/dist/server/ee/server/src/audit-logs/services/lifecycles.mjs.map +1 -1
  149. package/dist/server/ee/server/src/controllers/admin.js +79 -7
  150. package/dist/server/ee/server/src/controllers/admin.js.map +1 -1
  151. package/dist/server/ee/server/src/controllers/admin.mjs +79 -7
  152. package/dist/server/ee/server/src/controllers/admin.mjs.map +1 -1
  153. package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.js +28 -10
  154. package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.js.map +1 -1
  155. package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.mjs +28 -10
  156. package/dist/server/ee/server/src/controllers/authentication-utils/middlewares.mjs.map +1 -1
  157. package/dist/server/ee/server/src/controllers/authentication-utils/utils.js +2 -2
  158. package/dist/server/ee/server/src/controllers/authentication-utils/utils.js.map +1 -1
  159. package/dist/server/ee/server/src/controllers/authentication-utils/utils.mjs +2 -2
  160. package/dist/server/ee/server/src/controllers/authentication-utils/utils.mjs.map +1 -1
  161. package/dist/server/ee/server/src/controllers/authentication.js +11 -11
  162. package/dist/server/ee/server/src/controllers/authentication.js.map +1 -1
  163. package/dist/server/ee/server/src/controllers/authentication.mjs +11 -11
  164. package/dist/server/ee/server/src/controllers/authentication.mjs.map +1 -1
  165. package/dist/server/ee/server/src/controllers/user.js +7 -8
  166. package/dist/server/ee/server/src/controllers/user.js.map +1 -1
  167. package/dist/server/ee/server/src/controllers/user.mjs +8 -9
  168. package/dist/server/ee/server/src/controllers/user.mjs.map +1 -1
  169. package/dist/server/ee/server/src/index.js +2 -0
  170. package/dist/server/ee/server/src/index.js.map +1 -1
  171. package/dist/server/ee/server/src/index.mjs +2 -0
  172. package/dist/server/ee/server/src/index.mjs.map +1 -1
  173. package/dist/server/ee/server/src/services/metrics.js +9 -7
  174. package/dist/server/ee/server/src/services/metrics.js.map +1 -1
  175. package/dist/server/ee/server/src/services/metrics.mjs +9 -7
  176. package/dist/server/ee/server/src/services/metrics.mjs.map +1 -1
  177. package/dist/server/ee/server/src/services/persist-tables.js +3 -4
  178. package/dist/server/ee/server/src/services/persist-tables.js.map +1 -1
  179. package/dist/server/ee/server/src/services/persist-tables.mjs +3 -4
  180. package/dist/server/ee/server/src/services/persist-tables.mjs.map +1 -1
  181. package/dist/server/ee/server/src/services/role.js +2 -2
  182. package/dist/server/ee/server/src/services/role.js.map +1 -1
  183. package/dist/server/ee/server/src/services/role.mjs +1 -1
  184. package/dist/server/ee/server/src/services/role.mjs.map +1 -1
  185. package/dist/server/ee/server/src/services/seat-enforcement.js +20 -20
  186. package/dist/server/ee/server/src/services/seat-enforcement.js.map +1 -1
  187. package/dist/server/ee/server/src/services/seat-enforcement.mjs +20 -20
  188. package/dist/server/ee/server/src/services/seat-enforcement.mjs.map +1 -1
  189. package/dist/server/ee/server/src/services/user.js +1 -2
  190. package/dist/server/ee/server/src/services/user.js.map +1 -1
  191. package/dist/server/ee/server/src/services/user.mjs +2 -3
  192. package/dist/server/ee/server/src/services/user.mjs.map +1 -1
  193. package/dist/server/ee/server/src/utils/sso-lock.js +2 -2
  194. package/dist/server/ee/server/src/utils/sso-lock.js.map +1 -1
  195. package/dist/server/ee/server/src/utils/sso-lock.mjs +1 -1
  196. package/dist/server/ee/server/src/utils/sso-lock.mjs.map +1 -1
  197. package/dist/server/server/src/audit-logs/admin-users.js +3 -3
  198. package/dist/server/server/src/audit-logs/admin-users.js.map +1 -1
  199. package/dist/server/server/src/audit-logs/admin-users.mjs +2 -2
  200. package/dist/server/server/src/audit-logs/admin-users.mjs.map +1 -1
  201. package/dist/server/server/src/audit-logs/auth.js +72 -0
  202. package/dist/server/server/src/audit-logs/auth.js.map +1 -0
  203. package/dist/server/server/src/audit-logs/auth.mjs +67 -0
  204. package/dist/server/server/src/audit-logs/auth.mjs.map +1 -0
  205. package/dist/server/server/src/audit-logs/tokens.js +3 -3
  206. package/dist/server/server/src/audit-logs/tokens.js.map +1 -1
  207. package/dist/server/server/src/audit-logs/tokens.mjs +2 -2
  208. package/dist/server/server/src/audit-logs/tokens.mjs.map +1 -1
  209. package/dist/server/server/src/audit-logs/webhooks.js +2 -2
  210. package/dist/server/server/src/audit-logs/webhooks.js.map +1 -1
  211. package/dist/server/server/src/audit-logs/webhooks.mjs +1 -1
  212. package/dist/server/server/src/audit-logs/webhooks.mjs.map +1 -1
  213. package/dist/server/server/src/bootstrap.js +6 -4
  214. package/dist/server/server/src/bootstrap.js.map +1 -1
  215. package/dist/server/server/src/bootstrap.mjs +6 -4
  216. package/dist/server/server/src/bootstrap.mjs.map +1 -1
  217. package/dist/server/server/src/config/admin-actions.js +7 -0
  218. package/dist/server/server/src/config/admin-actions.js.map +1 -1
  219. package/dist/server/server/src/config/admin-actions.mjs +7 -0
  220. package/dist/server/server/src/config/admin-actions.mjs.map +1 -1
  221. package/dist/server/server/src/controllers/admin-token.js +8 -8
  222. package/dist/server/server/src/controllers/admin-token.js.map +1 -1
  223. package/dist/server/server/src/controllers/admin-token.mjs +4 -4
  224. package/dist/server/server/src/controllers/admin-token.mjs.map +1 -1
  225. package/dist/server/server/src/controllers/admin.js +9 -5
  226. package/dist/server/server/src/controllers/admin.js.map +1 -1
  227. package/dist/server/server/src/controllers/admin.mjs +8 -4
  228. package/dist/server/server/src/controllers/admin.mjs.map +1 -1
  229. package/dist/server/server/src/controllers/api-token.js +8 -8
  230. package/dist/server/server/src/controllers/api-token.js.map +1 -1
  231. package/dist/server/server/src/controllers/api-token.mjs +4 -4
  232. package/dist/server/server/src/controllers/api-token.mjs.map +1 -1
  233. package/dist/server/server/src/controllers/authentication.js +34 -8
  234. package/dist/server/server/src/controllers/authentication.js.map +1 -1
  235. package/dist/server/server/src/controllers/authentication.mjs +34 -8
  236. package/dist/server/server/src/controllers/authentication.mjs.map +1 -1
  237. package/dist/server/server/src/controllers/formatters/conditions.js +2 -2
  238. package/dist/server/server/src/controllers/formatters/conditions.js.map +1 -1
  239. package/dist/server/server/src/controllers/formatters/conditions.mjs +2 -2
  240. package/dist/server/server/src/controllers/formatters/conditions.mjs.map +1 -1
  241. package/dist/server/server/src/controllers/transfer/index.js +2 -2
  242. package/dist/server/server/src/controllers/transfer/index.js.map +1 -1
  243. package/dist/server/server/src/controllers/transfer/index.mjs +2 -2
  244. package/dist/server/server/src/controllers/transfer/index.mjs.map +1 -1
  245. package/dist/server/server/src/controllers/transfer/token.js +8 -8
  246. package/dist/server/server/src/controllers/transfer/token.js.map +1 -1
  247. package/dist/server/server/src/controllers/transfer/token.mjs +4 -4
  248. package/dist/server/server/src/controllers/transfer/token.mjs.map +1 -1
  249. package/dist/server/server/src/domain/action/index.js +18 -16
  250. package/dist/server/server/src/domain/action/index.js.map +1 -1
  251. package/dist/server/server/src/domain/action/index.mjs +16 -14
  252. package/dist/server/server/src/domain/action/index.mjs.map +1 -1
  253. package/dist/server/server/src/domain/action/provider.mjs +4 -4
  254. package/dist/server/server/src/domain/action/provider.mjs.map +1 -1
  255. package/dist/server/server/src/domain/condition/index.js +7 -4
  256. package/dist/server/server/src/domain/condition/index.js.map +1 -1
  257. package/dist/server/server/src/domain/condition/index.mjs +7 -4
  258. package/dist/server/server/src/domain/condition/index.mjs.map +1 -1
  259. package/dist/server/server/src/domain/permission/index.js +24 -15
  260. package/dist/server/server/src/domain/permission/index.js.map +1 -1
  261. package/dist/server/server/src/domain/permission/index.mjs +21 -12
  262. package/dist/server/server/src/domain/permission/index.mjs.map +1 -1
  263. package/dist/server/server/src/middlewares/rateLimit.js +5 -5
  264. package/dist/server/server/src/middlewares/rateLimit.js.map +1 -1
  265. package/dist/server/server/src/middlewares/rateLimit.mjs +4 -4
  266. package/dist/server/server/src/middlewares/rateLimit.mjs.map +1 -1
  267. package/dist/server/server/src/register.js +10 -0
  268. package/dist/server/server/src/register.js.map +1 -1
  269. package/dist/server/server/src/register.mjs +10 -0
  270. package/dist/server/server/src/register.mjs.map +1 -1
  271. package/dist/server/server/src/routes/admin.js +18 -0
  272. package/dist/server/server/src/routes/admin.js.map +1 -1
  273. package/dist/server/server/src/routes/admin.mjs +18 -0
  274. package/dist/server/server/src/routes/admin.mjs.map +1 -1
  275. package/dist/server/server/src/services/action.js +1 -2
  276. package/dist/server/server/src/services/action.js.map +1 -1
  277. package/dist/server/server/src/services/action.mjs +1 -2
  278. package/dist/server/server/src/services/action.mjs.map +1 -1
  279. package/dist/server/server/src/services/api-token.js +61 -49
  280. package/dist/server/server/src/services/api-token.js.map +1 -1
  281. package/dist/server/server/src/services/api-token.mjs +53 -41
  282. package/dist/server/server/src/services/api-token.mjs.map +1 -1
  283. package/dist/server/server/src/services/auth.js +4 -2
  284. package/dist/server/server/src/services/auth.js.map +1 -1
  285. package/dist/server/server/src/services/auth.mjs +4 -3
  286. package/dist/server/server/src/services/auth.mjs.map +1 -1
  287. package/dist/server/server/src/services/condition.js +2 -2
  288. package/dist/server/server/src/services/condition.js.map +1 -1
  289. package/dist/server/server/src/services/condition.mjs +1 -1
  290. package/dist/server/server/src/services/condition.mjs.map +1 -1
  291. package/dist/server/server/src/services/content-type.js +5 -4
  292. package/dist/server/server/src/services/content-type.js.map +1 -1
  293. package/dist/server/server/src/services/content-type.mjs +8 -7
  294. package/dist/server/server/src/services/content-type.mjs.map +1 -1
  295. package/dist/server/server/src/services/debug-dump.js +173 -0
  296. package/dist/server/server/src/services/debug-dump.js.map +1 -0
  297. package/dist/server/server/src/services/debug-dump.mjs +166 -0
  298. package/dist/server/server/src/services/debug-dump.mjs.map +1 -0
  299. package/dist/server/server/src/services/homepage.js +2 -1
  300. package/dist/server/server/src/services/homepage.js.map +1 -1
  301. package/dist/server/server/src/services/homepage.mjs +2 -1
  302. package/dist/server/server/src/services/homepage.mjs.map +1 -1
  303. package/dist/server/server/src/services/index.js +3 -1
  304. package/dist/server/server/src/services/index.js.map +1 -1
  305. package/dist/server/server/src/services/index.mjs +3 -1
  306. package/dist/server/server/src/services/index.mjs.map +1 -1
  307. package/dist/server/server/src/services/passport/local-strategy.js +2 -2
  308. package/dist/server/server/src/services/passport/local-strategy.js.map +1 -1
  309. package/dist/server/server/src/services/passport/local-strategy.mjs +1 -1
  310. package/dist/server/server/src/services/passport/local-strategy.mjs.map +1 -1
  311. package/dist/server/server/src/services/passport.js +1 -2
  312. package/dist/server/server/src/services/passport.js.map +1 -1
  313. package/dist/server/server/src/services/passport.mjs +1 -2
  314. package/dist/server/server/src/services/passport.mjs.map +1 -1
  315. package/dist/server/server/src/services/permission/engine.js +4 -4
  316. package/dist/server/server/src/services/permission/engine.js.map +1 -1
  317. package/dist/server/server/src/services/permission/engine.mjs +2 -2
  318. package/dist/server/server/src/services/permission/engine.mjs.map +1 -1
  319. package/dist/server/server/src/services/permission/permissions-manager/index.js +2 -3
  320. package/dist/server/server/src/services/permission/permissions-manager/index.js.map +1 -1
  321. package/dist/server/server/src/services/permission/permissions-manager/index.mjs +1 -2
  322. package/dist/server/server/src/services/permission/permissions-manager/index.mjs.map +1 -1
  323. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.js +6 -6
  324. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.js.map +1 -1
  325. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.mjs +4 -4
  326. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.mjs.map +1 -1
  327. package/dist/server/server/src/services/permission/permissions-manager/sanitize.js +47 -41
  328. package/dist/server/server/src/services/permission/permissions-manager/sanitize.js.map +1 -1
  329. package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs +44 -38
  330. package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs.map +1 -1
  331. package/dist/server/server/src/services/permission/permissions-manager/validate.js +30 -26
  332. package/dist/server/server/src/services/permission/permissions-manager/validate.js.map +1 -1
  333. package/dist/server/server/src/services/permission/permissions-manager/validate.mjs +28 -24
  334. package/dist/server/server/src/services/permission/permissions-manager/validate.mjs.map +1 -1
  335. package/dist/server/server/src/services/permission/queries.js +9 -9
  336. package/dist/server/server/src/services/permission/queries.js.map +1 -1
  337. package/dist/server/server/src/services/permission/queries.mjs +9 -9
  338. package/dist/server/server/src/services/permission/queries.mjs.map +1 -1
  339. package/dist/server/server/src/services/permission/rename-fields.js +118 -0
  340. package/dist/server/server/src/services/permission/rename-fields.js.map +1 -0
  341. package/dist/server/server/src/services/permission/rename-fields.mjs +116 -0
  342. package/dist/server/server/src/services/permission/rename-fields.mjs.map +1 -0
  343. package/dist/server/server/src/services/permission/sections-builder/index.js +2 -2
  344. package/dist/server/server/src/services/permission/sections-builder/index.js.map +1 -1
  345. package/dist/server/server/src/services/permission/sections-builder/index.mjs +2 -2
  346. package/dist/server/server/src/services/permission/sections-builder/index.mjs.map +1 -1
  347. package/dist/server/server/src/services/permission/sections-builder/section.js +1 -2
  348. package/dist/server/server/src/services/permission/sections-builder/section.js.map +1 -1
  349. package/dist/server/server/src/services/permission/sections-builder/section.mjs +1 -2
  350. package/dist/server/server/src/services/permission/sections-builder/section.mjs.map +1 -1
  351. package/dist/server/server/src/services/permission/sections-builder/utils.js +6 -6
  352. package/dist/server/server/src/services/permission/sections-builder/utils.js.map +1 -1
  353. package/dist/server/server/src/services/permission/sections-builder/utils.mjs +4 -4
  354. package/dist/server/server/src/services/permission/sections-builder/utils.mjs.map +1 -1
  355. package/dist/server/server/src/services/role.js +20 -19
  356. package/dist/server/server/src/services/role.js.map +1 -1
  357. package/dist/server/server/src/services/role.mjs +20 -19
  358. package/dist/server/server/src/services/role.mjs.map +1 -1
  359. package/dist/server/server/src/services/transfer/token.js +20 -16
  360. package/dist/server/server/src/services/transfer/token.js.map +1 -1
  361. package/dist/server/server/src/services/transfer/token.mjs +14 -10
  362. package/dist/server/server/src/services/transfer/token.mjs.map +1 -1
  363. package/dist/server/server/src/services/user.js +2 -3
  364. package/dist/server/server/src/services/user.js.map +1 -1
  365. package/dist/server/server/src/services/user.mjs +3 -4
  366. package/dist/server/server/src/services/user.mjs.map +1 -1
  367. package/dist/server/server/src/strategies/api-token-utils.js +2 -3
  368. package/dist/server/server/src/strategies/api-token-utils.js.map +1 -1
  369. package/dist/server/server/src/strategies/api-token-utils.mjs +2 -3
  370. package/dist/server/server/src/strategies/api-token-utils.mjs.map +1 -1
  371. package/dist/server/server/src/strategies/content-api-token.js +3 -3
  372. package/dist/server/server/src/strategies/content-api-token.js.map +1 -1
  373. package/dist/server/server/src/strategies/content-api-token.mjs +1 -1
  374. package/dist/server/server/src/strategies/content-api-token.mjs.map +1 -1
  375. package/dist/server/server/src/strategies/data-transfer.js +4 -4
  376. package/dist/server/server/src/strategies/data-transfer.js.map +1 -1
  377. package/dist/server/server/src/strategies/data-transfer.mjs +3 -3
  378. package/dist/server/server/src/strategies/data-transfer.mjs.map +1 -1
  379. package/dist/server/server/src/utils/debug-dump/redact.js +197 -0
  380. package/dist/server/server/src/utils/debug-dump/redact.js.map +1 -0
  381. package/dist/server/server/src/utils/debug-dump/redact.mjs +194 -0
  382. package/dist/server/server/src/utils/debug-dump/redact.mjs.map +1 -0
  383. package/dist/server/server/src/validation/common-validators.js +9 -10
  384. package/dist/server/server/src/validation/common-validators.js.map +1 -1
  385. package/dist/server/server/src/validation/common-validators.mjs +13 -14
  386. package/dist/server/server/src/validation/common-validators.mjs.map +1 -1
  387. package/dist/server/server/src/validation/user.js +1 -2
  388. package/dist/server/server/src/validation/user.js.map +1 -1
  389. package/dist/server/server/src/validation/user.mjs +1 -2
  390. package/dist/server/server/src/validation/user.mjs.map +1 -1
  391. package/dist/server/shared/utils/get-project-type.js +49 -0
  392. package/dist/server/shared/utils/get-project-type.js.map +1 -0
  393. package/dist/server/shared/utils/get-project-type.mjs +46 -0
  394. package/dist/server/shared/utils/get-project-type.mjs.map +1 -0
  395. package/dist/server/src/audit-logs/auth.d.ts +72 -0
  396. package/dist/server/src/audit-logs/auth.d.ts.map +1 -0
  397. package/dist/server/src/audit-logs/tokens.d.ts.map +1 -1
  398. package/dist/server/src/bootstrap.d.ts.map +1 -1
  399. package/dist/server/src/config/admin-actions.d.ts.map +1 -1
  400. package/dist/server/src/controllers/admin-token.d.ts.map +1 -1
  401. package/dist/server/src/controllers/admin.d.ts +3 -0
  402. package/dist/server/src/controllers/admin.d.ts.map +1 -1
  403. package/dist/server/src/controllers/api-token.d.ts.map +1 -1
  404. package/dist/server/src/controllers/authentication.d.ts.map +1 -1
  405. package/dist/server/src/controllers/formatters/conditions.d.ts +1 -1
  406. package/dist/server/src/controllers/formatters/conditions.d.ts.map +1 -1
  407. package/dist/server/src/controllers/homepage.d.ts +1 -1
  408. package/dist/server/src/controllers/index.d.ts +4 -1
  409. package/dist/server/src/controllers/index.d.ts.map +1 -1
  410. package/dist/server/src/controllers/transfer/index.d.ts.map +1 -1
  411. package/dist/server/src/controllers/transfer/token.d.ts.map +1 -1
  412. package/dist/server/src/domain/action/index.d.ts +1 -0
  413. package/dist/server/src/domain/action/index.d.ts.map +1 -1
  414. package/dist/server/src/domain/condition/index.d.ts +2 -2
  415. package/dist/server/src/domain/condition/index.d.ts.map +1 -1
  416. package/dist/server/src/domain/permission/index.d.ts.map +1 -1
  417. package/dist/server/src/index.d.ts +11 -3
  418. package/dist/server/src/index.d.ts.map +1 -1
  419. package/dist/server/src/middlewares/index.d.ts.map +1 -1
  420. package/dist/server/src/middlewares/rateLimit.d.ts.map +1 -1
  421. package/dist/server/src/register.d.ts.map +1 -1
  422. package/dist/server/src/routes/admin.d.ts.map +1 -1
  423. package/dist/server/src/services/action.d.ts.map +1 -1
  424. package/dist/server/src/services/api-token.d.ts.map +1 -1
  425. package/dist/server/src/services/auth.d.ts +6 -0
  426. package/dist/server/src/services/auth.d.ts.map +1 -1
  427. package/dist/server/src/services/condition.d.ts.map +1 -1
  428. package/dist/server/src/services/content-type.d.ts.map +1 -1
  429. package/dist/server/src/services/debug-dump.d.ts +9 -0
  430. package/dist/server/src/services/debug-dump.d.ts.map +1 -0
  431. package/dist/server/src/services/homepage.d.ts +1 -1
  432. package/dist/server/src/services/homepage.d.ts.map +1 -1
  433. package/dist/server/src/services/index.d.ts +7 -2
  434. package/dist/server/src/services/index.d.ts.map +1 -1
  435. package/dist/server/src/services/passport/local-strategy.d.ts.map +1 -1
  436. package/dist/server/src/services/passport.d.ts.map +1 -1
  437. package/dist/server/src/services/permission/engine.d.ts.map +1 -1
  438. package/dist/server/src/services/permission/permissions-manager/permission-fields.d.ts.map +1 -1
  439. package/dist/server/src/services/permission/permissions-manager/sanitize.d.ts.map +1 -1
  440. package/dist/server/src/services/permission/permissions-manager/validate.d.ts.map +1 -1
  441. package/dist/server/src/services/permission/queries.d.ts.map +1 -1
  442. package/dist/server/src/services/permission/rename-fields.d.ts +21 -0
  443. package/dist/server/src/services/permission/rename-fields.d.ts.map +1 -0
  444. package/dist/server/src/services/permission/sections-builder/section.d.ts.map +1 -1
  445. package/dist/server/src/services/permission/sections-builder/utils.d.ts +1 -1
  446. package/dist/server/src/services/permission/sections-builder/utils.d.ts.map +1 -1
  447. package/dist/server/src/services/role.d.ts +1 -1
  448. package/dist/server/src/services/role.d.ts.map +1 -1
  449. package/dist/server/src/services/transfer/token.d.ts.map +1 -1
  450. package/dist/server/src/strategies/content-api-token.d.ts.map +1 -1
  451. package/dist/server/src/utils/debug-dump/redact.d.ts +8 -0
  452. package/dist/server/src/utils/debug-dump/redact.d.ts.map +1 -0
  453. package/dist/server/src/validation/user.d.ts.map +1 -1
  454. package/dist/shared/contracts/admin.d.ts +106 -0
  455. package/dist/shared/contracts/admin.d.ts.map +1 -1
  456. package/dist/shared/utils/__tests__/get-project-type.test.d.ts +1 -0
  457. package/dist/shared/utils/__tests__/get-project-type.test.d.ts.map +1 -0
  458. package/dist/shared/utils/get-project-type.d.ts +37 -0
  459. package/dist/shared/utils/get-project-type.d.ts.map +1 -0
  460. package/package.json +10 -10
  461. package/dist/admin/admin/src/utils/getProjectType.js +0 -22
  462. package/dist/admin/admin/src/utils/getProjectType.js.map +0 -1
  463. package/dist/admin/admin/src/utils/getProjectType.mjs +0 -20
  464. package/dist/admin/admin/src/utils/getProjectType.mjs.map +0 -1
  465. package/dist/admin/src/utils/getProjectType.d.ts +0 -16
@@ -112,6 +112,7 @@ exports.ADMIN_REFRESH_LOCK = getFetchClient.ADMIN_REFRESH_LOCK;
112
112
  exports.FetchError = getFetchClient.FetchError;
113
113
  exports.attemptTokenRefresh = getFetchClient.attemptTokenRefresh;
114
114
  exports.getFetchClient = getFetchClient.getFetchClient;
115
+ exports.isAbortError = getFetchClient.isAbortError;
115
116
  exports.isFetchError = getFetchClient.isFetchError;
116
117
  exports.refreshAccessToken = getFetchClient.refreshAccessToken;
117
118
  exports.resetSessionExpiredNotification = getFetchClient.resetSessionExpiredNotification;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -39,7 +39,7 @@ export { usePersistentState, usePersistentStateScope, useScopedPersistentState }
39
39
  export { useAdminUsers } from './admin/src/services/users.mjs';
40
40
  export { useGetCountDocumentsQuery } from './admin/src/services/homepage.mjs';
41
41
  export { translatedErrors } from './admin/src/utils/translatedErrors.mjs';
42
- export { ADMIN_REFRESH_LOCK, FetchError, attemptTokenRefresh, getFetchClient, isFetchError, refreshAccessToken, resetSessionExpiredNotification, setOnSessionExpired, setOnTokenUpdate, storeToken, triggerSessionExpired } from './admin/src/utils/getFetchClient.mjs';
42
+ export { ADMIN_REFRESH_LOCK, FetchError, attemptTokenRefresh, getFetchClient, isAbortError, isFetchError, refreshAccessToken, resetSessionExpiredNotification, setOnSessionExpired, setOnTokenUpdate, storeToken, triggerSessionExpired } from './admin/src/utils/getFetchClient.mjs';
43
43
  export { fetchBaseQuery, isBaseQueryError } from './admin/src/utils/baseQuery.mjs';
44
44
  export { createRulesEngine } from './admin/src/utils/rulesEngine.mjs';
45
45
  export { getDisplayName, getInitials, hashAdminUserEmail } from './admin/src/utils/users.mjs';
@@ -0,0 +1,49 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Resolves the plan label from the license information returned by the
5
+ * `/admin/project-type` endpoint (browser) or `strapi.ee` (server).
6
+ *
7
+ * This labels the edition that is running: it follows `isEE`, so a lapsed license reads
8
+ * Community. Browser tracking and NPS report this label and the startup table applies the same
9
+ * rule; server metrics also label the running edition, but never say Growth. For the plan a
10
+ * license was issued for, lapsed or not (the Plan card, the Support card and the debug dump),
11
+ * use `getLicensedPlan` below.
12
+ *
13
+ * The label is intentionally limited to three values:
14
+ * - `Community` when there is no license (Community Edition).
15
+ * - `Growth` when the licensed plan price id contains "growth".
16
+ * - `Enterprise` for any other licensed plan.
17
+ */ const getProjectType = ({ isEE, planPriceId })=>{
18
+ if (!isEE) {
19
+ return 'Community';
20
+ }
21
+ if (planPriceId?.toLowerCase().includes('growth')) {
22
+ return 'Growth';
23
+ }
24
+ return 'Enterprise';
25
+ };
26
+ // The statuses a license can be in once it has been read. `none` (never licensed) is left out
27
+ // on purpose, and so is a missing status, which a mixed-version install can produce.
28
+ const LICENSED_STATUSES = [
29
+ 'active',
30
+ 'expired',
31
+ 'unknown'
32
+ ];
33
+ /**
34
+ * Resolves the plan a license was issued for, including one that has lapsed or can no longer
35
+ * be read, so Support links, the Plan card and the debug dump can still name it. It unlocks
36
+ * nothing: feature gating stays on `isEE`.
37
+ *
38
+ * A plan is only reported when a type was verified at some point (live, or retained once the
39
+ * license lapsed) AND the status is licensed. A corrupt license file sets `unknown` before any
40
+ * type is stored, and with no price id `getProjectType` would fall through to Enterprise, so
41
+ * both conditions are required. Every caller that derives a plan should go through here.
42
+ */ const getLicensedPlan = ({ licenseStatus, type, planPriceId })=>getProjectType({
43
+ isEE: Boolean(type) && LICENSED_STATUSES.includes(licenseStatus ?? ''),
44
+ planPriceId: planPriceId ?? undefined
45
+ });
46
+
47
+ exports.getLicensedPlan = getLicensedPlan;
48
+ exports.getProjectType = getProjectType;
49
+ //# sourceMappingURL=get-project-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-project-type.js","sources":["../../../../shared/utils/get-project-type.ts"],"sourcesContent":["type ProjectType = 'Community' | 'Growth' | 'Enterprise';\n\n/**\n * Resolves the plan label from the license information returned by the\n * `/admin/project-type` endpoint (browser) or `strapi.ee` (server).\n *\n * This labels the edition that is running: it follows `isEE`, so a lapsed license reads\n * Community. Browser tracking and NPS report this label and the startup table applies the same\n * rule; server metrics also label the running edition, but never say Growth. For the plan a\n * license was issued for, lapsed or not (the Plan card, the Support card and the debug dump),\n * use `getLicensedPlan` below.\n *\n * The label is intentionally limited to three values:\n * - `Community` when there is no license (Community Edition).\n * - `Growth` when the licensed plan price id contains \"growth\".\n * - `Enterprise` for any other licensed plan.\n */\nconst getProjectType = ({\n isEE,\n planPriceId,\n}: {\n isEE: boolean;\n planPriceId?: string;\n}): ProjectType => {\n if (!isEE) {\n return 'Community';\n }\n\n if (planPriceId?.toLowerCase().includes('growth')) {\n return 'Growth';\n }\n\n return 'Enterprise';\n};\n\n// The statuses a license can be in once it has been read. `none` (never licensed) is left out\n// on purpose, and so is a missing status, which a mixed-version install can produce.\nconst LICENSED_STATUSES: readonly string[] = ['active', 'expired', 'unknown'];\n\n/**\n * Resolves the plan a license was issued for, including one that has lapsed or can no longer\n * be read, so Support links, the Plan card and the debug dump can still name it. It unlocks\n * nothing: feature gating stays on `isEE`.\n *\n * A plan is only reported when a type was verified at some point (live, or retained once the\n * license lapsed) AND the status is licensed. A corrupt license file sets `unknown` before any\n * type is stored, and with no price id `getProjectType` would fall through to Enterprise, so\n * both conditions are required. Every caller that derives a plan should go through here.\n */\nconst getLicensedPlan = ({\n licenseStatus,\n type,\n planPriceId,\n}: {\n licenseStatus: string | null | undefined;\n type: string | null | undefined;\n planPriceId?: string | null;\n}): ProjectType =>\n getProjectType({\n isEE: Boolean(type) && LICENSED_STATUSES.includes(licenseStatus ?? ''),\n planPriceId: planPriceId ?? undefined,\n });\n\nexport { getLicensedPlan, getProjectType };\nexport type { ProjectType };\n"],"names":["getProjectType","isEE","planPriceId","toLowerCase","includes","LICENSED_STATUSES","getLicensedPlan","licenseStatus","type","Boolean","undefined"],"mappings":";;AAEA;;;;;;;;;;;;;;AAcC,UACKA,cAAAA,GAAiB,CAAC,EACtBC,IAAI,EACJC,WAAW,EAIZ,GAAA;AACC,IAAA,IAAI,CAACD,IAAAA,EAAM;QACT,OAAO,WAAA;AACT,IAAA;IAEA,IAAIC,WAAAA,EAAaC,WAAAA,EAAAA,CAAcC,QAAAA,CAAS,QAAA,CAAA,EAAW;QACjD,OAAO,QAAA;AACT,IAAA;IAEA,OAAO,YAAA;AACT;AAEA;AACA;AACA,MAAMC,iBAAAA,GAAuC;AAAC,IAAA,QAAA;AAAU,IAAA,SAAA;AAAW,IAAA;AAAU,CAAA;AAE7E;;;;;;;;;IAUA,MAAMC,eAAAA,GAAkB,CAAC,EACvBC,aAAa,EACbC,IAAI,EACJN,WAAW,EAKZ,GACCF,cAAAA,CAAe;AACbC,QAAAA,IAAAA,EAAMQ,OAAAA,CAAQD,IAAAA,CAAAA,IAASH,iBAAAA,CAAkBD,QAAQ,CAACG,aAAAA,IAAiB,EAAA,CAAA;AACnEL,QAAAA,WAAAA,EAAaA,WAAAA,IAAeQ;AAC9B,KAAA;;;;;"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Resolves the plan label from the license information returned by the
3
+ * `/admin/project-type` endpoint (browser) or `strapi.ee` (server).
4
+ *
5
+ * This labels the edition that is running: it follows `isEE`, so a lapsed license reads
6
+ * Community. Browser tracking and NPS report this label and the startup table applies the same
7
+ * rule; server metrics also label the running edition, but never say Growth. For the plan a
8
+ * license was issued for, lapsed or not (the Plan card, the Support card and the debug dump),
9
+ * use `getLicensedPlan` below.
10
+ *
11
+ * The label is intentionally limited to three values:
12
+ * - `Community` when there is no license (Community Edition).
13
+ * - `Growth` when the licensed plan price id contains "growth".
14
+ * - `Enterprise` for any other licensed plan.
15
+ */ const getProjectType = ({ isEE, planPriceId })=>{
16
+ if (!isEE) {
17
+ return 'Community';
18
+ }
19
+ if (planPriceId?.toLowerCase().includes('growth')) {
20
+ return 'Growth';
21
+ }
22
+ return 'Enterprise';
23
+ };
24
+ // The statuses a license can be in once it has been read. `none` (never licensed) is left out
25
+ // on purpose, and so is a missing status, which a mixed-version install can produce.
26
+ const LICENSED_STATUSES = [
27
+ 'active',
28
+ 'expired',
29
+ 'unknown'
30
+ ];
31
+ /**
32
+ * Resolves the plan a license was issued for, including one that has lapsed or can no longer
33
+ * be read, so Support links, the Plan card and the debug dump can still name it. It unlocks
34
+ * nothing: feature gating stays on `isEE`.
35
+ *
36
+ * A plan is only reported when a type was verified at some point (live, or retained once the
37
+ * license lapsed) AND the status is licensed. A corrupt license file sets `unknown` before any
38
+ * type is stored, and with no price id `getProjectType` would fall through to Enterprise, so
39
+ * both conditions are required. Every caller that derives a plan should go through here.
40
+ */ const getLicensedPlan = ({ licenseStatus, type, planPriceId })=>getProjectType({
41
+ isEE: Boolean(type) && LICENSED_STATUSES.includes(licenseStatus ?? ''),
42
+ planPriceId: planPriceId ?? undefined
43
+ });
44
+
45
+ export { getLicensedPlan, getProjectType };
46
+ //# sourceMappingURL=get-project-type.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-project-type.mjs","sources":["../../../../shared/utils/get-project-type.ts"],"sourcesContent":["type ProjectType = 'Community' | 'Growth' | 'Enterprise';\n\n/**\n * Resolves the plan label from the license information returned by the\n * `/admin/project-type` endpoint (browser) or `strapi.ee` (server).\n *\n * This labels the edition that is running: it follows `isEE`, so a lapsed license reads\n * Community. Browser tracking and NPS report this label and the startup table applies the same\n * rule; server metrics also label the running edition, but never say Growth. For the plan a\n * license was issued for, lapsed or not (the Plan card, the Support card and the debug dump),\n * use `getLicensedPlan` below.\n *\n * The label is intentionally limited to three values:\n * - `Community` when there is no license (Community Edition).\n * - `Growth` when the licensed plan price id contains \"growth\".\n * - `Enterprise` for any other licensed plan.\n */\nconst getProjectType = ({\n isEE,\n planPriceId,\n}: {\n isEE: boolean;\n planPriceId?: string;\n}): ProjectType => {\n if (!isEE) {\n return 'Community';\n }\n\n if (planPriceId?.toLowerCase().includes('growth')) {\n return 'Growth';\n }\n\n return 'Enterprise';\n};\n\n// The statuses a license can be in once it has been read. `none` (never licensed) is left out\n// on purpose, and so is a missing status, which a mixed-version install can produce.\nconst LICENSED_STATUSES: readonly string[] = ['active', 'expired', 'unknown'];\n\n/**\n * Resolves the plan a license was issued for, including one that has lapsed or can no longer\n * be read, so Support links, the Plan card and the debug dump can still name it. It unlocks\n * nothing: feature gating stays on `isEE`.\n *\n * A plan is only reported when a type was verified at some point (live, or retained once the\n * license lapsed) AND the status is licensed. A corrupt license file sets `unknown` before any\n * type is stored, and with no price id `getProjectType` would fall through to Enterprise, so\n * both conditions are required. Every caller that derives a plan should go through here.\n */\nconst getLicensedPlan = ({\n licenseStatus,\n type,\n planPriceId,\n}: {\n licenseStatus: string | null | undefined;\n type: string | null | undefined;\n planPriceId?: string | null;\n}): ProjectType =>\n getProjectType({\n isEE: Boolean(type) && LICENSED_STATUSES.includes(licenseStatus ?? ''),\n planPriceId: planPriceId ?? undefined,\n });\n\nexport { getLicensedPlan, getProjectType };\nexport type { ProjectType };\n"],"names":["getProjectType","isEE","planPriceId","toLowerCase","includes","LICENSED_STATUSES","getLicensedPlan","licenseStatus","type","Boolean","undefined"],"mappings":"AAEA;;;;;;;;;;;;;;AAcC,UACKA,cAAAA,GAAiB,CAAC,EACtBC,IAAI,EACJC,WAAW,EAIZ,GAAA;AACC,IAAA,IAAI,CAACD,IAAAA,EAAM;QACT,OAAO,WAAA;AACT,IAAA;IAEA,IAAIC,WAAAA,EAAaC,WAAAA,EAAAA,CAAcC,QAAAA,CAAS,QAAA,CAAA,EAAW;QACjD,OAAO,QAAA;AACT,IAAA;IAEA,OAAO,YAAA;AACT;AAEA;AACA;AACA,MAAMC,iBAAAA,GAAuC;AAAC,IAAA,QAAA;AAAU,IAAA,SAAA;AAAW,IAAA;AAAU,CAAA;AAE7E;;;;;;;;;IAUA,MAAMC,eAAAA,GAAkB,CAAC,EACvBC,aAAa,EACbC,IAAI,EACJN,WAAW,EAKZ,GACCF,cAAAA,CAAe;AACbC,QAAAA,IAAAA,EAAMQ,OAAAA,CAAQD,IAAAA,CAAAA,IAASH,iBAAAA,CAAkBD,QAAQ,CAACG,aAAAA,IAAiB,EAAA,CAAA;AACnEL,QAAAA,WAAAA,EAAaA,WAAAA,IAAeQ;AAC9B,KAAA;;;;"}
@@ -1,2 +1,11 @@
1
- declare const MediaLibraryBanner: () => import("react/jsx-runtime").JSX.Element | null;
1
+ interface MediaLibraryBannerProps {
2
+ /**
3
+ * Called synchronously (before paint) whenever this banner's own visibility changes, so a
4
+ * parent rendering it alongside another banner (e.g. `UpsellBanner`) can hide that other one
5
+ * instead of stacking both. This banner owns its dismissal state, so it's the source of truth
6
+ * for whether it's showing — the parent shouldn't have to re-derive that itself.
7
+ */
8
+ onVisibilityChange?: (isVisible: boolean) => void;
9
+ }
10
+ declare const MediaLibraryBanner: ({ onVisibilityChange }?: MediaLibraryBannerProps) => import("react/jsx-runtime").JSX.Element | null;
2
11
  export { MediaLibraryBanner };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @description Renders the admin's top banners, ensuring only one shows at a time instead of
3
+ * stacking: the Media Library banner takes priority over the upsell one. Kept as its own
4
+ * component (rather than inline in `AuthenticatedLayout`) so this wiring can be unit tested
5
+ * without the rest of the layout's unrelated dependencies (menu, tracking, app info, etc.).
6
+ */
7
+ declare const TopBanners: () => import("react/jsx-runtime").JSX.Element;
8
+ export { TopBanners };
@@ -180,6 +180,16 @@ export declare const ADMIN_PERMISSIONS_CE: {
180
180
  subject: null;
181
181
  }[];
182
182
  };
183
+ 'debug-dump': {
184
+ main: {
185
+ action: string;
186
+ subject: null;
187
+ }[];
188
+ read: {
189
+ action: string;
190
+ subject: null;
191
+ }[];
192
+ };
183
193
  plugins: {
184
194
  main: {
185
195
  action: string;
@@ -13,6 +13,13 @@ export interface TelemetryProperties {
13
13
  export interface TrackingContextValue {
14
14
  uuid?: string | boolean;
15
15
  telemetryProperties?: TelemetryProperties;
16
+ strapiVersion?: string | null;
17
+ /**
18
+ * True once the version that `trackUsage` will attach is known, or the
19
+ * information request has failed. Callers that must send a single event
20
+ * wait for this so a later version update does not send the event again.
21
+ */
22
+ isStrapiVersionReady: boolean;
16
23
  }
17
24
  export interface TrackingProviderProps {
18
25
  children: React.ReactNode;
@@ -285,4 +292,8 @@ export interface UseTrackingReturn {
285
292
  * ```
286
293
  */
287
294
  declare const useTracking: () => UseTrackingReturn;
288
- export { TrackingProvider, useTracking };
295
+ /**
296
+ * Internal readiness signal for events that must wait for the provider's version.
297
+ */
298
+ declare const useStrapiVersionReady: () => boolean;
299
+ export { TrackingProvider, useTracking, useStrapiVersionReady };
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Sends `didAccessAuthenticatedAdministration` once per mount, after the Strapi
3
+ * version is ready and the telemetry-properties query has settled.
4
+ */
5
+ declare const useAuthenticatedAccessTracking: (projectId?: string | null) => void;
6
+ export { useAuthenticatedAccessTracking };
@@ -1,2 +1,2 @@
1
- declare const ApplicationInfoPage: () => import("react/jsx-runtime").JSX.Element | null;
1
+ declare const ApplicationInfoPage: () => import("react/jsx-runtime").JSX.Element;
2
2
  export { ApplicationInfoPage };
@@ -0,0 +1,12 @@
1
+ interface DiagnosticSnapshotModalProps {
2
+ isOpen: boolean;
3
+ onClose: () => void;
4
+ }
5
+ /**
6
+ * Generates the redacted diagnostic snapshot behind the Support card's "Generate snapshot" action.
7
+ * The fetch is triggered as soon as the modal opens, so the user only ever sees a spinner followed
8
+ * by the payload (or, on failure, a notification while the modal closes itself).
9
+ */
10
+ declare const DiagnosticSnapshotModal: ({ isOpen, onClose }: DiagnosticSnapshotModalProps) => import("react/jsx-runtime").JSX.Element;
11
+ export { DiagnosticSnapshotModal };
12
+ export type { DiagnosticSnapshotModalProps };
@@ -0,0 +1,14 @@
1
+ import * as React from 'react';
2
+ import { type MessageDescriptor } from 'react-intl';
3
+ interface PlanDetailProps {
4
+ label: MessageDescriptor;
5
+ value: React.ReactNode;
6
+ }
7
+ /**
8
+ * A single labelled value rendered inside the Plan card's `<dl>`. Shared between the CE fallback
9
+ * body (current plan only) and the EE body (license details), so both stay visually consistent.
10
+ */
11
+ declare const PlanDetail: ({ label, value }: PlanDetailProps) => import("react/jsx-runtime").JSX.Element;
12
+ declare const PlanCard: () => import("react/jsx-runtime").JSX.Element;
13
+ export { PlanCard, PlanDetail };
14
+ export type { PlanDetailProps };
@@ -0,0 +1,2 @@
1
+ declare const SupportCard: () => import("react/jsx-runtime").JSX.Element;
2
+ export { SupportCard };
@@ -33,6 +33,6 @@ declare const useInitQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks
33
33
  menuLogo?: ConfigurationLogo["custom"];
34
34
  }, "adminApi">>, useUpdateProjectSettingsMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<FormData, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", UpdateProjectSettings.Response, "adminApi">>, useGetPluginsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", Plugins.Response, "adminApi">>, useGetLicenseLimitsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", GetLicenseLimitInformation.Response, "adminApi">>, useGetLicenseTrialTimeLeftQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", {
35
35
  trialEndsAt: string;
36
- }, "adminApi">>, useGetGuidedTourMetaQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", GetGuidedTourMeta.Response, "adminApi">>;
37
- export { useInitQuery, useTelemetryPropertiesQuery, useInformationQuery, useProjectSettingsQuery, useUpdateProjectSettingsMutation, useGetPluginsQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetGuidedTourMetaQuery, };
36
+ }, "adminApi">>, useGetGuidedTourMetaQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", GetGuidedTourMeta.Response, "adminApi">>, useLazyGetDebugDumpQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseLazyQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("..").QueryArguments, unknown, import("..").BaseQueryError | import("@reduxjs/toolkit").SerializedError>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AiUsage" | "AiFeatureConfig" | "ProjectSettings" | "LicenseLimits" | "LicenseTrialTimeLeft", import("../../../shared/contracts/admin").DebugDumpPayload, "adminApi">>;
37
+ export { useInitQuery, useTelemetryPropertiesQuery, useInformationQuery, useProjectSettingsQuery, useUpdateProjectSettingsMutation, useGetPluginsQuery, useGetLicenseLimitsQuery, useGetLicenseTrialTimeLeftQuery, useGetGuidedTourMetaQuery, useLazyGetDebugDumpQuery, };
38
38
  export type { ConfigurationLogo };
@@ -20,6 +20,7 @@ interface PermissionMap {
20
20
  marketplace: Pick<CRUDPermissions, 'main' | 'read'>;
21
21
  settings: Record<SettingsPermissions, CRUDPermissions> & Partial<Record<EESettingsPermissions, CRUDPermissions>> & {
22
22
  plugins: Pick<CRUDPermissions, 'read' | 'main'>;
23
+ 'debug-dump': Pick<CRUDPermissions, 'read' | 'main'>;
23
24
  };
24
25
  }
25
26
  export { PermissionMap };
@@ -94,6 +94,31 @@ declare class FetchError extends Error {
94
94
  constructor(message: string, response?: ErrorResponse);
95
95
  }
96
96
  declare const isFetchError: (error: unknown) => error is FetchError;
97
+ export type AbortError = DOMException & {
98
+ name: 'AbortError' | 'TimeoutError';
99
+ };
100
+ /**
101
+ * Type guard that checks whether an error comes from an aborted operation,
102
+ * such as a `fetch` cancelled via `AbortController` or timed out via
103
+ * `AbortSignal.timeout()`.
104
+ *
105
+ * Note: if the controller was aborted with a custom reason
106
+ * (`controller.abort(reason)`), the operation rejects with that reason
107
+ * instead of an `AbortError`, and this guard returns `false`. In that case,
108
+ * also check the signal itself:
109
+ *
110
+ * @example
111
+ * try {
112
+ * await fetch(url, { signal: controller.signal });
113
+ * } catch (err) {
114
+ * if (isAbortError(err) || controller.signal.aborted) return;
115
+ * throw err;
116
+ * }
117
+ *
118
+ * @param error - The caught value to check.
119
+ * @returns `true` if `error` is a `DOMException` named `AbortError` or `TimeoutError`.
120
+ */
121
+ export declare function isAbortError(error: unknown): error is AbortError;
97
122
  type FetchClient = {
98
123
  get: {
99
124
  (url: string, config: FetchOptions & {
@@ -13,6 +13,35 @@ declare function useLicenseLimits({ enabled }?: UseLicenseLimitsArgs): {
13
13
  shouldStopCreate: boolean;
14
14
  type: string;
15
15
  isTrial: boolean;
16
+ seats: number | null;
17
+ subscriptionId: string | null;
18
+ expireAt: string | null;
19
+ licenseStatus: "none" | "active" | "expired" | "unknown";
20
+ planPriceId: string | null;
21
+ renewalDate: string | number | null;
22
+ planEntitlements: Array<{
23
+ feature: string;
24
+ available: boolean;
25
+ limits: Array<{
26
+ key: string;
27
+ unit?: "days" | "count";
28
+ value: number | null;
29
+ }>;
30
+ }>;
31
+ licenseMode: "online" | "offline";
32
+ lastRegistrySyncAt: number | null;
33
+ nextRegistrySyncAt: number | null;
34
+ usingCachedLicense: boolean;
35
+ registrySyncError: string | null;
36
+ registrySyncErrorKind: "unreachable" | "rejected" | null;
37
+ entitlements: Array<{
38
+ feature: string;
39
+ limits: Array<{
40
+ key: string;
41
+ unit?: "days" | "count";
42
+ value: number | null;
43
+ }>;
44
+ }>;
16
45
  } | undefined;
17
46
  getFeature: <T>(name: "review-workflows" | "sso" | "audit-logs" | "cms-content-releases" | "cms-content-history") => Record<string, T> | undefined;
18
47
  isError: boolean;
@@ -1 +1,6 @@
1
- export declare const AIUsage: () => import("react/jsx-runtime").JSX.Element | null;
1
+ interface AIUsageProps {
2
+ /** Trials are not billed for overages, so the rate line is meaningless to them. */
3
+ isTrial?: boolean;
4
+ }
5
+ export declare const AIUsage: ({ isTrial }: AIUsageProps) => import("react/jsx-runtime").JSX.Element | null;
6
+ export {};
@@ -0,0 +1,2 @@
1
+ declare const LicenseInfoEE: () => import("react/jsx-runtime").JSX.Element | null;
2
+ export { LicenseInfoEE };
@@ -14,6 +14,8 @@ export declare const actionTypes: {
14
14
  'user.update': string;
15
15
  'user.delete': string;
16
16
  'admin.auth.success': string;
17
+ 'admin.auth.error': string;
18
+ 'admin.auth.autoRegistration': string;
17
19
  'admin.logout': string;
18
20
  'content-type.create': string;
19
21
  'content-type.update': string;
@@ -54,5 +56,10 @@ export declare const actionTypes: {
54
56
  'webhook.create': string;
55
57
  'webhook.update': string;
56
58
  'webhook.delete': string;
59
+ 'workflow.create': string;
60
+ 'workflow.update': string;
61
+ 'workflow.delete': string;
62
+ 'review-workflows.updateEntryStage': string;
63
+ 'entry.assignee.update': string;
57
64
  };
58
65
  export declare const getDefaultMessage: (value: keyof typeof actionTypes) => string;
@@ -0,0 +1,8 @@
1
+ import type { Core } from '@strapi/types';
2
+ /**
3
+ * Reports the audit-log retention the daily delete job uses, admin override included, for the
4
+ * Plan card and the debug dump. Registered whatever the boot-time license says, so a license
5
+ * that lapsed before boot still resolves its retained limits, and a later renewal needs no restart.
6
+ */
7
+ export declare const registerAuditLogsEntitlements: (strapi: Core.Strapi) => void;
8
+ //# sourceMappingURL=entitlements.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entitlements.d.ts","sourceRoot":"","sources":["../../../../../ee/server/src/audit-logs/entitlements.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAI1C;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,GAAI,QAAQ,IAAI,CAAC,MAAM,SAgBhE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { Core, Modules } from '@strapi/types';
2
+ export declare const DEFAULT_RETENTION_DAYS = 90;
2
3
  export interface RegisterEventOptions {
3
4
  /**
4
5
  * Records the event when the request has no authenticated user, with an
@@ -7,7 +8,22 @@ export interface RegisterEventOptions {
7
8
  * is dropped.
8
9
  */
9
10
  allowUnknownActor?: boolean;
11
+ /**
12
+ * Records the event with an `unknown` actor and no user column even when the request
13
+ * has an authenticated user. For events about a login that did not complete.
14
+ */
15
+ alwaysUnknownActor?: boolean;
16
+ /**
17
+ * Receives the arguments passed to eventHub.emit(); returning false keeps the
18
+ * event out of the audit log. Listeners on the event hub still receive it.
19
+ */
20
+ shouldRecord?: (...args: any[]) => boolean;
10
21
  }
22
+ /**
23
+ * The retention the daily delete job applies, from the license's value and the admin override.
24
+ * Shared with the Plan card's resolver (../entitlements.ts) so the card shows this same figure.
25
+ */
26
+ export declare const computeRetentionDays: (licenseRetentionDays: unknown, userRetentionDays: number | null | undefined) => number;
11
27
  /**
12
28
  * @description
13
29
  * Manages the lifecycle of audit logs. Accessible via strapi.get('audit-logs-lifecycle')
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycles.d.ts","sourceRoot":"","sources":["../../../../../../ee/server/src/audit-logs/services/lifecycles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAqDnD,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAoDD;;;GAGG;AACH,QAAA,MAAM,+BAA+B,GAAI,QAAQ,IAAI,CAAC,MAAM;IAkHxD;;;;OAIG;kBACW,QAAQ,kBACd,MAAM,aACD,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,YAC9C,oBAAoB;;;;CA0FlC,CAAC;AAEF,OAAO,EAAE,+BAA+B,EAAE,CAAC"}
1
+ {"version":3,"file":"lifecycles.d.ts","sourceRoot":"","sources":["../../../../../../ee/server/src/audit-logs/services/lifecycles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAInD,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAiDzC,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC;CAC5C;AAgCD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAC/B,sBAAsB,OAAO,EAC7B,mBAAmB,MAAM,GAAG,IAAI,GAAG,SAAS,KAC3C,MAgBF,CAAC;AAWF;;;GAGG;AACH,QAAA,MAAM,+BAA+B,GAAI,QAAQ,IAAI,CAAC,MAAM;IAwHxD;;;;OAIG;kBACW,QAAQ,kBACd,MAAM,aACD,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,YAC9C,oBAAoB;;;;CA0FlC,CAAC;AAEF,OAAO,EAAE,+BAA+B,EAAE,CAAC"}
@@ -3,19 +3,45 @@ declare const _default: {
3
3
  getProjectType(): Promise<GetProjectType.Response>;
4
4
  licenseLimitInformation(): Promise<{
5
5
  data: {
6
- enforcementUserCount: any;
7
- currentActiveUserCount: any;
8
- permittedSeats: number | null | undefined;
6
+ currentActiveUserCount: number;
7
+ enforcementUserCount: number;
8
+ features: (import("../../../../shared/contracts/admin").SSOFeature | import("../../../../shared/contracts/admin").AuditLogsFeature | import("../../../../shared/contracts/admin").ReviewWorkflowsFeature | import("../../../../shared/contracts/admin").ContentReleasesFeature | import("../../../../shared/contracts/admin").ContentHistoryFeature)[];
9
+ isHostedOnStrapiCloud: boolean;
10
+ licenseLimitStatus: unknown;
11
+ permittedSeats: number;
9
12
  shouldNotify: boolean;
10
13
  shouldStopCreate: boolean;
11
- licenseLimitStatus: string | null;
12
- isHostedOnStrapiCloud: boolean;
13
- type: string | null | undefined;
14
+ type: string;
14
15
  isTrial: boolean;
15
- features: {
16
- [key: string]: any;
17
- name: string;
18
- }[];
16
+ seats: number | null;
17
+ subscriptionId: string | null;
18
+ expireAt: string | null;
19
+ licenseStatus: "none" | "active" | "expired" | "unknown";
20
+ planPriceId: string | null;
21
+ renewalDate: string | number | null;
22
+ planEntitlements: Array<{
23
+ feature: string;
24
+ available: boolean;
25
+ limits: Array<{
26
+ key: string;
27
+ unit?: "days" | "count";
28
+ value: number | null;
29
+ }>;
30
+ }>;
31
+ licenseMode: "online" | "offline";
32
+ lastRegistrySyncAt: number | null;
33
+ nextRegistrySyncAt: number | null;
34
+ usingCachedLicense: boolean;
35
+ registrySyncError: string | null;
36
+ registrySyncErrorKind: "unreachable" | "rejected" | null;
37
+ entitlements: Array<{
38
+ feature: string;
39
+ limits: Array<{
40
+ key: string;
41
+ unit?: "days" | "count";
42
+ value: number | null;
43
+ }>;
44
+ }>;
19
45
  };
20
46
  }>;
21
47
  };
@@ -1 +1 @@
1
- {"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../../../../ee/server/src/controllers/admin.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;;sBAI/C,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;AAF1D,wBAmEE"}
1
+ {"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../../../../ee/server/src/controllers/admin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,cAAc,EACf,MAAM,oCAAoC,CAAC;;sBAelB,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;wBAkIrB,CAAC;;;;;;;;;;;;;;wBAiBb,CAAC;;;;;;;AArJ1B,wBAgKE"}
@@ -1 +1 @@
1
- {"version":3,"file":"middlewares.d.ts","sourceRoot":"","sources":["../../../../../../ee/server/src/controllers/authentication-utils/middlewares.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAiB1C,eAAO,MAAM,YAAY,EAAE,IAAI,CAAC,iBA0B/B,CAAC;AA4DF,eAAO,MAAM,gBAAgB,EAAE,IAAI,CAAC,iBAiEnC,CAAC;;;;;AAEF,wBAGE"}
1
+ {"version":3,"file":"middlewares.d.ts","sourceRoot":"","sources":["../../../../../../ee/server/src/controllers/authentication-utils/middlewares.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAkB1C,eAAO,MAAM,YAAY,EAAE,IAAI,CAAC,iBA0B/B,CAAC;AAuEF,eAAO,MAAM,gBAAgB,EAAE,IAAI,CAAC,iBAsEnC,CAAC;;;;;AAEF,wBAGE"}
@@ -22,7 +22,10 @@ export declare const getAdminStore: () => Promise<{
22
22
  tag?: string;
23
23
  }>): Promise<void>;
24
24
  }>;
25
- export declare const getPrefixedRedirectUrls: () => import("lodash").Dictionary<string>;
25
+ export declare const getPrefixedRedirectUrls: () => {
26
+ success: string;
27
+ error: string;
28
+ };
26
29
  declare const _default: {
27
30
  getAdminStore: () => Promise<{
28
31
  get(params?: Partial<{
@@ -48,7 +51,10 @@ declare const _default: {
48
51
  tag?: string;
49
52
  }>): Promise<void>;
50
53
  }>;
51
- getPrefixedRedirectUrls: () => import("lodash").Dictionary<string>;
54
+ getPrefixedRedirectUrls: () => {
55
+ success: string;
56
+ error: string;
57
+ };
52
58
  };
53
59
  export default _default;
54
60
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../ee/server/src/controllers/authentication-utils/utils.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;EAA4D,CAAC;AAEvF,eAAO,MAAM,uBAAuB,2CAKnC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,wBAGE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../ee/server/src/controllers/authentication-utils/utils.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;EAA4D,CAAC;AAEvF,eAAO,MAAM,uBAAuB;;;CAKnC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,wBAGE"}
@@ -1 +1 @@
1
- {"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../../../../ee/server/src/controllers/authentication.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;;sBAmBf,OAAO;iCAMI,OAAO;oCASJ,OAAO;uBAmB1B,OAAO,QAAQ,IAAI;;AAnCxC,wBAgDE"}
1
+ {"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../../../../ee/server/src/controllers/authentication.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;;sBAmBf,OAAO;iCAMI,OAAO;oCASJ,OAAO;uBAmB1B,OAAO,QAAQ,IAAI;;AAnCxC,wBAgDE"}
@@ -19,19 +19,45 @@ declare const _default: {
19
19
  getProjectType(): Promise<import("../../../../shared/contracts/admin").GetProjectType.Response>;
20
20
  licenseLimitInformation(): Promise<{
21
21
  data: {
22
- enforcementUserCount: any;
23
- currentActiveUserCount: any;
24
- permittedSeats: number | null | undefined;
22
+ currentActiveUserCount: number;
23
+ enforcementUserCount: number;
24
+ features: (import("../../../../shared/contracts/admin").SSOFeature | import("../../../../shared/contracts/admin").AuditLogsFeature | import("../../../../shared/contracts/admin").ReviewWorkflowsFeature | import("../../../../shared/contracts/admin").ContentReleasesFeature | import("../../../../shared/contracts/admin").ContentHistoryFeature)[];
25
+ isHostedOnStrapiCloud: boolean;
26
+ licenseLimitStatus: unknown;
27
+ permittedSeats: number;
25
28
  shouldNotify: boolean;
26
29
  shouldStopCreate: boolean;
27
- licenseLimitStatus: string | null;
28
- isHostedOnStrapiCloud: boolean;
29
- type: string | null | undefined;
30
+ type: string;
30
31
  isTrial: boolean;
31
- features: {
32
- [key: string]: any;
33
- name: string;
34
- }[];
32
+ seats: number | null;
33
+ subscriptionId: string | null;
34
+ expireAt: string | null;
35
+ licenseStatus: "none" | "active" | "expired" | "unknown";
36
+ planPriceId: string | null;
37
+ renewalDate: string | number | null;
38
+ planEntitlements: Array<{
39
+ feature: string;
40
+ available: boolean;
41
+ limits: Array<{
42
+ key: string;
43
+ unit?: "days" | "count";
44
+ value: number | null;
45
+ }>;
46
+ }>;
47
+ licenseMode: "online" | "offline";
48
+ lastRegistrySyncAt: number | null;
49
+ nextRegistrySyncAt: number | null;
50
+ usingCachedLicense: boolean;
51
+ registrySyncError: string | null;
52
+ registrySyncErrorKind: "unreachable" | "rejected" | null;
53
+ entitlements: Array<{
54
+ feature: string;
55
+ limits: Array<{
56
+ key: string;
57
+ unit?: "days" | "count";
58
+ value: number | null;
59
+ }>;
60
+ }>;
35
61
  };
36
62
  }>;
37
63
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../ee/server/src/controllers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,wBAKE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../ee/server/src/controllers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAWozL,CAAC;;;;;;;;;;;;;;4BAA4wB,CAAC;;;;;;;;AANlkN,wBAKE"}
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../../ee/server/src/controllers/user.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;gBAiCf,OAAO;gBAiCP,OAAO;qBAkCF,OAAO;;AApEhC,wBA8EE"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../../ee/server/src/controllers/user.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;gBAgCf,OAAO;gBAiCP,OAAO;qBAkCF,OAAO;;AApEhC,wBA8EE"}