@curviate/cli 0.16.0 → 0.17.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/CHANGELOG.md +25 -0
- package/dist/{account-ZDIZAXVI.js → account-VDKORNPQ.js} +4 -4
- package/dist/{chunk-45KHSWCV.js → chunk-ROULHEFW.js} +30 -1
- package/dist/cli.js +13 -13
- package/dist/{company-XU7TZ66L.js → company-CU3BEHRW.js} +134 -3
- package/dist/{connect-7OWBNGHU.js → connect-DO3J5OUV.js} +4 -4
- package/dist/{job-QLSGNDGW.js → job-6GEPEDLS.js} +4 -4
- package/dist/{profile-JUTGTPES.js → profile-MLSIFVDJ.js} +4 -4
- package/dist/{recruiter-WEZZVZN3.js → recruiter-OWEQIFYG.js} +4 -4
- package/dist/{search-5U5U5MTT.js → search-ZQUKLQ6T.js} +1 -1
- package/package.json +2 -2
- package/dist/{comment-COJY6HQP.js → comment-56VBPLGW.js} +3 -3
- package/dist/{inbox-VVRQ7SOX.js → inbox-RZOMPFDA.js} +3 -3
- package/dist/{message-IKKOI6CZ.js → message-KOSPK33G.js} +3 -3
- package/dist/{post-DH4RDYKZ.js → post-TSOE327K.js} +3 -3
- package/dist/{sales-nav-NUCYJ4S3.js → sales-nav-GD5WQCJI.js} +3 -3
- package/dist/{webhook-UWIOVWVV.js → webhook-QFSZN3P2.js} +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,31 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|
|
6
6
|
Versioning follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html):
|
|
7
7
|
a new command or flag is a minor; a breaking command/flag/exit-code change is a major; a fix is a patch.
|
|
8
8
|
|
|
9
|
+
## [Unreleased]
|
|
10
|
+
|
|
11
|
+
## [0.17.0] - 2026-07-17
|
|
12
|
+
|
|
13
|
+
A minor release adding the `company follow-invite` and `company invitable-followers`
|
|
14
|
+
commands. No breaking changes, built against `@curviate/sdk` 0.17.0.
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- **`company follow-invite <id> --invitee <AC…> [--invitee <AC…> ...]`** (write, admin-gated,
|
|
19
|
+
`--preview` accepted). Invites the connected account's 1st-degree connections to follow an
|
|
20
|
+
administered company page. `--invitee` is repeatable, at least one required, max 50 per
|
|
21
|
+
request. All-or-nothing: for an all-valid request you get one outcome per requested invitee,
|
|
22
|
+
in request order (`status: "invited" | "already_invited" | "ineligible" | "not_found"`); if
|
|
23
|
+
any invitee id is invalid the whole request rejects with a 404, not a partial result.
|
|
24
|
+
Re-inviting an already-invited member is a safe no-op, the same `invitation_id`, never a
|
|
25
|
+
duplicate. `<id>`
|
|
26
|
+
accepts a URL, slug, or numeric id, resolved to the numeric provider_id first (including
|
|
27
|
+
under `--preview`, so the preview renders the actual request that would be sent).
|
|
28
|
+
- **`company invitable-followers <id> [--limit] [--cursor] [--all]`** (paginated read). Lists
|
|
29
|
+
the connections eligible to be invited to follow a company page you administer, the read
|
|
30
|
+
that seeds `company follow-invite`. Items carry no name or headline; hydrate a candidate via
|
|
31
|
+
`profile <id>` first. `invite_token` is always re-encoded as base64 in CLI output (the raw
|
|
32
|
+
value can carry bytes unsafe to print in a terminal), in every output mode.
|
|
33
|
+
|
|
9
34
|
## [0.16.0] - 2026-07-17
|
|
10
35
|
|
|
11
36
|
A minor release adding the `inboxes` command group. No breaking changes,
|
|
@@ -8,18 +8,18 @@ import {
|
|
|
8
8
|
import {
|
|
9
9
|
AUTH_NEEDED
|
|
10
10
|
} from "./chunk-M6UDWFHX.js";
|
|
11
|
-
import {
|
|
12
|
-
buildPreviewOutput
|
|
13
|
-
} from "./chunk-R3VLWLVV.js";
|
|
14
11
|
import {
|
|
15
12
|
slimAccountGet,
|
|
16
13
|
slimAccountList,
|
|
17
14
|
slimAccountListItem
|
|
18
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-ROULHEFW.js";
|
|
19
16
|
import {
|
|
20
17
|
pageDelayFromFlags,
|
|
21
18
|
streamAll
|
|
22
19
|
} from "./chunk-EEMJDJ4W.js";
|
|
20
|
+
import {
|
|
21
|
+
buildPreviewOutput
|
|
22
|
+
} from "./chunk-R3VLWLVV.js";
|
|
23
23
|
import {
|
|
24
24
|
createClient,
|
|
25
25
|
renderError,
|
|
@@ -255,6 +255,32 @@ function slimCompany(data) {
|
|
|
255
255
|
follower_count: d["follower_count"] ?? null
|
|
256
256
|
};
|
|
257
257
|
}
|
|
258
|
+
function encodeInviteToken(token) {
|
|
259
|
+
if (typeof token !== "string" || token.length === 0) return token;
|
|
260
|
+
return Buffer.from(token, "utf8").toString("base64");
|
|
261
|
+
}
|
|
262
|
+
function reencodeInviteTokenItem(item) {
|
|
263
|
+
if (!("invite_token" in item)) return item;
|
|
264
|
+
return { ...item, invite_token: encodeInviteToken(item["invite_token"]) };
|
|
265
|
+
}
|
|
266
|
+
function reencodeInvitableFollowers(data) {
|
|
267
|
+
const d = data !== null && data !== void 0 && typeof data === "object" ? data : {};
|
|
268
|
+
const items = Array.isArray(d["items"]) ? d["items"].map(reencodeInviteTokenItem) : [];
|
|
269
|
+
return { ...d, items };
|
|
270
|
+
}
|
|
271
|
+
function slimCompanyInvitableFollowerItem(item) {
|
|
272
|
+
return {
|
|
273
|
+
object: item["object"] ?? null,
|
|
274
|
+
id: item["id"] ?? null,
|
|
275
|
+
profile_urn: item["profile_urn"] ?? null,
|
|
276
|
+
invite_token: item["invite_token"] ?? null
|
|
277
|
+
};
|
|
278
|
+
}
|
|
279
|
+
function slimCompanyInvitableFollowers(data) {
|
|
280
|
+
const d = data !== null && data !== void 0 && typeof data === "object" ? data : {};
|
|
281
|
+
const items = Array.isArray(d["items"]) ? d["items"].map(slimCompanyInvitableFollowerItem) : [];
|
|
282
|
+
return { ...d, items };
|
|
283
|
+
}
|
|
258
284
|
|
|
259
285
|
export {
|
|
260
286
|
slimProfileMe,
|
|
@@ -275,5 +301,8 @@ export {
|
|
|
275
301
|
slimAccountList,
|
|
276
302
|
slimAccountGet,
|
|
277
303
|
slimJob,
|
|
278
|
-
slimCompany
|
|
304
|
+
slimCompany,
|
|
305
|
+
reencodeInviteTokenItem,
|
|
306
|
+
reencodeInvitableFollowers,
|
|
307
|
+
slimCompanyInvitableFollowers
|
|
279
308
|
};
|
package/dist/cli.js
CHANGED
|
@@ -255,20 +255,20 @@ var main = defineCommand({
|
|
|
255
255
|
// ---------------------------------------------------------------------------
|
|
256
256
|
// Noun groups — lazy-loaded on first invocation.
|
|
257
257
|
// ---------------------------------------------------------------------------
|
|
258
|
-
profile: () => import("./profile-
|
|
259
|
-
company: () => import("./company-
|
|
260
|
-
job: () => import("./job-
|
|
261
|
-
connect: () => import("./connect-
|
|
262
|
-
search: () => import("./search-
|
|
263
|
-
inbox: () => import("./inbox-
|
|
258
|
+
profile: () => import("./profile-MLSIFVDJ.js").then((m) => m.profileCommand),
|
|
259
|
+
company: () => import("./company-CU3BEHRW.js").then((m) => m.companyCommand),
|
|
260
|
+
job: () => import("./job-6GEPEDLS.js").then((m) => m.jobCommand),
|
|
261
|
+
connect: () => import("./connect-DO3J5OUV.js").then((m) => m.connectCommand),
|
|
262
|
+
search: () => import("./search-ZQUKLQ6T.js").then((m) => m.searchCommand),
|
|
263
|
+
inbox: () => import("./inbox-RZOMPFDA.js").then((m) => m.inboxCommand),
|
|
264
264
|
inboxes: () => import("./inboxes-MTPWLP5F.js").then((m) => m.inboxesCommand),
|
|
265
|
-
message: () => import("./message-
|
|
266
|
-
post: () => import("./post-
|
|
267
|
-
comment: () => import("./comment-
|
|
268
|
-
account: () => import("./account-
|
|
269
|
-
webhook: () => import("./webhook-
|
|
270
|
-
"sales-nav": () => import("./sales-nav-
|
|
271
|
-
recruiter: () => import("./recruiter-
|
|
265
|
+
message: () => import("./message-KOSPK33G.js").then((m) => m.messageCommand),
|
|
266
|
+
post: () => import("./post-TSOE327K.js").then((m) => m.postCommand),
|
|
267
|
+
comment: () => import("./comment-56VBPLGW.js").then((m) => m.commentCommand),
|
|
268
|
+
account: () => import("./account-VDKORNPQ.js").then((m) => m.accountCommand),
|
|
269
|
+
webhook: () => import("./webhook-QFSZN3P2.js").then((m) => m.webhookCommand),
|
|
270
|
+
"sales-nav": () => import("./sales-nav-GD5WQCJI.js").then((m) => m.salesNavCommand),
|
|
271
|
+
recruiter: () => import("./recruiter-OWEQIFYG.js").then((m) => m.recruiterCommand)
|
|
272
272
|
},
|
|
273
273
|
async run() {
|
|
274
274
|
const { runMain } = await import("citty");
|
|
@@ -3,15 +3,21 @@ import {
|
|
|
3
3
|
resolveIdentifier
|
|
4
4
|
} from "./chunk-DMQZEPQE.js";
|
|
5
5
|
import {
|
|
6
|
+
reencodeInvitableFollowers,
|
|
7
|
+
reencodeInviteTokenItem,
|
|
6
8
|
slimCompany,
|
|
9
|
+
slimCompanyInvitableFollowers,
|
|
7
10
|
slimSearchJobs,
|
|
8
11
|
slimSearchPeople,
|
|
9
12
|
slimSearchPosts
|
|
10
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-ROULHEFW.js";
|
|
11
14
|
import {
|
|
12
15
|
pageDelayFromFlags,
|
|
13
16
|
streamAll
|
|
14
17
|
} from "./chunk-EEMJDJ4W.js";
|
|
18
|
+
import {
|
|
19
|
+
buildPreviewOutput
|
|
20
|
+
} from "./chunk-R3VLWLVV.js";
|
|
15
21
|
import {
|
|
16
22
|
createClient,
|
|
17
23
|
renderError,
|
|
@@ -20,7 +26,8 @@ import {
|
|
|
20
26
|
resolveEffectiveConfig
|
|
21
27
|
} from "./chunk-M33MI53G.js";
|
|
22
28
|
import {
|
|
23
|
-
GLOBAL_FLAGS
|
|
29
|
+
GLOBAL_FLAGS,
|
|
30
|
+
WRITE_FLAGS
|
|
24
31
|
} from "./chunk-TMU3CSPR.js";
|
|
25
32
|
|
|
26
33
|
// src/commands/company.ts
|
|
@@ -52,6 +59,10 @@ function resolveOutputOpts(flags) {
|
|
|
52
59
|
verbose: flags.verbose ?? false
|
|
53
60
|
};
|
|
54
61
|
}
|
|
62
|
+
function normalizeInviteeIds(invitee) {
|
|
63
|
+
if (!invitee) return [];
|
|
64
|
+
return Array.isArray(invitee) ? invitee : [invitee];
|
|
65
|
+
}
|
|
55
66
|
async function resolveCompanyId(ns, raw) {
|
|
56
67
|
const normalized = resolveIdentifier(raw);
|
|
57
68
|
if (/^\d+$/.test(normalized)) return normalized;
|
|
@@ -176,6 +187,64 @@ async function runCompanyJobs(client, flags, out) {
|
|
|
176
187
|
await handleSdkError(err, outOpts, out);
|
|
177
188
|
}
|
|
178
189
|
}
|
|
190
|
+
async function runCompanyInvitableFollowers(client, flags, out) {
|
|
191
|
+
rejectPreviewOnRead(flags.preview, out);
|
|
192
|
+
const accountId = requireAccount(flags.account, out);
|
|
193
|
+
const ns = client.account(accountId);
|
|
194
|
+
const outOpts = resolveOutputOpts(flags);
|
|
195
|
+
const params = {};
|
|
196
|
+
if (flags.limit) params["limit"] = parseInt(flags.limit, 10);
|
|
197
|
+
if (flags.cursor) params["cursor"] = flags.cursor;
|
|
198
|
+
try {
|
|
199
|
+
const identifier = await resolveCompanyId(ns, flags.id ?? "");
|
|
200
|
+
if (flags.all) {
|
|
201
|
+
const maxPages = flags["max-pages"] ? parseInt(flags["max-pages"], 10) : 100;
|
|
202
|
+
const fn = (p) => ns.companies.invitableFollowers(identifier, p);
|
|
203
|
+
for await (const item of streamAll(fn, params, {
|
|
204
|
+
maxPages,
|
|
205
|
+
out,
|
|
206
|
+
pageDelayMs: pageDelayFromFlags(flags)
|
|
207
|
+
})) {
|
|
208
|
+
out.stdout.write(JSON.stringify(reencodeInviteTokenItem(item)) + "\n");
|
|
209
|
+
}
|
|
210
|
+
return;
|
|
211
|
+
}
|
|
212
|
+
const result = await ns.companies.invitableFollowers(identifier, params);
|
|
213
|
+
const safeResult = reencodeInvitableFollowers(result);
|
|
214
|
+
renderSuccess(safeResult, { ...outOpts, slim: slimCompanyInvitableFollowers }, out);
|
|
215
|
+
} catch (err) {
|
|
216
|
+
await handleSdkError(err, outOpts, out);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
async function runCompanyFollowInvite(client, flags, out) {
|
|
220
|
+
const accountId = requireAccount(flags.account, out);
|
|
221
|
+
const ns = client.account(accountId);
|
|
222
|
+
const outOpts = resolveOutputOpts(flags);
|
|
223
|
+
const inviteeIds = normalizeInviteeIds(flags.invitee);
|
|
224
|
+
if (inviteeIds.length === 0) {
|
|
225
|
+
out.stderr.write("error: at least one --invitee is required.\n");
|
|
226
|
+
process.exit(2);
|
|
227
|
+
return;
|
|
228
|
+
}
|
|
229
|
+
try {
|
|
230
|
+
const identifier = await resolveCompanyId(ns, flags.id ?? "");
|
|
231
|
+
const body = { invitee_ids: inviteeIds };
|
|
232
|
+
if (flags.preview) {
|
|
233
|
+
const preview = buildPreviewOutput({
|
|
234
|
+
method: "companies.followInvite",
|
|
235
|
+
args: { identifier },
|
|
236
|
+
body,
|
|
237
|
+
account: accountId
|
|
238
|
+
});
|
|
239
|
+
out.stdout.write(JSON.stringify(preview) + "\n");
|
|
240
|
+
return;
|
|
241
|
+
}
|
|
242
|
+
const result = await ns.companies.followInvite(identifier, body);
|
|
243
|
+
renderSuccess(result, outOpts, out);
|
|
244
|
+
} catch (err) {
|
|
245
|
+
await handleSdkError(err, outOpts, out);
|
|
246
|
+
}
|
|
247
|
+
}
|
|
179
248
|
var companyEmployeesCommand = defineCommand({
|
|
180
249
|
meta: { name: "employees", description: "List people who currently work at the company." },
|
|
181
250
|
args: {
|
|
@@ -251,6 +320,64 @@ var companyJobsCommand = defineCommand({
|
|
|
251
320
|
await runCompanyJobs(client, { ...flags, account: flags.account ?? cfg.account }, out);
|
|
252
321
|
}
|
|
253
322
|
});
|
|
323
|
+
var companyInvitableFollowersCommand = defineCommand({
|
|
324
|
+
meta: {
|
|
325
|
+
name: "invitable-followers",
|
|
326
|
+
description: "List the account's 1st-degree connections who are eligible to be invited to follow the company page. This is the read that seeds `company follow-invite`. Items carry no name or headline (a wire limitation), so hydrate a candidate via `profile <id>` before deciding who to invite. `invite_token` is always returned as base64 (the raw value can carry binary bytes unsafe to print)."
|
|
327
|
+
},
|
|
328
|
+
args: {
|
|
329
|
+
...GLOBAL_FLAGS,
|
|
330
|
+
id: { type: "positional", description: "Company identifier (URL, slug, or numeric id), resolved to the numeric id first." }
|
|
331
|
+
},
|
|
332
|
+
async run({ args }) {
|
|
333
|
+
const flags = args;
|
|
334
|
+
const cfg = await resolveEffectiveConfig({
|
|
335
|
+
apiKey: flags["api-key"],
|
|
336
|
+
baseUrl: flags["base-url"],
|
|
337
|
+
timeout: flags.timeout,
|
|
338
|
+
account: flags.account,
|
|
339
|
+
profile: flags.profile
|
|
340
|
+
});
|
|
341
|
+
if (!cfg.apiKey) {
|
|
342
|
+
process.stderr.write("error: no API key \u2014 run `curviate login` or pass --api-key.\n");
|
|
343
|
+
process.exit(3);
|
|
344
|
+
}
|
|
345
|
+
const client = createClient({ apiKey: cfg.apiKey, baseUrl: cfg.baseUrl, timeout: cfg.timeout });
|
|
346
|
+
const out = buildOutputStreams();
|
|
347
|
+
await runCompanyInvitableFollowers(client, { ...flags, account: flags.account ?? cfg.account }, out);
|
|
348
|
+
}
|
|
349
|
+
});
|
|
350
|
+
var companyFollowInviteCommand = defineCommand({
|
|
351
|
+
meta: {
|
|
352
|
+
name: "follow-invite",
|
|
353
|
+
description: "Invite the account's 1st-degree connections to follow the administered company page. Write, admin-gated (the account must administer the page with invite rights). Pass the AC\u2026 member ids from `company invitable-followers`, one --invitee per invitee. All-or-nothing: for an all-valid request you get one outcome per invitee, in request order (invited/already_invited/ineligible/not_found); if any invitee id is invalid the whole request rejects with a 404, not a partial result. Re-inviting an already-invited member is a safe no-op (the same invitation id, never a duplicate)."
|
|
354
|
+
},
|
|
355
|
+
args: {
|
|
356
|
+
...WRITE_FLAGS,
|
|
357
|
+
id: { type: "positional", description: "Company identifier (URL, slug, or numeric id), resolved to the numeric id first, including under --preview." },
|
|
358
|
+
invitee: {
|
|
359
|
+
type: "string",
|
|
360
|
+
description: "AC\u2026 member id to invite (from `company invitable-followers`). Repeatable, at least one required, max 50 per request."
|
|
361
|
+
}
|
|
362
|
+
},
|
|
363
|
+
async run({ args }) {
|
|
364
|
+
const flags = args;
|
|
365
|
+
const cfg = await resolveEffectiveConfig({
|
|
366
|
+
apiKey: flags["api-key"],
|
|
367
|
+
baseUrl: flags["base-url"],
|
|
368
|
+
timeout: flags.timeout,
|
|
369
|
+
account: flags.account,
|
|
370
|
+
profile: flags.profile
|
|
371
|
+
});
|
|
372
|
+
if (!cfg.apiKey) {
|
|
373
|
+
process.stderr.write("error: no API key \u2014 run `curviate login` or pass --api-key.\n");
|
|
374
|
+
process.exit(3);
|
|
375
|
+
}
|
|
376
|
+
const client = createClient({ apiKey: cfg.apiKey, baseUrl: cfg.baseUrl, timeout: cfg.timeout });
|
|
377
|
+
const out = buildOutputStreams();
|
|
378
|
+
await runCompanyFollowInvite(client, { ...flags, account: flags.account ?? cfg.account }, out);
|
|
379
|
+
}
|
|
380
|
+
});
|
|
254
381
|
var companyCommand = defineCommand({
|
|
255
382
|
meta: { name: "company", description: "Fetch a company profile by URL, slug, or numeric id, and its sub-resources." },
|
|
256
383
|
args: {
|
|
@@ -261,7 +388,9 @@ var companyCommand = defineCommand({
|
|
|
261
388
|
subCommands: {
|
|
262
389
|
employees: companyEmployeesCommand,
|
|
263
390
|
posts: companyPostsCommand,
|
|
264
|
-
jobs: companyJobsCommand
|
|
391
|
+
jobs: companyJobsCommand,
|
|
392
|
+
"invitable-followers": companyInvitableFollowersCommand,
|
|
393
|
+
"follow-invite": companyFollowInviteCommand
|
|
265
394
|
},
|
|
266
395
|
async run({ args }) {
|
|
267
396
|
const flags = args;
|
|
@@ -284,7 +413,9 @@ var companyCommand = defineCommand({
|
|
|
284
413
|
export {
|
|
285
414
|
companyCommand,
|
|
286
415
|
runCompanyEmployees,
|
|
416
|
+
runCompanyFollowInvite,
|
|
287
417
|
runCompanyGet,
|
|
418
|
+
runCompanyInvitableFollowers,
|
|
288
419
|
runCompanyJobs,
|
|
289
420
|
runCompanyPosts
|
|
290
421
|
};
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
buildPreviewOutput
|
|
4
|
-
} from "./chunk-R3VLWLVV.js";
|
|
5
2
|
import {
|
|
6
3
|
resolveIdentifier
|
|
7
4
|
} from "./chunk-DMQZEPQE.js";
|
|
@@ -10,11 +7,14 @@ import {
|
|
|
10
7
|
slimInviteReceivedItem,
|
|
11
8
|
slimInviteSent,
|
|
12
9
|
slimInviteSentItem
|
|
13
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ROULHEFW.js";
|
|
14
11
|
import {
|
|
15
12
|
pageDelayFromFlags,
|
|
16
13
|
streamAll
|
|
17
14
|
} from "./chunk-EEMJDJ4W.js";
|
|
15
|
+
import {
|
|
16
|
+
buildPreviewOutput
|
|
17
|
+
} from "./chunk-R3VLWLVV.js";
|
|
18
18
|
import {
|
|
19
19
|
createClient,
|
|
20
20
|
renderError,
|
|
@@ -3,21 +3,21 @@ import {
|
|
|
3
3
|
BinaryOutputError,
|
|
4
4
|
writeBinaryOutput
|
|
5
5
|
} from "./chunk-UWO2D4HW.js";
|
|
6
|
-
import {
|
|
7
|
-
buildPreviewOutput
|
|
8
|
-
} from "./chunk-R3VLWLVV.js";
|
|
9
6
|
import {
|
|
10
7
|
resolveJobIdentifier
|
|
11
8
|
} from "./chunk-DMQZEPQE.js";
|
|
12
9
|
import {
|
|
13
10
|
slimJob
|
|
14
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-ROULHEFW.js";
|
|
15
12
|
import {
|
|
16
13
|
DEFAULT_PAGE_DELAY_MS,
|
|
17
14
|
ndjsonModeNotice,
|
|
18
15
|
pageDelayFromFlags,
|
|
19
16
|
streamAll
|
|
20
17
|
} from "./chunk-EEMJDJ4W.js";
|
|
18
|
+
import {
|
|
19
|
+
buildPreviewOutput
|
|
20
|
+
} from "./chunk-R3VLWLVV.js";
|
|
21
21
|
import {
|
|
22
22
|
createClient,
|
|
23
23
|
renderError,
|
|
@@ -8,20 +8,20 @@ import {
|
|
|
8
8
|
readAttachment,
|
|
9
9
|
toAttachmentPayload
|
|
10
10
|
} from "./chunk-BGZW6B7G.js";
|
|
11
|
-
import {
|
|
12
|
-
buildPreviewOutput
|
|
13
|
-
} from "./chunk-R3VLWLVV.js";
|
|
14
11
|
import {
|
|
15
12
|
resolveIdentifier
|
|
16
13
|
} from "./chunk-DMQZEPQE.js";
|
|
17
14
|
import {
|
|
18
15
|
slimProfile,
|
|
19
16
|
slimProfileMe
|
|
20
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-ROULHEFW.js";
|
|
21
18
|
import {
|
|
22
19
|
pageDelayFromFlags,
|
|
23
20
|
streamAll
|
|
24
21
|
} from "./chunk-EEMJDJ4W.js";
|
|
22
|
+
import {
|
|
23
|
+
buildPreviewOutput
|
|
24
|
+
} from "./chunk-R3VLWLVV.js";
|
|
25
25
|
import {
|
|
26
26
|
createClient,
|
|
27
27
|
renderError,
|
|
@@ -13,20 +13,20 @@ import {
|
|
|
13
13
|
BinaryOutputError,
|
|
14
14
|
writeBinaryOutput
|
|
15
15
|
} from "./chunk-UWO2D4HW.js";
|
|
16
|
-
import {
|
|
17
|
-
buildPreviewOutput
|
|
18
|
-
} from "./chunk-R3VLWLVV.js";
|
|
19
16
|
import {
|
|
20
17
|
resolveIdentifier,
|
|
21
18
|
resolveJobIdentifier
|
|
22
19
|
} from "./chunk-DMQZEPQE.js";
|
|
23
20
|
import {
|
|
24
21
|
slimJob
|
|
25
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-ROULHEFW.js";
|
|
26
23
|
import {
|
|
27
24
|
pageDelayFromFlags,
|
|
28
25
|
streamAll
|
|
29
26
|
} from "./chunk-EEMJDJ4W.js";
|
|
27
|
+
import {
|
|
28
|
+
buildPreviewOutput
|
|
29
|
+
} from "./chunk-R3VLWLVV.js";
|
|
30
30
|
import {
|
|
31
31
|
createClient,
|
|
32
32
|
renderError,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@curviate/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.17.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Official command-line interface for the Curviate API.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"clean": "rm -rf dist *.tsbuildinfo"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@curviate/sdk": "^0.
|
|
44
|
+
"@curviate/sdk": "^0.17.0",
|
|
45
45
|
"citty": "^0.1.6",
|
|
46
46
|
"open": "^10.1.0"
|
|
47
47
|
},
|
|
@@ -11,14 +11,14 @@ import {
|
|
|
11
11
|
readAttachment,
|
|
12
12
|
toAttachmentPayload
|
|
13
13
|
} from "./chunk-BGZW6B7G.js";
|
|
14
|
-
import {
|
|
15
|
-
buildPreviewOutput
|
|
16
|
-
} from "./chunk-R3VLWLVV.js";
|
|
17
14
|
import "./chunk-DMQZEPQE.js";
|
|
18
15
|
import {
|
|
19
16
|
pageDelayFromFlags,
|
|
20
17
|
streamAll
|
|
21
18
|
} from "./chunk-EEMJDJ4W.js";
|
|
19
|
+
import {
|
|
20
|
+
buildPreviewOutput
|
|
21
|
+
} from "./chunk-R3VLWLVV.js";
|
|
22
22
|
import {
|
|
23
23
|
createClient,
|
|
24
24
|
renderError,
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
buildPreviewOutput
|
|
4
|
-
} from "./chunk-R3VLWLVV.js";
|
|
5
2
|
import {
|
|
6
3
|
normalizeChatId
|
|
7
4
|
} from "./chunk-DMQZEPQE.js";
|
|
@@ -9,6 +6,9 @@ import {
|
|
|
9
6
|
pageDelayFromFlags,
|
|
10
7
|
streamAll
|
|
11
8
|
} from "./chunk-EEMJDJ4W.js";
|
|
9
|
+
import {
|
|
10
|
+
buildPreviewOutput
|
|
11
|
+
} from "./chunk-R3VLWLVV.js";
|
|
12
12
|
import {
|
|
13
13
|
createClient,
|
|
14
14
|
renderError,
|
|
@@ -11,13 +11,13 @@ import {
|
|
|
11
11
|
BinaryOutputError,
|
|
12
12
|
writeBinaryOutput
|
|
13
13
|
} from "./chunk-UWO2D4HW.js";
|
|
14
|
-
import {
|
|
15
|
-
buildPreviewOutput
|
|
16
|
-
} from "./chunk-R3VLWLVV.js";
|
|
17
14
|
import {
|
|
18
15
|
normalizeChatId,
|
|
19
16
|
resolveIdentifier
|
|
20
17
|
} from "./chunk-DMQZEPQE.js";
|
|
18
|
+
import {
|
|
19
|
+
buildPreviewOutput
|
|
20
|
+
} from "./chunk-R3VLWLVV.js";
|
|
21
21
|
import {
|
|
22
22
|
createClient,
|
|
23
23
|
renderError,
|
|
@@ -10,14 +10,14 @@ import {
|
|
|
10
10
|
readAttachment,
|
|
11
11
|
toAttachmentPayload
|
|
12
12
|
} from "./chunk-BGZW6B7G.js";
|
|
13
|
-
import {
|
|
14
|
-
buildPreviewOutput
|
|
15
|
-
} from "./chunk-R3VLWLVV.js";
|
|
16
13
|
import "./chunk-DMQZEPQE.js";
|
|
17
14
|
import {
|
|
18
15
|
pageDelayFromFlags,
|
|
19
16
|
streamAll
|
|
20
17
|
} from "./chunk-EEMJDJ4W.js";
|
|
18
|
+
import {
|
|
19
|
+
buildPreviewOutput
|
|
20
|
+
} from "./chunk-R3VLWLVV.js";
|
|
21
21
|
import {
|
|
22
22
|
createClient,
|
|
23
23
|
renderError,
|
|
@@ -10,9 +10,6 @@ import {
|
|
|
10
10
|
readAttachment,
|
|
11
11
|
toAttachmentPayload
|
|
12
12
|
} from "./chunk-BGZW6B7G.js";
|
|
13
|
-
import {
|
|
14
|
-
buildPreviewOutput
|
|
15
|
-
} from "./chunk-R3VLWLVV.js";
|
|
16
13
|
import {
|
|
17
14
|
resolveIdentifier
|
|
18
15
|
} from "./chunk-DMQZEPQE.js";
|
|
@@ -20,6 +17,9 @@ import {
|
|
|
20
17
|
pageDelayFromFlags,
|
|
21
18
|
streamAll
|
|
22
19
|
} from "./chunk-EEMJDJ4W.js";
|
|
20
|
+
import {
|
|
21
|
+
buildPreviewOutput
|
|
22
|
+
} from "./chunk-R3VLWLVV.js";
|
|
23
23
|
import {
|
|
24
24
|
createClient,
|
|
25
25
|
renderError,
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
buildPreviewOutput
|
|
4
|
-
} from "./chunk-R3VLWLVV.js";
|
|
5
2
|
import {
|
|
6
3
|
pageDelayFromFlags,
|
|
7
4
|
streamAll
|
|
8
5
|
} from "./chunk-EEMJDJ4W.js";
|
|
6
|
+
import {
|
|
7
|
+
buildPreviewOutput
|
|
8
|
+
} from "./chunk-R3VLWLVV.js";
|
|
9
9
|
import {
|
|
10
10
|
createClient,
|
|
11
11
|
renderError,
|