123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407 |
- /*!-----------------------------------------------------------------------------
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Version: 0.31.1(337587859b1c171314b40503171188b6cea6a32a)
- * Released under the MIT license
- * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
- *-----------------------------------------------------------------------------*/
- var __defProp = Object.defineProperty;
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
- var __getOwnPropNames = Object.getOwnPropertyNames;
- var __hasOwnProp = Object.prototype.hasOwnProperty;
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
- var __reExport = (target, module, desc) => {
- if (module && typeof module === "object" || typeof module === "function") {
- for (let key of __getOwnPropNames(module))
- if (!__hasOwnProp.call(target, key) && key !== "default")
- __defProp(target, key, { get: () => module[key], enumerable: !(desc = __getOwnPropDesc(module, key)) || desc.enumerable });
- }
- return target;
- };
- // src/fillers/monaco-editor-core.ts
- var monaco_editor_core_exports = {};
- __markAsModule(monaco_editor_core_exports);
- __reExport(monaco_editor_core_exports, monaco_editor_core_star);
- import * as monaco_editor_core_star from "../../editor/editor.api.js";
- // src/basic-languages/handlebars/handlebars.ts
- var EMPTY_ELEMENTS = [
- "area",
- "base",
- "br",
- "col",
- "embed",
- "hr",
- "img",
- "input",
- "keygen",
- "link",
- "menuitem",
- "meta",
- "param",
- "source",
- "track",
- "wbr"
- ];
- var conf = {
- wordPattern: /(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,
- comments: {
- blockComment: ["{{!--", "--}}"]
- },
- brackets: [
- ["<!--", "-->"],
- ["<", ">"],
- ["{{", "}}"],
- ["{", "}"],
- ["(", ")"]
- ],
- autoClosingPairs: [
- { open: "{", close: "}" },
- { open: "[", close: "]" },
- { open: "(", close: ")" },
- { open: '"', close: '"' },
- { open: "'", close: "'" }
- ],
- surroundingPairs: [
- { open: "<", close: ">" },
- { open: '"', close: '"' },
- { open: "'", close: "'" }
- ],
- onEnterRules: [
- {
- beforeText: new RegExp(`<(?!(?:${EMPTY_ELEMENTS.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`, "i"),
- afterText: /^<\/(\w[\w\d]*)\s*>$/i,
- action: {
- indentAction: monaco_editor_core_exports.languages.IndentAction.IndentOutdent
- }
- },
- {
- beforeText: new RegExp(`<(?!(?:${EMPTY_ELEMENTS.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`, "i"),
- action: { indentAction: monaco_editor_core_exports.languages.IndentAction.Indent }
- }
- ]
- };
- var language = {
- defaultToken: "",
- tokenPostfix: "",
- tokenizer: {
- root: [
- [/\{\{!--/, "comment.block.start.handlebars", "@commentBlock"],
- [/\{\{!/, "comment.start.handlebars", "@comment"],
- [/\{\{/, { token: "@rematch", switchTo: "@handlebarsInSimpleState.root" }],
- [/<!DOCTYPE/, "metatag.html", "@doctype"],
- [/<!--/, "comment.html", "@commentHtml"],
- [/(<)(\w+)(\/>)/, ["delimiter.html", "tag.html", "delimiter.html"]],
- [/(<)(script)/, ["delimiter.html", { token: "tag.html", next: "@script" }]],
- [/(<)(style)/, ["delimiter.html", { token: "tag.html", next: "@style" }]],
- [/(<)([:\w]+)/, ["delimiter.html", { token: "tag.html", next: "@otherTag" }]],
- [/(<\/)(\w+)/, ["delimiter.html", { token: "tag.html", next: "@otherTag" }]],
- [/</, "delimiter.html"],
- [/\{/, "delimiter.html"],
- [/[^<{]+/]
- ],
- doctype: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.comment"
- }
- ],
- [/[^>]+/, "metatag.content.html"],
- [/>/, "metatag.html", "@pop"]
- ],
- comment: [
- [/\}\}/, "comment.end.handlebars", "@pop"],
- [/./, "comment.content.handlebars"]
- ],
- commentBlock: [
- [/--\}\}/, "comment.block.end.handlebars", "@pop"],
- [/./, "comment.content.handlebars"]
- ],
- commentHtml: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.comment"
- }
- ],
- [/-->/, "comment.html", "@pop"],
- [/[^-]+/, "comment.content.html"],
- [/./, "comment.content.html"]
- ],
- otherTag: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.otherTag"
- }
- ],
- [/\/?>/, "delimiter.html", "@pop"],
- [/"([^"]*)"/, "attribute.value"],
- [/'([^']*)'/, "attribute.value"],
- [/[\w\-]+/, "attribute.name"],
- [/=/, "delimiter"],
- [/[ \t\r\n]+/]
- ],
- script: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.script"
- }
- ],
- [/type/, "attribute.name", "@scriptAfterType"],
- [/"([^"]*)"/, "attribute.value"],
- [/'([^']*)'/, "attribute.value"],
- [/[\w\-]+/, "attribute.name"],
- [/=/, "delimiter"],
- [
- />/,
- {
- token: "delimiter.html",
- next: "@scriptEmbedded.text/javascript",
- nextEmbedded: "text/javascript"
- }
- ],
- [/[ \t\r\n]+/],
- [
- /(<\/)(script\s*)(>)/,
- ["delimiter.html", "tag.html", { token: "delimiter.html", next: "@pop" }]
- ]
- ],
- scriptAfterType: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.scriptAfterType"
- }
- ],
- [/=/, "delimiter", "@scriptAfterTypeEquals"],
- [
- />/,
- {
- token: "delimiter.html",
- next: "@scriptEmbedded.text/javascript",
- nextEmbedded: "text/javascript"
- }
- ],
- [/[ \t\r\n]+/],
- [/<\/script\s*>/, { token: "@rematch", next: "@pop" }]
- ],
- scriptAfterTypeEquals: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.scriptAfterTypeEquals"
- }
- ],
- [
- /"([^"]*)"/,
- {
- token: "attribute.value",
- switchTo: "@scriptWithCustomType.$1"
- }
- ],
- [
- /'([^']*)'/,
- {
- token: "attribute.value",
- switchTo: "@scriptWithCustomType.$1"
- }
- ],
- [
- />/,
- {
- token: "delimiter.html",
- next: "@scriptEmbedded.text/javascript",
- nextEmbedded: "text/javascript"
- }
- ],
- [/[ \t\r\n]+/],
- [/<\/script\s*>/, { token: "@rematch", next: "@pop" }]
- ],
- scriptWithCustomType: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.scriptWithCustomType.$S2"
- }
- ],
- [
- />/,
- {
- token: "delimiter.html",
- next: "@scriptEmbedded.$S2",
- nextEmbedded: "$S2"
- }
- ],
- [/"([^"]*)"/, "attribute.value"],
- [/'([^']*)'/, "attribute.value"],
- [/[\w\-]+/, "attribute.name"],
- [/=/, "delimiter"],
- [/[ \t\r\n]+/],
- [/<\/script\s*>/, { token: "@rematch", next: "@pop" }]
- ],
- scriptEmbedded: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInEmbeddedState.scriptEmbedded.$S2",
- nextEmbedded: "@pop"
- }
- ],
- [/<\/script/, { token: "@rematch", next: "@pop", nextEmbedded: "@pop" }]
- ],
- style: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.style"
- }
- ],
- [/type/, "attribute.name", "@styleAfterType"],
- [/"([^"]*)"/, "attribute.value"],
- [/'([^']*)'/, "attribute.value"],
- [/[\w\-]+/, "attribute.name"],
- [/=/, "delimiter"],
- [
- />/,
- {
- token: "delimiter.html",
- next: "@styleEmbedded.text/css",
- nextEmbedded: "text/css"
- }
- ],
- [/[ \t\r\n]+/],
- [
- /(<\/)(style\s*)(>)/,
- ["delimiter.html", "tag.html", { token: "delimiter.html", next: "@pop" }]
- ]
- ],
- styleAfterType: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.styleAfterType"
- }
- ],
- [/=/, "delimiter", "@styleAfterTypeEquals"],
- [
- />/,
- {
- token: "delimiter.html",
- next: "@styleEmbedded.text/css",
- nextEmbedded: "text/css"
- }
- ],
- [/[ \t\r\n]+/],
- [/<\/style\s*>/, { token: "@rematch", next: "@pop" }]
- ],
- styleAfterTypeEquals: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.styleAfterTypeEquals"
- }
- ],
- [
- /"([^"]*)"/,
- {
- token: "attribute.value",
- switchTo: "@styleWithCustomType.$1"
- }
- ],
- [
- /'([^']*)'/,
- {
- token: "attribute.value",
- switchTo: "@styleWithCustomType.$1"
- }
- ],
- [
- />/,
- {
- token: "delimiter.html",
- next: "@styleEmbedded.text/css",
- nextEmbedded: "text/css"
- }
- ],
- [/[ \t\r\n]+/],
- [/<\/style\s*>/, { token: "@rematch", next: "@pop" }]
- ],
- styleWithCustomType: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInSimpleState.styleWithCustomType.$S2"
- }
- ],
- [
- />/,
- {
- token: "delimiter.html",
- next: "@styleEmbedded.$S2",
- nextEmbedded: "$S2"
- }
- ],
- [/"([^"]*)"/, "attribute.value"],
- [/'([^']*)'/, "attribute.value"],
- [/[\w\-]+/, "attribute.name"],
- [/=/, "delimiter"],
- [/[ \t\r\n]+/],
- [/<\/style\s*>/, { token: "@rematch", next: "@pop" }]
- ],
- styleEmbedded: [
- [
- /\{\{/,
- {
- token: "@rematch",
- switchTo: "@handlebarsInEmbeddedState.styleEmbedded.$S2",
- nextEmbedded: "@pop"
- }
- ],
- [/<\/style/, { token: "@rematch", next: "@pop", nextEmbedded: "@pop" }]
- ],
- handlebarsInSimpleState: [
- [/\{\{\{?/, "delimiter.handlebars"],
- [/\}\}\}?/, { token: "delimiter.handlebars", switchTo: "@$S2.$S3" }],
- { include: "handlebarsRoot" }
- ],
- handlebarsInEmbeddedState: [
- [/\{\{\{?/, "delimiter.handlebars"],
- [
- /\}\}\}?/,
- {
- token: "delimiter.handlebars",
- switchTo: "@$S2.$S3",
- nextEmbedded: "$S3"
- }
- ],
- { include: "handlebarsRoot" }
- ],
- handlebarsRoot: [
- [/"[^"]*"/, "string.handlebars"],
- [/[#/][^\s}]+/, "keyword.helper.handlebars"],
- [/else\b/, "keyword.helper.handlebars"],
- [/[\s]+/],
- [/[^}]/, "variable.parameter.handlebars"]
- ]
- }
- };
- export {
- conf,
- language
- };
|