/*
 * 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([["node_modules_monaco-editor_esm_vs_basic-languages_hcl_hcl_js"],{

/***/ "./node_modules/monaco-editor/esm/vs/basic-languages/hcl/hcl.js":
/*!**********************************************************************!*\
  !*** ./node_modules/monaco-editor/esm/vs/basic-languages/hcl/hcl.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    comments: {\r\n        lineComment: '//',\r\n        blockComment: ['/*', '*/']\r\n    },\r\n    brackets: [\r\n        ['{', '}'],\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: '\"', notIn: ['string'] }\r\n    ],\r\n    surroundingPairs: [\r\n        { open: '{', close: '}' },\r\n        { open: '[', close: ']' },\r\n        { open: '(', close: ')' },\r\n        { open: '\"', close: '\"' }\r\n    ]\r\n};\r\nvar language = {\r\n    defaultToken: '',\r\n    tokenPostfix: '.hcl',\r\n    keywords: [\r\n        'var',\r\n        'local',\r\n        'path',\r\n        'for_each',\r\n        'any',\r\n        'string',\r\n        'number',\r\n        'bool',\r\n        'true',\r\n        'false',\r\n        'null',\r\n        'if ',\r\n        'else ',\r\n        'endif ',\r\n        'for ',\r\n        'in',\r\n        'endfor'\r\n    ],\r\n    operators: [\r\n        '=',\r\n        '>=',\r\n        '<=',\r\n        '==',\r\n        '!=',\r\n        '+',\r\n        '-',\r\n        '*',\r\n        '/',\r\n        '%',\r\n        '&&',\r\n        '||',\r\n        '!',\r\n        '<',\r\n        '>',\r\n        '?',\r\n        '...',\r\n        ':'\r\n    ],\r\n    symbols: /[=><!~?:&|+\\-*\\/\\^%]+/,\r\n    escapes: /\\\\(?:[abfnrtv\\\\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,\r\n    terraformFunctions: /(abs|ceil|floor|log|max|min|pow|signum|chomp|format|formatlist|indent|join|lower|regex|regexall|replace|split|strrev|substr|title|trimspace|upper|chunklist|coalesce|coalescelist|compact|concat|contains|distinct|element|flatten|index|keys|length|list|lookup|map|matchkeys|merge|range|reverse|setintersection|setproduct|setunion|slice|sort|transpose|values|zipmap|base64decode|base64encode|base64gzip|csvdecode|jsondecode|jsonencode|urlencode|yamldecode|yamlencode|abspath|dirname|pathexpand|basename|file|fileexists|fileset|filebase64|templatefile|formatdate|timeadd|timestamp|base64sha256|base64sha512|bcrypt|filebase64sha256|filebase64sha512|filemd5|filemd1|filesha256|filesha512|md5|rsadecrypt|sha1|sha256|sha512|uuid|uuidv5|cidrhost|cidrnetmask|cidrsubnet|tobool|tolist|tomap|tonumber|toset|tostring)/,\r\n    terraformMainBlocks: /(module|data|terraform|resource|provider|variable|output|locals)/,\r\n    tokenizer: {\r\n        root: [\r\n            // highlight main blocks\r\n            [\r\n                /^@terraformMainBlocks([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)(\\{)/,\r\n                ['type', '', 'string', '', 'string', '', '@brackets']\r\n            ],\r\n            // highlight all the remaining blocks\r\n            [\r\n                /(\\w+[ \\t]+)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)(\\{)/,\r\n                ['identifier', '', 'string', '', 'string', '', '@brackets']\r\n            ],\r\n            // highlight block\r\n            [\r\n                /(\\w+[ \\t]+)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)(=)(\\{)/,\r\n                ['identifier', '', 'string', '', 'operator', '', '@brackets']\r\n            ],\r\n            // terraform general highlight - shared with expressions\r\n            { include: '@terraform' }\r\n        ],\r\n        terraform: [\r\n            // highlight terraform functions\r\n            [/@terraformFunctions(\\()/, ['type', '@brackets']],\r\n            // all other words are variables or keywords\r\n            [\r\n                /[a-zA-Z_]\\w*-*/,\r\n                {\r\n                    cases: {\r\n                        '@keywords': { token: 'keyword.$0' },\r\n                        '@default': 'variable'\r\n                    }\r\n                }\r\n            ],\r\n            { include: '@whitespace' },\r\n            { include: '@heredoc' },\r\n            // delimiters and operators\r\n            [/[{}()\\[\\]]/, '@brackets'],\r\n            [/[<>](?!@symbols)/, '@brackets'],\r\n            [\r\n                /@symbols/,\r\n                {\r\n                    cases: {\r\n                        '@operators': 'operator',\r\n                        '@default': ''\r\n                    }\r\n                }\r\n            ],\r\n            // numbers\r\n            [/\\d*\\d+[eE]([\\-+]?\\d+)?/, 'number.float'],\r\n            [/\\d*\\.\\d+([eE][\\-+]?\\d+)?/, 'number.float'],\r\n            [/\\d[\\d']*/, 'number'],\r\n            [/\\d/, 'number'],\r\n            [/[;,.]/, 'delimiter'],\r\n            // strings\r\n            [/\"/, 'string', '@string'],\r\n            [/'/, 'invalid']\r\n        ],\r\n        heredoc: [\r\n            [\r\n                /<<[-]*\\s*[\"]?([\\w\\-]+)[\"]?/,\r\n                { token: 'string.heredoc.delimiter', next: '@heredocBody.$1' }\r\n            ]\r\n        ],\r\n        heredocBody: [\r\n            [\r\n                /([\\w\\-]+)$/,\r\n                {\r\n                    cases: {\r\n                        '$1==$S2': [\r\n                            {\r\n                                token: 'string.heredoc.delimiter',\r\n                                next: '@popall'\r\n                            }\r\n                        ],\r\n                        '@default': 'string.heredoc'\r\n                    }\r\n                }\r\n            ],\r\n            [/./, 'string.heredoc']\r\n        ],\r\n        whitespace: [\r\n            [/[ \\t\\r\\n]+/, ''],\r\n            [/\\/\\*/, 'comment', '@comment'],\r\n            [/\\/\\/.*$/, 'comment'],\r\n            [/#.*$/, 'comment']\r\n        ],\r\n        comment: [\r\n            [/[^\\/*]+/, 'comment'],\r\n            [/\\*\\//, 'comment', '@pop'],\r\n            [/[\\/*]/, 'comment']\r\n        ],\r\n        string: [\r\n            [/\\$\\{/, { token: 'delimiter', next: '@stringExpression' }],\r\n            [/[^\\\\\"\\$]+/, 'string'],\r\n            [/@escapes/, 'string.escape'],\r\n            [/\\\\./, 'string.escape.invalid'],\r\n            [/\"/, 'string', '@popall']\r\n        ],\r\n        stringInsideExpression: [\r\n            [/[^\\\\\"]+/, 'string'],\r\n            [/@escapes/, 'string.escape'],\r\n            [/\\\\./, 'string.escape.invalid'],\r\n            [/\"/, 'string', '@pop']\r\n        ],\r\n        stringExpression: [\r\n            [/\\}/, { token: 'delimiter', next: '@pop' }],\r\n            [/\"/, 'string', '@stringInsideExpression'],\r\n            { include: '@terraform' }\r\n        ]\r\n    }\r\n};\r\n\n\n//# sourceURL=webpack://browser-esm-webpack/./node_modules/monaco-editor/esm/vs/basic-languages/hcl/hcl.js?");

/***/ })

}]);