@recursyve/nestjs-data-filter 10.1.2 → 10.2.0

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 (41) hide show
  1. package/lib/data-filter.repository.d.ts +3 -2
  2. package/lib/data-filter.repository.js +40 -10
  3. package/lib/decorators/index.d.ts +1 -0
  4. package/lib/decorators/index.js +2 -1
  5. package/lib/decorators/searchable-translation-attributes.decorator.d.ts +1 -0
  6. package/lib/decorators/searchable-translation-attributes.decorator.js +24 -0
  7. package/lib/filter/controllers/dynamic-filter.controller.d.ts +8 -8
  8. package/lib/filter/controllers/dynamic-filter.controller.js +21 -21
  9. package/lib/filter/controllers/filter.controller.d.ts +7 -7
  10. package/lib/filter/controllers/filter.controller.js +18 -18
  11. package/lib/filter/filter.service.d.ts +21 -5
  12. package/lib/filter/filter.service.js +62 -57
  13. package/lib/filter/filters/filter.d.ts +4 -1
  14. package/lib/filter/filters/filter.js +5 -5
  15. package/lib/filter/filters/select.filter.d.ts +3 -1
  16. package/lib/filter/filters/select.filter.js +2 -2
  17. package/lib/filter/models/filter-configuration-search.model.d.ts +2 -0
  18. package/lib/filter/models/filter-configuration-search.model.js +1 -1
  19. package/lib/filter/order-rules/enum.order-rule.js +2 -2
  20. package/lib/filter/order-rules/index.d.ts +2 -1
  21. package/lib/filter/order-rules/index.js +3 -2
  22. package/lib/filter/order-rules/json.order-rule.d.ts +11 -0
  23. package/lib/filter/order-rules/json.order-rule.js +17 -0
  24. package/lib/filter/order-rules/order-rule.d.ts +7 -2
  25. package/lib/filter/order-rules/order-rule.js +1 -1
  26. package/lib/models/attributes.model.d.ts +4 -1
  27. package/lib/models/attributes.model.js +9 -2
  28. package/lib/models/data-filter.model.d.ts +5 -1
  29. package/lib/models/data-filter.model.js +26 -7
  30. package/lib/models/include.model.d.ts +2 -0
  31. package/lib/models/include.model.js +1 -1
  32. package/lib/models/search-attributes.model.d.ts +1 -0
  33. package/lib/models/search-attributes.model.js +1 -1
  34. package/lib/scanners/sequelize-model.scanner.d.ts +1 -1
  35. package/lib/scanners/sequelize-model.scanner.js +21 -14
  36. package/lib/utils/csv.utils.js +3 -3
  37. package/package.json +7 -7
  38. package/lib/filter/filters/radio.filter.d.ts +0 -35
  39. package/lib/filter/filters/radio.filter.js +0 -90
  40. package/lib/services/dialect-formatter.service.d.ts +0 -10
  41. package/lib/services/dialect-formatter.service.js +0 -58
