@servicelabsco/nestjs-utility-services 2.0.13 → 2.0.14
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.
|
@@ -15,6 +15,12 @@ class GetReportQuery {
|
|
|
15
15
|
}
|
|
16
16
|
async setQuery(sql) {
|
|
17
17
|
for (const [key, value] of Object.entries(this.filter)) {
|
|
18
|
+
if (typeof value === 'string' && new RegExp(`:!${key}`, 'i').test(sql)) {
|
|
19
|
+
if (!this.sqlService.isSafeIdentifier(value)) {
|
|
20
|
+
throw new Error(`Report parameter "${key}" used as raw identifier is not a safe SQL identifier: ${value}`);
|
|
21
|
+
}
|
|
22
|
+
sql = sql.replace(new RegExp(`:!${key}`, 'ig'), value);
|
|
23
|
+
}
|
|
18
24
|
let newValue = null;
|
|
19
25
|
if (Array.isArray(value) && value?.length > 0 && typeof value[0] === 'string') {
|
|
20
26
|
newValue = value.map((v) => `'${this.sqlService.escapeSqlString(v)}'`).join(',');
|
|
@@ -27,6 +33,9 @@ class GetReportQuery {
|
|
|
27
33
|
}
|
|
28
34
|
if (newValue === null)
|
|
29
35
|
continue;
|
|
36
|
+
if (typeof value === 'string') {
|
|
37
|
+
sql = sql.replace(new RegExp(`':${key}'`, 'ig'), newValue);
|
|
38
|
+
}
|
|
30
39
|
sql = sql.replace(new RegExp(`:${key}`, 'ig'), newValue);
|
|
31
40
|
}
|
|
32
41
|
const paramRestrictions = await this.getEmbeddedFilterRestriction();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.report.query.js","sourceRoot":"","sources":["../../../src/system/libraries/get.report.query.ts"],"names":[],"mappings":";;;AAEA,2EAAsE;AAQtE,MAAa,cAAc;IAgBvB,YACqB,MAAoB,EACpB,UAAsB;QADtB,WAAM,GAAN,MAAM,CAAc;QACpB,eAAU,GAAV,UAAU,CAAY;QATjC,iBAAY,GAAa,EAAE,CAAC;IAUnC,CAAC;IAQJ,KAAK,CAAC,OAAO,CAAC,GAAW,EAAE,MAAW;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAEvC,OAAO,iBAAiB,KAAK,EAAE,CAAC;IACpC,CAAC;IAQO,KAAK,CAAC,QAAQ,CAAC,GAAW;QAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"get.report.query.js","sourceRoot":"","sources":["../../../src/system/libraries/get.report.query.ts"],"names":[],"mappings":";;;AAEA,2EAAsE;AAQtE,MAAa,cAAc;IAgBvB,YACqB,MAAoB,EACpB,UAAsB;QADtB,WAAM,GAAN,MAAM,CAAc;QACpB,eAAU,GAAV,UAAU,CAAY;QATjC,iBAAY,GAAa,EAAE,CAAC;IAUnC,CAAC;IAQJ,KAAK,CAAC,OAAO,CAAC,GAAW,EAAE,MAAW;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAEvC,OAAO,iBAAiB,KAAK,EAAE,CAAC;IACpC,CAAC;IAQO,KAAK,CAAC,QAAQ,CAAC,GAAW;QAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAMrD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,IAAI,MAAM,CAAC,KAAK,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3C,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,0DAA0D,KAAK,EAAE,CAAC,CAAC;gBAC/G,CAAC;gBACD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;YAC3D,CAAC;YAED,IAAI,QAAQ,GAAkB,IAAI,CAAC;YAEnC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,EAAE,MAAM,GAAG,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAG5E,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1F,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACnC,QAAQ,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC;YAC7D,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;gBACjE,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC;YAID,IAAI,QAAQ,KAAK,IAAI;gBAAE,SAAS;YAOhC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC5B,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC/D,CAAC;YAED,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;QACpE,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC;QAQ9D,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC3B,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAClE,OAAO,IAAI,GAAG,cAAc,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,GAAG,MAAM,CAAC;IACzB,CAAC;IAOO,kBAAkB,CAAC,KAAa,EAAE,QAAgB;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC;QACtE,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,sBAAsB,OAAO,yCAAyC,CAAC,CAAC;QAC3G,CAAC;IACL,CAAC;IASO,oBAAoB,CAAC,GAAW,EAAE,WAAmB;QACzD,MAAM,WAAW,GAAG,sBAAsB,CAAC;QAC3C,MAAM,yBAAyB,GAAG,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAE5D,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC7B,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACtE,WAAW,GAAG,GAAG,WAAW,SAAS,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC;QACvE,CAAC;QAED,IAAI,yBAAyB,EAAE,CAAC;YAC5B,IAAI,CAAC,WAAW;gBAAE,OAAO,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAEtD,OAAO,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,WAAW,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,CAAC,WAAW;YAAE,OAAO,GAAG,CAAC;QAE7B,OAAO,GAAG,GAAG,QAAQ,WAAW,EAAE,CAAC;IACvC,CAAC;IAOO,KAAK,CAAC,4BAA4B;QACtC,MAAM,OAAO,GAAG,MAAM,yCAAkB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACxF,IAAI,CAAC,OAAO,CAAC,MAAM;YAAE,OAAO;QAE5B,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAExC,IAAI,OAAO,IAAI,KAAK,WAAW;gBAAE,SAAS;YAI1C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBACvD,MAAM,IAAI,KAAK,CAAC,gEAAgE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YACzG,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAE3E,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,UAAU,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACJ,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,UAAU,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3F,CAAC;QACL,CAAC;QAED,IAAI,YAAY,CAAC,MAAM;YAAE,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAEhE,OAAO,EAAE,CAAC;IACd,CAAC;CACJ;AA3KD,wCA2KC"}
|
package/package.json
CHANGED