@spinajs/orm-api 2.0.180 → 2.0.182

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 (108) hide show
  1. package/lib/cjs/PlainJsonCollectionTransformer.d.ts +8 -8
  2. package/lib/cjs/PlainJsonCollectionTransformer.js +29 -29
  3. package/lib/cjs/PlainJsonCollectionTransformer.js.map +1 -1
  4. package/lib/cjs/config/orm-api.d.ts +16 -16
  5. package/lib/cjs/config/orm-api.js +24 -24
  6. package/lib/cjs/controllers/JsonApi.js +244 -244
  7. package/lib/cjs/controllers/crud/Create.d.ts +15 -15
  8. package/lib/cjs/controllers/crud/Create.js +144 -144
  9. package/lib/cjs/controllers/crud/Create.js.map +1 -1
  10. package/lib/cjs/controllers/crud/Delete.d.ts +15 -15
  11. package/lib/cjs/controllers/crud/Delete.js +157 -157
  12. package/lib/cjs/controllers/crud/Delete.js.map +1 -1
  13. package/lib/cjs/controllers/crud/Read.d.ts +39 -39
  14. package/lib/cjs/controllers/crud/Read.js +226 -226
  15. package/lib/cjs/controllers/crud/Read.js.map +1 -1
  16. package/lib/cjs/controllers/crud/Update.d.ts +12 -12
  17. package/lib/cjs/controllers/crud/Update.js +98 -98
  18. package/lib/cjs/controllers/crud/Update.js.map +1 -1
  19. package/lib/cjs/dto/QueryArgs.d.ts +8 -8
  20. package/lib/cjs/dto/QueryArgs.js +27 -27
  21. package/lib/cjs/dto/QueryArgs.js.map +1 -1
  22. package/lib/cjs/dto/QueryFilter.d.ts +5 -5
  23. package/lib/cjs/dto/QueryFilter.js +30 -30
  24. package/lib/cjs/dto/QueryFilter.js.map +1 -1
  25. package/lib/cjs/dto/QueryIncludes.d.ts +4 -4
  26. package/lib/cjs/dto/QueryIncludes.js +30 -30
  27. package/lib/cjs/dto/QueryIncludes.js.map +1 -1
  28. package/lib/cjs/hydrators/QueryFilterHydrator.d.ts +4 -4
  29. package/lib/cjs/hydrators/QueryFilterHydrator.js +14 -14
  30. package/lib/cjs/hydrators/QueryIncludesHydrator.d.ts +4 -4
  31. package/lib/cjs/hydrators/QueryIncludesHydrator.js +20 -20
  32. package/lib/cjs/index.d.ts +28 -28
  33. package/lib/cjs/index.js +100 -100
  34. package/lib/cjs/index.js.map +1 -1
  35. package/lib/cjs/interfaces.d.ts +41 -41
  36. package/lib/cjs/interfaces.js +49 -49
  37. package/lib/cjs/interfaces.js.map +1 -1
  38. package/lib/cjs/middleware.d.ts +21 -21
  39. package/lib/cjs/middleware.js +30 -30
  40. package/lib/cjs/policies/FindModelType.d.ts +7 -7
  41. package/lib/cjs/policies/FindModelType.js +42 -42
  42. package/lib/cjs/policies/FindModelType.js.map +1 -1
  43. package/lib/cjs/route-args/ModelType.d.ts +12 -12
  44. package/lib/cjs/route-args/ModelType.js +38 -38
  45. package/lib/cjs/route-args/ModelType.js.map +1 -1
  46. package/lib/cjs/schemas/QueryArgs.schema.d.ts +19 -19
  47. package/lib/cjs/schemas/QueryArgs.schema.js +12 -12
  48. package/lib/cjs/schemas/QueryFilter.schema.d.ts +20 -20
  49. package/lib/cjs/schemas/QueryFilter.schema.js +15 -15
  50. package/lib/cjs/schemas/QueryIncludes.schema.d.ts +7 -7
  51. package/lib/cjs/schemas/QueryIncludes.schema.js +9 -9
  52. package/lib/mjs/PlainJsonCollectionTransformer.d.ts +8 -8
  53. package/lib/mjs/PlainJsonCollectionTransformer.js +26 -26
  54. package/lib/mjs/PlainJsonCollectionTransformer.js.map +1 -1
  55. package/lib/mjs/config/orm-api.d.ts +16 -16
  56. package/lib/mjs/config/orm-api.js +22 -22
  57. package/lib/mjs/controllers/JsonApi.d.ts +1 -1
  58. package/lib/mjs/controllers/JsonApi.js +245 -245
  59. package/lib/mjs/controllers/crud/Create.d.ts +15 -15
  60. package/lib/mjs/controllers/crud/Create.js +138 -138
  61. package/lib/mjs/controllers/crud/Create.js.map +1 -1
  62. package/lib/mjs/controllers/crud/Crud.d.ts +1 -1
  63. package/lib/mjs/controllers/crud/Crud.js +1 -1
  64. package/lib/mjs/controllers/crud/Delete.d.ts +15 -15
  65. package/lib/mjs/controllers/crud/Delete.js +154 -154
  66. package/lib/mjs/controllers/crud/Delete.js.map +1 -1
  67. package/lib/mjs/controllers/crud/Read.d.ts +39 -39
  68. package/lib/mjs/controllers/crud/Read.js +223 -223
  69. package/lib/mjs/controllers/crud/Read.js.map +1 -1
  70. package/lib/mjs/controllers/crud/Update.d.ts +12 -12
  71. package/lib/mjs/controllers/crud/Update.js +95 -95
  72. package/lib/mjs/controllers/crud/Update.js.map +1 -1
  73. package/lib/mjs/dto/QueryArgs.d.ts +8 -8
  74. package/lib/mjs/dto/QueryArgs.js +21 -21
  75. package/lib/mjs/dto/QueryArgs.js.map +1 -1
  76. package/lib/mjs/dto/QueryFilter.d.ts +5 -5
  77. package/lib/mjs/dto/QueryFilter.js +24 -24
  78. package/lib/mjs/dto/QueryFilter.js.map +1 -1
  79. package/lib/mjs/dto/QueryIncludes.d.ts +4 -4
  80. package/lib/mjs/dto/QueryIncludes.js +24 -24
  81. package/lib/mjs/dto/QueryIncludes.js.map +1 -1
  82. package/lib/mjs/hydrators/QueryFilterHydrator.d.ts +4 -4
  83. package/lib/mjs/hydrators/QueryFilterHydrator.js +10 -10
  84. package/lib/mjs/hydrators/QueryIncludesHydrator.d.ts +4 -4
  85. package/lib/mjs/hydrators/QueryIncludesHydrator.js +13 -13
  86. package/lib/mjs/index.d.ts +28 -28
  87. package/lib/mjs/index.js +94 -94
  88. package/lib/mjs/index.js.map +1 -1
  89. package/lib/mjs/interfaces.d.ts +41 -41
  90. package/lib/mjs/interfaces.js +44 -44
  91. package/lib/mjs/interfaces.js.map +1 -1
  92. package/lib/mjs/middleware.d.ts +21 -21
  93. package/lib/mjs/middleware.js +26 -26
  94. package/lib/mjs/policies/FindModelType.d.ts +7 -7
  95. package/lib/mjs/policies/FindModelType.js +39 -39
  96. package/lib/mjs/policies/FindModelType.js.map +1 -1
  97. package/lib/mjs/route-args/ModelType.d.ts +12 -12
  98. package/lib/mjs/route-args/ModelType.js +34 -34
  99. package/lib/mjs/route-args/ModelType.js.map +1 -1
  100. package/lib/mjs/schemas/QueryArgs.schema.d.ts +19 -19
  101. package/lib/mjs/schemas/QueryArgs.schema.js +10 -10
  102. package/lib/mjs/schemas/QueryFilter.schema.d.ts +20 -20
  103. package/lib/mjs/schemas/QueryFilter.schema.js +13 -13
  104. package/lib/mjs/schemas/QueryIncludes.schema.d.ts +7 -7
  105. package/lib/mjs/schemas/QueryIncludes.schema.js +7 -7
  106. package/lib/tsconfig.cjs.tsbuildinfo +1 -1
  107. package/lib/tsconfig.mjs.tsbuildinfo +1 -1
  108. package/package.json +12 -12
