@strapi/strapi 5.9.0 → 5.10.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 (292) hide show
  1. package/dist/admin-test.js +11 -8
  2. package/dist/admin-test.js.map +1 -1
  3. package/dist/admin-test.mjs +1 -1
  4. package/dist/admin-test.mjs.map +1 -1
  5. package/dist/admin.js +36 -42
  6. package/dist/admin.js.map +1 -1
  7. package/dist/admin.mjs +28 -35
  8. package/dist/admin.mjs.map +1 -1
  9. package/dist/chunks/aliases-Ca20Yntz.js +80 -0
  10. package/dist/chunks/aliases-Ca20Yntz.js.map +1 -0
  11. package/dist/chunks/aliases-DQ51KexN.mjs +76 -0
  12. package/dist/chunks/aliases-DQ51KexN.mjs.map +1 -0
  13. package/dist/chunks/build-3I6A92J1.js +59 -0
  14. package/dist/chunks/build-3I6A92J1.js.map +1 -0
  15. package/dist/chunks/build-BqigoS45.mjs +85 -0
  16. package/dist/chunks/build-BqigoS45.mjs.map +1 -0
  17. package/dist/chunks/build-CWUlYFQo.js +87 -0
  18. package/dist/chunks/build-CWUlYFQo.js.map +1 -0
  19. package/dist/chunks/build-gBR43Dth.mjs +57 -0
  20. package/dist/chunks/build-gBR43Dth.mjs.map +1 -0
  21. package/dist/chunks/config-5tFWkbOi.js +154 -0
  22. package/dist/chunks/config-5tFWkbOi.js.map +1 -0
  23. package/dist/chunks/config-BSlsDIVc.mjs +243 -0
  24. package/dist/chunks/config-BSlsDIVc.mjs.map +1 -0
  25. package/dist/chunks/config-CLeubzgx.mjs +150 -0
  26. package/dist/chunks/config-CLeubzgx.mjs.map +1 -0
  27. package/dist/chunks/config-CQ94iNYq.js +247 -0
  28. package/dist/chunks/config-CQ94iNYq.js.map +1 -0
  29. package/dist/chunks/index-DtHH3PFG.mjs +3160 -0
  30. package/dist/chunks/index-DtHH3PFG.mjs.map +1 -0
  31. package/dist/chunks/index-kv_K5f7_.js +3185 -0
  32. package/dist/chunks/index-kv_K5f7_.js.map +1 -0
  33. package/dist/chunks/watch-B7qfL21s.js +146 -0
  34. package/dist/chunks/watch-B7qfL21s.js.map +1 -0
  35. package/dist/chunks/watch-BBDpuCFC.js +133 -0
  36. package/dist/chunks/watch-BBDpuCFC.js.map +1 -0
  37. package/dist/chunks/watch-Bhd-75O5.mjs +131 -0
  38. package/dist/chunks/watch-Bhd-75O5.mjs.map +1 -0
  39. package/dist/chunks/watch-CJr1UoWF.mjs +144 -0
  40. package/dist/chunks/watch-CJr1UoWF.mjs.map +1 -0
  41. package/dist/cli/commands/plugin/init/files/typescript.d.ts +20 -7
  42. package/dist/cli/commands/plugin/init/files/typescript.d.ts.map +1 -1
  43. package/dist/cli/commands/version.d.ts.map +1 -1
  44. package/dist/cli/index.d.ts.map +1 -1
  45. package/dist/cli.js +50 -0
  46. package/dist/cli.js.map +1 -0
  47. package/dist/cli.mjs +43 -0
  48. package/dist/cli.mjs.map +1 -0
  49. package/dist/index.js +11 -8
  50. package/dist/index.js.map +1 -1
  51. package/dist/index.mjs +1 -1
  52. package/dist/index.mjs.map +1 -1
  53. package/dist/node/core/errors.d.ts.map +1 -1
  54. package/dist/node/create-build-context.d.ts +1 -1
  55. package/dist/node/create-build-context.d.ts.map +1 -1
  56. package/package.json +26 -26
  57. package/dist/cli/commands/admin/create-user.js +0 -91
  58. package/dist/cli/commands/admin/create-user.js.map +0 -1
  59. package/dist/cli/commands/admin/create-user.mjs +0 -88
  60. package/dist/cli/commands/admin/create-user.mjs.map +0 -1
  61. package/dist/cli/commands/admin/reset-user-password.js +0 -47
  62. package/dist/cli/commands/admin/reset-user-password.js.map +0 -1
  63. package/dist/cli/commands/admin/reset-user-password.mjs +0 -44
  64. package/dist/cli/commands/admin/reset-user-password.mjs.map +0 -1
  65. package/dist/cli/commands/build.js +0 -24
  66. package/dist/cli/commands/build.js.map +0 -1
  67. package/dist/cli/commands/build.mjs +0 -24
  68. package/dist/cli/commands/build.mjs.map +0 -1
  69. package/dist/cli/commands/components/list.js +0 -27
  70. package/dist/cli/commands/components/list.js.map +0 -1
  71. package/dist/cli/commands/components/list.mjs +0 -24
  72. package/dist/cli/commands/components/list.mjs.map +0 -1
  73. package/dist/cli/commands/configuration/dump.js +0 -43
  74. package/dist/cli/commands/configuration/dump.js.map +0 -1
  75. package/dist/cli/commands/configuration/dump.mjs +0 -41
  76. package/dist/cli/commands/configuration/dump.mjs.map +0 -1
  77. package/dist/cli/commands/configuration/restore.js +0 -142
  78. package/dist/cli/commands/configuration/restore.js.map +0 -1
  79. package/dist/cli/commands/configuration/restore.mjs +0 -139
  80. package/dist/cli/commands/configuration/restore.mjs.map +0 -1
  81. package/dist/cli/commands/console.js +0 -29
  82. package/dist/cli/commands/console.js.map +0 -1
  83. package/dist/cli/commands/console.mjs +0 -27
  84. package/dist/cli/commands/console.mjs.map +0 -1
  85. package/dist/cli/commands/content-types/list.js +0 -27
  86. package/dist/cli/commands/content-types/list.js.map +0 -1
  87. package/dist/cli/commands/content-types/list.mjs +0 -24
  88. package/dist/cli/commands/content-types/list.mjs.map +0 -1
  89. package/dist/cli/commands/controllers/list.js +0 -27
  90. package/dist/cli/commands/controllers/list.js.map +0 -1
  91. package/dist/cli/commands/controllers/list.mjs +0 -24
  92. package/dist/cli/commands/controllers/list.mjs.map +0 -1
  93. package/dist/cli/commands/develop.js +0 -29
  94. package/dist/cli/commands/develop.js.map +0 -1
  95. package/dist/cli/commands/develop.mjs +0 -27
  96. package/dist/cli/commands/develop.mjs.map +0 -1
  97. package/dist/cli/commands/export/action.js +0 -118
  98. package/dist/cli/commands/export/action.js.map +0 -1
  99. package/dist/cli/commands/export/action.mjs +0 -116
  100. package/dist/cli/commands/export/action.mjs.map +0 -1
  101. package/dist/cli/commands/export/command.js +0 -23
  102. package/dist/cli/commands/export/command.js.map +0 -1
  103. package/dist/cli/commands/export/command.mjs +0 -24
  104. package/dist/cli/commands/export/command.mjs.map +0 -1
  105. package/dist/cli/commands/generate.js +0 -35
  106. package/dist/cli/commands/generate.js.map +0 -1
  107. package/dist/cli/commands/generate.mjs +0 -13
  108. package/dist/cli/commands/generate.mjs.map +0 -1
  109. package/dist/cli/commands/hooks/list.js +0 -27
  110. package/dist/cli/commands/hooks/list.js.map +0 -1
  111. package/dist/cli/commands/hooks/list.mjs +0 -24
  112. package/dist/cli/commands/hooks/list.mjs.map +0 -1
  113. package/dist/cli/commands/import/action.js +0 -106
  114. package/dist/cli/commands/import/action.js.map +0 -1
  115. package/dist/cli/commands/import/action.mjs +0 -105
  116. package/dist/cli/commands/import/action.mjs.map +0 -1
  117. package/dist/cli/commands/import/command.js +0 -70
  118. package/dist/cli/commands/import/command.js.map +0 -1
  119. package/dist/cli/commands/import/command.mjs +0 -68
  120. package/dist/cli/commands/import/command.mjs.map +0 -1
  121. package/dist/cli/commands/index.js +0 -63
  122. package/dist/cli/commands/index.js.map +0 -1
  123. package/dist/cli/commands/index.mjs +0 -63
  124. package/dist/cli/commands/index.mjs.map +0 -1
  125. package/dist/cli/commands/middlewares/list.js +0 -27
  126. package/dist/cli/commands/middlewares/list.js.map +0 -1
  127. package/dist/cli/commands/middlewares/list.mjs +0 -24
  128. package/dist/cli/commands/middlewares/list.mjs.map +0 -1
  129. package/dist/cli/commands/policies/list.js +0 -27
  130. package/dist/cli/commands/policies/list.js.map +0 -1
  131. package/dist/cli/commands/policies/list.mjs +0 -24
  132. package/dist/cli/commands/policies/list.mjs.map +0 -1
  133. package/dist/cli/commands/report.js +0 -35
  134. package/dist/cli/commands/report.js.map +0 -1
  135. package/dist/cli/commands/report.mjs +0 -35
  136. package/dist/cli/commands/report.mjs.map +0 -1
  137. package/dist/cli/commands/routes/list.js +0 -31
  138. package/dist/cli/commands/routes/list.js.map +0 -1
  139. package/dist/cli/commands/routes/list.mjs +0 -28
  140. package/dist/cli/commands/routes/list.mjs.map +0 -1
  141. package/dist/cli/commands/services/list.js +0 -27
  142. package/dist/cli/commands/services/list.js.map +0 -1
  143. package/dist/cli/commands/services/list.mjs +0 -24
  144. package/dist/cli/commands/services/list.mjs.map +0 -1
  145. package/dist/cli/commands/start.js +0 -27
  146. package/dist/cli/commands/start.js.map +0 -1
  147. package/dist/cli/commands/start.mjs +0 -24
  148. package/dist/cli/commands/start.mjs.map +0 -1
  149. package/dist/cli/commands/telemetry/disable.js +0 -70
  150. package/dist/cli/commands/telemetry/disable.js.map +0 -1
  151. package/dist/cli/commands/telemetry/disable.mjs +0 -67
  152. package/dist/cli/commands/telemetry/disable.mjs.map +0 -1
  153. package/dist/cli/commands/telemetry/enable.js +0 -89
  154. package/dist/cli/commands/telemetry/enable.js.map +0 -1
  155. package/dist/cli/commands/telemetry/enable.mjs +0 -86
  156. package/dist/cli/commands/telemetry/enable.mjs.map +0 -1
  157. package/dist/cli/commands/templates/generate.js +0 -11
  158. package/dist/cli/commands/templates/generate.js.map +0 -1
  159. package/dist/cli/commands/templates/generate.mjs +0 -11
  160. package/dist/cli/commands/templates/generate.mjs.map +0 -1
  161. package/dist/cli/commands/transfer/action.js +0 -130
  162. package/dist/cli/commands/transfer/action.js.map +0 -1
  163. package/dist/cli/commands/transfer/action.mjs +0 -131
  164. package/dist/cli/commands/transfer/action.mjs.map +0 -1
  165. package/dist/cli/commands/transfer/command.js +0 -85
  166. package/dist/cli/commands/transfer/command.js.map +0 -1
  167. package/dist/cli/commands/transfer/command.mjs +0 -84
  168. package/dist/cli/commands/transfer/command.mjs.map +0 -1
  169. package/dist/cli/commands/ts/generate-types.js +0 -36
  170. package/dist/cli/commands/ts/generate-types.js.map +0 -1
  171. package/dist/cli/commands/ts/generate-types.mjs +0 -34
  172. package/dist/cli/commands/ts/generate-types.mjs.map +0 -1
  173. package/dist/cli/commands/version.js +0 -13
  174. package/dist/cli/commands/version.js.map +0 -1
  175. package/dist/cli/commands/version.mjs +0 -13
  176. package/dist/cli/commands/version.mjs.map +0 -1
  177. package/dist/cli/index.js +0 -79
  178. package/dist/cli/index.js.map +0 -1
  179. package/dist/cli/index.mjs +0 -79
  180. package/dist/cli/index.mjs.map +0 -1
  181. package/dist/cli/utils/commander.js +0 -111
  182. package/dist/cli/utils/commander.js.map +0 -1
  183. package/dist/cli/utils/commander.mjs +0 -108
  184. package/dist/cli/utils/commander.mjs.map +0 -1
  185. package/dist/cli/utils/data-transfer.js +0 -354
  186. package/dist/cli/utils/data-transfer.js.map +0 -1
  187. package/dist/cli/utils/data-transfer.mjs +0 -350
  188. package/dist/cli/utils/data-transfer.mjs.map +0 -1
  189. package/dist/cli/utils/helpers.js +0 -102
  190. package/dist/cli/utils/helpers.js.map +0 -1
  191. package/dist/cli/utils/helpers.mjs +0 -100
  192. package/dist/cli/utils/helpers.mjs.map +0 -1
  193. package/dist/cli/utils/logger.js +0 -137
  194. package/dist/cli/utils/logger.js.map +0 -1
  195. package/dist/cli/utils/logger.mjs +0 -116
  196. package/dist/cli/utils/logger.mjs.map +0 -1
  197. package/dist/cli/utils/telemetry.js +0 -22
  198. package/dist/cli/utils/telemetry.js.map +0 -1
  199. package/dist/cli/utils/telemetry.mjs +0 -22
  200. package/dist/cli/utils/telemetry.mjs.map +0 -1
  201. package/dist/cli/utils/tsconfig.js +0 -26
  202. package/dist/cli/utils/tsconfig.js.map +0 -1
  203. package/dist/cli/utils/tsconfig.mjs +0 -23
  204. package/dist/cli/utils/tsconfig.mjs.map +0 -1
  205. package/dist/node/build.js +0 -76
  206. package/dist/node/build.js.map +0 -1
  207. package/dist/node/build.mjs +0 -58
  208. package/dist/node/build.mjs.map +0 -1
  209. package/dist/node/core/admin-customisations.js +0 -24
  210. package/dist/node/core/admin-customisations.js.map +0 -1
  211. package/dist/node/core/admin-customisations.mjs +0 -22
  212. package/dist/node/core/admin-customisations.mjs.map +0 -1
  213. package/dist/node/core/aliases.js +0 -33
  214. package/dist/node/core/aliases.js.map +0 -1
  215. package/dist/node/core/aliases.mjs +0 -31
  216. package/dist/node/core/aliases.mjs.map +0 -1
  217. package/dist/node/core/config.js +0 -18
  218. package/dist/node/core/config.js.map +0 -1
  219. package/dist/node/core/config.mjs +0 -16
  220. package/dist/node/core/config.mjs.map +0 -1
  221. package/dist/node/core/dependencies.js +0 -163
  222. package/dist/node/core/dependencies.js.map +0 -1
  223. package/dist/node/core/dependencies.mjs +0 -155
  224. package/dist/node/core/dependencies.mjs.map +0 -1
  225. package/dist/node/core/env.js +0 -26
  226. package/dist/node/core/env.js.map +0 -1
  227. package/dist/node/core/env.mjs +0 -23
  228. package/dist/node/core/env.mjs.map +0 -1
  229. package/dist/node/core/errors.js +0 -33
  230. package/dist/node/core/errors.js.map +0 -1
  231. package/dist/node/core/errors.mjs +0 -29
  232. package/dist/node/core/errors.mjs.map +0 -1
  233. package/dist/node/core/files.js +0 -45
  234. package/dist/node/core/files.js.map +0 -1
  235. package/dist/node/core/files.mjs +0 -43
  236. package/dist/node/core/files.mjs.map +0 -1
  237. package/dist/node/core/managers.js +0 -17
  238. package/dist/node/core/managers.js.map +0 -1
  239. package/dist/node/core/managers.mjs +0 -17
  240. package/dist/node/core/managers.mjs.map +0 -1
  241. package/dist/node/core/monorepo.js +0 -23
  242. package/dist/node/core/monorepo.js.map +0 -1
  243. package/dist/node/core/monorepo.mjs +0 -20
  244. package/dist/node/core/monorepo.mjs.map +0 -1
  245. package/dist/node/core/plugins.js +0 -116
  246. package/dist/node/core/plugins.js.map +0 -1
  247. package/dist/node/core/plugins.mjs +0 -111
  248. package/dist/node/core/plugins.mjs.map +0 -1
  249. package/dist/node/core/timer.js +0 -27
  250. package/dist/node/core/timer.js.map +0 -1
  251. package/dist/node/core/timer.mjs +0 -27
  252. package/dist/node/core/timer.mjs.map +0 -1
  253. package/dist/node/create-build-context.js +0 -101
  254. package/dist/node/create-build-context.js.map +0 -1
  255. package/dist/node/create-build-context.mjs +0 -96
  256. package/dist/node/create-build-context.mjs.map +0 -1
  257. package/dist/node/develop.js +0 -275
  258. package/dist/node/develop.js.map +0 -1
  259. package/dist/node/develop.mjs +0 -252
  260. package/dist/node/develop.mjs.map +0 -1
  261. package/dist/node/staticFiles.js +0 -102
  262. package/dist/node/staticFiles.js.map +0 -1
  263. package/dist/node/staticFiles.mjs +0 -76
  264. package/dist/node/staticFiles.mjs.map +0 -1
  265. package/dist/node/vite/build.js +0 -34
  266. package/dist/node/vite/build.js.map +0 -1
  267. package/dist/node/vite/build.mjs +0 -12
  268. package/dist/node/vite/build.mjs.map +0 -1
  269. package/dist/node/vite/config.js +0 -106
  270. package/dist/node/vite/config.js.map +0 -1
  271. package/dist/node/vite/config.mjs +0 -103
  272. package/dist/node/vite/config.mjs.map +0 -1
  273. package/dist/node/vite/plugins.js +0 -43
  274. package/dist/node/vite/plugins.js.map +0 -1
  275. package/dist/node/vite/plugins.mjs +0 -43
  276. package/dist/node/vite/plugins.mjs.map +0 -1
  277. package/dist/node/vite/watch.js +0 -111
  278. package/dist/node/vite/watch.js.map +0 -1
  279. package/dist/node/vite/watch.mjs +0 -85
  280. package/dist/node/vite/watch.mjs.map +0 -1
  281. package/dist/node/webpack/build.js +0 -41
  282. package/dist/node/webpack/build.js.map +0 -1
  283. package/dist/node/webpack/build.mjs +0 -39
  284. package/dist/node/webpack/build.mjs.map +0 -1
  285. package/dist/node/webpack/config.js +0 -259
  286. package/dist/node/webpack/config.js.map +0 -1
  287. package/dist/node/webpack/config.mjs +0 -228
  288. package/dist/node/webpack/config.mjs.map +0 -1
  289. package/dist/node/webpack/watch.js +0 -95
  290. package/dist/node/webpack/watch.js.map +0 -1
  291. package/dist/node/webpack/watch.mjs +0 -90
  292. package/dist/node/webpack/watch.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"aliases.js","sources":["../../../src/node/core/aliases.ts"],"sourcesContent":["import path from 'node:path';\nimport { StrapiMonorepo } from './monorepo';\n\n/**\n * The path mappings/aliases used by various tools in the monorepo to map imported modules to\n * source files in order to speed up rebuilding and avoid having a separate watcher process to build\n * from `src` to `lib`.\n *\n * This file is currently read by:\n * - Webpack when running the dev server (only when running in this monorepo)\n */\nconst devAliases: Record<string, string> = {\n '@strapi/admin/strapi-admin': './packages/core/admin/admin/src',\n '@strapi/content-releases/strapi-admin': './packages/core/content-releases/admin/src',\n '@strapi/content-manager/strapi-admin': './packages/core/content-manager/admin/src',\n '@strapi/content-type-builder/strapi-admin': './packages/core/content-type-builder/admin/src',\n '@strapi/email/strapi-admin': './packages/core/email/admin/src',\n '@strapi/upload/strapi-admin': './packages/core/upload/admin/src',\n '@strapi/plugin-cloud/strapi-admin': './packages/plugins/cloud/admin/src',\n '@strapi/plugin-color-picker/strapi-admin': './packages/plugins/color-picker/admin/src',\n '@strapi/plugin-documentation/strapi-admin': './packages/plugins/documentation/admin/src',\n '@strapi/plugin-graphql/strapi-admin': './packages/plugins/graphql/admin/src',\n '@strapi/i18n/strapi-admin': './packages/plugins/i18n/admin/src',\n '@strapi/plugin-sentry/strapi-admin': './packages/plugins/sentry/admin/src',\n '@strapi/plugin-users-permissions/strapi-admin': './packages/plugins/users-permissions/admin/src',\n '@strapi/review-workflows/strapi-admin': './packages/core/review-workflows/admin/src',\n};\n\nconst getMonorepoAliases = ({ monorepo }: { monorepo?: StrapiMonorepo }) => {\n if (!monorepo?.path) {\n return {};\n }\n\n return Object.fromEntries(\n Object.entries(devAliases).map(([key, modulePath]) => {\n return [key, path.join(monorepo.path, modulePath)];\n })\n );\n};\n\nexport { getMonorepoAliases };\n"],"names":["path"],"mappings":";;;;;AAWA,MAAM,aAAqC;AAAA,EACzC,8BAA8B;AAAA,EAC9B,yCAAyC;AAAA,EACzC,wCAAwC;AAAA,EACxC,6CAA6C;AAAA,EAC7C,8BAA8B;AAAA,EAC9B,+BAA+B;AAAA,EAC/B,qCAAqC;AAAA,EACrC,4CAA4C;AAAA,EAC5C,6CAA6C;AAAA,EAC7C,uCAAuC;AAAA,EACvC,6BAA6B;AAAA,EAC7B,sCAAsC;AAAA,EACtC,iDAAiD;AAAA,EACjD,yCAAyC;AAC3C;AAEA,MAAM,qBAAqB,CAAC,EAAE,eAA8C;AACtE,MAAA,CAAC,UAAU,MAAM;AACnB,WAAO,CAAC;AAAA,EAAA;AAGV,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,UAAU,EAAE,IAAI,CAAC,CAAC,KAAK,UAAU,MAAM;AACpD,aAAO,CAAC,KAAKA,sBAAK,KAAK,SAAS,MAAM,UAAU,CAAC;AAAA,IAClD,CAAA;AAAA,EACH;AACF;;"}
