@polyglot-sql/sdk 0.5.0 → 0.5.1
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 +46 -0
- package/dist/cdn/polyglot.esm.js +1676 -1524
- package/dist/index.cjs +210 -0
- package/dist/index.d.cts +156 -1
- package/dist/index.d.ts +156 -1
- package/dist/index.js +244 -1
- package/dist/index.node.js +204 -0
- package/dist/manual.js +232 -1
- package/dist/polyglot_sql.wasm +0 -0
- package/package.json +1 -1
package/dist/index.node.js
CHANGED
|
@@ -1542,6 +1542,32 @@ class WasmWindowDefBuilder {
|
|
|
1542
1542
|
}
|
|
1543
1543
|
}
|
|
1544
1544
|
if (Symbol.dispose) WasmWindowDefBuilder.prototype[Symbol.dispose] = WasmWindowDefBuilder.prototype.free;
|
|
1545
|
+
function analyze_query$1(sql, options_json) {
|
|
1546
|
+
let deferred3_0;
|
|
1547
|
+
let deferred3_1;
|
|
1548
|
+
try {
|
|
1549
|
+
const retptr = wasm$3.__wbindgen_add_to_stack_pointer(-16);
|
|
1550
|
+
const ptr0 = passStringToWasm0(sql, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
1551
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1552
|
+
const ptr1 = passStringToWasm0(options_json, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
1553
|
+
const len1 = WASM_VECTOR_LEN;
|
|
1554
|
+
wasm$3.analyze_query(retptr, ptr0, len0, ptr1, len1);
|
|
1555
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
1556
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
1557
|
+
deferred3_0 = r0;
|
|
1558
|
+
deferred3_1 = r1;
|
|
1559
|
+
return getStringFromWasm0(r0, r1);
|
|
1560
|
+
} finally {
|
|
1561
|
+
wasm$3.__wbindgen_add_to_stack_pointer(16);
|
|
1562
|
+
wasm$3.__wbindgen_export4(deferred3_0, deferred3_1, 1);
|
|
1563
|
+
}
|
|
1564
|
+
}
|
|
1565
|
+
function analyze_query_value$1(sql, options) {
|
|
1566
|
+
const ptr0 = passStringToWasm0(sql, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
1567
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1568
|
+
const ret = wasm$3.analyze_query_value(ptr0, len0, addHeapObject(options));
|
|
1569
|
+
return takeObject(ret);
|
|
1570
|
+
}
|
|
1545
1571
|
function annotate_types$1(sql, dialect, schema_json) {
|
|
1546
1572
|
let deferred4_0;
|
|
1547
1573
|
let deferred4_1;
|
|
@@ -1994,6 +2020,32 @@ function generate$2(ast_json, dialect) {
|
|
|
1994
2020
|
wasm$3.__wbindgen_export4(deferred3_0, deferred3_1, 1);
|
|
1995
2021
|
}
|
|
1996
2022
|
}
|
|
2023
|
+
function generate_data_type$1(data_type_json, dialect) {
|
|
2024
|
+
let deferred3_0;
|
|
2025
|
+
let deferred3_1;
|
|
2026
|
+
try {
|
|
2027
|
+
const retptr = wasm$3.__wbindgen_add_to_stack_pointer(-16);
|
|
2028
|
+
const ptr0 = passStringToWasm0(data_type_json, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
2029
|
+
const len0 = WASM_VECTOR_LEN;
|
|
2030
|
+
const ptr1 = passStringToWasm0(dialect, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
2031
|
+
const len1 = WASM_VECTOR_LEN;
|
|
2032
|
+
wasm$3.generate_data_type(retptr, ptr0, len0, ptr1, len1);
|
|
2033
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
2034
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
2035
|
+
deferred3_0 = r0;
|
|
2036
|
+
deferred3_1 = r1;
|
|
2037
|
+
return getStringFromWasm0(r0, r1);
|
|
2038
|
+
} finally {
|
|
2039
|
+
wasm$3.__wbindgen_add_to_stack_pointer(16);
|
|
2040
|
+
wasm$3.__wbindgen_export4(deferred3_0, deferred3_1, 1);
|
|
2041
|
+
}
|
|
2042
|
+
}
|
|
2043
|
+
function generate_data_type_value$1(data_type, dialect) {
|
|
2044
|
+
const ptr0 = passStringToWasm0(dialect, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
2045
|
+
const len0 = WASM_VECTOR_LEN;
|
|
2046
|
+
const ret = wasm$3.generate_data_type_value(addHeapObject(data_type), ptr0, len0);
|
|
2047
|
+
return takeObject(ret);
|
|
2048
|
+
}
|
|
1997
2049
|
function generate_value$1(ast, dialect) {
|
|
1998
2050
|
const ptr0 = passStringToWasm0(dialect, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
1999
2051
|
const len0 = WASM_VECTOR_LEN;
|
|
@@ -2146,6 +2198,34 @@ function parse$2(sql, dialect) {
|
|
|
2146
2198
|
wasm$3.__wbindgen_export4(deferred3_0, deferred3_1, 1);
|
|
2147
2199
|
}
|
|
2148
2200
|
}
|
|
2201
|
+
function parse_data_type$1(sql, dialect) {
|
|
2202
|
+
let deferred3_0;
|
|
2203
|
+
let deferred3_1;
|
|
2204
|
+
try {
|
|
2205
|
+
const retptr = wasm$3.__wbindgen_add_to_stack_pointer(-16);
|
|
2206
|
+
const ptr0 = passStringToWasm0(sql, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
2207
|
+
const len0 = WASM_VECTOR_LEN;
|
|
2208
|
+
const ptr1 = passStringToWasm0(dialect, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
2209
|
+
const len1 = WASM_VECTOR_LEN;
|
|
2210
|
+
wasm$3.parse_data_type(retptr, ptr0, len0, ptr1, len1);
|
|
2211
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
2212
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
2213
|
+
deferred3_0 = r0;
|
|
2214
|
+
deferred3_1 = r1;
|
|
2215
|
+
return getStringFromWasm0(r0, r1);
|
|
2216
|
+
} finally {
|
|
2217
|
+
wasm$3.__wbindgen_add_to_stack_pointer(16);
|
|
2218
|
+
wasm$3.__wbindgen_export4(deferred3_0, deferred3_1, 1);
|
|
2219
|
+
}
|
|
2220
|
+
}
|
|
2221
|
+
function parse_data_type_value$1(sql, dialect) {
|
|
2222
|
+
const ptr0 = passStringToWasm0(sql, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
2223
|
+
const len0 = WASM_VECTOR_LEN;
|
|
2224
|
+
const ptr1 = passStringToWasm0(dialect, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
2225
|
+
const len1 = WASM_VECTOR_LEN;
|
|
2226
|
+
const ret = wasm$3.parse_data_type_value(ptr0, len0, ptr1, len1);
|
|
2227
|
+
return takeObject(ret);
|
|
2228
|
+
}
|
|
2149
2229
|
function parse_value$1(sql, dialect) {
|
|
2150
2230
|
const ptr0 = passStringToWasm0(sql, wasm$3.__wbindgen_export, wasm$3.__wbindgen_export2);
|
|
2151
2231
|
const len0 = WASM_VECTOR_LEN;
|
|
@@ -3033,6 +3113,8 @@ const __wbg_wasmselectbuilder_free = __vite__wasmModule.__wbg_wasmselectbuilder_
|
|
|
3033
3113
|
const __wbg_wasmsetopbuilder_free = __vite__wasmModule.__wbg_wasmsetopbuilder_free;
|
|
3034
3114
|
const __wbg_wasmupdatebuilder_free = __vite__wasmModule.__wbg_wasmupdatebuilder_free;
|
|
3035
3115
|
const __wbg_wasmwindowdefbuilder_free = __vite__wasmModule.__wbg_wasmwindowdefbuilder_free;
|
|
3116
|
+
const analyze_query = __vite__wasmModule.analyze_query;
|
|
3117
|
+
const analyze_query_value = __vite__wasmModule.analyze_query_value;
|
|
3036
3118
|
const annotate_types = __vite__wasmModule.annotate_types;
|
|
3037
3119
|
const annotate_types_value = __vite__wasmModule.annotate_types_value;
|
|
3038
3120
|
const ast_add_where = __vite__wasmModule.ast_add_where;
|
|
@@ -3058,6 +3140,8 @@ const format_sql_value = __vite__wasmModule.format_sql_value;
|
|
|
3058
3140
|
const format_sql_with_options = __vite__wasmModule.format_sql_with_options;
|
|
3059
3141
|
const format_sql_with_options_value = __vite__wasmModule.format_sql_with_options_value;
|
|
3060
3142
|
const generate$1 = __vite__wasmModule.generate;
|
|
3143
|
+
const generate_data_type = __vite__wasmModule.generate_data_type;
|
|
3144
|
+
const generate_data_type_value = __vite__wasmModule.generate_data_type_value;
|
|
3061
3145
|
const generate_value = __vite__wasmModule.generate_value;
|
|
3062
3146
|
const get_dialects = __vite__wasmModule.get_dialects;
|
|
3063
3147
|
const get_dialects_value = __vite__wasmModule.get_dialects_value;
|
|
@@ -3067,6 +3151,8 @@ const openlineage_column_lineage = __vite__wasmModule.openlineage_column_lineage
|
|
|
3067
3151
|
const openlineage_job_event = __vite__wasmModule.openlineage_job_event;
|
|
3068
3152
|
const openlineage_run_event = __vite__wasmModule.openlineage_run_event;
|
|
3069
3153
|
const parse$1 = __vite__wasmModule.parse;
|
|
3154
|
+
const parse_data_type = __vite__wasmModule.parse_data_type;
|
|
3155
|
+
const parse_data_type_value = __vite__wasmModule.parse_data_type_value;
|
|
3070
3156
|
const parse_value = __vite__wasmModule.parse_value;
|
|
3071
3157
|
const plan$1 = __vite__wasmModule.plan;
|
|
3072
3158
|
const source_tables = __vite__wasmModule.source_tables;
|
|
@@ -3228,6 +3314,8 @@ const wasm$2 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProper
|
|
|
3228
3314
|
__wbindgen_export2,
|
|
3229
3315
|
__wbindgen_export3,
|
|
3230
3316
|
__wbindgen_export4,
|
|
3317
|
+
analyze_query,
|
|
3318
|
+
analyze_query_value,
|
|
3231
3319
|
annotate_types,
|
|
3232
3320
|
annotate_types_value,
|
|
3233
3321
|
ast_add_where,
|
|
@@ -3253,6 +3341,8 @@ const wasm$2 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProper
|
|
|
3253
3341
|
format_sql_with_options,
|
|
3254
3342
|
format_sql_with_options_value,
|
|
3255
3343
|
generate: generate$1,
|
|
3344
|
+
generate_data_type,
|
|
3345
|
+
generate_data_type_value,
|
|
3256
3346
|
generate_value,
|
|
3257
3347
|
get_dialects,
|
|
3258
3348
|
get_dialects_value,
|
|
@@ -3263,6 +3353,8 @@ const wasm$2 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProper
|
|
|
3263
3353
|
openlineage_job_event,
|
|
3264
3354
|
openlineage_run_event,
|
|
3265
3355
|
parse: parse$1,
|
|
3356
|
+
parse_data_type,
|
|
3357
|
+
parse_data_type_value,
|
|
3266
3358
|
parse_value,
|
|
3267
3359
|
plan: plan$1,
|
|
3268
3360
|
source_tables,
|
|
@@ -3416,6 +3508,8 @@ const wasmModule = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePr
|
|
|
3416
3508
|
WasmSetOpBuilder,
|
|
3417
3509
|
WasmUpdateBuilder,
|
|
3418
3510
|
WasmWindowDefBuilder,
|
|
3511
|
+
analyze_query: analyze_query$1,
|
|
3512
|
+
analyze_query_value: analyze_query_value$1,
|
|
3419
3513
|
annotate_types: annotate_types$1,
|
|
3420
3514
|
annotate_types_value: annotate_types_value$1,
|
|
3421
3515
|
ast_add_where: ast_add_where$1,
|
|
@@ -3441,6 +3535,8 @@ const wasmModule = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePr
|
|
|
3441
3535
|
format_sql_with_options: format_sql_with_options$1,
|
|
3442
3536
|
format_sql_with_options_value: format_sql_with_options_value$1,
|
|
3443
3537
|
generate: generate$2,
|
|
3538
|
+
generate_data_type: generate_data_type$1,
|
|
3539
|
+
generate_data_type_value: generate_data_type_value$1,
|
|
3444
3540
|
generate_value: generate_value$1,
|
|
3445
3541
|
get_dialects: get_dialects$1,
|
|
3446
3542
|
get_dialects_value: get_dialects_value$1,
|
|
@@ -3450,6 +3546,8 @@ const wasmModule = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePr
|
|
|
3450
3546
|
openlineage_job_event: openlineage_job_event$1,
|
|
3451
3547
|
openlineage_run_event: openlineage_run_event$1,
|
|
3452
3548
|
parse: parse$2,
|
|
3549
|
+
parse_data_type: parse_data_type$1,
|
|
3550
|
+
parse_data_type_value: parse_data_type_value$1,
|
|
3453
3551
|
parse_value: parse_value$1,
|
|
3454
3552
|
plan: plan$2,
|
|
3455
3553
|
source_tables: source_tables$1,
|
|
@@ -5201,12 +5299,37 @@ function parseFailure(context, error) {
|
|
|
5201
5299
|
errorColumn: void 0
|
|
5202
5300
|
};
|
|
5203
5301
|
}
|
|
5302
|
+
function dataTypeFailure(context, error) {
|
|
5303
|
+
return {
|
|
5304
|
+
success: false,
|
|
5305
|
+
dataType: void 0,
|
|
5306
|
+
error: `WASM ${context} failed: ${errorMessage(error)}`,
|
|
5307
|
+
errorLine: void 0,
|
|
5308
|
+
errorColumn: void 0
|
|
5309
|
+
};
|
|
5310
|
+
}
|
|
5311
|
+
function generateDataTypeFailure(context, error) {
|
|
5312
|
+
return {
|
|
5313
|
+
success: false,
|
|
5314
|
+
sql: void 0,
|
|
5315
|
+
error: `WASM ${context} failed: ${errorMessage(error)}`,
|
|
5316
|
+
errorLine: void 0,
|
|
5317
|
+
errorColumn: void 0
|
|
5318
|
+
};
|
|
5319
|
+
}
|
|
5204
5320
|
function decodeWasmPayload(payload) {
|
|
5205
5321
|
if (typeof payload === "string") {
|
|
5206
5322
|
return JSON.parse(payload);
|
|
5207
5323
|
}
|
|
5208
5324
|
return payload;
|
|
5209
5325
|
}
|
|
5326
|
+
function queryAnalysisFailure(context, error) {
|
|
5327
|
+
return {
|
|
5328
|
+
success: false,
|
|
5329
|
+
analysis: void 0,
|
|
5330
|
+
error: `WASM ${context} failed: ${errorMessage(error)}`
|
|
5331
|
+
};
|
|
5332
|
+
}
|
|
5210
5333
|
async function init() {
|
|
5211
5334
|
return Promise.resolve();
|
|
5212
5335
|
}
|
|
@@ -5256,6 +5379,24 @@ function parse(sql, dialect = "generic") {
|
|
|
5256
5379
|
return parseFailure("parse", error);
|
|
5257
5380
|
}
|
|
5258
5381
|
}
|
|
5382
|
+
function parseDataType(sql, dialect = "generic") {
|
|
5383
|
+
try {
|
|
5384
|
+
if (typeof wasm.parse_data_type_value === "function") {
|
|
5385
|
+
return decodeWasmPayload(
|
|
5386
|
+
wasm.parse_data_type_value(sql, dialect)
|
|
5387
|
+
);
|
|
5388
|
+
}
|
|
5389
|
+
const result = JSON.parse(
|
|
5390
|
+
wasm.parse_data_type(sql, dialect)
|
|
5391
|
+
);
|
|
5392
|
+
if (result.success && typeof result.dataType === "string") {
|
|
5393
|
+
result.dataType = JSON.parse(result.dataType);
|
|
5394
|
+
}
|
|
5395
|
+
return result;
|
|
5396
|
+
} catch (error) {
|
|
5397
|
+
return dataTypeFailure("parseDataType", error);
|
|
5398
|
+
}
|
|
5399
|
+
}
|
|
5259
5400
|
function tokenize(sql, dialect = "generic") {
|
|
5260
5401
|
try {
|
|
5261
5402
|
if (typeof wasm.tokenize_value === "function") {
|
|
@@ -5285,6 +5426,21 @@ function generate(ast2, dialect = "generic") {
|
|
|
5285
5426
|
return transpileFailure("generate", error);
|
|
5286
5427
|
}
|
|
5287
5428
|
}
|
|
5429
|
+
function generateDataType(dataType, dialect = "generic") {
|
|
5430
|
+
try {
|
|
5431
|
+
if (typeof wasm.generate_data_type_value === "function") {
|
|
5432
|
+
return decodeWasmPayload(
|
|
5433
|
+
wasm.generate_data_type_value(dataType, dialect)
|
|
5434
|
+
);
|
|
5435
|
+
}
|
|
5436
|
+
const dataTypeJson = JSON.stringify(dataType);
|
|
5437
|
+
return JSON.parse(
|
|
5438
|
+
wasm.generate_data_type(dataTypeJson, dialect)
|
|
5439
|
+
);
|
|
5440
|
+
} catch (error) {
|
|
5441
|
+
return generateDataTypeFailure("generateDataType", error);
|
|
5442
|
+
}
|
|
5443
|
+
}
|
|
5288
5444
|
function format(sql, dialect = "generic") {
|
|
5289
5445
|
return formatWithOptions(sql, dialect, {});
|
|
5290
5446
|
}
|
|
@@ -5319,6 +5475,30 @@ function getDialects() {
|
|
|
5319
5475
|
function getVersion() {
|
|
5320
5476
|
return wasm.version();
|
|
5321
5477
|
}
|
|
5478
|
+
function analyzeQuery(sql, options = {}) {
|
|
5479
|
+
try {
|
|
5480
|
+
const normalized = {
|
|
5481
|
+
dialect: "generic",
|
|
5482
|
+
...options
|
|
5483
|
+
};
|
|
5484
|
+
if (typeof wasm.analyze_query_value === "function") {
|
|
5485
|
+
return decodeWasmPayload(
|
|
5486
|
+
wasm.analyze_query_value(sql, normalized)
|
|
5487
|
+
);
|
|
5488
|
+
}
|
|
5489
|
+
if (typeof wasm.analyze_query === "function") {
|
|
5490
|
+
return JSON.parse(
|
|
5491
|
+
wasm.analyze_query(sql, JSON.stringify(normalized))
|
|
5492
|
+
);
|
|
5493
|
+
}
|
|
5494
|
+
return {
|
|
5495
|
+
success: false,
|
|
5496
|
+
error: "analyze_query not available in this WASM build"
|
|
5497
|
+
};
|
|
5498
|
+
} catch (error) {
|
|
5499
|
+
return queryAnalysisFailure("analyzeQuery", error);
|
|
5500
|
+
}
|
|
5501
|
+
}
|
|
5322
5502
|
function annotateTypes(sql, dialect = "generic", schema) {
|
|
5323
5503
|
try {
|
|
5324
5504
|
const schemaJson = schema ? JSON.stringify(schema) : "";
|
|
@@ -5373,6 +5553,12 @@ class Polyglot {
|
|
|
5373
5553
|
parse(sql, dialect = "generic") {
|
|
5374
5554
|
return parse(sql, dialect);
|
|
5375
5555
|
}
|
|
5556
|
+
/**
|
|
5557
|
+
* Parse a standalone SQL data type.
|
|
5558
|
+
*/
|
|
5559
|
+
parseDataType(sql, dialect = "generic") {
|
|
5560
|
+
return parseDataType(sql, dialect);
|
|
5561
|
+
}
|
|
5376
5562
|
/**
|
|
5377
5563
|
* Tokenize SQL into a token stream.
|
|
5378
5564
|
*/
|
|
@@ -5385,6 +5571,12 @@ class Polyglot {
|
|
|
5385
5571
|
generate(ast2, dialect = "generic") {
|
|
5386
5572
|
return generate(ast2, dialect);
|
|
5387
5573
|
}
|
|
5574
|
+
/**
|
|
5575
|
+
* Generate SQL from a standalone DataType AST node.
|
|
5576
|
+
*/
|
|
5577
|
+
generateDataType(dataType, dialect = "generic") {
|
|
5578
|
+
return generateDataType(dataType, dialect);
|
|
5579
|
+
}
|
|
5388
5580
|
/**
|
|
5389
5581
|
* Format SQL.
|
|
5390
5582
|
*/
|
|
@@ -5416,16 +5608,25 @@ class Polyglot {
|
|
|
5416
5608
|
annotateTypes(sql, dialect = "generic", schema) {
|
|
5417
5609
|
return annotateTypes(sql, dialect, schema);
|
|
5418
5610
|
}
|
|
5611
|
+
/**
|
|
5612
|
+
* Return compact query analysis facts for a SELECT or set operation.
|
|
5613
|
+
*/
|
|
5614
|
+
analyzeQuery(sql, options = {}) {
|
|
5615
|
+
return analyzeQuery(sql, options);
|
|
5616
|
+
}
|
|
5419
5617
|
}
|
|
5420
5618
|
const index = {
|
|
5421
5619
|
init,
|
|
5422
5620
|
isInitialized,
|
|
5423
5621
|
transpile,
|
|
5424
5622
|
parse,
|
|
5623
|
+
parseDataType,
|
|
5425
5624
|
tokenize,
|
|
5426
5625
|
generate,
|
|
5626
|
+
generateDataType,
|
|
5427
5627
|
format,
|
|
5428
5628
|
annotateTypes,
|
|
5629
|
+
analyzeQuery,
|
|
5429
5630
|
getDialects,
|
|
5430
5631
|
getVersion,
|
|
5431
5632
|
lineage,
|
|
@@ -5456,6 +5657,7 @@ export {
|
|
|
5456
5657
|
WindowDefBuilder,
|
|
5457
5658
|
abs,
|
|
5458
5659
|
alias,
|
|
5660
|
+
analyzeQuery,
|
|
5459
5661
|
and,
|
|
5460
5662
|
annotateTypes,
|
|
5461
5663
|
index$1 as ast,
|
|
@@ -5489,6 +5691,7 @@ export {
|
|
|
5489
5691
|
formatWithOptions,
|
|
5490
5692
|
func,
|
|
5491
5693
|
generate,
|
|
5694
|
+
generateDataType,
|
|
5492
5695
|
getColumns,
|
|
5493
5696
|
getDialects,
|
|
5494
5697
|
getInferredType,
|
|
@@ -5525,6 +5728,7 @@ export {
|
|
|
5525
5728
|
openLineageRunEvent,
|
|
5526
5729
|
or,
|
|
5527
5730
|
parse,
|
|
5731
|
+
parseDataType,
|
|
5528
5732
|
plan,
|
|
5529
5733
|
power,
|
|
5530
5734
|
rank,
|
package/dist/manual.js
CHANGED
|
@@ -1552,6 +1552,46 @@ class WasmWindowDefBuilder {
|
|
|
1552
1552
|
}
|
|
1553
1553
|
if (Symbol.dispose) WasmWindowDefBuilder.prototype[Symbol.dispose] = WasmWindowDefBuilder.prototype.free;
|
|
1554
1554
|
|
|
1555
|
+
/**
|
|
1556
|
+
* Return compact query analysis facts for a SELECT or set operation.
|
|
1557
|
+
* @param {string} sql
|
|
1558
|
+
* @param {string} options_json
|
|
1559
|
+
* @returns {string}
|
|
1560
|
+
*/
|
|
1561
|
+
function analyze_query(sql, options_json) {
|
|
1562
|
+
let deferred3_0;
|
|
1563
|
+
let deferred3_1;
|
|
1564
|
+
try {
|
|
1565
|
+
const retptr = wasm$2.__wbindgen_add_to_stack_pointer(-16);
|
|
1566
|
+
const ptr0 = passStringToWasm0(sql, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
1567
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1568
|
+
const ptr1 = passStringToWasm0(options_json, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
1569
|
+
const len1 = WASM_VECTOR_LEN;
|
|
1570
|
+
wasm$2.analyze_query(retptr, ptr0, len0, ptr1, len1);
|
|
1571
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
1572
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
1573
|
+
deferred3_0 = r0;
|
|
1574
|
+
deferred3_1 = r1;
|
|
1575
|
+
return getStringFromWasm0(r0, r1);
|
|
1576
|
+
} finally {
|
|
1577
|
+
wasm$2.__wbindgen_add_to_stack_pointer(16);
|
|
1578
|
+
wasm$2.__wbindgen_export4(deferred3_0, deferred3_1, 1);
|
|
1579
|
+
}
|
|
1580
|
+
}
|
|
1581
|
+
|
|
1582
|
+
/**
|
|
1583
|
+
* Return compact query analysis facts as a structured JS value.
|
|
1584
|
+
* @param {string} sql
|
|
1585
|
+
* @param {any} options
|
|
1586
|
+
* @returns {any}
|
|
1587
|
+
*/
|
|
1588
|
+
function analyze_query_value(sql, options) {
|
|
1589
|
+
const ptr0 = passStringToWasm0(sql, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
1590
|
+
const len0 = WASM_VECTOR_LEN;
|
|
1591
|
+
const ret = wasm$2.analyze_query_value(ptr0, len0, addHeapObject(options));
|
|
1592
|
+
return takeObject(ret);
|
|
1593
|
+
}
|
|
1594
|
+
|
|
1555
1595
|
/**
|
|
1556
1596
|
* Annotate types on a parsed SQL AST in-place.
|
|
1557
1597
|
*
|
|
@@ -2217,6 +2257,46 @@ function generate$1(ast_json, dialect) {
|
|
|
2217
2257
|
}
|
|
2218
2258
|
}
|
|
2219
2259
|
|
|
2260
|
+
/**
|
|
2261
|
+
* Generate SQL from a standalone DataType JSON object.
|
|
2262
|
+
* @param {string} data_type_json
|
|
2263
|
+
* @param {string} dialect
|
|
2264
|
+
* @returns {string}
|
|
2265
|
+
*/
|
|
2266
|
+
function generate_data_type(data_type_json, dialect) {
|
|
2267
|
+
let deferred3_0;
|
|
2268
|
+
let deferred3_1;
|
|
2269
|
+
try {
|
|
2270
|
+
const retptr = wasm$2.__wbindgen_add_to_stack_pointer(-16);
|
|
2271
|
+
const ptr0 = passStringToWasm0(data_type_json, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
2272
|
+
const len0 = WASM_VECTOR_LEN;
|
|
2273
|
+
const ptr1 = passStringToWasm0(dialect, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
2274
|
+
const len1 = WASM_VECTOR_LEN;
|
|
2275
|
+
wasm$2.generate_data_type(retptr, ptr0, len0, ptr1, len1);
|
|
2276
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
2277
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
2278
|
+
deferred3_0 = r0;
|
|
2279
|
+
deferred3_1 = r1;
|
|
2280
|
+
return getStringFromWasm0(r0, r1);
|
|
2281
|
+
} finally {
|
|
2282
|
+
wasm$2.__wbindgen_add_to_stack_pointer(16);
|
|
2283
|
+
wasm$2.__wbindgen_export4(deferred3_0, deferred3_1, 1);
|
|
2284
|
+
}
|
|
2285
|
+
}
|
|
2286
|
+
|
|
2287
|
+
/**
|
|
2288
|
+
* Generate SQL from a standalone DataType represented as a structured JS value.
|
|
2289
|
+
* @param {any} data_type
|
|
2290
|
+
* @param {string} dialect
|
|
2291
|
+
* @returns {any}
|
|
2292
|
+
*/
|
|
2293
|
+
function generate_data_type_value(data_type, dialect) {
|
|
2294
|
+
const ptr0 = passStringToWasm0(dialect, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
2295
|
+
const len0 = WASM_VECTOR_LEN;
|
|
2296
|
+
const ret = wasm$2.generate_data_type_value(addHeapObject(data_type), ptr0, len0);
|
|
2297
|
+
return takeObject(ret);
|
|
2298
|
+
}
|
|
2299
|
+
|
|
2220
2300
|
/**
|
|
2221
2301
|
* Generate SQL from an AST represented as a structured JS value.
|
|
2222
2302
|
* @param {any} ast
|
|
@@ -2462,6 +2542,48 @@ function parse$1(sql, dialect) {
|
|
|
2462
2542
|
}
|
|
2463
2543
|
}
|
|
2464
2544
|
|
|
2545
|
+
/**
|
|
2546
|
+
* Parse a standalone SQL data type and return a JSON string payload.
|
|
2547
|
+
* @param {string} sql
|
|
2548
|
+
* @param {string} dialect
|
|
2549
|
+
* @returns {string}
|
|
2550
|
+
*/
|
|
2551
|
+
function parse_data_type(sql, dialect) {
|
|
2552
|
+
let deferred3_0;
|
|
2553
|
+
let deferred3_1;
|
|
2554
|
+
try {
|
|
2555
|
+
const retptr = wasm$2.__wbindgen_add_to_stack_pointer(-16);
|
|
2556
|
+
const ptr0 = passStringToWasm0(sql, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
2557
|
+
const len0 = WASM_VECTOR_LEN;
|
|
2558
|
+
const ptr1 = passStringToWasm0(dialect, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
2559
|
+
const len1 = WASM_VECTOR_LEN;
|
|
2560
|
+
wasm$2.parse_data_type(retptr, ptr0, len0, ptr1, len1);
|
|
2561
|
+
var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
|
|
2562
|
+
var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
|
|
2563
|
+
deferred3_0 = r0;
|
|
2564
|
+
deferred3_1 = r1;
|
|
2565
|
+
return getStringFromWasm0(r0, r1);
|
|
2566
|
+
} finally {
|
|
2567
|
+
wasm$2.__wbindgen_add_to_stack_pointer(16);
|
|
2568
|
+
wasm$2.__wbindgen_export4(deferred3_0, deferred3_1, 1);
|
|
2569
|
+
}
|
|
2570
|
+
}
|
|
2571
|
+
|
|
2572
|
+
/**
|
|
2573
|
+
* Parse a standalone SQL data type and return a structured JS value payload.
|
|
2574
|
+
* @param {string} sql
|
|
2575
|
+
* @param {string} dialect
|
|
2576
|
+
* @returns {any}
|
|
2577
|
+
*/
|
|
2578
|
+
function parse_data_type_value(sql, dialect) {
|
|
2579
|
+
const ptr0 = passStringToWasm0(sql, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
2580
|
+
const len0 = WASM_VECTOR_LEN;
|
|
2581
|
+
const ptr1 = passStringToWasm0(dialect, wasm$2.__wbindgen_export, wasm$2.__wbindgen_export2);
|
|
2582
|
+
const len1 = WASM_VECTOR_LEN;
|
|
2583
|
+
const ret = wasm$2.parse_data_type_value(ptr0, len0, ptr1, len1);
|
|
2584
|
+
return takeObject(ret);
|
|
2585
|
+
}
|
|
2586
|
+
|
|
2465
2587
|
/**
|
|
2466
2588
|
* Parse SQL and return a structured JS object with AST values.
|
|
2467
2589
|
* @param {string} sql
|
|
@@ -3694,6 +3816,8 @@ const wasmModule = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty
|
|
|
3694
3816
|
WasmSetOpBuilder,
|
|
3695
3817
|
WasmUpdateBuilder,
|
|
3696
3818
|
WasmWindowDefBuilder,
|
|
3819
|
+
analyze_query,
|
|
3820
|
+
analyze_query_value,
|
|
3697
3821
|
annotate_types,
|
|
3698
3822
|
annotate_types_value,
|
|
3699
3823
|
ast_add_where,
|
|
@@ -3719,6 +3843,8 @@ const wasmModule = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty
|
|
|
3719
3843
|
format_sql_with_options,
|
|
3720
3844
|
format_sql_with_options_value,
|
|
3721
3845
|
generate: generate$1,
|
|
3846
|
+
generate_data_type,
|
|
3847
|
+
generate_data_type_value,
|
|
3722
3848
|
generate_value,
|
|
3723
3849
|
get_dialects,
|
|
3724
3850
|
get_dialects_value,
|
|
@@ -3731,6 +3857,8 @@ const wasmModule = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty
|
|
|
3731
3857
|
openlineage_job_event,
|
|
3732
3858
|
openlineage_run_event,
|
|
3733
3859
|
parse: parse$1,
|
|
3860
|
+
parse_data_type,
|
|
3861
|
+
parse_data_type_value,
|
|
3734
3862
|
parse_value,
|
|
3735
3863
|
plan: plan$1,
|
|
3736
3864
|
source_tables,
|
|
@@ -5497,12 +5625,37 @@ function parseFailure(context, error) {
|
|
|
5497
5625
|
errorColumn: void 0
|
|
5498
5626
|
};
|
|
5499
5627
|
}
|
|
5628
|
+
function dataTypeFailure(context, error) {
|
|
5629
|
+
return {
|
|
5630
|
+
success: false,
|
|
5631
|
+
dataType: void 0,
|
|
5632
|
+
error: `WASM ${context} failed: ${errorMessage(error)}`,
|
|
5633
|
+
errorLine: void 0,
|
|
5634
|
+
errorColumn: void 0
|
|
5635
|
+
};
|
|
5636
|
+
}
|
|
5637
|
+
function generateDataTypeFailure(context, error) {
|
|
5638
|
+
return {
|
|
5639
|
+
success: false,
|
|
5640
|
+
sql: void 0,
|
|
5641
|
+
error: `WASM ${context} failed: ${errorMessage(error)}`,
|
|
5642
|
+
errorLine: void 0,
|
|
5643
|
+
errorColumn: void 0
|
|
5644
|
+
};
|
|
5645
|
+
}
|
|
5500
5646
|
function decodeWasmPayload(payload) {
|
|
5501
5647
|
if (typeof payload === "string") {
|
|
5502
5648
|
return JSON.parse(payload);
|
|
5503
5649
|
}
|
|
5504
5650
|
return payload;
|
|
5505
5651
|
}
|
|
5652
|
+
function queryAnalysisFailure(context, error) {
|
|
5653
|
+
return {
|
|
5654
|
+
success: false,
|
|
5655
|
+
analysis: void 0,
|
|
5656
|
+
error: `WASM ${context} failed: ${errorMessage(error)}`
|
|
5657
|
+
};
|
|
5658
|
+
}
|
|
5506
5659
|
async function init$1() {
|
|
5507
5660
|
return Promise.resolve();
|
|
5508
5661
|
}
|
|
@@ -5552,6 +5705,24 @@ function parse(sql, dialect = "generic" /* Generic */) {
|
|
|
5552
5705
|
return parseFailure("parse", error);
|
|
5553
5706
|
}
|
|
5554
5707
|
}
|
|
5708
|
+
function parseDataType(sql, dialect = "generic" /* Generic */) {
|
|
5709
|
+
try {
|
|
5710
|
+
if (typeof wasm.parse_data_type_value === "function") {
|
|
5711
|
+
return decodeWasmPayload(
|
|
5712
|
+
wasm.parse_data_type_value(sql, dialect)
|
|
5713
|
+
);
|
|
5714
|
+
}
|
|
5715
|
+
const result = JSON.parse(
|
|
5716
|
+
wasm.parse_data_type(sql, dialect)
|
|
5717
|
+
);
|
|
5718
|
+
if (result.success && typeof result.dataType === "string") {
|
|
5719
|
+
result.dataType = JSON.parse(result.dataType);
|
|
5720
|
+
}
|
|
5721
|
+
return result;
|
|
5722
|
+
} catch (error) {
|
|
5723
|
+
return dataTypeFailure("parseDataType", error);
|
|
5724
|
+
}
|
|
5725
|
+
}
|
|
5555
5726
|
function tokenize(sql, dialect = "generic" /* Generic */) {
|
|
5556
5727
|
try {
|
|
5557
5728
|
if (typeof wasm.tokenize_value === "function") {
|
|
@@ -5581,6 +5752,21 @@ function generate(ast2, dialect = "generic" /* Generic */) {
|
|
|
5581
5752
|
return transpileFailure("generate", error);
|
|
5582
5753
|
}
|
|
5583
5754
|
}
|
|
5755
|
+
function generateDataType(dataType, dialect = "generic" /* Generic */) {
|
|
5756
|
+
try {
|
|
5757
|
+
if (typeof wasm.generate_data_type_value === "function") {
|
|
5758
|
+
return decodeWasmPayload(
|
|
5759
|
+
wasm.generate_data_type_value(dataType, dialect)
|
|
5760
|
+
);
|
|
5761
|
+
}
|
|
5762
|
+
const dataTypeJson = JSON.stringify(dataType);
|
|
5763
|
+
return JSON.parse(
|
|
5764
|
+
wasm.generate_data_type(dataTypeJson, dialect)
|
|
5765
|
+
);
|
|
5766
|
+
} catch (error) {
|
|
5767
|
+
return generateDataTypeFailure("generateDataType", error);
|
|
5768
|
+
}
|
|
5769
|
+
}
|
|
5584
5770
|
function format(sql, dialect = "generic" /* Generic */) {
|
|
5585
5771
|
return formatWithOptions(sql, dialect, {});
|
|
5586
5772
|
}
|
|
@@ -5615,6 +5801,30 @@ function getDialects() {
|
|
|
5615
5801
|
function getVersion() {
|
|
5616
5802
|
return wasm.version();
|
|
5617
5803
|
}
|
|
5804
|
+
function analyzeQuery(sql, options = {}) {
|
|
5805
|
+
try {
|
|
5806
|
+
const normalized = {
|
|
5807
|
+
dialect: "generic" /* Generic */,
|
|
5808
|
+
...options
|
|
5809
|
+
};
|
|
5810
|
+
if (typeof wasm.analyze_query_value === "function") {
|
|
5811
|
+
return decodeWasmPayload(
|
|
5812
|
+
wasm.analyze_query_value(sql, normalized)
|
|
5813
|
+
);
|
|
5814
|
+
}
|
|
5815
|
+
if (typeof wasm.analyze_query === "function") {
|
|
5816
|
+
return JSON.parse(
|
|
5817
|
+
wasm.analyze_query(sql, JSON.stringify(normalized))
|
|
5818
|
+
);
|
|
5819
|
+
}
|
|
5820
|
+
return {
|
|
5821
|
+
success: false,
|
|
5822
|
+
error: "analyze_query not available in this WASM build"
|
|
5823
|
+
};
|
|
5824
|
+
} catch (error) {
|
|
5825
|
+
return queryAnalysisFailure("analyzeQuery", error);
|
|
5826
|
+
}
|
|
5827
|
+
}
|
|
5618
5828
|
function annotateTypes(sql, dialect = "generic" /* Generic */, schema) {
|
|
5619
5829
|
try {
|
|
5620
5830
|
const schemaJson = schema ? JSON.stringify(schema) : "";
|
|
@@ -5669,6 +5879,12 @@ class Polyglot {
|
|
|
5669
5879
|
parse(sql, dialect = "generic" /* Generic */) {
|
|
5670
5880
|
return parse(sql, dialect);
|
|
5671
5881
|
}
|
|
5882
|
+
/**
|
|
5883
|
+
* Parse a standalone SQL data type.
|
|
5884
|
+
*/
|
|
5885
|
+
parseDataType(sql, dialect = "generic" /* Generic */) {
|
|
5886
|
+
return parseDataType(sql, dialect);
|
|
5887
|
+
}
|
|
5672
5888
|
/**
|
|
5673
5889
|
* Tokenize SQL into a token stream.
|
|
5674
5890
|
*/
|
|
@@ -5681,6 +5897,12 @@ class Polyglot {
|
|
|
5681
5897
|
generate(ast2, dialect = "generic" /* Generic */) {
|
|
5682
5898
|
return generate(ast2, dialect);
|
|
5683
5899
|
}
|
|
5900
|
+
/**
|
|
5901
|
+
* Generate SQL from a standalone DataType AST node.
|
|
5902
|
+
*/
|
|
5903
|
+
generateDataType(dataType, dialect = "generic" /* Generic */) {
|
|
5904
|
+
return generateDataType(dataType, dialect);
|
|
5905
|
+
}
|
|
5684
5906
|
/**
|
|
5685
5907
|
* Format SQL.
|
|
5686
5908
|
*/
|
|
@@ -5712,16 +5934,25 @@ class Polyglot {
|
|
|
5712
5934
|
annotateTypes(sql, dialect = "generic" /* Generic */, schema) {
|
|
5713
5935
|
return annotateTypes(sql, dialect, schema);
|
|
5714
5936
|
}
|
|
5937
|
+
/**
|
|
5938
|
+
* Return compact query analysis facts for a SELECT or set operation.
|
|
5939
|
+
*/
|
|
5940
|
+
analyzeQuery(sql, options = {}) {
|
|
5941
|
+
return analyzeQuery(sql, options);
|
|
5942
|
+
}
|
|
5715
5943
|
}
|
|
5716
5944
|
const autoDefault = {
|
|
5717
5945
|
init: init$1,
|
|
5718
5946
|
isInitialized: isInitialized$1,
|
|
5719
5947
|
transpile,
|
|
5720
5948
|
parse,
|
|
5949
|
+
parseDataType,
|
|
5721
5950
|
tokenize,
|
|
5722
5951
|
generate,
|
|
5952
|
+
generateDataType,
|
|
5723
5953
|
format,
|
|
5724
5954
|
annotateTypes,
|
|
5955
|
+
analyzeQuery,
|
|
5725
5956
|
getDialects,
|
|
5726
5957
|
getVersion,
|
|
5727
5958
|
lineage: lineage,
|
|
@@ -5750,4 +5981,4 @@ const manual = {
|
|
|
5750
5981
|
isInitialized
|
|
5751
5982
|
};
|
|
5752
5983
|
|
|
5753
|
-
export { CaseBuilder, DeleteBuilder, Dialect, Expr, InsertBuilder, MergeBuilder, Polyglot, SelectBuilder, SetOpBuilder, UpdateBuilder, ValidationSeverity, WindowDefBuilder, abs, alias, and, annotateTypes, index as ast, avg, boolean, caseOf, caseWhen, cast, ceil, changesOnly, coalesce, col, concatWs, condition, count, countDistinct, currentDate, currentTime, currentTimestamp, manual as default, del, deleteFrom, denseRank, diff, except, exp, extract, findAll, floor, format, formatWithOptions, func, generate, getColumns, getDialects, getInferredType, getSourceTables, getVersion, greatest, hasChanges, ifNull, init, initcap, insert, insertInto, intersect, isColumn, isFunction, isInitialized, isLiteral, isSelect, least, length, lineage, lineageWithSchema, lit, ln, lower, ltrim, max, mergeInto, min, not, nullIf, openLineageColumnLineage, openLineageJobEvent, openLineageRunEvent, or, parse, plan, power, rank, renameColumns, replace, reverse, round, rowNumber, rtrim, select, sign, sqlExpr, sqlNull, sqrt, star, subquery, substring, sum, table, tokenize, transform, transpile, trim, union, unionAll, update, upper, validate, validateWithSchema, walk };
|
|
5984
|
+
export { CaseBuilder, DeleteBuilder, Dialect, Expr, InsertBuilder, MergeBuilder, Polyglot, SelectBuilder, SetOpBuilder, UpdateBuilder, ValidationSeverity, WindowDefBuilder, abs, alias, analyzeQuery, and, annotateTypes, index as ast, avg, boolean, caseOf, caseWhen, cast, ceil, changesOnly, coalesce, col, concatWs, condition, count, countDistinct, currentDate, currentTime, currentTimestamp, manual as default, del, deleteFrom, denseRank, diff, except, exp, extract, findAll, floor, format, formatWithOptions, func, generate, generateDataType, getColumns, getDialects, getInferredType, getSourceTables, getVersion, greatest, hasChanges, ifNull, init, initcap, insert, insertInto, intersect, isColumn, isFunction, isInitialized, isLiteral, isSelect, least, length, lineage, lineageWithSchema, lit, ln, lower, ltrim, max, mergeInto, min, not, nullIf, openLineageColumnLineage, openLineageJobEvent, openLineageRunEvent, or, parse, parseDataType, plan, power, rank, renameColumns, replace, reverse, round, rowNumber, rtrim, select, sign, sqlExpr, sqlNull, sqrt, star, subquery, substring, sum, table, tokenize, transform, transpile, trim, union, unionAll, update, upper, validate, validateWithSchema, walk };
|
package/dist/polyglot_sql.wasm
CHANGED
|
Binary file
|