@cerebruminc/yates 3.8.1-beta.dangerous.df7fdbd → 4.0.0-beta.dangerous.89d3ed2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## [4.0.0](https://github.com/cerebruminc/yates/compare/v3.8.1...v4.0.0) (2026-02-25)
4
+
5
+
6
+ ### ⚠ BREAKING CHANGES
7
+
8
+ * refactor permissions to query filters
9
+
10
+ ### Features
11
+
12
+ * refactor permissions to query filters ([06d1007](https://github.com/cerebruminc/yates/commit/06d10079c460e15a787516d9301daf28ce776c20))
13
+
3
14
  ## [3.8.1](https://github.com/cerebruminc/yates/compare/v3.8.0...v3.8.1) (2025-11-15)
4
15
 
5
16
 
package/README.md CHANGED
@@ -53,7 +53,7 @@ For Yates to be able to apply the correct abilities for each request, you must p
53
53
  Yates applies permissions recursively across nested relations:
54
54
 
55
55
  - **Reads (`include`/`select`)**: Yates walks the selection tree and injects read filters for each related model. If the role has no read ability for a related model, the selection is dropped.
56
- - **Writes (nested create/update/delete/upsert)**: Yates validates each nested operation against the related model's abilities. For example, nested creates are checked against insert filters, and nested updates/deletes verify the target record is permitted before executing.
56
+ - **Writes (nested create/update/delete/upsert/connect/set/disconnect)**: Yates validates nested operations against the related model's abilities. Nested creates are checked against insert filters, nested updates/deletes verify target record permissions, and connect-style relation mutations in update paths (`connect`, `set`, `disconnect` with target selectors) are checked against related-model update abilities before execution.
57
57
 
58
58
  For accessing the context of a Prisma query, we recommend using a package like [cls-hooked](https://www.npmjs.com/package/cls-hooked) to store the context in the current session.
59
59
 
package/dist/index.js CHANGED
@@ -73,6 +73,15 @@ var __read = (this && this.__read) || function (o, n) {
73
73
  }
74
74
  return ar;
75
75
  };
76
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
77
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
78
+ if (ar || !(i in from)) {
79
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
80
+ ar[i] = from[i];
81
+ }
82
+ }
83
+ return to.concat(ar || Array.prototype.slice.call(from));
84
+ };
76
85
  var __importDefault = (this && this.__importDefault) || function (mod) {
77
86
  return (mod && mod.__esModule) ? mod : { "default": mod };
78
87
  };
@@ -537,16 +546,26 @@ var resolveExpression = function (prisma, runtimeDataModel, model, expression, c
537
546
  }
538
547
  });
539
548
  }); };
549
+ var dedupeAbilityList = function (abilityList) {
550
+ var seen = new Set();
551
+ return abilityList.filter(function (ability) {
552
+ if (seen.has(ability)) {
553
+ return false;
554
+ }
555
+ seen.add(ability);
556
+ return true;
557
+ });
558
+ };
540
559
  var buildRoleAbilities = function (roles, allAbilities) {
541
560
  var e_5, _a;
542
561
  var roleAbilities = {};
543
562
  try {
544
563
  for (var _b = __values(Object.entries(roles)), _c = _b.next(); !_c.done; _c = _b.next()) {
545
564
  var _d = __read(_c.value, 2), role = _d[0], abilities = _d[1];
546
- roleAbilities[role] =
547
- abilities === "*"
548
- ? allAbilities
549
- : abilities;
565
+ var abilityList = abilities === "*"
566
+ ? allAbilities
567
+ : abilities;
568
+ roleAbilities[role] = dedupeAbilityList(abilityList);
550
569
  }
551
570
  }
552
571
  catch (e_5_1) { e_5 = { error: e_5_1 }; }
@@ -710,376 +729,496 @@ var assertRecordAllowed = function (prisma, runtimeDataModel, roleAbilities, rol
710
729
  }
711
730
  });
712
731
  }); };
