@graphql-hive/laboratory
Version:
[Hive](https://the-guild.dev/graphql/hive) is a fully open-source schema registry, analytics, metrics and gateway for [GraphQL federation](https://the-guild.dev/graphql/hive/federation) and other GraphQL APIs.
150 lines (149 loc) • 3.78 kB
JavaScript
/*!-----------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Version: 0.52.2(404545bded1df6ffa41ea0af4e8ddb219018c6c1)
* Released under the MIT license
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
*-----------------------------------------------------------------------------*/
var conf = {
comments: { lineComment: "//" },
brackets: [
["{", "}"],
["[", "]"],
["(", ")"]
],
autoClosingPairs: [
{
open: "{",
close: "}"
},
{
open: "[",
close: "]"
},
{
open: "(",
close: ")"
},
{
open: "\"",
close: "\"",
notIn: ["string", "comment"]
}
],
surroundingPairs: [
{
open: "{",
close: "}"
},
{
open: "[",
close: "]"
},
{
open: "(",
close: ")"
},
{
open: "\"",
close: "\""
}
]
}, language = {
keywords: /* @__PURE__ */ "namespace.open.import.export.as.operation.function.body.adjoint.newtype.struct.controlled.if.elif.else.repeat.until.fixup.for.in.while.return.fail.within.apply.Adjoint.Controlled.Adj.Ctl.is.self.auto.distribute.invert.intrinsic.let.set.w/.new.not.and.or.use.borrow.using.borrowing.mutable.internal".split("."),
typeKeywords: [
"Unit",
"Int",
"BigInt",
"Double",
"Bool",
"String",
"Qubit",
"Result",
"Pauli",
"Range"
],
invalidKeywords: /* @__PURE__ */ "abstract.base.bool.break.byte.case.catch.char.checked.class.const.continue.decimal.default.delegate.do.double.enum.event.explicit.extern.finally.fixed.float.foreach.goto.implicit.int.interface.lock.long.null.object.operator.out.override.params.private.protected.public.readonly.ref.sbyte.sealed.short.sizeof.stackalloc.static.string.switch.this.throw.try.typeof.unit.ulong.unchecked.unsafe.ushort.virtual.void.volatile".split("."),
constants: [
"true",
"false",
"PauliI",
"PauliX",
"PauliY",
"PauliZ",
"One",
"Zero"
],
builtin: /* @__PURE__ */ "X.Y.Z.H.HY.S.T.SWAP.CNOT.CCNOT.MultiX.R.RFrac.Rx.Ry.Rz.R1.R1Frac.Exp.ExpFrac.Measure.M.MultiM.Message.Length.Assert.AssertProb.AssertEqual".split("."),
operators: /* @__PURE__ */ "and=,<-,->,*,*=,@,!,^,^=,:,::,.,..,==,...,=,=>,>,>=,<,<=,-,-=,!=,or=,%,%=,|,+,+=,?,/,/=,&&&,&&&=,^^^,^^^=,>>>,>>>=,<<<,<<<=,|||,|||=,~~~,_,w/,w/=".split(","),
namespaceFollows: ["namespace", "open"],
importsFollows: ["import"],
symbols: /[=><!~?:&|+\-*\/\^%@._]+/,
escapes: /\\[\s\S]/,
tokenizer: {
root: [
[/[a-zA-Z_$][\w$]*/, { cases: {
"@namespaceFollows": {
token: "keyword.$0",
next: "@namespace"
},
"@importsFollows": {
token: "keyword.$0",
next: "@imports"
},
"@typeKeywords": "type",
"@keywords": "keyword",
"@constants": "constant",
"@builtin": "keyword",
"@invalidKeywords": "invalid",
"@default": "identifier"
} }],
{ include: "@whitespace" },
[/[{}()\[\]]/, "@brackets"],
[/@symbols/, { cases: {
"@operators": "operator",
"@default": ""
} }],
[/\d*\.\d+([eE][\-+]?\d+)?/, "number.float"],
[/\d+/, "number"],
[/[;,.]/, "delimiter"],
[/"/, {
token: "string.quote",
bracket: "@open",
next: "@string"
}]
],
string: [
[/[^\\"]+/, "string"],
[/@escapes/, "string.escape"],
[/"/, {
token: "string.quote",
bracket: "@close",
next: "@pop"
}]
],
namespace: [
{ include: "@whitespace" },
[/[A-Za-z]\w*/, "namespace"],
[/[\.]/, "delimiter"],
[
"",
"",
"@pop"
]
],
imports: [
{ include: "@whitespace" },
[/[A-Za-z]\w*(?=\.)/, "namespace"],
[/[A-Za-z]\w*/, "identifier"],
[/\*/, "wildcard"],
[/[\.,]/, "delimiter"],
[
"",
"",
"@pop"
]
],
whitespace: [[/[ \t\r\n]+/, "white"], [/(\/\/).*/, "comment"]]
}
};
export { conf, language };