UNPKG

n8n-editor-ui

Version:

Workflow Editor UI for n8n

1,226 lines (1,218 loc) 43.7 kB
; (function () { System.register([], function (_export, _context) { "use strict"; var IDENT_RE$1, KEYWORDS$1, LITERALS$1, TYPES$1, ERROR_TYPES$1, BUILT_IN_GLOBALS$1, BUILT_IN_VARIABLES$1, BUILT_INS$1, IDENT_RE, KEYWORDS, LITERALS, TYPES, ERROR_TYPES, BUILT_IN_GLOBALS, BUILT_IN_VARIABLES, BUILT_INS; //#region ../../../node_modules/.pnpm/highlight.js@11.8.0/node_modules/highlight.js/es/languages/bash.js /** @type LanguageFn */ function bash(hljs) { const regex = hljs.regex; const VAR = {}; const BRACED_VAR = { begin: /\$\{/, end: /\}/, contains: ["self", { begin: /:-/, contains: [VAR] }] }; Object.assign(VAR, { className: "variable", variants: [{ begin: regex.concat(/\$[\w\d#@][\w\d_]*/, `(?![\\w\\d])(?![$])`) }, BRACED_VAR] }); const SUBST = { className: "subst", begin: /\$\(/, end: /\)/, contains: [hljs.BACKSLASH_ESCAPE] }; const HERE_DOC = { begin: /<<-?\s*(?=\w+)/, starts: { contains: [hljs.END_SAME_AS_BEGIN({ begin: /(\w+)/, end: /(\w+)/, className: "string" })] } }; const QUOTE_STRING = { className: "string", begin: /"/, end: /"/, contains: [hljs.BACKSLASH_ESCAPE, VAR, SUBST] }; SUBST.contains.push(QUOTE_STRING); const ESCAPED_QUOTE = { className: "", begin: /\\"/ }; const APOS_STRING = { className: "string", begin: /'/, end: /'/ }; const ARITHMETIC = { begin: /\$?\(\(/, end: /\)\)/, contains: [{ begin: /\d+#[0-9a-f]+/, className: "number" }, hljs.NUMBER_MODE, VAR] }; const KNOWN_SHEBANG = hljs.SHEBANG({ binary: `(${["fish", "bash", "zsh", "sh", "csh", "ksh", "tcsh", "dash", "scsh"].join("|")})`, relevance: 10 }); const FUNCTION = { className: "function", begin: /\w[\w\d_]*\s*\(\s*\)\s*\{/, returnBegin: true, contains: [hljs.inherit(hljs.TITLE_MODE, { begin: /\w[\w\d_]*/ })], relevance: 0 }; const KEYWORDS$2 = ["if", "then", "else", "elif", "fi", "for", "while", "until", "in", "do", "done", "case", "esac", "function", "select"]; const LITERALS$2 = ["true", "false"]; const PATH_MODE = { match: /(\/[a-z._-]+)+/ }; const SHELL_BUILT_INS = ["break", "cd", "continue", "eval", "exec", "exit", "export", "getopts", "hash", "pwd", "readonly", "return", "shift", "test", "times", "trap", "umask", "unset"]; const BASH_BUILT_INS = ["alias", "bind", "builtin", "caller", "command", "declare", "echo", "enable", "help", "let", "local", "logout", "mapfile", "printf", "read", "readarray", "source", "type", "typeset", "ulimit", "unalias"]; const ZSH_BUILT_INS = ["autoload", "bg", "bindkey", "bye", "cap", "chdir", "clone", "comparguments", "compcall", "compctl", "compdescribe", "compfiles", "compgroups", "compquote", "comptags", "comptry", "compvalues", "dirs", "disable", "disown", "echotc", "echoti", "emulate", "fc", "fg", "float", "functions", "getcap", "getln", "history", "integer", "jobs", "kill", "limit", "log", "noglob", "popd", "print", "pushd", "pushln", "rehash", "sched", "setcap", "setopt", "stat", "suspend", "ttyctl", "unfunction", "unhash", "unlimit", "unsetopt", "vared", "wait", "whence", "where", "which", "zcompile", "zformat", "zftp", "zle", "zmodload", "zparseopts", "zprof", "zpty", "zregexparse", "zsocket", "zstyle", "ztcp"]; const GNU_CORE_UTILS = ["chcon", "chgrp", "chown", "chmod", "cp", "dd", "df", "dir", "dircolors", "ln", "ls", "mkdir", "mkfifo", "mknod", "mktemp", "mv", "realpath", "rm", "rmdir", "shred", "sync", "touch", "truncate", "vdir", "b2sum", "base32", "base64", "cat", "cksum", "comm", "csplit", "cut", "expand", "fmt", "fold", "head", "join", "md5sum", "nl", "numfmt", "od", "paste", "ptx", "pr", "sha1sum", "sha224sum", "sha256sum", "sha384sum", "sha512sum", "shuf", "sort", "split", "sum", "tac", "tail", "tr", "tsort", "unexpand", "uniq", "wc", "arch", "basename", "chroot", "date", "dirname", "du", "echo", "env", "expr", "factor", "groups", "hostid", "id", "link", "logname", "nice", "nohup", "nproc", "pathchk", "pinky", "printenv", "printf", "pwd", "readlink", "runcon", "seq", "sleep", "stat", "stdbuf", "stty", "tee", "test", "timeout", "tty", "uname", "unlink", "uptime", "users", "who", "whoami", "yes"]; return { name: "Bash", aliases: ["sh"], keywords: { $pattern: /\b[a-z][a-z0-9._-]+\b/, keyword: KEYWORDS$2, literal: LITERALS$2, built_in: [...SHELL_BUILT_INS, ...BASH_BUILT_INS, "set", "shopt", ...ZSH_BUILT_INS, ...GNU_CORE_UTILS] }, contains: [KNOWN_SHEBANG, hljs.SHEBANG(), FUNCTION, ARITHMETIC, hljs.HASH_COMMENT_MODE, HERE_DOC, PATH_MODE, QUOTE_STRING, ESCAPED_QUOTE, APOS_STRING, VAR] }; } //#endregion //#region ../../../node_modules/.pnpm/highlight.js@11.8.0/node_modules/highlight.js/es/languages/javascript.js /** @type LanguageFn */ function javascript$1(hljs) { const regex = hljs.regex; /** * Takes a string like "<Booger" and checks to see * if we can find a matching "</Booger" later in the * content. * @param {RegExpMatchArray} match * @param {{after:number}} param1 */ const hasClosingTag = (match, { after }) => { const tag = "</" + match[0].slice(1); return match.input.indexOf(tag, after) !== -1; }; const IDENT_RE$1$1 = IDENT_RE$1; const FRAGMENT = { begin: "<>", end: "</>" }; const XML_SELF_CLOSING = /<[A-Za-z0-9\\._:-]+\s*\/>/; const XML_TAG = { begin: /<[A-Za-z0-9\\._:-]+/, end: /\/[A-Za-z0-9\\._:-]+>|\/>/, isTrulyOpeningTag: (match, response) => { const afterMatchIndex = match[0].length + match.index; const nextChar = match.input[afterMatchIndex]; if (nextChar === "<" || nextChar === ",") { response.ignoreMatch(); return; } if (nextChar === ">") { if (!hasClosingTag(match, { after: afterMatchIndex })) response.ignoreMatch(); } let m; const afterMatch = match.input.substring(afterMatchIndex); if (m = afterMatch.match(/^\s*=/)) { response.ignoreMatch(); return; } if (m = afterMatch.match(/^\s+extends\s+/)) { if (m.index === 0) { response.ignoreMatch(); return; } } } }; const KEYWORDS$1$1 = { $pattern: IDENT_RE$1, keyword: KEYWORDS$1, literal: LITERALS$1, built_in: BUILT_INS$1, "variable.language": BUILT_IN_VARIABLES$1 }; const decimalDigits = "[0-9](_?[0-9])*"; const frac = `\\.(${decimalDigits})`; const decimalInteger = `0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`; const NUMBER = { className: "number", variants: [{ begin: `(\\b(${decimalInteger})((${frac})|\\.)?|(${frac}))[eE][+-]?(${decimalDigits})\\b` }, { begin: `\\b(${decimalInteger})\\b((${frac})\\b|\\.)?|(${frac})\\b` }, { begin: `\\b(0|[1-9](_?[0-9])*)n\\b` }, { begin: "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b" }, { begin: "\\b0[bB][0-1](_?[0-1])*n?\\b" }, { begin: "\\b0[oO][0-7](_?[0-7])*n?\\b" }, { begin: "\\b0[0-7]+n?\\b" }], relevance: 0 }; const SUBST = { className: "subst", begin: "\\$\\{", end: "\\}", keywords: KEYWORDS$1$1, contains: [] }; const HTML_TEMPLATE = { begin: "html`", end: "", starts: { end: "`", returnEnd: false, contains: [hljs.BACKSLASH_ESCAPE, SUBST], subLanguage: "xml" } }; const CSS_TEMPLATE = { begin: "css`", end: "", starts: { end: "`", returnEnd: false, contains: [hljs.BACKSLASH_ESCAPE, SUBST], subLanguage: "css" } }; const GRAPHQL_TEMPLATE = { begin: "gql`", end: "", starts: { end: "`", returnEnd: false, contains: [hljs.BACKSLASH_ESCAPE, SUBST], subLanguage: "graphql" } }; const TEMPLATE_STRING = { className: "string", begin: "`", end: "`", contains: [hljs.BACKSLASH_ESCAPE, SUBST] }; const COMMENT = { className: "comment", variants: [hljs.COMMENT(/\/\*\*(?!\/)/, "\\*/", { relevance: 0, contains: [{ begin: "(?=@[A-Za-z]+)", relevance: 0, contains: [{ className: "doctag", begin: "@[A-Za-z]+" }, { className: "type", begin: "\\{", end: "\\}", excludeEnd: true, excludeBegin: true, relevance: 0 }, { className: "variable", begin: IDENT_RE$1$1 + "(?=\\s*(-)|$)", endsParent: true, relevance: 0 }, { begin: /(?=[^\n])\s/, relevance: 0 }] }] }), hljs.C_BLOCK_COMMENT_MODE, hljs.C_LINE_COMMENT_MODE] }; const SUBST_INTERNALS = [hljs.APOS_STRING_MODE, hljs.QUOTE_STRING_MODE, HTML_TEMPLATE, CSS_TEMPLATE, GRAPHQL_TEMPLATE, TEMPLATE_STRING, { match: /\$\d+/ }, NUMBER]; SUBST.contains = SUBST_INTERNALS.concat({ begin: /\{/, end: /\}/, keywords: KEYWORDS$1$1, contains: ["self"].concat(SUBST_INTERNALS) }); const SUBST_AND_COMMENTS = [].concat(COMMENT, SUBST.contains); const PARAMS_CONTAINS = SUBST_AND_COMMENTS.concat([{ begin: /\(/, end: /\)/, keywords: KEYWORDS$1$1, contains: ["self"].concat(SUBST_AND_COMMENTS) }]); const PARAMS = { className: "params", begin: /\(/, end: /\)/, excludeBegin: true, excludeEnd: true, keywords: KEYWORDS$1$1, contains: PARAMS_CONTAINS }; const CLASS_OR_EXTENDS = { variants: [{ match: [/class/, /\s+/, IDENT_RE$1$1, /\s+/, /extends/, /\s+/, regex.concat(IDENT_RE$1$1, "(", regex.concat(/\./, IDENT_RE$1$1), ")*")], scope: { 1: "keyword", 3: "title.class", 5: "keyword", 7: "title.class.inherited" } }, { match: [/class/, /\s+/, IDENT_RE$1$1], scope: { 1: "keyword", 3: "title.class" } }] }; const CLASS_REFERENCE = { relevance: 0, match: regex.either(/\bJSON/, /\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/, /\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/, /\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/), className: "title.class", keywords: { _: [...TYPES$1, ...ERROR_TYPES$1] } }; const USE_STRICT = { label: "use_strict", className: "meta", relevance: 10, begin: /^\s*['"]use (strict|asm)['"]/ }; const FUNCTION_DEFINITION = { variants: [{ match: [/function/, /\s+/, IDENT_RE$1$1, /(?=\s*\()/] }, { match: [/function/, /\s*(?=\()/] }], className: { 1: "keyword", 3: "title.function" }, label: "func.def", contains: [PARAMS], illegal: /%/ }; const UPPER_CASE_CONSTANT = { relevance: 0, match: /\b[A-Z][A-Z_0-9]+\b/, className: "variable.constant" }; function noneOf(list) { return regex.concat("(?!", list.join("|"), ")"); } const FUNCTION_CALL = { match: regex.concat(/\b/, noneOf([...BUILT_IN_GLOBALS$1, "super", "import"]), IDENT_RE$1$1, regex.lookahead(/\(/)), className: "title.function", relevance: 0 }; const PROPERTY_ACCESS = { begin: regex.concat(/\./, regex.lookahead(regex.concat(IDENT_RE$1$1, /(?![0-9A-Za-z$_(])/))), end: IDENT_RE$1$1, excludeBegin: true, keywords: "prototype", className: "property", relevance: 0 }; const GETTER_OR_SETTER = { match: [/get|set/, /\s+/, IDENT_RE$1$1, /(?=\()/], className: { 1: "keyword", 3: "title.function" }, contains: [{ begin: /\(\)/ }, PARAMS] }; const FUNC_LEAD_IN_RE = "(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|" + hljs.UNDERSCORE_IDENT_RE + ")\\s*=>"; const FUNCTION_VARIABLE = { match: [/const|var|let/, /\s+/, IDENT_RE$1$1, /\s*/, /=\s*/, /(async\s*)?/, regex.lookahead(FUNC_LEAD_IN_RE)], keywords: "async", className: { 1: "keyword", 3: "title.function" }, contains: [PARAMS] }; return { name: "JavaScript", aliases: ["js", "jsx", "mjs", "cjs"], keywords: KEYWORDS$1$1, exports: { PARAMS_CONTAINS, CLASS_REFERENCE }, illegal: /#(?![$_A-z])/, contains: [hljs.SHEBANG({ label: "shebang", binary: "node", relevance: 5 }), USE_STRICT, hljs.APOS_STRING_MODE, hljs.QUOTE_STRING_MODE, HTML_TEMPLATE, CSS_TEMPLATE, GRAPHQL_TEMPLATE, TEMPLATE_STRING, COMMENT, { match: /\$\d+/ }, NUMBER, CLASS_REFERENCE, { className: "attr", begin: IDENT_RE$1$1 + regex.lookahead(":"), relevance: 0 }, FUNCTION_VARIABLE, { begin: "(" + hljs.RE_STARTERS_RE + "|\\b(case|return|throw)\\b)\\s*", keywords: "return throw case", relevance: 0, contains: [COMMENT, hljs.REGEXP_MODE, { className: "function", begin: FUNC_LEAD_IN_RE, returnBegin: true, end: "\\s*=>", contains: [{ className: "params", variants: [{ begin: hljs.UNDERSCORE_IDENT_RE, relevance: 0 }, { className: null, begin: /\(\s*\)/, skip: true }, { begin: /\(/, end: /\)/, excludeBegin: true, excludeEnd: true, keywords: KEYWORDS$1$1, contains: PARAMS_CONTAINS }] }] }, { begin: /,/, relevance: 0 }, { match: /\s+/, relevance: 0 }, { variants: [{ begin: FRAGMENT.begin, end: FRAGMENT.end }, { match: XML_SELF_CLOSING }, { begin: XML_TAG.begin, "on:begin": XML_TAG.isTrulyOpeningTag, end: XML_TAG.end }], subLanguage: "xml", contains: [{ begin: XML_TAG.begin, end: XML_TAG.end, skip: true, contains: ["self"] }] }] }, FUNCTION_DEFINITION, { beginKeywords: "while if switch catch for" }, { begin: "\\b(?!function)" + hljs.UNDERSCORE_IDENT_RE + "\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", returnBegin: true, label: "func.def", contains: [PARAMS, hljs.inherit(hljs.TITLE_MODE, { begin: IDENT_RE$1$1, className: "title.function" })] }, { match: /\.\.\./, relevance: 0 }, PROPERTY_ACCESS, { match: "\\$" + IDENT_RE$1$1, relevance: 0 }, { match: [/\bconstructor(?=\s*\()/], className: { 1: "title.function" }, contains: [PARAMS] }, FUNCTION_CALL, UPPER_CASE_CONSTANT, CLASS_OR_EXTENDS, GETTER_OR_SETTER, { match: /\$[(.]/ }] }; } //#endregion //#region ../../../node_modules/.pnpm/highlight.js@11.8.0/node_modules/highlight.js/es/languages/python.js function python(hljs) { const regex = hljs.regex; const IDENT_RE$2 = /[\p{XID_Start}_]\p{XID_Continue}*/u; const RESERVED_WORDS = ["and", "as", "assert", "async", "await", "break", "case", "class", "continue", "def", "del", "elif", "else", "except", "finally", "for", "from", "global", "if", "import", "in", "is", "lambda", "match", "nonlocal|10", "not", "or", "pass", "raise", "return", "try", "while", "with", "yield"]; const KEYWORDS$2 = { $pattern: /[A-Za-z]\w+|__\w+__/, keyword: RESERVED_WORDS, built_in: ["__import__", "abs", "all", "any", "ascii", "bin", "bool", "breakpoint", "bytearray", "bytes", "callable", "chr", "classmethod", "compile", "complex", "delattr", "dict", "dir", "divmod", "enumerate", "eval", "exec", "filter", "float", "format", "frozenset", "getattr", "globals", "hasattr", "hash", "help", "hex", "id", "input", "int", "isinstance", "issubclass", "iter", "len", "list", "locals", "map", "max", "memoryview", "min", "next", "object", "oct", "open", "ord", "pow", "print", "property", "range", "repr", "reversed", "round", "set", "setattr", "slice", "sorted", "staticmethod", "str", "sum", "super", "tuple", "type", "vars", "zip"], literal: ["__debug__", "Ellipsis", "False", "None", "NotImplemented", "True"], type: ["Any", "Callable", "Coroutine", "Dict", "List", "Literal", "Generic", "Optional", "Sequence", "Set", "Tuple", "Type", "Union"] }; const PROMPT = { className: "meta", begin: /^(>>>|\.\.\.) / }; const SUBST = { className: "subst", begin: /\{/, end: /\}/, keywords: KEYWORDS$2, illegal: /#/ }; const LITERAL_BRACKET = { begin: /\{\{/, relevance: 0 }; const STRING = { className: "string", contains: [hljs.BACKSLASH_ESCAPE], variants: [{ begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/, end: /'''/, contains: [hljs.BACKSLASH_ESCAPE, PROMPT], relevance: 10 }, { begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/, end: /"""/, contains: [hljs.BACKSLASH_ESCAPE, PROMPT], relevance: 10 }, { begin: /([fF][rR]|[rR][fF]|[fF])'''/, end: /'''/, contains: [hljs.BACKSLASH_ESCAPE, PROMPT, LITERAL_BRACKET, SUBST] }, { begin: /([fF][rR]|[rR][fF]|[fF])"""/, end: /"""/, contains: [hljs.BACKSLASH_ESCAPE, PROMPT, LITERAL_BRACKET, SUBST] }, { begin: /([uU]|[rR])'/, end: /'/, relevance: 10 }, { begin: /([uU]|[rR])"/, end: /"/, relevance: 10 }, { begin: /([bB]|[bB][rR]|[rR][bB])'/, end: /'/ }, { begin: /([bB]|[bB][rR]|[rR][bB])"/, end: /"/ }, { begin: /([fF][rR]|[rR][fF]|[fF])'/, end: /'/, contains: [hljs.BACKSLASH_ESCAPE, LITERAL_BRACKET, SUBST] }, { begin: /([fF][rR]|[rR][fF]|[fF])"/, end: /"/, contains: [hljs.BACKSLASH_ESCAPE, LITERAL_BRACKET, SUBST] }, hljs.APOS_STRING_MODE, hljs.QUOTE_STRING_MODE] }; const digitpart = "[0-9](_?[0-9])*"; const pointfloat = `(\\b(${digitpart}))?\\.(${digitpart})|\\b(${digitpart})\\.`; const lookahead = `\\b|${RESERVED_WORDS.join("|")}`; const NUMBER = { className: "number", relevance: 0, variants: [{ begin: `(\\b(${digitpart})|(${pointfloat}))[eE][+-]?(${digitpart})[jJ]?(?=${lookahead})` }, { begin: `(${pointfloat})[jJ]?` }, { begin: `\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${lookahead})` }, { begin: `\\b0[bB](_?[01])+[lL]?(?=${lookahead})` }, { begin: `\\b0[oO](_?[0-7])+[lL]?(?=${lookahead})` }, { begin: `\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${lookahead})` }, { begin: `\\b(${digitpart})[jJ](?=${lookahead})` }] }; const COMMENT_TYPE = { className: "comment", begin: regex.lookahead(/# type:/), end: /$/, keywords: KEYWORDS$2, contains: [{ begin: /# type:/ }, { begin: /#/, end: /\b\B/, endsWithParent: true }] }; const PARAMS = { className: "params", variants: [{ className: "", begin: /\(\s*\)/, skip: true }, { begin: /\(/, end: /\)/, excludeBegin: true, excludeEnd: true, keywords: KEYWORDS$2, contains: ["self", PROMPT, NUMBER, STRING, hljs.HASH_COMMENT_MODE] }] }; SUBST.contains = [STRING, NUMBER, PROMPT]; return { name: "Python", aliases: ["py", "gyp", "ipython"], unicodeRegex: true, keywords: KEYWORDS$2, illegal: /(<\/|\?)|=>/, contains: [PROMPT, NUMBER, { begin: /\bself\b/ }, { beginKeywords: "if", relevance: 0 }, STRING, COMMENT_TYPE, hljs.HASH_COMMENT_MODE, { match: [/\bdef/, /\s+/, IDENT_RE$2], scope: { 1: "keyword", 3: "title.function" }, contains: [PARAMS] }, { variants: [{ match: [/\bclass/, /\s+/, IDENT_RE$2, /\s*/, /\(\s*/, IDENT_RE$2, /\s*\)/] }, { match: [/\bclass/, /\s+/, IDENT_RE$2] }], scope: { 1: "keyword", 3: "title.class", 6: "title.class.inherited" } }, { className: "meta", begin: /^[\t ]*@/, end: /(?=#)|$/, contains: [NUMBER, PARAMS, STRING] }] }; } //#endregion //#region ../../../node_modules/.pnpm/highlight.js@11.8.0/node_modules/highlight.js/es/languages/typescript.js /** @type LanguageFn */ function javascript(hljs) { const regex = hljs.regex; /** * Takes a string like "<Booger" and checks to see * if we can find a matching "</Booger" later in the * content. * @param {RegExpMatchArray} match * @param {{after:number}} param1 */ const hasClosingTag = (match, { after }) => { const tag = "</" + match[0].slice(1); return match.input.indexOf(tag, after) !== -1; }; const IDENT_RE$1$1 = IDENT_RE; const FRAGMENT = { begin: "<>", end: "</>" }; const XML_SELF_CLOSING = /<[A-Za-z0-9\\._:-]+\s*\/>/; const XML_TAG = { begin: /<[A-Za-z0-9\\._:-]+/, end: /\/[A-Za-z0-9\\._:-]+>|\/>/, isTrulyOpeningTag: (match, response) => { const afterMatchIndex = match[0].length + match.index; const nextChar = match.input[afterMatchIndex]; if (nextChar === "<" || nextChar === ",") { response.ignoreMatch(); return; } if (nextChar === ">") { if (!hasClosingTag(match, { after: afterMatchIndex })) response.ignoreMatch(); } let m; const afterMatch = match.input.substring(afterMatchIndex); if (m = afterMatch.match(/^\s*=/)) { response.ignoreMatch(); return; } if (m = afterMatch.match(/^\s+extends\s+/)) { if (m.index === 0) { response.ignoreMatch(); return; } } } }; const KEYWORDS$1$1 = { $pattern: IDENT_RE, keyword: KEYWORDS, literal: LITERALS, built_in: BUILT_INS, "variable.language": BUILT_IN_VARIABLES }; const decimalDigits = "[0-9](_?[0-9])*"; const frac = `\\.(${decimalDigits})`; const decimalInteger = `0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`; const NUMBER = { className: "number", variants: [{ begin: `(\\b(${decimalInteger})((${frac})|\\.)?|(${frac}))[eE][+-]?(${decimalDigits})\\b` }, { begin: `\\b(${decimalInteger})\\b((${frac})\\b|\\.)?|(${frac})\\b` }, { begin: `\\b(0|[1-9](_?[0-9])*)n\\b` }, { begin: "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b" }, { begin: "\\b0[bB][0-1](_?[0-1])*n?\\b" }, { begin: "\\b0[oO][0-7](_?[0-7])*n?\\b" }, { begin: "\\b0[0-7]+n?\\b" }], relevance: 0 }; const SUBST = { className: "subst", begin: "\\$\\{", end: "\\}", keywords: KEYWORDS$1$1, contains: [] }; const HTML_TEMPLATE = { begin: "html`", end: "", starts: { end: "`", returnEnd: false, contains: [hljs.BACKSLASH_ESCAPE, SUBST], subLanguage: "xml" } }; const CSS_TEMPLATE = { begin: "css`", end: "", starts: { end: "`", returnEnd: false, contains: [hljs.BACKSLASH_ESCAPE, SUBST], subLanguage: "css" } }; const GRAPHQL_TEMPLATE = { begin: "gql`", end: "", starts: { end: "`", returnEnd: false, contains: [hljs.BACKSLASH_ESCAPE, SUBST], subLanguage: "graphql" } }; const TEMPLATE_STRING = { className: "string", begin: "`", end: "`", contains: [hljs.BACKSLASH_ESCAPE, SUBST] }; const COMMENT = { className: "comment", variants: [hljs.COMMENT(/\/\*\*(?!\/)/, "\\*/", { relevance: 0, contains: [{ begin: "(?=@[A-Za-z]+)", relevance: 0, contains: [{ className: "doctag", begin: "@[A-Za-z]+" }, { className: "type", begin: "\\{", end: "\\}", excludeEnd: true, excludeBegin: true, relevance: 0 }, { className: "variable", begin: IDENT_RE$1$1 + "(?=\\s*(-)|$)", endsParent: true, relevance: 0 }, { begin: /(?=[^\n])\s/, relevance: 0 }] }] }), hljs.C_BLOCK_COMMENT_MODE, hljs.C_LINE_COMMENT_MODE] }; const SUBST_INTERNALS = [hljs.APOS_STRING_MODE, hljs.QUOTE_STRING_MODE, HTML_TEMPLATE, CSS_TEMPLATE, GRAPHQL_TEMPLATE, TEMPLATE_STRING, { match: /\$\d+/ }, NUMBER]; SUBST.contains = SUBST_INTERNALS.concat({ begin: /\{/, end: /\}/, keywords: KEYWORDS$1$1, contains: ["self"].concat(SUBST_INTERNALS) }); const SUBST_AND_COMMENTS = [].concat(COMMENT, SUBST.contains); const PARAMS_CONTAINS = SUBST_AND_COMMENTS.concat([{ begin: /\(/, end: /\)/, keywords: KEYWORDS$1$1, contains: ["self"].concat(SUBST_AND_COMMENTS) }]); const PARAMS = { className: "params", begin: /\(/, end: /\)/, excludeBegin: true, excludeEnd: true, keywords: KEYWORDS$1$1, contains: PARAMS_CONTAINS }; const CLASS_OR_EXTENDS = { variants: [{ match: [/class/, /\s+/, IDENT_RE$1$1, /\s+/, /extends/, /\s+/, regex.concat(IDENT_RE$1$1, "(", regex.concat(/\./, IDENT_RE$1$1), ")*")], scope: { 1: "keyword", 3: "title.class", 5: "keyword", 7: "title.class.inherited" } }, { match: [/class/, /\s+/, IDENT_RE$1$1], scope: { 1: "keyword", 3: "title.class" } }] }; const CLASS_REFERENCE = { relevance: 0, match: regex.either(/\bJSON/, /\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/, /\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/, /\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/), className: "title.class", keywords: { _: [...TYPES, ...ERROR_TYPES] } }; const USE_STRICT = { label: "use_strict", className: "meta", relevance: 10, begin: /^\s*['"]use (strict|asm)['"]/ }; const FUNCTION_DEFINITION = { variants: [{ match: [/function/, /\s+/, IDENT_RE$1$1, /(?=\s*\()/] }, { match: [/function/, /\s*(?=\()/] }], className: { 1: "keyword", 3: "title.function" }, label: "func.def", contains: [PARAMS], illegal: /%/ }; const UPPER_CASE_CONSTANT = { relevance: 0, match: /\b[A-Z][A-Z_0-9]+\b/, className: "variable.constant" }; function noneOf(list) { return regex.concat("(?!", list.join("|"), ")"); } const FUNCTION_CALL = { match: regex.concat(/\b/, noneOf([...BUILT_IN_GLOBALS, "super", "import"]), IDENT_RE$1$1, regex.lookahead(/\(/)), className: "title.function", relevance: 0 }; const PROPERTY_ACCESS = { begin: regex.concat(/\./, regex.lookahead(regex.concat(IDENT_RE$1$1, /(?![0-9A-Za-z$_(])/))), end: IDENT_RE$1$1, excludeBegin: true, keywords: "prototype", className: "property", relevance: 0 }; const GETTER_OR_SETTER = { match: [/get|set/, /\s+/, IDENT_RE$1$1, /(?=\()/], className: { 1: "keyword", 3: "title.function" }, contains: [{ begin: /\(\)/ }, PARAMS] }; const FUNC_LEAD_IN_RE = "(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|" + hljs.UNDERSCORE_IDENT_RE + ")\\s*=>"; const FUNCTION_VARIABLE = { match: [/const|var|let/, /\s+/, IDENT_RE$1$1, /\s*/, /=\s*/, /(async\s*)?/, regex.lookahead(FUNC_LEAD_IN_RE)], keywords: "async", className: { 1: "keyword", 3: "title.function" }, contains: [PARAMS] }; return { name: "JavaScript", aliases: ["js", "jsx", "mjs", "cjs"], keywords: KEYWORDS$1$1, exports: { PARAMS_CONTAINS, CLASS_REFERENCE }, illegal: /#(?![$_A-z])/, contains: [hljs.SHEBANG({ label: "shebang", binary: "node", relevance: 5 }), USE_STRICT, hljs.APOS_STRING_MODE, hljs.QUOTE_STRING_MODE, HTML_TEMPLATE, CSS_TEMPLATE, GRAPHQL_TEMPLATE, TEMPLATE_STRING, COMMENT, { match: /\$\d+/ }, NUMBER, CLASS_REFERENCE, { className: "attr", begin: IDENT_RE$1$1 + regex.lookahead(":"), relevance: 0 }, FUNCTION_VARIABLE, { begin: "(" + hljs.RE_STARTERS_RE + "|\\b(case|return|throw)\\b)\\s*", keywords: "return throw case", relevance: 0, contains: [COMMENT, hljs.REGEXP_MODE, { className: "function", begin: FUNC_LEAD_IN_RE, returnBegin: true, end: "\\s*=>", contains: [{ className: "params", variants: [{ begin: hljs.UNDERSCORE_IDENT_RE, relevance: 0 }, { className: null, begin: /\(\s*\)/, skip: true }, { begin: /\(/, end: /\)/, excludeBegin: true, excludeEnd: true, keywords: KEYWORDS$1$1, contains: PARAMS_CONTAINS }] }] }, { begin: /,/, relevance: 0 }, { match: /\s+/, relevance: 0 }, { variants: [{ begin: FRAGMENT.begin, end: FRAGMENT.end }, { match: XML_SELF_CLOSING }, { begin: XML_TAG.begin, "on:begin": XML_TAG.isTrulyOpeningTag, end: XML_TAG.end }], subLanguage: "xml", contains: [{ begin: XML_TAG.begin, end: XML_TAG.end, skip: true, contains: ["self"] }] }] }, FUNCTION_DEFINITION, { beginKeywords: "while if switch catch for" }, { begin: "\\b(?!function)" + hljs.UNDERSCORE_IDENT_RE + "\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", returnBegin: true, label: "func.def", contains: [PARAMS, hljs.inherit(hljs.TITLE_MODE, { begin: IDENT_RE$1$1, className: "title.function" })] }, { match: /\.\.\./, relevance: 0 }, PROPERTY_ACCESS, { match: "\\$" + IDENT_RE$1$1, relevance: 0 }, { match: [/\bconstructor(?=\s*\()/], className: { 1: "title.function" }, contains: [PARAMS] }, FUNCTION_CALL, UPPER_CASE_CONSTANT, CLASS_OR_EXTENDS, GETTER_OR_SETTER, { match: /\$[(.]/ }] }; } /** @type LanguageFn */ function typescript(hljs) { const tsLanguage = javascript(hljs); const IDENT_RE$1$1 = IDENT_RE; const TYPES$2 = ["any", "void", "number", "boolean", "string", "object", "never", "symbol", "bigint", "unknown"]; const NAMESPACE = { beginKeywords: "namespace", end: /\{/, excludeEnd: true, contains: [tsLanguage.exports.CLASS_REFERENCE] }; const INTERFACE = { beginKeywords: "interface", end: /\{/, excludeEnd: true, keywords: { keyword: "interface extends", built_in: TYPES$2 }, contains: [tsLanguage.exports.CLASS_REFERENCE] }; const USE_STRICT = { className: "meta", relevance: 10, begin: /^\s*['"]use strict['"]/ }; const KEYWORDS$1$1 = { $pattern: IDENT_RE, keyword: KEYWORDS.concat(["type", "namespace", "interface", "public", "private", "protected", "implements", "declare", "abstract", "readonly", "enum", "override"]), literal: LITERALS, built_in: BUILT_INS.concat(TYPES$2), "variable.language": BUILT_IN_VARIABLES }; const DECORATOR = { className: "meta", begin: "@" + IDENT_RE$1$1 }; const swapMode = (mode, label, replacement) => { const indx = mode.contains.findIndex(m => m.label === label); if (indx === -1) throw new Error("can not find mode to replace"); mode.contains.splice(indx, 1, replacement); }; Object.assign(tsLanguage.keywords, KEYWORDS$1$1); tsLanguage.exports.PARAMS_CONTAINS.push(DECORATOR); tsLanguage.contains = tsLanguage.contains.concat([DECORATOR, NAMESPACE, INTERFACE]); swapMode(tsLanguage, "shebang", hljs.SHEBANG()); swapMode(tsLanguage, "use_strict", USE_STRICT); const functionDeclaration = tsLanguage.contains.find(m => m.label === "func.def"); functionDeclaration.relevance = 0; Object.assign(tsLanguage, { name: "TypeScript", aliases: ["ts", "tsx", "mts", "cts"] }); return tsLanguage; } //#endregion //#region ../../../node_modules/.pnpm/highlight.js@11.8.0/node_modules/highlight.js/es/languages/xml.js /** @type LanguageFn */ function xml(hljs) { const regex = hljs.regex; const TAG_NAME_RE = regex.concat(/[\p{L}_]/u, regex.optional(/[\p{L}0-9_.-]*:/u), /[\p{L}0-9_.-]*/u); const XML_IDENT_RE = /[\p{L}0-9._:-]+/u; const XML_ENTITIES = { className: "symbol", begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/ }; const XML_META_KEYWORDS = { begin: /\s/, contains: [{ className: "keyword", begin: /#?[a-z_][a-z1-9_-]+/, illegal: /\n/ }] }; const XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, { begin: /\(/, end: /\)/ }); const APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, { className: "string" }); const QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, { className: "string" }); const TAG_INTERNALS = { endsWithParent: true, illegal: /</, relevance: 0, contains: [{ className: "attr", begin: XML_IDENT_RE, relevance: 0 }, { begin: /=\s*/, relevance: 0, contains: [{ className: "string", endsParent: true, variants: [{ begin: /"/, end: /"/, contains: [XML_ENTITIES] }, { begin: /'/, end: /'/, contains: [XML_ENTITIES] }, { begin: /[^\s"'=<>`]+/ }] }] }] }; return { name: "HTML, XML", aliases: ["html", "xhtml", "rss", "atom", "xjb", "xsd", "xsl", "plist", "wsf", "svg"], case_insensitive: true, unicodeRegex: true, contains: [{ className: "meta", begin: /<![a-z]/, end: />/, relevance: 10, contains: [XML_META_KEYWORDS, QUOTE_META_STRING_MODE, APOS_META_STRING_MODE, XML_META_PAR_KEYWORDS, { begin: /\[/, end: /\]/, contains: [{ className: "meta", begin: /<![a-z]/, end: />/, contains: [XML_META_KEYWORDS, XML_META_PAR_KEYWORDS, QUOTE_META_STRING_MODE, APOS_META_STRING_MODE] }] }] }, hljs.COMMENT(/<!--/, /-->/, { relevance: 10 }), { begin: /<!\[CDATA\[/, end: /\]\]>/, relevance: 10 }, XML_ENTITIES, { className: "meta", end: /\?>/, variants: [{ begin: /<\?xml/, relevance: 10, contains: [QUOTE_META_STRING_MODE] }, { begin: /<\?[a-z][a-z0-9]+/ }] }, { className: "tag", begin: /<style(?=\s|>)/, end: />/, keywords: { name: "style" }, contains: [TAG_INTERNALS], starts: { end: /<\/style>/, returnEnd: true, subLanguage: ["css", "xml"] } }, { className: "tag", begin: /<script(?=\s|>)/, end: />/, keywords: { name: "script" }, contains: [TAG_INTERNALS], starts: { end: /<\/script>/, returnEnd: true, subLanguage: ["javascript", "handlebars", "xml"] } }, { className: "tag", begin: /<>|<\/>/ }, { className: "tag", begin: regex.concat(/</, regex.lookahead(regex.concat(TAG_NAME_RE, regex.either(/\/>/, />/, /\s/)))), end: /\/?>/, contains: [{ className: "name", begin: TAG_NAME_RE, relevance: 0, starts: TAG_INTERNALS }] }, { className: "tag", begin: regex.concat(/<\//, regex.lookahead(regex.concat(TAG_NAME_RE, />/))), contains: [{ className: "name", begin: TAG_NAME_RE, relevance: 0 }, { begin: />/, relevance: 0, endsParent: true }] }] }; } //#endregion _export({ a: bash, i: javascript$1, n: typescript, r: python, t: xml }); return { setters: [], execute: function () { IDENT_RE$1 = "[A-Za-z$_][0-9A-Za-z$_]*"; KEYWORDS$1 = ["as", "in", "of", "if", "for", "while", "finally", "var", "new", "function", "do", "return", "void", "else", "break", "catch", "instanceof", "with", "throw", "case", "default", "try", "switch", "continue", "typeof", "delete", "let", "yield", "const", "class", "debugger", "async", "await", "static", "import", "from", "export", "extends"]; LITERALS$1 = ["true", "false", "null", "undefined", "NaN", "Infinity"]; TYPES$1 = ["Object", "Function", "Boolean", "Symbol", "Math", "Date", "Number", "BigInt", "String", "RegExp", "Array", "Float32Array", "Float64Array", "Int8Array", "Uint8Array", "Uint8ClampedArray", "Int16Array", "Int32Array", "Uint16Array", "Uint32Array", "BigInt64Array", "BigUint64Array", "Set", "Map", "WeakSet", "WeakMap", "ArrayBuffer", "SharedArrayBuffer", "Atomics", "DataView", "JSON", "Promise", "Generator", "GeneratorFunction", "AsyncFunction", "Reflect", "Proxy", "Intl", "WebAssembly"]; ERROR_TYPES$1 = ["Error", "EvalError", "InternalError", "RangeError", "ReferenceError", "SyntaxError", "TypeError", "URIError"]; BUILT_IN_GLOBALS$1 = ["setInterval", "setTimeout", "clearInterval", "clearTimeout", "require", "exports", "eval", "isFinite", "isNaN", "parseFloat", "parseInt", "decodeURI", "decodeURIComponent", "encodeURI", "encodeURIComponent", "escape", "unescape"]; BUILT_IN_VARIABLES$1 = ["arguments", "this", "super", "console", "window", "document", "localStorage", "sessionStorage", "module", "global"]; BUILT_INS$1 = [].concat(BUILT_IN_GLOBALS$1, TYPES$1, ERROR_TYPES$1); IDENT_RE = "[A-Za-z$_][0-9A-Za-z$_]*"; KEYWORDS = ["as", "in", "of", "if", "for", "while", "finally", "var", "new", "function", "do", "return", "void", "else", "break", "catch", "instanceof", "with", "throw", "case", "default", "try", "switch", "continue", "typeof", "delete", "let", "yield", "const", "class", "debugger", "async", "await", "static", "import", "from", "export", "extends"]; LITERALS = ["true", "false", "null", "undefined", "NaN", "Infinity"]; TYPES = ["Object", "Function", "Boolean", "Symbol", "Math", "Date", "Number", "BigInt", "String", "RegExp", "Array", "Float32Array", "Float64Array", "Int8Array", "Uint8Array", "Uint8ClampedArray", "Int16Array", "Int32Array", "Uint16Array", "Uint32Array", "BigInt64Array", "BigUint64Array", "Set", "Map", "WeakSet", "WeakMap", "ArrayBuffer", "SharedArrayBuffer", "Atomics", "DataView", "JSON", "Promise", "Generator", "GeneratorFunction", "AsyncFunction", "Reflect", "Proxy", "Intl", "WebAssembly"]; ERROR_TYPES = ["Error", "EvalError", "InternalError", "RangeError", "ReferenceError", "SyntaxError", "TypeError", "URIError"]; BUILT_IN_GLOBALS = ["setInterval", "setTimeout", "clearInterval", "clearTimeout", "require", "exports", "eval", "isFinite", "isNaN", "parseFloat", "parseInt", "decodeURI", "decodeURIComponent", "encodeURI", "encodeURIComponent", "escape", "unescape"]; BUILT_IN_VARIABLES = ["arguments", "this", "super", "console", "window", "document", "localStorage", "sessionStorage", "module", "global"]; BUILT_INS = [].concat(BUILT_IN_GLOBALS, TYPES, ERROR_TYPES); } }; }); })();