@askdb/core 1.0.0-beta.52 → 1.0.0-beta.54
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/errors.d.ts +4 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/retrieval/synthesize-ddl.d.ts +19 -4
- package/dist/retrieval/synthesize-ddl.d.ts.map +1 -1
- package/dist/retrieval/synthesize-ddl.js +82 -19
- package/dist/retrieval/synthesize-ddl.js.map +1 -1
- package/dist/schema/v2/format.d.ts +55 -9
- package/dist/schema/v2/format.d.ts.map +1 -1
- package/dist/schema/v2/format.js +131 -11
- package/dist/schema/v2/format.js.map +1 -1
- package/dist/schema/v2/loader.js +36 -1
- package/dist/schema/v2/loader.js.map +1 -1
- package/dist/schema/v2/normalized.d.ts +4 -0
- package/dist/schema/v2/normalized.d.ts.map +1 -1
- package/dist/sql/mask-literals.d.ts +15 -0
- package/dist/sql/mask-literals.d.ts.map +1 -0
- package/dist/sql/mask-literals.js +69 -0
- package/dist/sql/mask-literals.js.map +1 -0
- package/dist/sql/readings.d.ts +16 -3
- package/dist/sql/readings.d.ts.map +1 -1
- package/dist/sql/readings.js +54 -8
- package/dist/sql/readings.js.map +1 -1
- package/dist/sql/tenant-guardrail.d.ts +9 -4
- package/dist/sql/tenant-guardrail.d.ts.map +1 -1
- package/dist/sql/tenant-guardrail.js +910 -164
- package/dist/sql/tenant-guardrail.js.map +1 -1
- package/package.json +1 -1
package/dist/schema/v2/format.js
CHANGED
|
@@ -2,12 +2,13 @@ import { createMentionMatcher, sensitiveMentionNames } from "./mentions.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* Format a NormalizedSchemaV2 for NL→SQL prompts.
|
|
4
4
|
*
|
|
5
|
-
* Interleaves table descriptions, aliases, column descriptions,
|
|
6
|
-
* `Common query language`
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
5
|
+
* Interleaves table descriptions, aliases, column descriptions and notes, each
|
|
6
|
+
* table's foreign keys ({@link foreignKeyLinesByTable}), `Common query language`
|
|
7
|
+
* and `Business context` blocks when present in the describable layer, then the
|
|
8
|
+
* schema's concepts ({@link conceptLines}). Sensitive describable-layer fields
|
|
9
|
+
* (descriptions/aliases/enum) are excluded per the schema-v2 contract. With
|
|
10
|
+
* `omitSensitiveIdentifiersFromPrompt`, describable text that names a sensitive
|
|
11
|
+
* column is withheld too ({@link promptTextGate}).
|
|
11
12
|
*/
|
|
12
13
|
export function formatSchemaV2ForNlToSql(schema, options = {}) {
|
|
13
14
|
const omit = options.omitSensitiveIdentifiersFromPrompt === true;
|
|
@@ -18,6 +19,8 @@ export function formatSchemaV2ForNlToSql(schema, options = {}) {
|
|
|
18
19
|
let listedSensitiveColumnCount = 0;
|
|
19
20
|
let untrackedTableCount = 0;
|
|
20
21
|
const lines = [];
|
|
22
|
+
const naming = { unqualifiedNamespace: options.unqualifiedNamespace, quoteIdentifier };
|
|
23
|
+
const foreignKeys = foreignKeyLinesByTable(schema, { omit, ...naming });
|
|
21
24
|
for (const t of schema.tables) {
|
|
22
25
|
if (t.tracked === false) {
|
|
23
26
|
untrackedTableCount++;
|
|
@@ -58,6 +61,7 @@ export function formatSchemaV2ForNlToSql(schema, options = {}) {
|
|
|
58
61
|
lines.push(buildColumnLine(c, c.sensitive, t.sensitive, quoteIdentifier, gate));
|
|
59
62
|
}
|
|
60
63
|
}
|
|
64
|
+
lines.push(...(foreignKeys.get(t.id) ?? []));
|
|
61
65
|
// Common query language block
|
|
62
66
|
if (!t.sensitive && t.commonQueryLanguage && gate.allows(t.commonQueryLanguage)) {
|
|
63
67
|
lines.push(`-- common query language --`);
|
|
@@ -65,8 +69,13 @@ export function formatSchemaV2ForNlToSql(schema, options = {}) {
|
|
|
65
69
|
lines.push(`-- ${cqlLine}`);
|
|
66
70
|
}
|
|
67
71
|
}
|
|
72
|
+
// Business context block, under the same rules as common query language (#898)
|
|
73
|
+
if (!t.sensitive && t.businessContext && gate.allows(t.businessContext)) {
|
|
74
|
+
lines.push(...businessContextLines([t.businessContext]));
|
|
75
|
+
}
|
|
68
76
|
lines.push("");
|
|
69
77
|
}
|
|
78
|
+
lines.push(...conceptLines(schema, gate, naming));
|
|
70
79
|
const ddl = lines.join("\n").trimEnd();
|
|
71
80
|
return {
|
|
72
81
|
ddl,
|
|
@@ -104,19 +113,23 @@ export function tableAliasNote(t, gate) {
|
|
|
104
113
|
return aliases.length ? ` -- aliases: ${aliases.join(", ")}` : "";
|
|
105
114
|
}
|
|
106
115
|
/**
|
|
107
|
-
* A non-sensitive column's annotation (`aliases: …; values: …; description
|
|
108
|
-
* The
|
|
109
|
-
* withholds all of them.
|
|
116
|
+
* A non-sensitive column's annotation (`aliases: …; values: …; description; note: …`), or `""`.
|
|
117
|
+
* The parts are one unit, checked as rendered: when they name a sensitive column, the gate
|
|
118
|
+
* withholds all of them. The note joins the unit, as it joins the column's describable layer in
|
|
119
|
+
* `@askdb/rag`'s chunker (ADR 0042).
|
|
110
120
|
*/
|
|
111
121
|
export function columnAnnotation(c, gate) {
|
|
112
122
|
const aliases = c.aliases?.length ? c.aliases.join(", ") : "";
|
|
113
123
|
const values = c.enum?.length ? c.enum.join("|") : "";
|
|
114
124
|
const description = c.description ?? "";
|
|
115
|
-
const
|
|
125
|
+
const note = c.note ?? "";
|
|
126
|
+
const shown = [aliases, values, description, note].filter(Boolean);
|
|
116
127
|
// The fixed labels stay out of the check: a sensitive column named `values` names no annotation.
|
|
117
128
|
if (shown.length === 0 || !gate.allows(shown.join("; ")))
|
|
118
129
|
return "";
|
|
119
|
-
return [aliases && `aliases: ${aliases}`, values && `values: ${values}`, description]
|
|
130
|
+
return [aliases && `aliases: ${aliases}`, values && `values: ${values}`, description, note && `note: ${note}`]
|
|
131
|
+
.filter(Boolean)
|
|
132
|
+
.join("; ");
|
|
120
133
|
}
|
|
121
134
|
/**
|
|
122
135
|
* A table's name as the NL→SQL prompt lists it: `schema.name`, or `name` in the unqualified
|
|
@@ -126,6 +139,113 @@ export function promptTableName(table, unqualifiedNamespace, quoteIdentifier = l
|
|
|
126
139
|
const name = quoteIdentifier(table.name);
|
|
127
140
|
return table.schema === unqualifiedNamespace ? name : `${quoteIdentifier(table.schema)}.${name}`;
|
|
128
141
|
}
|
|
142
|
+
function columnRefs(schema) {
|
|
143
|
+
const refs = new Map();
|
|
144
|
+
for (const table of schema.tables)
|
|
145
|
+
for (const column of table.columns)
|
|
146
|
+
refs.set(column.id, { table, column });
|
|
147
|
+
return refs;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* The schema's foreign keys as both NL→SQL prompts print them (#898), keyed by the id of the
|
|
151
|
+
* table that owns each key's column: ` FK (user_id) -> public.users (id)`, after the table's
|
|
152
|
+
* column lines. Each key prints once, from any table's `relationships`. A key is left out when
|
|
153
|
+
* either column doesn't resolve, either table is untracked or not `shown`, or, with `omit`,
|
|
154
|
+
* either column or table is sensitive, so a key never names a column the prompt withholds. A
|
|
155
|
+
* composite key prints one line per column pair until the artifact groups them (#349).
|
|
156
|
+
*/
|
|
157
|
+
export function foreignKeyLinesByTable(schema, options) {
|
|
158
|
+
const refs = columnRefs(schema);
|
|
159
|
+
const { quoteIdentifier, unqualifiedNamespace } = options;
|
|
160
|
+
const visible = (ref) => ref !== undefined &&
|
|
161
|
+
ref.table.tracked !== false &&
|
|
162
|
+
(options.shown?.(ref.table.id) ?? true) &&
|
|
163
|
+
!(options.omit && (ref.table.sensitive || ref.column.sensitive));
|
|
164
|
+
const byTable = new Map();
|
|
165
|
+
const printed = new Set();
|
|
166
|
+
for (const table of schema.tables) {
|
|
167
|
+
for (const key of table.relationships ?? []) {
|
|
168
|
+
const from = refs.get(key.from);
|
|
169
|
+
const to = refs.get(key.to);
|
|
170
|
+
if (!visible(from) || !visible(to) || printed.has(`${key.from}->${key.to}`))
|
|
171
|
+
continue;
|
|
172
|
+
printed.add(`${key.from}->${key.to}`);
|
|
173
|
+
const target = promptTableName(to.table, unqualifiedNamespace, quoteIdentifier);
|
|
174
|
+
const line = ` FK (${quoteIdentifier(from.column.name)}) -> ${target} (${quoteIdentifier(to.column.name)})`;
|
|
175
|
+
byTable.set(from.table.id, [...(byTable.get(from.table.id) ?? []), line]);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
return byTable;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Renders a concept as both NL→SQL prompts list it (#898): its label, synonyms, links (named as
|
|
182
|
+
* the prompt names tables and columns) and description, as one line. A link to an untracked
|
|
183
|
+
* table, or to a column of one, is dropped, and a concept whose links were all untracked
|
|
184
|
+
* renders as `undefined`; a link to a table or column the schema doesn't have is dropped too.
|
|
185
|
+
* `text` is the line without its fixed labels, for the gate (see {@link columnAnnotation});
|
|
186
|
+
* `linksSensitive` flags a concept that links a sensitive table or column.
|
|
187
|
+
*/
|
|
188
|
+
export function conceptRenderer(schema, naming) {
|
|
189
|
+
const refs = columnRefs(schema);
|
|
190
|
+
const tables = new Map(schema.tables.map((table) => [table.id, table]));
|
|
191
|
+
return (concept) => {
|
|
192
|
+
const links = [];
|
|
193
|
+
let untracked = 0;
|
|
194
|
+
let linksSensitive = false;
|
|
195
|
+
for (const id of concept.links ?? []) {
|
|
196
|
+
const hash = id.indexOf("#");
|
|
197
|
+
const column = refs.get(id);
|
|
198
|
+
const table = column?.table ?? tables.get(hash === -1 ? id : id.slice(0, hash));
|
|
199
|
+
if (table?.tracked === false) {
|
|
200
|
+
untracked++;
|
|
201
|
+
continue;
|
|
202
|
+
}
|
|
203
|
+
if (!table || (hash !== -1 && !column))
|
|
204
|
+
continue;
|
|
205
|
+
const tableName = promptTableName(table, naming.unqualifiedNamespace, naming.quoteIdentifier);
|
|
206
|
+
links.push(column ? `${tableName}.${naming.quoteIdentifier(column.column.name)}` : tableName);
|
|
207
|
+
linksSensitive ||= table.sensitive || (column?.column.sensitive ?? false);
|
|
208
|
+
}
|
|
209
|
+
if (untracked > 0 && links.length === 0)
|
|
210
|
+
return undefined;
|
|
211
|
+
const fields = [
|
|
212
|
+
[undefined, concept.label],
|
|
213
|
+
["synonyms", concept.synonyms?.join(", ") ?? ""],
|
|
214
|
+
["links", links.join(", ")],
|
|
215
|
+
[undefined, concept.description?.replace(/\s*\n\s*/g, " ") ?? ""],
|
|
216
|
+
];
|
|
217
|
+
const shown = fields.filter(([, value]) => value);
|
|
218
|
+
return {
|
|
219
|
+
body: shown.map(([label, value]) => (label ? `${label}: ${value}` : value)).join("; "),
|
|
220
|
+
text: shown.map(([, value]) => value).join("; "),
|
|
221
|
+
linksSensitive,
|
|
222
|
+
};
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* The schema's concepts as the full-schema prompt lists them after the tables (#898): a
|
|
227
|
+
* `-- concepts --` block, one {@link conceptRenderer} line per concept the gate allows (a
|
|
228
|
+
* concept that links a sensitive table or column is flagged, so omission withholds it too).
|
|
229
|
+
* `[]` when no concept is left.
|
|
230
|
+
*/
|
|
231
|
+
export function conceptLines(schema, gate, naming) {
|
|
232
|
+
const render = conceptRenderer(schema, naming);
|
|
233
|
+
const lines = [];
|
|
234
|
+
for (const concept of schema.concepts ?? []) {
|
|
235
|
+
const rendered = render(concept);
|
|
236
|
+
if (rendered && gate.allows(rendered.text, rendered.linksSensitive))
|
|
237
|
+
lines.push(`-- ${rendered.body}`);
|
|
238
|
+
}
|
|
239
|
+
return lines.length > 0 ? ["-- concepts --", ...lines, ""] : [];
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* A table's `-- business context --` block: each body's lines as `--` comments, blank lines
|
|
243
|
+
* dropped (paragraphs are separated by them; an empty `--` line adds nothing). `[]` for none.
|
|
244
|
+
*/
|
|
245
|
+
export function businessContextLines(bodies) {
|
|
246
|
+
const lines = bodies.flatMap((body) => body.split("\n").filter((line) => line.trim()).map((line) => `-- ${line}`));
|
|
247
|
+
return lines.length > 0 ? ["-- business context --", ...lines] : [];
|
|
248
|
+
}
|
|
129
249
|
/** The default `quoteIdentifier`: a name listed exactly as stored. */
|
|
130
250
|
export function listAsStored(name) {
|
|
131
251
|
return name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/schema/v2/format.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/schema/v2/format.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAE5E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAA0B,EAC1B,UAAgC,EAAE;IAElC,MAAM,IAAI,GAAG,OAAO,CAAC,kCAAkC,KAAK,IAAI,CAAC;IACjE,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,YAAY,CAAC;IAChE,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC1C,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAC5B,IAAI,uBAAuB,GAAG,CAAC,CAAC;IAChC,IAAI,0BAA0B,GAAG,CAAC,CAAC;IACnC,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAiB,EAAE,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,EAAE,eAAe,EAAE,CAAC;IACrG,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;IAExE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9B,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACxB,mBAAmB,EAAE,CAAC;YACtB,SAAS;QACX,CAAC;QAED,0GAA0G;QAC1G,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;QACrF,KAAK,CAAC,IAAI,CAAC,SAAS,UAAU,GAAG,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAE5D,sCAAsC;QACtC,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YAChE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,IAAI,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YACxB,uBAAuB,EAAE,CAAC;YAC1B,mBAAmB,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;YACnF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,SAAS;QACX,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBAC1B,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;oBAChB,mBAAmB,EAAE,CAAC;oBACtB,SAAS;gBACX,CAAC;gBACD,cAAc,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,cAAc,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjD,KAAK,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBAC1B,IAAI,CAAC,CAAC,SAAS;oBAAE,0BAA0B,EAAE,CAAC;gBAC9C,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAE7C,8BAA8B;QAC9B,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAChF,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YAC1C,KAAK,MAAM,OAAO,IAAI,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,KAAK,CAAC,IAAI,CAAC,MAAM,OAAO,EAAE,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,+EAA+E;QAC/E,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,eAAe,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC;YACxE,KAAK,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAElD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IACvC,OAAO;QACL,GAAG;QACH,KAAK,EAAE;YACL,kCAAkC,EAAE,IAAI;YACxC,mBAAmB;YACnB,uBAAuB;YACvB,0BAA0B;YAC1B,mBAAmB;YACnB,mBAAmB,EAAE,IAAI,CAAC,QAAQ;SACnC;KACF,CAAC;AACJ,CAAC;AAkBD,+EAA+E;AAC/E,MAAM,UAAU,cAAc,CAAC,MAA0B,EAAE,IAAa;IACtE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvF,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,OAAO;QACL,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK;YAC1B,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YACtE,QAAQ,EAAE,CAAC;YACX,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,QAAQ;YACV,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,2GAA2G;AAC3G,MAAM,UAAU,cAAc,CAAC,CAAkC,EAAE,IAAoB;IACrF,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM;QAAE,OAAO,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAChE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,CAAgD,EAAE,IAAoB;IACrG,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC;IACxC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnE,iGAAiG;IACjG,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IACpE,OAAO,CAAC,OAAO,IAAI,YAAY,OAAO,EAAE,EAAE,MAAM,IAAI,WAAW,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,IAAI,SAAS,IAAI,EAAE,CAAC;SAC3G,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC7B,KAA+D,EAC/D,oBAAwC,EACxC,kBAA4C,YAAY;IAExD,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC,MAAM,KAAK,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;AACnG,CAAC;AAUD,SAAS,UAAU,CAAC,MAA0B;IAC5C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM;QAAE,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO;YAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9G,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAA0B,EAC1B,OAA+E;IAE/E,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE,eAAe,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC;IAC1D,MAAM,OAAO,GAAG,CAAC,GAA0B,EAAoB,EAAE,CAC/D,GAAG,KAAK,SAAS;QACjB,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK;QAC3B,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC;QACvC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC5C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,aAAa,IAAI,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,EAAE,CAAC;gBAAE,SAAS;YACtF,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,EAAE,eAAe,CAAC,CAAC;YAChF,MAAM,IAAI,GAAG,SAAS,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,MAAM,KAAK,eAAe,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;YAC7G,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAKD;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC7B,MAA0B,EAC1B,MAAoB;IAEpB,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACxE,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5B,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YAChF,IAAI,KAAK,EAAE,OAAO,KAAK,KAAK,EAAE,CAAC;gBAC7B,SAAS,EAAE,CAAC;gBACZ,SAAS;YACX,CAAC;YACD,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;gBAAE,SAAS;YACjD,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;YAC9F,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC9F,cAAc,KAAK,KAAK,CAAC,SAAS,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,SAAS,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAC1D,MAAM,MAAM,GAAsD;YAChE,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC;YAC1B,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAChD,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;SAClE,CAAC;QACF,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QAClD,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACtF,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAChD,cAAc;SACf,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,MAA0B,EAAE,IAAoB,EAAE,MAAoB;IACjG,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,cAAc,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACzG,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAClE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAgB;IACnD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;IACnH,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,wBAAwB,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACtE,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CACtB,CAAgD,EAChD,YAAqB,EACrB,cAAuB,EACvB,eAAyC,EACzC,IAAoB;IAEpB,MAAM,SAAS,GAAG,YAAY,IAAI,cAAc,CAAC;IACjD,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;SACvE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,IAAI,IAAI,GAAG,OAAO,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,GAAG,CAAC;IAEjE,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,IAAI,cAAc,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,wEAAwE;QACxE,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,UAAU;YAAE,IAAI,IAAI,OAAO,UAAU,EAAE,CAAC;IAC9C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/schema/v2/loader.js
CHANGED
|
@@ -3,6 +3,7 @@ import { basename, dirname, join, resolve } from "node:path";
|
|
|
3
3
|
import { SchemaParseError } from "../../errors.js";
|
|
4
4
|
import { parseConceptsMarkdown, parseTableMarkdown } from "./parser.js";
|
|
5
5
|
import { v2SchemaJsonSchema } from "./physical.js";
|
|
6
|
+
import { RECOGNIZED_H2_SECTIONS } from "./describable.js";
|
|
6
7
|
import { parseTenantPolicyMarkdown, normalizeTenantPolicy } from "./tenant-policy-loader.js";
|
|
7
8
|
/** Each physical column ID → the ID of the table that owns it, read from `schema.json` (a SQL Server table name can hold `#`). */
|
|
8
9
|
function columnOwnersOf(physical) {
|
|
@@ -463,6 +464,9 @@ function buildNormalized(physical, tableMarkdowns, concepts, tenantPolicy) {
|
|
|
463
464
|
if (mdCol.enum?.length)
|
|
464
465
|
normalized.enum = mdCol.enum;
|
|
465
466
|
}
|
|
467
|
+
const note = colSensitive ? undefined : columnNoteOf(md, physCol.name);
|
|
468
|
+
if (note)
|
|
469
|
+
normalized.note = note;
|
|
466
470
|
return normalized;
|
|
467
471
|
});
|
|
468
472
|
const normalized = {
|
|
@@ -490,6 +494,9 @@ function buildNormalized(physical, tableMarkdowns, concepts, tenantPolicy) {
|
|
|
490
494
|
const cql = md.sections["Common query language"];
|
|
491
495
|
if (cql?.trim())
|
|
492
496
|
normalized.commonQueryLanguage = cql.trim();
|
|
497
|
+
const businessContext = md.sections["Business context"]?.trim();
|
|
498
|
+
if (businessContext)
|
|
499
|
+
normalized.businessContext = businessContext;
|
|
493
500
|
}
|
|
494
501
|
return normalized;
|
|
495
502
|
});
|
|
@@ -502,6 +509,32 @@ function buildNormalized(physical, tableMarkdowns, concepts, tenantPolicy) {
|
|
|
502
509
|
warnings,
|
|
503
510
|
};
|
|
504
511
|
}
|
|
512
|
+
/**
|
|
513
|
+
* A column's item in its table file's `Column notes` section: a line ``- `column_name`: note``,
|
|
514
|
+
* where `-` or `—` may replace the colon, matched by the column's name (schema v2 contract).
|
|
515
|
+
* `@askdb/rag`'s chunker reads the same items with the same rule.
|
|
516
|
+
*/
|
|
517
|
+
function columnNoteOf(md, columnName) {
|
|
518
|
+
const body = md?.sections["Column notes"];
|
|
519
|
+
if (!body)
|
|
520
|
+
return undefined;
|
|
521
|
+
for (const raw of body.split("\n")) {
|
|
522
|
+
const line = raw.trim();
|
|
523
|
+
if (!line.startsWith("-"))
|
|
524
|
+
continue;
|
|
525
|
+
const match = line.slice(1).trim().match(/^`([^`]+)`\s*[:\-—]\s*(.+)$/);
|
|
526
|
+
if (match && match[1] === columnName)
|
|
527
|
+
return match[2].trim();
|
|
528
|
+
}
|
|
529
|
+
return undefined;
|
|
530
|
+
}
|
|
531
|
+
/** Whether `line` is the H2 heading of a recognized section, matched as the parser matches it. */
|
|
532
|
+
function isRecognizedSectionHeading(line) {
|
|
533
|
+
if (!line.startsWith("## "))
|
|
534
|
+
return false;
|
|
535
|
+
const heading = line.slice(3).trim().toLowerCase();
|
|
536
|
+
return RECOGNIZED_H2_SECTIONS.some((section) => section.toLowerCase() === heading);
|
|
537
|
+
}
|
|
505
538
|
/** Extract the first non-heading, non-empty paragraph from a markdown body. */
|
|
506
539
|
function extractFirstParagraph(body) {
|
|
507
540
|
const lines = body.split("\n");
|
|
@@ -512,7 +545,9 @@ function extractFirstParagraph(body) {
|
|
|
512
545
|
if (line.startsWith("#")) {
|
|
513
546
|
// Skip the leading H1 (table title), but stop at any subsequent heading
|
|
514
547
|
// so we don't leak content from the next section into the description.
|
|
515
|
-
|
|
548
|
+
// A recognized section never supplies it, even first: its content has its
|
|
549
|
+
// own rules (a sensitive column's note is dropped, #898).
|
|
550
|
+
if (seenHeading || isRecognizedSectionHeading(line))
|
|
516
551
|
break;
|
|
517
552
|
seenHeading = true;
|
|
518
553
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/schema/v2/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAqB,MAAM,eAAe,CAAC;AAQtE,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAoC7F,kIAAkI;AAClI,SAAS,cAAc,CAAC,QAAsC;IAC5D,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAU,CAAC,CAAC,CAAC,CAAC;AAC9F,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,gBAAgB,CAAC,oCAAoC,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;QACzE,OAAO,cAAc,CAAC,MAAyB,EAAE,eAAe,CAAC,CAAC;IACpE,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC7D,OAAO,eAAe,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEhC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACvB,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,GAAG,GAAG,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC3C,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,gBAAgB,CAAC,2BAA2B,QAAQ,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,gDAAgD;IAChD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;QACzE,OAAO,cAAc,CAAC,MAAyB,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAED,+EAA+E;IAC/E,kFAAkF;IAClF,gFAAgF;IAChF,iFAAiF;IACjF,oFAAoF;IACpF,2EAA2E;IAC3E,gDAAgD;IAChD,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,KAAK,aAAa,EAAE,CAAC;QACvD,OAAO,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED,iFAAiF;IACjF,kEAAkE;IAClE,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtD,OAAO,eAAe,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG;IAC7B,YAAY,EAAE,kBAAkB;IAChC,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,aAAa;CACkE,CAAC;AAE5F;;;;;;GAMG;AACH,SAAS,0BAA0B,CAAC,QAAgB;IAClD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC/C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;SAClD,IAAI,EAAE,CAAC;IACV,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,QAAQ,4DAA4D;QACtF,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,0DAA0D;QAC/E,sFAAsF;QACtF,8FAA8F,CACjG,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,WAAW,GAAG,aAAa,CAAC;AAElC;;;;;GAKG;AACH,SAAS,aAAa,CAAC,GAAW,EAAE,cAAuB;IACzD,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACnC,mFAAmF;IACnF,6EAA6E;IAC7E,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,YAAY,EAAE,cAAc,KAAK,SAAS,CAAC,CAAC;IAE3E,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,gBAAgB,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,YAAY,GAAG,cAAc,IAAI,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC9D,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,gBAAgB;YAAE,MAAM,CAAC,CAAC;QAC3C,MAAM,IAAI,gBAAgB,CAAC,kCAAkC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAE1D,MAAM,UAAU,GAA2B,EAAE,CAAC;IAC9C,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,UAAU,CAAC,KAAK,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,MAAM,GAAoB,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAChF,KAAK,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,cAAc,CAAU,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,OAAO,CAAC,IAAY;IAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,CAAC;AACzE,CAAC;AAED,uFAAuF;AACvF,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AAC5D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CACvB,GAAW,EACX,OAA0B,EAC1B,YAA+B,EAC/B,eAAwB;IAExB,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAC7C,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC;IACpG,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IAE/D,mFAAmF;IACnF,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,CAAC;IAC7E,MAAM,eAAe,GACnB,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,KAAK,MAAM;QAC3D,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,IAAI,EAAE;QACpD,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,KAAK,GAAG,CAAC,GAAG,YAAY,EAAE,GAAG,eAAe,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG;QACd,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;KACzE,CAAC;IACF,QAAQ,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC;IAE/E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAClC,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,GAAG,uCAAuC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACnF,uFAAuF;QACvF,0FAA0F;QAC1F,sBAAsB,CACzB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CACvB,OAA0B,EAC1B,KAAwB,EACxB,GAA6B,EAC7B,MAAc;IAEd,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7E,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;YAAE,SAAS;QAC1F,QAAQ,CAAC,IAAI,CACX,SAAS,CAAC,MAAM,KAAK,CAAC;YACpB,CAAC,CAAC,UAAU,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,MAAM,GAAG,IAAI,EAAE;YACvD,CAAC,CAAC,eAAe,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,MAAM,GAAG,IAAI,EAAE,CACzF,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,+FAA+F;AAC/F,SAAS,WAAW,CAAC,IAAY;IAC/B,IAAI,CAAC;QACH,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW,EAAE,cAAuB;IAC7D,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IACjD,gCAAgC;IAChC,OAAO,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,cAAc,CAAC,MAAuB,EAAE,QAAgB;IAC/D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/D,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7C,8EAA8E;IAC9E,yDAAyD;IACzD,OAAO,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,QAAQ,QAAQ,GAAG,EAAE,QAAQ,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,YAAY,CAAC,CAAU;IAC9B,OAAO,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,4EAA4E;AAC5E,SAAS,eAAe,CAAC,IAAY;IACnC,IAAI,CAAC;QACH,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,gBAAgB,CAAC,4BAA4B,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACxF,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY;IACpC,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,gBAAgB,CAAC,kBAAkB,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,WAAW,CAAI,IAAY,EAAE,EAAW;IAC/C,IAAI,CAAC;QACH,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,gBAAgB,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,CAAC;QACvE,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CACpB,KAAsB,EACtB,QAAsB,EACtB,SAAmC,EACnC,UAAkB;IAElB,MAAM,cAAc,GAAwC,EAAE,CAAC;IAC/D,qFAAqF;IACrF,oEAAoE;IACpE,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/E,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC3B,EAAE,CAAC;QACF,MAAM,SAAS,GAAG,GAAG,sBAAsB,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;QACjE,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5E,gBAAgB,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAED,2EAA2E;IAC3E,kFAAkF;IAClF,+DAA+D;IAC/D,IAAI,QAA2C,CAAC;IAChD,MAAM,eAAe,GAAG,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IAC1E,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAChE,QAAQ,GAAG,WAAW,CAAC,YAAY,EAAE,GAAG,EAAE,CACxC,qBAAqB,CAAC,eAAe,EAAE,YAAY,CAAC,CACrD,CAAC,WAAW,CAAC;IAChB,CAAC;IAED,IAAI,YAAgD,CAAC;IACrD,MAAM,aAAa,GAAG,kBAAkB,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IAC5E,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,SAAS,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QAClE,YAAY,GAAG,WAAW,CAAC,UAAU,EAAE,GAAG,EAAE;YAC1C,MAAM,MAAM,GAAG,yBAAyB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YACpE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACnE,OAAO,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;QACnF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,eAAe,CAAC,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;AAC3E,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CACvB,cAAmD,EACnD,MAA2B,EAC3B,UAAkB;IAElB,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;IACxC,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;IACpC,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,gBAAgB,CACxB,qBAAqB,UAAU,KAAK,QAAQ,CAAC,SAAS,QAAQ,MAAM,CAAC,SAAS,gCAAgC,EAAE,6DAA6D,CAC9K,CAAC;IACJ,CAAC;IACD,cAAc,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,MAAe,EAAE,UAAkB;IAC9D,MAAM,GAAG,GAAG,sBAAsB,CAAC,MAAM,CAAC;IAC1C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,gBAAgB,CACxB,qBAAqB,UAAU,OAAO,GAAG,yCAAyC,GAAG,iEAAiE,CACvJ,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,gBAAgB,CACxB,qBAAqB,UAAU,OAAO,GAAG,iCAAiC,GAAG,8DAA8D,CAC5I,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,gBAAgB,CACxB,qBAAqB,UAAU,OAAO,GAAG,YAAY,QAAQ,oBAAoB,GAAG,IAAI,QAAQ,sBAAsB,CACvH,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,uFAAuF;AACvF,SAAS,kBAAkB,CACzB,MAAuB,EACvB,GAAgC,EAChC,UAAkB;IAElB,MAAM,KAAK,GAAY,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,gBAAgB,CACxB,qBAAqB,UAAU,OAAO,GAAG,sBAAsB,sBAAsB,CAAC,GAAG,CAAC,sBAAsB,CACjH,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAa,EAAE,QAAgB;IACzD,kCAAkC;IAClC,IACE,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACb,SAAS,IAAI,IAAI;QACjB,IAAI,CAAC,OAAO,KAAK,CAAC,EAClB,CAAC;QACD,MAAM,IAAI,gBAAgB,CACxB,mFAAmF;YACjF,sHAAsH,CACzH,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,gBAAgB,CACxB,0BAA0B,QAAQ,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAC7D,MAAM,CAAC,KAAK,CACb,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED,SAAS,eAAe,CACtB,QAAsB,EACtB,cAAmD,EACnD,QAA2C,EAC3C,YAAgD;IAEhD,MAAM,QAAQ,GAAsB,EAAE,CAAC;IAEvC,oFAAoF;IACpF,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnE,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE9C,gFAAgF;IAChF,sFAAsF;IACtF,kFAAkF;IAClF,wEAAwE;IACxE,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE7C,yDAAyD;IACzD,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QACzE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QACxC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACnD,6EAA6E;YAC7E,qDAAqD;YACrD,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YACxE,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1B,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI;gBAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAE3D,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YACvE,CAAC;iBAAM,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;gBACxB,+EAA+E;gBAC/E,sEAAsE;gBACtE,0EAA0E;gBAC1E,gFAAgF;gBAChF,6EAA6E;gBAC7E,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YACxF,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAwB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QACpE,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,MAAM,EAAE,MAAM,CAAC;QAC1B,MAAM,SAAS,GAAG,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC;QAE1C,2EAA2E;QAC3E,sEAAsE;QACtE,2EAA2E;QAC3E,2EAA2E;QAC3E,uEAAuE;QACvE,MAAM,cAAc,GAAG,SAAS,CAAC,SAAS,KAAK,IAAI,IAAI,EAAE,EAAE,WAAW,CAAC,SAAS,KAAK,IAAI,CAAC;QAC1F,IAAI,EAAE,EAAE,WAAW,CAAC,SAAS,KAAK,KAAK,IAAI,cAAc,EAAE,CAAC;YAC1D,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,+BAA+B,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,OAAO,GAAyB,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACtE,MAAM,MAAM,GAAG,EAAE,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACjF,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,IAAI,IAAI,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACnF,MAAM,YAAY,GAAG,SAAS,IAAI,cAAc,CAAC;YACjD,IAAI,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,CAAC,EAAE,CAAC;gBAC9D,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,+BAA+B,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YACtF,CAAC;YAED,MAAM,UAAU,GAAuB;gBACrC,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,KAAK;gBACvC,SAAS,EAAE,YAAY;gBACvB,GAAG,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/E,CAAC;YAEF,mDAAmD;YACnD,IAAI,CAAC,YAAY,IAAI,KAAK,EAAE,CAAC;gBAC3B,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;oBAAE,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;gBAChF,IAAI,KAAK,CAAC,OAAO,EAAE,MAAM;oBAAE,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC9D,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM;oBAAE,UAAU,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YACvD,CAAC;YAED,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAsB;YACpC,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,SAAS,EAAE,cAAc;YACzB,OAAO;YACP,aAAa,EAAE,SAAS,CAAC,aAAa;SACvC,CAAC;QAEF,IAAI,EAAE,EAAE,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1C,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC;QAC9C,CAAC;QAED,yDAAyD;QACzD,IAAI,CAAC,cAAc,IAAI,EAAE,EAAE,CAAC;YAC1B,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC;YAC1B,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM;gBAAE,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;YACxD,IAAI,EAAE,CAAC,aAAa;gBAAE,UAAU,CAAC,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC;YAElE,mDAAmD;YACnD,MAAM,cAAc,GAAG,qBAAqB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,cAAc;gBAAE,UAAU,CAAC,WAAW,GAAG,cAAc,CAAC;YAE5D,MAAM,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;YACjD,IAAI,GAAG,EAAE,IAAI,EAAE;gBAAE,UAAU,CAAC,mBAAmB,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAC/D,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,MAAM;QACN,QAAQ,EAAE,QAAQ,EAAE,QAAQ;QAC5B,YAAY;QACZ,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,SAAS,qBAAqB,CAAC,IAAY;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,cAAc,GAAa,EAAE,CAAC;IACpC,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,WAAW,GAAG,KAAK,CAAC;IAExB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,wEAAwE;YACxE,uEAAuE;YACvE,IAAI,WAAW;gBAAE,MAAM;YACvB,WAAW,GAAG,IAAI,CAAC;YACnB,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvB,IAAI,WAAW;gBAAE,MAAM;YACvB,SAAS;QACX,CAAC;QACD,WAAW,GAAG,IAAI,CAAC;QACnB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1E,CAAC"}
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/schema/v2/loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,8 @@ export type NormalizedV2Column = {
|
|
|
17
17
|
description?: string;
|
|
18
18
|
aliases?: string[];
|
|
19
19
|
enum?: string[];
|
|
20
|
+
/** The column's item in its table file's `Column notes` H2 section, matched by name. Absent when sensitive=true. */
|
|
21
|
+
note?: string;
|
|
20
22
|
};
|
|
21
23
|
/** Normalized table with optional v2 describable-layer fields. */
|
|
22
24
|
export type NormalizedV2Table = {
|
|
@@ -38,6 +40,8 @@ export type NormalizedV2Table = {
|
|
|
38
40
|
primaryEntity?: string;
|
|
39
41
|
/** Verbatim content of the `Common query language` H2 section. */
|
|
40
42
|
commonQueryLanguage?: string;
|
|
43
|
+
/** Content of the `Business context` H2 section, trimmed. Absent when sensitive=true. */
|
|
44
|
+
businessContext?: string;
|
|
41
45
|
};
|
|
42
46
|
/** Fully normalized Schema v2 artifact — physical + describable layers merged. */
|
|
43
47
|
export type NormalizedSchemaV2 = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalized.d.ts","sourceRoot":"","sources":["../../../src/schema/v2/normalized.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,mEAAmE;AACnE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,IAAI,CAAC;IAC1B,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"normalized.d.ts","sourceRoot":"","sources":["../../../src/schema/v2/normalized.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,mEAAmE;AACnE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,IAAI,CAAC;IAC1B,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,oHAAoH;IACpH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,kEAAkE;AAClE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,mFAAmF;IACnF,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kEAAkE;IAClE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yFAAyF;IACzF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,kFAAkF;AAClF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,sBAAsB,CAAC;IACtC,qEAAqE;IACrE,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE;AAClE;;;;;GAKG;GACD;IAAE,IAAI,EAAE,+BAA+B,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE;AAC1E;;;;GAIG;GACD;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AACjF;;;;;GAKG;GACD;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Replaces every literal in a SQL statement with `?` so the statement can go to a model
|
|
3
|
+
* without the values it holds: strings, numbers and bound tenant values become `?`, and
|
|
4
|
+
* comments are dropped. Names, keywords, operators and parameters stay.
|
|
5
|
+
*
|
|
6
|
+
* It reads the statement every way the tenant check does ({@link tenantStatementReadings}):
|
|
7
|
+
* the dialect's own readings for a built-in engine, and every engine's, with both string
|
|
8
|
+
* settings, for any other id or none. A character that any reading puts inside a literal or a
|
|
9
|
+
* comment is masked, so a reading that disagrees about where a string ends masks more, not less.
|
|
10
|
+
* Returns `undefined`, so the caller sends no SQL at all, when a token never ends or a literal
|
|
11
|
+
* survives a re-read of the masked text.
|
|
12
|
+
*/
|
|
13
|
+
import type { AskDialectInput } from "../ask.js";
|
|
14
|
+
export declare function maskSqlLiterals(sql: string, dialect?: AskDialectInput): string | undefined;
|
|
15
|
+
//# sourceMappingURL=mask-literals.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mask-literals.d.ts","sourceRoot":"","sources":["../../src/sql/mask-literals.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAc,eAAe,EAAE,MAAM,WAAW,CAAC;AAsB7D,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CA8C1F"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { getDialectSpec, isBuiltInDialectId } from "./dialect-spec.js";
|
|
2
|
+
import { lexSql } from "./lexer.js";
|
|
3
|
+
import { tenantStatementReadings } from "./readings.js";
|
|
4
|
+
const MASKED = new Set(["string", "number", "comment"]);
|
|
5
|
+
const LITERAL = new Set(["string", "number"]);
|
|
6
|
+
/**
|
|
7
|
+
* How `dialect` is read, resolved as `ask()` resolves it: a built-in id to its spec, a spec as
|
|
8
|
+
* itself. An id that isn't built in, or a custom `AskDialect`, has no reading of its own, so
|
|
9
|
+
* every engine's reading applies.
|
|
10
|
+
*/
|
|
11
|
+
function readingOf(dialect) {
|
|
12
|
+
if (dialect === undefined)
|
|
13
|
+
return undefined;
|
|
14
|
+
if (typeof dialect === "string")
|
|
15
|
+
return isBuiltInDialectId(dialect) ? getDialectSpec(dialect) : undefined;
|
|
16
|
+
if (typeof dialect.generate === "function")
|
|
17
|
+
return undefined;
|
|
18
|
+
return dialect;
|
|
19
|
+
}
|
|
20
|
+
export function maskSqlLiterals(sql, dialect) {
|
|
21
|
+
const readings = tenantStatementReadings(readingOf(dialect));
|
|
22
|
+
const ranges = [];
|
|
23
|
+
for (const profile of readings) {
|
|
24
|
+
const tokens = lexSql(sql, profile);
|
|
25
|
+
tokens.forEach((token, i) => {
|
|
26
|
+
if (MASKED.has(token.kind)) {
|
|
27
|
+
ranges.push({ start: token.start, end: token.end, literal: LITERAL.has(token.kind) });
|
|
28
|
+
}
|
|
29
|
+
// A word right after a number is the rest of it on an engine that reads more number
|
|
30
|
+
// forms than the lexer (`1_000`, `0o17`, `0b101`), so it is masked with it.
|
|
31
|
+
const next = tokens[i + 1];
|
|
32
|
+
if (token.kind === "number" && next?.kind === "word" && next.start === token.end) {
|
|
33
|
+
ranges.push({ start: next.start, end: next.end, literal: true });
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
if (tokens.some((t) => t.unterminated))
|
|
37
|
+
return undefined;
|
|
38
|
+
}
|
|
39
|
+
ranges.sort((a, b) => a.start - b.start || b.end - a.end);
|
|
40
|
+
let out = "";
|
|
41
|
+
let at = 0;
|
|
42
|
+
let current;
|
|
43
|
+
const flush = () => {
|
|
44
|
+
if (!current)
|
|
45
|
+
return;
|
|
46
|
+
out += current.literal ? "?" : " ";
|
|
47
|
+
at = current.end;
|
|
48
|
+
current = undefined;
|
|
49
|
+
};
|
|
50
|
+
for (const range of ranges) {
|
|
51
|
+
// Overlapping ranges merge, and so do literals that touch (`0` and `o17` in `0o17`).
|
|
52
|
+
if (current && (range.start < current.end || (range.start === current.end && range.literal && current.literal))) {
|
|
53
|
+
current.end = Math.max(current.end, range.end);
|
|
54
|
+
current.literal ||= range.literal;
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
flush();
|
|
58
|
+
out += sql.slice(at, range.start);
|
|
59
|
+
current = { ...range };
|
|
60
|
+
}
|
|
61
|
+
flush();
|
|
62
|
+
out += sql.slice(at);
|
|
63
|
+
for (const profile of readings) {
|
|
64
|
+
if (lexSql(out, profile).some((t) => t.unterminated || LITERAL.has(t.kind)))
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
return out;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=mask-literals.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mask-literals.js","sourceRoot":"","sources":["../../src/sql/mask-literals.ts"],"names":[],"mappings":"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"}
|
package/dist/sql/readings.d.ts
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
* | tenant: predicates ({@link tenantCodeReadings}) | the engine's view | the standard, Postgres, MySQL and SQL Server views, the first two with both comment ends; the Postgres and SQL Server views with block comments nested and not |
|
|
16
16
|
* | placeholders ({@link placeholderReading}) | the engine's | the generic profile |
|
|
17
17
|
* | names outside printable ASCII, tenant and sensitive ({@link unmatchedNonAsciiName}) | `sqlserver`: the engine's; any other engine: none | as for tenant statements |
|
|
18
|
+
* | names some engine folds into ASCII or not in NFC, tenant ({@link nameEnginesFoldApart}) | the engine's, as for tenant statements | as for tenant statements |
|
|
18
19
|
* | `'…'` read as a name or an alias, tenant and sensitive ({@link stringsSqliteReadsAsNames}) | `sqlite`: its readings; any other engine: none | the generic and standard readings, and SQLite's |
|
|
19
20
|
* | Postgres-only forms (`postgresReadingProfiles` in `lexer.ts`) | the engine's, when it is on the Postgres lexer | Postgres's, with backslash escapes too when set |
|
|
20
21
|
*
|
|
@@ -68,15 +69,27 @@ export declare function tenantStatementReadings(dialect: ReadingDialect | undefi
|
|
|
68
69
|
* from {@link tenantStatementReadings}; the other built-in engines compare such a name as written.
|
|
69
70
|
*/
|
|
70
71
|
export declare function unmatchedNonAsciiName(read: SqlRead, dialect: ReadingDialect | undefined, known: ReadonlySet<string>): string | undefined;
|
|
72
|
+
/**
|
|
73
|
+
* The first name in `read`, quoted or not, under any of its readings, that holds a letter some
|
|
74
|
+
* engine folds into an ASCII letter ({@link FOLDS_INTO_ASCII}) or that, as written, isn't in NFC, which
|
|
75
|
+
* CockroachDB normalizes a name to, and isn't one of `known` exactly; undefined when there is none.
|
|
76
|
+
* The checks can't match such a name the way every engine does, so it may reach a table or column
|
|
77
|
+
* they never see. Read under every dialect.
|
|
78
|
+
*/
|
|
79
|
+
export declare function nameEnginesFoldApart(read: SqlRead, dialect: ReadingDialect | undefined, known: ReadonlySet<string>): string | undefined;
|
|
71
80
|
/** Whether `profile` may be SQLite's reading: SQLite's own, or the generic and standard ones a dialect that may be SQLite gets. */
|
|
72
81
|
export declare function mayBeSqlite(profile: SqlLexerProfile): boolean;
|
|
82
|
+
/** Words that start a query right after its `(`. */
|
|
83
|
+
export declare const QUERY_START_WORDS: ReadonlySet<string>;
|
|
73
84
|
/**
|
|
74
85
|
* The indices in `tokens` of the `'…'` strings that SQLite reads as names. SQLite takes a
|
|
75
86
|
* single-quoted literal where only a name may stand as that name, so `FROM 'orders'` reads the
|
|
76
87
|
* table `orders`. A string counts right after `FROM`, `JOIN` or `IN` (`IN 'orders'` reads a table),
|
|
77
|
-
* after a `,` in a `FROM` list,
|
|
78
|
-
* `
|
|
79
|
-
*
|
|
88
|
+
* after a `,` in a `FROM` list, beside a `.` (`main.'orders'`, `'main'.orders`), or right after a
|
|
89
|
+
* `(` that follows `FROM`, `JOIN`, a `FROM`-list comma or another such `(`, and opens no query
|
|
90
|
+
* (`FROM ('orders')`); a comma inside such parentheses is a `FROM`-list comma too. With `withAliases`, it also
|
|
91
|
+
* counts right after a table or CTE reference, after the `)` of such parentheses (`(orders) 'o'`),
|
|
92
|
+
* or after `AS` following one, where it is that read's alias (`FROM orders 'o'`). The tenant and sensitive checks read such a
|
|
80
93
|
* string as a quoted name under a reading that {@link mayBeSqlite may be SQLite's}; only the tenant
|
|
81
94
|
* check reads aliases, since the sensitive check already fails closed on a qualifier it can't bind.
|
|
82
95
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readings.d.ts","sourceRoot":"","sources":["../../src/sql/readings.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"readings.d.ts","sourceRoot":"","sources":["../../src/sql/readings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAiE,KAAK,eAAe,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEhI,8DAA8D;AAC9D,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,kBAAkB,CAAC,CAAC;AAE1E;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAE9D;AAOD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,eAAe,EAAE,CAGpF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG;IACtE,OAAO,EAAE,eAAe,CAAC;IACzB,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;CACnC,CAIA;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,eAAe,EAAE,CAQ9F;AAKD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,cAAc,GAAG,SAAS,EACnC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,GACzB,MAAM,GAAG,SAAS,CASpB;AAQD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,cAAc,GAAG,SAAS,EACnC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,GACzB,MAAM,GAAG,SAAS,CAQpB;AAED,mIAAmI;AACnI,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAE7D;AAED,oDAAoD;AACpD,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAAkD,CAAC;AAKrG;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,QAAQ,EAAE,EAAE,WAAW,EAAE,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAyDhH;AAYD,sEAAsE;AACtE,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,8FAA8F;IAC9F,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B,CAAC;AAkEF;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,eAAe,EAAE,CAiBzF;AAED,wFAAwF;AACxF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,GAAG,eAAe,CAEvF;AAED,wFAAwF;AACxF,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,OAAO,EAAE,eAAe,GAAG,SAAS,QAAQ,EAAE,CAAC;CACvD,CAAC;AAEF,sGAAsG;AACtG,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAc5C"}
|