joist-orm 1.71.1 → 1.72.1
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/build/src/dataloaders/loadDataLoader.d.ts.map +1 -1
- package/build/src/dataloaders/loadDataLoader.js +13 -1
- package/build/src/dataloaders/loadDataLoader.js.map +1 -1
- package/build/src/dataloaders/manyToManyDataLoader.d.ts.map +1 -1
- package/build/src/dataloaders/manyToManyDataLoader.js +26 -1
- package/build/src/dataloaders/manyToManyDataLoader.js.map +1 -1
- package/build/src/dataloaders/manyToManyFindDataLoader.d.ts.map +1 -1
- package/build/src/dataloaders/manyToManyFindDataLoader.js +30 -1
- package/build/src/dataloaders/manyToManyFindDataLoader.js.map +1 -1
- package/build/src/dataloaders/oneToManyFindDataLoader.d.ts.map +1 -1
- package/build/src/dataloaders/oneToManyFindDataLoader.js +33 -1
- package/build/src/dataloaders/oneToManyFindDataLoader.js.map +1 -1
- package/build/src/drivers/Driver.d.ts +0 -11
- package/build/src/drivers/Driver.d.ts.map +1 -1
- package/build/src/drivers/IdAssigner.d.ts +12 -2
- package/build/src/drivers/IdAssigner.d.ts.map +1 -1
- package/build/src/drivers/IdAssigner.js +17 -14
- package/build/src/drivers/IdAssigner.js.map +1 -1
- package/build/src/drivers/InMemoryDriver.d.ts +0 -7
- package/build/src/drivers/InMemoryDriver.d.ts.map +1 -1
- package/build/src/drivers/InMemoryDriver.js +0 -40
- package/build/src/drivers/InMemoryDriver.js.map +1 -1
- package/build/src/drivers/PostgresDriver.d.ts +1 -7
- package/build/src/drivers/PostgresDriver.d.ts.map +1 -1
- package/build/src/drivers/PostgresDriver.js +0 -83
- package/build/src/drivers/PostgresDriver.js.map +1 -1
- package/build/src/keys.d.ts +2 -1
- package/build/src/keys.d.ts.map +1 -1
- package/build/src/keys.js +7 -3
- package/build/src/keys.js.map +1 -1
- package/build/src/relations/ManyToOneReference.d.ts +2 -0
- package/build/src/relations/ManyToOneReference.d.ts.map +1 -1
- package/build/src/relations/ManyToOneReference.js +11 -2
- package/build/src/relations/ManyToOneReference.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/loadDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"loadDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/loadDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMnD,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,EAC7C,EAAE,EAAE,aAAa,EACjB,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,GACtB,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CAyCnC"}
|
|
@@ -6,13 +6,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.loadDataLoader = void 0;
|
|
7
7
|
const dataloader_1 = __importDefault(require("dataloader"));
|
|
8
8
|
const keys_1 = require("../keys");
|
|
9
|
+
const QueryBuilder_1 = require("../QueryBuilder");
|
|
10
|
+
const QueryParser_1 = require("../QueryParser");
|
|
9
11
|
const utils_1 = require("../utils");
|
|
10
12
|
function loadDataLoader(em, meta) {
|
|
11
13
|
return (0, utils_1.getOrSet)(em.loadLoaders, meta.type, () => {
|
|
12
14
|
return new dataloader_1.default(async (_keys) => {
|
|
13
15
|
(0, keys_1.assertIdsAreTagged)(_keys);
|
|
14
16
|
const keys = (0, keys_1.deTagIds)(meta, _keys);
|
|
15
|
-
const rows = await em.driver.load(em, meta, keys);
|
|
17
|
+
// const rows = await em.driver.load(em, meta, keys);
|
|
18
|
+
const alias = (0, QueryBuilder_1.abbreviation)(meta.tableName);
|
|
19
|
+
const query = {
|
|
20
|
+
selects: [`"${alias}".*`],
|
|
21
|
+
tables: [{ alias, join: "primary", table: meta.tableName }],
|
|
22
|
+
conditions: [{ alias, column: "id", cond: { kind: "in", value: keys } }],
|
|
23
|
+
orderBys: [{ alias, column: "id", order: "ASC" }],
|
|
24
|
+
};
|
|
25
|
+
(0, QueryParser_1.addTablePerClassJoinsAndClassTag)(query, meta, alias, true);
|
|
26
|
+
// maybeAddNotSoftDeleted(conditions, meta, alias, "include");
|
|
27
|
+
const rows = await em.driver.executeFind(em, query, {});
|
|
16
28
|
// Pass overwriteExisting (which is the default anyway) because it might be EntityManager.refresh calling us.
|
|
17
29
|
const entities = rows.map((row) => em.hydrate(meta.cstr, row, { overwriteExisting: true }));
|
|
18
30
|
const entitiesById = (0, utils_1.indexBy)(entities, (e) => e.idTagged);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/loadDataLoader.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAoC;AAIpC,kCAAuD;AACvD,oCAA6C;AAE7C,SAAgB,cAAc,CAC5B,EAAiB,EACjB,IAAuB;IAEvB,OAAO,IAAA,gBAAQ,EAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE;QAC9C,OAAO,IAAI,oBAAU,CAAwB,KAAK,EAAE,KAAK,EAAE,EAAE;YAC3D,IAAA,yBAAkB,EAAC,KAAK,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,IAAA,eAAQ,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEnC,MAAM,
|
|
1
|
+
{"version":3,"file":"loadDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/loadDataLoader.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAoC;AAIpC,kCAAuD;AACvD,kDAA+C;AAC/C,gDAAmF;AACnF,oCAA6C;AAE7C,SAAgB,cAAc,CAC5B,EAAiB,EACjB,IAAuB;IAEvB,OAAO,IAAA,gBAAQ,EAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE;QAC9C,OAAO,IAAI,oBAAU,CAAwB,KAAK,EAAE,KAAK,EAAE,EAAE;YAC3D,IAAA,yBAAkB,EAAC,KAAK,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,IAAA,eAAQ,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEnC,qDAAqD;YAErD,MAAM,KAAK,GAAG,IAAA,2BAAY,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAoB;gBAC7B,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC;gBACzB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3D,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;gBACxE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aAClD,CAAC;YAEF,IAAA,8CAAgC,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC3D,8DAA8D;YAE9D,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAExD,6GAA6G;YAC7G,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC5F,MAAM,YAAY,GAAG,IAAA,eAAO,EAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAS,CAAC,CAAC;YAE3D,wDAAwD;YACxD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACrB,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACnC,2FAA2F;gBAC3F,2FAA2F;gBAC3F,YAAY;gBACZ,IAAI,MAAM,KAAK,SAAS,EAAE;oBACxB,MAAM,cAAc,GAAG,EAAE,CAAC,oBAAoB,CAAI,CAAC,CAAC,CAAC;oBACrD,IAAI,cAAc,EAAE;wBAClB,cAAc,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;qBAC1C;iBACF;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AA5CD,wCA4CC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manyToManyDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"manyToManyDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAuD,oBAAoB,EAAmB,MAAM,UAAU,CAAC;AAItH,8BAA8B;AAC9B,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACrE,EAAE,EAAE,aAAa,EACjB,UAAU,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,6BAWvC"}
|
|
@@ -29,7 +29,32 @@ async function load(collection, keys) {
|
|
|
29
29
|
const rowsByKey = {};
|
|
30
30
|
// Keep a reference to our row to track updates/deletes
|
|
31
31
|
const emJoinRows = (0, utils_1.getOrSet)(em.__data.joinRows, joinTableName, []);
|
|
32
|
-
|
|
32
|
+
// Break out `column_id=string` keys out
|
|
33
|
+
const columns = {};
|
|
34
|
+
keys.forEach((key) => {
|
|
35
|
+
const [columnId, id] = key.split("=");
|
|
36
|
+
(0, utils_1.getOrSet)(columns, columnId, []).push(id);
|
|
37
|
+
});
|
|
38
|
+
const alias = (0, index_1.abbreviation)(collection.joinTableName);
|
|
39
|
+
const query = {
|
|
40
|
+
selects: [`"${alias}".*`],
|
|
41
|
+
tables: [{ alias, join: "primary", table: collection.joinTableName }],
|
|
42
|
+
conditions: [],
|
|
43
|
+
// Or together `where tag_id in (...)` or `book_id in (...)`
|
|
44
|
+
complexConditions: [
|
|
45
|
+
{
|
|
46
|
+
op: "or",
|
|
47
|
+
conditions: Object.entries(columns).map(([columnId, values]) => {
|
|
48
|
+
// Pick the right meta i.e. tag_id --> TagMeta or book_id --> BookMeta
|
|
49
|
+
const meta = collection.columnName == columnId ? (0, index_1.getMetadata)(collection.entity) : collection.otherMeta;
|
|
50
|
+
return { alias, column: columnId, cond: { kind: "in", value: values.map((id) => (0, index_1.keyToNumber)(meta, id)) } };
|
|
51
|
+
}),
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
orderBys: [{ alias, column: "id", order: "ASC" }],
|
|
55
|
+
};
|
|
56
|
+
// maybeAddNotSoftDeleted(conditions, meta, alias, "include");
|
|
57
|
+
const rows = await em.driver.executeFind(em, query, {});
|
|
33
58
|
// The order of column1/column2 doesn't really matter, i.e. if the opposite-side collection is later used
|
|
34
59
|
const column1 = collection.columnName;
|
|
35
60
|
const meta1 = collection.entity.__orm.metadata;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manyToManyDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyDataLoader.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAoC;AAGpC,
|
|
1
|
+
{"version":3,"file":"manyToManyDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyDataLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manyToManyFindDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyFindDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"manyToManyFindDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyFindDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAGL,oBAAoB,EACpB,yBAAyB,EAG1B,MAAM,UAAU,CAAC;AAGlB,oFAAoF;AACpF,wBAAgB,wBAAwB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACzE,EAAE,EAAE,aAAa,EACjB,UAAU,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,GACvE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAM7B"}
|
|
@@ -15,7 +15,36 @@ exports.manyToManyFindDataLoader = manyToManyFindDataLoader;
|
|
|
15
15
|
async function load(collection, keys) {
|
|
16
16
|
const { joinTableName } = collection;
|
|
17
17
|
const { em } = collection.entity;
|
|
18
|
-
const
|
|
18
|
+
const alias = (0, index_1.abbreviation)(joinTableName);
|
|
19
|
+
const query = {
|
|
20
|
+
selects: [`"${alias}".*`],
|
|
21
|
+
tables: [{ alias, join: "primary", table: joinTableName }],
|
|
22
|
+
conditions: [],
|
|
23
|
+
// Or together `where (tag_id = X and book_id = Y)` or `(book_id = B and tag_id = A)`
|
|
24
|
+
complexConditions: [
|
|
25
|
+
{
|
|
26
|
+
op: "or",
|
|
27
|
+
conditions: keys.map((key) => {
|
|
28
|
+
const [one, two] = key.split(",");
|
|
29
|
+
const [columnOne, idOne] = one.split("=");
|
|
30
|
+
const [columnTwo, idTwo] = two.split("=");
|
|
31
|
+
// Pick the right meta i.e. tag_id --> TagMeta or book_id --> BookMeta
|
|
32
|
+
const [meta1, meta2] = collection.columnName === columnOne
|
|
33
|
+
? [collection.meta, collection.otherMeta]
|
|
34
|
+
: [collection.otherMeta, collection.meta];
|
|
35
|
+
return {
|
|
36
|
+
op: "and",
|
|
37
|
+
conditions: [
|
|
38
|
+
{ alias, column: columnOne, cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta1, idOne) } },
|
|
39
|
+
{ alias, column: columnTwo, cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta2, idTwo) } },
|
|
40
|
+
],
|
|
41
|
+
};
|
|
42
|
+
}),
|
|
43
|
+
},
|
|
44
|
+
],
|
|
45
|
+
orderBys: [{ alias, column: "id", order: "ASC" }],
|
|
46
|
+
};
|
|
47
|
+
const rows = await em.driver.executeFind(em, query, {});
|
|
19
48
|
const column1 = collection.columnName;
|
|
20
49
|
const column2 = collection.otherColumnName;
|
|
21
50
|
const meta1 = collection.meta;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manyToManyFindDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyFindDataLoader.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAoC;AAGpC,
|
|
1
|
+
{"version":3,"file":"manyToManyFindDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/manyToManyFindDataLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oneToManyFindDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyFindDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAQ,MAAM,kBAAkB,CAAC;AACvD,OAAO,
|
|
1
|
+
{"version":3,"file":"oneToManyFindDataLoader.d.ts","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyFindDataLoader.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAQ,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAIL,mBAAmB,EACnB,wBAAwB,EAEzB,MAAM,UAAU,CAAC;AAGlB,oFAAoF;AACpF,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EACxE,EAAE,EAAE,aAAa,EACjB,UAAU,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,GACrE,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC,CAuDnC"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.oneToManyFindDataLoader = void 0;
|
|
7
7
|
const dataloader_1 = __importDefault(require("dataloader"));
|
|
8
|
+
const index_1 = require("../index");
|
|
8
9
|
const utils_1 = require("../utils");
|
|
9
10
|
/** Batches o2m.find/include calls (i.e. that don't fully load the o2m relation). */
|
|
10
11
|
function oneToManyFindDataLoader(em, collection) {
|
|
@@ -13,7 +14,38 @@ function oneToManyFindDataLoader(em, collection) {
|
|
|
13
14
|
return (0, utils_1.getOrSet)(em.loadLoaders, loaderName, () => {
|
|
14
15
|
return new dataloader_1.default(async (keys) => {
|
|
15
16
|
const { em } = collection.entity;
|
|
16
|
-
const
|
|
17
|
+
const meta = collection.otherMeta;
|
|
18
|
+
const alias = (0, index_1.abbreviation)(meta.tableName);
|
|
19
|
+
const query = {
|
|
20
|
+
selects: [`"${alias}".*`],
|
|
21
|
+
tables: [{ alias, join: "primary", table: meta.tableName }],
|
|
22
|
+
conditions: [],
|
|
23
|
+
complexConditions: [
|
|
24
|
+
{
|
|
25
|
+
// Or together `where (id = X and book_id = Y)`
|
|
26
|
+
op: "or",
|
|
27
|
+
conditions: keys.map((key) => {
|
|
28
|
+
const [one, two] = key.split(",");
|
|
29
|
+
// columnOne is the `id=`, so is really the "other" side of the o2m
|
|
30
|
+
const [columnOne, idOne] = one.split("=");
|
|
31
|
+
const [columnTwo, idTwo] = two.split("=");
|
|
32
|
+
const [meta1, meta2] = [collection.otherMeta, collection.meta];
|
|
33
|
+
// Pick the right meta i.e. tag_id --> TagMeta or book_id --> BookMeta
|
|
34
|
+
return {
|
|
35
|
+
op: "and",
|
|
36
|
+
conditions: [
|
|
37
|
+
{ alias, column: columnOne, cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta1, idOne) } },
|
|
38
|
+
{ alias, column: columnTwo, cond: { kind: "eq", value: (0, index_1.keyToNumber)(meta2, idTwo) } },
|
|
39
|
+
],
|
|
40
|
+
};
|
|
41
|
+
}),
|
|
42
|
+
},
|
|
43
|
+
],
|
|
44
|
+
orderBys: [{ alias, column: "id", order: "ASC" }],
|
|
45
|
+
};
|
|
46
|
+
(0, index_1.addTablePerClassJoinsAndClassTag)(query, meta, alias, true);
|
|
47
|
+
// maybeAddNotSoftDeleted(conditions, meta, alias, "include");
|
|
48
|
+
const rows = await em.driver.executeFind(em, query, {});
|
|
17
49
|
const entities = rows.map((row) => em.hydrate(collection.otherMeta.cstr, row, { overwriteExisting: false }));
|
|
18
50
|
// Decode `id=b:1,author_id=a:1`
|
|
19
51
|
return keys.map((k) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oneToManyFindDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyFindDataLoader.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAoC;
|
|
1
|
+
{"version":3,"file":"oneToManyFindDataLoader.js","sourceRoot":"","sources":["../../../src/dataloaders/oneToManyFindDataLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,21 +2,10 @@ import { Knex } from "knex";
|
|
|
2
2
|
import { Entity } from "../Entity";
|
|
3
3
|
import { FilterAndSettings } from "../EntityFilter";
|
|
4
4
|
import { EntityManager, MaybeAbstractEntityConstructor } from "../EntityManager";
|
|
5
|
-
import { EntityMetadata } from "../EntityMetadata";
|
|
6
5
|
import { ParsedFindQuery } from "../QueryParser";
|
|
7
|
-
import { ManyToManyCollection, ManyToManyLargeCollection, OneToManyCollection, OneToManyLargeCollection } from "../relations";
|
|
8
|
-
import { JoinRow } from "../relations/ManyToManyCollection";
|
|
9
6
|
import { JoinRowTodo, Todo } from "../Todo";
|
|
10
7
|
/** Isolates all SQL calls that joist needs to make to fetch/save data. */
|
|
11
8
|
export interface Driver {
|
|
12
|
-
/** Bulk loads all rows from the table(s) for `meta`, for all `untaggedIds`. */
|
|
13
|
-
load<T extends Entity>(em: EntityManager, meta: EntityMetadata<T>, untaggedIds: readonly string[]): Promise<unknown[]>;
|
|
14
|
-
/** Loads a given m2m relation for potentially multiple entities. */
|
|
15
|
-
loadManyToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: ManyToManyCollection<T, U>, keys: readonly string[]): Promise<JoinRow[]>;
|
|
16
|
-
/** Just finds presence in a m2m w/o loading the full relation. */
|
|
17
|
-
findManyToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: ManyToManyCollection<T, U> | ManyToManyLargeCollection<T, U>, keys: readonly string[]): Promise<JoinRow[]>;
|
|
18
|
-
/** Bulk loads selective rows in a m2o, for all entities encoded in `untaggedIds`. */
|
|
19
|
-
findOneToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: OneToManyCollection<T, U> | OneToManyLargeCollection<T, U>, untaggedIds: readonly string[]): Promise<unknown[]>;
|
|
20
9
|
find<T extends Entity>(em: EntityManager, type: MaybeAbstractEntityConstructor<T>, queries: readonly FilterAndSettings<T>[]): Promise<unknown[][]>;
|
|
21
10
|
/** Executes a low-level `ParsedFindQuery` against the database and returns the rows. */
|
|
22
11
|
executeFind(em: EntityManager, parsed: ParsedFindQuery, settings: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Driver.d.ts","sourceRoot":"","sources":["../../../src/drivers/Driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Driver.d.ts","sourceRoot":"","sources":["../../../src/drivers/Driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE5C,0EAA0E;AAC1E,MAAM,WAAW,MAAM;IACrB,IAAI,CAAC,CAAC,SAAS,MAAM,EACnB,EAAE,EAAE,aAAa,EACjB,IAAI,EAAE,8BAA8B,CAAC,CAAC,CAAC,EACvC,OAAO,EAAE,SAAS,iBAAiB,CAAC,CAAC,CAAC,EAAE,GACvC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAExB,wFAAwF;IACxF,WAAW,CACT,EAAE,EAAE,aAAa,EACjB,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5C,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAElB,WAAW,CAAC,CAAC,EACX,EAAE,EAAE,aAAa,EACjB,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,EACzC,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,CAAC,CAAC,CAAC;IAEd,YAAY,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5E,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7E,eAAe,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1F"}
|
|
@@ -23,8 +23,18 @@ export declare class RandomUuidAssigner implements IdAssigner {
|
|
|
23
23
|
/**
|
|
24
24
|
* Creates deterministic / stable-ish UUIDs for test suites.
|
|
25
25
|
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
26
|
+
* We use each entity's tag as the 3rd group of digits, and a per-entity incrementing integer as
|
|
27
|
+
* the 4th group of digits.
|
|
28
|
+
*
|
|
29
|
+
* E.g. a test with two Authors (tag `a`) and three Books (tag `b`) will get these ids:
|
|
30
|
+
*
|
|
31
|
+
* ```
|
|
32
|
+
* 00000000-0000-0000-000a-000000000000
|
|
33
|
+
* 00000000-0000-0000-000a-000000000001
|
|
34
|
+
* 00000000-0000-0000-000b-000000000000
|
|
35
|
+
* 00000000-0000-0000-000b-000000000001
|
|
36
|
+
* 00000000-0000-0000-000b-000000000002
|
|
37
|
+
* ```
|
|
28
38
|
*/
|
|
29
39
|
export declare class TestUuidAssigner implements IdAssigner {
|
|
30
40
|
private nextId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdAssigner.d.ts","sourceRoot":"","sources":["../../../src/drivers/IdAssigner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,MAAM,WAAW,UAAU;IACzB,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,YAAW,UAAU;IAC7C,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAyB3E;AAED;;;;GAIG;AACH,qBAAa,kBAAmB,YAAW,UAAU;IAC7C,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAO3E;AAED
|
|
1
|
+
{"version":3,"file":"IdAssigner.d.ts","sourceRoot":"","sources":["../../../src/drivers/IdAssigner.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,MAAM,WAAW,UAAU;IACzB,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,YAAW,UAAU;IAC7C,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAyB3E;AAED;;;;GAIG;AACH,qBAAa,kBAAmB,YAAW,UAAU;IAC7C,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAO3E;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,gBAAiB,YAAW,UAAU;IACjD,OAAO,CAAC,MAAM,CAA8B;IAEtC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAc1E,KAAK;CAGN"}
|
|
@@ -76,26 +76,29 @@ exports.RandomUuidAssigner = RandomUuidAssigner;
|
|
|
76
76
|
/**
|
|
77
77
|
* Creates deterministic / stable-ish UUIDs for test suites.
|
|
78
78
|
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
79
|
+
* We use each entity's tag as the 3rd group of digits, and a per-entity incrementing integer as
|
|
80
|
+
* the 4th group of digits.
|
|
81
|
+
*
|
|
82
|
+
* E.g. a test with two Authors (tag `a`) and three Books (tag `b`) will get these ids:
|
|
83
|
+
*
|
|
84
|
+
* ```
|
|
85
|
+
* 00000000-0000-0000-000a-000000000000
|
|
86
|
+
* 00000000-0000-0000-000a-000000000001
|
|
87
|
+
* 00000000-0000-0000-000b-000000000000
|
|
88
|
+
* 00000000-0000-0000-000b-000000000001
|
|
89
|
+
* 00000000-0000-0000-000b-000000000002
|
|
90
|
+
* ```
|
|
81
91
|
*/
|
|
82
92
|
class TestUuidAssigner {
|
|
83
|
-
// We can be cute and create per-entity UUID spaces to be more stable
|
|
84
93
|
nextId = {};
|
|
85
94
|
async assignNewIds(knex, todos) {
|
|
86
|
-
Object.entries(todos).forEach(([
|
|
95
|
+
Object.entries(todos).forEach(([, todo]) => {
|
|
87
96
|
if (todo.inserts.length > 0) {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
// an easy number to determine, and should be stable enough.
|
|
91
|
-
let entitySpace = Object.keys(this.nextId).indexOf(type);
|
|
92
|
-
if (entitySpace === -1) {
|
|
93
|
-
this.nextId[type] = 0;
|
|
94
|
-
entitySpace = Object.keys(this.nextId).indexOf(type);
|
|
95
|
-
}
|
|
97
|
+
const tag = todo.metadata.tagName.substring(0, 4).padStart(4, "0");
|
|
98
|
+
this.nextId[tag] ??= 0;
|
|
96
99
|
for (const insert of todo.inserts) {
|
|
97
|
-
const id = this.nextId[
|
|
98
|
-
const uuid = `
|
|
100
|
+
const id = String(this.nextId[tag]++);
|
|
101
|
+
const uuid = `00000000-0000-0000-${tag}-${id.padStart(12, "0")}`;
|
|
99
102
|
insert.__orm.data["id"] = (0, keys_1.keyToString)(todo.metadata, uuid);
|
|
100
103
|
}
|
|
101
104
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdAssigner.js","sourceRoot":"","sources":["../../../src/drivers/IdAssigner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAEjC,kCAAsC;AAOtC;;;;;GAKG;AACH,MAAa,kBAAkB;IAC7B,KAAK,CAAC,YAAY,CAAC,IAAU,EAAE,KAA2B;QACxD,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACpC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC3B,MAAM,YAAY,GAAG,GAAG,IAAI,CAAC,SAAS,SAAS,CAAC;gBAChD,MAAM,GAAG,GAAG,mBAAmB,YAAY,8BACzC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,MACjD,GAAG,CAAC;gBACJ,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACzB;QACH,CAAC,CAAC,CAAC;QACH,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,gHAAgH;YAChH,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACpC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE;oBACnE,mEAAmE;oBACnE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAA,kBAAW,EAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAK,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;iBACpF;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;CACF;AA1BD,gDA0BC;AAED;;;;GAIG;AACH,MAAa,kBAAkB;IAC7B,KAAK,CAAC,YAAY,CAAC,IAAU,EAAE,KAA2B;QACxD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACpC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;gBACjC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAA,kBAAW,EAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;aAC3E;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AARD,gDAQC;AAED
|
|
1
|
+
{"version":3,"file":"IdAssigner.js","sourceRoot":"","sources":["../../../src/drivers/IdAssigner.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,7 @@ import { Knex } from "knex";
|
|
|
2
2
|
import { Entity } from "../Entity";
|
|
3
3
|
import { FilterAndSettings } from "../EntityFilter";
|
|
4
4
|
import { EntityConstructor, EntityManager } from "../EntityManager";
|
|
5
|
-
import { EntityMetadata } from "../EntityMetadata";
|
|
6
5
|
import { ParsedFindQuery } from "../QueryParser";
|
|
7
|
-
import { ManyToManyCollection, OneToManyCollection } from "../relations";
|
|
8
|
-
import { JoinRow } from "../relations/ManyToManyCollection";
|
|
9
6
|
import { JoinRowTodo, Todo } from "../Todo";
|
|
10
7
|
import { Driver } from "./Driver";
|
|
11
8
|
export declare class InMemoryDriver implements Driver {
|
|
@@ -25,10 +22,6 @@ export declare class InMemoryDriver implements Driver {
|
|
|
25
22
|
assignNewIds(em: EntityManager, todos: Record<string, Todo>): Promise<void>;
|
|
26
23
|
flushEntities(em: EntityManager, todos: Record<string, Todo>): Promise<void>;
|
|
27
24
|
flushJoinTables(em: EntityManager, joinRows: Record<string, JoinRowTodo>): Promise<void>;
|
|
28
|
-
load<T extends Entity>(em: EntityManager, meta: EntityMetadata<T>, untaggedIds: readonly string[]): Promise<unknown[]>;
|
|
29
|
-
loadManyToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: ManyToManyCollection<T, U>, keys: readonly string[]): Promise<JoinRow[]>;
|
|
30
|
-
findManyToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: ManyToManyCollection<T, U>, keys: readonly string[]): Promise<JoinRow[]>;
|
|
31
|
-
findOneToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: OneToManyCollection<T, U>, keys: readonly string[]): Promise<JoinRow[]>;
|
|
32
25
|
transaction<T>(em: EntityManager, fn: (txn: Knex.Transaction) => Promise<T>, isolationLevel?: "serializable"): Promise<T>;
|
|
33
26
|
rowsOfTable(tableName: string): Record<string, any>;
|
|
34
27
|
private nextId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InMemoryDriver.d.ts","sourceRoot":"","sources":["../../../src/drivers/InMemoryDriver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAe,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAe,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"InMemoryDriver.d.ts","sourceRoot":"","sources":["../../../src/drivers/InMemoryDriver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAe,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAe,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjF,OAAO,EAAE,eAAe,EAAuC,MAAM,gBAAgB,CAAC;AAEtF,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,cAAe,YAAW,MAAM;IAE3C,OAAO,CAAC,IAAI,CAA2C;IAUvD,OAAO,CAAC,OAAO,CAAa;gBAEhB,OAAO,CAAC,EAAE,MAAM,IAAI;IAIhC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,EAAE;IAKzC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAOzC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAMzC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAK3C,KAAK,IAAI,IAAI;IAIP,IAAI,CAAC,CAAC,SAAS,MAAM,EACzB,EAAE,EAAE,aAAa,EACjB,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC1B,OAAO,EAAE,SAAS,iBAAiB,CAAC,CAAC,CAAC,EAAE,GACvC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;IAYjB,WAAW,CACf,EAAE,EAAE,aAAa,EACjB,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5C,OAAO,CAAC,GAAG,EAAE,CAAC;IAIX,YAAY,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAa3E,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B5E,eAAe,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAqD9F,WAAW,CAAC,CAAC,EACX,EAAE,EAAE,aAAa,EACjB,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,EACzC,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,CAAC,CAAC;IAIb,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAInD,OAAO,CAAC,MAAM;CAGf"}
|
|
@@ -147,46 +147,6 @@ class InMemoryDriver {
|
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
|
-
async load(em, meta, untaggedIds) {
|
|
151
|
-
this.onQuery();
|
|
152
|
-
const rows = Object.values(this.data[meta.tableName] || {});
|
|
153
|
-
return rows.filter((row) => untaggedIds.includes(String(row["id"])));
|
|
154
|
-
}
|
|
155
|
-
async loadManyToMany(em, collection, keys) {
|
|
156
|
-
this.onQuery();
|
|
157
|
-
const ids = {};
|
|
158
|
-
keys.forEach((key) => {
|
|
159
|
-
const [column, id] = key.split("=");
|
|
160
|
-
(ids[column] ||= []).push((0, keys_1.unsafeDeTagIds)([id])[0]);
|
|
161
|
-
});
|
|
162
|
-
const rows = Object.values(this.rowsOfTable(collection.joinTableName));
|
|
163
|
-
return rows.filter((row) => {
|
|
164
|
-
return Object.entries(ids).some(([column, ids]) => ids.includes(String(row[column])));
|
|
165
|
-
});
|
|
166
|
-
}
|
|
167
|
-
async findManyToMany(em, collection, keys) {
|
|
168
|
-
this.onQuery();
|
|
169
|
-
const rows = Object.values(this.rowsOfTable(collection.joinTableName));
|
|
170
|
-
const set = new Set(keys);
|
|
171
|
-
const [column1, column2] = [collection.columnName, collection.otherColumnName];
|
|
172
|
-
const [m1, m2] = [collection.meta, collection.otherMeta];
|
|
173
|
-
return rows.filter((row) => {
|
|
174
|
-
const key1 = `${column1}=${(0, keys_1.tagId)(m1, row[column1])},${column2}=${(0, keys_1.tagId)(m2, row[column2])}`;
|
|
175
|
-
const key2 = `${column2}=${(0, keys_1.tagId)(m2, row[column2])},${column1}=${(0, keys_1.tagId)(m1, row[column1])}`;
|
|
176
|
-
return set.has(key1) || set.has(key2);
|
|
177
|
-
});
|
|
178
|
-
}
|
|
179
|
-
async findOneToMany(em, collection, keys) {
|
|
180
|
-
this.onQuery();
|
|
181
|
-
// If we're loading author.books, we need to look in the books table
|
|
182
|
-
const rows = Object.values(this.rowsOfTable(collection.otherMeta.tableName));
|
|
183
|
-
const set = new Set(keys);
|
|
184
|
-
return rows.filter((row) => {
|
|
185
|
-
const col1 = `id=${(0, keys_1.tagId)(collection.otherMeta, row.id)}`;
|
|
186
|
-
const col2 = `${collection.otherColumnName}=${(0, keys_1.tagId)(collection.meta, row[collection.otherColumnName])}`;
|
|
187
|
-
return set.has(`${col1},${col2}`);
|
|
188
|
-
});
|
|
189
|
-
}
|
|
190
150
|
transaction(em, fn, isolationLevel) {
|
|
191
151
|
return fn(undefined);
|
|
192
152
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InMemoryDriver.js","sourceRoot":"","sources":["../../../src/drivers/InMemoryDriver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InMemoryDriver.js","sourceRoot":"","sources":["../../../src/drivers/InMemoryDriver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { Knex } from "knex";
|
|
2
|
-
import { Entity, EntityConstructor, EntityManager, EntityMetadata, FilterAndSettings,
|
|
3
|
-
import { ManyToManyCollection } from "../relations";
|
|
4
|
-
import { JoinRow } from "../relations/ManyToManyCollection";
|
|
2
|
+
import { Entity, EntityConstructor, EntityManager, EntityMetadata, FilterAndSettings, ParsedFindQuery } from "../index";
|
|
5
3
|
import { JoinRowTodo, Todo } from "../Todo";
|
|
6
4
|
import { Driver } from "./Driver";
|
|
7
5
|
import { IdAssigner } from "./IdAssigner";
|
|
@@ -26,10 +24,6 @@ export declare class PostgresDriver implements Driver {
|
|
|
26
24
|
private readonly knex;
|
|
27
25
|
private readonly idAssigner;
|
|
28
26
|
constructor(knex: Knex, opts?: PostgresDriverOpts);
|
|
29
|
-
load<T extends Entity>(em: EntityManager, meta: EntityMetadata<T>, untaggedIds: readonly string[]): Promise<unknown[]>;
|
|
30
|
-
loadManyToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: ManyToManyCollection<T, U>, keys: readonly string[]): Promise<JoinRow[]>;
|
|
31
|
-
findManyToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: ManyToManyCollection<T, U>, keys: readonly string[]): Promise<JoinRow[]>;
|
|
32
|
-
findOneToMany<T extends Entity, U extends Entity>(em: EntityManager, collection: OneToManyCollection<T, U>, keys: readonly string[]): Promise<U[]>;
|
|
33
27
|
find<T extends Entity>(em: EntityManager, type: EntityConstructor<T>, queries: FilterAndSettings<T>[]): Promise<unknown[][]>;
|
|
34
28
|
executeFind(em: EntityManager, parsed: ParsedFindQuery, settings: {
|
|
35
29
|
limit?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresDriver.d.ts","sourceRoot":"","sources":["../../../src/drivers/PostgresDriver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAKL,MAAM,EACN,iBAAiB,EAEjB,aAAa,EACb,cAAc,EACd,iBAAiB,EAMjB,
|
|
1
|
+
{"version":3,"file":"PostgresDriver.d.ts","sourceRoot":"","sources":["../../../src/drivers/PostgresDriver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAKL,MAAM,EACN,iBAAiB,EAEjB,aAAa,EACb,cAAc,EACd,iBAAiB,EAMjB,eAAe,EAGhB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAG5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,UAAU,EAAsB,MAAM,cAAc,CAAC;AAK9D,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,cAAe,YAAW,MAAM;IAG/B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;gBAEX,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,kBAAkB;IAI5D,IAAI,CAAC,CAAC,SAAS,MAAM,EACzB,EAAE,EAAE,aAAa,EACjB,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC1B,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAC9B,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;IAkFjB,WAAW,CACf,EAAE,EAAE,aAAa,EACjB,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5C,OAAO,CAAC,GAAG,EAAE,CAAC;IAKX,WAAW,CAAC,CAAC,EACjB,EAAE,EAAE,aAAa,EACjB,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,EACzC,cAAc,CAAC,EAAE,cAAc,GAC9B,OAAO,CAAC,CAAC,CAAC;IAsBP,YAAY,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3E,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAiD5E,eAAe,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAoD9F,OAAO,CAAC,iBAAiB;CAG1B;AA8MD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,OAAO,CAE1E"}
|