@eggjs/dal-runtime 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/BaseSqlMap.d.ts +14 -17
- package/dist/BaseSqlMap.js +229 -172
- package/dist/CodeGenerator.d.ts +13 -16
- package/dist/CodeGenerator.js +138 -113
- package/dist/DaoLoader.d.ts +3 -7
- package/dist/DaoLoader.js +14 -16
- package/dist/DataSource.d.ts +26 -30
- package/dist/DataSource.js +80 -70
- package/dist/DatabaseForker.d.ts +11 -15
- package/dist/DatabaseForker.js +49 -46
- package/dist/MySqlDataSource.d.ts +21 -25
- package/dist/MySqlDataSource.js +60 -46
- package/dist/NunjucksConverter.d.ts +72 -75
- package/dist/NunjucksConverter.js +93 -90
- package/dist/NunjucksUtil.d.ts +4 -8
- package/dist/NunjucksUtil.js +65 -55
- package/dist/SqlGenerator.d.ts +8 -12
- package/dist/SqlGenerator.js +392 -224
- package/dist/SqlMapLoader.d.ts +9 -13
- package/dist/SqlMapLoader.js +18 -20
- package/dist/SqlUtil.d.ts +2 -5
- package/dist/SqlUtil.js +213 -185
- package/dist/TableModelInstanceBuilder.d.ts +5 -9
- package/dist/TableModelInstanceBuilder.js +23 -25
- package/dist/TableSqlMap.d.ts +18 -17
- package/dist/TableSqlMap.js +90 -79
- package/dist/TemplateUtil.d.ts +18 -21
- package/dist/TemplateUtil.js +85 -77
- package/dist/index.d.ts +15 -15
- package/dist/index.js +16 -16
- package/package.json +6 -6
package/dist/SqlMapLoader.d.ts
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
constructor(tableModel: TableModel, baseDaoClazz: BaseDaoType, logger: Logger);
|
|
11
|
-
load(): TableSqlMap;
|
|
1
|
+
import { type BaseDaoType, TableModel } from '@eggjs/dal-decorator';
|
|
2
|
+
import type { Logger } from '@eggjs/tegg-types';
|
|
3
|
+
import { TableSqlMap } from './TableSqlMap.ts';
|
|
4
|
+
export declare class SqlMapLoader {
|
|
5
|
+
private readonly logger;
|
|
6
|
+
private readonly tableModel;
|
|
7
|
+
private readonly clazzExtension;
|
|
8
|
+
constructor(tableModel: TableModel, baseDaoClazz: BaseDaoType, logger: Logger);
|
|
9
|
+
load(): TableSqlMap;
|
|
12
10
|
}
|
|
13
|
-
//#endregion
|
|
14
|
-
export { SqlMapLoader };
|
package/dist/SqlMapLoader.js
CHANGED
|
@@ -1,22 +1,20 @@
|
|
|
1
|
+
import { TableModel } from '@eggjs/dal-decorator';
|
|
1
2
|
import { BaseSqlMapGenerator } from "./BaseSqlMap.js";
|
|
2
3
|
import { TableSqlMap } from "./TableSqlMap.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
//#endregion
|
|
22
|
-
export { SqlMapLoader };
|
|
4
|
+
export class SqlMapLoader {
|
|
5
|
+
constructor(tableModel, baseDaoClazz, logger) {
|
|
6
|
+
this.clazzExtension = baseDaoClazz.clazzExtension;
|
|
7
|
+
this.logger = logger;
|
|
8
|
+
this.tableModel = tableModel;
|
|
9
|
+
}
|
|
10
|
+
load() {
|
|
11
|
+
const baseSqlMapGenerator = new BaseSqlMapGenerator(this.tableModel, this.logger);
|
|
12
|
+
const baseSqlMap = baseSqlMapGenerator.load();
|
|
13
|
+
const sqlMap = {
|
|
14
|
+
...baseSqlMap,
|
|
15
|
+
...this.clazzExtension,
|
|
16
|
+
};
|
|
17
|
+
return new TableSqlMap(this.tableModel.clazz.name, sqlMap);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3FsTWFwTG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NxbE1hcExvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUvQyxNQUFNLE9BQU8sWUFBWTtJQUt2QixZQUFZLFVBQXNCLEVBQUUsWUFBeUIsRUFBRSxNQUFjO1FBQzNFLElBQUksQ0FBQyxjQUFjLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FBQztRQUNsRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSTtRQUNGLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsRixNQUFNLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM5QyxNQUFNLE1BQU0sR0FBRztZQUNiLEdBQUcsVUFBVTtZQUNiLEdBQUcsSUFBSSxDQUFDLGNBQWM7U0FDdkIsQ0FBQztRQUNGLE9BQU8sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzdELENBQUM7Q0FDRiJ9
|
package/dist/SqlUtil.d.ts
CHANGED
package/dist/SqlUtil.js
CHANGED
|
@@ -1,193 +1,221 @@
|
|
|
1
|
-
//#region src/SqlUtil.ts
|
|
2
1
|
function isWhiteChar(ch) {
|
|
3
|
-
|
|
2
|
+
return ch === ' ' || ch === '\n' || ch === '\r' || ch === '\t';
|
|
4
3
|
}
|
|
5
|
-
const COMMENT_CHARS =
|
|
4
|
+
const COMMENT_CHARS = '-#/';
|
|
6
5
|
const MUL_CHAR_LEADING_COMMENT_FIRST_CHAR = {
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
MAY_BE_FIRST_COMMENT: '-',
|
|
7
|
+
MAY_BE_FIRST_BLOCK_COMMENT: '/',
|
|
9
8
|
};
|
|
10
9
|
const MUL_CHAR_LEADING_COMMENT_VERIFIER = {
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
MAY_BE_FIRST_COMMENT: '-',
|
|
11
|
+
MAY_BE_FIRST_BLOCK_COMMENT: '*',
|
|
13
12
|
};
|
|
14
13
|
const MUL_CHAR_LEADING_COMMENT_NEXT_STATE = {
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
MAY_BE_FIRST_COMMENT: 'IN_COMMENT_WAIT_HINT',
|
|
15
|
+
MAY_BE_FIRST_BLOCK_COMMENT: 'IN_BLOCK_COMMENT_WAIT_HINT',
|
|
17
16
|
};
|
|
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
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
17
|
+
export class SqlUtil {
|
|
18
|
+
static minify(sql) {
|
|
19
|
+
let ret = '';
|
|
20
|
+
let state = 'START';
|
|
21
|
+
let tempNextState;
|
|
22
|
+
for (let i = 0; i < sql.length; i++) {
|
|
23
|
+
const ch = sql[i];
|
|
24
|
+
switch (state) {
|
|
25
|
+
case 'MAY_BE_FIRST_COMMENT':
|
|
26
|
+
case 'MAY_BE_FIRST_BLOCK_COMMENT':
|
|
27
|
+
switch (ch) {
|
|
28
|
+
case '"':
|
|
29
|
+
tempNextState = 'DOUBLE_QUOTE';
|
|
30
|
+
break;
|
|
31
|
+
case '\'':
|
|
32
|
+
tempNextState = 'SINGLE_QUOTE';
|
|
33
|
+
break;
|
|
34
|
+
case MUL_CHAR_LEADING_COMMENT_VERIFIER[state]:
|
|
35
|
+
tempNextState = MUL_CHAR_LEADING_COMMENT_NEXT_STATE[state];
|
|
36
|
+
break;
|
|
37
|
+
default:
|
|
38
|
+
tempNextState = 'CONTENT';
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
if (ch !== MUL_CHAR_LEADING_COMMENT_VERIFIER[state]) {
|
|
42
|
+
ret += `${MUL_CHAR_LEADING_COMMENT_FIRST_CHAR[state]}${ch}`;
|
|
43
|
+
}
|
|
44
|
+
state = tempNextState;
|
|
45
|
+
break;
|
|
46
|
+
case 'IN_COMMENT_WAIT_HINT':
|
|
47
|
+
if (ch !== '+') {
|
|
48
|
+
state = 'IN_COMMENT';
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
state = 'IN_COMMENT_HINT';
|
|
52
|
+
ret += '--+';
|
|
53
|
+
}
|
|
54
|
+
break;
|
|
55
|
+
case 'IN_BLOCK_COMMENT_WAIT_HINT':
|
|
56
|
+
if (ch !== '+') {
|
|
57
|
+
state = 'IN_BLOCK_COMMENT';
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
state = 'IN_BLOCK_COMMENT_HINT';
|
|
61
|
+
ret += '/*+';
|
|
62
|
+
}
|
|
63
|
+
break;
|
|
64
|
+
case 'MAY_BE_LAST_BLOCK_COMMENT':
|
|
65
|
+
if (ch === '/') {
|
|
66
|
+
if (ret && !isWhiteChar(ret[ret.length - 1]))
|
|
67
|
+
ret += ' ';
|
|
68
|
+
state = 'IN_SPACE';
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
state = 'IN_BLOCK_COMMENT';
|
|
72
|
+
}
|
|
73
|
+
break;
|
|
74
|
+
case 'MAY_BE_LAST_BLOCK_COMMENT_HINT':
|
|
75
|
+
ret += ch;
|
|
76
|
+
if (ch === '/') {
|
|
77
|
+
state = 'IN_SPACE';
|
|
78
|
+
if (isWhiteChar(sql[i + 1]))
|
|
79
|
+
ret += sql[i + 1];
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
state = 'IN_BLOCK_COMMENT_HINT';
|
|
83
|
+
}
|
|
84
|
+
break;
|
|
85
|
+
case 'IN_COMMENT':
|
|
86
|
+
if (ch === '\n' || ch === '\r') {
|
|
87
|
+
if (ret && !isWhiteChar(ret[ret.length - 1]))
|
|
88
|
+
ret += ' ';
|
|
89
|
+
state = 'IN_SPACE';
|
|
90
|
+
}
|
|
91
|
+
break;
|
|
92
|
+
case 'IN_COMMENT_HINT':
|
|
93
|
+
ret += ch;
|
|
94
|
+
if (ch === '\n' || ch === '\r') {
|
|
95
|
+
state = 'IN_SPACE';
|
|
96
|
+
}
|
|
97
|
+
break;
|
|
98
|
+
case 'IN_BLOCK_COMMENT':
|
|
99
|
+
if (ch === '*') {
|
|
100
|
+
state = 'MAY_BE_LAST_BLOCK_COMMENT';
|
|
101
|
+
}
|
|
102
|
+
break;
|
|
103
|
+
case 'IN_BLOCK_COMMENT_HINT':
|
|
104
|
+
ret += ch;
|
|
105
|
+
if (ch === '*') {
|
|
106
|
+
state = 'MAY_BE_LAST_BLOCK_COMMENT_HINT';
|
|
107
|
+
}
|
|
108
|
+
break;
|
|
109
|
+
case 'START':
|
|
110
|
+
if (isWhiteChar(ch))
|
|
111
|
+
continue;
|
|
112
|
+
switch (ch) {
|
|
113
|
+
case '"':
|
|
114
|
+
state = 'DOUBLE_QUOTE';
|
|
115
|
+
break;
|
|
116
|
+
case '\'':
|
|
117
|
+
state = 'SINGLE_QUOTE';
|
|
118
|
+
break;
|
|
119
|
+
case '-':
|
|
120
|
+
state = 'MAY_BE_FIRST_COMMENT';
|
|
121
|
+
break;
|
|
122
|
+
case '#':
|
|
123
|
+
state = 'IN_COMMENT';
|
|
124
|
+
break;
|
|
125
|
+
case '/':
|
|
126
|
+
state = 'MAY_BE_FIRST_BLOCK_COMMENT';
|
|
127
|
+
break;
|
|
128
|
+
default:
|
|
129
|
+
state = 'CONTENT';
|
|
130
|
+
break;
|
|
131
|
+
}
|
|
132
|
+
if (!COMMENT_CHARS.includes(ch))
|
|
133
|
+
ret += ch;
|
|
134
|
+
break;
|
|
135
|
+
case 'DOUBLE_QUOTE':
|
|
136
|
+
case 'SINGLE_QUOTE':
|
|
137
|
+
switch (ch) {
|
|
138
|
+
case '\\':
|
|
139
|
+
state = `BACKSLASH_AFTER_${state}`;
|
|
140
|
+
break;
|
|
141
|
+
case '\'':
|
|
142
|
+
if (state === 'SINGLE_QUOTE') {
|
|
143
|
+
state = 'QUOTE_DONE';
|
|
144
|
+
}
|
|
145
|
+
break;
|
|
146
|
+
case '"':
|
|
147
|
+
if (state === 'DOUBLE_QUOTE') {
|
|
148
|
+
state = 'QUOTE_DONE';
|
|
149
|
+
}
|
|
150
|
+
break;
|
|
151
|
+
default: break;
|
|
152
|
+
}
|
|
153
|
+
ret += ch;
|
|
154
|
+
break;
|
|
155
|
+
case 'BACKSLASH_AFTER_SINGLE_QUOTE':
|
|
156
|
+
case 'BACKSLASH_AFTER_DOUBLE_QUOTE':
|
|
157
|
+
ret += ch;
|
|
158
|
+
state = state.substr(16);
|
|
159
|
+
break;
|
|
160
|
+
case 'QUOTE_DONE':
|
|
161
|
+
case 'CONTENT':
|
|
162
|
+
switch (ch) {
|
|
163
|
+
case '\'':
|
|
164
|
+
state = 'SINGLE_QUOTE';
|
|
165
|
+
break;
|
|
166
|
+
case '"':
|
|
167
|
+
state = 'DOUBLE_QUOTE';
|
|
168
|
+
break;
|
|
169
|
+
case '-':
|
|
170
|
+
state = 'MAY_BE_FIRST_COMMENT';
|
|
171
|
+
break;
|
|
172
|
+
case '#':
|
|
173
|
+
state = 'IN_COMMENT';
|
|
174
|
+
break;
|
|
175
|
+
case '/':
|
|
176
|
+
state = 'MAY_BE_FIRST_BLOCK_COMMENT';
|
|
177
|
+
break;
|
|
178
|
+
default:
|
|
179
|
+
if (isWhiteChar(ch)) {
|
|
180
|
+
state = 'IN_SPACE';
|
|
181
|
+
ret += ' ';
|
|
182
|
+
continue;
|
|
183
|
+
}
|
|
184
|
+
state = 'CONTENT';
|
|
185
|
+
}
|
|
186
|
+
if (!COMMENT_CHARS.includes(ch))
|
|
187
|
+
ret += ch;
|
|
188
|
+
break;
|
|
189
|
+
case 'IN_SPACE':
|
|
190
|
+
switch (ch) {
|
|
191
|
+
case '\'':
|
|
192
|
+
state = 'SINGLE_QUOTE';
|
|
193
|
+
break;
|
|
194
|
+
case '"':
|
|
195
|
+
state = 'DOUBLE_QUOTE';
|
|
196
|
+
break;
|
|
197
|
+
case '-':
|
|
198
|
+
state = 'MAY_BE_FIRST_COMMENT';
|
|
199
|
+
break;
|
|
200
|
+
case '#':
|
|
201
|
+
state = 'IN_COMMENT';
|
|
202
|
+
break;
|
|
203
|
+
case '/':
|
|
204
|
+
state = 'MAY_BE_FIRST_BLOCK_COMMENT';
|
|
205
|
+
break;
|
|
206
|
+
default:
|
|
207
|
+
if (isWhiteChar(ch))
|
|
208
|
+
continue;
|
|
209
|
+
state = 'CONTENT';
|
|
210
|
+
}
|
|
211
|
+
if (!COMMENT_CHARS.includes(ch))
|
|
212
|
+
ret += ch;
|
|
213
|
+
break;
|
|
214
|
+
default:
|
|
215
|
+
throw new Error('Unexpected state machine while minifying SQL.');
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
return ret.trim();
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3FsVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9TcWxVdGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFNBQVMsV0FBVyxDQUFDLEVBQVU7SUFDN0IsT0FBTyxFQUFFLEtBQUssR0FBRyxJQUFJLEVBQUUsS0FBSyxJQUFJLElBQUksRUFBRSxLQUFLLElBQUksSUFBSSxFQUFFLEtBQUssSUFBSSxDQUFDO0FBQ2pFLENBQUM7QUFFRCxNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUM7QUFDNUIsTUFBTSxtQ0FBbUMsR0FBRztJQUMxQyxvQkFBb0IsRUFBRSxHQUFHO0lBQ3pCLDBCQUEwQixFQUFFLEdBQUc7Q0FDaEMsQ0FBQztBQUNGLE1BQU0saUNBQWlDLEdBQUc7SUFDeEMsb0JBQW9CLEVBQUUsR0FBRztJQUN6QiwwQkFBMEIsRUFBRSxHQUFHO0NBQ2hDLENBQUM7QUFDRixNQUFNLG1DQUFtQyxHQUFHO0lBQzFDLG9CQUFvQixFQUFFLHNCQUFzQjtJQUM1QywwQkFBMEIsRUFBRSw0QkFBNEI7Q0FDekQsQ0FBQztBQUVGLE1BQU0sT0FBTyxPQUFPO0lBQ2xCLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBVztRQUN2QixJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUM7UUFFYixJQUFJLEtBQUssR0FBRyxPQUFPLENBQUM7UUFDcEIsSUFBSSxhQUFhLENBQUM7UUFDbEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNwQyxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbEIsUUFBUSxLQUFLLEVBQUUsQ0FBQztnQkFDZCxLQUFLLHNCQUFzQixDQUFDO2dCQUM1QixLQUFLLDRCQUE0QjtvQkFDL0IsUUFBUSxFQUFFLEVBQUUsQ0FBQzt3QkFDWCxLQUFLLEdBQUc7NEJBQUUsYUFBYSxHQUFHLGNBQWMs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
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import { TableModel } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static buildInstance<T>(tableModel: TableModel<T>, row: Record<string, any>): any;
|
|
7
|
-
static buildRow<T extends object>(instance: T, tableModel: TableModel<T>): any;
|
|
1
|
+
import { TableModel } from '@eggjs/dal-decorator';
|
|
2
|
+
export declare class TableModelInstanceBuilder {
|
|
3
|
+
constructor(tableModel: TableModel, row: Record<string, any>);
|
|
4
|
+
static buildInstance<T>(tableModel: TableModel<T>, row: Record<string, any>): any;
|
|
5
|
+
static buildRow<T extends object>(instance: T, tableModel: TableModel<T>): any;
|
|
8
6
|
}
|
|
9
|
-
//#endregion
|
|
10
|
-
export { TableModelInstanceBuilder };
|
|
@@ -1,25 +1,23 @@
|
|
|
1
|
-
import { TableModel } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
//#endregion
|
|
25
|
-
export { TableModelInstanceBuilder };
|
|
1
|
+
import { TableModel } from '@eggjs/dal-decorator';
|
|
2
|
+
export class TableModelInstanceBuilder {
|
|
3
|
+
constructor(tableModel, row) {
|
|
4
|
+
for (const [key, value] of Object.entries(row)) {
|
|
5
|
+
const column = tableModel.columns.find(t => t.columnName === key);
|
|
6
|
+
Reflect.set(this, column?.propertyName ?? key, value);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
static buildInstance(tableModel, row) {
|
|
10
|
+
return Reflect.construct(TableModelInstanceBuilder, [tableModel, row], tableModel.clazz);
|
|
11
|
+
}
|
|
12
|
+
static buildRow(instance, tableModel) {
|
|
13
|
+
const result = {};
|
|
14
|
+
for (const column of tableModel.columns) {
|
|
15
|
+
const columnValue = Reflect.get(instance, column.propertyName);
|
|
16
|
+
if (typeof columnValue !== 'undefined') {
|
|
17
|
+
result[`$${column.propertyName}`] = columnValue;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return result;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVNb2RlbEluc3RhbmNlQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9UYWJsZU1vZGVsSW5zdGFuY2VCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVsRCxNQUFNLE9BQU8seUJBQXlCO0lBQ3BDLFlBQVksVUFBc0IsRUFBRSxHQUF3QjtRQUMxRCxLQUFLLE1BQU0sQ0FBRSxHQUFHLEVBQUUsS0FBSyxDQUFFLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ2pELE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsS0FBSyxHQUFHLENBQUMsQ0FBQztZQUNsRSxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsWUFBWSxJQUFJLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN4RCxDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUksVUFBeUIsRUFBRSxHQUF3QjtRQUN6RSxPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMseUJBQXlCLEVBQUUsQ0FBRSxVQUFVLEVBQUUsR0FBRyxDQUFFLEVBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdGLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFtQixRQUFXLEVBQUUsVUFBeUI7UUFDdEUsTUFBTSxNQUFNLEdBQVEsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssTUFBTSxNQUFNLElBQUksVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3hDLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUMvRCxJQUFJLE9BQU8sV0FBVyxLQUFLLFdBQVcsRUFBRSxDQUFDO2dCQUN2QyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUMsR0FBRyxXQUFXLENBQUM7WUFDbEQsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0YifQ==
|
package/dist/TableSqlMap.d.ts
CHANGED
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { Template } from 'nunjucks';
|
|
2
|
+
import { SqlType } from '@eggjs/tegg-types';
|
|
3
|
+
import type { SqlMap } from '@eggjs/tegg-types';
|
|
4
|
+
export interface SqlGenerator {
|
|
5
|
+
type: SqlType;
|
|
6
|
+
template: Template;
|
|
7
|
+
raw: string;
|
|
8
|
+
}
|
|
9
|
+
export declare class TableSqlMap {
|
|
10
|
+
#private;
|
|
11
|
+
readonly name: string;
|
|
12
|
+
private readonly map;
|
|
13
|
+
private readonly blocks;
|
|
14
|
+
private readonly sqlGenerator;
|
|
15
|
+
constructor(name: string, map: Record<string, SqlMap>);
|
|
16
|
+
generate(name: string, data: object, timezone: string): string;
|
|
17
|
+
getType(name: string): SqlType;
|
|
18
|
+
getTemplateString(name: string): string;
|
|
16
19
|
}
|
|
17
|
-
//#endregion
|
|
18
|
-
export { TableSqlMap };
|