@servicetitan/startup 31.5.1 → 32.0.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 (199) hide show
  1. package/dist/cli/commands/build.d.ts +1 -1
  2. package/dist/cli/commands/build.d.ts.map +1 -1
  3. package/dist/cli/commands/build.js.map +1 -1
  4. package/dist/cli/commands/bundle-package.d.ts +1 -1
  5. package/dist/cli/commands/bundle-package.d.ts.map +1 -1
  6. package/dist/cli/commands/bundle-package.js.map +1 -1
  7. package/dist/cli/commands/eslint.d.ts +1 -1
  8. package/dist/cli/commands/eslint.d.ts.map +1 -1
  9. package/dist/cli/commands/eslint.js.map +1 -1
  10. package/dist/cli/commands/get-command.js +2 -2
  11. package/dist/cli/commands/get-command.js.map +1 -1
  12. package/dist/cli/commands/index.d.ts +1 -1
  13. package/dist/cli/commands/index.d.ts.map +1 -1
  14. package/dist/cli/commands/index.js +1 -1
  15. package/dist/cli/commands/index.js.map +1 -1
  16. package/dist/cli/commands/init.d.ts +3 -2
  17. package/dist/cli/commands/init.d.ts.map +1 -1
  18. package/dist/cli/commands/init.js +24 -43
  19. package/dist/cli/commands/init.js.map +1 -1
  20. package/dist/cli/commands/install.d.ts +4 -0
  21. package/dist/cli/commands/install.d.ts.map +1 -1
  22. package/dist/cli/commands/install.js +91 -3
  23. package/dist/cli/commands/install.js.map +1 -1
  24. package/dist/cli/commands/lint.d.ts +1 -1
  25. package/dist/cli/commands/lint.d.ts.map +1 -1
  26. package/dist/cli/commands/lint.js.map +1 -1
  27. package/dist/cli/commands/mfe-package-clean.d.ts.map +1 -1
  28. package/dist/cli/commands/mfe-package-clean.js +5 -7
  29. package/dist/cli/commands/mfe-package-clean.js.map +1 -1
  30. package/dist/cli/commands/mfe-package-publish.d.ts.map +1 -1
  31. package/dist/cli/commands/mfe-package-publish.js +11 -15
  32. package/dist/cli/commands/mfe-package-publish.js.map +1 -1
  33. package/dist/cli/commands/mfe-publish.d.ts +1 -1
  34. package/dist/cli/commands/mfe-publish.d.ts.map +1 -1
  35. package/dist/cli/commands/mfe-publish.js.map +1 -1
  36. package/dist/cli/commands/prepare-package.d.ts +1 -1
  37. package/dist/cli/commands/prepare-package.d.ts.map +1 -1
  38. package/dist/cli/commands/prepare-package.js.map +1 -1
  39. package/dist/cli/commands/review/rules/index.d.ts.map +1 -1
  40. package/dist/cli/commands/review/rules/index.js +4 -0
  41. package/dist/cli/commands/review/rules/index.js.map +1 -1
  42. package/dist/cli/commands/review/rules/require-all-react-dependencies.d.ts +14 -0
  43. package/dist/cli/commands/review/rules/require-all-react-dependencies.d.ts.map +1 -0
  44. package/dist/cli/commands/review/rules/require-all-react-dependencies.js +64 -0
  45. package/dist/cli/commands/review/rules/require-all-react-dependencies.js.map +1 -0
  46. package/dist/cli/commands/review/rules/require-one-react-version.d.ts +5 -0
  47. package/dist/cli/commands/review/rules/require-one-react-version.d.ts.map +1 -0
  48. package/dist/cli/commands/review/rules/require-one-react-version.js +25 -0
  49. package/dist/cli/commands/review/rules/require-one-react-version.js.map +1 -0
  50. package/dist/cli/commands/review/rules/require-one-uikit-version.d.ts.map +1 -1
  51. package/dist/cli/commands/review/rules/require-one-uikit-version.js +1 -0
  52. package/dist/cli/commands/review/rules/require-one-uikit-version.js.map +1 -1
  53. package/dist/cli/commands/review/utils/format-depends-on.d.ts +1 -0
  54. package/dist/cli/commands/review/utils/format-depends-on.d.ts.map +1 -1
  55. package/dist/cli/commands/review/utils/format-depends-on.js +15 -8
  56. package/dist/cli/commands/review/utils/format-depends-on.js.map +1 -1
  57. package/dist/cli/commands/review/utils/set-version.d.ts +2 -1
  58. package/dist/cli/commands/review/utils/set-version.d.ts.map +1 -1
  59. package/dist/cli/commands/review/utils/set-version.js +4 -2
  60. package/dist/cli/commands/review/utils/set-version.js.map +1 -1
  61. package/dist/cli/commands/start.d.ts +1 -1
  62. package/dist/cli/commands/start.d.ts.map +1 -1
  63. package/dist/cli/commands/start.js.map +1 -1
  64. package/dist/cli/commands/test/index.d.ts +2 -0
  65. package/dist/cli/commands/test/index.d.ts.map +1 -0
  66. package/dist/cli/commands/test/index.js +20 -0
  67. package/dist/cli/commands/test/index.js.map +1 -0
  68. package/dist/cli/commands/test/runners/index.d.ts +3 -0
  69. package/dist/cli/commands/test/runners/index.d.ts.map +1 -0
  70. package/dist/cli/commands/test/runners/index.js +21 -0
  71. package/dist/cli/commands/test/runners/index.js.map +1 -0
  72. package/dist/cli/commands/test/runners/jest.d.ts +7 -0
  73. package/dist/cli/commands/test/runners/jest.d.ts.map +1 -0
  74. package/dist/cli/commands/test/runners/jest.js +43 -0
  75. package/dist/cli/commands/test/runners/jest.js.map +1 -0
  76. package/dist/cli/commands/test/runners/vitest.d.ts +4 -0
  77. package/dist/cli/commands/test/runners/vitest.d.ts.map +1 -0
  78. package/dist/cli/commands/test/runners/vitest.js +86 -0
  79. package/dist/cli/commands/test/runners/vitest.js.map +1 -0
  80. package/dist/cli/commands/test/tests.d.ts +18 -0
  81. package/dist/cli/commands/test/tests.d.ts.map +1 -0
  82. package/dist/cli/commands/{tests.js → test/tests.js} +10 -9
  83. package/dist/cli/commands/test/tests.js.map +1 -0
  84. package/dist/cli/commands/upload-sourcemaps.d.ts.map +1 -1
  85. package/dist/cli/commands/upload-sourcemaps.js +1 -1
  86. package/dist/cli/commands/upload-sourcemaps.js.map +1 -1
  87. package/dist/cli/index.js +1 -2
  88. package/dist/cli/index.js.map +1 -1
  89. package/dist/cli/utils/bundle.d.ts.map +1 -1
  90. package/dist/cli/utils/bundle.js +7 -4
  91. package/dist/cli/utils/bundle.js.map +1 -1
  92. package/dist/cli/utils/cli-git.d.ts +11 -2
  93. package/dist/cli/utils/cli-git.d.ts.map +1 -1
  94. package/dist/cli/utils/cli-git.js +60 -4
  95. package/dist/cli/utils/cli-git.js.map +1 -1
  96. package/dist/cli/utils/index.d.ts +6 -0
  97. package/dist/cli/utils/index.d.ts.map +1 -1
  98. package/dist/cli/utils/index.js +6 -0
  99. package/dist/cli/utils/index.js.map +1 -1
  100. package/dist/cli/utils/is-ci.d.ts +2 -0
  101. package/dist/cli/utils/is-ci.d.ts.map +1 -0
  102. package/dist/cli/utils/is-ci.js +15 -0
  103. package/dist/cli/utils/is-ci.js.map +1 -0
  104. package/dist/cli/utils/lerna-exec.d.ts.map +1 -1
  105. package/dist/cli/utils/lerna-exec.js +2 -1
  106. package/dist/cli/utils/lerna-exec.js.map +1 -1
  107. package/dist/cli/utils/set-node-options.d.ts.map +1 -1
  108. package/dist/cli/utils/set-node-options.js.map +1 -1
  109. package/dist/index.d.ts +0 -1
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +0 -1
  112. package/dist/index.js.map +1 -1
  113. package/dist/utils/get-branch-configs.d.ts +1 -1
  114. package/dist/utils/get-branch-configs.d.ts.map +1 -1
  115. package/dist/utils/get-branch-configs.js +2 -2
  116. package/dist/utils/get-branch-configs.js.map +1 -1
  117. package/dist/utils/get-configuration.d.ts +8 -2
  118. package/dist/utils/get-configuration.d.ts.map +1 -1
  119. package/dist/utils/get-configuration.js +10 -2
  120. package/dist/utils/get-configuration.js.map +1 -1
  121. package/dist/utils/get-jest-config.d.ts +1 -7
  122. package/dist/utils/get-jest-config.d.ts.map +1 -1
  123. package/dist/utils/get-jest-config.js +49 -58
  124. package/dist/utils/get-jest-config.js.map +1 -1
  125. package/dist/utils/index.d.ts +1 -0
  126. package/dist/utils/index.d.ts.map +1 -1
  127. package/dist/utils/index.js +1 -0
  128. package/dist/utils/index.js.map +1 -1
  129. package/dist/webpack/utils/testing/get-compiler.js.map +1 -1
  130. package/package.json +16 -14
  131. package/src/cli/commands/__tests__/init.test.ts +21 -87
  132. package/src/cli/commands/__tests__/install.test.ts +174 -12
  133. package/src/cli/commands/__tests__/mfe-package-clean.test.ts +3 -6
  134. package/src/cli/commands/__tests__/mfe-package-publish.test.ts +6 -8
  135. package/src/cli/commands/__tests__/upload-sourcemaps.test.ts +7 -3
  136. package/src/cli/commands/build.ts +1 -1
  137. package/src/cli/commands/bundle-package.ts +1 -1
  138. package/src/cli/commands/eslint.ts +1 -1
  139. package/src/cli/commands/get-command.ts +1 -1
  140. package/src/cli/commands/index.ts +1 -1
  141. package/src/cli/commands/init.ts +18 -38
  142. package/src/cli/commands/install.ts +95 -6
  143. package/src/cli/commands/lint.ts +1 -1
  144. package/src/cli/commands/mfe-package-clean.ts +2 -4
  145. package/src/cli/commands/mfe-package-publish.ts +18 -6
  146. package/src/cli/commands/mfe-publish.ts +1 -1
  147. package/src/cli/commands/prepare-package.ts +1 -1
  148. package/src/cli/commands/review/rules/__tests__/require-all-react-dependencies.test.ts +132 -0
  149. package/src/cli/commands/review/rules/__tests__/require-one-package-version.test.ts +0 -1
  150. package/src/cli/commands/review/rules/__tests__/require-one-react-version.test.ts +22 -0
  151. package/src/cli/commands/review/rules/__tests__/{require-one-uikit-version.ts → require-one-uikit-version.test.ts} +1 -0
  152. package/src/cli/commands/review/rules/index.ts +4 -0
  153. package/src/cli/commands/review/rules/require-all-react-dependencies.ts +53 -0
  154. package/src/cli/commands/review/rules/require-one-react-version.ts +9 -0
  155. package/src/cli/commands/review/rules/require-one-uikit-version.ts +1 -0
  156. package/src/cli/commands/review/utils/__tests__/set-version.test.ts +18 -8
  157. package/src/cli/commands/review/utils/format-depends-on.ts +8 -5
  158. package/src/cli/commands/review/utils/set-version.ts +10 -2
  159. package/src/cli/commands/start.ts +1 -1
  160. package/src/cli/commands/test/__tests__/tests.test.ts +78 -0
  161. package/src/cli/commands/test/index.ts +1 -0
  162. package/src/cli/commands/{__tests__/tests.test.ts → test/runners/__tests__/jest.test.ts} +10 -13
  163. package/src/cli/commands/test/runners/__tests__/vitest.test.ts +150 -0
  164. package/src/cli/commands/test/runners/index.ts +2 -0
  165. package/src/cli/commands/{tests.ts → test/runners/jest.ts} +5 -16
  166. package/src/cli/commands/test/runners/vitest.ts +70 -0
  167. package/src/cli/commands/test/tests.ts +34 -0
  168. package/src/cli/commands/upload-sourcemaps.ts +2 -2
  169. package/src/cli/index.ts +1 -2
  170. package/src/cli/utils/__tests__/bundle.test.ts +1 -1
  171. package/src/cli/utils/__tests__/cli-git.test.ts +142 -6
  172. package/src/cli/utils/__tests__/eslint.test.ts +3 -2
  173. package/src/cli/utils/__tests__/is-ci.test.ts +40 -0
  174. package/src/cli/utils/__tests__/lerna-exec.test.ts +6 -3
  175. package/src/cli/utils/bundle.ts +8 -3
  176. package/src/cli/utils/cli-git.ts +55 -5
  177. package/src/cli/utils/index.ts +6 -0
  178. package/src/cli/utils/is-ci.ts +3 -0
  179. package/src/cli/utils/lerna-exec.ts +2 -1
  180. package/src/cli/utils/set-node-options.ts +2 -2
  181. package/src/index.ts +0 -1
  182. package/src/utils/__tests__/get-configuration.test.ts +48 -11
  183. package/src/utils/__tests__/get-jest-config.test.ts +35 -61
  184. package/src/utils/get-branch-configs.ts +1 -1
  185. package/src/utils/get-configuration.ts +14 -3
  186. package/src/utils/get-jest-config.ts +39 -47
  187. package/src/utils/index.ts +1 -0
  188. package/src/webpack/__tests__/create-webpack-config-shared-dependencies.test.ts +1 -1
  189. package/src/webpack/__tests__/create-webpack-config-web-component.test.ts +1 -1
  190. package/src/webpack/__tests__/create-webpack-config.test.ts +1 -1
  191. package/src/webpack/utils/testing/get-compiler.ts +1 -1
  192. package/dist/cli/commands/tests.d.ts +0 -13
  193. package/dist/cli/commands/tests.d.ts.map +0 -1
  194. package/dist/cli/commands/tests.js.map +0 -1
  195. package/dist/jest/index.d.ts +0 -2
  196. package/dist/jest/index.d.ts.map +0 -1
  197. package/dist/jest/index.js +0 -16
  198. package/dist/jest/index.js.map +0 -1
  199. package/src/jest/index.ts +0 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/cli/commands/review/utils/set-version.ts"],"sourcesContent":["import { execSync } from 'child_process';\nimport path from 'path';\nimport { Project } from '../types';\nimport { getKey } from './get-key';\n\ninterface Params {\n project: Project;\n packageName: string;\n dependency: string;\n version: string;\n}\nexport function setVersion({ project: { packages }, packageName, dependency, version }: Params) {\n const pkg = packages.find(({ name }) => name === packageName);\n if (!pkg) {\n return;\n }\n\n const key = getKey(pkg, dependency);\n if (!key) {\n return;\n }\n\n const workspace = path.relative('.', pkg.location);\n const command = `npm pkg set ${key}[\"${dependency}\"]=\"${version}\"${workspace ? ` -w ${workspace}` : ''}`;\n execSync(command);\n}\n"],"names":["setVersion","project","packages","packageName","dependency","version","pkg","find","name","key","getKey","workspace","path","relative","location","command","execSync"],"mappings":";;;;+BAWgBA;;;eAAAA;;;+BAXS;6DACR;wBAEM;;;;;;AAQhB,SAASA,WAAW,EAAEC,SAAS,EAAEC,QAAQ,EAAE,EAAEC,WAAW,EAAEC,UAAU,EAAEC,OAAO,EAAU;IAC1F,MAAMC,MAAMJ,SAASK,IAAI,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA,SAASL;IACjD,IAAI,CAACG,KAAK;QACN;IACJ;IAEA,MAAMG,MAAMC,IAAAA,cAAM,EAACJ,KAAKF;IACxB,IAAI,CAACK,KAAK;QACN;IACJ;IAEA,MAAME,YAAYC,aAAI,CAACC,QAAQ,CAAC,KAAKP,IAAIQ,QAAQ;IACjD,MAAMC,UAAU,CAAC,YAAY,EAAEN,IAAI,EAAE,EAAEL,WAAW,IAAI,EAAEC,QAAQ,CAAC,EAAEM,YAAY,CAAC,IAAI,EAAEA,WAAW,GAAG,IAAI;IACxGK,IAAAA,uBAAQ,EAACD;AACb"}
