@another-trial/airgram 5.1.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.
@@ -0,0 +1,310 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ extendStatics(d, b);
11
+ function __() { this.constructor = d; }
12
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
+ };
14
+ })();
15
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
18
+ }) : (function(o, m, k, k2) {
19
+ if (k2 === undefined) k2 = k;
20
+ o[k2] = m[k];
21
+ }));
22
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
23
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
24
+ }) : function(o, v) {
25
+ o["default"] = v;
26
+ });
27
+ var __importStar = (this && this.__importStar) || function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
35
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
36
+ return new (P || (P = Promise))(function (resolve, reject) {
37
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
38
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
39
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
40
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
41
+ });
42
+ };
43
+ var __generator = (this && this.__generator) || function (thisArg, body) {
44
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
45
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
46
+ function verb(n) { return function (v) { return step([n, v]); }; }
47
+ function step(op) {
48
+ if (f) throw new TypeError("Generator is already executing.");
49
+ while (_) try {
50
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
51
+ if (y = 0, t) op = [op[0] & 2, t.value];
52
+ switch (op[0]) {
53
+ case 0: case 1: t = op; break;
54
+ case 4: _.label++; return { value: op[1], done: false };
55
+ case 5: _.label++; y = op[1]; op = [0]; continue;
56
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
57
+ default:
58
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
59
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
60
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
61
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
62
+ if (t[2]) _.ops.pop();
63
+ _.trys.pop(); continue;
64
+ }
65
+ op = body.call(thisArg, _);
66
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
67
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
68
+ }
69
+ };
70
+ var __spreadArrays = (this && this.__spreadArrays) || function () {
71
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
72
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
73
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
74
+ r[k] = a[j];
75
+ return r;
76
+ };
77
+ Object.defineProperty(exports, "__esModule", { value: true });
78
+ exports.TdJsonClient = void 0;
79
+ var ffi = __importStar(require("ffi-napi"));
80
+ var fs_1 = require("fs");
81
+ var path_1 = require("path");
82
+ var ref = __importStar(require("ref-napi"));
83
+ var utils_1 = require("../utils");
84
+ var BaseJsonClient_1 = require("./BaseJsonClient");
85
+ var DEFAULT_COMMAND = process.platform === 'win32' ? 'tdjson' : 'libtdjson';
86
+ function buildQuery(query) {
87
+ var buffer = Buffer.from(query + '\0', 'utf-8');
88
+ buffer.type = ref.types.CString;
89
+ return buffer;
90
+ }
91
+ var TdJsonClient = /** @class */ (function (_super) {
92
+ __extends(TdJsonClient, _super);
93
+ function TdJsonClient(_a) {
94
+ var command = _a.command, models = _a.models, timeout = _a.timeout;
95
+ var _this = _super.call(this) || this;
96
+ _this.destroyed = false;
97
+ _this.log = [];
98
+ _this.pending = new Map();
99
+ _this.sleepPromise = null;
100
+ _this.stack = new Map();
101
+ _this.updateHandlers = new Map();
102
+ _this.wakeup = null;
103
+ _this.writeLog = false;
104
+ _this.command = command;
105
+ _this.timeout = timeout || 10;
106
+ _this.serialize = utils_1.createSerializer();
107
+ _this.deserialize = utils_1.createDeserializer(models);
108
+ _this.handleError = function (error) {
109
+ throw error;
110
+ };
111
+ _this.client = ffi.Library(command ? path_1.resolve(command) : path_1.resolve(DEFAULT_COMMAND), {
112
+ td_create_client_id: ['int', []],
113
+ td_send: ['void', ['int', 'string']],
114
+ td_receive: ['string', ['double']],
115
+ td_execute: ['string', ['string']]
116
+ });
117
+ _this.loop();
118
+ return _this;
119
+ }
120
+ TdJsonClient.prototype.addUpdateHandler = function (clientId, fn) {
121
+ this.updateHandlers.set(clientId, fn);
122
+ };
123
+ TdJsonClient.prototype.catch = function (handler) {
124
+ this.handleError = handler;
125
+ };
126
+ TdJsonClient.prototype.create = function () {
127
+ return this.client.td_create_client_id();
128
+ };
129
+ TdJsonClient.prototype.destroy = function () {
130
+ this.pending.clear();
131
+ this.sleepPromise = null;
132
+ this.wakeup = null;
133
+ this.destroyed = true;
134
+ };
135
+ TdJsonClient.prototype.execute = function (query) {
136
+ return this.parseResponse(this.client.td_execute(buildQuery(JSON.stringify(query, this.serialize))));
137
+ };
138
+ TdJsonClient.prototype.flushLog = function (filename) {
139
+ var log = this.log;
140
+ this.writeLog = false;
141
+ this.log = [];
142
+ if (filename) {
143
+ var resolvedFilename = path_1.resolve(filename);
144
+ fs_1.writeFileSync(resolvedFilename, JSON.stringify(__spreadArrays(log)));
145
+ console.info("[TdJsonClient] flushLog() log (" + log.length + " rows) saved to " + resolvedFilename);
146
+ }
147
+ return log;
148
+ };
149
+ TdJsonClient.prototype.pause = function () {
150
+ var _this = this;
151
+ if (!this.wakeup) {
152
+ this.sleepPromise = new Promise(function (resolve) {
153
+ _this.wakeup = resolve;
154
+ });
155
+ }
156
+ };
157
+ TdJsonClient.prototype.removeUpdateHandler = function (clientId) {
158
+ this.updateHandlers.delete(clientId);
159
+ this.pending.delete(clientId);
160
+ this.stack.delete(clientId);
161
+ };
162
+ TdJsonClient.prototype.resume = function () {
163
+ if (this.wakeup && !this.destroyed) {
164
+ this.wakeup();
165
+ this.sleepPromise = null;
166
+ this.wakeup = null;
167
+ }
168
+ };
169
+ TdJsonClient.prototype.send = function (clientId, id, request, resolve) {
170
+ if (!this.destroyed) {
171
+ var clientHandlers = this.getClientHandlers(clientId);
172
+ clientHandlers.set(id, resolve);
173
+ this.client.td_send(clientId, buildQuery(JSON.stringify(request, this.serialize)));
174
+ }
175
+ };
176
+ TdJsonClient.prototype.startLog = function () {
177
+ this.writeLog = true;
178
+ };
179
+ TdJsonClient.prototype.addToStack = function (response) {
180
+ if (response) {
181
+ var clientId = Number(response['@client_id']);
182
+ var clientStack = this.getClientStack(clientId);
183
+ clientStack.push(response);
184
+ if (clientStack.length === 1) {
185
+ this.handleResponse(clientId).catch(this.handleError);
186
+ }
187
+ }
188
+ };
189
+ TdJsonClient.prototype.getClientHandlers = function (clientId) {
190
+ var clientHandlers = this.pending.get(clientId);
191
+ if (!clientHandlers) {
192
+ clientHandlers = new Map();
193
+ this.pending.set(clientId, clientHandlers);
194
+ }
195
+ return clientHandlers;
196
+ };
197
+ TdJsonClient.prototype.getClientStack = function (clientId) {
198
+ var clientStack = this.stack.get(clientId);
199
+ if (!clientStack) {
200
+ clientStack = [];
201
+ this.stack.set(clientId, clientStack);
202
+ }
203
+ return clientStack;
204
+ };
205
+ TdJsonClient.prototype.handleResponse = function (clientId) {
206
+ return __awaiter(this, void 0, void 0, function () {
207
+ var clientStack, response, requestId, clientHandlers, resolve;
208
+ var _this = this;
209
+ return __generator(this, function (_a) {
210
+ switch (_a.label) {
211
+ case 0:
212
+ clientStack = this.getClientStack(clientId);
213
+ response = clientStack.shift();
214
+ if (!response) {
215
+ return [2 /*return*/, Promise.resolve()];
216
+ }
217
+ requestId = response['@extra'];
218
+ delete response['@client_id'];
219
+ delete response['@extra'];
220
+ if (!requestId) return [3 /*break*/, 1];
221
+ clientHandlers = this.getClientHandlers(clientId);
222
+ resolve = clientHandlers.get(requestId);
223
+ clientHandlers.delete(requestId);
224
+ if (resolve) {
225
+ resolve(response);
226
+ }
227
+ else {
228
+ this.handleError(new Error("[TdProxy] request handler for the client " + clientId + " not found. Missed update: " + JSON.stringify(response)));
229
+ }
230
+ return [3 /*break*/, 3];
231
+ case 1: return [4 /*yield*/, this.handleUpdate(clientId, response)];
232
+ case 2:
233
+ _a.sent();
234
+ _a.label = 3;
235
+ case 3:
236
+ setImmediate(function () { return _this.handleResponse(clientId); });
237
+ return [2 /*return*/];
238
+ }
239
+ });
240
+ });
241
+ };
242
+ TdJsonClient.prototype.handleUpdate = function (clientId, response) {
243
+ return __awaiter(this, void 0, void 0, function () {
244
+ var handler;
245
+ return __generator(this, function (_a) {
246
+ handler = this.updateHandlers.get(clientId);
247
+ if (handler) {
248
+ return [2 /*return*/, handler(response)];
249
+ }
250
+ else {
251
+ this.handleError(new Error("[TdProxy] updates handler for the client " + clientId + " not found. Missed update: " + JSON.stringify(response)));
252
+ }
253
+ return [2 /*return*/];
254
+ });
255
+ });
256
+ };
257
+ TdJsonClient.prototype.loop = function () {
258
+ var _this = this;
259
+ if (this.destroyed) {
260
+ return;
261
+ }
262
+ if (this.sleepPromise) {
263
+ this.sleepPromise.then(function () {
264
+ _this.receive();
265
+ });
266
+ }
267
+ else {
268
+ this.receive();
269
+ }
270
+ };
271
+ TdJsonClient.prototype.onReceive = function (response) {
272
+ var _this = this;
273
+ if (response) {
274
+ this.addToStack(response);
275
+ }
276
+ setImmediate(function () { return _this.loop(); });
277
+ };
278
+ TdJsonClient.prototype.parseResponse = function (data) {
279
+ try {
280
+ if (data === null) {
281
+ return null;
282
+ }
283
+ return JSON.parse(data, this.deserialize);
284
+ }
285
+ catch (e) {
286
+ this.handleError(new Error('[TdProxy] received invalid JSON'));
287
+ return null;
288
+ }
289
+ };
290
+ TdJsonClient.prototype.receive = function () {
291
+ var _this = this;
292
+ if (this.destroyed) {
293
+ return;
294
+ }
295
+ this.client.td_receive.async(this.timeout, function (error, response) {
296
+ if (error) {
297
+ _this.handleError(new Error("[TdProxy] TDLib error: " + error));
298
+ return _this.onReceive(null);
299
+ }
300
+ if (_this.writeLog) {
301
+ _this.log.push(response);
302
+ }
303
+ var tdObject = _this.parseResponse(response);
304
+ _this.onReceive(tdObject);
305
+ });
306
+ };
307
+ return TdJsonClient;
308
+ }(BaseJsonClient_1.BaseJsonClient));
309
+ exports.TdJsonClient = TdJsonClient;
310
+ //# sourceMappingURL=TdJsonClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TdJsonClient.js","sourceRoot":"","sources":["../../src/components/TdJsonClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './Auth';
2
+ export * from './Provider';
3
+ export * from './TdJsonClient';
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./Auth"), exports);
14
+ __exportStar(require("./Provider"), exports);
15
+ __exportStar(require("./TdJsonClient"), exports);
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAsB;AACtB,6CAA0B;AAC1B,iDAA8B"}
package/index.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ import { Airgram } from './Airgram';
2
+ import { Auth, TdJsonClient } from './components';
3
+ import { createDeserializer, createSerializer, prompt } from './utils';
4
+ export * from '@airgram/core';
5
+ export { Airgram, Auth, TdJsonClient, createDeserializer, createSerializer, prompt };
package/index.js ADDED
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.prompt = exports.createSerializer = exports.createDeserializer = exports.TdJsonClient = exports.Auth = exports.Airgram = void 0;
14
+ var Airgram_1 = require("./Airgram");
15
+ Object.defineProperty(exports, "Airgram", { enumerable: true, get: function () { return Airgram_1.Airgram; } });
16
+ var components_1 = require("./components");
17
+ Object.defineProperty(exports, "Auth", { enumerable: true, get: function () { return components_1.Auth; } });
18
+ Object.defineProperty(exports, "TdJsonClient", { enumerable: true, get: function () { return components_1.TdJsonClient; } });
19
+ var utils_1 = require("./utils");
20
+ Object.defineProperty(exports, "createDeserializer", { enumerable: true, get: function () { return utils_1.createDeserializer; } });
21
+ Object.defineProperty(exports, "createSerializer", { enumerable: true, get: function () { return utils_1.createSerializer; } });
22
+ Object.defineProperty(exports, "prompt", { enumerable: true, get: function () { return utils_1.prompt; } });
23
+ __exportStar(require("@airgram/core"), exports);
24
+ //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAAmC;AAK1B,wFALA,iBAAO,OAKA;AAJhB,2CAAiD;AAI/B,qFAJT,iBAAI,OAIS;AAAE,6FAJT,yBAAY,OAIS;AAHpC,iCAAsE;AAGhC,mGAH7B,0BAAkB,OAG6B;AAAE,iGAH7B,wBAAgB,OAG6B;AAAE,uFAH7B,cAAM,OAG6B;AADlF,gDAA6B"}
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "@another-trial/airgram",
3
+ "version": "5.1.1",
4
+ "private": false,
5
+ "main": "index.js",
6
+ "types": "index.d.ts",
7
+ "keywords": [
8
+ "telegram",
9
+ "tdlib",
10
+ "telegram bot",
11
+ "telegram client",
12
+ "telegram javascript",
13
+ "telegram typescript"
14
+ ],
15
+ "dependencies": {
16
+ "ffi-napi": "^3.0.0",
17
+ "@another-trial/constants": "^4.1.1",
18
+ "@another-trial/core": "^5.1.1"
19
+ },
20
+ "engines": {
21
+ "node": ">=12"
22
+ },
23
+ "gitHead": "35eec9d2e4fb34a7d0183ecf8a4558c047e8a5bf",
24
+ "sideEffects": false,
25
+ "publishConfig": {
26
+ "access": "public"
27
+ }
28
+ }
package/types.d.ts ADDED
@@ -0,0 +1,14 @@
1
+ import { PlainObjectToModelTransformer, TdObject } from '@airgram/core';
2
+ export interface TdJsonConfig {
3
+ command?: string;
4
+ models?: PlainObjectToModelTransformer;
5
+ timeout?: number;
6
+ }
7
+ export declare type NativeTdObject = (TdObject & {
8
+ '@extra': string;
9
+ '@client_id': string;
10
+ }) | null;
11
+ export declare type UpdateHandlerFn = (update: TdObject) => any;
12
+ export interface TdProviderConfig {
13
+ handleUpdate: (update: TdObject) => Promise<unknown>;
14
+ }
package/types.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
package/types.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from './json';
2
+ export * from './prompt';
package/utils/index.js ADDED
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./json"), exports);
14
+ __exportStar(require("./prompt"), exports);
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAsB;AACtB,2CAAwB"}
@@ -0,0 +1,5 @@
1
+ import { PlainObjectToModelTransformer, TdObject } from '@airgram/core';
2
+ export declare function camelCase(str: string): string;
3
+ export declare function snakeCase(str: string): string;
4
+ export declare function createDeserializer(models?: PlainObjectToModelTransformer): (key: string, value: any) => TdObject;
5
+ export declare function createSerializer(): (key: string, value: any) => Record<string, unknown>;
package/utils/json.js ADDED
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.createSerializer = exports.createDeserializer = exports.snakeCase = exports.camelCase = void 0;
5
+ function camelCase(str) {
6
+ return str.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g, function (_m, chr) { return chr.toUpperCase(); });
7
+ }
8
+ exports.camelCase = camelCase;
9
+ function snakeCase(str) {
10
+ return str.replace(/[A-Z]/g, function (chr) { return "_" + chr.toLowerCase(); });
11
+ }
12
+ exports.snakeCase = snakeCase;
13
+ var keyMap = new Map();
14
+ function createDeserializer(models) {
15
+ return function (_key, value) {
16
+ if (value && typeof value === 'object' && !Array.isArray(value)) {
17
+ var replacement = {};
18
+ for (var k in value) {
19
+ // console.info('unserialize', k)
20
+ if (Object.hasOwnProperty.call(value, k)) {
21
+ if (k === '@type') {
22
+ replacement._ = value['@type'];
23
+ continue;
24
+ }
25
+ if (!k) {
26
+ continue;
27
+ }
28
+ if (k.charAt(0) === '@') {
29
+ replacement[k] = value[k];
30
+ continue;
31
+ }
32
+ var key = keyMap.get(k);
33
+ if (key == null) {
34
+ key = camelCase(k);
35
+ keyMap.set(k, key);
36
+ }
37
+ replacement[key] = value[k];
38
+ }
39
+ }
40
+ return models ? models(replacement) : replacement;
41
+ }
42
+ return value;
43
+ };
44
+ }
45
+ exports.createDeserializer = createDeserializer;
46
+ function createSerializer() {
47
+ return function (_key, value) {
48
+ if (value && typeof value === 'object' && !Array.isArray(value)) {
49
+ var replacement = {};
50
+ for (var k in value) {
51
+ if (Object.hasOwnProperty.call(value, k)) {
52
+ if (k === '_') {
53
+ replacement['@type'] = value._;
54
+ continue;
55
+ }
56
+ if (!k) {
57
+ continue;
58
+ }
59
+ if (k.charAt(0) === '@') {
60
+ replacement[k] = value[k];
61
+ continue;
62
+ }
63
+ var key = keyMap.get(k);
64
+ if (key == null) {
65
+ key = snakeCase(k);
66
+ keyMap.set(k, key);
67
+ }
68
+ replacement[key] = value[k];
69
+ }
70
+ }
71
+ return replacement;
72
+ }
73
+ return value;
74
+ };
75
+ }
76
+ exports.createSerializer = createSerializer;
77
+ //# sourceMappingURL=json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/utils/json.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export interface PromptDeferred {
2
+ resolve: (value: string) => void;
3
+ reject: (error: Error) => void;
4
+ }
5
+ export declare function prompt(question: string, fn?: (deferred: PromptDeferred) => void): Promise<string>;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ // tslint:disable:object-literal-sort-keys
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
6
+ }) : (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ o[k2] = m[k];
9
+ }));
10
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
11
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
12
+ }) : function(o, v) {
13
+ o["default"] = v;
14
+ });
15
+ var __importStar = (this && this.__importStar) || function (mod) {
16
+ if (mod && mod.__esModule) return mod;
17
+ var result = {};
18
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
19
+ __setModuleDefault(result, mod);
20
+ return result;
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.prompt = void 0;
24
+ var readline = __importStar(require("readline"));
25
+ var prev = null;
26
+ function prompt(question, fn) {
27
+ return new Promise(function (resolve, reject) {
28
+ if (prev) {
29
+ prev.reject(new Error('Readline seance has been closed due initialization of the new seance.'));
30
+ }
31
+ var rl = readline.createInterface({
32
+ input: process.stdin,
33
+ output: process.stdout
34
+ });
35
+ prev = {
36
+ resolve: function (value) {
37
+ prev = null;
38
+ rl.close();
39
+ resolve(value);
40
+ },
41
+ reject: function (error) {
42
+ prev = null;
43
+ rl.close();
44
+ reject(error);
45
+ }
46
+ };
47
+ rl.question(question + "\n", function (value) {
48
+ prev = null;
49
+ rl.close();
50
+ resolve(value);
51
+ });
52
+ if (typeof fn === 'function') {
53
+ fn(prev);
54
+ }
55
+ });
56
+ }
57
+ exports.prompt = prompt;
58
+ //# sourceMappingURL=prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/utils/prompt.ts"],"names":[],"mappings":";AAAA,0CAA0C;;;;;;;;;;;;;;;;;;;;;;AAE1C,iDAAoC;AAOpC,IAAI,IAAI,GAA0B,IAAI,CAAA;AAEtC,SAAgB,MAAM,CAAE,QAAgB,EAAE,EAAuC;IAC/E,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;QACjC,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC,CAAA;SAChG;QACD,IAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;YAClC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAA;QACF,IAAI,GAAG;YACL,OAAO,EAAE,UAAC,KAAa;gBACrB,IAAI,GAAG,IAAI,CAAA;gBACX,EAAE,CAAC,KAAK,EAAE,CAAA;gBACV,OAAO,CAAC,KAAK,CAAC,CAAA;YAChB,CAAC;YACD,MAAM,EAAE,UAAC,KAAY;gBACnB,IAAI,GAAG,IAAI,CAAA;gBACX,EAAE,CAAC,KAAK,EAAE,CAAA;gBACV,MAAM,CAAC,KAAK,CAAC,CAAA;YACf,CAAC;SACF,CAAA;QACD,EAAE,CAAC,QAAQ,CAAI,QAAQ,OAAI,EAAE,UAAC,KAAK;YACjC,IAAI,GAAG,IAAI,CAAA;YACX,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC,CAAC,CAAA;QACF,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE;YAC5B,EAAE,CAAC,IAAI,CAAC,CAAA;SACT;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AA9BD,wBA8BC"}