@deepagents/text2sql 7.0.1 → 7.1.0
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 +3 -2
- package/dist/bin/sql.js +57 -32
- package/dist/index.js +793 -498
- package/dist/index.js.map +4 -4
- package/dist/lib/adapters/adapter.d.ts +23 -1
- package/dist/lib/adapters/adapter.d.ts.map +1 -1
- package/dist/lib/adapters/bigquery/bigquery-fk.d.ts +0 -11
- package/dist/lib/adapters/bigquery/bigquery-fk.d.ts.map +1 -1
- package/dist/lib/adapters/bigquery/bigquery-rows.d.ts +22 -0
- package/dist/lib/adapters/bigquery/bigquery-rows.d.ts.map +1 -0
- package/dist/lib/adapters/bigquery/bigquery.d.ts +1 -1
- package/dist/lib/adapters/bigquery/bigquery.d.ts.map +1 -1
- package/dist/lib/adapters/bigquery/constraint.bigquery.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/bigquery/index.d.ts +6 -13
- package/dist/lib/adapters/bigquery/index.d.ts.map +1 -1
- package/dist/lib/adapters/bigquery/index.js +244 -51
- package/dist/lib/adapters/bigquery/index.js.map +4 -4
- package/dist/lib/adapters/bigquery/indexes.bigquery.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/bigquery/row-count.bigquery.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/bigquery/table.bigquery.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/bigquery/view.bigquery.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/clickhouse/clickhouse-rows.d.ts +7 -0
- package/dist/lib/adapters/clickhouse/clickhouse-rows.d.ts.map +1 -0
- package/dist/lib/adapters/clickhouse/clickhouse.d.ts +1 -1
- package/dist/lib/adapters/clickhouse/clickhouse.d.ts.map +1 -1
- package/dist/lib/adapters/clickhouse/constraint.clickhouse.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/clickhouse/index.js +133 -44
- package/dist/lib/adapters/clickhouse/index.js.map +4 -4
- package/dist/lib/adapters/clickhouse/indexes.clickhouse.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/clickhouse/info.clickhouse.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/clickhouse/row-count.clickhouse.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/clickhouse/table.clickhouse.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/clickhouse/view.clickhouse.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/duckdb/duckdb.d.ts +1 -1
- package/dist/lib/adapters/duckdb/duckdb.d.ts.map +1 -1
- package/dist/lib/adapters/duckdb/duckdb.groundings.d.ts.map +1 -1
- package/dist/lib/adapters/duckdb/index.d.ts +8 -10
- package/dist/lib/adapters/duckdb/index.d.ts.map +1 -1
- package/dist/lib/adapters/duckdb/index.js +1549 -1412
- package/dist/lib/adapters/duckdb/index.js.map +4 -4
- package/dist/lib/adapters/groundings/index.js.map +1 -1
- package/dist/lib/adapters/groundings/rows.d.ts +32 -0
- package/dist/lib/adapters/groundings/rows.d.ts.map +1 -0
- package/dist/lib/adapters/mysql/column-stats.mysql.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/column-values.mysql.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/constraint.mysql.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/index.d.ts +2 -4
- package/dist/lib/adapters/mysql/index.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/index.js +230 -76
- package/dist/lib/adapters/mysql/index.js.map +4 -4
- package/dist/lib/adapters/mysql/indexes.mysql.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/info.mysql.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/mysql-rows.d.ts +11 -0
- package/dist/lib/adapters/mysql/mysql-rows.d.ts.map +1 -0
- package/dist/lib/adapters/mysql/mysql.d.ts +1 -1
- package/dist/lib/adapters/mysql/mysql.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/row-count.mysql.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/table.mysql.grounding.d.ts +3 -2
- package/dist/lib/adapters/mysql/table.mysql.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/mysql/view.mysql.grounding.d.ts +2 -2
- package/dist/lib/adapters/mysql/view.mysql.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/column-stats.postgres.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/column-values.postgres.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/constraint.postgres.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/index.d.ts +2 -4
- package/dist/lib/adapters/postgres/index.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/index.js +266 -487
- package/dist/lib/adapters/postgres/index.js.map +4 -4
- package/dist/lib/adapters/postgres/indexes.postgres.grounding.d.ts +1 -5
- package/dist/lib/adapters/postgres/indexes.postgres.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/info.postgres.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/postgres-rows.d.ts +7 -0
- package/dist/lib/adapters/postgres/postgres-rows.d.ts.map +1 -0
- package/dist/lib/adapters/postgres/postgres.d.ts +6 -1
- package/dist/lib/adapters/postgres/postgres.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/row-count.postgres.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/table.postgres.grounding.d.ts +5 -4
- package/dist/lib/adapters/postgres/table.postgres.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/view.postgres.grounding.d.ts +3 -3
- package/dist/lib/adapters/postgres/view.postgres.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/posthog/definitions.posthog.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/posthog/index.d.ts +4 -5
- package/dist/lib/adapters/posthog/index.d.ts.map +1 -1
- package/dist/lib/adapters/posthog/index.js +349 -287
- package/dist/lib/adapters/posthog/index.js.map +4 -4
- package/dist/lib/adapters/posthog/posthog.d.ts +2 -2
- package/dist/lib/adapters/posthog/posthog.d.ts.map +1 -1
- package/dist/lib/adapters/posthog/posthog.sql-policy.d.ts.map +1 -1
- package/dist/lib/adapters/posthog/schema.posthog.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/posthog/transport.d.ts.map +1 -1
- package/dist/lib/adapters/posthog/types.d.ts +16 -6
- package/dist/lib/adapters/posthog/types.d.ts.map +1 -1
- package/dist/lib/adapters/spreadsheet/index.js +113 -34
- package/dist/lib/adapters/spreadsheet/index.js.map +4 -4
- package/dist/lib/adapters/sqlite/column-stats.sqlite.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/column-values.sqlite.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/constraint.sqlite.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/index.js +136 -49
- package/dist/lib/adapters/sqlite/index.js.map +4 -4
- package/dist/lib/adapters/sqlite/indexes.sqlite.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/info.sqlite.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/row-count.sqlite.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/sqlite-rows.d.ts +41 -0
- package/dist/lib/adapters/sqlite/sqlite-rows.d.ts.map +1 -0
- package/dist/lib/adapters/sqlite/sqlite.d.ts +1 -1
- package/dist/lib/adapters/sqlite/sqlite.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/table.sqlite.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/view.sqlite.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/column-stats.sqlserver.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/column-values.sqlserver.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/constraint.sqlserver.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/index.d.ts +2 -4
- package/dist/lib/adapters/sqlserver/index.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/index.js +223 -455
- package/dist/lib/adapters/sqlserver/index.js.map +4 -4
- package/dist/lib/adapters/sqlserver/indexes.sqlserver.grounding.d.ts +1 -5
- package/dist/lib/adapters/sqlserver/indexes.sqlserver.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/info.sqlserver.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/row-count.sqlserver.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/sqlserver-rows.d.ts +7 -0
- package/dist/lib/adapters/sqlserver/sqlserver-rows.d.ts.map +1 -0
- package/dist/lib/adapters/sqlserver/sqlserver.d.ts +6 -1
- package/dist/lib/adapters/sqlserver/sqlserver.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/table.sqlserver.grounding.d.ts +4 -3
- package/dist/lib/adapters/sqlserver/table.sqlserver.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/view.sqlserver.grounding.d.ts +3 -3
- package/dist/lib/adapters/sqlserver/view.sqlserver.grounding.d.ts.map +1 -1
- package/dist/lib/agents/sql-transform-plugins.d.ts.map +1 -1
- package/dist/lib/checkpoint.d.ts +34 -21
- package/dist/lib/checkpoint.d.ts.map +1 -1
- package/dist/lib/file-cache.d.ts +6 -1
- package/dist/lib/file-cache.d.ts.map +1 -1
- package/dist/lib/fs/columns.d.ts +14 -0
- package/dist/lib/fs/columns.d.ts.map +1 -0
- package/dist/lib/fs/mssql/mssql-fs.d.ts +4 -4
- package/dist/lib/fs/mssql/mssql-fs.d.ts.map +1 -1
- package/dist/lib/fs/postgres/postgres-fs.d.ts +4 -4
- package/dist/lib/fs/postgres/postgres-fs.d.ts.map +1 -1
- package/dist/lib/fs/sqlite/sqlite-fs.d.ts +4 -4
- package/dist/lib/fs/sqlite/sqlite-fs.d.ts.map +1 -1
- package/dist/lib/index-cache.d.ts +4 -3
- package/dist/lib/index-cache.d.ts.map +1 -1
- package/dist/lib/sql.d.ts.map +1 -1
- package/dist/lib/synthesis/decorators/deduplicated-producer.d.ts +1 -2
- package/dist/lib/synthesis/decorators/deduplicated-producer.d.ts.map +1 -1
- package/dist/lib/synthesis/decorators/filtered-producer.d.ts +0 -2
- package/dist/lib/synthesis/decorators/filtered-producer.d.ts.map +1 -1
- package/dist/lib/synthesis/decorators/validated-producer.d.ts +1 -3
- package/dist/lib/synthesis/decorators/validated-producer.d.ts.map +1 -1
- package/dist/lib/synthesis/extractors/base-contextual-extractor.d.ts.map +1 -1
- package/dist/lib/synthesis/extractors/message-extractor.d.ts.map +1 -1
- package/dist/lib/synthesis/extractors/tool-input.d.ts +6 -0
- package/dist/lib/synthesis/extractors/tool-input.d.ts.map +1 -0
- package/dist/lib/synthesis/index.js +124 -114
- package/dist/lib/synthesis/index.js.map +4 -4
- package/dist/lib/synthesis/synthesizers/breadth-evolver.d.ts +0 -2
- package/dist/lib/synthesis/synthesizers/breadth-evolver.d.ts.map +1 -1
- package/dist/lib/synthesis/synthesizers/depth-evolver.d.ts +0 -3
- package/dist/lib/synthesis/synthesizers/depth-evolver.d.ts.map +1 -1
- package/dist/lib/synthesis/synthesizers/schema-synthesizer.d.ts +0 -2
- package/dist/lib/synthesis/synthesizers/schema-synthesizer.d.ts.map +1 -1
- package/package.json +8 -8
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// packages/text2sql/src/lib/adapters/adapter.ts
|
|
2
2
|
import { format as formatSql } from "sql-formatter";
|
|
3
|
+
import { z } from "zod";
|
|
3
4
|
|
|
4
5
|
// packages/text2sql/src/lib/agents/exceptions.ts
|
|
5
6
|
var sqlValidationMarker = /* @__PURE__ */ Symbol("SQLValidationError");
|
|
@@ -172,6 +173,16 @@ function createGroundingContext(options = {}) {
|
|
|
172
173
|
}
|
|
173
174
|
|
|
174
175
|
// packages/text2sql/src/lib/adapters/adapter.ts
|
|
176
|
+
function groundingFor(adapterType, create) {
|
|
177
|
+
return (adapter) => {
|
|
178
|
+
if (!(adapter instanceof adapterType)) {
|
|
179
|
+
throw new Error(
|
|
180
|
+
`A ${adapterType.name} grounding needs a ${adapterType.name} adapter, not ${adapter.constructor.name}.`
|
|
181
|
+
);
|
|
182
|
+
}
|
|
183
|
+
return create(adapter);
|
|
184
|
+
};
|
|
185
|
+
}
|
|
175
186
|
var Adapter = class {
|
|
176
187
|
#policyAnalyzer;
|
|
177
188
|
/**
|
|
@@ -432,6 +443,40 @@ var Adapter = class {
|
|
|
432
443
|
}
|
|
433
444
|
return decoded;
|
|
434
445
|
}
|
|
446
|
+
/**
|
|
447
|
+
* Run an introspection query and check every row against `row`, the shape
|
|
448
|
+
* the driver returns for that query. A row of any other shape throws.
|
|
449
|
+
*/
|
|
450
|
+
async runQuery(sql, row) {
|
|
451
|
+
const rows = z.array(row).safeParse(await this.queryRows(sql));
|
|
452
|
+
if (!rows.success) {
|
|
453
|
+
throw new Error(
|
|
454
|
+
`${this.constructor.name} introspection query returned rows of an unexpected shape:
|
|
455
|
+
${z.prettifyError(rows.error)}
|
|
456
|
+
SQL: ${sql.trim()}`,
|
|
457
|
+
{ cause: rows.error }
|
|
458
|
+
);
|
|
459
|
+
}
|
|
460
|
+
return rows.data;
|
|
461
|
+
}
|
|
462
|
+
/**
|
|
463
|
+
* The rows in a driver's execute() result: the result itself when it is an
|
|
464
|
+
* array, otherwise the first array found at one of `paths` (dot-separated,
|
|
465
|
+
* so `recordsets.0` reads `result.recordsets[0]`).
|
|
466
|
+
*/
|
|
467
|
+
rowsFrom(result, paths) {
|
|
468
|
+
if (Array.isArray(result)) return result;
|
|
469
|
+
for (const path of paths) {
|
|
470
|
+
const rows = path.split(".").reduce(
|
|
471
|
+
(value, key) => typeof value === "object" && value !== null ? Reflect.get(value, key) : void 0,
|
|
472
|
+
result
|
|
473
|
+
);
|
|
474
|
+
if (Array.isArray(rows)) return rows;
|
|
475
|
+
}
|
|
476
|
+
throw new Error(
|
|
477
|
+
`${this.constructor.name} execute() must return an array of rows or an object holding one at ${paths.map((path) => `result.${path}`).join(", ")}.`
|
|
478
|
+
);
|
|
479
|
+
}
|
|
435
480
|
/**
|
|
436
481
|
* Convert unknown database value to number.
|
|
437
482
|
* Handles number, bigint, and string types.
|
|
@@ -1141,7 +1186,7 @@ var BigQuerySqlPolicyAnalyzer = class extends ParserSqlPolicyAnalyzer {
|
|
|
1141
1186
|
|
|
1142
1187
|
// packages/text2sql/src/lib/adapters/bigquery/bigquery.ts
|
|
1143
1188
|
function formatBigQueryError(sql, error) {
|
|
1144
|
-
const errorMessage = error instanceof Error ? error.message : typeof error === "string" ? error : typeof error === "object" && error !== null ? error.message
|
|
1189
|
+
const errorMessage = error instanceof Error ? error.message : typeof error === "string" ? error : typeof error === "object" && error !== null ? "message" in error && typeof error.message === "string" ? error.message : JSON.stringify(error) : "Unknown error occurred";
|
|
1145
1190
|
return {
|
|
1146
1191
|
error: errorMessage,
|
|
1147
1192
|
error_type: "BIGQUERY_ERROR",
|
|
@@ -1204,17 +1249,8 @@ var BigQuery = class extends Adapter {
|
|
|
1204
1249
|
return JSON.stringify(formatBigQueryError(this.format(sql), error));
|
|
1205
1250
|
}
|
|
1206
1251
|
}
|
|
1207
|
-
async
|
|
1208
|
-
|
|
1209
|
-
if (Array.isArray(result)) {
|
|
1210
|
-
return result;
|
|
1211
|
-
}
|
|
1212
|
-
if (result && typeof result === "object" && "rows" in result && Array.isArray(result.rows)) {
|
|
1213
|
-
return result.rows;
|
|
1214
|
-
}
|
|
1215
|
-
throw new Error(
|
|
1216
|
-
"BigQuery adapter execute() must return an array of rows or an object with a rows array when introspecting."
|
|
1217
|
-
);
|
|
1252
|
+
async queryRows(sql) {
|
|
1253
|
+
return this.rowsFrom(await this.#options.execute(sql), ["rows"]);
|
|
1218
1254
|
}
|
|
1219
1255
|
quoteIdentifier(name) {
|
|
1220
1256
|
return name.split(".").map((part) => `\`${part.replace(/`/g, "``")}\``).join(".");
|
|
@@ -1239,12 +1275,46 @@ var BigQuery = class extends Adapter {
|
|
|
1239
1275
|
}
|
|
1240
1276
|
};
|
|
1241
1277
|
|
|
1278
|
+
// packages/text2sql/src/lib/adapters/bigquery/constraint.bigquery.grounding.ts
|
|
1279
|
+
import { z as z4 } from "zod";
|
|
1280
|
+
|
|
1281
|
+
// packages/text2sql/src/lib/adapters/bigquery/bigquery-fk.ts
|
|
1282
|
+
import { z as z3 } from "zod";
|
|
1283
|
+
|
|
1284
|
+
// packages/text2sql/src/lib/adapters/bigquery/bigquery-rows.ts
|
|
1285
|
+
import { z as z2 } from "zod";
|
|
1286
|
+
var int64 = z2.number();
|
|
1287
|
+
var tableNameRow = z2.object({ table_name: z2.string().nullable() });
|
|
1288
|
+
var constraintNameRow = z2.object({
|
|
1289
|
+
constraint_name: z2.string().nullable()
|
|
1290
|
+
});
|
|
1291
|
+
var keyColumnUsageRow = z2.object({
|
|
1292
|
+
constraint_name: z2.string().nullable(),
|
|
1293
|
+
column_name: z2.string().nullable(),
|
|
1294
|
+
ordinal_position: int64.nullable(),
|
|
1295
|
+
position_in_unique_constraint: int64.nullable()
|
|
1296
|
+
});
|
|
1297
|
+
|
|
1242
1298
|
// packages/text2sql/src/lib/adapters/bigquery/bigquery-fk.ts
|
|
1299
|
+
var referencedTableRow = z3.object({
|
|
1300
|
+
table_schema: z3.string().nullable(),
|
|
1301
|
+
table_name: z3.string().nullable()
|
|
1302
|
+
});
|
|
1303
|
+
var primaryKeyColumnRow = z3.object({
|
|
1304
|
+
column_name: z3.string().nullable(),
|
|
1305
|
+
ordinal_position: int64.nullable()
|
|
1306
|
+
});
|
|
1307
|
+
var fkResolution = z3.object({
|
|
1308
|
+
referencedDataset: z3.string(),
|
|
1309
|
+
referencedTable: z3.string(),
|
|
1310
|
+
referencedColumns: z3.array(z3.string()),
|
|
1311
|
+
childColumns: z3.array(z3.string())
|
|
1312
|
+
});
|
|
1243
1313
|
var FK_CACHE_PREFIX = "fk:";
|
|
1244
1314
|
async function resolveForeignKey(adapter, constraintDataset, constraintName, childColumns, cache) {
|
|
1245
1315
|
const cacheKey = `${FK_CACHE_PREFIX}${constraintDataset}:${constraintName}`;
|
|
1246
1316
|
if (cache?.has(cacheKey)) {
|
|
1247
|
-
const cached = cache.get(cacheKey);
|
|
1317
|
+
const cached = fkResolution.optional().parse(cache.get(cacheKey));
|
|
1248
1318
|
if (!cached) return void 0;
|
|
1249
1319
|
return {
|
|
1250
1320
|
...cached,
|
|
@@ -1261,11 +1331,14 @@ async function resolveForeignKey(adapter, constraintDataset, constraintName, chi
|
|
|
1261
1331
|
return result;
|
|
1262
1332
|
}
|
|
1263
1333
|
async function resolveFK(adapter, constraintDataset, constraintName, childColumns) {
|
|
1264
|
-
const refRows = await adapter.runQuery(
|
|
1334
|
+
const refRows = await adapter.runQuery(
|
|
1335
|
+
`
|
|
1265
1336
|
SELECT DISTINCT table_schema, table_name
|
|
1266
1337
|
FROM ${adapter.infoSchemaView(constraintDataset, "CONSTRAINT_COLUMN_USAGE")}
|
|
1267
1338
|
WHERE constraint_name = '${adapter.escapeString(constraintName)}'
|
|
1268
|
-
|
|
1339
|
+
`,
|
|
1340
|
+
referencedTableRow
|
|
1341
|
+
);
|
|
1269
1342
|
const referenced = refRows.find((r) => r.table_schema && r.table_name);
|
|
1270
1343
|
if (!referenced?.table_schema || !referenced.table_name) {
|
|
1271
1344
|
return void 0;
|
|
@@ -1275,22 +1348,28 @@ async function resolveFK(adapter, constraintDataset, constraintName, childColumn
|
|
|
1275
1348
|
if (!adapter.isDatasetAllowed(referencedDataset)) {
|
|
1276
1349
|
return void 0;
|
|
1277
1350
|
}
|
|
1278
|
-
const pkConstraintRows = await adapter.runQuery(
|
|
1351
|
+
const pkConstraintRows = await adapter.runQuery(
|
|
1352
|
+
`
|
|
1279
1353
|
SELECT constraint_name
|
|
1280
1354
|
FROM ${adapter.infoSchemaView(referencedDataset, "TABLE_CONSTRAINTS")}
|
|
1281
1355
|
WHERE constraint_type = 'PRIMARY KEY'
|
|
1282
1356
|
AND table_name = '${adapter.escapeString(referencedTable)}'
|
|
1283
1357
|
LIMIT 1
|
|
1284
|
-
|
|
1358
|
+
`,
|
|
1359
|
+
constraintNameRow
|
|
1360
|
+
);
|
|
1285
1361
|
const pkConstraintName = pkConstraintRows[0]?.constraint_name;
|
|
1286
1362
|
if (!pkConstraintName) return void 0;
|
|
1287
|
-
const pkColumnRows = await adapter.runQuery(
|
|
1363
|
+
const pkColumnRows = await adapter.runQuery(
|
|
1364
|
+
`
|
|
1288
1365
|
SELECT column_name, ordinal_position
|
|
1289
1366
|
FROM ${adapter.infoSchemaView(referencedDataset, "KEY_COLUMN_USAGE")}
|
|
1290
1367
|
WHERE constraint_name = '${adapter.escapeString(pkConstraintName)}'
|
|
1291
1368
|
AND table_name = '${adapter.escapeString(referencedTable)}'
|
|
1292
1369
|
ORDER BY ordinal_position
|
|
1293
|
-
|
|
1370
|
+
`,
|
|
1371
|
+
primaryKeyColumnRow
|
|
1372
|
+
);
|
|
1294
1373
|
const pkByOrdinal = /* @__PURE__ */ new Map();
|
|
1295
1374
|
for (const row of pkColumnRows) {
|
|
1296
1375
|
if (!row.column_name || row.ordinal_position == null) continue;
|
|
@@ -1309,6 +1388,16 @@ async function resolveFK(adapter, constraintDataset, constraintName, childColumn
|
|
|
1309
1388
|
}
|
|
1310
1389
|
|
|
1311
1390
|
// packages/text2sql/src/lib/adapters/bigquery/constraint.bigquery.grounding.ts
|
|
1391
|
+
var columnMetadataRow = z4.object({
|
|
1392
|
+
table_name: z4.string().nullable(),
|
|
1393
|
+
column_name: z4.string().nullable(),
|
|
1394
|
+
is_nullable: z4.string().nullable(),
|
|
1395
|
+
column_default: z4.string().nullable()
|
|
1396
|
+
});
|
|
1397
|
+
var tableKeyColumnRow = keyColumnUsageRow.extend({
|
|
1398
|
+
table_name: z4.string().nullable(),
|
|
1399
|
+
constraint_type: z4.string().nullable()
|
|
1400
|
+
});
|
|
1312
1401
|
var BigQueryConstraintGrounding = class extends ConstraintGrounding {
|
|
1313
1402
|
#adapter;
|
|
1314
1403
|
#cache;
|
|
@@ -1367,12 +1456,15 @@ var BigQueryConstraintGrounding = class extends ConstraintGrounding {
|
|
|
1367
1456
|
}
|
|
1368
1457
|
}
|
|
1369
1458
|
async #batchColumnMetadata(dataset, inList, constraintsByTable) {
|
|
1370
|
-
const rows = await this.#adapter.runQuery(
|
|
1459
|
+
const rows = await this.#adapter.runQuery(
|
|
1460
|
+
`
|
|
1371
1461
|
SELECT table_name, column_name, is_nullable, column_default
|
|
1372
1462
|
FROM ${this.#adapter.infoSchemaView(dataset, "COLUMNS")}
|
|
1373
1463
|
WHERE table_name IN (${inList})
|
|
1374
1464
|
ORDER BY table_name, ordinal_position
|
|
1375
|
-
|
|
1465
|
+
`,
|
|
1466
|
+
columnMetadataRow
|
|
1467
|
+
);
|
|
1376
1468
|
for (const row of rows) {
|
|
1377
1469
|
if (!row.table_name || !row.column_name) continue;
|
|
1378
1470
|
const constraints2 = constraintsByTable.get(row.table_name);
|
|
@@ -1395,7 +1487,8 @@ var BigQueryConstraintGrounding = class extends ConstraintGrounding {
|
|
|
1395
1487
|
}
|
|
1396
1488
|
}
|
|
1397
1489
|
async #batchKeyConstraints(dataset, inList, constraintsByTable) {
|
|
1398
|
-
const rows = await this.#adapter.runQuery(
|
|
1490
|
+
const rows = await this.#adapter.runQuery(
|
|
1491
|
+
`
|
|
1399
1492
|
SELECT
|
|
1400
1493
|
tc.table_name,
|
|
1401
1494
|
tc.constraint_name,
|
|
@@ -1410,7 +1503,9 @@ var BigQueryConstraintGrounding = class extends ConstraintGrounding {
|
|
|
1410
1503
|
WHERE tc.table_name IN (${inList})
|
|
1411
1504
|
AND tc.constraint_type IN ('PRIMARY KEY', 'FOREIGN KEY')
|
|
1412
1505
|
ORDER BY tc.table_name, tc.constraint_name, kcu.ordinal_position
|
|
1413
|
-
|
|
1506
|
+
`,
|
|
1507
|
+
tableKeyColumnRow
|
|
1508
|
+
);
|
|
1414
1509
|
const pkByTable = /* @__PURE__ */ new Map();
|
|
1415
1510
|
const fkByTable = /* @__PURE__ */ new Map();
|
|
1416
1511
|
for (const row of rows) {
|
|
@@ -1477,6 +1572,13 @@ var BigQueryConstraintGrounding = class extends ConstraintGrounding {
|
|
|
1477
1572
|
};
|
|
1478
1573
|
|
|
1479
1574
|
// packages/text2sql/src/lib/adapters/bigquery/indexes.bigquery.grounding.ts
|
|
1575
|
+
import { z as z5 } from "zod";
|
|
1576
|
+
var indexHintRow = z5.object({
|
|
1577
|
+
table_name: z5.string().nullable(),
|
|
1578
|
+
column_name: z5.string().nullable(),
|
|
1579
|
+
is_partitioning_column: z5.string().nullable(),
|
|
1580
|
+
clustering_ordinal_position: int64.nullable()
|
|
1581
|
+
});
|
|
1480
1582
|
var BigQueryIndexesGrounding = class extends IndexesGrounding {
|
|
1481
1583
|
#adapter;
|
|
1482
1584
|
constructor(adapter, config = {}) {
|
|
@@ -1516,13 +1618,16 @@ var BigQueryIndexesGrounding = class extends IndexesGrounding {
|
|
|
1516
1618
|
(t) => this.#adapter.parseTableName(t.name).table
|
|
1517
1619
|
);
|
|
1518
1620
|
const inList = tableNames.map((n) => `'${this.#adapter.escapeString(n)}'`).join(", ");
|
|
1519
|
-
const rows = await this.#adapter.runQuery(
|
|
1621
|
+
const rows = await this.#adapter.runQuery(
|
|
1622
|
+
`
|
|
1520
1623
|
SELECT table_name, column_name, is_partitioning_column, clustering_ordinal_position
|
|
1521
1624
|
FROM ${this.#adapter.infoSchemaView(dataset, "COLUMNS")}
|
|
1522
1625
|
WHERE table_name IN (${inList})
|
|
1523
1626
|
AND (is_partitioning_column = 'YES' OR clustering_ordinal_position IS NOT NULL)
|
|
1524
1627
|
ORDER BY table_name, clustering_ordinal_position
|
|
1525
|
-
|
|
1628
|
+
`,
|
|
1629
|
+
indexHintRow
|
|
1630
|
+
);
|
|
1526
1631
|
const byTable = /* @__PURE__ */ new Map();
|
|
1527
1632
|
for (const row of rows) {
|
|
1528
1633
|
if (!row.table_name || !row.column_name) continue;
|
|
@@ -1603,6 +1708,29 @@ var BigQueryInfoGrounding = class extends InfoGrounding {
|
|
|
1603
1708
|
};
|
|
1604
1709
|
|
|
1605
1710
|
// packages/text2sql/src/lib/adapters/bigquery/row-count.bigquery.grounding.ts
|
|
1711
|
+
import { z as z7 } from "zod";
|
|
1712
|
+
|
|
1713
|
+
// packages/text2sql/src/lib/adapters/groundings/rows.ts
|
|
1714
|
+
import { z as z6 } from "zod";
|
|
1715
|
+
var nameRow = z6.object({ name: z6.string() });
|
|
1716
|
+
var versionRow = z6.object({ version: z6.string() });
|
|
1717
|
+
var databaseRow = z6.object({ db: z6.string() });
|
|
1718
|
+
var viewDefinitionRow = z6.object({
|
|
1719
|
+
definition: z6.string().nullable()
|
|
1720
|
+
});
|
|
1721
|
+
var distinctValueRow = z6.object({ value: z6.unknown() });
|
|
1722
|
+
var textValueRow = z6.object({ value: z6.string() });
|
|
1723
|
+
var numericValue = z6.union([z6.number(), z6.bigint(), z6.string()]);
|
|
1724
|
+
|
|
1725
|
+
// packages/text2sql/src/lib/adapters/bigquery/row-count.bigquery.grounding.ts
|
|
1726
|
+
var tableStorageRow = z7.object({
|
|
1727
|
+
table_name: z7.string().nullable(),
|
|
1728
|
+
total_rows: numericValue.nullable()
|
|
1729
|
+
});
|
|
1730
|
+
var legacyRowCountRow = z7.object({
|
|
1731
|
+
table_name: z7.string().nullable(),
|
|
1732
|
+
row_count: numericValue.nullable()
|
|
1733
|
+
});
|
|
1606
1734
|
var BigQueryRowCountGrounding = class extends RowCountGrounding {
|
|
1607
1735
|
#adapter;
|
|
1608
1736
|
constructor(adapter, config = {}) {
|
|
@@ -1658,11 +1786,14 @@ var BigQueryRowCountGrounding = class extends RowCountGrounding {
|
|
|
1658
1786
|
return /* @__PURE__ */ new Map();
|
|
1659
1787
|
}
|
|
1660
1788
|
async #fromTableStorage(dataset, inList) {
|
|
1661
|
-
const rows = await this.#adapter.runQuery(
|
|
1789
|
+
const rows = await this.#adapter.runQuery(
|
|
1790
|
+
`
|
|
1662
1791
|
SELECT table_name, total_rows
|
|
1663
1792
|
FROM ${this.#adapter.infoSchemaView(dataset, "TABLE_STORAGE")}
|
|
1664
1793
|
WHERE table_name IN (${inList})
|
|
1665
|
-
|
|
1794
|
+
`,
|
|
1795
|
+
tableStorageRow
|
|
1796
|
+
);
|
|
1666
1797
|
const result = /* @__PURE__ */ new Map();
|
|
1667
1798
|
for (const row of rows) {
|
|
1668
1799
|
if (!row.table_name) continue;
|
|
@@ -1673,11 +1804,14 @@ var BigQueryRowCountGrounding = class extends RowCountGrounding {
|
|
|
1673
1804
|
}
|
|
1674
1805
|
async #fromLegacyTables(dataset, inList) {
|
|
1675
1806
|
const projectPrefix = this.#adapter.projectId ? `\`${this.#adapter.projectId}\`.` : "";
|
|
1676
|
-
const rows = await this.#adapter.runQuery(
|
|
1807
|
+
const rows = await this.#adapter.runQuery(
|
|
1808
|
+
`
|
|
1677
1809
|
SELECT table_id AS table_name, row_count
|
|
1678
1810
|
FROM ${projectPrefix}\`${dataset}\`.__TABLES__
|
|
1679
1811
|
WHERE table_id IN (${inList})
|
|
1680
|
-
|
|
1812
|
+
`,
|
|
1813
|
+
legacyRowCountRow
|
|
1814
|
+
);
|
|
1681
1815
|
const result = /* @__PURE__ */ new Map();
|
|
1682
1816
|
for (const row of rows) {
|
|
1683
1817
|
if (!row.table_name) continue;
|
|
@@ -1699,6 +1833,15 @@ var BigQueryRowCountGrounding = class extends RowCountGrounding {
|
|
|
1699
1833
|
};
|
|
1700
1834
|
|
|
1701
1835
|
// packages/text2sql/src/lib/adapters/bigquery/table.bigquery.grounding.ts
|
|
1836
|
+
import { z as z8 } from "zod";
|
|
1837
|
+
var columnFieldPathRow = z8.object({
|
|
1838
|
+
field_path: z8.string().nullable(),
|
|
1839
|
+
data_type: z8.string().nullable(),
|
|
1840
|
+
ordinal_position: int64.nullable()
|
|
1841
|
+
});
|
|
1842
|
+
var childKeyColumnRow = keyColumnUsageRow.extend({
|
|
1843
|
+
child_table_name: z8.string().nullable()
|
|
1844
|
+
});
|
|
1702
1845
|
var BigQueryTableGrounding = class extends TableGrounding {
|
|
1703
1846
|
#adapter;
|
|
1704
1847
|
#cache;
|
|
@@ -1722,12 +1865,15 @@ var BigQueryTableGrounding = class extends TableGrounding {
|
|
|
1722
1865
|
async getAllTableNames() {
|
|
1723
1866
|
const names = [];
|
|
1724
1867
|
for (const dataset of this.#adapter.datasets) {
|
|
1725
|
-
const rows = await this.#adapter.runQuery(
|
|
1868
|
+
const rows = await this.#adapter.runQuery(
|
|
1869
|
+
`
|
|
1726
1870
|
SELECT table_name
|
|
1727
1871
|
FROM ${this.#adapter.infoSchemaView(dataset, "TABLES")}
|
|
1728
1872
|
WHERE table_type = 'BASE TABLE'
|
|
1729
1873
|
ORDER BY table_name
|
|
1730
|
-
|
|
1874
|
+
`,
|
|
1875
|
+
tableNameRow
|
|
1876
|
+
);
|
|
1731
1877
|
for (const row of rows) {
|
|
1732
1878
|
if (!row.table_name) continue;
|
|
1733
1879
|
names.push(`${dataset}.${row.table_name}`);
|
|
@@ -1737,7 +1883,8 @@ var BigQueryTableGrounding = class extends TableGrounding {
|
|
|
1737
1883
|
}
|
|
1738
1884
|
async getTable(tableName) {
|
|
1739
1885
|
const { schema: dataset, table: table2 } = this.#adapter.parseTableName(tableName);
|
|
1740
|
-
const rows = await this.#adapter.runQuery(
|
|
1886
|
+
const rows = await this.#adapter.runQuery(
|
|
1887
|
+
`
|
|
1741
1888
|
SELECT
|
|
1742
1889
|
f.field_path,
|
|
1743
1890
|
f.data_type,
|
|
@@ -1748,7 +1895,9 @@ var BigQueryTableGrounding = class extends TableGrounding {
|
|
|
1748
1895
|
AND f.column_name = c.column_name
|
|
1749
1896
|
WHERE f.table_name = '${this.#adapter.escapeString(table2)}'
|
|
1750
1897
|
ORDER BY c.ordinal_position, f.field_path
|
|
1751
|
-
|
|
1898
|
+
`,
|
|
1899
|
+
columnFieldPathRow
|
|
1900
|
+
);
|
|
1752
1901
|
const seen = /* @__PURE__ */ new Set();
|
|
1753
1902
|
const columns = rows.map((r) => ({
|
|
1754
1903
|
name: r.field_path ?? "unknown",
|
|
@@ -1769,7 +1918,8 @@ var BigQueryTableGrounding = class extends TableGrounding {
|
|
|
1769
1918
|
}
|
|
1770
1919
|
async findOutgoingRelations(tableName) {
|
|
1771
1920
|
const { schema: dataset, table: table2 } = this.#adapter.parseTableName(tableName);
|
|
1772
|
-
const rows = await this.#adapter.runQuery(
|
|
1921
|
+
const rows = await this.#adapter.runQuery(
|
|
1922
|
+
`
|
|
1773
1923
|
SELECT
|
|
1774
1924
|
kcu.constraint_name,
|
|
1775
1925
|
kcu.column_name,
|
|
@@ -1782,7 +1932,9 @@ var BigQueryTableGrounding = class extends TableGrounding {
|
|
|
1782
1932
|
WHERE tc.constraint_type = 'FOREIGN KEY'
|
|
1783
1933
|
AND tc.table_name = '${this.#adapter.escapeString(table2)}'
|
|
1784
1934
|
ORDER BY kcu.constraint_name, kcu.ordinal_position
|
|
1785
|
-
|
|
1935
|
+
`,
|
|
1936
|
+
keyColumnUsageRow
|
|
1937
|
+
);
|
|
1786
1938
|
const byConstraint = /* @__PURE__ */ new Map();
|
|
1787
1939
|
for (const row of rows) {
|
|
1788
1940
|
if (!row.constraint_name || !row.column_name) continue;
|
|
@@ -1818,12 +1970,15 @@ var BigQueryTableGrounding = class extends TableGrounding {
|
|
|
1818
1970
|
const { schema: referencedDataset, table: referencedTable } = this.#adapter.parseTableName(tableName);
|
|
1819
1971
|
const rels = [];
|
|
1820
1972
|
for (const constraintDataset of this.#adapter.datasets) {
|
|
1821
|
-
const rows = await this.#adapter.runQuery(
|
|
1973
|
+
const rows = await this.#adapter.runQuery(
|
|
1974
|
+
`
|
|
1822
1975
|
SELECT DISTINCT constraint_name
|
|
1823
1976
|
FROM ${this.#adapter.infoSchemaView(constraintDataset, "CONSTRAINT_COLUMN_USAGE")}
|
|
1824
1977
|
WHERE table_schema = '${this.#adapter.escapeString(referencedDataset)}'
|
|
1825
1978
|
AND table_name = '${this.#adapter.escapeString(referencedTable)}'
|
|
1826
|
-
|
|
1979
|
+
`,
|
|
1980
|
+
constraintNameRow
|
|
1981
|
+
);
|
|
1827
1982
|
for (const row of rows) {
|
|
1828
1983
|
if (!row.constraint_name) continue;
|
|
1829
1984
|
const rel = await this.#resolveIncomingRelationship(
|
|
@@ -1838,7 +1993,8 @@ var BigQueryTableGrounding = class extends TableGrounding {
|
|
|
1838
1993
|
return rels;
|
|
1839
1994
|
}
|
|
1840
1995
|
async #resolveIncomingRelationship(constraintDataset, constraintName, expectedReferencedDataset, expectedReferencedTable) {
|
|
1841
|
-
const keyRows = await this.#adapter.runQuery(
|
|
1996
|
+
const keyRows = await this.#adapter.runQuery(
|
|
1997
|
+
`
|
|
1842
1998
|
SELECT
|
|
1843
1999
|
kcu.constraint_name,
|
|
1844
2000
|
tc.table_name AS child_table_name,
|
|
@@ -1852,7 +2008,9 @@ var BigQueryTableGrounding = class extends TableGrounding {
|
|
|
1852
2008
|
WHERE tc.constraint_type = 'FOREIGN KEY'
|
|
1853
2009
|
AND tc.constraint_name = '${this.#adapter.escapeString(constraintName)}'
|
|
1854
2010
|
ORDER BY kcu.ordinal_position
|
|
1855
|
-
|
|
2011
|
+
`,
|
|
2012
|
+
childKeyColumnRow
|
|
2013
|
+
);
|
|
1856
2014
|
if (keyRows.length === 0) return void 0;
|
|
1857
2015
|
const childTable = keyRows[0]?.child_table_name;
|
|
1858
2016
|
if (!childTable) return void 0;
|
|
@@ -1884,6 +2042,9 @@ var BigQueryTableGrounding = class extends TableGrounding {
|
|
|
1884
2042
|
}
|
|
1885
2043
|
};
|
|
1886
2044
|
|
|
2045
|
+
// packages/text2sql/src/lib/adapters/bigquery/view.bigquery.grounding.ts
|
|
2046
|
+
import { z as z9 } from "zod";
|
|
2047
|
+
|
|
1887
2048
|
// packages/text2sql/src/lib/adapters/groundings/view.grounding.ts
|
|
1888
2049
|
var ViewGrounding = class extends AbstractGrounding {
|
|
1889
2050
|
#filter;
|
|
@@ -1940,6 +2101,11 @@ var ViewGrounding = class extends AbstractGrounding {
|
|
|
1940
2101
|
};
|
|
1941
2102
|
|
|
1942
2103
|
// packages/text2sql/src/lib/adapters/bigquery/view.bigquery.grounding.ts
|
|
2104
|
+
var viewDefinitionRow2 = z9.object({ ddl: z9.string().nullable() });
|
|
2105
|
+
var columnRow = z9.object({
|
|
2106
|
+
column_name: z9.string().nullable(),
|
|
2107
|
+
data_type: z9.string().nullable()
|
|
2108
|
+
});
|
|
1943
2109
|
var BigQueryViewGrounding = class extends ViewGrounding {
|
|
1944
2110
|
#adapter;
|
|
1945
2111
|
constructor(adapter, config = {}) {
|
|
@@ -1953,12 +2119,15 @@ var BigQueryViewGrounding = class extends ViewGrounding {
|
|
|
1953
2119
|
async getAllViewNames() {
|
|
1954
2120
|
const names = [];
|
|
1955
2121
|
for (const dataset of this.#adapter.datasets) {
|
|
1956
|
-
const rows = await this.#adapter.runQuery(
|
|
2122
|
+
const rows = await this.#adapter.runQuery(
|
|
2123
|
+
`
|
|
1957
2124
|
SELECT table_name
|
|
1958
2125
|
FROM ${this.#adapter.infoSchemaView(dataset, "TABLES")}
|
|
1959
2126
|
WHERE table_type IN ('VIEW', 'MATERIALIZED VIEW')
|
|
1960
2127
|
ORDER BY table_name
|
|
1961
|
-
|
|
2128
|
+
`,
|
|
2129
|
+
tableNameRow
|
|
2130
|
+
);
|
|
1962
2131
|
for (const row of rows) {
|
|
1963
2132
|
if (!row.table_name) continue;
|
|
1964
2133
|
names.push(`${dataset}.${row.table_name}`);
|
|
@@ -1970,21 +2139,27 @@ var BigQueryViewGrounding = class extends ViewGrounding {
|
|
|
1970
2139
|
const { schema: dataset, table: table2 } = this.#adapter.parseTableName(viewName);
|
|
1971
2140
|
let definition;
|
|
1972
2141
|
if (this.includeDefinition) {
|
|
1973
|
-
const defRows = await this.#adapter.runQuery(
|
|
2142
|
+
const defRows = await this.#adapter.runQuery(
|
|
2143
|
+
`
|
|
1974
2144
|
SELECT ddl
|
|
1975
2145
|
FROM ${this.#adapter.infoSchemaView(dataset, "TABLES")}
|
|
1976
2146
|
WHERE table_name = '${this.#adapter.escapeString(table2)}'
|
|
1977
2147
|
AND table_type IN ('VIEW', 'MATERIALIZED VIEW')
|
|
1978
2148
|
LIMIT 1
|
|
1979
|
-
|
|
2149
|
+
`,
|
|
2150
|
+
viewDefinitionRow2
|
|
2151
|
+
);
|
|
1980
2152
|
definition = defRows[0]?.ddl ?? void 0;
|
|
1981
2153
|
}
|
|
1982
|
-
const columns = await this.#adapter.runQuery(
|
|
2154
|
+
const columns = await this.#adapter.runQuery(
|
|
2155
|
+
`
|
|
1983
2156
|
SELECT column_name, data_type
|
|
1984
2157
|
FROM ${this.#adapter.infoSchemaView(dataset, "COLUMNS")}
|
|
1985
2158
|
WHERE table_name = '${this.#adapter.escapeString(table2)}'
|
|
1986
2159
|
ORDER BY ordinal_position
|
|
1987
|
-
|
|
2160
|
+
`,
|
|
2161
|
+
columnRow
|
|
2162
|
+
);
|
|
1988
2163
|
return {
|
|
1989
2164
|
name: `${dataset}.${table2}`,
|
|
1990
2165
|
schema: dataset,
|
|
@@ -2004,22 +2179,40 @@ var BigQueryViewGrounding = class extends ViewGrounding {
|
|
|
2004
2179
|
|
|
2005
2180
|
// packages/text2sql/src/lib/adapters/bigquery/index.ts
|
|
2006
2181
|
function tables(config = {}) {
|
|
2007
|
-
return (
|
|
2182
|
+
return groundingFor(
|
|
2183
|
+
BigQuery,
|
|
2184
|
+
(adapter) => new BigQueryTableGrounding(adapter, config)
|
|
2185
|
+
);
|
|
2008
2186
|
}
|
|
2009
2187
|
function info(config = {}) {
|
|
2010
|
-
return (
|
|
2188
|
+
return groundingFor(
|
|
2189
|
+
BigQuery,
|
|
2190
|
+
(adapter) => new BigQueryInfoGrounding(adapter)
|
|
2191
|
+
);
|
|
2011
2192
|
}
|
|
2012
2193
|
function views(config = {}) {
|
|
2013
|
-
return (
|
|
2194
|
+
return groundingFor(
|
|
2195
|
+
BigQuery,
|
|
2196
|
+
(adapter) => new BigQueryViewGrounding(adapter, config)
|
|
2197
|
+
);
|
|
2014
2198
|
}
|
|
2015
2199
|
function indexes(config = {}) {
|
|
2016
|
-
return (
|
|
2200
|
+
return groundingFor(
|
|
2201
|
+
BigQuery,
|
|
2202
|
+
(adapter) => new BigQueryIndexesGrounding(adapter, config)
|
|
2203
|
+
);
|
|
2017
2204
|
}
|
|
2018
2205
|
function rowCount(config = {}) {
|
|
2019
|
-
return (
|
|
2206
|
+
return groundingFor(
|
|
2207
|
+
BigQuery,
|
|
2208
|
+
(adapter) => new BigQueryRowCountGrounding(adapter, config)
|
|
2209
|
+
);
|
|
2020
2210
|
}
|
|
2021
2211
|
function constraints(config = {}) {
|
|
2022
|
-
return (
|
|
2212
|
+
return groundingFor(
|
|
2213
|
+
BigQuery,
|
|
2214
|
+
(adapter) => new BigQueryConstraintGrounding(adapter, config)
|
|
2215
|
+
);
|
|
2023
2216
|
}
|
|
2024
2217
|
var bigquery_default = {
|
|
2025
2218
|
tables,
|