123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- /*!-----------------------------------------------------------------------------
- * 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
- *-----------------------------------------------------------------------------*/
- define("vs/basic-languages/bicep/bicep",[],()=>{
- var moduleExports = (() => {
- var __defProp = Object.defineProperty;
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
- var __export = (target, all) => {
- __markAsModule(target);
- for (var name in all)
- __defProp(target, name, { get: all[name], enumerable: true });
- };
- // src/basic-languages/bicep/bicep.ts
- var bicep_exports = {};
- __export(bicep_exports, {
- conf: () => conf,
- language: () => language
- });
- var bounded = (text) => `\\b${text}\\b`;
- var identifierStart = "[_a-zA-Z]";
- var identifierContinue = "[_a-zA-Z0-9]";
- var identifier = bounded(`${identifierStart}${identifierContinue}*`);
- var keywords = [
- "targetScope",
- "resource",
- "module",
- "param",
- "var",
- "output",
- "for",
- "in",
- "if",
- "existing"
- ];
- var namedLiterals = ["true", "false", "null"];
- var nonCommentWs = `[ \\t\\r\\n]`;
- var numericLiteral = `[0-9]+`;
- var conf = {
- comments: {
- lineComment: "//",
- blockComment: ["/*", "*/"]
- },
- brackets: [
- ["{", "}"],
- ["[", "]"],
- ["(", ")"]
- ],
- surroundingPairs: [
- { open: "{", close: "}" },
- { open: "[", close: "]" },
- { open: "(", close: ")" },
- { open: "'", close: "'" },
- { open: "'''", close: "'''" }
- ],
- autoClosingPairs: [
- { open: "{", close: "}" },
- { open: "[", close: "]" },
- { open: "(", close: ")" },
- { open: "'", close: "'", notIn: ["string", "comment"] },
- { open: "'''", close: "'''", notIn: ["string", "comment"] }
- ],
- autoCloseBefore: ":.,=}])' \n ",
- indentationRules: {
- increaseIndentPattern: new RegExp("^((?!\\/\\/).)*(\\{[^}\"'`]*|\\([^)\"'`]*|\\[[^\\]\"'`]*)$"),
- decreaseIndentPattern: new RegExp("^((?!.*?\\/\\*).*\\*/)?\\s*[\\}\\]].*$")
- }
- };
- var language = {
- defaultToken: "",
- tokenPostfix: ".bicep",
- brackets: [
- { open: "{", close: "}", token: "delimiter.curly" },
- { open: "[", close: "]", token: "delimiter.square" },
- { open: "(", close: ")", token: "delimiter.parenthesis" }
- ],
- symbols: /[=><!~?:&|+\-*/^%]+/,
- keywords,
- namedLiterals,
- escapes: `\\\\(u{[0-9A-Fa-f]+}|n|r|t|\\\\|'|\\\${)`,
- tokenizer: {
- root: [{ include: "@expression" }, { include: "@whitespace" }],
- stringVerbatim: [
- { regex: `(|'|'')[^']`, action: { token: "string" } },
- { regex: `'''`, action: { token: "string.quote", next: "@pop" } }
- ],
- stringLiteral: [
- { regex: `\\\${`, action: { token: "delimiter.bracket", next: "@bracketCounting" } },
- { regex: `[^\\\\'$]+`, action: { token: "string" } },
- { regex: "@escapes", action: { token: "string.escape" } },
- { regex: `\\\\.`, action: { token: "string.escape.invalid" } },
- { regex: `'`, action: { token: "string", next: "@pop" } }
- ],
- bracketCounting: [
- { regex: `{`, action: { token: "delimiter.bracket", next: "@bracketCounting" } },
- { regex: `}`, action: { token: "delimiter.bracket", next: "@pop" } },
- { include: "expression" }
- ],
- comment: [
- { regex: `[^\\*]+`, action: { token: "comment" } },
- { regex: `\\*\\/`, action: { token: "comment", next: "@pop" } },
- { regex: `[\\/*]`, action: { token: "comment" } }
- ],
- whitespace: [
- { regex: nonCommentWs },
- { regex: `\\/\\*`, action: { token: "comment", next: "@comment" } },
- { regex: `\\/\\/.*$`, action: { token: "comment" } }
- ],
- expression: [
- { regex: `'''`, action: { token: "string.quote", next: "@stringVerbatim" } },
- { regex: `'`, action: { token: "string.quote", next: "@stringLiteral" } },
- { regex: numericLiteral, action: { token: "number" } },
- {
- regex: identifier,
- action: {
- cases: {
- "@keywords": { token: "keyword" },
- "@namedLiterals": { token: "keyword" },
- "@default": { token: "identifier" }
- }
- }
- }
- ]
- }
- };
- return bicep_exports;
- })();
- return moduleExports;
- });
|