@linkedapi/linkedin-cli 1.0.3 → 1.0.5

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.
Files changed (174) hide show
  1. package/dist/base-command.d.ts +15 -0
  2. package/dist/base-command.d.ts.map +1 -0
  3. package/dist/base-command.js +77 -0
  4. package/dist/base-command.js.map +1 -0
  5. package/dist/commands/account/list.d.ts +7 -0
  6. package/dist/commands/account/list.d.ts.map +1 -0
  7. package/dist/commands/account/list.js +28 -0
  8. package/dist/commands/account/list.js.map +1 -0
  9. package/dist/commands/account/rename.d.ts +13 -0
  10. package/dist/commands/account/rename.d.ts.map +1 -0
  11. package/dist/commands/account/rename.js +36 -0
  12. package/dist/commands/account/rename.js.map +1 -0
  13. package/dist/commands/account/switch.d.ts +10 -0
  14. package/dist/commands/account/switch.d.ts.map +1 -0
  15. package/dist/commands/account/switch.js +29 -0
  16. package/dist/commands/account/switch.js.map +1 -0
  17. package/dist/commands/company/fetch.d.ts +30 -0
  18. package/dist/commands/company/fetch.d.ts.map +1 -0
  19. package/dist/commands/company/fetch.js +129 -0
  20. package/dist/commands/company/fetch.js.map +1 -0
  21. package/dist/commands/company/search.d.ts +19 -0
  22. package/dist/commands/company/search.d.ts.map +1 -0
  23. package/dist/commands/company/search.js +67 -0
  24. package/dist/commands/company/search.js.map +1 -0
  25. package/dist/commands/connection/list.d.ts +24 -0
  26. package/dist/commands/connection/list.d.ts.map +1 -0
  27. package/dist/commands/connection/list.js +92 -0
  28. package/dist/commands/connection/list.js.map +1 -0
  29. package/dist/commands/connection/pending.d.ts +14 -0
  30. package/dist/commands/connection/pending.d.ts.map +1 -0
  31. package/dist/commands/connection/pending.js +33 -0
  32. package/dist/commands/connection/pending.js.map +1 -0
  33. package/dist/commands/connection/remove.d.ts +17 -0
  34. package/dist/commands/connection/remove.d.ts.map +1 -0
  35. package/dist/commands/connection/remove.js +43 -0
  36. package/dist/commands/connection/remove.js.map +1 -0
  37. package/dist/commands/connection/send.d.ts +19 -0
  38. package/dist/commands/connection/send.d.ts.map +1 -0
  39. package/dist/commands/connection/send.js +55 -0
  40. package/dist/commands/connection/send.js.map +1 -0
  41. package/dist/commands/connection/status.d.ts +17 -0
  42. package/dist/commands/connection/status.d.ts.map +1 -0
  43. package/dist/commands/connection/status.js +44 -0
  44. package/dist/commands/connection/status.js.map +1 -0
  45. package/dist/commands/connection/withdraw.d.ts +18 -0
  46. package/dist/commands/connection/withdraw.d.ts.map +1 -0
  47. package/dist/commands/connection/withdraw.js +49 -0
  48. package/dist/commands/connection/withdraw.js.map +1 -0
  49. package/dist/commands/message/get.d.ts +18 -0
  50. package/dist/commands/message/get.d.ts.map +1 -0
  51. package/dist/commands/message/get.js +81 -0
  52. package/dist/commands/message/get.js.map +1 -0
  53. package/dist/commands/message/send.d.ts +18 -0
  54. package/dist/commands/message/send.d.ts.map +1 -0
  55. package/dist/commands/message/send.js +48 -0
  56. package/dist/commands/message/send.js.map +1 -0
  57. package/dist/commands/navigator/company/fetch.d.ts +28 -0
  58. package/dist/commands/navigator/company/fetch.d.ts.map +1 -0
  59. package/dist/commands/navigator/company/fetch.js +115 -0
  60. package/dist/commands/navigator/company/fetch.js.map +1 -0
  61. package/dist/commands/navigator/company/search.d.ts +21 -0
  62. package/dist/commands/navigator/company/search.d.ts.map +1 -0
  63. package/dist/commands/navigator/company/search.js +80 -0
  64. package/dist/commands/navigator/company/search.js.map +1 -0
  65. package/dist/commands/navigator/message/get.d.ts +18 -0
  66. package/dist/commands/navigator/message/get.d.ts.map +1 -0
  67. package/dist/commands/navigator/message/get.js +80 -0
  68. package/dist/commands/navigator/message/get.js.map +1 -0
  69. package/dist/commands/navigator/message/send.d.ts +19 -0
  70. package/dist/commands/navigator/message/send.d.ts.map +1 -0
  71. package/dist/commands/navigator/message/send.js +53 -0
  72. package/dist/commands/navigator/message/send.js.map +1 -0
  73. package/dist/commands/navigator/person/fetch.d.ts +17 -0
  74. package/dist/commands/navigator/person/fetch.d.ts.map +1 -0
  75. package/dist/commands/navigator/person/fetch.js +44 -0
  76. package/dist/commands/navigator/person/fetch.js.map +1 -0
  77. package/dist/commands/navigator/person/search.d.ts +25 -0
  78. package/dist/commands/navigator/person/search.d.ts.map +1 -0
  79. package/dist/commands/navigator/person/search.js +99 -0
  80. package/dist/commands/navigator/person/search.js.map +1 -0
  81. package/dist/commands/person/fetch.d.ts +30 -0
  82. package/dist/commands/person/fetch.d.ts.map +1 -0
  83. package/dist/commands/person/fetch.js +130 -0
  84. package/dist/commands/person/fetch.js.map +1 -0
  85. package/dist/commands/person/search.d.ts +24 -0
  86. package/dist/commands/person/search.d.ts.map +1 -0
  87. package/dist/commands/person/search.js +95 -0
  88. package/dist/commands/person/search.js.map +1 -0
  89. package/dist/commands/post/comment.d.ts +19 -0
  90. package/dist/commands/post/comment.d.ts.map +1 -0
  91. package/dist/commands/post/comment.js +54 -0
  92. package/dist/commands/post/comment.js.map +1 -0
  93. package/dist/commands/post/create.d.ts +19 -0
  94. package/dist/commands/post/create.d.ts.map +1 -0
  95. package/dist/commands/post/create.js +89 -0
  96. package/dist/commands/post/create.js.map +1 -0
  97. package/dist/commands/post/fetch.d.ts +23 -0
  98. package/dist/commands/post/fetch.d.ts.map +1 -0
  99. package/dist/commands/post/fetch.js +88 -0
  100. package/dist/commands/post/fetch.js.map +1 -0
  101. package/dist/commands/post/react.d.ts +19 -0
  102. package/dist/commands/post/react.d.ts.map +1 -0
  103. package/dist/commands/post/react.js +55 -0
  104. package/dist/commands/post/react.js.map +1 -0
  105. package/dist/commands/reset.d.ts +10 -0
  106. package/dist/commands/reset.d.ts.map +1 -0
  107. package/dist/commands/reset.js +50 -0
  108. package/dist/commands/reset.js.map +1 -0
  109. package/dist/commands/setup.d.ts +11 -0
  110. package/dist/commands/setup.d.ts.map +1 -0
  111. package/dist/commands/setup.js +118 -0
  112. package/dist/commands/setup.js.map +1 -0
  113. package/dist/commands/stats/performance.d.ts +14 -0
  114. package/dist/commands/stats/performance.d.ts.map +1 -0
  115. package/dist/commands/stats/performance.js +33 -0
  116. package/dist/commands/stats/performance.js.map +1 -0
  117. package/dist/commands/stats/ssi.d.ts +14 -0
  118. package/dist/commands/stats/ssi.d.ts.map +1 -0
  119. package/dist/commands/stats/ssi.js +33 -0
  120. package/dist/commands/stats/ssi.js.map +1 -0
  121. package/dist/commands/stats/usage.d.ts +16 -0
  122. package/dist/commands/stats/usage.d.ts.map +1 -0
  123. package/dist/commands/stats/usage.js +47 -0
  124. package/dist/commands/stats/usage.js.map +1 -0
  125. package/dist/commands/workflow/run.d.ts +15 -0
  126. package/dist/commands/workflow/run.d.ts.map +1 -0
  127. package/dist/commands/workflow/run.js +89 -0
  128. package/dist/commands/workflow/run.js.map +1 -0
  129. package/dist/commands/workflow/status.d.ts +18 -0
  130. package/dist/commands/workflow/status.d.ts.map +1 -0
  131. package/dist/commands/workflow/status.js +75 -0
  132. package/dist/commands/workflow/status.js.map +1 -0
  133. package/dist/core/auth/auth-manager.d.ts +7 -0
  134. package/dist/core/auth/auth-manager.d.ts.map +1 -0
  135. package/dist/core/auth/auth-manager.js +35 -0
  136. package/dist/core/auth/auth-manager.js.map +1 -0
  137. package/dist/core/auth/config-store.d.ts +22 -0
  138. package/dist/core/auth/config-store.d.ts.map +1 -0
  139. package/dist/core/auth/config-store.js +195 -0
  140. package/dist/core/auth/config-store.js.map +1 -0
  141. package/dist/core/client/build-client.d.ts +8 -0
  142. package/dist/core/client/build-client.d.ts.map +1 -0
  143. package/dist/core/client/build-client.js +8 -0
  144. package/dist/core/client/build-client.js.map +1 -0
  145. package/dist/core/errors/error-handler.d.ts +12 -0
  146. package/dist/core/errors/error-handler.d.ts.map +1 -0
  147. package/dist/core/errors/error-handler.js +71 -0
  148. package/dist/core/errors/error-handler.js.map +1 -0
  149. package/dist/core/errors/exit-codes.d.ts +13 -0
  150. package/dist/core/errors/exit-codes.d.ts.map +1 -0
  151. package/dist/core/errors/exit-codes.js +15 -0
  152. package/dist/core/errors/exit-codes.js.map +1 -0
  153. package/dist/core/output/field-selector.d.ts +2 -0
  154. package/dist/core/output/field-selector.d.ts.map +1 -0
  155. package/dist/core/output/field-selector.js +24 -0
  156. package/dist/core/output/field-selector.js.map +1 -0
  157. package/dist/core/output/formatter.d.ts +15 -0
  158. package/dist/core/output/formatter.d.ts.map +1 -0
  159. package/dist/core/output/formatter.js +152 -0
  160. package/dist/core/output/formatter.js.map +1 -0
  161. package/dist/core/workflow/workflow-runner.d.ts +8 -0
  162. package/dist/core/workflow/workflow-runner.d.ts.map +1 -0
  163. package/dist/core/workflow/workflow-runner.js +27 -0
  164. package/dist/core/workflow/workflow-runner.js.map +1 -0
  165. package/dist/index.d.ts +2 -0
  166. package/dist/index.d.ts.map +1 -0
  167. package/dist/index.js +6 -0
  168. package/dist/index.js.map +1 -0
  169. package/dist/utils/tty.d.ts +4 -0
  170. package/dist/utils/tty.d.ts.map +1 -0
  171. package/dist/utils/tty.js +18 -0
  172. package/dist/utils/tty.js.map +1 -0
  173. package/oclif.manifest.json +2573 -2
  174. package/package.json +2 -2
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const _base_command_1 = require("../../../base-command");
5
+ const formatter_1 = require("../../../core/output/formatter");
6
+ const workflow_runner_1 = require("../../../core/workflow/workflow-runner");
7
+ class NavigatorPersonSearch extends _base_command_1.BaseCommand {
8
+ static description = 'Search for people via Sales Navigator';
9
+ static flags = {
10
+ ..._base_command_1.BaseCommand.baseFlags,
11
+ term: core_1.Flags.string({
12
+ description: 'Search keyword or phrase',
13
+ }),
14
+ limit: core_1.Flags.integer({
15
+ description: 'Max results to return',
16
+ }),
17
+ 'first-name': core_1.Flags.string({
18
+ description: 'Filter by first name',
19
+ }),
20
+ 'last-name': core_1.Flags.string({
21
+ description: 'Filter by last name',
22
+ }),
23
+ position: core_1.Flags.string({
24
+ description: 'Filter by job position',
25
+ }),
26
+ locations: core_1.Flags.string({
27
+ description: 'Filter by locations (comma-separated)',
28
+ }),
29
+ industries: core_1.Flags.string({
30
+ description: 'Filter by industries (comma-separated)',
31
+ }),
32
+ 'current-companies': core_1.Flags.string({
33
+ description: 'Filter by current companies (comma-separated)',
34
+ }),
35
+ 'previous-companies': core_1.Flags.string({
36
+ description: 'Filter by previous companies (comma-separated)',
37
+ }),
38
+ schools: core_1.Flags.string({
39
+ description: 'Filter by schools (comma-separated)',
40
+ }),
41
+ 'years-of-experience': core_1.Flags.string({
42
+ description: 'Filter by experience ranges (comma-separated: lessThanOne,oneToTwo,threeToFive,sixToTen,moreThanTen)',
43
+ }),
44
+ };
45
+ static examples = [
46
+ '<%= config.bin %> navigator person search --term "VP Marketing" --locations "United States"',
47
+ ];
48
+ async run() {
49
+ const { flags } = await this.parse(NavigatorPersonSearch);
50
+ const client = await this.buildAuthenticatedClient();
51
+ const params = {};
52
+ if (flags.term)
53
+ params.term = flags.term;
54
+ if (flags.limit)
55
+ params.limit = flags.limit;
56
+ const filter = {};
57
+ if (flags['first-name'])
58
+ filter.firstName = flags['first-name'];
59
+ if (flags['last-name'])
60
+ filter.lastName = flags['last-name'];
61
+ if (flags.position)
62
+ filter.position = flags.position;
63
+ if (flags.locations)
64
+ filter.locations = splitCsv(flags.locations);
65
+ if (flags.industries)
66
+ filter.industries = splitCsv(flags.industries);
67
+ if (flags['current-companies'])
68
+ filter.currentCompanies = splitCsv(flags['current-companies']);
69
+ if (flags['previous-companies'])
70
+ filter.previousCompanies = splitCsv(flags['previous-companies']);
71
+ if (flags.schools)
72
+ filter.schools = splitCsv(flags.schools);
73
+ if (flags['years-of-experience'])
74
+ filter.yearsOfExperience = splitCsv(flags['years-of-experience']);
75
+ if (Object.keys(filter).length > 0) {
76
+ params.filter = filter;
77
+ }
78
+ try {
79
+ const result = await (0, workflow_runner_1.runWorkflow)(client.nvSearchPeople, params, {
80
+ isQuiet: flags.quiet,
81
+ });
82
+ (0, formatter_1.formatOutput)({
83
+ data: result.data,
84
+ errors: result.errors,
85
+ isJson: flags.json,
86
+ fields: flags.fields,
87
+ isQuiet: flags.quiet,
88
+ });
89
+ }
90
+ catch (error) {
91
+ this.handleError(error);
92
+ }
93
+ }
94
+ }
95
+ exports.default = NavigatorPersonSearch;
96
+ function splitCsv(value) {
97
+ return value.split(',').map((s) => s.trim());
98
+ }
99
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../src/commands/navigator/person/search.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { BaseCommand } from '../../base-command';
2
+ export default class PersonFetch extends BaseCommand {
3
+ static description: string;
4
+ static args: {
5
+ url: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
6
+ };
7
+ static flags: {
8
+ experience: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
9
+ education: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
+ skills: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ languages: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
12
+ posts: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
+ comments: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
14
+ reactions: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
+ 'posts-limit': import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
16
+ 'posts-since': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
17
+ 'comments-limit': import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
18
+ 'comments-since': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
19
+ 'reactions-limit': import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
20
+ 'reactions-since': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
21
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
22
+ fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
23
+ quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
24
+ 'no-color': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
25
+ account: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
26
+ };
27
+ static examples: string[];
28
+ run(): Promise<void>;
29
+ }
30
+ //# sourceMappingURL=fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../src/commands/person/fetch.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAClD,OAAgB,WAAW,SAAqC;IAEhE,OAAgB,IAAI;;MAKlB;IAEF,OAAgB,KAAK;;;;;;;;;;;;;;;;;;;MAgDnB;IAEF,OAAgB,QAAQ,WAGtB;IAEW,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAsDlC"}
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const _base_command_1 = require("../../base-command");
5
+ const formatter_1 = require("../../core/output/formatter");
6
+ const workflow_runner_1 = require("../../core/workflow/workflow-runner");
7
+ class PersonFetch extends _base_command_1.BaseCommand {
8
+ static description = 'Fetch a LinkedIn person profile';
9
+ static args = {
10
+ url: core_1.Args.string({
11
+ description: 'LinkedIn profile URL',
12
+ required: true,
13
+ }),
14
+ };
15
+ static flags = {
16
+ ..._base_command_1.BaseCommand.baseFlags,
17
+ experience: core_1.Flags.boolean({
18
+ description: 'Include work experience',
19
+ default: false,
20
+ }),
21
+ education: core_1.Flags.boolean({
22
+ description: 'Include education history',
23
+ default: false,
24
+ }),
25
+ skills: core_1.Flags.boolean({
26
+ description: 'Include skills',
27
+ default: false,
28
+ }),
29
+ languages: core_1.Flags.boolean({
30
+ description: 'Include languages',
31
+ default: false,
32
+ }),
33
+ posts: core_1.Flags.boolean({
34
+ description: 'Include posts',
35
+ default: false,
36
+ }),
37
+ comments: core_1.Flags.boolean({
38
+ description: 'Include comments',
39
+ default: false,
40
+ }),
41
+ reactions: core_1.Flags.boolean({
42
+ description: 'Include reactions',
43
+ default: false,
44
+ }),
45
+ 'posts-limit': core_1.Flags.integer({
46
+ description: 'Max posts to retrieve',
47
+ }),
48
+ 'posts-since': core_1.Flags.string({
49
+ description: 'Retrieve posts since ISO timestamp',
50
+ }),
51
+ 'comments-limit': core_1.Flags.integer({
52
+ description: 'Max comments to retrieve',
53
+ }),
54
+ 'comments-since': core_1.Flags.string({
55
+ description: 'Retrieve comments since ISO timestamp',
56
+ }),
57
+ 'reactions-limit': core_1.Flags.integer({
58
+ description: 'Max reactions to retrieve',
59
+ }),
60
+ 'reactions-since': core_1.Flags.string({
61
+ description: 'Retrieve reactions since ISO timestamp',
62
+ }),
63
+ };
64
+ static examples = [
65
+ '<%= config.bin %> person fetch https://www.linkedin.com/in/john-doe',
66
+ '<%= config.bin %> person fetch https://www.linkedin.com/in/john-doe --experience --education --json',
67
+ ];
68
+ async run() {
69
+ const { args, flags } = await this.parse(PersonFetch);
70
+ const client = await this.buildAuthenticatedClient();
71
+ const params = {
72
+ personUrl: args.url,
73
+ };
74
+ if (flags.experience)
75
+ params.retrieveExperience = true;
76
+ if (flags.education)
77
+ params.retrieveEducation = true;
78
+ if (flags.skills)
79
+ params.retrieveSkills = true;
80
+ if (flags.languages)
81
+ params.retrieveLanguages = true;
82
+ if (flags.posts)
83
+ params.retrievePosts = true;
84
+ if (flags.comments)
85
+ params.retrieveComments = true;
86
+ if (flags.reactions)
87
+ params.retrieveReactions = true;
88
+ if (flags.posts && (flags['posts-limit'] || flags['posts-since'])) {
89
+ const config = {};
90
+ if (flags['posts-limit'])
91
+ config.limit = flags['posts-limit'];
92
+ if (flags['posts-since'])
93
+ config.since = flags['posts-since'];
94
+ params.postsRetrievalConfig = config;
95
+ }
96
+ if (flags.comments && (flags['comments-limit'] || flags['comments-since'])) {
97
+ const config = {};
98
+ if (flags['comments-limit'])
99
+ config.limit = flags['comments-limit'];
100
+ if (flags['comments-since'])
101
+ config.since = flags['comments-since'];
102
+ params.commentsRetrievalConfig = config;
103
+ }
104
+ if (flags.reactions && (flags['reactions-limit'] || flags['reactions-since'])) {
105
+ const config = {};
106
+ if (flags['reactions-limit'])
107
+ config.limit = flags['reactions-limit'];
108
+ if (flags['reactions-since'])
109
+ config.since = flags['reactions-since'];
110
+ params.reactionsRetrievalConfig = config;
111
+ }
112
+ try {
113
+ const result = await (0, workflow_runner_1.runWorkflow)(client.fetchPerson, params, {
114
+ isQuiet: flags.quiet,
115
+ });
116
+ (0, formatter_1.formatOutput)({
117
+ data: result.data,
118
+ errors: result.errors,
119
+ isJson: flags.json,
120
+ fields: flags.fields,
121
+ isQuiet: flags.quiet,
122
+ });
123
+ }
124
+ catch (error) {
125
+ this.handleError(error);
126
+ }
127
+ }
128
+ }
129
+ exports.default = PersonFetch;
130
+ //# sourceMappingURL=fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/commands/person/fetch.ts"],"names":[],"mappings":";;AAAA,sCAA0C;AAE1C,iDAA4C;AAC5C,sDAAsD;AACtD,oEAA6D;AAE7D,MAAqB,WAAY,SAAQ,2BAAW;IAClD,MAAM,CAAU,WAAW,GAAG,iCAAiC,CAAC;IAEhE,MAAM,CAAU,IAAI,GAAG;QACrB,GAAG,EAAE,WAAI,CAAC,MAAM,CAAC;YACf,WAAW,EAAE,sBAAsB;YACnC,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;IAEF,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,2BAAW,CAAC,SAAS;QACxB,UAAU,EAAE,YAAK,CAAC,OAAO,CAAC;YACxB,WAAW,EAAE,yBAAyB;YACtC,OAAO,EAAE,KAAK;SACf,CAAC;QACF,SAAS,EAAE,YAAK,CAAC,OAAO,CAAC;YACvB,WAAW,EAAE,2BAA2B;YACxC,OAAO,EAAE,KAAK;SACf,CAAC;QACF,MAAM,EAAE,YAAK,CAAC,OAAO,CAAC;YACpB,WAAW,EAAE,gBAAgB;YAC7B,OAAO,EAAE,KAAK;SACf,CAAC;QACF,SAAS,EAAE,YAAK,CAAC,OAAO,CAAC;YACvB,WAAW,EAAE,mBAAmB;YAChC,OAAO,EAAE,KAAK;SACf,CAAC;QACF,KAAK,EAAE,YAAK,CAAC,OAAO,CAAC;YACnB,WAAW,EAAE,eAAe;YAC5B,OAAO,EAAE,KAAK;SACf,CAAC;QACF,QAAQ,EAAE,YAAK,CAAC,OAAO,CAAC;YACtB,WAAW,EAAE,kBAAkB;YAC/B,OAAO,EAAE,KAAK;SACf,CAAC;QACF,SAAS,EAAE,YAAK,CAAC,OAAO,CAAC;YACvB,WAAW,EAAE,mBAAmB;YAChC,OAAO,EAAE,KAAK;SACf,CAAC;QACF,aAAa,EAAE,YAAK,CAAC,OAAO,CAAC;YAC3B,WAAW,EAAE,uBAAuB;SACrC,CAAC;QACF,aAAa,EAAE,YAAK,CAAC,MAAM,CAAC;YAC1B,WAAW,EAAE,oCAAoC;SAClD,CAAC;QACF,gBAAgB,EAAE,YAAK,CAAC,OAAO,CAAC;YAC9B,WAAW,EAAE,0BAA0B;SACxC,CAAC;QACF,gBAAgB,EAAE,YAAK,CAAC,MAAM,CAAC;YAC7B,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF,iBAAiB,EAAE,YAAK,CAAC,OAAO,CAAC;YAC/B,WAAW,EAAE,2BAA2B;SACzC,CAAC;QACF,iBAAiB,EAAE,YAAK,CAAC,MAAM,CAAC;YAC9B,WAAW,EAAE,wCAAwC;SACtD,CAAC;KACH,CAAC;IAEF,MAAM,CAAU,QAAQ,GAAG;QACzB,qEAAqE;QACrE,qGAAqG;KACtG,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAEtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAErD,MAAM,MAAM,GAA4B;YACtC,SAAS,EAAE,IAAI,CAAC,GAAG;SACpB,CAAC;QAEF,IAAI,KAAK,CAAC,UAAU;YAAE,MAAM,CAAC,kBAAkB,GAAG,IAAI,CAAC;QACvD,IAAI,KAAK,CAAC,SAAS;YAAE,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACrD,IAAI,KAAK,CAAC,MAAM;YAAE,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;QAC/C,IAAI,KAAK,CAAC,SAAS;YAAE,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACrD,IAAI,KAAK,CAAC,KAAK;YAAE,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;QAC7C,IAAI,KAAK,CAAC,QAAQ;YAAE,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC;QACnD,IAAI,KAAK,CAAC,SAAS;YAAE,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAErD,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;YAClE,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,aAAa,CAAC;gBAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;YAC9D,IAAI,KAAK,CAAC,aAAa,CAAC;gBAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;YAC9D,MAAM,CAAC,oBAAoB,GAAG,MAAM,CAAC;QACvC,CAAC;QAED,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;YAC3E,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,gBAAgB,CAAC;gBAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACpE,IAAI,KAAK,CAAC,gBAAgB,CAAC;gBAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACpE,MAAM,CAAC,uBAAuB,GAAG,MAAM,CAAC;QAC1C,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC;YAC9E,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,iBAAiB,CAAC;gBAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACtE,IAAI,KAAK,CAAC,iBAAiB,CAAC;gBAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACtE,MAAM,CAAC,wBAAwB,GAAG,MAAM,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE;gBAC3D,OAAO,EAAE,KAAK,CAAC,KAAK;aACrB,CAAC,CAAC;YAEH,IAAA,wBAAY,EAAC;gBACX,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,MAAM,EAAE,KAAK,CAAC,IAAI;gBAClB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,KAAK,CAAC,KAAK;aACrB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;;AAtHH,8BAuHC"}
@@ -0,0 +1,24 @@
1
+ import { BaseCommand } from '../../base-command';
2
+ export default class PersonSearch extends BaseCommand {
3
+ static description: string;
4
+ static flags: {
5
+ term: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
6
+ limit: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
7
+ 'first-name': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
+ 'last-name': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
+ position: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ locations: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
11
+ industries: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
12
+ 'current-companies': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
13
+ 'previous-companies': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
14
+ schools: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
15
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
16
+ fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
17
+ quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
18
+ 'no-color': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
19
+ account: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
20
+ };
21
+ static examples: string[];
22
+ run(): Promise<void>;
23
+ }
24
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/commands/person/search.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,WAAW;IACnD,OAAgB,WAAW,SAAmC;IAE9D,OAAgB,KAAK;;;;;;;;;;;;;;;;MAgCnB;IAEF,OAAgB,QAAQ,WAGtB;IAEW,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAwClC"}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const _base_command_1 = require("../../base-command");
5
+ const formatter_1 = require("../../core/output/formatter");
6
+ const workflow_runner_1 = require("../../core/workflow/workflow-runner");
7
+ class PersonSearch extends _base_command_1.BaseCommand {
8
+ static description = 'Search for people on LinkedIn';
9
+ static flags = {
10
+ ..._base_command_1.BaseCommand.baseFlags,
11
+ term: core_1.Flags.string({
12
+ description: 'Search keyword or phrase',
13
+ }),
14
+ limit: core_1.Flags.integer({
15
+ description: 'Max results to return',
16
+ }),
17
+ 'first-name': core_1.Flags.string({
18
+ description: 'Filter by first name',
19
+ }),
20
+ 'last-name': core_1.Flags.string({
21
+ description: 'Filter by last name',
22
+ }),
23
+ position: core_1.Flags.string({
24
+ description: 'Filter by job position',
25
+ }),
26
+ locations: core_1.Flags.string({
27
+ description: 'Filter by locations (comma-separated)',
28
+ }),
29
+ industries: core_1.Flags.string({
30
+ description: 'Filter by industries (comma-separated)',
31
+ }),
32
+ 'current-companies': core_1.Flags.string({
33
+ description: 'Filter by current companies (comma-separated)',
34
+ }),
35
+ 'previous-companies': core_1.Flags.string({
36
+ description: 'Filter by previous companies (comma-separated)',
37
+ }),
38
+ schools: core_1.Flags.string({
39
+ description: 'Filter by schools (comma-separated)',
40
+ }),
41
+ };
42
+ static examples = [
43
+ '<%= config.bin %> person search --term "software engineer" --locations "San Francisco"',
44
+ '<%= config.bin %> person search --current-companies Google,Meta --json',
45
+ ];
46
+ async run() {
47
+ const { flags } = await this.parse(PersonSearch);
48
+ const client = await this.buildAuthenticatedClient();
49
+ const params = {};
50
+ if (flags.term)
51
+ params.term = flags.term;
52
+ if (flags.limit)
53
+ params.limit = flags.limit;
54
+ const filter = {};
55
+ if (flags['first-name'])
56
+ filter.firstName = flags['first-name'];
57
+ if (flags['last-name'])
58
+ filter.lastName = flags['last-name'];
59
+ if (flags.position)
60
+ filter.position = flags.position;
61
+ if (flags.locations)
62
+ filter.locations = splitCsv(flags.locations);
63
+ if (flags.industries)
64
+ filter.industries = splitCsv(flags.industries);
65
+ if (flags['current-companies'])
66
+ filter.currentCompanies = splitCsv(flags['current-companies']);
67
+ if (flags['previous-companies'])
68
+ filter.previousCompanies = splitCsv(flags['previous-companies']);
69
+ if (flags.schools)
70
+ filter.schools = splitCsv(flags.schools);
71
+ if (Object.keys(filter).length > 0) {
72
+ params.filter = filter;
73
+ }
74
+ try {
75
+ const result = await (0, workflow_runner_1.runWorkflow)(client.searchPeople, params, {
76
+ isQuiet: flags.quiet,
77
+ });
78
+ (0, formatter_1.formatOutput)({
79
+ data: result.data,
80
+ errors: result.errors,
81
+ isJson: flags.json,
82
+ fields: flags.fields,
83
+ isQuiet: flags.quiet,
84
+ });
85
+ }
86
+ catch (error) {
87
+ this.handleError(error);
88
+ }
89
+ }
90
+ }
91
+ exports.default = PersonSearch;
92
+ function splitCsv(value) {
93
+ return value.split(',').map((s) => s.trim());
94
+ }
95
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/commands/person/search.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { BaseCommand } from '../../base-command';
2
+ export default class PostComment extends BaseCommand {
3
+ static description: string;
4
+ static args: {
5
+ url: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
6
+ text: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ 'company-url': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
12
+ quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
+ 'no-color': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
14
+ account: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
15
+ };
16
+ static examples: string[];
17
+ run(): Promise<void>;
18
+ }
19
+ //# sourceMappingURL=comment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comment.d.ts","sourceRoot":"","sources":["../../../src/commands/post/comment.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAClD,OAAgB,WAAW,SAAgC;IAE3D,OAAgB,IAAI;;;MASlB;IAEF,OAAgB,KAAK;;;;;;;MAKnB;IAEF,OAAgB,QAAQ,WAEtB;IAEW,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA2BlC"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const _base_command_1 = require("../../base-command");
5
+ const formatter_1 = require("../../core/output/formatter");
6
+ const workflow_runner_1 = require("../../core/workflow/workflow-runner");
7
+ class PostComment extends _base_command_1.BaseCommand {
8
+ static description = 'Comment on a LinkedIn post';
9
+ static args = {
10
+ url: core_1.Args.string({
11
+ description: 'LinkedIn post URL',
12
+ required: true,
13
+ }),
14
+ text: core_1.Args.string({
15
+ description: 'Comment text (up to 1000 characters)',
16
+ required: true,
17
+ }),
18
+ };
19
+ static flags = {
20
+ ..._base_command_1.BaseCommand.baseFlags,
21
+ 'company-url': core_1.Flags.string({
22
+ description: 'Comment on behalf of a company page',
23
+ }),
24
+ };
25
+ static examples = [
26
+ '<%= config.bin %> post comment https://www.linkedin.com/posts/john-doe_activity-123 "Great insights!"',
27
+ ];
28
+ async run() {
29
+ const { args, flags } = await this.parse(PostComment);
30
+ const client = await this.buildAuthenticatedClient();
31
+ const params = {
32
+ postUrl: args.url,
33
+ text: args.text,
34
+ };
35
+ if (flags['company-url'])
36
+ params.companyUrl = flags['company-url'];
37
+ try {
38
+ const result = await (0, workflow_runner_1.runVoidWorkflow)(client.commentOnPost, params, {
39
+ isQuiet: flags.quiet,
40
+ });
41
+ (0, formatter_1.formatVoidOutput)({
42
+ errors: result.errors,
43
+ isJson: flags.json,
44
+ isQuiet: flags.quiet,
45
+ successMessage: 'Comment posted.',
46
+ });
47
+ }
48
+ catch (error) {
49
+ this.handleError(error);
50
+ }
51
+ }
52
+ }
53
+ exports.default = PostComment;
54
+ //# sourceMappingURL=comment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"comment.js","sourceRoot":"","sources":["../../../src/commands/post/comment.ts"],"names":[],"mappings":";;AAAA,sCAA0C;AAE1C,iDAA4C;AAC5C,sDAA0D;AAC1D,oEAAiE;AAEjE,MAAqB,WAAY,SAAQ,2BAAW;IAClD,MAAM,CAAU,WAAW,GAAG,4BAA4B,CAAC;IAE3D,MAAM,CAAU,IAAI,GAAG;QACrB,GAAG,EAAE,WAAI,CAAC,MAAM,CAAC;YACf,WAAW,EAAE,mBAAmB;YAChC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,IAAI,EAAE,WAAI,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,sCAAsC;YACnD,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;IAEF,MAAM,CAAU,KAAK,GAAG;QACtB,GAAG,2BAAW,CAAC,SAAS;QACxB,aAAa,EAAE,YAAK,CAAC,MAAM,CAAC;YAC1B,WAAW,EAAE,qCAAqC;SACnD,CAAC;KACH,CAAC;IAEF,MAAM,CAAU,QAAQ,GAAG;QACzB,uGAAuG;KACxG,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAEtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAErD,MAAM,MAAM,GAA4B;YACtC,OAAO,EAAE,IAAI,CAAC,GAAG;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;QAEF,IAAI,KAAK,CAAC,aAAa,CAAC;YAAE,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QAEnE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAe,EAAC,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE;gBACjE,OAAO,EAAE,KAAK,CAAC,KAAK;aACrB,CAAC,CAAC;YAEH,IAAA,4BAAgB,EAAC;gBACf,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,MAAM,EAAE,KAAK,CAAC,IAAI;gBAClB,OAAO,EAAE,KAAK,CAAC,KAAK;gBACpB,cAAc,EAAE,iBAAiB;aAClC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;;AAnDH,8BAoDC"}
@@ -0,0 +1,19 @@
1
+ import { BaseCommand } from '../../base-command';
2
+ export default class PostCreate extends BaseCommand {
3
+ static description: string;
4
+ static args: {
5
+ text: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
6
+ };
7
+ static flags: {
8
+ 'company-url': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
+ attachments: import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ fields: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
12
+ quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
+ 'no-color': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
14
+ account: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
15
+ };
16
+ static examples: string[];
17
+ run(): Promise<void>;
18
+ }
19
+ //# sourceMappingURL=create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/post/create.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,OAAgB,WAAW,SAA4B;IAEvD,OAAgB,IAAI;;MAKlB;IAEF,OAAgB,KAAK;;;;;;;;MASnB;IAEF,OAAgB,QAAQ,WAGtB;IAEW,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAoElC"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const _base_command_1 = require("../../base-command");
5
+ const formatter_1 = require("../../core/output/formatter");
6
+ const workflow_runner_1 = require("../../core/workflow/workflow-runner");
7
+ class PostCreate extends _base_command_1.BaseCommand {
8
+ static description = 'Create a LinkedIn post';
9
+ static args = {
10
+ text: core_1.Args.string({
11
+ description: 'Post text (up to 3000 characters)',
12
+ required: true,
13
+ }),
14
+ };
15
+ static flags = {
16
+ ..._base_command_1.BaseCommand.baseFlags,
17
+ 'company-url': core_1.Flags.string({
18
+ description: 'Post on behalf of a company page',
19
+ }),
20
+ attachments: core_1.Flags.string({
21
+ description: 'Attachments as url:type[:name] (comma-separated, type: image|video|document)',
22
+ multiple: true,
23
+ }),
24
+ };
25
+ static examples = [
26
+ '<%= config.bin %> post create "Excited to share our latest update!"',
27
+ '<%= config.bin %> post create "Check this out" --attachments "https://example.com/img.jpg:image"',
28
+ ];
29
+ async run() {
30
+ const { args, flags } = await this.parse(PostCreate);
31
+ const client = await this.buildAuthenticatedClient();
32
+ const params = {
33
+ text: args.text,
34
+ };
35
+ if (flags['company-url'])
36
+ params.companyUrl = flags['company-url'];
37
+ if (flags.attachments && flags.attachments.length > 0) {
38
+ const attachments = flags.attachments.map((att) => {
39
+ const parts = att.split(':');
40
+ if (parts.length < 2) {
41
+ throw new Error(`Invalid attachment format: "${att}". Expected url:type[:name]`);
42
+ }
43
+ // Rejoin URL parts (URL contains ://)
44
+ const typePart = parts[parts.length - 1];
45
+ const nameParts = parts.length > 2 ? parts[parts.length - 2] : undefined;
46
+ let url;
47
+ let type;
48
+ let name;
49
+ if (['image', 'video', 'document'].includes(typePart)) {
50
+ type = typePart;
51
+ url = parts.slice(0, parts.length - 1).join(':');
52
+ }
53
+ else if (nameParts && ['image', 'video', 'document'].includes(nameParts)) {
54
+ type = nameParts;
55
+ name = typePart;
56
+ url = parts.slice(0, parts.length - 2).join(':');
57
+ }
58
+ else {
59
+ throw new Error(`Invalid attachment type in "${att}". Must be one of: image, video, document`);
60
+ }
61
+ const result = {
62
+ url,
63
+ type,
64
+ };
65
+ if (name)
66
+ result.name = name;
67
+ return result;
68
+ });
69
+ params.attachments = attachments;
70
+ }
71
+ try {
72
+ const result = await (0, workflow_runner_1.runWorkflow)(client.createPost, params, {
73
+ isQuiet: flags.quiet,
74
+ });
75
+ (0, formatter_1.formatOutput)({
76
+ data: result.data,
77
+ errors: result.errors,
78
+ isJson: flags.json,
79
+ fields: flags.fields,
80
+ isQuiet: flags.quiet,
81
+ });
82
+ }
83
+ catch (error) {
84
+ this.handleError(error);
85
+ }
86
+ }
87
+ }
88
+ exports.default = PostCreate;
89
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/post/create.ts"],"names":[],"mappings":"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"}