@@ -23,35 +23,35 @@ class FilterController {
23
23
  constructor(filterService) {
24
24
  this.filterService = filterService;
25
25
  }
26
- async filter(query, req) {
27
- const user = await this.getUser(req);
28
- return user ? this.filterService.filter(user, query) : this.filterService.filter(query);
26
+ async filter(query, request) {
27
+ const user = await this.getUser(request);
28
+ return this.filterService.filter({ options: query, request, user });
29
29
  }
30
- async filterCount(query, req) {
31
- const user = await this.getUser(req);
32
- return user ? this.filterService.count(user, query) : this.filterService.count(query);
30
+ async filterCount(query, request) {
31
+ const user = await this.getUser(request);
32
+ return this.filterService.count({ options: query, user });
33
33
  }
34
- async downloadData(query, type, req) {
35
- const user = await this.getUser(req);
36
- return await this.filterService.downloadData(user, type, query);
34
+ async downloadData(query, type, request) {
35
+ const user = await this.getUser(request);
36
+ return await this.filterService.downloadData({ options: query, request, type, user });
37
37
  }
38
- async getFilterConfig(req) {
38
+ async getFilterConfig(request) {
39
39
  var _a;
40
- return await this.filterService.getConfig(req, (_a = await this.getUser(req)) !== null && _a !== void 0 ? _a : {});
40
+ return await this.filterService.getConfig(request, (_a = await this.getUser(request)) !== null && _a !== void 0 ? _a : {});
41
41
  }
42
- async searchFilterResourceValue(search, req) {
42
+ async searchFilterResourceValue(search, request) {
43
43
  var _a;
44
- return await this.filterService.findResourceValueById(req, search, (_a = await this.getUser(req)) !== null && _a !== void 0 ? _a : {});
44
+ return await this.filterService.findResourceValueById(request, search, (_a = await this.getUser(request)) !== null && _a !== void 0 ? _a : {});
45
45
  }
46
- async searchFilterConfigValues(search, req) {
46
+ async searchFilterConfigValues(search, request) {
47
47
  var _a;
48
- return await this.filterService.searchConfigValues(req, search, (_a = await this.getUser(req)) !== null && _a !== void 0 ? _a : {});
48
+ return await this.filterService.searchConfigValues(request, search, (_a = await this.getUser(request)) !== null && _a !== void 0 ? _a : {});
49
49
  }
50
- async getUser(req) {
50
+ async getUser(request) {
51
51
  if (!this.userUserDeserializer || this.option.disableAccessControl) {
52
52
  return null;
53
53
  }
54
- return this.userUserDeserializer.deserializeUser(req);
54
+ return this.userUserDeserializer.deserializeUser(request);
55
55
  }
56
56
  }
57
57
  exports.FilterController = FilterController;
@@ -118,4 +118,4 @@ __decorate([
118
118
  __metadata("design:returntype", Promise)
119
119
  ], FilterController.prototype, "searchFilterConfigValues", null);
120
120
 
121
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2xpYi9maWx0ZXIvY29udHJvbGxlcnMvZmlsdGVyLmNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkNBYXdCO0FBQ3hCLDZCQUE0RjtBQUM1Riw2Q0FBK0M7QUFDL0MsdURBQXVEO0FBSXZELHFFQUFnRTtBQUNoRSxtR0FBNkY7QUFLN0YsTUFBYSxnQkFBZ0I7SUFRekIsWUFBK0IsYUFBa0M7UUFBbEMsa0JBQWEsR0FBYixhQUFhLENBQXFCO0lBQUcsQ0FBQztJQUs5RCxBQUFNLEtBQUQsQ0FBQyxNQUFNLENBQVMsS0FBdUIsRUFBUyxHQUFRO1FBQ2hFLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBSU0sQUFBTSxLQUFELENBQUMsV0FBVyxDQUFTLEtBQXVCLEVBQVMsR0FBUTtRQUNyRSxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUtNLEFBQU0sS0FBRCxDQUFDLFlBQVksQ0FDYixLQUF1QixFQUNoQixJQUFpQixFQUN6QixHQUFRO1FBRWYsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFD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QUFBOzs7O2dFQUdUIiwiZmlsZSI6ImxpYi9maWx0ZXIvY29udHJvbGxlcnMvZmlsdGVyLmNvbnRyb2xsZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEJvZHksXG4gICAgR2V0LFxuICAgIEh0dHBDb2RlLFxuICAgIEh0dHBTdGF0dXMsXG4gICAgSW5qZWN0LFxuICAgIE9wdGlvbmFsLFxuICAgIFBhcmFtLFxuICAgIFBvc3QsXG4gICAgUXVlcnksXG4gICAgUmVxLFxuICAgIFVzZUd1YXJkcyxcbiAgICBVc2VJbnRlcmNlcHRvcnNcbn0gZnJvbSBcIkBuZXN0anMvY29tbW9uXCI7XG5pbXBvcnQgeyBFeHBvcnRUeXBlcywgRmlsdGVyUXVlcnlNb2RlbCwgRmlsdGVyUmVzdWx0TW9kZWwsIFNlbGVjdEZpbHRlclZhbHVlIH0gZnJvbSBcIi4uLy4uXCI7XG5pbXBvcnQgeyBGSUxURVJfT1BUSU9OIH0gZnJvbSBcIi4uLy4uL2NvbnN0YW50XCI7XG5pbXBvcnQgeyBVc2VyRGVzZXJpYWxpemVyIH0gZnJvbSBcIi4uLy4uL2Rlc2VyaWFsaXplcnNcIjtcbmltcG9ydCB7IERhdGFGaWx0ZXJVc2VyTW9kZWwgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3VzZXIubW9kZWxcIjtcbmltcG9ydCB7IEZpbHRlck9wdGlvbkNvbmZpZyB9IGZyb20gXCIuLi9maWx0ZXIuY29uZmlnXCI7XG5pbXBvcnQgeyBGaWx0ZXJTZXJ2aWNlIH0gZnJvbSBcIi4uL2ZpbHRlci5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBGaWx0ZXJRdWVyeUd1YXJkIH0gZnJvbSBcIi4uL2d1YXJkcy9maWx0ZXItcXVlcnkuZ3VhcmRcIjtcbmltcG9ydCB7IERhdGFGaWxlRG93bmxvYWRJbnRlcmNlcHRvciB9IGZyb20gXCIuLi9pbnRlcmNlcHRvcnMvZGF0YS1maWxlLWRvd25sb2FkLmludGVyY2VwdG9yXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uU2VhcmNoTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2ZpbHRlci1jb25maWd1cmF0aW9uLXNlYXJjaC5tb2RlbFwiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSBcIi4uL21vZGVscy9maWx0ZXItY29uZmlndXJhdGlvbi5tb2RlbFwiO1xuaW1wb3J0IHsgRmlsdGVyUmVzb3VyY2VWYWx1ZU1vZGVsIH0gZnJvbSBcIi4uL21vZGVscy9maWx0ZXItcmVzb3VyY2UtdmFsdWUubW9kZWxcIjtcblxuZXhwb3J0IGNsYXNzIEZpbHRlckNvbnRyb2xsZXI8RGF0YT4ge1xuICAgIEBJbmplY3QoKVxuICAgIEBPcHRpb25hbCgpXG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2VyVXNlckRlc2VyaWFsaXplciE6IFVzZXJEZXNlcmlhbGl6ZXI8RGF0YUZpbHRlclVzZXJNb2RlbD47XG5cbiAgICBASW5qZWN0KEZJTFRFUl9PUFRJT04pXG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb24hOiBGaWx0ZXJPcHRpb25Db25maWc7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgZmlsdGVyU2VydmljZTogRmlsdGVyU2VydmljZTxEYXRhPikge31cblxuICAgIEBQb3N0KFwiZmlsdGVyXCIpXG4gICAgQEh0dHBDb2RlKEh0dHBTdGF0dXMuT0spXG4gICAgQFVzZUd1YXJkcyhGaWx0ZXJRdWVyeUd1YXJkKVxuICAgIHB1YmxpYyBhc3luYyBmaWx0ZXIoQEJvZHkoKSBxdWVyeTogRmlsdGVyUXVlcnlNb2RlbCwgQFJlcSgpIHJlcTogYW55KTogUHJvbWlzZTxGaWx0ZXJSZXN1bHRNb2RlbDxEYXRhPj4ge1xuICAgICAgICBjb25zdCB1c2VyID0gYXdhaXQgdGhpcy5nZXRVc2VyKHJlcSk7XG4gICAgICAgIHJldHVybiB1c2VyID8gdGhpcy5maWx0ZXJTZXJ2aWNlLmZpbHRlcih1c2VyLCBxdWVyeSkgOiB0aGlzLmZpbHRlclNlcnZpY2UuZmlsdGVyKHF1ZXJ5KTtcbiAgICB9XG5cbiAgICBAUG9zdChcImZpbHRlci1jb3VudFwiKVxuICAgIEBIdHRwQ29kZShIdHRwU3RhdHVzLk9LKVxuICAgIHB1YmxpYyBhc3luYyBmaWx0ZXJDb3VudChAQm9keSgpIHF1ZXJ5OiBGaWx0ZXJRdWVyeU1vZGVsLCBAUmVxKCkgcmVxOiBhbnkpOiBQcm9taXNlPG51bWJlcj4ge1xuICAgICAgICBjb25zdCB1c2VyID0gYXdhaXQgdGhpcy5nZXRVc2VyKHJlcSk7XG4gICAgICAgIHJldHVybiB1c2VyID8gdGhpcy5maWx0ZXJTZXJ2aWNlLmNvdW50KHVzZXIsIHF1ZXJ5KSA6IHRoaXMuZmlsdGVyU2VydmljZS5jb3VudChxdWVyeSk7XG4gICAgfVxuXG4gICAgQFBvc3QoXCJkb3dubG9hZC86dHlwZVwiKVxuICAgIEBIdHRwQ29kZShIdHRwU3RhdHVzLk9LKVxuICAgIEBVc2VJbnRlcmNlcHRvcnMoRGF0YUZpbGVEb3dubG9hZEludGVyY2VwdG9yKVxuICAgIHB1YmxpYyBhc3luYyBkb3dubG9hZERhdGEoXG4gICAgICAgIEBCb2R5KCkgcXVlcnk6IEZpbHRlclF1ZXJ5TW9kZWwsXG4gICAgICAgIEBQYXJhbShcInR5cGVcIikgdHlwZTogRXhwb3J0VHlwZXMsXG4gICAgICAgIEBSZXEoKSByZXE6IGFueVxuICAgICk6IFByb21pc2U8QnVmZmVyIHwgc3RyaW5nPiB7XG4gICAgICAgIGNvbnN0IHVzZXIgPSBhd2FpdCB0aGlzLmdldFVzZXIocmVxKTtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZmlsdGVyU2VydmljZS5kb3dubG9hZERhdGEodXNlciwgdHlwZSwgcXVlcnkpO1xuICAgIH1cblxuICAgIEBHZXQoXCJmaWx0ZXIvY29uZmlnXCIpXG4gICAgcHVibGljIGFzeW5jIGdldEZpbHRlckNvbmZpZyhAUmVxKCkgcmVxOiBhbnkpOiBQcm9taXNlPEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbFtdPiB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLmZpbHRlclNlcnZpY2UuZ2V0Q29uZmlnKHJlcSwgYXdhaXQgdGhpcy5nZXRVc2VyKHJlcSkgPz8ge30gYXMgRGF0YUZpbHRlclVzZXJNb2RlbCk7XG4gICAgfVxuXG4gICAgQEdldChcImZpbHRlci9jb25maWcvaWRcIilcbiAgICBwdWJsaWMgYXN5bmMgc2VhcmNoRmlsdGVyUmVzb3VyY2VWYWx1ZShcbiAgICAgICAgQFF1ZXJ5KCkgc2VhcmNoOiBGaWx0ZXJSZXNvdXJjZVZhbHVlTW9kZWwsXG4gICAgICAgIEBSZXEoKSByZXE6IGFueVxuICAgICk6IFByb21pc2U8U2VsZWN0RmlsdGVyVmFsdWUgfCBudWxsPiB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLmZpbHRlclNlcnZpY2UuZmluZFJlc291cmNlVmFsdWVCeUlkKHJlcSwgc2VhcmNoLCBhd2FpdCB0aGlzLmdldFVzZXIocmVxKSA/PyB7fSBhcyBEYXRhRmlsdGVyVXNlck1vZGVsKTtcbiAgICB9XG5cbiAgICBAR2V0KFwiZmlsdGVyL2NvbmZpZy92YWx1ZVwiKVxuICAgIHB1YmxpYyBhc3luYyBzZWFyY2hGaWx0ZXJDb25maWdWYWx1ZXMoXG4gICAgICAgIEBRdWVyeSgpIHNlYXJjaDogRmlsdGVyQ29uZmlndXJhdGlvblNlYXJjaE1vZGVsLFxuICAgICAgICBAUmVxKCkgcmVxOiBhbnlcbiAgICApOiBQcm9taXNlPFNlbGVjdEZpbHRlclZhbHVlW10+IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZmlsdGVyU2VydmljZS5zZWFyY2hDb25maWdWYWx1ZXMocmVxLCBzZWFyY2gsIGF3YWl0IHRoaXMuZ2V0VXNlcihyZXEpID8/IHt9IGFzIERhdGFGaWx0ZXJVc2VyTW9kZWwpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBhc3luYyBnZXRVc2VyKHJlcTogYW55KTogUHJvbWlzZTxEYXRhRmlsdGVyVXNlck1vZGVsIHwgbnVsbD4ge1xuICAgICAgICBpZiAoIXRoaXMudXNlclVzZXJEZXNlcmlhbGl6ZXIgfHwgdGhpcy5vcHRpb24uZGlzYWJsZUFjY2Vzc0NvbnRyb2wpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMudXNlclVzZXJEZXNlcmlhbGl6ZXIuZGVzZXJpYWxpemVVc2VyKHJlcSk7XG4gICAgfVxufVxuIl19
121
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2xpYi9maWx0ZXIvY29udHJvbGxlcnMvZmlsdGVyLmNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkNBYXdCO0FBQ3hCLDZCQUE0RjtBQUM1Riw2Q0FBK0M7QUFDL0MsdURBQXVEO0FBSXZELHFFQUFnRTtBQUNoRSxtR0FBNkY7QUFLN0YsTUFBYSxnQkFBZ0I7SUFRekIsWUFBK0IsYUFBa0M7UUFBbEMsa0JBQWEsR0FBYixhQUFhLENBQXFCO0lBQUcsQ0FBQztJQUs5RCxBQUFNLEtBQUQsQ0FBQyxNQUFNLENBQVMsS0FBdUIsRUFBUyxPQUFZO1FBQ3BFLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBSU0sQUFBTSxLQUFELENBQUMsV0FBVyxDQUFTLEtBQXVCLEVBQVMsT0FBWTtRQUN6RSxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBS00sQUFBTSxLQUFELENBQUMsWUFBWSxDQUNiLEtBQXVCLEVBQ2hCLElBQWlCLEVBQ3pCLE9BQVk7UUFFbkIsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVB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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQm9keSxcbiAgICBHZXQsXG4gICAgSHR0cENvZGUsXG4gICAgSHR0cFN0YXR1cyxcbiAgICBJbmplY3QsXG4gICAgT3B0aW9uYWwsXG4gICAgUGFyYW0sXG4gICAgUG9zdCxcbiAgICBRdWVyeSxcbiAgICBSZXEsXG4gICAgVXNlR3VhcmRzLFxuICAgIFVzZUludGVyY2VwdG9yc1xufSBmcm9tIFwiQG5lc3Rqcy9jb21tb25cIjtcbmltcG9ydCB7IEV4cG9ydFR5cGVzLCBGaWx0ZXJRdWVyeU1vZGVsLCBGaWx0ZXJSZXN1bHRNb2RlbCwgU2VsZWN0RmlsdGVyVmFsdWUgfSBmcm9tIFwiLi4vLi5cIjtcbmltcG9ydCB7IEZJTFRFUl9PUFRJT04gfSBmcm9tIFwiLi4vLi4vY29uc3RhbnRcIjtcbmltcG9ydCB7IFVzZXJEZXNlcmlhbGl6ZXIgfSBmcm9tIFwiLi4vLi4vZGVzZXJpYWxpemVyc1wiO1xuaW1wb3J0IHsgRGF0YUZpbHRlclVzZXJNb2RlbCB9IGZyb20gXCIuLi8uLi9tb2RlbHMvdXNlci5tb2RlbFwiO1xuaW1wb3J0IHsgRmlsdGVyT3B0aW9uQ29uZmlnIH0gZnJvbSBcIi4uL2ZpbHRlci5jb25maWdcIjtcbmltcG9ydCB7IEZpbHRlclNlcnZpY2UgfSBmcm9tIFwiLi4vZmlsdGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7IEZpbHRlclF1ZXJ5R3VhcmQgfSBmcm9tIFwiLi4vZ3VhcmRzL2ZpbHRlci1xdWVyeS5ndWFyZFwiO1xuaW1wb3J0IHsgRGF0YUZpbGVEb3dubG9hZEludGVyY2VwdG9yIH0gZnJvbSBcIi4uL2ludGVyY2VwdG9ycy9kYXRhLWZpbGUtZG93bmxvYWQuaW50ZXJjZXB0b3JcIjtcbmltcG9ydCB7IEZpbHRlckNvbmZpZ3VyYXRpb25TZWFyY2hNb2RlbCB9IGZyb20gXCIuLi9tb2RlbHMvZmlsdGVyLWNvbmZpZ3VyYXRpb24tc2VhcmNoLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2ZpbHRlci1jb25maWd1cmF0aW9uLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJSZXNvdXJjZVZhbHVlTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2ZpbHRlci1yZXNvdXJjZS12YWx1ZS5tb2RlbFwiO1xuXG5leHBvcnQgY2xhc3MgRmlsdGVyQ29udHJvbGxlcjxEYXRhPiB7XG4gICAgQEluamVjdCgpXG4gICAgQE9wdGlvbmFsKClcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJVc2VyRGVzZXJpYWxpemVyITogVXNlckRlc2VyaWFsaXplcjxEYXRhRmlsdGVyVXNlck1vZGVsPjtcblxuICAgIEBJbmplY3QoRklMVEVSX09QVElPTilcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbiE6IEZpbHRlck9wdGlvbkNvbmZpZztcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCByZWFkb25seSBmaWx0ZXJTZXJ2aWNlOiBGaWx0ZXJTZXJ2aWNlPERhdGE+KSB7fVxuXG4gICAgQFBvc3QoXCJmaWx0ZXJcIilcbiAgICBASHR0cENvZGUoSHR0cFN0YXR1cy5PSylcbiAgICBAVXNlR3VhcmRzKEZpbHRlclF1ZXJ5R3VhcmQpXG4gICAgcHVibGljIGFzeW5jIGZpbHRlcihAQm9keSgpIHF1ZXJ5OiBGaWx0ZXJRdWVyeU1vZGVsLCBAUmVxKCkgcmVxdWVzdDogYW55KTogUHJvbWlzZTxGaWx0ZXJSZXN1bHRNb2RlbDxEYXRhPj4ge1xuICAgICAgICBjb25zdCB1c2VyID0gYXdhaXQgdGhpcy5nZXRVc2VyKHJlcXVlc3QpO1xuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJTZXJ2aWNlLmZpbHRlcih7IG9wdGlvbnM6IHF1ZXJ5LCByZXF1ZXN0LCB1c2VyIH0pO1xuICAgIH1cblxuICAgIEBQb3N0KFwiZmlsdGVyLWNvdW50XCIpXG4gICAgQEh0dHBDb2RlKEh0dHBTdGF0dXMuT0spXG4gICAgcHVibGljIGFzeW5jIGZpbHRlckNvdW50KEBCb2R5KCkgcXVlcnk6IEZpbHRlclF1ZXJ5TW9kZWwsIEBSZXEoKSByZXF1ZXN0OiBhbnkpOiBQcm9taXNlPG51bWJlcj4ge1xuICAgICAgICBjb25zdCB1c2VyID0gYXdhaXQgdGhpcy5nZXRVc2VyKHJlcXVlc3QpO1xuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJTZXJ2aWNlLmNvdW50KHsgb3B0aW9uczogcXVlcnksIHVzZXIgfSk7XG4gICAgfVxuXG4gICAgQFBvc3QoXCJkb3dubG9hZC86dHlwZVwiKVxuICAgIEBIdHRwQ29kZShIdHRwU3RhdHVzLk9LKVxuICAgIEBVc2VJbnRlcmNlcHRvcnMoRGF0YUZpbGVEb3dubG9hZEludGVyY2VwdG9yKVxuICAgIHB1YmxpYyBhc3luYyBkb3dubG9hZERhdGEoXG4gICAgICAgIEBCb2R5KCkgcXVlcnk6IEZpbHRlclF1ZXJ5TW9kZWwsXG4gICAgICAgIEBQYXJhbShcInR5cGVcIikgdHlwZTogRXhwb3J0VHlwZXMsXG4gICAgICAgIEBSZXEoKSByZXF1ZXN0OiBhbnlcbiAgICApOiBQcm9taXNlPEJ1ZmZlciB8IHN0cmluZz4ge1xuICAgICAgICBjb25zdCB1c2VyID0gYXdhaXQgdGhpcy5nZXRVc2VyKHJlcXVlc3QpO1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5maWx0ZXJTZXJ2aWNlLmRvd25sb2FkRGF0YSh7IG9wdGlvbnM6IHF1ZXJ5LCByZXF1ZXN0LCB0eXBlLCB1c2VyIH0pO1xuICAgIH1cblxuICAgIEBHZXQoXCJmaWx0ZXIvY29uZmlnXCIpXG4gICAgcHVibGljIGFzeW5jIGdldEZpbHRlckNvbmZpZyhAUmVxKCkgcmVxdWVzdDogYW55KTogUHJvbWlzZTxGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWxbXT4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5maWx0ZXJTZXJ2aWNlLmdldENvbmZpZyhyZXF1ZXN0LCBhd2FpdCB0aGlzLmdldFVzZXIocmVxdWVzdCkgPz8ge30gYXMgRGF0YUZpbHRlclVzZXJNb2RlbCk7XG4gICAgfVxuXG4gICAgQEdldChcImZpbHRlci9jb25maWcvaWRcIilcbiAgICBwdWJsaWMgYXN5bmMgc2VhcmNoRmlsdGVyUmVzb3VyY2VWYWx1ZShcbiAgICAgICAgQFF1ZXJ5KCkgc2VhcmNoOiBGaWx0ZXJSZXNvdXJjZVZhbHVlTW9kZWwsXG4gICAgICAgIEBSZXEoKSByZXF1ZXN0OiBhbnlcbiAgICApOiBQcm9taXNlPFNlbGVjdEZpbHRlclZhbHVlIHwgbnVsbD4ge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5maWx0ZXJTZXJ2aWNlLmZpbmRSZXNvdXJjZVZhbHVlQnlJZChyZXF1ZXN0LCBzZWFyY2gsIGF3YWl0IHRoaXMuZ2V0VXNlcihyZXF1ZXN0KSA/PyB7fSBhcyBEYXRhRmlsdGVyVXNlck1vZGVsKTtcbiAgICB9XG5cbiAgICBAR2V0KFwiZmlsdGVyL2NvbmZpZy92YWx1ZVwiKVxuICAgIHB1YmxpYyBhc3luYyBzZWFyY2hGaWx0ZXJDb25maWdWYWx1ZXMoXG4gICAgICAgIEBRdWVyeSgpIHNlYXJjaDogRmlsdGVyQ29uZmlndXJhdGlvblNlYXJjaE1vZGVsLFxuICAgICAgICBAUmVxKCkgcmVxdWVzdDogYW55XG4gICAgKTogUHJvbWlzZTxTZWxlY3RGaWx0ZXJWYWx1ZVtdPiB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLmZpbHRlclNlcnZpY2Uuc2VhcmNoQ29uZmlnVmFsdWVzKHJlcXVlc3QsIHNlYXJjaCwgYXdhaXQgdGhpcy5nZXRVc2VyKHJlcXVlc3QpID8/IHt9IGFzIERhdGFGaWx0ZXJVc2VyTW9kZWwpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBhc3luYyBnZXRVc2VyKHJlcXVlc3Q6IGFueSk6IFByb21pc2U8RGF0YUZpbHRlclVzZXJNb2RlbCB8IG51bGw+IHtcbiAgICAgICAgaWYgKCF0aGlzLnVzZXJVc2VyRGVzZXJpYWxpemVyIHx8IHRoaXMub3B0aW9uLmRpc2FibGVBY2Nlc3NDb250cm9sKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnVzZXJVc2VyRGVzZXJpYWxpemVyLmRlc2VyaWFsaXplVXNlcihyZXF1ZXN0KTtcbiAgICB9XG59XG4iXX0=
@@ -14,6 +14,22 @@ import { QueryModel } from "./models";
14
14
  import { FilterConfigurationSearchModel } from "./models/filter-configuration-search.model";
15
15
  import { FilterConfigurationModel } from "./models/filter-configuration.model";
16
16
  import { FilterResourceValueModel } from "./models/filter-resource-value.model";
17
+ interface CountParams<Users extends DataFilterUserModel> {
18
+ options: FilterQueryModel;
19
+ user?: Users | null;
20
+ }
21
+ interface DownloadDataParams<Users extends DataFilterUserModel, Request> {
22
+ exportOptions?: object;
23
+ options: FilterQueryModel;
24
+ request: Request;
25
+ type: ExportTypes;
26
+ user: Users | null;
27
+ }
28
+ interface FilterParams<Users extends DataFilterUserModel, Request> {
29
+ options: FilterQueryModel;
30
+ request: Request;
31
+ user?: Users | null;
32
+ }
17
33
  export declare class FilterService<Data> {
18
34
  private accessControlAdapter;
19
35
  private translateAdapter;
@@ -30,12 +46,11 @@ export declare class FilterService<Data> {
30
46
  forData<T>(dataDef: Type<T>): FilterService<T>;
31
47
  getConfig(request: any, user?: DataFilterUserModel): Promise<FilterConfigurationModel[]>;
32
48
  searchConfigValues(request: any, search: FilterConfigurationSearchModel, user?: DataFilterUserModel): Promise<SelectFilterValue[]>;
49
+ private convertNumber;
33
50
  findResourceValueById(request: any, search: FilterResourceValueModel, user?: DataFilterUserModel): Promise<SelectFilterValue | null>;
34
- count(user: DataFilterUserModel, options: FilterQueryModel): Promise<number>;
35
- count(options: FilterQueryModel): Promise<number>;
36
- filter(user: DataFilterUserModel, options: FilterQueryModel): Promise<FilterResultModel<Data>>;
37
- filter(options: FilterQueryModel): Promise<FilterResultModel<Data>>;
38
- downloadData(user: DataFilterUserModel | null, type: ExportTypes, options: FilterQueryModel, exportOptions?: object): Promise<Buffer | string>;
51
+ count<Users extends DataFilterUserModel>(params: CountParams<Users>): Promise<number>;
52
+ filter<Request, Users extends DataFilterUserModel>(params: FilterParams<DataFilterUserModel, Request>): Promise<FilterResultModel<Data>>;
53
+ downloadData<Request>(params: DownloadDataParams<DataFilterUserModel, Request>): Promise<Buffer | string>;
39
54
  getFindOptions(model: typeof M, query: QueryModel | undefined, data?: object): Promise<FindOptions>;
40
55
  private init;
41
56
  private getInclude;
@@ -56,3 +71,4 @@ export declare class FilterService<Data> {
56
71
  private normalizeOrder;
57
72
  private getNonNestedOrderColumns;
58
73
  }
74
+ export {};