Sign In

@linkedctl/cli

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@linkedctl/cli - npm Package Compare versions

Comparing version
0.2.0
to
0.3.0
+3
dist/commands/comment/create.d.ts
import { Command } from "commander";
export declare function createCommentCreateCommand(): Command;
//# sourceMappingURL=create.d.ts.map
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/comment/create.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAU5C,wBAAgB,0BAA0B,IAAI,OAAO,CA+CpD"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, Option } from "commander";
import { resolveConfig, LinkedInClient, getCurrentPersonUrn, createComment, LinkedInApiError } from "@linkedctl/core";
import { resolveFormat, formatOutput } from "../../output/index.js";
export function createCommentCreateCommand() {
const cmd = new Command("create");
cmd.description("Create a comment on a LinkedIn post");
cmd.argument("<urn>", "post URN to comment on (e.g. urn:li:share:...)");
cmd.requiredOption("--text <text>", "comment text");
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));
cmd.addHelpText("after", `
Examples:
linkedctl comment create urn:li:share:123 --text "Great post!"
linkedctl comment create urn:li:share:123 --text "Nice work" --format json`);
cmd.action(async (urn, opts, actionCmd) => {
const globals = actionCmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
const actorUrn = await getCurrentPersonUrn(client);
try {
const commentUrn = await createComment(client, {
actor: actorUrn,
object: urn,
message: opts.text,
});
const format = resolveFormat(opts.format, process.stdout, globals.json === true);
const output = formatOutput({ urn: commentUrn }, format);
console.log(output);
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to create comment: ${error.message}`);
}
throw error;
}
});
return cmd;
}
//# sourceMappingURL=create.js.map
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/comment/create.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACtH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAQpE,MAAM,UAAU,0BAA0B;IACxC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,GAAG,CAAC,WAAW,CAAC,qCAAqC,CAAC,CAAC;IACvD,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,gDAAgD,CAAC,CAAC;IACxE,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IACpD,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,WAAW,CACb,OAAO,EACP;;;6EAGyE,CAC1E,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,IAAgB,EAAE,SAAkB,EAAE,EAAE;QACrE,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,EAAgE,CAAC;QAE1G,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;SAClE,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAE/D,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAEnD,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE;gBAC7C,KAAK,EAAE,QAAQ;gBACf,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI,CAAC,IAAI;aACnB,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,MAAkC,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAC7G,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
export declare function createCommentDeleteCommand(): Command;
//# sourceMappingURL=delete.d.ts.map
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/commands/comment/delete.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,0BAA0B,IAAI,OAAO,CAmCpD"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command } from "commander";
import { resolveConfig, LinkedInClient, deleteComment, LinkedInApiError } from "@linkedctl/core";
export function createCommentDeleteCommand() {
const cmd = new Command("delete");
cmd.description("Delete a comment on a LinkedIn post");
cmd.argument("<comment-urn>", "comment URN to delete (e.g. urn:li:comment:(urn:li:activity:123,456))");
cmd.addHelpText("after", `
Examples:
linkedctl comment delete "urn:li:comment:(urn:li:activity:123,456)"`);
cmd.action(async (commentUrn, _opts, actionCmd) => {
const globals = actionCmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
try {
await deleteComment(client, { commentUrn });
console.error("Comment deleted.");
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to delete comment: ${error.message}`);
}
throw error;
}
});
return cmd;
}
//# sourceMappingURL=delete.js.map
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/comment/delete.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEjG,MAAM,UAAU,0BAA0B;IACxC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,GAAG,CAAC,WAAW,CAAC,qCAAqC,CAAC,CAAC;IACvD,GAAG,CAAC,QAAQ,CAAC,eAAe,EAAE,uEAAuE,CAAC,CAAC;IAEvG,GAAG,CAAC,WAAW,CACb,OAAO,EACP;;sEAEkE,CACnE,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,UAAkB,EAAE,KAA8B,EAAE,SAAkB,EAAE,EAAE;QAC1F,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,EAAiE,CAAC;QAE3G,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;SAClE,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;YAC5C,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAChE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
export declare function createCommentGetCommand(): Command;
//# sourceMappingURL=get.d.ts.map
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../src/commands/comment/get.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAK5C,wBAAgB,uBAAuB,IAAI,OAAO,CAiDjD"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, Option } from "commander";
import { resolveConfig, LinkedInClient, getComment, LinkedInApiError } from "@linkedctl/core";
import { resolveFormat, formatOutput } from "../../output/index.js";
export function createCommentGetCommand() {
const cmd = new Command("get");
cmd.description("Get a specific comment on a LinkedIn post");
cmd.argument("<comment-urn>", "comment URN (e.g. urn:li:comment:(urn:li:activity:123,456))");
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));
cmd.addHelpText("after", `
Examples:
linkedctl comment get "urn:li:comment:(urn:li:activity:123,456)"
linkedctl comment get "urn:li:comment:(urn:li:activity:123,456)" --format json`);
cmd.action(async (commentUrn, opts, actionCmd) => {
const globals = actionCmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
try {
const comment = await getComment(client, { commentUrn });
const format = resolveFormat(opts.format, process.stdout, globals.json === true);
const output = formatOutput({
urn: comment.urn,
actor: comment.actor,
object: comment.object,
message: comment.message,
createdAt: comment.createdAt,
}, format);
console.log(output);
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to get comment: ${error.message}`);
}
throw error;
}
});
return cmd;
}
//# sourceMappingURL=get.js.map
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../src/commands/comment/get.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC9F,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGpE,MAAM,UAAU,uBAAuB;IACrC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,GAAG,CAAC,WAAW,CAAC,2CAA2C,CAAC,CAAC;IAC7D,GAAG,CAAC,QAAQ,CAAC,eAAe,EAAE,6DAA6D,CAAC,CAAC;IAC7F,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,WAAW,CACb,OAAO,EACP;;;iFAG6E,CAC9E,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,UAAkB,EAAE,IAAqC,EAAE,SAAkB,EAAE,EAAE;QACjG,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,EAAgE,CAAC;QAE1G,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;SAClE,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;YAEzD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,MAAkC,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAC7G,MAAM,MAAM,GAAG,YAAY,CACzB;gBACE,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,EACD,MAAM,CACP,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
export declare function commentCommand(): Command;
//# sourceMappingURL=index.d.ts.map
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/comment/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,cAAc,IAAI,OAAO,CAUxC"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command } from "commander";
import { createCommentCreateCommand } from "./create.js";
import { createCommentListCommand } from "./list.js";
import { createCommentGetCommand } from "./get.js";
import { createCommentDeleteCommand } from "./delete.js";
export function commentCommand() {
const cmd = new Command("comment");
cmd.description("Manage comments on LinkedIn posts");
cmd.addCommand(createCommentCreateCommand());
cmd.addCommand(createCommentListCommand());
cmd.addCommand(createCommentGetCommand());
cmd.addCommand(createCommentDeleteCommand());
return cmd;
}
//# sourceMappingURL=index.js.map
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/comment/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAEzD,MAAM,UAAU,cAAc;IAC5B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IACnC,GAAG,CAAC,WAAW,CAAC,mCAAmC,CAAC,CAAC;IAErD,GAAG,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC,CAAC;IAC7C,GAAG,CAAC,UAAU,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAC3C,GAAG,CAAC,UAAU,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAC1C,GAAG,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC,CAAC;IAE7C,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
export declare function createCommentListCommand(): Command;
//# sourceMappingURL=list.d.ts.map
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/comment/list.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAK5C,wBAAgB,wBAAwB,IAAI,OAAO,CA8ClD"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, Option } from "commander";
import { resolveConfig, LinkedInClient, listComments, LinkedInApiError } from "@linkedctl/core";
import { resolveFormat, formatOutput } from "../../output/index.js";
export function createCommentListCommand() {
const cmd = new Command("list");
cmd.description("List comments on a LinkedIn post");
cmd.argument("<urn>", "post URN to list comments for (e.g. urn:li:share:...)");
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));
cmd.addHelpText("after", `
Examples:
linkedctl comment list urn:li:share:123
linkedctl comment list urn:li:share:123 --format json`);
cmd.action(async (urn, opts, actionCmd) => {
const globals = actionCmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
try {
const comments = await listComments(client, { object: urn });
const format = resolveFormat(opts.format, process.stdout, globals.json === true);
const rows = comments.map((c) => ({
urn: c.urn,
actor: c.actor,
message: c.message,
createdAt: c.createdAt,
}));
const output = formatOutput(rows, format);
console.log(output);
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to list comments: ${error.message}`);
}
throw error;
}
});
return cmd;
}
//# sourceMappingURL=list.js.map
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/comment/list.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGpE,MAAM,UAAU,wBAAwB;IACtC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,GAAG,CAAC,WAAW,CAAC,kCAAkC,CAAC,CAAC;IACpD,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,uDAAuD,CAAC,CAAC;IAC/E,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,WAAW,CACb,OAAO,EACP;;;wDAGoD,CACrD,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,IAAqC,EAAE,SAAkB,EAAE,EAAE;QAC1F,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,EAAgE,CAAC;QAE1G,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;SAClE,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YAE7D,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,MAAkC,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAC7G,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChC,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,SAAS,EAAE,CAAC,CAAC,SAAS;aACvB,CAAC,CAAC,CAAC;YACJ,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/D,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
export declare function deleteCommand(): Command;
//# sourceMappingURL=delete.d.ts.map
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/commands/post/delete.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAM5C,wBAAgB,aAAa,IAAI,OAAO,CAmCvC"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, Option } from "commander";
import { resolveConfig, LinkedInClient, deletePost, LinkedInApiError } from "@linkedctl/core";
import { resolveFormat, formatOutput } from "../../output/index.js";
import { confirmOrAbort } from "../../confirm.js";
export function deleteCommand() {
const cmd = new Command("delete");
cmd.description("Delete a LinkedIn post");
cmd.argument("<urn>", "post URN (e.g. urn:li:share:123)");
cmd.option("-f, --force", "skip confirmation prompt");
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));
cmd.action(async (urn, opts, actionCmd) => {
const globals = actionCmd.optsWithGlobals();
await confirmOrAbort(`Delete post "${urn}"?`, opts["force"] === true);
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
try {
await deletePost(client, urn);
const format = resolveFormat(opts["format"], process.stdout, globals.json === true);
const output = formatOutput({ urn, status: "deleted" }, format);
console.log(output);
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to delete post: ${error.message}`);
}
throw error;
}
});
return cmd;
}
//# sourceMappingURL=delete.js.map
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/post/delete.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE9F,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,UAAU,aAAa;IAC3B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,GAAG,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;IAC1C,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,kCAAkC,CAAC,CAAC;IAC1D,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,0BAA0B,CAAC,CAAC;IACtD,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,IAA6B,EAAE,SAAkB,EAAE,EAAE;QAClF,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,EAAgE,CAAC;QAE1G,MAAM,cAAc,CAAC,gBAAgB,GAAG,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;QAEtE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;SAClE,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAE9B,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAA6B,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAChH,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
export declare function getCommand(): Command;
//# sourceMappingURL=get.d.ts.map
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../src/commands/post/get.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAK5C,wBAAgB,UAAU,IAAI,OAAO,CAgCpC"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, Option } from "commander";
import { resolveConfig, LinkedInClient, getPost, LinkedInApiError } from "@linkedctl/core";
import { resolveFormat, formatOutput } from "../../output/index.js";
export function getCommand() {
const cmd = new Command("get");
cmd.description("Get a LinkedIn post by URN");
cmd.argument("<urn>", "post URN (e.g. urn:li:share:123)");
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));
cmd.action(async (urn, opts, actionCmd) => {
const globals = actionCmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
try {
const post = await getPost(client, urn);
const format = resolveFormat(opts["format"], process.stdout, globals.json === true);
const output = formatOutput(post, format);
console.log(output);
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to get post: ${error.message}`);
}
throw error;
}
});
return cmd;
}
//# sourceMappingURL=get.js.map
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../src/commands/post/get.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE3F,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEpE,MAAM,UAAU,UAAU;IACxB,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,GAAG,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;IAC9C,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,kCAAkC,CAAC,CAAC;IAC1D,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,IAA6B,EAAE,SAAkB,EAAE,EAAE;QAClF,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,EAAgE,CAAC;QAE1G,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;SAClE,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAExC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAA6B,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAChH,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1D,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
export declare function listCommand(): Command;
//# sourceMappingURL=list.d.ts.map
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/post/list.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAK5C,wBAAgB,WAAW,IAAI,OAAO,CAmDrC"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, Option } from "commander";
import { resolveConfig, LinkedInClient, getCurrentPersonUrn, listPosts, LinkedInApiError } from "@linkedctl/core";
import { resolveFormat, formatOutput } from "../../output/index.js";
export function listCommand() {
const cmd = new Command("list");
cmd.description("List your LinkedIn posts");
cmd.option("--count <count>", "number of posts to return (default 10, max 100)", "10");
cmd.option("--start <start>", "starting index for pagination (default 0)", "0");
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));
cmd.action(async (opts, actionCmd) => {
const globals = actionCmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
try {
const authorUrn = await getCurrentPersonUrn(client);
const count = parseInt(opts["count"], 10);
const start = parseInt(opts["start"], 10);
const response = await listPosts(client, { author: authorUrn, count, start });
const format = resolveFormat(opts["format"], process.stdout, globals.json === true);
if (format === "json") {
console.log(formatOutput(response, format));
}
else {
if (response.elements.length === 0) {
console.log("No posts found.");
return;
}
const rows = response.elements.map((post) => ({
urn: post.id,
visibility: post.visibility,
commentary: post.commentary.length > 80 ? post.commentary.slice(0, 77) + "..." : post.commentary,
lifecycleState: post.lifecycleState,
}));
console.log(formatOutput(rows, format));
}
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to list posts: ${error.message}`);
}
throw error;
}
});
return cmd;
}
//# sourceMappingURL=list.js.map
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/post/list.ts"],"names":[],"mappings":"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"}
import { Command } from "commander";
export declare function updateCommand(): Command;
//# sourceMappingURL=update.d.ts.map
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/post/update.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAK5C,wBAAgB,aAAa,IAAI,OAAO,CAiCvC"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, Option } from "commander";
import { resolveConfig, LinkedInClient, updatePost, LinkedInApiError } from "@linkedctl/core";
import { resolveFormat, formatOutput } from "../../output/index.js";
export function updateCommand() {
const cmd = new Command("update");
cmd.description("Update a LinkedIn post's commentary text");
cmd.argument("<urn>", "post URN (e.g. urn:li:share:123)");
cmd.requiredOption("--text <text>", "new text content for the post");
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));
cmd.action(async (urn, opts, actionCmd) => {
const globals = actionCmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
try {
await updatePost(client, urn, { text: opts["text"] });
const format = resolveFormat(opts["format"], process.stdout, globals.json === true);
const output = formatOutput({ urn, status: "updated" }, format);
console.log(output);
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to update post: ${error.message}`);
}
throw error;
}
});
return cmd;
}
//# sourceMappingURL=update.js.map
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/post/update.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE9F,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEpE,MAAM,UAAU,aAAa;IAC3B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,GAAG,CAAC,WAAW,CAAC,0CAA0C,CAAC,CAAC;IAC5D,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,kCAAkC,CAAC,CAAC;IAC1D,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,+BAA+B,CAAC,CAAC;IACrE,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,IAA6B,EAAE,SAAkB,EAAE,EAAE;QAClF,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,EAAgE,CAAC;QAE1G,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;YACrC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;SAClE,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAW,EAAE,CAAC,CAAC;YAEhE,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAA6B,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAChH,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
interface CreateOpts {
type?: string | undefined;
format?: string | undefined;
}
export declare function createReactionAction(entityUrn: string, opts: CreateOpts, cmd: Command): Promise<void>;
export declare function createReactionCommand(): Command;
export {};
//# sourceMappingURL=create.d.ts.map
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/reaction/create.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAM5C,UAAU,UAAU;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AAED,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA4B3G;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAqB/C"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, Option } from "commander";
import { resolveConfig, LinkedInClient, createReaction, LinkedInApiError, REACTION_TYPES } from "@linkedctl/core";
import { resolveFormat, formatOutput } from "../../output/index.js";
export async function createReactionAction(entityUrn, opts, cmd) {
const globals = cmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
const reactionType = (opts.type ?? "LIKE");
try {
const reactionUrn = await createReaction(client, {
entity: entityUrn,
reactionType,
});
const format = resolveFormat(opts.format, process.stdout, globals.json === true);
const output = formatOutput({ urn: reactionUrn }, format);
console.log(output);
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to create reaction: ${error.message}`);
}
throw error;
}
}
export function createReactionCommand() {
const cmd = new Command("create");
cmd.description("Add a reaction to a LinkedIn post");
cmd.argument("<entity-urn>", "entity URN to react to (e.g. urn:li:share:abc123)");
cmd.addOption(new Option("--type <type>", "reaction type").choices([...REACTION_TYPES]).default("LIKE"));
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));
cmd.addHelpText("after", `
Examples:
linkedctl reaction create urn:li:share:abc123
linkedctl reaction create urn:li:share:abc123 --type PRAISE
linkedctl reaction create urn:li:share:abc123 --type ENTERTAINMENT --format json`);
cmd.action(async (entityUrn, opts, actionCmd) => {
await createReactionAction(entityUrn, opts, actionCmd);
});
return cmd;
}
//# sourceMappingURL=create.js.map
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/reaction/create.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAElH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAQpE,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,SAAiB,EAAE,IAAgB,EAAE,GAAY;IAC1F,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,EAAgE,CAAC;IAEpG,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;QACrC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;KAClE,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;IACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;IAE/D,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CAAiB,CAAC;IAE3D,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE;YAC/C,MAAM,EAAE,SAAS;YACjB,YAAY;SACb,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,MAAkC,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAC7G,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,GAAG,CAAC,WAAW,CAAC,mCAAmC,CAAC,CAAC;IACrD,GAAG,CAAC,QAAQ,CAAC,cAAc,EAAE,mDAAmD,CAAC,CAAC;IAClF,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACzG,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,WAAW,CACb,OAAO,EACP;;;;mFAI+E,CAChF,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,IAAgB,EAAE,SAAkB,EAAE,EAAE;QAC3E,MAAM,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
export declare function deleteReactionAction(entityUrn: string, cmd: Command): Promise<void>;
export declare function deleteReactionCommand(): Command;
//# sourceMappingURL=delete.d.ts.map
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/commands/reaction/delete.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBzF;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAiB/C"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command } from "commander";
import { resolveConfig, LinkedInClient, getCurrentPersonUrn, deleteReaction, LinkedInApiError } from "@linkedctl/core";
export async function deleteReactionAction(entityUrn, cmd) {
const globals = cmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
const actorUrn = await getCurrentPersonUrn(client);
try {
await deleteReaction(client, { entity: entityUrn, actor: actorUrn });
console.log("Reaction deleted");
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to delete reaction: ${error.message}`);
}
throw error;
}
}
export function deleteReactionCommand() {
const cmd = new Command("delete");
cmd.description("Remove your reaction from a LinkedIn post");
cmd.argument("<entity-urn>", "entity URN to remove reaction from (e.g. urn:li:share:abc123)");
cmd.addHelpText("after", `
Examples:
linkedctl reaction delete urn:li:share:abc123`);
cmd.action(async (entityUrn, _opts, actionCmd) => {
await deleteReactionAction(entityUrn, actionCmd);
});
return cmd;
}
//# sourceMappingURL=delete.js.map
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/reaction/delete.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEvH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,SAAiB,EAAE,GAAY;IACxE,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,EAAoC,CAAC;IAExE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;QACrC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;KAClE,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;IACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;IAE/D,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAEnD,IAAI,CAAC;QACH,MAAM,cAAc,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,GAAG,CAAC,WAAW,CAAC,2CAA2C,CAAC,CAAC;IAC7D,GAAG,CAAC,QAAQ,CAAC,cAAc,EAAE,+DAA+D,CAAC,CAAC;IAE9F,GAAG,CAAC,WAAW,CACb,OAAO,EACP;;gDAE4C,CAC7C,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,KAA8B,EAAE,SAAkB,EAAE,EAAE;QACzF,MAAM,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
export declare function reactionCommand(): Command;
//# sourceMappingURL=index.d.ts.map
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/reaction/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,eAAe,IAAI,OAAO,CAWzC"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command } from "commander";
import { createReactionCommand } from "./create.js";
import { listReactionsCommand } from "./list.js";
import { deleteReactionCommand } from "./delete.js";
export function reactionCommand() {
const cmd = new Command("reaction");
cmd.description("Manage LinkedIn reactions");
cmd.enablePositionalOptions();
cmd.addCommand(createReactionCommand());
cmd.addCommand(listReactionsCommand());
cmd.addCommand(deleteReactionCommand());
return cmd;
}
//# sourceMappingURL=index.js.map
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/reaction/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IACpC,GAAG,CAAC,WAAW,CAAC,2BAA2B,CAAC,CAAC;IAE7C,GAAG,CAAC,uBAAuB,EAAE,CAAC;IAE9B,GAAG,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC,CAAC;IACxC,GAAG,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC,CAAC;IACvC,GAAG,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAExC,OAAO,GAAG,CAAC;AACb,CAAC"}
import { Command } from "commander";
interface ListOpts {
format?: string | undefined;
}
export declare function listReactionsAction(entityUrn: string, opts: ListOpts, cmd: Command): Promise<void>;
export declare function listReactionsCommand(): Command;
export {};
//# sourceMappingURL=list.d.ts.map
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/reaction/list.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAK5C,UAAU,QAAQ;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AAED,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BxG;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAmB9C"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, Option } from "commander";
import { resolveConfig, LinkedInClient, listReactions, LinkedInApiError } from "@linkedctl/core";
import { resolveFormat, formatOutput } from "../../output/index.js";
export async function listReactionsAction(entityUrn, opts, cmd) {
const globals = cmd.optsWithGlobals();
const { config } = await resolveConfig({
profile: globals.profile,
requiredScopes: ["openid", "profile", "email", "w_member_social"],
});
const accessToken = config.oauth?.accessToken ?? "";
const apiVersion = config.apiVersion ?? "";
const client = new LinkedInClient({ accessToken, apiVersion });
try {
const reactions = await listReactions(client, { entity: entityUrn });
const format = resolveFormat(opts.format, process.stdout, globals.json === true);
const output = formatOutput(reactions.map((r) => ({
actor: r.actor,
type: r.reactionType,
createdAt: new Date(r.createdAt).toISOString(),
})), format);
console.log(output);
}
catch (error) {
if (error instanceof LinkedInApiError) {
throw new Error(`Failed to list reactions: ${error.message}`);
}
throw error;
}
}
export function listReactionsCommand() {
const cmd = new Command("list");
cmd.description("List reactions on a LinkedIn post");
cmd.argument("<entity-urn>", "entity URN to list reactions for (e.g. urn:li:share:abc123)");
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));
cmd.addHelpText("after", `
Examples:
linkedctl reaction list urn:li:share:abc123
linkedctl reaction list urn:li:share:abc123 --format json`);
cmd.action(async (entityUrn, opts, actionCmd) => {
await listReactionsAction(entityUrn, opts, actionCmd);
});
return cmd;
}
//# sourceMappingURL=list.js.map
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/reaction/list.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAOpE,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,SAAiB,EAAE,IAAc,EAAE,GAAY;IACvF,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,EAAgE,CAAC;IAEpG,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;QACrC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,CAAC;KAClE,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;IACpD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;IAE/D,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QAErE,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,MAAkC,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAC7G,MAAM,MAAM,GAAG,YAAY,CACzB,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpB,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,IAAI,EAAE,CAAC,CAAC,YAAY;YACpB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;SAC/C,CAAC,CAAC,EACH,MAAM,CACP,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,GAAG,CAAC,WAAW,CAAC,mCAAmC,CAAC,CAAC;IACrD,GAAG,CAAC,QAAQ,CAAC,cAAc,EAAE,6DAA6D,CAAC,CAAC;IAC5F,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,WAAW,CACb,OAAO,EACP;;;4DAGwD,CACzD,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,IAAc,EAAE,SAAkB,EAAE,EAAE;QACzE,MAAM,mBAAmB,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
+8
-0

