@indigoai-us/hq-cli 5.345.197 → 5.345.198

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.
@@ -24625,7 +24625,7 @@ export const COMMAND_CATALOG = [
24625
24625
  },
24626
24626
  {
24627
24627
  "name": "domains",
24628
- "description": "Manage custom domains on your deployed apps, and buy domains",
24628
+ "description": "Manage custom domains on your deployed apps, buy domains, and edit their DNS",
24629
24629
  "aliases": [],
24630
24630
  "hidden": false,
24631
24631
  "helpOption": true,
@@ -24634,7 +24634,7 @@ export const COMMAND_CATALOG = [
24634
24634
  "helpText": [
24635
24635
  {
24636
24636
  "position": "after",
24637
- "text": "\nadd, remove and buy ask for approval in an interactive terminal. Without one (a script, CI, or a Windows shell that does not report a terminal, such as Git Bash under mintty), pass --yes."
24637
+ "text": "\nadd, remove and buy ask for approval in an interactive terminal. buy accepts y or --yes. Without a terminal (a script, CI, or a Windows shell that does not report a terminal, such as Git Bash under mintty), pass --yes."
24638
24638
  }
24639
24639
  ],
24640
24640
  "arguments": [],
@@ -24948,7 +24948,7 @@ export const COMMAND_CATALOG = [
24948
24948
  },
24949
24949
  {
24950
24950
  "name": "search",
24951
- "description": "Check whether a domain can be bought, and its price",
24951
+ "description": "Check whether a domain can be bought, with availability and registrar prices",
24952
24952
  "aliases": [],
24953
24953
  "hidden": false,
24954
24954
  "helpOption": true,
@@ -24979,7 +24979,7 @@ export const COMMAND_CATALOG = [
24979
24979
  },
24980
24980
  {
24981
24981
  "name": "buy",
24982
- "description": "Buy a domain for the company (owner or admin)",
24982
+ "description": "Buy a domain for the company and say what it is for (owner or admin)",
24983
24983
  "aliases": [],
24984
24984
  "hidden": false,
24985
24985
  "helpOption": true,
@@ -24995,9 +24995,14 @@ export const COMMAND_CATALOG = [
24995
24995
  }
24996
24996
  ],
24997
24997
  "options": [
24998
+ {
24999
+ "flags": "--use <use>",
25000
+ "description": "what the domain is for: app:<app id>, base, or hold",
25001
+ "hidden": false
25002
+ },
24998
25003
  {
24999
25004
  "flags": "--price <usd>",
25000
- "description": "first-year price shown by 'hq deploy domains search'",
25005
+ "description": "first-year registrar price shown by 'hq deploy domains search'",
25001
25006
  "hidden": false
25002
25007
  },
25003
25008
  {
@@ -25017,7 +25022,62 @@ export const COMMAND_CATALOG = [
25017
25022
  },
25018
25023
  {
25019
25024
  "flags": "--yes",
25020
- "description": "buy without a prompt",
25025
+ "description": "buy without a prompt, after you have read the transfer lock and final-purchase notice",
25026
+ "hidden": false
25027
+ },
25028
+ {
25029
+ "flags": "--json",
25030
+ "description": "print machine-readable JSON",
25031
+ "hidden": false
25032
+ }
25033
+ ],
25034
+ "subcommands": []
25035
+ },
25036
+ {
25037
+ "name": "owned",
25038
+ "description": "List domains this company bought",
25039
+ "aliases": [],
25040
+ "hidden": false,
25041
+ "helpOption": true,
25042
+ "helpCommand": false,
25043
+ "usage": "[options]",
25044
+ "helpText": [],
25045
+ "arguments": [],
25046
+ "options": [
25047
+ {
25048
+ "flags": "--company <slug>",
25049
+ "description": "use this company instead of the active company",
25050
+ "hidden": false
25051
+ },
25052
+ {
25053
+ "flags": "--json",
25054
+ "description": "print machine-readable JSON",
25055
+ "hidden": false
25056
+ }
25057
+ ],
25058
+ "subcommands": []
25059
+ },
25060
+ {
25061
+ "name": "show",
25062
+ "description": "Show one purchased domain, including nameservers and events",
25063
+ "aliases": [],
25064
+ "hidden": false,
25065
+ "helpOption": true,
25066
+ "helpCommand": false,
25067
+ "usage": "[options] <domain>",
25068
+ "helpText": [],
25069
+ "arguments": [
25070
+ {
25071
+ "name": "domain",
25072
+ "required": true,
25073
+ "variadic": false,
25074
+ "description": ""
25075
+ }
25076
+ ],
25077
+ "options": [
25078
+ {
25079
+ "flags": "--company <slug>",
25080
+ "description": "use this company instead of the active company",
25021
25081
  "hidden": false
25022
25082
  },
25023
25083
  {
@@ -25027,6 +25087,292 @@ export const COMMAND_CATALOG = [
25027
25087
  }
25028
25088
  ],
25029
25089
  "subcommands": []
25090
+ },
25091
+ {
25092
+ "name": "renew",
25093
+ "description": "Turn automatic renewal off or back on for a purchased domain",
25094
+ "aliases": [],
25095
+ "hidden": false,
25096
+ "helpOption": true,
25097
+ "helpCommand": true,
25098
+ "usage": "[options] [command]",
25099
+ "helpText": [],
25100
+ "arguments": [],
25101
+ "options": [],
25102
+ "subcommands": [
25103
+ {
25104
+ "name": "cancel",
25105
+ "description": "Stop automatic renewal for a purchased domain",
25106
+ "aliases": [],
25107
+ "hidden": false,
25108
+ "helpOption": true,
25109
+ "helpCommand": false,
25110
+ "usage": "[options] <domain>",
25111
+ "helpText": [],
25112
+ "arguments": [
25113
+ {
25114
+ "name": "domain",
25115
+ "required": true,
25116
+ "variadic": false,
25117
+ "description": ""
25118
+ }
25119
+ ],
25120
+ "options": [
25121
+ {
25122
+ "flags": "--yes",
25123
+ "description": "Confirm the billing setting change",
25124
+ "hidden": false
25125
+ },
25126
+ {
25127
+ "flags": "--company <slug>",
25128
+ "description": "use this company instead of the active company",
25129
+ "hidden": false
25130
+ },
25131
+ {
25132
+ "flags": "--json",
25133
+ "description": "print machine-readable JSON",
25134
+ "hidden": false
25135
+ }
25136
+ ],
25137
+ "subcommands": []
25138
+ },
25139
+ {
25140
+ "name": "resume",
25141
+ "description": "Turn automatic renewal back on for a purchased domain",
25142
+ "aliases": [],
25143
+ "hidden": false,
25144
+ "helpOption": true,
25145
+ "helpCommand": false,
25146
+ "usage": "[options] <domain>",
25147
+ "helpText": [],
25148
+ "arguments": [
25149
+ {
25150
+ "name": "domain",
25151
+ "required": true,
25152
+ "variadic": false,
25153
+ "description": ""
25154
+ }
25155
+ ],
25156
+ "options": [
25157
+ {
25158
+ "flags": "--yes",
25159
+ "description": "Confirm the billing setting change",
25160
+ "hidden": false
25161
+ },
25162
+ {
25163
+ "flags": "--company <slug>",
25164
+ "description": "use this company instead of the active company",
25165
+ "hidden": false
25166
+ },
25167
+ {
25168
+ "flags": "--json",
25169
+ "description": "print machine-readable JSON",
25170
+ "hidden": false
25171
+ }
25172
+ ],
25173
+ "subcommands": []
25174
+ }
25175
+ ]
25176
+ },
25177
+ {
25178
+ "name": "records",
25179
+ "description": "Manage DNS records on a domain this company bought",
25180
+ "aliases": [],
25181
+ "hidden": false,
25182
+ "helpOption": true,
25183
+ "helpCommand": true,
25184
+ "usage": "[options] [command]",
25185
+ "helpText": [],
25186
+ "arguments": [],
25187
+ "options": [],
25188
+ "subcommands": [
25189
+ {
25190
+ "name": "list",
25191
+ "description": "List DNS records, marking the ones HQ has locked",
25192
+ "aliases": [],
25193
+ "hidden": false,
25194
+ "helpOption": true,
25195
+ "helpCommand": false,
25196
+ "usage": "[options] <domain>",
25197
+ "helpText": [],
25198
+ "arguments": [
25199
+ {
25200
+ "name": "domain",
25201
+ "required": true,
25202
+ "variadic": false,
25203
+ "description": ""
25204
+ }
25205
+ ],
25206
+ "options": [
25207
+ {
25208
+ "flags": "--company <slug>",
25209
+ "description": "use this company instead of the active company",
25210
+ "hidden": false
25211
+ },
25212
+ {
25213
+ "flags": "--json",
25214
+ "description": "print machine-readable JSON",
25215
+ "hidden": false
25216
+ }
25217
+ ],
25218
+ "subcommands": []
25219
+ },
25220
+ {
25221
+ "name": "add",
25222
+ "description": "Add a DNS record",
25223
+ "aliases": [],
25224
+ "hidden": false,
25225
+ "helpOption": true,
25226
+ "helpCommand": false,
25227
+ "usage": "[options] <domain>",
25228
+ "helpText": [],
25229
+ "arguments": [
25230
+ {
25231
+ "name": "domain",
25232
+ "required": true,
25233
+ "variadic": false,
25234
+ "description": ""
25235
+ }
25236
+ ],
25237
+ "options": [
25238
+ {
25239
+ "flags": "--type <type>",
25240
+ "description": "A, AAAA, CNAME, MX, TXT, SRV, or CAA",
25241
+ "hidden": false
25242
+ },
25243
+ {
25244
+ "flags": "--name <name>",
25245
+ "description": "record name, such as www or the full domain",
25246
+ "hidden": false
25247
+ },
25248
+ {
25249
+ "flags": "--value <value>",
25250
+ "description": "record value (repeat for more than one)",
25251
+ "hidden": false,
25252
+ "defaultValue": []
25253
+ },
25254
+ {
25255
+ "flags": "--ttl <seconds>",
25256
+ "description": "time to live in seconds",
25257
+ "hidden": false
25258
+ },
25259
+ {
25260
+ "flags": "--company <slug>",
25261
+ "description": "use this company instead of the active company",
25262
+ "hidden": false
25263
+ },
25264
+ {
25265
+ "flags": "--json",
25266
+ "description": "print machine-readable JSON",
25267
+ "hidden": false
25268
+ }
25269
+ ],
25270
+ "subcommands": []
25271
+ },
25272
+ {
25273
+ "name": "set",
25274
+ "description": "Change a DNS record by id, or by name and type",
25275
+ "aliases": [],
25276
+ "hidden": false,
25277
+ "helpOption": true,
25278
+ "helpCommand": false,
25279
+ "usage": "[options] <domain>",
25280
+ "helpText": [],
25281
+ "arguments": [
25282
+ {
25283
+ "name": "domain",
25284
+ "required": true,
25285
+ "variadic": false,
25286
+ "description": ""
25287
+ }
25288
+ ],
25289
+ "options": [
25290
+ {
25291
+ "flags": "--record <id>",
25292
+ "description": "record id from 'hq deploy domains records list'",
25293
+ "hidden": false
25294
+ },
25295
+ {
25296
+ "flags": "--name <name>",
25297
+ "description": "record name, together with --type",
25298
+ "hidden": false
25299
+ },
25300
+ {
25301
+ "flags": "--type <type>",
25302
+ "description": "record type, together with --name",
25303
+ "hidden": false
25304
+ },
25305
+ {
25306
+ "flags": "--value <value>",
25307
+ "description": "replacement value (repeat for more than one)",
25308
+ "hidden": false,
25309
+ "defaultValue": []
25310
+ },
25311
+ {
25312
+ "flags": "--ttl <seconds>",
25313
+ "description": "replacement time to live in seconds",
25314
+ "hidden": false
25315
+ },
25316
+ {
25317
+ "flags": "--company <slug>",
25318
+ "description": "use this company instead of the active company",
25319
+ "hidden": false
25320
+ },
25321
+ {
25322
+ "flags": "--json",
25323
+ "description": "print machine-readable JSON",
25324
+ "hidden": false
25325
+ }
25326
+ ],
25327
+ "subcommands": []
25328
+ },
25329
+ {
25330
+ "name": "delete",
25331
+ "description": "Delete a DNS record by id, or by name and type",
25332
+ "aliases": [],
25333
+ "hidden": false,
25334
+ "helpOption": true,
25335
+ "helpCommand": false,
25336
+ "usage": "[options] <domain>",
25337
+ "helpText": [],
25338
+ "arguments": [
25339
+ {
25340
+ "name": "domain",
25341
+ "required": true,
25342
+ "variadic": false,
25343
+ "description": ""
25344
+ }
25345
+ ],
25346
+ "options": [
25347
+ {
25348
+ "flags": "--record <id>",
25349
+ "description": "record id from 'hq deploy domains records list'",
25350
+ "hidden": false
25351
+ },
25352
+ {
25353
+ "flags": "--name <name>",
25354
+ "description": "record name, together with --type",
25355
+ "hidden": false
25356
+ },
25357
+ {
25358
+ "flags": "--type <type>",
25359
+ "description": "record type, together with --name",
25360
+ "hidden": false
25361
+ },
25362
+ {
25363
+ "flags": "--company <slug>",
25364
+ "description": "use this company instead of the active company",
25365
+ "hidden": false
25366
+ },
25367
+ {
25368
+ "flags": "--json",
25369
+ "description": "print machine-readable JSON",
25370
+ "hidden": false
25371
+ }
25372
+ ],
25373
+ "subcommands": []
25374
+ }
25375
+ ]
25030
25376
  }
25031
25377
  ]
25032
25378
  }
@@ -1,4 +1,6 @@
1
1
  import * as fs from "node:fs";
2
+ import { parseManifestSlugs } from "../lib/core-utils/manifest-slugs.js";
3
+ export { parseManifestSlugs };
2
4
  export declare const RESOLVE_COMPANY_ASSET = "core/scripts/resolve-company.sh";
3
5
  export declare const RESOLVE_COMPANY_HELP: string;
4
6
  export type ResolveCompanyResult = {
@@ -27,5 +29,4 @@ export type ResolveCompanyDependencies = {
27
29
  };
28
30
  export declare function resolveCompany(args: readonly string[], dependencies: ResolveCompanyDependencies): Promise<ResolveCompanyResult>;
29
31
  export declare function runResolveCompanyFast(args: readonly string[], stdin: string, cwd: string, hqRoot: string | undefined, _commandName?: string, _hqRootArg?: string, stdinReader?: () => Promise<string>): Promise<number>;
30
- export {};
31
32
  //# sourceMappingURL=core-resolve-company-native.d.ts.map
@@ -4,7 +4,9 @@ import * as fs from "node:fs";
4
4
  import * as path from "node:path";
5
5
  import { awkCannotOpenFileDiagnostic } from "../lib/core-utils/awk-diagnostics.js";
6
6
  import { buildCmdExeSpawnPlan, isWindowsBatchFile } from "../utils/windows-spawn.js";
7
+ import { parseManifestSlugs } from "../lib/core-utils/manifest-slugs.js";
7
8
  import { fastFlagEnabledDefaultOn } from "../native-fast-route.js";
9
+ export { parseManifestSlugs };
8
10
  export const RESOLVE_COMPANY_ASSET = "core/scripts/resolve-company.sh";
9
11
  export const RESOLVE_COMPANY_HELP = [
10
12
  "hq-core: public",
@@ -29,7 +31,6 @@ export const RESOLVE_COMPANY_HELP = [
29
31
  "ROOT=\"\"",
30
32
  ].join("\n") + "\n";
31
33
  const EMPTY_ENV = {};
32
- const keepSlug = (slug) => slug !== "" && slug !== "_template" && slug !== "companies" && slug !== "unaffiliated_repos";
33
34
  function errorCode(error) {
34
35
  return error && typeof error === "object" && "code" in error && typeof error.code === "string"
35
36
  ? error.code
@@ -75,29 +76,6 @@ function isFile(filePath, fileSystem) {
75
76
  throw error;
76
77
  }
77
78
  }
78
- function parseManifestSlugs(text) {
79
- const slugs = new Set();
80
- let wrapped = false;
81
- for (const rawLine of text.split("\n")) {
82
- const line = rawLine.endsWith("\r") ? rawLine.slice(0, -1) : rawLine;
83
- if (/^companies:[ \t]*$/.test(line)) {
84
- wrapped = true;
85
- continue;
86
- }
87
- if (wrapped && /^[^ \t][^:]*:[ \t]*$/.test(line))
88
- wrapped = false;
89
- if (wrapped) {
90
- const match = line.match(/^ {2}([A-Za-z][A-Za-z0-9_-]*):/);
91
- if (match && keepSlug(match[1]))
92
- slugs.add(match[1]);
93
- continue;
94
- }
95
- const match = line.match(/^([A-Za-z][A-Za-z0-9_-]*):/);
96
- if (match && keepSlug(match[1]))
97
- slugs.add(match[1]);
98
- }
99
- return [...slugs];
100
- }
101
79
  function promptSlug(prompt, slugs) {
102
80
  if (!prompt)
103
81
  return "";
@@ -43,8 +43,12 @@ export declare function addOnConfirmQuestion(domain: string, environment: string
43
43
  appLabel: string;
44
44
  orgSlug: string;
45
45
  }, pricing: Record<string, unknown> | null): string;
46
- /** Shown in the buy prompt when GET /v1/pricing does not answer. */
47
- export declare const PURCHASE_TERMS_UNAVAILABLE = "The renewal and refund terms could not be loaded. Check them on the HQ pricing page before you buy.";
46
+ /** Shown in the buy prompt when neither search nor GET /v1/pricing names a renewal price. */
47
+ export declare const PURCHASE_TERMS_UNAVAILABLE = "The renewal price could not be loaded. Run 'hq deploy domains search' and check the renewal price before you buy.";
48
+ /** Sandbox label. Every search and buy surface prints this when the server says testMode. */
49
+ export declare const TEST_MODE_LABEL = "Test mode: sandbox prices. Nothing real is registered or charged.";
50
+ export declare const TRANSFER_LOCK_NOTICE = "Domains cannot be transferred to another registrar for 60 days after purchase.";
51
+ export declare const PURCHASES_ARE_FINAL = "Purchases are final.";
48
52
  /** The purchase terms published as usage.domains.purchase. Null when not published. */
49
53
  export declare function purchaseTermsLine(pricing: Record<string, unknown> | null): string | null;
50
54
  /** Hard deadline for `base status --wait`, so a script never waits forever. */
@@ -68,6 +72,14 @@ export declare function baseDomainPriceLine(body: {
68
72
  /** The approval question for `base add`, before the server says the basis. */
69
73
  export declare function baseAddConfirmQuestion(domain: string, orgSlug: string, pricing: Record<string, unknown> | null): string;
70
74
  export declare function parsePrice(raw: string): number;
75
+ interface PurchaseUse {
76
+ kind: "app" | "base" | "hold";
77
+ appId?: string;
78
+ }
79
+ /** What the purchase is for. `app:<id>` attaches to that deployment, `base` is the company domain, `hold` registers only. */
80
+ export declare function parseUse(raw: string): PurchaseUse;
81
+ /** Hosting tier, separate from the registrar price. Hold is register-only. */
82
+ export declare function hostingTierLine(use: PurchaseUse, pricing: Record<string, unknown> | null): string;
71
83
  export declare function registerDeployDomainsCommand(deploy: Command): void;
72
84
  export {};
73
85
  //# sourceMappingURL=deploy-domains.d.ts.map