@wavehouse/chtypes 0.2.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/ffi.js CHANGED
@@ -67,6 +67,22 @@ function unsupportedIfMissing(err, message) {
67
67
  throw new UnsupportedError(message);
68
68
  throw err;
69
69
  }
70
+ /**
71
+ * Serialize an INSERT column list to the `columns_json` the C ABI expects
72
+ * (revision 5; `chtypes.h`'s `chs_row` comment is the normative text). The
73
+ * header states NULL and `"[]"` are the SAME input — "an empty array NEVER
74
+ * renders as `()`: `INSERT INTO t () FORMAT X` is code 62 SYNTAX_ERROR on
75
+ * every line" — so this binding always sends `"[]"` for "no list" rather
76
+ * than a real C NULL: ffi-rs's `DataType.String` cannot carry one for an
77
+ * INPUT parameter (probed empirically against ffi-rs 1.3.7 — passing JS
78
+ * `null`/`undefined` throws before the native call is even made, and there
79
+ * is no documented, safe way to synthesize a null pointer for a `Str`-typed
80
+ * argument). `"[]"` is the ABI's own other spelling of "no list" and is
81
+ * therefore exactly as correct, never a rendered-SQL empty list.
82
+ */
83
+ function encodeColumns(columns) {
84
+ return columns === undefined || columns.length === 0 ? '[]' : JSON.stringify(columns);
85
+ }
70
86
  function asBuffer(bytes) {
71
87
  if (typeof bytes === 'string') {
72
88
  throw new ChtypesError('chtypes: row bodies must be a byte sequence, not a string: binary formats ' +
@@ -81,6 +97,30 @@ const readPtr = (s) => restorePointer({ retType: [External], paramsValue: s })[0
81
97
  const readInt = (s) => Number(restorePointer({ retType: [I32], paramsValue: s })[0] ?? 0);
82
98
  const dropPtrSlot = (s) => freePointer({ paramsType: [U64], paramsValue: s, pointerType: PointerType.RsPointer });
83
99
  const dropIntSlot = (s) => freePointer({ paramsType: [I32], paramsValue: s, pointerType: PointerType.RsPointer });
100
+ /**
101
+ * A NULL pointer, for an `External` parameter this binding has no value to
102
+ * supply — today, only `chs_rows`' attached row filter.
103
+ *
104
+ * `Str` cannot carry a NULL (see `encodeColumns`), but `External` can, and
105
+ * this is how: seed an 8-byte slot with 0, read it back as a pointer, and the
106
+ * value IS the null pointer. That was MEASURED against ffi-rs 1.3.7 rather
107
+ * than assumed — a C function reporting the address it received answers 0 for
108
+ * this value and a real address for a live slot — and the value is a copy, so
109
+ * it outlives the slot it came from and the slot is freed immediately.
110
+ */
111
+ const NULL_PTR = (() => {
112
+ const slot = ptrSlot();
113
+ const p = readPtr(slot);
114
+ dropPtrSlot(slot);
115
+ // Checked here rather than believed: a non-null value in this slot would
116
+ // hand the library a pointer to read a filter out of, and the symptom would
117
+ // be a crash inside the artifact with nothing pointing back here. Every
118
+ // import of this module runs the assertion, so no test has to remember it.
119
+ if (!isNullPointer(p)) {
120
+ throw new ChtypesError('chtypes: internal — the NULL pointer constant did not come back null');
121
+ }
122
+ return p;
123
+ })();
84
124
  // ------------------------------------------------------------ the symbol table
85
125
  function declare(library) {
86
126
  const d = (retType, paramsType) => ({ library, retType, paramsType });
@@ -95,7 +135,18 @@ function declare(library) {
95
135
  // Revision 3: export_format (int), doc_flags (unsigned — I32 carries the
96
136
  // three defined bits and any refused ones identically), out_bytes
97
137
  // (chs_bytes * — passed as a 16-byte scratch buffer, see `rows`).
98
- chs_rows: d(External, [External, I32, U8Array, U64, Str, I32, I32, U8Array]),
138
+ // Revision 5: chs_rows gains a trailing columns_json (the INSERT column
139
+ // list) — see `encodeColumns` for why this binding always sends "[]"
140
+ // rather than a real NULL for "no list" — and then, in the same open
141
+ // window, the attached row filter LAST: NULL_PTR for "no filter" (every
142
+ // plain `rows()` call, and `rows()` with no `options.rowFilter`), a real
143
+ // filter handle when `Schema#rows` was given one (`rows()`'s own
144
+ // spelling for RowsExportWith — docs/guides/filters.md "Exporting only
145
+ // the rows a filter admits"). The parameter was DECLARED before any
146
+ // caller could supply a value, because calling a ten-parameter symbol
147
+ // through a nine-parameter descriptor leaves the callee reading the
148
+ // filter slot from whatever happened to occupy it.
149
+ chs_rows: d(External, [External, I32, U8Array, U64, Str, I32, I32, U8Array, Str, External]),
99
150
  // Everything else is optional and degrades to `unsupported` at call time.
100
151
  chs_free: d(Void, [External]),
101
152
  chs_shutdown: d(Void, []),
@@ -112,8 +163,16 @@ function declare(library) {
112
163
  chs_schema_column_default_kind: d(Str, [External, I32]),
113
164
  chs_schema_column_default_expr: d(Str, [External, I32]),
114
165
  chs_schema_column_default_is_literal: d(I32, [External, I32]),
115
- chs_row: d(External, [External, I32, U8Array, U64, Str]),
166
+ // Revision 5: chs_row gains the same trailing columns_json as chs_rows.
167
+ chs_row: d(External, [External, I32, U8Array, U64, Str, Str]),
116
168
  chs_reference_type: d(External, [Str]),
169
+ // Revision 5, additive: the quoting trio, straight off the vendored
170
+ // backQuote / backQuoteIfNeed / quoteString. The input is `U8Array`, not
171
+ // `Str`, for the same reason a row body is: it is COUNTED, and a string
172
+ // literal may legally carry a NUL byte that `Str` would truncate at.
173
+ chs_quote_identifier: d(I32, [U8Array, U64, External, External]),
174
+ chs_quote_identifier_if_needed: d(I32, [U8Array, U64, External, External]),
175
+ chs_quote_literal: d(I32, [U8Array, U64, External, External]),
117
176
  chs_registered_families: d(External, []),
118
177
  chs_function_flags: d(External, []),
119
178
  // Revision 3: the filter trio. Optional like everything above — a missing
@@ -128,7 +187,8 @@ function declare(library) {
128
187
  chs_filter_rows: d(External, [External, I32, U8Array, U64, Str]),
129
188
  // Revision 4: the block twin (the C ABI contract §Blocks) — parse a body once,
130
189
  // evaluate K filters against the block. Optional, same degradation rule.
131
- chs_block_parse: d(External, [External, I32, U8Array, U64, Str, External, External]),
190
+ // Revision 5: chs_block_parse gains the same trailing columns_json.
191
+ chs_block_parse: d(External, [External, I32, U8Array, U64, Str, External, External, Str]),
132
192
  chs_block_free: d(Void, [External]),
133
193
  chs_filter_eval: d(External, [External, External]),
134
194
  // Reached through the artifact's own dependency graph (it links libc), and
@@ -454,6 +514,45 @@ export class NativeLibrary {
454
514
  return unsupportedIfMissing(err, 'this artifact predates chs_reference_type (rebuild it)');
455
515
  }
456
516
  }
517
+ /**
518
+ * One of the three `chs_quote_*` symbols. The input is COUNTED — a string
519
+ * literal may legally carry a NUL byte — so it travels as bytes with an
520
+ * explicit length, never as a `Str`. The answer is always NUL-free, since
521
+ * every byte the server escapes comes back escaped.
522
+ *
523
+ * Both out-param slots are read and released on EVERY path, success or
524
+ * failure: the library owns whatever it wrote, and an answer left behind on
525
+ * an error return is a leak nothing else can reach.
526
+ */
527
+ quote(symbol, text) {
528
+ const bytes = Buffer.from(text, 'utf8');
529
+ // Resolved as three separate properties rather than by indexing with the
530
+ // union: each descriptor has its own call signature, and indexing would
531
+ // leave a union of them that cannot be called with one argument list.
532
+ const fn = symbol === 'chs_quote_identifier'
533
+ ? this.fns.chs_quote_identifier
534
+ : symbol === 'chs_quote_identifier_if_needed'
535
+ ? this.fns.chs_quote_identifier_if_needed
536
+ : this.fns.chs_quote_literal;
537
+ const outSlot = ptrSlot();
538
+ const errSlot = ptrSlot();
539
+ try {
540
+ let rc;
541
+ try {
542
+ rc = this.entered(() => Number(fn([bytes, bytes.length, ...outSlot, ...errSlot])));
543
+ }
544
+ catch (err) {
545
+ return unsupportedIfMissing(err, `this artifact predates ${symbol} (rebuild it)`);
546
+ }
547
+ const quoted = this.takeString(readPtr(outSlot)) ?? '';
548
+ const message = this.takeString(readPtr(errSlot)) ?? '';
549
+ return { quoted, code: rc, message, ok: rc === 0 };
550
+ }
551
+ finally {
552
+ dropPtrSlot(outSlot);
553
+ dropPtrSlot(errSlot);
554
+ }
555
+ }
457
556
  registeredFamilies() {
458
557
  let text;
459
558
  try {
@@ -666,12 +765,17 @@ export class NativeLibrary {
666
765
  /**
667
766
  * `chs_row`: one row body. Returns the raw result document **as bytes** — a
668
767
  * stored value can be any byte sequence, so the document can be too.
768
+ *
769
+ * `columns` (revision 5) is the INSERT column list — `RowsOptions#columns`,
770
+ * read exactly as `chs_row` documents it. Absent or empty means no list,
771
+ * encoded per `encodeColumns`.
669
772
  */
670
- row(handle, format, raw, settingsJson) {
773
+ row(handle, format, raw, settingsJson, columns) {
671
774
  const body = asBuffer(raw);
775
+ const columnsJson = encodeColumns(columns);
672
776
  let ptr;
673
777
  try {
674
- ptr = this.entered(() => this.fns.chs_row([handle, format, body, body.length, settingsJson]));
778
+ ptr = this.entered(() => this.fns.chs_row([handle, format, body, body.length, settingsJson, columnsJson]));
675
779
  }
676
780
  catch (err) {
677
781
  return unsupportedIfMissing(err, 'this artifact predates chs_row (rebuild it)');
@@ -723,9 +827,20 @@ export class NativeLibrary {
723
827
  * handle as the decline it is. `chs_rows` is one of the mandatory four, so
724
828
  * with repo-built artifacts the branch is unreachable — the type still has
725
829
  * to be the honest one.
830
+ *
831
+ * `columns` (revision 5) is the INSERT column list — `RowsOptions#columns`,
832
+ * read exactly as `chs_row` documents it; the export channel is unchanged
833
+ * by it (an exported row still carries the stored columns in declared
834
+ * order). Absent or empty means no list, encoded per `encodeColumns`.
835
+ *
836
+ * `filterHandle` (revision 5, second half) is the attached row filter —
837
+ * `undefined`/`null` (the default) sends `NULL_PTR`, "no filter" and
838
+ * today's behavior byte for byte. `Schema#rows`'s `options.rowFilter` is
839
+ * the only caller that ever supplies one.
726
840
  */
727
- rows(handle, format, body, settingsJson, exportFormat = EXPORT_NONE, docFlags = DOC_ALL) {
841
+ rows(handle, format, body, settingsJson, exportFormat = EXPORT_NONE, docFlags = DOC_ALL, columns, filterHandle) {
728
842
  const buf = asBuffer(body);
843
+ const columnsJson = encodeColumns(columns);
729
844
  // The chs_bytes out-param: {char *data; size_t len}, 16 bytes, zeroed.
730
845
  const outBytes = Buffer.alloc(16);
731
846
  let ptr;
@@ -739,6 +854,8 @@ export class NativeLibrary {
739
854
  exportFormat,
740
855
  docFlags,
741
856
  outBytes,
857
+ columnsJson,
858
+ filterHandle ?? NULL_PTR,
742
859
  ]));
743
860
  }
744
861
  catch (err) {
@@ -849,9 +966,16 @@ export class NativeLibrary {
849
966
  * ClickHouse's own code/message — a malformed body yields no block and no
850
967
  * partial answers; the sign of the code picks the error class, exactly as
851
968
  * `filterCompile`. A missing symbol degrades to the decline type.
969
+ *
970
+ * `columns` (revision 5) is the INSERT column list, read exactly as
971
+ * `chs_row` documents it — filters still compile over the schema's
972
+ * physical columns and evaluate the stored tuple, so a listed EPHEMERAL
973
+ * column stays unreferenceable in a filter. Absent or empty means no
974
+ * list, encoded per `encodeColumns`.
852
975
  */
853
- blockParse(schema, format, body, settingsJson) {
976
+ blockParse(schema, format, body, settingsJson, columns) {
854
977
  const buf = asBuffer(body);
978
+ const columnsJson = encodeColumns(columns);
855
979
  const codeSlot = intSlot();
856
980
  const errSlot = ptrSlot();
857
981
  try {
@@ -865,6 +989,7 @@ export class NativeLibrary {
865
989
  settingsJson,
866
990
  ...codeSlot,
867
991
  ...errSlot,
992
+ columnsJson,
868
993
  ]));
869
994
  }
870
995
  catch (err) {
package/dist/ffi.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ffi.js","sourceRoot":"","sources":["../src/ffi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ffi.js","sourceRoot":"","sources":["../src/ffi.ts"],"names":[],"mappings":"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"}
package/dist/format.d.ts CHANGED
@@ -3,15 +3,17 @@
3
3
  * `Schema#row` / `Schema#rows`. These numbers are part of the C ABI
4
4
  * (the C ABI contract §Types and schemas) and MUST NOT be renumbered.
5
5
  *
6
- * Name-addressed: `JSONEachRow`. Positional (the k-th field lands in the k-th
7
- * insertable column; MATERIALIZED / ALIAS / EPHEMERAL occupy no position):
8
- * `CSV`, `TSV`, `Values`, `JSONCompactEachRow`, the RowBinary family, and
9
- * `Buffers`. `Native` is column-oriented and name-addressed.
6
+ * Name-addressed: `JSONEachRow`, and `CSVWithNames` / `TSVWithNames` through
7
+ * their header row. Positional (the k-th field lands in the k-th insertable
8
+ * column; MATERIALIZED / ALIAS / EPHEMERAL occupy no position): `CSV`, `TSV`,
9
+ * `Values`, `JSONCompactEachRow`, the RowBinary family, and `Buffers`.
10
+ * `Native` is column-oriented and name-addressed.
10
11
  *
11
- * The RowBinary family, `Native` and `Buffers` depend on when the loaded
12
- * ARTIFACT was linked, not on this package's version — probe the artifact
13
- * (feed it one payload) rather than assuming (docs/reference/bindings.md §Values a
14
- * binding must accept and reject).
12
+ * The RowBinary family, `Native`, `Buffers`, `CSVWithNames` and
13
+ * `TSVWithNames` depend on when the loaded ARTIFACT was linked, not on this
14
+ * package's version — probe the artifact (feed it one payload) rather than
15
+ * assuming (docs/reference/bindings.md §Values a binding must accept and
16
+ * reject).
15
17
  */
16
18
  export declare const Format: {
17
19
  /** One JSON object per line, fields matched to columns by name. */
@@ -59,6 +61,23 @@ export declare const Format: {
59
61
  * package's version.
60
62
  */
61
63
  readonly Buffers: 9;
64
+ /**
65
+ * CSV whose first row is a header naming the columns, so the data is
66
+ * addressed by NAME. With a column list as well (`columns`), the list decides
67
+ * the block and the header decides the layout. Header names match EXACTLY
68
+ * through ClickHouse 26.4 and case-insensitively from 26.5, exactly as those
69
+ * servers do. It joined `enum chs_format` inside ABI revision 5, so a
70
+ * revision-5 artifact built before it existed does not know it — the
71
+ * revision check cannot tell. Probe it, do not assume it from this package's
72
+ * version.
73
+ */
74
+ readonly CSVWithNames: 10;
75
+ /**
76
+ * TSV whose first row is a header naming the columns. Everything
77
+ * `CSVWithNames` says about the header, a column list, header matching and
78
+ * probing the artifact applies unchanged.
79
+ */
80
+ readonly TSVWithNames: 11;
62
81
  };
63
82
  /** One of the `chs_format` integer codes — see the `Format` constant object. */
64
83
  export type Format = (typeof Format)[keyof typeof Format];
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,MAAM;IACjB,mEAAmE;aACnE,WAAW,EAAE,CAAC;IACd,yEAAyE;aACzE,GAAG,EAAE,CAAC;IACN,qHAAqH;aACrH,GAAG,EAAE,CAAC;IACN,iDAAiD;aACjD,MAAM,EAAE,CAAC;IACT,2CAA2C;aAC3C,kBAAkB,EAAE,CAAC;IACrB,8EAA8E;aAC9E,SAAS,EAAE,CAAC;IACZ,yEAAyE;aACzE,qBAAqB,EAAE,CAAC;IACxB;;;;OAIG;aACH,qCAAqC,EAAE,CAAC;IACxC;;;;;;;OAOG;aACH,MAAM,EAAE,CAAC;IACT;;;;;;;;;;;;;;OAcG;aACH,OAAO,EAAE,CAAC;CACF,CAAC;AAEX,gFAAgF;AAChF,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,WAAW,KAAK,CAAC;AAE9B;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,UAAU,IAAM,CAAC;AAC9B,yEAAyE;AACzE,eAAO,MAAM,cAAc,IAAM,CAAC;AAClC,iFAAiF;AACjF,eAAO,MAAM,YAAY,IAAM,CAAC;AAChC,0EAA0E;AAC1E,eAAO,MAAM,OAAO,QAA6C,CAAC;AAElE;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAK5C"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,MAAM;IACjB,mEAAmE;aACnE,WAAW,EAAE,CAAC;IACd,yEAAyE;aACzE,GAAG,EAAE,CAAC;IACN,qHAAqH;aACrH,GAAG,EAAE,CAAC;IACN,iDAAiD;aACjD,MAAM,EAAE,CAAC;IACT,2CAA2C;aAC3C,kBAAkB,EAAE,CAAC;IACrB,8EAA8E;aAC9E,SAAS,EAAE,CAAC;IACZ,yEAAyE;aACzE,qBAAqB,EAAE,CAAC;IACxB;;;;OAIG;aACH,qCAAqC,EAAE,CAAC;IACxC;;;;;;;OAOG;aACH,MAAM,EAAE,CAAC;IACT;;;;;;;;;;;;;;OAcG;aACH,OAAO,EAAE,CAAC;IACV;;;;;;;;;OASG;aACH,YAAY,EAAE,EAAE;IAChB;;;;OAIG;aACH,YAAY,EAAE,EAAE;CACR,CAAC;AAEX,gFAAgF;AAChF,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,WAAW,KAAK,CAAC;AAE9B;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,UAAU,IAAM,CAAC;AAC9B,yEAAyE;AACzE,eAAO,MAAM,cAAc,IAAM,CAAC;AAClC,iFAAiF;AACjF,eAAO,MAAM,YAAY,IAAM,CAAC;AAChC,0EAA0E;AAC1E,eAAO,MAAM,OAAO,QAA6C,CAAC;AAElE;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAK5C"}
package/dist/format.js CHANGED
@@ -3,15 +3,17 @@
3
3
  * `Schema#row` / `Schema#rows`. These numbers are part of the C ABI
4
4
  * (the C ABI contract §Types and schemas) and MUST NOT be renumbered.
5
5
  *
6
- * Name-addressed: `JSONEachRow`. Positional (the k-th field lands in the k-th
7
- * insertable column; MATERIALIZED / ALIAS / EPHEMERAL occupy no position):
8
- * `CSV`, `TSV`, `Values`, `JSONCompactEachRow`, the RowBinary family, and
9
- * `Buffers`. `Native` is column-oriented and name-addressed.
6
+ * Name-addressed: `JSONEachRow`, and `CSVWithNames` / `TSVWithNames` through
7
+ * their header row. Positional (the k-th field lands in the k-th insertable
8
+ * column; MATERIALIZED / ALIAS / EPHEMERAL occupy no position): `CSV`, `TSV`,
9
+ * `Values`, `JSONCompactEachRow`, the RowBinary family, and `Buffers`.
10
+ * `Native` is column-oriented and name-addressed.
10
11
  *
11
- * The RowBinary family, `Native` and `Buffers` depend on when the loaded
12
- * ARTIFACT was linked, not on this package's version — probe the artifact
13
- * (feed it one payload) rather than assuming (docs/reference/bindings.md §Values a
14
- * binding must accept and reject).
12
+ * The RowBinary family, `Native`, `Buffers`, `CSVWithNames` and
13
+ * `TSVWithNames` depend on when the loaded ARTIFACT was linked, not on this
14
+ * package's version — probe the artifact (feed it one payload) rather than
15
+ * assuming (docs/reference/bindings.md §Values a binding must accept and
16
+ * reject).
15
17
  */
16
18
  export const Format = {
17
19
  /** One JSON object per line, fields matched to columns by name. */
@@ -59,6 +61,23 @@ export const Format = {
59
61
  * package's version.
60
62
  */
61
63
  Buffers: 9,
64
+ /**
65
+ * CSV whose first row is a header naming the columns, so the data is
66
+ * addressed by NAME. With a column list as well (`columns`), the list decides
67
+ * the block and the header decides the layout. Header names match EXACTLY
68
+ * through ClickHouse 26.4 and case-insensitively from 26.5, exactly as those
69
+ * servers do. It joined `enum chs_format` inside ABI revision 5, so a
70
+ * revision-5 artifact built before it existed does not know it — the
71
+ * revision check cannot tell. Probe it, do not assume it from this package's
72
+ * version.
73
+ */
74
+ CSVWithNames: 10,
75
+ /**
76
+ * TSV whose first row is a header naming the columns. Everything
77
+ * `CSVWithNames` says about the header, a column list, header matching and
78
+ * probing the artifact applies unchanged.
79
+ */
80
+ TSVWithNames: 11,
62
81
  };
63
82
  /**
64
83
  * The `chs_rows` export sentinel: no export requested (`CHS_EXPORT_NONE`,
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,mEAAmE;IACnE,WAAW,EAAE,CAAC;IACd,yEAAyE;IACzE,GAAG,EAAE,CAAC;IACN,qHAAqH;IACrH,GAAG,EAAE,CAAC;IACN,iDAAiD;IACjD,MAAM,EAAE,CAAC;IACT,2CAA2C;IAC3C,kBAAkB,EAAE,CAAC;IACrB,8EAA8E;IAC9E,SAAS,EAAE,CAAC;IACZ,yEAAyE;IACzE,qBAAqB,EAAE,CAAC;IACxB;;;;OAIG;IACH,qCAAqC,EAAE,CAAC;IACxC;;;;;;;OAOG;IACH,MAAM,EAAE,CAAC;IACT;;;;;;;;;;;;;;OAcG;IACH,OAAO,EAAE,CAAC;CACF,CAAC;AAKX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC;AAE9B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC;AAC9B,yEAAyE;AACzE,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,iFAAiF;AACjF,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAC;AAChC,0EAA0E;AAC1E,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,GAAG,cAAc,GAAG,YAAY,CAAC;AAElE;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,CAAS;IAClC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;IAC9B,CAAC;IACD,OAAO,UAAU,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,mEAAmE;IACnE,WAAW,EAAE,CAAC;IACd,yEAAyE;IACzE,GAAG,EAAE,CAAC;IACN,qHAAqH;IACrH,GAAG,EAAE,CAAC;IACN,iDAAiD;IACjD,MAAM,EAAE,CAAC;IACT,2CAA2C;IAC3C,kBAAkB,EAAE,CAAC;IACrB,8EAA8E;IAC9E,SAAS,EAAE,CAAC;IACZ,yEAAyE;IACzE,qBAAqB,EAAE,CAAC;IACxB;;;;OAIG;IACH,qCAAqC,EAAE,CAAC;IACxC;;;;;;;OAOG;IACH,MAAM,EAAE,CAAC;IACT;;;;;;;;;;;;;;OAcG;IACH,OAAO,EAAE,CAAC;IACV;;;;;;;;;OASG;IACH,YAAY,EAAE,EAAE;IAChB;;;;OAIG;IACH,YAAY,EAAE,EAAE;CACR,CAAC;AAKX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC;AAE9B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC;AAC9B,yEAAyE;AACzE,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,iFAAiF;AACjF,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAC;AAChC,0EAA0E;AAC1E,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,GAAG,cAAc,GAAG,YAAY,CAAC;AAElE;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,CAAS;IAClC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;IAC9B,CAAC;IACD,OAAO,UAAU,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;AAChC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -11,7 +11,7 @@
11
11
  * vendored per release behind the frozen `chs_*` C ABI. The one derived answer is
12
12
  * `transformed`, and it is the reason the product exists.
13
13
  */
14
- export { parseChangedSettingsResult, parseColumnsResult, parseVersionResult, QUERY_CHANGED_SETTINGS, QUERY_SERVER_VERSION, QUERY_TABLE_COLUMNS, reconstructDdl, type DiscoveredColumn, type ServerProfile, } from './discover.js';
14
+ export { parseChangedSettingsResult, parseColumnsResult, parseVersionResult, QUERY_CHANGED_SETTINGS, QUERY_SERVER_VERSION, QUERY_TABLE_COLUMNS, type DiscoveredColumn, type ServerProfile, } from './discover.js';
15
15
  export { ABI_REVISION, ArtifactCorruptError, ArtifactError, ArtifactMissingError, ArtifactPinnedError, ArtifactUnpublishedError, ArtifactUntrustedError, artifactMissingMessage, ChtypesError, CODE_ARTIFACT_CORRUPT, CODE_ARTIFACT_MISSING, CODE_ARTIFACT_PINNED, CODE_ARTIFACT_UNPUBLISHED, CODE_ARTIFACT_UNTRUSTED, CODE_SOURCE_UNREACHABLE, CODE_UNSUPPORTED, FETCH_COMMAND, FetchError, RegistryError, SchemaError, SourceUnreachableError, UnsupportedError, type ArtifactErrorCode, } from './errors.js';
16
16
  export { compareVersions, DEFAULT_ARTIFACTS_URL, DEFAULT_LOCK_FILE, DEFAULT_RELEASE_TAG, ensure, ensureAll, keyId, listArtifacts, LOCK_SCHEMA, parseSignatureFile, parseVersionSpelling, readLock, RELEASE_KEY_ID, RELEASE_PUBLIC_KEYS, resolvePlatform, selectAll, selectArtifact, sha256File, trustedKeys, verifyEd25519, verifyInstalled, type EnsureOptions, type EnsureResult, type FetchEvent, type IndexArtifact, type InstalledArtifact, type ListResult, type LockEntry, type LockFile, type ReleaseIndex, type VersionRequest, } from './fetch.js';
17
17
  export { cacheRegistryDir, ENV_AUTOFETCH, ENV_REGISTRY, fetchDestination, hostPlatform, isPlatformKey, registrySearchPath, systemRegistryDirs, } from './paths.js';
@@ -20,8 +20,8 @@ export { DOC_ALL, DOC_DEFAULTS, DOC_TRANSFORMS, DOC_VALUES, EXPORT_NONE, Format,
20
20
  export { CompileMode, Library, minorOf, type CompileOptions } from './library.js';
21
21
  export { nativeStats } from './ffi.js';
22
22
  export { compareMinor, defaultRegistryDir, looksLikeRegistry, Registry, resolveRegistryDir, type Manifest, type RegistryOptions, } from './registry.js';
23
- export { DefaultKind, FilterOutcome, isAnswer, Outcome, Verdict, type BatchResult, type ColumnDoc, type Computed, type FilterResult, type FilterRowError, type RowResult, type Span, type Substitution, type Transform, type Value, } from './results.js';
24
- export { Block, Filter, Schema, type ColumnInfo, type CompileFilterOptions, type EngineOptions, type RowsOptions, } from './schema.js';
23
+ export { DefaultKind, FilterOutcome, isAnswer, Outcome, Source, Verdict, type BatchResult, type ColumnDoc, type Computed, type FilterResult, type FilterRowError, type RowResult, type Span, type Substitution, type Transform, type Value, } from './results.js';
24
+ export { Block, Filter, Schema, type ColumnInfo, type CompileFilterOptions, type EngineOptions, type RowOptions, type RowsOptions, } from './schema.js';
25
25
  export { encodeSettings, type Settings, type SettingValue } from './settings.js';
26
26
  export { isLossyReason, Reason } from './transform.js';
27
27
  export { isValidUtf8, Json, parseDocument, parseJsonValue, rawBytes, rawText, repairBareDenormals, type JsonKind, } from './json.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -11,7 +11,7 @@
11
11
  * vendored per release behind the frozen `chs_*` C ABI. The one derived answer is
12
12
  * `transformed`, and it is the reason the product exists.
13
13
  */
14
- export { parseChangedSettingsResult, parseColumnsResult, parseVersionResult, QUERY_CHANGED_SETTINGS, QUERY_SERVER_VERSION, QUERY_TABLE_COLUMNS, reconstructDdl, } from './discover.js';
14
+ export { parseChangedSettingsResult, parseColumnsResult, parseVersionResult, QUERY_CHANGED_SETTINGS, QUERY_SERVER_VERSION, QUERY_TABLE_COLUMNS, } from './discover.js';
15
15
  export { ABI_REVISION, ArtifactCorruptError, ArtifactError, ArtifactMissingError, ArtifactPinnedError, ArtifactUnpublishedError, ArtifactUntrustedError, artifactMissingMessage, ChtypesError, CODE_ARTIFACT_CORRUPT, CODE_ARTIFACT_MISSING, CODE_ARTIFACT_PINNED, CODE_ARTIFACT_UNPUBLISHED, CODE_ARTIFACT_UNTRUSTED, CODE_SOURCE_UNREACHABLE, CODE_UNSUPPORTED, FETCH_COMMAND, FetchError, RegistryError, SchemaError, SourceUnreachableError, UnsupportedError, } from './errors.js';
16
16
  export { compareVersions, DEFAULT_ARTIFACTS_URL, DEFAULT_LOCK_FILE, DEFAULT_RELEASE_TAG, ensure, ensureAll, keyId, listArtifacts, LOCK_SCHEMA, parseSignatureFile, parseVersionSpelling, readLock, RELEASE_KEY_ID, RELEASE_PUBLIC_KEYS, resolvePlatform, selectAll, selectArtifact, sha256File, trustedKeys, verifyEd25519, verifyInstalled, } from './fetch.js';
17
17
  export { cacheRegistryDir, ENV_AUTOFETCH, ENV_REGISTRY, fetchDestination, hostPlatform, isPlatformKey, registrySearchPath, systemRegistryDirs, } from './paths.js';
@@ -20,7 +20,7 @@ export { DOC_ALL, DOC_DEFAULTS, DOC_TRANSFORMS, DOC_VALUES, EXPORT_NONE, Format,
20
20
  export { CompileMode, Library, minorOf } from './library.js';
21
21
  export { nativeStats } from './ffi.js';
22
22
  export { compareMinor, defaultRegistryDir, looksLikeRegistry, Registry, resolveRegistryDir, } from './registry.js';
23
- export { DefaultKind, FilterOutcome, isAnswer, Outcome, Verdict, } from './results.js';
23
+ export { DefaultKind, FilterOutcome, isAnswer, Outcome, Source, Verdict, } from './results.js';
24
24
  export { Block, Filter, Schema, } from './schema.js';
25
25
  export { encodeSettings } from './settings.js';
26
26
  export { isLossyReason, Reason } from './transform.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,GAGf,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,aAAa,EACb,WAAW,EACX,sBAAsB,EACtB,gBAAgB,GAEjB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,SAAS,EACT,KAAK,EACL,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,SAAS,EACT,cAAc,EACd,UAAU,EACV,WAAW,EACX,aAAa,EACb,eAAe,GAWhB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EAAuB,MAAM,UAAU,CAAC;AAC7D,OAAO,EACL,OAAO,EACP,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACX,MAAM,EACN,UAAU,GACX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAuB,MAAM,cAAc,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,QAAQ,EACR,kBAAkB,GAGnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,WAAW,EACX,aAAa,EACb,QAAQ,EACR,OAAO,EACP,OAAO,GAWR,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,EACL,MAAM,EACN,MAAM,GAKP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAoC,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EACL,WAAW,EACX,IAAI,EACJ,aAAa,EACb,cAAc,EACd,QAAQ,EACR,OAAO,EACP,mBAAmB,GAEpB,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,GAGpB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,aAAa,EACb,WAAW,EACX,sBAAsB,EACtB,gBAAgB,GAEjB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,MAAM,EACN,SAAS,EACT,KAAK,EACL,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,SAAS,EACT,cAAc,EACd,UAAU,EACV,WAAW,EACX,aAAa,EACb,eAAe,GAWhB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EAAuB,MAAM,UAAU,CAAC;AAC7D,OAAO,EACL,OAAO,EACP,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACX,MAAM,EACN,UAAU,GACX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAuB,MAAM,cAAc,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,QAAQ,EACR,kBAAkB,GAGnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,WAAW,EACX,aAAa,EACb,QAAQ,EACR,OAAO,EACP,MAAM,EACN,OAAO,GAWR,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,EACL,MAAM,EACN,MAAM,GAMP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAoC,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EACL,WAAW,EACX,IAAI,EACJ,aAAa,EACb,cAAc,EACd,QAAQ,EACR,OAAO,EACP,mBAAmB,GAEpB,MAAM,WAAW,CAAC"}
package/dist/library.d.ts CHANGED
@@ -2,6 +2,7 @@
2
2
  * One loaded ClickHouse build. It names itself — `chs_clickhouse_version()` —
3
3
  * and nothing is ever inferred from the directory or the file name.
4
4
  */
5
+ import { type DiscoveredColumn } from './discover.js';
5
6
  import type { NativeLibrary } from './ffi.js';
6
7
  import { Schema } from './schema.js';
7
8
  import { type Settings } from './settings.js';
@@ -185,6 +186,66 @@ export declare class Library {
185
186
  * @throws {UnsupportedError} when the artifact predates `chs_reference_type`.
186
187
  */
187
188
  referenceType(typeExpr: string): string;
189
+ /**
190
+ * Spell `name` as a back-quoted identifier — ALWAYS quoted, which is the
191
+ * safe default and the one to reach for without thinking
192
+ * (`chs_quote_identifier`, the vendored `backQuote`).
193
+ *
194
+ * The bytes are this library's own: an embedded back-quote comes back in the
195
+ * spelling the server's formatter prints, not in a spelling of ours. Reach
196
+ * for `quoteIdentifierIfNeeded` only when the bare spelling matters to
197
+ * something downstream.
198
+ *
199
+ * @param name - a table, column or alias name.
200
+ * @returns the quoted identifier.
201
+ * @throws {UnsupportedError} when the artifact predates
202
+ * `chs_quote_identifier`.
203
+ */
204
+ quoteIdentifier(name: string): string;
205
+ /**
206
+ * Spell `name` bare where THIS library's ClickHouse says a bare spelling is
207
+ * legal, and back-quote it otherwise (`chs_quote_identifier_if_needed`, the
208
+ * vendored `backQuoteIfNeed`).
209
+ *
210
+ * Which names it leaves bare is a property of the vendored build, not of
211
+ * this package, and it CHANGES between builds — ask the library you will
212
+ * compile against rather than caching an answer across versions.
213
+ *
214
+ * @param name - a table, column or alias name.
215
+ * @returns the identifier, bare or quoted.
216
+ * @throws {UnsupportedError} when the artifact predates
217
+ * `chs_quote_identifier_if_needed`.
218
+ */
219
+ quoteIdentifierIfNeeded(name: string): string;
220
+ /**
221
+ * Spell `text` as a ClickHouse string literal, quotes and escapes included
222
+ * (`chs_quote_literal`, the vendored `quoteString`) — the call to reach for
223
+ * when a value is spliced into DDL, e.g. a DEFAULT expression.
224
+ *
225
+ * The input is counted, so a value carrying a NUL byte is quoted correctly;
226
+ * the answer is escaped and therefore NUL-free.
227
+ *
228
+ * @param text - the string value.
229
+ * @returns the ClickHouse string literal.
230
+ * @throws {UnsupportedError} when the artifact predates `chs_quote_literal`.
231
+ */
232
+ quoteLiteral(text: string): string;
233
+ private quote;
234
+ /**
235
+ * Turn `QUERY_TABLE_COLUMNS`' rows back into the column-declaration list
236
+ * `compileDdl` takes.
237
+ *
238
+ * It hangs off a Library because the one thing it spells — the column NAME —
239
+ * is spelled by this library's own `quoteIdentifier`; see `discover.ts` for
240
+ * what reconstruction does and does not promise.
241
+ *
242
+ * @param cols - the discovered columns, e.g. from `parseColumnsResult`.
243
+ * @returns the column-declaration list for `compileDdl`.
244
+ * @throws {ChtypesError} when a column is inconsistent, or there are none.
245
+ * @throws {UnsupportedError} when the artifact predates
246
+ * `chs_quote_identifier`.
247
+ */
248
+ reconstructDdl(cols: readonly DiscoveredColumn[]): string;
188
249
  /**
189
250
  * Every type family in this build's own runtime registry (139 entries on
190
251
  * 25.8) — the answer to "does this build track upstream type families?"
@@ -1 +1 @@
1
- {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../src/library.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9D;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAI/C;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW;IACtB;;;;;;;OAOG;aACH,QAAQ,EAAE,CAAC;CACH,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CACzC;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,OAAO;IAgBN,OAAO,CAAC,QAAQ,CAAC,MAAM;IAfnC,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,yDAAyD;IACzD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,8CAA8C;IAC9C,YAA6B,MAAM,EAAE,aAAa,EAKjD;IAED;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIrC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,MAAM,CAIxD;IAED;;;;;;;;OAQG;IACH,kBAAkB,IAAI,OAAO,CAE5B;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAE3C;IAED;;;;;;;;;;OAUG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtC;IAED;;;;;;;;;OASG;IACH,kBAAkB,IAAI,MAAM,EAAE,CAE7B;IAED;;;;;;;;;;;;;OAaG;IACH,aAAa,IAAI,MAAM,CAEtB;IAED;;;;;;;;OAQG;IACH,QAAQ,IAAI,IAAI,CAEf;CACF"}
1
+ {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../src/library.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9D;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAI/C;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW;IACtB;;;;;;;OAOG;aACH,QAAQ,EAAE,CAAC;CACH,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CACzC;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,OAAO;IAgBN,OAAO,CAAC,QAAQ,CAAC,MAAM;IAfnC,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,yDAAyD;IACzD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,8CAA8C;IAC9C,YAA6B,MAAM,EAAE,aAAa,EAKjD;IAED;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIrC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,MAAM,CAIxD;IAED;;;;;;;;OAQG;IACH,kBAAkB,IAAI,OAAO,CAE5B;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAE3C;IAED;;;;;;;;;;OAUG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtC;IAED;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpC;IAED;;;;;;;;;;;;;OAaG;IACH,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;IAED;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjC;IAED,OAAO,CAAC,KAAK;IASb;;;;;;;;;;;;;OAaG;IACH,cAAc,CAAC,IAAI,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,CAExD;IAED;;;;;;;;;OASG;IACH,kBAAkB,IAAI,MAAM,EAAE,CAE7B;IAED;;;;;;;;;;;;;OAaG;IACH,aAAa,IAAI,MAAM,CAEtB;IAED;;;;;;;;OAQG;IACH,QAAQ,IAAI,IAAI,CAEf;CACF"}