@vercel/sandbox 1.4.1 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-client/api-client.d.ts +43 -14
- package/dist/api-client/api-client.js +14 -4
- package/dist/api-client/api-client.js.map +1 -1
- package/dist/api-client/validators.d.ts +665 -46
- package/dist/api-client/validators.js +20 -2
- package/dist/api-client/validators.js.map +1 -1
- package/dist/network-policy.d.ts +48 -0
- package/dist/network-policy.js +3 -0
- package/dist/network-policy.js.map +1 -0
- package/dist/sandbox.d.ts +22 -13
- package/dist/sandbox.js +26 -21
- package/dist/sandbox.js.map +1 -1
- package/dist/snapshot.d.ts +3 -3
- package/dist/snapshot.js +4 -1
- package/dist/snapshot.js.map +1 -1
- package/dist/utils/convert-sandbox.d.ts +6 -0
- package/dist/utils/convert-sandbox.js +14 -0
- package/dist/utils/convert-sandbox.js.map +1 -0
- package/dist/utils/network-policy.d.ts +7 -52
- package/dist/utils/network-policy.js +26 -16
- package/dist/utils/network-policy.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SnapshotResponse = exports.CreateSnapshotResponse = exports.ExtendTimeoutResponse = exports.SnapshotsResponse = exports.SandboxesResponse = exports.LogLine = exports.LogError = exports.LogLineStderr = exports.LogLineStdout = exports.EmptyResponse = exports.CommandFinishedResponse = exports.CommandResponse = exports.SandboxAndRoutesResponse = exports.SandboxResponse = exports.Command = exports.Pagination = exports.Snapshot = exports.SandboxRoute = exports.Sandbox = void 0;
|
|
3
|
+
exports.SnapshotResponse = exports.CreateSnapshotResponse = exports.UpdateNetworkPolicyResponse = exports.ExtendTimeoutResponse = exports.SnapshotsResponse = exports.SandboxesResponse = exports.LogLine = exports.LogError = exports.LogLineStderr = exports.LogLineStdout = exports.EmptyResponse = exports.CommandFinishedResponse = exports.CommandResponse = exports.SandboxAndRoutesResponse = exports.SandboxResponse = exports.Command = exports.Pagination = exports.Snapshot = exports.SandboxRoute = exports.Sandbox = exports.NetworkPolicyValidator = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
|
+
exports.NetworkPolicyValidator = zod_1.z.union([
|
|
6
|
+
zod_1.z.object({ mode: zod_1.z.literal("allow-all") }).passthrough(),
|
|
7
|
+
zod_1.z.object({ mode: zod_1.z.literal("deny-all") }).passthrough(),
|
|
8
|
+
zod_1.z
|
|
9
|
+
.object({
|
|
10
|
+
mode: zod_1.z.literal("custom"),
|
|
11
|
+
allowedDomains: zod_1.z.array(zod_1.z.string()).optional(),
|
|
12
|
+
allowedCIDRs: zod_1.z.array(zod_1.z.string()).optional(),
|
|
13
|
+
deniedCIDRs: zod_1.z.array(zod_1.z.string()).optional(),
|
|
14
|
+
})
|
|
15
|
+
.passthrough(),
|
|
16
|
+
]);
|
|
5
17
|
exports.Sandbox = zod_1.z.object({
|
|
6
18
|
id: zod_1.z.string(),
|
|
7
19
|
memory: zod_1.z.number(),
|
|
@@ -15,12 +27,14 @@ exports.Sandbox = zod_1.z.object({
|
|
|
15
27
|
"stopping",
|
|
16
28
|
"stopped",
|
|
17
29
|
"failed",
|
|
30
|
+
"aborted",
|
|
18
31
|
"snapshotting",
|
|
19
32
|
]),
|
|
20
33
|
requestedAt: zod_1.z.number(),
|
|
21
34
|
startedAt: zod_1.z.number().optional(),
|
|
22
35
|
requestedStopAt: zod_1.z.number().optional(),
|
|
23
36
|
stoppedAt: zod_1.z.number().optional(),
|
|
37
|
+
abortedAt: zod_1.z.number().optional(),
|
|
24
38
|
duration: zod_1.z.number().optional(),
|
|
25
39
|
sourceSnapshotId: zod_1.z.string().optional(),
|
|
26
40
|
snapshottedAt: zod_1.z.number().optional(),
|
|
@@ -28,6 +42,7 @@ exports.Sandbox = zod_1.z.object({
|
|
|
28
42
|
cwd: zod_1.z.string(),
|
|
29
43
|
updatedAt: zod_1.z.number(),
|
|
30
44
|
interactivePort: zod_1.z.number().optional(),
|
|
45
|
+
networkPolicy: exports.NetworkPolicyValidator.optional(),
|
|
31
46
|
});
|
|
32
47
|
exports.SandboxRoute = zod_1.z.object({
|
|
33
48
|
url: zod_1.z.string(),
|
|
@@ -40,7 +55,7 @@ exports.Snapshot = zod_1.z.object({
|
|
|
40
55
|
region: zod_1.z.string(),
|
|
41
56
|
status: zod_1.z.enum(["created", "deleted", "failed"]),
|
|
42
57
|
sizeBytes: zod_1.z.number(),
|
|
43
|
-
expiresAt: zod_1.z.number(),
|
|
58
|
+
expiresAt: zod_1.z.number().optional(),
|
|
44
59
|
createdAt: zod_1.z.number(),
|
|
45
60
|
updatedAt: zod_1.z.number(),
|
|
46
61
|
});
|
|
@@ -116,6 +131,9 @@ exports.SnapshotsResponse = zod_1.z.object({
|
|
|
116
131
|
exports.ExtendTimeoutResponse = zod_1.z.object({
|
|
117
132
|
sandbox: exports.Sandbox,
|
|
118
133
|
});
|
|
134
|
+
exports.UpdateNetworkPolicyResponse = zod_1.z.object({
|
|
135
|
+
sandbox: exports.Sandbox,
|
|
136
|
+
});
|
|
119
137
|
exports.CreateSnapshotResponse = zod_1.z.object({
|
|
120
138
|
snapshot: exports.Snapshot,
|
|
121
139
|
sandbox: exports.Sandbox,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/api-client/validators.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAIX,QAAA,OAAO,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9B,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC;QACb,SAAS;QACT,SAAS;QACT,UAAU;QACV,SAAS;QACT,QAAQ;QACR,cAAc;KACf,CAAC;IACF,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE;IACvB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/api-client/validators.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAIX,QAAA,sBAAsB,GAAG,OAAC,CAAC,KAAK,CAAC;IAC5C,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE;IACxD,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE;IACvD,OAAC;SACE,MAAM,CAAC;QACN,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,cAAc,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;QAC9C,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;QAC5C,WAAW,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;KAC5C,CAAC;SACD,WAAW,EAAE;CACjB,CAAC,CAAC;AAEU,QAAA,OAAO,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9B,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC;QACb,SAAS;QACT,SAAS;QACT,UAAU;QACV,SAAS;QACT,QAAQ;QACR,SAAS;QACT,cAAc;KACf,CAAC;IACF,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE;IACvB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,aAAa,EAAE,8BAAsB,CAAC,QAAQ,EAAE;CACjD,CAAC,CAAC;AAIU,QAAA,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC;IACnC,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAIU,QAAA,QAAQ,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/B,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE;IAC3B,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEU,QAAA,UAAU,GAAG,OAAC,CAAC,MAAM,CAAC;IACjC;;;OAGG;IACH,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB;;;OAGG;IACH,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B;;;OAGG;IACH,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAC;AAIU,QAAA,OAAO,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9B,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;IACzB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,eAAO,CAAC,MAAM,CAAC;IACrC,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC;AAEU,QAAA,eAAe,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,OAAO,EAAE,eAAO;CACjB,CAAC,CAAC;AAEU,QAAA,wBAAwB,GAAG,uBAAe,CAAC,MAAM,CAAC;IAC7D,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,oBAAY,CAAC;CAC9B,CAAC,CAAC;AAEU,QAAA,eAAe,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,OAAO,EAAE,eAAO;CACjB,CAAC,CAAC;AAIU,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9C,OAAO,EAAE,eAAe;CACzB,CAAC,CAAC;AAEU,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE1C,MAAM,WAAW,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACtC,QAAA,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC;IAC9C,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;CAC5B,CAAC,CAAC;AACU,QAAA,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC;IAC9C,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;CAC5B,CAAC,CAAC;AAEU,QAAA,QAAQ,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/B,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAC1B,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC;QACb,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;KACpB,CAAC;CACH,CAAC,CAAC;AAEU,QAAA,OAAO,GAAG,OAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE;IACpD,qBAAa;IACb,qBAAa;IACb,gBAAQ;CACT,CAAC,CAAC;AAEU,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,OAAC,CAAC,KAAK,CAAC,eAAO,CAAC;IAC3B,UAAU,EAAE,kBAAU;CACvB,CAAC,CAAC;AAEU,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,OAAC,CAAC,KAAK,CAAC,gBAAQ,CAAC;IAC5B,UAAU,EAAE,kBAAU;CACvB,CAAC,CAAC;AAEU,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,eAAO;CACjB,CAAC,CAAC;AAEU,QAAA,2BAA2B,GAAG,OAAC,CAAC,MAAM,CAAC;IAClD,OAAO,EAAE,eAAO;CACjB,CAAC,CAAC;AAEU,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,QAAQ,EAAE,gBAAQ;IAClB,OAAO,EAAE,eAAO;CACjB,CAAC,CAAC;AAEU,QAAA,gBAAgB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,QAAQ,EAAE,gBAAQ;CACnB,CAAC,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Network policy to define network restrictions for the sandbox.
|
|
3
|
+
*
|
|
4
|
+
* - `"allow-all"`: Full internet access (default). All traffic is allowed.
|
|
5
|
+
* - `"deny-all"`: No internet access. All traffic is denied.
|
|
6
|
+
* - Object: Custom access with explicit allow/deny lists.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* // Full internet access (default)
|
|
10
|
+
* "allow-all"
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* // No external access
|
|
14
|
+
* "deny-all"
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* // Custom access with specific domains
|
|
18
|
+
* // All traffic not explicitly allowed is denied.
|
|
19
|
+
* {
|
|
20
|
+
* allow: ["*.npmjs.org", "github.com"],
|
|
21
|
+
* subnets: {
|
|
22
|
+
* allow: ["10.0.0.0/8"],
|
|
23
|
+
* deny: ["10.1.0.0/16"]
|
|
24
|
+
* }
|
|
25
|
+
* }
|
|
26
|
+
*/
|
|
27
|
+
export type NetworkPolicy = "allow-all" | "deny-all" | {
|
|
28
|
+
/**
|
|
29
|
+
* List of domains to allow traffic to.
|
|
30
|
+
* Use "*" prefix for wildcard matching (e.g., "*.npmjs.org").
|
|
31
|
+
*/
|
|
32
|
+
allow?: string[];
|
|
33
|
+
/**
|
|
34
|
+
* Subnet-level access control using CIDR notation.
|
|
35
|
+
*/
|
|
36
|
+
subnets?: {
|
|
37
|
+
/**
|
|
38
|
+
* List of CIDRs to allow traffic to.
|
|
39
|
+
* Traffic to these addresses will bypass the domain allowlist.
|
|
40
|
+
*/
|
|
41
|
+
allow?: string[];
|
|
42
|
+
/**
|
|
43
|
+
* List of CIDRs to deny traffic to.
|
|
44
|
+
* These take precedence over allowed domains and CIDRs.
|
|
45
|
+
*/
|
|
46
|
+
deny?: string[];
|
|
47
|
+
};
|
|
48
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network-policy.js","sourceRoot":"","sources":["../src/network-policy.ts"],"names":[],"mappings":""}
|
package/dist/sandbox.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { WithPrivate } from "./utils/types";
|
|
|
7
7
|
import { WithFetchOptions } from "./api-client/api-client";
|
|
8
8
|
import { RUNTIMES } from "./constants";
|
|
9
9
|
import { Snapshot } from "./snapshot";
|
|
10
|
-
import { type NetworkPolicy } from "./
|
|
10
|
+
import { type NetworkPolicy } from "./network-policy";
|
|
11
11
|
export type { NetworkPolicy };
|
|
12
12
|
/** @inline */
|
|
13
13
|
export interface BaseCreateSandboxParams {
|
|
@@ -155,6 +155,10 @@ export declare class Sandbox {
|
|
|
155
155
|
* The timeout of the sandbox in milliseconds.
|
|
156
156
|
*/
|
|
157
157
|
get timeout(): number;
|
|
158
|
+
/**
|
|
159
|
+
* The network policy of the sandbox.
|
|
160
|
+
*/
|
|
161
|
+
get networkPolicy(): NetworkPolicy | undefined;
|
|
158
162
|
/**
|
|
159
163
|
* If the sandbox was created from a snapshot, the ID of that snapshot.
|
|
160
164
|
*/
|
|
@@ -176,7 +180,7 @@ export declare class Sandbox {
|
|
|
176
180
|
region: string;
|
|
177
181
|
runtime: string;
|
|
178
182
|
timeout: number;
|
|
179
|
-
status: "pending" | "running" | "stopping" | "stopped" | "failed" | "snapshotting";
|
|
183
|
+
status: "aborted" | "pending" | "running" | "stopping" | "stopped" | "failed" | "snapshotting";
|
|
180
184
|
requestedAt: number;
|
|
181
185
|
createdAt: number;
|
|
182
186
|
cwd: string;
|
|
@@ -184,10 +188,21 @@ export declare class Sandbox {
|
|
|
184
188
|
startedAt?: number | undefined;
|
|
185
189
|
requestedStopAt?: number | undefined;
|
|
186
190
|
stoppedAt?: number | undefined;
|
|
191
|
+
abortedAt?: number | undefined;
|
|
187
192
|
duration?: number | undefined;
|
|
188
193
|
sourceSnapshotId?: string | undefined;
|
|
189
194
|
snapshottedAt?: number | undefined;
|
|
190
195
|
interactivePort?: number | undefined;
|
|
196
|
+
networkPolicy?: import("zod").objectInputType<{
|
|
197
|
+
mode: import("zod").ZodLiteral<"allow-all">;
|
|
198
|
+
}, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
|
|
199
|
+
mode: import("zod").ZodLiteral<"deny-all">;
|
|
200
|
+
}, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectInputType<{
|
|
201
|
+
mode: import("zod").ZodLiteral<"custom">;
|
|
202
|
+
allowedDomains: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
|
|
203
|
+
allowedCIDRs: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
|
|
204
|
+
deniedCIDRs: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
|
|
205
|
+
}, import("zod").ZodTypeAny, "passthrough"> | undefined;
|
|
191
206
|
}[];
|
|
192
207
|
pagination: {
|
|
193
208
|
count: number;
|
|
@@ -215,13 +230,6 @@ export declare class Sandbox {
|
|
|
215
230
|
* @returns A promise resolving to the {@link Sandbox}.
|
|
216
231
|
*/
|
|
217
232
|
static get(params: WithPrivate<GetSandboxParams | (GetSandboxParams & Credentials)> & WithFetchOptions): Promise<Sandbox>;
|
|
218
|
-
/**
|
|
219
|
-
* Create a new Sandbox instance.
|
|
220
|
-
*
|
|
221
|
-
* @param client - API client used to communicate with the backend
|
|
222
|
-
* @param routes - Port-to-subdomain mappings for exposed ports
|
|
223
|
-
* @param sandboxId - Unique identifier for the sandbox
|
|
224
|
-
*/
|
|
225
233
|
constructor({ client, routes, sandbox, }: {
|
|
226
234
|
client: APIClient;
|
|
227
235
|
routes: SandboxRouteData[];
|
|
@@ -377,17 +385,16 @@ export declare class Sandbox {
|
|
|
377
385
|
* @example
|
|
378
386
|
* // Restrict to specific domains
|
|
379
387
|
* await sandbox.updateNetworkPolicy({
|
|
380
|
-
*
|
|
381
|
-
* allowedDomains: ["*.npmjs.org", "github.com"],
|
|
388
|
+
* allow: ["*.npmjs.org", "github.com"],
|
|
382
389
|
* });
|
|
383
390
|
*
|
|
384
391
|
* @example
|
|
385
392
|
* // Deny all network access
|
|
386
|
-
* await sandbox.updateNetworkPolicy(
|
|
393
|
+
* await sandbox.updateNetworkPolicy("deny-all");
|
|
387
394
|
*/
|
|
388
395
|
updateNetworkPolicy(networkPolicy: NetworkPolicy, opts?: {
|
|
389
396
|
signal?: AbortSignal;
|
|
390
|
-
}): Promise<
|
|
397
|
+
}): Promise<NetworkPolicy>;
|
|
391
398
|
/**
|
|
392
399
|
* Extend the timeout of the sandbox by the specified duration.
|
|
393
400
|
*
|
|
@@ -414,10 +421,12 @@ export declare class Sandbox {
|
|
|
414
421
|
* Note: this sandbox will be stopped as part of the snapshot creation process.
|
|
415
422
|
*
|
|
416
423
|
* @param opts - Optional parameters.
|
|
424
|
+
* @param opts.expiration - Optional expiration time in milliseconds. Use 0 for no expiration at all.
|
|
417
425
|
* @param opts.signal - An AbortSignal to cancel the operation.
|
|
418
426
|
* @returns A promise that resolves to the Snapshot instance
|
|
419
427
|
*/
|
|
420
428
|
snapshot(opts?: {
|
|
429
|
+
expiration?: number;
|
|
421
430
|
signal?: AbortSignal;
|
|
422
431
|
}): Promise<Snapshot>;
|
|
423
432
|
}
|
package/dist/sandbox.js
CHANGED
|
@@ -11,7 +11,7 @@ const get_credentials_1 = require("./utils/get-credentials");
|
|
|
11
11
|
const types_1 = require("./utils/types");
|
|
12
12
|
const snapshot_1 = require("./snapshot");
|
|
13
13
|
const consume_readable_1 = require("./utils/consume-readable");
|
|
14
|
-
const
|
|
14
|
+
const convert_sandbox_1 = require("./utils/convert-sandbox");
|
|
15
15
|
/**
|
|
16
16
|
* A Sandbox is an isolated Linux MicroVM to run commands in.
|
|
17
17
|
*
|
|
@@ -46,6 +46,12 @@ class Sandbox {
|
|
|
46
46
|
get timeout() {
|
|
47
47
|
return this.sandbox.timeout;
|
|
48
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* The network policy of the sandbox.
|
|
51
|
+
*/
|
|
52
|
+
get networkPolicy() {
|
|
53
|
+
return this.sandbox.networkPolicy;
|
|
54
|
+
}
|
|
49
55
|
/**
|
|
50
56
|
* If the sandbox was created from a snapshot, the ID of that snapshot.
|
|
51
57
|
*/
|
|
@@ -96,7 +102,7 @@ class Sandbox {
|
|
|
96
102
|
timeout: params?.timeout,
|
|
97
103
|
resources: params?.resources,
|
|
98
104
|
runtime: params && "runtime" in params ? params?.runtime : undefined,
|
|
99
|
-
networkPolicy:
|
|
105
|
+
networkPolicy: params?.networkPolicy,
|
|
100
106
|
signal: params?.signal,
|
|
101
107
|
...privateParams,
|
|
102
108
|
});
|
|
@@ -131,17 +137,10 @@ class Sandbox {
|
|
|
131
137
|
routes: sandbox.json.routes,
|
|
132
138
|
});
|
|
133
139
|
}
|
|
134
|
-
/**
|
|
135
|
-
* Create a new Sandbox instance.
|
|
136
|
-
*
|
|
137
|
-
* @param client - API client used to communicate with the backend
|
|
138
|
-
* @param routes - Port-to-subdomain mappings for exposed ports
|
|
139
|
-
* @param sandboxId - Unique identifier for the sandbox
|
|
140
|
-
*/
|
|
141
140
|
constructor({ client, routes, sandbox, }) {
|
|
142
141
|
this.client = client;
|
|
143
142
|
this.routes = routes;
|
|
144
|
-
this.sandbox = sandbox;
|
|
143
|
+
this.sandbox = (0, convert_sandbox_1.convertSandbox)(sandbox);
|
|
145
144
|
}
|
|
146
145
|
/**
|
|
147
146
|
* Get a previously run command by its ID.
|
|
@@ -302,6 +301,12 @@ class Sandbox {
|
|
|
302
301
|
* @returns The absolute path to the written file, or null if the source file was not found
|
|
303
302
|
*/
|
|
304
303
|
async downloadFile(src, dst, opts) {
|
|
304
|
+
if (!src?.path) {
|
|
305
|
+
throw new Error("downloadFile: source path is required");
|
|
306
|
+
}
|
|
307
|
+
if (!dst?.path) {
|
|
308
|
+
throw new Error("downloadFile: destination path is required");
|
|
309
|
+
}
|
|
305
310
|
const stream = await this.client.readFile({
|
|
306
311
|
sandboxId: this.sandbox.id,
|
|
307
312
|
path: src.path,
|
|
@@ -384,24 +389,22 @@ class Sandbox {
|
|
|
384
389
|
* @example
|
|
385
390
|
* // Restrict to specific domains
|
|
386
391
|
* await sandbox.updateNetworkPolicy({
|
|
387
|
-
*
|
|
388
|
-
* allowedDomains: ["*.npmjs.org", "github.com"],
|
|
392
|
+
* allow: ["*.npmjs.org", "github.com"],
|
|
389
393
|
* });
|
|
390
394
|
*
|
|
391
395
|
* @example
|
|
392
396
|
* // Deny all network access
|
|
393
|
-
* await sandbox.updateNetworkPolicy(
|
|
397
|
+
* await sandbox.updateNetworkPolicy("deny-all");
|
|
394
398
|
*/
|
|
395
399
|
async updateNetworkPolicy(networkPolicy, opts) {
|
|
396
|
-
const
|
|
397
|
-
if (!apiNetworkPolicy) {
|
|
398
|
-
throw new Error("Invalid network policy");
|
|
399
|
-
}
|
|
400
|
-
await this.client.updateNetworkPolicy({
|
|
400
|
+
const response = await this.client.updateNetworkPolicy({
|
|
401
401
|
sandboxId: this.sandbox.id,
|
|
402
|
-
networkPolicy:
|
|
402
|
+
networkPolicy: networkPolicy,
|
|
403
403
|
signal: opts?.signal,
|
|
404
404
|
});
|
|
405
|
+
// Update the internal sandbox metadata with the new timeout value
|
|
406
|
+
this.sandbox = (0, convert_sandbox_1.convertSandbox)(response.json.sandbox);
|
|
407
|
+
return this.sandbox.networkPolicy;
|
|
405
408
|
}
|
|
406
409
|
/**
|
|
407
410
|
* Extend the timeout of the sandbox by the specified duration.
|
|
@@ -426,7 +429,7 @@ class Sandbox {
|
|
|
426
429
|
signal: opts?.signal,
|
|
427
430
|
});
|
|
428
431
|
// Update the internal sandbox metadata with the new timeout value
|
|
429
|
-
this.sandbox = response.json.sandbox;
|
|
432
|
+
this.sandbox = (0, convert_sandbox_1.convertSandbox)(response.json.sandbox);
|
|
430
433
|
}
|
|
431
434
|
/**
|
|
432
435
|
* Create a snapshot from this currently running sandbox. New sandboxes can
|
|
@@ -435,15 +438,17 @@ class Sandbox {
|
|
|
435
438
|
* Note: this sandbox will be stopped as part of the snapshot creation process.
|
|
436
439
|
*
|
|
437
440
|
* @param opts - Optional parameters.
|
|
441
|
+
* @param opts.expiration - Optional expiration time in milliseconds. Use 0 for no expiration at all.
|
|
438
442
|
* @param opts.signal - An AbortSignal to cancel the operation.
|
|
439
443
|
* @returns A promise that resolves to the Snapshot instance
|
|
440
444
|
*/
|
|
441
445
|
async snapshot(opts) {
|
|
442
446
|
const response = await this.client.createSnapshot({
|
|
443
447
|
sandboxId: this.sandbox.id,
|
|
448
|
+
expiration: opts?.expiration,
|
|
444
449
|
signal: opts?.signal,
|
|
445
450
|
});
|
|
446
|
-
this.sandbox = response.json.sandbox;
|
|
451
|
+
this.sandbox = (0, convert_sandbox_1.convertSandbox)(response.json.sandbox);
|
|
447
452
|
return new snapshot_1.Snapshot({
|
|
448
453
|
client: this.client,
|
|
449
454
|
snapshot: response.json.snapshot,
|
package/dist/sandbox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../src/sandbox.ts"],"names":[],"mappings":";;;AAEA,8CAA2C;AAC3C,2BAAuC;AACvC,0CAAoC;AACpC,+BAAwC;AACxC,6CAAyC;AACzC,uCAAqD;AACrD,6DAA2E;AAC3E,yCAA8D;AAG9D,yCAAsC;AACtC,+DAA2D;
|
|
1
|
+
{"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../src/sandbox.ts"],"names":[],"mappings":"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"}
|
package/dist/snapshot.d.ts
CHANGED
|
@@ -42,9 +42,9 @@ export declare class Snapshot {
|
|
|
42
42
|
*/
|
|
43
43
|
get createdAt(): Date;
|
|
44
44
|
/**
|
|
45
|
-
* The expiration date of this snapshot.
|
|
45
|
+
* The expiration date of this snapshot, or undefined if it does not expire.
|
|
46
46
|
*/
|
|
47
|
-
get expiresAt(): Date;
|
|
47
|
+
get expiresAt(): Date | undefined;
|
|
48
48
|
/**
|
|
49
49
|
* Internal metadata about this snapshot.
|
|
50
50
|
*/
|
|
@@ -78,7 +78,7 @@ export declare class Snapshot {
|
|
|
78
78
|
updatedAt: number;
|
|
79
79
|
sourceSandboxId: string;
|
|
80
80
|
sizeBytes: number;
|
|
81
|
-
expiresAt
|
|
81
|
+
expiresAt?: number | undefined;
|
|
82
82
|
}[];
|
|
83
83
|
}>>;
|
|
84
84
|
/**
|
package/dist/snapshot.js
CHANGED
|
@@ -41,9 +41,12 @@ class Snapshot {
|
|
|
41
41
|
return new Date(this.snapshot.createdAt);
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
44
|
-
* The expiration date of this snapshot.
|
|
44
|
+
* The expiration date of this snapshot, or undefined if it does not expire.
|
|
45
45
|
*/
|
|
46
46
|
get expiresAt() {
|
|
47
|
+
if (this.snapshot.expiresAt === undefined) {
|
|
48
|
+
return undefined;
|
|
49
|
+
}
|
|
47
50
|
return new Date(this.snapshot.expiresAt);
|
|
48
51
|
}
|
|
49
52
|
/**
|
package/dist/snapshot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":";;;AACA,6CAAyC;AAEzC,6DAAsE;AActE;;;;;GAKG;AACH,MAAa,QAAQ;IAGnB;;OAEG;IACH,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAOD;;;;;OAKG;IACH,YAAY,EACV,MAAM,EACN,QAAQ,GAIT;QACC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CACf,MAEkB;QAElB,MAAM,WAAW,GAAG,MAAM,IAAA,gCAAc,EAAC,MAAM,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,sBAAS,CAAC;YAC3B,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,KAAK,EAAE,MAAM,EAAE,KAAK;SACrB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,aAAa,CAAC;YAC1B,GAAG,WAAW;YACd,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,GAAG,CACd,MAA6D;QAE7D,MAAM,WAAW,GAAG,MAAM,IAAA,gCAAc,EAAC,MAAM,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,sBAAS,CAAC;YAC3B,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;SACzB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;YACvC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,QAAQ,CAAC;YAClB,MAAM;YACN,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,IAA+B;QAC1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;YAChD,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC5B,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;IACzC,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":";;;AACA,6CAAyC;AAEzC,6DAAsE;AActE;;;;;GAKG;AACH,MAAa,QAAQ;IAGnB;;OAEG;IACH,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1C,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAOD;;;;;OAKG;IACH,YAAY,EACV,MAAM,EACN,QAAQ,GAIT;QACC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CACf,MAEkB;QAElB,MAAM,WAAW,GAAG,MAAM,IAAA,gCAAc,EAAC,MAAM,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,sBAAS,CAAC;YAC3B,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,KAAK,EAAE,MAAM,EAAE,KAAK;SACrB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,aAAa,CAAC;YAC1B,GAAG,WAAW;YACd,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,GAAG,CACd,MAA6D;QAE7D,MAAM,WAAW,GAAG,MAAM,IAAA,gCAAc,EAAC,MAAM,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,sBAAS,CAAC;YAC3B,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;SACzB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;YACvC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,QAAQ,CAAC;YAClB,MAAM;YACN,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ;SAChC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,IAA+B;QAC1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;YAChD,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC5B,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;IACzC,CAAC;CACF;AAtID,4BAsIC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { SandboxMetaData } from "../api-client";
|
|
2
|
+
import type { NetworkPolicy } from "../network-policy";
|
|
3
|
+
export type ConvertedSandbox = Omit<SandboxMetaData, "networkPolicy"> & {
|
|
4
|
+
networkPolicy?: NetworkPolicy;
|
|
5
|
+
};
|
|
6
|
+
export declare function convertSandbox(sandbox: SandboxMetaData): ConvertedSandbox;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.convertSandbox = convertSandbox;
|
|
4
|
+
const network_policy_1 = require("./network-policy");
|
|
5
|
+
function convertSandbox(sandbox) {
|
|
6
|
+
const { networkPolicy, ...rest } = sandbox;
|
|
7
|
+
return {
|
|
8
|
+
...rest,
|
|
9
|
+
networkPolicy: networkPolicy
|
|
10
|
+
? (0, network_policy_1.fromAPINetworkPolicy)(networkPolicy)
|
|
11
|
+
: undefined,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=convert-sandbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convert-sandbox.js","sourceRoot":"","sources":["../../src/utils/convert-sandbox.ts"],"names":[],"mappings":";;AAQA,wCAQC;AAdD,qDAAwD;AAMxD,SAAgB,cAAc,CAAC,OAAwB;IACrD,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAC3C,OAAO;QACL,GAAG,IAAI;QACP,aAAa,EAAE,aAAa;YAC1B,CAAC,CAAC,IAAA,qCAAoB,EAAC,aAAa,CAAC;YACrC,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -1,52 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
* // Full internet access (default)
|
|
11
|
-
* { type: "internet-access" }
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* // No internet access
|
|
15
|
-
* { type: "no-access" }
|
|
16
|
-
*
|
|
17
|
-
* @example
|
|
18
|
-
* // Restricted access with specific domains
|
|
19
|
-
* // All traffic not explicitly allowed is denied.
|
|
20
|
-
* {
|
|
21
|
-
* type: "restricted",
|
|
22
|
-
* allowedDomains: ["*.npmjs.org", "github.com"],
|
|
23
|
-
* allowedCIDRs: ["10.0.0.0/8"],
|
|
24
|
-
* deniedCIDRs: ["10.1.0.0/16"]
|
|
25
|
-
* }
|
|
26
|
-
*/
|
|
27
|
-
export type NetworkPolicy = {
|
|
28
|
-
type: "internet-access";
|
|
29
|
-
} & Record<string, unknown> | {
|
|
30
|
-
type: "no-access";
|
|
31
|
-
} & Record<string, unknown> | ({
|
|
32
|
-
type: "restricted";
|
|
33
|
-
/**
|
|
34
|
-
* List of domains to allow traffic to.
|
|
35
|
-
* Use "*" prefix for wildcard matching (e.g., "*.npmjs.org").
|
|
36
|
-
*/
|
|
37
|
-
allowedDomains?: string[];
|
|
38
|
-
/**
|
|
39
|
-
* List of CIDRs to allow traffic to.
|
|
40
|
-
* Traffic to these addresses will bypass the domain allowlist.
|
|
41
|
-
*/
|
|
42
|
-
allowedCIDRs?: string[];
|
|
43
|
-
/**
|
|
44
|
-
* List of CIDRs to deny traffic to.
|
|
45
|
-
* These take precedence over allowed domains and CIDRs.
|
|
46
|
-
*/
|
|
47
|
-
deniedCIDRs?: string[];
|
|
48
|
-
} & Record<string, unknown>);
|
|
49
|
-
/**
|
|
50
|
-
* Converts the SDK NetworkPolicy to the API format.
|
|
51
|
-
*/
|
|
52
|
-
export declare function toAPINetworkPolicy(policy: NetworkPolicy | undefined): APINetworkPolicy | undefined;
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { NetworkPolicy } from "../network-policy";
|
|
3
|
+
import { NetworkPolicyValidator } from "../api-client/validators";
|
|
4
|
+
type APINetworkPolicy = z.infer<typeof NetworkPolicyValidator>;
|
|
5
|
+
export declare function toAPINetworkPolicy(policy: NetworkPolicy): APINetworkPolicy;
|
|
6
|
+
export declare function fromAPINetworkPolicy(api: APINetworkPolicy): NetworkPolicy;
|
|
7
|
+
export {};
|
|
@@ -1,22 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.toAPINetworkPolicy = toAPINetworkPolicy;
|
|
4
|
-
|
|
5
|
-
* Converts the SDK NetworkPolicy to the API format.
|
|
6
|
-
*/
|
|
4
|
+
exports.fromAPINetworkPolicy = fromAPINetworkPolicy;
|
|
7
5
|
function toAPINetworkPolicy(policy) {
|
|
8
|
-
if (
|
|
9
|
-
return
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
6
|
+
if (policy === "allow-all")
|
|
7
|
+
return { mode: "allow-all" };
|
|
8
|
+
if (policy === "deny-all")
|
|
9
|
+
return { mode: "deny-all" };
|
|
10
|
+
return {
|
|
11
|
+
mode: "custom",
|
|
12
|
+
...(policy.allow && { allowedDomains: policy.allow }),
|
|
13
|
+
...(policy.subnets?.allow && { allowedCIDRs: policy.subnets.allow }),
|
|
14
|
+
...(policy.subnets?.deny && { deniedCIDRs: policy.subnets.deny }),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
function fromAPINetworkPolicy(api) {
|
|
18
|
+
if (api.mode === "allow-all")
|
|
19
|
+
return "allow-all";
|
|
20
|
+
if (api.mode === "deny-all")
|
|
21
|
+
return "deny-all";
|
|
22
|
+
return {
|
|
23
|
+
...(api.allowedDomains && { allow: api.allowedDomains }),
|
|
24
|
+
...((api.allowedCIDRs || api.deniedCIDRs) && {
|
|
25
|
+
subnets: {
|
|
26
|
+
...(api.allowedCIDRs && { allow: api.allowedCIDRs }),
|
|
27
|
+
...(api.deniedCIDRs && { deny: api.deniedCIDRs }),
|
|
28
|
+
},
|
|
29
|
+
}),
|
|
30
|
+
};
|
|
21
31
|
}
|
|
22
32
|
//# sourceMappingURL=network-policy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-policy.js","sourceRoot":"","sources":["../../src/utils/network-policy.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"network-policy.js","sourceRoot":"","sources":["../../src/utils/network-policy.ts"],"names":[],"mappings":";;AAMA,gDASC;AAED,oDAYC;AAvBD,SAAgB,kBAAkB,CAAC,MAAqB;IACtD,IAAI,MAAM,KAAK,WAAW;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IACzD,IAAI,MAAM,KAAK,UAAU;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IACvD,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QACrD,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACpE,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,SAAgB,oBAAoB,CAAC,GAAqB;IACxD,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,WAAW,CAAC;IACjD,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC;IAC/C,OAAO;QACL,GAAG,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,cAAc,EAAE,CAAC;QACxD,GAAG,CAAC,CAAC,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI;YAC3C,OAAO,EAAE;gBACP,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC;gBACpD,GAAG,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;aAClD;SACF,CAAC;KACH,CAAC;AACJ,CAAC"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const VERSION = "1.
|
|
1
|
+
export declare const VERSION = "1.6.0";
|
package/dist/version.js
CHANGED