@strapi/strapi 5.48.1 → 5.50.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 (189) hide show
  1. package/dist/admin.d.ts +0 -1
  2. package/dist/admin.d.ts.map +1 -1
  3. package/dist/admin.js +17 -7
  4. package/dist/admin.js.map +1 -1
  5. package/dist/cli/commands/admin/active-user.d.ts.map +1 -1
  6. package/dist/cli/commands/admin/block-user.d.ts.map +1 -1
  7. package/dist/cli/commands/admin/create-user.d.ts.map +1 -1
  8. package/dist/cli/commands/admin/delete-user.d.ts.map +1 -1
  9. package/dist/cli/commands/admin/reset-user-password.d.ts.map +1 -1
  10. package/dist/cli/commands/configuration/dump.d.ts.map +1 -1
  11. package/dist/cli/commands/configuration/restore.d.ts.map +1 -1
  12. package/dist/cli/commands/export/action.d.ts.map +1 -1
  13. package/dist/cli/commands/import/action.d.ts.map +1 -1
  14. package/dist/cli/commands/openapi/generate.d.ts.map +1 -1
  15. package/dist/cli/commands/start.d.ts.map +1 -1
  16. package/dist/cli/commands/transfer/action.d.ts.map +1 -1
  17. package/dist/cli/commands/ts/generate-types.d.ts.map +1 -1
  18. package/dist/cli/index.d.ts.map +1 -1
  19. package/dist/cli/utils/commander.d.ts.map +1 -1
  20. package/dist/cli/utils/data-transfer.d.ts +1 -1
  21. package/dist/cli/utils/data-transfer.d.ts.map +1 -1
  22. package/dist/cli/utils/helpers.d.ts +0 -1
  23. package/dist/cli/utils/helpers.d.ts.map +1 -1
  24. package/dist/cli/utils/logger.d.ts.map +1 -1
  25. package/dist/cli/utils/pkg.d.ts.map +1 -1
  26. package/dist/cli/utils/telemetry.d.ts.map +1 -1
  27. package/dist/cli/utils/try-quick-outdir.d.ts +12 -0
  28. package/dist/cli/utils/try-quick-outdir.d.ts.map +1 -0
  29. package/dist/cli/utils/tsconfig.d.ts +1 -1
  30. package/dist/cli/utils/tsconfig.d.ts.map +1 -1
  31. package/dist/cli.js +18 -7
  32. package/dist/cli.js.map +1 -1
  33. package/dist/cli.mjs +18 -7
  34. package/dist/cli.mjs.map +1 -1
  35. package/dist/load/package-path.d.ts.map +1 -1
  36. package/dist/node/build.d.ts.map +1 -1
  37. package/dist/node/core/admin-customisations.d.ts +1 -1
  38. package/dist/node/core/admin-customisations.d.ts.map +1 -1
  39. package/dist/node/core/aliases.d.ts.map +1 -1
  40. package/dist/node/core/config.d.ts.map +1 -1
  41. package/dist/node/core/dependencies.d.ts.map +1 -1
  42. package/dist/node/core/ensure-admin-dependencies.d.ts.map +1 -1
  43. package/dist/node/core/env.d.ts.map +1 -1
  44. package/dist/node/core/errors.d.ts.map +1 -1
  45. package/dist/node/core/files.d.ts.map +1 -1
  46. package/dist/node/core/linked-packages.d.ts.map +1 -1
  47. package/dist/node/core/plugins.d.ts +4 -4
  48. package/dist/node/core/plugins.d.ts.map +1 -1
  49. package/dist/node/core/resolve-module.d.ts.map +1 -1
  50. package/dist/node/core/timer.d.ts.map +1 -1
  51. package/dist/node/create-build-context.d.ts +0 -4
  52. package/dist/node/create-build-context.d.ts.map +1 -1
  53. package/dist/node/develop.d.ts.map +1 -1
  54. package/dist/node/staticFiles.d.ts.map +1 -1
  55. package/dist/node/vite/build.d.ts.map +1 -1
  56. package/dist/node/vite/config.d.ts.map +1 -1
  57. package/dist/node/vite/plugins.d.ts.map +1 -1
  58. package/dist/node/vite/resolve-development-config.test.d.ts +2 -0
  59. package/dist/node/vite/resolve-development-config.test.d.ts.map +1 -0
  60. package/dist/node/vite/watch.d.ts.map +1 -1
  61. package/dist/node/webpack/build.d.ts.map +1 -1
  62. package/dist/node/webpack/config.d.ts.map +1 -1
  63. package/dist/node/webpack/watch.d.ts.map +1 -1
  64. package/dist/package.json.js +1 -1
  65. package/dist/package.json.mjs +1 -1
  66. package/dist/src/cli/commands/admin/active-user.js +6 -2
  67. package/dist/src/cli/commands/admin/active-user.js.map +1 -1
  68. package/dist/src/cli/commands/admin/block-user.js +6 -2
  69. package/dist/src/cli/commands/admin/block-user.js.map +1 -1
  70. package/dist/src/cli/commands/admin/create-user.js +5 -1
  71. package/dist/src/cli/commands/admin/create-user.js.map +1 -1
  72. package/dist/src/cli/commands/admin/delete-user.js +6 -2
  73. package/dist/src/cli/commands/admin/delete-user.js.map +1 -1
  74. package/dist/src/cli/commands/admin/list-users.js +16 -11
  75. package/dist/src/cli/commands/admin/list-users.js.map +1 -1
  76. package/dist/src/cli/commands/admin/reset-user-password.js +6 -2
  77. package/dist/src/cli/commands/admin/reset-user-password.js.map +1 -1
  78. package/dist/src/cli/commands/components/list.js +7 -2
  79. package/dist/src/cli/commands/components/list.js.map +1 -1
  80. package/dist/src/cli/commands/configuration/dump.js +5 -1
  81. package/dist/src/cli/commands/configuration/dump.js.map +1 -1
  82. package/dist/src/cli/commands/configuration/restore.js +8 -3
  83. package/dist/src/cli/commands/configuration/restore.js.map +1 -1
  84. package/dist/src/cli/commands/console.js +5 -1
  85. package/dist/src/cli/commands/console.js.map +1 -1
  86. package/dist/src/cli/commands/content-types/list.js +7 -2
  87. package/dist/src/cli/commands/content-types/list.js.map +1 -1
  88. package/dist/src/cli/commands/controllers/list.js +7 -2
  89. package/dist/src/cli/commands/controllers/list.js.map +1 -1
  90. package/dist/src/cli/commands/develop.js +5 -1
  91. package/dist/src/cli/commands/develop.js.map +1 -1
  92. package/dist/src/cli/commands/export/action.js +11 -5
  93. package/dist/src/cli/commands/export/action.js.map +1 -1
  94. package/dist/src/cli/commands/hooks/list.js +7 -2
  95. package/dist/src/cli/commands/hooks/list.js.map +1 -1
  96. package/dist/src/cli/commands/import/action.js +7 -2
  97. package/dist/src/cli/commands/import/action.js.map +1 -1
  98. package/dist/src/cli/commands/import/command.js +6 -2
  99. package/dist/src/cli/commands/import/command.js.map +1 -1
  100. package/dist/src/cli/commands/middlewares/list.js +7 -2
  101. package/dist/src/cli/commands/middlewares/list.js.map +1 -1
  102. package/dist/src/cli/commands/openapi/generate.js +17 -11
  103. package/dist/src/cli/commands/openapi/generate.js.map +1 -1
  104. package/dist/src/cli/commands/policies/list.js +7 -2
  105. package/dist/src/cli/commands/policies/list.js.map +1 -1
  106. package/dist/src/cli/commands/routes/list.js +8 -3
  107. package/dist/src/cli/commands/routes/list.js.map +1 -1
  108. package/dist/src/cli/commands/services/list.js +7 -2
  109. package/dist/src/cli/commands/services/list.js.map +1 -1
  110. package/dist/src/cli/commands/start.js +27 -6
  111. package/dist/src/cli/commands/start.js.map +1 -1
  112. package/dist/src/cli/commands/start.mjs +22 -6
  113. package/dist/src/cli/commands/start.mjs.map +1 -1
  114. package/dist/src/cli/commands/telemetry/disable.js +14 -9
  115. package/dist/src/cli/commands/telemetry/disable.js.map +1 -1
  116. package/dist/src/cli/commands/telemetry/enable.js +14 -9
  117. package/dist/src/cli/commands/telemetry/enable.js.map +1 -1
  118. package/dist/src/cli/commands/transfer/action.js +5 -1
  119. package/dist/src/cli/commands/transfer/action.js.map +1 -1
  120. package/dist/src/cli/commands/ts/generate-types.js +7 -4
  121. package/dist/src/cli/commands/ts/generate-types.js.map +1 -1
  122. package/dist/src/cli/commands/ts/generate-types.mjs +6 -3
  123. package/dist/src/cli/commands/ts/generate-types.mjs.map +1 -1
  124. package/dist/src/cli/utils/commander.js +5 -1
  125. package/dist/src/cli/utils/commander.js.map +1 -1
  126. package/dist/src/cli/utils/data-transfer.js +28 -21
  127. package/dist/src/cli/utils/data-transfer.js.map +1 -1
  128. package/dist/src/cli/utils/helpers.js +7 -3
  129. package/dist/src/cli/utils/helpers.js.map +1 -1
  130. package/dist/src/cli/utils/logger.js +15 -10
  131. package/dist/src/cli/utils/logger.js.map +1 -1
  132. package/dist/src/cli/utils/try-quick-outdir.js +80 -0
  133. package/dist/src/cli/utils/try-quick-outdir.js.map +1 -0
  134. package/dist/src/cli/utils/try-quick-outdir.mjs +72 -0
  135. package/dist/src/cli/utils/try-quick-outdir.mjs.map +1 -0
  136. package/dist/src/cli/utils/tsconfig.js +18 -5
  137. package/dist/src/cli/utils/tsconfig.js.map +1 -1
  138. package/dist/src/cli/utils/tsconfig.mjs +13 -4
  139. package/dist/src/cli/utils/tsconfig.mjs.map +1 -1
  140. package/dist/src/node/build.js +3 -2
  141. package/dist/src/node/build.js.map +1 -1
  142. package/dist/src/node/core/admin-customisations.js +6 -2
  143. package/dist/src/node/core/admin-customisations.js.map +1 -1
  144. package/dist/src/node/core/aliases.js +5 -1
  145. package/dist/src/node/core/aliases.js.map +1 -1
  146. package/dist/src/node/core/config.js +5 -1
  147. package/dist/src/node/core/config.js.map +1 -1
  148. package/dist/src/node/core/dependencies.js +33 -22
  149. package/dist/src/node/core/dependencies.js.map +1 -1
  150. package/dist/src/node/core/ensure-admin-dependencies.js +5 -1
  151. package/dist/src/node/core/ensure-admin-dependencies.js.map +1 -1
  152. package/dist/src/node/core/env.js +7 -2
  153. package/dist/src/node/core/env.js.map +1 -1
  154. package/dist/src/node/core/errors.js +9 -3
  155. package/dist/src/node/core/errors.js.map +1 -1
  156. package/dist/src/node/core/files.js +6 -2
  157. package/dist/src/node/core/files.js.map +1 -1
  158. package/dist/src/node/core/linked-packages.js +5 -1
  159. package/dist/src/node/core/linked-packages.js.map +1 -1
  160. package/dist/src/node/core/monorepo.js +8 -3
  161. package/dist/src/node/core/monorepo.js.map +1 -1
  162. package/dist/src/node/core/plugins.js +17 -10
  163. package/dist/src/node/core/plugins.js.map +1 -1
  164. package/dist/src/node/core/resolve-module.js +8 -3
  165. package/dist/src/node/core/resolve-module.js.map +1 -1
  166. package/dist/src/node/create-build-context.js +16 -9
  167. package/dist/src/node/create-build-context.js.map +1 -1
  168. package/dist/src/node/create-build-context.mjs.map +1 -1
  169. package/dist/src/node/develop.js +14 -8
  170. package/dist/src/node/develop.js.map +1 -1
  171. package/dist/src/node/staticFiles.js +11 -5
  172. package/dist/src/node/staticFiles.js.map +1 -1
  173. package/dist/src/node/vite/config.js +14 -3
  174. package/dist/src/node/vite/config.js.map +1 -1
  175. package/dist/src/node/vite/config.mjs +9 -2
  176. package/dist/src/node/vite/config.mjs.map +1 -1
  177. package/dist/src/node/vite/watch.js +7 -62
  178. package/dist/src/node/vite/watch.js.map +1 -1
  179. package/dist/src/node/vite/watch.mjs +2 -62
  180. package/dist/src/node/vite/watch.mjs.map +1 -1
  181. package/dist/src/node/webpack/build.js +5 -1
  182. package/dist/src/node/webpack/build.js.map +1 -1
  183. package/dist/src/node/webpack/config.js +17 -8
  184. package/dist/src/node/webpack/config.js.map +1 -1
  185. package/dist/src/node/webpack/watch.js +11 -4
  186. package/dist/src/node/webpack/watch.js.map +1 -1
  187. package/dist/test/mocks/inquirer.d.ts +0 -1
  188. package/dist/test/mocks/inquirer.d.ts.map +1 -1
  189. package/package.json +24 -25
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sources":["../../../../src/node/webpack/config.ts"],"sourcesContent":["import ReactRefreshWebpackPlugin from '@pmmmwh/react-refresh-webpack-plugin';\nimport { EsbuildPlugin } from 'esbuild-loader';\nimport ForkTsCheckerPlugin from 'fork-ts-checker-webpack-plugin';\nimport HtmlWebpackPlugin from 'html-webpack-plugin';\nimport MiniCssExtractPlugin from 'mini-css-extract-plugin';\nimport crypto from 'node:crypto';\nimport path from 'node:path';\nimport { Configuration, DefinePlugin, HotModuleReplacementPlugin } from 'webpack';\nimport { BundleAnalyzerPlugin } from 'webpack-bundle-analyzer';\n\nimport { loadStrapiMonorepo } from '../core/monorepo';\nimport type { BuildContext } from '../create-build-context';\nimport { getUserConfig } from '../core/config';\nimport { getLinkedDesignSystemPath } from '../core/linked-packages';\nimport { getMonorepoAliases } from '../core/aliases';\nimport { getModulePath } from '../core/resolve-module';\n\nconst resolveBaseConfig = async (ctx: BuildContext) => {\n const { default: browserslistToEsbuild } = await import('browserslist-to-esbuild');\n const target = browserslistToEsbuild(ctx.target);\n\n return {\n experiments: {\n topLevelAwait: true,\n },\n entry: {\n main: [`./${ctx.entry}`],\n },\n resolve: {\n alias: {\n react: getModulePath('react'),\n 'react-dom': getModulePath('react-dom'),\n 'styled-components': getModulePath('styled-components'),\n 'react-router-dom': getModulePath('react-router-dom'),\n // Force single instance so plugin custom field chunks inherit root DesignSystemProvider context\n '@strapi/design-system': getModulePath('@strapi/design-system'),\n '@radix-ui/react-tooltip': getModulePath('@radix-ui/react-tooltip'),\n },\n extensions: ['.js', '.jsx', '.react.js', '.ts', '.tsx'],\n },\n module: {\n rules: [\n {\n test: /\\.(ts|tsx)$/,\n loader: require.resolve('esbuild-loader'),\n options: {\n loader: 'tsx',\n target,\n jsx: 'automatic',\n },\n },\n {\n test: /\\.(js|jsx|mjs)$/,\n use: {\n loader: require.resolve('esbuild-loader'),\n options: {\n loader: 'jsx',\n target,\n jsx: 'automatic',\n },\n },\n },\n {\n test: /\\.m?js/,\n resolve: {\n fullySpecified: false,\n },\n },\n {\n test: /\\.css$/i,\n use: [require.resolve('style-loader'), require.resolve('css-loader')],\n },\n {\n test: /\\.(svg|eot|otf|ttf|woff|woff2)$/,\n type: 'asset/resource',\n },\n {\n test: [/\\.bmp$/, /\\.gif$/, /\\.jpe?g$/, /\\.png$/, /\\.ico$/],\n type: 'asset',\n parser: {\n dataUrlCondition: {\n maxSize: 1000,\n },\n },\n },\n {\n test: /\\.(mp4|webm)$/,\n type: 'asset',\n parser: {\n dataUrlCondition: {\n maxSize: 10000,\n },\n },\n },\n ],\n },\n plugins: [\n new HtmlWebpackPlugin({\n inject: true,\n template: path.resolve(ctx.runtimeDir, 'index.html'),\n }),\n new DefinePlugin(\n Object.entries(ctx.env).reduce<Record<string, string>>((acc, [key, value]) => {\n acc[`process.env.${key}`] = JSON.stringify(value);\n return acc;\n }, {})\n ),\n ctx.tsconfig &&\n new ForkTsCheckerPlugin({\n typescript: {\n configFile: ctx.tsconfig.path,\n configOverwrite: {\n compilerOptions: {\n sourceMap: ctx.options.sourcemaps,\n },\n },\n },\n }),\n ].filter(Boolean),\n };\n};\n\nconst resolveDevelopmentConfig = async (ctx: BuildContext): Promise<Configuration> => {\n const baseConfig = await resolveBaseConfig(ctx);\n const monorepo = await loadStrapiMonorepo(ctx.cwd);\n const linkedDesignSystemPath = getLinkedDesignSystemPath();\n\n return {\n ...baseConfig,\n cache: {\n type: 'filesystem',\n // version cache when there are changes to aliases\n buildDependencies: {\n config: [__filename],\n // When design-system is linked, invalidate cache when it changes\n ...(linkedDesignSystemPath && {\n designSystem: [path.join(linkedDesignSystemPath, 'dist')],\n }),\n },\n version: crypto\n .createHash('md5')\n .update(Object.entries(baseConfig.resolve.alias ?? {}).join())\n .digest('hex'),\n },\n resolve: {\n ...baseConfig.resolve,\n alias: {\n ...baseConfig.resolve.alias,\n ...getMonorepoAliases({ monorepo }),\n },\n },\n entry: {\n ...baseConfig.entry,\n main: [\n `${require.resolve('webpack-hot-middleware/client')}?path=/__webpack_hmr`,\n ...baseConfig.entry.main,\n ],\n },\n stats: 'errors-warnings',\n mode: 'development',\n devtool: 'inline-source-map',\n output: {\n filename: '[name].js',\n path: ctx.distPath,\n publicPath: `${ctx.basePath.replace(/\\/$/, '')}/`,\n },\n infrastructureLogging: {\n level: 'error',\n },\n plugins: [\n ...baseConfig.plugins,\n new HotModuleReplacementPlugin(),\n new ReactRefreshWebpackPlugin(),\n ],\n };\n};\n\nconst resolveProductionConfig = async (ctx: BuildContext): Promise<Configuration> => {\n const { default: browserslistToEsbuild } = await import('browserslist-to-esbuild');\n const target = browserslistToEsbuild(ctx.target);\n\n const baseConfig = await resolveBaseConfig(ctx);\n\n return {\n ...baseConfig,\n stats: 'errors-only',\n mode: 'production',\n bail: true,\n devtool: ctx.options.sourcemaps ? 'source-map' : false,\n output: {\n path: ctx.distPath,\n publicPath: `${ctx.basePath.replace(/\\/$/, '')}/`,\n // Utilize long-term caching by adding content hashes (not compilation hashes)\n // to compiled assets for production\n filename: '[name].[contenthash:8].js',\n chunkFilename: '[name].[contenthash:8].chunk.js',\n },\n optimization: {\n minimize: ctx.options.minify,\n minimizer: [\n new EsbuildPlugin({\n target,\n css: true, // Apply minification to CSS assets\n }),\n ],\n moduleIds: 'deterministic',\n runtimeChunk: true,\n },\n plugins: [\n ...baseConfig.plugins,\n new MiniCssExtractPlugin({\n filename: '[name].[chunkhash].css',\n chunkFilename: '[name].[chunkhash].chunkhash.css',\n ignoreOrder: true,\n }),\n ctx.options.stats && new BundleAnalyzerPlugin(),\n ].filter(Boolean),\n };\n};\n\nconst USER_CONFIGS = ['webpack.config.js', 'webpack.config.mjs', 'webpack.config.ts'];\n\ntype UserWebpackConfig = (config: Configuration, webpack: unknown) => Configuration;\n\nconst mergeConfigWithUserConfig = async (config: Configuration, ctx: BuildContext) => {\n const userConfig = await getUserConfig<UserWebpackConfig>(USER_CONFIGS, ctx);\n\n if (userConfig) {\n if (typeof userConfig === 'function') {\n const webpack = await import('webpack');\n return userConfig(config, webpack);\n }\n\n ctx.logger.warn(\n `You've exported something other than a function from ${path.join(\n ctx.appDir,\n 'src',\n 'admin',\n 'webpack.config'\n )}, this will ignored.`\n );\n }\n\n return config;\n};\n\nexport { mergeConfigWithUserConfig, resolveDevelopmentConfig, resolveProductionConfig };\n"],"names":["resolveBaseConfig","ctx","default","browserslistToEsbuild","target","experiments","topLevelAwait","entry","main","resolve","alias","react","getModulePath","extensions","module","rules","test","loader","require","options","jsx","use","fullySpecified","type","parser","dataUrlCondition","maxSize","plugins","HtmlWebpackPlugin","inject","template","path","runtimeDir","DefinePlugin","Object","entries","env","reduce","acc","key","value","JSON","stringify","tsconfig","ForkTsCheckerPlugin","typescript","configFile","configOverwrite","compilerOptions","sourceMap","sourcemaps","filter","Boolean","resolveDevelopmentConfig","baseConfig","monorepo","loadStrapiMonorepo","cwd","linkedDesignSystemPath","getLinkedDesignSystemPath","cache","buildDependencies","config","__filename","designSystem","join","version","crypto","createHash","update","digest","getMonorepoAliases","stats","mode","devtool","output","filename","distPath","publicPath","basePath","replace","infrastructureLogging","level","HotModuleReplacementPlugin","ReactRefreshWebpackPlugin","resolveProductionConfig","bail","chunkFilename","optimization","minimize","minify","minimizer","EsbuildPlugin","css","moduleIds","runtimeChunk","MiniCssExtractPlugin","ignoreOrder","BundleAnalyzerPlugin","USER_CONFIGS","mergeConfigWithUserConfig","userConfig","getUserConfig","webpack","logger","warn","appDir"],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sources":["../../../../src/node/webpack/config.ts"],"sourcesContent":["import ReactRefreshWebpackPlugin from '@pmmmwh/react-refresh-webpack-plugin';\nimport { EsbuildPlugin } from 'esbuild-loader';\nimport ForkTsCheckerPlugin from 'fork-ts-checker-webpack-plugin';\nimport HtmlWebpackPlugin from 'html-webpack-plugin';\nimport MiniCssExtractPlugin from 'mini-css-extract-plugin';\nimport crypto from 'node:crypto';\nimport path from 'node:path';\nimport { Configuration, DefinePlugin, HotModuleReplacementPlugin } from 'webpack';\nimport { BundleAnalyzerPlugin } from 'webpack-bundle-analyzer';\n\nimport { loadStrapiMonorepo } from '../core/monorepo';\nimport type { BuildContext } from '../create-build-context';\nimport { getUserConfig } from '../core/config';\nimport { getLinkedDesignSystemPath } from '../core/linked-packages';\nimport { getMonorepoAliases } from '../core/aliases';\nimport { getModulePath } from '../core/resolve-module';\n\nconst resolveBaseConfig = async (ctx: BuildContext) => {\n const { default: browserslistToEsbuild } = await import('browserslist-to-esbuild');\n const target = browserslistToEsbuild(ctx.target);\n\n return {\n experiments: {\n topLevelAwait: true,\n },\n entry: {\n main: [`./${ctx.entry}`],\n },\n resolve: {\n alias: {\n react: getModulePath('react'),\n 'react-dom': getModulePath('react-dom'),\n 'styled-components': getModulePath('styled-components'),\n 'react-router-dom': getModulePath('react-router-dom'),\n // Force single instance so plugin custom field chunks inherit root DesignSystemProvider context\n '@strapi/design-system': getModulePath('@strapi/design-system'),\n '@radix-ui/react-tooltip': getModulePath('@radix-ui/react-tooltip'),\n },\n extensions: ['.js', '.jsx', '.react.js', '.ts', '.tsx'],\n },\n module: {\n rules: [\n {\n test: /\\.(ts|tsx)$/,\n loader: require.resolve('esbuild-loader'),\n options: {\n loader: 'tsx',\n target,\n jsx: 'automatic',\n },\n },\n {\n test: /\\.(js|jsx|mjs)$/,\n use: {\n loader: require.resolve('esbuild-loader'),\n options: {\n loader: 'jsx',\n target,\n jsx: 'automatic',\n },\n },\n },\n {\n test: /\\.m?js/,\n resolve: {\n fullySpecified: false,\n },\n },\n {\n test: /\\.css$/i,\n use: [require.resolve('style-loader'), require.resolve('css-loader')],\n },\n {\n test: /\\.(svg|eot|otf|ttf|woff|woff2)$/,\n type: 'asset/resource',\n },\n {\n test: [/\\.bmp$/, /\\.gif$/, /\\.jpe?g$/, /\\.png$/, /\\.ico$/],\n type: 'asset',\n parser: {\n dataUrlCondition: {\n maxSize: 1000,\n },\n },\n },\n {\n test: /\\.(mp4|webm)$/,\n type: 'asset',\n parser: {\n dataUrlCondition: {\n maxSize: 10000,\n },\n },\n },\n ],\n },\n plugins: [\n new HtmlWebpackPlugin({\n inject: true,\n template: path.resolve(ctx.runtimeDir, 'index.html'),\n }),\n new DefinePlugin(\n Object.entries(ctx.env).reduce<Record<string, string>>((acc, [key, value]) => {\n acc[`process.env.${key}`] = JSON.stringify(value);\n return acc;\n }, {})\n ),\n ctx.tsconfig &&\n new ForkTsCheckerPlugin({\n typescript: {\n configFile: ctx.tsconfig.path,\n configOverwrite: {\n compilerOptions: {\n sourceMap: ctx.options.sourcemaps,\n },\n },\n },\n }),\n ].filter(Boolean),\n };\n};\n\nconst resolveDevelopmentConfig = async (ctx: BuildContext): Promise<Configuration> => {\n const baseConfig = await resolveBaseConfig(ctx);\n const monorepo = await loadStrapiMonorepo(ctx.cwd);\n const linkedDesignSystemPath = getLinkedDesignSystemPath();\n\n return {\n ...baseConfig,\n cache: {\n type: 'filesystem',\n // version cache when there are changes to aliases\n buildDependencies: {\n config: [__filename],\n // When design-system is linked, invalidate cache when it changes\n ...(linkedDesignSystemPath && {\n designSystem: [path.join(linkedDesignSystemPath, 'dist')],\n }),\n },\n version: crypto\n .createHash('md5')\n .update(Object.entries(baseConfig.resolve.alias ?? {}).join())\n .digest('hex'),\n },\n resolve: {\n ...baseConfig.resolve,\n alias: {\n ...baseConfig.resolve.alias,\n ...getMonorepoAliases({ monorepo }),\n },\n },\n entry: {\n ...baseConfig.entry,\n main: [\n `${require.resolve('webpack-hot-middleware/client')}?path=/__webpack_hmr`,\n ...baseConfig.entry.main,\n ],\n },\n stats: 'errors-warnings',\n mode: 'development',\n devtool: 'inline-source-map',\n output: {\n filename: '[name].js',\n path: ctx.distPath,\n publicPath: `${ctx.basePath.replace(/\\/$/, '')}/`,\n },\n infrastructureLogging: {\n level: 'error',\n },\n plugins: [\n ...baseConfig.plugins,\n new HotModuleReplacementPlugin(),\n new ReactRefreshWebpackPlugin(),\n ],\n };\n};\n\nconst resolveProductionConfig = async (ctx: BuildContext): Promise<Configuration> => {\n const { default: browserslistToEsbuild } = await import('browserslist-to-esbuild');\n const target = browserslistToEsbuild(ctx.target);\n\n const baseConfig = await resolveBaseConfig(ctx);\n\n return {\n ...baseConfig,\n stats: 'errors-only',\n mode: 'production',\n bail: true,\n devtool: ctx.options.sourcemaps ? 'source-map' : false,\n output: {\n path: ctx.distPath,\n publicPath: `${ctx.basePath.replace(/\\/$/, '')}/`,\n // Utilize long-term caching by adding content hashes (not compilation hashes)\n // to compiled assets for production\n filename: '[name].[contenthash:8].js',\n chunkFilename: '[name].[contenthash:8].chunk.js',\n },\n optimization: {\n minimize: ctx.options.minify,\n minimizer: [\n new EsbuildPlugin({\n target,\n css: true, // Apply minification to CSS assets\n }),\n ],\n moduleIds: 'deterministic',\n runtimeChunk: true,\n },\n plugins: [\n ...baseConfig.plugins,\n new MiniCssExtractPlugin({\n filename: '[name].[chunkhash].css',\n chunkFilename: '[name].[chunkhash].chunkhash.css',\n ignoreOrder: true,\n }),\n ctx.options.stats && new BundleAnalyzerPlugin(),\n ].filter(Boolean),\n };\n};\n\nconst USER_CONFIGS = ['webpack.config.js', 'webpack.config.mjs', 'webpack.config.ts'];\n\ntype UserWebpackConfig = (config: Configuration, webpack: unknown) => Configuration;\n\nconst mergeConfigWithUserConfig = async (config: Configuration, ctx: BuildContext) => {\n const userConfig = await getUserConfig<UserWebpackConfig>(USER_CONFIGS, ctx);\n\n if (userConfig) {\n if (typeof userConfig === 'function') {\n const webpack = await import('webpack');\n return userConfig(config, webpack);\n }\n\n ctx.logger.warn(\n `You've exported something other than a function from ${path.join(\n ctx.appDir,\n 'src',\n 'admin',\n 'webpack.config'\n )}, this will ignored.`\n );\n }\n\n return config;\n};\n\nexport { mergeConfigWithUserConfig, resolveDevelopmentConfig, resolveProductionConfig };\n"],"names":["resolveBaseConfig","ctx","default","browserslistToEsbuild","target","experiments","topLevelAwait","entry","main","resolve","alias","react","getModulePath","extensions","module","rules","test","loader","require","options","jsx","use","fullySpecified","type","parser","dataUrlCondition","maxSize","plugins","HtmlWebpackPlugin","inject","template","path","runtimeDir","DefinePlugin","Object","entries","env","reduce","acc","key","value","JSON","stringify","tsconfig","ForkTsCheckerPlugin","typescript","configFile","configOverwrite","compilerOptions","sourceMap","sourcemaps","filter","Boolean","resolveDevelopmentConfig","baseConfig","monorepo","loadStrapiMonorepo","cwd","linkedDesignSystemPath","getLinkedDesignSystemPath","cache","buildDependencies","config","__filename","designSystem","join","version","crypto","createHash","update","digest","getMonorepoAliases","stats","mode","devtool","output","filename","distPath","publicPath","basePath","replace","infrastructureLogging","level","HotModuleReplacementPlugin","ReactRefreshWebpackPlugin","resolveProductionConfig","bail","chunkFilename","optimization","minimize","minify","minimizer","EsbuildPlugin","css","moduleIds","runtimeChunk","MiniCssExtractPlugin","ignoreOrder","BundleAnalyzerPlugin","USER_CONFIGS","mergeConfigWithUserConfig","userConfig","getUserConfig","webpack","logger","warn","appDir"],"mappings":"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"}
@@ -8,14 +8,21 @@ var webpackHotMiddleware = require('webpack-hot-middleware');
8
8
  var webpack = require('webpack');
9
9
  var config = require('./config.js');
10
10
 
11
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
12
+
13
+ var os__default = /*#__PURE__*/_interopDefault(os);
14
+ var path__default = /*#__PURE__*/_interopDefault(path);
15
+ var webpackDevMiddleware__default = /*#__PURE__*/_interopDefault(webpackDevMiddleware);
16
+ var webpackHotMiddleware__default = /*#__PURE__*/_interopDefault(webpackHotMiddleware);
17
+
11
18
  const watch = async (ctx)=>{
12
19
  const config$1 = await config.resolveDevelopmentConfig(ctx);
13
20
  const finalConfig = await config.mergeConfigWithUserConfig(config$1, ctx);
14
- ctx.logger.debug('Final webpack config:', os.EOL, finalConfig);
21
+ ctx.logger.debug('Final webpack config:', os__default.default.EOL, finalConfig);
15
22
  return new Promise((res)=>{
16
23
  const compiler = webpack.webpack(finalConfig);
17
- const devMiddleware = webpackDevMiddleware(compiler);
18
- const hotMiddleware = webpackHotMiddleware(compiler, {
24
+ const devMiddleware = webpackDevMiddleware__default.default(compiler);
25
+ const hotMiddleware = webpackHotMiddleware__default.default(compiler, {
19
26
  log: false,
20
27
  path: '/__webpack_hmr'
21
28
  });
@@ -64,7 +71,7 @@ const watch = async (ctx)=>{
64
71
  return;
65
72
  }
66
73
  // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain
67
- const filename = path.resolve(finalConfig.output?.path, 'index.html');
74
+ const filename = path__default.default.resolve(finalConfig.output?.path, 'index.html');
68
75
  ctx.type = 'html';
69
76
  ctx.body = devMiddleware.context.outputFileSystem.createReadStream(filename);
70
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"watch.js","sources":["../../../../src/node/webpack/watch.ts"],"sourcesContent":["import os from 'node:os';\nimport path from 'node:path';\nimport { promisify } from 'node:util';\nimport webpackDevMiddleware from 'webpack-dev-middleware';\nimport webpackHotMiddleware from 'webpack-hot-middleware';\nimport { webpack } from 'webpack';\nimport type { Core } from '@strapi/types';\nimport type { BuildContext } from '../create-build-context';\nimport { mergeConfigWithUserConfig, resolveDevelopmentConfig } from './config';\n\ninterface WebpackWatcher {\n close(): Promise<void>;\n}\n\nconst watch = async (ctx: BuildContext): Promise<WebpackWatcher> => {\n const config = await resolveDevelopmentConfig(ctx);\n const finalConfig = await mergeConfigWithUserConfig(config, ctx);\n\n ctx.logger.debug('Final webpack config:', os.EOL, finalConfig);\n\n return new Promise<WebpackWatcher>((res) => {\n const compiler = webpack(finalConfig);\n\n const devMiddleware = webpackDevMiddleware(compiler);\n\n const hotMiddleware = webpackHotMiddleware(compiler, {\n log: false,\n path: '/__webpack_hmr',\n });\n\n ctx.strapi.server.app.use((ctx, next) => {\n return new Promise((resolve, reject) => {\n hotMiddleware(ctx.req, ctx.res, (err) => {\n if (err) reject(err);\n else resolve(next());\n });\n });\n });\n\n ctx.strapi.server.app.use((context, next) => {\n // wait for webpack-dev-middleware to signal that the build is ready\n const ready = new Promise((resolve) => {\n devMiddleware.waitUntilValid(() => {\n resolve(true);\n });\n });\n // tell webpack-dev-middleware to handle the request\n const init = new Promise((resolve) => {\n devMiddleware(\n context.req,\n {\n // @ts-expect-error ignored\n end(content) {\n // eslint-disable-next-line no-param-reassign\n context.body = content;\n resolve(true);\n },\n getHeader: context.get.bind(context),\n // @ts-expect-error ignored\n setHeader: context.set.bind(context),\n locals: context.state,\n },\n () => resolve(next())\n );\n });\n\n return Promise.all([ready, init]);\n });\n\n const serveAdmin: Core.MiddlewareHandler = async (ctx, next) => {\n await next();\n\n if (devMiddleware.context.outputFileSystem.createReadStream) {\n if (ctx.method !== 'HEAD' && ctx.method !== 'GET') {\n return;\n }\n\n if (ctx.body != null || ctx.status !== 404) {\n return;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n const filename = path.resolve(finalConfig.output?.path!, 'index.html');\n ctx.type = 'html';\n ctx.body = devMiddleware.context.outputFileSystem.createReadStream(filename);\n }\n };\n\n ctx.strapi.server.routes([\n {\n method: 'GET',\n path: `${ctx.adminPath}/:path*`,\n handler: serveAdmin,\n config: { auth: false },\n },\n ]);\n\n devMiddleware.waitUntilValid(() => {\n res({\n async close() {\n await Promise.all([\n promisify(devMiddleware.close.bind(devMiddleware))(),\n hotMiddleware.close(),\n promisify(compiler.close.bind(compiler))(),\n ]);\n },\n });\n });\n });\n};\n\nexport { watch };\nexport type { WebpackWatcher };\n"],"names":["watch","ctx","config","resolveDevelopmentConfig","finalConfig","mergeConfigWithUserConfig","logger","debug","os","EOL","Promise","res","compiler","webpack","devMiddleware","webpackDevMiddleware","hotMiddleware","webpackHotMiddleware","log","path","strapi","server","app","use","next","resolve","reject","req","err","context","ready","waitUntilValid","init","end","content","body","getHeader","get","bind","setHeader","set","locals","state","all","serveAdmin","outputFileSystem","createReadStream","method","status","filename","output","type","routes","adminPath","handler","auth","close","promisify"],"mappings":"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"}
1
+ {"version":3,"file":"watch.js","sources":["../../../../src/node/webpack/watch.ts"],"sourcesContent":["import os from 'node:os';\nimport path from 'node:path';\nimport { promisify } from 'node:util';\nimport webpackDevMiddleware from 'webpack-dev-middleware';\nimport webpackHotMiddleware from 'webpack-hot-middleware';\nimport { webpack } from 'webpack';\nimport type { Core } from '@strapi/types';\nimport type { BuildContext } from '../create-build-context';\nimport { mergeConfigWithUserConfig, resolveDevelopmentConfig } from './config';\n\ninterface WebpackWatcher {\n close(): Promise<void>;\n}\n\nconst watch = async (ctx: BuildContext): Promise<WebpackWatcher> => {\n const config = await resolveDevelopmentConfig(ctx);\n const finalConfig = await mergeConfigWithUserConfig(config, ctx);\n\n ctx.logger.debug('Final webpack config:', os.EOL, finalConfig);\n\n return new Promise<WebpackWatcher>((res) => {\n const compiler = webpack(finalConfig);\n\n const devMiddleware = webpackDevMiddleware(compiler);\n\n const hotMiddleware = webpackHotMiddleware(compiler, {\n log: false,\n path: '/__webpack_hmr',\n });\n\n ctx.strapi.server.app.use((ctx, next) => {\n return new Promise((resolve, reject) => {\n hotMiddleware(ctx.req, ctx.res, (err) => {\n if (err) reject(err);\n else resolve(next());\n });\n });\n });\n\n ctx.strapi.server.app.use((context, next) => {\n // wait for webpack-dev-middleware to signal that the build is ready\n const ready = new Promise((resolve) => {\n devMiddleware.waitUntilValid(() => {\n resolve(true);\n });\n });\n // tell webpack-dev-middleware to handle the request\n const init = new Promise((resolve) => {\n devMiddleware(\n context.req,\n {\n // @ts-expect-error ignored\n end(content) {\n // eslint-disable-next-line no-param-reassign\n context.body = content;\n resolve(true);\n },\n getHeader: context.get.bind(context),\n // @ts-expect-error ignored\n setHeader: context.set.bind(context),\n locals: context.state,\n },\n () => resolve(next())\n );\n });\n\n return Promise.all([ready, init]);\n });\n\n const serveAdmin: Core.MiddlewareHandler = async (ctx, next) => {\n await next();\n\n if (devMiddleware.context.outputFileSystem.createReadStream) {\n if (ctx.method !== 'HEAD' && ctx.method !== 'GET') {\n return;\n }\n\n if (ctx.body != null || ctx.status !== 404) {\n return;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain\n const filename = path.resolve(finalConfig.output?.path!, 'index.html');\n ctx.type = 'html';\n ctx.body = devMiddleware.context.outputFileSystem.createReadStream(filename);\n }\n };\n\n ctx.strapi.server.routes([\n {\n method: 'GET',\n path: `${ctx.adminPath}/:path*`,\n handler: serveAdmin,\n config: { auth: false },\n },\n ]);\n\n devMiddleware.waitUntilValid(() => {\n res({\n async close() {\n await Promise.all([\n promisify(devMiddleware.close.bind(devMiddleware))(),\n hotMiddleware.close(),\n promisify(compiler.close.bind(compiler))(),\n ]);\n },\n });\n });\n });\n};\n\nexport { watch };\nexport type { WebpackWatcher };\n"],"names":["watch","ctx","config","resolveDevelopmentConfig","finalConfig","mergeConfigWithUserConfig","logger","debug","os","EOL","Promise","res","compiler","webpack","devMiddleware","webpackDevMiddleware","hotMiddleware","webpackHotMiddleware","log","path","strapi","server","app","use","next","resolve","reject","req","err","context","ready","waitUntilValid","init","end","content","body","getHeader","get","bind","setHeader","set","locals","state","all","serveAdmin","outputFileSystem","createReadStream","method","status","filename","output","type","routes","adminPath","handler","auth","close","promisify"],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- /// <reference types="jest" />
2
1
  /**
3
2
  * inquirer v9+ is ESM-only; Jest resolves it here via moduleNameMapper in jest.config.js.
4
3
  * Override per test with jest.spyOn(inquirer, 'prompt') or prompt.mockResolvedValue(...).
@@ -1 +1 @@
1
- {"version":3,"file":"inquirer.d.ts","sourceRoot":"","sources":["../../../src/test/mocks/inquirer.ts"],"names":[],"mappings":";AAAA;;;GAGG;AACH,eAAO,MAAM,MAAM,0BAAkC,CAAC;;;;AAEtD,wBAEE"}
1
+ {"version":3,"file":"inquirer.d.ts","sourceRoot":"","sources":["../../../src/test/mocks/inquirer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,MAAM,0BAAkC,CAAC;;;;AAEtD,wBAEE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/strapi",
3
- "version": "5.48.1",
3
+ "version": "5.50.0",
4
4
  "description": "An open source headless CMS solution to create and manage your own API. It provides a powerful dashboard and features to make your life easier. Databases supported: MySQL, MariaDB, PostgreSQL, SQLite",
5
5
  "keywords": [
6
6
  "strapi",
@@ -109,25 +109,25 @@
109
109
  },
110
110
  "dependencies": {
111
111
  "@pmmmwh/react-refresh-webpack-plugin": "0.5.17",
112
- "@strapi/admin": "5.48.1",
113
- "@strapi/cloud-cli": "5.48.1",
114
- "@strapi/content-manager": "5.48.1",
115
- "@strapi/content-releases": "5.48.1",
116
- "@strapi/content-type-builder": "5.48.1",
117
- "@strapi/core": "5.48.1",
118
- "@strapi/data-transfer": "5.48.1",
119
- "@strapi/database": "5.48.1",
120
- "@strapi/email": "5.48.1",
121
- "@strapi/generators": "5.48.1",
122
- "@strapi/i18n": "5.48.1",
123
- "@strapi/logger": "5.48.1",
124
- "@strapi/openapi": "5.48.1",
125
- "@strapi/permissions": "5.48.1",
126
- "@strapi/review-workflows": "5.48.1",
127
- "@strapi/types": "5.48.1",
128
- "@strapi/typescript-utils": "5.48.1",
129
- "@strapi/upload": "5.48.1",
130
- "@strapi/utils": "5.48.1",
112
+ "@strapi/admin": "5.50.0",
113
+ "@strapi/cloud-cli": "5.50.0",
114
+ "@strapi/content-manager": "5.50.0",
115
+ "@strapi/content-releases": "5.50.0",
116
+ "@strapi/content-type-builder": "5.50.0",
117
+ "@strapi/core": "5.50.0",
118
+ "@strapi/data-transfer": "5.50.0",
119
+ "@strapi/database": "5.50.0",
120
+ "@strapi/email": "5.50.0",
121
+ "@strapi/generators": "5.50.0",
122
+ "@strapi/i18n": "5.50.0",
123
+ "@strapi/logger": "5.50.0",
124
+ "@strapi/openapi": "5.50.0",
125
+ "@strapi/permissions": "5.50.0",
126
+ "@strapi/review-workflows": "5.50.0",
127
+ "@strapi/types": "5.50.0",
128
+ "@strapi/typescript-utils": "5.50.0",
129
+ "@strapi/upload": "5.50.0",
130
+ "@strapi/utils": "5.50.0",
131
131
  "@types/nodemon": "1.19.6",
132
132
  "@vitejs/plugin-react-swc": "3.11.0",
133
133
  "boxen": "5.1.2",
@@ -163,7 +163,7 @@
163
163
  "resolve-from": "5.0.0",
164
164
  "semver": "7.7.4",
165
165
  "style-loader": "3.3.4",
166
- "typescript": "5.4.5",
166
+ "typescript": "5.9.3",
167
167
  "vite": "5.4.21",
168
168
  "webpack": "5.106.2",
169
169
  "webpack-bundle-analyzer": "5.3.0",
@@ -172,19 +172,18 @@
172
172
  "yup": "0.32.9"
173
173
  },
174
174
  "devDependencies": {
175
- "@strapi/ts-zen": "^0.2.0",
176
175
  "@types/fs-extra": "11.0.4",
177
176
  "@types/inquirer": "9.0.9",
178
177
  "@types/jest": "29.5.2",
179
178
  "@types/lodash": "^4.14.191",
180
- "@types/node": "24.10.0",
179
+ "@types/node": "20.19.41",
181
180
  "@types/webpack-bundle-analyzer": "4.7.0",
182
181
  "@types/webpack-hot-middleware": "2.25.12",
183
- "eslint-config-custom": "5.48.1",
182
+ "eslint-config-custom": "5.50.0",
184
183
  "jest": "29.6.0",
185
184
  "react": "18.3.1",
186
185
  "react-dom": "18.3.1",
187
- "tsconfig": "5.48.1",
186
+ "tsconfig": "5.50.0",
188
187
  "yalc": "1.0.0-pre.53"
189
188
  },
190
189
  "peerDependencies": {