leoric 2.13.1 → 2.13.2
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/data_types.d.ts +1 -0
- package/dist/drivers/sqljs/interface.d.ts +1 -0
- package/dist/realm/base.d.ts +1 -0
- package/dist/realm/base.js +56 -56
- package/dist/realm/base.js.map +1 -1
- package/lib/data_types.d.ts +1 -0
- package/lib/drivers/sqljs/interface.d.ts +1 -0
- package/lib/realm/base.d.ts +1 -0
- package/lib/realm/base.js +21 -21
- package/lib/realm/base.js.map +1 -1
- package/package.json +1 -1
package/dist/data_types.d.ts
CHANGED
package/dist/realm/base.d.ts
CHANGED
package/dist/realm/base.js
CHANGED
|
@@ -129,58 +129,6 @@ function initAttributes(model, columns) {
|
|
|
129
129
|
}
|
|
130
130
|
model.init(attributes, { timestamps: false });
|
|
131
131
|
}
|
|
132
|
-
function loadModels(Spine, models, opts) {
|
|
133
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
134
|
-
var database, tables, schemaInfo, models_1, models_1_1, model, columns, models_2, models_2_1, model;
|
|
135
|
-
var e_2, _a, e_3, _b;
|
|
136
|
-
return __generator(this, function (_c) {
|
|
137
|
-
switch (_c.label) {
|
|
138
|
-
case 0:
|
|
139
|
-
database = opts.database;
|
|
140
|
-
tables = models.map(function (model) { return model.physicTable; });
|
|
141
|
-
return [4 /*yield*/, Spine.driver.querySchemaInfo(database, tables)];
|
|
142
|
-
case 1:
|
|
143
|
-
schemaInfo = _c.sent();
|
|
144
|
-
try {
|
|
145
|
-
for (models_1 = __values(models), models_1_1 = models_1.next(); !models_1_1.done; models_1_1 = models_1.next()) {
|
|
146
|
-
model = models_1_1.value;
|
|
147
|
-
// assign driver if model's driver not exist
|
|
148
|
-
if (!model.driver)
|
|
149
|
-
model.driver = Spine.driver;
|
|
150
|
-
// assign options if model's options not exist
|
|
151
|
-
if (!model.options)
|
|
152
|
-
model.options = Spine.options;
|
|
153
|
-
columns = schemaInfo[model.physicTable] || schemaInfo[model.table];
|
|
154
|
-
if (!model.attributes)
|
|
155
|
-
initAttributes(model, columns);
|
|
156
|
-
model.load(columns);
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
160
|
-
finally {
|
|
161
|
-
try {
|
|
162
|
-
if (models_1_1 && !models_1_1.done && (_a = models_1.return)) _a.call(models_1);
|
|
163
|
-
}
|
|
164
|
-
finally { if (e_2) throw e_2.error; }
|
|
165
|
-
}
|
|
166
|
-
try {
|
|
167
|
-
for (models_2 = __values(models), models_2_1 = models_2.next(); !models_2_1.done; models_2_1 = models_2.next()) {
|
|
168
|
-
model = models_2_1.value;
|
|
169
|
-
model.initialize();
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
173
|
-
finally {
|
|
174
|
-
try {
|
|
175
|
-
if (models_2_1 && !models_2_1.done && (_b = models_2.return)) _b.call(models_2);
|
|
176
|
-
}
|
|
177
|
-
finally { if (e_3) throw e_3.error; }
|
|
178
|
-
}
|
|
179
|
-
return [2 /*return*/];
|
|
180
|
-
}
|
|
181
|
-
});
|
|
182
|
-
});
|
|
183
|
-
}
|
|
184
132
|
function createSpine(opts) {
|
|
185
133
|
var Model = Bone;
|
|
186
134
|
if (opts.Bone && opts.Bone.prototype instanceof Bone) {
|
|
@@ -200,7 +148,7 @@ function createSpine(opts) {
|
|
|
200
148
|
var rReplacementKey = /\s:(\w+)\b/g;
|
|
201
149
|
var BaseRealm = /** @class */ (function () {
|
|
202
150
|
function BaseRealm(opts) {
|
|
203
|
-
var
|
|
151
|
+
var e_2, _a;
|
|
204
152
|
if (opts === void 0) { opts = {}; }
|
|
205
153
|
var _b = opts.dialect, dialect = _b === void 0 ? 'mysql' : _b, dialectModulePath = opts.dialectModulePath, _c = opts.client, client = _c === void 0 ? dialectModulePath : _c, _d = opts.database, database = _d === void 0 ? opts.db || opts.storage : _d, CustomDriver = opts.driver, restOpts = __rest(opts, ["dialect", "dialectModulePath", "client", "database", "driver"]);
|
|
206
154
|
var Spine = createSpine(opts);
|
|
@@ -212,12 +160,12 @@ var BaseRealm = /** @class */ (function () {
|
|
|
212
160
|
models[model.name] = model;
|
|
213
161
|
}
|
|
214
162
|
}
|
|
215
|
-
catch (
|
|
163
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
216
164
|
finally {
|
|
217
165
|
try {
|
|
218
166
|
if (_f && !_f.done && (_a = _e.return)) _a.call(_e);
|
|
219
167
|
}
|
|
220
|
-
finally { if (
|
|
168
|
+
finally { if (e_2) throw e_2.error; }
|
|
221
169
|
}
|
|
222
170
|
}
|
|
223
171
|
var DriverClass = this.getDriverClass(CustomDriver, dialect);
|
|
@@ -261,6 +209,58 @@ var BaseRealm = /** @class */ (function () {
|
|
|
261
209
|
});
|
|
262
210
|
});
|
|
263
211
|
};
|
|
212
|
+
BaseRealm.prototype.loadModels = function (models, opts) {
|
|
213
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
214
|
+
var database, tables, schemaInfo, models_1, models_1_1, model, columns, models_2, models_2_1, model;
|
|
215
|
+
var e_3, _a, e_4, _b;
|
|
216
|
+
return __generator(this, function (_c) {
|
|
217
|
+
switch (_c.label) {
|
|
218
|
+
case 0:
|
|
219
|
+
database = opts.database;
|
|
220
|
+
tables = models.map(function (model) { return model.physicTable; });
|
|
221
|
+
return [4 /*yield*/, this.driver.querySchemaInfo(database, tables)];
|
|
222
|
+
case 1:
|
|
223
|
+
schemaInfo = _c.sent();
|
|
224
|
+
try {
|
|
225
|
+
for (models_1 = __values(models), models_1_1 = models_1.next(); !models_1_1.done; models_1_1 = models_1.next()) {
|
|
226
|
+
model = models_1_1.value;
|
|
227
|
+
if (!model.driver)
|
|
228
|
+
model.driver = this.driver;
|
|
229
|
+
if (!model.options)
|
|
230
|
+
model.options = this.options;
|
|
231
|
+
if (!model.models)
|
|
232
|
+
model.models = this.models;
|
|
233
|
+
columns = schemaInfo[model.physicTable] || schemaInfo[model.table];
|
|
234
|
+
if (!model.attributes)
|
|
235
|
+
initAttributes(model, columns);
|
|
236
|
+
model.load(columns);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
240
|
+
finally {
|
|
241
|
+
try {
|
|
242
|
+
if (models_1_1 && !models_1_1.done && (_a = models_1.return)) _a.call(models_1);
|
|
243
|
+
}
|
|
244
|
+
finally { if (e_3) throw e_3.error; }
|
|
245
|
+
}
|
|
246
|
+
try {
|
|
247
|
+
for (models_2 = __values(models), models_2_1 = models_2.next(); !models_2_1.done; models_2_1 = models_2.next()) {
|
|
248
|
+
model = models_2_1.value;
|
|
249
|
+
model.initialize();
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
catch (e_4_1) { e_4 = { error: e_4_1 }; }
|
|
253
|
+
finally {
|
|
254
|
+
try {
|
|
255
|
+
if (models_2_1 && !models_2_1.done && (_b = models_2.return)) _b.call(models_2);
|
|
256
|
+
}
|
|
257
|
+
finally { if (e_4) throw e_4.error; }
|
|
258
|
+
}
|
|
259
|
+
return [2 /*return*/];
|
|
260
|
+
}
|
|
261
|
+
});
|
|
262
|
+
});
|
|
263
|
+
};
|
|
264
264
|
BaseRealm.prototype.connect = function () {
|
|
265
265
|
return __awaiter(this, void 0, void 0, function () {
|
|
266
266
|
var models, models_3, models_3_1, model;
|
|
@@ -286,7 +286,7 @@ var BaseRealm = /** @class */ (function () {
|
|
|
286
286
|
// models could be connected already if cached
|
|
287
287
|
models = models.filter(function (model) { return model.synchronized == null; });
|
|
288
288
|
if (!(models.length > 0)) return [3 /*break*/, 3];
|
|
289
|
-
return [4 /*yield*/, loadModels(
|
|
289
|
+
return [4 /*yield*/, this.loadModels(models, this.options)];
|
|
290
290
|
case 2:
|
|
291
291
|
_b.sent();
|
|
292
292
|
_b.label = 3;
|
package/dist/realm/base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/realm/base.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,IAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAChC,IAAM,cAAc,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAC9C,IAAA,SAAS,GAAK,OAAO,CAAC,iBAAiB,CAAC,UAA/B,CAAgC;AACzC,IAAA,MAAM,GAAK,OAAO,CAAC,UAAU,CAAC,OAAxB,CAAyB;AACvC,IAAM,SAAS,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACnD,IAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;AAC9B,IAAA,oBAAoB,GAAK,OAAO,CAAC,cAAc,CAAC,qBAA5B,CAA6B;AAEzD,IAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAEtC;;;;;GAKG;AAEH;;;;GAIG;AACH,SAAS,cAAc,CAAC,KAAK,EAAE,OAAO;;IACpC,IAAM,UAAU,GAAG,EAAE,CAAC;;QAEtB,KAAyB,IAAA,YAAA,SAAA,OAAO,CAAA,gCAAA,qDAAE;YAA7B,IAAM,UAAU,oBAAA;YACX,IAAA,UAAU,GAA8B,UAAU,WAAxC,EAAE,UAAU,GAAkB,UAAU,WAA5B,EAAK,QAAQ,UAAK,UAAU,EAApD,4BAAuC,CAAF,CAAgB;YAC3D,IAAM,IAAI,GAAG,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACvE,UAAU,CAAC,IAAI,CAAC,yBACX,QAAQ,KACX,UAAU,YAAA,EACV,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,GAClD,CAAC;SACH;;;;;;;;;IAED,KAAK,IAAM,IAAI,IAAI,oBAAoB,EAAE;QACvC,IAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;YAC1E,UAAU,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YACvC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;SACzB;KACF;IAED,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/realm/base.js"],"names":[],"mappings":"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"}
|
package/lib/data_types.d.ts
CHANGED
package/lib/realm/base.d.ts
CHANGED
package/lib/realm/base.js
CHANGED
|
@@ -38,26 +38,6 @@ function initAttributes(model, columns) {
|
|
|
38
38
|
}
|
|
39
39
|
model.init(attributes, { timestamps: false });
|
|
40
40
|
}
|
|
41
|
-
async function loadModels(Spine, models, opts) {
|
|
42
|
-
const { database } = opts;
|
|
43
|
-
const tables = models.map(model => model.physicTable);
|
|
44
|
-
const schemaInfo = await Spine.driver.querySchemaInfo(database, tables);
|
|
45
|
-
for (const model of models) {
|
|
46
|
-
// assign driver if model's driver not exist
|
|
47
|
-
if (!model.driver)
|
|
48
|
-
model.driver = Spine.driver;
|
|
49
|
-
// assign options if model's options not exist
|
|
50
|
-
if (!model.options)
|
|
51
|
-
model.options = Spine.options;
|
|
52
|
-
const columns = schemaInfo[model.physicTable] || schemaInfo[model.table];
|
|
53
|
-
if (!model.attributes)
|
|
54
|
-
initAttributes(model, columns);
|
|
55
|
-
model.load(columns);
|
|
56
|
-
}
|
|
57
|
-
for (const model of models) {
|
|
58
|
-
model.initialize();
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
41
|
function createSpine(opts) {
|
|
62
42
|
let Model = Bone;
|
|
63
43
|
if (opts.Bone && opts.Bone.prototype instanceof Bone) {
|
|
@@ -120,6 +100,26 @@ class BaseRealm {
|
|
|
120
100
|
async getModels() {
|
|
121
101
|
return Object.values(this.models);
|
|
122
102
|
}
|
|
103
|
+
async loadModels(models, opts) {
|
|
104
|
+
const { database } = opts;
|
|
105
|
+
const tables = models.map(model => model.physicTable);
|
|
106
|
+
const schemaInfo = await this.driver.querySchemaInfo(database, tables);
|
|
107
|
+
for (const model of models) {
|
|
108
|
+
if (!model.driver)
|
|
109
|
+
model.driver = this.driver;
|
|
110
|
+
if (!model.options)
|
|
111
|
+
model.options = this.options;
|
|
112
|
+
if (!model.models)
|
|
113
|
+
model.models = this.models;
|
|
114
|
+
const columns = schemaInfo[model.physicTable] || schemaInfo[model.table];
|
|
115
|
+
if (!model.attributes)
|
|
116
|
+
initAttributes(model, columns);
|
|
117
|
+
model.load(columns);
|
|
118
|
+
}
|
|
119
|
+
for (const model of models) {
|
|
120
|
+
model.initialize();
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
123
|
async connect() {
|
|
124
124
|
let models = await this.getModels();
|
|
125
125
|
for (const model of models)
|
|
@@ -127,7 +127,7 @@ class BaseRealm {
|
|
|
127
127
|
// models could be connected already if cached
|
|
128
128
|
models = models.filter(model => model.synchronized == null);
|
|
129
129
|
if (models.length > 0) {
|
|
130
|
-
await loadModels(
|
|
130
|
+
await this.loadModels(models, this.options);
|
|
131
131
|
}
|
|
132
132
|
this.connected = true;
|
|
133
133
|
return this.Bone;
|
package/lib/realm/base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/realm/base.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAChC,MAAM,cAAc,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AACtD,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACjD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACvC,MAAM,SAAS,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACnD,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;AACtC,MAAM,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAEzD,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAEtC;;;;;GAKG;AAEH;;;;GAIG;AACH,SAAS,cAAc,CAAC,KAAK,EAAE,OAAO;IACpC,MAAM,UAAU,GAAG,EAAE,CAAC;IAEtB,KAAK,MAAM,UAAU,IAAI,OAAO,EAAE;QAChC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAC;QAC3D,MAAM,IAAI,GAAG,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACvE,UAAU,CAAC,IAAI,CAAC,GAAG;YACjB,GAAG,QAAQ;YACX,UAAU;YACV,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;SAClD,CAAC;KACH;IAED,KAAK,MAAM,IAAI,IAAI,oBAAoB,EAAE;QACvC,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;YAC1E,UAAU,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YACvC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;SACzB;KACF;IAED,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/realm/base.js"],"names":[],"mappings":"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"}
|