pg-sql2 5.0.0-beta.6 → 5.0.0-beta.8

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/CHANGELOG.md CHANGED
@@ -1,5 +1,38 @@
1
1
  # pg-sql2
2
2
 
3
+ ## 5.0.0-beta.8
4
+
5
+ ### Patch Changes
6
+
7
+ - [#2329](https://github.com/graphile/crystal/pull/2329)
8
+ [`e10c372dafbe0d6014b1e946349b22f40aa87ef9`](https://github.com/graphile/crystal/commit/e10c372dafbe0d6014b1e946349b22f40aa87ef9)
9
+ Thanks [@benjie](https://github.com/benjie)! - Fix bug causing unhelpful throw
10
+ on $type optimization on null - instead pass through to more helpful throw.
11
+
12
+ - [#2341](https://github.com/graphile/crystal/pull/2341)
13
+ [`3b0f5082b2272997ce33ce8823a4752513d19e28`](https://github.com/graphile/crystal/commit/3b0f5082b2272997ce33ce8823a4752513d19e28)
14
+ Thanks [@benjie](https://github.com/benjie)! - Some of the pg-sql2 inputs are
15
+ now marked Readonly to indicate we won't mutate them.
16
+
17
+ - [#2320](https://github.com/graphile/crystal/pull/2320)
18
+ [`3789326b2e2fdb86519acc75e606c752ddefe590`](https://github.com/graphile/crystal/commit/3789326b2e2fdb86519acc75e606c752ddefe590)
19
+ Thanks [@benjie](https://github.com/benjie)! - Add new `withTransformer`
20
+ functionality to enable embedding of non-SQL values into PgSQL fragments, for
21
+ improved user ergonomics.
22
+
23
+ - [#2384](https://github.com/graphile/crystal/pull/2384)
24
+ [`412b92a0b1e03ad962521f630b57a996d8620cf6`](https://github.com/graphile/crystal/commit/412b92a0b1e03ad962521f630b57a996d8620cf6)
25
+ Thanks [@benjie](https://github.com/benjie)! - Small optimization/fix to
26
+ `arraysMatch` function.
27
+
28
+ ## 5.0.0-beta.7
29
+
30
+ ### Patch Changes
31
+
32
+ - [#2250](https://github.com/graphile/crystal/pull/2250)
33
+ [`7bf045282`](https://github.com/graphile/crystal/commit/7bf04528264c3b9c509f148253fed96d3394141d)
34
+ Thanks [@benjie](https://github.com/benjie)! - Export version number.
35
+
3
36
  ## 5.0.0-beta.6
4
37
 
5
38
  ### Patch Changes
package/README.md CHANGED
@@ -26,11 +26,10 @@ And please give some love to our featured sponsors 🤩:
26
26
  <table><tr>
27
27
  <td align="center"><a href="https://www.the-guild.dev/"><img src="https://graphile.org/images/sponsors/theguild.png" width="90" height="90" alt="The Guild" /><br />The Guild</a> *</td>
28
28
  <td align="center"><a href="https://dovetailapp.com/"><img src="https://graphile.org/images/sponsors/dovetail.png" width="90" height="90" alt="Dovetail" /><br />Dovetail</a> *</td>
29
- <td align="center"><a href="https://www.netflix.com/"><img src="https://graphile.org/images/sponsors/Netflix.png" width="90" height="90" alt="Netflix" /><br />Netflix</a> *</td>
30
29
  <td align="center"><a href="https://stellate.co/"><img src="https://graphile.org/images/sponsors/Stellate.png" width="90" height="90" alt="Stellate" /><br />Stellate</a> *</td>
31
- </tr><tr>
32
30
  <td align="center"><a href="https://gosteelhead.com/"><img src="https://graphile.org/images/sponsors/steelhead.svg" width="90" height="90" alt="Steelhead" /><br />Steelhead</a> *</td>
33
- <td align="center"><a href="https://www.sylvera.com/"><img src="https://graphile.org/images/sponsors/sylvera.svg" width="90" height="90" alt="Sylvera" /><br />Sylvera</a> *</td>
31
+ </tr><tr>
32
+ <td align="center"><a href=""><img src="https://graphile.org/images/sponsors/latchbio.jpg" width="90" height="90" alt="LatchBio" /><br />LatchBio</a> *</td>
34
33
  </tr></table>
35
34
 
36
35
  <em>\* Sponsors the entire Graphile suite</em>
package/dist/index.d.ts CHANGED
@@ -1,12 +1,16 @@
1
1
  import { $$type } from "./thereCanBeOnlyOne.js";
2
+ export { version } from "./version.js";
2
3
  /** Use this to enable coercing objects to SQL to make composing SQL fragments more ergonomic */
3
4
  export declare const $$toSQL: unique symbol;
4
5
  /** Experimental! */
5
6
  export declare const $$symbolToIdentifier: unique symbol;
7
+ interface PgSQL2Proto {
8
+ }
6
9
  /**
7
10
  * Represents raw SQL, the text will be output verbatim into the compiled query.
8
11
  */
9
12
  export interface SQLRawNode {
13
+ __proto__?: PgSQL2Proto;
10
14
  readonly [$$type]: "RAW";
11
15
  }
12
16
  /**
@@ -15,6 +19,7 @@ export interface SQLRawNode {
15
19
  * reserved words.
16
20
  */
17
21
  export interface SQLIdentifierNode {
22
+ __proto__?: PgSQL2Proto;
18
23
  readonly [$$type]: "IDENTIFIER";
19
24
  }
20
25
  /**
@@ -27,6 +32,7 @@ export type SQLRawValue = string | number | boolean | null | ReadonlyArray<SQLRa
27
32
  * compiled SQL statement.
28
33
  */
29
34
  export interface SQLValueNode {
35
+ __proto__?: PgSQL2Proto;
30
36
  readonly [$$type]: "VALUE";
31
37
  }
32
38
  /**
@@ -68,7 +74,7 @@ export interface SQLable {
68
74
  * placeholders, and the values to substitute for these values.
69
75
  */
70
76
  export declare function compile(sql: SQL, options?: {
71
- placeholderValues?: Map<symbol, SQL>;
77
+ placeholderValues?: ReadonlyMap<symbol, SQL>;
72
78
  }): {
73
79
  text: string;
74
80
  values: SQLRawValue[];
@@ -107,7 +113,7 @@ export declare function literal(val: string | number | boolean | null): SQL;
107
113
  * dealing with lists of SQL items, for example a dynamic list of columns or
108
114
  * variadic SQL function arguments.
109
115
  */
110
- export declare function join(items: Array<SQL>, separator?: string): SQL;
116
+ export declare function join(items: ReadonlyArray<SQL>, separator?: string): SQL;
111
117
  export declare function indent(fragment: SQL): SQL;
112
118
  export declare function indent(strings: TemplateStringsArray, ...values: Array<SQL>): SQL;
113
119
  export declare function indentIf(condition: boolean, fragment: SQL): SQL;
@@ -146,15 +152,17 @@ export declare function isEquivalent(sql1: SQL, sql2: SQL, options?: {
146
152
  * @experimental
147
153
  */
148
154
  export declare function replaceSymbol(frag: SQL, needle: symbol, replacement: symbol): SQL;
155
+ export type Transformer<TNewEmbed> = <TValue>(sql: PgSQL, value: TNewEmbed | TValue, where?: string) => SQL | TValue;
156
+ export declare function withTransformer<TNewEmbed, TResult = SQL>(transformer: Transformer<TNewEmbed>, callback: (sql: PgSQL<TNewEmbed>) => TResult): TResult;
149
157
  export declare const sql: PgSQL;
150
158
  export default sql;
151
159
  export { falseNode as false, sql as fragment, isSQL, nullNode as null, sql as query, trueNode as true, };
152
- export interface PgSQL {
153
- (strings: TemplateStringsArray, ...values: Array<SQL | SQLable>): SQL;
160
+ export interface PgSQL<TEmbed = never> {
161
+ (strings: TemplateStringsArray, ...values: Array<SQL | SQLable | TEmbed>): SQL;
154
162
  escapeSqlIdentifier: typeof escapeSqlIdentifier;
155
163
  compile: typeof compile;
156
164
  isEquivalent: typeof isEquivalent;
157
- query: PgSQL;
165
+ query: PgSQL<TEmbed>;
158
166
  raw: typeof raw;
159
167
  identifier: typeof identifier;
160
168
  value: typeof value;
@@ -166,12 +174,13 @@ export interface PgSQL {
166
174
  symbolAlias: typeof symbolAlias;
167
175
  placeholder: typeof placeholder;
168
176
  blank: typeof blank;
169
- fragment: PgSQL;
177
+ fragment: PgSQL<TEmbed>;
170
178
  true: typeof trueNode;
171
179
  false: typeof falseNode;
172
180
  null: typeof nullNode;
173
181
  isSQL: typeof isSQL;
174
182
  replaceSymbol: typeof replaceSymbol;
175
- sql: PgSQL;
183
+ sql: PgSQL<TEmbed>;
184
+ withTransformer<TNewEmbed, TResult = SQL>(transformer: Transformer<TNewEmbed>, callback: (sql: PgSQL<TEmbed | TNewEmbed>) => TResult): TResult;
176
185
  }
177
186
  //# sourceMappingURL=index.d.ts.map
@@ -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
@@ -1,11 +1,30 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.true = exports.query = exports.null = exports.isSQL = exports.fragment = exports.false = exports.sql = exports.replaceSymbol = exports.isEquivalent = exports.arraysMatch = exports.placeholder = exports.symbolAlias = exports.parens = exports.indentIf = exports.indent = exports.join = exports.literal = exports.dot = exports.blank = exports.value = exports.identifier = exports.raw = exports.compile = exports.escapeSqlIdentifier = exports.$$symbolToIdentifier = exports.$$toSQL = void 0;
3
+ exports.true = exports.query = exports.null = exports.fragment = exports.false = exports.sql = exports.dot = exports.blank = exports.$$symbolToIdentifier = exports.$$toSQL = exports.version = void 0;
4
+ exports.escapeSqlIdentifier = escapeSqlIdentifier;
5
+ exports.compile = compile;
6
+ exports.raw = raw;
7
+ exports.identifier = identifier;
8
+ exports.value = value;
9
+ exports.literal = literal;
10
+ exports.join = join;
11
+ exports.indent = indent;
12
+ exports.indentIf = indentIf;
13
+ exports.parens = parens;
14
+ exports.symbolAlias = symbolAlias;
15
+ exports.placeholder = placeholder;
16
+ exports.arraysMatch = arraysMatch;
17
+ exports.isEquivalent = isEquivalent;
18
+ exports.replaceSymbol = replaceSymbol;
19
+ exports.withTransformer = withTransformer;
20
+ exports.isSQL = isSQL;
4
21
  const tslib_1 = require("tslib");
5
22
  const lru_1 = tslib_1.__importDefault(require("@graphile/lru"));
6
23
  const assert = tslib_1.__importStar(require("assert"));
7
24
  const util_1 = require("util");
8
25
  const thereCanBeOnlyOne_js_1 = require("./thereCanBeOnlyOne.js");
26
+ var version_js_1 = require("./version.js");
27
+ Object.defineProperty(exports, "version", { enumerable: true, get: function () { return version_js_1.version; } });
9
28
  /** Use this to enable coercing objects to SQL to make composing SQL fragments more ergonomic */
10
29
  exports.$$toSQL = Symbol("toSQL");
11
30
  function exportAs(thing, exportName) {
@@ -27,6 +46,29 @@ exports.$$symbolToIdentifier = Symbol("symbolToIdentifier");
27
46
  const isDev = typeof process !== "undefined" &&
28
47
  (process.env.GRAPHILE_ENV === "development" ||
29
48
  process.env.GRAPHILE_ENV === "test");
49
+ const nodeInspect = function (depth, options) {
50
+ if (this[thereCanBeOnlyOne_js_1.$$type] === "VALUE") {
51
+ if (depth < 0) {
52
+ return `sql.value(...)`;
53
+ }
54
+ return `sql.value(${(0, util_1.inspect)(this.v, {
55
+ ...options,
56
+ depth: options.depth == null ? null : options.depth - 1,
57
+ })})`;
58
+ }
59
+ else if (this[thereCanBeOnlyOne_js_1.$$type] === "RAW") {
60
+ return `sql\`${this.t}\``;
61
+ }
62
+ else if (this[thereCanBeOnlyOne_js_1.$$type] === "IDENTIFIER") {
63
+ return `sql.identifier(${JSON.stringify(this.n)})`;
64
+ }
65
+ else {
66
+ return `sql{${this[thereCanBeOnlyOne_js_1.$$type]}}`;
67
+ }
68
+ };
69
+ const pgSQL2Proto = Object.assign(Object.create(null), {
70
+ [util_1.inspect.custom]: nodeInspect,
71
+ });
30
72
  const FLAG_HAS_PARENS = 1 << 0;
31
73
  /**
32
74
  * This helps us to avoid GC overhead of allocating new raw nodes all the time
@@ -73,7 +115,6 @@ function getSymbolName(symbol) {
73
115
  function escapeSqlIdentifier(str) {
74
116
  return `"${str.replace(/["\0]/g, '""')}"`;
75
117
  }
76
- exports.escapeSqlIdentifier = escapeSqlIdentifier;
77
118
  function makeRawNode(text, exportName) {
78
119
  const n = CACHE_RAW_NODES.get(text);
79
120
  if (n) {
@@ -83,6 +124,7 @@ function makeRawNode(text, exportName) {
83
124
  throw new Error(`[pg-sql2] Invalid argument to makeRawNode - expected string, but received '${(0, util_1.inspect)(text)}'`);
84
125
  }
85
126
  const newNode = {
127
+ __proto__: pgSQL2Proto,
86
128
  [thereCanBeOnlyOne_js_1.$$type]: "RAW",
87
129
  t: text,
88
130
  };
@@ -97,6 +139,7 @@ function makeRawNode(text, exportName) {
97
139
  // Simple function to help V8 optimize it.
98
140
  function makeIdentifierNode(s, n = getSymbolName(s)) {
99
141
  return Object.freeze({
142
+ __proto__: pgSQL2Proto,
100
143
  [thereCanBeOnlyOne_js_1.$$type]: "IDENTIFIER",
101
144
  s,
102
145
  n,
@@ -105,6 +148,7 @@ function makeIdentifierNode(s, n = getSymbolName(s)) {
105
148
  // Simple function to help V8 optimize it.
106
149
  function makeValueNode(rawValue) {
107
150
  return Object.freeze({
151
+ __proto__: pgSQL2Proto,
108
152
  [thereCanBeOnlyOne_js_1.$$type]: "VALUE",
109
153
  v: rawValue,
110
154
  });
@@ -181,7 +225,6 @@ function isSQL(node) {
181
225
  node !== null &&
182
226
  typeof node[thereCanBeOnlyOne_js_1.$$type] === "string");
183
227
  }
184
- exports.isSQL = isSQL;
185
228
  function isSQLable(value) {
186
229
  return (typeof value === "object" &&
187
230
  value !== null &&
@@ -191,10 +234,20 @@ function enforceValidNode(node, where) {
191
234
  if (isSQL(node)) {
192
235
  return node;
193
236
  }
237
+ for (let i = _userTransformers.length - 1; i >= 0; i--) {
238
+ const transformer = _userTransformers[i];
239
+ const transformed = transformer(exports.sql, node, where);
240
+ if (transformed !== node) {
241
+ return enforceValidNode(transformed);
242
+ }
243
+ else {
244
+ // Continue onward; `node` is unchanged
245
+ }
246
+ }
194
247
  if (isSQLable(node)) {
195
248
  return enforceValidNode(node[exports.$$toSQL](), where);
196
249
  }
197
- throw new Error(`[pg-sql2] Invalid expression. Expected an SQL item${where ? ` at ${where}` : ""} but received '${(0, util_1.inspect)(node)}'. This may mean that there is an issue in the SQL expression where a dynamic value was not escaped via 'sql.value(...)', an identifier wasn't wrapped with 'sql.identifier(...)', or a SQL expression was added without using the \`sql\` tagged template literal.`);
250
+ throw new Error(`[pg-sql2] Invalid expression. Expected an SQL item${where ? ` at ${where}` : ""} but received '${(0, util_1.inspect)(node)}'. This may mean that there is an issue in the SQL expression where a dynamic value was not escaped via 'sql.value(...)', an identifier wasn't wrapped with 'sql.identifier(...)', or a SQL expression was added without using the \`sql\` tagged template literal. Alternatively, perhaps you forgot to call sql.withTransformer() when building your SQL?`);
198
251
  }
199
252
  /**
200
253
  * Accepts an sql`...` expression and compiles it out to SQL text with
@@ -243,7 +296,7 @@ function compile(sql, options) {
243
296
  * Join this to generate the SQL query
244
297
  */
245
298
  const sqlFragments = [];
246
- const trustedInput = untrustedInput[thereCanBeOnlyOne_js_1.$$type] !== undefined
299
+ const trustedInput = untrustedInput?.[thereCanBeOnlyOne_js_1.$$type] !== undefined
247
300
  ? untrustedInput
248
301
  : enforceValidNode(untrustedInput, ``);
249
302
  const items = trustedInput[thereCanBeOnlyOne_js_1.$$type] === "QUERY"
@@ -252,7 +305,7 @@ function compile(sql, options) {
252
305
  const itemCount = items.length;
253
306
  for (let itemIndex = 0; itemIndex < itemCount; itemIndex++) {
254
307
  const itemAtIndex = items[itemIndex];
255
- const item = itemAtIndex[thereCanBeOnlyOne_js_1.$$type] !== undefined
308
+ const item = itemAtIndex?.[thereCanBeOnlyOne_js_1.$$type] !== undefined
256
309
  ? itemAtIndex
257
310
  : enforceValidNode(itemAtIndex, `item ${itemIndex}`);
258
311
  switch (item[thereCanBeOnlyOne_js_1.$$type]) {
@@ -337,7 +390,10 @@ function compile(sql, options) {
337
390
  if (!resolvedPlaceholder) {
338
391
  throw new Error("ERROR: sql.placeholder was used in this query, but no value was supplied for it, and it has no fallback.");
339
392
  }
340
- sqlFragments.push(print(resolvedPlaceholder, indent));
393
+ const resolved = print(resolvedPlaceholder, indent);
394
+ if (resolved !== "") {
395
+ sqlFragments.push(resolved);
396
+ }
341
397
  break;
342
398
  }
343
399
  default: {
@@ -356,7 +412,6 @@ function compile(sql, options) {
356
412
  [exports.$$symbolToIdentifier]: symbolToIdentifier,
357
413
  };
358
414
  }
359
- exports.compile = compile;
360
415
  // LRU not necessary
361
416
  const CACHE_SIMPLE_FRAGMENTS = new Map();
362
417
  /**
@@ -396,7 +451,7 @@ const sqlBase = function sql(strings, ...values) {
396
451
  currentText += text;
397
452
  if (i < l - 1) {
398
453
  const rawVal = values[i];
399
- const valid = rawVal[thereCanBeOnlyOne_js_1.$$type] !== undefined
454
+ const valid = rawVal?.[thereCanBeOnlyOne_js_1.$$type] !== undefined
400
455
  ? rawVal
401
456
  : enforceValidNode(rawVal, `template literal placeholder ${i}`);
402
457
  if (valid[thereCanBeOnlyOne_js_1.$$type] === "RAW") {
@@ -457,7 +512,6 @@ function raw(text) {
457
512
  }
458
513
  return makeRawNode(text);
459
514
  }
460
- exports.raw = raw;
461
515
  /**
462
516
  * Creates a SQL item for a SQL identifier. A SQL identifier is anything like
463
517
  * a table, schema, or column name. An identifier may also have a namespace,
@@ -500,7 +554,6 @@ function identifier(...names) {
500
554
  }
501
555
  return items.length === 1 ? items[0] : makeQueryNode(items);
502
556
  }
503
- exports.identifier = identifier;
504
557
  /**
505
558
  * Creates a SQL item for a value that will be included in our final query.
506
559
  * This value will be added in a way which avoids SQL injection.
@@ -508,7 +561,6 @@ exports.identifier = identifier;
508
561
  function value(val) {
509
562
  return makeValueNode(val);
510
563
  }
511
- exports.value = value;
512
564
  const trueNode = makeRawNode(`TRUE`, "true");
513
565
  exports.true = trueNode;
514
566
  const falseNode = makeRawNode(`FALSE`, "false");
@@ -551,7 +603,6 @@ function literal(val) {
551
603
  return value(val);
552
604
  }
553
605
  }
554
- exports.literal = literal;
555
606
  /**
556
607
  * Join some SQL items together, optionally separated by a string. Useful when
557
608
  * dealing with lists of SQL items, for example a dynamic list of columns or
@@ -570,7 +621,7 @@ function join(items, separator = "") {
570
621
  }
571
622
  else if (items.length === 1) {
572
623
  const rawNode = items[0];
573
- const node = rawNode[thereCanBeOnlyOne_js_1.$$type] !== undefined
624
+ const node = rawNode?.[thereCanBeOnlyOne_js_1.$$type] !== undefined
574
625
  ? rawNode
575
626
  : enforceValidNode(rawNode, `join item ${0}`);
576
627
  return node;
@@ -581,7 +632,7 @@ function join(items, separator = "") {
581
632
  for (let i = 0, l = items.length; i < l; i++) {
582
633
  const rawNode = items[i];
583
634
  const addSeparator = i > 0 && hasSeparator;
584
- const node = rawNode[thereCanBeOnlyOne_js_1.$$type] !== undefined
635
+ const node = rawNode?.[thereCanBeOnlyOne_js_1.$$type] !== undefined
585
636
  ? rawNode
586
637
  : enforceValidNode(rawNode, `join item ${i}`);
587
638
  if (addSeparator) {
@@ -620,7 +671,6 @@ function join(items, separator = "") {
620
671
  ? currentItems[0]
621
672
  : makeQueryNode(currentItems);
622
673
  }
623
- exports.join = join;
624
674
  function expandQueryNodes(node) {
625
675
  const parens = (node.f & FLAG_HAS_PARENS) === FLAG_HAS_PARENS;
626
676
  if (parens) {
@@ -639,11 +689,9 @@ function indent(fragmentOrStrings, ...values) {
639
689
  }
640
690
  return makeIndentNode(fragment);
641
691
  }
642
- exports.indent = indent;
643
692
  function indentIf(condition, fragment) {
644
693
  return isDev && condition ? makeIndentNode(fragment) : fragment;
645
694
  }
646
- exports.indentIf = indentIf;
647
695
  const QUOTED_IDENTIFIER_REGEX = /^"[^"]+"$/;
648
696
  const UNQUOTED_IDENTIFIER_REGEX = /^[a-zA-Z0-9_]+$/;
649
697
  const NUMBER_REGEX_1 = /^[0-9]+(?:\.[0-9]+)?$/;
@@ -780,15 +828,12 @@ function parens(frag, force) {
780
828
  }
781
829
  return parenthesize(frag);
782
830
  }
783
- exports.parens = parens;
784
831
  function symbolAlias(symbol1, symbol2) {
785
832
  return makeSymbolAliasNode(symbol1, symbol2);
786
833
  }
787
- exports.symbolAlias = symbolAlias;
788
834
  function placeholder(symbol, fallback) {
789
835
  return makePlaceholderNode(symbol, fallback);
790
836
  }
791
- exports.placeholder = placeholder;
792
837
  function arraysMatch(array1, array2, comparator) {
793
838
  if (array1 === array2)
794
839
  return true;
@@ -796,14 +841,24 @@ function arraysMatch(array1, array2, comparator) {
796
841
  if (l !== array2.length) {
797
842
  return false;
798
843
  }
799
- for (let i = 0; i < l; i++) {
800
- if (comparator ? !comparator(array1[i], array2[i]) : array1[i] !== array2[i]) {
801
- return false;
844
+ if (comparator != null) {
845
+ for (let i = 0; i < l; i++) {
846
+ const a = array1[i];
847
+ const b = array2[i];
848
+ if (a !== b && !comparator(a, b)) {
849
+ return false;
850
+ }
851
+ }
852
+ }
853
+ else {
854
+ for (let i = 0; i < l; i++) {
855
+ if (array1[i] !== array2[i]) {
856
+ return false;
857
+ }
802
858
  }
803
859
  }
804
860
  return true;
805
861
  }
806
- exports.arraysMatch = arraysMatch;
807
862
  /*
808
863
  export function isEquivalentSymbol(
809
864
  sql1: symbol,
@@ -886,7 +941,6 @@ function isEquivalent(sql1, sql2, options) {
886
941
  }
887
942
  }
888
943
  }
889
- exports.isEquivalent = isEquivalent;
890
944
  function replaceSymbolInNode(frag, needle, replacement) {
891
945
  switch (frag[thereCanBeOnlyOne_js_1.$$type]) {
892
946
  case "RAW": {
@@ -952,7 +1006,6 @@ function replaceSymbol(frag, needle, replacement) {
952
1006
  return replaceSymbolInNode(frag, needle, replacement);
953
1007
  }
954
1008
  }
955
- exports.replaceSymbol = replaceSymbol;
956
1009
  /**
957
1010
  * @internal
958
1011
  */
@@ -979,6 +1032,16 @@ function getSubstitute(initialSymbol, symbolSubstitutes) {
979
1032
  }
980
1033
  throw new Error("symbolSubstitutes depth too deep");
981
1034
  }
1035
+ const _userTransformers = [];
1036
+ function withTransformer(transformer, callback) {
1037
+ _userTransformers.push(transformer);
1038
+ try {
1039
+ return callback(exports.sql);
1040
+ }
1041
+ finally {
1042
+ _userTransformers.pop();
1043
+ }
1044
+ }
982
1045
  exports.sql = sqlBase;
983
1046
  exports.fragment = exports.sql;
984
1047
  exports.query = exports.sql;
@@ -1006,6 +1069,7 @@ const attributes = {
1006
1069
  null: nullNode,
1007
1070
  replaceSymbol,
1008
1071
  isSQL,
1072
+ withTransformer,
1009
1073
  };
1010
1074
  Object.entries(attributes).forEach(([exportName, value]) => {
1011
1075
  if (!value.$$export) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const version = "5.0.0-beta.8";
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO,iBAAiB,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.version = void 0;
4
+ // This file is autogenerated by /scripts/postversion.mjs
5
+ exports.version = "5.0.0-beta.8";
6
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":";;;AAAA,yDAAyD;AAC5C,QAAA,OAAO,GAAG,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "pg-sql2",
3
- "version": "5.0.0-beta.6",
3
+ "version": "5.0.0-beta.8",
4
4
  "description": "Generate safe Postgres-compliant SQL with tagged template literals",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "scripts": {
8
8
  "pretest": "node dist/index.js",
9
- "test": "jest -i",
9
+ "test": "jest",
10
10
  "posttest": "yarn test:docs",
11
11
  "test:docs": "markdown-doctest",
12
12
  "prepack": "tsc -b"