1{"version":3,"sources":["webpack:///./node_modules/monaco-editor/esm/vs/basic-languages/hcl/hcl.js"],"names":[],"mappings":";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA,WAAW,KAAK;AAChB;AACA;AACA;AACA;AACA,SAAS,SAAS,YAAY,GAAG;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS;AACT;AACA;AACA,SAAS,SAAS,YAAY,GAAG;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS;AACT;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,IAAI,cAAc,EAAE,cAAc,EAAE;AAClF;AACA;AACA;AACA;AACA;AACA;AACA,qGAAqG;AACrG;AACA;AACA;AACA;AACA,2FAA2F;AAC3F;AACA;AACA;AACA;AACA,sFAAsF;AACtF;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,sBAAsB;AAC5D;AACA;AACA;AACA;AACA,aAAa,yBAAyB;AACtC,aAAa,sBAAsB;AACnC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,IAAI,gDAAgD;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,mCAAmC;AACvD;AACA,aAAa;AACb;AACA;AACA","file":"23.23.js","sourcesContent":["/*---------------------------------------------------------------------------------------------\n *  Copyright (c) Microsoft Corporation. All rights reserved.\n *  Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nexport var conf = {\n    comments: {\n        lineComment: '//',\n        blockComment: ['/*', '*/']\n    },\n    brackets: [\n        ['{', '}'],\n        ['[', ']'],\n        ['(', ')']\n    ],\n    autoClosingPairs: [\n        { open: '{', close: '}' },\n        { open: '[', close: ']' },\n        { open: '(', close: ')' },\n        { open: '\"', close: '\"', notIn: ['string'] }\n    ],\n    surroundingPairs: [\n        { open: '{', close: '}' },\n        { open: '[', close: ']' },\n        { open: '(', close: ')' },\n        { open: '\"', close: '\"' }\n    ]\n};\nexport var language = {\n    defaultToken: '',\n    tokenPostfix: '.hcl',\n    keywords: [\n        'var',\n        'local',\n        'path',\n        'for_each',\n        'any',\n        'string',\n        'number',\n        'bool',\n        'true',\n        'false',\n        'null',\n        'if ',\n        'else ',\n        'endif ',\n        'for ',\n        'in',\n        'endfor'\n    ],\n    operators: [\n        '=',\n        '>=',\n        '<=',\n        '==',\n        '!=',\n        '+',\n        '-',\n        '*',\n        '/',\n        '%',\n        '&&',\n        '||',\n        '!',\n        '<',\n        '>',\n        '?',\n        '...',\n        ':'\n    ],\n    symbols: /[=><!~?:&|+\\-*\\/\\^%]+/,\n    escapes: /\\\\(?:[abfnrtv\\\\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,\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)/,\n    terraformMainBlocks: /(module|data|terraform|resource|provider|variable|output|locals)/,\n    tokenizer: {\n        root: [\n            // highlight main blocks\n            [\n                /^@terraformMainBlocks([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)(\\{)/,\n                ['type', '', 'string', '', 'string', '', '@brackets']\n            ],\n            // highlight all the remaining blocks\n            [\n                /(\\w+[ \\t]+)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)(\\{)/,\n                ['identifier', '', 'string', '', 'string', '', '@brackets']\n            ],\n            // highlight block\n            [\n                /(\\w+[ \\t]+)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)([ \\t]*)([\\w-]+|\"[\\w-]+\"|)(=)(\\{)/,\n                ['identifier', '', 'string', '', 'operator', '', '@brackets']\n            ],\n            // terraform general highlight - shared with expressions\n            { include: '@terraform' }\n        ],\n        terraform: [\n            // highlight terraform functions\n            [/@terraformFunctions(\\()/, ['type', '@brackets']],\n            // all other words are variables or keywords\n            [\n                /[a-zA-Z_]\\w*-*/,\n                {\n                    cases: {\n                        '@keywords': { token: 'keyword.$0' },\n                        '@default': 'variable'\n                    }\n                }\n            ],\n            { include: '@whitespace' },\n            { include: '@heredoc' },\n            // delimiters and operators\n            [/[{}()\\[\\]]/, '@brackets'],\n            [/[<>](?!@symbols)/, '@brackets'],\n            [\n                /@symbols/,\n                {\n                    cases: {\n                        '@operators': 'operator',\n                        '@default': ''\n                    }\n                }\n            ],\n            // numbers\n            [/\\d*\\d+[eE]([\\-+]?\\d+)?/, 'number.float'],\n            [/\\d*\\.\\d+([eE][\\-+]?\\d+)?/, 'number.float'],\n            [/\\d[\\d']*/, 'number'],\n            [/\\d/, 'number'],\n            [/[;,.]/, 'delimiter'],\n            // strings\n            [/\"/, 'string', '@string'],\n            [/'/, 'invalid']\n        ],\n        heredoc: [\n            [\n                /<<[-]*\\s*[\"]?([\\w\\-]+)[\"]?/,\n                { token: 'string.heredoc.delimiter', next: '@heredocBody.$1' }\n            ]\n        ],\n        heredocBody: [\n            [\n                /^([\\w\\-]+)$/,\n                {\n                    cases: {\n                        '$1==$S2': [\n                            {\n                                token: 'string.heredoc.delimiter',\n                                next: '@popall'\n                            }\n                        ],\n                        '@default': 'string.heredoc'\n                    }\n                }\n            ],\n            [/./, 'string.heredoc']\n        ],\n        whitespace: [\n            [/[ \\t\\r\\n]+/, ''],\n            [/\\/\\*/, 'comment', '@comment'],\n            [/\\/\\/.*$/, 'comment'],\n            [/#.*$/, 'comment']\n        ],\n        comment: [\n            [/[^\\/*]+/, 'comment'],\n            [/\\*\\//, 'comment', '@pop'],\n            [/[\\/*]/, 'comment']\n        ],\n        string: [\n            [/\\$\\{/, { token: 'delimiter', next: '@stringExpression' }],\n            [/[^\\\\\"\\$]+/, 'string'],\n            [/@escapes/, 'string.escape'],\n            [/\\\\./, 'string.escape.invalid'],\n            [/\"/, 'string', '@popall']\n        ],\n        stringInsideExpression: [\n            [/[^\\\\\"]+/, 'string'],\n            [/@escapes/, 'string.escape'],\n            [/\\\\./, 'string.escape.invalid'],\n            [/\"/, 'string', '@pop']\n        ],\n        stringExpression: [\n            [/\\}/, { token: 'delimiter', next: '@pop' }],\n            [/\"/, 'string', '@stringInsideExpression'],\n            { include: '@terraform' }\n        ]\n    }\n};\n"],"sourceRoot":""}