1 | "use strict";
|
2 |
|
3 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4 |
|
5 | Object.defineProperty(exports, "__esModule", {
|
6 | value: true
|
7 | });
|
8 | exports["default"] = exports.BaseBotPlugin = void 0;
|
9 |
|
10 | var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
11 |
|
12 | var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
13 |
|
14 | var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
15 |
|
16 | var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
17 |
|
18 | var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
19 |
|
20 | var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
|
21 |
|
22 | var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
23 |
|
24 | var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
25 |
|
26 | var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
27 |
|
28 | var _module = _interopRequireDefault(require("@lskjs/module"));
|
29 |
|
30 | var _asyncMapValues = _interopRequireDefault(require("@lskjs/utils/asyncMapValues"));
|
31 |
|
32 | function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
33 |
|
34 | function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
35 |
|
36 | function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
37 |
|
38 | function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
39 |
|
40 | var BaseBotPlugin = function (_Module) {
|
41 | (0, _inherits2["default"])(BaseBotPlugin, _Module);
|
42 |
|
43 | var _super = _createSuper(BaseBotPlugin);
|
44 |
|
45 | function BaseBotPlugin() {
|
46 | var _this;
|
47 |
|
48 | (0, _classCallCheck2["default"])(this, BaseBotPlugin);
|
49 |
|
50 | for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
51 | args[_key] = arguments[_key];
|
52 | }
|
53 |
|
54 | _this = _super.call.apply(_super, [this].concat(args));
|
55 | _this.botsModule = void 0;
|
56 | _this.providers = [];
|
57 | _this.bots = {};
|
58 | return _this;
|
59 | }
|
60 |
|
61 | (0, _createClass2["default"])(BaseBotPlugin, [{
|
62 | key: "getConfig",
|
63 | value: function () {
|
64 | var _getConfig = (0, _asyncToGenerator2["default"])( _regenerator["default"].mark(function _callee() {
|
65 | return _regenerator["default"].wrap(function _callee$(_context) {
|
66 | while (1) {
|
67 | switch (_context.prev = _context.next) {
|
68 | case 0:
|
69 | _context.t0 = _objectSpread;
|
70 | _context.t1 = {
|
71 | enable: true
|
72 | };
|
73 | _context.next = 4;
|
74 | return (0, _get2["default"])((0, _getPrototypeOf2["default"])(BaseBotPlugin.prototype), "getConfig", this).call(this);
|
75 |
|
76 | case 4:
|
77 | _context.t2 = _context.sent;
|
78 | return _context.abrupt("return", (0, _context.t0)(_context.t1, _context.t2));
|
79 |
|
80 | case 6:
|
81 | case "end":
|
82 | return _context.stop();
|
83 | }
|
84 | }
|
85 | }, _callee, this);
|
86 | }));
|
87 |
|
88 | function getConfig() {
|
89 | return _getConfig.apply(this, arguments);
|
90 | }
|
91 |
|
92 | return getConfig;
|
93 | }()
|
94 |
|
95 | }, {
|
96 | key: "canRunBot",
|
97 | value: function canRunBot(bot) {
|
98 | if (!Array.isArray(this.providers) || !this.providers.length) return true;
|
99 | return this.providers.includes(bot.provider);
|
100 | }
|
101 | }, {
|
102 | key: "initBot",
|
103 | value: function () {
|
104 | var _initBot = (0, _asyncToGenerator2["default"])( _regenerator["default"].mark(function _callee2(bot, name) {
|
105 | return _regenerator["default"].wrap(function _callee2$(_context2) {
|
106 | while (1) {
|
107 | switch (_context2.prev = _context2.next) {
|
108 | case 0:
|
109 | case "end":
|
110 | return _context2.stop();
|
111 | }
|
112 | }
|
113 | }, _callee2);
|
114 | }));
|
115 |
|
116 | function initBot(_x, _x2) {
|
117 | return _initBot.apply(this, arguments);
|
118 | }
|
119 |
|
120 | return initBot;
|
121 | }()
|
122 | }, {
|
123 | key: "initBots",
|
124 | value: function () {
|
125 | var _initBots = (0, _asyncToGenerator2["default"])( _regenerator["default"].mark(function _callee4() {
|
126 | var _this2 = this;
|
127 |
|
128 | return _regenerator["default"].wrap(function _callee4$(_context4) {
|
129 | while (1) {
|
130 | switch (_context4.prev = _context4.next) {
|
131 | case 0:
|
132 | _context4.next = 2;
|
133 | return (0, _asyncMapValues["default"])(this.bots, function () {
|
134 | var _ref = (0, _asyncToGenerator2["default"])( _regenerator["default"].mark(function _callee3(bot, name) {
|
135 | return _regenerator["default"].wrap(function _callee3$(_context3) {
|
136 | while (1) {
|
137 | switch (_context3.prev = _context3.next) {
|
138 | case 0:
|
139 | if (_this2.canRunBot(bot)) {
|
140 | _context3.next = 2;
|
141 | break;
|
142 | }
|
143 |
|
144 | return _context3.abrupt("return");
|
145 |
|
146 | case 2:
|
147 | _context3.next = 4;
|
148 | return _this2.initBot(bot, name);
|
149 |
|
150 | case 4:
|
151 | _context3.next = 6;
|
152 | return bot.initPlugin(_this2, name);
|
153 |
|
154 | case 6:
|
155 | case "end":
|
156 | return _context3.stop();
|
157 | }
|
158 | }
|
159 | }, _callee3);
|
160 | }));
|
161 |
|
162 | return function (_x3, _x4) {
|
163 | return _ref.apply(this, arguments);
|
164 | };
|
165 | }());
|
166 |
|
167 | case 2:
|
168 | case "end":
|
169 | return _context4.stop();
|
170 | }
|
171 | }
|
172 | }, _callee4, this);
|
173 | }));
|
174 |
|
175 | function initBots() {
|
176 | return _initBots.apply(this, arguments);
|
177 | }
|
178 |
|
179 | return initBots;
|
180 | }()
|
181 | }, {
|
182 | key: "init",
|
183 | value: function () {
|
184 | var _init = (0, _asyncToGenerator2["default"])( _regenerator["default"].mark(function _callee5() {
|
185 | return _regenerator["default"].wrap(function _callee5$(_context5) {
|
186 | while (1) {
|
187 | switch (_context5.prev = _context5.next) {
|
188 | case 0:
|
189 | _context5.next = 2;
|
190 | return (0, _get2["default"])((0, _getPrototypeOf2["default"])(BaseBotPlugin.prototype), "init", this).call(this);
|
191 |
|
192 | case 2:
|
193 | _context5.next = 4;
|
194 | return this.initBots();
|
195 |
|
196 | case 4:
|
197 | case "end":
|
198 | return _context5.stop();
|
199 | }
|
200 | }
|
201 | }, _callee5, this);
|
202 | }));
|
203 |
|
204 | function init() {
|
205 | return _init.apply(this, arguments);
|
206 | }
|
207 |
|
208 | return init;
|
209 | }()
|
210 | }, {
|
211 | key: "runBot",
|
212 | value: function () {
|
213 | var _runBot = (0, _asyncToGenerator2["default"])( _regenerator["default"].mark(function _callee6(bot, name) {
|
214 | return _regenerator["default"].wrap(function _callee6$(_context6) {
|
215 | while (1) {
|
216 | switch (_context6.prev = _context6.next) {
|
217 | case 0:
|
218 | case "end":
|
219 | return _context6.stop();
|
220 | }
|
221 | }
|
222 | }, _callee6);
|
223 | }));
|
224 |
|
225 | function runBot(_x5, _x6) {
|
226 | return _runBot.apply(this, arguments);
|
227 | }
|
228 |
|
229 | return runBot;
|
230 | }()
|
231 | }, {
|
232 | key: "runBots",
|
233 | value: function () {
|
234 | var _runBots = (0, _asyncToGenerator2["default"])( _regenerator["default"].mark(function _callee8() {
|
235 | var _this3 = this;
|
236 |
|
237 | return _regenerator["default"].wrap(function _callee8$(_context8) {
|
238 | while (1) {
|
239 | switch (_context8.prev = _context8.next) {
|
240 | case 0:
|
241 | if (this.debug) this.log.trace('runBots', Object.keys(this.bots));
|
242 | _context8.next = 3;
|
243 | return (0, _asyncMapValues["default"])(this.bots, function () {
|
244 | var _ref2 = (0, _asyncToGenerator2["default"])( _regenerator["default"].mark(function _callee7(bot, name) {
|
245 | return _regenerator["default"].wrap(function _callee7$(_context7) {
|
246 | while (1) {
|
247 | switch (_context7.prev = _context7.next) {
|
248 | case 0:
|
249 | if (_this3.debug) _this3.log.trace('this.canRunBot(bot)', name, _this3.canRunBot(bot));
|
250 |
|
251 | if (_this3.canRunBot(bot)) {
|
252 | _context7.next = 3;
|
253 | break;
|
254 | }
|
255 |
|
256 | return _context7.abrupt("return");
|
257 |
|
258 | case 3:
|
259 | _context7.next = 5;
|
260 | return _this3.runBot(bot, name);
|
261 |
|
262 | case 5:
|
263 | _context7.next = 7;
|
264 | return bot.runPlugin(_this3, name);
|
265 |
|
266 | case 7:
|
267 | case "end":
|
268 | return _context7.stop();
|
269 | }
|
270 | }
|
271 | }, _callee7);
|
272 | }));
|
273 |
|
274 | return function (_x7, _x8) {
|
275 | return _ref2.apply(this, arguments);
|
276 | };
|
277 | }());
|
278 |
|
279 | case 3:
|
280 | case "end":
|
281 | return _context8.stop();
|
282 | }
|
283 | }
|
284 | }, _callee8, this);
|
285 | }));
|
286 |
|
287 | function runBots() {
|
288 | return _runBots.apply(this, arguments);
|
289 | }
|
290 |
|
291 | return runBots;
|
292 | }()
|
293 | }, {
|
294 | key: "run",
|
295 | value: function () {
|
296 | var _run = (0, _asyncToGenerator2["default"])( _regenerator["default"].mark(function _callee9() {
|
297 | return _regenerator["default"].wrap(function _callee9$(_context9) {
|
298 | while (1) {
|
299 | switch (_context9.prev = _context9.next) {
|
300 | case 0:
|
301 | _context9.next = 2;
|
302 | return (0, _get2["default"])((0, _getPrototypeOf2["default"])(BaseBotPlugin.prototype), "run", this).call(this);
|
303 |
|
304 | case 2:
|
305 | if (this.config && this.config.enable) {
|
306 | _context9.next = 5;
|
307 | break;
|
308 | }
|
309 |
|
310 | this.log.warn("".concat(this.name, " is not enabled"));
|
311 | return _context9.abrupt("return");
|
312 |
|
313 | case 5:
|
314 | _context9.next = 7;
|
315 | return this.runBots();
|
316 |
|
317 | case 7:
|
318 | case "end":
|
319 | return _context9.stop();
|
320 | }
|
321 | }
|
322 | }, _callee9, this);
|
323 | }));
|
324 |
|
325 | function run() {
|
326 | return _run.apply(this, arguments);
|
327 | }
|
328 |
|
329 | return run;
|
330 | }()
|
331 | }]);
|
332 | return BaseBotPlugin;
|
333 | }(_module["default"]);
|
334 |
|
335 | exports.BaseBotPlugin = BaseBotPlugin;
|
336 | var _default = BaseBotPlugin;
|
337 | exports["default"] = _default;
|
338 |
|
\ | No newline at end of file |