@maxhub/max-bot-api 0.2.1

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 (91) hide show
  1. package/LICENSE +20 -0
  2. package/dist/api.d.ts +42 -0
  3. package/dist/api.js +144 -0
  4. package/dist/bot.d.ts +26 -0
  5. package/dist/bot.js +70 -0
  6. package/dist/composer.d.ts +22 -0
  7. package/dist/composer.js +130 -0
  8. package/dist/context.d.ts +85 -0
  9. package/dist/context.js +252 -0
  10. package/dist/core/helpers/attachments.d.ts +70 -0
  11. package/dist/core/helpers/attachments.js +127 -0
  12. package/dist/core/helpers/buttons.d.ts +8 -0
  13. package/dist/core/helpers/buttons.js +33 -0
  14. package/dist/core/helpers/keyboard.d.ts +3 -0
  15. package/dist/core/helpers/keyboard.js +34 -0
  16. package/dist/core/helpers/types.d.ts +7 -0
  17. package/dist/core/helpers/types.js +2 -0
  18. package/dist/core/helpers/upload.d.ts +47 -0
  19. package/dist/core/helpers/upload.js +166 -0
  20. package/dist/core/network/api/base-api.d.ts +14 -0
  21. package/dist/core/network/api/base-api.js +35 -0
  22. package/dist/core/network/api/client.d.ts +23 -0
  23. package/dist/core/network/api/client.js +72 -0
  24. package/dist/core/network/api/error.d.ts +11 -0
  25. package/dist/core/network/api/error.js +17 -0
  26. package/dist/core/network/api/index.d.ts +5 -0
  27. package/dist/core/network/api/index.js +25 -0
  28. package/dist/core/network/api/modules/bots/api.d.ts +7 -0
  29. package/dist/core/network/api/modules/bots/api.js +16 -0
  30. package/dist/core/network/api/modules/bots/types.d.ts +11 -0
  31. package/dist/core/network/api/modules/bots/types.js +2 -0
  32. package/dist/core/network/api/modules/chats/api.d.ts +19 -0
  33. package/dist/core/network/api/modules/chats/api.js +83 -0
  34. package/dist/core/network/api/modules/chats/types.d.ts +109 -0
  35. package/dist/core/network/api/modules/chats/types.js +2 -0
  36. package/dist/core/network/api/modules/index.d.ts +12 -0
  37. package/dist/core/network/api/modules/index.js +34 -0
  38. package/dist/core/network/api/modules/messages/api.d.ts +17 -0
  39. package/dist/core/network/api/modules/messages/api.js +59 -0
  40. package/dist/core/network/api/modules/messages/types.d.ts +70 -0
  41. package/dist/core/network/api/modules/messages/types.js +2 -0
  42. package/dist/core/network/api/modules/subscriptions/api.d.ts +6 -0
  43. package/dist/core/network/api/modules/subscriptions/api.js +13 -0
  44. package/dist/core/network/api/modules/subscriptions/types.d.ts +13 -0
  45. package/dist/core/network/api/modules/subscriptions/types.js +2 -0
  46. package/dist/core/network/api/modules/types.d.ts +118 -0
  47. package/dist/core/network/api/modules/types.js +19 -0
  48. package/dist/core/network/api/modules/uploads/api.d.ts +6 -0
  49. package/dist/core/network/api/modules/uploads/api.js +13 -0
  50. package/dist/core/network/api/modules/uploads/types.d.ts +9 -0
  51. package/dist/core/network/api/modules/uploads/types.js +2 -0
  52. package/dist/core/network/api/raw-api.d.ts +169 -0
  53. package/dist/core/network/api/raw-api.js +29 -0
  54. package/dist/core/network/api/types/attachment-request.d.ts +68 -0
  55. package/dist/core/network/api/types/attachment-request.js +2 -0
  56. package/dist/core/network/api/types/attachment.d.ts +67 -0
  57. package/dist/core/network/api/types/attachment.js +2 -0
  58. package/dist/core/network/api/types/bot.d.ts +8 -0
  59. package/dist/core/network/api/types/bot.js +2 -0
  60. package/dist/core/network/api/types/chat.d.ts +41 -0
  61. package/dist/core/network/api/types/chat.js +2 -0
  62. package/dist/core/network/api/types/common.d.ts +9 -0
  63. package/dist/core/network/api/types/common.js +2 -0
  64. package/dist/core/network/api/types/index.d.ts +11 -0
  65. package/dist/core/network/api/types/index.js +27 -0
  66. package/dist/core/network/api/types/keyboard.d.ts +30 -0
  67. package/dist/core/network/api/types/keyboard.js +2 -0
  68. package/dist/core/network/api/types/markup.d.ts +13 -0
  69. package/dist/core/network/api/types/markup.js +2 -0
  70. package/dist/core/network/api/types/message.d.ts +38 -0
  71. package/dist/core/network/api/types/message.js +2 -0
  72. package/dist/core/network/api/types/subcription.d.ts +85 -0
  73. package/dist/core/network/api/types/subcription.js +2 -0
  74. package/dist/core/network/api/types/uploads.d.ts +1 -0
  75. package/dist/core/network/api/types/uploads.js +2 -0
  76. package/dist/core/network/api/types/user.d.ts +14 -0
  77. package/dist/core/network/api/types/user.js +2 -0
  78. package/dist/core/network/polling.d.ts +11 -0
  79. package/dist/core/network/polling.js +51 -0
  80. package/dist/filters.d.ts +2 -0
  81. package/dist/filters.js +17 -0
  82. package/dist/index.d.ts +9 -0
  83. package/dist/index.js +45 -0
  84. package/dist/middleware.d.ts +9 -0
  85. package/dist/middleware.js +2 -0
  86. package/dist/types.d.ts +1 -0
  87. package/dist/types.js +17 -0
  88. package/dist/utils.d.ts +3 -0
  89. package/dist/utils.js +24 -0
  90. package/package.json +55 -0
  91. package/readme.md +62 -0
