chz-telegram-bot 0.5.4 → 0.6.8
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 +41 -31
- package/dist/builtin/helpAction.d.ts +2 -0
- package/dist/builtin/helpAction.d.ts.map +1 -0
- package/dist/builtin/helpAction.js +14 -0
- package/dist/dtos/chatHistoryMessage.d.ts +35 -0
- package/dist/dtos/chatHistoryMessage.d.ts.map +1 -0
- package/dist/dtos/chatHistoryMessage.js +32 -0
- package/dist/dtos/chatInfo.d.ts +17 -0
- package/dist/dtos/chatInfo.d.ts.map +1 -0
- package/dist/dtos/chatInfo.js +16 -0
- package/dist/dtos/commandTriggerCheckResult.d.ts +24 -0
- package/dist/dtos/commandTriggerCheckResult.d.ts.map +1 -0
- package/dist/dtos/commandTriggerCheckResult.js +34 -0
- package/dist/dtos/cooldownInfo.d.ts +13 -0
- package/dist/dtos/cooldownInfo.d.ts.map +1 -0
- package/dist/dtos/cooldownInfo.js +12 -0
- package/dist/dtos/incomingMessage.d.ts +19 -0
- package/dist/dtos/incomingMessage.d.ts.map +1 -0
- package/dist/dtos/incomingMessage.js +63 -0
- package/dist/dtos/incomingQuery.d.ts +10 -0
- package/dist/dtos/incomingQuery.d.ts.map +1 -0
- package/dist/dtos/incomingQuery.js +14 -0
- package/dist/dtos/messageInfo.d.ts +22 -0
- package/dist/dtos/messageInfo.d.ts.map +1 -0
- package/dist/dtos/messageInfo.js +20 -0
- package/dist/dtos/propertyProviderSets.d.ts +16 -0
- package/dist/dtos/propertyProviderSets.d.ts.map +1 -0
- package/dist/dtos/propertyProviderSets.js +1 -0
- package/dist/dtos/replyInfo.d.ts +6 -0
- package/dist/dtos/replyInfo.d.ts.map +1 -0
- package/dist/dtos/replyInfo.js +8 -0
- package/dist/dtos/responses/delay.d.ts +16 -0
- package/dist/dtos/responses/delay.d.ts.map +1 -0
- package/dist/dtos/responses/delay.js +15 -0
- package/dist/dtos/responses/imageMessage.d.ts +22 -0
- package/dist/dtos/responses/imageMessage.d.ts.map +1 -0
- package/dist/dtos/responses/imageMessage.js +21 -0
- package/dist/dtos/responses/inlineQueryResponse.d.ts +13 -0
- package/dist/dtos/responses/inlineQueryResponse.d.ts.map +1 -0
- package/dist/dtos/responses/inlineQueryResponse.js +15 -0
- package/dist/dtos/responses/reaction.d.ts +16 -0
- package/dist/dtos/responses/reaction.d.ts.map +1 -0
- package/dist/dtos/responses/reaction.js +17 -0
- package/dist/dtos/responses/textMessage.d.ts +23 -0
- package/dist/dtos/responses/textMessage.d.ts.map +1 -0
- package/dist/dtos/responses/textMessage.js +24 -0
- package/dist/dtos/responses/unpin.d.ts +15 -0
- package/dist/dtos/responses/unpin.d.ts.map +1 -0
- package/dist/dtos/responses/unpin.js +15 -0
- package/dist/dtos/responses/videoMessage.d.ts +22 -0
- package/dist/dtos/responses/videoMessage.d.ts.map +1 -0
- package/dist/dtos/responses/videoMessage.js +21 -0
- package/dist/dtos/userInfo.d.ts +12 -0
- package/dist/dtos/userInfo.d.ts.map +1 -0
- package/dist/dtos/userInfo.js +12 -0
- package/dist/entities/actions/commandAction.d.ts +31 -0
- package/dist/entities/actions/commandAction.d.ts.map +1 -0
- package/dist/entities/actions/commandAction.js +149 -0
- package/dist/entities/actions/inlineQueryAction.d.ts +14 -0
- package/dist/entities/actions/inlineQueryAction.d.ts.map +1 -0
- package/dist/entities/actions/inlineQueryAction.js +51 -0
- package/dist/entities/actions/replyCaptureAction.d.ts +15 -0
- package/dist/entities/actions/replyCaptureAction.d.ts.map +1 -0
- package/dist/entities/actions/replyCaptureAction.js +66 -0
- package/dist/entities/actions/scheduledAction.d.ts +24 -0
- package/dist/entities/actions/scheduledAction.d.ts.map +1 -0
- package/dist/entities/actions/scheduledAction.js +92 -0
- package/dist/entities/botInstance.d.ts +36 -0
- package/dist/entities/botInstance.d.ts.map +1 -0
- package/dist/entities/botInstance.js +39 -0
- package/dist/entities/cachedStateFactory.d.ts +7 -0
- package/dist/entities/cachedStateFactory.d.ts.map +1 -0
- package/dist/entities/cachedStateFactory.js +8 -0
- package/dist/entities/context/baseContext.d.ts +39 -0
- package/dist/entities/context/baseContext.d.ts.map +1 -0
- package/dist/entities/context/baseContext.js +56 -0
- package/dist/entities/context/chatContext.d.ts +50 -0
- package/dist/entities/context/chatContext.d.ts.map +1 -0
- package/dist/entities/context/chatContext.js +65 -0
- package/dist/entities/context/inlineQueryContext.d.ts +27 -0
- package/dist/entities/context/inlineQueryContext.d.ts.map +1 -0
- package/dist/entities/context/inlineQueryContext.js +29 -0
- package/dist/entities/context/messageContext.d.ts +92 -0
- package/dist/entities/context/messageContext.d.ts.map +1 -0
- package/dist/entities/context/messageContext.js +116 -0
- package/dist/entities/context/replyContext.d.ts +89 -0
- package/dist/entities/context/replyContext.d.ts.map +1 -0
- package/dist/entities/context/replyContext.js +124 -0
- package/dist/entities/states/actionStateBase.d.ts +6 -0
- package/dist/entities/states/actionStateBase.d.ts.map +1 -0
- package/dist/entities/states/actionStateBase.js +4 -0
- package/dist/entities/taskRecord.d.ts +8 -0
- package/dist/entities/taskRecord.d.ts.map +1 -0
- package/dist/entities/taskRecord.js +10 -0
- package/dist/eslint.config.d.ts +3 -0
- package/dist/eslint.config.d.ts.map +1 -0
- package/dist/eslint.config.js +51 -0
- package/dist/helpers/builders/commandActionBuilder.d.ts +100 -0
- package/dist/helpers/builders/commandActionBuilder.d.ts.map +1 -0
- package/dist/helpers/builders/commandActionBuilder.js +146 -0
- package/dist/helpers/builders/inlineQueryActionBuilder.d.ts +37 -0
- package/dist/helpers/builders/inlineQueryActionBuilder.d.ts.map +1 -0
- package/dist/helpers/builders/inlineQueryActionBuilder.js +50 -0
- package/dist/helpers/builders/scheduledActionBuilder.d.ts +68 -0
- package/dist/helpers/builders/scheduledActionBuilder.d.ts.map +1 -0
- package/dist/helpers/builders/scheduledActionBuilder.js +95 -0
- package/dist/helpers/mapUtils.d.ts +10 -0
- package/dist/helpers/mapUtils.d.ts.map +1 -0
- package/dist/helpers/mapUtils.js +13 -0
- package/dist/helpers/noop.d.ts +9 -0
- package/dist/helpers/noop.d.ts.map +1 -0
- package/dist/helpers/noop.js +17 -0
- package/dist/helpers/objectFromEntries.d.ts +2 -0
- package/dist/helpers/objectFromEntries.d.ts.map +1 -0
- package/dist/helpers/objectFromEntries.js +3 -0
- package/dist/helpers/timeConvertions.d.ts +5 -0
- package/dist/helpers/timeConvertions.d.ts.map +1 -0
- package/dist/helpers/timeConvertions.js +9 -0
- package/dist/helpers/toArray.d.ts +2 -0
- package/dist/helpers/toArray.d.ts.map +1 -0
- package/dist/helpers/toArray.js +3 -0
- package/dist/helpers/traceFactory.d.ts +3 -0
- package/dist/helpers/traceFactory.d.ts.map +1 -0
- package/dist/helpers/traceFactory.js +3 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/main.d.ts +49 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +33 -0
- package/dist/services/actionProcessingService.d.ts +25 -0
- package/dist/services/actionProcessingService.d.ts.map +1 -0
- package/dist/services/actionProcessingService.js +50 -0
- package/dist/services/actionProcessors/baseProcessor.d.ts +18 -0
- package/dist/services/actionProcessors/baseProcessor.d.ts.map +1 -0
- package/dist/services/actionProcessors/baseProcessor.js +33 -0
- package/dist/services/actionProcessors/commandActionProcessor.d.ts +19 -0
- package/dist/services/actionProcessors/commandActionProcessor.d.ts.map +1 -0
- package/dist/services/actionProcessors/commandActionProcessor.js +130 -0
- package/dist/services/actionProcessors/inlineQueryActionProcessor.d.ts +11 -0
- package/dist/services/actionProcessors/inlineQueryActionProcessor.d.ts.map +1 -0
- package/dist/services/actionProcessors/inlineQueryActionProcessor.js +69 -0
- package/dist/services/actionProcessors/scheduledActionProcessor.d.ts +17 -0
- package/dist/services/actionProcessors/scheduledActionProcessor.d.ts.map +1 -0
- package/dist/services/actionProcessors/scheduledActionProcessor.js +55 -0
- package/dist/services/jsonFileStorage.d.ts +25 -0
- package/dist/services/jsonFileStorage.d.ts.map +1 -0
- package/dist/services/jsonFileStorage.js +133 -0
- package/dist/services/nodeTimeoutScheduler.d.ts +13 -0
- package/dist/services/nodeTimeoutScheduler.d.ts.map +1 -0
- package/dist/services/nodeTimeoutScheduler.js +50 -0
- package/dist/services/responseProcessingQueue.d.ts +12 -0
- package/dist/services/responseProcessingQueue.d.ts.map +1 -0
- package/dist/services/responseProcessingQueue.js +37 -0
- package/dist/services/telegramApi.d.ts +23 -0
- package/dist/services/telegramApi.d.ts.map +1 -0
- package/dist/services/telegramApi.js +163 -0
- package/dist/types/action.d.ts +14 -0
- package/dist/types/action.d.ts.map +1 -0
- package/dist/types/action.js +1 -0
- package/dist/types/actionState.d.ts +5 -0
- package/dist/types/actionState.d.ts.map +1 -0
- package/dist/types/actionState.js +1 -0
- package/dist/types/cachedValueAccessor.d.ts +2 -0
- package/dist/types/cachedValueAccessor.d.ts.map +1 -0
- package/dist/types/cachedValueAccessor.js +1 -0
- package/dist/types/capture.d.ts +24 -0
- package/dist/types/capture.d.ts.map +1 -0
- package/dist/types/capture.js +1 -0
- package/dist/types/commandCondition.d.ts +8 -0
- package/dist/types/commandCondition.d.ts.map +1 -0
- package/dist/types/commandCondition.js +1 -0
- package/dist/types/commandTrigger.d.ts +2 -0
- package/dist/types/commandTrigger.d.ts.map +1 -0
- package/dist/types/commandTrigger.js +1 -0
- package/dist/types/events.d.ts +193 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +69 -0
- package/dist/types/externalAliases.d.ts +11 -0
- package/dist/types/externalAliases.d.ts.map +1 -0
- package/dist/types/externalAliases.js +1 -0
- package/dist/types/handlers.d.ts +21 -0
- package/dist/types/handlers.d.ts.map +1 -0
- package/dist/types/handlers.js +1 -0
- package/dist/types/inputFile.d.ts +5 -0
- package/dist/types/inputFile.d.ts.map +1 -0
- package/dist/types/inputFile.js +1 -0
- package/dist/types/logger.d.ts +1 -0
- package/dist/types/logger.d.ts.map +1 -0
- package/dist/types/logger.js +1 -0
- package/dist/types/messageSendingOptions.d.ts +9 -0
- package/dist/types/messageSendingOptions.d.ts.map +1 -0
- package/dist/types/messageSendingOptions.js +1 -0
- package/dist/types/messageTypes.d.ts +20 -0
- package/dist/types/messageTypes.d.ts.map +1 -0
- package/dist/types/messageTypes.js +18 -0
- package/dist/types/propertyProvider.d.ts +8 -0
- package/dist/types/propertyProvider.d.ts.map +1 -0
- package/dist/types/propertyProvider.js +1 -0
- package/dist/types/response.d.ts +39 -0
- package/dist/types/response.d.ts.map +1 -0
- package/dist/types/response.js +9 -0
- package/dist/types/scheduler.d.ts +7 -0
- package/dist/types/scheduler.d.ts.map +1 -0
- package/dist/types/scheduler.js +1 -0
- package/dist/types/storage.d.ts +11 -0
- package/dist/types/storage.d.ts.map +1 -0
- package/dist/types/storage.js +1 -0
- package/dist/types/timeValues.d.ts +15 -0
- package/dist/types/timeValues.d.ts.map +1 -0
- package/dist/types/timeValues.js +1 -0
- package/dist/types/trace.d.ts +6 -0
- package/dist/types/trace.d.ts.map +1 -0
- package/dist/types/trace.js +1 -0
- package/entities/actions/commandAction.ts +11 -3
- package/entities/actions/inlineQueryAction.ts +9 -1
- package/entities/actions/replyCaptureAction.ts +9 -3
- package/entities/actions/scheduledAction.ts +31 -10
- package/entities/botInstance.ts +18 -25
- package/entities/context/baseContext.ts +9 -4
- package/index.ts +1 -1
- package/main.ts +1 -10
- package/package.json +38 -38
- package/services/actionProcessingService.ts +11 -15
- package/services/actionProcessors/baseProcessor.ts +9 -9
- package/services/actionProcessors/commandActionProcessor.ts +35 -46
- package/services/actionProcessors/inlineQueryActionProcessor.ts +24 -20
- package/services/actionProcessors/scheduledActionProcessor.ts +5 -10
- package/services/jsonFileStorage.ts +27 -1
- package/services/nodeTimeoutScheduler.ts +22 -22
- package/services/telegramApi.ts +53 -23
- package/types/events.ts +285 -0
- package/services/jsonLogger.ts +0 -112
- package/types/logger.ts +0 -39
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { ChatInfo } from '../dtos/chatInfo';
|
|
2
|
+
import { IncomingMessage } from '../dtos/incomingMessage';
|
|
3
|
+
import { IncomingInlineQuery } from '../dtos/incomingQuery';
|
|
4
|
+
import { CommandAction } from '../entities/actions/commandAction';
|
|
5
|
+
import { ChatContext } from '../entities/context/chatContext';
|
|
6
|
+
import { InlineQueryContext } from '../entities/context/inlineQueryContext';
|
|
7
|
+
import { MessageContext } from '../entities/context/messageContext';
|
|
8
|
+
import { ReplyContext } from '../entities/context/replyContext';
|
|
9
|
+
import { ActionKey, IAction, IActionWithState } from './action';
|
|
10
|
+
import { IActionState } from './actionState';
|
|
11
|
+
import { BotInfo } from './externalAliases';
|
|
12
|
+
import { BotResponse } from './response';
|
|
13
|
+
import { Milliseconds } from './timeValues';
|
|
14
|
+
export declare const BotEventType: {
|
|
15
|
+
readonly error: "error.generic";
|
|
16
|
+
readonly messageRecieved: "message.recieved";
|
|
17
|
+
readonly messageProcessingStarted: "message.processingStarted";
|
|
18
|
+
readonly messageProcessingFinished: "message.processingFinished";
|
|
19
|
+
readonly beforeActionsExecuting: "message.beforeActionsExecuting";
|
|
20
|
+
readonly commandActionExecuting: "command.actionExecuting";
|
|
21
|
+
readonly commandActionExecuted: "command.actionExecuted";
|
|
22
|
+
readonly commandActionCaptureStarted: "command.captionStarted";
|
|
23
|
+
readonly commandActionCaptureAborted: "command.captionAborted";
|
|
24
|
+
readonly replyActionExecuting: "reply.actionExecuting";
|
|
25
|
+
readonly replyActionExecuted: "reply.actionExecuted";
|
|
26
|
+
readonly inlineActionExecuting: "inline.actionExecuting";
|
|
27
|
+
readonly inlineActionExecuted: "inline.actionExecuted";
|
|
28
|
+
readonly inlineProcessingStarted: "inline.processingStarted";
|
|
29
|
+
readonly inlineProcessingAborting: "inline.processingAborting";
|
|
30
|
+
readonly inlineProcessingAborted: "inline.processingAborted";
|
|
31
|
+
readonly scheduledActionExecuting: "scheduled.actionExecuting";
|
|
32
|
+
readonly scheduledActionExecuted: "scheduled.actionExecuted";
|
|
33
|
+
readonly scheduledActionCacheValueReturned: "scheduled.cachedValueReturned";
|
|
34
|
+
readonly scheduledActionCacheValueCreating: "scheduled.cachedValueCreating";
|
|
35
|
+
readonly apiRequestSending: "api.requestSending";
|
|
36
|
+
readonly apiRequestSent: "api.requestSent";
|
|
37
|
+
readonly storageLockAcquiring: "storage.lockAcquiring";
|
|
38
|
+
readonly storageLockAcquired: "storage.lockAcquired";
|
|
39
|
+
readonly storageLockReleased: "storage.lockReleased";
|
|
40
|
+
readonly storageStateSaving: "storage.stateSaving";
|
|
41
|
+
readonly storageStateSaved: "storage.stateSaved";
|
|
42
|
+
readonly storageStateLoading: "storage.stateLoading";
|
|
43
|
+
readonly storageStateLoaded: "storage.stateLoaded";
|
|
44
|
+
readonly taskCreated: "task.created";
|
|
45
|
+
readonly taskRun: "task.run";
|
|
46
|
+
readonly botStarting: "bot.starting";
|
|
47
|
+
readonly botStopping: "bot.stopping";
|
|
48
|
+
};
|
|
49
|
+
type BotEventTypeKeys = (typeof BotEventType)[keyof typeof BotEventType];
|
|
50
|
+
export type BotEventMap = {
|
|
51
|
+
[BotEventType.error]: {
|
|
52
|
+
error: Error;
|
|
53
|
+
};
|
|
54
|
+
[BotEventType.messageRecieved]: {
|
|
55
|
+
botInfo: BotInfo;
|
|
56
|
+
message: IncomingMessage;
|
|
57
|
+
};
|
|
58
|
+
[BotEventType.messageProcessingStarted]: {
|
|
59
|
+
botInfo: BotInfo;
|
|
60
|
+
message: IncomingMessage;
|
|
61
|
+
};
|
|
62
|
+
[BotEventType.messageProcessingFinished]: {
|
|
63
|
+
botInfo: BotInfo;
|
|
64
|
+
message: IncomingMessage;
|
|
65
|
+
};
|
|
66
|
+
[BotEventType.beforeActionsExecuting]: {
|
|
67
|
+
botInfo: BotInfo;
|
|
68
|
+
message: IncomingMessage;
|
|
69
|
+
commands: Set<CommandAction<IActionState>>;
|
|
70
|
+
};
|
|
71
|
+
[BotEventType.commandActionExecuting]: {
|
|
72
|
+
action: IActionWithState<IActionState>;
|
|
73
|
+
ctx: MessageContext<IActionState>;
|
|
74
|
+
state: IActionState;
|
|
75
|
+
};
|
|
76
|
+
[BotEventType.commandActionExecuted]: {
|
|
77
|
+
action: IActionWithState<IActionState>;
|
|
78
|
+
ctx: MessageContext<IActionState>;
|
|
79
|
+
state: IActionState;
|
|
80
|
+
};
|
|
81
|
+
[BotEventType.commandActionCaptureStarted]: {
|
|
82
|
+
parentMessageId: number;
|
|
83
|
+
chatInfo: ChatInfo;
|
|
84
|
+
};
|
|
85
|
+
[BotEventType.commandActionCaptureAborted]: {
|
|
86
|
+
parentMessageId: number;
|
|
87
|
+
chatInfo: ChatInfo;
|
|
88
|
+
};
|
|
89
|
+
[BotEventType.replyActionExecuting]: {
|
|
90
|
+
action: IAction;
|
|
91
|
+
ctx: ReplyContext<IActionState>;
|
|
92
|
+
};
|
|
93
|
+
[BotEventType.replyActionExecuted]: {
|
|
94
|
+
action: IAction;
|
|
95
|
+
ctx: ReplyContext<IActionState>;
|
|
96
|
+
};
|
|
97
|
+
[BotEventType.inlineActionExecuting]: {
|
|
98
|
+
action: IAction;
|
|
99
|
+
ctx: InlineQueryContext;
|
|
100
|
+
};
|
|
101
|
+
[BotEventType.inlineActionExecuted]: {
|
|
102
|
+
action: IAction;
|
|
103
|
+
ctx: InlineQueryContext;
|
|
104
|
+
};
|
|
105
|
+
[BotEventType.inlineProcessingStarted]: {
|
|
106
|
+
query: IncomingInlineQuery;
|
|
107
|
+
};
|
|
108
|
+
[BotEventType.inlineProcessingAborting]: {
|
|
109
|
+
abortedQuery: IncomingInlineQuery;
|
|
110
|
+
newQuery: IncomingInlineQuery;
|
|
111
|
+
};
|
|
112
|
+
[BotEventType.inlineProcessingAborted]: {
|
|
113
|
+
abortedQuery: IncomingInlineQuery;
|
|
114
|
+
};
|
|
115
|
+
[BotEventType.scheduledActionExecuting]: {
|
|
116
|
+
action: IAction;
|
|
117
|
+
ctx: ChatContext<IActionState>;
|
|
118
|
+
state: IActionState;
|
|
119
|
+
};
|
|
120
|
+
[BotEventType.scheduledActionExecuted]: {
|
|
121
|
+
action: IAction;
|
|
122
|
+
ctx: ChatContext<IActionState>;
|
|
123
|
+
state: IActionState;
|
|
124
|
+
};
|
|
125
|
+
[BotEventType.scheduledActionCacheValueCreating]: {
|
|
126
|
+
action: IAction;
|
|
127
|
+
ctx: ChatContext<IActionState>;
|
|
128
|
+
key: string;
|
|
129
|
+
};
|
|
130
|
+
[BotEventType.scheduledActionCacheValueReturned]: {
|
|
131
|
+
action: IAction;
|
|
132
|
+
ctx: ChatContext<IActionState>;
|
|
133
|
+
key: string;
|
|
134
|
+
};
|
|
135
|
+
[BotEventType.apiRequestSending]: {
|
|
136
|
+
response: BotResponse | null;
|
|
137
|
+
telegramMethod: string | null;
|
|
138
|
+
};
|
|
139
|
+
[BotEventType.apiRequestSent]: {
|
|
140
|
+
response: BotResponse | null;
|
|
141
|
+
telegramMethod: string | null;
|
|
142
|
+
};
|
|
143
|
+
[BotEventType.storageLockAcquiring]: ActionKey;
|
|
144
|
+
[BotEventType.storageLockAcquired]: ActionKey;
|
|
145
|
+
[BotEventType.storageLockReleased]: ActionKey;
|
|
146
|
+
[BotEventType.storageStateSaved]: {
|
|
147
|
+
key: ActionKey;
|
|
148
|
+
data: Record<number, unknown>;
|
|
149
|
+
};
|
|
150
|
+
[BotEventType.storageStateSaving]: {
|
|
151
|
+
key: ActionKey;
|
|
152
|
+
data: Record<number, unknown>;
|
|
153
|
+
};
|
|
154
|
+
[BotEventType.storageStateLoading]: {
|
|
155
|
+
action: IActionWithState<IActionState>;
|
|
156
|
+
chatId: number;
|
|
157
|
+
};
|
|
158
|
+
[BotEventType.storageStateLoaded]: {
|
|
159
|
+
action: IActionWithState<IActionState>;
|
|
160
|
+
chatId: number;
|
|
161
|
+
state: IActionState;
|
|
162
|
+
};
|
|
163
|
+
[BotEventType.taskCreated]: {
|
|
164
|
+
name: string;
|
|
165
|
+
ownerName: string;
|
|
166
|
+
delay?: Milliseconds;
|
|
167
|
+
interval?: Milliseconds;
|
|
168
|
+
};
|
|
169
|
+
[BotEventType.taskRun]: {
|
|
170
|
+
name: string;
|
|
171
|
+
ownerName: string;
|
|
172
|
+
delay?: Milliseconds;
|
|
173
|
+
interval?: Milliseconds;
|
|
174
|
+
};
|
|
175
|
+
[BotEventType.botStarting]: {
|
|
176
|
+
botName: string;
|
|
177
|
+
};
|
|
178
|
+
[BotEventType.botStopping]: {
|
|
179
|
+
botName: string;
|
|
180
|
+
};
|
|
181
|
+
};
|
|
182
|
+
type ListenerArgs<K extends keyof BotEventMap> = BotEventMap[K] extends undefined ? [] : [BotEventMap[K]];
|
|
183
|
+
export type Listener<K extends keyof BotEventMap> = (timestamp: number, ...args: ListenerArgs<K>) => void;
|
|
184
|
+
export type EachListener = (event: BotEventTypeKeys, timestamp: number, data: unknown) => void;
|
|
185
|
+
export declare class TypedEventEmitter {
|
|
186
|
+
private readonly listeners;
|
|
187
|
+
on<K extends keyof BotEventMap>(event: K, fn: Listener<K>): void;
|
|
188
|
+
onEach(fn: EachListener): void;
|
|
189
|
+
emit<K extends keyof BotEventMap>(event: K, ...args: ListenerArgs<K>): void;
|
|
190
|
+
events(): (keyof BotEventMap | '*')[];
|
|
191
|
+
}
|
|
192
|
+
export {};
|
|
193
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../types/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
export const BotEventType = {
|
|
2
|
+
error: 'error.generic',
|
|
3
|
+
messageRecieved: 'message.recieved',
|
|
4
|
+
messageProcessingStarted: 'message.processingStarted',
|
|
5
|
+
messageProcessingFinished: 'message.processingFinished',
|
|
6
|
+
beforeActionsExecuting: 'message.beforeActionsExecuting',
|
|
7
|
+
commandActionExecuting: 'command.actionExecuting',
|
|
8
|
+
commandActionExecuted: 'command.actionExecuted',
|
|
9
|
+
commandActionCaptureStarted: 'command.captionStarted',
|
|
10
|
+
commandActionCaptureAborted: 'command.captionAborted',
|
|
11
|
+
replyActionExecuting: 'reply.actionExecuting',
|
|
12
|
+
replyActionExecuted: 'reply.actionExecuted',
|
|
13
|
+
inlineActionExecuting: 'inline.actionExecuting',
|
|
14
|
+
inlineActionExecuted: 'inline.actionExecuted',
|
|
15
|
+
inlineProcessingStarted: 'inline.processingStarted',
|
|
16
|
+
inlineProcessingAborting: 'inline.processingAborting',
|
|
17
|
+
inlineProcessingAborted: 'inline.processingAborted',
|
|
18
|
+
scheduledActionExecuting: 'scheduled.actionExecuting',
|
|
19
|
+
scheduledActionExecuted: 'scheduled.actionExecuted',
|
|
20
|
+
scheduledActionCacheValueReturned: 'scheduled.cachedValueReturned',
|
|
21
|
+
scheduledActionCacheValueCreating: 'scheduled.cachedValueCreating',
|
|
22
|
+
apiRequestSending: 'api.requestSending',
|
|
23
|
+
apiRequestSent: 'api.requestSent',
|
|
24
|
+
storageLockAcquiring: 'storage.lockAcquiring',
|
|
25
|
+
storageLockAcquired: 'storage.lockAcquired',
|
|
26
|
+
storageLockReleased: 'storage.lockReleased',
|
|
27
|
+
storageStateSaving: 'storage.stateSaving',
|
|
28
|
+
storageStateSaved: 'storage.stateSaved',
|
|
29
|
+
storageStateLoading: 'storage.stateLoading',
|
|
30
|
+
storageStateLoaded: 'storage.stateLoaded',
|
|
31
|
+
taskCreated: 'task.created',
|
|
32
|
+
taskRun: 'task.run',
|
|
33
|
+
botStarting: 'bot.starting',
|
|
34
|
+
botStopping: 'bot.stopping'
|
|
35
|
+
};
|
|
36
|
+
// Exhaustiveness validation
|
|
37
|
+
const _checkBotEventMapExhaustive = null;
|
|
38
|
+
export class TypedEventEmitter {
|
|
39
|
+
listeners = new Map();
|
|
40
|
+
on(event, fn) {
|
|
41
|
+
const set = this.listeners.get(event) ?? new Set();
|
|
42
|
+
set.add(fn);
|
|
43
|
+
this.listeners.set(event, set);
|
|
44
|
+
}
|
|
45
|
+
onEach(fn) {
|
|
46
|
+
const event = '*';
|
|
47
|
+
const set = this.listeners.get(event) ?? new Set();
|
|
48
|
+
set.add(fn);
|
|
49
|
+
this.listeners.set(event, set);
|
|
50
|
+
}
|
|
51
|
+
emit(event, ...args) {
|
|
52
|
+
const timestamp = Date.now();
|
|
53
|
+
const specific = this.listeners.get(event);
|
|
54
|
+
if (specific) {
|
|
55
|
+
for (const fn of specific) {
|
|
56
|
+
fn(timestamp, ...args);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
const anySet = this.listeners.get('*');
|
|
60
|
+
if (anySet) {
|
|
61
|
+
for (const fn of anySet) {
|
|
62
|
+
fn(event, timestamp, ...args);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
events() {
|
|
67
|
+
return [...this.listeners.keys()];
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Telegram, Telegraf } from 'telegraf';
|
|
2
|
+
import { User, Message, InlineQueryResult, UserFromGetMe, TelegramEmoji as Emoji, InlineKeyboardButton } from 'telegraf/types';
|
|
3
|
+
export type TelegramUser = User;
|
|
4
|
+
export type TelegramMessage = Message;
|
|
5
|
+
export type TelegramInlineQueryResult = InlineQueryResult;
|
|
6
|
+
export type TelegramEmoji = Emoji;
|
|
7
|
+
export type TelegramApiClient = Telegram;
|
|
8
|
+
export type BotInfo = UserFromGetMe;
|
|
9
|
+
export type TelegramBot = Telegraf;
|
|
10
|
+
export type TelegramInlineKeyboardButton = InlineKeyboardButton;
|
|
11
|
+
//# sourceMappingURL=externalAliases.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"externalAliases.d.ts","sourceRoot":"","sources":["../../types/externalAliases.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EACH,IAAI,EACJ,OAAO,EACP,iBAAiB,EACjB,aAAa,EACb,aAAa,IAAI,KAAK,EACtB,oBAAoB,EACvB,MAAM,gBAAgB,CAAC;AAExB,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC;AAChC,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC;AACtC,MAAM,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;AAC1D,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC;AAClC,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AACzC,MAAM,MAAM,OAAO,GAAG,aAAa,CAAC;AACpC,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;AACnC,MAAM,MAAM,4BAA4B,GAAG,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ChatContext } from '../entities/context/chatContext';
|
|
2
|
+
import { InlineQueryContext } from '../entities/context/inlineQueryContext';
|
|
3
|
+
import { MessageContext } from '../entities/context/messageContext';
|
|
4
|
+
import { IActionState } from './actionState';
|
|
5
|
+
import { CachedValueAccessor } from './cachedValueAccessor';
|
|
6
|
+
export type InlineQueryHandler = (
|
|
7
|
+
/** Context of inline query executed in chat, in response to a message. */
|
|
8
|
+
ctx: InlineQueryContext) => Promise<void>;
|
|
9
|
+
export type CommandHandler<TActionState extends IActionState> = (
|
|
10
|
+
/** Context of action executed in chat, in response to a message. */
|
|
11
|
+
ctx: MessageContext<TActionState>,
|
|
12
|
+
/** State of an action being executed. */
|
|
13
|
+
state: TActionState) => Promise<void> | void;
|
|
14
|
+
export type ScheduledHandler<TActionState extends IActionState> = (
|
|
15
|
+
/** Context of action executed in chat. */
|
|
16
|
+
ctx: ChatContext<TActionState>,
|
|
17
|
+
/** Function that will attempt to get value from cache. If there is no value found, corresponding cached state factory will be called. */
|
|
18
|
+
getCached: CachedValueAccessor,
|
|
19
|
+
/** State of an action being executed. */
|
|
20
|
+
state: TActionState) => Promise<void>;
|
|
21
|
+
//# sourceMappingURL=handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../types/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,MAAM,kBAAkB,GAAG;AAC7B,0EAA0E;AAC1E,GAAG,EAAE,kBAAkB,KACtB,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB,MAAM,MAAM,cAAc,CAAC,YAAY,SAAS,YAAY,IAAI;AAC5D,oEAAoE;AACpE,GAAG,EAAE,cAAc,CAAC,YAAY,CAAC;AACjC,yCAAyC;AACzC,KAAK,EAAE,YAAY,KAClB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAE1B,MAAM,MAAM,gBAAgB,CAAC,YAAY,SAAS,YAAY,IAAI;AAC9D,0CAA0C;AAC1C,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC;AAC9B,yIAAyI;AACzI,SAAS,EAAE,mBAAmB;AAC9B,yCAAyC;AACzC,KAAK,EAAE,YAAY,KAClB,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inputFile.d.ts","sourceRoot":"","sources":["../../types/inputFile.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../types/logger.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TelegramInlineKeyboardButton } from './externalAliases';
|
|
2
|
+
export interface MessageSendingOptions {
|
|
3
|
+
pin?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface TextMessageSendingOptions extends MessageSendingOptions {
|
|
6
|
+
disableWebPreview?: boolean;
|
|
7
|
+
keyboard?: TelegramInlineKeyboardButton[][];
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=messageSendingOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messageSendingOptions.d.ts","sourceRoot":"","sources":["../../types/messageSendingOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AAEjE,MAAM,WAAW,qBAAqB;IAClC,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,yBAA0B,SAAQ,qBAAqB;IACpE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE,4BAA4B,EAAE,EAAE,CAAC;CAC/C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const INTERNAL_MESSAGE_TYPE_PREFIX = "__msg:";
|
|
2
|
+
export declare const MessageType: {
|
|
3
|
+
readonly Any: "__msg:Any";
|
|
4
|
+
readonly Text: "__msg:Text";
|
|
5
|
+
readonly Sticker: "__msg:Sticker";
|
|
6
|
+
readonly Animation: "__msg:Animation";
|
|
7
|
+
readonly Document: "__msg:Document";
|
|
8
|
+
readonly Voice: "__msg:Voice";
|
|
9
|
+
readonly Audio: "__msg:Audio";
|
|
10
|
+
readonly LeftChatMember: "__msg:LeftChatMember";
|
|
11
|
+
readonly NewChatMember: "__msg:NewChatMember";
|
|
12
|
+
readonly Poll: "__msg:Poll";
|
|
13
|
+
readonly Location: "__msg:Location";
|
|
14
|
+
readonly Photo: "__msg:Photo";
|
|
15
|
+
readonly Forward: "__msg:Forward";
|
|
16
|
+
readonly Video: "__msg:Video";
|
|
17
|
+
readonly Unknown: "__msg:Unknown";
|
|
18
|
+
};
|
|
19
|
+
export type MessageTypeValue = (typeof MessageType)[keyof typeof MessageType];
|
|
20
|
+
//# sourceMappingURL=messageTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messageTypes.d.ts","sourceRoot":"","sources":["../../types/messageTypes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,4BAA4B,WAAW,CAAC;AAErD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;CAgBd,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export const INTERNAL_MESSAGE_TYPE_PREFIX = `__msg:`;
|
|
2
|
+
export const MessageType = {
|
|
3
|
+
Any: `${INTERNAL_MESSAGE_TYPE_PREFIX}Any`,
|
|
4
|
+
Text: `${INTERNAL_MESSAGE_TYPE_PREFIX}Text`,
|
|
5
|
+
Sticker: `${INTERNAL_MESSAGE_TYPE_PREFIX}Sticker`,
|
|
6
|
+
Animation: `${INTERNAL_MESSAGE_TYPE_PREFIX}Animation`,
|
|
7
|
+
Document: `${INTERNAL_MESSAGE_TYPE_PREFIX}Document`,
|
|
8
|
+
Voice: `${INTERNAL_MESSAGE_TYPE_PREFIX}Voice`,
|
|
9
|
+
Audio: `${INTERNAL_MESSAGE_TYPE_PREFIX}Audio`,
|
|
10
|
+
LeftChatMember: `${INTERNAL_MESSAGE_TYPE_PREFIX}LeftChatMember`,
|
|
11
|
+
NewChatMember: `${INTERNAL_MESSAGE_TYPE_PREFIX}NewChatMember`,
|
|
12
|
+
Poll: `${INTERNAL_MESSAGE_TYPE_PREFIX}Poll`,
|
|
13
|
+
Location: `${INTERNAL_MESSAGE_TYPE_PREFIX}Location`,
|
|
14
|
+
Photo: `${INTERNAL_MESSAGE_TYPE_PREFIX}Photo`,
|
|
15
|
+
Forward: `${INTERNAL_MESSAGE_TYPE_PREFIX}Forward`,
|
|
16
|
+
Video: `${INTERNAL_MESSAGE_TYPE_PREFIX}Video`,
|
|
17
|
+
Unknown: `${INTERNAL_MESSAGE_TYPE_PREFIX}Unknown`
|
|
18
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ChatContext } from '../entities/context/chatContext';
|
|
2
|
+
import { InlineQueryContext } from '../entities/context/inlineQueryContext';
|
|
3
|
+
import { MessageContext } from '../entities/context/messageContext';
|
|
4
|
+
import { IActionState } from './actionState';
|
|
5
|
+
export type CommandActionPropertyProvider<T> = (ctx: MessageContext<IActionState>) => T;
|
|
6
|
+
export type InlineActionPropertyProvider<T> = (ctx: InlineQueryContext) => T;
|
|
7
|
+
export type ScheduledActionPropertyProvider<T> = (ctx: ChatContext<IActionState>) => T;
|
|
8
|
+
//# sourceMappingURL=propertyProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"propertyProvider.d.ts","sourceRoot":"","sources":["../../types/propertyProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,MAAM,6BAA6B,CAAC,CAAC,IAAI,CAC3C,GAAG,EAAE,cAAc,CAAC,YAAY,CAAC,KAChC,CAAC,CAAC;AAEP,MAAM,MAAM,4BAA4B,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,KAAK,CAAC,CAAC;AAE7E,MAAM,MAAM,+BAA+B,CAAC,CAAC,IAAI,CAC7C,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,KAC7B,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { ChatInfo } from '../dtos/chatInfo';
|
|
2
|
+
import { DelayResponse } from '../dtos/responses/delay';
|
|
3
|
+
import { ImageMessage } from '../dtos/responses/imageMessage';
|
|
4
|
+
import { InlineQueryResponse } from '../dtos/responses/inlineQueryResponse';
|
|
5
|
+
import { Reaction } from '../dtos/responses/reaction';
|
|
6
|
+
import { TextMessage } from '../dtos/responses/textMessage';
|
|
7
|
+
import { UnpinResponse } from '../dtos/responses/unpin';
|
|
8
|
+
import { VideoMessage } from '../dtos/responses/videoMessage';
|
|
9
|
+
import { IReplyCapture } from './capture';
|
|
10
|
+
import { ReplyInfo } from '../dtos/replyInfo';
|
|
11
|
+
import { TraceId } from './trace';
|
|
12
|
+
import { IAction } from './action';
|
|
13
|
+
export declare const BotResponseTypes: {
|
|
14
|
+
readonly unpin: "unpin";
|
|
15
|
+
readonly text: "text";
|
|
16
|
+
readonly image: "image";
|
|
17
|
+
readonly video: "video";
|
|
18
|
+
readonly react: "react";
|
|
19
|
+
readonly delay: "delay";
|
|
20
|
+
readonly inlineQuery: "inlineQuery";
|
|
21
|
+
};
|
|
22
|
+
export type BotResponse = UnpinResponse | Reaction | TextMessage | VideoMessage | DelayResponse | InlineQueryResponse | ImageMessage;
|
|
23
|
+
export interface IChatResponse {
|
|
24
|
+
readonly kind: keyof typeof BotResponseTypes;
|
|
25
|
+
readonly chatInfo: ChatInfo;
|
|
26
|
+
readonly traceId: TraceId;
|
|
27
|
+
readonly createdAt: number;
|
|
28
|
+
readonly action: IAction;
|
|
29
|
+
}
|
|
30
|
+
export interface IReplyResponse extends IChatResponse {
|
|
31
|
+
readonly captures: IReplyCapture[];
|
|
32
|
+
readonly replyInfo: ReplyInfo | undefined;
|
|
33
|
+
readonly disableWebPreview: boolean;
|
|
34
|
+
readonly shouldPin: boolean;
|
|
35
|
+
}
|
|
36
|
+
export interface IReplyResponseWithContent<TType> extends IReplyResponse {
|
|
37
|
+
readonly content: TType;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../types/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,eAAO,MAAM,gBAAgB;;;;;;;;CAQnB,CAAC;AAEX,MAAM,MAAM,WAAW,GACjB,aAAa,GACb,QAAQ,GACR,WAAW,GACX,YAAY,GACZ,aAAa,GACb,mBAAmB,GACnB,YAAY,CAAC;AAEnB,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,gBAAgB,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,cAAe,SAAQ,aAAa;IACjD,QAAQ,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,yBAAyB,CAAC,KAAK,CAAE,SAAQ,cAAc;IACpE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;CAC3B"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Milliseconds } from './timeValues';
|
|
2
|
+
export interface IScheduler {
|
|
3
|
+
stopAll(): void;
|
|
4
|
+
createTask(name: string, action: () => unknown, interval: Milliseconds, executeRightAway: boolean, ownerName: string): void;
|
|
5
|
+
createOnetimeTask(name: string, action: () => unknown, delay: Milliseconds, ownerName: string): void;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=scheduler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../types/scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,WAAW,UAAU;IACvB,OAAO,IAAI,IAAI,CAAC;IAEhB,UAAU,CACN,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,OAAO,EACrB,QAAQ,EAAE,YAAY,EACtB,gBAAgB,EAAE,OAAO,EACzB,SAAS,EAAE,MAAM,GAClB,IAAI,CAAC;IAER,iBAAiB,CACb,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,OAAO,EACrB,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,GAClB,IAAI,CAAC;CACX"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IActionState } from './actionState';
|
|
2
|
+
import { ActionKey, IActionWithState } from './action';
|
|
3
|
+
export interface IStorageClient {
|
|
4
|
+
updateStateFor<TActionState extends IActionState>(action: IActionWithState<TActionState>, chatId: number, update: (state: TActionState) => Promise<void> | void): Promise<void>;
|
|
5
|
+
close(): Promise<void>;
|
|
6
|
+
load<TActionState extends IActionState>(key: ActionKey): Promise<Record<number, TActionState | undefined>>;
|
|
7
|
+
saveMetadata<TActionState extends IActionState>(actions: IActionWithState<TActionState>[]): Promise<void>;
|
|
8
|
+
getActionState<TActionState extends IActionState>(action: IActionWithState<TActionState>, chatId: number): Promise<TActionState>;
|
|
9
|
+
saveActionExecutionResult<TActionState extends IActionState>(action: IActionWithState<TActionState>, chatId: number, state: TActionState): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../types/storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC3B,cAAc,CAAC,YAAY,SAAS,YAAY,EAC5C,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,EACtC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GACtD,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,CAAC,YAAY,SAAS,YAAY,EAClC,GAAG,EAAE,SAAS,GACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC;IACrD,YAAY,CAAC,YAAY,SAAS,YAAY,EAC1C,OAAO,EAAE,gBAAgB,CAAC,YAAY,CAAC,EAAE,GAC1C,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,cAAc,CAAC,YAAY,SAAS,YAAY,EAC5C,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,EACtC,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,CAAC,CAAC;IACzB,yBAAyB,CAAC,YAAY,SAAS,YAAY,EACvD,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,EACtC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,YAAY,GACpB,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
declare const millisecondsSymbol: unique symbol;
|
|
2
|
+
declare const secondsSymbol: unique symbol;
|
|
3
|
+
declare const hoursSymbol: unique symbol;
|
|
4
|
+
export type Milliseconds = number & {
|
|
5
|
+
[millisecondsSymbol]: never;
|
|
6
|
+
};
|
|
7
|
+
export type Seconds = number & {
|
|
8
|
+
[secondsSymbol]: never;
|
|
9
|
+
};
|
|
10
|
+
export type Hours = number & {
|
|
11
|
+
[hoursSymbol]: never;
|
|
12
|
+
};
|
|
13
|
+
export type HoursOfDay = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23;
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=timeValues.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timeValues.d.ts","sourceRoot":"","sources":["../../types/timeValues.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,kBAAkB,EAAE,OAAO,MAAM,CAAC;AAChD,OAAO,CAAC,MAAM,aAAa,EAAE,OAAO,MAAM,CAAC;AAC3C,OAAO,CAAC,MAAM,WAAW,EAAE,OAAO,MAAM,CAAC;AAEzC,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG;IAAE,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AACpE,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG;IAAE,CAAC,aAAa,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAC1D,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG;IAAE,CAAC,WAAW,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAEtD,MAAM,MAAM,UAAU,GAChB,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../types/trace.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,WAAW,EAAE,OAAO,MAAM,CAAC;AAEzC,MAAM,MAAM,OAAO,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,GAAG;IACpD,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;CACxB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -19,6 +19,7 @@ import { Seconds } from '../../types/timeValues';
|
|
|
19
19
|
import { CommandActionPropertyProvider } from '../../types/propertyProvider';
|
|
20
20
|
import { CommandActionProviders } from '../../dtos/propertyProviderSets';
|
|
21
21
|
import { BotResponse } from '../../types/response';
|
|
22
|
+
import { BotEventType } from '../../types/events';
|
|
22
23
|
|
|
23
24
|
export class CommandAction<TActionState extends IActionState>
|
|
24
25
|
implements IActionWithState<TActionState>
|
|
@@ -133,9 +134,11 @@ export class CommandAction<TActionState extends IActionState>
|
|
|
133
134
|
return Noop.NoResponse;
|
|
134
135
|
}
|
|
135
136
|
|
|
136
|
-
ctx.
|
|
137
|
-
|
|
138
|
-
|
|
137
|
+
ctx.eventEmitter.emit(BotEventType.commandActionExecuting, {
|
|
138
|
+
action: this,
|
|
139
|
+
ctx,
|
|
140
|
+
state
|
|
141
|
+
});
|
|
139
142
|
ctx.matchResults = matchResults;
|
|
140
143
|
|
|
141
144
|
await this.handler(ctx, state);
|
|
@@ -156,6 +159,11 @@ export class CommandAction<TActionState extends IActionState>
|
|
|
156
159
|
state
|
|
157
160
|
);
|
|
158
161
|
|
|
162
|
+
ctx.eventEmitter.emit(BotEventType.commandActionExecuted, {
|
|
163
|
+
action: this,
|
|
164
|
+
ctx,
|
|
165
|
+
state
|
|
166
|
+
});
|
|
159
167
|
return ctx.responses;
|
|
160
168
|
} finally {
|
|
161
169
|
lock?.release();
|
|
@@ -3,6 +3,7 @@ import { ActionKey, IAction } from '../../types/action';
|
|
|
3
3
|
import { InlineQueryContextInternal } from '../context/inlineQueryContext';
|
|
4
4
|
import { InlineQueryHandler } from '../../types/handlers';
|
|
5
5
|
import { InlineActionPropertyProvider } from '../../types/propertyProvider';
|
|
6
|
+
import { BotEventType } from '../../types/events';
|
|
6
7
|
|
|
7
8
|
export class InlineQueryAction implements IAction {
|
|
8
9
|
readonly key: ActionKey;
|
|
@@ -58,10 +59,17 @@ export class InlineQueryAction implements IAction {
|
|
|
58
59
|
|
|
59
60
|
ctx.matchResults = matchResults;
|
|
60
61
|
|
|
61
|
-
ctx.
|
|
62
|
+
ctx.eventEmitter.emit(BotEventType.inlineActionExecuting, {
|
|
63
|
+
action: this,
|
|
64
|
+
ctx
|
|
65
|
+
});
|
|
62
66
|
|
|
63
67
|
await this.handler(ctx);
|
|
64
68
|
|
|
69
|
+
ctx.eventEmitter.emit(BotEventType.inlineActionExecuted, {
|
|
70
|
+
action: this,
|
|
71
|
+
ctx
|
|
72
|
+
});
|
|
65
73
|
return ctx.responses;
|
|
66
74
|
}
|
|
67
75
|
}
|