You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
12 KiB
1 line
12 KiB
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([[218],{nNVF:function(module,__webpack_exports__,__webpack_require__){"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"conf\", function() { return conf; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"language\", function() { return language; });\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\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 ['\x3c!--', '--\x3e'],\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', 'autoescape', 'block', 'deprecated', 'do', 'embed', 'extends',\r\n 'flush', 'for', 'from', 'if', 'import', 'include', 'macro', 'sandbox',\r\n 'set', 'use', 'verbatim', 'with',\r\n // closing tags\r\n 'endapply', 'endautoescape', 'endblock', 'endembed', 'endfor', 'endif',\r\n 'endmacro', 'endsandbox', 'endset', 'endwith',\r\n // literals\r\n 'true', '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 [/<!DOCTYPE/, 'metatag.html', '@doctype'],\r\n [/\x3c!--/, 'comment.html', '@comment'],\r\n [/(<)((?:[\\w\\-]+:)?[\\w\\-]+)(\\s*)(\\/>)/, ['delimiter.html', 'tag.html', '', 'delimiter.html']],\r\n [/(<)(script)/, ['delimiter.html', { token: 'tag.html', next: '@script' }]],\r\n [/(<)(style)/, ['delimiter.html', { token: 'tag.html', next: '@style' }]],\r\n [/(<)((?:[\\w\\-]+:)?[\\w\\-]+)/, ['delimiter.html', { token: 'tag.html', next: '@otherTag' }]],\r\n [/(<\\/)((?:[\\w\\-]+:)?[\\w\\-]+)/, ['delimiter.html', { token: 'tag.html', next: '@otherTag' }]],\r\n [/</, 'delimiter.html'],\r\n [/[^<]+/],\r\n ],\r\n /**\r\n * Comment Tag Handling\r\n */\r\n commentState: [\r\n [/#}/, 'comment.twig', '@pop'],\r\n [/./, 'comment.twig'],\r\n ],\r\n /**\r\n * Block Tag Handling\r\n */\r\n blockState: [\r\n [/[-~]?%}/, 'delimiter.twig', '@pop'],\r\n // whitespace\r\n [/\\s+/],\r\n // verbatim\r\n // Unlike other blocks, verbatim ehas its own state\r\n // transition to ensure we mark its contents as strings.\r\n [/(verbatim)(\\s*)([-~]?%})/, [\r\n 'keyword.twig',\r\n '',\r\n { token: 'delimiter.twig', next: '@rawDataState' },\r\n ]],\r\n { include: 'expression' }\r\n ],\r\n rawDataState: [\r\n // endverbatim\r\n [/({%[-~]?)(\\s*)(endverbatim)(\\s*)([-~]?%})/, [\r\n 'delimiter.twig',\r\n '',\r\n 'keyword.twig',\r\n '',\r\n { token: 'delimiter.twig', next: '@popall' },\r\n ]],\r\n [/./, 'string.twig'],\r\n ],\r\n /**\r\n * Variable Tag Handling\r\n */\r\n variableState: [\r\n [/[-~]?}}/, 'delimiter.twig', '@pop'],\r\n { include: 'expression' },\r\n ],\r\n stringState: [\r\n // closing double quoted string\r\n [/\"/, 'string.twig', '@pop'],\r\n // interpolation start\r\n [/#{\\s*/, 'string.twig', '@interpolationState'],\r\n // string part\r\n [/[^#\"\\\\]*(?:(?:\\\\.|#(?!\\{))[^#\"\\\\]*)*/, 'string.twig'],\r\n ],\r\n interpolationState: [\r\n // interpolation end\r\n [/}/, 'string.twig', '@pop'],\r\n { include: 'expression' },\r\n ],\r\n /**\r\n * Expression Handling\r\n */\r\n expression: [\r\n // whitespace\r\n [/\\s+/],\r\n // operators - math\r\n [/\\+|-|\\/{1,2}|%|\\*{1,2}/, 'operators.twig'],\r\n // operators - logic\r\n [/(and|or|not|b-and|b-xor|b-or)(\\s+)/, ['operators.twig', '']],\r\n // operators - comparison (symbols)\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 [/[^\\W\\d][\\w]*/, {\r\n cases: {\r\n '@keywords': 'keyword.twig',\r\n '@default': 'variable.twig'\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 [/--\x3e/, '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]+/],\r\n ],\r\n // -- BEGIN <script> tags handling\r\n // After <script\r\n script: [\r\n [/type/, 'attribute.name.html', '@scriptAfterType'],\r\n [/\"([^\"]*)\"/, 'attribute.value.html'],\r\n [/'([^']*)'/, 'attribute.value.html'],\r\n [/[\\w\\-]+/, 'attribute.name.html'],\r\n [/=/, 'delimiter.html'],\r\n [/>/, { token: 'delimiter.html', next: '@scriptEmbedded', nextEmbedded: 'text/javascript' }],\r\n [/[ \\t\\r\\n]+/],\r\n [/(<\\/)(script\\s*)(>)/, ['delimiter.html', 'tag.html', { token: 'delimiter.html', next: '@pop' }]]\r\n ],\r\n // After <script ... type\r\n scriptAfterType: [\r\n [/=/, 'delimiter.html', '@scriptAfterTypeEquals'],\r\n [/>/, { token: 'delimiter.html', next: '@scriptEmbedded', nextEmbedded: 'text/javascript' }],\r\n [/[ \\t\\r\\n]+/],\r\n [/<\\/script\\s*>/, { token: '@rematch', next: '@pop' }]\r\n ],\r\n // After <script ... type =\r\n scriptAfterTypeEquals: [\r\n [/\"([^\"]*)\"/, { token: 'attribute.value.html', switchTo: '@scriptWithCustomType.$1' }],\r\n [/'([^']*)'/, { token: 'attribute.value.html', switchTo: '@scriptWithCustomType.$1' }],\r\n [/>/, { token: 'delimiter.html', next: '@scriptEmbedded', nextEmbedded: 'text/javascript' }],\r\n [/[ \\t\\r\\n]+/],\r\n [/<\\/script\\s*>/, { token: '@rematch', next: '@pop' }]\r\n ],\r\n // After <script ... type = $S2\r\n scriptWithCustomType: [\r\n [/>/, { token: 'delimiter.html', next: '@scriptEmbedded.$S2', nextEmbedded: '$S2' }],\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]+/],\r\n [/<\\/script\\s*>/, { token: '@rematch', next: '@pop' }]\r\n ],\r\n scriptEmbedded: [\r\n [/<\\/script/, { token: '@rematch', next: '@pop', nextEmbedded: '@pop' }],\r\n [/[^<]+/, '']\r\n ],\r\n // -- END <script> tags handling\r\n // -- BEGIN <style> tags handling\r\n // After <style\r\n style: [\r\n [/type/, 'attribute.name.html', '@styleAfterType'],\r\n [/\"([^\"]*)\"/, 'attribute.value.html'],\r\n [/'([^']*)'/, 'attribute.value.html'],\r\n [/[\\w\\-]+/, 'attribute.name.html'],\r\n [/=/, 'delimiter.html'],\r\n [/>/, { token: 'delimiter.html', next: '@styleEmbedded', nextEmbedded: 'text/css' }],\r\n [/[ \\t\\r\\n]+/],\r\n [/(<\\/)(style\\s*)(>)/, ['delimiter.html', 'tag.html', { token: 'delimiter.html', next: '@pop' }]]\r\n ],\r\n // After <style ... type\r\n styleAfterType: [\r\n [/=/, 'delimiter.html', '@styleAfterTypeEquals'],\r\n [/>/, { token: 'delimiter.html', next: '@styleEmbedded', nextEmbedded: 'text/css' }],\r\n [/[ \\t\\r\\n]+/],\r\n [/<\\/style\\s*>/, { token: '@rematch', next: '@pop' }]\r\n ],\r\n // After <style ... type =\r\n styleAfterTypeEquals: [\r\n [/\"([^\"]*)\"/, { token: 'attribute.value.html', switchTo: '@styleWithCustomType.$1' }],\r\n [/'([^']*)'/, { token: 'attribute.value.html', switchTo: '@styleWithCustomType.$1' }],\r\n [/>/, { token: 'delimiter.html', next: '@styleEmbedded', nextEmbedded: 'text/css' }],\r\n [/[ \\t\\r\\n]+/],\r\n [/<\\/style\\s*>/, { token: '@rematch', next: '@pop' }]\r\n ],\r\n // After <style ... type = $S2\r\n styleWithCustomType: [\r\n [/>/, { token: 'delimiter.html', next: '@styleEmbedded.$S2', nextEmbedded: '$S2' }],\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]+/],\r\n [/<\\/style\\s*>/, { token: '@rematch', next: '@pop' }]\r\n ],\r\n styleEmbedded: [\r\n [/<\\/style/, { token: '@rematch', next: '@pop', nextEmbedded: '@pop' }],\r\n [/[^<]+/, '']\r\n ],\r\n }\r\n};\r\n\n\n//# sourceURL=webpack:///./node_modules/monaco-editor/esm/vs/basic-languages/twig/twig.js?")}}]); |