@analogjs/vitest-angular 3.0.0-alpha.8 → 3.0.0-alpha.9

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 (44) hide show
  1. package/_virtual/_rolldown/runtime.js +7 -0
  2. package/package.json +5 -8
  3. package/setup-snapshots.js +71 -95
  4. package/setup-snapshots.js.map +1 -0
  5. package/setup-testbed.js +23 -29
  6. package/setup-testbed.js.map +1 -0
  7. package/setup-zone.js +90 -103
  8. package/setup-zone.js.map +1 -0
  9. package/src/index.js +3 -4
  10. package/src/lib/builders/build/devkit.js +22 -17
  11. package/src/lib/builders/build/devkit.js.map +1 -0
  12. package/src/lib/builders/build/plugins/angular-memory-plugin.js +51 -77
  13. package/src/lib/builders/build/plugins/angular-memory-plugin.js.map +1 -0
  14. package/src/lib/builders/build/plugins/downlevel-plugin.js +23 -22
  15. package/src/lib/builders/build/plugins/downlevel-plugin.js.map +1 -0
  16. package/src/lib/builders/build/schema.js +53 -0
  17. package/src/lib/builders/build/schema.js.map +1 -0
  18. package/src/lib/builders/build/vitest.impl.js +153 -190
  19. package/src/lib/builders/build/vitest.impl.js.map +1 -0
  20. package/src/lib/builders/test/schema.js +51 -0
  21. package/src/lib/builders/test/schema.js.map +1 -0
  22. package/src/lib/builders/test/vitest.impl.js +48 -58
  23. package/src/lib/builders/test/vitest.impl.js.map +1 -0
  24. package/src/lib/tools/package.json +2 -4
  25. package/src/lib/tools/src/index.js +3 -6
  26. package/src/lib/tools/src/schematics/setup/index.js +46 -71
  27. package/src/lib/tools/src/schematics/setup/index.js.map +1 -1
  28. package/src/lib/tools/src/schematics/utils/angular.js +16 -22
  29. package/src/lib/tools/src/schematics/utils/angular.js.map +1 -1
  30. package/src/lib/tools/src/schematics/utils/dependencies.js +34 -44
  31. package/src/lib/tools/src/schematics/utils/dependencies.js.map +1 -1
  32. package/src/lib/tools/src/schematics/utils/index.js +4 -8
  33. package/src/lib/tools/src/schematics/utils/versions.d.ts +1 -1
  34. package/src/lib/tools/src/schematics/utils/versions.js +17 -12
  35. package/src/lib/tools/src/schematics/utils/versions.js.map +1 -1
  36. package/src/lib/tools/src/schematics/utils/workspace.js +14 -17
  37. package/src/lib/tools/src/schematics/utils/workspace.js.map +1 -1
  38. package/src/lib/tools/src/test-global-setup.d.ts +1 -0
  39. package/README.md +0 -297
  40. package/src/lib/builders/build/schema.json +0 -47
  41. package/src/lib/builders/build/utils.js +0 -1
  42. package/src/lib/builders/test/schema.json +0 -47
  43. package/src/lib/tools/src/index.js.map +0 -1
  44. package/src/lib/tools/src/schematics/utils/index.js.map +0 -1
