@servicetitan/startup 34.0.0 → 34.1.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 (116) hide show
  1. package/dist/cli/commands/review/rules/require-tsconfig-references.d.ts +2 -0
  2. package/dist/cli/commands/review/rules/require-tsconfig-references.d.ts.map +1 -1
  3. package/dist/cli/commands/review/rules/require-tsconfig-references.js +17 -7
  4. package/dist/cli/commands/review/rules/require-tsconfig-references.js.map +1 -1
  5. package/dist/cli/commands/run-task.d.ts.map +1 -1
  6. package/dist/cli/commands/run-task.js +4 -6
  7. package/dist/cli/commands/run-task.js.map +1 -1
  8. package/dist/cli/commands/run-task.test.js +4 -10
  9. package/dist/cli/commands/run-task.test.js.map +1 -1
  10. package/dist/cli/tasks/index.d.ts +4 -0
  11. package/dist/cli/tasks/index.d.ts.map +1 -0
  12. package/dist/cli/tasks/index.js +22 -0
  13. package/dist/cli/tasks/index.js.map +1 -0
  14. package/dist/cli/tasks/swc-compile-package/get-swc-options.d.ts +23 -0
  15. package/dist/cli/tasks/swc-compile-package/get-swc-options.d.ts.map +1 -0
  16. package/dist/cli/tasks/swc-compile-package/get-swc-options.js +41 -0
  17. package/dist/cli/tasks/swc-compile-package/get-swc-options.js.map +1 -0
  18. package/dist/cli/tasks/swc-compile-package/index.d.ts +3 -0
  19. package/dist/cli/tasks/swc-compile-package/index.d.ts.map +1 -0
  20. package/dist/cli/tasks/swc-compile-package/index.js +21 -0
  21. package/dist/cli/tasks/swc-compile-package/index.js.map +1 -0
  22. package/dist/cli/tasks/{swc-compile-package.d.ts → swc-compile-package/swc-compile-package.d.ts} +1 -1
  23. package/dist/cli/tasks/swc-compile-package/swc-compile-package.d.ts.map +1 -0
  24. package/dist/cli/tasks/{swc-compile-package.js → swc-compile-package/swc-compile-package.js} +35 -55
  25. package/dist/cli/tasks/swc-compile-package/swc-compile-package.js.map +1 -0
  26. package/dist/cli/tasks/tsc-compile/index.d.ts +2 -0
  27. package/dist/cli/tasks/tsc-compile/index.d.ts.map +1 -0
  28. package/dist/cli/tasks/tsc-compile/index.js +20 -0
  29. package/dist/cli/tasks/tsc-compile/index.js.map +1 -0
  30. package/dist/cli/tasks/{tsc-compile.d.ts → tsc-compile/tsc-compile.d.ts} +1 -1
  31. package/dist/cli/tasks/tsc-compile/tsc-compile.d.ts.map +1 -0
  32. package/dist/cli/tasks/{tsc-compile.js → tsc-compile/tsc-compile.js} +2 -2
  33. package/dist/cli/tasks/tsc-compile/tsc-compile.js.map +1 -0
  34. package/dist/cli/tasks/tsc-compile-package/index.d.ts +2 -0
  35. package/dist/cli/tasks/tsc-compile-package/index.d.ts.map +1 -0
  36. package/dist/cli/tasks/tsc-compile-package/index.js +20 -0
  37. package/dist/cli/tasks/tsc-compile-package/index.js.map +1 -0
  38. package/dist/cli/tasks/{tsc-compile-package.d.ts → tsc-compile-package/tsc-compile-package.d.ts} +1 -1
  39. package/dist/cli/tasks/tsc-compile-package/tsc-compile-package.d.ts.map +1 -0
  40. package/dist/cli/tasks/{tsc-compile-package.js → tsc-compile-package/tsc-compile-package.js} +2 -2
  41. package/dist/cli/tasks/tsc-compile-package/tsc-compile-package.js.map +1 -0
  42. package/dist/cli/utils/bundle.js +1 -1
  43. package/dist/cli/utils/bundle.js.map +1 -1
  44. package/dist/storybook-config/index.d.ts +3 -0
  45. package/dist/storybook-config/index.d.ts.map +1 -0
  46. package/dist/storybook-config/index.js +21 -0
  47. package/dist/storybook-config/index.js.map +1 -0
  48. package/dist/storybook-config/swc.d.ts +28 -0
  49. package/dist/storybook-config/swc.d.ts.map +1 -0
  50. package/dist/storybook-config/swc.js +36 -0
  51. package/dist/storybook-config/swc.js.map +1 -0
  52. package/dist/storybook-config/webpack-final.d.ts +4 -0
  53. package/dist/storybook-config/webpack-final.d.ts.map +1 -0
  54. package/dist/storybook-config/webpack-final.js +96 -0
  55. package/dist/storybook-config/webpack-final.js.map +1 -0
  56. package/dist/webpack/configs/index.d.ts +1 -0
  57. package/dist/webpack/configs/index.d.ts.map +1 -1
  58. package/dist/webpack/configs/index.js +1 -0
  59. package/dist/webpack/configs/index.js.map +1 -1
  60. package/dist/webpack/configs/rules-config.d.ts +2 -3
  61. package/dist/webpack/configs/rules-config.d.ts.map +1 -1
  62. package/dist/webpack/configs/rules-config.js.map +1 -1
  63. package/dist/webpack/configs/types.d.ts +6 -6
  64. package/dist/webpack/configs/types.d.ts.map +1 -1
  65. package/dist/webpack/utils/testing/get-compiler.js.map +1 -1
  66. package/package.json +16 -14
  67. package/src/cli/commands/__tests__/build.test.ts +0 -3
  68. package/src/cli/commands/__tests__/bundle-package.test.ts +0 -2
  69. package/src/cli/commands/__tests__/get-command.test.ts +0 -3
  70. package/src/cli/commands/__tests__/kendo-ui-license.test.ts +0 -2
  71. package/src/cli/commands/__tests__/lint.test.ts +0 -2
  72. package/src/cli/commands/__tests__/mfe-list.test.ts +0 -2
  73. package/src/cli/commands/__tests__/mfe-package-publish.test.ts +0 -2
  74. package/src/cli/commands/__tests__/mfe-package-rollback.test.ts +0 -2
  75. package/src/cli/commands/__tests__/mfe-publish.test.ts +0 -2
  76. package/src/cli/commands/__tests__/prepare-package.test.ts +0 -3
  77. package/src/cli/commands/__tests__/start.test.ts +0 -3
  78. package/src/cli/commands/__tests__/upload-sourcemaps.test.ts +0 -2
  79. package/src/cli/commands/review/rules/__tests__/require-tsconfig-references.test.ts +124 -246
  80. package/src/cli/commands/review/rules/require-tsconfig-references.ts +24 -8
  81. package/src/cli/commands/run-task.test.ts +1 -6
  82. package/src/cli/commands/run-task.ts +1 -3
  83. package/src/cli/commands/test/runners/__tests__/jest.test.ts +1 -1
  84. package/src/cli/tasks/index.ts +3 -0
  85. package/src/cli/tasks/swc-compile-package/__tests__/get-swc-options.test.ts +77 -0
  86. package/src/cli/tasks/{__tests__ → swc-compile-package/__tests__}/swc-compile-package.test.ts +14 -76
  87. package/src/cli/tasks/swc-compile-package/get-swc-options.ts +34 -0
  88. package/src/cli/tasks/swc-compile-package/index.ts +2 -0
  89. package/src/cli/tasks/swc-compile-package/swc-cli.d.ts +22 -0
  90. package/src/cli/tasks/{swc-compile-package.ts → swc-compile-package/swc-compile-package.ts} +33 -52
  91. package/src/cli/tasks/{__tests__ → tsc-compile/__tests__}/tsc-compile.test.ts +1 -3
  92. package/src/cli/tasks/tsc-compile/index.ts +1 -0
  93. package/src/cli/tasks/{tsc-compile.ts → tsc-compile/tsc-compile.ts} +9 -2
  94. package/src/cli/tasks/{__tests__ → tsc-compile-package/__tests__}/tsc-compile-package.test.ts +2 -4
  95. package/src/cli/tasks/tsc-compile-package/index.ts +1 -0
  96. package/src/cli/tasks/{tsc-compile-package.ts → tsc-compile-package/tsc-compile-package.ts} +2 -2
  97. package/src/cli/utils/bundle.ts +1 -1
  98. package/src/storybook-config/__tests__/swc.test.ts +37 -0
  99. package/src/storybook-config/__tests__/webpack-final.test.ts +133 -0
  100. package/src/storybook-config/index.ts +2 -0
  101. package/src/storybook-config/swc.ts +24 -0
  102. package/src/storybook-config/webpack-final.ts +72 -0
  103. package/src/webpack/__tests__/create-webpack-config-shared-dependencies.test.ts +0 -2
  104. package/src/webpack/__tests__/create-webpack-config-web-component.test.ts +0 -2
  105. package/src/webpack/__tests__/create-webpack-config.test.ts +0 -2
  106. package/src/webpack/configs/index.ts +1 -0
  107. package/src/webpack/configs/rules-config.ts +5 -10
  108. package/src/webpack/configs/types.ts +6 -6
  109. package/src/webpack/utils/testing/get-compiler.ts +1 -1
  110. package/dist/cli/tasks/swc-compile-package.d.ts.map +0 -1
  111. package/dist/cli/tasks/swc-compile-package.js.map +0 -1
  112. package/dist/cli/tasks/tsc-compile-package.d.ts.map +0 -1
  113. package/dist/cli/tasks/tsc-compile-package.js.map +0 -1
  114. package/dist/cli/tasks/tsc-compile.d.ts.map +0 -1
  115. package/dist/cli/tasks/tsc-compile.js.map +0 -1
  116. package/src/cli/tasks/swc-cli.d.ts +0 -14
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ _export_star(require("./tsc-compile-package"), exports);
6
+ function _export_star(from, to) {
7
+ Object.keys(from).forEach(function(k) {
8
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
9
+ Object.defineProperty(to, k, {
10
+ enumerable: true,
11
+ get: function() {
12
+ return from[k];
13
+ }
14
+ });
15
+ }
16
+ });
17
+ return from;
18
+ }
19
+
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/cli/tasks/tsc-compile-package/index.ts"],"sourcesContent":["export * from './tsc-compile-package';\n"],"names":[],"mappings":";;;;qBAAc"}
@@ -1,4 +1,4 @@
1
- import { CliTask } from './cli-task';
1
+ import { CliTask } from '../cli-task';
2
2
  interface Args {
3
3
  watch?: boolean;
4
4
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tsc-compile-package.d.ts","sourceRoot":"","sources":["../../../../src/cli/tasks/tsc-compile-package/tsc-compile-package.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,UAAU,IAAI;IACV,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,iBAAkB,SAAQ,OAAO;gBAC9B,EAAE,KAAK,EAAE,EAAE,IAAI;IAYrB,OAAO;CAsBhB"}
@@ -8,8 +8,8 @@ Object.defineProperty(exports, "TscCompilePackage", {
8
8
  return TscCompilePackage;
9
9
  }
10
10
  });
