@prisma-idb/idb-client-generator 0.4.0 → 0.5.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.
Files changed (19) hide show
  1. package/dist/fileCreators/idb-utils/comparator/genericComparator.js +56 -0
  2. package/dist/fileCreators/idb-utils/comparator/genericComparator.js.map +1 -0
  3. package/dist/fileCreators/idb-utils/create.js +2 -0
  4. package/dist/fileCreators/idb-utils/create.js.map +1 -1
  5. package/dist/fileCreators/prisma-idb-client/classes/models/IDBModelClass.js +6 -0
  6. package/dist/fileCreators/prisma-idb-client/classes/models/IDBModelClass.js.map +1 -1
  7. package/dist/fileCreators/prisma-idb-client/classes/models/api/count.js +2 -2
  8. package/dist/fileCreators/prisma-idb-client/classes/models/api/count.js.map +1 -1
  9. package/dist/fileCreators/prisma-idb-client/classes/models/api/findMany.js +2 -1
  10. package/dist/fileCreators/prisma-idb-client/classes/models/api/findMany.js.map +1 -1
  11. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_applyOrderByClause.js +62 -0
  12. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_applyOrderByClause.js.map +1 -0
  13. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForFind.js +18 -0
  14. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForFind.js.map +1 -1
  15. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_resolveOrderByKey.js +69 -0
  16. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_resolveOrderByKey.js.map +1 -0
  17. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_resolveSortOrder.js +40 -0
  18. package/dist/fileCreators/prisma-idb-client/classes/models/utils/_resolveSortOrder.js.map +1 -0
  19. package/package.json +1 -1
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addGenericComparator = addGenericComparator;
4
+ function addGenericComparator(utilsFile) {
5
+ utilsFile.addFunction({
6
+ name: "genericComparator",
7
+ isExported: true,
8
+ parameters: [
9
+ { name: "a", type: "unknown" },
10
+ { name: "b", type: "unknown" },
11
+ { name: "sortOrder", type: `Prisma.SortOrder | Prisma.SortOrderInput`, initializer: `"asc"` },
12
+ ],
13
+ returnType: "number",
14
+ statements: (writer) => {
15
+ handleNullsSorting(writer);
16
+ handleMultiplierAndReturnValueInit(writer);
17
+ handleStringComparison(writer);
18
+ handleNumberComparison(writer);
19
+ handleComparisonTypeErrorAndReturn(writer);
20
+ },
21
+ });
22
+ }
23
+ function handleNullsSorting(writer) {
24
+ writer.writeLine(`if (typeof sortOrder !== "string" && sortOrder.nulls)`).block(() => {
25
+ writer
26
+ .writeLine(`const nullMultiplier = sortOrder.nulls === "first" ? -1 : 1;`)
27
+ .blankLine()
28
+ .writeLine(`if (a === null && b === null) return 0;`)
29
+ .writeLine(`if (a === null || b === null) return (a === null ? 1 : -1) * nullMultiplier;`);
30
+ });
31
+ }
32
+ function handleMultiplierAndReturnValueInit(writer) {
33
+ writer
34
+ .writeLine(`const multiplier = typeof sortOrder === "string" ? (sortOrder === "asc" ? 1 : -1) : sortOrder.sort === "asc" ? 1 : -1;`)
35
+ .writeLine(`let returnValue: number | undefined;`)
36
+ .blankLine();
37
+ }
38
+ function handleStringComparison(writer) {
39
+ writer.writeLine(`if (typeof a === "string" && typeof b === "string")`).block(() => {
40
+ writer.writeLine(`returnValue = a.localeCompare(b);`);
41
+ });
42
+ }
43
+ function handleNumberComparison(writer) {
44
+ writer.writeLine(`if (typeof a === "number" && typeof b === "number")`).block(() => {
45
+ writer.writeLine(`returnValue = a - b;`);
46
+ });
47
+ }
48
+ function handleComparisonTypeErrorAndReturn(writer) {
49
+ writer
50
+ .writeLine(`if (returnValue === undefined)`)
51
+ .block(() => {
52
+ writer.writeLine("throw new Error(`Comparison of type: ${typeof a} not yet supported`);");
53
+ })
54
+ .writeLine(`return returnValue * multiplier;`);
55
+ }
56
+ //# sourceMappingURL=genericComparator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"genericComparator.js","sourceRoot":"","sources":["../../../../src/fileCreators/idb-utils/comparator/genericComparator.ts"],"names":[],"mappings":";;AAEA,oDAqBC;AArBD,SAAgB,oBAAoB,CAAC,SAAqB;IACxD,SAAS,CAAC,WAAW,CAAC;QACpB,IAAI,EAAE,mBAAmB;QACzB,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;YAC9B,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;YAC9B,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,0CAA0C,EAAE,WAAW,EAAE,OAAO,EAAE;SAC9F;QACD,UAAU,EAAE,QAAQ;QACpB,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAC3B,kCAAkC,CAAC,MAAM,CAAC,CAAC;YAE3C,sBAAsB,CAAC,MAAM,CAAC,CAAC;YAC/B,sBAAsB,CAAC,MAAM,CAAC,CAAC;YAG/B,kCAAkC,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAuB;IACjD,MAAM,CAAC,SAAS,CAAC,uDAAuD,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACnF,MAAM;aACH,SAAS,CAAC,8DAA8D,CAAC;aACzE,SAAS,EAAE;aACX,SAAS,CAAC,yCAAyC,CAAC;aACpD,SAAS,CAAC,8EAA8E,CAAC,CAAC;IAC/F,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kCAAkC,CAAC,MAAuB;IACjE,MAAM;SACH,SAAS,CACR,wHAAwH,CACzH;SACA,SAAS,CAAC,sCAAsC,CAAC;SACjD,SAAS,EAAE,CAAC;AACjB,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAuB;IACrD,MAAM,CAAC,SAAS,CAAC,qDAAqD,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACjF,MAAM,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAuB;IACrD,MAAM,CAAC,SAAS,CAAC,qDAAqD,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACjF,MAAM,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kCAAkC,CAAC,MAAuB;IACjE,MAAM;SACH,SAAS,CAAC,gCAAgC,CAAC;SAC3C,KAAK,CAAC,GAAG,EAAE;QACV,MAAM,CAAC,SAAS,CAAC,uEAAuE,CAAC,CAAC;IAC5F,CAAC,CAAC;SACD,SAAS,CAAC,kCAAkC,CAAC,CAAC;AACnD,CAAC"}
@@ -17,6 +17,7 @@ const DateTimeHandler_1 = require("./updateHandlers/DateTimeHandler");
17
17
  const IntHandler_1 = require("./updateHandlers/IntHandler");
