UNPKG

4.04 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5Object.defineProperty(exports, "__esModule", {
6 value: true
7});
8exports["default"] = void 0;
9
10var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
12var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
14var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
16var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
18var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
20var _Model2 = _interopRequireDefault(require("@lskjs/db/Model"));
21
22var _forEach = _interopRequireDefault(require("lodash/forEach"));
23
24var _get = _interopRequireDefault(require("lodash/get"));
25
26var _set = _interopRequireDefault(require("lodash/set"));
27
28function _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); }; }
29
30function _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; } }
31
32// https://raw.githubusercontent.com/KnorpelSenf/typegram/master/types.d.ts
33var BotsTelegramUserModel = /*#__PURE__*/function (_Model) {
34 (0, _inherits2["default"])(BotsTelegramUserModel, _Model);
35
36 var _super = _createSuper(BotsTelegramUserModel);
37
38 function BotsTelegramUserModel() {
39 (0, _classCallCheck2["default"])(this, BotsTelegramUserModel);
40 return _super.apply(this, arguments);
41 }
42
43 (0, _createClass2["default"])(BotsTelegramUserModel, [{
44 key: "setState",
45 value: function setState() {
46 var _this = this;
47
48 var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
49 (0, _forEach["default"])(state, function (value, key) {
50 (0, _set["default"])(_this, key, value); // ts-ignore
51
52 _this.markModified(key);
53 });
54 }
55 }, {
56 key: "setRef",
57 value: function setRef(data) {
58 var refUserLink = (0, _get["default"])(this, 'meta.start.ref');
59 var refLink = (0, _get["default"])(data, 'ref');
60 if (refUserLink || !refLink) return;
61 (0, _set["default"])(this, 'meta.start.ref', refLink);
62 this.markModified('meta');
63 }
64 }, {
65 key: "setLang",
66 value: function setLang(data, telegramLocale) {
67 var locale = (0, _get["default"])(data, 'locale', telegramLocale);
68 (0, _set["default"])(this, 'meta.locale', locale);
69 this.markModified('meta');
70 }
71 }]);
72 return BotsTelegramUserModel;
73}(_Model2["default"]);
74
75exports["default"] = BotsTelegramUserModel;
76BotsTelegramUserModel.schema = {
77 /** Unique identifier for this user or bot */
78 id: {
79 type: Number
80 },
81
82 /** True, if this user is a bot */
83 is_bot: {
84 type: Boolean
85 },
86
87 /** User's or bot's first name */
88 first_name: {
89 type: String
90 },
91
92 /** User's or bot's last name */
93 last_name: {
94 type: String
95 },
96
97 /** User's or bot's username */
98 username: {
99 type: String
100 },
101
102 /** IETF language tag of the user's language */
103 language_code: {
104 type: String
105 },
106 // Объект, в котрый можно складировать мета-информацию
107 meta: {
108 type: Object
109 }
110};
111BotsTelegramUserModel.options = {
112 model: 'BotsTelegramUserModel',
113 collection: 'bots_telegram_user',
114 timestamps: true
115};
116//# sourceMappingURL=BotsTelegramUserModel.js.map
\No newline at end of file