1
+ {"version":3,"sources":["../../../../../src/cli/commands/review/utils/set-version.ts"],"sourcesContent":["import { execSync } from 'child_process';\nimport path from 'path';\nimport { Project } from '../types';\nimport { getKey } from './get-key';\n\ninterface Params {\n project: Project;\n packageName: string;\n dependency: string;\n version: string;\n key?: string;\n}\n\nexport function setVersion(params: Params) {\n const {\n project: { packages },\n packageName,\n dependency,\n version,\n } = params;\n const pkg = packages.find(({ name }) => name === packageName);\n if (!pkg) {\n return;\n }\n\n const key = params.key ?? getKey(pkg, dependency);\n if (!key) {\n return;\n }\n\n const workspace = path.relative('.', pkg.location);\n const command = `npm pkg set ${key}[\"${dependency}\"]=\"${version}\"${workspace ? ` -w ${workspace}` : ''}`;\n execSync(command);\n}\n"],"names":["setVersion","params","project","packages","packageName","dependency","version","pkg","find","name","key","getKey","workspace","path","relative","location","command","execSync"],"mappings":";;;;+BAagBA;;;eAAAA;;;+BAbS;6DACR;wBAEM;;;;;;AAUhB,SAASA,WAAWC,MAAc;IACrC,MAAM,EACFC,SAAS,EAAEC,QAAQ,EAAE,EACrBC,WAAW,EACXC,UAAU,EACVC,OAAO,EACV,GAAGL;IACJ,MAAMM,MAAMJ,SAASK,IAAI,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA,SAASL;IACjD,IAAI,CAACG,KAAK;QACN;IACJ;QAEYN;IAAZ,MAAMS,MAAMT,CAAAA,cAAAA,OAAOS,GAAG,cAAVT,yBAAAA,cAAcU,IAAAA,cAAM,EAACJ,KAAKF;IACtC,IAAI,CAACK,KAAK;QACN;IACJ;IAEA,MAAME,YAAYC,aAAI,CAACC,QAAQ,CAAC,KAAKP,IAAIQ,QAAQ;IACjD,MAAMC,UAAU,CAAC,YAAY,EAAEN,IAAI,EAAE,EAAEL,WAAW,IAAI,EAAEC,QAAQ,CAAC,EAAEM,YAAY,CAAC,IAAI,EAAEA,WAAW,GAAG,IAAI;IACxGK,IAAAA,uBAAQ,EAACD;AACb"}
@@ -7,7 +7,7 @@ interface Args {
7
7
  'use-tsc'?: boolean;
8
8
  }