11
- const _utils = require("../../utils");
12
- const _clitask = require("./cli-task");
11
+ const _utils = require("../../../utils");
12
+ const _clitask = require("../cli-task");
13
13
  class TscCompilePackage extends _clitask.CliTask {
14
14
  async execute() {
15
15
  const tsConfig = (0, _utils.getTsConfig)();
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/cli/tasks/tsc-compile-package/tsc-compile-package.ts"],"sourcesContent":["import { getTsConfig } from '../../../utils';\nimport { CliTask } from '../cli-task';\n\ninterface Args {\n watch?: boolean;\n}\n\nexport class TscCompilePackage extends CliTask {\n constructor({ watch }: Args) {\n super({\n name: 'tsc-compile-package',\n global: false,\n indicators: {\n end: 'Watching for file changes.',\n watchStart: 'Starting incremental compilation.',\n },\n watch,\n });\n }\n\n async execute() {\n const tsConfig = getTsConfig();\n await this.runChildProcess(\n 'tsc',\n [\n this.watch ? '-w' : undefined,\n '--pretty',\n '--preserveWatchOutput',\n '--noCheck',\n '--composite',\n 'false',\n '--declaration',\n 'false',\n '--declarationMap',\n 'false',\n '--tsBuildInfoFile',\n 'tsconfig.compile.tsbuildinfo',\n '--project',\n tsConfig,\n ].filter(i => i !== undefined)\n );\n }\n}\n"],"names":["TscCompilePackage","CliTask","execute","tsConfig","getTsConfig","runChildProcess","watch","undefined","filter","i","name","global","indicators","end","watchStart"],"mappings":";;;;+BAOaA;;;eAAAA;;;uBAPe;yBACJ;AAMjB,MAAMA,0BAA0BC,gBAAO;IAa1C,MAAMC,UAAU;QACZ,MAAMC,WAAWC,IAAAA,kBAAW;QAC5B,MAAM,IAAI,CAACC,eAAe,CACtB,OACA;YACI,IAAI,CAACC,KAAK,GAAG,OAAOC;YACpB;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACAJ;SACH,CAACK,MAAM,CAACC,CAAAA,IAAKA,MAAMF;IAE5B;IAjCA,YAAY,EAAED,KAAK,EAAQ,CAAE;QACzB,KAAK,CAAC;YACFI,MAAM;YACNC,QAAQ;YACRC,YAAY;gBACRC,KAAK;gBACLC,YAAY;YAChB;YACAR;QACJ;IACJ;AAwBJ"}
@@ -181,7 +181,7 @@ async function runWatch(config) {
181
181
  });
182
182
  }
183
183
  function createWebpackCompiler(config) {
184
- return (0, _webpack.default)(config); // webpack only potentially returns null when given a callback argument
184
+ return (0, _webpack.default)(config);
185
185
  }
186
186
 
