@jagadeesh52423/atlassian-mcp-server 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/.env.example +26 -0
  2. package/LICENSE +21 -0
  3. package/README.md +349 -0
  4. package/dist/atlassian-client.d.ts +10 -0
  5. package/dist/atlassian-client.d.ts.map +1 -0
  6. package/dist/atlassian-client.js +38 -0
  7. package/dist/atlassian-client.js.map +1 -0
  8. package/dist/config.d.ts +11 -0
  9. package/dist/config.d.ts.map +1 -0
  10. package/dist/config.js +60 -0
  11. package/dist/config.js.map +1 -0
  12. package/dist/confluence-client.d.ts +11 -0
  13. package/dist/confluence-client.d.ts.map +1 -0
  14. package/dist/confluence-client.js +47 -0
  15. package/dist/confluence-client.js.map +1 -0
  16. package/dist/index.d.ts +3 -0
  17. package/dist/index.d.ts.map +1 -0
  18. package/dist/index.js +2592 -0
  19. package/dist/index.js.map +1 -0
  20. package/dist/jira-client.d.ts +11 -0
  21. package/dist/jira-client.d.ts.map +1 -0
  22. package/dist/jira-client.js +47 -0
  23. package/dist/jira-client.js.map +1 -0
  24. package/dist/services/bitbucket.d.ts +21 -0
  25. package/dist/services/bitbucket.d.ts.map +1 -0
  26. package/dist/services/bitbucket.js +176 -0
  27. package/dist/services/bitbucket.js.map +1 -0
  28. package/dist/services/confluence.d.ts +41 -0
  29. package/dist/services/confluence.d.ts.map +1 -0
  30. package/dist/services/confluence.js +348 -0
  31. package/dist/services/confluence.js.map +1 -0
  32. package/dist/services/jira.d.ts +58 -0
  33. package/dist/services/jira.d.ts.map +1 -0
  34. package/dist/services/jira.js +1115 -0
  35. package/dist/services/jira.js.map +1 -0
  36. package/dist/types.d.ts +120 -0
  37. package/dist/types.d.ts.map +1 -0
  38. package/dist/types.js +2 -0
  39. package/dist/types.js.map +1 -0
  40. package/package.json +61 -0