@@ -1,31 +0,0 @@
1
- import path from "node:path";
2
- const devAliases = {
3
- "@strapi/admin/strapi-admin": "./packages/core/admin/admin/src",
4
- "@strapi/content-releases/strapi-admin": "./packages/core/content-releases/admin/src",
5
- "@strapi/content-manager/strapi-admin": "./packages/core/content-manager/admin/src",
6
- "@strapi/content-type-builder/strapi-admin": "./packages/core/content-type-builder/admin/src",
7
- "@strapi/email/strapi-admin": "./packages/core/email/admin/src",
8
- "@strapi/upload/strapi-admin": "./packages/core/upload/admin/src",
9
- "@strapi/plugin-cloud/strapi-admin": "./packages/plugins/cloud/admin/src",
10
- "@strapi/plugin-color-picker/strapi-admin": "./packages/plugins/color-picker/admin/src",
11
- "@strapi/plugin-documentation/strapi-admin": "./packages/plugins/documentation/admin/src",
12
- "@strapi/plugin-graphql/strapi-admin": "./packages/plugins/graphql/admin/src",
13
- "@strapi/i18n/strapi-admin": "./packages/plugins/i18n/admin/src",
14
- "@strapi/plugin-sentry/strapi-admin": "./packages/plugins/sentry/admin/src",
15
- "@strapi/plugin-users-permissions/strapi-admin": "./packages/plugins/users-permissions/admin/src",
16
- "@strapi/review-workflows/strapi-admin": "./packages/core/review-workflows/admin/src"
17
- };
18
- const getMonorepoAliases = ({ monorepo }) => {
19
- if (!monorepo?.path) {
20
- return {};
21
- }
22
- return Object.fromEntries(
23
- Object.entries(devAliases).map(([key, modulePath]) => {
24
- return [key, path.join(monorepo.path, modulePath)];
25
- })
26
- );
27
- };
28
- export {
29
- getMonorepoAliases
30
- };
31
- //# sourceMappingURL=aliases.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aliases.mjs","sources":["../../../src/node/core/aliases.ts"],"sourcesContent":["import path from 'node:path';\nimport { StrapiMonorepo } from './monorepo';\n\n/**\n * The path mappings/aliases used by various tools in the monorepo to map imported modules to\n * source files in order to speed up rebuilding and avoid having a separate watcher process to build\n * from `src` to `lib`.\n *\n * This file is currently read by:\n * - Webpack when running the dev server (only when running in this monorepo)\n */\nconst devAliases: Record<string, string> = {\n '@strapi/admin/strapi-admin': './packages/core/admin/admin/src',\n '@strapi/content-releases/strapi-admin': './packages/core/content-releases/admin/src',\n '@strapi/content-manager/strapi-admin': './packages/core/content-manager/admin/src',\n '@strapi/content-type-builder/strapi-admin': './packages/core/content-type-builder/admin/src',\n '@strapi/email/strapi-admin': './packages/core/email/admin/src',\n '@strapi/upload/strapi-admin': './packages/core/upload/admin/src',\n '@strapi/plugin-cloud/strapi-admin': './packages/plugins/cloud/admin/src',\n '@strapi/plugin-color-picker/strapi-admin': './packages/plugins/color-picker/admin/src',\n '@strapi/plugin-documentation/strapi-admin': './packages/plugins/documentation/admin/src',\n '@strapi/plugin-graphql/strapi-admin': './packages/plugins/graphql/admin/src',\n '@strapi/i18n/strapi-admin': './packages/plugins/i18n/admin/src',\n '@strapi/plugin-sentry/strapi-admin': './packages/plugins/sentry/admin/src',\n '@strapi/plugin-users-permissions/strapi-admin': './packages/plugins/users-permissions/admin/src',\n '@strapi/review-workflows/strapi-admin': './packages/core/review-workflows/admin/src',\n};\n\nconst getMonorepoAliases = ({ monorepo }: { monorepo?: StrapiMonorepo }) => {\n if (!monorepo?.path) {\n return {};\n }\n\n return Object.fromEntries(\n Object.entries(devAliases).map(([key, modulePath]) => {\n return [key, path.join(monorepo.path, modulePath)];\n })\n );\n};\n\nexport { getMonorepoAliases };\n"],"names":[],"mappings":";AAWA,MAAM,aAAqC;AAAA,EACzC,8BAA8B;AAAA,EAC9B,yCAAyC;AAAA,EACzC,wCAAwC;AAAA,EACxC,6CAA6C;AAAA,EAC7C,8BAA8B;AAAA,EAC9B,+BAA+B;AAAA,EAC/B,qCAAqC;AAAA,EACrC,4CAA4C;AAAA,EAC5C,6CAA6C;AAAA,EAC7C,uCAAuC;AAAA,EACvC,6BAA6B;AAAA,EAC7B,sCAAsC;AAAA,EACtC,iDAAiD;AAAA,EACjD,yCAAyC;AAC3C;AAEA,MAAM,qBAAqB,CAAC,EAAE,eAA8C;AACtE,MAAA,CAAC,UAAU,MAAM;AACnB,WAAO,CAAC;AAAA,EAAA;AAGV,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,UAAU,EAAE,IAAI,CAAC,CAAC,KAAK,UAAU,MAAM;AACpD,aAAO,CAAC,KAAK,KAAK,KAAK,SAAS,MAAM,UAAU,CAAC;AAAA,IAClD,CAAA;AAAA,EACH;AACF;"}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const path = require("node:path");
4
- const files = require("./files.js");
5
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
6
- const path__default = /* @__PURE__ */ _interopDefault(path);
7
- const getUserConfig = async (fileNames, ctx) => {
8
- for (const file of fileNames) {
9
- const filePath = path__default.default.join(ctx.appDir, "src", "admin", file);
10
- const configFile = await files.loadFile(filePath);
11
- if (configFile) {
12
- return configFile;
13
- }
14
- }
15
- return void 0;
16
- };
17
- exports.getUserConfig = getUserConfig;
18
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sources":["../../../src/node/core/config.ts"],"sourcesContent":["import path from 'node:path';\n\nimport type { BuildContext } from '../create-build-context';\nimport { loadFile } from './files';\n\nconst getUserConfig = async <TConfig>(\n fileNames: string[],\n ctx: BuildContext\n): Promise<TConfig | undefined> => {\n for (const file of fileNames) {\n const filePath = path.join(ctx.appDir, 'src', 'admin', file);\n const configFile = await loadFile(filePath);\n\n if (configFile) {\n return configFile;\n }\n }\n\n return undefined;\n};\n\nexport { getUserConfig };\n"],"names":["path","loadFile"],"mappings":";;;;;;AAKM,MAAA,gBAAgB,OACpB,WACA,QACiC;AACjC,aAAW,QAAQ,WAAW;AAC5B,UAAM,WAAWA,cAAK,QAAA,KAAK,IAAI,QAAQ,OAAO,SAAS,IAAI;AACrD,UAAA,aAAa,MAAMC,MAAA,SAAS,QAAQ;AAE1C,QAAI,YAAY;AACP,aAAA;AAAA,IAAA;AAAA,EACT;AAGK,SAAA;AACT;;"}
@@ -1,16 +0,0 @@
1
- import path from "node:path";
2
- import { loadFile } from "./files.mjs";
3
- const getUserConfig = async (fileNames, ctx) => {
4
- for (const file of fileNames) {
5
- const filePath = path.join(ctx.appDir, "src", "admin", file);
6
- const configFile = await loadFile(filePath);
7
- if (configFile) {
8
- return configFile;
9
- }
10
- }
11
- return void 0;
12
- };
13
- export {
14
- getUserConfig
15
- };
16
- //# sourceMappingURL=config.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.mjs","sources":["../../../src/node/core/config.ts"],"sourcesContent":["import path from 'node:path';\n\nimport type { BuildContext } from '../create-build-context';\nimport { loadFile } from './files';\n\nconst getUserConfig = async <TConfig>(\n fileNames: string[],\n ctx: BuildContext\n): Promise<TConfig | undefined> => {\n for (const file of fileNames) {\n const filePath = path.join(ctx.appDir, 'src', 'admin', file);\n const configFile = await loadFile(filePath);\n\n if (configFile) {\n return configFile;\n }\n }\n\n return undefined;\n};\n\nexport { getUserConfig };\n"],"names":[],"mappings":";;AAKM,MAAA,gBAAgB,OACpB,WACA,QACiC;AACjC,aAAW,QAAQ,WAAW;AAC5B,UAAM,WAAW,KAAK,KAAK,IAAI,QAAQ,OAAO,SAAS,IAAI;AACrD,UAAA,aAAa,MAAM,SAAS,QAAQ;AAE1C,QAAI,YAAY;AACP,aAAA;AAAA,IAAA;AAAA,EACT;AAGK,SAAA;AACT;"}
@@ -1,163 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const os = require("node:os");
4
- const fs = require("node:fs/promises");
5
- const path = require("node:path");
6
- const semver = require("semver");
7
- const resolveFrom = require("resolve-from");
8
- const execa = require("execa");
9
- const readPkgUp = require("read-pkg-up");
10
- const managers = require("./managers.js");
11
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
12
- const os__default = /* @__PURE__ */ _interopDefault(os);
13
- const fs__default = /* @__PURE__ */ _interopDefault(fs);
14
- const path__default = /* @__PURE__ */ _interopDefault(path);
15
- const semver__default = /* @__PURE__ */ _interopDefault(semver);
16
- const resolveFrom__default = /* @__PURE__ */ _interopDefault(resolveFrom);
17
- const execa__default = /* @__PURE__ */ _interopDefault(execa);
18
- const readPkgUp__default = /* @__PURE__ */ _interopDefault(readPkgUp);
19
- const PEER_DEPS = {
20
- react: "^18.0.0",
21
- "react-dom": "^18.0.0",
22
- "react-router-dom": "^6.0.0",
23
- "styled-components": "^6.0.0"
24
- };
25
- const checkRequiredDependencies = async ({
26
- cwd,
27
- logger
28
- }) => {
29
- if (process.env.USE_EXPERIMENTAL_DEPENDENCIES === "true") {
30
- logger.warn("You are using experimental dependencies that may not be compatible with Strapi.");
31
- return { didInstall: false };
32
- }
33
- const pkg = await readPkgUp__default.default({ cwd });
34
- if (!pkg) {
35
- throw new Error(`Could not find package.json at path: ${cwd}`);
36
- }
37
- logger.debug("Loaded package.json:", os__default.default.EOL, pkg.packageJson);
38
- const { install, review } = Object.entries(PEER_DEPS).reduce(
39
- (acc, [name, version]) => {
40
- if (!pkg.packageJson.dependencies) {
41
- throw new Error(`Could not find dependencies in package.json at path: ${cwd}`);
42
- }
43
- const declaredVersion = pkg.packageJson.dependencies[name];
44
- if (!declaredVersion) {
45
- acc.install.push({
46
- name,
47
- wantedVersion: version
48
- });
49
- } else {
50
- acc.review.push({
51
- name,
52
- wantedVersion: version,
53
- declaredVersion
54
- });
55
- }
56
- return acc;
57
- },
58
- {
59
- install: [],
60
- review: []
61
- }
62
- );
63
- if (install.length > 0) {
64
- logger.info(
65
- "The Strapi admin needs to install the following dependencies:",
66
- os__default.default.EOL,
67
- install.map(({ name, wantedVersion }) => ` - ${name}@${wantedVersion}`).join(os__default.default.EOL)
68
- );
69
- await installDependencies(install, {
70
- cwd,
71
- logger
72
- });
73
- const [file, ...args] = process.argv;
74
- await execa__default.default(file, args, { cwd, stdio: "inherit" });
75
- return { didInstall: true };
76
- }
77
- if (review.length) {
78
- const errors = [];
79
- for (const dep of review) {
80
- let minDeclaredVersion = null;
81
- try {
82
- minDeclaredVersion = semver__default.default.minVersion(dep.declaredVersion);
83
- } catch (err) {
84
- }
85
- if (!minDeclaredVersion) {
86
- errors.push(
87
- `The declared dependency, ${dep.name} has an invalid version in package.json: ${dep.declaredVersion}`
88
- );
89
- } else if (!semver__default.default.satisfies(minDeclaredVersion, dep.wantedVersion)) {
90
- logger.warn(
91
- [
92
- `Declared version of ${dep.name} (${minDeclaredVersion}) is not compatible with the version required by Strapi (${dep.wantedVersion}).`,
93
- "You may experience issues, we recommend you change this."
94
- ].join(os__default.default.EOL)
95
- );
96
- }
97
- const installedVersion = await getModuleVersion(dep.name, cwd);
98
- if (!installedVersion) {
99
- errors.push(
100
- `The declared dependency, ${dep.name} is not installed. You should install before re-running this command`
101
- );
102
- } else if (!semver__default.default.satisfies(installedVersion, dep.wantedVersion)) {
103
- logger.warn(
104
- [
105
- `Declared version of ${dep.name} (${installedVersion}) is not compatible with the version required by Strapi (${dep.wantedVersion}).`,
106
- "You may experience issues, we recommend you change this."
107
- ].join(os__default.default.EOL)
108
- );
109
- }
110
- }
111
- if (errors.length > 0 && process.env.NODE_ENV === "development") {
112
- throw new Error(`${os__default.default.EOL}- ${errors.join(`${os__default.default.EOL}- `)}`);
113
- }
114
- }
115
- return { didInstall: false };
116
- };
117
- const getModule = async (name, cwd) => {
118
- const modulePackagePath = resolveFrom__default.default.silent(cwd, path__default.default.join(name, "package.json"));
119
- if (!modulePackagePath) {
120
- return null;
121
- }
122
- const file = await fs__default.default.readFile(modulePackagePath, "utf8").then((res) => JSON.parse(res));
123
- return file;
124
- };
125
- const getModuleVersion = async (name, cwd) => {
126
- const pkg = await getModule(name, cwd);
127
- return pkg?.version || null;
128
- };
129
- const installDependencies = async (install, { cwd, logger }) => {
130
- const packageManager = managers.getPackageManager();
131
- if (!packageManager) {
132
- logger.error(
133
- "Could not find a supported package manager, please install the dependencies manually."
134
- );
135
- process.exit(1);
136
- }
137
- const execOptions = {
138
- encoding: "utf8",
139
- cwd,
140
- stdio: "inherit"
141
- };
142
- const packages = install.map(({ name, wantedVersion }) => `${name}@${wantedVersion}`);
143
- let result;
144
- if (packageManager === "npm") {
145
- const npmArgs = ["install", "--legacy-peer-deps", "--save", ...packages];
146
- logger.info(`Running 'npm ${npmArgs.join(" ")}'`);
147
- result = await execa__default.default("npm", npmArgs, execOptions);
148
- } else if (packageManager === "yarn") {
149
- const yarnArgs = ["add", ...packages];
150
- logger.info(`Running 'yarn ${yarnArgs.join(" ")}'`);
151
- result = await execa__default.default("yarn", yarnArgs, execOptions);
152
- } else if (packageManager === "pnpm") {
153
- const pnpmArgs = ["add", "--save-prod", ...packages];
154
- logger.info(`Running 'pnpm ${pnpmArgs.join(" ")}'`);
155
- result = await execa__default.default("pnpm", pnpmArgs, execOptions);
156
- }
157
- if (result?.exitCode || result?.failed) {
158
- throw new Error("Package installation failed");
159
- }
160
- };
161
- exports.checkRequiredDependencies = checkRequiredDependencies;
162
- exports.getModule = getModule;
163
- //# sourceMappingURL=dependencies.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dependencies.js","sources":["../../../src/node/core/dependencies.ts"],"sourcesContent":["import os from 'node:os';\nimport fs from 'node:fs/promises';\nimport path from 'node:path';\nimport semver, { SemVer } from 'semver';\nimport resolveFrom from 'resolve-from';\nimport execa, { CommonOptions, ExecaReturnValue } from 'execa';\nimport readPkgUp, { PackageJson } from 'read-pkg-up';\nimport type { BuildOptions } from '../build';\nimport { getPackageManager } from './managers';\n\n/**\n * From V5 this will be imported from the package.json of `@strapi/strapi`.\n */\nconst PEER_DEPS = {\n react: '^18.0.0',\n 'react-dom': '^18.0.0',\n 'react-router-dom': '^6.0.0',\n 'styled-components': '^6.0.0',\n};\n\ninterface CheckRequiredDependenciesResult {\n didInstall: boolean;\n}\n\ninterface DepToInstall {\n name: string;\n wantedVersion: string;\n declaredVersion?: never;\n}\n\n/**\n * Checks the user's project that it has declared and installed the required dependencies\n * needed by the Strapi admin project. Whilst generally speaking most modules will be\n * declared by the actual packages there are some packages where you only really want one of\n * and thus they are declared as peer dependencies – react / styled-components / etc.\n *\n * If these deps are not installed or declared, then we prompt the user to correct this. In\n * V4 this is not a hard requirement, but in V5 it will be. Might as well get people started now.\n */\nconst checkRequiredDependencies = async ({\n cwd,\n logger,\n}: Pick<BuildOptions, 'cwd' | 'logger'>): Promise<CheckRequiredDependenciesResult> => {\n /**\n * This enables us to use experimental deps for libraries like\n * react or styled-components. This is useful for testing against.\n */\n if (process.env.USE_EXPERIMENTAL_DEPENDENCIES === 'true') {\n logger.warn('You are using experimental dependencies that may not be compatible with Strapi.');\n return { didInstall: false };\n }\n\n const pkg = await readPkgUp({ cwd });\n\n if (!pkg) {\n throw new Error(`Could not find package.json at path: ${cwd}`);\n }\n\n logger.debug('Loaded package.json:', os.EOL, pkg.packageJson);\n\n interface DepToReview {\n name: string;\n wantedVersion: string;\n declaredVersion: string;\n }\n\n /**\n * Run through each of the peer deps and figure out if they need to be\n * installed or they need their version checked against.\n */\n const { install, review } = Object.entries(PEER_DEPS).reduce<{\n install: DepToInstall[];\n review: DepToReview[];\n }>(\n (acc, [name, version]) => {\n if (!pkg.packageJson.dependencies) {\n throw new Error(`Could not find dependencies in package.json at path: ${cwd}`);\n }\n\n const declaredVersion = pkg.packageJson.dependencies[name];\n\n if (!declaredVersion) {\n acc.install.push({\n name,\n wantedVersion: version,\n });\n } else {\n acc.review.push({\n name,\n wantedVersion: version,\n declaredVersion,\n });\n }\n\n return acc;\n },\n {\n install: [],\n review: [],\n }\n );\n\n if (install.length > 0) {\n logger.info(\n 'The Strapi admin needs to install the following dependencies:',\n os.EOL,\n install.map(({ name, wantedVersion }) => ` - ${name}@${wantedVersion}`).join(os.EOL)\n );\n\n await installDependencies(install, {\n cwd,\n logger,\n });\n\n const [file, ...args] = process.argv;\n\n /**\n * Re-run the same command after installation e.g. strapi build because the yarn.lock might\n * not be the same and could break installations. It's not the best solution, but it works.\n */\n await execa(file, args, { cwd, stdio: 'inherit' });\n return { didInstall: true };\n }\n\n if (review.length) {\n const errors: string[] = [];\n\n for (const dep of review) {\n // The version specified in package.json could be incorrect, eg `foo`\n let minDeclaredVersion: SemVer | null = null;\n try {\n minDeclaredVersion = semver.minVersion(dep.declaredVersion);\n } catch (err) {\n // Intentional fall-through (variable will be left as null, throwing below)\n }\n\n if (!minDeclaredVersion) {\n errors.push(\n `The declared dependency, ${dep.name} has an invalid version in package.json: ${dep.declaredVersion}`\n );\n } else if (!semver.satisfies(minDeclaredVersion, dep.wantedVersion)) {\n /**\n * The delcared version should be semver compatible with our required version\n * of the dependency. If it's not, we should advise the user to change it.\n */\n logger.warn(\n [\n `Declared version of ${dep.name} (${minDeclaredVersion}) is not compatible with the version required by Strapi (${dep.wantedVersion}).`,\n 'You may experience issues, we recommend you change this.',\n ].join(os.EOL)\n );\n }\n\n const installedVersion = await getModuleVersion(dep.name, cwd);\n\n if (!installedVersion) {\n /**\n * TODO: when we know the packageManager we can advise the actual install command.\n */\n errors.push(\n `The declared dependency, ${dep.name} is not installed. You should install before re-running this command`\n );\n } else if (!semver.satisfies(installedVersion, dep.wantedVersion)) {\n logger.warn(\n [\n `Declared version of ${dep.name} (${installedVersion}) is not compatible with the version required by Strapi (${dep.wantedVersion}).`,\n 'You may experience issues, we recommend you change this.',\n ].join(os.EOL)\n );\n }\n }\n\n if (errors.length > 0 && process.env.NODE_ENV === 'development') {\n throw new Error(`${os.EOL}- ${errors.join(`${os.EOL}- `)}`);\n }\n }\n\n return { didInstall: false };\n};\n\nconst getModule = async (name: string, cwd: string): Promise<PackageJson | null> => {\n const modulePackagePath = resolveFrom.silent(cwd, path.join(name, 'package.json'));\n if (!modulePackagePath) {\n return null;\n }\n const file = await fs.readFile(modulePackagePath, 'utf8').then((res) => JSON.parse(res));\n\n return file;\n};\n\nconst getModuleVersion = async (name: string, cwd: string): Promise<string | null> => {\n const pkg = await getModule(name, cwd);\n\n return pkg?.version || null;\n};\n\nconst installDependencies = async (\n install: DepToInstall[],\n { cwd, logger }: Pick<BuildOptions, 'cwd' | 'logger'>\n) => {\n const packageManager = getPackageManager();\n\n if (!packageManager) {\n logger.error(\n 'Could not find a supported package manager, please install the dependencies manually.'\n );\n process.exit(1);\n }\n\n const execOptions: CommonOptions<'utf8'> = {\n encoding: 'utf8',\n cwd,\n stdio: 'inherit',\n };\n\n const packages = install.map(({ name, wantedVersion }) => `${name}@${wantedVersion}`);\n\n let result: ExecaReturnValue<string> | undefined;\n\n if (packageManager === 'npm') {\n const npmArgs = ['install', '--legacy-peer-deps', '--save', ...packages];\n logger.info(`Running 'npm ${npmArgs.join(' ')}'`);\n result = await execa('npm', npmArgs, execOptions);\n } else if (packageManager === 'yarn') {\n const yarnArgs = ['add', ...packages];\n logger.info(`Running 'yarn ${yarnArgs.join(' ')}'`);\n result = await execa('yarn', yarnArgs, execOptions);\n } else if (packageManager === 'pnpm') {\n const pnpmArgs = ['add', '--save-prod', ...packages];\n logger.info(`Running 'pnpm ${pnpmArgs.join(' ')}'`);\n result = await execa('pnpm', pnpmArgs, execOptions);\n }\n\n if (result?.exitCode || result?.failed) {\n throw new Error('Package installation failed');\n }\n};\n\nexport { checkRequiredDependencies, getModule };\nexport type { CheckRequiredDependenciesResult, PackageJson };\n"],"names":["readPkgUp","os","execa","semver","resolveFrom","path","fs","getPackageManager"],"mappings":"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"}
@@ -1,155 +0,0 @@
1
- import os from "node:os";
2
- import fs from "node:fs/promises";
3
- import path from "node:path";
4
- import semver from "semver";
5
- import resolveFrom from "resolve-from";
6
- import execa from "execa";
7
- import readPkgUp from "read-pkg-up";
8
- import { getPackageManager } from "./managers.mjs";
9
- const PEER_DEPS = {
10
- react: "^18.0.0",
11
- "react-dom": "^18.0.0",
12
- "react-router-dom": "^6.0.0",
13
- "styled-components": "^6.0.0"
14
- };
15
- const checkRequiredDependencies = async ({
16
- cwd,
17
- logger
18
- }) => {
19
- if (process.env.USE_EXPERIMENTAL_DEPENDENCIES === "true") {
20
- logger.warn("You are using experimental dependencies that may not be compatible with Strapi.");
21
- return { didInstall: false };
22
- }
23
- const pkg = await readPkgUp({ cwd });
24
- if (!pkg) {
25
- throw new Error(`Could not find package.json at path: ${cwd}`);
26
- }
27
- logger.debug("Loaded package.json:", os.EOL, pkg.packageJson);
28
- const { install, review } = Object.entries(PEER_DEPS).reduce(
29
- (acc, [name, version]) => {
30
- if (!pkg.packageJson.dependencies) {
31
- throw new Error(`Could not find dependencies in package.json at path: ${cwd}`);
32
- }
33
- const declaredVersion = pkg.packageJson.dependencies[name];
34
- if (!declaredVersion) {
35
- acc.install.push({
36
- name,
37
- wantedVersion: version
38
- });
39
- } else {
40
- acc.review.push({
41
- name,
42
- wantedVersion: version,
43
- declaredVersion
44
- });
45
- }
46
- return acc;
47
- },
48
- {
49
- install: [],
50
- review: []
51
- }
52
- );
53
- if (install.length > 0) {
54
- logger.info(
55
- "The Strapi admin needs to install the following dependencies:",
56
- os.EOL,
57
- install.map(({ name, wantedVersion }) => ` - ${name}@${wantedVersion}`).join(os.EOL)
58
- );
59
- await installDependencies(install, {
60
- cwd,
61
- logger
62
- });
63
- const [file, ...args] = process.argv;
64
- await execa(file, args, { cwd, stdio: "inherit" });
65
- return { didInstall: true };
66
- }
67
- if (review.length) {
68
- const errors = [];
69
- for (const dep of review) {
70
- let minDeclaredVersion = null;
71
- try {
72
- minDeclaredVersion = semver.minVersion(dep.declaredVersion);
73
- } catch (err) {
74
- }
75
- if (!minDeclaredVersion) {
76
- errors.push(
77
- `The declared dependency, ${dep.name} has an invalid version in package.json: ${dep.declaredVersion}`
78
- );
79
- } else if (!semver.satisfies(minDeclaredVersion, dep.wantedVersion)) {
80
- logger.warn(
81
- [
82
- `Declared version of ${dep.name} (${minDeclaredVersion}) is not compatible with the version required by Strapi (${dep.wantedVersion}).`,
83
- "You may experience issues, we recommend you change this."
84
- ].join(os.EOL)
85
- );
86
- }
87
- const installedVersion = await getModuleVersion(dep.name, cwd);
88
- if (!installedVersion) {
89
- errors.push(
90
- `The declared dependency, ${dep.name} is not installed. You should install before re-running this command`
91
- );
92
- } else if (!semver.satisfies(installedVersion, dep.wantedVersion)) {
93
- logger.warn(
94
- [
95
- `Declared version of ${dep.name} (${installedVersion}) is not compatible with the version required by Strapi (${dep.wantedVersion}).`,
96
- "You may experience issues, we recommend you change this."
97
- ].join(os.EOL)
98
- );
99
- }
100
- }
101
- if (errors.length > 0 && process.env.NODE_ENV === "development") {
102
- throw new Error(`${os.EOL}- ${errors.join(`${os.EOL}- `)}`);
103
- }
104
- }
105
- return { didInstall: false };
106
- };
107
- const getModule = async (name, cwd) => {
108
- const modulePackagePath = resolveFrom.silent(cwd, path.join(name, "package.json"));
109
- if (!modulePackagePath) {
110
- return null;
111
- }
112
- const file = await fs.readFile(modulePackagePath, "utf8").then((res) => JSON.parse(res));
113
- return file;
114
- };
115
- const getModuleVersion = async (name, cwd) => {
116
- const pkg = await getModule(name, cwd);
117
- return pkg?.version || null;
118
- };
119
- const installDependencies = async (install, { cwd, logger }) => {
120
- const packageManager = getPackageManager();
121
- if (!packageManager) {
122
- logger.error(
123
- "Could not find a supported package manager, please install the dependencies manually."
124
- );
125
- process.exit(1);
126
- }
127
- const execOptions = {
128
- encoding: "utf8",
129
- cwd,
130
- stdio: "inherit"
131
- };
132
- const packages = install.map(({ name, wantedVersion }) => `${name}@${wantedVersion}`);
133
- let result;
134
- if (packageManager === "npm") {
135
- const npmArgs = ["install", "--legacy-peer-deps", "--save", ...packages];
136
- logger.info(`Running 'npm ${npmArgs.join(" ")}'`);
137
- result = await execa("npm", npmArgs, execOptions);
138
- } else if (packageManager === "yarn") {
139
- const yarnArgs = ["add", ...packages];
140
- logger.info(`Running 'yarn ${yarnArgs.join(" ")}'`);
141
- result = await execa("yarn", yarnArgs, execOptions);
142
- } else if (packageManager === "pnpm") {
143
- const pnpmArgs = ["add", "--save-prod", ...packages];
144
- logger.info(`Running 'pnpm ${pnpmArgs.join(" ")}'`);
145
- result = await execa("pnpm", pnpmArgs, execOptions);
146
- }
147
- if (result?.exitCode || result?.failed) {
148
- throw new Error("Package installation failed");
149
- }
150
- };
151
- export {
152
- checkRequiredDependencies,
153
- getModule
154
- };
155
- //# sourceMappingURL=dependencies.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dependencies.mjs","sources":["../../../src/node/core/dependencies.ts"],"sourcesContent":["import os from 'node:os';\nimport fs from 'node:fs/promises';\nimport path from 'node:path';\nimport semver, { SemVer } from 'semver';\nimport resolveFrom from 'resolve-from';\nimport execa, { CommonOptions, ExecaReturnValue } from 'execa';\nimport readPkgUp, { PackageJson } from 'read-pkg-up';\nimport type { BuildOptions } from '../build';\nimport { getPackageManager } from './managers';\n\n/**\n * From V5 this will be imported from the package.json of `@strapi/strapi`.\n */\nconst PEER_DEPS = {\n react: '^18.0.0',\n 'react-dom': '^18.0.0',\n 'react-router-dom': '^6.0.0',\n 'styled-components': '^6.0.0',\n};\n\ninterface CheckRequiredDependenciesResult {\n didInstall: boolean;\n}\n\ninterface DepToInstall {\n name: string;\n wantedVersion: string;\n declaredVersion?: never;\n}\n\n/**\n * Checks the user's project that it has declared and installed the required dependencies\n * needed by the Strapi admin project. Whilst generally speaking most modules will be\n * declared by the actual packages there are some packages where you only really want one of\n * and thus they are declared as peer dependencies – react / styled-components / etc.\n *\n * If these deps are not installed or declared, then we prompt the user to correct this. In\n * V4 this is not a hard requirement, but in V5 it will be. Might as well get people started now.\n */\nconst checkRequiredDependencies = async ({\n cwd,\n logger,\n}: Pick<BuildOptions, 'cwd' | 'logger'>): Promise<CheckRequiredDependenciesResult> => {\n /**\n * This enables us to use experimental deps for libraries like\n * react or styled-components. This is useful for testing against.\n */\n if (process.env.USE_EXPERIMENTAL_DEPENDENCIES === 'true') {\n logger.warn('You are using experimental dependencies that may not be compatible with Strapi.');\n return { didInstall: false };\n }\n\n const pkg = await readPkgUp({ cwd });\n\n if (!pkg) {\n throw new Error(`Could not find package.json at path: ${cwd}`);\n }\n\n logger.debug('Loaded package.json:', os.EOL, pkg.packageJson);\n\n interface DepToReview {\n name: string;\n wantedVersion: string;\n declaredVersion: string;\n }\n\n /**\n * Run through each of the peer deps and figure out if they need to be\n * installed or they need their version checked against.\n */\n const { install, review } = Object.entries(PEER_DEPS).reduce<{\n install: DepToInstall[];\n review: DepToReview[];\n }>(\n (acc, [name, version]) => {\n if (!pkg.packageJson.dependencies) {\n throw new Error(`Could not find dependencies in package.json at path: ${cwd}`);\n }\n\n const declaredVersion = pkg.packageJson.dependencies[name];\n\n if (!declaredVersion) {\n acc.install.push({\n name,\n wantedVersion: version,\n });\n } else {\n acc.review.push({\n name,\n wantedVersion: version,\n declaredVersion,\n });\n }\n\n return acc;\n },\n {\n install: [],\n review: [],\n }\n );\n\n if (install.length > 0) {\n logger.info(\n 'The Strapi admin needs to install the following dependencies:',\n os.EOL,\n install.map(({ name, wantedVersion }) => ` - ${name}@${wantedVersion}`).join(os.EOL)\n );\n\n await installDependencies(install, {\n cwd,\n logger,\n });\n\n const [file, ...args] = process.argv;\n\n /**\n * Re-run the same command after installation e.g. strapi build because the yarn.lock might\n * not be the same and could break installations. It's not the best solution, but it works.\n */\n await execa(file, args, { cwd, stdio: 'inherit' });\n return { didInstall: true };\n }\n\n if (review.length) {\n const errors: string[] = [];\n\n for (const dep of review) {\n // The version specified in package.json could be incorrect, eg `foo`\n let minDeclaredVersion: SemVer | null = null;\n try {\n minDeclaredVersion = semver.minVersion(dep.declaredVersion);\n } catch (err) {\n // Intentional fall-through (variable will be left as null, throwing below)\n }\n\n if (!minDeclaredVersion) {\n errors.push(\n `The declared dependency, ${dep.name} has an invalid version in package.json: ${dep.declaredVersion}`\n );\n } else if (!semver.satisfies(minDeclaredVersion, dep.wantedVersion)) {\n /**\n * The delcared version should be semver compatible with our required version\n * of the dependency. If it's not, we should advise the user to change it.\n */\n logger.warn(\n [\n `Declared version of ${dep.name} (${minDeclaredVersion}) is not compatible with the version required by Strapi (${dep.wantedVersion}).`,\n 'You may experience issues, we recommend you change this.',\n ].join(os.EOL)\n );\n }\n\n const installedVersion = await getModuleVersion(dep.name, cwd);\n\n if (!installedVersion) {\n /**\n * TODO: when we know the packageManager we can advise the actual install command.\n */\n errors.push(\n `The declared dependency, ${dep.name} is not installed. You should install before re-running this command`\n );\n } else if (!semver.satisfies(installedVersion, dep.wantedVersion)) {\n logger.warn(\n [\n `Declared version of ${dep.name} (${installedVersion}) is not compatible with the version required by Strapi (${dep.wantedVersion}).`,\n 'You may experience issues, we recommend you change this.',\n ].join(os.EOL)\n );\n }\n }\n\n if (errors.length > 0 && process.env.NODE_ENV === 'development') {\n throw new Error(`${os.EOL}- ${errors.join(`${os.EOL}- `)}`);\n }\n }\n\n return { didInstall: false };\n};\n\nconst getModule = async (name: string, cwd: string): Promise<PackageJson | null> => {\n const modulePackagePath = resolveFrom.silent(cwd, path.join(name, 'package.json'));\n if (!modulePackagePath) {\n return null;\n }\n const file = await fs.readFile(modulePackagePath, 'utf8').then((res) => JSON.parse(res));\n\n return file;\n};\n\nconst getModuleVersion = async (name: string, cwd: string): Promise<string | null> => {\n const pkg = await getModule(name, cwd);\n\n return pkg?.version || null;\n};\n\nconst installDependencies = async (\n install: DepToInstall[],\n { cwd, logger }: Pick<BuildOptions, 'cwd' | 'logger'>\n) => {\n const packageManager = getPackageManager();\n\n if (!packageManager) {\n logger.error(\n 'Could not find a supported package manager, please install the dependencies manually.'\n );\n process.exit(1);\n }\n\n const execOptions: CommonOptions<'utf8'> = {\n encoding: 'utf8',\n cwd,\n stdio: 'inherit',\n };\n\n const packages = install.map(({ name, wantedVersion }) => `${name}@${wantedVersion}`);\n\n let result: ExecaReturnValue<string> | undefined;\n\n if (packageManager === 'npm') {\n const npmArgs = ['install', '--legacy-peer-deps', '--save', ...packages];\n logger.info(`Running 'npm ${npmArgs.join(' ')}'`);\n result = await execa('npm', npmArgs, execOptions);\n } else if (packageManager === 'yarn') {\n const yarnArgs = ['add', ...packages];\n logger.info(`Running 'yarn ${yarnArgs.join(' ')}'`);\n result = await execa('yarn', yarnArgs, execOptions);\n } else if (packageManager === 'pnpm') {\n const pnpmArgs = ['add', '--save-prod', ...packages];\n logger.info(`Running 'pnpm ${pnpmArgs.join(' ')}'`);\n result = await execa('pnpm', pnpmArgs, execOptions);\n }\n\n if (result?.exitCode || result?.failed) {\n throw new Error('Package installation failed');\n }\n};\n\nexport { checkRequiredDependencies, getModule };\nexport type { CheckRequiredDependenciesResult, PackageJson };\n"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const path = require("node:path");
4
- const dotenv = require("dotenv");
5
- const files = require("./files.js");
6
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
7
- const path__default = /* @__PURE__ */ _interopDefault(path);
8
- const dotenv__default = /* @__PURE__ */ _interopDefault(dotenv);
9
- const loadEnv = async (cwd) => {
10
- const pathToEnv = path__default.default.resolve(cwd, ".env");
11
- if (await files.pathExists(pathToEnv)) {
12
- dotenv__default.default.config({ path: pathToEnv });
13
- }
14
- };
15
- const getStrapiAdminEnvVars = (defaultEnv) => {
16
- return Object.keys(process.env).filter((key) => key.toUpperCase().startsWith("STRAPI_ADMIN_")).reduce(
17
- (acc, key) => {
18
- acc[key] = process.env[key];
19
- return acc;
20
- },
21
- defaultEnv
22
- );
23
- };
24
- exports.getStrapiAdminEnvVars = getStrapiAdminEnvVars;
25
- exports.loadEnv = loadEnv;
26
- //# sourceMappingURL=env.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env.js","sources":["../../../src/node/core/env.ts"],"sourcesContent":["import path from 'node:path';\nimport dotenv from 'dotenv';\nimport { pathExists } from './files';\n\n/**\n * This is the base of _any_ env set for a strapi project,\n * to build a strapi admin panel we require these env variables.\n */\ninterface DefaultEnv {\n ADMIN_PATH: string;\n STRAPI_ADMIN_BACKEND_URL: string;\n STRAPI_TELEMETRY_DISABLED: string;\n}\n\n/**\n * @internal\n *\n * @description Load the .env file if it exists\n */\nconst loadEnv = async (cwd: string) => {\n const pathToEnv = path.resolve(cwd, '.env');\n\n if (await pathExists(pathToEnv)) {\n dotenv.config({ path: pathToEnv });\n }\n};\n\n/**\n * @internal\n *\n * @description Get all the environment variables that start with `STRAPI_ADMIN_`\n */\nconst getStrapiAdminEnvVars = (defaultEnv: DefaultEnv): Record<string, string> => {\n return Object.keys(process.env)\n .filter((key) => key.toUpperCase().startsWith('STRAPI_ADMIN_'))\n .reduce(\n (acc, key) => {\n acc[key] = process.env[key] as string;\n\n return acc;\n },\n defaultEnv as unknown as Record<string, string>\n );\n};\n\nexport { getStrapiAdminEnvVars, loadEnv };\n"],"names":["path","pathExists","dotenv"],"mappings":";;;;;;;;AAmBM,MAAA,UAAU,OAAO,QAAgB;AACrC,QAAM,YAAYA,cAAA,QAAK,QAAQ,KAAK,MAAM;AAEtC,MAAA,MAAMC,MAAAA,WAAW,SAAS,GAAG;AAC/BC,oBAAAA,QAAO,OAAO,EAAE,MAAM,UAAA,CAAW;AAAA,EAAA;AAErC;AAOM,MAAA,wBAAwB,CAAC,eAAmD;AAChF,SAAO,OAAO,KAAK,QAAQ,GAAG,EAC3B,OAAO,CAAC,QAAQ,IAAI,YAAY,EAAE,WAAW,eAAe,CAAC,EAC7D;AAAA,IACC,CAAC,KAAK,QAAQ;AACZ,UAAI,GAAG,IAAI,QAAQ,IAAI,GAAG;AAEnB,aAAA;AAAA,IACT;AAAA,IACA;AAAA,EACF;AACJ;;;"}
@@ -1,23 +0,0 @@
1
- import path from "node:path";
2
- import dotenv from "dotenv";
3
- import { pathExists } from "./files.mjs";
4
- const loadEnv = async (cwd) => {
5
- const pathToEnv = path.resolve(cwd, ".env");
6
- if (await pathExists(pathToEnv)) {
7
- dotenv.config({ path: pathToEnv });
8
- }
9
- };
10
- const getStrapiAdminEnvVars = (defaultEnv) => {
11
- return Object.keys(process.env).filter((key) => key.toUpperCase().startsWith("STRAPI_ADMIN_")).reduce(
12
- (acc, key) => {
13
- acc[key] = process.env[key];
14
- return acc;
15
- },
16
- defaultEnv
17
- );
18
- };
19
- export {
20
- getStrapiAdminEnvVars,
21
- loadEnv
22
- };
23
- //# sourceMappingURL=env.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env.mjs","sources":["../../../src/node/core/env.ts"],"sourcesContent":["import path from 'node:path';\nimport dotenv from 'dotenv';\nimport { pathExists } from './files';\n\n/**\n * This is the base of _any_ env set for a strapi project,\n * to build a strapi admin panel we require these env variables.\n */\ninterface DefaultEnv {\n ADMIN_PATH: string;\n STRAPI_ADMIN_BACKEND_URL: string;\n STRAPI_TELEMETRY_DISABLED: string;\n}\n\n/**\n * @internal\n *\n * @description Load the .env file if it exists\n */\nconst loadEnv = async (cwd: string) => {\n const pathToEnv = path.resolve(cwd, '.env');\n\n if (await pathExists(pathToEnv)) {\n dotenv.config({ path: pathToEnv });\n }\n};\n\n/**\n * @internal\n *\n * @description Get all the environment variables that start with `STRAPI_ADMIN_`\n */\nconst getStrapiAdminEnvVars = (defaultEnv: DefaultEnv): Record<string, string> => {\n return Object.keys(process.env)\n .filter((key) => key.toUpperCase().startsWith('STRAPI_ADMIN_'))\n .reduce(\n (acc, key) => {\n acc[key] = process.env[key] as string;\n\n return acc;\n },\n defaultEnv as unknown as Record<string, string>\n );\n};\n\nexport { getStrapiAdminEnvVars, loadEnv };\n"],"names":[],"mappings":";;;AAmBM,MAAA,UAAU,OAAO,QAAgB;AACrC,QAAM,YAAY,KAAK,QAAQ,KAAK,MAAM;AAEtC,MAAA,MAAM,WAAW,SAAS,GAAG;AAC/B,WAAO,OAAO,EAAE,MAAM,UAAA,CAAW;AAAA,EAAA;AAErC;AAOM,MAAA,wBAAwB,CAAC,eAAmD;AAChF,SAAO,OAAO,KAAK,QAAQ,GAAG,EAC3B,OAAO,CAAC,QAAQ,IAAI,YAAY,EAAE,WAAW,eAAe,CAAC,EAC7D;AAAA,IACC,CAAC,KAAK,QAAQ;AACZ,UAAI,GAAG,IAAI,QAAQ,IAAI,GAAG;AAEnB,aAAA;AAAA,IACT;AAAA,IACA;AAAA,EACF;AACJ;"}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const boxen = require("boxen");
4
- const chalk = require("chalk");
5
- const os = require("node:os");
6
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
7
- const boxen__default = /* @__PURE__ */ _interopDefault(boxen);
8
- const chalk__default = /* @__PURE__ */ _interopDefault(chalk);
9
- const os__default = /* @__PURE__ */ _interopDefault(os);
10
- const isError = (err) => err instanceof Error;
11
- const handleUnexpectedError = (err) => {
12
- console.error(
13
- chalk__default.default.red(
14
- `[ERROR] `,
15
- "There seems to be an unexpected error, try again with --debug for more information",
16
- os__default.default.EOL
17
- )
18
- );
19
- if (isError(err) && err.stack) {
20
- console.log(
21
- chalk__default.default.red(
22
- boxen__default.default(err.stack, {
23
- padding: 1,
24
- align: "left"
25
- })
26
- )
27
- );
28
- }
29
- process.exit(1);
30
- };
31
- exports.handleUnexpectedError = handleUnexpectedError;
32
- exports.isError = isError;
33
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sources":["../../../src/node/core/errors.ts"],"sourcesContent":["import boxen from 'boxen';\nimport chalk from 'chalk';\nimport os from 'node:os';\n\nconst isError = (err: unknown): err is Error => err instanceof Error;\n\n/**\n * @description Handle unexpected errors. No, but really, your CLI should anticipate error cases.\n * If a user hits an error we don't expect, then we need to flag to them that this is not normal\n * and they should use the `--debug` flag to get more information (assuming you've implemented this\n * in your action).\n */\nconst handleUnexpectedError = (err: unknown) => {\n console.error(\n chalk.red(\n `[ERROR] `,\n 'There seems to be an unexpected error, try again with --debug for more information',\n os.EOL\n )\n );\n\n if (isError(err) && err.stack) {\n // eslint-disable-next-line no-console\n console.log(\n chalk.red(\n boxen(err.stack, {\n padding: 1,\n align: 'left',\n })\n )\n );\n }\n\n process.exit(1);\n};\n\nexport { handleUnexpectedError, isError };\n"],"names":["chalk","os","boxen"],"mappings":";;;;;;;;;AAIM,MAAA,UAAU,CAAC,QAA+B,eAAe;AAQzD,MAAA,wBAAwB,CAAC,QAAiB;AACtC,UAAA;AAAA,IACNA,eAAAA,QAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACAC,oBAAG;AAAA,IAAA;AAAA,EAEP;AAEA,MAAI,QAAQ,GAAG,KAAK,IAAI,OAAO;AAErB,YAAA;AAAA,MACND,eAAAA,QAAM;AAAA,QACJE,eAAA,QAAM,IAAI,OAAO;AAAA,UACf,SAAS;AAAA,UACT,OAAO;AAAA,QACR,CAAA;AAAA,MAAA;AAAA,IAEL;AAAA,EAAA;AAGF,UAAQ,KAAK,CAAC;AAChB;;;"}
@@ -1,29 +0,0 @@
1
- import boxen from "boxen";
2
- import chalk from "chalk";
3
- import os from "node:os";
4
- const isError = (err) => err instanceof Error;
5
- const handleUnexpectedError = (err) => {
6
- console.error(
7
- chalk.red(
8
- `[ERROR] `,
9
- "There seems to be an unexpected error, try again with --debug for more information",
10
- os.EOL
11
- )
12
- );
13
- if (isError(err) && err.stack) {
14
- console.log(
15
- chalk.red(
16
- boxen(err.stack, {
17
- padding: 1,
18
- align: "left"
19
- })
20
- )
21
- );
22
- }
23
- process.exit(1);
24
- };
25
- export {
26
- handleUnexpectedError,
27
- isError
28
- };
29
- //# sourceMappingURL=errors.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.mjs","sources":["../../../src/node/core/errors.ts"],"sourcesContent":["import boxen from 'boxen';\nimport chalk from 'chalk';\nimport os from 'node:os';\n\nconst isError = (err: unknown): err is Error => err instanceof Error;\n\n/**\n * @description Handle unexpected errors. No, but really, your CLI should anticipate error cases.\n * If a user hits an error we don't expect, then we need to flag to them that this is not normal\n * and they should use the `--debug` flag to get more information (assuming you've implemented this\n * in your action).\n */\nconst handleUnexpectedError = (err: unknown) => {\n console.error(\n chalk.red(\n `[ERROR] `,\n 'There seems to be an unexpected error, try again with --debug for more information',\n os.EOL\n )\n );\n\n if (isError(err) && err.stack) {\n // eslint-disable-next-line no-console\n console.log(\n chalk.red(\n boxen(err.stack, {\n padding: 1,\n align: 'left',\n })\n )\n );\n }\n\n process.exit(1);\n};\n\nexport { handleUnexpectedError, isError };\n"],"names":[],"mappings":";;;AAIM,MAAA,UAAU,CAAC,QAA+B,eAAe;AAQzD,MAAA,wBAAwB,CAAC,QAAiB;AACtC,UAAA;AAAA,IACN,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IAAA;AAAA,EAEP;AAEA,MAAI,QAAQ,GAAG,KAAK,IAAI,OAAO;AAErB,YAAA;AAAA,MACN,MAAM;AAAA,QACJ,MAAM,IAAI,OAAO;AAAA,UACf,SAAS;AAAA,UACT,OAAO;AAAA,QACR,CAAA;AAAA,MAAA;AAAA,IAEL;AAAA,EAAA;AAGF,UAAQ,KAAK,CAAC;AAChB;"}