@prisma-idb/idb-client-generator 0.34.0 → 0.35.0
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/fileCreators/batch-processor/create.js +56 -19
- package/dist/fileCreators/batch-processor/create.js.map +1 -1
- package/dist/fileCreators/idb-interface/create.js +12 -4
- package/dist/fileCreators/idb-interface/create.js.map +1 -1
- package/dist/fileCreators/idb-utils/create.js +3 -0
- package/dist/fileCreators/idb-utils/create.js.map +1 -1
- package/dist/fileCreators/idb-utils/helpers/extractEqualityValue.js +23 -0
- package/dist/fileCreators/idb-utils/helpers/extractEqualityValue.js.map +1 -0
- package/dist/fileCreators/prisma-idb-client/classes/PrismaIDBClient.js +30 -10
- package/dist/fileCreators/prisma-idb-client/classes/PrismaIDBClient.js.map +1 -1
- package/dist/fileCreators/prisma-idb-client/classes/models/IDBModelClass.js +3 -1
- package/dist/fileCreators/prisma-idb-client/classes/models/IDBModelClass.js.map +1 -1
- package/dist/fileCreators/prisma-idb-client/classes/models/api/findMany.js +93 -11
- package/dist/fileCreators/prisma-idb-client/classes/models/api/findMany.js.map +1 -1
- package/dist/fileCreators/prisma-idb-client/classes/models/api/findUnique.js +13 -4
- package/dist/fileCreators/prisma-idb-client/classes/models/api/findUnique.js.map +1 -1
- package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getRecords.js +65 -0
- package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getRecords.js.map +1 -0
- package/dist/fileCreators/prisma-idb-client/create.js +4 -4
- package/dist/fileCreators/prisma-idb-client/create.js.map +1 -1
- package/dist/fileCreators/scoped-schema/create.js +10 -5
- package/dist/fileCreators/scoped-schema/create.js.map +1 -1
- package/dist/generator.js +4 -2
- package/dist/generator.js.map +1 -1
- package/dist/helpers/parseGeneratorConfig.js +49 -1
- package/dist/helpers/parseGeneratorConfig.js.map +1 -1
- package/dist/helpers/utils.js +57 -0
- package/dist/helpers/utils.js.map +1 -1
- package/package.json +3 -3
|
@@ -30,7 +30,8 @@ const _preprocessListFields_1 = require("./utils/_preprocessListFields");
|
|
|
30
30
|
const _removeNestedCreateData_1 = require("./utils/_removeNestedCreateData");
|
|
31
31
|
const _resolveOrderByKey_1 = require("./utils/_resolveOrderByKey");
|
|
32
32
|
const _resolveSortOrder_1 = require("./utils/_resolveSortOrder");
|
|
33
|
-
|
|
33
|
+
const _getRecords_1 = require("./utils/_getRecords");
|
|
34
|
+
function addIDBModelClass(writer, model, models, outboxSync, outboxModelName, versionMetaModelName, datamodelIndexes = []) {
|
|
34
35
|
writer.writeLine(`class ${model.name}IDBClass extends BaseIDBModelClass<"${model.name}">`).block(() => {
|
|
35
36
|
addConstructor(writer, model);
|
|
36
37
|
(0, _applyWhereClause_1.addApplyWhereClause)(writer, model, models);
|
|
@@ -47,6 +48,7 @@ function addIDBModelClass(writer, model, models, outboxSync, outboxModelName, ve
|
|
|
47
48
|
(0, _getNeededStoresForNestedDelete_1.addGetNeededStoresForNestedDelete)(writer, model, models, outboxSync, outboxModelName, versionMetaModelName);
|
|
48
49
|
(0, _removeNestedCreateData_1.addRemoveNestedCreateDataMethod)(writer, model);
|
|
49
50
|
(0, _preprocessListFields_1.addPreprocessListFields)(writer, model);
|
|
51
|
+
(0, _getRecords_1.addGetRecords)(writer, model, datamodelIndexes);
|
|
50
52
|
(0, findMany_1.addFindManyMethod)(writer, model);
|
|
51
53
|
(0, findFirst_1.addFindFirstMethod)(writer, model);
|
|
52
54
|
(0, findFirstOrThrow_1.addFindFirstOrThrow)(writer, model);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDBModelClass.js","sourceRoot":"","sources":["../../../../../src/fileCreators/prisma-idb-client/classes/models/IDBModelClass.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"IDBModelClass.js","sourceRoot":"","sources":["../../../../../src/fileCreators/prisma-idb-client/classes/models/IDBModelClass.ts"],"names":[],"mappings":";;AAkCA,4CA+CC;AA9ED,+CAAqD;AACrD,uCAA6C;AAC7C,yCAA+C;AAC/C,iDAAuD;AACvD,mEAAmE;AACnE,yCAA+C;AAC/C,iDAAuD;AACvD,+CAAqD;AACrD,6DAA6D;AAC7D,6CAAmD;AACnD,iDAAuD;AACvD,+DAA+D;AAC/D,yCAA+C;AAC/C,iDAAiD;AACjD,yCAA+C;AAC/C,qEAAoE;AACpE,6DAA4D;AAC5D,mEAAkE;AAClE,iEAAgE;AAChE,yDAAgE;AAChE,iFAAgF;AAChF,6EAA4E;AAC5E,6FAA4F;AAC5F,iFAAgF;AAChF,+EAA8E;AAC9E,yEAAwE;AACxE,6EAAkF;AAClF,mEAAkE;AAClE,iEAAgE;AAChE,qDAAoD;AAEpD,SAAgB,gBAAgB,CAC9B,MAAuB,EACvB,KAAY,EACZ,MAAwB,EACxB,UAAmB,EACnB,eAAuB,EACvB,oBAA4B,EAC5B,mBAA0C,EAAE;IAE5C,MAAM,CAAC,SAAS,CAAC,SAAS,KAAK,CAAC,IAAI,uCAAuC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACpG,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC9B,IAAA,uCAAmB,EAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC3C,IAAA,yCAAoB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACpC,IAAA,mCAAiB,EAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACzC,IAAA,2CAAqB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACrC,IAAA,yCAAoB,EAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5C,IAAA,uCAAmB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACnC,IAAA,uCAAuB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACvC,IAAA,qDAA0B,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC1C,IAAA,mDAAyB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACzC,IAAA,uDAA2B,EAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,oBAAoB,CAAC,CAAC;QAC9F,IAAA,uDAA2B,EAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,oBAAoB,CAAC,CAAC;QACtG,IAAA,mEAAiC,EAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,oBAAoB,CAAC,CAAC;QAC5G,IAAA,yDAA+B,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,IAAA,+CAAuB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACvC,IAAA,2BAAa,EAAC,MAAM,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC;QAE/C,IAAA,4BAAiB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACjC,IAAA,8BAAkB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAClC,IAAA,sCAAmB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACnC,IAAA,gCAAmB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACnC,IAAA,wCAAoB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACpC,IAAA,sBAAc,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAE9B,IAAA,wBAAe,EAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACvC,IAAA,gCAAmB,EAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,oBAAoB,CAAC,CAAC;QACtF,IAAA,4CAAsB,EAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,oBAAoB,CAAC,CAAC;QAEzF,IAAA,wBAAe,EAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACvC,IAAA,gCAAmB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEnC,IAAA,wBAAe,EAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACvC,IAAA,0BAAa,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC7B,IAAA,wBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAE/B,IAAA,8BAAkB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,MAAuB,EAAE,KAAY;IAC3D,MAAM;SACH,SAAS,CAAC,yDAAyD,CAAC;SACpE,KAAK,CAAC,GAAG,EAAE;QACV,MAAM,CAAC,SAAS,CAAC,2BAA2B,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC;IAC/D,CAAC,CAAC;SACD,SAAS,EAAE,CAAC;AACjB,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.addFindManyMethod = addFindManyMethod;
|
|
4
|
+
const utils_1 = require("../../../../../helpers/utils");
|
|
4
5
|
const methodOptions_1 = require("../helpers/methodOptions");
|
|
5
6
|
function addFindManyMethod(writer, model) {
|
|
6
7
|
writer
|
|
@@ -10,17 +11,18 @@ function addFindManyMethod(writer, model) {
|
|
|
10
11
|
.writeLine(`): Promise<Prisma.Result<Prisma.${model.name}Delegate, Q, "findMany">>`)
|
|
11
12
|
.block(() => {
|
|
12
13
|
writer.write((0, methodOptions_1.getOptionsSetupRead)());
|
|
13
|
-
getRecords(writer
|
|
14
|
+
getRecords(writer);
|
|
15
|
+
applyDistinctClauseToRecords(writer, model);
|
|
16
|
+
applyPaginationClause(writer, model);
|
|
14
17
|
applyRelationsToRecords(writer, model);
|
|
15
18
|
applySelectClauseToRecords(writer);
|
|
16
|
-
applyDistinctClauseToRecords(writer);
|
|
17
19
|
returnRecords(writer, model);
|
|
18
20
|
});
|
|
19
21
|
}
|
|
20
|
-
function getRecords(writer
|
|
22
|
+
function getRecords(writer) {
|
|
21
23
|
writer
|
|
22
24
|
.writeLine(`tx = tx ?? this.client._db.transaction(Array.from(this._getNeededStoresForFind(query)), "readonly");`)
|
|
23
|
-
.writeLine(`
|
|
25
|
+
.writeLine(`let records = await this._applyWhereClause(await this._getRecords(tx, query?.where), query?.where, tx);`)
|
|
24
26
|
.writeLine(`await this._applyOrderByClause(records, query?.orderBy, tx);`);
|
|
25
27
|
}
|
|
26
28
|
function applyRelationsToRecords(writer, model) {
|
|
@@ -31,17 +33,25 @@ function applyRelationsToRecords(writer, model) {
|
|
|
31
33
|
function applySelectClauseToRecords(writer) {
|
|
32
34
|
writer
|
|
33
35
|
.writeLine("const selectClause = query?.select;")
|
|
34
|
-
.writeLine("
|
|
36
|
+
.writeLine("const selectAppliedRecords = this._applySelectClause(relationAppliedRecords, selectClause);");
|
|
37
|
+
writer.writeLine(`this._preprocessListFields(selectAppliedRecords);`);
|
|
35
38
|
}
|
|
36
|
-
function applyDistinctClauseToRecords(writer) {
|
|
39
|
+
function applyDistinctClauseToRecords(writer, model) {
|
|
40
|
+
const hasBigIntField = model.fields.some((f) => f.type === "BigInt");
|
|
37
41
|
writer.writeLine("if (query?.distinct)").block(() => {
|
|
38
42
|
writer
|
|
39
43
|
.writeLine(`const distinctFields = IDBUtils.convertToArray(query.distinct);`)
|
|
40
44
|
.writeLine(`const seen = new Set<string>();`)
|
|
41
|
-
.writeLine(`
|
|
45
|
+
.writeLine(`records = records.filter((record) => `)
|
|
42
46
|
.block(() => {
|
|
47
|
+
if (hasBigIntField) {
|
|
48
|
+
writer.writeLine(`const values = distinctFields.map((field) => { const v = record[field]; return typeof v === "bigint" ? v.toString() : v; });`);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
writer.writeLine(`const values = distinctFields.map((field) => record[field]);`);
|
|
52
|
+
}
|
|
43
53
|
writer
|
|
44
|
-
.writeLine(`const key =
|
|
54
|
+
.writeLine(`const key = JSON.stringify(values);`)
|
|
45
55
|
.writeLine(`if (seen.has(key)) return false;`)
|
|
46
56
|
.writeLine(`seen.add(key);`)
|
|
47
57
|
.writeLine(`return true;`);
|
|
@@ -49,9 +59,81 @@ function applyDistinctClauseToRecords(writer) {
|
|
|
49
59
|
.writeLine(");");
|
|
50
60
|
});
|
|
51
61
|
}
|
|
62
|
+
function applyPaginationClause(writer, model) {
|
|
63
|
+
const uniqueIdentifiers = (0, utils_1.getUniqueIdentifiers)(model);
|
|
64
|
+
writer.write("if (query?.skip !== undefined)").block(() => {
|
|
65
|
+
writer.write("if (!Number.isInteger(query.skip) || query.skip < 0)").block(() => {
|
|
66
|
+
writer.writeLine("throw new Error('skip must be a non-negative integer');");
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
writer.write("if (query?.take !== undefined)").block(() => {
|
|
70
|
+
writer.write("if (!Number.isInteger(query.take))").block(() => {
|
|
71
|
+
writer.writeLine("throw new Error('take must be an integer');");
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
if (uniqueIdentifiers.length > 0) {
|
|
75
|
+
emitCursorHandling(writer, uniqueIdentifiers);
|
|
76
|
+
}
|
|
77
|
+
emitSkipTakeSlices(writer);
|
|
78
|
+
}
|
|
79
|
+
function buildComparisonExpr(fields, fieldTypes) {
|
|
80
|
+
return fields
|
|
81
|
+
.map((f, i) => {
|
|
82
|
+
if (fieldTypes[i] === "Date") {
|
|
83
|
+
return `new Date(record.${f} as string | number | Date).getTime() === new Date(normalizedCursor.${f} as string | number | Date).getTime()`;
|
|
84
|
+
}
|
|
85
|
+
return `record.${f} === normalizedCursor.${f}`;
|
|
86
|
+
})
|
|
87
|
+
.join(" && ");
|
|
88
|
+
}
|
|
89
|
+
function emitCursorHandling(writer, uniqueIdentifiers) {
|
|
90
|
+
writer.write("if (query?.cursor)").block(() => {
|
|
91
|
+
writer.writeLine("let cursorIndex = -1;");
|
|
92
|
+
uniqueIdentifiers.forEach((uid, index) => {
|
|
93
|
+
const fields = JSON.parse(uid.keyPath);
|
|
94
|
+
const fieldTypes = uid.keyPathTypes;
|
|
95
|
+
const condition = `(query.cursor as Record<string, unknown>)[${JSON.stringify(uid.name)}] !== undefined`;
|
|
96
|
+
const prefix = index === 0 ? "if" : "else if";
|
|
97
|
+
writer.write(`${prefix} (${condition}) `).block(() => {
|
|
98
|
+
if (fields.length > 1) {
|
|
99
|
+
writer.writeLine(`const normalizedCursor = (query.cursor as Record<string, unknown>)[${JSON.stringify(uid.name)}] as Record<string, unknown>;`);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
writer.writeLine(`const normalizedCursor = query.cursor as Record<string, unknown>;`);
|
|
103
|
+
}
|
|
104
|
+
writer.writeLine(`cursorIndex = records.findIndex((record) => ${buildComparisonExpr(fields, fieldTypes)});`);
|
|
105
|
+
});
|
|
106
|
+
});
|
|
107
|
+
writer.write("if (cursorIndex === -1)").block(() => {
|
|
108
|
+
writer.writeLine("records = [];");
|
|
109
|
+
});
|
|
110
|
+
writer.write("else if (query.take !== undefined && query.take < 0)").block(() => {
|
|
111
|
+
writer.writeLine("const skip = query.skip ?? 0;");
|
|
112
|
+
writer.writeLine("const end = cursorIndex + 1 - skip;");
|
|
113
|
+
writer.writeLine("const start = end + query.take;");
|
|
114
|
+
writer.writeLine("records = records.slice(Math.max(0, start), Math.max(0, end));");
|
|
115
|
+
});
|
|
116
|
+
writer.write("else").block(() => {
|
|
117
|
+
writer.writeLine("records = records.slice(cursorIndex);");
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
function emitSkipTakeSlices(writer) {
|
|
122
|
+
writer.write("if (!(query?.cursor && query?.take !== undefined && query.take < 0))").block(() => {
|
|
123
|
+
writer.write("if (query?.skip !== undefined)").block(() => {
|
|
124
|
+
writer.writeLine("records = records.slice(query.skip);");
|
|
125
|
+
});
|
|
126
|
+
writer.write("if (query?.take !== undefined)").block(() => {
|
|
127
|
+
writer.write("if (query.take < 0)").block(() => {
|
|
128
|
+
writer.writeLine("records = records.slice(query.take);");
|
|
129
|
+
});
|
|
130
|
+
writer.write("else").block(() => {
|
|
131
|
+
writer.writeLine("records = records.slice(0, query.take);");
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
}
|
|
52
136
|
function returnRecords(writer, model) {
|
|
53
|
-
writer
|
|
54
|
-
.writeLine(`this._preprocessListFields(selectAppliedRecords);`)
|
|
55
|
-
.writeLine(`return selectAppliedRecords as Prisma.Result<Prisma.${model.name}Delegate, Q, 'findMany'>;`);
|
|
137
|
+
writer.writeLine(`return selectAppliedRecords as Prisma.Result<Prisma.${model.name}Delegate, Q, 'findMany'>;`);
|
|
56
138
|
}
|
|
57
139
|
//# sourceMappingURL=findMany.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findMany.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/api/findMany.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"findMany.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/api/findMany.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,10 +30,16 @@ function getFromKeyIdentifier(writer, model) {
|
|
|
30
30
|
const fieldNames = JSON.parse(keyUniqueIdentifier.keyPath);
|
|
31
31
|
let fields;
|
|
32
32
|
if (fieldNames.length === 1) {
|
|
33
|
-
fields = JSON.stringify(fieldNames.map((fieldName) =>
|
|
33
|
+
fields = JSON.stringify(fieldNames.map((fieldName, i) => {
|
|
34
|
+
const access = `query.where.${fieldName}`;
|
|
35
|
+
return keyUniqueIdentifier.keyPathTypes[i] === "Date" ? `new Date(${access})` : access;
|
|
36
|
+
}));
|
|
34
37
|
}
|
|
35
38
|
else {
|
|
36
|
-
fields = JSON.stringify(fieldNames.map((fieldName) =>
|
|
39
|
+
fields = JSON.stringify(fieldNames.map((fieldName, i) => {
|
|
40
|
+
const access = `query.where.${keyUniqueIdentifier.name}.${fieldName}`;
|
|
41
|
+
return keyUniqueIdentifier.keyPathTypes[i] === "Date" ? `new Date(${access})` : access;
|
|
42
|
+
}));
|
|
37
43
|
}
|
|
38
44
|
fields = fields.replaceAll('"', "");
|
|
39
45
|
writer.writeLine(`if (query.where.${keyUniqueIdentifier.name} !== undefined)`).block(() => {
|
|
@@ -42,14 +48,17 @@ function getFromKeyIdentifier(writer, model) {
|
|
|
42
48
|
}
|
|
43
49
|
function getFromNonKeyIdentifier(writer, model) {
|
|
44
50
|
const nonKeyUniqueIdentifiers = (0, utils_1.getUniqueIdentifiers)(model).slice(1);
|
|
45
|
-
nonKeyUniqueIdentifiers.forEach(({ name, keyPath }) => {
|
|
51
|
+
nonKeyUniqueIdentifiers.forEach(({ name, keyPath, keyPathTypes }) => {
|
|
46
52
|
const fieldNames = JSON.parse(keyPath);
|
|
47
53
|
let fields;
|
|
48
54
|
if (fieldNames.length === 1) {
|
|
49
55
|
fields = JSON.stringify(fieldNames.map((fieldName) => `query.where.${fieldName}`));
|
|
50
56
|
}
|
|
51
57
|
else {
|
|
52
|
-
fields = JSON.stringify(fieldNames.map((fieldName) =>
|
|
58
|
+
fields = JSON.stringify(fieldNames.map((fieldName, i) => {
|
|
59
|
+
const access = `query.where.${name}.${fieldName}`;
|
|
60
|
+
return keyPathTypes[i] === "Date" ? `new Date(${access})` : access;
|
|
61
|
+
}));
|
|
53
62
|
}
|
|
54
63
|
fields = fields.replaceAll('"', "");
|
|
55
64
|
writer.writeLine(`else if (query.where.${name} !== undefined)`).block(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findUnique.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/api/findUnique.ts"],"names":[],"mappings":";;AAKA,kDAyBC;AA5BD,wDAAoE;AACpE,4DAAwF;AAExF,SAAgB,mBAAmB,CAAC,MAAuB,EAAE,KAAY;IACvE,MAAM;SACH,SAAS,CAAC,iDAAiD,KAAK,CAAC,IAAI,2BAA2B,CAAC;SACjG,SAAS,CAAC,WAAW,CAAC;SACtB,KAAK,CAAC,IAAA,uCAAuB,GAAE,CAAC;SAChC,SAAS,CAAC,mCAAmC,KAAK,CAAC,IAAI,6BAA6B,CAAC;SACrF,KAAK,CAAC,GAAG,EAAE;QACV,MAAM;aACH,SAAS,CAAC,IAAA,mCAAmB,GAAE,CAAC;aAChC,SAAS,CACR,sGAAsG,CACvG;aACA,SAAS,CAAC,aAAa,CAAC,CAAC;QAC5B,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACpC,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACvC,MAAM;aACH,SAAS,CAAC,2BAA2B,CAAC;aACtC,SAAS,EAAE;aACX,KAAK,CAAC,8BAA8B,CAAC;aACrC,KAAK,CACJ,2IAA2I,CAC5I;aACA,SAAS,CAAC,oDAAoD,CAAC;aAC/D,SAAS,CAAC,sDAAsD,KAAK,CAAC,IAAI,6BAA6B,CAAC,CAAC;IAC9G,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAuB,EAAE,KAAY;IACjE,MAAM,mBAAmB,GAAG,IAAA,4BAAoB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,CAAa,CAAC;IAEvE,IAAI,MAAc,CAAC;IACnB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,GAAG,IAAI,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"findUnique.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/api/findUnique.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addGetRecords = addGetRecords;
|
|
4
|
+
const utils_1 = require("../../../../../helpers/utils");
|
|
5
|
+
function addGetRecords(writer, model, datamodelIndexes) {
|
|
6
|
+
const nonUniqueIndexes = (0, utils_1.getNonUniqueIndexes)(model, datamodelIndexes);
|
|
7
|
+
writer
|
|
8
|
+
.writeLine(`private async _getRecords(`)
|
|
9
|
+
.writeLine(`tx: IDBUtils.TransactionType,`)
|
|
10
|
+
.writeLine(`where?: Prisma.Args<Prisma.${model.name}Delegate, 'findFirstOrThrow'>['where'],`)
|
|
11
|
+
.writeLine(`): Promise<Prisma.Result<Prisma.${model.name}Delegate, object, 'findFirstOrThrow'>[]>`)
|
|
12
|
+
.block(() => {
|
|
13
|
+
if (nonUniqueIndexes.length === 0) {
|
|
14
|
+
writer.writeLine(`return tx.objectStore("${model.name}").getAll();`);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
writer.writeLine(`if (!where) return tx.objectStore("${model.name}").getAll();`);
|
|
18
|
+
const indexesWithFields = nonUniqueIndexes.map((idx) => ({
|
|
19
|
+
...idx,
|
|
20
|
+
fieldNames: JSON.parse(idx.keyPath),
|
|
21
|
+
}));
|
|
22
|
+
const sortedIndexes = [...indexesWithFields].sort((a, b) => b.fieldNames.length - a.fieldNames.length);
|
|
23
|
+
const allFieldNames = new Set();
|
|
24
|
+
for (const idx of sortedIndexes) {
|
|
25
|
+
for (const f of idx.fieldNames)
|
|
26
|
+
allFieldNames.add(f);
|
|
27
|
+
}
|
|
28
|
+
for (const fieldName of allFieldNames) {
|
|
29
|
+
const field = model.fields.find((f) => f.name === fieldName);
|
|
30
|
+
if (field.type === "DateTime") {
|
|
31
|
+
writer.writeLine(`let ${fieldName}Eq = IDBUtils.extractEqualityValue(where.${fieldName});`);
|
|
32
|
+
writer.writeLine(`if (typeof ${fieldName}Eq === 'string') ${fieldName}Eq = new Date(${fieldName}Eq);`);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
writer.writeLine(`const ${fieldName}Eq = IDBUtils.extractEqualityValue(where.${fieldName});`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
writer.blankLine();
|
|
39
|
+
for (const idx of sortedIndexes) {
|
|
40
|
+
const fields = idx.fieldNames;
|
|
41
|
+
const condition = fields.map((f) => `${f}Eq !== undefined`).join(" && ");
|
|
42
|
+
const keyArray = fields.map((f) => `${f}Eq`).join(", ");
|
|
43
|
+
writer.writeLine(`if (${condition})`).block(() => {
|
|
44
|
+
writer.writeLine(`return tx.objectStore("${model.name}").index("${idx.name}Index").getAll(IDBUtils.IDBKeyRange.only([${keyArray}]));`);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
writer.blankLine();
|
|
48
|
+
for (const idx of sortedIndexes) {
|
|
49
|
+
const fields = idx.fieldNames;
|
|
50
|
+
if (fields.length < 2)
|
|
51
|
+
continue;
|
|
52
|
+
for (let prefixLen = fields.length - 1; prefixLen >= 1; prefixLen--) {
|
|
53
|
+
const prefixFields = fields.slice(0, prefixLen);
|
|
54
|
+
const condition = prefixFields.map((f) => `${f}Eq !== undefined`).join(" && ");
|
|
55
|
+
const lowerArray = prefixFields.map((f) => `${f}Eq`).join(", ");
|
|
56
|
+
writer.writeLine(`if (${condition})`).block(() => {
|
|
57
|
+
writer.writeLine(`return tx.objectStore("${model.name}").index("${idx.name}Index")` +
|
|
58
|
+
`.getAll(IDBUtils.IDBKeyRange.bound([${lowerArray}], [${lowerArray}, []], false, true));`);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
writer.writeLine(`return tx.objectStore("${model.name}").getAll();`);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=_getRecords.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_getRecords.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/utils/_getRecords.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ function addImports(writer, models, prismaClientImport, outboxSync = false) {
|
|
|
15
15
|
.writeLine(`import * as IDBUtils from "./idb-utils";`);
|
|
16
16
|
if (outboxSync) {
|
|
17
17
|
writer
|
|
18
|
-
.writeLine(`import type { OutboxEventRecord, ChangeMetaRecord, PrismaIDBSchema, SyncWorkerOptions, SyncWorker } from "./idb-interface";`)
|
|
18
|
+
.writeLine(`import type { OutboxEventRecord, ChangeMetaRecord, PrismaIDBSchema, SyncWorkerOptions, SyncWorker, IDBValidKey } from "./idb-interface";`)
|
|
19
19
|
.writeLine(`import type { PushResult } from "../server/batch-processor";`)
|
|
20
20
|
.writeLine(`import { validators, keyPathValidators, modelRecordToKeyPath } from "../validators";`)
|
|
21
21
|
.writeLine(`import type { LogWithStringifiedRecord } from '../server/batch-processor';`)
|
|
@@ -39,13 +39,13 @@ function addVersionDeclaration(writer) {
|
|
|
39
39
|
writer.writeLine(`const IDB_VERSION = 1;`);
|
|
40
40
|
}
|
|
41
41
|
function createPrismaIDBClientFile(writer, options) {
|
|
42
|
-
const { models, prismaClientImport, outboxSync, outboxModelName, versionMetaModelName, include = ["*"], exclude = [], } = options;
|
|
42
|
+
const { models, prismaClientImport, outboxSync, outboxModelName, versionMetaModelName, indexes = [], include = ["*"], exclude = [], } = options;
|
|
43
43
|
addImports(writer, models, prismaClientImport, outboxSync);
|
|
44
44
|
addVersionDeclaration(writer);
|
|
45
|
-
(0, PrismaIDBClient_1.addClientClass)(writer, models, outboxSync, outboxModelName, versionMetaModelName, include, exclude);
|
|
45
|
+
(0, PrismaIDBClient_1.addClientClass)(writer, models, outboxSync, outboxModelName, versionMetaModelName, include, exclude, indexes);
|
|
46
46
|
(0, BaseIDBModelClass_1.addBaseModelClass)(writer, outboxSync);
|
|
47
47
|
models.forEach((model) => {
|
|
48
|
-
(0, IDBModelClass_1.addIDBModelClass)(writer, model, models, outboxSync, outboxModelName, versionMetaModelName);
|
|
48
|
+
(0, IDBModelClass_1.addIDBModelClass)(writer, model, models, outboxSync, outboxModelName, versionMetaModelName, indexes);
|
|
49
49
|
});
|
|
50
50
|
if (outboxSync) {
|
|
51
51
|
(0, OutboxEventIDBClass_1.addOutboxEventIDBClass)(writer, outboxModelName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/prisma-idb-client/create.ts"],"names":[],"mappings":";;AAoDA,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/prisma-idb-client/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createScopedSchemaFile = createScopedSchemaFile;
|
|
4
4
|
function createScopedSchemaFile(writer, options) {
|
|
5
|
-
const { filteredModels, enums } = options;
|
|
5
|
+
const { filteredModels, enums, indexes = [] } = options;
|
|
6
6
|
writerDatasourceAndClientGenerator(writer);
|
|
7
|
-
writeModels(writer, filteredModels);
|
|
7
|
+
writeModels(writer, filteredModels, indexes);
|
|
8
8
|
writeEnums(writer, enums);
|
|
9
9
|
}
|
|
10
10
|
function writerDatasourceAndClientGenerator(writer) {
|
|
@@ -25,14 +25,14 @@ function writerDatasourceAndClientGenerator(writer) {
|
|
|
25
25
|
.writeLine(`}`)
|
|
26
26
|
.blankLine();
|
|
27
27
|
}
|
|
28
|
-
function writeModels(writer, filteredModels) {
|
|
28
|
+
function writeModels(writer, filteredModels, indexes) {
|
|
29
29
|
for (const model of filteredModels) {
|
|
30
30
|
writer
|
|
31
31
|
.writeLine(`model ${model.name} {`)
|
|
32
32
|
.indent(() => {
|
|
33
33
|
const filteredFields = getFilteredFields(model, filteredModels);
|
|
34
34
|
writeFields(writer, filteredFields);
|
|
35
|
-
writeUniqueFieldsAndIndexes(writer, model);
|
|
35
|
+
writeUniqueFieldsAndIndexes(writer, model, indexes);
|
|
36
36
|
})
|
|
37
37
|
.writeLine(`}`)
|
|
38
38
|
.blankLine();
|
|
@@ -104,7 +104,7 @@ function computeRelationAttribute(field) {
|
|
|
104
104
|
relationAttribute += `, fields: [${field.relationFromFields?.join(", ")}], references: [${field.relationToFields?.join(", ")}])`;
|
|
105
105
|
return relationAttribute;
|
|
106
106
|
}
|
|
107
|
-
function writeUniqueFieldsAndIndexes(writer, model) {
|
|
107
|
+
function writeUniqueFieldsAndIndexes(writer, model, indexes) {
|
|
108
108
|
if (model.primaryKey) {
|
|
109
109
|
const pkFields = model.primaryKey.fields;
|
|
110
110
|
writer.writeLine(`@@id([${pkFields.join(", ")}])`);
|
|
@@ -114,5 +114,10 @@ function writeUniqueFieldsAndIndexes(writer, model) {
|
|
|
114
114
|
writer.writeLine(`@@unique([${uniqueFieldSet.join(", ")}])`);
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
|
+
const modelIndexes = indexes.filter((idx) => idx.model === model.name && idx.type === "normal");
|
|
118
|
+
for (const idx of modelIndexes) {
|
|
119
|
+
const fieldNames = idx.fields.map((f) => f.name);
|
|
120
|
+
writer.writeLine(`@@index([${fieldNames.join(", ")}])`);
|
|
121
|
+
}
|
|
117
122
|
}
|
|
118
123
|
//# sourceMappingURL=create.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/scoped-schema/create.ts"],"names":[],"mappings":";;AAIA,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/scoped-schema/create.ts"],"names":[],"mappings":";;AAIA,wDAYC;AAZD,SAAgB,sBAAsB,CACpC,MAAuB,EACvB,OAIC;IAED,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IACxD,kCAAkC,CAAC,MAAM,CAAC,CAAC;IAC3C,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAC7C,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,kCAAkC,CAAC,MAAuB;IACjE,MAAM;SACH,SAAS,CAAC,+DAA+D,CAAC;SAC1E,SAAS,CAAC,uEAAuE,CAAC;SAClF,SAAS,EAAE;SACX,SAAS,CAAC,oBAAoB,CAAC;SAC/B,MAAM,CAAC,GAAG,EAAE;QACX,MAAM,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;IACvF,CAAC,CAAC;SACD,SAAS,CAAC,GAAG,CAAC;SACd,SAAS,EAAE;SACX,SAAS,CAAC,iBAAiB,CAAC;SAC5B,MAAM,CAAC,GAAG,EAAE;QACX,MAAM,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;IAC9C,CAAC,CAAC;SACD,SAAS,CAAC,GAAG,CAAC;SACd,SAAS,EAAE,CAAC;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,MAAuB,EAAE,cAAgC,EAAE,OAA8B;IAC5G,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;QACnC,MAAM;aACH,SAAS,CAAC,SAAS,KAAK,CAAC,IAAI,IAAI,CAAC;aAClC,MAAM,CAAC,GAAG,EAAE;YACX,MAAM,cAAc,GAAG,iBAAiB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;YAChE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YACpC,2BAA2B,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC,CAAC;aACD,SAAS,CAAC,GAAG,CAAC;aACd,SAAS,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAY,EAAE,cAAgC;IACvE,MAAM,kCAAkC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAC5D,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,gCAAgC,CAAC,KAAK,EAAE,cAAc,CAAC,CACpE,CAAC;IAEF,OAAO,kCAAkC,CAAC;AAC5C,CAAC;AAED,SAAS,gCAAgC,CACvC,KAAqC,EACrC,cAAgC;IAEhC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,UAAU,CAAC,MAAuB,EAAE,KAAoC;IAC/E,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;QAC5B,MAAM;aACH,SAAS,CAAC,QAAQ,OAAO,CAAC,IAAI,IAAI,CAAC;aACnC,MAAM,CAAC,GAAG,EAAE;YACX,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC,CAAC;aACD,SAAS,CAAC,GAAG,CAAC;aACd,SAAS,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,MAAuB,EAAE,cAAgC;IAC5E,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAE7C,IAAI,KAAK,CAAC,MAAM;YAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAChC,IAAI,CAAC,KAAK,CAAC,UAAU;YAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE9C,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,IAAI;YAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI;YAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9D,IAAI,KAAK,CAAC,WAAW;YAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,eAAe;YAAE,UAAU,CAAC,IAAI,CAAC,YAAY,yBAAyB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChH,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,kBAAkB,EAAE,MAAM;YAAE,UAAU,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAE,CAAC,CAAC;QAC9G,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,KAAK,CAAC,KAAK,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAErE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,YAA8B,EAAE,IAAY;IAC7E,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACtG,CAAC;SAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QAE5C,IAAI,IAAI,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,YAAgD,CAAC;QAC7D,OAAO,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAY;IAC5C,IAAI,iBAAiB,GAAG,YAAY,CAAC;IACrC,IAAI,KAAK,CAAC,YAAY;QAAE,iBAAiB,IAAI,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC;IACvE,IAAI,KAAK,CAAC,kBAAkB,EAAE,MAAM,KAAK,CAAC;QAAE,OAAO,iBAAiB,GAAG,GAAG,CAAC;IAE3E,iBAAiB,IAAI,cAAc,KAAK,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACjI,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAuB,EAAE,KAAY,EAAE,OAA8B;IACxG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;QACzC,MAAM,CAAC,SAAS,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,MAAM,cAAc,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QAChD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,SAAS,CAAC,aAAa,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IAChG,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,CAAC,SAAS,CAAC,YAAY,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC"}
|
package/dist/generator.js
CHANGED
|
@@ -28,7 +28,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
28
28
|
},
|
|
29
29
|
onGenerate: async (options) => {
|
|
30
30
|
const outputPath = options.generator.output?.value;
|
|
31
|
-
const { prismaClientImport, outboxSync, outboxModelName, versionMetaModelName, filteredModels, exportEnums, rootModel, } = (0, parseGeneratorConfig_1.parseGeneratorConfig)(options);
|
|
31
|
+
const { prismaClientImport, outboxSync, outboxModelName, versionMetaModelName, filteredModels, indexes, exportEnums, rootModel, } = (0, parseGeneratorConfig_1.parseGeneratorConfig)(options);
|
|
32
32
|
let scopedPrismaImport = prismaClientImport;
|
|
33
33
|
if (outboxSync) {
|
|
34
34
|
if (!scopedPrismaImport) {
|
|
@@ -44,7 +44,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
44
44
|
(0, create_5.createApplyPullFile)(writer, { models: filteredModels, versionMetaModelName });
|
|
45
45
|
});
|
|
46
46
|
await (0, fileWriting_1.writePrismaSchemaFile)("client/scoped-schema.prisma", outputPath, (writer) => {
|
|
47
|
-
(0, create_8.createScopedSchemaFile)(writer, { filteredModels, enums: options.dmmf.datamodel.enums });
|
|
47
|
+
(0, create_8.createScopedSchemaFile)(writer, { filteredModels, enums: options.dmmf.datamodel.enums, indexes });
|
|
48
48
|
});
|
|
49
49
|
await (0, fileWriting_1.writeCodeFile)("server/index.ts", outputPath, (writer) => {
|
|
50
50
|
(0, create_server_index_1.createServerIndexFile)(writer);
|
|
@@ -62,6 +62,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
62
62
|
outboxSync,
|
|
63
63
|
outboxModelName,
|
|
64
64
|
versionMetaModelName,
|
|
65
|
+
indexes,
|
|
65
66
|
});
|
|
66
67
|
});
|
|
67
68
|
await (0, fileWriting_1.writeCodeFile)("client/idb-interface.ts", outputPath, (writer) => {
|
|
@@ -71,6 +72,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
71
72
|
outboxSync,
|
|
72
73
|
outboxModelName,
|
|
73
74
|
versionMetaModelName,
|
|
75
|
+
indexes,
|
|
74
76
|
});
|
|
75
77
|
});
|
|
76
78
|
await (0, fileWriting_1.writeCodeFile)("client/idb-utils.ts", outputPath, (writer) => {
|
package/dist/generator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":";;;;;AAAA,+DAA8E;AAC9E,kDAA0C;AAC1C,kEAAiF;AACjF,gEAA6E;AAC7E,4DAAkE;AAClE,oEAAoF;AACpF,uDAA6E;AAC7E,6DAAuE;AACvE,yEAAsE;AACtE,6DAAwE;AACxE,wDAA8D;AAC9D,kFAAiF;AACjF,kFAAiF;AACjF,iDAA0C;AAC1C,gEAA6E;AAC7E,gDAAwB;AAExB,IAAA,mCAAgB,EAAC;IACf,UAAU;QACR,OAAO;YACL,OAAO,EAAP,sBAAO;YACP,aAAa,EAAE,cAAc;SAC9B,CAAC;IACJ,CAAC;IAED,UAAU,EAAE,KAAK,EAAE,OAAyB,EAAE,EAAE;QAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,KAAe,CAAC;QAC7D,MAAM,EACJ,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,SAAS,GACV,GAAG,IAAA,2CAAoB,EAAC,OAAO,CAAC,CAAC;QAElC,IAAI,kBAAkB,GAAG,kBAAkB,CAAC;QAE5C,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;YACxF,CAAC;YAED,MAAM,IAAA,2BAAa,EAAC,eAAe,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;gBAC1D,IAAA,6BAAoB,EAAC,MAAM,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;YAChG,CAAC,CAAC,CAAC;YAEH,MAAM,IAAA,2BAAa,EAAC,2BAA2B,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;gBACtE,IAAA,iCAAwB,EAAC,MAAM,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,SAAS,EAAE,SAAU,EAAE,CAAC,CAAC;YAC1G,CAAC,CAAC,CAAC;YAEH,MAAM,IAAA,2BAAa,EAAC,sBAAsB,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;gBACjE,IAAA,4BAAmB,EAAC,MAAM,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,oBAAoB,EAAE,CAAC,CAAC;YAChF,CAAC,CAAC,CAAC;YAEH,MAAM,IAAA,mCAAqB,EAAC,6BAA6B,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;gBAChF,IAAA,+BAAsB,EAAC,MAAM,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.parseGeneratorConfig = parseGeneratorConfig;
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const getFilteredModels_1 = require("./getFilteredModels");
|
|
9
|
+
const utils_1 = require("./utils");
|
|
9
10
|
function parseGeneratorConfig(options) {
|
|
10
11
|
const { models, enums } = options.dmmf.datamodel;
|
|
11
12
|
const outputPath = options.generator.output?.value;
|
|
@@ -90,6 +91,52 @@ function parseGeneratorConfig(options) {
|
|
|
90
91
|
return !exclude.some((pattern) => matchPattern(modelName, pattern));
|
|
91
92
|
};
|
|
92
93
|
const filteredModels = (0, getFilteredModels_1.getProjectedFilteredModels)(models.filter((model) => isIncluded(model.name)));
|
|
94
|
+
const datamodelIndexes = options.dmmf.datamodel.indexes ?? [];
|
|
95
|
+
const excludedByKeyType = new Set();
|
|
96
|
+
for (const model of filteredModels) {
|
|
97
|
+
const unsupported = (0, utils_1.getUnsupportedKeyFields)(model);
|
|
98
|
+
if (unsupported.length > 0) {
|
|
99
|
+
excludedByKeyType.add(model.name);
|
|
100
|
+
for (const { fieldName, fieldType, context } of unsupported) {
|
|
101
|
+
console.warn(`@prisma-idb/idb-client-generator: Model "${model.name}" has field "${fieldName}" (${fieldType}) in ${context} ` +
|
|
102
|
+
`which is not a valid IndexedDB key type. Valid IDB key types are: number (Int/Float), string (String), Date (DateTime), BufferSource (Bytes). ` +
|
|
103
|
+
`This model will be excluded from the generated client.`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
if (excludedByKeyType.size > 0) {
|
|
108
|
+
let changed = true;
|
|
109
|
+
while (changed) {
|
|
110
|
+
changed = false;
|
|
111
|
+
for (const model of filteredModels) {
|
|
112
|
+
if (excludedByKeyType.has(model.name))
|
|
113
|
+
continue;
|
|
114
|
+
const requiredRelationsToExcluded = model.fields.filter((f) => f.kind === "object" && !f.isList && f.isRequired && excludedByKeyType.has(f.type));
|
|
115
|
+
if (requiredRelationsToExcluded.length > 0) {
|
|
116
|
+
excludedByKeyType.add(model.name);
|
|
117
|
+
changed = true;
|
|
118
|
+
const parentNames = requiredRelationsToExcluded.map((f) => `"${f.type}"`).join(", ");
|
|
119
|
+
console.warn(`@prisma-idb/idb-client-generator: Model "${model.name}" has a required relation to excluded model(s) ${parentNames}. ` +
|
|
120
|
+
`It will also be excluded from the generated client.`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
const validModels = excludedByKeyType.size > 0
|
|
126
|
+
? (0, getFilteredModels_1.getProjectedFilteredModels)(filteredModels.filter((model) => !excludedByKeyType.has(model.name)))
|
|
127
|
+
: filteredModels;
|
|
128
|
+
if (outboxSync && rootModel) {
|
|
129
|
+
if (!validModels.some((m) => m.name === rootModel.name)) {
|
|
130
|
+
throw new Error(`@prisma-idb/idb-client-generator: Root model "${rootModel.name}" is not present in the final set of valid models. ` +
|
|
131
|
+
`It may have been excluded by include/exclude patterns or due to unsupported IDB key types. ` +
|
|
132
|
+
`The ownership DAG cannot be constructed without it.`);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
const validModelNames = new Set(validModels.map((m) => m.name));
|
|
136
|
+
const validIndexes = datamodelIndexes.filter((idx) => validModelNames.has(idx.model));
|
|
137
|
+
for (const model of validModels) {
|
|
138
|
+
(0, utils_1.getNonUniqueIndexes)(model, validIndexes, true);
|
|
139
|
+
}
|
|
93
140
|
return {
|
|
94
141
|
prismaClientImport,
|
|
95
142
|
outboxSync,
|
|
@@ -98,7 +145,8 @@ function parseGeneratorConfig(options) {
|
|
|
98
145
|
exportEnums,
|
|
99
146
|
include,
|
|
100
147
|
exclude,
|
|
101
|
-
filteredModels,
|
|
148
|
+
filteredModels: validModels,
|
|
149
|
+
indexes: validIndexes,
|
|
102
150
|
rootModel,
|
|
103
151
|
};
|
|
104
152
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseGeneratorConfig.js","sourceRoot":"","sources":["../../src/helpers/parseGeneratorConfig.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parseGeneratorConfig.js","sourceRoot":"","sources":["../../src/helpers/parseGeneratorConfig.ts"],"names":[],"mappings":"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"}
|