nicot 1.0.18 → 1.0.20

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
@@ -89,7 +89,8 @@ Would also register proper OpenAPI documentation for the controller.
89
89
 
90
90
  ```ts
91
91
  const dec = new RestfulFactory(User);
92
- class UpdateUserDto extends dec.updateDto {} // to extract type and class
92
+ class FindAllUsersDto extends dec.findAllDto {} // to extract type and class
93
+ class UpdateUserDto extends dec.updateDto {}
93
94
 
94
95
  @Controller('user')
95
96
  export class UserController {
@@ -106,7 +107,7 @@ export class UserController {
106
107
  }
107
108
 
108
109
  @dec.findAll() // GET /
109
- findAll(@dec.findAllParam() user: UpdateUserDto) {
110
+ findAll(@dec.findAllParam() user: FindAllUsersDto) {
110
111
  return this.userService.findAll(user);
111
112
  }
112
113
 
@@ -23,4 +23,3 @@ export declare class TimeBase extends PageSettingsDto implements DeletionWise, E
23
23
  isValidInUpdate(): string | undefined;
24
24
  beforeUpdate(): Promise<void>;
25
25
  }
26
- export declare const TimeBaseFields: (keyof TimeBase)[];
@@ -9,7 +9,7 @@ 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.TimeBaseFields = exports.TimeBase = void 0;
12
+ exports.TimeBase = void 0;
13
13
  const typeorm_1 = require("typeorm");
14
14
  const decorators_1 = require("../decorators");
15
15
  const page_settings_1 = require("./page-settings");
@@ -47,9 +47,4 @@ __decorate([
47
47
  __metadata("design:type", Date)
48
48
  ], TimeBase.prototype, "deleteTime", void 0);
49
49
  exports.TimeBase = TimeBase;
50
- exports.TimeBaseFields = [
51
- 'createTime',
52
- 'updateTime',
53
- 'deleteTime',
54
- ];
55
50
  //# sourceMappingURL=time-base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"time-base.js","sourceRoot":"","sources":["../../../src/bases/time-base.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAA+E;AAC/E,8CAA0C;AAC1C,mDAAkD;AAgBlD,MAAa,QACX,SAAQ,+BAAe;IAevB,eAAe;QACb,OAAO;IACT,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,YAAY,KAAmB,CAAC;IAEtC,gEAAgE;IAChE,KAAK,CAAC,WAAW,KAAmB,CAAC;IAErC,gEAAgE;IAChE,KAAK,CAAC,SAAS,KAAmB,CAAC;IAEnC,gEAAgE;IAChE,KAAK,CAAC,QAAQ,KAAmB,CAAC;IAElC,eAAe;QACb,OAAO;IACT,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,YAAY,KAAmB,CAAC;CACvC;AAhCC;IAFC,IAAA,0BAAgB,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnC,IAAA,sBAAS,GAAE;8BACA,IAAI;4CAAC;AAIjB;IAFC,IAAA,0BAAgB,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnC,IAAA,sBAAS,GAAE;8BACA,IAAI;4CAAC;AAIjB;IAFC,IAAA,0BAAgB,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnC,IAAA,sBAAS,GAAE;8BACA,IAAI;4CAAC;AAdnB,4BAsCC;AAEY,QAAA,cAAc,GAAuB;IAChD,YAAY;IACZ,YAAY;IACZ,YAAY;CACb,CAAC"}
1
+ {"version":3,"file":"time-base.js","sourceRoot":"","sources":["../../../src/bases/time-base.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAA+E;AAC/E,8CAA0C;AAC1C,mDAAkD;AAgBlD,MAAa,QACX,SAAQ,+BAAe;IAevB,eAAe;QACb,OAAO;IACT,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,YAAY,KAAmB,CAAC;IAEtC,gEAAgE;IAChE,KAAK,CAAC,WAAW,KAAmB,CAAC;IAErC,gEAAgE;IAChE,KAAK,CAAC,SAAS,KAAmB,CAAC;IAEnC,gEAAgE;IAChE,KAAK,CAAC,QAAQ,KAAmB,CAAC;IAElC,eAAe;QACb,OAAO;IACT,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,YAAY,KAAmB,CAAC;CACvC;AAhCC;IAFC,IAAA,0BAAgB,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnC,IAAA,sBAAS,GAAE;8BACA,IAAI;4CAAC;AAIjB;IAFC,IAAA,0BAAgB,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnC,IAAA,sBAAS,GAAE;8BACA,IAAI;4CAAC;AAIjB;IAFC,IAAA,0BAAgB,EAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACnC,IAAA,sBAAS,GAAE;8BACA,IAAI;4CAAC;AAdnB,4BAsCC"}
@@ -1,2 +1,2 @@
1
1
  export declare const NotWritable: () => PropertyDecorator;
2
- export declare const NotChangeable: () => PropertyDecorator & ClassDecorator;
2
+ export declare const NotChangeable: () => PropertyDecorator;
@@ -3,9 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NotChangeable = exports.NotWritable = void 0;
4
4
  const class_transformer_1 = require("class-transformer");
5
5
  const class_validator_1 = require("class-validator");
6
+ const metadata_1 = require("../utility/metadata");
6
7
  const merge_1 = require("./merge");
7
- const NotWritable = () => (0, merge_1.MergePropertyDecorators)([(0, class_transformer_1.Expose)({ groups: ['r'] }), (0, class_validator_1.IsOptional)()]);
8
+ const NotWritable = () => (0, merge_1.MergePropertyDecorators)([
9
+ (0, class_transformer_1.Expose)({ groups: ['r'] }),
10
+ (0, class_validator_1.IsOptional)(),
11
+ metadata_1.Metadata.set('notWritable', true, 'notWritableFields'),
12
+ ]);
8
13
  exports.NotWritable = NotWritable;
9
- const NotChangeable = () => (0, class_transformer_1.Expose)({ groups: ['r', 'c'] });
14
+ const NotChangeable = () => (0, merge_1.MergePropertyDecorators)([
15
+ (0, class_transformer_1.Expose)({ groups: ['r', 'c'] }),
16
+ metadata_1.Metadata.set('notChangeable', true, 'notChangeableFields'),
17
+ ]);
10
18
  exports.NotChangeable = NotChangeable;
11
19
  //# sourceMappingURL=access.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"access.js","sourceRoot":"","sources":["../../../src/decorators/access.ts"],"names":[],"mappings":";;;AAAA,yDAA2C;AAC3C,qDAA6C;AAC7C,mCAAkD;AAE3C,MAAM,WAAW,GAAG,GAAG,EAAE,CAC9B,IAAA,+BAAuB,EAAC,CAAC,IAAA,0BAAM,EAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAA,4BAAU,GAAE,CAAC,CAAC,CAAC;AADxD,QAAA,WAAW,eAC6C;AAC9D,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,IAAA,0BAAM,EAAC,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAArD,QAAA,aAAa,iBAAwC"}
1
+ {"version":3,"file":"access.js","sourceRoot":"","sources":["../../../src/decorators/access.ts"],"names":[],"mappings":";;;AAAA,yDAA2C;AAC3C,qDAA6C;AAC7C,kDAA+C;AAC/C,mCAAkD;AAE3C,MAAM,WAAW,GAAG,GAAG,EAAE,CAC9B,IAAA,+BAAuB,EAAC;IACtB,IAAA,0BAAM,EAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IACzB,IAAA,4BAAU,GAAE;IACZ,mBAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,mBAAmB,CAAC;CACvD,CAAC,CAAC;AALQ,QAAA,WAAW,eAKnB;AACE,MAAM,aAAa,GAAG,GAAG,EAAE,CAChC,IAAA,+BAAuB,EAAC;IACtB,IAAA,0BAAM,EAAC,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IAC9B,mBAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,EAAE,qBAAqB,CAAC;CAC3D,CAAC,CAAC;AAJQ,QAAA,aAAa,iBAIrB"}
@@ -7,6 +7,7 @@ const typeorm_1 = require("typeorm");
7
7
  const class_validator_1 = require("class-validator");
8
8
  const class_transformer_1 = require("class-transformer");
9
9
  const bigint_1 = require("../utility/bigint");
10
+ const metadata_1 = require("../utility/metadata");
10
11
  function swaggerDecorator(options, injected = {}) {
11
12
  return (0, swagger_1.ApiProperty)({
12
13
  default: options.default,
@@ -112,6 +113,10 @@ const BoolColumn = (options = {}) => (0, merge_1.MergePropertyDecorators)([
112
113
  swaggerDecorator(options, { type: Boolean }),
113
114
  ]);
114
115
  exports.BoolColumn = BoolColumn;
115
- const NotColumn = (options = {}) => (0, merge_1.MergePropertyDecorators)([(0, class_transformer_1.Exclude)(), swaggerDecorator(options)]);
116
+ const NotColumn = (options = {}) => (0, merge_1.MergePropertyDecorators)([
117
+ (0, class_transformer_1.Exclude)(),
118
+ swaggerDecorator(options),
119
+ metadata_1.Metadata.set('notColumn', true, 'notColumnFields'),
120
+ ]);
116
121
  exports.NotColumn = NotColumn;
117
122
  //# sourceMappingURL=property.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"property.js","sourceRoot":"","sources":["../../../src/decorators/property.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"property.js","sourceRoot":"","sources":["../../../src/decorators/property.ts"],"names":[],"mappings":"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"}
@@ -6,14 +6,25 @@ export interface RestfulFactoryOptions<T> {
6
6
  export declare class RestfulFactory<T> {
7
7
  readonly entityClass: ClassType<T>;
8
8
  private options;
9
- readonly createDto: ClassType<Omit<T, keyof T>>;
10
- readonly updateDto: ClassType<Partial<Omit<T, keyof T>>>;
11
9
  readonly entityReturnMessageDto: new (statusCode: number, message?: string, data?: unknown) => import("../dto").GenericReturnMessageDto<unknown> & {
12
10
  data: T;
13
11
  };
14
12
  readonly entityArrayReturnMessageDto: new (statusCode: number, message: string, data: unknown[], total: number, pageSettings: import("../bases").PageSettingsWise) => import("../dto").GenericPaginatedReturnMessageDto<unknown> & {
15
13
  data: T[];
16
14
  };
15
+ readonly importReturnMessageDto: new (statusCode: number, message?: string, data?: unknown) => import("../dto").GenericReturnMessageDto<unknown> & {
16
+ data: import("../dto").ImportEntryBaseDto & {
17
+ entry: T;
18
+ };
19
+ };
20
+ readonly fieldsToOmit: (keyof T)[];
21
+ private readonly basicDto;
22
+ readonly createDto: ClassType<T>;
23
+ readonly importDto: new () => import("../dto").ImportDataBaseDto<unknown> & {
24
+ entry: T[];
25
+ };
26
+ readonly findAllDto: ClassType<T>;
27
+ readonly updateDto: ClassType<T>;
17
28
  readonly idType: Function;
18
29
  constructor(entityClass: ClassType<T>, options?: RestfulFactoryOptions<T>);
19
30
  create(extras?: Partial<OperationObject>): MethodDecorator;
@@ -25,4 +36,5 @@ export declare class RestfulFactory<T> {
25
36
  update(extras?: Partial<OperationObject>): MethodDecorator;
26
37
  updateParam(): ParameterDecorator;
27
38
  delete(extras?: Partial<OperationObject>): MethodDecorator;
39
+ import(extras?: Partial<OperationObject>): MethodDecorator;
28
40
  }
@@ -1,23 +1,33 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.RestfulFactory = void 0;
4
7
  const common_1 = require("@nestjs/common");
5
8
  const dto_1 = require("../dto");
6
9
  const merge_1 = require("./merge");
7
- const bases_1 = require("../bases");
8
10
  const swagger_1 = require("@nestjs/swagger");
9
11
  const pipes_1 = require("./pipes");
12
+ const lodash_1 = __importDefault(require("lodash"));
13
+ const metadata_1 = require("../utility/metadata");
10
14
  class RestfulFactory {
11
15
  constructor(entityClass, options = {}) {
12
16
  this.entityClass = entityClass;
13
17
  this.options = options;
14
18
  this.entityReturnMessageDto = (0, dto_1.ReturnMessageDto)(this.entityClass);
15
19
  this.entityArrayReturnMessageDto = (0, dto_1.PaginatedReturnMessageDto)(this.entityClass);
16
- this.createDto = (0, swagger_1.OmitType)(this.entityClass, [
17
- ...bases_1.TimeBaseFields,
18
- ...(options.fieldsToOmit || []),
20
+ this.importReturnMessageDto = (0, dto_1.ReturnMessageDto)((0, dto_1.ImportEntryDto)(this.entityClass));
21
+ this.fieldsToOmit = lodash_1.default.uniq([
22
+ ...(0, metadata_1.getSpecificFields)(this.entityClass, 'notColumn'),
23
+ ...(this.options.fieldsToOmit || []),
19
24
  ]);
20
- this.updateDto = (0, swagger_1.PartialType)(this.createDto);
25
+ this.basicDto = (0, swagger_1.OmitType)(this.entityClass, this.fieldsToOmit);
26
+ this.createDto = (0, swagger_1.OmitType)(this.entityClass, (0, metadata_1.getSpecificFields)(this.entityClass, 'notWritable'));
27
+ this.importDto = (0, dto_1.ImportDataDto)(this.createDto);
28
+ this.findAllDto = (0, swagger_1.PartialType)(this.basicDto);
29
+ this.updateDto = (0, swagger_1.PartialType)((0, swagger_1.OmitType)(this.createDto, (0, metadata_1.getSpecificFields)(this.entityClass, 'notChangeable')));
30
+ // eslint-disable-next-line @typescript-eslint/ban-types
21
31
  this.idType = Reflect.getMetadata('design:type', this.entityClass.prototype, 'id');
22
32
  }
23
33
  create(extras = {}) {
@@ -89,6 +99,17 @@ class RestfulFactory {
89
99
  (0, swagger_1.ApiNoContentResponse)({ type: dto_1.BlankReturnMessageDto }),
90
100
  ]);
91
101
  }
102
+ import(extras = {}) {
103
+ return (0, merge_1.MergeMethodDecorators)([
104
+ (0, common_1.Post)('import'),
105
+ (0, swagger_1.ApiOperation)({
106
+ summary: `Import ${this.entityClass.name}`,
107
+ ...extras,
108
+ }),
109
+ (0, swagger_1.ApiBody)({ type: this.importDto }),
110
+ (0, swagger_1.ApiCreatedResponse)({ type: this.importReturnMessageDto }),
111
+ ]);
112
+ }
92
113
  }
93
114
  exports.RestfulFactory = RestfulFactory;
94
115
  //# sourceMappingURL=restful.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"restful.js","sourceRoot":"","sources":["../../../src/decorators/restful.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"restful.js","sourceRoot":"","sources":["../../../src/decorators/restful.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ClassOrArray } from '../utility/insert-field';
1
+ import { AnyClass, ClassOrArray } from '../utility/insert-field';
2
2
  export declare class ImportEntryBaseDto {
3
3
  result: string;
4
4
  }
@@ -9,3 +9,9 @@ export interface ImportEntry<T> {
9
9
  export declare function ImportEntryDto<C extends ClassOrArray>(type: C): new () => ImportEntryBaseDto & {
10
10
  entry: import("../utility/insert-field").ParseType<C>;
11
11
  };
12
+ export declare class ImportDataBaseDto<T> {
13
+ data: T[];
14
+ }
15
+ export declare function ImportDataDto<C extends AnyClass>(type: C): new () => ImportDataBaseDto<unknown> & {
16
+ entry: import("../utility/insert-field").TypeFromClass<C>[];
17
+ };
@@ -9,8 +9,10 @@ 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.ImportEntryDto = exports.ImportEntryBaseDto = void 0;
12
+ exports.ImportDataDto = exports.ImportDataBaseDto = exports.ImportEntryDto = exports.ImportEntryBaseDto = void 0;
13
13
  const swagger_1 = require("@nestjs/swagger");
14
+ const class_transformer_1 = require("class-transformer");
15
+ const class_validator_1 = require("class-validator");
14
16
  const insert_field_1 = require("../utility/insert-field");
15
17
  class ImportEntryBaseDto {
16
18
  }
@@ -25,4 +27,19 @@ function ImportEntryDto(type) {
25
27
  }, `${(0, insert_field_1.getClassFromClassOrArray)(type).name}ImportEntry`);
26
28
  }
27
29
  exports.ImportEntryDto = ImportEntryDto;
30
+ class ImportDataBaseDto {
31
+ }
32
+ __decorate([
33
+ (0, class_validator_1.ValidateNested)(),
34
+ __metadata("design:type", Array)
35
+ ], ImportDataBaseDto.prototype, "data", void 0);
36
+ exports.ImportDataBaseDto = ImportDataBaseDto;
37
+ function ImportDataDto(type) {
38
+ const dtoClass = (0, insert_field_1.InsertField)(ImportDataBaseDto, {
39
+ entry: { type: [type], options: { description: 'Import data' } },
40
+ }, `${(0, insert_field_1.getClassFromClassOrArray)(type).name}ImportData`);
41
+ (0, class_transformer_1.Type)(() => dtoClass)(dtoClass.prototype, 'data');
42
+ return dtoClass;
43
+ }
44
+ exports.ImportDataDto = ImportDataDto;
28
45
  //# sourceMappingURL=import-entry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"import-entry.js","sourceRoot":"","sources":["../../../src/dto/import-entry.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,0DAIiC;AAEjC,MAAa,kBAAkB;CAG9B;AADC;IADC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;kDAC7C;AAFjB,gDAGC;AAOD,SAAgB,cAAc,CAAyB,IAAO;IAC5D,OAAO,IAAA,0BAAW,EAChB,kBAAkB,EAClB;QACE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE;KAC1D,EACD,GAAG,IAAA,uCAAwB,EAAC,IAAI,CAAC,CAAC,IAAI,aAAa,CACpD,CAAC;AACJ,CAAC;AARD,wCAQC"}
1
+ {"version":3,"file":"import-entry.js","sourceRoot":"","sources":["../../../src/dto/import-entry.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,yDAAyC;AACzC,qDAAiD;AACjD,0DAKiC;AAEjC,MAAa,kBAAkB;CAG9B;AADC;IADC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;kDAC7C;AAFjB,gDAGC;AAOD,SAAgB,cAAc,CAAyB,IAAO;IAC5D,OAAO,IAAA,0BAAW,EAChB,kBAAkB,EAClB;QACE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE;KAC1D,EACD,GAAG,IAAA,uCAAwB,EAAC,IAAI,CAAC,CAAC,IAAI,aAAa,CACpD,CAAC;AACJ,CAAC;AARD,wCAQC;AAED,MAAa,iBAAiB;CAG7B;AADC;IADC,IAAA,gCAAc,GAAE;;+CACP;AAFZ,8CAGC;AAED,SAAgB,aAAa,CAAqB,IAAO;IACvD,MAAM,QAAQ,GAAG,IAAA,0BAAW,EAC1B,iBAAiB,EACjB;QACE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE;KACjE,EACD,GAAG,IAAA,uCAAwB,EAAC,IAAI,CAAC,CAAC,IAAI,YAAY,CACnD,CAAC;IACF,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACjD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAVD,sCAUC"}
@@ -0,0 +1,13 @@
1
+ import { MetadataSetter, Reflector } from 'typed-reflector';
2
+ export interface SpecificFields {
3
+ notColumn: boolean;
4
+ notWritable: boolean;
5
+ notChangeable: boolean;
6
+ }
7
+ declare type MetadataArrayMap = {
8
+ [K in keyof SpecificFields as `${K}Fields`]: string;
9
+ };
10
+ export declare const Metadata: MetadataSetter<SpecificFields, MetadataArrayMap>;
11
+ export declare const reflector: Reflector<SpecificFields, MetadataArrayMap>;
12
+ export declare function getSpecificFields(obj: any, type: keyof SpecificFields): string[];
13
+ export {};
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSpecificFields = exports.reflector = exports.Metadata = void 0;
4
+ const typed_reflector_1 = require("typed-reflector");
5
+ exports.Metadata = new typed_reflector_1.MetadataSetter();
6
+ exports.reflector = new typed_reflector_1.Reflector();
7
+ function getSpecificFields(obj, type) {
8
+ return exports.reflector
9
+ .getArray(`${type}Fields`, obj)
10
+ .filter((field) => exports.reflector.get(type, obj, field));
11
+ }
12
+ exports.getSpecificFields = getSpecificFields;
13
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/utility/metadata.ts"],"names":[],"mappings":";;;AAAA,qDAA4D;AAS/C,QAAA,QAAQ,GAAG,IAAI,gCAAc,EAAoC,CAAC;AAClE,QAAA,SAAS,GAAG,IAAI,2BAAS,EAAoC,CAAC;AAE3E,SAAgB,iBAAiB,CAAC,GAAQ,EAAE,IAA0B;IACpE,OAAO,iBAAS;SACb,QAAQ,CAAC,GAAG,IAAI,QAAQ,EAAE,GAAG,CAAC;SAC9B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAS,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AACxD,CAAC;AAJD,8CAIC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nicot",
3
3
  "description": "Nest.js interacting with class-validator + OpenAPI + TypeORM for Nest.js Restful API development.",
4
- "version": "1.0.18",
4
+ "version": "1.0.20",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "scripts": {
@@ -67,6 +67,7 @@
67
67
  "typeorm": "^0.3.10"
68
68
  },
69
69
  "dependencies": {
70
- "lodash": "^4.17.21"
70
+ "lodash": "^4.17.21",
71
+ "typed-reflector": "^1.0.11"
71
72
  }
72
73
  }