tamedevil 0.0.0-alpha.2 → 0.0.0-alpha.4

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,28 @@
1
1
  # tamedevil
2
2
 
3
+ ## 0.0.0-alpha.4
4
+
5
+ ### Patch Changes
6
+
7
+ - [#408](https://github.com/benjie/postgraphile-private/pull/408)
8
+ [`f5dd38aa3`](https://github.com/benjie/postgraphile-private/commit/f5dd38aa34c10f5ef0e0fa8fa48b70534ac3c294)
9
+ Thanks [@benjie](https://github.com/benjie)! - 'toJSON' export is now named
10
+ 'stringifyJSON'
11
+
12
+ - [#408](https://github.com/benjie/postgraphile-private/pull/408)
13
+ [`088d83b1d`](https://github.com/benjie/postgraphile-private/commit/088d83b1de2782a1a37a5998747b202a6c2b27a2)
14
+ Thanks [@benjie](https://github.com/benjie)! - Rename `dangerousKey` to
15
+ `safeKeyOrThrow` for clarity.
16
+
17
+ ## 0.0.0-alpha.3
18
+
19
+ ### Patch Changes
20
+
21
+ - [#370](https://github.com/benjie/postgraphile-private/pull/370)
22
+ [`339fe20d0`](https://github.com/benjie/postgraphile-private/commit/339fe20d0c6e8600d263ce8093cd85a6ea8adbbf)
23
+ Thanks [@benjie](https://github.com/benjie)! - Allow multiple instances of
24
+ pg-sql2 and tamedevil to help handle package manager shenanigans.
25
+
3
26
  ## 0.0.0-alpha.2
4
27
 
5
28
  ### Patch Changes
package/README.md CHANGED
@@ -52,14 +52,12 @@ and development via sponsorship.
52
52
  And please give some love to our featured sponsors 🤩:
53
53
 
54
54
  <table><tr>
55
- <td align="center"><a href="https://surge.io/"><img src="https://graphile.org/images/sponsors/surge.png" width="90" height="90" alt="Surge" /><br />Surge</a> *</td>
56
55
  <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>
57
56
  <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>
58
57
  <td align="center"><a href="https://qwick.com/"><img src="https://graphile.org/images/sponsors/qwick.png" width="90" height="90" alt="Qwick" /><br />Qwick</a> *</td>
59
- </tr><tr>
60
58
  <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>
59
+ </tr><tr>
61
60
  <td align="center"><a href=""><img src="https://graphile.org/images/sponsors/chadf.png" width="90" height="90" alt="Chad Furman" /><br />Chad Furman</a> *</td>
62
- <td align="center"><a href="https://www.enzuzo.com/"><img src="https://graphile.org/images/sponsors/enzuzo.png" width="90" height="90" alt="Enzuzo" /><br />Enzuzo</a> *</td>
63
61
  <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>
64
62
  </tr></table>
65
63
 
@@ -247,7 +245,7 @@ Joins an array of `te` values using the delimiter (a plain string); e.g.
247
245
 
248
246
  ```js
249
247
  const keysAndValues = ["a", "b", "c", "d"].map(
250
- (n, i) => te`${te.dangerousKey(n)}: ${te.literal(i)}`,
248
+ (n, i) => te`${te.safeKeyOrThrow(n)}: ${te.literal(i)}`,
251
249
  );
252
250
  const obj = te.run`return { ${te.join(keysAndValues, ", ")} }`;
253
251
 
@@ -270,7 +268,7 @@ object into variable name TE nodes without using `te.dangerouslyIncludeRawCode`.
270
268
  Normally you'd just use `` te`myVarNameHere` `` to define a variable name (as
271
269
  just regular code).
272
270
 
273
- ### `te.dangerousKey(ident, forceQuotes = false)`
271
+ ### `te.safeKeyOrThrow(ident, forceQuotes = false)`
274
272
 
275
273
  Takes `ident` and turns it into the representation of a safely escaped
276
274
  JavaScript object key (to be used in an object definition). We do our best to
@@ -284,7 +282,7 @@ this is intended to be used with relatively straightforward strings
284
282
  `Object.getOwnPropertyNames(Object.prototype)`.)
285
283
 
286
284
  **IMPORTANT**: It's strongly recommended that instead of defining an object via
287
- `const obj = { ${te.dangerousKey(untrustedKey)}: value }` you instead use
285
+ `const obj = { ${te.safeKeyOrThrow(untrustedKey)}: value }` you instead use
288
286
  `const obj = Object.create(null);` and then set the properties on the resulting
289
287
  object via `${obj}[${te.lit(untrustedKey)}] = value;` - this prevents attacks
290
288
  such as **prototype polution** since properties like `__proto__` are not special
package/dist/index.d.ts CHANGED
@@ -1,11 +1,4 @@
1
- /**
2
- * This is the secret to our safety; since this is a symbol it cannot be faked
3
- * in a JSON payload and it cannot be constructed with a new Symbol (even with
4
- * the same argument), so external data cannot make itself trusted.
5
- *
6
- * @internal
7
- */
8
- declare const $$type: unique symbol;
1
+ import { $$type } from "./thereCanBeOnlyOne.js";
9
2
  /**
10
3
  * Represents raw TE, the text will be output verbatim into the compiled code.
11
4
  */
@@ -96,6 +89,8 @@ export declare function stringifyString(value: string): string;
96
89
  /**
97
90
  * Equivalent to JSON.stringify, but typically faster.
98
91
  */
92
+ export declare const stringifyJSON: (value: any) => string;
93
+ /** @deprecated Use stringifyJSON instead */
99
94
  export declare const toJSON: (value: any) => string;
100
95
  /**
101
96
  * If the value is simple this will stringify it and inject it directly into
@@ -139,14 +134,14 @@ declare function identifier(name: string): TERawNode;
139
134
  * ```
140
135
  *
141
136
  * IMPORTANT: It's strongly recommended that instead of defining an object via
142
- * `const obj = { ${te.dangerousKey(untrustedKey)}: value }` you instead use
137
+ * `const obj = { ${te.safeKeyOrThrow(untrustedKey)}: value }` you instead use
143
138
  * `const obj = Object.create(null);` and then set the properties on the resulting
144
139
  * object via `${obj}${te.set(untrustedKey, true)} = value;` - this prevents
145
140
  * attacks such as **prototype polution** since properties like `__proto__` are
146
141
  * not special on null-prototype objects, whereas they can cause havok in
147
142
  * regular `{}` objects (POJOs).
148
143
  */
149
- declare function dangerousKey(key: string | symbol | number): TE;
144
+ declare function safeKeyOrThrow(key: string | symbol | number): TE;
150
145
  /**
151
146
  * Accesses the key of an object either via `.` or `[]` as appropriate;
152
147
  * `obj${te.get(key)}` would become `obj.foo` or `obj["1foo"]` as
@@ -173,6 +168,9 @@ declare function optionalGet(key: string | symbol | number): TE;
173
168
  * (`Object.create(null)`) then you can set `hasNullPrototype` to true and all
174
169
  * keys are allowed. If this is not the case, then an error will be thrown on
175
170
  * certain potentially dangerous keys such as `__proto__` or `constructor`.
171
+ *
172
+ * ENHANCE: consider aliasing this as 'leftAccess' (accessing a property, to
173
+ * be done on the left side of an assignment).
176
174
  */
177
175
  declare function set(key: string | symbol | number, hasNullPrototype?: boolean): TE;
178
176
  /**
@@ -229,7 +227,9 @@ export declare class Idents {
229
227
  }
230
228
  declare const te: TamedEvil;
231
229
  export default te;
232
- export { batch, cache, compile, dangerousKey, dangerouslyIncludeRawCode, run as eval, get, identifier, isTE, join, lit, lit as literal, optionalGet, ref, run, runInBatch, set, subcomment, substring, te, tempVar, tmp, undefinedNode as undefined, };
230
+ export { batch, cache, compile,
231
+ /** @deprecated Use safeKeyOrThrow instead */
232
+ safeKeyOrThrow as dangerousKey, dangerouslyIncludeRawCode, run as eval, get, identifier, isTE, join, lit, lit as literal, optionalGet, ref, run, runInBatch, safeKeyOrThrow, set, subcomment, substring, te, tempVar, tmp, undefinedNode as undefined, };
233
233
  export interface TamedEvil {
234
234
  (strings: TemplateStringsArray, ...values: Array<TE>): TE;
235
235
  te: TamedEvil;
@@ -242,7 +242,9 @@ export interface TamedEvil {
242
242
  subcomment: typeof subcomment;
243
243
  join: typeof join;
244
244
  identifier: typeof identifier;
245
- dangerousKey: typeof dangerousKey;
245
+ safeKeyOrThrow: typeof safeKeyOrThrow;
246
+ /** @deprecated Use safeKeyOrThrow instead */
247
+ dangerousKey: typeof safeKeyOrThrow;
246
248
  get: typeof get;
247
249
  optionalGet: typeof optionalGet;
248
250
  set: typeof set;
@@ -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,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.undefined = exports.tmp = exports.tempVar = exports.te = exports.substring = exports.subcomment = exports.set = exports.runInBatch = exports.run = exports.ref = exports.optionalGet = exports.literal = exports.lit = exports.join = exports.isTE = exports.identifier = exports.get = exports.eval = exports.dangerouslyIncludeRawCode = exports.dangerousKey = exports.compile = exports.cache = exports.batch = exports.Idents = exports.isSafeObjectPropertyName = exports.toJSON = exports.stringifyString = void 0;
3
+ exports.undefined = exports.tmp = exports.tempVar = exports.te = exports.substring = exports.subcomment = exports.set = exports.safeKeyOrThrow = exports.runInBatch = exports.run = exports.ref = exports.optionalGet = exports.literal = exports.lit = exports.join = exports.isTE = exports.identifier = exports.get = exports.eval = exports.dangerouslyIncludeRawCode = exports.dangerousKey = exports.compile = exports.cache = exports.batch = exports.Idents = exports.isSafeObjectPropertyName = exports.toJSON = exports.stringifyJSON = exports.stringifyString = void 0;
4
4
  const reservedWords_js_1 = require("./reservedWords.js");
5
+ const thereCanBeOnlyOne_js_1 = require("./thereCanBeOnlyOne.js");
5
6
  /**
6
7
  * For compatibility with graphile-export
7
8
  */
@@ -20,23 +21,15 @@ function exportAs(thing, exportName) {
20
21
  return thing;
21
22
  }
22
23
  const isDev = typeof process !== "undefined" && process.env.GRAPHILE_ENV === "development";
23
- /**
24
- * This is the secret to our safety; since this is a symbol it cannot be faked
25
- * in a JSON payload and it cannot be constructed with a new Symbol (even with
26
- * the same argument), so external data cannot make itself trusted.
27
- *
28
- * @internal
29
- */
30
- const $$type = Symbol("tamedevil-type");
31
24
  function makeRawNode(text) {
32
25
  return {
33
- [$$type]: "RAW",
26
+ [thereCanBeOnlyOne_js_1.$$type]: "RAW",
34
27
  t: text,
35
28
  };
36
29
  }
37
30
  function makeExportedRawNode(text, exportName) {
38
31
  const newNode = {
39
- [$$type]: "RAW",
32
+ [thereCanBeOnlyOne_js_1.$$type]: "RAW",
40
33
  t: text,
41
34
  };
42
35
  exportAs(newNode, exportName);
@@ -45,7 +38,7 @@ function makeExportedRawNode(text, exportName) {
45
38
  // Simple function to help V8 optimize it.
46
39
  function makeRefNode(rawValue, name) {
47
40
  return Object.freeze({
48
- [$$type]: "REF",
41
+ [thereCanBeOnlyOne_js_1.$$type]: "REF",
49
42
  v: rawValue,
50
43
  n: name,
51
44
  });
@@ -53,21 +46,21 @@ function makeRefNode(rawValue, name) {
53
46
  // Simple function to help V8 optimize it.
54
47
  function makeTemporaryVariableNode(symbol) {
55
48
  return Object.freeze({
56
- [$$type]: "VARIABLE",
49
+ [thereCanBeOnlyOne_js_1.$$type]: "VARIABLE",
57
50
  s: symbol,
58
51
  });
59
52
  }
60
53
  // Simple function to help V8 optimize it.
61
54
  function makeIndentNode(content) {
62
55
  return Object.freeze({
63
- [$$type]: "INDENT",
64
- c: content[$$type] === "QUERY" ? content : makeQueryNode([content]),
56
+ [thereCanBeOnlyOne_js_1.$$type]: "INDENT",
57
+ c: content[thereCanBeOnlyOne_js_1.$$type] === "QUERY" ? content : makeQueryNode([content]),
65
58
  });
66
59
  }
67
60
  // Simple function to help V8 optimize it.
68
61
  function makeQueryNode(nodes) {
69
62
  return Object.freeze({
70
- [$$type]: "QUERY",
63
+ [thereCanBeOnlyOne_js_1.$$type]: "QUERY",
71
64
  n: nodes,
72
65
  });
73
66
  }
@@ -77,7 +70,7 @@ function makeQueryNode(nodes) {
77
70
  function isTE(node) {
78
71
  return (typeof node === "object" &&
79
72
  node !== null &&
80
- typeof node[$$type] === "string");
73
+ typeof node[thereCanBeOnlyOne_js_1.$$type] === "string");
81
74
  }
82
75
  exports.isTE = isTE;
83
76
  function enforceValidNode(node, where) {
@@ -130,7 +123,7 @@ function serialize(item, refs, refMap, varMap, indent = 0) {
130
123
  if (item == null) {
131
124
  enforceValidNode(item);
132
125
  }
133
- switch (item[$$type]) {
126
+ switch (item[thereCanBeOnlyOne_js_1.$$type]) {
134
127
  case "QUERY": {
135
128
  for (const listItem of item.n) {
136
129
  str += serialize(listItem, refs, refMap, varMap, indent);
@@ -236,7 +229,7 @@ const teBase = function te(strings, ...values) {
236
229
  // Special case te`${...}` - just return the node directly
237
230
  if (stringsLength === 2 && strings[0] === "" && strings[1] === "") {
238
231
  const v = values[0];
239
- return v[$$type] !== undefined ? v : enforceValidNode(v);
232
+ return v[thereCanBeOnlyOne_js_1.$$type] !== undefined ? v : enforceValidNode(v);
240
233
  }
241
234
  const items = [];
242
235
  let lastRawNode = null;
@@ -254,19 +247,19 @@ const teBase = function te(strings, ...values) {
254
247
  currentText += text;
255
248
  if (i !== finalStringIndex) {
256
249
  const v = values[i];
257
- const valid = v[$$type] !== undefined
250
+ const valid = v[thereCanBeOnlyOne_js_1.$$type] !== undefined
258
251
  ? v
259
252
  : enforceValidNode(v, `literal placeholder ${i}`);
260
- if (valid[$$type] === "RAW") {
253
+ if (valid[thereCanBeOnlyOne_js_1.$$type] === "RAW") {
261
254
  lastRawNode = valid;
262
255
  currentText += valid.t;
263
256
  }
264
- else if (valid[$$type] === "QUERY") {
257
+ else if (valid[thereCanBeOnlyOne_js_1.$$type] === "QUERY") {
265
258
  const nodes = valid.n;
266
259
  const nodeCount = nodes.length;
267
260
  for (let nodeIndex = 0; nodeIndex < nodeCount; nodeIndex++) {
268
261
  const node = nodes[nodeIndex];
269
- if (node[$$type] === "RAW") {
262
+ if (node[thereCanBeOnlyOne_js_1.$$type] === "RAW") {
270
263
  lastRawNode = node;
271
264
  currentText += node.t;
272
265
  }
@@ -398,11 +391,10 @@ function stringifyString(value) {
398
391
  }
399
392
  exports.stringifyString = stringifyString;
400
393
  // PERF: more optimal stringifier
401
- // TODO: rename to jsonStringify?
402
394
  /**
403
395
  * Equivalent to JSON.stringify, but typically faster.
404
396
  */
405
- const toJSON = (value) => {
397
+ const stringifyJSON = (value) => {
406
398
  if (value == null)
407
399
  return "null";
408
400
  if (value === true)
@@ -417,7 +409,9 @@ const toJSON = (value) => {
417
409
  }
418
410
  return JSON.stringify(value);
419
411
  };
420
- exports.toJSON = toJSON;
412
+ exports.stringifyJSON = stringifyJSON;
413
+ /** @deprecated Use stringifyJSON instead */
414
+ exports.toJSON = exports.stringifyJSON;
421
415
  /**
422
416
  * If the value is simple this will stringify it and inject it directly into
423
417
  * the code to be evaluated, otherwise will defer to `te.ref`.
@@ -439,7 +433,7 @@ function lit(val) {
439
433
  * https://github.com/tc39/proposal-json-superset
440
434
  */
441
435
  const primitive = val;
442
- return makeRawNode((0, exports.toJSON)(primitive));
436
+ return makeRawNode((0, exports.stringifyJSON)(primitive));
443
437
  }
444
438
  else {
445
439
  return ref(val);
@@ -561,7 +555,6 @@ function identifier(name) {
561
555
  return makeRawNode(name);
562
556
  }
563
557
  exports.identifier = identifier;
564
- // TODO: rename to `ensureSafeKey` or `safeKeyOrThrow` or something?
565
558
  /**
566
559
  * Checks that the given `key` is not explicitly disallowed as a key on a POJO and returns a TE node representing it. If disallowed, an error will be thrown. Useful for building easy to read objects:
567
560
  *
@@ -570,14 +563,14 @@ exports.identifier = identifier;
570
563
  * ```
571
564
  *
572
565
  * IMPORTANT: It's strongly recommended that instead of defining an object via
573
- * `const obj = { ${te.dangerousKey(untrustedKey)}: value }` you instead use
566
+ * `const obj = { ${te.safeKeyOrThrow(untrustedKey)}: value }` you instead use
574
567
  * `const obj = Object.create(null);` and then set the properties on the resulting
575
568
  * object via `${obj}${te.set(untrustedKey, true)} = value;` - this prevents
576
569
  * attacks such as **prototype polution** since properties like `__proto__` are
577
570
  * not special on null-prototype objects, whereas they can cause havok in
578
571
  * regular `{}` objects (POJOs).
579
572
  */
580
- function dangerousKey(key) {
573
+ function safeKeyOrThrow(key) {
581
574
  if ((0, exports.isSafeObjectPropertyName)(key)) {
582
575
  if (canBeObjectKeyWithoutQuotes(key)) {
583
576
  return makeRawNode(String(key));
@@ -590,7 +583,8 @@ function dangerousKey(key) {
590
583
  throw new Error(`Forbidden object key: ${JSON.stringify(key)}; consider using 'Object.create(null)' and assigning properties using te.lit.`);
591
584
  }
592
585
  }
593
- exports.dangerousKey = dangerousKey;
586
+ exports.dangerousKey = safeKeyOrThrow;
587
+ exports.safeKeyOrThrow = safeKeyOrThrow;
594
588
  function canAccessViaDot(str) {
595
589
  return (str.length < MAX_SHORT_STRING_LENGTH &&
596
590
  /^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(str));
@@ -608,7 +602,7 @@ function get(key) {
608
602
  makeRawNode(`.${key}`)
609
603
  : // ["@@meaning"]
610
604
  typeof key === "string" || (typeof key === "number" && Number.isFinite(key))
611
- ? makeRawNode(`[${(0, exports.toJSON)(key)}]`)
605
+ ? makeRawNode(`[${(0, exports.stringifyJSON)(key)}]`)
612
606
  : te `[${te.lit(key)}]`;
613
607
  }
614
608
  exports.get = get;
@@ -625,11 +619,10 @@ function optionalGet(key) {
625
619
  makeRawNode(`?.${key}`)
626
620
  : // ?.["@@meaning"]
627
621
  typeof key === "string" || (typeof key === "number" && Number.isFinite(key))
628
- ? makeRawNode(`?.[${(0, exports.toJSON)(key)}]`)
622
+ ? makeRawNode(`?.[${(0, exports.stringifyJSON)(key)}]`)
629
623
  : te `?.[${te.lit(key)}]`;
630
624
  }
631
625
  exports.optionalGet = optionalGet;
632
- // TODO: rename this. 'leftSet'? 'leftAccess'? 'safeAccess'?
633
626
  /**
634
627
  * Access to the key of an object either via `.` or `[]` as appropriate ready
635
628
  * for being assigned to; `obj${te.set(key)}` would become `obj.foo` or
@@ -640,6 +633,9 @@ exports.optionalGet = optionalGet;
640
633
  * (`Object.create(null)`) then you can set `hasNullPrototype` to true and all
641
634
  * keys are allowed. If this is not the case, then an error will be thrown on
642
635
  * certain potentially dangerous keys such as `__proto__` or `constructor`.
636
+ *
637
+ * ENHANCE: consider aliasing this as 'leftAccess' (accessing a property, to
638
+ * be done on the left side of an assignment).
643
639
  */
644
640
  function set(key, hasNullPrototype = false) {
645
641
  if (!hasNullPrototype && disallowedKeys.includes(key)) {
@@ -650,7 +646,7 @@ function set(key, hasNullPrototype = false) {
650
646
  makeRawNode(`.${key}`)
651
647
  : // ["@@meaning"]
652
648
  typeof key === "string" || (typeof key === "number" && Number.isFinite(key))
653
- ? makeRawNode(`[${(0, exports.toJSON)(key)}]`)
649
+ ? makeRawNode(`[${(0, exports.stringifyJSON)(key)}]`)
654
650
  : te `[${te.lit(key)}]`;
655
651
  }
656
652
  exports.set = set;
@@ -668,7 +664,7 @@ exports.tempVar = tempVar;
668
664
  * @experimental
669
665
  */
670
666
  function tmp(obj, callback) {
671
- const trustedObj = obj[$$type] !== undefined ? obj : enforceValidNode(obj);
667
+ const trustedObj = obj[thereCanBeOnlyOne_js_1.$$type] !== undefined ? obj : enforceValidNode(obj);
672
668
  // ENHANCEMENT: we should be able to reuse these tempvars between tmp calls
673
669
  // that aren't nested (or are nested at the same level).
674
670
  const varName = te.tempVar();
@@ -682,7 +678,7 @@ function run(fragmentOrStrings, ...values) {
682
678
  if (values.length > 0) {
683
679
  throw new Error("Invalid call to `te.run`");
684
680
  }
685
- const fragment = fragmentOrStrings[$$type] !== undefined
681
+ const fragment = fragmentOrStrings[thereCanBeOnlyOne_js_1.$$type] !== undefined
686
682
  ? fragmentOrStrings
687
683
  : enforceValidNode(fragmentOrStrings);
688
684
  const compiled = compile(fragment);
@@ -695,7 +691,7 @@ function run(fragmentOrStrings, ...values) {
695
691
  return newFunction(...argNames, compiled.string)(...argValues);
696
692
  }
697
693
  catch (e) {
698
- // TODO: improve this!
694
+ // ERRORS: improve this!
699
695
  console.error(`Error occurred during code generation:`);
700
696
  console.error(e);
701
697
  console.error("Function definition:");
@@ -758,7 +754,7 @@ function join(items, separator = "") {
758
754
  }
759
755
  else if (items.length === 1) {
760
756
  const rawNode = items[0];
761
- const node = rawNode[$$type] !== undefined
757
+ const node = rawNode[thereCanBeOnlyOne_js_1.$$type] !== undefined
762
758
  ? rawNode
763
759
  : enforceValidNode(rawNode, `join item ${0}`);
764
760
  return node;
@@ -768,16 +764,16 @@ function join(items, separator = "") {
768
764
  const currentItems = [];
769
765
  for (let i = 0, l = items.length; i < l; i++) {
770
766
  const rawNode = items[i];
771
- const node = rawNode[$$type] !== undefined
767
+ const node = rawNode[thereCanBeOnlyOne_js_1.$$type] !== undefined
772
768
  ? rawNode
773
769
  : enforceValidNode(rawNode, `join item ${i}`);
774
770
  const addSeparator = i > 0 && hasSeparator;
775
771
  if (addSeparator) {
776
772
  currentText += separator;
777
773
  }
778
- if (node[$$type] === "QUERY") {
774
+ if (node[thereCanBeOnlyOne_js_1.$$type] === "QUERY") {
779
775
  for (const innerNode of node.n) {
780
- if (innerNode[$$type] === "RAW") {
776
+ if (innerNode[thereCanBeOnlyOne_js_1.$$type] === "RAW") {
781
777
  currentText += innerNode.t;
782
778
  }
783
779
  else {
@@ -789,7 +785,7 @@ function join(items, separator = "") {
789
785
  }
790
786
  }
791
787
  }
792
- else if (node[$$type] === "RAW") {
788
+ else if (node[thereCanBeOnlyOne_js_1.$$type] === "RAW") {
793
789
  currentText += node.t;
794
790
  }
795
791
  else {
@@ -812,7 +808,7 @@ exports.join = join;
812
808
  function indent(fragmentOrStrings, ...values) {
813
809
  const fragment = "raw" in fragmentOrStrings
814
810
  ? te(fragmentOrStrings, ...values)
815
- : fragmentOrStrings[$$type] !== undefined
811
+ : fragmentOrStrings[thereCanBeOnlyOne_js_1.$$type] !== undefined
816
812
  ? fragmentOrStrings
817
813
  : enforceValidNode(fragmentOrStrings);
818
814
  if (!isDev) {
@@ -825,7 +821,7 @@ function indent(fragmentOrStrings, ...values) {
825
821
  * node, otherwise it will be returned verbatim.
826
822
  */
827
823
  function indentIf(condition, fragment) {
828
- const trusted = fragment[$$type] !== undefined ? fragment : enforceValidNode(fragment);
824
+ const trusted = fragment[thereCanBeOnlyOne_js_1.$$type] !== undefined ? fragment : enforceValidNode(fragment);
829
825
  return isDev && condition ? makeIndentNode(trusted) : trusted;
830
826
  }
831
827
  /**
@@ -881,7 +877,8 @@ const attributes = {
881
877
  subcomment,
882
878
  join,
883
879
  identifier,
884
- dangerousKey,
880
+ safeKeyOrThrow,
881
+ dangerousKey: safeKeyOrThrow,
885
882
  get,
886
883
  optionalGet,
887
884
  set,
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,9 @@
1
+ /**
2
+ * This is the secret to our safety; since this is a symbol it cannot be faked
3
+ * in a JSON payload or other user-provided data, so external data cannot make
4
+ * itself trusted.
5
+ *
6
+ * @internal
7
+ */
8
+ export declare const $$type: unique symbol;
9
+ //# sourceMappingURL=thereCanBeOnlyOne.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thereCanBeOnlyOne.d.ts","sourceRoot":"","sources":["../src/thereCanBeOnlyOne.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAiD,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.$$type = void 0;
4
+ /** IMPORTANT: bump this on incompatible changes to this module */
5
+ const revision = 1;
6
+ /**
7
+ * This is the secret to our safety; since this is a symbol it cannot be faked
8
+ * in a JSON payload or other user-provided data, so external data cannot make
9
+ * itself trusted.
10
+ *
11
+ * @internal
12
+ */
13
+ exports.$$type = Symbol.for(`tamedevil-type-${revision}`);
14
+ //# sourceMappingURL=thereCanBeOnlyOne.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thereCanBeOnlyOne.js","sourceRoot":"","sources":["../src/thereCanBeOnlyOne.ts"],"names":[],"mappings":";;;AAAA,kEAAkE;AAClE,MAAM,QAAQ,GAAG,CAAC,CAAC;AAEnB;;;;;;GAMG;AACU,QAAA,MAAM,GAAkB,MAAM,CAAC,GAAG,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tamedevil",
3
- "version": "0.0.0-alpha.2",
3
+ "version": "0.0.0-alpha.4",
4
4
  "description": "Build and evaluate JavaScript strings safely via tagged template literals",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",