UNPKG

9.82 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4var _typeof = require("@babel/runtime/helpers/typeof");
5Object.defineProperty(exports, "__esModule", {
6 value: true
7});
8exports["default"] = exports.ModelsModule = void 0;
9var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
10var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
14var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
15var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
18var _err = _interopRequireDefault(require("@lskjs/err"));
19var _module = require("@lskjs/module");
20var _mapValues = _interopRequireDefault(require("lodash/mapValues"));
21function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
22function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
24function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
25function _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); }; }
26function _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; } }
27var ModelsModule = /*#__PURE__*/function (_Module) {
28 (0, _inherits2["default"])(ModelsModule, _Module);
29 var _super = _createSuper(ModelsModule);
30 function ModelsModule() {
31 var _this;
32 (0, _classCallCheck2["default"])(this, ModelsModule);
33 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
34 args[_key] = arguments[_key];
35 }
36 _this = _super.call.apply(_super, [this].concat(args));
37 _this.__models = void 0;
38 _this.models = void 0;
39 return _this;
40 }
41 (0, _createClass2["default"])(ModelsModule, [{
42 key: "getModels",
43 value:
44 /**
45 * overridable
46 */
47 function () {
48 var _getModels = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
49 return _regenerator["default"].wrap(function _callee$(_context) {
50 while (1) switch (_context.prev = _context.next) {
51 case 0:
52 return _context.abrupt("return", _objectSpread(_objectSpread({}, this.models || {}), this.__models || {}));
53 case 1:
54 case "end":
55 return _context.stop();
56 }
57 }, _callee, this);
58 }));
59 function getModels() {
60 return _getModels.apply(this, arguments);
61 }
62 return getModels;
63 }()
64 }, {
65 key: "setProp",
66 value: function setProp(key, value) {
67 // @ts-ignore
68 if (key === 'models') return (0, _get2["default"])((0, _getPrototypeOf2["default"])(ModelsModule.prototype), "setProp", this).call(this, '__models', value);
69 // @ts-ignore
70 return (0, _get2["default"])((0, _getPrototypeOf2["default"])(ModelsModule.prototype), "setProp", this).call(this, key, value);
71 }
72 }, {
73 key: "moduleGetter",
74 value: function () {
75 var _moduleGetter = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(m) {
76 return _regenerator["default"].wrap(function _callee2$(_context2) {
77 while (1) switch (_context2.prev = _context2.next) {
78 case 0:
79 if (m.dbName) {
80 _context2.next = 2;
81 break;
82 }
83 throw new _err["default"]('!this.dbName');
84 case 2:
85 _context2.next = 4;
86 return m.app.module(m.dbName, {
87 run: true
88 });
89 case 4:
90 return _context2.abrupt("return", m.model);
91 case 5:
92 case "end":
93 return _context2.stop();
94 }
95 }, _callee2);
96 }));
97 function moduleGetter(_x) {
98 return _moduleGetter.apply(this, arguments);
99 }
100 return moduleGetter;
101 }()
102 }, {
103 key: "model",
104 value: function () {
105 var _model = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(nameOrNames) {
106 var options,
107 modelModule,
108 _args3 = arguments;
109 return _regenerator["default"].wrap(function _callee3$(_context3) {
110 while (1) switch (_context3.prev = _context3.next) {
111 case 0:
112 options = _objectSpread({
113 run: true
114 }, (_args3.length <= 1 ? undefined : _args3[1]) || {});
115 _context3.next = 3;
116 return this.module(nameOrNames, options);
117 case 3:
118 modelModule = _context3.sent;
119 if (!(modelModule instanceof _module.Module)) {
120 _context3.next = 6;
121 break;
122 }
123 return _context3.abrupt("return", modelModule.model);
124 case 6:
125 if (!Array.isArray(nameOrNames)) {
126 _context3.next = 8;
127 break;
128 }
129 return _context3.abrupt("return", (0, _mapValues["default"])(modelModule, function (m) {
130 return m.model;
131 }));
132 case 8:
133 return _context3.abrupt("return", modelModule);
134 case 9:
135 case "end":
136 return _context3.stop();
137 }
138 }, _callee3, this);
139 }));
140 function model(_x2) {
141 return _model.apply(this, arguments);
142 }
143 return model;
144 }()
145 }, {
146 key: "getModules",
147 value: function () {
148 var _getModules = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
149 var models;
150 return _regenerator["default"].wrap(function _callee4$(_context4) {
151 while (1) switch (_context4.prev = _context4.next) {
152 case 0:
153 _context4.next = 2;
154 return this.getModels();
155 case 2:
156 models = _context4.sent;
157 return _context4.abrupt("return", _objectSpread(_objectSpread({}, (0, _get2["default"])((0, _getPrototypeOf2["default"])(ModelsModule.prototype), "getModules", this).call(this)), (0, _mapValues["default"])(models, function (Model) {
158 return [function () {
159 return Promise.resolve().then(function () {
160 return _interopRequireWildcard(require('./ModelModule'));
161 });
162 }, {
163 Model: Model
164 }];
165 })));
166 case 4:
167 case "end":
168 return _context4.stop();
169 }
170 }, _callee4, this);
171 }));
172 function getModules() {
173 return _getModules.apply(this, arguments);
174 }
175 return getModules;
176 }()
177 }]);
178 return ModelsModule;
179}(_module.Module);
180exports.ModelsModule = ModelsModule;
181var _default = ModelsModule;
182exports["default"] = _default;
183//# sourceMappingURL=ModelsModule.js.map
\No newline at end of file