fdb2 1.0.38 → 1.0.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -1
- package/bin/fdb2.js +78 -3
- package/dist/public/explorer.css +403 -380
- package/dist/public/explorer.js +1294 -737
- package/dist/public/index.js +242 -16
- package/dist/public/layout.js +1 -1
- package/dist/scripts/verify-db-support.cjs +239 -0
- package/dist/server/core/dialect.d.ts +9 -0
- package/dist/server/core/dialect.d.ts.map +1 -1
- package/dist/server/core/dialect.js +24 -9
- package/dist/server/core/dialect.js.map +1 -1
- package/dist/server/core/dialect.ts +29 -9
- package/dist/server/core/schema/__tests__/ddl-emitter.test.ts +7 -3
- package/dist/server/core/schema/ddl-emitter.d.ts.map +1 -1
- package/dist/server/core/schema/ddl-emitter.js +32 -12
- package/dist/server/core/schema/ddl-emitter.js.map +1 -1
- package/dist/server/core/schema/ddl-emitter.ts +34 -11
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +83 -6
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.ts +87 -6
- package/dist/server/model/ddl-spec.d.ts +9 -0
- package/dist/server/model/ddl-spec.d.ts.map +1 -1
- package/dist/server/model/ddl-spec.ts +9 -0
- package/dist/server/service/connection.service.d.ts +8 -0
- package/dist/server/service/connection.service.d.ts.map +1 -1
- package/dist/server/service/connection.service.js +75 -17
- package/dist/server/service/connection.service.js.map +1 -1
- package/dist/server/service/connection.service.ts +74 -17
- package/dist/server/service/database/base.service.d.ts +45 -0
- package/dist/server/service/database/base.service.d.ts.map +1 -1
- package/dist/server/service/database/base.service.js +120 -7
- package/dist/server/service/database/base.service.js.map +1 -1
- package/dist/server/service/database/base.service.ts +143 -8
- package/dist/server/service/database/cockroachdb.service.d.ts +9 -0
- package/dist/server/service/database/cockroachdb.service.d.ts.map +1 -1
- package/dist/server/service/database/cockroachdb.service.js +67 -56
- package/dist/server/service/database/cockroachdb.service.js.map +1 -1
- package/dist/server/service/database/cockroachdb.service.ts +66 -57
- package/dist/server/service/database/database.service.d.ts +3 -221
- package/dist/server/service/database/database.service.d.ts.map +1 -1
- package/dist/server/service/database/database.service.js +66 -24
- package/dist/server/service/database/database.service.js.map +1 -1
- package/dist/server/service/database/database.service.ts +69 -23
- package/dist/server/service/database/mongodb.service.d.ts +58 -3
- package/dist/server/service/database/mongodb.service.d.ts.map +1 -1
- package/dist/server/service/database/mongodb.service.js +251 -54
- package/dist/server/service/database/mongodb.service.js.map +1 -1
- package/dist/server/service/database/mongodb.service.ts +275 -60
- package/dist/server/service/database/mssql.service.d.ts +8 -0
- package/dist/server/service/database/mssql.service.d.ts.map +1 -1
- package/dist/server/service/database/mssql.service.js +41 -36
- package/dist/server/service/database/mssql.service.js.map +1 -1
- package/dist/server/service/database/mssql.service.ts +45 -40
- package/dist/server/service/database/oracle.service.d.ts +24 -0
- package/dist/server/service/database/oracle.service.d.ts.map +1 -1
- package/dist/server/service/database/oracle.service.js +146 -106
- package/dist/server/service/database/oracle.service.js.map +1 -1
- package/dist/server/service/database/oracle.service.ts +145 -105
- package/dist/server/service/database/sqlite.service.js +1 -1
- package/dist/server/service/database/sqlite.service.js.map +1 -1
- package/dist/server/service/database/sqlite.service.ts +1 -1
- package/package.json +8 -8
- package/scripts/verify-db-support.cjs +239 -0
|
@@ -173,8 +173,20 @@ class ConnectionService {
|
|
|
173
173
|
}
|
|
174
174
|
}
|
|
175
175
|
const tempDataSource = await this.createTypeORMDataSource(target);
|
|
176
|
-
|
|
177
|
-
|
|
176
|
+
try {
|
|
177
|
+
// MongoDB 驱动不支持执行 SQL(SELECT 1 会报错),其连接在 initialize() 时已建立,
|
|
178
|
+
// 直接走原生 ping 校验;其余关系型库用 SELECT 1。
|
|
179
|
+
if ((target.type || '').toLowerCase() === 'mongodb') {
|
|
180
|
+
const client = tempDataSource.driver.queryRunner.databaseConnection;
|
|
181
|
+
await client.db(target.database).command({ ping: 1 });
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
await tempDataSource.query('SELECT 1');
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
finally {
|
|
188
|
+
await tempDataSource.destroy();
|
|
189
|
+
}
|
|
178
190
|
return true;
|
|
179
191
|
}
|
|
180
192
|
catch (error) {
|
|
@@ -314,9 +326,34 @@ class ConnectionService {
|
|
|
314
326
|
const { ClickHouseConnection } = require('./database/clickhouse-connection');
|
|
315
327
|
return new ClickHouseConnection(connectionConfig);
|
|
316
328
|
}
|
|
329
|
+
this.assertDriverAvailable(connectionConfig.type);
|
|
317
330
|
const connectionOptions = this.getTypeORMOptions(connectionConfig);
|
|
318
331
|
return new typeorm_1.DataSource(connectionOptions).initialize();
|
|
319
332
|
}
|
|
333
|
+
/**
|
|
334
|
+
* 驱动就绪检查。
|
|
335
|
+
*
|
|
336
|
+
* 某些方言依赖未随默认依赖安装的原生/可选驱动(如 SAP HANA 的 @sap/hana-client)。
|
|
337
|
+
* 若缺失,TypeORM 会抛出 "Cannot find module ..." 这类含义不明的错误,
|
|
338
|
+
* 这里提前给出可执行的安装提示。
|
|
339
|
+
*/
|
|
340
|
+
assertDriverAvailable(type) {
|
|
341
|
+
const t = (type || '').toLowerCase();
|
|
342
|
+
const required = {
|
|
343
|
+
sap: '@sap/hana-client',
|
|
344
|
+
'sap-hana': '@sap/hana-client',
|
|
345
|
+
saphana: '@sap/hana-client'
|
|
346
|
+
};
|
|
347
|
+
const pkg = required[t];
|
|
348
|
+
if (!pkg)
|
|
349
|
+
return;
|
|
350
|
+
try {
|
|
351
|
+
require(pkg);
|
|
352
|
+
}
|
|
353
|
+
catch (error) {
|
|
354
|
+
throw new Error(`数据库类型 "${t}" 需要驱动 ${pkg},当前未安装。请先执行:npm install ${pkg}`);
|
|
355
|
+
}
|
|
356
|
+
}
|
|
320
357
|
/**
|
|
321
358
|
* 创建临时数据库连接
|
|
322
359
|
* 用于同步操作中的目标数据库连接
|
|
@@ -353,24 +390,45 @@ class ConnectionService {
|
|
|
353
390
|
database: connectionConfig.database,
|
|
354
391
|
synchronize: false,
|
|
355
392
|
logging: false,
|
|
356
|
-
|
|
357
|
-
// 全局安装时 Node 会解析到系统中全局遗留的 mysql 包,该老包不支持 MySQL 8 的
|
|
358
|
-
// caching_sha2_password,导致 ER_NOT_SUPPORTED_AUTH_MODE。显式指定 mysql2 可彻底规避。
|
|
359
|
-
connectorPackage: 'mysql2',
|
|
360
|
-
...userOptions,
|
|
361
|
-
// extra 必须放在 ...userOptions 之后并做合并:
|
|
362
|
-
// 原先 extra 在展开之前,connectionConfig.options.extra 会把它整体顶掉,
|
|
363
|
-
// 导致 multipleStatements 静默失效。
|
|
364
|
-
// connectionLimit 显式收敛单池上限(mysql2 默认 10),叠加最多 MAX_CACHED_CONNECTIONS
|
|
365
|
-
// 个池后仍远小于常见的 max_connections(151),避免 Too many connections。
|
|
366
|
-
extra: {
|
|
367
|
-
multipleStatements: true,
|
|
368
|
-
connectionLimit: 5,
|
|
369
|
-
...(userOptions.extra || {})
|
|
370
|
-
}
|
|
393
|
+
...userOptions
|
|
371
394
|
};
|
|
372
395
|
// 根据数据库类型调整配置
|
|
373
396
|
switch (connectionConfig.type.toLowerCase()) {
|
|
397
|
+
case 'mysql':
|
|
398
|
+
case 'mariadb':
|
|
399
|
+
return {
|
|
400
|
+
...baseOptions,
|
|
401
|
+
type: 'mysql',
|
|
402
|
+
// 强制使用 mysql2 驱动:TypeORM 默认 connectorPackage 是 "mysql"(老包),
|
|
403
|
+
// 全局安装时 Node 会解析到系统中全局遗留的 mysql 包,该老包不支持 MySQL 8 的
|
|
404
|
+
// caching_sha2_password,导致 ER_NOT_SUPPORTED_AUTH_MODE。显式指定 mysql2 可彻底规避。
|
|
405
|
+
connectorPackage: 'mysql2',
|
|
406
|
+
// extra 必须放在 ...userOptions 之后并做合并:
|
|
407
|
+
// 原先 extra 在展开之前,connectionConfig.options.extra 会把它整体顶掉,
|
|
408
|
+
// 导致 multipleStatements 静默失效。
|
|
409
|
+
// connectionLimit 显式收敛单池上限(mysql2 默认 10),叠加最多 MAX_CACHED_CONNECTIONS
|
|
410
|
+
// 个池后仍远小于常见的 max_connections(151),避免 Too many connections。
|
|
411
|
+
extra: {
|
|
412
|
+
multipleStatements: true,
|
|
413
|
+
connectionLimit: 5,
|
|
414
|
+
...(userOptions.extra || {})
|
|
415
|
+
}
|
|
416
|
+
};
|
|
417
|
+
case 'mongodb':
|
|
418
|
+
// MongoDB 驱动按 URL/凭据连接,不认 host/port/username/password/connectorPackage/extra,
|
|
419
|
+
// 注入这些字段会抛 "options must not contain any other properties"。
|
|
420
|
+
return {
|
|
421
|
+
type: 'mongodb',
|
|
422
|
+
url: connectionConfig.options?.url,
|
|
423
|
+
host: connectionConfig.host,
|
|
424
|
+
port: connectionConfig.port,
|
|
425
|
+
username: connectionConfig.username || undefined,
|
|
426
|
+
password: connectionConfig.password || undefined,
|
|
427
|
+
database: connectionConfig.database,
|
|
428
|
+
synchronize: false,
|
|
429
|
+
logging: false,
|
|
430
|
+
...userOptions
|
|
431
|
+
};
|
|
374
432
|
case 'sqlite':
|
|
375
433
|
case 'better-sqlite3':
|
|
376
434
|
case 'bettersqlite3':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.service.js","sourceRoot":"","sources":["../../../server/service/connection.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connection.service.js","sourceRoot":"","sources":["../../../server/service/connection.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -159,8 +159,18 @@ export class ConnectionService {
|
|
|
159
159
|
}
|
|
160
160
|
}
|
|
161
161
|
const tempDataSource = await this.createTypeORMDataSource(target);
|
|
162
|
-
|
|
163
|
-
|
|
162
|
+
try {
|
|
163
|
+
// MongoDB 驱动不支持执行 SQL(SELECT 1 会报错),其连接在 initialize() 时已建立,
|
|
164
|
+
// 直接走原生 ping 校验;其余关系型库用 SELECT 1。
|
|
165
|
+
if ((target.type || '').toLowerCase() === 'mongodb') {
|
|
166
|
+
const client: any = (tempDataSource.driver as any).queryRunner.databaseConnection;
|
|
167
|
+
await client.db(target.database).command({ ping: 1 });
|
|
168
|
+
} else {
|
|
169
|
+
await tempDataSource.query('SELECT 1');
|
|
170
|
+
}
|
|
171
|
+
} finally {
|
|
172
|
+
await tempDataSource.destroy();
|
|
173
|
+
}
|
|
164
174
|
return true;
|
|
165
175
|
} catch (error) {
|
|
166
176
|
return false;
|
|
@@ -307,10 +317,36 @@ export class ConnectionService {
|
|
|
307
317
|
const { ClickHouseConnection } = require('./database/clickhouse-connection');
|
|
308
318
|
return new ClickHouseConnection(connectionConfig) as unknown as DataSource;
|
|
309
319
|
}
|
|
320
|
+
this.assertDriverAvailable(connectionConfig.type);
|
|
310
321
|
const connectionOptions = this.getTypeORMOptions(connectionConfig);
|
|
311
322
|
return new DataSource(connectionOptions).initialize();
|
|
312
323
|
}
|
|
313
324
|
|
|
325
|
+
/**
|
|
326
|
+
* 驱动就绪检查。
|
|
327
|
+
*
|
|
328
|
+
* 某些方言依赖未随默认依赖安装的原生/可选驱动(如 SAP HANA 的 @sap/hana-client)。
|
|
329
|
+
* 若缺失,TypeORM 会抛出 "Cannot find module ..." 这类含义不明的错误,
|
|
330
|
+
* 这里提前给出可执行的安装提示。
|
|
331
|
+
*/
|
|
332
|
+
private assertDriverAvailable(type?: string): void {
|
|
333
|
+
const t = (type || '').toLowerCase();
|
|
334
|
+
const required: Record<string, string> = {
|
|
335
|
+
sap: '@sap/hana-client',
|
|
336
|
+
'sap-hana': '@sap/hana-client',
|
|
337
|
+
saphana: '@sap/hana-client'
|
|
338
|
+
};
|
|
339
|
+
const pkg = required[t];
|
|
340
|
+
if (!pkg) return;
|
|
341
|
+
try {
|
|
342
|
+
require(pkg);
|
|
343
|
+
} catch (error) {
|
|
344
|
+
throw new Error(
|
|
345
|
+
`数据库类型 "${t}" 需要驱动 ${pkg},当前未安装。请先执行:npm install ${pkg}`
|
|
346
|
+
);
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
|
|
314
350
|
/**
|
|
315
351
|
* 创建临时数据库连接
|
|
316
352
|
* 用于同步操作中的目标数据库连接
|
|
@@ -348,25 +384,46 @@ export class ConnectionService {
|
|
|
348
384
|
database: connectionConfig.database,
|
|
349
385
|
synchronize: false,
|
|
350
386
|
logging: false,
|
|
351
|
-
|
|
352
|
-
// 全局安装时 Node 会解析到系统中全局遗留的 mysql 包,该老包不支持 MySQL 8 的
|
|
353
|
-
// caching_sha2_password,导致 ER_NOT_SUPPORTED_AUTH_MODE。显式指定 mysql2 可彻底规避。
|
|
354
|
-
connectorPackage: 'mysql2',
|
|
355
|
-
...userOptions,
|
|
356
|
-
// extra 必须放在 ...userOptions 之后并做合并:
|
|
357
|
-
// 原先 extra 在展开之前,connectionConfig.options.extra 会把它整体顶掉,
|
|
358
|
-
// 导致 multipleStatements 静默失效。
|
|
359
|
-
// connectionLimit 显式收敛单池上限(mysql2 默认 10),叠加最多 MAX_CACHED_CONNECTIONS
|
|
360
|
-
// 个池后仍远小于常见的 max_connections(151),避免 Too many connections。
|
|
361
|
-
extra: {
|
|
362
|
-
multipleStatements: true,
|
|
363
|
-
connectionLimit: 5,
|
|
364
|
-
...(userOptions.extra || {})
|
|
365
|
-
}
|
|
387
|
+
...userOptions
|
|
366
388
|
};
|
|
367
389
|
|
|
368
390
|
// 根据数据库类型调整配置
|
|
369
391
|
switch (connectionConfig.type.toLowerCase()) {
|
|
392
|
+
case 'mysql':
|
|
393
|
+
case 'mariadb':
|
|
394
|
+
return {
|
|
395
|
+
...baseOptions,
|
|
396
|
+
type: 'mysql' as any,
|
|
397
|
+
// 强制使用 mysql2 驱动:TypeORM 默认 connectorPackage 是 "mysql"(老包),
|
|
398
|
+
// 全局安装时 Node 会解析到系统中全局遗留的 mysql 包,该老包不支持 MySQL 8 的
|
|
399
|
+
// caching_sha2_password,导致 ER_NOT_SUPPORTED_AUTH_MODE。显式指定 mysql2 可彻底规避。
|
|
400
|
+
connectorPackage: 'mysql2',
|
|
401
|
+
// extra 必须放在 ...userOptions 之后并做合并:
|
|
402
|
+
// 原先 extra 在展开之前,connectionConfig.options.extra 会把它整体顶掉,
|
|
403
|
+
// 导致 multipleStatements 静默失效。
|
|
404
|
+
// connectionLimit 显式收敛单池上限(mysql2 默认 10),叠加最多 MAX_CACHED_CONNECTIONS
|
|
405
|
+
// 个池后仍远小于常见的 max_connections(151),避免 Too many connections。
|
|
406
|
+
extra: {
|
|
407
|
+
multipleStatements: true,
|
|
408
|
+
connectionLimit: 5,
|
|
409
|
+
...(userOptions.extra || {})
|
|
410
|
+
}
|
|
411
|
+
};
|
|
412
|
+
case 'mongodb':
|
|
413
|
+
// MongoDB 驱动按 URL/凭据连接,不认 host/port/username/password/connectorPackage/extra,
|
|
414
|
+
// 注入这些字段会抛 "options must not contain any other properties"。
|
|
415
|
+
return {
|
|
416
|
+
type: 'mongodb' as any,
|
|
417
|
+
url: connectionConfig.options?.url,
|
|
418
|
+
host: connectionConfig.host,
|
|
419
|
+
port: connectionConfig.port,
|
|
420
|
+
username: connectionConfig.username || undefined,
|
|
421
|
+
password: connectionConfig.password || undefined,
|
|
422
|
+
database: connectionConfig.database,
|
|
423
|
+
synchronize: false,
|
|
424
|
+
logging: false,
|
|
425
|
+
...(userOptions as any)
|
|
426
|
+
};
|
|
370
427
|
case 'sqlite':
|
|
371
428
|
case 'better-sqlite3':
|
|
372
429
|
case 'bettersqlite3':
|
|
@@ -52,6 +52,21 @@ export declare abstract class BaseDatabaseService {
|
|
|
52
52
|
data: any[];
|
|
53
53
|
total: number;
|
|
54
54
|
}>;
|
|
55
|
+
/**
|
|
56
|
+
* 分页子句(默认 LIMIT/OFFSET,适用于 MySQL/PG/SQLite/CRDB)。
|
|
57
|
+
* MSSQL 等不支持该语法的方言需覆写(见 SQLServerService)。
|
|
58
|
+
*/
|
|
59
|
+
protected buildPaginationClause(pageSize: number, offset: number): string;
|
|
60
|
+
/**
|
|
61
|
+
* ORDER BY 子句。默认仅在有 orderBy 时输出;
|
|
62
|
+
* MSSQL 的 OFFSET/FETCH 语法强制要求 ORDER BY,故其覆写为"无排序时补一个空排序"。
|
|
63
|
+
*/
|
|
64
|
+
protected buildOrderByClause(orderBy?: string): string;
|
|
65
|
+
/**
|
|
66
|
+
* 判断一条语句是否含可执行 SQL(剔除行注释与块注释后的剩余内容)。
|
|
67
|
+
* 用于跳过 DDL 生成器输出的纯注释行,避免 better-sqlite3 等驱动 prepare() 报错。
|
|
68
|
+
*/
|
|
69
|
+
protected hasExecutableSql(statement: string): boolean;
|
|
55
70
|
/**
|
|
56
71
|
* 通用方法:执行SQL查询
|
|
57
72
|
*/
|
|
@@ -168,6 +183,36 @@ export declare abstract class BaseDatabaseService {
|
|
|
168
183
|
* 创建表 - 子类实现
|
|
169
184
|
*/
|
|
170
185
|
abstract createTable(dataSource: DataSource, databaseName: string, table: any): Promise<void>;
|
|
186
|
+
/**
|
|
187
|
+
* 按文档主键更新文档(关系型不支持)
|
|
188
|
+
*/
|
|
189
|
+
updateDocument(_dataSource: DataSource, _databaseName: string, _tableName: string, _docId: any, _document: any): Promise<void>;
|
|
190
|
+
/**
|
|
191
|
+
* 按文档主键删除文档(关系型不支持)
|
|
192
|
+
*/
|
|
193
|
+
deleteDocument(_dataSource: DataSource, _databaseName: string, _tableName: string, _docId: any): Promise<void>;
|
|
194
|
+
/**
|
|
195
|
+
* 插入单个文档并返回主键(关系型不支持)
|
|
196
|
+
*/
|
|
197
|
+
insertDocument(_dataSource: DataSource, _databaseName: string, _tableName: string, _document: any): Promise<{
|
|
198
|
+
insertedId: any;
|
|
199
|
+
}>;
|
|
200
|
+
/**
|
|
201
|
+
* 清空集合但保留集合本身(关系型不支持)
|
|
202
|
+
*/
|
|
203
|
+
truncateCollection(_dataSource: DataSource, _databaseName: string, _tableName: string): Promise<number>;
|
|
204
|
+
/**
|
|
205
|
+
* 创建索引(文档型由 MongoDBService 覆写;关系型暂未提供统一实现)
|
|
206
|
+
*/
|
|
207
|
+
createIndex(_dataSource: DataSource, _databaseName: string, _tableName: string, _keys: Record<string, any>, _options?: any): Promise<string>;
|
|
208
|
+
/**
|
|
209
|
+
* 删除索引(文档型由 MongoDBService 覆写)
|
|
210
|
+
*/
|
|
211
|
+
dropIndex(_dataSource: DataSource, _databaseName: string, _tableName: string, _indexName: string): Promise<void>;
|
|
212
|
+
/**
|
|
213
|
+
* 聚合管道(文档型由 MongoDBService 覆写)
|
|
214
|
+
*/
|
|
215
|
+
aggregate(_dataSource: DataSource, _databaseName: string, _tableName: string, _pipeline: any[]): Promise<any[]>;
|
|
171
216
|
/**
|
|
172
217
|
* 执行查询 - 通用方法
|
|
173
218
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.service.d.ts","sourceRoot":"","sources":["../../../../server/service/database/base.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EACL,cAAc,EACd,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EACjB,MAAM,6BAA6B,CAAC;AAErC;;;GAGG;AACH,8BAAsB,mBAAmB;IAEvC;;OAEG;IACH,QAAQ,CAAC,eAAe,IAAI,MAAM;IAElC;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAEhE;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAEpF;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAErG;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAEpG;;OAEG;IACH,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAE7G;;OAEG;IACH,QAAQ,CAAC,eAAe,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAEnF;;OAEG;IACG,eAAe,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAW5F;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAoBzG;;OAEG;IACG,iBAAiB,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAQtG;;OAEG;IACG,YAAY,CAChB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE,MAAU,EAChB,QAAQ,GAAE,MAAY,EACtB,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"base.service.d.ts","sourceRoot":"","sources":["../../../../server/service/database/base.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,11 +54,9 @@ class BaseDatabaseService {
|
|
|
54
54
|
if (where) {
|
|
55
55
|
query += ` WHERE ${where}`;
|
|
56
56
|
}
|
|
57
|
-
|
|
58
|
-
query += ` ORDER BY ${orderBy}`;
|
|
59
|
-
}
|
|
57
|
+
query += this.buildOrderByClause(orderBy);
|
|
60
58
|
const offset = (page - 1) * pageSize;
|
|
61
|
-
query += `
|
|
59
|
+
query += ` ${this.buildPaginationClause(pageSize, offset)}`;
|
|
62
60
|
// 执行数据查询
|
|
63
61
|
const data = await dataSource.query(query);
|
|
64
62
|
// 获取总数
|
|
@@ -70,6 +68,70 @@ class BaseDatabaseService {
|
|
|
70
68
|
const total = countResult[0]?.total || 0;
|
|
71
69
|
return { data, total };
|
|
72
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* 分页子句(默认 LIMIT/OFFSET,适用于 MySQL/PG/SQLite/CRDB)。
|
|
73
|
+
* MSSQL 等不支持该语法的方言需覆写(见 SQLServerService)。
|
|
74
|
+
*/
|
|
75
|
+
buildPaginationClause(pageSize, offset) {
|
|
76
|
+
return `LIMIT ${pageSize} OFFSET ${offset}`;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* ORDER BY 子句。默认仅在有 orderBy 时输出;
|
|
80
|
+
* MSSQL 的 OFFSET/FETCH 语法强制要求 ORDER BY,故其覆写为"无排序时补一个空排序"。
|
|
81
|
+
*/
|
|
82
|
+
buildOrderByClause(orderBy) {
|
|
83
|
+
return orderBy ? ` ORDER BY ${orderBy}` : '';
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* 判断一条语句是否含可执行 SQL(剔除行注释与块注释后的剩余内容)。
|
|
87
|
+
* 用于跳过 DDL 生成器输出的纯注释行,避免 better-sqlite3 等驱动 prepare() 报错。
|
|
88
|
+
*/
|
|
89
|
+
hasExecutableSql(statement) {
|
|
90
|
+
let out = '';
|
|
91
|
+
let i = 0;
|
|
92
|
+
const n = statement.length;
|
|
93
|
+
while (i < n) {
|
|
94
|
+
const ch = statement[i];
|
|
95
|
+
const next = statement[i + 1];
|
|
96
|
+
// 字符串字面量内的内容原样保留:避免把 '...--...' 里的 -- 当成注释
|
|
97
|
+
if (ch === "'") {
|
|
98
|
+
out += ch;
|
|
99
|
+
i++;
|
|
100
|
+
while (i < n) {
|
|
101
|
+
out += statement[i];
|
|
102
|
+
if (statement[i] === "'") {
|
|
103
|
+
// Oracle/标准 SQL 的转义是成对单引号 '',不是反斜杠
|
|
104
|
+
if (statement[i + 1] === "'") {
|
|
105
|
+
out += statement[i + 1];
|
|
106
|
+
i += 2;
|
|
107
|
+
continue;
|
|
108
|
+
}
|
|
109
|
+
i++;
|
|
110
|
+
break;
|
|
111
|
+
}
|
|
112
|
+
i++;
|
|
113
|
+
}
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
// 块注释
|
|
117
|
+
if (ch === '/' && next === '*') {
|
|
118
|
+
i += 2;
|
|
119
|
+
while (i < n && !(statement[i] === '*' && statement[i + 1] === '/'))
|
|
120
|
+
i++;
|
|
121
|
+
i += 2;
|
|
122
|
+
continue;
|
|
123
|
+
}
|
|
124
|
+
// 行注释(到行尾)
|
|
125
|
+
if (ch === '-' && next === '-') {
|
|
126
|
+
while (i < n && statement[i] !== '\n')
|
|
127
|
+
i++;
|
|
128
|
+
continue;
|
|
129
|
+
}
|
|
130
|
+
out += ch;
|
|
131
|
+
i++;
|
|
132
|
+
}
|
|
133
|
+
return out.trim().length > 0;
|
|
134
|
+
}
|
|
73
135
|
/**
|
|
74
136
|
* 通用方法:执行SQL查询
|
|
75
137
|
*/
|
|
@@ -91,11 +153,17 @@ class BaseDatabaseService {
|
|
|
91
153
|
let success = 0;
|
|
92
154
|
let failed = 0;
|
|
93
155
|
const errors = [];
|
|
156
|
+
// 过滤"纯注释/空白"语句:DDL 生成器会输出形如 `-- 说明` 的注释行作为独立语句,
|
|
157
|
+
// better-sqlite3 对这类无实际 SQL 的字符串 prepare() 会抛 "contains no statements"。
|
|
158
|
+
const statements = sqlStatements.filter((s) => this.hasExecutableSql(s));
|
|
94
159
|
// 分批处理SQL语句
|
|
95
|
-
for (let i = 0; i <
|
|
96
|
-
const batch =
|
|
160
|
+
for (let i = 0; i < statements.length; i += batchSize) {
|
|
161
|
+
const batch = statements.slice(i, i + batchSize);
|
|
97
162
|
try {
|
|
98
|
-
|
|
163
|
+
// ClickHouse 等非事务型连接(自定义 connection 对象)不实现 transaction();
|
|
164
|
+
// 此时降级为逐条顺序执行,避免 "dataSource.transaction is not a function" 让整个 DDL 批次失败。
|
|
165
|
+
const canUseTransaction = useTransaction && typeof dataSource.transaction === 'function';
|
|
166
|
+
if (canUseTransaction) {
|
|
99
167
|
// 使用事务执行批次
|
|
100
168
|
await dataSource.transaction(async (manager) => {
|
|
101
169
|
for (const statement of batch) {
|
|
@@ -241,6 +309,51 @@ class BaseDatabaseService {
|
|
|
241
309
|
// 默认实现,子类可以重写
|
|
242
310
|
throw new Error(`数据库类型 ${this.getDatabaseType()} 不支持恢复数据库`);
|
|
243
311
|
}
|
|
312
|
+
// ---------------------------------------------------------------- 文档级操作(document 模式)
|
|
313
|
+
// 仅文档型数据库(MongoDB)有意义:关系型走上面的 SQL/DDL 路径。
|
|
314
|
+
// 基类默认"不支持",由 MongoDBService 覆写;调用方须先按 dataModelOf(type) 分流。
|
|
315
|
+
/**
|
|
316
|
+
* 按文档主键更新文档(关系型不支持)
|
|
317
|
+
*/
|
|
318
|
+
async updateDocument(_dataSource, _databaseName, _tableName, _docId, _document) {
|
|
319
|
+
throw new Error('该数据库类型不支持文档级更新');
|
|
320
|
+
}
|
|
321
|
+
/**
|
|
322
|
+
* 按文档主键删除文档(关系型不支持)
|
|
323
|
+
*/
|
|
324
|
+
async deleteDocument(_dataSource, _databaseName, _tableName, _docId) {
|
|
325
|
+
throw new Error('该数据库类型不支持文档级删除');
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* 插入单个文档并返回主键(关系型不支持)
|
|
329
|
+
*/
|
|
330
|
+
async insertDocument(_dataSource, _databaseName, _tableName, _document) {
|
|
331
|
+
throw new Error('该数据库类型不支持文档级插入');
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* 清空集合但保留集合本身(关系型不支持)
|
|
335
|
+
*/
|
|
336
|
+
async truncateCollection(_dataSource, _databaseName, _tableName) {
|
|
337
|
+
throw new Error('该数据库类型不支持清空集合');
|
|
338
|
+
}
|
|
339
|
+
/**
|
|
340
|
+
* 创建索引(文档型由 MongoDBService 覆写;关系型暂未提供统一实现)
|
|
341
|
+
*/
|
|
342
|
+
async createIndex(_dataSource, _databaseName, _tableName, _keys, _options) {
|
|
343
|
+
throw new Error('该数据库类型不支持创建索引');
|
|
344
|
+
}
|
|
345
|
+
/**
|
|
346
|
+
* 删除索引(文档型由 MongoDBService 覆写)
|
|
347
|
+
*/
|
|
348
|
+
async dropIndex(_dataSource, _databaseName, _tableName, _indexName) {
|
|
349
|
+
throw new Error('该数据库类型不支持删除索引');
|
|
350
|
+
}
|
|
351
|
+
/**
|
|
352
|
+
* 聚合管道(文档型由 MongoDBService 覆写)
|
|
353
|
+
*/
|
|
354
|
+
async aggregate(_dataSource, _databaseName, _tableName, _pipeline) {
|
|
355
|
+
throw new Error('该数据库类型不支持聚合管道');
|
|
356
|
+
}
|
|
244
357
|
/**
|
|
245
358
|
* 执行查询 - 通用方法
|
|
246
359
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.service.js","sourceRoot":"","sources":["../../../../server/service/database/base.service.ts"],"names":[],"mappings":";;;AASA;;;GAGG;AACH,MAAsB,mBAAmB;IAqCvC;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,UAAsB,EAAE,YAAoB;QAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAE9D,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,IAAI,EAAE,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,YAAY,CAAC;YAC1D,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,UAAsB,EAAE,YAAoB,EAAE,SAAiB;QAChF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAErD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,KAAK,SAAS,MAAM,CAAC,CAAC;QACxC,CAAC;QAED,QAAQ;QACR,KAAK,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAE3E,SAAS;QACT,KAAK,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAE3E,SAAS;QACT,KAAK,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAEnF,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,UAAsB,EAAE,YAAoB,EAAE,SAAiB;QACrF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAC3E,OAAO;YACL,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAChB,UAAsB,EACtB,YAAoB,EACpB,SAAiB,EACjB,OAAe,CAAC,EAChB,WAAmB,GAAG,EACtB,KAAc,EACd,OAAgB;QAEhB,OAAO;QACP,IAAI,KAAK,GAAG,iBAAiB,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QAE/D,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,IAAI,UAAU,KAAK,EAAE,CAAC;QAC7B,CAAC;QAED,IAAI,
|
|
1
|
+
{"version":3,"file":"base.service.js","sourceRoot":"","sources":["../../../../server/service/database/base.service.ts"],"names":[],"mappings":";;;AASA;;;GAGG;AACH,MAAsB,mBAAmB;IAqCvC;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,UAAsB,EAAE,YAAoB;QAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAE9D,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,IAAI,EAAE,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,YAAY,CAAC;YAC1D,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,UAAsB,EAAE,YAAoB,EAAE,SAAiB;QAChF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAErD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,KAAK,SAAS,MAAM,CAAC,CAAC;QACxC,CAAC;QAED,QAAQ;QACR,KAAK,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAE3E,SAAS;QACT,KAAK,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAE3E,SAAS;QACT,KAAK,CAAC,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAEnF,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,UAAsB,EAAE,YAAoB,EAAE,SAAiB;QACrF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAC3E,OAAO;YACL,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAChB,UAAsB,EACtB,YAAoB,EACpB,SAAiB,EACjB,OAAe,CAAC,EAChB,WAAmB,GAAG,EACtB,KAAc,EACd,OAAgB;QAEhB,OAAO;QACP,IAAI,KAAK,GAAG,iBAAiB,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QAE/D,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,IAAI,UAAU,KAAK,EAAE,CAAC;QAC7B,CAAC;QAED,KAAK,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAE1C,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;QACrC,KAAK,IAAI,IAAI,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;QAE5D,SAAS;QACT,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE3C,OAAO;QACP,IAAI,UAAU,GAAG,iCAAiC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QACpF,IAAI,KAAK,EAAE,CAAC;YACV,UAAU,IAAI,UAAU,KAAK,EAAE,CAAC;QAClC,CAAC;QACD,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QAEzC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC;IAED;;;OAGG;IACO,qBAAqB,CAAC,QAAgB,EAAE,MAAc;QAC9D,OAAO,SAAS,QAAQ,WAAW,MAAM,EAAE,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACO,kBAAkB,CAAC,OAAgB;QAC3C,OAAO,OAAO,CAAC,CAAC,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACO,gBAAgB,CAAC,SAAiB;QAC1C,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACb,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9B,2CAA2C;YAC3C,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,GAAG,IAAI,EAAE,CAAC;gBACV,CAAC,EAAE,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACb,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;oBACpB,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;wBACzB,mCAAmC;wBACnC,IAAI,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;4BAAC,GAAG,IAAI,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;4BAAC,CAAC,IAAI,CAAC,CAAC;4BAAC,SAAS;wBAAC,CAAC;wBAC5E,CAAC,EAAE,CAAC;wBACJ,MAAM;oBACR,CAAC;oBACD,CAAC,EAAE,CAAC;gBACN,CAAC;gBACD,SAAS;YACX,CAAC;YACD,MAAM;YACN,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBAC/B,CAAC,IAAI,CAAC,CAAC;gBACP,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC;oBAAE,CAAC,EAAE,CAAC;gBACzE,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,WAAW;YACX,IAAI,EAAE,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI;oBAAE,CAAC,EAAE,CAAC;gBAC3C,SAAS;YACX,CAAC;YACD,GAAG,IAAI,EAAE,CAAC;YACV,CAAC,EAAE,CAAC;QACN,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,UAAsB,EAAE,GAAW;QACpD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3C,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACjC,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CACrB,UAAsB,EACtB,aAAuB,EACvB,OAIC;QAED,MAAM,EACJ,SAAS,GAAG,GAAG,EACf,cAAc,GAAG,IAAI,EACrB,eAAe,GAAG,KAAK,EACxB,GAAG,OAAO,IAAI,EAAE,CAAC;QAElB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,MAAM,GAAU,EAAE,CAAC;QAEzB,gDAAgD;QAChD,wEAAwE;QACxE,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzE,YAAY;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;YACtD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;YAEjD,IAAI,CAAC;gBACH,0DAA0D;gBAC1D,0EAA0E;gBAC1E,MAAM,iBAAiB,GACrB,cAAc,IAAI,OAAQ,UAAkB,CAAC,WAAW,KAAK,UAAU,CAAC;gBAC1E,IAAI,iBAAiB,EAAE,CAAC;oBACtB,WAAW;oBACX,MAAM,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;wBAC7C,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;4BAC9B,IAAI,CAAC;gCACH,MAAM,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gCAC/B,OAAO,EAAE,CAAC;4BACZ,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCACf,MAAM,EAAE,CAAC;gCACT,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gCAC1F,IAAI,CAAC,eAAe,EAAE,CAAC;oCACrB,MAAM,KAAK,CAAC;gCACd,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,UAAU;oBACV,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;wBAC9B,IAAI,CAAC;4BACH,MAAM,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;4BAClC,OAAO,EAAE,CAAC;wBACZ,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,EAAE,CAAC;4BACT,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;4BAC1F,IAAI,CAAC,eAAe,EAAE,CAAC;gCACrB,MAAM,KAAK,CAAC;4BACd,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS,IAAI,EAAE,UAAU,CAAC,CAAC;gBAC7D,IAAI,CAAC,eAAe,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBACtG,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,UAAsB,EACtB,QAAgB,EAChB,OAIC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAErD,UAAU;QACV,MAAM,aAAa,GAAG,UAAU;aAC7B,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;aAClC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE7C,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,UAAsB;QACzC,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,6CAA6C;YAC7C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACI,eAAe,CAAC,UAAkB;QACvC,OAAO,IAAI,UAAU,GAAG,CAAC;IAC3B,CAAC;IAED;;OAEG;IACO,oBAAoB,CAAC,SAAiB,EAAE,IAAY,EAAE,QAAgB;QAC9E,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;QACrC,OAAO,GAAG,SAAS,UAAU,QAAQ,WAAW,MAAM,EAAE,CAAC;IAC3D,CAAC;IAED;;OAEG;IACO,eAAe,CAAC,SAAiB;QACzC,OAAO,kCAAkC,SAAS,kBAAkB,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,UAAsB,EAAE,QAAgB;QACrD,cAAc;QACd,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,UAAsB,EAAE,QAAgB,EAAE,QAAgB;QAChF,cAAc;QACd,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,UAAsB,EAAE,QAAgB;QAC1D,cAAc;QACd,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAAC,UAAsB,EAAE,QAAgB,EAAE,aAAqB;QAC1F,cAAc;QACd,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IAYD;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,UAAsB,EAAE,YAAoB,EAAE,OAAa;QAC9E,cAAc;QACd,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,UAAsB,EAAE,YAAoB;QAC7D,cAAc;QACd,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,UAAsB,EAAE,YAAoB,EAAE,OAAa;QAC9E,cAAc;QACd,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,UAAsB,EAAE,YAAoB,EAAE,QAAgB,EAAE,OAAa;QACjG,cAAc;QACd,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IAC9D,CAAC;IA0CD,sFAAsF;IACtF,0CAA0C;IAC1C,6DAA6D;IAE7D;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,WAAuB,EAAE,aAAqB,EAAE,UAAkB,EAAE,MAAW,EAAE,SAAc;QAE/F,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,WAAuB,EAAE,aAAqB,EAAE,UAAkB,EAAE,MAAW;QAE/E,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,WAAuB,EAAE,aAAqB,EAAE,UAAkB,EAAE,SAAc;QAElF,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,WAAuB,EAAE,aAAqB,EAAE,UAAkB;QAElE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CACf,WAAuB,EAAE,aAAqB,EAAE,UAAkB,EAClE,KAA0B,EAAE,QAAc;QAE1C,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CACb,WAAuB,EAAE,aAAqB,EAAE,UAAkB,EAAE,UAAkB;QAEtF,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CACb,WAAuB,EAAE,aAAqB,EAAE,UAAkB,EAAE,SAAgB;QAEpF,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,UAAsB,EAAE,YAA6C;QAC/E,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,YAAY,CAAC;QAC1C,OAAO,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACvC,CAAC;CACF;AA3gBD,kDA2gBC"}
|