bitbucketdc-cli 0.0.5 → 0.0.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"delete-comment.d.ts","sourceRoot":"","sources":["../../../src/commands/pr/delete-comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,QA4B5C"}
1
+ {"version":3,"file":"delete-comment.d.ts","sourceRoot":"","sources":["../../../src/commands/pr/delete-comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,QA2C5C"}
@@ -3,24 +3,37 @@ import { output, handleError } from '../../utils/output.js';
3
3
  export function deleteComment(parent) {
4
4
  parent
5
5
  .command('delete-comment')
6
- .description('Delete a pull request comment')
6
+ .description('Delete a pull request comment. Version is auto-fetched if not provided.')
7
7
  .requiredOption('--project <key>', 'Bitbucket project key')
8
8
  .requiredOption('--repo <slug>', 'Repository slug')
9
- .requiredOption('--id <n>', 'Pull request ID')
10
- .requiredOption('--comment-id <n>', 'Comment ID to delete')
11
- .requiredOption('--version <n>', 'Expected comment version (for optimistic locking)')
12
- .addHelpText('after', '\nExamples:\n bitbucketdc pr delete-comment --project PROJ --repo my-repo --id 42 --comment-id 123 --version 0')
9
+ .requiredOption('--id <n>', 'Pull request ID', parseInt)
10
+ .requiredOption('--comment-id <n>', 'Comment ID to delete', parseInt)
11
+ .option('--comment-version <n>', 'Comment version for optimistic locking (auto-fetched if omitted)', parseInt)
12
+ .addHelpText('after', `\nExamples:
13
+ bitbucketdc pr delete-comment --project PROJ --repo my-repo --id 42 --comment-id 123
14
+ bitbucketdc pr delete-comment --project PROJ --repo my-repo --id 42 --comment-id 123 --comment-version 0`)
13
15
  .action(async (opts) => {
14
16
  try {
15
17
  const client = getClient();
18
+ // Auto-fetch version if not provided
19
+ let version = opts.commentVersion;
20
+ if (version === undefined) {
21
+ const comment = await client.pullRequests.getComment({
22
+ projectKey: opts.project,
23
+ repositorySlug: opts.repo,
24
+ pullRequestId: opts.id,
25
+ commentId: opts.commentId,
26
+ });
27
+ version = comment.version;
28
+ }
16
29
  await client.pullRequests.deleteComment({
17
30
  projectKey: opts.project,
18
31
  repositorySlug: opts.repo,
19
- pullRequestId: parseInt(opts.id),
20
- commentId: parseInt(opts.commentId),
21
- version: parseInt(opts.version),
32
+ pullRequestId: opts.id,
33
+ commentId: opts.commentId,
34
+ version,
22
35
  });
23
- output({ deleted: true, commentId: parseInt(opts.commentId) });
36
+ output({ deleted: true, commentId: opts.commentId });
24
37
  }
25
38
  catch (err) {
26
39
  handleError(err);
@@ -1 +1 @@
1
- {"version":3,"file":"delete-comment.js","sourceRoot":"","sources":["../../../src/commands/pr/delete-comment.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,UAAU,aAAa,CAAC,MAAe;IAC3C,MAAM;SACH,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CAAC,+BAA+B,CAAC;SAC5C,cAAc,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;SAC1D,cAAc,CAAC,eAAe,EAAE,iBAAiB,CAAC;SAClD,cAAc,CAAC,UAAU,EAAE,iBAAiB,CAAC;SAC7C,cAAc,CAAC,kBAAkB,EAAE,sBAAsB,CAAC;SAC1D,cAAc,CAAC,eAAe,EAAE,mDAAmD,CAAC;SACpF,WAAW,CACV,OAAO,EACP,iHAAiH,CAClH;SACA,MAAM,CAAC,KAAK,EAAE,IAAuF,EAAE,EAAE;QACxG,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC;gBACtC,UAAU,EAAE,IAAI,CAAC,OAAO;gBACxB,cAAc,EAAE,IAAI,CAAC,IAAI;gBACzB,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;gBACnC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;aAChC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,WAAW,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"delete-comment.js","sourceRoot":"","sources":["../../../src/commands/pr/delete-comment.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,UAAU,aAAa,CAAC,MAAe;IAC3C,MAAM;SACH,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CAAC,yEAAyE,CAAC;SACtF,cAAc,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;SAC1D,cAAc,CAAC,eAAe,EAAE,iBAAiB,CAAC;SAClD,cAAc,CAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,CAAC;SACvD,cAAc,CAAC,kBAAkB,EAAE,sBAAsB,EAAE,QAAQ,CAAC;SACpE,MAAM,CAAC,uBAAuB,EAAE,kEAAkE,EAAE,QAAQ,CAAC;SAC7G,WAAW,CACV,OAAO,EACP;;2GAEqG,CACtG;SACA,MAAM,CAAC,KAAK,EAAE,IAA+F,EAAE,EAAE;QAChH,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAE3B,qCAAqC;YACrC,IAAI,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC;YAClC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC;oBACnD,UAAU,EAAE,IAAI,CAAC,OAAO;oBACxB,cAAc,EAAE,IAAI,CAAC,IAAI;oBACzB,aAAa,EAAE,IAAI,CAAC,EAAE;oBACtB,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B,CAAC,CAAC;gBACH,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAC5B,CAAC;YAED,MAAM,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC;gBACtC,UAAU,EAAE,IAAI,CAAC,OAAO;gBACxB,cAAc,EAAE,IAAI,CAAC,IAAI;gBACzB,aAAa,EAAE,IAAI,CAAC,EAAE;gBACtB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,OAAO;aACR,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,WAAW,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function editComment(parent: Command): void;
3
+ //# sourceMappingURL=edit-comment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit-comment.d.ts","sourceRoot":"","sources":["../../../src/commands/pr/edit-comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,WAAW,CAAC,MAAM,EAAE,OAAO,QAsD1C"}
@@ -0,0 +1,45 @@
1
+ import { getClient } from '../../utils/client.js';
2
+ import { output, handleError } from '../../utils/output.js';
3
+ export function editComment(parent) {
4
+ parent
5
+ .command('edit-comment')
6
+ .description('Edit a pull request comment. Version is auto-fetched if not provided.')
7
+ .requiredOption('--project <key>', 'Bitbucket project key')
8
+ .requiredOption('--repo <slug>', 'Repository slug')
9
+ .requiredOption('--id <n>', 'Pull request ID', parseInt)
10
+ .requiredOption('--comment-id <n>', 'Comment ID to edit', parseInt)
11
+ .requiredOption('--text <content>', 'New comment text')
12
+ .option('--comment-version <n>', 'Comment version for optimistic locking (auto-fetched if omitted)', parseInt)
13
+ .addHelpText('after', `\nExamples:
14
+ bitbucketdc pr edit-comment --project PROJ --repo my-repo --id 42 --comment-id 123 --text "Updated text"
15
+ bitbucketdc pr edit-comment --project PROJ --repo my-repo --id 42 --comment-id 123 --text "Updated" --comment-version 0`)
16
+ .action(async (opts) => {
17
+ try {
18
+ const client = getClient();
19
+ // Auto-fetch version if not provided
20
+ let version = opts.commentVersion;
21
+ if (version === undefined) {
22
+ const comment = await client.pullRequests.getComment({
23
+ projectKey: opts.project,
24
+ repositorySlug: opts.repo,
25
+ pullRequestId: opts.id,
26
+ commentId: opts.commentId,
27
+ });
28
+ version = comment.version;
29
+ }
30
+ const result = await client.pullRequests.editComment({
31
+ projectKey: opts.project,
32
+ repositorySlug: opts.repo,
33
+ pullRequestId: opts.id,
34
+ commentId: opts.commentId,
35
+ text: opts.text,
36
+ version,
37
+ });
38
+ output(result);
39
+ }
40
+ catch (err) {
41
+ handleError(err);
42
+ }
43
+ });
44
+ }
45
+ //# sourceMappingURL=edit-comment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit-comment.js","sourceRoot":"","sources":["../../../src/commands/pr/edit-comment.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,UAAU,WAAW,CAAC,MAAe;IACzC,MAAM;SACH,OAAO,CAAC,cAAc,CAAC;SACvB,WAAW,CAAC,uEAAuE,CAAC;SACpF,cAAc,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;SAC1D,cAAc,CAAC,eAAe,EAAE,iBAAiB,CAAC;SAClD,cAAc,CAAC,UAAU,EAAE,iBAAiB,EAAE,QAAQ,CAAC;SACvD,cAAc,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,QAAQ,CAAC;SAClE,cAAc,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;SACtD,MAAM,CAAC,uBAAuB,EAAE,kEAAkE,EAAE,QAAQ,CAAC;SAC7G,WAAW,CACV,OAAO,EACP;;0HAEoH,CACrH;SACA,MAAM,CACL,KAAK,EAAE,IAON,EAAE,EAAE;QACH,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAE3B,qCAAqC;YACrC,IAAI,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC;YAClC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC;oBACnD,UAAU,EAAE,IAAI,CAAC,OAAO;oBACxB,cAAc,EAAE,IAAI,CAAC,IAAI;oBACzB,aAAa,EAAE,IAAI,CAAC,EAAE;oBACtB,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B,CAAC,CAAC;gBACH,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAC5B,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC;gBACnD,UAAU,EAAE,IAAI,CAAC,OAAO;gBACxB,cAAc,EAAE,IAAI,CAAC,IAAI;gBACzB,aAAa,EAAE,IAAI,CAAC,EAAE;gBACtB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO;aACR,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,WAAW,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CACF,CAAC;AACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/pr/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgBpC,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,QA+BlD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/pr/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,QAgClD"}
@@ -4,6 +4,7 @@ import { comment } from './comment.js';
4
4
  import { create } from './create.js';
5
5
  import { deleteComment } from './delete-comment.js';
6
6
  import { diff } from './diff.js';
7
+ import { editComment } from './edit-comment.js';
7
8
  import { fileComment } from './file-comment.js';
8
9
  import { fileDiff } from './file-diff.js';
9
10
  import { get } from './get.js';
@@ -37,6 +38,7 @@ Examples:
37
38
  fileComment(pr);
38
39
  lineComment(pr);
39
40
  deleteComment(pr);
41
+ editComment(pr);
40
42
  reactionAdd(pr);
41
43
  reactionRemove(pr);
42
44
  review(pr);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/pr/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,MAAM,EAAE,GAAG,OAAO;SACf,OAAO,CAAC,IAAI,CAAC;SACb,WAAW,CAAC,yBAAyB,CAAC;SACtC,WAAW,CACV,OAAO,EACP;;;;;;;;;CASL,CACI,CAAC;IACJ,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,QAAQ,CAAC,EAAE,CAAC,CAAC;IACb,UAAU,CAAC,EAAE,CAAC,CAAC;IACf,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,aAAa,CAAC,EAAE,CAAC,CAAC;IAClB,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,cAAc,CAAC,EAAE,CAAC,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/pr/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,MAAM,EAAE,GAAG,OAAO;SACf,OAAO,CAAC,IAAI,CAAC;SACb,WAAW,CAAC,yBAAyB,CAAC;SACtC,WAAW,CACV,OAAO,EACP;;;;;;;;;CASL,CACI,CAAC;IACJ,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,QAAQ,CAAC,EAAE,CAAC,CAAC;IACb,UAAU,CAAC,EAAE,CAAC,CAAC;IACf,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,aAAa,CAAC,EAAE,CAAC,CAAC;IAClB,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,cAAc,CAAC,EAAE,CAAC,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,CAAC;AACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/repo/attachment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,OAAO,QAYzD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/repo/attachment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,OAAO,QAczD"}
@@ -1,4 +1,5 @@
1
1
  import { download } from './download.js';
2
+ import { upload } from './upload.js';
2
3
  export function registerAttachmentCommands(parent) {
3
4
  const attachment = parent
4
5
  .command('attachment')
@@ -6,7 +7,9 @@ export function registerAttachmentCommands(parent) {
6
7
  .addHelpText('after', `
7
8
  Examples:
8
9
  $ bitbucketdc repo attachment download --project PROJ --repo my-repo --id 706 --output ./image.png
10
+ $ bitbucketdc repo attachment upload --project PROJ --repo my-repo --files screenshot.png,report.pdf
9
11
  `);
10
12
  download(attachment);
13
+ upload(attachment);
11
14
  }
12
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/repo/attachment/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,UAAU,0BAA0B,CAAC,MAAe;IACxD,MAAM,UAAU,GAAG,MAAM;SACtB,OAAO,CAAC,YAAY,CAAC;SACrB,WAAW,CAAC,uBAAuB,CAAC;SACpC,WAAW,CACV,OAAO,EACP;;;CAGL,CACI,CAAC;IACJ,QAAQ,CAAC,UAAU,CAAC,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/repo/attachment/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,UAAU,0BAA0B,CAAC,MAAe;IACxD,MAAM,UAAU,GAAG,MAAM;SACtB,OAAO,CAAC,YAAY,CAAC;SACrB,WAAW,CAAC,uBAAuB,CAAC;SACpC,WAAW,CACV,OAAO,EACP;;;;CAIL,CACI,CAAC;IACJ,QAAQ,CAAC,UAAU,CAAC,CAAC;IACrB,MAAM,CAAC,UAAU,CAAC,CAAC;AACrB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function upload(parent: Command): void;
3
+ //# sourceMappingURL=upload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../../src/commands/repo/attachment/upload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,QA6CrC"}
@@ -0,0 +1,46 @@
1
+ import { getClient } from '../../../utils/client.js';
2
+ import { output, handleError } from '../../../utils/output.js';
3
+ export function upload(parent) {
4
+ parent
5
+ .command('upload')
6
+ .description('Upload file attachments to a repository')
7
+ .requiredOption('--project <key>', 'Project key')
8
+ .requiredOption('--repo <slug>', 'Repository slug')
9
+ .requiredOption('--files <paths>', 'Comma-separated local file paths')
10
+ .addHelpText('after', '\nExamples:\n bitbucketdc repo attachment upload --project PROJ --repo my-repo --files screenshot.png\n bitbucketdc repo attachment upload --project PROJ --repo my-repo --files file1.png,file2.pdf')
11
+ .action(async (opts) => {
12
+ try {
13
+ const client = getClient();
14
+ const filePaths = opts.files
15
+ .split(',')
16
+ .map((p) => p.trim())
17
+ .filter(Boolean);
18
+ const results = [];
19
+ const failed = [];
20
+ for (const filePath of filePaths) {
21
+ try {
22
+ const result = await client.repositories.uploadAttachment({
23
+ projectKey: opts.project,
24
+ repositorySlug: opts.repo,
25
+ filePath,
26
+ });
27
+ results.push({ id: result.id, url: result.url });
28
+ }
29
+ catch (err) {
30
+ failed.push({ filePath, error: err instanceof Error ? err.message : String(err) });
31
+ }
32
+ }
33
+ output({
34
+ project: opts.project,
35
+ repo: opts.repo,
36
+ uploaded: results.length,
37
+ attachments: results,
38
+ ...(failed.length > 0 && { failed }),
39
+ });
40
+ }
41
+ catch (err) {
42
+ handleError(err);
43
+ }
44
+ });
45
+ }
46
+ //# sourceMappingURL=upload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../../src/commands/repo/attachment/upload.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,UAAU,MAAM,CAAC,MAAe;IACpC,MAAM;SACH,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,yCAAyC,CAAC;SACtD,cAAc,CAAC,iBAAiB,EAAE,aAAa,CAAC;SAChD,cAAc,CAAC,eAAe,EAAE,iBAAiB,CAAC;SAClD,cAAc,CAAC,iBAAiB,EAAE,kCAAkC,CAAC;SACrE,WAAW,CACV,OAAO,EACP,wMAAwM,CACzM;SACA,MAAM,CAAC,KAAK,EAAE,IAAsD,EAAE,EAAE;QACvE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK;iBACzB,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iBACpB,MAAM,CAAC,OAAO,CAAC,CAAC;YACnB,MAAM,OAAO,GAAkC,EAAE,CAAC;YAClD,MAAM,MAAM,GAA0C,EAAE,CAAC;YAEzD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC;wBACxD,UAAU,EAAE,IAAI,CAAC,OAAO;wBACxB,cAAc,EAAE,IAAI,CAAC,IAAI;wBACzB,QAAQ;qBACT,CAAC,CAAC;oBACH,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBACnD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACrF,CAAC;YACH,CAAC;YAED,MAAM,CAAC;gBACL,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,OAAO,CAAC,MAAM;gBACxB,WAAW,EAAE,OAAO;gBACpB,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;aACrC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,WAAW,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bitbucketdc-cli",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "publish": true,
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -13,7 +13,7 @@
13
13
  "dependencies": {
14
14
  "commander": "^13.1.0",
15
15
  "dotenv": "17.2.3",
16
- "bitbucket-data-center-client": "1.4.4"
16
+ "bitbucket-data-center-client": "1.4.6"
17
17
  },
18
18
  "devDependencies": {
19
19
  "@types/node": "24.10.4",