@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.
- package/dist/cjs/bot/factory/_service.js +49 -10
- package/dist/cjs/bot/factory/client-config.js +49 -10
- package/dist/cjs/bot/factory/make-bot.js +45 -6
- package/dist/cjs/bot/message-handler/_service.js +42 -3
- package/dist/cjs/bot/run.js +3 -3
- package/dist/cjs/bot/update-poller/_service.js +49 -10
- package/dist/cjs/bot/update-poller/fetch-updates.js +44 -5
- package/dist/cjs/bot/update-poller/poll-and-handle.js +46 -7
- package/dist/cjs/client/_client.js +49 -10
- package/dist/cjs/client/config.js +45 -6
- package/dist/cjs/client/errors.js +42 -3
- package/dist/cjs/client/execute-request/_service.js +48 -9
- package/dist/cjs/client/execute-request/execute.js +52 -13
- package/dist/cjs/client/execute-request/payload.js +2 -2
- package/dist/cjs/client/file/_service.js +51 -12
- package/dist/cjs/client/file/get-file.js +45 -6
- package/dist/cjs/const.js +5 -5
- package/dist/cjs/index.js +24 -55
- package/dist/dts/bot/factory/make-bot.d.ts +2 -2
- package/dist/esm/bot/factory/_service.js +46 -9
- package/dist/esm/bot/factory/client-config.js +46 -9
- package/dist/esm/bot/factory/make-bot.js +42 -5
- package/dist/esm/bot/message-handler/_service.js +39 -2
- package/dist/esm/bot/message-handler/types.js +2 -1
- package/dist/esm/bot/message-handler/utils.js +5 -1
- package/dist/esm/bot/run.js +8 -4
- package/dist/esm/bot/update-poller/_service.js +46 -9
- package/dist/esm/bot/update-poller/errors.js +2 -1
- package/dist/esm/bot/update-poller/fetch-updates.js +41 -4
- package/dist/esm/bot/update-poller/poll-and-handle.js +43 -6
- package/dist/esm/bot/update-poller/settings.js +5 -1
- package/dist/esm/client/_client.js +46 -9
- package/dist/esm/client/config.js +43 -5
- package/dist/esm/client/errors.js +39 -2
- package/dist/esm/client/execute-request/_service.js +45 -8
- package/dist/esm/client/execute-request/execute.js +49 -12
- package/dist/esm/client/execute-request/payload.js +7 -3
- package/dist/esm/client/file/_service.js +48 -11
- package/dist/esm/client/file/get-file.js +42 -5
- package/dist/esm/client/guards.js +9 -3
- package/dist/esm/const.js +9 -5
- package/dist/esm/index.js +21 -5
- package/dist/esm/specification/api.js +2 -1
- package/dist/esm/specification/types.js +2 -1
- package/package.json +1 -2
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
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
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
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
|
-
|
|
9
|
-
|
|
10
|
-
const
|
|
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
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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
|
-
|
|
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
|
-
|
|
7
|
+
exports.isFileContent = isFileContent;
|
|
8
|
+
const isTgBotApiResponse = (input) => (typeof input == "object" && input != null) &&
|
|
5
9
|
("ok" in input && typeof input.ok == "boolean");
|
|
6
|
-
|
|
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
|
-
|
|
2
|
-
|
|
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
|
-
|
|
11
|
-
|
|
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
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
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
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|