/* * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development"). * This devtool is neither made for production nor for readable output files. * It uses "eval()" calls to create a separate source file in the browser devtools. * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). */ (self["webpackChunkbrowser_esm_webpack"] = self["webpackChunkbrowser_esm_webpack"] || []).push([["vendors-node_modules_monaco-editor_esm_vs_basic-languages_twig_twig_js"],{ /***/ "./node_modules/monaco-editor/esm/vs/basic-languages/twig/twig.js": /*!************************************************************************!*\ !*** ./node_modules/monaco-editor/esm/vs/basic-languages/twig/twig.js ***! \************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"conf\": () => (/* binding */ conf),\n/* harmony export */ \"language\": () => (/* binding */ language)\n/* harmony export */ });\n/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nvar conf = {\r\n wordPattern: /(-?\\d*\\.\\d\\w*)|([^\\`\\~\\!\\@\\$\\^\\&\\*\\(\\)\\=\\+\\[\\{\\]\\}\\\\\\|\\;\\:\\'\\\"\\,\\.\\<\\>\\/\\s]+)/g,\r\n comments: {\r\n blockComment: ['{#', '#}']\r\n },\r\n brackets: [\r\n ['{#', '#}'],\r\n ['{%', '%}'],\r\n ['{{', '}}'],\r\n ['(', ')'],\r\n ['[', ']'],\r\n // HTML\r\n [''],\r\n ['<', '>']\r\n ],\r\n autoClosingPairs: [\r\n { open: '{# ', close: ' #}' },\r\n { open: '{% ', close: ' %}' },\r\n { open: '{{ ', close: ' }}' },\r\n { open: '[', close: ']' },\r\n { open: '(', close: ')' },\r\n { open: '\"', close: '\"' },\r\n { open: \"'\", close: \"'\" }\r\n ],\r\n surroundingPairs: [\r\n { open: '\"', close: '\"' },\r\n { open: \"'\", close: \"'\" },\r\n // HTML\r\n { open: '<', close: '>' }\r\n ]\r\n};\r\nvar language = {\r\n defaultToken: '',\r\n tokenPostfix: '',\r\n ignoreCase: true,\r\n keywords: [\r\n // (opening) tags\r\n 'apply',\r\n 'autoescape',\r\n 'block',\r\n 'deprecated',\r\n 'do',\r\n 'embed',\r\n 'extends',\r\n 'flush',\r\n 'for',\r\n 'from',\r\n 'if',\r\n 'import',\r\n 'include',\r\n 'macro',\r\n 'sandbox',\r\n 'set',\r\n 'use',\r\n 'verbatim',\r\n 'with',\r\n // closing tags\r\n 'endapply',\r\n 'endautoescape',\r\n 'endblock',\r\n 'endembed',\r\n 'endfor',\r\n 'endif',\r\n 'endmacro',\r\n 'endsandbox',\r\n 'endset',\r\n 'endwith',\r\n // literals\r\n 'true',\r\n 'false'\r\n ],\r\n tokenizer: {\r\n root: [\r\n // whitespace\r\n [/\\s+/],\r\n // Twig Tag Delimiters\r\n [/{#/, 'comment.twig', '@commentState'],\r\n [/{%[-~]?/, 'delimiter.twig', '@blockState'],\r\n [/{{[-~]?/, 'delimiter.twig', '@variableState'],\r\n // HTML\r\n [/)/,\r\n ['delimiter.html', 'tag.html', '', 'delimiter.html']\r\n ],\r\n [/(<)(script)/, ['delimiter.html', { token: 'tag.html', next: '@script' }]],\r\n [/(<)(style)/, ['delimiter.html', { token: 'tag.html', next: '@style' }]],\r\n [\r\n /(<)((?:[\\w\\-]+:)?[\\w\\-]+)/,\r\n ['delimiter.html', { token: 'tag.html', next: '@otherTag' }]\r\n ],\r\n [\r\n /(<\\/)((?:[\\w\\-]+:)?[\\w\\-]+)/,\r\n ['delimiter.html', { token: 'tag.html', next: '@otherTag' }]\r\n ],\r\n [/|>=|<=/, 'operators.twig'],\r\n // operators - comparison (words)\r\n [/(starts with|ends with|matches)(\\s+)/, ['operators.twig', '']],\r\n // operators - containment\r\n [/(in)(\\s+)/, ['operators.twig', '']],\r\n // operators - test\r\n [/(is)(\\s+)/, ['operators.twig', '']],\r\n // operators - misc\r\n [/\\||~|:|\\.{1,2}|\\?{1,2}/, 'operators.twig'],\r\n // names\r\n [\r\n /[^\\W\\d][\\w]*/,\r\n {\r\n cases: {\r\n '@keywords': 'keyword.twig',\r\n '@default': 'variable.twig'\r\n }\r\n }\r\n ],\r\n // numbers\r\n [/\\d+(\\.\\d+)?/, 'number.twig'],\r\n // punctuation\r\n [/\\(|\\)|\\[|\\]|{|}|,/, 'delimiter.twig'],\r\n // strings\r\n [/\"([^#\"\\\\]*(?:\\\\.[^#\"\\\\]*)*)\"|\\'([^\\'\\\\]*(?:\\\\.[^\\'\\\\]*)*)\\'/, 'string.twig'],\r\n // opening double quoted string\r\n [/\"/, 'string.twig', '@stringState'],\r\n // misc syntactic constructs\r\n // These are not operators per se, but for the purposes of lexical analysis we\r\n // can treat them as such.\r\n // arrow functions\r\n [/=>/, 'operators.twig'],\r\n // assignment\r\n [/=/, 'operators.twig']\r\n ],\r\n /**\r\n * HTML\r\n */\r\n doctype: [\r\n [/[^>]+/, 'metatag.content.html'],\r\n [/>/, 'metatag.html', '@pop']\r\n ],\r\n comment: [\r\n [/-->/, 'comment.html', '@pop'],\r\n [/[^-]+/, 'comment.content.html'],\r\n [/./, 'comment.content.html']\r\n ],\r\n otherTag: [\r\n [/\\/?>/, 'delimiter.html', '@pop'],\r\n [/\"([^\"]*)\"/, 'attribute.value.html'],\r\n [/'([^']*)'/, 'attribute.value.html'],\r\n [/[\\w\\-]+/, 'attribute.name.html'],\r\n [/=/, 'delimiter.html'],\r\n [/[ \\t\\r\\n]+/] // whitespace\r\n ],\r\n // -- BEGIN