713
- var applyNestedWrites = function (prisma, runtimeDataModel, roleAbilities, role, model, data, context) { return __awaiter(void 0, void 0, void 0, function () {
714
- var fields, _loop_3, _a, _b, _c, field, value, e_8_1;
715
- var e_8, _d;
716
- var _e, _f, _g, _h, _j, _k;
717
- return __generator(this, function (_l) {
718
- switch (_l.label) {
732
+ var assertConnectStyleTargetsAllowed = function (prisma, runtimeDataModel, roleAbilities, role, model, targetInput, context) { return __awaiter(void 0, void 0, void 0, function () {
733
+ var items, abilityFilters, abilityWhere, uniqueItems, delegate, combinedWhere, matchedCount;
734
+ var _a, _b;
735
+ return __generator(this, function (_c) {
736
+ switch (_c.label) {
719
737
  case 0:
720
- if (!isPlainObject(data))
738
+ items = (Array.isArray(targetInput) ? targetInput : [targetInput]).filter(function (item) {
739
+ return isPlainObject(item) && !isEmptyWhere(item);
740
+ });
741
+ if (items.length === 0)
721
742
  return [2 /*return*/];
722
- fields = extractModelFields(runtimeDataModel, model);
723
- _loop_3 = function (field, value) {
724
- var fieldMeta, relatedModel, handleCreate, handleUpdate, handleDelete, items, items_2, items_2_1, item, filters, abilityWhere, e_9_1, items, items_3, items_3_1, item, where, canUpdate, e_10_1, items, items_4, items_4_1, item, filters, abilityWhere, _m, _o, key, merged, _p, _q, key, e_11_1;
725
- var e_9, _r, e_10, _s, e_11, _t, e_12, _u, e_13, _v;
726
- return __generator(this, function (_w) {
727
- switch (_w.label) {
728
- case 0:
729
- fieldMeta = fields.find(function (f) { return f.name === field; });
730
- if (!fieldMeta || fieldMeta.kind !== "object")
731
- return [2 /*return*/, "continue"];
732
- relatedModel = fieldMeta.type;
733
- if (!isPlainObject(value))
734
- return [2 /*return*/, "continue"];
735
- handleCreate = function (createValue) { return __awaiter(void 0, void 0, void 0, function () {
736
- var items, items_5, items_5_1, item, e_14_1;
737
- var e_14, _a;
738
- return __generator(this, function (_b) {
739
- switch (_b.label) {
740
- case 0:
741
- items = Array.isArray(createValue) ? createValue : [createValue];
742
- _b.label = 1;
743
- case 1:
744
- _b.trys.push([1, 7, 8, 9]);
745
- items_5 = __values(items), items_5_1 = items_5.next();
746
- _b.label = 2;
747
- case 2:
748
- if (!!items_5_1.done) return [3 /*break*/, 6];
749
- item = items_5_1.value;
750
- if (!isPlainObject(item)) return [3 /*break*/, 5];
751
- return [4 /*yield*/, assertCreateAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item, context)];
752
- case 3:
753
- _b.sent();
754
- return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item, context)];
755
- case 4:
756
- _b.sent();
757
- _b.label = 5;
758
- case 5:
759
- items_5_1 = items_5.next();
760
- return [3 /*break*/, 2];
761
- case 6: return [3 /*break*/, 9];
762
- case 7:
763
- e_14_1 = _b.sent();
764
- e_14 = { error: e_14_1 };
765
- return [3 /*break*/, 9];
766
- case 8:
767
- try {
768
- if (items_5_1 && !items_5_1.done && (_a = items_5.return)) _a.call(items_5);
769
- }
770
- finally { if (e_14) throw e_14.error; }
771
- return [7 /*endfinally*/];
772
- case 9: return [2 /*return*/];
773
- }
774
- });
775
- }); };
776
- handleUpdate = function (updateValue) { return __awaiter(void 0, void 0, void 0, function () {
777
- var items, items_6, items_6_1, item, where, allowed, e_15_1;
778
- var e_15, _a;
779
- var _b;
780
- return __generator(this, function (_c) {
781
- switch (_c.label) {
782
- case 0:
783
- items = Array.isArray(updateValue) ? updateValue : [updateValue];
784
- _c.label = 1;
785
- case 1:
786
- _c.trys.push([1, 7, 8, 9]);
787
- items_6 = __values(items), items_6_1 = items_6.next();
788
- _c.label = 2;
789
- case 2:
790
- if (!!items_6_1.done) return [3 /*break*/, 6];
791
- item = items_6_1.value;
792
- if (!isPlainObject(item))
793
- return [3 /*break*/, 5];
794
- where = (_b = item.where) !== null && _b !== void 0 ? _b : {};
795
- return [4 /*yield*/, assertRecordAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "UPDATE", where, context)];
796
- case 3:
797
- allowed = _c.sent();
798
- if (!allowed) {
799
- throw updateNotFoundError();
800
- }
801
- if (!item.data) return [3 /*break*/, 5];
802
- return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.data, context)];
803
- case 4:
804
- _c.sent();
805
- _c.label = 5;
806
- case 5:
807
- items_6_1 = items_6.next();
808
- return [3 /*break*/, 2];
809
- case 6: return [3 /*break*/, 9];
810
- case 7:
811
- e_15_1 = _c.sent();
812
- e_15 = { error: e_15_1 };
813
- return [3 /*break*/, 9];
814
- case 8:
815
- try {
816
- if (items_6_1 && !items_6_1.done && (_a = items_6.return)) _a.call(items_6);
817
- }
818
- finally { if (e_15) throw e_15.error; }
819
- return [7 /*endfinally*/];
820
- case 9: return [2 /*return*/];
821
- }
822
- });
823
- }); };
824
- handleDelete = function (deleteValue) { return __awaiter(void 0, void 0, void 0, function () {
825
- var items, items_7, items_7_1, item, where, allowed, e_16_1;
826
- var e_16, _a;
827
- return __generator(this, function (_b) {
828
- switch (_b.label) {
829
- case 0:
830
- items = Array.isArray(deleteValue) ? deleteValue : [deleteValue];
831
- _b.label = 1;
832
- case 1:
833
- _b.trys.push([1, 6, 7, 8]);
834
- items_7 = __values(items), items_7_1 = items_7.next();
835
- _b.label = 2;
836
- case 2:
837
- if (!!items_7_1.done) return [3 /*break*/, 5];
838
- item = items_7_1.value;
839
- where = isPlainObject(item) ? item : {};
840
- return [4 /*yield*/, assertRecordAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "DELETE", where, context)];
841
- case 3:
842
- allowed = _b.sent();
843
- if (!allowed) {
844
- throw deleteNotFoundError();
845
- }
846
- _b.label = 4;
847
- case 4:
848
- items_7_1 = items_7.next();
849
- return [3 /*break*/, 2];
850
- case 5: return [3 /*break*/, 8];
851
- case 6:
852
- e_16_1 = _b.sent();
853
- e_16 = { error: e_16_1 };
854
- return [3 /*break*/, 8];
855
- case 7:
856
- try {
857
- if (items_7_1 && !items_7_1.done && (_a = items_7.return)) _a.call(items_7);
858
- }
859
- finally { if (e_16) throw e_16.error; }
860
- return [7 /*endfinally*/];
861
- case 8: return [2 /*return*/];
862
- }
863
- });
864
- }); };
865
- if (!value.create) return [3 /*break*/, 2];
866
- return [4 /*yield*/, handleCreate(value.create)];
867
- case 1:
868
- _w.sent();
869
- _w.label = 2;
870
- case 2:
871
- if (!((_e = value.createMany) === null || _e === void 0 ? void 0 : _e.data)) return [3 /*break*/, 4];
872
- return [4 /*yield*/, handleCreate(value.createMany.data)];
873
- case 3:
874
- _w.sent();
875
- _w.label = 4;
876
- case 4:
877
- if (!value.update) return [3 /*break*/, 6];
878
- return [4 /*yield*/, handleUpdate(value.update)];
879
- case 5:
880
- _w.sent();
881
- _w.label = 6;
882
- case 6:
883
- if (!value.updateMany) return [3 /*break*/, 15];
884
- items = Array.isArray(value.updateMany)
885
- ? value.updateMany
886
- : [value.updateMany];
887
- _w.label = 7;
888
- case 7:
889
- _w.trys.push([7, 13, 14, 15]);
890
- items_2 = (e_9 = void 0, __values(items)), items_2_1 = items_2.next();
891
- _w.label = 8;
892
- case 8:
893
- if (!!items_2_1.done) return [3 /*break*/, 12];
894
- item = items_2_1.value;
895
- if (!isPlainObject(item))
896
- return [3 /*break*/, 11];
897
- return [4 /*yield*/, getAbilityFilters(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "UPDATE", context)];
898
- case 9:
899
- filters = (_f = (_w.sent())) !== null && _f !== void 0 ? _f : [];
900
- abilityWhere = combineAbilityFilters(filters);
901
- if (!abilityWhere) {
902
- item.where = denyWhere(runtimeDataModel, relatedModel);
903
- }
904
- else {
905
- item.where = (_h = mergeWhere((_g = item.where) !== null && _g !== void 0 ? _g : {}, abilityWhere)) !== null && _h !== void 0 ? _h : item.where;
906
- }
907
- if (!item.data) return [3 /*break*/, 11];
908
- return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.data, context)];
909
- case 10:
910
- _w.sent();
911
- _w.label = 11;
912
- case 11:
913
- items_2_1 = items_2.next();
914
- return [3 /*break*/, 8];
915
- case 12: return [3 /*break*/, 15];
916
- case 13:
917
- e_9_1 = _w.sent();
918
- e_9 = { error: e_9_1 };
919
- return [3 /*break*/, 15];
920
- case 14:
921
- try {
922
- if (items_2_1 && !items_2_1.done && (_r = items_2.return)) _r.call(items_2);
923
- }
924
- finally { if (e_9) throw e_9.error; }
925
- return [7 /*endfinally*/];
926
- case 15:
927
- if (!value.upsert) return [3 /*break*/, 29];
928
- items = Array.isArray(value.upsert) ? value.upsert : [value.upsert];
929
- _w.label = 16;
930
- case 16:
931
- _w.trys.push([16, 27, 28, 29]);
932
- items_3 = (e_10 = void 0, __values(items)), items_3_1 = items_3.next();
933
- _w.label = 17;
934
- case 17:
935
- if (!!items_3_1.done) return [3 /*break*/, 26];
936
- item = items_3_1.value;
937
- if (!isPlainObject(item))
938
- return [3 /*break*/, 25];
939
- where = (_j = item.where) !== null && _j !== void 0 ? _j : {};
940
- return [4 /*yield*/, assertRecordAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "UPDATE", where, context)];
941
- case 18:
942
- canUpdate = _w.sent();
943
- if (!canUpdate) return [3 /*break*/, 21];
944
- if (!item.update) return [3 /*break*/, 20];
945
- return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.update, context)];
946
- case 19:
947
- _w.sent();
948
- _w.label = 20;
949
- case 20: return [3 /*break*/, 25];
950
- case 21:
951
- if (!item.create) return [3 /*break*/, 24];
952
- return [4 /*yield*/, assertCreateAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.create, context)];
953
- case 22:
954
- _w.sent();
955
- return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.create, context)];
956
- case 23:
957
- _w.sent();
958
- return [3 /*break*/, 25];
959
- case 24: throw updateNotFoundError();
960
- case 25:
961
- items_3_1 = items_3.next();
962
- return [3 /*break*/, 17];
963
- case 26: return [3 /*break*/, 29];
964
- case 27:
965
- e_10_1 = _w.sent();
966
- e_10 = { error: e_10_1 };
967
- return [3 /*break*/, 29];
968
- case 28:
969
- try {
970
- if (items_3_1 && !items_3_1.done && (_s = items_3.return)) _s.call(items_3);
971
- }
972
- finally { if (e_10) throw e_10.error; }
973
- return [7 /*endfinally*/];
974
- case 29:
975
- if (!value.delete) return [3 /*break*/, 31];
976
- return [4 /*yield*/, handleDelete(value.delete)];
977
- case 30:
978
- _w.sent();
979
- _w.label = 31;
980
- case 31:
981
- if (!value.deleteMany) return [3 /*break*/, 39];
982
- items = Array.isArray(value.deleteMany)
983
- ? value.deleteMany
984
- : [value.deleteMany];
985
- _w.label = 32;
986
- case 32:
987
- _w.trys.push([32, 37, 38, 39]);
988
- items_4 = (e_11 = void 0, __values(items)), items_4_1 = items_4.next();
989
- _w.label = 33;
990
- case 33:
991
- if (!!items_4_1.done) return [3 /*break*/, 36];
992
- item = items_4_1.value;
993
- if (!isPlainObject(item))
994
- return [3 /*break*/, 35];
995
- return [4 /*yield*/, getAbilityFilters(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "DELETE", context)];
996
- case 34:
997
- filters = (_k = (_w.sent())) !== null && _k !== void 0 ? _k : [];
998
- abilityWhere = combineAbilityFilters(filters);
999
- if (!abilityWhere) {
743
+ return [4 /*yield*/, getAbilityFilters(prisma, runtimeDataModel, roleAbilities, role, model, "UPDATE", context)];
744
+ case 1:
745
+ abilityFilters = (_a = (_c.sent())) !== null && _a !== void 0 ? _a : [];
746
+ abilityWhere = combineAbilityFilters(abilityFilters);
747
+ if (!abilityWhere) {
748
+ throw updateNotFoundError();
749
+ }
750
+ if (isEmptyWhere(abilityWhere))
751
+ return [2 /*return*/];
752
+ uniqueItems = Array.from(new Map(items.map(function (item) { return [JSON.stringify(item), item]; })).values());
753
+ delegate = prisma[lowerModelName(model)];
754
+ combinedWhere = (_b = mergeWhere({ OR: uniqueItems }, abilityWhere)) !== null && _b !== void 0 ? _b : {
755
+ OR: uniqueItems,
756
+ };
757
+ return [4 /*yield*/, delegate.count({ where: combinedWhere })];
758
+ case 2:
759
+ matchedCount = _c.sent();
760
+ if (matchedCount < uniqueItems.length) {
761
+ throw updateNotFoundError();
762
+ }
763
+ return [2 /*return*/];
764
+ }
765
+ });
766
+ }); };
767
+ var assertCurrentRelationTargetsAllowed = function (prisma, runtimeDataModel, roleAbilities, role, model, fieldMeta, currentWhere, context) { return __awaiter(void 0, void 0, void 0, function () {
768
+ var relatedModel, relatedIdField, delegate, currentRecord, currentRelationValue, currentTargets;
769
+ var _a, _b;
770
+ return __generator(this, function (_c) {
771
+ switch (_c.label) {
772
+ case 0:
773
+ if (!currentWhere || isEmptyWhere(currentWhere))
774
+ return [2 /*return*/];
775
+ relatedModel = fieldMeta.type;
776
+ relatedIdField = getIdField(runtimeDataModel, relatedModel);
777
+ if (!relatedIdField)
778
+ return [2 /*return*/];
779
+ delegate = prisma[lowerModelName(model)];
780
+ return [4 /*yield*/, delegate.findFirst({
781
+ where: currentWhere,
782
+ select: (_a = {},
783
+ _a[fieldMeta.name] = {
784
+ select: (_b = {},
785
+ _b[relatedIdField] = true,
786
+ _b),
787
+ },
788
+ _a),
789
+ })];
790
+ case 1:
791
+ currentRecord = _c.sent();
792
+ if (!currentRecord)
793
+ return [2 /*return*/];
794
+ currentRelationValue = currentRecord[fieldMeta.name];
795
+ currentTargets = fieldMeta.isList
796
+ ? Array.isArray(currentRelationValue)
797
+ ? currentRelationValue
798
+ : []
799
+ : currentRelationValue
800
+ ? [currentRelationValue]
801
+ : [];
802
+ if (currentTargets.length === 0)
803
+ return [2 /*return*/];
804
+ return [4 /*yield*/, assertConnectStyleTargetsAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, currentTargets, context)];
805
+ case 2:
806
+ _c.sent();
807
+ return [2 /*return*/];
808
+ }
809
+ });
810
+ }); };
811
+ var applyNestedWrites = function (prisma_1, runtimeDataModel_1, roleAbilities_1, role_1, model_1, data_1, context_1) {
812
+ var args_1 = [];
813
+ for (var _i = 7; _i < arguments.length; _i++) {
814
+ args_1[_i - 7] = arguments[_i];
815
+ }
816
+ return __awaiter(void 0, __spreadArray([prisma_1, runtimeDataModel_1, roleAbilities_1, role_1, model_1, data_1, context_1], __read(args_1), false), void 0, function (prisma, runtimeDataModel, roleAbilities, role, model, data, context, options) {
817
+ var mode, currentWhere, shouldCheckRelationMutations, fields, _loop_3, _a, _b, _c, field, value, e_8_1;
818
+ var e_8, _d;
819
+ var _e, _f, _g, _h, _j, _k, _l, _m;
820
+ if (options === void 0) { options = {}; }
821
+ return __generator(this, function (_o) {
822
+ switch (_o.label) {
823
+ case 0:
824
+ mode = (_e = options.mode) !== null && _e !== void 0 ? _e : "create";
825
+ currentWhere = options.currentWhere;
826
+ shouldCheckRelationMutations = mode === "update";
827
+ if (!isPlainObject(data))
828
+ return [2 /*return*/];
829
+ fields = extractModelFields(runtimeDataModel, model);
830
+ _loop_3 = function (field, value) {
831
+ var fieldMeta, relatedModel, handleCreate, handleUpdate, handleDelete, items, items_2, items_2_1, item, filters, abilityWhere, e_9_1, items, items_3, items_3_1, item, where, canUpdate, e_10_1, items, items_4, items_4_1, item, filters, abilityWhere, _p, _q, key, merged, _r, _s, key, e_11_1;
832
+ var e_9, _t, e_10, _u, e_11, _v, e_12, _w, e_13, _x;
833
+ return __generator(this, function (_y) {
834
+ switch (_y.label) {
835
+ case 0:
836
+ fieldMeta = fields.find(function (f) { return f.name === field; });
837
+ if (!fieldMeta || fieldMeta.kind !== "object")
838
+ return [2 /*return*/, "continue"];
839
+ relatedModel = fieldMeta.type;
840
+ if (!isPlainObject(value))
841
+ return [2 /*return*/, "continue"];
842
+ handleCreate = function (createValue) { return __awaiter(void 0, void 0, void 0, function () {
843
+ var items, items_5, items_5_1, item, e_14_1;
844
+ var e_14, _a;
845
+ return __generator(this, function (_b) {
846
+ switch (_b.label) {
847
+ case 0:
848
+ items = Array.isArray(createValue) ? createValue : [createValue];
849
+ _b.label = 1;
850
+ case 1:
851
+ _b.trys.push([1, 7, 8, 9]);
852
+ items_5 = __values(items), items_5_1 = items_5.next();
853
+ _b.label = 2;
854
+ case 2:
855
+ if (!!items_5_1.done) return [3 /*break*/, 6];
856
+ item = items_5_1.value;
857
+ if (!isPlainObject(item)) return [3 /*break*/, 5];
858
+ return [4 /*yield*/, assertCreateAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item, context)];
859
+ case 3:
860
+ _b.sent();
861
+ return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item, context, options)];
862
+ case 4:
863
+ _b.sent();
864
+ _b.label = 5;
865
+ case 5:
866
+ items_5_1 = items_5.next();
867
+ return [3 /*break*/, 2];
868
+ case 6: return [3 /*break*/, 9];
869
+ case 7:
870
+ e_14_1 = _b.sent();
871
+ e_14 = { error: e_14_1 };
872
+ return [3 /*break*/, 9];
873
+ case 8:
874
+ try {
875
+ if (items_5_1 && !items_5_1.done && (_a = items_5.return)) _a.call(items_5);
876
+ }
877
+ finally { if (e_14) throw e_14.error; }
878
+ return [7 /*endfinally*/];
879
+ case 9: return [2 /*return*/];
880
+ }
881
+ });
882
+ }); };
883
+ handleUpdate = function (updateValue) { return __awaiter(void 0, void 0, void 0, function () {
884
+ var items, items_6, items_6_1, item, where, allowed, e_15_1;
885
+ var e_15, _a;
886
+ var _b;
887
+ return __generator(this, function (_c) {
888
+ switch (_c.label) {
889
+ case 0:
890
+ items = Array.isArray(updateValue) ? updateValue : [updateValue];
891
+ _c.label = 1;
892
+ case 1:
893
+ _c.trys.push([1, 7, 8, 9]);
894
+ items_6 = __values(items), items_6_1 = items_6.next();
895
+ _c.label = 2;
896
+ case 2:
897
+ if (!!items_6_1.done) return [3 /*break*/, 6];
898
+ item = items_6_1.value;
899
+ if (!isPlainObject(item))
900
+ return [3 /*break*/, 5];
901
+ where = (_b = item.where) !== null && _b !== void 0 ? _b : {};
902
+ return [4 /*yield*/, assertRecordAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "UPDATE", where, context)];
903
+ case 3:
904
+ allowed = _c.sent();
905
+ if (!allowed) {
906
+ throw updateNotFoundError();
907
+ }
908
+ if (!item.data) return [3 /*break*/, 5];
909
+ return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.data, context, __assign(__assign({}, options), { currentWhere: where }))];
910
+ case 4:
911
+ _c.sent();
912
+ _c.label = 5;
913
+ case 5:
914
+ items_6_1 = items_6.next();
915
+ return [3 /*break*/, 2];
916
+ case 6: return [3 /*break*/, 9];
917
+ case 7:
918
+ e_15_1 = _c.sent();
919
+ e_15 = { error: e_15_1 };
920
+ return [3 /*break*/, 9];
921
+ case 8:
922
+ try {
923
+ if (items_6_1 && !items_6_1.done && (_a = items_6.return)) _a.call(items_6);
924
+ }
925
+ finally { if (e_15) throw e_15.error; }
926
+ return [7 /*endfinally*/];
927
+ case 9: return [2 /*return*/];
928
+ }
929
+ });
930
+ }); };
931
+ handleDelete = function (deleteValue) { return __awaiter(void 0, void 0, void 0, function () {
932
+ var items, items_7, items_7_1, item, where, allowed, e_16_1;
933
+ var e_16, _a;
934
+ return __generator(this, function (_b) {
935
+ switch (_b.label) {
936
+ case 0:
937
+ items = Array.isArray(deleteValue) ? deleteValue : [deleteValue];
938
+ _b.label = 1;
939
+ case 1:
940
+ _b.trys.push([1, 6, 7, 8]);
941
+ items_7 = __values(items), items_7_1 = items_7.next();
942
+ _b.label = 2;
943
+ case 2:
944
+ if (!!items_7_1.done) return [3 /*break*/, 5];
945
+ item = items_7_1.value;
946
+ where = isPlainObject(item) ? item : {};
947
+ return [4 /*yield*/, assertRecordAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "DELETE", where, context)];
948
+ case 3:
949
+ allowed = _b.sent();
950
+ if (!allowed) {
951
+ throw deleteNotFoundError();
952
+ }
953
+ _b.label = 4;
954
+ case 4:
955
+ items_7_1 = items_7.next();
956
+ return [3 /*break*/, 2];
957
+ case 5: return [3 /*break*/, 8];
958
+ case 6:
959
+ e_16_1 = _b.sent();
960
+ e_16 = { error: e_16_1 };
961
+ return [3 /*break*/, 8];
962
+ case 7:
963
+ try {
964
+ if (items_7_1 && !items_7_1.done && (_a = items_7.return)) _a.call(items_7);
965
+ }
966
+ finally { if (e_16) throw e_16.error; }
967
+ return [7 /*endfinally*/];
968
+ case 8: return [2 /*return*/];
969
+ }
970
+ });
971
+ }); };
972
+ if (!value.create) return [3 /*break*/, 2];
973
+ return [4 /*yield*/, handleCreate(value.create)];
974
+ case 1:
975
+ _y.sent();
976
+ _y.label = 2;
977
+ case 2:
978
+ if (!((_f = value.createMany) === null || _f === void 0 ? void 0 : _f.data)) return [3 /*break*/, 4];
979
+ return [4 /*yield*/, handleCreate(value.createMany.data)];
980
+ case 3:
981
+ _y.sent();
982
+ _y.label = 4;
983
+ case 4:
984
+ if (!value.update) return [3 /*break*/, 6];
985
+ return [4 /*yield*/, handleUpdate(value.update)];
986
+ case 5:
987
+ _y.sent();
988
+ _y.label = 6;
989
+ case 6:
990
+ if (!value.updateMany) return [3 /*break*/, 15];
991
+ items = Array.isArray(value.updateMany)
992
+ ? value.updateMany
993
+ : [value.updateMany];
994
+ _y.label = 7;
995
+ case 7:
996
+ _y.trys.push([7, 13, 14, 15]);
997
+ items_2 = (e_9 = void 0, __values(items)), items_2_1 = items_2.next();
998
+ _y.label = 8;
999
+ case 8:
1000
+ if (!!items_2_1.done) return [3 /*break*/, 12];
1001
+ item = items_2_1.value;
1002
+ if (!isPlainObject(item))
1003
+ return [3 /*break*/, 11];
1004
+ return [4 /*yield*/, getAbilityFilters(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "UPDATE", context)];
1005
+ case 9:
1006
+ filters = (_g = (_y.sent())) !== null && _g !== void 0 ? _g : [];
1007
+ abilityWhere = combineAbilityFilters(filters);
1008
+ if (!abilityWhere) {
1009
+ item.where = denyWhere(runtimeDataModel, relatedModel);
1010
+ }
1011
+ else {
1012
+ item.where = (_j = mergeWhere((_h = item.where) !== null && _h !== void 0 ? _h : {}, abilityWhere)) !== null && _j !== void 0 ? _j : item.where;
1013
+ }
1014
+ if (!item.data) return [3 /*break*/, 11];
1015
+ return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.data, context, __assign(__assign({}, options), { currentWhere: (_k = item.where) !== null && _k !== void 0 ? _k : {} }))];
1016
+ case 10:
1017
+ _y.sent();
1018
+ _y.label = 11;
1019
+ case 11:
1020
+ items_2_1 = items_2.next();
1021
+ return [3 /*break*/, 8];
1022
+ case 12: return [3 /*break*/, 15];
1023
+ case 13:
1024
+ e_9_1 = _y.sent();
1025
+ e_9 = { error: e_9_1 };
1026
+ return [3 /*break*/, 15];
1027
+ case 14:
1000
1028
  try {
1001
- for (_m = (e_12 = void 0, __values(Object.keys(item))), _o = _m.next(); !_o.done; _o = _m.next()) {
1002
- key = _o.value;
1003
- delete item[key];
1004
- }
1029
+ if (items_2_1 && !items_2_1.done && (_t = items_2.return)) _t.call(items_2);
1005
1030
  }
1006
- catch (e_12_1) { e_12 = { error: e_12_1 }; }
1007
- finally {
1008
- try {
1009
- if (_o && !_o.done && (_u = _m.return)) _u.call(_m);
1010
- }
1011
- finally { if (e_12) throw e_12.error; }
1031
+ finally { if (e_9) throw e_9.error; }
1032
+ return [7 /*endfinally*/];
1033
+ case 15:
1034
+ if (!value.upsert) return [3 /*break*/, 29];
1035
+ items = Array.isArray(value.upsert) ? value.upsert : [value.upsert];
1036
+ _y.label = 16;
1037
+ case 16:
1038
+ _y.trys.push([16, 27, 28, 29]);
1039
+ items_3 = (e_10 = void 0, __values(items)), items_3_1 = items_3.next();
1040
+ _y.label = 17;
1041
+ case 17:
1042
+ if (!!items_3_1.done) return [3 /*break*/, 26];
1043
+ item = items_3_1.value;
1044
+ if (!isPlainObject(item))
1045
+ return [3 /*break*/, 25];
1046
+ where = (_l = item.where) !== null && _l !== void 0 ? _l : {};
1047
+ return [4 /*yield*/, assertRecordAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "UPDATE", where, context)];
1048
+ case 18:
1049
+ canUpdate = _y.sent();
1050
+ if (!canUpdate) return [3 /*break*/, 21];
1051
+ if (!item.update) return [3 /*break*/, 20];
1052
+ return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.update, context, __assign(__assign({}, options), { currentWhere: where }))];
1053
+ case 19:
1054
+ _y.sent();
1055
+ _y.label = 20;
1056
+ case 20: return [3 /*break*/, 25];
1057
+ case 21:
1058
+ if (!item.create) return [3 /*break*/, 24];
1059
+ return [4 /*yield*/, assertCreateAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.create, context)];
1060
+ case 22:
1061
+ _y.sent();
1062
+ return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, relatedModel, item.create, context, options)];
1063
+ case 23:
1064
+ _y.sent();
1065
+ return [3 /*break*/, 25];
1066
+ case 24: throw updateNotFoundError();
1067
+ case 25:
1068
+ items_3_1 = items_3.next();
1069
+ return [3 /*break*/, 17];
1070
+ case 26: return [3 /*break*/, 29];
1071
+ case 27:
1072
+ e_10_1 = _y.sent();
1073
+ e_10 = { error: e_10_1 };
1074
+ return [3 /*break*/, 29];
1075
+ case 28:
1076
+ try {
1077
+ if (items_3_1 && !items_3_1.done && (_u = items_3.return)) _u.call(items_3);
1012
1078
  }