9
9
  export declare class Start implements Command {
10
- private args;
10
+ private readonly args;
11
11
  readonly greedy = true;
12
12
  constructor(args: Args);
13
13
  description(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,UAAU,IAAI;IACV,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAYD,qBAAa,KAAM,YAAW,OAAO;IAGrB,OAAO,CAAC,IAAI;IAFxB,QAAQ,CAAC,MAAM,QAAQ;gBAEH,IAAI,EAAE,IAAI;IAE9B,WAAW;IAKL,OAAO;CA+HhB"}
1
+ {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,UAAU,IAAI;IACV,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAYD,qBAAa,KAAM,YAAW,OAAO;IAGrB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFjC,QAAQ,CAAC,MAAM,QAAQ;gBAEM,IAAI,EAAE,IAAI;IAEvC,WAAW;IAKL,OAAO;CA+HhB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/cli/commands/start.ts"],"sourcesContent":["import { getPackages, log, logErrors, PackageType } from '../../utils';\nimport {\n checkArgs,\n lernaExec,\n compile,\n typeCheck,\n pipeStdout,\n watchStdout,\n ProcessTree,\n} from '../utils';\nimport { Command } from './types';\n\ninterface Args {\n 'config'?: string;\n 'code-coverage'?: boolean;\n 'ignore'?: string | string[];\n 'scope'?: string | string[];\n 'use-tsc'?: boolean;\n}\n\nenum StartProcesses {\n Compile,\n KendoUILicense,\n PreparePackage,\n PreparePackageWatch,\n TypeCheck,\n BundleExposedDependencies,\n BundlePackage,\n}\n\nexport class Start implements Command {\n readonly greedy = true;\n\n constructor(private args: Args) {}\n\n description() {\n return 'run project in development mode';\n }\n\n @logErrors\n async execute() {\n checkArgs(this.args, { obsolete: ['--esbuild', '--experimental-bundlers'] });\n\n const useTsc = this.args['use-tsc'];\n\n const packages = getPackages({\n scope: this.args.scope,\n ignore: this.args.ignore,\n type: [PackageType.TSC, PackageType.Webpack],\n });\n if (packages.length === 0) {\n return;\n }\n\n const scope = packages.map(({ name }) => name);\n const webpackScope = packages\n .filter(({ type }) => type === PackageType.Webpack)\n .map(({ name }) => name);\n\n const processTree = new ProcessTree<typeof StartProcesses>();\n\n processTree.add(StartProcesses.Compile, () => {\n const process = compile({\n packages: scope,\n watch: true,\n useTsc,\n });\n\n pipeStdout(process);\n\n const onComplete = new Promise<void>(resolve => {\n let counter = 0;\n let timeout: NodeJS.Timeout;\n\n if (!useTsc) {\n /*\n * Running the timer as a fallback\n * In case there are no files in the package swc will not print out completion indicator\n */\n timeout = setTimeout(() => {\n log.warning('Compilation timeout exceeded. Proceeding without waiting.');\n resolve();\n unwatch();\n }, 30000);\n }\n\n const unwatch = watchStdout(\n process,\n useTsc\n ? 'Initial tsc-compile-package task completed'\n : 'Initial swc-compile-package task completed',\n count => {\n counter += count;\n\n if (counter === scope.length) {\n resolve();\n clearTimeout(timeout);\n }\n }\n );\n });\n\n return { process, onComplete };\n });\n processTree.add(StartProcesses.PreparePackage, () =>\n lernaExec({\n cmd: 'startup prepare-package',\n scope,\n stream: true,\n })\n );\n processTree.add(\n StartProcesses.PreparePackageWatch,\n () =>\n lernaExec({\n 'cmd': 'startup prepare-package',\n scope,\n 'parallel': true,\n 'stream': true,\n '--': ['--watch'],\n }),\n { dependsOn: [StartProcesses.PreparePackage] }\n );\n processTree.add(\n StartProcesses.TypeCheck,\n () => typeCheck({ packages: scope, watch: true }),\n { dependsOn: [StartProcesses.PreparePackage] }\n );\n processTree.add(\n StartProcesses.BundleExposedDependencies,\n () => {\n if (webpackScope.length === 0) {\n return Promise.resolve();\n }\n return lernaExec({\n 'cmd': 'startup bundle-package',\n 'scope': webpackScope,\n 'parallel': true,\n 'stream': true,\n '--': ['--exposed-dependencies', '--use-watch-config'],\n });\n },\n { dependsOn: [StartProcesses.Compile, StartProcesses.PreparePackage] }\n );\n processTree.add(\n StartProcesses.BundlePackage,\n () => {\n if (webpackScope.length === 0) {\n return Promise.resolve();\n }\n return lernaExec({\n 'cmd': 'startup bundle-package',\n 'scope': webpackScope,\n 'parallel': true,\n 'stream': true,\n '--': [\n '--watch',\n this.args.config ? `--config \"${this.args.config}\"` : undefined,\n this.args['code-coverage'] ? '--code-coverage' : undefined,\n ].filter(item => !!item) as string[],\n });\n },\n { dependsOn: [StartProcesses.BundleExposedDependencies] }\n );\n\n await processTree.run();\n }\n}\n"],"names":["Start","StartProcesses","description","execute","checkArgs","args","obsolete","useTsc","packages","getPackages","scope","ignore","type","PackageType","TSC","Webpack","length","map","name","webpackScope","filter","processTree","ProcessTree","add","process","compile","watch","pipeStdout","onComplete","Promise","resolve","counter","timeout","setTimeout","log","warning","unwatch","watchStdout","count","clearTimeout","lernaExec","cmd","stream","dependsOn","typeCheck","config","undefined","item","run","greedy"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/cli/commands/start.ts"],"sourcesContent":["import { getPackages, log, logErrors, PackageType } from '../../utils';\nimport {\n checkArgs,\n lernaExec,\n compile,\n typeCheck,\n pipeStdout,\n watchStdout,\n ProcessTree,\n} from '../utils';\nimport { Command } from './types';\n\ninterface Args {\n 'config'?: string;\n 'code-coverage'?: boolean;\n 'ignore'?: string | string[];\n 'scope'?: string | string[];\n 'use-tsc'?: boolean;\n}\n\nenum StartProcesses {\n Compile,\n KendoUILicense,\n PreparePackage,\n PreparePackageWatch,\n TypeCheck,\n BundleExposedDependencies,\n BundlePackage,\n}\n\nexport class Start implements Command {\n readonly greedy = true;\n\n constructor(private readonly args: Args) {}\n\n description() {\n return 'run project in development mode';\n }\n\n @logErrors\n async execute() {\n checkArgs(this.args, { obsolete: ['--esbuild', '--experimental-bundlers'] });\n\n const useTsc = this.args['use-tsc'];\n\n const packages = getPackages({\n scope: this.args.scope,\n ignore: this.args.ignore,\n type: [PackageType.TSC, PackageType.Webpack],\n });\n if (packages.length === 0) {\n return;\n }\n\n const scope = packages.map(({ name }) => name);\n const webpackScope = packages\n .filter(({ type }) => type === PackageType.Webpack)\n .map(({ name }) => name);\n\n const processTree = new ProcessTree<typeof StartProcesses>();\n\n processTree.add(StartProcesses.Compile, () => {\n const process = compile({\n packages: scope,\n watch: true,\n useTsc,\n });\n\n pipeStdout(process);\n\n const onComplete = new Promise<void>(resolve => {\n let counter = 0;\n let timeout: NodeJS.Timeout;\n\n if (!useTsc) {\n /*\n * Running the timer as a fallback\n * In case there are no files in the package swc will not print out completion indicator\n */\n timeout = setTimeout(() => {\n log.warning('Compilation timeout exceeded. Proceeding without waiting.');\n resolve();\n unwatch();\n }, 30000);\n }\n\n const unwatch = watchStdout(\n process,\n useTsc\n ? 'Initial tsc-compile-package task completed'\n : 'Initial swc-compile-package task completed',\n count => {\n counter += count;\n\n if (counter === scope.length) {\n resolve();\n clearTimeout(timeout);\n }\n }\n );\n });\n\n return { process, onComplete };\n });\n processTree.add(StartProcesses.PreparePackage, () =>\n lernaExec({\n cmd: 'startup prepare-package',\n scope,\n stream: true,\n })\n );\n processTree.add(\n StartProcesses.PreparePackageWatch,\n () =>\n lernaExec({\n 'cmd': 'startup prepare-package',\n scope,\n 'parallel': true,\n 'stream': true,\n '--': ['--watch'],\n }),\n { dependsOn: [StartProcesses.PreparePackage] }\n );\n processTree.add(\n StartProcesses.TypeCheck,\n () => typeCheck({ packages: scope, watch: true }),\n { dependsOn: [StartProcesses.PreparePackage] }\n );\n processTree.add(\n StartProcesses.BundleExposedDependencies,\n () => {\n if (webpackScope.length === 0) {\n return Promise.resolve();\n }\n return lernaExec({\n 'cmd': 'startup bundle-package',\n 'scope': webpackScope,\n 'parallel': true,\n 'stream': true,\n '--': ['--exposed-dependencies', '--use-watch-config'],\n });\n },\n { dependsOn: [StartProcesses.Compile, StartProcesses.PreparePackage] }\n );\n processTree.add(\n StartProcesses.BundlePackage,\n () => {\n if (webpackScope.length === 0) {\n return Promise.resolve();\n }\n return lernaExec({\n 'cmd': 'startup bundle-package',\n 'scope': webpackScope,\n 'parallel': true,\n 'stream': true,\n '--': [\n '--watch',\n this.args.config ? `--config \"${this.args.config}\"` : undefined,\n this.args['code-coverage'] ? '--code-coverage' : undefined,\n ].filter(item => !!item) as string[],\n });\n },\n { dependsOn: [StartProcesses.BundleExposedDependencies] }\n );\n\n await processTree.run();\n }\n}\n"],"names":["Start","StartProcesses","description","execute","checkArgs","args","obsolete","useTsc","packages","getPackages","scope","ignore","type","PackageType","TSC","Webpack","length","map","name","webpackScope","filter","processTree","ProcessTree","add","process","compile","watch","pipeStdout","onComplete","Promise","resolve","counter","timeout","setTimeout","log","warning","unwatch","watchStdout","count","clearTimeout","lernaExec","cmd","stream","dependsOn","typeCheck","config","undefined","item","run","greedy"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './tests';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/test/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ _export_star(require("./tests"), 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/commands/test/index.ts"],"sourcesContent":["export * from './tests';\n"],"names":[],"mappings":";;;;qBAAc"}
@@ -0,0 +1,3 @@
1
+ export * from './jest';
2
+ export * from './vitest';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/test/runners/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ _export_star(require("./jest"), exports);
6
+ _export_star(require("./vitest"), 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/cli/commands/test/runners/index.ts"],"sourcesContent":["export * from './jest';\nexport * from './vitest';\n"],"names":[],"mappings":";;;;qBAAc;qBACA"}
@@ -0,0 +1,7 @@
1
+ import { Config } from '@jest/types';
2
+ export declare class Jest {
3
+ private readonly args;
4
+ constructor(args: Config.Argv);
5
+ run(): Promise<void>;
6
+ }
7
+ //# sourceMappingURL=jest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jest.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/test/runners/jest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,qBAAa,IAAI;IACD,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,MAAM,CAAC,IAAI;IAExC,GAAG;CAWZ"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "Jest", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Jest;
9
+ }
10
+ });
11
+ const _core = require("@jest/core");
12
+ const _utils = require("../../../../utils");
13
+ function _define_property(obj, key, value) {
14
+ if (key in obj) {
15
+ Object.defineProperty(obj, key, {
16
+ value: value,
17
+ enumerable: true,
18
+ configurable: true,
19
+ writable: true
20
+ });
21
+ } else {
22
+ obj[key] = value;
23
+ }
24
+ return obj;
25
+ }
26
+ class Jest {
27
+ async run() {
28
+ const jestConfig = (0, _utils.getJestConfigCLI)(this.args);
29
+ const { results: { success } } = await (0, _core.runCLI)(jestConfig, [
30
+ process.cwd()
31
+ ]);
32
+ if (!success) {
33
+ // eslint-disable-next-line require-atomic-updates
34
+ process.exitCode = 1;
35
+ }
36
+ }
37
+ constructor(args){
38
+ _define_property(this, "args", void 0);
39
+ this.args = args;
40
+ }
41
+ }
42
+
43
+ //# sourceMappingURL=jest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/cli/commands/test/runners/jest.ts"],"sourcesContent":["import { runCLI } from '@jest/core';\nimport { Config } from '@jest/types';\nimport { getJestConfigCLI } from '../../../../utils';\n\nexport class Jest {\n constructor(private readonly args: Config.Argv) {}\n\n async run() {\n const jestConfig = getJestConfigCLI(this.args);\n const {\n results: { success },\n } = await runCLI(jestConfig, [process.cwd()]);\n\n if (!success) {\n // eslint-disable-next-line require-atomic-updates\n process.exitCode = 1;\n }\n }\n}\n"],"names":["Jest","run","jestConfig","getJestConfigCLI","args","results","success","runCLI","process","cwd","exitCode"],"mappings":";;;;+BAIaA;;;eAAAA;;;sBAJU;uBAEU;;;;;;;;;;;;;;AAE1B,MAAMA;IAGT,MAAMC,MAAM;QACR,MAAMC,aAAaC,IAAAA,uBAAgB,EAAC,IAAI,CAACC,IAAI;QAC7C,MAAM,EACFC,SAAS,EAAEC,OAAO,EAAE,EACvB,GAAG,MAAMC,IAAAA,YAAM,EAACL,YAAY;YAACM,QAAQC,GAAG;SAAG;QAE5C,IAAI,CAACH,SAAS;YACV,kDAAkD;YAClDE,QAAQE,QAAQ,GAAG;QACvB;IACJ;IAZA,YAAY,AAAiBN,IAAiB,CAAE;;aAAnBA,OAAAA;IAAoB;AAarD"}
@@ -0,0 +1,4 @@
1
+ export declare class Vitest {
2
+ run(): Promise<void>;
3
+ }
4
+ //# sourceMappingURL=vitest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/test/runners/vitest.ts"],"names":[],"mappings":"AAMA,qBAAa,MAAM;IACT,GAAG;CAQZ"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "Vitest", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Vitest;
9
+ }
10
+ });
11
+ const _config = require("vitest/config");
12
+ const _node = require("vitest/node");
13
+ const _utils = require("../../../../utils");
14
+ class Vitest {
15
+ async run() {
16
+ const cliOptions = getCliOptions();
17
+ const userConfig = await getUserConfig();
18
+ // startVitest sets process.exitCode to 1 when tests fail
19
+ const vitest = await (0, _node.startVitest)('test', cliOptions.filter, cliOptions.options, userConfig);
20
+ await vitest.close();
21
+ }
22
+ }
23
+ const RUNNER_OPTION = '--runner';
24
+ function excludeRunnerOption(args) {
25
+ return args.reduce((result, item, index)=>{
26
+ if (!item.startsWith(RUNNER_OPTION) && (index === 0 || args[index - 1] !== RUNNER_OPTION)) {
27
+ result.push(item);
28
+ }
29
+ return result;
30
+ }, []);
31
+ }
32
+ function getCliOptions() {
33
+ // parseCLI requires the first element to be "vitest"
34
+ const result = (0, _node.parseCLI)([
35
+ 'vitest',
36
+ ...excludeRunnerOption(process.argv.slice(3))
37
+ ]);
38
+ /* istanbul ignore next: debug only */ _utils.log.debug('vitest:cliOptions', ()=>JSON.stringify(result, null, 2));
39
+ return result;
40
+ }
41
+ function getDefaultConfig() {
42
+ return {
43
+ coverage: {
44
+ exclude: [
45
+ ..._config.coverageConfigDefaults.exclude,
46
+ '**/__mocks__/**',
47
+ '**/*.stories.*',
48
+ '\\.yalc'
49
+ ],
50
+ include: [
51
+ '**/*.{ts,tsx}'
52
+ ],
53
+ reporter: [
54
+ 'html-spa',
55
+ 'text',
56
+ 'json',
57
+ 'cobertura',
58
+ 'lcov'
59
+ ]
60
+ },
61
+ environment: 'jsdom',
62
+ exclude: [
63
+ ..._config.configDefaults.exclude,
64
+ '\\.yalc'
65
+ ],
66
+ restoreMocks: true,
67
+ server: {
68
+ deps: {
69
+ inline: [
70
+ '@servicetitan/anvil2'
71
+ ]
72
+ }
73
+ }
74
+ };
75
+ }
76
+ async function getUserConfig() {
77
+ const { viteConfig } = await (0, _node.resolveConfig)();
78
+ var _viteConfig_test;
79
+ const result = (0, _config.mergeConfig)((0, _config.mergeConfig)(getDefaultConfig(), (0, _utils.getVitestConfiguration)()), (_viteConfig_test = viteConfig.test) !== null && _viteConfig_test !== void 0 ? _viteConfig_test : {});
80
+ /* istanbul ignore next: debug only */ _utils.log.debug('vitest:userConfig', ()=>JSON.stringify(result, null, 2));
81
+ return {
82
+ test: result
83
+ };
84
+ }
85
+
86
+ //# sourceMappingURL=vitest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/cli/commands/test/runners/vitest.ts"],"sourcesContent":["import { configDefaults, coverageConfigDefaults, mergeConfig, ViteUserConfig } from 'vitest/config';\nimport { startVitest, parseCLI, resolveConfig } from 'vitest/node';\nimport { getVitestConfiguration, log } from '../../../../utils';\n\ntype VitestConfig = NonNullable<ViteUserConfig['test']>;\n\nexport class Vitest {\n async run() {\n const cliOptions = getCliOptions();\n const userConfig = await getUserConfig();\n\n // startVitest sets process.exitCode to 1 when tests fail\n const vitest = await startVitest('test', cliOptions.filter, cliOptions.options, userConfig);\n await vitest.close();\n }\n}\n\nconst RUNNER_OPTION = '--runner';\n\nfunction excludeRunnerOption(args: string[]) {\n return args.reduce<string[]>((result, item, index) => {\n if (!item.startsWith(RUNNER_OPTION) && (index === 0 || args[index - 1] !== RUNNER_OPTION)) {\n result.push(item);\n }\n return result;\n }, []);\n}\n\nfunction getCliOptions() {\n // parseCLI requires the first element to be \"vitest\"\n const result = parseCLI(['vitest', ...excludeRunnerOption(process.argv.slice(3))]);\n\n /* istanbul ignore next: debug only */\n log.debug('vitest:cliOptions', () => JSON.stringify(result, null, 2));\n\n return result;\n}\n\nfunction getDefaultConfig(): VitestConfig {\n return {\n coverage: {\n exclude: [\n ...coverageConfigDefaults.exclude,\n '**/__mocks__/**',\n '**/*.stories.*',\n '\\\\.yalc',\n ],\n include: ['**/*.{ts,tsx}'],\n reporter: ['html-spa', 'text', 'json', 'cobertura', 'lcov'],\n },\n environment: 'jsdom',\n exclude: [...configDefaults.exclude, '\\\\.yalc'],\n restoreMocks: true,\n server: { deps: { inline: ['@servicetitan/anvil2'] } }, // fixes css parser errors\n };\n}\n\nasync function getUserConfig(): Promise<ViteUserConfig> {\n const { viteConfig } = await resolveConfig();\n\n const result = mergeConfig(\n mergeConfig(getDefaultConfig(), getVitestConfiguration()),\n viteConfig.test ?? {}\n );\n\n /* istanbul ignore next: debug only */\n log.debug('vitest:userConfig', () => JSON.stringify(result, null, 2));\n\n return { test: result };\n}\n"],"names":["Vitest","run","cliOptions","getCliOptions","userConfig","getUserConfig","vitest","startVitest","filter","options","close","RUNNER_OPTION","excludeRunnerOption","args","reduce","result","item","index","startsWith","push","parseCLI","process","argv","slice","log","debug","JSON","stringify","getDefaultConfig","coverage","exclude","coverageConfigDefaults","include","reporter","environment","configDefaults","restoreMocks","server","deps","inline","viteConfig","resolveConfig","mergeConfig","getVitestConfiguration","test"],"mappings":";;;;+BAMaA;;;eAAAA;;;wBANuE;sBAC/B;uBACT;AAIrC,MAAMA;IACT,MAAMC,MAAM;QACR,MAAMC,aAAaC;QACnB,MAAMC,aAAa,MAAMC;QAEzB,yDAAyD;QACzD,MAAMC,SAAS,MAAMC,IAAAA,iBAAW,EAAC,QAAQL,WAAWM,MAAM,EAAEN,WAAWO,OAAO,EAAEL;QAChF,MAAME,OAAOI,KAAK;IACtB;AACJ;AAEA,MAAMC,gBAAgB;AAEtB,SAASC,oBAAoBC,IAAc;IACvC,OAAOA,KAAKC,MAAM,CAAW,CAACC,QAAQC,MAAMC;QACxC,IAAI,CAACD,KAAKE,UAAU,CAACP,kBAAmBM,CAAAA,UAAU,KAAKJ,IAAI,CAACI,QAAQ,EAAE,KAAKN,aAAY,GAAI;YACvFI,OAAOI,IAAI,CAACH;QAChB;QACA,OAAOD;IACX,GAAG,EAAE;AACT;AAEA,SAASZ;IACL,qDAAqD;IACrD,MAAMY,SAASK,IAAAA,cAAQ,EAAC;QAAC;WAAaR,oBAAoBS,QAAQC,IAAI,CAACC,KAAK,CAAC;KAAI;IAEjF,oCAAoC,GACpCC,UAAG,CAACC,KAAK,CAAC,qBAAqB,IAAMC,KAAKC,SAAS,CAACZ,QAAQ,MAAM;IAElE,OAAOA;AACX;AAEA,SAASa;IACL,OAAO;QACHC,UAAU;YACNC,SAAS;mBACFC,8BAAsB,CAACD,OAAO;gBACjC;gBACA;gBACA;aACH;YACDE,SAAS;gBAAC;aAAgB;YAC1BC,UAAU;gBAAC;gBAAY;gBAAQ;gBAAQ;gBAAa;aAAO;QAC/D;QACAC,aAAa;QACbJ,SAAS;eAAIK,sBAAc,CAACL,OAAO;YAAE;SAAU;QAC/CM,cAAc;QACdC,QAAQ;YAAEC,MAAM;gBAAEC,QAAQ;oBAAC;iBAAuB;YAAC;QAAE;IACzD;AACJ;AAEA,eAAelC;IACX,MAAM,EAAEmC,UAAU,EAAE,GAAG,MAAMC,IAAAA,mBAAa;QAItCD;IAFJ,MAAMzB,SAAS2B,IAAAA,mBAAW,EACtBA,IAAAA,mBAAW,EAACd,oBAAoBe,IAAAA,6BAAsB,MACtDH,CAAAA,mBAAAA,WAAWI,IAAI,cAAfJ,8BAAAA,mBAAmB,CAAC;IAGxB,oCAAoC,GACpChB,UAAG,CAACC,KAAK,CAAC,qBAAqB,IAAMC,KAAKC,SAAS,CAACZ,QAAQ,MAAM;IAElE,OAAO;QAAE6B,MAAM7B;IAAO;AAC1B"}
@@ -0,0 +1,18 @@
1
+ import { Config } from '@jest/types';
2
+ import { Command } from '../types';
3
+ type Args = Config.Argv & {
4
+ runner?: 'jest' | 'vitest';
5
+ };
6
+ /**
7
+ * This class is named "Tests" instead of "Test" because the corresponding
8
+ * "test.ts" would be interpreted as a test file.
9
+ */
10
+ export declare class Tests implements Command {
11
+ private readonly args;
12
+ readonly greedy = true;
13
+ constructor(args: Args);
14
+ description(): string;
15
+ execute(): Promise<void>;
16
+ }
17
+ export {};
18
+ //# sourceMappingURL=tests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/test/tests.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGnC,KAAK,IAAI,GAAG,MAAM,CAAC,IAAI,GAAG;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,qBAAa,KAAM,YAAW,OAAO;IAGrB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFjC,QAAQ,CAAC,MAAM,QAAQ;gBAEM,IAAI,EAAE,IAAI;IAEvC,WAAW;IAKL,OAAO;CAUhB"}
@@ -8,8 +8,8 @@ Object.defineProperty(exports, "Tests", {
8
8
  return Tests;
9
9
  }
10
10
  });
