@deepagents/text2sql 0.3.0 → 0.6.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 +167 -0
- package/dist/finetune/convert-to-gguf.d.ts +18 -0
- package/dist/finetune/convert-to-gguf.d.ts.map +1 -0
- package/dist/finetune/run-finetune.d.ts +23 -0
- package/dist/finetune/run-finetune.d.ts.map +1 -0
- package/dist/finetune/run-mlx.d.ts +22 -0
- package/dist/finetune/run-mlx.d.ts.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1795 -284
- package/dist/index.js.map +4 -4
- package/dist/lib/adapters/adapter.d.ts +8 -3
- package/dist/lib/adapters/adapter.d.ts.map +1 -1
- package/dist/lib/adapters/{grounding.ticket.d.ts → groundings/abstract.grounding.d.ts} +2 -2
- package/dist/lib/adapters/groundings/abstract.grounding.d.ts.map +1 -0
- package/dist/lib/adapters/groundings/column-stats.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/column-stats.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/column-values.grounding.d.ts +76 -0
- package/dist/lib/adapters/groundings/column-values.grounding.d.ts.map +1 -0
- package/dist/lib/adapters/groundings/constraint.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/constraint.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/context.d.ts +1 -1
- package/dist/lib/adapters/groundings/context.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/{grounding.d.ts → index.d.ts} +8 -5
- package/dist/lib/adapters/groundings/index.d.ts.map +1 -0
- package/dist/lib/adapters/groundings/{grounding.js → index.js} +411 -206
- package/dist/lib/adapters/groundings/index.js.map +7 -0
- package/dist/lib/adapters/groundings/indexes.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/indexes.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/info.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/info.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/report.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/report.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/row-count.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/row-count.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/table.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/table.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/groundings/view.grounding.d.ts +1 -1
- package/dist/lib/adapters/groundings/view.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 +17 -0
- package/dist/lib/adapters/postgres/column-values.postgres.grounding.d.ts.map +1 -0
- package/dist/lib/adapters/postgres/index.d.ts +4 -4
- package/dist/lib/adapters/postgres/index.d.ts.map +1 -1
- package/dist/lib/adapters/postgres/index.js +239 -33
- package/dist/lib/adapters/postgres/index.js.map +4 -4
- package/dist/lib/adapters/postgres/postgres.d.ts +1 -0
- package/dist/lib/adapters/postgres/postgres.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/column-values.sqlite.grounding.d.ts +17 -0
- package/dist/lib/adapters/sqlite/column-values.sqlite.grounding.d.ts.map +1 -0
- package/dist/lib/adapters/sqlite/constraint.sqlite.grounding.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/index.d.ts +4 -4
- package/dist/lib/adapters/sqlite/index.d.ts.map +1 -1
- package/dist/lib/adapters/sqlite/index.js +218 -46
- package/dist/lib/adapters/sqlite/index.js.map +4 -4
- package/dist/lib/adapters/sqlite/sqlite.d.ts +1 -0
- package/dist/lib/adapters/sqlite/sqlite.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/column-values.sqlserver.grounding.d.ts +17 -0
- package/dist/lib/adapters/sqlserver/column-values.sqlserver.grounding.d.ts.map +1 -0
- package/dist/lib/adapters/sqlserver/index.d.ts +4 -4
- package/dist/lib/adapters/sqlserver/index.d.ts.map +1 -1
- package/dist/lib/adapters/sqlserver/index.js +185 -32
- package/dist/lib/adapters/sqlserver/index.js.map +4 -4
- package/dist/lib/adapters/sqlserver/sqlserver.d.ts +1 -0
- package/dist/lib/adapters/sqlserver/sqlserver.d.ts.map +1 -1
- package/dist/lib/agents/chat1.agent.d.ts +50 -0
- package/dist/lib/agents/chat1.agent.d.ts.map +1 -0
- package/dist/lib/agents/chat2.agent.d.ts +68 -0
- package/dist/lib/agents/chat2.agent.d.ts.map +1 -0
- package/dist/lib/agents/chat3.agent.d.ts +80 -0
- package/dist/lib/agents/chat3.agent.d.ts.map +1 -0
- package/dist/lib/agents/chat4.agent.d.ts +88 -0
- package/dist/lib/agents/chat4.agent.d.ts.map +1 -0
- package/dist/lib/agents/question.agent.d.ts +23 -0
- package/dist/lib/agents/question.agent.d.ts.map +1 -0
- package/dist/lib/agents/sql.agent.d.ts +62 -0
- package/dist/lib/agents/sql.agent.d.ts.map +1 -0
- package/dist/lib/agents/teachables.agent.d.ts +8 -9
- package/dist/lib/agents/teachables.agent.d.ts.map +1 -1
- package/dist/lib/agents/text2sql.agent.d.ts +0 -1
- package/dist/lib/agents/text2sql.agent.d.ts.map +1 -1
- package/dist/lib/checkpoint.d.ts +99 -0
- package/dist/lib/checkpoint.d.ts.map +1 -0
- package/dist/lib/instructions.js +50 -21
- package/dist/lib/instructions.js.map +2 -2
- package/dist/lib/sql.d.ts +83 -3
- package/dist/lib/sql.d.ts.map +1 -1
- package/dist/lib/syntheize.d.ts +2 -0
- package/dist/lib/syntheize.d.ts.map +1 -0
- package/dist/lib/synthesis/decorators/deduplicated-producer.d.ts +26 -0
- package/dist/lib/synthesis/decorators/deduplicated-producer.d.ts.map +1 -0
- package/dist/lib/synthesis/decorators/filtered-producer.d.ts +26 -0
- package/dist/lib/synthesis/decorators/filtered-producer.d.ts.map +1 -0
- package/dist/lib/synthesis/decorators/index.d.ts +7 -0
- package/dist/lib/synthesis/decorators/index.d.ts.map +1 -0
- package/dist/lib/synthesis/decorators/validated-producer.d.ts +33 -0
- package/dist/lib/synthesis/decorators/validated-producer.d.ts.map +1 -0
- package/dist/lib/synthesis/extractors/base-contextual-extractor.d.ts +76 -0
- package/dist/lib/synthesis/extractors/base-contextual-extractor.d.ts.map +1 -0
- package/dist/lib/synthesis/extractors/full-context-extractor.d.ts +25 -0
- package/dist/lib/synthesis/extractors/full-context-extractor.d.ts.map +1 -0
- package/dist/lib/synthesis/extractors/index.d.ts +8 -0
- package/dist/lib/synthesis/extractors/index.d.ts.map +1 -0
- package/dist/lib/synthesis/extractors/last-query-extractor.d.ts +30 -0
- package/dist/lib/synthesis/extractors/last-query-extractor.d.ts.map +1 -0
- package/dist/lib/synthesis/extractors/message-extractor.d.ts +27 -0
- package/dist/lib/synthesis/extractors/message-extractor.d.ts.map +1 -0
- package/dist/lib/synthesis/extractors/segmented-context-extractor.d.ts +48 -0
- package/dist/lib/synthesis/extractors/segmented-context-extractor.d.ts.map +1 -0
- package/dist/lib/synthesis/extractors/sql-extractor.d.ts +27 -0
- package/dist/lib/synthesis/extractors/sql-extractor.d.ts.map +1 -0
- package/dist/lib/synthesis/extractors/windowed-context-extractor.d.ts +30 -0
- package/dist/lib/synthesis/extractors/windowed-context-extractor.d.ts.map +1 -0
- package/dist/lib/synthesis/index.d.ts +6 -0
- package/dist/lib/synthesis/index.d.ts.map +1 -0
- package/dist/lib/synthesis/index.js +2069 -0
- package/dist/lib/synthesis/index.js.map +7 -0
- package/dist/lib/synthesis/synthesizers/breadth-evolver.d.ts +34 -0
- package/dist/lib/synthesis/synthesizers/breadth-evolver.d.ts.map +1 -0
- package/dist/lib/synthesis/synthesizers/depth-evolver.d.ts +41 -0
- package/dist/lib/synthesis/synthesizers/depth-evolver.d.ts.map +1 -0
- package/dist/lib/synthesis/synthesizers/index.d.ts +7 -0
- package/dist/lib/synthesis/synthesizers/index.d.ts.map +1 -0
- package/dist/lib/synthesis/synthesizers/persona-generator.d.ts +34 -0
- package/dist/lib/synthesis/synthesizers/persona-generator.d.ts.map +1 -0
- package/dist/lib/synthesis/synthesizers/schema-synthesizer.d.ts +39 -0
- package/dist/lib/synthesis/synthesizers/schema-synthesizer.d.ts.map +1 -0
- package/dist/lib/synthesis/synthesizers/styles.d.ts +8 -0
- package/dist/lib/synthesis/synthesizers/styles.d.ts.map +1 -0
- package/dist/lib/synthesis/synthesizers/teachings-generator.d.ts +32 -0
- package/dist/lib/synthesis/synthesizers/teachings-generator.d.ts.map +1 -0
- package/dist/lib/synthesis/types.d.ts +26 -0
- package/dist/lib/synthesis/types.d.ts.map +1 -0
- package/dist/lib/teach/teachables.d.ts +18 -3
- package/dist/lib/teach/teachables.d.ts.map +1 -1
- package/dist/lib/teach/teachings.d.ts +9 -2
- package/dist/lib/teach/teachings.d.ts.map +1 -1
- package/package.json +32 -15
- package/dist/lib/adapters/grounding.ticket.d.ts.map +0 -1
- package/dist/lib/adapters/groundings/grounding.d.ts.map +0 -1
- package/dist/lib/adapters/groundings/grounding.js.map +0 -7
- package/dist/lib/adapters/groundings/low-cardinality.grounding.d.ts +0 -35
- package/dist/lib/adapters/groundings/low-cardinality.grounding.d.ts.map +0 -1
- package/dist/lib/adapters/postgres/low-cardinality.postgres.grounding.d.ts +0 -14
- package/dist/lib/adapters/postgres/low-cardinality.postgres.grounding.d.ts.map +0 -1
- package/dist/lib/adapters/sqlite/low-cardinality.sqlite.grounding.d.ts +0 -14
- package/dist/lib/adapters/sqlite/low-cardinality.sqlite.grounding.d.ts.map +0 -1
- package/dist/lib/adapters/sqlserver/low-cardinality.sqlserver.grounding.d.ts +0 -14
- package/dist/lib/adapters/sqlserver/low-cardinality.sqlserver.grounding.d.ts.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AbstractGrounding } from './grounding.
|
|
1
|
+
import type { AbstractGrounding } from './groundings/abstract.grounding.ts';
|
|
2
2
|
/**
|
|
3
3
|
* Filter type for view/table names.
|
|
4
4
|
* - string[]: explicit list of view names
|
|
@@ -13,7 +13,7 @@ export interface Table {
|
|
|
13
13
|
columns: {
|
|
14
14
|
name: string;
|
|
15
15
|
type: string;
|
|
16
|
-
kind?: 'LowCardinality';
|
|
16
|
+
kind?: 'LowCardinality' | 'Enum';
|
|
17
17
|
values?: string[];
|
|
18
18
|
isIndexed?: boolean;
|
|
19
19
|
stats?: ColumnStats;
|
|
@@ -86,7 +86,7 @@ export declare abstract class Adapter {
|
|
|
86
86
|
* System schemas to exclude from introspection by default.
|
|
87
87
|
*/
|
|
88
88
|
abstract readonly systemSchemas: string[];
|
|
89
|
-
introspect(): Promise<string>;
|
|
89
|
+
introspect(ctx?: import("./groundings/context.ts").GroundingContext): Promise<string>;
|
|
90
90
|
abstract execute(sql: string): Promise<any[]> | any[];
|
|
91
91
|
abstract validate(sql: string): Promise<string | void> | string | void;
|
|
92
92
|
abstract runQuery<Row>(sql: string): Promise<Row[]> | Row[];
|
|
@@ -100,6 +100,11 @@ export declare abstract class Adapter {
|
|
|
100
100
|
* Each database escapes different characters.
|
|
101
101
|
*/
|
|
102
102
|
abstract escape(value: string): string;
|
|
103
|
+
/**
|
|
104
|
+
* Build a SELECT query to sample rows from a table.
|
|
105
|
+
* Each database uses different syntax for limiting rows (LIMIT vs TOP).
|
|
106
|
+
*/
|
|
107
|
+
abstract buildSampleRowsQuery(tableName: string, columns: string[] | undefined, limit: number): string;
|
|
103
108
|
/**
|
|
104
109
|
* Convert unknown database value to number.
|
|
105
110
|
* Handles number, bigint, and string types.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/adapters/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/adapters/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GroundingContext } from './
|
|
1
|
+
import type { GroundingContext } from './context.ts';
|
|
2
2
|
/**
|
|
3
3
|
* Filter type for table names.
|
|
4
4
|
* - string[]: explicit list of table names
|
|
@@ -18,4 +18,4 @@ export declare abstract class AbstractGrounding {
|
|
|
18
18
|
constructor(tag: string);
|
|
19
19
|
abstract execute(ctx: GroundingContext): Promise<() => string | null>;
|
|
20
20
|
}
|
|
21
|
-
//# sourceMappingURL=grounding.
|
|
21
|
+
//# sourceMappingURL=abstract.grounding.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"abstract.grounding.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/groundings/abstract.grounding.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD;;;;;GAKG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;AAE1E,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AACD,MAAM,MAAM,mBAAmB,GAC3B,WAAW,GACX,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,CAAC;AAE/C,8BAAsB,iBAAiB;IACrC,GAAG,EAAE,MAAM,CAAC;gBACA,GAAG,EAAE,MAAM;IAIvB,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC;CACtE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ColumnStats } from '../adapter.ts';
|
|
2
|
-
import { AbstractGrounding } from '
|
|
2
|
+
import { AbstractGrounding } from './abstract.grounding.ts';
|
|
3
3
|
import type { Column, GroundingContext } from './context.ts';
|
|
4
4
|
/**
|
|
5
5
|
* Configuration for ColumnStatsGrounding.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"column-stats.grounding.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/groundings/column-stats.grounding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"column-stats.grounding.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/groundings/column-stats.grounding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAmB,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAE9E;;GAEG;AACH,MAAM,WAAW,0BAA0B;CAE1C;AAED;;;;;;;;GAQG;AACH,8BAAsB,oBAAqB,SAAQ,iBAAiB;;gBACtD,MAAM,GAAE,0BAA+B;IAInD;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,CAC7B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAEnC;;;OAGG;IACG,OAAO,CAAC,GAAG,EAAE,gBAAgB;CA4BpC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import type { TableConstraint } from '../adapter.ts';
|
|
2
|
+
import { AbstractGrounding } from './abstract.grounding.ts';
|
|
3
|
+
import type { Column, ColumnContainer, GroundingContext } from './context.ts';
|
|
4
|
+
export type { Column, ColumnContainer };
|
|
5
|
+
/**
|
|
6
|
+
* Result of column value detection.
|
|
7
|
+
*/
|
|
8
|
+
export type ColumnValuesResult = {
|
|
9
|
+
kind: 'Enum' | 'LowCardinality';
|
|
10
|
+
values: string[];
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Configuration for ColumnValuesGrounding.
|
|
14
|
+
*/
|
|
15
|
+
export interface ColumnValuesGroundingConfig {
|
|
16
|
+
/** Maximum number of distinct values to consider low cardinality (default: 20) */
|
|
17
|
+
lowCardinalityLimit?: number;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Abstract base class for column values grounding.
|
|
21
|
+
*
|
|
22
|
+
* Discovers possible values for columns from three sources (in priority order):
|
|
23
|
+
* 1. Native ENUM types (PostgreSQL, MySQL) → kind: 'Enum'
|
|
24
|
+
* 2. CHECK constraints with IN clauses → kind: 'Enum'
|
|
25
|
+
* 3. Low cardinality data scan → kind: 'LowCardinality'
|
|
26
|
+
*
|
|
27
|
+
* Subclasses implement database-specific hooks:
|
|
28
|
+
* - `collectEnumValues()` - get values for native ENUM columns
|
|
29
|
+
* - `collectLowCardinality()` - collect distinct values via data scan
|
|
30
|
+
*/
|
|
31
|
+
export declare abstract class ColumnValuesGrounding extends AbstractGrounding {
|
|
32
|
+
#private;
|
|
33
|
+
protected lowCardinalityLimit: number;
|
|
34
|
+
constructor(config?: ColumnValuesGroundingConfig);
|
|
35
|
+
/**
|
|
36
|
+
* Get values for native ENUM type columns.
|
|
37
|
+
* Return undefined if column is not an ENUM type.
|
|
38
|
+
* Default implementation returns undefined (no native ENUM support).
|
|
39
|
+
*/
|
|
40
|
+
protected collectEnumValues(_tableName: string, _column: Column): Promise<string[] | undefined>;
|
|
41
|
+
/**
|
|
42
|
+
* Collect distinct values for low cardinality columns via data scan.
|
|
43
|
+
* Return undefined if column has too many distinct values.
|
|
44
|
+
*/
|
|
45
|
+
protected abstract collectLowCardinality(tableName: string, column: Column): Promise<string[] | undefined>;
|
|
46
|
+
/**
|
|
47
|
+
* Parse CHECK constraint for enum-like IN clause.
|
|
48
|
+
* Extracts values from patterns like:
|
|
49
|
+
* - CHECK (status IN ('active', 'inactive'))
|
|
50
|
+
* - CHECK ((status)::text = ANY (ARRAY['a'::text, 'b'::text]))
|
|
51
|
+
* - CHECK (status = 'active' OR status = 'inactive')
|
|
52
|
+
*/
|
|
53
|
+
protected parseCheckConstraint(constraint: TableConstraint, columnName: string): string[] | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* Extract string values from a comma-separated list.
|
|
56
|
+
*/
|
|
57
|
+
private extractStringValues;
|
|
58
|
+
/**
|
|
59
|
+
* Escape special regex characters in a string.
|
|
60
|
+
*/
|
|
61
|
+
private escapeRegex;
|
|
62
|
+
/**
|
|
63
|
+
* Get the table from context by name.
|
|
64
|
+
*/
|
|
65
|
+
private getTable;
|
|
66
|
+
/**
|
|
67
|
+
* Execute the grounding process.
|
|
68
|
+
* Annotates columns in ctx.tables and ctx.views with values.
|
|
69
|
+
*/
|
|
70
|
+
execute(ctx: GroundingContext): Promise<() => null>;
|
|
71
|
+
/**
|
|
72
|
+
* Resolve column values from all sources in priority order.
|
|
73
|
+
*/
|
|
74
|
+
private resolveColumnValues;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=column-values.grounding.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"column-values.grounding.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/groundings/column-values.grounding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAS,eAAe,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAE9E,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;AAExC;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAChC,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;;;;GAWG;AACH,8BAAsB,qBAAsB,SAAQ,iBAAiB;;IACnE,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC;gBAE1B,MAAM,GAAE,2BAAgC;IAKpD;;;;OAIG;cACa,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC;IAIhC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,qBAAqB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC;IAEhC;;;;;;OAMG;IACH,SAAS,CAAC,oBAAoB,CAC5B,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,MAAM,GACjB,MAAM,EAAE,GAAG,SAAS;IAiDvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAIhB;;;OAGG;IACG,OAAO,CAAC,GAAG,EAAE,gBAAgB;IAgCnC;;OAEG;YACW,mBAAmB;CAiClC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { TableConstraint } from '../adapter.ts';
|
|
2
|
-
import { AbstractGrounding } from '
|
|
2
|
+
import { AbstractGrounding } from './abstract.grounding.ts';
|
|
3
3
|
import type { GroundingContext } from './context.ts';
|
|
4
4
|
/**
|
|
5
5
|
* Configuration for ConstraintGrounding.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constraint.grounding.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/groundings/constraint.grounding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"constraint.grounding.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/groundings/constraint.grounding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,yBAAyB;CAEzC;AAED;;;;;;;;;GASG;AACH,8BAAsB,mBAAoB,SAAQ,iBAAiB;gBACrD,MAAM,GAAE,yBAA8B;IAIlD;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,cAAc,CAC/B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,eAAe,EAAE,CAAC;IAE7B;;;OAGG;IACG,OAAO,CAAC,GAAG,EAAE,gBAAgB;CAYpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/groundings/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/groundings/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,MAAM,EAAE,KAAK,EAAE,CAAC;IAEhB,wCAAwC;IACxC,KAAK,EAAE,IAAI,EAAE,CAAC;IAEd,iDAAiD;IACjD,aAAa,EAAE,YAAY,EAAE,CAAC;IAE9B,+CAA+C;IAC/C,IAAI,CAAC,EAAE,WAAW,CAAC;IAEnB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,gBAAgB,CAOzD"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export * from './table.grounding.ts';
|
|
1
|
+
export * from './abstract.grounding.ts';
|
|
3
2
|
export * from './column-stats.grounding.ts';
|
|
4
|
-
export * from './
|
|
3
|
+
export * from './column-values.grounding.ts';
|
|
4
|
+
export * from './constraint.grounding.ts';
|
|
5
|
+
export * from './context.ts';
|
|
5
6
|
export * from './info.grounding.ts';
|
|
6
|
-
export * from './view.grounding.ts';
|
|
7
7
|
export * from './report.grounding.ts';
|
|
8
|
-
|
|
8
|
+
export * from './row-count.grounding.ts';
|
|
9
|
+
export * from './table.grounding.ts';
|
|
10
|
+
export * from './view.grounding.ts';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/adapters/groundings/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC"}
|