@spinajs/rbac-http-user 2.0.355 → 2.0.358

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.
@@ -1 +1 @@
1
- {"version":3,"file":"LoginController.d.ts","sourceRoot":"","sources":["../../../src/controllers/LoginController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAwB,EAAE,EAAe,YAAY,EAAU,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAE,YAAY,EAAE,eAAe,EAAqB,aAAa,EAAiB,MAAM,eAAe,CAAC;AAE/G,OAAO,EAA6B,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGlF,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,qBACa,eAAgB,SAAQ,cAAc;IAEjD,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAGvC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAGrC,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAK3C,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC;IAGxC,SAAS,CAAC,mBAAmB,EAAE,GAAG,CAAC;IAGnC,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC;IAIf,KAAK,CAAS,WAAW,EAAE,YAAY;IAmKvC,MAAM,CAAW,IAAI,EAAE,MAAM;IA4B7B,MAAM,CAAiB,IAAI,EAAE,IAAI;CA0F/C"}
1
+ {"version":3,"file":"LoginController.d.ts","sourceRoot":"","sources":["../../../src/controllers/LoginController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAwB,EAAE,EAAe,YAAY,EAAU,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAE,YAAY,EAAE,eAAe,EAAqB,aAAa,EAAiB,MAAM,eAAe,CAAC;AAE/G,OAAO,EAA6B,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGlF,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,qBACa,eAAgB,SAAQ,cAAc;IAEjD,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAGvC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAGrC,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAK3C,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC;IAGxC,SAAS,CAAC,mBAAmB,EAAE,GAAG,CAAC;IAGnC,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC;IAIf,KAAK,CAAS,WAAW,EAAE,YAAY;IAoKvC,MAAM,CAAW,IAAI,EAAE,MAAM;IA4B7B,MAAM,CAAiB,IAAI,EAAE,IAAI;CA0F/C"}
@@ -39,7 +39,8 @@ let LoginController = class LoginController extends http_1.BaseController {
39
39
  const combinedGrants = Object.assign({}, ...userGrants);
40
40
  return new http_1.Ok({
41
41
  ...user.dehydrate(),
42
- Grants: combinedGrants
42
+ Grants: combinedGrants,
43
+ Metadata: user.Metadata.map(m => m.dehydrate())
43
44
  }, {
44
45
  Coockies: [
45
46
  {
@@ -1 +1 @@
1
- {"version":3,"file":"LoginController.js","sourceRoot":"","sources":["../../../src/controllers/LoginController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LoginController.js","sourceRoot":"","sources":["../../../src/controllers/LoginController.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,21 @@ import { User as UserModel, UserMetadata } from '@spinajs/rbac';
3
3
  import { PaginationDTO, OrderDTO, IFilter } from '@spinajs/orm-http';
4
4
  import { UserMetadataDto } from '../dto/metadata-dto.js';
5
5
  export declare class UserMetadataController extends BaseController {
6
- readMeta(user: UserModel, pagination?: PaginationDTO, order?: OrderDTO, filter?: IFilter[]): Promise<Ok>;
7
- getMeta(user: UserModel, key: string): Promise<Ok>;
8
- addMetadata(user: UserModel, metadata: UserMetadata): Promise<Ok>;
9
- updateMetadata(user: UserModel, meta: string, data: UserMetadataDto): Promise<Ok>;
10
- deleteMetadata(user: UserModel, meta: number): Promise<Ok>;
6
+ /**
7
+ * SPECIFIC USER FUNCTIONS ( ADMIN FUNCTIONS )
8
+ */
9
+ readUserMeta(user: UserModel, pagination?: PaginationDTO, order?: OrderDTO, filter?: IFilter[]): Promise<Ok>;
10
+ getUserMeta(user: UserModel, key: string): Promise<Ok>;
11
+ addUserMetadata(user: UserModel, metadata: UserMetadata): Promise<Ok>;
12
+ updateUserMetadata(meta: UserMetadata, _user: UserModel, data: UserMetadataDto): Promise<Ok>;
13
+ deleteUserMetadata(user: UserModel, meta: number): Promise<Ok>;
14
+ /**
15
+ * --------------------------------------------------------------------------
16
+ */
17
+ readMeta(pagination?: PaginationDTO, order?: OrderDTO, filter?: IFilter[]): Promise<Ok>;
18
+ getMeta(key: string): Promise<Ok>;
19
+ addMetadata(metadata: UserMetadata): Promise<void>;
20
+ updateMetadata(meta: string, data: UserMetadataDto): Promise<Ok>;
21
+ deleteMetadata(meta: number): Promise<Ok>;
11
22
  }
12
23
  //# sourceMappingURL=UserMetadataController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserMetadataController.d.ts","sourceRoot":"","sources":["../../../src/controllers/UserMetadataController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,EAAE,EAAwC,cAAc,EAAS,MAAM,eAAe,CAAC;AAChH,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEhE,OAAO,EAAW,aAAa,EAAE,QAAQ,EAAU,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEtF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,qBAGa,sBAAuB,SAAQ,cAAc;IAIzC,QAAQ,CACT,IAAI,EAAE,SAAS,EACd,UAAU,CAAC,EAAE,aAAa,EAC1B,KAAK,CAAC,EAAE,QAAQ,EAEzB,MAAM,CAAC,EAAE,OAAO,EAAE;IAYT,OAAO,CAAS,IAAI,EAAE,SAAS,EAAW,GAAG,EAAE,MAAM;IASrD,WAAW,CAAS,IAAI,EAAE,SAAS,EAAa,QAAQ,EAAE,YAAY;IAUtE,cAAc,CAAS,IAAI,EAAE,SAAS,EAAW,IAAI,EAAE,MAAM,EAAU,IAAI,EAAE,eAAe;IAkB5F,cAAc,CAAS,IAAI,EAAE,SAAS,EAAW,IAAI,EAAE,MAAM;CAS7E"}
1
+ {"version":3,"file":"UserMetadataController.d.ts","sourceRoot":"","sources":["../../../src/controllers/UserMetadataController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,EAAE,EAAwC,cAAc,EAAS,MAAM,eAAe,CAAC;AAChH,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEhE,OAAO,EAAW,aAAa,EAAE,QAAQ,EAAU,OAAO,EAAa,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,qBAGa,sBAAuB,SAAQ,cAAc;IAGtD;;OAEG;IAIU,YAAY,CACc,IAAI,EAAE,SAAS,EACzC,UAAU,CAAC,EAAE,aAAa,EAC1B,KAAK,CAAC,EAAE,QAAQ,EAEzB,MAAM,CAAC,EAAE,OAAO,EAAE;IAcT,WAAW,CACe,IAAI,EAAE,SAAS,EACzC,GAAG,EAAE,MAAM;IASX,eAAe,CACW,IAAI,EAAE,SAAS,EACvC,QAAQ,EAAE,YAAY;IASxB,kBAAkB,CAOxB,IAAI,EAAE,YAAY,EACc,KAAK,EAAE,SAAS,EAC3C,IAAI,EAAE,eAAe;IAYpB,kBAAkB,CACQ,IAAI,EAAE,SAAS,EACzC,IAAI,EAAE,MAAM;IAWzB;;OAEG;IAMU,QAAQ,CACR,UAAU,CAAC,EAAE,aAAa,EAC1B,KAAK,CAAC,EAAE,QAAQ,EAEzB,MAAM,CAAC,EAAE,OAAO,EAAE;IAWT,OAAO,CAAU,GAAG,EAAE,MAAM;IAQ5B,WAAW,CAAY,QAAQ,EAAE,YAAY;IAM7C,cAAc,CAAU,IAAI,EAAE,MAAM,EAAU,IAAI,EAAE,eAAe;IAYnE,cAAc,CAAU,IAAI,EAAE,MAAM;CAOpD"}
@@ -17,12 +17,14 @@ const http_1 = require("@spinajs/http");
17
17
  const rbac_1 = require("@spinajs/rbac");
18
18
  const rbac_http_1 = require("@spinajs/rbac-http");
19
19
  const orm_http_1 = require("@spinajs/orm-http");
20
- const exceptions_1 = require("@spinajs/exceptions");
21
20
  const metadata_dto_js_1 = require("../dto/metadata-dto.js");
22
21
  const orm_1 = require("@spinajs/orm");
23
22
  const FilterableUserMetadata_js_1 = require("../models/FilterableUserMetadata.js");
24
23
  let UserMetadataController = class UserMetadataController extends http_1.BaseController {
25
- async readMeta(user, pagination, order, filter) {
24
+ /**
25
+ * SPECIFIC USER FUNCTIONS ( ADMIN FUNCTIONS )
26
+ */
27
+ async readUserMeta(user, pagination, order, filter) {
26
28
  return new http_1.Ok(FilterableUserMetadata_js_1.FilterableUserMetadata.select().where({
27
29
  user_id: user.Id
28
30
  }).filter(filter)
@@ -30,42 +32,69 @@ let UserMetadataController = class UserMetadataController extends http_1.BaseCon
30
32
  .skip(pagination?.limit * pagination?.page || 0)
31
33
  .order(order?.column ?? 'Id', order?.order ?? orm_1.SortOrder.DESC));
32
34
  }
33
- async getMeta(user, key) {
35
+ async getUserMeta(user, key) {
34
36
  return new http_1.Ok(rbac_1.UserMetadata.where({
35
37
  Key: key,
36
38
  user_id: user.Id
37
39
  }).firstOrFail());
38
40
  }
39
- async addMetadata(user, metadata) {
41
+ async addUserMetadata(user, metadata) {
40
42
  metadata.User.attach(user);
41
- await metadata.insert();
42
- return new http_1.Ok(metadata);
43
+ await metadata.insert(orm_1.InsertBehaviour.InsertOrUpdate);
44
+ return new http_1.Ok();
43
45
  }
44
- async updateMetadata(user, meta, data) {
45
- const metadata = await rbac_1.UserMetadata.where("Key", meta).orWhere("Id", meta).firstOrFail();
46
- if (metadata.user_id !== user.Id) {
47
- throw new exceptions_1.Forbidden(`cannot update metadata for given user`);
48
- }
49
- metadata.Key = data.Key;
50
- metadata.Value = data.Value;
51
- metadata.Type = data.Type;
52
- await metadata.update();
46
+ async updateUserMetadata(meta, _user, data) {
47
+ await meta.update({
48
+ Key: data.Key,
49
+ Value: data.Value,
50
+ Type: data.Type
51
+ });
53
52
  return new http_1.Ok();
54
53
  }
55
- async deleteMetadata(user, meta) {
56
- const m = await rbac_1.UserMetadata.where({
54
+ async deleteUserMetadata(user, meta) {
55
+ await rbac_1.UserMetadata.destroy().where({
57
56
  Id: meta,
58
57
  user_id: user.Id
59
- }).firstOrFail();
60
- await m.destroy();
58
+ });
59
+ return new http_1.Ok();
60
+ }
61
+ /**
62
+ * --------------------------------------------------------------------------
63
+ */
64
+ async readMeta(pagination, order, filter) {
65
+ return new http_1.Ok(FilterableUserMetadata_js_1.FilterableUserMetadata.select().filter(filter)
66
+ .take(pagination?.limit ?? undefined)
67
+ .skip(pagination?.limit * pagination?.page || 0)
68
+ .order(order?.column ?? 'Id', order?.order ?? orm_1.SortOrder.DESC));
69
+ }
70
+ async getMeta(key) {
71
+ return new http_1.Ok(rbac_1.UserMetadata.where({
72
+ Key: key,
73
+ }).firstOrFail());
74
+ }
75
+ async addMetadata(metadata) {
76
+ await metadata.insert(orm_1.InsertBehaviour.InsertOrUpdate);
77
+ }
78
+ async updateMetadata(meta, data) {
79
+ await rbac_1.UserMetadata.update({
80
+ Key: data.Key,
81
+ Value: data.Value,
82
+ Type: data.Type
83
+ }).where("Key", meta).orWhere("Id", meta);
84
+ return new http_1.Ok();
85
+ }
86
+ async deleteMetadata(meta) {
87
+ await rbac_1.UserMetadata.destroy().where({
88
+ Id: meta
89
+ });
61
90
  return new http_1.Ok();
62
91
  }
63
92
  };
64
93
  exports.UserMetadataController = UserMetadataController;
65
94
  __decorate([
66
- (0, http_1.Get)("/"),
67
- (0, rbac_http_1.Permission)(['readOwn', 'readAny']),
68
- __param(0, (0, rbac_http_1.User)()),
95
+ (0, http_1.Get)(":user/metadata"),
96
+ (0, rbac_http_1.Permission)(['readAny']),
97
+ __param(0, (0, orm_http_1.FromModel)({ queryField: "Uuid" })),
69
98
  __param(1, (0, http_1.Query)()),
70
99
  __param(2, (0, http_1.Query)()),
71
100
  __param(3, (0, orm_http_1.Filter)(FilterableUserMetadata_js_1.FilterableUserMetadata)),
@@ -74,45 +103,99 @@ __decorate([
74
103
  orm_http_1.PaginationDTO,
75
104
  orm_http_1.OrderDTO, Array]),
76
105
  __metadata("design:returntype", Promise)
77
- ], UserMetadataController.prototype, "readMeta", null);
106
+ ], UserMetadataController.prototype, "readUserMeta", null);
78
107
  __decorate([
79
- (0, http_1.Get)(":key"),
80
- __param(0, (0, rbac_http_1.User)()),
108
+ (0, http_1.Get)(":user/metadata/:key"),
109
+ (0, rbac_http_1.Permission)(['readAny']),
110
+ __param(0, (0, orm_http_1.FromModel)({ queryField: "Uuid" })),
81
111
  __param(1, (0, http_1.Param)()),
82
112
  __metadata("design:type", Function),
83
113
  __metadata("design:paramtypes", [rbac_1.User, String]),
84
114
  __metadata("design:returntype", Promise)
85
- ], UserMetadataController.prototype, "getMeta", null);
115
+ ], UserMetadataController.prototype, "getUserMeta", null);
86
116
  __decorate([
87
- (0, http_1.Post)("/"),
88
- (0, rbac_http_1.Permission)(['updateOwn', 'updateAny']),
89
- __param(0, (0, rbac_http_1.User)()),
117
+ (0, http_1.Post)(":user/metadata"),
118
+ (0, rbac_http_1.Permission)(['updateAny']),
119
+ __param(0, (0, orm_http_1.FromModel)({ queryField: "Uuid" })),
90
120
  __param(1, (0, orm_http_1.AsModel)()),
91
121
  __metadata("design:type", Function),
92
- __metadata("design:paramtypes", [rbac_1.User, rbac_1.UserMetadata]),
122
+ __metadata("design:paramtypes", [rbac_1.User,
123
+ rbac_1.UserMetadata]),
93
124
  __metadata("design:returntype", Promise)
94
- ], UserMetadataController.prototype, "addMetadata", null);
125
+ ], UserMetadataController.prototype, "addUserMetadata", null);
95
126
  __decorate([
96
- (0, http_1.Patch)(':meta'),
97
- (0, rbac_http_1.Permission)(['updateOwn', 'updateAny']),
98
- __param(0, (0, rbac_http_1.User)()),
99
- __param(1, (0, http_1.Param)()),
127
+ (0, http_1.Patch)(':_user/metadata/:meta'),
128
+ (0, rbac_http_1.Permission)(['updateAny']),
129
+ __param(0, (0, orm_http_1.FromModel)({
130
+ query: (function ([_, user], meta) {
131
+ return this.where(function () {
132
+ this.where("Key", meta).orWhere("Id", meta);
133
+ }).andWhere("user_id", user.Id);
134
+ })
135
+ })),
136
+ __param(1, (0, orm_http_1.FromModel)({ queryField: "Uuid" })),
100
137
  __param(2, (0, http_1.Body)()),
101
138
  __metadata("design:type", Function),
102
- __metadata("design:paramtypes", [rbac_1.User, String, metadata_dto_js_1.UserMetadataDto]),
139
+ __metadata("design:paramtypes", [rbac_1.UserMetadata,
140
+ rbac_1.User,
141
+ metadata_dto_js_1.UserMetadataDto]),
103
142
  __metadata("design:returntype", Promise)
104
- ], UserMetadataController.prototype, "updateMetadata", null);
143
+ ], UserMetadataController.prototype, "updateUserMetadata", null);
105
144
  __decorate([
106
- (0, http_1.Del)(':meta'),
107
- (0, rbac_http_1.Permission)(['deleteOwn', 'deleteAny']),
108
- __param(0, (0, rbac_http_1.User)()),
145
+ (0, http_1.Del)(':user/metadata/:meta'),
146
+ (0, rbac_http_1.Permission)(['deleteAny']),
147
+ __param(0, (0, orm_http_1.FromModel)({ queryField: "Uuid" })),
109
148
  __param(1, (0, http_1.Param)()),
110
149
  __metadata("design:type", Function),
111
150
  __metadata("design:paramtypes", [rbac_1.User, Number]),
112
151
  __metadata("design:returntype", Promise)
152
+ ], UserMetadataController.prototype, "deleteUserMetadata", null);
153
+ __decorate([
154
+ (0, http_1.Get)("metadata"),
155
+ (0, rbac_http_1.Permission)(['readOwn']),
156
+ __param(0, (0, http_1.Query)()),
157
+ __param(1, (0, http_1.Query)()),
158
+ __param(2, (0, orm_http_1.Filter)(FilterableUserMetadata_js_1.FilterableUserMetadata)),
159
+ __metadata("design:type", Function),
160
+ __metadata("design:paramtypes", [orm_http_1.PaginationDTO,
161
+ orm_http_1.OrderDTO, Array]),
162
+ __metadata("design:returntype", Promise)
163
+ ], UserMetadataController.prototype, "readMeta", null);
164
+ __decorate([
165
+ (0, http_1.Get)("metadata/:key"),
166
+ (0, rbac_http_1.Permission)(['readOwn']),
167
+ __param(0, (0, http_1.Param)()),
168
+ __metadata("design:type", Function),
169
+ __metadata("design:paramtypes", [String]),
170
+ __metadata("design:returntype", Promise)
171
+ ], UserMetadataController.prototype, "getMeta", null);
172
+ __decorate([
173
+ (0, http_1.Post)("metadata"),
174
+ (0, rbac_http_1.Permission)(['updateOwn']),
175
+ __param(0, (0, orm_http_1.AsModel)()),
176
+ __metadata("design:type", Function),
177
+ __metadata("design:paramtypes", [rbac_1.UserMetadata]),
178
+ __metadata("design:returntype", Promise)
179
+ ], UserMetadataController.prototype, "addMetadata", null);
180
+ __decorate([
181
+ (0, http_1.Patch)('metadata/:meta'),
182
+ (0, rbac_http_1.Permission)(['updateOwn']),
183
+ __param(0, (0, http_1.Param)()),
184
+ __param(1, (0, http_1.Body)()),
185
+ __metadata("design:type", Function),
186
+ __metadata("design:paramtypes", [String, metadata_dto_js_1.UserMetadataDto]),
187
+ __metadata("design:returntype", Promise)
188
+ ], UserMetadataController.prototype, "updateMetadata", null);
189
+ __decorate([
190
+ (0, http_1.Del)('metadata/:meta'),
191
+ (0, rbac_http_1.Permission)(['deleteOwn']),
192
+ __param(0, (0, http_1.Param)()),
193
+ __metadata("design:type", Function),
194
+ __metadata("design:paramtypes", [Number]),
195
+ __metadata("design:returntype", Promise)
113
196
  ], UserMetadataController.prototype, "deleteMetadata", null);
114
197
  exports.UserMetadataController = UserMetadataController = __decorate([
115
- (0, http_1.BasePath)('user/metadata'),
198
+ (0, http_1.BasePath)('user'),
116
199
  (0, rbac_http_1.Resource)('user.metadata'),
117
200
  (0, http_1.Policy)(rbac_http_1.LoggedPolicy)
118
201
  ], UserMetadataController);
@@ -1 +1 @@
1
- {"version":3,"file":"UserMetadataController.js","sourceRoot":"","sources":["../../../src/controllers/UserMetadataController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UserMetadataController.js","sourceRoot":"","sources":["../../../src/controllers/UserMetadataController.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"LoginController.d.ts","sourceRoot":"","sources":["../../../src/controllers/LoginController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAwB,EAAE,EAAe,YAAY,EAAU,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAE,YAAY,EAAE,eAAe,EAAqB,aAAa,EAAiB,MAAM,eAAe,CAAC;AAE/G,OAAO,EAA6B,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGlF,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,qBACa,eAAgB,SAAQ,cAAc;IAEjD,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAGvC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAGrC,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAK3C,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC;IAGxC,SAAS,CAAC,mBAAmB,EAAE,GAAG,CAAC;IAGnC,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC;IAIf,KAAK,CAAS,WAAW,EAAE,YAAY;IAmKvC,MAAM,CAAW,IAAI,EAAE,MAAM;IA4B7B,MAAM,CAAiB,IAAI,EAAE,IAAI;CA0F/C"}
1
+ {"version":3,"file":"LoginController.d.ts","sourceRoot":"","sources":["../../../src/controllers/LoginController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAwB,EAAE,EAAe,YAAY,EAAU,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAE,YAAY,EAAE,eAAe,EAAqB,aAAa,EAAiB,MAAM,eAAe,CAAC;AAE/G,OAAO,EAA6B,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGlF,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,qBACa,eAAgB,SAAQ,cAAc;IAEjD,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAGvC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IAGrC,SAAS,CAAC,eAAe,EAAE,eAAe,CAAC;IAK3C,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC;IAGxC,SAAS,CAAC,mBAAmB,EAAE,GAAG,CAAC;IAGnC,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC;IAIf,KAAK,CAAS,WAAW,EAAE,YAAY;IAoKvC,MAAM,CAAW,IAAI,EAAE,MAAM;IA4B7B,MAAM,CAAiB,IAAI,EAAE,IAAI;CA0F/C"}
@@ -36,7 +36,8 @@ let LoginController = class LoginController extends BaseController {
36
36
  const combinedGrants = Object.assign({}, ...userGrants);
37
37
  return new Ok({
38
38
  ...user.dehydrate(),
39
- Grants: combinedGrants
39
+ Grants: combinedGrants,
40
+ Metadata: user.Metadata.map(m => m.dehydrate())
40
41
  }, {
41
42
  Coockies: [
42
43
  {
@@ -1 +1 @@
1
- {"version":3,"file":"LoginController.js","sourceRoot":"","sources":["../../../src/controllers/LoginController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LoginController.js","sourceRoot":"","sources":["../../../src/controllers/LoginController.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,21 @@ import { User as UserModel, UserMetadata } from '@spinajs/rbac';
3
3
  import { PaginationDTO, OrderDTO, IFilter } from '@spinajs/orm-http';
4
4
  import { UserMetadataDto } from '../dto/metadata-dto.js';
5
5
  export declare class UserMetadataController extends BaseController {
6
- readMeta(user: UserModel, pagination?: PaginationDTO, order?: OrderDTO, filter?: IFilter[]): Promise<Ok>;
7
- getMeta(user: UserModel, key: string): Promise<Ok>;
8
- addMetadata(user: UserModel, metadata: UserMetadata): Promise<Ok>;
9
- updateMetadata(user: UserModel, meta: string, data: UserMetadataDto): Promise<Ok>;
10
- deleteMetadata(user: UserModel, meta: number): Promise<Ok>;
6
+ /**
7
+ * SPECIFIC USER FUNCTIONS ( ADMIN FUNCTIONS )
8
+ */
9
+ readUserMeta(user: UserModel, pagination?: PaginationDTO, order?: OrderDTO, filter?: IFilter[]): Promise<Ok>;
10
+ getUserMeta(user: UserModel, key: string): Promise<Ok>;
11
+ addUserMetadata(user: UserModel, metadata: UserMetadata): Promise<Ok>;
12
+ updateUserMetadata(meta: UserMetadata, _user: UserModel, data: UserMetadataDto): Promise<Ok>;
13
+ deleteUserMetadata(user: UserModel, meta: number): Promise<Ok>;
14
+ /**
15
+ * --------------------------------------------------------------------------
16
+ */
17
+ readMeta(pagination?: PaginationDTO, order?: OrderDTO, filter?: IFilter[]): Promise<Ok>;
18
+ getMeta(key: string): Promise<Ok>;
19
+ addMetadata(metadata: UserMetadata): Promise<void>;
20
+ updateMetadata(meta: string, data: UserMetadataDto): Promise<Ok>;
21
+ deleteMetadata(meta: number): Promise<Ok>;
11
22
  }
12
23
  //# sourceMappingURL=UserMetadataController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserMetadataController.d.ts","sourceRoot":"","sources":["../../../src/controllers/UserMetadataController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,EAAE,EAAwC,cAAc,EAAS,MAAM,eAAe,CAAC;AAChH,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEhE,OAAO,EAAW,aAAa,EAAE,QAAQ,EAAU,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEtF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,qBAGa,sBAAuB,SAAQ,cAAc;IAIzC,QAAQ,CACT,IAAI,EAAE,SAAS,EACd,UAAU,CAAC,EAAE,aAAa,EAC1B,KAAK,CAAC,EAAE,QAAQ,EAEzB,MAAM,CAAC,EAAE,OAAO,EAAE;IAYT,OAAO,CAAS,IAAI,EAAE,SAAS,EAAW,GAAG,EAAE,MAAM;IASrD,WAAW,CAAS,IAAI,EAAE,SAAS,EAAa,QAAQ,EAAE,YAAY;IAUtE,cAAc,CAAS,IAAI,EAAE,SAAS,EAAW,IAAI,EAAE,MAAM,EAAU,IAAI,EAAE,eAAe;IAkB5F,cAAc,CAAS,IAAI,EAAE,SAAS,EAAW,IAAI,EAAE,MAAM;CAS7E"}
1
+ {"version":3,"file":"UserMetadataController.d.ts","sourceRoot":"","sources":["../../../src/controllers/UserMetadataController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,EAAE,EAAwC,cAAc,EAAS,MAAM,eAAe,CAAC;AAChH,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEhE,OAAO,EAAW,aAAa,EAAE,QAAQ,EAAU,OAAO,EAAa,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,qBAGa,sBAAuB,SAAQ,cAAc;IAGtD;;OAEG;IAIU,YAAY,CACc,IAAI,EAAE,SAAS,EACzC,UAAU,CAAC,EAAE,aAAa,EAC1B,KAAK,CAAC,EAAE,QAAQ,EAEzB,MAAM,CAAC,EAAE,OAAO,EAAE;IAcT,WAAW,CACe,IAAI,EAAE,SAAS,EACzC,GAAG,EAAE,MAAM;IASX,eAAe,CACW,IAAI,EAAE,SAAS,EACvC,QAAQ,EAAE,YAAY;IASxB,kBAAkB,CAOxB,IAAI,EAAE,YAAY,EACc,KAAK,EAAE,SAAS,EAC3C,IAAI,EAAE,eAAe;IAYpB,kBAAkB,CACQ,IAAI,EAAE,SAAS,EACzC,IAAI,EAAE,MAAM;IAWzB;;OAEG;IAMU,QAAQ,CACR,UAAU,CAAC,EAAE,aAAa,EAC1B,KAAK,CAAC,EAAE,QAAQ,EAEzB,MAAM,CAAC,EAAE,OAAO,EAAE;IAWT,OAAO,CAAU,GAAG,EAAE,MAAM;IAQ5B,WAAW,CAAY,QAAQ,EAAE,YAAY;IAM7C,cAAc,CAAU,IAAI,EAAE,MAAM,EAAU,IAAI,EAAE,eAAe;IAYnE,cAAc,CAAU,IAAI,EAAE,MAAM;CAOpD"}
@@ -12,14 +12,16 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  };
13
13
  import { Post, BasePath, Ok, Del, Body, Get, Query, Param, Policy, BaseController, Patch } from '@spinajs/http';
14
14
  import { User as UserModel, UserMetadata } from '@spinajs/rbac';
15
- import { LoggedPolicy, Permission, Resource, User } from '@spinajs/rbac-http';
16
- import { AsModel, PaginationDTO, OrderDTO, Filter } from '@spinajs/orm-http';
17
- import { Forbidden } from '@spinajs/exceptions';
15
+ import { LoggedPolicy, Permission, Resource } from '@spinajs/rbac-http';
16
+ import { AsModel, PaginationDTO, OrderDTO, Filter, FromModel } from '@spinajs/orm-http';
18
17
  import { UserMetadataDto } from '../dto/metadata-dto.js';
19
- import { SortOrder } from '@spinajs/orm';
18
+ import { InsertBehaviour, SortOrder } from '@spinajs/orm';
20
19
  import { FilterableUserMetadata } from '../models/FilterableUserMetadata.js';
21
20
  let UserMetadataController = class UserMetadataController extends BaseController {
22
- async readMeta(user, pagination, order, filter) {
21
+ /**
22
+ * SPECIFIC USER FUNCTIONS ( ADMIN FUNCTIONS )
23
+ */
24
+ async readUserMeta(user, pagination, order, filter) {
23
25
  return new Ok(FilterableUserMetadata.select().where({
24
26
  user_id: user.Id
25
27
  }).filter(filter)
@@ -27,41 +29,68 @@ let UserMetadataController = class UserMetadataController extends BaseController
27
29
  .skip(pagination?.limit * pagination?.page || 0)
28
30
  .order(order?.column ?? 'Id', order?.order ?? SortOrder.DESC));
29
31
  }
30
- async getMeta(user, key) {
32
+ async getUserMeta(user, key) {
31
33
  return new Ok(UserMetadata.where({
32
34
  Key: key,
33
35
  user_id: user.Id
34
36
  }).firstOrFail());
35
37
  }
36
- async addMetadata(user, metadata) {
38
+ async addUserMetadata(user, metadata) {
37
39
  metadata.User.attach(user);
38
- await metadata.insert();
39
- return new Ok(metadata);
40
+ await metadata.insert(InsertBehaviour.InsertOrUpdate);
41
+ return new Ok();
40
42
  }
41
- async updateMetadata(user, meta, data) {
42
- const metadata = await UserMetadata.where("Key", meta).orWhere("Id", meta).firstOrFail();
43
- if (metadata.user_id !== user.Id) {
44
- throw new Forbidden(`cannot update metadata for given user`);
45
- }
46
- metadata.Key = data.Key;
47
- metadata.Value = data.Value;
48
- metadata.Type = data.Type;
49
- await metadata.update();
43
+ async updateUserMetadata(meta, _user, data) {
44
+ await meta.update({
45
+ Key: data.Key,
46
+ Value: data.Value,
47
+ Type: data.Type
48
+ });
50
49
  return new Ok();
51
50
  }
52
- async deleteMetadata(user, meta) {
53
- const m = await UserMetadata.where({
51
+ async deleteUserMetadata(user, meta) {
52
+ await UserMetadata.destroy().where({
54
53
  Id: meta,
55
54
  user_id: user.Id
56
- }).firstOrFail();
57
- await m.destroy();
55
+ });
56
+ return new Ok();
57
+ }
58
+ /**
59
+ * --------------------------------------------------------------------------
60
+ */
61
+ async readMeta(pagination, order, filter) {
62
+ return new Ok(FilterableUserMetadata.select().filter(filter)
63
+ .take(pagination?.limit ?? undefined)
64
+ .skip(pagination?.limit * pagination?.page || 0)
65
+ .order(order?.column ?? 'Id', order?.order ?? SortOrder.DESC));
66
+ }
67
+ async getMeta(key) {
68
+ return new Ok(UserMetadata.where({
69
+ Key: key,
70
+ }).firstOrFail());
71
+ }
72
+ async addMetadata(metadata) {
73
+ await metadata.insert(InsertBehaviour.InsertOrUpdate);
74
+ }
75
+ async updateMetadata(meta, data) {
76
+ await UserMetadata.update({
77
+ Key: data.Key,
78
+ Value: data.Value,
79
+ Type: data.Type
80
+ }).where("Key", meta).orWhere("Id", meta);
81
+ return new Ok();
82
+ }
83
+ async deleteMetadata(meta) {
84
+ await UserMetadata.destroy().where({
85
+ Id: meta
86
+ });
58
87
  return new Ok();
59
88
  }
60
89
  };
61
90
  __decorate([
62
- Get("/"),
63
- Permission(['readOwn', 'readAny']),
64
- __param(0, User()),
91
+ Get(":user/metadata"),
92
+ Permission(['readAny']),
93
+ __param(0, FromModel({ queryField: "Uuid" })),
65
94
  __param(1, Query()),
66
95
  __param(2, Query()),
67
96
  __param(3, Filter(FilterableUserMetadata)),
@@ -70,45 +99,99 @@ __decorate([
70
99
  PaginationDTO,
71
100
  OrderDTO, Array]),
72
101
  __metadata("design:returntype", Promise)
73
- ], UserMetadataController.prototype, "readMeta", null);
102
+ ], UserMetadataController.prototype, "readUserMeta", null);
74
103
  __decorate([
75
- Get(":key"),
76
- __param(0, User()),
104
+ Get(":user/metadata/:key"),
105
+ Permission(['readAny']),
106
+ __param(0, FromModel({ queryField: "Uuid" })),
77
107
  __param(1, Param()),
78
108
  __metadata("design:type", Function),
79
109
  __metadata("design:paramtypes", [UserModel, String]),
80
110
  __metadata("design:returntype", Promise)
81
- ], UserMetadataController.prototype, "getMeta", null);
111
+ ], UserMetadataController.prototype, "getUserMeta", null);
82
112
  __decorate([
83
- Post("/"),
84
- Permission(['updateOwn', 'updateAny']),
85
- __param(0, User()),
113
+ Post(":user/metadata"),
114
+ Permission(['updateAny']),
115
+ __param(0, FromModel({ queryField: "Uuid" })),
86
116
  __param(1, AsModel()),
87
117
  __metadata("design:type", Function),
88
- __metadata("design:paramtypes", [UserModel, UserMetadata]),
118
+ __metadata("design:paramtypes", [UserModel,
119
+ UserMetadata]),
89
120
  __metadata("design:returntype", Promise)
90
- ], UserMetadataController.prototype, "addMetadata", null);
121
+ ], UserMetadataController.prototype, "addUserMetadata", null);
91
122
  __decorate([
92
- Patch(':meta'),
93
- Permission(['updateOwn', 'updateAny']),
94
- __param(0, User()),
95
- __param(1, Param()),
123
+ Patch(':_user/metadata/:meta'),
124
+ Permission(['updateAny']),
125
+ __param(0, FromModel({
126
+ query: (function ([_, user], meta) {
127
+ return this.where(function () {
128
+ this.where("Key", meta).orWhere("Id", meta);
129
+ }).andWhere("user_id", user.Id);
130
+ })
131
+ })),
132
+ __param(1, FromModel({ queryField: "Uuid" })),
96
133
  __param(2, Body()),
97
134
  __metadata("design:type", Function),
98
- __metadata("design:paramtypes", [UserModel, String, UserMetadataDto]),
135
+ __metadata("design:paramtypes", [UserMetadata,
136
+ UserModel,
137
+ UserMetadataDto]),
99
138
  __metadata("design:returntype", Promise)
100
- ], UserMetadataController.prototype, "updateMetadata", null);
139
+ ], UserMetadataController.prototype, "updateUserMetadata", null);
101
140
  __decorate([
102
- Del(':meta'),
103
- Permission(['deleteOwn', 'deleteAny']),
104
- __param(0, User()),
141
+ Del(':user/metadata/:meta'),
142
+ Permission(['deleteAny']),
143
+ __param(0, FromModel({ queryField: "Uuid" })),
105
144
  __param(1, Param()),
106
145
  __metadata("design:type", Function),
107
146
  __metadata("design:paramtypes", [UserModel, Number]),
108
147
  __metadata("design:returntype", Promise)
148
+ ], UserMetadataController.prototype, "deleteUserMetadata", null);
149
+ __decorate([
150
+ Get("metadata"),
151
+ Permission(['readOwn']),
152
+ __param(0, Query()),
153
+ __param(1, Query()),
154
+ __param(2, Filter(FilterableUserMetadata)),
155
+ __metadata("design:type", Function),
156
+ __metadata("design:paramtypes", [PaginationDTO,
157
+ OrderDTO, Array]),
158
+ __metadata("design:returntype", Promise)
159
+ ], UserMetadataController.prototype, "readMeta", null);
160
+ __decorate([
161
+ Get("metadata/:key"),
162
+ Permission(['readOwn']),
163
+ __param(0, Param()),
164
+ __metadata("design:type", Function),
165
+ __metadata("design:paramtypes", [String]),
166
+ __metadata("design:returntype", Promise)
167
+ ], UserMetadataController.prototype, "getMeta", null);
168
+ __decorate([
169
+ Post("metadata"),
170
+ Permission(['updateOwn']),
171
+ __param(0, AsModel()),
172
+ __metadata("design:type", Function),
173
+ __metadata("design:paramtypes", [UserMetadata]),
174
+ __metadata("design:returntype", Promise)
175
+ ], UserMetadataController.prototype, "addMetadata", null);
176
+ __decorate([
177
+ Patch('metadata/:meta'),
178
+ Permission(['updateOwn']),
179
+ __param(0, Param()),
180
+ __param(1, Body()),
181
+ __metadata("design:type", Function),
182
+ __metadata("design:paramtypes", [String, UserMetadataDto]),
183
+ __metadata("design:returntype", Promise)
184
+ ], UserMetadataController.prototype, "updateMetadata", null);
185
+ __decorate([
186
+ Del('metadata/:meta'),
187
+ Permission(['deleteOwn']),
188
+ __param(0, Param()),
189
+ __metadata("design:type", Function),
190
+ __metadata("design:paramtypes", [Number]),
191
+ __metadata("design:returntype", Promise)
109
192
  ], UserMetadataController.prototype, "deleteMetadata", null);
110
193
  UserMetadataController = __decorate([
111
- BasePath('user/metadata'),
194
+ BasePath('user'),
112
195
  Resource('user.metadata'),
113
196
  Policy(LoggedPolicy)
114
197
  ], UserMetadataController);