@metapic/nestjs-utils 1.1.1 → 3.0.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.
package/dist/pagination.d.ts
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import { type Type } from '@nestjs/common';
|
|
2
|
-
import { ApiResponseNoStatusOptions } from '@nestjs/swagger';
|
|
3
|
-
import { type ClassConstructor } from 'class-transformer';
|
|
4
1
|
import { type IPaginationLinks, type IPaginationMeta, type IPaginationOptions, Pagination } from 'nestjs-typeorm-paginate';
|
|
5
2
|
import { FindManyOptions, FindOptionsWhere, type ObjectLiteral, Repository, type SelectQueryBuilder } from 'typeorm';
|
|
6
|
-
export declare function toPaginatedProjectionResponse<Dto, Projection extends ObjectLiteral>(
|
|
3
|
+
export declare function toPaginatedProjectionResponse<Dto, Projection extends ObjectLiteral>(queryBuilder: SelectQueryBuilder<Projection>, mapper: (projection: Projection) => Dto, paginationOptions: IPaginationOptions): Promise<Paginated<Dto>>;
|
|
7
4
|
export declare function toPaginatedResponse<Dto, Entity extends ObjectLiteral>(mapper: (entity: Entity) => Dto, queryBuilder: SelectQueryBuilder<Entity>, paginationOptions: IPaginationOptions): Promise<Paginated<Dto>>;
|
|
8
5
|
export declare function toPaginatedResponse<Dto, Entity extends ObjectLiteral>(mapper: (entity: Entity) => Dto, repository: Repository<Entity>, paginationOptions: IPaginationOptions, searchOptions?: FindOptionsWhere<Entity> | FindManyOptions<Entity>): Promise<Paginated<Dto>>;
|
|
9
|
-
export declare
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
export declare function pageOf<T>(type: new (...args: [unknown]) => T): import("@nestjs/common").Type<{
|
|
7
|
+
items: T[];
|
|
8
|
+
readonly meta: PaginationMeta;
|
|
9
|
+
readonly links?: PaginationLinks;
|
|
10
|
+
}>;
|
|
12
11
|
export declare class PaginationMeta implements IPaginationMeta {
|
|
13
12
|
itemCount: number;
|
|
14
13
|
totalItems?: number;
|
package/dist/pagination.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EAGvB,UAAU,EACX,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,KAAK,aAAa,EAClB,UAAU,EACV,KAAK,kBAAkB,EACxB,MAAM,SAAS,CAAA;AAIhB,wBAAsB,6BAA6B,CAAC,GAAG,EAAE,UAAU,SAAS,aAAa,EACvF,YAAY,EAAE,kBAAkB,CAAC,UAAU,CAAC,EAC5C,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,GAAG,EACvC,iBAAiB,EAAE,kBAAkB,GACpC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAOzB;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,SAAS,aAAa,EACzE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,GAAG,EAC/B,YAAY,EAAE,kBAAkB,CAAC,MAAM,CAAC,EACxC,iBAAiB,EAAE,kBAAkB,GACpC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;AAE1B,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,SAAS,aAAa,EACzE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,GAAG,EAC/B,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,EAC9B,iBAAiB,EAAE,kBAAkB,EACrC,aAAa,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,GACjE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;AAuB1B,wBAAgB,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;WAI1C,CAAC,EAAE;mBAsEG,cAAc;qBAGZ,eAAe;GAtEzC;AAED,qBAAa,cAAe,YAAW,eAAe;IAIpD,SAAS,EAAE,MAAM,CAAI;IAKrB,UAAU,CAAC,EAAE,MAAM,CAAA;IAKnB,YAAY,EAAE,MAAM,CAAI;IAKxB,UAAU,CAAC,EAAE,MAAM,CAAA;IAKnB,WAAW,EAAE,MAAM,CAAI;gBAEX,MAAM,EAAE,cAAc;CAOnC;AAED,qBAAa,eAAgB,YAAW,gBAAgB;IAGtD,KAAK,CAAC,EAAE,MAAM,CAAA;IAId,QAAQ,CAAC,EAAE,MAAM,CAAA;IAIjB,IAAI,CAAC,EAAE,MAAM,CAAA;IAIb,IAAI,CAAC,EAAE,MAAM,CAAA;gBAED,MAAM,CAAC,EAAE,gBAAgB;CAMtC;AAED,qBAAa,SAAS,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,CAAC,EAAE,cAAc,CAAC;IAC7D,SACiB,KAAK,EAAE,CAAC,EAAE,CAAA;IAE3B,SACiB,IAAI,EAAE,cAAc,CAAA;IAErC,SACiB,KAAK,CAAC,EAAE,eAAe,CAAA;CACzC;AAED,qBAAa,eAAe;IAQ1B,IAAI,EAAE,MAAM,CAAI;IAMhB,KAAK,EAAE,MAAM,CAAK;CACnB"}
|
package/dist/pagination.js
CHANGED
|
@@ -16,31 +16,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
16
16
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
17
17
|
});
|
|
18
18
|
};
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
22
|
-
t[p] = s[p];
|
|
23
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
24
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
25
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
26
|
-
t[p[i]] = s[p[i]];
|
|
27
|
-
}
|
|
28
|
-
return t;
|
|
29
|
-
};
|
|
30
|
-
import { applyDecorators } from '@nestjs/common';
|
|
31
|
-
import { ApiExtraModels, ApiProperty, ApiResponse, getSchemaPath, } from '@nestjs/swagger';
|
|
32
|
-
import { plainToInstance } from 'class-transformer';
|
|
19
|
+
import { mixin } from '@nestjs/common';
|
|
20
|
+
import { ApiProperty, ApiSchema } from '@nestjs/swagger';
|
|
33
21
|
import { IsOptional, Max, Min } from 'class-validator';
|
|
34
22
|
import { paginate, paginateRaw, Pagination, } from 'nestjs-typeorm-paginate';
|
|
35
23
|
import { Repository, } from 'typeorm';
|
|
36
24
|
import { ExposeApiProperty, TransformEmptyString } from './serialization.js';
|
|
37
|
-
export function toPaginatedProjectionResponse(
|
|
25
|
+
export function toPaginatedProjectionResponse(queryBuilder, mapper, paginationOptions) {
|
|
38
26
|
return __awaiter(this, void 0, void 0, function* () {
|
|
39
27
|
const result = yield paginateRaw(queryBuilder, paginationOptions);
|
|
40
|
-
return new Pagination(
|
|
41
|
-
exposeDefaultValues: false,
|
|
42
|
-
exposeUnsetFields: false,
|
|
43
|
-
}));
|
|
28
|
+
return new Pagination(result.items.map(mapper), new PaginationMeta(result.meta), result.links ? new PaginationLinks(result.links) : undefined);
|
|
44
29
|
});
|
|
45
30
|
}
|
|
46
31
|
export function toPaginatedResponse(mapper, queryBuilderOrRepository, paginationOptions, searchOptions) {
|
|
@@ -55,20 +40,18 @@ export function toPaginatedResponse(mapper, queryBuilderOrRepository, pagination
|
|
|
55
40
|
return new Pagination(result.items.map(mapper), new PaginationMeta(result.meta), result.links ? new PaginationLinks(result.links) : undefined);
|
|
56
41
|
});
|
|
57
42
|
}
|
|
58
|
-
export
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
} })));
|
|
71
|
-
};
|
|
43
|
+
export function pageOf(type) {
|
|
44
|
+
let PageOf = class PageOf extends Paginated {
|
|
45
|
+
};
|
|
46
|
+
__decorate([
|
|
47
|
+
ExposeApiProperty({ type: [type] }),
|
|
48
|
+
__metadata("design:type", Array)
|
|
49
|
+
], PageOf.prototype, "items", void 0);
|
|
50
|
+
PageOf = __decorate([
|
|
51
|
+
ApiSchema({ name: `PageOf${type.name}` })
|
|
52
|
+
], PageOf);
|
|
53
|
+
return mixin(PageOf);
|
|
54
|
+
}
|
|
72
55
|
export class PaginationMeta {
|
|
73
56
|
constructor(source) {
|
|
74
57
|
this.itemCount = 0;
|
package/dist/pagination.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"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"}
|