187
187
  //# sourceMappingURL=bundle.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/cli/utils/bundle.ts"],"sourcesContent":["import crypto from 'crypto';\nimport fs from 'fs';\nimport path from 'path';\nimport { getPortPromise } from 'portfinder';\nimport webpack, { Configuration } from 'webpack';\nimport WebpackDevServer from 'webpack-dev-server';\nimport {\n getPackageName,\n hasHeadlessBundle,\n isDevServerDisabled,\n isExposeSharedDependencies,\n isWebComponent,\n log,\n pick,\n} from '../../utils';\nimport { Overrides, createWebpackConfig } from '../../webpack';\nimport { stringifyConfig } from '../../webpack/utils';\n\ninterface Options {\n buildStat?: boolean;\n codeCoverage?: boolean;\n config?: string;\n emitExposedDependencies?: boolean | Pick<Configuration, 'output'>;\n useWatchConfig?: boolean;\n watch?: boolean;\n}\n\nfunction getName() {\n const packageName = getPackageName()\n .replace(/\\//g, '-')\n .replace(/[^\\w-]/g, '');\n const hash = crypto.randomBytes(4).toString('hex');\n\n return `${packageName}-${hash}`;\n}\n\nexport const webpackDevConfigFileName = 'webpack.dev.config.js';\nexport const webpackProdConfigFileName = 'webpack.prod.config.js';\n\nexport async function bundle(options: Options = {}) {\n const { emitExposedDependencies, useWatchConfig, watch } = options;\n if (emitExposedDependencies) {\n if (watch) {\n throw new Error('cannot bundle exposed dependencies in watch mode');\n }\n if (!isExposeSharedDependencies()) {\n return;\n }\n }\n\n log.info(`Bundling ${emitExposedDependencies ? 'exposed dependencies' : 'package'}...`);\n\n const mode = watch || useWatchConfig ? 'development' : 'production';\n const fallback = watch || useWatchConfig ? webpackDevConfigFileName : webpackProdConfigFileName;\n const customConfig = readWebpackConfig({ ...options, fallback });\n const webpackOptions = getWebpackOptions(options, customConfig);\n\n /* istanbul ignore next: debug only */\n log.debug('custom-webpack-config', () => stringifyConfig(customConfig));\n\n if (isWebComponent()) {\n return bundleWebComponent({ customConfig, mode, watch, webpackOptions });\n }\n\n const config =\n customConfig && !emitExposedDependencies\n ? customConfig\n : createWebpackConfig({ configuration: { mode } }, webpackOptions);\n\n if (watch) {\n return isDevServerDisabled() ? runWatch(config) : runServe(config);\n }\n\n return run(config);\n}\n\nfunction bundleWebComponent({\n customConfig,\n mode,\n watch,\n webpackOptions,\n}: {\n customConfig: ReturnType<typeof readWebpackConfig>;\n mode: 'development' | 'production';\n watch?: boolean;\n webpackOptions: ReturnType<typeof getWebpackOptions>;\n}) {\n const overrides: Overrides = {\n configuration: { ...customConfig?.configuration, mode },\n plugins: customConfig?.plugins,\n };\n\n const fullConfig = createWebpackConfig(overrides, webpackOptions);\n const lightConfig = createWebpackConfig(overrides, { ...webpackOptions, embed: true });\n const headlessConfig = hasHeadlessBundle()\n ? createWebpackConfig(overrides, {\n ...webpackOptions,\n headless: true,\n })\n : undefined;\n\n const promises = watch\n ? [\n runWatch(lightConfig),\n isDevServerDisabled() ? runWatch(fullConfig) : runServe(fullConfig),\n headlessConfig && runWatch(headlessConfig),\n ]\n : [run(lightConfig), run(fullConfig), headlessConfig && run(headlessConfig)];\n\n return Promise.all(promises.filter(promise => !!promise));\n}\n\nfunction getWebpackOptions(options: Options, customConfig?: Record<string, any>) {\n const result = {\n name: getName(),\n ...pick(options, ['buildStat', 'codeCoverage', 'emitExposedDependencies']),\n };\n\n if (result.emitExposedDependencies && customConfig) {\n result.emitExposedDependencies = { output: customConfig.output };\n }\n\n return result;\n}\n\nfunction readWebpackConfig({ config, fallback }: Options & { fallback: string }) {\n return readConfig(config) ?? readConfig(fallback);\n}\n\nfunction readConfig(relativePath?: string): Record<string, any> | undefined {\n if (relativePath && fs.existsSync(relativePath)) {\n return require(path.resolve(relativePath));\n }\n}\n\nasync function run(config: Configuration) {\n const compiler = createWebpackCompiler(config);\n\n const stats = await new Promise<webpack.Stats>((resolve, reject) => {\n compiler.run((error, stats) => {\n if (!stats || error) {\n return reject(error ?? new Error('Something went wrong.'));\n }\n\n if (stats.hasErrors()) {\n return reject(new Error(stats.toString('errors-only')));\n }\n\n compiler.close(() => resolve(stats));\n });\n });\n\n process.stdout.write(stats.toString(config.stats) + '\\n');\n}\n\nasync function runServe({ devServer = {}, ...config }: Configuration) {\n const compiler = createWebpackCompiler(config);\n const host = devServer.host ?? 'localhost';\n const port = await getPortPromise({\n port: Number(devServer.port) || 8080,\n host,\n });\n\n return new Promise<void>((_0, reject) => {\n const server = new WebpackDevServer({ ...devServer, host, port }, compiler);\n server.startCallback(e => {\n if (e) {\n server.stopCallback(() => {\n reject(e);\n });\n }\n });\n });\n}\n\nasync function runWatch(config: Configuration) {\n const compiler = createWebpackCompiler(config);\n return new Promise<void>((_0, reject) => {\n const watching = compiler.watch({}, e => {\n if (e) {\n watching?.close(() => {\n reject(e);\n });\n }\n });\n });\n}\n\nfunction createWebpackCompiler(config: Configuration) {\n return webpack(config)!; // webpack only potentially returns null when given a callback argument\n}\n"],"names":["bundle","webpackDevConfigFileName","webpackProdConfigFileName","getName","packageName","getPackageName","replace","hash","crypto","randomBytes","toString","options","emitExposedDependencies","useWatchConfig","watch","Error","isExposeSharedDependencies","log","info","mode","fallback","customConfig","readWebpackConfig","webpackOptions","getWebpackOptions","debug","stringifyConfig","isWebComponent","bundleWebComponent","config","createWebpackConfig","configuration","isDevServerDisabled","runWatch","runServe","run","overrides","plugins","fullConfig","lightConfig","embed","headlessConfig","hasHeadlessBundle","headless","undefined","promises","Promise","all","filter","promise","result","name","pick","output","readConfig","relativePath","fs","existsSync","require","path","resolve","compiler","createWebpackCompiler","stats","reject","error","hasErrors","close","process","stdout","write","devServer","host","port","getPortPromise","Number","_0","server","WebpackDevServer","startCallback","e","stopCallback","watching","webpack"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/cli/utils/bundle.ts"],"sourcesContent":["import crypto from 'crypto';\nimport fs from 'fs';\nimport path from 'path';\nimport { getPortPromise } from 'portfinder';\nimport webpack, { Configuration } from 'webpack';\nimport WebpackDevServer from 'webpack-dev-server';\nimport {\n getPackageName,\n hasHeadlessBundle,\n isDevServerDisabled,\n isExposeSharedDependencies,\n isWebComponent,\n log,\n pick,\n} from '../../utils';\nimport { Overrides, createWebpackConfig } from '../../webpack';\nimport { stringifyConfig } from '../../webpack/utils';\n\ninterface Options {\n buildStat?: boolean;\n codeCoverage?: boolean;\n config?: string;\n emitExposedDependencies?: boolean | Pick<Configuration, 'output'>;\n useWatchConfig?: boolean;\n watch?: boolean;\n}\n\nfunction getName() {\n const packageName = getPackageName()\n .replace(/\\//g, '-')\n .replace(/[^\\w-]/g, '');\n const hash = crypto.randomBytes(4).toString('hex');\n\n return `${packageName}-${hash}`;\n}\n\nexport const webpackDevConfigFileName = 'webpack.dev.config.js';\nexport const webpackProdConfigFileName = 'webpack.prod.config.js';\n\nexport async function bundle(options: Options = {}) {\n const { emitExposedDependencies, useWatchConfig, watch } = options;\n if (emitExposedDependencies) {\n if (watch) {\n throw new Error('cannot bundle exposed dependencies in watch mode');\n }\n if (!isExposeSharedDependencies()) {\n return;\n }\n }\n\n log.info(`Bundling ${emitExposedDependencies ? 'exposed dependencies' : 'package'}...`);\n\n const mode = watch || useWatchConfig ? 'development' : 'production';\n const fallback = watch || useWatchConfig ? webpackDevConfigFileName : webpackProdConfigFileName;\n const customConfig = readWebpackConfig({ ...options, fallback });\n const webpackOptions = getWebpackOptions(options, customConfig);\n\n /* istanbul ignore next: debug only */\n log.debug('custom-webpack-config', () => stringifyConfig(customConfig));\n\n if (isWebComponent()) {\n return bundleWebComponent({ customConfig, mode, watch, webpackOptions });\n }\n\n const config =\n customConfig && !emitExposedDependencies\n ? customConfig\n : createWebpackConfig({ configuration: { mode } }, webpackOptions);\n\n if (watch) {\n return isDevServerDisabled() ? runWatch(config) : runServe(config);\n }\n\n return run(config);\n}\n\nfunction bundleWebComponent({\n customConfig,\n mode,\n watch,\n webpackOptions,\n}: {\n customConfig: ReturnType<typeof readWebpackConfig>;\n mode: 'development' | 'production';\n watch?: boolean;\n webpackOptions: ReturnType<typeof getWebpackOptions>;\n}) {\n const overrides: Overrides = {\n configuration: { ...customConfig?.configuration, mode },\n plugins: customConfig?.plugins,\n };\n\n const fullConfig = createWebpackConfig(overrides, webpackOptions);\n const lightConfig = createWebpackConfig(overrides, { ...webpackOptions, embed: true });\n const headlessConfig = hasHeadlessBundle()\n ? createWebpackConfig(overrides, {\n ...webpackOptions,\n headless: true,\n })\n : undefined;\n\n const promises = watch\n ? [\n runWatch(lightConfig),\n isDevServerDisabled() ? runWatch(fullConfig) : runServe(fullConfig),\n headlessConfig && runWatch(headlessConfig),\n ]\n : [run(lightConfig), run(fullConfig), headlessConfig && run(headlessConfig)];\n\n return Promise.all(promises.filter(promise => !!promise));\n}\n\nfunction getWebpackOptions(options: Options, customConfig?: Record<string, any>) {\n const result = {\n name: getName(),\n ...pick(options, ['buildStat', 'codeCoverage', 'emitExposedDependencies']),\n };\n\n if (result.emitExposedDependencies && customConfig) {\n result.emitExposedDependencies = { output: customConfig.output };\n }\n\n return result;\n}\n\nfunction readWebpackConfig({ config, fallback }: Options & { fallback: string }) {\n return readConfig(config) ?? readConfig(fallback);\n}\n\nfunction readConfig(relativePath?: string): Record<string, any> | undefined {\n if (relativePath && fs.existsSync(relativePath)) {\n return require(path.resolve(relativePath));\n }\n}\n\nasync function run(config: Configuration) {\n const compiler = createWebpackCompiler(config);\n\n const stats = await new Promise<webpack.Stats>((resolve, reject) => {\n compiler.run((error, stats) => {\n if (!stats || error) {\n return reject(error ?? new Error('Something went wrong.'));\n }\n\n if (stats.hasErrors()) {\n return reject(new Error(stats.toString('errors-only')));\n }\n\n compiler.close(() => resolve(stats));\n });\n });\n\n process.stdout.write(stats.toString(config.stats) + '\\n');\n}\n\nasync function runServe({ devServer = {}, ...config }: Configuration) {\n const compiler = createWebpackCompiler(config);\n const host = devServer.host ?? 'localhost';\n const port = await getPortPromise({\n port: Number(devServer.port) || 8080,\n host,\n });\n\n return new Promise<void>((_0, reject) => {\n const server = new WebpackDevServer({ ...devServer, host, port }, compiler);\n server.startCallback(e => {\n if (e) {\n server.stopCallback(() => {\n reject(e);\n });\n }\n });\n });\n}\n\nasync function runWatch(config: Configuration) {\n const compiler = createWebpackCompiler(config);\n return new Promise<void>((_0, reject) => {\n const watching = compiler.watch({}, e => {\n if (e) {\n watching?.close(() => {\n reject(e);\n });\n }\n });\n });\n}\n\nfunction createWebpackCompiler(config: Configuration) {\n return webpack(config);\n}\n"],"names":["bundle","webpackDevConfigFileName","webpackProdConfigFileName","getName","packageName","getPackageName","replace","hash","crypto","randomBytes","toString","options","emitExposedDependencies","useWatchConfig","watch","Error","isExposeSharedDependencies","log","info","mode","fallback","customConfig","readWebpackConfig","webpackOptions","getWebpackOptions","debug","stringifyConfig","isWebComponent","bundleWebComponent","config","createWebpackConfig","configuration","isDevServerDisabled","runWatch","runServe","run","overrides","plugins","fullConfig","lightConfig","embed","headlessConfig","hasHeadlessBundle","headless","undefined","promises","Promise","all","filter","promise","result","name","pick","output","readConfig","relativePath","fs","existsSync","require","path","resolve","compiler","createWebpackCompiler","stats","reject","error","hasErrors","close","process","stdout","write","devServer","host","port","getPortPromise","Number","_0","server","WebpackDevServer","startCallback","e","stopCallback","watching","webpack"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './swc';
