@uwdata/mosaic-inputs 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -81,40 +81,46 @@ var MosaicClient = class {
81
81
  }
82
82
  /**
83
83
  * Return an array of fields queried by this client.
84
+ * @returns {object[]|null} The fields to retrieve info for.
84
85
  */
85
86
  fields() {
86
87
  return null;
87
88
  }
88
89
  /**
89
90
  * Called by the coordinator to set the field info for this client.
91
+ * @param {*} info The field info result.
90
92
  * @returns {this}
91
93
  */
92
- fieldInfo() {
94
+ fieldInfo(info) {
93
95
  return this;
94
96
  }
95
97
  /**
96
98
  * Return a query specifying the data needed by this client.
99
+ * @param {*} [filter] The filtering criteria to apply in the query.
100
+ * @returns {*} The client query
97
101
  */
98
- query() {
102
+ query(filter) {
99
103
  return null;
100
104
  }
101
105
  /**
102
106
  * Called by the coordinator to inform the client that a query is pending.
107
+ * @returns {this}
103
108
  */
104
109
  queryPending() {
105
110
  return this;
106
111
  }
107
112
  /**
108
113
  * Called by the coordinator to return a query result.
109
- *
110
- * @param {*} data the query result
114
+ * @param {*} data The query result.
111
115
  * @returns {this}
112
116
  */
113
- queryResult() {
117
+ queryResult(data) {
114
118
  return this;
115
119
  }
116
120
  /**
117
121
  * Called by the coordinator to report a query execution error.
122
+ * @param {*} error
123
+ * @returns {this}
118
124
  */
119
125
  queryError(error) {
120
126
  console.error(error);
@@ -141,6 +147,8 @@ var MosaicClient = class {
141
147
  /**
142
148
  * Requests a client update.
143
149
  * For example to (re-)render an interface component.
150
+ *
151
+ * @returns {this | Promise<any>}
144
152
  */
145
153
  update() {
146
154
  return this;
@@ -150,9 +158,8 @@ var MosaicClient = class {
150
158
  // ../../node_modules/tslib/tslib.es6.mjs
151
159
  function __rest(s, e) {
152
160
  var t = {};
153
- for (var p in s)
154
- if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
155
- t[p] = s[p];
161
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
162
+ t[p] = s[p];
156
163
  if (s != null && typeof Object.getOwnPropertySymbols === "function")
157
164
  for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
158
165
  if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
@@ -189,35 +196,30 @@ function __awaiter(thisArg, _arguments, P, generator) {
189
196
  }
190
197
  function __values(o) {
191
198
  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
192
- if (m)
193
- return m.call(o);
194
- if (o && typeof o.length === "number")
195
- return {
196
- next: function() {
197
- if (o && i >= o.length)
198
- o = void 0;
199
- return { value: o && o[i++], done: !o };
200
- }
201
- };
199
+ if (m) return m.call(o);
200
+ if (o && typeof o.length === "number") return {
201
+ next: function() {
202
+ if (o && i >= o.length) o = void 0;
203
+ return { value: o && o[i++], done: !o };
204
+ }
205
+ };
202
206
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
203
207
  }
204
208
  function __await(v) {
205
209
  return this instanceof __await ? (this.v = v, this) : new __await(v);
206
210
  }
207
211
  function __asyncGenerator(thisArg, _arguments, generator) {
208
- if (!Symbol.asyncIterator)
209
- throw new TypeError("Symbol.asyncIterator is not defined.");
212
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
210
213
  var g = generator.apply(thisArg, _arguments || []), i, q = [];
211
214
  return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() {
212
215
  return this;
213
216
  }, i;
214
217
  function verb(n) {
215
- if (g[n])
216
- i[n] = function(v) {
217
- return new Promise(function(a, b) {
218
- q.push([n, v, a, b]) > 1 || resume(n, v);
219
- });
220
- };
218
+ if (g[n]) i[n] = function(v) {
219
+ return new Promise(function(a, b) {
220
+ q.push([n, v, a, b]) > 1 || resume(n, v);
221
+ });
222
+ };
221
223
  }
222
224
  function resume(n, v) {
223
225
  try {
@@ -236,8 +238,7 @@ function __asyncGenerator(thisArg, _arguments, generator) {
236
238
  resume("throw", value);
237
239
  }
238
240
  function settle(f, v) {
239
- if (f(v), q.shift(), q.length)
240
- resume(q[0][0], q[0][1]);
241
+ if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);
241
242
  }
242
243
  }
243
244
  function __asyncDelegator(o) {
@@ -254,8 +255,7 @@ function __asyncDelegator(o) {
254
255
  }
255
256
  }
256
257
  function __asyncValues(o) {
257
- if (!Symbol.asyncIterator)
258
- throw new TypeError("Symbol.asyncIterator is not defined.");
258
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
259
259
  var m = o[Symbol.asyncIterator], i;
260
260
  return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function() {
261
261
  return this;
@@ -274,7 +274,7 @@ function __asyncValues(o) {
274
274
  }
275
275
  }
276
276
 
277
- // ../core/node_modules/apache-arrow/util/buffer.mjs
277
+ // ../../node_modules/apache-arrow/util/buffer.mjs
278
278
  var buffer_exports = {};
279
279
  __export(buffer_exports, {
280
280
  compareArrayLike: () => compareArrayLike,
@@ -315,13 +315,13 @@ __export(buffer_exports, {
315
315
  toUint8ClampedArrayIterator: () => toUint8ClampedArrayIterator
316
316
  });
317
317
 
318
- // ../core/node_modules/apache-arrow/util/utf8.mjs
318
+ // ../../node_modules/apache-arrow/util/utf8.mjs
319
319
  var decoder = new TextDecoder("utf-8");
320
320
  var decodeUtf8 = (buffer) => decoder.decode(buffer);
321
321
  var encoder = new TextEncoder();
322
322
  var encodeUtf8 = (value) => encoder.encode(value);
323
323
 
324
- // ../core/node_modules/apache-arrow/util/compat.mjs
324
+ // ../../node_modules/apache-arrow/util/compat.mjs
325
325
  var isNumber = (x2) => typeof x2 === "number";
326
326
  var isBoolean = (x2) => typeof x2 === "boolean";
327
327
  var isFunction = (x2) => typeof x2 === "function";
@@ -364,7 +364,7 @@ var isFlatbuffersByteBuffer = (x2) => {
364
364
  return isObject(x2) && isFunction(x2["clear"]) && isFunction(x2["bytes"]) && isFunction(x2["position"]) && isFunction(x2["setPosition"]) && isFunction(x2["capacity"]) && isFunction(x2["getBufferIdentifier"]) && isFunction(x2["createLong"]);
365
365
  };
366
366
 
367
- // ../core/node_modules/apache-arrow/util/buffer.mjs
367
+ // ../../node_modules/apache-arrow/util/buffer.mjs
368
368
  var SharedArrayBuf = typeof SharedArrayBuffer !== "undefined" ? SharedArrayBuffer : ArrayBuffer;
369
369
  function collapseContiguousByteRanges(chunks) {
370
370
  const result = chunks[0] ? [chunks[0]] : [];
@@ -547,7 +547,7 @@ function compareArrayLike(a, b) {
547
547
  return true;
548
548
  }
549
549
 
550
- // ../core/node_modules/apache-arrow/io/adapters.mjs
550
+ // ../../node_modules/apache-arrow/io/adapters.mjs
551
551
  var adapters_default = {
552
552
  fromIterable(source) {
553
553
  return pump2(fromIterable(source));
@@ -791,7 +791,7 @@ function fromNodeStream(stream) {
791
791
  });
792
792
  }
793
793
 
794
- // ../core/node_modules/apache-arrow/fb/metadata-version.mjs
794
+ // ../../node_modules/apache-arrow/fb/metadata-version.mjs
795
795
  var MetadataVersion;
796
796
  (function(MetadataVersion2) {
797
797
  MetadataVersion2[MetadataVersion2["V1"] = 0] = "V1";
@@ -801,14 +801,14 @@ var MetadataVersion;
801
801
  MetadataVersion2[MetadataVersion2["V5"] = 4] = "V5";
802
802
  })(MetadataVersion || (MetadataVersion = {}));
803
803
 
804
- // ../core/node_modules/apache-arrow/fb/union-mode.mjs
804
+ // ../../node_modules/apache-arrow/fb/union-mode.mjs
805
805
  var UnionMode;
806
806
  (function(UnionMode2) {
807
807
  UnionMode2[UnionMode2["Sparse"] = 0] = "Sparse";
808
808
  UnionMode2[UnionMode2["Dense"] = 1] = "Dense";
809
809
  })(UnionMode || (UnionMode = {}));
810
810
 
811
- // ../core/node_modules/apache-arrow/fb/precision.mjs
811
+ // ../../node_modules/apache-arrow/fb/precision.mjs
812
812
  var Precision;
813
813
  (function(Precision2) {
814
814
  Precision2[Precision2["HALF"] = 0] = "HALF";
@@ -816,14 +816,14 @@ var Precision;
816
816
  Precision2[Precision2["DOUBLE"] = 2] = "DOUBLE";
817
817
  })(Precision || (Precision = {}));
818
818
 
819
- // ../core/node_modules/apache-arrow/fb/date-unit.mjs
819
+ // ../../node_modules/apache-arrow/fb/date-unit.mjs
820
820
  var DateUnit;
821
821
  (function(DateUnit2) {
822
822
  DateUnit2[DateUnit2["DAY"] = 0] = "DAY";
823
823
  DateUnit2[DateUnit2["MILLISECOND"] = 1] = "MILLISECOND";
824
824
  })(DateUnit || (DateUnit = {}));
825
825
 
826
- // ../core/node_modules/apache-arrow/fb/time-unit.mjs
826
+ // ../../node_modules/apache-arrow/fb/time-unit.mjs
827
827
  var TimeUnit;
828
828
  (function(TimeUnit2) {
829
829
  TimeUnit2[TimeUnit2["SECOND"] = 0] = "SECOND";
@@ -832,7 +832,7 @@ var TimeUnit;
832
832
  TimeUnit2[TimeUnit2["NANOSECOND"] = 3] = "NANOSECOND";
833
833
  })(TimeUnit || (TimeUnit = {}));
834
834
 
835
- // ../core/node_modules/apache-arrow/fb/interval-unit.mjs
835
+ // ../../node_modules/apache-arrow/fb/interval-unit.mjs
836
836
  var IntervalUnit;
837
837
  (function(IntervalUnit2) {
838
838
  IntervalUnit2[IntervalUnit2["YEAR_MONTH"] = 0] = "YEAR_MONTH";
@@ -1414,19 +1414,18 @@ var Builder = class _Builder {
1414
1414
  this.addInt16(len);
1415
1415
  let existing_vtable = 0;
1416
1416
  const vt1 = this.space;
1417
- outer_loop:
1418
- for (i = 0; i < this.vtables.length; i++) {
1419
- const vt2 = this.bb.capacity() - this.vtables[i];
1420
- if (len == this.bb.readInt16(vt2)) {
1421
- for (let j = SIZEOF_SHORT; j < len; j += SIZEOF_SHORT) {
1422
- if (this.bb.readInt16(vt1 + j) != this.bb.readInt16(vt2 + j)) {
1423
- continue outer_loop;
1424
- }
1417
+ outer_loop: for (i = 0; i < this.vtables.length; i++) {
1418
+ const vt2 = this.bb.capacity() - this.vtables[i];
1419
+ if (len == this.bb.readInt16(vt2)) {
1420
+ for (let j = SIZEOF_SHORT; j < len; j += SIZEOF_SHORT) {
1421
+ if (this.bb.readInt16(vt1 + j) != this.bb.readInt16(vt2 + j)) {
1422
+ continue outer_loop;
1425
1423
  }
1426
- existing_vtable = this.vtables[i];
1427
- break;
1428
1424
  }
1425
+ existing_vtable = this.vtables[i];
1426
+ break;
1429
1427
  }
1428
+ }
1430
1429
  if (existing_vtable) {
1431
1430
  this.space = this.bb.capacity() - vtableloc;
1432
1431
  this.bb.writeInt32(this.space, existing_vtable - vtableloc);
@@ -1588,20 +1587,20 @@ var Builder = class _Builder {
1588
1587
  }
1589
1588
  };
1590
1589
 
1591
- // ../core/node_modules/apache-arrow/fb/body-compression-method.mjs
1590
+ // ../../node_modules/apache-arrow/fb/body-compression-method.mjs
1592
1591
  var BodyCompressionMethod;
1593
1592
  (function(BodyCompressionMethod2) {
1594
1593
  BodyCompressionMethod2[BodyCompressionMethod2["BUFFER"] = 0] = "BUFFER";
1595
1594
  })(BodyCompressionMethod || (BodyCompressionMethod = {}));
1596
1595
 
1597
- // ../core/node_modules/apache-arrow/fb/compression-type.mjs
1596
+ // ../../node_modules/apache-arrow/fb/compression-type.mjs
1598
1597
  var CompressionType;
1599
1598
  (function(CompressionType2) {
1600
1599
  CompressionType2[CompressionType2["LZ4_FRAME"] = 0] = "LZ4_FRAME";
1601
1600
  CompressionType2[CompressionType2["ZSTD"] = 1] = "ZSTD";
1602
1601
  })(CompressionType || (CompressionType = {}));
1603
1602
 
1604
- // ../core/node_modules/apache-arrow/fb/body-compression.mjs
1603
+ // ../../node_modules/apache-arrow/fb/body-compression.mjs
1605
1604
  var BodyCompression = class _BodyCompression {
1606
1605
  constructor() {
1607
1606
  this.bb = null;
@@ -1655,7 +1654,7 @@ var BodyCompression = class _BodyCompression {
1655
1654
  }
1656
1655
  };
1657
1656
 
1658
- // ../core/node_modules/apache-arrow/fb/buffer.mjs
1657
+ // ../../node_modules/apache-arrow/fb/buffer.mjs
1659
1658
  var Buffer2 = class {
1660
1659
  constructor() {
1661
1660
  this.bb = null;
@@ -1694,7 +1693,7 @@ var Buffer2 = class {
1694
1693
  }
1695
1694
  };
1696
1695
 
1697
- // ../core/node_modules/apache-arrow/fb/field-node.mjs
1696
+ // ../../node_modules/apache-arrow/fb/field-node.mjs
1698
1697
  var FieldNode = class {
1699
1698
  constructor() {
1700
1699
  this.bb = null;
@@ -1731,7 +1730,7 @@ var FieldNode = class {
1731
1730
  }
1732
1731
  };
1733
1732
 
1734
- // ../core/node_modules/apache-arrow/fb/record-batch.mjs
1733
+ // ../../node_modules/apache-arrow/fb/record-batch.mjs
1735
1734
  var RecordBatch = class _RecordBatch {
1736
1735
  constructor() {
1737
1736
  this.bb = null;
@@ -1818,7 +1817,7 @@ var RecordBatch = class _RecordBatch {
1818
1817
  }
1819
1818
  };
1820
1819
 
1821
- // ../core/node_modules/apache-arrow/fb/dictionary-batch.mjs
1820
+ // ../../node_modules/apache-arrow/fb/dictionary-batch.mjs
1822
1821
  var DictionaryBatch = class _DictionaryBatch {
1823
1822
  constructor() {
1824
1823
  this.bb = null;
@@ -1871,20 +1870,20 @@ var DictionaryBatch = class _DictionaryBatch {
1871
1870
  }
1872
1871
  };
1873
1872
 
1874
- // ../core/node_modules/apache-arrow/fb/endianness.mjs
1873
+ // ../../node_modules/apache-arrow/fb/endianness.mjs
1875
1874
  var Endianness;
1876
1875
  (function(Endianness2) {
1877
1876
  Endianness2[Endianness2["Little"] = 0] = "Little";
1878
1877
  Endianness2[Endianness2["Big"] = 1] = "Big";
1879
1878
  })(Endianness || (Endianness = {}));
1880
1879
 
1881
- // ../core/node_modules/apache-arrow/fb/dictionary-kind.mjs
1880
+ // ../../node_modules/apache-arrow/fb/dictionary-kind.mjs
1882
1881
  var DictionaryKind;
1883
1882
  (function(DictionaryKind2) {
1884
1883
  DictionaryKind2[DictionaryKind2["DenseArray"] = 0] = "DenseArray";
1885
1884
  })(DictionaryKind || (DictionaryKind = {}));
1886
1885
 
1887
- // ../core/node_modules/apache-arrow/fb/int.mjs
1886
+ // ../../node_modules/apache-arrow/fb/int.mjs
1888
1887
  var Int = class _Int {
1889
1888
  constructor() {
1890
1889
  this.bb = null;
@@ -1931,7 +1930,7 @@ var Int = class _Int {
1931
1930
  }
1932
1931
  };
1933
1932
 
1934
- // ../core/node_modules/apache-arrow/fb/dictionary-encoding.mjs
1933
+ // ../../node_modules/apache-arrow/fb/dictionary-encoding.mjs
1935
1934
  var DictionaryEncoding = class _DictionaryEncoding {
1936
1935
  constructor() {
1937
1936
  this.bb = null;
@@ -2004,7 +2003,7 @@ var DictionaryEncoding = class _DictionaryEncoding {
2004
2003
  }
2005
2004
  };
2006
2005
 
2007
- // ../core/node_modules/apache-arrow/fb/key-value.mjs
2006
+ // ../../node_modules/apache-arrow/fb/key-value.mjs
2008
2007
  var KeyValue = class _KeyValue {
2009
2008
  constructor() {
2010
2009
  this.bb = null;
@@ -2051,7 +2050,7 @@ var KeyValue = class _KeyValue {
2051
2050
  }
2052
2051
  };
2053
2052
 
2054
- // ../core/node_modules/apache-arrow/fb/binary.mjs
2053
+ // ../../node_modules/apache-arrow/fb/binary.mjs
2055
2054
  var Binary = class _Binary {
2056
2055
  constructor() {
2057
2056
  this.bb = null;
@@ -2082,7 +2081,7 @@ var Binary = class _Binary {
2082
2081
  }
2083
2082
  };
2084
2083
 
2085
- // ../core/node_modules/apache-arrow/fb/bool.mjs
2084
+ // ../../node_modules/apache-arrow/fb/bool.mjs
2086
2085
  var Bool = class _Bool {
2087
2086
  constructor() {
2088
2087
  this.bb = null;
@@ -2113,7 +2112,7 @@ var Bool = class _Bool {
2113
2112
  }
2114
2113
  };
2115
2114
 
2116
- // ../core/node_modules/apache-arrow/fb/date.mjs
2115
+ // ../../node_modules/apache-arrow/fb/date.mjs
2117
2116
  var Date2 = class _Date {
2118
2117
  constructor() {
2119
2118
  this.bb = null;
@@ -2152,7 +2151,7 @@ var Date2 = class _Date {
2152
2151
  }
2153
2152
  };
2154
2153
 
2155
- // ../core/node_modules/apache-arrow/fb/decimal.mjs
2154
+ // ../../node_modules/apache-arrow/fb/decimal.mjs
2156
2155
  var Decimal = class _Decimal {
2157
2156
  constructor() {
2158
2157
  this.bb = null;
@@ -2217,7 +2216,7 @@ var Decimal = class _Decimal {
2217
2216
  }
2218
2217
  };
2219
2218
 
2220
- // ../core/node_modules/apache-arrow/fb/duration.mjs
2219
+ // ../../node_modules/apache-arrow/fb/duration.mjs
2221
2220
  var Duration = class _Duration {
2222
2221
  constructor() {
2223
2222
  this.bb = null;
@@ -2256,7 +2255,7 @@ var Duration = class _Duration {
2256
2255
  }
2257
2256
  };
2258
2257
 
2259
- // ../core/node_modules/apache-arrow/fb/fixed-size-binary.mjs
2258
+ // ../../node_modules/apache-arrow/fb/fixed-size-binary.mjs
2260
2259
  var FixedSizeBinary = class _FixedSizeBinary {
2261
2260
  constructor() {
2262
2261
  this.bb = null;
@@ -2298,7 +2297,7 @@ var FixedSizeBinary = class _FixedSizeBinary {
2298
2297
  }
2299
2298
  };
2300
2299
 
2301
- // ../core/node_modules/apache-arrow/fb/fixed-size-list.mjs
2300
+ // ../../node_modules/apache-arrow/fb/fixed-size-list.mjs
2302
2301
  var FixedSizeList = class _FixedSizeList {
2303
2302
  constructor() {
2304
2303
  this.bb = null;
@@ -2340,7 +2339,7 @@ var FixedSizeList = class _FixedSizeList {
2340
2339
  }
2341
2340
  };
2342
2341
 
2343
- // ../core/node_modules/apache-arrow/fb/floating-point.mjs
2342
+ // ../../node_modules/apache-arrow/fb/floating-point.mjs
2344
2343
  var FloatingPoint = class _FloatingPoint {
2345
2344
  constructor() {
2346
2345
  this.bb = null;
@@ -2379,7 +2378,7 @@ var FloatingPoint = class _FloatingPoint {
2379
2378
  }
2380
2379
  };
2381
2380
 
2382
- // ../core/node_modules/apache-arrow/fb/interval.mjs
2381
+ // ../../node_modules/apache-arrow/fb/interval.mjs
2383
2382
  var Interval = class _Interval {
2384
2383
  constructor() {
2385
2384
  this.bb = null;
@@ -2418,7 +2417,7 @@ var Interval = class _Interval {
2418
2417
  }
2419
2418
  };
2420
2419
 
2421
- // ../core/node_modules/apache-arrow/fb/large-binary.mjs
2420
+ // ../../node_modules/apache-arrow/fb/large-binary.mjs
2422
2421
  var LargeBinary = class _LargeBinary {
2423
2422
  constructor() {
2424
2423
  this.bb = null;
@@ -2449,7 +2448,7 @@ var LargeBinary = class _LargeBinary {
2449
2448
  }
2450
2449
  };
2451
2450
 
2452
- // ../core/node_modules/apache-arrow/fb/large-utf8.mjs
2451
+ // ../../node_modules/apache-arrow/fb/large-utf8.mjs
2453
2452
  var LargeUtf8 = class _LargeUtf8 {
2454
2453
  constructor() {
2455
2454
  this.bb = null;
@@ -2480,7 +2479,7 @@ var LargeUtf8 = class _LargeUtf8 {
2480
2479
  }
2481
2480
  };
2482
2481
 
2483
- // ../core/node_modules/apache-arrow/fb/list.mjs
2482
+ // ../../node_modules/apache-arrow/fb/list.mjs
2484
2483
  var List = class _List {
2485
2484
  constructor() {
2486
2485
  this.bb = null;
@@ -2511,7 +2510,7 @@ var List = class _List {
2511
2510
  }
2512
2511
  };
2513
2512
 
2514
- // ../core/node_modules/apache-arrow/fb/map.mjs
2513
+ // ../../node_modules/apache-arrow/fb/map.mjs
2515
2514
  var Map2 = class _Map {
2516
2515
  constructor() {
2517
2516
  this.bb = null;
@@ -2553,7 +2552,7 @@ var Map2 = class _Map {
2553
2552
  }
2554
2553
  };
2555
2554
 
2556
- // ../core/node_modules/apache-arrow/fb/null.mjs
2555
+ // ../../node_modules/apache-arrow/fb/null.mjs
2557
2556
  var Null = class _Null {
2558
2557
  constructor() {
2559
2558
  this.bb = null;
@@ -2584,7 +2583,7 @@ var Null = class _Null {
2584
2583
  }
2585
2584
  };
2586
2585
 
2587
- // ../core/node_modules/apache-arrow/fb/struct-.mjs
2586
+ // ../../node_modules/apache-arrow/fb/struct-.mjs
2588
2587
  var Struct_ = class _Struct_ {
2589
2588
  constructor() {
2590
2589
  this.bb = null;
@@ -2615,7 +2614,7 @@ var Struct_ = class _Struct_ {
2615
2614
  }
2616
2615
  };
2617
2616
 
2618
- // ../core/node_modules/apache-arrow/fb/time.mjs
2617
+ // ../../node_modules/apache-arrow/fb/time.mjs
2619
2618
  var Time = class _Time {
2620
2619
  constructor() {
2621
2620
  this.bb = null;
@@ -2662,7 +2661,7 @@ var Time = class _Time {
2662
2661
  }
2663
2662
  };
2664
2663
 
2665
- // ../core/node_modules/apache-arrow/fb/timestamp.mjs
2664
+ // ../../node_modules/apache-arrow/fb/timestamp.mjs
2666
2665
  var Timestamp = class _Timestamp {
2667
2666
  constructor() {
2668
2667
  this.bb = null;
@@ -2709,7 +2708,7 @@ var Timestamp = class _Timestamp {
2709
2708
  }
2710
2709
  };
2711
2710
 
2712
- // ../core/node_modules/apache-arrow/fb/union.mjs
2711
+ // ../../node_modules/apache-arrow/fb/union.mjs
2713
2712
  var Union = class _Union {
2714
2713
  constructor() {
2715
2714
  this.bb = null;
@@ -2774,7 +2773,7 @@ var Union = class _Union {
2774
2773
  }
2775
2774
  };
2776
2775
 
2777
- // ../core/node_modules/apache-arrow/fb/utf8.mjs
2776
+ // ../../node_modules/apache-arrow/fb/utf8.mjs
2778
2777
  var Utf8 = class _Utf8 {
2779
2778
  constructor() {
2780
2779
  this.bb = null;
@@ -2805,7 +2804,7 @@ var Utf8 = class _Utf8 {
2805
2804
  }
2806
2805
  };
2807
2806
 
2808
- // ../core/node_modules/apache-arrow/fb/type.mjs
2807
+ // ../../node_modules/apache-arrow/fb/type.mjs
2809
2808
  var Type;
2810
2809
  (function(Type3) {
2811
2810
  Type3[Type3["NONE"] = 0] = "NONE";
@@ -2833,7 +2832,7 @@ var Type;
2833
2832
  Type3[Type3["RunEndEncoded"] = 22] = "RunEndEncoded";
2834
2833
  })(Type || (Type = {}));
2835
2834
 
2836
- // ../core/node_modules/apache-arrow/fb/field.mjs
2835
+ // ../../node_modules/apache-arrow/fb/field.mjs
2837
2836
  var Field = class _Field {
2838
2837
  constructor() {
2839
2838
  this.bb = null;
@@ -2953,7 +2952,7 @@ var Field = class _Field {
2953
2952
  }
2954
2953
  };
2955
2954
 
2956
- // ../core/node_modules/apache-arrow/fb/schema.mjs
2955
+ // ../../node_modules/apache-arrow/fb/schema.mjs
2957
2956
  var Schema = class _Schema {
2958
2957
  constructor() {
2959
2958
  this.bb = null;
@@ -3072,7 +3071,7 @@ var Schema = class _Schema {
3072
3071
  }
3073
3072
  };
3074
3073
 
3075
- // ../core/node_modules/apache-arrow/fb/message-header.mjs
3074
+ // ../../node_modules/apache-arrow/fb/message-header.mjs
3076
3075
  var MessageHeader;
3077
3076
  (function(MessageHeader2) {
3078
3077
  MessageHeader2[MessageHeader2["NONE"] = 0] = "NONE";
@@ -3083,7 +3082,7 @@ var MessageHeader;
3083
3082
  MessageHeader2[MessageHeader2["SparseTensor"] = 5] = "SparseTensor";
3084
3083
  })(MessageHeader || (MessageHeader = {}));
3085
3084
 
3086
- // ../core/node_modules/apache-arrow/enum.mjs
3085
+ // ../../node_modules/apache-arrow/enum.mjs
3087
3086
  var Type2;
3088
3087
  (function(Type3) {
3089
3088
  Type3[Type3["NONE"] = 0] = "NONE";
@@ -3146,7 +3145,7 @@ var BufferType;
3146
3145
  BufferType2[BufferType2["TYPE"] = 3] = "TYPE";
3147
3146
  })(BufferType || (BufferType = {}));
3148
3147
 
3149
- // ../core/node_modules/apache-arrow/util/vector.mjs
3148
+ // ../../node_modules/apache-arrow/util/vector.mjs
3150
3149
  var vector_exports = {};
3151
3150
  __export(vector_exports, {
3152
3151
  clampIndex: () => clampIndex,
@@ -3154,7 +3153,7 @@ __export(vector_exports, {
3154
3153
  createElementComparator: () => createElementComparator
3155
3154
  });
3156
3155
 
3157
- // ../core/node_modules/apache-arrow/util/pretty.mjs
3156
+ // ../../node_modules/apache-arrow/util/pretty.mjs
3158
3157
  var pretty_exports = {};
3159
3158
  __export(pretty_exports, {
3160
3159
  valueToString: () => valueToString
@@ -3187,7 +3186,7 @@ function valueToString(x2) {
3187
3186
  return ArrayBuffer.isView(x2) ? `[${x2}]` : JSON.stringify(x2, (_, y2) => typeof y2 === "bigint" ? `${y2}` : y2);
3188
3187
  }
3189
3188
 
3190
- // ../core/node_modules/apache-arrow/util/bn.mjs
3189
+ // ../../node_modules/apache-arrow/util/bn.mjs
3191
3190
  var bn_exports = {};
3192
3191
  __export(bn_exports, {
3193
3192
  BN: () => BN,
@@ -3344,7 +3343,7 @@ var BN = class _BN {
3344
3343
  }
3345
3344
  };
3346
3345
 
3347
- // ../core/node_modules/apache-arrow/util/bigint.mjs
3346
+ // ../../node_modules/apache-arrow/util/bigint.mjs
3348
3347
  function bigIntToNumber(number) {
3349
3348
  if (typeof number === "bigint" && (number < Number.MIN_SAFE_INTEGER || number > Number.MAX_SAFE_INTEGER)) {
3350
3349
  throw new TypeError(`${number} is not safe to convert to a number.`);
@@ -3352,7 +3351,7 @@ function bigIntToNumber(number) {
3352
3351
  return Number(number);
3353
3352
  }
3354
3353
 
3355
- // ../core/node_modules/apache-arrow/type.mjs
3354
+ // ../../node_modules/apache-arrow/type.mjs
3356
3355
  var _a;
3357
3356
  var _b;
3358
3357
  var _c;
@@ -3992,7 +3991,7 @@ function strideForType(type) {
3992
3991
  }
3993
3992
  }
3994
3993
 
3995
- // ../core/node_modules/apache-arrow/visitor.mjs
3994
+ // ../../node_modules/apache-arrow/visitor.mjs
3996
3995
  var Visitor = class {
3997
3996
  visitMany(nodes, ...args) {
3998
3997
  return nodes.map((node, i) => this.visit(node, ...args.map((x2) => x2[i])));
@@ -4391,7 +4390,7 @@ Visitor.prototype.visitDurationMillisecond = null;
4391
4390
  Visitor.prototype.visitDurationMicrosecond = null;
4392
4391
  Visitor.prototype.visitDurationNanosecond = null;
4393
4392
 
4394
- // ../core/node_modules/apache-arrow/util/math.mjs
4393
+ // ../../node_modules/apache-arrow/util/math.mjs
4395
4394
  var math_exports = {};
4396
4395
  __export(math_exports, {
4397
4396
  float64ToUint16: () => float64ToUint16,
@@ -4436,7 +4435,7 @@ function float64ToUint16(d) {
4436
4435
  return sign | expo | sigf & 65535;
4437
4436
  }
4438
4437
 
4439
- // ../core/node_modules/apache-arrow/visitor/set.mjs
4438
+ // ../../node_modules/apache-arrow/visitor/set.mjs
4440
4439
  var SetVisitor = class extends Visitor {
4441
4440
  };
4442
4441
  function wrapSet(fn) {
@@ -4697,7 +4696,7 @@ SetVisitor.prototype.visitFixedSizeList = wrapSet(setFixedSizeList);
4697
4696
  SetVisitor.prototype.visitMap = wrapSet(setMap);
4698
4697
  var instance = new SetVisitor();
4699
4698
 
4700
- // ../core/node_modules/apache-arrow/row/struct.mjs
4699
+ // ../../node_modules/apache-arrow/row/struct.mjs
4701
4700
  var kParent = Symbol.for("parent");
4702
4701
  var kRowIndex = Symbol.for("rowIndex");
4703
4702
  var StructRow = class {
@@ -4805,7 +4804,7 @@ var StructRowProxyHandler = class {
4805
4804
  }
4806
4805
  };
4807
4806
 
4808
- // ../core/node_modules/apache-arrow/visitor/get.mjs
4807
+ // ../../node_modules/apache-arrow/visitor/get.mjs
4809
4808
  var GetVisitor = class extends Visitor {
4810
4809
  };
4811
4810
  function wrapGet(fn) {
@@ -4995,7 +4994,7 @@ GetVisitor.prototype.visitFixedSizeList = wrapGet(getFixedSizeList);
4995
4994
  GetVisitor.prototype.visitMap = wrapGet(getMap);
4996
4995
  var instance2 = new GetVisitor();
4997
4996
 
4998
- // ../core/node_modules/apache-arrow/row/map.mjs
4997
+ // ../../node_modules/apache-arrow/row/map.mjs
4999
4998
  var kKeys = Symbol.for("keys");
5000
4999
  var kVals = Symbol.for("vals");
5001
5000
  var MapRow = class {
@@ -5105,7 +5104,7 @@ Object.defineProperties(MapRow.prototype, {
5105
5104
  [kVals]: { writable: true, enumerable: false, configurable: false, value: null }
5106
5105
  });
5107
5106
 
5108
- // ../core/node_modules/apache-arrow/util/vector.mjs
5107
+ // ../../node_modules/apache-arrow/util/vector.mjs
5109
5108
  function clampIndex(source, index, then) {
5110
5109
  const length2 = source.length;
5111
5110
  const adjust = index > -1 ? index : length2 + index % length2;
@@ -5247,7 +5246,7 @@ function compareObject(comparators, obj, keys) {
5247
5246
  return false;
5248
5247
  }
5249
5248
 
5250
- // ../core/node_modules/apache-arrow/util/bit.mjs
5249
+ // ../../node_modules/apache-arrow/util/bit.mjs
5251
5250
  var bit_exports = {};
5252
5251
  __export(bit_exports, {
5253
5252
  BitIterator: () => BitIterator,
@@ -5370,7 +5369,7 @@ function popcnt_uint32(uint32) {
5370
5369
  return (i + (i >>> 4) & 252645135) * 16843009 >>> 24;
5371
5370
  }
5372
5371
 
5373
- // ../core/node_modules/apache-arrow/data.mjs
5372
+ // ../../node_modules/apache-arrow/data.mjs
5374
5373
  var kUnknownNullCount = -1;
5375
5374
  var Data = class _Data {
5376
5375
  get typeId() {
@@ -5689,7 +5688,7 @@ function makeData(props) {
5689
5688
  return makeDataVisitor.visit(props);
5690
5689
  }
5691
5690
 
5692
- // ../core/node_modules/apache-arrow/util/chunk.mjs
5691
+ // ../../node_modules/apache-arrow/util/chunk.mjs
5693
5692
  var ChunkedIterator = class {
5694
5693
  constructor(numChunks = 0, getChunkIterator) {
5695
5694
  this.numChunks = numChunks;
@@ -5808,7 +5807,7 @@ function wrapChunkedIndexOf(indexOf) {
5808
5807
  };
5809
5808
  }
5810
5809
 
5811
- // ../core/node_modules/apache-arrow/visitor/indexof.mjs
5810
+ // ../../node_modules/apache-arrow/visitor/indexof.mjs
5812
5811
  var IndexOfVisitor = class extends Visitor {
5813
5812
  };
5814
5813
  function nullIndexOf(data, searchElement) {
@@ -5913,7 +5912,7 @@ IndexOfVisitor.prototype.visitFixedSizeList = indexOfValue;
5913
5912
  IndexOfVisitor.prototype.visitMap = indexOfValue;
5914
5913
  var instance3 = new IndexOfVisitor();
5915
5914
 
5916
- // ../core/node_modules/apache-arrow/visitor/iterator.mjs
5915
+ // ../../node_modules/apache-arrow/visitor/iterator.mjs
5917
5916
  var IteratorVisitor = class extends Visitor {
5918
5917
  };
5919
5918
  function vectorIterator(vector) {
@@ -6002,7 +6001,7 @@ IteratorVisitor.prototype.visitFixedSizeList = vectorIterator;
6002
6001
  IteratorVisitor.prototype.visitMap = vectorIterator;
6003
6002
  var instance4 = new IteratorVisitor();
6004
6003
 
6005
- // ../core/node_modules/apache-arrow/vector.mjs
6004
+ // ../../node_modules/apache-arrow/vector.mjs
6006
6005
  var _a2;
6007
6006
  var visitorsByTypeId = {};
6008
6007
  var vectorPrototypesByTypeId = {};
@@ -6306,7 +6305,7 @@ var MemoizedVector = class _MemoizedVector extends Vector {
6306
6305
  }
6307
6306
  };
6308
6307
 
6309
- // ../core/node_modules/apache-arrow/builder/valid.mjs
6308
+ // ../../node_modules/apache-arrow/builder/valid.mjs
6310
6309
  function createIsValidFunction(nullValues) {
6311
6310
  if (!nullValues || nullValues.length <= 0) {
6312
6311
  return function isValid(value) {
@@ -6336,7 +6335,7 @@ function valueToCase(x2) {
6336
6335
  return `${valueToString(x2)}n`;
6337
6336
  }
6338
6337
 
6339
- // ../core/node_modules/apache-arrow/builder/buffer.mjs
6338
+ // ../../node_modules/apache-arrow/builder/buffer.mjs
6340
6339
  function roundLengthUpToNearest64Bytes(len, BPE) {
6341
6340
  const bytesMinus1 = Math.ceil(len) * BPE - 1;
6342
6341
  return (bytesMinus1 - bytesMinus1 % 64 + 64 || 64) / BPE;
@@ -6454,7 +6453,7 @@ var OffsetsBufferBuilder = class extends DataBufferBuilder {
6454
6453
  }
6455
6454
  };
6456
6455
 
6457
- // ../core/node_modules/apache-arrow/builder.mjs
6456
+ // ../../node_modules/apache-arrow/builder.mjs
6458
6457
  var Builder2 = class {
6459
6458
  /** @nocollapse */
6460
6459
  // @ts-ignore
@@ -6721,7 +6720,7 @@ var VariableWidthBuilder = class extends Builder2 {
6721
6720
  }
6722
6721
  };
6723
6722
 
6724
- // ../core/node_modules/apache-arrow/fb/block.mjs
6723
+ // ../../node_modules/apache-arrow/fb/block.mjs
6725
6724
  var Block = class {
6726
6725
  constructor() {
6727
6726
  this.bb = null;
@@ -6764,7 +6763,7 @@ var Block = class {
6764
6763
  }
6765
6764
  };
6766
6765
 
6767
- // ../core/node_modules/apache-arrow/fb/footer.mjs
6766
+ // ../../node_modules/apache-arrow/fb/footer.mjs
6768
6767
  var Footer = class _Footer {
6769
6768
  constructor() {
6770
6769
  this.bb = null;
@@ -6863,7 +6862,7 @@ var Footer = class _Footer {
6863
6862
  }
6864
6863
  };
6865
6864
 
6866
- // ../core/node_modules/apache-arrow/schema.mjs
6865
+ // ../../node_modules/apache-arrow/schema.mjs
6867
6866
  var Schema2 = class _Schema {
6868
6867
  constructor(fields = [], metadata, dictionaries, metadataVersion = MetadataVersion.V5) {
6869
6868
  this.fields = fields || [];
@@ -6979,7 +6978,7 @@ function generateDictionaryMap(fields, dictionaries = /* @__PURE__ */ new Map())
6979
6978
  return dictionaries;
6980
6979
  }
6981
6980
 
6982
- // ../core/node_modules/apache-arrow/ipc/metadata/file.mjs
6981
+ // ../../node_modules/apache-arrow/ipc/metadata/file.mjs
6983
6982
  var Builder3 = Builder;
6984
6983
  var ByteBuffer2 = ByteBuffer;
6985
6984
  var Footer_ = class {
@@ -7094,7 +7093,7 @@ var FileBlock = class _FileBlock {
7094
7093
  }
7095
7094
  };
7096
7095
 
7097
- // ../core/node_modules/apache-arrow/io/interfaces.mjs
7096
+ // ../../node_modules/apache-arrow/io/interfaces.mjs
7098
7097
  var ITERATOR_DONE = Object.freeze({ done: true, value: void 0 });
7099
7098
  var ArrowJSON = class {
7100
7099
  constructor(_json) {
@@ -7217,7 +7216,7 @@ var AsyncQueue = class extends ReadableInterop {
7217
7216
  }
7218
7217
  };
7219
7218
 
7220
- // ../core/node_modules/apache-arrow/io/stream.mjs
7219
+ // ../../node_modules/apache-arrow/io/stream.mjs
7221
7220
  var AsyncByteQueue = class extends AsyncQueue {
7222
7221
  write(value) {
7223
7222
  if ((value = toUint8Array(value)).byteLength > 0) {
@@ -7244,11 +7243,9 @@ var AsyncByteQueue = class extends AsyncQueue {
7244
7243
  e_1 = { error: e_1_1 };
7245
7244
  } finally {
7246
7245
  try {
7247
- if (!_d2 && !_a5 && (_b2 = _e2.return))
7248
- yield _b2.call(_e2);
7246
+ if (!_d2 && !_a5 && (_b2 = _e2.return)) yield _b2.call(_e2);
7249
7247
  } finally {
7250
- if (e_1)
7251
- throw e_1.error;
7248
+ if (e_1) throw e_1.error;
7252
7249
  }
7253
7250
  }
7254
7251
  return joinUint8Arrays(buffers, byteLength)[0];
@@ -7394,7 +7391,7 @@ var AsyncByteStreamSource = class {
7394
7391
  }
7395
7392
  };
7396
7393
 
7397
- // ../core/node_modules/apache-arrow/io/file.mjs
7394
+ // ../../node_modules/apache-arrow/io/file.mjs
7398
7395
  var RandomAccessFile = class extends ByteStream {
7399
7396
  constructor(buffer, byteLength) {
7400
7397
  super();
@@ -7517,7 +7514,7 @@ var AsyncRandomAccessFile = class extends AsyncByteStream {
7517
7514
  }
7518
7515
  };
7519
7516
 
7520
- // ../core/node_modules/apache-arrow/util/int.mjs
7517
+ // ../../node_modules/apache-arrow/util/int.mjs
7521
7518
  var int_exports = {};
7522
7519
  __export(int_exports, {
7523
7520
  BaseInt64: () => BaseInt64,
@@ -7833,7 +7830,7 @@ var Int128 = class _Int128 {
7833
7830
  }
7834
7831
  };
7835
7832
 
7836
- // ../core/node_modules/apache-arrow/visitor/vectorloader.mjs
7833
+ // ../../node_modules/apache-arrow/visitor/vectorloader.mjs
7837
7834
  var VectorLoader = class extends Visitor {
7838
7835
  constructor(bytes, nodes, buffers, dictionaries, metadataVersion = MetadataVersion.V5) {
7839
7836
  super();
@@ -7985,7 +7982,7 @@ function binaryDataFromJSON(values) {
7985
7982
  return data;
7986
7983
  }
7987
7984
 
7988
- // ../core/node_modules/apache-arrow/builder/binary.mjs
7985
+ // ../../node_modules/apache-arrow/builder/binary.mjs
7989
7986
  var BinaryBuilder = class extends VariableWidthBuilder {
7990
7987
  constructor(opts) {
7991
7988
  super(opts);
@@ -8018,7 +8015,7 @@ var BinaryBuilder = class extends VariableWidthBuilder {
8018
8015
  }
8019
8016
  };
8020
8017
 
8021
- // ../core/node_modules/apache-arrow/builder/largebinary.mjs
8018
+ // ../../node_modules/apache-arrow/builder/largebinary.mjs
8022
8019
  var LargeBinaryBuilder = class extends VariableWidthBuilder {
8023
8020
  constructor(opts) {
8024
8021
  super(opts);
@@ -8051,7 +8048,7 @@ var LargeBinaryBuilder = class extends VariableWidthBuilder {
8051
8048
  }
8052
8049
  };
8053
8050
 
8054
- // ../core/node_modules/apache-arrow/builder/bool.mjs
8051
+ // ../../node_modules/apache-arrow/builder/bool.mjs
8055
8052
  var BoolBuilder = class extends Builder2 {
8056
8053
  constructor(options) {
8057
8054
  super(options);
@@ -8062,7 +8059,7 @@ var BoolBuilder = class extends Builder2 {
8062
8059
  }
8063
8060
  };
8064
8061
 
8065
- // ../core/node_modules/apache-arrow/builder/date.mjs
8062
+ // ../../node_modules/apache-arrow/builder/date.mjs
8066
8063
  var DateBuilder = class extends FixedWidthBuilder {
8067
8064
  };
8068
8065
  DateBuilder.prototype._setValue = setDate;
@@ -8073,12 +8070,12 @@ var DateMillisecondBuilder = class extends DateBuilder {
8073
8070
  };
8074
8071
  DateMillisecondBuilder.prototype._setValue = setDateMillisecond;
8075
8072
 
8076
- // ../core/node_modules/apache-arrow/builder/decimal.mjs
8073
+ // ../../node_modules/apache-arrow/builder/decimal.mjs
8077
8074
  var DecimalBuilder = class extends FixedWidthBuilder {
8078
8075
  };
8079
8076
  DecimalBuilder.prototype._setValue = setDecimal;
8080
8077
 
8081
- // ../core/node_modules/apache-arrow/builder/dictionary.mjs
8078
+ // ../../node_modules/apache-arrow/builder/dictionary.mjs
8082
8079
  var DictionaryBuilder = class extends Builder2 {
8083
8080
  constructor({ "type": type, "nullValues": nulls, "dictionaryHashFunction": hashFn }) {
8084
8081
  super({ type: new Dictionary(type.dictionary, type.indices, type.id, type.isOrdered) });
@@ -8155,12 +8152,12 @@ var DictionaryBuilder = class extends Builder2 {
8155
8152
  }
8156
8153
  };
8157
8154
 
8158
- // ../core/node_modules/apache-arrow/builder/fixedsizebinary.mjs
8155
+ // ../../node_modules/apache-arrow/builder/fixedsizebinary.mjs
8159
8156
  var FixedSizeBinaryBuilder = class extends FixedWidthBuilder {
8160
8157
  };
8161
8158
  FixedSizeBinaryBuilder.prototype._setValue = setFixedSizeBinary;
8162
8159
 
8163
- // ../core/node_modules/apache-arrow/builder/fixedsizelist.mjs
8160
+ // ../../node_modules/apache-arrow/builder/fixedsizelist.mjs
8164
8161
  var FixedSizeListBuilder = class extends Builder2 {
8165
8162
  setValue(index, value) {
8166
8163
  const [child] = this.children;
@@ -8179,7 +8176,7 @@ var FixedSizeListBuilder = class extends Builder2 {
8179
8176
  }
8180
8177
  };
8181
8178
 
8182
- // ../core/node_modules/apache-arrow/builder/float.mjs
8179
+ // ../../node_modules/apache-arrow/builder/float.mjs
8183
8180
  var FloatBuilder = class extends FixedWidthBuilder {
8184
8181
  setValue(index, value) {
8185
8182
  this._values.set(index, value);
@@ -8195,7 +8192,7 @@ var Float32Builder = class extends FloatBuilder {
8195
8192
  var Float64Builder = class extends FloatBuilder {
8196
8193
  };
8197
8194
 
8198
- // ../core/node_modules/apache-arrow/builder/interval.mjs
8195
+ // ../../node_modules/apache-arrow/builder/interval.mjs
8199
8196
  var IntervalBuilder = class extends FixedWidthBuilder {
8200
8197
  };
8201
8198
  IntervalBuilder.prototype._setValue = setIntervalValue;
@@ -8206,7 +8203,7 @@ var IntervalYearMonthBuilder = class extends IntervalBuilder {
8206
8203
  };
8207
8204
  IntervalYearMonthBuilder.prototype._setValue = setIntervalYearMonth;
8208
8205
 
8209
- // ../core/node_modules/apache-arrow/builder/duration.mjs
8206
+ // ../../node_modules/apache-arrow/builder/duration.mjs
8210
8207
  var DurationBuilder = class extends FixedWidthBuilder {
8211
8208
  };
8212
8209
  DurationBuilder.prototype._setValue = setDuration;
@@ -8223,7 +8220,7 @@ var DurationNanosecondBuilder = class extends DurationBuilder {
8223
8220
  };
8224
8221
  DurationNanosecondBuilder.prototype._setValue = setDurationNanosecond;
8225
8222
 
8226
- // ../core/node_modules/apache-arrow/builder/int.mjs
8223
+ // ../../node_modules/apache-arrow/builder/int.mjs
8227
8224
  var IntBuilder = class extends FixedWidthBuilder {
8228
8225
  setValue(index, value) {
8229
8226
  this._values.set(index, value);
@@ -8246,7 +8243,7 @@ var Uint32Builder = class extends IntBuilder {
8246
8243
  var Uint64Builder = class extends IntBuilder {
8247
8244
  };
8248
8245
 
8249
- // ../core/node_modules/apache-arrow/builder/list.mjs
8246
+ // ../../node_modules/apache-arrow/builder/list.mjs
8250
8247
  var ListBuilder = class extends VariableWidthBuilder {
8251
8248
  constructor(opts) {
8252
8249
  super(opts);
@@ -8278,7 +8275,7 @@ var ListBuilder = class extends VariableWidthBuilder {
8278
8275
  }
8279
8276
  };
8280
8277
 
8281
- // ../core/node_modules/apache-arrow/builder/map.mjs
8278
+ // ../../node_modules/apache-arrow/builder/map.mjs
8282
8279
  var MapBuilder = class extends VariableWidthBuilder {
8283
8280
  set(index, value) {
8284
8281
  return super.set(index, value);
@@ -8317,7 +8314,7 @@ var MapBuilder = class extends VariableWidthBuilder {
8317
8314
  }
8318
8315
  };
8319
8316
 
8320
- // ../core/node_modules/apache-arrow/builder/null.mjs
8317
+ // ../../node_modules/apache-arrow/builder/null.mjs
8321
8318
  var NullBuilder = class extends Builder2 {
8322
8319
  // @ts-ignore
8323
8320
  setValue(index, value) {
@@ -8328,7 +8325,7 @@ var NullBuilder = class extends Builder2 {
8328
8325
  }
8329
8326
  };
8330
8327
 
8331
- // ../core/node_modules/apache-arrow/builder/struct.mjs
8328
+ // ../../node_modules/apache-arrow/builder/struct.mjs
8332
8329
  var StructBuilder = class extends Builder2 {
8333
8330
  setValue(index, value) {
8334
8331
  const { children, type } = this;
@@ -8355,7 +8352,7 @@ var StructBuilder = class extends Builder2 {
8355
8352
  }
8356
8353
  };
8357
8354
 
8358
- // ../core/node_modules/apache-arrow/builder/timestamp.mjs
8355
+ // ../../node_modules/apache-arrow/builder/timestamp.mjs
8359
8356
  var TimestampBuilder = class extends FixedWidthBuilder {
8360
8357
  };
8361
8358
  TimestampBuilder.prototype._setValue = setTimestamp;
@@ -8372,7 +8369,7 @@ var TimestampNanosecondBuilder = class extends TimestampBuilder {
8372
8369
  };
8373
8370
  TimestampNanosecondBuilder.prototype._setValue = setTimestampNanosecond;
8374
8371
 
8375
- // ../core/node_modules/apache-arrow/builder/time.mjs
8372
+ // ../../node_modules/apache-arrow/builder/time.mjs
8376
8373
  var TimeBuilder = class extends FixedWidthBuilder {
8377
8374
  };
8378
8375
  TimeBuilder.prototype._setValue = setTime;
@@ -8389,7 +8386,7 @@ var TimeNanosecondBuilder = class extends TimeBuilder {
8389
8386
  };
8390
8387
  TimeNanosecondBuilder.prototype._setValue = setTimeNanosecond;
8391
8388
 
8392
- // ../core/node_modules/apache-arrow/builder/union.mjs
8389
+ // ../../node_modules/apache-arrow/builder/union.mjs
8393
8390
  var UnionBuilder = class extends Builder2 {
8394
8391
  constructor(options) {
8395
8392
  super(options);
@@ -8446,7 +8443,7 @@ var DenseUnionBuilder = class extends UnionBuilder {
8446
8443
  }
8447
8444
  };
8448
8445
 
8449
- // ../core/node_modules/apache-arrow/builder/utf8.mjs
8446
+ // ../../node_modules/apache-arrow/builder/utf8.mjs
8450
8447
  var Utf8Builder = class extends VariableWidthBuilder {
8451
8448
  constructor(opts) {
8452
8449
  super(opts);
@@ -8468,7 +8465,7 @@ var Utf8Builder = class extends VariableWidthBuilder {
8468
8465
  };
8469
8466
  Utf8Builder.prototype._flushPending = BinaryBuilder.prototype._flushPending;
8470
8467
 
8471
- // ../core/node_modules/apache-arrow/builder/largeutf8.mjs
8468
+ // ../../node_modules/apache-arrow/builder/largeutf8.mjs
8472
8469
  var LargeUtf8Builder = class extends VariableWidthBuilder {
8473
8470
  constructor(opts) {
8474
8471
  super(opts);
@@ -8490,7 +8487,7 @@ var LargeUtf8Builder = class extends VariableWidthBuilder {
8490
8487
  };
8491
8488
  LargeUtf8Builder.prototype._flushPending = LargeBinaryBuilder.prototype._flushPending;
8492
8489
 
8493
- // ../core/node_modules/apache-arrow/visitor/builderctor.mjs
8490
+ // ../../node_modules/apache-arrow/visitor/builderctor.mjs
8494
8491
  var GetBuilderCtor = class extends Visitor {
8495
8492
  visitNull() {
8496
8493
  return NullBuilder;
@@ -8645,7 +8642,7 @@ var GetBuilderCtor = class extends Visitor {
8645
8642
  };
8646
8643
  var instance5 = new GetBuilderCtor();
8647
8644
 
8648
- // ../core/node_modules/apache-arrow/visitor/typecomparator.mjs
8645
+ // ../../node_modules/apache-arrow/visitor/typecomparator.mjs
8649
8646
  var TypeComparator = class extends Visitor {
8650
8647
  compareSchemas(schema, other) {
8651
8648
  return schema === other || other instanceof schema.constructor && this.compareManyFields(schema.fields, other.fields);
@@ -8766,7 +8763,7 @@ function compareTypes(type, other) {
8766
8763
  return instance6.visit(type, other);
8767
8764
  }
8768
8765
 
8769
- // ../core/node_modules/apache-arrow/factories.mjs
8766
+ // ../../node_modules/apache-arrow/factories.mjs
8770
8767
  function makeBuilder(options) {
8771
8768
  const type = options.type;
8772
8769
  const builder = new (instance5.getVisitFn(type)())(options);
@@ -8783,7 +8780,7 @@ function makeBuilder(options) {
8783
8780
  return builder;
8784
8781
  }
8785
8782
 
8786
- // ../core/node_modules/apache-arrow/util/recordbatch.mjs
8783
+ // ../../node_modules/apache-arrow/util/recordbatch.mjs
8787
8784
  function distributeVectorsIntoRecordBatches(schema, vecs) {
8788
8785
  return uniformlyDistributeChunksAcrossRecordBatches(schema, vecs.map((v) => v.data.concat()));
8789
8786
  }
@@ -8844,7 +8841,7 @@ function distributeChildren(fields, batchLength, children, columns, memo) {
8844
8841
  return children;
8845
8842
  }
8846
8843
 
8847
- // ../core/node_modules/apache-arrow/table.mjs
8844
+ // ../../node_modules/apache-arrow/table.mjs
8848
8845
  var _a3;
8849
8846
  var Table = class _Table {
8850
8847
  constructor(...args) {
@@ -9119,7 +9116,7 @@ Table[_a3] = ((proto) => {
9119
9116
  return "Table";
9120
9117
  })(Table.prototype);
9121
9118
 
9122
- // ../core/node_modules/apache-arrow/recordbatch.mjs
9119
+ // ../../node_modules/apache-arrow/recordbatch.mjs
9123
9120
  var _a4;
9124
9121
  var RecordBatch2 = class _RecordBatch {
9125
9122
  constructor(...args) {
@@ -9377,7 +9374,7 @@ var _InternalEmptyPlaceholderRecordBatch = class extends RecordBatch2 {
9377
9374
  }
9378
9375
  };
9379
9376
 
9380
- // ../core/node_modules/apache-arrow/fb/message.mjs
9377
+ // ../../node_modules/apache-arrow/fb/message.mjs
9381
9378
  var Message = class _Message {
9382
9379
  constructor() {
9383
9380
  this.bb = null;
@@ -9468,7 +9465,7 @@ var Message = class _Message {
9468
9465
  }
9469
9466
  };
9470
9467
 
9471
- // ../core/node_modules/apache-arrow/visitor/typeassembler.mjs
9468
+ // ../../node_modules/apache-arrow/visitor/typeassembler.mjs
9472
9469
  var TypeAssembler = class extends Visitor {
9473
9470
  visit(node, builder) {
9474
9471
  return node == null || builder == null ? void 0 : super.visit(node, builder);
@@ -9589,7 +9586,7 @@ var TypeAssembler = class extends Visitor {
9589
9586
  };
9590
9587
  var instance7 = new TypeAssembler();
9591
9588
 
9592
- // ../core/node_modules/apache-arrow/ipc/metadata/json.mjs
9589
+ // ../../node_modules/apache-arrow/ipc/metadata/json.mjs
9593
9590
  function schemaFromJSON(_schema, dictionaries = /* @__PURE__ */ new Map()) {
9594
9591
  return new Schema2(schemaFieldsFromJSON(_schema, dictionaries), customMetadataFromJSON(_schema["metadata"]), dictionaries);
9595
9592
  }
@@ -9733,7 +9730,7 @@ function typeFromJSON(f, children) {
9733
9730
  throw new Error(`Unrecognized type: "${typeId}"`);
9734
9731
  }
9735
9732
 
9736
- // ../core/node_modules/apache-arrow/ipc/metadata/message.mjs
9733
+ // ../../node_modules/apache-arrow/ipc/metadata/message.mjs
9737
9734
  var Builder4 = Builder;
9738
9735
  var ByteBuffer3 = ByteBuffer;
9739
9736
  var Message2 = class _Message {
@@ -10185,7 +10182,7 @@ var platformIsLittleEndian = (() => {
10185
10182
  return new Int16Array(buffer)[0] === 256;
10186
10183
  })();
10187
10184
 
10188
- // ../core/node_modules/apache-arrow/ipc/message.mjs
10185
+ // ../../node_modules/apache-arrow/ipc/message.mjs
10189
10186
  var invalidMessageType = (type) => `Expected ${MessageHeader[type]} Message in stream, but was null or length 0.`;
10190
10187
  var nullMessage = (type) => `Header pointer of flatbuffer-encoded ${MessageHeader[type]} Message is null or length 0.`;
10191
10188
  var invalidMessageMetadata = (expected, actual) => `Expected to read ${expected} metadata bytes, but only read ${actual}.`;
@@ -10440,7 +10437,7 @@ var magicLength = MAGIC.length;
10440
10437
  var magicAndPadding = magicLength + PADDING;
10441
10438
  var magicX2AndPadding = magicLength * 2 + PADDING;
10442
10439
 
10443
- // ../core/node_modules/apache-arrow/ipc/reader.mjs
10440
+ // ../../node_modules/apache-arrow/ipc/reader.mjs
10444
10441
  var RecordBatchReader = class _RecordBatchReader extends ReadableInterop {
10445
10442
  constructor(impl) {
10446
10443
  super();
@@ -10589,11 +10586,9 @@ var AsyncRecordBatchStreamReader = class extends RecordBatchReader {
10589
10586
  e_1 = { error: e_1_1 };
10590
10587
  } finally {
10591
10588
  try {
10592
- if (!_d2 && !_a5 && (_b2 = _e2.return))
10593
- yield _b2.call(_e2);
10589
+ if (!_d2 && !_a5 && (_b2 = _e2.return)) yield _b2.call(_e2);
10594
10590
  } finally {
10595
- if (e_1)
10596
- throw e_1.error;
10591
+ if (e_1) throw e_1.error;
10597
10592
  }
10598
10593
  }
10599
10594
  return batches;
@@ -11077,7 +11072,7 @@ function fromFileHandle(source) {
11077
11072
  });
11078
11073
  }
11079
11074
 
11080
- // ../core/node_modules/apache-arrow/visitor/vectorassembler.mjs
11075
+ // ../../node_modules/apache-arrow/visitor/vectorassembler.mjs
11081
11076
  var VectorAssembler = class _VectorAssembler extends Visitor {
11082
11077
  /** @nocollapse */
11083
11078
  static assemble(...args) {
@@ -11230,7 +11225,7 @@ VectorAssembler.prototype.visitDuration = assembleFlatVector;
11230
11225
  VectorAssembler.prototype.visitFixedSizeList = assembleListVector;
11231
11226
  VectorAssembler.prototype.visitMap = assembleListVector;
11232
11227
 
11233
- // ../core/node_modules/apache-arrow/ipc/writer.mjs
11228
+ // ../../node_modules/apache-arrow/ipc/writer.mjs
11234
11229
  var RecordBatchWriter = class extends ReadableInterop {
11235
11230
  /** @nocollapse */
11236
11231
  // @ts-ignore
@@ -11493,18 +11488,16 @@ function writeAllAsync(writer, batches) {
11493
11488
  e_1 = { error: e_1_1 };
11494
11489
  } finally {
11495
11490
  try {
11496
- if (!_a5 && !_b2 && (_c2 = batches_1.return))
11497
- yield _c2.call(batches_1);
11491
+ if (!_a5 && !_b2 && (_c2 = batches_1.return)) yield _c2.call(batches_1);
11498
11492
  } finally {
11499
- if (e_1)
11500
- throw e_1.error;
11493
+ if (e_1) throw e_1.error;
11501
11494
  }
11502
11495
  }
11503
11496
  return writer.finish();
11504
11497
  });
11505
11498
  }
11506
11499
 
11507
- // ../core/node_modules/apache-arrow/io/whatwg/iterable.mjs
11500
+ // ../../node_modules/apache-arrow/io/whatwg/iterable.mjs
11508
11501
  function toDOMStream(source, options) {
11509
11502
  if (isAsyncIterable(source)) {
11510
11503
  return asyncIterableAsReadableDOMStream(source, options);
@@ -11587,7 +11580,7 @@ function asyncIterableAsReadableDOMStream(source, options) {
11587
11580
  }
11588
11581
  }
11589
11582
 
11590
- // ../core/node_modules/apache-arrow/io/whatwg/builder.mjs
11583
+ // ../../node_modules/apache-arrow/io/whatwg/builder.mjs
11591
11584
  function builderThroughDOMStream(options) {
11592
11585
  return new BuilderTransform(options);
11593
11586
  }
@@ -11667,7 +11660,7 @@ var chunkByteLength = (chunk) => {
11667
11660
  return (_a5 = chunk === null || chunk === void 0 ? void 0 : chunk.byteLength) !== null && _a5 !== void 0 ? _a5 : 0;
11668
11661
  };
11669
11662
 
11670
- // ../core/node_modules/apache-arrow/io/whatwg/reader.mjs
11663
+ // ../../node_modules/apache-arrow/io/whatwg/reader.mjs
11671
11664
  function recordBatchReaderThroughDOMStream(writableStrategy, readableStrategy) {
11672
11665
  const queue = new AsyncByteQueue();
11673
11666
  let reader = null;
@@ -11709,7 +11702,7 @@ function recordBatchReaderThroughDOMStream(writableStrategy, readableStrategy) {
11709
11702
  }
11710
11703
  }
11711
11704
 
11712
- // ../core/node_modules/apache-arrow/io/whatwg/writer.mjs
11705
+ // ../../node_modules/apache-arrow/io/whatwg/writer.mjs
11713
11706
  function recordBatchWriterThroughDOMStream(writableStrategy, readableStrategy) {
11714
11707
  const writer = new this(writableStrategy);
11715
11708
  const reader = new AsyncByteStream(writer);
@@ -11747,7 +11740,7 @@ function recordBatchWriterThroughDOMStream(writableStrategy, readableStrategy) {
11747
11740
  }
11748
11741
  }
11749
11742
 
11750
- // ../core/node_modules/apache-arrow/ipc/serialization.mjs
11743
+ // ../../node_modules/apache-arrow/ipc/serialization.mjs
11751
11744
  function tableFromIPC(input2) {
11752
11745
  const reader = RecordBatchReader.from(input2);
11753
11746
  if (isPromise(reader)) {
@@ -11759,14 +11752,14 @@ function tableFromIPC(input2) {
11759
11752
  return new Table(reader.readAll());
11760
11753
  }
11761
11754
 
11762
- // ../core/node_modules/apache-arrow/Arrow.mjs
11755
+ // ../../node_modules/apache-arrow/Arrow.mjs
11763
11756
  var util = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, bn_exports), int_exports), bit_exports), math_exports), buffer_exports), vector_exports), pretty_exports), {
11764
11757
  compareSchemas,
11765
11758
  compareFields,
11766
11759
  compareTypes
11767
11760
  });
11768
11761
 
11769
- // ../core/node_modules/apache-arrow/Arrow.dom.mjs
11762
+ // ../../node_modules/apache-arrow/Arrow.dom.mjs
11770
11763
  adapters_default.toDOMStream = toDOMStream;
11771
11764
  Builder2["throughDOM"] = builderThroughDOMStream;
11772
11765
  RecordBatchReader["throughDOM"] = recordBatchReaderThroughDOMStream;
@@ -11832,11 +11825,9 @@ function socketConnector(uri = "ws://localhost:3000/") {
11832
11825
  }
11833
11826
  }
11834
11827
  function enqueue(query, resolve, reject) {
11835
- if (ws == null)
11836
- init();
11828
+ if (ws == null) init();
11837
11829
  queue.push({ query, resolve, reject });
11838
- if (connected && !request)
11839
- next();
11830
+ if (connected && !request) next();
11840
11831
  }
11841
11832
  function next() {
11842
11833
  if (queue.length) {
@@ -11861,13 +11852,11 @@ var Ref = class {
11861
11852
  /**
11862
11853
  * Create a new Ref instance.
11863
11854
  * @param {string|Ref|null} table The table name.
11864
- * @param {string|null} column The column name.
11855
+ * @param {string|null} [column] The column name.
11865
11856
  */
11866
11857
  constructor(table2, column2) {
11867
- if (table2)
11868
- this.table = String(table2);
11869
- if (column2)
11870
- this.column = column2;
11858
+ if (table2) this.table = String(table2);
11859
+ if (column2) this.column = column2;
11871
11860
  }
11872
11861
  /**
11873
11862
  * Get the list of referenced columns. Either a single element array
@@ -11906,7 +11895,7 @@ function asRelation(value) {
11906
11895
  function relation(name) {
11907
11896
  return new Ref(name);
11908
11897
  }
11909
- function column(table2, column2) {
11898
+ function column(table2, column2 = null) {
11910
11899
  if (arguments.length === 1) {
11911
11900
  column2 = table2;
11912
11901
  table2 = null;
@@ -11928,8 +11917,7 @@ function literalToSQL(value) {
11928
11917
  return "NULL";
11929
11918
  } else if (value instanceof Date) {
11930
11919
  const ts = +value;
11931
- if (Number.isNaN(ts))
11932
- return "NULL";
11920
+ if (Number.isNaN(ts)) return "NULL";
11933
11921
  const y2 = value.getUTCFullYear();
11934
11922
  const m = value.getUTCMonth();
11935
11923
  const d = value.getUTCDate();
@@ -11950,7 +11938,7 @@ function isSQLExpression(value) {
11950
11938
  var SQLExpression = class {
11951
11939
  /**
11952
11940
  * Create a new SQL expression instance.
11953
- * @param {(string|SQLExpression|Ref)[]} parts The parts of the expression.
11941
+ * @param {(string | ParamLike | SQLExpression | import('./ref.js').Ref)[]} parts The parts of the expression.
11954
11942
  * @param {string[]} [columns=[]] The column dependencies
11955
11943
  * @param {object} [props] Additional properties for this expression.
11956
11944
  */
@@ -12141,6 +12129,16 @@ var isInfinite = functionCall("ISINF");
12141
12129
 
12142
12130
  // ../sql/src/windows.js
12143
12131
  var WindowFunction = class _WindowFunction extends SQLExpression {
12132
+ /**
12133
+ * Create a new WindowFunction instance.
12134
+ * @param {string} op The window operation indicator.
12135
+ * @param {*} func The window function expression.
12136
+ * @param {*} [type] The SQL data type to cast to.
12137
+ * @param {string} [name] The window definition name.
12138
+ * @param {*} [group] Grouping (partition by) expressions.
12139
+ * @param {*} [order] Sorting (order by) expressions.
12140
+ * @param {*} [frame] The window frame definition.
12141
+ */
12144
12142
  constructor(op, func, type, name, group = "", order = "", frame = "") {
12145
12143
  let expr;
12146
12144
  const noWindowParams = !(group || order || frame);
@@ -12155,7 +12153,14 @@ var WindowFunction = class _WindowFunction extends SQLExpression {
12155
12153
  expr = sql`(${expr})::${type}`;
12156
12154
  }
12157
12155
  const { _expr, _deps } = expr;
12158
- super(_expr, _deps, { window: op, func, type, name, group, order, frame });
12156
+ super(_expr, _deps);
12157
+ this.window = op;
12158
+ this.func = func;
12159
+ this.type = type;
12160
+ this.name = name;
12161
+ this.group = group;
12162
+ this.order = order;
12163
+ this.frame = frame;
12159
12164
  }
12160
12165
  get basis() {
12161
12166
  return this.column;
@@ -12164,10 +12169,20 @@ var WindowFunction = class _WindowFunction extends SQLExpression {
12164
12169
  const { func } = this;
12165
12170
  return func.label ?? func.toString();
12166
12171
  }
12172
+ /**
12173
+ * Return an updated window function over a named window definition.
12174
+ * @param {string} name The window definition name.
12175
+ * @returns {WindowFunction} A new window function.
12176
+ */
12167
12177
  over(name) {
12168
12178
  const { window: op, func, type, group, order, frame } = this;
12169
12179
  return new _WindowFunction(op, func, type, name, group, order, frame);
12170
12180
  }
12181
+ /**
12182
+ * Return an updated window function with the given partitioning.
12183
+ * @param {*} expr The grouping (partition by) criteria for the window function.
12184
+ * @returns {WindowFunction} A new window function.
12185
+ */
12171
12186
  partitionby(...expr) {
12172
12187
  const exprs = expr.flat().filter((x2) => x2).map(asColumn);
12173
12188
  const group = sql(
@@ -12177,6 +12192,11 @@ var WindowFunction = class _WindowFunction extends SQLExpression {
12177
12192
  const { window: op, func, type, name, order, frame } = this;
12178
12193
  return new _WindowFunction(op, func, type, name, group, order, frame);
12179
12194
  }
12195
+ /**
12196
+ * Return an updated window function with the given ordering.
12197
+ * @param {*} expr The sorting (order by) criteria for the window function.
12198
+ * @returns {WindowFunction} A new window function.
12199
+ */
12180
12200
  orderby(...expr) {
12181
12201
  const exprs = expr.flat().filter((x2) => x2).map(asColumn);
12182
12202
  const order = sql(
@@ -12186,11 +12206,21 @@ var WindowFunction = class _WindowFunction extends SQLExpression {
12186
12206
  const { window: op, func, type, name, group, frame } = this;
12187
12207
  return new _WindowFunction(op, func, type, name, group, order, frame);
12188
12208
  }
12209
+ /**
12210
+ * Return an updated window function with the given rows frame.
12211
+ * @param {(number|null)[] | import('./expression.js').ParamLike} expr The row-based window frame.
12212
+ * @returns {WindowFunction} A new window function.
12213
+ */
12189
12214
  rows(expr) {
12190
12215
  const frame = windowFrame("ROWS", expr);
12191
12216
  const { window: op, func, type, name, group, order } = this;
12192
12217
  return new _WindowFunction(op, func, type, name, group, order, frame);
12193
12218
  }
12219
+ /**
12220
+ * Return an updated window function with the given range frame.
12221
+ * @param {(number|null)[] | import('./expression.js').ParamLike} expr The range-based window frame.
12222
+ * @returns {WindowFunction} A new window function.
12223
+ */
12194
12224
  range(expr) {
12195
12225
  const frame = windowFrame("RANGE", expr);
12196
12226
  const { window: op, func, type, name, group, order } = this;
@@ -12231,11 +12261,24 @@ var nth_value = winf("NTH_VALUE");
12231
12261
 
12232
12262
  // ../sql/src/aggregates.js
12233
12263
  var AggregateFunction = class _AggregateFunction extends SQLExpression {
12264
+ /**
12265
+ * Create a new AggregateFunction instance.
12266
+ * @param {*} op The aggregate operation.
12267
+ * @param {*} [args] The aggregate function arguments.
12268
+ * @param {*} [type] The SQL data type to cast to.
12269
+ * @param {boolean} [isDistinct] Flag indicating if this is a distinct value aggregate.
12270
+ * @param {*} [filter] Filtering expression to apply prior to aggregation.
12271
+ */
12234
12272
  constructor(op, args, type, isDistinct2, filter) {
12235
12273
  args = (args || []).map(asColumn);
12236
12274
  const { strings, exprs } = aggExpr(op, args, type, isDistinct2, filter);
12237
12275
  const { spans, cols } = parseSQL(strings, exprs);
12238
- super(spans, cols, { aggregate: op, args, type, isDistinct: isDistinct2, filter });
12276
+ super(spans, cols);
12277
+ this.aggregate = op;
12278
+ this.args = args;
12279
+ this.type = type;
12280
+ this.isDistinct = isDistinct2;
12281
+ this.filter = filter;
12239
12282
  }
12240
12283
  get basis() {
12241
12284
  return this.column;
@@ -12246,30 +12289,63 @@ var AggregateFunction = class _AggregateFunction extends SQLExpression {
12246
12289
  const tail = args.length ? `(${dist}${args.map(unquoted).join(", ")})` : "";
12247
12290
  return `${op.toLowerCase()}${tail}`;
12248
12291
  }
12292
+ /**
12293
+ * Return a new derived aggregate function over distinct values.
12294
+ * @returns {AggregateFunction} A new aggregate function.
12295
+ */
12249
12296
  distinct() {
12250
12297
  const { aggregate: op, args, type, filter } = this;
12251
12298
  return new _AggregateFunction(op, args, type, true, filter);
12252
12299
  }
12300
+ /**
12301
+ * Return a new derived aggregate function that filters values.
12302
+ * @param {*} filter The filter expresion.
12303
+ * @returns {AggregateFunction} A new aggregate function.
12304
+ */
12253
12305
  where(filter) {
12254
12306
  const { aggregate: op, args, type, isDistinct: isDistinct2 } = this;
12255
12307
  return new _AggregateFunction(op, args, type, isDistinct2, filter);
12256
12308
  }
12309
+ /**
12310
+ * Return a new window function over this aggregate.
12311
+ * @returns {WindowFunction} A new aggregate function.
12312
+ */
12257
12313
  window() {
12258
12314
  const { aggregate: op, args, type, isDistinct: isDistinct2 } = this;
12259
12315
  const func = new _AggregateFunction(op, args, null, isDistinct2);
12260
12316
  return new WindowFunction(op, func, type);
12261
12317
  }
12318
+ /**
12319
+ * Return a window function over this aggregate with the given partitioning.
12320
+ * @param {*} expr The grouping (partition by) criteria for the window function.
12321
+ * @returns {WindowFunction} A new window function.
12322
+ */
12262
12323
  partitionby(...expr) {
12263
12324
  return this.window().partitionby(...expr);
12264
12325
  }
12326
+ /**
12327
+ * Return a window function over this aggregate with the given ordering.
12328
+ * @param {*} expr The sorting (order by) criteria for the window function.
12329
+ * @returns {WindowFunction} A new window function.
12330
+ */
12265
12331
  orderby(...expr) {
12266
12332
  return this.window().orderby(...expr);
12267
12333
  }
12268
- rows(prev, next) {
12269
- return this.window().rows(prev, next);
12334
+ /**
12335
+ * Return a window function over this aggregate with the given row frame.
12336
+ * @param {(number|null)[] | import('./expression.js').ParamLike} frame The row-based window frame.
12337
+ * @returns {WindowFunction} A new window function.
12338
+ */
12339
+ rows(frame) {
12340
+ return this.window().rows(frame);
12270
12341
  }
12271
- range(prev, next) {
12272
- return this.window().range(prev, next);
12342
+ /**
12343
+ * Return a window function over this aggregate with the given range frame.
12344
+ * @param {(number|null)[] | import('./expression.js').ParamLike} frame The range-based window frame.
12345
+ * @returns {WindowFunction} A new window function.
12346
+ */
12347
+ range(frame) {
12348
+ return this.window().range(frame);
12273
12349
  }
12274
12350
  };
12275
12351
  function aggExpr(op, args, type, isDistinct2, filter) {
@@ -12386,12 +12462,22 @@ var Query = class _Query {
12386
12462
  qualify: [],
12387
12463
  orderby: []
12388
12464
  };
12465
+ this.cteFor = null;
12389
12466
  }
12390
12467
  clone() {
12391
12468
  const q = new _Query();
12392
12469
  q.query = { ...this.query };
12393
12470
  return q;
12394
12471
  }
12472
+ /**
12473
+ * Retrieve current WITH common table expressions (CTEs).
12474
+ * @returns {any[]}
12475
+ */
12476
+ /**
12477
+ * Add WITH common table expressions (CTEs).
12478
+ * @param {...any} expr Expressions to add.
12479
+ * @returns {this}
12480
+ */
12395
12481
  with(...expr) {
12396
12482
  const { query } = this;
12397
12483
  if (expr.length === 0) {
@@ -12417,6 +12503,15 @@ var Query = class _Query {
12417
12503
  return this;
12418
12504
  }
12419
12505
  }
12506
+ /**
12507
+ * Retrieve current SELECT expressions.
12508
+ * @returns {any[]}
12509
+ */
12510
+ /**
12511
+ * Add SELECT expressions.
12512
+ * @param {...any} expr Expressions to add.
12513
+ * @returns {this}
12514
+ */
12420
12515
  select(...expr) {
12421
12516
  const { query } = this;
12422
12517
  if (expr.length === 0) {
@@ -12449,6 +12544,15 @@ var Query = class _Query {
12449
12544
  this.query.distinct = !!value;
12450
12545
  return this;
12451
12546
  }
12547
+ /**
12548
+ * Retrieve current from expressions.
12549
+ * @returns {any[]}
12550
+ */
12551
+ /**
12552
+ * Provide table from expressions.
12553
+ * @param {...any} expr
12554
+ * @returns {this}
12555
+ */
12452
12556
  from(...expr) {
12453
12557
  const { query } = this;
12454
12558
  if (expr.length === 0) {
@@ -12479,6 +12583,16 @@ var Query = class _Query {
12479
12583
  this.query.from = [];
12480
12584
  return this.from(...expr);
12481
12585
  }
12586
+ /**
12587
+ * Retrieve current SAMPLE settings.
12588
+ * @returns {any[]}
12589
+ */
12590
+ /**
12591
+ * Set SAMPLE settings.
12592
+ * @param {number|object} value The percentage or number of rows to sample.
12593
+ * @param {string} [method] The sampling method to use.
12594
+ * @returns {this}
12595
+ */
12482
12596
  sample(value, method) {
12483
12597
  const { query } = this;
12484
12598
  if (arguments.length === 0) {
@@ -12492,6 +12606,15 @@ var Query = class _Query {
12492
12606
  return this;
12493
12607
  }
12494
12608
  }
12609
+ /**
12610
+ * Retrieve current WHERE expressions.
12611
+ * @returns {any[]}
12612
+ */
12613
+ /**
12614
+ * Add WHERE expressions.
12615
+ * @param {...any} expr Expressions to add.
12616
+ * @returns {this}
12617
+ */
12495
12618
  where(...expr) {
12496
12619
  const { query } = this;
12497
12620
  if (expr.length === 0) {
@@ -12507,6 +12630,15 @@ var Query = class _Query {
12507
12630
  this.query.where = [];
12508
12631
  return this.where(...expr);
12509
12632
  }
12633
+ /**
12634
+ * Retrieve current GROUP BY expressions.
12635
+ * @returns {any[]}
12636
+ */
12637
+ /**
12638
+ * Add GROUP BY expressions.
12639
+ * @param {...any} expr Expressions to add.
12640
+ * @returns {this}
12641
+ */
12510
12642
  groupby(...expr) {
12511
12643
  const { query } = this;
12512
12644
  if (expr.length === 0) {
@@ -12522,6 +12654,15 @@ var Query = class _Query {
12522
12654
  this.query.groupby = [];
12523
12655
  return this.groupby(...expr);
12524
12656
  }
12657
+ /**
12658
+ * Retrieve current HAVING expressions.
12659
+ * @returns {any[]}
12660
+ */
12661
+ /**
12662
+ * Add HAVING expressions.
12663
+ * @param {...any} expr Expressions to add.
12664
+ * @returns {this}
12665
+ */
12525
12666
  having(...expr) {
12526
12667
  const { query } = this;
12527
12668
  if (expr.length === 0) {
@@ -12533,6 +12674,15 @@ var Query = class _Query {
12533
12674
  return this;
12534
12675
  }
12535
12676
  }
12677
+ /**
12678
+ * Retrieve current WINDOW definitions.
12679
+ * @returns {any[]}
12680
+ */
12681
+ /**
12682
+ * Add WINDOW definitions.
12683
+ * @param {...any} expr Expressions to add.
12684
+ * @returns {this}
12685
+ */
12536
12686
  window(...expr) {
12537
12687
  const { query } = this;
12538
12688
  if (expr.length === 0) {
@@ -12551,6 +12701,15 @@ var Query = class _Query {
12551
12701
  return this;
12552
12702
  }
12553
12703
  }
12704
+ /**
12705
+ * Retrieve current QUALIFY expressions.
12706
+ * @returns {any[]}
12707
+ */
12708
+ /**
12709
+ * Add QUALIFY expressions.
12710
+ * @param {...any} expr Expressions to add.
12711
+ * @returns {this}
12712
+ */
12554
12713
  qualify(...expr) {
12555
12714
  const { query } = this;
12556
12715
  if (expr.length === 0) {
@@ -12562,6 +12721,15 @@ var Query = class _Query {
12562
12721
  return this;
12563
12722
  }
12564
12723
  }
12724
+ /**
12725
+ * Retrieve current ORDER BY expressions.
12726
+ * @returns {any[]}
12727
+ */
12728
+ /**
12729
+ * Add ORDER BY expressions.
12730
+ * @param {...any} expr Expressions to add.
12731
+ * @returns {this}
12732
+ */
12565
12733
  orderby(...expr) {
12566
12734
  const { query } = this;
12567
12735
  if (expr.length === 0) {
@@ -12573,6 +12741,15 @@ var Query = class _Query {
12573
12741
  return this;
12574
12742
  }
12575
12743
  }
12744
+ /**
12745
+ * Retrieve current LIMIT value.
12746
+ * @returns {number|null}
12747
+ */
12748
+ /**
12749
+ * Set the query result LIMIT.
12750
+ * @param {number} value The limit value.
12751
+ * @returns {this}
12752
+ */
12576
12753
  limit(value) {
12577
12754
  const { query } = this;
12578
12755
  if (arguments.length === 0) {
@@ -12582,6 +12759,15 @@ var Query = class _Query {
12582
12759
  return this;
12583
12760
  }
12584
12761
  }
12762
+ /**
12763
+ * Retrieve current OFFSET value.
12764
+ * @returns {number|null}
12765
+ */
12766
+ /**
12767
+ * Set the query result OFFSET.
12768
+ * @param {number} value The offset value.
12769
+ * @returns {this}
12770
+ */
12585
12771
  offset(value) {
12586
12772
  const { query } = this;
12587
12773
  if (arguments.length === 0) {
@@ -12640,8 +12826,7 @@ var Query = class _Query {
12640
12826
  }
12641
12827
  if (where.length) {
12642
12828
  const clauses = where.map(String).filter((x2) => x2).join(" AND ");
12643
- if (clauses)
12644
- sql2.push(`WHERE ${clauses}`);
12829
+ if (clauses) sql2.push(`WHERE ${clauses}`);
12645
12830
  }
12646
12831
  if (sample) {
12647
12832
  const { rows, perc, method, seed } = sample;
@@ -12654,8 +12839,7 @@ var Query = class _Query {
12654
12839
  }
12655
12840
  if (having.length) {
12656
12841
  const clauses = having.map(String).filter((x2) => x2).join(" AND ");
12657
- if (clauses)
12658
- sql2.push(`HAVING ${clauses}`);
12842
+ if (clauses) sql2.push(`HAVING ${clauses}`);
12659
12843
  }
12660
12844
  if (window.length) {
12661
12845
  const windows = window.map(({ as, expr }) => `"${as}" AS (${expr})`);
@@ -12663,8 +12847,7 @@ var Query = class _Query {
12663
12847
  }
12664
12848
  if (qualify.length) {
12665
12849
  const clauses = qualify.map(String).filter((x2) => x2).join(" AND ");
12666
- if (clauses)
12667
- sql2.push(`QUALIFY ${clauses}`);
12850
+ if (clauses) sql2.push(`QUALIFY ${clauses}`);
12668
12851
  }
12669
12852
  if (orderby.length) {
12670
12853
  sql2.push(`ORDER BY ${orderby.join(", ")}`);
@@ -12683,6 +12866,7 @@ var SetOperation = class _SetOperation {
12683
12866
  this.op = op;
12684
12867
  this.queries = queries.map((q) => q.clone());
12685
12868
  this.query = { orderby: [] };
12869
+ this.cteFor = null;
12686
12870
  }
12687
12871
  clone() {
12688
12872
  const q = new _SetOperation(this.op, this.queries);
@@ -12720,8 +12904,7 @@ var SetOperation = class _SetOperation {
12720
12904
  }
12721
12905
  get subqueries() {
12722
12906
  const { queries, cteFor } = this;
12723
- if (cteFor)
12724
- queries.forEach((q) => q.cteFor = cteFor);
12907
+ if (cteFor) queries.forEach((q) => q.cteFor = cteFor);
12725
12908
  return queries;
12726
12909
  }
12727
12910
  toString() {
@@ -12762,7 +12945,7 @@ function scaleLinear() {
12762
12945
  sqlInvert: identity
12763
12946
  };
12764
12947
  }
12765
- function scaleLog({ base } = {}) {
12948
+ function scaleLog({ base = null } = {}) {
12766
12949
  if (base == null || base === Math.E) {
12767
12950
  return {
12768
12951
  apply: Math.log,
@@ -12850,8 +13033,7 @@ function fnv_hash(v) {
12850
13033
  for (let i = 0, n = v.length; i < n; ++i) {
12851
13034
  const c = v.charCodeAt(i);
12852
13035
  const d = c & 65280;
12853
- if (d)
12854
- a = fnv_multiply(a ^ d >> 8);
13036
+ if (d) a = fnv_multiply(a ^ d >> 8);
12855
13037
  a = fnv_multiply(a ^ c & 255);
12856
13038
  }
12857
13039
  return fnv_mix(a);
@@ -12902,27 +13084,22 @@ var DataCubeIndexer = class {
12902
13084
  this.activeView = null;
12903
13085
  this.clear();
12904
13086
  }
12905
- if (!this.enabled)
12906
- return false;
13087
+ if (!this.enabled) return false;
12907
13088
  active = active || this.selection.active;
12908
13089
  const { source } = active;
12909
- if (source && source === this.activeView?.source)
12910
- return true;
13090
+ if (source && source === this.activeView?.source) return true;
12911
13091
  this.clear();
12912
- if (!source)
12913
- return false;
13092
+ if (!source) return false;
12914
13093
  const activeView = this.activeView = getActiveView(active);
12915
- if (!activeView)
12916
- return false;
13094
+ if (!activeView) return false;
12917
13095
  this.mc.logger().warn("DATA CUBE INDEX CONSTRUCTION");
12918
13096
  const sel = this.selection.remove(source);
12919
13097
  const indices = this.indices = /* @__PURE__ */ new Map();
12920
13098
  const { mc, temp } = this;
12921
13099
  for (const client of clients) {
12922
- if (sel.skip(client, active))
12923
- continue;
13100
+ if (sel.skip(client, active)) continue;
12924
13101
  const index = getIndexColumns(client);
12925
- const query = client.query(sel.predicate(client)).select({ ...activeView.columns, ...index.count }).groupby(Object.keys(activeView.columns));
13102
+ const query = client.query(sel.predicate(client)).select({ ...activeView.columns, ...index.aux }).groupby(Object.keys(activeView.columns));
12926
13103
  const [subq] = query.subqueries;
12927
13104
  if (subq) {
12928
13105
  const cols = Object.values(activeView.columns).map((c) => c.columns[0]);
@@ -12936,6 +13113,7 @@ var DataCubeIndexer = class {
12936
13113
  const result = mc.exec(create(table2, sql2, { temp }));
12937
13114
  indices.set(client, { table: table2, result, order, ...index });
12938
13115
  }
13116
+ return true;
12939
13117
  }
12940
13118
  async update() {
12941
13119
  const { clients, selection, activeView } = this;
@@ -12946,8 +13124,7 @@ var DataCubeIndexer = class {
12946
13124
  }
12947
13125
  async updateClient(client, filter) {
12948
13126
  const index = this.indices.get(client);
12949
- if (!index)
12950
- return;
13127
+ if (!index) return;
12951
13128
  if (!filter) {
12952
13129
  filter = this.activeView.predicate(this.selection.active.predicate);
12953
13130
  }
@@ -12959,14 +13136,12 @@ var DataCubeIndexer = class {
12959
13136
  function getActiveView(clause) {
12960
13137
  const { source, schema } = clause;
12961
13138
  let columns = clause.predicate?.columns;
12962
- if (!schema || !columns)
12963
- return null;
13139
+ if (!schema || !columns) return null;
12964
13140
  const { type, scales: scales2, pixelSize = 1 } = schema;
12965
13141
  let predicate;
12966
13142
  if (type === "interval" && scales2) {
12967
13143
  const bins = scales2.map((s) => binInterval(s, pixelSize));
12968
- if (bins.some((b) => b == null))
12969
- return null;
13144
+ if (bins.some((b) => b == null)) return null;
12970
13145
  if (bins.length === 1) {
12971
13146
  predicate = (p) => p ? isBetween("active0", p.range.map(bins[0])) : [];
12972
13147
  columns = { active0: bins[0](clause.predicate.field) };
@@ -12997,70 +13172,71 @@ function binInterval(scale, pixelSize) {
12997
13172
  }
12998
13173
  var NO_INDEX = { from: NaN };
12999
13174
  function getIndexColumns(client) {
13000
- if (!client.filterIndexable)
13001
- return NO_INDEX;
13175
+ if (!client.filterIndexable) return NO_INDEX;
13002
13176
  const q = client.query();
13003
13177
  const from = getBaseTable(q);
13004
- if (!from || !q.groupby)
13005
- return NO_INDEX;
13178
+ if (!from || !q.groupby) return NO_INDEX;
13006
13179
  const g = new Set(q.groupby().map((c) => c.column));
13007
13180
  const aggr = [];
13008
13181
  const dims = [];
13009
- let count2;
13010
- for (const { as, expr: { aggregate } } of q.select()) {
13011
- switch (aggregate?.toUpperCase?.()) {
13182
+ const aux = {};
13183
+ let auxAs;
13184
+ for (const entry of q.select()) {
13185
+ const { as, expr: { aggregate, args } } = entry;
13186
+ const op = aggregate?.toUpperCase?.();
13187
+ switch (op) {
13012
13188
  case "COUNT":
13013
13189
  case "SUM":
13014
13190
  aggr.push({ [as]: sql`SUM("${as}")::DOUBLE` });
13015
13191
  break;
13016
13192
  case "AVG":
13017
- count2 = "_count_";
13018
- aggr.push({ [as]: sql`(SUM("${as}" * ${count2}) / SUM(${count2}))::DOUBLE` });
13193
+ aux[auxAs = "__count__"] = sql`COUNT(*)`;
13194
+ aggr.push({ [as]: sql`(SUM("${as}" * ${auxAs}) / SUM(${auxAs}))::DOUBLE` });
13019
13195
  break;
13020
- case "MAX":
13021
- aggr.push({ [as]: sql`MAX("${as}")` });
13196
+ case "ARG_MAX":
13197
+ aux[auxAs = `__max_${as}__`] = sql`MAX(${args[1]})`;
13198
+ aggr.push({ [as]: sql`ARG_MAX("${as}", ${auxAs})` });
13199
+ break;
13200
+ case "ARG_MIN":
13201
+ aux[auxAs = `__min_${as}__`] = sql`MIN(${args[1]})`;
13202
+ aggr.push({ [as]: sql`ARG_MIN("${as}", ${auxAs})` });
13022
13203
  break;
13204
+ case "MAX":
13023
13205
  case "MIN":
13024
- aggr.push({ [as]: sql`MIN("${as}")` });
13206
+ case "BIT_AND":
13207
+ case "BIT_OR":
13208
+ case "BIT_XOR":
13209
+ case "BOOL_AND":
13210
+ case "BOOL_OR":
13211
+ case "PRODUCT":
13212
+ aggr.push({ [as]: sql`${op}("${as}")` });
13025
13213
  break;
13026
13214
  default:
13027
- if (g.has(as))
13028
- dims.push(as);
13029
- else
13030
- return null;
13215
+ if (g.has(as)) dims.push(as);
13216
+ else return null;
13031
13217
  }
13032
13218
  }
13033
- return {
13034
- aggr,
13035
- dims,
13036
- count: count2 ? { [count2]: sql`COUNT(*)` } : {},
13037
- from
13038
- };
13219
+ return { aggr, dims, aux, from };
13039
13220
  }
13040
13221
  function getBaseTable(query) {
13041
13222
  const subq = query.subqueries;
13042
13223
  if (query.select) {
13043
13224
  const from = query.from();
13044
- if (!from.length)
13045
- return void 0;
13046
- if (subq.length === 0)
13047
- return from[0].from.table;
13225
+ if (!from.length) return void 0;
13226
+ if (subq.length === 0) return from[0].from.table;
13048
13227
  }
13049
13228
  const base = getBaseTable(subq[0]);
13050
13229
  for (let i = 1; i < subq.length; ++i) {
13051
13230
  const from = getBaseTable(subq[i]);
13052
- if (from === void 0)
13053
- continue;
13054
- if (from !== base)
13055
- return NaN;
13231
+ if (from === void 0) continue;
13232
+ if (from !== base) return NaN;
13056
13233
  }
13057
13234
  return base;
13058
13235
  }
13059
13236
  function subqueryPushdown(query, cols) {
13060
13237
  const memo = /* @__PURE__ */ new Set();
13061
13238
  const pushdown = (q) => {
13062
- if (memo.has(q))
13063
- return;
13239
+ if (memo.has(q)) return;
13064
13240
  memo.add(q);
13065
13241
  if (q.select && q.from().length) {
13066
13242
  q.select(cols);
@@ -13108,9 +13284,15 @@ var FilterGroup = class {
13108
13284
  }
13109
13285
  return this;
13110
13286
  }
13287
+ /**
13288
+ * Internal method to process a selection update.
13289
+ * The return value is passed as a selection callback value.
13290
+ * @returns {Promise} A Promise that resolves when the update completes.
13291
+ */
13111
13292
  update() {
13112
13293
  const { mc, indexer, clients, selection } = this;
13113
- return indexer?.index(clients) ? indexer.update() : defaultUpdate(mc, clients, selection);
13294
+ const hasIndex = indexer?.index(clients);
13295
+ return hasIndex ? indexer.update() : defaultUpdate(mc, clients, selection);
13114
13296
  }
13115
13297
  };
13116
13298
  function defaultUpdate(mc, clients, selection) {
@@ -13130,9 +13312,10 @@ function queryResult() {
13130
13312
  resolve = r;
13131
13313
  reject = e;
13132
13314
  });
13133
- p.fulfill = (value) => (resolve(value), p);
13134
- p.reject = (err) => (reject(err), p);
13135
- return p;
13315
+ return Object.assign(p, {
13316
+ fulfill: (value) => (resolve(value), p),
13317
+ reject: (err) => (reject(err), p)
13318
+ });
13136
13319
  }
13137
13320
 
13138
13321
  // ../core/src/QueryConsolidator.js
@@ -13181,7 +13364,11 @@ function entryGroups(entries, cache) {
13181
13364
  function consolidationKey(query, cache) {
13182
13365
  const sql2 = `${query}`;
13183
13366
  if (query instanceof Query && !cache.get(sql2)) {
13184
- if (query.orderby().length || query.where().length || query.qualify().length || query.having().length) {
13367
+ if (
13368
+ // @ts-ignore
13369
+ query.orderby().length || query.where().length || // @ts-ignore
13370
+ query.qualify().length || query.having().length
13371
+ ) {
13185
13372
  return sql2;
13186
13373
  }
13187
13374
  const q = query.clone().$select("*");
@@ -13252,8 +13439,7 @@ function consolidatedQuery(group, record) {
13252
13439
  }
13253
13440
  async function processResults(group, cache) {
13254
13441
  const { maps, query, result } = group;
13255
- if (!maps)
13256
- return;
13442
+ if (!maps) return;
13257
13443
  let data;
13258
13444
  try {
13259
13445
  data = await result;
@@ -13335,8 +13521,7 @@ function lruCache({
13335
13521
  },
13336
13522
  set(key, value) {
13337
13523
  cache.set(key, { last: performance.now(), value });
13338
- if (cache.size > max2)
13339
- requestIdle(evict);
13524
+ if (cache.size > max2) requestIdle(evict);
13340
13525
  return value;
13341
13526
  },
13342
13527
  clear() {
@@ -13394,8 +13579,7 @@ function priorityQueue(ranks) {
13394
13579
  } else {
13395
13580
  prev.next = curr.next;
13396
13581
  }
13397
- if (curr === tail)
13398
- tail = prev || head;
13582
+ if (curr === tail) tail = prev || head;
13399
13583
  }
13400
13584
  }
13401
13585
  list.head = head;
@@ -13433,8 +13617,7 @@ function QueryManager() {
13433
13617
  let pending = null;
13434
13618
  let consolidate2;
13435
13619
  function next() {
13436
- if (pending || queue.isEmpty())
13437
- return;
13620
+ if (pending || queue.isEmpty()) return;
13438
13621
  const { request, result } = queue.next();
13439
13622
  pending = submit(request, result);
13440
13623
  pending.finally(() => {
@@ -13468,8 +13651,7 @@ function QueryManager() {
13468
13651
  }
13469
13652
  const t0 = performance.now();
13470
13653
  const data = await db.query({ type, sql: sql2, ...options });
13471
- if (cache)
13472
- clientCache.set(sql2, data);
13654
+ if (cache) clientCache.set(sql2, data);
13473
13655
  logger.debug(`Request: ${(performance.now() - t0).toFixed(1)}`);
13474
13656
  result.fulfill(data);
13475
13657
  } catch (err) {
@@ -13563,6 +13745,7 @@ function jsType(type) {
13563
13745
  return "boolean";
13564
13746
  case "VARCHAR":
13565
13747
  case "UUID":
13748
+ case "JSON":
13566
13749
  return "string";
13567
13750
  case "ARRAY":
13568
13751
  case "LIST":
@@ -13585,18 +13768,14 @@ function jsType(type) {
13585
13768
  }
13586
13769
 
13587
13770
  // ../core/src/util/convert-arrow.js
13588
- var INTEGER = 2;
13589
- var DECIMAL = 7;
13590
- var TIMESTAMP = 10;
13591
13771
  function convertArrowValue(type) {
13592
- const { typeId } = type;
13593
- if (typeId === TIMESTAMP) {
13772
+ if (DataType.isTimestamp(type)) {
13594
13773
  return (v) => v == null ? v : new Date(v);
13595
13774
  }
13596
- if (typeId === INTEGER && type.bitWidth >= 64) {
13775
+ if (DataType.isInt(type) && type.bitWidth >= 64) {
13597
13776
  return (v) => v == null ? v : Number(v);
13598
13777
  }
13599
- if (typeId === DECIMAL) {
13778
+ if (DataType.isDecimal(type)) {
13600
13779
  const scale = 1 / Math.pow(10, type.scale);
13601
13780
  return (v) => v == null ? v : decimalToNumber(v, scale);
13602
13781
  }
@@ -13611,7 +13790,7 @@ function decimalToNumber(v, scale) {
13611
13790
  let x2 = 0;
13612
13791
  if (v.signed && (v[n - 1] | 0) < 0) {
13613
13792
  for (let i = 0; i < n; ++i) {
13614
- x2 += ~(v[i] | 0) * BASE32[i];
13793
+ x2 += ~v[i] * BASE32[i];
13615
13794
  }
13616
13795
  x2 = -(x2 + 1);
13617
13796
  } else {
@@ -13655,8 +13834,7 @@ async function getFieldInfo(mc, { table: table2, column: column2, stats }) {
13655
13834
  type: jsType(desc2.column_type),
13656
13835
  nullable: desc2.null === "YES"
13657
13836
  };
13658
- if (!(stats?.length || stats?.size))
13659
- return info;
13837
+ if (!(stats?.length || stats?.size)) return info;
13660
13838
  const result = await mc.query(
13661
13839
  summarize(table2, column2, stats),
13662
13840
  { persist: true }
@@ -13725,7 +13903,15 @@ var Coordinator = class {
13725
13903
  }
13726
13904
  return this._logger;
13727
13905
  }
13728
- configure({ cache = true, consolidate: consolidate2 = true, indexes = true }) {
13906
+ /**
13907
+ * Set configuration options for this coordinator.
13908
+ * @param {object} [options] Configration options.
13909
+ * @param {boolean} [options.cache=true] Boolean flag to enable/disable query caching.
13910
+ * @param {boolean} [options.consolidate=true] Boolean flag to enable/disable query consolidation.
13911
+ * @param {boolean|object} [options.indexes=true] Boolean flag to enable/disable
13912
+ * automatic data cube indexes or an index options object.
13913
+ */
13914
+ configure({ cache = true, consolidate: consolidate2 = true, indexes = true } = {}) {
13729
13915
  this.manager.cache(cache);
13730
13916
  this.manager.consolidate(consolidate2);
13731
13917
  this.indexes = indexes;
@@ -13738,8 +13924,7 @@ var Coordinator = class {
13738
13924
  this.clients = /* @__PURE__ */ new Set();
13739
13925
  this.filterGroups = /* @__PURE__ */ new Map();
13740
13926
  }
13741
- if (cache)
13742
- this.manager.cache().clear();
13927
+ if (cache) this.manager.cache().clear();
13743
13928
  }
13744
13929
  databaseConnector(db) {
13745
13930
  return this.manager.connector(db);
@@ -13788,7 +13973,6 @@ var Coordinator = class {
13788
13973
  }
13789
13974
  /**
13790
13975
  * Connect a client to the coordinator.
13791
- *
13792
13976
  * @param {import('./MosaicClient.js').MosaicClient} client the client to disconnect
13793
13977
  */
13794
13978
  async connect(client) {
@@ -13820,8 +14004,7 @@ var Coordinator = class {
13820
14004
  */
13821
14005
  disconnect(client) {
13822
14006
  const { clients, filterGroups } = this;
13823
- if (!clients.has(client))
13824
- return;
14007
+ if (!clients.has(client)) return;
13825
14008
  clients.delete(client);
13826
14009
  filterGroups.get(client.filterBy)?.remove(client);
13827
14010
  client.coordinator = null;
@@ -13839,7 +14022,7 @@ var AsyncDispatch = class {
13839
14022
  /**
13840
14023
  * Add an event listener callback for the provided event type.
13841
14024
  * @param {string} type The event type.
13842
- * @param {(value: *) => Promise?} callback The event handler
14025
+ * @param {(value: *) => void | Promise} callback The event handler
13843
14026
  * callback function to add. If the callback has already been
13844
14027
  * added for the event type, this method has no effect.
13845
14028
  */
@@ -13857,7 +14040,7 @@ var AsyncDispatch = class {
13857
14040
  /**
13858
14041
  * Remove an event listener callback for the provided event type.
13859
14042
  * @param {string} type The event type.
13860
- * @param {(value: *) => Promise?} callback The event handler
14043
+ * @param {(value: *) => void | Promise} callback The event handler
13861
14044
  * callback function to remove.
13862
14045
  */
13863
14046
  removeEventListener(type, callback) {
@@ -13884,11 +14067,12 @@ var AsyncDispatch = class {
13884
14067
  * This default implementation simply returns null, indicating that
13885
14068
  * any other unemitted event values should be dropped (that is, all
13886
14069
  * queued events are filtered)
14070
+ * @param {string} type The event type.
13887
14071
  * @param {*} value The new event value that will be enqueued.
13888
14072
  * @returns {(value: *) => boolean|null} A dispatch queue filter
13889
14073
  * function, or null if all unemitted event values should be filtered.
13890
14074
  */
13891
- emitQueueFilter() {
14075
+ emitQueueFilter(type, value) {
13892
14076
  return null;
13893
14077
  }
13894
14078
  /**
@@ -13916,13 +14100,13 @@ var AsyncDispatch = class {
13916
14100
  const event = this.willEmit(type, value);
13917
14101
  const { callbacks, queue } = entry;
13918
14102
  if (callbacks?.size) {
13919
- const promise = Promise.allSettled(Array.from(callbacks, (callback) => callback(event))).then(() => {
14103
+ const callbackValues = Array.from(callbacks, (cb) => cb(event));
14104
+ entry.pending = Promise.allSettled(callbackValues).then(() => {
13920
14105
  entry.pending = null;
13921
14106
  if (!queue.isEmpty()) {
13922
14107
  this.emit(type, queue.dequeue());
13923
14108
  }
13924
14109
  });
13925
- entry.pending = promise;
13926
14110
  }
13927
14111
  }
13928
14112
  }
@@ -13990,11 +14174,9 @@ function distinct(a, b) {
13990
14174
  return a === b ? false : a instanceof Date && b instanceof Date ? +a !== +b : Array.isArray(a) && Array.isArray(b) ? distinctArray(a, b) : true;
13991
14175
  }
13992
14176
  function distinctArray(a, b) {
13993
- if (a.length !== b.length)
13994
- return true;
14177
+ if (a.length !== b.length) return true;
13995
14178
  for (let i = 0; i < a.length; ++i) {
13996
- if (a[i] !== b[i])
13997
- return true;
14179
+ if (a[i] !== b[i]) return true;
13998
14180
  }
13999
14181
  return false;
14000
14182
  }
@@ -14029,7 +14211,9 @@ var Param = class _Param extends AsyncDispatch {
14029
14211
  static array(values) {
14030
14212
  if (values.some((v) => isParam(v))) {
14031
14213
  const p = new _Param();
14032
- const update2 = () => p.update(values.map((v) => isParam(v) ? v.value : v));
14214
+ const update2 = () => {
14215
+ p.update(values.map((v) => isParam(v) ? v.value : v));
14216
+ };
14033
14217
  update2();
14034
14218
  values.forEach((v) => isParam(v) ? v.addEventListener("value", update2) : 0);
14035
14219
  return p;
@@ -14135,7 +14319,7 @@ var Selection = class _Selection extends Param {
14135
14319
  }
14136
14320
  /**
14137
14321
  * Create a cloned copy of this Selection instance.
14138
- * @returns {this} A clone of this selection.
14322
+ * @returns {Selection} A clone of this selection.
14139
14323
  */
14140
14324
  clone() {
14141
14325
  const s = new _Selection(this._resolver);
@@ -14146,7 +14330,7 @@ var Selection = class _Selection extends Param {
14146
14330
  * Create a clone of this Selection with clauses corresponding
14147
14331
  * to the provided source removed.
14148
14332
  * @param {*} source The clause source to remove.
14149
- * @returns {this} A cloned and updated Selection.
14333
+ * @returns {Selection} A cloned and updated Selection.
14150
14334
  */
14151
14335
  remove(source) {
14152
14336
  const s = this.clone();
@@ -14215,9 +14399,9 @@ var Selection = class _Selection extends Param {
14215
14399
  * Upon value-typed updates, returns a dispatch queue filter function.
14216
14400
  * The return value depends on the selection resolution strategy.
14217
14401
  * @param {string} type The event type.
14218
- * @param {*} value The input event value.
14219
- * @returns {*} For value-typed events, returns a dispatch queue filter
14220
- * function. Otherwise returns null.
14402
+ * @param {*} value The new event value that will be enqueued.
14403
+ * @returns {(value: *) => boolean|null} For value-typed events,
14404
+ * returns a dispatch queue filter function. Otherwise returns null.
14221
14405
  */
14222
14406
  emitQueueFilter(type, value) {
14223
14407
  return type === "value" ? this._resolver.queueFilter(value) : null;
@@ -14271,10 +14455,8 @@ var SelectionResolver = class {
14271
14455
  const { source, predicate } = clause;
14272
14456
  const filtered = clauseList.filter((c) => source !== c.source);
14273
14457
  const clauses = this.single ? [] : filtered;
14274
- if (this.single && reset)
14275
- filtered.forEach((c) => c.source?.reset?.());
14276
- if (predicate)
14277
- clauses.push(clause);
14458
+ if (this.single && reset) filtered.forEach((c) => c.source?.reset?.());
14459
+ if (predicate) clauses.push(clause);
14278
14460
  return clauses;
14279
14461
  }
14280
14462
  /**
@@ -14297,8 +14479,7 @@ var SelectionResolver = class {
14297
14479
  */
14298
14480
  predicate(clauseList, active, client) {
14299
14481
  const { union } = this;
14300
- if (this.skip(client, active))
14301
- return void 0;
14482
+ if (this.skip(client, active)) return void 0;
14302
14483
  const predicates = clauseList.filter((clause) => !this.skip(client, clause)).map((clause) => clause.predicate);
14303
14484
  return union && predicates.length > 1 ? or(predicates) : predicates;
14304
14485
  }
@@ -14313,6 +14494,7 @@ var SelectionResolver = class {
14313
14494
  const source = value.active?.source;
14314
14495
  return (clauses) => clauses.active?.source !== source;
14315
14496
  }
14497
+ return null;
14316
14498
  }
14317
14499
  };
14318
14500
 
@@ -14329,6 +14511,10 @@ var isObject2 = (v) => {
14329
14511
  };
14330
14512
  var menu = (options) => input(Menu, options);
14331
14513
  var Menu = class extends MosaicClient {
14514
+ /**
14515
+ * Create a new Menu instance.
14516
+ * @param {object} options Options object
14517
+ */
14332
14518
  constructor({
14333
14519
  element,
14334
14520
  filterBy,
@@ -14358,8 +14544,7 @@ var Menu = class extends MosaicClient {
14358
14544
  this.update();
14359
14545
  }
14360
14546
  value = value ?? this.selection?.value ?? this.data?.[0]?.value;
14361
- if (this.selection?.value === void 0)
14362
- this.publish(value);
14547
+ if (this.selection?.value === void 0) this.publish(value);
14363
14548
  this.element.appendChild(this.select);
14364
14549
  if (this.selection) {
14365
14550
  this.select.addEventListener("input", () => {
@@ -14405,8 +14590,7 @@ var Menu = class extends MosaicClient {
14405
14590
  }
14406
14591
  query(filter = []) {
14407
14592
  const { from, column: column2 } = this;
14408
- if (!from)
14409
- return null;
14593
+ if (!from) return null;
14410
14594
  return Query.from(from).select({ value: column2 }).distinct().where(filter).orderby(column2);
14411
14595
  }
14412
14596
  queryResult(data) {
@@ -14434,6 +14618,10 @@ var FUNCTIONS = { contains, prefix, suffix, regexp: regexp_matches };
14434
14618
  var _id = 0;
14435
14619
  var search = (options) => input(Search, options);
14436
14620
  var Search = class extends MosaicClient {
14621
+ /**
14622
+ * Create a new Search instance.
14623
+ * @param {object} options Options object
14624
+ */
14437
14625
  constructor({
14438
14626
  element,
14439
14627
  filterBy,
@@ -14494,8 +14682,7 @@ var Search = class extends MosaicClient {
14494
14682
  }
14495
14683
  query(filter = []) {
14496
14684
  const { from, column: column2 } = this;
14497
- if (!from)
14498
- return null;
14685
+ if (!from) return null;
14499
14686
  return Query.from(from).select({ list: column2 }).distinct().where(filter);
14500
14687
  }
14501
14688
  queryResult(data) {
@@ -14511,8 +14698,7 @@ var Search = class extends MosaicClient {
14511
14698
  opt.setAttribute("value", d.list);
14512
14699
  list.append(opt);
14513
14700
  }
14514
- if (this.datalist)
14515
- this.datalist.remove();
14701
+ if (this.datalist) this.datalist.remove();
14516
14702
  this.element.appendChild(this.datalist = list);
14517
14703
  this.searchbox.setAttribute("list", id);
14518
14704
  return this;
@@ -14523,6 +14709,10 @@ var Search = class extends MosaicClient {
14523
14709
  var _id2 = 0;
14524
14710
  var slider = (options) => input(Slider, options);
14525
14711
  var Slider = class extends MosaicClient {
14712
+ /**
14713
+ * Create a new Slider instance.
14714
+ * @param {object} options Options object
14715
+ */
14526
14716
  constructor({
14527
14717
  element,
14528
14718
  filterBy,
@@ -14556,18 +14746,13 @@ var Slider = class extends MosaicClient {
14556
14746
  this.slider = document.createElement("input");
14557
14747
  this.slider.setAttribute("id", this.id);
14558
14748
  this.slider.setAttribute("type", "range");
14559
- if (width != null)
14560
- this.slider.style.width = `${+width}px`;
14561
- if (min2 != null)
14562
- this.slider.setAttribute("min", min2);
14563
- if (max2 != null)
14564
- this.slider.setAttribute("max", max2);
14565
- if (step != null)
14566
- this.slider.setAttribute("step", step);
14749
+ if (width != null) this.slider.style.width = `${+width}px`;
14750
+ if (min2 != null) this.slider.setAttribute("min", min2);
14751
+ if (max2 != null) this.slider.setAttribute("max", max2);
14752
+ if (step != null) this.slider.setAttribute("step", step);
14567
14753
  if (value != null) {
14568
14754
  this.slider.setAttribute("value", value);
14569
- if (this.selection?.value === void 0)
14570
- this.publish(value);
14755
+ if (this.selection?.value === void 0) this.publish(value);
14571
14756
  }
14572
14757
  this.element.appendChild(this.slider);
14573
14758
  if (this.selection) {
@@ -14585,18 +14770,14 @@ var Slider = class extends MosaicClient {
14585
14770
  }
14586
14771
  query(filter = []) {
14587
14772
  const { from, column: column2 } = this;
14588
- if (!from || this.min != null && this.max != null)
14589
- return null;
14773
+ if (!from || this.min != null && this.max != null) return null;
14590
14774
  return Query.select({ min: min(column2), max: max(column2) }).from(from).where(filter);
14591
14775
  }
14592
14776
  queryResult(data) {
14593
14777
  const { min: min2, max: max2 } = Array.from(data)[0];
14594
- if (this.min == null)
14595
- this.slider.setAttribute("min", min2);
14596
- if (this.max == null)
14597
- this.slider.setAttribute("max", max2);
14598
- if (this.step == null)
14599
- this.slider.setAttribute("step", (max2 - min2) / 500);
14778
+ if (this.min == null) this.slider.setAttribute("min", min2);
14779
+ if (this.max == null) this.slider.setAttribute("max", max2);
14780
+ if (this.step == null) this.slider.setAttribute("step", String((max2 - min2) / 500));
14600
14781
  return this;
14601
14782
  }
14602
14783
  publish(value) {
@@ -14616,10 +14797,8 @@ var Slider = class extends MosaicClient {
14616
14797
 
14617
14798
  // ../../node_modules/isoformat/src/format.js
14618
14799
  function format(date, fallback) {
14619
- if (!(date instanceof Date))
14620
- date = /* @__PURE__ */ new Date(+date);
14621
- if (isNaN(date))
14622
- return typeof fallback === "function" ? fallback(date) : fallback;
14800
+ if (!(date instanceof Date)) date = /* @__PURE__ */ new Date(+date);
14801
+ if (isNaN(date)) return typeof fallback === "function" ? fallback(date) : fallback;
14623
14802
  const hours = date.getUTCHours();
14624
14803
  const minutes = date.getUTCMinutes();
14625
14804
  const seconds = date.getUTCSeconds();
@@ -14647,7 +14826,8 @@ function formatDate(date) {
14647
14826
  return format(date, "Invalid Date");
14648
14827
  }
14649
14828
  function localize(f) {
14650
- let key = localize, value;
14829
+ let key = null;
14830
+ let value;
14651
14831
  return (locale = "en") => locale === key ? value : value = f(key = locale);
14652
14832
  }
14653
14833
 
@@ -14655,6 +14835,10 @@ function localize(f) {
14655
14835
  var _id3 = -1;
14656
14836
  var table = (options) => input(Table2, options);
14657
14837
  var Table2 = class extends MosaicClient {
14838
+ /**
14839
+ * Create a new Table instance.
14840
+ * @param {object} options Options object
14841
+ */
14658
14842
  constructor({
14659
14843
  element,
14660
14844
  filterBy,
@@ -14683,10 +14867,8 @@ var Table2 = class extends MosaicClient {
14683
14867
  this.element = element || document.createElement("div");
14684
14868
  this.element.setAttribute("id", this.id);
14685
14869
  this.element.value = this;
14686
- if (typeof width === "number")
14687
- this.element.style.width = `${width}px`;
14688
- if (maxWidth)
14689
- this.element.style.maxWidth = `${maxWidth}px`;
14870
+ if (typeof width === "number") this.element.style.width = `${width}px`;
14871
+ if (maxWidth) this.element.style.maxWidth = `${maxWidth}px`;
14690
14872
  this.element.style.maxHeight = `${height}px`;
14691
14873
  this.element.style.overflow = "auto";
14692
14874
  let prevScrollTop = -1;
@@ -14695,8 +14877,7 @@ var Table2 = class extends MosaicClient {
14695
14877
  const { scrollHeight, scrollTop, clientHeight } = evt.target;
14696
14878
  const back = scrollTop < prevScrollTop;
14697
14879
  prevScrollTop = scrollTop;
14698
- if (back || pending || loaded)
14699
- return;
14880
+ if (back || pending || loaded) return;
14700
14881
  if (scrollHeight - scrollTop < 2 * clientHeight) {
14701
14882
  this.pending = true;
14702
14883
  this.requestData(this.offset + this.limit);
@@ -14788,8 +14969,7 @@ var Table2 = class extends MosaicClient {
14788
14969
  this.sortHeader = null;
14789
14970
  this.sortColumn = null;
14790
14971
  } else {
14791
- if (currentHeader)
14792
- currentHeader.firstChild.textContent = "";
14972
+ if (currentHeader) currentHeader.firstChild.textContent = "";
14793
14973
  this.sortHeader = th;
14794
14974
  th.firstChild.textContent = this.sortDesc ? "\u25BE" : "\u25B4";
14795
14975
  }