vercel 51.1.0 → 51.2.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.
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-K4IC7LFB.js";
13
13
  import {
14
14
  loginCommand
15
- } from "./chunk-VOT6BE6P.js";
15
+ } from "./chunk-F2ROYUW2.js";
16
16
  import {
17
17
  help
18
18
  } from "./chunk-Y5YCSB6X.js";
@@ -1581,6 +1581,28 @@ var removeSubcommand4 = {
1581
1581
  ],
1582
1582
  examples: []
1583
1583
  };
1584
+ var priceSubcommand = {
1585
+ name: "price",
1586
+ aliases: [],
1587
+ description: "Show registrar price quote for a domain",
1588
+ arguments: [
1589
+ {
1590
+ name: "domain",
1591
+ required: true
1592
+ }
1593
+ ],
1594
+ options: [formatOption],
1595
+ examples: [
1596
+ {
1597
+ name: "Price quote for a domain",
1598
+ value: `${packageName} domains price example.com`
1599
+ },
1600
+ {
1601
+ name: "JSON output",
1602
+ value: `${packageName} domains price example.com --format json`
1603
+ }
1604
+ ]
1605
+ };
1584
1606
  var buySubcommand = {
1585
1607
  name: "buy",
1586
1608
  aliases: [],
@@ -1648,6 +1670,7 @@ var domainsCommand = {
1648
1670
  addSubcommand5,
1649
1671
  buySubcommand,
1650
1672
  moveSubcommand,
1673
+ priceSubcommand,
1651
1674
  transferInSubcommand,
1652
1675
  removeSubcommand4
1653
1676
  ],
@@ -2183,12 +2206,152 @@ var rulesInspectSubcommand = {
2183
2206
  }
2184
2207
  ]
2185
2208
  };
