rangutopia 0.0.8 → 0.0.10
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 +96 -1
- package/dist/commands/client/deploy/action.d.ts +2 -0
- package/dist/commands/client/deploy/action.d.ts.map +1 -0
- package/dist/commands/client/deploy/action.js +7 -0
- package/dist/commands/client/deploy/action.js.map +1 -0
- package/dist/commands/client/deploy/helpers.d.ts +19 -0
- package/dist/commands/client/deploy/helpers.d.ts.map +1 -0
- package/dist/commands/client/deploy/helpers.js +33 -0
- package/dist/commands/client/deploy/helpers.js.map +1 -0
- package/dist/commands/client/deploy/mod.d.ts +2 -0
- package/dist/commands/client/deploy/mod.d.ts.map +1 -0
- package/dist/commands/client/deploy/mod.js +2 -0
- package/dist/commands/client/deploy/mod.js.map +1 -0
- package/dist/commands/client/deploy/options.d.ts +11 -0
- package/dist/commands/client/deploy/options.d.ts.map +1 -0
- package/dist/commands/client/deploy/options.js +11 -0
- package/dist/commands/client/deploy/options.js.map +1 -0
- package/dist/commands/client/deploy/orchestrator.d.ts +10 -0
- package/dist/commands/client/deploy/orchestrator.d.ts.map +1 -0
- package/dist/commands/client/deploy/orchestrator.js +98 -0
- package/dist/commands/client/deploy/orchestrator.js.map +1 -0
- package/dist/commands/client/deploy/types.d.ts +4 -0
- package/dist/commands/client/deploy/types.d.ts.map +1 -0
- package/dist/commands/client/deploy/types.js +2 -0
- package/dist/commands/client/deploy/types.js.map +1 -0
- package/dist/commands/client/init/action.d.ts +3 -0
- package/dist/commands/client/init/action.d.ts.map +1 -0
- package/dist/commands/client/init/action.js +17 -0
- package/dist/commands/client/init/action.js.map +1 -0
- package/dist/commands/client/init/mod.d.ts +2 -0
- package/dist/commands/client/init/mod.d.ts.map +1 -0
- package/dist/commands/client/init/mod.js +2 -0
- package/dist/commands/client/init/mod.js.map +1 -0
- package/dist/commands/client/init/options.d.ts +6 -0
- package/dist/commands/client/init/options.d.ts.map +1 -0
- package/dist/commands/client/init/options.js +5 -0
- package/dist/commands/client/init/options.js.map +1 -0
- package/dist/commands/client/mod.d.ts +4 -0
- package/dist/commands/client/mod.d.ts.map +1 -0
- package/dist/commands/client/mod.js +30 -0
- package/dist/commands/client/mod.js.map +1 -0
- package/dist/commands/library/mod.d.ts.map +1 -1
- package/dist/commands/library/mod.js +17 -7
- package/dist/commands/library/mod.js.map +1 -1
- package/dist/commands/library/publish/helpers.d.ts.map +1 -1
- package/dist/commands/library/publish/helpers.js +71 -86
- package/dist/commands/library/publish/helpers.js.map +1 -1
- package/dist/commands/tools/husky/init/action.d.ts.map +1 -1
- package/dist/commands/tools/husky/init/action.js +2 -0
- package/dist/commands/tools/husky/init/action.js.map +1 -1
- package/dist/commands/tools/husky/init/helpers.d.ts +2 -0
- package/dist/commands/tools/husky/init/helpers.d.ts.map +1 -0
- package/dist/commands/tools/husky/init/helpers.js +12 -0
- package/dist/commands/tools/husky/init/helpers.js.map +1 -0
- package/dist/commands/tools/lint/init/action.d.ts.map +1 -1
- package/dist/commands/tools/lint/init/action.js +3 -1
- package/dist/commands/tools/lint/init/action.js.map +1 -1
- package/dist/commands/tools/lint/init/constants.d.ts +5 -0
- package/dist/commands/tools/lint/init/constants.d.ts.map +1 -0
- package/dist/commands/tools/lint/init/constants.js +5 -0
- package/dist/commands/tools/lint/init/constants.js.map +1 -0
- package/dist/commands/tools/lint/init/helpers.d.ts +2 -0
- package/dist/commands/tools/lint/init/helpers.d.ts.map +1 -0
- package/dist/commands/tools/lint/init/helpers.js +27 -0
- package/dist/commands/tools/lint/init/helpers.js.map +1 -0
- package/dist/commands/tools/mod.d.ts.map +1 -1
- package/dist/commands/tools/mod.js +2 -0
- package/dist/commands/tools/mod.js.map +1 -1
- package/dist/commands/tools/vite/init/action.d.ts +3 -0
- package/dist/commands/tools/vite/init/action.d.ts.map +1 -0
- package/dist/commands/tools/vite/init/action.js +8 -0
- package/dist/commands/tools/vite/init/action.js.map +1 -0
- package/dist/commands/tools/vite/init/constants.d.ts +2 -0
- package/dist/commands/tools/vite/init/constants.d.ts.map +1 -0
- package/dist/commands/tools/vite/init/constants.js +4 -0
- package/dist/commands/tools/vite/init/constants.js.map +1 -0
- package/dist/commands/tools/vite/init/helpers.d.ts +4 -0
- package/dist/commands/tools/vite/init/helpers.d.ts.map +1 -0
- package/dist/commands/tools/vite/init/helpers.js +39 -0
- package/dist/commands/tools/vite/init/helpers.js.map +1 -0
- package/dist/commands/tools/vite/init/mod.d.ts +2 -0
- package/dist/commands/tools/vite/init/mod.d.ts.map +1 -0
- package/dist/commands/tools/vite/init/mod.js +2 -0
- package/dist/commands/tools/vite/init/mod.js.map +1 -0
- package/dist/commands/tools/vite/init/options.d.ts +6 -0
- package/dist/commands/tools/vite/init/options.d.ts.map +1 -0
- package/dist/commands/tools/vite/init/options.js +5 -0
- package/dist/commands/tools/vite/init/options.js.map +1 -0
- package/dist/commands/tools/vite/mod.d.ts +4 -0
- package/dist/commands/tools/vite/mod.d.ts.map +1 -0
- package/dist/commands/tools/vite/mod.js +12 -0
- package/dist/commands/tools/vite/mod.js.map +1 -0
- package/dist/constants.d.ts +3 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +12 -4
- package/dist/constants.js.map +1 -1
- package/dist/main.js +2 -0
- package/dist/main.js.map +1 -1
- package/dist/modules/packageManager/packageManager.d.ts +2 -0
- package/dist/modules/packageManager/packageManager.d.ts.map +1 -1
- package/dist/modules/packageManager/packageManager.js +3 -0
- package/dist/modules/packageManager/packageManager.js.map +1 -1
- package/dist/modules/packageManager/yarnBerryAdapter.d.ts +1 -0
- package/dist/modules/packageManager/yarnBerryAdapter.d.ts.map +1 -1
- package/dist/modules/packageManager/yarnBerryAdapter.js +3 -0
- package/dist/modules/packageManager/yarnBerryAdapter.js.map +1 -1
- package/dist/modules/packageManager/yarnClassicAdapter.d.ts +1 -0
- package/dist/modules/packageManager/yarnClassicAdapter.d.ts.map +1 -1
- package/dist/modules/packageManager/yarnClassicAdapter.js +3 -0
- package/dist/modules/packageManager/yarnClassicAdapter.js.map +1 -1
- package/dist/modules/vercel/buildOutput.d.ts +26 -0
- package/dist/modules/vercel/buildOutput.d.ts.map +1 -0
- package/dist/modules/vercel/buildOutput.js +58 -0
- package/dist/modules/vercel/buildOutput.js.map +1 -0
- package/dist/modules/vercel/config.d.ts +9 -0
- package/dist/modules/vercel/config.d.ts.map +1 -0
- package/dist/modules/vercel/config.js +19 -0
- package/dist/modules/vercel/config.js.map +1 -0
- package/dist/modules/vercel/constants.d.ts +11 -0
- package/dist/modules/vercel/constants.d.ts.map +1 -0
- package/dist/modules/vercel/constants.js +18 -0
- package/dist/modules/vercel/constants.js.map +1 -0
- package/dist/modules/vercel/credentials.d.ts +5 -0
- package/dist/modules/vercel/credentials.d.ts.map +1 -0
- package/dist/modules/vercel/credentials.js +22 -0
- package/dist/modules/vercel/credentials.js.map +1 -0
- package/dist/modules/vercel/errors.d.ts +13 -0
- package/dist/modules/vercel/errors.d.ts.map +1 -0
- package/dist/modules/vercel/errors.js +19 -0
- package/dist/modules/vercel/errors.js.map +1 -0
- package/dist/modules/vercel/mod.d.ts +2 -0
- package/dist/modules/vercel/mod.d.ts.map +1 -0
- package/dist/modules/vercel/mod.js +2 -0
- package/dist/modules/vercel/mod.js.map +1 -0
- package/dist/modules/vercel/types.d.ts +27 -0
- package/dist/modules/vercel/types.d.ts.map +1 -0
- package/dist/modules/vercel/types.js +4 -0
- package/dist/modules/vercel/types.js.map +1 -0
- package/dist/modules/vercel/vercel.d.ts +48 -0
- package/dist/modules/vercel/vercel.d.ts.map +1 -0
- package/dist/modules/vercel/vercel.js +117 -0
- package/dist/modules/vercel/vercel.js.map +1 -0
- package/dist/utils/changelog.d.ts +1 -1
- package/dist/utils/changelog.d.ts.map +1 -1
- package/dist/utils/changelog.js.map +1 -1
- package/dist/utils/environment.d.ts +17 -0
- package/dist/utils/environment.d.ts.map +1 -0
- package/dist/utils/environment.js +14 -0
- package/dist/utils/environment.js.map +1 -0
- package/dist/utils/fs.d.ts +1 -0
- package/dist/utils/fs.d.ts.map +1 -1
- package/dist/utils/fs.js +1 -0
- package/dist/utils/fs.js.map +1 -1
- package/dist/utils/packageJson.d.ts +13 -0
- package/dist/utils/packageJson.d.ts.map +1 -1
- package/dist/utils/packageJson.js +27 -10
- package/dist/utils/packageJson.js.map +1 -1
- package/dist/utils/parse.d.ts +3 -0
- package/dist/utils/parse.d.ts.map +1 -1
- package/dist/utils/parse.js +13 -1
- package/dist/utils/parse.js.map +1 -1
- package/package.json +4 -1
- package/templates/deploy/vercel.json +1 -0
- package/templates/vite/projectTemplate/.gitignore.template +35 -0
- package/templates/vite/projectTemplate/.yarnrc.yml.template +1 -0
- package/templates/vite/projectTemplate/index.html.template +13 -0
- package/templates/vite/projectTemplate/package.json.template +26 -0
- package/templates/vite/projectTemplate/src/App.tsx.template +9 -0
- package/templates/vite/projectTemplate/src/main.tsx.template +9 -0
- package/templates/vite/projectTemplate/tsconfig.json.template +25 -0
- package/templates/vite/projectTemplate/vite.config.ts.template +7 -0
- package/tsconfig.json +1 -1
- package/vitest.config.ts +1 -1
- /package/templates/lint/{commitlint.config.js → commitlint.config.cjs} +0 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { packageNameWithoutScope } from "../../utils/packageJson.js";
|
|
2
|
+
import { VercelError } from "./errors.js";
|
|
3
|
+
export function vercelProjectIdEnvName(packageName) {
|
|
4
|
+
const bare = packageNameWithoutScope(packageName);
|
|
5
|
+
return `VERCEL_PROJECT_ID_${bare.toUpperCase().replace(/[^A-Z0-9]/g, "_")}`;
|
|
6
|
+
}
|
|
7
|
+
export function resolveVercelProjectId(packageName) {
|
|
8
|
+
return process.env[vercelProjectIdEnvName(packageName)];
|
|
9
|
+
}
|
|
10
|
+
export function getVercelToken() {
|
|
11
|
+
const value = process.env.VERCEL_TOKEN;
|
|
12
|
+
if (!value)
|
|
13
|
+
throw new VercelError("VERCEL_TOKEN env var is required.");
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
export function getVercelOrgId() {
|
|
17
|
+
const value = process.env.VERCEL_ORG_ID;
|
|
18
|
+
if (!value)
|
|
19
|
+
throw new VercelError("VERCEL_ORG_ID env var is required.");
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../../src/modules/vercel/credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,UAAU,sBAAsB,CAAC,WAAmB;IACxD,MAAM,IAAI,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;IAClD,OAAO,qBAAqB,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,WAAmB;IAEnB,OAAO,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACvC,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,WAAW,CAAC,mCAAmC,CAAC,CAAC;IACvE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACxC,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,WAAW,CAAC,oCAAoC,CAAC,CAAC;IACxE,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare class VercelError extends Error {
|
|
2
|
+
name: string;
|
|
3
|
+
constructor(message: string);
|
|
4
|
+
}
|
|
5
|
+
export declare class MissingMainError extends Error {
|
|
6
|
+
name: string;
|
|
7
|
+
constructor(packageName: string);
|
|
8
|
+
}
|
|
9
|
+
export declare class MissingVercelProjectIdError extends Error {
|
|
10
|
+
name: string;
|
|
11
|
+
constructor(packageName: string, envName: string);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/modules/vercel/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAY,SAAQ,KAAK;IACpC,IAAI,SAAiB;gBACT,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,IAAI,SAAsB;gBACd,WAAW,EAAE,MAAM;CAKhC;AAED,qBAAa,2BAA4B,SAAQ,KAAK;IACpD,IAAI,SAAiC;gBACzB,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAKjD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export class VercelError extends Error {
|
|
2
|
+
name = "VercelError";
|
|
3
|
+
constructor(message) {
|
|
4
|
+
super(message);
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
export class MissingMainError extends Error {
|
|
8
|
+
name = "MissingMainError";
|
|
9
|
+
constructor(packageName) {
|
|
10
|
+
super(`Package ${packageName} has no "main" field in package.json. The deploy command relies on "main" to find the build output directory.`);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export class MissingVercelProjectIdError extends Error {
|
|
14
|
+
name = "MissingVercelProjectIdError";
|
|
15
|
+
constructor(packageName, envName) {
|
|
16
|
+
super(`No Vercel project ID configured for ${packageName}. Set the env var ${envName}.`);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/modules/vercel/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAY,SAAQ,KAAK;IACpC,IAAI,GAAG,aAAa,CAAC;IACrB,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC,IAAI,GAAG,kBAAkB,CAAC;IAC1B,YAAY,WAAmB;QAC7B,KAAK,CACH,WAAW,WAAW,+GAA+G,CACtI,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,2BAA4B,SAAQ,KAAK;IACpD,IAAI,GAAG,6BAA6B,CAAC;IACrC,YAAY,WAAmB,EAAE,OAAe;QAC9C,KAAK,CACH,uCAAuC,WAAW,qBAAqB,OAAO,GAAG,CAClF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/modules/vercel/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/modules/vercel/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type Cron, type Images } from "@vercel/build-utils";
|
|
2
|
+
import { type Route } from "@vercel/routing-utils";
|
|
3
|
+
import { BUILD_OUTPUT_API_VERSION } from "./constants.js";
|
|
4
|
+
/**
|
|
5
|
+
* Subset of the Build Output API v3 configuration that this flow emits.
|
|
6
|
+
* The spec documents additional optional fields (`framework`,
|
|
7
|
+
* `caseSensitiveRoutes`, …) — extend this interface when adding support
|
|
8
|
+
* for them.
|
|
9
|
+
*
|
|
10
|
+
* @see https://vercel.com/docs/build-output-api/configuration
|
|
11
|
+
*/
|
|
12
|
+
export interface BuildOutputApiConfig {
|
|
13
|
+
version: typeof BUILD_OUTPUT_API_VERSION;
|
|
14
|
+
routes?: Route[];
|
|
15
|
+
images?: Images;
|
|
16
|
+
wildcard?: Array<{
|
|
17
|
+
domain: string;
|
|
18
|
+
value: string;
|
|
19
|
+
}>;
|
|
20
|
+
overrides?: Record<string, {
|
|
21
|
+
path?: string;
|
|
22
|
+
contentType?: string;
|
|
23
|
+
}>;
|
|
24
|
+
cache?: string[];
|
|
25
|
+
crons?: Cron[];
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/modules/vercel/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,wBAAwB,CAAC;IACzC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;IACH,SAAS,CAAC,EAAE,MAAM,CAChB,MAAM,EACN;QACE,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CACF,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/modules/vercel/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAc,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { Package } from "../../utils/packageJson.js";
|
|
2
|
+
/**
|
|
3
|
+
* One-shot Vercel CLI binding for a single workspace package. The constructor
|
|
4
|
+
* resolves the package's `VERCEL_PROJECT_ID_<NAME>` env var and throws
|
|
5
|
+
* `MissingVercelProjectIdError` if it's not set — so successful construction
|
|
6
|
+
* is itself the "this package is deployable" check used by the deploy
|
|
7
|
+
* command's filter.
|
|
8
|
+
*
|
|
9
|
+
* `VERCEL_TOKEN` and `VERCEL_ORG_ID` are read lazily inside `pull()` and
|
|
10
|
+
* `deploy()` so dry-runs (which never invoke them) succeed even when those
|
|
11
|
+
* env vars are absent.
|
|
12
|
+
*
|
|
13
|
+
* const vercel = new Vercel(pkg);
|
|
14
|
+
* await vercel.pull("preview");
|
|
15
|
+
* await vercel.build();
|
|
16
|
+
* const url = await vercel.deploy("preview");
|
|
17
|
+
*
|
|
18
|
+
* See https://vercel.com/docs/cli
|
|
19
|
+
*/
|
|
20
|
+
export declare class Vercel {
|
|
21
|
+
#private;
|
|
22
|
+
readonly pkg: Package;
|
|
23
|
+
constructor(pkg: Package);
|
|
24
|
+
/**
|
|
25
|
+
* `vercel pull --cwd <pkg.location> --environment <env> --yes`. Reads
|
|
26
|
+
* `VERCEL_TOKEN` and `VERCEL_ORG_ID` at call time.
|
|
27
|
+
*
|
|
28
|
+
* @see https://vercel.com/docs/cli/pull
|
|
29
|
+
*/
|
|
30
|
+
pull(environment: string): Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* Produces the Build Output API artifact at
|
|
33
|
+
* `<pkg.location>/.vercel/output/`. Pure filesystem — no `vercel` CLI
|
|
34
|
+
* invocation, no Vercel credentials required.
|
|
35
|
+
*/
|
|
36
|
+
build(vercelConfigOverride?: string): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* `vercel deploy <pkg.location> --prebuilt --target <target>`, returning
|
|
39
|
+
* the deployment URL printed on stdout's last non-empty line. When
|
|
40
|
+
* `target` is `"production"`, uses `--prod --skip-domain` instead of
|
|
41
|
+
* `--target=production`, matching Vercel CLI conventions. Reads
|
|
42
|
+
* `VERCEL_TOKEN` and `VERCEL_ORG_ID` at call time.
|
|
43
|
+
*
|
|
44
|
+
* @see https://vercel.com/docs/cli/deploy
|
|
45
|
+
*/
|
|
46
|
+
deploy(target: string): Promise<string>;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=vercel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vercel.d.ts","sourceRoot":"","sources":["../../../src/modules/vercel/vercel.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAY1D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,MAAM;;IACjB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;gBAGV,GAAG,EAAE,OAAO;IAYxB;;;;;OAKG;IACG,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB9C;;;;OAIG;IACG,KAAK,CAAC,oBAAoB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKzD;;;;;;;;OAQG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAsC9C"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import spawn from "nano-spawn";
|
|
2
|
+
import { getVercelOrgId, getVercelToken, resolveVercelProjectId, vercelProjectIdEnvName, } from "./credentials.js";
|
|
3
|
+
import { makeBuildOutput } from "./buildOutput.js";
|
|
4
|
+
import { resolveVercelConfigPath } from "./config.js";
|
|
5
|
+
import { MissingVercelProjectIdError, VercelError } from "./errors.js";
|
|
6
|
+
import { EXECUTIONS_TIME_OUT_MS } from "./constants.js";
|
|
7
|
+
/**
|
|
8
|
+
* One-shot Vercel CLI binding for a single workspace package. The constructor
|
|
9
|
+
* resolves the package's `VERCEL_PROJECT_ID_<NAME>` env var and throws
|
|
10
|
+
* `MissingVercelProjectIdError` if it's not set — so successful construction
|
|
11
|
+
* is itself the "this package is deployable" check used by the deploy
|
|
12
|
+
* command's filter.
|
|
13
|
+
*
|
|
14
|
+
* `VERCEL_TOKEN` and `VERCEL_ORG_ID` are read lazily inside `pull()` and
|
|
15
|
+
* `deploy()` so dry-runs (which never invoke them) succeed even when those
|
|
16
|
+
* env vars are absent.
|
|
17
|
+
*
|
|
18
|
+
* const vercel = new Vercel(pkg);
|
|
19
|
+
* await vercel.pull("preview");
|
|
20
|
+
* await vercel.build();
|
|
21
|
+
* const url = await vercel.deploy("preview");
|
|
22
|
+
*
|
|
23
|
+
* See https://vercel.com/docs/cli
|
|
24
|
+
*/
|
|
25
|
+
export class Vercel {
|
|
26
|
+
pkg;
|
|
27
|
+
#projectId;
|
|
28
|
+
constructor(pkg) {
|
|
29
|
+
this.pkg = pkg;
|
|
30
|
+
const projectId = resolveVercelProjectId(pkg.name);
|
|
31
|
+
if (!projectId) {
|
|
32
|
+
throw new MissingVercelProjectIdError(pkg.name, vercelProjectIdEnvName(pkg.name));
|
|
33
|
+
}
|
|
34
|
+
this.#projectId = projectId;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* `vercel pull --cwd <pkg.location> --environment <env> --yes`. Reads
|
|
38
|
+
* `VERCEL_TOKEN` and `VERCEL_ORG_ID` at call time.
|
|
39
|
+
*
|
|
40
|
+
* @see https://vercel.com/docs/cli/pull
|
|
41
|
+
*/
|
|
42
|
+
async pull(environment) {
|
|
43
|
+
const token = getVercelToken();
|
|
44
|
+
const orgId = getVercelOrgId();
|
|
45
|
+
const args = [
|
|
46
|
+
"pull",
|
|
47
|
+
"--cwd",
|
|
48
|
+
this.pkg.location,
|
|
49
|
+
"--environment",
|
|
50
|
+
environment,
|
|
51
|
+
"--yes",
|
|
52
|
+
"--token",
|
|
53
|
+
token,
|
|
54
|
+
];
|
|
55
|
+
await spawn("vercel", args, {
|
|
56
|
+
env: this.#env(orgId),
|
|
57
|
+
timeout: EXECUTIONS_TIME_OUT_MS,
|
|
58
|
+
}).catch((err) => {
|
|
59
|
+
throw new VercelError(`vercel pull failed for ${this.pkg.name}: ${stderrOrMessage(err)}`);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Produces the Build Output API artifact at
|
|
64
|
+
* `<pkg.location>/.vercel/output/`. Pure filesystem — no `vercel` CLI
|
|
65
|
+
* invocation, no Vercel credentials required.
|
|
66
|
+
*/
|
|
67
|
+
async build(vercelConfigOverride) {
|
|
68
|
+
const configPath = resolveVercelConfigPath(this.pkg, vercelConfigOverride);
|
|
69
|
+
await makeBuildOutput({ pkg: this.pkg, configPath });
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* `vercel deploy <pkg.location> --prebuilt --target <target>`, returning
|
|
73
|
+
* the deployment URL printed on stdout's last non-empty line. When
|
|
74
|
+
* `target` is `"production"`, uses `--prod --skip-domain` instead of
|
|
75
|
+
* `--target=production`, matching Vercel CLI conventions. Reads
|
|
76
|
+
* `VERCEL_TOKEN` and `VERCEL_ORG_ID` at call time.
|
|
77
|
+
*
|
|
78
|
+
* @see https://vercel.com/docs/cli/deploy
|
|
79
|
+
*/
|
|
80
|
+
async deploy(target) {
|
|
81
|
+
const token = getVercelToken();
|
|
82
|
+
const orgId = getVercelOrgId();
|
|
83
|
+
const args = ["deploy", this.pkg.location, "--prebuilt"];
|
|
84
|
+
if (target === "production") {
|
|
85
|
+
args.push("--prod", "--skip-domain");
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
args.push("--target", target);
|
|
89
|
+
}
|
|
90
|
+
args.push("--token", token);
|
|
91
|
+
const stdout = await spawn("vercel", args, {
|
|
92
|
+
env: this.#env(orgId),
|
|
93
|
+
timeout: EXECUTIONS_TIME_OUT_MS,
|
|
94
|
+
})
|
|
95
|
+
.then((r) => r.stdout)
|
|
96
|
+
.catch((err) => {
|
|
97
|
+
throw new VercelError(`vercel deploy failed for ${this.pkg.name}: ${stderrOrMessage(err)}`);
|
|
98
|
+
});
|
|
99
|
+
return (stdout
|
|
100
|
+
.split("\n")
|
|
101
|
+
.filter((l) => l.trim().length > 0)
|
|
102
|
+
.pop()
|
|
103
|
+
?.trim() ?? "");
|
|
104
|
+
}
|
|
105
|
+
#env(orgId) {
|
|
106
|
+
return {
|
|
107
|
+
...process.env,
|
|
108
|
+
VERCEL_ORG_ID: orgId,
|
|
109
|
+
VERCEL_PROJECT_ID: this.#projectId,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
function stderrOrMessage(err) {
|
|
114
|
+
const e = err;
|
|
115
|
+
return e.stderr ?? e.message ?? String(err);
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=vercel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vercel.js","sourceRoot":"","sources":["../../../src/modules/vercel/vercel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changelog.d.ts","sourceRoot":"","sources":["../../src/utils/changelog.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"changelog.d.ts","sourceRoot":"","sources":["../../src/utils/changelog.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgD,KAAK,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAQ7F,eAAO,MAAM,kBAAkB,GAAI,KAAK;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,WACX,CAAC;AAE5C,eAAO,MAAM,eAAe,QAAY,CAAC;AAMzC,wBAAsB,wBAAwB,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAC,oBAW9F;AAGD,wBAAgB,wBAAwB,CAAC,GAAG,CAAC,EAAE,OAAO,6BAerD;AAiDD,wBAAgB,iBAAiB,CAAC,GAAG,CAAC,EAAE,OAAO,6BAgB9C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changelog.js","sourceRoot":"","sources":["../../src/utils/changelog.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"changelog.js","sourceRoot":"","sources":["../../src/utils/changelog.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
/**
|
|
3
|
+
* Vercel environment names. `production` and `preview` are the built-in
|
|
4
|
+
* environments; any other string is a custom environment configured in the
|
|
5
|
+
* Vercel project dashboard (e.g. `next`, `staging`).
|
|
6
|
+
*
|
|
7
|
+
* See https://vercel.com/docs/deployments/environments
|
|
8
|
+
*/
|
|
9
|
+
export type Environments = "production" | "preview" | "next" | (string & {});
|
|
10
|
+
export declare const environmentOptionsSchema: z.ZodObject<{
|
|
11
|
+
prod: z.ZodBoolean;
|
|
12
|
+
next: z.ZodBoolean;
|
|
13
|
+
preview: z.ZodBoolean;
|
|
14
|
+
}, z.core.$strip>;
|
|
15
|
+
export type EnvironmentOptions = z.infer<typeof environmentOptionsSchema>;
|
|
16
|
+
export declare function toEnvironment(opts: EnvironmentOptions): Environments;
|
|
17
|
+
//# sourceMappingURL=environment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/utils/environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAE7E,eAAO,MAAM,wBAAwB;;;;iBAInC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,wBAAgB,aAAa,CAAC,IAAI,EAAE,kBAAkB,GAAG,YAAY,CAIpE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
export const environmentOptionsSchema = z.object({
|
|
3
|
+
prod: z.boolean(),
|
|
4
|
+
next: z.boolean(),
|
|
5
|
+
preview: z.boolean(),
|
|
6
|
+
});
|
|
7
|
+
export function toEnvironment(opts) {
|
|
8
|
+
if (opts.prod)
|
|
9
|
+
return "production";
|
|
10
|
+
if (opts.next)
|
|
11
|
+
return "next";
|
|
12
|
+
return "preview";
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=environment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/utils/environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAW3B,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;IACjB,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAC;AAIH,MAAM,UAAU,aAAa,CAAC,IAAwB;IACpD,IAAI,IAAI,CAAC,IAAI;QAAE,OAAO,YAAY,CAAC;IACnC,IAAI,IAAI,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC;IAC7B,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
package/dist/utils/fs.d.ts
CHANGED
|
@@ -2,4 +2,5 @@ export declare function findBinaryPath(binary: string): Promise<string | undefin
|
|
|
2
2
|
export declare function copy(src: string, dest: string): void;
|
|
3
3
|
export declare function copyDir(srcDir: string, destDir: string): void;
|
|
4
4
|
export declare function importJson<T>(filename: string): Promise<T>;
|
|
5
|
+
export declare const isFileOrFolderExists: (filename: string) => boolean;
|
|
5
6
|
//# sourceMappingURL=fs.d.ts.map
|
package/dist/utils/fs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAMA,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAShF;AAID,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAO7C;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAOtD;AAED,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAIhE"}
|
|
1
|
+
{"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAMA,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAShF;AAID,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAO7C;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAOtD;AAED,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAIhE;AAED,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,YAAkD,CAAC"}
|
package/dist/utils/fs.js
CHANGED
package/dist/utils/fs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;AACrC,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc;IAC3C,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjG,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QACxC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5D,OAAO,SAAS,IAAI,SAAS,CAAC;IACtC,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;IAEzB,OAAO,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC;AAID,MAAM,UAAU,IAAI,CAAC,GAAW,EAAE,IAAY;IACtC,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1B,CAAC;SAAM,CAAC;QACA,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClC,CAAC;AACT,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,MAAc,EAAE,OAAe;IAC/C,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1C,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAC5C,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC/B,CAAC;AACT,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAI,QAAgB;IAChD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAM,CAAC;IAEhE,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;AACrC,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc;IAC3C,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjG,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QACxC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5D,OAAO,SAAS,IAAI,SAAS,CAAC;IACtC,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;IAEzB,OAAO,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC;AAID,MAAM,UAAU,IAAI,CAAC,GAAW,EAAE,IAAY;IACtC,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1B,CAAC;SAAM,CAAC;QACA,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClC,CAAC;AACT,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,MAAc,EAAE,OAAe;IAC/C,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1C,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAC5C,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC/B,CAAC;AACT,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAI,QAAgB;IAChD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAM,CAAC;IAEhE,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC"}
|
|
@@ -42,6 +42,13 @@ export declare function packagePath(packageLocation?: string): string;
|
|
|
42
42
|
*
|
|
43
43
|
*/
|
|
44
44
|
export declare function packageJsonPath(packageLocation?: string): string;
|
|
45
|
+
export declare function packageNameWithoutScope(name: string): string;
|
|
46
|
+
export interface Package {
|
|
47
|
+
name: string;
|
|
48
|
+
location: string;
|
|
49
|
+
version: string;
|
|
50
|
+
private: boolean;
|
|
51
|
+
}
|
|
45
52
|
export declare const rootPackageJson: () => {
|
|
46
53
|
[x: string]: unknown;
|
|
47
54
|
name: string;
|
|
@@ -53,4 +60,10 @@ export declare const rootPackageJson: () => {
|
|
|
53
60
|
scripts?: Record<string, string>;
|
|
54
61
|
private?: boolean;
|
|
55
62
|
};
|
|
63
|
+
export declare function workspacePackages(): Promise<{
|
|
64
|
+
name: string;
|
|
65
|
+
location: string;
|
|
66
|
+
version: string;
|
|
67
|
+
private: boolean;
|
|
68
|
+
}[]>;
|
|
56
69
|
//# sourceMappingURL=packageJson.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageJson.d.ts","sourceRoot":"","sources":["../../src/utils/packageJson.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"packageJson.d.ts","sourceRoot":"","sources":["../../src/utils/packageJson.ts"],"names":[],"mappings":"AAQA,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAS1E;AAED,wBAAsB,sCAAsC,CAC1D,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;IAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAE,GACzC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA+B7B;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA8BzE;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,IAAI,CAcN;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM;;;;;;;;;;EAmBtD;AAED,wBAAsB,uBAAuB,CAAC,oBAAoB,EAAE,MAAM,EAAE,kBAe3E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,eAAe,SAAK,UAE/C;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,eAAe,SAAK,UAEnD;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,eAAO,MAAM,eAAe;;;;;;;;;;CAE3B,CAAA;AAED,wBAAsB,iBAAiB;;;;;KActC"}
|
|
@@ -3,7 +3,7 @@ import { closeSync, openSync, readFileSync, writeSync } from "node:fs";
|
|
|
3
3
|
import path, { dirname, join } from "node:path";
|
|
4
4
|
import { z } from "zod/v4";
|
|
5
5
|
import { validatedSchemaOrThrow } from "./parse.js";
|
|
6
|
-
import { logger } from "../modules/mod.js";
|
|
6
|
+
import { getPackageManager, logger } from "../modules/mod.js";
|
|
7
7
|
import { ROOT_PATH } from "../constants.js";
|
|
8
8
|
export async function nearestPackageJsonPath() {
|
|
9
9
|
const firstPackageJson = await findUp("package.json");
|
|
@@ -16,7 +16,7 @@ export async function nearestPackageJsonPath() {
|
|
|
16
16
|
export async function lookupPackageJsonFilesToFindDependency(name, options) {
|
|
17
17
|
const { checkDevDependency = true } = options || {};
|
|
18
18
|
const list = await findUpMultiple("package.json");
|
|
19
|
-
const pathIncludingThePackage = list.find(path => {
|
|
19
|
+
const pathIncludingThePackage = list.find((path) => {
|
|
20
20
|
let json;
|
|
21
21
|
try {
|
|
22
22
|
json = readPackageJson(path);
|
|
@@ -47,12 +47,12 @@ export function readPackageJson(location) {
|
|
|
47
47
|
fullPath = location;
|
|
48
48
|
}
|
|
49
49
|
else {
|
|
50
|
-
fullPath = join(location,
|
|
50
|
+
fullPath = join(location, "package.json");
|
|
51
51
|
}
|
|
52
52
|
let content;
|
|
53
53
|
try {
|
|
54
54
|
content = readFileSync(fullPath, {
|
|
55
|
-
encoding: "utf8"
|
|
55
|
+
encoding: "utf8",
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
58
|
catch (e) {
|
|
@@ -63,7 +63,7 @@ export function readPackageJson(location) {
|
|
|
63
63
|
}
|
|
64
64
|
catch (e) {
|
|
65
65
|
throw new Error(`An error occured during paring ${location} file. maybe it's not a valid JSON `, {
|
|
66
|
-
cause: e
|
|
66
|
+
cause: e,
|
|
67
67
|
});
|
|
68
68
|
}
|
|
69
69
|
}
|
|
@@ -92,13 +92,13 @@ export function readAndValidatePackageJson(path) {
|
|
|
92
92
|
devDependencies: z.record(z.string(), z.string()).optional(),
|
|
93
93
|
peerDependencies: z.record(z.string(), z.string()).optional(),
|
|
94
94
|
scripts: z.record(z.string(), z.string()).optional(),
|
|
95
|
-
private: z.boolean().optional()
|
|
95
|
+
private: z.boolean().optional(),
|
|
96
96
|
});
|
|
97
97
|
const output = validatedSchemaOrThrow(PackageJsonSchema, packageJsonContent);
|
|
98
98
|
return output;
|
|
99
99
|
}
|
|
100
100
|
export async function findMissingDependencies(requiredDependencies) {
|
|
101
|
-
const listRequiredPackages = await Promise.all(requiredDependencies.map(name => lookupPackageJsonFilesToFindDependency(name)));
|
|
101
|
+
const listRequiredPackages = await Promise.all(requiredDependencies.map((name) => lookupPackageJsonFilesToFindDependency(name)));
|
|
102
102
|
const missingPackages = [];
|
|
103
103
|
listRequiredPackages.forEach((result, index) => {
|
|
104
104
|
if (!result) {
|
|
@@ -118,7 +118,7 @@ export async function findMissingDependencies(requiredDependencies) {
|
|
|
118
118
|
* packagePath()
|
|
119
119
|
*
|
|
120
120
|
*/
|
|
121
|
-
export function packagePath(packageLocation =
|
|
121
|
+
export function packagePath(packageLocation = "") {
|
|
122
122
|
return path.join(ROOT_PATH, packageLocation);
|
|
123
123
|
}
|
|
124
124
|
/**
|
|
@@ -129,10 +129,27 @@ export function packagePath(packageLocation = '') {
|
|
|
129
129
|
* packageJsonPath()
|
|
130
130
|
*
|
|
131
131
|
*/
|
|
132
|
-
export function packageJsonPath(packageLocation =
|
|
133
|
-
return path.join(packagePath(packageLocation),
|
|
132
|
+
export function packageJsonPath(packageLocation = "") {
|
|
133
|
+
return path.join(packagePath(packageLocation), "package.json");
|
|
134
|
+
}
|
|
135
|
+
export function packageNameWithoutScope(name) {
|
|
136
|
+
return name.replace(/@.+?\//, "");
|
|
134
137
|
}
|
|
135
138
|
export const rootPackageJson = () => {
|
|
136
139
|
return readAndValidatePackageJson(packageJsonPath());
|
|
137
140
|
};
|
|
141
|
+
export async function workspacePackages() {
|
|
142
|
+
const workspaces = await getPackageManager().getWorkspaces();
|
|
143
|
+
const packagesName = Object.keys(workspaces);
|
|
144
|
+
const output = packagesName.map((name) => {
|
|
145
|
+
const pkgJson = readAndValidatePackageJson(workspaces[name].location);
|
|
146
|
+
return {
|
|
147
|
+
name,
|
|
148
|
+
location: workspaces[name].location,
|
|
149
|
+
version: pkgJson.version,
|
|
150
|
+
private: pkgJson.private || false,
|
|
151
|
+
};
|
|
152
|
+
});
|
|
153
|
+
return output;
|
|
154
|
+
}
|
|
138
155
|
//# sourceMappingURL=packageJson.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packageJson.js","sourceRoot":"","sources":["../../src/utils/packageJson.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"packageJson.js","sourceRoot":"","sources":["../../src/utils/packageJson.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/parse.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
import { z } from "zod/v4";
|
|
2
2
|
export declare function validatedSchemaOrThrow<T extends z.ZodTypeAny>(schema: T, data: unknown): z.output<T>;
|
|
3
|
+
/** Split a comma-separated string into a Set of trimmed, non-empty entries.
|
|
4
|
+
* Returns an empty set for undefined or empty input. */
|
|
5
|
+
export declare function parseCommaList(value: string | undefined): Set<string>;
|
|
3
6
|
//# sourceMappingURL=parse.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/utils/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAY,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/utils/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAY,MAAM,QAAQ,CAAC;AAErC,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAC3D,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,OAAO,GACZ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAcb;AAED;yDACyD;AACzD,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAQrE"}
|
package/dist/utils/parse.js
CHANGED
|
@@ -6,10 +6,22 @@ export function validatedSchemaOrThrow(schema, data) {
|
|
|
6
6
|
}
|
|
7
7
|
catch (e) {
|
|
8
8
|
if (e instanceof ZodError) {
|
|
9
|
-
const message = e.issues
|
|
9
|
+
const message = e.issues
|
|
10
|
+
.map((issue) => `${issue.message} in ${issue.path.join(",")}`)
|
|
11
|
+
.join("\n");
|
|
10
12
|
throw Error(message, { cause: e });
|
|
11
13
|
}
|
|
12
14
|
throw e;
|
|
13
15
|
}
|
|
14
16
|
}
|
|
17
|
+
/** Split a comma-separated string into a Set of trimmed, non-empty entries.
|
|
18
|
+
* Returns an empty set for undefined or empty input. */
|
|
19
|
+
export function parseCommaList(value) {
|
|
20
|
+
if (!value)
|
|
21
|
+
return new Set();
|
|
22
|
+
return new Set(value
|
|
23
|
+
.split(",")
|
|
24
|
+
.map((s) => s.trim())
|
|
25
|
+
.filter((s) => s.length > 0));
|
|
26
|
+
}
|
|
15
27
|
//# sourceMappingURL=parse.js.map
|
package/dist/utils/parse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/utils/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/utils/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAErC,MAAM,UAAU,sBAAsB,CACpC,MAAS,EACT,IAAa;IAEb,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,QAAQ,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM;iBACrB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;iBAC7D,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC;AAED;yDACyD;AACzD,MAAM,UAAU,cAAc,CAAC,KAAyB;IACtD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IAC7B,OAAO,IAAI,GAAG,CACZ,KAAK;SACF,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAC/B,CAAC;AACJ,CAAC"}
|