nestjs-paginate 2.2.2 → 2.3.3

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/README.md CHANGED
@@ -165,7 +165,8 @@ const paginateConfig: PaginateConfig<CatEntity> {
165
165
  /**
166
166
  * Required: false
167
167
  * Type: (keyof CatEntity)[]
168
- * Description: These columns will be searched through when using the search query param.
168
+ * Description: These columns will be searched through when using the search query
169
+ * param. Limit search scope further by using `searchBy` query param.
169
170
  */
170
171
  searchableColumns: ['name', 'color'],
171
172
 
package/lib/decorator.js CHANGED
@@ -6,7 +6,16 @@ const lodash_1 = require("lodash");
6
6
  exports.Paginate = (0, common_1.createParamDecorator)((_data, ctx) => {
7
7
  const request = ctx.switchToHttp().getRequest();
8
8
  const { query } = request;
9
- const path = request.protocol + '://' + request.get('host') + request.baseUrl + request.path;
9
+ // Determine if Express or Fastify to rebuild the original url and reduce down to protocol, host and base url
10
+ let originalUrl;
11
+ if (request.originalUrl) {
12
+ originalUrl = request.protocol + '://' + request.get('host') + request.originalUrl;
13
+ }
14
+ else {
15
+ originalUrl = request.protocol + '://' + request.hostname + request.url;
16
+ }
17
+ const urlParts = new URL(originalUrl);
18
+ const path = urlParts.protocol + '//' + urlParts.host + urlParts.pathname;
10
19
  const sortBy = [];
11
20
  const searchBy = [];
12
21
  if (query.sortBy) {
@@ -1 +1 @@
1
- {"version":3,"file":"decorator.js","sourceRoot":"","sources":["../src/decorator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorator.js","sourceRoot":"","sources":["../src/decorator.ts"],"names":[],"mappings":"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"}
@@ -31,14 +31,26 @@ function getParamDecoratorFactory(decorator) {
31
31
  return args[Object.keys(args)[0]].factory;
32
32
  }
33
33
  const decoratorfactory = getParamDecoratorFactory(decorator_1.Paginate);
34
- function contextFactory(query) {
34
+ function expressContextFactory(query) {
35
35
  const mockContext = {
36
36
  switchToHttp: () => Object({
37
37
  getRequest: () => Object({
38
38
  protocol: 'http',
39
39
  get: () => 'localhost',
40
- baseUrl: '',
41
- path: '/items',
40
+ originalUrl: '/items?search=2423',
41
+ query: query,
42
+ }),
43
+ }),
44
+ };
45
+ return mockContext;
46
+ }
47
+ function fastifyContextFactory(query) {
48
+ const mockContext = {
49
+ switchToHttp: () => Object({
50
+ getRequest: () => Object({
51
+ protocol: 'http',
52
+ hostname: 'localhost',
53
+ url: '/items?search=2423',
42
54
  query: query,
43
55
  }),
44
56
  }),
@@ -46,8 +58,8 @@ function contextFactory(query) {
46
58
  return mockContext;
47
59
  }
48
60
  describe('Decorator', () => {
49
- it('should handle undefined query fields', () => {
50
- const context = contextFactory({});
61
+ it('should handle express undefined query fields', () => {
62
+ const context = expressContextFactory({});
51
63
  const result = decoratorfactory(null, context);
52
64
  expect(result).toStrictEqual({
53
65
  page: undefined,
@@ -59,8 +71,47 @@ describe('Decorator', () => {
59
71
  path: 'http://localhost/items',
60
72
  });
61
73
  });
62
- it('should handle defined query fields', () => {
63
- const context = contextFactory({
74
+ it('should handle fastify undefined query fields', () => {
75
+ const context = fastifyContextFactory({});
76
+ const result = decoratorfactory(null, context);
77
+ expect(result).toStrictEqual({
78
+ page: undefined,
79
+ limit: undefined,
80
+ sortBy: undefined,
81
+ search: undefined,
82
+ searchBy: undefined,
83
+ filter: undefined,
84
+ path: 'http://localhost/items',
85
+ });
86
+ });
87
+ it('should handle express defined query fields', () => {
88
+ const context = expressContextFactory({
89
+ page: '1',
90
+ limit: '20',
91
+ sortBy: ['id:ASC', 'createdAt:DESC'],
92
+ search: 'white',
93
+ 'filter.name': '$not:$eq:Kitty',
94
+ 'filter.createdAt': ['$gte:2020-01-01', '$lte:2020-12-31'],
95
+ });
96
+ const result = decoratorfactory(null, context);
97
+ expect(result).toStrictEqual({
98
+ page: 1,
99
+ limit: 20,
100
+ sortBy: [
101
+ ['id', 'ASC'],
102
+ ['createdAt', 'DESC'],
103
+ ],
104
+ search: 'white',
105
+ searchBy: undefined,
106
+ path: 'http://localhost/items',
107
+ filter: {
108
+ name: '$not:$eq:Kitty',
109
+ createdAt: ['$gte:2020-01-01', '$lte:2020-12-31'],
110
+ },
111
+ });
112
+ });
113
+ it('should handle fastify defined query fields', () => {
114
+ const context = fastifyContextFactory({
64
115
  page: '1',
65
116
  limit: '20',
66
117
  sortBy: ['id:ASC', 'createdAt:DESC'],
@@ -1 +1 @@
1
- {"version":3,"file":"decorator.spec.js","sourceRoot":"","sources":["../src/decorator.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,wDAA8D;AAG9D,2CAAqD;AAErD,wDAAwD;AACxD,SAAS,wBAAwB,CAAI,SAAmB;IACpD,MAAM,IAAI;QACC,IAAI,CAAc,MAAS;YAC9B,EAAE;QACN,CAAC;KACJ;IAHG;QAAa,WAAA,SAAS,EAAE,CAAA;;;;oCAEvB;IAEL,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,+BAAmB,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IACnE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;AAC7C,CAAC;AACD,MAAM,gBAAgB,GAAG,wBAAwB,CAAgB,oBAAQ,CAAC,CAAA;AAE1E,SAAS,cAAc,CAAC,KAAuB;IAC3C,MAAM,WAAW,GAA8B;QAC3C,YAAY,EAAE,GAAsB,EAAE,CAClC,MAAM,CAAC;YACH,UAAU,EAAE,GAAqB,EAAE,CAC/B,MAAM,CAAC;gBACH,QAAQ,EAAE,MAAM;gBAChB,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW;gBACtB,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,KAAK;aACf,CAAC;SACT,CAAC;KACT,CAAA;IACD,OAAO,WAAW,CAAA;AACtB,CAAC;AAED,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,EAAE,CAAC,CAAA;QAElC,MAAM,MAAM,GAAkB,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAE7D,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACzB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,wBAAwB;SACjC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC1C,MAAM,OAAO,GAAG,cAAc,CAAC;YAC3B,IAAI,EAAE,GAAG;YACT,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC;YACpC,MAAM,EAAE,OAAO;YACf,aAAa,EAAE,gBAAgB;YAC/B,kBAAkB,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;SAC7D,CAAC,CAAA;QAEF,MAAM,MAAM,GAAkB,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAE7D,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACzB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,EAAE;YACT,MAAM,EAAE;gBACJ,CAAC,IAAI,EAAE,KAAK,CAAC;gBACb,CAAC,WAAW,EAAE,MAAM,CAAC;aACxB;YACD,MAAM,EAAE,OAAO;YACf,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,wBAAwB;YAC9B,MAAM,EAAE;gBACJ,IAAI,EAAE,gBAAgB;gBACtB,SAAS,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;aACpD;SACJ,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"decorator.spec.js","sourceRoot":"","sources":["../src/decorator.spec.ts"],"names":[],"mappings":"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"}
package/lib/paginate.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Repository, FindConditions, SelectQueryBuilder } from 'typeorm';
1
+ import { Repository, FindConditions, SelectQueryBuilder, FindOperator } from 'typeorm';
2
2
  import { PaginateQuery } from './decorator';
3
3
  declare type Column<T> = Extract<keyof T, string>;
4
4
  declare type Order<T> = [Column<T>, 'ASC' | 'DESC'];
@@ -46,5 +46,8 @@ export declare enum FilterOperator {
46
46
  LTE = "$lte",
47
47
  NOT = "$not"
48
48
  }
49
+ export declare function isOperator(value: unknown): value is FilterOperator;
50
+ export declare function getOperatorFn<T>(op: FilterOperator): (...args: any[]) => FindOperator<T>;
51
+ export declare function getFilterTokens(raw: string): string[];
49
52
  export declare function paginate<T>(query: PaginateQuery, repo: Repository<T> | SelectQueryBuilder<T>, config: PaginateConfig<T>): Promise<Paginated<T>>;
50
53
  export {};
package/lib/paginate.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.paginate = exports.FilterOperator = exports.Paginated = void 0;
3
+ exports.paginate = exports.getFilterTokens = exports.getOperatorFn = exports.isOperator = exports.FilterOperator = exports.Paginated = void 0;
4
4
  const typeorm_1 = require("typeorm");
5
5
  const common_1 = require("@nestjs/common");
6
6
  const lodash_1 = require("lodash");
@@ -19,6 +19,92 @@ var FilterOperator;
19
19
  FilterOperator["LTE"] = "$lte";
20
20
  FilterOperator["NOT"] = "$not";
21
21
  })(FilterOperator = exports.FilterOperator || (exports.FilterOperator = {}));
22
+ function isOperator(value) {
23
+ return (0, lodash_1.values)(FilterOperator).includes(value);
24
+ }
25
+ exports.isOperator = isOperator;
26
+ function getOperatorFn(op) {
27
+ switch (op) {
28
+ case FilterOperator.EQ:
29
+ return typeorm_1.Equal;
30
+ case FilterOperator.GT:
31
+ return typeorm_1.MoreThan;
32
+ case FilterOperator.GTE:
33
+ return typeorm_1.MoreThanOrEqual;
34
+ case FilterOperator.IN:
35
+ return typeorm_1.In;
36
+ case FilterOperator.NULL:
37
+ return typeorm_1.IsNull;
38
+ case FilterOperator.LT:
39
+ return typeorm_1.LessThan;
40
+ case FilterOperator.LTE:
41
+ return typeorm_1.LessThanOrEqual;
42
+ case FilterOperator.NOT:
43
+ return typeorm_1.Not;
44
+ }
45
+ }
46
+ exports.getOperatorFn = getOperatorFn;
47
+ function getFilterTokens(raw) {
48
+ const tokens = [];
49
+ const matches = raw.match(/(\$\w+):/g);
50
+ if (matches) {
51
+ const value = raw.replace(matches.join(''), '');
52
+ tokens.push(...matches.map((token) => token.substring(0, token.length - 1)), value);
53
+ }
54
+ else {
55
+ tokens.push(raw);
56
+ }
57
+ if (tokens.length === 0 || tokens.length > 3) {
58
+ return [];
59
+ }
60
+ else if (tokens.length === 2) {
61
+ if (tokens[1] !== FilterOperator.NULL) {
62
+ tokens.unshift(null);
63
+ }
64
+ }
65
+ else if (tokens.length === 1) {
66
+ if (tokens[0] === FilterOperator.NULL) {
67
+ tokens.unshift(null);
68
+ }
69
+ else {
70
+ tokens.unshift(null, FilterOperator.EQ);
71
+ }
72
+ }
73
+ return tokens;
74
+ }
75
+ exports.getFilterTokens = getFilterTokens;
76
+ function parseFilter(query, config) {
77
+ const filter = {};
78
+ for (const column of Object.keys(query.filter)) {
79
+ if (!(column in config.filterableColumns)) {
80
+ continue;
81
+ }
82
+ const allowedOperators = config.filterableColumns[column];
83
+ const input = query.filter[column];
84
+ const statements = !Array.isArray(input) ? [input] : input;
85
+ for (const raw of statements) {
86
+ const tokens = getFilterTokens(raw);
87
+ if (tokens.length === 0) {
88
+ continue;
89
+ }
90
+ const [op2, op1, value] = tokens;
91
+ if (!isOperator(op1) || !allowedOperators.includes(op1)) {
92
+ continue;
93
+ }
94
+ if (isOperator(op2) && !allowedOperators.includes(op2)) {
95
+ continue;
96
+ }
97
+ if (isOperator(op1)) {
98
+ const args = op1 === FilterOperator.IN ? value.split(',') : value;
99
+ filter[column] = getOperatorFn(op1)(args);
100
+ }
101
+ if (isOperator(op2)) {
102
+ filter[column] = getOperatorFn(op2)(filter[column]);
103
+ }
104
+ }
105
+ }
106
+ return filter;
107
+ }
22
108
  async function paginate(query, repo, config) {
23
109
  let page = query.page || 1;
24
110
  const limit = Math.min(query.limit || config.defaultLimit || 20, config.maxLimit || 100);
@@ -72,82 +158,18 @@ async function paginate(query, repo, config) {
72
158
  }
73
159
  }
74
160
  if (config.where) {
75
- queryBuilder = queryBuilder.andWhere(new typeorm_1.Brackets((queryBuilder) => queryBuilder.andWhere(config.where))); // Postgres fix (https://github.com/ppetzold/nestjs-paginate/pull/97)
161
+ queryBuilder.andWhere(new typeorm_1.Brackets((qb) => qb.andWhere(config.where)));
76
162
  }
77
163
  if (query.search && searchBy.length) {
78
164
  const search = [];
79
165
  for (const column of searchBy) {
80
166
  search.push({ [column]: (0, typeorm_1.ILike)(`%${query.search}%`) });
81
167
  }
82
- queryBuilder = queryBuilder.andWhere(search);
168
+ queryBuilder.andWhere(new typeorm_1.Brackets((qb) => qb.andWhere(search)));
83
169
  }
84
170
  if (query.filter) {
85
- const filter = {};
86
- function getOperatorFn(op) {
87
- switch (op) {
88
- case FilterOperator.EQ:
89
- return typeorm_1.Equal;
90
- case FilterOperator.GT:
91
- return typeorm_1.MoreThan;
92
- case FilterOperator.GTE:
93
- return typeorm_1.MoreThanOrEqual;
94
- case FilterOperator.IN:
95
- return typeorm_1.In;
96
- case FilterOperator.NULL:
97
- return typeorm_1.IsNull;
98
- case FilterOperator.LT:
99
- return typeorm_1.LessThan;
100
- case FilterOperator.LTE:
101
- return typeorm_1.LessThanOrEqual;
102
- case FilterOperator.NOT:
103
- return typeorm_1.Not;
104
- }
105
- }
106
- function isOperator(value) {
107
- return (0, lodash_1.values)(FilterOperator).includes(value);
108
- }
109
- for (const column of Object.keys(query.filter)) {
110
- if (!(column in config.filterableColumns)) {
111
- continue;
112
- }
113
- const allowedOperators = config.filterableColumns[column];
114
- const input = query.filter[column];
115
- const statements = !Array.isArray(input) ? [input] : input;
116
- for (const raw of statements) {
117
- const tokens = raw.split(':');
118
- if (tokens.length === 0 || tokens.length > 3) {
119
- continue;
120
- }
121
- else if (tokens.length === 2) {
122
- if (tokens[1] !== FilterOperator.NULL) {
123
- tokens.unshift(null);
124
- }
125
- }
126
- else if (tokens.length === 1) {
127
- if (tokens[0] === FilterOperator.NULL) {
128
- tokens.unshift(null);
129
- }
130
- else {
131
- tokens.unshift(null, FilterOperator.EQ);
132
- }
133
- }
134
- const [op2, op1, value] = tokens;
135
- if (!isOperator(op1) || !allowedOperators.includes(op1)) {
136
- continue;
137
- }
138
- if (isOperator(op2) && !allowedOperators.includes(op2)) {
139
- continue;
140
- }
141
- if (isOperator(op1)) {
142
- const args = op1 === FilterOperator.IN ? value.split(',') : value;
143
- filter[column] = getOperatorFn(op1)(args);
144
- }
145
- if (isOperator(op2)) {
146
- filter[column] = getOperatorFn(op2)(filter[column]);
147
- }
148
- }
149
- }
150
- queryBuilder = queryBuilder.andWhere(filter);
171
+ const filter = parseFilter(query, config);
172
+ queryBuilder.andWhere(new typeorm_1.Brackets((qb) => qb.andWhere(filter)));
151
173
  }
152
174
  ;
153
175
  [items, totalItems] = await queryBuilder.getManyAndCount();
@@ -1 +1 @@
1
- {"version":3,"file":"paginate.js","sourceRoot":"","sources":["../src/paginate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paginate.js","sourceRoot":"","sources":["../src/paginate.ts"],"names":[],"mappings":"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"}
@@ -392,5 +392,47 @@ describe('paginate', () => {
392
392
  expect(err).toBeInstanceOf(common_1.HttpException);
393
393
  }
394
394
  });
395
+ it.each([
396
+ { operator: '$eq', result: true },
397
+ { operator: '$gte', result: true },
398
+ { operator: '$gt', result: true },
399
+ { operator: '$in', result: true },
400
+ { operator: '$null', result: true },
401
+ { operator: '$lt', result: true },
402
+ { operator: '$lte', result: true },
403
+ { operator: '$not', result: true },
404
+ { operator: '$fake', result: false },
405
+ ])('should check operator "$operator" valid is $result', ({ operator, result }) => {
406
+ expect((0, paginate_1.isOperator)(operator)).toStrictEqual(result);
407
+ });
408
+ it.each([
409
+ { operator: '$eq', name: 'Equal' },
410
+ { operator: '$gt', name: 'MoreThan' },
411
+ { operator: '$gte', name: 'MoreThanOrEqual' },
412
+ { operator: '$in', name: 'In' },
413
+ { operator: '$null', name: 'IsNull' },
414
+ { operator: '$lt', name: 'LessThan' },
415
+ { operator: '$lte', name: 'LessThanOrEqual' },
416
+ { operator: '$not', name: 'Not' },
417
+ ])('should get operator function $name for "$operator"', ({ operator, name }) => {
418
+ const func = (0, paginate_1.getOperatorFn)(operator);
419
+ expect(func.name).toStrictEqual(name);
420
+ });
421
+ it.each([
422
+ { string: '$eq:value', tokens: [null, '$eq', 'value'] },
423
+ { string: '$eq:val:ue', tokens: [null, '$eq', 'val:ue'] },
424
+ { string: '$in:value1,value2,value3', tokens: [null, '$in', 'value1,value2,value3'] },
425
+ { string: '$not:$in:value1:a,value2:b,value3:c', tokens: ['$not', '$in', 'value1:a,value2:b,value3:c'] },
426
+ { string: 'value', tokens: [null, '$eq', 'value'] },
427
+ { string: 'val:ue', tokens: [null, '$eq', 'val:ue'] },
428
+ { string: '$not:value', tokens: [null, '$not', 'value'] },
429
+ { string: '$eq:$not:value', tokens: ['$eq', '$not', 'value'] },
430
+ { string: '$eq:$null', tokens: ['$eq', '$null'] },
431
+ { string: '$null', tokens: [null, '$null'] },
432
+ { string: '', tokens: [null, '$eq', ''] },
433
+ { string: '$eq:$not:$in:value', tokens: [] },
434
+ ])('should get filter tokens for "$string"', ({ string, tokens }) => {
435
+ expect((0, paginate_1.getFilterTokens)(string)).toStrictEqual(tokens);
436
+ });
395
437
  });
396
438
  //# sourceMappingURL=paginate.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"paginate.spec.js","sourceRoot":"","sources":["../src/paginate.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paginate.spec.js","sourceRoot":"","sources":["../src/paginate.spec.ts"],"names":[],"mappings":"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"}