nicot 1.2.3 → 1.2.5
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-CN.md +799 -0
- package/README.md +816 -870
- package/api-cn.md +749 -0
- package/api.md +767 -0
- package/dist/index.cjs +307 -26
- package/dist/index.cjs.map +3 -3
- package/dist/index.mjs +304 -26
- package/dist/index.mjs.map +3 -3
- package/dist/src/crud-base.d.ts +31 -0
- package/dist/src/decorators/binding.d.ts +7 -0
- package/dist/src/decorators/index.d.ts +1 -0
- package/dist/src/restful.d.ts +30 -1
- package/dist/src/utility/metadata.d.ts +3 -0
- package/package.json +1 -1
package/dist/src/crud-base.d.ts
CHANGED
|
@@ -4,9 +4,11 @@ import { EntityHooks, PageSettingsDto, PageSettingsFactory, QueryWise } from './
|
|
|
4
4
|
import { ConsoleLogger } from '@nestjs/common';
|
|
5
5
|
import { BlankReturnMessageDto, ClassType } from 'nesties';
|
|
6
6
|
import { RelationDef } from './utility/relation-def';
|
|
7
|
+
import { BindingValueMetadata } from './decorators';
|
|
7
8
|
export type EntityId<T extends {
|
|
8
9
|
id: any;
|
|
9
10
|
}> = T['id'];
|
|
11
|
+
type BindingSnapshot = Record<string, any>;
|
|
10
12
|
export declare const Relation: (name: string, options?: Omit<RelationDef, "name">) => RelationDef;
|
|
11
13
|
export declare const Inner: (name: string, options?: Omit<RelationDef, "name">) => RelationDef;
|
|
12
14
|
export type ValidCrudEntity<T> = Record<string, any> & {
|
|
@@ -46,6 +48,19 @@ export declare class CrudBase<T extends ValidCrudEntity<T>> {
|
|
|
46
48
|
constructor(entityClass: ClassType<T>, repo: Repository<T>, crudOptions: CrudOptions<T>);
|
|
47
49
|
_cleanEntityNotInResultFields(ent: T): T;
|
|
48
50
|
cleanEntityNotInResultFields<E extends T | T[]>(ents: E): E;
|
|
51
|
+
readonly _tmpBindingMap: Map<string, any>;
|
|
52
|
+
readonly _bindingCache: Map<string, BindingValueMetadata & {
|
|
53
|
+
field: string;
|
|
54
|
+
}>;
|
|
55
|
+
_lookForBindingValueField(bindingKey: string): BindingValueMetadata & {
|
|
56
|
+
field: string;
|
|
57
|
+
};
|
|
58
|
+
_resolveBindingValue<K extends keyof T>(entityField: K): T[K] | Promise<T[K]>;
|
|
59
|
+
getBindingPartialEntity(): Promise<Partial<T>>;
|
|
60
|
+
useBinding(value: any, bindngKey?: string): this;
|
|
61
|
+
_freezeBindings(): BindingSnapshot;
|
|
62
|
+
_restoreBindings(frozen: BindingSnapshot): this;
|
|
63
|
+
beforeSuper<R>(fn: () => Promise<R>): Promise<R>;
|
|
49
64
|
_batchCreate(ents: T[], beforeCreate?: (repo: Repository<T>) => Promise<void>, skipErrors?: boolean): Promise<{
|
|
50
65
|
results: T[];
|
|
51
66
|
skipped: {
|
|
@@ -59,6 +74,7 @@ export declare class CrudBase<T extends ValidCrudEntity<T>> {
|
|
|
59
74
|
_applyQueryRelations(qb: SelectQueryBuilder<T>): void;
|
|
60
75
|
_applyQueryFilters(qb: SelectQueryBuilder<T>, ent: T): void;
|
|
61
76
|
queryBuilder(): SelectQueryBuilder<T>;
|
|
77
|
+
_applyQueryFromBinding(bindingEnt: Partial<T>, qb: SelectQueryBuilder<T>): void;
|
|
62
78
|
findOne(id: EntityId<T>, extraQuery?: (qb: SelectQueryBuilder<T>) => void): Promise<import("nesties").GenericReturnMessageDto<T>>;
|
|
63
79
|
_preFindAll(ent?: Partial<T>, extraQuery?: (qb: SelectQueryBuilder<T>) => void): Promise<{
|
|
64
80
|
query: SelectQueryBuilder<T>;
|
|
@@ -103,6 +119,19 @@ export declare function CrudService<T extends ValidCrudEntity<T>>(entityClass: C
|
|
|
103
119
|
crudOptions: CrudOptions<T>;
|
|
104
120
|
_cleanEntityNotInResultFields(ent: T): T;
|
|
105
121
|
cleanEntityNotInResultFields<E extends T | T[]>(ents: E): E;
|
|
122
|
+
readonly _tmpBindingMap: Map<string, any>;
|
|
123
|
+
readonly _bindingCache: Map<string, BindingValueMetadata & {
|
|
124
|
+
field: string;
|
|
125
|
+
}>;
|
|
126
|
+
_lookForBindingValueField(bindingKey: string): BindingValueMetadata & {
|
|
127
|
+
field: string;
|
|
128
|
+
};
|
|
129
|
+
_resolveBindingValue<K extends keyof T>(entityField: K): T[K] | Promise<T[K]>;
|
|
130
|
+
getBindingPartialEntity(): Promise<Partial<T>>;
|
|
131
|
+
useBinding(value: any, bindngKey?: string): /*elided*/ any;
|
|
132
|
+
_freezeBindings(): BindingSnapshot;
|
|
133
|
+
_restoreBindings(frozen: BindingSnapshot): /*elided*/ any;
|
|
134
|
+
beforeSuper<R>(fn: () => Promise<R>): Promise<R>;
|
|
106
135
|
_batchCreate(ents: T[], beforeCreate?: (repo: Repository<T>) => Promise<void>, skipErrors?: boolean): Promise<{
|
|
107
136
|
results: T[];
|
|
108
137
|
skipped: {
|
|
@@ -116,6 +145,7 @@ export declare function CrudService<T extends ValidCrudEntity<T>>(entityClass: C
|
|
|
116
145
|
_applyQueryRelations(qb: SelectQueryBuilder<T>): void;
|
|
117
146
|
_applyQueryFilters(qb: SelectQueryBuilder<T>, ent: T): void;
|
|
118
147
|
queryBuilder(): SelectQueryBuilder<T>;
|
|
148
|
+
_applyQueryFromBinding(bindingEnt: Partial<T>, qb: SelectQueryBuilder<T>): void;
|
|
119
149
|
findOne(id: EntityId<T>, extraQuery?: (qb: SelectQueryBuilder<T>) => void): Promise<import("nesties").GenericReturnMessageDto<T>>;
|
|
120
150
|
_preFindAll(ent?: Partial<T>, extraQuery?: (qb: SelectQueryBuilder<T>) => void): Promise<{
|
|
121
151
|
query: SelectQueryBuilder<T>;
|
|
@@ -135,3 +165,4 @@ export declare function CrudService<T extends ValidCrudEntity<T>>(entityClass: C
|
|
|
135
165
|
onModuleInit(): Promise<void>;
|
|
136
166
|
};
|
|
137
167
|
};
|
|
168
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export interface BindingValueMetadata {
|
|
2
|
+
bindingKey: string;
|
|
3
|
+
isMethod: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare const DefaultBindingKey = "default";
|
|
6
|
+
export declare const BindingColumn: (bindingKey?: string) => PropertyDecorator;
|
|
7
|
+
export declare const BindingValue: (bindingKey?: string) => PropertyDecorator & MethodDecorator;
|
package/dist/src/restful.d.ts
CHANGED
|
@@ -26,7 +26,18 @@ export declare class RestfulFactory<T extends {
|
|
|
26
26
|
private options;
|
|
27
27
|
private __resolveVisited;
|
|
28
28
|
constructor(entityClass: ClassType<T>, options?: RestfulFactoryOptions<T, O, W, C, U, F, R>, __resolveVisited?: Map<AnyClass, [AnyClass]>);
|
|
29
|
-
|
|
29
|
+
omitInput<K extends keyof T>(...fields: K[]): RestfulFactory<T, O | K, W, C, U, F, R>;
|
|
30
|
+
omitWrite<K extends keyof T>(...fields: K[]): RestfulFactory<T, O, W | K, C, U, F, R>;
|
|
31
|
+
omitCreate<K extends keyof T>(...fields: K[]): RestfulFactory<T, O, W, C | K, U, F, R>;
|
|
32
|
+
omitUpdate<K extends keyof T>(...fields: K[]): RestfulFactory<T, O, W, C, U | K, F, R>;
|
|
33
|
+
omitFindAll<K extends keyof T>(...fields: K[]): RestfulFactory<T, O, W, C, U, F | K, R>;
|
|
34
|
+
omitOutput<K extends keyof T>(...fields: K[]): RestfulFactory<T, O, W, C, U, F, R | K>;
|
|
35
|
+
pathPrefix(prefix: string): RestfulFactory<T, O, W, C, U, F, R>;
|
|
36
|
+
keepEntityVersioningDates(enable?: boolean): RestfulFactory<T, O, W, C, U, F, R>;
|
|
37
|
+
skipNonQueryableFields(enable?: boolean): RestfulFactory<T, O, W, C, U, F, R>;
|
|
38
|
+
renameEntityClass(name: string): RestfulFactory<T, O, W, C, U, F, R>;
|
|
39
|
+
useRelations(...relations: (string | RelationDef)[]): RestfulFactory<T, O, W, C, U, F, R>;
|
|
40
|
+
get entityClassName(): string;
|
|
30
41
|
get fieldsToOmit(): (keyof T)[];
|
|
31
42
|
get fieldsInCreateToOmit(): (keyof T)[];
|
|
32
43
|
get createDto(): ClassType<Omit<T, O | W | C>>;
|
|
@@ -108,6 +119,23 @@ export declare class RestfulFactory<T extends {
|
|
|
108
119
|
crudOptions: CrudOptions<T>;
|
|
109
120
|
_cleanEntityNotInResultFields(ent: T): T;
|
|
110
121
|
cleanEntityNotInResultFields<E extends T | T[]>(ents: E): E;
|
|
122
|
+
readonly _tmpBindingMap: Map<string, any>;
|
|
123
|
+
readonly _bindingCache: Map<string, import("./decorators").BindingValueMetadata & {
|
|
124
|
+
field: string;
|
|
125
|
+
}>;
|
|
126
|
+
_lookForBindingValueField(bindingKey: string): import("./decorators").BindingValueMetadata & {
|
|
127
|
+
field: string;
|
|
128
|
+
};
|
|
129
|
+
_resolveBindingValue<K extends keyof T>(entityField: K): T[K] | Promise<T[K]>;
|
|
130
|
+
getBindingPartialEntity(): Promise<Partial<T>>;
|
|
131
|
+
useBinding(value: any, bindngKey?: string): /*elided*/ any;
|
|
132
|
+
_freezeBindings(): {
|
|
133
|
+
[x: string]: any;
|
|
134
|
+
};
|
|
135
|
+
_restoreBindings(frozen: {
|
|
136
|
+
[x: string]: any;
|
|
137
|
+
}): /*elided*/ any;
|
|
138
|
+
beforeSuper<R_1>(fn: () => Promise<R_1>): Promise<R_1>;
|
|
111
139
|
_batchCreate(ents: T[], beforeCreate?: (repo: Repository<T>) => Promise<void>, skipErrors?: boolean): Promise<{
|
|
112
140
|
results: T[];
|
|
113
141
|
skipped: {
|
|
@@ -121,6 +149,7 @@ export declare class RestfulFactory<T extends {
|
|
|
121
149
|
_applyQueryRelations(qb: import("typeorm").SelectQueryBuilder<T>): void;
|
|
122
150
|
_applyQueryFilters(qb: import("typeorm").SelectQueryBuilder<T>, ent: T): void;
|
|
123
151
|
queryBuilder(): import("typeorm").SelectQueryBuilder<T>;
|
|
152
|
+
_applyQueryFromBinding(bindingEnt: Partial<T>, qb: import("typeorm").SelectQueryBuilder<T>): void;
|
|
124
153
|
findOne(id: import("./crud-base").EntityId<T>, extraQuery?: (qb: import("typeorm").SelectQueryBuilder<T>) => void): Promise<import("nesties").GenericReturnMessageDto<T>>;
|
|
125
154
|
_preFindAll(ent?: Partial<T>, extraQuery?: (qb: import("typeorm").SelectQueryBuilder<T>) => void): Promise<{
|
|
126
155
|
query: import("typeorm").SelectQueryBuilder<T>;
|
|
@@ -3,6 +3,7 @@ import { QueryCond } from '../bases';
|
|
|
3
3
|
import { AnyClass } from 'nesties';
|
|
4
4
|
import { QueryFullTextColumnOptions } from './query-full-text-column-options.interface';
|
|
5
5
|
import { GetMutatorOptions } from '../decorators/get-mutator';
|
|
6
|
+
import { BindingValueMetadata } from '../decorators/binding';
|
|
6
7
|
interface SpecificFields {
|
|
7
8
|
notColumn: {
|
|
8
9
|
keepInCreate?: boolean;
|
|
@@ -23,6 +24,8 @@ interface SpecificFields {
|
|
|
23
24
|
queryCondition: QueryCond;
|
|
24
25
|
requireGetMutator: boolean;
|
|
25
26
|
getMutator: GetMutatorOptions;
|
|
27
|
+
bindingColumn: string;
|
|
28
|
+
bindingValue: BindingValueMetadata;
|
|
26
29
|
}
|
|
27
30
|
type MetadataMap = SpecificFields;
|
|
28
31
|
type FieldsMap = {
|
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.2.
|
|
4
|
+
"version": "1.2.5",
|
|
5
5
|
"main": "dist/index.cjs",
|
|
6
6
|
"module": "dist/index.mjs",
|
|
7
7
|
"types": "dist/index.d.ts",
|