@@ -6,2 +6,3 @@ import { Command } from "commander";

visibility?: string | undefined;
draft?: boolean | undefined;
image?: string | undefined;

@@ -16,2 +17,5 @@ video?: string | undefined;

imageFiles?: string | undefined;
poll?: string | undefined;
option?: string[] | undefined;
pollDuration?: string | undefined;
format?: string | undefined;

@@ -27,4 +31,8 @@ }

export declare function addMediaOptions(cmd: Command): void;
/**
* Add poll options shared between `post create` and `post` shorthand.
*/
export declare function addPollOptions(cmd: Command): void;
export declare function createCommand(): Command;
export {};
//# sourceMappingURL=create.d.ts.map
+1
-1

@@ -1,1 +0,1 @@

{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/post/create.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAC;AAmBlE,UAAU,UAAU;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AA0JD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAqCjH;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAUlD;AAED,wBAAgB,aAAa,IAAI,OAAO,CA2CvC"}
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/post/create.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAC;AAmBlE,UAAU,UAAU;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AA4KD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAuCjH;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAUlD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAQjD;AAMD,wBAAgB,aAAa,IAAI,OAAO,CA+CvC"}

@@ -39,6 +39,6 @@ // SPDX-License-Identifier: AGPL-3.0-only

*
* Also validates mutual exclusivity against file-based options.
* Also validates mutual exclusivity against file-based and poll options.
*/
function resolveContent(opts) {
const mediaFlags = [
const contentFlags = [
opts.image,

@@ -53,5 +53,6 @@ opts.video,

opts.imageFiles,
opts.poll,
].filter((v) => v !== undefined);
if (mediaFlags.length > 1) {
throw new Error("Only one media option may be specified: --image, --video, --document, --article-url, --images, --image-file, --video-file, --document-file, or --image-files");
if (contentFlags.length > 1) {
throw new Error("Only one content option may be specified: --image, --video, --document, --article-url, --images, --image-file, --video-file, --document-file, --image-files, or --poll");
}

@@ -77,2 +78,19 @@ if (opts.image !== undefined) {

}
if (opts.poll !== undefined) {
const options = opts.option ?? [];
if (options.length < 2) {
throw new Error("--poll requires at least 2 --option values");
}
if (options.length > 4) {
throw new Error("--poll allows at most 4 --option values");
}
const duration = opts.pollDuration ?? "THREE_DAYS";
return {
poll: {
question: opts.poll,
options: options.map((text) => ({ text })),
settings: { duration },
},
};
}
return undefined;

@@ -157,2 +175,3 @@ }

const visibility = opts.visibility ?? "PUBLIC";
const lifecycleState = opts.draft === true ? "DRAFT" : "PUBLISHED";
try {

@@ -164,2 +183,3 @@ const postUrn = await createPost(client, {

content: finalContent,
lifecycleState,
});

@@ -191,2 +211,15 @@ const format = resolveFormat(opts.format, process.stdout, globals.json === true);

}
/**
* Add poll options shared between `post create` and `post` shorthand.
*/
export function addPollOptions(cmd) {
cmd.option("--poll <question>", "create a poll with the given question");
cmd.option("--option <text>", "add a poll answer option (repeat for each option, 2-4 required)", collectOption);
cmd.addOption(new Option("--poll-duration <duration>", "poll duration (defaults to THREE_DAYS)")
.choices(["ONE_DAY", "THREE_DAYS", "ONE_WEEK", "TWO_WEEKS"])
.default("THREE_DAYS"));
}
function collectOption(value, previous) {
return [...(previous ?? []), value];
}
export function createCommand() {

@@ -208,3 +241,5 @@ const cmd = new Command("create");

.default("PUBLIC"));
cmd.option("--draft", "save post as draft instead of publishing");
addMediaOptions(cmd);
addPollOptions(cmd);
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));

@@ -223,2 +258,4 @@ cmd.addHelpText("after", `

linkedctl post create --text "Gallery" --image-files a.jpg,b.jpg
linkedctl post create --draft --text "Work in progress"
linkedctl post create --text "Vote!" --poll "Favorite language?" --option "TypeScript" --option "Python"
echo "Hello" | linkedctl post create`);

@@ -225,0 +262,0 @@ cmd.action(async (text, opts, actionCmd) => {

@@ -1,1 +0,1 @@

{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/post/create.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/post/create.ts"],"names":[],"mappings":"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"}

@@ -1,1 +0,1 @@

{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/post/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAC;AAGlE,wBAAgB,WAAW,IAAI,OAAO,CAyCrC"}
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/post/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAC;AAOlE,wBAAgB,WAAW,IAAI,OAAO,CAiDrC"}
// SPDX-License-Identifier: AGPL-3.0-only
// Copyright (C) 2026 Oleksii PELYKH
import { Command, InvalidArgumentError, Option } from "commander";
import { addMediaOptions, createCommand, createPostAction } from "./create.js";
import { addMediaOptions, addPollOptions, createCommand, createPostAction } from "./create.js";
import { getCommand } from "./get.js";
import { listCommand } from "./list.js";
import { updateCommand } from "./update.js";
import { deleteCommand } from "./delete.js";
export function postCommand() {

@@ -22,3 +26,5 @@ const cmd = new Command("post");

.default("PUBLIC"));
cmd.option("--draft", "save post as draft instead of publishing");
addMediaOptions(cmd);
addPollOptions(cmd);
cmd.addOption(new Option("--format <format>", "output format (json or table)").choices(["json", "table"]));

@@ -30,2 +36,4 @@ cmd.addHelpText("after", `

linkedctl post --text "Check this out" --image urn:li:image:C5608AQ...
linkedctl post --draft --text "Work in progress"
linkedctl post --text "Vote!" --poll "Favorite?" --option "A" --option "B"
echo "Hello" | linkedctl post`);

@@ -36,4 +44,8 @@ cmd.action(async (text, opts, actionCmd) => {

cmd.addCommand(createCommand());
cmd.addCommand(getCommand());
cmd.addCommand(listCommand());
cmd.addCommand(updateCommand());
cmd.addCommand(deleteCommand());
return cmd;
}
//# sourceMappingURL=index.js.map

@@ -1,1 +0,1 @@

{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/post/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/E,MAAM,UAAU,WAAW;IACzB,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,GAAG,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;IAEzC,GAAG,CAAC,uBAAuB,EAAE,CAAC;IAE9B,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,yEAAyE,CAAC,CAAC;IAClG,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,sFAAsF,CAAC,CAAC;IACpH,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,kCAAkC,CAAC,CAAC;IACrE,GAAG,CAAC,SAAS,CACX,IAAI,MAAM,CAAC,2BAA2B,EAAE,yCAAyC,CAAC;SAC/E,OAAO,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;SAClC,SAAS,CAAC,CAAC,CAAS,EAAE,EAAE;QACvB,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,oBAAoB,CAAC,0CAA0C,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;SACD,OAAO,CAAC,QAAQ,CAAC,CACrB,CAAC;IACF,eAAe,CAAC,GAAG,CAAC,CAAC;IACrB,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,WAAW,CACb,OAAO,EACP;;;;;gCAK4B,CAC7B,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAwB,EAAE,IAA6B,EAAE,SAAkB,EAAE,EAAE;QAC/F,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IAEhC,OAAO,GAAG,CAAC;AACb,CAAC"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/post/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,UAAU,WAAW;IACzB,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,GAAG,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;IAEzC,GAAG,CAAC,uBAAuB,EAAE,CAAC;IAE9B,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,yEAAyE,CAAC,CAAC;IAClG,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,sFAAsF,CAAC,CAAC;IACpH,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,kCAAkC,CAAC,CAAC;IACrE,GAAG,CAAC,SAAS,CACX,IAAI,MAAM,CAAC,2BAA2B,EAAE,yCAAyC,CAAC;SAC/E,OAAO,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;SAClC,SAAS,CAAC,CAAC,CAAS,EAAE,EAAE;QACvB,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QACnC,IAAI,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,oBAAoB,CAAC,0CAA0C,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;SACD,OAAO,CAAC,QAAQ,CAAC,CACrB,CAAC;IACF,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,0CAA0C,CAAC,CAAC;IAClE,eAAe,CAAC,GAAG,CAAC,CAAC;IACrB,cAAc,CAAC,GAAG,CAAC,CAAC;IACpB,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,EAAE,+BAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3G,GAAG,CAAC,WAAW,CACb,OAAO,EACP;;;;;;;gCAO4B,CAC7B,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,IAAwB,EAAE,IAA6B,EAAE,SAAkB,EAAE,EAAE;QAC/F,MAAM,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IAChC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7B,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9B,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IAChC,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IAEhC,OAAO,GAAG,CAAC;AACb,CAAC"}

@@ -1,1 +0,1 @@

{"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAuCvD"}
{"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAyCvD"}

@@ -5,2 +5,3 @@ // SPDX-License-Identifier: AGPL-3.0-only

import { authCommand } from "./commands/auth/index.js";
import { commentCommand } from "./commands/comment/index.js";
import { completionCommand } from "./commands/completion.js";

@@ -10,2 +11,3 @@ import { mediaCommand } from "./commands/media/index.js";

import { profileCommand } from "./commands/profile/index.js";
import { reactionCommand } from "./commands/reaction/index.js";
import { whoamiCommand } from "./commands/whoami.js";

@@ -34,2 +36,3 @@ /**

program.addCommand(authCommand());
program.addCommand(commentCommand());
program.addCommand(completionCommand(program));

@@ -39,2 +42,3 @@ program.addCommand(mediaCommand());

program.addCommand(profileCommand());
program.addCommand(reactionCommand());
program.addCommand(whoamiCommand());

@@ -41,0 +45,0 @@ program.exitOverride();

@@ -1,1 +0,1 @@

{"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,OAAO,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;IAChD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAClC,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,iCAAiC,CAAC,CAAC;IACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,kDAAkD,CAAC,CAAC;IAC7E,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,+BAA+B,CAAC,CAAC;IAC/D,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;IAErD,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,WAAoB,EAAE,EAAE;QACjD,MAAM,IAAI,GAAG,WAAW,CAAC,eAAe,EAAuB,CAAC;QAChE,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACxB,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;YACzB,OAAO,CAAC,IAAI,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAClC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IACnC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAClC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;IACrC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IAEpC,OAAO,CAAC,YAAY,EAAE,CAAC;IAEvB,OAAO,CAAC,WAAW,CACjB,OAAO,EACP,qCAAqC;QACnC,iBAAiB;QACjB,iBAAiB;QACjB,oDAAoD;QACpD,oDAAoD,CACvD,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC"}
{"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,OAAO,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;IAChD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAClC,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,iCAAiC,CAAC,CAAC;IACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,kDAAkD,CAAC,CAAC;IAC7E,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,+BAA+B,CAAC,CAAC;IAC/D,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;IAErD,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,WAAoB,EAAE,EAAE;QACjD,MAAM,IAAI,GAAG,WAAW,CAAC,eAAe,EAAuB,CAAC;QAChE,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACxB,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;YACzB,OAAO,CAAC,IAAI,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAClC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;IACrC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;IACnC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IAClC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;IACrC,OAAO,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;IACtC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IAEpC,OAAO,CAAC,YAAY,EAAE,CAAC;IAEvB,OAAO,CAAC,WAAW,CACjB,OAAO,EACP,qCAAqC;QACnC,iBAAiB;QACjB,iBAAiB;QACjB,oDAAoD;QACpD,oDAAoD,CACvD,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC"}
{
"name": "@linkedctl/cli",
"version": "0.2.0",
"version": "0.3.0",
"description": "CLI for LinkedIn API integration",

@@ -44,3 +44,3 @@ "type": "module",

"commander": "^14.0.3",
"@linkedctl/core": "^0.2.0"
"@linkedctl/core": "^0.3.0"
},

@@ -47,0 +47,0 @@ "devDependencies": {