@envin/cli 1.1.13 → 1.1.14-canary.69df2fd
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 +24 -0
- package/dist/cli/index.mjs +145 -13
- package/dist/preview/.next/BUILD_ID +1 -1
- package/dist/preview/.next/build-manifest.json +2 -2
- package/dist/preview/.next/fallback-build-manifest.json +2 -2
- package/dist/preview/.next/prerender-manifest.json +3 -3
- package/dist/preview/.next/server/app/_global-error.html +2 -2
- package/dist/preview/.next/server/app/_global-error.rsc +1 -1
- package/dist/preview/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_not-found.html +1 -1
- package/dist/preview/.next/server/app/_not-found.rsc +1 -1
- package/dist/preview/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/dist/preview/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/dist/preview/.next/server/app/page/server-reference-manifest.json +4 -4
- package/dist/preview/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/preview/.next/server/chunks/ssr/[root-of-the-server]__3aaf07ce._.js +1 -1
- package/dist/preview/.next/server/chunks/ssr/[root-of-the-server]__3aaf07ce._.js.map +1 -1
- package/dist/preview/.next/server/chunks/ssr/[root-of-the-server]__e2e728e5._.js +1 -1
- package/dist/preview/.next/server/chunks/ssr/[root-of-the-server]__e2e728e5._.js.map +1 -1
- package/dist/preview/.next/server/chunks/ssr/[root-of-the-server]__e3d1c002._.js +20 -20
- package/dist/preview/.next/server/chunks/ssr/[root-of-the-server]__e3d1c002._.js.map +1 -1
- package/dist/preview/.next/server/pages/404.html +1 -1
- package/dist/preview/.next/server/pages/500.html +2 -2
- package/dist/preview/.next/server/server-reference-manifest.js +1 -1
- package/dist/preview/.next/server/server-reference-manifest.json +5 -5
- package/dist/preview/.next/static/chunks/{a933bffba6c37967.js → 2f4fcd31324a1930.js} +1 -1
- package/dist/preview/.next/trace +1 -1
- package/dist/preview/.next/trace-build +1 -1
- package/package.json +2 -2
- package/src/app/env.ts +23 -0
- package/src/app/page.tsx +3 -5
- package/src/lib/config.ts +10 -7
- package/src/lib/types.ts +7 -2
- package/src/lib/variables/index.ts +46 -26
- /package/dist/preview/.next/static/{2pe0g3qnZD70MXuT6-2Ym → pNBnHRQCbkVzht0Z4AvT-}/_buildManifest.js +0 -0
- /package/dist/preview/.next/static/{2pe0g3qnZD70MXuT6-2Ym → pNBnHRQCbkVzht0Z4AvT-}/_clientMiddlewareManifest.json +0 -0
- /package/dist/preview/.next/static/{2pe0g3qnZD70MXuT6-2Ym → pNBnHRQCbkVzht0Z4AvT-}/_ssgManifest.js +0 -0
package/README.md
CHANGED
|
@@ -94,6 +94,30 @@ npx @envin/cli@latest dev
|
|
|
94
94
|
|
|
95
95
|
This will start a live preview server that will automatically update your environment variables when you change them allowing you to find and fix errors before deploying your app.
|
|
96
96
|
|
|
97
|
+
### CLI options
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
npx @envin/cli@latest dev [options]
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Options:
|
|
104
|
+
- `-c, --config <path>`: explicit path to `env.config.ts`
|
|
105
|
+
- `-e, --env <path...>`: path(s) to `.env` file(s) or directories
|
|
106
|
+
- `-p, --port <port>`: port to run the preview server (default: `3000`)
|
|
107
|
+
- `-v, --verbose`: enable verbose logging
|
|
108
|
+
- `--cascade`: enable workspace env/config cascading
|
|
109
|
+
|
|
110
|
+
#### Env loading behavior
|
|
111
|
+
|
|
112
|
+
When `--cascade` is enabled, the CLI:
|
|
113
|
+
- detects the workspace root by walking up from current working directory
|
|
114
|
+
- loads env files from the workspace root first, then the package directory, so package values override root values
|
|
115
|
+
- uses the following precedence within each directory:
|
|
116
|
+
- `.env` → `.env.local` → `.env.development` → `.env.development.local`
|
|
117
|
+
- `.env` → `.env.local` → `.env.production` → `.env.production.local`
|
|
118
|
+
|
|
119
|
+
If `-e` points to a single file, only that file is used. If `-e` points to a directory, only that directory is used. If multiple paths are provided, they must all be files or all be directories. Without `-e` or `--cascade`, the CLI uses the current working directory.
|
|
120
|
+
|
|
97
121
|
|
|
98
122
|
## Contributing
|
|
99
123
|
|
package/dist/cli/index.mjs
CHANGED
|
@@ -20,6 +20,27 @@ import { createMatchPath, loadConfig } from "tsconfig-paths";
|
|
|
20
20
|
//#region package.json
|
|
21
21
|
var version = "1.1.13";
|
|
22
22
|
|
|
23
|
+
//#endregion
|
|
24
|
+
//#region src/lib/types.ts
|
|
25
|
+
const Environment = {
|
|
26
|
+
DEVELOPMENT: "development",
|
|
27
|
+
PRODUCTION: "production"
|
|
28
|
+
};
|
|
29
|
+
const FILES = {
|
|
30
|
+
[Environment.DEVELOPMENT]: [
|
|
31
|
+
".env",
|
|
32
|
+
".env.local",
|
|
33
|
+
".env.development",
|
|
34
|
+
".env.development.local"
|
|
35
|
+
],
|
|
36
|
+
[Environment.PRODUCTION]: [
|
|
37
|
+
".env",
|
|
38
|
+
".env.local",
|
|
39
|
+
".env.production",
|
|
40
|
+
".env.production.local"
|
|
41
|
+
]
|
|
42
|
+
};
|
|
43
|
+
|
|
23
44
|
//#endregion
|
|
24
45
|
//#region src/cli/utils/logger.ts
|
|
25
46
|
const logger = createConsola({});
|
|
@@ -43,10 +64,13 @@ const registerSpinnerAutostopping = (spinner) => {
|
|
|
43
64
|
|
|
44
65
|
//#endregion
|
|
45
66
|
//#region src/cli/utils/preview/get-env-variables.ts
|
|
46
|
-
const getEnvVariablesForPreviewApp = (relativePathToEnvDirectory, cwd) => {
|
|
67
|
+
const getEnvVariablesForPreviewApp = (relativePathToEnvDirectory, cwd, envDirAbsolutePaths, envFilePaths, envConfigPath) => {
|
|
47
68
|
return {
|
|
48
69
|
ENV_DIR_RELATIVE_PATH: relativePathToEnvDirectory,
|
|
49
70
|
ENV_DIR_ABSOLUTE_PATH: path.resolve(cwd, relativePathToEnvDirectory),
|
|
71
|
+
ENV_DIR_ABSOLUTE_PATHS: JSON.stringify(envDirAbsolutePaths),
|
|
72
|
+
ENV_FILE_PATHS: JSON.stringify(envFilePaths),
|
|
73
|
+
ENV_CONFIG_PATH: envConfigPath,
|
|
50
74
|
USER_PROJECT_LOCATION: cwd,
|
|
51
75
|
NEXT_PUBLIC_IS_PREVIEW_DEVELOPMENT: isDev ? "true" : "false"
|
|
52
76
|
};
|
|
@@ -101,7 +125,7 @@ const dirname = path.dirname(filename);
|
|
|
101
125
|
const isDev = !filename.endsWith(path.join("cli", "index.mjs"));
|
|
102
126
|
const cliPackageLocation = isDev ? path.resolve(dirname, "../../../..") : path.resolve(dirname, "../..");
|
|
103
127
|
const previewServerLocation = isDev ? path.resolve(dirname, "../../../..") : path.resolve(dirname, "../preview");
|
|
104
|
-
const startDevServer = async ({ envDirRelativePath, staticBaseDirRelativePath, port, verbose }) => {
|
|
128
|
+
const startDevServer = async ({ envDirRelativePath, staticBaseDirRelativePath, envDirAbsolutePaths, envFilePaths, envConfigPath, port, verbose }) => {
|
|
105
129
|
const [majorNodeVersion] = process.versions.node.split(".");
|
|
106
130
|
if (majorNodeVersion && Number.parseInt(majorNodeVersion) < 18) {
|
|
107
131
|
logger.error(`Node ${majorNodeVersion} is not supported. Please upgrade to Node 18 or higher.`);
|
|
@@ -115,6 +139,9 @@ const startDevServer = async ({ envDirRelativePath, staticBaseDirRelativePath, p
|
|
|
115
139
|
if (verbose) logger.debug("Creating HTTP server...", {
|
|
116
140
|
envDirRelativePath,
|
|
117
141
|
staticBaseDirRelativePath,
|
|
142
|
+
envDirAbsolutePaths,
|
|
143
|
+
envFilePaths,
|
|
144
|
+
envConfigPath,
|
|
118
145
|
port
|
|
119
146
|
});
|
|
120
147
|
const parsedUrl = url.parse(req.url, true);
|
|
@@ -141,6 +168,9 @@ const startDevServer = async ({ envDirRelativePath, staticBaseDirRelativePath, p
|
|
|
141
168
|
return startDevServer({
|
|
142
169
|
envDirRelativePath,
|
|
143
170
|
staticBaseDirRelativePath,
|
|
171
|
+
envDirAbsolutePaths,
|
|
172
|
+
envFilePaths,
|
|
173
|
+
envConfigPath,
|
|
144
174
|
port: nextPortToTry,
|
|
145
175
|
verbose
|
|
146
176
|
});
|
|
@@ -161,7 +191,7 @@ const startDevServer = async ({ envDirRelativePath, staticBaseDirRelativePath, p
|
|
|
161
191
|
process.env = {
|
|
162
192
|
NODE_ENV: "development",
|
|
163
193
|
...process.env,
|
|
164
|
-
...getEnvVariablesForPreviewApp(path.normalize(envDirRelativePath), process.cwd())
|
|
194
|
+
...getEnvVariablesForPreviewApp(path.normalize(envDirRelativePath), process.cwd(), envDirAbsolutePaths, envFilePaths, envConfigPath)
|
|
165
195
|
};
|
|
166
196
|
const app = next({
|
|
167
197
|
dev: isDev,
|
|
@@ -480,7 +510,7 @@ const attachShutdownHandlers = (w, verbose) => {
|
|
|
480
510
|
process.on("SIGINT", exit);
|
|
481
511
|
process.on("uncaughtException", exit);
|
|
482
512
|
};
|
|
483
|
-
const setupHotreloading = async ({ devServer: devServer$1, envDirRelativePath, verbose }) => {
|
|
513
|
+
const setupHotreloading = async ({ devServer: devServer$1, envDirRelativePath, envDirAbsolutePaths, envFilePaths, verbose }) => {
|
|
484
514
|
if (verbose) logger.start("Initializing socket.io server for hot reloading...");
|
|
485
515
|
let clients = [];
|
|
486
516
|
new Server(devServer$1).on("connection", (client) => {
|
|
@@ -506,9 +536,10 @@ const setupHotreloading = async ({ devServer: devServer$1, envDirRelativePath, v
|
|
|
506
536
|
root: absolutePathToEnvDirectory
|
|
507
537
|
});
|
|
508
538
|
const watcher = await createEnvWatcher(absolutePathToEnvDirectory);
|
|
539
|
+
const existingExtraEnvFiles = (envFilePaths.length ? envFilePaths : envDirAbsolutePaths.flatMap((dir) => [...FILES[Environment.DEVELOPMENT], ...FILES[Environment.PRODUCTION]].map((file) => path.join(dir, file)))).filter((filePath) => fs.existsSync(filePath));
|
|
509
540
|
const getFilesOutsideEnvDirectory = () => Object.keys(dependencyGraph).filter((p) => path.relative(absolutePathToEnvDirectory, p).startsWith(".."));
|
|
510
541
|
let filesOutsideEnvDirectory = getFilesOutsideEnvDirectory();
|
|
511
|
-
addExternalFilesToWatcher(watcher, filesOutsideEnvDirectory);
|
|
542
|
+
addExternalFilesToWatcher(watcher, [...filesOutsideEnvDirectory, ...existingExtraEnvFiles]);
|
|
512
543
|
attachShutdownHandlers(watcher, verbose);
|
|
513
544
|
watcher.on("all", async (event, relativePathToChangeTarget) => {
|
|
514
545
|
if (verbose) logger.debug("File system event", {
|
|
@@ -537,27 +568,128 @@ const setupHotreloading = async ({ devServer: devServer$1, envDirRelativePath, v
|
|
|
537
568
|
|
|
538
569
|
//#endregion
|
|
539
570
|
//#region src/cli/commands/dev.ts
|
|
540
|
-
const
|
|
571
|
+
const WORKSPACE_ROOT_FILE_MARKERS = [
|
|
572
|
+
"pnpm-workspace.yaml",
|
|
573
|
+
"turbo.json",
|
|
574
|
+
"nx.json",
|
|
575
|
+
"lerna.json",
|
|
576
|
+
"rush.json",
|
|
577
|
+
"WORKSPACE",
|
|
578
|
+
"WORKSPACE.bazel"
|
|
579
|
+
];
|
|
580
|
+
const findWorkspaceRoot = (startDir) => {
|
|
581
|
+
const readPackageJson = (candidateDir) => {
|
|
582
|
+
try {
|
|
583
|
+
const packageJsonPath = path.join(candidateDir, "package.json");
|
|
584
|
+
if (!fs.existsSync(packageJsonPath)) return null;
|
|
585
|
+
const raw = fs.readFileSync(packageJsonPath, "utf8");
|
|
586
|
+
return JSON.parse(raw);
|
|
587
|
+
} catch {
|
|
588
|
+
return null;
|
|
589
|
+
}
|
|
590
|
+
};
|
|
591
|
+
const hasWorkspacePackageJson = (candidateDir) => {
|
|
592
|
+
const parsed = readPackageJson(candidateDir);
|
|
593
|
+
return Boolean(parsed?.workspaces);
|
|
594
|
+
};
|
|
595
|
+
const hasWorkspaceMarkers = (candidateDir) => WORKSPACE_ROOT_FILE_MARKERS.some((marker) => fs.existsSync(path.join(candidateDir, marker))) || hasWorkspacePackageJson(candidateDir);
|
|
596
|
+
const hasMonorepoFolderHints = (candidateDir) => {
|
|
597
|
+
const hasApps = fs.existsSync(path.join(candidateDir, "apps"));
|
|
598
|
+
const hasPackages = fs.existsSync(path.join(candidateDir, "packages"));
|
|
599
|
+
const packageJson = readPackageJson(candidateDir);
|
|
600
|
+
return (hasApps || hasPackages) && Boolean(packageJson?.private ?? false);
|
|
601
|
+
};
|
|
602
|
+
let currentDir = startDir;
|
|
603
|
+
let bestCandidate = null;
|
|
604
|
+
while (true) {
|
|
605
|
+
if (hasWorkspaceMarkers(currentDir)) return currentDir;
|
|
606
|
+
if (hasMonorepoFolderHints(currentDir)) bestCandidate = currentDir;
|
|
607
|
+
const parentDir = path.dirname(currentDir);
|
|
608
|
+
if (parentDir === currentDir || fs.existsSync(path.join(currentDir, ".git")) || fs.existsSync(path.join(currentDir, "node_modules"))) return bestCandidate ?? startDir;
|
|
609
|
+
currentDir = parentDir;
|
|
610
|
+
}
|
|
611
|
+
};
|
|
612
|
+
const uniquePaths = (paths) => {
|
|
613
|
+
const seen = /* @__PURE__ */ new Set();
|
|
614
|
+
return paths.filter((candidate) => {
|
|
615
|
+
const normalized = path.normalize(candidate);
|
|
616
|
+
if (seen.has(normalized)) return false;
|
|
617
|
+
seen.add(normalized);
|
|
618
|
+
return true;
|
|
619
|
+
});
|
|
620
|
+
};
|
|
621
|
+
const dev = async ({ config, env, cascade = false, port, verbose }) => {
|
|
541
622
|
try {
|
|
542
623
|
if (verbose) logger.debug("Starting dev command...", {
|
|
543
624
|
cwd: process.cwd(),
|
|
544
|
-
|
|
625
|
+
config,
|
|
626
|
+
env,
|
|
627
|
+
cascade,
|
|
545
628
|
port
|
|
546
629
|
});
|
|
547
|
-
|
|
548
|
-
|
|
630
|
+
const cwd = process.cwd();
|
|
631
|
+
const resolveFromCwd = (targetPath) => path.isAbsolute(targetPath) ? targetPath : path.resolve(cwd, targetPath);
|
|
632
|
+
const workspaceRoot = findWorkspaceRoot(cwd);
|
|
633
|
+
let envFilePaths = [];
|
|
634
|
+
let envDirPaths = [];
|
|
635
|
+
let primaryEnvDir = cwd;
|
|
636
|
+
if (env && env.length > 0) {
|
|
637
|
+
const resolvedEnvPaths = (Array.isArray(env) ? env : [env]).map(resolveFromCwd);
|
|
638
|
+
const missingPath = resolvedEnvPaths.find((resolvedEnvPath) => !fs.existsSync(resolvedEnvPath));
|
|
639
|
+
if (missingPath) {
|
|
640
|
+
logger.error(`Missing ${missingPath} path!`);
|
|
641
|
+
process.exit(1);
|
|
642
|
+
}
|
|
643
|
+
const directories = resolvedEnvPaths.filter((resolvedEnvPath) => fs.statSync(resolvedEnvPath).isDirectory());
|
|
644
|
+
const files = resolvedEnvPaths.filter((resolvedEnvPath) => !fs.statSync(resolvedEnvPath).isDirectory());
|
|
645
|
+
if (directories.length > 0 && files.length > 0) {
|
|
646
|
+
logger.error("Multiple --env paths must be all files or all directories.");
|
|
647
|
+
process.exit(1);
|
|
648
|
+
}
|
|
649
|
+
if (directories.length > 0) {
|
|
650
|
+
envDirPaths = directories;
|
|
651
|
+
primaryEnvDir = directories[directories.length - 1] ?? cwd;
|
|
652
|
+
} else {
|
|
653
|
+
envFilePaths = files;
|
|
654
|
+
primaryEnvDir = path.dirname(files[0] ?? cwd);
|
|
655
|
+
}
|
|
656
|
+
} else if (cascade) {
|
|
657
|
+
envDirPaths = uniquePaths([workspaceRoot, cwd]);
|
|
658
|
+
primaryEnvDir = envDirPaths[envDirPaths.length - 1] ?? cwd;
|
|
659
|
+
} else {
|
|
660
|
+
envDirPaths = [cwd];
|
|
661
|
+
primaryEnvDir = cwd;
|
|
662
|
+
}
|
|
663
|
+
const resolvedEnvDirRelativePath = path.relative(cwd, primaryEnvDir) || ".";
|
|
664
|
+
if (!fs.existsSync(primaryEnvDir)) {
|
|
665
|
+
logger.error(`Missing ${primaryEnvDir} folder!`);
|
|
666
|
+
process.exit(1);
|
|
667
|
+
}
|
|
668
|
+
const resolveConfigPath = () => {
|
|
669
|
+
if (config) return resolveFromCwd(config);
|
|
670
|
+
if (!cascade) return path.join(primaryEnvDir, "env.config.ts");
|
|
671
|
+
return uniquePaths([path.join(primaryEnvDir, "env.config.ts"), path.join(workspaceRoot, "env.config.ts")]).find((candidate) => fs.existsSync(candidate));
|
|
672
|
+
};
|
|
673
|
+
const resolvedConfigPath = resolveConfigPath();
|
|
674
|
+
if (!resolvedConfigPath || !fs.existsSync(resolvedConfigPath)) {
|
|
675
|
+
logger.error("Missing env.config.ts file!");
|
|
549
676
|
process.exit(1);
|
|
550
677
|
}
|
|
551
678
|
const devServer$1 = await startDevServer({
|
|
552
|
-
envDirRelativePath,
|
|
553
|
-
staticBaseDirRelativePath:
|
|
679
|
+
envDirRelativePath: resolvedEnvDirRelativePath,
|
|
680
|
+
staticBaseDirRelativePath: resolvedEnvDirRelativePath,
|
|
681
|
+
envDirAbsolutePaths: envDirPaths.length ? envDirPaths : [primaryEnvDir],
|
|
682
|
+
envFilePaths,
|
|
683
|
+
envConfigPath: resolvedConfigPath,
|
|
554
684
|
port: Number.parseInt(port),
|
|
555
685
|
verbose
|
|
556
686
|
});
|
|
557
687
|
if (verbose) logger.start("Dev server started, setting up hot reloading...");
|
|
558
688
|
await setupHotreloading({
|
|
559
689
|
devServer: devServer$1,
|
|
560
|
-
envDirRelativePath,
|
|
690
|
+
envDirRelativePath: resolvedEnvDirRelativePath,
|
|
691
|
+
envDirAbsolutePaths: envDirPaths.length ? envDirPaths : [primaryEnvDir],
|
|
692
|
+
envFilePaths,
|
|
561
693
|
verbose
|
|
562
694
|
});
|
|
563
695
|
if (verbose) logger.success("Hot reloading setup complete");
|
|
@@ -570,7 +702,7 @@ const dev = async ({ dir: envDirRelativePath, port, verbose }) => {
|
|
|
570
702
|
//#endregion
|
|
571
703
|
//#region src/cli/index.ts
|
|
572
704
|
program.name("@envin/cli").description("A live preview of your environment variables right in your browser").version(version);
|
|
573
|
-
program.command("dev").description("Starts the live preview of your environment variables").option("-
|
|
705
|
+
program.command("dev").description("Starts the live preview of your environment variables").option("-c, --config <path>", "Path to env.config.ts").option("-e, --env <path...>", "Path(s) to .env file(s) or directories").option("--cascade", "Enable workspace env/config cascading", false).option("-p --port <port>", "Port to run dev server on", "3000").option("-v, --verbose", "Enable verbose logging", false).action(dev);
|
|
574
706
|
program.parse();
|
|
575
707
|
|
|
576
708
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
pNBnHRQCbkVzht0Z4AvT-
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
"static/chunks/a6dad97d9634a72d.js"
|
|
8
8
|
],
|
|
9
9
|
"lowPriorityFiles": [
|
|
10
|
-
"static/
|
|
11
|
-
"static/
|
|
10
|
+
"static/pNBnHRQCbkVzht0Z4AvT-/_ssgManifest.js",
|
|
11
|
+
"static/pNBnHRQCbkVzht0Z4AvT-/_buildManifest.js"
|
|
12
12
|
],
|
|
13
13
|
"rootMainFiles": [
|
|
14
14
|
"static/chunks/cbd55ab9639e1e66.js",
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
"devFiles": [],
|
|
6
6
|
"polyfillFiles": [],
|
|
7
7
|
"lowPriorityFiles": [
|
|
8
|
-
"static/
|
|
9
|
-
"static/
|
|
8
|
+
"static/pNBnHRQCbkVzht0Z4AvT-/_ssgManifest.js",
|
|
9
|
+
"static/pNBnHRQCbkVzht0Z4AvT-/_buildManifest.js"
|
|
10
10
|
],
|
|
11
11
|
"rootMainFiles": []
|
|
12
12
|
}
|
|
@@ -86,8 +86,8 @@
|
|
|
86
86
|
"dynamicRoutes": {},
|
|
87
87
|
"notFoundRoutes": [],
|
|
88
88
|
"preview": {
|
|
89
|
-
"previewModeId": "
|
|
90
|
-
"previewModeSigningKey": "
|
|
91
|
-
"previewModeEncryptionKey": "
|
|
89
|
+
"previewModeId": "5b682ce93be1f953bc31c5216e9966c8",
|
|
90
|
+
"previewModeSigningKey": "0f74bcd92355db31801cdc5a2527c27192da4c6de44a52de639762e8c813ad01",
|
|
91
|
+
"previewModeEncryptionKey": "3b9e2c09c96163542cade2af6cded14735a14001a7133b6befdba1d1073277d1"
|
|
92
92
|
}
|
|
93
93
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
<!DOCTYPE html><!--
|
|
2
|
-
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/cbd55ab9639e1e66.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"ViewportBoundary\"]\n9:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"MetadataBoundary\"]\nb:I[68027,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"
|
|
1
|
+
<!DOCTYPE html><!--pNBnHRQCbkVzht0Z4AvT_--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/cbd55ab9639e1e66.js"/><script src="/_next/static/chunks/bd4ab1517efdc1c3.js" async=""></script><script src="/_next/static/chunks/edda14529ded6063.js" async=""></script><script src="/_next/static/chunks/73ff44ecd0b4dad4.js" async=""></script><script src="/_next/static/chunks/turbopack-3a0f146c672debbd.js" async=""></script><script src="/_next/static/chunks/82d7580f2e728405.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: Internal Server Error.</title><link rel="icon" href="/favicon.ico?favicon.5e7f5916.ico" sizes="24x24" type="image/x-icon"/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
|
|
2
|
+
@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/cbd55ab9639e1e66.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"ViewportBoundary\"]\n9:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"MetadataBoundary\"]\nb:I[68027,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"pNBnHRQCbkVzht0Z4AvT-\",\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"title\",null,{\"children\":\"500: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L7\",null,{\"children\":\"$@8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$@a\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"c:I[27201,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"IconMark\"]\na:[[\"$\",\"link\",\"0\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.5e7f5916.ico\",\"sizes\":\"24x24\",\"type\":\"image/x-icon\"}],[\"$\",\"$Lc\",\"1\",{}]]\n6:null\n"])</script></body></html>
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
7:I[97367,["/_next/static/chunks/82d7580f2e728405.js"],"ViewportBoundary"]
|
|
7
7
|
9:I[97367,["/_next/static/chunks/82d7580f2e728405.js"],"MetadataBoundary"]
|
|
8
8
|
b:I[68027,["/_next/static/chunks/82d7580f2e728405.js"],"default"]
|
|
9
|
-
0:{"P":null,"b":"
|
|
9
|
+
0:{"P":null,"b":"pNBnHRQCbkVzht0Z4AvT-","c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":["$","title",null,{"children":"500: Internal Server Error."}]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"lineHeight":"48px"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","paddingRight":23,"fontSize":24,"fontWeight":500,"verticalAlign":"top"},"children":"500"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"28px"},"children":"Internal Server Error."}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$L7",null,{"children":"$@8"}],["$","div",null,{"hidden":true,"children":["$","$L9",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$@a"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$b","$undefined"],"S":true}
|
|
10
10
|
8:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
11
11
|
c:I[27201,["/_next/static/chunks/82d7580f2e728405.js"],"IconMark"]
|
|
12
12
|
a:[["$","link","0",{"rel":"icon","href":"/favicon.ico?favicon.5e7f5916.ico","sizes":"24x24","type":"image/x-icon"}],["$","$Lc","1",{}]]
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[97367,["/_next/static/chunks/82d7580f2e728405.js"],"OutletBoundary"]
|
|
3
3
|
3:"$Sreact.suspense"
|
|
4
|
-
0:{"buildId":"
|
|
4
|
+
0:{"buildId":"pNBnHRQCbkVzht0Z4AvT-","rsc":["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":["$","title",null,{"children":"500: Internal Server Error."}]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"lineHeight":"48px"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","paddingRight":23,"fontSize":24,"fontWeight":500,"verticalAlign":"top"},"children":"500"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"28px"},"children":"Internal Server Error."}]}]]}]}]}]]}],null,["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"loading":null,"isPartial":false}
|
|
5
5
|
4:null
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
7:I[97367,["/_next/static/chunks/82d7580f2e728405.js"],"ViewportBoundary"]
|
|
7
7
|
9:I[97367,["/_next/static/chunks/82d7580f2e728405.js"],"MetadataBoundary"]
|
|
8
8
|
b:I[68027,["/_next/static/chunks/82d7580f2e728405.js"],"default"]
|
|
9
|
-
0:{"P":null,"b":"
|
|
9
|
+
0:{"P":null,"b":"pNBnHRQCbkVzht0Z4AvT-","c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":["$","title",null,{"children":"500: Internal Server Error."}]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"lineHeight":"48px"},"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","paddingRight":23,"fontSize":24,"fontWeight":500,"verticalAlign":"top"},"children":"500"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"28px"},"children":"Internal Server Error."}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$L7",null,{"children":"$@8"}],["$","div",null,{"hidden":true,"children":["$","$L9",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$@a"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$b","$undefined"],"S":true}
|
|
10
10
|
8:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
11
11
|
c:I[27201,["/_next/static/chunks/82d7580f2e728405.js"],"IconMark"]
|
|
12
12
|
a:[["$","link","0",{"rel":"icon","href":"/favicon.ico?favicon.5e7f5916.ico","sizes":"24x24","type":"image/x-icon"}],["$","$Lc","1",{}]]
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
4:I[97367,["/_next/static/chunks/82d7580f2e728405.js"],"MetadataBoundary"]
|
|
4
4
|
5:"$Sreact.suspense"
|
|
5
5
|
7:I[27201,["/_next/static/chunks/82d7580f2e728405.js"],"IconMark"]
|
|
6
|
-
0:{"buildId":"
|
|
6
|
+
0:{"buildId":"pNBnHRQCbkVzht0Z4AvT-","rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":"$@3"}],["$","div",null,{"hidden":true,"children":["$","$L4",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$@6"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"loading":null,"isPartial":false}
|
|
7
7
|
3:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
8
8
|
6:[["$","link","0",{"rel":"icon","href":"/favicon.ico?favicon.5e7f5916.ico","sizes":"24x24","type":"image/x-icon"}],["$","$L7","1",{}]]
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[39756,["/_next/static/chunks/82d7580f2e728405.js"],"default"]
|
|
3
3
|
3:I[37457,["/_next/static/chunks/82d7580f2e728405.js"],"default"]
|
|
4
|
-
0:{"buildId":"
|
|
4
|
+
0:{"buildId":"pNBnHRQCbkVzht0Z4AvT-","rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"loading":null,"isPartial":false}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
0:{"buildId":"
|
|
1
|
+
0:{"buildId":"pNBnHRQCbkVzht0Z4AvT-","tree":{"name":"","paramType":null,"paramKey":"","hasRuntimePrefetch":false,"slots":{"children":{"name":"__PAGE__","paramType":null,"paramKey":"__PAGE__","hasRuntimePrefetch":false,"slots":null,"isRootLayout":false}},"isRootLayout":false},"staleTime":300}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><!--2pe0g3qnZD70MXuT6_2Ym--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/30d1403f7c74b0a8.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/cbd55ab9639e1e66.js"/><script src="/_next/static/chunks/bd4ab1517efdc1c3.js" async=""></script><script src="/_next/static/chunks/edda14529ded6063.js" async=""></script><script src="/_next/static/chunks/73ff44ecd0b4dad4.js" async=""></script><script src="/_next/static/chunks/turbopack-3a0f146c672debbd.js" async=""></script><script src="/_next/static/chunks/82d7580f2e728405.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>Envin</title><meta name="description" content="Framework-agnostic, type-safe tool to validate and preview your environment variables—powered by your favorite schema validator."/><link rel="icon" href="/favicon.ico?favicon.5e7f5916.ico" sizes="24x24" type="image/x-icon"/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="geist_f15bd114-module__7725RG__variable geist_mono_6ed36146-module__KdPPOG__variable antialiased"><div hidden=""><!--$--><!--/$--></div><div class="flex flex-col h-full gap-4 py-6 px-8"><header class="flex items-center gap-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shrub size-11 text-primary" aria-hidden="true"><path d="M12 22v-5.172a2 2 0 0 0-.586-1.414L9.5 13.5"></path><path d="M14.5 14.5 12 17"></path><path d="M17 8.8A6 6 0 0 1 13.8 20H10A6.5 6.5 0 0 1 7 8a5 5 0 0 1 10 0z"></path></svg><div class="flex flex-col"><h1 class="text-2xl font-bold">Envin</h1><p class="text-sm text-muted-foreground">Manage environment variables for your project. Validate and set them up in seconds.</p></div></header><main class="flex flex-col gap-4 min-h-0 h-full"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--></main></div><script src="/_next/static/chunks/cbd55ab9639e1e66.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"ViewportBoundary\"]\n9:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"MetadataBoundary\"]\nb:I[68027,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n:HL[\"/_next/static/chunks/30d1403f7c74b0a8.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"2pe0g3qnZD70MXuT6-2Ym\",\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/30d1403f7c74b0a8.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"geist_f15bd114-module__7725RG__variable geist_mono_6ed36146-module__KdPPOG__variable antialiased\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"div\",null,{\"className\":\"flex flex-col h-full gap-4 py-6 px-8\",\"children\":[[\"$\",\"header\",null,{\"className\":\"flex items-center gap-3\",\"children\":[[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-shrub size-11 text-primary\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",\"1p17fm\",{\"d\":\"M12 22v-5.172a2 2 0 0 0-.586-1.414L9.5 13.5\"}],[\"$\",\"path\",\"dy5w4y\",{\"d\":\"M14.5 14.5 12 17\"}],[\"$\",\"path\",\"6z7b3o\",{\"d\":\"M17 8.8A6 6 0 0 1 13.8 20H10A6.5 6.5 0 0 1 7 8a5 5 0 0 1 10 0z\"}],\"$undefined\"]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col\",\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-2xl font-bold\",\"children\":\"Envin\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-muted-foreground\",\"children\":\"Manage environment variables for your project. Validate and set them up in seconds.\"}]]}]]}],[\"$\",\"main\",null,{\"className\":\"flex flex-col gap-4 min-h-0 h-full\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L7\",null,{\"children\":\"$@8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$@a\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"c:I[27201,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"IconMark\"]\na:[[\"$\",\"title\",\"0\",{\"children\":\"Envin\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Framework-agnostic, type-safe tool to validate and preview your environment variables—powered by your favorite schema validator.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.5e7f5916.ico\",\"sizes\":\"24x24\",\"type\":\"image/x-icon\"}],[\"$\",\"$Lc\",\"3\",{}]]\n6:null\n"])</script></body></html>
|
|
1
|
+
<!DOCTYPE html><!--pNBnHRQCbkVzht0Z4AvT_--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/30d1403f7c74b0a8.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/cbd55ab9639e1e66.js"/><script src="/_next/static/chunks/bd4ab1517efdc1c3.js" async=""></script><script src="/_next/static/chunks/edda14529ded6063.js" async=""></script><script src="/_next/static/chunks/73ff44ecd0b4dad4.js" async=""></script><script src="/_next/static/chunks/turbopack-3a0f146c672debbd.js" async=""></script><script src="/_next/static/chunks/82d7580f2e728405.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>Envin</title><meta name="description" content="Framework-agnostic, type-safe tool to validate and preview your environment variables—powered by your favorite schema validator."/><link rel="icon" href="/favicon.ico?favicon.5e7f5916.ico" sizes="24x24" type="image/x-icon"/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="geist_f15bd114-module__7725RG__variable geist_mono_6ed36146-module__KdPPOG__variable antialiased"><div hidden=""><!--$--><!--/$--></div><div class="flex flex-col h-full gap-4 py-6 px-8"><header class="flex items-center gap-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shrub size-11 text-primary" aria-hidden="true"><path d="M12 22v-5.172a2 2 0 0 0-.586-1.414L9.5 13.5"></path><path d="M14.5 14.5 12 17"></path><path d="M17 8.8A6 6 0 0 1 13.8 20H10A6.5 6.5 0 0 1 7 8a5 5 0 0 1 10 0z"></path></svg><div class="flex flex-col"><h1 class="text-2xl font-bold">Envin</h1><p class="text-sm text-muted-foreground">Manage environment variables for your project. Validate and set them up in seconds.</p></div></header><main class="flex flex-col gap-4 min-h-0 h-full"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--></main></div><script src="/_next/static/chunks/cbd55ab9639e1e66.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"ViewportBoundary\"]\n9:I[97367,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"MetadataBoundary\"]\nb:I[68027,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"default\"]\n:HL[\"/_next/static/chunks/30d1403f7c74b0a8.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"pNBnHRQCbkVzht0Z4AvT-\",\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/30d1403f7c74b0a8.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"geist_f15bd114-module__7725RG__variable geist_mono_6ed36146-module__KdPPOG__variable antialiased\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"div\",null,{\"className\":\"flex flex-col h-full gap-4 py-6 px-8\",\"children\":[[\"$\",\"header\",null,{\"className\":\"flex items-center gap-3\",\"children\":[[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-shrub size-11 text-primary\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",\"1p17fm\",{\"d\":\"M12 22v-5.172a2 2 0 0 0-.586-1.414L9.5 13.5\"}],[\"$\",\"path\",\"dy5w4y\",{\"d\":\"M14.5 14.5 12 17\"}],[\"$\",\"path\",\"6z7b3o\",{\"d\":\"M17 8.8A6 6 0 0 1 13.8 20H10A6.5 6.5 0 0 1 7 8a5 5 0 0 1 10 0z\"}],\"$undefined\"]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col\",\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-2xl font-bold\",\"children\":\"Envin\"}],[\"$\",\"p\",null,{\"className\":\"text-sm text-muted-foreground\",\"children\":\"Manage environment variables for your project. Validate and set them up in seconds.\"}]]}]]}],[\"$\",\"main\",null,{\"className\":\"flex flex-col gap-4 min-h-0 h-full\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L7\",null,{\"children\":\"$@8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$@a\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"c:I[27201,[\"/_next/static/chunks/82d7580f2e728405.js\"],\"IconMark\"]\na:[[\"$\",\"title\",\"0\",{\"children\":\"Envin\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Framework-agnostic, type-safe tool to validate and preview your environment variables—powered by your favorite schema validator.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.5e7f5916.ico\",\"sizes\":\"24x24\",\"type\":\"image/x-icon\"}],[\"$\",\"$Lc\",\"3\",{}]]\n6:null\n"])</script></body></html>
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
9:I[97367,["/_next/static/chunks/82d7580f2e728405.js"],"MetadataBoundary"]
|
|
8
8
|
b:I[68027,["/_next/static/chunks/82d7580f2e728405.js"],"default"]
|
|
9
9
|
:HL["/_next/static/chunks/30d1403f7c74b0a8.css","style"]
|
|
10
|
-
0:{"P":null,"b":"
|
|
10
|
+
0:{"P":null,"b":"pNBnHRQCbkVzht0Z4AvT-","c":["","_not-found"],"q":"","i":false,"f":[[["",{"children":["/_not-found",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/30d1403f7c74b0a8.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"className":"geist_f15bd114-module__7725RG__variable geist_mono_6ed36146-module__KdPPOG__variable antialiased","suppressHydrationWarning":true,"children":["$","div",null,{"className":"flex flex-col h-full gap-4 py-6 px-8","children":[["$","header",null,{"className":"flex items-center gap-3","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-shrub size-11 text-primary","aria-hidden":"true","children":[["$","path","1p17fm",{"d":"M12 22v-5.172a2 2 0 0 0-.586-1.414L9.5 13.5"}],["$","path","dy5w4y",{"d":"M14.5 14.5 12 17"}],["$","path","6z7b3o",{"d":"M17 8.8A6 6 0 0 1 13.8 20H10A6.5 6.5 0 0 1 7 8a5 5 0 0 1 10 0z"}],"$undefined"]}],["$","div",null,{"className":"flex flex-col","children":[["$","h1",null,{"className":"text-2xl font-bold","children":"Envin"}],["$","p",null,{"className":"text-sm text-muted-foreground","children":"Manage environment variables for your project. Validate and set them up in seconds."}]]}]]}],["$","main",null,{"className":"flex flex-col gap-4 min-h-0 h-full","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]}]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$L7",null,{"children":"$@8"}],["$","div",null,{"hidden":true,"children":["$","$L9",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$@a"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$b","$undefined"],"S":true}
|
|
11
11
|
8:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
12
12
|
c:I[27201,["/_next/static/chunks/82d7580f2e728405.js"],"IconMark"]
|
|
13
13
|
a:[["$","title","0",{"children":"Envin"}],["$","meta","1",{"name":"description","content":"Framework-agnostic, type-safe tool to validate and preview your environment variables—powered by your favorite schema validator."}],["$","link","2",{"rel":"icon","href":"/favicon.ico?favicon.5e7f5916.ico","sizes":"24x24","type":"image/x-icon"}],["$","$Lc","3",{}]]
|