2
+ export * from './webpack-final';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storybook-config/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ _export_star(require("./swc"), exports);
6
+ _export_star(require("./webpack-final"), exports);
7
+ function _export_star(from, to) {
8
+ Object.keys(from).forEach(function(k) {
9
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
10
+ Object.defineProperty(to, k, {
11
+ enumerable: true,
12
+ get: function() {
13
+ return from[k];
14
+ }
15
+ });
16
+ }
17
+ });
18
+ return from;
19
+ }
20
+
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/storybook-config/index.ts"],"sourcesContent":["export * from './swc';\nexport * from './webpack-final';\n"],"names":[],"mappings":";;;;qBAAc;qBACA"}
@@ -0,0 +1,28 @@
1
+ import type { SwcOptions } from '@swc/cli';
2
+ export declare function swc(config: SwcOptions): {
3
+ jsc: {
4
+ parser: {
5
+ syntax: "typescript";
6
+ tsx: true;
7
+ decorators: true;
8
+ };
9
+ target: import("@swc/types").JscTarget | undefined;
10
+ transform: {
11
+ legacyDecorator: boolean | undefined;
12
+ decoratorMetadata: boolean | undefined;
13
+ react: {
14
+ runtime: "automatic";
15
+ };
16
+ };
17
+ };
18
+ sourceMaps: boolean | "inline" | undefined;
19
+ module: {
20
+ type: "commonjs" | "es6";
21
+ };
22
+ test?: string | string[];
23
+ exclude?: string | string[];
24
+ env?: import("@swc/types").EnvConfig;
25
+ minify?: boolean;
26
+ inlineSourcesContent?: boolean;
27
+ };
28
+ //# sourceMappingURL=swc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swc.d.ts","sourceRoot":"","sources":["../../src/storybook-config/swc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAM3C,wBAAgB,GAAG,CAAC,MAAM,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;EAiBrC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "swc", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return swc;
9
+ }
10
+ });
11
+ const _nodeutil = require("node:util");
12
+ const _tasks = require("../cli/tasks");
13
+ const _utils = require("../cli/utils");
14
+ const _utils1 = require("../utils");
15
+ function swc(config) {
16
+ const tsConfig = new _utils.TSConfig((0, _utils1.getTsConfig)());
17
+ const swcOptions = (0, _tasks.getSwcOptions)(tsConfig);
18
+ /*
19
+ * We cannot set 'jsc.target' because Storybook always sets 'env'
20
+ * (see https://github.com/storybookjs/storybook/blob/24db05a0e4b499a99fb5a53b5a70fa894fa6a8c8/code/builders/builder-webpack5/src/presets/custom-webpack-preset.ts#L19)
21
+ * and 'env' and 'jsc.target' cannot be used together
22
+ */ if (swcOptions.jsc.target) {
23
+ delete swcOptions.jsc.target;
24
+ }
25
+ /* istanbul ignore next: debug only */ _utils1.log.debug('storybook-config:swc', ()=>(0, _nodeutil.inspect)({
26
+ swcOptions
27
+ }, {
28
+ depth: null
29
+ }));
30
+ return {
31
+ ...config,
32
+ ...swcOptions
33
+ };
34
+ }
35
+
36
+ //# sourceMappingURL=swc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/storybook-config/swc.ts"],"sourcesContent":["import type { SwcOptions } from '@swc/cli';\nimport { inspect } from 'node:util';\nimport { getSwcOptions } from '../cli/tasks';\nimport { TSConfig } from '../cli/utils';\nimport { getTsConfig, log } from '../utils';\n\nexport function swc(config: SwcOptions) {\n const tsConfig = new TSConfig(getTsConfig());\n const swcOptions = getSwcOptions(tsConfig);\n\n /*\n * We cannot set 'jsc.target' because Storybook always sets 'env'\n * (see https://github.com/storybookjs/storybook/blob/24db05a0e4b499a99fb5a53b5a70fa894fa6a8c8/code/builders/builder-webpack5/src/presets/custom-webpack-preset.ts#L19)\n * and 'env' and 'jsc.target' cannot be used together\n */\n if (swcOptions.jsc.target) {\n delete swcOptions.jsc.target;\n }\n\n /* istanbul ignore next: debug only */\n log.debug('storybook-config:swc', () => inspect({ swcOptions }, { depth: null }));\n\n return { ...config, ...swcOptions };\n}\n"],"names":["swc","config","tsConfig","TSConfig","getTsConfig","swcOptions","getSwcOptions","jsc","target","log","debug","inspect","depth"],"mappings":";;;;+BAMgBA;;;eAAAA;;;0BALQ;uBACM;uBACL;wBACQ;AAE1B,SAASA,IAAIC,MAAkB;IAClC,MAAMC,WAAW,IAAIC,eAAQ,CAACC,IAAAA,mBAAW;IACzC,MAAMC,aAAaC,IAAAA,oBAAa,EAACJ;IAEjC;;;;KAIC,GACD,IAAIG,WAAWE,GAAG,CAACC,MAAM,EAAE;QACvB,OAAOH,WAAWE,GAAG,CAACC,MAAM;IAChC;IAEA,oCAAoC,GACpCC,WAAG,CAACC,KAAK,CAAC,wBAAwB,IAAMC,IAAAA,iBAAO,EAAC;YAAEN;QAAW,GAAG;YAAEO,OAAO;QAAK;IAE9E,OAAO;QAAE,GAAGX,MAAM;QAAE,GAAGI,UAAU;IAAC;AACtC"}
@@ -0,0 +1,4 @@
1
+ import type { Configuration } from 'webpack';
2
+ import { Overrides } from '../webpack/configs';
3
+ export declare function webpackFinal(config: Configuration, overrides?: Overrides): Configuration;
4
+ //# sourceMappingURL=webpack-final.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webpack-final.d.ts","sourceRoot":"","sources":["../../src/storybook-config/webpack-final.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,OAAO,EAAW,SAAS,EAAe,MAAM,oBAAoB,CAAC;AAGrE,wBAAgB,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,GAAE,SAAc,GAAG,aAAa,CAgB5F"}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "webpackFinal", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return webpackFinal;
9
+ }
10
+ });
11
+ const _nodeutil = require("node:util");
12
+ const _utils = require("../utils");
13
+ const _configs = require("../webpack/configs");
14
+ const _plugins = require("../webpack/configs/plugins");
15
+ function webpackFinal(config, overrides = {}) {
16
+ var _config_plugins;
17
+ var _config_module;
18
+ const context = getContext(config);
19
+ const rules = getRules(context, overrides);
20
+ const plugins = getPlugins(context, overrides);
21
+ /* istanbul ignore next: debug only */ _utils.log.debug('storybook-config:webpack-final', ()=>(0, _nodeutil.inspect)({
22
+ rules,
23
+ plugins
24
+ }, {
25
+ depth: null
26
+ }));
27
+ return {
28
+ ...config,
29
+ module: {
30
+ ...config.module,
31
+ rules: [
32
+ ...transformDefaultRules((_config_module = config.module) === null || _config_module === void 0 ? void 0 : _config_module.rules),
33
+ ...rules
34
+ ]
35
+ },
36
+ plugins: [
37
+ ...(_config_plugins = config.plugins) !== null && _config_plugins !== void 0 ? _config_plugins : [],
38
+ ...plugins
39
+ ]
40
+ };
41
+ }
42
+ function getContext(config) {
43
+ return {
44
+ destination: '',
45
+ isProduction: config.mode === 'production',
46
+ name: '',
47
+ packageData: {},
48
+ sharedDependencies: {},
49
+ source: ''
50
+ };
51
+ }
52
+ function getPlugins(context, overrides) {
53
+ return [
54
+ (0, _plugins.miniCssExtractPlugin)(context, overrides)
55
+ ].filter((plugin)=>!!plugin);
56
+ }
57
+ function getRules(context, overrides) {
58
+ const include = [
59
+ '.module.css',
60
+ '.module.less',
61
+ '.less',
62
+ '.svg'
63
+ ];
64
+ const exclude = [
65
+ '.css'
66
+ ];
67
+ const { rules } = (0, _configs.rulesConfig)(context, overrides);
68
+ return rules.filter(({ test })=>!(test instanceof RegExp) || include.some((ext)=>test.exec(ext) && !exclude.some((ext)=>test.exec(ext))));
69
+ }
70
+ function transformDefaultRules(rules = []) {
71
+ const result = rules.map((rule)=>{
72
+ if (rule && typeof rule === 'object' && rule.test instanceof RegExp) {
73
+ if (rule.test.test('.css')) {
74
+ return {
75
+ ...rule,
76
+ exclude: /\.module.css$/
77
+ };
78
+ }
79
+ if (rule.test.test('.svg')) {
80
+ return {
81
+ ...rule,
82
+ exclude: /\.svg$/i
83
+ };
84
+ }
85
+ }
86
+ return rule;
87
+ });
88
+ /* istanbul ignore next: debug only */ _utils.log.debug('storybook-config:transform-default-rules', ()=>(0, _nodeutil.inspect)({
89
+ result
90
+ }, {
91
+ depth: null
92
+ }));
93
+ return result;
94
+ }
95
+
96
+ //# sourceMappingURL=webpack-final.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/storybook-config/webpack-final.ts"],"sourcesContent":["import { inspect } from 'node:util';\nimport type { Configuration } from 'webpack';\nimport { log } from '../utils';\nimport { Context, Overrides, rulesConfig } from '../webpack/configs';\nimport { miniCssExtractPlugin } from '../webpack/configs/plugins';\n\nexport function webpackFinal(config: Configuration, overrides: Overrides = {}): Configuration {\n const context = getContext(config);\n const rules = getRules(context, overrides);\n const plugins = getPlugins(context, overrides);\n\n /* istanbul ignore next: debug only */\n log.debug('storybook-config:webpack-final', () => inspect({ rules, plugins }, { depth: null }));\n\n return {\n ...config,\n module: {\n ...config.module,\n rules: [...transformDefaultRules(config.module?.rules), ...rules],\n },\n plugins: [...(config.plugins ?? []), ...plugins],\n };\n}\n\nfunction getContext(config: Configuration): Context {\n return {\n destination: '',\n isProduction: config.mode === 'production',\n name: '',\n packageData: {} as any,\n sharedDependencies: {},\n source: '',\n };\n}\n\nfunction getPlugins(context: Context, overrides: Overrides) {\n return [miniCssExtractPlugin(context, overrides)].filter(plugin => !!plugin);\n}\n\nfunction getRules(context: Context, overrides: Overrides) {\n const include = ['.module.css', '.module.less', '.less', '.svg'];\n const exclude = ['.css'];\n\n const { rules } = rulesConfig(context, overrides);\n\n return rules.filter(\n ({ test }) =>\n !(test instanceof RegExp) ||\n include.some(ext => test.exec(ext) && !exclude.some(ext => test.exec(ext)))\n );\n}\n\nfunction transformDefaultRules(rules: NonNullable<Configuration['module']>['rules'] = []) {\n const result = rules.map(rule => {\n if (rule && typeof rule === 'object' && rule.test instanceof RegExp) {\n if (rule.test.test('.css')) {\n return { ...rule, exclude: /\\.module.css$/ };\n }\n if (rule.test.test('.svg')) {\n return { ...rule, exclude: /\\.svg$/i };\n }\n }\n return rule;\n });\n\n /* istanbul ignore next: debug only */\n log.debug('storybook-config:transform-default-rules', () =>\n inspect({ result }, { depth: null })\n );\n\n return result;\n}\n"],"names":["webpackFinal","config","overrides","context","getContext","rules","getRules","plugins","getPlugins","log","debug","inspect","depth","module","transformDefaultRules","destination","isProduction","mode","name","packageData","sharedDependencies","source","miniCssExtractPlugin","filter","plugin","include","exclude","rulesConfig","test","RegExp","some","ext","exec","result","map","rule"],"mappings":";;;;+BAMgBA;;;eAAAA;;;0BANQ;uBAEJ;yBAC4B;yBACX;AAE9B,SAASA,aAAaC,MAAqB,EAAEC,YAAuB,CAAC,CAAC;QAcvDD;QAFuBA;IAXzC,MAAME,UAAUC,WAAWH;IAC3B,MAAMI,QAAQC,SAASH,SAASD;IAChC,MAAMK,UAAUC,WAAWL,SAASD;IAEpC,oCAAoC,GACpCO,UAAG,CAACC,KAAK,CAAC,kCAAkC,IAAMC,IAAAA,iBAAO,EAAC;YAAEN;YAAOE;QAAQ,GAAG;YAAEK,OAAO;QAAK;IAE5F,OAAO;QACH,GAAGX,MAAM;QACTY,QAAQ;YACJ,GAAGZ,OAAOY,MAAM;YAChBR,OAAO;mBAAIS,uBAAsBb,iBAAAA,OAAOY,MAAM,cAAbZ,qCAAAA,eAAeI,KAAK;mBAAMA;aAAM;QACrE;QACAE,SAAS;gBAAKN,kBAAAA,OAAOM,OAAO,cAAdN,6BAAAA,kBAAkB,EAAE;eAAMM;SAAQ;IACpD;AACJ;AAEA,SAASH,WAAWH,MAAqB;IACrC,OAAO;QACHc,aAAa;QACbC,cAAcf,OAAOgB,IAAI,KAAK;QAC9BC,MAAM;QACNC,aAAa,CAAC;QACdC,oBAAoB,CAAC;QACrBC,QAAQ;IACZ;AACJ;AAEA,SAASb,WAAWL,OAAgB,EAAED,SAAoB;IACtD,OAAO;QAACoB,IAAAA,6BAAoB,EAACnB,SAASD;KAAW,CAACqB,MAAM,CAACC,CAAAA,SAAU,CAAC,CAACA;AACzE;AAEA,SAASlB,SAASH,OAAgB,EAAED,SAAoB;IACpD,MAAMuB,UAAU;QAAC;QAAe;QAAgB;QAAS;KAAO;IAChE,MAAMC,UAAU;QAAC;KAAO;IAExB,MAAM,EAAErB,KAAK,EAAE,GAAGsB,IAAAA,oBAAW,EAACxB,SAASD;IAEvC,OAAOG,MAAMkB,MAAM,CACf,CAAC,EAAEK,IAAI,EAAE,GACL,CAAEA,CAAAA,gBAAgBC,MAAK,KACvBJ,QAAQK,IAAI,CAACC,CAAAA,MAAOH,KAAKI,IAAI,CAACD,QAAQ,CAACL,QAAQI,IAAI,CAACC,CAAAA,MAAOH,KAAKI,IAAI,CAACD;AAEjF;AAEA,SAASjB,sBAAsBT,QAAuD,EAAE;IACpF,MAAM4B,SAAS5B,MAAM6B,GAAG,CAACC,CAAAA;QACrB,IAAIA,QAAQ,OAAOA,SAAS,YAAYA,KAAKP,IAAI,YAAYC,QAAQ;YACjE,IAAIM,KAAKP,IAAI,CAACA,IAAI,CAAC,SAAS;gBACxB,OAAO;oBAAE,GAAGO,IAAI;oBAAET,SAAS;gBAAgB;YAC/C;YACA,IAAIS,KAAKP,IAAI,CAACA,IAAI,CAAC,SAAS;gBACxB,OAAO;oBAAE,GAAGO,IAAI;oBAAET,SAAS;gBAAU;YACzC;QACJ;QACA,OAAOS;IACX;IAEA,oCAAoC,GACpC1B,UAAG,CAACC,KAAK,CAAC,4CAA4C,IAClDC,IAAAA,iBAAO,EAAC;YAAEsB;QAAO,GAAG;YAAErB,OAAO;QAAK;IAGtC,OAAOqB;AACX"}
@@ -9,6 +9,7 @@ export * from './optimization-config';
9
9
  export * from './output-config';
