@robinpath/vercel 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +124 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/vercel.d.ts +394 -0
- package/dist/vercel.d.ts.map +1 -0
- package/dist/vercel.js +640 -0
- package/dist/vercel.js.map +1 -0
- package/package.json +13 -0
package/README.md
ADDED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# @robinpath/vercel
|
|
2
|
+
|
|
3
|
+
> Vercel module for RobinPath.
|
|
4
|
+
|
|
5
|
+
   
|
|
6
|
+
|
|
7
|
+
## Why use this module?
|
|
8
|
+
|
|
9
|
+
The `vercel` module lets you:
|
|
10
|
+
|
|
11
|
+
- List all projects in the authenticated account
|
|
12
|
+
- Get details of a project by ID or name
|
|
13
|
+
- Create a new Vercel project
|
|
14
|
+
- Update settings of an existing project
|
|
15
|
+
- Delete a Vercel project
|
|
16
|
+
|
|
17
|
+
All functions are callable directly from RobinPath scripts with a simple, consistent API.
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npm install @robinpath/vercel
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Quick Start
|
|
26
|
+
|
|
27
|
+
**1. Set up credentials**
|
|
28
|
+
|
|
29
|
+
```robinpath
|
|
30
|
+
vercel.setToken "my-vercel-token"
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**2. List all projects in the authenticated account**
|
|
34
|
+
|
|
35
|
+
```robinpath
|
|
36
|
+
vercel.listProjects {"limit": 20, "search": "my-app"}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Available Functions
|
|
40
|
+
|
|
41
|
+
| Function | Description |
|
|
42
|
+
|----------|-------------|
|
|
43
|
+
| `vercel.setToken` | Set the Vercel API bearer token for authentication |
|
|
44
|
+
| `vercel.listProjects` | List all projects in the authenticated account |
|
|
45
|
+
| `vercel.getProject` | Get details of a project by ID or name |
|
|
46
|
+
| `vercel.createProject` | Create a new Vercel project |
|
|
47
|
+
| `vercel.updateProject` | Update settings of an existing project |
|
|
48
|
+
| `vercel.deleteProject` | Delete a Vercel project |
|
|
49
|
+
| `vercel.listDeployments` | List deployments, optionally filtered by project, state, or target |
|
|
50
|
+
| `vercel.getDeployment` | Get details of a specific deployment |
|
|
51
|
+
| `vercel.createDeployment` | Create a new deployment with files |
|
|
52
|
+
| `vercel.cancelDeployment` | Cancel an in-progress deployment |
|
|
53
|
+
| `vercel.deleteDeployment` | Delete a deployment |
|
|
54
|
+
| `vercel.redeployDeployment` | Redeploy an existing deployment (create from existing) |
|
|
55
|
+
| `vercel.listDomains` | List all domains in the authenticated account |
|
|
56
|
+
| `vercel.getDomain` | Get information about a specific domain |
|
|
57
|
+
| `vercel.addDomain` | Register a new domain to the account |
|
|
58
|
+
| `vercel.removeDomain` | Remove a domain from the account |
|
|
59
|
+
| `vercel.listProjectDomains` | List all domains assigned to a project |
|
|
60
|
+
| `vercel.addProjectDomain` | Add a domain to a project |
|
|
61
|
+
| `vercel.removeProjectDomain` | Remove a domain from a project |
|
|
62
|
+
| `vercel.getDomainConfig` | Get DNS configuration for a domain |
|
|
63
|
+
| `vercel.verifyDomain` | Verify a domain attached to a project |
|
|
64
|
+
| `vercel.listEnvVars` | List all environment variables for a project |
|
|
65
|
+
| `vercel.getEnvVar` | Get details of a specific environment variable |
|
|
66
|
+
| `vercel.createEnvVar` | Create a new environment variable for a project |
|
|
67
|
+
| `vercel.updateEnvVar` | Update an existing environment variable |
|
|
68
|
+
| `vercel.deleteEnvVar` | Delete an environment variable from a project |
|
|
69
|
+
| `vercel.getUser` | Get the authenticated user's profile |
|
|
70
|
+
| `vercel.listTeams` | List all teams the authenticated user belongs to |
|
|
71
|
+
| `vercel.getTeam` | Get details of a specific team |
|
|
72
|
+
| `vercel.getDeploymentLogs` | Get build logs for a deployment |
|
|
73
|
+
|
|
74
|
+
## Examples
|
|
75
|
+
|
|
76
|
+
### List all projects in the authenticated account
|
|
77
|
+
|
|
78
|
+
```robinpath
|
|
79
|
+
vercel.listProjects {"limit": 20, "search": "my-app"}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Get details of a project by ID or name
|
|
83
|
+
|
|
84
|
+
```robinpath
|
|
85
|
+
vercel.getProject "my-project"
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### Create a new Vercel project
|
|
89
|
+
|
|
90
|
+
```robinpath
|
|
91
|
+
vercel.createProject "my-app" {"framework": "nextjs"}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Integration with RobinPath
|
|
95
|
+
|
|
96
|
+
```typescript
|
|
97
|
+
import { RobinPath } from "@wiredwp/robinpath";
|
|
98
|
+
import Module from "@robinpath/vercel";
|
|
99
|
+
|
|
100
|
+
const rp = new RobinPath();
|
|
101
|
+
rp.registerModule(Module.name, Module.functions);
|
|
102
|
+
rp.registerModuleMeta(Module.name, Module.functionMetadata);
|
|
103
|
+
|
|
104
|
+
const result = await rp.executeScript(`
|
|
105
|
+
vercel.setToken "my-vercel-token"
|
|
106
|
+
vercel.listProjects {"limit": 20, "search": "my-app"}
|
|
107
|
+
`);
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## Full API Reference
|
|
111
|
+
|
|
112
|
+
See [MODULE.md](./MODULE.md) for complete documentation including all parameters, return types, error handling, and advanced examples.
|
|
113
|
+
|
|
114
|
+
## Related Modules
|
|
115
|
+
|
|
116
|
+
- [`@robinpath/docker`](../docker) — Docker module for complementary functionality
|
|
117
|
+
- [`@robinpath/git`](../git) — Git module for complementary functionality
|
|
118
|
+
- [`@robinpath/github`](../github) — GitHub module for complementary functionality
|
|
119
|
+
- [`@robinpath/gitlab`](../gitlab) — GitLab module for complementary functionality
|
|
120
|
+
- [`@robinpath/netlify`](../netlify) — Netlify module for complementary functionality
|
|
121
|
+
|
|
122
|
+
## License
|
|
123
|
+
|
|
124
|
+
MIT
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ModuleAdapter } from "@wiredwp/robinpath";
|
|
2
|
+
declare const VercelModule: ModuleAdapter;
|
|
3
|
+
export default VercelModule;
|
|
4
|
+
export { VercelModule };
|
|
5
|
+
export { VercelFunctions, VercelFunctionMetadata, VercelModuleMetadata } from "./vercel.js";
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,QAAA,MAAM,YAAY,EAAE,aAMnB,CAAC;AAEF,eAAe,YAAY,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { VercelFunctions, VercelFunctionMetadata, VercelModuleMetadata } from "./vercel.js";
|
|
2
|
+
const VercelModule = {
|
|
3
|
+
name: "vercel",
|
|
4
|
+
functions: VercelFunctions,
|
|
5
|
+
functionMetadata: VercelFunctionMetadata,
|
|
6
|
+
moduleMetadata: VercelModuleMetadata,
|
|
7
|
+
global: false,
|
|
8
|
+
}; // as ModuleAdapter
|
|
9
|
+
export default VercelModule;
|
|
10
|
+
export { VercelModule };
|
|
11
|
+
export { VercelFunctions, VercelFunctionMetadata, VercelModuleMetadata } from "./vercel.js";
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAE5F,MAAM,YAAY,GAAkB;IAClC,IAAI,EAAE,QAAQ;IACd,SAAS,EAAE,eAAe;IAC1B,gBAAgB,EAAE,sBAA6B;IAC/C,cAAc,EAAE,oBAA2B;IAC3C,MAAM,EAAE,KAAK;CACd,CAAC,CAAC,mBAAmB;AAEtB,eAAe,YAAY,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/vercel.d.ts
ADDED
|
@@ -0,0 +1,394 @@
|
|
|
1
|
+
import type { BuiltinHandler } from "@wiredwp/robinpath";
|
|
2
|
+
export declare const VercelFunctions: Record<string, BuiltinHandler>;
|
|
3
|
+
export declare const VercelFunctionMetadata: {
|
|
4
|
+
setToken: {
|
|
5
|
+
description: string;
|
|
6
|
+
parameters: {
|
|
7
|
+
name: string;
|
|
8
|
+
dataType: string;
|
|
9
|
+
description: string;
|
|
10
|
+
formInputType: string;
|
|
11
|
+
required: boolean;
|
|
12
|
+
}[];
|
|
13
|
+
returnType: string;
|
|
14
|
+
returnDescription: string;
|
|
15
|
+
example: string;
|
|
16
|
+
};
|
|
17
|
+
listProjects: {
|
|
18
|
+
description: string;
|
|
19
|
+
parameters: {
|
|
20
|
+
name: string;
|
|
21
|
+
dataType: string;
|
|
22
|
+
description: string;
|
|
23
|
+
formInputType: string;
|
|
24
|
+
required: boolean;
|
|
25
|
+
}[];
|
|
26
|
+
returnType: string;
|
|
27
|
+
returnDescription: string;
|
|
28
|
+
example: string;
|
|
29
|
+
};
|
|
30
|
+
getProject: {
|
|
31
|
+
description: string;
|
|
32
|
+
parameters: {
|
|
33
|
+
name: string;
|
|
34
|
+
dataType: string;
|
|
35
|
+
description: string;
|
|
36
|
+
formInputType: string;
|
|
37
|
+
required: boolean;
|
|
38
|
+
}[];
|
|
39
|
+
returnType: string;
|
|
40
|
+
returnDescription: string;
|
|
41
|
+
example: string;
|
|
42
|
+
};
|
|
43
|
+
createProject: {
|
|
44
|
+
description: string;
|
|
45
|
+
parameters: {
|
|
46
|
+
name: string;
|
|
47
|
+
dataType: string;
|
|
48
|
+
description: string;
|
|
49
|
+
formInputType: string;
|
|
50
|
+
required: boolean;
|
|
51
|
+
}[];
|
|
52
|
+
returnType: string;
|
|
53
|
+
returnDescription: string;
|
|
54
|
+
example: string;
|
|
55
|
+
};
|
|
56
|
+
updateProject: {
|
|
57
|
+
description: string;
|
|
58
|
+
parameters: {
|
|
59
|
+
name: string;
|
|
60
|
+
dataType: string;
|
|
61
|
+
description: string;
|
|
62
|
+
formInputType: string;
|
|
63
|
+
required: boolean;
|
|
64
|
+
}[];
|
|
65
|
+
returnType: string;
|
|
66
|
+
returnDescription: string;
|
|
67
|
+
example: string;
|
|
68
|
+
};
|
|
69
|
+
deleteProject: {
|
|
70
|
+
description: string;
|
|
71
|
+
parameters: {
|
|
72
|
+
name: string;
|
|
73
|
+
dataType: string;
|
|
74
|
+
description: string;
|
|
75
|
+
formInputType: string;
|
|
76
|
+
required: boolean;
|
|
77
|
+
}[];
|
|
78
|
+
returnType: string;
|
|
79
|
+
returnDescription: string;
|
|
80
|
+
example: string;
|
|
81
|
+
};
|
|
82
|
+
listDeployments: {
|
|
83
|
+
description: string;
|
|
84
|
+
parameters: {
|
|
85
|
+
name: string;
|
|
86
|
+
dataType: string;
|
|
87
|
+
description: string;
|
|
88
|
+
formInputType: string;
|
|
89
|
+
required: boolean;
|
|
90
|
+
}[];
|
|
91
|
+
returnType: string;
|
|
92
|
+
returnDescription: string;
|
|
93
|
+
example: string;
|
|
94
|
+
};
|
|
95
|
+
getDeployment: {
|
|
96
|
+
description: string;
|
|
97
|
+
parameters: {
|
|
98
|
+
name: string;
|
|
99
|
+
dataType: string;
|
|
100
|
+
description: string;
|
|
101
|
+
formInputType: string;
|
|
102
|
+
required: boolean;
|
|
103
|
+
}[];
|
|
104
|
+
returnType: string;
|
|
105
|
+
returnDescription: string;
|
|
106
|
+
example: string;
|
|
107
|
+
};
|
|
108
|
+
createDeployment: {
|
|
109
|
+
description: string;
|
|
110
|
+
parameters: {
|
|
111
|
+
name: string;
|
|
112
|
+
dataType: string;
|
|
113
|
+
description: string;
|
|
114
|
+
formInputType: string;
|
|
115
|
+
required: boolean;
|
|
116
|
+
}[];
|
|
117
|
+
returnType: string;
|
|
118
|
+
returnDescription: string;
|
|
119
|
+
example: string;
|
|
120
|
+
};
|
|
121
|
+
cancelDeployment: {
|
|
122
|
+
description: string;
|
|
123
|
+
parameters: {
|
|
124
|
+
name: string;
|
|
125
|
+
dataType: string;
|
|
126
|
+
description: string;
|
|
127
|
+
formInputType: string;
|
|
128
|
+
required: boolean;
|
|
129
|
+
}[];
|
|
130
|
+
returnType: string;
|
|
131
|
+
returnDescription: string;
|
|
132
|
+
example: string;
|
|
133
|
+
};
|
|
134
|
+
deleteDeployment: {
|
|
135
|
+
description: string;
|
|
136
|
+
parameters: {
|
|
137
|
+
name: string;
|
|
138
|
+
dataType: string;
|
|
139
|
+
description: string;
|
|
140
|
+
formInputType: string;
|
|
141
|
+
required: boolean;
|
|
142
|
+
}[];
|
|
143
|
+
returnType: string;
|
|
144
|
+
returnDescription: string;
|
|
145
|
+
example: string;
|
|
146
|
+
};
|
|
147
|
+
redeployDeployment: {
|
|
148
|
+
description: string;
|
|
149
|
+
parameters: {
|
|
150
|
+
name: string;
|
|
151
|
+
dataType: string;
|
|
152
|
+
description: string;
|
|
153
|
+
formInputType: string;
|
|
154
|
+
required: boolean;
|
|
155
|
+
}[];
|
|
156
|
+
returnType: string;
|
|
157
|
+
returnDescription: string;
|
|
158
|
+
example: string;
|
|
159
|
+
};
|
|
160
|
+
listDomains: {
|
|
161
|
+
description: string;
|
|
162
|
+
parameters: {
|
|
163
|
+
name: string;
|
|
164
|
+
dataType: string;
|
|
165
|
+
description: string;
|
|
166
|
+
formInputType: string;
|
|
167
|
+
required: boolean;
|
|
168
|
+
}[];
|
|
169
|
+
returnType: string;
|
|
170
|
+
returnDescription: string;
|
|
171
|
+
example: string;
|
|
172
|
+
};
|
|
173
|
+
getDomain: {
|
|
174
|
+
description: string;
|
|
175
|
+
parameters: {
|
|
176
|
+
name: string;
|
|
177
|
+
dataType: string;
|
|
178
|
+
description: string;
|
|
179
|
+
formInputType: string;
|
|
180
|
+
required: boolean;
|
|
181
|
+
}[];
|
|
182
|
+
returnType: string;
|
|
183
|
+
returnDescription: string;
|
|
184
|
+
example: string;
|
|
185
|
+
};
|
|
186
|
+
addDomain: {
|
|
187
|
+
description: string;
|
|
188
|
+
parameters: {
|
|
189
|
+
name: string;
|
|
190
|
+
dataType: string;
|
|
191
|
+
description: string;
|
|
192
|
+
formInputType: string;
|
|
193
|
+
required: boolean;
|
|
194
|
+
}[];
|
|
195
|
+
returnType: string;
|
|
196
|
+
returnDescription: string;
|
|
197
|
+
example: string;
|
|
198
|
+
};
|
|
199
|
+
removeDomain: {
|
|
200
|
+
description: string;
|
|
201
|
+
parameters: {
|
|
202
|
+
name: string;
|
|
203
|
+
dataType: string;
|
|
204
|
+
description: string;
|
|
205
|
+
formInputType: string;
|
|
206
|
+
required: boolean;
|
|
207
|
+
}[];
|
|
208
|
+
returnType: string;
|
|
209
|
+
returnDescription: string;
|
|
210
|
+
example: string;
|
|
211
|
+
};
|
|
212
|
+
listProjectDomains: {
|
|
213
|
+
description: string;
|
|
214
|
+
parameters: {
|
|
215
|
+
name: string;
|
|
216
|
+
dataType: string;
|
|
217
|
+
description: string;
|
|
218
|
+
formInputType: string;
|
|
219
|
+
required: boolean;
|
|
220
|
+
}[];
|
|
221
|
+
returnType: string;
|
|
222
|
+
returnDescription: string;
|
|
223
|
+
example: string;
|
|
224
|
+
};
|
|
225
|
+
addProjectDomain: {
|
|
226
|
+
description: string;
|
|
227
|
+
parameters: {
|
|
228
|
+
name: string;
|
|
229
|
+
dataType: string;
|
|
230
|
+
description: string;
|
|
231
|
+
formInputType: string;
|
|
232
|
+
required: boolean;
|
|
233
|
+
}[];
|
|
234
|
+
returnType: string;
|
|
235
|
+
returnDescription: string;
|
|
236
|
+
example: string;
|
|
237
|
+
};
|
|
238
|
+
removeProjectDomain: {
|
|
239
|
+
description: string;
|
|
240
|
+
parameters: {
|
|
241
|
+
name: string;
|
|
242
|
+
dataType: string;
|
|
243
|
+
description: string;
|
|
244
|
+
formInputType: string;
|
|
245
|
+
required: boolean;
|
|
246
|
+
}[];
|
|
247
|
+
returnType: string;
|
|
248
|
+
returnDescription: string;
|
|
249
|
+
example: string;
|
|
250
|
+
};
|
|
251
|
+
getDomainConfig: {
|
|
252
|
+
description: string;
|
|
253
|
+
parameters: {
|
|
254
|
+
name: string;
|
|
255
|
+
dataType: string;
|
|
256
|
+
description: string;
|
|
257
|
+
formInputType: string;
|
|
258
|
+
required: boolean;
|
|
259
|
+
}[];
|
|
260
|
+
returnType: string;
|
|
261
|
+
returnDescription: string;
|
|
262
|
+
example: string;
|
|
263
|
+
};
|
|
264
|
+
verifyDomain: {
|
|
265
|
+
description: string;
|
|
266
|
+
parameters: {
|
|
267
|
+
name: string;
|
|
268
|
+
dataType: string;
|
|
269
|
+
description: string;
|
|
270
|
+
formInputType: string;
|
|
271
|
+
required: boolean;
|
|
272
|
+
}[];
|
|
273
|
+
returnType: string;
|
|
274
|
+
returnDescription: string;
|
|
275
|
+
example: string;
|
|
276
|
+
};
|
|
277
|
+
listEnvVars: {
|
|
278
|
+
description: string;
|
|
279
|
+
parameters: {
|
|
280
|
+
name: string;
|
|
281
|
+
dataType: string;
|
|
282
|
+
description: string;
|
|
283
|
+
formInputType: string;
|
|
284
|
+
required: boolean;
|
|
285
|
+
}[];
|
|
286
|
+
returnType: string;
|
|
287
|
+
returnDescription: string;
|
|
288
|
+
example: string;
|
|
289
|
+
};
|
|
290
|
+
getEnvVar: {
|
|
291
|
+
description: string;
|
|
292
|
+
parameters: {
|
|
293
|
+
name: string;
|
|
294
|
+
dataType: string;
|
|
295
|
+
description: string;
|
|
296
|
+
formInputType: string;
|
|
297
|
+
required: boolean;
|
|
298
|
+
}[];
|
|
299
|
+
returnType: string;
|
|
300
|
+
returnDescription: string;
|
|
301
|
+
example: string;
|
|
302
|
+
};
|
|
303
|
+
createEnvVar: {
|
|
304
|
+
description: string;
|
|
305
|
+
parameters: {
|
|
306
|
+
name: string;
|
|
307
|
+
dataType: string;
|
|
308
|
+
description: string;
|
|
309
|
+
formInputType: string;
|
|
310
|
+
required: boolean;
|
|
311
|
+
}[];
|
|
312
|
+
returnType: string;
|
|
313
|
+
returnDescription: string;
|
|
314
|
+
example: string;
|
|
315
|
+
};
|
|
316
|
+
updateEnvVar: {
|
|
317
|
+
description: string;
|
|
318
|
+
parameters: {
|
|
319
|
+
name: string;
|
|
320
|
+
dataType: string;
|
|
321
|
+
description: string;
|
|
322
|
+
formInputType: string;
|
|
323
|
+
required: boolean;
|
|
324
|
+
}[];
|
|
325
|
+
returnType: string;
|
|
326
|
+
returnDescription: string;
|
|
327
|
+
example: string;
|
|
328
|
+
};
|
|
329
|
+
deleteEnvVar: {
|
|
330
|
+
description: string;
|
|
331
|
+
parameters: {
|
|
332
|
+
name: string;
|
|
333
|
+
dataType: string;
|
|
334
|
+
description: string;
|
|
335
|
+
formInputType: string;
|
|
336
|
+
required: boolean;
|
|
337
|
+
}[];
|
|
338
|
+
returnType: string;
|
|
339
|
+
returnDescription: string;
|
|
340
|
+
example: string;
|
|
341
|
+
};
|
|
342
|
+
getUser: {
|
|
343
|
+
description: string;
|
|
344
|
+
parameters: never[];
|
|
345
|
+
returnType: string;
|
|
346
|
+
returnDescription: string;
|
|
347
|
+
example: string;
|
|
348
|
+
};
|
|
349
|
+
listTeams: {
|
|
350
|
+
description: string;
|
|
351
|
+
parameters: {
|
|
352
|
+
name: string;
|
|
353
|
+
dataType: string;
|
|
354
|
+
description: string;
|
|
355
|
+
formInputType: string;
|
|
356
|
+
required: boolean;
|
|
357
|
+
}[];
|
|
358
|
+
returnType: string;
|
|
359
|
+
returnDescription: string;
|
|
360
|
+
example: string;
|
|
361
|
+
};
|
|
362
|
+
getTeam: {
|
|
363
|
+
description: string;
|
|
364
|
+
parameters: {
|
|
365
|
+
name: string;
|
|
366
|
+
dataType: string;
|
|
367
|
+
description: string;
|
|
368
|
+
formInputType: string;
|
|
369
|
+
required: boolean;
|
|
370
|
+
}[];
|
|
371
|
+
returnType: string;
|
|
372
|
+
returnDescription: string;
|
|
373
|
+
example: string;
|
|
374
|
+
};
|
|
375
|
+
getDeploymentLogs: {
|
|
376
|
+
description: string;
|
|
377
|
+
parameters: {
|
|
378
|
+
name: string;
|
|
379
|
+
dataType: string;
|
|
380
|
+
description: string;
|
|
381
|
+
formInputType: string;
|
|
382
|
+
required: boolean;
|
|
383
|
+
}[];
|
|
384
|
+
returnType: string;
|
|
385
|
+
returnDescription: string;
|
|
386
|
+
example: string;
|
|
387
|
+
};
|
|
388
|
+
};
|
|
389
|
+
export declare const VercelModuleMetadata: {
|
|
390
|
+
description: string;
|
|
391
|
+
methods: string[];
|
|
392
|
+
category: string;
|
|
393
|
+
};
|
|
394
|
+
//# sourceMappingURL=vercel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vercel.d.ts","sourceRoot":"","sources":["../src/vercel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAA2C,MAAM,oBAAoB,CAAC;AAmWlG,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAS1D,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6QlC,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;CAIhC,CAAC"}
|
package/dist/vercel.js
ADDED
|
@@ -0,0 +1,640 @@
|
|
|
1
|
+
// --- Token storage ---
|
|
2
|
+
let apiToken = null;
|
|
3
|
+
function getToken() {
|
|
4
|
+
if (!apiToken)
|
|
5
|
+
throw new Error("Vercel API token not set. Call vercel.setToken first.");
|
|
6
|
+
return apiToken;
|
|
7
|
+
}
|
|
8
|
+
// --- API helpers ---
|
|
9
|
+
const API_BASE = "https://api.vercel.com";
|
|
10
|
+
async function vercelRequest(path, options = {}) {
|
|
11
|
+
const token = getToken();
|
|
12
|
+
const headers = {
|
|
13
|
+
Authorization: `Bearer ${token}`,
|
|
14
|
+
"Content-Type": "application/json",
|
|
15
|
+
...(options.headers ?? {}),
|
|
16
|
+
};
|
|
17
|
+
const url = path.startsWith("http") ? path : `${API_BASE}${path}`;
|
|
18
|
+
const response = await fetch(url, { ...options, headers });
|
|
19
|
+
const text = await response.text();
|
|
20
|
+
let body;
|
|
21
|
+
try {
|
|
22
|
+
body = JSON.parse(text);
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
body = text;
|
|
26
|
+
}
|
|
27
|
+
if (!response.ok) {
|
|
28
|
+
const errMsg = typeof body === "object" && body !== null && "error" in body
|
|
29
|
+
? JSON.stringify(body.error)
|
|
30
|
+
: String(body);
|
|
31
|
+
throw new Error(`Vercel API error (${response.status}): ${errMsg}`);
|
|
32
|
+
}
|
|
33
|
+
return body;
|
|
34
|
+
}
|
|
35
|
+
function buildQuery(params) {
|
|
36
|
+
const qs = new URLSearchParams();
|
|
37
|
+
for (const [k, v] of Object.entries(params)) {
|
|
38
|
+
if (v !== undefined && v !== null && v !== "")
|
|
39
|
+
qs.set(k, String(v));
|
|
40
|
+
}
|
|
41
|
+
const str = qs.toString();
|
|
42
|
+
return str ? `?${str}` : "";
|
|
43
|
+
}
|
|
44
|
+
// --- Auth ---
|
|
45
|
+
const setToken = (args) => {
|
|
46
|
+
const token = String(args[0] ?? "");
|
|
47
|
+
if (!token)
|
|
48
|
+
throw new Error("token is required");
|
|
49
|
+
apiToken = token;
|
|
50
|
+
return { configured: true };
|
|
51
|
+
};
|
|
52
|
+
// --- Projects ---
|
|
53
|
+
const listProjects = async (args) => {
|
|
54
|
+
const opts = (typeof args[0] === "object" && args[0] !== null ? args[0] : {});
|
|
55
|
+
const query = buildQuery({ limit: opts.limit, from: opts.from, search: opts.search });
|
|
56
|
+
const result = await vercelRequest(`/v9/projects${query}`);
|
|
57
|
+
return result;
|
|
58
|
+
};
|
|
59
|
+
const getProject = async (args) => {
|
|
60
|
+
const projectId = String(args[0] ?? "");
|
|
61
|
+
if (!projectId)
|
|
62
|
+
throw new Error("projectId is required");
|
|
63
|
+
const result = await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}`);
|
|
64
|
+
return result;
|
|
65
|
+
};
|
|
66
|
+
const createProject = async (args) => {
|
|
67
|
+
const name = String(args[0] ?? "");
|
|
68
|
+
if (!name)
|
|
69
|
+
throw new Error("name is required");
|
|
70
|
+
const opts = (typeof args[1] === "object" && args[1] !== null ? args[1] : {});
|
|
71
|
+
const payload = { name };
|
|
72
|
+
if (opts.framework)
|
|
73
|
+
payload.framework = opts.framework;
|
|
74
|
+
if (opts.gitRepository)
|
|
75
|
+
payload.gitRepository = opts.gitRepository;
|
|
76
|
+
if (opts.buildCommand)
|
|
77
|
+
payload.buildCommand = opts.buildCommand;
|
|
78
|
+
if (opts.rootDirectory)
|
|
79
|
+
payload.rootDirectory = opts.rootDirectory;
|
|
80
|
+
const result = await vercelRequest("/v10/projects", {
|
|
81
|
+
method: "POST",
|
|
82
|
+
body: JSON.stringify(payload),
|
|
83
|
+
});
|
|
84
|
+
return result;
|
|
85
|
+
};
|
|
86
|
+
const updateProject = async (args) => {
|
|
87
|
+
const projectId = String(args[0] ?? "");
|
|
88
|
+
if (!projectId)
|
|
89
|
+
throw new Error("projectId is required");
|
|
90
|
+
const opts = (typeof args[1] === "object" && args[1] !== null ? args[1] : {});
|
|
91
|
+
const result = await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}`, {
|
|
92
|
+
method: "PATCH",
|
|
93
|
+
body: JSON.stringify(opts),
|
|
94
|
+
});
|
|
95
|
+
return result;
|
|
96
|
+
};
|
|
97
|
+
const deleteProject = async (args) => {
|
|
98
|
+
const projectId = String(args[0] ?? "");
|
|
99
|
+
if (!projectId)
|
|
100
|
+
throw new Error("projectId is required");
|
|
101
|
+
await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}`, { method: "DELETE" });
|
|
102
|
+
return { deleted: true, projectId };
|
|
103
|
+
};
|
|
104
|
+
// --- Deployments ---
|
|
105
|
+
const listDeployments = async (args) => {
|
|
106
|
+
const opts = (typeof args[0] === "object" && args[0] !== null ? args[0] : {});
|
|
107
|
+
const query = buildQuery({
|
|
108
|
+
projectId: opts.projectId,
|
|
109
|
+
limit: opts.limit,
|
|
110
|
+
state: opts.state,
|
|
111
|
+
target: opts.target,
|
|
112
|
+
});
|
|
113
|
+
const result = await vercelRequest(`/v6/deployments${query}`);
|
|
114
|
+
return result;
|
|
115
|
+
};
|
|
116
|
+
const getDeployment = async (args) => {
|
|
117
|
+
const deploymentId = String(args[0] ?? "");
|
|
118
|
+
if (!deploymentId)
|
|
119
|
+
throw new Error("deploymentId is required");
|
|
120
|
+
const result = await vercelRequest(`/v13/deployments/${encodeURIComponent(deploymentId)}`);
|
|
121
|
+
return result;
|
|
122
|
+
};
|
|
123
|
+
const createDeployment = async (args) => {
|
|
124
|
+
const name = String(args[0] ?? "");
|
|
125
|
+
if (!name)
|
|
126
|
+
throw new Error("name is required");
|
|
127
|
+
const files = args[1];
|
|
128
|
+
if (!Array.isArray(files))
|
|
129
|
+
throw new Error("files must be an array");
|
|
130
|
+
const opts = (typeof args[2] === "object" && args[2] !== null ? args[2] : {});
|
|
131
|
+
const payload = { name, files };
|
|
132
|
+
if (opts.target)
|
|
133
|
+
payload.target = opts.target;
|
|
134
|
+
if (opts.gitSource)
|
|
135
|
+
payload.gitSource = opts.gitSource;
|
|
136
|
+
const result = await vercelRequest("/v13/deployments", {
|
|
137
|
+
method: "POST",
|
|
138
|
+
body: JSON.stringify(payload),
|
|
139
|
+
});
|
|
140
|
+
return result;
|
|
141
|
+
};
|
|
142
|
+
const cancelDeployment = async (args) => {
|
|
143
|
+
const deploymentId = String(args[0] ?? "");
|
|
144
|
+
if (!deploymentId)
|
|
145
|
+
throw new Error("deploymentId is required");
|
|
146
|
+
const result = await vercelRequest(`/v12/deployments/${encodeURIComponent(deploymentId)}/cancel`, {
|
|
147
|
+
method: "PATCH",
|
|
148
|
+
});
|
|
149
|
+
return result;
|
|
150
|
+
};
|
|
151
|
+
const deleteDeployment = async (args) => {
|
|
152
|
+
const deploymentId = String(args[0] ?? "");
|
|
153
|
+
if (!deploymentId)
|
|
154
|
+
throw new Error("deploymentId is required");
|
|
155
|
+
await vercelRequest(`/v13/deployments/${encodeURIComponent(deploymentId)}`, { method: "DELETE" });
|
|
156
|
+
return { deleted: true, deploymentId };
|
|
157
|
+
};
|
|
158
|
+
const redeployDeployment = async (args) => {
|
|
159
|
+
const deploymentId = String(args[0] ?? "");
|
|
160
|
+
if (!deploymentId)
|
|
161
|
+
throw new Error("deploymentId is required");
|
|
162
|
+
const opts = (typeof args[1] === "object" && args[1] !== null ? args[1] : {});
|
|
163
|
+
const payload = { deploymentId, ...opts };
|
|
164
|
+
const result = await vercelRequest("/v13/deployments", {
|
|
165
|
+
method: "POST",
|
|
166
|
+
body: JSON.stringify(payload),
|
|
167
|
+
});
|
|
168
|
+
return result;
|
|
169
|
+
};
|
|
170
|
+
// --- Domains ---
|
|
171
|
+
const listDomains = async (args) => {
|
|
172
|
+
const opts = (typeof args[0] === "object" && args[0] !== null ? args[0] : {});
|
|
173
|
+
const query = buildQuery({ limit: opts.limit, since: opts.since, until: opts.until });
|
|
174
|
+
const result = await vercelRequest(`/v5/domains${query}`);
|
|
175
|
+
return result;
|
|
176
|
+
};
|
|
177
|
+
const getDomain = async (args) => {
|
|
178
|
+
const domain = String(args[0] ?? "");
|
|
179
|
+
if (!domain)
|
|
180
|
+
throw new Error("domain is required");
|
|
181
|
+
const result = await vercelRequest(`/v5/domains/${encodeURIComponent(domain)}`);
|
|
182
|
+
return result;
|
|
183
|
+
};
|
|
184
|
+
const addDomain = async (args) => {
|
|
185
|
+
const domain = String(args[0] ?? "");
|
|
186
|
+
if (!domain)
|
|
187
|
+
throw new Error("domain is required");
|
|
188
|
+
const opts = (typeof args[1] === "object" && args[1] !== null ? args[1] : {});
|
|
189
|
+
const payload = { name: domain };
|
|
190
|
+
if (opts.cdnEnabled !== undefined)
|
|
191
|
+
payload.cdnEnabled = opts.cdnEnabled;
|
|
192
|
+
const result = await vercelRequest("/v5/domains", {
|
|
193
|
+
method: "POST",
|
|
194
|
+
body: JSON.stringify(payload),
|
|
195
|
+
});
|
|
196
|
+
return result;
|
|
197
|
+
};
|
|
198
|
+
const removeDomain = async (args) => {
|
|
199
|
+
const domain = String(args[0] ?? "");
|
|
200
|
+
if (!domain)
|
|
201
|
+
throw new Error("domain is required");
|
|
202
|
+
await vercelRequest(`/v6/domains/${encodeURIComponent(domain)}`, { method: "DELETE" });
|
|
203
|
+
return { deleted: true, domain };
|
|
204
|
+
};
|
|
205
|
+
const listProjectDomains = async (args) => {
|
|
206
|
+
const projectId = String(args[0] ?? "");
|
|
207
|
+
if (!projectId)
|
|
208
|
+
throw new Error("projectId is required");
|
|
209
|
+
const result = await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}/domains`);
|
|
210
|
+
return result;
|
|
211
|
+
};
|
|
212
|
+
const addProjectDomain = async (args) => {
|
|
213
|
+
const projectId = String(args[0] ?? "");
|
|
214
|
+
const domain = String(args[1] ?? "");
|
|
215
|
+
if (!projectId)
|
|
216
|
+
throw new Error("projectId is required");
|
|
217
|
+
if (!domain)
|
|
218
|
+
throw new Error("domain is required");
|
|
219
|
+
const result = await vercelRequest(`/v10/projects/${encodeURIComponent(projectId)}/domains`, {
|
|
220
|
+
method: "POST",
|
|
221
|
+
body: JSON.stringify({ name: domain }),
|
|
222
|
+
});
|
|
223
|
+
return result;
|
|
224
|
+
};
|
|
225
|
+
const removeProjectDomain = async (args) => {
|
|
226
|
+
const projectId = String(args[0] ?? "");
|
|
227
|
+
const domain = String(args[1] ?? "");
|
|
228
|
+
if (!projectId)
|
|
229
|
+
throw new Error("projectId is required");
|
|
230
|
+
if (!domain)
|
|
231
|
+
throw new Error("domain is required");
|
|
232
|
+
await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}/domains/${encodeURIComponent(domain)}`, {
|
|
233
|
+
method: "DELETE",
|
|
234
|
+
});
|
|
235
|
+
return { deleted: true, projectId, domain };
|
|
236
|
+
};
|
|
237
|
+
const getDomainConfig = async (args) => {
|
|
238
|
+
const domain = String(args[0] ?? "");
|
|
239
|
+
if (!domain)
|
|
240
|
+
throw new Error("domain is required");
|
|
241
|
+
const result = await vercelRequest(`/v6/domains/${encodeURIComponent(domain)}/config`);
|
|
242
|
+
return result;
|
|
243
|
+
};
|
|
244
|
+
const verifyDomain = async (args) => {
|
|
245
|
+
const projectId = String(args[0] ?? "");
|
|
246
|
+
const domain = String(args[1] ?? "");
|
|
247
|
+
if (!projectId)
|
|
248
|
+
throw new Error("projectId is required");
|
|
249
|
+
if (!domain)
|
|
250
|
+
throw new Error("domain is required");
|
|
251
|
+
const result = await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}/domains/${encodeURIComponent(domain)}/verify`, {
|
|
252
|
+
method: "POST",
|
|
253
|
+
});
|
|
254
|
+
return result;
|
|
255
|
+
};
|
|
256
|
+
// --- Environment Variables ---
|
|
257
|
+
const listEnvVars = async (args) => {
|
|
258
|
+
const projectId = String(args[0] ?? "");
|
|
259
|
+
if (!projectId)
|
|
260
|
+
throw new Error("projectId is required");
|
|
261
|
+
const result = await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}/env`);
|
|
262
|
+
return result;
|
|
263
|
+
};
|
|
264
|
+
const getEnvVar = async (args) => {
|
|
265
|
+
const projectId = String(args[0] ?? "");
|
|
266
|
+
const envId = String(args[1] ?? "");
|
|
267
|
+
if (!projectId)
|
|
268
|
+
throw new Error("projectId is required");
|
|
269
|
+
if (!envId)
|
|
270
|
+
throw new Error("envId is required");
|
|
271
|
+
const result = await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}/env/${encodeURIComponent(envId)}`);
|
|
272
|
+
return result;
|
|
273
|
+
};
|
|
274
|
+
const createEnvVar = async (args) => {
|
|
275
|
+
const projectId = String(args[0] ?? "");
|
|
276
|
+
const key = String(args[1] ?? "");
|
|
277
|
+
const value = String(args[2] ?? "");
|
|
278
|
+
const targets = args[3];
|
|
279
|
+
if (!projectId)
|
|
280
|
+
throw new Error("projectId is required");
|
|
281
|
+
if (!key)
|
|
282
|
+
throw new Error("key is required");
|
|
283
|
+
if (!targets)
|
|
284
|
+
throw new Error("targets is required (array of: production, preview, development)");
|
|
285
|
+
const opts = (typeof args[4] === "object" && args[4] !== null ? args[4] : {});
|
|
286
|
+
const payload = {
|
|
287
|
+
key,
|
|
288
|
+
value,
|
|
289
|
+
target: Array.isArray(targets) ? targets : [targets],
|
|
290
|
+
type: opts.type ?? "encrypted",
|
|
291
|
+
};
|
|
292
|
+
if (opts.gitBranch)
|
|
293
|
+
payload.gitBranch = opts.gitBranch;
|
|
294
|
+
const result = await vercelRequest(`/v10/projects/${encodeURIComponent(projectId)}/env`, {
|
|
295
|
+
method: "POST",
|
|
296
|
+
body: JSON.stringify(payload),
|
|
297
|
+
});
|
|
298
|
+
return result;
|
|
299
|
+
};
|
|
300
|
+
const updateEnvVar = async (args) => {
|
|
301
|
+
const projectId = String(args[0] ?? "");
|
|
302
|
+
const envId = String(args[1] ?? "");
|
|
303
|
+
const value = String(args[2] ?? "");
|
|
304
|
+
if (!projectId)
|
|
305
|
+
throw new Error("projectId is required");
|
|
306
|
+
if (!envId)
|
|
307
|
+
throw new Error("envId is required");
|
|
308
|
+
const opts = (typeof args[3] === "object" && args[3] !== null ? args[3] : {});
|
|
309
|
+
const payload = { value };
|
|
310
|
+
if (opts.target)
|
|
311
|
+
payload.target = opts.target;
|
|
312
|
+
if (opts.type)
|
|
313
|
+
payload.type = opts.type;
|
|
314
|
+
if (opts.gitBranch)
|
|
315
|
+
payload.gitBranch = opts.gitBranch;
|
|
316
|
+
const result = await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}/env/${encodeURIComponent(envId)}`, {
|
|
317
|
+
method: "PATCH",
|
|
318
|
+
body: JSON.stringify(payload),
|
|
319
|
+
});
|
|
320
|
+
return result;
|
|
321
|
+
};
|
|
322
|
+
const deleteEnvVar = async (args) => {
|
|
323
|
+
const projectId = String(args[0] ?? "");
|
|
324
|
+
const envId = String(args[1] ?? "");
|
|
325
|
+
if (!projectId)
|
|
326
|
+
throw new Error("projectId is required");
|
|
327
|
+
if (!envId)
|
|
328
|
+
throw new Error("envId is required");
|
|
329
|
+
await vercelRequest(`/v9/projects/${encodeURIComponent(projectId)}/env/${encodeURIComponent(envId)}`, {
|
|
330
|
+
method: "DELETE",
|
|
331
|
+
});
|
|
332
|
+
return { deleted: true, projectId, envId };
|
|
333
|
+
};
|
|
334
|
+
// --- Teams / User ---
|
|
335
|
+
const getUser = async () => {
|
|
336
|
+
const result = await vercelRequest("/v2/user");
|
|
337
|
+
return result.user ?? result;
|
|
338
|
+
};
|
|
339
|
+
const listTeams = async (args) => {
|
|
340
|
+
const opts = (typeof args[0] === "object" && args[0] !== null ? args[0] : {});
|
|
341
|
+
const query = buildQuery({ limit: opts.limit, since: opts.since, until: opts.until });
|
|
342
|
+
const result = await vercelRequest(`/v2/teams${query}`);
|
|
343
|
+
return result;
|
|
344
|
+
};
|
|
345
|
+
const getTeam = async (args) => {
|
|
346
|
+
const teamId = String(args[0] ?? "");
|
|
347
|
+
if (!teamId)
|
|
348
|
+
throw new Error("teamId is required");
|
|
349
|
+
const result = await vercelRequest(`/v2/teams/${encodeURIComponent(teamId)}`);
|
|
350
|
+
return result;
|
|
351
|
+
};
|
|
352
|
+
// --- Logs ---
|
|
353
|
+
const getDeploymentLogs = async (args) => {
|
|
354
|
+
const deploymentId = String(args[0] ?? "");
|
|
355
|
+
if (!deploymentId)
|
|
356
|
+
throw new Error("deploymentId is required");
|
|
357
|
+
const result = await vercelRequest(`/v2/deployments/${encodeURIComponent(deploymentId)}/events`);
|
|
358
|
+
return result;
|
|
359
|
+
};
|
|
360
|
+
// --- Exports ---
|
|
361
|
+
export const VercelFunctions = {
|
|
362
|
+
setToken,
|
|
363
|
+
listProjects, getProject, createProject, updateProject, deleteProject,
|
|
364
|
+
listDeployments, getDeployment, createDeployment, cancelDeployment, deleteDeployment, redeployDeployment,
|
|
365
|
+
listDomains, getDomain, addDomain, removeDomain,
|
|
366
|
+
listProjectDomains, addProjectDomain, removeProjectDomain, getDomainConfig, verifyDomain,
|
|
367
|
+
listEnvVars, getEnvVar, createEnvVar, updateEnvVar, deleteEnvVar,
|
|
368
|
+
getUser, listTeams, getTeam,
|
|
369
|
+
getDeploymentLogs,
|
|
370
|
+
};
|
|
371
|
+
export const VercelFunctionMetadata = {
|
|
372
|
+
setToken: {
|
|
373
|
+
description: "Set the Vercel API bearer token for authentication",
|
|
374
|
+
parameters: [
|
|
375
|
+
{ name: "token", dataType: "string", description: "Vercel API token", formInputType: "text", required: true },
|
|
376
|
+
],
|
|
377
|
+
returnType: "object", returnDescription: "{configured}",
|
|
378
|
+
example: 'vercel.setToken "my-vercel-token"',
|
|
379
|
+
},
|
|
380
|
+
// --- Projects ---
|
|
381
|
+
listProjects: {
|
|
382
|
+
description: "List all projects in the authenticated account",
|
|
383
|
+
parameters: [
|
|
384
|
+
{ name: "options", dataType: "object", description: "{limit, from, search}", formInputType: "json", required: false },
|
|
385
|
+
],
|
|
386
|
+
returnType: "object", returnDescription: "{projects[], pagination}",
|
|
387
|
+
example: 'vercel.listProjects {"limit": 20, "search": "my-app"}',
|
|
388
|
+
},
|
|
389
|
+
getProject: {
|
|
390
|
+
description: "Get details of a project by ID or name",
|
|
391
|
+
parameters: [
|
|
392
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
393
|
+
],
|
|
394
|
+
returnType: "object", returnDescription: "Project object with id, name, framework, targets, etc.",
|
|
395
|
+
example: 'vercel.getProject "my-project"',
|
|
396
|
+
},
|
|
397
|
+
createProject: {
|
|
398
|
+
description: "Create a new Vercel project",
|
|
399
|
+
parameters: [
|
|
400
|
+
{ name: "name", dataType: "string", description: "Project name", formInputType: "text", required: true },
|
|
401
|
+
{ name: "options", dataType: "object", description: "{framework, gitRepository, buildCommand, rootDirectory}", formInputType: "json", required: false },
|
|
402
|
+
],
|
|
403
|
+
returnType: "object", returnDescription: "Created project object",
|
|
404
|
+
example: 'vercel.createProject "my-app" {"framework": "nextjs"}',
|
|
405
|
+
},
|
|
406
|
+
updateProject: {
|
|
407
|
+
description: "Update settings of an existing project",
|
|
408
|
+
parameters: [
|
|
409
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
410
|
+
{ name: "options", dataType: "object", description: "Fields to update (name, framework, buildCommand, etc.)", formInputType: "json", required: true },
|
|
411
|
+
],
|
|
412
|
+
returnType: "object", returnDescription: "Updated project object",
|
|
413
|
+
example: 'vercel.updateProject "my-project" {"buildCommand": "npm run build"}',
|
|
414
|
+
},
|
|
415
|
+
deleteProject: {
|
|
416
|
+
description: "Delete a Vercel project",
|
|
417
|
+
parameters: [
|
|
418
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
419
|
+
],
|
|
420
|
+
returnType: "object", returnDescription: "{deleted, projectId}",
|
|
421
|
+
example: 'vercel.deleteProject "my-project"',
|
|
422
|
+
},
|
|
423
|
+
// --- Deployments ---
|
|
424
|
+
listDeployments: {
|
|
425
|
+
description: "List deployments, optionally filtered by project, state, or target",
|
|
426
|
+
parameters: [
|
|
427
|
+
{ name: "options", dataType: "object", description: "{projectId, limit, state, target}", formInputType: "json", required: false },
|
|
428
|
+
],
|
|
429
|
+
returnType: "object", returnDescription: "{deployments[], pagination}",
|
|
430
|
+
example: 'vercel.listDeployments {"projectId": "prj_abc123", "limit": 10}',
|
|
431
|
+
},
|
|
432
|
+
getDeployment: {
|
|
433
|
+
description: "Get details of a specific deployment",
|
|
434
|
+
parameters: [
|
|
435
|
+
{ name: "deploymentId", dataType: "string", description: "Deployment ID or URL", formInputType: "text", required: true },
|
|
436
|
+
],
|
|
437
|
+
returnType: "object", returnDescription: "Deployment object with id, url, state, meta, etc.",
|
|
438
|
+
example: 'vercel.getDeployment "dpl_abc123"',
|
|
439
|
+
},
|
|
440
|
+
createDeployment: {
|
|
441
|
+
description: "Create a new deployment with files",
|
|
442
|
+
parameters: [
|
|
443
|
+
{ name: "name", dataType: "string", description: "Project name for the deployment", formInputType: "text", required: true },
|
|
444
|
+
{ name: "files", dataType: "array", description: "Array of file objects [{file, data}]", formInputType: "json", required: true },
|
|
445
|
+
{ name: "options", dataType: "object", description: "{target, gitSource}", formInputType: "json", required: false },
|
|
446
|
+
],
|
|
447
|
+
returnType: "object", returnDescription: "Created deployment object",
|
|
448
|
+
example: 'vercel.createDeployment "my-app" [{"file": "index.html", "data": "<h1>Hello</h1>"}]',
|
|
449
|
+
},
|
|
450
|
+
cancelDeployment: {
|
|
451
|
+
description: "Cancel an in-progress deployment",
|
|
452
|
+
parameters: [
|
|
453
|
+
{ name: "deploymentId", dataType: "string", description: "Deployment ID", formInputType: "text", required: true },
|
|
454
|
+
],
|
|
455
|
+
returnType: "object", returnDescription: "Cancelled deployment object",
|
|
456
|
+
example: 'vercel.cancelDeployment "dpl_abc123"',
|
|
457
|
+
},
|
|
458
|
+
deleteDeployment: {
|
|
459
|
+
description: "Delete a deployment",
|
|
460
|
+
parameters: [
|
|
461
|
+
{ name: "deploymentId", dataType: "string", description: "Deployment ID or URL", formInputType: "text", required: true },
|
|
462
|
+
],
|
|
463
|
+
returnType: "object", returnDescription: "{deleted, deploymentId}",
|
|
464
|
+
example: 'vercel.deleteDeployment "dpl_abc123"',
|
|
465
|
+
},
|
|
466
|
+
redeployDeployment: {
|
|
467
|
+
description: "Redeploy an existing deployment (create from existing)",
|
|
468
|
+
parameters: [
|
|
469
|
+
{ name: "deploymentId", dataType: "string", description: "Source deployment ID to redeploy", formInputType: "text", required: true },
|
|
470
|
+
{ name: "options", dataType: "object", description: "{target, name}", formInputType: "json", required: false },
|
|
471
|
+
],
|
|
472
|
+
returnType: "object", returnDescription: "New deployment object",
|
|
473
|
+
example: 'vercel.redeployDeployment "dpl_abc123" {"target": "production"}',
|
|
474
|
+
},
|
|
475
|
+
// --- Domains ---
|
|
476
|
+
listDomains: {
|
|
477
|
+
description: "List all domains in the authenticated account",
|
|
478
|
+
parameters: [
|
|
479
|
+
{ name: "options", dataType: "object", description: "{limit, since, until}", formInputType: "json", required: false },
|
|
480
|
+
],
|
|
481
|
+
returnType: "object", returnDescription: "{domains[], pagination}",
|
|
482
|
+
example: "vercel.listDomains",
|
|
483
|
+
},
|
|
484
|
+
getDomain: {
|
|
485
|
+
description: "Get information about a specific domain",
|
|
486
|
+
parameters: [
|
|
487
|
+
{ name: "domain", dataType: "string", description: "Domain name", formInputType: "text", required: true },
|
|
488
|
+
],
|
|
489
|
+
returnType: "object", returnDescription: "Domain object with name, serviceType, verified, etc.",
|
|
490
|
+
example: 'vercel.getDomain "example.com"',
|
|
491
|
+
},
|
|
492
|
+
addDomain: {
|
|
493
|
+
description: "Register a new domain to the account",
|
|
494
|
+
parameters: [
|
|
495
|
+
{ name: "domain", dataType: "string", description: "Domain name to add", formInputType: "text", required: true },
|
|
496
|
+
{ name: "options", dataType: "object", description: "{cdnEnabled}", formInputType: "json", required: false },
|
|
497
|
+
],
|
|
498
|
+
returnType: "object", returnDescription: "Created domain object",
|
|
499
|
+
example: 'vercel.addDomain "example.com"',
|
|
500
|
+
},
|
|
501
|
+
removeDomain: {
|
|
502
|
+
description: "Remove a domain from the account",
|
|
503
|
+
parameters: [
|
|
504
|
+
{ name: "domain", dataType: "string", description: "Domain name to remove", formInputType: "text", required: true },
|
|
505
|
+
],
|
|
506
|
+
returnType: "object", returnDescription: "{deleted, domain}",
|
|
507
|
+
example: 'vercel.removeDomain "example.com"',
|
|
508
|
+
},
|
|
509
|
+
listProjectDomains: {
|
|
510
|
+
description: "List all domains assigned to a project",
|
|
511
|
+
parameters: [
|
|
512
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
513
|
+
],
|
|
514
|
+
returnType: "object", returnDescription: "{domains[]}",
|
|
515
|
+
example: 'vercel.listProjectDomains "my-project"',
|
|
516
|
+
},
|
|
517
|
+
addProjectDomain: {
|
|
518
|
+
description: "Add a domain to a project",
|
|
519
|
+
parameters: [
|
|
520
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
521
|
+
{ name: "domain", dataType: "string", description: "Domain name to add", formInputType: "text", required: true },
|
|
522
|
+
],
|
|
523
|
+
returnType: "object", returnDescription: "Domain configuration object",
|
|
524
|
+
example: 'vercel.addProjectDomain "my-project" "example.com"',
|
|
525
|
+
},
|
|
526
|
+
removeProjectDomain: {
|
|
527
|
+
description: "Remove a domain from a project",
|
|
528
|
+
parameters: [
|
|
529
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
530
|
+
{ name: "domain", dataType: "string", description: "Domain name to remove", formInputType: "text", required: true },
|
|
531
|
+
],
|
|
532
|
+
returnType: "object", returnDescription: "{deleted, projectId, domain}",
|
|
533
|
+
example: 'vercel.removeProjectDomain "my-project" "example.com"',
|
|
534
|
+
},
|
|
535
|
+
getDomainConfig: {
|
|
536
|
+
description: "Get DNS configuration for a domain",
|
|
537
|
+
parameters: [
|
|
538
|
+
{ name: "domain", dataType: "string", description: "Domain name", formInputType: "text", required: true },
|
|
539
|
+
],
|
|
540
|
+
returnType: "object", returnDescription: "Domain DNS config with misconfigured, cnames, aValues, etc.",
|
|
541
|
+
example: 'vercel.getDomainConfig "example.com"',
|
|
542
|
+
},
|
|
543
|
+
verifyDomain: {
|
|
544
|
+
description: "Verify a domain attached to a project",
|
|
545
|
+
parameters: [
|
|
546
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
547
|
+
{ name: "domain", dataType: "string", description: "Domain name to verify", formInputType: "text", required: true },
|
|
548
|
+
],
|
|
549
|
+
returnType: "object", returnDescription: "Verification result object",
|
|
550
|
+
example: 'vercel.verifyDomain "my-project" "example.com"',
|
|
551
|
+
},
|
|
552
|
+
// --- Environment Variables ---
|
|
553
|
+
listEnvVars: {
|
|
554
|
+
description: "List all environment variables for a project",
|
|
555
|
+
parameters: [
|
|
556
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
557
|
+
],
|
|
558
|
+
returnType: "object", returnDescription: "{envs[]} with key, value, target, type, id",
|
|
559
|
+
example: 'vercel.listEnvVars "my-project"',
|
|
560
|
+
},
|
|
561
|
+
getEnvVar: {
|
|
562
|
+
description: "Get details of a specific environment variable",
|
|
563
|
+
parameters: [
|
|
564
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
565
|
+
{ name: "envId", dataType: "string", description: "Environment variable ID", formInputType: "text", required: true },
|
|
566
|
+
],
|
|
567
|
+
returnType: "object", returnDescription: "Env var object with key, value, target, type",
|
|
568
|
+
example: 'vercel.getEnvVar "my-project" "env_abc123"',
|
|
569
|
+
},
|
|
570
|
+
createEnvVar: {
|
|
571
|
+
description: "Create a new environment variable for a project",
|
|
572
|
+
parameters: [
|
|
573
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
574
|
+
{ name: "key", dataType: "string", description: "Environment variable name", formInputType: "text", required: true },
|
|
575
|
+
{ name: "value", dataType: "string", description: "Environment variable value", formInputType: "text", required: true },
|
|
576
|
+
{ name: "targets", dataType: "array", description: "Deployment targets: production, preview, development", formInputType: "json", required: true },
|
|
577
|
+
{ name: "options", dataType: "object", description: "{type, gitBranch} type: encrypted|plain|sensitive", formInputType: "json", required: false },
|
|
578
|
+
],
|
|
579
|
+
returnType: "object", returnDescription: "Created env var object",
|
|
580
|
+
example: 'vercel.createEnvVar "my-project" "API_KEY" "secret123" ["production", "preview"]',
|
|
581
|
+
},
|
|
582
|
+
updateEnvVar: {
|
|
583
|
+
description: "Update an existing environment variable",
|
|
584
|
+
parameters: [
|
|
585
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
586
|
+
{ name: "envId", dataType: "string", description: "Environment variable ID", formInputType: "text", required: true },
|
|
587
|
+
{ name: "value", dataType: "string", description: "New value", formInputType: "text", required: true },
|
|
588
|
+
{ name: "options", dataType: "object", description: "{target, type, gitBranch}", formInputType: "json", required: false },
|
|
589
|
+
],
|
|
590
|
+
returnType: "object", returnDescription: "Updated env var object",
|
|
591
|
+
example: 'vercel.updateEnvVar "my-project" "env_abc123" "newValue"',
|
|
592
|
+
},
|
|
593
|
+
deleteEnvVar: {
|
|
594
|
+
description: "Delete an environment variable from a project",
|
|
595
|
+
parameters: [
|
|
596
|
+
{ name: "projectId", dataType: "string", description: "Project ID or name", formInputType: "text", required: true },
|
|
597
|
+
{ name: "envId", dataType: "string", description: "Environment variable ID", formInputType: "text", required: true },
|
|
598
|
+
],
|
|
599
|
+
returnType: "object", returnDescription: "{deleted, projectId, envId}",
|
|
600
|
+
example: 'vercel.deleteEnvVar "my-project" "env_abc123"',
|
|
601
|
+
},
|
|
602
|
+
// --- Teams / User ---
|
|
603
|
+
getUser: {
|
|
604
|
+
description: "Get the authenticated user's profile",
|
|
605
|
+
parameters: [],
|
|
606
|
+
returnType: "object", returnDescription: "User object with id, email, name, username, etc.",
|
|
607
|
+
example: "vercel.getUser",
|
|
608
|
+
},
|
|
609
|
+
listTeams: {
|
|
610
|
+
description: "List all teams the authenticated user belongs to",
|
|
611
|
+
parameters: [
|
|
612
|
+
{ name: "options", dataType: "object", description: "{limit, since, until}", formInputType: "json", required: false },
|
|
613
|
+
],
|
|
614
|
+
returnType: "object", returnDescription: "{teams[], pagination}",
|
|
615
|
+
example: "vercel.listTeams",
|
|
616
|
+
},
|
|
617
|
+
getTeam: {
|
|
618
|
+
description: "Get details of a specific team",
|
|
619
|
+
parameters: [
|
|
620
|
+
{ name: "teamId", dataType: "string", description: "Team ID", formInputType: "text", required: true },
|
|
621
|
+
],
|
|
622
|
+
returnType: "object", returnDescription: "Team object with id, slug, name, etc.",
|
|
623
|
+
example: 'vercel.getTeam "team_abc123"',
|
|
624
|
+
},
|
|
625
|
+
// --- Logs ---
|
|
626
|
+
getDeploymentLogs: {
|
|
627
|
+
description: "Get build logs for a deployment",
|
|
628
|
+
parameters: [
|
|
629
|
+
{ name: "deploymentId", dataType: "string", description: "Deployment ID", formInputType: "text", required: true },
|
|
630
|
+
],
|
|
631
|
+
returnType: "array", returnDescription: "Array of log event objects",
|
|
632
|
+
example: 'vercel.getDeploymentLogs "dpl_abc123"',
|
|
633
|
+
},
|
|
634
|
+
};
|
|
635
|
+
export const VercelModuleMetadata = {
|
|
636
|
+
description: "Vercel REST API client for projects, deployments, domains, environment variables, teams, and logs",
|
|
637
|
+
methods: Object.keys(VercelFunctions),
|
|
638
|
+
category: "cloud",
|
|
639
|
+
};
|
|
640
|
+
//# sourceMappingURL=vercel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vercel.js","sourceRoot":"","sources":["../src/vercel.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@robinpath/vercel",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"publishConfig": { "access": "public" },
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"exports": { ".": { "import": "./dist/index.js", "types": "./dist/index.d.ts" } },
|
|
9
|
+
"files": ["dist"],
|
|
10
|
+
"scripts": { "build": "tsc" },
|
|
11
|
+
"peerDependencies": { "@wiredwp/robinpath": ">=0.20.0" },
|
|
12
|
+
"devDependencies": { "@wiredwp/robinpath": "^0.30.1", "typescript": "^5.6.0" }
|
|
13
|
+
}
|