diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 0f9cff0a3..d66631102 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -29,8 +29,8 @@ jobs: - name: Run tests run: | npm run test - - name: Publish to coveralls.io - if: ${{ matrix.node-version == 16 }} - uses: coverallsapp/github-action@v1.1.2 - with: - github-token: ${{ github.token }} + # - name: Publish to coveralls.io + # if: ${{ matrix.node-version == 16 }} + # uses: coverallsapp/github-action@v1.1.2 + # with: + # github-token: ${{ github.token }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 6a82583bd..80bf47576 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,38 @@ +#### 3.1.0-beta.3: Beta Release + +Editor + + - Select the item that is specified in a deep link URL (#4113) @Steve-Mcl + - Update to Monaco 0.38.0 (#4189) @Steve-Mcl + - Place subflow outputs/inputs relative to current view (#4183) @knolleary + - Enable RED.view.select to select group by id (#4184) @knolleary + - Combine existing env vars when merging groups (#4182) @knolleary + - Avoid creating empty global-config node if not needed (#4153) @knolleary + - Fix group selection when using lasso (#4108) @knolleary + - Use editor path in generating localStorage keys (#4151) @mw75 + - Ensure no node credentials are included when exporting to clipboard (#4112) @knolleary + - Fix jsonata expression test ui (#4097) @knolleary + - Fix search button in palette popover (#4096) @knolleary + +Runtime + + - Allow options object on each httpStatic configuration (#4109) @kevinGodell + - Ensure non-zero exit codes for errors (#4181) @knolleary + - Ensure external modules are installed synchronously (#4180) @knolleary + - Update dependecies include got (#4155) @knolleary + - Add Japanese translations for v3.1 beta.2 (#4158) @kazuhitoyokoi + - Ensure express server options are applied consistently (#4178) @knolleary + - Remove version info from theme endpoint (#4179) @knolleary + - Add Japanese translations for welcome tour of 3.1.0 beta.2 (#4145) @kazuhitoyokoi + - Added SHA-256 and SHA-512-256 digest authentication (#4100) @sroebert + - Add "timers" types to known types (#4103) @Steve-Mcl + +Nodes + + - Allow Catch/Status nodes to be scoped to their group (#4185) @NetHans + - MQTT: Option to disable MQTT topic unsubscribe on disconnect (#4078) @flying7eleven + + #### 3.1.0-beta.2: Beta Release Editor diff --git a/README.md b/README.md index b1e9766f0..a888ef166 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,7 @@ http://nodered.org -[![Build Status](https://travis-ci.org/node-red/node-red.svg?branch=master)](https://travis-ci.org/node-red/node-red) -[![Coverage Status](https://coveralls.io/repos/node-red/node-red/badge.svg?branch=master)](https://coveralls.io/r/node-red/node-red?branch=master) +[![Build Status](https://github.com/node-red/node-red/actions/workflows/tests.yml/badge.svg?branch=master)](https://github.com/node-red/node-red/actions?query=branch%3Amaster) Low-code programming for event-driven applications. diff --git a/package.json b/package.json index f4a87961c..986c88375 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "node-red", - "version": "3.1.0-beta.2", + "version": "3.1.0-beta.3", "description": "Low-code programming for event-driven applications", "homepage": "http://nodered.org", "license": "Apache-2.0", @@ -44,8 +44,8 @@ "express": "4.18.2", "express-session": "1.17.3", "form-data": "4.0.0", - "fs-extra": "10.1.0", - "got": "11.8.6", + "fs-extra": "11.1.1", + "got": "12.6.0", "hash-sum": "2.0.0", "hpagent": "1.2.0", "https-proxy-agent": "5.0.1", @@ -60,7 +60,7 @@ "memorystore": "1.6.7", "mime": "3.0.0", "moment": "2.29.4", - "moment-timezone": "0.5.41", + "moment-timezone": "0.5.43", "mqtt": "4.3.7", "multer": "1.4.5-lts.1", "mustache": "4.2.0", @@ -73,13 +73,13 @@ "passport-http-bearer": "1.0.1", "passport-oauth2-client-password": "0.1.2", "raw-body": "2.5.2", - "semver": "7.3.8", + "semver": "7.5.0", "tar": "6.1.13", "tough-cookie": "4.1.2", "uglify-js": "3.17.4", "uuid": "9.0.0", "ws": "7.5.6", - "xml2js": "0.4.23" + "xml2js": "0.6.0" }, "optionalDependencies": { "bcrypt": "5.1.0" @@ -108,14 +108,14 @@ "i18next-http-backend": "1.4.1", "jquery-i18next": "1.2.1", "jsdoc-nr-template": "github:node-red/jsdoc-nr-template", - "marked": "4.2.12", - "mermaid": "^9.3.0", + "marked": "4.3.0", + "mermaid": "^9.4.3", "minami": "1.2.3", "mocha": "9.2.2", - "node-red-node-test-helper": "^0.3.0", + "node-red-node-test-helper": "^0.3.1", "nodemon": "2.0.20", "proxy": "^1.0.2", - "sass": "1.58.3", + "sass": "1.62.1", "should": "13.2.3", "sinon": "11.1.2", "stoppable": "^1.1.0", diff --git a/packages/node_modules/@node-red/editor-api/lib/admin/index.js b/packages/node_modules/@node-red/editor-api/lib/admin/index.js index 8406fa8e9..26eabe65b 100644 --- a/packages/node_modules/@node-red/editor-api/lib/admin/index.js +++ b/packages/node_modules/@node-red/editor-api/lib/admin/index.js @@ -14,8 +14,6 @@ * limitations under the License. **/ -var express = require("express"); - var nodes = require("./nodes"); var flows = require("./flows"); var flow = require("./flow"); @@ -37,18 +35,9 @@ module.exports = { plugins.init(runtimeAPI); diagnostics.init(settings, runtimeAPI); - var needsPermission = auth.needsPermission; - - var adminApp = express(); - - var defaultServerSettings = { - "x-powered-by": false - } - var serverSettings = Object.assign({},defaultServerSettings,settings.httpServerOptions||{}); - for (var eOption in serverSettings) { - adminApp.set(eOption, serverSettings[eOption]); - } + const needsPermission = auth.needsPermission; + const adminApp = apiUtil.createExpressApp(settings) // Flows adminApp.get("/flows",needsPermission("flows.read"),flows.get,apiUtil.errorHandler); diff --git a/packages/node_modules/@node-red/editor-api/lib/editor/index.js b/packages/node_modules/@node-red/editor-api/lib/editor/index.js index f210d90fe..42be1f270 100644 --- a/packages/node_modules/@node-red/editor-api/lib/editor/index.js +++ b/packages/node_modules/@node-red/editor-api/lib/editor/index.js @@ -46,14 +46,15 @@ module.exports = { runtimeAPI = _runtimeAPI; needsPermission = auth.needsPermission; if (!settings.disableEditor) { - info.init(runtimeAPI); + info.init(settings, runtimeAPI); comms.init(server,settings,runtimeAPI); var ui = require("./ui"); ui.init(runtimeAPI); - var editorApp = express(); + const editorApp = apiUtil.createExpressApp(settings) + if (settings.requireHttps === true) { editorApp.enable('trust proxy'); editorApp.use(function (req, res, next) { @@ -86,7 +87,7 @@ module.exports = { //Projects var projects = require("./projects"); - projects.init(runtimeAPI); + projects.init(settings, runtimeAPI); editorApp.use("/projects",projects.app()); // Locales diff --git a/packages/node_modules/@node-red/editor-api/lib/editor/projects.js b/packages/node_modules/@node-red/editor-api/lib/editor/projects.js index ad505a46e..5d1b2ff26 100644 --- a/packages/node_modules/@node-red/editor-api/lib/editor/projects.js +++ b/packages/node_modules/@node-red/editor-api/lib/editor/projects.js @@ -14,9 +14,9 @@ * limitations under the License. **/ -var express = require("express"); var apiUtils = require("../util"); +var settings; var runtimeAPI; var needsPermission = require("../auth").needsPermission; @@ -77,11 +77,12 @@ function getProjectRemotes(req,res) { }) } module.exports = { - init: function(_runtimeAPI) { + init: function(_settings, _runtimeAPI) { + settings = _settings; runtimeAPI = _runtimeAPI; }, app: function() { - var app = express(); + var app = apiUtils.createExpressApp(settings) app.use(function(req,res,next) { runtimeAPI.projects.available().then(function(available) { diff --git a/packages/node_modules/@node-red/editor-api/lib/editor/settings.js b/packages/node_modules/@node-red/editor-api/lib/editor/settings.js index 5fa2476e1..200ddf2c2 100644 --- a/packages/node_modules/@node-red/editor-api/lib/editor/settings.js +++ b/packages/node_modules/@node-red/editor-api/lib/editor/settings.js @@ -18,9 +18,9 @@ var runtimeAPI; var sshkeys = require("./sshkeys"); module.exports = { - init: function(_runtimeAPI) { + init: function(settings, _runtimeAPI) { runtimeAPI = _runtimeAPI; - sshkeys.init(runtimeAPI); + sshkeys.init(settings, runtimeAPI); }, userSettings: function(req, res) { var opts = { diff --git a/packages/node_modules/@node-red/editor-api/lib/editor/sshkeys.js b/packages/node_modules/@node-red/editor-api/lib/editor/sshkeys.js index 6d1c62e11..08097571f 100644 --- a/packages/node_modules/@node-red/editor-api/lib/editor/sshkeys.js +++ b/packages/node_modules/@node-red/editor-api/lib/editor/sshkeys.js @@ -17,13 +17,15 @@ var apiUtils = require("../util"); var express = require("express"); var runtimeAPI; +var settings; module.exports = { - init: function(_runtimeAPI) { + init: function(_settings, _runtimeAPI) { runtimeAPI = _runtimeAPI; + settings = _settings; }, app: function() { - var app = express(); + const app = apiUtils.createExpressApp(settings); // List all SSH keys app.get("/", function(req,res) { diff --git a/packages/node_modules/@node-red/editor-api/lib/editor/theme.js b/packages/node_modules/@node-red/editor-api/lib/editor/theme.js index c21a7e6e7..c3e8f975e 100644 --- a/packages/node_modules/@node-red/editor-api/lib/editor/theme.js +++ b/packages/node_modules/@node-red/editor-api/lib/editor/theme.js @@ -19,6 +19,7 @@ var util = require("util"); var path = require("path"); var fs = require("fs"); var clone = require("clone"); +const apiUtil = require("../util") var defaultContext = { page: { @@ -27,8 +28,7 @@ var defaultContext = { tabicon: { icon: "red/images/node-red-icon-black.svg", colour: "#8f0000" - }, - version: require(path.join(__dirname,"../../package.json")).version + } }, header: { title: "Node-RED", @@ -40,6 +40,7 @@ var defaultContext = { vendorMonaco: "" } }; +var settings; var theme = null; var themeContext = clone(defaultContext); @@ -92,7 +93,8 @@ function serveFilesFromTheme(themeValue, themeApp, directory, baseDirectory) { } module.exports = { - init: function(settings, _runtimeAPI) { + init: function(_settings, _runtimeAPI) { + settings = _settings; runtimeAPI = _runtimeAPI; themeContext = clone(defaultContext); if (process.env.NODE_ENV == "development") { @@ -113,7 +115,15 @@ module.exports = { var url; themeSettings = {}; - themeApp = express(); + themeApp = apiUtil.createExpressApp(settings); + + const defaultServerSettings = { + "x-powered-by": false + } + const serverSettings = Object.assign({},defaultServerSettings,settings.httpServerOptions||{}); + for (const eOption in serverSettings) { + themeApp.set(eOption, serverSettings[eOption]); + } if (theme.page) { diff --git a/packages/node_modules/@node-red/editor-api/lib/index.js b/packages/node_modules/@node-red/editor-api/lib/index.js index 56f52a222..d9f34eafd 100644 --- a/packages/node_modules/@node-red/editor-api/lib/index.js +++ b/packages/node_modules/@node-red/editor-api/lib/index.js @@ -37,7 +37,6 @@ var adminApp; var server; var editor; - /** * Initialise the module. * @param {Object} settings The runtime settings @@ -49,7 +48,7 @@ var editor; function init(settings,_server,storage,runtimeAPI) { server = _server; if (settings.httpAdminRoot !== false) { - adminApp = express(); + adminApp = apiUtil.createExpressApp(settings); var cors = require('cors'); var corsHandler = cors({ @@ -64,14 +63,6 @@ function init(settings,_server,storage,runtimeAPI) { } } - var defaultServerSettings = { - "x-powered-by": false - } - var serverSettings = Object.assign({},defaultServerSettings,settings.httpServerOptions||{}); - for (var eOption in serverSettings) { - adminApp.set(eOption, serverSettings[eOption]); - } - auth.init(settings,storage); var maxApiRequestSize = settings.apiMaxLength || '5mb'; @@ -136,10 +127,11 @@ async function stop() { editor.stop(); } } + module.exports = { - init: init, - start: start, - stop: stop, + init, + start, + stop, /** * @memberof @node-red/editor-api diff --git a/packages/node_modules/@node-red/editor-api/lib/util.js b/packages/node_modules/@node-red/editor-api/lib/util.js index 621fd9e33..f1420235a 100644 --- a/packages/node_modules/@node-red/editor-api/lib/util.js +++ b/packages/node_modules/@node-red/editor-api/lib/util.js @@ -14,10 +14,9 @@ * limitations under the License. **/ +const express = require("express"); -var log = require("@node-red/util").log; // TODO: separate module -var i18n = require("@node-red/util").i18n; // TODO: separate module - +const { log, i18n } = require("@node-red/util"); module.exports = { errorHandler: function(err,req,res,next) { @@ -64,5 +63,17 @@ module.exports = { path: req.path, ip: (req.headers && req.headers['x-forwarded-for']) || (req.connection && req.connection.remoteAddress) || undefined } + }, + createExpressApp: function(settings) { + const app = express(); + + const defaultServerSettings = { + "x-powered-by": false + } + const serverSettings = Object.assign({},defaultServerSettings,settings.httpServerOptions||{}); + for (let eOption in serverSettings) { + app.set(eOption, serverSettings[eOption]); + } + return app } } diff --git a/packages/node_modules/@node-red/editor-api/package.json b/packages/node_modules/@node-red/editor-api/package.json index 6d3ddb5af..a19f95ad6 100644 --- a/packages/node_modules/@node-red/editor-api/package.json +++ b/packages/node_modules/@node-red/editor-api/package.json @@ -1,6 +1,6 @@ { "name": "@node-red/editor-api", - "version": "3.1.0-beta.2", + "version": "3.1.0-beta.3", "license": "Apache-2.0", "main": "./lib/index.js", "repository": { @@ -16,8 +16,8 @@ } ], "dependencies": { - "@node-red/util": "3.1.0-beta.2", - "@node-red/editor-client": "3.1.0-beta.2", + "@node-red/util": "3.1.0-beta.3", + "@node-red/editor-client": "3.1.0-beta.3", "bcryptjs": "2.4.3", "body-parser": "1.20.2", "clone": "2.1.2", diff --git a/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json b/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json index a5fad8443..aae72ab3a 100644 --- a/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json +++ b/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json @@ -504,6 +504,7 @@ "unassigned": "Unassigned", "global": "global", "workspace": "workspace", + "editor": "edit dialog", "selectAll": "Select all", "selectNone": "Select none", "selectAllConnected": "Select connected", diff --git a/packages/node_modules/@node-red/editor-client/locales/ja/editor.json b/packages/node_modules/@node-red/editor-client/locales/ja/editor.json index 84a1f4dad..1d08e9dd8 100644 --- a/packages/node_modules/@node-red/editor-client/locales/ja/editor.json +++ b/packages/node_modules/@node-red/editor-client/locales/ja/editor.json @@ -504,6 +504,7 @@ "unassigned": "未割当", "global": "グローバル", "workspace": "ワークスペース", + "editor": "編集ダイアログ", "selectAll": "全てのノードを選択", "selectNone": "選択を外す", "selectAllConnected": "接続されたノードを選択", @@ -1203,7 +1204,7 @@ "fr": "フランス語", "ja": "日本語", "ko": "韓国語", - "pt-BR":"ポルトガル語", + "pt-BR": "ポルトガル語", "ru": "ロシア語", "zh-CN": "中国語(簡体)", "zh-TW": "中国語(繁体)" diff --git a/packages/node_modules/@node-red/editor-client/package.json b/packages/node_modules/@node-red/editor-client/package.json index c81d2dfc3..b38970bb9 100644 --- a/packages/node_modules/@node-red/editor-client/package.json +++ b/packages/node_modules/@node-red/editor-client/package.json @@ -1,6 +1,6 @@ { "name": "@node-red/editor-client", - "version": "3.1.0-beta.2", + "version": "3.1.0-beta.3", "license": "Apache-2.0", "repository": { "type": "git", diff --git a/packages/node_modules/@node-red/editor-client/src/js/nodes.js b/packages/node_modules/@node-red/editor-client/src/js/nodes.js index d1df58de7..2a14a0244 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/nodes.js +++ b/packages/node_modules/@node-red/editor-client/src/js/nodes.js @@ -2201,16 +2201,27 @@ RED.nodes = (function() { } else if (n.type.substring(0,7) === "subflow") { var parentId = n.type.split(":")[1]; var subflow = subflow_denylist[parentId]||subflow_map[parentId]||getSubflow(parentId); - if (createNewIds || options.importMap[n.id] === "copy") { - parentId = subflow.id; - node.type = "subflow:"+parentId; - node._def = registry.getNodeType(node.type); - delete node.i; + if (!subflow){ + node._def = { + color:"#fee", + defaults: {}, + label: "unknown: "+n.type, + labelStyle: "red-ui-flow-node-label-italic", + outputs: n.outputs|| (n.wires && n.wires.length) || 0, + set: registry.getNodeSet("node-red/unknown") + } + } else { + if (createNewIds || options.importMap[n.id] === "copy") { + parentId = subflow.id; + node.type = "subflow:"+parentId; + node._def = registry.getNodeType(node.type); + delete node.i; + } + node.name = n.name; + node.outputs = subflow.out.length; + node.inputs = subflow.in.length; + node.env = n.env; } - node.name = n.name; - node.outputs = subflow.out.length; - node.inputs = subflow.in.length; - node.env = n.env; } else if (n.type === 'junction') { node._def = {defaults:{}} node._config.x = node.x diff --git a/packages/node_modules/@node-red/editor-client/src/js/red.js b/packages/node_modules/@node-red/editor-client/src/js/red.js index ce3b439e4..89464bd6c 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/red.js +++ b/packages/node_modules/@node-red/editor-client/src/js/red.js @@ -263,6 +263,7 @@ var RED = (function() { setTimeout(() => { RED.view.reveal(nodeToShow.id) window.location.hash = currentHash + RED.view.select(nodeToShow.id) if (showEditDialog) { RED.editor.edit(nodeToShow) } @@ -273,6 +274,7 @@ var RED = (function() { if (nodeToShow) { RED.view.reveal(nodeToShow.id) window.location.hash = currentHash + RED.view.select(nodeToShow.id) if (showEditDialog) { RED.editor.editGroup(nodeToShow) } diff --git a/packages/node_modules/@node-red/editor-client/src/js/settings.js b/packages/node_modules/@node-red/editor-client/src/js/settings.js index c9a24d636..85c930bfb 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/settings.js +++ b/packages/node_modules/@node-red/editor-client/src/js/settings.js @@ -33,8 +33,8 @@ RED.settings = (function () { if (!hasLocalStorage()) { return; } - if (key === "auth-tokens") { - localStorage.setItem(key, JSON.stringify(value)); + if (key.startsWith("auth-tokens")) { + localStorage.setItem(key+this.authTokensSuffix, JSON.stringify(value)); } else { RED.utils.setMessageProperty(userSettings,key,value); saveUserSettings(); @@ -52,8 +52,8 @@ RED.settings = (function () { if (!hasLocalStorage()) { return undefined; } - if (key === "auth-tokens") { - return JSON.parse(localStorage.getItem(key)); + if (key.startsWith("auth-tokens")) { + return JSON.parse(localStorage.getItem(key+this.authTokensSuffix)); } else { var v; try { v = RED.utils.getMessageProperty(userSettings,key); } catch(err) {} @@ -71,8 +71,8 @@ RED.settings = (function () { if (!hasLocalStorage()) { return; } - if (key === "auth-tokens") { - localStorage.removeItem(key); + if (key.startsWith("auth-tokens")) { + localStorage.removeItem(key+this.authTokensSuffix); } else { delete userSettings[key]; saveUserSettings(); @@ -99,6 +99,8 @@ RED.settings = (function () { var init = function (options, done) { var accessTokenMatch = /[?&]access_token=(.*?)(?:$|&)/.exec(window.location.search); + var path=window.location.pathname.slice(0,-1); + RED.settings.authTokensSuffix=path.replace(/\//g, '-'); if (accessTokenMatch) { var accessToken = accessTokenMatch[1]; RED.settings.set("auth-tokens",{access_token: accessToken}); diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/actionList.js b/packages/node_modules/@node-red/editor-client/src/js/ui/actionList.js index 4886deabb..d949899ca 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/actionList.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/actionList.js @@ -47,7 +47,7 @@ RED.actionList = (function() { var searchDiv = $("
",{class:"red-ui-search-container"}).appendTo(dialog); searchInput = $('').appendTo(searchDiv).searchBox({ change: function() { - filterTerm = $(this).val().trim(); + filterTerm = $(this).val().trim().toLowerCase(); filterTerms = filterTerm.split(" "); searchResults.editableList('filter'); searchResults.find("li.selected").removeClass("selected"); diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/clipboard.js b/packages/node_modules/@node-red/editor-client/src/js/ui/clipboard.js index d5c787c24..01a993a75 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/clipboard.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/clipboard.js @@ -37,13 +37,13 @@ RED.clipboard = (function() { // IE11 workaround // IE does not support data uri scheme for downloading data var blob = new Blob([data], { - type: "data:text/plain;charset=utf-8" + type: "data:application/json;charset=utf-8" }); navigator.msSaveBlob(blob, file); } else { var element = document.createElement('a'); - element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(data)); + element.setAttribute('href', 'data:application/json;charset=utf-8,' + encodeURIComponent(data)); element.setAttribute('download', file); element.style.display = 'none'; document.body.appendChild(element); diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/editor.js b/packages/node_modules/@node-red/editor-client/src/js/ui/editor.js index 45f2068d9..3c994491c 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/editor.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/editor.js @@ -45,11 +45,13 @@ RED.editor = (function() { var hasChanged; if (node.type.indexOf("subflow:")===0) { subflow = RED.nodes.subflow(node.type.substring(8)); - isValid = subflow.valid; - hasChanged = subflow.changed; - if (isValid === undefined) { - isValid = validateNode(subflow); + if (subflow){ + isValid = subflow.valid; hasChanged = subflow.changed; + if (isValid === undefined) { + isValid = validateNode(subflow); + hasChanged = subflow.changed; + } } validationErrors = validateNodeProperties(node, node._def.defaults, node); node.valid = isValid && validationErrors.length === 0; diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/editors/code-editors/monaco.js b/packages/node_modules/@node-red/editor-client/src/js/ui/editors/code-editors/monaco.js index e0bd94c8b..b18e01fbb 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/editors/code-editors/monaco.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/editors/code-editors/monaco.js @@ -1168,19 +1168,19 @@ RED.editor.codeEditor.monaco = (function() { // Warning: 4 // Error: 8 ed.getAnnotations = function getAnnotations() { - var aceCompatibleMarkers = []; + let aceCompatibleMarkers; try { - var _model = ed.getModel(); + const _model = ed.getModel(); if (_model !== null) { - var id = _model._languageId; // e.g. javascript - var ra = _model._associatedResource.authority; //e.g. model - var rp = _model._associatedResource.path; //e.g. /18 - var rs = _model._associatedResource.scheme; //e.g. inmemory - var modelMarkers = monaco.editor.getModelMarkers(_model) || []; - var thisEditorsMarkers = modelMarkers.filter(function (marker) { - var _ra = marker.resource.authority; //e.g. model - var _rp = marker.resource.path; //e.g. /18 - var _rs = marker.resource.scheme; //e.g. inmemory + const id = _model.getLanguageId(); // e.g. javascript + const ra = _model.uri.authority; // e.g. model + const rp = _model.uri.path; // e.g. /18 + const rs = _model.uri.scheme; // e.g. inmemory + const modelMarkers = monaco.editor.getModelMarkers(_model) || []; + const thisEditorsMarkers = modelMarkers.filter(function (marker) { + const _ra = marker.resource.authority; // e.g. model + const _rp = marker.resource.path; // e.g. /18 + const _rs = marker.resource.scheme; // e.g. inmemory return marker.owner == id && _ra === ra && _rp === rp && _rs === rs; }) aceCompatibleMarkers = thisEditorsMarkers.map(function (marker) { diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/env-var.js b/packages/node_modules/@node-red/editor-client/src/js/ui/env-var.js index db1a8e86f..998484858 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/env-var.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/env-var.js @@ -50,7 +50,11 @@ RED.envVar = (function() { var new_env = []; var items = list.editableList('items'); var credentials = gconf ? gconf.credentials : null; - + if (!gconf && list.editableList('length') === 0) { + // No existing global-config node and nothing in the list, + // so no need to do anything more + return + } if (!credentials) { credentials = { _ : {}, @@ -78,6 +82,12 @@ RED.envVar = (function() { if (gconf === null) { gconf = getGlobalConf(true); } + if (!gconf.credentials) { + gconf.credentials = { + _ : {}, + map: {} + }; + } if ((JSON.stringify(new_env) !== JSON.stringify(gconf.env)) || (JSON.stringify(credentials) !== JSON.stringify(gconf.credentials))) { gconf.env = new_env; diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/group.js b/packages/node_modules/@node-red/editor-client/src/js/ui/group.js index 738b6e38d..13056f09b 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/group.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/group.js @@ -401,7 +401,7 @@ RED.group = (function() { } } var existingGroup; - + var mergedEnv = {} // Second pass, ungroup any groups in the selection and add their contents // to the selection for (var i=0; i 0) { + n.env.forEach(env => { + mergedEnv[env.name] = env + }) + } ungroupHistoryEvent.groups.push(n); nodes = nodes.concat(ungroup(n)); } else { @@ -427,6 +432,7 @@ RED.group = (function() { group.style = existingGroup.style; group.name = existingGroup.name; } + group.env = Object.values(mergedEnv) RED.view.select({nodes:[group]}) } historyEvent.events.push({ diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/keyboard.js b/packages/node_modules/@node-red/editor-client/src/js/ui/keyboard.js index 40e11aa72..a081656fc 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/keyboard.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/keyboard.js @@ -491,7 +491,11 @@ RED.keyboard = (function() { okButton.attr("disabled",!valid); }); - var scopeSelect = $('').appendTo(scope); + var scopeSelect = $('').appendTo(scope); scopeSelect.i18n(); if (object.scope === "workspace") { object.scope = "red-ui-workspace"; diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/subflow.js b/packages/node_modules/@node-red/editor-client/src/js/ui/subflow.js index 903686e42..da38e6054 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/subflow.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/subflow.js @@ -46,7 +46,9 @@ RED.subflow = (function() { ''; function findAvailableSubflowIOPosition(subflow,isInput) { - var pos = {x:50,y:30}; + const scrollPos = RED.view.scroll() + const scaleFactor = RED.view.scale() + var pos = { x: (scrollPos[0]/scaleFactor)+50, y: (scrollPos[1]/scaleFactor)+30 }; if (!isInput) { pos.x += 110; } @@ -681,24 +683,23 @@ RED.subflow = (function() { var candidateOutputs = []; var candidateInputNodes = {}; - var boundingBox = [nodeList[0].x, - nodeList[0].y, - nodeList[0].x, - nodeList[0].y]; + var boundingBox = [nodeList[0].x-(nodeList[0].w/2), + nodeList[0].y-(nodeList[0].h/2), + nodeList[0].x+(nodeList[0].w/2), + nodeList[0].y+(nodeList[0].h/2)]; for (i=0;i { + console.log(`${i+1}\t${n.n.id}\t${n.n.type}`) + }) + } } return api; })(); @@ -226,6 +232,63 @@ RED.view = (function() { return api })(); + const selectedGroups = (function() { + let groups = new Set() + const api = { + add: function(g, includeNodes, addToMovingSet) { + groups.add(g) + if (!g.selected) { + g.selected = true; + g.dirty = true; + } + if (addToMovingSet !== false) { + movingSet.add(g); + } + if (includeNodes) { + var currentSet = new Set(movingSet.nodes()); + var allNodes = RED.group.getNodes(g,true); + allNodes.forEach(function(n) { + if (!currentSet.has(n)) { + movingSet.add(n) + } + n.dirty = true; + }) + } + selectedLinks.clearUnselected() + }, + remove: function(g) { + groups.delete(g) + if (g.selected) { + g.selected = false; + g.dirty = true; + } + const allNodes = RED.group.getNodes(g,true); + const nodeSet = new Set(allNodes); + nodeSet.add(g); + for (let i = movingSet.length()-1; i >= 0; i -= 1) { + const msn = movingSet.get(i); + if (nodeSet.has(msn.n) || msn.n === g) { + msn.n.selected = false; + msn.n.dirty = true; + movingSet.remove(msn.n,i) + } + } + selectedLinks.clearUnselected() + }, + length: () => groups.length, + forEach: (func) => { groups.forEach(func) }, + toArray: () => [...groups], + clear: function () { + groups.forEach(g => { + g.selected = false + g.dirty = true + }) + groups.clear() + } + } + return api + })() + function init() { @@ -1130,7 +1193,7 @@ RED.view = (function() { var touchTrigger = options.touchTrigger; if (targetGroup) { - selectGroup(targetGroup,false); + selectedGroups.add(targetGroup,false); RED.view.redraw(); } @@ -1456,7 +1519,7 @@ RED.view = (function() { clearSelection(); nn.selected = true; if (targetGroup) { - selectGroup(targetGroup,false); + selectedGroups.add(targetGroup,false); } movingSet.add(nn); updateActiveNodes(); @@ -1920,10 +1983,7 @@ RED.view = (function() { if (!movingSet.has(n) && !n.selected) { // group entirely within lasso if (n.x > x && n.y > y && n.x + n.w < x2 && n.y + n.h < y2) { - n.selected = true - n.dirty = true - var groupNodes = RED.group.getNodes(n,true); - groupNodes.forEach(gn => movingSet.add(gn)) + selectedGroups.add(n, true) } } }) @@ -2273,7 +2333,7 @@ RED.view = (function() { clearSelection(); activeGroups.forEach(function(g) { if (!g.g) { - selectGroup(g, true); + selectedGroups.add(g, true); if (!g.selected) { g.selected = true; g.dirty = true; @@ -2343,10 +2403,7 @@ RED.view = (function() { } movingSet.clear(); selectedLinks.clear(); - activeGroups.forEach(function(g) { - g.selected = false; - g.dirty = true; - }) + selectedGroups.clear(); } var lastSelection = null; @@ -2603,6 +2660,16 @@ RED.view = (function() { var result = RED.nodes.removeJunction(node) removedJunctions.push(node); removedLinks = removedLinks.concat(result.links); + if (node.g) { + var group = RED.nodes.group(node.g); + if (selectedGroups.indexOf(group) === -1) { + // Don't use RED.group.removeFromGroup as that emits + // a change event on the node - but we're deleting it + var index = group.nodes.indexOf(node); + group.nodes.splice(index,1); + RED.group.markDirty(group); + } + } } else { if (node.direction === "out") { removedSubflowOutputs.push(node); @@ -3425,7 +3492,7 @@ RED.view = (function() { if (!groupNodeSelectPrimed && !d.selected && d.g && RED.nodes.group(d.g).selected) { clearSelection(); - selectGroup(RED.nodes.group(d.g), false); + selectedGroups.add(RED.nodes.group(d.g), false); mousedown_node.selected = true; movingSet.add(mousedown_node); @@ -3846,14 +3913,14 @@ RED.view = (function() { lastClickNode = g; if (g.selected && (d3.event.ctrlKey||d3.event.metaKey)) { - deselectGroup(g); + selectedGroups.remove(g); d3.event.stopPropagation(); } else { if (!g.selected) { if (!d3.event.ctrlKey && !d3.event.metaKey) { clearSelection(); } - selectGroup(g,true);//!wasSelected); + selectedGroups.add(g,true);//!wasSelected); } if (d3.event.button != 2) { @@ -3869,45 +3936,6 @@ RED.view = (function() { d3.event.stopPropagation(); } - function selectGroup(g, includeNodes, addToMovingSet) { - if (!g.selected) { - g.selected = true; - g.dirty = true; - } - if (addToMovingSet !== false) { - movingSet.add(g); - } - if (includeNodes) { - var currentSet = new Set(movingSet.nodes()); - var allNodes = RED.group.getNodes(g,true); - allNodes.forEach(function(n) { - if (!currentSet.has(n)) { - movingSet.add(n) - } - n.dirty = true; - }) - } - selectedLinks.clearUnselected() - } - - function deselectGroup(g) { - if (g.selected) { - g.selected = false; - g.dirty = true; - } - const allNodes = RED.group.getNodes(g,true); - const nodeSet = new Set(allNodes); - nodeSet.add(g); - for (let i = movingSet.length()-1; i >= 0; i -= 1) { - const msn = movingSet.get(i); - if (nodeSet.has(msn.n) || msn.n === g) { - msn.n.selected = false; - msn.n.dirty = true; - movingSet.remove(msn.n,i) - } - } - selectedLinks.clearUnselected() - } function getGroupAt(x, y, ignoreSelected) { // x,y expected to be in node-co-ordinate space var candidateGroups = {}; @@ -4346,6 +4374,7 @@ RED.view = (function() { this.__port__.setAttribute("transform","translate(-5,"+((d.h/2)-5)+")"); this.__outputOutput__.setAttribute("transform","translate(20,"+((d.h/2)-8)+")"); this.__outputNumber__.setAttribute("transform","translate(20,"+((d.h/2)+7)+")"); + this.__outputNumber__.textContent = d.i+1; } d.dirty = false; } @@ -5888,11 +5917,10 @@ RED.view = (function() { if (movingSet.length() > 0) { movingSet.forEach(function(n) { if (n.n.type !== 'group') { - allNodes.add(n.n); + allNodes.add(n.n); } }); } - var selectedGroups = activeGroups.filter(function(g) { return g.selected }); selectedGroups.forEach(function(g) { var groupNodes = RED.group.getNodes(g,true); groupNodes.forEach(function(n) { @@ -6086,6 +6114,13 @@ RED.view = (function() { selectedNode.dirty = true; movingSet.clear(); movingSet.add(selectedNode); + } else { + selectedNode = RED.nodes.group(selection); + if (selectedNode) { + movingSet.clear(); + selectedGroups.clear() + selectedGroups.add(selectedNode) + } } } else if (selection) { if (selection.nodes) { @@ -6101,7 +6136,7 @@ RED.view = (function() { n.dirty = true; movingSet.add(n); } else { - selectGroup(n,true); + selectedGroups.add(n,true); } }) } @@ -6269,8 +6304,12 @@ RED.view = (function() { }) }, scroll: function(x,y) { - chart.scrollLeft(chart.scrollLeft()+x); - chart.scrollTop(chart.scrollTop()+y) + if (x !== undefined && y !== undefined) { + chart.scrollLeft(chart.scrollLeft()+x); + chart.scrollTop(chart.scrollTop()+y) + } else { + return [chart.scrollLeft(), chart.scrollTop()] + } }, clickNodeButton: function(n) { if (n._def.button) { diff --git a/packages/node_modules/@node-red/editor-client/src/sass/editor.scss b/packages/node_modules/@node-red/editor-client/src/sass/editor.scss index 8bc9a66ca..dcc8060d4 100644 --- a/packages/node_modules/@node-red/editor-client/src/sass/editor.scss +++ b/packages/node_modules/@node-red/editor-client/src/sass/editor.scss @@ -126,7 +126,7 @@ list-style-type: none; margin: 0; padding:0; - + overflow-wrap: anywhere; li { display: inline-block; padding:0; diff --git a/packages/node_modules/@node-red/editor-client/src/sass/palette.scss b/packages/node_modules/@node-red/editor-client/src/sass/palette.scss index fdfe77f09..e4071b9db 100644 --- a/packages/node_modules/@node-red/editor-client/src/sass/palette.scss +++ b/packages/node_modules/@node-red/editor-client/src/sass/palette.scss @@ -55,7 +55,7 @@ .red-ui-palette-search { position: relative; overflow: hidden; - background: var(--red-ui-secondary-background); + background: var(--red-ui-form-input-background); text-align: center; height: 35px; padding: 3px; diff --git a/packages/node_modules/@node-red/editor-client/src/sass/popover.scss b/packages/node_modules/@node-red/editor-client/src/sass/popover.scss index 7e504b59b..53d1c7cab 100644 --- a/packages/node_modules/@node-red/editor-client/src/sass/popover.scss +++ b/packages/node_modules/@node-red/editor-client/src/sass/popover.scss @@ -35,6 +35,7 @@ padding: 8px; border-radius: 2px; background: var(--red-ui-popover-background); + overflow-wrap: anywhere; } .red-ui-popover:after, .red-ui-popover:before { border: solid transparent; diff --git a/packages/node_modules/@node-red/editor-client/src/sass/search.scss b/packages/node_modules/@node-red/editor-client/src/sass/search.scss index f5502715b..66ade8798 100644 --- a/packages/node_modules/@node-red/editor-client/src/sass/search.scss +++ b/packages/node_modules/@node-red/editor-client/src/sass/search.scss @@ -108,6 +108,8 @@ } .red-ui-search-result-node-label { color: var(--red-ui-secondary-text-color); + width: 240px; + overflow-wrap: anywhere; } } diff --git a/packages/node_modules/@node-red/editor-client/src/sass/tab-info.scss b/packages/node_modules/@node-red/editor-client/src/sass/tab-info.scss index f6bf2473c..313025b27 100644 --- a/packages/node_modules/@node-red/editor-client/src/sass/tab-info.scss +++ b/packages/node_modules/@node-red/editor-client/src/sass/tab-info.scss @@ -31,6 +31,7 @@ > span { display: inline-block; margin-left: 5px; + overflow-wrap: anywhere; } border-bottom: 1px solid var(--red-ui-secondary-border-color); } diff --git a/packages/node_modules/@node-red/editor-client/src/tours/welcome.js b/packages/node_modules/@node-red/editor-client/src/tours/welcome.js index a34bee6e8..d6305e01b 100644 --- a/packages/node_modules/@node-red/editor-client/src/tours/welcome.js +++ b/packages/node_modules/@node-red/editor-client/src/tours/welcome.js @@ -1,20 +1,21 @@ export default { - version: "3.1.0-beta.2", + version: "3.1.0-beta.3", steps: [ { titleIcon: "fa fa-map-o", title: { - "en-US": "Welcome to Node-RED 3.1 Beta 2!", - "ja": "Node-RED 3.1 ベータ1へようこそ!" + "en-US": "Welcome to Node-RED 3.1 Beta 3!", + "ja": "Node-RED 3.1 ベータ3へようこそ!" }, description: { - "en-US": "

This is the second beta release for 3.1.0 and we have a few new features to tell you about.

", - // "ja": "

これは3.1.0の最初のベータリリースです。いくつかの新機能について説明します。

" + "en-US": "

This is the third beta release for 3.1.0. This is mostly a bug fix release, so you can skip this tour if you've tried the other betas.

If not, stick around to see what's new in Node-RED 3.1.

", + "ja": "

これは3.1.0の3回目のベータリリースです。不具合修正のリリースのため、もし他のベータ版を試したことがある場合は、このツアーを読み飛ばしてもかまいません。

そうでない場合は、Node-RED 3.1の新機能を確認してください。

" } }, { title: { "en-US": "New ways to work with groups", + "ja": "グループの新たな操作方法" }, description: { "en-US": `

We have changed how you interact with groups in the editor.

@@ -23,49 +24,67 @@ export default {
  • They can be reordered using the Moving Forwards and Move Backwards actions
  • Multiple nodes can be dragged into a group in one go
  • Holding Alt when dragging a node will *remove* it from its group
  • + `, + "ja": `

    エディタ上のグループの操作が変更されました。

    +
      +
    • グループ内のノードをクリックする時に、グループが邪魔をすることが無くなりました。
    • +
    • 「前面へ移動」と「背面へ移動」の動作を用いて、複数のグループの表示順序を変えることができます。
    • +
    • グループ内へ一度に複数のノードをドラッグできるようになりました。
    • +
    • Alt を押したまま、グループ内のノードをドラッグすると、そのグループから *除く* ことができます。
    ` } }, { title: { "en-US": "Change notification on tabs", + "ja": "タブ上の変更通知" }, image: 'images/tab-changes.png', description: { "en-US": `

    When a tab contains undeployed changes it now shows the same style of change icon used by nodes.

    This will make it much easier to track down changes when you're - working across multiple flows.

    ` + working across multiple flows.

    `, + "ja": `

    タブ内にデプロイされていない変更が存在する時は、ノードと同じスタイルで変更の印が表示されるようになりました。

    +

    これによって複数のフローを編集している時に、変更を見つけるのが簡単になりました。

    ` } }, { title: { "en-US": "A bigger canvas to work with", + "ja": "より広くなった作業キャンバス" }, description: { "en-US": `

    The default canvas size has been increased so you can fit more into one flow.

    We still recommend using tools such as subflows and Link Nodes to help - keep things organised, but now you have more room to work in.

    ` + keep things organised, but now you have more room to work in.

    `, + "ja": `

    標準のキャンバスが広くなったため、1つのフローに沢山のものを含めることができるようになりました。

    +

    引き続き、サブフローやリンクノードなどの方法を用いて整理することをお勧めしますが、作業できる場所が増えました。

    ` } }, { title: { "en-US": "Finding help", + "ja": "ヘルプを見つける" }, image: 'images/node-help.png', description: { "en-US": `

    All node edit dialogs now include a link to that node's help in the footer.

    -

    Clicking it will open up the Help sidebar showing the help for that node.

    ` +

    Clicking it will open up the Help sidebar showing the help for that node.

    `, + "ja": `

    全てのノードの編集ダイアログの下に、ノードのヘルプへのリンクが追加されました。

    +

    これをクリックすると、ノードのヘルプサイドバーが表示されます。

    ` } }, { title: { "en-US": "And lots more...", + "ja": "そしてさらに沢山あります..." }, description: { - "en-US": `

    Of course we have everything from 3.1.0-beta.1 as well....

    ` + "en-US": `

    Of course we have everything from 3.1.0-beta.1 as well....

    `, + "ja": `

    もちろん3.1.0 ベータ1の全ての機能があります....

    ` } }, { @@ -134,13 +153,13 @@ export default { { title: { "en-US": "Adding Mermaid Diagrams", - "ja": "Mermaidの図を追加" + "ja": "Mermaid図を追加" }, image: 'images/mermaid.png', description: { "en-US": `

    You can also add Mermaid diagrams directly into your node or flow descriptions.

    This gives you much richer options for documenting your flows.

    `, - "ja": `

    ノードやフローの説明に、Mermaidの図を直接追加することもできます。

    + "ja": `

    ノードやフローの説明に、Mermaid図を直接追加することもできます。

    これによって、フローを説明する文書作成の選択肢がより多くなります。

    ` }, }, diff --git a/packages/node_modules/@node-red/editor-client/src/types/node-red/func.d.ts b/packages/node_modules/@node-red/editor-client/src/types/node-red/func.d.ts index fd2adcbd8..59f8a8bd7 100644 --- a/packages/node_modules/@node-red/editor-client/src/types/node-red/func.d.ts +++ b/packages/node_modules/@node-red/editor-client/src/types/node-red/func.d.ts @@ -1,6 +1,5 @@ -/* NOTE: Do not edit directly! This file is generated using `npm run update-types` in https://github.com/node-red/nr-monaco-build */ - +/* NOTE: Do not edit directly! This file is generated using `npm run update-types` in https://github.com/Steve-Mcl/monaco-editor-esm-i18n */ interface NodeMessage { topic?: string; @@ -281,5 +280,5 @@ declare class env { * @example * ```const flowName = env.get("NR_FLOW_NAME");``` */ - static get(name:string) :string; + static get(name:string) :any; } diff --git a/packages/node_modules/@node-red/editor-client/src/types/node/crypto.d.ts b/packages/node_modules/@node-red/editor-client/src/types/node/crypto.d.ts index 027b7d750..7983fc0c0 100644 --- a/packages/node_modules/@node-red/editor-client/src/types/node/crypto.d.ts +++ b/packages/node_modules/@node-red/editor-client/src/types/node/crypto.d.ts @@ -1279,6 +1279,7 @@ declare module 'crypto' { interface VerifyKeyObjectInput extends SigningOptions { key: KeyObject; } + interface VerifyJsonWebKeyInput extends JsonWebKeyInput, SigningOptions {} type KeyLike = string | Buffer | KeyObject; /** * The `Sign` class is a utility for generating signatures. It can be used in one @@ -1433,8 +1434,8 @@ declare module 'crypto' { * be passed instead of a public key. * @since v0.1.92 */ - verify(object: KeyLike | VerifyKeyObjectInput | VerifyPublicKeyInput, signature: NodeJS.ArrayBufferView): boolean; - verify(object: KeyLike | VerifyKeyObjectInput | VerifyPublicKeyInput, signature: string, signature_format?: BinaryToTextEncoding): boolean; + verify(object: KeyLike | VerifyKeyObjectInput | VerifyPublicKeyInput | VerifyJsonWebKeyInput, signature: NodeJS.ArrayBufferView): boolean; + verify(object: KeyLike | VerifyKeyObjectInput | VerifyPublicKeyInput | VerifyJsonWebKeyInput, signature: string, signature_format?: BinaryToTextEncoding): boolean; } /** * Creates a `DiffieHellman` key exchange object using the supplied `prime` and an @@ -2941,11 +2942,16 @@ declare module 'crypto' { * If the `callback` function is provided this function uses libuv's threadpool. * @since v12.0.0 */ - function verify(algorithm: string | null | undefined, data: NodeJS.ArrayBufferView, key: KeyLike | VerifyKeyObjectInput | VerifyPublicKeyInput, signature: NodeJS.ArrayBufferView): boolean; function verify( algorithm: string | null | undefined, data: NodeJS.ArrayBufferView, - key: KeyLike | VerifyKeyObjectInput | VerifyPublicKeyInput, + key: KeyLike | VerifyKeyObjectInput | VerifyPublicKeyInput | VerifyJsonWebKeyInput, + signature: NodeJS.ArrayBufferView + ): boolean; + function verify( + algorithm: string | null | undefined, + data: NodeJS.ArrayBufferView, + key: KeyLike | VerifyKeyObjectInput | VerifyPublicKeyInput | VerifyJsonWebKeyInput, signature: NodeJS.ArrayBufferView, callback: (error: Error | null, result: boolean) => void ): void; @@ -3094,12 +3100,13 @@ declare module 'crypto' { */ disableEntropyCache?: boolean | undefined; } + type UUID = `${string}-${string}-${string}-${string}-${string}`; /** * Generates a random [RFC 4122](https://www.rfc-editor.org/rfc/rfc4122.txt) version 4 UUID. The UUID is generated using a * cryptographic pseudorandom number generator. * @since v15.6.0 */ - function randomUUID(options?: RandomUUIDOptions): string; + function randomUUID(options?: RandomUUIDOptions): UUID; interface X509CheckOptions { /** * @default 'always' @@ -3558,7 +3565,7 @@ declare module 'crypto' { * The UUID is generated using a cryptographic pseudorandom number generator. * @since v16.7.0 */ - randomUUID(): string; + randomUUID(): UUID; CryptoKey: CryptoKeyConstructor; } // This constructor throws ILLEGAL_CONSTRUCTOR so it should not be newable. diff --git a/packages/node_modules/@node-red/editor-client/src/types/node/desktop.ini b/packages/node_modules/@node-red/editor-client/src/types/node/desktop.ini deleted file mode 100644 index d957fd188..000000000 --- a/packages/node_modules/@node-red/editor-client/src/types/node/desktop.ini +++ /dev/null @@ -1,4 +0,0 @@ -[ViewState] -Mode= -Vid= -FolderType=Generic diff --git a/packages/node_modules/@node-red/editor-client/src/types/node/dns.d.ts b/packages/node_modules/@node-red/editor-client/src/types/node/dns.d.ts index 65db4e843..b45b0ec6e 100644 --- a/packages/node_modules/@node-red/editor-client/src/types/node/dns.d.ts +++ b/packages/node_modules/@node-red/editor-client/src/types/node/dns.d.ts @@ -174,7 +174,7 @@ declare module 'dns' { type: 'AAAA'; } export interface CaaRecord { - critial: number; + critical: number; issue?: string | undefined; issuewild?: string | undefined; iodef?: string | undefined; diff --git a/packages/node_modules/@node-red/editor-client/src/types/node/globals.d.ts b/packages/node_modules/@node-red/editor-client/src/types/node/globals.d.ts index ca9edd437..304f5a976 100644 --- a/packages/node_modules/@node-red/editor-client/src/types/node/globals.d.ts +++ b/packages/node_modules/@node-red/editor-client/src/types/node/globals.d.ts @@ -56,7 +56,7 @@ interface AbortController { /** * Invoking this method will set this object's AbortSignal's aborted flag and signal to any observers that the associated activity is to be aborted. */ - abort(): void; + abort(reason?: any): void; } /** A signal object that allows you to communicate with a DOM request (such as a Fetch) and abort it if required via an AbortController object. */ diff --git a/packages/node_modules/@node-red/editor-client/src/types/node/stream.d.ts b/packages/node_modules/@node-red/editor-client/src/types/node/stream.d.ts index d32cbf9ce..d71f5a733 100644 --- a/packages/node_modules/@node-red/editor-client/src/types/node/stream.d.ts +++ b/packages/node_modules/@node-red/editor-client/src/types/node/stream.d.ts @@ -862,6 +862,105 @@ declare module 'stream' { end(chunk: any, encoding?: BufferEncoding, cb?: () => void): this; cork(): void; uncork(): void; + /** + * Event emitter + * The defined events on documents including: + * 1. close + * 2. data + * 3. drain + * 4. end + * 5. error + * 6. finish + * 7. pause + * 8. pipe + * 9. readable + * 10. resume + * 11. unpipe + */ + addListener(event: 'close', listener: () => void): this; + addListener(event: 'data', listener: (chunk: any) => void): this; + addListener(event: 'drain', listener: () => void): this; + addListener(event: 'end', listener: () => void): this; + addListener(event: 'error', listener: (err: Error) => void): this; + addListener(event: 'finish', listener: () => void): this; + addListener(event: 'pause', listener: () => void): this; + addListener(event: 'pipe', listener: (src: Readable) => void): this; + addListener(event: 'readable', listener: () => void): this; + addListener(event: 'resume', listener: () => void): this; + addListener(event: 'unpipe', listener: (src: Readable) => void): this; + addListener(event: string | symbol, listener: (...args: any[]) => void): this; + emit(event: 'close'): boolean; + emit(event: 'data', chunk: any): boolean; + emit(event: 'drain'): boolean; + emit(event: 'end'): boolean; + emit(event: 'error', err: Error): boolean; + emit(event: 'finish'): boolean; + emit(event: 'pause'): boolean; + emit(event: 'pipe', src: Readable): boolean; + emit(event: 'readable'): boolean; + emit(event: 'resume'): boolean; + emit(event: 'unpipe', src: Readable): boolean; + emit(event: string | symbol, ...args: any[]): boolean; + on(event: 'close', listener: () => void): this; + on(event: 'data', listener: (chunk: any) => void): this; + on(event: 'drain', listener: () => void): this; + on(event: 'end', listener: () => void): this; + on(event: 'error', listener: (err: Error) => void): this; + on(event: 'finish', listener: () => void): this; + on(event: 'pause', listener: () => void): this; + on(event: 'pipe', listener: (src: Readable) => void): this; + on(event: 'readable', listener: () => void): this; + on(event: 'resume', listener: () => void): this; + on(event: 'unpipe', listener: (src: Readable) => void): this; + on(event: string | symbol, listener: (...args: any[]) => void): this; + once(event: 'close', listener: () => void): this; + once(event: 'data', listener: (chunk: any) => void): this; + once(event: 'drain', listener: () => void): this; + once(event: 'end', listener: () => void): this; + once(event: 'error', listener: (err: Error) => void): this; + once(event: 'finish', listener: () => void): this; + once(event: 'pause', listener: () => void): this; + once(event: 'pipe', listener: (src: Readable) => void): this; + once(event: 'readable', listener: () => void): this; + once(event: 'resume', listener: () => void): this; + once(event: 'unpipe', listener: (src: Readable) => void): this; + once(event: string | symbol, listener: (...args: any[]) => void): this; + prependListener(event: 'close', listener: () => void): this; + prependListener(event: 'data', listener: (chunk: any) => void): this; + prependListener(event: 'drain', listener: () => void): this; + prependListener(event: 'end', listener: () => void): this; + prependListener(event: 'error', listener: (err: Error) => void): this; + prependListener(event: 'finish', listener: () => void): this; + prependListener(event: 'pause', listener: () => void): this; + prependListener(event: 'pipe', listener: (src: Readable) => void): this; + prependListener(event: 'readable', listener: () => void): this; + prependListener(event: 'resume', listener: () => void): this; + prependListener(event: 'unpipe', listener: (src: Readable) => void): this; + prependListener(event: string | symbol, listener: (...args: any[]) => void): this; + prependOnceListener(event: 'close', listener: () => void): this; + prependOnceListener(event: 'data', listener: (chunk: any) => void): this; + prependOnceListener(event: 'drain', listener: () => void): this; + prependOnceListener(event: 'end', listener: () => void): this; + prependOnceListener(event: 'error', listener: (err: Error) => void): this; + prependOnceListener(event: 'finish', listener: () => void): this; + prependOnceListener(event: 'pause', listener: () => void): this; + prependOnceListener(event: 'pipe', listener: (src: Readable) => void): this; + prependOnceListener(event: 'readable', listener: () => void): this; + prependOnceListener(event: 'resume', listener: () => void): this; + prependOnceListener(event: 'unpipe', listener: (src: Readable) => void): this; + prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; + removeListener(event: 'close', listener: () => void): this; + removeListener(event: 'data', listener: (chunk: any) => void): this; + removeListener(event: 'drain', listener: () => void): this; + removeListener(event: 'end', listener: () => void): this; + removeListener(event: 'error', listener: (err: Error) => void): this; + removeListener(event: 'finish', listener: () => void): this; + removeListener(event: 'pause', listener: () => void): this; + removeListener(event: 'pipe', listener: (src: Readable) => void): this; + removeListener(event: 'readable', listener: () => void): this; + removeListener(event: 'resume', listener: () => void): this; + removeListener(event: 'unpipe', listener: (src: Readable) => void): this; + removeListener(event: string | symbol, listener: (...args: any[]) => void): this; } type TransformCallback = (error?: Error | null, data?: any) => void; interface TransformOptions extends DuplexOptions { diff --git a/packages/node_modules/@node-red/editor-client/src/types/node/test.d.ts b/packages/node_modules/@node-red/editor-client/src/types/node/test.d.ts index 8189c30dd..27e4d1530 100644 --- a/packages/node_modules/@node-red/editor-client/src/types/node/test.d.ts +++ b/packages/node_modules/@node-red/editor-client/src/types/node/test.d.ts @@ -45,7 +45,7 @@ declare module 'node:test' { function test(options?: TestOptions, fn?: TestFn): Promise; function test(fn?: TestFn): Promise; - /** + /* * @since v16.17.0 * @param name The name of the suite, which is displayed when reporting suite results. * Default: The `name` property of fn, or `''` if `fn` does not have a name. @@ -57,7 +57,7 @@ declare module 'node:test' { function describe(options?: TestOptions, fn?: SuiteFn): void; function describe(fn?: SuiteFn): void; - /** + /* * @since v16.17.0 * @param name The name of the test, which is displayed when reporting test results. * Default: The `name` property of fn, or `''` if `fn` does not have a name. diff --git a/packages/node_modules/@node-red/editor-client/src/vendor/monaco/dist/css.worker.js b/packages/node_modules/@node-red/editor-client/src/vendor/monaco/dist/css.worker.js index f41f6d7c3..cfb0d0cc0 100644 --- a/packages/node_modules/@node-red/editor-client/src/vendor/monaco/dist/css.worker.js +++ b/packages/node_modules/@node-red/editor-client/src/vendor/monaco/dist/css.worker.js @@ -1,2 +1,2 @@ /*! For license information please see css.worker.js.LICENSE.txt */ -(()=>{"use strict";var e={};e.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new po("return this")()}catch(e){if("object"==typeof window)return window}}();const t=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout((()=>{if(e.stack){if(s.isErrorNoTelemetry(e))throw new s(e.message+"\n\n"+e.stack);throw new Error(e.message+"\n\n"+e.stack)}throw e}),0)}}emit(e){this.listeners.forEach((t=>{t(e)}))}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}};function n(e){var n;(n=e)instanceof o||n instanceof Error&&n.name===i&&n.message===i||t.onUnexpectedError(e)}function r(e){if(e instanceof Error){const{name:t,message:n}=e;return{$isError:!0,name:t,message:n,stack:e.stacktrace||e.stack,noTelemetry:s.isErrorNoTelemetry(e)}}return e}const i="Canceled";class o extends Error{constructor(){super(i),this.name=this.message}}Error;class s extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof s)return e;const t=new s;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return"CodeExpectedError"===e.name}}class a extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,a.prototype)}}function l(e){const t=this;let n,r=!1;return function(){return r||(r=!0,n=e.apply(t,arguments)),n}}var c;!function(e){function t(e){return e&&"object"==typeof e&&"function"==typeof e[Symbol.iterator]}e.is=t;const n=Object.freeze([]);function*r(e){yield e}e.empty=function(){return n},e.single=r,e.wrap=function(e){return t(e)?e:r(e)},e.from=function(e){return e||n},e.isEmpty=function(e){return!e||!0===e[Symbol.iterator]().next().done},e.first=function(e){return e[Symbol.iterator]().next().value},e.some=function(e,t){for(const n of e)if(t(n))return!0;return!1},e.find=function(e,t){for(const n of e)if(t(n))return n},e.filter=function*(e,t){for(const n of e)t(n)&&(yield n)},e.map=function*(e,t){let n=0;for(const r of e)yield t(r,n++)},e.concat=function*(...e){for(const t of e)for(const e of t)yield e},e.reduce=function(e,t,n){let r=n;for(const n of e)r=t(r,n);return r},e.slice=function*(e,t,n=e.length){for(t<0&&(t+=e.length),n<0?n+=e.length:n>e.length&&(n=e.length);ti}]}}(c||(c={}));var h;function d(e){if(c.is(e)){const t=[];for(const n of e)if(n)try{n.dispose()}catch(e){t.push(e)}if(1===t.length)throw t[0];if(t.length>1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}if(e)return e.dispose(),e}function p(e){const t={dispose:l((()=>{e()}))};return t}class u{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{d(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?u.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}}u.DISABLE_DISPOSED_WARNING=!1;class m{constructor(){this._store=new u,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}}m.None=Object.freeze({dispose(){}});class f{constructor(){this.dispose=()=>{},this.unset=()=>{},this.isset=()=>!1}set(e){let t=e;return this.unset=()=>t=void 0,this.isset=()=>void 0!==t,this.dispose=()=>{t&&(t(),t=void 0)},this}}Symbol.iterator;class g{constructor(e){this.element=e,this.next=g.Undefined,this.prev=g.Undefined}}g.Undefined=new g(void 0);class b{constructor(){this._first=g.Undefined,this._last=g.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===g.Undefined}clear(){let e=this._first;for(;e!==g.Undefined;){const t=e.next;e.prev=g.Undefined,e.next=g.Undefined,e=t}this._first=g.Undefined,this._last=g.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){const n=new g(e);if(this._first===g.Undefined)this._first=n,this._last=n;else if(t){const e=this._last;this._last=n,n.prev=e,e.next=n}else{const e=this._first;this._first=n,n.next=e,e.prev=n}this._size+=1;let r=!1;return()=>{r||(r=!0,this._remove(n))}}shift(){if(this._first!==g.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==g.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==g.Undefined&&e.next!==g.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===g.Undefined&&e.next===g.Undefined?(this._first=g.Undefined,this._last=g.Undefined):e.next===g.Undefined?(this._last=this._last.prev,this._last.next=g.Undefined):e.prev===g.Undefined&&(this._first=this._first.next,this._first.prev=g.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==g.Undefined;)yield e.element,e=e.next}}function v(e,t){let n;return n=0===t.length?e:e.replace(/\{(\d+)\}/g,(function(e,n){const r=n[0];return void 0!==t[r]?t[r]:e})),n}const y="en";let w,x,S=!1,k=!1,C=!1,_=!1,E=!1,F=!1,R=!1,N=!1,D=!1,T=!1,A=null,z=null;const I="object"==typeof self?self:"object"==typeof e.g?e.g:{};let M;void 0!==I.vscode&&void 0!==I.vscode.process?M=I.vscode.process:"undefined"!=typeof process&&(M=process);const P="string"==typeof(null===(h=null==M?void 0:M.versions)||void 0===h?void 0:h.electron),L=P&&"renderer"===(null==M?void 0:M.type);if("object"!=typeof navigator||L)if("object"==typeof M){S="win32"===M.platform,k="darwin"===M.platform,C="linux"===M.platform,_=C&&!!M.env.SNAP&&!!M.env.SNAP_REVISION,R=P,D=!!M.env.CI||!!M.env.BUILD_ARTIFACTSTAGINGDIRECTORY,w=y,A=y;const e=M.env.VSCODE_NLS_CONFIG;if(e)try{const t=JSON.parse(e),n=t.availableLanguages["*"];w=t.locale,A=n||y,z=t._translationsConfigFile}catch(e){}E=!0}else console.error("Unable to resolve platform.");else x=navigator.userAgent,S=x.indexOf("Windows")>=0,k=x.indexOf("Macintosh")>=0,N=(x.indexOf("Macintosh")>=0||x.indexOf("iPad")>=0||x.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,C=x.indexOf("Linux")>=0,T=(null==x?void 0:x.indexOf("Mobi"))>=0,F=!0,function(e,t,n){const r="object"==typeof t?t.key:t;let i=(((self.MonacoLocale||{}||{}).data||{})[e]||{})[r];i||(i=n);const o=[];for(let e=3;e{if(K){const e=[];I.addEventListener("message",(t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let n=0,r=e.length;n=0),j=(V&&V.indexOf("Firefox"),!B&&V&&V.indexOf("Safari"),V&&V.indexOf("Edg/"),V&&V.indexOf("Android"),I.performance&&"function"==typeof I.performance.now);class q{static create(e=!0){return new q(e)}constructor(e){this._highResolution=j&&e,this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}elapsed(){return-1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime}_now(){return this._highResolution?I.performance.now():Date.now()}}var $,H;!function(e){function t(e){return(t,n=null,r)=>{let i,o=!1;return i=e((e=>{if(!o)return i?i.dispose():o=!0,t.call(n,e)}),null,r),o&&i.dispose(),i}}function n(e,t,n){return s(((n,r=null,i)=>e((e=>n.call(r,t(e))),null,i)),n)}function r(e,t,n){return s(((n,r=null,i)=>e((e=>{t(e),n.call(r,e)}),null,i)),n)}function i(e,t,n){return s(((n,r=null,i)=>e((e=>t(e)&&n.call(r,e)),null,i)),n)}function o(e,t,r,i){let o=r;return n(e,(e=>(o=t(o,e),o)),i)}function s(e,t){let n;const r=new Z({onWillAddFirstListener(){n=e(r.fire,r)},onDidRemoveLastListener(){null==n||n.dispose()}});return null==t||t.add(r),r.event}function a(e,t,n=100,r=!1,i=!1,o,s){let a,l,c,h,d=0;const p=new Z({leakWarningThreshold:o,onWillAddFirstListener(){a=e((e=>{d++,l=t(l,e),r&&!c&&(p.fire(l),l=void 0),h=()=>{const e=l;l=void 0,c=void 0,(!r||d>1)&&p.fire(e),d=0},"number"==typeof n?(clearTimeout(c),c=setTimeout(h,n)):void 0===c&&(c=0,queueMicrotask(h))}))},onWillRemoveListener(){i&&d>0&&(null==h||h())},onDidRemoveLastListener(){h=void 0,a.dispose()}});return null==s||s.add(p),p.event}function l(e,t=((e,t)=>e===t),n){let r,o=!0;return i(e,(e=>{const n=o||!t(e,r);return o=!1,r=e,n}),n)}e.None=()=>m.None,e.defer=function(e,t){return a(e,(()=>{}),0,void 0,!0,void 0,t)},e.once=t,e.map=n,e.forEach=r,e.filter=i,e.signal=function(e){return e},e.any=function(...e){return(t,n=null,r)=>function(...e){return p((()=>d(e)))}(...e.map((e=>e((e=>t.call(n,e)),null,r))))},e.reduce=o,e.debounce=a,e.accumulate=function(t,n=0,r){return e.debounce(t,((e,t)=>e?(e.push(t),e):[t]),n,void 0,!0,void 0,r)},e.latch=l,e.split=function(t,n,r){return[e.filter(t,n,r),e.filter(t,(e=>!n(e)),r)]},e.buffer=function(e,t=!1,n=[]){let r=n.slice(),i=e((e=>{r?r.push(e):s.fire(e)}));const o=()=>{null==r||r.forEach((e=>s.fire(e))),r=null},s=new Z({onWillAddFirstListener(){i||(i=e((e=>s.fire(e))))},onDidAddFirstListener(){r&&(t?setTimeout(o):o())},onDidRemoveLastListener(){i&&i.dispose(),i=null}});return s.event};class c{constructor(e){this.event=e,this.disposables=new u}map(e){return new c(n(this.event,e,this.disposables))}forEach(e){return new c(r(this.event,e,this.disposables))}filter(e){return new c(i(this.event,e,this.disposables))}reduce(e,t){return new c(o(this.event,e,t,this.disposables))}latch(){return new c(l(this.event,void 0,this.disposables))}debounce(e,t=100,n=!1,r=!1,i){return new c(a(this.event,e,t,n,r,i,this.disposables))}on(e,t,n){return this.event(e,t,n)}once(e,n,r){return t(this.event)(e,n,r)}dispose(){this.disposables.dispose()}}e.chain=function(e){return new c(e)},e.fromNodeEventEmitter=function(e,t,n=(e=>e)){const r=(...e)=>i.fire(n(...e)),i=new Z({onWillAddFirstListener:()=>e.on(t,r),onDidRemoveLastListener:()=>e.removeListener(t,r)});return i.event},e.fromDOMEventEmitter=function(e,t,n=(e=>e)){const r=(...e)=>i.fire(n(...e)),i=new Z({onWillAddFirstListener:()=>e.addEventListener(t,r),onDidRemoveLastListener:()=>e.removeEventListener(t,r)});return i.event},e.toPromise=function(e){return new Promise((n=>t(e)(n)))},e.runAndSubscribe=function(e,t){return t(void 0),e((e=>t(e)))},e.runAndSubscribeWithStore=function(e,t){let n=null;function r(e){null==n||n.dispose(),n=new u,t(e,n)}r(void 0);const i=e((e=>r(e)));return p((()=>{i.dispose(),null==n||n.dispose()}))};class h{constructor(e,t){this.obs=e,this._counter=0,this._hasChanged=!1;const n={onWillAddFirstListener:()=>{e.addObserver(this)},onDidRemoveLastListener:()=>{e.removeObserver(this)}};this.emitter=new Z(n),t&&t.add(this.emitter)}beginUpdate(e){this._counter++}handleChange(e,t){this._hasChanged=!0}endUpdate(e){0==--this._counter&&this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this.obs.get()))}}e.fromObservable=function(e,t){return new h(e,t).emitter.event}}($||($={}));class G{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${G._idPool++}`,G.all.add(this)}start(e){this._stopWatch=new q(!0),this.listenerCount=e}stop(){if(this._stopWatch){const e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}}G.all=new Set,G._idPool=0;class J{constructor(e,t=Math.random().toString(18).slice(2,5)){this.threshold=e,this.name=t,this._warnCountdown=0}dispose(){var e;null===(e=this._stacks)||void 0===e||e.clear()}check(e,t){const n=this.threshold;if(n<=0||t{const t=this._stacks.get(e.value)||0;this._stacks.set(e.value,t-1)}}}class X{static create(){var e;return new X(null!==(e=(new Error).stack)&&void 0!==e?e:"")}constructor(e){this.value=e}print(){console.warn(this.value.split("\n").slice(2).join("\n"))}}class Y{constructor(e,t,n){this.callback=e,this.callbackThis=t,this.stack=n,this.subscription=new f}invoke(e){this.callback.call(this.callbackThis,e)}}class Z{constructor(e){var t,n,r,i,o;this._disposed=!1,this._options=e,this._leakageMon=(null===(t=this._options)||void 0===t?void 0:t.leakWarningThreshold)?new J(null!==(r=null===(n=this._options)||void 0===n?void 0:n.leakWarningThreshold)&&void 0!==r?r:-1):void 0,this._perfMon=(null===(i=this._options)||void 0===i?void 0:i._profName)?new G(this._options._profName):void 0,this._deliveryQueue=null===(o=this._options)||void 0===o?void 0:o.deliveryQueue}dispose(){var e,t,n,r;this._disposed||(this._disposed=!0,this._listeners&&this._listeners.clear(),null===(e=this._deliveryQueue)||void 0===e||e.clear(this),null===(n=null===(t=this._options)||void 0===t?void 0:t.onDidRemoveLastListener)||void 0===n||n.call(t),null===(r=this._leakageMon)||void 0===r||r.dispose())}get event(){return this._event||(this._event=(e,t,n)=>{var r,i,o;if(this._listeners||(this._listeners=new b),this._leakageMon&&this._listeners.size>3*this._leakageMon.threshold)return console.warn(`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far`),m.None;const s=this._listeners.isEmpty();let a,l;s&&(null===(r=this._options)||void 0===r?void 0:r.onWillAddFirstListener)&&this._options.onWillAddFirstListener(this),this._leakageMon&&this._listeners.size>=Math.ceil(.2*this._leakageMon.threshold)&&(l=X.create(),a=this._leakageMon.check(l,this._listeners.size+1));const c=new Y(e,t,l),h=this._listeners.push(c);s&&(null===(i=this._options)||void 0===i?void 0:i.onDidAddFirstListener)&&this._options.onDidAddFirstListener(this),(null===(o=this._options)||void 0===o?void 0:o.onDidAddListener)&&this._options.onDidAddListener(this,e,t);const d=c.subscription.set((()=>{var e,t;null==a||a(),!this._disposed&&(null===(t=null===(e=this._options)||void 0===e?void 0:e.onWillRemoveListener)||void 0===t||t.call(e,this),h(),this._options&&this._options.onDidRemoveLastListener)&&(this._listeners&&!this._listeners.isEmpty()||this._options.onDidRemoveLastListener(this))}));return n instanceof u?n.add(d):Array.isArray(n)&&n.push(d),d}),this._event}fire(e){var t,n;if(this._listeners){this._deliveryQueue||(this._deliveryQueue=new Q);for(const t of this._listeners)this._deliveryQueue.push(this,t,e);null===(t=this._perfMon)||void 0===t||t.start(this._deliveryQueue.size),this._deliveryQueue.deliver(),null===(n=this._perfMon)||void 0===n||n.stop()}}hasListeners(){return!!this._listeners&&!this._listeners.isEmpty()}}class Q extends class{constructor(){this._queue=new b}get size(){return this._queue.size}push(e,t,n){this._queue.push(new ee(e,t,n))}clear(e){const t=new b;for(const n of this._queue)n.emitter!==e&&t.push(n);this._queue=t}deliver(){for(;this._queue.size>0;){const e=this._queue.shift();try{e.listener.invoke(e.event)}catch(e){n(e)}}}}{clear(e){this._queue.clear()}}class ee{constructor(e,t,n){this.emitter=e,this.listener=t,this.event=n}}function te(e){const t=[];for(const n of function(e){let t=[],n=Object.getPrototypeOf(e);for(;Object.prototype!==n;)t=t.concat(Object.getOwnPropertyNames(n)),n=Object.getPrototypeOf(n);return t}(e))"function"==typeof e[n]&&t.push(n);return t}Object.prototype.hasOwnProperty;class ne{constructor(e){this.executor=e,this._didRun=!1}get value(){if(!this._didRun)try{this._value=this.executor()}catch(e){this._error=e}finally{this._didRun=!0}if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function re(e){return e>=65&&e<=90}function ie(e){return 55296<=e&&e<=56319}function oe(e){return 56320<=e&&e<=57343}function se(e,t){return t-56320+(e-55296<<10)+65536}function ae(e,t,n){const r=e.charCodeAt(n);if(ie(r)&&n+1t[3*r+1]))return t[3*r+2];r=2*r+1}return 0}}ce._INSTANCE=null;class he{static getInstance(e){return he.cache.get(Array.from(e))}static getLocales(){return he._locales.value}constructor(e){this.confusableDictionary=e}isAmbiguous(e){return this.confusableDictionary.has(e)}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}}H=he,he.ambiguousCharacterData=new ne((()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,8218,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,8242,96,1370,96,1523,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71922,67,71913,67,65315,67,8557,67,8450,67,8493,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71919,87,71910,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,66293,90,71909,90,65338,90,8484,90,8488,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125],"_default":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65292,44,65307,59],"ko":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65307,59]}'))),he.cache=new class{constructor(e){this.fn=e,this.lastCache=void 0,this.lastArgKey=void 0}get(e){const t=JSON.stringify(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this.fn(e)),this.lastCache}}((e=>{function t(e){const t=new Map;for(let n=0;n!e.startsWith("_")&&e in r));0===o.length&&(o=["_default"]);for(const e of o)i=n(i,t(r[e]));const s=function(e,t){const n=new Map(e);for(const[e,r]of t)n.set(e,r);return n}(t(r._common),i);return new he(s)})),he._locales=new ne((()=>Object.keys(he.ambiguousCharacterData.value).filter((e=>!e.startsWith("_")))));class de{static getRawData(){return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12288,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999]")}static getData(){return this._data||(this._data=new Set(de.getRawData())),this._data}static isInvisibleCharacter(e){return de.getData().has(e)}static get codePoints(){return de.getData()}}de._data=void 0;let pe;class ue{constructor(e,t,n,r){this.vsWorker=e,this.req=t,this.method=n,this.args=r,this.type=0}}class me{constructor(e,t,n,r){this.vsWorker=e,this.seq=t,this.res=n,this.err=r,this.type=1}}class fe{constructor(e,t,n,r){this.vsWorker=e,this.req=t,this.eventName=n,this.arg=r,this.type=2}}class ge{constructor(e,t,n){this.vsWorker=e,this.req=t,this.event=n,this.type=3}}class be{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}}class ve{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}sendMessage(e,t){const n=String(++this._lastSentReq);return new Promise(((r,i)=>{this._pendingReplies[n]={resolve:r,reject:i},this._send(new ue(this._workerId,n,e,t))}))}listen(e,t){let n=null;const r=new Z({onWillAddFirstListener:()=>{n=String(++this._lastSentReq),this._pendingEmitters.set(n,r),this._send(new fe(this._workerId,n,e,t))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(n),this._send(new be(this._workerId,n)),n=null}});return r.event}handleMessage(e){e&&e.vsWorker&&(-1!==this._workerId&&e.vsWorker!==this._workerId||this._handleMessage(e))}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq])return void console.warn("Got reply to unknown seq");const t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let n=e.err;return e.err.$isError&&(n=new Error,n.name=e.err.name,n.message=e.err.message,n.stack=e.err.stack),void t.reject(n)}t.resolve(e.res)}_handleRequestMessage(e){const t=e.req;this._handler.handleMessage(e.method,e.args).then((e=>{this._send(new me(this._workerId,t,e,void 0))}),(e=>{e.detail instanceof Error&&(e.detail=r(e.detail)),this._send(new me(this._workerId,t,void 0,r(e)))}))}_handleSubscribeEventMessage(e){const t=e.req,n=this._handler.handleEvent(e.eventName,e.arg)((e=>{this._send(new ge(this._workerId,t,e))}));this._pendingEvents.set(t,n)}_handleEventMessage(e){this._pendingEmitters.has(e.req)?this._pendingEmitters.get(e.req).fire(e.event):console.warn("Got event for unknown req")}_handleUnsubscribeEventMessage(e){this._pendingEvents.has(e.req)?(this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req)):console.warn("Got unsubscribe for unknown req")}_send(e){const t=[];if(0===e.type)for(let n=0;n{e(t,n)},handleMessage:(e,t)=>this._handleMessage(e,t),handleEvent:(e,t)=>this._handleEvent(e,t)})}onmessage(e){this._protocol.handleMessage(e)}_handleMessage(e,t){if("$initialize"===e)return this.initialize(t[0],t[1],t[2],t[3]);if(!this._requestHandler||"function"!=typeof this._requestHandler[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._requestHandler[e].apply(this._requestHandler,t))}catch(e){return Promise.reject(e)}}_handleEvent(e,t){if(!this._requestHandler)throw new Error("Missing requestHandler");if(we(e)){const n=this._requestHandler[e].call(this._requestHandler,t);if("function"!=typeof n)throw new Error(`Missing dynamic event ${e} on request handler.`);return n}if(ye(e)){const t=this._requestHandler[e];if("function"!=typeof t)throw new Error(`Missing event ${e} on request handler.`);return t}throw new Error(`Malformed event name ${e}`)}initialize(e,t,n,r){this._protocol.setWorkerId(e);const i=function(e,t,n){const r=e=>function(){const n=Array.prototype.slice.call(arguments,0);return t(e,n)},i=e=>function(t){return n(e,t)},o={};for(const t of e)we(t)?o[t]=i(t):ye(t)?o[t]=n(t,void 0):o[t]=r(t);return o}(r,((e,t)=>this._protocol.sendMessage(e,t)),((e,t)=>this._protocol.listen(e,t)));return this._requestHandlerFactory?(this._requestHandler=this._requestHandlerFactory(i),Promise.resolve(te(this._requestHandler))):(t&&(void 0!==t.baseUrl&&delete t.baseUrl,void 0!==t.paths&&void 0!==t.paths.vs&&delete t.paths.vs,void 0!==typeof t.trustedTypesPolicy&&delete t.trustedTypesPolicy,t.catchError=!0,I.require.config(t)),new Promise(((e,t)=>{(0,I.require)([n],(n=>{this._requestHandler=n.create(i),this._requestHandler?e(te(this._requestHandler)):t(new Error("No RequestHandler!"))}),t)})))}}class Se{constructor(e,t,n,r){this.originalStart=e,this.originalLength=t,this.modifiedStart=n,this.modifiedLength=r}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}function ke(e,t){return(t<<5)-t+e|0}function Ce(e,t){t=ke(149417,t);for(let n=0,r=e.length;n>>r)>>>0}function Ee(e,t=0,n=e.byteLength,r=0){for(let i=0;ie.toString(16).padStart(2,"0"))).join(""):function(e,t,n="0"){for(;e.length>>0).toString(16),t/4)}class Re{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const t=e.length;if(0===t)return;const n=this._buff;let r,i,o=this._buffLen,s=this._leftoverHighSurrogate;for(0!==s?(r=s,i=-1,s=0):(r=e.charCodeAt(0),i=0);;){let a=r;if(ie(r)){if(!(i+1>>6,e[t++]=128|(63&n)>>>0):n<65536?(e[t++]=224|(61440&n)>>>12,e[t++]=128|(4032&n)>>>6,e[t++]=128|(63&n)>>>0):(e[t++]=240|(1835008&n)>>>18,e[t++]=128|(258048&n)>>>12,e[t++]=128|(4032&n)>>>6,e[t++]=128|(63&n)>>>0),t>=64&&(this._step(),t-=64,this._totalLen+=64,e[0]=e[64],e[1]=e[65],e[2]=e[66]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),Fe(this._h0)+Fe(this._h1)+Fe(this._h2)+Fe(this._h3)+Fe(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,Ee(this._buff,this._buffLen),this._buffLen>56&&(this._step(),Ee(this._buff));const e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){const e=Re._bigBlock32,t=this._buffDV;for(let n=0;n<64;n+=4)e.setUint32(n,t.getUint32(n,!1),!1);for(let t=64;t<320;t+=4)e.setUint32(t,_e(e.getUint32(t-12,!1)^e.getUint32(t-32,!1)^e.getUint32(t-56,!1)^e.getUint32(t-64,!1),1),!1);let n,r,i,o=this._h0,s=this._h1,a=this._h2,l=this._h3,c=this._h4;for(let t=0;t<80;t++)t<20?(n=s&a|~s&l,r=1518500249):t<40?(n=s^a^l,r=1859775393):t<60?(n=s&a|s&l|a&l,r=2400959708):(n=s^a^l,r=3395469782),i=_e(o,5)+n+c+r+e.getUint32(4*t,!1)&4294967295,c=l,l=a,a=_e(s,30),s=o,o=i;this._h0=this._h0+o&4294967295,this._h1=this._h1+s&4294967295,this._h2=this._h2+a&4294967295,this._h3=this._h3+l&4294967295,this._h4=this._h4+c&4294967295}}Re._bigBlock32=new DataView(new ArrayBuffer(320));class Ne{constructor(e){this.source=e}getElements(){const e=this.source,t=new Int32Array(e.length);for(let n=0,r=e.length;n0||this.m_modifiedCount>0)&&this.m_changes.push(new Se(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++}AddModifiedElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class Ie{constructor(e,t,n=null){this.ContinueProcessingPredicate=n,this._originalSequence=e,this._modifiedSequence=t;const[r,i,o]=Ie._getElements(e),[s,a,l]=Ie._getElements(t);this._hasStrings=o&&l,this._originalStringElements=r,this._originalElementsOrHash=i,this._modifiedStringElements=s,this._modifiedElementsOrHash=a,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&"string"==typeof e[0]}static _getElements(e){const t=e.getElements();if(Ie._isStringArray(t)){const e=new Int32Array(t.length);for(let n=0,r=t.length;n=e&&r>=n&&this.ElementsAreEqual(t,r);)t--,r--;if(e>t||n>r){let i;return n<=r?(Te.Assert(e===t+1,"originalStart should only be one more than originalEnd"),i=[new Se(e,0,n,r-n+1)]):e<=t?(Te.Assert(n===r+1,"modifiedStart should only be one more than modifiedEnd"),i=[new Se(e,t-e+1,n,0)]):(Te.Assert(e===t+1,"originalStart should only be one more than originalEnd"),Te.Assert(n===r+1,"modifiedStart should only be one more than modifiedEnd"),i=[]),i}const o=[0],s=[0],a=this.ComputeRecursionPoint(e,t,n,r,o,s,i),l=o[0],c=s[0];if(null!==a)return a;if(!i[0]){const o=this.ComputeDiffRecursive(e,l,n,c,i);let s=[];return s=i[0]?[new Se(l+1,t-(l+1)+1,c+1,r-(c+1)+1)]:this.ComputeDiffRecursive(l+1,t,c+1,r,i),this.ConcatenateChanges(o,s)}return[new Se(e,t-e+1,n,r-n+1)]}WALKTRACE(e,t,n,r,i,o,s,a,l,c,h,d,p,u,m,f,g,b){let v=null,y=null,w=new ze,x=t,S=n,k=p[0]-f[0]-r,C=-1073741824,_=this.m_forwardHistory.length-1;do{const t=k+e;t===x||t=0&&(e=(l=this.m_forwardHistory[_])[0],x=1,S=l.length-1)}while(--_>=-1);if(v=w.getReverseChanges(),b[0]){let e=p[0]+1,t=f[0]+1;if(null!==v&&v.length>0){const n=v[v.length-1];e=Math.max(e,n.getOriginalEnd()),t=Math.max(t,n.getModifiedEnd())}y=[new Se(e,d-e+1,t,m-t+1)]}else{w=new ze,x=o,S=s,k=p[0]-f[0]-a,C=1073741824,_=g?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const e=k+i;e===x||e=c[e+1]?(u=(h=c[e+1]-1)-k-a,h>C&&w.MarkNextChange(),C=h+1,w.AddOriginalElement(h+1,u+1),k=e+1-i):(u=(h=c[e-1])-k-a,h>C&&w.MarkNextChange(),C=h,w.AddModifiedElement(h+1,u+1),k=e-1-i),_>=0&&(i=(c=this.m_reverseHistory[_])[0],x=1,S=c.length-1)}while(--_>=-1);y=w.getChanges()}return this.ConcatenateChanges(v,y)}ComputeRecursionPoint(e,t,n,r,i,o,s){let a=0,l=0,c=0,h=0,d=0,p=0;e--,n--,i[0]=0,o[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const u=t-e+(r-n),m=u+1,f=new Int32Array(m),g=new Int32Array(m),b=r-n,v=t-e,y=e-n,w=t-r,x=(v-b)%2==0;f[b]=e,g[v]=t,s[0]=!1;for(let S=1;S<=u/2+1;S++){let u=0,k=0;c=this.ClipDiagonalBound(b-S,S,b,m),h=this.ClipDiagonalBound(b+S,S,b,m);for(let e=c;e<=h;e+=2){a=e===c||eu+k&&(u=a,k=l),!x&&Math.abs(e-v)<=S-1&&a>=g[e])return i[0]=a,o[0]=l,n<=g[e]&&S<=1448?this.WALKTRACE(b,c,h,y,v,d,p,w,f,g,a,t,i,l,r,o,x,s):null}const C=(u-e+(k-n)-S)/2;if(null!==this.ContinueProcessingPredicate&&!this.ContinueProcessingPredicate(u,C))return s[0]=!0,i[0]=u,o[0]=k,C>0&&S<=1448?this.WALKTRACE(b,c,h,y,v,d,p,w,f,g,a,t,i,l,r,o,x,s):(e++,n++,[new Se(e,t-e+1,n,r-n+1)]);d=this.ClipDiagonalBound(v-S,S,v,m),p=this.ClipDiagonalBound(v+S,S,v,m);for(let u=d;u<=p;u+=2){a=u===d||u=g[u+1]?g[u+1]-1:g[u-1],l=a-(u-v)-w;const m=a;for(;a>e&&l>n&&this.ElementsAreEqual(a,l);)a--,l--;if(g[u]=a,x&&Math.abs(u-b)<=S&&a<=f[u])return i[0]=a,o[0]=l,m>=f[u]&&S<=1448?this.WALKTRACE(b,c,h,y,v,d,p,w,f,g,a,t,i,l,r,o,x,s):null}if(S<=1447){let e=new Int32Array(h-c+2);e[0]=b-c+1,Ae.Copy2(f,c,e,1,h-c+1),this.m_forwardHistory.push(e),e=new Int32Array(p-d+2),e[0]=v-d+1,Ae.Copy2(g,d,e,1,p-d+1),this.m_reverseHistory.push(e)}}return this.WALKTRACE(b,c,h,y,v,d,p,w,f,g,a,t,i,l,r,o,x,s)}PrettifyChanges(e){for(let t=0;t0,s=n.modifiedLength>0;for(;n.originalStart+n.originalLength=0;t--){const n=e[t];let r=0,i=0;if(t>0){const n=e[t-1];r=n.originalStart+n.originalLength,i=n.modifiedStart+n.modifiedLength}const o=n.originalLength>0,s=n.modifiedLength>0;let a=0,l=this._boundaryScore(n.originalStart,n.originalLength,n.modifiedStart,n.modifiedLength);for(let e=1;;e++){const t=n.originalStart-e,c=n.modifiedStart-e;if(tl&&(l=h,a=e)}n.originalStart-=a,n.modifiedStart-=a;const c=[null];t>0&&this.ChangesOverlap(e[t-1],e[t],c)&&(e[t-1]=c[0],e.splice(t,1),t++)}if(this._hasStrings)for(let t=1,n=e.length;t0&&n>a&&(a=n,l=t,c=e)}return a>0?[l,c]:null}_contiguousSequenceScore(e,t,n){let r=0;for(let i=0;i=this._originalElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){const n=e+t;if(this._OriginalIsBoundary(n-1)||this._OriginalIsBoundary(n))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){const n=e+t;if(this._ModifiedIsBoundary(n-1)||this._ModifiedIsBoundary(n))return!0}return!1}_boundaryScore(e,t,n,r){return(this._OriginalRegionIsBoundary(e,t)?1:0)+(this._ModifiedRegionIsBoundary(n,r)?1:0)}ConcatenateChanges(e,t){const n=[];if(0===e.length||0===t.length)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],n)){const r=new Array(e.length+t.length-1);return Ae.Copy(e,0,r,0,e.length-1),r[e.length-1]=n[0],Ae.Copy(t,1,r,e.length,t.length-1),r}{const n=new Array(e.length+t.length);return Ae.Copy(e,0,n,0,e.length),Ae.Copy(t,0,n,e.length,t.length),n}}ChangesOverlap(e,t,n){if(Te.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),Te.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){const r=e.originalStart;let i=e.originalLength;const o=e.modifiedStart;let s=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(i=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(s=t.modifiedStart+t.modifiedLength-e.modifiedStart),n[0]=new Se(r,i,o,s),!0}return n[0]=null,!1}ClipDiagonalBound(e,t,n,r){if(e>=0&&ee.cwd()}}else pe="undefined"!=typeof process?{get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd:()=>process.env.VSCODE_CWD||process.cwd()}:{get platform(){return W?"win32":U?"darwin":"linux"},get arch(){},get env(){return{}},cwd:()=>"/"};const Me=pe.cwd,Pe=pe.env,Le=pe.platform,Oe=46,We=47,Ue=92,Ve=58;class Ke extends Error{constructor(e,t,n){let r;"string"==typeof t&&0===t.indexOf("not ")?(r="must not be",t=t.replace(/^not /,"")):r="must be";const i=-1!==e.indexOf(".")?"property":"argument";let o=`The "${e}" ${i} ${r} of type ${t}`;o+=". Received type "+typeof n,super(o),this.code="ERR_INVALID_ARG_TYPE"}}function Be(e,t){if("string"!=typeof e)throw new Ke(t,"string",e)}const je="win32"===Le;function qe(e){return e===We||e===Ue}function $e(e){return e===We}function He(e){return e>=65&&e<=90||e>=97&&e<=122}function Ge(e,t,n,r){let i="",o=0,s=-1,a=0,l=0;for(let c=0;c<=e.length;++c){if(c2){const e=i.lastIndexOf(n);-1===e?(i="",o=0):(i=i.slice(0,e),o=i.length-1-i.lastIndexOf(n)),s=c,a=0;continue}if(0!==i.length){i="",o=0,s=c,a=0;continue}}t&&(i+=i.length>0?`${n}..`:"..",o=2)}else i.length>0?i+=`${n}${e.slice(s+1,c)}`:i=e.slice(s+1,c),o=c-s-1;s=c,a=0}else l===Oe&&-1!==a?++a:a=-1}return i}function Je(e,t){!function(e,t){if(null===e||"object"!=typeof e)throw new Ke("pathObject","Object",e)}(t);const n=t.dir||t.root,r=t.base||`${t.name||""}${t.ext||""}`;return n?n===t.root?`${n}${r}`:`${n}${e}${r}`:r}const Xe={resolve(...e){let t="",n="",r=!1;for(let i=e.length-1;i>=-1;i--){let o;if(i>=0){if(o=e[i],Be(o,"path"),0===o.length)continue}else 0===t.length?o=Me():(o=Pe[`=${t}`]||Me(),(void 0===o||o.slice(0,2).toLowerCase()!==t.toLowerCase()&&o.charCodeAt(2)===Ue)&&(o=`${t}\\`));const s=o.length;let a=0,l="",c=!1;const h=o.charCodeAt(0);if(1===s)qe(h)&&(a=1,c=!0);else if(qe(h))if(c=!0,qe(o.charCodeAt(1))){let e=2,t=e;for(;e2&&qe(o.charCodeAt(2))&&(c=!0,a=3));if(l.length>0)if(t.length>0){if(l.toLowerCase()!==t.toLowerCase())continue}else t=l;if(r){if(t.length>0)break}else if(n=`${o.slice(a)}\\${n}`,r=c,c&&t.length>0)break}return n=Ge(n,!r,"\\",qe),r?`${t}\\${n}`:`${t}${n}`||"."},normalize(e){Be(e,"path");const t=e.length;if(0===t)return".";let n,r=0,i=!1;const o=e.charCodeAt(0);if(1===t)return $e(o)?"\\":e;if(qe(o))if(i=!0,qe(e.charCodeAt(1))){let i=2,o=i;for(;i2&&qe(e.charCodeAt(2))&&(i=!0,r=3));let s=r0&&qe(e.charCodeAt(t-1))&&(s+="\\"),void 0===n?i?`\\${s}`:s:i?`${n}\\${s}`:`${n}${s}`},isAbsolute(e){Be(e,"path");const t=e.length;if(0===t)return!1;const n=e.charCodeAt(0);return qe(n)||t>2&&He(n)&&e.charCodeAt(1)===Ve&&qe(e.charCodeAt(2))},join(...e){if(0===e.length)return".";let t,n;for(let r=0;r0&&(void 0===t?t=n=i:t+=`\\${i}`)}if(void 0===t)return".";let r=!0,i=0;if("string"==typeof n&&qe(n.charCodeAt(0))){++i;const e=n.length;e>1&&qe(n.charCodeAt(1))&&(++i,e>2&&(qe(n.charCodeAt(2))?++i:r=!1))}if(r){for(;i=2&&(t=`\\${t.slice(i)}`)}return Xe.normalize(t)},relative(e,t){if(Be(e,"from"),Be(t,"to"),e===t)return"";const n=Xe.resolve(e),r=Xe.resolve(t);if(n===r)return"";if((e=n.toLowerCase())===(t=r.toLowerCase()))return"";let i=0;for(;ii&&e.charCodeAt(o-1)===Ue;)o--;const s=o-i;let a=0;for(;aa&&t.charCodeAt(l-1)===Ue;)l--;const c=l-a,h=sh){if(t.charCodeAt(a+p)===Ue)return r.slice(a+p+1);if(2===p)return r.slice(a+p)}s>h&&(e.charCodeAt(i+p)===Ue?d=p:2===p&&(d=3)),-1===d&&(d=0)}let u="";for(p=i+d+1;p<=o;++p)p!==o&&e.charCodeAt(p)!==Ue||(u+=0===u.length?"..":"\\..");return a+=d,u.length>0?`${u}${r.slice(a,l)}`:(r.charCodeAt(a)===Ue&&++a,r.slice(a,l))},toNamespacedPath(e){if("string"!=typeof e||0===e.length)return e;const t=Xe.resolve(e);if(t.length<=2)return e;if(t.charCodeAt(0)===Ue){if(t.charCodeAt(1)===Ue){const e=t.charCodeAt(2);if(63!==e&&e!==Oe)return`\\\\?\\UNC\\${t.slice(2)}`}}else if(He(t.charCodeAt(0))&&t.charCodeAt(1)===Ve&&t.charCodeAt(2)===Ue)return`\\\\?\\${t}`;return e},dirname(e){Be(e,"path");const t=e.length;if(0===t)return".";let n=-1,r=0;const i=e.charCodeAt(0);if(1===t)return qe(i)?e:".";if(qe(i)){if(n=r=1,qe(e.charCodeAt(1))){let i=2,o=i;for(;i2&&qe(e.charCodeAt(2))?3:2,r=n);let o=-1,s=!0;for(let n=t-1;n>=r;--n)if(qe(e.charCodeAt(n))){if(!s){o=n;break}}else s=!1;if(-1===o){if(-1===n)return".";o=n}return e.slice(0,o)},basename(e,t){void 0!==t&&Be(t,"ext"),Be(e,"path");let n,r=0,i=-1,o=!0;if(e.length>=2&&He(e.charCodeAt(0))&&e.charCodeAt(1)===Ve&&(r=2),void 0!==t&&t.length>0&&t.length<=e.length){if(t===e)return"";let s=t.length-1,a=-1;for(n=e.length-1;n>=r;--n){const l=e.charCodeAt(n);if(qe(l)){if(!o){r=n+1;break}}else-1===a&&(o=!1,a=n+1),s>=0&&(l===t.charCodeAt(s)?-1==--s&&(i=n):(s=-1,i=a))}return r===i?i=a:-1===i&&(i=e.length),e.slice(r,i)}for(n=e.length-1;n>=r;--n)if(qe(e.charCodeAt(n))){if(!o){r=n+1;break}}else-1===i&&(o=!1,i=n+1);return-1===i?"":e.slice(r,i)},extname(e){Be(e,"path");let t=0,n=-1,r=0,i=-1,o=!0,s=0;e.length>=2&&e.charCodeAt(1)===Ve&&He(e.charCodeAt(0))&&(t=r=2);for(let a=e.length-1;a>=t;--a){const t=e.charCodeAt(a);if(qe(t)){if(!o){r=a+1;break}}else-1===i&&(o=!1,i=a+1),t===Oe?-1===n?n=a:1!==s&&(s=1):-1!==n&&(s=-1)}return-1===n||-1===i||0===s||1===s&&n===i-1&&n===r+1?"":e.slice(n,i)},format:Je.bind(null,"\\"),parse(e){Be(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;const n=e.length;let r=0,i=e.charCodeAt(0);if(1===n)return qe(i)?(t.root=t.dir=e,t):(t.base=t.name=e,t);if(qe(i)){if(r=1,qe(e.charCodeAt(1))){let t=2,i=t;for(;t0&&(t.root=e.slice(0,r));let o=-1,s=r,a=-1,l=!0,c=e.length-1,h=0;for(;c>=r;--c)if(i=e.charCodeAt(c),qe(i)){if(!l){s=c+1;break}}else-1===a&&(l=!1,a=c+1),i===Oe?-1===o?o=c:1!==h&&(h=1):-1!==o&&(h=-1);return-1!==a&&(-1===o||0===h||1===h&&o===a-1&&o===s+1?t.base=t.name=e.slice(s,a):(t.name=e.slice(s,o),t.base=e.slice(s,a),t.ext=e.slice(o,a))),t.dir=s>0&&s!==r?e.slice(0,s-1):t.root,t},sep:"\\",delimiter:";",win32:null,posix:null},Ye=(()=>{if(je){const e=/\\/g;return()=>{const t=Me().replace(e,"/");return t.slice(t.indexOf("/"))}}return()=>Me()})(),Ze={resolve(...e){let t="",n=!1;for(let r=e.length-1;r>=-1&&!n;r--){const i=r>=0?e[r]:Ye();Be(i,"path"),0!==i.length&&(t=`${i}/${t}`,n=i.charCodeAt(0)===We)}return t=Ge(t,!n,"/",$e),n?`/${t}`:t.length>0?t:"."},normalize(e){if(Be(e,"path"),0===e.length)return".";const t=e.charCodeAt(0)===We,n=e.charCodeAt(e.length-1)===We;return 0===(e=Ge(e,!t,"/",$e)).length?t?"/":n?"./":".":(n&&(e+="/"),t?`/${e}`:e)},isAbsolute:e=>(Be(e,"path"),e.length>0&&e.charCodeAt(0)===We),join(...e){if(0===e.length)return".";let t;for(let n=0;n0&&(void 0===t?t=r:t+=`/${r}`)}return void 0===t?".":Ze.normalize(t)},relative(e,t){if(Be(e,"from"),Be(t,"to"),e===t)return"";if((e=Ze.resolve(e))===(t=Ze.resolve(t)))return"";const n=e.length,r=n-1,i=t.length-1,o=ro){if(t.charCodeAt(1+a)===We)return t.slice(1+a+1);if(0===a)return t.slice(1+a)}else r>o&&(e.charCodeAt(1+a)===We?s=a:0===a&&(s=0));let l="";for(a=1+s+1;a<=n;++a)a!==n&&e.charCodeAt(a)!==We||(l+=0===l.length?"..":"/..");return`${l}${t.slice(1+s)}`},toNamespacedPath:e=>e,dirname(e){if(Be(e,"path"),0===e.length)return".";const t=e.charCodeAt(0)===We;let n=-1,r=!0;for(let t=e.length-1;t>=1;--t)if(e.charCodeAt(t)===We){if(!r){n=t;break}}else r=!1;return-1===n?t?"/":".":t&&1===n?"//":e.slice(0,n)},basename(e,t){void 0!==t&&Be(t,"ext"),Be(e,"path");let n,r=0,i=-1,o=!0;if(void 0!==t&&t.length>0&&t.length<=e.length){if(t===e)return"";let s=t.length-1,a=-1;for(n=e.length-1;n>=0;--n){const l=e.charCodeAt(n);if(l===We){if(!o){r=n+1;break}}else-1===a&&(o=!1,a=n+1),s>=0&&(l===t.charCodeAt(s)?-1==--s&&(i=n):(s=-1,i=a))}return r===i?i=a:-1===i&&(i=e.length),e.slice(r,i)}for(n=e.length-1;n>=0;--n)if(e.charCodeAt(n)===We){if(!o){r=n+1;break}}else-1===i&&(o=!1,i=n+1);return-1===i?"":e.slice(r,i)},extname(e){Be(e,"path");let t=-1,n=0,r=-1,i=!0,o=0;for(let s=e.length-1;s>=0;--s){const a=e.charCodeAt(s);if(a!==We)-1===r&&(i=!1,r=s+1),a===Oe?-1===t?t=s:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=s+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)},format:Je.bind(null,"/"),parse(e){Be(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;const n=e.charCodeAt(0)===We;let r;n?(t.root="/",r=1):r=0;let i=-1,o=0,s=-1,a=!0,l=e.length-1,c=0;for(;l>=r;--l){const t=e.charCodeAt(l);if(t!==We)-1===s&&(a=!1,s=l+1),t===Oe?-1===i?i=l:1!==c&&(c=1):-1!==i&&(c=-1);else if(!a){o=l+1;break}}if(-1!==s){const r=0===o&&n?1:o;-1===i||0===c||1===c&&i===s-1&&i===o+1?t.base=t.name=e.slice(r,s):(t.name=e.slice(r,i),t.base=e.slice(r,s),t.ext=e.slice(i,s))}return o>0?t.dir=e.slice(0,o-1):n&&(t.dir="/"),t},sep:"/",delimiter:":",win32:null,posix:null};Ze.win32=Xe.win32=Xe,Ze.posix=Xe.posix=Ze,je?Xe.normalize:Ze.normalize,je?Xe.resolve:Ze.resolve,je?Xe.relative:Ze.relative,je?Xe.dirname:Ze.dirname,je?Xe.basename:Ze.basename,je?Xe.extname:Ze.extname,je?Xe.sep:Ze.sep;const Qe=/^\w[\w\d+.-]*$/,et=/^\//,tt=/^\/\//;function nt(e,t){if(!e.scheme&&t)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!Qe.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!et.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(tt.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}const rt="",it="/",ot=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class st{static isUri(e){return e instanceof st||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}constructor(e,t,n,r,i,o=!1){"object"==typeof e?(this.scheme=e.scheme||rt,this.authority=e.authority||rt,this.path=e.path||rt,this.query=e.query||rt,this.fragment=e.fragment||rt):(this.scheme=function(e,t){return e||t?e:"file"}(e,o),this.authority=t||rt,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==it&&(t=it+t):t=it}return t}(this.scheme,n||rt),this.query=r||rt,this.fragment=i||rt,nt(this,o))}get fsPath(){return pt(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:n,path:r,query:i,fragment:o}=e;return void 0===t?t=this.scheme:null===t&&(t=rt),void 0===n?n=this.authority:null===n&&(n=rt),void 0===r?r=this.path:null===r&&(r=rt),void 0===i?i=this.query:null===i&&(i=rt),void 0===o?o=this.fragment:null===o&&(o=rt),t===this.scheme&&n===this.authority&&r===this.path&&i===this.query&&o===this.fragment?this:new lt(t,n,r,i,o)}static parse(e,t=!1){const n=ot.exec(e);return n?new lt(n[2]||rt,gt(n[4]||rt),gt(n[5]||rt),gt(n[7]||rt),gt(n[9]||rt),t):new lt(rt,rt,rt,rt,rt)}static file(e){let t=rt;if(W&&(e=e.replace(/\\/g,it)),e[0]===it&&e[1]===it){const n=e.indexOf(it,2);-1===n?(t=e.substring(2),e=it):(t=e.substring(2,n),e=e.substring(n)||it)}return new lt("file",t,e,rt,rt)}static from(e){const t=new lt(e.scheme,e.authority,e.path,e.query,e.fragment);return nt(t,!0),t}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let n;return n=W&&"file"===e.scheme?st.file(Xe.join(pt(e,!0),...t)).path:Ze.join(e.path,...t),e.with({path:n})}toString(e=!1){return ut(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof st)return e;{const t=new lt(e);return t._formatted=e.external,t._fsPath=e._sep===at?e.fsPath:null,t}}return e}}const at=W?1:void 0;class lt extends st{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=pt(this,!1)),this._fsPath}toString(e=!1){return e?ut(this,!0):(this._formatted||(this._formatted=ut(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=at),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const ct={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function ht(e,t,n){let r,i=-1;for(let o=0;o=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57||45===s||46===s||95===s||126===s||t&&47===s||n&&91===s||n&&93===s||n&&58===s)-1!==i&&(r+=encodeURIComponent(e.substring(i,o)),i=-1),void 0!==r&&(r+=e.charAt(o));else{void 0===r&&(r=e.substr(0,o));const t=ct[s];void 0!==t?(-1!==i&&(r+=encodeURIComponent(e.substring(i,o)),i=-1),r+=t):-1===i&&(i=o)}}return-1!==i&&(r+=encodeURIComponent(e.substring(i))),void 0!==r?r:e}function dt(e){let t;for(let n=0;n1&&"file"===e.scheme?`//${e.authority}${e.path}`:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?t?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,W&&(n=n.replace(/\//g,"\\")),n}function ut(e,t){const n=t?dt:ht;let r="",{scheme:i,authority:o,path:s,query:a,fragment:l}=e;if(i&&(r+=i,r+=":"),(o||"file"===i)&&(r+=it,r+=it),o){let e=o.indexOf("@");if(-1!==e){const t=o.substr(0,e);o=o.substr(e+1),e=t.lastIndexOf(":"),-1===e?r+=n(t,!1,!1):(r+=n(t.substr(0,e),!1,!1),r+=":",r+=n(t.substr(e+1),!1,!0)),r+="@"}o=o.toLowerCase(),e=o.lastIndexOf(":"),-1===e?r+=n(o,!1,!0):(r+=n(o.substr(0,e),!1,!0),r+=o.substr(e))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2)){const e=s.charCodeAt(1);e>=65&&e<=90&&(s=`/${String.fromCharCode(e+32)}:${s.substr(3)}`)}else if(s.length>=2&&58===s.charCodeAt(1)){const e=s.charCodeAt(0);e>=65&&e<=90&&(s=`${String.fromCharCode(e+32)}:${s.substr(2)}`)}r+=n(s,!0,!1)}return a&&(r+="?",r+=n(a,!1,!1)),l&&(r+="#",r+=t?l:ht(l,!1,!1)),r}function mt(e){try{return decodeURIComponent(e)}catch(t){return e.length>3?e.substr(0,3)+mt(e.substr(3)):e}}const ft=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function gt(e){return e.match(ft)?e.replace(ft,(e=>mt(e))):e}class bt{constructor(e,t){this.lineNumber=e,this.column=t}with(e=this.lineNumber,t=this.column){return e===this.lineNumber&&t===this.column?this:new bt(e,t)}delta(e=0,t=0){return this.with(this.lineNumber+e,this.column+t)}equals(e){return bt.equals(this,e)}static equals(e,t){return!e&&!t||!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return bt.isBefore(this,e)}static isBefore(e,t){return e.lineNumbern||e===n&&t>r?(this.startLineNumber=n,this.startColumn=r,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=n,this.endColumn=r)}isEmpty(){return vt.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return vt.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.columne.endColumn)}static strictContainsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.column<=e.startColumn||t.lineNumber===e.endLineNumber&&t.column>=e.endColumn)}containsRange(e){return vt.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumne.endColumn)}strictContainsRange(e){return vt.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn||t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)}plusRange(e){return vt.plusRange(this,e)}static plusRange(e,t){let n,r,i,o;return t.startLineNumbere.endLineNumber?(i=t.endLineNumber,o=t.endColumn):t.endLineNumber===e.endLineNumber?(i=t.endLineNumber,o=Math.max(t.endColumn,e.endColumn)):(i=e.endLineNumber,o=e.endColumn),new vt(n,r,i,o)}intersectRanges(e){return vt.intersectRanges(this,e)}static intersectRanges(e,t){let n=e.startLineNumber,r=e.startColumn,i=e.endLineNumber,o=e.endColumn;const s=t.startLineNumber,a=t.startColumn,l=t.endLineNumber,c=t.endColumn;return nl?(i=l,o=c):i===l&&(o=Math.min(o,c)),n>i||n===i&&r>o?null:new vt(n,r,i,o)}equalsRange(e){return vt.equalsRange(this,e)}static equalsRange(e,t){return!e&&!t||!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return vt.getEndPosition(this)}static getEndPosition(e){return new bt(e.endLineNumber,e.endColumn)}getStartPosition(){return vt.getStartPosition(this)}static getStartPosition(e){return new bt(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new vt(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new vt(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return vt.collapseToStart(this)}static collapseToStart(e){return new vt(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return vt.collapseToEnd(this)}static collapseToEnd(e){return new vt(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new vt(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}static fromPositions(e,t=e){return new vt(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new vt(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return e&&"number"==typeof e.startLineNumber&&"number"==typeof e.startColumn&&"number"==typeof e.endLineNumber&&"number"==typeof e.endColumn}static areIntersectingOrTouching(e,t){return!(e.endLineNumbere.startLineNumber}toJSON(){return this}}var yt;!function(e){e.isLessThan=function(e){return e<0},e.isGreaterThan=function(e){return e>0},e.isNeitherLessOrGreaterThan=function(e){return 0===e},e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0}(yt||(yt={}));class wt{constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate((t=>(e.push(t),!0))),e}filter(e){return new wt((t=>this.iterate((n=>!e(n)||t(n)))))}map(e){return new wt((t=>this.iterate((n=>t(e(n))))))}findLast(e){let t;return this.iterate((n=>(e(n)&&(t=n),!0))),t}findLastMaxBy(e){let t,n=!0;return this.iterate((r=>((n||yt.isGreaterThan(e(r,t)))&&(n=!1,t=r),!0))),t}}function xt(e){return e<0?0:e>255?255:0|e}function St(e){return e<0?0:e>4294967295?4294967295:0|e}wt.empty=new wt((e=>{}));class kt{constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=St(e);const n=this.values,r=this.prefixSum,i=t.length;return 0!==i&&(this.values=new Uint32Array(n.length+i),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e),e+i),this.values.set(t,e),e-1=0&&this.prefixSum.set(r.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=St(e),t=St(t),this.values[e]!==t&&(this.values[e]=t,e-1=n.length)return!1;const i=n.length-e;return t>=i&&(t=i),0!==t&&(this.values=new Uint32Array(n.length-t),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1=0&&this.prefixSum.set(r.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return 0===this.values.length?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=St(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;0===t&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let n=t;n<=e;n++)this.prefixSum[n]=this.prefixSum[n-1]+this.values[n];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,n=this.values.length-1,r=0,i=0,o=0;for(;t<=n;)if(r=t+(n-t)/2|0,i=this.prefixSum[r],o=i-this.values[r],e=i))break;t=r+1}return new Ct(r,e-o)}}class Ct{constructor(e,t){this.index=e,this.remainder=t,this._prefixSumIndexOfResultBrand=void 0,this.index=e,this.remainder=t}}const _t=function(e=""){let t="(-?\\d*\\.\\d\\w*)|([^";for(const n of"`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?")e.indexOf(n)>=0||(t+="\\"+n);return t+="\\s]+)",new RegExp(t,"g")}(),Et=new b;function Ft(e,t,n,r,i){if(i||(i=c.first(Et)),n.length>i.maxLen){let o=e-i.maxLen/2;return o<0?o=0:r+=o,Ft(e,t,n=n.substring(o,e+i.maxLen/2),r,i)}const o=Date.now(),s=e-1-r;let a=-1,l=null;for(let e=1;!(Date.now()-o>=i.timeBudget);e++){const r=s-i.windowSize*e;t.lastIndex=Math.max(0,r);const o=Rt(t,n,s,a);if(!o&&l)break;if(l=o,r<=0)break;a=r}if(l){const e={word:l[0],startColumn:r+1+l.index,endColumn:r+1+l.index+l[0].length};return t.lastIndex=0,e}return null}function Rt(e,t,n,r){let i;for(;i=e.exec(t);){const t=i.index||0;if(t<=n&&e.lastIndex>=n)return i;if(r>0&&t>r)return null}return null}Et.unshift({maxLen:1e3,windowSize:15,timeBudget:150});class Nt{constructor(e){const t=xt(e);this._defaultValue=t,this._asciiMap=Nt._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){const t=new Uint8Array(256);return t.fill(e),t}set(e,t){const n=xt(t);e>=0&&e<256?this._asciiMap[e]=n:this._map.set(e,n)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class Dt{constructor(e,t,n){const r=new Uint8Array(e*t);for(let i=0,o=e*t;it&&(t=o),i>n&&(n=i),s>n&&(n=s)}t++,n++;const r=new Dt(n,t,0);for(let t=0,n=e.length;t=this._maxCharCode?0:this._states.get(e,t)}}let At=null,zt=null;class It{static _createLink(e,t,n,r,i){let o=i-1;do{const n=t.charCodeAt(o);if(2!==e.get(n))break;o--}while(o>r);if(r>0){const e=t.charCodeAt(r-1),n=t.charCodeAt(o);(40===e&&41===n||91===e&&93===n||123===e&&125===n)&&o--}return{range:{startLineNumber:n,startColumn:r+1,endLineNumber:n,endColumn:o+2},url:t.substring(r,o+1)}}static computeLinks(e,t=function(){return null===At&&(At=new Tt([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),At}()){const n=function(){if(null===zt){zt=new Nt(0);const e=" \t<>'\"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…";for(let t=0;t=0?(r+=n?1:-1,r<0?r=e.length-1:r%=e.length,e[r]):null}}Mt.INSTANCE=new Mt;const Pt=Object.freeze((function(e,t){const n=setTimeout(e.bind(t),0);return{dispose(){clearTimeout(n)}}}));var Lt;!function(e){e.isCancellationToken=function(t){return t===e.None||t===e.Cancelled||t instanceof Ot||!(!t||"object"!=typeof t)&&"boolean"==typeof t.isCancellationRequested&&"function"==typeof t.onCancellationRequested},e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:$.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Pt})}(Lt||(Lt={}));class Ot{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?Pt:(this._emitter||(this._emitter=new Z),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class Wt{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}}const Ut=new Wt,Vt=new Wt,Kt=new Wt,Bt=new Array(230),jt={},qt=[],$t=Object.create(null),Ht=Object.create(null),Gt=[],Jt=[];for(let e=0;e<=193;e++)Gt[e]=-1;for(let e=0;e<=127;e++)Jt[e]=-1;var Xt;!function(){const e="",t=[[0,1,0,"None",0,"unknown",0,"VK_UNKNOWN",e,e],[0,1,1,"Hyper",0,e,0,e,e,e],[0,1,2,"Super",0,e,0,e,e,e],[0,1,3,"Fn",0,e,0,e,e,e],[0,1,4,"FnLock",0,e,0,e,e,e],[0,1,5,"Suspend",0,e,0,e,e,e],[0,1,6,"Resume",0,e,0,e,e,e],[0,1,7,"Turbo",0,e,0,e,e,e],[0,1,8,"Sleep",0,e,0,"VK_SLEEP",e,e],[0,1,9,"WakeUp",0,e,0,e,e,e],[31,0,10,"KeyA",31,"A",65,"VK_A",e,e],[32,0,11,"KeyB",32,"B",66,"VK_B",e,e],[33,0,12,"KeyC",33,"C",67,"VK_C",e,e],[34,0,13,"KeyD",34,"D",68,"VK_D",e,e],[35,0,14,"KeyE",35,"E",69,"VK_E",e,e],[36,0,15,"KeyF",36,"F",70,"VK_F",e,e],[37,0,16,"KeyG",37,"G",71,"VK_G",e,e],[38,0,17,"KeyH",38,"H",72,"VK_H",e,e],[39,0,18,"KeyI",39,"I",73,"VK_I",e,e],[40,0,19,"KeyJ",40,"J",74,"VK_J",e,e],[41,0,20,"KeyK",41,"K",75,"VK_K",e,e],[42,0,21,"KeyL",42,"L",76,"VK_L",e,e],[43,0,22,"KeyM",43,"M",77,"VK_M",e,e],[44,0,23,"KeyN",44,"N",78,"VK_N",e,e],[45,0,24,"KeyO",45,"O",79,"VK_O",e,e],[46,0,25,"KeyP",46,"P",80,"VK_P",e,e],[47,0,26,"KeyQ",47,"Q",81,"VK_Q",e,e],[48,0,27,"KeyR",48,"R",82,"VK_R",e,e],[49,0,28,"KeyS",49,"S",83,"VK_S",e,e],[50,0,29,"KeyT",50,"T",84,"VK_T",e,e],[51,0,30,"KeyU",51,"U",85,"VK_U",e,e],[52,0,31,"KeyV",52,"V",86,"VK_V",e,e],[53,0,32,"KeyW",53,"W",87,"VK_W",e,e],[54,0,33,"KeyX",54,"X",88,"VK_X",e,e],[55,0,34,"KeyY",55,"Y",89,"VK_Y",e,e],[56,0,35,"KeyZ",56,"Z",90,"VK_Z",e,e],[22,0,36,"Digit1",22,"1",49,"VK_1",e,e],[23,0,37,"Digit2",23,"2",50,"VK_2",e,e],[24,0,38,"Digit3",24,"3",51,"VK_3",e,e],[25,0,39,"Digit4",25,"4",52,"VK_4",e,e],[26,0,40,"Digit5",26,"5",53,"VK_5",e,e],[27,0,41,"Digit6",27,"6",54,"VK_6",e,e],[28,0,42,"Digit7",28,"7",55,"VK_7",e,e],[29,0,43,"Digit8",29,"8",56,"VK_8",e,e],[30,0,44,"Digit9",30,"9",57,"VK_9",e,e],[21,0,45,"Digit0",21,"0",48,"VK_0",e,e],[3,1,46,"Enter",3,"Enter",13,"VK_RETURN",e,e],[9,1,47,"Escape",9,"Escape",27,"VK_ESCAPE",e,e],[1,1,48,"Backspace",1,"Backspace",8,"VK_BACK",e,e],[2,1,49,"Tab",2,"Tab",9,"VK_TAB",e,e],[10,1,50,"Space",10,"Space",32,"VK_SPACE",e,e],[83,0,51,"Minus",83,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[81,0,52,"Equal",81,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[87,0,53,"BracketLeft",87,"[",219,"VK_OEM_4","[","OEM_4"],[89,0,54,"BracketRight",89,"]",221,"VK_OEM_6","]","OEM_6"],[88,0,55,"Backslash",88,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,0,56,"IntlHash",0,e,0,e,e,e],[80,0,57,"Semicolon",80,";",186,"VK_OEM_1",";","OEM_1"],[90,0,58,"Quote",90,"'",222,"VK_OEM_7","'","OEM_7"],[86,0,59,"Backquote",86,"`",192,"VK_OEM_3","`","OEM_3"],[82,0,60,"Comma",82,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[84,0,61,"Period",84,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[85,0,62,"Slash",85,"/",191,"VK_OEM_2","/","OEM_2"],[8,1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL",e,e],[59,1,64,"F1",59,"F1",112,"VK_F1",e,e],[60,1,65,"F2",60,"F2",113,"VK_F2",e,e],[61,1,66,"F3",61,"F3",114,"VK_F3",e,e],[62,1,67,"F4",62,"F4",115,"VK_F4",e,e],[63,1,68,"F5",63,"F5",116,"VK_F5",e,e],[64,1,69,"F6",64,"F6",117,"VK_F6",e,e],[65,1,70,"F7",65,"F7",118,"VK_F7",e,e],[66,1,71,"F8",66,"F8",119,"VK_F8",e,e],[67,1,72,"F9",67,"F9",120,"VK_F9",e,e],[68,1,73,"F10",68,"F10",121,"VK_F10",e,e],[69,1,74,"F11",69,"F11",122,"VK_F11",e,e],[70,1,75,"F12",70,"F12",123,"VK_F12",e,e],[0,1,76,"PrintScreen",0,e,0,e,e,e],[79,1,77,"ScrollLock",79,"ScrollLock",145,"VK_SCROLL",e,e],[7,1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE",e,e],[19,1,79,"Insert",19,"Insert",45,"VK_INSERT",e,e],[14,1,80,"Home",14,"Home",36,"VK_HOME",e,e],[11,1,81,"PageUp",11,"PageUp",33,"VK_PRIOR",e,e],[20,1,82,"Delete",20,"Delete",46,"VK_DELETE",e,e],[13,1,83,"End",13,"End",35,"VK_END",e,e],[12,1,84,"PageDown",12,"PageDown",34,"VK_NEXT",e,e],[17,1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",e],[15,1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",e],[18,1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",e],[16,1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",e],[78,1,89,"NumLock",78,"NumLock",144,"VK_NUMLOCK",e,e],[108,1,90,"NumpadDivide",108,"NumPad_Divide",111,"VK_DIVIDE",e,e],[103,1,91,"NumpadMultiply",103,"NumPad_Multiply",106,"VK_MULTIPLY",e,e],[106,1,92,"NumpadSubtract",106,"NumPad_Subtract",109,"VK_SUBTRACT",e,e],[104,1,93,"NumpadAdd",104,"NumPad_Add",107,"VK_ADD",e,e],[3,1,94,"NumpadEnter",3,e,0,e,e,e],[94,1,95,"Numpad1",94,"NumPad1",97,"VK_NUMPAD1",e,e],[95,1,96,"Numpad2",95,"NumPad2",98,"VK_NUMPAD2",e,e],[96,1,97,"Numpad3",96,"NumPad3",99,"VK_NUMPAD3",e,e],[97,1,98,"Numpad4",97,"NumPad4",100,"VK_NUMPAD4",e,e],[98,1,99,"Numpad5",98,"NumPad5",101,"VK_NUMPAD5",e,e],[99,1,100,"Numpad6",99,"NumPad6",102,"VK_NUMPAD6",e,e],[100,1,101,"Numpad7",100,"NumPad7",103,"VK_NUMPAD7",e,e],[101,1,102,"Numpad8",101,"NumPad8",104,"VK_NUMPAD8",e,e],[102,1,103,"Numpad9",102,"NumPad9",105,"VK_NUMPAD9",e,e],[93,1,104,"Numpad0",93,"NumPad0",96,"VK_NUMPAD0",e,e],[107,1,105,"NumpadDecimal",107,"NumPad_Decimal",110,"VK_DECIMAL",e,e],[92,0,106,"IntlBackslash",92,"OEM_102",226,"VK_OEM_102",e,e],[58,1,107,"ContextMenu",58,"ContextMenu",93,e,e,e],[0,1,108,"Power",0,e,0,e,e,e],[0,1,109,"NumpadEqual",0,e,0,e,e,e],[71,1,110,"F13",71,"F13",124,"VK_F13",e,e],[72,1,111,"F14",72,"F14",125,"VK_F14",e,e],[73,1,112,"F15",73,"F15",126,"VK_F15",e,e],[74,1,113,"F16",74,"F16",127,"VK_F16",e,e],[75,1,114,"F17",75,"F17",128,"VK_F17",e,e],[76,1,115,"F18",76,"F18",129,"VK_F18",e,e],[77,1,116,"F19",77,"F19",130,"VK_F19",e,e],[0,1,117,"F20",0,e,0,"VK_F20",e,e],[0,1,118,"F21",0,e,0,"VK_F21",e,e],[0,1,119,"F22",0,e,0,"VK_F22",e,e],[0,1,120,"F23",0,e,0,"VK_F23",e,e],[0,1,121,"F24",0,e,0,"VK_F24",e,e],[0,1,122,"Open",0,e,0,e,e,e],[0,1,123,"Help",0,e,0,e,e,e],[0,1,124,"Select",0,e,0,e,e,e],[0,1,125,"Again",0,e,0,e,e,e],[0,1,126,"Undo",0,e,0,e,e,e],[0,1,127,"Cut",0,e,0,e,e,e],[0,1,128,"Copy",0,e,0,e,e,e],[0,1,129,"Paste",0,e,0,e,e,e],[0,1,130,"Find",0,e,0,e,e,e],[0,1,131,"AudioVolumeMute",112,"AudioVolumeMute",173,"VK_VOLUME_MUTE",e,e],[0,1,132,"AudioVolumeUp",113,"AudioVolumeUp",175,"VK_VOLUME_UP",e,e],[0,1,133,"AudioVolumeDown",114,"AudioVolumeDown",174,"VK_VOLUME_DOWN",e,e],[105,1,134,"NumpadComma",105,"NumPad_Separator",108,"VK_SEPARATOR",e,e],[110,0,135,"IntlRo",110,"ABNT_C1",193,"VK_ABNT_C1",e,e],[0,1,136,"KanaMode",0,e,0,e,e,e],[0,0,137,"IntlYen",0,e,0,e,e,e],[0,1,138,"Convert",0,e,0,e,e,e],[0,1,139,"NonConvert",0,e,0,e,e,e],[0,1,140,"Lang1",0,e,0,e,e,e],[0,1,141,"Lang2",0,e,0,e,e,e],[0,1,142,"Lang3",0,e,0,e,e,e],[0,1,143,"Lang4",0,e,0,e,e,e],[0,1,144,"Lang5",0,e,0,e,e,e],[0,1,145,"Abort",0,e,0,e,e,e],[0,1,146,"Props",0,e,0,e,e,e],[0,1,147,"NumpadParenLeft",0,e,0,e,e,e],[0,1,148,"NumpadParenRight",0,e,0,e,e,e],[0,1,149,"NumpadBackspace",0,e,0,e,e,e],[0,1,150,"NumpadMemoryStore",0,e,0,e,e,e],[0,1,151,"NumpadMemoryRecall",0,e,0,e,e,e],[0,1,152,"NumpadMemoryClear",0,e,0,e,e,e],[0,1,153,"NumpadMemoryAdd",0,e,0,e,e,e],[0,1,154,"NumpadMemorySubtract",0,e,0,e,e,e],[0,1,155,"NumpadClear",126,"Clear",12,"VK_CLEAR",e,e],[0,1,156,"NumpadClearEntry",0,e,0,e,e,e],[5,1,0,e,5,"Ctrl",17,"VK_CONTROL",e,e],[4,1,0,e,4,"Shift",16,"VK_SHIFT",e,e],[6,1,0,e,6,"Alt",18,"VK_MENU",e,e],[57,1,0,e,57,"Meta",0,"VK_COMMAND",e,e],[5,1,157,"ControlLeft",5,e,0,"VK_LCONTROL",e,e],[4,1,158,"ShiftLeft",4,e,0,"VK_LSHIFT",e,e],[6,1,159,"AltLeft",6,e,0,"VK_LMENU",e,e],[57,1,160,"MetaLeft",57,e,0,"VK_LWIN",e,e],[5,1,161,"ControlRight",5,e,0,"VK_RCONTROL",e,e],[4,1,162,"ShiftRight",4,e,0,"VK_RSHIFT",e,e],[6,1,163,"AltRight",6,e,0,"VK_RMENU",e,e],[57,1,164,"MetaRight",57,e,0,"VK_RWIN",e,e],[0,1,165,"BrightnessUp",0,e,0,e,e,e],[0,1,166,"BrightnessDown",0,e,0,e,e,e],[0,1,167,"MediaPlay",0,e,0,e,e,e],[0,1,168,"MediaRecord",0,e,0,e,e,e],[0,1,169,"MediaFastForward",0,e,0,e,e,e],[0,1,170,"MediaRewind",0,e,0,e,e,e],[114,1,171,"MediaTrackNext",119,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK",e,e],[115,1,172,"MediaTrackPrevious",120,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK",e,e],[116,1,173,"MediaStop",121,"MediaStop",178,"VK_MEDIA_STOP",e,e],[0,1,174,"Eject",0,e,0,e,e,e],[117,1,175,"MediaPlayPause",122,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE",e,e],[0,1,176,"MediaSelect",123,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT",e,e],[0,1,177,"LaunchMail",124,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL",e,e],[0,1,178,"LaunchApp2",125,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2",e,e],[0,1,179,"LaunchApp1",0,e,0,"VK_MEDIA_LAUNCH_APP1",e,e],[0,1,180,"SelectTask",0,e,0,e,e,e],[0,1,181,"LaunchScreenSaver",0,e,0,e,e,e],[0,1,182,"BrowserSearch",115,"BrowserSearch",170,"VK_BROWSER_SEARCH",e,e],[0,1,183,"BrowserHome",116,"BrowserHome",172,"VK_BROWSER_HOME",e,e],[112,1,184,"BrowserBack",117,"BrowserBack",166,"VK_BROWSER_BACK",e,e],[113,1,185,"BrowserForward",118,"BrowserForward",167,"VK_BROWSER_FORWARD",e,e],[0,1,186,"BrowserStop",0,e,0,"VK_BROWSER_STOP",e,e],[0,1,187,"BrowserRefresh",0,e,0,"VK_BROWSER_REFRESH",e,e],[0,1,188,"BrowserFavorites",0,e,0,"VK_BROWSER_FAVORITES",e,e],[0,1,189,"ZoomToggle",0,e,0,e,e,e],[0,1,190,"MailReply",0,e,0,e,e,e],[0,1,191,"MailForward",0,e,0,e,e,e],[0,1,192,"MailSend",0,e,0,e,e,e],[109,1,0,e,109,"KeyInComposition",229,e,e,e],[111,1,0,e,111,"ABNT_C2",194,"VK_ABNT_C2",e,e],[91,1,0,e,91,"OEM_8",223,"VK_OEM_8",e,e],[0,1,0,e,0,e,0,"VK_KANA",e,e],[0,1,0,e,0,e,0,"VK_HANGUL",e,e],[0,1,0,e,0,e,0,"VK_JUNJA",e,e],[0,1,0,e,0,e,0,"VK_FINAL",e,e],[0,1,0,e,0,e,0,"VK_HANJA",e,e],[0,1,0,e,0,e,0,"VK_KANJI",e,e],[0,1,0,e,0,e,0,"VK_CONVERT",e,e],[0,1,0,e,0,e,0,"VK_NONCONVERT",e,e],[0,1,0,e,0,e,0,"VK_ACCEPT",e,e],[0,1,0,e,0,e,0,"VK_MODECHANGE",e,e],[0,1,0,e,0,e,0,"VK_SELECT",e,e],[0,1,0,e,0,e,0,"VK_PRINT",e,e],[0,1,0,e,0,e,0,"VK_EXECUTE",e,e],[0,1,0,e,0,e,0,"VK_SNAPSHOT",e,e],[0,1,0,e,0,e,0,"VK_HELP",e,e],[0,1,0,e,0,e,0,"VK_APPS",e,e],[0,1,0,e,0,e,0,"VK_PROCESSKEY",e,e],[0,1,0,e,0,e,0,"VK_PACKET",e,e],[0,1,0,e,0,e,0,"VK_DBE_SBCSCHAR",e,e],[0,1,0,e,0,e,0,"VK_DBE_DBCSCHAR",e,e],[0,1,0,e,0,e,0,"VK_ATTN",e,e],[0,1,0,e,0,e,0,"VK_CRSEL",e,e],[0,1,0,e,0,e,0,"VK_EXSEL",e,e],[0,1,0,e,0,e,0,"VK_EREOF",e,e],[0,1,0,e,0,e,0,"VK_PLAY",e,e],[0,1,0,e,0,e,0,"VK_ZOOM",e,e],[0,1,0,e,0,e,0,"VK_NONAME",e,e],[0,1,0,e,0,e,0,"VK_PA1",e,e],[0,1,0,e,0,e,0,"VK_OEM_CLEAR",e,e]],n=[],r=[];for(const e of t){const[t,i,o,s,a,l,c,h,d,p]=e;if(r[o]||(r[o]=!0,qt[o]=s,$t[s]=o,Ht[s.toLowerCase()]=o,i&&(Gt[o]=a,0!==a&&3!==a&&5!==a&&4!==a&&6!==a&&57!==a&&(Jt[a]=o))),!n[a]){if(n[a]=!0,!l)throw new Error(`String representation missing for key code ${a} around scan code ${s}`);Ut.define(a,l),Vt.define(a,d||l),Kt.define(a,p||d||l)}c&&(Bt[c]=a),h&&(jt[h]=a)}Jt[3]=46}(),function(e){e.toString=function(e){return Ut.keyCodeToStr(e)},e.fromString=function(e){return Ut.strToKeyCode(e)},e.toUserSettingsUS=function(e){return Vt.keyCodeToStr(e)},e.toUserSettingsGeneral=function(e){return Kt.keyCodeToStr(e)},e.fromUserSettings=function(e){return Vt.strToKeyCode(e)||Kt.strToKeyCode(e)},e.toElectronAccelerator=function(e){if(e>=93&&e<=108)return null;switch(e){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return Ut.keyCodeToStr(e)}}(Xt||(Xt={}));class Yt extends vt{constructor(e,t,n,r){super(e,t,n,r),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=n,this.positionColumn=r}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return Yt.selectionsEqual(this,e)}static selectionsEqual(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(e,t){return 0===this.getDirection()?new Yt(this.startLineNumber,this.startColumn,e,t):new Yt(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new bt(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new bt(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return 0===this.getDirection()?new Yt(e,t,this.endLineNumber,this.endColumn):new Yt(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new Yt(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return 0===t?new Yt(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Yt(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Yt(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)}static selectionsArrEqual(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(let n=0,r=e.length;n{this._map.get(e)===t&&(this._map.delete(e),this.fire([e]))}))}registerFactory(e,t){var n;null===(n=this._factories.get(e))||void 0===n||n.dispose();const r=new Yn(this,e,t);return this._factories.set(e,r),p((()=>{const t=this._factories.get(e);t&&t===r&&(this._factories.delete(e),t.dispose())}))}getOrCreate(e){return Xn(this,void 0,void 0,(function*(){const t=this.get(e);if(t)return t;const n=this._factories.get(e);return!n||n.isResolved?null:(yield n.resolve(),this.get(e))}))}get(e){return this._map.get(e)||null}isResolved(e){if(this.get(e))return!0;const t=this._factories.get(e);return!(t&&!t.isResolved)}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._map.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}},function(e){e[e.Unknown=0]="Unknown",e[e.Disabled=1]="Disabled",e[e.Enabled=2]="Enabled"}(cn||(cn={})),function(e){e[e.Invoke=1]="Invoke",e[e.Auto=2]="Auto"}(hn||(hn={})),function(e){e[e.None=0]="None",e[e.KeepWhitespace=1]="KeepWhitespace",e[e.InsertAsSnippet=4]="InsertAsSnippet"}(dn||(dn={})),function(e){e[e.Method=0]="Method",e[e.Function=1]="Function",e[e.Constructor=2]="Constructor",e[e.Field=3]="Field",e[e.Variable=4]="Variable",e[e.Class=5]="Class",e[e.Struct=6]="Struct",e[e.Interface=7]="Interface",e[e.Module=8]="Module",e[e.Property=9]="Property",e[e.Event=10]="Event",e[e.Operator=11]="Operator",e[e.Unit=12]="Unit",e[e.Value=13]="Value",e[e.Constant=14]="Constant",e[e.Enum=15]="Enum",e[e.EnumMember=16]="EnumMember",e[e.Keyword=17]="Keyword",e[e.Text=18]="Text",e[e.Color=19]="Color",e[e.File=20]="File",e[e.Reference=21]="Reference",e[e.Customcolor=22]="Customcolor",e[e.Folder=23]="Folder",e[e.TypeParameter=24]="TypeParameter",e[e.User=25]="User",e[e.Issue=26]="Issue",e[e.Snippet=27]="Snippet"}(pn||(pn={})),function(e){e[e.Deprecated=1]="Deprecated"}(un||(un={})),function(e){e[e.Invoke=0]="Invoke",e[e.TriggerCharacter=1]="TriggerCharacter",e[e.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"}(mn||(mn={})),function(e){e[e.EXACT=0]="EXACT",e[e.ABOVE=1]="ABOVE",e[e.BELOW=2]="BELOW"}(fn||(fn={})),function(e){e[e.NotSet=0]="NotSet",e[e.ContentFlush=1]="ContentFlush",e[e.RecoverFromMarkers=2]="RecoverFromMarkers",e[e.Explicit=3]="Explicit",e[e.Paste=4]="Paste",e[e.Undo=5]="Undo",e[e.Redo=6]="Redo"}(gn||(gn={})),function(e){e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"}(bn||(bn={})),function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"}(vn||(vn={})),function(e){e[e.None=0]="None",e[e.Keep=1]="Keep",e[e.Brackets=2]="Brackets",e[e.Advanced=3]="Advanced",e[e.Full=4]="Full"}(yn||(yn={})),function(e){e[e.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",e[e.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",e[e.accessibilitySupport=2]="accessibilitySupport",e[e.accessibilityPageSize=3]="accessibilityPageSize",e[e.ariaLabel=4]="ariaLabel",e[e.autoClosingBrackets=5]="autoClosingBrackets",e[e.autoClosingDelete=6]="autoClosingDelete",e[e.autoClosingOvertype=7]="autoClosingOvertype",e[e.autoClosingQuotes=8]="autoClosingQuotes",e[e.autoIndent=9]="autoIndent",e[e.automaticLayout=10]="automaticLayout",e[e.autoSurround=11]="autoSurround",e[e.bracketPairColorization=12]="bracketPairColorization",e[e.guides=13]="guides",e[e.codeLens=14]="codeLens",e[e.codeLensFontFamily=15]="codeLensFontFamily",e[e.codeLensFontSize=16]="codeLensFontSize",e[e.colorDecorators=17]="colorDecorators",e[e.colorDecoratorsLimit=18]="colorDecoratorsLimit",e[e.columnSelection=19]="columnSelection",e[e.comments=20]="comments",e[e.contextmenu=21]="contextmenu",e[e.copyWithSyntaxHighlighting=22]="copyWithSyntaxHighlighting",e[e.cursorBlinking=23]="cursorBlinking",e[e.cursorSmoothCaretAnimation=24]="cursorSmoothCaretAnimation",e[e.cursorStyle=25]="cursorStyle",e[e.cursorSurroundingLines=26]="cursorSurroundingLines",e[e.cursorSurroundingLinesStyle=27]="cursorSurroundingLinesStyle",e[e.cursorWidth=28]="cursorWidth",e[e.disableLayerHinting=29]="disableLayerHinting",e[e.disableMonospaceOptimizations=30]="disableMonospaceOptimizations",e[e.domReadOnly=31]="domReadOnly",e[e.dragAndDrop=32]="dragAndDrop",e[e.dropIntoEditor=33]="dropIntoEditor",e[e.emptySelectionClipboard=34]="emptySelectionClipboard",e[e.experimentalWhitespaceRendering=35]="experimentalWhitespaceRendering",e[e.extraEditorClassName=36]="extraEditorClassName",e[e.fastScrollSensitivity=37]="fastScrollSensitivity",e[e.find=38]="find",e[e.fixedOverflowWidgets=39]="fixedOverflowWidgets",e[e.folding=40]="folding",e[e.foldingStrategy=41]="foldingStrategy",e[e.foldingHighlight=42]="foldingHighlight",e[e.foldingImportsByDefault=43]="foldingImportsByDefault",e[e.foldingMaximumRegions=44]="foldingMaximumRegions",e[e.unfoldOnClickAfterEndOfLine=45]="unfoldOnClickAfterEndOfLine",e[e.fontFamily=46]="fontFamily",e[e.fontInfo=47]="fontInfo",e[e.fontLigatures=48]="fontLigatures",e[e.fontSize=49]="fontSize",e[e.fontWeight=50]="fontWeight",e[e.fontVariations=51]="fontVariations",e[e.formatOnPaste=52]="formatOnPaste",e[e.formatOnType=53]="formatOnType",e[e.glyphMargin=54]="glyphMargin",e[e.gotoLocation=55]="gotoLocation",e[e.hideCursorInOverviewRuler=56]="hideCursorInOverviewRuler",e[e.hover=57]="hover",e[e.inDiffEditor=58]="inDiffEditor",e[e.inlineSuggest=59]="inlineSuggest",e[e.letterSpacing=60]="letterSpacing",e[e.lightbulb=61]="lightbulb",e[e.lineDecorationsWidth=62]="lineDecorationsWidth",e[e.lineHeight=63]="lineHeight",e[e.lineNumbers=64]="lineNumbers",e[e.lineNumbersMinChars=65]="lineNumbersMinChars",e[e.linkedEditing=66]="linkedEditing",e[e.links=67]="links",e[e.matchBrackets=68]="matchBrackets",e[e.minimap=69]="minimap",e[e.mouseStyle=70]="mouseStyle",e[e.mouseWheelScrollSensitivity=71]="mouseWheelScrollSensitivity",e[e.mouseWheelZoom=72]="mouseWheelZoom",e[e.multiCursorMergeOverlapping=73]="multiCursorMergeOverlapping",e[e.multiCursorModifier=74]="multiCursorModifier",e[e.multiCursorPaste=75]="multiCursorPaste",e[e.multiCursorLimit=76]="multiCursorLimit",e[e.occurrencesHighlight=77]="occurrencesHighlight",e[e.overviewRulerBorder=78]="overviewRulerBorder",e[e.overviewRulerLanes=79]="overviewRulerLanes",e[e.padding=80]="padding",e[e.parameterHints=81]="parameterHints",e[e.peekWidgetDefaultFocus=82]="peekWidgetDefaultFocus",e[e.definitionLinkOpensInPeek=83]="definitionLinkOpensInPeek",e[e.quickSuggestions=84]="quickSuggestions",e[e.quickSuggestionsDelay=85]="quickSuggestionsDelay",e[e.readOnly=86]="readOnly",e[e.renameOnType=87]="renameOnType",e[e.renderControlCharacters=88]="renderControlCharacters",e[e.renderFinalNewline=89]="renderFinalNewline",e[e.renderLineHighlight=90]="renderLineHighlight",e[e.renderLineHighlightOnlyWhenFocus=91]="renderLineHighlightOnlyWhenFocus",e[e.renderValidationDecorations=92]="renderValidationDecorations",e[e.renderWhitespace=93]="renderWhitespace",e[e.revealHorizontalRightPadding=94]="revealHorizontalRightPadding",e[e.roundedSelection=95]="roundedSelection",e[e.rulers=96]="rulers",e[e.scrollbar=97]="scrollbar",e[e.scrollBeyondLastColumn=98]="scrollBeyondLastColumn",e[e.scrollBeyondLastLine=99]="scrollBeyondLastLine",e[e.scrollPredominantAxis=100]="scrollPredominantAxis",e[e.selectionClipboard=101]="selectionClipboard",e[e.selectionHighlight=102]="selectionHighlight",e[e.selectOnLineNumbers=103]="selectOnLineNumbers",e[e.showFoldingControls=104]="showFoldingControls",e[e.showUnused=105]="showUnused",e[e.snippetSuggestions=106]="snippetSuggestions",e[e.smartSelect=107]="smartSelect",e[e.smoothScrolling=108]="smoothScrolling",e[e.stickyScroll=109]="stickyScroll",e[e.stickyTabStops=110]="stickyTabStops",e[e.stopRenderingLineAfter=111]="stopRenderingLineAfter",e[e.suggest=112]="suggest",e[e.suggestFontSize=113]="suggestFontSize",e[e.suggestLineHeight=114]="suggestLineHeight",e[e.suggestOnTriggerCharacters=115]="suggestOnTriggerCharacters",e[e.suggestSelection=116]="suggestSelection",e[e.tabCompletion=117]="tabCompletion",e[e.tabIndex=118]="tabIndex",e[e.unicodeHighlighting=119]="unicodeHighlighting",e[e.unusualLineTerminators=120]="unusualLineTerminators",e[e.useShadowDOM=121]="useShadowDOM",e[e.useTabStops=122]="useTabStops",e[e.wordBreak=123]="wordBreak",e[e.wordSeparators=124]="wordSeparators",e[e.wordWrap=125]="wordWrap",e[e.wordWrapBreakAfterCharacters=126]="wordWrapBreakAfterCharacters",e[e.wordWrapBreakBeforeCharacters=127]="wordWrapBreakBeforeCharacters",e[e.wordWrapColumn=128]="wordWrapColumn",e[e.wordWrapOverride1=129]="wordWrapOverride1",e[e.wordWrapOverride2=130]="wordWrapOverride2",e[e.wrappingIndent=131]="wrappingIndent",e[e.wrappingStrategy=132]="wrappingStrategy",e[e.showDeprecated=133]="showDeprecated",e[e.inlayHints=134]="inlayHints",e[e.editorClassName=135]="editorClassName",e[e.pixelRatio=136]="pixelRatio",e[e.tabFocusMode=137]="tabFocusMode",e[e.layoutInfo=138]="layoutInfo",e[e.wrappingInfo=139]="wrappingInfo"}(wn||(wn={})),function(e){e[e.TextDefined=0]="TextDefined",e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"}(xn||(xn={})),function(e){e[e.LF=0]="LF",e[e.CRLF=1]="CRLF"}(Sn||(Sn={})),function(e){e[e.None=0]="None",e[e.Indent=1]="Indent",e[e.IndentOutdent=2]="IndentOutdent",e[e.Outdent=3]="Outdent"}(kn||(kn={})),function(e){e[e.Both=0]="Both",e[e.Right=1]="Right",e[e.Left=2]="Left",e[e.None=3]="None"}(Cn||(Cn={})),function(e){e[e.Type=1]="Type",e[e.Parameter=2]="Parameter"}(_n||(_n={})),function(e){e[e.Automatic=0]="Automatic",e[e.Explicit=1]="Explicit"}(En||(En={})),function(e){e[e.DependsOnKbLayout=-1]="DependsOnKbLayout",e[e.Unknown=0]="Unknown",e[e.Backspace=1]="Backspace",e[e.Tab=2]="Tab",e[e.Enter=3]="Enter",e[e.Shift=4]="Shift",e[e.Ctrl=5]="Ctrl",e[e.Alt=6]="Alt",e[e.PauseBreak=7]="PauseBreak",e[e.CapsLock=8]="CapsLock",e[e.Escape=9]="Escape",e[e.Space=10]="Space",e[e.PageUp=11]="PageUp",e[e.PageDown=12]="PageDown",e[e.End=13]="End",e[e.Home=14]="Home",e[e.LeftArrow=15]="LeftArrow",e[e.UpArrow=16]="UpArrow",e[e.RightArrow=17]="RightArrow",e[e.DownArrow=18]="DownArrow",e[e.Insert=19]="Insert",e[e.Delete=20]="Delete",e[e.Digit0=21]="Digit0",e[e.Digit1=22]="Digit1",e[e.Digit2=23]="Digit2",e[e.Digit3=24]="Digit3",e[e.Digit4=25]="Digit4",e[e.Digit5=26]="Digit5",e[e.Digit6=27]="Digit6",e[e.Digit7=28]="Digit7",e[e.Digit8=29]="Digit8",e[e.Digit9=30]="Digit9",e[e.KeyA=31]="KeyA",e[e.KeyB=32]="KeyB",e[e.KeyC=33]="KeyC",e[e.KeyD=34]="KeyD",e[e.KeyE=35]="KeyE",e[e.KeyF=36]="KeyF",e[e.KeyG=37]="KeyG",e[e.KeyH=38]="KeyH",e[e.KeyI=39]="KeyI",e[e.KeyJ=40]="KeyJ",e[e.KeyK=41]="KeyK",e[e.KeyL=42]="KeyL",e[e.KeyM=43]="KeyM",e[e.KeyN=44]="KeyN",e[e.KeyO=45]="KeyO",e[e.KeyP=46]="KeyP",e[e.KeyQ=47]="KeyQ",e[e.KeyR=48]="KeyR",e[e.KeyS=49]="KeyS",e[e.KeyT=50]="KeyT",e[e.KeyU=51]="KeyU",e[e.KeyV=52]="KeyV",e[e.KeyW=53]="KeyW",e[e.KeyX=54]="KeyX",e[e.KeyY=55]="KeyY",e[e.KeyZ=56]="KeyZ",e[e.Meta=57]="Meta",e[e.ContextMenu=58]="ContextMenu",e[e.F1=59]="F1",e[e.F2=60]="F2",e[e.F3=61]="F3",e[e.F4=62]="F4",e[e.F5=63]="F5",e[e.F6=64]="F6",e[e.F7=65]="F7",e[e.F8=66]="F8",e[e.F9=67]="F9",e[e.F10=68]="F10",e[e.F11=69]="F11",e[e.F12=70]="F12",e[e.F13=71]="F13",e[e.F14=72]="F14",e[e.F15=73]="F15",e[e.F16=74]="F16",e[e.F17=75]="F17",e[e.F18=76]="F18",e[e.F19=77]="F19",e[e.NumLock=78]="NumLock",e[e.ScrollLock=79]="ScrollLock",e[e.Semicolon=80]="Semicolon",e[e.Equal=81]="Equal",e[e.Comma=82]="Comma",e[e.Minus=83]="Minus",e[e.Period=84]="Period",e[e.Slash=85]="Slash",e[e.Backquote=86]="Backquote",e[e.BracketLeft=87]="BracketLeft",e[e.Backslash=88]="Backslash",e[e.BracketRight=89]="BracketRight",e[e.Quote=90]="Quote",e[e.OEM_8=91]="OEM_8",e[e.IntlBackslash=92]="IntlBackslash",e[e.Numpad0=93]="Numpad0",e[e.Numpad1=94]="Numpad1",e[e.Numpad2=95]="Numpad2",e[e.Numpad3=96]="Numpad3",e[e.Numpad4=97]="Numpad4",e[e.Numpad5=98]="Numpad5",e[e.Numpad6=99]="Numpad6",e[e.Numpad7=100]="Numpad7",e[e.Numpad8=101]="Numpad8",e[e.Numpad9=102]="Numpad9",e[e.NumpadMultiply=103]="NumpadMultiply",e[e.NumpadAdd=104]="NumpadAdd",e[e.NUMPAD_SEPARATOR=105]="NUMPAD_SEPARATOR",e[e.NumpadSubtract=106]="NumpadSubtract",e[e.NumpadDecimal=107]="NumpadDecimal",e[e.NumpadDivide=108]="NumpadDivide",e[e.KEY_IN_COMPOSITION=109]="KEY_IN_COMPOSITION",e[e.ABNT_C1=110]="ABNT_C1",e[e.ABNT_C2=111]="ABNT_C2",e[e.AudioVolumeMute=112]="AudioVolumeMute",e[e.AudioVolumeUp=113]="AudioVolumeUp",e[e.AudioVolumeDown=114]="AudioVolumeDown",e[e.BrowserSearch=115]="BrowserSearch",e[e.BrowserHome=116]="BrowserHome",e[e.BrowserBack=117]="BrowserBack",e[e.BrowserForward=118]="BrowserForward",e[e.MediaTrackNext=119]="MediaTrackNext",e[e.MediaTrackPrevious=120]="MediaTrackPrevious",e[e.MediaStop=121]="MediaStop",e[e.MediaPlayPause=122]="MediaPlayPause",e[e.LaunchMediaPlayer=123]="LaunchMediaPlayer",e[e.LaunchMail=124]="LaunchMail",e[e.LaunchApp2=125]="LaunchApp2",e[e.Clear=126]="Clear",e[e.MAX_VALUE=127]="MAX_VALUE"}(Fn||(Fn={})),function(e){e[e.Hint=1]="Hint",e[e.Info=2]="Info",e[e.Warning=4]="Warning",e[e.Error=8]="Error"}(Rn||(Rn={})),function(e){e[e.Unnecessary=1]="Unnecessary",e[e.Deprecated=2]="Deprecated"}(Nn||(Nn={})),function(e){e[e.Inline=1]="Inline",e[e.Gutter=2]="Gutter"}(Dn||(Dn={})),function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TEXTAREA=1]="TEXTAREA",e[e.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",e[e.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",e[e.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",e[e.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",e[e.CONTENT_TEXT=6]="CONTENT_TEXT",e[e.CONTENT_EMPTY=7]="CONTENT_EMPTY",e[e.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",e[e.CONTENT_WIDGET=9]="CONTENT_WIDGET",e[e.OVERVIEW_RULER=10]="OVERVIEW_RULER",e[e.SCROLLBAR=11]="SCROLLBAR",e[e.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",e[e.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"}(Tn||(Tn={})),function(e){e[e.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",e[e.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",e[e.TOP_CENTER=2]="TOP_CENTER"}(An||(An={})),function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"}(zn||(zn={})),function(e){e[e.Left=0]="Left",e[e.Right=1]="Right",e[e.None=2]="None",e[e.LeftOfInjectedText=3]="LeftOfInjectedText",e[e.RightOfInjectedText=4]="RightOfInjectedText"}(In||(In={})),function(e){e[e.Off=0]="Off",e[e.On=1]="On",e[e.Relative=2]="Relative",e[e.Interval=3]="Interval",e[e.Custom=4]="Custom"}(Mn||(Mn={})),function(e){e[e.None=0]="None",e[e.Text=1]="Text",e[e.Blocks=2]="Blocks"}(Pn||(Pn={})),function(e){e[e.Smooth=0]="Smooth",e[e.Immediate=1]="Immediate"}(Ln||(Ln={})),function(e){e[e.Auto=1]="Auto",e[e.Hidden=2]="Hidden",e[e.Visible=3]="Visible"}(On||(On={})),function(e){e[e.LTR=0]="LTR",e[e.RTL=1]="RTL"}(Wn||(Wn={})),function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"}(Un||(Un={})),function(e){e[e.File=0]="File",e[e.Module=1]="Module",e[e.Namespace=2]="Namespace",e[e.Package=3]="Package",e[e.Class=4]="Class",e[e.Method=5]="Method",e[e.Property=6]="Property",e[e.Field=7]="Field",e[e.Constructor=8]="Constructor",e[e.Enum=9]="Enum",e[e.Interface=10]="Interface",e[e.Function=11]="Function",e[e.Variable=12]="Variable",e[e.Constant=13]="Constant",e[e.String=14]="String",e[e.Number=15]="Number",e[e.Boolean=16]="Boolean",e[e.Array=17]="Array",e[e.Object=18]="Object",e[e.Key=19]="Key",e[e.Null=20]="Null",e[e.EnumMember=21]="EnumMember",e[e.Struct=22]="Struct",e[e.Event=23]="Event",e[e.Operator=24]="Operator",e[e.TypeParameter=25]="TypeParameter"}(Vn||(Vn={})),function(e){e[e.Deprecated=1]="Deprecated"}(Kn||(Kn={})),function(e){e[e.Hidden=0]="Hidden",e[e.Blink=1]="Blink",e[e.Smooth=2]="Smooth",e[e.Phase=3]="Phase",e[e.Expand=4]="Expand",e[e.Solid=5]="Solid"}(Bn||(Bn={})),function(e){e[e.Line=1]="Line",e[e.Block=2]="Block",e[e.Underline=3]="Underline",e[e.LineThin=4]="LineThin",e[e.BlockOutline=5]="BlockOutline",e[e.UnderlineThin=6]="UnderlineThin"}(jn||(jn={})),function(e){e[e.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",e[e.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",e[e.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",e[e.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"}(qn||(qn={})),function(e){e[e.None=0]="None",e[e.Same=1]="Same",e[e.Indent=2]="Indent",e[e.DeepIndent=3]="DeepIndent"}($n||($n={}));class Qn{static chord(e,t){return function(e,t){return(e|(65535&t)<<16>>>0)>>>0}(e,t)}}Qn.CtrlCmd=2048,Qn.Shift=1024,Qn.Alt=512,Qn.WinCtrl=256;function er(e,t,n,r,i){return function(e,t,n,r,i){if(0===r)return!0;const o=t.charCodeAt(r-1);if(0!==e.get(o))return!0;if(13===o||10===o)return!0;if(i>0){const n=t.charCodeAt(r);if(0!==e.get(n))return!0}return!1}(e,t,0,r,i)&&function(e,t,n,r,i){if(r+i===n)return!0;const o=t.charCodeAt(r+i);if(0!==e.get(o))return!0;if(13===o||10===o)return!0;if(i>0){const n=t.charCodeAt(r+i-1);if(0!==e.get(n))return!0}return!1}(e,t,n,r,i)}!function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"}(Hn||(Hn={})),function(e){e[e.Inline=1]="Inline",e[e.Gutter=2]="Gutter"}(Gn||(Gn={})),function(e){e[e.Both=0]="Both",e[e.Right=1]="Right",e[e.Left=2]="Left",e[e.None=3]="None"}(Jn||(Jn={}));class tr{constructor(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(e){const t=e.length;let n;do{if(this._prevMatchStartIndex+this._prevMatchLength===t)return null;if(n=this._searchRegex.exec(e),!n)return null;const r=n.index,i=n[0].length;if(r===this._prevMatchStartIndex&&i===this._prevMatchLength){if(0===i){ae(e,t,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=r,this._prevMatchLength=i,!this._wordSeparators||er(this._wordSeparators,e,t,r,i))return n}while(n);return null}}function nr(e,t="Unreachable"){throw new Error(t)}function rr(e){e()||(e(),n(new a("Assertion Failed")))}function ir(e,t){let n=0;for(;n${this.modifiedRange.toString()}}`}}class lr{constructor(e,t){this.originalRange=e,this.modifiedRange=t}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}}class cr{constructor(e,t){this.startLineNumber=e,this.endLineNumberExclusive=t}get isEmpty(){return this.startLineNumber===this.endLineNumberExclusive}delta(e){return new cr(this.startLineNumber+e,this.endLineNumberExclusive+e)}get length(){return this.endLineNumberExclusive-this.startLineNumber}join(e){return new cr(Math.min(this.startLineNumber,e.startLineNumber),Math.max(this.endLineNumberExclusive,e.endLineNumberExclusive))}toString(){return`[${this.startLineNumber},${this.endLineNumberExclusive})`}}function hr(e,t,n,r){return new Ie(e,t,n).ComputeDiff(r)}class dr{constructor(e){const t=[],n=[];for(let r=0,i=e.length;r(10===e?"\\n":String.fromCharCode(e))+`-(${this._lineNumbers[t]},${this._columns[t]})`)).join(", ")+"]"}_assertIndex(e,t){if(e<0||e>=t.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(e){return e>0&&e===this._lineNumbers.length?this.getEndLineNumber(e-1):(this._assertIndex(e,this._lineNumbers),this._lineNumbers[e])}getEndLineNumber(e){return-1===e?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),10===this._charCodes[e]?this._lineNumbers[e]+1:this._lineNumbers[e])}getStartColumn(e){return e>0&&e===this._columns.length?this.getEndColumn(e-1):(this._assertIndex(e,this._columns),this._columns[e])}getEndColumn(e){return-1===e?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),10===this._charCodes[e]?1:this._columns[e]+1)}}class ur{constructor(e,t,n,r,i,o,s,a){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=n,this.originalEndColumn=r,this.modifiedStartLineNumber=i,this.modifiedStartColumn=o,this.modifiedEndLineNumber=s,this.modifiedEndColumn=a}static createFromDiffChange(e,t,n){const r=t.getStartLineNumber(e.originalStart),i=t.getStartColumn(e.originalStart),o=t.getEndLineNumber(e.originalStart+e.originalLength-1),s=t.getEndColumn(e.originalStart+e.originalLength-1),a=n.getStartLineNumber(e.modifiedStart),l=n.getStartColumn(e.modifiedStart),c=n.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),h=n.getEndColumn(e.modifiedStart+e.modifiedLength-1);return new ur(r,i,o,s,a,l,c,h)}}class mr{constructor(e,t,n,r,i){this.originalStartLineNumber=e,this.originalEndLineNumber=t,this.modifiedStartLineNumber=n,this.modifiedEndLineNumber=r,this.charChanges=i}static createFromDiffResult(e,t,n,r,i,o,s){let a,l,c,h,d;if(0===t.originalLength?(a=n.getStartLineNumber(t.originalStart)-1,l=0):(a=n.getStartLineNumber(t.originalStart),l=n.getEndLineNumber(t.originalStart+t.originalLength-1)),0===t.modifiedLength?(c=r.getStartLineNumber(t.modifiedStart)-1,h=0):(c=r.getStartLineNumber(t.modifiedStart),h=r.getEndLineNumber(t.modifiedStart+t.modifiedLength-1)),o&&t.originalLength>0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&i()){const o=n.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),a=r.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);if(o.getElements().length>0&&a.getElements().length>0){let e=hr(o,a,i,!0).changes;s&&(e=function(e){if(e.length<=1)return e;const t=[e[0]];let n=t[0];for(let r=1,i=e.length;r1&&s>1&&e.charCodeAt(n-2)===t.charCodeAt(s-2);)n--,s--;(n>1||s>1)&&this._pushTrimWhitespaceCharChange(r,i+1,1,n,o+1,1,s)}{let n=br(e,1),s=br(t,1);const a=e.length+1,l=t.length+1;for(;n=0;n--){const t=e.charCodeAt(n);if(32!==t&&9!==t)return n}return-1}(e);return-1===n?t:n+2}function vr(e){if(0===e)return()=>!0;const t=Date.now();return()=>Date.now()-t ${this.seq2Range}`}}class wr{constructor(e,t){this.start=e,this.endExclusive=t}get isEmpty(){return this.start===this.endExclusive}delta(e){return new wr(this.start+e,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}join(e){return new wr(Math.min(this.start,e.start),Math.max(this.endExclusive,e.endExclusive))}}class xr{constructor(e,t){this.width=e,this.height=t,this.array=[],this.array=new Array(e*t)}get(e,t){return this.array[e+t*this.width]}set(e,t,n){this.array[e+t*this.width]=n}}class Sr{compute(e,t,n){const r=new xr(e.length,t.length),i=new xr(e.length,t.length),o=new xr(e.length,t.length);for(let s=0;s0&&a>0&&3===i.get(s-1,a-1)&&(h+=o.get(s-1,a-1)),h+=n?n(s,a):1):h=-1;const d=Math.max(l,c,h);if(d===h){const e=s>0&&a>0?o.get(s-1,a-1):0;o.set(s,a,e+1),i.set(s,a,3)}else d===l?(o.set(s,a,0),i.set(s,a,1)):d===c&&(o.set(s,a,0),i.set(s,a,2));r.set(s,a,d)}const s=[];let a=e.length,l=t.length;function c(e,t){e+1===a&&t+1===l||s.push(new yr(new wr(e+1,a),new wr(t+1,l))),a=e,l=t}let h=e.length-1,d=t.length-1;for(;h>=0&&d>=0;)3===i.get(h,d)?(c(h,d),h--,d--):1===i.get(h,d)?h--:d--;return c(-1,-1),s.reverse(),s}}function kr(e,t,n){let r=n;return r=function(e,t,n){const r=[];n.length>0&&r.push(n[0]);for(let e=1;e0?n[r-1].seq2Range.endExclusive:-1,s=r+10?n[r-1].seq1Range.endExclusive:-1,s=r+1i&&n.getElement(e.seq2Range.start-o)===n.getElement(e.seq2Range.endExclusive-o)&&o<20;)o++;o--;let s=0;for(;e.seq2Range.start+sl&&(l=c,a=r)}return 0!==a?new yr(e.seq1Range.delta(a),e.seq2Range.delta(a)):e}class _r{compute(e,t){if(0===e.length)return[new yr(new wr(0,0),new wr(0,t.length))];if(0===t.length)return[new yr(new wr(0,e.length),new wr(0,0))];function n(n,r){for(;n=this.negativeArr.length){const e=this.negativeArr;this.negativeArr=new Int32Array(2*e.length),this.negativeArr.set(e)}this.negativeArr[e]=t}else{if(e>=this.positiveArr.length){const e=this.positiveArr;this.positiveArr=new Int32Array(2*e.length),this.positiveArr.set(e)}this.positiveArr[e]=t}}}class Rr{constructor(){this.positiveArr=[],this.negativeArr=[]}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){e<0?(e=-e-1,this.negativeArr[e]=t):this.positiveArr[e]=t}}class Nr{constructor(e,t){this.trimmedHash=e,this.lines=t}getElement(e){return this.trimmedHash[e]}get length(){return this.trimmedHash.length}getBoundaryScore(e){return 1e3-((0===e?0:Dr(this.lines[e-1]))+(e===this.lines.length?0:Dr(this.lines[e])))}}function Dr(e){let t=0;for(;t0?this.elements[e-1]:-1),n=Ir(ee?n=r:t=r+1}const r=0===t?0:this.firstCharOnLineOffsets[t-1];return new bt(t+1,e-r+1)}translateRange(e){return vt.fromPositions(this.translateOffset(e.start),this.translateOffset(e.endExclusive))}}const Ar={0:0,1:0,2:0,3:10,4:2,5:3,6:10,7:10};function zr(e){return Ar[e]}function Ir(e){return 10===e?7:13===e?6:function(e){return 32===e||9===e}(e)?5:e>=97&&e<=122?0:e>=65&&e<=90?1:e>=48&&e<=57?2:-1===e?3:4}const Mr={smart:new class{computeDiff(e,t,n){var r;const i=new fr(e,t,{maxComputationTime:n.maxComputationTimeMs,shouldIgnoreTrimWhitespace:n.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),o=[];let s=null;for(const e of i.changes){let t,n;t=0===e.originalEndLineNumber?new cr(e.originalStartLineNumber+1,e.originalStartLineNumber+1):new cr(e.originalStartLineNumber,e.originalEndLineNumber+1),n=0===e.modifiedEndLineNumber?new cr(e.modifiedStartLineNumber+1,e.modifiedStartLineNumber+1):new cr(e.modifiedStartLineNumber,e.modifiedEndLineNumber+1);let i=new ar(t,n,null===(r=e.charChanges)||void 0===r?void 0:r.map((e=>new lr(new vt(e.originalStartLineNumber,e.originalStartColumn,e.originalEndLineNumber,e.originalEndColumn),new vt(e.modifiedStartLineNumber,e.modifiedStartColumn,e.modifiedEndLineNumber,e.modifiedEndColumn)))));s&&(s.modifiedRange.endLineNumberExclusive!==i.modifiedRange.startLineNumber&&s.originalRange.endLineNumberExclusive!==i.originalRange.startLineNumber||(i=new ar(s.originalRange.join(i.originalRange),s.modifiedRange.join(i.modifiedRange),s.innerChanges&&i.innerChanges?s.innerChanges.concat(i.innerChanges):void 0),o.pop())),o.push(i),s=i}return rr((()=>ir(o,((e,t)=>t.originalRange.startLineNumber-e.originalRange.endLineNumberExclusive==t.modifiedRange.startLineNumber-e.modifiedRange.endLineNumberExclusive&&e.originalRange.endLineNumberExclusivei(e.trim()))),s=t.map((e=>i(e.trim()))),a=new Nr(o,e),l=new Nr(s,t);let c=(()=>a.length+l.length<1500?this.dynamicProgrammingDiffing.compute(a,l,((n,r)=>e[n]===t[r]?0===t[r].length?.1:1+Math.log(1+t[r].length):.99)):this.myersDiffingAlgorithm.compute(a,l))();c=kr(a,l,c);const h=[],d=n=>{for(let r=0;rn.seq1Range.start-p==n.seq2Range.start-u)),d(n.seq1Range.start-p),p=n.seq1Range.endExclusive,u=n.seq2Range.endExclusive;const r=this.refineDiff(e,t,n);for(const e of r)h.push(e)}d(e.length-p);const m=function(e){const t=[];for(const n of function*(e,t){let n,r;for(const t of e)void 0!==r&&(i=r,(o=t).originalRange.startLineNumber-(i.originalRange.endLineNumber-(i.originalRange.endColumn>1?0:1))<=1||o.modifiedRange.startLineNumber-(i.modifiedRange.endLineNumber-(i.modifiedRange.endColumn>1?0:1))<=1)?n.push(t):(n&&(yield n),n=[t]),r=t;var i,o;n&&(yield n)}(e)){const e=n[0],r=n[n.length-1];t.push(new ar(new cr(e.originalRange.startLineNumber,r.originalRange.endLineNumber+(r.originalRange.endColumn>1||r.modifiedRange.endColumn>1?1:0)),new cr(e.modifiedRange.startLineNumber,r.modifiedRange.endLineNumber+(r.originalRange.endColumn>1||r.modifiedRange.endColumn>1?1:0)),n))}return rr((()=>ir(t,((e,t)=>t.originalRange.startLineNumber-e.originalRange.endLineNumberExclusive==t.modifiedRange.startLineNumber-e.modifiedRange.endLineNumberExclusive&&e.originalRange.endLineNumberExclusivenew lr(r.translateRange(e.seq1Range).delta(n.seq1Range.start),i.translateRange(e.seq2Range).delta(n.seq2Range.start))))}}};var Pr=function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{l(r.next(e))}catch(e){o(e)}}function a(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}l((r=r.apply(e,t||[])).next())}))};class Lr extends class{constructor(e,t,n,r){this._uri=e,this._lines=t,this._eol=n,this._versionId=r,this._lineStarts=null,this._cachedTextValue=null}dispose(){this._lines.length=0}get version(){return this._versionId}getText(){return null===this._cachedTextValue&&(this._cachedTextValue=this._lines.join(this._eol)),this._cachedTextValue}onEvents(e){e.eol&&e.eol!==this._eol&&(this._eol=e.eol,this._lineStarts=null);const t=e.changes;for(const e of t)this._acceptDeleteRange(e.range),this._acceptInsertText(new bt(e.range.startLineNumber,e.range.startColumn),e.text);this._versionId=e.versionId,this._cachedTextValue=null}_ensureLineStarts(){if(!this._lineStarts){const e=this._eol.length,t=this._lines.length,n=new Uint32Array(t);for(let r=0;rthis._lines.length)t=this._lines.length,n=this._lines[t-1].length+1,r=!0;else{const e=this._lines[t-1].length+1;n<1?(n=1,r=!0):n>e&&(n=e,r=!0)}return r?{lineNumber:t,column:n}:e}}class Or{constructor(e,t){this._host=e,this._models=Object.create(null),this._foreignModuleFactory=t,this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(e){return this._models[e]}_getModels(){const e=[];return Object.keys(this._models).forEach((t=>e.push(this._models[t]))),e}acceptNewModel(e){this._models[e.url]=new Lr(st.parse(e.url),e.lines,e.EOL,e.versionId)}acceptModelChanged(e,t){this._models[e]&&this._models[e].onEvents(t)}acceptRemovedModel(e){this._models[e]&&delete this._models[e]}computeUnicodeHighlights(e,t,n){return Pr(this,void 0,void 0,(function*(){const r=this._getModel(e);return r?class{static computeUnicodeHighlights(e,t,n){const r=n?n.startLineNumber:1,i=n?n.endLineNumber:e.getLineCount(),o=new or(t),s=o.getCandidateCodePoints();let a;var l;a="allNonBasicAscii"===s?new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):new RegExp(`[${l=Array.from(s).map((e=>String.fromCodePoint(e))).join(""),l.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}]`,"g");const c=new tr(null,a),h=[];let d,p=!1,u=0,m=0,f=0;e:for(let t=r,n=i;t<=n;t++){const n=e.getLineContent(t),r=n.length;c.reset(0);do{if(d=c.next(n),d){let e=d.index,i=d.index+d[0].length;e>0&&ie(n.charCodeAt(e-1))&&e--,i+1=n){p=!0;break e}h.push(new vt(t,e+1,t,i+1))}}}while(d)}return{ranges:h,hasMore:p,ambiguousCharacterCount:u,invisibleCharacterCount:m,nonBasicAsciiCharacterCount:f}}static computeUnicodeHighlightReason(e,t){const n=new or(t);switch(n.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{const r=e.codePointAt(0),i=n.ambiguousCharacters.getPrimaryConfusable(r),o=he.getLocales().filter((e=>!he.getInstance(new Set([...t.allowedLocales,e])).isAmbiguous(r)));return{kind:0,confusableWith:String.fromCodePoint(i),notAmbiguousInLocales:o}}case 1:return{kind:2}}}}.computeUnicodeHighlights(r,t,n):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}))}computeDiff(e,t,n,r){return Pr(this,void 0,void 0,(function*(){const i=this._getModel(e),o=this._getModel(t);return i&&o?Or.computeDiff(i,o,n,r):null}))}static computeDiff(e,t,n,r){const i="experimental"===r?Mr.experimental:Mr.smart,o=e.getLinesContent(),s=t.getLinesContent(),a=i.computeDiff(o,s,n);return{identical:!(a.changes.length>0)&&this._modelsAreIdentical(e,t),quitEarly:a.quitEarly,changes:a.changes.map((e=>{var t;return[e.originalRange.startLineNumber,e.originalRange.endLineNumberExclusive,e.modifiedRange.startLineNumber,e.modifiedRange.endLineNumberExclusive,null===(t=e.innerChanges)||void 0===t?void 0:t.map((e=>[e.originalRange.startLineNumber,e.originalRange.startColumn,e.originalRange.endLineNumber,e.originalRange.endColumn,e.modifiedRange.startLineNumber,e.modifiedRange.startColumn,e.modifiedRange.endLineNumber,e.modifiedRange.endColumn]))]}))}}static _modelsAreIdentical(e,t){const n=e.getLineCount();if(n!==t.getLineCount())return!1;for(let r=1;r<=n;r++)if(e.getLineContent(r)!==t.getLineContent(r))return!1;return!0}computeMoreMinimalEdits(e,t){return Pr(this,void 0,void 0,(function*(){const n=this._getModel(e);if(!n)return t;const r=[];let i;t=t.slice(0).sort(((e,t)=>e.range&&t.range?vt.compareRangesUsingStarts(e.range,t.range):(e.range?0:1)-(t.range?0:1)));for(let{range:e,text:o,eol:s}of t){if("number"==typeof s&&(i=s),vt.isEmpty(e)&&!o)continue;const t=n.getValueInRange(e);if(o=o.replace(/\r\n|\n|\r/g,n.eol),t===o)continue;if(Math.max(o.length,t.length)>Or._diffLimit){r.push({range:e,text:o});continue}const a=De(t,o,!1),l=n.offsetAt(vt.lift(e).getStartPosition());for(const e of a){const t=n.positionAt(l+e.originalStart),i=n.positionAt(l+e.originalStart+e.originalLength),s={text:o.substr(e.modifiedStart,e.modifiedLength),range:{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:i.lineNumber,endColumn:i.column}};n.getValueInRange(s.range)!==s.text&&r.push(s)}}return"number"==typeof i&&r.push({eol:i,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),r}))}computeLinks(e){return Pr(this,void 0,void 0,(function*(){const t=this._getModel(e);return t?function(e){return e&&"function"==typeof e.getLineCount&&"function"==typeof e.getLineContent?It.computeLinks(e):[]}(t):null}))}textualSuggest(e,t,n,r){return Pr(this,void 0,void 0,(function*(){const i=new q(!0),o=new RegExp(n,r),s=new Set;e:for(const n of e){const e=this._getModel(n);if(e)for(const n of e.words(o))if(n!==t&&isNaN(Number(n))&&(s.add(n),s.size>Or._suggestionsLimit))break e}return{words:Array.from(s),duration:i.elapsed()}}))}computeWordRanges(e,t,n,r){return Pr(this,void 0,void 0,(function*(){const i=this._getModel(e);if(!i)return Object.create(null);const o=new RegExp(n,r),s=Object.create(null);for(let e=t.startLineNumber;efunction(){const n=Array.prototype.slice.call(arguments,0);return t(e,n)},r={};for(const t of e)r[t]=n(t);return r}(n,((e,t)=>this._host.fhr(e,t))),i={host:r,getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(i,t),Promise.resolve(te(this._foreignModule))):Promise.reject(new Error("Unexpected usage"))}fmr(e,t){if(!this._foreignModule||"function"!=typeof this._foreignModule[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(e){return Promise.reject(e)}}}Or._diffLimit=1e5,Or._suggestionsLimit=1e4,"function"==typeof importScripts&&(I.monaco={editor:void 0,languages:void 0,CancellationTokenSource:class{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new Ot),this._token}cancel(){this._token?this._token instanceof Ot&&this._token.cancel():this._token=Lt.Cancelled}dispose(e=!1){var t;e&&this.cancel(),null===(t=this._parentListener)||void 0===t||t.dispose(),this._token?this._token instanceof Ot&&this._token.dispose():this._token=Lt.None}},Emitter:Z,KeyCode:Fn,KeyMod:Qn,Position:bt,Range:vt,Selection:Yt,SelectionDirection:Wn,MarkerSeverity:Rn,MarkerTag:Nn,Uri:st,Token:class{constructor(e,t,n){this.offset=e,this.type=t,this.language=n,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}}});let Wr=!1;function Ur(e){if(Wr)return;Wr=!0;const t=new xe((e=>{self.postMessage(e)}),(t=>new Or(t,e)));self.onmessage=e=>{t.onmessage(e.data)}}var Vr,Kr;self.onmessage=e=>{Wr||Ur(null)},(Kr=Vr||(Vr={}))[Kr.Ident=0]="Ident",Kr[Kr.AtKeyword=1]="AtKeyword",Kr[Kr.String=2]="String",Kr[Kr.BadString=3]="BadString",Kr[Kr.UnquotedString=4]="UnquotedString",Kr[Kr.Hash=5]="Hash",Kr[Kr.Num=6]="Num",Kr[Kr.Percentage=7]="Percentage",Kr[Kr.Dimension=8]="Dimension",Kr[Kr.UnicodeRange=9]="UnicodeRange",Kr[Kr.CDO=10]="CDO",Kr[Kr.CDC=11]="CDC",Kr[Kr.Colon=12]="Colon",Kr[Kr.SemiColon=13]="SemiColon",Kr[Kr.CurlyL=14]="CurlyL",Kr[Kr.CurlyR=15]="CurlyR",Kr[Kr.ParenthesisL=16]="ParenthesisL",Kr[Kr.ParenthesisR=17]="ParenthesisR",Kr[Kr.BracketL=18]="BracketL",Kr[Kr.BracketR=19]="BracketR",Kr[Kr.Whitespace=20]="Whitespace",Kr[Kr.Includes=21]="Includes",Kr[Kr.Dashmatch=22]="Dashmatch",Kr[Kr.SubstringOperator=23]="SubstringOperator",Kr[Kr.PrefixOperator=24]="PrefixOperator",Kr[Kr.SuffixOperator=25]="SuffixOperator",Kr[Kr.Delim=26]="Delim",Kr[Kr.EMS=27]="EMS",Kr[Kr.EXS=28]="EXS",Kr[Kr.Length=29]="Length",Kr[Kr.Angle=30]="Angle",Kr[Kr.Time=31]="Time",Kr[Kr.Freq=32]="Freq",Kr[Kr.Exclamation=33]="Exclamation",Kr[Kr.Resolution=34]="Resolution",Kr[Kr.Comma=35]="Comma",Kr[Kr.Charset=36]="Charset",Kr[Kr.EscapedJavaScript=37]="EscapedJavaScript",Kr[Kr.BadEscapedJavaScript=38]="BadEscapedJavaScript",Kr[Kr.Comment=39]="Comment",Kr[Kr.SingleLineComment=40]="SingleLineComment",Kr[Kr.EOF=41]="EOF",Kr[Kr.CustomToken=42]="CustomToken";var Br=function(){function e(e){this.source=e,this.len=e.length,this.position=0}return e.prototype.substring=function(e,t){return void 0===t&&(t=this.position),this.source.substring(e,t)},e.prototype.eos=function(){return this.len<=this.position},e.prototype.pos=function(){return this.position},e.prototype.goBackTo=function(e){this.position=e},e.prototype.goBack=function(e){this.position-=e},e.prototype.advance=function(e){this.position+=e},e.prototype.nextChar=function(){return this.source.charCodeAt(this.position++)||0},e.prototype.peekChar=function(e){return void 0===e&&(e=0),this.source.charCodeAt(this.position+e)||0},e.prototype.lookbackChar=function(e){return void 0===e&&(e=0),this.source.charCodeAt(this.position-e)||0},e.prototype.advanceIfChar=function(e){return e===this.source.charCodeAt(this.position)&&(this.position++,!0)},e.prototype.advanceIfChars=function(e){if(this.position+e.length>this.source.length)return!1;for(var t=0;t".charCodeAt(0),hi="@".charCodeAt(0),di="#".charCodeAt(0),pi="$".charCodeAt(0),ui="\\".charCodeAt(0),mi="/".charCodeAt(0),fi="\n".charCodeAt(0),gi="\r".charCodeAt(0),bi="\f".charCodeAt(0),vi='"'.charCodeAt(0),yi="'".charCodeAt(0),wi=" ".charCodeAt(0),xi="\t".charCodeAt(0),Si=";".charCodeAt(0),ki=":".charCodeAt(0),Ci="{".charCodeAt(0),_i="}".charCodeAt(0),Ei="[".charCodeAt(0),Fi="]".charCodeAt(0),Ri=",".charCodeAt(0),Ni=".".charCodeAt(0),Di="!".charCodeAt(0),Ti="?".charCodeAt(0),Ai="+".charCodeAt(0),zi={};zi[Si]=Vr.SemiColon,zi[ki]=Vr.Colon,zi[Ci]=Vr.CurlyL,zi[_i]=Vr.CurlyR,zi[Fi]=Vr.BracketR,zi[Ei]=Vr.BracketL,zi[si]=Vr.ParenthesisL,zi[ai]=Vr.ParenthesisR,zi[Ri]=Vr.Comma;var Ii={};Ii.em=Vr.EMS,Ii.ex=Vr.EXS,Ii.px=Vr.Length,Ii.cm=Vr.Length,Ii.mm=Vr.Length,Ii.in=Vr.Length,Ii.pt=Vr.Length,Ii.pc=Vr.Length,Ii.deg=Vr.Angle,Ii.rad=Vr.Angle,Ii.grad=Vr.Angle,Ii.ms=Vr.Time,Ii.s=Vr.Time,Ii.hz=Vr.Freq,Ii.khz=Vr.Freq,Ii["%"]=Vr.Percentage,Ii.fr=Vr.Percentage,Ii.dpi=Vr.Resolution,Ii.dpcm=Vr.Resolution;var Mi=function(){function e(){this.stream=new Br(""),this.ignoreComment=!0,this.ignoreWhitespace=!0,this.inURL=!1}return e.prototype.setSource=function(e){this.stream=new Br(e)},e.prototype.finishToken=function(e,t,n){return{offset:e,len:this.stream.pos()-e,type:t,text:n||this.stream.substring(e)}},e.prototype.substring=function(e,t){return this.stream.substring(e,e+t)},e.prototype.pos=function(){return this.stream.pos()},e.prototype.goBackTo=function(e){this.stream.goBackTo(e)},e.prototype.scanUnquotedString=function(){var e=this.stream.pos(),t=[];return this._unquotedString(t)?this.finishToken(e,Vr.UnquotedString,t.join("")):null},e.prototype.scan=function(){var e=this.trivia();if(null!==e)return e;var t=this.stream.pos();return this.stream.eos()?this.finishToken(t,Vr.EOF):this.scanNext(t)},e.prototype.tryScanUnicode=function(){var e=this.stream.pos();if(!this.stream.eos()&&this._unicodeRange())return this.finishToken(e,Vr.UnicodeRange);this.stream.goBackTo(e)},e.prototype.scanNext=function(e){if(this.stream.advanceIfChars([li,Di,ni,ni]))return this.finishToken(e,Vr.CDO);if(this.stream.advanceIfChars([ni,ni,ci]))return this.finishToken(e,Vr.CDC);var t=[];if(this.ident(t))return this.finishToken(e,Vr.Ident,t.join(""));if(this.stream.advanceIfChar(hi)){if(t=["@"],this._name(t)){var n=t.join("");return"@charset"===n?this.finishToken(e,Vr.Charset,n):this.finishToken(e,Vr.AtKeyword,n)}return this.finishToken(e,Vr.Delim)}if(this.stream.advanceIfChar(di))return t=["#"],this._name(t)?this.finishToken(e,Vr.Hash,t.join("")):this.finishToken(e,Vr.Delim);if(this.stream.advanceIfChar(Di))return this.finishToken(e,Vr.Exclamation);if(this._number()){var r=this.stream.pos();if(t=[this.stream.substring(e,r)],this.stream.advanceIfChar(ii))return this.finishToken(e,Vr.Percentage);if(this.ident(t)){var i=this.stream.substring(r).toLowerCase(),o=Ii[i];return void 0!==o?this.finishToken(e,o,t.join("")):this.finishToken(e,Vr.Dimension,t.join(""))}return this.finishToken(e,Vr.Num)}t=[];var s=this._string(t);return null!==s?this.finishToken(e,s,t.join("")):void 0!==(s=zi[this.stream.peekChar()])?(this.stream.advance(1),this.finishToken(e,s)):this.stream.peekChar(0)===Zr&&this.stream.peekChar(1)===ei?(this.stream.advance(2),this.finishToken(e,Vr.Includes)):this.stream.peekChar(0)===ti&&this.stream.peekChar(1)===ei?(this.stream.advance(2),this.finishToken(e,Vr.Dashmatch)):this.stream.peekChar(0)===oi&&this.stream.peekChar(1)===ei?(this.stream.advance(2),this.finishToken(e,Vr.SubstringOperator)):this.stream.peekChar(0)===Qr&&this.stream.peekChar(1)===ei?(this.stream.advance(2),this.finishToken(e,Vr.PrefixOperator)):this.stream.peekChar(0)===pi&&this.stream.peekChar(1)===ei?(this.stream.advance(2),this.finishToken(e,Vr.SuffixOperator)):(this.stream.nextChar(),this.finishToken(e,Vr.Delim))},e.prototype.trivia=function(){for(;;){var e=this.stream.pos();if(this._whitespace()){if(!this.ignoreWhitespace)return this.finishToken(e,Vr.Whitespace)}else{if(!this.comment())return null;if(!this.ignoreComment)return this.finishToken(e,Vr.Comment)}}},e.prototype.comment=function(){if(this.stream.advanceIfChars([mi,oi])){var e=!1,t=!1;return this.stream.advanceWhileChar((function(n){return t&&n===mi?(e=!0,!1):(t=n===oi,!0)})),e&&this.stream.advance(1),!0}return!1},e.prototype._number=function(){var e,t=0;return this.stream.peekChar()===Ni&&(t=1),(e=this.stream.peekChar(t))>=Xr&&e<=Yr&&(this.stream.advance(t+1),this.stream.advanceWhileChar((function(e){return e>=Xr&&e<=Yr||0===t&&e===Ni})),!0)},e.prototype._newline=function(e){var t=this.stream.peekChar();switch(t){case gi:case bi:case fi:return this.stream.advance(1),e.push(String.fromCharCode(t)),t===gi&&this.stream.advanceIfChar(fi)&&e.push("\n"),!0}return!1},e.prototype._escape=function(e,t){var n=this.stream.peekChar();if(n===ui){this.stream.advance(1),n=this.stream.peekChar();for(var r=0;r<6&&(n>=Xr&&n<=Yr||n>=jr&&n<=qr||n>=Hr&&n<=Gr);)this.stream.advance(1),n=this.stream.peekChar(),r++;if(r>0){try{var i=parseInt(this.stream.substring(this.stream.pos()-r),16);i&&e.push(String.fromCharCode(i))}catch(e){}return n===wi||n===xi?this.stream.advance(1):this._newline([]),!0}if(n!==gi&&n!==bi&&n!==fi)return this.stream.advance(1),e.push(String.fromCharCode(n)),!0;if(t)return this._newline(e)}return!1},e.prototype._stringChar=function(e,t){var n=this.stream.peekChar();return 0!==n&&n!==e&&n!==ui&&n!==gi&&n!==bi&&n!==fi&&(this.stream.advance(1),t.push(String.fromCharCode(n)),!0)},e.prototype._string=function(e){if(this.stream.peekChar()===yi||this.stream.peekChar()===vi){var t=this.stream.nextChar();for(e.push(String.fromCharCode(t));this._stringChar(t,e)||this._escape(e,!0););return this.stream.peekChar()===t?(this.stream.nextChar(),e.push(String.fromCharCode(t)),Vr.String):Vr.BadString}return null},e.prototype._unquotedChar=function(e){var t=this.stream.peekChar();return 0!==t&&t!==ui&&t!==yi&&t!==vi&&t!==si&&t!==ai&&t!==wi&&t!==xi&&t!==fi&&t!==bi&&t!==gi&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._unquotedString=function(e){for(var t=!1;this._unquotedChar(e)||this._escape(e);)t=!0;return t},e.prototype._whitespace=function(){return this.stream.advanceWhileChar((function(e){return e===wi||e===xi||e===fi||e===bi||e===gi}))>0},e.prototype._name=function(e){for(var t=!1;this._identChar(e)||this._escape(e);)t=!0;return t},e.prototype.ident=function(e){var t=this.stream.pos();if(this._minus(e)){if(this._minus(e)||this._identFirstChar(e)||this._escape(e)){for(;this._identChar(e)||this._escape(e););return!0}}else if(this._identFirstChar(e)||this._escape(e)){for(;this._identChar(e)||this._escape(e););return!0}return this.stream.goBackTo(t),!1},e.prototype._identFirstChar=function(e){var t=this.stream.peekChar();return(t===ri||t>=jr&&t<=$r||t>=Hr&&t<=Jr||t>=128&&t<=65535)&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._minus=function(e){var t=this.stream.peekChar();return t===ni&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._identChar=function(e){var t=this.stream.peekChar();return(t===ri||t===ni||t>=jr&&t<=$r||t>=Hr&&t<=Jr||t>=Xr&&t<=Yr||t>=128&&t<=65535)&&(this.stream.advance(1),e.push(String.fromCharCode(t)),!0)},e.prototype._unicodeRange=function(){if(this.stream.advanceIfChar(Ai)){var e=function(e){return e>=Xr&&e<=Yr||e>=jr&&e<=qr||e>=Hr&&e<=Gr},t=this.stream.advanceWhileChar(e)+this.stream.advanceWhileChar((function(e){return e===Ti}));if(t>=1&&t<=6){if(!this.stream.advanceIfChar(ni))return!0;var n=this.stream.advanceWhileChar(e);if(n>=1&&n<=6)return!0}}return!1},e}();function Pi(e,t){if(e.length0?e.lastIndexOf(t)===n:0===n&&e===t}function Oi(e,t){return void 0===t&&(t=!0),e?e.length<140?e:e.slice(0,140)+(t?"…":""):""}function Wi(e,t){for(var n="";t>0;)1==(1&t)&&(n+=e),e+=e,t>>>=1;return n}var Ui,Vi,Ki,Bi,ji,qi=(Ui=function(e,t){return(Ui=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}Ui(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});function $i(e,t){var n=null;return!e||te.end?null:(e.accept((function(e){return-1===e.offset&&-1===e.length||e.offset<=t&&e.end>=t&&(n?e.length<=n.length&&(n=e):n=e,!0)})),n)}function Hi(e,t){for(var n=$i(e,t),r=[];n;)r.unshift(n),n=n.parent;return r}(Ki=Vi||(Vi={}))[Ki.Undefined=0]="Undefined",Ki[Ki.Identifier=1]="Identifier",Ki[Ki.Stylesheet=2]="Stylesheet",Ki[Ki.Ruleset=3]="Ruleset",Ki[Ki.Selector=4]="Selector",Ki[Ki.SimpleSelector=5]="SimpleSelector",Ki[Ki.SelectorInterpolation=6]="SelectorInterpolation",Ki[Ki.SelectorCombinator=7]="SelectorCombinator",Ki[Ki.SelectorCombinatorParent=8]="SelectorCombinatorParent",Ki[Ki.SelectorCombinatorSibling=9]="SelectorCombinatorSibling",Ki[Ki.SelectorCombinatorAllSiblings=10]="SelectorCombinatorAllSiblings",Ki[Ki.SelectorCombinatorShadowPiercingDescendant=11]="SelectorCombinatorShadowPiercingDescendant",Ki[Ki.Page=12]="Page",Ki[Ki.PageBoxMarginBox=13]="PageBoxMarginBox",Ki[Ki.ClassSelector=14]="ClassSelector",Ki[Ki.IdentifierSelector=15]="IdentifierSelector",Ki[Ki.ElementNameSelector=16]="ElementNameSelector",Ki[Ki.PseudoSelector=17]="PseudoSelector",Ki[Ki.AttributeSelector=18]="AttributeSelector",Ki[Ki.Declaration=19]="Declaration",Ki[Ki.Declarations=20]="Declarations",Ki[Ki.Property=21]="Property",Ki[Ki.Expression=22]="Expression",Ki[Ki.BinaryExpression=23]="BinaryExpression",Ki[Ki.Term=24]="Term",Ki[Ki.Operator=25]="Operator",Ki[Ki.Value=26]="Value",Ki[Ki.StringLiteral=27]="StringLiteral",Ki[Ki.URILiteral=28]="URILiteral",Ki[Ki.EscapedValue=29]="EscapedValue",Ki[Ki.Function=30]="Function",Ki[Ki.NumericValue=31]="NumericValue",Ki[Ki.HexColorValue=32]="HexColorValue",Ki[Ki.RatioValue=33]="RatioValue",Ki[Ki.MixinDeclaration=34]="MixinDeclaration",Ki[Ki.MixinReference=35]="MixinReference",Ki[Ki.VariableName=36]="VariableName",Ki[Ki.VariableDeclaration=37]="VariableDeclaration",Ki[Ki.Prio=38]="Prio",Ki[Ki.Interpolation=39]="Interpolation",Ki[Ki.NestedProperties=40]="NestedProperties",Ki[Ki.ExtendsReference=41]="ExtendsReference",Ki[Ki.SelectorPlaceholder=42]="SelectorPlaceholder",Ki[Ki.Debug=43]="Debug",Ki[Ki.If=44]="If",Ki[Ki.Else=45]="Else",Ki[Ki.For=46]="For",Ki[Ki.Each=47]="Each",Ki[Ki.While=48]="While",Ki[Ki.MixinContentReference=49]="MixinContentReference",Ki[Ki.MixinContentDeclaration=50]="MixinContentDeclaration",Ki[Ki.Media=51]="Media",Ki[Ki.Keyframe=52]="Keyframe",Ki[Ki.FontFace=53]="FontFace",Ki[Ki.Import=54]="Import",Ki[Ki.Namespace=55]="Namespace",Ki[Ki.Invocation=56]="Invocation",Ki[Ki.FunctionDeclaration=57]="FunctionDeclaration",Ki[Ki.ReturnStatement=58]="ReturnStatement",Ki[Ki.MediaQuery=59]="MediaQuery",Ki[Ki.MediaCondition=60]="MediaCondition",Ki[Ki.MediaFeature=61]="MediaFeature",Ki[Ki.FunctionParameter=62]="FunctionParameter",Ki[Ki.FunctionArgument=63]="FunctionArgument",Ki[Ki.KeyframeSelector=64]="KeyframeSelector",Ki[Ki.ViewPort=65]="ViewPort",Ki[Ki.Document=66]="Document",Ki[Ki.AtApplyRule=67]="AtApplyRule",Ki[Ki.CustomPropertyDeclaration=68]="CustomPropertyDeclaration",Ki[Ki.CustomPropertySet=69]="CustomPropertySet",Ki[Ki.ListEntry=70]="ListEntry",Ki[Ki.Supports=71]="Supports",Ki[Ki.SupportsCondition=72]="SupportsCondition",Ki[Ki.NamespacePrefix=73]="NamespacePrefix",Ki[Ki.GridLine=74]="GridLine",Ki[Ki.Plugin=75]="Plugin",Ki[Ki.UnknownAtRule=76]="UnknownAtRule",Ki[Ki.Use=77]="Use",Ki[Ki.ModuleConfiguration=78]="ModuleConfiguration",Ki[Ki.Forward=79]="Forward",Ki[Ki.ForwardVisibility=80]="ForwardVisibility",Ki[Ki.Module=81]="Module",Ki[Ki.UnicodeRange=82]="UnicodeRange",(ji=Bi||(Bi={}))[ji.Mixin=0]="Mixin",ji[ji.Rule=1]="Rule",ji[ji.Variable=2]="Variable",ji[ji.Function=3]="Function",ji[ji.Keyframe=4]="Keyframe",ji[ji.Unknown=5]="Unknown",ji[ji.Module=6]="Module",ji[ji.Forward=7]="Forward",ji[ji.ForwardVisibility=8]="ForwardVisibility";var Gi,Ji,Xi=function(){function e(e,t,n){void 0===e&&(e=-1),void 0===t&&(t=-1),this.parent=null,this.offset=e,this.length=t,n&&(this.nodeType=n)}return Object.defineProperty(e.prototype,"end",{get:function(){return this.offset+this.length},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"type",{get:function(){return this.nodeType||Vi.Undefined},set:function(e){this.nodeType=e},enumerable:!1,configurable:!0}),e.prototype.getTextProvider=function(){for(var e=this;e&&!e.textProvider;)e=e.parent;return e?e.textProvider:function(){return"unknown"}},e.prototype.getText=function(){return this.getTextProvider()(this.offset,this.length)},e.prototype.matches=function(e){return this.length===e.length&&this.getTextProvider()(this.offset,this.length)===e},e.prototype.startsWith=function(e){return this.length>=e.length&&this.getTextProvider()(this.offset,e.length)===e},e.prototype.endsWith=function(e){return this.length>=e.length&&this.getTextProvider()(this.end-e.length,e.length)===e},e.prototype.accept=function(e){if(e(this)&&this.children)for(var t=0,n=this.children;t=0&&e.parent.children.splice(n,1)}e.parent=this;var r=this.children;return r||(r=this.children=[]),-1!==t?r.splice(t,0,e):r.push(e),e},e.prototype.attachTo=function(e,t){return void 0===t&&(t=-1),e&&e.adoptChild(this,t),this},e.prototype.collectIssues=function(e){this.issues&&e.push.apply(e,this.issues)},e.prototype.addIssue=function(e){this.issues||(this.issues=[]),this.issues.push(e)},e.prototype.hasIssue=function(e){return Array.isArray(this.issues)&&this.issues.some((function(t){return t.getRule()===e}))},e.prototype.isErroneous=function(e){return void 0===e&&(e=!1),!!(this.issues&&this.issues.length>0)||e&&Array.isArray(this.children)&&this.children.some((function(e){return e.isErroneous(!0)}))},e.prototype.setNode=function(e,t,n){return void 0===n&&(n=-1),!!t&&(t.attachTo(this,n),this[e]=t,!0)},e.prototype.addChild=function(e){return!!e&&(this.children||(this.children=[]),e.attachTo(this),this.updateOffsetAndLength(e),!0)},e.prototype.updateOffsetAndLength=function(e){(e.offsetthis.end||-1===this.length)&&(this.length=t-this.offset)},e.prototype.hasChildren=function(){return!!this.children&&this.children.length>0},e.prototype.getChildren=function(){return this.children?this.children.slice(0):[]},e.prototype.getChild=function(e){return this.children&&e=0;n--)if((t=this.children[n]).offset<=e)return t;return null},e.prototype.findChildAtOffset=function(e,t){var n=this.findFirstChildBeforeOffset(e);return n&&n.end>=e?t&&n.findChildAtOffset(e,!0)||n:null},e.prototype.encloses=function(e){return this.offset<=e.offset&&this.offset+this.length>=e.offset+e.length},e.prototype.getParent=function(){for(var e=this.parent;e instanceof Yi;)e=e.parent;return e},e.prototype.findParent=function(e){for(var t=this;t&&t.type!==e;)t=t.parent;return t},e.prototype.findAParent=function(){for(var e=[],t=0;t{let r=n[0];return void 0!==t[r]?t[r]:e})),n}(t,n)}function ms(e){return us}var fs,gs,bs,vs,ys,ws,xs,Ss,ks,Cs,_s,Es,Fs,Rs,Ns,Ds,Ts,As,zs,Is,Ms,Ps,Ls,Os,Ws,Us,Vs,Ks,Bs,js,qs,$s,Hs,Gs,Js,Xs,Ys,Zs,Qs,ea,ta,na,ra,ia,oa,sa,aa,la,ca,ha=ms(),da=function(e,t){this.id=e,this.message=t},pa={NumberExpected:new da("css-numberexpected",ha("vs/language/css/css.worker","expected.number","number expected")),ConditionExpected:new da("css-conditionexpected",ha("vs/language/css/css.worker","expected.condt","condition expected")),RuleOrSelectorExpected:new da("css-ruleorselectorexpected",ha("vs/language/css/css.worker","expected.ruleorselector","at-rule or selector expected")),DotExpected:new da("css-dotexpected",ha("vs/language/css/css.worker","expected.dot","dot expected")),ColonExpected:new da("css-colonexpected",ha("vs/language/css/css.worker","expected.colon","colon expected")),SemiColonExpected:new da("css-semicolonexpected",ha("vs/language/css/css.worker","expected.semicolon","semi-colon expected")),TermExpected:new da("css-termexpected",ha("vs/language/css/css.worker","expected.term","term expected")),ExpressionExpected:new da("css-expressionexpected",ha("vs/language/css/css.worker","expected.expression","expression expected")),OperatorExpected:new da("css-operatorexpected",ha("vs/language/css/css.worker","expected.operator","operator expected")),IdentifierExpected:new da("css-identifierexpected",ha("vs/language/css/css.worker","expected.ident","identifier expected")),PercentageExpected:new da("css-percentageexpected",ha("vs/language/css/css.worker","expected.percentage","percentage expected")),URIOrStringExpected:new da("css-uriorstringexpected",ha("vs/language/css/css.worker","expected.uriorstring","uri or string expected")),URIExpected:new da("css-uriexpected",ha("vs/language/css/css.worker","expected.uri","URI expected")),VariableNameExpected:new da("css-varnameexpected",ha("vs/language/css/css.worker","expected.varname","variable name expected")),VariableValueExpected:new da("css-varvalueexpected",ha("vs/language/css/css.worker","expected.varvalue","variable value expected")),PropertyValueExpected:new da("css-propertyvalueexpected",ha("vs/language/css/css.worker","expected.propvalue","property value expected")),LeftCurlyExpected:new da("css-lcurlyexpected",ha("vs/language/css/css.worker","expected.lcurly","{ expected")),RightCurlyExpected:new da("css-rcurlyexpected",ha("vs/language/css/css.worker","expected.rcurly","} expected")),LeftSquareBracketExpected:new da("css-rbracketexpected",ha("vs/language/css/css.worker","expected.lsquare","[ expected")),RightSquareBracketExpected:new da("css-lbracketexpected",ha("vs/language/css/css.worker","expected.rsquare","] expected")),LeftParenthesisExpected:new da("css-lparentexpected",ha("vs/language/css/css.worker","expected.lparen","( expected")),RightParenthesisExpected:new da("css-rparentexpected",ha("vs/language/css/css.worker","expected.rparent",") expected")),CommaExpected:new da("css-commaexpected",ha("vs/language/css/css.worker","expected.comma","comma expected")),PageDirectiveOrDeclarationExpected:new da("css-pagedirordeclexpected",ha("vs/language/css/css.worker","expected.pagedirordecl","page directive or declaraton expected")),UnknownAtRule:new da("css-unknownatrule",ha("vs/language/css/css.worker","unknown.atrule","at-rule unknown")),UnknownKeyword:new da("css-unknownkeyword",ha("vs/language/css/css.worker","unknown.keyword","unknown keyword")),SelectorExpected:new da("css-selectorexpected",ha("vs/language/css/css.worker","expected.selector","selector expected")),StringLiteralExpected:new da("css-stringliteralexpected",ha("vs/language/css/css.worker","expected.stringliteral","string literal expected")),WhitespaceExpected:new da("css-whitespaceexpected",ha("vs/language/css/css.worker","expected.whitespace","whitespace expected")),MediaQueryExpected:new da("css-mediaqueryexpected",ha("vs/language/css/css.worker","expected.mediaquery","media query expected")),IdentifierOrWildcardExpected:new da("css-idorwildcardexpected",ha("vs/language/css/css.worker","expected.idorwildcard","identifier or wildcard expected")),WildcardExpected:new da("css-wildcardexpected",ha("vs/language/css/css.worker","expected.wildcard","wildcard expected")),IdentifierOrVariableExpected:new da("css-idorvarexpected",ha("vs/language/css/css.worker","expected.idorvar","identifier or variable expected"))};(gs=fs||(fs={})).MIN_VALUE=-2147483648,gs.MAX_VALUE=2147483647,(vs=bs||(bs={})).MIN_VALUE=0,vs.MAX_VALUE=2147483647,(ws=ys||(ys={})).create=function(e,t){return e===Number.MAX_VALUE&&(e=bs.MAX_VALUE),t===Number.MAX_VALUE&&(t=bs.MAX_VALUE),{line:e,character:t}},ws.is=function(e){var t=e;return pl.objectLiteral(t)&&pl.uinteger(t.line)&&pl.uinteger(t.character)},(Ss=xs||(xs={})).create=function(e,t,n,r){if(pl.uinteger(e)&&pl.uinteger(t)&&pl.uinteger(n)&&pl.uinteger(r))return{start:ys.create(e,t),end:ys.create(n,r)};if(ys.is(e)&&ys.is(t))return{start:e,end:t};throw new Error("Range#create called with invalid arguments["+e+", "+t+", "+n+", "+r+"]")},Ss.is=function(e){var t=e;return pl.objectLiteral(t)&&ys.is(t.start)&&ys.is(t.end)},(Cs=ks||(ks={})).create=function(e,t){return{uri:e,range:t}},Cs.is=function(e){var t=e;return pl.defined(t)&&xs.is(t.range)&&(pl.string(t.uri)||pl.undefined(t.uri))},(Es=_s||(_s={})).create=function(e,t,n,r){return{targetUri:e,targetRange:t,targetSelectionRange:n,originSelectionRange:r}},Es.is=function(e){var t=e;return pl.defined(t)&&xs.is(t.targetRange)&&pl.string(t.targetUri)&&(xs.is(t.targetSelectionRange)||pl.undefined(t.targetSelectionRange))&&(xs.is(t.originSelectionRange)||pl.undefined(t.originSelectionRange))},(Rs=Fs||(Fs={})).create=function(e,t,n,r){return{red:e,green:t,blue:n,alpha:r}},Rs.is=function(e){var t=e;return pl.numberRange(t.red,0,1)&&pl.numberRange(t.green,0,1)&&pl.numberRange(t.blue,0,1)&&pl.numberRange(t.alpha,0,1)},(Ds=Ns||(Ns={})).create=function(e,t){return{range:e,color:t}},Ds.is=function(e){var t=e;return xs.is(t.range)&&Fs.is(t.color)},(As=Ts||(Ts={})).create=function(e,t,n){return{label:e,textEdit:t,additionalTextEdits:n}},As.is=function(e){var t=e;return pl.string(t.label)&&(pl.undefined(t.textEdit)||Gs.is(t))&&(pl.undefined(t.additionalTextEdits)||pl.typedArray(t.additionalTextEdits,Gs.is))},(Is=zs||(zs={})).Comment="comment",Is.Imports="imports",Is.Region="region",(Ps=Ms||(Ms={})).create=function(e,t,n,r,i){var o={startLine:e,endLine:t};return pl.defined(n)&&(o.startCharacter=n),pl.defined(r)&&(o.endCharacter=r),pl.defined(i)&&(o.kind=i),o},Ps.is=function(e){var t=e;return pl.uinteger(t.startLine)&&pl.uinteger(t.startLine)&&(pl.undefined(t.startCharacter)||pl.uinteger(t.startCharacter))&&(pl.undefined(t.endCharacter)||pl.uinteger(t.endCharacter))&&(pl.undefined(t.kind)||pl.string(t.kind))},(Os=Ls||(Ls={})).create=function(e,t){return{location:e,message:t}},Os.is=function(e){var t=e;return pl.defined(t)&&ks.is(t.location)&&pl.string(t.message)},(Us=Ws||(Ws={})).Error=1,Us.Warning=2,Us.Information=3,Us.Hint=4,(Ks=Vs||(Vs={})).Unnecessary=1,Ks.Deprecated=2,(Bs||(Bs={})).is=function(e){var t=e;return null!=t&&pl.string(t.href)},(qs=js||(js={})).create=function(e,t,n,r,i,o){var s={range:e,message:t};return pl.defined(n)&&(s.severity=n),pl.defined(r)&&(s.code=r),pl.defined(i)&&(s.source=i),pl.defined(o)&&(s.relatedInformation=o),s},qs.is=function(e){var t,n=e;return pl.defined(n)&&xs.is(n.range)&&pl.string(n.message)&&(pl.number(n.severity)||pl.undefined(n.severity))&&(pl.integer(n.code)||pl.string(n.code)||pl.undefined(n.code))&&(pl.undefined(n.codeDescription)||pl.string(null===(t=n.codeDescription)||void 0===t?void 0:t.href))&&(pl.string(n.source)||pl.undefined(n.source))&&(pl.undefined(n.relatedInformation)||pl.typedArray(n.relatedInformation,Ls.is))},(Hs=$s||($s={})).create=function(e,t){for(var n=[],r=2;r0&&(i.arguments=n),i},Hs.is=function(e){var t=e;return pl.defined(t)&&pl.string(t.title)&&pl.string(t.command)},(Js=Gs||(Gs={})).replace=function(e,t){return{range:e,newText:t}},Js.insert=function(e,t){return{range:{start:e,end:e},newText:t}},Js.del=function(e){return{range:e,newText:""}},Js.is=function(e){var t=e;return pl.objectLiteral(t)&&pl.string(t.newText)&&xs.is(t.range)},(Ys=Xs||(Xs={})).create=function(e,t,n){var r={label:e};return void 0!==t&&(r.needsConfirmation=t),void 0!==n&&(r.description=n),r},Ys.is=function(e){var t=e;return void 0!==t&&pl.objectLiteral(t)&&pl.string(t.label)&&(pl.boolean(t.needsConfirmation)||void 0===t.needsConfirmation)&&(pl.string(t.description)||void 0===t.description)},(Zs||(Zs={})).is=function(e){return"string"==typeof e},(ea=Qs||(Qs={})).replace=function(e,t,n){return{range:e,newText:t,annotationId:n}},ea.insert=function(e,t,n){return{range:{start:e,end:e},newText:t,annotationId:n}},ea.del=function(e,t){return{range:e,newText:"",annotationId:t}},ea.is=function(e){var t=e;return Gs.is(t)&&(Xs.is(t.annotationId)||Zs.is(t.annotationId))},(na=ta||(ta={})).create=function(e,t){return{textDocument:e,edits:t}},na.is=function(e){var t=e;return pl.defined(t)&&ba.is(t.textDocument)&&Array.isArray(t.edits)},(ia=ra||(ra={})).create=function(e,t,n){var r={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(r.options=t),void 0!==n&&(r.annotationId=n),r},ia.is=function(e){var t=e;return t&&"create"===t.kind&&pl.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||pl.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||pl.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||Zs.is(t.annotationId))},(sa=oa||(oa={})).create=function(e,t,n,r){var i={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(i.options=n),void 0!==r&&(i.annotationId=r),i},sa.is=function(e){var t=e;return t&&"rename"===t.kind&&pl.string(t.oldUri)&&pl.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||pl.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||pl.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||Zs.is(t.annotationId))},(la=aa||(aa={})).create=function(e,t,n){var r={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(r.options=t),void 0!==n&&(r.annotationId=n),r},la.is=function(e){var t=e;return t&&"delete"===t.kind&&pl.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||pl.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||pl.boolean(t.options.ignoreIfNotExists)))&&(void 0===t.annotationId||Zs.is(t.annotationId))},(ca||(ca={})).is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every((function(e){return pl.string(e.kind)?ra.is(e)||oa.is(e)||aa.is(e):ta.is(e)})))};var ua,ma,fa,ga,ba,va,ya,wa,xa,Sa,ka,Ca,_a,Ea,Fa,Ra,Na,Da,Ta,Aa,za,Ia,Ma,Pa,La,Oa,Wa,Ua,Va,Ka,Ba,ja,qa,$a,Ha,Ga,Ja,Xa,Ya,Za,Qa,el,tl,nl,rl,il,ol,sl,al,ll,cl,hl=function(){function e(e,t){this.edits=e,this.changeAnnotations=t}return e.prototype.insert=function(e,t,n){var r,i;if(void 0===n?r=Gs.insert(e,t):Zs.is(n)?(i=n,r=Qs.insert(e,t,n)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(n),r=Qs.insert(e,t,i)),this.edits.push(r),void 0!==i)return i},e.prototype.replace=function(e,t,n){var r,i;if(void 0===n?r=Gs.replace(e,t):Zs.is(n)?(i=n,r=Qs.replace(e,t,n)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(n),r=Qs.replace(e,t,i)),this.edits.push(r),void 0!==i)return i},e.prototype.delete=function(e,t){var n,r;if(void 0===t?n=Gs.del(e):Zs.is(t)?(r=t,n=Qs.del(e,t)):(this.assertChangeAnnotations(this.changeAnnotations),r=this.changeAnnotations.manage(t),n=Qs.del(e,r)),this.edits.push(n),void 0!==r)return r},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e.prototype.assertChangeAnnotations=function(e){if(void 0===e)throw new Error("Text edit change is not configured to manage change annotations.")},e}(),dl=function(){function e(e){this._annotations=void 0===e?Object.create(null):e,this._counter=0,this._size=0}return e.prototype.all=function(){return this._annotations},Object.defineProperty(e.prototype,"size",{get:function(){return this._size},enumerable:!1,configurable:!0}),e.prototype.manage=function(e,t){var n;if(Zs.is(e)?n=e:(n=this.nextId(),t=e),void 0!==this._annotations[n])throw new Error("Id "+n+" is already in use.");if(void 0===t)throw new Error("No annotation provided for id "+n);return this._annotations[n]=t,this._size++,n},e.prototype.nextId=function(){return this._counter++,this._counter.toString()},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),void 0!==e?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new dl(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach((function(e){if(ta.is(e)){var n=new hl(e.edits,t._changeAnnotations);t._textEditChanges[e.textDocument.uri]=n}}))):e.changes&&Object.keys(e.changes).forEach((function(n){var r=new hl(e.changes[n]);t._textEditChanges[n]=r}))):this._workspaceEdit={}}Object.defineProperty(e.prototype,"edit",{get:function(){return this.initDocumentChanges(),void 0!==this._changeAnnotations&&(0===this._changeAnnotations.size?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit},enumerable:!1,configurable:!0}),e.prototype.getTextEditChange=function(e){if(ba.is(e)){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t={uri:e.uri,version:e.version};if(!(r=this._textEditChanges[t.uri])){var n={textDocument:t,edits:i=[]};this._workspaceEdit.documentChanges.push(n),r=new hl(i,this._changeAnnotations),this._textEditChanges[t.uri]=r}return r}if(this.initChanges(),void 0===this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var r;if(!(r=this._textEditChanges[e])){var i=[];this._workspaceEdit.changes[e]=i,r=new hl(i),this._textEditChanges[e]=r}return r},e.prototype.initDocumentChanges=function(){void 0===this._workspaceEdit.documentChanges&&void 0===this._workspaceEdit.changes&&(this._changeAnnotations=new dl,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())},e.prototype.initChanges=function(){void 0===this._workspaceEdit.documentChanges&&void 0===this._workspaceEdit.changes&&(this._workspaceEdit.changes=Object.create(null))},e.prototype.createFile=function(e,t,n){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var r,i,o;if(Xs.is(t)||Zs.is(t)?r=t:n=t,void 0===r?i=ra.create(e,n):(o=Zs.is(r)?r:this._changeAnnotations.manage(r),i=ra.create(e,n,o)),this._workspaceEdit.documentChanges.push(i),void 0!==o)return o},e.prototype.renameFile=function(e,t,n,r){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var i,o,s;if(Xs.is(n)||Zs.is(n)?i=n:r=n,void 0===i?o=oa.create(e,t,r):(s=Zs.is(i)?i:this._changeAnnotations.manage(i),o=oa.create(e,t,r,s)),this._workspaceEdit.documentChanges.push(o),void 0!==s)return s},e.prototype.deleteFile=function(e,t,n){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var r,i,o;if(Xs.is(t)||Zs.is(t)?r=t:n=t,void 0===r?i=aa.create(e,n):(o=Zs.is(r)?r:this._changeAnnotations.manage(r),i=aa.create(e,n,o)),this._workspaceEdit.documentChanges.push(i),void 0!==o)return o}}(),(ma=ua||(ua={})).create=function(e){return{uri:e}},ma.is=function(e){var t=e;return pl.defined(t)&&pl.string(t.uri)},(ga=fa||(fa={})).create=function(e,t){return{uri:e,version:t}},ga.is=function(e){var t=e;return pl.defined(t)&&pl.string(t.uri)&&pl.integer(t.version)},(va=ba||(ba={})).create=function(e,t){return{uri:e,version:t}},va.is=function(e){var t=e;return pl.defined(t)&&pl.string(t.uri)&&(null===t.version||pl.integer(t.version))},(wa=ya||(ya={})).create=function(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}},wa.is=function(e){var t=e;return pl.defined(t)&&pl.string(t.uri)&&pl.string(t.languageId)&&pl.integer(t.version)&&pl.string(t.text)},(Sa=xa||(xa={})).PlainText="plaintext",Sa.Markdown="markdown",function(e){e.is=function(t){var n=t;return n===e.PlainText||n===e.Markdown}}(xa||(xa={})),(ka||(ka={})).is=function(e){var t=e;return pl.objectLiteral(e)&&xa.is(t.kind)&&pl.string(t.value)},(_a=Ca||(Ca={})).Text=1,_a.Method=2,_a.Function=3,_a.Constructor=4,_a.Field=5,_a.Variable=6,_a.Class=7,_a.Interface=8,_a.Module=9,_a.Property=10,_a.Unit=11,_a.Value=12,_a.Enum=13,_a.Keyword=14,_a.Snippet=15,_a.Color=16,_a.File=17,_a.Reference=18,_a.Folder=19,_a.EnumMember=20,_a.Constant=21,_a.Struct=22,_a.Event=23,_a.Operator=24,_a.TypeParameter=25,(Fa=Ea||(Ea={})).PlainText=1,Fa.Snippet=2,(Ra||(Ra={})).Deprecated=1,(Da=Na||(Na={})).create=function(e,t,n){return{newText:e,insert:t,replace:n}},Da.is=function(e){var t=e;return t&&pl.string(t.newText)&&xs.is(t.insert)&&xs.is(t.replace)},(Aa=Ta||(Ta={})).asIs=1,Aa.adjustIndentation=2,(za||(za={})).create=function(e){return{label:e}},(Ia||(Ia={})).create=function(e,t){return{items:e||[],isIncomplete:!!t}},(Pa=Ma||(Ma={})).fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},Pa.is=function(e){var t=e;return pl.string(t)||pl.objectLiteral(t)&&pl.string(t.language)&&pl.string(t.value)},(La||(La={})).is=function(e){var t=e;return!!t&&pl.objectLiteral(t)&&(ka.is(t.contents)||Ma.is(t.contents)||pl.typedArray(t.contents,Ma.is))&&(void 0===e.range||xs.is(e.range))},(Oa||(Oa={})).create=function(e,t){return t?{label:e,documentation:t}:{label:e}},(Wa||(Wa={})).create=function(e,t){for(var n=[],r=2;r=0;s--){var a=i[s],l=e.offsetAt(a.range.start),c=e.offsetAt(a.range.end);if(!(c<=o))throw new Error("Overlapping edit");r=r.substring(0,l)+a.newText+r.substring(c,r.length),o=l}return r}}(cl||(cl={}));var pl,ul,ml,fl=function(){function e(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!1,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,n=!0,r=0;r0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,r=t.length;if(0===r)return ys.create(0,e);for(;ne?r=i:n=i+1}var o=n-1;return ys.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],r=e.line+1e?r=i:n=i+1}let i=n-1;return{line:i,character:e-t[i]}}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let n=t[e.line],r=e.line+1n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function _l(e){const t=Cl(e.range);return t!==e.range?{newText:e.newText,range:t}:e}(bl=gl||(gl={})).create=function(e,t,n,r){return new xl(e,t,n,r)},bl.update=function(e,t,n){if(e instanceof xl)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},bl.applyEdits=function(e,t){let n=e.getText(),r=Sl(t.map(_l),((e,t)=>{let n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n})),i=0;const o=[];for(const t of r){let r=e.offsetAt(t.range.start);if(ri&&o.push(n.substring(i,r)),t.newText.length&&o.push(t.newText),i=e.offsetAt(t.range.end)}return o.push(n.substr(i)),o.join("")},(vl||(vl={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[xa.Markdown,xa.PlainText]}},hover:{contentFormat:[xa.Markdown,xa.PlainText]}}},(wl=yl||(yl={}))[wl.Unknown=0]="Unknown",wl[wl.File=1]="File",wl[wl.Directory=2]="Directory",wl[wl.SymbolicLink=64]="SymbolicLink";var El={E:"Edge",FF:"Firefox",S:"Safari",C:"Chrome",IE:"IE",O:"Opera"};function Fl(e){switch(e){case"experimental":return"⚠️ Property is experimental. Be cautious when using it.️\n\n";case"nonstandard":return"🚨️ Property is nonstandard. Avoid using it.\n\n";case"obsolete":return"🚨️️️ Property is obsolete. Avoid using it.\n\n";default:return""}}function Rl(e,t,n){var r;if(""!==(r=t?{kind:"markdown",value:Tl(e,n)}:{kind:"plaintext",value:Dl(e,n)}).value)return r}function Nl(e){return(e=e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")).replace(//g,">")}function Dl(e,t){if(!e.description||""===e.description)return"";if("string"!=typeof e.description)return e.description.value;var n="";if(!1!==(null==t?void 0:t.documentation)){e.status&&(n+=Fl(e.status)),n+=e.description;var r=Al(e.browsers);r&&(n+="\n("+r+")"),"syntax"in e&&(n+="\n\nSyntax: ".concat(e.syntax))}return e.references&&e.references.length>0&&!1!==(null==t?void 0:t.references)&&(n.length>0&&(n+="\n\n"),n+=e.references.map((function(e){return"".concat(e.name,": ").concat(e.url)})).join(" | ")),n}function Tl(e,t){if(!e.description||""===e.description)return"";var n="";if(!1!==(null==t?void 0:t.documentation)){e.status&&(n+=Fl(e.status)),"string"==typeof e.description?n+=Nl(e.description):n+=e.description.kind===xa.Markdown?e.description.value:Nl(e.description.value);var r=Al(e.browsers);r&&(n+="\n\n("+Nl(r)+")"),"syntax"in e&&e.syntax&&(n+="\n\nSyntax: ".concat(Nl(e.syntax)))}return e.references&&e.references.length>0&&!1!==(null==t?void 0:t.references)&&(n.length>0&&(n+="\n\n"),n+=e.references.map((function(e){return"[".concat(e.name,"](").concat(e.url,")")})).join(" | ")),n}function Al(e){return void 0===e&&(e=[]),0===e.length?null:e.map((function(e){var t="",n=e.match(/([A-Z]+)(\d+)?/),r=n[1],i=n[2];return r in El&&(t+=El[r]),i&&(t+=" "+i),t})).join(", ")}var zl=ms(),Il=[{func:"rgb($red, $green, $blue)",desc:zl("vs/language/css/css.worker","css.builtin.rgb","Creates a Color from red, green, and blue values.")},{func:"rgba($red, $green, $blue, $alpha)",desc:zl("vs/language/css/css.worker","css.builtin.rgba","Creates a Color from red, green, blue, and alpha values.")},{func:"hsl($hue, $saturation, $lightness)",desc:zl("vs/language/css/css.worker","css.builtin.hsl","Creates a Color from hue, saturation, and lightness values.")},{func:"hsla($hue, $saturation, $lightness, $alpha)",desc:zl("vs/language/css/css.worker","css.builtin.hsla","Creates a Color from hue, saturation, lightness, and alpha values.")},{func:"hwb($hue $white $black)",desc:zl("vs/language/css/css.worker","css.builtin.hwb","Creates a Color from hue, white and black.")}],Ml={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgrey:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rebeccapurple:"#663399",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},Pl={currentColor:"The value of the 'color' property. The computed value of the 'currentColor' keyword is the computed value of the 'color' property. If the 'currentColor' keyword is set on the 'color' property itself, it is treated as 'color:inherit' at parse time.",transparent:"Fully transparent. This keyword can be considered a shorthand for rgba(0,0,0,0) which is its computed value."};function Ll(e,t){var n=e.getText().match(/^([-+]?[0-9]*\.?[0-9]+)(%?)$/);if(n){n[2]&&(t=100);var r=parseFloat(n[1])/t;if(r>=0&&r<=1)return r}throw new Error}function Ol(e){var t=e.getText(),n=t.match(/^([-+]?[0-9]*\.?[0-9]+)(deg|rad|grad|turn)?$/);if(n)switch(n[2]){case"deg":return parseFloat(t)%360;case"rad":return 180*parseFloat(t)/Math.PI%360;case"grad":return.9*parseFloat(t)%360;case"turn":return 360*parseFloat(t)%360;default:if(void 0===n[2])return parseFloat(t)%360}throw new Error}function Wl(e){return e<48?0:e<=57?e-48:(e<97&&(e+=32),e>=97&&e<=102?e-97+10:0)}function Ul(e){if("#"!==e[0])return null;switch(e.length){case 4:return{red:17*Wl(e.charCodeAt(1))/255,green:17*Wl(e.charCodeAt(2))/255,blue:17*Wl(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*Wl(e.charCodeAt(1))/255,green:17*Wl(e.charCodeAt(2))/255,blue:17*Wl(e.charCodeAt(3))/255,alpha:17*Wl(e.charCodeAt(4))/255};case 7:return{red:(16*Wl(e.charCodeAt(1))+Wl(e.charCodeAt(2)))/255,green:(16*Wl(e.charCodeAt(3))+Wl(e.charCodeAt(4)))/255,blue:(16*Wl(e.charCodeAt(5))+Wl(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*Wl(e.charCodeAt(1))+Wl(e.charCodeAt(2)))/255,green:(16*Wl(e.charCodeAt(3))+Wl(e.charCodeAt(4)))/255,blue:(16*Wl(e.charCodeAt(5))+Wl(e.charCodeAt(6)))/255,alpha:(16*Wl(e.charCodeAt(7))+Wl(e.charCodeAt(8)))/255}}return null}function Vl(e,t,n,r){if(void 0===r&&(r=1),0===t)return{red:n,green:n,blue:n,alpha:r};var i=function(e,t,n){for(;n<0;)n+=6;for(;n>=6;)n-=6;return n<1?(t-e)*n+e:n<3?t:n<4?(t-e)*(4-n)+e:e},o=n<=.5?n*(t+1):n+t-n*t,s=2*n-o;return{red:i(s,o,2+(e/=60)),green:i(s,o,e),blue:i(s,o,e-2),alpha:r}}function Kl(e){var t=e.red,n=e.green,r=e.blue,i=e.alpha,o=Math.max(t,n,r),s=Math.min(t,n,r),a=0,l=0,c=(s+o)/2,h=o-s;if(h>0){switch(l=Math.min(c<=.5?h/(2*c):h/(2-2*c),1),o){case t:a=(n-r)/h+(ne.offset?i-e.offset:0}return e},e.prototype.markError=function(e,t,n,r){this.token!==this.lastErrorToken&&(e.addIssue(new ds(e,t,Gi.Error,void 0,this.token.offset,this.token.len)),this.lastErrorToken=this.token),(n||r)&&this.resync(n,r)},e.prototype.parseStylesheet=function(e){var t=e.version,n=e.getText();return this.internalParse(n,this._parseStylesheet,(function(r,i){if(e.version!==t)throw new Error("Underlying model has changed, AST is no longer valid");return n.substr(r,i)}))},e.prototype.internalParse=function(e,t,n){this.scanner.setSource(e),this.token=this.scanner.scan();var r=t.bind(this)();return r&&(r.textProvider=n||function(t,n){return e.substr(t,n)}),r},e.prototype._parseStylesheet=function(){for(var e=this.create(eo);e.addChild(this._parseStylesheetStart()););var t=!1;do{var n=!1;do{n=!1;var r=this._parseStylesheetStatement();for(r&&(e.addChild(r),n=!0,t=!1,this.peek(Vr.EOF)||!this._needsSemicolonAfter(r)||this.accept(Vr.SemiColon)||this.markError(e,pa.SemiColonExpected));this.accept(Vr.SemiColon)||this.accept(Vr.CDO)||this.accept(Vr.CDC);)n=!0,t=!1}while(n);if(this.peek(Vr.EOF))break;t||(this.peek(Vr.AtKeyword)?this.markError(e,pa.UnknownAtRule):this.markError(e,pa.RuleOrSelectorExpected),t=!0),this.consumeToken()}while(!this.peek(Vr.EOF));return this.finish(e)},e.prototype._parseStylesheetStart=function(){return this._parseCharset()},e.prototype._parseStylesheetStatement=function(e){return void 0===e&&(e=!1),this.peek(Vr.AtKeyword)?this._parseStylesheetAtStatement(e):this._parseRuleset(e)},e.prototype._parseStylesheetAtStatement=function(e){return void 0===e&&(e=!1),this._parseImport()||this._parseMedia(e)||this._parsePage()||this._parseFontFace()||this._parseKeyframe()||this._parseSupports(e)||this._parseViewPort()||this._parseNamespace()||this._parseDocument()||this._parseUnknownAtRule()},e.prototype._tryParseRuleset=function(e){var t=this.mark();if(this._parseSelector(e)){for(;this.accept(Vr.Comma)&&this._parseSelector(e););if(this.accept(Vr.CurlyL))return this.restoreAtMark(t),this._parseRuleset(e)}return this.restoreAtMark(t),null},e.prototype._parseRuleset=function(e){void 0===e&&(e=!1);var t=this.create(ro),n=t.getSelectors();if(!n.addChild(this._parseSelector(e)))return null;for(;this.accept(Vr.Comma);)if(!n.addChild(this._parseSelector(e)))return this.finish(t,pa.SelectorExpected);return this._parseBody(t,this._parseRuleSetDeclaration.bind(this))},e.prototype._parseRuleSetDeclarationAtStatement=function(){return this._parseUnknownAtRule()},e.prototype._parseRuleSetDeclaration=function(){return this.peek(Vr.AtKeyword)?this._parseRuleSetDeclarationAtStatement():this._parseDeclaration()},e.prototype._needsSemicolonAfter=function(e){switch(e.type){case Vi.Keyframe:case Vi.ViewPort:case Vi.Media:case Vi.Ruleset:case Vi.Namespace:case Vi.If:case Vi.For:case Vi.Each:case Vi.While:case Vi.MixinDeclaration:case Vi.FunctionDeclaration:case Vi.MixinContentDeclaration:return!1;case Vi.ExtendsReference:case Vi.MixinContentReference:case Vi.ReturnStatement:case Vi.MediaQuery:case Vi.Debug:case Vi.Import:case Vi.AtApplyRule:case Vi.CustomPropertyDeclaration:return!0;case Vi.VariableDeclaration:return e.needsSemicolon;case Vi.MixinReference:return!e.getContent();case Vi.Declaration:return!e.getNestedProperties()}return!1},e.prototype._parseDeclarations=function(e){var t=this.create(to);if(!this.accept(Vr.CurlyL))return null;for(var n=e();t.addChild(n)&&!this.peek(Vr.CurlyR);){if(this._needsSemicolonAfter(n)&&!this.accept(Vr.SemiColon))return this.finish(t,pa.SemiColonExpected,[Vr.SemiColon,Vr.CurlyR]);for(n&&this.prevToken&&this.prevToken.type===Vr.SemiColon&&(n.semicolonPosition=this.prevToken.offset);this.accept(Vr.SemiColon););n=e()}return this.accept(Vr.CurlyR)?this.finish(t):this.finish(t,pa.RightCurlyExpected,[Vr.CurlyR,Vr.SemiColon])},e.prototype._parseBody=function(e,t){return e.setDeclarations(this._parseDeclarations(t))?this.finish(e):this.finish(e,pa.LeftCurlyExpected,[Vr.CurlyR,Vr.SemiColon])},e.prototype._parseSelector=function(e){var t=this.create(io),n=!1;for(e&&(n=t.addChild(this._parseCombinator()));t.addChild(this._parseSimpleSelector());)n=!0,t.addChild(this._parseCombinator());return n?this.finish(t):null},e.prototype._parseDeclaration=function(e){var t=this._tryParseCustomPropertyDeclaration(e);if(t)return t;var n=this.create(lo);return n.setProperty(this._parseProperty())?this.accept(Vr.Colon)?(this.prevToken&&(n.colonPosition=this.prevToken.offset),n.setValue(this._parseExpr())?(n.addChild(this._parsePrio()),this.peek(Vr.SemiColon)&&(n.semicolonPosition=this.token.offset),this.finish(n)):this.finish(n,pa.PropertyValueExpected)):this.finish(n,pa.ColonExpected,[Vr.Colon],e||[Vr.SemiColon]):null},e.prototype._tryParseCustomPropertyDeclaration=function(e){if(!this.peekRegExp(Vr.Ident,/^--/))return null;var t=this.create(co);if(!t.setProperty(this._parseProperty()))return null;if(!this.accept(Vr.Colon))return this.finish(t,pa.ColonExpected,[Vr.Colon]);this.prevToken&&(t.colonPosition=this.prevToken.offset);var n=this.mark();if(this.peek(Vr.CurlyL)){var r=this.create(ao),i=this._parseDeclarations(this._parseRuleSetDeclaration.bind(this));if(r.setDeclarations(i)&&!i.isErroneous(!0)&&(r.addChild(this._parsePrio()),this.peek(Vr.SemiColon)))return this.finish(r),t.setPropertySet(r),t.semicolonPosition=this.token.offset,this.finish(t);this.restoreAtMark(n)}var o=this._parseExpr();return o&&!o.isErroneous(!0)&&(this._parsePrio(),this.peekOne.apply(this,sc(sc([],e||[],!1),[Vr.SemiColon,Vr.EOF],!1)))?(t.setValue(o),this.peek(Vr.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)):(this.restoreAtMark(n),t.addChild(this._parseCustomPropertyValue(e)),t.addChild(this._parsePrio()),oc(t.colonPosition)&&this.token.offset===t.colonPosition+1?this.finish(t,pa.PropertyValueExpected):this.finish(t))},e.prototype._parseCustomPropertyValue=function(e){var t=this;void 0===e&&(e=[Vr.CurlyR]);var n=this.create(Xi),r=function(){return-1!==e.indexOf(t.token.type)},i=0,o=0,s=0;e:for(;;){switch(this.token.type){case Vr.SemiColon:case Vr.Exclamation:if(0===i&&0===o&&0===s)break e;break;case Vr.CurlyL:i++;break;case Vr.CurlyR:if(--i<0){if(r()&&0===o&&0===s)break e;return this.finish(n,pa.LeftCurlyExpected)}break;case Vr.ParenthesisL:o++;break;case Vr.ParenthesisR:if(--o<0){if(r()&&0===s&&0===i)break e;return this.finish(n,pa.LeftParenthesisExpected)}break;case Vr.BracketL:s++;break;case Vr.BracketR:if(--s<0)return this.finish(n,pa.LeftSquareBracketExpected);break;case Vr.BadString:break e;case Vr.EOF:var a=pa.RightCurlyExpected;return s>0?a=pa.RightSquareBracketExpected:o>0&&(a=pa.RightParenthesisExpected),this.finish(n,a)}this.consumeToken()}return this.finish(n)},e.prototype._tryToParseDeclaration=function(e){var t=this.mark();return this._parseProperty()&&this.accept(Vr.Colon)?(this.restoreAtMark(t),this._parseDeclaration(e)):(this.restoreAtMark(t),null)},e.prototype._parseProperty=function(){var e=this.create(ho),t=this.mark();return(this.acceptDelim("*")||this.acceptDelim("_"))&&this.hasWhitespace()?(this.restoreAtMark(t),null):e.setIdentifier(this._parsePropertyIdentifier())?this.finish(e):null},e.prototype._parsePropertyIdentifier=function(){return this._parseIdent()},e.prototype._parseCharset=function(){if(!this.peek(Vr.Charset))return null;var e=this.create(Xi);return this.consumeToken(),this.accept(Vr.String)?this.accept(Vr.SemiColon)?this.finish(e):this.finish(e,pa.SemiColonExpected):this.finish(e,pa.IdentifierExpected)},e.prototype._parseImport=function(){if(!this.peekKeyword("@import"))return null;var e=this.create(Eo);return this.consumeToken(),e.addChild(this._parseURILiteral())||e.addChild(this._parseStringLiteral())?(this.peek(Vr.SemiColon)||this.peek(Vr.EOF)||e.setMedialist(this._parseMediaQueryList()),this.finish(e)):this.finish(e,pa.URIOrStringExpected)},e.prototype._parseNamespace=function(){if(!this.peekKeyword("@namespace"))return null;var e=this.create(To);return this.consumeToken(),e.addChild(this._parseURILiteral())||(e.addChild(this._parseIdent()),e.addChild(this._parseURILiteral())||e.addChild(this._parseStringLiteral()))?this.accept(Vr.SemiColon)?this.finish(e):this.finish(e,pa.SemiColonExpected):this.finish(e,pa.URIExpected,[Vr.SemiColon])},e.prototype._parseFontFace=function(){if(!this.peekKeyword("@font-face"))return null;var e=this.create(So);return this.consumeToken(),this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._parseViewPort=function(){if(!this.peekKeyword("@-ms-viewport")&&!this.peekKeyword("@-o-viewport")&&!this.peekKeyword("@viewport"))return null;var e=this.create(xo);return this.consumeToken(),this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._parseKeyframe=function(){if(!this.peekRegExp(Vr.AtKeyword,this.keyframeRegex))return null;var e=this.create(Co),t=this.create(Xi);return this.consumeToken(),e.setKeyword(this.finish(t)),t.matches("@-ms-keyframes")&&this.markError(t,pa.UnknownKeyword),e.setIdentifier(this._parseKeyframeIdent())?this._parseBody(e,this._parseKeyframeSelector.bind(this)):this.finish(e,pa.IdentifierExpected,[Vr.CurlyR])},e.prototype._parseKeyframeIdent=function(){return this._parseIdent([Bi.Keyframe])},e.prototype._parseKeyframeSelector=function(){var e=this.create(_o);if(!e.addChild(this._parseIdent())&&!this.accept(Vr.Percentage))return null;for(;this.accept(Vr.Comma);)if(!e.addChild(this._parseIdent())&&!this.accept(Vr.Percentage))return this.finish(e,pa.PercentageExpected);return this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._tryParseKeyframeSelector=function(){var e=this.create(_o),t=this.mark();if(!e.addChild(this._parseIdent())&&!this.accept(Vr.Percentage))return null;for(;this.accept(Vr.Comma);)if(!e.addChild(this._parseIdent())&&!this.accept(Vr.Percentage))return this.restoreAtMark(t),null;return this.peek(Vr.CurlyL)?this._parseBody(e,this._parseRuleSetDeclaration.bind(this)):(this.restoreAtMark(t),null)},e.prototype._parseSupports=function(e){if(void 0===e&&(e=!1),!this.peekKeyword("@supports"))return null;var t=this.create(zo);return this.consumeToken(),t.addChild(this._parseSupportsCondition()),this._parseBody(t,this._parseSupportsDeclaration.bind(this,e))},e.prototype._parseSupportsDeclaration=function(e){return void 0===e&&(e=!1),e?this._tryParseRuleset(!0)||this._tryToParseDeclaration()||this._parseStylesheetStatement(!0):this._parseStylesheetStatement(!1)},e.prototype._parseSupportsCondition=function(){var e=this.create(Wo);if(this.acceptIdent("not"))e.addChild(this._parseSupportsConditionInParens());else if(e.addChild(this._parseSupportsConditionInParens()),this.peekRegExp(Vr.Ident,/^(and|or)$/i))for(var t=this.token.text.toLowerCase();this.acceptIdent(t);)e.addChild(this._parseSupportsConditionInParens());return this.finish(e)},e.prototype._parseSupportsConditionInParens=function(){var e=this.create(Wo);if(this.accept(Vr.ParenthesisL))return this.prevToken&&(e.lParent=this.prevToken.offset),e.addChild(this._tryToParseDeclaration([Vr.ParenthesisR]))||this._parseSupportsCondition()?this.accept(Vr.ParenthesisR)?(this.prevToken&&(e.rParent=this.prevToken.offset),this.finish(e)):this.finish(e,pa.RightParenthesisExpected,[Vr.ParenthesisR],[]):this.finish(e,pa.ConditionExpected);if(this.peek(Vr.Ident)){var t=this.mark();if(this.consumeToken(),!this.hasWhitespace()&&this.accept(Vr.ParenthesisL)){for(var n=1;this.token.type!==Vr.EOF&&0!==n;)this.token.type===Vr.ParenthesisL?n++:this.token.type===Vr.ParenthesisR&&n--,this.consumeToken();return this.finish(e)}this.restoreAtMark(t)}return this.finish(e,pa.LeftParenthesisExpected,[],[Vr.ParenthesisL])},e.prototype._parseMediaDeclaration=function(e){return void 0===e&&(e=!1),e?this._tryParseRuleset(!0)||this._tryToParseDeclaration()||this._parseStylesheetStatement(!0):this._parseStylesheetStatement(!1)},e.prototype._parseMedia=function(e){if(void 0===e&&(e=!1),!this.peekKeyword("@media"))return null;var t=this.create(Ao);return this.consumeToken(),t.addChild(this._parseMediaQueryList())?this._parseBody(t,this._parseMediaDeclaration.bind(this,e)):this.finish(t,pa.MediaQueryExpected)},e.prototype._parseMediaQueryList=function(){var e=this.create(Mo);if(!e.addChild(this._parseMediaQuery()))return this.finish(e,pa.MediaQueryExpected);for(;this.accept(Vr.Comma);)if(!e.addChild(this._parseMediaQuery()))return this.finish(e,pa.MediaQueryExpected);return this.finish(e)},e.prototype._parseMediaQuery=function(){var e=this.create(Po),t=this.mark();if(this.acceptIdent("not"),this.peek(Vr.ParenthesisL))this.restoreAtMark(t),e.addChild(this._parseMediaCondition());else{if(this.acceptIdent("only"),!e.addChild(this._parseIdent()))return null;this.acceptIdent("and")&&e.addChild(this._parseMediaCondition())}return this.finish(e)},e.prototype._parseRatio=function(){var e=this.mark(),t=this.create(Ho);return this._parseNumeric()?this.acceptDelim("/")?this._parseNumeric()?this.finish(t):this.finish(t,pa.NumberExpected):(this.restoreAtMark(e),null):null},e.prototype._parseMediaCondition=function(){var e=this.create(Lo);this.acceptIdent("not");for(var t=!0;t;){if(!this.accept(Vr.ParenthesisL))return this.finish(e,pa.LeftParenthesisExpected,[],[Vr.CurlyL]);if(this.peek(Vr.ParenthesisL)||this.peekIdent("not")?e.addChild(this._parseMediaCondition()):e.addChild(this._parseMediaFeature()),!this.accept(Vr.ParenthesisR))return this.finish(e,pa.RightParenthesisExpected,[],[Vr.CurlyL]);t=this.acceptIdent("and")||this.acceptIdent("or")}return this.finish(e)},e.prototype._parseMediaFeature=function(){var e=this,t=[Vr.ParenthesisR],n=this.create(Oo),r=function(){return e.acceptDelim("<")||e.acceptDelim(">")?(e.hasWhitespace()||e.acceptDelim("="),!0):!!e.acceptDelim("=")};if(n.addChild(this._parseMediaFeatureName())){if(this.accept(Vr.Colon)){if(!n.addChild(this._parseMediaFeatureValue()))return this.finish(n,pa.TermExpected,[],t)}else if(r()){if(!n.addChild(this._parseMediaFeatureValue()))return this.finish(n,pa.TermExpected,[],t);if(r()&&!n.addChild(this._parseMediaFeatureValue()))return this.finish(n,pa.TermExpected,[],t)}}else{if(!n.addChild(this._parseMediaFeatureValue()))return this.finish(n,pa.IdentifierExpected,[],t);if(!r())return this.finish(n,pa.OperatorExpected,[],t);if(!n.addChild(this._parseMediaFeatureName()))return this.finish(n,pa.IdentifierExpected,[],t);if(r()&&!n.addChild(this._parseMediaFeatureValue()))return this.finish(n,pa.TermExpected,[],t)}return this.finish(n)},e.prototype._parseMediaFeatureName=function(){return this._parseIdent()},e.prototype._parseMediaFeatureValue=function(){return this._parseRatio()||this._parseTermExpression()},e.prototype._parseMedium=function(){var e=this.create(Xi);return e.addChild(this._parseIdent())?this.finish(e):null},e.prototype._parsePageDeclaration=function(){return this._parsePageMarginBox()||this._parseRuleSetDeclaration()},e.prototype._parsePage=function(){if(!this.peekKeyword("@page"))return null;var e=this.create(Uo);if(this.consumeToken(),e.addChild(this._parsePageSelector()))for(;this.accept(Vr.Comma);)if(!e.addChild(this._parsePageSelector()))return this.finish(e,pa.IdentifierExpected);return this._parseBody(e,this._parsePageDeclaration.bind(this))},e.prototype._parsePageMarginBox=function(){if(!this.peek(Vr.AtKeyword))return null;var e=this.create(Vo);return this.acceptOneKeyword(rc)||this.markError(e,pa.UnknownAtRule,[],[Vr.CurlyL]),this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},e.prototype._parsePageSelector=function(){if(!this.peek(Vr.Ident)&&!this.peek(Vr.Colon))return null;var e=this.create(Xi);return e.addChild(this._parseIdent()),this.accept(Vr.Colon)&&!e.addChild(this._parseIdent())?this.finish(e,pa.IdentifierExpected):this.finish(e)},e.prototype._parseDocument=function(){if(!this.peekKeyword("@-moz-document"))return null;var e=this.create(Io);return this.consumeToken(),this.resync([],[Vr.CurlyL]),this._parseBody(e,this._parseStylesheetStatement.bind(this))},e.prototype._parseUnknownAtRule=function(){if(!this.peek(Vr.AtKeyword))return null;var e=this.create(ss);e.addChild(this._parseUnknownAtRuleName());var t=0,n=0,r=0,i=0;e:for(;;){switch(this.token.type){case Vr.SemiColon:if(0===n&&0===r&&0===i)break e;break;case Vr.EOF:return n>0?this.finish(e,pa.RightCurlyExpected):i>0?this.finish(e,pa.RightSquareBracketExpected):r>0?this.finish(e,pa.RightParenthesisExpected):this.finish(e);case Vr.CurlyL:t++,n++;break;case Vr.CurlyR:if(n--,t>0&&0===n){if(this.consumeToken(),i>0)return this.finish(e,pa.RightSquareBracketExpected);if(r>0)return this.finish(e,pa.RightParenthesisExpected);break e}if(n<0){if(0===r&&0===i)break e;return this.finish(e,pa.LeftCurlyExpected)}break;case Vr.ParenthesisL:r++;break;case Vr.ParenthesisR:if(--r<0)return this.finish(e,pa.LeftParenthesisExpected);break;case Vr.BracketL:i++;break;case Vr.BracketR:if(--i<0)return this.finish(e,pa.LeftSquareBracketExpected)}this.consumeToken()}return e},e.prototype._parseUnknownAtRuleName=function(){var e=this.create(Xi);return this.accept(Vr.AtKeyword)?this.finish(e):e},e.prototype._parseOperator=function(){if(this.peekDelim("/")||this.peekDelim("*")||this.peekDelim("+")||this.peekDelim("-")||this.peek(Vr.Dashmatch)||this.peek(Vr.Includes)||this.peek(Vr.SubstringOperator)||this.peek(Vr.PrefixOperator)||this.peek(Vr.SuffixOperator)||this.peekDelim("=")){var e=this.createNode(Vi.Operator);return this.consumeToken(),this.finish(e)}return null},e.prototype._parseUnaryOperator=function(){if(!this.peekDelim("+")&&!this.peekDelim("-"))return null;var e=this.create(Xi);return this.consumeToken(),this.finish(e)},e.prototype._parseCombinator=function(){if(this.peekDelim(">")){var e=this.create(Xi);this.consumeToken();var t=this.mark();if(!this.hasWhitespace()&&this.acceptDelim(">")){if(!this.hasWhitespace()&&this.acceptDelim(">"))return e.type=Vi.SelectorCombinatorShadowPiercingDescendant,this.finish(e);this.restoreAtMark(t)}return e.type=Vi.SelectorCombinatorParent,this.finish(e)}if(this.peekDelim("+"))return e=this.create(Xi),this.consumeToken(),e.type=Vi.SelectorCombinatorSibling,this.finish(e);if(this.peekDelim("~"))return e=this.create(Xi),this.consumeToken(),e.type=Vi.SelectorCombinatorAllSiblings,this.finish(e);if(this.peekDelim("/")){if(e=this.create(Xi),this.consumeToken(),t=this.mark(),!this.hasWhitespace()&&this.acceptIdent("deep")&&!this.hasWhitespace()&&this.acceptDelim("/"))return e.type=Vi.SelectorCombinatorShadowPiercingDescendant,this.finish(e);this.restoreAtMark(t)}return null},e.prototype._parseSimpleSelector=function(){var e=this.create(oo),t=0;for(e.addChild(this._parseElementName())&&t++;(0===t||!this.hasWhitespace())&&e.addChild(this._parseSimpleSelectorBody());)t++;return t>0?this.finish(e):null},e.prototype._parseSimpleSelectorBody=function(){return this._parsePseudo()||this._parseHash()||this._parseClass()||this._parseAttrib()},e.prototype._parseSelectorIdent=function(){return this._parseIdent()},e.prototype._parseHash=function(){if(!this.peek(Vr.Hash)&&!this.peekDelim("#"))return null;var e=this.createNode(Vi.IdentifierSelector);if(this.acceptDelim("#")){if(this.hasWhitespace()||!e.addChild(this._parseSelectorIdent()))return this.finish(e,pa.IdentifierExpected)}else this.consumeToken();return this.finish(e)},e.prototype._parseClass=function(){if(!this.peekDelim("."))return null;var e=this.createNode(Vi.ClassSelector);return this.consumeToken(),this.hasWhitespace()||!e.addChild(this._parseSelectorIdent())?this.finish(e,pa.IdentifierExpected):this.finish(e)},e.prototype._parseElementName=function(){var e=this.mark(),t=this.createNode(Vi.ElementNameSelector);return t.addChild(this._parseNamespacePrefix()),t.addChild(this._parseSelectorIdent())||this.acceptDelim("*")?this.finish(t):(this.restoreAtMark(e),null)},e.prototype._parseNamespacePrefix=function(){var e=this.mark(),t=this.createNode(Vi.NamespacePrefix);return!t.addChild(this._parseIdent())&&this.acceptDelim("*"),this.acceptDelim("|")?this.finish(t):(this.restoreAtMark(e),null)},e.prototype._parseAttrib=function(){if(!this.peek(Vr.BracketL))return null;var e=this.create(qo);return this.consumeToken(),e.setNamespacePrefix(this._parseNamespacePrefix()),e.setIdentifier(this._parseIdent())?(e.setOperator(this._parseOperator())&&(e.setValue(this._parseBinaryExpr()),this.acceptIdent("i"),this.acceptIdent("s")),this.accept(Vr.BracketR)?this.finish(e):this.finish(e,pa.RightSquareBracketExpected)):this.finish(e,pa.IdentifierExpected)},e.prototype._parsePseudo=function(){var e=this,t=this._tryParsePseudoIdentifier();return t?this.hasWhitespace()||!this.accept(Vr.ParenthesisL)||(t.addChild(this.try((function(){var t=e.create(Xi);if(!t.addChild(e._parseSelector(!1)))return null;for(;e.accept(Vr.Comma)&&t.addChild(e._parseSelector(!1)););return e.peek(Vr.ParenthesisR)?e.finish(t):null}))||this._parseBinaryExpr()),this.accept(Vr.ParenthesisR))?this.finish(t):this.finish(t,pa.RightParenthesisExpected):null},e.prototype._tryParsePseudoIdentifier=function(){if(!this.peek(Vr.Colon))return null;var e=this.mark(),t=this.createNode(Vi.PseudoSelector);return this.consumeToken(),this.hasWhitespace()?(this.restoreAtMark(e),null):(this.accept(Vr.Colon),this.hasWhitespace()||!t.addChild(this._parseIdent())?this.finish(t,pa.IdentifierExpected):this.finish(t))},e.prototype._tryParsePrio=function(){var e=this.mark();return this._parsePrio()||(this.restoreAtMark(e),null)},e.prototype._parsePrio=function(){if(!this.peek(Vr.Exclamation))return null;var e=this.createNode(Vi.Prio);return this.accept(Vr.Exclamation)&&this.acceptIdent("important")?this.finish(e):null},e.prototype._parseExpr=function(e){void 0===e&&(e=!1);var t=this.create(Ko);if(!t.addChild(this._parseBinaryExpr()))return null;for(;;){if(this.peek(Vr.Comma)){if(e)return this.finish(t);this.consumeToken()}else if(!this.hasWhitespace())break;if(!t.addChild(this._parseBinaryExpr()))break}return this.finish(t)},e.prototype._parseUnicodeRange=function(){if(!this.peekIdent("u"))return null;var e=this.create(Zi);return this.acceptUnicodeRange()?this.finish(e):null},e.prototype._parseNamedLine=function(){if(!this.peek(Vr.BracketL))return null;var e=this.createNode(Vi.GridLine);for(this.consumeToken();e.addChild(this._parseIdent()););return this.accept(Vr.BracketR)?this.finish(e):this.finish(e,pa.RightSquareBracketExpected)},e.prototype._parseBinaryExpr=function(e,t){var n=this.create(Bo);if(!n.setLeft(e||this._parseTerm()))return null;if(!n.setOperator(t||this._parseOperator()))return this.finish(n);if(!n.setRight(this._parseTerm()))return this.finish(n,pa.TermExpected);n=this.finish(n);var r=this._parseOperator();return r&&(n=this._parseBinaryExpr(n,r)),this.finish(n)},e.prototype._parseTerm=function(){var e=this.create(jo);return e.setOperator(this._parseUnaryOperator()),e.setExpression(this._parseTermExpression())?this.finish(e):null},e.prototype._parseTermExpression=function(){return this._parseURILiteral()||this._parseUnicodeRange()||this._parseFunction()||this._parseIdent()||this._parseStringLiteral()||this._parseNumeric()||this._parseHexColor()||this._parseOperation()||this._parseNamedLine()},e.prototype._parseOperation=function(){if(!this.peek(Vr.ParenthesisL))return null;var e=this.create(Xi);return this.consumeToken(),e.addChild(this._parseExpr()),this.accept(Vr.ParenthesisR)?this.finish(e):this.finish(e,pa.RightParenthesisExpected)},e.prototype._parseNumeric=function(){if(this.peek(Vr.Num)||this.peek(Vr.Percentage)||this.peek(Vr.Resolution)||this.peek(Vr.Length)||this.peek(Vr.EMS)||this.peek(Vr.EXS)||this.peek(Vr.Angle)||this.peek(Vr.Time)||this.peek(Vr.Dimension)||this.peek(Vr.Freq)){var e=this.create(Yo);return this.consumeToken(),this.finish(e)}return null},e.prototype._parseStringLiteral=function(){if(!this.peek(Vr.String)&&!this.peek(Vr.BadString))return null;var e=this.createNode(Vi.StringLiteral);return this.consumeToken(),this.finish(e)},e.prototype._parseURILiteral=function(){if(!this.peekRegExp(Vr.Ident,/^url(-prefix)?$/i))return null;var e=this.mark(),t=this.createNode(Vi.URILiteral);return this.accept(Vr.Ident),this.hasWhitespace()||!this.peek(Vr.ParenthesisL)?(this.restoreAtMark(e),null):(this.scanner.inURL=!0,this.consumeToken(),t.addChild(this._parseURLArgument()),this.scanner.inURL=!1,this.accept(Vr.ParenthesisR)?this.finish(t):this.finish(t,pa.RightParenthesisExpected))},e.prototype._parseURLArgument=function(){var e=this.create(Xi);return this.accept(Vr.String)||this.accept(Vr.BadString)||this.acceptUnquotedString()?this.finish(e):null},e.prototype._parseIdent=function(e){if(!this.peek(Vr.Ident))return null;var t=this.create(Qi);return e&&(t.referenceTypes=e),t.isCustomProperty=this.peekRegExp(Vr.Ident,/^--/),this.consumeToken(),this.finish(t)},e.prototype._parseFunction=function(){var e=this.mark(),t=this.create(po);if(!t.setIdentifier(this._parseFunctionIdentifier()))return null;if(this.hasWhitespace()||!this.accept(Vr.ParenthesisL))return this.restoreAtMark(e),null;if(t.getArguments().addChild(this._parseFunctionArgument()))for(;this.accept(Vr.Comma)&&!this.peek(Vr.ParenthesisR);)t.getArguments().addChild(this._parseFunctionArgument())||this.markError(t,pa.ExpressionExpected);return this.accept(Vr.ParenthesisR)?this.finish(t):this.finish(t,pa.RightParenthesisExpected)},e.prototype._parseFunctionIdentifier=function(){if(!this.peek(Vr.Ident))return null;var e=this.create(Qi);if(e.referenceTypes=[Bi.Function],this.acceptIdent("progid")){if(this.accept(Vr.Colon))for(;this.accept(Vr.Ident)&&this.acceptDelim("."););return this.finish(e)}return this.consumeToken(),this.finish(e)},e.prototype._parseFunctionArgument=function(){var e=this.create(mo);return e.setValue(this._parseExpr(!0))?this.finish(e):null},e.prototype._parseHexColor=function(){if(this.peekRegExp(Vr.Hash,/^#([A-Fa-f0-9]{3}|[A-Fa-f0-9]{4}|[A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/g)){var e=this.create($o);return this.consumeToken(),this.finish(e)}return null},e}();function lc(e,t){return-1!==e.indexOf(t)}function cc(){for(var e=[],t=0;te+t||this.offset===e&&this.length===t?this.findInScope(e,t):null},e.prototype.findInScope=function(e,t){void 0===t&&(t=0);var n=e+t,r=function(e,t){var r=0,i=e.length;if(0===i)return 0;for(;rn?i=o:r=o+1}return r}(this.children);if(0===r)return this;var i=this.children[r-1];return i.offset<=e&&i.offset+i.length>=e+t?i.findInScope(e,t):this},e.prototype.addSymbol=function(e){this.symbols.push(e)},e.prototype.getSymbol=function(e,t){for(var n=0;n{var e={470:e=>{function t(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}function n(e,t){for(var n,r="",i=0,o=-1,s=0,a=0;a<=e.length;++a){if(a2){var l=r.lastIndexOf("/");if(l!==r.length-1){-1===l?(r="",i=0):i=(r=r.slice(0,l)).length-1-r.lastIndexOf("/"),o=a,s=0;continue}}else if(2===r.length||1===r.length){r="",i=0,o=a,s=0;continue}t&&(r.length>0?r+="/..":r="..",i=2)}else r.length>0?r+="/"+e.slice(o+1,a):r=e.slice(o+1,a),i=a-o-1;o=a,s=0}else 46===n&&-1!==s?++s:s=-1}return r}var r={resolve:function(){for(var e,r="",i=!1,o=arguments.length-1;o>=-1&&!i;o--){var s;o>=0?s=arguments[o]:(void 0===e&&(e=process.cwd()),s=e),t(s),0!==s.length&&(r=s+"/"+r,i=47===s.charCodeAt(0))}return r=n(r,!i),i?r.length>0?"/"+r:"/":r.length>0?r:"."},normalize:function(e){if(t(e),0===e.length)return".";var r=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=n(e,!r)).length||r||(e="."),e.length>0&&i&&(e+="/"),r?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var e,n=0;n0&&(void 0===e?e=i:e+="/"+i)}return void 0===e?".":r.normalize(e)},relative:function(e,n){if(t(e),t(n),e===n)return"";if((e=r.resolve(e))===(n=r.resolve(n)))return"";for(var i=1;ic){if(47===n.charCodeAt(a+d))return n.slice(a+d+1);if(0===d)return n.slice(a+d)}else s>c&&(47===e.charCodeAt(i+d)?h=d:0===d&&(h=0));break}var p=e.charCodeAt(i+d);if(p!==n.charCodeAt(a+d))break;47===p&&(h=d)}var u="";for(d=i+h+1;d<=o;++d)d!==o&&47!==e.charCodeAt(d)||(0===u.length?u+="..":u+="/..");return u.length>0?u+n.slice(a+h):(a+=h,47===n.charCodeAt(a)&&++a,n.slice(a))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var n=e.charCodeAt(0),r=47===n,i=-1,o=!0,s=e.length-1;s>=1;--s)if(47===(n=e.charCodeAt(s))){if(!o){i=s;break}}else o=!1;return-1===i?r?"/":".":r&&1===i?"//":e.slice(0,i)},basename:function(e,n){if(void 0!==n&&"string"!=typeof n)throw new TypeError('"ext" argument must be a string');t(e);var r,i=0,o=-1,s=!0;if(void 0!==n&&n.length>0&&n.length<=e.length){if(n.length===e.length&&n===e)return"";var a=n.length-1,l=-1;for(r=e.length-1;r>=0;--r){var c=e.charCodeAt(r);if(47===c){if(!s){i=r+1;break}}else-1===l&&(s=!1,l=r+1),a>=0&&(c===n.charCodeAt(a)?-1==--a&&(o=r):(a=-1,o=l))}return i===o?o=l:-1===o&&(o=e.length),e.slice(i,o)}for(r=e.length-1;r>=0;--r)if(47===e.charCodeAt(r)){if(!s){i=r+1;break}}else-1===o&&(s=!1,o=r+1);return-1===o?"":e.slice(i,o)},extname:function(e){t(e);for(var n=-1,r=0,i=-1,o=!0,s=0,a=e.length-1;a>=0;--a){var l=e.charCodeAt(a);if(47!==l)-1===i&&(o=!1,i=a+1),46===l?-1===n?n=a:1!==s&&(s=1):-1!==n&&(s=-1);else if(!o){r=a+1;break}}return-1===n||-1===i||0===s||1===s&&n===i-1&&n===r+1?"":e.slice(n,i)},format:function(e){if(null===e||"object"!=typeof e)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return n=(t=e).dir||t.root,r=t.base||(t.name||"")+(t.ext||""),n?n===t.root?n+r:n+"/"+r:r;var t,n,r},parse:function(e){t(e);var n={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return n;var r,i=e.charCodeAt(0),o=47===i;o?(n.root="/",r=1):r=0;for(var s=-1,a=0,l=-1,c=!0,h=e.length-1,d=0;h>=r;--h)if(47!==(i=e.charCodeAt(h)))-1===l&&(c=!1,l=h+1),46===i?-1===s?s=h:1!==d&&(d=1):-1!==s&&(d=-1);else if(!c){a=h+1;break}return-1===s||-1===l||0===d||1===d&&s===l-1&&s===a+1?-1!==l&&(n.base=n.name=0===a&&o?e.slice(1,l):e.slice(a,l)):(0===a&&o?(n.name=e.slice(1,s),n.base=e.slice(1,l)):(n.name=e.slice(a,s),n.base=e.slice(a,l)),n.ext=e.slice(s,l)),a>0?n.dir=e.slice(0,a-1):o&&(n.dir="/"),n},sep:"/",delimiter:":",win32:null,posix:null};r.posix=r,e.exports=r},447:(e,t,n)=>{var r;if(n.r(t),n.d(t,{URI:()=>f,Utils:()=>E}),"object"==typeof process)r="win32"===process.platform;else if("object"==typeof navigator){var i=navigator.userAgent;r=i.indexOf("Windows")>=0}var o,s,a=(o=function(e,t){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}o(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),l=/^\w[\w\d+.-]*$/,c=/^\//,h=/^\/\//;function d(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'.concat(e.authority,'", path: "').concat(e.path,'", query: "').concat(e.query,'", fragment: "').concat(e.fragment,'"}'));if(e.scheme&&!l.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!c.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(h.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}var p="",u="/",m=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,f=function(){function e(e,t,n,r,i,o){var s;void 0===o&&(o=!1),"object"==typeof e?(this.scheme=e.scheme||p,this.authority=e.authority||p,this.path=e.path||p,this.query=e.query||p,this.fragment=e.fragment||p):(this.scheme=(s=e)||o?s:"file",this.authority=t||p,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==u&&(t=u+t):t=u}return t}(this.scheme,n||p),this.query=r||p,this.fragment=i||p,d(this,o))}return e.isUri=function(t){return t instanceof e||!!t&&"string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"string"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString},Object.defineProperty(e.prototype,"fsPath",{get:function(){return x(this,!1)},enumerable:!1,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,r=e.path,i=e.query,o=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=p),void 0===n?n=this.authority:null===n&&(n=p),void 0===r?r=this.path:null===r&&(r=p),void 0===i?i=this.query:null===i&&(i=p),void 0===o?o=this.fragment:null===o&&(o=p),t===this.scheme&&n===this.authority&&r===this.path&&i===this.query&&o===this.fragment?this:new b(t,n,r,i,o)},e.parse=function(e,t){void 0===t&&(t=!1);var n=m.exec(e);return n?new b(n[2]||p,_(n[4]||p),_(n[5]||p),_(n[7]||p),_(n[9]||p),t):new b(p,p,p,p,p)},e.file=function(e){var t=p;if(r&&(e=e.replace(/\\/g,u)),e[0]===u&&e[1]===u){var n=e.indexOf(u,2);-1===n?(t=e.substring(2),e=u):(t=e.substring(2,n),e=e.substring(n)||u)}return new b("file",t,e,p,p)},e.from=function(e){var t=new b(e.scheme,e.authority,e.path,e.query,e.fragment);return d(t,!0),t},e.prototype.toString=function(e){return void 0===e&&(e=!1),S(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new b(t);return n._formatted=t.external,n._fsPath=t._sep===g?t.fsPath:null,n}return t},e}(),g=r?1:void 0,b=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return a(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=x(this,!1)),this._fsPath},enumerable:!1,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?S(this,!0):(this._formatted||(this._formatted=S(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=g),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(f),v=((s={})[58]="%3A",s[47]="%2F",s[63]="%3F",s[35]="%23",s[91]="%5B",s[93]="%5D",s[64]="%40",s[33]="%21",s[36]="%24",s[38]="%26",s[39]="%27",s[40]="%28",s[41]="%29",s[42]="%2A",s[43]="%2B",s[44]="%2C",s[59]="%3B",s[61]="%3D",s[32]="%20",s);function y(e,t){for(var n=void 0,r=-1,i=0;i=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o)-1!==r&&(n+=encodeURIComponent(e.substring(r,i)),r=-1),void 0!==n&&(n+=e.charAt(i));else{void 0===n&&(n=e.substr(0,i));var s=v[o];void 0!==s?(-1!==r&&(n+=encodeURIComponent(e.substring(r,i)),r=-1),n+=s):-1===r&&(r=i)}}return-1!==r&&(n+=encodeURIComponent(e.substring(r))),void 0!==n?n:e}function w(e){for(var t=void 0,n=0;n1&&"file"===e.scheme?"//".concat(e.authority).concat(e.path):47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?t?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,r&&(n=n.replace(/\//g,"\\")),n}function S(e,t){var n=t?w:y,r="",i=e.scheme,o=e.authority,s=e.path,a=e.query,l=e.fragment;if(i&&(r+=i,r+=":"),(o||"file"===i)&&(r+=u,r+=u),o){var c=o.indexOf("@");if(-1!==c){var h=o.substr(0,c);o=o.substr(c+1),-1===(c=h.indexOf(":"))?r+=n(h,!1):(r+=n(h.substr(0,c),!1),r+=":",r+=n(h.substr(c+1),!1)),r+="@"}-1===(c=(o=o.toLowerCase()).indexOf(":"))?r+=n(o,!1):(r+=n(o.substr(0,c),!1),r+=o.substr(c))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2))(d=s.charCodeAt(1))>=65&&d<=90&&(s="/".concat(String.fromCharCode(d+32),":").concat(s.substr(3)));else if(s.length>=2&&58===s.charCodeAt(1)){var d;(d=s.charCodeAt(0))>=65&&d<=90&&(s="".concat(String.fromCharCode(d+32),":").concat(s.substr(2)))}r+=n(s,!0)}return a&&(r+="?",r+=n(a,!1)),l&&(r+="#",r+=t?l:y(l,!1)),r}function k(e){try{return decodeURIComponent(e)}catch(t){return e.length>3?e.substr(0,3)+k(e.substr(3)):e}}var C=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function _(e){return e.match(C)?e.replace(C,(function(e){return k(e)})):e}var E,F,R=n(470),N=function(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n(447)})();var{URI:bc,Utils:vc}=hc,yc=function(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=0&&-1===' \t\n\r":{[()]},*>+'.indexOf(r.charAt(n));)n--;return r.substring(n+1,t)}(e,this.offset),this.defaultReplaceRange=xs.create(ys.create(this.position.line,this.position.character-this.currentWord.length),this.position),this.textDocument=e,this.styleSheet=n,this.documentSettings=r;try{var i={isIncomplete:!1,items:[]};this.nodePath=Hi(this.styleSheet,this.offset);for(var o=this.nodePath.length-1;o>=0;o--){var s=this.nodePath[o];if(s instanceof ho)this.getCompletionsForDeclarationProperty(s.getParent(),i);else if(s instanceof Ko)s.parent instanceof Qo?this.getVariableProposals(null,i):this.getCompletionsForExpression(s,i);else if(s instanceof oo){var a=s.findAParent(Vi.ExtendsReference,Vi.Ruleset);if(a)if(a.type===Vi.ExtendsReference)this.getCompletionsForExtendsReference(a,s,i);else{var l=a;this.getCompletionsForSelector(l,l&&l.isNested(),i)}}else if(s instanceof mo)this.getCompletionsForFunctionArgument(s,s.getParent(),i);else if(s instanceof to)this.getCompletionsForDeclarations(s,i);else if(s instanceof Zo)this.getCompletionsForVariableDeclaration(s,i);else if(s instanceof ro)this.getCompletionsForRuleSet(s,i);else if(s instanceof Qo)this.getCompletionsForInterpolation(s,i);else if(s instanceof wo)this.getCompletionsForFunctionDeclaration(s,i);else if(s instanceof is)this.getCompletionsForMixinReference(s,i);else if(s instanceof po)this.getCompletionsForFunctionArgument(null,s,i);else if(s instanceof zo)this.getCompletionsForSupports(s,i);else if(s instanceof Wo)this.getCompletionsForSupportsCondition(s,i);else if(s instanceof ts)this.getCompletionsForExtendsReference(s,null,i);else if(s.type===Vi.URILiteral)this.getCompletionForUriLiteralValue(s,i);else if(null===s.parent)this.getCompletionForTopLevel(i);else{if(s.type!==Vi.StringLiteral||!this.isImportPathParent(s.parent.type))continue;this.getCompletionForImportPath(s,i)}if(i.items.length>0||this.offset>s.offset)return this.finalize(i)}return this.getCompletionsForStylesheet(i),0===i.items.length&&this.variablePrefix&&0===this.currentWord.indexOf(this.variablePrefix)&&this.getVariableProposals(null,i),this.finalize(i)}finally{this.position=null,this.currentWord=null,this.textDocument=null,this.styleSheet=null,this.symbolContext=null,this.defaultReplaceRange=null,this.nodePath=null}},e.prototype.isImportPathParent=function(e){return e===Vi.Import},e.prototype.finalize=function(e){return e},e.prototype.findInNodePath=function(){for(var e=[],t=0;t=0;n--){var r=this.nodePath[n];if(-1!==e.indexOf(r.type))return r}return null},e.prototype.getCompletionsForDeclarationProperty=function(e,t){return this.getPropertyProposals(e,t)},e.prototype.getPropertyProposals=function(e,t){var n=this,r=this.isTriggerPropertyValueCompletionEnabled,i=this.isCompletePropertyWithSemicolonEnabled;return this.cssDataManager.getProperties().forEach((function(o){var s,a,l=!1;e?(s=n.getCompletionRange(e.getProperty()),a=o.name,oc(e.colonPosition)||(a+=": ",l=!0)):(s=n.getCompletionRange(null),a=o.name+": ",l=!0),!e&&i&&(a+="$0;"),e&&!e.semicolonPosition&&i&&n.offset>=n.textDocument.offsetAt(s.end)&&(a+="$0;");var c={label:o.name,documentation:Rl(o,n.doesSupportMarkdown()),tags:Pc(o)?[Ra.Deprecated]:[],textEdit:Gs.replace(s,a),insertTextFormat:Ea.Snippet,kind:Ca.Property};o.restrictions||(l=!1),r&&l&&(c.command=Ic);var h=(255-("number"==typeof o.relevance?Math.min(Math.max(o.relevance,0),99):50)).toString(16),d=Pi(o.name,"-")?Dc.VendorPrefixed:Dc.Normal;c.sortText=d+"_"+h,t.items.push(c)})),this.completionParticipants.forEach((function(e){e.onCssProperty&&e.onCssProperty({propertyName:n.currentWord,range:n.defaultReplaceRange})})),t},Object.defineProperty(e.prototype,"isTriggerPropertyValueCompletionEnabled",{get:function(){var e,t;return null===(t=null===(e=this.documentSettings)||void 0===e?void 0:e.triggerPropertyValueCompletion)||void 0===t||t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCompletePropertyWithSemicolonEnabled",{get:function(){var e,t;return null===(t=null===(e=this.documentSettings)||void 0===e?void 0:e.completePropertyWithSemicolon)||void 0===t||t},enumerable:!1,configurable:!0}),e.prototype.getCompletionsForDeclarationValue=function(e,t){for(var n=this,r=e.getFullPropertyName(),i=this.cssDataManager.getProperty(r),o=e.getValue()||null;o&&o.hasChildren();)o=o.findChildAtOffset(this.offset,!1);if(this.completionParticipants.forEach((function(e){e.onCssPropertyValue&&e.onCssPropertyValue({propertyName:r,propertyValue:n.currentWord,range:n.getCompletionRange(o)})})),i){if(i.restrictions)for(var s=0,a=i.restrictions;s=e.offset+2&&this.getVariableProposals(null,t),t},e.prototype.getVariableProposals=function(e,t){for(var n=0,r=this.getSymbolContext().findSymbolsAtOffset(this.offset,Bi.Variable);n0){var i=this.currentWord.match(/^-?\d[\.\d+]*/);i&&(r=i[0],n.isIncomplete=r.length===this.currentWord.length)}else 0===this.currentWord.length&&(n.isIncomplete=!0);if(t&&t.parent&&t.parent.type===Vi.Term&&(t=t.getParent()),e.restrictions)for(var o=0,s=e.restrictions;o=n.end?this.getCompletionForTopLevel(t):!n||this.offset<=n.offset?this.getCompletionsForSelector(e,e.isNested(),t):this.getCompletionsForDeclarations(e.getDeclarations(),t)},e.prototype.getCompletionsForSelector=function(e,t,n){var r=this,i=this.findInNodePath(Vi.PseudoSelector,Vi.IdentifierSelector,Vi.ClassSelector,Vi.ElementNameSelector);if(!i&&this.hasCharacterAtPosition(this.offset-this.currentWord.length-1,":")&&(this.currentWord=":"+this.currentWord,this.hasCharacterAtPosition(this.offset-this.currentWord.length-1,":")&&(this.currentWord=":"+this.currentWord),this.defaultReplaceRange=xs.create(ys.create(this.position.line,this.position.character-this.currentWord.length),this.position)),this.cssDataManager.getPseudoClasses().forEach((function(e){var t=Oc(e.name),o={label:e.name,textEdit:Gs.replace(r.getCompletionRange(i),t),documentation:Rl(e,r.doesSupportMarkdown()),tags:Pc(e)?[Ra.Deprecated]:[],kind:Ca.Function,insertTextFormat:e.name!==t?zc:void 0};Pi(e.name,":-")&&(o.sortText=Dc.VendorPrefixed),n.items.push(o)})),this.cssDataManager.getPseudoElements().forEach((function(e){var t=Oc(e.name),o={label:e.name,textEdit:Gs.replace(r.getCompletionRange(i),t),documentation:Rl(e,r.doesSupportMarkdown()),tags:Pc(e)?[Ra.Deprecated]:[],kind:Ca.Function,insertTextFormat:e.name!==t?zc:void 0};Pi(e.name,"::-")&&(o.sortText=Dc.VendorPrefixed),n.items.push(o)})),!t){for(var o=0,s=tc;o0){var t=d.substr(e.offset,e.length);return"."!==t.charAt(0)||h[t]||(h[t]=!0,n.items.push({label:t,textEdit:Gs.replace(r.getCompletionRange(i),t),kind:Ca.Keyword})),!1}return!0})),e&&e.isNested()){var p=e.getSelectors().findFirstChildBeforeOffset(this.offset);p&&0===e.getSelectors().getChildren().indexOf(p)&&this.getPropertyProposals(null,n)}return n},e.prototype.getCompletionsForDeclarations=function(e,t){if(!e||this.offset===e.offset)return t;var n=e.findFirstChildBeforeOffset(this.offset);if(!n)return this.getCompletionsForDeclarationProperty(null,t);if(n instanceof so){var r=n;if(!oc(r.colonPosition)||this.offset<=r.colonPosition)return this.getCompletionsForDeclarationProperty(r,t);if(oc(r.semicolonPosition)&&r.semicolonPositione.colonPosition&&this.getVariableProposals(e.getValue(),t),t},e.prototype.getCompletionsForExpression=function(e,t){var n=e.getParent();if(n instanceof mo)return this.getCompletionsForFunctionArgument(n,n.getParent(),t),t;var r=e.findParent(Vi.Declaration);if(!r)return this.getTermProposals(void 0,null,t),t;var i=e.findChildAtOffset(this.offset,!0);return i?i instanceof Yo||i instanceof Qi?this.getCompletionsForDeclarationValue(r,t):t:this.getCompletionsForDeclarationValue(r,t)},e.prototype.getCompletionsForFunctionArgument=function(e,t,n){var r=t.getIdentifier();return r&&r.matches("var")&&(t.getArguments().hasChildren()&&t.getArguments().getChild(0)!==e||this.getVariableProposalsForCSSVarFunction(n)),n},e.prototype.getCompletionsForFunctionDeclaration=function(e,t){var n=e.getDeclarations();return n&&this.offset>n.offset&&this.offsete.lParent&&(!oc(e.rParent)||this.offset<=e.rParent)?this.getCompletionsForDeclarationProperty(null,t):t},e.prototype.getCompletionsForSupports=function(e,t){var n=e.getDeclarations();if(!n||this.offset<=n.offset){var r=e.findFirstChildBeforeOffset(this.offset);return r instanceof Wo?this.getCompletionsForSupportsCondition(r,t):t}return this.getCompletionForTopLevel(t)},e.prototype.getCompletionsForExtendsReference=function(e,t,n){return n},e.prototype.getCompletionForUriLiteralValue=function(e,t){var n,r,i;if(e.hasChildren()){var o=e.getChild(0);n=o.getText(),r=this.position,i=this.getCompletionRange(o)}else{n="",r=this.position;var s=this.textDocument.positionAt(e.offset+"url(".length);i=xs.create(s,s)}return this.completionParticipants.forEach((function(e){e.onCssURILiteralValue&&e.onCssURILiteralValue({uriValue:n,position:r,range:i})})),t},e.prototype.getCompletionForImportPath=function(e,t){var n=this;return this.completionParticipants.forEach((function(t){t.onCssImportPath&&t.onCssImportPath({pathValue:e.getText(),position:n.position,range:n.getCompletionRange(e)})})),t},e.prototype.hasCharacterAtPosition=function(e,t){var n=this.textDocument.getText();return e>=0&&e"),this.writeLine(t,r.join(""))}},e}();!function(e){function t(e){var t=e.match(/^['"](.*)["']$/);return t?t[1]:e}e.ensure=function(e,n){return n+t(e)+n},e.remove=t}(Kc||(Kc={}));var Jc=function(){this.id=0,this.attr=0,this.tag=0};function Xc(e,t){for(var n=new qc,r=0,i=e.getChildren();r1){var l=t.cloneWithParent();n.addChild(l.findRoot()),n=l}n.append(s[a])}}break;case Vi.SelectorPlaceholder:if(o.matches("@at-root"))return n;case Vi.ElementNameSelector:var c=o.getText();n.addAttr("name","*"===c?"element":Yc(c));break;case Vi.ClassSelector:n.addAttr("class",Yc(o.getText().substring(1)));break;case Vi.IdentifierSelector:n.addAttr("id",Yc(o.getText().substring(1)));break;case Vi.MixinDeclaration:n.addAttr("class",o.getName());break;case Vi.PseudoSelector:n.addAttr(Yc(o.getText()),"");break;case Vi.AttributeSelector:var h=o,d=h.getIdentifier();if(d){var p=h.getValue(),u=h.getOperator(),m=void 0;if(p&&u)switch(Yc(u.getText())){case"|=":m="".concat(Kc.remove(Yc(p.getText())),"-…");break;case"^=":m="".concat(Kc.remove(Yc(p.getText())),"…");break;case"$=":m="…".concat(Kc.remove(Yc(p.getText())));break;case"~=":m=" … ".concat(Kc.remove(Yc(p.getText()))," … ");break;case"*=":m="…".concat(Kc.remove(Yc(p.getText())),"…");break;default:m=Kc.remove(Yc(p.getText()))}n.addAttr(Yc(d.getText()),m)}}}return n}function Yc(e){var t=new Mi;t.setSource(e);var n=t.scanUnquotedString();return n?n.text:e}var Zc=function(){function e(e){this.cssDataManager=e}return e.prototype.selectorToMarkedString=function(e){var t=function(e){if(e.matches("@at-root"))return null;var t=new $c,n=[],r=e.getParent();if(r instanceof ro)for(var i=r.getParent();i&&!eh(i);){if(i instanceof ro){if(i.getSelectors().matches("@at-root"))break;n.push(i)}i=i.getParent()}for(var o=new Qc(t),s=n.length-1;s>=0;s--){var a=n[s].getSelectors().getChild(0);a&&o.processSelector(a)}return o.processSelector(e),t}(e);if(t){var n=new Gc('"').print(t);return n.push(this.selectorToSpecificityMarkedString(e)),n}return[]},e.prototype.simpleSelectorToMarkedString=function(e){var t=Xc(e),n=new Gc('"').print(t);return n.push(this.selectorToSpecificityMarkedString(e)),n},e.prototype.isPseudoElementIdentifier=function(e){var t=e.match(/^::?([\w-]+)/);return!!t&&!!this.cssDataManager.getPseudoElement("::"+t[1])},e.prototype.selectorToSpecificityMarkedString=function(e){var t=this,n=function(e){var r=new Jc;e:for(var i=0,o=e.getChildren();i0){for(var l=new Jc,c=0,h=s.getChildren();cl.id?l=f:f.idl.attr?l=f:f.attrl.tag&&(l=f))}}r.id+=l.id,r.attr+=l.attr,r.tag+=l.tag;continue e}r.attr++}if(s.getChildren().length>0){var f=n(s);r.id+=f.id,r.attr+=f.attr,r.tag+=f.tag}}return r},r=n(e);return jc("vs/language/css/css.worker","specificity","[Selector Specificity](https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity): ({0}, {1}, {2})",r.id,r.attr,r.tag)},e}(),Qc=function(){function e(e){this.prev=null,this.element=e}return e.prototype.processSelector=function(e){var t=null;if(!(this.element instanceof $c)&&e.getChildren().some((function(e){return e.hasChildren()&&e.getChild(0).type===Vi.SelectorCombinator}))){var n=this.element.findRoot();n.parent instanceof $c&&(t=this.element,this.element=n.parent,this.element.removeChild(n),this.prev=null)}for(var r=0,i=e.getChildren();r0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]4)return null;try{var c=4===r.length?Ll(r[3],1):1;if("rgb"===n||"rgba"===n)return{red:Ll(r[0],255),green:Ll(r[1],255),blue:Ll(r[2],255),alpha:c};if("hsl"===n||"hsla"===n)return Vl(Ol(r[0]),Ll(r[1],100),Ll(r[2],100),c);if("hwb"===n)return function(e,t,n,r){if(void 0===r&&(r=1),t+n>=1){var i=t/(t+n);return{red:i,green:i,blue:i,alpha:r}}var o=Vl(e,1,.5,r),s=o.red;s*=1-t-n,s+=t;var a=o.green;a*=1-t-n,a+=t;var l=o.blue;return l*=1-t-n,{red:s,green:a,blue:l+=t,alpha:r}}(Ol(r[0]),Ll(r[1],100),Ll(r[2],100),c)}catch(e){return null}}else if(e.type===Vi.Identifier){if(e.parent&&e.parent.type!==Vi.Term)return null;var h=e.parent;if(h&&h.parent&&h.parent.type===Vi.BinaryExpression){var d=h.parent;if(d.parent&&d.parent.type===Vi.ListEntry&&d.parent.key===d)return null}var p=e.getText().toLowerCase();if("none"===p)return null;var u=Ml[p];if(u)return Ul(u)}return null}(e);return n?{color:n,range:lh(e,t)}:null}(t,e);return r&&n.push(r),!0})),n},e.prototype.getColorPresentations=function(e,t,n,r){var i,o=[],s=Math.round(255*n.red),a=Math.round(255*n.green),l=Math.round(255*n.blue);i=1===n.alpha?"rgb(".concat(s,", ").concat(a,", ").concat(l,")"):"rgba(".concat(s,", ").concat(a,", ").concat(l,", ").concat(n.alpha,")"),o.push({label:i,textEdit:Gs.replace(r,i)}),i=1===n.alpha?"#".concat(hh(s)).concat(hh(a)).concat(hh(l)):"#".concat(hh(s)).concat(hh(a)).concat(hh(l)).concat(hh(Math.round(255*n.alpha))),o.push({label:i,textEdit:Gs.replace(r,i)});var c=Kl(n);i=1===c.a?"hsl(".concat(c.h,", ").concat(Math.round(100*c.s),"%, ").concat(Math.round(100*c.l),"%)"):"hsla(".concat(c.h,", ").concat(Math.round(100*c.s),"%, ").concat(Math.round(100*c.l),"%, ").concat(c.a,")"),o.push({label:i,textEdit:Gs.replace(r,i)});var h=function(e){var t=Kl(e),n=Math.min(e.red,e.green,e.blue),r=1-Math.max(e.red,e.green,e.blue);return{h:t.h,w:n,b:r,a:t.a}}(n);return i=1===h.a?"hwb(".concat(h.h," ").concat(Math.round(100*h.w),"% ").concat(Math.round(100*h.b),"%)"):"hwb(".concat(h.h," ").concat(Math.round(100*h.w),"% ").concat(Math.round(100*h.b),"% / ").concat(h.a,")"),o.push({label:i,textEdit:Gs.replace(r,i)}),o},e.prototype.doRename=function(e,t,n,r){var i,o=this.findDocumentHighlights(e,t,r).map((function(e){return Gs.replace(e.range,n)}));return{changes:(i={},i[e.uri]=o,i)}},e.prototype.resolveModuleReference=function(e,t,n){return nh(this,void 0,void 0,(function(){var r,i,o,s,a;return rh(this,(function(l){switch(l.label){case 0:return Pi(t,"file://")?(r="@"===(c=e)[0]?c.substring(0,c.indexOf("/",c.indexOf("/")+1)):c.substring(0,c.indexOf("/")),i=n.resolveReference("/",t),o=wc(t),[4,this.resolvePathToModule(r,o,i)]):[3,2];case 1:if(s=l.sent())return a=e.substring(r.length+1),[2,xc(s,a)];l.label=2;case 2:return[2,void 0]}var c}))}))},e.prototype.resolveRelativeReference=function(e,t,n,r){return nh(this,void 0,void 0,(function(){var r,i;return rh(this,(function(o){switch(o.label){case 0:return r=n.resolveReference(e,t),"~"===e[0]&&"/"!==e[1]&&this.fileSystemProvider?(e=e.substring(1),[4,this.resolveModuleReference(e,t,n)]):[3,2];case 1:return[2,o.sent()||r];case 2:return this.resolveModuleReferences?(i=r)?[4,this.fileExists(r)]:[3,4]:[3,7];case 3:i=o.sent(),o.label=4;case 4:return i?[2,r]:[3,5];case 5:return[4,this.resolveModuleReference(e,t,n)];case 6:return[2,o.sent()||r];case 7:return[2,r]}}))}))},e.prototype.resolvePathToModule=function(e,t,n){return nh(this,void 0,void 0,(function(){var r;return rh(this,(function(i){switch(i.label){case 0:return r=xc(t,"node_modules",e,"package.json"),[4,this.fileExists(r)];case 1:return i.sent()?[2,wc(r)]:n&&t.startsWith(n)&&t.length!==n.length?[2,this.resolvePathToModule(e,wc(t),n)]:[2,void 0]}}))}))},e.prototype.fileExists=function(e){return nh(this,void 0,void 0,(function(){var t;return rh(this,(function(n){switch(n.label){case 0:if(!this.fileSystemProvider)return[2,!1];n.label=1;case 1:return n.trys.push([1,3,,4]),[4,this.fileSystemProvider.stat(e)];case 2:return(t=n.sent()).type===yl.Unknown&&-1===t.size?[2,!1]:[2,!0];case 3:return n.sent(),[2,!1];case 4:return[2]}}))}))},e}();function lh(e,t){return xs.create(t.positionAt(e.offset),t.positionAt(e.end))}function ch(e){if(e.type===Vi.Selector)return Ua.Write;if(e instanceof Qi&&e.parent&&e.parent instanceof ho&&e.isCustomProperty)return Ua.Write;if(e.parent)switch(e.parent.type){case Vi.FunctionDeclaration:case Vi.MixinDeclaration:case Vi.Keyframe:case Vi.VariableDeclaration:case Vi.FunctionParameter:return Ua.Write}return Ua.Read}function hh(e){var t=e.toString(16);return 2!==t.length?"0"+t:t}var dh=ms(),ph=Gi.Warning,uh=Gi.Error,mh=Gi.Ignore,fh=function(e,t,n){this.id=e,this.message=t,this.defaultValue=n},gh={AllVendorPrefixes:new fh("compatibleVendorPrefixes",dh("vs/language/css/css.worker","rule.vendorprefixes.all","When using a vendor-specific prefix make sure to also include all other vendor-specific properties"),mh),IncludeStandardPropertyWhenUsingVendorPrefix:new fh("vendorPrefix",dh("vs/language/css/css.worker","rule.standardvendorprefix.all","When using a vendor-specific prefix also include the standard property"),ph),DuplicateDeclarations:new fh("duplicateProperties",dh("vs/language/css/css.worker","rule.duplicateDeclarations","Do not use duplicate style definitions"),mh),EmptyRuleSet:new fh("emptyRules",dh("vs/language/css/css.worker","rule.emptyRuleSets","Do not use empty rulesets"),ph),ImportStatemement:new fh("importStatement",dh("vs/language/css/css.worker","rule.importDirective","Import statements do not load in parallel"),mh),BewareOfBoxModelSize:new fh("boxModel",dh("vs/language/css/css.worker","rule.bewareOfBoxModelSize","Do not use width or height when using padding or border"),mh),UniversalSelector:new fh("universalSelector",dh("vs/language/css/css.worker","rule.universalSelector","The universal selector (*) is known to be slow"),mh),ZeroWithUnit:new fh("zeroUnits",dh("vs/language/css/css.worker","rule.zeroWidthUnit","No unit for zero needed"),mh),RequiredPropertiesForFontFace:new fh("fontFaceProperties",dh("vs/language/css/css.worker","rule.fontFaceProperties","@font-face rule must define 'src' and 'font-family' properties"),ph),HexColorLength:new fh("hexColorLength",dh("vs/language/css/css.worker","rule.hexColor","Hex colors must consist of three, four, six or eight hex numbers"),uh),ArgsInColorFunction:new fh("argumentsInColorFunction",dh("vs/language/css/css.worker","rule.colorFunction","Invalid number of parameters"),uh),UnknownProperty:new fh("unknownProperties",dh("vs/language/css/css.worker","rule.unknownProperty","Unknown property."),ph),UnknownAtRules:new fh("unknownAtRules",dh("vs/language/css/css.worker","rule.unknownAtRules","Unknown at-rule."),ph),IEStarHack:new fh("ieHack",dh("vs/language/css/css.worker","rule.ieHack","IE hacks are only necessary when supporting IE7 and older"),mh),UnknownVendorSpecificProperty:new fh("unknownVendorSpecificProperties",dh("vs/language/css/css.worker","rule.unknownVendorSpecificProperty","Unknown vendor specific property."),mh),PropertyIgnoredDueToDisplay:new fh("propertyIgnoredDueToDisplay",dh("vs/language/css/css.worker","rule.propertyIgnoredDueToDisplay","Property is ignored due to the display."),ph),AvoidImportant:new fh("important",dh("vs/language/css/css.worker","rule.avoidImportant","Avoid using !important. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored."),mh),AvoidFloat:new fh("float",dh("vs/language/css/css.worker","rule.avoidFloat","Avoid using 'float'. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes."),mh),AvoidIdSelector:new fh("idSelector",dh("vs/language/css/css.worker","rule.avoidIdSelector","Selectors should not contain IDs because these rules are too tightly coupled with the HTML."),mh)},bh={ValidProperties:new function(e,t,n){this.id=e,this.message=t,this.defaultValue=n}("validProperties",dh("vs/language/css/css.worker","rule.validProperties","A list of properties that are not validated against the `unknownProperties` rule."),[])},vh=function(){function e(e){void 0===e&&(e={}),this.conf=e}return e.prototype.getRule=function(e){if(this.conf.hasOwnProperty(e.id)){var t=function(e){switch(e){case"ignore":return Gi.Ignore;case"warning":return Gi.Warning;case"error":return Gi.Error}return null}(this.conf[e.id]);if(t)return t}return e.defaultValue},e.prototype.getSetting=function(e){return this.conf[e.id]},e}(),yh=ms(),wh=function(){function e(e){this.cssDataManager=e}return e.prototype.doCodeActions=function(e,t,n,r){return this.doCodeActions2(e,t,n,r).map((function(t){var n=t.edit&&t.edit.documentChanges&&t.edit.documentChanges[0];return $s.create(t.title,"_css.applyCodeAction",e.uri,e.version,n&&n.edits)}))},e.prototype.doCodeActions2=function(e,t,n,r){var i=[];if(n.diagnostics)for(var o=0,s=n.diagnostics;on)return 0;var i,o,s=[],a=[];for(i=0;i=i.length/2&&o.push({property:e.name,score:t})})),o.sort((function(e,t){return t.score-e.score||e.property.localeCompare(t.property)}));for(var s=3,a=0,l=o;a=0;a--){var l=s[a];if(l instanceof lo){var c=l.getProperty();if(c&&c.offset===i&&c.end===o)return void this.getFixesForUnknownProperty(e,c,n,r)}}},e}(),xh=function(e){this.fullPropertyName=e.getFullPropertyName().toLowerCase(),this.node=e};function Sh(e,t,n,r){var i=e[t];i.value=n,n&&(lc(i.properties,r)||i.properties.push(r))}function kh(e,t,n,r){"top"===t||"right"===t||"bottom"===t||"left"===t?Sh(e,t,n,r):function(e,t,n){Sh(e,"top",t,n),Sh(e,"right",t,n),Sh(e,"bottom",t,n),Sh(e,"left",t,n)}(e,n,r)}function Ch(e,t,n){switch(t.length){case 1:kh(e,void 0,t[0],n);break;case 2:kh(e,"top",t[0],n),kh(e,"bottom",t[0],n),kh(e,"right",t[1],n),kh(e,"left",t[1],n);break;case 3:kh(e,"top",t[0],n),kh(e,"right",t[1],n),kh(e,"left",t[1],n),kh(e,"bottom",t[2],n);break;case 4:kh(e,"top",t[0],n),kh(e,"right",t[1],n),kh(e,"bottom",t[2],n),kh(e,"left",t[3],n)}}function _h(e,t){for(var n=0,r=t;n0)for(var m=this.fetch(r,"float"),f=0;f0)for(m=this.fetch(r,"vertical-align"),f=0;f1)for(var S=0;S")||this.peekDelim("<")||this.peekIdent("and")||this.peekIdent("or")||this.peekDelim("%")){var t=this.createNode(Vi.Operator);return this.consumeToken(),this.finish(t)}return e.prototype._parseOperator.call(this)},t.prototype._parseUnaryOperator=function(){if(this.peekIdent("not")){var t=this.create(Xi);return this.consumeToken(),this.finish(t)}return e.prototype._parseUnaryOperator.call(this)},t.prototype._parseRuleSetDeclaration=function(){return this.peek(Vr.AtKeyword)?this._parseKeyframe()||this._parseImport()||this._parseMedia(!0)||this._parseFontFace()||this._parseWarnAndDebug()||this._parseControlStatement()||this._parseFunctionDeclaration()||this._parseExtends()||this._parseMixinReference()||this._parseMixinContent()||this._parseMixinDeclaration()||this._parseRuleset(!0)||this._parseSupports(!0)||e.prototype._parseRuleSetDeclarationAtStatement.call(this):this._parseVariableDeclaration()||this._tryParseRuleset(!0)||e.prototype._parseRuleSetDeclaration.call(this)},t.prototype._parseDeclaration=function(e){var t=this._tryParseCustomPropertyDeclaration(e);if(t)return t;var n=this.create(lo);if(!n.setProperty(this._parseProperty()))return null;if(!this.accept(Vr.Colon))return this.finish(n,pa.ColonExpected,[Vr.Colon],e||[Vr.SemiColon]);this.prevToken&&(n.colonPosition=this.prevToken.offset);var r=!1;if(n.setValue(this._parseExpr())&&(r=!0,n.addChild(this._parsePrio())),this.peek(Vr.CurlyL))n.setNestedProperties(this._parseNestedProperties());else if(!r)return this.finish(n,pa.PropertyValueExpected);return this.peek(Vr.SemiColon)&&(n.semicolonPosition=this.token.offset),this.finish(n)},t.prototype._parseNestedProperties=function(){var e=this.create(ko);return this._parseBody(e,this._parseDeclaration.bind(this))},t.prototype._parseExtends=function(){if(this.peekKeyword("@extend")){var e=this.create(ts);if(this.consumeToken(),!e.getSelectors().addChild(this._parseSimpleSelector()))return this.finish(e,pa.SelectorExpected);for(;this.accept(Vr.Comma);)e.getSelectors().addChild(this._parseSimpleSelector());return this.accept(Vr.Exclamation)&&!this.acceptIdent("optional")?this.finish(e,pa.UnknownKeyword):this.finish(e)}return null},t.prototype._parseSimpleSelectorBody=function(){return this._parseSelectorCombinator()||this._parseSelectorPlaceholder()||e.prototype._parseSimpleSelectorBody.call(this)},t.prototype._parseSelectorCombinator=function(){if(this.peekDelim("&")){var e=this.createNode(Vi.SelectorCombinator);for(this.consumeToken();!this.hasWhitespace()&&(this.acceptDelim("-")||this.accept(Vr.Num)||this.accept(Vr.Dimension)||e.addChild(this._parseIdent())||this.acceptDelim("&")););return this.finish(e)}return null},t.prototype._parseSelectorPlaceholder=function(){if(this.peekDelim("%")){var e=this.createNode(Vi.SelectorPlaceholder);return this.consumeToken(),this._parseIdent(),this.finish(e)}return this.peekKeyword("@at-root")?(e=this.createNode(Vi.SelectorPlaceholder),this.consumeToken(),this.finish(e)):null},t.prototype._parseElementName=function(){var t=this.mark(),n=e.prototype._parseElementName.call(this);return n&&!this.hasWhitespace()&&this.peek(Vr.ParenthesisL)?(this.restoreAtMark(t),null):n},t.prototype._tryParsePseudoIdentifier=function(){return this._parseInterpolation()||e.prototype._tryParsePseudoIdentifier.call(this)},t.prototype._parseWarnAndDebug=function(){if(!this.peekKeyword("@debug")&&!this.peekKeyword("@warn")&&!this.peekKeyword("@error"))return null;var e=this.createNode(Vi.Debug);return this.consumeToken(),e.addChild(this._parseExpr()),this.finish(e)},t.prototype._parseControlStatement=function(e){return void 0===e&&(e=this._parseRuleSetDeclaration.bind(this)),this.peek(Vr.AtKeyword)?this._parseIfStatement(e)||this._parseForStatement(e)||this._parseEachStatement(e)||this._parseWhileStatement(e):null},t.prototype._parseIfStatement=function(e){return this.peekKeyword("@if")?this._internalParseIfStatement(e):null},t.prototype._internalParseIfStatement=function(e){var t=this.create(fo);if(this.consumeToken(),!t.setExpression(this._parseExpr(!0)))return this.finish(t,pa.ExpressionExpected);if(this._parseBody(t,e),this.acceptKeyword("@else"))if(this.peekIdent("if"))t.setElseClause(this._internalParseIfStatement(e));else if(this.peek(Vr.CurlyL)){var n=this.create(yo);this._parseBody(n,e),t.setElseClause(n)}return this.finish(t)},t.prototype._parseForStatement=function(e){if(!this.peekKeyword("@for"))return null;var t=this.create(go);return this.consumeToken(),t.setVariable(this._parseVariable())?this.acceptIdent("from")?t.addChild(this._parseBinaryExpr())?this.acceptIdent("to")||this.acceptIdent("through")?t.addChild(this._parseBinaryExpr())?this._parseBody(t,e):this.finish(t,pa.ExpressionExpected,[Vr.CurlyR]):this.finish(t,od.ThroughOrToExpected,[Vr.CurlyR]):this.finish(t,pa.ExpressionExpected,[Vr.CurlyR]):this.finish(t,od.FromExpected,[Vr.CurlyR]):this.finish(t,pa.VariableNameExpected,[Vr.CurlyR])},t.prototype._parseEachStatement=function(e){if(!this.peekKeyword("@each"))return null;var t=this.create(bo);this.consumeToken();var n=t.getVariables();if(!n.addChild(this._parseVariable()))return this.finish(t,pa.VariableNameExpected,[Vr.CurlyR]);for(;this.accept(Vr.Comma);)if(!n.addChild(this._parseVariable()))return this.finish(t,pa.VariableNameExpected,[Vr.CurlyR]);return this.finish(n),this.acceptIdent("in")?t.addChild(this._parseExpr())?this._parseBody(t,e):this.finish(t,pa.ExpressionExpected,[Vr.CurlyR]):this.finish(t,od.InExpected,[Vr.CurlyR])},t.prototype._parseWhileStatement=function(e){if(!this.peekKeyword("@while"))return null;var t=this.create(vo);return this.consumeToken(),t.addChild(this._parseBinaryExpr())?this._parseBody(t,e):this.finish(t,pa.ExpressionExpected,[Vr.CurlyR])},t.prototype._parseFunctionBodyDeclaration=function(){return this._parseVariableDeclaration()||this._parseReturnStatement()||this._parseWarnAndDebug()||this._parseControlStatement(this._parseFunctionBodyDeclaration.bind(this))},t.prototype._parseFunctionDeclaration=function(){if(!this.peekKeyword("@function"))return null;var e=this.create(wo);if(this.consumeToken(),!e.setIdentifier(this._parseIdent([Bi.Function])))return this.finish(e,pa.IdentifierExpected,[Vr.CurlyR]);if(!this.accept(Vr.ParenthesisL))return this.finish(e,pa.LeftParenthesisExpected,[Vr.CurlyR]);if(e.getParameters().addChild(this._parseParameterDeclaration()))for(;this.accept(Vr.Comma)&&!this.peek(Vr.ParenthesisR);)if(!e.getParameters().addChild(this._parseParameterDeclaration()))return this.finish(e,pa.VariableNameExpected);return this.accept(Vr.ParenthesisR)?this._parseBody(e,this._parseFunctionBodyDeclaration.bind(this)):this.finish(e,pa.RightParenthesisExpected,[Vr.CurlyR])},t.prototype._parseReturnStatement=function(){if(!this.peekKeyword("@return"))return null;var e=this.createNode(Vi.ReturnStatement);return this.consumeToken(),e.addChild(this._parseExpr())?this.finish(e):this.finish(e,pa.ExpressionExpected)},t.prototype._parseMixinDeclaration=function(){if(!this.peekKeyword("@mixin"))return null;var e=this.create(os);if(this.consumeToken(),!e.setIdentifier(this._parseIdent([Bi.Mixin])))return this.finish(e,pa.IdentifierExpected,[Vr.CurlyR]);if(this.accept(Vr.ParenthesisL)){if(e.getParameters().addChild(this._parseParameterDeclaration()))for(;this.accept(Vr.Comma)&&!this.peek(Vr.ParenthesisR);)if(!e.getParameters().addChild(this._parseParameterDeclaration()))return this.finish(e,pa.VariableNameExpected);if(!this.accept(Vr.ParenthesisR))return this.finish(e,pa.RightParenthesisExpected,[Vr.CurlyR])}return this._parseBody(e,this._parseRuleSetDeclaration.bind(this))},t.prototype._parseParameterDeclaration=function(){var e=this.create(uo);return e.setIdentifier(this._parseVariable())?(this.accept(td),this.accept(Vr.Colon)&&!e.setDefaultValue(this._parseExpr(!0))?this.finish(e,pa.VariableValueExpected,[],[Vr.Comma,Vr.ParenthesisR]):this.finish(e)):null},t.prototype._parseMixinContent=function(){if(!this.peekKeyword("@content"))return null;var e=this.create(ns);if(this.consumeToken(),this.accept(Vr.ParenthesisL)){if(e.getArguments().addChild(this._parseFunctionArgument()))for(;this.accept(Vr.Comma)&&!this.peek(Vr.ParenthesisR);)if(!e.getArguments().addChild(this._parseFunctionArgument()))return this.finish(e,pa.ExpressionExpected);if(!this.accept(Vr.ParenthesisR))return this.finish(e,pa.RightParenthesisExpected)}return this.finish(e)},t.prototype._parseMixinReference=function(){if(!this.peekKeyword("@include"))return null;var e=this.create(is);this.consumeToken();var t=this._parseIdent([Bi.Mixin]);if(!e.setIdentifier(t))return this.finish(e,pa.IdentifierExpected,[Vr.CurlyR]);if(!this.hasWhitespace()&&this.acceptDelim(".")&&!this.hasWhitespace()){var n=this._parseIdent([Bi.Mixin]);if(!n)return this.finish(e,pa.IdentifierExpected,[Vr.CurlyR]);var r=this.create(hs);t.referenceTypes=[Bi.Module],r.setIdentifier(t),e.setIdentifier(n),e.addChild(r)}if(this.accept(Vr.ParenthesisL)){if(e.getArguments().addChild(this._parseFunctionArgument()))for(;this.accept(Vr.Comma)&&!this.peek(Vr.ParenthesisR);)if(!e.getArguments().addChild(this._parseFunctionArgument()))return this.finish(e,pa.ExpressionExpected);if(!this.accept(Vr.ParenthesisR))return this.finish(e,pa.RightParenthesisExpected)}return(this.peekIdent("using")||this.peek(Vr.CurlyL))&&e.setContent(this._parseMixinContentDeclaration()),this.finish(e)},t.prototype._parseMixinContentDeclaration=function(){var e=this.create(rs);if(this.acceptIdent("using")){if(!this.accept(Vr.ParenthesisL))return this.finish(e,pa.LeftParenthesisExpected,[Vr.CurlyL]);if(e.getParameters().addChild(this._parseParameterDeclaration()))for(;this.accept(Vr.Comma)&&!this.peek(Vr.ParenthesisR);)if(!e.getParameters().addChild(this._parseParameterDeclaration()))return this.finish(e,pa.VariableNameExpected);if(!this.accept(Vr.ParenthesisR))return this.finish(e,pa.RightParenthesisExpected,[Vr.CurlyL])}return this.peek(Vr.CurlyL)&&this._parseBody(e,this._parseMixinReferenceBodyStatement.bind(this)),this.finish(e)},t.prototype._parseMixinReferenceBodyStatement=function(){return this._tryParseKeyframeSelector()||this._parseRuleSetDeclaration()},t.prototype._parseFunctionArgument=function(){var e=this.create(mo),t=this.mark(),n=this._parseVariable();if(n)if(this.accept(Vr.Colon))e.setIdentifier(n);else{if(this.accept(td))return e.setValue(n),this.finish(e);this.restoreAtMark(t)}return e.setValue(this._parseExpr(!0))?(this.accept(td),e.addChild(this._parsePrio()),this.finish(e)):e.setValue(this._tryParsePrio())?this.finish(e):null},t.prototype._parseURLArgument=function(){var t=this.mark(),n=e.prototype._parseURLArgument.call(this);if(!n||!this.peek(Vr.ParenthesisR)){this.restoreAtMark(t);var r=this.create(Xi);return r.addChild(this._parseBinaryExpr()),this.finish(r)}return n},t.prototype._parseOperation=function(){if(!this.peek(Vr.ParenthesisL))return null;var e=this.create(Xi);for(this.consumeToken();e.addChild(this._parseListElement());)this.accept(Vr.Comma);return this.accept(Vr.ParenthesisR)?this.finish(e):this.finish(e,pa.RightParenthesisExpected)},t.prototype._parseListElement=function(){var e=this.create(as),t=this._parseBinaryExpr();if(!t)return null;if(this.accept(Vr.Colon)){if(e.setKey(t),!e.setValue(this._parseBinaryExpr()))return this.finish(e,pa.ExpressionExpected)}else e.setValue(t);return this.finish(e)},t.prototype._parseUse=function(){if(!this.peekKeyword("@use"))return null;var e=this.create(Fo);if(this.consumeToken(),!e.addChild(this._parseStringLiteral()))return this.finish(e,pa.StringLiteralExpected);if(!this.peek(Vr.SemiColon)&&!this.peek(Vr.EOF)){if(!this.peekRegExp(Vr.Ident,/as|with/))return this.finish(e,pa.UnknownKeyword);if(this.acceptIdent("as")&&!e.setIdentifier(this._parseIdent([Bi.Module]))&&!this.acceptDelim("*"))return this.finish(e,pa.IdentifierOrWildcardExpected);if(this.acceptIdent("with")){if(!this.accept(Vr.ParenthesisL))return this.finish(e,pa.LeftParenthesisExpected,[Vr.ParenthesisR]);if(!e.getParameters().addChild(this._parseModuleConfigDeclaration()))return this.finish(e,pa.VariableNameExpected);for(;this.accept(Vr.Comma)&&!this.peek(Vr.ParenthesisR);)if(!e.getParameters().addChild(this._parseModuleConfigDeclaration()))return this.finish(e,pa.VariableNameExpected);if(!this.accept(Vr.ParenthesisR))return this.finish(e,pa.RightParenthesisExpected)}}return this.accept(Vr.SemiColon)||this.accept(Vr.EOF)?this.finish(e):this.finish(e,pa.SemiColonExpected)},t.prototype._parseModuleConfigDeclaration=function(){var e=this.create(Ro);return e.setIdentifier(this._parseVariable())?this.accept(Vr.Colon)&&e.setValue(this._parseExpr(!0))?!this.accept(Vr.Exclamation)||!this.hasWhitespace()&&this.acceptIdent("default")?this.finish(e):this.finish(e,pa.UnknownKeyword):this.finish(e,pa.VariableValueExpected,[],[Vr.Comma,Vr.ParenthesisR]):null},t.prototype._parseForward=function(){if(!this.peekKeyword("@forward"))return null;var e=this.create(No);if(this.consumeToken(),!e.addChild(this._parseStringLiteral()))return this.finish(e,pa.StringLiteralExpected);if(this.acceptIdent("with")){if(!this.accept(Vr.ParenthesisL))return this.finish(e,pa.LeftParenthesisExpected,[Vr.ParenthesisR]);if(!e.getParameters().addChild(this._parseModuleConfigDeclaration()))return this.finish(e,pa.VariableNameExpected);for(;this.accept(Vr.Comma)&&!this.peek(Vr.ParenthesisR);)if(!e.getParameters().addChild(this._parseModuleConfigDeclaration()))return this.finish(e,pa.VariableNameExpected);if(!this.accept(Vr.ParenthesisR))return this.finish(e,pa.RightParenthesisExpected)}if(!this.peek(Vr.SemiColon)&&!this.peek(Vr.EOF)){if(!this.peekRegExp(Vr.Ident,/as|hide|show/))return this.finish(e,pa.UnknownKeyword);if(this.acceptIdent("as")){var t=this._parseIdent([Bi.Forward]);if(!e.setIdentifier(t))return this.finish(e,pa.IdentifierExpected);if(this.hasWhitespace()||!this.acceptDelim("*"))return this.finish(e,pa.WildcardExpected)}if((this.peekIdent("hide")||this.peekIdent("show"))&&!e.addChild(this._parseForwardVisibility()))return this.finish(e,pa.IdentifierOrVariableExpected)}return this.accept(Vr.SemiColon)||this.accept(Vr.EOF)?this.finish(e):this.finish(e,pa.SemiColonExpected)},t.prototype._parseForwardVisibility=function(){var e=this.create(Do);for(e.setIdentifier(this._parseIdent());e.addChild(this._parseVariable()||this._parseIdent());)this.accept(Vr.Comma);return e.getChildren().length>1?e:null},t.prototype._parseSupportsCondition=function(){return this._parseInterpolation()||e.prototype._parseSupportsCondition.call(this)},t}(ac),ld=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),cd=ms(),hd=function(e){function t(n,r){var i=e.call(this,"$",n,r)||this;return dd(t.scssModuleLoaders),dd(t.scssModuleBuiltIns),i}return ld(t,e),t.prototype.isImportPathParent=function(t){return t===Vi.Forward||t===Vi.Use||e.prototype.isImportPathParent.call(this,t)},t.prototype.getCompletionForImportPath=function(n,r){var i=n.getParent().type;if(i===Vi.Forward||i===Vi.Use)for(var o=0,s=t.scssModuleBuiltIns;o0){var t="string"==typeof e.documentation?{kind:"markdown",value:e.documentation}:{kind:"markdown",value:e.documentation.value};t.value+="\n\n",t.value+=e.references.map((function(e){return"[".concat(e.name,"](").concat(e.url,")")})).join(" | "),e.documentation=t}}))}var pd,ud,md,fd=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),gd="/".charCodeAt(0),bd="\n".charCodeAt(0),vd="\r".charCodeAt(0),yd="\f".charCodeAt(0),wd="`".charCodeAt(0),xd=".".charCodeAt(0),Sd=Vr.CustomToken,kd=Sd++,Cd=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return fd(t,e),t.prototype.scanNext=function(t){var n=this.escapedJavaScript();return null!==n?this.finishToken(t,n):this.stream.advanceIfChars([xd,xd,xd])?this.finishToken(t,kd):e.prototype.scanNext.call(this,t)},t.prototype.comment=function(){return!!e.prototype.comment.call(this)||!(this.inURL||!this.stream.advanceIfChars([gd,gd]))&&(this.stream.advanceWhileChar((function(e){switch(e){case bd:case vd:case yd:return!1;default:return!0}})),!0)},t.prototype.escapedJavaScript=function(){return this.stream.peekChar()===wd?(this.stream.advance(1),this.stream.advanceWhileChar((function(e){return e!==wd})),this.stream.advanceIfChar(wd)?Vr.EscapedJavaScript:Vr.BadEscapedJavaScript):null},t}(Mi),_d=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),Ed=function(e){function t(){return e.call(this,new Cd)||this}return _d(t,e),t.prototype._parseStylesheetStatement=function(t){return void 0===t&&(t=!1),this.peek(Vr.AtKeyword)?this._parseVariableDeclaration()||this._parsePlugin()||e.prototype._parseStylesheetAtStatement.call(this,t):this._tryParseMixinDeclaration()||this._tryParseMixinReference()||this._parseFunction()||this._parseRuleset(!0)},t.prototype._parseImport=function(){if(!this.peekKeyword("@import")&&!this.peekKeyword("@import-once"))return null;var e=this.create(Eo);if(this.consumeToken(),this.accept(Vr.ParenthesisL)){if(!this.accept(Vr.Ident))return this.finish(e,pa.IdentifierExpected,[Vr.SemiColon]);do{if(!this.accept(Vr.Comma))break}while(this.accept(Vr.Ident));if(!this.accept(Vr.ParenthesisR))return this.finish(e,pa.RightParenthesisExpected,[Vr.SemiColon])}return e.addChild(this._parseURILiteral())||e.addChild(this._parseStringLiteral())?(this.peek(Vr.SemiColon)||this.peek(Vr.EOF)||e.setMedialist(this._parseMediaQueryList()),this.finish(e)):this.finish(e,pa.URIOrStringExpected,[Vr.SemiColon])},t.prototype._parsePlugin=function(){if(!this.peekKeyword("@plugin"))return null;var e=this.createNode(Vi.Plugin);return this.consumeToken(),e.addChild(this._parseStringLiteral())?this.accept(Vr.SemiColon)?this.finish(e):this.finish(e,pa.SemiColonExpected):this.finish(e,pa.StringLiteralExpected)},t.prototype._parseMediaQuery=function(){var t=e.prototype._parseMediaQuery.call(this);if(!t){var n=this.create(Po);return n.addChild(this._parseVariable())?this.finish(n):null}return t},t.prototype._parseMediaDeclaration=function(e){return void 0===e&&(e=!1),this._tryParseRuleset(e)||this._tryToParseDeclaration()||this._tryParseMixinDeclaration()||this._tryParseMixinReference()||this._parseDetachedRuleSetMixin()||this._parseStylesheetStatement(e)},t.prototype._parseMediaFeatureName=function(){return this._parseIdent()||this._parseVariable()},t.prototype._parseVariableDeclaration=function(e){void 0===e&&(e=[]);var t=this.create(Zo),n=this.mark();if(!t.setVariable(this._parseVariable(!0)))return null;if(!this.accept(Vr.Colon))return this.restoreAtMark(n),null;if(this.prevToken&&(t.colonPosition=this.prevToken.offset),t.setValue(this._parseDetachedRuleSet()))t.needsSemicolon=!1;else if(!t.setValue(this._parseExpr()))return this.finish(t,pa.VariableValueExpected,[],e);return t.addChild(this._parsePrio()),this.peek(Vr.SemiColon)&&(t.semicolonPosition=this.token.offset),this.finish(t)},t.prototype._parseDetachedRuleSet=function(){var e=this.mark();if(this.peekDelim("#")||this.peekDelim(".")){if(this.consumeToken(),this.hasWhitespace()||!this.accept(Vr.ParenthesisL))return this.restoreAtMark(e),null;var t=this.create(os);if(t.getParameters().addChild(this._parseMixinParameter()))for(;(this.accept(Vr.Comma)||this.accept(Vr.SemiColon))&&!this.peek(Vr.ParenthesisR);)t.getParameters().addChild(this._parseMixinParameter())||this.markError(t,pa.IdentifierExpected,[],[Vr.ParenthesisR]);if(!this.accept(Vr.ParenthesisR))return this.restoreAtMark(e),null}if(!this.peek(Vr.CurlyL))return null;var n=this.create(no);return this._parseBody(n,this._parseDetachedRuleSetBody.bind(this)),this.finish(n)},t.prototype._parseDetachedRuleSetBody=function(){return this._tryParseKeyframeSelector()||this._parseRuleSetDeclaration()},t.prototype._addLookupChildren=function(e){if(!e.addChild(this._parseLookupValue()))return!1;for(var t=!1;this.peek(Vr.BracketL)&&(t=!0),e.addChild(this._parseLookupValue());)t=!1;return!t},t.prototype._parseLookupValue=function(){var e=this.create(Xi),t=this.mark();return this.accept(Vr.BracketL)&&((e.addChild(this._parseVariable(!1,!0))||e.addChild(this._parsePropertyIdentifier()))&&this.accept(Vr.BracketR)||this.accept(Vr.BracketR))?e:(this.restoreAtMark(t),null)},t.prototype._parseVariable=function(e,t){void 0===e&&(e=!1),void 0===t&&(t=!1);var n=!e&&this.peekDelim("$");if(!this.peekDelim("@")&&!n&&!this.peek(Vr.AtKeyword))return null;for(var r=this.create(es),i=this.mark();this.acceptDelim("@")||!e&&this.acceptDelim("$");)if(this.hasWhitespace())return this.restoreAtMark(i),null;return!this.accept(Vr.AtKeyword)&&!this.accept(Vr.Ident)||!t&&this.peek(Vr.BracketL)&&!this._addLookupChildren(r)?(this.restoreAtMark(i),null):r},t.prototype._parseTermExpression=function(){return this._parseVariable()||this._parseEscaped()||e.prototype._parseTermExpression.call(this)||this._tryParseMixinReference(!1)},t.prototype._parseEscaped=function(){if(this.peek(Vr.EscapedJavaScript)||this.peek(Vr.BadEscapedJavaScript)){var e=this.createNode(Vi.EscapedValue);return this.consumeToken(),this.finish(e)}return this.peekDelim("~")?(e=this.createNode(Vi.EscapedValue),this.consumeToken(),this.accept(Vr.String)||this.accept(Vr.EscapedJavaScript)?this.finish(e):this.finish(e,pa.TermExpected)):null},t.prototype._parseOperator=function(){return this._parseGuardOperator()||e.prototype._parseOperator.call(this)},t.prototype._parseGuardOperator=function(){if(this.peekDelim(">")){var e=this.createNode(Vi.Operator);return this.consumeToken(),this.acceptDelim("="),e}return this.peekDelim("=")?(e=this.createNode(Vi.Operator),this.consumeToken(),this.acceptDelim("<"),e):this.peekDelim("<")?(e=this.createNode(Vi.Operator),this.consumeToken(),this.acceptDelim("="),e):null},t.prototype._parseRuleSetDeclaration=function(){return this.peek(Vr.AtKeyword)?this._parseKeyframe()||this._parseMedia(!0)||this._parseImport()||this._parseSupports(!0)||this._parseDetachedRuleSetMixin()||this._parseVariableDeclaration()||e.prototype._parseRuleSetDeclarationAtStatement.call(this):this._tryParseMixinDeclaration()||this._tryParseRuleset(!0)||this._tryParseMixinReference()||this._parseFunction()||this._parseExtend()||e.prototype._parseRuleSetDeclaration.call(this)},t.prototype._parseKeyframeIdent=function(){return this._parseIdent([Bi.Keyframe])||this._parseVariable()},t.prototype._parseKeyframeSelector=function(){return this._parseDetachedRuleSetMixin()||e.prototype._parseKeyframeSelector.call(this)},t.prototype._parseSimpleSelectorBody=function(){return this._parseSelectorCombinator()||e.prototype._parseSimpleSelectorBody.call(this)},t.prototype._parseSelector=function(e){var t=this.create(io),n=!1;for(e&&(n=t.addChild(this._parseCombinator()));t.addChild(this._parseSimpleSelector());){n=!0;var r=this.mark();if(t.addChild(this._parseGuard())&&this.peek(Vr.CurlyL))break;this.restoreAtMark(r),t.addChild(this._parseCombinator())}return n?this.finish(t):null},t.prototype._parseSelectorCombinator=function(){if(this.peekDelim("&")){var e=this.createNode(Vi.SelectorCombinator);for(this.consumeToken();!this.hasWhitespace()&&(this.acceptDelim("-")||this.accept(Vr.Num)||this.accept(Vr.Dimension)||e.addChild(this._parseIdent())||this.acceptDelim("&")););return this.finish(e)}return null},t.prototype._parseSelectorIdent=function(){if(!this.peekInterpolatedIdent())return null;var e=this.createNode(Vi.SelectorInterpolation);return this._acceptInterpolatedIdent(e)?this.finish(e):null},t.prototype._parsePropertyIdentifier=function(e){void 0===e&&(e=!1);var t=/^[\w-]+/;if(!this.peekInterpolatedIdent()&&!this.peekRegExp(this.token.type,t))return null;var n=this.mark(),r=this.create(Qi);return r.isCustomProperty=this.acceptDelim("-")&&this.acceptDelim("-"),(e?r.isCustomProperty?r.addChild(this._parseIdent()):r.addChild(this._parseRegexp(t)):r.isCustomProperty?this._acceptInterpolatedIdent(r):this._acceptInterpolatedIdent(r,t))?(e||this.hasWhitespace()||(this.acceptDelim("+"),this.hasWhitespace()||this.acceptIdent("_")),this.finish(r)):(this.restoreAtMark(n),null)},t.prototype.peekInterpolatedIdent=function(){return this.peek(Vr.Ident)||this.peekDelim("@")||this.peekDelim("$")||this.peekDelim("-")},t.prototype._acceptInterpolatedIdent=function(e,t){for(var n=this,r=!1,i=function(){var e=n.mark();return n.acceptDelim("-")&&(n.hasWhitespace()||n.acceptDelim("-"),n.hasWhitespace())?(n.restoreAtMark(e),null):n._parseInterpolation()},o=t?function(){return n.acceptRegexp(t)}:function(){return n.accept(Vr.Ident)};(o()||e.addChild(this._parseInterpolation()||this.try(i)))&&(r=!0,!this.hasWhitespace()););return r},t.prototype._parseInterpolation=function(){var e=this.mark();if(this.peekDelim("@")||this.peekDelim("$")){var t=this.createNode(Vi.Interpolation);return this.consumeToken(),this.hasWhitespace()||!this.accept(Vr.CurlyL)?(this.restoreAtMark(e),null):t.addChild(this._parseIdent())?this.accept(Vr.CurlyR)?this.finish(t):this.finish(t,pa.RightCurlyExpected):this.finish(t,pa.IdentifierExpected)}return null},t.prototype._tryParseMixinDeclaration=function(){var e=this.mark(),t=this.create(os);if(!t.setIdentifier(this._parseMixinDeclarationIdentifier())||!this.accept(Vr.ParenthesisL))return this.restoreAtMark(e),null;if(t.getParameters().addChild(this._parseMixinParameter()))for(;(this.accept(Vr.Comma)||this.accept(Vr.SemiColon))&&!this.peek(Vr.ParenthesisR);)t.getParameters().addChild(this._parseMixinParameter())||this.markError(t,pa.IdentifierExpected,[],[Vr.ParenthesisR]);return this.accept(Vr.ParenthesisR)?(t.setGuard(this._parseGuard()),this.peek(Vr.CurlyL)?this._parseBody(t,this._parseMixInBodyDeclaration.bind(this)):(this.restoreAtMark(e),null)):(this.restoreAtMark(e),null)},t.prototype._parseMixInBodyDeclaration=function(){return this._parseFontFace()||this._parseRuleSetDeclaration()},t.prototype._parseMixinDeclarationIdentifier=function(){var e;if(this.peekDelim("#")||this.peekDelim(".")){if(e=this.create(Qi),this.consumeToken(),this.hasWhitespace()||!e.addChild(this._parseIdent()))return null}else{if(!this.peek(Vr.Hash))return null;e=this.create(Qi),this.consumeToken()}return e.referenceTypes=[Bi.Mixin],this.finish(e)},t.prototype._parsePseudo=function(){if(!this.peek(Vr.Colon))return null;var t=this.mark(),n=this.create(ts);return this.consumeToken(),this.acceptIdent("extend")?this._completeExtends(n):(this.restoreAtMark(t),e.prototype._parsePseudo.call(this))},t.prototype._parseExtend=function(){if(!this.peekDelim("&"))return null;var e=this.mark(),t=this.create(ts);return this.consumeToken(),!this.hasWhitespace()&&this.accept(Vr.Colon)&&this.acceptIdent("extend")?this._completeExtends(t):(this.restoreAtMark(e),null)},t.prototype._completeExtends=function(e){if(!this.accept(Vr.ParenthesisL))return this.finish(e,pa.LeftParenthesisExpected);var t=e.getSelectors();if(!t.addChild(this._parseSelector(!0)))return this.finish(e,pa.SelectorExpected);for(;this.accept(Vr.Comma);)if(!t.addChild(this._parseSelector(!0)))return this.finish(e,pa.SelectorExpected);return this.accept(Vr.ParenthesisR)?this.finish(e):this.finish(e,pa.RightParenthesisExpected)},t.prototype._parseDetachedRuleSetMixin=function(){if(!this.peek(Vr.AtKeyword))return null;var e=this.mark(),t=this.create(is);return!t.addChild(this._parseVariable(!0))||!this.hasWhitespace()&&this.accept(Vr.ParenthesisL)?this.accept(Vr.ParenthesisR)?this.finish(t):this.finish(t,pa.RightParenthesisExpected):(this.restoreAtMark(e),null)},t.prototype._tryParseMixinReference=function(e){void 0===e&&(e=!0);for(var t=this.mark(),n=this.create(is),r=this._parseMixinDeclarationIdentifier();r;){this.acceptDelim(">");var i=this._parseMixinDeclarationIdentifier();if(!i)break;n.getNamespaces().addChild(r),r=i}if(!n.setIdentifier(r))return this.restoreAtMark(t),null;var o=!1;if(this.accept(Vr.ParenthesisL)){if(o=!0,n.getArguments().addChild(this._parseMixinArgument()))for(;(this.accept(Vr.Comma)||this.accept(Vr.SemiColon))&&!this.peek(Vr.ParenthesisR);)if(!n.getArguments().addChild(this._parseMixinArgument()))return this.finish(n,pa.ExpressionExpected);if(!this.accept(Vr.ParenthesisR))return this.finish(n,pa.RightParenthesisExpected);r.referenceTypes=[Bi.Mixin]}else r.referenceTypes=[Bi.Mixin,Bi.Rule];return this.peek(Vr.BracketL)?e||this._addLookupChildren(n):n.addChild(this._parsePrio()),o||this.peek(Vr.SemiColon)||this.peek(Vr.CurlyR)||this.peek(Vr.EOF)?this.finish(n):(this.restoreAtMark(t),null)},t.prototype._parseMixinArgument=function(){var e=this.create(mo),t=this.mark(),n=this._parseVariable();return n&&(this.accept(Vr.Colon)?e.setIdentifier(n):this.restoreAtMark(t)),e.setValue(this._parseDetachedRuleSet()||this._parseExpr(!0))?this.finish(e):(this.restoreAtMark(t),null)},t.prototype._parseMixinParameter=function(){var e=this.create(uo);if(this.peekKeyword("@rest")){var t=this.create(Xi);return this.consumeToken(),this.accept(kd)?(e.setIdentifier(this.finish(t)),this.finish(e)):this.finish(e,pa.DotExpected,[],[Vr.Comma,Vr.ParenthesisR])}if(this.peek(kd)){var n=this.create(Xi);return this.consumeToken(),e.setIdentifier(this.finish(n)),this.finish(e)}var r=!1;return e.setIdentifier(this._parseVariable())&&(this.accept(Vr.Colon),r=!0),e.setDefaultValue(this._parseDetachedRuleSet()||this._parseExpr(!0))||r?this.finish(e):null},t.prototype._parseGuard=function(){if(!this.peekIdent("when"))return null;var e=this.create(ls);if(this.consumeToken(),e.isNegated=this.acceptIdent("not"),!e.getConditions().addChild(this._parseGuardCondition()))return this.finish(e,pa.ConditionExpected);for(;this.acceptIdent("and")||this.accept(Vr.Comma);)if(!e.getConditions().addChild(this._parseGuardCondition()))return this.finish(e,pa.ConditionExpected);return this.finish(e)},t.prototype._parseGuardCondition=function(){if(!this.peek(Vr.ParenthesisL))return null;var e=this.create(cs);return this.consumeToken(),e.addChild(this._parseExpr()),this.accept(Vr.ParenthesisR)?this.finish(e):this.finish(e,pa.RightParenthesisExpected)},t.prototype._parseFunction=function(){var e=this.mark(),t=this.create(po);if(!t.setIdentifier(this._parseFunctionIdentifier()))return null;if(this.hasWhitespace()||!this.accept(Vr.ParenthesisL))return this.restoreAtMark(e),null;if(t.getArguments().addChild(this._parseMixinArgument()))for(;(this.accept(Vr.Comma)||this.accept(Vr.SemiColon))&&!this.peek(Vr.ParenthesisR);)if(!t.getArguments().addChild(this._parseMixinArgument()))return this.finish(t,pa.ExpressionExpected);return this.accept(Vr.ParenthesisR)?this.finish(t):this.finish(t,pa.RightParenthesisExpected)},t.prototype._parseFunctionIdentifier=function(){if(this.peekDelim("%")){var t=this.create(Qi);return t.referenceTypes=[Bi.Function],this.consumeToken(),this.finish(t)}return e.prototype._parseFunctionIdentifier.call(this)},t.prototype._parseURLArgument=function(){var t=this.mark(),n=e.prototype._parseURLArgument.call(this);if(!n||!this.peek(Vr.ParenthesisR)){this.restoreAtMark(t);var r=this.create(Xi);return r.addChild(this._parseBinaryExpr()),this.finish(r)}return n},t}(ac),Fd=function(){var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(t,n)};return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),Rd=ms(),Nd=function(e){function t(t,n){return e.call(this,"@",t,n)||this}return Fd(t,e),t.prototype.createFunctionProposals=function(e,t,n,r){for(var i=0,o=e;i 50%"),example:"percentage(@number);",type:"percentage"},{name:"round",description:Rd("vs/language/css/css.worker","less.builtin.round","rounds a number to a number of places"),example:"round(number, [places: 0]);"},{name:"sqrt",description:Rd("vs/language/css/css.worker","less.builtin.sqrt","calculates square root of a number"),example:"sqrt(number);"},{name:"sin",description:Rd("vs/language/css/css.worker","less.builtin.sin","sine function"),example:"sin(number);"},{name:"tan",description:Rd("vs/language/css/css.worker","less.builtin.tan","tangent function"),example:"tan(number);"},{name:"atan",description:Rd("vs/language/css/css.worker","less.builtin.atan","arctangent - inverse of tangent function"),example:"atan(number);"},{name:"pi",description:Rd("vs/language/css/css.worker","less.builtin.pi","returns pi"),example:"pi();"},{name:"pow",description:Rd("vs/language/css/css.worker","less.builtin.pow","first argument raised to the power of the second argument"),example:"pow(@base, @exponent);"},{name:"mod",description:Rd("vs/language/css/css.worker","less.builtin.mod","first argument modulus second argument"),example:"mod(number, number);"},{name:"min",description:Rd("vs/language/css/css.worker","less.builtin.min","returns the lowest of one or more values"),example:"min(@x, @y);"},{name:"max",description:Rd("vs/language/css/css.worker","less.builtin.max","returns the lowest of one or more values"),example:"max(@x, @y);"}],t.colorProposals=[{name:"argb",example:"argb(@color);",description:Rd("vs/language/css/css.worker","less.builtin.argb","creates a #AARRGGBB")},{name:"hsl",example:"hsl(@hue, @saturation, @lightness);",description:Rd("vs/language/css/css.worker","less.builtin.hsl","creates a color")},{name:"hsla",example:"hsla(@hue, @saturation, @lightness, @alpha);",description:Rd("vs/language/css/css.worker","less.builtin.hsla","creates a color")},{name:"hsv",example:"hsv(@hue, @saturation, @value);",description:Rd("vs/language/css/css.worker","less.builtin.hsv","creates a color")},{name:"hsva",example:"hsva(@hue, @saturation, @value, @alpha);",description:Rd("vs/language/css/css.worker","less.builtin.hsva","creates a color")},{name:"hue",example:"hue(@color);",description:Rd("vs/language/css/css.worker","less.builtin.hue","returns the `hue` channel of `@color` in the HSL space")},{name:"saturation",example:"saturation(@color);",description:Rd("vs/language/css/css.worker","less.builtin.saturation","returns the `saturation` channel of `@color` in the HSL space")},{name:"lightness",example:"lightness(@color);",description:Rd("vs/language/css/css.worker","less.builtin.lightness","returns the `lightness` channel of `@color` in the HSL space")},{name:"hsvhue",example:"hsvhue(@color);",description:Rd("vs/language/css/css.worker","less.builtin.hsvhue","returns the `hue` channel of `@color` in the HSV space")},{name:"hsvsaturation",example:"hsvsaturation(@color);",description:Rd("vs/language/css/css.worker","less.builtin.hsvsaturation","returns the `saturation` channel of `@color` in the HSV space")},{name:"hsvvalue",example:"hsvvalue(@color);",description:Rd("vs/language/css/css.worker","less.builtin.hsvvalue","returns the `value` channel of `@color` in the HSV space")},{name:"red",example:"red(@color);",description:Rd("vs/language/css/css.worker","less.builtin.red","returns the `red` channel of `@color`")},{name:"green",example:"green(@color);",description:Rd("vs/language/css/css.worker","less.builtin.green","returns the `green` channel of `@color`")},{name:"blue",example:"blue(@color);",description:Rd("vs/language/css/css.worker","less.builtin.blue","returns the `blue` channel of `@color`")},{name:"alpha",example:"alpha(@color);",description:Rd("vs/language/css/css.worker","less.builtin.alpha","returns the `alpha` channel of `@color`")},{name:"luma",example:"luma(@color);",description:Rd("vs/language/css/css.worker","less.builtin.luma","returns the `luma` value (perceptual brightness) of `@color`")},{name:"saturate",example:"saturate(@color, 10%);",description:Rd("vs/language/css/css.worker","less.builtin.saturate","return `@color` 10% points more saturated")},{name:"desaturate",example:"desaturate(@color, 10%);",description:Rd("vs/language/css/css.worker","less.builtin.desaturate","return `@color` 10% points less saturated")},{name:"lighten",example:"lighten(@color, 10%);",description:Rd("vs/language/css/css.worker","less.builtin.lighten","return `@color` 10% points lighter")},{name:"darken",example:"darken(@color, 10%);",description:Rd("vs/language/css/css.worker","less.builtin.darken","return `@color` 10% points darker")},{name:"fadein",example:"fadein(@color, 10%);",description:Rd("vs/language/css/css.worker","less.builtin.fadein","return `@color` 10% points less transparent")},{name:"fadeout",example:"fadeout(@color, 10%);",description:Rd("vs/language/css/css.worker","less.builtin.fadeout","return `@color` 10% points more transparent")},{name:"fade",example:"fade(@color, 50%);",description:Rd("vs/language/css/css.worker","less.builtin.fade","return `@color` with 50% transparency")},{name:"spin",example:"spin(@color, 10);",description:Rd("vs/language/css/css.worker","less.builtin.spin","return `@color` with a 10 degree larger in hue")},{name:"mix",example:"mix(@color1, @color2, [@weight: 50%]);",description:Rd("vs/language/css/css.worker","less.builtin.mix","return a mix of `@color1` and `@color2`")},{name:"greyscale",example:"greyscale(@color);",description:Rd("vs/language/css/css.worker","less.builtin.greyscale","returns a grey, 100% desaturated color")},{name:"contrast",example:"contrast(@color1, [@darkcolor: black], [@lightcolor: white], [@threshold: 43%]);",description:Rd("vs/language/css/css.worker","less.builtin.contrast","return `@darkcolor` if `@color1 is> 43% luma` otherwise return `@lightcolor`, see notes")},{name:"multiply",example:"multiply(@color1, @color2);"},{name:"screen",example:"screen(@color1, @color2);"},{name:"overlay",example:"overlay(@color1, @color2);"},{name:"softlight",example:"softlight(@color1, @color2);"},{name:"hardlight",example:"hardlight(@color1, @color2);"},{name:"difference",example:"difference(@color1, @color2);"},{name:"exclusion",example:"exclusion(@color1, @color2);"},{name:"average",example:"average(@color1, @color2);"},{name:"negation",example:"negation(@color1, @color2);"}],t}(Mc);function Dd(e,t){var n=function(e){function t(t){return e.positionAt(t.offset).line}function n(t){return e.positionAt(t.offset+t.len).line}var r=[],i=[],o=function(){switch(e.languageId){case"scss":return new nd;case"less":return new Cd;default:return new Mi}}();o.ignoreComment=!1,o.setSource(e.getText());for(var s=o.scan(),a=null,l=function(){switch(s.type){case Vr.CurlyL:case Xh:i.push({line:t(s),type:"brace",isStart:!0});break;case Vr.CurlyR:if(0!==i.length){if(!(d=Td(i,"brace")))break;var l=n(s);"brace"===d.type&&(a&&n(a)!==l&&l--,d.line!==l&&r.push({startLine:d.line,endLine:l,kind:void 0}))}break;case Vr.Comment:var c=function(e){return"#region"===e?{line:t(s),type:"comment",isStart:!0}:{line:n(s),type:"comment",isStart:!1}},h=function(t){var n=t.text.match(/^\s*\/\*\s*(#region|#endregion)\b\s*(.*?)\s*\*\//);if(n)return c(n[1]);if("scss"===e.languageId||"less"===e.languageId){var r=t.text.match(/^\s*\/\/\s*(#region|#endregion)\b\s*(.*?)\s*/);if(r)return c(r[1])}return null}(s);if(h)if(h.isStart)i.push(h);else{var d;if(!(d=Td(i,"comment")))break;"comment"===d.type&&d.line!==h.line&&r.push({startLine:d.line,endLine:h.line,kind:"region"})}else{var p=function(e,r){var i=t(e),o=n(e);return i!==o?{startLine:i,endLine:o,kind:r}:null}(s,"comment");p&&r.push(p)}}a=s,s=o.scan()};s.type!==Vr.EOF;)l();return r}(e);return function(e,t){var n=t&&t.rangeLimit||Number.MAX_VALUE,r=e.sort((function(e,t){var n=e.startLine-t.startLine;return 0===n&&(n=e.endLine-t.endLine),n})),i=[],o=-1;return r.forEach((function(e){e.startLine=0;n--)if(e[n].type===t&&e[n].isStart)return e.splice(n,1)[0];return null}pd=[,,function(e){function t(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function n(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function r(e,r){this.__indent_cache=new n(e,r),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new t(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}t.prototype.clone_empty=function(){var e=new t(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},t.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},t.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},t.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},t.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},t.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},t.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},t.prototype.is_empty=function(){return 0===this.__items.length},t.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},t.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},t.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},t.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},t.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},t.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},t.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},n.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),(n+=e*this.__indent_size)+t},n.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+this.__cache[t]},n.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},n.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},r.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},r.prototype.get_line_number=function(){return this.__lines.length},r.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},r.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},r.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},r.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline()||(this.raw||this.__add_outputline(),0))},r.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},r.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},r.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},r.prototype.add_raw_token=function(e){for(var t=0;t1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},r.prototype.just_added_newline=function(){return this.current_line.is_empty()},r.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},r.prototype.ensure_empty_line_above=function(e,n){for(var r=this.__lines.length-2;r>=0;){var i=this.__lines[r];if(i.is_empty())break;if(0!==i.item(0).indexOf(e)&&i.item(-1)!==n){this.__lines.splice(r+1,0,new t(this)),this.previous_line=this.__lines[this.__lines.length-2];break}r--}},e.exports.Output=r},,,,function(e){function t(e,t){this.raw_options=n(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","django","erb","handlebars","php","smarty"],["auto"])}function n(e,t){var n,i={};for(n in e=r(e))n!==t&&(i[n]=e[n]);if(t&&e[t])for(n in e[t])i[n]=e[t][n];return i}function r(e){var t,n={};for(t in e)n[t.replace(/-/g,"_")]=e[t];return n}t.prototype._get_array=function(e,t){var n=this.raw_options[e],r=t||[];return"object"==typeof n?null!==n&&"function"==typeof n.concat&&(r=n.concat()):"string"==typeof n&&(r=n.split(/[^a-zA-Z0-9_\/\-]+/)),r},t.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},t.prototype._get_characters=function(e,t){var n=this.raw_options[e],r=t||"";return"string"==typeof n&&(r=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),r},t.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var r=parseInt(n,10);return isNaN(r)&&(r=t),r},t.prototype._get_selection=function(e,t,n){var r=this._get_selection_list(e,t,n);if(1!==r.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return r[0]},t.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var r=this._get_array(e,n);if(!this._is_valid_selection(r,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return r},t.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some((function(e){return-1===t.indexOf(e)}))},e.exports.Options=t,e.exports.normalizeOpts=r,e.exports.mergeOpts=n},,function(e){var t=RegExp.prototype.hasOwnProperty("sticky");function n(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}n.prototype.restart=function(){this.__position=0},n.prototype.back=function(){this.__position>0&&(this.__position-=1)},n.prototype.hasNext=function(){return this.__position=0&&e=0&&t=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=n},,,,,function(e){function t(e,t){e="string"==typeof e?e:e.source,t="string"==typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}t.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},t.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=t},,function(e,t,n){var r=n(16).Beautifier,i=n(17).Options;e.exports=function(e,t){return new r(e,t).beautify()},e.exports.defaultOptions=function(){return new i}},function(e,t,n){var r=n(17).Options,i=n(2).Output,o=n(8).InputScanner,s=new(0,n(13).Directives)(/\/\*/,/\*\//),a=/\r\n|[\r\n]/,l=/\r\n|[\r\n]/g,c=/\s/,h=/(?:\s|\n)+/g,d=/\/\*(?:[\s\S]*?)((?:\*\/)|$)/g,p=/\/\/(?:[^\n\r\u2028\u2029]*)/g;function u(e,t){this._source_text=e||"",this._options=new r(t),this._ch=null,this._input=null,this.NESTED_AT_RULE={"@page":!0,"@font-face":!0,"@keyframes":!0,"@media":!0,"@supports":!0,"@document":!0},this.CONDITIONAL_GROUP_RULE={"@media":!0,"@supports":!0,"@document":!0}}u.prototype.eatString=function(e){var t="";for(this._ch=this._input.next();this._ch;){if(t+=this._ch,"\\"===this._ch)t+=this._input.next();else if(-1!==e.indexOf(this._ch)||"\n"===this._ch)break;this._ch=this._input.next()}return t},u.prototype.eatWhitespace=function(e){for(var t=c.test(this._input.peek()),n=0;c.test(this._input.peek());)this._ch=this._input.next(),e&&"\n"===this._ch&&(0===n||n0&&this._indentLevel--},u.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===t&&(t="\n",e&&a.test(e||"")&&(t=e.match(a)[0]));var n=(e=e.replace(l,"\n")).match(/^[\t ]*/)[0];this._output=new i(this._options,n),this._input=new o(e),this._indentLevel=0,this._nestedLevel=0,this._ch=null;for(var r,u,m=0,f=!1,g=!1,b=!1,v=!1,y=!1,w=this._ch;r=""!==this._input.read(h),u=w,this._ch=this._input.next(),"\\"===this._ch&&this._input.hasNext()&&(this._ch+=this._input.next()),w=this._ch,this._ch;)if("/"===this._ch&&"*"===this._input.peek()){this._output.add_new_line(),this._input.back();var x=this._input.read(d),S=s.get_directives(x);S&&"start"===S.ignore&&(x+=s.readIgnored(this._input)),this.print_string(x),this.eatWhitespace(!0),this._output.add_new_line()}else if("/"===this._ch&&"/"===this._input.peek())this._output.space_before_token=!0,this._input.back(),this.print_string(this._input.read(p)),this.eatWhitespace(!0);else if("@"===this._ch)if(this.preserveSingleSpace(r),"{"===this._input.peek())this.print_string(this._ch+this.eatString("}"));else{this.print_string(this._ch);var k=this._input.peekUntilAfter(/[: ,;{}()[\]\/='"]/g);k.match(/[ :]$/)&&(k=this.eatString(": ").replace(/\s$/,""),this.print_string(k),this._output.space_before_token=!0),"extend"===(k=k.replace(/\s$/,""))?v=!0:"import"===k&&(y=!0),k in this.NESTED_AT_RULE?(this._nestedLevel+=1,k in this.CONDITIONAL_GROUP_RULE&&(b=!0)):f||0!==m||-1===k.indexOf(":")||(g=!0,this.indent())}else"#"===this._ch&&"{"===this._input.peek()?(this.preserveSingleSpace(r),this.print_string(this._ch+this.eatString("}"))):"{"===this._ch?(g&&(g=!1,this.outdent()),b?(b=!1,f=this._indentLevel>=this._nestedLevel):f=this._indentLevel>=this._nestedLevel-1,this._options.newline_between_rules&&f&&this._output.previous_line&&"{"!==this._output.previous_line.item(-1)&&this._output.ensure_empty_line_above("/",","),this._output.space_before_token=!0,"expand"===this._options.brace_style?(this._output.add_new_line(),this.print_string(this._ch),this.indent(),this._output.set_indent(this._indentLevel)):(this.indent(),this.print_string(this._ch)),this.eatWhitespace(!0),this._output.add_new_line()):"}"===this._ch?(this.outdent(),this._output.add_new_line(),"{"===u&&this._output.trim(!0),y=!1,v=!1,g&&(this.outdent(),g=!1),this.print_string(this._ch),f=!1,this._nestedLevel&&this._nestedLevel--,this.eatWhitespace(!0),this._output.add_new_line(),this._options.newline_between_rules&&!this._output.just_added_blankline()&&"}"!==this._input.peek()&&this._output.add_new_line(!0)):":"===this._ch?!f&&!b||this._input.lookBack("&")||this.foundNestedPseudoClass()||this._input.lookBack("(")||v||0!==m?(this._input.lookBack(" ")&&(this._output.space_before_token=!0),":"===this._input.peek()?(this._ch=this._input.next(),this.print_string("::")):this.print_string(":")):(this.print_string(":"),g||(g=!0,this._output.space_before_token=!0,this.eatWhitespace(!0),this.indent())):'"'===this._ch||"'"===this._ch?(this.preserveSingleSpace(r),this.print_string(this._ch+this.eatString(this._ch)),this.eatWhitespace(!0)):";"===this._ch?0===m?(g&&(this.outdent(),g=!1),v=!1,y=!1,this.print_string(this._ch),this.eatWhitespace(!0),"/"!==this._input.peek()&&this._output.add_new_line()):(this.print_string(this._ch),this.eatWhitespace(!0),this._output.space_before_token=!0):"("===this._ch?this._input.lookBack("url")?(this.print_string(this._ch),this.eatWhitespace(),m++,this.indent(),this._ch=this._input.next(),")"===this._ch||'"'===this._ch||"'"===this._ch?this._input.back():this._ch&&(this.print_string(this._ch+this.eatString(")")),m&&(m--,this.outdent()))):(this.preserveSingleSpace(r),this.print_string(this._ch),this.eatWhitespace(),m++,this.indent()):")"===this._ch?(m&&(m--,this.outdent()),this.print_string(this._ch)):","===this._ch?(this.print_string(this._ch),this.eatWhitespace(!0),!this._options.selector_separator_newline||g||0!==m||y||v?this._output.space_before_token=!0:this._output.add_new_line()):">"!==this._ch&&"+"!==this._ch&&"~"!==this._ch||g||0!==m?"]"===this._ch?this.print_string(this._ch):"["===this._ch?(this.preserveSingleSpace(r),this.print_string(this._ch)):"="===this._ch?(this.eatWhitespace(),this.print_string("="),c.test(this._ch)&&(this._ch="")):"!"!==this._ch||this._input.lookBack("\\")?(this.preserveSingleSpace(r),this.print_string(this._ch)):(this.print_string(" "),this.print_string(this._ch)):this._options.space_around_combinator?(this._output.space_before_token=!0,this.print_string(this._ch),this._output.space_before_token=!0):(this.print_string(this._ch),this.eatWhitespace(),this._ch&&c.test(this._ch)&&(this._ch=""));return this._output.get_code(t)},e.exports.Beautifier=u},function(e,t,n){var r=n(6).Options;function i(e){r.call(this,e,"css"),this.selector_separator_newline=this._get_boolean("selector_separator_newline",!0),this.newline_between_rules=this._get_boolean("newline_between_rules",!0);var t=this._get_boolean("space_around_selector_separator");this.space_around_combinator=this._get_boolean("space_around_combinator")||t;var n=this._get_selection_list("brace_style",["collapse","expand","end-expand","none","preserve-inline"]);this.brace_style="collapse";for(var i=0;i0&&Wd(r,c-1);)c--;0===c||Od(r,c-1)?l=c:c=0;){var n=e.charCodeAt(t);if(n===Md)return!0;if(n===Pd)return!1;t--}return!1}(r,l),i=h===r.length,r=r.substring(l,h),0!==l){var p=e.offsetAt(ys.create(t.start.line,0));o=function(e,t,n){for(var r=t,i=0,o=n.tabSize||4;r0){var f=n.insertSpaces?Wi(" ",a*o):Wi("\t",o);m=m.split("\n").join("\n"+f),0===t.start.character&&(m=f+m)}return[{range:t,newText:m}]}function Id(e){return e.replace(/^\s+/,"")}var Md="{".charCodeAt(0),Pd="}".charCodeAt(0);function Ld(e,t,n){if(e&&e.hasOwnProperty(t)){var r=e[t];if(null!==r)return r}return n}function Od(e,t){return-1!=="\r\n".indexOf(e.charAt(t))}function Wd(e,t){return-1!==" \t".indexOf(e.charAt(t))}var Ud={version:1.1,properties:[{name:"additive-symbols",browsers:["FF33"],syntax:"[ && ]#",relevance:50,description:"@counter-style descriptor. Specifies the symbols used by the marker-construction algorithm specified by the system descriptor. Needs to be specified if the counter system is 'additive'.",restrictions:["integer","string","image","identifier"]},{name:"align-content",values:[{name:"center",description:"Lines are packed toward the center of the flex container."},{name:"flex-end",description:"Lines are packed toward the end of the flex container."},{name:"flex-start",description:"Lines are packed toward the start of the flex container."},{name:"space-around",description:"Lines are evenly distributed in the flex container, with half-size spaces on either end."},{name:"space-between",description:"Lines are evenly distributed in the flex container."},{name:"stretch",description:"Lines stretch to take up the remaining space."}],syntax:"normal | | | ? ",relevance:62,description:"Aligns a flex container’s lines within the flex container when there is extra space in the cross-axis, similar to how 'justify-content' aligns individual items within the main-axis.",restrictions:["enum"]},{name:"align-items",values:[{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"flex-end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"flex-start",description:"The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."}],syntax:"normal | stretch | | [ ? ]",relevance:85,description:"Aligns flex items along the cross axis of the current line of the flex container.",restrictions:["enum"]},{name:"justify-items",values:[{name:"auto"},{name:"normal"},{name:"end"},{name:"start"},{name:"flex-end",description:'"Flex items are packed toward the end of the line."'},{name:"flex-start",description:'"Flex items are packed toward the start of the line."'},{name:"self-end",description:"The item is packed flush to the edge of the alignment container of the end side of the item, in the appropriate axis."},{name:"self-start",description:"The item is packed flush to the edge of the alignment container of the start side of the item, in the appropriate axis.."},{name:"center",description:"The items are packed flush to each other toward the center of the of the alignment container."},{name:"left"},{name:"right"},{name:"baseline"},{name:"first baseline"},{name:"last baseline"},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."},{name:"save"},{name:"unsave"},{name:"legacy"}],syntax:"normal | stretch | | ? [ | left | right ] | legacy | legacy && [ left | right | center ]",relevance:53,description:"Defines the default justify-self for all items of the box, giving them the default way of justifying each box along the appropriate axis",restrictions:["enum"]},{name:"justify-self",values:[{name:"auto"},{name:"normal"},{name:"end"},{name:"start"},{name:"flex-end",description:'"Flex items are packed toward the end of the line."'},{name:"flex-start",description:'"Flex items are packed toward the start of the line."'},{name:"self-end",description:"The item is packed flush to the edge of the alignment container of the end side of the item, in the appropriate axis."},{name:"self-start",description:"The item is packed flush to the edge of the alignment container of the start side of the item, in the appropriate axis.."},{name:"center",description:"The items are packed flush to each other toward the center of the of the alignment container."},{name:"left"},{name:"right"},{name:"baseline"},{name:"first baseline"},{name:"last baseline"},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."},{name:"save"},{name:"unsave"}],syntax:"auto | normal | stretch | | ? [ | left | right ]",relevance:53,description:"Defines the way of justifying a box inside its container along the appropriate axis.",restrictions:["enum"]},{name:"align-self",values:[{name:"auto",description:"Computes to the value of 'align-items' on the element’s parent, or 'stretch' if the element has no parent. On absolutely positioned elements, it computes to itself."},{name:"baseline",description:"If the flex item’s inline axis is the same as the cross axis, this value is identical to 'flex-start'. Otherwise, it participates in baseline alignment."},{name:"center",description:"The flex item’s margin box is centered in the cross axis within the line."},{name:"flex-end",description:"The cross-end margin edge of the flex item is placed flush with the cross-end edge of the line."},{name:"flex-start",description:"The cross-start margin edge of the flex item is placed flush with the cross-start edge of the line."},{name:"stretch",description:"If the cross size property of the flex item computes to auto, and neither of the cross-axis margins are auto, the flex item is stretched."}],syntax:"auto | normal | stretch | | ? ",relevance:72,description:"Allows the default alignment along the cross axis to be overridden for individual flex items.",restrictions:["enum"]},{name:"all",browsers:["E79","FF27","S9.1","C37","O24"],values:[],syntax:"initial | inherit | unset | revert",relevance:53,references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/all"}],description:"Shorthand that resets all properties except 'direction' and 'unicode-bidi'.",restrictions:["enum"]},{name:"alt",browsers:["S9"],values:[],relevance:50,references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/alt"}],description:"Provides alternative text for assistive technology to replace the generated content of a ::before or ::after element.",restrictions:["string","enum"]},{name:"animation",values:[{name:"alternate",description:"The animation cycle iterations that are odd counts are played in the normal direction, and the animation cycle iterations that are even counts are played in a reverse direction."},{name:"alternate-reverse",description:"The animation cycle iterations that are odd counts are played in the reverse direction, and the animation cycle iterations that are even counts are played in a normal direction."},{name:"backwards",description:"The beginning property value (as defined in the first @keyframes at-rule) is applied before the animation is displayed, during the period defined by 'animation-delay'."},{name:"both",description:"Both forwards and backwards fill modes are applied."},{name:"forwards",description:"The final property value (as defined in the last @keyframes at-rule) is maintained after the animation completes."},{name:"infinite",description:"Causes the animation to repeat forever."},{name:"none",description:"No animation is performed"},{name:"normal",description:"Normal playback."},{name:"reverse",description:"All iterations of the animation are played in the reverse direction from the way they were specified."}],syntax:"#",relevance:82,references:[{name:"MDN Reference",url:"https://developer.mozilla.org/docs/Web/CSS/animation"}],description:"Shorthand property combines six of the animation properties into a single property.",restrictions:["time","timing-function","enum","identifier","number"]},{name:"animation-delay",syntax:"