10
10
  export * from './plugins-config';
11
11
  export * from './resolve-config';
12
+ export * from './rules-config';
12
13
  export * from './stats-config';
13
14
  export type * from './types';
14
15
  export * from './watch-options-config';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/webpack/configs/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,mBAAmB,SAAS,CAAC;AAC7B,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/webpack/configs/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,mBAAmB,SAAS,CAAC;AAC7B,cAAc,wBAAwB,CAAC"}
@@ -13,6 +13,7 @@ _export_star(require("./optimization-config"), exports);
13
13
  _export_star(require("./output-config"), exports);
14
14
  _export_star(require("./plugins-config"), exports);
15
15
  _export_star(require("./resolve-config"), exports);
16
+ _export_star(require("./rules-config"), exports);
16
17
  _export_star(require("./stats-config"), exports);
17
18
  _export_star(require("./watch-options-config"), exports);
18
19
  function _export_star(from, to) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/webpack/configs/index.ts"],"sourcesContent":["export * from './amd-config';\nexport * from './cache-config';\nexport * from './dev-server-config';\nexport * from './devtool-config';\nexport * from './entry.config';\nexport * from './externals-config';\nexport * from './module-config';\nexport * from './optimization-config';\nexport * from './output-config';\nexport * from './plugins-config';\nexport * from './resolve-config';\nexport * from './stats-config';\nexport type * from './types';\nexport * from './watch-options-config';\n"],"names":[],"mappings":";;;;qBAAc;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBAEA"}
