@vite-env/core 0.5.3 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -18
- package/dist/chunk-CKQMccvm.cjs +28 -0
- package/dist/config.cjs +1 -1
- package/dist/config.cjs.map +1 -1
- package/dist/config.d.cts +1 -1
- package/dist/config.d.mts +1 -1
- package/dist/config.mjs.map +1 -1
- package/dist/dts.cjs +102 -3
- package/dist/dts.cjs.map +1 -0
- package/dist/dts.d.cts +1 -1
- package/dist/dts.d.mts +1 -1
- package/dist/dts.mjs +18 -5
- package/dist/dts.mjs.map +1 -1
- package/dist/format.cjs.map +1 -1
- package/dist/format.d.cts +2 -2
- package/dist/format.d.mts +2 -2
- package/dist/format.mjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/leak.cjs.map +1 -1
- package/dist/leak.d.cts +1 -1
- package/dist/leak.d.mts +1 -1
- package/dist/leak.mjs.map +1 -1
- package/dist/load.cjs +50 -0
- package/dist/load.cjs.map +1 -0
- package/dist/load.d.cts +29 -0
- package/dist/load.d.mts +29 -0
- package/dist/load.mjs +46 -0
- package/dist/load.mjs.map +1 -0
- package/dist/plugin.cjs +5 -4
- package/dist/plugin.cjs.map +1 -1
- package/dist/plugin.d.cts +1 -1
- package/dist/plugin.d.mts +1 -1
- package/dist/plugin.mjs.map +1 -1
- package/dist/presets/index.cjs +71 -62
- package/dist/presets/index.cjs.map +1 -1
- package/dist/presets/index.d.cts +3 -0
- package/dist/presets/index.d.mts +3 -0
- package/dist/presets/index.mjs +70 -61
- package/dist/presets/index.mjs.map +1 -1
- package/dist/schema.cjs +6 -1
- package/dist/schema.cjs.map +1 -1
- package/dist/schema.d.cts +2 -2
- package/dist/schema.d.mts +2 -2
- package/dist/schema.mjs +5 -0
- package/dist/schema.mjs.map +1 -1
- package/dist/standard.cjs.map +1 -1
- package/dist/standard.d.cts +2 -2
- package/dist/standard.d.mts +2 -2
- package/dist/standard.mjs.map +1 -1
- package/dist/{types--Km3TAdJ.d.mts → types-Ctg8aeXQ.d.mts} +15 -3
- package/dist/{types-CpYkRwLM.d.cts → types-DudMh278.d.cts} +15 -3
- package/package.json +43 -33
- package/dist/dts-CJcj6BIn.cjs +0 -126
- package/dist/dts-CJcj6BIn.cjs.map +0 -1
package/dist/dts-CJcj6BIn.cjs
DELETED
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
//#region \0rolldown/runtime.js
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __copyProps = (to, from, except, desc) => {
|
|
9
|
-
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
10
|
-
key = keys[i];
|
|
11
|
-
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
12
|
-
get: ((k) => from[k]).bind(null, key),
|
|
13
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
19
|
-
value: mod,
|
|
20
|
-
enumerable: true
|
|
21
|
-
}) : target, mod));
|
|
22
|
-
//#endregion
|
|
23
|
-
let node_path = require("node:path");
|
|
24
|
-
node_path = __toESM(node_path, 1);
|
|
25
|
-
let node_fs_promises = require("node:fs/promises");
|
|
26
|
-
node_fs_promises = __toESM(node_fs_promises, 1);
|
|
27
|
-
//#region src/dts.ts
|
|
28
|
-
/**
|
|
29
|
-
* Writes vite-env.d.ts for Zod definitions.
|
|
30
|
-
* Uses instanceof checks to infer TypeScript types from Zod schemas.
|
|
31
|
-
* Zod is loaded dynamically so this module can be imported without zod installed.
|
|
32
|
-
*/
|
|
33
|
-
async function generateDts(def, root) {
|
|
34
|
-
const { z } = await import("zod");
|
|
35
|
-
await writeDts(root, zodShapeToTsFields(z, { ...def.client }), zodShapeToTsFields(z, {
|
|
36
|
-
...def.server,
|
|
37
|
-
...def.client
|
|
38
|
-
}));
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Writes vite-env.d.ts for Standard Schema definitions.
|
|
42
|
-
* All fields are typed as `string` — Standard Schema has no runtime type introspection.
|
|
43
|
-
*/
|
|
44
|
-
async function generateStandardDts(def, root) {
|
|
45
|
-
const clientKeys = Object.keys(def.client ?? {});
|
|
46
|
-
const serverKeys = [...Object.keys(def.server ?? {}), ...clientKeys];
|
|
47
|
-
await writeDts(root, keysToTsFields(clientKeys), keysToTsFields(serverKeys), "(Standard Schema)");
|
|
48
|
-
}
|
|
49
|
-
function buildHeader(tag = "") {
|
|
50
|
-
const lines = [
|
|
51
|
-
"/* oxlint-disable */",
|
|
52
|
-
"/* eslint-disable */",
|
|
53
|
-
"// @ts-nocheck",
|
|
54
|
-
"// biome-ignore-all lint: auto-generated",
|
|
55
|
-
`// Auto-generated by @vite-env/core${tag ? ` ${tag}` : ""}`,
|
|
56
|
-
"// Do not edit manually — re-generated on every dev server start and build"
|
|
57
|
-
];
|
|
58
|
-
if (tag) lines.push("// Tip: for richer types, use defineEnv() with Zod instead of defineStandardEnv()");
|
|
59
|
-
return lines.join("\n");
|
|
60
|
-
}
|
|
61
|
-
async function writeDts(root, clientFields, serverFields, tag = "") {
|
|
62
|
-
const dts = `${buildHeader(tag)}
|
|
63
|
-
|
|
64
|
-
declare module 'virtual:env/client' {
|
|
65
|
-
const env: {
|
|
66
|
-
${clientFields}
|
|
67
|
-
}
|
|
68
|
-
export { env }
|
|
69
|
-
export default env
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
declare module 'virtual:env/server' {
|
|
73
|
-
const env: {
|
|
74
|
-
${serverFields}
|
|
75
|
-
}
|
|
76
|
-
export { env }
|
|
77
|
-
export default env
|
|
78
|
-
}
|
|
79
|
-
`;
|
|
80
|
-
const filePath = node_path.default.join(root, "vite-env.d.ts");
|
|
81
|
-
try {
|
|
82
|
-
await node_fs_promises.default.writeFile(filePath, dts, "utf-8");
|
|
83
|
-
} catch (e) {
|
|
84
|
-
throw new Error(`[vite-env] Failed to write vite-env.d.ts to ${root}. Check file permissions.`, { cause: e });
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
function keysToTsFields(keys) {
|
|
88
|
-
return keys.map((key) => ` readonly ${key}: string`).join("\n");
|
|
89
|
-
}
|
|
90
|
-
function zodShapeToTsFields(z, shape) {
|
|
91
|
-
return Object.entries(shape).map(([key, schema]) => {
|
|
92
|
-
const tsType = zodToTs(z, schema);
|
|
93
|
-
return ` readonly ${key}${schema instanceof z.ZodOptional ? "?" : ""}: ${tsType}`;
|
|
94
|
-
}).join("\n");
|
|
95
|
-
}
|
|
96
|
-
function zodToTs(z, schema) {
|
|
97
|
-
if (schema instanceof z.ZodOptional) return zodToTs(z, schema.unwrap());
|
|
98
|
-
if (schema instanceof z.ZodDefault) return zodToTs(z, schema.def.innerType);
|
|
99
|
-
if (schema instanceof z.ZodString) return "string";
|
|
100
|
-
if (schema instanceof z.ZodNumber) return "number";
|
|
101
|
-
if (schema instanceof z.ZodBoolean) return "boolean";
|
|
102
|
-
if (schema instanceof z.ZodEnum) return schema.options.map((o) => `'${o}'`).join(" | ");
|
|
103
|
-
if (schema instanceof z.ZodPipe) return zodToTs(z, schema.def.out);
|
|
104
|
-
return "string";
|
|
105
|
-
}
|
|
106
|
-
//#endregion
|
|
107
|
-
Object.defineProperty(exports, "__toESM", {
|
|
108
|
-
enumerable: true,
|
|
109
|
-
get: function() {
|
|
110
|
-
return __toESM;
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
Object.defineProperty(exports, "generateDts", {
|
|
114
|
-
enumerable: true,
|
|
115
|
-
get: function() {
|
|
116
|
-
return generateDts;
|
|
117
|
-
}
|
|
118
|
-
});
|
|
119
|
-
Object.defineProperty(exports, "generateStandardDts", {
|
|
120
|
-
enumerable: true,
|
|
121
|
-
get: function() {
|
|
122
|
-
return generateStandardDts;
|
|
123
|
-
}
|
|
124
|
-
});
|
|
125
|
-
|
|
126
|
-
//# sourceMappingURL=dts-CJcj6BIn.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dts-CJcj6BIn.cjs","names":["path","fs"],"sources":["../src/dts.ts"],"sourcesContent":["// @env node\nimport type { EnvDefinition, StandardEnvDefinition } from './types'\nimport type { z as ZodNs } from 'zod'\nimport fs from 'node:fs/promises'\nimport path from 'node:path'\n\n/**\n * Writes vite-env.d.ts for Zod definitions.\n * Uses instanceof checks to infer TypeScript types from Zod schemas.\n * Zod is loaded dynamically so this module can be imported without zod installed.\n */\nexport async function generateDts(\n def: EnvDefinition,\n root: string,\n): Promise<void> {\n const { z } = await import('zod')\n\n const clientFields = zodShapeToTsFields(z, { ...def.client })\n const serverFields = zodShapeToTsFields(z, { ...def.server, ...def.client })\n\n await writeDts(root, clientFields, serverFields)\n}\n\n/**\n * Writes vite-env.d.ts for Standard Schema definitions.\n * All fields are typed as `string` — Standard Schema has no runtime type introspection.\n */\nexport async function generateStandardDts(\n def: StandardEnvDefinition,\n root: string,\n): Promise<void> {\n const clientKeys = Object.keys(def.client ?? {})\n const serverKeys = [...Object.keys(def.server ?? {}), ...clientKeys]\n\n const clientFields = keysToTsFields(clientKeys)\n const serverFields = keysToTsFields(serverKeys)\n\n await writeDts(root, clientFields, serverFields, '(Standard Schema)')\n}\n\nfunction buildHeader(tag = ''): string {\n const lines = [\n '/* oxlint-disable */',\n '/* eslint-disable */',\n '// @ts-nocheck',\n '// biome-ignore-all lint: auto-generated',\n `// Auto-generated by @vite-env/core${tag ? ` ${tag}` : ''}`,\n '// Do not edit manually — re-generated on every dev server start and build',\n ]\n if (tag) {\n lines.push('// Tip: for richer types, use defineEnv() with Zod instead of defineStandardEnv()')\n }\n return lines.join('\\n')\n}\n\nasync function writeDts(\n root: string,\n clientFields: string,\n serverFields: string,\n tag = '',\n): Promise<void> {\n const header = buildHeader(tag)\n\n const dts = `${header}\n\ndeclare module 'virtual:env/client' {\n const env: {\n${clientFields}\n }\n export { env }\n export default env\n}\n\ndeclare module 'virtual:env/server' {\n const env: {\n${serverFields}\n }\n export { env }\n export default env\n}\n`\n\n const filePath = path.join(root, 'vite-env.d.ts')\n try {\n await fs.writeFile(filePath, dts, 'utf-8')\n }\n catch (e) {\n throw new Error(\n `[vite-env] Failed to write vite-env.d.ts to ${root}. Check file permissions.`,\n { cause: e },\n )\n }\n}\n\nfunction keysToTsFields(keys: string[]): string {\n return keys\n .map(key => ` readonly ${key}: string`)\n .join('\\n')\n}\n\nfunction zodShapeToTsFields(z: typeof ZodNs, shape: Record<string, unknown>): string {\n return Object.entries(shape)\n .map(([key, schema]) => {\n const tsType = zodToTs(z, schema)\n const optional = schema instanceof z.ZodOptional\n return ` readonly ${key}${optional ? '?' : ''}: ${tsType}`\n })\n .join('\\n')\n}\n\nfunction zodToTs(z: typeof ZodNs, schema: unknown): string {\n if (schema instanceof z.ZodOptional)\n return zodToTs(z, schema.unwrap())\n if (schema instanceof z.ZodDefault)\n return zodToTs(z, schema.def.innerType)\n if (schema instanceof z.ZodString)\n return 'string'\n if (schema instanceof z.ZodNumber)\n return 'number'\n if (schema instanceof z.ZodBoolean)\n return 'boolean'\n if (schema instanceof z.ZodEnum)\n return (schema.options as string[]).map(o => `'${o}'`).join(' | ')\n if (schema instanceof z.ZodPipe)\n return zodToTs(z, schema.def.out)\n return 'string'\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,eAAsB,YACpB,KACA,MACe;CACf,MAAM,EAAE,MAAM,MAAM,OAAO;AAK3B,OAAM,SAAS,MAHM,mBAAmB,GAAG,EAAE,GAAG,IAAI,QAAQ,CAG3B,EAFZ,mBAAmB,GAAG;EAAE,GAAG,IAAI;EAAQ,GAAG,IAAI;EAAQ,CAE5B,CAAC;;;;;;AAOlD,eAAsB,oBACpB,KACA,MACe;CACf,MAAM,aAAa,OAAO,KAAK,IAAI,UAAU,EAAE,CAAC;CAChD,MAAM,aAAa,CAAC,GAAG,OAAO,KAAK,IAAI,UAAU,EAAE,CAAC,EAAE,GAAG,WAAW;AAKpE,OAAM,SAAS,MAHM,eAAe,WAGH,EAFZ,eAAe,WAEW,EAAE,oBAAoB;;AAGvE,SAAS,YAAY,MAAM,IAAY;CACrC,MAAM,QAAQ;EACZ;EACA;EACA;EACA;EACA,sCAAsC,MAAM,IAAI,QAAQ;EACxD;EACD;AACD,KAAI,IACF,OAAM,KAAK,oFAAoF;AAEjG,QAAO,MAAM,KAAK,KAAK;;AAGzB,eAAe,SACb,MACA,cACA,cACA,MAAM,IACS;CAGf,MAAM,MAAM,GAFG,YAAY,IAEN,CAAC;;;;EAItB,aAAa;;;;;;;;EAQb,aAAa;;;;;;CAOb,MAAM,WAAWA,UAAAA,QAAK,KAAK,MAAM,gBAAgB;AACjD,KAAI;AACF,QAAMC,iBAAAA,QAAG,UAAU,UAAU,KAAK,QAAQ;UAErC,GAAG;AACR,QAAM,IAAI,MACR,+CAA+C,KAAK,4BACpD,EAAE,OAAO,GAAG,CACb;;;AAIL,SAAS,eAAe,MAAwB;AAC9C,QAAO,KACJ,KAAI,QAAO,gBAAgB,IAAI,UAAU,CACzC,KAAK,KAAK;;AAGf,SAAS,mBAAmB,GAAiB,OAAwC;AACnF,QAAO,OAAO,QAAQ,MAAM,CACzB,KAAK,CAAC,KAAK,YAAY;EACtB,MAAM,SAAS,QAAQ,GAAG,OAAO;AAEjC,SAAO,gBAAgB,MADN,kBAAkB,EAAE,cACG,MAAM,GAAG,IAAI;GACrD,CACD,KAAK,KAAK;;AAGf,SAAS,QAAQ,GAAiB,QAAyB;AACzD,KAAI,kBAAkB,EAAE,YACtB,QAAO,QAAQ,GAAG,OAAO,QAAQ,CAAC;AACpC,KAAI,kBAAkB,EAAE,WACtB,QAAO,QAAQ,GAAG,OAAO,IAAI,UAAU;AACzC,KAAI,kBAAkB,EAAE,UACtB,QAAO;AACT,KAAI,kBAAkB,EAAE,UACtB,QAAO;AACT,KAAI,kBAAkB,EAAE,WACtB,QAAO;AACT,KAAI,kBAAkB,EAAE,QACtB,QAAQ,OAAO,QAAqB,KAAI,MAAK,IAAI,EAAE,GAAG,CAAC,KAAK,MAAM;AACpE,KAAI,kBAAkB,EAAE,QACtB,QAAO,QAAQ,GAAG,OAAO,IAAI,IAAI;AACnC,QAAO"}
|