@corsair-dev/jira 0.1.0 → 0.1.1
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/dist/api.test.d.ts +2 -0
- package/dist/api.test.d.ts.map +1 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/endpoints/comments.d.ts +1 -1
- package/dist/endpoints/comments.d.ts.map +1 -1
- package/dist/endpoints/index.d.ts +3 -3
- package/dist/endpoints/issues.d.ts +1 -1
- package/dist/endpoints/issues.d.ts.map +1 -1
- package/dist/endpoints/projects.d.ts +1 -1
- package/dist/endpoints/projects.d.ts.map +1 -1
- package/dist/endpoints/sprints.d.ts +1 -1
- package/dist/endpoints/sprints.d.ts.map +1 -1
- package/dist/endpoints/types.d.ts +12 -12
- package/dist/endpoints/users.d.ts +1 -1
- package/dist/endpoints/users.d.ts.map +1 -1
- package/dist/index.d.ts +11 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/schema/database.d.ts +2 -2
- package/dist/schema/index.d.ts +3 -3
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/webhooks/index.d.ts +4 -4
- package/dist/webhooks/newIssue.d.ts +1 -1
- package/dist/webhooks/newIssue.d.ts.map +1 -1
- package/dist/webhooks/newProject.d.ts +1 -1
- package/dist/webhooks/newProject.d.ts.map +1 -1
- package/dist/webhooks/types.d.ts +9 -9
- package/dist/webhooks/types.d.ts.map +1 -1
- package/dist/webhooks/updatedIssue.d.ts +1 -1
- package/dist/webhooks/updatedIssue.d.ts.map +1 -1
- package/package.json +9 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.test.d.ts","sourceRoot":"","sources":["../api.test.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC"}
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../client.ts"],"names":[],"mappings":"AAOA,qBAAa,YAAa,SAAQ,KAAK;aAGrB,IAAI,CAAC,EAAE,MAAM;gBAD7B,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,MAAM,YAAA;CAK9B;AAYD;;;GAGG;AACH,wBAAsB,eAAe,CAAC,CAAC,EACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IACR,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;CACzD,GACJ,OAAO,CAAC,CAAC,CAAC,CAkCZ;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CAAC,CAAC,EAC3C,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE;IACL,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,GACvE,OAAO,CAAC,CAAC,CAAC,CAiDZ;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,CAAC,EAC3C,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IACR,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;CACzD,GACJ,OAAO,CAAC,CAAC,CAAC,CAgCZ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comments.d.ts","sourceRoot":"","sources":["../../endpoints/comments.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"comments.d.ts","sourceRoot":"","sources":["../../endpoints/comments.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAI9C,eAAO,MAAM,GAAG,EAAE,aAAa,CAAC,aAAa,CA2C5C,CAAC;AAEF,eAAO,MAAM,GAAG,EAAE,aAAa,CAAC,aAAa,CA+B5C,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,aAAa,CAAC,cAAc,CAyC9C,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,aAAa,CAAC,gBAAgB,CA+BlD,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,gBAAgB,CAkBzD,CAAC"}
|
|
@@ -284,14 +284,14 @@ export declare const Issues: {
|
|
|
284
284
|
content?: string | undefined;
|
|
285
285
|
}[]>;
|
|
286
286
|
addWatcher: (ctx: import("..").JiraContext, args: {
|
|
287
|
-
account_id: string;
|
|
288
287
|
issue_id_or_key: string;
|
|
288
|
+
account_id: string;
|
|
289
289
|
}) => Promise<{
|
|
290
290
|
success: boolean;
|
|
291
291
|
}>;
|
|
292
292
|
removeWatcher: (ctx: import("..").JiraContext, args: {
|
|
293
|
-
account_id: string;
|
|
294
293
|
issue_id_or_key: string;
|
|
294
|
+
account_id: string;
|
|
295
295
|
}) => Promise<{
|
|
296
296
|
success: boolean;
|
|
297
297
|
}>;
|
|
@@ -536,9 +536,9 @@ export declare const Users: {
|
|
|
536
536
|
}>;
|
|
537
537
|
find: (ctx: import("..").JiraContext, args: {
|
|
538
538
|
query?: string | undefined;
|
|
539
|
-
account_id?: string | undefined;
|
|
540
539
|
start_at?: number | undefined;
|
|
541
540
|
max_results?: number | undefined;
|
|
541
|
+
account_id?: string | undefined;
|
|
542
542
|
}) => Promise<{
|
|
543
543
|
accountId?: string | undefined;
|
|
544
544
|
displayName?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../endpoints/issues.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../endpoints/issues.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAI9C,eAAO,MAAM,MAAM,EAAE,aAAa,CAAC,cAAc,CA+ChD,CAAC;AAEF,eAAO,MAAM,GAAG,EAAE,aAAa,CAAC,WAAW,CA2C1C,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,aAAa,CAAC,YAAY,CAmC5C,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,aAAa,CAAC,cAAc,CAqBrD,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,aAAa,CAAC,cAAc,CAgDhD,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,aAAa,CAAC,cAAc,CAqBhD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,sBAAsB,CAoBhE,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,kBAAkB,CA0BxD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,kBAAkB,CAyDxD,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,aAAa,CAAC,iBAAiB,CAiDtD,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,qBAAqB,CAqB9D,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,kBAAkB,CAsBxD,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,qBAAqB,CAqB9D,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,kBAAkB,CA0BxD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../endpoints/projects.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../endpoints/projects.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG9C,eAAO,MAAM,MAAM,EAAE,aAAa,CAAC,gBAAgB,CA6ClD,CAAC;AAEF,eAAO,MAAM,GAAG,EAAE,aAAa,CAAC,aAAa,CAuC5C,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,aAAa,CAAC,cAAc,CAsD9C,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,aAAa,CAAC,kBAAkB,CAoBtD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { JiraEndpoints } from '
|
|
1
|
+
import type { JiraEndpoints } from '../index';
|
|
2
2
|
export declare const create: JiraEndpoints['sprintsCreate'];
|
|
3
3
|
export declare const list: JiraEndpoints['sprintsList'];
|
|
4
4
|
export declare const moveIssues: JiraEndpoints['sprintsMoveIssues'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sprints.d.ts","sourceRoot":"","sources":["../../endpoints/sprints.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sprints.d.ts","sourceRoot":"","sources":["../../endpoints/sprints.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG9C,eAAO,MAAM,MAAM,EAAE,aAAa,CAAC,eAAe,CAwCjD,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,aAAa,CAAC,aAAa,CA8C7C,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAqBzD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAqDzD,CAAC"}
|
|
@@ -1715,11 +1715,11 @@ declare const IssuesAddWatcherInputSchema: z.ZodObject<{
|
|
|
1715
1715
|
issue_id_or_key: z.ZodString;
|
|
1716
1716
|
account_id: z.ZodString;
|
|
1717
1717
|
}, "strip", z.ZodTypeAny, {
|
|
1718
|
-
account_id: string;
|
|
1719
1718
|
issue_id_or_key: string;
|
|
1720
|
-
}, {
|
|
1721
1719
|
account_id: string;
|
|
1720
|
+
}, {
|
|
1722
1721
|
issue_id_or_key: string;
|
|
1722
|
+
account_id: string;
|
|
1723
1723
|
}>;
|
|
1724
1724
|
export type IssuesAddWatcherInput = z.infer<typeof IssuesAddWatcherInputSchema>;
|
|
1725
1725
|
declare const IssuesAddWatcherResponseSchema: z.ZodObject<{
|
|
@@ -1734,11 +1734,11 @@ declare const IssuesRemoveWatcherInputSchema: z.ZodObject<{
|
|
|
1734
1734
|
issue_id_or_key: z.ZodString;
|
|
1735
1735
|
account_id: z.ZodString;
|
|
1736
1736
|
}, "strip", z.ZodTypeAny, {
|
|
1737
|
-
account_id: string;
|
|
1738
1737
|
issue_id_or_key: string;
|
|
1739
|
-
}, {
|
|
1740
1738
|
account_id: string;
|
|
1739
|
+
}, {
|
|
1741
1740
|
issue_id_or_key: string;
|
|
1741
|
+
account_id: string;
|
|
1742
1742
|
}>;
|
|
1743
1743
|
export type IssuesRemoveWatcherInput = z.infer<typeof IssuesRemoveWatcherInputSchema>;
|
|
1744
1744
|
declare const IssuesRemoveWatcherResponseSchema: z.ZodObject<{
|
|
@@ -2643,14 +2643,14 @@ declare const UsersFindInputSchema: z.ZodObject<{
|
|
|
2643
2643
|
max_results: z.ZodOptional<z.ZodNumber>;
|
|
2644
2644
|
}, "strip", z.ZodTypeAny, {
|
|
2645
2645
|
query?: string | undefined;
|
|
2646
|
-
account_id?: string | undefined;
|
|
2647
2646
|
start_at?: number | undefined;
|
|
2648
2647
|
max_results?: number | undefined;
|
|
2648
|
+
account_id?: string | undefined;
|
|
2649
2649
|
}, {
|
|
2650
2650
|
query?: string | undefined;
|
|
2651
|
-
account_id?: string | undefined;
|
|
2652
2651
|
start_at?: number | undefined;
|
|
2653
2652
|
max_results?: number | undefined;
|
|
2653
|
+
account_id?: string | undefined;
|
|
2654
2654
|
}>;
|
|
2655
2655
|
export type UsersFindInput = z.infer<typeof UsersFindInputSchema>;
|
|
2656
2656
|
declare const UsersFindResponseSchema: z.ZodArray<z.ZodObject<{
|
|
@@ -3063,21 +3063,21 @@ export declare const JiraEndpointInputSchemas: {
|
|
|
3063
3063
|
issue_id_or_key: z.ZodString;
|
|
3064
3064
|
account_id: z.ZodString;
|
|
3065
3065
|
}, "strip", z.ZodTypeAny, {
|
|
3066
|
-
account_id: string;
|
|
3067
3066
|
issue_id_or_key: string;
|
|
3068
|
-
}, {
|
|
3069
3067
|
account_id: string;
|
|
3068
|
+
}, {
|
|
3070
3069
|
issue_id_or_key: string;
|
|
3070
|
+
account_id: string;
|
|
3071
3071
|
}>;
|
|
3072
3072
|
readonly issuesRemoveWatcher: z.ZodObject<{
|
|
3073
3073
|
issue_id_or_key: z.ZodString;
|
|
3074
3074
|
account_id: z.ZodString;
|
|
3075
3075
|
}, "strip", z.ZodTypeAny, {
|
|
3076
|
-
account_id: string;
|
|
3077
3076
|
issue_id_or_key: string;
|
|
3078
|
-
}, {
|
|
3079
3077
|
account_id: string;
|
|
3078
|
+
}, {
|
|
3080
3079
|
issue_id_or_key: string;
|
|
3080
|
+
account_id: string;
|
|
3081
3081
|
}>;
|
|
3082
3082
|
readonly issuesLinkIssues: z.ZodObject<{
|
|
3083
3083
|
link_type: z.ZodString;
|
|
@@ -3290,14 +3290,14 @@ export declare const JiraEndpointInputSchemas: {
|
|
|
3290
3290
|
max_results: z.ZodOptional<z.ZodNumber>;
|
|
3291
3291
|
}, "strip", z.ZodTypeAny, {
|
|
3292
3292
|
query?: string | undefined;
|
|
3293
|
-
account_id?: string | undefined;
|
|
3294
3293
|
start_at?: number | undefined;
|
|
3295
3294
|
max_results?: number | undefined;
|
|
3295
|
+
account_id?: string | undefined;
|
|
3296
3296
|
}, {
|
|
3297
3297
|
query?: string | undefined;
|
|
3298
|
-
account_id?: string | undefined;
|
|
3299
3298
|
start_at?: number | undefined;
|
|
3300
3299
|
max_results?: number | undefined;
|
|
3300
|
+
account_id?: string | undefined;
|
|
3301
3301
|
}>;
|
|
3302
3302
|
readonly usersGetAll: z.ZodObject<{
|
|
3303
3303
|
start_at: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { JiraEndpoints } from '
|
|
1
|
+
import type { JiraEndpoints } from '../index';
|
|
2
2
|
export declare const getCurrent: JiraEndpoints['usersGetCurrent'];
|
|
3
3
|
export declare const find: JiraEndpoints['usersFind'];
|
|
4
4
|
export declare const getAll: JiraEndpoints['usersGetAll'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../../endpoints/users.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../../endpoints/users.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG9C,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,iBAAiB,CA6BvD,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,aAAa,CAAC,WAAW,CAqC3C,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,aAAa,CAAC,aAAa,CAwC/C,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,cAAc,CA0BtD,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,cAAc,CAqBtD,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type { BindEndpoints, BindWebhooks, CorsairEndpoint, CorsairErrorHandler, CorsairPlugin, CorsairPluginContext, CorsairWebhook, KeyBuilderContext, PluginPermissionsConfig } from 'corsair/core';
|
|
2
|
-
import type { AuthTypes, PickAuth } from 'corsair/core';
|
|
1
|
+
import type { AuthTypes, BindEndpoints, BindWebhooks, CorsairEndpoint, CorsairErrorHandler, CorsairPlugin, CorsairPluginContext, CorsairWebhook, KeyBuilderContext, PickAuth, PluginPermissionsConfig } from 'corsair/core';
|
|
3
2
|
import type { JiraEndpointInputs, JiraEndpointOutputs } from './endpoints/types';
|
|
4
|
-
import type { JiraWebhookOutputs, NewIssueEvent, UpdatedIssueEvent, NewProjectEvent } from './webhooks/types';
|
|
5
3
|
import { JiraSchema } from './schema';
|
|
4
|
+
import type { JiraWebhookOutputs, NewIssueEvent, NewProjectEvent, UpdatedIssueEvent } from './webhooks/types';
|
|
6
5
|
export type JiraPluginOptions = {
|
|
7
6
|
authType?: PickAuth<'api_key'>;
|
|
8
7
|
key?: string;
|
|
@@ -127,7 +126,6 @@ declare const jiraWebhooksNested: {
|
|
|
127
126
|
readonly issues: {
|
|
128
127
|
readonly newIssue: JiraWebhook<"newIssue", {
|
|
129
128
|
webhookEvent: "jira:issue_created";
|
|
130
|
-
timestamp?: number | undefined;
|
|
131
129
|
issue?: {
|
|
132
130
|
key?: string | undefined;
|
|
133
131
|
id?: string | undefined;
|
|
@@ -171,6 +169,7 @@ declare const jiraWebhooksNested: {
|
|
|
171
169
|
updated?: string | undefined;
|
|
172
170
|
} | undefined;
|
|
173
171
|
} | undefined;
|
|
172
|
+
timestamp?: number | undefined;
|
|
174
173
|
user?: {
|
|
175
174
|
accountId?: string | undefined;
|
|
176
175
|
displayName?: string | undefined;
|
|
@@ -179,7 +178,6 @@ declare const jiraWebhooksNested: {
|
|
|
179
178
|
}>;
|
|
180
179
|
readonly updatedIssue: JiraWebhook<"updatedIssue", {
|
|
181
180
|
webhookEvent: "jira:issue_updated";
|
|
182
|
-
timestamp?: number | undefined;
|
|
183
181
|
issue?: {
|
|
184
182
|
key?: string | undefined;
|
|
185
183
|
id?: string | undefined;
|
|
@@ -222,6 +220,7 @@ declare const jiraWebhooksNested: {
|
|
|
222
220
|
updated?: string | undefined;
|
|
223
221
|
} | undefined;
|
|
224
222
|
} | undefined;
|
|
223
|
+
timestamp?: number | undefined;
|
|
225
224
|
user?: {
|
|
226
225
|
accountId?: string | undefined;
|
|
227
226
|
displayName?: string | undefined;
|
|
@@ -1961,11 +1960,11 @@ export declare const jiraEndpointSchemas: {
|
|
|
1961
1960
|
issue_id_or_key: import("zod").ZodString;
|
|
1962
1961
|
account_id: import("zod").ZodString;
|
|
1963
1962
|
}, "strip", import("zod").ZodTypeAny, {
|
|
1964
|
-
account_id: string;
|
|
1965
1963
|
issue_id_or_key: string;
|
|
1966
|
-
}, {
|
|
1967
1964
|
account_id: string;
|
|
1965
|
+
}, {
|
|
1968
1966
|
issue_id_or_key: string;
|
|
1967
|
+
account_id: string;
|
|
1969
1968
|
}>;
|
|
1970
1969
|
readonly output: import("zod").ZodObject<{
|
|
1971
1970
|
success: import("zod").ZodBoolean;
|
|
@@ -1980,11 +1979,11 @@ export declare const jiraEndpointSchemas: {
|
|
|
1980
1979
|
issue_id_or_key: import("zod").ZodString;
|
|
1981
1980
|
account_id: import("zod").ZodString;
|
|
1982
1981
|
}, "strip", import("zod").ZodTypeAny, {
|
|
1983
|
-
account_id: string;
|
|
1984
1982
|
issue_id_or_key: string;
|
|
1985
|
-
}, {
|
|
1986
1983
|
account_id: string;
|
|
1984
|
+
}, {
|
|
1987
1985
|
issue_id_or_key: string;
|
|
1986
|
+
account_id: string;
|
|
1988
1987
|
}>;
|
|
1989
1988
|
readonly output: import("zod").ZodObject<{
|
|
1990
1989
|
success: import("zod").ZodBoolean;
|
|
@@ -2889,14 +2888,14 @@ export declare const jiraEndpointSchemas: {
|
|
|
2889
2888
|
max_results: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
2890
2889
|
}, "strip", import("zod").ZodTypeAny, {
|
|
2891
2890
|
query?: string | undefined;
|
|
2892
|
-
account_id?: string | undefined;
|
|
2893
2891
|
start_at?: number | undefined;
|
|
2894
2892
|
max_results?: number | undefined;
|
|
2893
|
+
account_id?: string | undefined;
|
|
2895
2894
|
}, {
|
|
2896
2895
|
query?: string | undefined;
|
|
2897
|
-
account_id?: string | undefined;
|
|
2898
2896
|
start_at?: number | undefined;
|
|
2899
2897
|
max_results?: number | undefined;
|
|
2898
|
+
account_id?: string | undefined;
|
|
2900
2899
|
}>;
|
|
2901
2900
|
readonly output: import("zod").ZodArray<import("zod").ZodObject<{
|
|
2902
2901
|
accountId: import("zod").ZodOptional<import("zod").ZodString>;
|
|
@@ -3024,5 +3023,5 @@ export type ExternalJiraPlugin<T extends JiraPluginOptions> = BaseJiraPlugin<T>;
|
|
|
3024
3023
|
export declare function jira<const T extends JiraPluginOptions>(incomingOptions?: JiraPluginOptions & T): ExternalJiraPlugin<T>;
|
|
3025
3024
|
export type { JiraWebhookOutputs, JiraWebhookPayload, NewIssueEvent, NewProjectEvent, UpdatedIssueEvent, } from './webhooks/types';
|
|
3026
3025
|
export { createJiraMatch } from './webhooks/types';
|
|
3027
|
-
export type { CommentsAddInput, CommentsAddResponse, CommentsDeleteInput, CommentsDeleteResponse, CommentsGetInput, CommentsGetResponse, CommentsListInput, CommentsListResponse, CommentsUpdateInput, CommentsUpdateResponse, GroupsCreateInput, GroupsCreateResponse, GroupsGetAllInput, GroupsGetAllResponse, IssuesAddAttachmentInput, IssuesAddAttachmentResponse, IssuesAddWatcherInput, IssuesAddWatcherResponse, IssuesAssignInput, IssuesAssignResponse, IssuesBulkCreateInput, IssuesBulkCreateResponse, IssuesBulkFetchInput, IssuesBulkFetchResponse, IssuesCreateInput, IssuesCreateResponse, IssuesDeleteInput, IssuesDeleteResponse, IssuesEditInput, IssuesEditResponse, IssuesGetInput, IssuesGetResponse, IssuesGetTransitionsInput, IssuesGetTransitionsResponse, IssuesLinkIssuesInput, IssuesLinkIssuesResponse, IssuesRemoveWatcherInput, IssuesRemoveWatcherResponse, IssuesSearchInput, IssuesSearchResponse, IssuesTransitionInput, IssuesTransitionResponse, JiraEndpointInputs, JiraEndpointOutputs, ProjectsCreateInput, ProjectsCreateResponse, ProjectsGetInput, ProjectsGetResponse, ProjectsGetRolesInput, ProjectsGetRolesResponse, ProjectsListInput, ProjectsListResponse, SprintsCreateInput, SprintsCreateResponse, SprintsListBoardsInput, SprintsListBoardsResponse, SprintsListInput, SprintsListResponse, SprintsMoveIssuesInput, SprintsMoveIssuesResponse, UsersGetAllInput, UsersGetAllResponse, UsersGetCurrentInput, UsersGetCurrentResponse,
|
|
3026
|
+
export type { CommentsAddInput, CommentsAddResponse, CommentsDeleteInput, CommentsDeleteResponse, CommentsGetInput, CommentsGetResponse, CommentsListInput, CommentsListResponse, CommentsUpdateInput, CommentsUpdateResponse, GroupsCreateInput, GroupsCreateResponse, GroupsGetAllInput, GroupsGetAllResponse, IssuesAddAttachmentInput, IssuesAddAttachmentResponse, IssuesAddWatcherInput, IssuesAddWatcherResponse, IssuesAssignInput, IssuesAssignResponse, IssuesBulkCreateInput, IssuesBulkCreateResponse, IssuesBulkFetchInput, IssuesBulkFetchResponse, IssuesCreateInput, IssuesCreateResponse, IssuesDeleteInput, IssuesDeleteResponse, IssuesEditInput, IssuesEditResponse, IssuesGetInput, IssuesGetResponse, IssuesGetTransitionsInput, IssuesGetTransitionsResponse, IssuesLinkIssuesInput, IssuesLinkIssuesResponse, IssuesRemoveWatcherInput, IssuesRemoveWatcherResponse, IssuesSearchInput, IssuesSearchResponse, IssuesTransitionInput, IssuesTransitionResponse, JiraEndpointInputs, JiraEndpointOutputs, ProjectsCreateInput, ProjectsCreateResponse, ProjectsGetInput, ProjectsGetResponse, ProjectsGetRolesInput, ProjectsGetRolesResponse, ProjectsListInput, ProjectsListResponse, SprintsCreateInput, SprintsCreateResponse, SprintsListBoardsInput, SprintsListBoardsResponse, SprintsListInput, SprintsListResponse, SprintsMoveIssuesInput, SprintsMoveIssuesResponse, UsersFindInput, UsersFindResponse, UsersGetAllInput, UsersGetAllResponse, UsersGetCurrentInput, UsersGetCurrentResponse, } from './endpoints/types';
|
|
3028
3027
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,aAAa,EACb,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{z as e}from"zod";var h=o=>({version:1,type:"doc",content:[{type:"paragraph",content:[{type:"text",text:o}]}]}),k=e.object({accountId:e.string().optional(),displayName:e.string().optional(),emailAddress:e.string().optional(),active:e.boolean().optional(),avatarUrls:e.record(e.string()).optional()}),O=e.object({id:e.string().optional(),name:e.string().optional(),statusCategory:e.object({id:e.number().optional(),key:e.string().optional(),name:e.string().optional()}).optional()}),Ke=e.object({id:e.string().optional(),name:e.string().optional(),iconUrl:e.string().optional()}),Me=e.object({id:e.string().optional(),name:e.string().optional(),description:e.string().optional(),subtask:e.boolean().optional()}),$e=e.object({id:e.string().optional(),key:e.string().optional(),name:e.string().optional()}),He=e.object({summary:e.string().optional(),description:e.unknown().optional(),status:O.optional(),assignee:k.nullable().optional(),reporter:k.optional(),priority:Ke.nullable().optional(),issuetype:Me.optional(),project:$e.optional(),labels:e.array(e.string()).optional(),created:e.string().optional(),updated:e.string().optional(),comment:e.object({total:e.number().optional(),comments:e.array(e.unknown()).optional()}).optional()}),P=e.object({id:e.string(),key:e.string().optional(),self:e.string().optional(),fields:He.optional()}),x=e.object({id:e.string().optional(),self:e.string().optional(),author:k.optional(),body:e.unknown().optional(),renderedBody:e.string().optional(),created:e.string().optional(),updated:e.string().optional()}),F=e.object({id:e.string().optional(),key:e.string().optional(),name:e.string().optional(),description:e.string().optional(),projectTypeKey:e.string().optional(),lead:k.optional(),self:e.string().optional()}),z=e.object({id:e.number().optional(),name:e.string().optional(),state:e.string().optional(),goal:e.string().optional(),startDate:e.string().optional(),endDate:e.string().optional(),completeDate:e.string().optional(),createdDate:e.string().optional(),originBoardId:e.number().optional(),self:e.string().optional()}),Ve=e.object({id:e.number().optional(),name:e.string().optional(),type:e.string().optional(),self:e.string().optional(),location:e.object({projectId:e.number().optional(),projectKey:e.string().optional(),projectName:e.string().optional()}).optional()}),Ze=e.object({id:e.string().optional(),name:e.string().optional(),to:O.optional()}),Qe=e.object({project_key:e.string(),summary:e.string(),issue_type:e.string().optional(),description:e.string().optional(),assignee:e.string().optional(),priority:e.string().optional(),labels:e.array(e.string()).optional(),due_date:e.string().optional(),parent:e.string().optional()}),Xe=e.object({id:e.string().optional(),key:e.string().optional(),self:e.string().optional()}),Ye=e.object({issue_id_or_key:e.string(),fields:e.string().optional(),expand:e.string().optional()}),es=P,ss=e.object({issue_id_or_key:e.string(),summary:e.string().optional(),description:e.string().optional(),assignee:e.string().optional(),priority:e.string().optional(),labels:e.array(e.string()).optional(),due_date:e.string().optional(),notify_users:e.boolean().optional()}),ts=e.object({success:e.boolean(),issue_key:e.string().optional()}),os=e.object({issue_id_or_key:e.string(),delete_subtasks:e.boolean().optional()}),rs=e.object({success:e.boolean(),message:e.string().optional()}),is=e.object({jql:e.string(),start_at:e.number().optional(),max_results:e.number().optional(),fields:e.string().optional(),expand:e.string().optional()}),ns=e.object({total:e.number().optional(),startAt:e.number().optional(),maxResults:e.number().optional(),issues:e.array(P).optional()}),as=e.object({issue_id_or_key:e.string(),account_id:e.string().nullable().optional()}),ps=e.object({success:e.boolean()}),us=e.object({issue_id_or_key:e.string()}),ds=e.object({transitions:e.array(Ze).optional()}),cs=e.object({issue_id_or_key:e.string(),transition_id:e.string(),comment:e.string().optional()}),ls=e.object({success:e.boolean()}),ms=e.object({issues:e.array(e.object({project_key:e.string(),summary:e.string(),issue_type:e.string().optional(),description:e.string().optional(),assignee:e.string().optional(),priority:e.string().optional()}))}),ys=e.object({issues:e.array(e.object({id:e.string().optional(),key:e.string().optional(),self:e.string().optional()})).optional(),errors:e.array(e.unknown()).optional()}),gs=e.object({issue_ids_or_keys:e.array(e.string()),fields:e.array(e.string()).optional(),expand:e.string().optional()}),fs=e.object({issues:e.array(P).optional(),issueErrors:e.array(e.unknown()).optional()}),Is=e.object({issue_id_or_key:e.string(),file_name:e.string(),file_content:e.string().optional(),file_url:e.string().url().optional(),mime_type:e.string().optional()}).refine(o=>o.file_content!==void 0||o.file_url!==void 0,{message:"Either file_content (base64) or file_url must be provided"}),hs=e.array(e.object({id:e.string().optional(),self:e.string().optional(),filename:e.string().optional(),mimeType:e.string().optional(),size:e.number().optional(),content:e.string().optional(),created:e.string().optional()})),ks=e.object({issue_id_or_key:e.string(),account_id:e.string()}),bs=e.object({success:e.boolean()}),js=e.object({issue_id_or_key:e.string(),account_id:e.string()}),_s=e.object({success:e.boolean()}),Es=e.object({link_type:e.string(),inward_issue_key:e.string(),outward_issue_key:e.string(),comment:e.string().optional()}),As=e.object({success:e.boolean()}),Ss=e.object({issue_id_or_key:e.string(),comment:e.string(),visibility_type:e.string().optional(),visibility_value:e.string().optional()}),ws=e.object({id:e.string().optional(),self:e.string().optional(),author:k.optional(),created:e.string().optional()}),Rs=e.object({issue_id_or_key:e.string(),comment_id:e.string()}),Cs=x,Js=e.object({issue_id_or_key:e.string(),start_at:e.number().optional(),max_results:e.number().optional(),order_by:e.string().optional()}),vs=e.object({total:e.number().optional(),startAt:e.number().optional(),maxResults:e.number().optional(),comments:e.array(x).optional()}),Gs=e.object({issue_id_or_key:e.string(),comment_id:e.string(),comment:e.string()}),Ts=x,Ls=e.object({issue_id_or_key:e.string(),comment_id:e.string()}),Ps=e.object({success:e.boolean()}),xs=e.object({key:e.string(),name:e.string(),project_type_key:e.string().optional(),description:e.string().optional(),lead_account_id:e.string().optional(),assignee_type:e.string().optional()}),Bs=e.object({id:e.union([e.string(),e.number()]).optional(),key:e.string().optional(),self:e.string().optional()}),Ds=e.object({project_id_or_key:e.string(),expand:e.string().optional()}),Ns=F,Us=e.object({query:e.string().optional(),order_by:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional(),expand:e.string().optional()}),Ws=e.object({total:e.number().optional(),startAt:e.number().optional(),maxResults:e.number().optional(),isLast:e.boolean().optional(),values:e.array(F).optional()}),Os=e.object({project_id_or_key:e.string()}),Fs=e.record(e.string()),zs=e.object({origin_board_id:e.number(),name:e.string(),goal:e.string().optional(),start_date:e.string().optional(),end_date:e.string().optional()}),qs=z,Ks=e.object({board_id:e.number(),state:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional()}),Ms=e.object({maxResults:e.number().optional(),startAt:e.number().optional(),isLast:e.boolean().optional(),values:e.array(z).optional()}),$s=e.object({sprint_id:e.number(),issue_keys:e.array(e.string())}),Hs=e.object({success:e.boolean()}),Vs=e.object({project_key_or_id:e.string().optional(),type:e.string().optional(),name:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional()}),Zs=e.object({maxResults:e.number().optional(),startAt:e.number().optional(),isLast:e.boolean().optional(),total:e.number().optional(),values:e.array(Ve).optional()}),Qs=e.object({}),Xs=k.extend({accountId:e.string(),displayName:e.string().optional(),emailAddress:e.string().optional(),timeZone:e.string().optional(),locale:e.string().optional()}),Ys=e.object({query:e.string().optional(),account_id:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional()}),et=e.array(k),st=e.object({start_at:e.number().optional(),max_results:e.number().optional()}),tt=e.array(k),ot=e.object({start_at:e.number().optional(),max_results:e.number().optional()}),rt=e.object({total:e.number().optional(),header:e.string().optional(),groups:e.array(e.object({groupId:e.string().optional(),name:e.string().optional(),html:e.string().optional()})).optional()}),it=e.object({name:e.string()}),nt=e.object({groupId:e.string().optional(),name:e.string().optional(),self:e.string().optional()}),p={issuesCreate:Qe,issuesGet:Ye,issuesEdit:ss,issuesDelete:os,issuesSearch:is,issuesAssign:as,issuesGetTransitions:us,issuesTransition:cs,issuesBulkCreate:ms,issuesBulkFetch:gs,issuesAddAttachment:Is,issuesAddWatcher:ks,issuesRemoveWatcher:js,issuesLinkIssues:Es,commentsAdd:Ss,commentsGet:Rs,commentsList:Js,commentsUpdate:Gs,commentsDelete:Ls,projectsCreate:xs,projectsGet:Ds,projectsList:Us,projectsGetRoles:Os,sprintsCreate:zs,sprintsList:Ks,sprintsMoveIssues:$s,sprintsListBoards:Vs,usersGetCurrent:Qs,usersFind:Ys,usersGetAll:st,groupsGetAll:ot,groupsCreate:it},u={issuesCreate:Xe,issuesGet:es,issuesEdit:ts,issuesDelete:rs,issuesSearch:ns,issuesAssign:ps,issuesGetTransitions:ds,issuesTransition:ls,issuesBulkCreate:ys,issuesBulkFetch:fs,issuesAddAttachment:hs,issuesAddWatcher:bs,issuesRemoveWatcher:_s,issuesLinkIssues:As,commentsAdd:ws,commentsGet:Cs,commentsList:vs,commentsUpdate:Ts,commentsDelete:Ps,projectsCreate:Bs,projectsGet:Ns,projectsList:Ws,projectsGetRoles:Fs,sprintsCreate:qs,sprintsList:Ms,sprintsMoveIssues:Hs,sprintsListBoards:Zs,usersGetCurrent:Xs,usersFind:et,usersGetAll:tt,groupsGetAll:rt,groupsCreate:nt};import q from"crypto";import{z as n}from"zod";var b=n.object({accountId:n.string().optional(),displayName:n.string().optional(),emailAddress:n.string().optional()}),K=n.object({id:n.string().optional(),name:n.string().optional(),statusCategory:n.object({key:n.string().optional(),name:n.string().optional()}).optional()}),M=n.object({id:n.string().optional(),name:n.string().optional()}),$=n.object({id:n.string().optional(),name:n.string().optional(),subtask:n.boolean().optional()}),H=n.object({id:n.string().optional(),key:n.string().optional(),name:n.string().optional()}),B=n.object({webhookEvent:n.literal("jira:issue_created"),timestamp:n.number().optional(),issue:n.object({id:n.string().optional(),key:n.string().optional(),self:n.string().optional(),fields:n.object({summary:n.string().optional(),status:K.optional(),assignee:b.nullable().optional(),reporter:b.optional(),priority:M.nullable().optional(),issuetype:$.optional(),project:H.optional(),labels:n.array(n.string()).optional(),created:n.string().optional(),updated:n.string().optional()}).optional()}).optional(),user:b.optional()}),D=n.object({webhookEvent:n.literal("jira:issue_updated"),timestamp:n.number().optional(),issue:n.object({id:n.string().optional(),key:n.string().optional(),self:n.string().optional(),fields:n.object({summary:n.string().optional(),status:K.optional(),assignee:b.nullable().optional(),reporter:b.optional(),priority:M.nullable().optional(),issuetype:$.optional(),project:H.optional(),labels:n.array(n.string()).optional(),updated:n.string().optional()}).optional()}).optional(),user:b.optional(),changelog:n.object({id:n.string().optional(),items:n.array(n.object({field:n.string().optional(),fieldtype:n.string().optional(),from:n.string().nullable().optional(),fromString:n.string().nullable().optional(),to:n.string().nullable().optional(),toString:n.string().nullable().optional()})).optional()}).optional()}),N=n.object({webhookEvent:n.literal("project_created"),timestamp:n.number().optional(),project:n.object({id:n.string().optional(),key:n.string().optional(),name:n.string().optional(),description:n.string().optional(),projectTypeKey:n.string().optional(),lead:b.optional(),self:n.string().optional()}).optional()}),V=B,Z=D,Q=N;function at(o){return typeof o=="string"?JSON.parse(o):o}function j(o){return s=>at(s.body).webhookEvent===o}function _(o,s){let i=o.headers,t=Array.isArray(i["x-hub-signature"])?i["x-hub-signature"][0]:i["x-hub-signature"];if(!t)return s?{valid:!1,error:"Missing x-hub-signature header"}:{valid:!0};let r=o.rawBody??JSON.stringify(o.payload),g=`sha256=${q.createHmac("sha256",s).update(r).digest("hex")}`,f=Buffer.from(t),I=Buffer.from(g);if(f.length!==I.length)return{valid:!1,error:"Signature length mismatch"};let y=q.timingSafeEqual(f,I);return{valid:y,error:y?void 0:"Invalid signature"}}import{logEventFromContext as m}from"corsair/core";import{request as X}from"corsair/http";var J=class extends Error{constructor(i,t){super(i);this.code=t;this.name="JiraAPIError"}},Y={enabled:!0,maxRetries:3,initialRetryDelay:1e3,backoffMultiplier:2,headerNames:{retryAfter:"Retry-After"}};async function d(o,s,i,t={}){let{method:r="GET",body:c,query:g}=t,f={BASE:`${i}/rest/api/3`,VERSION:"3",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",TOKEN:void 0,HEADERS:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Basic ${Buffer.from(s).toString("base64")}`}};return await X(f,{method:r,url:o,body:r==="POST"||r==="PUT"||r==="PATCH"?c:void 0,mediaType:"application/json; charset=utf-8",query:r==="GET"||r==="DELETE"?g:void 0},{rateLimitConfig:Y})}async function ee(o,s,i,t){let r,c=t.mimeType;if(t.url){let y=await fetch(t.url);if(!y.ok)throw new J(`Failed to fetch file from URL: ${y.status} ${y.statusText}`,String(y.status));r=Buffer.from(await y.arrayBuffer()),c??=y.headers.get("content-type")?.split(";")[0]??"application/octet-stream"}else r=Buffer.from(t.content,"base64"),c??="application/octet-stream";let g=new FormData,f=new Blob([new Uint8Array(r)],{type:c});g.append("file",f,t.name);let I=await fetch(`${i}/rest/api/3/issue/${o}/attachments`,{method:"POST",headers:{Authorization:`Basic ${Buffer.from(s).toString("base64")}`,"X-Atlassian-Token":"no-check",Accept:"application/json"},body:g});if(!I.ok){let y=await I.text();throw new J(`Failed to upload attachment: ${I.status} ${y}`,String(I.status))}return I.json()}async function A(o,s,i,t={}){let{method:r="GET",body:c,query:g}=t,f={BASE:`${i}/rest/agile/1.0`,VERSION:"1.0",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",TOKEN:void 0,HEADERS:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Basic ${Buffer.from(s).toString("base64")}`}};return await X(f,{method:r,url:o,body:r==="POST"||r==="PUT"||r==="PATCH"?c:void 0,mediaType:"application/json; charset=utf-8",query:r==="GET"||r==="DELETE"?g:void 0},{rateLimitConfig:Y})}var se=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("issue",o.key,i,{method:"POST",body:{fields:{project:{key:s.project_key},summary:s.summary,issuetype:{name:s.issue_type??"Task"},...s.description&&{description:h(s.description)},...s.assignee&&{assignee:{accountId:s.assignee}},...s.priority&&{priority:{name:s.priority}},...s.labels&&{labels:s.labels},...s.due_date&&{duedate:s.due_date},...s.parent&&{parent:{key:s.parent}}}}});if(t.id&&t.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.id,{id:t.id,key:t.key,summary:s.summary,issueType:s.issue_type??"Task",projectKey:s.project_key,createdAt:new Date})}catch(r){console.warn("Failed to save issue to database:",r)}return await m(o,"jira.issues.create",{...s},"completed"),t},te=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d(`issue/${s.issue_id_or_key}`,o.key,i,{method:"GET",query:{fields:s.fields,expand:s.expand}});if(t.id&&t.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.id,{id:t.id,key:t.key,summary:t.fields?.summary,status:t.fields?.status?.name,assigneeAccountId:t.fields?.assignee?.accountId,assigneeDisplayName:t.fields?.assignee?.displayName,reporterAccountId:t.fields?.reporter?.accountId,reporterDisplayName:t.fields?.reporter?.displayName,priority:t.fields?.priority?.name??void 0,issueType:t.fields?.issuetype?.name,projectKey:t.fields?.project?.key,projectId:t.fields?.project?.id,labels:t.fields?.labels,created:t.fields?.created,updated:t.fields?.updated,createdAt:new Date})}catch(r){console.warn("Failed to save issue to database:",r)}return await m(o,"jira.issues.get",{...s},"completed"),t},oe=async(o,s)=>{let i=await o.keys.get_cloud_url()??"";return await d(`issue/${s.issue_id_or_key}`,o.key,i,{method:"PUT",body:{fields:{...s.summary!==void 0&&{summary:s.summary},...s.description!==void 0&&{description:h(s.description)},...s.assignee!==void 0&&{assignee:s.assignee?{accountId:s.assignee}:null},...s.priority!==void 0&&{priority:{name:s.priority}},...s.labels!==void 0&&{labels:s.labels},...s.due_date!==void 0&&{duedate:s.due_date}},update:{},notifyUsers:s.notify_users??!0}}),await m(o,"jira.issues.edit",{...s},"completed"),{success:!0,issue_key:s.issue_id_or_key}},re=async(o,s)=>(await d(`issue/${s.issue_id_or_key}`,o.key,await o.keys.get_cloud_url()??"",{method:"DELETE",query:{deleteSubtasks:s.delete_subtasks?"true":"false"}}),await m(o,"jira.issues.delete",{...s},"completed"),{success:!0,message:`Issue ${s.issue_id_or_key} deleted`}),ie=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("search/jql",o.key,i,{method:"GET",query:{jql:s.jql,startAt:s.start_at,maxResults:s.max_results,fields:s.fields,expand:s.expand}});if(t.issues&&o.db.issues){for(let r of t.issues)if(!(!r.id||!r.key))try{await o.db.issues.upsertByEntityId(r.id,{id:r.id,key:r.key,summary:r.fields?.summary,status:r.fields?.status?.name,assigneeAccountId:r.fields?.assignee?.accountId,assigneeDisplayName:r.fields?.assignee?.displayName,priority:r.fields?.priority?.name??void 0,issueType:r.fields?.issuetype?.name,projectKey:r.fields?.project?.key,createdAt:new Date})}catch(c){console.warn("Failed to save issue to database:",c)}}return await m(o,"jira.issues.search",{...s},"completed"),t},ne=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/assignee`,o.key,await o.keys.get_cloud_url()??"",{method:"PUT",body:{accountId:s.account_id??null}}),await m(o,"jira.issues.assign",{...s},"completed"),{success:!0}),ae=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/transitions`,o.key,await o.keys.get_cloud_url()??"",{method:"GET"});return await m(o,"jira.issues.getTransitions",{...s},"completed"),i},pe=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/transitions`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{transition:{id:s.transition_id},...s.comment&&{update:{comment:[{add:{body:h(s.comment)}}]}}}}),await m(o,"jira.issues.transition",{...s},"completed"),{success:!0}),ue=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("issue/bulk",o.key,i,{method:"POST",body:{issueUpdates:s.issues.map(r=>({fields:{project:{key:r.project_key},summary:r.summary,issuetype:{name:r.issue_type??"Task"},...r.assignee&&{assignee:{accountId:r.assignee}},...r.priority&&{priority:{name:r.priority}},...r.description&&{description:h(r.description)}}}))}});if(t.issues&&o.db.issues)for(let r of t.issues){if(!r.id||!r.key)continue;let c=s.issues.find((g,f)=>t.issues?.[f]?.key===r.key);try{await o.db.issues.upsertByEntityId(r.id,{id:r.id,key:r.key,summary:c?.summary,issueType:c?.issue_type??"Task",projectKey:c?.project_key,createdAt:new Date})}catch(g){console.warn("Failed to save bulk issue to database:",g)}}return await m(o,"jira.issues.bulkCreate",{count:s.issues.length},"completed"),t},de=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("issue/bulkfetch",o.key,i,{method:"POST",body:{issueIdsOrKeys:s.issue_ids_or_keys,...s.fields&&{fields:s.fields},...s.expand&&{expand:[s.expand]}}});if(t.issues&&o.db.issues){for(let r of t.issues)if(!(!r.id||!r.key))try{await o.db.issues.upsertByEntityId(r.id,{id:r.id,key:r.key,summary:r.fields?.summary,status:r.fields?.status?.name,assigneeAccountId:r.fields?.assignee?.accountId,assigneeDisplayName:r.fields?.assignee?.displayName,priority:r.fields?.priority?.name??void 0,issueType:r.fields?.issuetype?.name,projectKey:r.fields?.project?.key,createdAt:new Date})}catch(c){console.warn("Failed to save issue to database:",c)}}return await m(o,"jira.issues.bulkFetch",{count:s.issue_ids_or_keys.length},"completed"),t},ce=async(o,s)=>{let i=await ee(s.issue_id_or_key,o.key,await o.keys.get_cloud_url()??"",{name:s.file_name,mimeType:s.mime_type,...s.file_url?{url:s.file_url}:{content:s.file_content}});return await m(o,"jira.issues.addAttachment",{...s},"completed"),i},le=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/watchers`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:s.account_id}),await m(o,"jira.issues.addWatcher",{...s},"completed"),{success:!0}),me=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/watchers`,o.key,await o.keys.get_cloud_url()??"",{method:"DELETE",query:{accountId:s.account_id}}),await m(o,"jira.issues.removeWatcher",{...s},"completed"),{success:!0}),ye=async(o,s)=>(await d("issueLink",o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{type:{name:s.link_type},inwardIssue:{key:s.inward_issue_key},outwardIssue:{key:s.outward_issue_key},...s.comment&&{comment:{body:h(s.comment)}}}}),await m(o,"jira.issues.linkIssues",{...s},"completed"),{success:!0});import{logEventFromContext as S}from"corsair/core";var ge=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{body:h(s.comment),...s.visibility_type&&s.visibility_value&&{visibility:{type:s.visibility_type,value:s.visibility_value}}}});if(i.id&&o.db.comments)try{await o.db.comments.upsertByEntityId(i.id,{id:i.id,issueKey:s.issue_id_or_key,body:s.comment,authorAccountId:i.author?.accountId,authorDisplayName:i.author?.displayName,created:i.created,createdAt:new Date})}catch(t){console.warn("Failed to save comment to database:",t)}return await S(o,"jira.comments.add",{...s},"completed"),i},fe=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment/${s.comment_id}`,o.key,await o.keys.get_cloud_url()??"",{method:"GET"});if(i.id&&o.db.comments)try{await o.db.comments.upsertByEntityId(i.id,{id:i.id,issueKey:s.issue_id_or_key,authorAccountId:i.author?.accountId,authorDisplayName:i.author?.displayName,created:i.created,updated:i.updated,createdAt:new Date})}catch(t){console.warn("Failed to save comment to database:",t)}return await S(o,"jira.comments.get",{...s},"completed"),i},Ie=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment`,o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{startAt:s.start_at,maxResults:s.max_results,orderBy:s.order_by}});if(i.comments&&o.db.comments){for(let t of i.comments)if(t.id)try{await o.db.comments.upsertByEntityId(t.id,{id:t.id,issueKey:s.issue_id_or_key,authorAccountId:t.author?.accountId,authorDisplayName:t.author?.displayName,created:t.created,updated:t.updated,createdAt:new Date})}catch(r){console.warn("Failed to save comment to database:",r)}}return await S(o,"jira.comments.list",{...s},"completed"),i},he=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment/${s.comment_id}`,o.key,await o.keys.get_cloud_url()??"",{method:"PUT",body:{body:h(s.comment)}});if(i.id&&o.db.comments)try{await o.db.comments.upsertByEntityId(i.id,{id:i.id,issueKey:s.issue_id_or_key,body:s.comment,updated:i.updated})}catch(t){console.warn("Failed to update comment in database:",t)}return await S(o,"jira.comments.update",{...s},"completed"),i},ke=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/comment/${s.comment_id}`,o.key,await o.keys.get_cloud_url()??"",{method:"DELETE"}),await S(o,"jira.comments.delete",{...s},"completed"),{success:!0});import{logEventFromContext as v}from"corsair/core";var be=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("project",o.key,i,{method:"POST",body:{key:s.key,name:s.name,projectTypeKey:s.project_type_key??"software",assigneeType:s.assignee_type??"UNASSIGNED",...s.description&&{description:s.description},...s.lead_account_id&&{leadAccountId:s.lead_account_id}}});if(t.id&&t.key&&o.db.projects)try{let r=String(t.id);await o.db.projects.upsertByEntityId(r,{id:r,key:t.key,name:s.name,...s.description&&{description:s.description},projectTypeKey:s.project_type_key??"software",...s.lead_account_id&&{leadAccountId:s.lead_account_id},createdAt:new Date})}catch(r){console.warn("Failed to save project to database:",r)}return await v(o,"jira.projects.create",{...s},"completed"),t},je=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d(`project/${s.project_id_or_key}`,o.key,i,{method:"GET",query:{...s.expand&&{expand:s.expand}}});if(t.id&&t.key&&o.db.projects)try{await o.db.projects.upsertByEntityId(t.id,{id:t.id,key:t.key,...t.name&&{name:t.name},...t.description&&{description:t.description},...t.projectTypeKey&&{projectTypeKey:t.projectTypeKey},...t.lead?.accountId&&{leadAccountId:t.lead.accountId},...t.lead?.displayName&&{leadDisplayName:t.lead.displayName},createdAt:new Date})}catch(r){console.warn("Failed to save project to database:",r)}return await v(o,"jira.projects.get",{...s},"completed"),t},_e=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("project/search",o.key,i,{method:"GET",query:{...s.query&&{query:s.query},...s.order_by&&{orderBy:s.order_by},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results},...s.expand&&{expand:s.expand}}});if(t.values&&o.db.projects){for(let r of t.values)if(!(!r.id||!r.key))try{await o.db.projects.upsertByEntityId(r.id,{id:r.id,key:r.key,...r.name&&{name:r.name},...r.description&&{description:r.description},...r.projectTypeKey&&{projectTypeKey:r.projectTypeKey},...r.lead?.accountId&&{leadAccountId:r.lead.accountId},...r.lead?.displayName&&{leadDisplayName:r.lead.displayName},createdAt:new Date})}catch(c){console.warn("Failed to save project to database:",c)}}return await v(o,"jira.projects.list",{...s},"completed"),t},Ee=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d(`project/${s.project_id_or_key}/role`,o.key,i,{method:"GET"});return await v(o,"jira.projects.getRoles",{...s},"completed"),t};import{logEventFromContext as G}from"corsair/core";var Ae=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await A("sprint",o.key,i,{method:"POST",body:{originBoardId:s.origin_board_id,name:s.name,...s.goal&&{goal:s.goal},...s.start_date&&{startDate:s.start_date},...s.end_date&&{endDate:s.end_date}}});if(t.id&&o.db.sprints)try{await o.db.sprints.upsertByEntityId(String(t.id),{id:t.id,...t.name&&{name:t.name},...t.state&&{state:t.state},...t.goal&&{goal:t.goal},...t.startDate&&{startDate:t.startDate},...t.endDate&&{endDate:t.endDate},...t.originBoardId&&{originBoardId:t.originBoardId},createdAt:new Date})}catch(r){console.warn("Failed to save sprint to database:",r)}return await G(o,"jira.sprints.create",{...s},"completed"),t},Se=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await A(`board/${s.board_id}/sprint`,o.key,i,{method:"GET",query:{...s.state&&{state:s.state},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(t.values&&o.db.sprints){for(let r of t.values)if(r.id)try{await o.db.sprints.upsertByEntityId(String(r.id),{id:r.id,...r.name&&{name:r.name},...r.state&&{state:r.state},...r.goal&&{goal:r.goal},...r.startDate&&{startDate:r.startDate},...r.endDate&&{endDate:r.endDate},...r.originBoardId&&{originBoardId:r.originBoardId},createdAt:new Date})}catch(c){console.warn("Failed to save sprint to database:",c)}}return await G(o,"jira.sprints.list",{...s},"completed"),t},we=async(o,s)=>(await A(`sprint/${s.sprint_id}/issue`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{issues:s.issue_keys}}),await G(o,"jira.sprints.moveIssues",{...s},"completed"),{success:!0}),Re=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await A("board",o.key,i,{method:"GET",query:{...s.project_key_or_id&&{projectKeyOrId:s.project_key_or_id},...s.type&&{type:s.type},...s.name&&{name:s.name},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(t.values&&o.db.boards){for(let r of t.values)if(r.id)try{await o.db.boards.upsertByEntityId(String(r.id),{id:r.id,...r.name&&{name:r.name},...r.type&&{type:r.type},...r.location?.projectId&&{projectId:r.location.projectId},...r.location?.projectKey&&{projectKey:r.location.projectKey},...r.location?.projectName&&{projectName:r.location.projectName},createdAt:new Date})}catch(c){console.warn("Failed to save board to database:",c)}}return await G(o,"jira.sprints.listBoards",{...s},"completed"),t};import{logEventFromContext as w}from"corsair/core";var Ce=async(o,s)=>{let i=await d("myself",o.key,await o.keys.get_cloud_url()??"",{method:"GET"});if(i.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(i.accountId,{accountId:i.accountId,...i.displayName&&{displayName:i.displayName},...i.emailAddress&&{emailAddress:i.emailAddress},...i.active!==void 0&&{active:i.active},...i.timeZone&&{timeZone:i.timeZone},...i.locale&&{locale:i.locale},createdAt:new Date})}catch(t){console.warn("Failed to save current user to database:",t)}return await w(o,"jira.users.getCurrent",{},"completed"),i},Je=async(o,s)=>{let i=await d("users/search",o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{...s.query&&{query:s.query},...s.account_id&&{accountId:s.account_id},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(o.db.users){for(let t of i)if(t.accountId)try{await o.db.users.upsertByEntityId(t.accountId,{accountId:t.accountId,...t.displayName&&{displayName:t.displayName},...t.emailAddress&&{emailAddress:t.emailAddress},...t.active!==void 0&&{active:t.active},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}}return await w(o,"jira.users.find",{...s},"completed"),i},ve=async(o,s)=>{let i=await d("users",o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(o.db.users){for(let t of i)if(t.accountId)try{await o.db.users.upsertByEntityId(t.accountId,{accountId:t.accountId,...t.displayName&&{displayName:t.displayName},...t.emailAddress&&{emailAddress:t.emailAddress},...t.active!==void 0&&{active:t.active},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}}return await w(o,"jira.users.getAll",{...s},"completed"),i},Ge=async(o,s)=>{let i=await d("groups/picker",o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});return await w(o,"jira.groups.getAll",{...s},"completed"),i},Te=async(o,s)=>{let i=await d("group",o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{name:s.name}});return await w(o,"jira.groups.create",{...s},"completed"),i};var l={create:se,get:te,edit:oe,delete:re,search:ie,assign:ne,getTransitions:ae,transition:pe,bulkCreate:ue,bulkFetch:de,addAttachment:ce,addWatcher:le,removeWatcher:me,linkIssues:ye},E={add:ge,get:fe,list:Ie,update:he,delete:ke},R={create:be,get:je,list:_e,getRoles:Ee},C={create:Ae,list:Se,moveIssues:we,listBoards:Re},T={getCurrent:Ce,find:Je,getAll:ve},U={getAll:Ge,create:Te};import{z as a}from"zod";var Le=a.object({id:a.string(),key:a.string(),summary:a.string().optional(),description:a.string().optional(),status:a.string().optional(),assigneeAccountId:a.string().optional(),assigneeDisplayName:a.string().optional(),reporterAccountId:a.string().optional(),reporterDisplayName:a.string().optional(),priority:a.string().optional(),issueType:a.string().optional(),projectKey:a.string().optional(),projectId:a.string().optional(),labels:a.array(a.string()).optional(),created:a.string().optional(),updated:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Pe=a.object({id:a.string(),key:a.string(),name:a.string().optional(),description:a.string().optional(),projectTypeKey:a.string().optional(),leadAccountId:a.string().optional(),leadDisplayName:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),xe=a.object({id:a.string(),issueKey:a.string(),body:a.string().optional(),authorAccountId:a.string().optional(),authorDisplayName:a.string().optional(),created:a.string().optional(),updated:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Be=a.object({id:a.number(),name:a.string().optional(),state:a.string().optional(),goal:a.string().optional(),startDate:a.string().optional(),endDate:a.string().optional(),originBoardId:a.number().optional(),createdAt:a.coerce.date().nullable().optional()}),De=a.object({accountId:a.string(),displayName:a.string().optional(),emailAddress:a.string().optional(),active:a.boolean().optional(),timeZone:a.string().optional(),locale:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Ne=a.object({id:a.number(),name:a.string().optional(),type:a.string().optional(),projectId:a.number().optional(),projectKey:a.string().optional(),projectName:a.string().optional(),createdAt:a.coerce.date().nullable().optional()});var Ue={version:"1.0.0",entities:{issues:Le,projects:Pe,comments:xe,sprints:Be,users:De,boards:Ne}};import{logEventFromContext as mt}from"corsair/core";var We={match:j("jira:issue_created"),handler:async(o,s)=>{let i=_(s,o.key);if(!i.valid)return{success:!1,statusCode:401,error:i.error??"Signature verification failed"};let t=s.payload;if(t.issue?.id&&t.issue?.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.issue.id,{id:t.issue.id,key:t.issue.key,...t.issue.fields?.summary&&{summary:t.issue.fields.summary},...t.issue.fields?.status?.name&&{status:t.issue.fields.status.name},...t.issue.fields?.assignee?.accountId&&{assigneeAccountId:t.issue.fields.assignee.accountId},...t.issue.fields?.assignee?.displayName&&{assigneeDisplayName:t.issue.fields.assignee.displayName},...t.issue.fields?.reporter?.accountId&&{reporterAccountId:t.issue.fields.reporter.accountId},...t.issue.fields?.reporter?.displayName&&{reporterDisplayName:t.issue.fields.reporter.displayName},...t.issue.fields?.priority?.name&&{priority:t.issue.fields.priority.name},...t.issue.fields?.issuetype?.name&&{issueType:t.issue.fields.issuetype.name},...t.issue.fields?.project?.key&&{projectKey:t.issue.fields.project.key},...t.issue.fields?.project?.id&&{projectId:t.issue.fields.project.id},...t.issue.fields?.labels&&{labels:t.issue.fields.labels},...t.issue.fields?.created&&{created:t.issue.fields.created},...t.issue.fields?.updated&&{updated:t.issue.fields.updated},createdAt:new Date})}catch(r){console.warn("Failed to save new issue to database:",r)}if(t.user?.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(t.user.accountId,{accountId:t.user.accountId,...t.user.displayName&&{displayName:t.user.displayName},...t.user.emailAddress&&{emailAddress:t.user.emailAddress},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}return await mt(o,"jira.webhook.newIssue",{issueKey:t.issue?.key},"completed"),{success:!0,data:t}}};import{logEventFromContext as yt}from"corsair/core";var Oe={match:j("jira:issue_updated"),handler:async(o,s)=>{let i=_(s,o.key);if(!i.valid)return{success:!1,statusCode:401,error:i.error??"Signature verification failed"};let t=s.payload;if(t.issue?.id&&t.issue?.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.issue.id,{id:t.issue.id,key:t.issue.key,...t.issue.fields?.summary&&{summary:t.issue.fields.summary},...t.issue.fields?.status?.name&&{status:t.issue.fields.status.name},...t.issue.fields?.assignee?.accountId&&{assigneeAccountId:t.issue.fields.assignee.accountId},...t.issue.fields?.assignee?.displayName&&{assigneeDisplayName:t.issue.fields.assignee.displayName},...t.issue.fields?.priority?.name&&{priority:t.issue.fields.priority.name},...t.issue.fields?.issuetype?.name&&{issueType:t.issue.fields.issuetype.name},...t.issue.fields?.project?.key&&{projectKey:t.issue.fields.project.key},...t.issue.fields?.project?.id&&{projectId:t.issue.fields.project.id},...t.issue.fields?.labels&&{labels:t.issue.fields.labels},...t.issue.fields?.updated&&{updated:t.issue.fields.updated}})}catch(r){console.warn("Failed to update issue in database:",r)}if(t.user?.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(t.user.accountId,{accountId:t.user.accountId,...t.user.displayName&&{displayName:t.user.displayName},...t.user.emailAddress&&{emailAddress:t.user.emailAddress},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}return await yt(o,"jira.webhook.updatedIssue",{issueKey:t.issue?.key,changelog:t.changelog},"completed"),{success:!0,data:t}}};import{logEventFromContext as gt}from"corsair/core";var Fe={match:j("project_created"),handler:async(o,s)=>{let i=_(s,o.key);if(!i.valid)return{success:!1,statusCode:401,error:i.error??"Signature verification failed"};let t=s.payload;if(t.project?.id&&t.project?.key&&o.db.projects)try{await o.db.projects.upsertByEntityId(t.project.id,{id:t.project.id,key:t.project.key,...t.project.name&&{name:t.project.name},...t.project.description&&{description:t.project.description},...t.project.projectTypeKey&&{projectTypeKey:t.project.projectTypeKey},...t.project.lead?.accountId&&{leadAccountId:t.project.lead.accountId},...t.project.lead?.displayName&&{leadDisplayName:t.project.lead.displayName},createdAt:new Date})}catch(r){console.warn("Failed to save new project to database:",r)}if(t.project?.lead?.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(t.project.lead.accountId,{accountId:t.project.lead.accountId,...t.project.lead.displayName&&{displayName:t.project.lead.displayName},createdAt:new Date})}catch(r){console.warn("Failed to save project lead to database:",r)}return await gt(o,"jira.webhook.newProject",{projectKey:t.project?.key},"completed"),{success:!0,data:t}}};var W={newIssue:We,updatedIssue:Oe},ze={newProject:Fe};import{ApiError as L}from"corsair/http";var qe={RATE_LIMIT_ERROR:{match:(o,s)=>{if(o instanceof L&&o.status===429)return!0;let i=o.message.toLowerCase();return i.includes("rate_limit")||i.includes("ratelimited")||o.message.includes("429")},handler:async(o,s)=>{let i;return o instanceof L&&o.retryAfter!==void 0&&(i=o.retryAfter),{maxRetries:5,headersRetryAfterMs:i}}},AUTH_ERROR:{match:(o,s)=>{if(o instanceof L&&o.status===401)return!0;let i=o.message.toLowerCase();return i.includes("unauthorized")||i.includes("authentication failed")||i.includes("invalid_auth")},handler:async(o,s)=>(console.log(`[JIRA:${s.operation}] Authentication failed - check your API key (email:apiToken format)`),{maxRetries:0})},PERMISSION_ERROR:{match:(o,s)=>{if(o instanceof L&&o.status===403)return!0;let i=o.message.toLowerCase();return i.includes("permission_denied")||i.includes("forbidden")||i.includes("access_denied")},handler:async(o,s)=>(console.warn(`[JIRA:${s.operation}] Permission denied: ${o.message}`),{maxRetries:0})},DEFAULT:{match:(o,s)=>!0,handler:async(o,s)=>(console.error(`[JIRA:${s.operation}] Unhandled error: ${o.message}`),{maxRetries:0})}};var ft={api_key:{account:["cloud_url"]}},It={issues:{create:l.create,get:l.get,edit:l.edit,delete:l.delete,search:l.search,assign:l.assign,getTransitions:l.getTransitions,transition:l.transition,bulkCreate:l.bulkCreate,bulkFetch:l.bulkFetch,addAttachment:l.addAttachment,addWatcher:l.addWatcher,removeWatcher:l.removeWatcher,linkIssues:l.linkIssues},comments:{add:E.add,get:E.get,list:E.list,update:E.update,delete:E.delete},projects:{create:R.create,get:R.get,list:R.list,getRoles:R.getRoles},sprints:{create:C.create,list:C.list,moveIssues:C.moveIssues,listBoards:C.listBoards},users:{getCurrent:T.getCurrent,find:T.find,getAll:T.getAll},groups:{getAll:U.getAll,create:U.create}},ht={issues:{newIssue:W.newIssue,updatedIssue:W.updatedIssue},projects:{newProject:ze.newProject}},kt={"issues.create":{input:p.issuesCreate,output:u.issuesCreate},"issues.get":{input:p.issuesGet,output:u.issuesGet},"issues.edit":{input:p.issuesEdit,output:u.issuesEdit},"issues.delete":{input:p.issuesDelete,output:u.issuesDelete},"issues.search":{input:p.issuesSearch,output:u.issuesSearch},"issues.assign":{input:p.issuesAssign,output:u.issuesAssign},"issues.getTransitions":{input:p.issuesGetTransitions,output:u.issuesGetTransitions},"issues.transition":{input:p.issuesTransition,output:u.issuesTransition},"issues.bulkCreate":{input:p.issuesBulkCreate,output:u.issuesBulkCreate},"issues.bulkFetch":{input:p.issuesBulkFetch,output:u.issuesBulkFetch},"issues.addAttachment":{input:p.issuesAddAttachment,output:u.issuesAddAttachment},"issues.addWatcher":{input:p.issuesAddWatcher,output:u.issuesAddWatcher},"issues.removeWatcher":{input:p.issuesRemoveWatcher,output:u.issuesRemoveWatcher},"issues.linkIssues":{input:p.issuesLinkIssues,output:u.issuesLinkIssues},"comments.add":{input:p.commentsAdd,output:u.commentsAdd},"comments.get":{input:p.commentsGet,output:u.commentsGet},"comments.list":{input:p.commentsList,output:u.commentsList},"comments.update":{input:p.commentsUpdate,output:u.commentsUpdate},"comments.delete":{input:p.commentsDelete,output:u.commentsDelete},"projects.create":{input:p.projectsCreate,output:u.projectsCreate},"projects.get":{input:p.projectsGet,output:u.projectsGet},"projects.list":{input:p.projectsList,output:u.projectsList},"projects.getRoles":{input:p.projectsGetRoles,output:u.projectsGetRoles},"sprints.create":{input:p.sprintsCreate,output:u.sprintsCreate},"sprints.list":{input:p.sprintsList,output:u.sprintsList},"sprints.moveIssues":{input:p.sprintsMoveIssues,output:u.sprintsMoveIssues},"sprints.listBoards":{input:p.sprintsListBoards,output:u.sprintsListBoards},"users.getCurrent":{input:p.usersGetCurrent,output:u.usersGetCurrent},"users.find":{input:p.usersFind,output:u.usersFind},"users.getAll":{input:p.usersGetAll,output:u.usersGetAll},"groups.getAll":{input:p.groupsGetAll,output:u.groupsGetAll},"groups.create":{input:p.groupsCreate,output:u.groupsCreate}},bt="api_key",jt={"issues.create":{riskLevel:"write",description:"Create a new Jira issue"},"issues.get":{riskLevel:"read",description:"Get a Jira issue by ID or key"},"issues.edit":{riskLevel:"write",description:"Edit an existing Jira issue"},"issues.delete":{riskLevel:"destructive",description:"Delete a Jira issue [DESTRUCTIVE]"},"issues.search":{riskLevel:"read",description:"Search issues using JQL"},"issues.assign":{riskLevel:"write",description:"Assign a Jira issue to a user"},"issues.getTransitions":{riskLevel:"read",description:"Get available transitions for a Jira issue"},"issues.transition":{riskLevel:"write",description:"Transition a Jira issue to a new status"},"issues.bulkCreate":{riskLevel:"write",description:"Bulk create multiple Jira issues"},"issues.bulkFetch":{riskLevel:"read",description:"Bulk fetch multiple Jira issues by ID or key"},"issues.addAttachment":{riskLevel:"write",description:"Add an attachment to a Jira issue"},"issues.addWatcher":{riskLevel:"write",description:"Add a watcher to a Jira issue"},"issues.removeWatcher":{riskLevel:"write",description:"Remove a watcher from a Jira issue"},"issues.linkIssues":{riskLevel:"write",description:"Link two Jira issues together"},"comments.add":{riskLevel:"write",description:"Add a comment to a Jira issue"},"comments.get":{riskLevel:"read",description:"Get a specific comment on a Jira issue"},"comments.list":{riskLevel:"read",description:"List all comments on a Jira issue"},"comments.update":{riskLevel:"write",description:"Update a comment on a Jira issue"},"comments.delete":{riskLevel:"destructive",description:"Delete a comment from a Jira issue [DESTRUCTIVE]"},"projects.create":{riskLevel:"write",description:"Create a new Jira project"},"projects.get":{riskLevel:"read",description:"Get a Jira project by ID or key"},"projects.list":{riskLevel:"read",description:"List Jira projects"},"projects.getRoles":{riskLevel:"read",description:"Get project roles for a Jira project"},"sprints.create":{riskLevel:"write",description:"Create a new sprint on a Jira board"},"sprints.list":{riskLevel:"read",description:"List sprints for a Jira board"},"sprints.moveIssues":{riskLevel:"write",description:"Move issues to a sprint"},"sprints.listBoards":{riskLevel:"read",description:"List Jira boards"},"users.getCurrent":{riskLevel:"read",description:"Get the currently authenticated Jira user"},"users.find":{riskLevel:"read",description:"Search for Jira users"},"users.getAll":{riskLevel:"read",description:"Get all Jira users"},"groups.getAll":{riskLevel:"read",description:"Get all Jira groups"},"groups.create":{riskLevel:"write",description:"Create a new Jira group"}},_t={"issues.newIssue":{description:"Triggered when a new issue is created in Jira",payload:V,response:B},"issues.updatedIssue":{description:"Triggered when an issue is updated in Jira",payload:Z,response:D},"projects.newProject":{description:"Triggered when a new project is created in Jira",payload:Q,response:N}};function Io(o={}){let s={...o,authType:o.authType??bt};return{id:"jira",schema:Ue,options:s,hooks:s.hooks,webhookHooks:s.webhookHooks,endpoints:It,webhooks:ht,authConfig:ft,endpointMeta:jt,endpointSchemas:kt,webhookSchemas:_t,pluginWebhookMatcher:i=>"x-atlassian-webhook-identifier"in i.headers,errorHandlers:{...qe,...s.errorHandlers},keyBuilder:async(i,t)=>{if(t==="webhook"&&s.webhookSecret)return s.webhookSecret;if(t==="webhook"){let r=await i.keys.get_webhook_signature();return r||""}if(t==="endpoint"&&s.key)return s.key;if(t==="endpoint"&&i.authType==="api_key"){let r=await i.keys.get_api_key();return r||""}return""}}}export{j as createJiraMatch,Io as jira,ft as jiraAuthConfig,kt as jiraEndpointSchemas};
|
|
1
|
+
import{logEventFromContext as w}from"corsair/core";import{request as O}from"corsair/http";var J=class extends Error{constructor(i,t){super(i);this.code=t;this.name="JiraAPIError"}},F={enabled:!0,maxRetries:3,initialRetryDelay:1e3,backoffMultiplier:2,headerNames:{retryAfter:"Retry-After"}};async function d(o,s,i,t={}){let{method:r="GET",body:c,query:g}=t,f={BASE:`${i}/rest/api/3`,VERSION:"3",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",TOKEN:void 0,HEADERS:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Basic ${Buffer.from(s).toString("base64")}`}};return await O(f,{method:r,url:o,body:r==="POST"||r==="PUT"||r==="PATCH"?c:void 0,mediaType:"application/json; charset=utf-8",query:r==="GET"||r==="DELETE"?g:void 0},{rateLimitConfig:F})}async function z(o,s,i,t){let r,c=t.mimeType;if(t.url){let y=await fetch(t.url);if(!y.ok)throw new J(`Failed to fetch file from URL: ${y.status} ${y.statusText}`,String(y.status));r=Buffer.from(await y.arrayBuffer()),c??=y.headers.get("content-type")?.split(";")[0]??"application/octet-stream"}else r=Buffer.from(t.content,"base64"),c??="application/octet-stream";let g=new FormData,f=new Blob([new Uint8Array(r)],{type:c});g.append("file",f,t.name);let h=await fetch(`${i}/rest/api/3/issue/${o}/attachments`,{method:"POST",headers:{Authorization:`Basic ${Buffer.from(s).toString("base64")}`,"X-Atlassian-Token":"no-check",Accept:"application/json"},body:g});if(!h.ok){let y=await h.text();throw new J(`Failed to upload attachment: ${h.status} ${y}`,String(h.status))}return h.json()}async function A(o,s,i,t={}){let{method:r="GET",body:c,query:g}=t,f={BASE:`${i}/rest/agile/1.0`,VERSION:"1.0",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",TOKEN:void 0,HEADERS:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Basic ${Buffer.from(s).toString("base64")}`}};return await O(f,{method:r,url:o,body:r==="POST"||r==="PUT"||r==="PATCH"?c:void 0,mediaType:"application/json; charset=utf-8",query:r==="GET"||r==="DELETE"?g:void 0},{rateLimitConfig:F})}import{z as e}from"zod";var I=o=>({version:1,type:"doc",content:[{type:"paragraph",content:[{type:"text",text:o}]}]}),k=e.object({accountId:e.string().optional(),displayName:e.string().optional(),emailAddress:e.string().optional(),active:e.boolean().optional(),avatarUrls:e.record(e.string()).optional()}),K=e.object({id:e.string().optional(),name:e.string().optional(),statusCategory:e.object({id:e.number().optional(),key:e.string().optional(),name:e.string().optional()}).optional()}),qe=e.object({id:e.string().optional(),name:e.string().optional(),iconUrl:e.string().optional()}),Me=e.object({id:e.string().optional(),name:e.string().optional(),description:e.string().optional(),subtask:e.boolean().optional()}),$e=e.object({id:e.string().optional(),key:e.string().optional(),name:e.string().optional()}),He=e.object({summary:e.string().optional(),description:e.unknown().optional(),status:K.optional(),assignee:k.nullable().optional(),reporter:k.optional(),priority:qe.nullable().optional(),issuetype:Me.optional(),project:$e.optional(),labels:e.array(e.string()).optional(),created:e.string().optional(),updated:e.string().optional(),comment:e.object({total:e.number().optional(),comments:e.array(e.unknown()).optional()}).optional()}),L=e.object({id:e.string(),key:e.string().optional(),self:e.string().optional(),fields:He.optional()}),P=e.object({id:e.string().optional(),self:e.string().optional(),author:k.optional(),body:e.unknown().optional(),renderedBody:e.string().optional(),created:e.string().optional(),updated:e.string().optional()}),q=e.object({id:e.string().optional(),key:e.string().optional(),name:e.string().optional(),description:e.string().optional(),projectTypeKey:e.string().optional(),lead:k.optional(),self:e.string().optional()}),M=e.object({id:e.number().optional(),name:e.string().optional(),state:e.string().optional(),goal:e.string().optional(),startDate:e.string().optional(),endDate:e.string().optional(),completeDate:e.string().optional(),createdDate:e.string().optional(),originBoardId:e.number().optional(),self:e.string().optional()}),Ve=e.object({id:e.number().optional(),name:e.string().optional(),type:e.string().optional(),self:e.string().optional(),location:e.object({projectId:e.number().optional(),projectKey:e.string().optional(),projectName:e.string().optional()}).optional()}),Ze=e.object({id:e.string().optional(),name:e.string().optional(),to:K.optional()}),Qe=e.object({project_key:e.string(),summary:e.string(),issue_type:e.string().optional(),description:e.string().optional(),assignee:e.string().optional(),priority:e.string().optional(),labels:e.array(e.string()).optional(),due_date:e.string().optional(),parent:e.string().optional()}),Xe=e.object({id:e.string().optional(),key:e.string().optional(),self:e.string().optional()}),Ye=e.object({issue_id_or_key:e.string(),fields:e.string().optional(),expand:e.string().optional()}),es=L,ss=e.object({issue_id_or_key:e.string(),summary:e.string().optional(),description:e.string().optional(),assignee:e.string().optional(),priority:e.string().optional(),labels:e.array(e.string()).optional(),due_date:e.string().optional(),notify_users:e.boolean().optional()}),ts=e.object({success:e.boolean(),issue_key:e.string().optional()}),os=e.object({issue_id_or_key:e.string(),delete_subtasks:e.boolean().optional()}),rs=e.object({success:e.boolean(),message:e.string().optional()}),is=e.object({jql:e.string(),start_at:e.number().optional(),max_results:e.number().optional(),fields:e.string().optional(),expand:e.string().optional()}),ns=e.object({total:e.number().optional(),startAt:e.number().optional(),maxResults:e.number().optional(),issues:e.array(L).optional()}),as=e.object({issue_id_or_key:e.string(),account_id:e.string().nullable().optional()}),ps=e.object({success:e.boolean()}),us=e.object({issue_id_or_key:e.string()}),ds=e.object({transitions:e.array(Ze).optional()}),cs=e.object({issue_id_or_key:e.string(),transition_id:e.string(),comment:e.string().optional()}),ls=e.object({success:e.boolean()}),ms=e.object({issues:e.array(e.object({project_key:e.string(),summary:e.string(),issue_type:e.string().optional(),description:e.string().optional(),assignee:e.string().optional(),priority:e.string().optional()}))}),ys=e.object({issues:e.array(e.object({id:e.string().optional(),key:e.string().optional(),self:e.string().optional()})).optional(),errors:e.array(e.unknown()).optional()}),gs=e.object({issue_ids_or_keys:e.array(e.string()),fields:e.array(e.string()).optional(),expand:e.string().optional()}),fs=e.object({issues:e.array(L).optional(),issueErrors:e.array(e.unknown()).optional()}),hs=e.object({issue_id_or_key:e.string(),file_name:e.string(),file_content:e.string().optional(),file_url:e.string().url().optional(),mime_type:e.string().optional()}).refine(o=>o.file_content!==void 0||o.file_url!==void 0,{message:"Either file_content (base64) or file_url must be provided"}),Is=e.array(e.object({id:e.string().optional(),self:e.string().optional(),filename:e.string().optional(),mimeType:e.string().optional(),size:e.number().optional(),content:e.string().optional(),created:e.string().optional()})),ks=e.object({issue_id_or_key:e.string(),account_id:e.string()}),bs=e.object({success:e.boolean()}),js=e.object({issue_id_or_key:e.string(),account_id:e.string()}),_s=e.object({success:e.boolean()}),Es=e.object({link_type:e.string(),inward_issue_key:e.string(),outward_issue_key:e.string(),comment:e.string().optional()}),As=e.object({success:e.boolean()}),ws=e.object({issue_id_or_key:e.string(),comment:e.string(),visibility_type:e.string().optional(),visibility_value:e.string().optional()}),Ss=e.object({id:e.string().optional(),self:e.string().optional(),author:k.optional(),created:e.string().optional()}),Rs=e.object({issue_id_or_key:e.string(),comment_id:e.string()}),Cs=P,Js=e.object({issue_id_or_key:e.string(),start_at:e.number().optional(),max_results:e.number().optional(),order_by:e.string().optional()}),vs=e.object({total:e.number().optional(),startAt:e.number().optional(),maxResults:e.number().optional(),comments:e.array(P).optional()}),Gs=e.object({issue_id_or_key:e.string(),comment_id:e.string(),comment:e.string()}),Ts=P,xs=e.object({issue_id_or_key:e.string(),comment_id:e.string()}),Ls=e.object({success:e.boolean()}),Ps=e.object({key:e.string(),name:e.string(),project_type_key:e.string().optional(),description:e.string().optional(),lead_account_id:e.string().optional(),assignee_type:e.string().optional()}),Bs=e.object({id:e.union([e.string(),e.number()]).optional(),key:e.string().optional(),self:e.string().optional()}),Ds=e.object({project_id_or_key:e.string(),expand:e.string().optional()}),Ns=q,Us=e.object({query:e.string().optional(),order_by:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional(),expand:e.string().optional()}),Ws=e.object({total:e.number().optional(),startAt:e.number().optional(),maxResults:e.number().optional(),isLast:e.boolean().optional(),values:e.array(q).optional()}),Os=e.object({project_id_or_key:e.string()}),Fs=e.record(e.string()),zs=e.object({origin_board_id:e.number(),name:e.string(),goal:e.string().optional(),start_date:e.string().optional(),end_date:e.string().optional()}),Ks=M,qs=e.object({board_id:e.number(),state:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional()}),Ms=e.object({maxResults:e.number().optional(),startAt:e.number().optional(),isLast:e.boolean().optional(),values:e.array(M).optional()}),$s=e.object({sprint_id:e.number(),issue_keys:e.array(e.string())}),Hs=e.object({success:e.boolean()}),Vs=e.object({project_key_or_id:e.string().optional(),type:e.string().optional(),name:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional()}),Zs=e.object({maxResults:e.number().optional(),startAt:e.number().optional(),isLast:e.boolean().optional(),total:e.number().optional(),values:e.array(Ve).optional()}),Qs=e.object({}),Xs=k.extend({accountId:e.string(),displayName:e.string().optional(),emailAddress:e.string().optional(),timeZone:e.string().optional(),locale:e.string().optional()}),Ys=e.object({query:e.string().optional(),account_id:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional()}),et=e.array(k),st=e.object({start_at:e.number().optional(),max_results:e.number().optional()}),tt=e.array(k),ot=e.object({start_at:e.number().optional(),max_results:e.number().optional()}),rt=e.object({total:e.number().optional(),header:e.string().optional(),groups:e.array(e.object({groupId:e.string().optional(),name:e.string().optional(),html:e.string().optional()})).optional()}),it=e.object({name:e.string()}),nt=e.object({groupId:e.string().optional(),name:e.string().optional(),self:e.string().optional()}),p={issuesCreate:Qe,issuesGet:Ye,issuesEdit:ss,issuesDelete:os,issuesSearch:is,issuesAssign:as,issuesGetTransitions:us,issuesTransition:cs,issuesBulkCreate:ms,issuesBulkFetch:gs,issuesAddAttachment:hs,issuesAddWatcher:ks,issuesRemoveWatcher:js,issuesLinkIssues:Es,commentsAdd:ws,commentsGet:Rs,commentsList:Js,commentsUpdate:Gs,commentsDelete:xs,projectsCreate:Ps,projectsGet:Ds,projectsList:Us,projectsGetRoles:Os,sprintsCreate:zs,sprintsList:qs,sprintsMoveIssues:$s,sprintsListBoards:Vs,usersGetCurrent:Qs,usersFind:Ys,usersGetAll:st,groupsGetAll:ot,groupsCreate:it},u={issuesCreate:Xe,issuesGet:es,issuesEdit:ts,issuesDelete:rs,issuesSearch:ns,issuesAssign:ps,issuesGetTransitions:ds,issuesTransition:ls,issuesBulkCreate:ys,issuesBulkFetch:fs,issuesAddAttachment:Is,issuesAddWatcher:bs,issuesRemoveWatcher:_s,issuesLinkIssues:As,commentsAdd:Ss,commentsGet:Cs,commentsList:vs,commentsUpdate:Ts,commentsDelete:Ls,projectsCreate:Bs,projectsGet:Ns,projectsList:Ws,projectsGetRoles:Fs,sprintsCreate:Ks,sprintsList:Ms,sprintsMoveIssues:Hs,sprintsListBoards:Zs,usersGetCurrent:Xs,usersFind:et,usersGetAll:tt,groupsGetAll:rt,groupsCreate:nt};var $=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{body:I(s.comment),...s.visibility_type&&s.visibility_value&&{visibility:{type:s.visibility_type,value:s.visibility_value}}}});if(i.id&&o.db.comments)try{await o.db.comments.upsertByEntityId(i.id,{id:i.id,issueKey:s.issue_id_or_key,body:s.comment,authorAccountId:i.author?.accountId,authorDisplayName:i.author?.displayName,created:i.created,createdAt:new Date})}catch(t){console.warn("Failed to save comment to database:",t)}return await w(o,"jira.comments.add",{...s},"completed"),i},H=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment/${s.comment_id}`,o.key,await o.keys.get_cloud_url()??"",{method:"GET"});if(i.id&&o.db.comments)try{await o.db.comments.upsertByEntityId(i.id,{id:i.id,issueKey:s.issue_id_or_key,authorAccountId:i.author?.accountId,authorDisplayName:i.author?.displayName,created:i.created,updated:i.updated,createdAt:new Date})}catch(t){console.warn("Failed to save comment to database:",t)}return await w(o,"jira.comments.get",{...s},"completed"),i},V=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment`,o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{startAt:s.start_at,maxResults:s.max_results,orderBy:s.order_by}});if(i.comments&&o.db.comments){for(let t of i.comments)if(t.id)try{await o.db.comments.upsertByEntityId(t.id,{id:t.id,issueKey:s.issue_id_or_key,authorAccountId:t.author?.accountId,authorDisplayName:t.author?.displayName,created:t.created,updated:t.updated,createdAt:new Date})}catch(r){console.warn("Failed to save comment to database:",r)}}return await w(o,"jira.comments.list",{...s},"completed"),i},Z=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment/${s.comment_id}`,o.key,await o.keys.get_cloud_url()??"",{method:"PUT",body:{body:I(s.comment)}});if(i.id&&o.db.comments)try{await o.db.comments.upsertByEntityId(i.id,{id:i.id,issueKey:s.issue_id_or_key,body:s.comment,updated:i.updated})}catch(t){console.warn("Failed to update comment in database:",t)}return await w(o,"jira.comments.update",{...s},"completed"),i},Q=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/comment/${s.comment_id}`,o.key,await o.keys.get_cloud_url()??"",{method:"DELETE"}),await w(o,"jira.comments.delete",{...s},"completed"),{success:!0});import{logEventFromContext as m}from"corsair/core";var X=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("issue",o.key,i,{method:"POST",body:{fields:{project:{key:s.project_key},summary:s.summary,issuetype:{name:s.issue_type??"Task"},...s.description&&{description:I(s.description)},...s.assignee&&{assignee:{accountId:s.assignee}},...s.priority&&{priority:{name:s.priority}},...s.labels&&{labels:s.labels},...s.due_date&&{duedate:s.due_date},...s.parent&&{parent:{key:s.parent}}}}});if(t.id&&t.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.id,{id:t.id,key:t.key,summary:s.summary,issueType:s.issue_type??"Task",projectKey:s.project_key,createdAt:new Date})}catch(r){console.warn("Failed to save issue to database:",r)}return await m(o,"jira.issues.create",{...s},"completed"),t},Y=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d(`issue/${s.issue_id_or_key}`,o.key,i,{method:"GET",query:{fields:s.fields,expand:s.expand}});if(t.id&&t.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.id,{id:t.id,key:t.key,summary:t.fields?.summary,status:t.fields?.status?.name,assigneeAccountId:t.fields?.assignee?.accountId,assigneeDisplayName:t.fields?.assignee?.displayName,reporterAccountId:t.fields?.reporter?.accountId,reporterDisplayName:t.fields?.reporter?.displayName,priority:t.fields?.priority?.name??void 0,issueType:t.fields?.issuetype?.name,projectKey:t.fields?.project?.key,projectId:t.fields?.project?.id,labels:t.fields?.labels,created:t.fields?.created,updated:t.fields?.updated,createdAt:new Date})}catch(r){console.warn("Failed to save issue to database:",r)}return await m(o,"jira.issues.get",{...s},"completed"),t},ee=async(o,s)=>{let i=await o.keys.get_cloud_url()??"";return await d(`issue/${s.issue_id_or_key}`,o.key,i,{method:"PUT",body:{fields:{...s.summary!==void 0&&{summary:s.summary},...s.description!==void 0&&{description:I(s.description)},...s.assignee!==void 0&&{assignee:s.assignee?{accountId:s.assignee}:null},...s.priority!==void 0&&{priority:{name:s.priority}},...s.labels!==void 0&&{labels:s.labels},...s.due_date!==void 0&&{duedate:s.due_date}},update:{},notifyUsers:s.notify_users??!0}}),await m(o,"jira.issues.edit",{...s},"completed"),{success:!0,issue_key:s.issue_id_or_key}},se=async(o,s)=>(await d(`issue/${s.issue_id_or_key}`,o.key,await o.keys.get_cloud_url()??"",{method:"DELETE",query:{deleteSubtasks:s.delete_subtasks?"true":"false"}}),await m(o,"jira.issues.delete",{...s},"completed"),{success:!0,message:`Issue ${s.issue_id_or_key} deleted`}),te=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("search/jql",o.key,i,{method:"GET",query:{jql:s.jql,startAt:s.start_at,maxResults:s.max_results,fields:s.fields,expand:s.expand}});if(t.issues&&o.db.issues){for(let r of t.issues)if(!(!r.id||!r.key))try{await o.db.issues.upsertByEntityId(r.id,{id:r.id,key:r.key,summary:r.fields?.summary,status:r.fields?.status?.name,assigneeAccountId:r.fields?.assignee?.accountId,assigneeDisplayName:r.fields?.assignee?.displayName,priority:r.fields?.priority?.name??void 0,issueType:r.fields?.issuetype?.name,projectKey:r.fields?.project?.key,createdAt:new Date})}catch(c){console.warn("Failed to save issue to database:",c)}}return await m(o,"jira.issues.search",{...s},"completed"),t},oe=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/assignee`,o.key,await o.keys.get_cloud_url()??"",{method:"PUT",body:{accountId:s.account_id??null}}),await m(o,"jira.issues.assign",{...s},"completed"),{success:!0}),re=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/transitions`,o.key,await o.keys.get_cloud_url()??"",{method:"GET"});return await m(o,"jira.issues.getTransitions",{...s},"completed"),i},ie=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/transitions`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{transition:{id:s.transition_id},...s.comment&&{update:{comment:[{add:{body:I(s.comment)}}]}}}}),await m(o,"jira.issues.transition",{...s},"completed"),{success:!0}),ne=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("issue/bulk",o.key,i,{method:"POST",body:{issueUpdates:s.issues.map(r=>({fields:{project:{key:r.project_key},summary:r.summary,issuetype:{name:r.issue_type??"Task"},...r.assignee&&{assignee:{accountId:r.assignee}},...r.priority&&{priority:{name:r.priority}},...r.description&&{description:I(r.description)}}}))}});if(t.issues&&o.db.issues)for(let r of t.issues){if(!r.id||!r.key)continue;let c=s.issues.find((g,f)=>t.issues?.[f]?.key===r.key);try{await o.db.issues.upsertByEntityId(r.id,{id:r.id,key:r.key,summary:c?.summary,issueType:c?.issue_type??"Task",projectKey:c?.project_key,createdAt:new Date})}catch(g){console.warn("Failed to save bulk issue to database:",g)}}return await m(o,"jira.issues.bulkCreate",{count:s.issues.length},"completed"),t},ae=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("issue/bulkfetch",o.key,i,{method:"POST",body:{issueIdsOrKeys:s.issue_ids_or_keys,...s.fields&&{fields:s.fields},...s.expand&&{expand:[s.expand]}}});if(t.issues&&o.db.issues){for(let r of t.issues)if(!(!r.id||!r.key))try{await o.db.issues.upsertByEntityId(r.id,{id:r.id,key:r.key,summary:r.fields?.summary,status:r.fields?.status?.name,assigneeAccountId:r.fields?.assignee?.accountId,assigneeDisplayName:r.fields?.assignee?.displayName,priority:r.fields?.priority?.name??void 0,issueType:r.fields?.issuetype?.name,projectKey:r.fields?.project?.key,createdAt:new Date})}catch(c){console.warn("Failed to save issue to database:",c)}}return await m(o,"jira.issues.bulkFetch",{count:s.issue_ids_or_keys.length},"completed"),t},pe=async(o,s)=>{let i=await z(s.issue_id_or_key,o.key,await o.keys.get_cloud_url()??"",{name:s.file_name,mimeType:s.mime_type,...s.file_url?{url:s.file_url}:{content:s.file_content}});return await m(o,"jira.issues.addAttachment",{...s},"completed"),i},ue=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/watchers`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:s.account_id}),await m(o,"jira.issues.addWatcher",{...s},"completed"),{success:!0}),de=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/watchers`,o.key,await o.keys.get_cloud_url()??"",{method:"DELETE",query:{accountId:s.account_id}}),await m(o,"jira.issues.removeWatcher",{...s},"completed"),{success:!0}),ce=async(o,s)=>(await d("issueLink",o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{type:{name:s.link_type},inwardIssue:{key:s.inward_issue_key},outwardIssue:{key:s.outward_issue_key},...s.comment&&{comment:{body:I(s.comment)}}}}),await m(o,"jira.issues.linkIssues",{...s},"completed"),{success:!0});import{logEventFromContext as v}from"corsair/core";var le=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("project",o.key,i,{method:"POST",body:{key:s.key,name:s.name,projectTypeKey:s.project_type_key??"software",assigneeType:s.assignee_type??"UNASSIGNED",...s.description&&{description:s.description},...s.lead_account_id&&{leadAccountId:s.lead_account_id}}});if(t.id&&t.key&&o.db.projects)try{let r=String(t.id);await o.db.projects.upsertByEntityId(r,{id:r,key:t.key,name:s.name,...s.description&&{description:s.description},projectTypeKey:s.project_type_key??"software",...s.lead_account_id&&{leadAccountId:s.lead_account_id},createdAt:new Date})}catch(r){console.warn("Failed to save project to database:",r)}return await v(o,"jira.projects.create",{...s},"completed"),t},me=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d(`project/${s.project_id_or_key}`,o.key,i,{method:"GET",query:{...s.expand&&{expand:s.expand}}});if(t.id&&t.key&&o.db.projects)try{await o.db.projects.upsertByEntityId(t.id,{id:t.id,key:t.key,...t.name&&{name:t.name},...t.description&&{description:t.description},...t.projectTypeKey&&{projectTypeKey:t.projectTypeKey},...t.lead?.accountId&&{leadAccountId:t.lead.accountId},...t.lead?.displayName&&{leadDisplayName:t.lead.displayName},createdAt:new Date})}catch(r){console.warn("Failed to save project to database:",r)}return await v(o,"jira.projects.get",{...s},"completed"),t},ye=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("project/search",o.key,i,{method:"GET",query:{...s.query&&{query:s.query},...s.order_by&&{orderBy:s.order_by},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results},...s.expand&&{expand:s.expand}}});if(t.values&&o.db.projects){for(let r of t.values)if(!(!r.id||!r.key))try{await o.db.projects.upsertByEntityId(r.id,{id:r.id,key:r.key,...r.name&&{name:r.name},...r.description&&{description:r.description},...r.projectTypeKey&&{projectTypeKey:r.projectTypeKey},...r.lead?.accountId&&{leadAccountId:r.lead.accountId},...r.lead?.displayName&&{leadDisplayName:r.lead.displayName},createdAt:new Date})}catch(c){console.warn("Failed to save project to database:",c)}}return await v(o,"jira.projects.list",{...s},"completed"),t},ge=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d(`project/${s.project_id_or_key}/role`,o.key,i,{method:"GET"});return await v(o,"jira.projects.getRoles",{...s},"completed"),t};import{logEventFromContext as G}from"corsair/core";var fe=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await A("sprint",o.key,i,{method:"POST",body:{originBoardId:s.origin_board_id,name:s.name,...s.goal&&{goal:s.goal},...s.start_date&&{startDate:s.start_date},...s.end_date&&{endDate:s.end_date}}});if(t.id&&o.db.sprints)try{await o.db.sprints.upsertByEntityId(String(t.id),{id:t.id,...t.name&&{name:t.name},...t.state&&{state:t.state},...t.goal&&{goal:t.goal},...t.startDate&&{startDate:t.startDate},...t.endDate&&{endDate:t.endDate},...t.originBoardId&&{originBoardId:t.originBoardId},createdAt:new Date})}catch(r){console.warn("Failed to save sprint to database:",r)}return await G(o,"jira.sprints.create",{...s},"completed"),t},he=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await A(`board/${s.board_id}/sprint`,o.key,i,{method:"GET",query:{...s.state&&{state:s.state},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(t.values&&o.db.sprints){for(let r of t.values)if(r.id)try{await o.db.sprints.upsertByEntityId(String(r.id),{id:r.id,...r.name&&{name:r.name},...r.state&&{state:r.state},...r.goal&&{goal:r.goal},...r.startDate&&{startDate:r.startDate},...r.endDate&&{endDate:r.endDate},...r.originBoardId&&{originBoardId:r.originBoardId},createdAt:new Date})}catch(c){console.warn("Failed to save sprint to database:",c)}}return await G(o,"jira.sprints.list",{...s},"completed"),t},Ie=async(o,s)=>(await A(`sprint/${s.sprint_id}/issue`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{issues:s.issue_keys}}),await G(o,"jira.sprints.moveIssues",{...s},"completed"),{success:!0}),ke=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await A("board",o.key,i,{method:"GET",query:{...s.project_key_or_id&&{projectKeyOrId:s.project_key_or_id},...s.type&&{type:s.type},...s.name&&{name:s.name},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(t.values&&o.db.boards){for(let r of t.values)if(r.id)try{await o.db.boards.upsertByEntityId(String(r.id),{id:r.id,...r.name&&{name:r.name},...r.type&&{type:r.type},...r.location?.projectId&&{projectId:r.location.projectId},...r.location?.projectKey&&{projectKey:r.location.projectKey},...r.location?.projectName&&{projectName:r.location.projectName},createdAt:new Date})}catch(c){console.warn("Failed to save board to database:",c)}}return await G(o,"jira.sprints.listBoards",{...s},"completed"),t};import{logEventFromContext as S}from"corsair/core";var be=async(o,s)=>{let i=await d("myself",o.key,await o.keys.get_cloud_url()??"",{method:"GET"});if(i.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(i.accountId,{accountId:i.accountId,...i.displayName&&{displayName:i.displayName},...i.emailAddress&&{emailAddress:i.emailAddress},...i.active!==void 0&&{active:i.active},...i.timeZone&&{timeZone:i.timeZone},...i.locale&&{locale:i.locale},createdAt:new Date})}catch(t){console.warn("Failed to save current user to database:",t)}return await S(o,"jira.users.getCurrent",{},"completed"),i},je=async(o,s)=>{let i=await d("users/search",o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{...s.query&&{query:s.query},...s.account_id&&{accountId:s.account_id},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(o.db.users){for(let t of i)if(t.accountId)try{await o.db.users.upsertByEntityId(t.accountId,{accountId:t.accountId,...t.displayName&&{displayName:t.displayName},...t.emailAddress&&{emailAddress:t.emailAddress},...t.active!==void 0&&{active:t.active},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}}return await S(o,"jira.users.find",{...s},"completed"),i},_e=async(o,s)=>{let i=await d("users",o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(o.db.users){for(let t of i)if(t.accountId)try{await o.db.users.upsertByEntityId(t.accountId,{accountId:t.accountId,...t.displayName&&{displayName:t.displayName},...t.emailAddress&&{emailAddress:t.emailAddress},...t.active!==void 0&&{active:t.active},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}}return await S(o,"jira.users.getAll",{...s},"completed"),i},Ee=async(o,s)=>{let i=await d("groups/picker",o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});return await S(o,"jira.groups.getAll",{...s},"completed"),i},Ae=async(o,s)=>{let i=await d("group",o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{name:s.name}});return await S(o,"jira.groups.create",{...s},"completed"),i};var l={create:X,get:Y,edit:ee,delete:se,search:te,assign:oe,getTransitions:re,transition:ie,bulkCreate:ne,bulkFetch:ae,addAttachment:pe,addWatcher:ue,removeWatcher:de,linkIssues:ce},_={add:$,get:H,list:V,update:Z,delete:Q},R={create:le,get:me,list:ye,getRoles:ge},C={create:fe,list:he,moveIssues:Ie,listBoards:ke},T={getCurrent:be,find:je,getAll:_e},B={getAll:Ee,create:Ae};import{ApiError as x}from"corsair/http";var we={RATE_LIMIT_ERROR:{match:(o,s)=>{if(o instanceof x&&o.status===429)return!0;let i=o.message.toLowerCase();return i.includes("rate_limit")||i.includes("ratelimited")||o.message.includes("429")},handler:async(o,s)=>{let i;return o instanceof x&&o.retryAfter!==void 0&&(i=o.retryAfter),{maxRetries:5,headersRetryAfterMs:i}}},AUTH_ERROR:{match:(o,s)=>{if(o instanceof x&&o.status===401)return!0;let i=o.message.toLowerCase();return i.includes("unauthorized")||i.includes("authentication failed")||i.includes("invalid_auth")},handler:async(o,s)=>(console.log(`[JIRA:${s.operation}] Authentication failed - check your API key (email:apiToken format)`),{maxRetries:0})},PERMISSION_ERROR:{match:(o,s)=>{if(o instanceof x&&o.status===403)return!0;let i=o.message.toLowerCase();return i.includes("permission_denied")||i.includes("forbidden")||i.includes("access_denied")},handler:async(o,s)=>(console.warn(`[JIRA:${s.operation}] Permission denied: ${o.message}`),{maxRetries:0})},DEFAULT:{match:(o,s)=>!0,handler:async(o,s)=>(console.error(`[JIRA:${s.operation}] Unhandled error: ${o.message}`),{maxRetries:0})}};import{z as a}from"zod";var Se=a.object({id:a.string(),key:a.string(),summary:a.string().optional(),description:a.string().optional(),status:a.string().optional(),assigneeAccountId:a.string().optional(),assigneeDisplayName:a.string().optional(),reporterAccountId:a.string().optional(),reporterDisplayName:a.string().optional(),priority:a.string().optional(),issueType:a.string().optional(),projectKey:a.string().optional(),projectId:a.string().optional(),labels:a.array(a.string()).optional(),created:a.string().optional(),updated:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Re=a.object({id:a.string(),key:a.string(),name:a.string().optional(),description:a.string().optional(),projectTypeKey:a.string().optional(),leadAccountId:a.string().optional(),leadDisplayName:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Ce=a.object({id:a.string(),issueKey:a.string(),body:a.string().optional(),authorAccountId:a.string().optional(),authorDisplayName:a.string().optional(),created:a.string().optional(),updated:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Je=a.object({id:a.number(),name:a.string().optional(),state:a.string().optional(),goal:a.string().optional(),startDate:a.string().optional(),endDate:a.string().optional(),originBoardId:a.number().optional(),createdAt:a.coerce.date().nullable().optional()}),ve=a.object({accountId:a.string(),displayName:a.string().optional(),emailAddress:a.string().optional(),active:a.boolean().optional(),timeZone:a.string().optional(),locale:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Ge=a.object({id:a.number(),name:a.string().optional(),type:a.string().optional(),projectId:a.number().optional(),projectKey:a.string().optional(),projectName:a.string().optional(),createdAt:a.coerce.date().nullable().optional()});var Te={version:"1.0.0",entities:{issues:Se,projects:Re,comments:Ce,sprints:Je,users:ve,boards:Ge}};import{logEventFromContext as mt}from"corsair/core";import xe from"crypto";import{z as n}from"zod";var b=n.object({accountId:n.string().optional(),displayName:n.string().optional(),emailAddress:n.string().optional()}),Le=n.object({id:n.string().optional(),name:n.string().optional(),statusCategory:n.object({key:n.string().optional(),name:n.string().optional()}).optional()}),Pe=n.object({id:n.string().optional(),name:n.string().optional()}),Be=n.object({id:n.string().optional(),name:n.string().optional(),subtask:n.boolean().optional()}),De=n.object({id:n.string().optional(),key:n.string().optional(),name:n.string().optional()}),D=n.object({webhookEvent:n.literal("jira:issue_created"),timestamp:n.number().optional(),issue:n.object({id:n.string().optional(),key:n.string().optional(),self:n.string().optional(),fields:n.object({summary:n.string().optional(),status:Le.optional(),assignee:b.nullable().optional(),reporter:b.optional(),priority:Pe.nullable().optional(),issuetype:Be.optional(),project:De.optional(),labels:n.array(n.string()).optional(),created:n.string().optional(),updated:n.string().optional()}).optional()}).optional(),user:b.optional()}),N=n.object({webhookEvent:n.literal("jira:issue_updated"),timestamp:n.number().optional(),issue:n.object({id:n.string().optional(),key:n.string().optional(),self:n.string().optional(),fields:n.object({summary:n.string().optional(),status:Le.optional(),assignee:b.nullable().optional(),reporter:b.optional(),priority:Pe.nullable().optional(),issuetype:Be.optional(),project:De.optional(),labels:n.array(n.string()).optional(),updated:n.string().optional()}).optional()}).optional(),user:b.optional(),changelog:n.object({id:n.string().optional(),items:n.array(n.object({field:n.string().optional(),fieldtype:n.string().optional(),from:n.string().nullable().optional(),fromString:n.string().nullable().optional(),to:n.string().nullable().optional(),toString:n.string().nullable().optional()})).optional()}).optional()}),U=n.object({webhookEvent:n.literal("project_created"),timestamp:n.number().optional(),project:n.object({id:n.string().optional(),key:n.string().optional(),name:n.string().optional(),description:n.string().optional(),projectTypeKey:n.string().optional(),lead:b.optional(),self:n.string().optional()}).optional()}),Ne=D,Ue=N,We=U;function lt(o){return typeof o=="string"?JSON.parse(o):o}function j(o){return s=>lt(s.body).webhookEvent===o}function E(o,s){let i=o.headers,t=Array.isArray(i["x-hub-signature"])?i["x-hub-signature"][0]:i["x-hub-signature"];if(!t)return s?{valid:!1,error:"Missing x-hub-signature header"}:{valid:!0};let r=o.rawBody??JSON.stringify(o.payload),g=`sha256=${xe.createHmac("sha256",s).update(r).digest("hex")}`,f=Buffer.from(t),h=Buffer.from(g);if(f.length!==h.length)return{valid:!1,error:"Signature length mismatch"};let y=xe.timingSafeEqual(f,h);return{valid:y,error:y?void 0:"Invalid signature"}}var Oe={match:j("jira:issue_created"),handler:async(o,s)=>{let i=E(s,o.key);if(!i.valid)return{success:!1,statusCode:401,error:i.error??"Signature verification failed"};let t=s.payload;if(t.issue?.id&&t.issue?.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.issue.id,{id:t.issue.id,key:t.issue.key,...t.issue.fields?.summary&&{summary:t.issue.fields.summary},...t.issue.fields?.status?.name&&{status:t.issue.fields.status.name},...t.issue.fields?.assignee?.accountId&&{assigneeAccountId:t.issue.fields.assignee.accountId},...t.issue.fields?.assignee?.displayName&&{assigneeDisplayName:t.issue.fields.assignee.displayName},...t.issue.fields?.reporter?.accountId&&{reporterAccountId:t.issue.fields.reporter.accountId},...t.issue.fields?.reporter?.displayName&&{reporterDisplayName:t.issue.fields.reporter.displayName},...t.issue.fields?.priority?.name&&{priority:t.issue.fields.priority.name},...t.issue.fields?.issuetype?.name&&{issueType:t.issue.fields.issuetype.name},...t.issue.fields?.project?.key&&{projectKey:t.issue.fields.project.key},...t.issue.fields?.project?.id&&{projectId:t.issue.fields.project.id},...t.issue.fields?.labels&&{labels:t.issue.fields.labels},...t.issue.fields?.created&&{created:t.issue.fields.created},...t.issue.fields?.updated&&{updated:t.issue.fields.updated},createdAt:new Date})}catch(r){console.warn("Failed to save new issue to database:",r)}if(t.user?.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(t.user.accountId,{accountId:t.user.accountId,...t.user.displayName&&{displayName:t.user.displayName},...t.user.emailAddress&&{emailAddress:t.user.emailAddress},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}return await mt(o,"jira.webhook.newIssue",{issueKey:t.issue?.key},"completed"),{success:!0,data:t}}};import{logEventFromContext as yt}from"corsair/core";var Fe={match:j("project_created"),handler:async(o,s)=>{let i=E(s,o.key);if(!i.valid)return{success:!1,statusCode:401,error:i.error??"Signature verification failed"};let t=s.payload;if(t.project?.id&&t.project?.key&&o.db.projects)try{await o.db.projects.upsertByEntityId(t.project.id,{id:t.project.id,key:t.project.key,...t.project.name&&{name:t.project.name},...t.project.description&&{description:t.project.description},...t.project.projectTypeKey&&{projectTypeKey:t.project.projectTypeKey},...t.project.lead?.accountId&&{leadAccountId:t.project.lead.accountId},...t.project.lead?.displayName&&{leadDisplayName:t.project.lead.displayName},createdAt:new Date})}catch(r){console.warn("Failed to save new project to database:",r)}if(t.project?.lead?.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(t.project.lead.accountId,{accountId:t.project.lead.accountId,...t.project.lead.displayName&&{displayName:t.project.lead.displayName},createdAt:new Date})}catch(r){console.warn("Failed to save project lead to database:",r)}return await yt(o,"jira.webhook.newProject",{projectKey:t.project?.key},"completed"),{success:!0,data:t}}};import{logEventFromContext as gt}from"corsair/core";var ze={match:j("jira:issue_updated"),handler:async(o,s)=>{let i=E(s,o.key);if(!i.valid)return{success:!1,statusCode:401,error:i.error??"Signature verification failed"};let t=s.payload;if(t.issue?.id&&t.issue?.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.issue.id,{id:t.issue.id,key:t.issue.key,...t.issue.fields?.summary&&{summary:t.issue.fields.summary},...t.issue.fields?.status?.name&&{status:t.issue.fields.status.name},...t.issue.fields?.assignee?.accountId&&{assigneeAccountId:t.issue.fields.assignee.accountId},...t.issue.fields?.assignee?.displayName&&{assigneeDisplayName:t.issue.fields.assignee.displayName},...t.issue.fields?.priority?.name&&{priority:t.issue.fields.priority.name},...t.issue.fields?.issuetype?.name&&{issueType:t.issue.fields.issuetype.name},...t.issue.fields?.project?.key&&{projectKey:t.issue.fields.project.key},...t.issue.fields?.project?.id&&{projectId:t.issue.fields.project.id},...t.issue.fields?.labels&&{labels:t.issue.fields.labels},...t.issue.fields?.updated&&{updated:t.issue.fields.updated}})}catch(r){console.warn("Failed to update issue in database:",r)}if(t.user?.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(t.user.accountId,{accountId:t.user.accountId,...t.user.displayName&&{displayName:t.user.displayName},...t.user.emailAddress&&{emailAddress:t.user.emailAddress},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}return await gt(o,"jira.webhook.updatedIssue",{issueKey:t.issue?.key,changelog:t.changelog},"completed"),{success:!0,data:t}}};var W={newIssue:Oe,updatedIssue:ze},Ke={newProject:Fe};var ft={api_key:{account:["cloud_url"]}},ht={issues:{create:l.create,get:l.get,edit:l.edit,delete:l.delete,search:l.search,assign:l.assign,getTransitions:l.getTransitions,transition:l.transition,bulkCreate:l.bulkCreate,bulkFetch:l.bulkFetch,addAttachment:l.addAttachment,addWatcher:l.addWatcher,removeWatcher:l.removeWatcher,linkIssues:l.linkIssues},comments:{add:_.add,get:_.get,list:_.list,update:_.update,delete:_.delete},projects:{create:R.create,get:R.get,list:R.list,getRoles:R.getRoles},sprints:{create:C.create,list:C.list,moveIssues:C.moveIssues,listBoards:C.listBoards},users:{getCurrent:T.getCurrent,find:T.find,getAll:T.getAll},groups:{getAll:B.getAll,create:B.create}},It={issues:{newIssue:W.newIssue,updatedIssue:W.updatedIssue},projects:{newProject:Ke.newProject}},kt={"issues.create":{input:p.issuesCreate,output:u.issuesCreate},"issues.get":{input:p.issuesGet,output:u.issuesGet},"issues.edit":{input:p.issuesEdit,output:u.issuesEdit},"issues.delete":{input:p.issuesDelete,output:u.issuesDelete},"issues.search":{input:p.issuesSearch,output:u.issuesSearch},"issues.assign":{input:p.issuesAssign,output:u.issuesAssign},"issues.getTransitions":{input:p.issuesGetTransitions,output:u.issuesGetTransitions},"issues.transition":{input:p.issuesTransition,output:u.issuesTransition},"issues.bulkCreate":{input:p.issuesBulkCreate,output:u.issuesBulkCreate},"issues.bulkFetch":{input:p.issuesBulkFetch,output:u.issuesBulkFetch},"issues.addAttachment":{input:p.issuesAddAttachment,output:u.issuesAddAttachment},"issues.addWatcher":{input:p.issuesAddWatcher,output:u.issuesAddWatcher},"issues.removeWatcher":{input:p.issuesRemoveWatcher,output:u.issuesRemoveWatcher},"issues.linkIssues":{input:p.issuesLinkIssues,output:u.issuesLinkIssues},"comments.add":{input:p.commentsAdd,output:u.commentsAdd},"comments.get":{input:p.commentsGet,output:u.commentsGet},"comments.list":{input:p.commentsList,output:u.commentsList},"comments.update":{input:p.commentsUpdate,output:u.commentsUpdate},"comments.delete":{input:p.commentsDelete,output:u.commentsDelete},"projects.create":{input:p.projectsCreate,output:u.projectsCreate},"projects.get":{input:p.projectsGet,output:u.projectsGet},"projects.list":{input:p.projectsList,output:u.projectsList},"projects.getRoles":{input:p.projectsGetRoles,output:u.projectsGetRoles},"sprints.create":{input:p.sprintsCreate,output:u.sprintsCreate},"sprints.list":{input:p.sprintsList,output:u.sprintsList},"sprints.moveIssues":{input:p.sprintsMoveIssues,output:u.sprintsMoveIssues},"sprints.listBoards":{input:p.sprintsListBoards,output:u.sprintsListBoards},"users.getCurrent":{input:p.usersGetCurrent,output:u.usersGetCurrent},"users.find":{input:p.usersFind,output:u.usersFind},"users.getAll":{input:p.usersGetAll,output:u.usersGetAll},"groups.getAll":{input:p.groupsGetAll,output:u.groupsGetAll},"groups.create":{input:p.groupsCreate,output:u.groupsCreate}},bt="api_key",jt={"issues.create":{riskLevel:"write",description:"Create a new Jira issue"},"issues.get":{riskLevel:"read",description:"Get a Jira issue by ID or key"},"issues.edit":{riskLevel:"write",description:"Edit an existing Jira issue"},"issues.delete":{riskLevel:"destructive",description:"Delete a Jira issue [DESTRUCTIVE]"},"issues.search":{riskLevel:"read",description:"Search issues using JQL"},"issues.assign":{riskLevel:"write",description:"Assign a Jira issue to a user"},"issues.getTransitions":{riskLevel:"read",description:"Get available transitions for a Jira issue"},"issues.transition":{riskLevel:"write",description:"Transition a Jira issue to a new status"},"issues.bulkCreate":{riskLevel:"write",description:"Bulk create multiple Jira issues"},"issues.bulkFetch":{riskLevel:"read",description:"Bulk fetch multiple Jira issues by ID or key"},"issues.addAttachment":{riskLevel:"write",description:"Add an attachment to a Jira issue"},"issues.addWatcher":{riskLevel:"write",description:"Add a watcher to a Jira issue"},"issues.removeWatcher":{riskLevel:"write",description:"Remove a watcher from a Jira issue"},"issues.linkIssues":{riskLevel:"write",description:"Link two Jira issues together"},"comments.add":{riskLevel:"write",description:"Add a comment to a Jira issue"},"comments.get":{riskLevel:"read",description:"Get a specific comment on a Jira issue"},"comments.list":{riskLevel:"read",description:"List all comments on a Jira issue"},"comments.update":{riskLevel:"write",description:"Update a comment on a Jira issue"},"comments.delete":{riskLevel:"destructive",description:"Delete a comment from a Jira issue [DESTRUCTIVE]"},"projects.create":{riskLevel:"write",description:"Create a new Jira project"},"projects.get":{riskLevel:"read",description:"Get a Jira project by ID or key"},"projects.list":{riskLevel:"read",description:"List Jira projects"},"projects.getRoles":{riskLevel:"read",description:"Get project roles for a Jira project"},"sprints.create":{riskLevel:"write",description:"Create a new sprint on a Jira board"},"sprints.list":{riskLevel:"read",description:"List sprints for a Jira board"},"sprints.moveIssues":{riskLevel:"write",description:"Move issues to a sprint"},"sprints.listBoards":{riskLevel:"read",description:"List Jira boards"},"users.getCurrent":{riskLevel:"read",description:"Get the currently authenticated Jira user"},"users.find":{riskLevel:"read",description:"Search for Jira users"},"users.getAll":{riskLevel:"read",description:"Get all Jira users"},"groups.getAll":{riskLevel:"read",description:"Get all Jira groups"},"groups.create":{riskLevel:"write",description:"Create a new Jira group"}},_t={"issues.newIssue":{description:"Triggered when a new issue is created in Jira",payload:Ne,response:D},"issues.updatedIssue":{description:"Triggered when an issue is updated in Jira",payload:Ue,response:N},"projects.newProject":{description:"Triggered when a new project is created in Jira",payload:We,response:U}};function ho(o={}){let s={...o,authType:o.authType??bt};return{id:"jira",schema:Te,options:s,hooks:s.hooks,webhookHooks:s.webhookHooks,endpoints:ht,webhooks:It,authConfig:ft,endpointMeta:jt,endpointSchemas:kt,webhookSchemas:_t,pluginWebhookMatcher:i=>"x-atlassian-webhook-identifier"in i.headers,errorHandlers:{...we,...s.errorHandlers},keyBuilder:async(i,t)=>{let r=i.authType;if(t==="webhook"&&s.webhookSecret)return s.webhookSecret;if(t==="webhook"){let c=await i.keys.get_webhook_signature();if(!c)throw new Error("[auth-missing:jira:webhook_signature]: Jira webhook signature is missing");return c}if(t==="endpoint"&&s.key)return s.key;if(t==="endpoint"&&i.authType==="api_key"){let c=await i.keys.get_api_key();if(!c)throw new Error("[auth-missing:jira:api_key]: Jira API Key is missing");return c}throw new Error(`[auth-missing:jira:${r}]: Jira key is missing`)}}}export{j as createJiraMatch,ho as jira,ft as jiraAuthConfig,kt as jiraEndpointSchemas};
|
|
@@ -69,8 +69,8 @@ export declare const JiraProject: z.ZodObject<{
|
|
|
69
69
|
name?: string | undefined;
|
|
70
70
|
description?: string | undefined;
|
|
71
71
|
projectTypeKey?: string | undefined;
|
|
72
|
-
createdAt?: Date | null | undefined;
|
|
73
72
|
leadAccountId?: string | undefined;
|
|
73
|
+
createdAt?: Date | null | undefined;
|
|
74
74
|
leadDisplayName?: string | undefined;
|
|
75
75
|
}, {
|
|
76
76
|
key: string;
|
|
@@ -78,8 +78,8 @@ export declare const JiraProject: z.ZodObject<{
|
|
|
78
78
|
name?: string | undefined;
|
|
79
79
|
description?: string | undefined;
|
|
80
80
|
projectTypeKey?: string | undefined;
|
|
81
|
-
createdAt?: Date | null | undefined;
|
|
82
81
|
leadAccountId?: string | undefined;
|
|
82
|
+
createdAt?: Date | null | undefined;
|
|
83
83
|
leadDisplayName?: string | undefined;
|
|
84
84
|
}>;
|
|
85
85
|
export declare const JiraComment: z.ZodObject<{
|
package/dist/schema/index.d.ts
CHANGED
|
@@ -71,8 +71,8 @@ export declare const JiraSchema: {
|
|
|
71
71
|
name?: string | undefined;
|
|
72
72
|
description?: string | undefined;
|
|
73
73
|
projectTypeKey?: string | undefined;
|
|
74
|
-
createdAt?: Date | null | undefined;
|
|
75
74
|
leadAccountId?: string | undefined;
|
|
75
|
+
createdAt?: Date | null | undefined;
|
|
76
76
|
leadDisplayName?: string | undefined;
|
|
77
77
|
}, {
|
|
78
78
|
key: string;
|
|
@@ -80,8 +80,8 @@ export declare const JiraSchema: {
|
|
|
80
80
|
name?: string | undefined;
|
|
81
81
|
description?: string | undefined;
|
|
82
82
|
projectTypeKey?: string | undefined;
|
|
83
|
-
createdAt?: Date | null | undefined;
|
|
84
83
|
leadAccountId?: string | undefined;
|
|
84
|
+
createdAt?: Date | null | undefined;
|
|
85
85
|
leadDisplayName?: string | undefined;
|
|
86
86
|
}>;
|
|
87
87
|
readonly comments: import("zod").ZodObject<{
|
|
@@ -192,5 +192,5 @@ export declare const JiraSchema: {
|
|
|
192
192
|
}>;
|
|
193
193
|
};
|
|
194
194
|
};
|
|
195
|
-
export type { JiraComment, JiraIssue, JiraProject, JiraSprint, JiraUser,
|
|
195
|
+
export type { JiraBoard, JiraComment, JiraIssue, JiraProject, JiraSprint, JiraUser, } from './database';
|
|
196
196
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../schema/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../schema/index.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUb,CAAC;AAEX,YAAY,EACX,SAAS,EACT,WAAW,EACX,SAAS,EACT,WAAW,EACX,UAAU,EACV,QAAQ,GACR,MAAM,YAAY,CAAC"}
|
package/dist/webhooks/index.d.ts
CHANGED
|
@@ -3,7 +3,6 @@ export declare const IssueWebhooks: {
|
|
|
3
3
|
match: import("corsair/core").CorsairWebhookMatcher;
|
|
4
4
|
handler: import("corsair/core").CorsairWebhookHandler<import("..").JiraContext, {
|
|
5
5
|
webhookEvent: "jira:issue_created";
|
|
6
|
-
timestamp?: number | undefined;
|
|
7
6
|
issue?: {
|
|
8
7
|
key?: string | undefined;
|
|
9
8
|
id?: string | undefined;
|
|
@@ -47,6 +46,7 @@ export declare const IssueWebhooks: {
|
|
|
47
46
|
updated?: string | undefined;
|
|
48
47
|
} | undefined;
|
|
49
48
|
} | undefined;
|
|
49
|
+
timestamp?: number | undefined;
|
|
50
50
|
user?: {
|
|
51
51
|
accountId?: string | undefined;
|
|
52
52
|
displayName?: string | undefined;
|
|
@@ -54,7 +54,6 @@ export declare const IssueWebhooks: {
|
|
|
54
54
|
} | undefined;
|
|
55
55
|
}, {
|
|
56
56
|
webhookEvent: "jira:issue_created";
|
|
57
|
-
timestamp?: number | undefined;
|
|
58
57
|
issue?: {
|
|
59
58
|
key?: string | undefined;
|
|
60
59
|
id?: string | undefined;
|
|
@@ -98,6 +97,7 @@ export declare const IssueWebhooks: {
|
|
|
98
97
|
updated?: string | undefined;
|
|
99
98
|
} | undefined;
|
|
100
99
|
} | undefined;
|
|
100
|
+
timestamp?: number | undefined;
|
|
101
101
|
user?: {
|
|
102
102
|
accountId?: string | undefined;
|
|
103
103
|
displayName?: string | undefined;
|
|
@@ -109,7 +109,6 @@ export declare const IssueWebhooks: {
|
|
|
109
109
|
match: import("corsair/core").CorsairWebhookMatcher;
|
|
110
110
|
handler: import("corsair/core").CorsairWebhookHandler<import("..").JiraContext, {
|
|
111
111
|
webhookEvent: "jira:issue_updated";
|
|
112
|
-
timestamp?: number | undefined;
|
|
113
112
|
issue?: {
|
|
114
113
|
key?: string | undefined;
|
|
115
114
|
id?: string | undefined;
|
|
@@ -152,6 +151,7 @@ export declare const IssueWebhooks: {
|
|
|
152
151
|
updated?: string | undefined;
|
|
153
152
|
} | undefined;
|
|
154
153
|
} | undefined;
|
|
154
|
+
timestamp?: number | undefined;
|
|
155
155
|
user?: {
|
|
156
156
|
accountId?: string | undefined;
|
|
157
157
|
displayName?: string | undefined;
|
|
@@ -170,7 +170,6 @@ export declare const IssueWebhooks: {
|
|
|
170
170
|
} | undefined;
|
|
171
171
|
}, {
|
|
172
172
|
webhookEvent: "jira:issue_updated";
|
|
173
|
-
timestamp?: number | undefined;
|
|
174
173
|
issue?: {
|
|
175
174
|
key?: string | undefined;
|
|
176
175
|
id?: string | undefined;
|
|
@@ -213,6 +212,7 @@ export declare const IssueWebhooks: {
|
|
|
213
212
|
updated?: string | undefined;
|
|
214
213
|
} | undefined;
|
|
215
214
|
} | undefined;
|
|
215
|
+
timestamp?: number | undefined;
|
|
216
216
|
user?: {
|
|
217
217
|
accountId?: string | undefined;
|
|
218
218
|
displayName?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newIssue.d.ts","sourceRoot":"","sources":["../../webhooks/newIssue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"newIssue.d.ts","sourceRoot":"","sources":["../../webhooks/newIssue.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG7C,eAAO,MAAM,QAAQ,EAAE,YAAY,CAAC,UAAU,CA4F7C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newProject.d.ts","sourceRoot":"","sources":["../../webhooks/newProject.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"newProject.d.ts","sourceRoot":"","sources":["../../webhooks/newProject.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG7C,eAAO,MAAM,UAAU,EAAE,YAAY,CAAC,YAAY,CA+DjD,CAAC"}
|
package/dist/webhooks/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
1
|
import type { CorsairWebhookMatcher, WebhookRequest } from 'corsair/core';
|
|
2
|
+
import { z } from 'zod';
|
|
3
3
|
export interface JiraWebhookPayload {
|
|
4
4
|
webhookEvent: string;
|
|
5
5
|
timestamp?: number;
|
|
@@ -281,7 +281,6 @@ export declare const NewIssueEventSchema: z.ZodObject<{
|
|
|
281
281
|
}>>;
|
|
282
282
|
}, "strip", z.ZodTypeAny, {
|
|
283
283
|
webhookEvent: "jira:issue_created";
|
|
284
|
-
timestamp?: number | undefined;
|
|
285
284
|
issue?: {
|
|
286
285
|
key?: string | undefined;
|
|
287
286
|
id?: string | undefined;
|
|
@@ -325,6 +324,7 @@ export declare const NewIssueEventSchema: z.ZodObject<{
|
|
|
325
324
|
updated?: string | undefined;
|
|
326
325
|
} | undefined;
|
|
327
326
|
} | undefined;
|
|
327
|
+
timestamp?: number | undefined;
|
|
328
328
|
user?: {
|
|
329
329
|
accountId?: string | undefined;
|
|
330
330
|
displayName?: string | undefined;
|
|
@@ -332,7 +332,6 @@ export declare const NewIssueEventSchema: z.ZodObject<{
|
|
|
332
332
|
} | undefined;
|
|
333
333
|
}, {
|
|
334
334
|
webhookEvent: "jira:issue_created";
|
|
335
|
-
timestamp?: number | undefined;
|
|
336
335
|
issue?: {
|
|
337
336
|
key?: string | undefined;
|
|
338
337
|
id?: string | undefined;
|
|
@@ -376,6 +375,7 @@ export declare const NewIssueEventSchema: z.ZodObject<{
|
|
|
376
375
|
updated?: string | undefined;
|
|
377
376
|
} | undefined;
|
|
378
377
|
} | undefined;
|
|
378
|
+
timestamp?: number | undefined;
|
|
379
379
|
user?: {
|
|
380
380
|
accountId?: string | undefined;
|
|
381
381
|
displayName?: string | undefined;
|
|
@@ -700,7 +700,6 @@ export declare const UpdatedIssueEventSchema: z.ZodObject<{
|
|
|
700
700
|
}>>;
|
|
701
701
|
}, "strip", z.ZodTypeAny, {
|
|
702
702
|
webhookEvent: "jira:issue_updated";
|
|
703
|
-
timestamp?: number | undefined;
|
|
704
703
|
issue?: {
|
|
705
704
|
key?: string | undefined;
|
|
706
705
|
id?: string | undefined;
|
|
@@ -743,6 +742,7 @@ export declare const UpdatedIssueEventSchema: z.ZodObject<{
|
|
|
743
742
|
updated?: string | undefined;
|
|
744
743
|
} | undefined;
|
|
745
744
|
} | undefined;
|
|
745
|
+
timestamp?: number | undefined;
|
|
746
746
|
user?: {
|
|
747
747
|
accountId?: string | undefined;
|
|
748
748
|
displayName?: string | undefined;
|
|
@@ -761,7 +761,6 @@ export declare const UpdatedIssueEventSchema: z.ZodObject<{
|
|
|
761
761
|
} | undefined;
|
|
762
762
|
}, {
|
|
763
763
|
webhookEvent: "jira:issue_updated";
|
|
764
|
-
timestamp?: number | undefined;
|
|
765
764
|
issue?: {
|
|
766
765
|
key?: string | undefined;
|
|
767
766
|
id?: string | undefined;
|
|
@@ -804,6 +803,7 @@ export declare const UpdatedIssueEventSchema: z.ZodObject<{
|
|
|
804
803
|
updated?: string | undefined;
|
|
805
804
|
} | undefined;
|
|
806
805
|
} | undefined;
|
|
806
|
+
timestamp?: number | undefined;
|
|
807
807
|
user?: {
|
|
808
808
|
accountId?: string | undefined;
|
|
809
809
|
displayName?: string | undefined;
|
|
@@ -1181,7 +1181,6 @@ export declare const JiraNewIssuePayloadSchema: z.ZodObject<{
|
|
|
1181
1181
|
}>>;
|
|
1182
1182
|
}, "strip", z.ZodTypeAny, {
|
|
1183
1183
|
webhookEvent: "jira:issue_created";
|
|
1184
|
-
timestamp?: number | undefined;
|
|
1185
1184
|
issue?: {
|
|
1186
1185
|
key?: string | undefined;
|
|
1187
1186
|
id?: string | undefined;
|
|
@@ -1225,6 +1224,7 @@ export declare const JiraNewIssuePayloadSchema: z.ZodObject<{
|
|
|
1225
1224
|
updated?: string | undefined;
|
|
1226
1225
|
} | undefined;
|
|
1227
1226
|
} | undefined;
|
|
1227
|
+
timestamp?: number | undefined;
|
|
1228
1228
|
user?: {
|
|
1229
1229
|
accountId?: string | undefined;
|
|
1230
1230
|
displayName?: string | undefined;
|
|
@@ -1232,7 +1232,6 @@ export declare const JiraNewIssuePayloadSchema: z.ZodObject<{
|
|
|
1232
1232
|
} | undefined;
|
|
1233
1233
|
}, {
|
|
1234
1234
|
webhookEvent: "jira:issue_created";
|
|
1235
|
-
timestamp?: number | undefined;
|
|
1236
1235
|
issue?: {
|
|
1237
1236
|
key?: string | undefined;
|
|
1238
1237
|
id?: string | undefined;
|
|
@@ -1276,6 +1275,7 @@ export declare const JiraNewIssuePayloadSchema: z.ZodObject<{
|
|
|
1276
1275
|
updated?: string | undefined;
|
|
1277
1276
|
} | undefined;
|
|
1278
1277
|
} | undefined;
|
|
1278
|
+
timestamp?: number | undefined;
|
|
1279
1279
|
user?: {
|
|
1280
1280
|
accountId?: string | undefined;
|
|
1281
1281
|
displayName?: string | undefined;
|
|
@@ -1599,7 +1599,6 @@ export declare const JiraUpdatedIssuePayloadSchema: z.ZodObject<{
|
|
|
1599
1599
|
}>>;
|
|
1600
1600
|
}, "strip", z.ZodTypeAny, {
|
|
1601
1601
|
webhookEvent: "jira:issue_updated";
|
|
1602
|
-
timestamp?: number | undefined;
|
|
1603
1602
|
issue?: {
|
|
1604
1603
|
key?: string | undefined;
|
|
1605
1604
|
id?: string | undefined;
|
|
@@ -1642,6 +1641,7 @@ export declare const JiraUpdatedIssuePayloadSchema: z.ZodObject<{
|
|
|
1642
1641
|
updated?: string | undefined;
|
|
1643
1642
|
} | undefined;
|
|
1644
1643
|
} | undefined;
|
|
1644
|
+
timestamp?: number | undefined;
|
|
1645
1645
|
user?: {
|
|
1646
1646
|
accountId?: string | undefined;
|
|
1647
1647
|
displayName?: string | undefined;
|
|
@@ -1660,7 +1660,6 @@ export declare const JiraUpdatedIssuePayloadSchema: z.ZodObject<{
|
|
|
1660
1660
|
} | undefined;
|
|
1661
1661
|
}, {
|
|
1662
1662
|
webhookEvent: "jira:issue_updated";
|
|
1663
|
-
timestamp?: number | undefined;
|
|
1664
1663
|
issue?: {
|
|
1665
1664
|
key?: string | undefined;
|
|
1666
1665
|
id?: string | undefined;
|
|
@@ -1703,6 +1702,7 @@ export declare const JiraUpdatedIssuePayloadSchema: z.ZodObject<{
|
|
|
1703
1702
|
updated?: string | undefined;
|
|
1704
1703
|
} | undefined;
|
|
1705
1704
|
} | undefined;
|
|
1705
|
+
timestamp?: number | undefined;
|
|
1706
1706
|
user?: {
|
|
1707
1707
|
accountId?: string | undefined;
|
|
1708
1708
|
displayName?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../webhooks/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../webhooks/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updatedIssue.d.ts","sourceRoot":"","sources":["../../webhooks/updatedIssue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"updatedIssue.d.ts","sourceRoot":"","sources":["../../webhooks/updatedIssue.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG7C,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,cAAc,CAkFrD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@corsair-dev/jira",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Jira plugin for Corsair",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -18,10 +18,12 @@
|
|
|
18
18
|
"zod": "^3.0.0"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
|
+
"@types/jest": "^29.5.14",
|
|
22
|
+
"ts-jest": "^29.4.9",
|
|
21
23
|
"tsup": "^8.0.1",
|
|
22
24
|
"typescript": "^5.9.3",
|
|
23
25
|
"zod": "^3.25.76",
|
|
24
|
-
"corsair": "0.1.
|
|
26
|
+
"corsair": "0.1.67"
|
|
25
27
|
},
|
|
26
28
|
"keywords": [
|
|
27
29
|
"corsair",
|
|
@@ -33,8 +35,12 @@
|
|
|
33
35
|
"files": [
|
|
34
36
|
"dist"
|
|
35
37
|
],
|
|
38
|
+
"dependencies": {
|
|
39
|
+
"jest": "^29.7.0"
|
|
40
|
+
},
|
|
36
41
|
"scripts": {
|
|
37
42
|
"build": "rm -rf dist && tsc --build --force && tsup",
|
|
38
|
-
"typecheck": "tsc --noEmit"
|
|
43
|
+
"typecheck": "tsc --noEmit",
|
|
44
|
+
"test": "jest"
|
|
39
45
|
}
|
|
40
46
|
}
|