@venturialstd/slack 0.1.29 → 0.1.31
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/README.md +581 -0
- package/dist/clients/slack.client.d.ts +11 -0
- package/dist/clients/slack.client.d.ts.map +1 -0
- package/dist/clients/slack.client.js +58 -0
- package/dist/clients/slack.client.js.map +1 -0
- package/dist/constants/index.d.ts +3 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/constants/index.js +19 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/{slack/constants → constants}/slack.event.constant.d.ts +1 -0
- package/dist/constants/slack.event.constant.d.ts.map +1 -0
- package/dist/constants/slack.event.constant.js.map +1 -0
- package/dist/constants/slack.settings.constant.d.ts +4 -0
- package/dist/constants/slack.settings.constant.d.ts.map +1 -0
- package/dist/{slack/constants/slack.constants.js → constants/slack.settings.constant.js} +2 -2
- package/dist/constants/slack.settings.constant.js.map +1 -0
- package/dist/{slack/controllers → controllers}/slack.webhook.controller.d.ts +1 -0
- package/dist/controllers/slack.webhook.controller.d.ts.map +1 -0
- package/dist/{slack/controllers → controllers}/slack.webhook.controller.js +4 -4
- package/dist/controllers/slack.webhook.controller.js.map +1 -0
- package/dist/{slack/dtos → dtos}/slack-webhook-event.dto.d.ts +1 -0
- package/dist/dtos/slack-webhook-event.dto.d.ts.map +1 -0
- package/dist/dtos/slack-webhook-event.dto.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +35 -0
- package/dist/index.js.map +1 -0
- package/dist/services/index.d.ts +14 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +30 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/slack-auth.service.d.ts +12 -0
- package/dist/services/slack-auth.service.d.ts.map +1 -0
- package/dist/{slack/services/slack-message.service.js → services/slack-auth.service.js} +14 -14
- package/dist/services/slack-auth.service.js.map +1 -0
- package/dist/services/slack-chat.service.d.ts +18 -0
- package/dist/services/slack-chat.service.d.ts.map +1 -0
- package/dist/services/slack-chat.service.js +110 -0
- package/dist/services/slack-chat.service.js.map +1 -0
- package/dist/services/slack-conversations.service.d.ts +27 -0
- package/dist/services/slack-conversations.service.d.ts.map +1 -0
- package/dist/services/slack-conversations.service.js +200 -0
- package/dist/services/slack-conversations.service.js.map +1 -0
- package/dist/services/slack-dnd.service.d.ts +15 -0
- package/dist/services/slack-dnd.service.d.ts.map +1 -0
- package/dist/services/slack-dnd.service.js +80 -0
- package/dist/services/slack-dnd.service.js.map +1 -0
- package/dist/services/slack-emoji.service.d.ts +11 -0
- package/dist/services/slack-emoji.service.d.ts.map +1 -0
- package/dist/services/slack-emoji.service.js +40 -0
- package/dist/services/slack-emoji.service.js.map +1 -0
- package/dist/services/slack-files.service.d.ts +29 -0
- package/dist/services/slack-files.service.d.ts.map +1 -0
- package/dist/services/slack-files.service.js +175 -0
- package/dist/services/slack-files.service.js.map +1 -0
- package/dist/services/slack-pins.service.d.ts +13 -0
- package/dist/services/slack-pins.service.d.ts.map +1 -0
- package/dist/{slack/services/slack-channel.service.js → services/slack-pins.service.js} +18 -17
- package/dist/services/slack-pins.service.js.map +1 -0
- package/dist/services/slack-reactions.service.d.ts +14 -0
- package/dist/services/slack-reactions.service.d.ts.map +1 -0
- package/dist/services/slack-reactions.service.js +70 -0
- package/dist/services/slack-reactions.service.js.map +1 -0
- package/dist/services/slack-reminders.service.d.ts +15 -0
- package/dist/services/slack-reminders.service.d.ts.map +1 -0
- package/dist/services/slack-reminders.service.js +80 -0
- package/dist/services/slack-reminders.service.js.map +1 -0
- package/dist/services/slack-search.service.d.ts +13 -0
- package/dist/services/slack-search.service.d.ts.map +1 -0
- package/dist/services/slack-search.service.js +60 -0
- package/dist/services/slack-search.service.js.map +1 -0
- package/dist/services/slack-stars.service.d.ts +28 -0
- package/dist/services/slack-stars.service.d.ts.map +1 -0
- package/dist/services/slack-stars.service.js +77 -0
- package/dist/services/slack-stars.service.js.map +1 -0
- package/dist/services/slack-team.service.d.ts +15 -0
- package/dist/services/slack-team.service.d.ts.map +1 -0
- package/dist/services/slack-team.service.js +80 -0
- package/dist/services/slack-team.service.js.map +1 -0
- package/dist/services/slack-users.service.d.ts +20 -0
- package/dist/services/slack-users.service.d.ts.map +1 -0
- package/dist/services/slack-users.service.js +130 -0
- package/dist/services/slack-users.service.js.map +1 -0
- package/dist/services/slack-views.service.d.ts +14 -0
- package/dist/services/slack-views.service.d.ts.map +1 -0
- package/dist/services/slack-views.service.js +70 -0
- package/dist/services/slack-views.service.js.map +1 -0
- package/dist/services/slack-workflows.service.d.ts +28 -0
- package/dist/services/slack-workflows.service.d.ts.map +1 -0
- package/dist/services/slack-workflows.service.js +77 -0
- package/dist/services/slack-workflows.service.js.map +1 -0
- package/dist/settings/slack.settings.d.ts +3 -0
- package/dist/settings/slack.settings.d.ts.map +1 -0
- package/dist/settings/slack.settings.js +19 -0
- package/dist/settings/slack.settings.js.map +1 -0
- package/dist/slack.module.d.ts +3 -0
- package/dist/slack.module.d.ts.map +1 -0
- package/dist/slack.module.js +57 -0
- package/dist/slack.module.js.map +1 -0
- package/dist/types/slack-api-types.d.ts +19 -0
- package/dist/types/slack-api-types.d.ts.map +1 -0
- package/dist/types/slack-api-types.js +8 -0
- package/dist/types/slack-api-types.js.map +1 -0
- package/dist/types/slack.config.type.d.ts +4 -0
- package/dist/types/slack.config.type.d.ts.map +1 -0
- package/dist/{slack/interfaces/slack-interface.js → types/slack.config.type.js} +1 -1
- package/dist/types/slack.config.type.js.map +1 -0
- package/dist/types/slack.event.type.d.ts +7 -0
- package/dist/types/slack.event.type.d.ts.map +1 -0
- package/dist/types/slack.event.type.js.map +1 -0
- package/package.json +16 -13
- package/dist/slack/clients/slack.client.d.ts +0 -13
- package/dist/slack/clients/slack.client.js +0 -92
- package/dist/slack/clients/slack.client.js.map +0 -1
- package/dist/slack/constants/slack.constants.d.ts +0 -3
- package/dist/slack/constants/slack.constants.js.map +0 -1
- package/dist/slack/constants/slack.event.constant.js.map +0 -1
- package/dist/slack/controllers/slack.webhook.controller.js.map +0 -1
- package/dist/slack/dtos/slack-webhook-event.dto.js.map +0 -1
- package/dist/slack/index.d.ts +0 -7
- package/dist/slack/index.js +0 -16
- package/dist/slack/index.js.map +0 -1
- package/dist/slack/interfaces/slack-interface.d.ts +0 -12
- package/dist/slack/interfaces/slack-interface.js.map +0 -1
- package/dist/slack/services/slack-channel.service.d.ts +0 -10
- package/dist/slack/services/slack-channel.service.js.map +0 -1
- package/dist/slack/services/slack-message.service.d.ts +0 -9
- package/dist/slack/services/slack-message.service.js.map +0 -1
- package/dist/slack/slack.module.d.ts +0 -2
- package/dist/slack/slack.module.js +0 -28
- package/dist/slack/slack.module.js.map +0 -1
- package/dist/slack/tsconfig.build.tsbuildinfo +0 -1
- package/dist/slack/types/slack.event.type.d.ts +0 -20
- package/dist/slack/types/slack.event.type.js.map +0 -1
- /package/dist/{slack/constants → constants}/slack.event.constant.js +0 -0
- /package/dist/{slack/dtos → dtos}/slack-webhook-event.dto.js +0 -0
- /package/dist/{slack/types → types}/slack.event.type.js +0 -0
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
var SlackClient_1;
|
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.SlackClient = void 0;
|
|
14
|
-
const common_1 = require("@nestjs/common");
|
|
15
|
-
const web_api_1 = require("@slack/web-api");
|
|
16
|
-
const core_1 = require("@venturialstd/core");
|
|
17
|
-
const slack_constants_1 = require("../constants/slack.constants");
|
|
18
|
-
let SlackClient = SlackClient_1 = class SlackClient {
|
|
19
|
-
logger;
|
|
20
|
-
settingsService;
|
|
21
|
-
constructor(logger, settingsService) {
|
|
22
|
-
this.logger = logger;
|
|
23
|
-
this.settingsService = settingsService;
|
|
24
|
-
this.logger.setContext(SlackClient_1.name);
|
|
25
|
-
}
|
|
26
|
-
async initializeClient() {
|
|
27
|
-
try {
|
|
28
|
-
const token = await this.settingsService.get(slack_constants_1.SLACK_SETTING_KEYS.CREDENTIALS_BOT_TOKEN);
|
|
29
|
-
if (!token) {
|
|
30
|
-
throw new Error('Slack bot token not configured');
|
|
31
|
-
}
|
|
32
|
-
const client = new web_api_1.WebClient(token);
|
|
33
|
-
const auth = await client.auth.test();
|
|
34
|
-
this.logger.log(`Slack connected: ${auth.user} (${auth.team})`);
|
|
35
|
-
return client;
|
|
36
|
-
}
|
|
37
|
-
catch (error) {
|
|
38
|
-
this.logger.error('Error connecting slack', error);
|
|
39
|
-
throw error;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
async listChannels() {
|
|
43
|
-
const client = await this.initializeClient();
|
|
44
|
-
return await client.conversations.list({
|
|
45
|
-
types: 'public_channel,private_channel',
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
async postMessage(channelId, text) {
|
|
49
|
-
const client = await this.initializeClient();
|
|
50
|
-
return await client.chat.postMessage({
|
|
51
|
-
channel: channelId,
|
|
52
|
-
text: text,
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
async replyToThread(channelId, threadTs, text) {
|
|
56
|
-
const client = await this.initializeClient();
|
|
57
|
-
return await client.chat.postMessage({
|
|
58
|
-
channel: channelId,
|
|
59
|
-
text: text,
|
|
60
|
-
thread_ts: threadTs,
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
async addReaction(channelId, timestamp, reaction) {
|
|
64
|
-
const client = await this.initializeClient();
|
|
65
|
-
return await client.reactions.add({
|
|
66
|
-
channel: channelId,
|
|
67
|
-
timestamp: timestamp,
|
|
68
|
-
name: reaction,
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
async getChannelHistory(channelId, limit = 10) {
|
|
72
|
-
const client = await this.initializeClient();
|
|
73
|
-
return await client.conversations.history({
|
|
74
|
-
channel: channelId,
|
|
75
|
-
limit: limit,
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
async getThreadReplies(channelId, threadTs) {
|
|
79
|
-
const client = await this.initializeClient();
|
|
80
|
-
return await client.conversations.replies({
|
|
81
|
-
channel: channelId,
|
|
82
|
-
ts: threadTs,
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
};
|
|
86
|
-
exports.SlackClient = SlackClient;
|
|
87
|
-
exports.SlackClient = SlackClient = SlackClient_1 = __decorate([
|
|
88
|
-
(0, common_1.Injectable)(),
|
|
89
|
-
__metadata("design:paramtypes", [core_1.AppLogger,
|
|
90
|
-
core_1.SettingsService])
|
|
91
|
-
], SlackClient);
|
|
92
|
-
//# sourceMappingURL=slack.client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack.client.js","sourceRoot":"","sources":["../../../clients/slack.client.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable } from '@nestjs/common';\r\nimport { WebClient } from '@slack/web-api';\r\nimport { AppLogger, SettingsService } from '@venturialstd/core';\r\n\r\nimport { SLACK_SETTING_KEYS } from '../constants/slack.constants';\r\n\r\n@Injectable()\r\nexport class SlackClient {\r\n constructor(\r\n private logger: AppLogger,\r\n private settingsService: SettingsService,\r\n ) {\r\n this.logger.setContext(SlackClient.name);\r\n }\r\n\r\n private async initializeClient(): Promise<WebClient> {\r\n try {\r\n const token = await this.settingsService.get(SLACK_SETTING_KEYS.CREDENTIALS_BOT_TOKEN);\r\n\r\n if (!token) {\r\n throw new Error('Slack bot token not configured');\r\n }\r\n const client = new WebClient(token);\r\n\r\n const auth = await client.auth.test();\r\n this.logger.log(`Slack connected: ${auth.user} (${auth.team})`);\r\n\r\n return client;\r\n } catch (error) {\r\n this.logger.error('Error connecting slack', error as Error);\r\n throw error;\r\n }\r\n }\r\n\r\n async listChannels() {\r\n const client = await this.initializeClient();\r\n return await client.conversations.list({\r\n types: 'public_channel,private_channel',\r\n });\r\n }\r\n\r\n async postMessage(channelId: string, text: string) {\r\n const client = await this.initializeClient();\r\n return await client.chat.postMessage({\r\n channel: channelId,\r\n text: text,\r\n });\r\n }\r\n\r\n async replyToThread(channelId: string, threadTs: string, text: string) {\r\n const client = await this.initializeClient();\r\n return await client.chat.postMessage({\r\n channel: channelId,\r\n text: text,\r\n thread_ts: threadTs,\r\n });\r\n }\r\n\r\n async addReaction(channelId: string, timestamp: string, reaction: string) {\r\n const client = await this.initializeClient();\r\n return await client.reactions.add({\r\n channel: channelId,\r\n timestamp: timestamp,\r\n name: reaction,\r\n });\r\n }\r\n\r\n async getChannelHistory(channelId: string, limit: number = 10) {\r\n const client = await this.initializeClient();\r\n return await client.conversations.history({\r\n channel: channelId,\r\n limit: limit,\r\n });\r\n }\r\n\r\n async getThreadReplies(channelId: string, threadTs: string) {\r\n const client = await this.initializeClient();\r\n return await client.conversations.replies({\r\n channel: channelId,\r\n ts: threadTs,\r\n });\r\n }\r\n}\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack.constants.js","sourceRoot":"","sources":["../../../constants/slack.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG;IAChC,qBAAqB,EAAE,gCAAgC;CACxD,CAAC","sourcesContent":["export const SLACK_SETTING_KEYS = {\r\n CREDENTIALS_BOT_TOKEN: 'GLOBAL:SLACK:GENERAL:BOT_TOKEN',\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack.event.constant.js","sourceRoot":"","sources":["../../../constants/slack.event.constant.ts"],"names":[],"mappings":";;;AAAa,QAAA,0BAA0B,GAAG;IACxC,wBAAwB,EAAE,gCAAgC;CAClD,CAAC;AAEE,QAAA,YAAY,GAAG;IAC1B,gBAAgB,EAAE,kBAAkB;IACpC,cAAc,EAAE,gBAAgB;CACjC,CAAC","sourcesContent":["export const EVENT_EMITTER_SLACK_EVENTS = {\r\n WEBHOOK_INCOMING_MESSAGE: 'slack_webhook_incoming_message',\r\n} as const;\r\n\r\nexport const SLACK_EVENTS = {\r\n URL_VERIFICATION: 'url_verification',\r\n EVENT_CALLBACK: 'event_callback',\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack.webhook.controller.js","sourceRoot":"","sources":["../../../controllers/slack.webhook.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAkE;AAClE,yDAAsD;AACtD,6CAAwD;AACxD,6CAA+C;AAE/C,4EAA6F;AAC7F,6EAAuE;AAMhE,IAAM,sBAAsB,8BAA5B,MAAM,sBAAsB;IAEd;IACT;IAFV,YACmB,YAA2B,EACpC,MAAiB;QADR,iBAAY,GAAZ,YAAY,CAAe;QACpC,WAAM,GAAN,MAAM,CAAW;QAEzB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,wBAAsB,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAKK,AAAN,KAAK,CAAC,aAAa,CAAS,IAA0B;QACpD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAExC,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAY,CAAC,gBAAgB,EAAE,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAU,EAAE,CAAC;QACxC,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,mCAAY,CAAC,cAAc,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,SAAS,cAAc,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAE7E,IAAI,CAAC,YAAY,CAAC,IAAI,CACpB,iDAA0B,CAAC,wBAAwB,EACnD,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,EACpB,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CAAC;YAEF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IACtB,CAAC;CACF,CAAA;AAnCY,wDAAsB;AAW3B;IAHL,IAAA,aAAI,GAAE;IACN,IAAA,iBAAQ,EAAC,GAAG,CAAC;IACb,IAAA,sBAAY,EAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;IACpC,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAAO,8CAAoB;;2DAuBrD;iCAlCU,sBAAsB;IAFlC,IAAA,iBAAO,EAAC,uBAAuB,CAAC;IAChC,IAAA,mBAAU,EAAC,uBAAuB,CAAC;qCAGD,6BAAa;QAC5B,gBAAS;GAHhB,sBAAsB,CAmClC","sourcesContent":["import { Body, Controller, HttpCode, Post } from '@nestjs/common';\r\nimport { EventEmitter2 } from '@nestjs/event-emitter';\r\nimport { ApiOperation, ApiTags } from '@nestjs/swagger';\r\nimport { AppLogger } from '@venturialstd/core';\r\n\r\nimport { EVENT_EMITTER_SLACK_EVENTS, SLACK_EVENTS } from '../constants/slack.event.constant';\r\nimport { SlackWebhookEventDto } from '../dtos/slack-webhook-event.dto';\r\nimport { SlackChallengeResponse, SlackOkResponse } from '../types/slack.event.type';\r\n\r\ntype SlackWebhookResponse = SlackChallengeResponse | SlackOkResponse;\r\n@ApiTags('general/slack/webhook')\r\n@Controller('general/slack/webhook')\r\nexport class SlackWebhookController {\r\n constructor(\r\n private readonly eventEmitter: EventEmitter2,\r\n private logger: AppLogger,\r\n ) {\r\n this.logger.setContext(SlackWebhookController.name);\r\n }\r\n\r\n @Post()\r\n @HttpCode(200)\r\n @ApiOperation({ summary: 'Receive webhooks from Slack' })\r\n async handleWebhook(@Body() data: SlackWebhookEventDto): Promise<SlackWebhookResponse> {\r\n this.logger.log(`Webhook ${data.type}`);\r\n\r\n if (data.type === SLACK_EVENTS.URL_VERIFICATION) {\r\n this.logger.log(`Webhook ${data.type}`);\r\n return { challenge: data.challenge! };\r\n }\r\n\r\n if (data.type === SLACK_EVENTS.EVENT_CALLBACK && data.event) {\r\n const eventType = data.event.type;\r\n this.logger.log(`Event received: ${eventType} from user ${data.event.user}`);\r\n\r\n this.eventEmitter.emit(\r\n EVENT_EMITTER_SLACK_EVENTS.WEBHOOK_INCOMING_MESSAGE,\r\n { data: data.event },\r\n { async: true },\r\n );\r\n\r\n return { ok: true };\r\n }\r\n\r\n this.logger.warn(`Type of event is not supported: ${data.type}`);\r\n return { ok: true };\r\n }\r\n}\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack-webhook-event.dto.js","sourceRoot":"","sources":["../../../dtos/slack-webhook-event.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAmE;AACnE,yDAAyC;AACzC,qDAA0F;AAE1F,MAAa,aAAa;IAGxB,IAAI,CAAS;IAKb,IAAI,CAAU;IAKd,IAAI,CAAU;IAId,OAAO,CAAS;IAIhB,EAAE,CAAS;IAKX,SAAS,CAAU;IAKnB,MAAM,CAAU;IAKhB,aAAa,CAAU;IAKvB,IAAI,CAAU;IAKd,QAAQ,CAAU;IAKlB,YAAY,CAAU;IAKtB,MAAM,CAAa;CACpB;AAzDD,sCAyDC;AAtDC;IAFC,IAAA,qBAAW,GAAE;IACb,IAAA,0BAAQ,GAAE;;2CACE;AAKb;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;2CACG;AAKd;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;2CACG;AAId;IAFC,IAAA,qBAAW,GAAE;IACb,IAAA,0BAAQ,GAAE;;8CACK;AAIhB;IAFC,IAAA,qBAAW,GAAE;IACb,IAAA,0BAAQ,GAAE;;yCACA;AAKX;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;gDACQ;AAKnB;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;6CACK;AAKhB;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;oDACY;AAKvB;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;2CACG;AAKd;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;+CACO;AAKlB;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mDACW;AAKtB;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;;6CACS;AAGrB,MAAa,oBAAoB;IAG/B,IAAI,CAAS;IAKb,SAAS,CAAU;IAKnB,KAAK,CAAU;IAKf,OAAO,CAAU;IAOjB,KAAK,CAAiB;CACvB;AA1BD,oDA0BC;AAvBC;IAFC,IAAA,qBAAW,GAAE;IACb,IAAA,0BAAQ,GAAE;;kDACE;AAKb;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;uDACQ;AAKnB;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mDACI;AAKf;IAHC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;qDACM;AAOjB;IALC,IAAA,6BAAmB,GAAE;IACrB,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,aAAa,CAAC;8BAClB,aAAa;mDAAC","sourcesContent":["import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';\r\nimport { Type } from 'class-transformer';\r\nimport { IsArray, IsObject, IsOptional, IsString, ValidateNested } from 'class-validator';\r\n\r\nexport class SlackEventDto {\r\n @ApiProperty()\r\n @IsString()\r\n type: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n user?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n text?: string;\r\n\r\n @ApiProperty()\r\n @IsString()\r\n channel: string;\r\n\r\n @ApiProperty()\r\n @IsString()\r\n ts: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n thread_ts?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n bot_id?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n client_msg_id?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n team?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n event_ts?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n channel_type?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsArray()\r\n blocks?: unknown[];\r\n}\r\n\r\nexport class SlackWebhookEventDto {\r\n @ApiProperty()\r\n @IsString()\r\n type: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n challenge?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n token?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsString()\r\n team_id?: string;\r\n\r\n @ApiPropertyOptional()\r\n @IsOptional()\r\n @IsObject()\r\n @ValidateNested()\r\n @Type(() => SlackEventDto)\r\n event?: SlackEventDto;\r\n}\r\n"]}
|
package/dist/slack/index.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export { SlackClient } from './clients/slack.client';
|
|
2
|
-
export { EVENT_EMITTER_SLACK_EVENTS } from './constants/slack.event.constant';
|
|
3
|
-
export { SlackWebhookController } from './controllers/slack.webhook.controller';
|
|
4
|
-
export { SlackConfig } from './interfaces/slack-interface';
|
|
5
|
-
export { SlackChannelService } from './services/slack-channel.service';
|
|
6
|
-
export { SlackMessageService } from './services/slack-message.service';
|
|
7
|
-
export { SlackModule } from './slack.module';
|
package/dist/slack/index.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SlackModule = exports.SlackMessageService = exports.SlackChannelService = exports.SlackWebhookController = exports.EVENT_EMITTER_SLACK_EVENTS = exports.SlackClient = void 0;
|
|
4
|
-
var slack_client_1 = require("./clients/slack.client");
|
|
5
|
-
Object.defineProperty(exports, "SlackClient", { enumerable: true, get: function () { return slack_client_1.SlackClient; } });
|
|
6
|
-
var slack_event_constant_1 = require("./constants/slack.event.constant");
|
|
7
|
-
Object.defineProperty(exports, "EVENT_EMITTER_SLACK_EVENTS", { enumerable: true, get: function () { return slack_event_constant_1.EVENT_EMITTER_SLACK_EVENTS; } });
|
|
8
|
-
var slack_webhook_controller_1 = require("./controllers/slack.webhook.controller");
|
|
9
|
-
Object.defineProperty(exports, "SlackWebhookController", { enumerable: true, get: function () { return slack_webhook_controller_1.SlackWebhookController; } });
|
|
10
|
-
var slack_channel_service_1 = require("./services/slack-channel.service");
|
|
11
|
-
Object.defineProperty(exports, "SlackChannelService", { enumerable: true, get: function () { return slack_channel_service_1.SlackChannelService; } });
|
|
12
|
-
var slack_message_service_1 = require("./services/slack-message.service");
|
|
13
|
-
Object.defineProperty(exports, "SlackMessageService", { enumerable: true, get: function () { return slack_message_service_1.SlackMessageService; } });
|
|
14
|
-
var slack_module_1 = require("./slack.module");
|
|
15
|
-
Object.defineProperty(exports, "SlackModule", { enumerable: true, get: function () { return slack_module_1.SlackModule; } });
|
|
16
|
-
//# sourceMappingURL=index.js.map
|
package/dist/slack/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":";;;AAAA,uDAAqD;AAA5C,2GAAA,WAAW,OAAA;AACpB,yEAA8E;AAArE,kIAAA,0BAA0B,OAAA;AACnC,mFAAgF;AAAvE,kIAAA,sBAAsB,OAAA;AAE/B,0EAAuE;AAA9D,4HAAA,mBAAmB,OAAA;AAC5B,0EAAuE;AAA9D,4HAAA,mBAAmB,OAAA;AAC5B,+CAA6C;AAApC,2GAAA,WAAW,OAAA","sourcesContent":["export { SlackClient } from './clients/slack.client';\r\nexport { EVENT_EMITTER_SLACK_EVENTS } from './constants/slack.event.constant';\r\nexport { SlackWebhookController } from './controllers/slack.webhook.controller';\r\nexport { SlackConfig } from './interfaces/slack-interface';\r\nexport { SlackChannelService } from './services/slack-channel.service';\r\nexport { SlackMessageService } from './services/slack-message.service';\r\nexport { SlackModule } from './slack.module';\r\n"]}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Logger } from 'winston';
|
|
2
|
-
export interface SlackConfig {
|
|
3
|
-
botToken: string;
|
|
4
|
-
}
|
|
5
|
-
export interface AppLoggerConfig {
|
|
6
|
-
setContext(context: string): void;
|
|
7
|
-
error(message: string, meta?: Record<string, unknown> | Error): Logger;
|
|
8
|
-
warn(message: string, meta?: Record<string, unknown>): Logger;
|
|
9
|
-
debug(message: string, meta?: Record<string, unknown>): Logger;
|
|
10
|
-
verbose(message: string, meta?: Record<string, unknown>): Logger;
|
|
11
|
-
log(message: string, meta?: Record<string, unknown>): Logger;
|
|
12
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack-interface.js","sourceRoot":"","sources":["../../../interfaces/slack-interface.ts"],"names":[],"mappings":"","sourcesContent":["import { Logger } from 'winston';\r\nexport interface SlackConfig {\r\n botToken: string;\r\n}\r\nexport interface AppLoggerConfig {\r\n setContext(context: string): void;\r\n error(message: string, meta?: Record<string, unknown> | Error): Logger;\r\n warn(message: string, meta?: Record<string, unknown>): Logger;\r\n debug(message: string, meta?: Record<string, unknown>): Logger;\r\n verbose(message: string, meta?: Record<string, unknown>): Logger;\r\n log(message: string, meta?: Record<string, unknown>): Logger;\r\n}\r\n"]}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { AppLogger } from '@venturialstd/core';
|
|
2
|
-
import { SlackClient } from '../clients/slack.client';
|
|
3
|
-
export declare class SlackChannelService {
|
|
4
|
-
private readonly slackClient;
|
|
5
|
-
private logger;
|
|
6
|
-
constructor(slackClient: SlackClient, logger: AppLogger);
|
|
7
|
-
listChannels(): Promise<import("@slack/web-api").ConversationsListResponse>;
|
|
8
|
-
getChannelHistory(channelId: string, limit?: number): Promise<import("@slack/web-api").ConversationsHistoryResponse>;
|
|
9
|
-
getThreadReplies(channelId: string, threadTs: string): Promise<import("@slack/web-api").ConversationsRepliesResponse>;
|
|
10
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack-channel.service.js","sourceRoot":"","sources":["../../../services/slack-channel.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAA+C;AAE/C,0DAAsD;AAG/C,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAEX;IACT;IAFV,YACmB,WAAwB,EACjC,MAAiB;QADR,gBAAW,GAAX,WAAW,CAAa;QACjC,WAAM,GAAN,MAAM,CAAW;QAEzB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,qBAAmB,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAc,CAAC,CAAC;YAClE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IACD,KAAK,CAAC,iBAAiB,CAAC,SAAiB,EAAE,QAAgB,EAAE;QAC3D,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACpE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAc,CAAC,CAAC;YACzE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,SAAiB,EAAE,QAAgB;QACxD,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAc,CAAC,CAAC;YACxE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAA;AAjCY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,mBAAU,GAAE;qCAGqB,0BAAW;QACzB,gBAAS;GAHhB,mBAAmB,CAiC/B","sourcesContent":["import { Injectable } from '@nestjs/common';\r\nimport { AppLogger } from '@venturialstd/core';\r\n\r\nimport { SlackClient } from '../clients/slack.client';\r\n\r\n@Injectable()\r\nexport class SlackChannelService {\r\n constructor(\r\n private readonly slackClient: SlackClient,\r\n private logger: AppLogger,\r\n ) {\r\n this.logger.setContext(SlackChannelService.name);\r\n }\r\n\r\n async listChannels() {\r\n try {\r\n return await this.slackClient.listChannels();\r\n } catch (error) {\r\n this.logger.error('Error listing Slack channels', error as Error);\r\n throw error;\r\n }\r\n }\r\n async getChannelHistory(channelId: string, limit: number = 10) {\r\n try {\r\n return await this.slackClient.getChannelHistory(channelId, limit);\r\n } catch (error) {\r\n this.logger.error('Error getting Slack channel history', error as Error);\r\n throw error;\r\n }\r\n }\r\n\r\n async getThreadReplies(channelId: string, threadTs: string) {\r\n try {\r\n return await this.slackClient.getThreadReplies(channelId, threadTs);\r\n } catch (error) {\r\n this.logger.error('Error getting Slack thread replies', error as Error);\r\n throw error;\r\n }\r\n }\r\n}\r\n"]}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { AppLogger } from '@venturialstd/core';
|
|
2
|
-
import { SlackClient } from '../clients/slack.client';
|
|
3
|
-
export declare class SlackMessageService {
|
|
4
|
-
private readonly slackClient;
|
|
5
|
-
private logger;
|
|
6
|
-
constructor(slackClient: SlackClient, logger: AppLogger);
|
|
7
|
-
sendMessage(channelId: string, text: string): Promise<import("@slack/web-api").ChatPostMessageResponse>;
|
|
8
|
-
replyToThread(channelId: string, threadTs: string, text: string): Promise<import("@slack/web-api").ChatPostMessageResponse>;
|
|
9
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack-message.service.js","sourceRoot":"","sources":["../../../services/slack-message.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAA+C;AAE/C,0DAAsD;AAG/C,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAEX;IACT;IAFV,YACmB,WAAwB,EACjC,MAAiB;QADR,gBAAW,GAAX,WAAW,CAAa;QACjC,WAAM,GAAN,MAAM,CAAW;QAEzB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,qBAAmB,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,IAAY;QAC/C,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAc,CAAC,CAAC;YACjE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,QAAgB,EAAE,IAAY;QACnE,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QACzE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAc,CAAC,CAAC;YACpE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAA;AAzBY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,mBAAU,GAAE;qCAGqB,0BAAW;QACzB,gBAAS;GAHhB,mBAAmB,CAyB/B","sourcesContent":["import { Injectable } from '@nestjs/common';\r\nimport { AppLogger } from '@venturialstd/core';\r\n\r\nimport { SlackClient } from '../clients/slack.client';\r\n\r\n@Injectable()\r\nexport class SlackMessageService {\r\n constructor(\r\n private readonly slackClient: SlackClient,\r\n private logger: AppLogger,\r\n ) {\r\n this.logger.setContext(SlackMessageService.name);\r\n }\r\n\r\n async sendMessage(channelId: string, text: string) {\r\n try {\r\n return await this.slackClient.postMessage(channelId, text);\r\n } catch (error) {\r\n this.logger.error('Error sending Slack message', error as Error);\r\n throw error;\r\n }\r\n }\r\n\r\n async replyToThread(channelId: string, threadTs: string, text: string) {\r\n try {\r\n return await this.slackClient.replyToThread(channelId, threadTs, text);\r\n } catch (error) {\r\n this.logger.error('Error replying to Slack thread', error as Error);\r\n throw error;\r\n }\r\n }\r\n}\r\n"]}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.SlackModule = void 0;
|
|
10
|
-
const common_1 = require("@nestjs/common");
|
|
11
|
-
const event_emitter_1 = require("@nestjs/event-emitter");
|
|
12
|
-
const core_1 = require("@venturialstd/core");
|
|
13
|
-
const slack_client_1 = require("./clients/slack.client");
|
|
14
|
-
const slack_webhook_controller_1 = require("./controllers/slack.webhook.controller");
|
|
15
|
-
const slack_channel_service_1 = require("./services/slack-channel.service");
|
|
16
|
-
const slack_message_service_1 = require("./services/slack-message.service");
|
|
17
|
-
let SlackModule = class SlackModule {
|
|
18
|
-
};
|
|
19
|
-
exports.SlackModule = SlackModule;
|
|
20
|
-
exports.SlackModule = SlackModule = __decorate([
|
|
21
|
-
(0, common_1.Module)({
|
|
22
|
-
imports: [event_emitter_1.EventEmitterModule.forRoot(), core_1.SettingsModule],
|
|
23
|
-
controllers: [slack_webhook_controller_1.SlackWebhookController],
|
|
24
|
-
providers: [core_1.AppLogger, slack_client_1.SlackClient, slack_channel_service_1.SlackChannelService, slack_message_service_1.SlackMessageService],
|
|
25
|
-
exports: [slack_channel_service_1.SlackChannelService, slack_message_service_1.SlackMessageService],
|
|
26
|
-
})
|
|
27
|
-
], SlackModule);
|
|
28
|
-
//# sourceMappingURL=slack.module.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slack.module.js","sourceRoot":"","sources":["../../slack.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,yDAA2D;AAC3D,6CAA+D;AAE/D,yDAAqD;AACrD,qFAAgF;AAChF,4EAAuE;AACvE,4EAAuE;AAQhE,IAAM,WAAW,GAAjB,MAAM,WAAW;CAAG,CAAA;AAAd,kCAAW;sBAAX,WAAW;IANvB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,kCAAkB,CAAC,OAAO,EAAE,EAAE,qBAAc,CAAC;QACvD,WAAW,EAAE,CAAC,iDAAsB,CAAC;QACrC,SAAS,EAAE,CAAC,gBAAS,EAAE,0BAAW,EAAE,2CAAmB,EAAE,2CAAmB,CAAC;QAC7E,OAAO,EAAE,CAAC,2CAAmB,EAAE,2CAAmB,CAAC;KACpD,CAAC;GACW,WAAW,CAAG","sourcesContent":["import { Module } from \"@nestjs/common\";\r\nimport { EventEmitterModule } from \"@nestjs/event-emitter\";\r\nimport { AppLogger, SettingsModule } from \"@venturialstd/core\";\r\n\r\nimport { SlackClient } from \"./clients/slack.client\";\r\nimport { SlackWebhookController } from \"./controllers/slack.webhook.controller\";\r\nimport { SlackChannelService } from \"./services/slack-channel.service\";\r\nimport { SlackMessageService } from \"./services/slack-message.service\";\r\n\r\n@Module({\r\n imports: [EventEmitterModule.forRoot(), SettingsModule],\r\n controllers: [SlackWebhookController],\r\n providers: [AppLogger, SlackClient, SlackChannelService, SlackMessageService],\r\n exports: [SlackChannelService, SlackMessageService],\r\n})\r\nexport class SlackModule {}\r\n"]}
|