@vezham/config 0.0.0-stage → 26.0.0-alpha.6

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 (173) hide show
  1. package/LICENSE +173 -0
  2. package/README.md +14 -2
  3. package/dist/index.d.ts +2 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +0 -0
  6. package/dist/lib/deploy/cli.d.ts +3 -0
  7. package/dist/lib/deploy/cli.d.ts.map +1 -0
  8. package/dist/lib/deploy/cli.js +12 -0
  9. package/dist/lib/deploy/firebase.d.ts +3 -0
  10. package/dist/lib/deploy/firebase.d.ts.map +1 -0
  11. package/dist/lib/deploy/firebase.js +106 -0
  12. package/dist/lib/deploy/index.d.ts +4 -0
  13. package/dist/lib/deploy/index.d.ts.map +1 -0
  14. package/dist/lib/deploy/index.js +42 -0
  15. package/dist/lib/deploy/paths.d.ts +3 -0
  16. package/dist/lib/deploy/paths.d.ts.map +1 -0
  17. package/dist/lib/deploy/paths.js +6 -0
  18. package/dist/lib/deploy/presets.d.ts +5 -0
  19. package/dist/lib/deploy/presets.d.ts.map +1 -0
  20. package/dist/lib/deploy/presets.js +10 -0
  21. package/dist/lib/deploy/types.d.ts +97 -0
  22. package/dist/lib/deploy/types.d.ts.map +1 -0
  23. package/dist/lib/deploy/vercel.d.ts +3 -0
  24. package/dist/lib/deploy/vercel.d.ts.map +1 -0
  25. package/dist/lib/deploy/vercel.js +47 -0
  26. package/dist/lib/framework.d.ts +3 -0
  27. package/dist/lib/framework.d.ts.map +1 -0
  28. package/dist/lib/framework.js +7 -0
  29. package/dist/lib/i18n.d.ts +6 -0
  30. package/dist/lib/i18n.d.ts.map +1 -0
  31. package/dist/lib/i18n.js +11 -0
  32. package/dist/lib/integrations/next/index.d.ts +4 -0
  33. package/dist/lib/integrations/next/index.d.ts.map +1 -0
  34. package/dist/lib/integrations/next/index.js +29 -0
  35. package/dist/lib/integrations/playwright/index.d.ts +11 -0
  36. package/dist/lib/integrations/playwright/index.d.ts.map +1 -0
  37. package/dist/lib/integrations/playwright/index.js +77 -0
  38. package/dist/lib/integrations/playwright/test.d.ts +5 -0
  39. package/dist/lib/integrations/playwright/test.d.ts.map +1 -0
  40. package/dist/lib/integrations/playwright/test.js +23 -0
  41. package/dist/lib/integrations/vite/index.d.ts +12 -0
  42. package/dist/lib/integrations/vite/index.d.ts.map +1 -0
  43. package/dist/lib/integrations/vite/index.js +34 -0
  44. package/dist/lib/integrations/vite-lib/base.d.ts +3 -0
  45. package/dist/lib/integrations/vite-lib/base.d.ts.map +1 -0
  46. package/dist/lib/integrations/vite-lib/base.js +31 -0
  47. package/dist/lib/integrations/vite-lib/index.d.ts +3 -0
  48. package/dist/lib/integrations/vite-lib/index.d.ts.map +1 -0
  49. package/dist/lib/integrations/vite-lib/index.js +42 -0
  50. package/dist/lib/integrations/vite-lib/react.d.ts +3 -0
  51. package/dist/lib/integrations/vite-lib/react.d.ts.map +1 -0
  52. package/dist/lib/integrations/vite-lib/react.js +10 -0
  53. package/dist/lib/integrations/vitest/framework.d.ts +4 -0
  54. package/dist/lib/integrations/vitest/framework.d.ts.map +1 -0
  55. package/dist/lib/integrations/vitest/framework.js +5 -0
  56. package/dist/lib/integrations/vitest/frameworks/docs-plugins.d.ts +3 -0
  57. package/dist/lib/integrations/vitest/frameworks/docs-plugins.d.ts.map +1 -0
  58. package/dist/lib/integrations/vitest/frameworks/docs-plugins.js +27 -0
  59. package/dist/lib/integrations/vitest/frameworks/docs.d.ts +3 -0
  60. package/dist/lib/integrations/vitest/frameworks/docs.d.ts.map +1 -0
  61. package/dist/lib/integrations/vitest/frameworks/docs.js +5 -0
  62. package/dist/lib/integrations/vitest/frameworks/next.d.ts +3 -0
  63. package/dist/lib/integrations/vitest/frameworks/next.d.ts.map +1 -0
  64. package/dist/lib/integrations/vitest/frameworks/next.js +5 -0
  65. package/dist/lib/integrations/vitest/frameworks/react.d.ts +3 -0
  66. package/dist/lib/integrations/vitest/frameworks/react.d.ts.map +1 -0
  67. package/dist/lib/integrations/vitest/frameworks/react.js +5 -0
  68. package/dist/lib/integrations/vitest/index.d.ts +4 -0
  69. package/dist/lib/integrations/vitest/index.d.ts.map +1 -0
  70. package/dist/lib/integrations/vitest/index.js +4 -0
  71. package/dist/lib/integrations/vitest/setup/next.d.ts +2 -0
  72. package/dist/lib/integrations/vitest/setup/next.d.ts.map +1 -0
  73. package/dist/lib/integrations/vitest/setup/next.js +11 -0
  74. package/dist/lib/integrations/vitest/setup/react.d.ts +2 -0
  75. package/dist/lib/integrations/vitest/setup/react.d.ts.map +1 -0
  76. package/dist/lib/integrations/vitest/setup/react.js +36 -0
  77. package/dist/lib/integrations/vitest/shared.d.ts +3 -0
  78. package/dist/lib/integrations/vitest/shared.d.ts.map +1 -0
  79. package/dist/lib/integrations/vitest/shared.js +24 -0
  80. package/dist/lib/metadata/cli.d.ts +3 -0
  81. package/dist/lib/metadata/cli.d.ts.map +1 -0
  82. package/dist/lib/metadata/cli.js +13 -0
  83. package/dist/lib/metadata/env.d.ts +9 -0
  84. package/dist/lib/metadata/env.d.ts.map +1 -0
  85. package/dist/lib/metadata/env.js +36 -0
  86. package/dist/lib/metadata/html.d.ts +3 -0
  87. package/dist/lib/metadata/html.d.ts.map +1 -0
  88. package/dist/lib/metadata/html.js +96 -0
  89. package/dist/lib/metadata/index.d.ts +7 -0
  90. package/dist/lib/metadata/index.d.ts.map +1 -0
  91. package/dist/lib/metadata/index.js +61 -0
  92. package/dist/lib/metadata/next.d.ts +79 -0
  93. package/dist/lib/metadata/next.d.ts.map +1 -0
  94. package/dist/lib/metadata/next.js +106 -0
  95. package/dist/lib/metadata/public.d.ts +3 -0
  96. package/dist/lib/metadata/public.d.ts.map +1 -0
  97. package/dist/lib/metadata/public.js +107 -0
  98. package/dist/lib/metadata/render.d.ts +7 -0
  99. package/dist/lib/metadata/render.d.ts.map +1 -0
  100. package/dist/lib/metadata/render.js +37 -0
  101. package/dist/lib/metadata/runtime.d.ts +68 -0
  102. package/dist/lib/metadata/runtime.d.ts.map +1 -0
  103. package/dist/lib/metadata/runtime.js +134 -0
  104. package/dist/lib/metadata/tanstack.d.ts +71 -0
  105. package/dist/lib/metadata/tanstack.d.ts.map +1 -0
  106. package/dist/lib/metadata/tanstack.js +194 -0
  107. package/dist/lib/metadata/templates/not-found.html +224 -0
  108. package/dist/lib/metadata/templates/offline.html +210 -0
  109. package/dist/lib/metadata/types.d.ts +118 -0
  110. package/dist/lib/metadata/types.d.ts.map +1 -0
  111. package/dist/lib/navigation/app-menu.d.ts +2 -0
  112. package/dist/lib/navigation/app-menu.d.ts.map +1 -0
  113. package/dist/lib/navigation/app-menu.js +45 -0
  114. package/dist/lib/navigation/control-center.d.ts +2 -0
  115. package/dist/lib/navigation/control-center.d.ts.map +1 -0
  116. package/dist/lib/navigation/control-center.js +66 -0
  117. package/dist/lib/navigation/index.d.ts +5 -0
  118. package/dist/lib/navigation/index.d.ts.map +1 -0
  119. package/dist/lib/navigation/index.js +59 -0
  120. package/dist/lib/navigation/toolbar.d.ts +2 -0
  121. package/dist/lib/navigation/toolbar.d.ts.map +1 -0
  122. package/dist/lib/navigation/toolbar.js +78 -0
  123. package/dist/lib/presets/app/index.d.ts +21 -0
  124. package/dist/lib/presets/app/index.d.ts.map +1 -0
  125. package/dist/lib/presets/app/index.js +114 -0
  126. package/dist/lib/presets/cdn/index.d.ts +2 -0
  127. package/dist/lib/presets/cdn/index.d.ts.map +1 -0
  128. package/dist/lib/presets/cdn/index.js +2 -0
  129. package/dist/lib/presets/docs/cli.d.ts +3 -0
  130. package/dist/lib/presets/docs/cli.d.ts.map +1 -0
  131. package/dist/lib/presets/docs/cli.js +18 -0
  132. package/dist/lib/presets/docs/config.d.ts +40 -0
  133. package/dist/lib/presets/docs/config.d.ts.map +1 -0
  134. package/dist/lib/presets/docs/config.js +39 -0
  135. package/dist/lib/presets/docs/files.d.ts +2 -0
  136. package/dist/lib/presets/docs/files.d.ts.map +1 -0
  137. package/dist/lib/presets/docs/files.js +13 -0
  138. package/dist/lib/presets/docs/index.d.ts +7 -0
  139. package/dist/lib/presets/docs/index.d.ts.map +1 -0
  140. package/dist/lib/presets/docs/index.js +6 -0
  141. package/dist/lib/presets/docs/mdx-path.d.ts +7 -0
  142. package/dist/lib/presets/docs/mdx-path.d.ts.map +1 -0
  143. package/dist/lib/presets/docs/mdx-path.js +19 -0
  144. package/dist/lib/presets/docs/og-image.d.ts +9 -0
  145. package/dist/lib/presets/docs/og-image.d.ts.map +1 -0
  146. package/dist/lib/presets/docs/og-image.js +88 -0
  147. package/dist/lib/presets/docs/og-output.d.ts +5 -0
  148. package/dist/lib/presets/docs/og-output.d.ts.map +1 -0
  149. package/dist/lib/presets/docs/og-output.js +34 -0
  150. package/dist/lib/presets/docs/og.d.ts +9 -0
  151. package/dist/lib/presets/docs/og.d.ts.map +1 -0
  152. package/dist/lib/presets/docs/og.js +112 -0
  153. package/dist/lib/presets/docs/openapi.d.ts +3 -0
  154. package/dist/lib/presets/docs/openapi.d.ts.map +1 -0
  155. package/dist/lib/presets/docs/openapi.js +105 -0
  156. package/dist/lib/presets/docs/routes.d.ts +7 -0
  157. package/dist/lib/presets/docs/routes.d.ts.map +1 -0
  158. package/dist/lib/presets/docs/routes.js +109 -0
  159. package/dist/lib/presets/docs/types.d.ts +31 -0
  160. package/dist/lib/presets/docs/types.d.ts.map +1 -0
  161. package/dist/lib/presets/docs/vite.d.ts +11 -0
  162. package/dist/lib/presets/docs/vite.d.ts.map +1 -0
  163. package/dist/lib/presets/docs/vite.js +78 -0
  164. package/dist/lib/presets/files.d.ts +5 -0
  165. package/dist/lib/presets/files.d.ts.map +1 -0
  166. package/dist/lib/presets/files.js +21 -0
  167. package/dist/lib/presets/route-files.d.ts +22 -0
  168. package/dist/lib/presets/route-files.d.ts.map +1 -0
  169. package/dist/lib/presets/route-files.js +49 -0
  170. package/dist/lib/yaml-config.d.ts +2 -0
  171. package/dist/lib/yaml-config.d.ts.map +1 -0
  172. package/dist/lib/yaml-config.js +6 -0
  173. package/package.json +119 -3
