@eggjs/dal-decorator 3.51.2 → 4.0.0-beta.1

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.
Files changed (55) hide show
  1. package/package.json +23 -20
  2. package/src/decorator/Column.js +14 -0
  3. package/src/decorator/Dao.js +16 -0
  4. package/src/decorator/DataSourceQualifier.js +8 -0
  5. package/src/decorator/Table.js +19 -0
  6. package/src/decorator/TableIndex.js +7 -0
  7. package/src/decorator/index.d.ts +5 -0
  8. package/src/decorator/index.js +6 -0
  9. package/src/index.d.ts +5 -0
  10. package/src/index.js +6 -0
  11. package/src/model/ColumnModel.js +57 -0
  12. package/{dist/src → src}/model/IndexModel.d.ts +1 -1
  13. package/src/model/IndexModel.js +50 -0
  14. package/{dist/src → src}/model/TableModel.d.ts +2 -2
  15. package/src/model/TableModel.js +113 -0
  16. package/src/model/index.d.ts +3 -0
  17. package/src/model/index.js +4 -0
  18. package/src/type/MySql.js +2 -0
  19. package/src/type/Spatial.js +31 -0
  20. package/src/type/index.d.ts +2 -0
  21. package/src/type/index.js +3 -0
  22. package/src/util/ColumnInfoUtil.js +19 -0
  23. package/src/util/DaoInfoUtil.js +11 -0
  24. package/src/util/IndexInfoUtil.js +12 -0
  25. package/src/util/TableInfoUtil.js +23 -0
  26. package/src/util/index.d.ts +4 -0
  27. package/src/util/index.js +5 -0
  28. package/dist/index.d.ts +0 -15
  29. package/dist/index.js +0 -32
  30. package/dist/src/decorator/Column.js +0 -20
  31. package/dist/src/decorator/Dao.js +0 -19
  32. package/dist/src/decorator/DataSourceQualifier.js +0 -11
  33. package/dist/src/decorator/Index.js +0 -10
  34. package/dist/src/decorator/Table.js +0 -22
  35. package/dist/src/model/ColumnModel.js +0 -51
  36. package/dist/src/model/IndexModel.js +0 -47
  37. package/dist/src/model/TableModel.js +0 -102
  38. package/dist/src/type/MySql.js +0 -3
  39. package/dist/src/type/Spatial.js +0 -35
  40. package/dist/src/util/ColumnInfoUtil.js +0 -23
  41. package/dist/src/util/DaoInfoUtil.js +0 -15
  42. package/dist/src/util/IndexInfoUtil.js +0 -16
  43. package/dist/src/util/TableInfoUtil.js +0 -27
  44. /package/{dist/src → src}/decorator/Column.d.ts +0 -0
  45. /package/{dist/src → src}/decorator/Dao.d.ts +0 -0
  46. /package/{dist/src → src}/decorator/DataSourceQualifier.d.ts +0 -0
  47. /package/{dist/src → src}/decorator/Table.d.ts +0 -0
  48. /package/{dist/src/decorator/Index.d.ts → src/decorator/TableIndex.d.ts} +0 -0
  49. /package/{dist/src → src}/model/ColumnModel.d.ts +0 -0
  50. /package/{dist/src → src}/type/MySql.d.ts +0 -0
  51. /package/{dist/src → src}/type/Spatial.d.ts +0 -0
  52. /package/{dist/src → src}/util/ColumnInfoUtil.d.ts +0 -0
  53. /package/{dist/src → src}/util/DaoInfoUtil.d.ts +0 -0
  54. /package/{dist/src → src}/util/IndexInfoUtil.d.ts +0 -0
  55. /package/{dist/src → src}/util/TableInfoUtil.d.ts +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eggjs/dal-decorator",
3
- "version": "3.51.2",
3
+ "version": "4.0.0-beta.1",
4
4
  "description": "tegg dal decorator",
5
5
  "keywords": [
6
6
  "egg",
@@ -9,18 +9,22 @@
9
9
  "tegg",
10
10
  "dal"
11
11
  ],
12
- "main": "dist/index.js",
12
+ "type": "module",
13
+ "exports": {
14
+ ".": {
15
+ "types": "./src/index.d.ts",
16
+ "default": "./src/index.js"
17
+ }
18
+ },
13
19
  "files": [
14
- "dist/**/*.js",
15
- "dist/**/*.d.ts"
20
+ "src/**/*.js",
21
+ "src/**/*.d.ts"
16
22
  ],
17
- "typings": "dist/index.d.ts",
18
23
  "scripts": {
19
- "test": "cross-env NODE_ENV=test NODE_OPTIONS='--no-deprecation' mocha",
20
24
  "clean": "tsc -b --clean",
21
25
  "tsc": "npm run clean && tsc -p ./tsconfig.json",
22
- "tsc:pub": "npm run clean && tsc -p ./tsconfig.pub.json",
23
- "prepublishOnly": "npm run tsc:pub"
26
+ "tsc:pub": "npm run tsc",
27
+ "prepublishOnly": "npm run tsc"
24
28
  },
25
29
  "author": "killagu <killa123@126.com>",
26
30
  "license": "MIT",
@@ -34,12 +38,12 @@
34
38
  "directory": "core/dal-decorator"
35
39
  },
36
40
  "engines": {
37
- "node": ">=14.0.0"
41
+ "node": ">=20.0.0"
38
42
  },
39
43
  "dependencies": {
40
- "@eggjs/core-decorator": "^3.51.2",
41
- "@eggjs/tegg-common-util": "^3.51.2",
42
- "@eggjs/tegg-types": "^3.51.2",
44
+ "@eggjs/core-decorator": "^4.0.0-beta.1",
45
+ "@eggjs/tegg-common-util": "^4.0.0-beta.1",
46
+ "@eggjs/tegg-types": "^4.0.0-beta.1",
43
47
  "lodash.snakecase": "^4.1.1",
44
48
  "pluralize": "^8.0.0"
45
49
  },
@@ -47,12 +51,11 @@
47
51
  "access": "public"
48
52
  },
49
53
  "devDependencies": {
50
- "@types/mocha": "^10.0.1",
51
- "@types/node": "^20.2.4",
52
- "cross-env": "^7.0.3",
53
- "mocha": "^10.2.0",
54
- "ts-node": "^10.9.1",
55
- "typescript": "^5.0.4"
56
- },
57
- "gitHead": "b310ec3c772067b98b4f91342d877bebcee4e673"
54
+ "@types/lodash.snakecase": "^4.1.9",
55
+ "@types/node": "22",
56
+ "@types/pluralize": "^0.0.33",
57
+ "ts-node": "10",
58
+ "typescript": "5"
59
+ },
60
+ "gitHead": "79a22905272d6de7fe06152231dff65d213d9166"
58
61
  }
