@proteinjs/db 1.3.0 → 1.3.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/CHANGELOG.md +12 -0
- package/dist/generated/index.js +5 -5
- package/dist/generated/index.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/src/Columns.d.ts.map +1 -1
- package/dist/src/Columns.js +2 -6
- package/dist/src/Columns.js.map +1 -1
- package/dist/src/TableWatcher.d.ts.map +1 -1
- package/dist/src/TableWatcher.js.map +1 -1
- package/dist/src/reference/ReferenceArray.d.ts +4 -0
- package/dist/src/reference/ReferenceArray.d.ts.map +1 -1
- package/dist/src/reference/ReferenceArray.js +52 -8
- package/dist/src/reference/ReferenceArray.js.map +1 -1
- package/dist/test/ReferenceArray.test.d.ts +2 -0
- package/dist/test/ReferenceArray.test.d.ts.map +1 -0
- package/dist/test/ReferenceArray.test.js +132 -0
- package/dist/test/ReferenceArray.test.js.map +1 -0
- package/dist/test/ReferenceArraySerializer.test.d.ts +2 -0
- package/dist/test/ReferenceArraySerializer.test.d.ts.map +1 -0
- package/dist/test/ReferenceArraySerializer.test.js +40 -0
- package/dist/test/ReferenceArraySerializer.test.js.map +1 -0
- package/dist/test/reusable/ColumnTypesTests.d.ts +53 -0
- package/dist/test/reusable/ColumnTypesTests.d.ts.map +1 -0
- package/dist/test/{ColumnTypesTests.js → reusable/ColumnTypesTests.js} +4 -4
- package/dist/test/reusable/ColumnTypesTests.js.map +1 -0
- package/dist/test/reusable/CrudTests.d.ts +51 -0
- package/dist/test/reusable/CrudTests.d.ts.map +1 -0
- package/dist/test/{CrudTests.js → reusable/CrudTests.js} +4 -4
- package/dist/test/reusable/CrudTests.js.map +1 -0
- package/dist/test/{TableManagerTests.d.ts → reusable/TableManagerTests.d.ts} +2 -2
- package/dist/test/reusable/TableManagerTests.d.ts.map +1 -0
- package/dist/test/{TableManagerTests.js → reusable/TableManagerTests.js} +3 -3
- package/dist/test/reusable/TableManagerTests.js.map +1 -0
- package/generated/index.ts +20 -17
- package/index.ts +3 -3
- package/package.json +12 -12
- package/src/Columns.ts +1 -2
- package/src/reference/ReferenceArray.ts +46 -4
- package/test/ReferenceArray.test.ts +93 -0
- package/test/ReferenceArraySerializer.test.ts +42 -0
- package/test/{ColumnTypesTests.ts → reusable/ColumnTypesTests.ts} +6 -6
- package/test/{CrudTests.ts → reusable/CrudTests.ts} +4 -4
- package/test/{TableManagerTests.ts → reusable/TableManagerTests.ts} +4 -4
- package/LICENSE +0 -21
- package/dist/test/ColumnTypesTests.d.ts +0 -53
- package/dist/test/ColumnTypesTests.d.ts.map +0 -1
- package/dist/test/ColumnTypesTests.js.map +0 -1
- package/dist/test/CrudTests.d.ts +0 -51
- package/dist/test/CrudTests.d.ts.map +0 -1
- package/dist/test/CrudTests.js.map +0 -1
- package/dist/test/TableManagerTests.d.ts.map +0 -1
- package/dist/test/TableManagerTests.js.map +0 -1
|
@@ -23,6 +23,10 @@ export declare class ReferenceArray<T extends Record> implements CustomSerializa
|
|
|
23
23
|
static fromObjects<T extends Record>(table: string, objects: (T | (Partial<T> & {
|
|
24
24
|
id: string;
|
|
25
25
|
}))[]): ReferenceArray<T>;
|
|
26
|
+
/**
|
|
27
|
+
* Used to keep `_ids` in sync with `_objects`
|
|
28
|
+
*/
|
|
29
|
+
private createProxy;
|
|
26
30
|
get(): Promise<T[]>;
|
|
27
31
|
set(objects: T[]): void;
|
|
28
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReferenceArray.d.ts","sourceRoot":"","sources":["../../../src/reference/ReferenceArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAKnC;;;;;;;;;;;;;GAaG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,MAAM,CAAE,YAAW,wBAAwB;IAItE,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,MAAM,EAAE;IACd,QAAQ,CAAC;IALX,cAAc,SAA8B;gBAG1C,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAAE,EACd,QAAQ,CAAC,iBAAK;
|
|
1
|
+
{"version":3,"file":"ReferenceArray.d.ts","sourceRoot":"","sources":["../../../src/reference/ReferenceArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAKnC;;;;;;;;;;;;;GAaG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,MAAM,CAAE,YAAW,wBAAwB;IAItE,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,MAAM,EAAE;IACd,QAAQ,CAAC;IALX,cAAc,SAA8B;gBAG1C,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAAE,EACd,QAAQ,CAAC,iBAAK;IAOvB,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,EAAE;IAKlG;;OAEG;IACH,OAAO,CAAC,WAAW;IAiCb,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC;IAkBzB,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE;CAIjB"}
|
|
@@ -61,20 +61,63 @@ var ReferenceArray = /** @class */ (function () {
|
|
|
61
61
|
this._ids = _ids;
|
|
62
62
|
this._objects = _objects;
|
|
63
63
|
this.__serializerId = ReferenceArraySerializer_1.ReferenceArraySerializerId;
|
|
64
|
+
if (this._objects) {
|
|
65
|
+
this._objects = this.createProxy(this._objects);
|
|
66
|
+
}
|
|
64
67
|
}
|
|
65
68
|
ReferenceArray.fromObjects = function (table, objects) {
|
|
66
69
|
var ids = objects.map(function (object) { return object.id; });
|
|
67
70
|
return new ReferenceArray(table, ids, objects);
|
|
68
71
|
};
|
|
72
|
+
/**
|
|
73
|
+
* Used to keep `_ids` in sync with `_objects`
|
|
74
|
+
*/
|
|
75
|
+
ReferenceArray.prototype.createProxy = function (objects) {
|
|
76
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
77
|
+
var referenceArray = this;
|
|
78
|
+
var handler = {
|
|
79
|
+
get: function (target, property, receiver) {
|
|
80
|
+
var value = Reflect.get(target, property, receiver);
|
|
81
|
+
if (typeof value === 'function' && ['push', 'pop', 'splice'].includes(property)) {
|
|
82
|
+
return function () {
|
|
83
|
+
var _a;
|
|
84
|
+
var args = [];
|
|
85
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
86
|
+
args[_i] = arguments[_i];
|
|
87
|
+
}
|
|
88
|
+
var result = (_a = target)[property].apply(_a, args);
|
|
89
|
+
referenceArray._ids = target.map(function (obj) { return obj.id; });
|
|
90
|
+
return result;
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
return value;
|
|
94
|
+
},
|
|
95
|
+
set: function (target, property, value, receiver) {
|
|
96
|
+
var result = Reflect.set(target, property, value, receiver);
|
|
97
|
+
if (typeof property === 'number' || !isNaN(Number(property))) {
|
|
98
|
+
referenceArray._ids = target.map(function (obj) { return obj.id; });
|
|
99
|
+
}
|
|
100
|
+
return result;
|
|
101
|
+
},
|
|
102
|
+
deleteProperty: function (target, property) {
|
|
103
|
+
if (typeof property === 'number' || !isNaN(Number(property))) {
|
|
104
|
+
target.splice(Number(property), 1);
|
|
105
|
+
}
|
|
106
|
+
referenceArray._ids = target.map(function (obj) { return obj.id; });
|
|
107
|
+
return true;
|
|
108
|
+
},
|
|
109
|
+
};
|
|
110
|
+
return new Proxy(objects, handler);
|
|
111
|
+
};
|
|
69
112
|
ReferenceArray.prototype.get = function () {
|
|
70
113
|
return __awaiter(this, void 0, void 0, function () {
|
|
71
|
-
var table, db, qb,
|
|
72
|
-
return __generator(this, function (
|
|
73
|
-
switch (
|
|
114
|
+
var table, db, qb, objects;
|
|
115
|
+
return __generator(this, function (_a) {
|
|
116
|
+
switch (_a.label) {
|
|
74
117
|
case 0:
|
|
75
118
|
if (!!this._objects) return [3 /*break*/, 3];
|
|
76
119
|
if (!(this._ids.length < 1)) return [3 /*break*/, 1];
|
|
77
|
-
this._objects = [];
|
|
120
|
+
this._objects = this.createProxy([]);
|
|
78
121
|
return [3 /*break*/, 3];
|
|
79
122
|
case 1:
|
|
80
123
|
table = (0, Table_1.tableByName)(this._table);
|
|
@@ -82,18 +125,19 @@ var ReferenceArray = /** @class */ (function () {
|
|
|
82
125
|
qb = new QueryBuilderFactory_1.QueryBuilderFactory().getQueryBuilder(table);
|
|
83
126
|
qb.condition({ field: 'id', operator: 'IN', value: this._ids });
|
|
84
127
|
qb.sort([{ field: 'id', byValues: this._ids }]);
|
|
85
|
-
_a = this;
|
|
86
128
|
return [4 /*yield*/, db.query(table, qb)];
|
|
87
129
|
case 2:
|
|
88
|
-
|
|
89
|
-
|
|
130
|
+
objects = _a.sent();
|
|
131
|
+
this._objects = this.createProxy(objects);
|
|
132
|
+
_a.label = 3;
|
|
90
133
|
case 3: return [2 /*return*/, this._objects];
|
|
91
134
|
}
|
|
92
135
|
});
|
|
93
136
|
});
|
|
94
137
|
};
|
|
95
138
|
ReferenceArray.prototype.set = function (objects) {
|
|
96
|
-
this._objects = objects;
|
|
139
|
+
this._objects = this.createProxy(objects);
|
|
140
|
+
this._ids = objects.map(function (object) { return object.id; });
|
|
97
141
|
};
|
|
98
142
|
return ReferenceArray;
|
|
99
143
|
}());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReferenceArray.js","sourceRoot":"","sources":["../../../src/reference/ReferenceArray.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4BAA8B;AAE9B,kCAAuC;AACvC,oFAAqF;AACrF,8DAA6D;AAE7D;;;;;;;;;;;;;GAaG;AACH;IAGE,wBACS,MAAc,EACd,IAAc,EACd,QAAc;QAFd,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAU;QACd,aAAQ,GAAR,QAAQ,CAAM;QALhB,mBAAc,GAAG,qDAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"ReferenceArray.js","sourceRoot":"","sources":["../../../src/reference/ReferenceArray.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReferenceArray.test.d.ts","sourceRoot":"","sources":["../../test/ReferenceArray.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
var moment_1 = require("../src/opt/moment");
|
|
40
|
+
var ReferenceArray_1 = require("../src/reference/ReferenceArray");
|
|
41
|
+
var MockRecord = /** @class */ (function () {
|
|
42
|
+
function MockRecord(id, created, updated) {
|
|
43
|
+
this.id = id;
|
|
44
|
+
this.created = created;
|
|
45
|
+
this.updated = updated;
|
|
46
|
+
}
|
|
47
|
+
return MockRecord;
|
|
48
|
+
}());
|
|
49
|
+
describe('ReferenceArray', function () {
|
|
50
|
+
var createMockRecord = function (id) { return new MockRecord(id, (0, moment_1.moment)(), (0, moment_1.moment)()); };
|
|
51
|
+
it('should initialize with correct ids and objects', function () {
|
|
52
|
+
var objects = [createMockRecord('1'), createMockRecord('2')];
|
|
53
|
+
var refArray = new ReferenceArray_1.ReferenceArray('mock_table', ['1', '2'], objects);
|
|
54
|
+
expect(refArray._ids).toEqual(['1', '2']);
|
|
55
|
+
expect(refArray._objects).toEqual(objects);
|
|
56
|
+
});
|
|
57
|
+
it('should update ids when objects are modified', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
58
|
+
var objects, refArray, refArrayObjects;
|
|
59
|
+
return __generator(this, function (_a) {
|
|
60
|
+
switch (_a.label) {
|
|
61
|
+
case 0:
|
|
62
|
+
objects = [createMockRecord('1'), createMockRecord('2')];
|
|
63
|
+
refArray = new ReferenceArray_1.ReferenceArray('mock_table', ['1', '2'], objects);
|
|
64
|
+
return [4 /*yield*/, refArray.get()];
|
|
65
|
+
case 1:
|
|
66
|
+
refArrayObjects = _a.sent();
|
|
67
|
+
if (refArrayObjects) {
|
|
68
|
+
refArrayObjects.push(createMockRecord('3'));
|
|
69
|
+
expect(refArray._ids).toEqual(['1', '2', '3']);
|
|
70
|
+
// Modify an object
|
|
71
|
+
refArrayObjects[1] = createMockRecord('4');
|
|
72
|
+
expect(refArray._ids).toEqual(['1', '4', '3']);
|
|
73
|
+
// Delete an object using pop
|
|
74
|
+
refArrayObjects.pop();
|
|
75
|
+
expect(refArray._ids).toEqual(['1', '4']);
|
|
76
|
+
// Delete an object using splice
|
|
77
|
+
refArrayObjects.splice(0, 1);
|
|
78
|
+
expect(refArray._ids).toEqual(['4']);
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
fail('refArrayObjects is undefined');
|
|
82
|
+
}
|
|
83
|
+
return [2 /*return*/];
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
}); });
|
|
87
|
+
it('should update ids when objects are set', function () {
|
|
88
|
+
var objects = [createMockRecord('1'), createMockRecord('2')];
|
|
89
|
+
var refArray = new ReferenceArray_1.ReferenceArray('mock_table', ['1', '2'], objects);
|
|
90
|
+
var newObjects = [createMockRecord('5'), createMockRecord('6')];
|
|
91
|
+
refArray.set(newObjects);
|
|
92
|
+
expect(refArray._ids).toEqual(['5', '6']);
|
|
93
|
+
expect(refArray._objects).toEqual(newObjects);
|
|
94
|
+
});
|
|
95
|
+
it('should not leave null or undefined entries in ids array when objects are deleted', function () {
|
|
96
|
+
var objects = [createMockRecord('1'), createMockRecord('2'), createMockRecord('3')];
|
|
97
|
+
var refArray = new ReferenceArray_1.ReferenceArray('mock_table', ['1', '2', '3'], objects);
|
|
98
|
+
if (refArray._objects) {
|
|
99
|
+
// Delete the second object using splice
|
|
100
|
+
refArray._objects.splice(1, 1);
|
|
101
|
+
expect(refArray._ids).toEqual(['1', '3']);
|
|
102
|
+
// Delete the first object using splice
|
|
103
|
+
refArray._objects.splice(0, 1);
|
|
104
|
+
expect(refArray._ids).toEqual(['3']);
|
|
105
|
+
// Delete the remaining object
|
|
106
|
+
refArray._objects.pop();
|
|
107
|
+
expect(refArray._ids).toEqual([]);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
fail('refArray._objects is undefined');
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
it('should handle initializing with an empty array', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
114
|
+
var refArray, refArrayObjects;
|
|
115
|
+
return __generator(this, function (_a) {
|
|
116
|
+
switch (_a.label) {
|
|
117
|
+
case 0:
|
|
118
|
+
refArray = new ReferenceArray_1.ReferenceArray('mock_table', []);
|
|
119
|
+
expect(refArray._ids).toEqual([]);
|
|
120
|
+
return [4 /*yield*/, refArray.get()];
|
|
121
|
+
case 1:
|
|
122
|
+
refArrayObjects = _a.sent();
|
|
123
|
+
expect(refArrayObjects).toEqual([]);
|
|
124
|
+
refArrayObjects.push(createMockRecord('1'));
|
|
125
|
+
expect(refArray._ids).toEqual(['1']);
|
|
126
|
+
expect(refArrayObjects.length).toEqual(1);
|
|
127
|
+
return [2 /*return*/];
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
}); });
|
|
131
|
+
});
|
|
132
|
+
//# sourceMappingURL=ReferenceArray.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReferenceArray.test.js","sourceRoot":"","sources":["../../test/ReferenceArray.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReferenceArraySerializer.test.d.ts","sourceRoot":"","sources":["../../test/ReferenceArraySerializer.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var moment_1 = require("../src/opt/moment");
|
|
4
|
+
var ReferenceArray_1 = require("../src/reference/ReferenceArray");
|
|
5
|
+
var ReferenceArraySerializer_1 = require("../src/serializers/ReferenceArraySerializer");
|
|
6
|
+
var MockRecord = /** @class */ (function () {
|
|
7
|
+
function MockRecord(id, created, updated) {
|
|
8
|
+
this.id = id;
|
|
9
|
+
this.created = created;
|
|
10
|
+
this.updated = updated;
|
|
11
|
+
}
|
|
12
|
+
return MockRecord;
|
|
13
|
+
}());
|
|
14
|
+
describe('ReferenceArraySerializer', function () {
|
|
15
|
+
var createMockRecord = function (id) { return new MockRecord(id, (0, moment_1.moment)(), (0, moment_1.moment)()); };
|
|
16
|
+
it('should serialize and deserialize correctly', function () {
|
|
17
|
+
var objects = [createMockRecord('1'), createMockRecord('2')];
|
|
18
|
+
var refArray = new ReferenceArray_1.ReferenceArray('mock_table', ['1', '2'], objects);
|
|
19
|
+
var serializer = new ReferenceArraySerializer_1.ReferenceArraySerializer();
|
|
20
|
+
var serialized = serializer.serialize(refArray);
|
|
21
|
+
expect(serialized).toEqual({
|
|
22
|
+
_table: 'mock_table',
|
|
23
|
+
_ids: ['1', '2'],
|
|
24
|
+
_objects: objects,
|
|
25
|
+
});
|
|
26
|
+
var deserialized = serializer.deserialize(serialized);
|
|
27
|
+
expect(deserialized._table).toEqual('mock_table');
|
|
28
|
+
expect(deserialized._ids).toEqual(['1', '2']);
|
|
29
|
+
expect(deserialized._objects).toEqual(objects);
|
|
30
|
+
// Test if the proxy is correctly applied
|
|
31
|
+
if (deserialized._objects) {
|
|
32
|
+
deserialized._objects.push(createMockRecord('3'));
|
|
33
|
+
expect(deserialized._ids).toEqual(['1', '2', '3']);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
fail('deserialized._objects is undefined');
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
//# sourceMappingURL=ReferenceArraySerializer.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReferenceArraySerializer.test.js","sourceRoot":"","sources":["../../test/ReferenceArraySerializer.test.ts"],"names":[],"mappings":";;AAAA,4CAA2C;AAC3C,kEAAiE;AAEjE,wFAAuF;AAEvF;IACE,oBACS,EAAU,EACV,OAAsB,EACtB,OAAsB;QAFtB,OAAE,GAAF,EAAE,CAAQ;QACV,YAAO,GAAP,OAAO,CAAe;QACtB,YAAO,GAAP,OAAO,CAAe;IAC5B,CAAC;IACN,iBAAC;AAAD,CAAC,AAND,IAMC;AAED,QAAQ,CAAC,0BAA0B,EAAE;IACnC,IAAM,gBAAgB,GAAG,UAAC,EAAU,IAAK,OAAA,IAAI,UAAU,CAAC,EAAE,EAAE,IAAA,eAAM,GAAE,EAAE,IAAA,eAAM,GAAE,CAAC,EAAtC,CAAsC,CAAC;IAEhF,EAAE,CAAC,4CAA4C,EAAE;QAC/C,IAAM,OAAO,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/D,IAAM,QAAQ,GAAG,IAAI,+BAAc,CAAa,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;QACnF,IAAM,UAAU,GAAG,IAAI,mDAAwB,EAAE,CAAC;QAElD,IAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC;YACzB,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;YAChB,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;QAEH,IAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE/C,yCAAyC;QACzC,IAAI,YAAY,CAAC,QAAQ,EAAE;YACzB,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;YAClD,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;SACpD;aAAM;YACL,IAAI,CAAC,oCAAoC,CAAC,CAAC;SAC5C;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { DbDriver } from '../../src/Db';
|
|
2
|
+
import { Moment } from 'moment';
|
|
3
|
+
import { ReferenceArray } from '../../src/reference/ReferenceArray';
|
|
4
|
+
import { Reference } from '../../src/reference/Reference';
|
|
5
|
+
import { Record } from '../../src/Record';
|
|
6
|
+
import { Table } from '../../src/Table';
|
|
7
|
+
export interface TestRecord extends Record {
|
|
8
|
+
integerColumn?: number | null;
|
|
9
|
+
stringColumn?: string | null;
|
|
10
|
+
floatColumn?: number | null;
|
|
11
|
+
decimalColumn?: number | null;
|
|
12
|
+
booleanColumn?: boolean | null;
|
|
13
|
+
dateColumn?: Date | null;
|
|
14
|
+
dateTimeColumn?: Moment | null;
|
|
15
|
+
binaryColumn?: number | null;
|
|
16
|
+
uuidColumn?: string | null;
|
|
17
|
+
passwordColumn?: string | null;
|
|
18
|
+
objectColumn?: any | null;
|
|
19
|
+
arrayColumn?: any[] | null;
|
|
20
|
+
referenceArrayColumn?: ReferenceArray<any> | null;
|
|
21
|
+
referenceColumn?: Reference<any> | null;
|
|
22
|
+
}
|
|
23
|
+
export declare class TestTable extends Table<TestRecord> {
|
|
24
|
+
name: string;
|
|
25
|
+
columns: {
|
|
26
|
+
id: import("../../src/Table").Column<string, any>;
|
|
27
|
+
created: import("../../src/Table").Column<Moment, any>;
|
|
28
|
+
updated: import("../../src/Table").Column<Moment, any>;
|
|
29
|
+
} & {} & {
|
|
30
|
+
integerColumn: import("../../src/Table").Column<number | null | undefined, any>;
|
|
31
|
+
stringColumn: import("../../src/Table").Column<string | null | undefined, any>;
|
|
32
|
+
floatColumn: import("../../src/Table").Column<number | null | undefined, any>;
|
|
33
|
+
decimalColumn: import("../../src/Table").Column<number | null | undefined, any>;
|
|
34
|
+
booleanColumn: import("../../src/Table").Column<boolean | null | undefined, any>;
|
|
35
|
+
dateColumn: import("../../src/Table").Column<Date | null | undefined, any>;
|
|
36
|
+
dateTimeColumn: import("../../src/Table").Column<Moment | null | undefined, any>;
|
|
37
|
+
binaryColumn: import("../../src/Table").Column<number | null | undefined, any>;
|
|
38
|
+
uuidColumn: import("../../src/Table").Column<string | null | undefined, any>;
|
|
39
|
+
passwordColumn: import("../../src/Table").Column<string | null | undefined, any>;
|
|
40
|
+
objectColumn: import("../../src/Table").Column<any, any>;
|
|
41
|
+
arrayColumn: import("../../src/Table").Column<any[] | null | undefined, any>;
|
|
42
|
+
referenceArrayColumn: import("../../src/Table").Column<ReferenceArray<any> | null | undefined, any>;
|
|
43
|
+
referenceColumn: import("../../src/Table").Column<Reference<any> | null | undefined, any>;
|
|
44
|
+
} & {
|
|
45
|
+
objectColumn?: import("../../src/Table").Column<any, any> | undefined;
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Used for testing purposes only.
|
|
50
|
+
* */
|
|
51
|
+
export declare const getColTypeTestTable: (tableName: string) => TestTable;
|
|
52
|
+
export declare const columnTypeTests: (driver: DbDriver, dropTable: (table: Table<any>) => Promise<void>) => () => void;
|
|
53
|
+
//# sourceMappingURL=ColumnTypesTests.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ColumnTypesTests.d.ts","sourceRoot":"","sources":["../../../test/reusable/ColumnTypesTests.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAiB1D,OAAO,EAAqB,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,MAAM,WAAW,UAAW,SAAQ,MAAM;IACxC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,YAAY,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC3B,oBAAoB,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAClD,eAAe,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;CACzC;AAED,qBAAa,SAAU,SAAQ,KAAK,CAAC,UAAU,CAAC;IACvC,IAAI,SAAmB;IACvB,OAAO;;;;;;;;;;;;;;;;;;;;;MAeX;CACJ;AAED;;MAEM;AACN,eAAO,MAAM,mBAAmB,cAAe,MAAM,cAMpD,CAAC;AAEF,eAAO,MAAM,eAAe,WAAY,QAAQ,qBAAqB,MAAM,GAAG,CAAC,KAAK,QAAQ,IAAI,CAAC,eAiFhG,CAAC"}
|
|
@@ -52,10 +52,10 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
52
52
|
};
|
|
53
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
54
|
exports.columnTypeTests = exports.getColTypeTestTable = exports.TestTable = void 0;
|
|
55
|
-
var Db_1 = require("
|
|
56
|
-
var Columns_1 = require("
|
|
57
|
-
var Record_1 = require("
|
|
58
|
-
var Table_1 = require("
|
|
55
|
+
var Db_1 = require("../../src/Db");
|
|
56
|
+
var Columns_1 = require("../../src/Columns");
|
|
57
|
+
var Record_1 = require("../../src/Record");
|
|
58
|
+
var Table_1 = require("../../src/Table");
|
|
59
59
|
var TestTable = /** @class */ (function (_super) {
|
|
60
60
|
__extends(TestTable, _super);
|
|
61
61
|
function TestTable() {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ColumnTypesTests.js","sourceRoot":"","sources":["../../../test/reusable/ColumnTypesTests.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { DbDriver } from '../../src/Db';
|
|
2
|
+
import { Record } from '../../src/Record';
|
|
3
|
+
import { Table } from '../../src/Table';
|
|
4
|
+
export interface Employee extends Record {
|
|
5
|
+
name: string;
|
|
6
|
+
department?: string;
|
|
7
|
+
jobTitle?: string | null;
|
|
8
|
+
isRemote?: boolean;
|
|
9
|
+
startDate?: Date;
|
|
10
|
+
object?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare class EmployeeTestTable extends Table<Employee> {
|
|
13
|
+
name: string;
|
|
14
|
+
columns: {
|
|
15
|
+
id: import("../../src/Table").Column<string, any>;
|
|
16
|
+
created: import("../../src/Table").Column<import("moment").Moment, any>;
|
|
17
|
+
updated: import("../../src/Table").Column<import("moment").Moment, any>;
|
|
18
|
+
} & {} & {
|
|
19
|
+
object: import("../../src/Table").Column<string | undefined, any>;
|
|
20
|
+
name: import("../../src/Table").Column<string, any>;
|
|
21
|
+
department: import("../../src/Table").Column<string | undefined, any>;
|
|
22
|
+
jobTitle: import("../../src/Table").Column<string | null | undefined, any>;
|
|
23
|
+
isRemote: import("../../src/Table").Column<boolean | undefined, any>;
|
|
24
|
+
startDate: import("../../src/Table").Column<Date | undefined, any>;
|
|
25
|
+
} & {};
|
|
26
|
+
}
|
|
27
|
+
export interface ReservedWordTest extends Record {
|
|
28
|
+
name: string;
|
|
29
|
+
order?: string;
|
|
30
|
+
select?: string;
|
|
31
|
+
join?: string;
|
|
32
|
+
}
|
|
33
|
+
export declare class ReservedWordTestTable extends Table<ReservedWordTest> {
|
|
34
|
+
name: string;
|
|
35
|
+
columns: {
|
|
36
|
+
id: import("../../src/Table").Column<string, any>;
|
|
37
|
+
created: import("../../src/Table").Column<import("moment").Moment, any>;
|
|
38
|
+
updated: import("../../src/Table").Column<import("moment").Moment, any>;
|
|
39
|
+
} & {} & {
|
|
40
|
+
select: import("../../src/Table").Column<string | undefined, any>;
|
|
41
|
+
join: import("../../src/Table").Column<string | undefined, any>;
|
|
42
|
+
name: import("../../src/Table").Column<string, any>;
|
|
43
|
+
order: import("../../src/Table").Column<string | undefined, any>;
|
|
44
|
+
} & {};
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Used for testing purposes only.
|
|
48
|
+
* */
|
|
49
|
+
export declare const getCrudTestTable: (tableName: string) => EmployeeTestTable | ReservedWordTestTable;
|
|
50
|
+
export declare const crudTests: (driver: DbDriver, dropTable: (table: Table<any>) => Promise<void>) => () => void;
|
|
51
|
+
//# sourceMappingURL=CrudTests.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CrudTests.d.ts","sourceRoot":"","sources":["../../../test/reusable/CrudTests.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAqB,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,MAAM,WAAW,QAAS,SAAQ,MAAM;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,iBAAkB,SAAQ,KAAK,CAAC,QAAQ,CAAC;IACpD,IAAI,SAAsB;IAC1B,OAAO;;;;;;;;;;;WAOJ;CACJ;AAED,MAAM,WAAW,gBAAiB,SAAQ,MAAM;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,qBAAsB,SAAQ,KAAK,CAAC,gBAAgB,CAAC;IAChE,IAAI,SAA2B;IAC/B,OAAO;;;;;;;;;WAKJ;CACJ;AAED;;MAEM;AACN,eAAO,MAAM,gBAAgB,cAAe,MAAM,8CAYjD,CAAC;AAEF,eAAO,MAAM,SAAS,WAAY,QAAQ,qBAAqB,MAAM,GAAG,CAAC,KAAK,QAAQ,IAAI,CAAC,eA2c1F,CAAC"}
|
|
@@ -53,10 +53,10 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
53
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
54
|
exports.crudTests = exports.getCrudTestTable = exports.ReservedWordTestTable = exports.EmployeeTestTable = void 0;
|
|
55
55
|
var db_query_1 = require("@proteinjs/db-query");
|
|
56
|
-
var Db_1 = require("
|
|
57
|
-
var Record_1 = require("
|
|
58
|
-
var Columns_1 = require("
|
|
59
|
-
var Table_1 = require("
|
|
56
|
+
var Db_1 = require("../../src/Db");
|
|
57
|
+
var Record_1 = require("../../src/Record");
|
|
58
|
+
var Columns_1 = require("../../src/Columns");
|
|
59
|
+
var Table_1 = require("../../src/Table");
|
|
60
60
|
var EmployeeTestTable = /** @class */ (function (_super) {
|
|
61
61
|
__extends(EmployeeTestTable, _super);
|
|
62
62
|
function EmployeeTestTable() {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CrudTests.js","sourceRoot":"","sources":["../../../test/reusable/CrudTests.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { DbDriver } from '
|
|
2
|
-
import { Column, Table } from '
|
|
1
|
+
import { DbDriver } from '../../src/Db';
|
|
2
|
+
import { Column, Table } from '../../src/Table';
|
|
3
3
|
export declare const tableManagerTests: (driver: DbDriver, dropTable: (table: Table<any>) => Promise<void>, getColumnType: (column: Column<any, any>) => string, excludedTests?: {
|
|
4
4
|
alterColumnName?: boolean;
|
|
5
5
|
alterColumnTypes?: boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableManagerTests.d.ts","sourceRoot":"","sources":["../../../test/reusable/TableManagerTests.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAsDhD,eAAO,MAAM,iBAAiB,WACpB,QAAQ,qBACG,MAAM,GAAG,CAAC,KAAK,QAAQ,IAAI,CAAC,0BACvB,OAAO,GAAG,EAAE,GAAG,CAAC,KAAK,MAAM,kBACnC;IACd,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC,eAgeF,CAAC"}
|
|
@@ -52,9 +52,9 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
52
52
|
};
|
|
53
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
54
|
exports.tableManagerTests = void 0;
|
|
55
|
-
var Columns_1 = require("
|
|
56
|
-
var Record_1 = require("
|
|
57
|
-
var Table_1 = require("
|
|
55
|
+
var Columns_1 = require("../../src/Columns");
|
|
56
|
+
var Record_1 = require("../../src/Record");
|
|
57
|
+
var Table_1 = require("../../src/Table");
|
|
58
58
|
var UserTestTable = /** @class */ (function (_super) {
|
|
59
59
|
__extends(UserTestTable, _super);
|
|
60
60
|
function UserTestTable() {
|