@zola_do/crud 0.2.3 → 0.2.5

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 (52) hide show
  1. package/README.md +104 -1
  2. package/dist/controller/entity-crud.controller.d.ts +2 -2
  3. package/dist/controller/entity-crud.controller.js +60 -10
  4. package/dist/controller/entity-crud.controller.js.map +1 -1
  5. package/dist/controller/extra-crud.controller.d.ts +2 -2
  6. package/dist/controller/extra-crud.controller.js +59 -9
  7. package/dist/controller/extra-crud.controller.js.map +1 -1
  8. package/dist/controller/relation-crud.controller.d.ts +2 -2
  9. package/dist/controller/relation-crud.controller.js +58 -8
  10. package/dist/controller/relation-crud.controller.js.map +1 -1
  11. package/dist/crud-operation/repository/entity-crud.repository.js +1 -2
  12. package/dist/crud-operation/repository/entity-crud.repository.js.map +1 -1
  13. package/dist/crud-operation/repository/extra-crud.repository.js +1 -2
  14. package/dist/crud-operation/repository/extra-crud.repository.js.map +1 -1
  15. package/dist/optional/rpc.d.ts +1 -0
  16. package/dist/optional/rpc.js +18 -0
  17. package/dist/optional/rpc.js.map +1 -0
  18. package/dist/repository/index.d.ts +1 -0
  19. package/dist/repository/index.js +18 -0
  20. package/dist/repository/index.js.map +1 -0
  21. package/dist/request-context/index.d.ts +1 -0
  22. package/dist/request-context/index.js +18 -0
  23. package/dist/request-context/index.js.map +1 -0
  24. package/dist/service/entity-crud.service.d.ts +3 -3
  25. package/dist/service/entity-crud.service.js +111 -33
  26. package/dist/service/entity-crud.service.js.map +1 -1
  27. package/dist/service/extra-crud.service.d.ts +2 -2
  28. package/dist/service/extra-crud.service.js +111 -38
  29. package/dist/service/extra-crud.service.js.map +1 -1
  30. package/dist/service/relation-crud.service.js +15 -1
  31. package/dist/service/relation-crud.service.js.map +1 -1
  32. package/dist/shared/api-data/api-paginated-response.js +24 -0
  33. package/dist/shared/api-data/api-paginated-response.js.map +1 -1
  34. package/dist/shared/api-data/data-response-format.d.ts +6 -0
  35. package/dist/shared/api-data/data-response-format.js +24 -0
  36. package/dist/shared/api-data/data-response-format.js.map +1 -1
  37. package/dist/shared/exceptions/index.d.ts +0 -1
  38. package/dist/shared/exceptions/index.js +0 -1
  39. package/dist/shared/exceptions/index.js.map +1 -1
  40. package/dist/shared/request-context/apply-create-context.helper.js +17 -4
  41. package/dist/shared/request-context/apply-create-context.helper.js.map +1 -1
  42. package/dist/shared/types/crud-option.type.d.ts +69 -12
  43. package/dist/shared/utils/crud-hooks.helper.d.ts +31 -2
  44. package/dist/shared/utils/crud-hooks.helper.js +172 -1
  45. package/dist/shared/utils/crud-hooks.helper.js.map +1 -1
  46. package/dist/shared/utils/cursor-query.helper.d.ts +6 -0
  47. package/dist/shared/utils/cursor-query.helper.js +49 -0
  48. package/dist/shared/utils/cursor-query.helper.js.map +1 -0
  49. package/dist/shared/utils/index.d.ts +1 -0
  50. package/dist/shared/utils/index.js +1 -0
  51. package/dist/shared/utils/index.js.map +1 -1
  52. package/package.json +30 -1