@@ -1,158 +1,158 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.CrudDelete = void 0;
16
- const orm_1 = require("@spinajs/orm");
17
- const http_1 = require("@spinajs/http");
18
- const rbac_http_1 = require("@spinajs/rbac-http");
19
- const di_1 = require("@spinajs/di");
20
- const exceptions_1 = require("@spinajs/exceptions");
21
- const ModelType_js_1 = require("../../route-args/ModelType.js");
22
- const FindModelType_js_1 = require("../../policies/FindModelType.js");
23
- const log_1 = require("@spinajs/log");
24
- const rbac_1 = require("@spinajs/rbac");
25
- const interfaces_js_1 = require("./../../interfaces.js");
26
- let CrudDelete = class CrudDelete extends interfaces_js_1.Crud {
27
- async batchDelete(model, ids) {
28
- const tModel = this.getModelDescriptor(model);
29
- const result = await model.destroy().whereIn(tModel.PrimaryKey, ids);
30
- this.Log.trace(`Deleted ${result.RowsAffected} records from ${tModel.Name}`);
31
- return new http_1.Ok({
32
- [tModel.PrimaryKey]: ids,
33
- });
34
- }
35
- async del(model, id) {
36
- const descriptor = this.getModelDescriptor(model);
37
- const result = await model.destroy(id);
38
- this.Log.trace(`Deleted ${result.RowsAffected} records from ${descriptor.Name} with id ${id}`);
39
- return new http_1.Ok({
40
- [descriptor.PrimaryKey]: [id],
41
- });
42
- }
43
- async deleteRelationBatch(model, id, relation, relationIds) {
44
- const descriptor = this.getRelationDescriptor(model, relation);
45
- if (descriptor.Type === orm_1.RelationType.One) {
46
- throw new exceptions_1.BadRequest('Cannot delete batch from one to one relation');
47
- }
48
- const exists = await model.exists(id);
49
- if (!exists) {
50
- throw new exceptions_1.ResourceNotFound(`Record with id ${id} not found`, {
51
- Resource: model.name,
52
- Id: id,
53
- });
54
- }
55
- const result = await descriptor.TargetModel.destroy(relationIds).where(descriptor.ForeignKey, id);
56
- this.Log.trace(`Deleted ${result.RowsAffected} records from ${descriptor.Name} with id ${id}`);
57
- return new http_1.Ok(relationIds);
58
- }
59
- async deleteRelation(model, id, relation, relationId) {
60
- const descriptor = this.getRelationDescriptor(model, relation);
61
- const tModel = this.getModelDescriptor(descriptor.TargetModel);
62
- const exists = await model.exists(id);
63
- if (!exists) {
64
- throw new exceptions_1.ResourceNotFound(`Record with id ${id} not found`, {
65
- Resource: model.name,
66
- Id: id,
67
- });
68
- }
69
- const result = await descriptor.TargetModel.destroy(relationId).when(descriptor.Type !== orm_1.RelationType.One, function () {
70
- this.where({ [descriptor.ForeignKey]: id });
71
- });
72
- this.Log.trace(`Deleted related ${result.RowsAffected} records from ${tModel.Name} with id ${id}`);
73
- return new http_1.Ok({
74
- [tModel.PrimaryKey]: relationId,
75
- });
76
- }
77
- async deleteRelationAll(model, id, relation) {
78
- const descriptor = this.getRelationDescriptor(model, relation);
79
- const tModel = this.getModelDescriptor(descriptor.TargetModel);
80
- const exists = await model.exists(id);
81
- if (!exists) {
82
- throw new exceptions_1.ResourceNotFound(`Record with id ${id} not found`, {
83
- Resource: model.name,
84
- Id: id,
85
- });
86
- }
87
- const result = await descriptor.TargetModel.destroy().when(descriptor.Type !== orm_1.RelationType.One, function () {
88
- this.where(descriptor.ForeignKey, id);
89
- });
90
- this.Log.trace(`Deleted related ${result.RowsAffected} records from ${tModel.Name} with id ${id}`);
91
- return new http_1.Ok();
92
- }
93
- };
94
- __decorate([
95
- (0, log_1.Logger)('orm-http:api'),
96
- __metadata("design:type", log_1.Log)
97
- ], CrudDelete.prototype, "Log", void 0);
98
- __decorate([
99
- (0, di_1.Autoinject)(),
100
- __metadata("design:type", orm_1.Orm)
101
- ], CrudDelete.prototype, "Orm", void 0);
102
- __decorate([
103
- (0, di_1.Autoinject)(),
104
- __metadata("design:type", rbac_1.AccessControl)
105
- ], CrudDelete.prototype, "Ac", void 0);
106
- __decorate([
107
- (0, http_1.Post)(':model/__batchDelete'),
108
- __param(0, (0, ModelType_js_1.ModelType)()),
109
- __param(1, (0, http_1.Body)()),
110
- __metadata("design:type", Function),
111
- __metadata("design:paramtypes", [Object, Array]),
112
- __metadata("design:returntype", Promise)
113
- ], CrudDelete.prototype, "batchDelete", null);
114
- __decorate([
115
- (0, http_1.Del)(':model/:id'),
116
- (0, rbac_http_1.Permission)('deleteAny'),
117
- __param(0, (0, ModelType_js_1.ModelType)()),
118
- __param(1, (0, http_1.Param)()),
119
- __metadata("design:type", Function),
120
- __metadata("design:paramtypes", [Object, Object]),
121
- __metadata("design:returntype", Promise)
122
- ], CrudDelete.prototype, "del", null);
123
- __decorate([
124
- (0, http_1.Post)(':model/:id/:relation/__batchDelete'),
125
- (0, rbac_http_1.Permission)('deleteAny'),
126
- __param(0, (0, ModelType_js_1.ModelType)()),
127
- __param(1, (0, http_1.Param)()),
128
- __param(2, (0, http_1.Param)()),
129
- __param(3, (0, http_1.Body)()),
130
- __metadata("design:type", Function),
131
- __metadata("design:paramtypes", [Object, Object, String, Array]),
132
- __metadata("design:returntype", Promise)
133
- ], CrudDelete.prototype, "deleteRelationBatch", null);
134
- __decorate([
135
- (0, http_1.Del)(':model/:id/:relation/:relationId'),
136
- __param(0, (0, ModelType_js_1.ModelType)()),
137
- __param(1, (0, http_1.Param)()),
138
- __param(2, (0, http_1.Param)()),
139
- __param(3, (0, http_1.Param)()),
140
- __metadata("design:type", Function),
141
- __metadata("design:paramtypes", [Object, Object, String, Number]),
142
- __metadata("design:returntype", Promise)
143
- ], CrudDelete.prototype, "deleteRelation", null);
144
- __decorate([
145
- (0, http_1.Del)(':model/:id/:relation'),
146
- __param(0, (0, ModelType_js_1.ModelType)()),
147
- __param(1, (0, http_1.PKey)(http_1.ParameterType.FromQuery)),
148
- __param(2, (0, http_1.Query)()),
149
- __metadata("design:type", Function),
150
- __metadata("design:paramtypes", [Object, Object, String]),
151
- __metadata("design:returntype", Promise)
152
- ], CrudDelete.prototype, "deleteRelationAll", null);
153
- CrudDelete = __decorate([
154
- (0, http_1.BasePath)('crud'),
155
- (0, http_1.Policy)(FindModelType_js_1.FindModelType)
156
- ], CrudDelete);
157
- exports.CrudDelete = CrudDelete;
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CrudDelete = void 0;
16
+ const orm_1 = require("@spinajs/orm");
17
+ const http_1 = require("@spinajs/http");
18
+ const rbac_http_1 = require("@spinajs/rbac-http");
19
+ const di_1 = require("@spinajs/di");
20
+ const exceptions_1 = require("@spinajs/exceptions");
21
+ const ModelType_js_1 = require("../../route-args/ModelType.js");
22
+ const FindModelType_js_1 = require("../../policies/FindModelType.js");
23
+ const log_1 = require("@spinajs/log");
24
+ const rbac_1 = require("@spinajs/rbac");
25
+ const interfaces_js_1 = require("./../../interfaces.js");
26
+ let CrudDelete = class CrudDelete extends interfaces_js_1.Crud {
27
+ async batchDelete(model, ids) {
28
+ const tModel = this.getModelDescriptor(model);
29
+ const result = await model.destroy().whereIn(tModel.PrimaryKey, ids);
30
+ this.Log.trace(`Deleted ${result.RowsAffected} records from ${tModel.Name}`);
31
+ return new http_1.Ok({
32
+ [tModel.PrimaryKey]: ids,
33
+ });
34
+ }
35
+ async del(model, id) {
36
+ const descriptor = this.getModelDescriptor(model);
37
+ const result = await model.destroy(id);
38
+ this.Log.trace(`Deleted ${result.RowsAffected} records from ${descriptor.Name} with id ${id}`);
39
+ return new http_1.Ok({
40
+ [descriptor.PrimaryKey]: [id],
41
+ });
42
+ }
43
+ async deleteRelationBatch(model, id, relation, relationIds) {
44
+ const descriptor = this.getRelationDescriptor(model, relation);
45
+ if (descriptor.Type === orm_1.RelationType.One) {
46
+ throw new exceptions_1.BadRequest('Cannot delete batch from one to one relation');
47
+ }
48
+ const exists = await model.exists(id);
49
+ if (!exists) {
50
+ throw new exceptions_1.ResourceNotFound(`Record with id ${id} not found`, {
51
+ Resource: model.name,
52
+ Id: id,
53
+ });
54
+ }
55
+ const result = await descriptor.TargetModel.destroy(relationIds).where(descriptor.ForeignKey, id);
56
+ this.Log.trace(`Deleted ${result.RowsAffected} records from ${descriptor.Name} with id ${id}`);
57
+ return new http_1.Ok(relationIds);
58
+ }
59
+ async deleteRelation(model, id, relation, relationId) {
60
+ const descriptor = this.getRelationDescriptor(model, relation);
61
+ const tModel = this.getModelDescriptor(descriptor.TargetModel);
62
+ const exists = await model.exists(id);
63
+ if (!exists) {
64
+ throw new exceptions_1.ResourceNotFound(`Record with id ${id} not found`, {
65
+ Resource: model.name,
66
+ Id: id,
67
+ });
68
+ }
69
+ const result = await descriptor.TargetModel.destroy(relationId).when(descriptor.Type !== orm_1.RelationType.One, function () {
70
+ this.where({ [descriptor.ForeignKey]: id });
71
+ });
72
+ this.Log.trace(`Deleted related ${result.RowsAffected} records from ${tModel.Name} with id ${id}`);
73
+ return new http_1.Ok({
74
+ [tModel.PrimaryKey]: relationId,
75
+ });
76
+ }
77
+ async deleteRelationAll(model, id, relation) {
78
+ const descriptor = this.getRelationDescriptor(model, relation);
79
+ const tModel = this.getModelDescriptor(descriptor.TargetModel);
80
+ const exists = await model.exists(id);
81
+ if (!exists) {
82
+ throw new exceptions_1.ResourceNotFound(`Record with id ${id} not found`, {
83
+ Resource: model.name,
84
+ Id: id,
85
+ });
86
+ }
87
+ const result = await descriptor.TargetModel.destroy().when(descriptor.Type !== orm_1.RelationType.One, function () {
88
+ this.where(descriptor.ForeignKey, id);
89
+ });
90
+ this.Log.trace(`Deleted related ${result.RowsAffected} records from ${tModel.Name} with id ${id}`);
91
+ return new http_1.Ok();
92
+ }
93
+ };
94
+ exports.CrudDelete = CrudDelete;
95
+ __decorate([
96
+ (0, log_1.Logger)('orm-http:api'),
97
+ __metadata("design:type", log_1.Log)
98
+ ], CrudDelete.prototype, "Log", void 0);
99
+ __decorate([
100
+ (0, di_1.Autoinject)(),
101
+ __metadata("design:type", orm_1.Orm)
102
+ ], CrudDelete.prototype, "Orm", void 0);
103
+ __decorate([
104
+ (0, di_1.Autoinject)(),
105
+ __metadata("design:type", rbac_1.AccessControl)
106
+ ], CrudDelete.prototype, "Ac", void 0);
107
+ __decorate([
108
+ (0, http_1.Post)(':model/__batchDelete'),
109
+ __param(0, (0, ModelType_js_1.ModelType)()),
110
+ __param(1, (0, http_1.Body)()),
111
+ __metadata("design:type", Function),
112
+ __metadata("design:paramtypes", [Object, Array]),
113
+ __metadata("design:returntype", Promise)
114
+ ], CrudDelete.prototype, "batchDelete", null);
115
+ __decorate([
116
+ (0, http_1.Del)(':model/:id'),
117
+ (0, rbac_http_1.Permission)('deleteAny'),
118
+ __param(0, (0, ModelType_js_1.ModelType)()),
119
+ __param(1, (0, http_1.Param)()),
120
+ __metadata("design:type", Function),
121
+ __metadata("design:paramtypes", [Object, Object]),
122
+ __metadata("design:returntype", Promise)
123
+ ], CrudDelete.prototype, "del", null);
124
+ __decorate([
125
+ (0, http_1.Post)(':model/:id/:relation/__batchDelete'),
126
+ (0, rbac_http_1.Permission)('deleteAny'),
127
+ __param(0, (0, ModelType_js_1.ModelType)()),
128
+ __param(1, (0, http_1.Param)()),
129
+ __param(2, (0, http_1.Param)()),
130
+ __param(3, (0, http_1.Body)()),
131
+ __metadata("design:type", Function),
132
+ __metadata("design:paramtypes", [Object, Object, String, Array]),
133
+ __metadata("design:returntype", Promise)
134
+ ], CrudDelete.prototype, "deleteRelationBatch", null);
135
+ __decorate([
136
+ (0, http_1.Del)(':model/:id/:relation/:relationId'),
137
+ __param(0, (0, ModelType_js_1.ModelType)()),
138
+ __param(1, (0, http_1.Param)()),
139
+ __param(2, (0, http_1.Param)()),
140
+ __param(3, (0, http_1.Param)()),
141
+ __metadata("design:type", Function),
142
+ __metadata("design:paramtypes", [Object, Object, String, Number]),
143
+ __metadata("design:returntype", Promise)
144
+ ], CrudDelete.prototype, "deleteRelation", null);
145
+ __decorate([
146
+ (0, http_1.Del)(':model/:id/:relation'),
147
+ __param(0, (0, ModelType_js_1.ModelType)()),
148
+ __param(1, (0, http_1.PKey)(http_1.ParameterType.FromQuery)),
149
+ __param(2, (0, http_1.Query)()),
150
+ __metadata("design:type", Function),
151
+ __metadata("design:paramtypes", [Object, Object, String]),
152
+ __metadata("design:returntype", Promise)
153
+ ], CrudDelete.prototype, "deleteRelationAll", null);
154
+ exports.CrudDelete = CrudDelete = __decorate([
155
+ (0, http_1.BasePath)('crud'),
156
+ (0, http_1.Policy)(FindModelType_js_1.FindModelType)
157
+ ], CrudDelete);
158
158
  //# sourceMappingURL=Delete.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Delete.js","sourceRoot":"","sources":["../../../../src/controllers/crud/Delete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sCAA+D;AAC/D,wCAAyG;AACzG,kDAAgD;AAChD,oCAAyC;AACzC,oDAAmE;AAGnE,gEAA0D;AAC1D,sEAAgE;AAChE,sCAA2C;AAC3C,wCAA8C;AAC9C,yDAA6C;AAItC,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,oBAAI;IAWrB,AAAN,KAAK,CAAC,WAAW,CAAc,KAAmB,EAAU,GAAU;QAC3E,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QAErE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,YAAY,iBAAiB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAE7E,OAAO,IAAI,SAAE,CAAC;YACZ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,GAAG;SACzB,CAAC,CAAC;IACL,CAAC;IAIY,AAAN,KAAK,CAAC,GAAG,CAAc,KAAmB,EAAW,EAAO;QACjE,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEvC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,YAAY,iBAAiB,UAAU,CAAC,IAAI,YAAY,EAAE,EAAE,CAAC,CAAC;QAE/F,OAAO,IAAI,SAAE,CAAC;YACZ,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;SAC9B,CAAC,CAAC;IACL,CAAC;IAIY,AAAN,KAAK,CAAC,mBAAmB,CAAc,KAAmB,EAAW,EAAO,EAAW,QAAgB,EAAU,WAAkB;QACxI,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAE/D,IAAI,UAAU,CAAC,IAAI,KAAK,kBAAY,CAAC,GAAG,EAAE;YACxC,MAAM,IAAI,uBAAU,CAAC,8CAA8C,CAAC,CAAC;SACtE;QAED,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,6BAAgB,CAAC,kBAAkB,EAAE,YAAY,EAAE;gBAC3D,QAAQ,EAAE,KAAK,CAAC,IAAI;gBACpB,EAAE,EAAE,EAAE;aACP,CAAC,CAAC;SACJ;QAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAElG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,YAAY,iBAAiB,UAAU,CAAC,IAAI,YAAY,EAAE,EAAE,CAAC,CAAC;QAE/F,OAAO,IAAI,SAAE,CAAC,WAAW,CAAC,CAAC;IAC7B,CAAC;IAGY,AAAN,KAAK,CAAC,cAAc,CAAc,KAAmB,EAAW,EAAO,EAAW,QAAgB,EAAW,UAAkB;QACpI,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAE/D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,6BAAgB,CAAC,kBAAkB,EAAE,YAAY,EAAE;gBAC3D,QAAQ,EAAE,KAAK,CAAC,IAAI;gBACpB,EAAE,EAAE,EAAE;aACP,CAAC,CAAC;SACJ;QAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,kBAAY,CAAC,GAAG,EAAE;YACzG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,MAAM,CAAC,YAAY,iBAAiB,MAAM,CAAC,IAAI,YAAY,EAAE,EAAE,CAAC,CAAC;QAEnG,OAAO,IAAI,SAAE,CAAC;YACZ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,UAAU;SAChC,CAAC,CAAC;IACL,CAAC;IAGY,AAAN,KAAK,CAAC,iBAAiB,CAAc,KAAmB,EAAiC,EAAO,EAAW,QAAgB;QAChI,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAE/D,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,6BAAgB,CAAC,kBAAkB,EAAE,YAAY,EAAE;gBAC3D,QAAQ,EAAE,KAAK,CAAC,IAAI;gBACpB,EAAE,EAAE,EAAE;aACP,CAAC,CAAC;SACJ;QAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,kBAAY,CAAC,GAAG,EAAE;YAC/F,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,MAAM,CAAC,YAAY,iBAAiB,MAAM,CAAC,IAAI,YAAY,EAAE,EAAE,CAAC,CAAC;QAEnG,OAAO,IAAI,SAAE,EAAE,CAAC;IAClB,CAAC;CACF,CAAA;AAvGC;IAAC,IAAA,YAAM,EAAC,cAAc,CAAC;8BACR,SAAG;uCAAC;AAEnB;IAAC,IAAA,eAAU,GAAE;8BACE,SAAG;uCAAC;AAEnB;IAAC,IAAA,eAAU,GAAE;8BACC,oBAAa;sCAAC;AAGf;IADZ,IAAA,WAAI,EAAC,sBAAsB,CAAC;IACH,WAAA,IAAA,wBAAS,GAAE,CAAA;IAAuB,WAAA,IAAA,WAAI,GAAE,CAAA;;;;6CASjE;AAIY;IAFZ,IAAA,UAAG,EAAC,YAAY,CAAC;IACjB,IAAA,sBAAU,EAAC,WAAW,CAAC;IACN,WAAA,IAAA,wBAAS,GAAE,CAAA;IAAuB,WAAA,IAAA,YAAK,GAAE,CAAA;;;;qCAS1D;AAIY;IAFZ,IAAA,WAAI,EAAC,oCAAoC,CAAC;IAC1C,IAAA,sBAAU,EAAC,WAAW,CAAC;IACU,WAAA,IAAA,wBAAS,GAAE,CAAA;IAAuB,WAAA,IAAA,YAAK,GAAE,CAAA;IAAW,WAAA,IAAA,YAAK,GAAE,CAAA;IAAoB,WAAA,IAAA,WAAI,GAAE,CAAA;;;;qDAoBtH;AAGY;IADZ,IAAA,UAAG,EAAC,kCAAkC,CAAC;IACX,WAAA,IAAA,wBAAS,GAAE,CAAA;IAAuB,WAAA,IAAA,YAAK,GAAE,CAAA;IAAW,WAAA,IAAA,YAAK,GAAE,CAAA;IAAoB,WAAA,IAAA,YAAK,GAAE,CAAA;;;;gDAqBlH;AAGY;IADZ,IAAA,UAAG,EAAC,sBAAsB,CAAC;IACI,WAAA,IAAA,wBAAS,GAAE,CAAA;IAAuB,WAAA,IAAA,WAAI,EAAC,oBAAa,CAAC,SAAS,CAAC,CAAA;IAAW,WAAA,IAAA,YAAK,GAAE,CAAA;;;;mDAmBhH;AAvGU,UAAU;IAFtB,IAAA,eAAQ,EAAC,MAAM,CAAC;IAChB,IAAA,aAAM,EAAC,gCAAa,CAAC;GACT,UAAU,CAwGtB;AAxGY,gCAAU"}