1013
- Object.assign(item, denyWhere(runtimeDataModel, relatedModel));
1014
- }
1015
- else {
1016
- merged = mergeWhere((0, cloneDeep_1.default)(item), abilityWhere);
1017
- if (merged && merged !== item) {
1079
+ finally { if (e_10) throw e_10.error; }
1080
+ return [7 /*endfinally*/];
1081
+ case 29:
1082
+ if (!value.delete) return [3 /*break*/, 31];
1083
+ return [4 /*yield*/, handleDelete(value.delete)];
1084
+ case 30:
1085
+ _y.sent();
1086
+ _y.label = 31;
1087
+ case 31:
1088
+ if (!value.deleteMany) return [3 /*break*/, 39];
1089
+ items = Array.isArray(value.deleteMany)
1090
+ ? value.deleteMany
1091
+ : [value.deleteMany];
1092
+ _y.label = 32;
1093
+ case 32:
1094
+ _y.trys.push([32, 37, 38, 39]);
1095
+ items_4 = (e_11 = void 0, __values(items)), items_4_1 = items_4.next();
1096
+ _y.label = 33;
1097
+ case 33:
1098
+ if (!!items_4_1.done) return [3 /*break*/, 36];
1099
+ item = items_4_1.value;
1100
+ if (!isPlainObject(item))
1101
+ return [3 /*break*/, 35];
1102
+ return [4 /*yield*/, getAbilityFilters(prisma, runtimeDataModel, roleAbilities, role, relatedModel, "DELETE", context)];
1103
+ case 34:
1104
+ filters = (_m = (_y.sent())) !== null && _m !== void 0 ? _m : [];
1105
+ abilityWhere = combineAbilityFilters(filters);
1106
+ if (!abilityWhere) {
1018
1107
  try {
1019
- for (_p = (e_13 = void 0, __values(Object.keys(item))), _q = _p.next(); !_q.done; _q = _p.next()) {
1108
+ for (_p = (e_12 = void 0, __values(Object.keys(item))), _q = _p.next(); !_q.done; _q = _p.next()) {
1020
1109
  key = _q.value;
1021
1110
  delete item[key];
1022
1111
  }
1023
1112
  }
1024
- catch (e_13_1) { e_13 = { error: e_13_1 }; }
1113
+ catch (e_12_1) { e_12 = { error: e_12_1 }; }
1025
1114
  finally {
1026
1115
  try {
1027
- if (_q && !_q.done && (_v = _p.return)) _v.call(_p);
1116
+ if (_q && !_q.done && (_w = _p.return)) _w.call(_p);
1028
1117
  }
1029
- finally { if (e_13) throw e_13.error; }
1118
+ finally { if (e_12) throw e_12.error; }
1030
1119
  }
1031
- Object.assign(item, merged);
1120
+ Object.assign(item, denyWhere(runtimeDataModel, relatedModel));
1032
1121
  }
1033
- }
1034
- _w.label = 35;
1035
- case 35:
1036
- items_4_1 = items_4.next();
1037
- return [3 /*break*/, 33];
1038
- case 36: return [3 /*break*/, 39];
1039
- case 37:
1040
- e_11_1 = _w.sent();
1041
- e_11 = { error: e_11_1 };
1042
- return [3 /*break*/, 39];
1043
- case 38:
1044
- try {
1045
- if (items_4_1 && !items_4_1.done && (_t = items_4.return)) _t.call(items_4);
1046
- }
1047
- finally { if (e_11) throw e_11.error; }
1048
- return [7 /*endfinally*/];
1049
- case 39: return [2 /*return*/];
1050
- }
1051
- });
1052
- };
1053
- _l.label = 1;
1054
- case 1:
1055
- _l.trys.push([1, 6, 7, 8]);
1056
- _a = __values(Object.entries(data)), _b = _a.next();
1057
- _l.label = 2;
1058
- case 2:
1059
- if (!!_b.done) return [3 /*break*/, 5];
1060
- _c = __read(_b.value, 2), field = _c[0], value = _c[1];
1061
- return [5 /*yield**/, _loop_3(field, value)];
1062
- case 3:
1063
- _l.sent();
1064
- _l.label = 4;
1065
- case 4:
1066
- _b = _a.next();
1067
- return [3 /*break*/, 2];
1068
- case 5: return [3 /*break*/, 8];
1069
- case 6:
1070
- e_8_1 = _l.sent();
1071
- e_8 = { error: e_8_1 };
1072
- return [3 /*break*/, 8];
1073
- case 7:
1074
- try {
1075
- if (_b && !_b.done && (_d = _a.return)) _d.call(_a);
1076
- }
1077
- finally { if (e_8) throw e_8.error; }
1078
- return [7 /*endfinally*/];
1079
- case 8: return [2 /*return*/];
1080
- }
1122
+ else {
1123
+ merged = mergeWhere((0, cloneDeep_1.default)(item), abilityWhere);
1124
+ if (merged && merged !== item) {
1125
+ try {
1126
+ for (_r = (e_13 = void 0, __values(Object.keys(item))), _s = _r.next(); !_s.done; _s = _r.next()) {
1127
+ key = _s.value;
1128
+ delete item[key];
1129
+ }
1130
+ }
1131
+ catch (e_13_1) { e_13 = { error: e_13_1 }; }
1132
+ finally {
1133
+ try {
1134
+ if (_s && !_s.done && (_x = _r.return)) _x.call(_r);
1135
+ }
1136
+ finally { if (e_13) throw e_13.error; }
1137
+ }
1138
+ Object.assign(item, merged);
1139
+ }
1140
+ }
1141
+ _y.label = 35;
1142
+ case 35:
1143
+ items_4_1 = items_4.next();
1144
+ return [3 /*break*/, 33];
1145
+ case 36: return [3 /*break*/, 39];
1146
+ case 37:
1147
+ e_11_1 = _y.sent();
1148
+ e_11 = { error: e_11_1 };
1149
+ return [3 /*break*/, 39];
1150
+ case 38:
1151
+ try {
1152
+ if (items_4_1 && !items_4_1.done && (_v = items_4.return)) _v.call(items_4);
1153
+ }
1154
+ finally { if (e_11) throw e_11.error; }
1155
+ return [7 /*endfinally*/];
1156
+ case 39:
1157
+ if (!shouldCheckRelationMutations) return [3 /*break*/, 48];
1158
+ if (!value.connect) return [3 /*break*/, 41];
1159
+ return [4 /*yield*/, assertConnectStyleTargetsAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, value.connect, context)];
1160
+ case 40:
1161
+ _y.sent();
1162
+ _y.label = 41;
1163
+ case 41:
1164
+ if (!value.set) return [3 /*break*/, 44];
1165
+ return [4 /*yield*/, assertConnectStyleTargetsAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, value.set, context)];
1166
+ case 42:
1167
+ _y.sent();
1168
+ if (!fieldMeta.isList) return [3 /*break*/, 44];
1169
+ return [4 /*yield*/, assertCurrentRelationTargetsAllowed(prisma, runtimeDataModel, roleAbilities, role, model, fieldMeta, currentWhere, context)];
1170
+ case 43:
1171
+ _y.sent();
1172
+ _y.label = 44;
1173
+ case 44:
1174
+ if (!(value.disconnect &&
1175
+ value.disconnect !== true &&
1176
+ value.disconnect !== false)) return [3 /*break*/, 46];
1177
+ return [4 /*yield*/, assertConnectStyleTargetsAllowed(prisma, runtimeDataModel, roleAbilities, role, relatedModel, value.disconnect, context)];
1178
+ case 45:
1179
+ _y.sent();
1180
+ _y.label = 46;
1181
+ case 46:
1182
+ if (!(value.disconnect === true && !fieldMeta.isList)) return [3 /*break*/, 48];
1183
+ return [4 /*yield*/, assertCurrentRelationTargetsAllowed(prisma, runtimeDataModel, roleAbilities, role, model, fieldMeta, currentWhere, context)];
1184
+ case 47:
1185
+ _y.sent();
1186
+ _y.label = 48;
1187
+ case 48: return [2 /*return*/];
1188
+ }
1189
+ });
1190
+ };
1191
+ _o.label = 1;
1192
+ case 1:
1193
+ _o.trys.push([1, 6, 7, 8]);
1194
+ _a = __values(Object.entries(data)), _b = _a.next();
1195
+ _o.label = 2;
1196
+ case 2:
1197
+ if (!!_b.done) return [3 /*break*/, 5];
1198
+ _c = __read(_b.value, 2), field = _c[0], value = _c[1];
1199
+ return [5 /*yield**/, _loop_3(field, value)];
1200
+ case 3:
1201
+ _o.sent();
1202
+ _o.label = 4;
1203
+ case 4:
1204
+ _b = _a.next();
1205
+ return [3 /*break*/, 2];
1206
+ case 5: return [3 /*break*/, 8];
1207
+ case 6:
1208
+ e_8_1 = _o.sent();
1209
+ e_8 = { error: e_8_1 };
1210
+ return [3 /*break*/, 8];
1211
+ case 7:
1212
+ try {
1213
+ if (_b && !_b.done && (_d = _a.return)) _d.call(_a);
1214
+ }
1215
+ finally { if (e_8) throw e_8.error; }
1216
+ return [7 /*endfinally*/];
1217
+ case 8: return [2 /*return*/];
1218
+ }
1219
+ });
1081
1220
  });
