1{"version":3,"sources":["webpack:///./node_modules/monaco-editor/esm/vs/basic-languages/lexon/lexon.js"],"names":[],"mappings":";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,SAAS,SAAS,YAAY,GAAG;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS;AACT;AACA;AACA,SAAS,SAAS,YAAY,GAAG;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,sDAAsD;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,yBAAyB;AACtC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA,mBAAmB,6DAA6D;AAChF;AACA;AACA;AACA,mBAAmB,2CAA2C;AAC9D;AACA;AACA,aAAa,yBAAyB;AACtC,mBAAmB,+CAA+C;AAClE;AACA,oBAAoB,sDAAsD;AAC1E;AACA;AACA;AACA,oBAAoB,sDAAsD;AAC1E;AACA;AACA,aAAa,yBAAyB;AACtC;AACA,+BAA+B,0DAA0D;AACzF;AACA;AACA;AACA","file":"30.30.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: 'COMMENT'\n        // blockComment: ['COMMENT', '.'],\n    },\n    brackets: [['(', ')']],\n    autoClosingPairs: [\n        { open: '{', close: '}' },\n        { open: '[', close: ']' },\n        { open: '(', close: ')' },\n        { open: '\"', close: '\"' },\n        { open: ':', close: '.' }\n    ],\n    surroundingPairs: [\n        { open: '{', close: '}' },\n        { open: '[', close: ']' },\n        { open: '(', close: ')' },\n        { open: '`', close: '`' },\n        { open: '\"', close: '\"' },\n        { open: \"'\", close: \"'\" },\n        { open: ':', close: '.' }\n    ],\n    folding: {\n        markers: {\n            start: new RegExp('^\\\\s*(::\\\\s*|COMMENT\\\\s+)#region'),\n            end: new RegExp('^\\\\s*(::\\\\s*|COMMENT\\\\s+)#endregion')\n        }\n    }\n};\nexport var language = {\n    // Set defaultToken to invalid to see what you do not tokenize yet\n    // defaultToken: 'invalid',\n    tokenPostfix: '.lexon',\n    ignoreCase: true,\n    keywords: [\n        'lexon',\n        'lex',\n        'clause',\n        'terms',\n        'contracts',\n        'may',\n        'pay',\n        'pays',\n        'appoints',\n        'into',\n        'to'\n    ],\n    typeKeywords: ['amount', 'person', 'key', 'time', 'date', 'asset', 'text'],\n    operators: [\n        'less',\n        'greater',\n        'equal',\n        'le',\n        'gt',\n        'or',\n        'and',\n        'add',\n        'added',\n        'subtract',\n        'subtracted',\n        'multiply',\n        'multiplied',\n        'times',\n        'divide',\n        'divided',\n        'is',\n        'be',\n        'certified'\n    ],\n    // we include these common regular expressions\n    symbols: /[=><!~?:&|+\\-*\\/\\^%]+/,\n    // The main tokenizer for our languages\n    tokenizer: {\n        root: [\n            // comment\n            [/^(\\s*)(comment:?(?:\\s.*|))$/, ['', 'comment']],\n            // special identifier cases\n            [\n                /\"/,\n                {\n                    token: 'identifier.quote',\n                    bracket: '@open',\n                    next: '@quoted_identifier'\n                }\n            ],\n            [\n                'LEX$',\n                {\n                    token: 'keyword',\n                    bracket: '@open',\n                    next: '@identifier_until_period'\n                }\n            ],\n            ['LEXON', { token: 'keyword', bracket: '@open', next: '@semver' }],\n            [\n                ':',\n                {\n                    token: 'delimiter',\n                    bracket: '@open',\n                    next: '@identifier_until_period'\n                }\n            ],\n            // identifiers and keywords\n            [\n                /[a-z_$][\\w$]*/,\n                {\n                    cases: {\n                        '@operators': 'operator',\n                        '@typeKeywords': 'keyword.type',\n                        '@keywords': 'keyword',\n                        '@default': 'identifier'\n                    }\n                }\n            ],\n            // whitespace\n            { include: '@whitespace' },\n            // delimiters and operators\n            [/[{}()\\[\\]]/, '@brackets'],\n            [/[<>](?!@symbols)/, '@brackets'],\n            [/@symbols/, 'delimiter'],\n            // numbers\n            [/\\d*\\.\\d*\\.\\d*/, 'number.semver'],\n            [/\\d*\\.\\d+([eE][\\-+]?\\d+)?/, 'number.float'],\n            [/0[xX][0-9a-fA-F]+/, 'number.hex'],\n            [/\\d+/, 'number'],\n            // delimiter: after number because of .\\d floats\n            [/[;,.]/, 'delimiter']\n        ],\n        quoted_identifier: [\n            [/[^\\\\\"]+/, 'identifier'],\n            [/\"/, { token: 'identifier.quote', bracket: '@close', next: '@pop' }]\n        ],\n        space_identifier_until_period: [\n            [':', 'delimiter'],\n            [' ', { token: 'white', next: '@identifier_rest' }]\n        ],\n        identifier_until_period: [\n            { include: '@whitespace' },\n            [':', { token: 'delimiter', next: '@identifier_rest' }],\n            [/[^\\\\.]+/, 'identifier'],\n            [/\\./, { token: 'delimiter', bracket: '@close', next: '@pop' }]\n        ],\n        identifier_rest: [\n            [/[^\\\\.]+/, 'identifier'],\n            [/\\./, { token: 'delimiter', bracket: '@close', next: '@pop' }]\n        ],\n        semver: [\n            { include: '@whitespace' },\n            [':', 'delimiter'],\n            [/\\d*\\.\\d*\\.\\d*/, { token: 'number.semver', bracket: '@close', next: '@pop' }]\n        ],\n        whitespace: [[/[ \\t\\r\\n]+/, 'white']]\n    }\n};\n"],"sourceRoot":""}