@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
@@ -135,6 +135,9 @@ var en = {
135
135
  "Settings.adminTokens.editPage.title": "Edit Admin Token",
136
136
  "Settings.adminTokens.emptyStateLayout": "You don't have any content yet...",
137
137
  "Settings.adminTokens.title": "Admin Tokens",
138
+ "Settings.application.admin-seats": "Admin seats",
139
+ "Settings.application.ai-usage": "AI Usage",
140
+ "Settings.application.ai-usage.overage-rate": "+$1.50 per 100 credits above plan limit",
138
141
  "Settings.application.customization": "Customization",
139
142
  "Settings.application.customization.auth-logo.carousel-hint": "Replace the logo in the authentication pages",
140
143
  "Settings.application.customization.carousel-hint": "Change the admin panel logo (Max dimension: {dimension}x{dimension}, Max file size: {size}KB)",
@@ -166,20 +169,82 @@ var en = {
166
169
  "Settings.application.customization.modal.upload.next": "Next",
167
170
  "Settings.application.customization.size-details": "Max dimension: {dimension}×{dimension}, Max file size: {size}KB",
168
171
  "Settings.application.description": "Administration panel’s global information",
169
- "Settings.application.ee.admin-seats.add-seats": "Manage subscription",
170
- "Settings.application.ee.admin-seats.support": "Contact sales",
171
172
  "Settings.application.ee.admin-seats.at-limit-tooltip": "At limit: add seats to invite more users",
172
173
  "Settings.application.ee.admin-seats.count": "<text>{enforcementUserCount}</text>/{permittedSeats}",
173
174
  "Settings.application.get-help": "Get help",
174
- "Settings.application.link-pricing": "See all pricing plans",
175
175
  "Settings.application.link-upgrade": "Upgrade your admin panel",
176
176
  "Settings.application.node-version": "node version",
177
- "Settings.application.plan-title": "current plan",
177
+ "Settings.application.plan.current": "current plan",
178
+ "Settings.application.plan.manage-subscription": "Manage subscription",
179
+ "Settings.application.plan.see-all-plans": "See all plans",
180
+ "Settings.application.plan.title": "Plan",
181
+ "Settings.application.plan.view-subscription": "View subscription",
178
182
  "Settings.application.strapi-version": "Strapi version",
179
183
  "Settings.application.strapiVersion": "Strapi version",
184
+ "Settings.application.support.diagnostic-snapshot.description.community": "Reporting a bug? Generate a snapshot of your app's structure so the issue can be reproduced.",
185
+ "Settings.application.support.diagnostic-snapshot.description.enterprise": "Reporting a bug? A diagnostic snapshot describes how this project is built so it can be reproduced.",
186
+ "Settings.application.support.diagnostic-snapshot.generate": "Generate snapshot",
187
+ "Settings.application.support.diagnostic-snapshot.label": "diagnostic snapshot",
188
+ "Settings.application.support.discord.description": "Talk to the community in real time",
189
+ "Settings.application.support.discord.title": "Discord",
190
+ "Settings.application.support.documentation.description": "Guides and API reference",
191
+ "Settings.application.support.documentation.title": "Documentation",
192
+ "Settings.application.support.github-discussions.description": "Ask a question or propose an idea",
193
+ "Settings.application.support.github-discussions.title": "GitHub discussions",
194
+ "Settings.application.support.github-issues.description": "Report a bug",
195
+ "Settings.application.support.github-issues.title": "GitHub issues",
196
+ "Settings.application.support.subtitle.community": "Ask a question, report a bug, or contribute to the Strapi community.",
197
+ "Settings.application.support.subtitle.enterprise": "Contact support, report a bug, or contribute to the Strapi community.",
198
+ "Settings.application.support.support-portal.description": "Open a ticket with the Strapi support",
199
+ "Settings.application.support.support-portal.title": "Support portal",
200
+ "Settings.application.support.tile-label": "Open {title} in a new tab",
201
+ "Settings.application.support.title": "Support",
180
202
  "Settings.application.title": "Overview",
203
+ "Settings.debug-dump.copied": "Copied to clipboard",
204
+ "Settings.debug-dump.copy": "Copy",
205
+ "Settings.debug-dump.copy-failed": "Could not copy to clipboard",
206
+ "Settings.debug-dump.download": "Download",
207
+ "Settings.debug-dump.error": "Failed to generate the debug dump. Check the server logs and try again.",
208
+ "Settings.debug-dump.generating": "Generating diagnostic snapshot",
209
+ "Settings.debug-dump.payload-label": "payload",
210
+ "Settings.debug-dump.snapshot-modal.description": "This snapshot describes how your project is built so a third party can reproduce the bug locally. It does not contain any of your app's content and no credentials.",
211
+ "Settings.debug-dump.snapshot-modal.title": "Diagnostic snapshot",
181
212
  "Settings.error": "Error",
182
213
  "Settings.global": "Global Settings",
214
+ "Settings.license.checkin.never": "Not yet",
215
+ "Settings.license.entitlements": "plan entitlements",
216
+ "Settings.license.feature": "Feature",
217
+ "Settings.license.feature.audit-logs": "Audit Logs",
218
+ "Settings.license.feature.cms-advanced-preview": "Live Preview",
219
+ "Settings.license.feature.cms-content-history": "Content History",
220
+ "Settings.license.feature.cms-content-releases": "Releases",
221
+ "Settings.license.feature.review-workflows": "Review Workflows",
222
+ "Settings.license.feature.sso": "Single Sign-On",
223
+ "Settings.license.last-check": "Last license validity check {relative}",
224
+ "Settings.license.limit": "Limit",
225
+ "Settings.license.limit.count": "{value, number}",
226
+ "Settings.license.limit.days": "{days, plural, one {# day retention} other {# days retention}}",
227
+ "Settings.license.limit.maximumReleases": "Releases",
228
+ "Settings.license.limit.numberOfWorkflows": "Workflows",
229
+ "Settings.license.limit.retentionDays": "Retention",
230
+ "Settings.license.limit.stagesPerWorkflow": "Stages per workflow",
231
+ "Settings.license.limit.years": "~{years, plural, one {# year} other {# years}}",
232
+ "Settings.license.no": "No",
233
+ "Settings.license.registry.cached": "Couldn't reach the license registry. Showing the last license we retrieved.",
234
+ "Settings.license.registry.rejected": "The license registry could not validate this license.",
235
+ "Settings.license.registry.unreachable": "Couldn't reach the license registry.",
236
+ "Settings.license.renewal-date": "renewal date",
237
+ "Settings.license.status": "license status",
238
+ "Settings.license.status-tooltip": "Strapi checks the license status every 12 hours and on every build.",
239
+ "Settings.license.status.active": "Active",
240
+ "Settings.license.status.expired": "Expired",
241
+ "Settings.license.status.in-trial": "In Trial",
242
+ "Settings.license.status.unknown": "Unknown",
243
+ "Settings.license.subscription": "Subscription ID",
244
+ "Settings.license.trial-end-date": "trial end date",
245
+ "Settings.license.unlimited": "Unlimited",
246
+ "Settings.license.valid-until": "License valid until {date}",
247
+ "Settings.license.yes": "Yes",
183
248
  "Settings.permissions": "Administration panel",
184
249
  "Settings.permissions.auditLogs.action": "Action",
185
250
  "Settings.permissions.auditLogs.admin-user.create": "Create user",
@@ -189,6 +254,8 @@ var en = {
189
254
  "Settings.permissions.auditLogs.admin-user.password-reset.create": "Request password reset",
190
255
  "Settings.permissions.auditLogs.admin-user.password.update": "Update password",
191
256
  "Settings.permissions.auditLogs.admin-user.update": "Update user",
257
+ "Settings.permissions.auditLogs.admin.auth.autoRegistration": "SSO auto-registration",
258
+ "Settings.permissions.auditLogs.admin.auth.error": "Failed admin login",
192
259
  "Settings.permissions.auditLogs.admin.auth.success": "Admin login",
193
260
  "Settings.permissions.auditLogs.admin.logout": "Admin logout",
194
261
  "Settings.permissions.auditLogs.audit-log.export": "Export audit logs",
@@ -200,6 +267,7 @@ var en = {
200
267
  "Settings.permissions.auditLogs.content-type.update": "Update content type",
201
268
  "Settings.permissions.auditLogs.date": "Date",
202
269
  "Settings.permissions.auditLogs.details": "Log Details",
270
+ "Settings.permissions.auditLogs.entry.assignee.update": "Change entry assignee",
203
271
  "Settings.permissions.auditLogs.entry.create": "Create entry{model, select, undefined {} other { ({model})}}",
204
272
  "Settings.permissions.auditLogs.entry.delete": "Delete entry{model, select, undefined {} other { ({model})}}",
205
273
  "Settings.permissions.auditLogs.entry.publish": "Publish entry {model, select, undefined {} other {({model})}}",
@@ -235,6 +303,7 @@ var en = {
235
303
  "Settings.permissions.auditLogs.release.entry.update": "Change entry on release",
236
304
  "Settings.permissions.auditLogs.release.entry.remove": "Remove entry from release",
237
305
  "Settings.permissions.auditLogs.release.settings.update": "Update release settings",
306
+ "Settings.permissions.auditLogs.review-workflows.updateEntryStage": "Change entry stage",
238
307
  "Settings.permissions.auditLogs.permission.update": "Update permission",
239
308
  "Settings.permissions.auditLogs.role.create": "Create role",
240
309
  "Settings.permissions.auditLogs.role.delete": "Delete role",
@@ -252,6 +321,9 @@ var en = {
252
321
  "Settings.permissions.auditLogs.webhook.create": "Create webhook",
253
322
  "Settings.permissions.auditLogs.webhook.delete": "Delete webhook",
254
323
  "Settings.permissions.auditLogs.webhook.update": "Update webhook",
324
+ "Settings.permissions.auditLogs.workflow.create": "Create workflow",
325
+ "Settings.permissions.auditLogs.workflow.delete": "Delete workflow",
326
+ "Settings.permissions.auditLogs.workflow.update": "Update workflow",
255
327
  "Settings.permissions.category": "Permissions settings for the {category}",
256
328
  "Settings.permissions.category.plugins": "Permissions settings for the {category} plugin",
257
329
  "Settings.permissions.conditions.anytime": "Anytime",
@@ -1 +1 @@
1
- {"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"en.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -131,6 +131,9 @@ var en = {
131
131
  "Settings.adminTokens.editPage.title": "Edit Admin Token",
132
132
  "Settings.adminTokens.emptyStateLayout": "You don't have any content yet...",
133
133
  "Settings.adminTokens.title": "Admin Tokens",
134
+ "Settings.application.admin-seats": "Admin seats",
135
+ "Settings.application.ai-usage": "AI Usage",
136
+ "Settings.application.ai-usage.overage-rate": "+$1.50 per 100 credits above plan limit",
134
137
  "Settings.application.customization": "Customization",
135
138
  "Settings.application.customization.auth-logo.carousel-hint": "Replace the logo in the authentication pages",
136
139
  "Settings.application.customization.carousel-hint": "Change the admin panel logo (Max dimension: {dimension}x{dimension}, Max file size: {size}KB)",
@@ -162,20 +165,82 @@ var en = {
162
165
  "Settings.application.customization.modal.upload.next": "Next",
163
166
  "Settings.application.customization.size-details": "Max dimension: {dimension}×{dimension}, Max file size: {size}KB",
164
167
  "Settings.application.description": "Administration panel’s global information",
165
- "Settings.application.ee.admin-seats.add-seats": "Manage subscription",
166
- "Settings.application.ee.admin-seats.support": "Contact sales",
167
168
  "Settings.application.ee.admin-seats.at-limit-tooltip": "At limit: add seats to invite more users",
168
169
  "Settings.application.ee.admin-seats.count": "<text>{enforcementUserCount}</text>/{permittedSeats}",
169
170
  "Settings.application.get-help": "Get help",
170
- "Settings.application.link-pricing": "See all pricing plans",
171
171
  "Settings.application.link-upgrade": "Upgrade your admin panel",
172
172
  "Settings.application.node-version": "node version",
173
- "Settings.application.plan-title": "current plan",
173
+ "Settings.application.plan.current": "current plan",
174
+ "Settings.application.plan.manage-subscription": "Manage subscription",
175
+ "Settings.application.plan.see-all-plans": "See all plans",
176
+ "Settings.application.plan.title": "Plan",
177
+ "Settings.application.plan.view-subscription": "View subscription",
174
178
  "Settings.application.strapi-version": "Strapi version",
175
179
  "Settings.application.strapiVersion": "Strapi version",
180
+ "Settings.application.support.diagnostic-snapshot.description.community": "Reporting a bug? Generate a snapshot of your app's structure so the issue can be reproduced.",
181
+ "Settings.application.support.diagnostic-snapshot.description.enterprise": "Reporting a bug? A diagnostic snapshot describes how this project is built so it can be reproduced.",
182
+ "Settings.application.support.diagnostic-snapshot.generate": "Generate snapshot",
183
+ "Settings.application.support.diagnostic-snapshot.label": "diagnostic snapshot",
184
+ "Settings.application.support.discord.description": "Talk to the community in real time",
185
+ "Settings.application.support.discord.title": "Discord",
186
+ "Settings.application.support.documentation.description": "Guides and API reference",
187
+ "Settings.application.support.documentation.title": "Documentation",
188
+ "Settings.application.support.github-discussions.description": "Ask a question or propose an idea",
189
+ "Settings.application.support.github-discussions.title": "GitHub discussions",
190
+ "Settings.application.support.github-issues.description": "Report a bug",
191
+ "Settings.application.support.github-issues.title": "GitHub issues",
192
+ "Settings.application.support.subtitle.community": "Ask a question, report a bug, or contribute to the Strapi community.",
193
+ "Settings.application.support.subtitle.enterprise": "Contact support, report a bug, or contribute to the Strapi community.",
194
+ "Settings.application.support.support-portal.description": "Open a ticket with the Strapi support",
195
+ "Settings.application.support.support-portal.title": "Support portal",
196
+ "Settings.application.support.tile-label": "Open {title} in a new tab",
197
+ "Settings.application.support.title": "Support",
176
198
  "Settings.application.title": "Overview",
199
+ "Settings.debug-dump.copied": "Copied to clipboard",
200
+ "Settings.debug-dump.copy": "Copy",
201
+ "Settings.debug-dump.copy-failed": "Could not copy to clipboard",
202
+ "Settings.debug-dump.download": "Download",
203
+ "Settings.debug-dump.error": "Failed to generate the debug dump. Check the server logs and try again.",
204
+ "Settings.debug-dump.generating": "Generating diagnostic snapshot",
205
+ "Settings.debug-dump.payload-label": "payload",
206
+ "Settings.debug-dump.snapshot-modal.description": "This snapshot describes how your project is built so a third party can reproduce the bug locally. It does not contain any of your app's content and no credentials.",
207
+ "Settings.debug-dump.snapshot-modal.title": "Diagnostic snapshot",
177
208
  "Settings.error": "Error",
178
209
  "Settings.global": "Global Settings",
210
+ "Settings.license.checkin.never": "Not yet",
211
+ "Settings.license.entitlements": "plan entitlements",
212
+ "Settings.license.feature": "Feature",
213
+ "Settings.license.feature.audit-logs": "Audit Logs",
214
+ "Settings.license.feature.cms-advanced-preview": "Live Preview",
215
+ "Settings.license.feature.cms-content-history": "Content History",
216
+ "Settings.license.feature.cms-content-releases": "Releases",
217
+ "Settings.license.feature.review-workflows": "Review Workflows",
218
+ "Settings.license.feature.sso": "Single Sign-On",
219
+ "Settings.license.last-check": "Last license validity check {relative}",
220
+ "Settings.license.limit": "Limit",
221
+ "Settings.license.limit.count": "{value, number}",
222
+ "Settings.license.limit.days": "{days, plural, one {# day retention} other {# days retention}}",
223
+ "Settings.license.limit.maximumReleases": "Releases",
224
+ "Settings.license.limit.numberOfWorkflows": "Workflows",
225
+ "Settings.license.limit.retentionDays": "Retention",
226
+ "Settings.license.limit.stagesPerWorkflow": "Stages per workflow",
227
+ "Settings.license.limit.years": "~{years, plural, one {# year} other {# years}}",
228
+ "Settings.license.no": "No",
229
+ "Settings.license.registry.cached": "Couldn't reach the license registry. Showing the last license we retrieved.",
230
+ "Settings.license.registry.rejected": "The license registry could not validate this license.",
231
+ "Settings.license.registry.unreachable": "Couldn't reach the license registry.",
232
+ "Settings.license.renewal-date": "renewal date",
233
+ "Settings.license.status": "license status",
234
+ "Settings.license.status-tooltip": "Strapi checks the license status every 12 hours and on every build.",
235
+ "Settings.license.status.active": "Active",
236
+ "Settings.license.status.expired": "Expired",
237
+ "Settings.license.status.in-trial": "In Trial",
238
+ "Settings.license.status.unknown": "Unknown",
239
+ "Settings.license.subscription": "Subscription ID",
240
+ "Settings.license.trial-end-date": "trial end date",
241
+ "Settings.license.unlimited": "Unlimited",
242
+ "Settings.license.valid-until": "License valid until {date}",
243
+ "Settings.license.yes": "Yes",
179
244
  "Settings.permissions": "Administration panel",
180
245
  "Settings.permissions.auditLogs.action": "Action",
181
246
  "Settings.permissions.auditLogs.admin-user.create": "Create user",
@@ -185,6 +250,8 @@ var en = {
185
250
  "Settings.permissions.auditLogs.admin-user.password-reset.create": "Request password reset",
186
251
  "Settings.permissions.auditLogs.admin-user.password.update": "Update password",
187
252
  "Settings.permissions.auditLogs.admin-user.update": "Update user",
253
+ "Settings.permissions.auditLogs.admin.auth.autoRegistration": "SSO auto-registration",
254
+ "Settings.permissions.auditLogs.admin.auth.error": "Failed admin login",
188
255
  "Settings.permissions.auditLogs.admin.auth.success": "Admin login",
189
256
  "Settings.permissions.auditLogs.admin.logout": "Admin logout",
190
257
  "Settings.permissions.auditLogs.audit-log.export": "Export audit logs",
@@ -196,6 +263,7 @@ var en = {
196
263
  "Settings.permissions.auditLogs.content-type.update": "Update content type",
197
264
  "Settings.permissions.auditLogs.date": "Date",
198
265
  "Settings.permissions.auditLogs.details": "Log Details",
266
+ "Settings.permissions.auditLogs.entry.assignee.update": "Change entry assignee",
199
267
  "Settings.permissions.auditLogs.entry.create": "Create entry{model, select, undefined {} other { ({model})}}",
200
268
  "Settings.permissions.auditLogs.entry.delete": "Delete entry{model, select, undefined {} other { ({model})}}",
201
269
  "Settings.permissions.auditLogs.entry.publish": "Publish entry {model, select, undefined {} other {({model})}}",
@@ -231,6 +299,7 @@ var en = {
231
299
  "Settings.permissions.auditLogs.release.entry.update": "Change entry on release",
232
300
  "Settings.permissions.auditLogs.release.entry.remove": "Remove entry from release",
233
301
  "Settings.permissions.auditLogs.release.settings.update": "Update release settings",
302
+ "Settings.permissions.auditLogs.review-workflows.updateEntryStage": "Change entry stage",
234
303
  "Settings.permissions.auditLogs.permission.update": "Update permission",
235
304
  "Settings.permissions.auditLogs.role.create": "Create role",
236
305
  "Settings.permissions.auditLogs.role.delete": "Delete role",
@@ -248,6 +317,9 @@ var en = {
248
317
  "Settings.permissions.auditLogs.webhook.create": "Create webhook",
249
318
  "Settings.permissions.auditLogs.webhook.delete": "Delete webhook",
250
319
  "Settings.permissions.auditLogs.webhook.update": "Update webhook",
320
+ "Settings.permissions.auditLogs.workflow.create": "Create workflow",
321
+ "Settings.permissions.auditLogs.workflow.delete": "Delete workflow",
322
+ "Settings.permissions.auditLogs.workflow.update": "Update workflow",
251
323
  "Settings.permissions.category": "Permissions settings for the {category}",
252
324
  "Settings.permissions.category.plugins": "Permissions settings for the {category} plugin",
253
325
  "Settings.permissions.conditions.anytime": "Anytime",
@@ -1 +1 @@
1
- {"version":3,"file":"en.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"en.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var getProjectType = require('./getProjectType.js');
3
+ var getProjectType = require('../../../shared/utils/get-project-type.js');
4
4
  var urls = require('./urls.js');
5
5
 
6
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"browserStrapi.js","sources":["../../../../../admin/src/utils/browserStrapi.ts"],"sourcesContent":["import { getProjectType } from './getProjectType';\nimport { createAbsoluteUrl } from './urls';\n\nimport type { GetProjectType } from '../../../shared/contracts/admin';\nimport type { Modules } from '@strapi/types';\n\n/**\n * Builds the `window.strapi` object: Community defaults, then the license response.\n * Returned rather than assigned so the caller publishes it to `window` exactly once.\n *\n * Nothing here may read `window.strapi` — it does not exist yet, and the `#strapi`\n * mount node shadows it as a named window property, so reads silently yield the\n * element instead of throwing.\n */\nconst createBrowserStrapi = async (\n features?: Modules.Features.FeaturesService['config']\n): Promise<Window['strapi']> => {\n const browserStrapi: Window['strapi'] = {\n /**\n * This ENV variable is passed from the strapi instance, by default no url is set\n * in the config and therefore the instance returns you an empty string so URLs are relative.\n *\n * To ensure that the backendURL is always set, we use the window.location.origin as a fallback.\n */\n backendURL: createAbsoluteUrl(process.env.STRAPI_ADMIN_BACKEND_URL),\n isEE: false,\n isTrial: false,\n isTrialLicense: false,\n telemetryDisabled: process.env.STRAPI_TELEMETRY_DISABLED === 'true',\n future: {\n isEnabled: (name: keyof NonNullable<Modules.Features.FeaturesConfig['future']>) => {\n return features?.future?.[name] === true;\n },\n },\n featureFlags: {\n isEnabled: (name: keyof Omit<Modules.Features.FeaturesConfig, 'future'>) => {\n return features?.[name] === true;\n },\n },\n features: {\n SSO: 'sso',\n AUDIT_LOGS: 'audit-logs',\n REVIEW_WORKFLOWS: 'review-workflows',\n /**\n * If we don't get the license then we know it's not EE\n * so no feature is enabled.\n */\n isEnabled: () => false,\n },\n projectType: 'Community',\n flags: {\n nps: false,\n promoteEE: true,\n docLinks: true,\n },\n ai: {\n enabled: false,\n },\n };\n\n try {\n /**\n * Plain `fetch` rather than `getFetchClient`: the fetch client resolves its\n * backend from `window.strapi`, which does not exist yet. The route is public,\n * so it needs neither the auth header nor the token refresh the client adds.\n */\n const response = await fetch(`${browserStrapi.backendURL}/admin/project-type`, {\n headers: { Accept: 'application/json' },\n });\n\n if (!response.ok) {\n throw new Error(`[@strapi/admin]: /admin/project-type responded with ${response.status}`);\n }\n\n const {\n data: { isEE, isTrial, features: licensedFeatures, flags, ai, planPriceId },\n }: GetProjectType.Response = await response.json();\n\n // Runtime defense: the payload is only typed by convention, not validated.\n const trial = isTrial ?? false;\n\n browserStrapi.isEE = isEE;\n browserStrapi.isTrial = trial;\n browserStrapi.isTrialLicense = trial;\n browserStrapi.flags = flags;\n browserStrapi.features = {\n ...browserStrapi.features,\n isEnabled: (featureName: string | undefined) =>\n licensedFeatures.some((feature) => feature.name === featureName),\n };\n browserStrapi.projectType = getProjectType({ isEE, planPriceId });\n browserStrapi.ai = ai;\n } catch (err) {\n /**\n * If this fails, we simply don't activate any EE features.\n * Should we warn clearer in the UI?\n */\n console.error(err);\n }\n\n return browserStrapi;\n};\n\nexport { createBrowserStrapi };\n"],"names":["createBrowserStrapi","features","browserStrapi","backendURL","createAbsoluteUrl","process","env","STRAPI_ADMIN_BACKEND_URL","isEE","isTrial","isTrialLicense","telemetryDisabled","STRAPI_TELEMETRY_DISABLED","future","isEnabled","name","featureFlags","SSO","AUDIT_LOGS","REVIEW_WORKFLOWS","projectType","flags","nps","promoteEE","docLinks","ai","enabled","response","fetch","headers","Accept","ok","Error","status","data","licensedFeatures","planPriceId","json","trial","featureName","some","feature","getProjectType","err","console","error"],"mappings":";;;;;AAMA;;;;;;;IAQA,MAAMA,sBAAsB,OAC1BC,QAAAA,GAAAA;AAEA,IAAA,MAAMC,aAAAA,GAAkC;AACtC;;;;;AAKC,QACDC,UAAAA,EAAYC,sBAAAA,CAAkBC,OAAAA,CAAQC,GAAG,CAACC,wBAAwB,CAAA;QAClEC,IAAAA,EAAM,KAAA;QACNC,OAAAA,EAAS,KAAA;QACTC,cAAAA,EAAgB,KAAA;AAChBC,QAAAA,iBAAAA,EAAmBN,OAAAA,CAAQC,GAAG,CAACM,yBAAyB,KAAK,MAAA;QAC7DC,MAAAA,EAAQ;AACNC,YAAAA,SAAAA,EAAW,CAACC,IAAAA,GAAAA;AACV,gBAAA,OAAOd,QAAAA,EAAUY,MAAAA,GAASE,IAAAA,CAAK,KAAK,IAAA;AACtC,YAAA;AACF,SAAA;QACAC,YAAAA,EAAc;AACZF,YAAAA,SAAAA,EAAW,CAACC,IAAAA,GAAAA;gBACV,OAAOd,QAAAA,GAAWc,IAAAA,CAAK,KAAK,IAAA;AAC9B,YAAA;AACF,SAAA;QACAd,QAAAA,EAAU;YACRgB,GAAAA,EAAK,KAAA;YACLC,UAAAA,EAAY,YAAA;YACZC,gBAAAA,EAAkB,kBAAA;AAClB;;;AAGC,UACDL,WAAW,IAAM;AACnB,SAAA;QACAM,WAAAA,EAAa,WAAA;QACbC,KAAAA,EAAO;YACLC,GAAAA,EAAK,KAAA;YACLC,SAAAA,EAAW,IAAA;YACXC,QAAAA,EAAU;AACZ,SAAA;QACAC,EAAAA,EAAI;YACFC,OAAAA,EAAS;AACX;AACF,KAAA;IAEA,IAAI;AACF;;;;QAKA,MAAMC,QAAAA,GAAW,MAAMC,KAAAA,CAAM,CAAA,EAAG1B,cAAcC,UAAU,CAAC,mBAAmB,CAAC,EAAE;YAC7E0B,OAAAA,EAAS;gBAAEC,MAAAA,EAAQ;AAAmB;AACxC,SAAA,CAAA;QAEA,IAAI,CAACH,QAAAA,CAASI,EAAE,EAAE;AAChB,YAAA,MAAM,IAAIC,KAAAA,CAAM,CAAC,oDAAoD,EAAEL,QAAAA,CAASM,MAAM,CAAA,CAAE,CAAA;AAC1F,QAAA;QAEA,MAAM,EACJC,MAAM,EAAE1B,IAAI,EAAEC,OAAO,EAAER,UAAUkC,gBAAgB,EAAEd,KAAK,EAAEI,EAAE,EAAEW,WAAW,EAAE,EAC5E,GAA4B,MAAMT,SAASU,IAAI,EAAA;;AAGhD,QAAA,MAAMC,QAAQ7B,OAAAA,IAAW,KAAA;AAEzBP,QAAAA,aAAAA,CAAcM,IAAI,GAAGA,IAAAA;AACrBN,QAAAA,aAAAA,CAAcO,OAAO,GAAG6B,KAAAA;AACxBpC,QAAAA,aAAAA,CAAcQ,cAAc,GAAG4B,KAAAA;AAC/BpC,QAAAA,aAAAA,CAAcmB,KAAK,GAAGA,KAAAA;AACtBnB,QAAAA,aAAAA,CAAcD,QAAQ,GAAG;AACvB,YAAA,GAAGC,cAAcD,QAAQ;YACzBa,SAAAA,EAAW,CAACyB,cACVJ,gBAAAA,CAAiBK,IAAI,CAAC,CAACC,OAAAA,GAAYA,OAAAA,CAAQ1B,IAAI,KAAKwB,WAAAA;AACxD,SAAA;QACArC,aAAAA,CAAckB,WAAW,GAAGsB,6BAAAA,CAAe;AAAElC,YAAAA,IAAAA;AAAM4B,YAAAA;AAAY,SAAA,CAAA;AAC/DlC,QAAAA,aAAAA,CAAcuB,EAAE,GAAGA,EAAAA;AACrB,IAAA,CAAA,CAAE,OAAOkB,GAAAA,EAAK;AACZ;;;QAIAC,OAAAA,CAAQC,KAAK,CAACF,GAAAA,CAAAA;AAChB,IAAA;IAEA,OAAOzC,aAAAA;AACT;;;;"}
1
+ {"version":3,"file":"browserStrapi.js","sources":["../../../../../admin/src/utils/browserStrapi.ts"],"sourcesContent":["import { getProjectType } from '../../../shared/utils/get-project-type';\n\nimport { createAbsoluteUrl } from './urls';\n\nimport type { GetProjectType } from '../../../shared/contracts/admin';\nimport type { Modules } from '@strapi/types';\n\n/**\n * Builds the `window.strapi` object: Community defaults, then the license response.\n * Returned rather than assigned so the caller publishes it to `window` exactly once.\n *\n * Nothing here may read `window.strapi` — it does not exist yet, and the `#strapi`\n * mount node shadows it as a named window property, so reads silently yield the\n * element instead of throwing.\n */\nconst createBrowserStrapi = async (\n features?: Modules.Features.FeaturesService['config']\n): Promise<Window['strapi']> => {\n const browserStrapi: Window['strapi'] = {\n /**\n * This ENV variable is passed from the strapi instance, by default no url is set\n * in the config and therefore the instance returns you an empty string so URLs are relative.\n *\n * To ensure that the backendURL is always set, we use the window.location.origin as a fallback.\n */\n backendURL: createAbsoluteUrl(process.env.STRAPI_ADMIN_BACKEND_URL),\n isEE: false,\n isTrial: false,\n isTrialLicense: false,\n telemetryDisabled: process.env.STRAPI_TELEMETRY_DISABLED === 'true',\n future: {\n isEnabled: (name: keyof NonNullable<Modules.Features.FeaturesConfig['future']>) => {\n return features?.future?.[name] === true;\n },\n },\n featureFlags: {\n isEnabled: (name: keyof Omit<Modules.Features.FeaturesConfig, 'future'>) => {\n return features?.[name] === true;\n },\n },\n features: {\n SSO: 'sso',\n AUDIT_LOGS: 'audit-logs',\n REVIEW_WORKFLOWS: 'review-workflows',\n /**\n * If we don't get the license then we know it's not EE\n * so no feature is enabled.\n */\n isEnabled: () => false,\n },\n projectType: 'Community',\n flags: {\n nps: false,\n promoteEE: true,\n docLinks: true,\n },\n ai: {\n enabled: false,\n },\n };\n\n try {\n /**\n * Plain `fetch` rather than `getFetchClient`: the fetch client resolves its\n * backend from `window.strapi`, which does not exist yet. The route is public,\n * so it needs neither the auth header nor the token refresh the client adds.\n */\n const response = await fetch(`${browserStrapi.backendURL}/admin/project-type`, {\n headers: { Accept: 'application/json' },\n });\n\n if (!response.ok) {\n throw new Error(`[@strapi/admin]: /admin/project-type responded with ${response.status}`);\n }\n\n const {\n data: { isEE, isTrial, features: licensedFeatures, flags, ai, planPriceId },\n }: GetProjectType.Response = await response.json();\n\n // Runtime defense: the payload is only typed by convention, not validated.\n const trial = isTrial ?? false;\n\n browserStrapi.isEE = isEE;\n browserStrapi.isTrial = trial;\n browserStrapi.isTrialLicense = trial;\n browserStrapi.flags = flags;\n browserStrapi.features = {\n ...browserStrapi.features,\n isEnabled: (featureName: string | undefined) =>\n licensedFeatures.some((feature) => feature.name === featureName),\n };\n browserStrapi.projectType = getProjectType({ isEE, planPriceId });\n browserStrapi.ai = ai;\n } catch (err) {\n /**\n * If this fails, we simply don't activate any EE features.\n * Should we warn clearer in the UI?\n */\n console.error(err);\n }\n\n return browserStrapi;\n};\n\nexport { createBrowserStrapi };\n"],"names":["createBrowserStrapi","features","browserStrapi","backendURL","createAbsoluteUrl","process","env","STRAPI_ADMIN_BACKEND_URL","isEE","isTrial","isTrialLicense","telemetryDisabled","STRAPI_TELEMETRY_DISABLED","future","isEnabled","name","featureFlags","SSO","AUDIT_LOGS","REVIEW_WORKFLOWS","projectType","flags","nps","promoteEE","docLinks","ai","enabled","response","fetch","headers","Accept","ok","Error","status","data","licensedFeatures","planPriceId","json","trial","featureName","some","feature","getProjectType","err","console","error"],"mappings":";;;;;AAOA;;;;;;;IAQA,MAAMA,sBAAsB,OAC1BC,QAAAA,GAAAA;AAEA,IAAA,MAAMC,aAAAA,GAAkC;AACtC;;;;;AAKC,QACDC,UAAAA,EAAYC,sBAAAA,CAAkBC,OAAAA,CAAQC,GAAG,CAACC,wBAAwB,CAAA;QAClEC,IAAAA,EAAM,KAAA;QACNC,OAAAA,EAAS,KAAA;QACTC,cAAAA,EAAgB,KAAA;AAChBC,QAAAA,iBAAAA,EAAmBN,OAAAA,CAAQC,GAAG,CAACM,yBAAyB,KAAK,MAAA;QAC7DC,MAAAA,EAAQ;AACNC,YAAAA,SAAAA,EAAW,CAACC,IAAAA,GAAAA;AACV,gBAAA,OAAOd,QAAAA,EAAUY,MAAAA,GAASE,IAAAA,CAAK,KAAK,IAAA;AACtC,YAAA;AACF,SAAA;QACAC,YAAAA,EAAc;AACZF,YAAAA,SAAAA,EAAW,CAACC,IAAAA,GAAAA;gBACV,OAAOd,QAAAA,GAAWc,IAAAA,CAAK,KAAK,IAAA;AAC9B,YAAA;AACF,SAAA;QACAd,QAAAA,EAAU;YACRgB,GAAAA,EAAK,KAAA;YACLC,UAAAA,EAAY,YAAA;YACZC,gBAAAA,EAAkB,kBAAA;AAClB;;;AAGC,UACDL,WAAW,IAAM;AACnB,SAAA;QACAM,WAAAA,EAAa,WAAA;QACbC,KAAAA,EAAO;YACLC,GAAAA,EAAK,KAAA;YACLC,SAAAA,EAAW,IAAA;YACXC,QAAAA,EAAU;AACZ,SAAA;QACAC,EAAAA,EAAI;YACFC,OAAAA,EAAS;AACX;AACF,KAAA;IAEA,IAAI;AACF;;;;QAKA,MAAMC,QAAAA,GAAW,MAAMC,KAAAA,CAAM,CAAA,EAAG1B,cAAcC,UAAU,CAAC,mBAAmB,CAAC,EAAE;YAC7E0B,OAAAA,EAAS;gBAAEC,MAAAA,EAAQ;AAAmB;AACxC,SAAA,CAAA;QAEA,IAAI,CAACH,QAAAA,CAASI,EAAE,EAAE;AAChB,YAAA,MAAM,IAAIC,KAAAA,CAAM,CAAC,oDAAoD,EAAEL,QAAAA,CAASM,MAAM,CAAA,CAAE,CAAA;AAC1F,QAAA;QAEA,MAAM,EACJC,MAAM,EAAE1B,IAAI,EAAEC,OAAO,EAAER,UAAUkC,gBAAgB,EAAEd,KAAK,EAAEI,EAAE,EAAEW,WAAW,EAAE,EAC5E,GAA4B,MAAMT,SAASU,IAAI,EAAA;;AAGhD,QAAA,MAAMC,QAAQ7B,OAAAA,IAAW,KAAA;AAEzBP,QAAAA,aAAAA,CAAcM,IAAI,GAAGA,IAAAA;AACrBN,QAAAA,aAAAA,CAAcO,OAAO,GAAG6B,KAAAA;AACxBpC,QAAAA,aAAAA,CAAcQ,cAAc,GAAG4B,KAAAA;AAC/BpC,QAAAA,aAAAA,CAAcmB,KAAK,GAAGA,KAAAA;AACtBnB,QAAAA,aAAAA,CAAcD,QAAQ,GAAG;AACvB,YAAA,GAAGC,cAAcD,QAAQ;YACzBa,SAAAA,EAAW,CAACyB,cACVJ,gBAAAA,CAAiBK,IAAI,CAAC,CAACC,OAAAA,GAAYA,OAAAA,CAAQ1B,IAAI,KAAKwB,WAAAA;AACxD,SAAA;QACArC,aAAAA,CAAckB,WAAW,GAAGsB,6BAAAA,CAAe;AAAElC,YAAAA,IAAAA;AAAM4B,YAAAA;AAAY,SAAA,CAAA;AAC/DlC,QAAAA,aAAAA,CAAcuB,EAAE,GAAGA,EAAAA;AACrB,IAAA,CAAA,CAAE,OAAOkB,GAAAA,EAAK;AACZ;;;QAIAC,OAAAA,CAAQC,KAAK,CAACF,GAAAA,CAAAA;AAChB,IAAA;IAEA,OAAOzC,aAAAA;AACT;;;;"}
@@ -1,4 +1,4 @@
1
- import { getProjectType } from './getProjectType.mjs';
1
+ import { getProjectType } from '../../../shared/utils/get-project-type.mjs';
2
2
  import { createAbsoluteUrl } from './urls.mjs';
3
3
 
4
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"browserStrapi.mjs","sources":["../../../../../admin/src/utils/browserStrapi.ts"],"sourcesContent":["import { getProjectType } from './getProjectType';\nimport { createAbsoluteUrl } from './urls';\n\nimport type { GetProjectType } from '../../../shared/contracts/admin';\nimport type { Modules } from '@strapi/types';\n\n/**\n * Builds the `window.strapi` object: Community defaults, then the license response.\n * Returned rather than assigned so the caller publishes it to `window` exactly once.\n *\n * Nothing here may read `window.strapi` — it does not exist yet, and the `#strapi`\n * mount node shadows it as a named window property, so reads silently yield the\n * element instead of throwing.\n */\nconst createBrowserStrapi = async (\n features?: Modules.Features.FeaturesService['config']\n): Promise<Window['strapi']> => {\n const browserStrapi: Window['strapi'] = {\n /**\n * This ENV variable is passed from the strapi instance, by default no url is set\n * in the config and therefore the instance returns you an empty string so URLs are relative.\n *\n * To ensure that the backendURL is always set, we use the window.location.origin as a fallback.\n */\n backendURL: createAbsoluteUrl(process.env.STRAPI_ADMIN_BACKEND_URL),\n isEE: false,\n isTrial: false,\n isTrialLicense: false,\n telemetryDisabled: process.env.STRAPI_TELEMETRY_DISABLED === 'true',\n future: {\n isEnabled: (name: keyof NonNullable<Modules.Features.FeaturesConfig['future']>) => {\n return features?.future?.[name] === true;\n },\n },\n featureFlags: {\n isEnabled: (name: keyof Omit<Modules.Features.FeaturesConfig, 'future'>) => {\n return features?.[name] === true;\n },\n },\n features: {\n SSO: 'sso',\n AUDIT_LOGS: 'audit-logs',\n REVIEW_WORKFLOWS: 'review-workflows',\n /**\n * If we don't get the license then we know it's not EE\n * so no feature is enabled.\n */\n isEnabled: () => false,\n },\n projectType: 'Community',\n flags: {\n nps: false,\n promoteEE: true,\n docLinks: true,\n },\n ai: {\n enabled: false,\n },\n };\n\n try {\n /**\n * Plain `fetch` rather than `getFetchClient`: the fetch client resolves its\n * backend from `window.strapi`, which does not exist yet. The route is public,\n * so it needs neither the auth header nor the token refresh the client adds.\n */\n const response = await fetch(`${browserStrapi.backendURL}/admin/project-type`, {\n headers: { Accept: 'application/json' },\n });\n\n if (!response.ok) {\n throw new Error(`[@strapi/admin]: /admin/project-type responded with ${response.status}`);\n }\n\n const {\n data: { isEE, isTrial, features: licensedFeatures, flags, ai, planPriceId },\n }: GetProjectType.Response = await response.json();\n\n // Runtime defense: the payload is only typed by convention, not validated.\n const trial = isTrial ?? false;\n\n browserStrapi.isEE = isEE;\n browserStrapi.isTrial = trial;\n browserStrapi.isTrialLicense = trial;\n browserStrapi.flags = flags;\n browserStrapi.features = {\n ...browserStrapi.features,\n isEnabled: (featureName: string | undefined) =>\n licensedFeatures.some((feature) => feature.name === featureName),\n };\n browserStrapi.projectType = getProjectType({ isEE, planPriceId });\n browserStrapi.ai = ai;\n } catch (err) {\n /**\n * If this fails, we simply don't activate any EE features.\n * Should we warn clearer in the UI?\n */\n console.error(err);\n }\n\n return browserStrapi;\n};\n\nexport { createBrowserStrapi };\n"],"names":["createBrowserStrapi","features","browserStrapi","backendURL","createAbsoluteUrl","process","env","STRAPI_ADMIN_BACKEND_URL","isEE","isTrial","isTrialLicense","telemetryDisabled","STRAPI_TELEMETRY_DISABLED","future","isEnabled","name","featureFlags","SSO","AUDIT_LOGS","REVIEW_WORKFLOWS","projectType","flags","nps","promoteEE","docLinks","ai","enabled","response","fetch","headers","Accept","ok","Error","status","data","licensedFeatures","planPriceId","json","trial","featureName","some","feature","getProjectType","err","console","error"],"mappings":";;;AAMA;;;;;;;IAQA,MAAMA,sBAAsB,OAC1BC,QAAAA,GAAAA;AAEA,IAAA,MAAMC,aAAAA,GAAkC;AACtC;;;;;AAKC,QACDC,UAAAA,EAAYC,iBAAAA,CAAkBC,OAAAA,CAAQC,GAAG,CAACC,wBAAwB,CAAA;QAClEC,IAAAA,EAAM,KAAA;QACNC,OAAAA,EAAS,KAAA;QACTC,cAAAA,EAAgB,KAAA;AAChBC,QAAAA,iBAAAA,EAAmBN,OAAAA,CAAQC,GAAG,CAACM,yBAAyB,KAAK,MAAA;QAC7DC,MAAAA,EAAQ;AACNC,YAAAA,SAAAA,EAAW,CAACC,IAAAA,GAAAA;AACV,gBAAA,OAAOd,QAAAA,EAAUY,MAAAA,GAASE,IAAAA,CAAK,KAAK,IAAA;AACtC,YAAA;AACF,SAAA;QACAC,YAAAA,EAAc;AACZF,YAAAA,SAAAA,EAAW,CAACC,IAAAA,GAAAA;gBACV,OAAOd,QAAAA,GAAWc,IAAAA,CAAK,KAAK,IAAA;AAC9B,YAAA;AACF,SAAA;QACAd,QAAAA,EAAU;YACRgB,GAAAA,EAAK,KAAA;YACLC,UAAAA,EAAY,YAAA;YACZC,gBAAAA,EAAkB,kBAAA;AAClB;;;AAGC,UACDL,WAAW,IAAM;AACnB,SAAA;QACAM,WAAAA,EAAa,WAAA;QACbC,KAAAA,EAAO;YACLC,GAAAA,EAAK,KAAA;YACLC,SAAAA,EAAW,IAAA;YACXC,QAAAA,EAAU;AACZ,SAAA;QACAC,EAAAA,EAAI;YACFC,OAAAA,EAAS;AACX;AACF,KAAA;IAEA,IAAI;AACF;;;;QAKA,MAAMC,QAAAA,GAAW,MAAMC,KAAAA,CAAM,CAAA,EAAG1B,cAAcC,UAAU,CAAC,mBAAmB,CAAC,EAAE;YAC7E0B,OAAAA,EAAS;gBAAEC,MAAAA,EAAQ;AAAmB;AACxC,SAAA,CAAA;QAEA,IAAI,CAACH,QAAAA,CAASI,EAAE,EAAE;AAChB,YAAA,MAAM,IAAIC,KAAAA,CAAM,CAAC,oDAAoD,EAAEL,QAAAA,CAASM,MAAM,CAAA,CAAE,CAAA;AAC1F,QAAA;QAEA,MAAM,EACJC,MAAM,EAAE1B,IAAI,EAAEC,OAAO,EAAER,UAAUkC,gBAAgB,EAAEd,KAAK,EAAEI,EAAE,EAAEW,WAAW,EAAE,EAC5E,GAA4B,MAAMT,SAASU,IAAI,EAAA;;AAGhD,QAAA,MAAMC,QAAQ7B,OAAAA,IAAW,KAAA;AAEzBP,QAAAA,aAAAA,CAAcM,IAAI,GAAGA,IAAAA;AACrBN,QAAAA,aAAAA,CAAcO,OAAO,GAAG6B,KAAAA;AACxBpC,QAAAA,aAAAA,CAAcQ,cAAc,GAAG4B,KAAAA;AAC/BpC,QAAAA,aAAAA,CAAcmB,KAAK,GAAGA,KAAAA;AACtBnB,QAAAA,aAAAA,CAAcD,QAAQ,GAAG;AACvB,YAAA,GAAGC,cAAcD,QAAQ;YACzBa,SAAAA,EAAW,CAACyB,cACVJ,gBAAAA,CAAiBK,IAAI,CAAC,CAACC,OAAAA,GAAYA,OAAAA,CAAQ1B,IAAI,KAAKwB,WAAAA;AACxD,SAAA;QACArC,aAAAA,CAAckB,WAAW,GAAGsB,cAAAA,CAAe;AAAElC,YAAAA,IAAAA;AAAM4B,YAAAA;AAAY,SAAA,CAAA;AAC/DlC,QAAAA,aAAAA,CAAcuB,EAAE,GAAGA,EAAAA;AACrB,IAAA,CAAA,CAAE,OAAOkB,GAAAA,EAAK;AACZ;;;QAIAC,OAAAA,CAAQC,KAAK,CAACF,GAAAA,CAAAA;AAChB,IAAA;IAEA,OAAOzC,aAAAA;AACT;;;;"}
1
+ {"version":3,"file":"browserStrapi.mjs","sources":["../../../../../admin/src/utils/browserStrapi.ts"],"sourcesContent":["import { getProjectType } from '../../../shared/utils/get-project-type';\n\nimport { createAbsoluteUrl } from './urls';\n\nimport type { GetProjectType } from '../../../shared/contracts/admin';\nimport type { Modules } from '@strapi/types';\n\n/**\n * Builds the `window.strapi` object: Community defaults, then the license response.\n * Returned rather than assigned so the caller publishes it to `window` exactly once.\n *\n * Nothing here may read `window.strapi` — it does not exist yet, and the `#strapi`\n * mount node shadows it as a named window property, so reads silently yield the\n * element instead of throwing.\n */\nconst createBrowserStrapi = async (\n features?: Modules.Features.FeaturesService['config']\n): Promise<Window['strapi']> => {\n const browserStrapi: Window['strapi'] = {\n /**\n * This ENV variable is passed from the strapi instance, by default no url is set\n * in the config and therefore the instance returns you an empty string so URLs are relative.\n *\n * To ensure that the backendURL is always set, we use the window.location.origin as a fallback.\n */\n backendURL: createAbsoluteUrl(process.env.STRAPI_ADMIN_BACKEND_URL),\n isEE: false,\n isTrial: false,\n isTrialLicense: false,\n telemetryDisabled: process.env.STRAPI_TELEMETRY_DISABLED === 'true',\n future: {\n isEnabled: (name: keyof NonNullable<Modules.Features.FeaturesConfig['future']>) => {\n return features?.future?.[name] === true;\n },\n },\n featureFlags: {\n isEnabled: (name: keyof Omit<Modules.Features.FeaturesConfig, 'future'>) => {\n return features?.[name] === true;\n },\n },\n features: {\n SSO: 'sso',\n AUDIT_LOGS: 'audit-logs',\n REVIEW_WORKFLOWS: 'review-workflows',\n /**\n * If we don't get the license then we know it's not EE\n * so no feature is enabled.\n */\n isEnabled: () => false,\n },\n projectType: 'Community',\n flags: {\n nps: false,\n promoteEE: true,\n docLinks: true,\n },\n ai: {\n enabled: false,\n },\n };\n\n try {\n /**\n * Plain `fetch` rather than `getFetchClient`: the fetch client resolves its\n * backend from `window.strapi`, which does not exist yet. The route is public,\n * so it needs neither the auth header nor the token refresh the client adds.\n */\n const response = await fetch(`${browserStrapi.backendURL}/admin/project-type`, {\n headers: { Accept: 'application/json' },\n });\n\n if (!response.ok) {\n throw new Error(`[@strapi/admin]: /admin/project-type responded with ${response.status}`);\n }\n\n const {\n data: { isEE, isTrial, features: licensedFeatures, flags, ai, planPriceId },\n }: GetProjectType.Response = await response.json();\n\n // Runtime defense: the payload is only typed by convention, not validated.\n const trial = isTrial ?? false;\n\n browserStrapi.isEE = isEE;\n browserStrapi.isTrial = trial;\n browserStrapi.isTrialLicense = trial;\n browserStrapi.flags = flags;\n browserStrapi.features = {\n ...browserStrapi.features,\n isEnabled: (featureName: string | undefined) =>\n licensedFeatures.some((feature) => feature.name === featureName),\n };\n browserStrapi.projectType = getProjectType({ isEE, planPriceId });\n browserStrapi.ai = ai;\n } catch (err) {\n /**\n * If this fails, we simply don't activate any EE features.\n * Should we warn clearer in the UI?\n */\n console.error(err);\n }\n\n return browserStrapi;\n};\n\nexport { createBrowserStrapi };\n"],"names":["createBrowserStrapi","features","browserStrapi","backendURL","createAbsoluteUrl","process","env","STRAPI_ADMIN_BACKEND_URL","isEE","isTrial","isTrialLicense","telemetryDisabled","STRAPI_TELEMETRY_DISABLED","future","isEnabled","name","featureFlags","SSO","AUDIT_LOGS","REVIEW_WORKFLOWS","projectType","flags","nps","promoteEE","docLinks","ai","enabled","response","fetch","headers","Accept","ok","Error","status","data","licensedFeatures","planPriceId","json","trial","featureName","some","feature","getProjectType","err","console","error"],"mappings":";;;AAOA;;;;;;;IAQA,MAAMA,sBAAsB,OAC1BC,QAAAA,GAAAA;AAEA,IAAA,MAAMC,aAAAA,GAAkC;AACtC;;;;;AAKC,QACDC,UAAAA,EAAYC,iBAAAA,CAAkBC,OAAAA,CAAQC,GAAG,CAACC,wBAAwB,CAAA;QAClEC,IAAAA,EAAM,KAAA;QACNC,OAAAA,EAAS,KAAA;QACTC,cAAAA,EAAgB,KAAA;AAChBC,QAAAA,iBAAAA,EAAmBN,OAAAA,CAAQC,GAAG,CAACM,yBAAyB,KAAK,MAAA;QAC7DC,MAAAA,EAAQ;AACNC,YAAAA,SAAAA,EAAW,CAACC,IAAAA,GAAAA;AACV,gBAAA,OAAOd,QAAAA,EAAUY,MAAAA,GAASE,IAAAA,CAAK,KAAK,IAAA;AACtC,YAAA;AACF,SAAA;QACAC,YAAAA,EAAc;AACZF,YAAAA,SAAAA,EAAW,CAACC,IAAAA,GAAAA;gBACV,OAAOd,QAAAA,GAAWc,IAAAA,CAAK,KAAK,IAAA;AAC9B,YAAA;AACF,SAAA;QACAd,QAAAA,EAAU;YACRgB,GAAAA,EAAK,KAAA;YACLC,UAAAA,EAAY,YAAA;YACZC,gBAAAA,EAAkB,kBAAA;AAClB;;;AAGC,UACDL,WAAW,IAAM;AACnB,SAAA;QACAM,WAAAA,EAAa,WAAA;QACbC,KAAAA,EAAO;YACLC,GAAAA,EAAK,KAAA;YACLC,SAAAA,EAAW,IAAA;YACXC,QAAAA,EAAU;AACZ,SAAA;QACAC,EAAAA,EAAI;YACFC,OAAAA,EAAS;AACX;AACF,KAAA;IAEA,IAAI;AACF;;;;QAKA,MAAMC,QAAAA,GAAW,MAAMC,KAAAA,CAAM,CAAA,EAAG1B,cAAcC,UAAU,CAAC,mBAAmB,CAAC,EAAE;YAC7E0B,OAAAA,EAAS;gBAAEC,MAAAA,EAAQ;AAAmB;AACxC,SAAA,CAAA;QAEA,IAAI,CAACH,QAAAA,CAASI,EAAE,EAAE;AAChB,YAAA,MAAM,IAAIC,KAAAA,CAAM,CAAC,oDAAoD,EAAEL,QAAAA,CAASM,MAAM,CAAA,CAAE,CAAA;AAC1F,QAAA;QAEA,MAAM,EACJC,MAAM,EAAE1B,IAAI,EAAEC,OAAO,EAAER,UAAUkC,gBAAgB,EAAEd,KAAK,EAAEI,EAAE,EAAEW,WAAW,EAAE,EAC5E,GAA4B,MAAMT,SAASU,IAAI,EAAA;;AAGhD,QAAA,MAAMC,QAAQ7B,OAAAA,IAAW,KAAA;AAEzBP,QAAAA,aAAAA,CAAcM,IAAI,GAAGA,IAAAA;AACrBN,QAAAA,aAAAA,CAAcO,OAAO,GAAG6B,KAAAA;AACxBpC,QAAAA,aAAAA,CAAcQ,cAAc,GAAG4B,KAAAA;AAC/BpC,QAAAA,aAAAA,CAAcmB,KAAK,GAAGA,KAAAA;AACtBnB,QAAAA,aAAAA,CAAcD,QAAQ,GAAG;AACvB,YAAA,GAAGC,cAAcD,QAAQ;YACzBa,SAAAA,EAAW,CAACyB,cACVJ,gBAAAA,CAAiBK,IAAI,CAAC,CAACC,OAAAA,GAAYA,OAAAA,CAAQ1B,IAAI,KAAKwB,WAAAA;AACxD,SAAA;QACArC,aAAAA,CAAckB,WAAW,GAAGsB,cAAAA,CAAe;AAAElC,YAAAA,IAAAA;AAAM4B,YAAAA;AAAY,SAAA,CAAA;AAC/DlC,QAAAA,aAAAA,CAAcuB,EAAE,GAAGA,EAAAA;AACrB,IAAA,CAAA,CAAE,OAAOkB,GAAAA,EAAK;AACZ;;;QAIAC,OAAAA,CAAQC,KAAK,CAACF,GAAAA,CAAAA;AAChB,IAAA;IAEA,OAAOzC,aAAAA;AACT;;;;"}
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
- var pipe = require('lodash/fp/pipe');
3
+ var flow = require('lodash/flow');
4
4
  var qs = require('qs');
5
5
  var cookies = require('./cookies.js');
6
6
  var jwt = require('./jwt.js');
7
7
 
8
8
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
9
9
 
10
- var pipe__default = /*#__PURE__*/_interopDefault(pipe);
10
+ var flow__default = /*#__PURE__*/_interopDefault(flow);
11
11
  var qs__default = /*#__PURE__*/_interopDefault(qs);
12
12
 
13
13
  const STORAGE_KEYS = {
@@ -251,6 +251,29 @@ class FetchError extends Error {
251
251
  const isFetchError = (error)=>{
252
252
  return error instanceof FetchError;
253
253
  };
254
+ /**
255
+ * Type guard that checks whether an error comes from an aborted operation,
256
+ * such as a `fetch` cancelled via `AbortController` or timed out via
257
+ * `AbortSignal.timeout()`.
258
+ *
259
+ * Note: if the controller was aborted with a custom reason
260
+ * (`controller.abort(reason)`), the operation rejects with that reason
261
+ * instead of an `AbortError`, and this guard returns `false`. In that case,
262
+ * also check the signal itself:
263
+ *
264
+ * @example
265
+ * try {
266
+ * await fetch(url, { signal: controller.signal });
267
+ * } catch (err) {
268
+ * if (isAbortError(err) || controller.signal.aborted) return;
269
+ * throw err;
270
+ * }
271
+ *
272
+ * @param error - The caught value to check.
273
+ * @returns `true` if `error` is a `DOMException` named `AbortError` or `TimeoutError`.
274
+ */ function isAbortError(error) {
275
+ return error instanceof DOMException && (error.name === 'AbortError' || error.name === 'TimeoutError');
276
+ }
254
277
  /**
255
278
  * @public
256
279
  * @param {FetchConfig} [defaultOptions={}] - Fetch Configs.
@@ -396,7 +419,7 @@ const isFetchError = (error)=>{
396
419
  /**
397
420
  * We use the factory method because the options
398
421
  * are unique to the individual request
399
- */ const makeCreateRequestUrl = (options)=>pipe__default.default(normalizeUrl, addBaseUrl, paramsSerializer(options?.params));
422
+ */ const makeCreateRequestUrl = (options)=>flow__default.default(normalizeUrl, addBaseUrl, paramsSerializer(options?.params));
400
423
  const fetchClient = {
401
424
  get: async (url, options)=>{
402
425
  const createRequestUrl = makeCreateRequestUrl(options);
@@ -502,6 +525,7 @@ exports.ADMIN_REFRESH_LOCK = ADMIN_REFRESH_LOCK;
502
525
  exports.FetchError = FetchError;
503
526
  exports.attemptTokenRefresh = attemptTokenRefresh;
504
527
  exports.getFetchClient = getFetchClient;
528
+ exports.isAbortError = isAbortError;
505
529
  exports.isFetchError = isFetchError;
506
530
  exports.refreshAccessToken = refreshAccessToken;
507
531
  exports.resetSessionExpiredNotification = resetSessionExpiredNotification;