@@ -28,13 +28,12 @@ let ExtraCrudRepository = class ExtraCrudRepository {
28
28
  async create(itemData, req, options) {
29
29
  var _a, _b;
30
30
  const payload = (0, shared_1.sanitizeWritePayload)(itemData, options);
31
- await (0, shared_1.applyCreateContext)({
31
+ await (0, shared_1.runBeforeCreatePipeline)({
32
32
  itemData: payload,
33
33
  req,
34
34
  options,
35
35
  resolver: this.requestContextResolver,
36
36
  });
37
- await (0, shared_1.runCrudHook)(options, "beforeCreate", { itemData: payload, req });
38
37
  const manager = this.request[shared_1.ENTITY_MANAGER_KEY];
39
38
  manager.getRepository(this.entity);
40
39
  const item = this.repository.create(payload);
@@ -1 +1 @@
1
- {"version":3,"file":"extra-crud.repository.js","sourceRoot":"","sources":["../../../src/crud-operation/repository/extra-crud.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extra-crud.repository.js","sourceRoot":"","sources":["../../../src/crud-operation/repository/extra-crud.repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from '../shared/exceptions/rpc-exception.filter';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../shared/exceptions/rpc-exception.filter"), exports);
18
+ //# sourceMappingURL=rpc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../src/optional/rpc.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4EAA0D"}
@@ -0,0 +1 @@
1
+ export * from '../crud-operation/repository';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../crud-operation/repository"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/repository/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA6C"}
@@ -0,0 +1 @@
1
+ export * from '../shared/request-context';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../shared/request-context"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/request-context/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAA0C"}
@@ -6,12 +6,12 @@ export declare class EntityCrudService<T extends ObjectLiteral> {
6
6
  private readonly requestContextResolver?;
7
7
  constructor(repository: Repository<T>, requestContextResolver?: CrudRequestContextResolver);
8
8
  create(itemData: DeepPartial<any>, req?: any, options?: EntityCrudOptions): Promise<any>;
9
- findAll(query: CollectionQuery, req?: any): Promise<DataResponseFormat<T>>;
10
- findOne(id: any, req?: any): Promise<T | undefined>;
9
+ findAll(query: CollectionQuery, req?: any, options?: EntityCrudOptions): Promise<any>;
10
+ findOne(id: any, req?: any, options?: EntityCrudOptions): Promise<T | undefined>;
11
11
  update(id: string, itemData: any, req?: any, options?: EntityCrudOptions): Promise<T | undefined>;
12
12
  softDelete(id: string, req?: any, options?: EntityCrudOptions): Promise<void>;
13
13
  restore(id: string, req?: any, options?: EntityCrudOptions): Promise<void>;
14
- findAllArchived(query: CollectionQuery, req?: any): Promise<DataResponseFormat<T>>;
14
+ findAllArchived(query: CollectionQuery, req?: any, options?: EntityCrudOptions): Promise<DataResponseFormat<T>>;
15
15
  private findOneOrFail;
16
16
  private findOneOrFailWithDeleted;
17
17
  giveQueryResponse<T>(query: CollectionQuery, dataQuery: SelectQueryBuilder<T>): Promise<DataResponseFormat<T>>;
@@ -23,28 +23,62 @@ let EntityCrudService = class EntityCrudService {
23
23
  this.requestContextResolver = requestContextResolver;
24
24
  }
25
25
  async create(itemData, req, options) {
26
- var _a, _b;
26
+ var _a, _b, _c;
27
27
  const payload = (0, shared_1.sanitizeWritePayload)(itemData, options);
28
- await (0, shared_1.applyCreateContext)({
28
+ const context = (0, shared_1.createCrudHookContext)({
29
+ operation: "create",
30
+ req,
31
+ itemData: payload,
32
+ service: this,
33
+ repository: this.repository,
34
+ });
35
+ await (0, shared_1.runOperationAuthorization)(options, context);
36
+ await (0, shared_1.runBeforeCreatePipeline)({
29
37
  itemData: payload,
30
38
  req,
31
39
  options,
32
40
  resolver: this.requestContextResolver,
41
+ service: this,
42
+ repository: this.repository,
33
43
  });
34
- await (0, shared_1.runCrudHook)(options, "beforeCreate", { itemData: payload, req });
35
44
  const item = this.repository.create(payload);
36
45
  await this.repository.insert(item);
37
46
  const createdItem = item;
38
- await (0, shared_1.runCrudHook)(options, "afterCreate", {
39
- id: (_b = (_a = createdItem === null || createdItem === void 0 ? void 0 : createdItem.id) === null || _a === void 0 ? void 0 : _a.toString) === null || _b === void 0 ? void 0 : _b.call(_a),
40
- entity: createdItem,
47
+ context.id = (_b = (_a = createdItem === null || createdItem === void 0 ? void 0 : createdItem.id) === null || _a === void 0 ? void 0 : _a.toString) === null || _b === void 0 ? void 0 : _b.call(_a);
48
+ context.entity = createdItem;
49
+ context.result = createdItem;
50
+ await (0, shared_1.runAfterOperationHooks)(options, context);
51
+ return ((_c = context.result) !== null && _c !== void 0 ? _c : createdItem);
52
+ }
53
+ async findAll(query, req, options) {
54
+ var _a, _b;
55
+ const context = (0, shared_1.createCrudHookContext)({
56
+ operation: "findAll",
41
57
  req,
58
+ query: query,
59
+ where: {},
60
+ service: this,
61
+ repository: this.repository,
42
62
  });
43
- return createdItem;
44
- }
45
- async findAll(query, req) {
46
- const dataQuery = collection_query_1.QueryConstructor.constructQuery(this.repository, query);
63
+ await (0, shared_1.runOperationAuthorization)(options, context);
64
+ await (0, shared_1.runBeforeOperationHooks)(options, context);
65
+ (0, shared_1.applyWhereToCollectionQuery)(query, context.where);
47
66
  const response = new shared_1.DataResponseFormat();
67
+ if (collection_query_1.QueryConstructor.isCursorQuery(query)) {
68
+ const cursorResult = await collection_query_1.QueryConstructor.runCursorQuery(this.repository, query);
69
+ response.total = cursorResult.total;
70
+ response.items = cursorResult.items;
71
+ response.nextCursor = cursorResult.nextCursor;
72
+ response.prevCursor = cursorResult.prevCursor;
73
+ response.hasNextPage = cursorResult.hasNextPage;
74
+ response.nc = cursorResult.nextCursor;
75
+ response.pc = cursorResult.prevCursor;
76
+ response.hn = cursorResult.hasNextPage;
77
+ context.result = response;
78
+ await (0, shared_1.runAfterOperationHooks)(options, context);
79
+ return (_a = context.result) !== null && _a !== void 0 ? _a : response;
80
+ }
81
+ const dataQuery = collection_query_1.QueryConstructor.constructQuery(this.repository, query);
48
82
  if (query.count) {
49
83
  response.total = await dataQuery.getCount();
50
84
  }
@@ -53,37 +87,63 @@ let EntityCrudService = class EntityCrudService {
53
87
  response.total = total;
54
88
  response.items = result;
55
89
  }
56
- return response;
90
+ context.result = response;
91
+ await (0, shared_1.runAfterOperationHooks)(options, context);
92
+ return (_b = context.result) !== null && _b !== void 0 ? _b : response;
57
93
  }
58
- async findOne(id, req) {
59
- return await this.repository.findOneBy({ id });
94
+ async findOne(id, req, options) {
95
+ var _a, _b, _c;
96
+ const context = (0, shared_1.createCrudHookContext)({
97
+ operation: "findOne",
98
+ id: (_b = (_a = id === null || id === void 0 ? void 0 : id.toString) === null || _a === void 0 ? void 0 : _a.call(id)) !== null && _b !== void 0 ? _b : id,
99
+ req,
100
+ where: {},
101
+ service: this,
102
+ repository: this.repository,
103
+ });
104
+ await (0, shared_1.runOperationAuthorization)(options, context);
105
+ await (0, shared_1.runBeforeOperationHooks)(options, context);
106
+ const item = await this.repository.findOneBy({ id });
107
+ context.entity = item;
108
+ context.result = item;
109
+ await (0, shared_1.runAfterOperationHooks)(options, context);
110
+ return (_c = context.result) !== null && _c !== void 0 ? _c : item;
60
111
  }
61
112
  async update(id, itemData, req, options) {
113
+ var _a;
62
114
  const item = await this.findOneOrFail(id);
63
115
  const payload = (0, shared_1.sanitizeWritePayload)(itemData, options);
64
- await (0, shared_1.runCrudHook)(options, "beforeUpdate", {
116
+ const context = (0, shared_1.createCrudHookContext)({
117
+ operation: "update",
65
118
  id,
119
+ req,
66
120
  itemData: payload,
67
121
  entity: item,
68
- req,
122
+ service: this,
123
+ repository: this.repository,
69
124
  });
125
+ await (0, shared_1.runOperationAuthorization)(options, context);
126
+ await (0, shared_1.runBeforeOperationHooks)(options, context);
70
127
  await this.repository.update(item.id, payload);
71
128
  const updatedItem = Object.assign(Object.assign({}, item), payload);
72
- await (0, shared_1.runCrudHook)(options, "afterUpdate", {
73
- id,
74
- entity: updatedItem,
75
- req,
76
- });
77
- return updatedItem;
129
+ context.entity = updatedItem;
130
+ context.result = updatedItem;
131
+ await (0, shared_1.runAfterOperationHooks)(options, context);
132
+ return (_a = context.result) !== null && _a !== void 0 ? _a : updatedItem;
78
133
  }
79
134
  async softDelete(id, req, options) {
80
135
  var _a, _b, _c;
81
136
  const item = await this.findOneOrFail(id);
82
- await (0, shared_1.runCrudHook)(options, "beforeSoftDelete", {
137
+ const context = (0, shared_1.createCrudHookContext)({
138
+ operation: "delete",
83
139
  id,
84
- entity: item,
85
140
  req,
141
+ entity: item,
142
+ service: this,
143
+ repository: this.repository,
86
144
  });
145
+ await (0, shared_1.runOperationAuthorization)(options, context);
146
+ await (0, shared_1.runBeforeOperationHooks)(options, context);
87
147
  const deleteMode = (_a = options === null || options === void 0 ? void 0 : options.deleteMode) !== null && _a !== void 0 ? _a : "hard";
88
148
  const hasSoftDelete = !!((_c = (_b = this.repository) === null || _b === void 0 ? void 0 : _b.metadata) === null || _c === void 0 ? void 0 : _c.deleteDateColumn);
89
149
  if (deleteMode === "soft") {
@@ -103,23 +163,29 @@ let EntityCrudService = class EntityCrudService {
103
163
  else {
104
164
  await this.repository.remove(item);
105
165
  }
106
- await (0, shared_1.runCrudHook)(options, "afterSoftDelete", {
107
- id,
108
- entity: item,
109
- req,
110
- });
166
+ context.result = undefined;
167
+ await (0, shared_1.runAfterOperationHooks)(options, context);
111
168
  }
112
169
  async restore(id, req, options) {
113
170
  var _a, _b;
171
+ const context = (0, shared_1.createCrudHookContext)({
172
+ operation: "restore",
173
+ id,
174
+ req,
175
+ service: this,
176
+ repository: this.repository,
177
+ });
178
+ await (0, shared_1.runOperationAuthorization)(options, context);
179
+ await (0, shared_1.runBeforeOperationHooks)(options, context);
114
180
  if (!((_b = (_a = this.repository) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b.deleteDateColumn)) {
115
181
  throw new common_1.BadRequestException("restore_not_supported");
116
182
  }
117
- await (0, shared_1.runCrudHook)(options, "beforeRestore", { id, req });
118
- await this.findOneOrFailWithDeleted(id);
183
+ const item = await this.findOneOrFailWithDeleted(id);
184
+ context.entity = item;
119
185
  await this.repository.restore(id);
120
- await (0, shared_1.runCrudHook)(options, "afterRestore", { id, req });
186
+ await (0, shared_1.runAfterOperationHooks)(options, context);
121
187
  }
122
- async findAllArchived(query, req) {
188
+ async findAllArchived(query, req, options) {
123
189
  var _a, _b;
124
190
  if (!((_b = (_a = this.repository) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b.deleteDateColumn)) {
125
191
  throw new common_1.BadRequestException("archived_items_not_supported");
@@ -128,9 +194,21 @@ let EntityCrudService = class EntityCrudService {
128
194
  query.where.push([
129
195
  { column: "deletedAt", value: "", operator: collection_query_1.FilterOperators.IsNotNull },
130
196
  ]);
197
+ const response = new shared_1.DataResponseFormat();
198
+ if (collection_query_1.QueryConstructor.isCursorQuery(query)) {
199
+ const cursorResult = await collection_query_1.QueryConstructor.runCursorQuery(this.repository, query, true);
200
+ response.total = cursorResult.total;
201
+ response.items = cursorResult.items;
202
+ response.nextCursor = cursorResult.nextCursor;
203
+ response.prevCursor = cursorResult.prevCursor;
204
+ response.hasNextPage = cursorResult.hasNextPage;
205
+ response.nc = cursorResult.nextCursor;
206
+ response.pc = cursorResult.prevCursor;
207
+ response.hn = cursorResult.hasNextPage;
208
+ return response;
209
+ }
131
210
  const dataQuery = collection_query_1.QueryConstructor.constructQuery(this.repository, query);
132
211
  dataQuery.withDeleted();
133
- const response = new shared_1.DataResponseFormat();
134
212
  if (query.count) {
135
213
  response.total = await dataQuery.getCount();
136
214
  }
@@ -1 +1 @@
1
- {"version":3,"file":"entity-crud.service.js","sourceRoot":"","sources":["../../src/service/entity-crud.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-crud.service.js","sourceRoot":"","sources":["../../src/service/entity-crud.service.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,8 @@ export declare class ExtraCrudService<T extends ObjectLiteral> {
6
6
  private readonly requestContextResolver?;
7
7
  constructor(repository: Repository<T>, requestContextResolver?: CrudRequestContextResolver);
8
8
  create(itemData: DeepPartial<any>, req?: any, options?: ExtraCrudOptions): Promise<any>;
9
- findAll(entityId: string, query: CollectionQuery, extraCrudOptions: ExtraCrudOptions, req?: any): Promise<DataResponseFormat<T>>;
10
- findOne(id: any, req?: any): Promise<T | undefined>;
9
+ findAll(entityId: string, query: CollectionQuery, extraCrudOptions: ExtraCrudOptions, req?: any): Promise<any>;
10
+ findOne(id: any, req?: any, options?: ExtraCrudOptions): Promise<T | undefined>;
11
11
  update(id: string, itemData: any, req?: any, options?: ExtraCrudOptions): Promise<T | undefined>;
12
12
  softDelete(id: string, req?: any, options?: ExtraCrudOptions): Promise<void>;
13
13
  restore(id: string, req?: any, options?: ExtraCrudOptions): Promise<void>;
@@ -23,36 +23,65 @@ let ExtraCrudService = class ExtraCrudService {
23
23
  this.requestContextResolver = requestContextResolver;
24
24
  }
25
25
  async create(itemData, req, options) {
26
- var _a, _b;
26
+ var _a, _b, _c;
27
27
  const payload = (0, shared_1.sanitizeWritePayload)(itemData, options);
28
- await (0, shared_1.applyCreateContext)({
28
+ const context = (0, shared_1.createCrudHookContext)({
29
+ operation: "create",
30
+ req,
31
+ itemData: payload,
32
+ service: this,
33
+ repository: this.repository,
34
+ });
35
+ await (0, shared_1.runOperationAuthorization)(options, context);
36
+ await (0, shared_1.runBeforeCreatePipeline)({
29
37
  itemData: payload,
30
38
  req,
31
39
  options,
32
40
  resolver: this.requestContextResolver,
41
+ service: this,
42
+ repository: this.repository,
33
43
  });
34
- await (0, shared_1.runCrudHook)(options, "beforeCreate", { itemData: payload, req });
35
44
  const item = this.repository.create(payload);
36
45
  await this.repository.insert(item);
37
46
  const createdItem = item;
38
- await (0, shared_1.runCrudHook)(options, "afterCreate", {
39
- id: (_b = (_a = createdItem === null || createdItem === void 0 ? void 0 : createdItem.id) === null || _a === void 0 ? void 0 : _a.toString) === null || _b === void 0 ? void 0 : _b.call(_a),
40
- entity: createdItem,
41
- req,
42
- });
43
- return createdItem;
47
+ context.id = (_b = (_a = createdItem === null || createdItem === void 0 ? void 0 : createdItem.id) === null || _a === void 0 ? void 0 : _a.toString) === null || _b === void 0 ? void 0 : _b.call(_a);
48
+ context.entity = createdItem;
49
+ context.result = createdItem;
50
+ await (0, shared_1.runAfterOperationHooks)(options, context);
51
+ return (_c = context.result) !== null && _c !== void 0 ? _c : createdItem;
44
52
  }
45
53
  async findAll(entityId, query, extraCrudOptions, req) {
54
+ var _a, _b;
46
55
  const entityIdName = extraCrudOptions.entityIdName;
47
- query.where.push([
48
- {
49
- column: entityIdName,
50
- value: entityId,
51
- operator: collection_query_1.FilterOperators.EqualTo,
56
+ const context = (0, shared_1.createCrudHookContext)({
57
+ operation: "findAll",
58
+ req,
59
+ query: query,
60
+ where: {
61
+ [entityIdName]: entityId,
52
62
  },
53
- ]);
54
- const dataQuery = collection_query_1.QueryConstructor.constructQuery(this.repository, query);
63
+ service: this,
64
+ repository: this.repository,
65
+ });
66
+ await (0, shared_1.runOperationAuthorization)(extraCrudOptions, context);
67
+ await (0, shared_1.runBeforeOperationHooks)(extraCrudOptions, context);
68
+ (0, shared_1.applyWhereToCollectionQuery)(query, context.where);
55
69
  const response = new shared_1.DataResponseFormat();
70
+ if (collection_query_1.QueryConstructor.isCursorQuery(query)) {
71
+ const cursorResult = await collection_query_1.QueryConstructor.runCursorQuery(this.repository, query);
72
+ response.total = cursorResult.total;
73
+ response.items = cursorResult.items;
74
+ response.nextCursor = cursorResult.nextCursor;
75
+ response.prevCursor = cursorResult.prevCursor;
76
+ response.hasNextPage = cursorResult.hasNextPage;
77
+ response.nc = cursorResult.nextCursor;
78
+ response.pc = cursorResult.prevCursor;
79
+ response.hn = cursorResult.hasNextPage;
80
+ context.result = response;
81
+ await (0, shared_1.runAfterOperationHooks)(extraCrudOptions, context);
82
+ return (_a = context.result) !== null && _a !== void 0 ? _a : response;
83
+ }
84
+ const dataQuery = collection_query_1.QueryConstructor.constructQuery(this.repository, query);
56
85
  if (query.count) {
57
86
  response.total = await dataQuery.getCount();
58
87
  }
@@ -61,37 +90,63 @@ let ExtraCrudService = class ExtraCrudService {
61
90
  response.total = total;
62
91
  response.items = result;
63
92
  }
64
- return response;
93
+ context.result = response;
94
+ await (0, shared_1.runAfterOperationHooks)(extraCrudOptions, context);
95
+ return (_b = context.result) !== null && _b !== void 0 ? _b : response;
65
96
  }
66
- async findOne(id, req) {
67
- return await this.repository.findOneBy({ id });
97
+ async findOne(id, req, options) {
98
+ var _a, _b, _c;
99
+ const context = (0, shared_1.createCrudHookContext)({
100
+ operation: "findOne",
101
+ id: (_b = (_a = id === null || id === void 0 ? void 0 : id.toString) === null || _a === void 0 ? void 0 : _a.call(id)) !== null && _b !== void 0 ? _b : id,
102
+ req,
103
+ where: {},
104
+ service: this,
105
+ repository: this.repository,
106
+ });
107
+ await (0, shared_1.runOperationAuthorization)(options, context);
108
+ await (0, shared_1.runBeforeOperationHooks)(options, context);
109
+ const item = await this.repository.findOneBy({ id });
110
+ context.entity = item;
111
+ context.result = item;
112
+ await (0, shared_1.runAfterOperationHooks)(options, context);
113
+ return (_c = context.result) !== null && _c !== void 0 ? _c : item;
68
114
  }
69
115
  async update(id, itemData, req, options) {
116
+ var _a;
70
117
  const item = await this.findOneOrFail(id);
71
118
  const payload = (0, shared_1.sanitizeWritePayload)(itemData, options);
72
- await (0, shared_1.runCrudHook)(options, "beforeUpdate", {
119
+ const context = (0, shared_1.createCrudHookContext)({
120
+ operation: "update",
73
121
  id,
122
+ req,
74
123
  itemData: payload,
75
124
  entity: item,
76
- req,
125
+ service: this,
126
+ repository: this.repository,
77
127
  });
128
+ await (0, shared_1.runOperationAuthorization)(options, context);
129
+ await (0, shared_1.runBeforeOperationHooks)(options, context);
78
130
  await this.repository.update(item.id, payload);
79
131
  const updatedItem = Object.assign(Object.assign({}, item), payload);
80
- await (0, shared_1.runCrudHook)(options, "afterUpdate", {
81
- id,
82
- entity: updatedItem,
83
- req,
84
- });
85
- return updatedItem;
132
+ context.entity = updatedItem;
133
+ context.result = updatedItem;
134
+ await (0, shared_1.runAfterOperationHooks)(options, context);
135
+ return (_a = context.result) !== null && _a !== void 0 ? _a : updatedItem;
86
136
  }
87
137
  async softDelete(id, req, options) {
88
138
  var _a, _b, _c;
89
139
  const item = await this.findOneOrFail(id);
90
- await (0, shared_1.runCrudHook)(options, "beforeSoftDelete", {
140
+ const context = (0, shared_1.createCrudHookContext)({
141
+ operation: "delete",
91
142
  id,
92
- entity: item,
93
143
  req,
144
+ entity: item,
145
+ service: this,
146
+ repository: this.repository,
94
147
  });
148
+ await (0, shared_1.runOperationAuthorization)(options, context);
149
+ await (0, shared_1.runBeforeOperationHooks)(options, context);
95
150
  const deleteMode = (_a = options === null || options === void 0 ? void 0 : options.deleteMode) !== null && _a !== void 0 ? _a : "hard";
96
151
  const hasSoftDelete = !!((_c = (_b = this.repository) === null || _b === void 0 ? void 0 : _b.metadata) === null || _c === void 0 ? void 0 : _c.deleteDateColumn);
97
152
  if (deleteMode === "soft") {
@@ -111,21 +166,27 @@ let ExtraCrudService = class ExtraCrudService {
111
166
  else {
112
167
  await this.repository.remove(item);
113
168
  }
114
- await (0, shared_1.runCrudHook)(options, "afterSoftDelete", {
115
- id,
116
- entity: item,
117
- req,
118
- });
169
+ context.result = undefined;
170
+ await (0, shared_1.runAfterOperationHooks)(options, context);
119
171
  }
120
172
  async restore(id, req, options) {
121
173
  var _a, _b;
174
+ const context = (0, shared_1.createCrudHookContext)({
175
+ operation: "restore",
176
+ id,
177
+ req,
178
+ service: this,
179
+ repository: this.repository,
180
+ });
181
+ await (0, shared_1.runOperationAuthorization)(options, context);
182
+ await (0, shared_1.runBeforeOperationHooks)(options, context);
122
183
  if (!((_b = (_a = this.repository) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b.deleteDateColumn)) {
123
184
  throw new common_1.BadRequestException("restore_not_supported");
124
185
  }
125
- await (0, shared_1.runCrudHook)(options, "beforeRestore", { id, req });
126
- await this.findOneOrFailWithDeleted(id);
186
+ const item = await this.findOneOrFailWithDeleted(id);
187
+ context.entity = item;
127
188
  await this.repository.restore(id);
128
- await (0, shared_1.runCrudHook)(options, "afterRestore", { id, req });
189
+ await (0, shared_1.runAfterOperationHooks)(options, context);
129
190
  }
130
191
  async findAllArchived(entityId, query, extraCrudOptions, req) {
131
192
  var _a, _b;
@@ -141,9 +202,21 @@ let ExtraCrudService = class ExtraCrudService {
141
202
  operator: collection_query_1.FilterOperators.EqualTo,
142
203
  },
143
204
  ]);
205
+ const response = new shared_1.DataResponseFormat();
206
+ if (collection_query_1.QueryConstructor.isCursorQuery(query)) {
207
+ const cursorResult = await collection_query_1.QueryConstructor.runCursorQuery(this.repository, query, true);
208
+ response.total = cursorResult.total;
209
+ response.items = cursorResult.items;
210
+ response.nextCursor = cursorResult.nextCursor;
211
+ response.prevCursor = cursorResult.prevCursor;
212
+ response.hasNextPage = cursorResult.hasNextPage;
213
+ response.nc = cursorResult.nextCursor;
214
+ response.pc = cursorResult.prevCursor;
215
+ response.hn = cursorResult.hasNextPage;
216
+ return response;
217
+ }
144
218
  const dataQuery = collection_query_1.QueryConstructor.constructQuery(this.repository, query);
145
219
  dataQuery.withDeleted();
146
- const response = new shared_1.DataResponseFormat();
147
220
  if (query.count) {
148
221
  response.total = await dataQuery.getCount();
149
222
  }