trompot 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 (357) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +560 -0
  3. package/lib/bot/BotBase.d.ts +82 -0
  4. package/lib/bot/BotBase.js +144 -0
  5. package/lib/bot/BotBase.js.map +1 -0
  6. package/lib/bot/BotEvents.d.ts +87 -0
  7. package/lib/bot/BotEvents.js +51 -0
  8. package/lib/bot/BotEvents.js.map +1 -0
  9. package/lib/bot/BotServer.d.ts +34 -0
  10. package/lib/bot/BotServer.js +118 -0
  11. package/lib/bot/BotServer.js.map +1 -0
  12. package/lib/bot/BotStatus.d.ts +4 -0
  13. package/lib/bot/BotStatus.js +9 -0
  14. package/lib/bot/BotStatus.js.map +1 -0
  15. package/lib/bot/IBot.d.ts +292 -0
  16. package/lib/bot/IBot.js +3 -0
  17. package/lib/bot/IBot.js.map +1 -0
  18. package/lib/bot/index.d.ts +5 -0
  19. package/lib/bot/index.js +13 -0
  20. package/lib/bot/index.js.map +1 -0
  21. package/lib/client/Client.d.ts +120 -0
  22. package/lib/client/Client.js +687 -0
  23. package/lib/client/Client.js.map +1 -0
  24. package/lib/client/ClientEvents.d.ts +147 -0
  25. package/lib/client/ClientEvents.js +93 -0
  26. package/lib/client/ClientEvents.js.map +1 -0
  27. package/lib/client/ClientFunctionHandler.d.ts +15 -0
  28. package/lib/client/ClientFunctionHandler.js +70 -0
  29. package/lib/client/ClientFunctionHandler.js.map +1 -0
  30. package/lib/client/ConnectionType.d.ts +4 -0
  31. package/lib/client/ConnectionType.js +3 -0
  32. package/lib/client/ConnectionType.js.map +1 -0
  33. package/lib/client/IAuth.d.ts +9 -0
  34. package/lib/client/IAuth.js +3 -0
  35. package/lib/client/IAuth.js.map +1 -0
  36. package/lib/client/IClient.d.ts +358 -0
  37. package/lib/client/IClient.js +3 -0
  38. package/lib/client/IClient.js.map +1 -0
  39. package/lib/client/index.d.ts +7 -0
  40. package/lib/client/index.js +13 -0
  41. package/lib/client/index.js.map +1 -0
  42. package/lib/cluster/ClientCluster.d.ts +428 -0
  43. package/lib/cluster/ClientCluster.js +1746 -0
  44. package/lib/cluster/ClientCluster.js.map +1 -0
  45. package/lib/cluster/WorkerMessage.d.ts +99 -0
  46. package/lib/cluster/WorkerMessage.js +84 -0
  47. package/lib/cluster/WorkerMessage.js.map +1 -0
  48. package/lib/cluster/index.d.ts +5 -0
  49. package/lib/cluster/index.js +27 -0
  50. package/lib/cluster/index.js.map +1 -0
  51. package/lib/configs/ConnectionConfig.d.ts +22 -0
  52. package/lib/configs/ConnectionConfig.js +3 -0
  53. package/lib/configs/ConnectionConfig.js.map +1 -0
  54. package/lib/configs/Defaults.d.ts +2 -0
  55. package/lib/configs/Defaults.js +16 -0
  56. package/lib/configs/Defaults.js.map +1 -0
  57. package/lib/configs/WAConfigs.d.ts +1 -0
  58. package/lib/configs/WAConfigs.js +5 -0
  59. package/lib/configs/WAConfigs.js.map +1 -0
  60. package/lib/configs/index.d.ts +3 -0
  61. package/lib/configs/index.js +18 -0
  62. package/lib/configs/index.js.map +1 -0
  63. package/lib/errors/ChatNotDefinedError.d.ts +4 -0
  64. package/lib/errors/ChatNotDefinedError.js +9 -0
  65. package/lib/errors/ChatNotDefinedError.js.map +1 -0
  66. package/lib/errors/ClientNotDefinedError.d.ts +4 -0
  67. package/lib/errors/ClientNotDefinedError.js +9 -0
  68. package/lib/errors/ClientNotDefinedError.js.map +1 -0
  69. package/lib/errors/UserNotDefinedError.d.ts +4 -0
  70. package/lib/errors/UserNotDefinedError.js +9 -0
  71. package/lib/errors/UserNotDefinedError.js.map +1 -0
  72. package/lib/index.d.ts +17 -0
  73. package/lib/index.js +60 -0
  74. package/lib/index.js.map +1 -0
  75. package/lib/messages/AudioMessage.d.ts +42 -0
  76. package/lib/messages/AudioMessage.js +66 -0
  77. package/lib/messages/AudioMessage.js.map +1 -0
  78. package/lib/messages/ButtonMessage.d.ts +88 -0
  79. package/lib/messages/ButtonMessage.js +137 -0
  80. package/lib/messages/ButtonMessage.js.map +1 -0
  81. package/lib/messages/ContactMessage.d.ts +37 -0
  82. package/lib/messages/ContactMessage.js +93 -0
  83. package/lib/messages/ContactMessage.js.map +1 -0
  84. package/lib/messages/CustomMessage.d.ts +35 -0
  85. package/lib/messages/CustomMessage.js +88 -0
  86. package/lib/messages/CustomMessage.js.map +1 -0
  87. package/lib/messages/EmptyMessage.d.ts +25 -0
  88. package/lib/messages/EmptyMessage.js +78 -0
  89. package/lib/messages/EmptyMessage.js.map +1 -0
  90. package/lib/messages/ErrorMessage.d.ts +35 -0
  91. package/lib/messages/ErrorMessage.js +86 -0
  92. package/lib/messages/ErrorMessage.js.map +1 -0
  93. package/lib/messages/FileMessage.d.ts +36 -0
  94. package/lib/messages/FileMessage.js +60 -0
  95. package/lib/messages/FileMessage.js.map +1 -0
  96. package/lib/messages/ImageMessage.d.ts +41 -0
  97. package/lib/messages/ImageMessage.js +65 -0
  98. package/lib/messages/ImageMessage.js.map +1 -0
  99. package/lib/messages/ListMessage.d.ts +91 -0
  100. package/lib/messages/ListMessage.js +126 -0
  101. package/lib/messages/ListMessage.js.map +1 -0
  102. package/lib/messages/LocationMessage.d.ts +48 -0
  103. package/lib/messages/LocationMessage.js +107 -0
  104. package/lib/messages/LocationMessage.js.map +1 -0
  105. package/lib/messages/MediaMessage.d.ts +54 -0
  106. package/lib/messages/MediaMessage.js +113 -0
  107. package/lib/messages/MediaMessage.js.map +1 -0
  108. package/lib/messages/Message.d.ts +144 -0
  109. package/lib/messages/Message.js +223 -0
  110. package/lib/messages/Message.js.map +1 -0
  111. package/lib/messages/PollMessage.d.ts +87 -0
  112. package/lib/messages/PollMessage.js +145 -0
  113. package/lib/messages/PollMessage.js.map +1 -0
  114. package/lib/messages/PollUpdateMessage.d.ts +40 -0
  115. package/lib/messages/PollUpdateMessage.js +98 -0
  116. package/lib/messages/PollUpdateMessage.js.map +1 -0
  117. package/lib/messages/ReactionMessage.d.ts +36 -0
  118. package/lib/messages/ReactionMessage.js +91 -0
  119. package/lib/messages/ReactionMessage.js.map +1 -0
  120. package/lib/messages/StickerMessage.d.ts +49 -0
  121. package/lib/messages/StickerMessage.js +73 -0
  122. package/lib/messages/StickerMessage.js.map +1 -0
  123. package/lib/messages/TextMessage.d.ts +33 -0
  124. package/lib/messages/TextMessage.js +84 -0
  125. package/lib/messages/TextMessage.js.map +1 -0
  126. package/lib/messages/VideoMessage.d.ts +42 -0
  127. package/lib/messages/VideoMessage.js +66 -0
  128. package/lib/messages/VideoMessage.js.map +1 -0
  129. package/lib/messages/index.d.ts +19 -0
  130. package/lib/messages/index.js +81 -0
  131. package/lib/messages/index.js.map +1 -0
  132. package/lib/models/Address.d.ts +11 -0
  133. package/lib/models/Address.js +18 -0
  134. package/lib/models/Address.js.map +1 -0
  135. package/lib/models/Call.d.ts +68 -0
  136. package/lib/models/Call.js +127 -0
  137. package/lib/models/Call.js.map +1 -0
  138. package/lib/modules/chat/Chat.d.ts +142 -0
  139. package/lib/modules/chat/Chat.js +246 -0
  140. package/lib/modules/chat/Chat.js.map +1 -0
  141. package/lib/modules/chat/ChatAction.d.ts +3 -0
  142. package/lib/modules/chat/ChatAction.js +3 -0
  143. package/lib/modules/chat/ChatAction.js.map +1 -0
  144. package/lib/modules/chat/ChatStatus.d.ts +9 -0
  145. package/lib/modules/chat/ChatStatus.js +13 -0
  146. package/lib/modules/chat/ChatStatus.js.map +1 -0
  147. package/lib/modules/chat/ChatType.d.ts +7 -0
  148. package/lib/modules/chat/ChatType.js +11 -0
  149. package/lib/modules/chat/ChatType.js.map +1 -0
  150. package/lib/modules/chat/index.d.ts +5 -0
  151. package/lib/modules/chat/index.js +13 -0
  152. package/lib/modules/chat/index.js.map +1 -0
  153. package/lib/modules/command/Command.d.ts +67 -0
  154. package/lib/modules/command/Command.js +139 -0
  155. package/lib/modules/command/Command.js.map +1 -0
  156. package/lib/modules/command/CommandController.d.ts +50 -0
  157. package/lib/modules/command/CommandController.js +119 -0
  158. package/lib/modules/command/CommandController.js.map +1 -0
  159. package/lib/modules/command/CommandControllerEvent.d.ts +9 -0
  160. package/lib/modules/command/CommandControllerEvent.js +25 -0
  161. package/lib/modules/command/CommandControllerEvent.js.map +1 -0
  162. package/lib/modules/command/CommandEnums.d.ts +14 -0
  163. package/lib/modules/command/CommandEnums.js +20 -0
  164. package/lib/modules/command/CommandEnums.js.map +1 -0
  165. package/lib/modules/command/CommandKey.d.ts +17 -0
  166. package/lib/modules/command/CommandKey.js +67 -0
  167. package/lib/modules/command/CommandKey.js.map +1 -0
  168. package/lib/modules/command/CommandPermission.d.ts +9 -0
  169. package/lib/modules/command/CommandPermission.js +35 -0
  170. package/lib/modules/command/CommandPermission.js.map +1 -0
  171. package/lib/modules/command/ICommandControllerConfig.d.ts +7 -0
  172. package/lib/modules/command/ICommandControllerConfig.js +3 -0
  173. package/lib/modules/command/ICommandControllerConfig.js.map +1 -0
  174. package/lib/modules/command/advanced/AdvancedCommand.d.ts +23 -0
  175. package/lib/modules/command/advanced/AdvancedCommand.js +131 -0
  176. package/lib/modules/command/advanced/AdvancedCommand.js.map +1 -0
  177. package/lib/modules/command/advanced/AdvancedCommandContext.d.ts +10 -0
  178. package/lib/modules/command/advanced/AdvancedCommandContext.js +3 -0
  179. package/lib/modules/command/advanced/AdvancedCommandContext.js.map +1 -0
  180. package/lib/modules/command/advanced/AdvancedCommandController.d.ts +29 -0
  181. package/lib/modules/command/advanced/AdvancedCommandController.js +118 -0
  182. package/lib/modules/command/advanced/AdvancedCommandController.js.map +1 -0
  183. package/lib/modules/command/advanced/AdvancedCommandData.d.ts +6 -0
  184. package/lib/modules/command/advanced/AdvancedCommandData.js +3 -0
  185. package/lib/modules/command/advanced/AdvancedCommandData.js.map +1 -0
  186. package/lib/modules/command/advanced/AdvancedCommandJob.d.ts +12 -0
  187. package/lib/modules/command/advanced/AdvancedCommandJob.js +3 -0
  188. package/lib/modules/command/advanced/AdvancedCommandJob.js.map +1 -0
  189. package/lib/modules/command/advanced/AdvancedCommandNext.d.ts +4 -0
  190. package/lib/modules/command/advanced/AdvancedCommandNext.js +3 -0
  191. package/lib/modules/command/advanced/AdvancedCommandNext.js.map +1 -0
  192. package/lib/modules/command/advanced/AdvancedCommandOptions.d.ts +8 -0
  193. package/lib/modules/command/advanced/AdvancedCommandOptions.js +3 -0
  194. package/lib/modules/command/advanced/AdvancedCommandOptions.js.map +1 -0
  195. package/lib/modules/command/advanced/AdvancedCommandStart.d.ts +11 -0
  196. package/lib/modules/command/advanced/AdvancedCommandStart.js +3 -0
  197. package/lib/modules/command/advanced/AdvancedCommandStart.js.map +1 -0
  198. package/lib/modules/command/advanced/AdvancedCommandStop.d.ts +3 -0
  199. package/lib/modules/command/advanced/AdvancedCommandStop.js +3 -0
  200. package/lib/modules/command/advanced/AdvancedCommandStop.js.map +1 -0
  201. package/lib/modules/command/advanced/AdvancedCommandTask.d.ts +2 -0
  202. package/lib/modules/command/advanced/AdvancedCommandTask.js +3 -0
  203. package/lib/modules/command/advanced/AdvancedCommandTask.js.map +1 -0
  204. package/lib/modules/command/defaults.d.ts +2 -0
  205. package/lib/modules/command/defaults.js +8 -0
  206. package/lib/modules/command/defaults.js.map +1 -0
  207. package/lib/modules/command/index.d.ts +12 -0
  208. package/lib/modules/command/index.js +36 -0
  209. package/lib/modules/command/index.js.map +1 -0
  210. package/lib/modules/command/keys.d.ts +9 -0
  211. package/lib/modules/command/keys.js +27 -0
  212. package/lib/modules/command/keys.js.map +1 -0
  213. package/lib/modules/command/perms.d.ts +2 -0
  214. package/lib/modules/command/perms.js +11 -0
  215. package/lib/modules/command/perms.js.map +1 -0
  216. package/lib/modules/quickResponse/QuickResponse.d.ts +49 -0
  217. package/lib/modules/quickResponse/QuickResponse.js +64 -0
  218. package/lib/modules/quickResponse/QuickResponse.js.map +1 -0
  219. package/lib/modules/quickResponse/QuickResponseController.d.ts +55 -0
  220. package/lib/modules/quickResponse/QuickResponseController.js +125 -0
  221. package/lib/modules/quickResponse/QuickResponseController.js.map +1 -0
  222. package/lib/modules/quickResponse/QuickResponseOptions.d.ts +56 -0
  223. package/lib/modules/quickResponse/QuickResponseOptions.js +76 -0
  224. package/lib/modules/quickResponse/QuickResponseOptions.js.map +1 -0
  225. package/lib/modules/quickResponse/QuickResponsePattern.d.ts +28 -0
  226. package/lib/modules/quickResponse/QuickResponsePattern.js +3 -0
  227. package/lib/modules/quickResponse/QuickResponsePattern.js.map +1 -0
  228. package/lib/modules/quickResponse/QuickResponseReply.d.ts +6 -0
  229. package/lib/modules/quickResponse/QuickResponseReply.js +3 -0
  230. package/lib/modules/quickResponse/QuickResponseReply.js.map +1 -0
  231. package/lib/modules/quickResponse/index.d.ts +6 -0
  232. package/lib/modules/quickResponse/index.js +13 -0
  233. package/lib/modules/quickResponse/index.js.map +1 -0
  234. package/lib/modules/user/User.d.ts +91 -0
  235. package/lib/modules/user/User.js +173 -0
  236. package/lib/modules/user/User.js.map +1 -0
  237. package/lib/modules/user/UserAction.d.ts +4 -0
  238. package/lib/modules/user/UserAction.js +3 -0
  239. package/lib/modules/user/UserAction.js.map +1 -0
  240. package/lib/modules/user/UserEvent.d.ts +3 -0
  241. package/lib/modules/user/UserEvent.js +3 -0
  242. package/lib/modules/user/UserEvent.js.map +1 -0
  243. package/lib/modules/user/index.d.ts +4 -0
  244. package/lib/modules/user/index.js +9 -0
  245. package/lib/modules/user/index.js.map +1 -0
  246. package/lib/routes/botServer/api/v1/emitEvent.d.ts +3 -0
  247. package/lib/routes/botServer/api/v1/emitEvent.js +17 -0
  248. package/lib/routes/botServer/api/v1/emitEvent.js.map +1 -0
  249. package/lib/routes/botServer/api/v1/function.d.ts +3 -0
  250. package/lib/routes/botServer/api/v1/function.js +22 -0
  251. package/lib/routes/botServer/api/v1/function.js.map +1 -0
  252. package/lib/routes/botServer/api/v1/ping.d.ts +3 -0
  253. package/lib/routes/botServer/api/v1/ping.js +12 -0
  254. package/lib/routes/botServer/api/v1/ping.js.map +1 -0
  255. package/lib/routes/botServer/api/v1/register.d.ts +3 -0
  256. package/lib/routes/botServer/api/v1/register.js +23 -0
  257. package/lib/routes/botServer/api/v1/register.js.map +1 -0
  258. package/lib/routes/botServer/api/v1/setValue.d.ts +3 -0
  259. package/lib/routes/botServer/api/v1/setValue.js +18 -0
  260. package/lib/routes/botServer/api/v1/setValue.js.map +1 -0
  261. package/lib/routes/botServer/api/v1/unregister.d.ts +3 -0
  262. package/lib/routes/botServer/api/v1/unregister.js +22 -0
  263. package/lib/routes/botServer/api/v1/unregister.js.map +1 -0
  264. package/lib/routes/botServer/middlewares/setBotServer.d.ts +4 -0
  265. package/lib/routes/botServer/middlewares/setBotServer.js +16 -0
  266. package/lib/routes/botServer/middlewares/setBotServer.js.map +1 -0
  267. package/lib/routes/botServer/routes.d.ts +8 -0
  268. package/lib/routes/botServer/routes.js +33 -0
  269. package/lib/routes/botServer/routes.js.map +1 -0
  270. package/lib/services/AddressService.d.ts +12 -0
  271. package/lib/services/AddressService.js +51 -0
  272. package/lib/services/AddressService.js.map +1 -0
  273. package/lib/services/BaseService.d.ts +5 -0
  274. package/lib/services/BaseService.js +19 -0
  275. package/lib/services/BaseService.js.map +1 -0
  276. package/lib/services/index.d.ts +3 -0
  277. package/lib/services/index.js +11 -0
  278. package/lib/services/index.js.map +1 -0
  279. package/lib/telegram/TelegramAuth.d.ts +17 -0
  280. package/lib/telegram/TelegramAuth.js +96 -0
  281. package/lib/telegram/TelegramAuth.js.map +1 -0
  282. package/lib/telegram/TelegramBot.d.ts +88 -0
  283. package/lib/telegram/TelegramBot.js +345 -0
  284. package/lib/telegram/TelegramBot.js.map +1 -0
  285. package/lib/telegram/TelegramEvents.d.ts +13 -0
  286. package/lib/telegram/TelegramEvents.js +131 -0
  287. package/lib/telegram/TelegramEvents.js.map +1 -0
  288. package/lib/telegram/TelegramSendingController.d.ts +36 -0
  289. package/lib/telegram/TelegramSendingController.js +213 -0
  290. package/lib/telegram/TelegramSendingController.js.map +1 -0
  291. package/lib/telegram/TelegramToRompotConverter.d.ts +22 -0
  292. package/lib/telegram/TelegramToRompotConverter.js +226 -0
  293. package/lib/telegram/TelegramToRompotConverter.js.map +1 -0
  294. package/lib/telegram/TelegramUtils.d.ts +14 -0
  295. package/lib/telegram/TelegramUtils.js +98 -0
  296. package/lib/telegram/TelegramUtils.js.map +1 -0
  297. package/lib/telegram/index.d.ts +7 -0
  298. package/lib/telegram/index.js +19 -0
  299. package/lib/telegram/index.js.map +1 -0
  300. package/lib/utils/ClientUtils.d.ts +27 -0
  301. package/lib/utils/ClientUtils.js +62 -0
  302. package/lib/utils/ClientUtils.js.map +1 -0
  303. package/lib/utils/Generic.d.ts +47 -0
  304. package/lib/utils/Generic.js +173 -0
  305. package/lib/utils/Generic.js.map +1 -0
  306. package/lib/utils/Libs.d.ts +10 -0
  307. package/lib/utils/Libs.js +55 -0
  308. package/lib/utils/Libs.js.map +1 -0
  309. package/lib/utils/MessageHandler.d.ts +54 -0
  310. package/lib/utils/MessageHandler.js +81 -0
  311. package/lib/utils/MessageHandler.js.map +1 -0
  312. package/lib/utils/MessageUtils.d.ts +3 -0
  313. package/lib/utils/MessageUtils.js +114 -0
  314. package/lib/utils/MessageUtils.js.map +1 -0
  315. package/lib/utils/index.d.ts +6 -0
  316. package/lib/utils/index.js +27 -0
  317. package/lib/utils/index.js.map +1 -0
  318. package/lib/utils/nonce.d.ts +1 -0
  319. package/lib/utils/nonce.js +16 -0
  320. package/lib/utils/nonce.js.map +1 -0
  321. package/lib/utils/server.d.ts +33 -0
  322. package/lib/utils/server.js +75 -0
  323. package/lib/utils/server.js.map +1 -0
  324. package/lib/wa/Auth.d.ts +19 -0
  325. package/lib/wa/Auth.js +123 -0
  326. package/lib/wa/Auth.js.map +1 -0
  327. package/lib/wa/ConfigWAEvents.d.ts +22 -0
  328. package/lib/wa/ConfigWAEvents.js +526 -0
  329. package/lib/wa/ConfigWAEvents.js.map +1 -0
  330. package/lib/wa/ConvertToWAMessage.d.ts +67 -0
  331. package/lib/wa/ConvertToWAMessage.js +403 -0
  332. package/lib/wa/ConvertToWAMessage.js.map +1 -0
  333. package/lib/wa/ConvertWAMessage.d.ts +108 -0
  334. package/lib/wa/ConvertWAMessage.js +527 -0
  335. package/lib/wa/ConvertWAMessage.js.map +1 -0
  336. package/lib/wa/ID.d.ts +4 -0
  337. package/lib/wa/ID.js +19 -0
  338. package/lib/wa/ID.js.map +1 -0
  339. package/lib/wa/WAMessage.d.ts +3 -0
  340. package/lib/wa/WAMessage.js +8 -0
  341. package/lib/wa/WAMessage.js.map +1 -0
  342. package/lib/wa/WAModule.d.ts +3 -0
  343. package/lib/wa/WAModule.js +3 -0
  344. package/lib/wa/WAModule.js.map +1 -0
  345. package/lib/wa/WAStatus.d.ts +3 -0
  346. package/lib/wa/WAStatus.js +15 -0
  347. package/lib/wa/WAStatus.js.map +1 -0
  348. package/lib/wa/WhatsAppBot.d.ts +188 -0
  349. package/lib/wa/WhatsAppBot.js +980 -0
  350. package/lib/wa/WhatsAppBot.js.map +1 -0
  351. package/lib/wa/index.d.ts +12 -0
  352. package/lib/wa/index.js +37 -0
  353. package/lib/wa/index.js.map +1 -0
  354. package/lib/wa/makeInMemoryStore.d.ts +43 -0
  355. package/lib/wa/makeInMemoryStore.js +430 -0
  356. package/lib/wa/makeInMemoryStore.js.map +1 -0
  357. package/package.json +79 -0
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ChatStatus = exports.ChatType = exports.Chat = void 0;
7
+ const ChatStatus_1 = __importDefault(require("./ChatStatus"));
8
+ exports.ChatStatus = ChatStatus_1.default;
9
+ const ChatType_1 = __importDefault(require("./ChatType"));
10
+ exports.ChatType = ChatType_1.default;
11
+ const Chat_1 = __importDefault(require("./Chat"));
12
+ exports.Chat = Chat_1.default;
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/chat/index.ts"],"names":[],"mappings":";;;;;;AAEA,8DAAsC;AAID,qBAJ9B,oBAAU,CAI8B;AAH/C,0DAAkC;AAGnB,mBAHR,kBAAQ,CAGQ;AAFvB,kDAA0B;AAEjB,eAFF,cAAI,CAEE"}
@@ -0,0 +1,67 @@
1
+ import ICommandControllerConfig from './ICommandControllerConfig';
2
+ import CommandPermission from './CommandPermission';
3
+ import Message from '../../messages/Message';
4
+ import CommandKey from './CommandKey';
5
+ /** Permissões do comando */
6
+ export declare enum CMDPerms {
7
+ /** Permitido apenas ser executado no pv */
8
+ ChatPv = "chat-pv",
9
+ /** Permitido apenas ser executado em grupos */
10
+ ChatGroup = "chat-group",
11
+ /** Permitido apenas se o usuário for admin do chat */
12
+ UserChatAdmin = "chat-admin",
13
+ /** Permitido apenas se o usuário for líder do chat */
14
+ UserChatLeader = "chat-leader",
15
+ /** Permitido apenas se o bot for admin do chat */
16
+ BotChatAdmin = "bot-chat-admin",
17
+ /** Permitido apenas se o bot for líder do chat */
18
+ BotChatLeader = "bot-chat-leader"
19
+ }
20
+ export type CommandControllerEventsMap = {
21
+ /** Permissão negada */
22
+ ['no-allowed']: {
23
+ message: Message;
24
+ command: Command;
25
+ permission: CommandPermission;
26
+ };
27
+ };
28
+ export default class Command {
29
+ /** Chaves do comando */
30
+ keys: CommandKey[];
31
+ /** Permissões necessárias do comando */
32
+ permissions: string[];
33
+ /** ID do bot associado ao comando */
34
+ botId: string;
35
+ /** ID do client associado ao comando */
36
+ clientId: string;
37
+ /** Verifica se o comando pode ser executado
38
+ * @param message Mensagem que está executando o comando
39
+ */
40
+ checkPerms(message: Message): Promise<CommandPermission | null>;
41
+ /** Quando o comando está sendo procurado
42
+ * @param text Texto que será verificado se incluí o comando
43
+ * @param config Configuração do controlador de comando
44
+ */
45
+ onSearch(text: string, config: ICommandControllerConfig): CommandKey | null;
46
+ /** Quando o comando é lido */
47
+ onRead(): any;
48
+ /** Configuração do comando
49
+ * @param message Mensagem que está executando o comando
50
+ */
51
+ onConfig(): any;
52
+ /** Execução do comando
53
+ * @param message Mensagem que está executando o comando
54
+ */
55
+ onExec(message: Message): any;
56
+ /** Respota ao comando
57
+ * @param message Mensagem que está executando o comando
58
+ */
59
+ onReply(message: Message): any;
60
+ static readCommands(dir: string): Promise<Command[]>;
61
+ /**
62
+ * Verifica se um objeto é uma instância válida de Command.
63
+ * @param message - O objeto a ser verificado.
64
+ * @returns Verdadeiro se o objeto for uma instância válida de Command, caso contrário, falso.
65
+ */
66
+ static isValid(command: any): command is Command;
67
+ }
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ const Generic_1 = require("../../utils/Generic");
40
+ const CommandPermission_1 = __importDefault(require("./CommandPermission"));
41
+ const CommandKey_1 = __importDefault(require("./CommandKey"));
42
+ const perms_1 = require("./perms");
43
+ class Command {
44
+ constructor() {
45
+ /** Chaves do comando */
46
+ this.keys = [];
47
+ /** Permissões necessárias do comando */
48
+ this.permissions = [];
49
+ /** ID do bot associado ao comando */
50
+ this.botId = '';
51
+ /** ID do client associado ao comando */
52
+ this.clientId = '';
53
+ }
54
+ /** Verifica se o comando pode ser executado
55
+ * @param message Mensagem que está executando o comando
56
+ */
57
+ async checkPerms(message) {
58
+ const permissions = [];
59
+ await Promise.all(this.permissions.map(async (permission) => {
60
+ const perm = (0, perms_1.CMDPerm)(permission);
61
+ if (!(await CommandPermission_1.default.check(message, perm))) {
62
+ perm.isPermited = false;
63
+ permissions.push(perm);
64
+ }
65
+ }));
66
+ if (permissions.length > 0)
67
+ return permissions[0];
68
+ return null;
69
+ }
70
+ /** Quando o comando está sendo procurado
71
+ * @param text Texto que será verificado se incluí o comando
72
+ * @param config Configuração do controlador de comando
73
+ */
74
+ onSearch(text, config) {
75
+ return CommandKey_1.default.search(text, config, ...this.keys);
76
+ }
77
+ /** Quando o comando é lido */
78
+ onRead() { }
79
+ /** Configuração do comando
80
+ * @param message Mensagem que está executando o comando
81
+ */
82
+ onConfig() { }
83
+ /** Execução do comando
84
+ * @param message Mensagem que está executando o comando
85
+ */
86
+ onExec(message) { }
87
+ /** Respota ao comando
88
+ * @param message Mensagem que está executando o comando
89
+ */
90
+ onReply(message) { }
91
+ static async readCommands(dir) {
92
+ const commands = [];
93
+ await (0, Generic_1.readRecursiveDir)(dir, async (filepath, filename, ext) => {
94
+ try {
95
+ if (ext != '.ts' && ext != '.js')
96
+ return;
97
+ const content = await Promise.resolve(`${filepath}`).then(s => __importStar(require(s)));
98
+ if (!content)
99
+ return;
100
+ if (typeof content != 'object')
101
+ return;
102
+ const keys = Object.keys(content);
103
+ await Promise.all(keys.map(async (key) => {
104
+ try {
105
+ const data = content[key];
106
+ if (!data)
107
+ return;
108
+ if (Command.isValid(data)) {
109
+ await data.onRead();
110
+ commands.push(data);
111
+ }
112
+ else {
113
+ //@ts-ignore
114
+ const cmd = new data();
115
+ if (Command.isValid(cmd)) {
116
+ await cmd.onRead();
117
+ commands.push(cmd);
118
+ }
119
+ }
120
+ }
121
+ catch (_a) { }
122
+ }));
123
+ }
124
+ catch (_a) { }
125
+ });
126
+ return commands;
127
+ }
128
+ /**
129
+ * Verifica se um objeto é uma instância válida de Command.
130
+ * @param message - O objeto a ser verificado.
131
+ * @returns Verdadeiro se o objeto for uma instância válida de Command, caso contrário, falso.
132
+ */
133
+ static isValid(command) {
134
+ return (typeof command === 'object' &&
135
+ Object.keys(new Command()).every((key) => key in command));
136
+ }
137
+ }
138
+ exports.default = Command;
139
+ //# sourceMappingURL=Command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Command.js","sourceRoot":"","sources":["../../../src/modules/command/Command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import ICommandControllerConfig from "./ICommandControllerConfig";
2
+ import CommandControllerEvent from "./CommandControllerEvent";
3
+ import Message from "../../messages/Message";
4
+ import Command from "./Command";
5
+ export default class CommandController extends CommandControllerEvent {
6
+ /** Configuração do controlador */
7
+ config: ICommandControllerConfig;
8
+ /** Comandos */
9
+ commands: Command[];
10
+ /** ID do bot associado ao controlador de comandos */
11
+ botId: string;
12
+ /** ID do client associado ao controlador de comandos */
13
+ clientId: string;
14
+ constructor(config?: Partial<ICommandControllerConfig>);
15
+ /** Define os comandos
16
+ * @param commands Novos comandos
17
+ * */
18
+ setCommands(commands: Command[]): void;
19
+ /** @retuns Retorna os comandos */
20
+ getCommands(): Command[];
21
+ /** Adiciona um comando
22
+ * @param command Novo comando
23
+ */
24
+ addCommand(command: Command): void;
25
+ /**
26
+ * Remove um comando
27
+ * @param command Comando que será removido
28
+ * */
29
+ removeCommand(command: Command): boolean;
30
+ /** Busca pelo comando
31
+ * @param text Texto onde será verificado se inclui o comando
32
+ */
33
+ searchCommand(text: string): Command | null;
34
+ /** Execução do comando
35
+ * @param command Comando que será executado
36
+ * @param message Mensagem que chamou o comando
37
+ * @param type Tipo da execução doo comando
38
+ */
39
+ runCommand(command: Command, message: Message, type?: string): Promise<any>;
40
+ /** Executa o comando
41
+ * @param message Mensagem que chamou o comando
42
+ * @param command Comando que será executado
43
+ */
44
+ execCommand(message: Message, command: Command): Promise<any>;
45
+ /** Resposta ao comando
46
+ * @param message Mensagem que chamou o comando
47
+ * @param command Comando que receberá a resposta
48
+ */
49
+ replyCommand(message: Message, command: Command): Promise<any>;
50
+ }
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const defaults_1 = require("./defaults");
7
+ const CommandControllerEvent_1 = __importDefault(require("./CommandControllerEvent"));
8
+ const CommandEnums_1 = require("./CommandEnums");
9
+ class CommandController extends CommandControllerEvent_1.default {
10
+ constructor(config = {}) {
11
+ super();
12
+ /** Comandos */
13
+ this.commands = [];
14
+ /** ID do bot associado ao controlador de comandos */
15
+ this.botId = "";
16
+ /** ID do client associado ao controlador de comandos */
17
+ this.clientId = "";
18
+ this.config = { ...defaults_1.DEFAULT_COMMAND_CONTROLLER_CONFIG, ...config };
19
+ }
20
+ /** Define os comandos
21
+ * @param commands Novos comandos
22
+ * */
23
+ setCommands(commands) {
24
+ const cmds = [];
25
+ for (const command of commands) {
26
+ command.clientId = this.clientId;
27
+ command.botId = this.botId;
28
+ cmds.push(command);
29
+ }
30
+ this.commands = cmds;
31
+ }
32
+ /** @retuns Retorna os comandos */
33
+ getCommands() {
34
+ return this.commands;
35
+ }
36
+ /** Adiciona um comando
37
+ * @param command Novo comando
38
+ */
39
+ addCommand(command) {
40
+ command.clientId = this.clientId;
41
+ command.botId = this.botId;
42
+ this.commands.push(command);
43
+ }
44
+ /**
45
+ * Remove um comando
46
+ * @param command Comando que será removido
47
+ * */
48
+ removeCommand(command) {
49
+ const commands = [];
50
+ const commandKeys = command.keys.map((key) => key.values.join("")).join("");
51
+ for (const cmd of this.commands) {
52
+ const keys = cmd.keys.map((key) => key.values.join("")).join("");
53
+ if (keys == commandKeys)
54
+ continue;
55
+ commands.push(cmd);
56
+ }
57
+ if (this.commands.length == commands.length)
58
+ return false;
59
+ this.commands = commands;
60
+ return true;
61
+ }
62
+ /** Busca pelo comando
63
+ * @param text Texto onde será verificado se inclui o comando
64
+ */
65
+ searchCommand(text) {
66
+ const commands = [];
67
+ for (const command of this.commands) {
68
+ const key = command.onSearch(`${text}`, this.config);
69
+ if (key != null) {
70
+ commands.push({ key, command });
71
+ }
72
+ }
73
+ let commandResult = null;
74
+ for (const { key, command } of commands) {
75
+ if (commandResult == null) {
76
+ commandResult = { key, command };
77
+ continue;
78
+ }
79
+ if (key.values.join("").length > commandResult.key.values.join("").length) {
80
+ commandResult = { key, command };
81
+ }
82
+ }
83
+ if (commandResult == null)
84
+ return null;
85
+ return commandResult.command;
86
+ }
87
+ /** Execução do comando
88
+ * @param command Comando que será executado
89
+ * @param message Mensagem que chamou o comando
90
+ * @param type Tipo da execução doo comando
91
+ */
92
+ async runCommand(command, message, type = CommandEnums_1.CMDRunType.Exec) {
93
+ const permission = await command.checkPerms(message);
94
+ if (permission != null && !permission.isPermited) {
95
+ this.emit("no-allowed", { message, command, permission });
96
+ return;
97
+ }
98
+ if (type == CommandEnums_1.CMDRunType.Reply) {
99
+ return await this.replyCommand(message, command);
100
+ }
101
+ return this.execCommand(message, command);
102
+ }
103
+ /** Executa o comando
104
+ * @param message Mensagem que chamou o comando
105
+ * @param command Comando que será executado
106
+ */
107
+ async execCommand(message, command) {
108
+ return await command.onExec(message);
109
+ }
110
+ /** Resposta ao comando
111
+ * @param message Mensagem que chamou o comando
112
+ * @param command Comando que receberá a resposta
113
+ */
114
+ async replyCommand(message, command) {
115
+ return await command.onReply(message);
116
+ }
117
+ }
118
+ exports.default = CommandController;
119
+ //# sourceMappingURL=CommandController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandController.js","sourceRoot":"","sources":["../../../src/modules/command/CommandController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import EventEmitter from "events";
2
+ import { CommandControllerEventsMap } from "./Command";
3
+ export default class CommandControllerEvent {
4
+ ev: EventEmitter<[never]>;
5
+ on<T extends keyof CommandControllerEventsMap>(eventName: T, listener: (arg: CommandControllerEventsMap[T]) => void): void;
6
+ off<T extends keyof CommandControllerEventsMap>(eventName: T, listener: (arg: CommandControllerEventsMap[T]) => void): void;
7
+ removeAllListeners<T extends keyof CommandControllerEventsMap>(event: T): void;
8
+ emit<T extends keyof CommandControllerEventsMap>(eventName: T, arg: CommandControllerEventsMap[T]): boolean;
9
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const events_1 = __importDefault(require("events"));
7
+ class CommandControllerEvent {
8
+ constructor() {
9
+ this.ev = new events_1.default();
10
+ }
11
+ on(eventName, listener) {
12
+ this.ev.on(eventName, listener);
13
+ }
14
+ off(eventName, listener) {
15
+ this.ev.off(eventName, listener);
16
+ }
17
+ removeAllListeners(event) {
18
+ this.ev.removeAllListeners(event);
19
+ }
20
+ emit(eventName, arg) {
21
+ return this.ev.emit(eventName, arg);
22
+ }
23
+ }
24
+ exports.default = CommandControllerEvent;
25
+ //# sourceMappingURL=CommandControllerEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandControllerEvent.js","sourceRoot":"","sources":["../../../src/modules/command/CommandControllerEvent.ts"],"names":[],"mappings":";;;;;AAAA,oDAAkC;AAIlC,MAAqB,sBAAsB;IAA3C;QACS,OAAE,GAAG,IAAI,gBAAY,EAAE,CAAC;IAiBjC,CAAC;IAfC,EAAE,CAA6C,SAAY,EAAE,QAAsD;QACjH,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,GAAG,CAA6C,SAAY,EAAE,QAAsD;QAClH,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,kBAAkB,CAA6C,KAAQ;QACrE,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,CAA6C,SAAY,EAAE,GAAkC;QAC/F,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;CACF;AAlBD,yCAkBC"}
@@ -0,0 +1,14 @@
1
+ /** Tipo da chave do comando */
2
+ export declare enum CMDKeyType {
3
+ /** Chaves simples (includes all) */
4
+ Sample = "sample",
5
+ /** Chave exata (startsWith) */
6
+ Exact = "exact"
7
+ }
8
+ /** Tipo da execução do comando */
9
+ export declare enum CMDRunType {
10
+ /** Execução normal */
11
+ Exec = "exec",
12
+ /** Resposta ao comando */
13
+ Reply = "reply"
14
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CMDRunType = exports.CMDKeyType = void 0;
4
+ /** Tipo da chave do comando */
5
+ var CMDKeyType;
6
+ (function (CMDKeyType) {
7
+ /** Chaves simples (includes all) */
8
+ CMDKeyType["Sample"] = "sample";
9
+ /** Chave exata (startsWith) */
10
+ CMDKeyType["Exact"] = "exact";
11
+ })(CMDKeyType || (exports.CMDKeyType = CMDKeyType = {}));
12
+ /** Tipo da execução do comando */
13
+ var CMDRunType;
14
+ (function (CMDRunType) {
15
+ /** Execução normal */
16
+ CMDRunType["Exec"] = "exec";
17
+ /** Resposta ao comando */
18
+ CMDRunType["Reply"] = "reply";
19
+ })(CMDRunType || (exports.CMDRunType = CMDRunType = {}));
20
+ //# sourceMappingURL=CommandEnums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandEnums.js","sourceRoot":"","sources":["../../../src/modules/command/CommandEnums.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,oCAAoC;IACpC,+BAAiB,CAAA;IACjB,+BAA+B;IAC/B,6BAAe,CAAA;AACjB,CAAC,EALW,UAAU,0BAAV,UAAU,QAKrB;AAED,kCAAkC;AAClC,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,sBAAsB;IACtB,2BAAa,CAAA;IACb,0BAA0B;IAC1B,6BAAe,CAAA;AACjB,CAAC,EALW,UAAU,0BAAV,UAAU,QAKrB"}
@@ -0,0 +1,17 @@
1
+ import ICommandControllerConfig from './ICommandControllerConfig';
2
+ export default class CommandKey {
3
+ /** Tipo da chave */
4
+ type: string;
5
+ /** Valores da chave */
6
+ values: string[];
7
+ constructor(...values: string[]);
8
+ /**
9
+ * Procura pela chave em um texto
10
+ * @return retorna se a chave foi encontrada
11
+ */
12
+ static search(text: string, config: ICommandControllerConfig, ...keys: CommandKey[]): CommandKey | null;
13
+ /** Verifica se o texto contem as chaves */
14
+ static verify(text: string, keys: string[]): boolean;
15
+ /** Verifica se o texto tem as chaves exatas */
16
+ static verifyExact(text: string, keys: string[]): boolean;
17
+ }
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const CommandEnums_1 = require("./CommandEnums");
4
+ class CommandKey {
5
+ constructor(...values) {
6
+ /** Tipo da chave */
7
+ this.type = CommandEnums_1.CMDKeyType.Sample;
8
+ /** Valores da chave */
9
+ this.values = [];
10
+ this.values = values;
11
+ }
12
+ /**
13
+ * Procura pela chave em um texto
14
+ * @return retorna se a chave foi encontrada
15
+ */
16
+ static search(text, config, ...keys) {
17
+ if (config.prefix) {
18
+ if (!text.startsWith(config.prefix))
19
+ return null;
20
+ text = text.replace(config.prefix, '').trim();
21
+ }
22
+ if (config.lowerCase) {
23
+ text = text.toLowerCase();
24
+ keys = keys.map((key) => {
25
+ key.values = key.values.map((value) => value.toLowerCase());
26
+ return key;
27
+ });
28
+ }
29
+ const result = keys.filter((key) => {
30
+ if (key.type === CommandEnums_1.CMDKeyType.Exact) {
31
+ return CommandKey.verifyExact(text, key.values);
32
+ }
33
+ return CommandKey.verify(text, key.values);
34
+ });
35
+ if (result.length > 0) {
36
+ let key = result[0];
37
+ for (const res of result) {
38
+ if (res.values.join('').length < key.values.join('').length)
39
+ continue;
40
+ key = res;
41
+ }
42
+ return key;
43
+ }
44
+ return null;
45
+ }
46
+ /** Verifica se o texto contem as chaves */
47
+ static verify(text, keys) {
48
+ for (const key of keys) {
49
+ if (text.includes(key))
50
+ continue;
51
+ return false;
52
+ }
53
+ return true;
54
+ }
55
+ /** Verifica se o texto tem as chaves exatas */
56
+ static verifyExact(text, keys) {
57
+ let result = `${text}`;
58
+ for (const key of keys) {
59
+ if (!result.startsWith(key))
60
+ return false;
61
+ result = result.replace(key, '').trim();
62
+ }
63
+ return true;
64
+ }
65
+ }
66
+ exports.default = CommandKey;
67
+ //# sourceMappingURL=CommandKey.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandKey.js","sourceRoot":"","sources":["../../../src/modules/command/CommandKey.ts"],"names":[],"mappings":";;AACA,iDAA4C;AAE5C,MAAqB,UAAU;IAM7B,YAAY,GAAG,MAAgB;QAL/B,oBAAoB;QACb,SAAI,GAAW,yBAAU,CAAC,MAAM,CAAC;QACxC,uBAAuB;QAChB,WAAM,GAAa,EAAE,CAAC;QAG3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,MAAM,CAClB,IAAY,EACZ,MAAgC,EAChC,GAAG,IAAkB;QAErB,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;gBAAE,OAAO,IAAI,CAAC;YAEjD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAChD,CAAC;QAED,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC1B,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACtB,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC5D,OAAO,GAAG,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;YACjC,IAAI,GAAG,CAAC,IAAI,KAAK,yBAAU,CAAC,KAAK,EAAE,CAAC;gBAClC,OAAO,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAClD,CAAC;YAED,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAEpB,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACzB,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM;oBAAE,SAAS;gBAEtE,GAAG,GAAG,GAAG,CAAC;YACZ,CAAC;YAED,OAAO,GAAG,CAAC;QACb,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2CAA2C;IACpC,MAAM,CAAC,MAAM,CAAC,IAAY,EAAE,IAAc;QAC/C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,SAAS;YAEjC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+CAA+C;IACxC,MAAM,CAAC,WAAW,CAAC,IAAY,EAAE,IAAc;QACpD,IAAI,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC;QAEvB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YAE1C,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA/ED,6BA+EC"}
@@ -0,0 +1,9 @@
1
+ import Message from "../../messages/Message";
2
+ export default class CommandPermission {
3
+ /** Identificador da permissão */
4
+ id: string;
5
+ /** Se tem permissão */
6
+ isPermited?: boolean;
7
+ constructor(id: string, isPermited?: boolean);
8
+ static check(message: Message, cmdPerm: CommandPermission): Promise<boolean>;
9
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const Command_1 = require("./Command");
4
+ class CommandPermission {
5
+ constructor(id, isPermited = false) {
6
+ this.id = id;
7
+ this.isPermited = isPermited;
8
+ }
9
+ static async check(message, cmdPerm) {
10
+ if (cmdPerm.id == Command_1.CMDPerms.ChatPv) {
11
+ return message.chat.type == "pv";
12
+ }
13
+ if (cmdPerm.id == Command_1.CMDPerms.ChatGroup) {
14
+ return message.chat.type == "group";
15
+ }
16
+ if (cmdPerm.id == Command_1.CMDPerms.BotChatLeader) {
17
+ return await message.chat.isLeader(message.botId);
18
+ }
19
+ if (cmdPerm.id == Command_1.CMDPerms.BotChatAdmin) {
20
+ return await message.chat.isAdmin(message.botId);
21
+ }
22
+ if (cmdPerm.id == Command_1.CMDPerms.BotChatLeader) {
23
+ return await message.chat.isLeader(message.botId);
24
+ }
25
+ if (cmdPerm.id == Command_1.CMDPerms.UserChatAdmin) {
26
+ return await message.chat.isAdmin(message.user.id);
27
+ }
28
+ if (cmdPerm.id == Command_1.CMDPerms.UserChatLeader) {
29
+ return await message.chat.isLeader(message.user.id);
30
+ }
31
+ return true;
32
+ }
33
+ }
34
+ exports.default = CommandPermission;
35
+ //# sourceMappingURL=CommandPermission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandPermission.js","sourceRoot":"","sources":["../../../src/modules/command/CommandPermission.ts"],"names":[],"mappings":";;AACA,uCAAqC;AAErC,MAAqB,iBAAiB;IAMpC,YAAY,EAAU,EAAE,aAAsB,KAAK;QACjD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAgB,EAAE,OAA0B;QACpE,IAAI,OAAO,CAAC,EAAE,IAAI,kBAAQ,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;QACnC,CAAC;QAED,IAAI,OAAO,CAAC,EAAE,IAAI,kBAAQ,CAAC,SAAS,EAAE,CAAC;YACrC,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC;QACtC,CAAC;QAED,IAAI,OAAO,CAAC,EAAE,IAAI,kBAAQ,CAAC,aAAa,EAAE,CAAC;YACzC,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,OAAO,CAAC,EAAE,IAAI,kBAAQ,CAAC,YAAY,EAAE,CAAC;YACxC,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,OAAO,CAAC,EAAE,IAAI,kBAAQ,CAAC,aAAa,EAAE,CAAC;YACzC,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,OAAO,CAAC,EAAE,IAAI,kBAAQ,CAAC,aAAa,EAAE,CAAC;YACzC,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,OAAO,CAAC,EAAE,IAAI,kBAAQ,CAAC,cAAc,EAAE,CAAC;YAC1C,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA1CD,oCA0CC"}
@@ -0,0 +1,7 @@
1
+ /** Interface do configurador do controlador de comandos */
2
+ export default interface ICommandControllerConfig {
3
+ /** Prefixo necessário para procurar um comando */
4
+ prefix: string;
5
+ /** Procurar sem destinção de tamanho */
6
+ lowerCase: boolean;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ICommandControllerConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ICommandControllerConfig.js","sourceRoot":"","sources":["../../../src/modules/command/ICommandControllerConfig.ts"],"names":[],"mappings":""}