@gql.tada/internal
Advanced tools
Comparing version 0.1.0-canary-85226c14a4dd731386a4532f69ce1b175d97c811 to 0.1.0-canary-b3c52a2e86ec86f44ee5ad3818b929f86882a0b4
# @gql.tada/internal | ||
## 0.1.0-canary-85226c14a4dd731386a4532f69ce1b175d97c811 | ||
## 0.1.0-canary-b3c52a2e86ec86f44ee5ad3818b929f86882a0b4 | ||
@@ -5,0 +5,0 @@ ### Minor Changes |
@@ -39,4 +39,5 @@ import * as typescript from 'typescript'; | ||
declare function preprocessIntrospection({ __schema: schema }: IntrospectionQuery): string; | ||
declare function minifyIntrospection(introspection: IntrospectionQuery): IntrospectionQuery; | ||
declare function preprocessIntrospection(introspection: IntrospectionQuery): Promise<string>; | ||
interface OutputIntrospectionFileOptions { | ||
@@ -49,3 +50,3 @@ fileType: '.ts' | '.d.ts' | string; | ||
opts: OutputIntrospectionFileOptions | ||
): Promise<string>; | ||
): string; | ||
@@ -52,0 +53,0 @@ declare const resolveTypeScriptRootDir: ( |
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "__esModule", { | ||
var r = require("node:fs/promises"); | ||
var r = require("path"); | ||
var D = require("node:fs/promises"); | ||
var t = require("node:module"); | ||
var D = require("path"); | ||
var n = "undefined" != typeof document ? document.currentScript : null; | ||
@@ -73,5 +73,5 @@ | ||
return e[u.ScriptTarget[r]] || null; | ||
}(this.cache, r) || function setTargetCache(e, r, t) { | ||
e[u.ScriptTarget[r]] = t; | ||
return t; | ||
}(this.cache, r) || function setTargetCache(e, r, D) { | ||
e[u.ScriptTarget[r]] = D; | ||
return D; | ||
}(this.cache, r, u.createSourceFile(this.name, this.toString(), e)); | ||
@@ -109,163 +109,94 @@ } | ||
var toPath = u => u.split(e.sep).join("/"); | ||
var s = "lib.d.ts"; | ||
async function importModule(u, t) { | ||
var D = `${t}/package.json`; | ||
var n = o(D, { | ||
paths: [ "node_modules", ...o.paths(D) || [] ] | ||
}); | ||
if (!n) { | ||
throw new Error(`Failed to resolve "${t}"`); | ||
var printName = u => u ? `'${u}'` : "never"; | ||
var printTypeRef = u => { | ||
if ("NON_NULL" === u.kind) { | ||
return `{ kind: 'NON_NULL'; name: never; ofType: ${printTypeRef(u.ofType)}; }`; | ||
} else if ("LIST" === u.kind) { | ||
return `{ kind: 'LIST'; name: never; ofType: ${printTypeRef(u.ofType)}; }`; | ||
} else { | ||
return `{ kind: ${printName(u.kind)}; name: ${printName(u.name)}; ofType: null; }`; | ||
} | ||
var a = e.dirname(n); | ||
var i = `/node_modules/${t}/`; | ||
await async function walk(t) { | ||
for (var D of await r.readdir(t)) { | ||
var n = e.join(t, D); | ||
if ((await r.stat(n)).isDirectory()) { | ||
await walk(n); | ||
} else { | ||
var o = e.join(e.relative(a, t), D); | ||
var s = await r.readFile(n, { | ||
encoding: "utf8" | ||
}); | ||
u.writeFile(i + toPath(o), s, !1); | ||
} | ||
} | ||
}(a); | ||
} | ||
}; | ||
async function importLib(u) { | ||
var t = "typescript/package.json"; | ||
var D = o(t, { | ||
paths: [ "node_modules", ...o.paths(t) || [] ] | ||
}); | ||
if (!D) { | ||
throw new Error("Failed to resolve typescript"); | ||
var printNamedTypes = u => { | ||
if (!u.length) { | ||
return "never"; | ||
} | ||
var n = e.join(e.dirname(D), "lib"); | ||
var i = (await Promise.all([ "lib.es5.d.ts", "lib.es2015.symbol.d.ts", "lib.es2015.collection.d.ts", "lib.es2015.iterable.d.ts" ].map((u => r.readFile(e.resolve(n, u), { | ||
encoding: "utf8" | ||
}))))).join("\n"); | ||
u.writeFile(u.getDefaultLibFileName(a), i, !1); | ||
} | ||
var e = ""; | ||
for (var r of u) { | ||
if (e) { | ||
e += " | "; | ||
} | ||
e += printName(r.name); | ||
} | ||
return e; | ||
}; | ||
async function resolveModuleFile(u) { | ||
var t = u.indexOf("/"); | ||
var D = u.slice(0, t); | ||
var n = u.slice(t); | ||
var a = `${D}/package.json`; | ||
var i = o(a, { | ||
paths: [ "node_modules", ...o.paths(a) || [] ] | ||
}); | ||
if (!i) { | ||
throw new Error(`Failed to resolve "${D}"`); | ||
var printFields = u => { | ||
var e = ""; | ||
for (var r of u) { | ||
var D = printName(r.name); | ||
var t = printTypeRef(r.type); | ||
e += `${printName(r.name)}: { name: ${D}; type: ${t} }; `; | ||
} | ||
var s = e.join(e.dirname(i), n); | ||
return r.readFile(s, { | ||
encoding: "utf8" | ||
}); | ||
} | ||
return `{ ${e}}`; | ||
}; | ||
var s = "lib.d.ts"; | ||
var F = ""; | ||
var createProgram = (e, r) => u.createProgram(e, a, r); | ||
function createVirtualHost() { | ||
var e = u.createModuleResolutionCache(i, normalize, a); | ||
var r = new Directory; | ||
r.files[s] = new File(s, F); | ||
return { | ||
getCanonicalFileName: normalize, | ||
getDefaultLibFileName: () => i + s, | ||
getCurrentDirectory: () => i, | ||
getNewLine: () => "\n", | ||
getModuleResolutionCache: () => e, | ||
useCaseSensitiveFileNames: () => !0, | ||
fileExists(u) { | ||
var e = split(normalize(u)); | ||
var t = r; | ||
for (var D = 0; D < e.length - 1; D++) { | ||
if (!(t = t.children[e[D]])) { | ||
return !1; | ||
var printIntrospectionType = u => { | ||
if ("ENUM" === u.kind) { | ||
var e = printNamedTypes(u.enumValues); | ||
return `{ kind: 'ENUM'; name: ${printName(u.name)}; type: ${e}; }`; | ||
} else if ("INPUT_OBJECT" === u.kind) { | ||
var r = (u => { | ||
var e = ""; | ||
for (var r of u) { | ||
if (e) { | ||
e += ", "; | ||
} | ||
e += `{ name: ${printName(r.name)}; type: ${printTypeRef(r.type)}; defaultValue: ${r.defaultValue ? JSON.stringify(r.defaultValue) : "null"} }`; | ||
} | ||
return !!t.files[e[e.length - 1]]; | ||
}, | ||
directoryExists(u) { | ||
var e = split(normalize(u)); | ||
if (!e.length) { | ||
return !0; | ||
} | ||
var t = r; | ||
for (var D = 0; D < e.length - 1; D++) { | ||
if (!(t = t.children[e[D]])) { | ||
return !1; | ||
} | ||
} | ||
return !!t.children[e[e.length - 1]]; | ||
}, | ||
writeFile(u, e) { | ||
var t = normalize(u); | ||
var D = split(t); | ||
var n = r; | ||
for (var a = 0; a < D.length - 1; a++) { | ||
n = n.getOrCreateDirectory(D[a]); | ||
} | ||
n.files[D[D.length - 1]] = new File(t, e); | ||
}, | ||
getDirectories(u) { | ||
var e = split(normalize(u)); | ||
var t = r; | ||
for (var D = 0; D < e.length; D++) { | ||
if (!(t = t.children[e[D]])) { | ||
return []; | ||
} | ||
} | ||
return Object.keys(t.children); | ||
}, | ||
readFile(u) { | ||
var e = split(normalize(u)); | ||
var t = r; | ||
for (var D = 0; D < e.length - 1; D++) { | ||
if (!(t = t.children[e[D]])) { | ||
return; | ||
} | ||
} | ||
var n = t.files[e[e.length - 1]]; | ||
return n && n.toString(); | ||
}, | ||
getSourceFile(u, e) { | ||
var t = split(normalize(u)); | ||
var D = r; | ||
for (var n = 0; n < t.length - 1; n++) { | ||
if (!(D = D.children[t[n]])) { | ||
return; | ||
} | ||
} | ||
var a = D.files[t[t.length - 1]]; | ||
return a && a.toSourceFile(e); | ||
}, | ||
resolveModuleNames(r, t) { | ||
var D = []; | ||
for (var n of r) { | ||
var i = u.resolveModuleName(n, t, a, this, e); | ||
D.push(i.resolvedModule); | ||
} | ||
return D; | ||
return `[${e}]`; | ||
})(u.inputFields); | ||
return `{ kind: 'INPUT_OBJECT'; name: ${printName(u.name)}; inputFields: ${r}; }`; | ||
} else if ("OBJECT" === u.kind) { | ||
var D = printFields(u.fields); | ||
return `{ kind: 'OBJECT'; name: ${printName(u.name)}; fields: ${D}; }`; | ||
} else if ("INTERFACE" === u.kind) { | ||
return `{ kind: 'INTERFACE'; name: ${printName(u.name)}; fields: ${printFields(u.fields)}; possibleTypes: ${printNamedTypes(u.possibleTypes)}; }`; | ||
} else if ("UNION" === u.kind) { | ||
return `{ kind: 'UNION'; name: ${printName(u.name)}; fields: {}; possibleTypes: ${printNamedTypes(u.possibleTypes)}; }`; | ||
} else if ("SCALAR" === u.kind) { | ||
return "unknown"; | ||
} else { | ||
return "never"; | ||
} | ||
}; | ||
function preprocessIntrospection({__schema: u}) { | ||
var e = printName(u.queryType.name); | ||
var r = printName(u.mutationType && u.mutationType.name); | ||
var D = printName(u.subscriptionType && u.subscriptionType.name); | ||
var t = ""; | ||
for (var n of u.types) { | ||
var a = printIntrospectionType(n); | ||
if (t) { | ||
t += "\n"; | ||
} | ||
}; | ||
t += ` ${printName(n.name)}: ${a};`; | ||
} | ||
return `{\n query: ${e};\n mutation: ${r};\n subscription: ${D};\n types: {\n${t}\n };\n}`; | ||
} | ||
var c = !1; | ||
var F = !1; | ||
var C = !1; | ||
var c = !1; | ||
var A = !1; | ||
var E = !1; | ||
var l = { | ||
var E = { | ||
kind: "SCALAR", | ||
@@ -285,15 +216,15 @@ name: "Any" | ||
case "SCALAR": | ||
if (c) { | ||
if (F) { | ||
return u; | ||
} else { | ||
E = !0; | ||
return l; | ||
A = !0; | ||
return E; | ||
} | ||
case "INPUT_OBJECT": | ||
if (A) { | ||
if (c) { | ||
return u; | ||
} else { | ||
E = !0; | ||
return l; | ||
A = !0; | ||
return E; | ||
} | ||
@@ -305,4 +236,4 @@ | ||
} else { | ||
E = !0; | ||
return l; | ||
A = !0; | ||
return E; | ||
} | ||
@@ -403,16 +334,2 @@ | ||
var f = [ "/* eslint-disable */", "/* prettier-ignore */" ].join("\n") + "\n"; | ||
var d = [ "/** An IntrospectionQuery representation of your schema.", " *", " * @remarks", " * This is an introspection of your schema saved as a file by GraphQLSP.", " * It will automatically be used by `gql.tada` to infer the types of your GraphQL documents.", " * If you need to reuse this data or update your `scalars`, update `tadaOutputLocation` to", " * instead save to a .ts instead of a .d.ts file.", " */" ].join("\n"); | ||
var p = [ "/** An IntrospectionQuery representation of your schema.", " *", " * @remarks", " * This is an introspection of your schema saved as a file by GraphQLSP.", " * You may import it to create a `graphql()` tag function with `gql.tada`", " * by importing it and passing it to `initGraphQLTada<>()`.", " *", " * @example", " * ```", " * import { initGraphQLTada } from 'gql.tada';", " * import type { introspection } from './introspection';", " *", " * export const graphql = initGraphQLTada<{", " * introspection: typeof introspection;", " * scalars: {", " * DateTime: string;", " * Json: any;", " * };", " * }>();", " * ```", " */" ].join("\n"); | ||
class TSError extends Error { | ||
constructor(u, e) { | ||
super(u); | ||
this.name = "TSError"; | ||
this.diagnostics = e || []; | ||
} | ||
} | ||
class TadaError extends Error { | ||
@@ -425,43 +342,10 @@ constructor(u) { | ||
var B = u.NodeBuilderFlags.NoTruncation | u.NodeBuilderFlags.GenerateNamesForShadowedTypeParams | u.NodeBuilderFlags.NoTypeReduction | u.NodeBuilderFlags.AllowEmptyTuple | u.NodeBuilderFlags.InObjectTypeLiteral | u.NodeBuilderFlags.InTypeAlias | u.NodeBuilderFlags.IgnoreErrors; | ||
var l = [ "/* eslint-disable */", "/* prettier-ignore */" ].join("\n") + "\n"; | ||
var v = "\n import type { introspection } from './introspection.ts';\n import type { mapIntrospection } from './gql-tada.ts';\n type obj<T> = T extends { [key: string | number]: any } ? { [K in keyof T]: T[K] } : never;\n export type output = obj<mapIntrospection<introspection>>;\n"; | ||
var f = [ "/** An IntrospectionQuery representation of your schema.", " *", " * @remarks", " * This is an introspection of your schema saved as a file by GraphQLSP.", " * It will automatically be used by `gql.tada` to infer the types of your GraphQL documents.", " * If you need to reuse this data or update your `scalars`, update `tadaOutputLocation` to", " * instead save to a .ts instead of a .d.ts file.", " */" ].join("\n"); | ||
var d = [ "/** An IntrospectionQuery representation of your schema.", " *", " * @remarks", " * This is an introspection of your schema saved as a file by GraphQLSP.", " * You may import it to create a `graphql()` tag function with `gql.tada`", " * by importing it and passing it to `initGraphQLTada<>()`.", " *", " * @example", " * ```", " * import { initGraphQLTada } from 'gql.tada';", " * import type { introspection } from './introspection';", " *", " * export const graphql = initGraphQLTada<{", " * introspection: typeof introspection;", " * scalars: {", " * DateTime: string;", " * Json: any;", " * };", " * }>();", " * ```", " */" ].join("\n"); | ||
var stringifyJson = u => "string" == typeof u ? u : JSON.stringify(u, null, 2); | ||
async function preprocessIntrospection(e) { | ||
var r = `export type introspection = ${JSON.stringify(e, null, 2)};`; | ||
var t = createVirtualHost(); | ||
await importLib(t); | ||
await importModule(t, "@0no-co/graphql.web"); | ||
t.writeFile("gql-tada.ts", await resolveModuleFile("gql.tada/dist/gql-tada.d.ts")); | ||
t.writeFile("introspection.ts", r); | ||
t.writeFile("index.ts", v); | ||
var D = createProgram([ "index.ts" ], t); | ||
var n = D.getTypeChecker(); | ||
var a = D.getSemanticDiagnostics(); | ||
if (a.length) { | ||
throw new TSError("TypeScript failed to evaluate introspection", a); | ||
} | ||
var i = D.getSourceFile("index.ts"); | ||
var o = i && n.getSymbolAtLocation(i); | ||
var s = o && n.getExportsOfModule(o)[0]; | ||
var F = s && s.declarations && s.declarations[0]; | ||
var c = F && n.getTypeAtLocation(F); | ||
if (!c) { | ||
throw new TSError("Something went wrong while evaluating introspection type."); | ||
} | ||
var C = u.createPrinter({ | ||
newLine: u.NewLineKind.LineFeed, | ||
removeComments: !0, | ||
omitTrailingSemicolon: !0, | ||
noEmitHelpers: !0 | ||
}); | ||
var A = n.typeToTypeNode(c, F, B); | ||
if (!A) { | ||
throw new TSError("Something went wrong while evaluating introspection type node."); | ||
} | ||
return C.printNode(u.EmitHint.Unspecified, A, i); | ||
} | ||
function getDefaultExportFromCjs(u) { | ||
@@ -471,7 +355,7 @@ return u && u.__esModule && Object.prototype.hasOwnProperty.call(u, "default") ? u.default : u; | ||
var m = { | ||
var p = { | ||
exports: {} | ||
}; | ||
m.exports = function() { | ||
p.exports = function() { | ||
function createCommonjsModule(u, e) { | ||
@@ -519,6 +403,6 @@ return u(e = { | ||
})); | ||
var t = u.document; | ||
var D = _isObject(t) && _isObject(t.createElement); | ||
var D = u.document; | ||
var t = _isObject(D) && _isObject(D.createElement); | ||
var _domCreate = function(u) { | ||
return D ? t.createElement(u) : {}; | ||
return t ? D.createElement(u) : {}; | ||
}; | ||
@@ -536,11 +420,11 @@ var n = !r && !_fails((function() { | ||
} | ||
var r, t; | ||
if (e && "function" == typeof (r = u.toString) && !_isObject(t = r.call(u))) { | ||
return t; | ||
var r, D; | ||
if (e && "function" == typeof (r = u.toString) && !_isObject(D = r.call(u))) { | ||
return D; | ||
} | ||
if ("function" == typeof (r = u.valueOf) && !_isObject(t = r.call(u))) { | ||
return t; | ||
if ("function" == typeof (r = u.valueOf) && !_isObject(D = r.call(u))) { | ||
return D; | ||
} | ||
if (!e && "function" == typeof (r = u.toString) && !_isObject(t = r.call(u))) { | ||
return t; | ||
if (!e && "function" == typeof (r = u.toString) && !_isObject(D = r.call(u))) { | ||
return D; | ||
} | ||
@@ -588,11 +472,11 @@ throw TypeError("Can't convert object to primitive value"); | ||
var F = 0; | ||
var c = Math.random(); | ||
var C = Math.random(); | ||
var _uid = function(u) { | ||
return "Symbol(".concat(void 0 === u ? "" : u, ")_", (++F + c).toString(36)); | ||
return "Symbol(".concat(void 0 === u ? "" : u, ")_", (++F + C).toString(36)); | ||
}; | ||
var C = createCommonjsModule((function(r) { | ||
var t = "__core-js_shared__"; | ||
var D = u[t] || (u[t] = {}); | ||
var c = createCommonjsModule((function(r) { | ||
var D = "__core-js_shared__"; | ||
var t = u[D] || (u[D] = {}); | ||
(r.exports = function(u, e) { | ||
return D[u] || (D[u] = void 0 !== e ? e : {}); | ||
return t[u] || (t[u] = void 0 !== e ? e : {}); | ||
})("versions", []).push({ | ||
@@ -604,33 +488,33 @@ version: e.version, | ||
})); | ||
var A = C("native-function-to-string", Function.toString); | ||
var A = c("native-function-to-string", Function.toString); | ||
var E = createCommonjsModule((function(r) { | ||
var t = _uid("src"); | ||
var D = "toString"; | ||
var n = ("" + A).split(D); | ||
var D = _uid("src"); | ||
var t = "toString"; | ||
var n = ("" + A).split(t); | ||
e.inspectSource = function(u) { | ||
return A.call(u); | ||
}; | ||
(r.exports = function(e, r, D, a) { | ||
var i = "function" == typeof D; | ||
(r.exports = function(e, r, t, a) { | ||
var i = "function" == typeof t; | ||
if (i) { | ||
_has(D, "name") || o(D, "name", r); | ||
_has(t, "name") || o(t, "name", r); | ||
} | ||
if (e[r] === D) { | ||
if (e[r] === t) { | ||
return; | ||
} | ||
if (i) { | ||
_has(D, t) || o(D, t, e[r] ? "" + e[r] : n.join(String(r))); | ||
_has(t, D) || o(t, D, e[r] ? "" + e[r] : n.join(String(r))); | ||
} | ||
if (e === u) { | ||
e[r] = D; | ||
e[r] = t; | ||
} else if (!a) { | ||
delete e[r]; | ||
o(e, r, D); | ||
o(e, r, t); | ||
} else if (e[r]) { | ||
e[r] = D; | ||
e[r] = t; | ||
} else { | ||
o(e, r, D); | ||
o(e, r, t); | ||
} | ||
})(Function.prototype, D, (function toString() { | ||
return "function" == typeof this && this[t] || A.call(this); | ||
})(Function.prototype, t, (function toString() { | ||
return "function" == typeof this && this[D] || A.call(this); | ||
})); | ||
@@ -656,9 +540,9 @@ })); | ||
case 2: | ||
return function(r, t) { | ||
return u.call(e, r, t); | ||
return function(r, D) { | ||
return u.call(e, r, D); | ||
}; | ||
case 3: | ||
return function(r, t, D) { | ||
return u.call(e, r, t, D); | ||
return function(r, D, t) { | ||
return u.call(e, r, D, t); | ||
}; | ||
@@ -671,3 +555,3 @@ } | ||
var l = "prototype"; | ||
var $export = function(r, t, D) { | ||
var $export = function(r, D, t) { | ||
var n = r & $export.F; | ||
@@ -677,11 +561,11 @@ var a = r & $export.G; | ||
var s = r & $export.B; | ||
var F = a ? u : r & $export.S ? u[t] || (u[t] = {}) : (u[t] || {})[l]; | ||
var c = a ? e : e[t] || (e[t] = {}); | ||
var C = c[l] || (c[l] = {}); | ||
var F = a ? u : r & $export.S ? u[D] || (u[D] = {}) : (u[D] || {})[l]; | ||
var C = a ? e : e[D] || (e[D] = {}); | ||
var c = C[l] || (C[l] = {}); | ||
var A, f, d, p; | ||
if (a) { | ||
D = t; | ||
t = D; | ||
} | ||
for (A in D) { | ||
d = ((f = !n && F && void 0 !== F[A]) ? F : D)[A]; | ||
for (A in t) { | ||
d = ((f = !n && F && void 0 !== F[A]) ? F : t)[A]; | ||
p = s && f ? _ctx(d, u) : i && "function" == typeof d ? _ctx(Function.call, d) : d; | ||
@@ -691,7 +575,7 @@ if (F) { | ||
} | ||
if (c[A] != d) { | ||
o(c, A, p); | ||
if (C[A] != d) { | ||
o(C, A, p); | ||
} | ||
if (i && C[A] != d) { | ||
C[A] = d; | ||
if (i && c[A] != d) { | ||
c[A] = d; | ||
} | ||
@@ -723,10 +607,10 @@ } | ||
return function(e, r) { | ||
var t = String(_defined(e)); | ||
var D = _toInteger(r); | ||
var n = t.length; | ||
var D = String(_defined(e)); | ||
var t = _toInteger(r); | ||
var n = D.length; | ||
var a, i; | ||
if (D < 0 || D >= n) { | ||
if (t < 0 || t >= n) { | ||
return u ? "" : void 0; | ||
} | ||
return (a = t.charCodeAt(D)) < 55296 || a > 56319 || D + 1 === n || (i = t.charCodeAt(D + 1)) < 56320 || i > 57343 ? u ? t.charAt(D) : a : u ? t.slice(D, D + 2) : i - 56320 + (a - 55296 << 10) + 65536; | ||
return (a = D.charCodeAt(t)) < 55296 || a > 56319 || t + 1 === n || (i = D.charCodeAt(t + 1)) < 56320 || i > 57343 ? u ? D.charAt(t) : a : u ? D.slice(t, t + 2) : i - 56320 + (a - 55296 << 10) + 65536; | ||
}; | ||
@@ -746,12 +630,12 @@ }; | ||
var h = String.fromCharCode; | ||
var g = String.fromCodePoint; | ||
f(f.S + f.F * (!!g && 1 != g.length), "String", { | ||
var y = String.fromCodePoint; | ||
f(f.S + f.F * (!!y && 1 != y.length), "String", { | ||
fromCodePoint: function fromCodePoint(u) { | ||
var e = arguments; | ||
var r = []; | ||
var t = arguments.length; | ||
var D = 0; | ||
var D = arguments.length; | ||
var t = 0; | ||
var n; | ||
while (t > D) { | ||
n = +e[D++]; | ||
while (D > t) { | ||
n = +e[t++]; | ||
if (_toAbsoluteIndex(n, 1114111) !== n) { | ||
@@ -765,3 +649,3 @@ throw RangeError(n + " is not a valid code point"); | ||
}); | ||
var y = { | ||
var g = { | ||
Space_Separator: /[\u1680\u2000-\u200A\u202F\u205F\u3000]/, | ||
@@ -773,9 +657,9 @@ ID_Start: /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\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\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\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-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\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]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/, | ||
isSpaceSeparator: function isSpaceSeparator(u) { | ||
return "string" == typeof u && y.Space_Separator.test(u); | ||
return "string" == typeof u && g.Space_Separator.test(u); | ||
}, | ||
isIdStartChar: function isIdStartChar(u) { | ||
return "string" == typeof u && (u >= "a" && u <= "z" || u >= "A" && u <= "Z" || "$" === u || "_" === u || y.ID_Start.test(u)); | ||
return "string" == typeof u && (u >= "a" && u <= "z" || u >= "A" && u <= "Z" || "$" === u || "_" === u || g.ID_Start.test(u)); | ||
}, | ||
isIdContinueChar: function isIdContinueChar(u) { | ||
return "string" == typeof u && (u >= "a" && u <= "z" || u >= "A" && u <= "Z" || u >= "0" && u <= "9" || "$" === u || "_" === u || "" === u || "" === u || y.ID_Continue.test(u)); | ||
return "string" == typeof u && (u >= "a" && u <= "z" || u >= "A" && u <= "Z" || u >= "0" && u <= "9" || "$" === u || "_" === u || "" === u || "" === u || g.ID_Continue.test(u)); | ||
}, | ||
@@ -810,3 +694,3 @@ isDigit: function isDigit(u) { | ||
P = lex(); | ||
R[T](); | ||
J[T](); | ||
} while ("eof" !== P.type); | ||
@@ -821,12 +705,12 @@ if ("function" == typeof e) { | ||
function internalize(u, e, r) { | ||
var t = u[e]; | ||
if (null != t && "object" == typeof t) { | ||
if (Array.isArray(t)) { | ||
for (var D = 0; D < t.length; D++) { | ||
var n = String(D); | ||
var a = internalize(t, n, r); | ||
var D = u[e]; | ||
if (null != D && "object" == typeof D) { | ||
if (Array.isArray(D)) { | ||
for (var t = 0; t < D.length; t++) { | ||
var n = String(t); | ||
var a = internalize(D, n, r); | ||
if (void 0 === a) { | ||
delete t[n]; | ||
delete D[n]; | ||
} else { | ||
Object.defineProperty(t, n, { | ||
Object.defineProperty(D, n, { | ||
value: a, | ||
@@ -840,8 +724,8 @@ writable: !0, | ||
} else { | ||
for (var i in t) { | ||
var o = internalize(t, i, r); | ||
for (var i in D) { | ||
var o = internalize(D, i, r); | ||
if (void 0 === o) { | ||
delete t[i]; | ||
delete D[i]; | ||
} else { | ||
Object.defineProperty(t, i, { | ||
Object.defineProperty(D, i, { | ||
value: o, | ||
@@ -856,16 +740,16 @@ writable: !0, | ||
} | ||
return r.call(u, e, t); | ||
return r.call(u, e, D); | ||
} | ||
var j; | ||
var L; | ||
var $; | ||
var V; | ||
var M; | ||
var V; | ||
var q; | ||
function lex() { | ||
j = "default"; | ||
L = ""; | ||
M = !1; | ||
$ = !1; | ||
V = 1; | ||
for (;;) { | ||
q = peek(); | ||
M = peek(); | ||
var u = z[j](); | ||
@@ -899,3 +783,3 @@ if (u) { | ||
default: function default$1() { | ||
switch (q) { | ||
switch (M) { | ||
case "\t": | ||
@@ -923,3 +807,3 @@ case "\v": | ||
} | ||
if (w.isSpaceSeparator(q)) { | ||
if (w.isSpaceSeparator(M)) { | ||
read(); | ||
@@ -931,3 +815,3 @@ return; | ||
comment: function comment() { | ||
switch (q) { | ||
switch (M) { | ||
case "*": | ||
@@ -946,3 +830,3 @@ read(); | ||
multiLineComment: function multiLineComment() { | ||
switch (q) { | ||
switch (M) { | ||
case "*": | ||
@@ -959,3 +843,3 @@ read(); | ||
multiLineCommentAsterisk: function multiLineCommentAsterisk() { | ||
switch (q) { | ||
switch (M) { | ||
case "*": | ||
@@ -977,3 +861,3 @@ read(); | ||
singleLineComment: function singleLineComment() { | ||
switch (q) { | ||
switch (M) { | ||
case "\n": | ||
@@ -994,3 +878,3 @@ case "\r": | ||
value: function value() { | ||
switch (q) { | ||
switch (M) { | ||
case "{": | ||
@@ -1058,3 +942,3 @@ case "[": | ||
case "'": | ||
M = '"' === read(); | ||
$ = '"' === read(); | ||
L = ""; | ||
@@ -1067,3 +951,3 @@ j = "string"; | ||
identifierNameStartEscape: function identifierNameStartEscape() { | ||
if ("u" !== q) { | ||
if ("u" !== M) { | ||
throw invalidChar(read()); | ||
@@ -1087,3 +971,3 @@ } | ||
identifierName: function identifierName() { | ||
switch (q) { | ||
switch (M) { | ||
case "$": | ||
@@ -1101,3 +985,3 @@ case "_": | ||
} | ||
if (w.isIdContinueChar(q)) { | ||
if (w.isIdContinueChar(M)) { | ||
L += read(); | ||
@@ -1109,3 +993,3 @@ return; | ||
identifierNameEscape: function identifierNameEscape() { | ||
if ("u" !== q) { | ||
if ("u" !== M) { | ||
throw invalidChar(read()); | ||
@@ -1131,3 +1015,3 @@ } | ||
sign: function sign$1() { | ||
switch (q) { | ||
switch (M) { | ||
case ".": | ||
@@ -1169,3 +1053,3 @@ L = read(); | ||
zero: function zero() { | ||
switch (q) { | ||
switch (M) { | ||
case ".": | ||
@@ -1191,3 +1075,3 @@ L += read(); | ||
decimalInteger: function decimalInteger() { | ||
switch (q) { | ||
switch (M) { | ||
case ".": | ||
@@ -1204,3 +1088,3 @@ L += read(); | ||
} | ||
if (w.isDigit(q)) { | ||
if (w.isDigit(M)) { | ||
L += read(); | ||
@@ -1212,3 +1096,3 @@ return; | ||
decimalPointLeading: function decimalPointLeading() { | ||
if (w.isDigit(q)) { | ||
if (w.isDigit(M)) { | ||
L += read(); | ||
@@ -1221,3 +1105,3 @@ j = "decimalFraction"; | ||
decimalPoint: function decimalPoint() { | ||
switch (q) { | ||
switch (M) { | ||
case "e": | ||
@@ -1229,3 +1113,3 @@ case "E": | ||
} | ||
if (w.isDigit(q)) { | ||
if (w.isDigit(M)) { | ||
L += read(); | ||
@@ -1238,3 +1122,3 @@ j = "decimalFraction"; | ||
decimalFraction: function decimalFraction() { | ||
switch (q) { | ||
switch (M) { | ||
case "e": | ||
@@ -1246,3 +1130,3 @@ case "E": | ||
} | ||
if (w.isDigit(q)) { | ||
if (w.isDigit(M)) { | ||
L += read(); | ||
@@ -1254,3 +1138,3 @@ return; | ||
decimalExponent: function decimalExponent() { | ||
switch (q) { | ||
switch (M) { | ||
case "+": | ||
@@ -1262,3 +1146,3 @@ case "-": | ||
} | ||
if (w.isDigit(q)) { | ||
if (w.isDigit(M)) { | ||
L += read(); | ||
@@ -1271,3 +1155,3 @@ j = "decimalExponentInteger"; | ||
decimalExponentSign: function decimalExponentSign() { | ||
if (w.isDigit(q)) { | ||
if (w.isDigit(M)) { | ||
L += read(); | ||
@@ -1280,3 +1164,3 @@ j = "decimalExponentInteger"; | ||
decimalExponentInteger: function decimalExponentInteger() { | ||
if (w.isDigit(q)) { | ||
if (w.isDigit(M)) { | ||
L += read(); | ||
@@ -1288,3 +1172,3 @@ return; | ||
hexadecimal: function hexadecimal() { | ||
if (w.isHexDigit(q)) { | ||
if (w.isHexDigit(M)) { | ||
L += read(); | ||
@@ -1297,3 +1181,3 @@ j = "hexadecimalInteger"; | ||
hexadecimalInteger: function hexadecimalInteger() { | ||
if (w.isHexDigit(q)) { | ||
if (w.isHexDigit(M)) { | ||
L += read(); | ||
@@ -1305,3 +1189,3 @@ return; | ||
string: function string() { | ||
switch (q) { | ||
switch (M) { | ||
case "\\": | ||
@@ -1313,3 +1197,3 @@ read(); | ||
case '"': | ||
if (M) { | ||
if ($) { | ||
read(); | ||
@@ -1322,3 +1206,3 @@ return newToken("string", L); | ||
case "'": | ||
if (!M) { | ||
if (!$) { | ||
read(); | ||
@@ -1336,3 +1220,3 @@ return newToken("string", L); | ||
case "\u2029": | ||
separatorChar(q); | ||
separatorChar(M); | ||
break; | ||
@@ -1346,3 +1230,3 @@ | ||
start: function start() { | ||
switch (q) { | ||
switch (M) { | ||
case "{": | ||
@@ -1355,3 +1239,3 @@ case "[": | ||
beforePropertyName: function beforePropertyName() { | ||
switch (q) { | ||
switch (M) { | ||
case "$": | ||
@@ -1373,7 +1257,7 @@ case "_": | ||
case "'": | ||
M = '"' === read(); | ||
$ = '"' === read(); | ||
j = "string"; | ||
return; | ||
} | ||
if (w.isIdStartChar(q)) { | ||
if (w.isIdStartChar(M)) { | ||
L += read(); | ||
@@ -1386,3 +1270,3 @@ j = "identifierName"; | ||
afterPropertyName: function afterPropertyName() { | ||
if (":" === q) { | ||
if (":" === M) { | ||
return newToken("punctuator", read()); | ||
@@ -1396,3 +1280,3 @@ } | ||
afterPropertyValue: function afterPropertyValue() { | ||
switch (q) { | ||
switch (M) { | ||
case ",": | ||
@@ -1405,3 +1289,3 @@ case "}": | ||
beforeArrayValue: function beforeArrayValue() { | ||
if ("]" === q) { | ||
if ("]" === M) { | ||
return newToken("punctuator", read()); | ||
@@ -1412,3 +1296,3 @@ } | ||
afterArrayValue: function afterArrayValue() { | ||
switch (q) { | ||
switch (M) { | ||
case ",": | ||
@@ -1434,4 +1318,4 @@ case "]": | ||
for (var e = 0, r = u; e < r.length; e += 1) { | ||
var t = r[e]; | ||
if (peek() !== t) { | ||
var D = r[e]; | ||
if (peek() !== D) { | ||
throw invalidChar(read()); | ||
@@ -1536,3 +1420,3 @@ } | ||
} | ||
var R = { | ||
var J = { | ||
start: function start() { | ||
@@ -1719,5 +1603,5 @@ if ("eof" === P.type) { | ||
} | ||
var J = function stringify(u, e, r) { | ||
var t = []; | ||
var D = ""; | ||
var q = function stringify(u, e, r) { | ||
var D = []; | ||
var t = ""; | ||
var n; | ||
@@ -1737,11 +1621,11 @@ var a; | ||
for (var s = 0, F = e; s < F.length; s += 1) { | ||
var c = F[s]; | ||
var C = void 0; | ||
if ("string" == typeof c) { | ||
C = c; | ||
} else if ("number" == typeof c || c instanceof String || c instanceof Number) { | ||
C = String(c); | ||
var C = F[s]; | ||
var c = void 0; | ||
if ("string" == typeof C) { | ||
c = C; | ||
} else if ("number" == typeof C || C instanceof String || C instanceof Number) { | ||
c = String(C); | ||
} | ||
if (void 0 !== C && n.indexOf(C) < 0) { | ||
n.push(C); | ||
if (void 0 !== c && n.indexOf(c) < 0) { | ||
n.push(c); | ||
} | ||
@@ -1825,5 +1709,5 @@ } | ||
}; | ||
var t = ""; | ||
for (var D = 0; D < u.length; D++) { | ||
var n = u[D]; | ||
var D = ""; | ||
for (var t = 0; t < u.length; t++) { | ||
var n = u[t]; | ||
switch (n) { | ||
@@ -1833,8 +1717,8 @@ case "'": | ||
e[n]++; | ||
t += n; | ||
D += n; | ||
continue; | ||
case "\0": | ||
if (w.isDigit(u[D + 1])) { | ||
t += "\\x00"; | ||
if (w.isDigit(u[t + 1])) { | ||
D += "\\x00"; | ||
continue; | ||
@@ -1844,3 +1728,3 @@ } | ||
if (r[n]) { | ||
t += r[n]; | ||
D += r[n]; | ||
continue; | ||
@@ -1850,6 +1734,6 @@ } | ||
var a = n.charCodeAt(0).toString(16); | ||
t += "\\x" + ("00" + a).substring(a.length); | ||
D += "\\x" + ("00" + a).substring(a.length); | ||
continue; | ||
} | ||
t += n; | ||
D += n; | ||
} | ||
@@ -1859,11 +1743,11 @@ var i = o || Object.keys(e).reduce((function(u, r) { | ||
})); | ||
return i + (t = t.replace(new RegExp(i, "g"), r[i])) + i; | ||
return i + (D = D.replace(new RegExp(i, "g"), r[i])) + i; | ||
} | ||
function serializeObject(u) { | ||
if (t.indexOf(u) >= 0) { | ||
if (D.indexOf(u) >= 0) { | ||
throw TypeError("Converting circular structure to JSON5"); | ||
} | ||
t.push(u); | ||
var e = D; | ||
D += i; | ||
D.push(u); | ||
var e = t; | ||
t += i; | ||
var r = []; | ||
@@ -1874,24 +1758,24 @@ for (var a = 0, o = n || Object.keys(u); a < o.length; a += 1) { | ||
if (void 0 !== F) { | ||
var c = serializeKey(s) + ":"; | ||
var C = serializeKey(s) + ":"; | ||
if ("" !== i) { | ||
c += " "; | ||
C += " "; | ||
} | ||
r.push(c += F); | ||
r.push(C += F); | ||
} | ||
} | ||
var C; | ||
var c; | ||
if (0 === r.length) { | ||
C = "{}"; | ||
c = "{}"; | ||
} else { | ||
var A; | ||
if ("" === i) { | ||
C = "{" + (A = r.join(",")) + "}"; | ||
c = "{" + (A = r.join(",")) + "}"; | ||
} else { | ||
A = r.join(",\n" + D); | ||
C = "{\n" + D + A + ",\n" + e + "}"; | ||
A = r.join(",\n" + t); | ||
c = "{\n" + t + A + ",\n" + e + "}"; | ||
} | ||
} | ||
t.pop(); | ||
D = e; | ||
return C; | ||
D.pop(); | ||
t = e; | ||
return c; | ||
} | ||
@@ -1914,8 +1798,8 @@ function serializeKey(u) { | ||
function serializeArray(u) { | ||
if (t.indexOf(u) >= 0) { | ||
if (D.indexOf(u) >= 0) { | ||
throw TypeError("Converting circular structure to JSON5"); | ||
} | ||
t.push(u); | ||
var e = D; | ||
D += i; | ||
D.push(u); | ||
var e = t; | ||
t += i; | ||
var r = []; | ||
@@ -1932,29 +1816,29 @@ for (var n = 0; n < u.length; n++) { | ||
} else { | ||
var s = r.join(",\n" + D); | ||
o = "[\n" + D + s + ",\n" + e + "]"; | ||
var s = r.join(",\n" + t); | ||
o = "[\n" + t + s + ",\n" + e + "]"; | ||
} | ||
t.pop(); | ||
D = e; | ||
D.pop(); | ||
t = e; | ||
return o; | ||
} | ||
}; | ||
var U = { | ||
var R = { | ||
parse: _, | ||
stringify: J | ||
stringify: q | ||
}; | ||
var $ = U; | ||
return $; | ||
var U = R; | ||
return U; | ||
}(); | ||
var h = getDefaultExportFromCjs(m.exports); | ||
var B = getDefaultExportFromCjs(p.exports); | ||
var resolveTypeScriptRootDir = (u, e) => { | ||
var r = u(e); | ||
var t = h.parse(r); | ||
var D = u(e); | ||
var t = B.parse(D); | ||
if (t.compilerOptions && t.compilerOptions.plugins && t.compilerOptions.plugins.find((u => "@0no-co/graphqlsp" === u.name || "gql.tada/lsp" === u.name))) { | ||
return D.dirname(e); | ||
return r.dirname(e); | ||
} else if (Array.isArray(t.extends)) { | ||
return t.extends.find((r => { | ||
var t = require.resolve(r, { | ||
paths: [ D.dirname(e) ] | ||
return t.extends.find((D => { | ||
var t = require.resolve(D, { | ||
paths: [ r.dirname(e) ] | ||
}); | ||
@@ -1965,3 +1849,3 @@ return resolveTypeScriptRootDir(u, t); | ||
var n = require.resolve(t.extends, { | ||
paths: [ D.dirname(e) ] | ||
paths: [ r.dirname(e) ] | ||
}); | ||
@@ -1972,9 +1856,130 @@ return resolveTypeScriptRootDir(u, n); | ||
exports.createProgram = createProgram; | ||
exports.createProgram = (e, r) => u.createProgram(e, a, r); | ||
exports.createVirtualHost = createVirtualHost; | ||
exports.createVirtualHost = function createVirtualHost() { | ||
var e = u.createModuleResolutionCache(i, normalize, a); | ||
var r = new Directory; | ||
r.files[s] = new File(s, ""); | ||
return { | ||
getCanonicalFileName: normalize, | ||
getDefaultLibFileName: () => i + s, | ||
getCurrentDirectory: () => i, | ||
getNewLine: () => "\n", | ||
getModuleResolutionCache: () => e, | ||
useCaseSensitiveFileNames: () => !0, | ||
fileExists(u) { | ||
var e = split(normalize(u)); | ||
var D = r; | ||
for (var t = 0; t < e.length - 1; t++) { | ||
if (!(D = D.children[e[t]])) { | ||
return !1; | ||
} | ||
} | ||
return !!D.files[e[e.length - 1]]; | ||
}, | ||
directoryExists(u) { | ||
var e = split(normalize(u)); | ||
if (!e.length) { | ||
return !0; | ||
} | ||
var D = r; | ||
for (var t = 0; t < e.length - 1; t++) { | ||
if (!(D = D.children[e[t]])) { | ||
return !1; | ||
} | ||
} | ||
return !!D.children[e[e.length - 1]]; | ||
}, | ||
writeFile(u, e) { | ||
var D = normalize(u); | ||
var t = split(D); | ||
var n = r; | ||
for (var a = 0; a < t.length - 1; a++) { | ||
n = n.getOrCreateDirectory(t[a]); | ||
} | ||
n.files[t[t.length - 1]] = new File(D, e); | ||
}, | ||
getDirectories(u) { | ||
var e = split(normalize(u)); | ||
var D = r; | ||
for (var t = 0; t < e.length; t++) { | ||
if (!(D = D.children[e[t]])) { | ||
return []; | ||
} | ||
} | ||
return Object.keys(D.children); | ||
}, | ||
readFile(u) { | ||
var e = split(normalize(u)); | ||
var D = r; | ||
for (var t = 0; t < e.length - 1; t++) { | ||
if (!(D = D.children[e[t]])) { | ||
return; | ||
} | ||
} | ||
var n = D.files[e[e.length - 1]]; | ||
return n && n.toString(); | ||
}, | ||
getSourceFile(u, e) { | ||
var D = split(normalize(u)); | ||
var t = r; | ||
for (var n = 0; n < D.length - 1; n++) { | ||
if (!(t = t.children[D[n]])) { | ||
return; | ||
} | ||
} | ||
var a = t.files[D[D.length - 1]]; | ||
return a && a.toSourceFile(e); | ||
}, | ||
resolveModuleNames(r, D) { | ||
var t = []; | ||
for (var n of r) { | ||
var i = u.resolveModuleName(n, D, a, this, e); | ||
t.push(i.resolvedModule); | ||
} | ||
return t; | ||
} | ||
}; | ||
}; | ||
exports.importLib = importLib; | ||
exports.importLib = async function importLib(u) { | ||
var r = "typescript/package.json"; | ||
var t = o(r, { | ||
paths: [ "node_modules", ...o.paths(r) || [] ] | ||
}); | ||
if (!t) { | ||
throw new Error("Failed to resolve typescript"); | ||
} | ||
var n = e.join(e.dirname(t), "lib"); | ||
var i = (await Promise.all([ "lib.es5.d.ts", "lib.es2015.symbol.d.ts", "lib.es2015.collection.d.ts", "lib.es2015.iterable.d.ts" ].map((u => D.readFile(e.resolve(n, u), { | ||
encoding: "utf8" | ||
}))))).join("\n"); | ||
u.writeFile(u.getDefaultLibFileName(a), i, !1); | ||
}; | ||
exports.importModule = importModule; | ||
exports.importModule = async function importModule(u, r) { | ||
var t = `${r}/package.json`; | ||
var n = o(t, { | ||
paths: [ "node_modules", ...o.paths(t) || [] ] | ||
}); | ||
if (!n) { | ||
throw new Error(`Failed to resolve "${r}"`); | ||
} | ||
var a = e.dirname(n); | ||
var i = `/node_modules/${r}/`; | ||
await async function walk(r) { | ||
for (var t of await D.readdir(r)) { | ||
var n = e.join(r, t); | ||
if ((await D.stat(n)).isDirectory()) { | ||
await walk(n); | ||
} else { | ||
var o = e.join(e.relative(a, r), t); | ||
var s = await D.readFile(n, { | ||
encoding: "utf8" | ||
}); | ||
u.writeFile(i + o.split(e.sep).join("/"), s, !1); | ||
} | ||
} | ||
}(a); | ||
}; | ||
@@ -1986,7 +1991,7 @@ exports.minifyIntrospection = function minifyIntrospection(u) { | ||
} | ||
E = !1; | ||
c = !!e.includeScalars; | ||
A = !1; | ||
F = !!e.includeScalars; | ||
C = !!e.includeEnums; | ||
A = !!e.includeInputs; | ||
var {__schema: {queryType: r, mutationType: t, subscriptionType: D, types: n, directives: a}} = u; | ||
c = !!e.includeInputs; | ||
var {__schema: {queryType: r, mutationType: D, subscriptionType: t, types: n, directives: a}} = u; | ||
var i = n.filter((u => { | ||
@@ -2005,9 +2010,9 @@ switch (u.name) { | ||
default: | ||
return c && "SCALAR" === u.kind || C && "ENUM" === u.kind || A && "INPUT_OBJECT" === u.kind || "OBJECT" === u.kind || "INTERFACE" === u.kind || "UNION" === u.kind; | ||
return F && "SCALAR" === u.kind || C && "ENUM" === u.kind || c && "INPUT_OBJECT" === u.kind || "OBJECT" === u.kind || "INTERFACE" === u.kind || "UNION" === u.kind; | ||
} | ||
})).map(minifyIntrospectionType); | ||
if (E) { | ||
if (A) { | ||
i.push({ | ||
kind: "SCALAR", | ||
name: l.name | ||
name: E.name | ||
}); | ||
@@ -2031,4 +2036,4 @@ } | ||
queryType: r, | ||
mutationType: t, | ||
subscriptionType: D, | ||
mutationType: D, | ||
subscriptionType: t, | ||
types: i, | ||
@@ -2046,9 +2051,9 @@ directives: o | ||
exports.outputIntrospectionFile = async function outputIntrospectionFile(u, e) { | ||
exports.outputIntrospectionFile = function outputIntrospectionFile(u, e) { | ||
if (/\.d\.ts$/.test(e.fileType)) { | ||
var r = "string" != typeof u && e.shouldPreprocess ? await preprocessIntrospection(u) : stringifyJson(u); | ||
return [ f, d, `export type introspection = ${r};\n`, "import * as gqlTada from 'gql.tada';\n", "declare module 'gql.tada' {", " interface setupSchema {", " introspection: introspection", " }", "}" ].join("\n"); | ||
var r = "string" != typeof u && e.shouldPreprocess ? preprocessIntrospection(u) : stringifyJson(u); | ||
return [ l, f, `export type introspection = ${r};\n`, "import * as gqlTada from 'gql.tada';\n", "declare module 'gql.tada' {", " interface setupSchema {", " introspection: introspection", " }", "}" ].join("\n"); | ||
} else if (/\.ts$/.test(e.fileType)) { | ||
var t = stringifyJson(u); | ||
return [ f, p, `const introspection = ${t} as const;\n`, "export { introspection };" ].join("\n"); | ||
var D = stringifyJson(u); | ||
return [ l, d, `const introspection = ${D} as const;\n`, "export { introspection };" ].join("\n"); | ||
} | ||
@@ -2060,5 +2065,20 @@ throw new TadaError(`No available introspection format for "${e.fileType}" (expected ".ts" or ".d.ts")`); | ||
exports.resolveModuleFile = resolveModuleFile; | ||
exports.resolveModuleFile = async function resolveModuleFile(u) { | ||
var r = u.indexOf("/"); | ||
var t = u.slice(0, r); | ||
var n = u.slice(r); | ||
var a = `${t}/package.json`; | ||
var i = o(a, { | ||
paths: [ "node_modules", ...o.paths(a) || [] ] | ||
}); | ||
if (!i) { | ||
throw new Error(`Failed to resolve "${t}"`); | ||
} | ||
var s = e.join(e.dirname(i), n); | ||
return D.readFile(s, { | ||
encoding: "utf8" | ||
}); | ||
}; | ||
exports.resolveTypeScriptRootDir = resolveTypeScriptRootDir; | ||
//# sourceMappingURL=gql-tada-internal.js.map |
{ | ||
"name": "@gql.tada/internal", | ||
"version": "0.1.0-canary-85226c14a4dd731386a4532f69ce1b175d97c811", | ||
"version": "0.1.0-canary-b3c52a2e86ec86f44ee5ad3818b929f86882a0b4", | ||
"public": true, | ||
@@ -54,2 +54,3 @@ "description": "Internal logic for gql.tada’s CLI tool and GraphQLSP.", | ||
"scripts": { | ||
"test": "vitest test", | ||
"build": "rollup -c ../../scripts/rollup.config.mjs", | ||
@@ -56,0 +57,0 @@ "clean": "rimraf dist node_modules/.cache" |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
370050
3957