1
+ {"version":3,"sources":["../../../src/webpack/configs/index.ts"],"sourcesContent":["export * from './amd-config';\nexport * from './cache-config';\nexport * from './dev-server-config';\nexport * from './devtool-config';\nexport * from './entry.config';\nexport * from './externals-config';\nexport * from './module-config';\nexport * from './optimization-config';\nexport * from './output-config';\nexport * from './plugins-config';\nexport * from './resolve-config';\nexport * from './rules-config';\nexport * from './stats-config';\nexport type * from './types';\nexport * from './watch-options-config';\n"],"names":[],"mappings":";;;;qBAAc;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBACA;qBAEA"}
@@ -1,8 +1,7 @@
1
- import { Configuration } from 'webpack';
1
+ import { RuleSetRule } from 'webpack';
2
2
  import { Context, Overrides } from './types';
3
- type Config = NonNullable<Configuration['module']>['rules'];
4
3
  interface Result {
5
- rules: Config;
4
+ rules: RuleSetRule[];
6
5
  }
7
6
  export declare function rulesConfig(context: Context, _: Overrides): Result;
8
7
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"rules-config.d.ts","sourceRoot":"","sources":["../../../src/webpack/configs/rules-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAe,MAAM,SAAS,CAAC;AAGrD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE7C,KAAK,MAAM,GAAG,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AAC5D,UAAU,MAAM;IACZ,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,GAAG,MAAM,CAclE"}
1
+ {"version":3,"file":"rules-config.d.ts","sourceRoot":"","sources":["../../../src/webpack/configs/rules-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE7C,UAAU,MAAM;IACZ,KAAK,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,GAAG,MAAM,CAUlE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/webpack/configs/rules-config.ts"],"sourcesContent":["import { Configuration, RuleSetRule } from 'webpack';\nimport { getModuleEntryPath } from '../utils';\nimport { cssRules, fontRules, imageRules, jsRules, lessRules, scssRules, svgRules } from './rules';\nimport { Context, Overrides } from './types';\n\ntype Config = NonNullable<Configuration['module']>['rules'];\ninterface Result {\n rules: Config;\n}\n\nexport function rulesConfig(context: Context, _: Overrides): Result {\n const rules: Config = [\n jsRules,\n imageRules,\n fontRules,\n svgRules,\n sharedDependenciesRules,\n ].flatMap(fn => fn(context));\n\n if (!context.isCustomStyleRules) {\n rules.push(...[scssRules, lessRules, cssRules].flatMap(fn => fn(context)));\n }\n\n return { rules };\n}\n\nfunction sharedDependenciesRules(context: Context): RuleSetRule[] {\n const { isExposeSharedDependencies, sharedDependencies } = context;\n if (!isExposeSharedDependencies) {\n return [];\n }\n\n return Object.entries(sharedDependencies).map(([dependency, variable]) => ({\n test: getModuleEntryPath(dependency),\n loader: require.resolve('../loaders/expose-loader'),\n type: 'javascript/auto',\n options: { exposes: variable },\n }));\n}\n"],"names":["rulesConfig","context","_","rules","jsRules","imageRules","fontRules","svgRules","sharedDependenciesRules","flatMap","fn","isCustomStyleRules","push","scssRules","lessRules","cssRules","isExposeSharedDependencies","sharedDependencies","Object","entries","map","dependency","variable","test","getModuleEntryPath","loader","require","resolve","type","options","exposes"],"mappings":";;;;+BAUgBA;;;eAAAA;;;uBATmB;uBACsD;AAQlF,SAASA,YAAYC,OAAgB,EAAEC,CAAY;IACtD,MAAMC,QAAgB;QAClBC,cAAO;QACPC,iBAAU;QACVC,gBAAS;QACTC,eAAQ;QACRC;KACH,CAACC,OAAO,CAACC,CAAAA,KAAMA,GAAGT;IAEnB,IAAI,CAACA,QAAQU,kBAAkB,EAAE;QAC7BR,MAAMS,IAAI,IAAI;YAACC,gBAAS;YAAEC,gBAAS;YAAEC,eAAQ;SAAC,CAACN,OAAO,CAACC,CAAAA,KAAMA,GAAGT;IACpE;IAEA,OAAO;QAAEE;IAAM;AACnB;AAEA,SAASK,wBAAwBP,OAAgB;IAC7C,MAAM,EAAEe,0BAA0B,EAAEC,kBAAkB,EAAE,GAAGhB;IAC3D,IAAI,CAACe,4BAA4B;QAC7B,OAAO,EAAE;IACb;IAEA,OAAOE,OAAOC,OAAO,CAACF,oBAAoBG,GAAG,CAAC,CAAC,CAACC,YAAYC,SAAS,GAAM,CAAA;YACvEC,MAAMC,IAAAA,yBAAkB,EAACH;YACzBI,QAAQC,QAAQC,OAAO,CAAC;YACxBC,MAAM;YACNC,SAAS;gBAAEC,SAASR;YAAS;QACjC,CAAA;AACJ"}
1
+ {"version":3,"sources":["../../../src/webpack/configs/rules-config.ts"],"sourcesContent":["import { RuleSetRule } from 'webpack';\nimport { getModuleEntryPath } from '../utils';\nimport { cssRules, fontRules, imageRules, jsRules, lessRules, scssRules, svgRules } from './rules';\nimport { Context, Overrides } from './types';\n\ninterface Result {\n rules: RuleSetRule[];\n}\n\nexport function rulesConfig(context: Context, _: Overrides): Result {\n const rules = [jsRules, imageRules, fontRules, svgRules, sharedDependenciesRules].flatMap(fn =>\n fn(context)\n );\n\n if (!context.isCustomStyleRules) {\n rules.push(...[scssRules, lessRules, cssRules].flatMap(fn => fn(context)));\n }\n\n return { rules };\n}\n\nfunction sharedDependenciesRules(context: Context): RuleSetRule[] {\n const { isExposeSharedDependencies, sharedDependencies } = context;\n if (!isExposeSharedDependencies) {\n return [];\n }\n\n return Object.entries(sharedDependencies).map(([dependency, variable]) => ({\n test: getModuleEntryPath(dependency),\n loader: require.resolve('../loaders/expose-loader'),\n type: 'javascript/auto',\n options: { exposes: variable },\n }));\n}\n"],"names":["rulesConfig","context","_","rules","jsRules","imageRules","fontRules","svgRules","sharedDependenciesRules","flatMap","fn","isCustomStyleRules","push","scssRules","lessRules","cssRules","isExposeSharedDependencies","sharedDependencies","Object","entries","map","dependency","variable","test","getModuleEntryPath","loader","require","resolve","type","options","exposes"],"mappings":";;;;+BASgBA;;;eAAAA;;;uBARmB;uBACsD;AAOlF,SAASA,YAAYC,OAAgB,EAAEC,CAAY;IACtD,MAAMC,QAAQ;QAACC,cAAO;QAAEC,iBAAU;QAAEC,gBAAS;QAAEC,eAAQ;QAAEC;KAAwB,CAACC,OAAO,CAACC,CAAAA,KACtFA,GAAGT;IAGP,IAAI,CAACA,QAAQU,kBAAkB,EAAE;QAC7BR,MAAMS,IAAI,IAAI;YAACC,gBAAS;YAAEC,gBAAS;YAAEC,eAAQ;SAAC,CAACN,OAAO,CAACC,CAAAA,KAAMA,GAAGT;IACpE;IAEA,OAAO;QAAEE;IAAM;AACnB;AAEA,SAASK,wBAAwBP,OAAgB;IAC7C,MAAM,EAAEe,0BAA0B,EAAEC,kBAAkB,EAAE,GAAGhB;IAC3D,IAAI,CAACe,4BAA4B;QAC7B,OAAO,EAAE;IACb;IAEA,OAAOE,OAAOC,OAAO,CAACF,oBAAoBG,GAAG,CAAC,CAAC,CAACC,YAAYC,SAAS,GAAM,CAAA;YACvEC,MAAMC,IAAAA,yBAAkB,EAACH;YACzBI,QAAQC,QAAQC,OAAO,CAAC;YACxBC,MAAM;YACNC,SAAS;gBAAEC,SAASR;YAAS;QACjC,CAAA;AACJ"}
@@ -2,13 +2,13 @@ import { getPackageData, loadSharedDependencies, MinifyOptions } from '../../uti
2
2
  import { Options } from '../types';