@@ -0,0 +1,348 @@
1
+ import { ConfluenceClient } from '../confluence-client.js';
2
+ import * as fs from 'fs';
3
+ import * as path from 'path';
4
+ export class ConfluenceService {
5
+ client;
6
+ constructor() {
7
+ this.client = new ConfluenceClient();
8
+ }
9
+ /**
10
+ * Get file buffer from either base64 content or file path
11
+ */
12
+ async getFileBuffer(fileContent, filePath) {
13
+ if (filePath) {
14
+ // Read from file path
15
+ if (!fs.existsSync(filePath)) {
16
+ throw new Error(`File not found: ${filePath}`);
17
+ }
18
+ return fs.readFileSync(filePath);
19
+ }
20
+ else if (fileContent) {
21
+ // Decode from base64
22
+ return Buffer.from(fileContent, 'base64');
23
+ }
24
+ else {
25
+ throw new Error('Either fileContent (base64) or filePath must be provided');
26
+ }
27
+ }
28
+ /**
29
+ * Extract filename from file path
30
+ */
31
+ getFilenameFromPath(filePath) {
32
+ return path.basename(filePath);
33
+ }
34
+ async searchPages(options = {}) {
35
+ const { query, limit = 25, startAt = 0, expand = ['body.storage', 'version', 'space'] } = options;
36
+ let cql = '';
37
+ if (query) {
38
+ cql = `text ~ "${query}"`;
39
+ }
40
+ const params = {
41
+ cql,
42
+ limit,
43
+ start: startAt,
44
+ expand: expand.join(',')
45
+ };
46
+ const response = await this.client.get('/wiki/rest/api/content/search', params);
47
+ return response.results.map((page) => ({
48
+ id: page.id,
49
+ title: page.title,
50
+ content: page.body?.storage?.value || '',
51
+ spaceKey: page.space?.key || '',
52
+ version: page.version?.number || 1,
53
+ created: page.created || '',
54
+ updated: page.updated || ''
55
+ }));
56
+ }
57
+ async getPage(pageId, expand = ['body.storage', 'version', 'space']) {
58
+ const params = {
59
+ expand: expand.join(',')
60
+ };
61
+ const page = await this.client.get(`/wiki/rest/api/content/${pageId}`, params);
62
+ return {
63
+ id: page.id,
64
+ title: page.title,
65
+ content: page.body?.storage?.value || '',
66
+ spaceKey: page.space?.key || '',
67
+ version: page.version?.number || 1,
68
+ created: page.created || '',
69
+ updated: page.updated || ''
70
+ };
71
+ }
72
+ async createPage(spaceKey, title, content, parentId) {
73
+ const data = {
74
+ type: 'page',
75
+ title,
76
+ space: { key: spaceKey },
77
+ body: {
78
+ storage: {
79
+ value: content,
80
+ representation: 'storage'
81
+ }
82
+ }
83
+ };
84
+ if (parentId) {
85
+ data.ancestors = [{ id: parentId }];
86
+ }
87
+ const page = await this.client.post('/wiki/rest/api/content', data);
88
+ return {
89
+ id: page.id,
90
+ title: page.title,
91
+ content: page.body?.storage?.value || '',
92
+ spaceKey: page.space?.key || '',
93
+ version: page.version?.number || 1,
94
+ created: page.created || '',
95
+ updated: page.updated || ''
96
+ };
97
+ }
98
+ async updatePage(pageId, title, content, version) {
99
+ const data = {
100
+ version: { number: version + 1 },
101
+ title,
102
+ type: 'page',
103
+ body: {
104
+ storage: {
105
+ value: content,
106
+ representation: 'storage'
107
+ }
108
+ }
109
+ };
110
+ const page = await this.client.put(`/wiki/rest/api/content/${pageId}`, data);
111
+ return {
112
+ id: page.id,
113
+ title: page.title,
114
+ content: page.body?.storage?.value || '',
115
+ spaceKey: page.space?.key || '',
116
+ version: page.version?.number || 1,
117
+ created: page.created || '',
118
+ updated: page.updated || ''
119
+ };
120
+ }
121
+ async deletePage(pageId) {
122
+ await this.client.delete(`/wiki/rest/api/content/${pageId}`);
123
+ }
124
+ async getSpaces(limit = 25) {
125
+ const params = {
126
+ limit,
127
+ expand: 'description.plain'
128
+ };
129
+ const response = await this.client.get('/wiki/rest/api/space', params);
130
+ return response.results;
131
+ }
132
+ async getPagesBySpace(spaceKey, limit = 25) {
133
+ const params = {
134
+ spaceKey,
135
+ limit,
136
+ expand: 'body.storage,version'
137
+ };
138
+ const response = await this.client.get('/wiki/rest/api/content', params);
139
+ return response.results.map((page) => ({
140
+ id: page.id,
141
+ title: page.title,
142
+ content: page.body?.storage?.value || '',
143
+ spaceKey: page.space?.key || spaceKey,
144
+ version: page.version?.number || 1,
145
+ created: page.created || '',
146
+ updated: page.updated || ''
147
+ }));
148
+ }
149
+ async getAttachments(pageId) {
150
+ const response = await this.client.get(`/wiki/rest/api/content/${pageId}/child/attachment`, {
151
+ expand: 'version'
152
+ });
153
+ return response.results?.map((att) => ({
154
+ id: att.id,
155
+ title: att.title,
156
+ filename: att.title,
157
+ mediaType: att.metadata?.mediaType || '',
158
+ fileSize: att.extensions?.fileSize || 0,
159
+ created: att.history?.created?.when || '',
160
+ downloadUrl: att._links?.download || ''
161
+ })) || [];
162
+ }
163
+ async addAttachment(pageId, filename, fileContent, filePath) {
164
+ const FormData = (await import('form-data')).default;
165
+ const form = new FormData();
166
+ const buffer = await this.getFileBuffer(fileContent, filePath);
167
+ const finalFilename = filename || (filePath ? this.getFilenameFromPath(filePath) : 'attachment');
168
+ form.append('file', buffer, { filename: finalFilename });
169
+ const response = await this.client.postFormData(`/wiki/rest/api/content/${pageId}/child/attachment`, form);
170
+ return response;
171
+ }
172
+ async deleteAttachment(attachmentId) {
173
+ await this.client.delete(`/wiki/rest/api/content/${attachmentId}`);
174
+ }
175
+ async embedImage(pageId, filename, fileContent, filePath, options = {}) {
176
+ // Determine filename
177
+ const finalFilename = filename || (filePath ? this.getFilenameFromPath(filePath) : 'image');
178
+ // Step 1: Attach the image
179
+ const attachment = await this.addAttachment(pageId, finalFilename, fileContent, filePath);
180
+ // Step 2: Get current page content and version
181
+ const currentPage = await this.getPage(pageId);
182
+ // Step 3: Build image markup
183
+ const alt = options.alt || finalFilename;
184
+ const alignAttr = options.align ? ` ac:align="${options.align}" ac:layout="${options.align}"` : '';
185
+ const widthAttr = options.width ? ` ac:custom-width="true" ac:width="${options.width}"` : '';
186
+ let imageMarkup = `<ac:image${alignAttr}${widthAttr} ac:alt="${alt}"><ri:attachment ri:filename="${finalFilename}" />`;
187
+ if (options.caption) {
188
+ imageMarkup += `<ac:caption><p>${options.caption}</p></ac:caption>`;
189
+ }
190
+ imageMarkup += '</ac:image>';
191
+ // Step 4: Insert image at specified position
192
+ let updatedContent = currentPage.content;
193
+ const position = options.position || 'bottom';
194
+ if (position === 'top') {
195
+ updatedContent = imageMarkup + '\n' + updatedContent;
196
+ }
197
+ else if (position === 'after-heading' && options.headingText) {
198
+ // Find the heading and insert after it
199
+ const headingRegex = new RegExp(`(<h[1-6][^>]*>.*?${options.headingText}.*?</h[1-6]>)`, 'i');
200
+ const match = updatedContent.match(headingRegex);
201
+ if (match) {
202
+ updatedContent = updatedContent.replace(headingRegex, `$1\n${imageMarkup}`);
203
+ }
204
+ else {
205
+ // Fallback to bottom if heading not found
206
+ updatedContent = updatedContent + '\n' + imageMarkup;
207
+ }
208
+ }
209
+ else {
210
+ // Default: bottom
211
+ updatedContent = updatedContent + '\n' + imageMarkup;
212
+ }
213
+ // Step 5: Update the page
214
+ const updatedPage = await this.updatePage(pageId, currentPage.title, updatedContent, currentPage.version);
215
+ return { page: updatedPage, attachment };
216
+ }
217
+ async createPageWithImages(spaceKey, title, content, parentId, images) {
218
+ // First create the page
219
+ const page = await this.createPage(spaceKey, title, content, parentId);
220
+ if (images && images.length > 0) {
221
+ // Upload each image and collect their attachment info
222
+ const uploadedImages = [];
223
+ for (const image of images) {
224
+ try {
225
+ const resolvedFilename = image.filename || (image.filePath ? this.getFilenameFromPath(image.filePath) : 'image');
226
+ const attachment = await this.addAttachment(page.id, resolvedFilename, image.fileContent, image.filePath);
227
+ uploadedImages.push({
228
+ ...image,
229
+ filename: resolvedFilename,
230
+ resolvedFilename,
231
+ attachmentId: attachment.results?.[0]?.id
232
+ });
233
+ }
234
+ catch (error) {
235
+ console.warn(`Failed to upload image ${image.filename || image.filePath}:`, error);
236
+ }
237
+ }
238
+ // If we have uploaded images, update the page content to include image references
239
+ if (uploadedImages.length > 0) {
240
+ let updatedContent = content;
241
+ const imagesWithoutPlaceholder = [];
242
+ for (const img of uploadedImages) {
243
+ const imageMarkup = this.buildImageMarkup(img);
244
+ const fname = img.resolvedFilename || img.filename || 'image';
245
+ // Check for placeholder {{IMAGE:filename}}
246
+ const placeholder = new RegExp(`\\{\\{IMAGE:${fname.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}\\}\\}`, 'gi');
247
+ if (placeholder.test(updatedContent)) {
248
+ // Replace placeholder with image markup
249
+ updatedContent = updatedContent.replace(placeholder, imageMarkup);
250
+ }
251
+ else {
252
+ // No placeholder found, add to list for appending at end
253
+ imagesWithoutPlaceholder.push(img);
254
+ }
255
+ }
256
+ // Append images without placeholders at the end
257
+ if (imagesWithoutPlaceholder.length > 0) {
258
+ const appendedMarkup = imagesWithoutPlaceholder
259
+ .map(img => this.buildImageMarkup(img))
260
+ .join('\n');
261
+ updatedContent += `\n\n${appendedMarkup}`;
262
+ }
263
+ // Update the page with the new content
264
+ await this.updatePage(page.id, title, updatedContent, page.version);
265
+ }
266
+ }
267
+ return page;
268
+ }
269
+ buildImageMarkup(image) {
270
+ const filename = image.resolvedFilename || image.filename || 'image';
271
+ const alt = image.alt || filename;
272
+ const alignAttr = image.align ? ` ac:align="${image.align}" ac:layout="${image.align}"` : '';
273
+ const widthAttr = image.width ? ` ac:custom-width="true" ac:width="${image.width}"` : '';
274
+ let markup = `<ac:image${alignAttr}${widthAttr} ac:alt="${alt}"><ri:attachment ri:filename="${filename}" />`;
275
+ if (image.caption) {
276
+ markup += `<ac:caption><p>${image.caption}</p></ac:caption>`;
277
+ }
278
+ markup += '</ac:image>';
279
+ return markup;
280
+ }
281
+ // Comment Methods
282
+ async getComments(pageId) {
283
+ const params = {
284
+ expand: 'body.storage,version,history'
285
+ };
286
+ const response = await this.client.get(`/wiki/rest/api/content/${pageId}/child/comment`, params);
287
+ return response.results?.map((comment) => ({
288
+ id: comment.id,
289
+ body: comment.body?.storage?.value || '',
290
+ author: comment.history?.createdBy?.displayName || 'Unknown',
291
+ authorAccountId: comment.history?.createdBy?.accountId,
292
+ created: comment.history?.createdDate || '',
293
+ updated: comment.version?.when || '',
294
+ version: comment.version?.number || 1
295
+ })) || [];
296
+ }
297
+ async addComment(pageId, body) {
298
+ const data = {
299
+ type: 'comment',
300
+ container: {
301
+ id: pageId,
302
+ type: 'page'
303
+ },
304
+ body: {
305
+ storage: {
306
+ value: body,
307
+ representation: 'storage'
308
+ }
309
+ }
310
+ };
311
+ const comment = await this.client.post('/wiki/rest/api/content', data);
312
+ return {
313
+ id: comment.id,
314
+ body: comment.body?.storage?.value || body,
315
+ author: comment.history?.createdBy?.displayName || 'Unknown',
316
+ authorAccountId: comment.history?.createdBy?.accountId,
317
+ created: comment.history?.createdDate || '',
318
+ updated: comment.version?.when || '',
319
+ version: comment.version?.number || 1
320
+ };
321
+ }
322
+ async updateComment(commentId, body, version) {
323
+ const data = {
324
+ type: 'comment',
325
+ version: { number: version + 1 },
326
+ body: {
327
+ storage: {
328
+ value: body,
329
+ representation: 'storage'
330
+ }
331
+ }
332
+ };
333
+ const comment = await this.client.put(`/wiki/rest/api/content/${commentId}`, data);
334
+ return {
335
+ id: comment.id,
336
+ body: comment.body?.storage?.value || body,
337
+ author: comment.history?.createdBy?.displayName || 'Unknown',
338
+ authorAccountId: comment.history?.createdBy?.accountId,
339
+ created: comment.history?.createdDate || '',
340
+ updated: comment.version?.when || '',
341
+ version: comment.version?.number || 1
342
+ };
343
+ }
344
+ async deleteComment(commentId) {
345
+ await this.client.delete(`/wiki/rest/api/content/${commentId}`);
346
+ }
347
+ }
348
+ //# sourceMappingURL=confluence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"confluence.js","sourceRoot":"","sources":["../../src/services/confluence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,MAAM,OAAO,iBAAiB;IACpB,MAAM,CAAmB;IAEjC;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;IACvC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CAAC,WAAoB,EAAE,QAAiB;QACjE,IAAI,QAAQ,EAAE,CAAC;YACb,sBAAsB;YACtB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;aAAM,IAAI,WAAW,EAAE,CAAC;YACvB,qBAAqB;YACrB,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,QAAgB;QAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAyB,EAAE;QAC3C,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,EAAE,EAAE,OAAO,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC;QAElG,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,KAAK,EAAE,CAAC;YACV,GAAG,GAAG,WAAW,KAAK,GAAG,CAAC;QAC5B,CAAC;QAED,MAAM,MAAM,GAAQ;YAClB,GAAG;YACH,KAAK;YACL,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;SACzB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAM,+BAA+B,EAAE,MAAM,CAAC,CAAC;QAErF,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC;YAC1C,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE;YACxC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;YAClC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;SAC5B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,SAAmB,CAAC,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC;QACnF,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;SACzB,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAM,0BAA0B,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;QAEpF,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE;YACxC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;YAClC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;SAC5B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,KAAa,EAAE,OAAe,EAAE,QAAiB;QAClF,MAAM,IAAI,GAAQ;YAChB,IAAI,EAAE,MAAM;YACZ,KAAK;YACL,KAAK,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE;YACxB,IAAI,EAAE;gBACJ,OAAO,EAAE;oBACP,KAAK,EAAE,OAAO;oBACd,cAAc,EAAE,SAAS;iBAC1B;aACF;SACF,CAAC;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAM,wBAAwB,EAAE,IAAI,CAAC,CAAC;QAEzE,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE;YACxC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;YAClC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;SAC5B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,KAAa,EAAE,OAAe,EAAE,OAAe;QAC9E,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,GAAG,CAAC,EAAE;YAChC,KAAK;YACL,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE;gBACJ,OAAO,EAAE;oBACP,KAAK,EAAE,OAAO;oBACd,cAAc,EAAE,SAAS;iBAC1B;aACF;SACF,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAM,0BAA0B,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC;QAElF,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE;YACxC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;YAClC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;SAC5B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc;QAC7B,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE;QAChC,MAAM,MAAM,GAAG;YACb,KAAK;YACL,MAAM,EAAE,mBAAmB;SAC5B,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAM,sBAAsB,EAAE,MAAM,CAAC,CAAC;QAC5E,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB,EAAE,QAAgB,EAAE;QACxD,MAAM,MAAM,GAAG;YACb,QAAQ;YACR,KAAK;YACL,MAAM,EAAE,sBAAsB;SAC/B,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAM,wBAAwB,EAAE,MAAM,CAAC,CAAC;QAE9E,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC;YAC1C,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE;YACxC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,QAAQ;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;YAClC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;SAC5B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc;QACjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAM,0BAA0B,MAAM,mBAAmB,EAAE;YAC/F,MAAM,EAAE,SAAS;SAClB,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;YAC1C,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,QAAQ,EAAE,GAAG,CAAC,KAAK;YACnB,SAAS,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE;YACxC,QAAQ,EAAE,GAAG,CAAC,UAAU,EAAE,QAAQ,IAAI,CAAC;YACvC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE;YACzC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE;SACxC,CAAC,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,MAAc,EACd,QAAiB,EACjB,WAAoB,EACpB,QAAiB;QAEjB,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;QACrD,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;QAE5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAEjG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;QAEzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,0BAA0B,MAAM,mBAAmB,EAAE,IAAI,CAAC,CAAC;QAC3G,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,YAAoB;QACzC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,0BAA0B,YAAY,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,UAAU,CACd,MAAc,EACd,QAAiB,EACjB,WAAoB,EACpB,QAAiB,EACjB,UAOI,EAAE;QAEN,qBAAqB;QACrB,MAAM,aAAa,GAAG,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAE5F,2BAA2B;QAC3B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAE1F,+CAA+C;QAC/C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAE/C,6BAA6B;QAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,aAAa,CAAC;QACzC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,OAAO,CAAC,KAAK,gBAAgB,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACnG,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,qCAAqC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7F,IAAI,WAAW,GAAG,YAAY,SAAS,GAAG,SAAS,YAAY,GAAG,iCAAiC,aAAa,MAAM,CAAC;QAEvH,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,WAAW,IAAI,kBAAkB,OAAO,CAAC,OAAO,mBAAmB,CAAC;QACtE,CAAC;QACD,WAAW,IAAI,aAAa,CAAC;QAE7B,6CAA6C;QAC7C,IAAI,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC;QACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC;QAE9C,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;YACvB,cAAc,GAAG,WAAW,GAAG,IAAI,GAAG,cAAc,CAAC;QACvD,CAAC;aAAM,IAAI,QAAQ,KAAK,eAAe,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YAC/D,uCAAuC;YACvC,MAAM,YAAY,GAAG,IAAI,MAAM,CAAC,oBAAoB,OAAO,CAAC,WAAW,eAAe,EAAE,GAAG,CAAC,CAAC;YAC7F,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACjD,IAAI,KAAK,EAAE,CAAC;gBACV,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,WAAW,EAAE,CAAC,CAAC;YAC9E,CAAC;iBAAM,CAAC;gBACN,0CAA0C;gBAC1C,cAAc,GAAG,cAAc,GAAG,IAAI,GAAG,WAAW,CAAC;YACvD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,kBAAkB;YAClB,cAAc,GAAG,cAAc,GAAG,IAAI,GAAG,WAAW,CAAC;QACvD,CAAC;QAED,0BAA0B;QAC1B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,EAAE,cAAc,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAE1G,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,QAAgB,EAChB,KAAa,EACb,OAAe,EACf,QAAiB,EACjB,MAA0B;QAE1B,wBAAwB;QACxB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAEvE,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,sDAAsD;YACtD,MAAM,cAAc,GAAiF,EAAE,CAAC;YAExG,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,CAAC;oBACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;oBACjH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,gBAAgB,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAC1G,cAAc,CAAC,IAAI,CAAC;wBAClB,GAAG,KAAK;wBACR,QAAQ,EAAE,gBAAgB;wBAC1B,gBAAgB;wBAChB,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;qBAC1C,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,0BAA0B,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;gBACrF,CAAC;YACH,CAAC;YAED,kFAAkF;YAClF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,IAAI,cAAc,GAAG,OAAO,CAAC;gBAC7B,MAAM,wBAAwB,GAA0B,EAAE,CAAC;gBAE3D,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;oBACjC,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;oBAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,gBAAgB,IAAI,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC;oBAE9D,2CAA2C;oBAC3C,MAAM,WAAW,GAAG,IAAI,MAAM,CAAC,eAAe,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBAE1G,IAAI,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;wBACrC,wCAAwC;wBACxC,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;oBACpE,CAAC;yBAAM,CAAC;wBACN,yDAAyD;wBACzD,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACrC,CAAC;gBACH,CAAC;gBAED,gDAAgD;gBAChD,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxC,MAAM,cAAc,GAAG,wBAAwB;yBAC5C,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;yBACtC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACd,cAAc,IAAI,OAAO,cAAc,EAAE,CAAC;gBAC5C,CAAC;gBAED,uCAAuC;gBACvC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,gBAAgB,CAAC,KAAsD;QAC7E,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,QAAQ,IAAI,OAAO,CAAC;QACrE,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,QAAQ,CAAC;QAClC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,KAAK,gBAAgB,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,qCAAqC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAEzF,IAAI,MAAM,GAAG,YAAY,SAAS,GAAG,SAAS,YAAY,GAAG,iCAAiC,QAAQ,MAAM,CAAC;QAE7G,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,kBAAkB,KAAK,CAAC,OAAO,mBAAmB,CAAC;QAC/D,CAAC;QACD,MAAM,IAAI,aAAa,CAAC;QAExB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB;IAElB,KAAK,CAAC,WAAW,CAAC,MAAc;QAC9B,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,8BAA8B;SACvC,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAM,0BAA0B,MAAM,gBAAgB,EAAE,MAAM,CAAC,CAAC;QAEtG,OAAO,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE,CAAC,CAAC;YAC9C,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,IAAI,SAAS;YAC5D,eAAe,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS;YACtD,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW,IAAI,EAAE;YAC3C,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE;YACpC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;SACtC,CAAC,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,IAAY;QAC3C,MAAM,IAAI,GAAG;YACX,IAAI,EAAE,SAAS;YACf,SAAS,EAAE;gBACT,EAAE,EAAE,MAAM;gBACV,IAAI,EAAE,MAAM;aACb;YACD,IAAI,EAAE;gBACJ,OAAO,EAAE;oBACP,KAAK,EAAE,IAAI;oBACX,cAAc,EAAE,SAAS;iBAC1B;aACF;SACF,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAM,wBAAwB,EAAE,IAAI,CAAC,CAAC;QAE5E,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;YAC1C,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,IAAI,SAAS;YAC5D,eAAe,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS;YACtD,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW,IAAI,EAAE;YAC3C,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE;YACpC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;SACtC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,IAAY,EAAE,OAAe;QAClE,MAAM,IAAI,GAAG;YACX,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,GAAG,CAAC,EAAE;YAChC,IAAI,EAAE;gBACJ,OAAO,EAAE;oBACP,KAAK,EAAE,IAAI;oBACX,cAAc,EAAE,SAAS;iBAC1B;aACF;SACF,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAM,0BAA0B,SAAS,EAAE,EAAE,IAAI,CAAC,CAAC;QAExF,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;YAC1C,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,IAAI,SAAS;YAC5D,eAAe,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS;YACtD,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW,IAAI,EAAE;YAC3C,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE;YACpC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;SACtC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB;QACnC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,0BAA0B,SAAS,EAAE,CAAC,CAAC;IAClE,CAAC;CACF"}
@@ -0,0 +1,58 @@
1
+ import { JiraIssue, SearchOptions, JiraTransitionResponse } from '../types.js';
2
+ export declare class JiraService {
3
+ private client;
4
+ private fieldSuggestionRules;
5
+ constructor();
6
+ searchIssues(options?: SearchOptions): Promise<JiraIssue[]>;
7
+ getIssue(issueKey: string): Promise<JiraIssue>;
8
+ createIssue(projectKey: string, summary: string, description: string, issueType?: string, additionalFields?: {
9
+ duedate?: string;
10
+ priority?: string;
11
+ labels?: string[];
12
+ components?: string[];
13
+ assignee?: string;
14
+ customFields?: Record<string, any>;
15
+ }): Promise<JiraIssue>;
16
+ updateIssue(issueKey: string, fields: {
17
+ summary?: string;
18
+ description?: string;
19
+ assignee?: string;
20
+ }): Promise<JiraIssue>;
21
+ transitionIssue(issueKey: string, transitionId: string, fieldValues?: Record<string, any>): Promise<JiraTransitionResponse>;
22
+ getIssueTransitions(issueKey: string): Promise<any[]>;
23
+ addComment(issueKey: string, comment: string): Promise<void>;
24
+ getComments(issueKey: string): Promise<any[]>;
25
+ updateComment(issueKey: string, commentId: string, comment: string): Promise<any>;
26
+ deleteComment(issueKey: string, commentId: string): Promise<void>;
27
+ private extractTextFromADF;
28
+ private formatWikiMarkup;
29
+ getProjects(): Promise<any[]>;
30
+ getIssueTypes(projectKey: string): Promise<any[]>;
31
+ assignIssue(issueKey: string, accountId: string): Promise<void>;
32
+ getUsersByQuery(query: string): Promise<any[]>;
33
+ getAttachments(issueKey: string): Promise<any[]>;
34
+ addAttachment(issueKey: string, filename: string, fileContent: string): Promise<any>;
35
+ deleteAttachment(attachmentId: string): Promise<void>;
36
+ getIssueLinks(issueKey: string): Promise<any[]>;
37
+ createIssueLink(inwardIssueKey: string, outwardIssueKey: string, linkType: string): Promise<any>;
38
+ deleteIssueLink(linkId: string): Promise<void>;
39
+ getIssueLinkTypes(): Promise<any[]>;
40
+ getWorkLogs(issueKey: string): Promise<any[]>;
41
+ addWorkLog(issueKey: string, timeSpentSeconds: number, comment?: string, started?: string): Promise<any>;
42
+ updateWorkLog(issueKey: string, worklogId: string, timeSpentSeconds?: number, comment?: string): Promise<any>;
43
+ deleteWorkLog(issueKey: string, worklogId: string): Promise<void>;
44
+ getWatchers(issueKey: string): Promise<any>;
45
+ addWatcher(issueKey: string, accountId: string): Promise<void>;
46
+ removeWatcher(issueKey: string, accountId: string): Promise<void>;
47
+ getSubTasks(issueKey: string): Promise<any[]>;
48
+ createSubTask(parentKey: string, summary: string, description: string): Promise<any>;
49
+ getIssueHistory(issueKey: string): Promise<any[]>;
50
+ private handleTransitionError;
51
+ private analyzeField;
52
+ private generateFieldSuggestion;
53
+ transitionIssueInteractive(issueKey: string, transitionId: string, providedFields?: Record<string, any>): Promise<JiraTransitionResponse>;
54
+ private parseDescriptionToWikiMarkup;
55
+ private parseDescriptionToADF;
56
+ private parseInlineFormatting;
57
+ }
58
+ //# sourceMappingURL=jira.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jira.d.ts","sourceRoot":"","sources":["../../src/services/jira.ts"],"names":[],"mappings":"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"}