@rafikidota/iroh 0.44.0 → 0.45.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/README.md +9 -9
- package/dist/common/database/query-builder/query-builder.d.ts +1 -0
- package/dist/common/database/query-builder/query-builder.js +3 -0
- package/dist/common/database/query-builder/query-builder.js.map +1 -1
- package/dist/common/database/typeorm-unit-of-work/interfaces/IUnitOfWork.d.ts +4 -4
- package/dist/common/database/typeorm-unit-of-work/typeorm-unit-of-work.provider.d.ts +4 -4
- package/dist/common/decorators/controller.decorator.d.ts +1 -0
- package/dist/common/decorators/controller.decorator.js +20 -0
- package/dist/common/decorators/controller.decorator.js.map +1 -0
- package/dist/common/decorators/entity-id.decorator.d.ts +5 -0
- package/dist/common/decorators/entity-id.decorator.js +44 -0
- package/dist/common/decorators/entity-id.decorator.js.map +1 -0
- package/dist/common/decorators/generic-get.decorator.js +2 -6
- package/dist/common/decorators/generic-get.decorator.js.map +1 -1
- package/dist/common/decorators/index.d.ts +5 -0
- package/dist/common/decorators/index.js +5 -0
- package/dist/common/decorators/index.js.map +1 -1
- package/dist/common/decorators/pagination.decorator.d.ts +2 -0
- package/dist/common/decorators/pagination.decorator.js +26 -0
- package/dist/common/decorators/pagination.decorator.js.map +1 -0
- package/dist/common/decorators/param.decorator.d.ts +1 -0
- package/dist/common/decorators/param.decorator.js +8 -0
- package/dist/common/decorators/param.decorator.js.map +1 -0
- package/dist/common/decorators/query.decorator.d.ts +1 -0
- package/dist/common/decorators/query.decorator.js +8 -0
- package/dist/common/decorators/query.decorator.js.map +1 -0
- package/dist/common/decorators/use-dto.decorator.d.ts +3 -3
- package/dist/common/dto/index.d.ts +1 -0
- package/dist/common/dto/index.js +1 -0
- package/dist/common/dto/index.js.map +1 -1
- package/dist/common/dto/pagination.view.d.ts +11 -0
- package/dist/common/dto/pagination.view.js +48 -0
- package/dist/common/dto/pagination.view.js.map +1 -0
- package/dist/common/index.d.ts +0 -1
- package/dist/common/index.js +0 -1
- package/dist/common/index.js.map +1 -1
- package/dist/common/interceptors/index.d.ts +0 -3
- package/dist/common/interceptors/index.js +0 -3
- package/dist/common/interceptors/index.js.map +1 -1
- package/dist/common/interceptors/response.interceptor.d.ts +2 -2
- package/dist/common/interceptors/response.interceptor.js +11 -17
- package/dist/common/interceptors/response.interceptor.js.map +1 -1
- package/dist/common/interfaces/crud.controller.d.ts +6 -5
- package/dist/common/interfaces/crud.repository.d.ts +6 -5
- package/dist/common/interfaces/crud.service.d.ts +9 -7
- package/dist/common/interfaces/generic.mapper.d.ts +4 -4
- package/dist/common/interfaces/index.d.ts +0 -1
- package/dist/common/interfaces/index.js +0 -1
- package/dist/common/interfaces/index.js.map +1 -1
- package/dist/common/types/index.d.ts +1 -0
- package/dist/common/types/index.js +1 -0
- package/dist/common/types/index.js.map +1 -1
- package/dist/common/types/pagination.d.ts +11 -0
- package/dist/common/{errors/types/app.error.js → types/pagination.js} +1 -1
- package/dist/common/types/pagination.js.map +1 -0
- package/dist/core/app/dto/generic.create.dto.d.ts +4 -4
- package/dist/core/app/dto/generic.view.d.ts +1 -1
- package/dist/core/app/dto/generic.view.js +6 -6
- package/dist/core/app/dto/generic.view.js.map +1 -1
- package/dist/core/app/dto/nomenclator.view.d.ts +2 -2
- package/dist/core/app/dto/nomenclator.view.js +1 -1
- package/dist/core/app/dto/nomenclator.view.js.map +1 -1
- package/dist/core/domain/generic.domain.d.ts +6 -6
- package/dist/core/domain/generic.domain.factory.d.ts +3 -3
- package/dist/core/domain/generic.domain.factory.js.map +1 -1
- package/dist/core/domain/generic.domain.js +3 -3
- package/dist/core/domain/generic.domain.js.map +1 -1
- package/dist/core/domain/nomenclator.domain.d.ts +2 -2
- package/dist/core/domain/nomenclator.domain.js +1 -1
- package/dist/core/domain/nomenclator.domain.js.map +1 -1
- package/dist/core/infra/generic.persistence.d.ts +1 -1
- package/dist/core/infra/generic.persistence.factory.d.ts +3 -3
- package/dist/core/infra/generic.persistence.factory.js.map +1 -1
- package/dist/core/infra/generic.persistence.js +7 -7
- package/dist/core/infra/generic.persistence.js.map +1 -1
- package/dist/core/infra/iroh.mapper.d.ts +4 -4
- package/dist/core/infra/iroh.repository.d.ts +7 -6
- package/dist/core/infra/iroh.repository.js +11 -4
- package/dist/core/infra/iroh.repository.js.map +1 -1
- package/dist/core/infra/nomenclator.persistence.d.ts +2 -2
- package/dist/core/infra/nomenclator.persistence.js +1 -1
- package/dist/core/infra/nomenclator.persistence.js.map +1 -1
- package/dist/core/iroh.controller.d.ts +7 -6
- package/dist/core/iroh.controller.js +3 -2
- package/dist/core/iroh.controller.js.map +1 -1
- package/dist/core/iroh.service.d.ts +7 -8
- package/dist/core/iroh.service.js +65 -102
- package/dist/core/iroh.service.js.map +1 -1
- package/dist/schematics/crud/files/ts/app/dto/__name__.view.ts +2 -2
- package/dist/schematics/crud/files/ts/domain/__name__.domain.ts +2 -2
- package/dist/schematics/crud/files/ts/infra/__name__.persistence.ts +2 -2
- package/package.json +11 -11
- package/dist/common/errors/database/index.d.ts +0 -1
- package/dist/common/errors/database/index.js +0 -18
- package/dist/common/errors/database/index.js.map +0 -1
- package/dist/common/errors/database/postgresql.error.d.ts +0 -6
- package/dist/common/errors/database/postgresql.error.js +0 -7
- package/dist/common/errors/database/postgresql.error.js.map +0 -1
- package/dist/common/errors/handler/error.handler.d.ts +0 -8
- package/dist/common/errors/handler/error.handler.js +0 -20
- package/dist/common/errors/handler/error.handler.js.map +0 -1
- package/dist/common/errors/handler/index.d.ts +0 -1
- package/dist/common/errors/handler/index.js +0 -18
- package/dist/common/errors/handler/index.js.map +0 -1
- package/dist/common/errors/index.d.ts +0 -4
- package/dist/common/errors/index.js +0 -21
- package/dist/common/errors/index.js.map +0 -1
- package/dist/common/errors/interfaces/IErrorHandler.d.ts +0 -4
- package/dist/common/errors/interfaces/IErrorHandler.js +0 -3
- package/dist/common/errors/interfaces/IErrorHandler.js.map +0 -1
- package/dist/common/errors/interfaces/index.d.ts +0 -1
- package/dist/common/errors/interfaces/index.js +0 -18
- package/dist/common/errors/interfaces/index.js.map +0 -1
- package/dist/common/errors/types/app.error.d.ts +0 -3
- package/dist/common/errors/types/app.error.js.map +0 -1
- package/dist/common/errors/types/index.d.ts +0 -1
- package/dist/common/errors/types/index.js +0 -18
- package/dist/common/errors/types/index.js.map +0 -1
- package/dist/common/errors/util/error.map.d.ts +0 -3
- package/dist/common/errors/util/error.map.js +0 -3
- package/dist/common/errors/util/error.map.js.map +0 -1
- package/dist/common/errors/util/index.d.ts +0 -1
- package/dist/common/errors/util/index.js +0 -18
- package/dist/common/errors/util/index.js.map +0 -1
- package/dist/common/interceptors/body.logger.interceptor.d.ts +0 -6
- package/dist/common/interceptors/body.logger.interceptor.js +0 -27
- package/dist/common/interceptors/body.logger.interceptor.js.map +0 -1
- package/dist/common/interceptors/query.logger.interceptor.d.ts +0 -6
- package/dist/common/interceptors/query.logger.interceptor.js +0 -27
- package/dist/common/interceptors/query.logger.interceptor.js.map +0 -1
- package/dist/common/interceptors/query.options.interceptor.d.ts +0 -8
- package/dist/common/interceptors/query.options.interceptor.js +0 -31
- package/dist/common/interceptors/query.options.interceptor.js.map +0 -1
- package/dist/common/interfaces/response.interceptor.d.ts +0 -8
- package/dist/common/interfaces/response.interceptor.js +0 -3
- package/dist/common/interfaces/response.interceptor.js.map +0 -1
|
@@ -7,18 +7,19 @@ import { ParsedSearchDto } from '../dto';
|
|
|
7
7
|
import { TimestampLogger } from '../loggers';
|
|
8
8
|
import { LoggerOptions } from '../loggers';
|
|
9
9
|
import { IEntityMapper } from './generic.mapper';
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
10
|
+
import { Persistence } from '../../core';
|
|
11
|
+
import { Domain } from '../../core/domain/generic.domain';
|
|
12
|
+
import { View } from '../../core/app/dto/generic.view';
|
|
13
13
|
import { FindByIdParam } from '../types';
|
|
14
|
-
|
|
14
|
+
import { Pagination as Page } from '../types/pagination';
|
|
15
|
+
export type IGenericRepository<T extends Persistence, D extends Domain, V extends View> = {
|
|
15
16
|
Entity: Type<T>;
|
|
16
17
|
logger: TimestampLogger;
|
|
17
18
|
mapper: IEntityMapper<T, D, V>;
|
|
18
19
|
save(domain: D): Promise<D>;
|
|
19
20
|
saveList(domains: D[]): Promise<D[]>;
|
|
20
21
|
create(domain: D): Promise<D>;
|
|
21
|
-
paginate(query: ParsedSearchDto<T>): Promise<D
|
|
22
|
+
paginate(query: ParsedSearchDto<T>): Promise<Page<D>>;
|
|
22
23
|
findAll(): Promise<D[]>;
|
|
23
24
|
findById(id: string, params?: FindByIdParam<T>): Promise<D>;
|
|
24
25
|
findOne(query: FindOneOptions<T>, options?: LoggerOptions): Promise<D>;
|
|
@@ -2,17 +2,19 @@ import { DeepPartial } from 'typeorm';
|
|
|
2
2
|
import { FindOneOptions } from 'typeorm';
|
|
3
3
|
import { IGenericRepository } from './crud.repository';
|
|
4
4
|
import { IEntityMapper } from './generic.mapper';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
5
|
+
import { Persistence } from '../../core/infra/generic.persistence';
|
|
6
|
+
import { Domain } from '../../core/domain/generic.domain';
|
|
7
|
+
import { View } from '../../core/app/dto/generic.view';
|
|
8
|
+
import { DtoMapper } from '../../core/app/dto/generic.create.dto';
|
|
8
9
|
import { Result } from '../../core/app/result';
|
|
9
|
-
import { ParsedSearchDto } from '../../common/dto';
|
|
10
|
+
import { ParsedSearchDto as SearchDto } from '../../common/dto';
|
|
10
11
|
import { LoggerOptions } from '../../common/loggers';
|
|
11
12
|
import { FindByIdParam } from '../types';
|
|
12
|
-
|
|
13
|
+
import { Pagination as Page } from '../types/pagination';
|
|
14
|
+
export type IGenericService<T extends Persistence, D extends Domain, V extends View, DTO extends DtoMapper<D, DTO>> = {
|
|
13
15
|
mapper: IEntityMapper<T, D, V>;
|
|
14
|
-
create(
|
|
15
|
-
paginate(query:
|
|
16
|
+
create(dto: DeepPartial<DTO>): Promise<Result<D>>;
|
|
17
|
+
paginate(query: SearchDto<T>): Promise<Result<Page<D>>>;
|
|
16
18
|
findAll(): Promise<Result<D[]>>;
|
|
17
19
|
findById(id: string, params?: FindByIdParam<T>): Promise<Result<D>>;
|
|
18
20
|
findOne(query: FindOneOptions<T>, options?: LoggerOptions): Promise<Result<D>>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
export interface IEntityMapper<P extends
|
|
1
|
+
import { Persistence } from '../../core/infra/generic.persistence';
|
|
2
|
+
import { Domain } from '../../core/domain/generic.domain';
|
|
3
|
+
import { View } from '../../core/app/dto/generic.view';
|
|
4
|
+
export interface IEntityMapper<P extends Persistence, D extends Domain, V extends View> {
|
|
5
5
|
PersistenceToDomain(persistence: P): D;
|
|
6
6
|
DomainToPersistence(domain: D): P;
|
|
7
7
|
DomainToView(domain: D): V;
|
|
@@ -20,5 +20,4 @@ __exportStar(require("./crud.service"), exports);
|
|
|
20
20
|
__exportStar(require("./generic.mapper"), exports);
|
|
21
21
|
__exportStar(require("./generic.props"), exports);
|
|
22
22
|
__exportStar(require("./nomenclator.props"), exports);
|
|
23
|
-
__exportStar(require("./response.interceptor"), exports);
|
|
24
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,oDAAkC;AAClC,iDAA+B;AAC/B,mDAAiC;AACjC,kDAAgC;AAChC,sDAAoC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,oDAAkC;AAClC,iDAA+B;AAC/B,mDAAiC;AACjC,kDAAgC;AAChC,sDAAoC"}
|
|
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./find-by-id-params"), exports);
|
|
18
|
+
__exportStar(require("./pagination"), exports);
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,+CAA6B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../src/common/types/pagination.ts"],"names":[],"mappings":""}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare abstract class DtoMapper<D extends
|
|
1
|
+
import { Domain } from '../../domain/generic.domain';
|
|
2
|
+
export declare abstract class DtoMapper<D extends Domain, DTO extends GenericCreateDto = GenericCreateDto> {
|
|
3
3
|
abstract ToDomain(dto: DTO): D;
|
|
4
4
|
}
|
|
5
|
-
type IGenericCreateDto = DtoMapper<
|
|
5
|
+
type IGenericCreateDto = DtoMapper<Domain, GenericCreateDto>;
|
|
6
6
|
export declare class GenericCreateDto implements IGenericCreateDto {
|
|
7
|
-
ToDomain(dto: any):
|
|
7
|
+
ToDomain(dto: any): Domain;
|
|
8
8
|
}
|
|
9
9
|
export {};
|
|
@@ -9,30 +9,30 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.View = void 0;
|
|
13
13
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
14
|
const uuid_1 = require("uuid");
|
|
15
|
-
class
|
|
15
|
+
class View {
|
|
16
16
|
}
|
|
17
|
-
exports.
|
|
17
|
+
exports.View = View;
|
|
18
18
|
__decorate([
|
|
19
19
|
(0, swagger_1.ApiProperty)({
|
|
20
20
|
example: (0, uuid_1.v4)(),
|
|
21
21
|
}),
|
|
22
22
|
__metadata("design:type", String)
|
|
23
|
-
],
|
|
23
|
+
], View.prototype, "id", void 0);
|
|
24
24
|
__decorate([
|
|
25
25
|
(0, swagger_1.ApiProperty)({
|
|
26
26
|
type: Date,
|
|
27
27
|
example: new Date(),
|
|
28
28
|
}),
|
|
29
29
|
__metadata("design:type", Date)
|
|
30
|
-
],
|
|
30
|
+
], View.prototype, "createdAt", void 0);
|
|
31
31
|
__decorate([
|
|
32
32
|
(0, swagger_1.ApiProperty)({
|
|
33
33
|
type: Date,
|
|
34
34
|
example: new Date(),
|
|
35
35
|
}),
|
|
36
36
|
__metadata("design:type", Date)
|
|
37
|
-
],
|
|
37
|
+
], View.prototype, "updatedAt", void 0);
|
|
38
38
|
//# sourceMappingURL=generic.view.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic.view.js","sourceRoot":"","sources":["../../../../src/core/app/dto/generic.view.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,+BAAkC;AAElC,MAAa,
|
|
1
|
+
{"version":3,"file":"generic.view.js","sourceRoot":"","sources":["../../../../src/core/app/dto/generic.view.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,+BAAkC;AAElC,MAAa,IAAI;CAiBhB;AAjBD,oBAiBC;AAbU;IAHR,IAAA,qBAAW,EAAC;QACX,OAAO,EAAE,IAAA,SAAI,GAAE;KAChB,CAAC;;gCACkB;AAMX;IAJR,IAAA,qBAAW,EAAC;QACX,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI,IAAI,EAAE;KACpB,CAAC;8BACkB,IAAI;uCAAC;AAMhB;IAJR,IAAA,qBAAW,EAAC;QACX,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI,IAAI,EAAE;KACpB,CAAC;8BACkB,IAAI;uCAAC"}
|
|
@@ -12,7 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.NomenclatorView = void 0;
|
|
13
13
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
14
|
const generic_view_1 = require("./generic.view");
|
|
15
|
-
class NomenclatorView extends generic_view_1.
|
|
15
|
+
class NomenclatorView extends generic_view_1.View {
|
|
16
16
|
}
|
|
17
17
|
exports.NomenclatorView = NomenclatorView;
|
|
18
18
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nomenclator.view.js","sourceRoot":"","sources":["../../../../src/core/app/dto/nomenclator.view.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"nomenclator.view.js","sourceRoot":"","sources":["../../../../src/core/app/dto/nomenclator.view.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,iDAAsC;AAEtC,MAAa,eAAgB,SAAQ,mBAAI;CAKxC;AALD,0CAKC;AAHU;IADR,IAAA,qBAAW,GAAE;;6CACQ;AAEb;IADR,IAAA,qBAAW,GAAE;;oDACe"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { Result } from '../app/result';
|
|
2
|
-
export declare abstract class
|
|
2
|
+
export declare abstract class Domain {
|
|
3
3
|
readonly id: string;
|
|
4
4
|
readonly createdAt: Date;
|
|
5
5
|
readonly updatedAt: Date;
|
|
6
6
|
readonly deletedAt?: Date;
|
|
7
7
|
static create(args: any, id?: string): Result<any>;
|
|
8
8
|
}
|
|
9
|
-
export type Props<D extends
|
|
10
|
-
export type PartialProps<D extends
|
|
11
|
-
export type DomainProps<D extends
|
|
12
|
-
export interface IUpdatableDomain<D extends
|
|
9
|
+
export type Props<D extends Domain> = Omit<D, keyof Domain | 'update'>;
|
|
10
|
+
export type PartialProps<D extends Domain> = Partial<Props<D>>;
|
|
11
|
+
export type DomainProps<D extends Domain> = Omit<D, 'update'>;
|
|
12
|
+
export interface IUpdatableDomain<D extends Domain> {
|
|
13
13
|
update(props: Partial<DomainProps<D>>): Result<D>;
|
|
14
14
|
}
|
|
15
|
-
export type UpdatableGenericDomain<D extends
|
|
15
|
+
export type UpdatableGenericDomain<D extends Domain> = D & IUpdatableDomain<D>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Type } from '@nestjs/common';
|
|
2
2
|
import { DomainProps } from './generic.domain';
|
|
3
|
-
import {
|
|
3
|
+
import { Domain } from './generic.domain';
|
|
4
4
|
export declare abstract class DomainFactory {
|
|
5
|
-
static create<D extends
|
|
6
|
-
static instance<D extends
|
|
5
|
+
static create<D extends Domain>(domain: Type<D>, args: Partial<DomainProps<D>>, id?: string): D;
|
|
6
|
+
static instance<D extends Domain>(domain: Type<D>, args: Partial<DomainProps<D>>): D;
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic.domain.factory.js","sourceRoot":"","sources":["../../../src/core/domain/generic.domain.factory.ts"],"names":[],"mappings":";;;AACA,+BAAkC;AAIlC,MAAsB,aAAa;IACjC,MAAM,CAAC,MAAM,CACX,MAAe,EACf,IAA6B,EAC7B,EAAW;QAEX,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"generic.domain.factory.js","sourceRoot":"","sources":["../../../src/core/domain/generic.domain.factory.ts"],"names":[],"mappings":";;;AACA,+BAAkC;AAIlC,MAAsB,aAAa;IACjC,MAAM,CAAC,MAAM,CACX,MAAe,EACf,IAA6B,EAC7B,EAAW;QAEX,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAoB;YAC7B,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,IAAA,SAAI,GAAE;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;SAClC,CAAC;QACF,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,MAAM,CAAC,QAAQ,CACb,MAAe,EACf,IAA6B;QAE7B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAClC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CACzB,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CACrD,CACF,CAAC;QACF,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;IACnD,CAAC;CACF;AA5BD,sCA4BC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.Domain = void 0;
|
|
4
4
|
const uuid_1 = require("uuid");
|
|
5
5
|
const result_1 = require("../app/result");
|
|
6
|
-
class
|
|
6
|
+
class Domain {
|
|
7
7
|
static create(args, id) {
|
|
8
8
|
const instance = Object.create(null);
|
|
9
9
|
const now = new Date();
|
|
@@ -17,5 +17,5 @@ class GenericDomain {
|
|
|
17
17
|
return result_1.Result.Ok(domain);
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
exports.
|
|
20
|
+
exports.Domain = Domain;
|
|
21
21
|
//# sourceMappingURL=generic.domain.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic.domain.js","sourceRoot":"","sources":["../../../src/core/domain/generic.domain.ts"],"names":[],"mappings":";;;AAAA,+BAAkC;AAClC,0CAAuC;AAEvC,MAAsB,
|
|
1
|
+
{"version":3,"file":"generic.domain.js","sourceRoot":"","sources":["../../../src/core/domain/generic.domain.ts"],"names":[],"mappings":";;;AAAA,+BAAkC;AAClC,0CAAuC;AAEvC,MAAsB,MAAM;IAM1B,MAAM,CAAC,MAAM,CAAC,IAAS,EAAE,EAAW;QAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAoB;YAC7B,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,IAAA,SAAI,GAAE;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;SAClC,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;QAC9D,OAAO,eAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;CACF;AAlBD,wBAkBC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare abstract class NomenclatorDomain extends
|
|
1
|
+
import { Domain } from './generic.domain';
|
|
2
|
+
export declare abstract class NomenclatorDomain extends Domain {
|
|
3
3
|
readonly name: string;
|
|
4
4
|
readonly description: string;
|
|
5
5
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.NomenclatorDomain = void 0;
|
|
4
4
|
const generic_domain_1 = require("./generic.domain");
|
|
5
|
-
class NomenclatorDomain extends generic_domain_1.
|
|
5
|
+
class NomenclatorDomain extends generic_domain_1.Domain {
|
|
6
6
|
}
|
|
7
7
|
exports.NomenclatorDomain = NomenclatorDomain;
|
|
8
8
|
//# sourceMappingURL=nomenclator.domain.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nomenclator.domain.js","sourceRoot":"","sources":["../../../src/core/domain/nomenclator.domain.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"nomenclator.domain.js","sourceRoot":"","sources":["../../../src/core/domain/nomenclator.domain.ts"],"names":[],"mappings":";;;AAAA,qDAA0C;AAE1C,MAAsB,iBAAkB,SAAQ,uBAAM;CAGrD;AAHD,8CAGC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Type } from '@nestjs/common';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { Persistence } from './generic.persistence';
|
|
3
|
+
import { Domain } from '../domain/generic.domain';
|
|
4
4
|
import { DomainProps } from '../domain/generic.domain';
|
|
5
5
|
export declare abstract class PersistenceFactory {
|
|
6
|
-
static create<T extends
|
|
6
|
+
static create<T extends Persistence, D extends Domain>(persistence: Type<T>, args: Partial<DomainProps<D>>, id?: string): T;
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic.persistence.factory.js","sourceRoot":"","sources":["../../../src/core/infra/generic.persistence.factory.ts"],"names":[],"mappings":";;;AACA,+BAAkC;AAKlC,MAAsB,kBAAkB;IACtC,MAAM,CAAC,MAAM,CACX,WAAoB,EACpB,IAA6B,EAC7B,EAAW;QAEX,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"generic.persistence.factory.js","sourceRoot":"","sources":["../../../src/core/infra/generic.persistence.factory.ts"],"names":[],"mappings":";;;AACA,+BAAkC;AAKlC,MAAsB,kBAAkB;IACtC,MAAM,CAAC,MAAM,CACX,WAAoB,EACpB,IAA6B,EAC7B,EAAW;QAEX,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAyB;YAClC,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,IAAA,SAAI,GAAE;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG;YAChC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;SAClC,CAAC;QACF,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC;CACF;AAhBD,gDAgBC"}
|
|
@@ -9,26 +9,26 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.Persistence = void 0;
|
|
13
13
|
const typeorm_1 = require("typeorm");
|
|
14
14
|
const typeorm_2 = require("typeorm");
|
|
15
15
|
const typeorm_3 = require("typeorm");
|
|
16
16
|
const typeorm_4 = require("typeorm");
|
|
17
|
-
class
|
|
17
|
+
class Persistence {
|
|
18
18
|
}
|
|
19
|
-
exports.
|
|
19
|
+
exports.Persistence = Persistence;
|
|
20
20
|
__decorate([
|
|
21
21
|
(0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
|
|
22
22
|
__metadata("design:type", String)
|
|
23
|
-
],
|
|
23
|
+
], Persistence.prototype, "id", void 0);
|
|
24
24
|
__decorate([
|
|
25
25
|
(0, typeorm_2.CreateDateColumn)({ name: 'created_at', type: 'timestamp' }),
|
|
26
26
|
__metadata("design:type", Date)
|
|
27
|
-
],
|
|
27
|
+
], Persistence.prototype, "createdAt", void 0);
|
|
28
28
|
__decorate([
|
|
29
29
|
(0, typeorm_3.UpdateDateColumn)({ name: 'updated_at', type: 'timestamp' }),
|
|
30
30
|
__metadata("design:type", Date)
|
|
31
|
-
],
|
|
31
|
+
], Persistence.prototype, "updatedAt", void 0);
|
|
32
32
|
__decorate([
|
|
33
33
|
(0, typeorm_4.DeleteDateColumn)({
|
|
34
34
|
name: 'deleted_at',
|
|
@@ -37,5 +37,5 @@ __decorate([
|
|
|
37
37
|
default: null,
|
|
38
38
|
}),
|
|
39
39
|
__metadata("design:type", Date)
|
|
40
|
-
],
|
|
40
|
+
], Persistence.prototype, "deletedAt", void 0);
|
|
41
41
|
//# sourceMappingURL=generic.persistence.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic.persistence.js","sourceRoot":"","sources":["../../../src/core/infra/generic.persistence.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAiD;AACjD,qCAA2C;AAC3C,qCAA2C;AAC3C,qCAA2C;AAE3C,
|
|
1
|
+
{"version":3,"file":"generic.persistence.js","sourceRoot":"","sources":["../../../src/core/infra/generic.persistence.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAiD;AACjD,qCAA2C;AAC3C,qCAA2C;AAC3C,qCAA2C;AAE3C,MAAsB,WAAW;CAiBhC;AAjBD,kCAiBC;AAfU;IADR,IAAA,gCAAsB,EAAC,MAAM,CAAC;;uCACX;AAGX;IADR,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;8BACxC,IAAI;8CAAC;AAGhB;IADR,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;8BACxC,IAAI;8CAAC;AAQhB;IANR,IAAA,0BAAgB,EAAC;QAChB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACd,CAAC;8BACmB,IAAI;8CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { Domain } from '../domain/generic.domain';
|
|
2
|
+
import { Persistence } from './generic.persistence';
|
|
3
|
+
import { View } from '../app/dto/generic.view';
|
|
4
4
|
import type { IEntityMapper } from '../../common/interfaces';
|
|
5
|
-
export declare abstract class IrohMapper<T extends
|
|
5
|
+
export declare abstract class IrohMapper<T extends Persistence, D extends Domain, V extends View> implements IEntityMapper<T, D, V> {
|
|
6
6
|
PersistenceToDomain(persistence: T): D;
|
|
7
7
|
DomainToPersistence(domain: D): T;
|
|
8
8
|
DomainToView(domain: D): V;
|
|
@@ -5,15 +5,16 @@ import { Repository } from 'typeorm';
|
|
|
5
5
|
import { EntityMetadata } from 'typeorm';
|
|
6
6
|
import { TimestampLogger } from '../../common';
|
|
7
7
|
import { LoggerOptions } from '../../common';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
8
|
+
import { Persistence } from '../infra/generic.persistence';
|
|
9
|
+
import { Domain } from '../domain/generic.domain';
|
|
10
|
+
import { View } from '../app/dto/generic.view';
|
|
11
11
|
import { IEntityMapper } from '../../common';
|
|
12
12
|
import { IGenericRepository } from '../../common';
|
|
13
|
-
import { ParsedSearchDto } from '../../common';
|
|
13
|
+
import { ParsedSearchDto as SearchDto } from '../../common';
|
|
14
14
|
import { QueryBuilder } from '../../common/database/';
|
|
15
15
|
import { FindByIdParam } from '../../common/types/find-by-id-params';
|
|
16
|
-
|
|
16
|
+
import { Pagination as Page } from '../../common/types/pagination';
|
|
17
|
+
export declare abstract class IrohRepository<M extends IEntityMapper<T, D, V>, T extends Persistence = ReturnType<M['DomainToPersistence']>, D extends Domain = ReturnType<M['PersistenceToDomain']>, V extends View = ReturnType<M['DomainToView']>> implements IGenericRepository<T, D, V> {
|
|
17
18
|
repository: Repository<T>;
|
|
18
19
|
readonly logger: TimestampLogger;
|
|
19
20
|
Entity: Type<T>;
|
|
@@ -24,7 +25,7 @@ export declare abstract class IrohRepository<M extends IEntityMapper<T, D, V>, T
|
|
|
24
25
|
save(domain: D): Promise<D>;
|
|
25
26
|
saveList(domains: D[]): Promise<D[]>;
|
|
26
27
|
create(domain: D): Promise<D>;
|
|
27
|
-
paginate(query?:
|
|
28
|
+
paginate(query?: SearchDto<T>): Promise<Page<D>>;
|
|
28
29
|
private getMany;
|
|
29
30
|
findAll(): Promise<D[]>;
|
|
30
31
|
private getOne;
|
|
@@ -59,13 +59,20 @@ let IrohRepository = class IrohRepository {
|
|
|
59
59
|
this.logger.start();
|
|
60
60
|
const type = notification_2.NotificationTypeEnum.PAGINATION;
|
|
61
61
|
const notification = { type };
|
|
62
|
-
const
|
|
62
|
+
const { limit, page, offset } = query;
|
|
63
|
+
const result = { items: [], meta: { limit, page, offset } };
|
|
64
|
+
const [persistences, total] = await this.getMany(query);
|
|
63
65
|
const domains = persistences.map((p) => this.mapper.PersistenceToDomain(p));
|
|
66
|
+
result.items = domains;
|
|
67
|
+
result.meta.total = total;
|
|
68
|
+
if (limit) {
|
|
69
|
+
result.meta.pages = Math.ceil(total / limit);
|
|
70
|
+
}
|
|
64
71
|
const count = domains.length;
|
|
65
72
|
notification.count = count;
|
|
66
73
|
this.notify(notification);
|
|
67
74
|
this.clean();
|
|
68
|
-
return
|
|
75
|
+
return result;
|
|
69
76
|
}
|
|
70
77
|
async getMany(query = {}) {
|
|
71
78
|
const options = {};
|
|
@@ -84,9 +91,9 @@ let IrohRepository = class IrohRepository {
|
|
|
84
91
|
this.builder.addOptions(query.options);
|
|
85
92
|
this.builder.addLimit(options.take);
|
|
86
93
|
this.builder.addOffset(options.skip);
|
|
87
|
-
return await this.builder.
|
|
94
|
+
return await this.builder.getManyAndCount();
|
|
88
95
|
}
|
|
89
|
-
return await this.repository.
|
|
96
|
+
return await this.repository.findAndCount(options);
|
|
90
97
|
}
|
|
91
98
|
async findAll() {
|
|
92
99
|
this.logger.start();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iroh.repository.js","sourceRoot":"","sources":["../../../src/core/infra/iroh.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,6CAAmD;AAInD,qCAAqC;AAErC,yCAA+C;AAS/C,qDAAsD;AAGtD,uEAA4D;AAE5D,oEAAmE;AAEnE,oEAAyE;
|
|
1
|
+
{"version":3,"file":"iroh.repository.js","sourceRoot":"","sources":["../../../src/core/infra/iroh.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare class NomenclatorPersistence extends
|
|
1
|
+
import { Persistence } from './generic.persistence';
|
|
2
|
+
export declare class NomenclatorPersistence extends Persistence {
|
|
3
3
|
readonly name: string;
|
|
4
4
|
readonly description: string;
|
|
5
5
|
}
|
|
@@ -12,7 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.NomenclatorPersistence = void 0;
|
|
13
13
|
const typeorm_1 = require("typeorm");
|
|
14
14
|
const generic_persistence_1 = require("./generic.persistence");
|
|
15
|
-
class NomenclatorPersistence extends generic_persistence_1.
|
|
15
|
+
class NomenclatorPersistence extends generic_persistence_1.Persistence {
|
|
16
16
|
}
|
|
17
17
|
exports.NomenclatorPersistence = NomenclatorPersistence;
|
|
18
18
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nomenclator.persistence.js","sourceRoot":"","sources":["../../../src/core/infra/nomenclator.persistence.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAiC;AACjC,+
|
|
1
|
+
{"version":3,"file":"nomenclator.persistence.js","sourceRoot":"","sources":["../../../src/core/infra/nomenclator.persistence.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAiC;AACjC,+DAAoD;AAEpD,MAAa,sBAAuB,SAAQ,iCAAW;CAKtD;AALD,wDAKC;AAHU;IADR,IAAA,gBAAM,GAAE;;oDACa;AAEb;IADR,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2DACE"}
|
|
@@ -3,19 +3,20 @@ import type { IGenericController } from '../common/interfaces';
|
|
|
3
3
|
import type { IGenericService } from '../common/interfaces';
|
|
4
4
|
import { SearchDto } from '../common/dto';
|
|
5
5
|
import { QueryOptionDto } from '../common/dto';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { Persistence } from './infra/generic.persistence';
|
|
7
|
+
import { Domain } from './domain/generic.domain';
|
|
8
8
|
import { IUpdatableDomain } from './domain';
|
|
9
9
|
import { DtoMapper } from './app';
|
|
10
|
-
import {
|
|
11
|
-
|
|
10
|
+
import { View } from './app/dto/generic.view';
|
|
11
|
+
import { Pagination as Page } from '../common/types/pagination';
|
|
12
|
+
export declare abstract class IrohController<M extends IEntityMapper<T, D, V>, T extends Persistence = ReturnType<M['DomainToPersistence']>, D extends Domain = ReturnType<M['PersistenceToDomain']> & IUpdatableDomain<ReturnType<M['PersistenceToDomain']>>, V extends View = ReturnType<M['DomainToView']>, DTO extends DtoMapper<D, DTO> = DtoMapper<D>> implements IGenericController<D, V, DTO> {
|
|
12
13
|
readonly service: IGenericService<T, D, V, DTO>;
|
|
13
14
|
constructor(service: IGenericService<T, D, V, DTO>);
|
|
14
15
|
create(body: DTO): Promise<V>;
|
|
15
|
-
paginate(query: SearchDto): Promise<V
|
|
16
|
+
paginate(query: SearchDto): Promise<Page<V>>;
|
|
16
17
|
findById(id: string, query: QueryOptionDto): Promise<V>;
|
|
17
18
|
update(id: string, body: Partial<DTO>): Promise<V>;
|
|
18
19
|
remove(id: string): Promise<V>;
|
|
19
20
|
mapView(domain: D): V;
|
|
20
|
-
mapViewList(
|
|
21
|
+
mapViewList(pagination: Page<D>): Page<V>;
|
|
21
22
|
}
|
|
@@ -63,8 +63,9 @@ let IrohController = class IrohController {
|
|
|
63
63
|
mapView(domain) {
|
|
64
64
|
return this.service.mapper.DomainToView(domain);
|
|
65
65
|
}
|
|
66
|
-
mapViewList(
|
|
67
|
-
|
|
66
|
+
mapViewList(pagination) {
|
|
67
|
+
pagination.items.map((x) => this.service.mapper.DomainToView(x));
|
|
68
|
+
return pagination;
|
|
68
69
|
}
|
|
69
70
|
};
|
|
70
71
|
exports.IrohController = IrohController;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iroh.controller.js","sourceRoot":"","sources":["../../src/core/iroh.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAsC;AACtC,2CAAuC;AACvC,2CAAuC;AACvC,2CAA+C;AAC/C,2CAAiD;AACjD,2CAA4C;AAC5C,yDAA4D;AAC5D,+CAAwD;AACxD,6DAAyD;AAIzD,uCAA0C;AAC1C,uCAA+C;AAM/C,uEAAkE;
|
|
1
|
+
{"version":3,"file":"iroh.controller.js","sourceRoot":"","sources":["../../src/core/iroh.controller.ts"],"names":[],"mappings":"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"}
|