@knpkv/jira-cli 1.2.3 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +133 -0
- package/README.md +64 -0
- package/dist/AttachmentService.d.ts +2 -2
- package/dist/AttachmentService.d.ts.map +1 -1
- package/dist/AttachmentService.js +1 -1
- package/dist/AttachmentService.js.map +1 -1
- package/dist/IssueService.d.ts +82 -3
- package/dist/IssueService.d.ts.map +1 -1
- package/dist/IssueService.js +111 -16
- package/dist/IssueService.js.map +1 -1
- package/dist/JiraAuth.d.ts +3 -3
- package/dist/JiraAuth.d.ts.map +1 -1
- package/dist/JiraAuth.js +87 -23
- package/dist/JiraAuth.js.map +1 -1
- package/dist/MarkdownWriter.d.ts +4 -4
- package/dist/MarkdownWriter.d.ts.map +1 -1
- package/dist/MarkdownWriter.js +2 -2
- package/dist/MarkdownWriter.js.map +1 -1
- package/dist/SyncWorkspace.d.ts +2 -2
- package/dist/SyncWorkspace.d.ts.map +1 -1
- package/dist/SyncWorkspace.js.map +1 -1
- package/dist/VersionService.d.ts +81 -9
- package/dist/VersionService.d.ts.map +1 -1
- package/dist/VersionService.js +113 -17
- package/dist/VersionService.js.map +1 -1
- package/dist/bin.js +1 -1
- package/dist/bin.js.map +1 -1
- package/dist/commands/auth.d.ts +13 -2
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +7 -7
- package/dist/commands/auth.js.map +1 -1
- package/dist/commands/edit.d.ts +22 -0
- package/dist/commands/edit.d.ts.map +1 -0
- package/dist/commands/edit.js +49 -0
- package/dist/commands/edit.js.map +1 -0
- package/dist/commands/errorHandler.d.ts.map +1 -1
- package/dist/commands/get.d.ts +6 -1
- package/dist/commands/get.d.ts.map +1 -1
- package/dist/commands/get.js +3 -3
- package/dist/commands/get.js.map +1 -1
- package/dist/commands/issue.d.ts +2 -2
- package/dist/commands/issue.d.ts.map +1 -1
- package/dist/commands/issue.js +3 -2
- package/dist/commands/issue.js.map +1 -1
- package/dist/commands/issueAttachment.d.ts +1 -1
- package/dist/commands/issueAttachment.d.ts.map +1 -1
- package/dist/commands/issueAttachment.js +13 -11
- package/dist/commands/issueAttachment.js.map +1 -1
- package/dist/commands/layers.d.ts +3 -3
- package/dist/commands/layers.d.ts.map +1 -1
- package/dist/commands/layers.js +5 -2
- package/dist/commands/layers.js.map +1 -1
- package/dist/commands/search.d.ts +6 -1
- package/dist/commands/search.d.ts.map +1 -1
- package/dist/commands/search.js +7 -7
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/version.d.ts +17 -2
- package/dist/commands/version.d.ts.map +1 -1
- package/dist/commands/version.js +131 -19
- package/dist/commands/version.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/NodeLayers.js +1 -1
- package/dist/internal/NodeLayers.js.map +1 -1
- package/dist/internal/attachmentInsertion.d.ts.map +1 -1
- package/dist/internal/frontmatter.d.ts.map +1 -1
- package/dist/internal/frontmatter.js +2 -1
- package/dist/internal/frontmatter.js.map +1 -1
- package/dist/internal/jqlBuilder.d.ts.map +1 -1
- package/dist/internal/oauthServer.d.ts +10 -4
- package/dist/internal/oauthServer.d.ts.map +1 -1
- package/dist/internal/oauthServer.js +13 -8
- package/dist/internal/oauthServer.js.map +1 -1
- package/dist/internal/openBrowser.d.ts +1 -1
- package/dist/internal/openBrowser.d.ts.map +1 -1
- package/dist/internal/openBrowser.js +1 -1
- package/dist/internal/openBrowser.js.map +1 -1
- package/dist/internal/sync/baseline.d.ts.map +1 -1
- package/dist/internal/sync/baseline.js +2 -2
- package/dist/internal/sync/baseline.js.map +1 -1
- package/dist/internal/sync/changes.d.ts.map +1 -1
- package/dist/internal/sync/config.d.ts.map +1 -1
- package/dist/internal/sync/config.js +1 -1
- package/dist/internal/sync/config.js.map +1 -1
- package/dist/internal/sync/document.d.ts.map +1 -1
- package/dist/internal/sync/document.js +8 -8
- package/dist/internal/sync/document.js.map +1 -1
- package/dist/internal/sync/fieldValues.d.ts +9 -9
- package/dist/internal/sync/fieldValues.d.ts.map +1 -1
- package/dist/internal/sync/fieldValues.js +12 -16
- package/dist/internal/sync/fieldValues.js.map +1 -1
- package/dist/internal/sync/manifest.d.ts.map +1 -1
- package/dist/internal/sync/manifest.js +1 -1
- package/dist/internal/sync/manifest.js.map +1 -1
- package/dist/internal/sync/paths.d.ts.map +1 -1
- package/dist/internal/sync/schemas.d.ts +17 -9
- package/dist/internal/sync/schemas.d.ts.map +1 -1
- package/dist/internal/sync/schemas.js +6 -6
- package/dist/internal/sync/schemas.js.map +1 -1
- package/dist/internal/sync/types.d.ts +4 -4
- package/dist/internal/sync/types.d.ts.map +1 -1
- package/dist/internal/sync/types.js +1 -1
- package/dist/internal/sync/types.js.map +1 -1
- package/package.json +15 -11
- package/skills/jira/SKILL.md +17 -1
- package/src/AttachmentService.ts +6 -6
- package/src/IssueService.ts +214 -27
- package/src/JiraAuth.ts +106 -42
- package/src/MarkdownWriter.ts +6 -6
- package/src/SyncWorkspace.ts +12 -11
- package/src/VersionService.ts +199 -27
- package/src/bin.ts +1 -1
- package/src/commands/auth.ts +7 -7
- package/src/commands/edit.ts +88 -0
- package/src/commands/get.ts +3 -3
- package/src/commands/issue.ts +3 -2
- package/src/commands/issueAttachment.ts +21 -20
- package/src/commands/layers.ts +5 -2
- package/src/commands/search.ts +7 -7
- package/src/commands/version.ts +176 -23
- package/src/index.ts +13 -3
- package/src/internal/NodeLayers.ts +1 -1
- package/src/internal/frontmatter.ts +3 -2
- package/src/internal/oauthServer.ts +29 -16
- package/src/internal/openBrowser.ts +1 -1
- package/src/internal/sync/baseline.ts +3 -2
- package/src/internal/sync/config.ts +2 -1
- package/src/internal/sync/document.ts +15 -14
- package/src/internal/sync/fieldValues.ts +21 -22
- package/src/internal/sync/manifest.ts +1 -1
- package/src/internal/sync/schemas.ts +6 -6
- package/src/internal/sync/types.ts +4 -4
- package/test/IssueService.test.ts +2 -2
- package/test/JiraAuthRefresh.test.ts +269 -0
- package/test/VersionService.test.ts +2 -2
- package/test/commandTree.test.ts +158 -2
- package/test/editIssuePayload.test.ts +103 -0
- package/test/frontmatter.test.ts +4 -2
- package/test/integration.test.ts +12 -10
- package/test/oauthServer.test.ts +77 -4
- package/test/publicApi.test.ts +34 -0
- package/test/relatedWorkSync.test.ts +179 -0
- package/test/remoteWrites.test.ts +220 -0
- package/test/syncChanges.test.ts +2 -2
- package/test/syncConfig.test.ts +2 -2
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `jira issue edit <key>` command — edit an issue's list-valued fields
|
|
3
|
+
* (fixVersions, labels).
|
|
4
|
+
*
|
|
5
|
+
* Incremental flags (`--add-*`, `--remove-*`) are the ones to reach for: both
|
|
6
|
+
* fields are sets, so the replacing form silently drops anything not listed.
|
|
7
|
+
*
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
import { Command } from "effect/cli";
|
|
11
|
+
import { IssueService } from "../IssueService.js";
|
|
12
|
+
export declare const editCommand: Command.Command<"edit", {
|
|
13
|
+
readonly key: string;
|
|
14
|
+
readonly addFixVersion: readonly string[];
|
|
15
|
+
readonly removeFixVersion: readonly string[];
|
|
16
|
+
readonly fixVersion: readonly string[];
|
|
17
|
+
readonly addLabel: readonly string[];
|
|
18
|
+
readonly removeLabel: readonly string[];
|
|
19
|
+
readonly label: readonly string[];
|
|
20
|
+
readonly json: boolean;
|
|
21
|
+
}, {}, import("../JiraCliError.js").JiraApiError, IssueService>;
|
|
22
|
+
//# sourceMappingURL=edit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAoB,OAAO,EAAmB,MAAM,YAAY,CAAA;AAGvE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAuCjD,eAAO,MAAM,WAAW;;;;;;;;;+DAoCvB,CAAA"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `jira issue edit <key>` command — edit an issue's list-valued fields
|
|
3
|
+
* (fixVersions, labels).
|
|
4
|
+
*
|
|
5
|
+
* Incremental flags (`--add-*`, `--remove-*`) are the ones to reach for: both
|
|
6
|
+
* fields are sets, so the replacing form silently drops anything not listed.
|
|
7
|
+
*
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
import { Argument as Args, Command, Flag as Options } from "effect/cli";
|
|
11
|
+
import * as Console from "effect/Console";
|
|
12
|
+
import * as Effect from "effect/Effect";
|
|
13
|
+
import { IssueService } from "../IssueService.js";
|
|
14
|
+
const keyArg = Args.String("key").pipe(Args.withDescription("Issue key (e.g., PROJ-123)"));
|
|
15
|
+
const addFixVersionOption = Options.String("add-fix-version").pipe(Options.withDescription("Add a fix version by name, keeping existing ones (repeatable)"), Options.atLeast(0));
|
|
16
|
+
const removeFixVersionOption = Options.String("remove-fix-version").pipe(Options.withDescription("Remove a fix version by name (repeatable)"), Options.atLeast(0));
|
|
17
|
+
const fixVersionOption = Options.String("fix-version").pipe(Options.withDescription("Replace the fix versions with exactly these names (repeatable). Drops any not listed — prefer --add-fix-version"), Options.atLeast(0));
|
|
18
|
+
const addLabelOption = Options.String("add-label").pipe(Options.withDescription("Add a label, keeping existing ones (repeatable)"), Options.atLeast(0));
|
|
19
|
+
const removeLabelOption = Options.String("remove-label").pipe(Options.withDescription("Remove a label (repeatable)"), Options.atLeast(0));
|
|
20
|
+
const labelOption = Options.String("label").pipe(Options.withDescription("Replace the labels with exactly these (repeatable). Drops any not listed — prefer --add-label"), Options.atLeast(0));
|
|
21
|
+
const jsonOption = Options.Boolean("json").pipe(Options.withDescription("Output as JSON"), Options.withDefault(false));
|
|
22
|
+
export const editCommand = Command.make("edit", {
|
|
23
|
+
key: keyArg,
|
|
24
|
+
addFixVersion: addFixVersionOption,
|
|
25
|
+
removeFixVersion: removeFixVersionOption,
|
|
26
|
+
fixVersion: fixVersionOption,
|
|
27
|
+
addLabel: addLabelOption,
|
|
28
|
+
removeLabel: removeLabelOption,
|
|
29
|
+
label: labelOption,
|
|
30
|
+
json: jsonOption
|
|
31
|
+
}, ({ addFixVersion, addLabel, fixVersion, json, key, label, removeFixVersion, removeLabel }) => Effect.gen(function* () {
|
|
32
|
+
const issueService = yield* IssueService;
|
|
33
|
+
const issue = yield* issueService.edit(key, {
|
|
34
|
+
addFixVersions: addFixVersion,
|
|
35
|
+
removeFixVersions: removeFixVersion,
|
|
36
|
+
setFixVersions: fixVersion,
|
|
37
|
+
addLabels: addLabel,
|
|
38
|
+
removeLabels: removeLabel,
|
|
39
|
+
setLabels: label
|
|
40
|
+
});
|
|
41
|
+
if (json) {
|
|
42
|
+
yield* Console.log(JSON.stringify(issue, null, 2));
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
yield* Console.log(`Updated ${issue.key}`);
|
|
46
|
+
yield* Console.log(`fixVersions: ${issue.fixVersions.join(", ") || "-"}`);
|
|
47
|
+
yield* Console.log(`labels: ${issue.labels.join(", ") || "-"}`);
|
|
48
|
+
})).pipe(Command.withDescription("Remote write: edit an issue's fix versions and labels (requires write:jira-work scope)"));
|
|
49
|
+
//# sourceMappingURL=edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/commands/edit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorHandler.d.ts","sourceRoot":"","sources":["../../src/commands/errorHandler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAE5C;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"errorHandler.d.ts","sourceRoot":"","sources":["../../src/commands/errorHandler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAE5C;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAuC,CAAA"}
|
package/dist/commands/get.d.ts
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* `jira issue get <key>` command — fetches a single issue and writes to Markdown.
|
|
3
|
+
*
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
import { Command } from "effect/cli";
|
|
2
7
|
import { IssueService } from "../IssueService.js";
|
|
3
8
|
import { MarkdownWriter } from "../MarkdownWriter.js";
|
|
4
9
|
export declare const getCommand: Command.Command<"get", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../src/commands/get.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../src/commands/get.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAoB,OAAO,EAAmB,MAAM,YAAY,CAAA;AAGvE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAYrD,eAAO,MAAM,UAAU;;;0HAoBqD,CAAA"}
|
package/dist/commands/get.js
CHANGED
|
@@ -3,13 +3,13 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @internal
|
|
5
5
|
*/
|
|
6
|
+
import { Argument as Args, Command, Flag as Options } from "effect/cli";
|
|
6
7
|
import * as Console from "effect/Console";
|
|
7
8
|
import * as Effect from "effect/Effect";
|
|
8
|
-
import { Argument as Args, Command, Flag as Options } from "effect/unstable/cli";
|
|
9
9
|
import { IssueService } from "../IssueService.js";
|
|
10
10
|
import { MarkdownWriter } from "../MarkdownWriter.js";
|
|
11
|
-
const keyArg = Args.
|
|
12
|
-
const outputDirOption = Options.
|
|
11
|
+
const keyArg = Args.String("key").pipe(Args.withDescription("Issue key (e.g., PROJ-123)"));
|
|
12
|
+
const outputDirOption = Options.Directory("output-dir").pipe(Options.withAlias("o"), Options.withDescription("Output directory for markdown file"), Options.withDefault("./jira-tickets"));
|
|
13
13
|
export const getCommand = Command.make("get", {
|
|
14
14
|
key: keyArg,
|
|
15
15
|
outputDir: outputDirOption
|
package/dist/commands/get.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/commands/get.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/commands/get.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,QAAQ,IAAI,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,YAAY,CAAA;AACvE,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CACpC,IAAI,CAAC,eAAe,CAAC,4BAA4B,CAAC,CACnD,CAAA;AAED,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,IAAI,CAC1D,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EACtB,OAAO,CAAC,eAAe,CAAC,oCAAoC,CAAC,EAC7D,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC,CACtC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CACpC,KAAK,EACL;IACE,GAAG,EAAE,MAAM;IACX,SAAS,EAAE,eAAe;CAC3B,EACD,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,CACrB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;IACxC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,cAAc,CAAA;IAEpC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC,CAAA;IAExC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IAE/C,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,SAAS,IAAI,GAAG,QAAQ,CAAC,CAAA;IAC1D,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAA;IAE5C,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAC7B,CAAC,CAAC,CACL,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,2CAA2C,CAAC,CAAC,CAAA"}
|
package/dist/commands/issue.d.ts
CHANGED
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @internal
|
|
5
5
|
*/
|
|
6
|
-
import { Command } from "effect/
|
|
7
|
-
export declare const issueCommand: Command.Command<"issue", {}, {}, import("../JiraCliError.js").JiraApiError | import("../JiraCliError.js").WriteError,
|
|
6
|
+
import { Command } from "effect/cli";
|
|
7
|
+
export declare const issueCommand: Command.Command<"issue", {}, {}, import("../JiraCliError.js").JiraApiError | import("../JiraCliError.js").WriteError, import("../AttachmentService.js").AttachmentService | import("effect/FileSystem").FileSystem | import("../IssueService.js").IssueService | import("../MarkdownWriter.js").MarkdownWriter>;
|
|
8
8
|
//# sourceMappingURL=issue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issue.d.ts","sourceRoot":"","sources":["../../src/commands/issue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"issue.d.ts","sourceRoot":"","sources":["../../src/commands/issue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAMpC,eAAO,MAAM,YAAY,iTAGxB,CAAA"}
|
package/dist/commands/issue.js
CHANGED
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @internal
|
|
5
5
|
*/
|
|
6
|
-
import { Command } from "effect/
|
|
6
|
+
import { Command } from "effect/cli";
|
|
7
|
+
import { editCommand } from "./edit.js";
|
|
7
8
|
import { getCommand } from "./get.js";
|
|
8
9
|
import { attachmentCommand } from "./issueAttachment.js";
|
|
9
10
|
import { searchCommand } from "./search.js";
|
|
10
|
-
export const issueCommand = Command.make("issue").pipe(Command.withDescription("Jira issue resource commands"), Command.withSubcommands([attachmentCommand, getCommand, searchCommand]));
|
|
11
|
+
export const issueCommand = Command.make("issue").pipe(Command.withDescription("Jira issue resource commands"), Command.withSubcommands([attachmentCommand, getCommand, searchCommand, editCommand]));
|
|
11
12
|
//# sourceMappingURL=issue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issue.js","sourceRoot":"","sources":["../../src/commands/issue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"issue.js","sourceRoot":"","sources":["../../src/commands/issue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAE3C,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CACpD,OAAO,CAAC,eAAe,CAAC,8BAA8B,CAAC,EACvD,OAAO,CAAC,eAAe,CAAC,CAAC,iBAAiB,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CACrF,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { Command } from "effect/cli";
|
|
1
2
|
import * as FileSystem from "effect/FileSystem";
|
|
2
|
-
import { Command } from "effect/unstable/cli";
|
|
3
3
|
import { AttachmentService } from "../AttachmentService.js";
|
|
4
4
|
import { JiraApiError, WriteError } from "../JiraCliError.js";
|
|
5
5
|
export declare const attachmentCommand: Command.Command<"attachment", {} | {}, {}, JiraApiError | WriteError, AttachmentService | FileSystem.FileSystem>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issueAttachment.d.ts","sourceRoot":"","sources":["../../src/commands/issueAttachment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"issueAttachment.d.ts","sourceRoot":"","sources":["../../src/commands/issueAttachment.ts"],"names":[],"mappings":"AAMA,OAAO,EAAoB,OAAO,EAAmB,MAAM,YAAY,CAAA;AAGvE,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE3D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAyH7D,eAAO,MAAM,iBAAiB,kHAO7B,CAAA"}
|
|
@@ -4,20 +4,20 @@
|
|
|
4
4
|
* @internal
|
|
5
5
|
*/
|
|
6
6
|
import { renderAttachmentMarkdown } from "@knpkv/atlassian-common/attachments";
|
|
7
|
+
import { Argument as Args, Command, Flag as Options } from "effect/cli";
|
|
7
8
|
import * as Console from "effect/Console";
|
|
8
9
|
import * as Effect from "effect/Effect";
|
|
9
10
|
import * as FileSystem from "effect/FileSystem";
|
|
10
11
|
import * as Option from "effect/Option";
|
|
11
|
-
import { Argument as Args, Command, Flag as Options } from "effect/unstable/cli";
|
|
12
12
|
import { AttachmentService } from "../AttachmentService.js";
|
|
13
13
|
import { insertJiraAttachmentReference } from "../internal/attachmentInsertion.js";
|
|
14
14
|
import { JiraApiError, WriteError } from "../JiraCliError.js";
|
|
15
|
-
const issueArg = Args.
|
|
16
|
-
const fileArg = Args.
|
|
17
|
-
const documentOption = Options.
|
|
18
|
-
const noInsertOption = Options.
|
|
19
|
-
const dryRunOption = Options.
|
|
20
|
-
const jsonOption = Options.
|
|
15
|
+
const issueArg = Args.String("issue").pipe(Args.withDescription("Issue key or id, for example PROJ-123"));
|
|
16
|
+
const fileArg = Args.String("file").pipe(Args.withDescription("Local file to upload"));
|
|
17
|
+
const documentOption = Options.File("document").pipe(Options.withDescription("Local Jira Markdown document containing the attachment placeholder"), Options.optional);
|
|
18
|
+
const noInsertOption = Options.Boolean("no-insert").pipe(Options.withDescription("Only upload and print the Attachment Reference"), Options.withDefault(false));
|
|
19
|
+
const dryRunOption = Options.Boolean("dry-run").pipe(Options.withAlias("n"), Options.withDescription("Validate local insertion input without uploading"), Options.withDefault(false));
|
|
20
|
+
const jsonOption = Options.Boolean("json").pipe(Options.withDescription("Write exactly one JSON value to stdout"), Options.withDefault(false));
|
|
21
21
|
const readDocument = (documentPath) => Effect.gen(function* () {
|
|
22
22
|
const fs = yield* FileSystem.FileSystem;
|
|
23
23
|
return yield* fs.readFileString(documentPath).pipe(Effect.mapError((cause) => new WriteError({ path: documentPath, message: "Failed to read Jira Markdown document", cause })));
|
|
@@ -46,13 +46,15 @@ const uploadCommand = Command.make("upload", {
|
|
|
46
46
|
if (documentInput !== null) {
|
|
47
47
|
const matches = countPlaceholderMatches(documentInput.content, file);
|
|
48
48
|
if (matches !== 1) {
|
|
49
|
-
return yield*
|
|
49
|
+
return yield* new JiraApiError({
|
|
50
|
+
message: `Expected exactly one attachment placeholder for ${file}, found ${matches}`
|
|
51
|
+
});
|
|
50
52
|
}
|
|
51
53
|
}
|
|
52
54
|
if (dryRun) {
|
|
53
55
|
const exists = yield* fileExists(file);
|
|
54
56
|
if (!exists) {
|
|
55
|
-
return yield*
|
|
57
|
+
return yield* new JiraApiError({ message: `Attachment file does not exist: ${file}` });
|
|
56
58
|
}
|
|
57
59
|
const result = { dryRun: true, issue, file, insert: shouldInsert };
|
|
58
60
|
yield* Console.log(json ? JSON.stringify(result) : `Dry run: ${file} can be uploaded to ${issue}`);
|
|
@@ -64,9 +66,9 @@ const uploadCommand = Command.make("upload", {
|
|
|
64
66
|
if (documentInput !== null) {
|
|
65
67
|
const result = insertJiraAttachmentReference(documentInput.content, file, attachment);
|
|
66
68
|
if (result.replacements !== 1) {
|
|
67
|
-
return yield*
|
|
69
|
+
return yield* new JiraApiError({
|
|
68
70
|
message: `Uploaded attachment ${attachment.id}, but expected exactly one local placeholder for ${file}; found ${result.replacements}`
|
|
69
|
-
})
|
|
71
|
+
});
|
|
70
72
|
}
|
|
71
73
|
yield* writeDocument(documentInput.path, result.content);
|
|
72
74
|
inserted = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issueAttachment.js","sourceRoot":"","sources":["../../src/commands/issueAttachment.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAA;AAC9E,OAAO,
|
|
1
|
+
{"version":3,"file":"issueAttachment.js","sourceRoot":"","sources":["../../src/commands/issueAttachment.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,19 +11,19 @@ import { VersionService } from "../VersionService.js";
|
|
|
11
11
|
*
|
|
12
12
|
* @category Layers
|
|
13
13
|
*/
|
|
14
|
-
export declare const AppLayer: Layer.Layer<
|
|
14
|
+
export declare const AppLayer: Layer.Layer<AttachmentService | import("effect/http/HttpClient").HttpClient | IssueService | JiraApiClient | JiraAuth | MarkdownWriter | SiteUrl | VersionService | NodeServices.NodeServices, import("../JiraCliError.js").AuthMissingError | import("@knpkv/atlassian-common/config").FileSystemError | import("@knpkv/atlassian-common/config").HomeDirectoryError | import("@knpkv/atlassian-common/auth").OAuthError | import("effect/PlatformError").PlatformError, never>;
|
|
15
15
|
/**
|
|
16
16
|
* Auth-only layer for auth commands.
|
|
17
17
|
*
|
|
18
18
|
* @category Layers
|
|
19
19
|
*/
|
|
20
|
-
export declare const AuthOnlyLayer: Layer.Layer<
|
|
20
|
+
export declare const AuthOnlyLayer: Layer.Layer<AttachmentService | import("effect/http/HttpClient").HttpClient | IssueService | JiraAuth | MarkdownWriter | VersionService | NodeServices.NodeServices, never, never>;
|
|
21
21
|
/**
|
|
22
22
|
* Minimal layer for help/version commands.
|
|
23
23
|
*
|
|
24
24
|
* @category Layers
|
|
25
25
|
*/
|
|
26
|
-
export declare const MinimalLayer: Layer.Layer<
|
|
26
|
+
export declare const MinimalLayer: Layer.Layer<AttachmentService | IssueService | JiraAuth | MarkdownWriter | VersionService | NodeServices.NodeServices, never, never>;
|
|
27
27
|
/**
|
|
28
28
|
* Determine which layer to use based on command.
|
|
29
29
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layers.d.ts","sourceRoot":"","sources":["../../src/commands/layers.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,YAAY,MAAM,oCAAoC,CAAA;AAClE,OAAO,EAAE,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAErE,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAmC,MAAM,yBAAyB,CAAA;AAC5F,OAAO,EAAE,YAAY,EAA8B,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACtF,OAAO,EAAE,QAAQ,EAA0B,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAAgC,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACnF,OAAO,EAAgC,cAAc,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"layers.d.ts","sourceRoot":"","sources":["../../src/commands/layers.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,YAAY,MAAM,oCAAoC,CAAA;AAClE,OAAO,EAAE,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAErE,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAmC,MAAM,yBAAyB,CAAA;AAC5F,OAAO,EAAE,YAAY,EAA8B,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACtF,OAAO,EAAE,QAAQ,EAA0B,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAAgC,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACnF,OAAO,EAAgC,cAAc,EAAE,MAAM,sBAAsB,CAAA;AA+FnF;;;;GAIG;AACH,eAAO,MAAM,QAAQ,kdASpB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,oLAOzB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,sIAMxB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,SAAU,aAAa,CAAC,MAAM,CAAC,KAAG,MAAM,GAAG,MAAM,GAAG,SAkB5E,CAAA"}
|
package/dist/commands/layers.js
CHANGED
|
@@ -25,7 +25,8 @@ import { layer as VersionServiceLayer, VersionService } from "../VersionService.
|
|
|
25
25
|
const DummyIssueServiceLayer = Layer.succeed(IssueService, IssueService.of({
|
|
26
26
|
getByKey: () => Effect.die(new Error("Not configured - run 'jira auth login' first")),
|
|
27
27
|
search: () => Effect.die(new Error("Not configured - run 'jira auth login' first")),
|
|
28
|
-
searchAll: () => Effect.die(new Error("Not configured - run 'jira auth login' first"))
|
|
28
|
+
searchAll: () => Effect.die(new Error("Not configured - run 'jira auth login' first")),
|
|
29
|
+
edit: () => Effect.die(new Error("Not configured - run 'jira auth login' first"))
|
|
29
30
|
}));
|
|
30
31
|
const DummyAttachmentServiceLayer = Layer.succeed(AttachmentService, AttachmentService.of({
|
|
31
32
|
uploadToIssue: () => Effect.die(new Error("Not configured - run 'jira auth login' first"))
|
|
@@ -37,9 +38,11 @@ const DummyMarkdownWriterLayer = Layer.succeed(MarkdownWriter, MarkdownWriter.of
|
|
|
37
38
|
const DummyVersionServiceLayer = Layer.succeed(VersionService, VersionService.of({
|
|
38
39
|
listProjectVersions: () => Effect.die(new Error("Not configured - run 'jira auth login' first")),
|
|
39
40
|
getVersion: () => Effect.die(new Error("Not configured - run 'jira auth login' first")),
|
|
41
|
+
createVersion: () => Effect.die(new Error("Not configured - run 'jira auth login' first")),
|
|
40
42
|
updateVersion: () => Effect.die(new Error("Not configured - run 'jira auth login' first")),
|
|
41
43
|
listRelatedWork: () => Effect.die(new Error("Not configured - run 'jira auth login' first")),
|
|
42
|
-
addRelatedWork: () => Effect.die(new Error("Not configured - run 'jira auth login' first"))
|
|
44
|
+
addRelatedWork: () => Effect.die(new Error("Not configured - run 'jira auth login' first")),
|
|
45
|
+
deleteRelatedWork: () => Effect.die(new Error("Not configured - run 'jira auth login' first"))
|
|
43
46
|
}));
|
|
44
47
|
const DummyJiraAuthLayer = Layer.succeed(JiraAuth, JiraAuth.of({
|
|
45
48
|
configure: () => Effect.die(new Error("Not configured")),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layers.js","sourceRoot":"","sources":["../../src/commands/layers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,cAAc,MAAM,sCAAsC,CAAA;AACtE,OAAO,KAAK,YAAY,MAAM,oCAAoC,CAAA;AAClE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,KAAK,IAAI,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAC5F,OAAO,EAAE,YAAY,EAAE,KAAK,IAAI,iBAAiB,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACtF,OAAO,EAAE,QAAQ,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAAE,KAAK,IAAI,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACnF,OAAO,EAAE,KAAK,IAAI,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAEnF,wCAAwC;AACxC,MAAM,sBAAsB,GAAG,KAAK,CAAC,OAAO,CAC1C,YAAY,EACZ,YAAY,CAAC,EAAE,CAAC;IACd,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACrF,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACnF,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"layers.js","sourceRoot":"","sources":["../../src/commands/layers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,cAAc,MAAM,sCAAsC,CAAA;AACtE,OAAO,KAAK,YAAY,MAAM,oCAAoC,CAAA;AAClE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,KAAK,IAAI,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAC5F,OAAO,EAAE,YAAY,EAAE,KAAK,IAAI,iBAAiB,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACtF,OAAO,EAAE,QAAQ,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAAE,KAAK,IAAI,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACnF,OAAO,EAAE,KAAK,IAAI,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAEnF,wCAAwC;AACxC,MAAM,sBAAsB,GAAG,KAAK,CAAC,OAAO,CAC1C,YAAY,EACZ,YAAY,CAAC,EAAE,CAAC;IACd,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACrF,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACnF,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACtF,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;CAClF,CAAC,CACH,CAAA;AAED,MAAM,2BAA2B,GAAG,KAAK,CAAC,OAAO,CAC/C,iBAAiB,EACjB,iBAAiB,CAAC,EAAE,CAAC;IACnB,aAAa,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;CAC3F,CAAC,CACH,CAAA;AAED,MAAM,wBAAwB,GAAG,KAAK,CAAC,OAAO,CAC5C,cAAc,EACd,cAAc,CAAC,EAAE,CAAC;IAChB,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACzD,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;CAC3D,CAAC,CACH,CAAA;AAED,MAAM,wBAAwB,GAAG,KAAK,CAAC,OAAO,CAC5C,cAAc,EACd,cAAc,CAAC,EAAE,CAAC;IAChB,mBAAmB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAChG,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACvF,aAAa,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAC1F,aAAa,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAC1F,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAC5F,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAC3F,iBAAiB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;CAC/F,CAAC,CACH,CAAA;AAED,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CACtC,QAAQ,EACR,QAAQ,CAAC,EAAE,CAAC;IACV,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACxD,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;IACzC,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpD,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACrD,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC7D,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACzD,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACzD,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1C,gBAAgB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IAC5C,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACtC,aAAa,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IACzC,aAAa,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IACzC,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;CACxC,CAAC,CACH,CAAA;AAED,8BAA8B;AAC9B,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAElH,wDAAwD;AACxD,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CACjC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAA;IAC5B,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CAAA;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAA;IAExC,OAAO,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE;QAClC,OAAO,EAAE,EAAE;QACX,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW;YACX,OAAO;SACkG;KAC5G,CAAC,CAAA;AACJ,CAAC,CAAC,CACH,CAAA;AAED,qFAAqF;AACrF,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAC7C,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAC9B,CAAA;AAED,gCAAgC;AAChC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAC9B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAA;IAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAA;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AACxC,CAAC,CAAC,CACH,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAC9C,KAAK,CAAC,YAAY,CAAC,sBAAsB,CAAC,EAC1C,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,EACrC,KAAK,CAAC,YAAY,CAAC,mBAAmB,CAAC,EACvC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,EAC/B,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,EAClC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,EAC9C,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CACvC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,sBAAsB,CAAC,IAAI,CACtD,KAAK,CAAC,YAAY,CAAC,2BAA2B,CAAC,EAC/C,KAAK,CAAC,YAAY,CAAC,wBAAwB,CAAC,EAC5C,KAAK,CAAC,YAAY,CAAC,wBAAwB,CAAC,EAC5C,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,EAC9C,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CACvC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,sBAAsB,CAAC,IAAI,CACrD,KAAK,CAAC,YAAY,CAAC,2BAA2B,CAAC,EAC/C,KAAK,CAAC,YAAY,CAAC,wBAAwB,CAAC,EAC5C,KAAK,CAAC,YAAY,CAAC,wBAAwB,CAAC,EAC5C,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,EACtC,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CACvC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAA2B,EAA+B,EAAE;IACvF,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QACnB,OAAO,MAAM,CAAA;IACf,CAAC;IACD,IACE,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;QACnE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EACnD,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;QACxF,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `jira issue search` command — JQL search with multi/single Markdown output.
|
|
3
|
+
*
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
import { Command } from "effect/cli";
|
|
1
7
|
import * as Option from "effect/Option";
|
|
2
|
-
import { Command } from "effect/unstable/cli";
|
|
3
8
|
import { IssueService } from "../IssueService.js";
|
|
4
9
|
import { MarkdownWriter } from "../MarkdownWriter.js";
|
|
5
10
|
export declare const searchCommand: Command.Command<"search", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAoB,OAAO,EAAmB,MAAM,YAAY,CAAA;AAGvE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAuCrD,eAAO,MAAM,aAAa;;;;;;;0HAmD6D,CAAA"}
|
package/dist/commands/search.js
CHANGED
|
@@ -3,20 +3,20 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @internal
|
|
5
5
|
*/
|
|
6
|
+
import { Argument as Args, Command, Flag as Options } from "effect/cli";
|
|
6
7
|
import * as Console from "effect/Console";
|
|
7
8
|
import * as Effect from "effect/Effect";
|
|
8
9
|
import * as Option from "effect/Option";
|
|
9
|
-
import { Argument as Args, Command, Flag as Options } from "effect/unstable/cli";
|
|
10
10
|
import { buildByVersionJql } from "../internal/jqlBuilder.js";
|
|
11
11
|
import { IssueService } from "../IssueService.js";
|
|
12
12
|
import { MarkdownWriter } from "../MarkdownWriter.js";
|
|
13
13
|
// === Options ===
|
|
14
|
-
const jqlArg = Args.
|
|
15
|
-
const byVersionOption = Options.
|
|
16
|
-
const projectOption = Options.
|
|
17
|
-
const outputDirOption = Options.
|
|
18
|
-
const formatOption = Options.
|
|
19
|
-
const maxResultsOption = Options.
|
|
14
|
+
const jqlArg = Args.String("jql").pipe(Args.withDescription("JQL query to search for issues"), Args.optional);
|
|
15
|
+
const byVersionOption = Options.String("by-version").pipe(Options.withAlias("v"), Options.withDescription("Search by fix version (pre-defined query)"), Options.optional);
|
|
16
|
+
const projectOption = Options.String("project").pipe(Options.withAlias("p"), Options.withDescription("Filter by project key"), Options.optional);
|
|
17
|
+
const outputDirOption = Options.Directory("output-dir").pipe(Options.withAlias("o"), Options.withDescription("Output directory for markdown files"), Options.withDefault("./jira-tickets"));
|
|
18
|
+
const formatOption = Options.Literals("format", ["multi", "single"]).pipe(Options.withAlias("f"), Options.withDescription("Output format: multi (one file per issue) or single (combined file)"), Options.withDefault("multi"));
|
|
19
|
+
const maxResultsOption = Options.Int("max-results").pipe(Options.withAlias("m"), Options.withDescription("Maximum number of results to fetch"), Options.withDefault(100));
|
|
20
20
|
// === Search command ===
|
|
21
21
|
export const searchCommand = Command.make("search", {
|
|
22
22
|
jql: jqlArg,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* `jira version` command — list / get Jira project versions (releases) with
|
|
3
|
+
* Driver, Contributors and Approver fields resolved to display names, plus
|
|
4
|
+
* mutations: edit the description and manage "Related work" links (the
|
|
5
|
+
* Confluence pages surfaced on a release report).
|
|
6
|
+
*
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
import { Command } from "effect/cli";
|
|
2
10
|
import { JiraApiError } from "../JiraCliError.js";
|
|
3
11
|
import type { Version } from "../VersionService.js";
|
|
12
|
+
import { VersionService } from "../VersionService.js";
|
|
4
13
|
/**
|
|
5
14
|
* Return a copy of `version` with every resolved {@link Person.emailAddress}
|
|
6
15
|
* (PII) set to null — covering driver, contributors, approvers[].person and
|
|
@@ -8,5 +17,11 @@ import type { Version } from "../VersionService.js";
|
|
|
8
17
|
* caller opts in with `--emails`.
|
|
9
18
|
*/
|
|
10
19
|
export declare const stripEmails: (version: Version) => Version;
|
|
11
|
-
|
|
20
|
+
/**
|
|
21
|
+
* Jira accepts version dates only as ISO 8601 `yyyy-mm-dd`. Anything else — a
|
|
22
|
+
* locale format, a timestamp — comes back as a generic 400 that does not name the
|
|
23
|
+
* offending field, so reject it locally where the message can.
|
|
24
|
+
*/
|
|
25
|
+
export declare const isIsoDate: (value: string) => boolean;
|
|
26
|
+
export declare const versionCommand: Command.Command<"version", {}, {}, JiraApiError, VersionService>;
|
|
12
27
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAoB,OAAO,EAAmB,MAAM,YAAY,CAAA;AAIvE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAU,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EAAuB,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1E;;;;;GAKG;AACH,eAAO,MAAM,WAAW,YAAa,OAAO,KAAG,OAY9C,CAAA;AA8ID;;;;GAIG;AACH,eAAO,MAAM,SAAS,UAAW,MAAM,KAAG,OAMzC,CAAA;AAqOD,eAAO,MAAM,cAAc,kEAG1B,CAAA"}
|