11
- const _core = require("@jest/core");
12
- const _utils = require("../../utils");
11
+ const _utils = require("../../../utils");
12
+ const _runners = require("./runners");
13
13
  function _define_property(obj, key, value) {
14
14
  if (key in obj) {
15
15
  Object.defineProperty(obj, key, {
@@ -37,13 +37,14 @@ class Tests {
37
37
  return 'run tests';
38
38
  }
39
39
  async execute() {
40
- const jestConfig = (0, _utils.getJestConfigCLI)(this.args);
41
- const { results: { success } } = await (0, _core.runCLI)(jestConfig, [
42
- process.cwd()
43
- ]);
44
- if (!success) {
45
- // eslint-disable-next-line require-atomic-updates
46
- process.exitCode = 1;
40
+ var _getConfiguration_testRunner;
41
+ const { runner = (_getConfiguration_testRunner = (0, _utils.getConfiguration)().testRunner) !== null && _getConfiguration_testRunner !== void 0 ? _getConfiguration_testRunner : 'jest', ...restArgs } = this.args;
42
+ if (runner === 'jest') {
43
+ await new _runners.Jest(restArgs).run();
44
+ } else if (runner === 'vitest') {
45
+ await new _runners.Vitest().run();
46
+ } else {
47
+ throw new Error(`unrecognized runner "${runner}"`);
47
48
  }
48
49
  }
49
50
  constructor(args){
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/cli/commands/test/tests.ts"],"sourcesContent":["import { Config } from '@jest/types';\nimport { getConfiguration, logErrors } from '../../../utils';\nimport { Command } from '../types';\nimport { Jest, Vitest } from './runners';\n\ntype Args = Config.Argv & {\n runner?: 'jest' | 'vitest';\n};\n\n/**\n * This class is named \"Tests\" instead of \"Test\" because the corresponding\n * \"test.ts\" would be interpreted as a test file.\n */\nexport class Tests implements Command {\n readonly greedy = true;\n\n constructor(private readonly args: Args) {}\n\n description() {\n return 'run tests';\n }\n\n @logErrors\n async execute() {\n const { runner = getConfiguration().testRunner ?? 'jest', ...restArgs } = this.args;\n if (runner === 'jest') {\n await new Jest(restArgs).run();\n } else if (runner === 'vitest') {\n await new Vitest().run();\n } else {\n throw new Error(`unrecognized runner \"${runner}\"`);\n }\n }\n}\n"],"names":["Tests","description","execute","getConfiguration","runner","testRunner","restArgs","args","Jest","run","Vitest","Error","greedy"],"mappings":";;;;+BAaaA;;;eAAAA;;;uBAZ+B;yBAEf;;;;;;;;;;;;;;;;;;;;;;;AAUtB,MAAMA;IAKTC,cAAc;QACV,OAAO;IACX;IAEA,MACMC,UAAU;YACKC;QAAjB,MAAM,EAAEC,SAASD,CAAAA,+BAAAA,IAAAA,uBAAgB,IAAGE,UAAU,cAA7BF,0CAAAA,+BAAiC,MAAM,EAAE,GAAGG,UAAU,GAAG,IAAI,CAACC,IAAI;QACnF,IAAIH,WAAW,QAAQ;YACnB,MAAM,IAAII,aAAI,CAACF,UAAUG,GAAG;QAChC,OAAO,IAAIL,WAAW,UAAU;YAC5B,MAAM,IAAIM,eAAM,GAAGD,GAAG;QAC1B,OAAO;YACH,MAAM,IAAIE,MAAM,CAAC,qBAAqB,EAAEP,OAAO,CAAC,CAAC;QACrD;IACJ;IAhBA,YAAY,AAAiBG,IAAU,CAAE;;QAFzC,uBAASK,UAAT,KAAA;aAE6BL,OAAAA;aAFpBK,SAAS;IAEwB;AAiB9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"upload-sourcemaps.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/upload-sourcemaps.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,UAAU,IAAI;IACV,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CAC1B;AAMD,qBAAa,gBAAiB,YAAW,OAAO;;IAIhC,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAIjC,OAAO;IAWb,OAAO,CAAC,SAAS;IAiBjB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,GAAG;CAId"}
1
+ {"version":3,"file":"upload-sourcemaps.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/upload-sourcemaps.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,UAAU,IAAI;IACV,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CAC1B;AAMD,qBAAa,gBAAiB,YAAW,OAAO;;IAIhC,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAIjC,OAAO;IAWb,OAAO,CAAC,SAAS;IAiBjB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,GAAG;CAId"}
@@ -93,7 +93,7 @@ class UploadSourcemaps {
93
93
  checkArgs() {
94
94
  if (!process.env.DATADOG_API_KEY) {
95
95
  const message = 'DATADOG_API_KEY environment variable is not set';
96
- if (!process.env.CI) {
96
+ if (!(0, _utils1.isCI)()) {
97
97
  throw new Error(message);
98
98
  }
99
99
  _utils.log.warning(`${message}; skipping sourcemaps`);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/cli/commands/upload-sourcemaps.ts"],"sourcesContent":["import path from 'path';\nimport { execSync } from 'child_process';\nimport { getTsConfig, isWebComponent, log, logErrors, readJson } from '../../utils';\nimport { Command } from './types';\nimport { TSConfig } from '../utils';\n\ninterface Args {\n dry?: boolean;\n releaseVersion: string;\n}\n\ninterface PackageJson {\n name: string;\n}\n\nexport class UploadSourcemaps implements Command {\n #outDir?: string;\n #packageJson?: PackageJson;\n\n constructor(private readonly args: Args) {}\n\n @logErrors\n // eslint-disable-next-line @typescript-eslint/require-await\n async execute() {\n this.checkLocation();\n if (!this.checkArgs()) {\n return;\n }\n\n const bundleDir = this.getBundleDir();\n const options = this.getOptions().join(' ');\n this.run(`npx --yes @datadog/datadog-ci@3 sourcemaps upload ${bundleDir} ${options}`);\n }\n\n private checkArgs() {\n if (!process.env.DATADOG_API_KEY) {\n const message = 'DATADOG_API_KEY environment variable is not set';\n if (!process.env.CI) {\n throw new Error(message);\n }\n log.warning(`${message}; skipping sourcemaps`);\n return false;\n }\n\n if (!this.args.releaseVersion) {\n throw new Error('--release-version is required');\n }\n\n return true;\n }\n\n private checkLocation() {\n if (!isWebComponent()) {\n throw new Error(`this command must be run inside a web-component directory`);\n }\n }\n\n private getBundleDir() {\n return path.relative('.', path.join(this.getOutDir(), 'bundle'));\n }\n\n private getMinifiedPrefixPath() {\n const { name } = this.getPackageJson();\n const baseUrl = `https://unpkg.servicetitan.com/${name}@${this.args.releaseVersion}`;\n return `${baseUrl}/${this.getBundleDir().replace(/\\\\/g, '/')}`;\n }\n\n private getOptions() {\n const { dry, releaseVersion } = this.args;\n const service = this.getPackageJson().name.replace(/^[^/]+\\//, '');\n return [\n ...[dry && `--dry-run`],\n `--service=${service}`,\n `--release-version=${releaseVersion}`,\n `--minified-path-prefix=${this.getMinifiedPrefixPath()}`,\n `--project-path=${this.getProjectPath()}`,\n ].filter(item => !!item) as string[];\n }\n\n private getOutDir() {\n if (!this.#outDir) {\n const outDir = new TSConfig(getTsConfig()).getValue<string>('compilerOptions.outDir');\n if (!outDir) {\n throw new Error('compilerOptions.outDir is not configured');\n }\n\n this.#outDir = outDir;\n }\n return this.#outDir;\n }\n\n private getPackageJson() {\n if (!this.#packageJson) {\n this.#packageJson = readJson<PackageJson>('package.json');\n }\n return this.#packageJson;\n }\n\n private getProjectPath() {\n const name = readJson(path.join(this.getOutDir(), 'metadata.json')).name;\n return `${name}/`;\n }\n\n private run(command: string) {\n log.info(`Running: ${command}`);\n return execSync(command, { stdio: 'inherit' });\n }\n}\n"],"names":["UploadSourcemaps","execute","checkLocation","checkArgs","bundleDir","getBundleDir","options","getOptions","join","run","process","env","DATADOG_API_KEY","message","CI","Error","log","warning","args","releaseVersion","isWebComponent","path","relative","getOutDir","getMinifiedPrefixPath","name","getPackageJson","baseUrl","replace","dry","service","getProjectPath","filter","item","outDir","TSConfig","getTsConfig","getValue","readJson","command","info","execSync","stdio"],"mappings":";;;;+BAeaA;;;eAAAA;;;6DAfI;+BACQ;uBAC6C;wBAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAYrB,uCACA;AAFG,MAAMA;IAMT,MAEMC,UAAU;QACZ,IAAI,CAACC,aAAa;QAClB,IAAI,CAAC,IAAI,CAACC,SAAS,IAAI;YACnB;QACJ;QAEA,MAAMC,YAAY,IAAI,CAACC,YAAY;QACnC,MAAMC,UAAU,IAAI,CAACC,UAAU,GAAGC,IAAI,CAAC;QACvC,IAAI,CAACC,GAAG,CAAC,CAAC,kDAAkD,EAAEL,UAAU,CAAC,EAAEE,SAAS;IACxF;IAEQH,YAAY;QAChB,IAAI,CAACO,QAAQC,GAAG,CAACC,eAAe,EAAE;YAC9B,MAAMC,UAAU;YAChB,IAAI,CAACH,QAAQC,GAAG,CAACG,EAAE,EAAE;gBACjB,MAAM,IAAIC,MAAMF;YACpB;YACAG,UAAG,CAACC,OAAO,CAAC,GAAGJ,QAAQ,qBAAqB,CAAC;YAC7C,OAAO;QACX;QAEA,IAAI,CAAC,IAAI,CAACK,IAAI,CAACC,cAAc,EAAE;YAC3B,MAAM,IAAIJ,MAAM;QACpB;QAEA,OAAO;IACX;IAEQb,gBAAgB;QACpB,IAAI,CAACkB,IAAAA,qBAAc,KAAI;YACnB,MAAM,IAAIL,MAAM,CAAC,yDAAyD,CAAC;QAC/E;IACJ;IAEQV,eAAe;QACnB,OAAOgB,aAAI,CAACC,QAAQ,CAAC,KAAKD,aAAI,CAACb,IAAI,CAAC,IAAI,CAACe,SAAS,IAAI;IAC1D;IAEQC,wBAAwB;QAC5B,MAAM,EAAEC,IAAI,EAAE,GAAG,IAAI,CAACC,cAAc;QACpC,MAAMC,UAAU,CAAC,+BAA+B,EAAEF,KAAK,CAAC,EAAE,IAAI,CAACP,IAAI,CAACC,cAAc,EAAE;QACpF,OAAO,GAAGQ,QAAQ,CAAC,EAAE,IAAI,CAACtB,YAAY,GAAGuB,OAAO,CAAC,OAAO,MAAM;IAClE;IAEQrB,aAAa;QACjB,MAAM,EAAEsB,GAAG,EAAEV,cAAc,EAAE,GAAG,IAAI,CAACD,IAAI;QACzC,MAAMY,UAAU,IAAI,CAACJ,cAAc,GAAGD,IAAI,CAACG,OAAO,CAAC,YAAY;QAC/D,OAAO;eACA;gBAACC,OAAO,CAAC,SAAS,CAAC;aAAC;YACvB,CAAC,UAAU,EAAEC,SAAS;YACtB,CAAC,kBAAkB,EAAEX,gBAAgB;YACrC,CAAC,uBAAuB,EAAE,IAAI,CAACK,qBAAqB,IAAI;YACxD,CAAC,eAAe,EAAE,IAAI,CAACO,cAAc,IAAI;SAC5C,CAACC,MAAM,CAACC,CAAAA,OAAQ,CAAC,CAACA;IACvB;IAEQV,YAAY;QAChB,IAAI,0BAAC,IAAI,EAAC,UAAS;YACf,MAAMW,SAAS,IAAIC,gBAAQ,CAACC,IAAAA,kBAAW,KAAIC,QAAQ,CAAS;YAC5D,IAAI,CAACH,QAAQ;gBACT,MAAM,IAAInB,MAAM;YACpB;2CAEK,SAAUmB;QACnB;QACA,gCAAO,IAAI,EAAC;IAChB;IAEQR,iBAAiB;QACrB,IAAI,0BAAC,IAAI,EAAC,eAAc;2CACf,cAAeY,IAAAA,eAAQ,EAAc;QAC9C;QACA,gCAAO,IAAI,EAAC;IAChB;IAEQP,iBAAiB;QACrB,MAAMN,OAAOa,IAAAA,eAAQ,EAACjB,aAAI,CAACb,IAAI,CAAC,IAAI,CAACe,SAAS,IAAI,kBAAkBE,IAAI;QACxE,OAAO,GAAGA,KAAK,CAAC,CAAC;IACrB;IAEQhB,IAAI8B,OAAe,EAAE;QACzBvB,UAAG,CAACwB,IAAI,CAAC,CAAC,SAAS,EAAED,SAAS;QAC9B,OAAOE,IAAAA,uBAAQ,EAACF,SAAS;YAAEG,OAAO;QAAU;IAChD;IAvFA,YAAY,AAAiBxB,IAAU,CAAE;;QAHzC,gCAAA;;mBAAA,KAAA;;QACA,gCAAA;;mBAAA,KAAA;;aAE6BA,OAAAA;IAAa;AAwF9C"}
1
+ {"version":3,"sources":["../../../src/cli/commands/upload-sourcemaps.ts"],"sourcesContent":["import path from 'path';\nimport { execSync } from 'child_process';\nimport { getTsConfig, isWebComponent, log, logErrors, readJson } from '../../utils';\nimport { isCI, TSConfig } from '../utils';\nimport { Command } from './types';\n\ninterface Args {\n dry?: boolean;\n releaseVersion: string;\n}\n\ninterface PackageJson {\n name: string;\n}\n\nexport class UploadSourcemaps implements Command {\n #outDir?: string;\n #packageJson?: PackageJson;\n\n constructor(private readonly args: Args) {}\n\n @logErrors\n // eslint-disable-next-line @typescript-eslint/require-await\n async execute() {\n this.checkLocation();\n if (!this.checkArgs()) {\n return;\n }\n\n const bundleDir = this.getBundleDir();\n const options = this.getOptions().join(' ');\n this.run(`npx --yes @datadog/datadog-ci@3 sourcemaps upload ${bundleDir} ${options}`);\n }\n\n private checkArgs() {\n if (!process.env.DATADOG_API_KEY) {\n const message = 'DATADOG_API_KEY environment variable is not set';\n if (!isCI()) {\n throw new Error(message);\n }\n log.warning(`${message}; skipping sourcemaps`);\n return false;\n }\n\n if (!this.args.releaseVersion) {\n throw new Error('--release-version is required');\n }\n\n return true;\n }\n\n private checkLocation() {\n if (!isWebComponent()) {\n throw new Error(`this command must be run inside a web-component directory`);\n }\n }\n\n private getBundleDir() {\n return path.relative('.', path.join(this.getOutDir(), 'bundle'));\n }\n\n private getMinifiedPrefixPath() {\n const { name } = this.getPackageJson();\n const baseUrl = `https://unpkg.servicetitan.com/${name}@${this.args.releaseVersion}`;\n return `${baseUrl}/${this.getBundleDir().replace(/\\\\/g, '/')}`;\n }\n\n private getOptions() {\n const { dry, releaseVersion } = this.args;\n const service = this.getPackageJson().name.replace(/^[^/]+\\//, '');\n return [\n ...[dry && `--dry-run`],\n `--service=${service}`,\n `--release-version=${releaseVersion}`,\n `--minified-path-prefix=${this.getMinifiedPrefixPath()}`,\n `--project-path=${this.getProjectPath()}`,\n ].filter(item => !!item) as string[];\n }\n\n private getOutDir() {\n if (!this.#outDir) {\n const outDir = new TSConfig(getTsConfig()).getValue<string>('compilerOptions.outDir');\n if (!outDir) {\n throw new Error('compilerOptions.outDir is not configured');\n }\n\n this.#outDir = outDir;\n }\n return this.#outDir;\n }\n\n private getPackageJson() {\n if (!this.#packageJson) {\n this.#packageJson = readJson<PackageJson>('package.json');\n }\n return this.#packageJson;\n }\n\n private getProjectPath() {\n const name = readJson(path.join(this.getOutDir(), 'metadata.json')).name;\n return `${name}/`;\n }\n\n private run(command: string) {\n log.info(`Running: ${command}`);\n return execSync(command, { stdio: 'inherit' });\n }\n}\n"],"names":["UploadSourcemaps","execute","checkLocation","checkArgs","bundleDir","getBundleDir","options","getOptions","join","run","process","env","DATADOG_API_KEY","message","isCI","Error","log","warning","args","releaseVersion","isWebComponent","path","relative","getOutDir","getMinifiedPrefixPath","name","getPackageJson","baseUrl","replace","dry","service","getProjectPath","filter","item","outDir","TSConfig","getTsConfig","getValue","readJson","command","info","execSync","stdio"],"mappings":";;;;+BAeaA;;;eAAAA;;;6DAfI;+BACQ;uBAC6C;wBACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAa3B,uCACA;AAFG,MAAMA;IAMT,MAEMC,UAAU;QACZ,IAAI,CAACC,aAAa;QAClB,IAAI,CAAC,IAAI,CAACC,SAAS,IAAI;YACnB;QACJ;QAEA,MAAMC,YAAY,IAAI,CAACC,YAAY;QACnC,MAAMC,UAAU,IAAI,CAACC,UAAU,GAAGC,IAAI,CAAC;QACvC,IAAI,CAACC,GAAG,CAAC,CAAC,kDAAkD,EAAEL,UAAU,CAAC,EAAEE,SAAS;IACxF;IAEQH,YAAY;QAChB,IAAI,CAACO,QAAQC,GAAG,CAACC,eAAe,EAAE;YAC9B,MAAMC,UAAU;YAChB,IAAI,CAACC,IAAAA,YAAI,KAAI;gBACT,MAAM,IAAIC,MAAMF;YACpB;YACAG,UAAG,CAACC,OAAO,CAAC,GAAGJ,QAAQ,qBAAqB,CAAC;YAC7C,OAAO;QACX;QAEA,IAAI,CAAC,IAAI,CAACK,IAAI,CAACC,cAAc,EAAE;YAC3B,MAAM,IAAIJ,MAAM;QACpB;QAEA,OAAO;IACX;IAEQb,gBAAgB;QACpB,IAAI,CAACkB,IAAAA,qBAAc,KAAI;YACnB,MAAM,IAAIL,MAAM,CAAC,yDAAyD,CAAC;QAC/E;IACJ;IAEQV,eAAe;QACnB,OAAOgB,aAAI,CAACC,QAAQ,CAAC,KAAKD,aAAI,CAACb,IAAI,CAAC,IAAI,CAACe,SAAS,IAAI;IAC1D;IAEQC,wBAAwB;QAC5B,MAAM,EAAEC,IAAI,EAAE,GAAG,IAAI,CAACC,cAAc;QACpC,MAAMC,UAAU,CAAC,+BAA+B,EAAEF,KAAK,CAAC,EAAE,IAAI,CAACP,IAAI,CAACC,cAAc,EAAE;QACpF,OAAO,GAAGQ,QAAQ,CAAC,EAAE,IAAI,CAACtB,YAAY,GAAGuB,OAAO,CAAC,OAAO,MAAM;IAClE;IAEQrB,aAAa;QACjB,MAAM,EAAEsB,GAAG,EAAEV,cAAc,EAAE,GAAG,IAAI,CAACD,IAAI;QACzC,MAAMY,UAAU,IAAI,CAACJ,cAAc,GAAGD,IAAI,CAACG,OAAO,CAAC,YAAY;QAC/D,OAAO;eACA;gBAACC,OAAO,CAAC,SAAS,CAAC;aAAC;YACvB,CAAC,UAAU,EAAEC,SAAS;YACtB,CAAC,kBAAkB,EAAEX,gBAAgB;YACrC,CAAC,uBAAuB,EAAE,IAAI,CAACK,qBAAqB,IAAI;YACxD,CAAC,eAAe,EAAE,IAAI,CAACO,cAAc,IAAI;SAC5C,CAACC,MAAM,CAACC,CAAAA,OAAQ,CAAC,CAACA;IACvB;IAEQV,YAAY;QAChB,IAAI,0BAAC,IAAI,EAAC,UAAS;YACf,MAAMW,SAAS,IAAIC,gBAAQ,CAACC,IAAAA,kBAAW,KAAIC,QAAQ,CAAS;YAC5D,IAAI,CAACH,QAAQ;gBACT,MAAM,IAAInB,MAAM;YACpB;2CAEK,SAAUmB;QACnB;QACA,gCAAO,IAAI,EAAC;IAChB;IAEQR,iBAAiB;QACrB,IAAI,0BAAC,IAAI,EAAC,eAAc;2CACf,cAAeY,IAAAA,eAAQ,EAAc;QAC9C;QACA,gCAAO,IAAI,EAAC;IAChB;IAEQP,iBAAiB;QACrB,MAAMN,OAAOa,IAAAA,eAAQ,EAACjB,aAAI,CAACb,IAAI,CAAC,IAAI,CAACe,SAAS,IAAI,kBAAkBE,IAAI;QACxE,OAAO,GAAGA,KAAK,CAAC,CAAC;IACrB;IAEQhB,IAAI8B,OAAe,EAAE;QACzBvB,UAAG,CAACwB,IAAI,CAAC,CAAC,SAAS,EAAED,SAAS;QAC9B,OAAOE,IAAAA,uBAAQ,EAACF,SAAS;YAAEG,OAAO;QAAU;IAChD;IAvFA,YAAY,AAAiBxB,IAAU,CAAE;;QAHzC,gCAAA;;mBAAA,KAAA;;QACA,gCAAA;;mBAAA,KAAA;;aAE6BA,OAAAA;IAAa;AAwF9C"}
package/dist/cli/index.js CHANGED
@@ -8,7 +8,6 @@ const _yargs = require("yargs");
8
8
  const _utils = require("../utils");
9
9
  const _commands = require("./commands");
10
10
  const _utils1 = require("./utils");
11
- const _maybecreategitfolder = require("./utils/maybe-create-git-folder");
12
11
  function _interop_require_default(obj) {
13
12
  return obj && obj.__esModule ? obj : {
14
13
  default: obj
@@ -29,7 +28,7 @@ if (!Command) {
29
28
  process.exit(127);
30
29
  }
31
30
  checkNodeVersion();
32
- (0, _maybecreategitfolder.maybeCreateGitFolder)(Command);
31
+ (0, _utils1.maybeCreateGitFolder)(Command);
33
32
  // eslint-disable-next-line @typescript-eslint/naming-convention
34
33
  const command = new Command({
35
34
  ...argvSync,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/cli/index.ts"],"sourcesContent":["import execa from 'execa';\nimport path from 'path';\nimport { argv, Arguments } from 'yargs';\nimport { CommandName, getStartupVersion, log } from '../utils';\nimport { getCommand, getUserCommands } from './commands';\nimport { setNodeOptions } from './utils';\nimport { maybeCreateGitFolder } from './utils/maybe-create-git-folder';\n\nconst argvSync = argv as Arguments;\nconst name = argvSync._[0]?.toString() as CommandName;\nif (!name) {\n log.info(`startup cli v${getStartupVersion()}`);\n usage();\n process.exit(0);\n}\n\nconst Command = getCommand(name);\nif (!Command) {\n log.error(`Unknown command: \"${name}\"`);\n usage();\n process.exit(127);\n}\n\ncheckNodeVersion();\nmaybeCreateGitFolder(Command);\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nconst command = new Command({ ...argvSync, _: argvSync._.slice(1) });\nif (setNodeOptions(name, command)) {\n log.debug('run', `Running ${name} in child process with amended NODE_OPTIONS`);\n execa(process.argv[0], process.argv.slice(1), { stdio: 'inherit' }).catch(reason => {\n process.exit(reason.exitCode);\n });\n} else {\n command.execute().catch(() => {\n process.exit(1);\n });\n}\n\nfunction usage() {\n log.text('\\nUsage:');\n\n const commands = getUserCommands().filter(({ name }) => !!name);\n const maxNameLength = commands.reduce((result, { name }) => Math.max(result, name.length), 0);\n commands.forEach(({ name, description }) => {\n log.text(`startup ${name.padEnd(maxNameLength, ' ')} ${description}`);\n });\n}\n\nfunction checkNodeVersion() {\n const nodeVersion = Number(process.versions.node.split('.')[0]);\n if (nodeVersion % 2 === 0 || process.env.SKIP_NODE_VERSION_CHECK) {\n return;\n }\n\n const { engines } = require(path.join(__dirname, '../../package.json'));\n log.error(\n `error: node v${nodeVersion} detected, only even-numbered LTS versions ${engines.node} are supported`\n );\n log.text('See https://nodejs.org/en/download for LTS versions');\n process.exit(127);\n}\n"],"names":["argvSync","argv","name","_","toString","log","info","getStartupVersion","usage","process","exit","Command","getCommand","error","checkNodeVersion","maybeCreateGitFolder","command","slice","setNodeOptions","debug","execa","stdio","catch","reason","exitCode","execute","text","commands","getUserCommands","filter","maxNameLength","reduce","result","Math","max","length","forEach","description","padEnd","nodeVersion","Number","versions","node","split","env","SKIP_NODE_VERSION_CHECK","engines","require","path","join","__dirname"],"mappings":";;;;8DAAkB;6DACD;uBACe;uBACoB;0BACR;wBACb;sCACM;;;;;;IAGxBA;AADb,MAAMA,WAAWC,WAAI;AACrB,MAAMC,QAAOF,eAAAA,SAASG,CAAC,CAAC,EAAE,cAAbH,mCAAAA,aAAeI,QAAQ;AACpC,IAAI,CAACF,MAAM;IACPG,UAAG,CAACC,IAAI,CAAC,CAAC,aAAa,EAAEC,IAAAA,wBAAiB,KAAI;IAC9CC;IACAC,QAAQC,IAAI,CAAC;AACjB;AAEA,MAAMC,UAAUC,IAAAA,oBAAU,EAACV;AAC3B,IAAI,CAACS,SAAS;IACVN,UAAG,CAACQ,KAAK,CAAC,CAAC,kBAAkB,EAAEX,KAAK,CAAC,CAAC;IACtCM;IACAC,QAAQC,IAAI,CAAC;AACjB;AAEAI;AACAC,IAAAA,0CAAoB,EAACJ;AAErB,gEAAgE;AAChE,MAAMK,UAAU,IAAIL,QAAQ;IAAE,GAAGX,QAAQ;IAAEG,GAAGH,SAASG,CAAC,CAACc,KAAK,CAAC;AAAG;AAClE,IAAIC,IAAAA,sBAAc,EAAChB,MAAMc,UAAU;IAC/BX,UAAG,CAACc,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAEjB,KAAK,2CAA2C,CAAC;IAC7EkB,IAAAA,cAAK,EAACX,QAAQR,IAAI,CAAC,EAAE,EAAEQ,QAAQR,IAAI,CAACgB,KAAK,CAAC,IAAI;QAAEI,OAAO;IAAU,GAAGC,KAAK,CAACC,CAAAA;QACtEd,QAAQC,IAAI,CAACa,OAAOC,QAAQ;IAChC;AACJ,OAAO;IACHR,QAAQS,OAAO,GAAGH,KAAK,CAAC;QACpBb,QAAQC,IAAI,CAAC;IACjB;AACJ;AAEA,SAASF;IACLH,UAAG,CAACqB,IAAI,CAAC;IAET,MAAMC,WAAWC,IAAAA,yBAAe,IAAGC,MAAM,CAAC,CAAC,EAAE3B,IAAI,EAAE,GAAK,CAAC,CAACA;IAC1D,MAAM4B,gBAAgBH,SAASI,MAAM,CAAC,CAACC,QAAQ,EAAE9B,IAAI,EAAE,GAAK+B,KAAKC,GAAG,CAACF,QAAQ9B,KAAKiC,MAAM,GAAG;IAC3FR,SAASS,OAAO,CAAC,CAAC,EAAElC,IAAI,EAAEmC,WAAW,EAAE;QACnChC,UAAG,CAACqB,IAAI,CAAC,CAAC,QAAQ,EAAExB,KAAKoC,MAAM,CAACR,eAAe,KAAK,EAAE,EAAEO,aAAa;IACzE;AACJ;AAEA,SAASvB;IACL,MAAMyB,cAAcC,OAAO/B,QAAQgC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;IAC9D,IAAIJ,cAAc,MAAM,KAAK9B,QAAQmC,GAAG,CAACC,uBAAuB,EAAE;QAC9D;IACJ;IAEA,MAAM,EAAEC,OAAO,EAAE,GAAGC,QAAQC,aAAI,CAACC,IAAI,CAACC,WAAW;IACjD7C,UAAG,CAACQ,KAAK,CACL,CAAC,aAAa,EAAE0B,YAAY,2CAA2C,EAAEO,QAAQJ,IAAI,CAAC,cAAc,CAAC;IAEzGrC,UAAG,CAACqB,IAAI,CAAC;IACTjB,QAAQC,IAAI,CAAC;AACjB"}
1
+ {"version":3,"sources":["../../src/cli/index.ts"],"sourcesContent":["import execa from 'execa';\nimport path from 'path';\nimport { argv, Arguments } from 'yargs';\nimport { CommandName, getStartupVersion, log } from '../utils';\nimport { getCommand, getUserCommands } from './commands';\nimport { maybeCreateGitFolder, setNodeOptions } from './utils';\n\nconst argvSync = argv as Arguments;\nconst name = argvSync._[0]?.toString() as CommandName;\nif (!name) {\n log.info(`startup cli v${getStartupVersion()}`);\n usage();\n process.exit(0);\n}\n\nconst Command = getCommand(name);\nif (!Command) {\n log.error(`Unknown command: \"${name}\"`);\n usage();\n process.exit(127);\n}\n\ncheckNodeVersion();\nmaybeCreateGitFolder(Command);\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nconst command = new Command({ ...argvSync, _: argvSync._.slice(1) });\nif (setNodeOptions(name, command)) {\n log.debug('run', `Running ${name} in child process with amended NODE_OPTIONS`);\n execa(process.argv[0], process.argv.slice(1), { stdio: 'inherit' }).catch(reason => {\n process.exit(reason.exitCode);\n });\n} else {\n command.execute().catch(() => {\n process.exit(1);\n });\n}\n\nfunction usage() {\n log.text('\\nUsage:');\n\n const commands = getUserCommands().filter(({ name }) => !!name);\n const maxNameLength = commands.reduce((result, { name }) => Math.max(result, name.length), 0);\n commands.forEach(({ name, description }) => {\n log.text(`startup ${name.padEnd(maxNameLength, ' ')} ${description}`);\n });\n}\n\nfunction checkNodeVersion() {\n const nodeVersion = Number(process.versions.node.split('.')[0]);\n if (nodeVersion % 2 === 0 || process.env.SKIP_NODE_VERSION_CHECK) {\n return;\n }\n\n const { engines } = require(path.join(__dirname, '../../package.json'));\n log.error(\n `error: node v${nodeVersion} detected, only even-numbered LTS versions ${engines.node} are supported`\n );\n log.text('See https://nodejs.org/en/download for LTS versions');\n process.exit(127);\n}\n"],"names":["argvSync","argv","name","_","toString","log","info","getStartupVersion","usage","process","exit","Command","getCommand","error","checkNodeVersion","maybeCreateGitFolder","command","slice","setNodeOptions","debug","execa","stdio","catch","reason","exitCode","execute","text","commands","getUserCommands","filter","maxNameLength","reduce","result","Math","max","length","forEach","description","padEnd","nodeVersion","Number","versions","node","split","env","SKIP_NODE_VERSION_CHECK","engines","require","path","join","__dirname"],"mappings":";;;;8DAAkB;6DACD;uBACe;uBACoB;0BACR;wBACS;;;;;;IAGxCA;AADb,MAAMA,WAAWC,WAAI;AACrB,MAAMC,QAAOF,eAAAA,SAASG,CAAC,CAAC,EAAE,cAAbH,mCAAAA,aAAeI,QAAQ;AACpC,IAAI,CAACF,MAAM;IACPG,UAAG,CAACC,IAAI,CAAC,CAAC,aAAa,EAAEC,IAAAA,wBAAiB,KAAI;IAC9CC;IACAC,QAAQC,IAAI,CAAC;AACjB;AAEA,MAAMC,UAAUC,IAAAA,oBAAU,EAACV;AAC3B,IAAI,CAACS,SAAS;IACVN,UAAG,CAACQ,KAAK,CAAC,CAAC,kBAAkB,EAAEX,KAAK,CAAC,CAAC;IACtCM;IACAC,QAAQC,IAAI,CAAC;AACjB;AAEAI;AACAC,IAAAA,4BAAoB,EAACJ;AAErB,gEAAgE;AAChE,MAAMK,UAAU,IAAIL,QAAQ;IAAE,GAAGX,QAAQ;IAAEG,GAAGH,SAASG,CAAC,CAACc,KAAK,CAAC;AAAG;AAClE,IAAIC,IAAAA,sBAAc,EAAChB,MAAMc,UAAU;IAC/BX,UAAG,CAACc,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAEjB,KAAK,2CAA2C,CAAC;IAC7EkB,IAAAA,cAAK,EAACX,QAAQR,IAAI,CAAC,EAAE,EAAEQ,QAAQR,IAAI,CAACgB,KAAK,CAAC,IAAI;QAAEI,OAAO;IAAU,GAAGC,KAAK,CAACC,CAAAA;QACtEd,QAAQC,IAAI,CAACa,OAAOC,QAAQ;IAChC;AACJ,OAAO;IACHR,QAAQS,OAAO,GAAGH,KAAK,CAAC;QACpBb,QAAQC,IAAI,CAAC;IACjB;AACJ;AAEA,SAASF;IACLH,UAAG,CAACqB,IAAI,CAAC;IAET,MAAMC,WAAWC,IAAAA,yBAAe,IAAGC,MAAM,CAAC,CAAC,EAAE3B,IAAI,EAAE,GAAK,CAAC,CAACA;IAC1D,MAAM4B,gBAAgBH,SAASI,MAAM,CAAC,CAACC,QAAQ,EAAE9B,IAAI,EAAE,GAAK+B,KAAKC,GAAG,CAACF,QAAQ9B,KAAKiC,MAAM,GAAG;IAC3FR,SAASS,OAAO,CAAC,CAAC,EAAElC,IAAI,EAAEmC,WAAW,EAAE;QACnChC,UAAG,CAACqB,IAAI,CAAC,CAAC,QAAQ,EAAExB,KAAKoC,MAAM,CAACR,eAAe,KAAK,EAAE,EAAEO,aAAa;IACzE;AACJ;AAEA,SAASvB;IACL,MAAMyB,cAAcC,OAAO/B,QAAQgC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;IAC9D,IAAIJ,cAAc,MAAM,KAAK9B,QAAQmC,GAAG,CAACC,uBAAuB,EAAE;QAC9D;IACJ;IAEA,MAAM,EAAEC,OAAO,EAAE,GAAGC,QAAQC,aAAI,CAACC,IAAI,CAACC,WAAW;IACjD7C,UAAG,CAACQ,KAAK,CACL,CAAC,aAAa,EAAE0B,YAAY,2CAA2C,EAAEO,QAAQJ,IAAI,CAAC,cAAc,CAAC;IAEzGrC,UAAG,CAACqB,IAAI,CAAC;IACTjB,QAAQC,IAAI,CAAC;AACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/bundle.ts"],"names":[],"mappings":"AAKA,OAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAejD,UAAU,OAAO;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAWD,eAAO,MAAM,wBAAwB,0BAA0B,CAAC;AAChE,eAAO,MAAM,yBAAyB,2BAA2B,CAAC;AAElE,wBAAsB,MAAM,CAAC,OAAO,GAAE,OAAY,0BAkCjD"}
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/bundle.ts"],"names":[],"mappings":"AAKA,OAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAejD,UAAU,OAAO;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAWD,eAAO,MAAM,wBAAwB,0BAA0B,CAAC;AAChE,eAAO,MAAM,yBAAyB,2BAA2B,CAAC;AAElE,wBAAsB,MAAM,CAAC,OAAO,GAAE,OAAY,0BAmCjD"}
@@ -58,7 +58,7 @@ async function bundle(options = {}) {
58
58
  fallback
59
59
  });
60
60
  const webpackOptions = getWebpackOptions(options, customConfig);
61
- _utils.log.debug('custom-webpack-config', ()=>(0, _utils1.stringifyConfig)(customConfig));
61
+ /* istanbul ignore next: debug only */ _utils.log.debug('custom-webpack-config', ()=>(0, _utils1.stringifyConfig)(customConfig));
62
62
  if ((0, _utils.isWebComponent)()) {
63
63
  return bundleWebComponent({
64
64
  customConfig,
@@ -131,7 +131,7 @@ function readConfig(relativePath) {
131
131
  }
132
132
  }
133
133
  async function run(config) {
134
- const compiler = (0, _webpack.default)(config);
134
+ const compiler = createWebpackCompiler(config);
135
135
  const stats = await new Promise((resolve, reject)=>{
136
136
  compiler.run((error, stats)=>{
137
137
  if (!stats || error) {
@@ -146,7 +146,7 @@ async function run(config) {
146
146
  process.stdout.write(stats.toString(config.stats) + '\n');
147
147
  }
148
148
  async function runServe({ devServer = {}, ...config }) {
149
- const compiler = (0, _webpack.default)(config);
149
+ const compiler = createWebpackCompiler(config);
150
150
  var _devServer_host;
151
151
  const host = (_devServer_host = devServer.host) !== null && _devServer_host !== void 0 ? _devServer_host : 'localhost';
152
152
  const port = await (0, _portfinder.getPortPromise)({
@@ -169,7 +169,7 @@ async function runServe({ devServer = {}, ...config }) {
169
169
  });
170
170
  }
171
171
  async function runWatch(config) {
172
- const compiler = (0, _webpack.default)(config);
172
+ const compiler = createWebpackCompiler(config);
173
173
  return new Promise((_0, reject)=>{
174
174
  const watching = compiler.watch({}, (e)=>{
175
175
  if (e) {
@@ -180,5 +180,8 @@ async function runWatch(config) {
180
180
  });
181
181
  });
182
182
  }
183
+ function createWebpackCompiler(config) {
184
+ return (0, _webpack.default)(config); // webpack only potentially returns null when given a callback argument
185
+ }
183
186
 
184
187
  //# sourceMappingURL=bundle.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/cli/utils/bundle.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport crypto from 'crypto';\nimport { getPortPromise } from 'portfinder';\n\nimport webpack, { Configuration } from 'webpack';\nimport WebpackDevServer from 'webpack-dev-server';\n\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 ? 'development' : 'production';\n const fallback = watch || useWatchConfig ? webpackDevConfigFileName : webpackProdConfigFileName;\n const customConfig = readWebpackConfig({ ...options, fallback });\n const webpackOptions = getWebpackOptions(options, customConfig);\n\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 = webpack(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 = webpack(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 = webpack(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"],"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","webpack","stats","reject","error","hasErrors","close","process","stdout","write","devServer","host","port","getPortPromise","Number","_0","server","WebpackDevServer","startCallback","e","stopCallback","watching"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/cli/utils/bundle.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport crypto from 'crypto';\nimport { getPortPromise } from 'portfinder';\n\nimport webpack, { Configuration } from 'webpack';\nimport WebpackDevServer from 'webpack-dev-server';\n\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 ? '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,3 +1,12 @@
1
- export declare const gitGetBranch: () => string;
2
- export declare const gitGetCommitHash: () => string;
1
+ export declare function gitGetBranch(): string;
2
+ export declare function gitGetCommitHash(): string;
3
+ interface Repo {
4
+ owner?: string;
5
+ name: string;
6
+ }
7
+ export declare function gitCloneRepo(params: Repo & {
8
+ destination: string;
9
+ }): Promise<boolean>;
10
+ export declare function gitIsReachable({ owner, name }: Repo): boolean;
11
+ export {};
3
12
  //# sourceMappingURL=cli-git.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-git.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/cli-git.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,QAAO,MAE/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAO,MAEnC,CAAC"}
1
+ {"version":3,"file":"cli-git.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/cli-git.ts"],"names":[],"mappings":"AAIA,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,UAAU,IAAI;IACV,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,IAAI,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,oBAkBxE;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAsB,EAAE,IAAI,EAAE,EAAE,IAAI,WASpE"}