@ptc-org/nestjs-query-typeorm 2.0.1 → 2.1.0-alpha.1

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ptc-org/nestjs-query-typeorm",
3
- "version": "2.0.1",
3
+ "version": "2.1.0-alpha.1",
4
4
  "description": "Typeorm adapter for @ptc-org/nestjs-query-core",
5
5
  "author": "doug-martin <doug@dougamartin.com>",
6
6
  "homepage": "https://github.com/tripss/nestjs-query#readme",
@@ -30,7 +30,7 @@
30
30
  "@nestjs/typeorm": "^8.1.0 || ^9.0.0",
31
31
  "class-transformer": "^0.2.3 || 0.3.1 || ^0.5",
32
32
  "typeorm": "^0.3.8",
33
- "@ptc-org/nestjs-query-core": "2.0.1",
33
+ "@ptc-org/nestjs-query-core": "2.1.0-alpha.1",
34
34
  "reflect-metadata": "0.1.13"
35
35
  },
36
36
  "repository": {
@@ -21,10 +21,6 @@ export declare class AggregateBuilder<Entity> {
21
21
  static getAggregateAlias<Entity>(func: AggregateFuncs, field: keyof Entity): string;
22
22
  static getGroupByAlias<Entity>(field: keyof Entity): string;
23
23
  static convertToAggregateResponse<Entity>(rawAggregates: Record<string, unknown>[]): AggregateResponse<Entity>[];
24
- /**
25
- * Returns the corrected fields for orderBy and groupBy
26
- */
27
- getCorrectedField(alias: string, field: string): string;
28
24
  /**
29
25
  * Builds a aggregate SELECT clause from a aggregate.
30
26
  * @param qb - the `typeorm` SelectQueryBuilder
@@ -34,5 +30,6 @@ export declare class AggregateBuilder<Entity> {
34
30
  build<Qb extends SelectQueryBuilder<Entity>>(qb: Qb, aggregate: AggregateQuery<Entity>, alias?: string): Qb;
35
31
  private createAggSelect;
36
32
  private createGroupBySelect;
33
+ private isAggregateQueryGroupByField;
37
34
  }
38
35
  export {};
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AggregateBuilder = void 0;
4
4
  const common_1 = require("@nestjs/common");
5
+ const nestjs_query_core_1 = require("@ptc-org/nestjs-query-core");
5
6
  const camel_case_1 = require("camel-case");
6
7
  var AggregateFuncs;
7
8
  (function (AggregateFuncs) {
@@ -31,7 +32,7 @@ class AggregateBuilder {
31
32
  }
32
33
  // eslint-disable-next-line @typescript-eslint/no-shadow
33
34
  static getAggregateGroupBySelects(query) {
34
- return (query.groupBy ?? []).map((f) => this.getGroupByAlias(f));
35
+ return (query.groupBy ?? []).map(({ field }) => this.getGroupByAlias(field));
35
36
  }
36
37
  // eslint-disable-next-line @typescript-eslint/no-shadow
37
38
  static getAggregateFuncSelects(query) {
@@ -43,7 +44,7 @@ class AggregateBuilder {
43
44
  [AggregateFuncs.MIN, query.min]
44
45
  ];
45
46
  return aggs.reduce((cols, [func, fields]) => {
46
- const aliases = (fields ?? []).map((f) => this.getAggregateAlias(func, f));
47
+ const aliases = (fields ?? []).map((field) => this.getAggregateAlias(func, field.field));
47
48
  return [...cols, ...aliases];
48
49
  }, []);
49
50
  }
@@ -75,17 +76,6 @@ class AggregateBuilder {
75
76
  }, {});
76
77
  });
77
78
  }
78
- /**
79
- * Returns the corrected fields for orderBy and groupBy
80
- */
81
- getCorrectedField(alias, field) {
82
- const col = alias ? `${alias}.${field}` : `${field}`;
83
- const meta = this.repo.metadata.findColumnWithPropertyName(`${field}`);
84
- if (meta && this.repo.manager.connection.driver.normalizeType(meta) === 'datetime') {
85
- return `DATE(${col})`;
86
- }
87
- return col;
88
- }
89
79
  /**
90
80
  * Builds a aggregate SELECT clause from a aggregate.
91
81
  * @param qb - the `typeorm` SelectQueryBuilder
@@ -111,25 +101,38 @@ class AggregateBuilder {
111
101
  if (!fields) {
112
102
  return [];
113
103
  }
114
- return fields.map((field) => {
104
+ return fields.map(({ field }) => {
115
105
  const col = alias ? `${alias}.${field}` : field;
116
106
  return [`${func}(${col})`, AggregateBuilder.getAggregateAlias(func, field)];
117
107
  });
118
108
  }
119
- createGroupBySelect(fields, alias) {
120
- if (!fields) {
109
+ createGroupBySelect(aggregatedFields, alias) {
110
+ if (!aggregatedFields) {
121
111
  return [];
122
112
  }
123
- return fields.map((field) => {
124
- const col = alias ? `${alias}.${field}` : field;
125
- const groupByAlias = AggregateBuilder.getGroupByAlias(field);
126
- const meta = this.repo.metadata.findColumnWithPropertyName(`${field}`);
127
- if (meta && this.repo.manager.connection.driver.normalizeType(meta) === 'datetime') {
128
- return [`DATE(${col})`, groupByAlias];
113
+ return aggregatedFields.map((aggregatedField) => {
114
+ const col = alias ? `${alias}.${aggregatedField.field}` : aggregatedField.field;
115
+ const groupByAlias = AggregateBuilder.getGroupByAlias(aggregatedField.field);
116
+ if (this.isAggregateQueryGroupByField(aggregatedField)) {
117
+ let query = `DATE(${col})`;
118
+ if (aggregatedField.args.by === nestjs_query_core_1.GroupBy.YEAR) {
119
+ query = `DATE(DATE_FORMAT(${col}, '%Y-01-01'))`;
120
+ }
121
+ else if (aggregatedField.args.by === nestjs_query_core_1.GroupBy.MONTH) {
122
+ query = `DATE(DATE_FORMAT(${col}, '%Y-%m-01'))`;
123
+ }
124
+ else if (aggregatedField.args.by === nestjs_query_core_1.GroupBy.WEEK) {
125
+ query = `STR_TO_DATE(DATE_FORMAT(${col}, '%X-%V-01'), '%X-%V-%w')`;
126
+ }
127
+ return [query, groupByAlias];
129
128
  }
130
129
  return [`${col}`, groupByAlias];
131
130
  });
132
131
  }
132
+ isAggregateQueryGroupByField(field) {
133
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
134
+ return Boolean(field && field.args && field.args?.by);
135
+ }
133
136
  }
134
137
  exports.AggregateBuilder = AggregateBuilder;
135
138
  //# sourceMappingURL=aggregate.builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"aggregate.builder.js","sourceRoot":"","sources":["../../../../../packages/query-typeorm/src/query/aggregate.builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aggregate.builder.js","sourceRoot":"","sources":["../../../../../packages/query-typeorm/src/query/aggregate.builder.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AggregateQuery, Filter, Paging, Query, SortField } from '@ptc-org/nestjs-query-core';
1
+ import { AggregateQuery, AggregateQueryField, Filter, Paging, Query, SortField } from '@ptc-org/nestjs-query-core';
2
2
  import { DeleteQueryBuilder, EntityMetadata, QueryBuilder, Repository, SelectQueryBuilder, UpdateQueryBuilder, WhereExpressionBuilder } from 'typeorm';
3
3
  import { SoftDeleteQueryBuilder } from 'typeorm/query-builder/SoftDeleteQueryBuilder';
4
4
  import { AggregateBuilder } from './aggregate.builder';
@@ -99,8 +99,8 @@ export declare class FilterQueryBuilder<Entity> {
99
99
  * @param alias - optional alias to use to qualify an identifier
100
100
  */
101
101
  applySorting<T extends Sortable<Entity>>(qb: T, sorts?: SortField<Entity>[], alias?: string): T;
102
- applyAggregateGroupBy<T extends Groupable<Entity>>(qb: T, groupBy?: (keyof Entity)[], alias?: string): T;
103
- applyAggregateSorting<T extends Sortable<Entity>>(qb: T, groupBy?: (keyof Entity)[], alias?: string): T;
102
+ applyAggregateGroupBy<T extends Groupable<Entity>>(qb: T, groupBy?: AggregateQueryField<Entity>[], alias?: string): T;
103
+ applyAggregateSorting<T extends Sortable<Entity>>(qb: T, groupBy?: AggregateQueryField<Entity>[], alias?: string): T;
104
104
  /**
105
105
  * Create a `typeorm` SelectQueryBuilder which can be used as an entry point to create update, delete or insert
106
106
  * QueryBuilders.
@@ -139,16 +139,16 @@ class FilterQueryBuilder {
139
139
  if (!groupBy) {
140
140
  return qb;
141
141
  }
142
- return groupBy.reduce((prevQb, field) => {
143
- return prevQb.addGroupBy(this.aggregateBuilder.getCorrectedField(alias, field));
142
+ return groupBy.reduce((prevQb, { field }) => {
143
+ return prevQb.addGroupBy(aggregate_builder_1.AggregateBuilder.getGroupByAlias(field));
144
144
  }, qb);
145
145
  }
146
146
  applyAggregateSorting(qb, groupBy, alias) {
147
147
  if (!groupBy) {
148
148
  return qb;
149
149
  }
150
- return groupBy.reduce((prevQb, field) => {
151
- return prevQb.addOrderBy(this.aggregateBuilder.getCorrectedField(alias, field), 'ASC');
150
+ return groupBy.reduce((prevQb, { field }) => {
151
+ return prevQb.addOrderBy(aggregate_builder_1.AggregateBuilder.getGroupByAlias(field), 'ASC');
152
152
  }, qb);
153
153
  }
154
154
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"filter-query.builder.js","sourceRoot":"","sources":["../../../../../packages/query-typeorm/src/query/filter-query.builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-query.builder.js","sourceRoot":"","sources":["../../../../../packages/query-typeorm/src/query/filter-query.builder.ts"],"names":[],"mappings":"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"}