@@ -1,18 +1,23 @@
1
- export async function getBuildApplicationFunction() {
2
- const { VERSION } = await Function('return import("@angular/compiler-cli")')();
3
- const angularVersion = Number(VERSION.major);
4
- let buildApplicationInternal;
5
- if (angularVersion < 17) {
6
- throw new Error('This builder is not supported with versions earlier than Angular v17');
7
- }
8
- else if (angularVersion >= 17 && angularVersion < 18) {
9
- const { buildApplicationInternal: buildApplicationInternalFn, } = require('@angular-devkit/build-angular/src/builders/application');
10
- buildApplicationInternal = buildApplicationInternalFn;
11
- }
12
- else {
13
- const { buildApplicationInternal: buildApplicationInternalFn, } = require('@angular/build/private');
14
- buildApplicationInternal = buildApplicationInternalFn;
15
- }
16
- return { buildApplicationInternal, angularVersion };
1
+ import { __require } from "../../../../_virtual/_rolldown/runtime.js";
2
+ //#region packages/vitest-angular/src/lib/builders/build/devkit.ts
3
+ async function getBuildApplicationFunction() {
4
+ const { VERSION } = await Function("return import(\"@angular/compiler-cli\")")();
5
+ const angularVersion = Number(VERSION.major);
6
+ let buildApplicationInternal;
7
+ if (angularVersion < 17) throw new Error("This builder is not supported with versions earlier than Angular v17");
8
+ else if (angularVersion >= 17 && angularVersion < 18) {
9
+ const { buildApplicationInternal: buildApplicationInternalFn } = __require("@angular-devkit/build-angular/src/builders/application");
10
+ buildApplicationInternal = buildApplicationInternalFn;
11
+ } else {
12
+ const { buildApplicationInternal: buildApplicationInternalFn } = __require("@angular/build/private");
13
+ buildApplicationInternal = buildApplicationInternalFn;
14
+ }
15
+ return {
16
+ buildApplicationInternal,
17
+ angularVersion
18
+ };
17
19
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2a2l0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdml0ZXN0LWFuZ3VsYXIvc3JjL2xpYi9idWlsZGVycy9idWlsZC9kZXZraXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLEtBQUssVUFBVSwyQkFBMkI7SUFJL0MsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLE1BQU8sUUFBUSxDQUNqQyx3Q0FBd0MsQ0FDekMsRUFBNkQsQ0FBQztJQUUvRCxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdDLElBQUksd0JBQWlELENBQUM7SUFFdEQsSUFBSSxjQUFjLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FDYixzRUFBc0UsQ0FDdkUsQ0FBQztJQUNKLENBQUM7U0FBTSxJQUFJLGNBQWMsSUFBSSxFQUFFLElBQUksY0FBYyxHQUFHLEVBQUUsRUFBRSxDQUFDO1FBQ3ZELE1BQU0sRUFDSix3QkFBd0IsRUFBRSwwQkFBMEIsR0FDckQsR0FBRyxPQUFPLENBQUMsd0RBQXdELENBQUMsQ0FBQztRQUV0RSx3QkFBd0IsR0FBRywwQkFBMEIsQ0FBQztJQUN4RCxDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sRUFDSix3QkFBd0IsRUFBRSwwQkFBMEIsR0FDckQsR0FBRyxPQUFPLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUV0Qyx3QkFBd0IsR0FBRywwQkFBMEIsQ0FBQztJQUN4RCxDQUFDO0lBRUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLGNBQWMsRUFBRSxDQUFDO0FBQ3RELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0QnVpbGRBcHBsaWNhdGlvbkZ1bmN0aW9uKCk6IFByb21pc2U8e1xuICBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWw6ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55O1xuICBhbmd1bGFyVmVyc2lvbjogbnVtYmVyO1xufT4ge1xuICBjb25zdCB7IFZFUlNJT04gfSA9IGF3YWl0IChGdW5jdGlvbihcbiAgICAncmV0dXJuIGltcG9ydChcIkBhbmd1bGFyL2NvbXBpbGVyLWNsaVwiKScsXG4gICkoKSBhcyBQcm9taXNlPHsgVkVSU0lPTjogeyBtYWpvcjogc3RyaW5nOyBtaW5vcjogc3RyaW5nIH0gfT4pO1xuXG4gIGNvbnN0IGFuZ3VsYXJWZXJzaW9uID0gTnVtYmVyKFZFUlNJT04ubWFqb3IpO1xuICBsZXQgYnVpbGRBcHBsaWNhdGlvbkludGVybmFsOiAoLi4uYXJnczogYW55W10pID0+IGFueTtcblxuICBpZiAoYW5ndWxhclZlcnNpb24gPCAxNykge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICdUaGlzIGJ1aWxkZXIgaXMgbm90IHN1cHBvcnRlZCB3aXRoIHZlcnNpb25zIGVhcmxpZXIgdGhhbiBBbmd1bGFyIHYxNycsXG4gICAgKTtcbiAgfSBlbHNlIGlmIChhbmd1bGFyVmVyc2lvbiA+PSAxNyAmJiBhbmd1bGFyVmVyc2lvbiA8IDE4KSB7XG4gICAgY29uc3Qge1xuICAgICAgYnVpbGRBcHBsaWNhdGlvbkludGVybmFsOiBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWxGbixcbiAgICB9ID0gcmVxdWlyZSgnQGFuZ3VsYXItZGV2a2l0L2J1aWxkLWFuZ3VsYXIvc3JjL2J1aWxkZXJzL2FwcGxpY2F0aW9uJyk7XG5cbiAgICBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWwgPSBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWxGbjtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB7XG4gICAgICBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWw6IGJ1aWxkQXBwbGljYXRpb25JbnRlcm5hbEZuLFxuICAgIH0gPSByZXF1aXJlKCdAYW5ndWxhci9idWlsZC9wcml2YXRlJyk7XG5cbiAgICBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWwgPSBidWlsZEFwcGxpY2F0aW9uSW50ZXJuYWxGbjtcbiAgfVxuXG4gIHJldHVybiB7IGJ1aWxkQXBwbGljYXRpb25JbnRlcm5hbCwgYW5ndWxhclZlcnNpb24gfTtcbn1cbiJdfQ==
20
+ //#endregion
21
+ export { getBuildApplicationFunction };
22
+
23
+ //# sourceMappingURL=devkit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devkit.js","names":[],"sources":["../../../../../../../packages/vitest-angular/src/lib/builders/build/devkit.ts"],"sourcesContent":["export async function getBuildApplicationFunction(): Promise<{\n buildApplicationInternal: (...args: any[]) => any;\n angularVersion: number;\n}> {\n const { VERSION } = await (Function(\n 'return import(\"@angular/compiler-cli\")',\n )() as Promise<{ VERSION: { major: string; minor: string } }>);\n\n const angularVersion = Number(VERSION.major);\n let buildApplicationInternal: (...args: any[]) => any;\n\n if (angularVersion < 17) {\n throw new Error(\n 'This builder is not supported with versions earlier than Angular v17',\n );\n } else if (angularVersion >= 17 && angularVersion < 18) {\n const {\n buildApplicationInternal: buildApplicationInternalFn,\n } = require('@angular-devkit/build-angular/src/builders/application');\n\n buildApplicationInternal = buildApplicationInternalFn;\n } else {\n const {\n buildApplicationInternal: buildApplicationInternalFn,\n } = require('@angular/build/private');\n\n buildApplicationInternal = buildApplicationInternalFn;\n }\n\n return { buildApplicationInternal, angularVersion };\n}\n"],"mappings":";;AAAA,eAAsB,8BAGnB;CACD,MAAM,EAAE,YAAY,MAAO,SACzB,2CACD,EAAE;CAEH,MAAM,iBAAiB,OAAO,QAAQ,MAAM;CAC5C,IAAI;AAEJ,KAAI,iBAAiB,GACnB,OAAM,IAAI,MACR,uEACD;UACQ,kBAAkB,MAAM,iBAAiB,IAAI;EACtD,MAAM,EACJ,0BAA0B,+BAAA,UAChB,yDAAyD;AAErE,6BAA2B;QACtB;EACL,MAAM,EACJ,0BAA0B,+BAAA,UAChB,yBAAyB;AAErC,6BAA2B;;AAG7B,QAAO;EAAE;EAA0B;EAAgB"}
@@ -1,79 +1,53 @@
1
+ import { dirname, join, relative, resolve } from "node:path";
2
+ //#region packages/vitest-angular/src/lib/builders/build/plugins/angular-memory-plugin.ts
1
3
  /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.dev/license
7
- */
8
- // import assert from 'node:assert';
9
- import { dirname, join, relative, resolve } from 'node:path';
10
- export async function createAngularMemoryPlugin(options) {
11
- const { normalizePath } = await Function('return import("vite")')();
12
- const { outputFiles, external } = options;
13
- let config;
14
- let projectRoot;
15
- const workspaceRoot = options?.workspaceRoot || process.cwd();
16
- return {
17
- name: 'vite:angular-memory',
18
- // Ensures plugin hooks run before built-in Vite hooks
19
- enforce: 'pre',
20
- config(userConfig) {
21
- config = userConfig;
22
- projectRoot = resolve(workspaceRoot, config.root || '.');
23
- },
24
- async resolveId(source, importer) {
25
- // Prevent vite from resolving an explicit external dependency (`externalDependencies` option)
26
- if (external?.includes(source)) {
27
- // This is still not ideal since Vite will still transform the import specifier to
28
- // `/@id/${source}` but is currently closer to a raw external than a resolved file path.
29
- return source;
30
- }
31
- if (importer) {
32
- if (source[0] === '.' &&
33
- normalizePath(importer).startsWith(projectRoot)) {
34
- // Remove query if present
35
- const [importerFile] = importer.split('?', 1);
36
- source =
37
- '/' + join(dirname(relative(projectRoot, importerFile)), source);
38
- }
39
- }
40
- const [file] = source.split('?', 1);
41
- const fileSplits = file.split('/');
42
- if (outputFiles.has(fileSplits[fileSplits.length - 1])) {
43
- return fileSplits[fileSplits.length - 1];
44
- }
45
- if (outputFiles.has(file)) {
46
- return join(projectRoot, source);
47
- }
48
- return;
49
- },
50
- load(id) {
51
- const [file] = id.split('?', 1);
52
- const relativeFile = options.angularVersion < 19
53
- ? normalizePath(relative(projectRoot, file))
54
- .replace(/^.*\//, '')
55
- .replace('.ts', '.js')
56
- : 'spec-' +
57
- normalizePath(relative(projectRoot, file))
58
- .replace('.ts', '.js')
59
- .replace(/^[./]+/, '_')
60
- .replace(/\//g, '-');
61
- const codeContents = outputFiles.get(relativeFile)?.contents ||
62
- outputFiles.get(id)?.contents;
63
- if (codeContents === undefined) {
64
- return undefined;
65
- }
66
- const code = Buffer.from(codeContents).toString('utf-8');
67
- const mapContents = outputFiles.get(relativeFile + '.map')?.contents;
68
- return {
69
- // Remove source map URL comments from the code if a sourcemap is present.
70
- // Vite will inline and add an additional sourcemap URL for the sourcemap.
71
- code: mapContents
72
- ? code.replace(/^\/\/# sourceMappingURL=[^\r\n]*/gm, '')
73
- : code,
74
- map: mapContents && Buffer.from(mapContents).toString('utf-8'),
75
- };
76
- },
77
- };
4
+ * @license
5
+ * Copyright Google LLC All Rights Reserved.
6
+ *
7
+ * Use of this source code is governed by an MIT-style license that can be
8
+ * found in the LICENSE file at https://angular.dev/license
9
+ */
10
+ async function createAngularMemoryPlugin(options) {
11
+ const { normalizePath } = await Function("return import(\"vite\")")();
12
+ const { outputFiles, external } = options;
13
+ let config;
14
+ let projectRoot;
15
+ const workspaceRoot = options?.workspaceRoot || process.cwd();
16
+ return {
17
+ name: "vite:angular-memory",
18
+ enforce: "pre",
19
+ config(userConfig) {
20
+ config = userConfig;
21
+ projectRoot = resolve(workspaceRoot, config.root || ".");
22
+ },
23
+ async resolveId(source, importer) {
24
+ if (external?.includes(source)) return source;
25
+ if (importer) {
26
+ if (source[0] === "." && normalizePath(importer).startsWith(projectRoot)) {
27
+ const [importerFile] = importer.split("?", 1);
28
+ source = "/" + join(dirname(relative(projectRoot, importerFile)), source);
29
+ }
30
+ }
31
+ const [file] = source.split("?", 1);
32
+ const fileSplits = file.split("/");
33
+ if (outputFiles.has(fileSplits[fileSplits.length - 1])) return fileSplits[fileSplits.length - 1];
34
+ if (outputFiles.has(file)) return join(projectRoot, source);
35
+ },
36
+ load(id) {
37
+ const [file] = id.split("?", 1);
38
+ const relativeFile = options.angularVersion < 19 ? normalizePath(relative(projectRoot, file)).replace(/^.*\//, "").replace(".ts", ".js") : "spec-" + normalizePath(relative(projectRoot, file)).replace(".ts", ".js").replace(/^[./]+/, "_").replace(/\//g, "-");
39
+ const codeContents = outputFiles.get(relativeFile)?.contents || outputFiles.get(id)?.contents;
40
+ if (codeContents === void 0) return;
41
+ const code = Buffer.from(codeContents).toString("utf-8");
42
+ const mapContents = outputFiles.get(relativeFile + ".map")?.contents;
43
+ return {
44
+ code: mapContents ? code.replace(/^\/\/# sourceMappingURL=[^\r\n]*/gm, "") : code,
45
+ map: mapContents && Buffer.from(mapContents).toString("utf-8")
46
+ };
47
+ }
48
+ };
78
49
  }
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1tZW1vcnktcGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdml0ZXN0LWFuZ3VsYXIvc3JjL2xpYi9idWlsZGVycy9idWlsZC9wbHVnaW5zL2FuZ3VsYXItbWVtb3J5LXBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxvQ0FBb0M7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQVc3RCxNQUFNLENBQUMsS0FBSyxVQUFVLHlCQUF5QixDQUM3QyxPQUFtQztJQVFuQyxNQUFNLEVBQUUsYUFBYSxFQUFFLEdBQUcsTUFBTyxRQUFRLENBQ3ZDLHVCQUF1QixDQUN4QixFQUFxQyxDQUFDO0lBQ3ZDLE1BQU0sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBQzFDLElBQUksTUFBTSxDQUFDO0lBQ1gsSUFBSSxXQUFtQixDQUFDO0lBQ3hCLE1BQU0sYUFBYSxHQUFHLE9BQU8sRUFBRSxhQUFhLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBRTlELE9BQU87UUFDTCxJQUFJLEVBQUUscUJBQXFCO1FBQzNCLHNEQUFzRDtRQUN0RCxPQUFPLEVBQUUsS0FBSztRQUNkLE1BQU0sQ0FBQyxVQUFlO1lBQ3BCLE1BQU0sR0FBRyxVQUFVLENBQUM7WUFDcEIsV0FBVyxHQUFHLE9BQU8sQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQztRQUMzRCxDQUFDO1FBQ0QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFjLEVBQUUsUUFBZ0I7WUFDOUMsOEZBQThGO1lBQzlGLElBQUksUUFBUSxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO2dCQUMvQixrRkFBa0Y7Z0JBQ2xGLHdG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QyxRQUFRLENBQUMsT0FBTyxDQUFDO2FBQy9ELENBQUM7UUFDSixDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5kZXYvbGljZW5zZVxuICovXG5cbi8vIGltcG9ydCBhc3NlcnQgZnJvbSAnbm9kZTphc3NlcnQnO1xuaW1wb3J0IHsgZGlybmFtZSwgam9pbiwgcmVsYXRpdmUsIHJlc29sdmUgfSBmcm9tICdub2RlOnBhdGgnO1xuXG5pbXBvcnQgeyBBbmd1bGFyTWVtb3J5T3V0cHV0RmlsZXMgfSBmcm9tICcuLi91dGlscyc7XG5cbmludGVyZmFjZSBBbmd1bGFyTWVtb3J5UGx1Z2luT3B0aW9ucyB7XG4gIHdvcmtzcGFjZVJvb3Q/OiBzdHJpbmc7XG4gIGFuZ3VsYXJWZXJzaW9uOiBudW1iZXI7XG4gIG91dHB1dEZpbGVzOiBBbmd1bGFyTWVtb3J5T3V0cHV0RmlsZXM7XG4gIGV4dGVybmFsPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjcmVhdGVBbmd1bGFyTWVtb3J5UGx1Z2luKFxuICBvcHRpb25zOiBBbmd1bGFyTWVtb3J5UGx1Z2luT3B0aW9ucyxcbik6IFByb21pc2U8e1xuICBuYW1lOiBzdHJpbmc7XG4gIGVuZm9yY2U6IHN0cmluZztcbiAgY29uZmlnOiAodXNlckNvbmZpZzogYW55KSA9PiB2b2lkO1xuICByZXNvbHZlSWQ6IChzb3VyY2U6IHN0cmluZywgaW1wb3J0ZXI6IHN0cmluZykgPT4gUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+O1xuICBsb2FkOiAoaWQ6IHN0cmluZykgPT4geyBjb2RlOiBzdHJpbmc7IG1hcDogc3RyaW5nIHwgdW5kZWZpbmVkIH0gfCB1bmRlZmluZWQ7XG59PiB7XG4gIGNvbnN0IHsgbm9ybWFsaXplUGF0aCB9ID0gYXdhaXQgKEZ1bmN0aW9uKFxuICAgICdyZXR1cm4gaW1wb3J0KFwidml0ZVwiKScsXG4gICkoKSBhcyBQcm9taXNlPHR5cGVvZiBpbXBvcnQoJ3ZpdGUnKT4pO1xuICBjb25zdCB7IG91dHB1dEZpbGVzLCBleHRlcm5hbCB9ID0gb3B0aW9ucztcbiAgbGV0IGNvbmZpZztcbiAgbGV0IHByb2plY3RSb290OiBzdHJpbmc7XG4gIGNvbnN0IHdvcmtzcGFjZVJvb3QgPSBvcHRpb25zPy53b3Jrc3BhY2VSb290IHx8IHByb2Nlc3MuY3dkKCk7XG5cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAndml0ZTphbmd1bGFyLW1lbW9yeScsXG4gICAgLy8gRW5zdXJlcyBwbHVnaW4gaG9va3MgcnVuIGJlZm9yZSBidWlsdC1pbiBWaXRlIGhvb2tzXG4gICAgZW5mb3JjZTogJ3ByZScsXG4gICAgY29uZmlnKHVzZXJDb25maWc6IGFueSkge1xuICAgICAgY29uZmlnID0gdXNlckNvbmZpZztcbiAgICAgIHByb2plY3RSb290ID0gcmVzb2x2ZSh3b3Jrc3BhY2VSb290LCBjb25maWcucm9vdCB8fCAnLicpO1xuICAgIH0sXG4gICAgYXN5bmMgcmVzb2x2ZUlkKHNvdXJjZTogc3RyaW5nLCBpbXBvcnRlcjogc3RyaW5nKSB7XG4gICAgICAvLyBQcmV2ZW50IHZpdGUgZnJvbSByZXNvbHZpbmcgYW4gZXhwbGljaXQgZXh0ZXJuYWwgZGVwZW5kZW5jeSAoYGV4dGVybmFsRGVwZW5kZW5jaWVzYCBvcHRpb24pXG4gICAgICBpZiAoZXh0ZXJuYWw/LmluY2x1ZGVzKHNvdXJjZSkpIHtcbiAgICAgICAgLy8gVGhpcyBpcyBzdGlsbCBub3QgaWRlYWwgc2luY2UgVml0ZSB3aWxsIHN0aWxsIHRyYW5zZm9ybSB0aGUgaW1wb3J0IHNwZWNpZmllciB0b1xuICAgICAgICAvLyBgL0BpZC8ke3NvdXJjZX1gIGJ1dCBpcyBjdXJyZW50bHkgY2xvc2VyIHRvIGEgcmF3IGV4dGVybmFsIHRoYW4gYSByZXNvbHZlZCBmaWxlIHBhdGguXG4gICAgICAgIHJldHVybiBzb3VyY2U7XG4gICAgICB9XG5cbiAgICAgIGlmIChpbXBvcnRlcikge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgc291cmNlWzBdID09PSAnLicgJiZcbiAgICAgICAgICBub3JtYWxpemVQYXRoKGltcG9ydGVyKS5zdGFydHNXaXRoKHByb2plY3RSb290KVxuICAgICAgICApIHtcbiAgICAgICAgICAvLyBSZW1vdmUgcXVlcnkgaWYgcHJlc2VudFxuICAgICAgICAgIGNvbnN0IFtpbXBvcnRlckZpbGVdID0gaW1wb3J0ZXIuc3BsaXQoJz8nLCAxKTtcbiAgICAgICAgICBzb3VyY2UgPVxuICAgICAgICAgICAgJy8nICsgam9pbihkaXJuYW1lKHJlbGF0aXZlKHByb2plY3RSb290LCBpbXBvcnRlckZpbGUpKSwgc291cmNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBbZmlsZV0gPSBzb3VyY2Uuc3BsaXQoJz8nLCAxKTtcbiAgICAgIGNvbnN0IGZpbGVTcGxpdHMgPSBmaWxlLnNwbGl0KCcvJyk7XG5cbiAgICAgIGlmIChvdXRwdXRGaWxlcy5oYXMoZmlsZVNwbGl0c1tmaWxlU3BsaXRzLmxlbmd0aCAtIDFdKSkge1xuICAgICAgICByZXR1cm4gZmlsZVNwbGl0c1tmaWxlU3BsaXRzLmxlbmd0aCAtIDFdO1xuICAgICAgfVxuXG4gICAgICBpZiAob3V0cHV0RmlsZXMuaGFzKGZpbGUpKSB7XG4gICAgICAgIHJldHVybiBqb2luKHByb2plY3RSb290LCBzb3VyY2UpO1xuICAgICAgfVxuICAgICAgcmV0dXJuO1xuICAgIH0sXG4gICAgbG9hZChpZDogc3RyaW5nKSB7XG4gICAgICBjb25zdCBbZmlsZV0gPSBpZC5zcGxpdCgnPycsIDEpO1xuICAgICAgY29uc3QgcmVsYXRpdmVGaWxlID1cbiAgICAgICAgb3B0aW9ucy5hbmd1bGFyVmVyc2lvbiA8IDE5XG4gICAgICAgICAgPyBub3JtYWxpemVQYXRoKHJlbGF0aXZlKHByb2plY3RSb290LCBmaWxlKSlcbiAgICAgICAgICAgICAgLnJlcGxhY2UoL14uKlxcLy8sICcnKVxuICAgICAgICAgICAgICAucmVwbGFjZSgnLnRzJywgJy5qcycpXG4gICAgICAgICAgOiAnc3BlYy0nICtcbiAgICAgICAgICAgIG5vcm1hbGl6ZVBhdGgocmVsYXRpdmUocHJvamVjdFJvb3QsIGZpbGUpKVxuICAgICAgICAgICAgICAucmVwbGFjZSgnLnRzJywgJy5qcycpXG4gICAgICAgICAgICAgIC5yZXBsYWNlKC9eWy4vXSsvLCAnXycpXG4gICAgICAgICAgICAgIC5yZXBsYWNlKC9cXC8vZywgJy0nKTtcblxuICAgICAgY29uc3QgY29kZUNvbnRlbnRzID1cbiAgICAgICAgb3V0cHV0RmlsZXMuZ2V0KHJlbGF0aXZlRmlsZSk/LmNvbnRlbnRzIHx8XG4gICAgICAgIG91dHB1dEZpbGVzLmdldChpZCk/LmNvbnRlbnRzO1xuICAgICAgaWYgKGNvZGVDb250ZW50cyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNvZGUgPSBCdWZmZXIuZnJvbShjb2RlQ29udGVudHMpLnRvU3RyaW5nKCd1dGYtOCcpO1xuICAgICAgY29uc3QgbWFwQ29udGVudHMgPSBvdXRwdXRGaWxlcy5nZXQocmVsYXRpdmVGaWxlICsgJy5tYXAnKT8uY29udGVudHM7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIC8vIFJlbW92ZSBzb3VyY2UgbWFwIFVSTCBjb21tZW50cyBmcm9tIHRoZSBjb2RlIGlmIGEgc291cmNlbWFwIGlzIHByZXNlbnQuXG4gICAgICAgIC8vIFZpdGUgd2lsbCBpbmxpbmUgYW5kIGFkZCBhbiBhZGRpdGlvbmFsIHNvdXJjZW1hcCBVUkwgZm9yIHRoZSBzb3VyY2VtYXAuXG4gICAgICAgIGNvZGU6IG1hcENvbnRlbnRzXG4gICAgICAgICAgPyBjb2RlLnJlcGxhY2UoL15cXC9cXC8jIHNvdXJjZU1hcHBpbmdVUkw9W15cXHJcXG5dKi9nbSwgJycpXG4gICAgICAgICAgOiBjb2RlLFxuICAgICAgICBtYXA6IG1hcENvbnRlbnRzICYmIEJ1ZmZlci5mcm9tKG1hcENvbnRlbnRzKS50b1N0cmluZygndXRmLTgnKSxcbiAgICAgIH07XG4gICAgfSxcbiAgfTtcbn1cbiJdfQ==
50
+ //#endregion
51
+ export { createAngularMemoryPlugin };
52
+
53
+ //# sourceMappingURL=angular-memory-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular-memory-plugin.js","names":[],"sources":["../../../../../../../../packages/vitest-angular/src/lib/builders/build/plugins/angular-memory-plugin.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\n// import assert from 'node:assert';\nimport { dirname, join, relative, resolve } from 'node:path';\n\nimport { AngularMemoryOutputFiles } from '../utils';\n\ninterface AngularMemoryPluginOptions {\n workspaceRoot?: string;\n angularVersion: number;\n outputFiles: AngularMemoryOutputFiles;\n external?: string[];\n}\n\nexport async function createAngularMemoryPlugin(\n options: AngularMemoryPluginOptions,\n): Promise<{\n name: string;\n enforce: string;\n config: (userConfig: any) => void;\n resolveId: (source: string, importer: string) => Promise<string | undefined>;\n load: (id: string) => { code: string; map: string | undefined } | undefined;\n}> {\n const { normalizePath } = await (Function(\n 'return import(\"vite\")',\n )() as Promise<typeof import('vite')>);\n const { outputFiles, external } = options;\n let config;\n let projectRoot: string;\n const workspaceRoot = options?.workspaceRoot || process.cwd();\n\n return {\n name: 'vite:angular-memory',\n // Ensures plugin hooks run before built-in Vite hooks\n enforce: 'pre',\n config(userConfig: any) {\n config = userConfig;\n projectRoot = resolve(workspaceRoot, config.root || '.');\n },\n async resolveId(source: string, importer: string) {\n // Prevent vite from resolving an explicit external dependency (`externalDependencies` option)\n if (external?.includes(source)) {\n // This is still not ideal since Vite will still transform the import specifier to\n // `/@id/${source}` but is currently closer to a raw external than a resolved file path.\n return source;\n }\n\n if (importer) {\n if (\n source[0] === '.' &&\n normalizePath(importer).startsWith(projectRoot)\n ) {\n // Remove query if present\n const [importerFile] = importer.split('?', 1);\n source =\n '/' + join(dirname(relative(projectRoot, importerFile)), source);\n }\n }\n\n const [file] = source.split('?', 1);\n const fileSplits = file.split('/');\n\n if (outputFiles.has(fileSplits[fileSplits.length - 1])) {\n return fileSplits[fileSplits.length - 1];\n }\n\n if (outputFiles.has(file)) {\n return join(projectRoot, source);\n }\n return;\n },\n load(id: string) {\n const [file] = id.split('?', 1);\n const relativeFile =\n options.angularVersion < 19\n ? normalizePath(relative(projectRoot, file))\n .replace(/^.*\\//, '')\n .replace('.ts', '.js')\n : 'spec-' +\n normalizePath(relative(projectRoot, file))\n .replace('.ts', '.js')\n .replace(/^[./]+/, '_')\n .replace(/\\//g, '-');\n\n const codeContents =\n outputFiles.get(relativeFile)?.contents ||\n outputFiles.get(id)?.contents;\n if (codeContents === undefined) {\n return undefined;\n }\n\n const code = Buffer.from(codeContents).toString('utf-8');\n const mapContents = outputFiles.get(relativeFile + '.map')?.contents;\n\n return {\n // Remove source map URL comments from the code if a sourcemap is present.\n // Vite will inline and add an additional sourcemap URL for the sourcemap.\n code: mapContents\n ? code.replace(/^\\/\\/# sourceMappingURL=[^\\r\\n]*/gm, '')\n : code,\n map: mapContents && Buffer.from(mapContents).toString('utf-8'),\n };\n },\n };\n}\n"],"mappings":";;;;;;;;;AAoBA,eAAsB,0BACpB,SAOC;CACD,MAAM,EAAE,kBAAkB,MAAO,SAC/B,0BACD,EAAE;CACH,MAAM,EAAE,aAAa,aAAa;CAClC,IAAI;CACJ,IAAI;CACJ,MAAM,gBAAgB,SAAS,iBAAiB,QAAQ,KAAK;AAE7D,QAAO;EACL,MAAM;EAEN,SAAS;EACT,OAAO,YAAiB;AACtB,YAAS;AACT,iBAAc,QAAQ,eAAe,OAAO,QAAQ,IAAI;;EAE1D,MAAM,UAAU,QAAgB,UAAkB;AAEhD,OAAI,UAAU,SAAS,OAAO,CAG5B,QAAO;AAGT,OAAI;QAEA,OAAO,OAAO,OACd,cAAc,SAAS,CAAC,WAAW,YAAY,EAC/C;KAEA,MAAM,CAAC,gBAAgB,SAAS,MAAM,KAAK,EAAE;AAC7C,cACE,MAAM,KAAK,QAAQ,SAAS,aAAa,aAAa,CAAC,EAAE,OAAO;;;GAItE,MAAM,CAAC,QAAQ,OAAO,MAAM,KAAK,EAAE;GACnC,MAAM,aAAa,KAAK,MAAM,IAAI;AAElC,OAAI,YAAY,IAAI,WAAW,WAAW,SAAS,GAAG,CACpD,QAAO,WAAW,WAAW,SAAS;AAGxC,OAAI,YAAY,IAAI,KAAK,CACvB,QAAO,KAAK,aAAa,OAAO;;EAIpC,KAAK,IAAY;GACf,MAAM,CAAC,QAAQ,GAAG,MAAM,KAAK,EAAE;GAC/B,MAAM,eACJ,QAAQ,iBAAiB,KACrB,cAAc,SAAS,aAAa,KAAK,CAAC,CACvC,QAAQ,SAAS,GAAG,CACpB,QAAQ,OAAO,MAAM,GACxB,UACA,cAAc,SAAS,aAAa,KAAK,CAAC,CACvC,QAAQ,OAAO,MAAM,CACrB,QAAQ,UAAU,IAAI,CACtB,QAAQ,OAAO,IAAI;GAE5B,MAAM,eACJ,YAAY,IAAI,aAAa,EAAE,YAC/B,YAAY,IAAI,GAAG,EAAE;AACvB,OAAI,iBAAiB,KAAA,EACnB;GAGF,MAAM,OAAO,OAAO,KAAK,aAAa,CAAC,SAAS,QAAQ;GACxD,MAAM,cAAc,YAAY,IAAI,eAAe,OAAO,EAAE;AAE5D,UAAO;IAGL,MAAM,cACF,KAAK,QAAQ,sCAAsC,GAAG,GACtD;IACJ,KAAK,eAAe,OAAO,KAAK,YAAY,CAAC,SAAS,QAAQ;IAC/D;;EAEJ"}
@@ -1,23 +1,24 @@
1
- import { transformSync } from 'oxc-transform';
2
- export function downlevelPlugin() {
3
- return {
4
- name: 'analogjs-vitest-oxc-downlevel-plugin',
5
- transform(_code, id) {
6
- if (_code.includes('async (')) {
7
- const { code, map } = transformSync(id, _code, {
8
- lang: 'js',
9
- target: 'es2016',
10
- sourcemap: true,
11
- });
12
- return {
13
- code,
14
- map,
15
- };
16
- }
17
- return undefined;
18
- },
19
- };
1
+ import { transformSync } from "oxc-transform";
2
+ //#region packages/vitest-angular/src/lib/builders/build/plugins/downlevel-plugin.ts
3
+ function downlevelPlugin() {
4
+ return {
5
+ name: "analogjs-vitest-oxc-downlevel-plugin",
6
+ transform(_code, id) {
7
+ if (_code.includes("async (")) {
8
+ const { code, map } = transformSync(id, _code, {
9
+ lang: "js",
10
+ target: "es2016",
11
+ sourcemap: true
12
+ });
13
+ return {
14
+ code,
15
+ map
16
+ };
17
+ }
18
+ }
19
+ };
20
20
  }
21
- /** @deprecated Use {@link downlevelPlugin} instead. */
22
- export const esbuildDownlevelPlugin = downlevelPlugin;
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxldmVsLXBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ZpdGVzdC1hbmd1bGFyL3NyYy9saWIvYnVpbGRlcnMvYnVpbGQvcGx1Z2lucy9kb3dubGV2ZWwtcGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBa0IsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlELE1BQU0sVUFBVSxlQUFlO0lBTzdCLE9BQU87UUFDTCxJQUFJLEVBQUUsc0NBQXNDO1FBQzVDLFNBQVMsQ0FDUCxLQUFhLEVBQ2IsRUFBVTtZQUVWLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUM5QixNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLGFBQWEsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFO29CQUM3QyxJQUFJLEVBQUUsSUFBSTtvQkFDVixNQUFNLEVBQUUsUUFBUTtvQkFDaEIsU0FBUyxFQUFFLElBQUk7aUJBQ2hCLENBQUMsQ0FBQztnQkFFSCxPQUFPO29CQUNMLElBQUk7b0JBQ0osR0FBRztpQkFDSixDQUFDO1lBQ0osQ0FBQztZQUVELE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQztBQUVELHVEQUF1RDtBQUN2RCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBMkIsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBTb3VyY2VNYXAsIHRyYW5zZm9ybVN5bmMgfSBmcm9tICdveGMtdHJhbnNmb3JtJztcblxuZXhwb3J0IGZ1bmN0aW9uIGRvd25sZXZlbFBsdWdpbigpOiB7XG4gIG5hbWU6IHN0cmluZztcbiAgdHJhbnNmb3JtKFxuICAgIF9jb2RlOiBzdHJpbmcsXG4gICAgaWQ6IHN0cmluZyxcbiAgKTogeyBjb2RlOiBzdHJpbmc7IG1hcDogU291cmNlTWFwIHwgdW5kZWZpbmVkIH0gfCB1bmRlZmluZWQ7XG59IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnYW5hbG9nanMtdml0ZXN0LW94Yy1kb3dubGV2ZWwtcGx1Z2luJyxcbiAgICB0cmFuc2Zvcm0oXG4gICAgICBfY29kZTogc3RyaW5nLFxuICAgICAgaWQ6IHN0cmluZyxcbiAgICApOiB7IGNvZGU6IHN0cmluZzsgbWFwOiBTb3VyY2VNYXAgfCB1bmRlZmluZWQgfSB8IHVuZGVmaW5lZCB7XG4gICAgICBpZiAoX2NvZGUuaW5jbHVkZXMoJ2FzeW5jICgnKSkge1xuICAgICAgICBjb25zdCB7IGNvZGUsIG1hcCB9ID0gdHJhbnNmb3JtU3luYyhpZCwgX2NvZGUsIHtcbiAgICAgICAgICBsYW5nOiAnanMnLFxuICAgICAgICAgIHRhcmdldDogJ2VzMjAxNicsXG4gICAgICAgICAgc291cmNlbWFwOiB0cnVlLFxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGNvZGUsXG4gICAgICAgICAgbWFwLFxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0sXG4gIH07XG59XG5cbi8qKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIGRvd25sZXZlbFBsdWdpbn0gaW5zdGVhZC4gKi9cbmV4cG9ydCBjb25zdCBlc2J1aWxkRG93bmxldmVsUGx1Z2luOiB0eXBlb2YgZG93bmxldmVsUGx1Z2luID0gZG93bmxldmVsUGx1Z2luO1xuIl19
21
+ //#endregion
22
+ export { downlevelPlugin };
23
+
24
+ //# sourceMappingURL=downlevel-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"downlevel-plugin.js","names":[],"sources":["../../../../../../../../packages/vitest-angular/src/lib/builders/build/plugins/downlevel-plugin.ts"],"sourcesContent":["import { type SourceMap, transformSync } from 'oxc-transform';\n\nexport function downlevelPlugin(): {\n name: string;\n transform(\n _code: string,\n id: string,\n ): { code: string; map: SourceMap | undefined } | undefined;\n} {\n return {\n name: 'analogjs-vitest-oxc-downlevel-plugin',\n transform(\n _code: string,\n id: string,\n ): { code: string; map: SourceMap | undefined } | undefined {\n if (_code.includes('async (')) {\n const { code, map } = transformSync(id, _code, {\n lang: 'js',\n target: 'es2016',\n sourcemap: true,\n });\n\n return {\n code,\n map,\n };\n }\n\n return undefined;\n },\n };\n}\n\n/** @deprecated Use {@link downlevelPlugin} instead. */\nexport const esbuildDownlevelPlugin: typeof downlevelPlugin = downlevelPlugin;\n"],"mappings":";;AAEA,SAAgB,kBAMd;AACA,QAAO;EACL,MAAM;EACN,UACE,OACA,IAC0D;AAC1D,OAAI,MAAM,SAAS,UAAU,EAAE;IAC7B,MAAM,EAAE,MAAM,QAAQ,cAAc,IAAI,OAAO;KAC7C,MAAM;KACN,QAAQ;KACR,WAAW;KACZ,CAAC;AAEF,WAAO;KACL;KACA;KACD;;;EAKN"}
@@ -0,0 +1,53 @@
1
+ var schema_default = {
2
+ $schema: "http://json-schema.org/draft-07/schema",
3
+ title: "Vitest schema for Test Facade.",
4
+ description: "Vitest target options",
5
+ type: "object",
6
+ properties: {
7
+ "configFile": {
8
+ "type": "string",
9
+ "description": "The path to the local vitest config",
10
+ "x-completion-type": "file",
11
+ "x-completion-glob": "@vitest.config@(.js|.ts|.mts)",
12
+ "aliases": ["config"]
13
+ },
14
+ "include": {
15
+ "type": "array",
16
+ "items": { "type": "string" },
17
+ "default": ["src/**/*.spec.ts"],
18
+ "description": "Globs of files to include, relative to project root."
19
+ },
20
+ "exclude": {
21
+ "type": "array",
22
+ "items": { "type": "string" },
23
+ "default": [
24
+ "node_modules",
25
+ "dist",
26
+ ".idea",
27
+ ".git",
28
+ ".cache"
29
+ ],
30
+ "description": "Globs of files to exclude, relative to the project root."
31
+ },
32
+ "setupFile": {
33
+ "type": "string",
34
+ "description": "The path to the setup file.",
35
+ "default": "src/test-setup.ts"
36
+ },
37
+ "tsConfig": {
38
+ "type": "string",
39
+ "description": "The relative path to the TypeScript configuration file for running tests.",
40
+ "default": "tsconfig.spec.json"
41
+ },
42
+ "watch": {
43
+ "type": "boolean",
44
+ "default": false,
45
+ "description": "Run the tests in watch mode"
46
+ }
47
+ },
48
+ additionalProperties: true
49
+ };
50
+ //#endregion
51
+ export { schema_default as default };
52
+
53
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","names":[],"sources":["../../../../../../../packages/vitest-angular/src/lib/builders/build/schema.json"],"sourcesContent":["{\n \"$schema\": \"http://json-schema.org/draft-07/schema\",\n \"title\": \"Vitest schema for Test Facade.\",\n \"description\": \"Vitest target options\",\n \"type\": \"object\",\n \"properties\": {\n \"configFile\": {\n \"type\": \"string\",\n \"description\": \"The path to the local vitest config\",\n \"x-completion-type\": \"file\",\n \"x-completion-glob\": \"@vitest.config@(.js|.ts|.mts)\",\n \"aliases\": [\"config\"]\n },\n \"include\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n \"default\": [\"src/**/*.spec.ts\"],\n \"description\": \"Globs of files to include, relative to project root.\"\n },\n \"exclude\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n \"default\": [\"node_modules\", \"dist\", \".idea\", \".git\", \".cache\"],\n \"description\": \"Globs of files to exclude, relative to the project root.\"\n },\n \"setupFile\": {\n \"type\": \"string\",\n \"description\": \"The path to the setup file.\",\n \"default\": \"src/test-setup.ts\"\n },\n \"tsConfig\": {\n \"type\": \"string\",\n \"description\": \"The relative path to the TypeScript configuration file for running tests.\",\n \"default\": \"tsconfig.spec.json\"\n },\n \"watch\": {\n \"type\": \"boolean\",\n \"default\": false,\n \"description\": \"Run the tests in watch mode\"\n }\n },\n \"additionalProperties\": true\n}\n"],"mappings":""}