2209
+ var rulesAddSubcommand = {
2210
+ name: "add",
2211
+ aliases: [],
2212
+ description: "Create a new custom firewall rule using AI, an interactive builder, JSON, or command-line flags",
2213
+ arguments: [{ name: "name", required: false }],
2214
+ options: [
2215
+ {
2216
+ name: "ai",
2217
+ shorthand: null,
2218
+ type: String,
2219
+ deprecated: false,
2220
+ description: "Generate rule from natural language (AI-powered)"
2221
+ },
2222
+ {
2223
+ name: "json",
2224
+ shorthand: null,
2225
+ type: String,
2226
+ deprecated: false,
2227
+ description: "Create rule from JSON payload"
2228
+ },
2229
+ {
2230
+ name: "condition",
2231
+ shorthand: null,
2232
+ type: [String],
2233
+ deprecated: false,
2234
+ description: `Condition as JSON (repeatable). Multiple conditions are AND'd together. Fields: type (required), op (required), value, key (for header/cookie/query), neg (boolean). Example: '{"type":"path","op":"pre","value":"/api"}'.`
2235
+ },
2236
+ {
2237
+ name: "or",
2238
+ shorthand: null,
2239
+ type: Boolean,
2240
+ deprecated: false,
2241
+ description: "Start a new OR group. Conditions before --or are AND'd, conditions after form a separate group. Example: --condition A --condition B --or --condition C matches (A AND B) OR C."
2242
+ },
2243
+ {
2244
+ name: "action",
2245
+ shorthand: null,
2246
+ type: String,
2247
+ deprecated: false,
2248
+ description: "Action: deny, challenge, log, bypass, rate_limit, redirect"
2249
+ },
2250
+ {
2251
+ name: "duration",
2252
+ shorthand: null,
2253
+ type: String,
2254
+ deprecated: false,
2255
+ description: "Action duration: 1m, 5m, 15m, 30m, 1h"
2256
+ },
2257
+ {
2258
+ name: "description",
2259
+ shorthand: null,
2260
+ type: String,
2261
+ deprecated: false,
2262
+ description: "Rule description (max 256 chars)"
2263
+ },
2264
+ {
2265
+ name: "inactive",
2266
+ shorthand: null,
2267
+ type: Boolean,
2268
+ deprecated: false,
2269
+ description: "Create as inactive (default: active)"
2270
+ },
2271
+ {
2272
+ name: "rate-limit-algo",
2273
+ shorthand: null,
2274
+ type: String,
2275
+ deprecated: false,
2276
+ description: "Rate limit algorithm: fixed_window, token_bucket (default: fixed_window)"
2277
+ },
2278
+ {
2279
+ name: "rate-limit-window",
2280
+ shorthand: null,
2281
+ type: Number,
2282
+ deprecated: false,
2283
+ description: "Rate limit window in seconds (required for rate_limit)"
2284
+ },
2285
+ {
2286
+ name: "rate-limit-requests",
2287
+ shorthand: null,
2288
+ type: Number,
2289
+ deprecated: false,
2290
+ description: "Rate limit max requests per window (required for rate_limit)"
2291
+ },
2292
+ {
2293
+ name: "rate-limit-keys",
2294
+ shorthand: null,
2295
+ type: [String],
2296
+ deprecated: false,
2297
+ description: "Rate limit keys (repeatable): ip, ja4, header:name (default: ip)"
2298
+ },
2299
+ {
2300
+ name: "rate-limit-action",
2301
+ shorthand: null,
2302
+ type: String,
2303
+ deprecated: false,
2304
+ description: "Action when rate limit is exceeded: log, deny, challenge, rate_limit (default: rate_limit)"
2305
+ },
2306
+ {
2307
+ name: "redirect-url",
2308
+ shorthand: null,
2309
+ type: String,
2310
+ deprecated: false,
2311
+ description: "Redirect URL or path"
2312
+ },
2313
+ {
2314
+ name: "redirect-permanent",
2315
+ shorthand: null,
2316
+ type: Boolean,
2317
+ deprecated: false,
2318
+ description: "Permanent redirect (301). Default: temporary (307)"
2319
+ },
2320
+ yesOption
2321
+ ],
2322
+ examples: [
2323
+ {
2324
+ name: "Interactive mode",
2325
+ value: `${packageName} firewall rules add`
2326
+ },
2327
+ {
2328
+ name: "Create with AI",
2329
+ value: `${packageName} firewall rules add --ai "Rate limit /api to 100 requests per minute by IP"`
2330
+ },
2331
+ {
2332
+ name: "Create from JSON",
2333
+ value: `${packageName} firewall rules add --json '{"name":"Block bots","active":true,"conditionGroup":[{"conditions":[{"type":"user_agent","op":"sub","value":"crawler"}]}],"action":{"mitigate":{"action":"deny"}}}'`
2334
+ },
2335
+ {
2336
+ name: "Create with flags",
2337
+ value: `${packageName} firewall rules add "Block bots" --condition '{"type":"user_agent","op":"sub","value":"crawler"}' --action deny --yes`
2338
+ },
2339
+ {
2340
+ name: "Create with OR groups",
2341
+ value: `${packageName} firewall rules add "Block suspicious" --condition '{"type":"user_agent","op":"sub","value":"crawler"}' --or --condition '{"type":"ip_address","op":"eq","value":"1.2.3.4"}' --action deny --yes`
2342
+ }
2343
+ ]
2344
+ };
2186
2345
  var rulesSubcommand = {
2187
2346
  name: "rules",
2188
2347
  aliases: [],
2189
2348
  description: "Manage custom firewall rules that control how traffic is handled based on conditions",
2190
2349
  arguments: [],
2191
- subcommands: [rulesListSubcommand, rulesInspectSubcommand],
2350
+ subcommands: [
2351
+ rulesListSubcommand,
2352
+ rulesInspectSubcommand,
2353
+ rulesAddSubcommand
2354
+ ],
2192
2355
  options: [],
2193
2356
  examples: [
2194
2357
  {
@@ -2198,6 +2361,10 @@ var rulesSubcommand = {
2198
2361
  {
2199
2362
  name: "Inspect a rule",
2200
2363
  value: `${packageName} firewall rules inspect "Block bots"`
2364
+ },
2365
+ {
2366
+ name: "Create with AI",
2367
+ value: `${packageName} firewall rules add --ai "Rate limit /api to 100 requests per minute by IP"`
2201
2368
  }
2202
2369
  ]
2203
2370
  };
@@ -6911,6 +7078,7 @@ export {
6911
7078
  inspectSubcommand,
6912
7079
  addSubcommand5 as addSubcommand4,
6913
7080
  removeSubcommand4,
7081
+ priceSubcommand,
6914
7082
  buySubcommand,
6915
7083
  moveSubcommand,
6916
7084
  transferInSubcommand,
@@ -6937,6 +7105,7 @@ export {
6937
7105
  ipBlocksSubcommand,
6938
7106
  rulesListSubcommand,
6939
7107
  rulesInspectSubcommand,
7108
+ rulesAddSubcommand,
6940
7109
  rulesSubcommand,
6941
7110
  attackModeEnableSubcommand,
6942
7111
  attackModeDisableSubcommand,
@@ -25,7 +25,7 @@ import {
25
25
  } from "./chunk-NYO5XRBQ.js";
26
26
  import {
27
27
  CommandTimeout
28
- } from "./chunk-VOT6BE6P.js";
28
+ } from "./chunk-F2ROYUW2.js";
29
29
  import {
30
30
  ua_default
31
31
  } from "./chunk-Q6BEDVOU.js";
@@ -13,7 +13,7 @@ import {
13
13
  purchaseDomainIfAvailable,
14
14
  require_cjs,
15
15
  setupDomain
16
- } from "../../chunks/chunk-E6ZEBMUP.js";
16
+ } from "../../chunks/chunk-ZL5SYUAG.js";
17
17
  import {
18
18
  readLocalConfig
19
19
  } from "../../chunks/chunk-K4IC7LFB.js";
@@ -42,7 +42,7 @@ import {
42
42
  deprecatedArchiveSplitTgz,
43
43
  getCommandAliases,
44
44
  initSubcommand
45
- } from "../../chunks/chunk-VOT6BE6P.js";
45
+ } from "../../chunks/chunk-F2ROYUW2.js";
46
46
  import "../../chunks/chunk-BQUQ5F7R.js";
47
47
  import "../../chunks/chunk-BUBUVE23.js";
48
48
  import "../../chunks/chunk-2IAZZEVQ.js";
@@ -28,7 +28,7 @@ import {
28
28
  } from "../../chunks/chunk-YPQSDAEW.js";
29
29
  import {
30
30
  getCommandAliases
31
- } from "../../chunks/chunk-VOT6BE6P.js";
31
+ } from "../../chunks/chunk-F2ROYUW2.js";
32
32
  import "../../chunks/chunk-BQUQ5F7R.js";
33
33
  import "../../chunks/chunk-BUBUVE23.js";
34
34
  import "../../chunks/chunk-2IAZZEVQ.js";
@@ -14,7 +14,7 @@ import {
14
14
  addSubcommand7 as addSubcommand,
15
15
  getCommandAliases,
16
16
  linkCommand
17
- } from "../../chunks/chunk-VOT6BE6P.js";
17
+ } from "../../chunks/chunk-F2ROYUW2.js";
18
18
  import "../../chunks/chunk-BQUQ5F7R.js";
19
19
  import "../../chunks/chunk-BUBUVE23.js";
20
20
  import "../../chunks/chunk-2IAZZEVQ.js";