@cedarjs/project-config 6.0.0-canary.2818 → 6.0.0-canary.2819
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/dist/cjs/envVars.d.ts +32 -0
- package/dist/cjs/envVars.d.ts.map +1 -0
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +24 -0
- package/dist/envVars.d.ts +32 -0
- package/dist/envVars.d.ts.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -0
- package/package.json +2 -2
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
interface ReadEnvVarOptions {
|
|
2
|
+
/**
|
|
3
|
+
* The pre-fork `REDWOOD_`-prefixed name for this env var. Still read, so
|
|
4
|
+
* projects don't break on upgrade, but the `CEDAR_`-prefixed name wins.
|
|
5
|
+
*/
|
|
6
|
+
deprecatedAlias: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Read an env var that was renamed when Cedar forked from Redwood.
|
|
10
|
+
*
|
|
11
|
+
* The `CEDAR_`-prefixed name wins. The `REDWOOD_`-prefixed one keeps working
|
|
12
|
+
* so existing projects don't break on upgrade.
|
|
13
|
+
*
|
|
14
|
+
* Empty strings are treated as unset, matching how a `.env` file with a blank
|
|
15
|
+
* value behaves.
|
|
16
|
+
*/
|
|
17
|
+
export declare function readEnvVar(name: string, { deprecatedAlias }: ReadEnvVarOptions): string | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* Parse a port from an env var, rejecting anything that isn't a usable port.
|
|
20
|
+
*
|
|
21
|
+
* `parseInt` alone is not enough here: it stops at the first non-digit, so
|
|
22
|
+
* `"8080abc"` would become `8080` and `"1.5"` would become `1`. Silently
|
|
23
|
+
* binding a port the user didn't ask for is how a deployment ends up
|
|
24
|
+
* unreachable, so the whole value has to look like an integer.
|
|
25
|
+
*
|
|
26
|
+
* Out-of-range values are rejected here too, so a bad env var is reported as
|
|
27
|
+
* a bad env var rather than surfacing later as a `ERR_SOCKET_BAD_PORT` from
|
|
28
|
+
* `listen()`. Port 0 is allowed — it means "pick a free port".
|
|
29
|
+
*/
|
|
30
|
+
export declare function parsePort(value: string, envVarName: string): number;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=envVars.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"envVars.d.ts","sourceRoot":"","sources":["../../src/envVars.ts"],"names":[],"mappings":"AAAA,UAAU,iBAAiB;IACzB;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,EAAE,eAAe,EAAE,EAAE,iBAAiB,GACrC,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAkBnE"}
|
package/dist/cjs/index.d.ts
CHANGED
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AACrC,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,uBAAuB,CAAA;AACrC,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -54,10 +54,12 @@ __export(index_exports, {
|
|
|
54
54
|
importStatementPath: () => importStatementPath,
|
|
55
55
|
isTypeScriptProject: () => isTypeScriptProject,
|
|
56
56
|
loadPrismaConfig: () => loadPrismaConfig,
|
|
57
|
+
parsePort: () => parsePort,
|
|
57
58
|
processPagesDir: () => processPagesDir,
|
|
58
59
|
projectIsEsm: () => projectIsEsm,
|
|
59
60
|
projectRootIsEsm: () => projectRootIsEsm,
|
|
60
61
|
projectSideIsEsm: () => projectSideIsEsm,
|
|
62
|
+
readEnvVar: () => readEnvVar,
|
|
61
63
|
resolveFile: () => resolveFile,
|
|
62
64
|
resolveGeneratedPrismaClient: () => resolveGeneratedPrismaClient
|
|
63
65
|
});
|
|
@@ -213,6 +215,26 @@ function getRawConfig(configPath = getConfigPath()) {
|
|
|
213
215
|
}
|
|
214
216
|
}
|
|
215
217
|
|
|
218
|
+
// src/envVars.ts
|
|
219
|
+
function readEnvVar(name, { deprecatedAlias }) {
|
|
220
|
+
return process.env[name] || process.env[deprecatedAlias] || void 0;
|
|
221
|
+
}
|
|
222
|
+
function parsePort(value, envVarName) {
|
|
223
|
+
const trimmed = value.trim();
|
|
224
|
+
if (!/^\d+$/.test(trimmed)) {
|
|
225
|
+
throw new Error(
|
|
226
|
+
`Invalid ${envVarName} env var value: "${value}". Must be an integer.`
|
|
227
|
+
);
|
|
228
|
+
}
|
|
229
|
+
const port = Number(trimmed);
|
|
230
|
+
if (port > 65535) {
|
|
231
|
+
throw new Error(
|
|
232
|
+
`Invalid ${envVarName} env var value: "${value}". Must be between 0 and 65535.`
|
|
233
|
+
);
|
|
234
|
+
}
|
|
235
|
+
return port;
|
|
236
|
+
}
|
|
237
|
+
|
|
216
238
|
// src/generatedDataDir.ts
|
|
217
239
|
var import_node_fs3 = __toESM(require("node:fs"), 1);
|
|
218
240
|
var import_node_path = __toESM(require("node:path"), 1);
|
|
@@ -656,10 +678,12 @@ function getEnvVarDefinitions() {
|
|
|
656
678
|
importStatementPath,
|
|
657
679
|
isTypeScriptProject,
|
|
658
680
|
loadPrismaConfig,
|
|
681
|
+
parsePort,
|
|
659
682
|
processPagesDir,
|
|
660
683
|
projectIsEsm,
|
|
661
684
|
projectRootIsEsm,
|
|
662
685
|
projectSideIsEsm,
|
|
686
|
+
readEnvVar,
|
|
663
687
|
resolveFile,
|
|
664
688
|
resolveGeneratedPrismaClient
|
|
665
689
|
});
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
interface ReadEnvVarOptions {
|
|
2
|
+
/**
|
|
3
|
+
* The pre-fork `REDWOOD_`-prefixed name for this env var. Still read, so
|
|
4
|
+
* projects don't break on upgrade, but the `CEDAR_`-prefixed name wins.
|
|
5
|
+
*/
|
|
6
|
+
deprecatedAlias: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Read an env var that was renamed when Cedar forked from Redwood.
|
|
10
|
+
*
|
|
11
|
+
* The `CEDAR_`-prefixed name wins. The `REDWOOD_`-prefixed one keeps working
|
|
12
|
+
* so existing projects don't break on upgrade.
|
|
13
|
+
*
|
|
14
|
+
* Empty strings are treated as unset, matching how a `.env` file with a blank
|
|
15
|
+
* value behaves.
|
|
16
|
+
*/
|
|
17
|
+
export declare function readEnvVar(name: string, { deprecatedAlias }: ReadEnvVarOptions): string | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* Parse a port from an env var, rejecting anything that isn't a usable port.
|
|
20
|
+
*
|
|
21
|
+
* `parseInt` alone is not enough here: it stops at the first non-digit, so
|
|
22
|
+
* `"8080abc"` would become `8080` and `"1.5"` would become `1`. Silently
|
|
23
|
+
* binding a port the user didn't ask for is how a deployment ends up
|
|
24
|
+
* unreachable, so the whole value has to look like an integer.
|
|
25
|
+
*
|
|
26
|
+
* Out-of-range values are rejected here too, so a bad env var is reported as
|
|
27
|
+
* a bad env var rather than surfacing later as a `ERR_SOCKET_BAD_PORT` from
|
|
28
|
+
* `listen()`. Port 0 is allowed — it means "pick a free port".
|
|
29
|
+
*/
|
|
30
|
+
export declare function parsePort(value: string, envVarName: string): number;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=envVars.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"envVars.d.ts","sourceRoot":"","sources":["../src/envVars.ts"],"names":[],"mappings":"AAAA,UAAU,iBAAiB;IACzB;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,EAAE,eAAe,EAAE,EAAE,iBAAiB,GACrC,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAkBnE"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AACrC,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,uBAAuB,CAAA;AACrC,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -148,6 +148,26 @@ function getRawConfig(configPath = getConfigPath()) {
|
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
150
|
|
|
151
|
+
// src/envVars.ts
|
|
152
|
+
function readEnvVar(name, { deprecatedAlias }) {
|
|
153
|
+
return process.env[name] || process.env[deprecatedAlias] || void 0;
|
|
154
|
+
}
|
|
155
|
+
function parsePort(value, envVarName) {
|
|
156
|
+
const trimmed = value.trim();
|
|
157
|
+
if (!/^\d+$/.test(trimmed)) {
|
|
158
|
+
throw new Error(
|
|
159
|
+
`Invalid ${envVarName} env var value: "${value}". Must be an integer.`
|
|
160
|
+
);
|
|
161
|
+
}
|
|
162
|
+
const port = Number(trimmed);
|
|
163
|
+
if (port > 65535) {
|
|
164
|
+
throw new Error(
|
|
165
|
+
`Invalid ${envVarName} env var value: "${value}". Must be between 0 and 65535.`
|
|
166
|
+
);
|
|
167
|
+
}
|
|
168
|
+
return port;
|
|
169
|
+
}
|
|
170
|
+
|
|
151
171
|
// src/generatedDataDir.ts
|
|
152
172
|
import fs3 from "node:fs";
|
|
153
173
|
import path2 from "node:path";
|
|
@@ -590,10 +610,12 @@ export {
|
|
|
590
610
|
importStatementPath,
|
|
591
611
|
isTypeScriptProject,
|
|
592
612
|
loadPrismaConfig,
|
|
613
|
+
parsePort,
|
|
593
614
|
processPagesDir,
|
|
594
615
|
projectIsEsm,
|
|
595
616
|
projectRootIsEsm,
|
|
596
617
|
projectSideIsEsm,
|
|
618
|
+
readEnvVar,
|
|
597
619
|
resolveFile,
|
|
598
620
|
resolveGeneratedPrismaClient
|
|
599
621
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cedarjs/project-config",
|
|
3
|
-
"version": "6.0.0-canary.
|
|
3
|
+
"version": "6.0.0-canary.2819",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/cedarjs/cedar.git",
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
},
|
|
65
65
|
"devDependencies": {
|
|
66
66
|
"@arethetypeswrong/cli": "0.18.5",
|
|
67
|
-
"@cedarjs/framework-tools": "6.0.0-canary.
|
|
67
|
+
"@cedarjs/framework-tools": "6.0.0-canary.2819",
|
|
68
68
|
"concurrently": "9.2.4",
|
|
69
69
|
"prisma": "7.8.0",
|
|
70
70
|
"publint": "0.3.22",
|