@eggjs/tegg-orm-decorator 4.0.0-beta.7 → 4.0.0-beta.9
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/builder/AttributeMetaBuilder.d.ts +7 -11
- package/dist/builder/AttributeMetaBuilder.js +24 -28
- package/dist/builder/IndexMetaBuilder.d.ts +8 -13
- package/dist/builder/IndexMetaBuilder.js +33 -32
- package/dist/builder/ModelMetaBuilder.d.ts +6 -10
- package/dist/builder/ModelMetaBuilder.js +19 -23
- package/dist/builder/index.d.ts +3 -0
- package/dist/builder/index.js +4 -5
- package/dist/decorator/Attribute.d.ts +2 -6
- package/dist/decorator/Attribute.js +9 -14
- package/dist/decorator/DataSource.d.ts +2 -6
- package/dist/decorator/DataSource.js +6 -11
- package/dist/decorator/Model.d.ts +2 -6
- package/dist/decorator/Model.js +20 -21
- package/dist/decorator/ModelIndex.d.ts +2 -6
- package/dist/decorator/ModelIndex.js +6 -11
- package/dist/decorator/index.d.ts +4 -0
- package/dist/decorator/index.js +5 -6
- package/dist/index.d.ts +5 -15
- package/dist/index.js +6 -20
- package/dist/model/AttributeMeta.d.ts +9 -12
- package/dist/model/AttributeMeta.js +19 -22
- package/dist/model/IndexMeta.d.ts +6 -9
- package/dist/model/IndexMeta.js +13 -16
- package/dist/model/ModelMetadata.d.ts +8 -12
- package/dist/model/ModelMetadata.js +15 -16
- package/dist/model/index.d.ts +3 -0
- package/dist/model/index.js +4 -0
- package/dist/util/ModelInfoUtil.d.ts +13 -16
- package/dist/util/ModelInfoUtil.js +43 -45
- package/dist/util/ModelMetadataUtil.d.ts +6 -10
- package/dist/util/ModelMetadataUtil.js +12 -15
- package/dist/util/NameUtil.d.ts +21 -24
- package/dist/util/NameUtil.js +32 -36
- package/dist/util/index.d.ts +3 -0
- package/dist/util/index.js +4 -5
- package/package.json +4 -4
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
build(): Array<AttributeMeta>;
|
|
9
|
-
private buildAttributeMeta;
|
|
1
|
+
import type { EggProtoImplClass } from '@eggjs/tegg-types';
|
|
2
|
+
import { AttributeMeta } from '../model/index.ts';
|
|
3
|
+
export declare class AttributeMetaBuilder {
|
|
4
|
+
private readonly clazz;
|
|
5
|
+
constructor(clazz: EggProtoImplClass);
|
|
6
|
+
build(): Array<AttributeMeta>;
|
|
7
|
+
private buildAttributeMeta;
|
|
10
8
|
}
|
|
11
|
-
//#endregion
|
|
12
|
-
export { AttributeMetaBuilder };
|
|
@@ -1,28 +1,24 @@
|
|
|
1
|
-
import { AttributeMeta } from "../model/
|
|
2
|
-
import { ModelInfoUtil } from "../util/
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
//#endregion
|
|
28
|
-
export { AttributeMetaBuilder };
|
|
1
|
+
import { AttributeMeta } from "../model/index.js";
|
|
2
|
+
import { ModelInfoUtil, NameUtil } from "../util/index.js";
|
|
3
|
+
export class AttributeMetaBuilder {
|
|
4
|
+
clazz;
|
|
5
|
+
constructor(clazz) {
|
|
6
|
+
this.clazz = clazz;
|
|
7
|
+
}
|
|
8
|
+
build() {
|
|
9
|
+
const modelAttributes = ModelInfoUtil.getModelAttributes(this.clazz);
|
|
10
|
+
const attributes = [];
|
|
11
|
+
if (!modelAttributes) {
|
|
12
|
+
throw new Error(`model ${this.clazz.name} has no attributes`);
|
|
13
|
+
}
|
|
14
|
+
for (const [propertyName, attributeInfo] of modelAttributes) {
|
|
15
|
+
const attribute = this.buildAttributeMeta(propertyName, attributeInfo);
|
|
16
|
+
attributes.push(attribute);
|
|
17
|
+
}
|
|
18
|
+
return attributes;
|
|
19
|
+
}
|
|
20
|
+
buildAttributeMeta(propertyName, attributeInfo) {
|
|
21
|
+
return new AttributeMeta(attributeInfo.dataType, propertyName, attributeInfo.options?.name ?? NameUtil.getAttributeName(propertyName), attributeInfo.options?.allowNull ?? true, attributeInfo.options?.autoIncrement ?? false, attributeInfo.options?.primary ?? false, attributeInfo.options?.unique ?? false);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXR0cmlidXRlTWV0YUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVpbGRlci9BdHRyaWJ1dGVNZXRhQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUzRCxNQUFNLE9BQU8sb0JBQW9CO0lBQ2QsS0FBSyxDQUFvQjtJQUUxQyxZQUFZLEtBQXdCO1FBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxLQUFLO1FBQ0gsTUFBTSxlQUFlLEdBQUcsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyRSxNQUFNLFVBQVUsR0FBeUIsRUFBRSxDQUFDO1FBQzVDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNyQixNQUFNLElBQUksS0FBSyxDQUFDLFNBQVMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLG9CQUFvQixDQUFDLENBQUM7UUFDaEUsQ0FBQztRQUNELEtBQUssTUFBTSxDQUFFLFlBQVksRUFBRSxhQUFhLENBQUUsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUM5RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBQ3ZFLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxZQUFvQixFQUFFLGFBQWlDO1FBQ2hGLE9BQU8sSUFBSSxhQUFhLENBQ3RCLGFBQWEsQ0FBQyxRQUFRLEVBQ3RCLFlBQVksRUFDWixhQUFhLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxRQUFRLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLEVBQ3RFLGFBQWEsQ0FBQyxPQUFPLEVBQUUsU0FBUyxJQUFJLElBQUksRUFDeEMsYUFBYSxDQUFDLE9BQU8sRUFBRSxhQUFhLElBQUksS0FBSyxFQUM3QyxhQUFhLENBQUMsT0FBTyxFQUFFLE9BQU8sSUFBSSxLQUFLLEVBQ3ZDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsTUFBTSxJQUFJLEtBQUssQ0FDdkMsQ0FBQztJQUNKLENBQUM7Q0FDRiJ9
|
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { IndexMeta } from
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
constructor(clazz: EggProtoImplClass, attributes: Array<AttributeMeta>);
|
|
10
|
-
build(): Array<IndexMeta>;
|
|
11
|
-
private buildIndexMeta;
|
|
1
|
+
import type { EggProtoImplClass } from '@eggjs/tegg-types';
|
|
2
|
+
import { IndexMeta, AttributeMeta } from '../model/index.ts';
|
|
3
|
+
export declare class IndexMetaBuilder {
|
|
4
|
+
private readonly clazz;
|
|
5
|
+
private readonly attributes;
|
|
6
|
+
constructor(clazz: EggProtoImplClass, attributes: Array<AttributeMeta>);
|
|
7
|
+
build(): Array<IndexMeta>;
|
|
8
|
+
private buildIndexMeta;
|
|
12
9
|
}
|
|
13
|
-
//#endregion
|
|
14
|
-
export { IndexMetaBuilder };
|
|
@@ -1,32 +1,33 @@
|
|
|
1
|
-
import { IndexMeta } from "../model/
|
|
2
|
-
import { ModelInfoUtil } from "../util/
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
1
|
+
import { IndexMeta, AttributeMeta } from "../model/index.js";
|
|
2
|
+
import { ModelInfoUtil, NameUtil } from "../util/index.js";
|
|
3
|
+
export class IndexMetaBuilder {
|
|
4
|
+
clazz;
|
|
5
|
+
attributes;
|
|
6
|
+
constructor(clazz, attributes) {
|
|
7
|
+
this.clazz = clazz;
|
|
8
|
+
this.attributes = attributes;
|
|
9
|
+
}
|
|
10
|
+
build() {
|
|
11
|
+
return ModelInfoUtil.getModelIndices(this.clazz)
|
|
12
|
+
.map(indexInfo => this.buildIndexMeta(indexInfo));
|
|
13
|
+
}
|
|
14
|
+
buildIndexMeta(indexInfo) {
|
|
15
|
+
const fields = [];
|
|
16
|
+
for (const field of indexInfo.fields) {
|
|
17
|
+
const attribute = this.attributes.find(t => t.propertyName === field);
|
|
18
|
+
if (!attribute) {
|
|
19
|
+
throw new Error(`model ${this.clazz.name} has no attribute named ${field}`);
|
|
20
|
+
}
|
|
21
|
+
fields.push(attribute.attributeName);
|
|
22
|
+
}
|
|
23
|
+
let indexName;
|
|
24
|
+
if (indexInfo.options?.name) {
|
|
25
|
+
indexName = indexInfo.options.name;
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
indexName = NameUtil.getIndexName(fields, { unique: indexInfo.options?.unique });
|
|
29
|
+
}
|
|
30
|
+
return new IndexMeta(indexName, fields, indexInfo.options?.unique ?? false, indexInfo.options?.primary ?? false);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5kZXhNZXRhQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9idWlsZGVyL0luZGV4TWV0YUJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTNELE1BQU0sT0FBTyxnQkFBZ0I7SUFDVixLQUFLLENBQW9CO0lBQ3pCLFVBQVUsQ0FBdUI7SUFFbEQsWUFBWSxLQUF3QixFQUFFLFVBQWdDO1FBQ3BFLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxhQUFhLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDN0MsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTyxjQUFjLENBQUMsU0FBeUI7UUFDOUMsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzVCLEtBQUssTUFBTSxLQUFLLElBQUksU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3JDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksS0FBSyxLQUFLLENBQUMsQ0FBQztZQUN0RSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyxTQUFTLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSwyQkFBMkIsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUM5RSxDQUFDO1lBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUVELElBQUksU0FBaUIsQ0FBQztRQUN0QixJQUFJLFNBQVMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDNUIsU0FBUyxHQUFHLFNBQVMsQ0FBQyxPQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3RDLENBQUM7YUFBTSxDQUFDO1lBQ04sU0FBUyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNuRixDQUFDO1FBQ0QsT0FBTyxJQUFJLFNBQVMsQ0FDbEIsU0FBUyxFQUNULE1BQU0sRUFDTixTQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sSUFBSSxLQUFLLEVBQ2xDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxJQUFJLEtBQUssQ0FBQyxDQUFDO0lBQ3pDLENBQUM7Q0FDRiJ9
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
constructor(clazz: EggProtoImplClass);
|
|
8
|
-
build(): ModelMetadata;
|
|
1
|
+
import type { EggProtoImplClass } from '@eggjs/tegg-types';
|
|
2
|
+
import { ModelMetadata } from '../model/index.ts';
|
|
3
|
+
export declare class ModelMetaBuilder {
|
|
4
|
+
private readonly clazz;
|
|
5
|
+
constructor(clazz: EggProtoImplClass);
|
|
6
|
+
build(): ModelMetadata;
|
|
9
7
|
}
|
|
10
|
-
//#endregion
|
|
11
|
-
export { ModelMetaBuilder };
|
|
@@ -1,24 +1,20 @@
|
|
|
1
|
-
import { ModelMetadata } from "../model/
|
|
2
|
-
import { ModelInfoUtil } from "../util/
|
|
3
|
-
import { NameUtil } from "../util/NameUtil.js";
|
|
4
|
-
import "../util/index.js";
|
|
5
|
-
import { AttributeMetaBuilder } from "./AttributeMetaBuilder.js";
|
|
1
|
+
import { ModelMetadata } from "../model/index.js";
|
|
2
|
+
import { ModelInfoUtil, NameUtil } from "../util/index.js";
|
|
6
3
|
import { IndexMetaBuilder } from "./IndexMetaBuilder.js";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
//#
|
|
24
|
-
export { ModelMetaBuilder };
|
|
4
|
+
import { AttributeMetaBuilder } from "./AttributeMetaBuilder.js";
|
|
5
|
+
export class ModelMetaBuilder {
|
|
6
|
+
clazz;
|
|
7
|
+
constructor(clazz) {
|
|
8
|
+
this.clazz = clazz;
|
|
9
|
+
}
|
|
10
|
+
build() {
|
|
11
|
+
const dataSource = ModelInfoUtil.getDataSource(this.clazz);
|
|
12
|
+
const tableName = ModelInfoUtil.getTableName(this.clazz) || NameUtil.getTableName(this.clazz.name);
|
|
13
|
+
const attributeMetaBuilder = new AttributeMetaBuilder(this.clazz);
|
|
14
|
+
const attributes = attributeMetaBuilder.build();
|
|
15
|
+
const indexMetaBuilder = new IndexMetaBuilder(this.clazz, attributes);
|
|
16
|
+
const indices = indexMetaBuilder.build();
|
|
17
|
+
return new ModelMetadata(dataSource, tableName, attributes, indices);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kZWxNZXRhQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9idWlsZGVyL01vZGVsTWV0YUJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFakUsTUFBTSxPQUFPLGdCQUFnQjtJQUNWLEtBQUssQ0FBb0I7SUFFMUMsWUFBWSxLQUF3QjtRQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsS0FBSztRQUNILE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNELE1BQU0sU0FBUyxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuRyxNQUFNLG9CQUFvQixHQUFHLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sVUFBVSxHQUFHLG9CQUFvQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sT0FBTyxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3pDLE9BQU8sSUFBSSxhQUFhLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkUsQ0FBQztDQUNGIn0=
|
package/dist/builder/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export { };
|
|
1
|
+
export * from "./AttributeMetaBuilder.js";
|
|
2
|
+
export * from "./IndexMetaBuilder.js";
|
|
3
|
+
export * from "./ModelMetaBuilder.js";
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVpbGRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx1QkFBdUIsQ0FBQyJ9
|
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
import { AttributeOptions } from
|
|
2
|
-
|
|
3
|
-
//#region src/decorator/Attribute.d.ts
|
|
4
|
-
declare function Attribute(dataType: string, options?: AttributeOptions): (target: any, propertyKey: PropertyKey) => void;
|
|
5
|
-
//#endregion
|
|
6
|
-
export { Attribute };
|
|
1
|
+
import type { AttributeOptions } from '@eggjs/tegg-types';
|
|
2
|
+
export declare function Attribute(dataType: string, options?: AttributeOptions): (target: any, propertyKey: PropertyKey) => void;
|
|
@@ -1,15 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
import "../util/index.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
assert(typeof propertyKey === "string", `[model/${clazz.name}] expect method name be typeof string, but now is ${String(propertyKey)}`);
|
|
10
|
-
ModelInfoUtil.addModelAttribute(dataType, options, clazz, propertyKey);
|
|
11
|
-
};
|
|
1
|
+
import assert from 'node:assert';
|
|
2
|
+
import { ModelInfoUtil } from "../util/index.js";
|
|
3
|
+
export function Attribute(dataType, options) {
|
|
4
|
+
return function (target, propertyKey) {
|
|
5
|
+
const clazz = target.constructor;
|
|
6
|
+
assert(typeof propertyKey === 'string', `[model/${clazz.name}] expect method name be typeof string, but now is ${String(propertyKey)}`);
|
|
7
|
+
ModelInfoUtil.addModelAttribute(dataType, options, clazz, propertyKey);
|
|
8
|
+
};
|
|
12
9
|
}
|
|
13
|
-
|
|
14
|
-
//#endregion
|
|
15
|
-
export { Attribute };
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXR0cmlidXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RlY29yYXRvci9BdHRyaWJ1dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sYUFBYSxDQUFDO0FBSWpDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRCxNQUFNLFVBQVUsU0FBUyxDQUFDLFFBQWdCLEVBQUUsT0FBMEI7SUFDcEUsT0FBTyxVQUFTLE1BQVcsRUFBRSxXQUF3QjtRQUNuRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsV0FBZ0MsQ0FBQztRQUN0RCxNQUFNLENBQUMsT0FBTyxXQUFXLEtBQUssUUFBUSxFQUNwQyxVQUFVLEtBQUssQ0FBQyxJQUFJLHFEQUFxRCxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xHLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN6RSxDQUFDLENBQUM7QUFDSixDQUFDIn0=
|
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
import { EggProtoImplClass } from
|
|
2
|
-
|
|
3
|
-
//#region src/decorator/DataSource.d.ts
|
|
4
|
-
declare function DataSource(dataSource: string): (clazz: EggProtoImplClass) => void;
|
|
5
|
-
//#endregion
|
|
6
|
-
export { DataSource };
|
|
1
|
+
import type { EggProtoImplClass } from '@eggjs/tegg-types';
|
|
2
|
+
export declare function DataSource(dataSource: string): (clazz: EggProtoImplClass) => void;
|
|
@@ -1,12 +1,7 @@
|
|
|
1
|
-
import { ModelInfoUtil } from "../util/
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
return function(clazz) {
|
|
7
|
-
ModelInfoUtil.setDataSource(dataSource, clazz);
|
|
8
|
-
};
|
|
1
|
+
import { ModelInfoUtil } from "../util/index.js";
|
|
2
|
+
export function DataSource(dataSource) {
|
|
3
|
+
return function (clazz) {
|
|
4
|
+
ModelInfoUtil.setDataSource(dataSource, clazz);
|
|
5
|
+
};
|
|
9
6
|
}
|
|
10
|
-
|
|
11
|
-
//#endregion
|
|
12
|
-
export { DataSource };
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0YVNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kZWNvcmF0b3IvRGF0YVNvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakQsTUFBTSxVQUFVLFVBQVUsQ0FBQyxVQUFrQjtJQUMzQyxPQUFPLFVBQVMsS0FBd0I7UUFDdEMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakQsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
|
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
import { EggProtoImplClass, ModelParams } from
|
|
2
|
-
|
|
3
|
-
//#region src/decorator/Model.d.ts
|
|
4
|
-
declare function Model(param?: ModelParams): (clazz: EggProtoImplClass) => void;
|
|
5
|
-
//#endregion
|
|
6
|
-
export { Model };
|
|
1
|
+
import type { EggProtoImplClass, ModelParams } from '@eggjs/tegg-types';
|
|
2
|
+
export declare function Model(param?: ModelParams): (clazz: EggProtoImplClass) => void;
|
package/dist/decorator/Model.js
CHANGED
|
@@ -1,22 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
1
|
+
import { SingletonProto } from '@eggjs/core-decorator';
|
|
2
|
+
import { AccessLevel, MODEL_PROTO_IMPL_TYPE } from '@eggjs/tegg-types';
|
|
3
|
+
import { ModelInfoUtil } from "../util/index.js";
|
|
4
|
+
export function Model(param) {
|
|
5
|
+
return function (clazz) {
|
|
6
|
+
ModelInfoUtil.setIsModel(true, clazz);
|
|
7
|
+
const func = SingletonProto({
|
|
8
|
+
name: clazz.name,
|
|
9
|
+
accessLevel: AccessLevel.PUBLIC,
|
|
10
|
+
protoImplType: MODEL_PROTO_IMPL_TYPE,
|
|
11
|
+
});
|
|
12
|
+
if (param?.tableName) {
|
|
13
|
+
ModelInfoUtil.setTableName(param.tableName, clazz);
|
|
14
|
+
}
|
|
15
|
+
if (param?.dataSource) {
|
|
16
|
+
ModelInfoUtil.setDataSource(param.dataSource, clazz);
|
|
17
|
+
}
|
|
18
|
+
func(clazz);
|
|
19
|
+
};
|
|
19
20
|
}
|
|
20
|
-
|
|
21
|
-
//#endregion
|
|
22
|
-
export { Model };
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVjb3JhdG9yL01vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWpELE1BQU0sVUFBVSxLQUFLLENBQUMsS0FBbUI7SUFDdkMsT0FBTyxVQUFTLEtBQXdCO1FBQ3RDLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sSUFBSSxHQUFHLGNBQWMsQ0FBQztZQUMxQixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsV0FBVyxFQUFFLFdBQVcsQ0FBQyxNQUFNO1lBQy9CLGFBQWEsRUFBRSxxQkFBcUI7U0FDckMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUM7WUFDckIsYUFBYSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3JELENBQUM7UUFDRCxJQUFJLEtBQUssRUFBRSxVQUFVLEVBQUUsQ0FBQztZQUN0QixhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUNELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNkLENBQUMsQ0FBQztBQUNKLENBQUMifQ==
|
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
import { EggProtoImplClass, IndexOptions } from
|
|
2
|
-
|
|
3
|
-
//#region src/decorator/ModelIndex.d.ts
|
|
4
|
-
declare function Index(fields: string[], params?: IndexOptions): (clazz: EggProtoImplClass) => void;
|
|
5
|
-
//#endregion
|
|
6
|
-
export { Index };
|
|
1
|
+
import type { EggProtoImplClass, IndexOptions } from '@eggjs/tegg-types';
|
|
2
|
+
export declare function Index(fields: string[], params?: IndexOptions): (clazz: EggProtoImplClass) => void;
|
|
@@ -1,12 +1,7 @@
|
|
|
1
|
-
import { ModelInfoUtil } from "../util/
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
return function(clazz) {
|
|
7
|
-
ModelInfoUtil.addModelIndex(fields, params, clazz);
|
|
8
|
-
};
|
|
1
|
+
import { ModelInfoUtil } from "../util/index.js";
|
|
2
|
+
export function Index(fields, params) {
|
|
3
|
+
return function (clazz) {
|
|
4
|
+
ModelInfoUtil.addModelIndex(fields, params, clazz);
|
|
5
|
+
};
|
|
9
6
|
}
|
|
10
|
-
|
|
11
|
-
//#endregion
|
|
12
|
-
export { Index };
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kZWxJbmRleC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kZWNvcmF0b3IvTW9kZWxJbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakQsTUFBTSxVQUFVLEtBQUssQ0FBQyxNQUFnQixFQUFFLE1BQXFCO0lBQzNELE9BQU8sVUFBUyxLQUF3QjtRQUN0QyxhQUFhLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDckQsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
|
package/dist/decorator/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
export { };
|
|
1
|
+
export * from "./Attribute.js";
|
|
2
|
+
export * from "./DataSource.js";
|
|
3
|
+
export * from "./Model.js";
|
|
4
|
+
export * from "./ModelIndex.js";
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVjb3JhdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGlCQUFpQixDQUFDIn0=
|
package/dist/index.d.ts
CHANGED
|
@@ -1,15 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import { ModelMetaBuilder } from "./builder/ModelMetaBuilder.js";
|
|
7
|
-
import { Attribute } from "./decorator/Attribute.js";
|
|
8
|
-
import { DataSource } from "./decorator/DataSource.js";
|
|
9
|
-
import { Model } from "./decorator/Model.js";
|
|
10
|
-
import { Index } from "./decorator/ModelIndex.js";
|
|
11
|
-
import { ModelInfoUtil } from "./util/ModelInfoUtil.js";
|
|
12
|
-
import { MODEL_METADATA, ModelMetadataUtil } from "./util/ModelMetadataUtil.js";
|
|
13
|
-
import { NameUtil } from "./util/NameUtil.js";
|
|
14
|
-
export * from "@eggjs/tegg-types/orm";
|
|
15
|
-
export { Attribute, AttributeMeta, AttributeMetaBuilder, DataSource, Index, IndexMeta, IndexMetaBuilder, MODEL_METADATA, Model, ModelInfoUtil, ModelMetaBuilder, ModelMetadata, ModelMetadataUtil, NameUtil };
|
|
1
|
+
export * from '@eggjs/tegg-types/orm';
|
|
2
|
+
export * from './builder/index.ts';
|
|
3
|
+
export * from './decorator/index.ts';
|
|
4
|
+
export * from './model/index.ts';
|
|
5
|
+
export * from './util/index.ts';
|
package/dist/index.js
CHANGED
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
import "./util/index.js";
|
|
8
|
-
import { AttributeMetaBuilder } from "./builder/AttributeMetaBuilder.js";
|
|
9
|
-
import { IndexMetaBuilder } from "./builder/IndexMetaBuilder.js";
|
|
10
|
-
import { ModelMetaBuilder } from "./builder/ModelMetaBuilder.js";
|
|
11
|
-
import "./builder/index.js";
|
|
12
|
-
import { Attribute } from "./decorator/Attribute.js";
|
|
13
|
-
import { DataSource } from "./decorator/DataSource.js";
|
|
14
|
-
import { Model } from "./decorator/Model.js";
|
|
15
|
-
import { Index } from "./decorator/ModelIndex.js";
|
|
16
|
-
import "./decorator/index.js";
|
|
17
|
-
|
|
18
|
-
export * from "@eggjs/tegg-types/orm"
|
|
19
|
-
|
|
20
|
-
export { Attribute, AttributeMeta, AttributeMetaBuilder, DataSource, Index, IndexMeta, IndexMetaBuilder, MODEL_METADATA, Model, ModelInfoUtil, ModelMetaBuilder, ModelMetadata, ModelMetadataUtil, NameUtil };
|
|
1
|
+
export * from '@eggjs/tegg-types/orm';
|
|
2
|
+
export * from "./builder/index.js";
|
|
3
|
+
export * from "./decorator/index.js";
|
|
4
|
+
export * from "./model/index.js";
|
|
5
|
+
export * from "./util/index.js";
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGlCQUFpQixDQUFDIn0=
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
constructor(dataType: string, propertyName: string, attributeName: string, allowNull: boolean, autoIncrement: boolean, primary: boolean, unique: boolean);
|
|
1
|
+
export declare class AttributeMeta {
|
|
2
|
+
readonly dataType: string;
|
|
3
|
+
readonly propertyName: string;
|
|
4
|
+
readonly attributeName: string;
|
|
5
|
+
readonly allowNull: boolean;
|
|
6
|
+
readonly autoIncrement: boolean;
|
|
7
|
+
readonly primary: boolean;
|
|
8
|
+
readonly unique: boolean;
|
|
9
|
+
constructor(dataType: string, propertyName: string, attributeName: string, allowNull: boolean, autoIncrement: boolean, primary: boolean, unique: boolean);
|
|
11
10
|
}
|
|
12
|
-
//#endregion
|
|
13
|
-
export { AttributeMeta };
|
|
@@ -1,22 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
//#endregion
|
|
22
|
-
export { AttributeMeta };
|
|
1
|
+
export class AttributeMeta {
|
|
2
|
+
dataType;
|
|
3
|
+
propertyName;
|
|
4
|
+
attributeName;
|
|
5
|
+
allowNull;
|
|
6
|
+
autoIncrement;
|
|
7
|
+
primary;
|
|
8
|
+
unique;
|
|
9
|
+
constructor(dataType, propertyName, attributeName, allowNull, autoIncrement, primary, unique) {
|
|
10
|
+
this.dataType = dataType;
|
|
11
|
+
this.propertyName = propertyName;
|
|
12
|
+
this.attributeName = attributeName;
|
|
13
|
+
this.allowNull = allowNull;
|
|
14
|
+
this.autoIncrement = autoIncrement;
|
|
15
|
+
this.primary = primary;
|
|
16
|
+
this.unique = unique;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXR0cmlidXRlTWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RlbC9BdHRyaWJ1dGVNZXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxhQUFhO0lBQ2YsUUFBUSxDQUFTO0lBQ2pCLFlBQVksQ0FBUztJQUNyQixhQUFhLENBQVM7SUFDdEIsU0FBUyxDQUFVO0lBQ25CLGFBQWEsQ0FBVTtJQUN2QixPQUFPLENBQVU7SUFDakIsTUFBTSxDQUFVO0lBRXpCLFlBQ0UsUUFBZ0IsRUFDaEIsWUFBb0IsRUFDcEIsYUFBcUIsRUFDckIsU0FBa0IsRUFDbEIsYUFBc0IsRUFDdEIsT0FBZ0IsRUFDaEIsTUFBZTtRQUNmLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7Q0FDRiJ9
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
constructor(name: string, fields: string[], unique: boolean, primary: boolean);
|
|
1
|
+
export declare class IndexMeta {
|
|
2
|
+
readonly name: string;
|
|
3
|
+
readonly fields: string[];
|
|
4
|
+
readonly unique: boolean;
|
|
5
|
+
readonly primary: boolean;
|
|
6
|
+
constructor(name: string, fields: string[], unique: boolean, primary: boolean);
|
|
8
7
|
}
|
|
9
|
-
//#endregion
|
|
10
|
-
export { IndexMeta };
|
package/dist/model/IndexMeta.js
CHANGED
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
//#endregion
|
|
16
|
-
export { IndexMeta };
|
|
1
|
+
export class IndexMeta {
|
|
2
|
+
name;
|
|
3
|
+
fields;
|
|
4
|
+
unique;
|
|
5
|
+
primary;
|
|
6
|
+
constructor(name, fields, unique, primary) {
|
|
7
|
+
this.name = name;
|
|
8
|
+
this.fields = fields;
|
|
9
|
+
this.unique = unique;
|
|
10
|
+
this.primary = primary;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5kZXhNZXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGVsL0luZGV4TWV0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sU0FBUztJQUNYLElBQUksQ0FBUztJQUNiLE1BQU0sQ0FBVztJQUNqQixNQUFNLENBQVU7SUFDaEIsT0FBTyxDQUFVO0lBRTFCLFlBQ0UsSUFBWSxFQUNaLE1BQWdCLEVBQ2hCLE1BQWUsRUFDZixPQUFnQjtRQUVoQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN6QixDQUFDO0NBQ0YifQ==
|
|
@@ -1,13 +1,9 @@
|
|
|
1
|
-
import { AttributeMeta } from
|
|
2
|
-
import { IndexMeta } from
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
readonly indices: Array<IndexMeta>;
|
|
10
|
-
constructor(dataSource: string | undefined, tableName: string, attributes: Array<AttributeMeta>, indices: Array<IndexMeta>);
|
|
1
|
+
import { AttributeMeta } from './AttributeMeta.ts';
|
|
2
|
+
import { IndexMeta } from './IndexMeta.ts';
|
|
3
|
+
export declare class ModelMetadata {
|
|
4
|
+
readonly dataSource: string | undefined;
|
|
5
|
+
readonly tableName: string;
|
|
6
|
+
readonly attributes: Array<AttributeMeta>;
|
|
7
|
+
readonly indices: Array<IndexMeta>;
|
|
8
|
+
constructor(dataSource: string | undefined, tableName: string, attributes: Array<AttributeMeta>, indices: Array<IndexMeta>);
|
|
11
9
|
}
|
|
12
|
-
//#endregion
|
|
13
|
-
export { ModelMetadata };
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
//#
|
|
16
|
-
export { ModelMetadata };
|
|
1
|
+
import { AttributeMeta } from "./AttributeMeta.js";
|
|
2
|
+
import { IndexMeta } from "./IndexMeta.js";
|
|
3
|
+
export class ModelMetadata {
|
|
4
|
+
dataSource;
|
|
5
|
+
tableName;
|
|
6
|
+
attributes;
|
|
7
|
+
indices;
|
|
8
|
+
constructor(dataSource, tableName, attributes, indices) {
|
|
9
|
+
this.dataSource = dataSource;
|
|
10
|
+
this.tableName = tableName;
|
|
11
|
+
this.attributes = attributes;
|
|
12
|
+
this.indices = indices;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kZWxNZXRhZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RlbC9Nb2RlbE1ldGFkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsTUFBTSxPQUFPLGFBQWE7SUFDZixVQUFVLENBQXFCO0lBQy9CLFNBQVMsQ0FBUztJQUNsQixVQUFVLENBQXVCO0lBQ2pDLE9BQU8sQ0FBbUI7SUFFbkMsWUFBWSxVQUE4QixFQUFFLFNBQWlCLEVBQUUsVUFBZ0MsRUFBRSxPQUF5QjtRQUN4SCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN6QixDQUFDO0NBQ0YifQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from "./AttributeMeta.js";
|
|
2
|
+
export * from "./IndexMeta.js";
|
|
3
|
+
export * from "./ModelMetadata.js";
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kZWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsb0JBQW9CLENBQUMifQ==
|
|
@@ -1,18 +1,15 @@
|
|
|
1
|
-
import { AttributeOptions, EggProtoImplClass, IndexOptions, ModelAttributeInfo, ModelIndexInfo } from
|
|
2
|
-
|
|
3
|
-
//#region src/util/ModelInfoUtil.d.ts
|
|
1
|
+
import type { AttributeOptions, EggProtoImplClass, IndexOptions, ModelAttributeInfo, ModelIndexInfo } from '@eggjs/tegg-types';
|
|
4
2
|
type ModelAttributeMap = Map<string, ModelAttributeInfo>;
|
|
5
|
-
declare class ModelInfoUtil {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
3
|
+
export declare class ModelInfoUtil {
|
|
4
|
+
static setIsModel(isModel: boolean, clazz: EggProtoImplClass): void;
|
|
5
|
+
static getIsModel(clazz: EggProtoImplClass): boolean;
|
|
6
|
+
static setDataSource(dataSource: string, clazz: EggProtoImplClass): void;
|
|
7
|
+
static getDataSource(clazz: EggProtoImplClass): string | undefined;
|
|
8
|
+
static setTableName(tableName: string, clazz: EggProtoImplClass): void;
|
|
9
|
+
static getTableName(clazz: EggProtoImplClass): string | undefined;
|
|
10
|
+
static addModelIndex(fields: string[], options: IndexOptions | undefined, clazz: EggProtoImplClass): void;
|
|
11
|
+
static getModelIndices(clazz: EggProtoImplClass): Array<ModelIndexInfo>;
|
|
12
|
+
static addModelAttribute(dataType: string, options: AttributeOptions | undefined, clazz: EggProtoImplClass, property: string): void;
|
|
13
|
+
static getModelAttributes(clazz: EggProtoImplClass): ModelAttributeMap | undefined;
|
|
16
14
|
}
|
|
17
|
-
|
|
18
|
-
export { ModelInfoUtil };
|
|
15
|
+
export {};
|
|
@@ -1,45 +1,43 @@
|
|
|
1
|
-
import { MetadataUtil } from
|
|
2
|
-
import { IS_MODEL, MODEL_DATA_ATTRIBUTES, MODEL_DATA_INDICES, MODEL_DATA_SOURCE, MODEL_DATA_TABLE_NAME } from
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
//#endregion
|
|
45
|
-
export { ModelInfoUtil };
|
|
1
|
+
import { MetadataUtil } from '@eggjs/core-decorator';
|
|
2
|
+
import { IS_MODEL, MODEL_DATA_ATTRIBUTES, MODEL_DATA_INDICES, MODEL_DATA_SOURCE, MODEL_DATA_TABLE_NAME, } from '@eggjs/tegg-types';
|
|
3
|
+
export class ModelInfoUtil {
|
|
4
|
+
static setIsModel(isModel, clazz) {
|
|
5
|
+
MetadataUtil.defineMetaData(IS_MODEL, isModel, clazz);
|
|
6
|
+
}
|
|
7
|
+
static getIsModel(clazz) {
|
|
8
|
+
return MetadataUtil.getBooleanMetaData(IS_MODEL, clazz);
|
|
9
|
+
}
|
|
10
|
+
static setDataSource(dataSource, clazz) {
|
|
11
|
+
MetadataUtil.defineMetaData(MODEL_DATA_SOURCE, dataSource, clazz);
|
|
12
|
+
}
|
|
13
|
+
static getDataSource(clazz) {
|
|
14
|
+
return MetadataUtil.getMetaData(MODEL_DATA_SOURCE, clazz);
|
|
15
|
+
}
|
|
16
|
+
static setTableName(tableName, clazz) {
|
|
17
|
+
MetadataUtil.defineMetaData(MODEL_DATA_TABLE_NAME, tableName, clazz);
|
|
18
|
+
}
|
|
19
|
+
static getTableName(clazz) {
|
|
20
|
+
return MetadataUtil.getMetaData(MODEL_DATA_TABLE_NAME, clazz);
|
|
21
|
+
}
|
|
22
|
+
static addModelIndex(fields, options, clazz) {
|
|
23
|
+
const indexInfo = MetadataUtil.initOwnArrayMetaData(MODEL_DATA_INDICES, clazz, []);
|
|
24
|
+
indexInfo.push({
|
|
25
|
+
fields,
|
|
26
|
+
options,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
static getModelIndices(clazz) {
|
|
30
|
+
return MetadataUtil.getArrayMetaData(MODEL_DATA_INDICES, clazz);
|
|
31
|
+
}
|
|
32
|
+
static addModelAttribute(dataType, options, clazz, property) {
|
|
33
|
+
const attributeMap = MetadataUtil.initOwnMapMetaData(MODEL_DATA_ATTRIBUTES, clazz, new Map());
|
|
34
|
+
attributeMap.set(property, {
|
|
35
|
+
dataType,
|
|
36
|
+
options,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
static getModelAttributes(clazz) {
|
|
40
|
+
return MetadataUtil.getMetaData(MODEL_DATA_ATTRIBUTES, clazz);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kZWxJbmZvVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL01vZGVsSW5mb1V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBUXJELE9BQU8sRUFDTCxRQUFRLEVBQ1IscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIscUJBQXFCLEdBQ3RCLE1BQU0sbUJBQW1CLENBQUM7QUFJM0IsTUFBTSxPQUFPLGFBQWE7SUFDeEIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFnQixFQUFFLEtBQXdCO1FBQzFELFlBQVksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUF3QjtRQUN4QyxPQUFPLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsVUFBa0IsRUFBRSxLQUF3QjtRQUMvRCxZQUFZLENBQUMsY0FBYyxDQUFDLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUF3QjtRQUMzQyxPQUFPLFlBQVksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsU0FBaUIsRUFBRSxLQUF3QjtRQUM3RCxZQUFZLENBQUMsY0FBYyxDQUFDLHFCQUFxQixFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUF3QjtRQUMxQyxPQUFPLFlBQVksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBZ0IsRUFBRSxPQUFpQyxFQUFFLEtBQXdCO1FBQ2hHLE1BQU0sU0FBUyxHQUEwQixZQUFZLENBQUMsb0JBQW9CLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzFHLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDYixNQUFNO1lBQ04sT0FBTztTQUNSLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsZUFBZSxDQUFDLEtBQXdCO1FBQzdDLE9BQU8sWUFBWSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxNQUFNLENBQUMsaUJBQWlCLENBQUMsUUFBZ0IsRUFBRSxPQUFxQyxFQUFFLEtBQXdCLEVBQUUsUUFBZ0I7UUFDMUgsTUFBTSxZQUFZLEdBQXNCLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ2pILFlBQVksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFO1lBQ3pCLFFBQVE7WUFDUixPQUFPO1NBQ1IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxLQUF3QjtRQUNoRCxPQUFPLFlBQVksQ0FBQyxXQUFXLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEUsQ0FBQztDQUNGIn0=
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
static setModelMetadata(clazz: EggProtoImplClass, metaData: ModelMetadata): void;
|
|
8
|
-
static getModelMetadata(clazz: EggProtoImplClass): ModelMetadata | undefined;
|
|
1
|
+
import type { EggProtoImplClass } from '@eggjs/tegg-types';
|
|
2
|
+
import { ModelMetadata } from '../model/index.ts';
|
|
3
|
+
export declare const MODEL_METADATA: unique symbol;
|
|
4
|
+
export declare class ModelMetadataUtil {
|
|
5
|
+
static setModelMetadata(clazz: EggProtoImplClass, metaData: ModelMetadata): void;
|
|
6
|
+
static getModelMetadata(clazz: EggProtoImplClass): ModelMetadata | undefined;
|
|
9
7
|
}
|
|
10
|
-
//#endregion
|
|
11
|
-
export { MODEL_METADATA, ModelMetadataUtil };
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
import { MetadataUtil } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
//#endregion
|
|
15
|
-
export { MODEL_METADATA, ModelMetadataUtil };
|
|
1
|
+
import { MetadataUtil } from '@eggjs/core-decorator';
|
|
2
|
+
import { ModelMetadata } from "../model/index.js";
|
|
3
|
+
export const MODEL_METADATA = Symbol.for('EggPrototype#model#metadata');
|
|
4
|
+
export class ModelMetadataUtil {
|
|
5
|
+
static setModelMetadata(clazz, metaData) {
|
|
6
|
+
MetadataUtil.defineMetaData(MODEL_METADATA, metaData, clazz);
|
|
7
|
+
}
|
|
8
|
+
static getModelMetadata(clazz) {
|
|
9
|
+
return MetadataUtil.getMetaData(MODEL_METADATA, clazz);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kZWxNZXRhZGF0YVV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbC9Nb2RlbE1ldGFkYXRhVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWxELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDZCQUE2QixDQUFDLENBQUM7QUFFeEUsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBd0IsRUFBRSxRQUF1QjtRQUN2RSxZQUFZLENBQUMsY0FBYyxDQUFDLGNBQWMsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUF3QjtRQUM5QyxPQUFPLFlBQVksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7Q0FDRiJ9
|
package/dist/util/NameUtil.d.ts
CHANGED
|
@@ -1,25 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}): string;
|
|
1
|
+
export declare class NameUtil {
|
|
2
|
+
/**
|
|
3
|
+
* get table name
|
|
4
|
+
* StudentScore -> student_scores
|
|
5
|
+
*/
|
|
6
|
+
static getTableName(modelName: string): string;
|
|
7
|
+
/**
|
|
8
|
+
* get attribute name
|
|
9
|
+
* userName -> user_name
|
|
10
|
+
*/
|
|
11
|
+
static getAttributeName(propertyName: string): string;
|
|
12
|
+
/**
|
|
13
|
+
* [ 'user_name' ], unique
|
|
14
|
+
* uk_user_name
|
|
15
|
+
*
|
|
16
|
+
* [ 'user_name', 'gender' ]
|
|
17
|
+
* idx_user_name_gender
|
|
18
|
+
*/
|
|
19
|
+
static getIndexName(fields: string[], options?: {
|
|
20
|
+
unique?: boolean;
|
|
21
|
+
}): string;
|
|
23
22
|
}
|
|
24
|
-
//#endregion
|
|
25
|
-
export { NameUtil };
|
package/dist/util/NameUtil.js
CHANGED
|
@@ -1,36 +1,32 @@
|
|
|
1
|
-
import _ from
|
|
2
|
-
import pluralize from
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
//#endregion
|
|
36
|
-
export { NameUtil };
|
|
1
|
+
import _ from 'lodash';
|
|
2
|
+
import pluralize from 'pluralize';
|
|
3
|
+
export class NameUtil {
|
|
4
|
+
/**
|
|
5
|
+
* get table name
|
|
6
|
+
* StudentScore -> student_scores
|
|
7
|
+
*/
|
|
8
|
+
static getTableName(modelName) {
|
|
9
|
+
const modelNames = pluralize(modelName);
|
|
10
|
+
return _.snakeCase(modelNames);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* get attribute name
|
|
14
|
+
* userName -> user_name
|
|
15
|
+
*/
|
|
16
|
+
static getAttributeName(propertyName) {
|
|
17
|
+
return _.snakeCase(propertyName);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* [ 'user_name' ], unique
|
|
21
|
+
* uk_user_name
|
|
22
|
+
*
|
|
23
|
+
* [ 'user_name', 'gender' ]
|
|
24
|
+
* idx_user_name_gender
|
|
25
|
+
*/
|
|
26
|
+
static getIndexName(fields, options) {
|
|
27
|
+
const prefix = options?.unique ? 'uk_' : 'idx_';
|
|
28
|
+
const names = fields.join('_');
|
|
29
|
+
return prefix + names;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmFtZVV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbC9OYW1lVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDdkIsT0FBTyxTQUFTLE1BQU0sV0FBVyxDQUFDO0FBRWxDLE1BQU0sT0FBTyxRQUFRO0lBQ25COzs7T0FHRztJQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsU0FBaUI7UUFDbkMsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFlBQW9CO1FBQzFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFnQixFQUFFLE9BQThCO1FBQ2xFLE1BQU0sTUFBTSxHQUFHLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ2hELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsT0FBTyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7Q0FDRiJ9
|
package/dist/util/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export { };
|
|
1
|
+
export * from "./ModelInfoUtil.js";
|
|
2
|
+
export * from "./ModelMetadataUtil.js";
|
|
3
|
+
export * from "./NameUtil.js";
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxlQUFlLENBQUMifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eggjs/tegg-orm-decorator",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.9",
|
|
4
4
|
"description": "tegg orm decorator",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"lodash": "^4.17.21",
|
|
35
35
|
"pluralize": "^8.0.0",
|
|
36
|
-
"@eggjs/core-decorator": "4.0.0-beta.
|
|
37
|
-
"@eggjs/tegg-types": "4.0.0-beta.
|
|
36
|
+
"@eggjs/core-decorator": "4.0.0-beta.9",
|
|
37
|
+
"@eggjs/tegg-types": "4.0.0-beta.9"
|
|
38
38
|
},
|
|
39
39
|
"publishConfig": {
|
|
40
40
|
"access": "public"
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"types": "./dist/index.d.ts",
|
|
53
53
|
"scripts": {
|
|
54
54
|
"clean": "rimraf dist",
|
|
55
|
-
"build": "tsdown",
|
|
55
|
+
"build": "tsdown && rimraf dist && tsc -b --clean && tsc",
|
|
56
56
|
"typecheck": "tsc --noEmit"
|
|
57
57
|
}
|
|
58
58
|
}
|