1082
- }); };
1221
+ };
1083
1222
  var Yates = /** @class */ (function () {
1084
1223
  function Yates(prisma) {
1085
1224
  var _this = this;
@@ -1348,7 +1487,7 @@ var setup = function (params) { return __awaiter(void 0, void 0, void 0, functio
1348
1487
  if (!allowed)
1349
1488
  throw updateNotFoundError();
1350
1489
  if (!queryArgs.data) return [3 /*break*/, 33];
1351
- return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, model, queryArgs.data, context)];
1490
+ return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, model, queryArgs.data, context, { mode: "update", currentWhere: queryArgs.where })];
1352
1491
  case 32:
1353
1492
  _o.sent();
1354
1493
  _o.label = 33;
@@ -1367,7 +1506,7 @@ var setup = function (params) { return __awaiter(void 0, void 0, void 0, functio
1367
1506
  (_j = mergeWhere((_h = queryArgs.where) !== null && _h !== void 0 ? _h : {}, abilityWhere)) !== null && _j !== void 0 ? _j : queryArgs.where;
1368
1507
  }
1369
1508
  if (!queryArgs.data) return [3 /*break*/, 37];
1370
- return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, model, queryArgs.data, context)];
1509
+ return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, model, queryArgs.data, context, { mode: "update", currentWhere: queryArgs.where })];
1371
1510
  case 36:
1372
1511
  _o.sent();
1373
1512
  _o.label = 37;
@@ -1379,7 +1518,7 @@ var setup = function (params) { return __awaiter(void 0, void 0, void 0, functio
1379
1518
  canUpdate = _o.sent();
1380
1519
  if (!canUpdate) return [3 /*break*/, 42];
1381
1520
  if (!args.update) return [3 /*break*/, 41];
1382
- return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, model, args.update, context)];
1521
+ return [4 /*yield*/, applyNestedWrites(prisma, runtimeDataModel, roleAbilities, role, model, args.update, context, { mode: "update", currentWhere: queryArgs.where })];
1383
1522
  case 40:
1384
1523
  _o.sent();
1385
1524
  _o.label = 41;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cerebruminc/yates",
3
- "version": "3.8.1-beta.dangerous.df7fdbd",
3
+ "version": "4.0.0-beta.dangerous.89d3ed2",
4
4
  "description": "Role based access control for Prisma Apps",
5
5
  "main": "dist/index.js",
6
6
  "files": [