@adddog/vite 0.0.1

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.
package/README.md ADDED
@@ -0,0 +1,13 @@
1
+ # Vite
2
+
3
+ ## Scripts
4
+
5
+ | Script | Description |
6
+ |--------|-------------|
7
+ | `build` | `unbuild` |
8
+ | `lint` | `eslint .` |
9
+ | `lint:fix` | `eslint --fix .` |
10
+ | `types` | `tsc -p tsconfig.typecheck.json` |
11
+
12
+
13
+ TODO - Document this package
@@ -0,0 +1,8 @@
1
+ import { UserConfig, UserConfigExport } from 'vite';
2
+
3
+ /**
4
+ * Define vite.config to be used for "apps"
5
+ */
6
+ declare function defineAppConfig(configOverrides?: UserConfig): UserConfigExport;
7
+
8
+ export { defineAppConfig };
@@ -0,0 +1,8 @@
1
+ import { UserConfig, UserConfigExport } from 'vite';
2
+
3
+ /**
4
+ * Define vite.config to be used for "apps"
5
+ */
6
+ declare function defineAppConfig(configOverrides?: UserConfig): UserConfigExport;
7
+
8
+ export { defineAppConfig };
@@ -0,0 +1,44 @@
1
+ import { cpus } from 'node:os';
2
+ import process from 'node:process';
3
+ import { defineConfig, mergeConfig } from 'vite';
4
+ import { c as createBaseConfig } from './shared/vite.Cfj55vIW.mjs';
5
+ import '@esbuild-plugins/node-modules-polyfill';
6
+
7
+ function defineAppConfig(configOverrides = {}) {
8
+ const port = configOverrides.server?.port;
9
+ const host = configOverrides.server?.host;
10
+ return defineConfig((configEnv) => {
11
+ const baseConfig = createBaseConfig();
12
+ const plugins = [];
13
+ const appConfig = mergeConfig(baseConfig(configEnv), {
14
+ plugins,
15
+ logLevel: "info",
16
+ server: {
17
+ ...port !== void 0 && { port },
18
+ host: host || "localhost",
19
+ hmr: { overlay: false }
20
+ },
21
+ preview: {
22
+ ...port !== void 0 && { port }
23
+ },
24
+ build: {
25
+ rollupOptions: {
26
+ ...process.env.CI && { cache: false },
27
+ // Based on https://github.com/vitejs/vite/issues/2433#issuecomment-1422127051
28
+ // helps reduce memory usage in CI which was OOM-ing (default value is 20)
29
+ maxParallelFileOps: Math.max(1, cpus().length - 1),
30
+ output: {
31
+ // https://rollupjs.org/guide/en/#outputmanualchunks
32
+ manualChunks: {}
33
+ }
34
+ }
35
+ }
36
+ });
37
+ const resolvedConfig = mergeConfig(appConfig, configOverrides);
38
+ console.dir(resolvedConfig, { depth: 9 });
39
+ return resolvedConfig;
40
+ });
41
+ }
42
+
43
+ export { defineAppConfig };
44
+ //# sourceMappingURL=app.config.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.config.mjs","sources":["../src/app.config.ts"],"sourcesContent":["import type { PluginOption, UserConfig, UserConfigExport } from \"vite\";\nimport { cpus } from \"node:os\";\nimport process from \"node:process\";\nimport { defineConfig, mergeConfig } from \"vite\";\n\nimport { createBaseConfig } from \"./base.config\";\n\n/**\n * Define vite.config to be used for \"apps\"\n */\n\nexport function defineAppConfig(\n configOverrides: UserConfig = {},\n): UserConfigExport {\n const port = configOverrides.server?.port;\n const host = configOverrides.server?.host;\n // when invoked on root, there are no dependencies and thus need to ensure it exists\n\n return defineConfig(configEnv => {\n const baseConfig = createBaseConfig();\n const plugins = [] as PluginOption[];\n const appConfig = mergeConfig(baseConfig(configEnv), {\n plugins,\n logLevel: \"info\",\n server: {\n ...(port !== undefined && { port }),\n host: host || \"localhost\",\n hmr: { overlay: false },\n },\n preview: {\n ...(port !== undefined && { port }),\n },\n build: {\n rollupOptions: {\n ...(process.env.CI && { cache: false }),\n // Based on https://github.com/vitejs/vite/issues/2433#issuecomment-1422127051\n // helps reduce memory usage in CI which was OOM-ing (default value is 20)\n maxParallelFileOps: Math.max(1, cpus().length - 1),\n output: {\n // https://rollupjs.org/guide/en/#outputmanualchunks\n manualChunks: {},\n },\n },\n },\n } satisfies UserConfig);\n const resolvedConfig = mergeConfig(appConfig, configOverrides);\n\n console.dir(resolvedConfig, { depth: 9 });\n return resolvedConfig;\n });\n}\n"],"names":[],"mappings":";;;;;;AAWO,SAAS,eAAA,CACZ,eAAA,GAA8B,EAAC,EACf;AAChB,EAAA,MAAM,IAAA,GAAO,gBAAgB,MAAA,EAAQ,IAAA;AACrC,EAAA,MAAM,IAAA,GAAO,gBAAgB,MAAA,EAAQ,IAAA;AAGrC,EAAA,OAAO,aAAa,CAAA,SAAA,KAAa;AAC7B,IAAA,MAAM,aAAa,gBAAA,EAAiB;AACpC,IAAA,MAAM,UAAU,EAAC;AACjB,IAAA,MAAM,SAAA,GAAY,WAAA,CAAY,UAAA,CAAW,SAAS,CAAA,EAAG;AAAA,MACjD,OAAA;AAAA,MACA,QAAA,EAAU,MAAA;AAAA,MACV,MAAA,EAAQ;AAAA,QACJ,GAAI,IAAA,KAAS,MAAA,IAAa,EAAE,IAAA,EAAK;AAAA,QACjC,MAAM,IAAA,IAAQ,WAAA;AAAA,QACd,GAAA,EAAK,EAAE,OAAA,EAAS,KAAA;AAAM,OAC1B;AAAA,MACA,OAAA,EAAS;AAAA,QACL,GAAI,IAAA,KAAS,MAAA,IAAa,EAAE,IAAA;AAAK,OACrC;AAAA,MACA,KAAA,EAAO;AAAA,QACH,aAAA,EAAe;AAAA,UACX,GAAI,OAAA,CAAQ,GAAA,CAAI,EAAA,IAAM,EAAE,OAAO,KAAA,EAAM;AAAA;AAAA;AAAA,UAGrC,oBAAoB,IAAA,CAAK,GAAA,CAAI,GAAG,IAAA,EAAK,CAAE,SAAS,CAAC,CAAA;AAAA,UACjD,MAAA,EAAQ;AAAA;AAAA,YAEJ,cAAc;AAAC;AACnB;AACJ;AACJ,KACkB,CAAA;AACtB,IAAA,MAAM,cAAA,GAAiB,WAAA,CAAY,SAAA,EAAW,eAAe,CAAA;AAE7D,IAAA,OAAA,CAAQ,GAAA,CAAI,cAAA,EAAgB,EAAE,KAAA,EAAO,GAAG,CAAA;AACxC,IAAA,OAAO,cAAA;AAAA,EACX,CAAC,CAAA;AACL;;;;"}
@@ -0,0 +1,4 @@
1
+ export { default as defineTestConfig } from './test.config.mjs';
2
+ export { defineAppConfig } from './app.config.mjs';
3
+ import 'vitest/config';
4
+ import 'vite';
@@ -0,0 +1,4 @@
1
+ export { default as defineTestConfig } from './test.config.js';
2
+ export { defineAppConfig } from './app.config.js';
3
+ import 'vitest/config';
4
+ import 'vite';
package/dist/index.mjs ADDED
@@ -0,0 +1,11 @@
1
+ export { default as defineTestConfig } from './test.config.mjs';
2
+ export { defineAppConfig } from './app.config.mjs';
3
+ import 'node:path';
4
+ import 'node:url';
5
+ import 'vitest/config';
6
+ import './shared/vite.Cfj55vIW.mjs';
7
+ import 'node:process';
8
+ import '@esbuild-plugins/node-modules-polyfill';
9
+ import 'vite';
10
+ import 'node:os';
11
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -0,0 +1,2 @@
1
+
2
+ export { };
@@ -0,0 +1,2 @@
1
+
2
+ export { };
@@ -0,0 +1,115 @@
1
+ import * as matchers from '@testing-library/jest-dom/matchers';
2
+ import { expect, vi } from 'vitest';
3
+ import '@testing-library/jest-dom/vitest';
4
+ import 'urlpattern-polyfill';
5
+ import 'vitest-canvas-mock';
6
+
7
+ expect.extend(matchers);
8
+ vi.useFakeTimers();
9
+ Object.assign(import.meta.env, {
10
+ PROD: true,
11
+ DEV: false,
12
+ VITE_BASE_URL: "/"
13
+ });
14
+ Object.assign(globalThis, {
15
+ fetch: () => {
16
+ throw new Error("Cannot use fetch in tests!");
17
+ },
18
+ HTMLDocument: globalThis.Document,
19
+ reportError: () => {
20
+ },
21
+ TextEncoder,
22
+ TextDecoder,
23
+ Headers: class Headers {
24
+ get = vi.fn();
25
+ append = vi.fn();
26
+ },
27
+ AudioContext: class AudioContext {
28
+ close = () => {
29
+ };
30
+ createMediaElementSource = () => {
31
+ };
32
+ createMediaStreamSource = () => {
33
+ };
34
+ createMediaStreamDestination = () => {
35
+ };
36
+ createMediaStreamTrackSource = () => {
37
+ };
38
+ getOutputTimestamp = () => {
39
+ };
40
+ resume = () => {
41
+ };
42
+ suspend = () => {
43
+ };
44
+ },
45
+ ImageData: class ImageData {
46
+ data;
47
+ width;
48
+ height;
49
+ constructor(width, height) {
50
+ this.width = width;
51
+ this.height = height;
52
+ this.data = new Uint8ClampedArray(width * height * 4);
53
+ }
54
+ }
55
+ });
56
+ Object.defineProperty(window, "matchMedia", {
57
+ writable: true,
58
+ value: (_query) => ({
59
+ addEventListener: vi.fn(),
60
+ addListener: vi.fn(),
61
+ dispatchEvent: vi.fn(),
62
+ matches: false,
63
+ // media: query,
64
+ onchange: null,
65
+ removeEventListener: vi.fn(),
66
+ removeListener: vi.fn()
67
+ })
68
+ });
69
+ Object.assign(globalThis.EventTarget.prototype, {
70
+ setPointerCapture: () => {
71
+ },
72
+ releasePointerCapture: () => {
73
+ }
74
+ });
75
+ Object.assign(globalThis.URL, {
76
+ createObjectURL: () => void 0
77
+ });
78
+ function xhrMockClass() {
79
+ return {
80
+ open: vi.fn(),
81
+ send: () => {
82
+ throw new Error(
83
+ "XMLHttpRequest network calls are not allowed in unit tests"
84
+ );
85
+ },
86
+ setRequestHeader: vi.fn()
87
+ };
88
+ }
89
+ Object.assign(window, {
90
+ XMLHttpRequest: vi.fn().mockImplementation(xhrMockClass),
91
+ requestIdleCallback: (cb) => setTimeout(cb, 0)
92
+ });
93
+ Object.defineProperty(window, "location", {
94
+ value: new URL("https://localhost:3000/tests"),
95
+ configurable: true
96
+ });
97
+ globalThis.location.assign = vi.fn();
98
+ vi.stubGlobal(
99
+ "ResizeObserver",
100
+ vi.fn(() => ({
101
+ observe: vi.fn(),
102
+ unobserve: vi.fn(),
103
+ disconnect: vi.fn()
104
+ }))
105
+ );
106
+ vi.stubGlobal(
107
+ "BroadcastChannel",
108
+ vi.fn(() => ({
109
+ onmessage: vi.fn(),
110
+ postMessage: vi.fn(),
111
+ addEventListener: vi.fn(),
112
+ removeEventListener: vi.fn()
113
+ }))
114
+ );
115
+ //# sourceMappingURL=setup-vitest.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-vitest.mjs","sources":["../src/setup-vitest.ts"],"sourcesContent":["/// <reference types=\"vite/client\" />\n\nimport * as matchers from \"@testing-library/jest-dom/matchers\";\nimport { expect, vi } from \"vitest\";\nimport \"@testing-library/jest-dom/vitest\";\n\nimport \"urlpattern-polyfill\";\nimport \"vitest-canvas-mock\";\n\nexpect.extend(matchers);\n\n/**\n * This is the only place in the codebase where it's allowed since here we are\n * enabling it for all tests.\n *\n * All tests use fake timers. To advance time you can use any of the built in\n * utilities in vitest (e.g. advanceTimersByTime, runAllTimers,\n * advanceTimersToNextTimer, etc) or the \"advanceTimers\" method from\n * /test/utils.tsx\n */\nvi.useFakeTimers();\n\n/**\n * Import meta defaults\n */\nObject.assign(import.meta.env, {\n PROD: true,\n DEV: false,\n VITE_BASE_URL: \"/\",\n});\n\nObject.assign(globalThis, {\n fetch: () => {\n throw new Error(\"Cannot use fetch in tests!\");\n },\n HTMLDocument: globalThis.Document,\n reportError: () => {},\n TextEncoder,\n TextDecoder,\n Headers: class Headers {\n get = vi.fn();\n append = vi.fn();\n },\n AudioContext: class AudioContext {\n close = () => {};\n createMediaElementSource = () => {};\n createMediaStreamSource = () => {};\n createMediaStreamDestination = () => {};\n createMediaStreamTrackSource = () => {};\n getOutputTimestamp = () => {};\n resume = () => {};\n suspend = () => {};\n },\n ImageData: class ImageData {\n data: Uint8ClampedArray;\n width: number;\n height: number;\n constructor(width: number, height: number) {\n this.width = width;\n this.height = height;\n this.data = new Uint8ClampedArray(width * height * 4);\n }\n },\n});\n\nObject.defineProperty(window, \"matchMedia\", {\n writable: true,\n value: (_query: unknown) => ({\n addEventListener: vi.fn(),\n addListener: vi.fn(),\n dispatchEvent: vi.fn(),\n matches: false,\n // media: query,\n onchange: null,\n removeEventListener: vi.fn(),\n removeListener: vi.fn(),\n }),\n});\n\n// Pointer Capture not yet implemented in jsdom\n// https://github.com/jsdom/jsdom/pull/2666\nObject.assign(globalThis.EventTarget.prototype, {\n setPointerCapture: () => {},\n releasePointerCapture: () => {},\n});\n\nObject.assign(globalThis.URL, {\n createObjectURL: () => undefined,\n});\n\nfunction xhrMockClass() {\n return {\n open: vi.fn(),\n send: () => {\n throw new Error(\n \"XMLHttpRequest network calls are not allowed in unit tests\",\n );\n },\n setRequestHeader: vi.fn(),\n };\n}\n\nObject.assign(window, {\n XMLHttpRequest: vi.fn().mockImplementation(xhrMockClass),\n requestIdleCallback: (cb: Function) => setTimeout(cb, 0),\n});\n\n// Allow re-assigning window.location properties in tests\nObject.defineProperty(window, \"location\", {\n value: new URL(\"https://localhost:3000/tests\"),\n configurable: true,\n});\n\nglobalThis.location.assign = vi.fn();\n\nvi.stubGlobal(\n \"ResizeObserver\",\n vi.fn(() => ({\n observe: vi.fn(),\n unobserve: vi.fn(),\n disconnect: vi.fn(),\n })),\n);\nvi.stubGlobal(\n \"BroadcastChannel\",\n vi.fn(() => ({\n onmessage: vi.fn(),\n postMessage: vi.fn(),\n addEventListener: vi.fn(),\n removeEventListener: vi.fn(),\n })),\n);\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import process from 'node:process';
2
+ import { NodeModulesPolyfillPlugin } from '@esbuild-plugins/node-modules-polyfill';
3
+ import { defineConfig } from 'vite';
4
+
5
+ function createBaseConfig() {
6
+ return defineConfig(() => {
7
+ return {
8
+ // A dependency might check for properties on process.env
9
+ // If an env var is required for a dependency, add it here.
10
+ define: {
11
+ "process.env.NODE_DEBUG": process.env.NODE_DEBUG
12
+ },
13
+ optimizeDeps: {
14
+ esbuildOptions: {
15
+ plugins: [NodeModulesPolyfillPlugin()]
16
+ }
17
+ },
18
+ build: {
19
+ sourcemap: false
20
+ },
21
+ worker: { format: "es" },
22
+ server: {
23
+ fs: {
24
+ // When needing to load a module for development outside of
25
+ // the root.
26
+ strict: false
27
+ }
28
+ },
29
+ css: {
30
+ preprocessorOptions: {
31
+ scss: {
32
+ /**
33
+ * Dart v2 will introduce a breaking change on the maths
34
+ * This quiets the deprecation warnings for now. b/c blueprintjs of course :facepalm:
35
+ * See for more details:
36
+ * Docs - https://sass-lang.com/documentation/breaking-changes/slash-div
37
+ * GH - https://github.com/sass/sass/issues/3065
38
+ */
39
+ quietDeps: true
40
+ }
41
+ }
42
+ }
43
+ };
44
+ });
45
+ }
46
+
47
+ export { createBaseConfig as c };
48
+ //# sourceMappingURL=vite.Cfj55vIW.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.Cfj55vIW.mjs","sources":["../../src/base.config.ts"],"sourcesContent":["import type { UserConfig } from \"vite\";\nimport process from \"node:process\";\n\nimport { NodeModulesPolyfillPlugin } from \"@esbuild-plugins/node-modules-polyfill\";\nimport { defineConfig } from \"vite\";\n\nexport function createBaseConfig() {\n return defineConfig(() => {\n // May want to disable source maps for testing local dev builds\n return {\n // A dependency might check for properties on process.env\n // If an env var is required for a dependency, add it here.\n define: {\n \"process.env.NODE_DEBUG\": process.env.NODE_DEBUG,\n },\n optimizeDeps: {\n esbuildOptions: {\n plugins: [NodeModulesPolyfillPlugin()],\n },\n },\n build: {\n sourcemap: false,\n },\n\n worker: { format: \"es\" },\n server: {\n fs: {\n // When needing to load a module for development outside of\n // the root.\n strict: false,\n },\n },\n css: {\n preprocessorOptions: {\n scss: {\n /**\n * Dart v2 will introduce a breaking change on the maths\n * This quiets the deprecation warnings for now. b/c blueprintjs of course :facepalm:\n * See for more details:\n * Docs - https://sass-lang.com/documentation/breaking-changes/slash-div\n * GH - https://github.com/sass/sass/issues/3065\n */\n quietDeps: true,\n },\n },\n },\n } as UserConfig;\n });\n}\n"],"names":[],"mappings":";;;;AAMO,SAAS,gBAAA,GAAmB;AAC/B,EAAA,OAAO,aAAa,MAAM;AAEtB,IAAA,OAAO;AAAA;AAAA;AAAA,MAGH,MAAA,EAAQ;AAAA,QACJ,wBAAA,EAA0B,QAAQ,GAAA,CAAI;AAAA,OAC1C;AAAA,MACA,YAAA,EAAc;AAAA,QACV,cAAA,EAAgB;AAAA,UACZ,OAAA,EAAS,CAAC,yBAAA,EAA2B;AAAA;AACzC,OACJ;AAAA,MACA,KAAA,EAAO;AAAA,QACH,SAAA,EAAW;AAAA,OACf;AAAA,MAEA,MAAA,EAAQ,EAAE,MAAA,EAAQ,IAAA,EAAK;AAAA,MACvB,MAAA,EAAQ;AAAA,QACJ,EAAA,EAAI;AAAA;AAAA;AAAA,UAGA,MAAA,EAAQ;AAAA;AACZ,OACJ;AAAA,MACA,GAAA,EAAK;AAAA,QACD,mBAAA,EAAqB;AAAA,UACjB,IAAA,EAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAQF,SAAA,EAAW;AAAA;AACf;AACJ;AACJ,KACJ;AAAA,EACJ,CAAC,CAAA;AACL;;;;"}
@@ -0,0 +1,9 @@
1
+ import * as vitest_config from 'vitest/config';
2
+
3
+ /**
4
+ * Vitest config
5
+ * Only relies on the base config
6
+ */
7
+ declare const _default: vitest_config.ViteUserConfigFnObject;
8
+
9
+ export { _default as default };
@@ -0,0 +1,9 @@
1
+ import * as vitest_config from 'vitest/config';
2
+
3
+ /**
4
+ * Vitest config
5
+ * Only relies on the base config
6
+ */
7
+ declare const _default: vitest_config.ViteUserConfigFnObject;
8
+
9
+ export { _default as default };
@@ -0,0 +1,55 @@
1
+ import { join } from 'node:path';
2
+ import { fileURLToPath } from 'node:url';
3
+ import { defineConfig, mergeConfig } from 'vitest/config';
4
+ import { c as createBaseConfig } from './shared/vite.Cfj55vIW.mjs';
5
+ import 'node:process';
6
+ import '@esbuild-plugins/node-modules-polyfill';
7
+ import 'vite';
8
+
9
+ const __dirname$1 = fileURLToPath(new URL(".", import.meta.url));
10
+ function getSetupFiles() {
11
+ const result = [join(__dirname$1, "./setup-vitest.mjs")];
12
+ return result;
13
+ }
14
+ const test_config = defineConfig((configEnv) => {
15
+ const baseConfig = createBaseConfig();
16
+ return mergeConfig({
17
+ resolve: {
18
+ // https://vitejs.dev/config/shared-options.html#resolve-conditions
19
+ // This tells vitest to look for the entrypoint here. Allows pkg to publish the correct fields.
20
+ conditions: ["vite"]
21
+ },
22
+ test: {
23
+ alias: [],
24
+ css: false,
25
+ reporters: ["verbose"],
26
+ watch: false,
27
+ cache: false,
28
+ coverage: { reportsDirectory: "public/coverage", reporter: ["html"] },
29
+ clearMocks: true,
30
+ restoreMocks: true,
31
+ mockReset: true,
32
+ passWithNoTests: true,
33
+ forceRerunTriggers: ["apps/**/*", "packages/**/*"],
34
+ isolate: true,
35
+ outputTruncateLength: 600,
36
+ outputDiffLines: 400,
37
+ globals: true,
38
+ setupFiles: getSetupFiles(),
39
+ include: ["{apps,packages}/**/*.test.{js,ts,tsx}"],
40
+ exclude: [
41
+ "**/node_modules/**",
42
+ "**/dist/**",
43
+ "**/e2e/**",
44
+ "**/cypress/**",
45
+ "**/.{idea,git,output,temp}/**",
46
+ "**/build/**",
47
+ "**/public/**"
48
+ ],
49
+ environment: "jsdom"
50
+ }
51
+ }, baseConfig(configEnv));
52
+ });
53
+
54
+ export { test_config as default };
55
+ //# sourceMappingURL=test.config.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.config.mjs","sources":["../src/test.config.ts"],"sourcesContent":["import { join } from \"node:path\";\nimport { fileURLToPath } from \"node:url\";\nimport { defineConfig, mergeConfig } from \"vitest/config\";\n\nimport { createBaseConfig } from \"./base.config\";\n\nconst __dirname = fileURLToPath(new URL(\".\", import.meta.url));\n\nfunction getSetupFiles(): string[] {\n const result = [join(__dirname, \"./setup-vitest.mjs\")];\n return result;\n}\n\n/**\n * Vitest config\n * Only relies on the base config\n */\nexport default defineConfig(configEnv => {\n const baseConfig = createBaseConfig();\n return mergeConfig({\n resolve: {\n // https://vitejs.dev/config/shared-options.html#resolve-conditions\n // This tells vitest to look for the entrypoint here. Allows pkg to publish the correct fields.\n conditions: [\"vite\"],\n },\n test: {\n alias: [],\n css: false,\n reporters: [\"verbose\"],\n watch: false,\n cache: false,\n coverage: { reportsDirectory: \"public/coverage\", reporter: [\"html\"] },\n clearMocks: true,\n restoreMocks: true,\n mockReset: true,\n passWithNoTests: true,\n forceRerunTriggers: [\"apps/**/*\", \"packages/**/*\"],\n isolate: true,\n outputTruncateLength: 600,\n outputDiffLines: 400,\n globals: true,\n setupFiles: getSetupFiles(),\n include: [\"{apps,packages}/**/*.test.{js,ts,tsx}\"],\n exclude: [\n \"**/node_modules/**\",\n \"**/dist/**\",\n \"**/e2e/**\",\n \"**/cypress/**\",\n \"**/.{idea,git,output,temp}/**\",\n \"**/build/**\",\n \"**/public/**\",\n ],\n environment: \"jsdom\",\n },\n }, baseConfig(configEnv));\n});\n"],"names":["__dirname"],"mappings":";;;;;;;;AAMA,MAAMA,cAAY,aAAA,CAAc,IAAI,IAAI,GAAA,EAAK,MAAA,CAAA,IAAA,CAAY,GAAG,CAAC,CAAA;AAE7D,SAAS,aAAA,GAA0B;AAC/B,EAAA,MAAM,MAAA,GAAS,CAAC,IAAA,CAAKA,WAAA,EAAW,oBAAoB,CAAC,CAAA;AACrD,EAAA,OAAO,MAAA;AACX;AAMA,oBAAe,aAAa,CAAA,SAAA,KAAa;AACrC,EAAA,MAAM,aAAa,gBAAA,EAAiB;AACpC,EAAA,OAAO,WAAA,CAAY;AAAA,IACf,OAAA,EAAS;AAAA;AAAA;AAAA,MAGL,UAAA,EAAY,CAAC,MAAM;AAAA,KACvB;AAAA,IACA,IAAA,EAAM;AAAA,MACF,OAAO,EAAC;AAAA,MACR,GAAA,EAAK,KAAA;AAAA,MACL,SAAA,EAAW,CAAC,SAAS,CAAA;AAAA,MACrB,KAAA,EAAO,KAAA;AAAA,MACP,KAAA,EAAO,KAAA;AAAA,MACP,UAAU,EAAE,gBAAA,EAAkB,mBAAmB,QAAA,EAAU,CAAC,MAAM,CAAA,EAAE;AAAA,MACpE,UAAA,EAAY,IAAA;AAAA,MACZ,YAAA,EAAc,IAAA;AAAA,MACd,SAAA,EAAW,IAAA;AAAA,MACX,eAAA,EAAiB,IAAA;AAAA,MACjB,kBAAA,EAAoB,CAAC,WAAA,EAAa,eAAe,CAAA;AAAA,MACjD,OAAA,EAAS,IAAA;AAAA,MACT,oBAAA,EAAsB,GAAA;AAAA,MACtB,eAAA,EAAiB,GAAA;AAAA,MACjB,OAAA,EAAS,IAAA;AAAA,MACT,YAAY,aAAA,EAAc;AAAA,MAC1B,OAAA,EAAS,CAAC,uCAAuC,CAAA;AAAA,MACjD,OAAA,EAAS;AAAA,QACL,oBAAA;AAAA,QACA,YAAA;AAAA,QACA,WAAA;AAAA,QACA,eAAA;AAAA,QACA,+BAAA;AAAA,QACA,aAAA;AAAA,QACA;AAAA,OACJ;AAAA,MACA,WAAA,EAAa;AAAA;AACjB,GACJ,EAAG,UAAA,CAAW,SAAS,CAAC,CAAA;AAC5B,CAAC,CAAA;;;;"}
package/package.json ADDED
@@ -0,0 +1,87 @@
1
+ {
2
+ "name": "@adddog/vite",
3
+ "version": "0.0.1",
4
+ "description": "",
5
+ "type": "module",
6
+ "homepage": "https://github.com/samelie/vite#readme",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/samelie/vite.git"
10
+ },
11
+ "bugs": {
12
+ "url": "https://github.com/samelie/vite/issues"
13
+ },
14
+ "exports": {
15
+ ".": {
16
+ "import": "./src/index.ts"
17
+ },
18
+ "./app.config": {
19
+ "import": "./src/app.config.ts"
20
+ },
21
+ "./test.config": {
22
+ "import": "./src/test.config.ts"
23
+ }
24
+ },
25
+ "main": "./src/index.ts",
26
+ "types": "./src/index.ts",
27
+ "files": [
28
+ "dist"
29
+ ],
30
+ "scripts": {
31
+ "build": "unbuild",
32
+ "lint": "eslint .",
33
+ "lint:fix": "eslint --fix .",
34
+ "types": "tsc -p tsconfig.typecheck.json",
35
+ "test": "echo '⚠️⚠️⚠️no test vitest --watch=false'",
36
+ "dev": "tsx src/index.ts",
37
+ "knip": "knip",
38
+ "release": "bumpp --yes --no-push --no-tag --release patch",
39
+ "prepublishOnly": "pnpm run lint && pnpm run types && pnpm run build",
40
+ "prepack": "pnpm run prepublishOnly",
41
+ "version:patch": "npm version patch --no-git-tag-version"
42
+ },
43
+ "dependencies": {
44
+ "@esbuild-plugins/node-modules-polyfill": "^0.2.2",
45
+ "@testing-library/jest-dom": "^6.9.1",
46
+ "@vitejs/plugin-vue": "^6.0.3",
47
+ "jsdom": "^28.1.0",
48
+ "urlpattern-polyfill": "^10.1.0",
49
+ "vite": "^7.3.1",
50
+ "vite-plugin-svgr": "^4.5.0",
51
+ "vitest": "^4.0.18",
52
+ "vitest-canvas-mock": "^1.1.3"
53
+ },
54
+ "devDependencies": {
55
+ "@adddog/build-configs": "workspace:*",
56
+ "@adddog/monorepo-consistency": "workspace:*",
57
+ "bumpp": "^10.4.1",
58
+ "eslint": "^10.0.0",
59
+ "typescript": "^5.9.3",
60
+ "unbuild": "^3.6.1"
61
+ },
62
+ "publishConfig": {
63
+ "access": "public",
64
+ "registry": "https://registry.npmjs.org/",
65
+ "exports": {
66
+ ".": {
67
+ "import": "./dist/index.mjs",
68
+ "types": "./dist/index.d.ts"
69
+ },
70
+ "./app.config": {
71
+ "import": "./dist/app.config.mjs",
72
+ "types": "./dist/app.config.d.ts"
73
+ },
74
+ "./test.config": {
75
+ "import": "./dist/test.config.mjs",
76
+ "types": "./dist/test.config.d.ts"
77
+ }
78
+ },
79
+ "main": "./dist/index.mjs",
80
+ "types": "./dist/index.d.ts"
81
+ },
82
+ "engines": {
83
+ "node": ">= 22",
84
+ "pnpm": ">= 10",
85
+ "npm": ">= 11"
86
+ }
87
+ }