@venturialstd/jira 0.1.21 → 0.1.23

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.
@@ -29,7 +29,7 @@ let JiraClient = JiraClient_1 = class JiraClient {
29
29
  this.logger.setContext(JiraClient_1.name);
30
30
  }
31
31
  async initializeClient() {
32
- const jiraToken = this.settingsService.get(jira_constants_1.JIRA_SETTING_KEYS.CREDENTIALS_JIRA_TOKEN);
32
+ const jiraToken = await this.settingsService.get(jira_constants_1.JIRA_SETTING_KEYS.CREDENTIALS_JIRA_TOKEN);
33
33
  const jiraAuth = Buffer.from(`${this.user}:${jiraToken}`).toString('base64');
34
34
  if (!jiraToken || !jiraAuth) {
35
35
  throw new Error('Jira token not configured or jiraAuth failed');
@@ -46,10 +46,10 @@ let JiraClient = JiraClient_1 = class JiraClient {
46
46
  async getTicketInformation(ticketId) {
47
47
  try {
48
48
  await this.initializeClient();
49
- const ticketResponse = await this.apiClient.get(`issue/VL-75`);
49
+ const ticketResponse = await this.apiClient.get(`issue/${ticketId}`);
50
50
  const ticketData = ticketResponse.data;
51
51
  const description = ticketData.fields.description || 'No description available';
52
- const commentsResponse = await this.apiClient.get(`issue/VL-75/comment`);
52
+ const commentsResponse = await this.apiClient.get(`issue/${ticketId}/comment`);
53
53
  const comments = commentsResponse.data.comments || [];
54
54
  this.logger.log(`Ticket ${ticketId} fetched successfully`);
55
55
  return { description, comments };
@@ -1 +1 @@
1
- {"version":3,"file":"jira.client.js","sourceRoot":"","sources":["../../../clients/jira.client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAAgE;AAChE,kDAA6C;AAE7C,gEAAgE;AAGzD,IAAM,UAAU,kBAAhB,MAAM,UAAU;IAIX;IACA;IAJF,SAAS,CAAgB;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACrD,YACU,MAAiB,EACjB,eAAgC;QADhC,WAAM,GAAN,MAAM,CAAW;QACjB,oBAAe,GAAf,eAAe,CAAiB;QAExC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAU,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAKO,KAAK,CAAC,gBAAgB;QAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,kCAAiB,CAAC,sBAAsB,CAAC,CAAC;QAErF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC7E,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,eAAK,CAAC,MAAM,CAAC;YAC5B,OAAO,EAAE,gDAAgD;YACzD,OAAO,EAAE;gBACP,aAAa,EAAE,SAAS,QAAQ,EAAE;gBAClC,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,KAAK;aACd;SACF,CAAC,CAAC;IACL,CAAC;IAOD,KAAK,CAAC,oBAAoB,CAAC,QAAgB;QACzC,IAAI,CAAC;YAEH,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAM9B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC/D,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC;YAGvC,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,WAAW,IAAI,0BAA0B,CAAC;YAGhF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACzE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;YAEtD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,QAAQ,uBAAuB,CAAC,CAAC;YAC3D,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,QAAQ,EAAE,EAAE,KAAc,CAAC,CAAC;YACvE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAA;AA/DY,gCAAU;qBAAV,UAAU;IADtB,IAAA,mBAAU,GAAE;qCAKO,gBAAS;QACA,sBAAe;GAL/B,UAAU,CA+DtB","sourcesContent":["import { Injectable } from '@nestjs/common';\r\nimport { AppLogger, SettingsService } from '@venturialstd/core';\r\nimport axios, { AxiosInstance } from 'axios';\r\n\r\nimport { JIRA_SETTING_KEYS } from '../constants/jira.constants';\r\n\r\n@Injectable()\r\nexport class JiraClient {\r\n private apiClient: AxiosInstance;\r\n private readonly user = 'aaron.mendoza@venturial.io';\r\n constructor(\r\n private logger: AppLogger,\r\n private settingsService: SettingsService,\r\n ) {\r\n this.logger.setContext(JiraClient.name);\r\n }\r\n\r\n /**\r\n * Inicializa el cliente HTTP de Jira con las credenciales.\r\n */\r\n private async initializeClient(): Promise<void> {\r\n // const jiraToken = await this.settingsService.get(JIRA_SETTING_KEYS.CREDENTIALS_JIRA_TOKEN);\r\n const jiraToken = this.settingsService.get(JIRA_SETTING_KEYS.CREDENTIALS_JIRA_TOKEN);\r\n\r\n const jiraAuth = Buffer.from(`${this.user}:${jiraToken}`).toString('base64');\r\n if (!jiraToken || !jiraAuth) {\r\n throw new Error('Jira token not configured or jiraAuth failed');\r\n }\r\n\r\n this.apiClient = axios.create({\r\n baseURL: 'https://venturial-io.atlassian.net/rest/api/3/', // Cambia esto por la URL de tu instancia de Jira\r\n headers: {\r\n Authorization: `Basic ${jiraAuth}`,\r\n 'Content-Type': 'application/json',\r\n Accept: '*/*',\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Obtiene la información de un ticket de Jira.\r\n * @param ticketId - El ID o clave del ticket (por ejemplo, \"PROJ-123\").\r\n * @returns La descripción y los comentarios del ticket.\r\n */\r\n async getTicketInformation(ticketId: string): Promise<{ description: string; comments: any[] }> {\r\n try {\r\n // Asegúrate de que el cliente esté inicializado\r\n await this.initializeClient();\r\n\r\n // REMUEVE ESTA LÍNEA:\r\n // ticketId = 'VL-75';\r\n\r\n // Obtiene los detalles del ticket\r\n const ticketResponse = await this.apiClient.get(`issue/VL-75`);\r\n const ticketData = ticketResponse.data;\r\n\r\n // Extrae la descripción\r\n const description = ticketData.fields.description || 'No description available';\r\n\r\n // Obtiene los comentarios del ticket\r\n const commentsResponse = await this.apiClient.get(`issue/VL-75/comment`);\r\n const comments = commentsResponse.data.comments || [];\r\n\r\n this.logger.log(`Ticket ${ticketId} fetched successfully`);\r\n return { description, comments };\r\n } catch (error) {\r\n this.logger.error(`Error fetching ticket ${ticketId}`, error as Error);\r\n throw error;\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"jira.client.js","sourceRoot":"","sources":["../../../clients/jira.client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAAgE;AAChE,kDAA6C;AAE7C,gEAAgE;AAGzD,IAAM,UAAU,kBAAhB,MAAM,UAAU;IAIX;IACA;IAJF,SAAS,CAAgB;IAChB,IAAI,GAAG,4BAA4B,CAAC;IACrD,YACU,MAAiB,EACjB,eAAgC;QADhC,WAAM,GAAN,MAAM,CAAW;QACjB,oBAAe,GAAf,eAAe,CAAiB;QAExC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAU,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAKO,KAAK,CAAC,gBAAgB;QAC5B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,kCAAiB,CAAC,sBAAsB,CAAC,CAAC;QAE3F,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC7E,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,eAAK,CAAC,MAAM,CAAC;YAC5B,OAAO,EAAE,gDAAgD;YACzD,OAAO,EAAE;gBACP,aAAa,EAAE,SAAS,QAAQ,EAAE;gBAClC,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,KAAK;aACd;SACF,CAAC,CAAC;IACL,CAAC;IAOD,KAAK,CAAC,oBAAoB,CAAC,QAAgB;QACzC,IAAI,CAAC;YAEH,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAG9B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,QAAQ,EAAE,CAAC,CAAC;YACrE,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC;YAGvC,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,WAAW,IAAI,0BAA0B,CAAC;YAGhF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,QAAQ,UAAU,CAAC,CAAC;YAC/E,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;YAEtD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,QAAQ,uBAAuB,CAAC,CAAC;YAC3D,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,QAAQ,EAAE,EAAE,KAAc,CAAC,CAAC;YACvE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAA;AA3DY,gCAAU;qBAAV,UAAU;IADtB,IAAA,mBAAU,GAAE;qCAKO,gBAAS;QACA,sBAAe;GAL/B,UAAU,CA2DtB","sourcesContent":["import { Injectable } from '@nestjs/common';\r\nimport { AppLogger, SettingsService } from '@venturialstd/core';\r\nimport axios, { AxiosInstance } from 'axios';\r\n\r\nimport { JIRA_SETTING_KEYS } from '../constants/jira.constants';\r\n\r\n@Injectable()\r\nexport class JiraClient {\r\n private apiClient: AxiosInstance;\r\n private readonly user = 'aaron.mendoza@venturial.io';\r\n constructor(\r\n private logger: AppLogger,\r\n private settingsService: SettingsService,\r\n ) {\r\n this.logger.setContext(JiraClient.name);\r\n }\r\n\r\n /**\r\n * Inicializa el cliente HTTP de Jira con las credenciales.\r\n */\r\n private async initializeClient(): Promise<void> {\r\n const jiraToken = await this.settingsService.get(JIRA_SETTING_KEYS.CREDENTIALS_JIRA_TOKEN);\r\n\r\n const jiraAuth = Buffer.from(`${this.user}:${jiraToken}`).toString('base64');\r\n if (!jiraToken || !jiraAuth) {\r\n throw new Error('Jira token not configured or jiraAuth failed');\r\n }\r\n\r\n this.apiClient = axios.create({\r\n baseURL: 'https://venturial-io.atlassian.net/rest/api/3/',\r\n headers: {\r\n Authorization: `Basic ${jiraAuth}`,\r\n 'Content-Type': 'application/json',\r\n Accept: '*/*',\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Obtiene la información de un ticket de Jira.\r\n * @param ticketId - El ID o clave del ticket (por ejemplo, \"PROJ-123\").\r\n * @returns La descripción y los comentarios del ticket.\r\n */\r\n async getTicketInformation(ticketId: string): Promise<{ description: string; comments: any[] }> {\r\n try {\r\n // Asegúrate de que el cliente esté inicializado\r\n await this.initializeClient();\r\n\r\n // Obtiene los detalles del ticket\r\n const ticketResponse = await this.apiClient.get(`issue/${ticketId}`);\r\n const ticketData = ticketResponse.data;\r\n\r\n // Extrae la descripción\r\n const description = ticketData.fields.description || 'No description available';\r\n\r\n // Obtiene los comentarios del ticket\r\n const commentsResponse = await this.apiClient.get(`issue/${ticketId}/comment`);\r\n const comments = commentsResponse.data.comments || [];\r\n\r\n this.logger.log(`Ticket ${ticketId} fetched successfully`);\r\n return { description, comments };\r\n } catch (error) {\r\n this.logger.error(`Error fetching ticket ${ticketId}`, error as Error);\r\n throw error;\r\n }\r\n }\r\n}\r\n"]}