@effect-ak/tg-bot-client 0.2.0 → 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 (45) hide show
  1. package/dist/cjs/bot/factory/_service.js +49 -10
  2. package/dist/cjs/bot/factory/client-config.js +49 -10
  3. package/dist/cjs/bot/factory/make-bot.js +45 -6
  4. package/dist/cjs/bot/message-handler/_service.js +42 -3
  5. package/dist/cjs/bot/run.js +3 -3
  6. package/dist/cjs/bot/update-poller/_service.js +49 -10
  7. package/dist/cjs/bot/update-poller/fetch-updates.js +44 -5
  8. package/dist/cjs/bot/update-poller/poll-and-handle.js +46 -7
  9. package/dist/cjs/client/_client.js +49 -10
  10. package/dist/cjs/client/config.js +45 -6
  11. package/dist/cjs/client/errors.js +42 -3
  12. package/dist/cjs/client/execute-request/_service.js +48 -9
  13. package/dist/cjs/client/execute-request/execute.js +52 -13
  14. package/dist/cjs/client/execute-request/payload.js +2 -2
  15. package/dist/cjs/client/file/_service.js +51 -12
  16. package/dist/cjs/client/file/get-file.js +45 -6
  17. package/dist/cjs/const.js +5 -5
  18. package/dist/cjs/index.js +24 -55
  19. package/dist/dts/bot/factory/make-bot.d.ts +2 -2
  20. package/dist/esm/bot/factory/_service.js +46 -9
  21. package/dist/esm/bot/factory/client-config.js +46 -9
  22. package/dist/esm/bot/factory/make-bot.js +42 -5
  23. package/dist/esm/bot/message-handler/_service.js +39 -2
  24. package/dist/esm/bot/message-handler/types.js +2 -1
  25. package/dist/esm/bot/message-handler/utils.js +5 -1
  26. package/dist/esm/bot/run.js +8 -4
  27. package/dist/esm/bot/update-poller/_service.js +46 -9
  28. package/dist/esm/bot/update-poller/errors.js +2 -1
  29. package/dist/esm/bot/update-poller/fetch-updates.js +41 -4
  30. package/dist/esm/bot/update-poller/poll-and-handle.js +43 -6
  31. package/dist/esm/bot/update-poller/settings.js +5 -1
  32. package/dist/esm/client/_client.js +46 -9
  33. package/dist/esm/client/config.js +43 -5
  34. package/dist/esm/client/errors.js +39 -2
  35. package/dist/esm/client/execute-request/_service.js +45 -8
  36. package/dist/esm/client/execute-request/execute.js +49 -12
  37. package/dist/esm/client/execute-request/payload.js +7 -3
  38. package/dist/esm/client/file/_service.js +48 -11
  39. package/dist/esm/client/file/get-file.js +42 -5
  40. package/dist/esm/client/guards.js +9 -3
  41. package/dist/esm/const.js +9 -5
  42. package/dist/esm/index.js +21 -5
  43. package/dist/esm/specification/api.js +2 -1
  44. package/dist/esm/specification/types.js +2 -1
  45. package/package.json +1 -2