@@ -0,0 +1,29 @@
1
+ import { workspaceRoot } from "@nx/devkit";
2
+ import { composePlugins, withNx } from "@nx/next";
3
+ //#region src/lib/integrations/next/index.ts
4
+ var defaults = {
5
+ nx: {},
6
+ typescript: { tsconfigPath: "tsconfig.app.json" },
7
+ turbopack: { root: workspaceRoot }
8
+ };
9
+ var defineConfig = (overrides = {}) => {
10
+ const config = {
11
+ ...defaults,
12
+ ...overrides,
13
+ nx: {
14
+ ...defaults.nx,
15
+ ...overrides.nx
16
+ },
17
+ typescript: {
18
+ ...defaults.typescript,
19
+ ...overrides.typescript
20
+ },
21
+ turbopack: {
22
+ ...defaults.turbopack,
23
+ ...overrides.turbopack
24
+ }
25
+ };
26
+ return composePlugins(withNx)(config);
27
+ };
28
+ //#endregion
29
+ export { defineConfig };
@@ -0,0 +1,11 @@
1
+ import type { PlaywrightTestConfig } from '@playwright/test';
2
+ type WebServerConfig = Exclude<NonNullable<PlaywrightTestConfig['webServer']>, unknown[]>;
3
+ export type PlaywrightConfig = Omit<PlaywrightTestConfig, 'webServer'> & {
4
+ webServer: WebServerConfig;
5
+ };
6
+ /**
7
+ * See https://playwright.dev/docs/test-configuration.
8
+ */
9
+ export declare const defineConfig: (configFile: string, config: PlaywrightConfig) => PlaywrightTestConfig<{}, {}>;
10
+ export {};
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/integrations/playwright/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAS5D,KAAK,eAAe,GAAG,OAAO,CAC5B,WAAW,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,EAC9C,OAAO,EAAE,CACV,CAAA;AAMD,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,GAAG;IACvE,SAAS,EAAE,eAAe,CAAA;CAC3B,CAAA;AAqCD;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,YAAY,MAAM,EAAE,QAAQ,gBAAgB,iCAmCxE,CAAA"}
@@ -0,0 +1,77 @@
1
+ import { existsSync, readFileSync } from "node:fs";
2
+ import { dirname, join } from "node:path";
3
+ import { workspaceRoot } from "@nx/devkit";
4
+ import { nxE2EPreset } from "@nx/playwright/preset";
5
+ import { defineConfig as defineConfig$1, devices } from "@playwright/test";
6
+ import { parseEnv } from "node:util";
7
+ //#region src/lib/integrations/playwright/index.ts
8
+ var isCI = Boolean(process.env.CI);
9
+ var testTimeout = isCI ? 18e4 : 12e4;
10
+ var webServerTimeout = isCI ? 4e5 : 3e5;
11
+ var defaultProjects = [
12
+ {
13
+ name: "chromium",
14
+ use: { ...devices["Desktop Chrome"] }
15
+ },
16
+ {
17
+ name: "firefox",
18
+ use: { ...devices["Desktop Firefox"] }
19
+ },
20
+ {
21
+ name: "webkit",
22
+ use: { ...devices["Desktop Safari"] }
23
+ },
24
+ {
25
+ name: "Microsoft Edge",
26
+ use: {
27
+ ...devices["Desktop Edge"],
28
+ channel: "msedge"
29
+ }
30
+ },
31
+ {
32
+ name: "Google Chrome",
33
+ use: {
34
+ ...devices["Desktop Chrome"],
35
+ channel: "chrome"
36
+ }
37
+ },
38
+ {
39
+ name: "Mobile Chrome",
40
+ use: { ...devices["Pixel 5"] }
41
+ },
42
+ {
43
+ name: "Mobile Safari",
44
+ use: { ...devices["iPhone 12"] }
45
+ }
46
+ ];
47
+ /**
48
+ * See https://playwright.dev/docs/test-configuration.
49
+ */
50
+ var defineConfig = (configFile, config) => {
51
+ const envFile = join(dirname(configFile), ".env");
52
+ const env = existsSync(envFile) ? parseEnv(readFileSync(envFile, "utf8")) : {};
53
+ const port = process.env.PRE_PORT || env.PRE_PORT || 8080;
54
+ const baseURL = process.env.BASE_URL || env.BASE_URL || `http://localhost:${port}`;
55
+ const { projects, use, webServer, ...restConfig } = config;
56
+ return defineConfig$1({
57
+ ...nxE2EPreset(configFile, { testDir: "./src" }),
58
+ timeout: testTimeout,
59
+ workers: 1,
60
+ ...restConfig,
61
+ use: {
62
+ baseURL,
63
+ trace: "on-first-retry",
64
+ ...use
65
+ },
66
+ webServer: {
67
+ url: baseURL,
68
+ timeout: webServerTimeout,
69
+ reuseExistingServer: !isCI && process.env.PLAYWRIGHT_REUSE_SERVER !== "false",
70
+ cwd: workspaceRoot,
71
+ ...webServer
72
+ },
73
+ projects: projects ?? defaultProjects
74
+ });
75
+ };
76
+ //#endregion
77
+ export { defineConfig };
@@ -0,0 +1,5 @@
1
+ export declare const test: import("@playwright/test").TestType<import("@playwright/test").PlaywrightTestArgs & import("@playwright/test").PlaywrightTestOptions & {
2
+ browserHealth: void;
3
+ }, import("@playwright/test").PlaywrightWorkerArgs & import("@playwright/test").PlaywrightWorkerOptions>;
4
+ export { expect } from '@playwright/test';
5
+ //# sourceMappingURL=test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../../../src/lib/integrations/playwright/test.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,IAAI;mBAAgC,IAAI;wGAyCnD,CAAA;AAEF,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,23 @@
1
+ import { expect, expect as expect$1, test as test$1 } from "@playwright/test";
2
+ //#region src/lib/integrations/playwright/test.ts
3
+ var test = test$1.extend({ browserHealth: [async ({ page }, use) => {
4
+ const runtimeErrors = [];
5
+ const consoleErrors = [];
6
+ const notFoundDocuments = /* @__PURE__ */ new Set();
7
+ page.on("pageerror", (error) => runtimeErrors.push(error.message));
8
+ page.on("console", (message) => {
9
+ if (message.type() === "error") consoleErrors.push({
10
+ text: message.text(),
11
+ url: message.location().url
12
+ });
13
+ });
14
+ page.on("response", (response) => {
15
+ const request = response.request();
16
+ if (response.status() === 404 && request.isNavigationRequest() && request.frame() === page.mainFrame()) notFoundDocuments.add(response.url());
17
+ });
18
+ await use();
19
+ const unexpectedErrors = consoleErrors.filter((error) => !(notFoundDocuments.has(error.url) && /^Failed to load resource: the server responded with a status of 404(?: \((?:Not Found)?\))?$/.test(error.text)));
20
+ expect$1([...runtimeErrors, ...unexpectedErrors.map((error) => error.text)]).toEqual([]);
21
+ }, { auto: true }] });
22
+ //#endregion
23
+ export { expect, test };
@@ -0,0 +1,12 @@
1
+ import type { ConfigEnv, UserConfig, UserConfigExport } from 'vite';
2
+ export declare const getProjectPackageName: (projectRoot?: string) => string;
3
+ export declare const getViteCacheDir: (projectRoot?: string) => string;
4
+ export type ViteConfig = UserConfig & {
5
+ test?: Record<string, unknown>;
6
+ };
7
+ export type ViteConfigFactory = (env: ConfigEnv) => ViteConfig | Promise<ViteConfig>;
8
+ export type ViteConfigOverrides = ViteConfig | ViteConfigFactory;
9
+ export declare const getViteConfig: (projectRoot?: string) => ViteConfig;
10
+ export declare const createViteConfig: (getDefaults: (projectRoot: string, env: ConfigEnv) => ViteConfig, overrides?: ViteConfigOverrides) => UserConfigExport;
11
+ export declare const defineConfig: (overrides?: ViteConfigOverrides) => UserConfigExport;
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/integrations/vite/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAA;AAgBnE,eAAO,MAAM,qBAAqB,GAAI,oBAA2B,WAYhE,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,oBAA2B,WAKxD,CAAA;AAEH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,CAC9B,GAAG,EAAE,SAAS,KACX,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;AAErC,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,iBAAiB,CAAA;AAEhE,eAAO,MAAM,aAAa,GAAI,oBAA2B,KAAG,UAI1D,CAAA;AAEF,eAAO,MAAM,gBAAgB,GAC3B,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,KAAK,UAAU,EAChE,YAAW,mBAAwB,KAClC,gBAYC,CAAA;AAEJ,eAAO,MAAM,YAAY,GAAI,YAAW,mBAAwB,qBACpB,CAAA"}
@@ -0,0 +1,34 @@
1
+ import { existsSync, readFileSync } from "node:fs";
2
+ import path from "node:path";
3
+ import { defineConfig as defineConfig$1, mergeConfig } from "vite";
4
+ //#region src/lib/integrations/vite/index.ts
5
+ var findWorkspaceRoot = (startDir = process.cwd()) => {
6
+ let currentDir = path.resolve(startDir);
7
+ while (currentDir !== path.dirname(currentDir)) {
8
+ if (existsSync(path.join(currentDir, "pnpm-workspace.yaml"))) return currentDir;
9
+ currentDir = path.dirname(currentDir);
10
+ }
11
+ return path.resolve(startDir);
12
+ };
13
+ var getProjectPackageName = (projectRoot = process.cwd()) => {
14
+ const packageJsonFile = path.resolve(projectRoot, "package.json");
15
+ if (!existsSync(packageJsonFile)) return path.basename(projectRoot);
16
+ try {
17
+ return JSON.parse(readFileSync(packageJsonFile, "utf8")).name;
18
+ } catch {
19
+ return path.basename(projectRoot);
20
+ }
21
+ };
22
+ var getViteCacheDir = (projectRoot = process.cwd()) => path.resolve(findWorkspaceRoot(projectRoot), "node_modules/.vite", getProjectPackageName(projectRoot));
23
+ var getViteConfig = (projectRoot = process.cwd()) => ({
24
+ root: projectRoot,
25
+ cacheDir: getViteCacheDir(projectRoot),
26
+ test: {}
27
+ });
28
+ var createViteConfig = (getDefaults, overrides = {}) => defineConfig$1(async (env) => {
29
+ const resolvedOverrides = typeof overrides === "function" ? await overrides(env) : overrides;
30
+ return mergeConfig(getDefaults(path.resolve(String(resolvedOverrides.root ?? process.cwd())), env), resolvedOverrides);
31
+ });
32
+ var defineConfig = (overrides = {}) => createViteConfig(getViteConfig, overrides);
33
+ //#endregion
34
+ export { createViteConfig, defineConfig, getProjectPackageName, getViteCacheDir, getViteConfig };
@@ -0,0 +1,3 @@
1
+ import { type ViteConfigOverrides } from '../vite';
2
+ export declare const defineConfig: (overrides?: ViteConfigOverrides) => import("vite").UserConfigFnPromise;
3
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/lib/integrations/vite-lib/base.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,mBAAmB,EAEzB,MAAM,SAAS,CAAA;AAuBhB,eAAO,MAAM,YAAY,GAAI,YAAW,mBAAwB,uCAgB5D,CAAA"}
@@ -0,0 +1,31 @@
1
+ import { getViteConfig } from "../vite/index.js";
2
+ import path from "node:path";
3
+ import { defineConfig, mergeConfig } from "vite";
4
+ import dts from "vite-plugin-dts";
5
+ //#region src/lib/integrations/vite-lib/base.ts
6
+ var getViteLibConfig = (projectRoot = process.cwd()) => ({
7
+ ...getViteConfig(projectRoot),
8
+ plugins: [dts({
9
+ entryRoot: path.join(projectRoot, "src"),
10
+ tsconfigPath: path.join(projectRoot, "tsconfig.lib.json")
11
+ })],
12
+ build: {
13
+ outDir: "./dist",
14
+ emptyOutDir: true,
15
+ reportCompressedSize: true,
16
+ commonjsOptions: { transformMixedEsModules: true },
17
+ lib: {
18
+ entry: path.join(projectRoot, "src/index.ts"),
19
+ fileName: "index",
20
+ formats: ["es"]
21
+ }
22
+ }
23
+ });
24
+ var defineConfig$1 = (overrides = {}) => defineConfig(async (env) => {
25
+ const resolved = typeof overrides === "function" ? await overrides(env) : overrides;
26
+ const defaults = getViteLibConfig(path.resolve(resolved.root ?? process.cwd()));
27
+ if (resolved.build?.lib && resolved.build.lib.formats && defaults.build?.lib) delete defaults.build.lib.formats;
28
+ return mergeConfig(defaults, resolved);
29
+ });
30
+ //#endregion
31
+ export { defineConfig$1 as defineConfig };
@@ -0,0 +1,3 @@
1
+ import type { ViteConfigOverrides } from '../vite';
2
+ export declare const defineConfig: (overrides?: ViteConfigOverrides) => import("vite").UserConfigFnPromise;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/integrations/vite-lib/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAc,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAgC9D,eAAO,MAAM,YAAY,GAAI,YAAW,mBAAwB,uCA6C5D,CAAA"}
@@ -0,0 +1,42 @@
1
+ import { defineConfig as defineConfig$2 } from "./base.js";
2
+ import { cpSync, existsSync, globSync, readFileSync } from "node:fs";
3
+ import path from "node:path";
4
+ import { mergeConfig } from "vite";
5
+ //#region src/lib/integrations/vite-lib/index.ts
6
+ var getPackageEntries = (projectRoot) => {
7
+ const manifest = path.join(projectRoot, "package.json");
8
+ if (!existsSync(manifest)) return void 0;
9
+ const pkg = JSON.parse(readFileSync(manifest, "utf8"));
10
+ const files = Object.values(pkg.exports ?? {}).map((value) => typeof value === "string" ? value : value["@vx/fe-kit"] ?? value.types).filter((value) => Boolean(value?.startsWith("./src/"))).flatMap((pattern) => globSync(pattern, { cwd: projectRoot }));
11
+ for (const output of Object.values(pkg.bin ?? {})) files.push(output.replace("./dist/", "src/").replace(/\.js$/, ".ts"));
12
+ return Object.fromEntries(files.map((file) => [file.replace(/^\.?\/src\//, "").replace(/^src\//, "").replace(/\.tsx?$/, ""), path.resolve(projectRoot, file)]));
13
+ };
14
+ var defineConfig = (overrides = {}) => defineConfig$2(async (env) => {
15
+ const config = typeof overrides === "function" ? await overrides(env) : overrides;
16
+ const root = path.resolve(config.root ?? process.cwd());
17
+ return mergeConfig({
18
+ plugins: [{
19
+ name: "vezham:package-assets",
20
+ closeBundle() {
21
+ for (const file of globSync("src/**/*.{html,css}", { cwd: root })) cpSync(path.join(root, file), path.join(root, file.replace(/^src\//, "dist/")), { recursive: true });
22
+ }
23
+ }],
24
+ build: {
25
+ minify: false,
26
+ lib: {
27
+ entry: getPackageEntries(root),
28
+ fileName: (_format, name) => `${name}.js`
29
+ },
30
+ rolldownOptions: {
31
+ external: (id) => !id.startsWith(".") && !path.isAbsolute(id) && !id.startsWith("\0"),
32
+ output: {
33
+ preserveModules: true,
34
+ preserveModulesRoot: path.join(root, "src"),
35
+ entryFileNames: "[name].js"
36
+ }
37
+ }
38
+ }
39
+ }, config);
40
+ });
41
+ //#endregion
42
+ export { defineConfig };
@@ -0,0 +1,3 @@
1
+ import type { ViteConfigOverrides } from '../vite';
2
+ export declare const defineConfig: (overrides?: ViteConfigOverrides) => import("vite").UserConfigFnPromise;
3
+ //# sourceMappingURL=react.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../../../src/lib/integrations/vite-lib/react.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAGlD,eAAO,MAAM,YAAY,GAAI,YAAW,mBAAwB,uCAK5D,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { defineConfig as defineConfig$2 } from "./index.js";
2
+ import { mergeConfig } from "vite";
3
+ import react from "@vitejs/plugin-react-swc";
4
+ //#region src/lib/integrations/vite-lib/react.ts
5
+ var defineConfig = (overrides = {}) => defineConfig$2(async (env) => {
6
+ const resolved = typeof overrides === "function" ? await overrides(env) : overrides;
7
+ return mergeConfig({ plugins: [react()] }, resolved);
8
+ });
9
+ //#endregion
10
+ export { defineConfig };
@@ -0,0 +1,4 @@
1
+ import type { Framework } from '../../framework';
2
+ import { type ViteConfigOverrides } from '../vite';
3
+ export declare const defineFrameworkTestConfig: (framework: Framework, overrides?: ViteConfigOverrides) => import("vite").UserConfigExport;
4
+ //# sourceMappingURL=framework.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../../../../src/lib/integrations/vitest/framework.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAGlD,eAAO,MAAM,yBAAyB,GACpC,WAAW,SAAS,EACpB,YAAW,mBAAwB,oCASlC,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { defineTestConfig } from "./shared.js";
2
+ //#region src/lib/integrations/vitest/framework.ts
3
+ var defineFrameworkTestConfig = (framework, overrides = {}) => defineTestConfig(framework === "next" ? "next" : framework === "tanstack-docs" ? "docs" : "react", overrides);
4
+ //#endregion
5
+ export { defineFrameworkTestConfig };
@@ -0,0 +1,3 @@
1
+ import type { Plugin } from 'vite';
2
+ export declare const docsTestPlugins: () => (Plugin<any> | Plugin<any>[])[];
3
+ //# sourceMappingURL=docs-plugins.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs-plugins.d.ts","sourceRoot":"","sources":["../../../../../src/lib/integrations/vitest/frameworks/docs-plugins.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAsClC,eAAO,MAAM,eAAe,uCAI3B,CAAA"}
@@ -0,0 +1,27 @@
1
+ import { docsMdx, docsMdxMacroImportAlias } from "../../../presets/docs/vite.js";
2
+ import path from "node:path";
3
+ //#region src/lib/integrations/vitest/frameworks/docs-plugins.ts
4
+ var slash = (value) => value.split(path.sep).join("/");
5
+ var projectRootImportAlias = () => {
6
+ return {
7
+ name: "@vezham/config:vitest-project-root-import-alias",
8
+ enforce: "pre",
9
+ resolveId(source) {
10
+ if (!source.startsWith("/openapi/")) return null;
11
+ const [filePath, query] = source.split("?", 2);
12
+ const resolvedPath = slash(path.resolve(process.cwd(), filePath.slice(1)));
13
+ return query ? `${resolvedPath}?${query}` : resolvedPath;
14
+ },
15
+ transform(code) {
16
+ if (!code.includes("/openapi/")) return null;
17
+ return code.replaceAll("\"/openapi/", `"${slash(path.resolve(process.cwd(), "openapi"))}/`).replaceAll("'/openapi/", `'${slash(path.resolve(process.cwd(), "openapi"))}/`);
18
+ }
19
+ };
20
+ };
21
+ var docsTestPlugins = () => [
22
+ projectRootImportAlias(),
23
+ docsMdxMacroImportAlias({ rewriteContentBase: true }),
24
+ docsMdx()
25
+ ];
26
+ //#endregion
27
+ export { docsTestPlugins };
@@ -0,0 +1,3 @@
1
+ import { type ViteConfigOverrides } from '../../vite';
2
+ export declare const defineConfig: (overrides?: ViteConfigOverrides) => import("vite").UserConfigExport;
3
+ //# sourceMappingURL=docs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../../../../src/lib/integrations/vitest/frameworks/docs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGrD,eAAO,MAAM,YAAY,GAAI,YAAW,mBAAwB,oCAC3B,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { defineTestConfig } from "../shared.js";
2
+ //#region src/lib/integrations/vitest/frameworks/docs.ts
3
+ var defineConfig = (overrides = {}) => defineTestConfig("docs", overrides);
4
+ //#endregion
5
+ export { defineConfig };
@@ -0,0 +1,3 @@
1
+ import { type ViteConfigOverrides } from '../../vite';
2
+ export declare const defineConfig: (overrides?: ViteConfigOverrides) => import("vite").UserConfigExport;
3
+ //# sourceMappingURL=next.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next.d.ts","sourceRoot":"","sources":["../../../../../src/lib/integrations/vitest/frameworks/next.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGrD,eAAO,MAAM,YAAY,GAAI,YAAW,mBAAwB,oCAC3B,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { defineTestConfig } from "../shared.js";
2
+ //#region src/lib/integrations/vitest/frameworks/next.ts
3
+ var defineConfig = (overrides = {}) => defineTestConfig("next", overrides);
4
+ //#endregion
5
+ export { defineConfig };
@@ -0,0 +1,3 @@
1
+ import { type ViteConfigOverrides } from '../../vite';
2
+ export declare const defineConfig: (overrides?: ViteConfigOverrides) => import("vite").UserConfigExport;
3
+ //# sourceMappingURL=react.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../../../../src/lib/integrations/vitest/frameworks/react.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGrD,eAAO,MAAM,YAAY,GAAI,YAAW,mBAAwB,oCAC1B,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { defineTestConfig } from "../shared.js";
2
+ //#region src/lib/integrations/vitest/frameworks/react.ts
3
+ var defineConfig = (overrides = {}) => defineTestConfig("react", overrides);
4
+ //#endregion
5
+ export { defineConfig };
@@ -0,0 +1,4 @@
1
+ export { defineConfig } from '../vite';
2
+ export * from '../../framework';
3
+ export * from './framework';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/integrations/vitest/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { defineConfig } from "../vite/index.js";
2
+ import { validateFramework } from "../../framework.js";
3
+ import { defineFrameworkTestConfig } from "./framework.js";
4
+ export { defineConfig, defineFrameworkTestConfig, validateFramework };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=next.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"next.d.ts","sourceRoot":"","sources":["../../../../../src/lib/integrations/vitest/setup/next.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { vi } from "vitest";
2
+ //#region src/lib/integrations/vitest/setup/next.ts
3
+ vi.mock("next/navigation", () => ({ useRouter: () => ({
4
+ back: vi.fn(),
5
+ forward: vi.fn(),
6
+ prefetch: vi.fn(),
7
+ push: vi.fn(),
8
+ refresh: vi.fn(),
9
+ replace: vi.fn()
10
+ }) }));
11
+ //#endregion
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=react.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../../../../../src/lib/integrations/vitest/setup/react.ts"],"names":[],"mappings":""}
@@ -0,0 +1,36 @@
1
+ import * as matchers from "@testing-library/jest-dom/matchers";
2
+ import { cleanup } from "@testing-library/react";
3
+ import { afterEach, beforeEach, expect, vi } from "vitest";
4
+ //#region src/lib/integrations/vitest/setup/react.ts
5
+ var noop = () => void 0;
6
+ var ResizeObserverMock = class {
7
+ observe = noop;
8
+ unobserve = noop;
9
+ disconnect = noop;
10
+ };
11
+ expect.extend(matchers);
12
+ beforeEach(() => {
13
+ window.scrollTo = vi.fn();
14
+ Element.prototype.scrollTo = vi.fn();
15
+ });
16
+ if (typeof window !== "undefined" && typeof window.matchMedia !== "function") Object.defineProperty(window, "matchMedia", {
17
+ writable: true,
18
+ value: (query) => ({
19
+ matches: false,
20
+ media: query,
21
+ onchange: null,
22
+ addListener: noop,
23
+ removeListener: noop,
24
+ addEventListener: noop,
25
+ removeEventListener: noop,
26
+ dispatchEvent: () => false
27
+ })
28
+ });
29
+ if (typeof globalThis.ResizeObserver !== "function") Object.defineProperty(globalThis, "ResizeObserver", {
30
+ writable: true,
31
+ value: ResizeObserverMock
32
+ });
33
+ afterEach(() => {
34
+ cleanup();
35
+ });
36
+ //#endregion
@@ -0,0 +1,3 @@
1
+ import { type ViteConfigOverrides } from '../vite';
2
+ export declare const defineTestConfig: (feature: "react" | "next" | "docs", overrides?: ViteConfigOverrides) => import("vite").UserConfigExport;
3
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/lib/integrations/vitest/shared.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,SAAS,CAAA;AAEhB,eAAO,MAAM,gBAAgB,GAC3B,SAAS,OAAO,GAAG,MAAM,GAAG,MAAM,EAClC,YAAW,mBAAwB,oCA8BjC,CAAA"}
@@ -0,0 +1,24 @@
1
+ import { defineConfig as defineConfig$1 } from "../vite/index.js";
2
+ import path from "node:path";
3
+ import { mergeConfig } from "vite";
4
+ //#region src/lib/integrations/vitest/shared.ts
5
+ var defineTestConfig = (feature, overrides = {}) => defineConfig$1(async (env) => {
6
+ const config = typeof overrides === "function" ? await overrides(env) : overrides;
7
+ const setupFiles = [path.join(import.meta.dirname, "setup/react" + (import.meta.url.endsWith(".ts") ? ".ts" : ".js"))];
8
+ if (feature === "next") setupFiles.push(path.join(import.meta.dirname, "setup/next" + (import.meta.url.endsWith(".ts") ? ".ts" : ".js")));
9
+ const plugins = [];
10
+ if (feature === "docs") {
11
+ const { docsTestPlugins } = await import("./frameworks/docs-plugins.js");
12
+ plugins.push(...docsTestPlugins());
13
+ }
14
+ return mergeConfig({
15
+ plugins,
16
+ test: {
17
+ environment: "jsdom",
18
+ setupFiles,
19
+ fileParallelism: false
20
+ }
21
+ }, config);
22
+ });
23
+ //#endregion
24
+ export { defineTestConfig };
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/lib/metadata/cli.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env node
2
+ import { generateMetadata, watchMetadata } from "./index.js";
3
+ //#region src/lib/metadata/cli.ts
4
+ var [, , command = "generate", projectRoot = process.cwd(), output] = process.argv;
5
+ if (command === "generate") {
6
+ const files = generateMetadata({ projectRoot });
7
+ console.log(output === "--json" ? JSON.stringify(files) : `Generated ${files.length} metadata files for ${projectRoot}`);
8
+ } else if (command === "watch") watchMetadata({ projectRoot });
9
+ else {
10
+ console.error(`Unknown public command "${command}". Use "generate" or "watch".`);
11
+ process.exitCode = 1;
12
+ }
13
+ //#endregion
@@ -0,0 +1,9 @@
1
+ import { type VxConfig } from './types';
2
+ export declare const getVxEnv: ({ core }: VxConfig) => {
3
+ HOST_NAME: string;
4
+ V_APP_ID: string;
5
+ V_APP_NAME: string;
6
+ V_APP_VER: string;
7
+ };
8
+ export declare const syncEnvContent: (content: string, values: Record<string, string>) => string;
9
+ //# sourceMappingURL=env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../../src/lib/metadata/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAA;AAavC,eAAO,MAAM,QAAQ,GAAI,UAAU,QAAQ;;;;;CAKzC,CAAA;AAEF,eAAO,MAAM,cAAc,GACzB,SAAS,MAAM,EACf,QAAQ,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAC7B,MA+BF,CAAA"}
@@ -0,0 +1,36 @@
1
+ //#region src/lib/metadata/env.ts
2
+ var getDomain = (url) => {
3
+ try {
4
+ return new URL(url).hostname;
5
+ } catch {
6
+ return url.replace(/^https?:\/\//, "").replace(/\/.*$/, "");
7
+ }
8
+ };
9
+ var getLocalHostName = (url) => getDomain(url).replace(/\.vezham\.app$/, ".vezham.local");
10
+ var getVxEnv = ({ core }) => ({
11
+ HOST_NAME: getLocalHostName(core.url),
12
+ V_APP_ID: core.id,
13
+ V_APP_NAME: core.name,
14
+ V_APP_VER: core.version
15
+ });
16
+ var syncEnvContent = (content, values) => {
17
+ const lines = content ? content.replace(/\n$/, "").split("\n") : [];
18
+ const synced = /* @__PURE__ */ new Set();
19
+ const envLinePattern = /^([A-Z][A-Z0-9_]*)=/;
20
+ const nextLines = lines.map((line) => {
21
+ const key = line.match(envLinePattern)?.[1];
22
+ if (!key || !(key in values)) return line;
23
+ synced.add(key);
24
+ return `${key}=${values[key]}`;
25
+ });
26
+ const missingLines = Object.entries(values).filter(([key]) => !synced.has(key)).map(([key, value]) => `${key}=${value}`);
27
+ if (missingLines.length > 0) {
28
+ const prePortIndex = nextLines.findIndex((line) => line.startsWith("PRE_PORT="));
29
+ const portIndex = nextLines.findIndex((line) => line.startsWith("PORT="));
30
+ const insertIndex = prePortIndex >= 0 ? prePortIndex + 1 : portIndex >= 0 ? portIndex + 1 : 0;
31
+ nextLines.splice(insertIndex, 0, ...missingLines);
32
+ }
33
+ return `${nextLines.join("\n")}\n`;
34
+ };
35
+ //#endregion
36
+ export { getVxEnv, syncEnvContent };
@@ -0,0 +1,3 @@
1
+ import type { VxConfig } from './types';
2
+ export declare const syncIndexHtmlContent: (content: string, config: VxConfig, projectRoot?: string) => string;
3
+ //# sourceMappingURL=html.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../../src/lib/metadata/html.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AA6JvC,eAAO,MAAM,oBAAoB,GAC/B,SAAS,MAAM,EACf,QAAQ,QAAQ,EAChB,oBAA2B,WA2B5B,CAAA"}