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 +23 -0
- package/README.md +4 -6
- package/dist/index.d.ts +14 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +43 -46
- package/dist/index.js.map +1 -1
- package/dist/thereCanBeOnlyOne.d.ts +9 -0
- package/dist/thereCanBeOnlyOne.d.ts.map +1 -0
- package/dist/thereCanBeOnlyOne.js +14 -0
- package/dist/thereCanBeOnlyOne.js.map +1 -0
- package/package.json +1 -1
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
|
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,
|
|
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
|
-
|
|
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;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
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
|
-
[
|
|
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
|
-
[
|
|
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
|
-
[
|
|
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
|
-
[
|
|
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
|
-
[
|
|
64
|
-
c: 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
|
-
[
|
|
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[
|
|
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[
|
|
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[
|
|
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[
|
|
250
|
+
const valid = v[thereCanBeOnlyOne_js_1.$$type] !== undefined
|
|
258
251
|
? v
|
|
259
252
|
: enforceValidNode(v, `literal placeholder ${i}`);
|
|
260
|
-
if (valid[
|
|
253
|
+
if (valid[thereCanBeOnlyOne_js_1.$$type] === "RAW") {
|
|
261
254
|
lastRawNode = valid;
|
|
262
255
|
currentText += valid.t;
|
|
263
256
|
}
|
|
264
|
-
else if (valid[
|
|
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[
|
|
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
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
|
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 =
|
|
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.
|
|
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.
|
|
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.
|
|
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[
|
|
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[
|
|
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
|
-
//
|
|
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[
|
|
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[
|
|
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[
|
|
774
|
+
if (node[thereCanBeOnlyOne_js_1.$$type] === "QUERY") {
|
|
779
775
|
for (const innerNode of node.n) {
|
|
780
|
-
if (innerNode[
|
|
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[
|
|
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[
|
|
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[
|
|
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
|
-
|
|
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"}
|