package/package.json ADDED
@@ -0,0 +1,55 @@
1
+ {
2
+ "name": "@maxhub/max-bot-api",
3
+ "version": "0.2.1",
4
+ "description": "Max Bot Framework",
5
+ "repository": "https://github.com/max-messenger/max-bot-api-client-ts",
6
+ "author": "Juice Development",
7
+ "license": "MIT",
8
+ "engines": {
9
+ "node": ">=18.18.0"
10
+ },
11
+ "main": "./dist/index.js",
12
+ "types": "./dist/index.d.ts",
13
+ "files": [
14
+ "./dist/"
15
+ ],
16
+ "exports": {
17
+ ".": {
18
+ "types": "./dist/index.d.ts",
19
+ "default": "./dist/index.js"
20
+ },
21
+ "./types": {
22
+ "types": "./dist/types.d.ts",
23
+ "default": "./dist/types.js"
24
+ }
25
+ },
26
+ "typesVersions": {
27
+ "*": {
28
+ "types": [
29
+ "./dist/types.d.ts"
30
+ ]
31
+ }
32
+ },
33
+ "scripts": {
34
+ "build": "tsc",
35
+ "lint": "eslint ./src --ext ts --report-unused-disable-directives"
36
+ },
37
+ "devDependencies": {
38
+ "@types/debug": "^4.1.12",
39
+ "@types/node": "^22.5.5",
40
+ "@types/vcf": "^2.0.7",
41
+ "@typescript-eslint/eslint-plugin": "^7.0.0",
42
+ "@typescript-eslint/parser": "^7.0.0",
43
+ "eslint": "^8.2.0",
44
+ "eslint-config-airbnb-base": "15.0.0",
45
+ "eslint-config-airbnb-typescript": "^18.0.0",
46
+ "eslint-plugin-import": "^2.25.2",
47
+ "mit-license": "^1.0.0",
48
+ "nodemon": "^3.1.7",
49
+ "typescript": "^5.4.2"
50
+ },
51
+ "dependencies": {
52
+ "debug": "^4.3.7",
53
+ "vcf": "^2.1.2"
54
+ }
55
+ }
package/readme.md ADDED
@@ -0,0 +1,62 @@
1
+ # Max Bot API Client
2
+
3
+ ## Документация
4
+
5
+ В [документации](https://github.com/max-messenger/max-bot-api-client-ts/tree/master/docs) вы можете найти подробные инструкции по использованию фреймворка.
6
+
7
+ ## Быстрый старт
8
+
9
+ > Если вы новичок, то можете прочитать [официальную документацию](https://dev.max.ru/), написанную разработчиками Max
10
+
11
+ ### Получение токена
12
+ Откройте диалог с [PrimeBot](https://max.ru/primebot), следуйте инструкциям и создайте нового бота. После создания бота PrimeBot отправит вам токен.
13
+
14
+ ### Установка
15
+ #### npm
16
+ ```sh
17
+ npm install @maxhub/max-bot-api
18
+ ```
19
+ #### yarn
20
+ ```sh
21
+ yarn add @maxhub/max-bot-api
22
+ ```
23
+ #### pnpm
24
+ ```sh
25
+ pnpm add @maxhub/max-bot-api
26
+ ```
27
+
28
+ ### Пример
29
+ ```javascript
30
+ import { Bot } from '@maxhub/max-bot-api';
31
+
32
+ const bot = new Bot(process.env.BOT_TOKEN);
33
+
34
+ // Установка подсказок с доступными командами
35
+ bot.api.setMyCommands([
36
+ {
37
+ name: 'ping',
38
+ description: 'Сыграть в пинг-понг'
39
+ },
40
+ ]);
41
+
42
+ // Обработчик события запуска бота
43
+ bot.on('bot_started', (ctx) => ctx.reply('Привет! Отправь мне команду /ping, чтобы сыграть в пинг-понг'));
44
+
45
+ // Обработчик команды '/ping'
46
+ bot.command('ping', (ctx) => ctx.reply('pong'));
47
+
48
+ // Обработчик для сообщения с текстом 'hello'
49
+ bot.hears('hello', (ctx) => ctx.reply('world'));
50
+
51
+ // Обработчик для всех остальных входящих сообщений
52
+ bot.on('message_created', (ctx) => ctx.reply(ctx.message.body.text));
53
+
54
+ bot.start();
55
+ ```
56
+
57
+ ### Обработка ошибок
58
+ Если во время обработки события произойдёт ошибка, Bot вызовет метод `bot.handleError`. По умолчанию `bot.handleError` просто завершает работу программы, но вы можете переопределить это поведение, используя `bot.catch`.
59
+
60
+ > ⚠️ Завершайте работу программы при неизвестных ошибках, иначе бот может зависнуть в состоянии ошибки.
61
+
62
+ > ℹ️ [`pm2`](https://pm2.keymetrics.io/) может автоматически перезапустить вашего бота, если он остановится по какой-либо причине