@servicelabsco/slabs-access-manager 0.1.38 → 0.1.39

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.
@@ -13,4 +13,5 @@ export declare class CommonListFilterDto {
13
13
  aggregate?: Record<string, string>;
14
14
  filter_query?: string;
15
15
  listing_slug?: string;
16
+ injected_query?: string;
16
17
  }
@@ -85,4 +85,9 @@ __decorate([
85
85
  (0, class_transformer_1.Expose)(),
86
86
  __metadata("design:type", String)
87
87
  ], CommonListFilterDto.prototype, "listing_slug", void 0);
88
+ __decorate([
89
+ (0, class_validator_1.IsOptional)(),
90
+ (0, class_transformer_1.Expose)(),
91
+ __metadata("design:type", String)
92
+ ], CommonListFilterDto.prototype, "injected_query", void 0);
88
93
  //# sourceMappingURL=common.list.filter.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.list.filter.dto.js","sourceRoot":"","sources":["../../../src/access/dtos/common.list.filter.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAiD;AACjD,qDAA4G;AAC5G,uDAAkD;AAClD,yEAAmE;AACnE,uEAAiE;AAEjE,MAAa,mBAAmB;CAwD/B;AAxDD,kDAwDC;AAnDG;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,2BAAS,EAAC,CAAC,CAAC;IACZ,IAAA,0BAAM,GAAE;;mDACO;AAKhB;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,0BAAM,GAAE;;kDACM;AAMf;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,CAAC,CAAC;IACN,IAAA,0BAAM,GAAE;;iDACK;AAKd;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;IACX,IAAA,0BAAM,GAAE;;kDACO;AAKhB;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;IACX,IAAA,0BAAM,GAAE;;uDACY;AAKrB;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,gDAAqB,CAAC;8BACzB,gDAAqB;mDAAC;AAM/B;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,+BAAa,CAAC;IACzB,IAAA,0BAAM,GAAE;8BACF,+BAAa;iDAAC;AAMrB;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,8CAAoB,CAAC;IAChC,IAAA,0BAAM,GAAE;8BACA,8CAAoB;mDAAC;AAI9B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAM,GAAE;;sDAC0B;AAInC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAM,GAAE;;yDACa;AAItB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAM,GAAE;;yDACa"}
1
+ {"version":3,"file":"common.list.filter.dto.js","sourceRoot":"","sources":["../../../src/access/dtos/common.list.filter.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAiD;AACjD,qDAA4G;AAC5G,uDAAkD;AAClD,yEAAmE;AACnE,uEAAiE;AAEjE,MAAa,mBAAmB;CA4D/B;AA5DD,kDA4DC;AAvDG;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,2BAAS,EAAC,CAAC,CAAC;IACZ,IAAA,0BAAM,GAAE;;mDACO;AAKhB;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,0BAAM,GAAE;;kDACM;AAMf;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;IACV,IAAA,qBAAG,EAAC,CAAC,CAAC;IACN,IAAA,0BAAM,GAAE;;iDACK;AAKd;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;IACX,IAAA,0BAAM,GAAE;;kDACO;AAKhB;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;IACX,IAAA,0BAAM,GAAE;;uDACY;AAKrB;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,gDAAqB,CAAC;8BACzB,gDAAqB;mDAAC;AAM/B;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,+BAAa,CAAC;IACzB,IAAA,0BAAM,GAAE;8BACF,+BAAa;iDAAC;AAMrB;IAJC,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,8CAAoB,CAAC;IAChC,IAAA,0BAAM,GAAE;8BACA,8CAAoB;mDAAC;AAI9B;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAM,GAAE;;sDAC0B;AAInC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAM,GAAE;;yDACa;AAItB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAM,GAAE;;yDACa;AAItB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAM,GAAE;;2DACe"}
@@ -21,8 +21,9 @@ export declare class ProcessReportData {
21
21
  private getRecords;
22
22
  private getTotalRecords;
23
23
  private setQuery;
24
+ private setFilterRestriction;
24
25
  private aggregate;
25
26
  private sendResponse;
26
- private getParamRestrictions;
27
+ private getEmbeddedFilterRestriction;
27
28
  private generateCsv;
28
29
  }
@@ -65,13 +65,26 @@ class ProcessReportData {
65
65
  for (const [key, value] of Object.entries(this.filter)) {
66
66
  sql = sql.replace(new RegExp(`:${key}`, 'ig'), value);
67
67
  }
68
- const paramRestrictions = await this.getParamRestrictions();
69
- if (paramRestrictions)
70
- sql = `${sql} and ${paramRestrictions}`;
68
+ const paramRestrictions = await this.getEmbeddedFilterRestriction();
69
+ sql = this.setFilterRestriction(sql, paramRestrictions);
71
70
  if (this.filter.filter_query)
72
71
  return `(${sql}) sq where ${this.filter.filter_query}`;
73
72
  return `(${sql}) sq`;
74
73
  }
74
+ setFilterRestriction(sql, restriction) {
75
+ const placeHolder = ':filter_restrictions';
76
+ const hasRestrictionPlaceholder = sql.includes(placeHolder);
77
+ if (this.filter.injected_query)
78
+ restriction = `${restriction} and (${this.filter.injected_query})`;
79
+ if (hasRestrictionPlaceholder) {
80
+ if (!restriction)
81
+ return sql.replace(placeHolder, '');
82
+ return sql.replace(placeHolder, `and ${restriction}`);
83
+ }
84
+ if (!restriction)
85
+ return sql;
86
+ return `${sql} and ${restriction}`;
87
+ }
75
88
  async aggregate() {
76
89
  const aggregate = this.filter.aggregate;
77
90
  const supportedOperations = ['avg', 'sum', 'max', 'min'];
@@ -87,7 +100,7 @@ class ProcessReportData {
87
100
  if (!this.filter.format?.csv)
88
101
  return this.response;
89
102
  }
90
- async getParamRestrictions() {
103
+ async getEmbeddedFilterRestriction() {
91
104
  const filters = await nestjs_utility_services_1.ReportFilterEntity.find({ where: { report_id: this.report.id } });
92
105
  if (!filters.length)
93
106
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"process.report.data.js","sourceRoot":"","sources":["../../../src/access/libraries/process.report.data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"process.report.data.js","sourceRoot":"","sources":["../../../src/access/libraries/process.report.data.ts"],"names":[],"mappings":"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"}