@@ -0,0 +1,14 @@
1
+ import assert from 'node:assert';
2
+ import { ColumnInfoUtil } from '../util/index.js';
3
+ export function Column(type, params) {
4
+ return function (target, propertyKey) {
5
+ assert(typeof propertyKey === 'string', `[Column/${target.name}] expect column name be typeof string, but now is ${String(propertyKey)}`);
6
+ const tableClazz = target.constructor;
7
+ const columnName = propertyKey;
8
+ ColumnInfoUtil.addColumnType(tableClazz, columnName, type);
9
+ if (params) {
10
+ ColumnInfoUtil.addColumnInfo(tableClazz, columnName, params);
11
+ }
12
+ };
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiQ29sdW1uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLGFBQWEsQ0FBQztBQUVqQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbEQsTUFBTSxVQUFVLE1BQU0sQ0FBQyxJQUFzQixFQUFFLE1BQXFCO0lBQ2xFLE9BQU8sVUFBUyxNQUFXLEVBQUUsV0FBd0I7UUFDbkQsTUFBTSxDQUFDLE9BQU8sV0FBVyxLQUFLLFFBQVEsRUFDcEMsV0FBVyxNQUFNLENBQUMsSUFBSSxxREFBcUQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNwRyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsV0FBZ0MsQ0FBQztRQUMzRCxNQUFNLFVBQVUsR0FBRyxXQUFxQixDQUFDO1FBQ3pDLGNBQWMsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzRCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsY0FBYyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQy9ELENBQUM7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDIn0=
@@ -0,0 +1,16 @@
1
+ import { Prototype, PrototypeUtil } from '@eggjs/core-decorator';
2
+ import { StackUtil } from '@eggjs/tegg-common-util';
3
+ import { AccessLevel, ObjectInitType } from '@eggjs/tegg-types';
4
+ import { DaoInfoUtil } from '../util/index.js';
5
+ export function Dao() {
6
+ return function (constructor) {
7
+ DaoInfoUtil.setIsDao(constructor);
8
+ const func = Prototype({
9
+ accessLevel: AccessLevel.PUBLIC,
10
+ initType: ObjectInitType.SINGLETON,
11
+ });
12
+ func(constructor);
13
+ PrototypeUtil.setFilePath(constructor, StackUtil.getCalleeFromStack(false, 5));
14
+ };
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGFvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiRGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFaEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLE9BQU8sVUFBUyxXQUE4QjtRQUM1QyxXQUFXLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQztZQUNyQixXQUFXLEVBQUUsV0FBVyxDQUFDLE1BQU07WUFDL0IsUUFBUSxFQUFFLGNBQWMsQ0FBQyxTQUFTO1NBQ25DLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNsQixhQUFhLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
@@ -0,0 +1,8 @@
1
+ import { DataSourceQualifierAttribute } from '@eggjs/tegg-types';
2
+ import { QualifierUtil } from '@eggjs/core-decorator';
3
+ export function DataSourceQualifier(dataSourceName) {
4
+ return function (target, propertyKey, parameterIndex) {
5
+ QualifierUtil.addInjectQualifier(target, propertyKey, parameterIndex, DataSourceQualifierAttribute, dataSourceName);
6
+ };
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0YVNvdXJjZVF1YWxpZmllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkRhdGFTb3VyY2VRdWFsaWZpZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXRELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxjQUFzQjtJQUN4RCxPQUFPLFVBQVMsTUFBVyxFQUFFLFdBQXdCLEVBQUUsY0FBdUI7UUFDNUUsYUFBYSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLDRCQUE0QixFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ3RILENBQUMsQ0FBQztBQUNKLENBQUMifQ==
@@ -0,0 +1,19 @@
1
+ import { Prototype, PrototypeUtil } from '@eggjs/core-decorator';
2
+ import { StackUtil } from '@eggjs/tegg-common-util';
3
+ import { AccessLevel, ObjectInitType } from '@eggjs/tegg-types';
4
+ import { TableInfoUtil } from '../util/index.js';
5
+ export function Table(params) {
6
+ return function (constructor) {
7
+ TableInfoUtil.setIsTable(constructor);
8
+ if (params) {
9
+ TableInfoUtil.setTableParams(constructor, params);
10
+ }
11
+ const func = Prototype({
12
+ accessLevel: AccessLevel.PUBLIC,
13
+ initType: ObjectInitType.ALWAYS_NEW,
14
+ });
15
+ func(constructor);
16
+ PrototypeUtil.setFilePath(constructor, StackUtil.getCalleeFromStack(false, 5));
17
+ };
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJUYWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRCxNQUFNLFVBQVUsS0FBSyxDQUFDLE1BQW9CO0lBQ3hDLE9BQU8sVUFBUyxXQUE4QjtRQUM1QyxhQUFhLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3RDLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxhQUFhLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBQ0QsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDO1lBQ3JCLFdBQVcsRUFBRSxXQUFXLENBQUMsTUFBTTtZQUMvQixRQUFRLEVBQUUsY0FBYyxDQUFDLFVBQVU7U0FDcEMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xCLGFBQWEsQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqRixDQUFDLENBQUM7QUFDSixDQUFDIn0=
@@ -0,0 +1,7 @@
1
+ import { IndexInfoUtil } from '../util/index.js';
2
+ export function Index(params) {
3
+ return function (constructor) {
4
+ IndexInfoUtil.addIndex(constructor, params);
5
+ };
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVJbmRleC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIlRhYmxlSW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWpELE1BQU0sVUFBVSxLQUFLLENBQUMsTUFBbUI7SUFDdkMsT0FBTyxVQUFTLFdBQThCO1FBQzVDLGFBQWEsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLENBQUMsQ0FBQztBQUNKLENBQUMifQ==
@@ -0,0 +1,5 @@
1
+ export * from './Column.js';
2
+ export * from './Dao.js';
3
+ export * from './DataSourceQualifier.js';
4
+ export * from './Table.js';
5
+ export * from './TableIndex.js';
@@ -0,0 +1,6 @@
1
+ export * from './Column.js';
2
+ export * from './Dao.js';
3
+ export * from './DataSourceQualifier.js';
4
+ export * from './Table.js';
5
+ export * from './TableIndex.js';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsaUJBQWlCLENBQUMifQ==
package/src/index.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ export * from '@eggjs/tegg-types/dal';
2
+ export * from './decorator/index.js';
3
+ export * from './model/index.js';
4
+ export * from './type/index.js';
5
+ export * from './util/index.js';
package/src/index.js ADDED
@@ -0,0 +1,6 @@
1
+ export * from '@eggjs/tegg-types/dal';
2
+ export * from './decorator/index.js';
3
+ export * from './model/index.js';
4
+ export * from './type/index.js';
5
+ export * from './util/index.js';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsaUJBQWlCLENBQUMifQ==
@@ -0,0 +1,57 @@
1
+ import snakecase from 'lodash.snakecase';
2
+ export class ColumnModel {
3
+ columnName;
4
+ propertyName;
5
+ type;
6
+ canNull;
7
+ default;
8
+ comment;
9
+ visible;
10
+ autoIncrement;
11
+ uniqueKey;
12
+ primaryKey;
13
+ collate;
14
+ columnFormat;
15
+ engineAttribute;
16
+ secondaryEngineAttribute;
17
+ constructor(params) {
18
+ this.columnName = params.columnName;
19
+ this.propertyName = params.propertyName;
20
+ this.type = params.type;
21
+ this.canNull = params.canNull;
22
+ this.default = params.default;
23
+ this.comment = params.comment;
24
+ this.visible = params.visible;
25
+ this.autoIncrement = params.autoIncrement;
26
+ this.uniqueKey = params.uniqueKey;
27
+ this.primaryKey = params.primaryKey;
28
+ this.collate = params.collate;
29
+ this.columnFormat = params.columnFormat;
30
+ this.engineAttribute = params.engineAttribute;
31
+ this.secondaryEngineAttribute = params.secondaryEngineAttribute;
32
+ }
33
+ static build(property, type, params) {
34
+ const columnName = params?.name ?? snakecase(property);
35
+ let canNull = params?.canNull ?? false;
36
+ if (params?.primaryKey) {
37
+ canNull = false;
38
+ }
39
+ return new ColumnModel({
40
+ columnName,
41
+ propertyName: property,
42
+ type,
43
+ canNull,
44
+ default: params?.default,
45
+ comment: params?.comment,
46
+ visible: params?.visible,
47
+ autoIncrement: params?.autoIncrement,
48
+ uniqueKey: params?.uniqueKey,
49
+ primaryKey: params?.primaryKey,
50
+ collate: params?.collate,
51
+ columnFormat: params?.columnFormat,
52
+ engineAttribute: params?.engineAttribute,
53
+ secondaryEngineAttribute: params?.secondaryEngineAttribute,
54
+ });
55
+ }
56
+ }
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29sdW1uTW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJDb2x1bW5Nb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFNBQVMsTUFBTSxrQkFBa0IsQ0FBQztBQUd6QyxNQUFNLE9BQU8sV0FBVztJQUN0QixVQUFVLENBQVM7SUFDbkIsWUFBWSxDQUFTO0lBQ3JCLElBQUksQ0FBbUI7SUFDdkIsT0FBTyxDQUFVO0lBQ2pCLE9BQU8sQ0FBVTtJQUNqQixPQUFPLENBQVU7SUFDakIsT0FBTyxDQUFXO0lBQ2xCLGFBQWEsQ0FBVztJQUN4QixTQUFTLENBQVc7SUFDcEIsVUFBVSxDQUFXO0lBQ3JCLE9BQU8sQ0FBVTtJQUNqQixZQUFZLENBQWdCO0lBQzVCLGVBQWUsQ0FBVTtJQUN6Qix3QkFBd0IsQ0FBVTtJQUVsQyxZQUFZLE1BZVg7UUFDQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDcEMsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDcEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QyxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7UUFDOUMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQztJQUNsRSxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFnQixFQUFFLElBQXNCLEVBQUUsTUFBcUI7UUFDMUUsTUFBTSxVQUFVLEdBQUcsTUFBTSxFQUFFLElBQUksSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdkQsSUFBSSxPQUFPLEdBQUcsTUFBTSxFQUFFLE9BQU8sSUFBSSxLQUFLLENBQUM7UUFDdkMsSUFBSSxNQUFNLEVBQUUsVUFBVSxFQUFFLENBQUM7WUFDdkIsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNsQixDQUFDO1FBQ0QsT0FBTyxJQUFJLFdBQVcsQ0FBQztZQUNyQixVQUFVO1lBQ1YsWUFBWSxFQUFFLFFBQVE7WUFDdEIsSUFBSTtZQUNKLE9BQU87WUFDUCxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU87WUFDeEIsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPO1lBQ3hCLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTztZQUN4QixhQUFhLEVBQUUsTUFBTSxFQUFFLGFBQWE7WUFDcEMsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTO1lBQzVCLFVBQVUsRUFBRSxNQUFNLEVBQUUsVUFBVTtZQUM5QixPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU87WUFDeEIsWUFBWSxFQUFFLE1BQU0sRUFBRSxZQUFZO1lBQ2xDLGVBQWUsRUFBRSxNQUFNLEVBQUUsZUFBZTtZQUN4Qyx3QkFBd0IsRUFBRSxNQUFNLEVBQUUsd0JBQXdCO1NBQzNELENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiJ9
@@ -1,6 +1,6 @@
1
1
  import { EggProtoImplClass, IndexType } from '@eggjs/tegg-types';
2
2
  import type { IndexParams, IndexStoreType } from '@eggjs/tegg-types';
3
- import { ColumnModel } from './ColumnModel';
3
+ import { ColumnModel } from './ColumnModel.js';
4
4
  export interface IndexKey {
5
5
  columnName: string;
6
6
  propertyName: string;
@@ -0,0 +1,50 @@
1
+ import { IndexType } from '@eggjs/tegg-types';
2
+ export class IndexModel {
3
+ name;
4
+ keys;
5
+ type;
6
+ storeType;
7
+ comment;
8
+ engineAttribute;
9
+ secondaryEngineAttribute;
10
+ parser;
11
+ constructor(params) {
12
+ this.name = params.name;
13
+ this.keys = params.keys;
14
+ this.type = params.type;
15
+ this.storeType = params.storeType;
16
+ this.comment = params.comment;
17
+ this.engineAttribute = params.engineAttribute;
18
+ this.secondaryEngineAttribute = params.secondaryEngineAttribute;
19
+ this.parser = params.parser;
20
+ }
21
+ static buildIndexName(keys, type) {
22
+ const prefix = type === IndexType.UNIQUE ? 'uk_' : 'idx_';
23
+ return prefix + keys.join('_');
24
+ }
25
+ static build(params, columns, clazz) {
26
+ const type = params.type ?? IndexType.INDEX;
27
+ const keys = params.keys.map(t => {
28
+ const column = columns.find(c => c.propertyName === t);
29
+ if (!column) {
30
+ throw new Error(`Table ${clazz.name} index configuration error: has no property named "${t}"`);
31
+ }
32
+ return {
33
+ propertyName: column.propertyName,
34
+ columnName: column.columnName,
35
+ };
36
+ });
37
+ const name = params.name ?? IndexModel.buildIndexName(keys.map(t => t.columnName), type);
38
+ return new IndexModel({
39
+ name,
40
+ keys,
41
+ type,
42
+ storeType: params.storeType,
43
+ comment: params.comment,
44
+ engineAttribute: params.engineAttribute,
45
+ secondaryEngineAttribute: params.secondaryEngineAttribute,
46
+ parser: params.parser,
47
+ });
48
+ }
49
+ }
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5kZXhNb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkluZGV4TW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQVNqRSxNQUFNLE9BQU8sVUFBVTtJQUNyQixJQUFJLENBQVM7SUFDYixJQUFJLENBQWE7SUFDakIsSUFBSSxDQUFZO0lBRWhCLFNBQVMsQ0FBa0I7SUFDM0IsT0FBTyxDQUFVO0lBQ2pCLGVBQWUsQ0FBVTtJQUN6Qix3QkFBd0IsQ0FBVTtJQUNsQyxNQUFNLENBQVU7SUFFaEIsWUFBWSxNQVNYO1FBQ0MsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7UUFDOUMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQztRQUNoRSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDOUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBYyxFQUFFLElBQWU7UUFDbkQsTUFBTSxNQUFNLEdBQUcsSUFBSSxLQUFLLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzFELE9BQU8sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBbUIsRUFBRSxPQUFzQixFQUFFLEtBQWlDO1FBQ3pGLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQztRQUM1QyxNQUFNLElBQUksR0FBb0IsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDaEQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMsU0FBUyxLQUFLLENBQUMsSUFBSSxzREFBc0QsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqRyxDQUFDO1lBQ0QsT0FBTztnQkFDTCxZQUFZLEVBQUUsTUFBTyxDQUFDLFlBQVk7Z0JBQ2xDLFVBQVUsRUFBRSxNQUFPLENBQUMsVUFBVTthQUMvQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN6RixPQUFPLElBQUksVUFBVSxDQUFDO1lBQ3BCLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztZQUMzQixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87WUFDdkIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLHdCQUF3QixFQUFFLE1BQU0sQ0FBQyx3QkFBd0I7WUFDekQsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1NBQ3RCLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiJ9
@@ -1,6 +1,6 @@
1
1
  import type { CompressionType, EggProtoImplClass, InsertMethod, RowFormat } from '@eggjs/tegg-types';
2
- import { ColumnModel } from './ColumnModel';
3
- import { IndexModel } from './IndexModel';
2
+ import { ColumnModel } from './ColumnModel.js';
3
+ import { IndexModel } from './IndexModel.js';
4
4
  export declare class TableModel<T = object> {
5
5
  clazz: EggProtoImplClass<T>;
6
6
  name: string;
@@ -0,0 +1,113 @@
1
+ import assert from 'node:assert';
2
+ import pluralize from 'pluralize';
3
+ import snakecase from 'lodash.snakecase';
4
+ import { IndexType } from '@eggjs/tegg-types';
5
+ import { ColumnModel } from './ColumnModel.js';
6
+ import { IndexModel } from './IndexModel.js';
7
+ import { TableInfoUtil, ColumnInfoUtil, IndexInfoUtil } from '../util/index.js';
8
+ export class TableModel {
9
+ clazz;
10
+ name;
11
+ columns;
12
+ indices;
13
+ dataSourceName;
14
+ comment;
15
+ autoExtendSize;
16
+ autoIncrement;
17
+ avgRowLength;
18
+ characterSet;
19
+ collate;
20
+ compression;
21
+ encryption;
22
+ engine;
23
+ engineAttribute;
24
+ insertMethod;
25
+ keyBlockSize;
26
+ maxRows;
27
+ minRows;
28
+ rowFormat;
29
+ secondaryEngineAttribute;
30
+ constructor(params) {
31
+ this.clazz = params.clazz;
32
+ this.name = params.name;
33
+ this.dataSourceName = params.dataSourceName;
34
+ this.columns = params.columns;
35
+ this.indices = params.indices;
36
+ this.comment = params.comment;
37
+ this.autoExtendSize = params.autoExtendSize;
38
+ this.autoIncrement = params.autoIncrement;
39
+ this.avgRowLength = params.avgRowLength;
40
+ this.characterSet = params.characterSet;
41
+ this.collate = params.collate;
42
+ this.compression = params.compression;
43
+ this.encryption = params.encryption;
44
+ this.engine = params.engine;
45
+ this.engineAttribute = params.engineAttribute;
46
+ this.insertMethod = params.insertMethod;
47
+ this.keyBlockSize = params.keyBlockSize;
48
+ this.maxRows = params.maxRows;
49
+ this.minRows = params.minRows;
50
+ this.rowFormat = params.rowFormat;
51
+ this.secondaryEngineAttribute = params.secondaryEngineAttribute;
52
+ }
53
+ getPrimary() {
54
+ const index = this.indices.find(t => t.type === IndexType.PRIMARY);
55
+ if (index) {
56
+ return index;
57
+ }
58
+ const primaryColumn = this.columns.filter(t => t.primaryKey === true);
59
+ return new IndexModel({
60
+ name: 'PRIMARY',
61
+ type: IndexType.PRIMARY,
62
+ keys: primaryColumn.map(t => {
63
+ return {
64
+ columnName: t.columnName,
65
+ propertyName: t.propertyName,
66
+ };
67
+ }),
68
+ });
69
+ }
70
+ static build(clazz) {
71
+ const params = TableInfoUtil.getTableParams(clazz);
72
+ const name = params?.name ?? snakecase(pluralize(clazz.name));
73
+ const columnInfoMap = ColumnInfoUtil.getColumnInfoMap(clazz);
74
+ const columnTypeMap = ColumnInfoUtil.getColumnTypeMap(clazz);
75
+ const dataSourceName = params?.dataSourceName ?? 'default';
76
+ assert(TableInfoUtil.getIsTable(clazz), `${name} is not Table`);
77
+ assert(columnTypeMap, `${name} has no columns`);
78
+ const columns = [];
79
+ const indices = [];
80
+ for (const [property, columnType] of columnTypeMap?.entries() ?? []) {
81
+ const columnParam = columnInfoMap?.get(property);
82
+ columns.push(ColumnModel.build(property, columnType, columnParam));
83
+ }
84
+ const indexList = IndexInfoUtil.getIndexList(clazz);
85
+ for (const index of indexList) {
86
+ indices.push(IndexModel.build(index, columns, clazz));
87
+ }
88
+ return new TableModel({
89
+ clazz,
90
+ name,
91
+ columns,
92
+ indices,
93
+ dataSourceName,
94
+ comment: params?.comment,
95
+ autoExtendSize: params?.autoExtendSize,
96
+ autoIncrement: params?.autoIncrement,
97
+ avgRowLength: params?.avgRowLength,
98
+ characterSet: params?.characterSet,
99
+ collate: params?.collate,
100
+ compression: params?.compression,
101
+ encryption: params?.encryption,
102
+ engine: params?.engine,
103
+ engineAttribute: params?.engineAttribute,
104
+ insertMethod: params?.insertMethod,
105
+ keyBlockSize: params?.keyBlockSize,
106
+ maxRows: params?.maxRows,
107
+ minRows: params?.minRows,
108
+ rowFormat: params?.rowFormat,
109
+ secondaryEngineAttribute: params?.secondaryEngineAttribute,
110
+ });
111
+ }
112
+ }
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVNb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIlRhYmxlTW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sYUFBYSxDQUFDO0FBQ2pDLE9BQU8sU0FBUyxNQUFNLFdBQVcsQ0FBQztBQUNsQyxPQUFPLFNBQVMsTUFBTSxrQkFBa0IsQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVoRixNQUFNLE9BQU8sVUFBVTtJQUNyQixLQUFLLENBQXVCO0lBQzVCLElBQUksQ0FBUztJQUNiLE9BQU8sQ0FBcUI7SUFDNUIsT0FBTyxDQUFvQjtJQUMzQixjQUFjLENBQVM7SUFDdkIsT0FBTyxDQUFVO0lBQ2pCLGNBQWMsQ0FBVTtJQUN4QixhQUFhLENBQVU7SUFDdkIsWUFBWSxDQUFVO0lBQ3RCLFlBQVksQ0FBVTtJQUN0QixPQUFPLENBQVU7SUFDakIsV0FBVyxDQUFtQjtJQUM5QixVQUFVLENBQVc7SUFDckIsTUFBTSxDQUFVO0lBQ2hCLGVBQWUsQ0FBVTtJQUN6QixZQUFZLENBQWdCO0lBQzVCLFlBQVksQ0FBVTtJQUN0QixPQUFPLENBQVU7SUFDakIsT0FBTyxDQUFVO0lBQ2pCLFNBQVMsQ0FBYTtJQUN0Qix3QkFBd0IsQ0FBVTtJQUVsQyxZQUFZLE1Bc0JYO1FBQ0MsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxjQUFj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
@@ -0,0 +1,3 @@
1
+ export * from './ColumnModel.js';
2
+ export * from './IndexModel.js';
3
+ export * from './TableModel.js';
@@ -0,0 +1,4 @@
1
+ export * from './ColumnModel.js';
2
+ export * from './IndexModel.js';
3
+ export * from './TableModel.js';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxpQkFBaUIsQ0FBQyJ9
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXlTcWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJNeVNxbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,31 @@
1
+ import { ColumnType } from '@eggjs/tegg-types';
2
+ export class SpatialHelper {
3
+ static isPoint(t) {
4
+ return typeof Reflect.get(t, 'x') === 'number' && typeof Reflect.get(t, 'y') === 'number';
5
+ }
6
+ static isLine(t) {
7
+ return Array.isArray(t) && t[0] && SpatialHelper.isPoint(t[0]);
8
+ }
9
+ static isPolygon(t) {
10
+ return Array.isArray(t) && t[0] && SpatialHelper.isLine(t[0]);
11
+ }
12
+ static getGeometryType(t) {
13
+ if (SpatialHelper.isPoint(t)) {
14
+ return ColumnType.POINT;
15
+ }
16
+ else if (SpatialHelper.isLine(t)) {
17
+ return ColumnType.LINESTRING;
18
+ }
19
+ return ColumnType.POLYGON;
20
+ }
21
+ static isMultiPoint(t) {
22
+ return Array.isArray(t) && t[0] && SpatialHelper.isPoint(t[0]);
23
+ }
24
+ static isMultiLine(t) {
25
+ return Array.isArray(t) && t[0] && SpatialHelper.isLine(t[0]);
26
+ }
27
+ static isMultiPolygon(t) {
28
+ return Array.isArray(t) && t[0] && SpatialHelper.isPolygon(t[0]);
29
+ }
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3BhdGlhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIlNwYXRpYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRy9DLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBVztRQUN4QixPQUFPLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssUUFBUSxJQUFJLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssUUFBUSxDQUFDO0lBQzVGLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLENBQVc7UUFDdkIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLENBQVc7UUFDMUIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxNQUFNLENBQUMsZUFBZSxDQUFDLENBQVc7UUFDaEMsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDN0IsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDO1FBQzFCLENBQUM7YUFBTSxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNuQyxPQUFPLFVBQVUsQ0FBQyxVQUFVLENBQUM7UUFDL0IsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDLE9BQU8sQ0FBQztJQUU1QixDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFxQjtRQUN2QyxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBcUI7UUFDdEMsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLENBQXFCO1FBQ3pDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0NBQ0YifQ==
@@ -0,0 +1,2 @@
1
+ export * from './MySql.js';
2
+ export * from './Spatial.js';
@@ -0,0 +1,3 @@
1
+ export * from './MySql.js';
2
+ export * from './Spatial.js';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGNBQWMsQ0FBQyJ9
@@ -0,0 +1,19 @@
1
+ import { DAL_COLUMN_INFO_MAP, DAL_COLUMN_TYPE_MAP } from '@eggjs/tegg-types';
2
+ import { MetadataUtil } from '@eggjs/core-decorator';
3
+ export class ColumnInfoUtil {
4
+ static addColumnInfo(clazz, property, column) {
5
+ const columnInfoMap = MetadataUtil.initOwnMapMetaData(DAL_COLUMN_INFO_MAP, clazz, new Map());
6
+ columnInfoMap.set(property, column);
7
+ }
8
+ static addColumnType(clazz, property, type) {
9
+ const columnInfoMap = MetadataUtil.initOwnMapMetaData(DAL_COLUMN_TYPE_MAP, clazz, new Map());
10
+ columnInfoMap.set(property, type);
11
+ }
12
+ static getColumnInfoMap(clazz) {
13
+ return MetadataUtil.getMetaData(DAL_COLUMN_INFO_MAP, clazz);
14
+ }
15
+ static getColumnTypeMap(clazz) {
16
+ return MetadataUtil.getMetaData(DAL_COLUMN_TYPE_MAP, clazz);
17
+ }
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29sdW1uSW5mb1V0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJDb2x1bW5JbmZvVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU3RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFLckQsTUFBTSxPQUFPLGNBQWM7SUFDekIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUF3QixFQUFFLFFBQWdCLEVBQUUsTUFBc0I7UUFDckYsTUFBTSxhQUFhLEdBQUcsWUFBWSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixFQUFFLEtBQUssRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDN0YsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBd0IsRUFBRSxRQUFnQixFQUFFLElBQXNCO1FBQ3JGLE1BQU0sYUFBYSxHQUFHLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzdGLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBd0I7UUFDOUMsT0FBTyxZQUFZLENBQUMsV0FBVyxDQUFDLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBd0I7UUFDOUMsT0FBTyxZQUFZLENBQUMsV0FBVyxDQUFDLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELENBQUM7Q0FDRiJ9
@@ -0,0 +1,11 @@
1
+ import { DAL_IS_DAO } from '@eggjs/tegg-types';
2
+ import { MetadataUtil } from '@eggjs/core-decorator';
3
+ export class DaoInfoUtil {
4
+ static setIsDao(clazz) {
5
+ MetadataUtil.defineMetaData(DAL_IS_DAO, true, clazz);
6
+ }
7
+ static getIsDao(clazz) {
8
+ return MetadataUtil.getOwnMetaData(DAL_IS_DAO, clazz) === true;
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGFvSW5mb1V0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJEYW9JbmZvVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFNUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXJELE1BQU0sT0FBTyxXQUFXO0lBQ3RCLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBd0I7UUFDdEMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQXdCO1FBQ3RDLE9BQU8sWUFBWSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDO0lBQ2pFLENBQUM7Q0FDRiJ9
@@ -0,0 +1,12 @@
1
+ import { DAL_INDEX_LIST } from '@eggjs/tegg-types';
2
+ import { MetadataUtil } from '@eggjs/core-decorator';
3
+ export class IndexInfoUtil {
4
+ static addIndex(clazz, index) {
5
+ const indexList = MetadataUtil.initOwnArrayMetaData(DAL_INDEX_LIST, clazz, []);
6
+ indexList.push(index);
7
+ }
8
+ static getIndexList(clazz) {
9
+ return MetadataUtil.getMetaData(DAL_INDEX_LIST, clazz) || [];
10
+ }
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5kZXhJbmZvVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkluZGV4SW5mb1V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVyRCxNQUFNLE9BQU8sYUFBYTtJQUN4QixNQUFNLENBQUMsUUFBUSxDQUFDLEtBQXdCLEVBQUUsS0FBa0I7UUFDMUQsTUFBTSxTQUFTLEdBQXVCLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxjQUFjLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25HLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBd0I7UUFDMUMsT0FBTyxZQUFZLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDL0QsQ0FBQztDQUNGIn0=
@@ -0,0 +1,23 @@
1
+ import { DAL_IS_TABLE, DAL_TABLE_PARAMS } from '@eggjs/tegg-types';
2
+ import { MetadataUtil } from '@eggjs/core-decorator';
3
+ export const TABLE_CLAZZ_LIST = [];
4
+ export class TableInfoUtil {
5
+ static setIsTable(clazz) {
6
+ TABLE_CLAZZ_LIST.push(clazz);
7
+ MetadataUtil.defineMetaData(DAL_IS_TABLE, true, clazz);
8
+ }
9
+ // TODO del
10
+ static getClazzList() {
11
+ return TABLE_CLAZZ_LIST;
12
+ }
13
+ static getIsTable(clazz) {
14
+ return MetadataUtil.getMetaData(DAL_IS_TABLE, clazz) === true;
15
+ }
16
+ static setTableParams(clazz, params) {
17
+ MetadataUtil.defineMetaData(DAL_TABLE_PARAMS, params, clazz);
18
+ }
19
+ static getTableParams(clazz) {
20
+ return MetadataUtil.getMetaData(DAL_TABLE_PARAMS, clazz);
21
+ }
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVJbmZvVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIlRhYmxlSW5mb1V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVyRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBNkIsRUFBRSxDQUFDO0FBRTdELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBd0I7UUFDeEMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLFlBQVksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsV0FBVztJQUNYLE1BQU0sQ0FBQyxZQUFZO1FBQ2pCLE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBd0I7UUFDeEMsT0FBTyxZQUFZLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUM7SUFDaEUsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBd0IsRUFBRSxNQUFtQjtRQUNqRSxZQUFZLENBQUMsY0FBYyxDQUFDLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUF3QjtRQUM1QyxPQUFPLFlBQVksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0QsQ0FBQztDQUNGIn0=
@@ -0,0 +1,4 @@
1
+ export * from './ColumnInfoUtil.js';
2
+ export * from './DaoInfoUtil.js';
3
+ export * from './IndexInfoUtil.js';
4
+ export * from './TableInfoUtil.js';
@@ -0,0 +1,5 @@
1
+ export * from './ColumnInfoUtil.js';
2
+ export * from './DaoInfoUtil.js';
3
+ export * from './IndexInfoUtil.js';
4
+ export * from './TableInfoUtil.js';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLG9CQUFvQixDQUFDIn0=
package/dist/index.d.ts DELETED
@@ -1,15 +0,0 @@
1
- export * from '@eggjs/tegg-types/dal';
2
- export * from './src/decorator/Index';
3
- export * from './src/decorator/Table';
4
- export * from './src/decorator/Column';
5
- export * from './src/decorator/DataSourceQualifier';
6
- export * from './src/decorator/Dao';
7
- export * from './src/util/ColumnInfoUtil';
8
- export * from './src/util/IndexInfoUtil';
9
- export * from './src/util/TableInfoUtil';
10
- export * from './src/util/DaoInfoUtil';
11
- export * from './src/model/ColumnModel';
12
- export * from './src/model/IndexModel';
13
- export * from './src/model/TableModel';
14
- export * from './src/type/Spatial';
15
- export * from './src/type/MySql';
package/dist/index.js DELETED
@@ -1,32 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("@eggjs/tegg-types/dal"), exports);
18
- __exportStar(require("./src/decorator/Index"), exports);
19
- __exportStar(require("./src/decorator/Table"), exports);
20
- __exportStar(require("./src/decorator/Column"), exports);
21
- __exportStar(require("./src/decorator/DataSourceQualifier"), exports);
22
- __exportStar(require("./src/decorator/Dao"), exports);
23
- __exportStar(require("./src/util/ColumnInfoUtil"), exports);
24
- __exportStar(require("./src/util/IndexInfoUtil"), exports);
25
- __exportStar(require("./src/util/TableInfoUtil"), exports);
26
- __exportStar(require("./src/util/DaoInfoUtil"), exports);
27
- __exportStar(require("./src/model/ColumnModel"), exports);
28
- __exportStar(require("./src/model/IndexModel"), exports);
29
- __exportStar(require("./src/model/TableModel"), exports);
30
- __exportStar(require("./src/type/Spatial"), exports);
31
- __exportStar(require("./src/type/MySql"), exports);
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsd0RBQXNDO0FBQ3RDLHdEQUFzQztBQUN0Qyx3REFBc0M7QUFDdEMseURBQXVDO0FBQ3ZDLHNFQUFvRDtBQUNwRCxzREFBb0M7QUFFcEMsNERBQTBDO0FBQzFDLDJEQUF5QztBQUN6QywyREFBeUM7QUFDekMseURBQXVDO0FBRXZDLDBEQUF3QztBQUN4Qyx5REFBdUM7QUFDdkMseURBQXVDO0FBRXZDLHFEQUFtQztBQUNuQyxtREFBaUMifQ==
@@ -1,20 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Column = Column;
7
- const node_assert_1 = __importDefault(require("node:assert"));
8
- const ColumnInfoUtil_1 = require("../util/ColumnInfoUtil");
9
- function Column(type, params) {
10
- return function (target, propertyKey) {
11
- (0, node_assert_1.default)(typeof propertyKey === 'string', `[Column/${target.name}] expect column name be typeof string, but now is ${String(propertyKey)}`);
12
- const tableClazz = target.constructor;
13
- const columnName = propertyKey;
14
- ColumnInfoUtil_1.ColumnInfoUtil.addColumnType(tableClazz, columnName, type);
15
- if (params) {
16
- ColumnInfoUtil_1.ColumnInfoUtil.addColumnInfo(tableClazz, columnName, params);
17
- }
18
- };
19
- }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2RlY29yYXRvci9Db2x1bW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFJQSx3QkFXQztBQWZELDhEQUFpQztBQUVqQywyREFBd0Q7QUFFeEQsU0FBZ0IsTUFBTSxDQUFDLElBQXNCLEVBQUUsTUFBcUI7SUFDbEUsT0FBTyxVQUFTLE1BQVcsRUFBRSxXQUF3QjtRQUNuRCxJQUFBLHFCQUFNLEVBQUMsT0FBTyxXQUFXLEtBQUssUUFBUSxFQUNwQyxXQUFXLE1BQU0sQ0FBQyxJQUFJLHFEQUFxRCxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3BHLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFnQyxDQUFDO1FBQzNELE1BQU0sVUFBVSxHQUFHLFdBQXFCLENBQUM7UUFDekMsK0JBQWMsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzRCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsK0JBQWMsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMvRCxDQUFDO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Dao = Dao;
4
- const core_decorator_1 = require("@eggjs/core-decorator");
5
- const tegg_common_util_1 = require("@eggjs/tegg-common-util");
6
- const tegg_types_1 = require("@eggjs/tegg-types");
7
- const DaoInfoUtil_1 = require("../util/DaoInfoUtil");
8
- function Dao() {
9
- return function (constructor) {
10
- DaoInfoUtil_1.DaoInfoUtil.setIsDao(constructor);
11
- const func = (0, core_decorator_1.Prototype)({
12
- accessLevel: tegg_types_1.AccessLevel.PUBLIC,
13
- initType: tegg_types_1.ObjectInitType.SINGLETON,
14
- });
15
- func(constructor);
16
- core_decorator_1.PrototypeUtil.setFilePath(constructor, tegg_common_util_1.StackUtil.getCalleeFromStack(false, 5));
17
- };
18
- }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGFvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2RlY29yYXRvci9EYW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFNQSxrQkFVQztBQWhCRCwwREFBaUU7QUFDakUsOERBQW9EO0FBQ3BELGtEQUFnRTtBQUVoRSxxREFBa0Q7QUFFbEQsU0FBZ0IsR0FBRztJQUNqQixPQUFPLFVBQVMsV0FBOEI7UUFDNUMseUJBQVcsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEMsTUFBTSxJQUFJLEdBQUcsSUFBQSwwQkFBUyxFQUFDO1lBQ3JCLFdBQVcsRUFBRSx3QkFBVyxDQUFDLE1BQU07WUFDL0IsUUFBUSxFQUFFLDJCQUFjLENBQUMsU0FBUztTQUNuQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEIsOEJBQWEsQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLDRCQUFTLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DataSourceQualifier = DataSourceQualifier;
4
- const tegg_types_1 = require("@eggjs/tegg-types");
5
- const core_decorator_1 = require("@eggjs/core-decorator");
6
- function DataSourceQualifier(dataSourceName) {
7
- return function (target, propertyKey, parameterIndex) {
8
- core_decorator_1.QualifierUtil.addInjectQualifier(target, propertyKey, parameterIndex, tegg_types_1.DataSourceQualifierAttribute, dataSourceName);
9
- };
10
- }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0YVNvdXJjZVF1YWxpZmllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kZWNvcmF0b3IvRGF0YVNvdXJjZVF1YWxpZmllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUdBLGtEQUlDO0FBUEQsa0RBQWlFO0FBQ2pFLDBEQUFzRDtBQUV0RCxTQUFnQixtQkFBbUIsQ0FBQyxjQUFzQjtJQUN4RCxPQUFPLFVBQVMsTUFBVyxFQUFFLFdBQXdCLEVBQUUsY0FBdUI7UUFDNUUsOEJBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSx5Q0FBNEIsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUN0SCxDQUFDLENBQUM7QUFDSixDQUFDIn0=
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Index = Index;
4
- const IndexInfoUtil_1 = require("../util/IndexInfoUtil");
5
- function Index(params) {
6
- return function (constructor) {
7
- IndexInfoUtil_1.IndexInfoUtil.addIndex(constructor, params);
8
- };
9
- }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGVjb3JhdG9yL0luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBR0Esc0JBSUM7QUFORCx5REFBc0Q7QUFFdEQsU0FBZ0IsS0FBSyxDQUFDLE1BQW1CO0lBQ3ZDLE9BQU8sVUFBUyxXQUE4QjtRQUM1Qyw2QkFBYSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDOUMsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Table = Table;
4
- const core_decorator_1 = require("@eggjs/core-decorator");
5
- const tegg_common_util_1 = require("@eggjs/tegg-common-util");
6
- const tegg_types_1 = require("@eggjs/tegg-types");
7
- const TableInfoUtil_1 = require("../util/TableInfoUtil");
8
- function Table(params) {
9
- return function (constructor) {
10
- TableInfoUtil_1.TableInfoUtil.setIsTable(constructor);
11
- if (params) {
12
- TableInfoUtil_1.TableInfoUtil.setTableParams(constructor, params);
13
- }
14
- const func = (0, core_decorator_1.Prototype)({
15
- accessLevel: tegg_types_1.AccessLevel.PUBLIC,
16
- initType: tegg_types_1.ObjectInitType.ALWAYS_NEW,
17
- });
18
- func(constructor);
19
- core_decorator_1.PrototypeUtil.setFilePath(constructor, tegg_common_util_1.StackUtil.getCalleeFromStack(false, 5));
20
- };
21
- }
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGVjb3JhdG9yL1RhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBTUEsc0JBYUM7QUFuQkQsMERBQWlFO0FBQ2pFLDhEQUFvRDtBQUNwRCxrREFBZ0U7QUFFaEUseURBQXNEO0FBRXRELFNBQWdCLEtBQUssQ0FBQyxNQUFvQjtJQUN4QyxPQUFPLFVBQVMsV0FBOEI7UUFDNUMsNkJBQWEsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdEMsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNYLDZCQUFhLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBQSwwQkFBUyxFQUFDO1lBQ3JCLFdBQVcsRUFBRSx3QkFBVyxDQUFDLE1BQU07WUFDL0IsUUFBUSxFQUFFLDJCQUFjLENBQUMsVUFBVTtTQUNwQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEIsOEJBQWEsQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLDRCQUFTLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQyxDQUFDO0FBQ0osQ0FBQyJ9
@@ -1,51 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ColumnModel = void 0;
7
- const lodash_snakecase_1 = __importDefault(require("lodash.snakecase"));
8
- class ColumnModel {
9
- constructor(params) {
10
- this.columnName = params.columnName;
11
- this.propertyName = params.propertyName;
12
- this.type = params.type;
13
- this.canNull = params.canNull;
14
- this.default = params.default;
15
- this.comment = params.comment;
16
- this.visible = params.visible;
17
- this.autoIncrement = params.autoIncrement;
18
- this.uniqueKey = params.uniqueKey;
19
- this.primaryKey = params.primaryKey;
20
- this.collate = params.collate;
21
- this.columnFormat = params.columnFormat;
22
- this.engineAttribute = params.engineAttribute;
23
- this.secondaryEngineAttribute = params.secondaryEngineAttribute;
24
- }
25
- static build(property, type, params) {
26
- var _a, _b;
27
- const columnName = (_a = params === null || params === void 0 ? void 0 : params.name) !== null && _a !== void 0 ? _a : (0, lodash_snakecase_1.default)(property);
28
- let canNull = (_b = params === null || params === void 0 ? void 0 : params.canNull) !== null && _b !== void 0 ? _b : false;
29
- if (params === null || params === void 0 ? void 0 : params.primaryKey) {
30
- canNull = false;
31
- }
32
- return new ColumnModel({
33
- columnName,
34
- propertyName: property,
35
- type,
36
- canNull,
37
- default: params === null || params === void 0 ? void 0 : params.default,
38
- comment: params === null || params === void 0 ? void 0 : params.comment,
39
- visible: params === null || params === void 0 ? void 0 : params.visible,
40
- autoIncrement: params === null || params === void 0 ? void 0 : params.autoIncrement,
41
- uniqueKey: params === null || params === void 0 ? void 0 : params.uniqueKey,
42
- primaryKey: params === null || params === void 0 ? void 0 : params.primaryKey,
43
- collate: params === null || params === void 0 ? void 0 : params.collate,
44
- columnFormat: params === null || params === void 0 ? void 0 : params.columnFormat,
45
- engineAttribute: params === null || params === void 0 ? void 0 : params.engineAttribute,
46
- secondaryEngineAttribute: params === null || params === void 0 ? void 0 : params.secondaryEngineAttribute,
47
- });
48
- }
49
- }
50
- exports.ColumnModel = ColumnModel;
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29sdW1uTW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWwvQ29sdW1uTW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsd0VBQXlDO0FBR3pDLE1BQWEsV0FBVztJQWdCdEIsWUFBWSxNQWVYO1FBQ0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QyxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztRQUMxQyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUM7UUFDbEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDeEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDO1FBQzlDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUM7SUFDbEUsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBZ0IsRUFBRSxJQUFzQixFQUFFLE1BQXFCOztRQUMxRSxNQUFNLFVBQVUsR0FBRyxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxJQUFJLG1DQUFJLElBQUEsMEJBQVMsRUFBQyxRQUFRLENBQUMsQ0FBQztRQUN2RCxJQUFJLE9BQU8sR0FBRyxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxPQUFPLG1DQUFJLEtBQUssQ0FBQztRQUN2QyxJQUFJLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxVQUFVLEVBQUUsQ0FBQztZQUN2QixPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLENBQUM7UUFDRCxPQUFPLElBQUksV0FBVyxDQUFDO1lBQ3JCLFVBQVU7WUFDVixZQUFZLEVBQUUsUUFBUTtZQUN0QixJQUFJO1lBQ0osT0FBTztZQUNQLE9BQU8sRUFBRSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsT0FBTztZQUN4QixPQUFPLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE9BQU87WUFDeEIsT0FBTyxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxPQUFPO1lBQ3hCLGFBQWEsRUFBRSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsYUFBYTtZQUNwQyxTQUFTLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFNBQVM7WUFDNUIsVUFBVSxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxVQUFVO1lBQzlCLE9BQU8sRUFBRSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsT0FBTztZQUN4QixZQUFZLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFlBQVk7WUFDbEMsZUFBZSxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxlQUFlO1lBQ3hDLHdCQUF3QixFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSx3QkFBd0I7U0FDM0QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBdkVELGtDQXVFQyJ9
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IndexModel = void 0;
4
- const tegg_types_1 = require("@eggjs/tegg-types");
5
- class IndexModel {
6
- constructor(params) {
7
- this.name = params.name;
8
- this.keys = params.keys;
9
- this.type = params.type;
10
- this.storeType = params.storeType;
11
- this.comment = params.comment;
12
- this.engineAttribute = params.engineAttribute;
13
- this.secondaryEngineAttribute = params.secondaryEngineAttribute;
14
- this.parser = params.parser;
15
- }
16
- static buildIndexName(keys, type) {
17
- const prefix = type === tegg_types_1.IndexType.UNIQUE ? 'uk_' : 'idx_';
18
- return prefix + keys.join('_');
19
- }
20
- static build(params, columns, clazz) {
21
- var _a, _b;
22
- const type = (_a = params.type) !== null && _a !== void 0 ? _a : tegg_types_1.IndexType.INDEX;
23
- const keys = params.keys.map(t => {
24
- const column = columns.find(c => c.propertyName === t);
25
- if (!column) {
26
- throw new Error(`Table ${clazz.name} index configuration error: has no property named "${t}"`);
27
- }
28
- return {
29
- propertyName: column.propertyName,
30
- columnName: column.columnName,
31
- };
32
- });
33
- const name = (_b = params.name) !== null && _b !== void 0 ? _b : IndexModel.buildIndexName(keys.map(t => t.columnName), type);
34
- return new IndexModel({
35
- name,
36
- keys,
37
- type,
38
- storeType: params.storeType,
39
- comment: params.comment,
40
- engineAttribute: params.engineAttribute,
41
- secondaryEngineAttribute: params.secondaryEngineAttribute,
42
- parser: params.parser,
43
- });
44
- }
45
- }
46
- exports.IndexModel = IndexModel;
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5kZXhNb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2RlbC9JbmRleE1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGtEQUFpRTtBQVNqRSxNQUFhLFVBQVU7SUFXckIsWUFBWSxNQVNYO1FBQ0MsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUM7UUFDOUMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQztRQUNoRSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDOUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBYyxFQUFFLElBQWU7UUFDbkQsTUFBTSxNQUFNLEdBQUcsSUFBSSxLQUFLLHNCQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUMxRCxPQUFPLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQW1CLEVBQUUsT0FBc0IsRUFBRSxLQUFpQzs7UUFDekYsTUFBTSxJQUFJLEdBQUcsTUFBQSxNQUFNLENBQUMsSUFBSSxtQ0FBSSxzQkFBUyxDQUFDLEtBQUssQ0FBQztRQUM1QyxNQUFNLElBQUksR0FBb0IsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDaEQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMsU0FBUyxLQUFLLENBQUMsSUFBSSxzREFBc0QsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqRyxDQUFDO1lBQ0QsT0FBTztnQkFDTCxZQUFZLEVBQUUsTUFBTyxDQUFDLFlBQVk7Z0JBQ2xDLFVBQVUsRUFBRSxNQUFPLENBQUMsVUFBVTthQUMvQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLElBQUksR0FBRyxNQUFBLE1BQU0sQ0FBQyxJQUFJLG1DQUFJLFVBQVUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN6RixPQUFPLElBQUksVUFBVSxDQUFDO1lBQ3BCLElBQUk7WUFDSixJQUFJO1lBQ0osSUFBSTtZQUNKLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztZQUMzQixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87WUFDdkIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxlQUFlO1lBQ3ZDLHdCQUF3QixFQUFFLE1BQU0sQ0FBQyx3QkFBd0I7WUFDekQsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNO1NBQ3RCLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTVERCxnQ0E0REMifQ==
@@ -1,102 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TableModel = void 0;
7
- const node_assert_1 = __importDefault(require("node:assert"));
8
- const pluralize_1 = __importDefault(require("pluralize"));
9
- const lodash_snakecase_1 = __importDefault(require("lodash.snakecase"));
10
- const tegg_types_1 = require("@eggjs/tegg-types");
11
- const ColumnModel_1 = require("./ColumnModel");
12
- const IndexModel_1 = require("./IndexModel");
13
- const TableInfoUtil_1 = require("../util/TableInfoUtil");
14
- const ColumnInfoUtil_1 = require("../util/ColumnInfoUtil");
15
- const IndexInfoUtil_1 = require("../util/IndexInfoUtil");
16
- class TableModel {
17
- constructor(params) {
18
- this.clazz = params.clazz;
19
- this.name = params.name;
20
- this.dataSourceName = params.dataSourceName;
21
- this.columns = params.columns;
22
- this.indices = params.indices;
23
- this.comment = params.comment;
24
- this.autoExtendSize = params.autoExtendSize;
25
- this.autoIncrement = params.autoIncrement;
26
- this.avgRowLength = params.avgRowLength;
27
- this.characterSet = params.characterSet;
28
- this.collate = params.collate;
29
- this.compression = params.compression;
30
- this.encryption = params.encryption;
31
- this.engine = params.engine;
32
- this.engineAttribute = params.engineAttribute;
33
- this.insertMethod = params.insertMethod;
34
- this.keyBlockSize = params.keyBlockSize;
35
- this.maxRows = params.maxRows;
36
- this.minRows = params.minRows;
37
- this.rowFormat = params.rowFormat;
38
- this.secondaryEngineAttribute = params.secondaryEngineAttribute;
39
- }
40
- getPrimary() {
41
- const index = this.indices.find(t => t.type === tegg_types_1.IndexType.PRIMARY);
42
- if (index) {
43
- return index;
44
- }
45
- const primaryColumn = this.columns.filter(t => t.primaryKey === true);
46
- return new IndexModel_1.IndexModel({
47
- name: 'PRIMARY',
48
- type: tegg_types_1.IndexType.PRIMARY,
49
- keys: primaryColumn.map(t => {
50
- return {
51
- columnName: t.columnName,
52
- propertyName: t.propertyName,
53
- };
54
- }),
55
- });
56
- }
57
- static build(clazz) {
58
- var _a, _b;
59
- const params = TableInfoUtil_1.TableInfoUtil.getTableParams(clazz);
60
- const name = (_a = params === null || params === void 0 ? void 0 : params.name) !== null && _a !== void 0 ? _a : (0, lodash_snakecase_1.default)((0, pluralize_1.default)(clazz.name));
61
- const columnInfoMap = ColumnInfoUtil_1.ColumnInfoUtil.getColumnInfoMap(clazz);
62
- const columnTypeMap = ColumnInfoUtil_1.ColumnInfoUtil.getColumnTypeMap(clazz);
63
- const dataSourceName = (_b = params === null || params === void 0 ? void 0 : params.dataSourceName) !== null && _b !== void 0 ? _b : 'default';
64
- (0, node_assert_1.default)(TableInfoUtil_1.TableInfoUtil.getIsTable(clazz), `${name} is not Table`);
65
- (0, node_assert_1.default)(columnTypeMap, `${name} has no columns`);
66
- const columns = [];
67
- const indices = [];
68
- for (const [property, columnType] of columnTypeMap === null || columnTypeMap === void 0 ? void 0 : columnTypeMap.entries()) {
69
- const columnParam = columnInfoMap === null || columnInfoMap === void 0 ? void 0 : columnInfoMap.get(property);
70
- columns.push(ColumnModel_1.ColumnModel.build(property, columnType, columnParam));
71
- }
72
- const indexList = IndexInfoUtil_1.IndexInfoUtil.getIndexList(clazz);
73
- for (const index of indexList) {
74
- indices.push(IndexModel_1.IndexModel.build(index, columns, clazz));
75
- }
76
- return new TableModel({
77
- clazz,
78
- name,
79
- columns,
80
- indices,
81
- dataSourceName,
82
- comment: params === null || params === void 0 ? void 0 : params.comment,
83
- autoExtendSize: params === null || params === void 0 ? void 0 : params.autoExtendSize,
84
- autoIncrement: params === null || params === void 0 ? void 0 : params.autoIncrement,
85
- avgRowLength: params === null || params === void 0 ? void 0 : params.avgRowLength,
86
- characterSet: params === null || params === void 0 ? void 0 : params.characterSet,
87
- collate: params === null || params === void 0 ? void 0 : params.collate,
88
- compression: params === null || params === void 0 ? void 0 : params.compression,
89
- encryption: params === null || params === void 0 ? void 0 : params.encryption,
90
- engine: params === null || params === void 0 ? void 0 : params.engine,
91
- engineAttribute: params === null || params === void 0 ? void 0 : params.engineAttribute,
92
- insertMethod: params === null || params === void 0 ? void 0 : params.insertMethod,
93
- keyBlockSize: params === null || params === void 0 ? void 0 : params.keyBlockSize,
94
- maxRows: params === null || params === void 0 ? void 0 : params.maxRows,
95
- minRows: params === null || params === void 0 ? void 0 : params.minRows,
96
- rowFormat: params === null || params === void 0 ? void 0 : params.rowFormat,
97
- secondaryEngineAttribute: params === null || params === void 0 ? void 0 : params.secondaryEngineAttribute,
98
- });
99
- }
100
- }
101
- exports.TableModel = TableModel;
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVNb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2RlbC9UYWJsZU1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDhEQUFpQztBQUNqQywwREFBa0M7QUFDbEMsd0VBQXlDO0FBQ3pDLGtEQUE4QztBQUU5QywrQ0FBNEM7QUFDNUMsNkNBQTBDO0FBQzFDLHlEQUFzRDtBQUN0RCwyREFBd0Q7QUFDeEQseURBQXNEO0FBRXRELE1BQWEsVUFBVTtJQXVCckIsWUFBWSxNQXNCWDtRQUNDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDO1FBQzVDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQztRQUM1QyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7UUFDMUMsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNwQyxJQUFJLENBQUMsTUFBTSxHQUFH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
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXlTcWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHlwZS9NeVNxbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SpatialHelper = void 0;
4
- const tegg_types_1 = require("@eggjs/tegg-types");
5
- class SpatialHelper {
6
- static isPoint(t) {
7
- return typeof Reflect.get(t, 'x') === 'number' && typeof Reflect.get(t, 'y') === 'number';
8
- }
9
- static isLine(t) {
10
- return Array.isArray(t) && t[0] && SpatialHelper.isPoint(t[0]);
11
- }
12
- static isPolygon(t) {
13
- return Array.isArray(t) && t[0] && SpatialHelper.isLine(t[0]);
14
- }
15
- static getGeometryType(t) {
16
- if (SpatialHelper.isPoint(t)) {
17
- return tegg_types_1.ColumnType.POINT;
18
- }
19
- else if (SpatialHelper.isLine(t)) {
20
- return tegg_types_1.ColumnType.LINESTRING;
21
- }
22
- return tegg_types_1.ColumnType.POLYGON;
23
- }
24
- static isMultiPoint(t) {
25
- return Array.isArray(t) && t[0] && SpatialHelper.isPoint(t[0]);
26
- }
27
- static isMultiLine(t) {
28
- return Array.isArray(t) && t[0] && SpatialHelper.isLine(t[0]);
29
- }
30
- static isMultiPolygon(t) {
31
- return Array.isArray(t) && t[0] && SpatialHelper.isPolygon(t[0]);
32
- }
33
- }
34
- exports.SpatialHelper = SpatialHelper;
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3BhdGlhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlL1NwYXRpYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsa0RBQStDO0FBRy9DLE1BQWEsYUFBYTtJQUN4QixNQUFNLENBQUMsT0FBTyxDQUFDLENBQVc7UUFDeEIsT0FBTyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxLQUFLLFFBQVEsSUFBSSxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxLQUFLLFFBQVEsQ0FBQztJQUM1RixDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFXO1FBQ3ZCLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFXO1FBQzFCLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFXO1FBQ2hDLElBQUksYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzdCLE9BQU8sdUJBQVUsQ0FBQyxLQUFLLENBQUM7UUFDMUIsQ0FBQzthQUFNLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ25DLE9BQU8sdUJBQVUsQ0FBQyxVQUFVLENBQUM7UUFDL0IsQ0FBQztRQUNELE9BQU8sdUJBQVUsQ0FBQyxPQUFPLENBQUM7SUFFNUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBcUI7UUFDdkMsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVyxDQUFDLENBQXFCO1FBQ3RDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFxQjtRQUN6QyxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGO0FBbENELHNDQWtDQyJ9
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ColumnInfoUtil = void 0;
4
- const tegg_types_1 = require("@eggjs/tegg-types");
5
- const core_decorator_1 = require("@eggjs/core-decorator");
6
- class ColumnInfoUtil {
7
- static addColumnInfo(clazz, property, column) {
8
- const columnInfoMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.DAL_COLUMN_INFO_MAP, clazz, new Map());
9
- columnInfoMap.set(property, column);
10
- }
11
- static addColumnType(clazz, property, type) {
12
- const columnInfoMap = core_decorator_1.MetadataUtil.initOwnMapMetaData(tegg_types_1.DAL_COLUMN_TYPE_MAP, clazz, new Map());
13
- columnInfoMap.set(property, type);
14
- }
15
- static getColumnInfoMap(clazz) {
16
- return core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.DAL_COLUMN_INFO_MAP, clazz);
17
- }
18
- static getColumnTypeMap(clazz) {
19
- return core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.DAL_COLUMN_TYPE_MAP, clazz);
20
- }
21
- }
22
- exports.ColumnInfoUtil = ColumnInfoUtil;
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29sdW1uSW5mb1V0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbC9Db2x1bW5JbmZvVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxrREFBNkU7QUFFN0UsMERBQXFEO0FBS3JELE1BQWEsY0FBYztJQUN6QixNQUFNLENBQUMsYUFBYSxDQUFDLEtBQXdCLEVBQUUsUUFBZ0IsRUFBRSxNQUFzQjtRQUNyRixNQUFNLGFBQWEsR0FBRyw2QkFBWSxDQUFDLGtCQUFrQixDQUFDLGdDQUFtQixFQUFFLEtBQUssRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDN0YsYUFBYSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBd0IsRUFBRSxRQUFnQixFQUFFLElBQXNCO1FBQ3JGLE1BQU0sYUFBYSxHQUFHLDZCQUFZLENBQUMsa0JBQWtCLENBQUMsZ0NBQW1CLEVBQUUsS0FBSyxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztRQUM3RixhQUFhLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEtBQXdCO1FBQzlDLE9BQU8sNkJBQVksQ0FBQyxXQUFXLENBQUMsZ0NBQW1CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUF3QjtRQUM5QyxPQUFPLDZCQUFZLENBQUMsV0FBVyxDQUFDLGdDQUFtQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELENBQUM7Q0FDRjtBQWxCRCx3Q0FrQkMifQ==
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DaoInfoUtil = void 0;
4
- const tegg_types_1 = require("@eggjs/tegg-types");
5
- const core_decorator_1 = require("@eggjs/core-decorator");
6
- class DaoInfoUtil {
7
- static setIsDao(clazz) {
8
- core_decorator_1.MetadataUtil.defineMetaData(tegg_types_1.DAL_IS_DAO, true, clazz);
9
- }
10
- static getIsDao(clazz) {
11
- return core_decorator_1.MetadataUtil.getOwnMetaData(tegg_types_1.DAL_IS_DAO, clazz) === true;
12
- }
13
- }
14
- exports.DaoInfoUtil = DaoInfoUtil;
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGFvSW5mb1V0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbC9EYW9JbmZvVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxrREFBNEQ7QUFFNUQsMERBQXFEO0FBRXJELE1BQWEsV0FBVztJQUN0QixNQUFNLENBQUMsUUFBUSxDQUFDLEtBQXdCO1FBQ3RDLDZCQUFZLENBQUMsY0FBYyxDQUFDLHVCQUFVLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQXdCO1FBQ3RDLE9BQU8sNkJBQVksQ0FBQyxjQUFjLENBQUMsdUJBQVUsRUFBRSxLQUFLLENBQUMsS0FBSyxJQUFJLENBQUM7SUFDakUsQ0FBQztDQUNGO0FBUkQsa0NBUUMifQ==
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IndexInfoUtil = void 0;
4
- const tegg_types_1 = require("@eggjs/tegg-types");
5
- const core_decorator_1 = require("@eggjs/core-decorator");
6
- class IndexInfoUtil {
7
- static addIndex(clazz, index) {
8
- const indexList = core_decorator_1.MetadataUtil.initOwnArrayMetaData(tegg_types_1.DAL_INDEX_LIST, clazz, []);
9
- indexList.push(index);
10
- }
11
- static getIndexList(clazz) {
12
- return core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.DAL_INDEX_LIST, clazz) || [];
13
- }
14
- }
15
- exports.IndexInfoUtil = IndexInfoUtil;
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5kZXhJbmZvVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlsL0luZGV4SW5mb1V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsa0RBQW1EO0FBRW5ELDBEQUFxRDtBQUVyRCxNQUFhLGFBQWE7SUFDeEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUF3QixFQUFFLEtBQWtCO1FBQzFELE1BQU0sU0FBUyxHQUF1Qiw2QkFBWSxDQUFDLG9CQUFvQixDQUFDLDJCQUFjLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25HLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBd0I7UUFDMUMsT0FBTyw2QkFBWSxDQUFDLFdBQVcsQ0FBQywyQkFBYyxFQUFFLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvRCxDQUFDO0NBQ0Y7QUFURCxzQ0FTQyJ9
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TableInfoUtil = exports.TABLE_CLAZZ_LIST = void 0;
4
- const tegg_types_1 = require("@eggjs/tegg-types");
5
- const core_decorator_1 = require("@eggjs/core-decorator");
6
- exports.TABLE_CLAZZ_LIST = [];
7
- class TableInfoUtil {
8
- static setIsTable(clazz) {
9
- exports.TABLE_CLAZZ_LIST.push(clazz);
10
- core_decorator_1.MetadataUtil.defineMetaData(tegg_types_1.DAL_IS_TABLE, true, clazz);
11
- }
12
- // TODO del
13
- static getClazzList() {
14
- return exports.TABLE_CLAZZ_LIST;
15
- }
16
- static getIsTable(clazz) {
17
- return core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.DAL_IS_TABLE, clazz) === true;
18
- }
19
- static setTableParams(clazz, params) {
20
- core_decorator_1.MetadataUtil.defineMetaData(tegg_types_1.DAL_TABLE_PARAMS, params, clazz);
21
- }
22
- static getTableParams(clazz) {
23
- return core_decorator_1.MetadataUtil.getMetaData(tegg_types_1.DAL_TABLE_PARAMS, clazz);
24
- }
25
- }
26
- exports.TableInfoUtil = TableInfoUtil;
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVJbmZvVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlsL1RhYmxlSW5mb1V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsa0RBQW1FO0FBRW5FLDBEQUFxRDtBQUV4QyxRQUFBLGdCQUFnQixHQUE2QixFQUFFLENBQUM7QUFFN0QsTUFBYSxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBd0I7UUFDeEMsd0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLDZCQUFZLENBQUMsY0FBYyxDQUFDLHlCQUFZLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxXQUFXO0lBQ1gsTUFBTSxDQUFDLFlBQVk7UUFDakIsT0FBTyx3QkFBZ0IsQ0FBQztJQUMxQixDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUF3QjtRQUN4QyxPQUFPLDZCQUFZLENBQUMsV0FBVyxDQUFDLHlCQUFZLEVBQUUsS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDO0lBQ2hFLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQXdCLEVBQUUsTUFBbUI7UUFDakUsNkJBQVksQ0FBQyxjQUFjLENBQUMsNkJBQWdCLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQXdCO1FBQzVDLE9BQU8sNkJBQVksQ0FBQyxXQUFXLENBQUMsNkJBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0QsQ0FBQztDQUNGO0FBdEJELHNDQXNCQyJ9
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes