@prantlf/jsonlint 14.1.0 → 15.0.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/README.md +6 -0
- package/lib/cli.js +13 -1
- package/lib/jsonlint.js +14 -5
- package/lib/validator.js +3 -1
- package/package.json +1 -1
- package/web/jsonlint.html +11 -1
- package/web/jsonlint.min.js +8 -8
- package/web/jsonlint.min.js.map +3 -3
- package/web/validator.min.js +3 -3
- package/web/validator.min.js.map +2 -2
package/README.md
CHANGED
|
@@ -120,6 +120,8 @@ Usage: `jsonlint [options] [--] [<file, directory, pattern> ...]`
|
|
|
120
120
|
|
|
121
121
|
-f, --config <file> read options from a custom configuration file
|
|
122
122
|
-F, --no-config disable searching for configuration files
|
|
123
|
+
--ignore-proto-key ignore occurrences of "__proto__" object key
|
|
124
|
+
--ignore-prototype-keys ignore all keys from "Object.prototype"
|
|
123
125
|
-s, --sort-keys sort object keys (not when prettifying)
|
|
124
126
|
--sort-keys-ignore-case sort object keys ignoring the letter case
|
|
125
127
|
--sort-keys-locale <id> locale identifier to sort object keys with
|
|
@@ -199,6 +201,8 @@ The configuration is an object with the following properties, described above, w
|
|
|
199
201
|
| Parameter | Alias |
|
|
200
202
|
| --------- | ----- |
|
|
201
203
|
| patterns | |
|
|
204
|
+
| ignore-proto-key | ignoreProtoKey |
|
|
205
|
+
| ignore-prototype-keys | ignorePrototypeKeys |
|
|
202
206
|
| sort-keys | sortKeys |
|
|
203
207
|
| sort-keys-ignore-case | sortKeysIgnoreCase |
|
|
204
208
|
| sort-keys-locale | sortKeysLocale |
|
|
@@ -274,6 +278,8 @@ The `parse` method offers more detailed [error information](#error-handling), th
|
|
|
274
278
|
| `ignoreTrailingCommas` | ignores trailing commas in objects and arrays (boolean) |
|
|
275
279
|
| `allowSingleQuotedStrings` | accepts strings delimited by single-quotes too (boolean) |
|
|
276
280
|
| `allowDuplicateObjectKeys` | allows reporting duplicate object keys as an error (boolean) |
|
|
281
|
+
| `ignoreProtoKey` | ignore occurrences of the `__proto__` object key (boolean) |
|
|
282
|
+
| `ignorePrototypeKeys` | ignore all keys from `Object.prototype` (boolean) |
|
|
277
283
|
| `mode` | sets multiple options according to the type of input data (string) |
|
|
278
284
|
| `reviver` | converts object and array values (function) |
|
|
279
285
|
|
package/lib/cli.js
CHANGED
|
@@ -17,6 +17,8 @@ Usage: jsonlint [options] [--] [<file, directory, pattern> ...]
|
|
|
17
17
|
Options:
|
|
18
18
|
-f, --config <file> read options from a custom configuration file
|
|
19
19
|
-F, --no-config disable searching for configuration files
|
|
20
|
+
--ignore-proto-key ignore occurrences of "__proto__" object key
|
|
21
|
+
--ignore-prototype-keys ignore all keys from "Object.prototype"
|
|
20
22
|
-s, --sort-keys sort object keys (not when prettifying)
|
|
21
23
|
--sort-keys-ignore-case sort object keys ignoring the letter case
|
|
22
24
|
--sort-keys-locale <id> locale identifier to sort object keys with
|
|
@@ -89,6 +91,12 @@ for (let i = 2, l = argv.length; i < l; ++i) {
|
|
|
89
91
|
case 'F':
|
|
90
92
|
params.config = false
|
|
91
93
|
return
|
|
94
|
+
case 'ignore-proto-key':
|
|
95
|
+
params.ignoreProtoKey = flag
|
|
96
|
+
return
|
|
97
|
+
case 'ignore-prototype-keys':
|
|
98
|
+
params.ignorePrototypeKeys = flag
|
|
99
|
+
return
|
|
92
100
|
case 's': case 'sort-keys':
|
|
93
101
|
params.sortKeys = flag
|
|
94
102
|
return
|
|
@@ -238,6 +246,8 @@ for (let i = 2, l = argv.length; i < l; ++i) {
|
|
|
238
246
|
}
|
|
239
247
|
|
|
240
248
|
const paramNames = {
|
|
249
|
+
'ignore-proto-key': 'ignoreProtoKey',
|
|
250
|
+
'ignore-prototype-keys': 'ignorePrototypeKeys',
|
|
241
251
|
'trailing-commas': 'trailingCommas',
|
|
242
252
|
'single-quoted-strings': 'singleQuotedStrings',
|
|
243
253
|
'duplicate-keys': 'duplicateKeys',
|
|
@@ -323,7 +333,9 @@ function processContents (source, file) {
|
|
|
323
333
|
ignoreComments: params.comments,
|
|
324
334
|
ignoreTrailingCommas: params.trailingCommas || params.trimTrailingCommas,
|
|
325
335
|
allowSingleQuotedStrings: params.singleQuotedStrings,
|
|
326
|
-
allowDuplicateObjectKeys: params.duplicateKeys
|
|
336
|
+
allowDuplicateObjectKeys: params.duplicateKeys,
|
|
337
|
+
ignoreProtoKey: params.ignoreProtoKey,
|
|
338
|
+
ignorePrototypeKeys: params.ignorePrototypeKeys
|
|
327
339
|
}
|
|
328
340
|
if (params.validate.length) {
|
|
329
341
|
const schemas = params.validate.map((file, index) => {
|
package/lib/jsonlint.js
CHANGED
|
@@ -105,6 +105,8 @@ const unescapeMap = {
|
|
|
105
105
|
|
|
106
106
|
const ownsProperty = Object.prototype.hasOwnProperty
|
|
107
107
|
|
|
108
|
+
const emptyObject = {}
|
|
109
|
+
|
|
108
110
|
function parseInternal (input, options) {
|
|
109
111
|
if (typeof input !== 'string' || !(input instanceof String)) {
|
|
110
112
|
input = String(input)
|
|
@@ -114,6 +116,8 @@ function parseInternal (input, options) {
|
|
|
114
116
|
const ignoreBOM = options.ignoreBOM
|
|
115
117
|
const ignoreComments = options.ignoreComments || options.mode === 'cjson' || json5
|
|
116
118
|
const ignoreTrailingCommas = options.ignoreTrailingCommas || json5
|
|
119
|
+
const ignoreProtoKey = options.ignoreProtoKey
|
|
120
|
+
const ignorePrototypeKeys = options.ignorePrototypeKeys
|
|
117
121
|
const allowSingleQuotedStrings = options.allowSingleQuotedStrings || json5
|
|
118
122
|
const allowDuplicateObjectKeys = options.allowDuplicateObjectKeys
|
|
119
123
|
const reviver = options.reviver
|
|
@@ -381,8 +385,7 @@ function parseInternal (input, options) {
|
|
|
381
385
|
}
|
|
382
386
|
|
|
383
387
|
function parseObject () {
|
|
384
|
-
|
|
385
|
-
const emptyObject = {}
|
|
388
|
+
let result = {}
|
|
386
389
|
let isNotEmpty = false
|
|
387
390
|
|
|
388
391
|
while (position < inputLength) {
|
|
@@ -414,7 +417,8 @@ function parseInternal (input, options) {
|
|
|
414
417
|
}
|
|
415
418
|
}
|
|
416
419
|
|
|
417
|
-
if (key in emptyObject || emptyObject[key] != null)
|
|
420
|
+
if ((ignorePrototypeKeys && (key in emptyObject || emptyObject[key] != null)) ||
|
|
421
|
+
(ignoreProtoKey && key === '__proto__')) {
|
|
418
422
|
// silently ignore it
|
|
419
423
|
} else {
|
|
420
424
|
if (reviver) {
|
|
@@ -422,7 +426,11 @@ function parseInternal (input, options) {
|
|
|
422
426
|
}
|
|
423
427
|
if (value !== undefined) {
|
|
424
428
|
isNotEmpty = true
|
|
425
|
-
|
|
429
|
+
if (key === '__proto__') {
|
|
430
|
+
result = Object.assign(JSON.parse(`{"__proto__":${JSON.stringify(value)}}`), result)
|
|
431
|
+
} else {
|
|
432
|
+
result[key] = value
|
|
433
|
+
}
|
|
426
434
|
}
|
|
427
435
|
}
|
|
428
436
|
|
|
@@ -954,7 +962,8 @@ const oldNode = typeof process !== 'undefined' && process.version.startsWith('v4
|
|
|
954
962
|
function needsCustomParser (options) {
|
|
955
963
|
return options.ignoreBOM || options.ignoreComments || options.ignoreTrailingCommas ||
|
|
956
964
|
options.allowSingleQuotedStrings || options.allowDuplicateObjectKeys === false ||
|
|
957
|
-
options.
|
|
965
|
+
options.ignoreProtoKey || options.ignorePrototypeKeys || options.mode === 'cjson' ||
|
|
966
|
+
options.mode === 'json5' || isSafari || oldNode
|
|
958
967
|
}
|
|
959
968
|
|
|
960
969
|
function getReviver (options) {
|
package/lib/validator.js
CHANGED
|
@@ -167,7 +167,9 @@
|
|
|
167
167
|
ignoreComments: options.ignoreComments,
|
|
168
168
|
ignoreTrailingCommas: options.ignoreTrailingCommas,
|
|
169
169
|
allowSingleQuotedStrings: options.allowSingleQuotedStrings,
|
|
170
|
-
allowDuplicateObjectKeys: options.allowDuplicateObjectKeys
|
|
170
|
+
allowDuplicateObjectKeys: options.allowDuplicateObjectKeys,
|
|
171
|
+
ignoreProtoKey: options.ignoreProtoKey,
|
|
172
|
+
ignorePrototypeKeys: options.ignorePrototypeKeys
|
|
171
173
|
}
|
|
172
174
|
const validate = compileSchema(ajv, schema, parseOptions)
|
|
173
175
|
return function (data, input, options) {
|
package/package.json
CHANGED
package/web/jsonlint.html
CHANGED
|
@@ -119,6 +119,14 @@
|
|
|
119
119
|
<input type="checkbox" checked id="duplicate-object-keys">
|
|
120
120
|
<label for="duplicate-object-keys">Allow duplicate object keys</label>
|
|
121
121
|
</div>
|
|
122
|
+
<div>
|
|
123
|
+
<input type="checkbox" checked id="ignore-proto-key">
|
|
124
|
+
<label for="ignore-proto-key">Ignore __proto__ key</label>
|
|
125
|
+
</div>
|
|
126
|
+
<div>
|
|
127
|
+
<input type="checkbox" checked id="ignore-prototype-keys">
|
|
128
|
+
<label for="ignore-prototype-keys">Ignore Object.prototype keys</label>
|
|
129
|
+
</div>
|
|
122
130
|
</div>
|
|
123
131
|
<div>
|
|
124
132
|
<span>Formatting:</span>
|
|
@@ -203,7 +211,7 @@
|
|
|
203
211
|
</main>
|
|
204
212
|
<hr>
|
|
205
213
|
<footer>
|
|
206
|
-
<small>Copyright © 2012-
|
|
214
|
+
<small>Copyright © 2012-2024 Zachary Carter, Ferdinand Prantl. See the <a href="https://github.com/prantlf/jsonlint#json-lint">project pages</a> to learn about command-line validation and programmatic usage.</small>
|
|
207
215
|
<!-- See http://tholman.com/github-corners/ -->
|
|
208
216
|
<a href="http://github.com/prantlf/jsonlint" class="github-corner" title="View source on GitHub"><svg width="80" height="80" viewBox="0 0 250 250" style="fill:#151513; color:#fff; position: absolute; top: 0; border: 0; right: 0;" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a><style>.github-corner:hover .octo-arm{animation:octocat-wave 560ms ease-in-out}@keyframes octocat-wave{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)}}@media (max-width:500px){.github-corner:hover .octo-arm{animation:none}.github-corner .octo-arm{animation:octocat-wave 560ms ease-in-out}}</style>
|
|
209
217
|
</footer>
|
|
@@ -367,6 +375,8 @@
|
|
|
367
375
|
allowSingleQuotedStrings: document.getElementById('single-quoted-strings').checked ||
|
|
368
376
|
mode === 'json5',
|
|
369
377
|
allowDuplicateObjectKeys: document.getElementById('duplicate-object-keys').checked,
|
|
378
|
+
ignoreProtoKey: document.getElementById('ignore-proto-key').checked,
|
|
379
|
+
ignorePrototypeKeys: document.getElementById('ignore-prototype-keys').checked
|
|
370
380
|
}
|
|
371
381
|
}
|
|
372
382
|
}
|
package/web/jsonlint.min.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
(function(l,
|
|
1
|
+
(function(l,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define("jsonlint",["exports"],f):(l=l||self,f(l.jsonlint={}))})(this,function(l){"use strict";const f={isWhiteSpace:function(e){return e===" "||e==="\xA0"||e==="\uFEFF"||e>=" "&&e<="\r"||e==="\u1680"||e>="\u2000"&&e<="\u200A"||e==="\u2028"||e==="\u2029"||e==="\u202F"||e==="\u205F"||e==="\u3000"},isWhiteSpaceJSON:function(e){return e===" "||e===" "||e===`
|
|
2
2
|
`||e==="\r"},isLineTerminator:function(e){return e===`
|
|
3
3
|
`||e==="\r"||e==="\u2028"||e==="\u2029"},isLineTerminatorJSON:function(e){return e===`
|
|
4
|
-
`||e==="\r"},isIdentifierStart:function(e){return e==="$"||e==="_"||e>="A"&&e<="Z"||e>="a"&&e<="z"||e>="\x80"&&
|
|
5
|
-
`,r:"\r",t:" ",v:"\v","/":"/"},
|
|
6
|
-
`&&++A
|
|
7
|
-
${d}
|
|
4
|
+
`||e==="\r"},isIdentifierStart:function(e){return e==="$"||e==="_"||e>="A"&&e<="Z"||e>="a"&&e<="z"||e>="\x80"&&f.NonAsciiIdentifierStart.test(e)},isIdentifierPart:function(e){return e==="$"||e==="_"||e>="A"&&e<="Z"||e>="a"&&e<="z"||e>="0"&&e<="9"||e>="\x80"&&f.NonAsciiIdentifierPart.test(e)},NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F0\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0\u08A2-\u08AC\u08E4-\u08FE\u0900-\u0963\u0966-\u096F\u0971-\u0977\u0979-\u097F\u0981-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58\u0C59\u0C60-\u0C63\u0C66-\u0C6F\u0C82\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D02\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D60-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F0\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191C\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1D00-\u1DE6\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA697\uA69F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7B\uAA80-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE26\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/};function S(u){return u>="0"&&u<="9"||u>="A"&&u<="F"||u>="a"&&u<="f"}function b(u){return u>="0"&&u<="7"}function p(u){return u>="0"&&u<="9"}function Z(u){return u.charCodeAt(0)===65279}const _={"'":"'",'"':'"',"\\":"\\",b:"\b",f:"\f",n:`
|
|
5
|
+
`,r:"\r",t:" ",v:"\v","/":"/"},q=Object.prototype.hasOwnProperty,L={};function M(u,e){(typeof u!="string"||!(u instanceof String))&&(u=String(u));const r=e.mode==="json5",C=e.ignoreBOM,D=e.ignoreComments||e.mode==="cjson"||r,d=e.ignoreTrailingCommas||r,g=e.ignoreProtoKey,m=e.ignorePrototypeKeys,y=e.allowSingleQuotedStrings||r,lu=e.allowDuplicateObjectKeys,N=e.reviver,z=e.tokenize,au=e.rawTokens,du=e.tokenLocations,U=e.tokenPaths,P=r?f.isLineTerminator:f.isLineTerminatorJSON,mu=r?f.isWhiteSpace:f.isWhiteSpaceJSON,c=u.length;let O=0,$=0,A=0;const x=[];let a,o,k;if(z){let t=null,n,F;a=function(){if(t!==null)throw Error("internal error, token overlap");n=O+1,F=A-$+1,t=A},o=function(i,s){if(t!==A){const E={type:i};au&&(E.raw=u.substr(t,A-t)),s!==void 0&&(E.value=s),du&&(E.location={start:{column:F,line:n,offset:t}}),U&&(E.path=k.slice()),x.push(E)}return t=null,s},U&&(k=[])}function gu(){let t;return A<c?t=`Unexpected token ${JSON.stringify(u[A])}`:t="Unexpected end of input",t}function hu(t){const n=A-$+1;++O;const F=I(t,u,A,O,n),i=SyntaxError(F.message);return i.reason=t,i.excerpt=F.excerpt,i.pointer=F.pointer,i.location={start:{column:n,line:O,offset:A}},i}function B(t){throw t||(t=gu()),hu(t)}function j(t){t==="\r"&&u[A]===`
|
|
6
|
+
`&&++A,$=A,++O}function J(){if(A<c){a?.();const t=u[A++];if(t==='"'||t==="'"&&y){const n=R(t);return o?.("literal",n),n}if(t==="{")return o?.("symbol","{"),Q();if(t==="[")return o?.("symbol","["),V();if(t==="-"||t==="."||p(t)||r&&(t==="+"||t==="I"||t==="N")){const n=H();return o?.("literal",n),n}if(t==="n")return w("null"),o?.("literal",null),null;if(t==="t")return w("true"),o?.("literal",!0),!0;if(t==="f")return w("false"),o?.("literal",!1),!1;--A,o?.();return}}function yu(){let t;if(A<c){a?.();const n=u[A++];if(n==='"'||n==="'"&&y){const F=R(n);return o?.("literal",F),F}if(n==="{")return o?.("symbol","{"),Q();if(n==="[")return o?.("symbol","["),V();if(n==="."||p(n)){const F=H(!0);return o?.("literal",F),F}if(r&&f.isIdentifierStart(n)||n==="\\"&&u[A]==="u"){const F=A-1;if(t=Nu(),t===void 0){A=F,o?.();return}return o?.("literal",t),t}--A,o?.();return}}function Su(){Z(u)&&(a?.(),++A,o?.("bom"))}function h(){let t;function n(){t||(t=!0,--A,a(),++A)}function F(){t&&(t=!1,o("whitespace"))}for(;A<c;){const i=u[A++];if(P(i))a&&n(),j(i);else if(mu(i))a&&n();else if(i==="/"&&D&&(u[A]==="/"||u[A]==="*"))a&&(--A,F(),a(),++A),bu(u[A++]==="*"),o?.("comment");else{--A;break}}o&&F()}function bu(t){for(;A<c;){const n=u[A++];if(P(n)){if(!t){--A;return}j(n)}else if(n==="*"&&t&&u[A]==="/"){++A;return}}t&&B("Unclosed multiline comment")}function w(t){const n=A;for(let F=1,i=t.length;F<i;++F)(A>=c||t[F]!==u[A])&&(A=n-1,B()),++A}function Q(){let t={},n=!1;for(;A<c;){h();const F=yu();lu===!1&&q.call(t,F)&&B(`Duplicate key: "${F}"`),h(),a?.();let i=u[A++];if(o?.("symbol",i),i==="}"&&F===void 0)return!d&&n&&(--A,B("Trailing comma in object")),t;if(i===":"&&F!==void 0){h(),k?.push(F);let s=J();if(k?.pop(),s===void 0&&B(`No value found for key "${F}"`),typeof F!="string"&&(!r||typeof F!="number")&&B(`Wrong key type: "${F}"`),m&&(F in L||L[F]!=null)||g&&F==="__proto__"||(N&&(s=N(F,s)),s!==void 0&&(n=!0,F==="__proto__"?t=Object.assign(JSON.parse(`{"__proto__":${JSON.stringify(s)}}`),t):t[F]=s)),h(),a?.(),i=u[A++],o?.("symbol",i),i!==","){if(i==="}")return t;B()}}else--A,B()}B()}function V(){const t=[];for(;A<c;){h(),k?.push(t.length);let n=J();k?.pop(),h(),a?.();const F=u[A++];if(o?.("symbol",F),n!==void 0&&(N&&(n=N(String(t.length),n)),n===void 0?(++t.length,n=!0):t.push(n)),F===",")n===void 0&&B("Elisions are not supported");else{if(F==="]")return!d&&n===void 0&&t.length&&(--A,B("Trailing comma in array")),t;--A,B()}}}function H(){--A;let t=A,n=u[A++];const F=function(i){const s=u.substr(t,A-t);let E;if(i?E=Number.parseInt(s.replace(/^0o?/,""),8):E=Number(s),Number.isNaN(E))--A,B(`Bad numeric literal - "${u.substr(t,A-t+1)}"`);else if(!r&&!s.match(/^-?(0|[1-9][0-9]*)(\.[0-9]+)?(e[+-]?[0-9]+)?$/i))--A,B(`Non-json numeric literal - "${u.substr(t,A-t+1)}"`);else return E};if((n==="-"||n==="+"&&r)&&(n=u[A++]),n==="N"&&r)return w("NaN"),Number.NaN;if(n==="I"&&r)return w("Infinity"),F();if(n>="1"&&n<="9"){for(;A<c&&p(u[A]);)++A;n=u[A++]}if(n==="0"){n=u[A++];const i=n==="o"||n==="O"||b(n),s=n==="x"||n==="X";if(r&&(i||s)){for(;A<c&&(s?S:b)(u[A]);)++A;let E=1;return u[t]==="-"?(E=-1,++t):u[t]==="+"&&++t,E*F(i)}}if(n==="."){for(;A<c&&p(u[A]);)++A;n=u[A++]}if(n==="e"||n==="E"){for(n=u[A++],(n==="-"||n==="+")&&++A;A<c&&p(u[A]);)++A;n=u[A++]}return--A,F()}function Nu(){--A;let t="";for(;A<c;){let n=u[A++];if(n==="\\"&&u[A]==="u"&&S(u[A+1])&&S(u[A+2])&&S(u[A+3])&&S(u[A+4])&&(n=String.fromCharCode(Number.parseInt(u.substr(A+1,4),16)),A+=5),t.length)if(f.isIdentifierPart(n))t+=n;else return--A,t;else if(f.isIdentifierStart(n))t+=n;else return}B()}function R(t){let n="";for(;A<c;){let F=u[A++];if(F===t)return n;if(F==="\\")if(A>=c&&B(),F=u[A++],_[F]&&(r||F!=="v"&&(F!=="'"||y)))n+=_[F];else if(r&&P(F))j(F);else if(F==="u"||F==="x"&&r){const i=F==="u"?4:2;for(let s=0;s<i;++s)A>=c&&B(),S(u[A])||B("Bad escape sequence"),A++;n+=String.fromCharCode(Number.parseInt(u.substr(A-i,i),16))}else if(r&&b(F)){let i;F<"4"&&b(u[A])&&b(u[A+1])?i=3:b(u[A])?i=2:i=1,A+=i-1,n+=String.fromCharCode(Number.parseInt(u.substr(A-i,i),8))}else r?n+=F:(--A,B());else P(F)?B():(!r&&F.charCodeAt(0)<32&&(--A,B("Unexpected control character")),n+=F)}B()}C&&Su(),h();let v=J();if(v!==void 0||A<c){if(h(),A>=c)return N&&(v=N("",v)),z?x:v;B()}else B(A?"No data, only a whitespace":"No data, empty input")}function T(u,e){return typeof e=="function"?e={reviver:e}:e||(e={}),M(u,e)}function G(u,e){e||(e={});const r=e.tokenize;e.tokenize=!0;const C=M(u,e);return e.tokenize=r,C}function X(u){return u.toString().replace(/~/g,"~0").replace(/\//g,"~1")}function Y(u){return u.length===0?"":`/${u.map(X).join("/")}`}function uu(u){return u.replace(/~1/g,"/").replace(/~0/g,"~")}function eu(u){if(u==="")return[];if(u[0]!=="/")throw new Error('Missing initial "/" in the reference');return u.substr(1).split("/").map(uu)}function W(u,e){const r=u.substr(0,e).split(/\r?\n/),C=r.length,D=r[C-1].length+1;return{line:C,column:D}}function Au(u,e,r){if(e>1){const C=/\r?\n/g;let D;for(;D=C.exec(u);)if(--e===1)return D.index+r}return r-1}function tu(u,e){const r=Math.max(0,e-20),C=u.substr(r,e-r);return(e>20?"...":"")+C.replace(/\r?\n/g,"")}function nu(u,e){let r=Math.max(0,e-20);r+=e-r;const C=u.length-r;return u.substr(r,Math.min(20,C)).replace(/\r?\n/g,"")+(C>20?"...":"")}function ru(u,e){const r=tu(u,e),C=nu(u,e),D=`${new Array(r.length+1).join("-")}^`;return{excerpt:r+C,pointer:D}}function Fu(u){let e=u.message.replace("JSON.parse: ","").replace("JSON Parse error: ","");const r=e.charAt(0);return r>="a"&&(e=r.toUpperCase()+e.substr(1)),e}function iu(u,e){const r=/ in JSON at position (\d+)$/.exec(e);if(r){const C=+r[1],D=W(u,C);return{offset:C,line:D.line,column:D.column,reason:e.substr(0,r.index)}}}function Cu(u,e){const r=/ end of JSON input$/.exec(e);if(r){const C=u.length,D=W(u,C);return{offset:C,line:D.line,column:D.column,reason:e.substr(0,r.index+4)}}}function Du(u,e){const r=/ at line (\d+) column (\d+) of the JSON data$/.exec(e);if(r){const C=+r[1],D=+r[2];return{offset:Au(u,C,D),line:C,column:D,reason:e.substr(0,r.index)}}}function I(u,e,r,C,D){const d=ru(e,r),g=d.excerpt;let m,y;return typeof C=="number"?(y=d.pointer,m=`Parse error on line ${C}, column ${D}:
|
|
8
7
|
${g}
|
|
9
|
-
${
|
|
10
|
-
${
|
|
11
|
-
${
|
|
8
|
+
${y}
|
|
9
|
+
${u}`):m=`Parse error in JSON input:
|
|
10
|
+
${g}
|
|
11
|
+
${u}`,{message:m,excerpt:g,pointer:y}}function Bu(u,e){let r=Fu(e);const C=iu(u,r)||Cu(u,r)||Du(u,r);let D,d,g;C?(D=C.offset,d=C.line,g=C.column,r=C.reason):D=0,e.reason=r;const m=I(r,u,D,d,g);return e.message=m.message,e.excerpt=m.excerpt,m.pointer&&(e.pointer=m.pointer,e.location={start:{column:g,line:d,offset:D}}),e}function K(u,e){try{return JSON.parse(u,e)}catch(r){const C=Bu(u,r);if(r.location)throw C;return T(u,e)}}const ou=typeof navigator<"u"&&/Safari/.test(navigator.userAgent)&&/Apple Computer/.test(navigator.vendor),su=typeof process<"u"&&process.version.startsWith("v4.");function cu(u){return u.ignoreBOM||u.ignoreComments||u.ignoreTrailingCommas||u.allowSingleQuotedStrings||u.allowDuplicateObjectKeys===!1||u.ignoreProtoKey||u.ignorePrototypeKeys||u.mode==="cjson"||u.mode==="json5"||ou||su}function fu(u){if(typeof u=="function")return u;if(u)return u.reviver}function Eu(u,e){return e||(e={}),cu(e)?T(u,e):K(u,fu(e))}l.parse=Eu,l.tokenize=G,l.pathToPointer=Y,l.pointerToPath=eu,l.parseNative=K,l.parseCustom=T,l.getErrorTexts=I,Object.defineProperty(l,"__esModule",{value:!0})});
|
|
12
12
|
//# sourceMappingURL=jsonlint.min.js.map
|
package/web/jsonlint.min.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../lib/jsonlint.js"],
|
|
4
|
-
"sourcesContent": ["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n typeof define === 'function' && define.amd ? define('jsonlint', ['exports'], factory) :\n (global = global || self, factory(global.jsonlint = {}))\n}(this, function (exports) { 'use strict'\n\n// Modified from https://github.com/rlidwka/jju/blob/master/lib/unicode.js\n\n// This is autogenerated with esprima tools, see:\n// https://github.com/ariya/esprima/blob/master/esprima.js\n\n// eslint-disable-next-line no-unused-vars\nconst Uni = {\n isWhiteSpace: function isWhiteSpace (x) {\n // section 7.2, table 2\n return x === '\\u0020' ||\n x === '\\u00A0' ||\n x === '\\uFEFF' || // <-- this is not a Unicode WS, only a JS one\n (x >= '\\u0009' && x <= '\\u000D') || // 9 A B C D\n\n // + whitespace characters from unicode, category Zs\n x === '\\u1680' ||\n (x >= '\\u2000' && x <= '\\u200A') || // 0 1 2 3 4 5 6 7 8 9 A\n x === '\\u2028' ||\n x === '\\u2029' ||\n x === '\\u202F' ||\n x === '\\u205F' ||\n x === '\\u3000'\n },\n isWhiteSpaceJSON: function isWhiteSpaceJSON (x) {\n return x === '\\u0020' ||\n x === '\\u0009' ||\n x === '\\u000A' ||\n x === '\\u000D'\n },\n isLineTerminator: function isLineTerminator (x) {\n // ok, here is the part when JSON is wrong\n // section 7.3, table 3\n return x === '\\u000A' ||\n x === '\\u000D' ||\n x === '\\u2028' ||\n x === '\\u2029'\n },\n isLineTerminatorJSON: function isLineTerminatorJSON (x) {\n return x === '\\u000A' ||\n x === '\\u000D'\n },\n isIdentifierStart: function isIdentifierStart (x) {\n return x === '$' ||\n x === '_' ||\n (x >= 'A' && x <= 'Z') ||\n (x >= 'a' && x <= 'z') ||\n (x >= '\\u0080' && Uni.NonAsciiIdentifierStart.test(x))\n },\n isIdentifierPart: function isIdentifierPart (x) {\n return x === '$' ||\n x === '_' ||\n (x >= 'A' && x <= 'Z') ||\n (x >= 'a' && x <= 'z') ||\n (x >= '0' && x <= '9') || // <-- addition to Start\n (x >= '\\u0080' && Uni.NonAsciiIdentifierPart.test(x))\n },\n // ECMAScript 5.1/Unicode v6.3.0 NonAsciiIdentifierStart:\n NonAsciiIdentifierStart: /[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0\\u08A2-\\u08AC\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097F\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C33\\u0C35-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F0\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191C\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA697\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA793\\uA7A0-\\uA7AA\\uA7F8-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA80-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]/,\n // ECMAScript 5.1/Unicode v6.3.0 NonAsciiIdentifierPart:\n /* eslint-disable-next-line no-misleading-character-class */\n NonAsciiIdentifierPart: /[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u08A0\\u08A2-\\u08AC\\u08E4-\\u08FE\\u0900-\\u0963\\u0966-\\u096F\\u0971-\\u0977\\u0979-\\u097F\\u0981-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C01-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C33\\u0C35-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C82\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D02\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F0\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191C\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19D9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1D00-\\u1DE6\\u1DFC-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u200D\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA697\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA793\\uA7A0-\\uA7AA\\uA7F8-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A\\uAA7B\\uAA80-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uABC0-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE26\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]/\n}\n/* globals Uni, getTexts */\n\n// Modified from https://github.com/rlidwka/jju/blob/master/lib/parse.js\n\nfunction isHexDigit (x) {\n return (x >= '0' && x <= '9') ||\n (x >= 'A' && x <= 'F') ||\n (x >= 'a' && x <= 'f')\n}\n\nfunction isOctDigit (x) {\n return x >= '0' && x <= '7'\n}\n\nfunction isDecDigit (x) {\n return x >= '0' && x <= '9'\n}\n\nfunction isBOM (x) {\n // This catches EFBBBF (UTF-8 BOM) because the buffer-to-string\n // conversion in `fs.readFileSync()` translates it to FEFF (UTF-16 BOM).\n return x.charCodeAt(0) === 0xFEFF\n}\n\nconst unescapeMap = {\n '\\'': '\\'',\n '\"': '\"',\n '\\\\': '\\\\',\n b: '\\b',\n f: '\\f',\n n: '\\n',\n r: '\\r',\n t: '\\t',\n v: '\\v',\n '/': '/'\n}\n\nconst ownsProperty = Object.prototype.hasOwnProperty\n\nfunction parseInternal (input, options) {\n if (typeof input !== 'string' || !(input instanceof String)) {\n input = String(input)\n }\n\n const json5 = options.mode === 'json5'\n const ignoreBOM = options.ignoreBOM\n const ignoreComments = options.ignoreComments || options.mode === 'cjson' || json5\n const ignoreTrailingCommas = options.ignoreTrailingCommas || json5\n const allowSingleQuotedStrings = options.allowSingleQuotedStrings || json5\n const allowDuplicateObjectKeys = options.allowDuplicateObjectKeys\n const reviver = options.reviver\n const tokenize = options.tokenize\n const rawTokens = options.rawTokens\n const tokenLocations = options.tokenLocations\n const tokenPaths = options.tokenPaths\n\n const isLineTerminator = json5 ? Uni.isLineTerminator : Uni.isLineTerminatorJSON\n const isWhiteSpace = json5 ? Uni.isWhiteSpace : Uni.isWhiteSpaceJSON\n\n const inputLength = input.length\n let lineNumber = 0\n let lineStart = 0\n let position = 0\n\n const tokens = []\n let startToken\n let endToken\n let tokenPath\n\n if (tokenize) {\n let tokenOffset = null\n let tokenLine\n let tokenColumn\n startToken = function () {\n if (tokenOffset !== null) throw Error('internal error, token overlap')\n tokenLine = lineNumber + 1\n tokenColumn = position - lineStart + 1\n tokenOffset = position\n }\n endToken = function (type, value) {\n if (tokenOffset !== position) {\n const token = { type }\n if (rawTokens) {\n token.raw = input.substr(tokenOffset, position - tokenOffset)\n }\n if (value !== undefined) {\n token.value = value\n }\n if (tokenLocations) {\n token.location = {\n start: {\n column: tokenColumn,\n line: tokenLine,\n offset: tokenOffset\n }\n }\n }\n if (tokenPaths) {\n token.path = tokenPath.slice()\n }\n tokens.push(token)\n }\n tokenOffset = null\n return value\n }\n tokenPaths && (tokenPath = [])\n }\n\n function generateMessage () {\n let message\n if (position < inputLength) {\n const token = JSON.stringify(input[position])\n message = `Unexpected token ${token}`\n } else {\n message = 'Unexpected end of input'\n }\n return message\n }\n\n function createError (message) {\n const column = position - lineStart + 1\n ++lineNumber\n const texts = getTexts(message, input, position, lineNumber, column)\n const error = SyntaxError(texts.message)\n error.reason = message\n error.excerpt = texts.excerpt\n error.pointer = texts.pointer\n error.location = {\n start: {\n column,\n line: lineNumber,\n offset: position\n }\n }\n return error\n }\n\n function fail (message) {\n if (!message) {\n message = generateMessage()\n }\n const error = createError(message)\n throw error\n }\n\n function newLine (char) {\n // account for <cr><lf>\n if (char === '\\r' && input[position] === '\\n') {\n ++position\n }\n lineStart = position\n ++lineNumber\n }\n\n function parseGeneric () {\n if (position < inputLength) {\n startToken?.()\n const char = input[position++]\n if (char === '\"' || (char === '\\'' && allowSingleQuotedStrings)) {\n const string = parseString(char)\n endToken?.('literal', string)\n return string\n }if (char === '{') {\n endToken?.('symbol', '{')\n return parseObject()\n }if (char === '[') {\n endToken?.('symbol', '[')\n return parseArray()\n }if (char === '-' || char === '.' || isDecDigit(char) ||\n (json5 && (char === '+' || char === 'I' || char === 'N'))) {\n const number = parseNumber()\n endToken?.('literal', number)\n return number\n }if (char === 'n') {\n parseKeyword('null')\n endToken?.('literal', null)\n return null\n }if (char === 't') {\n parseKeyword('true')\n endToken?.('literal', true)\n return true\n }if (char === 'f') {\n parseKeyword('false')\n endToken?.('literal', false)\n return false\n }\n --position\n endToken?.()\n return undefined\n }\n }\n\n function parseKey () {\n let result\n if (position < inputLength) {\n startToken?.()\n const char = input[position++]\n if (char === '\"' || (char === '\\'' && allowSingleQuotedStrings)) {\n const string = parseString(char)\n endToken?.('literal', string)\n return string\n }if (char === '{') {\n endToken?.('symbol', '{')\n return parseObject()\n }if (char === '[') {\n endToken?.('symbol', '[')\n return parseArray()\n }if (char === '.' || isDecDigit(char)) {\n const number = parseNumber(true)\n endToken?.('literal', number)\n return number\n }if ((json5 && Uni.isIdentifierStart(char)) ||\n (char === '\\\\' && input[position] === 'u')) {\n const rollback = position - 1\n result = parseIdentifier()\n if (result === undefined) {\n position = rollback\n endToken?.()\n return undefined\n }\n endToken?.('literal', result)\n return result\n }\n --position\n endToken?.()\n return undefined\n }\n }\n\n function skipBOM () {\n if (isBOM(input)) {\n startToken?.()\n ++position\n endToken?.('bom')\n }\n }\n\n function skipWhiteSpace () {\n let insideWhiteSpace\n function startWhiteSpace () {\n if (!insideWhiteSpace) {\n insideWhiteSpace = true\n --position\n startToken()\n ++position\n }\n }\n function endWhiteSpace () {\n if (insideWhiteSpace) {\n insideWhiteSpace = false\n endToken('whitespace')\n }\n }\n while (position < inputLength) {\n const char = input[position++]\n if (isLineTerminator(char)) {\n startToken && startWhiteSpace()\n newLine(char)\n } else if (isWhiteSpace(char)) {\n startToken && startWhiteSpace()\n } else if (char === '/' && ignoreComments &&\n (input[position] === '/' || input[position] === '*')) {\n if (startToken) {\n --position\n endWhiteSpace()\n startToken()\n ++position\n }\n skipComment(input[position++] === '*')\n endToken?.('comment')\n } else {\n --position\n break\n }\n }\n endToken && endWhiteSpace()\n }\n\n function skipComment (multiLine) {\n while (position < inputLength) {\n const char = input[position++]\n if (isLineTerminator(char)) {\n if (!multiLine) {\n // let parent function deal with newline\n --position\n return\n }\n newLine(char)\n } else if (char === '*' && multiLine) {\n if (input[position] === '/') {\n ++position\n return\n }\n } else {\n // nothing\n }\n }\n if (multiLine) {\n fail('Unclosed multiline comment')\n }\n }\n\n function parseKeyword (keyword) {\n // keyword[0] is not checked because it was checked earlier\n const startPosition = position\n for (let i = 1, keywordLength = keyword.length; i < keywordLength; ++i) {\n if (position >= inputLength || keyword[i] !== input[position]) {\n position = startPosition - 1\n fail()\n }\n ++position\n }\n }\n\n function parseObject () {\n const result = {}\n const emptyObject = {}\n let isNotEmpty = false\n\n while (position < inputLength) {\n skipWhiteSpace()\n const key = parseKey()\n if (allowDuplicateObjectKeys === false && ownsProperty.call(result, key)) {\n fail(`Duplicate key: \"${key}\"`)\n }\n skipWhiteSpace()\n startToken?.()\n let char = input[position++]\n endToken?.('symbol', char)\n if (char === '}' && key === undefined) {\n if (!ignoreTrailingCommas && isNotEmpty) {\n --position\n fail('Trailing comma in object')\n }\n return result\n }if (char === ':' && key !== undefined) {\n skipWhiteSpace()\n tokenPath?.push(key)\n let value = parseGeneric()\n tokenPath?.pop()\n\n if (value === undefined) fail(`No value found for key \"${key}\"`)\n if (typeof key !== 'string') {\n if (!json5 || typeof key !== 'number') {\n fail(`Wrong key type: \"${key}\"`)\n }\n }\n\n if (key in emptyObject || emptyObject[key] != null) {\n // silently ignore it\n } else {\n if (reviver) {\n value = reviver(key, value)\n }\n if (value !== undefined) {\n isNotEmpty = true\n result[key] = value\n }\n }\n\n skipWhiteSpace()\n startToken?.()\n char = input[position++]\n endToken?.('symbol', char)\n if (char === ',') {\n } else if (char === '}') {\n return result\n } else {\n fail()\n }\n } else {\n --position\n fail()\n }\n }\n\n fail()\n }\n\n function parseArray () {\n const result = []\n while (position < inputLength) {\n skipWhiteSpace()\n tokenPath?.push(result.length)\n let item = parseGeneric()\n tokenPath?.pop()\n skipWhiteSpace()\n startToken?.()\n const char = input[position++]\n endToken?.('symbol', char)\n if (item !== undefined) {\n if (reviver) {\n item = reviver(String(result.length), item)\n }\n if (item === undefined) {\n ++result.length\n item = true // hack for check below, not included into result\n } else {\n result.push(item)\n }\n }\n\n if (char === ',') {\n if (item === undefined) {\n fail('Elisions are not supported')\n }\n } else if (char === ']') {\n if (!ignoreTrailingCommas && item === undefined && result.length) {\n --position\n fail('Trailing comma in array')\n }\n return result\n } else {\n --position\n fail()\n }\n }\n }\n\n function parseNumber () {\n // rewind because we don't know first char\n --position\n\n let start = position\n let char = input[position++]\n const toNumber = function (isOctal) {\n const string = input.substr(start, position - start)\n let result\n\n if (isOctal) {\n result = Number.parseInt(string.replace(/^0o?/, ''), 8)\n } else {\n result = Number(string)\n }\n\n if (Number.isNaN(result)) {\n --position\n fail(`Bad numeric literal - \"${input.substr(start, position - start + 1)}\"`)\n } else if (!json5 && !string.match(/^-?(0|[1-9][0-9]*)(\\.[0-9]+)?(e[+-]?[0-9]+)?$/i)) {\n // additional restrictions imposed by json\n --position\n fail(`Non-json numeric literal - \"${input.substr(start, position - start + 1)}\"`)\n } else {\n return result\n }\n }\n\n // ex: -5982475.249875e+29384\n // ^ skipping this\n if (char === '-' || (char === '+' && json5)) {\n char = input[position++]\n }\n\n if (char === 'N' && json5) {\n parseKeyword('NaN')\n return Number.NaN\n }\n\n if (char === 'I' && json5) {\n parseKeyword('Infinity')\n // returning +inf or -inf\n return toNumber()\n }\n\n if (char >= '1' && char <= '9') {\n // ex: -5982475.249875e+29384\n // ^^^ skipping these\n while (position < inputLength && isDecDigit(input[position])) {\n ++position\n }\n char = input[position++]\n }\n\n // special case for leading zero: 0.123456\n if (char === '0') {\n char = input[position++]\n\n // new syntax, \"0o777\" old syntax, \"0777\"\n const isOctal = char === 'o' || char === 'O' || isOctDigit(char)\n const isHex = char === 'x' || char === 'X'\n\n if (json5 && (isOctal || isHex)) {\n while (position < inputLength &&\n (isHex ? isHexDigit : isOctDigit)(input[position])) {\n ++position\n }\n\n let sign = 1\n if (input[start] === '-') {\n sign = -1\n ++start\n } else if (input[start] === '+') {\n ++start\n }\n\n return sign * toNumber(isOctal)\n }\n }\n\n if (char === '.') {\n // ex: -5982475.249875e+29384\n // ^^^ skipping these\n while (position < inputLength && isDecDigit(input[position])) {\n ++position\n }\n char = input[position++]\n }\n\n if (char === 'e' || char === 'E') {\n char = input[position++]\n if (char === '-' || char === '+') {\n ++position\n }\n // ex: -5982475.249875e+29384\n // ^^^ skipping these\n while (position < inputLength && isDecDigit(input[position])) {\n ++position\n }\n char = input[position++]\n }\n\n // we have char in the buffer, so count for it\n --position\n return toNumber()\n }\n\n function parseIdentifier () {\n // rewind because we don't know first char\n --position\n\n let result = ''\n while (position < inputLength) {\n let char = input[position++]\n if (char === '\\\\' &&\n input[position] === 'u' &&\n isHexDigit(input[position + 1]) &&\n isHexDigit(input[position + 2]) &&\n isHexDigit(input[position + 3]) &&\n isHexDigit(input[position + 4])) {\n // UnicodeEscapeSequence\n char = String.fromCharCode(Number.parseInt(input.substr(position + 1, 4), 16))\n position += 5\n }\n\n if (result.length) {\n // identifier started\n if (Uni.isIdentifierPart(char)) {\n result += char\n } else {\n --position\n return result\n }\n } else {\n if (Uni.isIdentifierStart(char)) {\n result += char\n } else {\n return undefined\n }\n }\n }\n\n fail()\n }\n\n function parseString (endChar) {\n // 7.8.4 of ES262 spec\n let result = ''\n while (position < inputLength) {\n let char = input[position++]\n if (char === endChar) {\n return result\n }if (char === '\\\\') {\n if (position >= inputLength) {\n fail()\n }\n char = input[position++]\n if (unescapeMap[char] && (json5 || (char !== 'v' && (char !== \"'\" || allowSingleQuotedStrings)))) {\n result += unescapeMap[char]\n } else if (json5 && isLineTerminator(char)) {\n // line continuation\n newLine(char)\n } else if (char === 'u' || (char === 'x' && json5)) {\n // unicode/character escape sequence\n const count = char === 'u' ? 4 : 2\n // validation for \\uXXXX\n for (let i = 0; i < count; ++i) {\n if (position >= inputLength) {\n fail()\n }\n if (!isHexDigit(input[position])) {\n fail('Bad escape sequence')\n }\n position++\n }\n result += String.fromCharCode(Number.parseInt(input.substr(position - count, count), 16))\n } else if (json5 && isOctDigit(char)) {\n let digits\n if (char < '4' && isOctDigit(input[position]) && isOctDigit(input[position + 1])) {\n // three-digit octal\n digits = 3\n } else if (isOctDigit(input[position])) {\n // two-digit octal\n digits = 2\n } else {\n digits = 1\n }\n position += digits - 1\n result += String.fromCharCode(Number.parseInt(input.substr(position - digits, digits), 8))\n } else if (json5) {\n // \\X -> x\n result += char\n } else {\n --position\n fail()\n }\n } else if (isLineTerminator(char)) {\n fail()\n } else {\n if (!json5 && char.charCodeAt(0) < 32) {\n --position\n fail('Unexpected control character')\n }\n // SourceCharacter but not one of \" or \\ or LineTerminator\n result += char\n }\n }\n\n fail()\n }\n\n if (ignoreBOM) {\n skipBOM()\n }\n skipWhiteSpace()\n let returnValue = parseGeneric()\n if (returnValue !== undefined || position < inputLength) {\n skipWhiteSpace()\n if (position >= inputLength) {\n if (reviver) {\n returnValue = reviver('', returnValue)\n }\n return tokenize ? tokens : returnValue\n }\n fail()\n } else {\n if (position) {\n fail('No data, only a whitespace')\n } else {\n fail('No data, empty input')\n }\n }\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction parseCustom (input, options) {\n if (typeof options === 'function') {\n options = {\n reviver: options\n }\n } else if (!options) {\n options = {}\n }\n return parseInternal(input, options)\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction tokenize (input, options) {\n if (!options) {\n options = {}\n }\n // As long as this is the single modification, this is easier than cloning.\n // (Once Node.js 6 is dropped, this can be replaced by object destructuring.)\n const oldTokenize = options.tokenize\n options.tokenize = true\n const tokens = parseInternal(input, options)\n options.tokenize = oldTokenize\n return tokens\n}\nfunction escapePointerToken (token) {\n return token\n .toString()\n .replace(/~/g, '~0')\n .replace(/\\//g, '~1')\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction pathToPointer (tokens) {\n if (tokens.length === 0) {\n return ''\n }\n return `/${tokens\n .map(escapePointerToken)\n .join('/')}`\n}\n\nfunction unescapePointerToken (token) {\n return token\n .replace(/~1/g, '/')\n .replace(/~0/g, '~')\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction pointerToPath (pointer) {\n if (pointer === '') {\n return []\n }\n if (pointer[0] !== '/') {\n throw new Error('Missing initial \"/\" in the reference')\n }\n return pointer\n .substr(1)\n .split('/')\n .map(unescapePointerToken)\n}\nfunction getLineAndColumn (input, offset) {\n const lines = input\n .substr(0, offset)\n .split(/\\r?\\n/)\n const line = lines.length\n const column = lines[line - 1].length + 1\n return {\n line,\n column\n }\n}\n\nfunction getOffset (input, line, column) {\n if (line > 1) {\n const breaks = /\\r?\\n/g\n let match\n while ((match = breaks.exec(input))) {\n if (--line === 1) {\n return match.index + column\n }\n }\n }\n return column - 1\n}\n\nfunction pastInput (input, offset) {\n const start = Math.max(0, offset - 20)\n const previous = input.substr(start, offset - start)\n return (offset > 20 ? '...' : '') + previous.replace(/\\r?\\n/g, '')\n}\n\nfunction upcomingInput (input, offset) {\n let start = Math.max(0, offset - 20)\n start += offset - start\n const rest = input.length - start\n const next = input.substr(start, Math.min(20, rest))\n return next.replace(/\\r?\\n/g, '') + (rest > 20 ? '...' : '')\n}\n\nfunction getPositionContext (input, offset) {\n const past = pastInput(input, offset)\n const upcoming = upcomingInput(input, offset)\n const pointer = `${new Array(past.length + 1).join('-')}^`\n return {\n excerpt: past + upcoming,\n pointer\n }\n}\n\nfunction getReason (error) {\n let message = error.message\n .replace('JSON.parse: ', '') // SpiderMonkey\n .replace('JSON Parse error: ', '') // SquirrelFish\n const firstCharacter = message.charAt(0)\n if (firstCharacter >= 'a') {\n message = firstCharacter.toUpperCase() + message.substr(1)\n }\n return message\n}\n\nfunction getLocationOnV8 (input, reason) {\n const match = / in JSON at position (\\d+)$/.exec(reason)\n if (match) {\n const offset = +match[1]\n const location = getLineAndColumn(input, offset)\n return {\n offset,\n line: location.line,\n column: location.column,\n reason: reason.substr(0, match.index)\n }\n }\n}\n\nfunction checkUnexpectedEndOnV8 (input, reason) {\n const match = / end of JSON input$/.exec(reason)\n if (match) {\n const offset = input.length\n const location = getLineAndColumn(input, offset)\n return {\n offset,\n line: location.line,\n column: location.column,\n reason: reason.substr(0, match.index + 4)\n }\n }\n}\n\nfunction getLocationOnSpiderMonkey (input, reason) {\n const match = / at line (\\d+) column (\\d+) of the JSON data$/.exec(reason)\n if (match) {\n const line = +match[1]\n const column = +match[2]\n const offset = getOffset(input, line, column) // eslint-disable-line no-undef\n return {\n offset,\n line,\n column,\n reason: reason.substr(0, match.index)\n }\n }\n}\n\nfunction getTexts (reason, input, offset, line, column) {\n const position = getPositionContext(input, offset)\n const excerpt = position.excerpt\n let message\n let pointer\n if (typeof line === 'number') {\n pointer = position.pointer\n message = `Parse error on line ${line}, column ${column}:\\n${excerpt}\\n${pointer}\\n${reason}`\n } else {\n message = `Parse error in JSON input:\\n${excerpt}\\n${reason}`\n }\n return {\n message,\n excerpt,\n pointer\n }\n}\n\nfunction improveNativeError (input, error) {\n let reason = getReason(error)\n const location = getLocationOnV8(input, reason) ||\n checkUnexpectedEndOnV8(input, reason) ||\n getLocationOnSpiderMonkey(input, reason)\n let offset\n let line\n let column\n if (location) {\n offset = location.offset\n line = location.line\n column = location.column\n reason = location.reason\n } else {\n offset = 0\n }\n error.reason = reason\n const texts = getTexts(reason, input, offset, line, column)\n error.message = texts.message\n error.excerpt = texts.excerpt\n if (texts.pointer) {\n error.pointer = texts.pointer\n error.location = {\n start: {\n column,\n line,\n offset\n }\n }\n }\n return error\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction parseNative (input, reviver) {\n try {\n return JSON.parse(input, reviver)\n } catch (error) {\n const newError = improveNativeError(input, error)\n if (error.location) throw newError\n // If the native error didn't contain location, parse once more\n // by the custom parser, which always provides the error location.\n return parseCustom (input, reviver)\n }\n}\n/* globals navigator, process, parseCustom, parseNative */\n\nconst isSafari = typeof navigator !== 'undefined' && /Safari/.test(navigator.userAgent) && /Apple Computer/.test(navigator.vendor)\nconst oldNode = typeof process !== 'undefined' && process.version.startsWith('v4.')\n\nfunction needsCustomParser (options) {\n return options.ignoreBOM || options.ignoreComments || options.ignoreTrailingCommas ||\n options.allowSingleQuotedStrings || options.allowDuplicateObjectKeys === false ||\n options.mode === 'cjson' || options.mode === 'json5' || isSafari || oldNode\n}\n\nfunction getReviver (options) {\n if (typeof options === 'function') {\n return options\n }if (options) {\n return options.reviver\n }\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction parse (input, options) {\n options || (options = {})\n return needsCustomParser(options)\n ? parseCustom(input, options)\n : parseNative(input, getReviver(options))\n}\n\n exports.parse = parse\n exports.tokenize = tokenize\n exports.pathToPointer = pathToPointer\n exports.pointerToPath = pointerToPath\n\n exports.parseNative = parseNative\n exports.parseCustom = parseCustom\n exports.getErrorTexts = getTexts\n\n Object.defineProperty(exports, '__esModule', { value: true })\n}));\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["global", "factory", "exports", "Uni", "x", "isHexDigit", "isOctDigit", "isDecDigit", "isBOM", "unescapeMap", "ownsProperty", "parseInternal", "input", "options", "json5", "ignoreBOM", "ignoreComments", "ignoreTrailingCommas", "allowSingleQuotedStrings", "allowDuplicateObjectKeys", "reviver", "tokenize", "rawTokens", "tokenLocations", "tokenPaths", "isLineTerminator", "isWhiteSpace", "inputLength", "lineNumber", "lineStart", "position", "tokens", "startToken", "endToken", "tokenPath", "tokenOffset", "tokenLine", "tokenColumn", "type", "value", "token", "generateMessage", "message", "createError", "column", "texts", "getTexts", "error", "fail", "newLine", "char", "parseGeneric", "string", "parseString", "parseObject", "parseArray", "number", "parseNumber", "parseKeyword", "parseKey", "result", "rollback", "parseIdentifier", "skipBOM", "skipWhiteSpace", "insideWhiteSpace", "startWhiteSpace", "endWhiteSpace", "skipComment", "multiLine", "keyword", "startPosition", "i", "keywordLength", "
|
|
4
|
+
"sourcesContent": ["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n typeof define === 'function' && define.amd ? define('jsonlint', ['exports'], factory) :\n (global = global || self, factory(global.jsonlint = {}))\n}(this, function (exports) { 'use strict'\n\n// Modified from https://github.com/rlidwka/jju/blob/master/lib/unicode.js\n\n// This is autogenerated with esprima tools, see:\n// https://github.com/ariya/esprima/blob/master/esprima.js\n\n// eslint-disable-next-line no-unused-vars\nconst Uni = {\n isWhiteSpace: function isWhiteSpace (x) {\n // section 7.2, table 2\n return x === '\\u0020' ||\n x === '\\u00A0' ||\n x === '\\uFEFF' || // <-- this is not a Unicode WS, only a JS one\n (x >= '\\u0009' && x <= '\\u000D') || // 9 A B C D\n\n // + whitespace characters from unicode, category Zs\n x === '\\u1680' ||\n (x >= '\\u2000' && x <= '\\u200A') || // 0 1 2 3 4 5 6 7 8 9 A\n x === '\\u2028' ||\n x === '\\u2029' ||\n x === '\\u202F' ||\n x === '\\u205F' ||\n x === '\\u3000'\n },\n isWhiteSpaceJSON: function isWhiteSpaceJSON (x) {\n return x === '\\u0020' ||\n x === '\\u0009' ||\n x === '\\u000A' ||\n x === '\\u000D'\n },\n isLineTerminator: function isLineTerminator (x) {\n // ok, here is the part when JSON is wrong\n // section 7.3, table 3\n return x === '\\u000A' ||\n x === '\\u000D' ||\n x === '\\u2028' ||\n x === '\\u2029'\n },\n isLineTerminatorJSON: function isLineTerminatorJSON (x) {\n return x === '\\u000A' ||\n x === '\\u000D'\n },\n isIdentifierStart: function isIdentifierStart (x) {\n return x === '$' ||\n x === '_' ||\n (x >= 'A' && x <= 'Z') ||\n (x >= 'a' && x <= 'z') ||\n (x >= '\\u0080' && Uni.NonAsciiIdentifierStart.test(x))\n },\n isIdentifierPart: function isIdentifierPart (x) {\n return x === '$' ||\n x === '_' ||\n (x >= 'A' && x <= 'Z') ||\n (x >= 'a' && x <= 'z') ||\n (x >= '0' && x <= '9') || // <-- addition to Start\n (x >= '\\u0080' && Uni.NonAsciiIdentifierPart.test(x))\n },\n // ECMAScript 5.1/Unicode v6.3.0 NonAsciiIdentifierStart:\n NonAsciiIdentifierStart: /[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0\\u08A2-\\u08AC\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097F\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C33\\u0C35-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F0\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191C\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA697\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA793\\uA7A0-\\uA7AA\\uA7F8-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA80-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]/,\n // ECMAScript 5.1/Unicode v6.3.0 NonAsciiIdentifierPart:\n /* eslint-disable-next-line no-misleading-character-class */\n NonAsciiIdentifierPart: /[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u08A0\\u08A2-\\u08AC\\u08E4-\\u08FE\\u0900-\\u0963\\u0966-\\u096F\\u0971-\\u0977\\u0979-\\u097F\\u0981-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C01-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C33\\u0C35-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C82\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D02\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F0\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191C\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19D9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1D00-\\u1DE6\\u1DFC-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u200D\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA697\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA793\\uA7A0-\\uA7AA\\uA7F8-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A\\uAA7B\\uAA80-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uABC0-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE26\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]/\n}\n/* globals Uni, getTexts */\n\n// Modified from https://github.com/rlidwka/jju/blob/master/lib/parse.js\n\nfunction isHexDigit (x) {\n return (x >= '0' && x <= '9') ||\n (x >= 'A' && x <= 'F') ||\n (x >= 'a' && x <= 'f')\n}\n\nfunction isOctDigit (x) {\n return x >= '0' && x <= '7'\n}\n\nfunction isDecDigit (x) {\n return x >= '0' && x <= '9'\n}\n\nfunction isBOM (x) {\n // This catches EFBBBF (UTF-8 BOM) because the buffer-to-string\n // conversion in `fs.readFileSync()` translates it to FEFF (UTF-16 BOM).\n return x.charCodeAt(0) === 0xFEFF\n}\n\nconst unescapeMap = {\n '\\'': '\\'',\n '\"': '\"',\n '\\\\': '\\\\',\n b: '\\b',\n f: '\\f',\n n: '\\n',\n r: '\\r',\n t: '\\t',\n v: '\\v',\n '/': '/'\n}\n\nconst ownsProperty = Object.prototype.hasOwnProperty\n\nconst emptyObject = {}\n\nfunction parseInternal (input, options) {\n if (typeof input !== 'string' || !(input instanceof String)) {\n input = String(input)\n }\n\n const json5 = options.mode === 'json5'\n const ignoreBOM = options.ignoreBOM\n const ignoreComments = options.ignoreComments || options.mode === 'cjson' || json5\n const ignoreTrailingCommas = options.ignoreTrailingCommas || json5\n const ignoreProtoKey = options.ignoreProtoKey\n const ignorePrototypeKeys = options.ignorePrototypeKeys\n const allowSingleQuotedStrings = options.allowSingleQuotedStrings || json5\n const allowDuplicateObjectKeys = options.allowDuplicateObjectKeys\n const reviver = options.reviver\n const tokenize = options.tokenize\n const rawTokens = options.rawTokens\n const tokenLocations = options.tokenLocations\n const tokenPaths = options.tokenPaths\n\n const isLineTerminator = json5 ? Uni.isLineTerminator : Uni.isLineTerminatorJSON\n const isWhiteSpace = json5 ? Uni.isWhiteSpace : Uni.isWhiteSpaceJSON\n\n const inputLength = input.length\n let lineNumber = 0\n let lineStart = 0\n let position = 0\n\n const tokens = []\n let startToken\n let endToken\n let tokenPath\n\n if (tokenize) {\n let tokenOffset = null\n let tokenLine\n let tokenColumn\n startToken = function () {\n if (tokenOffset !== null) throw Error('internal error, token overlap')\n tokenLine = lineNumber + 1\n tokenColumn = position - lineStart + 1\n tokenOffset = position\n }\n endToken = function (type, value) {\n if (tokenOffset !== position) {\n const token = { type }\n if (rawTokens) {\n token.raw = input.substr(tokenOffset, position - tokenOffset)\n }\n if (value !== undefined) {\n token.value = value\n }\n if (tokenLocations) {\n token.location = {\n start: {\n column: tokenColumn,\n line: tokenLine,\n offset: tokenOffset\n }\n }\n }\n if (tokenPaths) {\n token.path = tokenPath.slice()\n }\n tokens.push(token)\n }\n tokenOffset = null\n return value\n }\n tokenPaths && (tokenPath = [])\n }\n\n function generateMessage () {\n let message\n if (position < inputLength) {\n const token = JSON.stringify(input[position])\n message = `Unexpected token ${token}`\n } else {\n message = 'Unexpected end of input'\n }\n return message\n }\n\n function createError (message) {\n const column = position - lineStart + 1\n ++lineNumber\n const texts = getTexts(message, input, position, lineNumber, column)\n const error = SyntaxError(texts.message)\n error.reason = message\n error.excerpt = texts.excerpt\n error.pointer = texts.pointer\n error.location = {\n start: {\n column,\n line: lineNumber,\n offset: position\n }\n }\n return error\n }\n\n function fail (message) {\n if (!message) {\n message = generateMessage()\n }\n const error = createError(message)\n throw error\n }\n\n function newLine (char) {\n // account for <cr><lf>\n if (char === '\\r' && input[position] === '\\n') {\n ++position\n }\n lineStart = position\n ++lineNumber\n }\n\n function parseGeneric () {\n if (position < inputLength) {\n startToken?.()\n const char = input[position++]\n if (char === '\"' || (char === '\\'' && allowSingleQuotedStrings)) {\n const string = parseString(char)\n endToken?.('literal', string)\n return string\n }if (char === '{') {\n endToken?.('symbol', '{')\n return parseObject()\n }if (char === '[') {\n endToken?.('symbol', '[')\n return parseArray()\n }if (char === '-' || char === '.' || isDecDigit(char) ||\n (json5 && (char === '+' || char === 'I' || char === 'N'))) {\n const number = parseNumber()\n endToken?.('literal', number)\n return number\n }if (char === 'n') {\n parseKeyword('null')\n endToken?.('literal', null)\n return null\n }if (char === 't') {\n parseKeyword('true')\n endToken?.('literal', true)\n return true\n }if (char === 'f') {\n parseKeyword('false')\n endToken?.('literal', false)\n return false\n }\n --position\n endToken?.()\n return undefined\n }\n }\n\n function parseKey () {\n let result\n if (position < inputLength) {\n startToken?.()\n const char = input[position++]\n if (char === '\"' || (char === '\\'' && allowSingleQuotedStrings)) {\n const string = parseString(char)\n endToken?.('literal', string)\n return string\n }if (char === '{') {\n endToken?.('symbol', '{')\n return parseObject()\n }if (char === '[') {\n endToken?.('symbol', '[')\n return parseArray()\n }if (char === '.' || isDecDigit(char)) {\n const number = parseNumber(true)\n endToken?.('literal', number)\n return number\n }if ((json5 && Uni.isIdentifierStart(char)) ||\n (char === '\\\\' && input[position] === 'u')) {\n const rollback = position - 1\n result = parseIdentifier()\n if (result === undefined) {\n position = rollback\n endToken?.()\n return undefined\n }\n endToken?.('literal', result)\n return result\n }\n --position\n endToken?.()\n return undefined\n }\n }\n\n function skipBOM () {\n if (isBOM(input)) {\n startToken?.()\n ++position\n endToken?.('bom')\n }\n }\n\n function skipWhiteSpace () {\n let insideWhiteSpace\n function startWhiteSpace () {\n if (!insideWhiteSpace) {\n insideWhiteSpace = true\n --position\n startToken()\n ++position\n }\n }\n function endWhiteSpace () {\n if (insideWhiteSpace) {\n insideWhiteSpace = false\n endToken('whitespace')\n }\n }\n while (position < inputLength) {\n const char = input[position++]\n if (isLineTerminator(char)) {\n startToken && startWhiteSpace()\n newLine(char)\n } else if (isWhiteSpace(char)) {\n startToken && startWhiteSpace()\n } else if (char === '/' && ignoreComments &&\n (input[position] === '/' || input[position] === '*')) {\n if (startToken) {\n --position\n endWhiteSpace()\n startToken()\n ++position\n }\n skipComment(input[position++] === '*')\n endToken?.('comment')\n } else {\n --position\n break\n }\n }\n endToken && endWhiteSpace()\n }\n\n function skipComment (multiLine) {\n while (position < inputLength) {\n const char = input[position++]\n if (isLineTerminator(char)) {\n if (!multiLine) {\n // let parent function deal with newline\n --position\n return\n }\n newLine(char)\n } else if (char === '*' && multiLine) {\n if (input[position] === '/') {\n ++position\n return\n }\n } else {\n // nothing\n }\n }\n if (multiLine) {\n fail('Unclosed multiline comment')\n }\n }\n\n function parseKeyword (keyword) {\n // keyword[0] is not checked because it was checked earlier\n const startPosition = position\n for (let i = 1, keywordLength = keyword.length; i < keywordLength; ++i) {\n if (position >= inputLength || keyword[i] !== input[position]) {\n position = startPosition - 1\n fail()\n }\n ++position\n }\n }\n\n function parseObject () {\n let result = {}\n let isNotEmpty = false\n\n while (position < inputLength) {\n skipWhiteSpace()\n const key = parseKey()\n if (allowDuplicateObjectKeys === false && ownsProperty.call(result, key)) {\n fail(`Duplicate key: \"${key}\"`)\n }\n skipWhiteSpace()\n startToken?.()\n let char = input[position++]\n endToken?.('symbol', char)\n if (char === '}' && key === undefined) {\n if (!ignoreTrailingCommas && isNotEmpty) {\n --position\n fail('Trailing comma in object')\n }\n return result\n }if (char === ':' && key !== undefined) {\n skipWhiteSpace()\n tokenPath?.push(key)\n let value = parseGeneric()\n tokenPath?.pop()\n\n if (value === undefined) fail(`No value found for key \"${key}\"`)\n if (typeof key !== 'string') {\n if (!json5 || typeof key !== 'number') {\n fail(`Wrong key type: \"${key}\"`)\n }\n }\n\n if ((ignorePrototypeKeys && (key in emptyObject || emptyObject[key] != null)) ||\n (ignoreProtoKey && key === '__proto__')) {\n // silently ignore it\n } else {\n if (reviver) {\n value = reviver(key, value)\n }\n if (value !== undefined) {\n isNotEmpty = true\n if (key === '__proto__') {\n result = Object.assign(JSON.parse(`{\"__proto__\":${JSON.stringify(value)}}`), result)\n } else {\n result[key] = value\n }\n }\n }\n\n skipWhiteSpace()\n startToken?.()\n char = input[position++]\n endToken?.('symbol', char)\n if (char === ',') {\n } else if (char === '}') {\n return result\n } else {\n fail()\n }\n } else {\n --position\n fail()\n }\n }\n\n fail()\n }\n\n function parseArray () {\n const result = []\n while (position < inputLength) {\n skipWhiteSpace()\n tokenPath?.push(result.length)\n let item = parseGeneric()\n tokenPath?.pop()\n skipWhiteSpace()\n startToken?.()\n const char = input[position++]\n endToken?.('symbol', char)\n if (item !== undefined) {\n if (reviver) {\n item = reviver(String(result.length), item)\n }\n if (item === undefined) {\n ++result.length\n item = true // hack for check below, not included into result\n } else {\n result.push(item)\n }\n }\n\n if (char === ',') {\n if (item === undefined) {\n fail('Elisions are not supported')\n }\n } else if (char === ']') {\n if (!ignoreTrailingCommas && item === undefined && result.length) {\n --position\n fail('Trailing comma in array')\n }\n return result\n } else {\n --position\n fail()\n }\n }\n }\n\n function parseNumber () {\n // rewind because we don't know first char\n --position\n\n let start = position\n let char = input[position++]\n const toNumber = function (isOctal) {\n const string = input.substr(start, position - start)\n let result\n\n if (isOctal) {\n result = Number.parseInt(string.replace(/^0o?/, ''), 8)\n } else {\n result = Number(string)\n }\n\n if (Number.isNaN(result)) {\n --position\n fail(`Bad numeric literal - \"${input.substr(start, position - start + 1)}\"`)\n } else if (!json5 && !string.match(/^-?(0|[1-9][0-9]*)(\\.[0-9]+)?(e[+-]?[0-9]+)?$/i)) {\n // additional restrictions imposed by json\n --position\n fail(`Non-json numeric literal - \"${input.substr(start, position - start + 1)}\"`)\n } else {\n return result\n }\n }\n\n // ex: -5982475.249875e+29384\n // ^ skipping this\n if (char === '-' || (char === '+' && json5)) {\n char = input[position++]\n }\n\n if (char === 'N' && json5) {\n parseKeyword('NaN')\n return Number.NaN\n }\n\n if (char === 'I' && json5) {\n parseKeyword('Infinity')\n // returning +inf or -inf\n return toNumber()\n }\n\n if (char >= '1' && char <= '9') {\n // ex: -5982475.249875e+29384\n // ^^^ skipping these\n while (position < inputLength && isDecDigit(input[position])) {\n ++position\n }\n char = input[position++]\n }\n\n // special case for leading zero: 0.123456\n if (char === '0') {\n char = input[position++]\n\n // new syntax, \"0o777\" old syntax, \"0777\"\n const isOctal = char === 'o' || char === 'O' || isOctDigit(char)\n const isHex = char === 'x' || char === 'X'\n\n if (json5 && (isOctal || isHex)) {\n while (position < inputLength &&\n (isHex ? isHexDigit : isOctDigit)(input[position])) {\n ++position\n }\n\n let sign = 1\n if (input[start] === '-') {\n sign = -1\n ++start\n } else if (input[start] === '+') {\n ++start\n }\n\n return sign * toNumber(isOctal)\n }\n }\n\n if (char === '.') {\n // ex: -5982475.249875e+29384\n // ^^^ skipping these\n while (position < inputLength && isDecDigit(input[position])) {\n ++position\n }\n char = input[position++]\n }\n\n if (char === 'e' || char === 'E') {\n char = input[position++]\n if (char === '-' || char === '+') {\n ++position\n }\n // ex: -5982475.249875e+29384\n // ^^^ skipping these\n while (position < inputLength && isDecDigit(input[position])) {\n ++position\n }\n char = input[position++]\n }\n\n // we have char in the buffer, so count for it\n --position\n return toNumber()\n }\n\n function parseIdentifier () {\n // rewind because we don't know first char\n --position\n\n let result = ''\n while (position < inputLength) {\n let char = input[position++]\n if (char === '\\\\' &&\n input[position] === 'u' &&\n isHexDigit(input[position + 1]) &&\n isHexDigit(input[position + 2]) &&\n isHexDigit(input[position + 3]) &&\n isHexDigit(input[position + 4])) {\n // UnicodeEscapeSequence\n char = String.fromCharCode(Number.parseInt(input.substr(position + 1, 4), 16))\n position += 5\n }\n\n if (result.length) {\n // identifier started\n if (Uni.isIdentifierPart(char)) {\n result += char\n } else {\n --position\n return result\n }\n } else {\n if (Uni.isIdentifierStart(char)) {\n result += char\n } else {\n return undefined\n }\n }\n }\n\n fail()\n }\n\n function parseString (endChar) {\n // 7.8.4 of ES262 spec\n let result = ''\n while (position < inputLength) {\n let char = input[position++]\n if (char === endChar) {\n return result\n }if (char === '\\\\') {\n if (position >= inputLength) {\n fail()\n }\n char = input[position++]\n if (unescapeMap[char] && (json5 || (char !== 'v' && (char !== \"'\" || allowSingleQuotedStrings)))) {\n result += unescapeMap[char]\n } else if (json5 && isLineTerminator(char)) {\n // line continuation\n newLine(char)\n } else if (char === 'u' || (char === 'x' && json5)) {\n // unicode/character escape sequence\n const count = char === 'u' ? 4 : 2\n // validation for \\uXXXX\n for (let i = 0; i < count; ++i) {\n if (position >= inputLength) {\n fail()\n }\n if (!isHexDigit(input[position])) {\n fail('Bad escape sequence')\n }\n position++\n }\n result += String.fromCharCode(Number.parseInt(input.substr(position - count, count), 16))\n } else if (json5 && isOctDigit(char)) {\n let digits\n if (char < '4' && isOctDigit(input[position]) && isOctDigit(input[position + 1])) {\n // three-digit octal\n digits = 3\n } else if (isOctDigit(input[position])) {\n // two-digit octal\n digits = 2\n } else {\n digits = 1\n }\n position += digits - 1\n result += String.fromCharCode(Number.parseInt(input.substr(position - digits, digits), 8))\n } else if (json5) {\n // \\X -> x\n result += char\n } else {\n --position\n fail()\n }\n } else if (isLineTerminator(char)) {\n fail()\n } else {\n if (!json5 && char.charCodeAt(0) < 32) {\n --position\n fail('Unexpected control character')\n }\n // SourceCharacter but not one of \" or \\ or LineTerminator\n result += char\n }\n }\n\n fail()\n }\n\n if (ignoreBOM) {\n skipBOM()\n }\n skipWhiteSpace()\n let returnValue = parseGeneric()\n if (returnValue !== undefined || position < inputLength) {\n skipWhiteSpace()\n if (position >= inputLength) {\n if (reviver) {\n returnValue = reviver('', returnValue)\n }\n return tokenize ? tokens : returnValue\n }\n fail()\n } else {\n if (position) {\n fail('No data, only a whitespace')\n } else {\n fail('No data, empty input')\n }\n }\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction parseCustom (input, options) {\n if (typeof options === 'function') {\n options = {\n reviver: options\n }\n } else if (!options) {\n options = {}\n }\n return parseInternal(input, options)\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction tokenize (input, options) {\n if (!options) {\n options = {}\n }\n // As long as this is the single modification, this is easier than cloning.\n // (Once Node.js 6 is dropped, this can be replaced by object destructuring.)\n const oldTokenize = options.tokenize\n options.tokenize = true\n const tokens = parseInternal(input, options)\n options.tokenize = oldTokenize\n return tokens\n}\nfunction escapePointerToken (token) {\n return token\n .toString()\n .replace(/~/g, '~0')\n .replace(/\\//g, '~1')\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction pathToPointer (tokens) {\n if (tokens.length === 0) {\n return ''\n }\n return `/${tokens\n .map(escapePointerToken)\n .join('/')}`\n}\n\nfunction unescapePointerToken (token) {\n return token\n .replace(/~1/g, '/')\n .replace(/~0/g, '~')\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction pointerToPath (pointer) {\n if (pointer === '') {\n return []\n }\n if (pointer[0] !== '/') {\n throw new Error('Missing initial \"/\" in the reference')\n }\n return pointer\n .substr(1)\n .split('/')\n .map(unescapePointerToken)\n}\nfunction getLineAndColumn (input, offset) {\n const lines = input\n .substr(0, offset)\n .split(/\\r?\\n/)\n const line = lines.length\n const column = lines[line - 1].length + 1\n return {\n line,\n column\n }\n}\n\nfunction getOffset (input, line, column) {\n if (line > 1) {\n const breaks = /\\r?\\n/g\n let match\n while ((match = breaks.exec(input))) {\n if (--line === 1) {\n return match.index + column\n }\n }\n }\n return column - 1\n}\n\nfunction pastInput (input, offset) {\n const start = Math.max(0, offset - 20)\n const previous = input.substr(start, offset - start)\n return (offset > 20 ? '...' : '') + previous.replace(/\\r?\\n/g, '')\n}\n\nfunction upcomingInput (input, offset) {\n let start = Math.max(0, offset - 20)\n start += offset - start\n const rest = input.length - start\n const next = input.substr(start, Math.min(20, rest))\n return next.replace(/\\r?\\n/g, '') + (rest > 20 ? '...' : '')\n}\n\nfunction getPositionContext (input, offset) {\n const past = pastInput(input, offset)\n const upcoming = upcomingInput(input, offset)\n const pointer = `${new Array(past.length + 1).join('-')}^`\n return {\n excerpt: past + upcoming,\n pointer\n }\n}\n\nfunction getReason (error) {\n let message = error.message\n .replace('JSON.parse: ', '') // SpiderMonkey\n .replace('JSON Parse error: ', '') // SquirrelFish\n const firstCharacter = message.charAt(0)\n if (firstCharacter >= 'a') {\n message = firstCharacter.toUpperCase() + message.substr(1)\n }\n return message\n}\n\nfunction getLocationOnV8 (input, reason) {\n const match = / in JSON at position (\\d+)$/.exec(reason)\n if (match) {\n const offset = +match[1]\n const location = getLineAndColumn(input, offset)\n return {\n offset,\n line: location.line,\n column: location.column,\n reason: reason.substr(0, match.index)\n }\n }\n}\n\nfunction checkUnexpectedEndOnV8 (input, reason) {\n const match = / end of JSON input$/.exec(reason)\n if (match) {\n const offset = input.length\n const location = getLineAndColumn(input, offset)\n return {\n offset,\n line: location.line,\n column: location.column,\n reason: reason.substr(0, match.index + 4)\n }\n }\n}\n\nfunction getLocationOnSpiderMonkey (input, reason) {\n const match = / at line (\\d+) column (\\d+) of the JSON data$/.exec(reason)\n if (match) {\n const line = +match[1]\n const column = +match[2]\n const offset = getOffset(input, line, column) // eslint-disable-line no-undef\n return {\n offset,\n line,\n column,\n reason: reason.substr(0, match.index)\n }\n }\n}\n\nfunction getTexts (reason, input, offset, line, column) {\n const position = getPositionContext(input, offset)\n const excerpt = position.excerpt\n let message\n let pointer\n if (typeof line === 'number') {\n pointer = position.pointer\n message = `Parse error on line ${line}, column ${column}:\\n${excerpt}\\n${pointer}\\n${reason}`\n } else {\n message = `Parse error in JSON input:\\n${excerpt}\\n${reason}`\n }\n return {\n message,\n excerpt,\n pointer\n }\n}\n\nfunction improveNativeError (input, error) {\n let reason = getReason(error)\n const location = getLocationOnV8(input, reason) ||\n checkUnexpectedEndOnV8(input, reason) ||\n getLocationOnSpiderMonkey(input, reason)\n let offset\n let line\n let column\n if (location) {\n offset = location.offset\n line = location.line\n column = location.column\n reason = location.reason\n } else {\n offset = 0\n }\n error.reason = reason\n const texts = getTexts(reason, input, offset, line, column)\n error.message = texts.message\n error.excerpt = texts.excerpt\n if (texts.pointer) {\n error.pointer = texts.pointer\n error.location = {\n start: {\n column,\n line,\n offset\n }\n }\n }\n return error\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction parseNative (input, reviver) {\n try {\n return JSON.parse(input, reviver)\n } catch (error) {\n const newError = improveNativeError(input, error)\n if (error.location) throw newError\n // If the native error didn't contain location, parse once more\n // by the custom parser, which always provides the error location.\n return parseCustom (input, reviver)\n }\n}\n/* globals navigator, process, parseCustom, parseNative */\n\nconst isSafari = typeof navigator !== 'undefined' && /Safari/.test(navigator.userAgent) && /Apple Computer/.test(navigator.vendor)\nconst oldNode = typeof process !== 'undefined' && process.version.startsWith('v4.')\n\nfunction needsCustomParser (options) {\n return options.ignoreBOM || options.ignoreComments || options.ignoreTrailingCommas ||\n options.allowSingleQuotedStrings || options.allowDuplicateObjectKeys === false ||\n options.ignoreProtoKey || options.ignorePrototypeKeys || options.mode === 'cjson' ||\n options.mode === 'json5' || isSafari || oldNode\n}\n\nfunction getReviver (options) {\n if (typeof options === 'function') {\n return options\n }if (options) {\n return options.reviver\n }\n}\n\n// eslint-disable-next-line no-unused-vars\nfunction parse (input, options) {\n options || (options = {})\n return needsCustomParser(options)\n ? parseCustom(input, options)\n : parseNative(input, getReviver(options))\n}\n\n exports.parse = parse\n exports.tokenize = tokenize\n exports.pathToPointer = pathToPointer\n exports.pointerToPath = pointerToPath\n\n exports.parseNative = parseNative\n exports.parseCustom = parseCustom\n exports.getErrorTexts = getTexts\n\n Object.defineProperty(exports, '__esModule', { value: true })\n}));\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["global", "factory", "exports", "Uni", "x", "isHexDigit", "isOctDigit", "isDecDigit", "isBOM", "unescapeMap", "ownsProperty", "emptyObject", "parseInternal", "input", "options", "json5", "ignoreBOM", "ignoreComments", "ignoreTrailingCommas", "ignoreProtoKey", "ignorePrototypeKeys", "allowSingleQuotedStrings", "allowDuplicateObjectKeys", "reviver", "tokenize", "rawTokens", "tokenLocations", "tokenPaths", "isLineTerminator", "isWhiteSpace", "inputLength", "lineNumber", "lineStart", "position", "tokens", "startToken", "endToken", "tokenPath", "tokenOffset", "tokenLine", "tokenColumn", "type", "value", "token", "generateMessage", "message", "createError", "column", "texts", "getTexts", "error", "fail", "newLine", "char", "parseGeneric", "string", "parseString", "parseObject", "parseArray", "number", "parseNumber", "parseKeyword", "parseKey", "result", "rollback", "parseIdentifier", "skipBOM", "skipWhiteSpace", "insideWhiteSpace", "startWhiteSpace", "endWhiteSpace", "skipComment", "multiLine", "keyword", "startPosition", "i", "keywordLength", "isNotEmpty", "key", "item", "start", "toNumber", "isOctal", "isHex", "sign", "endChar", "count", "digits", "returnValue", "parseCustom", "oldTokenize", "escapePointerToken", "pathToPointer", "unescapePointerToken", "pointerToPath", "pointer", "getLineAndColumn", "offset", "lines", "line", "getOffset", "breaks", "match", "pastInput", "previous", "upcomingInput", "rest", "getPositionContext", "past", "upcoming", "getReason", "firstCharacter", "getLocationOnV8", "reason", "location", "checkUnexpectedEndOnV8", "getLocationOnSpiderMonkey", "excerpt", "improveNativeError", "parseNative", "newError", "isSafari", "oldNode", "needsCustomParser", "getReviver", "parse"]
|
|
7
7
|
}
|
package/web/validator.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(j,f){if(typeof exports=="object"&&typeof module<"u"){const c=require("./jsonlint"),l={Ajv04:"ajv-draft-04",Ajv07:"ajv",AjvJTD:"ajv/dist/jtd",Ajv2019:"ajv/dist/2019",Ajv2020:"ajv/dist/2020",Schema06:"ajv/dist/refs/json-schema-draft-06.json"},d=
|
|
2
|
-
${n.message}`,n}});try{for(const
|
|
3
|
-
${n.message}`,n}}function
|
|
1
|
+
(function(j,f){if(typeof exports=="object"&&typeof module<"u"){const c=require("./jsonlint"),l={Ajv04:"ajv-draft-04",Ajv07:"ajv",AjvJTD:"ajv/dist/jtd",Ajv2019:"ajv/dist/2019",Ajv2020:"ajv/dist/2020",Schema06:"ajv/dist/refs/json-schema-draft-06.json"},d=h=>{const u=require(l[h]);return!u.$schema&&u.default||u};f(exports,c,d)}else if(typeof define=="function"&&define.amd)define("jsonlint-validator",["exports","jsonlint","ajv"],function(c,l,d){f(c,l,u=>{const m=d[u];return!m.$schema&&m.default||m})});else{j=j||self;const c=l=>{const d=j.ajv[l];return!d.$schema&&d.default||d};f(j.jsonlintValidator={},j.jsonlint,c)}})(this,function(j,f,c){"use strict";function l(t,o,e,a){const i=e.find(function(s){return a===f.pathToPointer(s.path)});if(i){const s=i.location.start,r=s.offset,n=s.line,g=s.column,y=f.getErrorTexts(t.reason,o,r,n,g);return t.message=y.message,t.excerpt=y.excerpt,y.pointer&&(t.pointer=y.pointer,t.location={start:{column:g,line:n,offset:r}}),!0}}function d(t,o,e){const a=t.dataPath,i=t.schemaPath,s=`${a||"/"} ${t.message}; see ${i}`,r={reason:s,dataPath:a,schemaPath:i};return l(r,o,e,a)||(r.message=s),r}function h(t,o,e,a){e||(e=JSON.stringify(o,void 0,2)),a||(a={}),Object.assign(a,{tokenLocations:!0,tokenPaths:!0});const i=f.tokenize(e,a),s=d(t[0],e,i),r=new SyntaxError(s.message);return Object.assign(r,s),r}function u(t){let o;if(!t||t==="json-schema-draft-06"||t==="draft-06"){const e=c("Ajv07");o=new e,o.addMetaSchema(c("Schema06"))}else if(t==="json-schema-draft-07"||t==="draft-07"){const e=c("Ajv07");o=new e}else if(t==="json-schema-draft-04"||t==="draft-04"){const e=c("Ajv04");o=new e}else if(t==="json-schema-draft-2019-09"||t==="draft-2019-09"){const e=c("Ajv2019");o=new e}else if(t==="json-schema-draft-2020-12"||t==="draft-2020-12"){const e=c("Ajv2020");o=new e}else if(t==="json-type-definition"||t==="jtd"||t==="rfc8927"){const e=c("AjvJTD");o=new e}else throw new RangeError(`Unsupported environment for the JSON Schema validation: "${t}".`);return o}function m(t,o,e){Array.isArray(o)||(o=[o]);const[a,...i]=o.map((s,r)=>{if(typeof s!="string")return s;try{return f.parse(s,e)}catch(n){throw n.message=`Parsing the JSON Schema #${r+1} failed.
|
|
2
|
+
${n.message}`,n}});try{for(const s of i)t.addSchema(s);return t.compile(a)}catch(s){const r=t.errors,n=r?h(r,parsed,o,e):s;throw n.message=`Compiling the JSON Schema failed.
|
|
3
|
+
${n.message}`,n}}function S(t,o){let e={};typeof o=="object"&&!(o instanceof String)&&(e=o,o=e.environment);const a=u(o),i={mode:e.mode,ignoreBOM:e.ignoreBOM,ignoreComments:e.ignoreComments,ignoreTrailingCommas:e.ignoreTrailingCommas,allowSingleQuotedStrings:e.allowSingleQuotedStrings,allowDuplicateObjectKeys:e.allowDuplicateObjectKeys,ignoreProtoKey:e.ignoreProtoKey,ignorePrototypeKeys:e.ignorePrototypeKeys},s=m(a,t,i);return function(r,n,g){if(typeof r=="string"||r instanceof String?(g=n,n=r,r=f.parse(n,g)):typeof n=="string"||n instanceof String||(g=n,n=void 0),s(r))return r;throw h(s.errors,r,n,g)}}j.compile=S,Object.defineProperty(j,"__esModule",{value:!0})});
|
|
4
4
|
//# sourceMappingURL=validator.min.js.map
|
package/web/validator.min.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../lib/validator.js"],
|
|
4
|
-
"sourcesContent": ["(function (global, factory) {\n if (typeof exports === 'object' && typeof module !== 'undefined') {\n const jsonlint = require('./jsonlint')\n const ajv = {\n Ajv04: 'ajv-draft-04',\n Ajv07: 'ajv',\n AjvJTD: 'ajv/dist/jtd',\n Ajv2019: 'ajv/dist/2019',\n Ajv2020: 'ajv/dist/2020',\n Schema06: 'ajv/dist/refs/json-schema-draft-06.json'\n }\n const requireAjv = name => {\n const exported = require(ajv[name])\n return !exported.$schema && exported.default || exported\n }\n factory(exports, jsonlint, requireAjv)\n } else if (typeof define === 'function' && define.amd) {\n define('jsonlint-validator', ['exports', 'jsonlint', 'ajv'],\n function (exports, jsonlint, ajv) {\n const requireAjv = name => {\n const exported = ajv[name]\n return !exported.$schema && exported.default || exported\n }\n factory(exports, jsonlint, requireAjv)\n })\n } else {\n global = global || self\n const requireAjv = name => {\n const exported = global.ajv[name]\n return !exported.$schema && exported.default || exported\n }\n factory(global.jsonlintValidator = {}, global.jsonlint, requireAjv)\n }\n}(this, function (exports, jsonlint, requireAjv) {\n 'use strict'\n\n function addErrorLocation (problem, input, tokens, dataPath) {\n const token = tokens.find(function (token) {\n return dataPath === jsonlint.pathToPointer(token.path)\n })\n if (token) {\n const location = token.location.start\n const offset = location.offset\n const line = location.line\n const column = location.column\n const texts = jsonlint.getErrorTexts(problem.reason, input, offset, line, column)\n problem.message = texts.message\n problem.excerpt = texts.excerpt\n if (texts.pointer) {\n problem.pointer = texts.pointer\n problem.location = {\n start: {\n column,\n line,\n offset\n }\n }\n }\n return true\n }\n }\n\n function errorToProblem (error, input, tokens) {\n const dataPath = error.dataPath\n const schemaPath = error.schemaPath\n const reason = `${dataPath || '/'} ${error.message}; see ${schemaPath}`\n const problem = {\n reason,\n dataPath,\n schemaPath\n }\n if (!addErrorLocation(problem, input, tokens, dataPath)) {\n problem.message = reason\n }\n return problem\n }\n\n function createError (errors, data, input, options) {\n if (!input) {\n input = JSON.stringify(data, undefined, 2)\n }\n if (!options) {\n options = {}\n }\n Object.assign(options, {\n tokenLocations: true,\n tokenPaths: true\n })\n const tokens = jsonlint.tokenize(input, options)\n // var problems = errors.map(function (error) {\n // return errorToProblem(error, input, tokens)\n // })\n // var message = problems\n // .map(function (problem) {\n // return problem.message\n // })\n // .join('\\n')\n const problem = errorToProblem(errors[0], input, tokens)\n const error = new SyntaxError(problem.message)\n Object.assign(error, problem)\n return error\n }\n\n function createAjv (environment) {\n let ajv\n if (!environment || environment === 'json-schema-draft-06' || environment === 'draft-06') {\n const Ajv = requireAjv('Ajv07')\n ajv = new Ajv()\n ajv.addMetaSchema(requireAjv('Schema06'))\n } else if (environment === 'json-schema-draft-07' || environment === 'draft-07') {\n const Ajv = requireAjv('Ajv07')\n ajv = new Ajv()\n } else if (environment === 'json-schema-draft-04' || environment === 'draft-04') {\n const Ajv = requireAjv('Ajv04')\n ajv = new Ajv()\n } else if (environment === 'json-schema-draft-2019-09' || environment === 'draft-2019-09') {\n const Ajv = requireAjv('Ajv2019')\n ajv = new Ajv()\n } else if (environment === 'json-schema-draft-2020-12' || environment === 'draft-2020-12') {\n const Ajv = requireAjv('Ajv2020')\n ajv = new Ajv()\n } else if (environment === 'json-type-definition' || environment === 'jtd' || environment === 'rfc8927') {\n const Ajv = requireAjv('AjvJTD')\n ajv = new Ajv()\n } else {\n throw new RangeError(`Unsupported environment for the JSON Schema validation: \"${environment}\".`)\n }\n return ajv\n }\n\n function compileSchema (ajv, schema, parseOptions) {\n if (!Array.isArray(schema)) schema = [schema]\n const [main, ...others] = schema.map((schema, index) => {\n if (typeof schema !== 'string') return schema\n try {\n return jsonlint.parse(schema, parseOptions)\n } catch (error) {\n error.message = `Parsing the JSON Schema #${index + 1} failed.\\n${error.message}`\n throw error\n }\n })\n try {\n for (const schema of others) {\n ajv.addSchema(schema)\n }\n return ajv.compile(main)\n } catch (originalError) {\n const errors = ajv.errors\n const betterError = errors\n ? createError(errors, parsed, schema, parseOptions)\n : originalError\n betterError.message = `Compiling the JSON Schema failed.\\n${betterError.message}`\n throw betterError\n }\n }\n\n function compile (schema, environment) {\n let options = {}\n if (typeof environment === 'object' && !(environment instanceof String)) {\n options = environment\n environment = options.environment\n }\n const ajv = createAjv(environment)\n const parseOptions = {\n mode: options.mode,\n ignoreBOM: options.ignoreBOM,\n ignoreComments: options.ignoreComments,\n ignoreTrailingCommas: options.ignoreTrailingCommas,\n allowSingleQuotedStrings: options.allowSingleQuotedStrings,\n allowDuplicateObjectKeys: options.allowDuplicateObjectKeys\n }\n const validate = compileSchema(ajv, schema, parseOptions)\n return function (data, input, options) {\n if (typeof data === 'string' || data instanceof String) {\n options = input\n input = data\n data = jsonlint.parse(input, options)\n } else if (!(typeof input === 'string' || input instanceof String)) {\n options = input\n input = undefined\n }\n if (validate(data)) {\n return data\n }\n throw createError(validate.errors, data, input, options)\n }\n }\n\n exports.compile = compile\n\n Object.defineProperty(exports, '__esModule', { value: true })\n}))\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["(function (global, factory) {\n if (typeof exports === 'object' && typeof module !== 'undefined') {\n const jsonlint = require('./jsonlint')\n const ajv = {\n Ajv04: 'ajv-draft-04',\n Ajv07: 'ajv',\n AjvJTD: 'ajv/dist/jtd',\n Ajv2019: 'ajv/dist/2019',\n Ajv2020: 'ajv/dist/2020',\n Schema06: 'ajv/dist/refs/json-schema-draft-06.json'\n }\n const requireAjv = name => {\n const exported = require(ajv[name])\n return !exported.$schema && exported.default || exported\n }\n factory(exports, jsonlint, requireAjv)\n } else if (typeof define === 'function' && define.amd) {\n define('jsonlint-validator', ['exports', 'jsonlint', 'ajv'],\n function (exports, jsonlint, ajv) {\n const requireAjv = name => {\n const exported = ajv[name]\n return !exported.$schema && exported.default || exported\n }\n factory(exports, jsonlint, requireAjv)\n })\n } else {\n global = global || self\n const requireAjv = name => {\n const exported = global.ajv[name]\n return !exported.$schema && exported.default || exported\n }\n factory(global.jsonlintValidator = {}, global.jsonlint, requireAjv)\n }\n}(this, function (exports, jsonlint, requireAjv) {\n 'use strict'\n\n function addErrorLocation (problem, input, tokens, dataPath) {\n const token = tokens.find(function (token) {\n return dataPath === jsonlint.pathToPointer(token.path)\n })\n if (token) {\n const location = token.location.start\n const offset = location.offset\n const line = location.line\n const column = location.column\n const texts = jsonlint.getErrorTexts(problem.reason, input, offset, line, column)\n problem.message = texts.message\n problem.excerpt = texts.excerpt\n if (texts.pointer) {\n problem.pointer = texts.pointer\n problem.location = {\n start: {\n column,\n line,\n offset\n }\n }\n }\n return true\n }\n }\n\n function errorToProblem (error, input, tokens) {\n const dataPath = error.dataPath\n const schemaPath = error.schemaPath\n const reason = `${dataPath || '/'} ${error.message}; see ${schemaPath}`\n const problem = {\n reason,\n dataPath,\n schemaPath\n }\n if (!addErrorLocation(problem, input, tokens, dataPath)) {\n problem.message = reason\n }\n return problem\n }\n\n function createError (errors, data, input, options) {\n if (!input) {\n input = JSON.stringify(data, undefined, 2)\n }\n if (!options) {\n options = {}\n }\n Object.assign(options, {\n tokenLocations: true,\n tokenPaths: true\n })\n const tokens = jsonlint.tokenize(input, options)\n // var problems = errors.map(function (error) {\n // return errorToProblem(error, input, tokens)\n // })\n // var message = problems\n // .map(function (problem) {\n // return problem.message\n // })\n // .join('\\n')\n const problem = errorToProblem(errors[0], input, tokens)\n const error = new SyntaxError(problem.message)\n Object.assign(error, problem)\n return error\n }\n\n function createAjv (environment) {\n let ajv\n if (!environment || environment === 'json-schema-draft-06' || environment === 'draft-06') {\n const Ajv = requireAjv('Ajv07')\n ajv = new Ajv()\n ajv.addMetaSchema(requireAjv('Schema06'))\n } else if (environment === 'json-schema-draft-07' || environment === 'draft-07') {\n const Ajv = requireAjv('Ajv07')\n ajv = new Ajv()\n } else if (environment === 'json-schema-draft-04' || environment === 'draft-04') {\n const Ajv = requireAjv('Ajv04')\n ajv = new Ajv()\n } else if (environment === 'json-schema-draft-2019-09' || environment === 'draft-2019-09') {\n const Ajv = requireAjv('Ajv2019')\n ajv = new Ajv()\n } else if (environment === 'json-schema-draft-2020-12' || environment === 'draft-2020-12') {\n const Ajv = requireAjv('Ajv2020')\n ajv = new Ajv()\n } else if (environment === 'json-type-definition' || environment === 'jtd' || environment === 'rfc8927') {\n const Ajv = requireAjv('AjvJTD')\n ajv = new Ajv()\n } else {\n throw new RangeError(`Unsupported environment for the JSON Schema validation: \"${environment}\".`)\n }\n return ajv\n }\n\n function compileSchema (ajv, schema, parseOptions) {\n if (!Array.isArray(schema)) schema = [schema]\n const [main, ...others] = schema.map((schema, index) => {\n if (typeof schema !== 'string') return schema\n try {\n return jsonlint.parse(schema, parseOptions)\n } catch (error) {\n error.message = `Parsing the JSON Schema #${index + 1} failed.\\n${error.message}`\n throw error\n }\n })\n try {\n for (const schema of others) {\n ajv.addSchema(schema)\n }\n return ajv.compile(main)\n } catch (originalError) {\n const errors = ajv.errors\n const betterError = errors\n ? createError(errors, parsed, schema, parseOptions)\n : originalError\n betterError.message = `Compiling the JSON Schema failed.\\n${betterError.message}`\n throw betterError\n }\n }\n\n function compile (schema, environment) {\n let options = {}\n if (typeof environment === 'object' && !(environment instanceof String)) {\n options = environment\n environment = options.environment\n }\n const ajv = createAjv(environment)\n const parseOptions = {\n mode: options.mode,\n ignoreBOM: options.ignoreBOM,\n ignoreComments: options.ignoreComments,\n ignoreTrailingCommas: options.ignoreTrailingCommas,\n allowSingleQuotedStrings: options.allowSingleQuotedStrings,\n allowDuplicateObjectKeys: options.allowDuplicateObjectKeys,\n ignoreProtoKey: options.ignoreProtoKey,\n ignorePrototypeKeys: options.ignorePrototypeKeys\n }\n const validate = compileSchema(ajv, schema, parseOptions)\n return function (data, input, options) {\n if (typeof data === 'string' || data instanceof String) {\n options = input\n input = data\n data = jsonlint.parse(input, options)\n } else if (!(typeof input === 'string' || input instanceof String)) {\n options = input\n input = undefined\n }\n if (validate(data)) {\n return data\n }\n throw createError(validate.errors, data, input, options)\n }\n }\n\n exports.compile = compile\n\n Object.defineProperty(exports, '__esModule', { value: true })\n}))\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["global", "factory", "jsonlint", "ajv", "requireAjv", "name", "exported", "exports", "addErrorLocation", "problem", "input", "tokens", "dataPath", "token", "location", "offset", "line", "column", "texts", "errorToProblem", "error", "schemaPath", "reason", "createError", "errors", "data", "options", "createAjv", "environment", "Ajv", "compileSchema", "schema", "parseOptions", "main", "others", "index", "originalError", "betterError", "compile", "validate"]
|
|
7
7
|
}
|