@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,139 +1,139 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- 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;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- var __param = (this && this.__param) || function (paramIndex, decorator) {
11
- return function (target, key) { decorator(target, key, paramIndex); }
12
- };
13
- import { Orm } from '@spinajs/orm';
14
- import { BasePath, Ok, Post, Policy, BodyField, Param } from '@spinajs/http';
15
- import { Autoinject } from '@spinajs/di';
16
- import { Forbidden, ResourceNotFound, UnexpectedServerError } from '@spinajs/exceptions';
17
- import { User } from '@spinajs/rbac-http';
18
- import _ from 'lodash';
19
- import { ModelType } from '../../route-args/ModelType.js';
20
- import { FindModelType } from '../../policies/FindModelType.js';
21
- import { Log, Logger } from '@spinajs/log';
22
- import { AccessControl, User as UserModel } from '@spinajs/rbac';
23
- import { Crud } from './../../interfaces.js';
24
- let CrudCreate = class CrudCreate extends Crud {
25
- checkAny(resource, user) {
26
- // if we have user
27
- if (user) {
28
- return this.Ac.can(user.Role).createAny(resource);
29
- }
30
- else {
31
- // if not try guest account
32
- return this.Ac.can('guest').createAny(resource);
33
- }
34
- }
35
- checkOwn(resource, user) {
36
- const role = user ? user.Role : 'guest';
37
- return this.Ac.can(role).createOwn(resource);
38
- }
39
- async save(model, data, user) {
40
- const mDescriptor = this.getModelDescriptor(model);
41
- let resource = mDescriptor.RbacResource ? mDescriptor.RbacResource : mDescriptor.Name;
42
- let permission = this.checkAny(resource, user);
43
- const toInsert = (Array.isArray(data) ? data : [data]).map((x) => new model(x));
44
- if (!permission.granted) {
45
- permission = this.checkOwn(resource, user);
46
- if (permission.granted && user) {
47
- if (model.checkOwnership) {
48
- if (_.some(toInsert, (x) => !model.checkOwnership(x, user))) {
49
- throw new Forbidden(`You can only create ${resource} that is assigned to you !`);
50
- }
51
- }
52
- else {
53
- throw new UnexpectedServerError(`Resource ${resource} does not have checkOwnership method implemented`);
54
- }
55
- }
56
- if (!permission.granted) {
57
- throw new Forbidden(`You cannot create resource ${resource}`);
58
- }
59
- }
60
- await model.insert(toInsert);
61
- return new Ok(toInsert.map((x) => x.dehydrate()));
62
- }
63
- async insertRelation(model, id, relation, data, user) {
64
- const mDescriptor = this.getModelDescriptor(model);
65
- const rDescriptor = this.getRelationDescriptor(model, relation);
66
- let resource = mDescriptor.RbacResource ? mDescriptor.RbacResource : mDescriptor.Name;
67
- let permission = this.checkAny(resource, user);
68
- const toInsert = (Array.isArray(data) ? data : [data]).map((x) => permission.filter(x)).map((x) => new rDescriptor.TargetModel(x));
69
- const m = await model.get(id);
70
- if (!m) {
71
- throw new ResourceNotFound(`Record with id ${id} not found`, {
72
- Resource: model.name,
73
- [mDescriptor.PrimaryKey]: id,
74
- });
75
- }
76
- if (!permission.granted) {
77
- permission = this.checkOwn(resource, user);
78
- if (permission.granted && user) {
79
- if (model.checkOwnership) {
80
- if (!model.checkOwnership(m, user)) {
81
- throw new Forbidden(`Cannot create relations for ${resource} that you do not own`);
82
- }
83
- if (_.some(toInsert, (x) => !model.checkOwnership(x, user))) {
84
- throw new Forbidden(`You can only create ${resource} that you own`);
85
- }
86
- }
87
- else {
88
- throw new UnexpectedServerError(`Resource ${resource} does not have checkOwnership method implemented`);
89
- }
90
- }
91
- if (!permission.granted) {
92
- throw new Forbidden(`You do not access to ${resource}`);
93
- }
94
- }
95
- toInsert.forEach((x) => {
96
- m.attach(x);
97
- });
98
- await rDescriptor.TargetModel.insert(toInsert);
99
- return new Ok(toInsert.map((x) => x.dehydrate()));
100
- }
101
- };
102
- __decorate([
103
- Logger('orm-http:api'),
104
- __metadata("design:type", Log)
105
- ], CrudCreate.prototype, "Log", void 0);
106
- __decorate([
107
- Autoinject(),
108
- __metadata("design:type", Orm)
109
- ], CrudCreate.prototype, "Orm", void 0);
110
- __decorate([
111
- Autoinject(),
112
- __metadata("design:type", AccessControl)
113
- ], CrudCreate.prototype, "Ac", void 0);
114
- __decorate([
115
- Post(':model'),
116
- __param(0, ModelType()),
117
- __param(1, BodyField()),
118
- __param(2, User()),
119
- __metadata("design:type", Function),
120
- __metadata("design:paramtypes", [Object, Object, UserModel]),
121
- __metadata("design:returntype", Promise)
122
- ], CrudCreate.prototype, "save", null);
123
- __decorate([
124
- Post(':model/:id/:relation'),
125
- __param(0, ModelType()),
126
- __param(1, Param()),
127
- __param(2, Param()),
128
- __param(3, BodyField()),
129
- __param(4, User()),
130
- __metadata("design:type", Function),
131
- __metadata("design:paramtypes", [Object, Object, String, Object, UserModel]),
132
- __metadata("design:returntype", Promise)
133
- ], CrudCreate.prototype, "insertRelation", null);
134
- CrudCreate = __decorate([
135
- BasePath('crud'),
136
- Policy(FindModelType)
137
- ], CrudCreate);
138
- export { CrudCreate };
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { Orm } from '@spinajs/orm';
14
+ import { BasePath, Ok, Post, Policy, BodyField, Param } from '@spinajs/http';
15
+ import { Autoinject } from '@spinajs/di';
16
+ import { Forbidden, ResourceNotFound, UnexpectedServerError } from '@spinajs/exceptions';
17
+ import { User } from '@spinajs/rbac-http';
18
+ import _ from 'lodash';
19
+ import { ModelType } from '../../route-args/ModelType.js';
20
+ import { FindModelType } from '../../policies/FindModelType.js';
21
+ import { Log, Logger } from '@spinajs/log';
22
+ import { AccessControl, User as UserModel } from '@spinajs/rbac';
23
+ import { Crud } from './../../interfaces.js';
24
+ let CrudCreate = class CrudCreate extends Crud {
25
+ checkAny(resource, user) {
26
+ // if we have user
27
+ if (user) {
28
+ return this.Ac.can(user.Role).createAny(resource);
29
+ }
30
+ else {
31
+ // if not try guest account
32
+ return this.Ac.can('guest').createAny(resource);
33
+ }
34
+ }
35
+ checkOwn(resource, user) {
36
+ const role = user ? user.Role : 'guest';
37
+ return this.Ac.can(role).createOwn(resource);
38
+ }
39
+ async save(model, data, user) {
40
+ const mDescriptor = this.getModelDescriptor(model);
41
+ let resource = mDescriptor.RbacResource ? mDescriptor.RbacResource : mDescriptor.Name;
42
+ let permission = this.checkAny(resource, user);
43
+ const toInsert = (Array.isArray(data) ? data : [data]).map((x) => new model(x));
44
+ if (!permission.granted) {
45
+ permission = this.checkOwn(resource, user);
46
+ if (permission.granted && user) {
47
+ if (model.checkOwnership) {
48
+ if (_.some(toInsert, (x) => !model.checkOwnership(x, user))) {
49
+ throw new Forbidden(`You can only create ${resource} that is assigned to you !`);
50
+ }
51
+ }
52
+ else {
53
+ throw new UnexpectedServerError(`Resource ${resource} does not have checkOwnership method implemented`);
54
+ }
55
+ }
56
+ if (!permission.granted) {
57
+ throw new Forbidden(`You cannot create resource ${resource}`);
58
+ }
59
+ }
60
+ await model.insert(toInsert);
61
+ return new Ok(toInsert.map((x) => x.dehydrate()));
62
+ }
63
+ async insertRelation(model, id, relation, data, user) {
64
+ const mDescriptor = this.getModelDescriptor(model);
65
+ const rDescriptor = this.getRelationDescriptor(model, relation);
66
+ let resource = mDescriptor.RbacResource ? mDescriptor.RbacResource : mDescriptor.Name;
67
+ let permission = this.checkAny(resource, user);
68
+ const toInsert = (Array.isArray(data) ? data : [data]).map((x) => permission.filter(x)).map((x) => new rDescriptor.TargetModel(x));
69
+ const m = await model.get(id);
70
+ if (!m) {
71
+ throw new ResourceNotFound(`Record with id ${id} not found`, {
72
+ Resource: model.name,
73
+ [mDescriptor.PrimaryKey]: id,
74
+ });
75
+ }
76
+ if (!permission.granted) {
77
+ permission = this.checkOwn(resource, user);
78
+ if (permission.granted && user) {
79
+ if (model.checkOwnership) {
80
+ if (!model.checkOwnership(m, user)) {
81
+ throw new Forbidden(`Cannot create relations for ${resource} that you do not own`);
82
+ }
83
+ if (_.some(toInsert, (x) => !model.checkOwnership(x, user))) {
84
+ throw new Forbidden(`You can only create ${resource} that you own`);
85
+ }
86
+ }
87
+ else {
88
+ throw new UnexpectedServerError(`Resource ${resource} does not have checkOwnership method implemented`);
89
+ }
90
+ }
91
+ if (!permission.granted) {
92
+ throw new Forbidden(`You do not access to ${resource}`);
93
+ }
94
+ }
95
+ toInsert.forEach((x) => {
96
+ m.attach(x);
97
+ });
98
+ await rDescriptor.TargetModel.insert(toInsert);
99
+ return new Ok(toInsert.map((x) => x.dehydrate()));
100
+ }
101
+ };
102
+ __decorate([
103
+ Logger('orm-http:api'),
104
+ __metadata("design:type", Log)
105
+ ], CrudCreate.prototype, "Log", void 0);
106
+ __decorate([
107
+ Autoinject(),
108
+ __metadata("design:type", Orm)
109
+ ], CrudCreate.prototype, "Orm", void 0);
110
+ __decorate([
111
+ Autoinject(),
112
+ __metadata("design:type", AccessControl)
113
+ ], CrudCreate.prototype, "Ac", void 0);
114
+ __decorate([
115
+ Post(':model'),
116
+ __param(0, ModelType()),
117
+ __param(1, BodyField()),
118
+ __param(2, User()),
119
+ __metadata("design:type", Function),
120
+ __metadata("design:paramtypes", [Object, Object, UserModel]),
121
+ __metadata("design:returntype", Promise)
122
+ ], CrudCreate.prototype, "save", null);
123
+ __decorate([
124
+ Post(':model/:id/:relation'),
125
+ __param(0, ModelType()),
126
+ __param(1, Param()),
127
+ __param(2, Param()),
128
+ __param(3, BodyField()),
129
+ __param(4, User()),
130
+ __metadata("design:type", Function),
131
+ __metadata("design:paramtypes", [Object, Object, String, Object, UserModel]),
132
+ __metadata("design:returntype", Promise)
133
+ ], CrudCreate.prototype, "insertRelation", null);
134
+ CrudCreate = __decorate([
135
+ BasePath('crud'),
136
+ Policy(FindModelType)
137
+ ], CrudCreate);
138
+ export { CrudCreate };
139
139
  //# sourceMappingURL=Create.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Create.js","sourceRoot":"","sources":["../../../../src/controllers/crud/Create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Create.js","sourceRoot":"","sources":["../../../../src/controllers/crud/Create.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=Crud.d.ts.map
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=Crud.js.map
@@ -1,16 +1,16 @@
1
- import { IModelStatic, Orm } from '@spinajs/orm';
2
- import { Ok } from '@spinajs/http';
3
- import { Log } from '@spinajs/log';
4
- import { AccessControl } from '@spinajs/rbac';
5
- import { Crud } from './../../interfaces.js';
6
- export declare class CrudDelete extends Crud {
7
- protected Log: Log;
8
- protected Orm: Orm;
9
- protected Ac: AccessControl;
10
- batchDelete(model: IModelStatic, ids: any[]): Promise<Ok>;
11
- del(model: IModelStatic, id: any): Promise<Ok>;
12
- deleteRelationBatch(model: IModelStatic, id: any, relation: string, relationIds: any[]): Promise<Ok>;
13
- deleteRelation(model: IModelStatic, id: any, relation: string, relationId: number): Promise<Ok>;
14
- deleteRelationAll(model: IModelStatic, id: any, relation: string): Promise<Ok>;
15
- }
1
+ import { IModelStatic, Orm } from '@spinajs/orm';
2
+ import { Ok } from '@spinajs/http';
3
+ import { Log } from '@spinajs/log';
4
+ import { AccessControl } from '@spinajs/rbac';
5
+ import { Crud } from './../../interfaces.js';
6
+ export declare class CrudDelete extends Crud {
7
+ protected Log: Log;
8
+ protected Orm: Orm;
9
+ protected Ac: AccessControl;
10
+ batchDelete(model: IModelStatic, ids: any[]): Promise<Ok>;
11
+ del(model: IModelStatic, id: any): Promise<Ok>;
12
+ deleteRelationBatch(model: IModelStatic, id: any, relation: string, relationIds: any[]): Promise<Ok>;
13
+ deleteRelation(model: IModelStatic, id: any, relation: string, relationId: number): Promise<Ok>;
14
+ deleteRelationAll(model: IModelStatic, id: any, relation: string): Promise<Ok>;
15
+ }
16
16
  //# sourceMappingURL=Delete.d.ts.map