18
18
  const ScalarListHandler_1 = require("./updateHandlers/ScalarListHandler");
19
19
  const StringHandler_1 = require("./updateHandlers/StringHandler");
20
+ const genericComparator_1 = require("./comparator/genericComparator");
20
21
  function createUtilsFile(idbUtilsFile, models) {
21
22
  idbUtilsFile.addImportDeclarations([
22
23
  { moduleSpecifier: "idb", isTypeOnly: true, namedImports: ["IDBPTransaction", "StoreNames"] },
@@ -66,5 +67,6 @@ function createUtilsFile(idbUtilsFile, models) {
66
67
  (0, BytesHandler_1.addBytesUpdateHandler)(idbUtilsFile, models);
67
68
  (0, IntHandler_1.addIntUpdateHandler)(idbUtilsFile, models);
68
69
  (0, ScalarListHandler_1.addScalarListUpdateHandler)(idbUtilsFile, models);
70
+ (0, genericComparator_1.addGenericComparator)(idbUtilsFile);
69
71
  }
70
72
  //# sourceMappingURL=create.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/idb-utils/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/fileCreators/idb-utils/create.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,9 @@ const _removeNestedCreateData_1 = require("./utils/_removeNestedCreateData");
21
21
  const _getNeededStoresForWhere_1 = require("./utils/_getNeededStoresForWhere");
22
22
  const delete_1 = require("./api/delete");
23
23
  const deleteMany_1 = require("./api/deleteMany");
24
+ const _applyOrderByClause_1 = require("./utils/_applyOrderByClause");
25
+ const _resolveOrderByKey_1 = require("./utils/_resolveOrderByKey");
26
+ const _resolveSortOrder_1 = require("./utils/_resolveSortOrder");
24
27
  function addIDBModelClass(file, model, models) {
25
28
  const modelClass = file.addClass({
26
29
  name: `${model.name}IDBClass`,
@@ -29,6 +32,9 @@ function addIDBModelClass(file, model, models) {
29
32
  (0, _applyWhereClause_1.addApplyWhereClause)(modelClass, model, models);
30
33
  (0, _applySelectClause_1.addApplySelectClause)(modelClass, model);
31
34
  (0, _applyRelations_1.addApplyRelations)(modelClass, model, models);
35
+ (0, _applyOrderByClause_1.addApplyOrderByClause)(modelClass, model);
36
+ (0, _resolveOrderByKey_1.addResolveOrderByKey)(modelClass, model, models);
37
+ (0, _resolveSortOrder_1.addResolveSortOrder)(modelClass, model);
32
38
  (0, _fillDefaults_1.addFillDefaultsFunction)(modelClass, model);
33
39
  (0, _getNeededStoresForWhere_1.addGetNeededStoresForWhere)(modelClass, model);
34
40
  (0, _getNeededStoresForFind_1.addGetNeededStoresForFind)(modelClass, model);
@@ -1 +1 @@
1
- {"version":3,"file":"IDBModelClass.js","sourceRoot":"","sources":["../../../../../src/fileCreators/prisma-idb-client/classes/models/IDBModelClass.ts"],"names":[],"mappings":";;AAuBA,4CA8BC;AAnDD,uCAA6C;AAC7C,yCAA+C;AAC/C,iDAAuD;AACvD,mEAAmE;AACnE,+CAAqD;AACrD,6DAA6D;AAC7D,6CAAmD;AACnD,iDAAuD;AACvD,+DAA+D;AAC/D,yCAA+C;AAC/C,6DAA4D;AAC5D,mEAAkE;AAClE,iEAAgE;AAChE,yDAAgE;AAChE,iFAAgF;AAChF,6EAA4E;AAC5E,6EAAkF;AAClF,+EAA8E;AAC9E,yCAA+C;AAC/C,iDAAuD;AAEvD,SAAgB,gBAAgB,CAAC,IAAgB,EAAE,KAAY,EAAE,MAAwB;IACvF,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,UAAU;QAC7B,OAAO,EAAE,mBAAmB;KAC7B,CAAC,CAAC;IAEH,IAAA,uCAAmB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC/C,IAAA,yCAAoB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACxC,IAAA,mCAAiB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC7C,IAAA,uCAAuB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC3C,IAAA,qDAA0B,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC9C,IAAA,mDAAyB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC7C,IAAA,uDAA2B,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC/C,IAAA,yDAA+B,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAEnD,IAAA,4BAAiB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACrC,IAAA,8BAAkB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACtC,IAAA,sCAAmB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvC,IAAA,gCAAmB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvC,IAAA,wCAAoB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACxC,IAAA,sBAAc,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAElC,IAAA,wBAAe,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC3C,IAAA,gCAAmB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvC,IAAA,4CAAsB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAE1C,IAAA,wBAAe,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC3C,IAAA,gCAAmB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAE/C,IAAA,wBAAe,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"IDBModelClass.js","sourceRoot":"","sources":["../../../../../src/fileCreators/prisma-idb-client/classes/models/IDBModelClass.ts"],"names":[],"mappings":";;AA0BA,4CAiCC;AAzDD,uCAA6C;AAC7C,yCAA+C;AAC/C,iDAAuD;AACvD,mEAAmE;AACnE,+CAAqD;AACrD,6DAA6D;AAC7D,6CAAmD;AACnD,iDAAuD;AACvD,+DAA+D;AAC/D,yCAA+C;AAC/C,6DAA4D;AAC5D,mEAAkE;AAClE,iEAAgE;AAChE,yDAAgE;AAChE,iFAAgF;AAChF,6EAA4E;AAC5E,6EAAkF;AAClF,+EAA8E;AAC9E,yCAA+C;AAC/C,iDAAuD;AACvD,qEAAoE;AACpE,mEAAkE;AAClE,iEAAgE;AAEhE,SAAgB,gBAAgB,CAAC,IAAgB,EAAE,KAAY,EAAE,MAAwB;IACvF,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,UAAU;QAC7B,OAAO,EAAE,mBAAmB;KAC7B,CAAC,CAAC;IAEH,IAAA,uCAAmB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC/C,IAAA,yCAAoB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACxC,IAAA,mCAAiB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC7C,IAAA,2CAAqB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACzC,IAAA,yCAAoB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAChD,IAAA,uCAAmB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvC,IAAA,uCAAuB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC3C,IAAA,qDAA0B,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC9C,IAAA,mDAAyB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC7C,IAAA,uDAA2B,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC/C,IAAA,yDAA+B,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAEnD,IAAA,4BAAiB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACrC,IAAA,8BAAkB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACtC,IAAA,sCAAmB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvC,IAAA,gCAAmB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvC,IAAA,wCAAoB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACxC,IAAA,sBAAc,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAElC,IAAA,wBAAe,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC3C,IAAA,gCAAmB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvC,IAAA,4CAAsB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAE1C,IAAA,wBAAe,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC3C,IAAA,gCAAmB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAE/C,IAAA,wBAAe,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AACrC,CAAC"}
@@ -21,8 +21,8 @@ function addCountMethod(modelClass, model) {
21
21
  function handleWithoutSelect(writer, model) {
22
22
  writer.writeLine(`if (!query?.select || query.select === true)`).block(() => {
23
23
  writer
24
- .writeLine(`const totalRecords = await tx.objectStore("${model.name}").count();`)
25
- .writeLine(`return totalRecords as Prisma.Result<Prisma.${model.name}Delegate, Q, "count">;`);
24
+ .writeLine(`const records = await this.findMany({ where: query?.where }, tx);`)
25
+ .writeLine(`return records.length as Prisma.Result<Prisma.${model.name}Delegate, Q, "count">;`);
26
26
  });
27
27
  }
28
28
  function handleWithSelect(writer, model) {
@@ -1 +1 @@
1
- {"version":3,"file":"count.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/api/count.ts"],"names":[],"mappings":";;AAGA,wCAgBC;AAhBD,SAAgB,cAAc,CAAC,UAA4B,EAAE,KAAY;IACvE,UAAU,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;QACb,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,sBAAsB,KAAK,CAAC,IAAI,oBAAoB,EAAE,CAAC;QACjG,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;YACpD,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,0BAA0B,EAAE;SACzE;QACD,UAAU,EAAE,gCAAgC,KAAK,CAAC,IAAI,wBAAwB;QAC9E,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,MAAM,CAAC,SAAS,CAAC,4CAA4C,KAAK,CAAC,IAAI,kBAAkB,CAAC,CAAC;YAC3F,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACnC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAClC,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAuB,EAAE,KAAY;IAChE,MAAM,CAAC,SAAS,CAAC,8CAA8C,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QAC1E,MAAM;aACH,SAAS,CAAC,8CAA8C,KAAK,CAAC,IAAI,aAAa,CAAC;aAChF,SAAS,CAAC,+CAA+C,KAAK,CAAC,IAAI,wBAAwB,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAuB,EAAE,KAAY;IAC7D,MAAM;SACH,SAAS,CAAC,6CAA6C,KAAK,CAAC,IAAI,yCAAyC,CAAC;SAC3G,SAAS,CAAC,8CAA8C,CAAC;SACzD,KAAK,CAAC,GAAG,EAAE;QACV,MAAM;aACH,SAAS,CAAC,oDAAoD,CAAC;aAC/D,SAAS,CAAC,0BAA0B,CAAC;aACrC,KAAK,CAAC,GAAG,EAAE;YACV,MAAM;iBACH,SAAS,CAAC,8EAA8E,CAAC;iBACzF,SAAS,CAAC,WAAW,CAAC,CAAC;QAC5B,CAAC,CAAC;aACD,SAAS,CACR,qGAAqG,CACtG,CAAC;IACN,CAAC,CAAC;SACD,SAAS,CAAC,kEAAkE,CAAC,CAAC;AACnF,CAAC"}
1
+ {"version":3,"file":"count.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/api/count.ts"],"names":[],"mappings":";;AAGA,wCAgBC;AAhBD,SAAgB,cAAc,CAAC,UAA4B,EAAE,KAAY;IACvE,UAAU,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;QACb,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,sBAAsB,KAAK,CAAC,IAAI,oBAAoB,EAAE,CAAC;QACjG,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;YACpD,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,0BAA0B,EAAE;SACzE;QACD,UAAU,EAAE,gCAAgC,KAAK,CAAC,IAAI,wBAAwB;QAC9E,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,MAAM,CAAC,SAAS,CAAC,4CAA4C,KAAK,CAAC,IAAI,kBAAkB,CAAC,CAAC;YAC3F,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACnC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAClC,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAuB,EAAE,KAAY;IAChE,MAAM,CAAC,SAAS,CAAC,8CAA8C,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QAC1E,MAAM;aACH,SAAS,CAAC,mEAAmE,CAAC;aAC9E,SAAS,CAAC,iDAAiD,KAAK,CAAC,IAAI,wBAAwB,CAAC,CAAC;IACpG,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAuB,EAAE,KAAY;IAC7D,MAAM;SACH,SAAS,CAAC,6CAA6C,KAAK,CAAC,IAAI,yCAAyC,CAAC;SAC3G,SAAS,CAAC,8CAA8C,CAAC;SACzD,KAAK,CAAC,GAAG,EAAE;QACV,MAAM;aACH,SAAS,CAAC,oDAAoD,CAAC;aAC/D,SAAS,CAAC,0BAA0B,CAAC;aACrC,KAAK,CAAC,GAAG,EAAE;YACV,MAAM;iBACH,SAAS,CAAC,8EAA8E,CAAC;iBACzF,SAAS,CAAC,WAAW,CAAC,CAAC;QAC5B,CAAC,CAAC;aACD,SAAS,CACR,qGAAqG,CACtG,CAAC;IACN,CAAC,CAAC;SACD,SAAS,CAAC,kEAAkE,CAAC,CAAC;AACnF,CAAC"}
@@ -26,7 +26,8 @@ function addFindManyMethod(modelClass, model) {
26
26
  function getRecords(writer, model) {
27
27
  writer
28
28
  .writeLine(`tx = tx ?? this.client._db.transaction(Array.from(this._getNeededStoresForFind(query)), "readonly");`)
29
- .writeLine(`const records = await this._applyWhereClause(await tx.objectStore("${model.name}").getAll(), query?.where, tx);`);
29
+ .writeLine(`const records = await this._applyWhereClause(await tx.objectStore("${model.name}").getAll(), query?.where, tx);`)
30
+ .writeLine(`await this._applyOrderByClause(records, query?.orderBy, tx);`);
30
31
  }
31
32
  function applyRelationsToRecords(writer, model) {
32
33
  writer
@@ -1 +1 @@
1
- {"version":3,"file":"findMany.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/api/findMany.ts"],"names":[],"mappings":";;AAGA,8CAqBC;AArBD,SAAgB,iBAAiB,CAAC,UAA4B,EAAE,KAAY;IAC1E,UAAU,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,IAAI;QACb,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,sBAAsB,KAAK,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACpG,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;YACpD;gBACE,IAAI,EAAE,IAAI;gBACV,gBAAgB,EAAE,IAAI;gBACtB,IAAI,EAAE,0BAA0B;aACjC;SACF;QACD,UAAU,EAAE,gCAAgC,KAAK,CAAC,IAAI,2BAA2B;QACjF,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC1B,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACvC,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACnC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,MAAuB,EAAE,KAAY;IACvD,MAAM;SACH,SAAS,CAAC,sGAAsG,CAAC;SACjH,SAAS,CACR,sEAAsE,KAAK,CAAC,IAAI,iCAAiC,CAClH,CAAC;AACN,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAuB,EAAE,KAAY;IACpE,MAAM;SACH,KAAK,CAAC,kFAAkF,CAAC;SACzF,KAAK,CAAC,2BAA2B,KAAK,CAAC,IAAI,0CAA0C,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,0BAA0B,CAAC,MAAuB;IACzD,MAAM;SACH,SAAS,CAAC,qCAAqC,CAAC;SAChD,SAAS,CAAC,6FAA6F,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,aAAa,CAAC,MAAuB,EAAE,KAAY;IAC1D,MAAM,CAAC,SAAS,CAAC,uDAAuD,KAAK,CAAC,IAAI,2BAA2B,CAAC,CAAC;AACjH,CAAC"}
1
+ {"version":3,"file":"findMany.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/api/findMany.ts"],"names":[],"mappings":";;AAGA,8CAqBC;AArBD,SAAgB,iBAAiB,CAAC,UAA4B,EAAE,KAAY;IAC1E,UAAU,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,IAAI;QACb,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,sBAAsB,KAAK,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACpG,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;YACpD;gBACE,IAAI,EAAE,IAAI;gBACV,gBAAgB,EAAE,IAAI;gBACtB,IAAI,EAAE,0BAA0B;aACjC;SACF;QACD,UAAU,EAAE,gCAAgC,KAAK,CAAC,IAAI,2BAA2B;QACjF,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC1B,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACvC,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACnC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,MAAuB,EAAE,KAAY;IACvD,MAAM;SACH,SAAS,CAAC,sGAAsG,CAAC;SACjH,SAAS,CACR,sEAAsE,KAAK,CAAC,IAAI,iCAAiC,CAClH;SACA,SAAS,CAAC,8DAA8D,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAuB,EAAE,KAAY;IACpE,MAAM;SACH,KAAK,CAAC,kFAAkF,CAAC;SACzF,KAAK,CAAC,2BAA2B,KAAK,CAAC,IAAI,0CAA0C,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,0BAA0B,CAAC,MAAuB;IACzD,MAAM;SACH,SAAS,CAAC,qCAAqC,CAAC;SAChD,SAAS,CAAC,6FAA6F,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,aAAa,CAAC,MAAuB,EAAE,KAAY;IAC1D,MAAM,CAAC,SAAS,CAAC,uDAAuD,KAAK,CAAC,IAAI,2BAA2B,CAAC,CAAC;AACjH,CAAC"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addApplyOrderByClause = addApplyOrderByClause;
4
+ function addApplyOrderByClause(modelClass, model) {
5
+ modelClass.addMethod({
6
+ name: "_applyOrderByClause",
7
+ isAsync: true,
8
+ typeParameters: [
9
+ { name: "O", constraint: `Prisma.Args<Prisma.${model.name}Delegate, 'findMany'>['orderBy']` },
10
+ { name: "R", constraint: `Prisma.Result<Prisma.${model.name}Delegate, object, "findFirstOrThrow">` },
11
+ ],
12
+ parameters: [
13
+ { name: "records", type: `R[]` },
14
+ { name: "orderByClause", type: "O" },
15
+ { name: "tx", type: "IDBUtils.TransactionType" },
16
+ ],
17
+ returnType: `Promise<void>`,
18
+ statements: (writer) => {
19
+ addEarlyExitAndArrayDeclaration(writer);
20
+ addKeyedRecordsCreation(writer);
21
+ addKeyedRecordsSorter(writer);
22
+ },
23
+ });
24
+ }
25
+ function addEarlyExitAndArrayDeclaration(writer) {
26
+ writer
27
+ .writeLine(`if (orderByClause === undefined) return;`)
28
+ .writeLine(`const orderByClauses = IDBUtils.convertToArray(orderByClause);`);
29
+ }
30
+ function addKeyedRecordsCreation(writer) {
31
+ writer
32
+ .writeLine(`const indexedKeys = await Promise.all(`)
33
+ .writeLine(`records.map(async (record) => `)
34
+ .block(() => {
35
+ writer
36
+ .writeLine(`const keys = await Promise.all(`)
37
+ .writeLine(`orderByClauses.map(async (clause) => await this._resolveOrderByKey(record, clause, tx)),`)
38
+ .writeLine(`);`)
39
+ .writeLine(`return { keys, record };`);
40
+ })
41
+ .writeLine(`));`);
42
+ }
43
+ function addKeyedRecordsSorter(writer) {
44
+ writer
45
+ .writeLine(`indexedKeys.sort((a, b) => `)
46
+ .block(() => {
47
+ writer
48
+ .writeLine(`for (let i = 0; i < orderByClauses.length; i++)`)
49
+ .block(() => {
50
+ writer
51
+ .writeLine(`const clause = orderByClauses[i];`)
52
+ .writeLine(`const comparison = IDBUtils.genericComparator(a.keys[i], b.keys[i], this._resolveSortOrder(clause));`)
53
+ .writeLine(`if (comparison !== 0) return comparison;`);
54
+ })
55
+ .writeLine(`return 0;`);
56
+ })
57
+ .writeLine(`);`);
58
+ writer.writeLine(`for (let i = 0; i < records.length; i++)`).block(() => {
59
+ writer.writeLine(`records[i] = indexedKeys[i].record;`);
60
+ });
61
+ }
62
+ //# sourceMappingURL=_applyOrderByClause.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_applyOrderByClause.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/utils/_applyOrderByClause.ts"],"names":[],"mappings":";;AAGA,sDAoBC;AApBD,SAAgB,qBAAqB,CAAC,UAA4B,EAAE,KAAY;IAC9E,UAAU,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE,qBAAqB;QAC3B,OAAO,EAAE,IAAI;QACb,cAAc,EAAE;YACd,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,sBAAsB,KAAK,CAAC,IAAI,kCAAkC,EAAE;YAC7F,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,wBAAwB,KAAK,CAAC,IAAI,uCAAuC,EAAE;SACrG;QACD,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE;YAChC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE;YACpC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,0BAA0B,EAAE;SACjD;QACD,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,+BAA+B,CAAC,MAAM,CAAC,CAAC;YACxC,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAChC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,+BAA+B,CAAC,MAAuB;IAC9D,MAAM;SACH,SAAS,CAAC,0CAA0C,CAAC;SACrD,SAAS,CAAC,gEAAgE,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAuB;IACtD,MAAM;SACH,SAAS,CAAC,wCAAwC,CAAC;SACnD,SAAS,CAAC,gCAAgC,CAAC;SAC3C,KAAK,CAAC,GAAG,EAAE;QACV,MAAM;aACH,SAAS,CAAC,iCAAiC,CAAC;aAC5C,SAAS,CAAC,0FAA0F,CAAC;aACrG,SAAS,CAAC,IAAI,CAAC;aACf,SAAS,CAAC,0BAA0B,CAAC,CAAC;IAC3C,CAAC,CAAC;SACD,SAAS,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAuB;IACpD,MAAM;SACH,SAAS,CAAC,6BAA6B,CAAC;SACxC,KAAK,CAAC,GAAG,EAAE;QACV,MAAM;aACH,SAAS,CAAC,iDAAiD,CAAC;aAC5D,KAAK,CAAC,GAAG,EAAE;YACV,MAAM;iBACH,SAAS,CAAC,mCAAmC,CAAC;iBAC9C,SAAS,CACR,sGAAsG,CACvG;iBACA,SAAS,CAAC,0CAA0C,CAAC,CAAC;QAC3D,CAAC,CAAC;aACD,SAAS,CAAC,WAAW,CAAC,CAAC;IAC5B,CAAC,CAAC;SACD,SAAS,CAAC,IAAI,CAAC,CAAC;IAEnB,MAAM,CAAC,SAAS,CAAC,0CAA0C,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACtE,MAAM,CAAC,SAAS,CAAC,qCAAqC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -13,6 +13,7 @@ function addGetNeededStoresForFind(modelClass, model) {
13
13
  .writeLine(`const neededStores: Set<StoreNames<PrismaIDBSchema>> = new Set();`)
14
14
  .writeLine(`neededStores.add("${model.name}");`)
15
15
  .writeLine(`this._getNeededStoresForWhere(query?.where, neededStores);`);
16
+ processOrderByInQuery(writer, model);
16
17
  processRelationsInQuery(writer, model);
17
18
  writer.writeLine("return neededStores;");
18
19
  },
@@ -35,4 +36,21 @@ function processRelationsInQuery(writer, model) {
35
36
  });
36
37
  });
37
38
  }
39
+ function processOrderByInQuery(writer, model) {
40
+ const relationFields = model.fields.filter(({ kind }) => kind === "object");
41
+ writer.writeLine(`if (query?.orderBy)`).block(() => {
42
+ writer.writeLine(`const orderBy = IDBUtils.convertToArray(query.orderBy);`);
43
+ for (const field of relationFields) {
44
+ writer
45
+ .writeLine(`const orderBy_${field.name} = orderBy.find((clause) => clause.${field.name});`)
46
+ .writeLine(`if (orderBy_${field.name})`)
47
+ .block(() => {
48
+ writer
49
+ .writeLine(`this.client.${(0, utils_1.toCamelCase)(field.type)}`)
50
+ .writeLine(`._getNeededStoresForFind({ orderBy: orderBy_${field.name} })`)
51
+ .writeLine(`.forEach((storeName) => neededStores.add(storeName));`);
52
+ });
53
+ }
54
+ });
55
+ }
38
56
  //# sourceMappingURL=_getNeededStoresForFind.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_getNeededStoresForFind.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForFind.ts"],"names":[],"mappings":";;AAIA,8DAeC;AAlBD,wDAA2D;AAG3D,SAAgB,yBAAyB,CAAC,UAA4B,EAAE,KAAY;IAClF,UAAU,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE,yBAAyB;QAC/B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,sBAAsB,KAAK,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACpG,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAClE,UAAU,EAAE,kCAAkC;QAC9C,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,MAAM;iBACH,SAAS,CAAC,mEAAmE,CAAC;iBAC9E,SAAS,CAAC,qBAAqB,KAAK,CAAC,IAAI,KAAK,CAAC;iBAC/C,SAAS,CAAC,4DAA4D,CAAC,CAAC;YAC3E,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACvC,MAAM,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QAC3C,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAuB,EAAE,KAAY;IACpE,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IAC5E,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC/B,MAAM,CAAC,SAAS,CAAC,sBAAsB,KAAK,CAAC,IAAI,uBAAuB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YAChG,MAAM;iBACH,SAAS,CAAC,qBAAqB,KAAK,CAAC,IAAI,KAAK,CAAC;iBAC/C,SAAS,CAAC,4BAA4B,KAAK,CAAC,IAAI,gBAAgB,CAAC;iBACjE,KAAK,CAAC,GAAG,EAAE;gBACV,MAAM,CAAC,SAAS,CACd,eAAe,IAAA,mBAAW,EAAC,KAAK,CAAC,IAAI,CAAC,yCAAyC,KAAK,CAAC,IAAI,wDAAwD,CAClJ,CAAC;YACJ,CAAC,CAAC;iBACD,SAAS,CAAC,6BAA6B,KAAK,CAAC,IAAI,gBAAgB,CAAC;iBAClE,KAAK,CAAC,GAAG,EAAE;gBACV,MAAM,CAAC,SAAS,CACd,eAAe,IAAA,mBAAW,EAAC,KAAK,CAAC,IAAI,CAAC,0CAA0C,KAAK,CAAC,IAAI,wDAAwD,CACnJ,CAAC;YACJ,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"_getNeededStoresForFind.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/utils/_getNeededStoresForFind.ts"],"names":[],"mappings":";;AAIA,8DAgBC;AAnBD,wDAA2D;AAG3D,SAAgB,yBAAyB,CAAC,UAA4B,EAAE,KAAY;IAClF,UAAU,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE,yBAAyB;QAC/B,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,sBAAsB,KAAK,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACpG,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAClE,UAAU,EAAE,kCAAkC;QAC9C,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,MAAM;iBACH,SAAS,CAAC,mEAAmE,CAAC;iBAC9E,SAAS,CAAC,qBAAqB,KAAK,CAAC,IAAI,KAAK,CAAC;iBAC/C,SAAS,CAAC,4DAA4D,CAAC,CAAC;YAC3E,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACrC,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACvC,MAAM,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QAC3C,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAuB,EAAE,KAAY;IACpE,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IAC5E,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC/B,MAAM,CAAC,SAAS,CAAC,sBAAsB,KAAK,CAAC,IAAI,uBAAuB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YAChG,MAAM;iBACH,SAAS,CAAC,qBAAqB,KAAK,CAAC,IAAI,KAAK,CAAC;iBAC/C,SAAS,CAAC,4BAA4B,KAAK,CAAC,IAAI,gBAAgB,CAAC;iBACjE,KAAK,CAAC,GAAG,EAAE;gBACV,MAAM,CAAC,SAAS,CACd,eAAe,IAAA,mBAAW,EAAC,KAAK,CAAC,IAAI,CAAC,yCAAyC,KAAK,CAAC,IAAI,wDAAwD,CAClJ,CAAC;YACJ,CAAC,CAAC;iBACD,SAAS,CAAC,6BAA6B,KAAK,CAAC,IAAI,gBAAgB,CAAC;iBAClE,KAAK,CAAC,GAAG,EAAE;gBACV,MAAM,CAAC,SAAS,CACd,eAAe,IAAA,mBAAW,EAAC,KAAK,CAAC,IAAI,CAAC,0CAA0C,KAAK,CAAC,IAAI,wDAAwD,CACnJ,CAAC;YACJ,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAuB,EAAE,KAAY;IAClE,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IAC5E,MAAM,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACjD,MAAM,CAAC,SAAS,CAAC,yDAAyD,CAAC,CAAC;QAC5E,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;YACnC,MAAM;iBACH,SAAS,CAAC,iBAAiB,KAAK,CAAC,IAAI,sCAAsC,KAAK,CAAC,IAAI,IAAI,CAAC;iBAC1F,SAAS,CAAC,eAAe,KAAK,CAAC,IAAI,GAAG,CAAC;iBACvC,KAAK,CAAC,GAAG,EAAE;gBACV,MAAM;qBACH,SAAS,CAAC,eAAe,IAAA,mBAAW,EAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;qBACnD,SAAS,CAAC,+CAA+C,KAAK,CAAC,IAAI,KAAK,CAAC;qBACzE,SAAS,CAAC,uDAAuD,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;QACP,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addResolveOrderByKey = addResolveOrderByKey;
4
+ const utils_1 = require("../../../../../helpers/utils");
5
+ function addResolveOrderByKey(modelClass, model, models) {
6
+ modelClass.addMethod({
7
+ name: "_resolveOrderByKey",
8
+ isAsync: true,
9
+ parameters: [
10
+ { name: "record", type: `Prisma.Result<Prisma.${model.name}Delegate, object, "findFirstOrThrow">` },
11
+ { name: "orderByInput", type: `Prisma.${model.name}OrderByWithRelationInput` },
12
+ { name: "tx", type: "IDBUtils.TransactionType" },
13
+ ],
14
+ returnType: "Promise<unknown>",
15
+ statements: (writer) => {
16
+ addScalarResolution(writer, model);
17
+ addOneToOneResolution(writer, model, models);
18
+ addOneToManyResolution(writer, model, models);
19
+ },
20
+ });
21
+ }
22
+ function addScalarResolution(writer, model) {
23
+ const scalarFields = model.fields.filter(({ kind }) => kind !== "object");
24
+ for (const field of scalarFields) {
25
+ writer.writeLine(`if (orderByInput.${field.name})`).block(() => {
26
+ writer.writeLine(`return record.${field.name};`);
27
+ });
28
+ }
29
+ }
30
+ function addOneToOneResolution(writer, model, models) {
31
+ var _a;
32
+ const oneToOneRelationFields = model.fields.filter(({ kind, isList }) => kind === "object" && !isList);
33
+ for (const field of oneToOneRelationFields) {
34
+ let otherRecordField, recordField;
35
+ if ((_a = field.relationFromFields) === null || _a === void 0 ? void 0 : _a.length) {
36
+ otherRecordField = field.relationToFields.at(0);
37
+ recordField = field.relationFromFields.at(0);
38
+ }
39
+ else {
40
+ const otherField = models
41
+ .flatMap(({ fields }) => fields)
42
+ .find((_field) => _field !== field && _field.relationName === field.relationName);
43
+ otherRecordField = otherField.relationFromFields.at(0);
44
+ recordField = otherField.relationToFields.at(0);
45
+ }
46
+ const nestedRecordQuery = `await this.client.${(0, utils_1.toCamelCase)(field.type)}.findFirstOrThrow({ where: { ${otherRecordField}: record.${recordField} } })`;
47
+ let returnValue = `await this.client.${(0, utils_1.toCamelCase)(field.type)}._resolveOrderByKey(${nestedRecordQuery}, orderByInput.${field.name}, tx);`;
48
+ if (!field.isRequired) {
49
+ returnValue = `record.${recordField} === null ? null : ` + returnValue;
50
+ }
51
+ writer.writeLine(`if (orderByInput.${field.name})`).block(() => {
52
+ writer.writeLine(`return ${returnValue}`);
53
+ });
54
+ }
55
+ }
56
+ function addOneToManyResolution(writer, model, models) {
57
+ const oneToManyRelationFields = model.fields.filter(({ kind, isList }) => kind === "object" && isList);
58
+ for (const field of oneToManyRelationFields) {
59
+ const otherField = models
60
+ .flatMap(({ fields }) => fields)
61
+ .find((_field) => _field !== field && _field.relationName === field.relationName);
62
+ const pkOfOther = otherField.relationFromFields.at(0);
63
+ const fkToOther = otherField.relationToFields.at(0);
64
+ writer.writeLine(`if (orderByInput.${field.name})`).block(() => {
65
+ writer.writeLine(`return await this.client.${(0, utils_1.toCamelCase)(field.type)}.count({ where: { ${pkOfOther}: record.${fkToOther} } }, tx);`);
66
+ });
67
+ }
68
+ }
69
+ //# sourceMappingURL=_resolveOrderByKey.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_resolveOrderByKey.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/utils/_resolveOrderByKey.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addResolveSortOrder = addResolveSortOrder;
4
+ const utils_1 = require("../../../../../helpers/utils");
5
+ function addResolveSortOrder(modelClass, model) {
6
+ modelClass.addMethod({
7
+ name: "_resolveSortOrder",
8
+ parameters: [{ name: "orderByInput", type: `Prisma.${model.name}OrderByWithRelationInput` }],
9
+ returnType: "Prisma.SortOrder | Prisma.SortOrderInput",
10
+ statements: (writer) => {
11
+ addScalarResolution(writer, model);
12
+ addOneToOneRelationResolution(writer, model);
13
+ addOneToManyRelationResolution(writer, model);
14
+ writer.writeLine(`throw new Error("No field in orderBy clause");`);
15
+ },
16
+ });
17
+ }
18
+ function addScalarResolution(writer, model) {
19
+ const scalarFields = model.fields.filter(({ kind }) => kind !== "object");
20
+ for (const field of scalarFields) {
21
+ writer.writeLine(`if (orderByInput.${field.name}) return orderByInput.${field.name}`);
22
+ }
23
+ }
24
+ function addOneToOneRelationResolution(writer, model) {
25
+ const relationFields = model.fields.filter(({ kind, isList }) => kind === "object" && !isList);
26
+ for (const field of relationFields) {
27
+ writer.writeLine(`if (orderByInput.${field.name})`).block(() => {
28
+ writer.writeLine(`return this.client.${(0, utils_1.toCamelCase)(field.type)}._resolveSortOrder(orderByInput.${field.name});`);
29
+ });
30
+ }
31
+ }
32
+ function addOneToManyRelationResolution(writer, model) {
33
+ const relationFields = model.fields.filter(({ kind, isList }) => kind === "object" && isList);
34
+ for (const field of relationFields) {
35
+ writer.writeLine(`if (orderByInput.${field.name}?._count)`).block(() => {
36
+ writer.writeLine(`return orderByInput.${field.name}._count;`);
37
+ });
38
+ }
39
+ }
40
+ //# sourceMappingURL=_resolveSortOrder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_resolveSortOrder.js","sourceRoot":"","sources":["../../../../../../src/fileCreators/prisma-idb-client/classes/models/utils/_resolveSortOrder.ts"],"names":[],"mappings":";;AAIA,kDAYC;AAdD,wDAA2D;AAE3D,SAAgB,mBAAmB,CAAC,UAA4B,EAAE,KAAY;IAC5E,UAAU,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE,mBAAmB;QACzB,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,KAAK,CAAC,IAAI,0BAA0B,EAAE,CAAC;QAC5F,UAAU,EAAE,0CAA0C;QACtD,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACnC,6BAA6B,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC7C,8BAA8B,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9C,MAAM,CAAC,SAAS,CAAC,gDAAgD,CAAC,CAAC;QACrE,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAuB,EAAE,KAAY;IAChE,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IAC1E,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,MAAM,CAAC,SAAS,CAAC,oBAAoB,KAAK,CAAC,IAAI,yBAAyB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACxF,CAAC;AACH,CAAC;AAED,SAAS,6BAA6B,CAAC,MAAuB,EAAE,KAAY;IAC1E,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/F,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;QACnC,MAAM,CAAC,SAAS,CAAC,oBAAoB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YAC7D,MAAM,CAAC,SAAS,CAAC,sBAAsB,IAAA,mBAAW,EAAC,KAAK,CAAC,IAAI,CAAC,mCAAmC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC;QACnH,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,8BAA8B,CAAC,MAAuB,EAAE,KAAY;IAC3E,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,CAAC;IAC9F,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;QACnC,MAAM,CAAC,SAAS,CAAC,oBAAoB,KAAK,CAAC,IAAI,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACrE,MAAM,CAAC,SAAS,CAAC,uBAAuB,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@prisma-idb/idb-client-generator",
3
3
  "description": "Generate types for idb from prisma schema",
4
- "version": "0.4.0",
4
+ "version": "0.5.0",
5
5
  "main": "dist/generator.js",
6
6
  "license": "MIT",
7
7
  "bin": {