1
+ {"version":3,"file":"Delete.js","sourceRoot":"","sources":["../../../../src/controllers/crud/Delete.ts"],"names":[],"mappings":"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"}
@@ -1,40 +1,40 @@
1
- import { Permission } from 'accesscontrol';
2
- import { Orm, IModelStatic } from '@spinajs/orm';
3
- import { Ok } from '@spinajs/http';
4
- import { User as UserModel, AccessControl } from '@spinajs/rbac';
5
- import { BadRequest } from '@spinajs/exceptions';
6
- import { Log } from '@spinajs/log';
7
- import '@spinajs/rbac';
8
- import { QueryArgs } from '../../dto/QueryArgs.js';
9
- import { QueryFilter } from '../../dto/QueryFilter.js';
10
- import { QueryIncludes } from '../../dto/QueryIncludes.js';
11
- import { Crud } from './../../interfaces.js';
12
- export declare class CrudRead extends Crud {
13
- protected Log: Log;
14
- protected Orm: Orm;
15
- protected Ac: AccessControl;
16
- /**
17
- * retrieve resource name, if model does not have @OrmResource decorator set
18
- * model name is default resource name
19
- * @param model
20
- * @returns
21
- */
22
- protected getResourceName(model: IModelStatic): string;
23
- /**
24
- *
25
- * Creates query on model and ansures that user have proper permission to access it
26
- *
27
- * @param model model to query against
28
- * @param user user for permission check
29
- * @returns
30
- */
31
- protected getSafeQuery(model: IModelStatic, user: UserModel): {
32
- query: import("@spinajs/orm").ISelectQueryBuilder<import("@spinajs/orm").ModelBase<unknown>[]>;
33
- permission: Permission;
34
- };
35
- getAll(model: IModelStatic, getParams: QueryArgs, filters: QueryFilter, includes: QueryIncludes, user: UserModel): Promise<Ok>;
36
- get(user: UserModel, model: IModelStatic, id: number, includes: QueryIncludes): Promise<Ok>;
37
- getRelation(model: IModelStatic, id: any, relation: string, relationId: any, includes: QueryIncludes, user?: UserModel): Promise<Ok | BadRequest>;
38
- getRelations(model: IModelStatic, id: any, relation: string, params: QueryArgs, filters: QueryFilter, includes: QueryIncludes, user?: UserModel): Promise<Ok | BadRequest>;
39
- }
1
+ import { Permission } from 'accesscontrol';
2
+ import { Orm, IModelStatic } from '@spinajs/orm';
3
+ import { Ok } from '@spinajs/http';
4
+ import { User as UserModel, AccessControl } from '@spinajs/rbac';
5
+ import { BadRequest } from '@spinajs/exceptions';
6
+ import { Log } from '@spinajs/log';
7
+ import '@spinajs/rbac';
8
+ import { QueryArgs } from '../../dto/QueryArgs.js';
9
+ import { QueryFilter } from '../../dto/QueryFilter.js';
10
+ import { QueryIncludes } from '../../dto/QueryIncludes.js';
11
+ import { Crud } from './../../interfaces.js';
12
+ export declare class CrudRead extends Crud {
13
+ protected Log: Log;
14
+ protected Orm: Orm;
15
+ protected Ac: AccessControl;
16
+ /**
17
+ * retrieve resource name, if model does not have @OrmResource decorator set
18
+ * model name is default resource name
19
+ * @param model
20
+ * @returns
21
+ */
22
+ protected getResourceName(model: IModelStatic): string;
23
+ /**
24
+ *
25
+ * Creates query on model and ansures that user have proper permission to access it
26
+ *
27
+ * @param model model to query against
28
+ * @param user user for permission check
29
+ * @returns
30
+ */
31
+ protected getSafeQuery(model: IModelStatic, user: UserModel): {
32
+ query: import("@spinajs/orm").ISelectQueryBuilder<import("@spinajs/orm").ModelBase<unknown>[]>;
33
+ permission: Permission;
34
+ };
35
+ getAll(model: IModelStatic, getParams: QueryArgs, filters: QueryFilter, includes: QueryIncludes, user: UserModel): Promise<Ok>;
36
+ get(user: UserModel, model: IModelStatic, id: number, includes: QueryIncludes): Promise<Ok>;
37
+ getRelation(model: IModelStatic, id: any, relation: string, relationId: any, includes: QueryIncludes, user?: UserModel): Promise<Ok | BadRequest>;
38
+ getRelations(model: IModelStatic, id: any, relation: string, params: QueryArgs, filters: QueryFilter, includes: QueryIncludes, user?: UserModel): Promise<Ok | BadRequest>;
39
+ }
40
40
  //# sourceMappingURL=Read.d.ts.map