3
3
  export type { Overrides } from '../types';
4
4
  export interface Context extends Options {
5
- codeCoverage: boolean;
5
+ codeCoverage?: boolean;
6
6
  destination: string;
7
- isCustomStyleRules: boolean;
8
- isExposeSharedDependencies: boolean;
9
- isLegacyRoot: boolean;
10
- isProduction: boolean;
11
- isWebComponent: boolean;
7
+ isCustomStyleRules?: boolean;
8
+ isExposeSharedDependencies?: boolean;
9
+ isLegacyRoot?: boolean;
10
+ isProduction?: boolean;
11
+ isWebComponent?: boolean;
12
12
  minify?: MinifyOptions;
13
13
  name: string;
14
14
  packageData: ReturnType<typeof getPackageData>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/webpack/configs/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,MAAM,WAAW,OAAQ,SAAQ,OAAO;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,0BAA0B,EAAE,OAAO,CAAC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IAC/C,kBAAkB,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;IAC9D,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACvB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAChD,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,WAAW,EAAE,WAAW,CAAC;CAC5B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/webpack/configs/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,MAAM,WAAW,OAAQ,SAAQ,OAAO;IACpC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IAC/C,kBAAkB,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;IAC9D,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACvB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAChD,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,WAAW,EAAE,WAAW,CAAC;CAC5B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/webpack/utils/testing/get-compiler.ts"],"sourcesContent":["import { createFsFromVolume, Volume } from 'memfs';\nimport path from 'path';\nimport webpack, { Configuration } from 'webpack';\nimport { merge } from 'webpack-merge';\n\nexport function getCompilerFactory(cwd: string) {\n return function getCompiler(entry: string, loaderOptions = {}, config: Configuration = {}) {\n const compiler = webpack(\n merge(\n {\n mode: 'development',\n devtool: config.devtool ?? false,\n context: path.resolve(cwd, './__tests__/__mocks__'),\n entry: path.resolve(cwd, './__tests__/__mocks__', entry),\n output: {\n path: path.resolve(cwd, './__tests__/dist'),\n filename: '[name].bundle.js',\n chunkFilename: '[name].chunk.js',\n },\n module: {\n rules: [\n {\n test: new RegExp(`\\\\.${path.basename(cwd)}\\\\.\\\\w+$`, 'i'),\n rules: [\n {\n loader: require.resolve(cwd),\n options: loaderOptions,\n },\n ],\n },\n ],\n },\n plugins: [],\n },\n config\n )\n )!;\n\n compiler.outputFileSystem = createFsFromVolume(new Volume()) as any;\n\n return compiler;\n };\n}\n"],"names":["getCompilerFactory","cwd","getCompiler","entry","loaderOptions","config","compiler","webpack","merge","mode","devtool","context","path","resolve","output","filename","chunkFilename","module","rules","test","RegExp","basename","loader","require","options","plugins","outputFileSystem","createFsFromVolume","Volume"],"mappings":";;;;+BAKgBA;;;eAAAA;;;uBAL2B;6DAC1B;gEACsB;8BACjB;;;;;;AAEf,SAASA,mBAAmBC,GAAW;IAC1C,OAAO,SAASC,YAAYC,KAAa,EAAEC,gBAAgB,CAAC,CAAC,EAAEC,SAAwB,CAAC,CAAC;YAKhEA;QAJrB,MAAMC,WAAWC,IAAAA,gBAAO,EACpBC,IAAAA,mBAAK,EACD;YACIC,MAAM;YACNC,OAAO,GAAEL,kBAAAA,OAAOK,OAAO,cAAdL,6BAAAA,kBAAkB;YAC3BM,SAASC,aAAI,CAACC,OAAO,CAACZ,KAAK;YAC3BE,OAAOS,aAAI,CAACC,OAAO,CAACZ,KAAK,yBAAyBE;YAClDW,QAAQ;gBACJF,MAAMA,aAAI,CAACC,OAAO,CAACZ,KAAK;gBACxBc,UAAU;gBACVC,eAAe;YACnB;YACAC,QAAQ;gBACJC,OAAO;oBACH;wBACIC,MAAM,IAAIC,OAAO,CAAC,GAAG,EAAER,aAAI,CAACS,QAAQ,CAACpB,KAAK,QAAQ,CAAC,EAAE;wBACrDiB,OAAO;4BACH;gCACII,QAAQC,QAAQV,OAAO,CAACZ;gCACxBuB,SAASpB;4BACb;yBACH;oBACL;iBACH;YACL;YACAqB,SAAS,EAAE;QACf,GACApB;QAIRC,SAASoB,gBAAgB,GAAGC,IAAAA,yBAAkB,EAAC,IAAIC,aAAM;QAEzD,OAAOtB;IACX;AACJ"}
1
+ {"version":3,"sources":["../../../../src/webpack/utils/testing/get-compiler.ts"],"sourcesContent":["import { createFsFromVolume, Volume } from 'memfs';\nimport path from 'path';\nimport webpack, { Configuration } from 'webpack';\nimport { merge } from 'webpack-merge';\n\nexport function getCompilerFactory(cwd: string) {\n return function getCompiler(entry: string, loaderOptions = {}, config: Configuration = {}) {\n const compiler = webpack(\n merge(\n {\n mode: 'development',\n devtool: config.devtool ?? false,\n context: path.resolve(cwd, './__tests__/__mocks__'),\n entry: path.resolve(cwd, './__tests__/__mocks__', entry),\n output: {\n path: path.resolve(cwd, './__tests__/dist'),\n filename: '[name].bundle.js',\n chunkFilename: '[name].chunk.js',\n },\n module: {\n rules: [\n {\n test: new RegExp(`\\\\.${path.basename(cwd)}\\\\.\\\\w+$`, 'i'),\n rules: [\n {\n loader: require.resolve(cwd),\n options: loaderOptions,\n },\n ],\n },\n ],\n },\n plugins: [],\n },\n config\n )\n );\n\n compiler.outputFileSystem = createFsFromVolume(new Volume()) as any;\n\n return compiler;\n };\n}\n"],"names":["getCompilerFactory","cwd","getCompiler","entry","loaderOptions","config","compiler","webpack","merge","mode","devtool","context","path","resolve","output","filename","chunkFilename","module","rules","test","RegExp","basename","loader","require","options","plugins","outputFileSystem","createFsFromVolume","Volume"],"mappings":";;;;+BAKgBA;;;eAAAA;;;uBAL2B;6DAC1B;gEACsB;8BACjB;;;;;;AAEf,SAASA,mBAAmBC,GAAW;IAC1C,OAAO,SAASC,YAAYC,KAAa,EAAEC,gBAAgB,CAAC,CAAC,EAAEC,SAAwB,CAAC,CAAC;YAKhEA;QAJrB,MAAMC,WAAWC,IAAAA,gBAAO,EACpBC,IAAAA,mBAAK,EACD;YACIC,MAAM;YACNC,OAAO,GAAEL,kBAAAA,OAAOK,OAAO,cAAdL,6BAAAA,kBAAkB;YAC3BM,SAASC,aAAI,CAACC,OAAO,CAACZ,KAAK;YAC3BE,OAAOS,aAAI,CAACC,OAAO,CAACZ,KAAK,yBAAyBE;YAClDW,QAAQ;gBACJF,MAAMA,aAAI,CAACC,OAAO,CAACZ,KAAK;gBACxBc,UAAU;gBACVC,eAAe;YACnB;YACAC,QAAQ;gBACJC,OAAO;oBACH;wBACIC,MAAM,IAAIC,OAAO,CAAC,GAAG,EAAER,aAAI,CAACS,QAAQ,CAACpB,KAAK,QAAQ,CAAC,EAAE;wBACrDiB,OAAO;4BACH;gCACII,QAAQC,QAAQV,OAAO,CAACZ;gCACxBuB,SAASpB;4BACb;yBACH;oBACL;iBACH;YACL;YACAqB,SAAS,EAAE;QACf,GACApB;QAIRC,SAASoB,gBAAgB,GAAGC,IAAAA,yBAAkB,EAAC,IAAIC,aAAM;QAEzD,OAAOtB;IACX;AACJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/startup",
3
- "version": "34.0.0",
3
+ "version": "34.1.0",
4
4
  "description": "CLI to create multi-package Lerna projects with TypeScript and React",
5
5
  "homepage": "https://docs.st.dev/docs/frontend/uikit/startup",
6
6
  "repository": {
@@ -23,6 +23,7 @@
23
23
  "./jest-preset": "./jest/jest-preset.js",
24
24
  "./jest-resolver": "./dist/jest/resolver.js",
25
25
  "./jest-svg-transformer": "./dist/jest/svg-transformer.js",
26
+ "./storybook-config": "./dist/storybook-config/index.js",
26
27
  "./tsconfig/*": "./tsconfig/*.json",
27
28
  "./vitest-svg-transformer": "./dist/vitest/svg-transformer.js"
28
29
  },
@@ -39,6 +40,7 @@
39
40
  "postinstall": "node ./src/postinstall.js"
40
41
  },
41
42
  "devDependencies": {
43
+ "@swc/types": "^0.1.25",
42
44
  "@types/cpx": "~1.5.5",
43
45
  "@types/debug": "^4.1.12",
44
46
  "@types/eslint": "~9.6.1",
@@ -50,24 +52,24 @@
50
52
  "@types/yargs": "~17.0.35"
51
53
  },
52
54
  "dependencies": {
53
- "@babel/preset-env": "~7.28.6",
55
+ "@babel/preset-env": "~7.29.0",
54
56
  "@jest/core": "~30.2.0",
55
57
  "@jest/types": "~30.2.0",
56
58
  "@jsdevtools/coverage-istanbul-loader": "^3.0.5",
57
- "@servicetitan/eslint-config": "34.0.0",
58
- "@servicetitan/install": "34.0.0",
59
- "@servicetitan/startup-utils": "34.0.0",
60
- "@servicetitan/stylelint-config": "34.0.0",
59
+ "@servicetitan/eslint-config": "34.1.0",
60
+ "@servicetitan/install": "34.1.0",
61
+ "@servicetitan/startup-utils": "34.1.0",
62
+ "@servicetitan/stylelint-config": "34.1.0",
61
63
  "@svgr/webpack": "^8.1.0",
62
64
  "@swc/cli": "^0.5.0",
63
- "@swc/core": "1.15.10",
65
+ "@swc/core": "1.15.11",
64
66
  "@types/debug": "^4.1.12",
65
67
  "@types/jest": "~30.0.0",
66
68
  "@vitest/coverage-v8": "^4.0.18",
67
69
  "chalk": "~4.1.2",
68
70
  "cli-table3": "^0.6.5",
69
71
  "cpx2": "8.0.0",
70
- "css-loader": "~7.1.2",
72
+ "css-loader": "~7.1.4",
71
73
  "css-minimizer-webpack-plugin": "^7.0.4",
72
74
  "debounce": "^2.2.0",
73
75
  "debug": "^4.4.3",
@@ -83,9 +85,9 @@
83
85
  "jest-environment-jsdom": "^30.2.0",
84
86
  "jest-fetch-mock": "~3.0.3",
85
87
  "json5": "^2.2.3",
86
- "lerna": "~9.0.3",
88
+ "lerna": "~9.0.4",
87
89
  "less": "~4.5.1",
88
- "less-loader": "~12.3.0",
90
+ "less-loader": "~12.3.1",
89
91
  "less-plugin-npm-import": "~2.1.0",
90
92
  "lodash.kebabcase": "^4.1.1",
91
93
  "lodash.memoize": "^4.1.2",
@@ -98,8 +100,8 @@
98
100
  "postcss": "~8.5.6",
99
101
  "prettier": "~3.8.1",
100
102
  "sass": "~1.97.3",
101
- "sass-loader": "~16.0.6",
102
- "semver": "~7.7.3",
103
+ "sass-loader": "~16.0.7",
104
+ "semver": "~7.7.4",
103
105
  "source-map-loader": "~5.0.0",
104
106
  "style-loader": "~4.0.0",
105
107
  "stylelint": "~16.26.1",
@@ -110,7 +112,7 @@
110
112
  "typed-css-modules": "~0.9.1",
111
113
  "typescript": "5.9.3",
112
114
  "vitest": "^4.0.18",
113
- "webpack": "~5.104.1",
115
+ "webpack": "~5.105.2",
114
116
  "webpack-assets-manifest": "~6.5.0",
115
117
  "webpack-bundle-analyzer": "^5.2.0",
116
118
  "webpack-dev-server": "~5.2.3",
@@ -142,5 +144,5 @@
142
144
  "cli": {
143
145
  "webpack": false
144
146
  },
145
- "gitHead": "e193dc22703963f67099874a24de535d0696b6e2"
147
+ "gitHead": "660a104c81cce6867a7bb3081ab3f2f0140e403a"
146
148
  }
@@ -7,9 +7,6 @@ import { compile, lernaExec, typeCheck } from '../../utils';
7
7
  import { Build } from '../build';
8
8
  import { kendoUILicense } from '../kendo-ui-license';
9
9
 
10
- jest.mock('yargs', () => jest.fn());
11
- jest.mock('yargs/helpers', () => ({ hideBin: jest.fn() }));
12
-
13
10
  jest.mock('../../../utils', () => ({
14
11
  ...jest.requireActual('../../../utils'),
15
12
  getPackages: jest.fn(),
@@ -4,8 +4,6 @@ import { bundle } from '../../utils';
4
4
  import { BundlePackage } from '../bundle-package';
5
5
 
6
6
  jest.mock('fs', () => fs);
7
- jest.mock('yargs', () => jest.fn());
8
- jest.mock('yargs/helpers', () => ({ hideBin: jest.fn() }));
9
7
 
10
8
  jest.mock('../../../utils', () => ({
11
9
  ...jest.requireActual('../../../utils'),
@@ -4,9 +4,6 @@
4
4
  import { CommandName } from '../../../utils';
5
5
  import { getCommand } from '../get-command';
6
6
 
7
- jest.mock('yargs', () => jest.fn());
8
- jest.mock('yargs/helpers', () => ({ hideBin: jest.fn() }));
9
-
10
7
  describe(`${getCommand.name}`, () => {
11
8
  const subject = (name: CommandName) => getCommand(name);
12
9
 
@@ -4,8 +4,6 @@ import { isModuleInstalled } from '../../utils';
4
4
  import { KendoUILicense, kendoUILicense } from '../kendo-ui-license';
5
5
 
6
6
  jest.mock('execa', () => jest.fn());
7
- jest.mock('yargs', () => jest.fn());
8
- jest.mock('yargs/helpers', () => ({ hideBin: jest.fn() }));
9
7
 
10
8
  jest.mock('../../../utils', () => ({
11
9
  ...jest.requireActual('../../../utils'),
@@ -4,8 +4,6 @@ import { stylelint } from '../../utils/stylelint';
4
4
  import { Lint } from '../lint';
5
5
 
6
6
  jest.mock('stylelint', () => ({ lint: jest.fn() }));
7
- jest.mock('yargs', () => jest.fn());
8
- jest.mock('yargs/helpers', () => ({ hideBin: jest.fn() }));
9
7
 
10
8
  jest.mock('../../utils');
11
9
  jest.mock('../../utils/stylelint');