@@ -1,5 +1,8 @@
1
- import { isFileContent } from "../guards.js";
2
- export const makePayload = (body) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makePayload = void 0;
4
+ const guards_js_1 = require("../guards.js");
5
+ const makePayload = (body) => {
3
6
  const entries = Object.entries(body);
4
7
  if (entries.length == 0)
5
8
  return undefined;
@@ -10,7 +13,7 @@ export const makePayload = (body) => {
10
13
  if (typeof value != "object") {
11
14
  result.append(key, `${value}`);
12
15
  }
13
- else if (isFileContent(value)) {
16
+ else if ((0, guards_js_1.isFileContent)(value)) {
14
17
  result.append(key, new Blob([value.file_content]), value.file_name);
15
18
  }
16
19
  else {
@@ -19,3 +22,4 @@ export const makePayload = (body) => {
19
22
  }
20
23
  return result;
21
24
  };
25
+ exports.makePayload = makePayload;
@@ -1,14 +1,51 @@
1
- import * as Micro from "effect/Micro";
2
- import * as Context from "effect/Context";
3
- import { TgBotClientConfig } from "../config.js";
4
- import { ClientExecuteRequestService, ClientExecuteRequestServiceDefault } from "../execute-request/_service.js";
5
- import { getFile } from "./get-file.js";
6
- export class ClientFileService extends Context.Tag("ClientFileService")() {
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
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ClientFileServiceDefault = exports.ClientFileService = void 0;
37
+ const Micro = __importStar(require("effect/Micro"));
38
+ const Context = __importStar(require("effect/Context"));
39
+ const config_js_1 = require("../config.js");
40
+ const _service_js_1 = require("../execute-request/_service.js");
41
+ const get_file_js_1 = require("./get-file.js");
42
+ class ClientFileService extends Context.Tag("ClientFileService")() {
7
43
  }
8
- export const ClientFileServiceDefault = Micro.gen(function* () {
9
- const config = yield* Micro.service(TgBotClientConfig);
10
- const execute = yield* Micro.service(ClientExecuteRequestService);
44
+ exports.ClientFileService = ClientFileService;
45
+ exports.ClientFileServiceDefault = Micro.gen(function* () {
46
+ const config = yield* Micro.service(config_js_1.TgBotClientConfig);
47
+ const execute = yield* Micro.service(_service_js_1.ClientExecuteRequestService);
11
48
  return {
12
- getFile: (input) => getFile(input.file_id, config, execute)
49
+ getFile: (input) => (0, get_file_js_1.getFile)(input.file_id, config, execute)
13
50
  };
14
- }).pipe(Micro.provideServiceEffect(ClientExecuteRequestService, ClientExecuteRequestServiceDefault));
51
+ }).pipe(Micro.provideServiceEffect(_service_js_1.ClientExecuteRequestService, _service_js_1.ClientExecuteRequestServiceDefault));
@@ -1,10 +1,46 @@
1
- import * as Micro from "effect/Micro";
2
- import { TgBotClientError } from "../errors.js";
3
- export const getFile = (fileId, config, execute) => Micro.gen(function* () {
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
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.getFile = void 0;
37
+ const Micro = __importStar(require("effect/Micro"));
38
+ const errors_js_1 = require("../errors.js");
39
+ const getFile = (fileId, config, execute) => Micro.gen(function* () {
4
40
  const response = yield* execute.execute("get_file", { file_id: fileId });
5
41
  const file_path = response.file_path;
6
42
  if (!file_path || file_path.length == 0) {
7
- return yield* Micro.fail(new TgBotClientError({
43
+ return yield* Micro.fail(new errors_js_1.TgBotClientError({
8
44
  reason: {
9
45
  type: "UnableToGetFile",
10
46
  cause: "File path not defined"
@@ -15,10 +51,11 @@ export const getFile = (fileId, config, execute) => Micro.gen(function* () {
15
51
  const url = `${config["base-url"]}/file/bot${config["bot-token"]}/${file_path}`;
16
52
  const fileContent = yield* Micro.tryPromise({
17
53
  try: () => fetch(url).then(_ => _.arrayBuffer()),
18
- catch: cause => new TgBotClientError({
54
+ catch: cause => new errors_js_1.TgBotClientError({
19
55
  reason: { type: "UnableToGetFile", cause }
20
56
  })
21
57
  });
22
58
  const file = new File([new Uint8Array(fileContent)], file_name);
23
59
  return file;
24
60
  });
61
+ exports.getFile = getFile;
@@ -1,7 +1,13 @@
1
- export const isFileContent = (input) => (typeof input == "object" && input != null) &&
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isTgBotClientSettingsInput = exports.isTgBotApiResponse = exports.isFileContent = void 0;
4
+ const isFileContent = (input) => (typeof input == "object" && input != null) &&
2
5
  ("file_content" in input && input.file_content instanceof Uint8Array) &&
3
6
  ("file_name" in input && typeof input.file_name == "string");
4
- export const isTgBotApiResponse = (input) => (typeof input == "object" && input != null) &&
7
+ exports.isFileContent = isFileContent;
8
+ const isTgBotApiResponse = (input) => (typeof input == "object" && input != null) &&
5
9
  ("ok" in input && typeof input.ok == "boolean");
6
- export const isTgBotClientSettingsInput = (input) => (typeof input == "object" && input != null) &&
10
+ exports.isTgBotApiResponse = isTgBotApiResponse;
11
+ const isTgBotClientSettingsInput = (input) => (typeof input == "object" && input != null) &&
7
12
  ("bot-token" in input && typeof input["bot-token"] == "string");
13
+ exports.isTgBotClientSettingsInput = isTgBotClientSettingsInput;
package/dist/esm/const.js CHANGED
@@ -1,5 +1,8 @@
1
- export const defaultBaseUrl = "https://api.telegram.org";
2
- export const MESSAGE_EFFECTS = {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isMessageEffect = exports.messageEffectIdCodes = exports.MESSAGE_EFFECTS = exports.defaultBaseUrl = void 0;
4
+ exports.defaultBaseUrl = "https://api.telegram.org";
5
+ exports.MESSAGE_EFFECTS = {
3
6
  "🔥": "5104841245755180586",
4
7
  "👍": "5107584321108051014",
5
8
  "👎": "5104858069142078462",
@@ -7,7 +10,8 @@ export const MESSAGE_EFFECTS = {
7
10
  "🎉": "5046509860389126442",
8
11
  "💩": "5046589136895476101"
9
12
  };
10
- export const messageEffectIdCodes = Object.keys(MESSAGE_EFFECTS);
11
- export const isMessageEffect = (input) => {
12
- return typeof input === "string" && input in MESSAGE_EFFECTS;
13
+ exports.messageEffectIdCodes = Object.keys(exports.MESSAGE_EFFECTS);
14
+ const isMessageEffect = (input) => {
15
+ return typeof input === "string" && input in exports.MESSAGE_EFFECTS;
13
16
  };
17
+ exports.isMessageEffect = isMessageEffect;
package/dist/esm/index.js CHANGED
@@ -1,5 +1,21 @@
1
- export * from "./client/_client.js";
2
- export * from "./bot/run.js";
3
- export * from "./specification/api.js";
4
- export * from "./specification/types.js";
5
- export * from "./const.js";
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./client/_client.js"), exports);
18
+ __exportStar(require("./bot/run.js"), exports);
19
+ __exportStar(require("./specification/api.js"), exports);
20
+ __exportStar(require("./specification/types.js"), exports);
21
+ __exportStar(require("./const.js"), exports);
@@ -1 +1,2 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1 +1,2 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "name": "@effect-ak/tg-bot-client",
3
- "version": "0.2.0",
4
- "type": "module",
3
+ "version": "0.2.1",
5
4
  "homepage": "https://effect-ak.github.io/telegram-bot-client",
6
5
  "author": {
7
6
  "name": "Aleksandr Kondaurov",