@effectuate/cubejs-mongosql-driver 1.0.0 → 1.0.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/dist/MongoSqlDriver.d.ts +35 -0
- package/dist/MongoSqlDriver.d.ts.map +1 -1
- package/dist/MongoSqlDriver.js +222 -3
- package/dist/MongoSqlDriver.js.map +1 -1
- package/dist/MongoSqlQuery.d.ts.map +1 -1
- package/dist/MongoSqlQuery.js +14 -0
- package/dist/MongoSqlQuery.js.map +1 -1
- package/package.json +8 -8
- package/index.d.ts +0 -160
- package/index.js +0 -316
package/dist/MongoSqlDriver.d.ts
CHANGED
|
@@ -234,5 +234,40 @@ declare function normalizeRowShape<R>(rows: Array<Record<string, unknown>>): R[]
|
|
|
234
234
|
* Not part of the public API.
|
|
235
235
|
*/
|
|
236
236
|
export declare const _normalizeRowShapeForTests: typeof normalizeRowShape;
|
|
237
|
+
/**
|
|
238
|
+
* Rewrite positional `GROUP BY 1, 2, ...` clauses to reference the SELECT
|
|
239
|
+
* projection's column ALIASES of the same query scope.
|
|
240
|
+
*
|
|
241
|
+
* **Why.** mongosql does NOT support positional (ordinal) GROUP BY: its
|
|
242
|
+
* grammar's `GROUP BY` takes expressions (`CommaPlus<OptionallyAliasedExpr>`
|
|
243
|
+
* in `mongosql/src/parser/mongosql.lalrpop`), so `GROUP BY 1` is parsed as the
|
|
244
|
+
* literal integer `1`, not "the first select column". The algebrizer then
|
|
245
|
+
* intermittently fails to resolve the FROM table's datasource — the failure is
|
|
246
|
+
* HashMap-seed dependent, so it passes on some processes and fails on others
|
|
247
|
+
* (it surfaced only in CI). Reproduced deterministically against
|
|
248
|
+
* `mongosql::translate_sql` in `crates/native/tests/translate_concurrency.rs`:
|
|
249
|
+
* positional / raw-expression GROUP BY fail, GROUP BY by column ALIAS never
|
|
250
|
+
* does. Cube's dialect already emits aliases on its string-concat GROUP BY
|
|
251
|
+
* path (`MongoSqlQuery.groupByClause()`), but the newer tesseract template
|
|
252
|
+
* path (time-dimension / granularity queries, Cube >= 1.6.68) emits positional
|
|
253
|
+
* refs, which this rewrite repairs.
|
|
254
|
+
*
|
|
255
|
+
* **How.** Single scope-aware pass (tracks `` ` ``-quoted identifiers,
|
|
256
|
+
* `'`-strings, and parenthesis depth). For each query scope we record the
|
|
257
|
+
* trailing `` `alias` `` of every top-level projection item; when that scope's
|
|
258
|
+
* `GROUP BY` is a list made up ENTIRELY of positive integers, each integer `n`
|
|
259
|
+
* is replaced by the n-th projection alias.
|
|
260
|
+
*
|
|
261
|
+
* **Conservative.** A GROUP BY is left untouched unless (a) its whole key list
|
|
262
|
+
* is positional integers and (b) every referenced position maps to a known
|
|
263
|
+
* backtick alias in that scope. Non-positional GROUP BYs (already expressions
|
|
264
|
+
* or aliases) and anything ambiguous are passed through unchanged, so a query
|
|
265
|
+
* is never made *worse* than it was.
|
|
266
|
+
*/
|
|
267
|
+
declare function rewritePositionalGroupBy(sql: string): string;
|
|
268
|
+
/**
|
|
269
|
+
* Test-only export for `rewritePositionalGroupBy`.
|
|
270
|
+
*/
|
|
271
|
+
export declare const _rewritePositionalGroupByForTests: typeof rewritePositionalGroupBy;
|
|
237
272
|
export {};
|
|
238
273
|
//# sourceMappingURL=MongoSqlDriver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MongoSqlDriver.d.ts","sourceRoot":"","sources":["../src/MongoSqlDriver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EACV,2BAA2B,EAC3B,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,0BAA0B,EAC1B,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,WAAW,EACX,cAAc,EACf,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAmC,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAA+B,MAAM,YAAY,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC5C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAEhD,OAAO,CAAC,MAAM,CAA6B;gBAE/B,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAK5C,gFAAgF;IACzE,OAAO,IAAI,QAAQ,CAAC,cAAc,CAAC;IAMpB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAK/B,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"MongoSqlDriver.d.ts","sourceRoot":"","sources":["../src/MongoSqlDriver.ts"],"names":[],"mappings":"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"}
|
package/dist/MongoSqlDriver.js
CHANGED
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
* - dialectClass() — override → MongoSqlQuery
|
|
66
66
|
*/
|
|
67
67
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
68
|
-
exports._normalizeRowShapeForTests = exports.MongoSqlDriver = void 0;
|
|
68
|
+
exports._rewritePositionalGroupByForTests = exports._normalizeRowShapeForTests = exports.MongoSqlDriver = void 0;
|
|
69
69
|
const base_driver_1 = require("@cubejs-backend/base-driver");
|
|
70
70
|
const native_js_1 = require("./native.js");
|
|
71
71
|
const MongoSqlQuery_js_1 = require("./MongoSqlQuery.js");
|
|
@@ -136,7 +136,8 @@ class MongoSqlDriver extends base_driver_1.BaseDriver {
|
|
|
136
136
|
// We substitute the values into the SQL as quoted literals BEFORE
|
|
137
137
|
// sending to mongosql — equivalent to what CubeJS's `BaseQuery.paramAllocator`
|
|
138
138
|
// would emit when the dialect declares no param support.
|
|
139
|
-
const
|
|
139
|
+
const substituted = values !== undefined && values.length > 0 ? substituteParameters(sql, values) : sql;
|
|
140
|
+
const finalSql = rewritePositionalGroupBy(substituted);
|
|
140
141
|
if (projectionHasNameCollision(finalSql)) {
|
|
141
142
|
throw translateFailed('JOIN projection contains two or more qualified columns with the same name ' +
|
|
142
143
|
'(e.g. `SELECT a.col, b.col` where the column names match). Mongosql ' +
|
|
@@ -300,7 +301,8 @@ class MongoSqlDriver extends base_driver_1.BaseDriver {
|
|
|
300
301
|
// so two translations of the same SQL produced different field
|
|
301
302
|
// orders. Divergent column orders across partition rebuilds caused
|
|
302
303
|
// Cube Store UNIONs to fail with `type_coercion ... Timestamp ... Int64`.
|
|
303
|
-
const
|
|
304
|
+
const substituted = values !== undefined && values.length > 0 ? substituteParameters(sql, values) : sql;
|
|
305
|
+
const finalSql = rewritePositionalGroupBy(substituted);
|
|
304
306
|
if (projectionHasNameCollision(finalSql)) {
|
|
305
307
|
throw translateFailed('JOIN projection contains two or more qualified columns with the same name ' +
|
|
306
308
|
'(e.g. `SELECT a.col, b.col` where the column names match). Mongosql ' +
|
|
@@ -561,6 +563,223 @@ function projectionHasNameCollision(sql) {
|
|
|
561
563
|
}
|
|
562
564
|
return false;
|
|
563
565
|
}
|
|
566
|
+
/**
|
|
567
|
+
* Rewrite positional `GROUP BY 1, 2, ...` clauses to reference the SELECT
|
|
568
|
+
* projection's column ALIASES of the same query scope.
|
|
569
|
+
*
|
|
570
|
+
* **Why.** mongosql does NOT support positional (ordinal) GROUP BY: its
|
|
571
|
+
* grammar's `GROUP BY` takes expressions (`CommaPlus<OptionallyAliasedExpr>`
|
|
572
|
+
* in `mongosql/src/parser/mongosql.lalrpop`), so `GROUP BY 1` is parsed as the
|
|
573
|
+
* literal integer `1`, not "the first select column". The algebrizer then
|
|
574
|
+
* intermittently fails to resolve the FROM table's datasource — the failure is
|
|
575
|
+
* HashMap-seed dependent, so it passes on some processes and fails on others
|
|
576
|
+
* (it surfaced only in CI). Reproduced deterministically against
|
|
577
|
+
* `mongosql::translate_sql` in `crates/native/tests/translate_concurrency.rs`:
|
|
578
|
+
* positional / raw-expression GROUP BY fail, GROUP BY by column ALIAS never
|
|
579
|
+
* does. Cube's dialect already emits aliases on its string-concat GROUP BY
|
|
580
|
+
* path (`MongoSqlQuery.groupByClause()`), but the newer tesseract template
|
|
581
|
+
* path (time-dimension / granularity queries, Cube >= 1.6.68) emits positional
|
|
582
|
+
* refs, which this rewrite repairs.
|
|
583
|
+
*
|
|
584
|
+
* **How.** Single scope-aware pass (tracks `` ` ``-quoted identifiers,
|
|
585
|
+
* `'`-strings, and parenthesis depth). For each query scope we record the
|
|
586
|
+
* trailing `` `alias` `` of every top-level projection item; when that scope's
|
|
587
|
+
* `GROUP BY` is a list made up ENTIRELY of positive integers, each integer `n`
|
|
588
|
+
* is replaced by the n-th projection alias.
|
|
589
|
+
*
|
|
590
|
+
* **Conservative.** A GROUP BY is left untouched unless (a) its whole key list
|
|
591
|
+
* is positional integers and (b) every referenced position maps to a known
|
|
592
|
+
* backtick alias in that scope. Non-positional GROUP BYs (already expressions
|
|
593
|
+
* or aliases) and anything ambiguous are passed through unchanged, so a query
|
|
594
|
+
* is never made *worse* than it was.
|
|
595
|
+
*/
|
|
596
|
+
function rewritePositionalGroupBy(sql) {
|
|
597
|
+
const stack = [];
|
|
598
|
+
const edits = [];
|
|
599
|
+
const n = sql.length;
|
|
600
|
+
let depth = 0;
|
|
601
|
+
let i = 0;
|
|
602
|
+
const top = () => stack[stack.length - 1];
|
|
603
|
+
const finishItem = (f) => {
|
|
604
|
+
f.aliases.push(trailingBacktickAlias(f.itemBuf) ?? '');
|
|
605
|
+
f.itemBuf = '';
|
|
606
|
+
};
|
|
607
|
+
const feed = (s) => {
|
|
608
|
+
const f = top();
|
|
609
|
+
if (f?.collecting)
|
|
610
|
+
f.itemBuf += s;
|
|
611
|
+
};
|
|
612
|
+
while (i < n) {
|
|
613
|
+
const ch = sql[i];
|
|
614
|
+
// Backtick-quoted identifier — consume whole.
|
|
615
|
+
if (ch === '`') {
|
|
616
|
+
let j = i + 1;
|
|
617
|
+
while (j < n && sql[j] !== '`')
|
|
618
|
+
j++;
|
|
619
|
+
feed(sql.slice(i, j + 1));
|
|
620
|
+
i = j + 1;
|
|
621
|
+
continue;
|
|
622
|
+
}
|
|
623
|
+
// Single-quoted string — consume whole (doubled '' is an escaped quote).
|
|
624
|
+
if (ch === "'") {
|
|
625
|
+
let j = i + 1;
|
|
626
|
+
while (j < n) {
|
|
627
|
+
if (sql[j] === "'") {
|
|
628
|
+
if (sql[j + 1] === "'") {
|
|
629
|
+
j += 2;
|
|
630
|
+
continue;
|
|
631
|
+
}
|
|
632
|
+
break;
|
|
633
|
+
}
|
|
634
|
+
j++;
|
|
635
|
+
}
|
|
636
|
+
feed(sql.slice(i, j + 1));
|
|
637
|
+
i = j + 1;
|
|
638
|
+
continue;
|
|
639
|
+
}
|
|
640
|
+
if (ch === '(') {
|
|
641
|
+
depth++;
|
|
642
|
+
feed(ch);
|
|
643
|
+
i++;
|
|
644
|
+
continue;
|
|
645
|
+
}
|
|
646
|
+
if (ch === ')') {
|
|
647
|
+
depth--;
|
|
648
|
+
feed(ch);
|
|
649
|
+
// A closing paren ends any subquery scope opened at a deeper level.
|
|
650
|
+
while (stack.length && top().depth > depth)
|
|
651
|
+
stack.pop();
|
|
652
|
+
i++;
|
|
653
|
+
continue;
|
|
654
|
+
}
|
|
655
|
+
if (ch === ',') {
|
|
656
|
+
const f = top();
|
|
657
|
+
if (f?.collecting && depth === f.depth)
|
|
658
|
+
finishItem(f);
|
|
659
|
+
else
|
|
660
|
+
feed(ch);
|
|
661
|
+
i++;
|
|
662
|
+
continue;
|
|
663
|
+
}
|
|
664
|
+
// Word (keyword or identifier).
|
|
665
|
+
if (/[A-Za-z_]/.test(ch)) {
|
|
666
|
+
let j = i + 1;
|
|
667
|
+
while (j < n && /[A-Za-z0-9_]/.test(sql[j]))
|
|
668
|
+
j++;
|
|
669
|
+
const word = sql.slice(i, j);
|
|
670
|
+
const upper = word.toUpperCase();
|
|
671
|
+
const f = top();
|
|
672
|
+
if (upper === 'SELECT') {
|
|
673
|
+
feed(word);
|
|
674
|
+
stack.push({ depth, aliases: [], collecting: true, itemBuf: '' });
|
|
675
|
+
i = j;
|
|
676
|
+
continue;
|
|
677
|
+
}
|
|
678
|
+
if (upper === 'FROM' && f?.collecting && depth === f.depth) {
|
|
679
|
+
finishItem(f);
|
|
680
|
+
f.collecting = false;
|
|
681
|
+
i = j;
|
|
682
|
+
continue;
|
|
683
|
+
}
|
|
684
|
+
if (upper === 'GROUP') {
|
|
685
|
+
// Look for `BY` next.
|
|
686
|
+
let k = j;
|
|
687
|
+
while (k < n && /\s/.test(sql[k]))
|
|
688
|
+
k++;
|
|
689
|
+
const by = sql.slice(k, k + 2).toUpperCase();
|
|
690
|
+
const byBoundary = !/[A-Za-z0-9_]/.test(sql[k + 2] ?? ' ');
|
|
691
|
+
if (by === 'BY' && byBoundary && f && !f.collecting && depth === f.depth) {
|
|
692
|
+
let m = k + 2;
|
|
693
|
+
while (m < n && /\s/.test(sql[m]))
|
|
694
|
+
m++;
|
|
695
|
+
const list = parsePositionalGroupByList(sql, m, depth);
|
|
696
|
+
if (list) {
|
|
697
|
+
const mapped = list.positions.map((p) => f.aliases[p - 1]);
|
|
698
|
+
if (mapped.every((a) => a && a.length > 0)) {
|
|
699
|
+
edits.push({ start: m, end: list.end, text: mapped.map((a) => `\`${a}\``).join(', ') });
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
i = k + 2;
|
|
703
|
+
continue;
|
|
704
|
+
}
|
|
705
|
+
feed(word);
|
|
706
|
+
i = j;
|
|
707
|
+
continue;
|
|
708
|
+
}
|
|
709
|
+
feed(word);
|
|
710
|
+
i = j;
|
|
711
|
+
continue;
|
|
712
|
+
}
|
|
713
|
+
feed(ch);
|
|
714
|
+
i++;
|
|
715
|
+
}
|
|
716
|
+
if (edits.length === 0)
|
|
717
|
+
return sql;
|
|
718
|
+
edits.sort((a, b) => b.start - a.start);
|
|
719
|
+
let out = sql;
|
|
720
|
+
for (const e of edits)
|
|
721
|
+
out = out.slice(0, e.start) + e.text + out.slice(e.end);
|
|
722
|
+
return out;
|
|
723
|
+
}
|
|
724
|
+
/**
|
|
725
|
+
* If `item` ends with a `` `backtick-quoted` `` identifier (Cube aliases every
|
|
726
|
+
* projection as `<expr> \`alias\``), return the unquoted alias; else null.
|
|
727
|
+
*/
|
|
728
|
+
function trailingBacktickAlias(item) {
|
|
729
|
+
const trimmed = item.trimEnd();
|
|
730
|
+
if (!trimmed.endsWith('`'))
|
|
731
|
+
return null;
|
|
732
|
+
const open = trimmed.lastIndexOf('`', trimmed.length - 2);
|
|
733
|
+
if (open < 0)
|
|
734
|
+
return null;
|
|
735
|
+
const alias = trimmed.slice(open + 1, trimmed.length - 1);
|
|
736
|
+
return alias.length ? alias : null;
|
|
737
|
+
}
|
|
738
|
+
/**
|
|
739
|
+
* Parse a GROUP BY key list starting at `start` that is made up ENTIRELY of
|
|
740
|
+
* positive integer ordinals (`1, 2, 3`) at parenthesis depth `depth`. Returns
|
|
741
|
+
* the positions and the index just past the last integer, or null if the list
|
|
742
|
+
* is not purely positional (leaving expression/alias GROUP BYs untouched).
|
|
743
|
+
*/
|
|
744
|
+
function parsePositionalGroupByList(sql, start, depth) {
|
|
745
|
+
const positions = [];
|
|
746
|
+
let i = start;
|
|
747
|
+
const n = sql.length;
|
|
748
|
+
let localDepth = depth;
|
|
749
|
+
for (;;) {
|
|
750
|
+
while (i < n && /\s/.test(sql[i]))
|
|
751
|
+
i++;
|
|
752
|
+
// Read an integer.
|
|
753
|
+
let j = i;
|
|
754
|
+
while (j < n && sql[j] >= '0' && sql[j] <= '9')
|
|
755
|
+
j++;
|
|
756
|
+
if (j === i)
|
|
757
|
+
return null; // not an integer → not a positional list
|
|
758
|
+
positions.push(Number.parseInt(sql.slice(i, j), 10));
|
|
759
|
+
const lastEnd = j;
|
|
760
|
+
// Skip whitespace; expect a comma (more keys) or end-of-clause.
|
|
761
|
+
let k = j;
|
|
762
|
+
while (k < n && /\s/.test(sql[k]))
|
|
763
|
+
k++;
|
|
764
|
+
if (k >= n)
|
|
765
|
+
return { positions, end: lastEnd };
|
|
766
|
+
const c = sql[k];
|
|
767
|
+
if (c === ',' && localDepth === depth) {
|
|
768
|
+
i = k + 1;
|
|
769
|
+
continue;
|
|
770
|
+
}
|
|
771
|
+
// Anything else (ORDER, LIMIT, HAVING, ), etc.) ends the list.
|
|
772
|
+
if (c === '(')
|
|
773
|
+
localDepth++;
|
|
774
|
+
if (c === ')')
|
|
775
|
+
localDepth--;
|
|
776
|
+
return { positions, end: lastEnd };
|
|
777
|
+
}
|
|
778
|
+
}
|
|
779
|
+
/**
|
|
780
|
+
* Test-only export for `rewritePositionalGroupBy`.
|
|
781
|
+
*/
|
|
782
|
+
exports._rewritePositionalGroupByForTests = rewritePositionalGroupBy;
|
|
564
783
|
/**
|
|
565
784
|
* Substitute `?` placeholders in `sql` with literal values from `values`.
|
|
566
785
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MongoSqlDriver.js","sourceRoot":"","sources":["../src/MongoSqlDriver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MongoSqlDriver.js","sourceRoot":"","sources":["../src/MongoSqlDriver.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;;;AAEH,6DAAyD;AAgBzD,2CAAiF;AACjF,yDAAmD;AACnD,2CAA+C;AAG/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAa,cAAe,SAAQ,wBAAU;IAC3B,cAAc,CAAiB;IAExC,MAAM,CAA6B;IAE3C,YAAY,MAAgC;QAC1C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,gFAAgF;IACzE,OAAO;QACZ,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,6CAA6C;IAE7B,KAAK,CAAC,cAAc;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC;IAChC,CAAC;IAEe,KAAK,CAAC,KAAK,CAAc,GAAW,EAAE,MAAkB,EAAE,OAAsB;QAC9F,kEAAkE;QAClE,qEAAqE;QACrE,uDAAuD;QACvD,qFAAqF;QACrF,kEAAkE;QAClE,+EAA+E;QAC/E,yDAAyD;QACzD,MAAM,WAAW,GAAG,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACxG,MAAM,QAAQ,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzC,MAAM,eAAe,CACnB,4EAA4E;gBAC1E,sEAAsE;gBACtE,4EAA4E;gBAC5E,0EAA0E;gBAC1E,gEAAgE;gBAChE,4CAA4C,CAC/C,CAAC;QACJ,CAAC;QACD,uEAAuE;QACvE,kEAAkE;QAClE,wEAAwE;QACxE,oEAAoE;QACpE,gEAAgE;QAChE,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,KAAK,CAA0B,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1E,MAAM,IAAI,GAAG,WAAW,CAA0B,GAAG,CAAC,CAAC;QACvD,OAAO,iBAAiB,CAAI,IAAI,CAAC,CAAC;IACpC,CAAC;IAEe,KAAK,CAAC,YAAY;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,OAAO,MAAM,CAAC,YAAY,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACa,KAAK,CAAC,UAAU;QAC9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3C,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;OASG;IACa,KAAK,CAAC,2BAA2B,CAAC,OAA6B;QAC7E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3C,MAAM,GAAG,GAAwB,EAAE,CAAC;QACpC,KAAK,MAAM,EAAE,WAAW,EAAE,IAAI,OAAO,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7C,GAAG,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACa,KAAK,CAAC,2BAA2B,CAAC,MAA2B;QAC3E,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3C,MAAM,GAAG,GAAyB,EAAE,CAAC;QACrC,KAAK,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,MAAM,EAAE,CAAC;YACjD,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;YACjD,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,GAAG,CAAC,IAAI,CAAC;oBACP,WAAW;oBACX,UAAU;oBACV,WAAW,EAAE,GAAG,CAAC,IAAI;oBACrB,SAAS,EAAE,GAAG,CAAC,IAAI;oBACnB,UAAU,EAAE,GAAG,CAAC,UAAU;iBAC3B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEe,KAAK,CAAC,OAAO;QAC3B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;YACtB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;IACH,CAAC;IAEe,KAAK,CAAC,oBAAoB,CACxC,GAAW,EACX,MAAkB,EAClB,OAAqC;QAErC,uEAAuE;QACvE,+CAA+C;QAC/C,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAA8C,CAAC,CAAC;QAClF,oEAAoE;QACpE,uEAAuE;QACvE,oEAAoE;QACpE,gEAAgE;QAChE,gEAAgE;QAChE,sEAAsE;QACtE,EAAE;QACF,mEAAmE;QACnE,gEAAgE;QAChE,mEAAmE;QACnE,oEAAoE;QACpE,gEAAgE;QAChE,gEAAgE;QAChE,qEAAqE;QACrE,kBAAkB;QAClB,EAAE;QACF,iEAAiE;QACjE,+DAA+D;QAC/D,gEAAgE;QAChE,iEAAiE;QACjE,kEAAkE;QAClE,uDAAuD;QACvD,uEAAuE;QACvE,oEAAoE;QACpE,6EAA6E;QAC7E,oEAAoE;QACpE,mEAAmE;QACnE,mEAAmE;QACnE,qEAAqE;QACrE,+DAA+D;QAC/D,mEAAmE;QACnE,0EAA0E;QAC1E,MAAM,WAAW,GAAG,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACxG,MAAM,QAAQ,GAAG,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzC,MAAM,eAAe,CACnB,4EAA4E;gBAC1E,sEAAsE;gBACtE,4EAA4E;gBAC5E,0EAA0E;gBAC1E,gEAAgE;gBAChE,4CAA4C,CAC/C,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAA0B,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/F,+EAA+E;QAC/E,qEAAqE;QACrE,uEAAuE;QACvE,uEAAuE;QACvE,kEAAkE;QAClE,oEAAoE;QACpE,wBAAwB;QACxB,MAAM,IAAI,GAAG,WAAW,CAA0B,IAAI,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1C,6EAA6E;QAC7E,4EAA4E;QAC5E,uEAAuE;QACvE,6EAA6E;QAC7E,4EAA4E;QAC5E,iEAAiE;QACjE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACxC,CAAC;QACH,CAAC;QACD,oEAAoE;QACpE,wEAAwE;QACxE,uEAAuE;QACvE,yCAAyC;QACzC,iBAAiB,CAA0B,IAAI,CAAC,CAAC;QACjD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;IAC/D,CAAC;IAEe,YAAY;QAC1B,OAAO;YACL,oEAAoE;YACpE,sBAAsB,EAAE,KAAK;YAC7B,eAAe,EAAE,KAAK;YACtB,0DAA0D;YAC1D,0DAA0D;YAC1D,iEAAiE;YACjE,kEAAkE;YAClE,iDAAiD;YACjD,wDAAwD;YACxD,wBAAwB,EAAE,IAAI;YAC9B,SAAS,EAAE,KAAK;YAChB,uDAAuD;YACvD,gEAAgE;YAChE,mEAAmE;YACnE,iEAAiE;YACjE,iEAAiE;YACjE,YAAY,EAAE,KAAK;SACpB,CAAC;IACJ,CAAC;IAEe,QAAQ;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0EAA0E;IAE1D,KAAK,CAAC,uBAAuB,CAAC,WAAmB;QAC/D,MAAM,YAAY,CAAC,yBAAyB,CAAC,CAAC;IAChD,CAAC;IAEe,KAAK,CAAC,SAAS,CAAC,UAAkB,EAAE,QAAuB;QACzE,MAAM,YAAY,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAEe,KAAK,CAAC,WAAW,CAC/B,MAAc,EACd,QAAwB,EACxB,UAA6B;QAE7B,MAAM,YAAY,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAEe,KAAK,CAAC,sBAAsB,CAC1C,MAAc,EACd,QAAwB,EACxB,UAA6B,EAC7B,WAAuB,EACvB,iBAAkC,EAClC,gBAAyB,EACzB,gBAA4C;QAE5C,MAAM,YAAY,CAAC,wBAAwB,CAAC,CAAC;IAC/C,CAAC;IAEe,KAAK,CAAC,WAAW,CAAC,gBAAwB,EAAE,QAAuB;QACjF,MAAM,YAAY,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAEe,KAAK,CAAC,cAAc,CAAC,MAAc;QACjD,MAAM,YAAY,CAAC,gBAAgB,CAAC,CAAC;IACvC,CAAC;IAED,+BAA+B;IAExB,MAAM,CAAC,YAAY;QACxB,OAAO,gCAAa,CAAC;IACvB,CAAC;IAED,kCAAkC;IAE1B,YAAY;QAClB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,GAAG,IAAI,0BAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF;AAnUD,wCAmUC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,SAAS,WAAW,CAAI,IAAoC;IAC1D,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAI,GAAG,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,SAAS,iBAAiB,CAAI,IAAoC;IAChE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAsB,CAAC;IACrD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,8DAA8D;YAC9D,iEAAiE;YACjE,kEAAkE;YAClE,yBAAyB;YACzB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QACxC,CAAC;IACH,CAAC;IACD,OAAO,IAAsB,CAAC;AAChC,CAAC;AAED;;;;GAIG;AACU,QAAA,0BAA0B,GAAG,iBAAiB,CAAC;AAE5D,SAAS,UAAU,CAAI,GAA4B;IACjD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,aAAa,CAAC,IAAI,CAAC;YAAE,OAAO,IAAS,CAAC;QAC1C,OAAO,GAAmB,CAAC;IAC7B,CAAC;IACD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7C,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3C,GAAG,CAAC,GAAG,GAAG,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,GAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,0BAA0B,CAAC,GAAW;IAC7C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACzC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,UAAU,CAAC,IAAI,EAAE,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IAC5C,oEAAoE;IACpE,wDAAwD;IACxD,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,gEAAgE;QAChE,4CAA4C;QAC5C,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS;QACnC,sDAAsD;QACtD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC7D,IAAI,CAAC;YAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAS,wBAAwB,CAAC,GAAW;IAY3C,MAAM,KAAK,GAAY,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAwD,EAAE,CAAC;IACtE,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;IACrB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,MAAM,GAAG,GAAG,GAAsB,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE7D,MAAM,UAAU,GAAG,CAAC,CAAQ,EAAQ,EAAE;QACpC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,CAAS,EAAQ,EAAE;QAC/B,MAAM,CAAC,GAAG,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,EAAE,UAAU;YAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACb,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAElB,8CAA8C;QAC9C,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACV,SAAS;QACX,CAAC;QACD,yEAAyE;QACzE,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACb,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBACnB,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;wBACvB,CAAC,IAAI,CAAC,CAAC;wBACP,SAAS;oBACX,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,CAAC,EAAE,CAAC;YACN,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACV,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,EAAE,CAAC,CAAC;YACT,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,EAAE,CAAC,CAAC;YACT,oEAAoE;YACpE,OAAO,KAAK,CAAC,MAAM,IAAK,GAAG,EAAY,CAAC,KAAK,GAAG,KAAK;gBAAE,KAAK,CAAC,GAAG,EAAE,CAAC;YACnE,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,CAAC,GAAG,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,EAAE,UAAU,IAAI,KAAK,KAAK,CAAC,CAAC,KAAK;gBAAE,UAAU,CAAC,CAAC,CAAC,CAAC;;gBACjD,IAAI,CAAC,EAAE,CAAC,CAAC;YACd,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,gCAAgC;QAChC,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAAE,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,GAAG,EAAE,CAAC;YAEhB,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvB,IAAI,CAAC,IAAI,CAAC,CAAC;gBACX,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;gBAClE,CAAC,GAAG,CAAC,CAAC;gBACN,SAAS;YACX,CAAC;YACD,IAAI,KAAK,KAAK,MAAM,IAAI,CAAC,EAAE,UAAU,IAAI,KAAK,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;gBAC3D,UAAU,CAAC,CAAC,CAAC,CAAC;gBACd,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC;gBACrB,CAAC,GAAG,CAAC,CAAC;gBACN,SAAS;YACX,CAAC;YACD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBACtB,sBAAsB;gBACtB,IAAI,CAAC,GAAG,CAAC,CAAC;gBACV,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAC;gBACvC,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC7C,MAAM,UAAU,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC3D,IAAI,EAAE,KAAK,IAAI,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,KAAK,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;oBACzE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;wBAAE,CAAC,EAAE,CAAC;oBACvC,MAAM,IAAI,GAAG,0BAA0B,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;oBACvD,IAAI,IAAI,EAAE,CAAC;wBACT,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;wBAC3D,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;4BAC3C,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC1F,CAAC;oBACH,CAAC;oBACD,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACV,SAAS;gBACX,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,CAAC;gBACX,CAAC,GAAG,CAAC,CAAC;gBACN,SAAS;YACX,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,CAAC;YACX,CAAC,GAAG,CAAC,CAAC;YACN,SAAS;QACX,CAAC;QAED,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,CAAC,EAAE,CAAC;IACN,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IACnC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,GAAG,GAAG,GAAG,CAAC;IACd,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/E,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,IAAY;IACzC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC/B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC1D,IAAI,IAAI,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,SAAS,0BAA0B,CACjC,GAAW,EACX,KAAa,EACb,KAAa;IAEb,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG,KAAK,CAAC;IACd,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;IACrB,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,SAAS,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,EAAE,CAAC;QACvC,mBAAmB;QACnB,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG;YAAE,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,yCAAyC;QACnE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,CAAC,CAAC;QAClB,gEAAgE;QAChE,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACtC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACV,SAAS;QACX,CAAC;QACD,+DAA+D;QAC/D,IAAI,CAAC,KAAK,GAAG;YAAE,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG;YAAE,UAAU,EAAE,CAAC;QAC5B,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;IACrC,CAAC;AACH,CAAC;AAED;;GAEG;AACU,QAAA,iCAAiC,GAAG,wBAAwB,CAAC;AAE1E;;;;;;;;;;;;GAYG;AACH,SAAS,oBAAoB,CAAC,GAAW,EAAE,MAA0B;IACnE,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YACd,kEAAkE;YAClE,8CAA8C;YAC9C,IAAI,QAAQ,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACnC,GAAG,IAAI,IAAI,CAAC;gBACZ,CAAC,EAAE,CAAC;gBACJ,SAAS;YACX,CAAC;YACD,QAAQ,GAAG,CAAC,QAAQ,CAAC;YACrB,GAAG,IAAI,CAAC,CAAC;QACX,CAAC;aAAM,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,IAAI,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACzB,MAAM,aAAa,CAAC,gEAAgE,GAAG,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAClH,CAAC;YACD,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACrC,GAAG,EAAE,CAAC;QACR,CAAC;aAAM,CAAC;YACN,GAAG,IAAI,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IACD,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,aAAa,CAAC,mCAAmC,MAAM,CAAC,MAAM,mCAAmC,GAAG,GAAG,CAAC,CAAC;IACjH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAU;IAClC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACjD,IAAI,OAAO,CAAC,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACxD,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC1E,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/C,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;QACtB,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAAE,OAAO,MAAM,CAAC;QAC7C,qFAAqF;QACrF,OAAO,IAAI,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC;IAChC,CAAC;IACD,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;AAC9C,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAAC,CAAa;IACxC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,aAAa,CAAC,CAAU;IAC/B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC;AAC1F,CAAC;AAED;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,OAA4C;IACtE,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IACjC,iEAAiE;IACjE,mEAAmE;IACnE,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,SAAS,YAAY,WAAW,EAAE,CAAC;QAC3E,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAMD;;;;;;;;;;;;;;;GAeG;AACH,SAAS,WAAW,CAAC,QAA6C,EAAE,GAAY;IAC9E,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,IAAA,4BAAgB,EAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAExF,MAAM,QAAQ,GAAG,QAAQ,EAAE,QAAQ,IAAI,GAAG,CAAC,cAAc,CAAC;IAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,oBAAoB,CAAC,qEAAqE,CAAC,CAAC;IACpG,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,EAAE,YAAY,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAExE,OAAO;QACL,GAAG;QACH,QAAQ;QACR,YAAY;QACZ,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,IAAI,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC;QAC9F,cAAc,EAAE,QAAQ,EAAE,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC;QACzF,cAAc,EAAE,QAAQ,EAAE,cAAc,IAAI,iBAAiB;QAC7D,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC;KACnE,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAY;IACvC,MAAM,IAAI,GAAG,GAAG,CAAC,6BAA6B,CAAC;IAC/C,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,IAAI,IAAI,KAAK,YAAY;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IACzD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,GAAG,CAAC,2BAA2B,CAAC;QAC7C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,aAAa,CAAC,iFAAiF,CAAC,CAAC;QACzG,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAChC,CAAC;IACD,8DAA8D;IAC9D,iEAAiE;IACjE,sEAAsE;IACtE,kEAAkE;IAClE,6CAA6C;IAC7C,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IACvD,MAAM,aAAa,CAAC,oFAAoF,IAAI,IAAI,CAAC,CAAC;AACpH,CAAC;AAED,SAAS,MAAM,CAAC,CAAqB;IACnC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAClD,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1C,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,OAAO,CAAC,CAAqB;IACpC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAClD,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,IAAI,CAAC,KAAK,GAAG,CAAC;AACjD,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAc;IAC1C,OAAO,aAAa,CAAC,4BAA4B,MAAM,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,aAAa,CAAC,MAAc;IACnC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,4BAA4B,MAAM,EAAE,CAAkB,CAAC;IAC7E,GAAG,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACrC,GAAG,CAAC,IAAI,GAAG,eAAe,CAAC;IAC3B,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,8BAA8B,MAAM,EAAE,CAAkB,CAAC;IAC/E,GAAG,CAAC,IAAI,GAAG,2BAA2B,CAAC;IACvC,GAAG,CAAC,IAAI,GAAG,eAAe,CAAC;IAC3B,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,YAAY,CAAC,MAAc;IAClC,OAAO,IAAI,KAAK,CACd,oBAAoB,MAAM,+EAA+E,CAC1G,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MongoSqlQuery.d.ts","sourceRoot":"","sources":["../src/MongoSqlQuery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AA4DxE,8EAA8E;AAC9E,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,UAAU,mBAAmB;IAC3B,UAAU,IAAI,MAAM,EAAE,EAAE,CAAC;CAC1B;AAED;;;;;GAKG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C;;;;;;;OAOG;IACa,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI/C,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAIlD;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACa,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,MAAM;IAkBnG;;;;;OAKG;IACa,aAAa,IAAI,MAAM;IAQvC;;;OAGG;IACa,iBAAiB,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI;IAYxG;;;;;OAKG;IACa,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIpD;;;;OAIG;IACa,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAInD;;;;OAIG;IACa,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIjD;;;;OAIG;IACI,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAIvD;;;;;;;;;OASG;IACa,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIhD;;;OAGG;IACa,eAAe,IAAI,MAAM;IAIzC;;;;;;;;;OASG;IACa,gBAAgB,IAAI,MAAM;IAI1C;;;;;;;;;;;;OAYG;IACI,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAgBnE;;;;;;OAMG;IACa,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAInE;;;;;OAKG;IACa,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIxE,OAAO,CAAC,kBAAkB;IAI1B;;;;;OAKG;IACa,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIxD;;;;;;;OAOG;IACa,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAWjF;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACa,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAcjF;;;;;;;;;;;OAWG;IACa,SAAS,CAAC,aAAa,EAAE,mBAAmB,GAAG,MAAM;IAarE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACa,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,UAAU;IAItD;;;;;;;;;;;;OAYG;IACa,YAAY,IAAI,UAAU,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"MongoSqlQuery.d.ts","sourceRoot":"","sources":["../src/MongoSqlQuery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AA4DxE,8EAA8E;AAC9E,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,UAAU,mBAAmB;IAC3B,UAAU,IAAI,MAAM,EAAE,EAAE,CAAC;CAC1B;AAED;;;;;GAKG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C;;;;;;;OAOG;IACa,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI/C,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAIlD;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACa,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,UAAQ,GAAG,MAAM;IAkBnG;;;;;OAKG;IACa,aAAa,IAAI,MAAM;IAQvC;;;OAGG;IACa,iBAAiB,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI;IAYxG;;;;;OAKG;IACa,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIpD;;;;OAIG;IACa,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAInD;;;;OAIG;IACa,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIjD;;;;OAIG;IACI,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAIvD;;;;;;;;;OASG;IACa,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIhD;;;OAGG;IACa,eAAe,IAAI,MAAM;IAIzC;;;;;;;;;OASG;IACa,gBAAgB,IAAI,MAAM;IAI1C;;;;;;;;;;;;OAYG;IACI,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAgBnE;;;;;;OAMG;IACa,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAInE;;;;;OAKG;IACa,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIxE,OAAO,CAAC,kBAAkB;IAI1B;;;;;OAKG;IACa,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAIxD;;;;;;;OAOG;IACa,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAWjF;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACa,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAcjF;;;;;;;;;;;OAWG;IACa,SAAS,CAAC,aAAa,EAAE,mBAAmB,GAAG,MAAM;IAarE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACa,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,UAAU;IAItD;;;;;;;;;;;;OAYG;IACa,YAAY,IAAI,UAAU,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;CAuDtE;AAED;;;;;;GAMG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC5C;;;;;;;;;;;;;;OAcG;IACa,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;CAiBnG"}
|
package/dist/MongoSqlQuery.js
CHANGED
|
@@ -502,6 +502,20 @@ class MongoSqlQuery extends schema_compiler_1.BaseQuery {
|
|
|
502
502
|
delete templates.statements.generated_time_series_select;
|
|
503
503
|
delete templates.statements.generated_time_series_with_cte_range_source;
|
|
504
504
|
}
|
|
505
|
+
// mongosql has no `ILIKE` operator (`Error 2001: Unrecognized token
|
|
506
|
+
// ILIKE`). Cube's BaseFilter path already rewrites case-insensitive LIKE
|
|
507
|
+
// via the `likeIgnoreCase()` override below, but the tesseract template
|
|
508
|
+
// SQL path (used for member-expression / view filters) emits `ILIKE`
|
|
509
|
+
// directly through these templates, bypassing it. Rewrite to the same
|
|
510
|
+
// `LOWER(expr) LIKE LOWER(pattern)` form mongosql accepts.
|
|
511
|
+
const caseInsensitiveLike = 'LOWER({{ expr }}) {% if negated %}NOT {% endif %}LIKE LOWER({{ pattern }})';
|
|
512
|
+
const withTesseract = templates;
|
|
513
|
+
if (withTesseract.expressions?.ilike) {
|
|
514
|
+
withTesseract.expressions.ilike = caseInsensitiveLike;
|
|
515
|
+
}
|
|
516
|
+
if (withTesseract.tesseract?.ilike) {
|
|
517
|
+
withTesseract.tesseract.ilike = caseInsensitiveLike;
|
|
518
|
+
}
|
|
505
519
|
return templates;
|
|
506
520
|
}
|
|
507
521
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MongoSqlQuery.js","sourceRoot":"","sources":["../src/MongoSqlQuery.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MongoSqlQuery.js","sourceRoot":"","sources":["../src/MongoSqlQuery.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effectuate/cubejs-mongosql-driver",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "Cube.js native data source driver for MongoDB via the MongoSQL translator (Rust + napi-rs). Replacement for the EOL'd BI Connector path.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -85,12 +85,12 @@
|
|
|
85
85
|
"@cubejs-backend/schema-compiler": "^1.6.0"
|
|
86
86
|
},
|
|
87
87
|
"optionalDependencies": {
|
|
88
|
-
"@effectuate/cubejs-mongosql-driver-linux-x64-gnu": "1.0.
|
|
89
|
-
"@effectuate/cubejs-mongosql-driver-linux-arm64-gnu": "1.0.
|
|
90
|
-
"@effectuate/cubejs-mongosql-driver-linux-x64-musl": "1.0.
|
|
91
|
-
"@effectuate/cubejs-mongosql-driver-linux-arm64-musl": "1.0.
|
|
92
|
-
"@effectuate/cubejs-mongosql-driver-darwin-x64": "1.0.
|
|
93
|
-
"@effectuate/cubejs-mongosql-driver-darwin-arm64": "1.0.
|
|
88
|
+
"@effectuate/cubejs-mongosql-driver-linux-x64-gnu": "1.0.1",
|
|
89
|
+
"@effectuate/cubejs-mongosql-driver-linux-arm64-gnu": "1.0.1",
|
|
90
|
+
"@effectuate/cubejs-mongosql-driver-linux-x64-musl": "1.0.1",
|
|
91
|
+
"@effectuate/cubejs-mongosql-driver-linux-arm64-musl": "1.0.1",
|
|
92
|
+
"@effectuate/cubejs-mongosql-driver-darwin-x64": "1.0.1",
|
|
93
|
+
"@effectuate/cubejs-mongosql-driver-darwin-arm64": "1.0.1"
|
|
94
94
|
},
|
|
95
95
|
"devDependencies": {
|
|
96
96
|
"@biomejs/biome": "^2.4.15",
|
|
@@ -105,4 +105,4 @@
|
|
|
105
105
|
"vitest": "^2.1.8"
|
|
106
106
|
},
|
|
107
107
|
"packageManager": "pnpm@9.15.4"
|
|
108
|
-
}
|
|
108
|
+
}
|
package/index.d.ts
DELETED
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
/* tslint:disable */
|
|
2
|
-
/* eslint-disable */
|
|
3
|
-
|
|
4
|
-
/* auto-generated by NAPI-RS */
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Schema source — Collection mode, File mode, or Atlas SQL mode.
|
|
8
|
-
*
|
|
9
|
-
* Wire shape across napi-rs is a tagged object. `kind` is one of
|
|
10
|
-
* `"collection"`, `"file"`, or `"atlas-sql"`; `path` is required for
|
|
11
|
-
* `"file"`. See `schema.rs` module docs for the per-mode loading
|
|
12
|
-
* strategy.
|
|
13
|
-
*/
|
|
14
|
-
export interface SchemaSource {
|
|
15
|
-
/** Discriminant: `"collection"`, `"file"`, or `"atlas-sql"`. */
|
|
16
|
-
kind: string
|
|
17
|
-
/** Path to schema file (file mode only). */
|
|
18
|
-
path?: string
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Client configuration object passed across the napi-rs boundary.
|
|
22
|
-
*
|
|
23
|
-
* `Debug` is hand-rolled to **redact the URI** because it may contain
|
|
24
|
-
* credentials (SPEC NFR-4).
|
|
25
|
-
*/
|
|
26
|
-
export interface ClientConfig {
|
|
27
|
-
/** MongoDB connection URI. **Sensitive: contains credentials.** */
|
|
28
|
-
uri: string
|
|
29
|
-
/** Database name to query. */
|
|
30
|
-
database: string
|
|
31
|
-
/** Schema source. None defaults to Collection (handled by `with_defaults_applied`). */
|
|
32
|
-
schemaSource?: SchemaSource
|
|
33
|
-
/** Refresh interval in seconds. None defaults to 300. */
|
|
34
|
-
schemaRefreshSec?: number
|
|
35
|
-
/** If true, testConnection succeeds even on initial schema load failure. None defaults to false. */
|
|
36
|
-
schemaFailOpen?: boolean
|
|
37
|
-
/** Per-query timeout in milliseconds. None defaults to 60000. */
|
|
38
|
-
queryTimeoutMs?: number
|
|
39
|
-
/** Max rows returned per query (buffered). None defaults to 100000. */
|
|
40
|
-
maxRows?: number
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Public napi-rs entry point. Cube's TypeScript driver instantiates this once
|
|
44
|
-
* per Cube driver instance.
|
|
45
|
-
*/
|
|
46
|
-
export declare class MongoSqlClient {
|
|
47
|
-
/**
|
|
48
|
-
* Construct a new client. No I/O is performed.
|
|
49
|
-
*
|
|
50
|
-
* Validation is deferred to [`Self::test_connection`] so the constructor
|
|
51
|
-
* stays infallible — napi-rs 2.16's `#[napi(constructor)]` requires
|
|
52
|
-
* `Self` directly, not `Result<Self>`. A subsequent `query()` before
|
|
53
|
-
* `test_connection()` returns a clear `MONGOSQL_CONFIG_INVALID` error
|
|
54
|
-
* rather than panicking.
|
|
55
|
-
*/
|
|
56
|
-
constructor(config: ClientConfig)
|
|
57
|
-
/**
|
|
58
|
-
* Verify cluster connectivity and load initial schema, then spawn the
|
|
59
|
-
* background refresh task. Sequence:
|
|
60
|
-
*
|
|
61
|
-
* 1. `config.validate()` — synchronous shape checks (URI scheme, db name, ...).
|
|
62
|
-
* 2. Build the `mongodb::Client` (lazily; cached for subsequent calls).
|
|
63
|
-
* 3. `db("admin").run_command({ping: 1})` with a bounded timeout.
|
|
64
|
-
* 4. Initial schema load (collection or file mode).
|
|
65
|
-
* 5. Swap into the cache; build the column map.
|
|
66
|
-
* 6. Spawn the refresh task.
|
|
67
|
-
*
|
|
68
|
-
* Each step's failure preserves the SPEC §6 error code. Optional
|
|
69
|
-
* `signal` cancels the in-flight ping/load if the caller (or a
|
|
70
|
-
* concurrent `close()`) fires it; on cancellation we surface
|
|
71
|
-
* [`Error::Cancelled`] with site `"test_connection"`.
|
|
72
|
-
*/
|
|
73
|
-
testConnection(signal?: AbortHandle | undefined | null): Promise<void>
|
|
74
|
-
/**
|
|
75
|
-
* Translate `sql` and execute the resulting MQL pipeline. Returns rows
|
|
76
|
-
* as a JSON array.
|
|
77
|
-
*
|
|
78
|
-
* Database-name handling: for file-mode catalogs, `default_db` passed to
|
|
79
|
-
* `translate::translate` is [`FILE_MODE_DB_PLACEHOLDER`]; the resulting
|
|
80
|
-
* `Translation::target_db` is rewritten to `config.database` before the
|
|
81
|
-
* executor runs the aggregate, so the wire-level command targets the
|
|
82
|
-
* real database the user configured.
|
|
83
|
-
*
|
|
84
|
-
* If `signal` is provided, abort propagates to the in-flight cursor:
|
|
85
|
-
* the racing `tokio::select!` short-circuits with [`Error::Cancelled`].
|
|
86
|
-
* `close()` also cancels via the parent [`Self::close_token`].
|
|
87
|
-
* `biased` polling on the cancel branch ensures cancellation has
|
|
88
|
-
* priority if the abort fires before/while the executor schedules.
|
|
89
|
-
*/
|
|
90
|
-
query(sql: string, signal?: AbortHandle | undefined | null): Promise<any>
|
|
91
|
-
/**
|
|
92
|
-
* Returns Cube's expected `tablesSchema` payload built from the cached
|
|
93
|
-
* schema. Shape: `{ <db>: { <coll>: [{name, type}, ...] } }`.
|
|
94
|
-
*
|
|
95
|
-
* Only the configured database is exposed (one driver instance = one
|
|
96
|
-
* db). For file-mode catalogs the internal placeholder key is rewritten
|
|
97
|
-
* to the configured database name so consumers see a single coherent
|
|
98
|
-
* database label.
|
|
99
|
-
*
|
|
100
|
-
* Optional `signal` cancels the lock acquisition / map clone if a
|
|
101
|
-
* large `__sql_schemas` is being copied. In practice the body is
|
|
102
|
-
* memory-only, but the guard keeps the API symmetrical with `query()`
|
|
103
|
-
* and lets `close()` short-circuit pending callers.
|
|
104
|
-
*/
|
|
105
|
-
tablesSchema(signal?: AbortHandle | undefined | null): Promise<any>
|
|
106
|
-
/**
|
|
107
|
-
* Closes underlying connections and stops background tasks.
|
|
108
|
-
*
|
|
109
|
-
* Idempotent: calling `close()` after a previous `close()` (or before
|
|
110
|
-
* `test_connection()` ever spawned a refresh task) is a no-op rather
|
|
111
|
-
* than an error. The mongodb client itself has no explicit close on
|
|
112
|
-
* v3.x — its connection pool drops when the last `Arc<Client>` goes out
|
|
113
|
-
* of scope.
|
|
114
|
-
*
|
|
115
|
-
* **SIGTERM-during-pre-agg fix.** Before this method existed, `close()`
|
|
116
|
-
* only stopped the schema-refresh task; in-flight queries kept draining
|
|
117
|
-
* their cursors until the server-side `maxTimeMS` fired (default 60s,
|
|
118
|
-
* tunable via `CUBEJS_MONGOSQL_QUERY_TIMEOUT_MS`). That leaks
|
|
119
|
-
* connections and wastes Mongo work when the caller has already
|
|
120
|
-
* signalled "stop everything". We now:
|
|
121
|
-
*
|
|
122
|
-
* 1. Cancel the parent token, which fans out to every per-call child
|
|
123
|
-
* token (created in `query()` / `test_connection()` /
|
|
124
|
-
* `tables_schema()`). Each in-flight async fn breaks out of its
|
|
125
|
-
* `tokio::select!` with `Error::Cancelled`.
|
|
126
|
-
* 2. Wait up to [`CLOSE_DRAIN_TIMEOUT`] for the in-flight counter to
|
|
127
|
-
* reach zero — the upper bound on caller-visible delay.
|
|
128
|
-
* 3. Stop the schema refresh task.
|
|
129
|
-
*
|
|
130
|
-
* The 5s drain budget is conservative; in practice in-flight cursors
|
|
131
|
-
* abandon their `try_next()` within microseconds of the cancel and
|
|
132
|
-
* the counter hits zero in O(milliseconds). We keep the bounded wait
|
|
133
|
-
* as defence-in-depth for slow TCP closes.
|
|
134
|
-
*/
|
|
135
|
-
close(): Promise<void>
|
|
136
|
-
}
|
|
137
|
-
/**
|
|
138
|
-
* Public napi-rs handle exposed to JavaScript.
|
|
139
|
-
*
|
|
140
|
-
* JS lifecycle:
|
|
141
|
-
* 1. `const handle = new AbortHandle();`
|
|
142
|
-
* 2. Wire to a `AbortSignal`: `signal.addEventListener('abort', () => handle.abort());`
|
|
143
|
-
* 3. Pass to a cancellable Rust async method.
|
|
144
|
-
*
|
|
145
|
-
* The handle is a thin newtype around `Arc<CancelToken>` so it can be
|
|
146
|
-
* cloned cheaply across the napi boundary if a future API needs to share
|
|
147
|
-
* one signal across several calls.
|
|
148
|
-
*/
|
|
149
|
-
export declare class AbortHandle {
|
|
150
|
-
/** Construct a fresh, un-aborted handle. */
|
|
151
|
-
constructor()
|
|
152
|
-
/**
|
|
153
|
-
* Mark this handle aborted. Safe to call from any thread; idempotent.
|
|
154
|
-
* JS-callable; the conventional use is from an `AbortSignal`'s
|
|
155
|
-
* `'abort'` event listener.
|
|
156
|
-
*/
|
|
157
|
-
abort(): void
|
|
158
|
-
/** Synchronous probe — true once `abort()` has been called. */
|
|
159
|
-
aborted(): boolean
|
|
160
|
-
}
|
package/index.js
DELETED
|
@@ -1,316 +0,0 @@
|
|
|
1
|
-
/* tslint:disable */
|
|
2
|
-
/* eslint-disable */
|
|
3
|
-
/* prettier-ignore */
|
|
4
|
-
|
|
5
|
-
/* auto-generated by NAPI-RS */
|
|
6
|
-
|
|
7
|
-
const { existsSync, readFileSync } = require('fs')
|
|
8
|
-
const { join } = require('path')
|
|
9
|
-
|
|
10
|
-
const { platform, arch } = process
|
|
11
|
-
|
|
12
|
-
let nativeBinding = null
|
|
13
|
-
let localFileExisted = false
|
|
14
|
-
let loadError = null
|
|
15
|
-
|
|
16
|
-
function isMusl() {
|
|
17
|
-
// For Node 10
|
|
18
|
-
if (!process.report || typeof process.report.getReport !== 'function') {
|
|
19
|
-
try {
|
|
20
|
-
const lddPath = require('child_process').execSync('which ldd').toString().trim()
|
|
21
|
-
return readFileSync(lddPath, 'utf8').includes('musl')
|
|
22
|
-
} catch (e) {
|
|
23
|
-
return true
|
|
24
|
-
}
|
|
25
|
-
} else {
|
|
26
|
-
const { glibcVersionRuntime } = process.report.getReport().header
|
|
27
|
-
return !glibcVersionRuntime
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
switch (platform) {
|
|
32
|
-
case 'android':
|
|
33
|
-
switch (arch) {
|
|
34
|
-
case 'arm64':
|
|
35
|
-
localFileExisted = existsSync(join(__dirname, 'cubejs-mongosql-driver-native.android-arm64.node'))
|
|
36
|
-
try {
|
|
37
|
-
if (localFileExisted) {
|
|
38
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.android-arm64.node')
|
|
39
|
-
} else {
|
|
40
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-android-arm64')
|
|
41
|
-
}
|
|
42
|
-
} catch (e) {
|
|
43
|
-
loadError = e
|
|
44
|
-
}
|
|
45
|
-
break
|
|
46
|
-
case 'arm':
|
|
47
|
-
localFileExisted = existsSync(join(__dirname, 'cubejs-mongosql-driver-native.android-arm-eabi.node'))
|
|
48
|
-
try {
|
|
49
|
-
if (localFileExisted) {
|
|
50
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.android-arm-eabi.node')
|
|
51
|
-
} else {
|
|
52
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-android-arm-eabi')
|
|
53
|
-
}
|
|
54
|
-
} catch (e) {
|
|
55
|
-
loadError = e
|
|
56
|
-
}
|
|
57
|
-
break
|
|
58
|
-
default:
|
|
59
|
-
throw new Error(`Unsupported architecture on Android ${arch}`)
|
|
60
|
-
}
|
|
61
|
-
break
|
|
62
|
-
case 'win32':
|
|
63
|
-
switch (arch) {
|
|
64
|
-
case 'x64':
|
|
65
|
-
localFileExisted = existsSync(
|
|
66
|
-
join(__dirname, 'cubejs-mongosql-driver-native.win32-x64-msvc.node')
|
|
67
|
-
)
|
|
68
|
-
try {
|
|
69
|
-
if (localFileExisted) {
|
|
70
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.win32-x64-msvc.node')
|
|
71
|
-
} else {
|
|
72
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-win32-x64-msvc')
|
|
73
|
-
}
|
|
74
|
-
} catch (e) {
|
|
75
|
-
loadError = e
|
|
76
|
-
}
|
|
77
|
-
break
|
|
78
|
-
case 'ia32':
|
|
79
|
-
localFileExisted = existsSync(
|
|
80
|
-
join(__dirname, 'cubejs-mongosql-driver-native.win32-ia32-msvc.node')
|
|
81
|
-
)
|
|
82
|
-
try {
|
|
83
|
-
if (localFileExisted) {
|
|
84
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.win32-ia32-msvc.node')
|
|
85
|
-
} else {
|
|
86
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-win32-ia32-msvc')
|
|
87
|
-
}
|
|
88
|
-
} catch (e) {
|
|
89
|
-
loadError = e
|
|
90
|
-
}
|
|
91
|
-
break
|
|
92
|
-
case 'arm64':
|
|
93
|
-
localFileExisted = existsSync(
|
|
94
|
-
join(__dirname, 'cubejs-mongosql-driver-native.win32-arm64-msvc.node')
|
|
95
|
-
)
|
|
96
|
-
try {
|
|
97
|
-
if (localFileExisted) {
|
|
98
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.win32-arm64-msvc.node')
|
|
99
|
-
} else {
|
|
100
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-win32-arm64-msvc')
|
|
101
|
-
}
|
|
102
|
-
} catch (e) {
|
|
103
|
-
loadError = e
|
|
104
|
-
}
|
|
105
|
-
break
|
|
106
|
-
default:
|
|
107
|
-
throw new Error(`Unsupported architecture on Windows: ${arch}`)
|
|
108
|
-
}
|
|
109
|
-
break
|
|
110
|
-
case 'darwin':
|
|
111
|
-
localFileExisted = existsSync(join(__dirname, 'cubejs-mongosql-driver-native.darwin-universal.node'))
|
|
112
|
-
try {
|
|
113
|
-
if (localFileExisted) {
|
|
114
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.darwin-universal.node')
|
|
115
|
-
} else {
|
|
116
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-darwin-universal')
|
|
117
|
-
}
|
|
118
|
-
break
|
|
119
|
-
} catch {}
|
|
120
|
-
switch (arch) {
|
|
121
|
-
case 'x64':
|
|
122
|
-
localFileExisted = existsSync(join(__dirname, 'cubejs-mongosql-driver-native.darwin-x64.node'))
|
|
123
|
-
try {
|
|
124
|
-
if (localFileExisted) {
|
|
125
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.darwin-x64.node')
|
|
126
|
-
} else {
|
|
127
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-darwin-x64')
|
|
128
|
-
}
|
|
129
|
-
} catch (e) {
|
|
130
|
-
loadError = e
|
|
131
|
-
}
|
|
132
|
-
break
|
|
133
|
-
case 'arm64':
|
|
134
|
-
localFileExisted = existsSync(
|
|
135
|
-
join(__dirname, 'cubejs-mongosql-driver-native.darwin-arm64.node')
|
|
136
|
-
)
|
|
137
|
-
try {
|
|
138
|
-
if (localFileExisted) {
|
|
139
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.darwin-arm64.node')
|
|
140
|
-
} else {
|
|
141
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-darwin-arm64')
|
|
142
|
-
}
|
|
143
|
-
} catch (e) {
|
|
144
|
-
loadError = e
|
|
145
|
-
}
|
|
146
|
-
break
|
|
147
|
-
default:
|
|
148
|
-
throw new Error(`Unsupported architecture on macOS: ${arch}`)
|
|
149
|
-
}
|
|
150
|
-
break
|
|
151
|
-
case 'freebsd':
|
|
152
|
-
if (arch !== 'x64') {
|
|
153
|
-
throw new Error(`Unsupported architecture on FreeBSD: ${arch}`)
|
|
154
|
-
}
|
|
155
|
-
localFileExisted = existsSync(join(__dirname, 'cubejs-mongosql-driver-native.freebsd-x64.node'))
|
|
156
|
-
try {
|
|
157
|
-
if (localFileExisted) {
|
|
158
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.freebsd-x64.node')
|
|
159
|
-
} else {
|
|
160
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-freebsd-x64')
|
|
161
|
-
}
|
|
162
|
-
} catch (e) {
|
|
163
|
-
loadError = e
|
|
164
|
-
}
|
|
165
|
-
break
|
|
166
|
-
case 'linux':
|
|
167
|
-
switch (arch) {
|
|
168
|
-
case 'x64':
|
|
169
|
-
if (isMusl()) {
|
|
170
|
-
localFileExisted = existsSync(
|
|
171
|
-
join(__dirname, 'cubejs-mongosql-driver-native.linux-x64-musl.node')
|
|
172
|
-
)
|
|
173
|
-
try {
|
|
174
|
-
if (localFileExisted) {
|
|
175
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.linux-x64-musl.node')
|
|
176
|
-
} else {
|
|
177
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-linux-x64-musl')
|
|
178
|
-
}
|
|
179
|
-
} catch (e) {
|
|
180
|
-
loadError = e
|
|
181
|
-
}
|
|
182
|
-
} else {
|
|
183
|
-
localFileExisted = existsSync(
|
|
184
|
-
join(__dirname, 'cubejs-mongosql-driver-native.linux-x64-gnu.node')
|
|
185
|
-
)
|
|
186
|
-
try {
|
|
187
|
-
if (localFileExisted) {
|
|
188
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.linux-x64-gnu.node')
|
|
189
|
-
} else {
|
|
190
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-linux-x64-gnu')
|
|
191
|
-
}
|
|
192
|
-
} catch (e) {
|
|
193
|
-
loadError = e
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
break
|
|
197
|
-
case 'arm64':
|
|
198
|
-
if (isMusl()) {
|
|
199
|
-
localFileExisted = existsSync(
|
|
200
|
-
join(__dirname, 'cubejs-mongosql-driver-native.linux-arm64-musl.node')
|
|
201
|
-
)
|
|
202
|
-
try {
|
|
203
|
-
if (localFileExisted) {
|
|
204
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.linux-arm64-musl.node')
|
|
205
|
-
} else {
|
|
206
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-linux-arm64-musl')
|
|
207
|
-
}
|
|
208
|
-
} catch (e) {
|
|
209
|
-
loadError = e
|
|
210
|
-
}
|
|
211
|
-
} else {
|
|
212
|
-
localFileExisted = existsSync(
|
|
213
|
-
join(__dirname, 'cubejs-mongosql-driver-native.linux-arm64-gnu.node')
|
|
214
|
-
)
|
|
215
|
-
try {
|
|
216
|
-
if (localFileExisted) {
|
|
217
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.linux-arm64-gnu.node')
|
|
218
|
-
} else {
|
|
219
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-linux-arm64-gnu')
|
|
220
|
-
}
|
|
221
|
-
} catch (e) {
|
|
222
|
-
loadError = e
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
break
|
|
226
|
-
case 'arm':
|
|
227
|
-
if (isMusl()) {
|
|
228
|
-
localFileExisted = existsSync(
|
|
229
|
-
join(__dirname, 'cubejs-mongosql-driver-native.linux-arm-musleabihf.node')
|
|
230
|
-
)
|
|
231
|
-
try {
|
|
232
|
-
if (localFileExisted) {
|
|
233
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.linux-arm-musleabihf.node')
|
|
234
|
-
} else {
|
|
235
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-linux-arm-musleabihf')
|
|
236
|
-
}
|
|
237
|
-
} catch (e) {
|
|
238
|
-
loadError = e
|
|
239
|
-
}
|
|
240
|
-
} else {
|
|
241
|
-
localFileExisted = existsSync(
|
|
242
|
-
join(__dirname, 'cubejs-mongosql-driver-native.linux-arm-gnueabihf.node')
|
|
243
|
-
)
|
|
244
|
-
try {
|
|
245
|
-
if (localFileExisted) {
|
|
246
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.linux-arm-gnueabihf.node')
|
|
247
|
-
} else {
|
|
248
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-linux-arm-gnueabihf')
|
|
249
|
-
}
|
|
250
|
-
} catch (e) {
|
|
251
|
-
loadError = e
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
break
|
|
255
|
-
case 'riscv64':
|
|
256
|
-
if (isMusl()) {
|
|
257
|
-
localFileExisted = existsSync(
|
|
258
|
-
join(__dirname, 'cubejs-mongosql-driver-native.linux-riscv64-musl.node')
|
|
259
|
-
)
|
|
260
|
-
try {
|
|
261
|
-
if (localFileExisted) {
|
|
262
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.linux-riscv64-musl.node')
|
|
263
|
-
} else {
|
|
264
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-linux-riscv64-musl')
|
|
265
|
-
}
|
|
266
|
-
} catch (e) {
|
|
267
|
-
loadError = e
|
|
268
|
-
}
|
|
269
|
-
} else {
|
|
270
|
-
localFileExisted = existsSync(
|
|
271
|
-
join(__dirname, 'cubejs-mongosql-driver-native.linux-riscv64-gnu.node')
|
|
272
|
-
)
|
|
273
|
-
try {
|
|
274
|
-
if (localFileExisted) {
|
|
275
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.linux-riscv64-gnu.node')
|
|
276
|
-
} else {
|
|
277
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-linux-riscv64-gnu')
|
|
278
|
-
}
|
|
279
|
-
} catch (e) {
|
|
280
|
-
loadError = e
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
break
|
|
284
|
-
case 's390x':
|
|
285
|
-
localFileExisted = existsSync(
|
|
286
|
-
join(__dirname, 'cubejs-mongosql-driver-native.linux-s390x-gnu.node')
|
|
287
|
-
)
|
|
288
|
-
try {
|
|
289
|
-
if (localFileExisted) {
|
|
290
|
-
nativeBinding = require('./cubejs-mongosql-driver-native.linux-s390x-gnu.node')
|
|
291
|
-
} else {
|
|
292
|
-
nativeBinding = require('@effectuate/cubejs-mongosql-driver-linux-s390x-gnu')
|
|
293
|
-
}
|
|
294
|
-
} catch (e) {
|
|
295
|
-
loadError = e
|
|
296
|
-
}
|
|
297
|
-
break
|
|
298
|
-
default:
|
|
299
|
-
throw new Error(`Unsupported architecture on Linux: ${arch}`)
|
|
300
|
-
}
|
|
301
|
-
break
|
|
302
|
-
default:
|
|
303
|
-
throw new Error(`Unsupported OS: ${platform}, architecture: ${arch}`)
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
if (!nativeBinding) {
|
|
307
|
-
if (loadError) {
|
|
308
|
-
throw loadError
|
|
309
|
-
}
|
|
310
|
-
throw new Error(`Failed to load native binding`)
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
const { MongoSqlClient, AbortHandle } = nativeBinding
|
|
314
|
-
|
|
315
|
-
module.exports.MongoSqlClient = MongoSqlClient
|
|
316
|
-
module.exports.AbortHandle = AbortHandle
|